From 9a0792139c67f576758548091fa84b55344d5e25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Cruz?= Date: Fri, 21 Aug 2020 19:05:25 +0100 Subject: [PATCH 001/122] Decrease test flakiness Fix flaky TestACLResolver_Client/Concurrent-Token-Resolve and TestCacheNotifyPolling --- agent/cache/testing.go | 4 ++-- agent/cache/watch_test.go | 2 +- agent/consul/acl_test.go | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/agent/cache/testing.go b/agent/cache/testing.go index c96612d949..90a0d7bef5 100644 --- a/agent/cache/testing.go +++ b/agent/cache/testing.go @@ -60,7 +60,7 @@ func TestCacheNotifyChResult(t testing.T, ch <-chan UpdateEvent, expected ...Upd } got := make([]UpdateEvent, 0, expectLen) - timeoutCh := time.After(50 * time.Millisecond) + timeoutCh := time.After(75 * time.Millisecond) OUT: for { @@ -74,7 +74,7 @@ OUT: } case <-timeoutCh: - t.Fatalf("got %d results on chan in 50ms, want %d", len(got), expectLen) + t.Fatalf("timeout while waiting for result: got %d results on chan, want %d", len(got), expectLen) } } diff --git a/agent/cache/watch_test.go b/agent/cache/watch_test.go index 771a783593..a0bc7be753 100644 --- a/agent/cache/watch_test.go +++ b/agent/cache/watch_test.go @@ -258,7 +258,7 @@ func TestCacheNotifyPolling(t *testing.T) { } require.Equal(events[0].Result, 42) - require.Equal(events[0].Meta.Hit, false) + require.Equal(events[0].Meta.Hit && events[1].Meta.Hit, false) require.Equal(events[0].Meta.Index, uint64(1)) require.True(events[0].Meta.Age < 50*time.Millisecond) require.NoError(events[0].Err) diff --git a/agent/consul/acl_test.go b/agent/consul/acl_test.go index 8e47e0032e..e2cc884e62 100644 --- a/agent/consul/acl_test.go +++ b/agent/consul/acl_test.go @@ -1639,8 +1639,8 @@ func TestACLResolver_Client(t *testing.T) { // effectively disable caching - so the only way we end up with 1 token read is if they were // being resolved concurrently config.Config.ACLTokenTTL = 0 * time.Second - config.Config.ACLPolicyTTL = 30 * time.Millisecond - config.Config.ACLRoleTTL = 30 * time.Millisecond + config.Config.ACLPolicyTTL = 30 * time.Second + config.Config.ACLRoleTTL = 30 * time.Second config.Config.ACLDownPolicy = "extend-cache" }) From d2be9d38dade36f35791962aa948382abb72b030 Mon Sep 17 00:00:00 2001 From: Pierre Souchay Date: Mon, 24 Aug 2020 23:33:10 +0200 Subject: [PATCH 002/122] Ensure that Cache options are reloaded when `consul reload` is performed. This will apply cache throttling parameters are properly applied: * cache.EntryFetchMaxBurst * cache.EntryFetchRate When values are updated, a log is displayed in info. --- agent/agent.go | 6 ++++++ agent/cache/cache.go | 33 ++++++++++++++++++++++++++++++--- 2 files changed, 36 insertions(+), 3 deletions(-) diff --git a/agent/agent.go b/agent/agent.go index bc676b0bfa..ab240e0af3 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -3748,6 +3748,12 @@ func (a *Agent) reloadConfigInternal(newCfg *config.RuntimeConfig) error { return err } + if a.cache.ReloadOptions(newCfg.Cache) { + a.logger.Info("Cache options have been updated") + } else { + a.logger.Debug("Cache options have not been modified") + } + // Update filtered metrics metrics.UpdateFilter(newCfg.Telemetry.AllowedPrefixes, newCfg.Telemetry.BlockedPrefixes) diff --git a/agent/cache/cache.go b/agent/cache/cache.go index 44aeb3a046..ed32527e4d 100644 --- a/agent/cache/cache.go +++ b/agent/cache/cache.go @@ -144,16 +144,21 @@ type Options struct { EntryFetchRate rate.Limit } -// New creates a new cache with the given RPC client and reasonable defaults. -// Further settings can be tweaked on the returned value. -func New(options Options) *Cache { +// applyDefaultValuesOnOptions set default values on options and returned updated value +func applyDefaultValuesOnOptions(options Options) Options { if options.EntryFetchRate == 0.0 { options.EntryFetchRate = DefaultEntryFetchRate } if options.EntryFetchMaxBurst == 0 { options.EntryFetchMaxBurst = DefaultEntryFetchMaxBurst } + return options +} +// New creates a new cache with the given RPC client and reasonable defaults. +// 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. @@ -234,6 +239,28 @@ func (c *Cache) RegisterType(n string, typ Type) { c.types[n] = typeEntry{Name: n, Type: typ, Opts: &opts} } +// ReloadOptions updates the cache with the new options +// return true if Cache is updated, false if already up to date +func (c *Cache) ReloadOptions(options Options) bool { + options = applyDefaultValuesOnOptions(options) + if c.options.EntryFetchRate != options.EntryFetchRate || c.options.EntryFetchMaxBurst != options.EntryFetchMaxBurst { + c.entriesLock.RLock() + defer c.entriesLock.RUnlock() + for _, entry := range c.entries { + if c.options.EntryFetchRate != options.EntryFetchRate { + entry.FetchRateLimiter.SetLimit(options.EntryFetchRate) + } + if c.options.EntryFetchMaxBurst != options.EntryFetchMaxBurst { + entry.FetchRateLimiter.SetBurst(options.EntryFetchMaxBurst) + } + } + c.options.EntryFetchRate = options.EntryFetchRate + c.options.EntryFetchMaxBurst = options.EntryFetchMaxBurst + return true + } + return false +} + // Get loads the data for the given type and request. If data satisfying the // minimum index is present in the cache, it is returned immediately. Otherwise, // this will block until the data is available or the request timeout is From 180b032991ff7e676d84807cb5ad1373cd727898 Mon Sep 17 00:00:00 2001 From: woz5999 Date: Tue, 25 Aug 2020 14:58:58 -0700 Subject: [PATCH 003/122] fix typo in contributing docsc --- .github/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index a450140261..ea7a50fbc4 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -124,8 +124,8 @@ The underlying script dumps the full Consul log output to `test.log` in the directory of the target package. In the example above it would be located at `consul/connect/proxy/test.log`. -Historically, the defaults for `FLAKE_CPUS` (30) and `FLAKE_N` (0.15) have been sufficient to surface a flaky test. If a test is run in this environment and +Historically, the defaults for `FLAKE_CPUS` (0.15) and `FLAKE_N` (30) have been it does not fail after 30 iterations, it should be sufficiently stable. ## Vendoring From ad9f118d1484caa247b0a6b76f2573b649101504 Mon Sep 17 00:00:00 2001 From: Kenia <19161242+kaxcode@users.noreply.github.com> Date: Wed, 26 Aug 2020 10:05:09 -0400 Subject: [PATCH 004/122] ui: Tooltip Bugs (#8562) * Fix tooltip offset in Discovery Chain for Firefox Browser * Add z-index to ember-tooltip to over over the search/sort in AppView --- ui-v2/app/components/discovery-chain/index.hbs | 2 +- ui-v2/app/components/discovery-chain/index.js | 4 ++-- ui-v2/app/styles/base/components/tooltip/layout.scss | 1 + ui-v2/app/styles/components/discovery-chain/layout.scss | 4 ++++ 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ui-v2/app/components/discovery-chain/index.hbs b/ui-v2/app/components/discovery-chain/index.hbs index 838d311ca6..60564889f1 100644 --- a/ui-v2/app/components/discovery-chain/index.hbs +++ b/ui-v2/app/components/discovery-chain/index.hbs @@ -135,7 +135,7 @@ {{/if}} {{/each}} -
+
{{round tooltip decimals=2}}%
{{/if}} diff --git a/ui-v2/app/components/discovery-chain/index.js b/ui-v2/app/components/discovery-chain/index.js index 7cf7863116..d9099e7888 100644 --- a/ui-v2/app/components/discovery-chain/index.js +++ b/ui-v2/app/components/discovery-chain/index.js @@ -177,8 +177,8 @@ export default Component.extend({ actions: { showSplit: function(e) { this.setProperties({ - x: e.offsetX, - y: e.offsetY - 5, + x: e.clientX, + y: e.clientY - 3, tooltip: e.target.dataset.percentage, activeTooltip: true, }); diff --git a/ui-v2/app/styles/base/components/tooltip/layout.scss b/ui-v2/app/styles/base/components/tooltip/layout.scss index 321b8b5e30..728b1f9fe2 100644 --- a/ui-v2/app/styles/base/components/tooltip/layout.scss +++ b/ui-v2/app/styles/base/components/tooltip/layout.scss @@ -55,4 +55,5 @@ .ember-tooltip { padding: 12px; max-width: 192px; + z-index: 4; } diff --git a/ui-v2/app/styles/components/discovery-chain/layout.scss b/ui-v2/app/styles/components/discovery-chain/layout.scss index 96449c8a17..f1da3118f6 100644 --- a/ui-v2/app/styles/components/discovery-chain/layout.scss +++ b/ui-v2/app/styles/components/discovery-chain/layout.scss @@ -25,6 +25,10 @@ %discovery-chain [id*=':']:not(path):hover { @extend %chain-node-active; } +%discovery-chain .tooltip { + position: fixed; + z-index: 5; +} %discovery-chain .tooltip.active > [role='tooltip'], %discovery-chain .tooltip.active > [role='tooltip']::after { @extend %blink-in-fade-out-active; From 1846e6316c69c081210991ddcd1b780eb7216569 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 26 Aug 2020 15:24:30 +0100 Subject: [PATCH 005/122] ui: Split ember-data service model into service/service-instance (#8557) --- ui-v2/app/adapters/service-instance.js | 23 ++++++ .../consul-service-instance-list/index.hbs | 2 +- ui-v2/app/controllers/dc/services/show.js | 2 + .../controllers/dc/services/show/instances.js | 11 --- ui-v2/app/models/service-instance.js | 31 +++++++ ui-v2/app/models/service.js | 2 +- .../routes/dc/services/instance/addresses.js | 2 +- .../routes/dc/services/instance/upstreams.js | 2 +- ui-v2/app/routes/dc/services/show.js | 10 ++- ui-v2/app/serializers/service-instance.js | 45 +++++++++++ .../services/data-source/protocols/http.js | 16 +++- ui-v2/app/services/repository/proxy.js | 15 +++- .../services/repository/service-instance.js | 33 ++++++++ ui-v2/app/services/repository/service.js | 65 --------------- ui-v2/app/templates/dc/services/instance.hbs | 12 +-- .../dc/services/instance/addresses.hbs | 4 +- .../templates/dc/services/instance/proxy.hbs | 8 +- ui-v2/app/templates/dc/services/show.hbs | 4 +- .../templates/dc/services/show/instances.hbs | 2 +- ui-v2/app/templates/dc/services/show/tags.hbs | 10 ++- ui-v2/app/utils/create-fingerprinter.js | 7 +- .../adapters/service-instance-test.js | 36 +++++++++ .../serializers/service-instance-test.js | 54 +++++++++++++ .../integration/serializers/service-test.js | 40 ---------- .../services/repository/service-test.js | 80 ------------------- .../unit/adapters/service-instance-test.js | 12 +++ .../unit/models/service-instance-test.js | 13 +++ .../unit/serializers/service-instance-test.js | 23 ++++++ .../repository/service-instance-test.js | 12 +++ 29 files changed, 348 insertions(+), 228 deletions(-) create mode 100644 ui-v2/app/adapters/service-instance.js create mode 100644 ui-v2/app/models/service-instance.js create mode 100644 ui-v2/app/serializers/service-instance.js create mode 100644 ui-v2/app/services/repository/service-instance.js create mode 100644 ui-v2/tests/integration/adapters/service-instance-test.js create mode 100644 ui-v2/tests/integration/serializers/service-instance-test.js create mode 100644 ui-v2/tests/unit/adapters/service-instance-test.js create mode 100644 ui-v2/tests/unit/models/service-instance-test.js create mode 100644 ui-v2/tests/unit/serializers/service-instance-test.js create mode 100644 ui-v2/tests/unit/services/repository/service-instance-test.js diff --git a/ui-v2/app/adapters/service-instance.js b/ui-v2/app/adapters/service-instance.js new file mode 100644 index 0000000000..b853f71471 --- /dev/null +++ b/ui-v2/app/adapters/service-instance.js @@ -0,0 +1,23 @@ +import Adapter from './application'; +// TODO: Update to use this.formatDatacenter() +export default Adapter.extend({ + requestForQuery: function(request, { dc, ns, index, id, uri }) { + if (typeof id === 'undefined') { + throw new Error('You must specify an id'); + } + return request` + GET /v1/health/service/${id}?${{ dc }} + X-Request-ID: ${uri} + + ${{ + ...this.formatNspace(ns), + index, + }} + `; + }, + requestForQueryRecord: function(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/components/consul-service-instance-list/index.hbs b/ui-v2/app/components/consul-service-instance-list/index.hbs index bbaae929a1..b6ab32f5c3 100644 --- a/ui-v2/app/components/consul-service-instance-list/index.hbs +++ b/ui-v2/app/components/consul-service-instance-list/index.hbs @@ -20,7 +20,7 @@ {{/if}} -{{#if (get proxies item.Service.ID)}} +{{#if item.ProxyInstance}}
diff --git a/ui-v2/app/controllers/dc/services/show.js b/ui-v2/app/controllers/dc/services/show.js index 04cc4bdf17..4941ddad09 100644 --- a/ui-v2/app/controllers/dc/services/show.js +++ b/ui-v2/app/controllers/dc/services/show.js @@ -1,9 +1,11 @@ import Controller from '@ember/controller'; import { get } from '@ember/object'; +import { alias } from '@ember/object/computed'; import { inject as service } from '@ember/service'; export default Controller.extend({ dom: service('dom'), notify: service('flashMessages'), + item: alias('items.firstObject'), actions: { error: function(e) { if (e.target.readyState === 1) { diff --git a/ui-v2/app/controllers/dc/services/show/instances.js b/ui-v2/app/controllers/dc/services/show/instances.js index 2b1f8a7563..a33e295d30 100644 --- a/ui-v2/app/controllers/dc/services/show/instances.js +++ b/ui-v2/app/controllers/dc/services/show/instances.js @@ -1,9 +1,6 @@ import Controller from '@ember/controller'; -import { computed } from '@ember/object'; -import { alias } from '@ember/object/computed'; export default Controller.extend({ - items: alias('item.Nodes'), queryParams: { sortBy: 'sort', search: { @@ -11,12 +8,4 @@ export default Controller.extend({ replace: true, }, }, - keyedProxies: computed('proxies.[]', function() { - const proxies = {}; - this.proxies.forEach(item => { - proxies[item.ServiceProxy.DestinationServiceID] = true; - }); - - return proxies; - }), }); diff --git a/ui-v2/app/models/service-instance.js b/ui-v2/app/models/service-instance.js new file mode 100644 index 0000000000..4b8946098b --- /dev/null +++ b/ui-v2/app/models/service-instance.js @@ -0,0 +1,31 @@ +import Model from 'ember-data/model'; +import attr from 'ember-data/attr'; +import { belongsTo } from 'ember-data/relationships'; +import { filter, alias } from '@ember/object/computed'; + +export const PRIMARY_KEY = 'uid'; +export const SLUG_KEY = 'Node.Node,Service.ID'; + +export default Model.extend({ + [PRIMARY_KEY]: attr('string'), + [SLUG_KEY]: attr('string'), + Datacenter: attr('string'), + // ProxyInstance is the ember-data model relationship + ProxyInstance: belongsTo('Proxy'), + // Proxy is the actual JSON api response + Proxy: attr(), + Node: attr(), + Service: attr(), + Checks: attr(), + SyncTime: attr('number'), + meta: attr(), + Tags: alias('Service.Tags'), + Meta: alias('Service.Meta'), + Namespace: alias('Service.Namespace'), + ServiceChecks: filter('Checks', function(item, i, arr) { + return item.ServiceID !== ''; + }), + NodeChecks: filter('Checks', function(item, i, arr) { + return item.ServiceID === ''; + }), +}); diff --git a/ui-v2/app/models/service.js b/ui-v2/app/models/service.js index a6a30e1df0..67bf5ea508 100644 --- a/ui-v2/app/models/service.js +++ b/ui-v2/app/models/service.js @@ -14,8 +14,8 @@ export default Model.extend({ }, }), InstanceCount: attr('number'), - ProxyFor: attr(), Proxy: attr(), + ProxyFor: attr(), Kind: attr('string'), ExternalSources: attr(), GatewayConfig: attr(), diff --git a/ui-v2/app/routes/dc/services/instance/addresses.js b/ui-v2/app/routes/dc/services/instance/addresses.js index 671854a549..17be8ca7c2 100644 --- a/ui-v2/app/routes/dc/services/instance/addresses.js +++ b/ui-v2/app/routes/dc/services/instance/addresses.js @@ -10,7 +10,7 @@ export default Route.extend({ return this.modelFor(parent); }, afterModel: function(model, transition) { - if (get(model, 'item.Kind') !== 'mesh-gateway') { + if (get(model, 'item.Service.Kind') !== 'mesh-gateway') { const parent = this.routeName .split('.') .slice(0, -1) diff --git a/ui-v2/app/routes/dc/services/instance/upstreams.js b/ui-v2/app/routes/dc/services/instance/upstreams.js index 93a2a80b96..a31853b18a 100644 --- a/ui-v2/app/routes/dc/services/instance/upstreams.js +++ b/ui-v2/app/routes/dc/services/instance/upstreams.js @@ -10,7 +10,7 @@ export default Route.extend({ return this.modelFor(parent); }, afterModel: function(model, transition) { - if (get(model, 'item.Kind') !== 'connect-proxy') { + if (get(model, 'item.Service.Kind') !== 'connect-proxy') { const parent = this.routeName .split('.') .slice(0, -1) diff --git a/ui-v2/app/routes/dc/services/show.js b/ui-v2/app/routes/dc/services/show.js index 9f6a39de9c..04db68abf8 100644 --- a/ui-v2/app/routes/dc/services/show.js +++ b/ui-v2/app/routes/dc/services/show.js @@ -13,13 +13,15 @@ export default Route.extend({ slug: params.name, dc: dc, nspace: nspace, - item: this.data.source(uri => uri`/${nspace}/${dc}/service/${params.name}`), + items: this.data.source( + uri => uri`/${nspace}/${dc}/service-instances/for-service/${params.name}` + ), urls: this.settings.findBySlug('urls'), proxies: [], }) .then(model => { return ['connect-proxy', 'mesh-gateway', 'ingress-gateway', 'terminating-gateway'].includes( - get(model, 'item.Service.Kind') + get(model, 'items.firstObject.Service.Kind') ) ? model : hash({ @@ -31,7 +33,9 @@ export default Route.extend({ }); }) .then(model => { - return ['ingress-gateway', 'terminating-gateway'].includes(get(model, 'item.Service.Kind')) + return ['ingress-gateway', 'terminating-gateway'].includes( + get(model, 'items.firstObject.Service.Kind') + ) ? hash({ ...model, gatewayServices: this.data.source( diff --git a/ui-v2/app/serializers/service-instance.js b/ui-v2/app/serializers/service-instance.js new file mode 100644 index 0000000000..4e4f12a58c --- /dev/null +++ b/ui-v2/app/serializers/service-instance.js @@ -0,0 +1,45 @@ +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) { + return respond(function(headers, body) { + if (body.length === 0) { + const e = new Error(); + e.errors = [ + { + status: '404', + title: 'Not found', + }, + ]; + throw e; + } + return cb(headers, body); + }); + }, query); + }, + respondForQueryRecord: function(respond, query) { + return this._super(function(cb) { + return respond(function(headers, body) { + body = body.find(function(item) { + return item.Node.Node === query.node && item.Service.ID === query.serviceId; + }); + if (typeof body === 'undefined') { + const e = new Error(); + e.errors = [ + { + status: '404', + title: 'Not found', + }, + ]; + throw e; + } + body.Namespace = body.Service.Namespace; + return cb(headers, body); + }); + }, query); + }, +}); diff --git a/ui-v2/app/services/data-source/protocols/http.js b/ui-v2/app/services/data-source/protocols/http.js index 4dc7070a98..1c99bfcb1c 100644 --- a/ui-v2/app/services/data-source/protocols/http.js +++ b/ui-v2/app/services/data-source/protocols/http.js @@ -8,7 +8,8 @@ export default Service.extend({ gateways: service('repository/service'), services: service('repository/service'), service: service('repository/service'), - ['service-instance']: 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'), @@ -67,6 +68,14 @@ export default Service.extend({ break; } break; + case 'service-instances': + [method, ...slug] = rest; + switch (method) { + case 'for-service': + find = configuration => repo.findByService(slug, dc, nspace, configuration); + break; + } + break; case 'coordinates': [method, ...slug] = rest; switch (method) { @@ -102,12 +111,15 @@ export default Service.extend({ case 'token': find = configuration => repo.self(rest[1], dc); break; - case 'service': case 'discovery-chain': case 'node': find = configuration => repo.findBySlug(rest[0], dc, nspace, configuration); break; case 'service-instance': + // id, node, service + find = configuration => + repo.findBySlug(rest[0], rest[1], rest[2], dc, nspace, configuration); + break; case 'proxy-instance': // id, node, service find = configuration => diff --git a/ui-v2/app/services/repository/proxy.js b/ui-v2/app/services/repository/proxy.js index 8a70e93d00..9e20745dd1 100644 --- a/ui-v2/app/services/repository/proxy.js +++ b/ui-v2/app/services/repository/proxy.js @@ -19,7 +19,20 @@ export default RepositoryService.extend({ query.index = configuration.cursor; query.uri = configuration.uri; } - return this.store.query(this.getModelName(), query); + return this.store.query(this.getModelName(), query).then(items => { + items.forEach(item => { + // swap out the id for the services id + // so we can then assign the proxy to it if it exists + const id = JSON.parse(item.uid); + id.pop(); + id.push(item.ServiceProxy.DestinationServiceID); + const service = this.store.peekRecord('service-instance', JSON.stringify(id)); + if (service) { + set(service, 'ProxyInstance', item); + } + }); + return items; + }); }, findInstanceBySlug: function(id, node, slug, dc, nspace, configuration) { return this.findAllBySlug(slug, dc, nspace, configuration).then(function(items) { diff --git a/ui-v2/app/services/repository/service-instance.js b/ui-v2/app/services/repository/service-instance.js new file mode 100644 index 0000000000..4b283b3bbc --- /dev/null +++ b/ui-v2/app/services/repository/service-instance.js @@ -0,0 +1,33 @@ +import RepositoryService from 'consul-ui/services/repository'; +const modelName = 'service-instance'; +export default RepositoryService.extend({ + getModelName: function() { + return modelName; + }, + findByService: function(slug, dc, nspace, configuration = {}) { + const query = { + dc: dc, + nspace: nspace, + id: slug, + }; + if (typeof configuration.cursor !== 'undefined') { + query.index = configuration.cursor; + query.uri = configuration.uri; + } + return this.store.query(this.getModelName(), query); + }, + findBySlug: function(serviceId, node, service, dc, nspace, configuration = {}) { + const query = { + dc: dc, + ns: nspace, + serviceId: serviceId, + node: node, + id: service, + }; + if (typeof configuration.cursor !== 'undefined') { + query.index = configuration.cursor; + query.uri = configuration.uri; + } + return this.store.queryRecord(this.getModelName(), query); + }, +}); diff --git a/ui-v2/app/services/repository/service.js b/ui-v2/app/services/repository/service.js index 82c6f4f2d7..1a1d9d903f 100644 --- a/ui-v2/app/services/repository/service.js +++ b/ui-v2/app/services/repository/service.js @@ -1,74 +1,9 @@ import RepositoryService from 'consul-ui/services/repository'; -import { get, set } from '@ember/object'; const modelName = 'service'; export default RepositoryService.extend({ getModelName: function() { return modelName; }, - findBySlug: function(slug, dc) { - return this._super(...arguments).then(function(item) { - // TODO: Move this to the Serializer - const nodes = get(item, 'Nodes'); - if (nodes.length === 0) { - // TODO: Add an store.error("404", "message") or similar - // or move all this to serializer - const e = new Error(); - e.errors = [ - { - status: '404', - title: 'Not found', - }, - ]; - throw e; - } - const service = get(nodes, 'firstObject'); - // TODO: Use [...new Set()] instead of uniq - const tags = nodes - .reduce(function(prev, item) { - return prev.concat(get(item, 'Service.Tags') || []); - }, []) - .uniq(); - set(service, 'Tags', tags); - set(service, 'Nodes', nodes); - set(service, 'meta', get(item, 'meta')); - set(service, 'Namespace', get(item, 'Namespace')); - return service; - }); - }, - findInstanceBySlug: function(id, node, slug, dc, nspace, configuration) { - return this.findBySlug(slug, dc, nspace, configuration).then(function(item) { - // TODO: Move this to the Serializer - // Loop through all the service instances and pick out the one - // that has the same service id AND node name - // node names are unique per datacenter - const i = item.Nodes.findIndex(function(item) { - return item.Service.ID === id && item.Node.Node === node; - }); - if (i !== -1) { - const service = item.Nodes[i].Service; - service.Node = item.Nodes[i].Node; - service.ServiceChecks = item.Nodes[i].Checks.filter(function(item) { - return item.ServiceID != ''; - }); - service.NodeChecks = item.Nodes[i].Checks.filter(function(item) { - return item.ServiceID == ''; - }); - set(service, 'meta', get(item, 'meta')); - set(service, 'Namespace', get(item, 'Namespace')); - return service; - } - // TODO: Add an store.error("404", "message") or similar - // or move all this to serializer - const e = new Error(); - e.errors = [ - { - status: '404', - title: 'Unable to find instance', - }, - ]; - throw e; - }); - }, findGatewayBySlug: function(slug, dc, nspace, configuration = {}) { const query = { dc: dc, diff --git a/ui-v2/app/templates/dc/services/instance.hbs b/ui-v2/app/templates/dc/services/instance.hbs index b3d2672cba..d38e093dba 100644 --- a/ui-v2/app/templates/dc/services/instance.hbs +++ b/ui-v2/app/templates/dc/services/instance.hbs @@ -1,4 +1,4 @@ -{{title item.ID}} +{{title item.Service.ID}} @@ -9,12 +9,12 @@
  1. All Services
  2. -
  3. Service ({{item.Service}})
  4. +
  5. Service ({{item.Service.Service}})

- {{ item.ID }} + {{ item.Service.ID }}

@@ -22,7 +22,7 @@
Service Name
-
{{item.Service}}
+
{{item.Service.Service}}
Node Name
@@ -30,7 +30,7 @@
- {{#let (or item.Address item.Node.Address) as |address|}} + {{#let (or item.Service.Address item.Node.Address) as |address|}} {{address}} {{/let}} @@ -40,7 +40,7 @@ (array (hash label="Health Checks" href=(href-to "dc.services.instance.healthchecks") selected=(is-href "dc.services.instance.healthchecks")) (if - (eq item.Kind 'mesh-gateway') + (eq item.Service.Kind 'mesh-gateway') (hash label="Addresses" href=(href-to "dc.services.instance.addresses") selected=(is-href "dc.services.instance.addresses")) "" ) (if proxy diff --git a/ui-v2/app/templates/dc/services/instance/addresses.hbs b/ui-v2/app/templates/dc/services/instance/addresses.hbs index 732be68412..c147bd74a1 100644 --- a/ui-v2/app/templates/dc/services/instance/addresses.hbs +++ b/ui-v2/app/templates/dc/services/instance/addresses.hbs @@ -1,9 +1,9 @@
- {{#if item.TaggedAddresses }} + {{#if item.Service.TaggedAddresses }} Tag diff --git a/ui-v2/app/templates/dc/services/instance/proxy.hbs b/ui-v2/app/templates/dc/services/instance/proxy.hbs index 011d67f816..2680494b0e 100644 --- a/ui-v2/app/templates/dc/services/instance/proxy.hbs +++ b/ui-v2/app/templates/dc/services/instance/proxy.hbs @@ -1,18 +1,18 @@
- {{#if (gt proxy.Proxy.Upstreams.length 0)}} + {{#if (gt proxy.Service.Proxy.Upstreams.length 0)}}

Upstreams

- +
{{/if}} - {{#if (gt proxy.Proxy.Expose.Paths.length 0)}} + {{#if (gt proxy.Service.Proxy.Expose.Paths.length 0)}}

Exposed paths

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

- +
{{/if}} {{#if (or (gt proxy.ServiceChecks.length 0) (gt proxy.NodeChecks.length 0))}} diff --git a/ui-v2/app/templates/dc/services/show.hbs b/ui-v2/app/templates/dc/services/show.hbs index 0519602f62..f74e043bf8 100644 --- a/ui-v2/app/templates/dc/services/show.hbs +++ b/ui-v2/app/templates/dc/services/show.hbs @@ -1,9 +1,9 @@ -{{title item.Service.Service}} - + +{{title item.Service.Service}} {{partial 'dc/services/notifications'}} diff --git a/ui-v2/app/templates/dc/services/show/instances.hbs b/ui-v2/app/templates/dc/services/show/instances.hbs index 5c5a4ca79b..b919a1cd82 100644 --- a/ui-v2/app/templates/dc/services/show/instances.hbs +++ b/ui-v2/app/templates/dc/services/show/instances.hbs @@ -9,7 +9,7 @@ {{/if}} - + diff --git a/ui-v2/app/templates/dc/services/show/tags.hbs b/ui-v2/app/templates/dc/services/show/tags.hbs index 7184728017..016fe25b34 100644 --- a/ui-v2/app/templates/dc/services/show/tags.hbs +++ b/ui-v2/app/templates/dc/services/show/tags.hbs @@ -1,8 +1,9 @@
- {{#if (gt item.Tags.length 0) }} - - {{else}} +{{#let (flatten (map-by "Tags" items)) as |tags|}} + {{#if (gt tags.length 0) }} + + {{else}}

@@ -10,6 +11,7 @@

- {{/if}} + {{/if}} +{{/let}}
diff --git a/ui-v2/app/utils/create-fingerprinter.js b/ui-v2/app/utils/create-fingerprinter.js index 69d2da8a00..9b3843257b 100644 --- a/ui-v2/app/utils/create-fingerprinter.js +++ b/ui-v2/app/utils/create-fingerprinter.js @@ -1,3 +1,4 @@ +import { get } from '@ember/object'; export default function(foreignKey, nspaceKey, hash = JSON.stringify) { return function(primaryKey, slugKey, foreignKeyValue) { if (foreignKeyValue == null || foreignKeyValue.length < 1) { @@ -6,12 +7,12 @@ export default function(foreignKey, nspaceKey, hash = JSON.stringify) { return function(item) { const slugKeys = slugKey.split(','); const slugValues = slugKeys.map(function(slugKey) { - if (item[slugKey] == null || item[slugKey].length < 1) { + if (get(item, slugKey) == null || get(item, slugKey).length < 1) { throw new Error('Unable to create fingerprint, missing slug'); } - return item[slugKey]; + return get(item, slugKey); }); - const nspaceValue = item[nspaceKey] || 'default'; + const nspaceValue = get(item, nspaceKey) || 'default'; return { ...item, ...{ diff --git a/ui-v2/tests/integration/adapters/service-instance-test.js b/ui-v2/tests/integration/adapters/service-instance-test.js new file mode 100644 index 0000000000..ab9b0ca44b --- /dev/null +++ b/ui-v2/tests/integration/adapters/service-instance-test.js @@ -0,0 +1,36 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; +import { env } from '../../../env'; +const shouldHaveNspace = function(nspace) { + return typeof nspace !== 'undefined' && env('CONSUL_NSPACES_ENABLED'); +}; +module('Integration | Adapter | service-instance', function(hooks) { + setupTest(hooks); + const dc = 'dc-1'; + const id = 'service-name'; + const undefinedNspace = 'default'; + [undefinedNspace, 'team-1', undefined].forEach(nspace => { + test(`requestForQueryRecord returns the correct url/method when nspace is ${nspace}`, function(assert) { + const adapter = this.owner.lookup('adapter:service-instance'); + const client = this.owner.lookup('service:client/http'); + const expected = `GET /v1/health/service/${id}?dc=${dc}${ + shouldHaveNspace(nspace) ? `&ns=${nspace}` : `` + }`; + let actual = adapter.requestForQueryRecord(client.requestParams.bind(client), { + dc: dc, + id: id, + ns: nspace, + }); + assert.equal(`${actual.method} ${actual.url}`, expected); + }); + }); + test("requestForQueryRecord throws if you don't specify an id", function(assert) { + const adapter = this.owner.lookup('adapter:service-instance'); + const client = this.owner.lookup('service:client/http'); + assert.throws(function() { + adapter.requestForQueryRecord(client.url, { + dc: dc, + }); + }); + }); +}); diff --git a/ui-v2/tests/integration/serializers/service-instance-test.js b/ui-v2/tests/integration/serializers/service-instance-test.js new file mode 100644 index 0000000000..e53b6ce3f9 --- /dev/null +++ b/ui-v2/tests/integration/serializers/service-instance-test.js @@ -0,0 +1,54 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; +import { get } from 'consul-ui/tests/helpers/api'; +import { + HEADERS_SYMBOL as META, + HEADERS_DATACENTER as DC, + HEADERS_NAMESPACE as NSPACE, +} from 'consul-ui/utils/http/consul'; +module('Integration | Serializer | service-instance', function(hooks) { + setupTest(hooks); + const dc = 'dc-1'; + const undefinedNspace = 'default'; + [undefinedNspace, 'team-1', undefined].forEach(nspace => { + test(`respondForQueryRecord returns the correct data for item endpoint when nspace is ${nspace}`, function(assert) { + const serializer = this.owner.lookup('serializer:service-instance'); + const id = 'service-name'; + const node = 'node-0'; + const request = { + url: `/v1/health/service/${id}?dc=${dc}${ + typeof nspace !== 'undefined' ? `&ns=${nspace}` : `` + }`, + }; + return get(request.url).then(function(payload) { + payload[0].Node.Node = node; + payload[0].Service.ID = id; + const expected = { + ...payload[0], + Datacenter: dc, + [META]: { + [DC.toLowerCase()]: dc, + [NSPACE.toLowerCase()]: payload[0].Service.Namespace || undefinedNspace, + }, + Namespace: payload[0].Service.Namespace || undefinedNspace, + uid: `["${payload[0].Service.Namespace || undefinedNspace}","${dc}","${node}","${id}"]`, + }; + const actual = serializer.respondForQueryRecord( + function(cb) { + const headers = {}; + const body = payload; + return cb(headers, body); + }, + { + dc: dc, + ns: nspace, + id: id, + node: node, + serviceId: id, + } + ); + assert.deepEqual(actual, expected); + }); + }); + }); +}); diff --git a/ui-v2/tests/integration/serializers/service-test.js b/ui-v2/tests/integration/serializers/service-test.js index 636f644714..c46dbb6754 100644 --- a/ui-v2/tests/integration/serializers/service-test.js +++ b/ui-v2/tests/integration/serializers/service-test.js @@ -1,11 +1,6 @@ import { module, test } from 'qunit'; import { setupTest } from 'ember-qunit'; import { get } from 'consul-ui/tests/helpers/api'; -import { - HEADERS_SYMBOL as META, - HEADERS_DATACENTER as DC, - HEADERS_NAMESPACE as NSPACE, -} from 'consul-ui/utils/http/consul'; module('Integration | Serializer | service', function(hooks) { setupTest(hooks); const dc = 'dc-1'; @@ -73,40 +68,5 @@ module('Integration | Serializer | service', function(hooks) { assert.deepEqual(actual, expected); }); }); - test(`respondForQueryRecord returns the correct data for item endpoint when nspace is ${nspace}`, function(assert) { - const serializer = this.owner.lookup('serializer:service'); - const id = 'service-name'; - const request = { - url: `/v1/health/service/${id}?dc=${dc}${ - typeof nspace !== 'undefined' ? `&ns=${nspace}` : `` - }`, - }; - return get(request.url).then(function(payload) { - const expected = { - Datacenter: dc, - [META]: { - [DC.toLowerCase()]: dc, - [NSPACE.toLowerCase()]: payload[0].Service.Namespace || undefinedNspace, - }, - Namespace: payload[0].Service.Namespace || undefinedNspace, - uid: `["${payload[0].Service.Namespace || undefinedNspace}","${dc}","${id}"]`, - Name: id, - Nodes: payload, - }; - const actual = serializer.respondForQueryRecord( - function(cb) { - const headers = {}; - const body = payload; - return cb(headers, body); - }, - { - dc: dc, - ns: nspace, - id: id, - } - ); - assert.deepEqual(actual, expected); - }); - }); }); }); diff --git a/ui-v2/tests/integration/services/repository/service-test.js b/ui-v2/tests/integration/services/repository/service-test.js index a3c87edbea..677d05eec6 100644 --- a/ui-v2/tests/integration/services/repository/service-test.js +++ b/ui-v2/tests/integration/services/repository/service-test.js @@ -7,89 +7,9 @@ moduleFor(`service:repository/${NAME}`, `Integration | Service | ${NAME}`, { integration: true, }); const dc = 'dc-1'; -const id = 'token-name'; const now = new Date().getTime(); const undefinedNspace = 'default'; [undefinedNspace, 'team-1', undefined].forEach(nspace => { - test(`findInstanceBySlug calls findBySlug with the correct arguments when nspace is ${nspace}`, function(assert) { - assert.expect(4); - const id = 'id'; - const slug = 'slug'; - const node = 'node-name'; - - const datacenter = 'dc-1'; - const conf = { - cursor: 1, - }; - const service = this.subject(); - service.findBySlug = function(slug, dc, nspace, configuration) { - assert.equal( - arguments.length, - 4, - 'Expected to be called with the correct number of arguments' - ); - assert.equal(dc, datacenter); - assert.deepEqual(configuration, conf); - return Promise.resolve({ Nodes: [] }); - }; - // This will throw an error as we don't resolve any services that match what was requested - // so a 404 is the correct error response - return service.findInstanceBySlug(id, slug, node, datacenter, nspace, conf).catch(function(e) { - assert.equal(e.errors[0].status, '404'); - }); - }); - - test(`findBySlug returns the correct data for item endpoint when the nspace is ${nspace}`, function(assert) { - return repo( - 'Service', - 'findBySlug', - this.subject(), - function(stub) { - return stub( - `/v1/health/service/${id}?dc=${dc}${ - typeof nspace !== 'undefined' ? `&ns=${nspace}` : `` - }`, - { - CONSUL_NODE_COUNT: 1, - } - ); - }, - function(service) { - return service.findBySlug(id, dc, nspace || undefinedNspace); - }, - function(actual, expected) { - assert.deepEqual( - actual, - expected(function(payload) { - // TODO: So this tree is all 'wrong', it's not having any major impact - // this this tree needs revisting to something that makes more sense - payload = Object.assign( - {}, - { Nodes: payload }, - { - Datacenter: dc, - Namespace: payload[0].Service.Namespace || undefinedNspace, - uid: `["${payload[0].Service.Namespace || undefinedNspace}","${dc}","${id}"]`, - } - ); - const nodes = payload.Nodes; - const service = payload.Nodes[0]; - service.Nodes = nodes; - service.Tags = [...new Set(payload.Nodes[0].Service.Tags)]; - service.Namespace = payload.Namespace; - service.meta = { - cacheControl: undefined, - cursor: undefined, - dc: dc, - nspace: payload.Namespace, - }; - - return service; - }) - ); - } - ); - }); test(`findGatewayBySlug returns the correct data for list endpoint when nspace is ${nspace}`, function(assert) { get(this.subject(), 'store').serializerFor(NAME).timestamp = function() { return now; diff --git a/ui-v2/tests/unit/adapters/service-instance-test.js b/ui-v2/tests/unit/adapters/service-instance-test.js new file mode 100644 index 0000000000..d2f3eff5c8 --- /dev/null +++ b/ui-v2/tests/unit/adapters/service-instance-test.js @@ -0,0 +1,12 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; + +module('Unit | Adapter | service-instance', function(hooks) { + setupTest(hooks); + + // Replace this with your real tests. + test('it exists', function(assert) { + let adapter = this.owner.lookup('adapter:service-instance'); + assert.ok(adapter); + }); +}); diff --git a/ui-v2/tests/unit/models/service-instance-test.js b/ui-v2/tests/unit/models/service-instance-test.js new file mode 100644 index 0000000000..b18d0ee706 --- /dev/null +++ b/ui-v2/tests/unit/models/service-instance-test.js @@ -0,0 +1,13 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; + +module('Unit | Model | service-instance', function(hooks) { + setupTest(hooks); + + // Replace this with your real tests. + test('it exists', function(assert) { + let store = this.owner.lookup('service:store'); + let model = store.createRecord('service-instance', {}); + assert.ok(model); + }); +}); diff --git a/ui-v2/tests/unit/serializers/service-instance-test.js b/ui-v2/tests/unit/serializers/service-instance-test.js new file mode 100644 index 0000000000..9402e194f3 --- /dev/null +++ b/ui-v2/tests/unit/serializers/service-instance-test.js @@ -0,0 +1,23 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; + +module('Unit | Serializer | service-instance', function(hooks) { + setupTest(hooks); + + // Replace this with your real tests. + test('it exists', function(assert) { + let store = this.owner.lookup('service:store'); + let serializer = store.serializerFor('service-instance'); + + assert.ok(serializer); + }); + + test('it serializes records', function(assert) { + let store = this.owner.lookup('service:store'); + let record = store.createRecord('service-instance', {}); + + let serializedRecord = record.serialize(); + + assert.ok(serializedRecord); + }); +}); diff --git a/ui-v2/tests/unit/services/repository/service-instance-test.js b/ui-v2/tests/unit/services/repository/service-instance-test.js new file mode 100644 index 0000000000..5ddd6789cd --- /dev/null +++ b/ui-v2/tests/unit/services/repository/service-instance-test.js @@ -0,0 +1,12 @@ +import { module, test } from 'qunit'; +import { setupTest } from 'ember-qunit'; + +module('Unit | Repository | service-instance', function(hooks) { + setupTest(hooks); + + // Replace this with your real tests. + test('it exists', function(assert) { + const repo = this.owner.lookup('service:repository/service-instance'); + assert.ok(repo); + }); +}); From fead4fc2a5518ca4001a011f40315133c5739ca3 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Wed, 26 Aug 2020 10:04:11 -0500 Subject: [PATCH 006/122] agent: expose the list of supported envoy versions on /v1/agent/self (#8545) --- .changelog/8545.txt | 3 + agent/agent_endpoint.go | 16 +++++ agent/agent_endpoint_test.go | 84 +++++++++++++++++--------- agent/xds/proxysupport/proxysupport.go | 3 + 4 files changed, 77 insertions(+), 29 deletions(-) create mode 100644 .changelog/8545.txt diff --git a/.changelog/8545.txt b/.changelog/8545.txt new file mode 100644 index 0000000000..a7d84ab1de --- /dev/null +++ b/.changelog/8545.txt @@ -0,0 +1,3 @@ +```release-note:feature +agent: expose the list of supported envoy versions on /v1/agent/self +``` diff --git a/agent/agent_endpoint.go b/agent/agent_endpoint.go index ffde07aa7b..32f26b02eb 100644 --- a/agent/agent_endpoint.go +++ b/agent/agent_endpoint.go @@ -17,6 +17,7 @@ import ( "github.com/hashicorp/consul/agent/debug" "github.com/hashicorp/consul/agent/structs" token_store "github.com/hashicorp/consul/agent/token" + "github.com/hashicorp/consul/agent/xds/proxysupport" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/ipaddr" "github.com/hashicorp/consul/lib" @@ -38,6 +39,11 @@ type Self struct { Member serf.Member Stats map[string]map[string]string Meta map[string]string + XDS *xdsSelf `json:"xDS,omitempty"` +} + +type xdsSelf struct { + SupportedProxies map[string][]string } func (s *HTTPServer) AgentSelf(resp http.ResponseWriter, req *http.Request) (interface{}, error) { @@ -60,6 +66,15 @@ func (s *HTTPServer) AgentSelf(resp http.ResponseWriter, req *http.Request) (int } } + var xds *xdsSelf + if s.agent.grpcServer != nil { + xds = &xdsSelf{ + SupportedProxies: map[string][]string{ + "envoy": proxysupport.EnvoyVersions, + }, + } + } + config := struct { Datacenter string NodeName string @@ -82,6 +97,7 @@ func (s *HTTPServer) AgentSelf(resp http.ResponseWriter, req *http.Request) (int Member: s.agent.LocalMember(), Stats: s.agent.Stats(), Meta: s.agent.State.Metadata(), + XDS: xds, }, nil } diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 6f2b9f7bfe..505835ce84 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -13,7 +13,6 @@ import ( "net/http/httptest" "net/url" "os" - "reflect" "strconv" "strings" "testing" @@ -27,6 +26,7 @@ import ( "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/token" tokenStore "github.com/hashicorp/consul/agent/token" + "github.com/hashicorp/consul/agent/xds/proxysupport" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/sdk/testutil" @@ -1209,39 +1209,65 @@ func TestAgent_Checks_ACLFilter(t *testing.T) { func TestAgent_Self(t *testing.T) { t.Parallel() - a := NewTestAgent(t, ` - node_meta { - somekey = "somevalue" - } - `) - defer a.Shutdown() - testrpc.WaitForTestAgent(t, a.RPC, "dc1") - req, _ := http.NewRequest("GET", "/v1/agent/self", nil) - obj, err := a.srv.AgentSelf(nil, req) - if err != nil { - t.Fatalf("err: %v", err) + cases := map[string]struct { + hcl string + expectXDS bool + }{ + "normal": { + hcl: ` + node_meta { + somekey = "somevalue" + } + `, + expectXDS: true, + }, + "no grpc": { + hcl: ` + node_meta { + somekey = "somevalue" + } + ports = { + grpc = -1 + } + `, + expectXDS: false, + }, } - val := obj.(Self) - if int(val.Member.Port) != a.Config.SerfPortLAN { - t.Fatalf("incorrect port: %v", obj) - } + for name, tc := range cases { + tc := tc + t.Run(name, func(t *testing.T) { + a := NewTestAgent(t, tc.hcl) + defer a.Shutdown() - if val.DebugConfig["SerfPortLAN"].(int) != a.Config.SerfPortLAN { - t.Fatalf("incorrect port: %v", obj) - } + testrpc.WaitForTestAgent(t, a.RPC, "dc1") + req, _ := http.NewRequest("GET", "/v1/agent/self", nil) + obj, err := a.srv.AgentSelf(nil, req) + require.NoError(t, err) - cs, err := a.GetLANCoordinate() - if err != nil { - t.Fatalf("err: %v", err) - } - if c := cs[a.config.SegmentName]; !reflect.DeepEqual(c, val.Coord) { - t.Fatalf("coordinates are not equal: %v != %v", c, val.Coord) - } - delete(val.Meta, structs.MetaSegmentKey) // Added later, not in config. - if !reflect.DeepEqual(a.config.NodeMeta, val.Meta) { - t.Fatalf("meta fields are not equal: %v != %v", a.config.NodeMeta, val.Meta) + val := obj.(Self) + require.Equal(t, a.Config.SerfPortLAN, int(val.Member.Port)) + require.Equal(t, a.Config.SerfPortLAN, val.DebugConfig["SerfPortLAN"].(int)) + + cs, err := a.GetLANCoordinate() + require.NoError(t, err) + require.Equal(t, cs[a.config.SegmentName], val.Coord) + + delete(val.Meta, structs.MetaSegmentKey) // Added later, not in config. + require.Equal(t, a.config.NodeMeta, val.Meta) + + if tc.expectXDS { + require.NotNil(t, val.XDS, "xds component missing when gRPC is enabled") + require.Equal(t, + map[string][]string{"envoy": proxysupport.EnvoyVersions}, + val.XDS.SupportedProxies, + ) + + } else { + require.Nil(t, val.XDS, "xds component should be missing when gRPC is disabled") + } + }) } } diff --git a/agent/xds/proxysupport/proxysupport.go b/agent/xds/proxysupport/proxysupport.go index 98296309c9..ed4be60486 100644 --- a/agent/xds/proxysupport/proxysupport.go +++ b/agent/xds/proxysupport/proxysupport.go @@ -2,6 +2,9 @@ package proxysupport // EnvoyVersions lists the latest officially supported versions of envoy. // +// This list must be sorted by semver descending. Only one point release for +// each major release should be present. +// // see: https://www.consul.io/docs/connect/proxies/envoy#supported-versions var EnvoyVersions = []string{ "1.15.0", From 90c07232dc8831532a60cb89f471e74aebedeb79 Mon Sep 17 00:00:00 2001 From: Jeff Date: Wed, 26 Aug 2020 08:04:25 -0700 Subject: [PATCH 007/122] Update CONTRIBUTING.md --- .github/CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index ea7a50fbc4..4349c90b36 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -124,8 +124,8 @@ The underlying script dumps the full Consul log output to `test.log` in the directory of the target package. In the example above it would be located at `consul/connect/proxy/test.log`. -sufficient to surface a flaky test. If a test is run in this environment and Historically, the defaults for `FLAKE_CPUS` (0.15) and `FLAKE_N` (30) have been +sufficient to surface a flaky test. If a test is run in this environment and it does not fail after 30 iterations, it should be sufficiently stable. ## Vendoring From d7017aa4db4620d744a8abac547da97d52de4874 Mon Sep 17 00:00:00 2001 From: Nick Wales <588472+nickwales@users.noreply.github.com> Date: Wed, 26 Aug 2020 14:11:56 -0500 Subject: [PATCH 008/122] Fixes table formatting (#8572) --- website/pages/docs/agent/telemetry.mdx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/website/pages/docs/agent/telemetry.mdx b/website/pages/docs/agent/telemetry.mdx index c400480093..449997fcd7 100644 --- a/website/pages/docs/agent/telemetry.mdx +++ b/website/pages/docs/agent/telemetry.mdx @@ -199,8 +199,7 @@ These metrics are used to monitor the health of the Consul servers. | `consul.raft.state.leader` | This increments whenever a Consul server becomes a leader. If there are frequent leadership changes this may be indication that the servers are overloaded and aren't meeting the soft real-time requirements for Raft, or that there are networking problems between the servers. | leadership transitions / interval | counter | | `consul.raft.state.candidate` | This increments whenever a Consul server starts an election. If this increments without a leadership change occurring it could indicate that a single server is overloaded or is experiencing network connectivity issues. | election attempts / interval | counter | | `consul.raft.apply` | This counts the number of Raft transactions occurring over the interval, which is a general indicator of the write load on the Consul servers. | raft transactions / interval | counter | -| `consul.raft.barrier` | This metric counts the number of times the agent has started the barrier i.e the number of times it has | -| issued a blocking call, to ensure that the agent has all the pending operations that were queued, to be applied to the agent's FSM. | blocks / interval | counter | +| `consul.raft.barrier` | This metric counts the number of times the agent has started the barrier i.e the number of times it has issued a blocking call, to ensure that the agent has all the pending operations that were queued, to be applied to the agent's FSM. | blocks / interval | counter | | `consul.raft.verify_leader` | This metric counts the number of times an agent checks whether it is still the leader or not | checks / interval | Counter | | `consul.raft.restore` | This metric counts the number of times the restore operation has been performed by the agent. Here, restore refers to the action of raft consuming an external snapshot to restore its state. | operation invoked / interval | counter | | `consul.raft.commitTime` | This measures the time it takes to commit a new entry to the Raft log on the leader. | ms | timer | From 879d087f65b3320fa4193e462d75c1764ad8a9f0 Mon Sep 17 00:00:00 2001 From: Pierre Souchay Date: Thu, 27 Aug 2020 08:51:19 +0200 Subject: [PATCH 009/122] Added `options.Equals()` and minor fixes indentation fixes --- agent/cache/cache.go | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/agent/cache/cache.go b/agent/cache/cache.go index ed32527e4d..b92feb5a50 100644 --- a/agent/cache/cache.go +++ b/agent/cache/cache.go @@ -144,6 +144,11 @@ type Options struct { EntryFetchRate rate.Limit } +// Equal return true if both options are equivalent +func (o Options) Equal(other Options) bool { + return o.EntryFetchMaxBurst == other.EntryFetchMaxBurst && o.EntryFetchRate == other.EntryFetchRate +} + // applyDefaultValuesOnOptions set default values on options and returned updated value func applyDefaultValuesOnOptions(options Options) Options { if options.EntryFetchRate == 0.0 { @@ -243,7 +248,8 @@ func (c *Cache) RegisterType(n string, typ Type) { // return true if Cache is updated, false if already up to date func (c *Cache) ReloadOptions(options Options) bool { options = applyDefaultValuesOnOptions(options) - if c.options.EntryFetchRate != options.EntryFetchRate || c.options.EntryFetchMaxBurst != options.EntryFetchMaxBurst { + modified := !options.Equal(c.options) + if modified { c.entriesLock.RLock() defer c.entriesLock.RUnlock() for _, entry := range c.entries { @@ -256,9 +262,8 @@ func (c *Cache) ReloadOptions(options Options) bool { } c.options.EntryFetchRate = options.EntryFetchRate c.options.EntryFetchMaxBurst = options.EntryFetchMaxBurst - return true } - return false + return modified } // Get loads the data for the given type and request. If data satisfying the From 5842a902dfefe77cfd2bb54c8976339ef02c470d Mon Sep 17 00:00:00 2001 From: Pierre Souchay Date: Thu, 27 Aug 2020 16:41:20 +0200 Subject: [PATCH 010/122] Tests that changes in rate limit are taken into account by agent --- agent/agent_test.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/agent/agent_test.go b/agent/agent_test.go index 94bb74f7ba..33dfa311e6 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -43,6 +43,7 @@ import ( "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" ) @@ -765,10 +766,15 @@ func TestCacheRateLimit(test *testing.T) { test.Run(fmt.Sprintf("rate_limit_at_%v", currentTest.rateLimit), func(t *testing.T) { tt := currentTest t.Parallel() - a := NewTestAgent(t, fmt.Sprintf("cache = { entry_fetch_rate = %v, entry_fetch_max_burst = 1 }", tt.rateLimit)) + a := NewTestAgent(t, "cache = { entry_fetch_rate = 1, entry_fetch_max_burst = 1 }") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") + cfg := a.config + require.Equal(t, rate.Limit(1), a.config.Cache.EntryFetchRate) + cfg.Cache.EntryFetchRate = rate.Limit(tt.rateLimit) + a.reloadConfigInternal(cfg) + require.Equal(t, rate.Limit(tt.rateLimit), a.config.Cache.EntryFetchRate) var wg sync.WaitGroup stillProcessing := true From 7c3914d89ecca97da4bbf3d806856525d6570c24 Mon Sep 17 00:00:00 2001 From: Matt Keeler Date: Thu, 27 Aug 2020 11:00:48 -0400 Subject: [PATCH 011/122] Add helpers to the API client to help with getting information from `AgentMember` tags (#8575) Lots of constants were added for various tags that would concern users and are not already parsed out. Additionally two methods on the AgentMember type were added to ask a member what its ACL Mode is and whether its a server or not. --- .changelog/8575.txt | 11 ++++++ api/agent.go | 88 +++++++++++++++++++++++++++++++++++++++++++++ api/agent_test.go | 88 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 187 insertions(+) create mode 100644 .changelog/8575.txt diff --git a/.changelog/8575.txt b/.changelog/8575.txt new file mode 100644 index 0000000000..5aef310441 --- /dev/null +++ b/.changelog/8575.txt @@ -0,0 +1,11 @@ +```release-note:improvement +api: Added constants for common tag keys and values in the `Tags` field of the `AgentMember` struct. +``` + +```release-note:improvement +api: Added `IsConsulServer` method to the `AgentMember` type to easily determine whether the agent is a server. +``` + +```release-note:improvement +api: Added `ACLMode` method to the `AgentMember` type to determine what ACL mode the agent is operating in. +``` diff --git a/api/agent.go b/api/agent.go index 8e0ae5e507..b707265962 100644 --- a/api/agent.go +++ b/api/agent.go @@ -121,6 +121,70 @@ type AgentServiceConnectProxyConfig struct { Expose ExposeConfig `json:",omitempty"` } +const ( + // MemberTagKeyACLMode is the key used to indicate what ACL mode the agent is + // operating in. The values of this key will be one of the MemberACLMode constants + // with the key not being present indicating ACLModeUnknown. + MemberTagKeyACLMode = "acls" + + // MemberTagRole is the key used to indicate that the member is a server or not. + MemberTagKeyRole = "role" + + // MemberTagValueRoleServer is the value of the MemberTagKeyRole used to indicate + // that the member represents a Consul server. + MemberTagValueRoleServer = "consul" + + // MemberTagKeySegment is the key name of the tag used to indicate which network + // segment this member is in. + // Network Segments are a Consul Enterprise feature. + MemberTagKeySegment = "segment" + + // MemberTagKeyBootstrap is the key name of the tag used to indicate whether this + // agent was started with the "bootstrap" configuration enabled + MemberTagKeyBootstrap = "bootstrap" + // MemberTagValueBootstrap is the value of the MemberTagKeyBootstrap key when the + // agent was started with the "bootstrap" configuration enabled. + MemberTagValueBootstrap = "1" + + // MemberTagKeyBootstrapExpect is the key name of the tag used to indicate whether + // this agent was started with the "bootstrap_expect" configuration set to a non-zero + // value. The value of this key will be the string for of that configuration value. + MemberTagKeyBootstrapExpect = "expect" + + // MemberTagKeyUseTLS is the key name of the tag used to indicate whther this agent + // was configured to use TLS. + MemberTagKeyUseTLS = "use_tls" + // MemberTagValueUseTLS is the value of the MemberTagKeyUseTLS when the agent was + // configured to use TLS. Any other value indicates that it was not setup in + // that manner. + MemberTagValueUseTLS = "1" + + // MemberTagKeyReadReplica is the key used to indicate that the member is a read + // replica server (will remain a Raft non-voter). + // Read Replicas are a Consul Enterprise feature. + MemberTagKeyReadReplica = "nonvoter" + // MemberTagValueReadReplica is the value of the MemberTagKeyReadReplica key when + // the member is in fact a read-replica. Any other value indicates that it is not. + // Read Replicas are a Consul Enterprise feature. + MemberTagValueReadReplica = "1" +) + +type MemberACLMode string + +const ( + // ACLModeDisables indicates that ACLs are disabled for this agent + ACLModeDisabled MemberACLMode = "0" + // ACLModeEnabled indicates that ACLs are enabled and operating in new ACL + // mode (v1.4.0+ ACLs) + ACLModeEnabled MemberACLMode = "1" + // ACLModeLegacy indicates that ACLs are enabled and operating in legacy mode. + ACLModeLegacy MemberACLMode = "2" + // ACLModeUnkown is used to indicate that the AgentMember.Tags didn't advertise + // an ACL mode at all. This is the case for Consul versions before v1.4.0 and + // should be treated similarly to ACLModeLegacy. + ACLModeUnknown MemberACLMode = "3" +) + // AgentMember represents a cluster member known to the agent type AgentMember struct { Name string @@ -144,6 +208,30 @@ type AgentMember struct { DelegateCur uint8 } +// ACLMode returns the ACL mode this agent is operating in. +func (m *AgentMember) ACLMode() MemberACLMode { + mode := m.Tags[MemberTagKeyACLMode] + + // the key may not have existed but then an + // empty string will be returned and we will + // handle that in the default case of the switch + switch MemberACLMode(mode) { + case ACLModeDisabled: + return ACLModeDisabled + case ACLModeEnabled: + return ACLModeEnabled + case ACLModeLegacy: + return ACLModeLegacy + default: + return ACLModeUnknown + } +} + +// IsConsulServer returns true when this member is a Consul server. +func (m *AgentMember) IsConsulServer() bool { + return m.Tags[MemberTagKeyRole] == MemberTagValueRoleServer +} + // AllSegments is used to select for all segments in MembersOpts. const AllSegments = "_all" diff --git a/api/agent_test.go b/api/agent_test.go index dd96491ccc..b0b7701a27 100644 --- a/api/agent_test.go +++ b/api/agent_test.go @@ -1798,3 +1798,91 @@ func TestAgentService_ExposeChecks(t *testing.T) { require.True(t, svc.Proxy.Expose.Checks) require.Equal(t, path, svc.Proxy.Expose.Paths[0]) } + +func TestMemberACLMode(t *testing.T) { + type testCase struct { + tagValue string + expectedMode MemberACLMode + } + + cases := map[string]testCase{ + "disabled": { + tagValue: "0", + expectedMode: ACLModeDisabled, + }, + "enabled": { + tagValue: "1", + expectedMode: ACLModeEnabled, + }, + "legacy": { + tagValue: "2", + expectedMode: ACLModeLegacy, + }, + "unknown-3": { + tagValue: "3", + expectedMode: ACLModeUnknown, + }, + "unknown-other": { + tagValue: "77", + expectedMode: ACLModeUnknown, + }, + "unknown-not-present": { + tagValue: "", + expectedMode: ACLModeUnknown, + }, + } + + for name, tcase := range cases { + t.Run(name, func(t *testing.T) { + tags := map[string]string{} + + if tcase.tagValue != "" { + tags[MemberTagKeyACLMode] = tcase.tagValue + } + + m := AgentMember{ + Tags: tags, + } + + require.Equal(t, tcase.expectedMode, m.ACLMode()) + }) + } +} + +func TestMemberIsConsulServer(t *testing.T) { + type testCase struct { + tagValue string + isServer bool + } + + cases := map[string]testCase{ + "not-present": { + tagValue: "", + isServer: false, + }, + "server": { + tagValue: MemberTagValueRoleServer, + isServer: true, + }, + "client": { + tagValue: "client", + isServer: false, + }, + } + + for name, tcase := range cases { + t.Run(name, func(t *testing.T) { + tags := map[string]string{} + + if tcase.tagValue != "" { + tags[MemberTagKeyRole] = tcase.tagValue + } + + m := AgentMember{ + Tags: tags, + } + + require.Equal(t, tcase.isServer, m.IsConsulServer()) + }) + } +} From f97cc0445ae11a3d42feae0a027f4807b18a56f4 Mon Sep 17 00:00:00 2001 From: Matt Keeler Date: Thu, 27 Aug 2020 11:23:52 -0400 Subject: [PATCH 012/122] Move RPC router from Client/Server and into BaseDeps (#8559) This will allow it to be a shared component which is needed for AutoConfig --- agent/agent.go | 6 ++ agent/agent_test.go | 30 +++++++++ agent/consul/auto_encrypt.go | 2 +- agent/consul/client.go | 33 ++++++---- agent/consul/client_serf.go | 7 ++- agent/consul/client_test.go | 18 +++--- agent/consul/coordinate_endpoint.go | 24 ++++--- agent/consul/options.go | 8 +++ agent/consul/server.go | 13 +++- agent/consul/util.go | 2 +- agent/router/manager.go | 3 + agent/router/router.go | 97 +++++++++++++++++++++++------ agent/router/router_test.go | 41 ++++++++++++ agent/setup.go | 4 ++ types/area.go | 4 ++ 15 files changed, 240 insertions(+), 52 deletions(-) diff --git a/agent/agent.go b/agent/agent.go index bc676b0bfa..0f83e070a1 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -18,6 +18,7 @@ import ( "time" "github.com/hashicorp/consul/agent/dns" + "github.com/hashicorp/consul/agent/router" "github.com/hashicorp/go-connlimit" "github.com/hashicorp/go-hclog" "github.com/hashicorp/go-memdb" @@ -306,6 +307,9 @@ type Agent struct { // Connection Pool connPool *pool.ConnPool + // Shared RPC Router + router *router.Router + // enterpriseAgent embeds fields that we only access in consul-enterprise builds enterpriseAgent } @@ -351,6 +355,7 @@ func New(bd BaseDeps) (*Agent, error) { MemSink: bd.MetricsHandler, connPool: bd.ConnPool, autoConf: bd.AutoConfig, + router: bd.Router, } a.serviceManager = NewServiceManager(&a) @@ -462,6 +467,7 @@ func (a *Agent) Start(ctx context.Context) error { consul.WithTokenStore(a.tokens), consul.WithTLSConfigurator(a.tlsConfigurator), consul.WithConnectionPool(a.connPool), + consul.WithRouter(a.router), } // Setup either the client or the server. diff --git a/agent/agent_test.go b/agent/agent_test.go index 94bb74f7ba..4a3a672c20 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -4741,3 +4741,33 @@ func TestAgent_AutoEncrypt(t *testing.T) { require.Len(t, x509Cert.URIs, 1) require.Equal(t, id.URI(), x509Cert.URIs[0]) } + +func TestSharedRPCRouter(t *testing.T) { + // this test runs both a server and client and ensures that the shared + // router is being used. It would be possible for the Client and Server + // types to create and use their own routers and for RPCs such as the + // ones used in WaitForTestAgent to succeed. However accessing the + // router stored on the agent ensures that Serf information from the + // Client/Server types are being set in the same shared rpc router. + + srv := NewTestAgent(t, "") + defer srv.Shutdown() + + testrpc.WaitForTestAgent(t, srv.RPC, "dc1") + + mgr, server := srv.Agent.router.FindLANRoute() + require.NotNil(t, mgr) + require.NotNil(t, server) + + client := NewTestAgent(t, ` + server = false + bootstrap = false + retry_join = ["`+srv.Config.SerfBindAddrLAN.String()+`"] + `) + + testrpc.WaitForTestAgent(t, client.RPC, "dc1") + + mgr, server = client.Agent.router.FindLANRoute() + require.NotNil(t, mgr) + require.NotNil(t, server) +} diff --git a/agent/consul/auto_encrypt.go b/agent/consul/auto_encrypt.go index b9c3bbd41e..0684e7f713 100644 --- a/agent/consul/auto_encrypt.go +++ b/agent/consul/auto_encrypt.go @@ -73,7 +73,7 @@ func (c *Client) RequestAutoEncryptCerts(ctx context.Context, servers []string, // Check if we know about a server already through gossip. Depending on // how the agent joined, there might already be one. Also in case this // gets called because the cert expired. - server := c.routers.FindServer() + server := c.router.FindLANServer() if server != nil { servers = []string{server.Addr.String()} } diff --git a/agent/consul/client.go b/agent/consul/client.go index 8d3786a421..861d95e53c 100644 --- a/agent/consul/client.go +++ b/agent/consul/client.go @@ -15,6 +15,7 @@ import ( "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/logging" "github.com/hashicorp/consul/tlsutil" + "github.com/hashicorp/consul/types" "github.com/hashicorp/go-hclog" "github.com/hashicorp/serf/serf" "golang.org/x/time/rate" @@ -59,9 +60,9 @@ type Client struct { // Connection pool to consul servers connPool *pool.ConnPool - // routers is responsible for the selection and maintenance of + // router is responsible for the selection and maintenance of // Consul servers this agent uses for RPC requests - routers *router.Manager + router *router.Router // rpcLimiter is used to rate limit the total number of RPCs initiated // from an agent. @@ -120,12 +121,14 @@ func NewClient(config *Config, options ...ConsulOption) (*Client, error) { } } + logger := flat.logger.NamedIntercept(logging.ConsulClient) + // Create client c := &Client{ config: config, connPool: connPool, eventCh: make(chan serf.Event, serfEventBacklog), - logger: flat.logger.NamedIntercept(logging.ConsulClient), + logger: logger, shutdownCh: make(chan struct{}), tlsConfigurator: tlsConfigurator, } @@ -160,15 +163,22 @@ func NewClient(config *Config, options ...ConsulOption) (*Client, error) { return nil, fmt.Errorf("Failed to start lan serf: %v", err) } - // Start maintenance task for servers - c.routers = router.New(c.logger, c.shutdownCh, c.serf, c.connPool, "") - go c.routers.Start() + rpcRouter := flat.router + if rpcRouter == nil { + rpcRouter = router.NewRouter(logger, config.Datacenter, fmt.Sprintf("%s.%s", config.NodeName, config.Datacenter)) + } + + if err := rpcRouter.AddArea(types.AreaLAN, c.serf, c.connPool); err != nil { + c.Shutdown() + return nil, fmt.Errorf("Failed to add LAN area to the RPC router: %w", err) + } + c.router = rpcRouter // Start LAN event handlers after the router is complete since the event // handlers depend on the router and the router depends on Serf. go c.lanEventHandler() - // This needs to happen after initializing c.routers to prevent a race + // This needs to happen after initializing c.router to prevent a race // condition where the router manager is used when the pointer is nil if c.acls.ACLsEnabled() { go c.monitorACLMode() @@ -276,7 +286,7 @@ func (c *Client) RPC(method string, args interface{}, reply interface{}) error { firstCheck := time.Now() TRY: - server := c.routers.FindServer() + manager, server := c.router.FindLANRoute() if server == nil { return structs.ErrNoServers } @@ -301,7 +311,7 @@ TRY: "error", rpcErr, ) metrics.IncrCounterWithLabels([]string{"client", "rpc", "failed"}, 1, []metrics.Label{{Name: "server", Value: server.Name}}) - c.routers.NotifyFailedServer(server) + manager.NotifyFailedServer(server) if retry := canRetry(args, rpcErr); !retry { return rpcErr } @@ -323,7 +333,7 @@ TRY: // operation. func (c *Client) SnapshotRPC(args *structs.SnapshotRequest, in io.Reader, out io.Writer, replyFn structs.SnapshotReplyFn) error { - server := c.routers.FindServer() + manager, server := c.router.FindLANRoute() if server == nil { return structs.ErrNoServers } @@ -339,6 +349,7 @@ func (c *Client) SnapshotRPC(args *structs.SnapshotRequest, in io.Reader, out io var reply structs.SnapshotResponse snap, err := SnapshotRPC(c.connPool, c.config.Datacenter, server.ShortName, server.Addr, args, in, &reply) if err != nil { + manager.NotifyFailedServer(server) return err } defer func() { @@ -367,7 +378,7 @@ func (c *Client) SnapshotRPC(args *structs.SnapshotRequest, in io.Reader, out io // Stats is used to return statistics for debugging and insight // for various sub-systems func (c *Client) Stats() map[string]map[string]string { - numServers := c.routers.NumServers() + numServers := c.router.GetLANManager().NumServers() toString := func(v uint64) string { return strconv.FormatUint(v, 10) diff --git a/agent/consul/client_serf.go b/agent/consul/client_serf.go index 92a3648ed5..fb0b999e14 100644 --- a/agent/consul/client_serf.go +++ b/agent/consul/client_serf.go @@ -9,6 +9,7 @@ import ( "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/serf" ) @@ -115,7 +116,7 @@ func (c *Client) nodeJoin(me serf.MemberEvent) { continue } c.logger.Info("adding server", "server", parts) - c.routers.AddServer(parts) + c.router.AddServer(types.AreaLAN, parts) // Trigger the callback if c.config.ServerUp != nil { @@ -139,7 +140,7 @@ func (c *Client) nodeUpdate(me serf.MemberEvent) { continue } c.logger.Info("updating server", "server", parts.String()) - c.routers.AddServer(parts) + c.router.AddServer(types.AreaLAN, parts) } } @@ -151,7 +152,7 @@ func (c *Client) nodeFail(me serf.MemberEvent) { continue } c.logger.Info("removing server", "server", parts.String()) - c.routers.RemoveServer(parts) + c.router.RemoveServer(types.AreaLAN, parts) } } diff --git a/agent/consul/client_test.go b/agent/consul/client_test.go index 05cafd833a..e9a4c7bdc1 100644 --- a/agent/consul/client_test.go +++ b/agent/consul/client_test.go @@ -112,7 +112,7 @@ func TestClient_JoinLAN(t *testing.T) { joinLAN(t, c1, s1) testrpc.WaitForTestAgent(t, c1.RPC, "dc1") retry.Run(t, func(r *retry.R) { - if got, want := c1.routers.NumServers(), 1; got != want { + if got, want := c1.router.GetLANManager().NumServers(), 1; got != want { r.Fatalf("got %d servers want %d", got, want) } if got, want := len(s1.LANMembers()), 2; got != want { @@ -150,7 +150,7 @@ func TestClient_LANReap(t *testing.T) { // Check the router has both retry.Run(t, func(r *retry.R) { - server := c1.routers.FindServer() + server := c1.router.FindLANServer() require.NotNil(t, server) require.Equal(t, s1.config.NodeName, server.Name) }) @@ -160,7 +160,7 @@ func TestClient_LANReap(t *testing.T) { retry.Run(t, func(r *retry.R) { require.Len(r, c1.LANMembers(), 1) - server := c1.routers.FindServer() + server := c1.router.FindLANServer() require.Nil(t, server) }) } @@ -390,7 +390,7 @@ func TestClient_RPC_ConsulServerPing(t *testing.T) { } // Sleep to allow Serf to sync, shuffle, and let the shuffle complete - c.routers.ResetRebalanceTimer() + c.router.GetLANManager().ResetRebalanceTimer() time.Sleep(time.Second) if len(c.LANMembers()) != numServers+numClients { @@ -406,7 +406,7 @@ func TestClient_RPC_ConsulServerPing(t *testing.T) { var pingCount int for range servers { time.Sleep(200 * time.Millisecond) - s := c.routers.FindServer() + m, s := c.router.FindLANRoute() ok, err := c.connPool.Ping(s.Datacenter, s.ShortName, s.Addr) if !ok { t.Errorf("Unable to ping server %v: %s", s.String(), err) @@ -415,7 +415,7 @@ func TestClient_RPC_ConsulServerPing(t *testing.T) { // Artificially fail the server in order to rotate the server // list - c.routers.NotifyFailedServer(s) + m.NotifyFailedServer(s) } if pingCount != numServers { @@ -524,7 +524,7 @@ func TestClient_SnapshotRPC(t *testing.T) { // Wait until we've got a healthy server. retry.Run(t, func(r *retry.R) { - if got, want := c1.routers.NumServers(), 1; got != want { + if got, want := c1.router.GetLANManager().NumServers(), 1; got != want { r.Fatalf("got %d servers want %d", got, want) } }) @@ -559,7 +559,7 @@ func TestClient_SnapshotRPC_RateLimit(t *testing.T) { joinLAN(t, c1, s1) retry.Run(t, func(r *retry.R) { - if got, want := c1.routers.NumServers(), 1; got != want { + if got, want := c1.router.GetLANManager().NumServers(), 1; got != want { r.Fatalf("got %d servers want %d", got, want) } }) @@ -607,7 +607,7 @@ func TestClient_SnapshotRPC_TLS(t *testing.T) { } // Wait until we've got a healthy server. - if got, want := c1.routers.NumServers(), 1; got != want { + if got, want := c1.router.GetLANManager().NumServers(), 1; got != want { r.Fatalf("got %d servers want %d", got, want) } }) diff --git a/agent/consul/coordinate_endpoint.go b/agent/consul/coordinate_endpoint.go index e4a3ac4f79..984f317c4d 100644 --- a/agent/consul/coordinate_endpoint.go +++ b/agent/consul/coordinate_endpoint.go @@ -10,6 +10,7 @@ import ( "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/logging" + "github.com/hashicorp/consul/types" "github.com/hashicorp/go-hclog" "github.com/hashicorp/go-memdb" ) @@ -161,23 +162,32 @@ func (c *Coordinate) Update(args *structs.CoordinateUpdateRequest, reply *struct // ListDatacenters returns the list of datacenters and their respective nodes // and the raw coordinates of those nodes (if no coordinates are available for -// any of the nodes, the node list may be empty). +// any of the nodes, the node list may be empty). This endpoint will not return +// information about the LAN network area. func (c *Coordinate) ListDatacenters(args *struct{}, reply *[]structs.DatacenterMap) error { maps, err := c.srv.router.GetDatacenterMaps() if err != nil { return err } + var out []structs.DatacenterMap + // Strip the datacenter suffixes from all the node names. - for i := range maps { - suffix := fmt.Sprintf(".%s", maps[i].Datacenter) - for j := range maps[i].Coordinates { - node := maps[i].Coordinates[j].Node - maps[i].Coordinates[j].Node = strings.TrimSuffix(node, suffix) + for _, dcMap := range maps { + if dcMap.AreaID == types.AreaLAN { + continue } + + suffix := fmt.Sprintf(".%s", dcMap.Datacenter) + for j := range dcMap.Coordinates { + node := dcMap.Coordinates[j].Node + dcMap.Coordinates[j].Node = strings.TrimSuffix(node, suffix) + } + + out = append(out, dcMap) } - *reply = maps + *reply = out return nil } diff --git a/agent/consul/options.go b/agent/consul/options.go index 450d9ee5dc..2650780761 100644 --- a/agent/consul/options.go +++ b/agent/consul/options.go @@ -2,6 +2,7 @@ package consul import ( "github.com/hashicorp/consul/agent/pool" + "github.com/hashicorp/consul/agent/router" "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/tlsutil" "github.com/hashicorp/go-hclog" @@ -12,6 +13,7 @@ type consulOptions struct { tlsConfigurator *tlsutil.Configurator connPool *pool.ConnPool tokens *token.Store + router *router.Router } type ConsulOption func(*consulOptions) @@ -40,6 +42,12 @@ func WithTokenStore(tokens *token.Store) ConsulOption { } } +func WithRouter(router *router.Router) ConsulOption { + return func(opt *consulOptions) { + opt.router = router + } +} + func flattenConsulOptions(options []ConsulOption) consulOptions { var flat consulOptions for _, opt := range options { diff --git a/agent/consul/server.go b/agent/consul/server.go index 56d2a557ac..04d3b61bd3 100644 --- a/agent/consul/server.go +++ b/agent/consul/server.go @@ -322,6 +322,7 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { tokens := flat.tokens tlsConfigurator := flat.tlsConfigurator connPool := flat.connPool + rpcRouter := flat.router if err := config.CheckProtocolVersion(); err != nil { return nil, err @@ -377,6 +378,11 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { serverLogger := logger.NamedIntercept(logging.ConsulServer) loggers := newLoggerStore(serverLogger) + + if rpcRouter == nil { + rpcRouter = router.NewRouter(serverLogger, config.Datacenter, fmt.Sprintf("%s.%s", config.NodeName, config.Datacenter)) + } + // Create server. s := &Server{ config: config, @@ -388,7 +394,7 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { loggers: loggers, leaveCh: make(chan struct{}), reconcileCh: make(chan serf.Member, reconcileChSize), - router: router.NewRouter(serverLogger, config.Datacenter, fmt.Sprintf("%s.%s", config.NodeName, config.Datacenter)), + router: rpcRouter, rpcServer: rpc.NewServer(), insecureRPCServer: rpc.NewServer(), tlsConfigurator: tlsConfigurator, @@ -545,6 +551,11 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { s.Shutdown() return nil, fmt.Errorf("Failed to start LAN Serf: %v", err) } + + if err := s.router.AddArea(types.AreaLAN, s.serfLAN, s.connPool); err != nil { + s.Shutdown() + return nil, fmt.Errorf("Failed to add LAN serf route: %w", err) + } go s.lanEventHandler() // Start the flooders after the LAN event handler is wired up. diff --git a/agent/consul/util.go b/agent/consul/util.go index 6405b33493..d79f6c3ed1 100644 --- a/agent/consul/util.go +++ b/agent/consul/util.go @@ -156,7 +156,7 @@ func (c *Client) CheckServers(datacenter string, fn func(*metadata.Server) bool) return } - c.routers.CheckServers(fn) + c.router.CheckServers(datacenter, fn) } type serversACLMode struct { diff --git a/agent/router/manager.go b/agent/router/manager.go index 1e42d36e79..9c7d805976 100644 --- a/agent/router/manager.go +++ b/agent/router/manager.go @@ -254,6 +254,9 @@ func (m *Manager) CheckServers(fn func(srv *metadata.Server) bool) { // getServerList is a convenience method which hides the locking semantics // of atomic.Value from the caller. func (m *Manager) getServerList() serverList { + if m == nil { + return serverList{} + } return m.listValue.Load().(serverList) } diff --git a/agent/router/router.go b/agent/router/router.go index f8fa52ff39..243082a0ef 100644 --- a/agent/router/router.go +++ b/agent/router/router.go @@ -144,6 +144,12 @@ func (r *Router) AddArea(areaID types.AreaID, cluster RouterSerfCluster, pinger } r.areas[areaID] = area + // always ensure we have a started manager for the LAN area + if areaID == types.AreaLAN { + r.logger.Info("Initializing LAN area manager") + r.maybeInitializeManager(area, r.localDatacenter) + } + // Do an initial populate of the manager so that we don't have to wait // for events to fire. This lets us attempt to use all the known servers // initially, and then will quickly detect that they are failed if we @@ -151,10 +157,12 @@ func (r *Router) AddArea(areaID types.AreaID, cluster RouterSerfCluster, pinger for _, m := range cluster.Members() { ok, parts := metadata.IsConsulServer(m) if !ok { - r.logger.Warn("Non-server in server-only area", - "non_server", m.Name, - "area", areaID, - ) + if areaID != types.AreaLAN { + r.logger.Warn("Non-server in server-only area", + "non_server", m.Name, + "area", areaID, + ) + } continue } @@ -233,24 +241,35 @@ func (r *Router) RemoveArea(areaID types.AreaID) error { return nil } +// maybeInitializeManager will initialize a new manager for the given area/dc +// if its not already created. Calling this function should only be done if +// holding a write lock on the Router. +func (r *Router) maybeInitializeManager(area *areaInfo, dc string) *Manager { + info, ok := area.managers[dc] + if ok { + return info.manager + } + + shutdownCh := make(chan struct{}) + manager := New(r.logger, shutdownCh, area.cluster, area.pinger, r.serverName) + info = &managerInfo{ + manager: manager, + shutdownCh: shutdownCh, + } + area.managers[dc] = info + + managers := r.managers[dc] + r.managers[dc] = append(managers, manager) + go manager.Start() + + return manager +} + // addServer does the work of AddServer once the write lock is held. func (r *Router) addServer(area *areaInfo, s *metadata.Server) error { // Make the manager on the fly if this is the first we've seen of it, // and add it to the index. - info, ok := area.managers[s.Datacenter] - if !ok { - shutdownCh := make(chan struct{}) - manager := New(r.logger, shutdownCh, area.cluster, area.pinger, r.serverName) - info = &managerInfo{ - manager: manager, - shutdownCh: shutdownCh, - } - area.managers[s.Datacenter] = info - - managers := r.managers[s.Datacenter] - r.managers[s.Datacenter] = append(managers, manager) - go manager.Start() - } + manager := r.maybeInitializeManager(area, s.Datacenter) // If TLS is enabled for the area, set it on the server so the manager // knows to use TLS when pinging it. @@ -258,7 +277,7 @@ func (r *Router) addServer(area *areaInfo, s *metadata.Server) error { s.UseTLS = true } - info.manager.AddServer(s) + manager.AddServer(s) return nil } @@ -341,6 +360,28 @@ func (r *Router) FindRoute(datacenter string) (*Manager, *metadata.Server, bool) return r.routeFn(datacenter) } +// FindLANRoute returns a healthy server within the local datacenter. In some +// cases this may return a best-effort unhealthy server that can be used for a +// connection attempt. If any problem occurs with the given server, the caller +// should feed that back to the manager associated with the server, which is +// also returned, by calling NotifyFailedServer(). +func (r *Router) FindLANRoute() (*Manager, *metadata.Server) { + mgr := r.GetLANManager() + + if mgr == nil { + return nil, nil + } + + return mgr, mgr.FindServer() +} + +// FindLANServer will look for a server in the local datacenter. +// This function may return a nil value if no server is available. +func (r *Router) FindLANServer() *metadata.Server { + _, srv := r.FindLANRoute() + return srv +} + // findDirectRoute looks for a route to the given datacenter if it's directly // adjacent to the server. func (r *Router) findDirectRoute(datacenter string) (*Manager, *metadata.Server, bool) { @@ -432,6 +473,24 @@ func (r *Router) HasDatacenter(dc string) bool { return ok } +// GetLANManager returns the Manager for the LAN area and the local datacenter +func (r *Router) GetLANManager() *Manager { + r.RLock() + defer r.RUnlock() + + area, ok := r.areas[types.AreaLAN] + if !ok { + return nil + } + + managerInfo, ok := area.managers[r.localDatacenter] + if !ok { + return nil + } + + return managerInfo.manager +} + // datacenterSorter takes a list of DC names and a parallel vector of distances // and implements sort.Interface, keeping both structures coherent and sorting // by distance. diff --git a/agent/router/router_test.go b/agent/router/router_test.go index 5ca440b01d..ae1beefaf4 100644 --- a/agent/router/router_test.go +++ b/agent/router/router_test.go @@ -15,6 +15,8 @@ import ( "github.com/hashicorp/consul/types" "github.com/hashicorp/serf/coordinate" "github.com/hashicorp/serf/serf" + + "github.com/stretchr/testify/require" ) type mockCluster struct { @@ -69,6 +71,26 @@ func (m *mockCluster) AddMember(dc string, name string, coord *coordinate.Coordi m.addr++ } +func (m *mockCluster) AddLANMember(dc, name, role string, coord *coordinate.Coordinate) { + member := serf.Member{ + Name: name, + Addr: net.ParseIP(fmt.Sprintf("127.0.0.%d", m.addr)), + Port: 8300, + Tags: map[string]string{ + "dc": dc, + "role": role, + "port": "8300", + "build": "0.8.0", + "vsn": "3", + }, + } + m.members = append(m.members, member) + if coord != nil { + m.coords[member.Name] = coord + } + m.addr++ +} + // testCluster is used to generate a single WAN-like area with a known set of // member and RTT topology. // @@ -487,3 +509,22 @@ func TestRouter_GetDatacenterMaps(t *testing.T) { } } } + +func TestRouter_FindLANServer(t *testing.T) { + r := testRouter(t, "dc0") + + lan := newMockCluster("node4.dc0") + lan.AddLANMember("dc0", "node0", "consul", lib.GenerateCoordinate(10*time.Millisecond)) + lan.AddLANMember("dc0", "node1", "", lib.GenerateCoordinate(20*time.Millisecond)) + lan.AddLANMember("dc0", "node2", "", lib.GenerateCoordinate(21*time.Millisecond)) + + require.NoError(t, r.AddArea(types.AreaLAN, lan, &fauxConnPool{})) + + srv := r.FindLANServer() + require.NotNil(t, srv) + require.Equal(t, "127.0.0.1:8300", srv.Addr.String()) + + mgr, srv2 := r.FindLANRoute() + require.NotNil(t, mgr) + require.Equal(t, srv, srv2) +} diff --git a/agent/setup.go b/agent/setup.go index b8964d09d4..4ed2823222 100644 --- a/agent/setup.go +++ b/agent/setup.go @@ -13,6 +13,7 @@ import ( certmon "github.com/hashicorp/consul/agent/cert-monitor" "github.com/hashicorp/consul/agent/config" "github.com/hashicorp/consul/agent/pool" + "github.com/hashicorp/consul/agent/router" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/ipaddr" @@ -35,6 +36,7 @@ type BaseDeps struct { Cache *cache.Cache AutoConfig *autoconf.AutoConfig // TODO: use an interface ConnPool *pool.ConnPool // TODO: use an interface + Router *router.Router } // MetricsHandler provides an http.Handler for displaying metrics. @@ -86,6 +88,8 @@ func NewBaseDeps(configLoader ConfigLoader, logOut io.Writer) (BaseDeps, error) deferredAC := &deferredAutoConfig{} + d.Router = router.NewRouter(d.Logger, cfg.Datacenter, fmt.Sprintf("%s.%s", cfg.NodeName, cfg.Datacenter)) + cmConf := new(certmon.Config). WithCache(d.Cache). WithTLSConfigurator(d.TLSConfigurator). diff --git a/types/area.go b/types/area.go index 5425434c9f..612f1d5ebe 100644 --- a/types/area.go +++ b/types/area.go @@ -7,3 +7,7 @@ type AreaID string // This represents the existing WAN area that's built in to Consul. Consul // Enterprise generalizes areas, which are represented with UUIDs. const AreaWAN AreaID = "wan" + +// This represents the existing LAN area that's built in to Consul. Consul +// Enterprise generalizes areas, which are represented with UUIDs. +const AreaLAN AreaID = "lan" From 88665d5412b9f1989d320ad5fc2801bb97c46317 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 27 Aug 2020 11:53:49 -0400 Subject: [PATCH 013/122] Retroactively add changelog for PR 8537 --- .changelog/8537.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/8537.txt diff --git a/.changelog/8537.txt b/.changelog/8537.txt new file mode 100644 index 0000000000..f2b92b26bf --- /dev/null +++ b/.changelog/8537.txt @@ -0,0 +1,3 @@ +```release-note:bug +api: Fixed a panic caused by an api request with Connect=null +``` From 9a64d3e5fe2251d53c39d05ed187c0d2d8c1e882 Mon Sep 17 00:00:00 2001 From: Pierre Souchay Date: Thu, 27 Aug 2020 18:14:05 +0200 Subject: [PATCH 014/122] Also test reload of EntryFetchMaxBurst --- agent/agent_test.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/agent/agent_test.go b/agent/agent_test.go index 33dfa311e6..71c6e8741d 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -766,15 +766,18 @@ func TestCacheRateLimit(test *testing.T) { test.Run(fmt.Sprintf("rate_limit_at_%v", currentTest.rateLimit), func(t *testing.T) { tt := currentTest t.Parallel() - a := NewTestAgent(t, "cache = { entry_fetch_rate = 1, entry_fetch_max_burst = 1 }") + a := NewTestAgent(t, "cache = { entry_fetch_rate = 1, entry_fetch_max_burst = 100 }") defer a.Shutdown() testrpc.WaitForTestAgent(t, a.RPC, "dc1") cfg := a.config require.Equal(t, rate.Limit(1), a.config.Cache.EntryFetchRate) + require.Equal(t, 100, a.config.Cache.EntryFetchMaxBurst) cfg.Cache.EntryFetchRate = rate.Limit(tt.rateLimit) + cfg.Cache.EntryFetchMaxBurst = 1 a.reloadConfigInternal(cfg) require.Equal(t, rate.Limit(tt.rateLimit), a.config.Cache.EntryFetchRate) + require.Equal(t, 1, a.config.Cache.EntryFetchMaxBurst) var wg sync.WaitGroup stillProcessing := true From d1843456d2b560cbda9bb2b8ef8de3d8c0dc2944 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Thu, 27 Aug 2020 11:37:25 -0500 Subject: [PATCH 015/122] agent: ensure that we normalize bootstrapped config entries (#8547) --- .changelog/8547.txt | 3 ++ agent/config/builder.go | 3 ++ agent/config/runtime_test.go | 64 ++++++++++++++++++++---------------- 3 files changed, 42 insertions(+), 28 deletions(-) create mode 100644 .changelog/8547.txt diff --git a/.changelog/8547.txt b/.changelog/8547.txt new file mode 100644 index 0000000000..5cc17779bd --- /dev/null +++ b/.changelog/8547.txt @@ -0,0 +1,3 @@ +```release-note:bug +agent: ensure that we normalize bootstrapped config entries +``` diff --git a/agent/config/builder.go b/agent/config/builder.go index b844d0cd16..040b39aee0 100644 --- a/agent/config/builder.go +++ b/agent/config/builder.go @@ -777,6 +777,9 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { if err != nil { return RuntimeConfig{}, fmt.Errorf("config_entries.bootstrap[%d]: %s", i, err) } + if err := entry.Normalize(); err != nil { + return RuntimeConfig{}, fmt.Errorf("config_entries.bootstrap[%d]: %s", i, err) + } if err := entry.Validate(); err != nil { return RuntimeConfig{}, fmt.Errorf("config_entries.bootstrap[%d]: %s", i, err) } diff --git a/agent/config/runtime_test.go b/agent/config/runtime_test.go index 52fea0a38e..adbc269e68 100644 --- a/agent/config/runtime_test.go +++ b/agent/config/runtime_test.go @@ -52,6 +52,8 @@ type configTest struct { func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { dataDir := testutil.TempDir(t, "consul") + defaultEntMeta := structs.DefaultEnterpriseMeta() + tests := []configTest{ // ------------------------------------------------------------ // cmd line flags @@ -3286,17 +3288,15 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { err: "config_entries.bootstrap[0]: invalid config entry kind: foo", }, { - desc: "ConfigEntry bootstrap invalid", + desc: "ConfigEntry bootstrap invalid service-defaults", args: []string{`-data-dir=` + dataDir}, json: []string{`{ "config_entries": { "bootstrap": [ { - "kind": "proxy-defaults", - "name": "invalid-name", - "config": { - "foo": "bar" - } + "kind": "service-defaults", + "name": "web", + "made_up_key": "blah" } ] } @@ -3304,14 +3304,12 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { hcl: []string{` config_entries { bootstrap { - kind = "proxy-defaults" - name = "invalid-name" - config { - foo = "bar" - } + kind = "service-defaults" + name = "web" + made_up_key = "blah" } }`}, - err: "config_entries.bootstrap[0]: invalid name (\"invalid-name\"), only \"global\" is supported", + err: "config_entries.bootstrap[0]: 1 error occurred:\n\t* invalid config key \"made_up_key\"\n\n", }, { desc: "ConfigEntry bootstrap proxy-defaults (snake-case)", @@ -3355,8 +3353,9 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ProxyConfigEntry{ - Kind: structs.ProxyDefaults, - Name: structs.ProxyConfigGlobal, + Kind: structs.ProxyDefaults, + Name: structs.ProxyConfigGlobal, + EnterpriseMeta: *defaultEntMeta, Config: map[string]interface{}{ "bar": "abc", "moreconfig": map[string]interface{}{ @@ -3412,8 +3411,9 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ProxyConfigEntry{ - Kind: structs.ProxyDefaults, - Name: structs.ProxyConfigGlobal, + Kind: structs.ProxyDefaults, + Name: structs.ProxyConfigGlobal, + EnterpriseMeta: *defaultEntMeta, Config: map[string]interface{}{ "bar": "abc", "moreconfig": map[string]interface{}{ @@ -3461,10 +3461,11 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ServiceConfigEntry{ - Kind: structs.ServiceDefaults, - Name: "web", - Protocol: "http", - ExternalSNI: "abc-123", + Kind: structs.ServiceDefaults, + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Protocol: "http", + ExternalSNI: "abc-123", MeshGateway: structs.MeshGatewayConfig{ Mode: structs.MeshGatewayModeRemote, }, @@ -3506,10 +3507,11 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ServiceConfigEntry{ - Kind: structs.ServiceDefaults, - Name: "web", - Protocol: "http", - ExternalSNI: "abc-123", + Kind: structs.ServiceDefaults, + Name: "web", + EnterpriseMeta: *defaultEntMeta, + Protocol: "http", + ExternalSNI: "abc-123", MeshGateway: structs.MeshGatewayConfig{ Mode: structs.MeshGatewayModeRemote, }, @@ -3691,8 +3693,9 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ServiceRouterConfigEntry{ - Kind: structs.ServiceRouter, - Name: "main", + Kind: structs.ServiceRouter, + Name: "main", + EnterpriseMeta: *defaultEntMeta, Routes: []structs.ServiceRoute{ { Match: &structs.ServiceRouteMatch{ @@ -3772,6 +3775,8 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { } }, }, + // TODO(rb): add in missing tests for ingress-gateway (snake + camel) + // TODO(rb): add in missing tests for terminating-gateway (snake + camel) /////////////////////////////////// // Defaults sanity checks @@ -4380,6 +4385,8 @@ func TestFullConfig(t *testing.T) { return n } + defaultEntMeta := structs.DefaultEnterpriseMeta() + flagSrc := []string{`-dev`} src := map[string]string{ "json": `{ @@ -5953,8 +5960,9 @@ func TestFullConfig(t *testing.T) { ClientAddrs: []*net.IPAddr{ipAddr("93.83.18.19")}, ConfigEntryBootstrap: []structs.ConfigEntry{ &structs.ProxyConfigEntry{ - Kind: structs.ProxyDefaults, - Name: structs.ProxyConfigGlobal, + Kind: structs.ProxyDefaults, + Name: structs.ProxyConfigGlobal, + EnterpriseMeta: *defaultEntMeta, Config: map[string]interface{}{ "foo": "bar", // has to be a float due to being a map[string]interface From 74d5df7c7aca710c37a6b63b2bc05f74be82b70c Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Thu, 27 Aug 2020 12:20:58 -0500 Subject: [PATCH 016/122] xds: use envoy's rbac filter to handle intentions entirely within envoy (#8569) --- .changelog/8569.txt | 3 + agent/agent.go | 14 +- agent/consul/discoverychain/compile.go | 7 +- agent/proxycfg/manager.go | 6 + agent/proxycfg/manager_test.go | 8 +- agent/proxycfg/snapshot.go | 97 +- agent/proxycfg/state.go | 122 +- agent/proxycfg/state_test.go | 180 ++- agent/proxycfg/testing.go | 41 +- agent/structs/config_entry_discoverychain.go | 9 + .../config_entry_discoverychain_test.go | 10 + agent/structs/intention.go | 8 + agent/structs/intention_oss.go | 8 + agent/xds/golden_test.go | 7 +- agent/xds/listeners.go | 424 ++++-- agent/xds/listeners_test.go | 187 ++- agent/xds/rbac.go | 374 +++++ agent/xds/rbac_test.go | 259 ++++ agent/xds/response.go | 10 + agent/xds/routes.go | 9 - agent/xds/server.go | 113 +- agent/xds/server_test.go | 170 +-- ...th-chain-and-overrides.envoy-1-12-x.golden | 13 +- ...th-chain-and-overrides.envoy-1-13-x.golden | 13 +- ...th-chain-and-overrides.envoy-1-14-x.golden | 13 +- ...th-chain-and-overrides.envoy-1-15-x.golden | 13 +- ...ith-chain-external-sni.envoy-1-12-x.golden | 13 +- ...ith-chain-external-sni.envoy-1-13-x.golden | 13 +- ...ith-chain-external-sni.envoy-1-14-x.golden | 13 +- ...ith-chain-external-sni.envoy-1-15-x.golden | 13 +- ...-proxy-with-grpc-chain.envoy-1-12-x.golden | 13 +- ...-proxy-with-grpc-chain.envoy-1-13-x.golden | 13 +- ...-proxy-with-grpc-chain.envoy-1-14-x.golden | 13 +- ...-proxy-with-grpc-chain.envoy-1-15-x.golden | 13 +- ...-proxy-with-http-chain.envoy-1-12-x.golden | 13 +- ...-proxy-with-http-chain.envoy-1-13-x.golden | 13 +- ...-proxy-with-http-chain.envoy-1-14-x.golden | 13 +- ...-proxy-with-http-chain.envoy-1-15-x.golden | 13 +- ...proxy-with-http2-chain.envoy-1-12-x.golden | 13 +- ...proxy-with-http2-chain.envoy-1-13-x.golden | 13 +- ...proxy-with-http2-chain.envoy-1-14-x.golden | 13 +- ...proxy-with-http2-chain.envoy-1-15-x.golden | 13 +- ...-through-local-gateway.envoy-1-12-x.golden | 13 +- ...-through-local-gateway.envoy-1-13-x.golden | 13 +- ...-through-local-gateway.envoy-1-14-x.golden | 13 +- ...-through-local-gateway.envoy-1-15-x.golden | 13 +- ...through-remote-gateway.envoy-1-12-x.golden | 13 +- ...through-remote-gateway.envoy-1-13-x.golden | 13 +- ...through-remote-gateway.envoy-1-14-x.golden | 13 +- ...through-remote-gateway.envoy-1-15-x.golden | 13 +- ...t-proxy-with-tcp-chain.envoy-1-12-x.golden | 13 +- ...t-proxy-with-tcp-chain.envoy-1-13-x.golden | 13 +- ...t-proxy-with-tcp-chain.envoy-1-14-x.golden | 13 +- ...t-proxy-with-tcp-chain.envoy-1-15-x.golden | 13 +- ...-listener-http-2-typed.envoy-1-12-x.golden | 131 ++ ...-listener-http-2-typed.envoy-1-13-x.golden | 131 ++ ...-listener-http-2-typed.envoy-1-14-x.golden | 131 ++ ...-listener-http-2-typed.envoy-1-15-x.golden | 131 ++ ...public-listener-http-2.envoy-1-12-x.golden | 130 ++ ...public-listener-http-2.envoy-1-13-x.golden | 130 ++ ...public-listener-http-2.envoy-1-14-x.golden | 130 ++ ...public-listener-http-2.envoy-1-15-x.golden | 130 ++ ...-listener-http-missing.envoy-1-12-x.golden | 107 ++ ...-listener-http-missing.envoy-1-13-x.golden | 107 ++ ...-listener-http-missing.envoy-1-14-x.golden | 107 ++ ...-listener-http-missing.envoy-1-15-x.golden | 107 ++ ...ic-listener-http-typed.envoy-1-12-x.golden | 131 ++ ...ic-listener-http-typed.envoy-1-13-x.golden | 131 ++ ...ic-listener-http-typed.envoy-1-14-x.golden | 131 ++ ...ic-listener-http-typed.envoy-1-15-x.golden | 131 ++ ...m-public-listener-http.envoy-1-12-x.golden | 130 ++ ...m-public-listener-http.envoy-1-13-x.golden | 130 ++ ...m-public-listener-http.envoy-1-14-x.golden | 130 ++ ...m-public-listener-http.envoy-1-15-x.golden | 130 ++ ...custom-public-listener.envoy-1-12-x.golden | 13 +- ...custom-public-listener.envoy-1-13-x.golden | 13 +- ...custom-public-listener.envoy-1-14-x.golden | 13 +- ...custom-public-listener.envoy-1-15-x.golden | 13 +- ...nored-with-disco-chain.envoy-1-12-x.golden | 13 +- ...nored-with-disco-chain.envoy-1-13-x.golden | 13 +- ...nored-with-disco-chain.envoy-1-14-x.golden | 13 +- ...nored-with-disco-chain.envoy-1-15-x.golden | 13 +- .../custom-upstream.envoy-1-12-x.golden | 13 +- .../custom-upstream.envoy-1-13-x.golden | 13 +- .../custom-upstream.envoy-1-14-x.golden | 13 +- .../custom-upstream.envoy-1-15-x.golden | 13 +- .../listeners/defaults.envoy-1-12-x.golden | 13 +- .../listeners/defaults.envoy-1-13-x.golden | 13 +- .../listeners/defaults.envoy-1-14-x.golden | 13 +- .../listeners/defaults.envoy-1-15-x.golden | 13 +- ...-paths-local-app-paths.envoy-1-12-x.golden | 13 +- ...-paths-local-app-paths.envoy-1-13-x.golden | 13 +- ...-paths-local-app-paths.envoy-1-14-x.golden | 13 +- ...-paths-local-app-paths.envoy-1-15-x.golden | 13 +- ...aths-new-cluster-http2.envoy-1-12-x.golden | 13 +- ...aths-new-cluster-http2.envoy-1-13-x.golden | 13 +- ...aths-new-cluster-http2.envoy-1-14-x.golden | 13 +- ...aths-new-cluster-http2.envoy-1-15-x.golden | 13 +- .../http-public-listener.envoy-1-12-x.golden | 24 +- .../http-public-listener.envoy-1-13-x.golden | 24 +- .../http-public-listener.envoy-1-14-x.golden | 24 +- .../http-public-listener.envoy-1-15-x.golden | 24 +- .../http-upstream.envoy-1-12-x.golden | 13 +- .../http-upstream.envoy-1-13-x.golden | 13 +- .../http-upstream.envoy-1-14-x.golden | 13 +- .../http-upstream.envoy-1-15-x.golden | 13 +- ...ener-bind-address-port.envoy-1-12-x.golden | 13 +- ...ener-bind-address-port.envoy-1-13-x.golden | 13 +- ...ener-bind-address-port.envoy-1-14-x.golden | 13 +- ...ener-bind-address-port.envoy-1-15-x.golden | 13 +- .../listener-bind-address.envoy-1-12-x.golden | 13 +- .../listener-bind-address.envoy-1-13-x.golden | 13 +- .../listener-bind-address.envoy-1-14-x.golden | 13 +- .../listener-bind-address.envoy-1-15-x.golden | 13 +- .../listener-bind-port.envoy-1-12-x.golden | 13 +- .../listener-bind-port.envoy-1-13-x.golden | 13 +- .../listener-bind-port.envoy-1-14-x.golden | 13 +- .../listener-bind-port.envoy-1-15-x.golden | 13 +- ...with-resolver-redirect.envoy-1-12-x.golden | 13 +- ...with-resolver-redirect.envoy-1-13-x.golden | 13 +- ...with-resolver-redirect.envoy-1-14-x.golden | 13 +- ...with-resolver-redirect.envoy-1-15-x.golden | 13 +- ...m-and-tagged-addresses.envoy-1-12-x.golden | 144 +- ...m-and-tagged-addresses.envoy-1-13-x.golden | 144 +- ...m-and-tagged-addresses.envoy-1-14-x.golden | 144 +- ...m-and-tagged-addresses.envoy-1-15-x.golden | 144 +- ...ng-gateway-no-api-cert.envoy-1-12-x.golden | 54 +- ...ng-gateway-no-api-cert.envoy-1-13-x.golden | 54 +- ...ng-gateway-no-api-cert.envoy-1-14-x.golden | 54 +- ...ng-gateway-no-api-cert.envoy-1-15-x.golden | 54 +- ...ateway-service-subsets.envoy-1-12-x.golden | 108 +- ...ateway-service-subsets.envoy-1-13-x.golden | 108 +- ...ateway-service-subsets.envoy-1-14-x.golden | 108 +- ...ateway-service-subsets.envoy-1-15-x.golden | 108 +- .../terminating-gateway.envoy-1-12-x.golden | 72 +- .../terminating-gateway.envoy-1-13-x.golden | 72 +- .../terminating-gateway.envoy-1-14-x.golden | 72 +- .../terminating-gateway.envoy-1-15-x.golden | 72 +- .../rbac/default-allow-kitchen-sink.golden | 72 + .../rbac/default-allow-one-deny.golden | 31 + ...default-allow-service-wildcard-deny.golden | 31 + .../rbac/default-deny-allow-deny.golden | 49 + .../rbac/default-deny-kitchen-sink.golden | 71 + .../rbac/default-deny-mixed-precedence.golden | 30 + .../rbac/default-deny-one-allow.golden | 30 + ...default-deny-service-wildcard-allow.golden | 30 + agent/xds/testing.go | 45 +- go.mod | 1 - .../connect/envoy/case-basic/verify.bats | 13 + .../connect/envoy/case-http/verify.bats | 35 +- test/integration/connect/envoy/helpers.bash | 21 +- .../connect/envoy/test-envoy-versions.sh | 24 +- .../config/filter/http/rbac/v2/rbac.pb.go | 142 ++ .../filter/http/rbac/v2/rbac.pb.validate.go | 196 +++ .../network/ext_authz/v2/ext_authz.pb.go | 123 -- .../ext_authz/v2/ext_authz.pb.validate.go | 122 -- .../config/filter/network/rbac/v2/rbac.pb.go | 150 ++ .../network/rbac/v2/rbac.pb.validate.go | 130 ++ .../envoy/config/rbac/v2/rbac.pb.go | 734 ++++++++++ .../envoy/config/rbac/v2/rbac.pb.validate.go | 856 ++++++++++++ .../service/auth/v2alpha/external_auth.pb.go | 125 -- .../auth/v2alpha/external_auth.pb.validate.go | 37 - .../api/expr/v1alpha1/cel_service.pb.go | 195 +++ .../api/expr/v1alpha1/checked.pb.go | 1144 ++++++++++++++++ .../expr/v1alpha1/conformance_service.pb.go | 742 ++++++++++ .../googleapis/api/expr/v1alpha1/eval.pb.go | 351 +++++ .../api/expr/v1alpha1/explain.pb.go | 162 +++ .../googleapis/api/expr/v1alpha1/syntax.pb.go | 1208 +++++++++++++++++ .../googleapis/api/expr/v1alpha1/value.pb.go | 503 +++++++ vendor/modules.txt | 6 +- 170 files changed, 11467 insertions(+), 3120 deletions(-) create mode 100644 .changelog/8569.txt create mode 100644 agent/xds/rbac.go create mode 100644 agent/xds/rbac_test.go create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/rbac/default-allow-kitchen-sink.golden create mode 100644 agent/xds/testdata/rbac/default-allow-one-deny.golden create mode 100644 agent/xds/testdata/rbac/default-allow-service-wildcard-deny.golden create mode 100644 agent/xds/testdata/rbac/default-deny-allow-deny.golden create mode 100644 agent/xds/testdata/rbac/default-deny-kitchen-sink.golden create mode 100644 agent/xds/testdata/rbac/default-deny-mixed-precedence.golden create mode 100644 agent/xds/testdata/rbac/default-deny-one-allow.golden create mode 100644 agent/xds/testdata/rbac/default-deny-service-wildcard-allow.golden create mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.go create mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.validate.go delete mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.go delete mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.validate.go create mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.go create mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.validate.go create mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.go create mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.validate.go delete mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.go delete mode 100644 vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.validate.go create mode 100644 vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/cel_service.pb.go create mode 100644 vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/checked.pb.go create mode 100644 vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/conformance_service.pb.go create mode 100644 vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/eval.pb.go create mode 100644 vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/explain.pb.go create mode 100644 vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/syntax.pb.go create mode 100644 vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/value.pb.go diff --git a/.changelog/8569.txt b/.changelog/8569.txt new file mode 100644 index 0000000000..a9986a7ba7 --- /dev/null +++ b/.changelog/8569.txt @@ -0,0 +1,3 @@ +```release-note:feature +xds: use envoy's rbac filter to handle intentions entirely within envoy +``` diff --git a/agent/agent.go b/agent/agent.go index 0f83e070a1..71f011a51b 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -548,6 +548,16 @@ func (a *Agent) Start(ctx context.Context) error { return err } + var intentionDefaultAllow bool + switch a.config.ACLDefaultPolicy { + case "allow": + intentionDefaultAllow = true + case "deny": + intentionDefaultAllow = false + default: + return fmt.Errorf("unexpected ACL default policy value of %q", a.config.ACLDefaultPolicy) + } + // Start the proxy config manager. a.proxyConfig, err = proxycfg.NewManager(proxycfg.ManagerConfig{ Cache: a.cache, @@ -562,7 +572,8 @@ func (a *Agent) Start(ctx context.Context) error { Domain: a.config.DNSDomain, AltDomain: a.config.DNSAltDomain, }, - TLSConfigurator: a.tlsConfigurator, + TLSConfigurator: a.tlsConfigurator, + IntentionDefaultAllow: intentionDefaultAllow, }) if err != nil { return err @@ -655,7 +666,6 @@ func (a *Agent) listenAndServeGRPC() error { xdsServer := &xds.Server{ Logger: a.logger, CfgMgr: a.proxyConfig, - Authz: a, ResolveToken: a.resolveToken, CheckFetcher: a, CfgFetcher: a, diff --git a/agent/consul/discoverychain/compile.go b/agent/consul/discoverychain/compile.go index f5bbd1ba4d..ca43b4da71 100644 --- a/agent/consul/discoverychain/compile.go +++ b/agent/consul/discoverychain/compile.go @@ -1009,10 +1009,5 @@ func defaultIfEmpty(val, defaultVal string) string { } func enableAdvancedRoutingForProtocol(protocol string) bool { - switch protocol { - case "http", "http2", "grpc": - return true - default: - return false - } + return structs.IsProtocolHTTPLike(protocol) } diff --git a/agent/proxycfg/manager.go b/agent/proxycfg/manager.go index 7d8163f924..c703da4f06 100644 --- a/agent/proxycfg/manager.go +++ b/agent/proxycfg/manager.go @@ -70,6 +70,11 @@ type ManagerConfig struct { // logger is the agent's logger to be used for logging logs. Logger hclog.Logger TLSConfigurator *tlsutil.Configurator + + // IntentionDefaultAllow is set by the agent so that we can pass this + // information to proxies that need to make intention decisions on their + // own. + IntentionDefaultAllow bool } // NewManager constructs a manager from the provided agent cache. @@ -192,6 +197,7 @@ func (m *Manager) ensureProxyServiceLocked(ns *structs.NodeService, token string state.cache = m.Cache state.source = m.Source state.dnsConfig = m.DNSConfig + state.intentionDefaultAllow = m.IntentionDefaultAllow if m.TLSConfigurator != nil { state.serverSNIFn = m.TLSConfigurator.ServerSNI } diff --git a/agent/proxycfg/manager_test.go b/agent/proxycfg/manager_test.go index bcd1a476ba..e59d0df955 100644 --- a/agent/proxycfg/manager_test.go +++ b/agent/proxycfg/manager_test.go @@ -221,6 +221,8 @@ func TestManager_BasicLifecycle(t *testing.T) { }, PreparedQueryEndpoints: map[string]structs.CheckServiceNodes{}, WatchedServiceChecks: map[structs.ServiceID][]structs.CheckType{}, + Intentions: TestIntentions().Matches[0], + IntentionsSet: true, }, Datacenter: "dc1", }, @@ -269,6 +271,8 @@ func TestManager_BasicLifecycle(t *testing.T) { }, PreparedQueryEndpoints: map[string]structs.CheckServiceNodes{}, WatchedServiceChecks: map[structs.ServiceID][]structs.CheckType{}, + Intentions: TestIntentions().Matches[0], + IntentionsSet: true, }, Datacenter: "dc1", }, @@ -286,7 +290,7 @@ func TestManager_BasicLifecycle(t *testing.T) { // Setup initial values types.roots.Set(rootsCacheKey, roots) types.leaf.Set(leafCacheKey, leaf) - types.intentions.Set(intentionCacheKey, TestIntentions(t)) + types.intentions.Set(intentionCacheKey, TestIntentions()) tt.setup(t, types) expectSnapCopy, err := copystructure.Copy(tt.expectSnap) @@ -334,7 +338,7 @@ func testManager_BasicLifecycle( state.TriggerSyncChanges = func() {} // Create manager - m, err := NewManager(ManagerConfig{c, state, source, DNSConfig{}, logger, nil}) + m, err := NewManager(ManagerConfig{c, state, source, DNSConfig{}, logger, nil, false}) require.NoError(err) // And run it diff --git a/agent/proxycfg/snapshot.go b/agent/proxycfg/snapshot.go index b5f6e6f696..03d548fc91 100644 --- a/agent/proxycfg/snapshot.go +++ b/agent/proxycfg/snapshot.go @@ -42,6 +42,12 @@ type configSnapshotConnectProxy struct { WatchedServiceChecks map[structs.ServiceID][]structs.CheckType // TODO: missing garbage collection PreparedQueryEndpoints map[string]structs.CheckServiceNodes // DEPRECATED:see:WatchedUpstreamEndpoints + + // NOTE: Intentions stores a list of lists as returned by the Intentions + // Match RPC. So far we only use the first list as the list of matching + // intentions. + Intentions structs.Intentions + IntentionsSet bool } func (c *configSnapshotConnectProxy) IsEmpty() bool { @@ -49,6 +55,7 @@ func (c *configSnapshotConnectProxy) IsEmpty() bool { return true } return c.Leaf == nil && + !c.IntentionsSet && len(c.DiscoveryChain) == 0 && len(c.WatchedUpstreams) == 0 && len(c.WatchedUpstreamEndpoints) == 0 && @@ -71,6 +78,14 @@ type configSnapshotTerminatingGateway struct { // are no longer linked to the gateway. WatchedIntentions map[structs.ServiceName]context.CancelFunc + // NOTE: Intentions stores a map of list of lists as returned by the Intentions + // Match RPC. So far we only use the first list as the list of matching + // intentions. + // + // A key being present implies that we have gotten at least one watch reply for the + // service. This is logically the same as ConnectProxy.IntentionsSet==true + Intentions map[structs.ServiceName]structs.Intentions + // WatchedLeaves is a map of ServiceName to a cancel function. // This cancel function is tied to the watch of leaf certs for linked services. // As with WatchedServices, leaf watches will be cancelled when services @@ -82,6 +97,16 @@ type configSnapshotTerminatingGateway struct { // on the service that the caller is trying to reach. ServiceLeaves map[structs.ServiceName]*structs.IssuedCert + // WatchedConfigs is a map of ServiceName to a cancel function. This cancel + // function is tied to the watch of service configs for linked services. As + // with WatchedServices, service config watches will be cancelled when + // services are no longer linked to the gateway. + WatchedConfigs map[structs.ServiceName]context.CancelFunc + + // ServiceConfigs is a map of service name to the resolved service config + // for that service. + ServiceConfigs map[structs.ServiceName]*structs.ServiceConfigResponse + // WatchedResolvers is a map of ServiceName to a cancel function. // This cancel function is tied to the watch of resolvers for linked services. // As with WatchedServices, resolver watches will be cancelled when services @@ -90,7 +115,8 @@ type configSnapshotTerminatingGateway struct { // ServiceResolvers is a map of service name to an associated // service-resolver config entry for that service. - ServiceResolvers map[structs.ServiceName]*structs.ServiceResolverConfigEntry + ServiceResolvers map[structs.ServiceName]*structs.ServiceResolverConfigEntry + ServiceResolversSet map[structs.ServiceName]bool // ServiceGroups is a map of service name to the service instances of that // service in the local datacenter. @@ -106,6 +132,38 @@ type configSnapshotTerminatingGateway struct { HostnameServices map[structs.ServiceName]structs.CheckServiceNodes } +// ValidServices returns the list of service keys that have enough data to be emitted. +func (c *configSnapshotTerminatingGateway) ValidServices() []structs.ServiceName { + out := make([]structs.ServiceName, 0, len(c.ServiceGroups)) + for svc := range c.ServiceGroups { + // It only counts if ALL of our watches have come back (with data or not). + + // Skip the service if we don't know if there is a resolver or not. + if _, ok := c.ServiceResolversSet[svc]; !ok { + continue + } + + // Skip the service if we don't have a cert to present for mTLS. + if cert, ok := c.ServiceLeaves[svc]; !ok || cert == nil { + continue + } + + // Skip the service if we haven't gotten our intentions yet. + if _, intentionsSet := c.Intentions[svc]; !intentionsSet { + continue + } + + // Skip the service if we haven't gotten our service config yet to know + // the protocol. + if _, ok := c.ServiceConfigs[svc]; !ok { + continue + } + + out = append(out, svc) + } + return out +} + func (c *configSnapshotTerminatingGateway) IsEmpty() bool { if c == nil { return true @@ -113,10 +171,14 @@ func (c *configSnapshotTerminatingGateway) IsEmpty() bool { return len(c.ServiceLeaves) == 0 && len(c.WatchedLeaves) == 0 && len(c.WatchedIntentions) == 0 && + len(c.Intentions) == 0 && len(c.ServiceGroups) == 0 && len(c.WatchedServices) == 0 && len(c.ServiceResolvers) == 0 && + len(c.ServiceResolversSet) == 0 && len(c.WatchedResolvers) == 0 && + len(c.ServiceConfigs) == 0 && + len(c.WatchedConfigs) == 0 && len(c.GatewayServices) == 0 && len(c.HostnameServices) == 0 } @@ -252,15 +314,16 @@ func (k *IngressListenerKey) RouteName() string { // It is meant to be point-in-time coherent and is used to deliver the current // config state to observers who need it to be pushed in (e.g. XDS server). type ConfigSnapshot struct { - Kind structs.ServiceKind - Service string - ProxyID structs.ServiceID - Address string - Port int - ServiceMeta map[string]string - TaggedAddresses map[string]structs.ServiceAddress - Proxy structs.ConnectProxyConfig - Datacenter string + Kind structs.ServiceKind + Service string + ProxyID structs.ServiceID + Address string + Port int + ServiceMeta map[string]string + TaggedAddresses map[string]structs.ServiceAddress + Proxy structs.ConnectProxyConfig + Datacenter string + IntentionDefaultAllow bool ServerSNIFn ServerSNIFunc Roots *structs.IndexedCARoots @@ -276,24 +339,28 @@ type ConfigSnapshot struct { // ingress-gateway specific IngressGateway configSnapshotIngressGateway - - // Skip intentions for now as we don't push those down yet, just pre-warm them. } // Valid returns whether or not the snapshot has all required fields filled yet. func (s *ConfigSnapshot) Valid() bool { switch s.Kind { case structs.ServiceKindConnectProxy: - return s.Roots != nil && s.ConnectProxy.Leaf != nil + return s.Roots != nil && + s.ConnectProxy.Leaf != nil && + s.ConnectProxy.IntentionsSet + case structs.ServiceKindTerminatingGateway: return s.Roots != nil + case structs.ServiceKindMeshGateway: if s.ServiceMeta[structs.MetaWANFederationKey] == "1" { if len(s.MeshGateway.ConsulServers) == 0 { return false } } - return s.Roots != nil && (s.MeshGateway.WatchedServicesSet || len(s.MeshGateway.ServiceGroups) > 0) + return s.Roots != nil && + (s.MeshGateway.WatchedServicesSet || len(s.MeshGateway.ServiceGroups) > 0) + case structs.ServiceKindIngressGateway: return s.Roots != nil && s.IngressGateway.Leaf != nil && @@ -323,6 +390,8 @@ func (s *ConfigSnapshot) Clone() (*ConfigSnapshot, error) { snap.TerminatingGateway.WatchedServices = nil snap.TerminatingGateway.WatchedIntentions = nil snap.TerminatingGateway.WatchedLeaves = nil + snap.TerminatingGateway.WatchedConfigs = nil + snap.TerminatingGateway.WatchedResolvers = nil case structs.ServiceKindMeshGateway: snap.MeshGateway.WatchedDatacenters = nil snap.MeshGateway.WatchedServices = nil diff --git a/agent/proxycfg/state.go b/agent/proxycfg/state.go index 83e6a02d4c..d9a826a1b6 100644 --- a/agent/proxycfg/state.go +++ b/agent/proxycfg/state.go @@ -37,6 +37,7 @@ const ( gatewayConfigWatchID = "gateway-config" externalServiceIDPrefix = "external-service:" serviceLeafIDPrefix = "service-leaf:" + serviceConfigIDPrefix = "service-config:" serviceResolverIDPrefix = "service-resolver:" serviceIntentionsIDPrefix = "service-intentions:" svcChecksWatchIDPrefix = cachetype.ServiceHTTPChecksName + ":" @@ -50,11 +51,12 @@ const ( // is discarded and a new one created. type state struct { // logger, source and cache are required to be set before calling Watch. - logger hclog.Logger - source *structs.QuerySource - cache CacheNotifier - dnsConfig DNSConfig - serverSNIFn ServerSNIFunc + logger hclog.Logger + source *structs.QuerySource + cache CacheNotifier + dnsConfig DNSConfig + serverSNIFn ServerSNIFunc + intentionDefaultAllow bool // ctx and cancel store the context created during initWatches call ctx context.Context @@ -523,16 +525,17 @@ func (s *state) initWatchesIngressGateway() error { func (s *state) initialConfigSnapshot() ConfigSnapshot { snap := ConfigSnapshot{ - Kind: s.kind, - Service: s.service, - ProxyID: s.proxyID, - Address: s.address, - Port: s.port, - ServiceMeta: s.meta, - TaggedAddresses: s.taggedAddresses, - Proxy: s.proxyCfg, - Datacenter: s.source.Datacenter, - ServerSNIFn: s.serverSNIFn, + Kind: s.kind, + Service: s.service, + ProxyID: s.proxyID, + Address: s.address, + Port: s.port, + ServiceMeta: s.meta, + TaggedAddresses: s.taggedAddresses, + Proxy: s.proxyCfg, + Datacenter: s.source.Datacenter, + ServerSNIFn: s.serverSNIFn, + IntentionDefaultAllow: s.intentionDefaultAllow, } switch s.kind { @@ -546,12 +549,16 @@ func (s *state) initialConfigSnapshot() ConfigSnapshot { snap.ConnectProxy.PreparedQueryEndpoints = make(map[string]structs.CheckServiceNodes) case structs.ServiceKindTerminatingGateway: snap.TerminatingGateway.WatchedServices = make(map[structs.ServiceName]context.CancelFunc) - snap.TerminatingGateway.WatchedLeaves = make(map[structs.ServiceName]context.CancelFunc) snap.TerminatingGateway.WatchedIntentions = make(map[structs.ServiceName]context.CancelFunc) - snap.TerminatingGateway.WatchedResolvers = make(map[structs.ServiceName]context.CancelFunc) + snap.TerminatingGateway.Intentions = make(map[structs.ServiceName]structs.Intentions) + snap.TerminatingGateway.WatchedLeaves = make(map[structs.ServiceName]context.CancelFunc) snap.TerminatingGateway.ServiceLeaves = make(map[structs.ServiceName]*structs.IssuedCert) - snap.TerminatingGateway.ServiceGroups = make(map[structs.ServiceName]structs.CheckServiceNodes) + snap.TerminatingGateway.WatchedConfigs = make(map[structs.ServiceName]context.CancelFunc) + snap.TerminatingGateway.ServiceConfigs = make(map[structs.ServiceName]*structs.ServiceConfigResponse) + snap.TerminatingGateway.WatchedResolvers = make(map[structs.ServiceName]context.CancelFunc) snap.TerminatingGateway.ServiceResolvers = make(map[structs.ServiceName]*structs.ServiceResolverConfigEntry) + snap.TerminatingGateway.ServiceResolversSet = make(map[structs.ServiceName]bool) + snap.TerminatingGateway.ServiceGroups = make(map[structs.ServiceName]structs.CheckServiceNodes) snap.TerminatingGateway.GatewayServices = make(map[structs.ServiceName]structs.GatewayService) snap.TerminatingGateway.HostnameServices = make(map[structs.ServiceName]structs.CheckServiceNodes) case structs.ServiceKindMeshGateway: @@ -691,7 +698,17 @@ func (s *state) handleUpdateConnectProxy(u cache.UpdateEvent, snap *ConfigSnapsh } snap.Roots = roots case u.CorrelationID == intentionsWatchID: - // no-op: Intentions don't get stored in the snapshot, calls to ConnectAuthorize will fetch them from the cache + resp, ok := u.Result.(*structs.IndexedIntentionMatches) + if !ok { + return fmt.Errorf("invalid type for response: %T", u.Result) + } + if len(resp.Matches) > 0 { + // RPC supports matching multiple services at once but we only ever + // query with the one service we represent currently so just pick + // the one result set up. + snap.ConnectProxy.Intentions = resp.Matches[0] + } + snap.ConnectProxy.IntentionsSet = true case strings.HasPrefix(u.CorrelationID, "upstream:"+preparedQueryIDPrefix): resp, ok := u.Result.(*structs.PreparedQueryExecuteResponse) @@ -1000,6 +1017,28 @@ func (s *state) handleUpdateTerminatingGateway(u cache.UpdateEvent, snap *Config snap.TerminatingGateway.WatchedLeaves[svc.Service] = cancel } + // Watch service configs for the service. + // These are used to determine the protocol for the target service. + if _, ok := snap.TerminatingGateway.WatchedConfigs[svc.Service]; !ok { + ctx, cancel := context.WithCancel(s.ctx) + err := s.cache.Notify(ctx, cachetype.ResolvedServiceConfigName, &structs.ServiceConfigRequest{ + Datacenter: s.source.Datacenter, + QueryOptions: structs.QueryOptions{Token: s.token}, + Name: svc.Service.Name, + EnterpriseMeta: svc.Service.EnterpriseMeta, + }, serviceConfigIDPrefix+svc.Service.String(), s.ch) + + if err != nil { + logger.Error("failed to register watch for a resolved service config", + "service", svc.Service.String(), + "error", err, + ) + cancel() + return err + } + snap.TerminatingGateway.WatchedConfigs[svc.Service] = cancel + } + // Watch service resolvers for the service // These are used to create clusters and endpoints for the service subsets if _, ok := snap.TerminatingGateway.WatchedResolvers[svc.Service]; !ok { @@ -1058,12 +1097,23 @@ func (s *state) handleUpdateTerminatingGateway(u cache.UpdateEvent, snap *Config } } + // Cancel service config watches for services that were not in the update + for sn, cancelFn := range snap.TerminatingGateway.WatchedConfigs { + if _, ok := svcMap[sn]; !ok { + logger.Debug("canceling watch for resolved service config", "service", sn.String()) + delete(snap.TerminatingGateway.WatchedConfigs, sn) + delete(snap.TerminatingGateway.ServiceConfigs, sn) + cancelFn() + } + } + // Cancel service-resolver watches for services that were not in the update for sn, cancelFn := range snap.TerminatingGateway.WatchedResolvers { if _, ok := svcMap[sn]; !ok { logger.Debug("canceling watch for service-resolver", "service", sn.String()) delete(snap.TerminatingGateway.WatchedResolvers, sn) delete(snap.TerminatingGateway.ServiceResolvers, sn) + delete(snap.TerminatingGateway.ServiceResolversSet, sn) cancelFn() } } @@ -1073,9 +1123,7 @@ func (s *state) handleUpdateTerminatingGateway(u cache.UpdateEvent, snap *Config if _, ok := svcMap[sn]; !ok { logger.Debug("canceling watch for intention", "service", sn.String()) delete(snap.TerminatingGateway.WatchedIntentions, sn) - - // No additional deletions needed, since intentions aren't stored in snapshot - + delete(snap.TerminatingGateway.Intentions, sn) cancelFn() } } @@ -1105,21 +1153,43 @@ func (s *state) handleUpdateTerminatingGateway(u cache.UpdateEvent, snap *Config sn := structs.ServiceNameFromString(strings.TrimPrefix(u.CorrelationID, serviceLeafIDPrefix)) snap.TerminatingGateway.ServiceLeaves[sn] = leaf - case strings.HasPrefix(u.CorrelationID, "service-resolver:"): + case strings.HasPrefix(u.CorrelationID, serviceConfigIDPrefix): + serviceConfig, ok := u.Result.(*structs.ServiceConfigResponse) + if !ok { + return fmt.Errorf("invalid type for response: %T", u.Result) + } + + sn := structs.ServiceNameFromString(strings.TrimPrefix(u.CorrelationID, serviceConfigIDPrefix)) + snap.TerminatingGateway.ServiceConfigs[sn] = serviceConfig + + case strings.HasPrefix(u.CorrelationID, serviceResolverIDPrefix): configEntries, ok := u.Result.(*structs.IndexedConfigEntries) if !ok { return fmt.Errorf("invalid type for response: %T", u.Result) } + sn := structs.ServiceNameFromString(strings.TrimPrefix(u.CorrelationID, serviceResolverIDPrefix)) // There should only ever be one entry for a service resolver within a namespace if len(configEntries.Entries) == 1 { if resolver, ok := configEntries.Entries[0].(*structs.ServiceResolverConfigEntry); ok { - snap.TerminatingGateway.ServiceResolvers[structs.NewServiceName(resolver.Name, &resolver.EnterpriseMeta)] = resolver + snap.TerminatingGateway.ServiceResolvers[sn] = resolver } } + snap.TerminatingGateway.ServiceResolversSet[sn] = true - // nolint: staticcheck // github.com/dominikh/go-tools/issues/580 case strings.HasPrefix(u.CorrelationID, serviceIntentionsIDPrefix): - // no-op: Intentions don't get stored in the snapshot, calls to ConnectAuthorize will fetch them from the cache + resp, ok := u.Result.(*structs.IndexedIntentionMatches) + if !ok { + return fmt.Errorf("invalid type for response: %T", u.Result) + } + + sn := structs.ServiceNameFromString(strings.TrimPrefix(u.CorrelationID, serviceIntentionsIDPrefix)) + + if len(resp.Matches) > 0 { + // RPC supports matching multiple services at once but we only ever + // query with the one service we represent currently so just pick + // the one result set up. + snap.TerminatingGateway.Intentions[sn] = resp.Matches[0] + } default: // do nothing diff --git a/agent/proxycfg/state_test.go b/agent/proxycfg/state_test.go index 6f2f686901..a907144f84 100644 --- a/agent/proxycfg/state_test.go +++ b/agent/proxycfg/state_test.go @@ -223,6 +223,17 @@ func genVerifyResolverWatch(expectedService, expectedDatacenter, expectedKind st } } +func genVerifyResolvedConfigWatch(expectedService string, expectedDatacenter string) verifyWatchRequest { + return func(t testing.TB, cacheType string, request cache.Request) { + require.Equal(t, cachetype.ResolvedServiceConfigName, cacheType) + + reqReal, ok := request.(*structs.ServiceConfigRequest) + require.True(t, ok) + require.Equal(t, expectedDatacenter, reqReal.Datacenter) + require.Equal(t, expectedService, reqReal.Name) + } +} + func genVerifyIntentionWatch(expectedService string, expectedDatacenter string) verifyWatchRequest { return func(t testing.TB, cacheType string, request cache.Request) { require.Equal(t, cachetype.IntentionMatchName, cacheType) @@ -422,6 +433,8 @@ func TestState_WatchesAndUpdates(t *testing.T) { ns.Proxy.MeshGateway.Mode = meshGatewayProxyConfigValue } + ixnMatch := TestIntentions() + stage0 := verificationStage{ requiredWatches: map[string]verifyWatchRequest{ rootsWatchID: genVerifyRootsWatch("dc1"), @@ -481,6 +494,11 @@ func TestState_WatchesAndUpdates(t *testing.T) { Result: issuedCert, Err: nil, }, + { + CorrelationID: intentionsWatchID, + Result: ixnMatch, + Err: nil, + }, { CorrelationID: "discovery-chain:api", Result: &structs.DiscoveryChainResponse{ @@ -555,6 +573,9 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.Len(t, snap.ConnectProxy.WatchedServiceChecks, 0, "%+v", snap.ConnectProxy.WatchedServiceChecks) require.Len(t, snap.ConnectProxy.PreparedQueryEndpoints, 0, "%+v", snap.ConnectProxy.PreparedQueryEndpoints) + + require.True(t, snap.ConnectProxy.IntentionsSet) + require.Equal(t, ixnMatch.Matches[0], snap.ConnectProxy.Intentions) }, } @@ -581,6 +602,9 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.Len(t, snap.ConnectProxy.WatchedServiceChecks, 0, "%+v", snap.ConnectProxy.WatchedServiceChecks) require.Len(t, snap.ConnectProxy.PreparedQueryEndpoints, 0, "%+v", snap.ConnectProxy.PreparedQueryEndpoints) + + require.True(t, snap.ConnectProxy.IntentionsSet) + require.Equal(t, ixnMatch.Matches[0], snap.ConnectProxy.Intentions) }, } @@ -599,9 +623,46 @@ func TestState_WatchesAndUpdates(t *testing.T) { db := structs.NewServiceName("db", nil) dbStr := db.String() + billing := structs.NewServiceName("billing", nil) + api := structs.NewServiceName("api", nil) apiStr := api.String() + dbIxnMatch := &structs.IndexedIntentionMatches{ + Matches: []structs.Intentions{ + []*structs.Intention{ + { + ID: "abc-123", + SourceNS: "default", + SourceName: "api", + DestinationNS: "default", + DestinationName: "db", + Action: structs.IntentionActionAllow, + }, + }, + }, + } + + dbConfig := &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{ + "protocol": "grpc", + }, + } + + dbResolver := &structs.IndexedConfigEntries{ + Kind: structs.ServiceResolver, + Entries: []structs.ConfigEntry{ + &structs.ServiceResolverConfigEntry{ + Name: "db", + Kind: structs.ServiceResolver, + Redirect: &structs.ServiceResolverRedirect{ + Service: "db", + Datacenter: "dc2", + }, + }, + }, + } + cases := map[string]testCase{ "initial-gateway": { ns: structs.NodeService{ @@ -1105,7 +1166,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Result: &structs.IndexedGatewayServices{ Services: structs.GatewayServices{ { - Service: structs.NewServiceName("db", nil), + Service: db, Gateway: structs.NewServiceName("terminating-gateway", nil), }, }, @@ -1115,7 +1176,10 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) + require.Len(t, snap.TerminatingGateway.WatchedServices, 1) + require.Contains(t, snap.TerminatingGateway.WatchedServices, db) }, }, { @@ -1125,15 +1189,15 @@ func TestState_WatchesAndUpdates(t *testing.T) { Result: &structs.IndexedGatewayServices{ Services: structs.GatewayServices{ { - Service: structs.NewServiceName("db", nil), + Service: db, Gateway: structs.NewServiceName("terminating-gateway", nil), }, { - Service: structs.NewServiceName("billing", nil), + Service: billing, Gateway: structs.NewServiceName("terminating-gateway", nil), }, { - Service: structs.NewServiceName("api", nil), + Service: api, Gateway: structs.NewServiceName("terminating-gateway", nil), }, }, @@ -1142,11 +1206,9 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { - db := structs.NewServiceName("db", nil) - billing := structs.NewServiceName("billing", nil) - api := structs.NewServiceName("api", nil) - require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) + require.Len(t, snap.TerminatingGateway.WatchedServices, 3) require.Contains(t, snap.TerminatingGateway.WatchedServices, db) require.Contains(t, snap.TerminatingGateway.WatchedServices, billing) @@ -1162,6 +1224,11 @@ func TestState_WatchesAndUpdates(t *testing.T) { require.Contains(t, snap.TerminatingGateway.WatchedLeaves, billing) require.Contains(t, snap.TerminatingGateway.WatchedLeaves, api) + require.Len(t, snap.TerminatingGateway.WatchedConfigs, 3) + require.Contains(t, snap.TerminatingGateway.WatchedConfigs, db) + require.Contains(t, snap.TerminatingGateway.WatchedConfigs, billing) + require.Contains(t, snap.TerminatingGateway.WatchedConfigs, api) + require.Len(t, snap.TerminatingGateway.WatchedResolvers, 3) require.Contains(t, snap.TerminatingGateway.WatchedResolvers, db) require.Contains(t, snap.TerminatingGateway.WatchedResolvers, billing) @@ -1198,8 +1265,11 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { + require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) + require.Len(t, snap.TerminatingGateway.ServiceGroups, 1) - require.Equal(t, snap.TerminatingGateway.ServiceGroups[structs.NewServiceName("db", nil)], + require.Equal(t, snap.TerminatingGateway.ServiceGroups[db], structs.CheckServiceNodes{ { Node: &structs.Node{ @@ -1263,6 +1333,9 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { + require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) + require.Len(t, snap.TerminatingGateway.ServiceGroups, 2) expect := structs.CheckServiceNodes{ { @@ -1299,11 +1372,10 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, }, } - sn := structs.NewServiceName("api", nil) - require.Equal(t, snap.TerminatingGateway.ServiceGroups[sn], expect) + require.Equal(t, snap.TerminatingGateway.ServiceGroups[api], expect) // The instance in node3 should not be present in HostnameDatacenters because it has a valid IP - require.ElementsMatch(t, snap.TerminatingGateway.HostnameServices[sn], expect[:2]) + require.ElementsMatch(t, snap.TerminatingGateway.HostnameServices[api], expect[:2]) }, }, { @@ -1318,7 +1390,50 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { - require.Equal(t, snap.TerminatingGateway.ServiceLeaves[structs.NewServiceName("db", nil)], issuedCert) + require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) + + require.Equal(t, snap.TerminatingGateway.ServiceLeaves[db], issuedCert) + }, + }, + { + requiredWatches: map[string]verifyWatchRequest{ + serviceIntentionsIDPrefix + dbStr: genVerifyIntentionWatch("db", "dc1"), + }, + events: []cache.UpdateEvent{ + { + CorrelationID: serviceIntentionsIDPrefix + dbStr, + Result: dbIxnMatch, + Err: nil, + }, + }, + verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { + require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) + + require.Len(t, snap.TerminatingGateway.Intentions, 1) + dbIxn, ok := snap.TerminatingGateway.Intentions[db] + require.True(t, ok) + require.Equal(t, dbIxnMatch.Matches[0], dbIxn) + }, + }, + { + requiredWatches: map[string]verifyWatchRequest{ + serviceConfigIDPrefix + dbStr: genVerifyResolvedConfigWatch("db", "dc1"), + }, + events: []cache.UpdateEvent{ + { + CorrelationID: serviceConfigIDPrefix + dbStr, + Result: dbConfig, + Err: nil, + }, + }, + verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { + require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) + + require.Len(t, snap.TerminatingGateway.ServiceConfigs, 1) + require.Equal(t, snap.TerminatingGateway.ServiceConfigs[db], dbConfig) }, }, { @@ -1328,32 +1443,20 @@ func TestState_WatchesAndUpdates(t *testing.T) { events: []cache.UpdateEvent{ { CorrelationID: "service-resolver:" + dbStr, - Result: &structs.IndexedConfigEntries{ - Kind: structs.ServiceResolver, - Entries: []structs.ConfigEntry{ - &structs.ServiceResolverConfigEntry{ - Name: "db", - Kind: structs.ServiceResolver, - Redirect: &structs.ServiceResolverRedirect{ - Service: "db", - Datacenter: "dc2", - }, - }, - }, - }, - Err: nil, + Result: dbResolver, + Err: nil, }, }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { - want := &structs.ServiceResolverConfigEntry{ - Kind: structs.ServiceResolver, - Name: "db", - Redirect: &structs.ServiceResolverRedirect{ - Service: "db", - Datacenter: "dc2", - }, - } - require.Equal(t, want, snap.TerminatingGateway.ServiceResolvers[structs.NewServiceName("db", nil)]) + require.True(t, snap.Valid(), "gateway with service list is valid") + // Finally we have everything we need + require.Equal(t, []structs.ServiceName{db}, snap.TerminatingGateway.ValidServices()) + + require.Len(t, snap.TerminatingGateway.ServiceResolversSet, 1) + require.True(t, snap.TerminatingGateway.ServiceResolversSet[db]) + + require.Len(t, snap.TerminatingGateway.ServiceResolvers, 1) + require.Equal(t, dbResolver.Entries[0], snap.TerminatingGateway.ServiceResolvers[db]) }, }, { @@ -1363,7 +1466,7 @@ func TestState_WatchesAndUpdates(t *testing.T) { Result: &structs.IndexedGatewayServices{ Services: structs.GatewayServices{ { - Service: structs.NewServiceName("billing", nil), + Service: billing, Gateway: structs.NewServiceName("terminating-gateway", nil), }, }, @@ -1372,9 +1475,8 @@ func TestState_WatchesAndUpdates(t *testing.T) { }, }, verifySnapshot: func(t testing.TB, snap *ConfigSnapshot) { - billing := structs.NewServiceName("billing", nil) - require.True(t, snap.Valid(), "gateway with service list is valid") + require.Len(t, snap.TerminatingGateway.ValidServices(), 0) // All the watches should have been cancelled for db require.Len(t, snap.TerminatingGateway.WatchedServices, 1) diff --git a/agent/proxycfg/testing.go b/agent/proxycfg/testing.go index 291c06762d..a534b3a7c1 100644 --- a/agent/proxycfg/testing.go +++ b/agent/proxycfg/testing.go @@ -99,7 +99,7 @@ func TestLeafForCA(t testing.T, ca *structs.CARoot) *structs.IssuedCert { // TestIntentions returns a sample intentions match result useful to // mocking service discovery cache results. -func TestIntentions(t testing.T) *structs.IndexedIntentionMatches { +func TestIntentions() *structs.IndexedIntentionMatches { return &structs.IndexedIntentionMatches{ Matches: []structs.Intentions{ []*structs.Intention{ @@ -685,6 +685,8 @@ func TestConfigSnapshot(t testing.T) *ConfigSnapshot { PreparedQueryEndpoints: map[string]structs.CheckServiceNodes{ "prepared_query:geo-cache": TestUpstreamNodes(t), }, + Intentions: nil, // no intentions defined + IntentionsSet: true, }, Datacenter: "dc1", } @@ -1793,6 +1795,12 @@ func testConfigSnapshotTerminatingGateway(t testing.T, populateServices bool) *C db: dbNodes, cache: cacheNodes, }, + ServiceResolversSet: map[structs.ServiceName]bool{ + web: true, + api: true, + db: true, + cache: true, + }, GatewayServices: map[structs.ServiceName]structs.GatewayService{ web: { Service: web, @@ -1817,20 +1825,43 @@ func testConfigSnapshotTerminatingGateway(t testing.T, populateServices bool) *C cache: {cacheNodes[0], cacheNodes[1]}, }, } + + snap.TerminatingGateway.ServiceConfigs = map[structs.ServiceName]*structs.ServiceConfigResponse{ + web: { + ProxyConfig: map[string]interface{}{"protocol": "tcp"}, + }, + api: { + ProxyConfig: map[string]interface{}{"protocol": "tcp"}, + }, + db: { + ProxyConfig: map[string]interface{}{"protocol": "tcp"}, + }, + cache: { + ProxyConfig: map[string]interface{}{"protocol": "tcp"}, + }, + } + snap.TerminatingGateway.Intentions = map[structs.ServiceName]structs.Intentions{ + // no intentions defined for thse services + web: nil, + api: nil, + db: nil, + cache: nil, + } + snap.TerminatingGateway.ServiceLeaves = map[structs.ServiceName]*structs.IssuedCert{ - structs.NewServiceName("web", nil): { + web: { CertPEM: golden(t, "test-leaf-cert"), PrivateKeyPEM: golden(t, "test-leaf-key"), }, - structs.NewServiceName("api", nil): { + api: { CertPEM: golden(t, "alt-test-leaf-cert"), PrivateKeyPEM: golden(t, "alt-test-leaf-key"), }, - structs.NewServiceName("db", nil): { + db: { CertPEM: golden(t, "db-test-leaf-cert"), PrivateKeyPEM: golden(t, "db-test-leaf-key"), }, - structs.NewServiceName("cache", nil): { + cache: { CertPEM: golden(t, "cache-test-leaf-cert"), PrivateKeyPEM: golden(t, "cache-test-leaf-key"), }, diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index 81a6e421a5..04cf32353a 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -1212,3 +1212,12 @@ func defaultIfEmpty(val, defaultVal string) string { } return defaultVal } + +func IsProtocolHTTPLike(protocol string) bool { + switch protocol { + case "http", "http2", "grpc": + return true + default: + return false + } +} diff --git a/agent/structs/config_entry_discoverychain_test.go b/agent/structs/config_entry_discoverychain_test.go index 7b7a2feef3..5f332e9bbe 100644 --- a/agent/structs/config_entry_discoverychain_test.go +++ b/agent/structs/config_entry_discoverychain_test.go @@ -8,6 +8,7 @@ import ( "time" "github.com/hashicorp/consul/acl" + "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) @@ -1162,3 +1163,12 @@ func TestValidateServiceSubset(t *testing.T) { }) } } + +func TestIsProtocolHTTPLike(t *testing.T) { + assert.False(t, IsProtocolHTTPLike("")) + assert.False(t, IsProtocolHTTPLike("tcp")) + + assert.True(t, IsProtocolHTTPLike("http")) + assert.True(t, IsProtocolHTTPLike("http2")) + assert.True(t, IsProtocolHTTPLike("grpc")) +} diff --git a/agent/structs/intention.go b/agent/structs/intention.go index b6bb1d71f0..aa57587cf8 100644 --- a/agent/structs/intention.go +++ b/agent/structs/intention.go @@ -359,6 +359,14 @@ func (x *Intention) EstimateSize() int { return size } +func (x *Intention) SourceServiceName() ServiceName { + return NewServiceName(x.SourceName, x.SourceEnterpriseMeta()) +} + +func (x *Intention) DestinationServiceName() ServiceName { + return NewServiceName(x.DestinationName, x.DestinationEnterpriseMeta()) +} + // IntentionAction is the action that the intention represents. This // can be "allow" or "deny". type IntentionAction string diff --git a/agent/structs/intention_oss.go b/agent/structs/intention_oss.go index e2ae21bbf8..75e14996ae 100644 --- a/agent/structs/intention_oss.go +++ b/agent/structs/intention_oss.go @@ -6,6 +6,14 @@ import ( "github.com/hashicorp/consul/acl" ) +func (ixn *Intention) SourceEnterpriseMeta() *EnterpriseMeta { + return DefaultEnterpriseMeta() +} + +func (ixn *Intention) DestinationEnterpriseMeta() *EnterpriseMeta { + return DefaultEnterpriseMeta() +} + // FillAuthzContext can fill in an acl.AuthorizerContext object to setup // extra parameters for ACL enforcement. In OSS there is currently nothing // extra to be done. diff --git a/agent/xds/golden_test.go b/agent/xds/golden_test.go index 7b264b7afc..dd285d24f6 100644 --- a/agent/xds/golden_test.go +++ b/agent/xds/golden_test.go @@ -9,6 +9,7 @@ import ( envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" "github.com/golang/protobuf/jsonpb" + "github.com/golang/protobuf/proto" "github.com/hashicorp/go-version" "github.com/stretchr/testify/require" ) @@ -55,11 +56,15 @@ func golden(t *testing.T, name, subname, got string) string { } func responseToJSON(t *testing.T, r *envoy.DiscoveryResponse) string { + return protoToJSON(t, r) +} + +func protoToJSON(t *testing.T, pb proto.Message) string { t.Helper() m := jsonpb.Marshaler{ Indent: " ", } - gotJSON, err := m.MarshalToString(r) + gotJSON, err := m.MarshalToString(pb) require.NoError(t, err) return gotJSON } diff --git a/agent/xds/listeners.go b/agent/xds/listeners.go index 1a834db775..ae78ffa9dc 100644 --- a/agent/xds/listeners.go +++ b/agent/xds/listeners.go @@ -15,7 +15,6 @@ import ( envoycore "github.com/envoyproxy/go-control-plane/envoy/api/v2/core" envoylistener "github.com/envoyproxy/go-control-plane/envoy/api/v2/listener" envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" - extauthz "github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2" envoyhttp "github.com/envoyproxy/go-control-plane/envoy/config/filter/network/http_connection_manager/v2" envoytcp "github.com/envoyproxy/go-control-plane/envoy/config/filter/network/tcp_proxy/v2" envoytype "github.com/envoyproxy/go-control-plane/envoy/type" @@ -23,6 +22,7 @@ import ( "github.com/envoyproxy/go-control-plane/pkg/wellknown" "github.com/golang/protobuf/jsonpb" "github.com/golang/protobuf/proto" + pbtypes "github.com/golang/protobuf/ptypes" "github.com/golang/protobuf/ptypes/any" pbstruct "github.com/golang/protobuf/ptypes/struct" "github.com/golang/protobuf/ptypes/wrappers" @@ -313,8 +313,17 @@ func (s *Server) makeIngressGatewayListeners(address string, cfgSnap *proxycfg.C } else { // If multiple upstreams share this port, make a special listener for the protocol. listener := makeListener(listenerKey.Protocol, address, listenerKey.Port) - filter, err := makeListenerFilter( - true, listenerKey.Protocol, listenerKey.RouteName(), "", "ingress_upstream_", "", false) + opts := listenerFilterOpts{ + useRDS: true, + protocol: listenerKey.Protocol, + filterName: listenerKey.RouteName(), + cluster: "", + statPrefix: "ingress_upstream_", + routePath: "", + ingress: false, + httpAuthzFilter: nil, + } + filter, err := makeListenerFilter(opts) if err != nil { return nil, err } @@ -395,23 +404,104 @@ func makeListenerFromUserConfig(configJSON string) (*envoy.Listener, error) { return &l, err } -// Ensure that the first filter in each filter chain of a public listener is the -// authz filter to prevent unauthorized access and that every filter chain uses -// our TLS certs. We might allow users to work around this later if there is a -// good use case but this is actually a feature for now as it allows them to -// specify custom listener params in config but still get our certs delivered -// dynamically and intentions enforced without coming up with some complicated -// templating/merging solution. -func injectConnectFilters(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot, listener *envoy.Listener) error { - authFilter, err := makeExtAuthFilter(cInfo.Token) +// Ensure that the first filter in each filter chain of a public listener is +// the authz filter to prevent unauthorized access. +func (s *Server) injectConnectFilters(_ connectionInfo, cfgSnap *proxycfg.ConfigSnapshot, listener *envoy.Listener) error { + authzFilter, err := makeRBACNetworkFilter( + cfgSnap.ConnectProxy.Intentions, + cfgSnap.IntentionDefaultAllow, + ) if err != nil { return err } + for idx := range listener.FilterChains { // Insert our authz filter before any others listener.FilterChains[idx].Filters = - append([]*envoylistener.Filter{authFilter}, listener.FilterChains[idx].Filters...) + append([]*envoylistener.Filter{ + authzFilter, + }, listener.FilterChains[idx].Filters...) + } + return nil +} +const httpConnectionManagerNewName = "envoy.filters.network.http_connection_manager" + +// Locate the existing http connect manager L4 filter and inject our RBAC filter at the top. +func (s *Server) injectHTTPFilterOnFilterChains( + listener *envoy.Listener, + authzFilter *envoyhttp.HttpFilter, +) error { + for chainIdx, chain := range listener.FilterChains { + var ( + hcmFilter *envoylistener.Filter + hcmFilterIdx int + ) + + for filterIdx, filter := range chain.Filters { + if filter.Name == wellknown.HTTPConnectionManager || + filter.Name == httpConnectionManagerNewName { + hcmFilter = filter + hcmFilterIdx = filterIdx + break + } + } + if hcmFilter == nil { + return fmt.Errorf( + "filter chain %d lacks either a %q or %q filter", + chainIdx, + wellknown.HTTPConnectionManager, + httpConnectionManagerNewName, + ) + } + + var ( + hcm envoyhttp.HttpConnectionManager + isTyped bool + ) + switch x := hcmFilter.ConfigType.(type) { + case *envoylistener.Filter_Config: + if err := conversion.StructToMessage(x.Config, &hcm); err != nil { + return err + } + isTyped = false + case *envoylistener.Filter_TypedConfig: + if err := pbtypes.UnmarshalAny(x.TypedConfig, &hcm); err != nil { + return err + } + isTyped = true + default: + return fmt.Errorf( + "filter chain %d has a %q filter with an unsupported config type: %T", + chainIdx, + hcmFilter.Name, + x, + ) + } + + // Insert our authz filter before any others + hcm.HttpFilters = append([]*envoyhttp.HttpFilter{ + authzFilter, + }, hcm.HttpFilters...) + + // And persist the modified filter. + newFilter, err := makeFilter(hcmFilter.Name, &hcm, isTyped) + if err != nil { + return err + } + chain.Filters[hcmFilterIdx] = newFilter + } + + return nil +} + +// Ensure every filter chain uses our TLS certs. We might allow users to work +// around this later if there is a good use case but this is actually a feature +// for now as it allows them to specify custom listener params in config but +// still get our certs delivered dynamically and intentions enforced without +// coming up with some complicated templating/merging solution. +func (s *Server) injectConnectTLSOnFilterChains(_ connectionInfo, cfgSnap *proxycfg.ConfigSnapshot, listener *envoy.Listener) error { + for idx := range listener.FilterChains { listener.FilterChains[idx].TlsContext = &envoyauth.DownstreamTlsContext{ CommonTlsContext: makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.Leaf()), RequireClientCertificate: &wrappers.BoolValue{Value: true}, @@ -436,9 +526,12 @@ func (s *Server) makePublicListener(cInfo connectionInfo, cfgSnap *proxycfg.Conf if err != nil { return l, err } - // In the happy path don't return yet as we need to inject TLS config still. + // In the happy path don't return yet as we need to inject TLS and authz config still. } + // This controls if we do L4 or L7 intention checks. + useHTTPFilter := structs.IsProtocolHTTPLike(cfg.Protocol) + if l == nil { // No user config, use default listener addr := cfgSnap.Address @@ -460,8 +553,27 @@ func (s *Server) makePublicListener(cInfo connectionInfo, cfgSnap *proxycfg.Conf l = makeListener(PublicListenerName, addr, port) - filter, err := makeListenerFilter( - false, cfg.Protocol, "public_listener", LocalAppClusterName, "", "", true) + opts := listenerFilterOpts{ + useRDS: false, + protocol: cfg.Protocol, + filterName: "public_listener", + cluster: LocalAppClusterName, + statPrefix: "", + routePath: "", + ingress: true, + } + + if useHTTPFilter { + opts.httpAuthzFilter, err = makeRBACHTTPFilter( + cfgSnap.ConnectProxy.Intentions, + cfgSnap.IntentionDefaultAllow, + ) + if err != nil { + return nil, err + } + } + + filter, err := makeListenerFilter(opts) if err != nil { return nil, err } @@ -472,9 +584,39 @@ func (s *Server) makePublicListener(cInfo connectionInfo, cfgSnap *proxycfg.Conf }, }, } + + } else if useHTTPFilter { + httpAuthzFilter, err := makeRBACHTTPFilter( + cfgSnap.ConnectProxy.Intentions, + cfgSnap.IntentionDefaultAllow, + ) + if err != nil { + return nil, err + } + + // We're using the listener escape hatch, so try our best to inject the + // HTTP RBAC filter, but if we can't then just inject the RBAC Network + // filter instead. + if err := s.injectHTTPFilterOnFilterChains(l, httpAuthzFilter); err != nil { + s.Logger.Warn( + "could not inject the HTTP RBAC filter to enforce intentions on user-provided 'envoy_public_listener_json' config; falling back on the RBAC network filter instead", + "proxy", cfgSnap.ProxyID, + "error", err, + ) + useHTTPFilter = false + } + } + + if !useHTTPFilter { + if err := s.injectConnectFilters(cInfo, cfgSnap, l); err != nil { + return nil, err + } + } + + if err := s.injectConnectTLSOnFilterChains(cInfo, cfgSnap, l); err != nil { + return nil, err } - err = injectConnectFilters(cInfo, cfgSnap, l) return l, err } @@ -505,7 +647,17 @@ func (s *Server) makeExposedCheckListener(cfgSnap *proxycfg.ConfigSnapshot, clus filterName := fmt.Sprintf("exposed_path_filter_%s_%d", strippedPath, path.ListenerPort) - f, err := makeListenerFilter(false, path.Protocol, filterName, cluster, "", path.Path, true) + opts := listenerFilterOpts{ + useRDS: false, + protocol: path.Protocol, + filterName: filterName, + cluster: cluster, + statPrefix: "", + routePath: path.Path, + ingress: true, + httpAuthzFilter: nil, + } + f, err := makeListenerFilter(opts) if err != nil { return nil, err } @@ -557,20 +709,35 @@ func (s *Server) makeTerminatingGatewayListener( // Make a FilterChain for each linked service // Match on the cluster name, - for svc := range cfgSnap.TerminatingGateway.ServiceGroups { + for _, svc := range cfgSnap.TerminatingGateway.ValidServices() { clusterName := connect.ServiceSNI(svc.Name, "", svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) + + // Resolvers are optional. resolver, hasResolver := cfgSnap.TerminatingGateway.ServiceResolvers[svc] - // Skip the service if we don't have a cert to present for mTLS - if cert, ok := cfgSnap.TerminatingGateway.ServiceLeaves[svc]; !ok || cert == nil { - // TODO (gateways) (freddy) Should the error suggest that the issue may be ACLs? (need service:write on service) - s.Logger.Named(logging.TerminatingGateway). - Error("no client certificate available for linked service, skipping filter chain creation", - "service", svc.String(), "error", err) - continue + intentions := cfgSnap.TerminatingGateway.Intentions[svc] + svcConfig := cfgSnap.TerminatingGateway.ServiceConfigs[svc] + + cfg, err := ParseProxyConfig(svcConfig.ProxyConfig) + if err != nil { + // Don't hard fail on a config typo, just warn. The parse func returns + // default config if there is an error so it's safe to continue. + s.Logger.Named(logging.TerminatingGateway).Warn( + "failed to parse Connect.Proxy.Config for linked service", + "service", svc.String(), + "error", err, + ) } - clusterChain, err := s.sniFilterChainTerminatingGateway(cInfo, cfgSnap, name, clusterName, svc) + clusterChain, err := s.makeFilterChainTerminatingGateway( + cInfo, + cfgSnap, + name, + clusterName, + svc, + intentions, + cfg.Protocol, + ) if err != nil { return nil, fmt.Errorf("failed to make filter chain for cluster %q: %v", clusterName, err) } @@ -580,13 +747,21 @@ func (s *Server) makeTerminatingGatewayListener( if hasResolver { // generate 1 filter chain for each service subset for subsetName := range resolver.Subsets { - clusterName := connect.ServiceSNI(svc.Name, subsetName, svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) + subsetClusterName := connect.ServiceSNI(svc.Name, subsetName, svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) - clusterChain, err := s.sniFilterChainTerminatingGateway(cInfo, cfgSnap, name, clusterName, svc) + subsetClusterChain, err := s.makeFilterChainTerminatingGateway( + cInfo, + cfgSnap, + name, + subsetClusterName, + svc, + intentions, + cfg.Protocol, + ) if err != nil { - return nil, fmt.Errorf("failed to make filter chain for cluster %q: %v", clusterName, err) + return nil, fmt.Errorf("failed to make filter chain for cluster %q: %v", subsetClusterName, err) } - l.FilterChains = append(l.FilterChains, clusterChain) + l.FilterChains = append(l.FilterChains, subsetClusterChain) } } } @@ -608,41 +783,70 @@ func (s *Server) makeTerminatingGatewayListener( return l, nil } -func (s *Server) sniFilterChainTerminatingGateway( - cInfo connectionInfo, +func (s *Server) makeFilterChainTerminatingGateway( + _ connectionInfo, cfgSnap *proxycfg.ConfigSnapshot, listener, cluster string, service structs.ServiceName, + intentions structs.Intentions, + protocol string, ) (*envoylistener.FilterChain, error) { - - authFilter, err := makeExtAuthFilter(cInfo.Token) - if err != nil { - return nil, err - } - sniCluster, err := makeSNIClusterFilter() - if err != nil { - return nil, err - } - - // The cluster name here doesn't matter as the sni_cluster filter will fill it in for us. - statPrefix := fmt.Sprintf("terminating_gateway_%s_%s_", service.NamespaceOrDefault(), service.Name) - tcpProxy, err := makeTCPProxyFilter(listener, "", statPrefix) - if err != nil { - return nil, err - } - - return &envoylistener.FilterChain{ + filterChain := &envoylistener.FilterChain{ FilterChainMatch: makeSNIFilterChainMatch(cluster), - Filters: []*envoylistener.Filter{ - authFilter, - sniCluster, - tcpProxy, - }, + Filters: make([]*envoylistener.Filter, 0, 3), TlsContext: &envoyauth.DownstreamTlsContext{ CommonTlsContext: makeCommonTLSContextFromLeaf(cfgSnap, cfgSnap.TerminatingGateway.ServiceLeaves[service]), RequireClientCertificate: &wrappers.BoolValue{Value: true}, }, - }, err + } + + // This controls if we do L4 or L7 intention checks. + useHTTPFilter := structs.IsProtocolHTTPLike(protocol) + + // If this is L4, the first filter we setup is to do intention checks. + if !useHTTPFilter { + authFilter, err := makeRBACNetworkFilter( + intentions, + cfgSnap.IntentionDefaultAllow, + ) + if err != nil { + return nil, err + } + filterChain.Filters = append(filterChain.Filters, authFilter) + } + + // Lastly we setup the actual proxying component. For L4 this is a straight + // tcp proxy. For L7 this is a very hands-off HTTP proxy just to inject an + // HTTP filter to do intention checks here instead. + statPrefix := fmt.Sprintf("terminating_gateway_%s_%s_", service.NamespaceOrDefault(), service.Name) + opts := listenerFilterOpts{ + useRDS: false, + protocol: protocol, + filterName: listener, + cluster: cluster, + statPrefix: statPrefix, + routePath: "", + ingress: false, + } + + if useHTTPFilter { + var err error + opts.httpAuthzFilter, err = makeRBACHTTPFilter( + intentions, + cfgSnap.IntentionDefaultAllow, + ) + if err != nil { + return nil, err + } + } + + filter, err := makeListenerFilter(opts) + if err != nil { + return nil, err + } + filterChain.Filters = append(filterChain.Filters, filter) + + return filterChain, nil } func (s *Server) makeMeshGatewayListener(name, addr string, port int, cfgSnap *proxycfg.ConfigSnapshot) (*envoy.Listener, error) { @@ -791,8 +995,17 @@ func (s *Server) makeUpstreamListenerForDiscoveryChain( clusterName = CustomizeClusterName(target.Name, chain) } - filter, err := makeListenerFilter( - useRDS, cfg.Protocol, upstreamID, clusterName, "upstream_", "", false) + opts := listenerFilterOpts{ + useRDS: useRDS, + protocol: cfg.Protocol, + filterName: upstreamID, + cluster: clusterName, + statPrefix: "upstream_", + routePath: "", + ingress: false, + httpAuthzFilter: nil, + } + filter, err := makeListenerFilter(opts) if err != nil { return nil, err } @@ -855,26 +1068,34 @@ func getAndModifyUpstreamConfigForListener(logger hclog.Logger, u *structs.Upstr return cfg } -func makeListenerFilter( - useRDS bool, - protocol, filterName, cluster, statPrefix, routePath string, ingress bool) (*envoylistener.Filter, error) { +type listenerFilterOpts struct { + useRDS bool + protocol string + filterName string + cluster string + statPrefix string + routePath string + ingress bool + httpAuthzFilter *envoyhttp.HttpFilter +} - switch protocol { +func makeListenerFilter(opts listenerFilterOpts) (*envoylistener.Filter, error) { + switch opts.protocol { case "grpc": - return makeHTTPFilter(useRDS, filterName, cluster, statPrefix, routePath, ingress, true, true) + return makeHTTPFilter(opts.useRDS, opts.filterName, opts.cluster, opts.statPrefix, opts.routePath, opts.ingress, true, true, opts.httpAuthzFilter) case "http2": - return makeHTTPFilter(useRDS, filterName, cluster, statPrefix, routePath, ingress, false, true) + return makeHTTPFilter(opts.useRDS, opts.filterName, opts.cluster, opts.statPrefix, opts.routePath, opts.ingress, false, true, opts.httpAuthzFilter) case "http": - return makeHTTPFilter(useRDS, filterName, cluster, statPrefix, routePath, ingress, false, false) + return makeHTTPFilter(opts.useRDS, opts.filterName, opts.cluster, opts.statPrefix, opts.routePath, opts.ingress, false, false, opts.httpAuthzFilter) case "tcp": fallthrough default: - if useRDS { + if opts.useRDS { return nil, fmt.Errorf("RDS is not compatible with the tcp proxy filter") - } else if cluster == "" { + } else if opts.cluster == "" { return nil, fmt.Errorf("cluster name is required for a tcp proxy filter") } - return makeTCPProxyFilter(filterName, cluster, statPrefix) + return makeTCPProxyFilter(opts.filterName, opts.cluster, opts.statPrefix) } } @@ -898,7 +1119,7 @@ func makeTCPProxyFilter(filterName, cluster, statPrefix string) (*envoylistener. StatPrefix: makeStatPrefix("tcp", statPrefix, filterName), ClusterSpecifier: &envoytcp.TcpProxy_Cluster{Cluster: cluster}, } - return makeFilter("envoy.tcp_proxy", cfg) + return makeFilter("envoy.tcp_proxy", cfg, false) } func makeStatPrefix(protocol, prefix, filterName string) string { @@ -912,6 +1133,7 @@ func makeHTTPFilter( useRDS bool, filterName, cluster, statPrefix, routePath string, ingress, grpc, http2 bool, + authzFilter *envoyhttp.HttpFilter, ) (*envoylistener.Filter, error) { op := envoyhttp.HttpConnectionManager_Tracing_INGRESS if !ingress { @@ -1001,43 +1223,51 @@ func makeHTTPFilter( cfg.Http2ProtocolOptions = &envoycore.Http2ProtocolOptions{} } + // Like injectConnectFilters for L4, here we ensure that the first filter + // (other than the "envoy.grpc_http1_bridge" filter) in the http filter + // chain of a public listener is the authz filter to prevent unauthorized + // access and that every filter chain uses our TLS certs. + if authzFilter != nil { + cfg.HttpFilters = append([]*envoyhttp.HttpFilter{authzFilter}, cfg.HttpFilters...) + } + if grpc { - // Add grpc bridge before router + // Add grpc bridge before router and authz cfg.HttpFilters = append([]*envoyhttp.HttpFilter{{ Name: "envoy.grpc_http1_bridge", ConfigType: &envoyhttp.HttpFilter_Config{Config: &pbstruct.Struct{}}, }}, cfg.HttpFilters...) } - return makeFilter("envoy.http_connection_manager", cfg) + return makeFilter("envoy.http_connection_manager", cfg, false) } -func makeExtAuthFilter(token string) (*envoylistener.Filter, error) { - cfg := &extauthz.ExtAuthz{ - StatPrefix: "connect_authz", - GrpcService: &envoycore.GrpcService{ - // Attach token header so we can authorize the callbacks. Technically - // authorize is not really protected data but we locked down the HTTP - // implementation to need service:write and since we have the token that - // has that it's pretty reasonable to set it up here. - InitialMetadata: []*envoycore.HeaderValue{ - { - Key: "x-consul-token", - Value: token, - }, - }, - TargetSpecifier: &envoycore.GrpcService_EnvoyGrpc_{ - EnvoyGrpc: &envoycore.GrpcService_EnvoyGrpc{ - ClusterName: LocalAgentClusterName, - }, - }, - }, - FailureModeAllow: false, +func makeFilter(name string, cfg proto.Message, typed bool) (*envoylistener.Filter, error) { + filter := &envoylistener.Filter{ + Name: name, } - return makeFilter("envoy.ext_authz", cfg) + if typed { + any, err := pbtypes.MarshalAny(cfg) + if err != nil { + return nil, err + } + + filter.ConfigType = &envoylistener.Filter_TypedConfig{TypedConfig: any} + } else { + // Ridiculous dance to make that struct into pbstruct.Struct by... encoding it + // as JSON and decoding again!! + cfgStruct, err := conversion.MessageToStruct(cfg) + if err != nil { + return nil, err + } + + filter.ConfigType = &envoylistener.Filter_Config{Config: cfgStruct} + } + + return filter, nil } -func makeFilter(name string, cfg proto.Message) (*envoylistener.Filter, error) { +func makeEnvoyHTTPFilter(name string, cfg proto.Message) (*envoyhttp.HttpFilter, error) { // Ridiculous dance to make that struct into pbstruct.Struct by... encoding it // as JSON and decoding again!! cfgStruct, err := conversion.MessageToStruct(cfg) @@ -1045,9 +1275,9 @@ func makeFilter(name string, cfg proto.Message) (*envoylistener.Filter, error) { return nil, err } - return &envoylistener.Filter{ + return &envoyhttp.HttpFilter{ Name: name, - ConfigType: &envoylistener.Filter_Config{Config: cfgStruct}, + ConfigType: &envoyhttp.HttpFilter_Config{Config: cfgStruct}, }, nil } diff --git a/agent/xds/listeners_test.go b/agent/xds/listeners_test.go index 77fed27ebd..b972eaf5d7 100644 --- a/agent/xds/listeners_test.go +++ b/agent/xds/listeners_test.go @@ -2,13 +2,13 @@ package xds import ( "bytes" - "fmt" "path/filepath" "sort" "testing" "text/template" envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" + "github.com/envoyproxy/go-control-plane/pkg/wellknown" "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/xds/proxysupport" @@ -80,6 +80,66 @@ func TestListenersFromSnapshot(t *testing.T) { }) }, }, + { + name: "custom-public-listener-http", + create: proxycfg.TestConfigSnapshot, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.Proxy.Config["protocol"] = "http" + snap.Proxy.Config["envoy_public_listener_json"] = + customHTTPListenerJSON(t, customHTTPListenerJSONOptions{ + Name: "custom-public-listen", + }) + }, + }, + { + name: "custom-public-listener-http-typed", + create: proxycfg.TestConfigSnapshot, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.Proxy.Config["protocol"] = "http" + snap.Proxy.Config["envoy_public_listener_json"] = + customHTTPListenerJSON(t, customHTTPListenerJSONOptions{ + Name: "custom-public-listen", + TypedConfig: true, + }) + }, + }, + { + name: "custom-public-listener-http-2", + create: proxycfg.TestConfigSnapshot, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.Proxy.Config["protocol"] = "http" + snap.Proxy.Config["envoy_public_listener_json"] = + customHTTPListenerJSON(t, customHTTPListenerJSONOptions{ + Name: "custom-public-listen", + HTTPConnectionManagerName: httpConnectionManagerNewName, + }) + }, + }, + { + name: "custom-public-listener-http-2-typed", + create: proxycfg.TestConfigSnapshot, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.Proxy.Config["protocol"] = "http" + snap.Proxy.Config["envoy_public_listener_json"] = + customHTTPListenerJSON(t, customHTTPListenerJSONOptions{ + Name: "custom-public-listen", + HTTPConnectionManagerName: httpConnectionManagerNewName, + TypedConfig: true, + }) + }, + }, + { + name: "custom-public-listener-http-missing", + create: proxycfg.TestConfigSnapshot, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.Proxy.Config["protocol"] = "http" + snap.Proxy.Config["envoy_public_listener_json"] = + customListenerJSON(t, customListenerJSONOptions{ + Name: "custom-public-listen", + IncludeType: false, + }) + }, + }, { name: "custom-public-listener-typed", create: proxycfg.TestConfigSnapshot, @@ -500,11 +560,7 @@ func TestListenersFromSnapshot(t *testing.T) { } } -func expectListenerJSONResources(t *testing.T, snap *proxycfg.ConfigSnapshot, token string) map[string]string { - tokenVal := "" - if token != "" { - tokenVal = fmt.Sprintf(",\n"+`"value": "%s"`, token) - } +func expectListenerJSONResources(t *testing.T, snap *proxycfg.ConfigSnapshot) map[string]string { return map[string]string{ "public_listener": `{ "@type": "type.googleapis.com/envoy.api.v2.Listener", @@ -520,18 +576,9 @@ func expectListenerJSONResources(t *testing.T, snap *proxycfg.ConfigSnapshot, to "tlsContext": ` + expectedPublicTLSContextJSON(t, snap) + `, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token" - ` + tokenVal + ` - } - ] + "rules": { }, "stat_prefix": "connect_authz" } @@ -622,15 +669,14 @@ func expectListenerJSONFromResources(snap *proxycfg.ConfigSnapshot, v, n uint64, }` } -func expectListenerJSON(t *testing.T, snap *proxycfg.ConfigSnapshot, token string, v, n uint64) string { - return expectListenerJSONFromResources(snap, v, n, expectListenerJSONResources(t, snap, token)) +func expectListenerJSON(t *testing.T, snap *proxycfg.ConfigSnapshot, v, n uint64) string { + return expectListenerJSONFromResources(snap, v, n, expectListenerJSONResources(t, snap)) } type customListenerJSONOptions struct { - Name string - IncludeType bool - OverrideAuthz bool - TLSContext string + Name string + IncludeType bool + TLSContext string } const customListenerJSONTpl = `{ @@ -650,25 +696,6 @@ const customListenerJSONTpl = `{ "tlsContext": {{ .TLSContext }}, {{- end }} "filters": [ - {{ if .OverrideAuthz -}} - { - "name": "envoy.ext_authz", - "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] - }, - "stat_prefix": "connect_authz" - } - }, - {{- end }} { "name": "envoy.tcp_proxy", "config": { @@ -681,12 +708,82 @@ const customListenerJSONTpl = `{ ] }` -var customListenerJSONTemplate = template.Must(template.New("").Parse(customListenerJSONTpl)) +type customHTTPListenerJSONOptions struct { + Name string + HTTPConnectionManagerName string + TypedConfig bool +} + +const customHTTPListenerJSONTpl = `{ + "name": "{{ .Name }}", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "{{ .HTTPConnectionManagerName }}", + {{ if .TypedConfig -}} + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + {{ else -}} + "config": { + {{- end }} + "http_filters": [ + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] +}` + +var ( + customListenerJSONTemplate = template.Must(template.New("").Parse(customListenerJSONTpl)) + customHTTPListenerJSONTemplate = template.Must(template.New("").Parse(customHTTPListenerJSONTpl)) +) func customListenerJSON(t *testing.T, opts customListenerJSONOptions) string { t.Helper() var buf bytes.Buffer - err := customListenerJSONTemplate.Execute(&buf, opts) - require.NoError(t, err) + require.NoError(t, customListenerJSONTemplate.Execute(&buf, opts)) + return buf.String() +} + +func customHTTPListenerJSON(t *testing.T, opts customHTTPListenerJSONOptions) string { + t.Helper() + if opts.HTTPConnectionManagerName == "" { + opts.HTTPConnectionManagerName = wellknown.HTTPConnectionManager + } + var buf bytes.Buffer + require.NoError(t, customHTTPListenerJSONTemplate.Execute(&buf, opts)) return buf.String() } diff --git a/agent/xds/rbac.go b/agent/xds/rbac.go new file mode 100644 index 0000000000..da9f03b953 --- /dev/null +++ b/agent/xds/rbac.go @@ -0,0 +1,374 @@ +package xds + +import ( + "fmt" + "sort" + + envoylistener "github.com/envoyproxy/go-control-plane/envoy/api/v2/listener" + envoyhttprbac "github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2" + envoyhttp "github.com/envoyproxy/go-control-plane/envoy/config/filter/network/http_connection_manager/v2" + envoynetrbac "github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2" + envoyrbac "github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2" + envoymatcher "github.com/envoyproxy/go-control-plane/envoy/type/matcher" + "github.com/hashicorp/consul/agent/structs" +) + +func makeRBACNetworkFilter(intentions structs.Intentions, intentionDefaultAllow bool) (*envoylistener.Filter, error) { + rules, err := makeRBACRules(intentions, intentionDefaultAllow) + if err != nil { + return nil, err + } + + cfg := &envoynetrbac.RBAC{ + StatPrefix: "connect_authz", + Rules: rules, + } + return makeFilter("envoy.filters.network.rbac", cfg, false) +} + +func makeRBACHTTPFilter(intentions structs.Intentions, intentionDefaultAllow bool) (*envoyhttp.HttpFilter, error) { + rules, err := makeRBACRules(intentions, intentionDefaultAllow) + if err != nil { + return nil, err + } + + cfg := &envoyhttprbac.RBAC{ + Rules: rules, + } + return makeEnvoyHTTPFilter("envoy.filters.http.rbac", cfg) +} + +type rbacIntention struct { + Source structs.ServiceName + NotSources []structs.ServiceName + Allow bool + Precedence int + Skip bool +} + +func (r *rbacIntention) Simplify() { + r.NotSources = simplifyNotSourceSlice(r.NotSources) +} + +func simplifyNotSourceSlice(notSources []structs.ServiceName) []structs.ServiceName { + if len(notSources) <= 1 { + return notSources + } + + // Collapse NotSources elements together if any element is a subset of + // another. + + // Sort, keeping the least wildcarded elements first. + sort.SliceStable(notSources, func(i, j int) bool { + return countWild(notSources[i]) < countWild(notSources[j]) + }) + + keep := make([]structs.ServiceName, 0, len(notSources)) + for i := 0; i < len(notSources); i++ { + si := notSources[i] + remove := false + for j := i + 1; j < len(notSources); j++ { + sj := notSources[j] + + if ixnSourceMatches(si, sj) { + remove = true + break + } + } + if !remove { + keep = append(keep, si) + } + } + + return keep +} + +// makeRBACRules translates Consul intentions into RBAC Policies for Envoy. +// +// Consul lets you define up to 9 different kinds of intentions that apply at +// different levels of precedence (this is limited to 4 if not using Consul +// Enterprise). Each intention in this flat list (sorted by precedence) can either +// be an allow rule or a deny rule. Here’s a concrete example of this at work: +// +// intern/trusted-app => billing/payment-svc : ALLOW (prec=9) +// intern/* => billing/payment-svc : DENY (prec=8) +// */* => billing/payment-svc : ALLOW (prec=7) +// ::: ACL default policy ::: : DENY (prec=N/A) +// +// In contrast, Envoy lets you either configure a filter to be based on an +// allow-list or a deny-list based on the action attribute of the RBAC rules +// struct. +// +// On the surface it would seem that the configuration model of Consul +// intentions is incompatible with that of Envoy’s RBAC engine. For any given +// destination service Consul’s model requires evaluating a list of rules and +// short circuiting later rules once an earlier rule matches. After a rule is +// found to match then we decide if it is allow/deny. Envoy on the other hand +// requires the rules to express all conditions to allow access or all conditions +// to deny access. +// +// Despite the surface incompatibility it is possible to marry these two +// models. For clarity I’ll rewrite the earlier example intentions in an +// abbreviated form: +// +// A : ALLOW +// B : DENY +// C : ALLOW +// : DENY +// +// 1. Given that the overall intention default is set to deny, we start by +// choosing to build an allow-list in Envoy (this is also the variant that I find +// easier to think about). +// 2. Next we traverse the list in precedence order (top down) and any DENY +// intentions are combined with later intentions using logical operations. +// 3. Now that all of the intentions result in the same action (allow) we have +// successfully removed precedence and we can express this in as a set of Envoy +// RBAC policies. +// +// After this the earlier A/B/C/default list becomes: +// +// A : ALLOW +// C AND NOT(B) : ALLOW +// : DENY +// +// Which really is just an allow-list of [A, C AND NOT(B)] +func makeRBACRules(intentions structs.Intentions, intentionDefaultAllow bool) (*envoyrbac.RBAC, error) { + // Note that we DON'T explicitly validate the trust-domain matches ours. + // + // For now we don't validate the trust domain of the _destination_ at all. + // The RBAC policies below ignore the trust domain and it's implicit that + // the request is for the correct cluster. We might want to reconsider this + // later but plumbing in additional machinery to check the clusterID here + // is not really necessary for now unless the Envoys are badly configured. + // Our threat model _requires_ correctly configured and well behaved + // proxies given that they have ACLs to fetch certs and so can do whatever + // they want including not authorizing traffic at all or routing it do a + // different service than they auth'd against. + + // TODO(banks,rb): Implement revocation list checking? + + // Omit any lower-precedence intentions that share the same source. + intentions = removeSameSourceIntentions(intentions) + + // First build up just the basic principal matches. + rbacIxns := make([]*rbacIntention, 0, len(intentions)) + for _, ixn := range intentions { + rbacIxns = append(rbacIxns, &rbacIntention{ + Source: ixn.SourceServiceName(), + Allow: (ixn.Action == structs.IntentionActionAllow), + Precedence: ixn.Precedence, + }) + } + + // Normalize: if we are in default-deny then all intentions must be allows and vice versa + + var rbacAction envoyrbac.RBAC_Action + if intentionDefaultAllow { + // The RBAC policies deny access to principals. The rest is allowed. + // This is block-list style access control. + rbacAction = envoyrbac.RBAC_DENY + } else { + // The RBAC policies grant access to principals. The rest is denied. + // This is safe-list style access control. This is the default type. + rbacAction = envoyrbac.RBAC_ALLOW + } + + // First walk backwards and if we encounter an intention with an action + // that is the same as the default intention action, add it to all + // subsequent statements (via AND NOT $x) and mark the rule itself for + // erasure. + // + // i.e. for a default-deny setup we look for denies. + if len(rbacIxns) > 0 { + for i := len(rbacIxns) - 1; i >= 0; i-- { + if rbacIxns[i].Allow == intentionDefaultAllow { + for j := i + 1; j < len(rbacIxns); j++ { + if rbacIxns[j].Skip { + continue + } + // [i] is the intention candidate that we are distributing + // [j] is the thing to maybe NOT [i] from + if ixnSourceMatches(rbacIxns[i].Source, rbacIxns[j].Source) { + rbacIxns[j].NotSources = append(rbacIxns[j].NotSources, rbacIxns[i].Source) + } + } + // since this is default-FOO, any trailing FOO intentions will just evaporate + rbacIxns[i].Skip = true // mark for deletion + } + } + } + // At this point precedence doesn't matter since all roads lead to the same action. + + var principals []*envoyrbac.Principal + for _, rbacIxn := range rbacIxns { + if rbacIxn.Skip { + continue + } + + // NOTE: at this point "rbacIxn.Allow != intentionDefaultAllow" + + rbacIxn.Simplify() + + if len(rbacIxn.NotSources) > 0 { + andIDs := make([]*envoyrbac.Principal, 0, len(rbacIxn.NotSources)+1) + andIDs = append(andIDs, idPrincipal(rbacIxn.Source)) + for _, src := range rbacIxn.NotSources { + andIDs = append(andIDs, notPrincipal( + idPrincipal(src), + )) + } + principals = append(principals, andPrincipals(andIDs)) + } else { + principals = append(principals, idPrincipal(rbacIxn.Source)) + } + } + + rbac := &envoyrbac.RBAC{ + Action: rbacAction, + } + if len(principals) > 0 { + policy := &envoyrbac.Policy{ + Principals: principals, + Permissions: []*envoyrbac.Permission{anyPermission()}, + } + rbac.Policies = map[string]*envoyrbac.Policy{ + "consul-intentions": policy, + } + } + + return rbac, nil +} + +func removeSameSourceIntentions(intentions structs.Intentions) structs.Intentions { + if len(intentions) < 2 { + return intentions + } + + var ( + out = make(structs.Intentions, 0, len(intentions)) + changed = false + seenSource = make(map[structs.ServiceName]struct{}) + ) + for _, ixn := range intentions { + sn := ixn.SourceServiceName() + if _, ok := seenSource[sn]; ok { + // A higher precedence intention already used this exact source + // definition with a different destination. + changed = true + continue + } + seenSource[sn] = struct{}{} + out = append(out, ixn) + } + + if !changed { + return intentions + } + return out +} + +type sourceMatch int + +const ( + sourceMatchIgnore sourceMatch = 0 + sourceMatchSuperset sourceMatch = 1 + matchSameSubset sourceMatch = 2 +) + +// ixnSourceMatches deterines if the 'tester' service name is matched by the +// 'against' service name via wildcard rules. +// +// For instance: +// - (web, api) => false, because these have no wildcards +// - (web, *) => true, because "all services" includes "web" +// - (default/web, default/*) => true, because "all services in the default NS" includes "default/web" +// - (default/*, */*) => true, "any service in any NS" includes "all services in the default NS" +func ixnSourceMatches(tester, against structs.ServiceName) bool { + // We assume that we can't have the same intention twice before arriving + // here. + numWildTester := countWild(tester) + numWildAgainst := countWild(against) + + if numWildTester == numWildAgainst { + return false + } else if numWildTester > numWildAgainst { + return false + } + + matchesNS := tester.NamespaceOrDefault() == against.NamespaceOrDefault() || against.NamespaceOrDefault() == structs.WildcardSpecifier + matchesName := tester.Name == against.Name || against.Name == structs.WildcardSpecifier + return matchesNS && matchesName +} + +// countWild counts the number of wildcard values in the given namespace and name. +func countWild(src structs.ServiceName) int { + // If NS is wildcard, it must be 2 since wildcards only follow exact + if src.NamespaceOrDefault() == structs.WildcardSpecifier { + return 2 + } + + // Same reasoning as above, a wildcard can only follow an exact value + // and an exact value cannot follow a wildcard, so if name is a wildcard + // we must have exactly one. + if src.Name == structs.WildcardSpecifier { + return 1 + } + + return 0 +} + +func andPrincipals(ids []*envoyrbac.Principal) *envoyrbac.Principal { + return &envoyrbac.Principal{ + Identifier: &envoyrbac.Principal_AndIds{ + AndIds: &envoyrbac.Principal_Set{ + Ids: ids, + }, + }, + } +} + +func notPrincipal(id *envoyrbac.Principal) *envoyrbac.Principal { + return &envoyrbac.Principal{ + Identifier: &envoyrbac.Principal_NotId{ + NotId: id, + }, + } +} + +func idPrincipal(src structs.ServiceName) *envoyrbac.Principal { + pattern := makeSpiffePattern(src.NamespaceOrDefault(), src.Name) + + return &envoyrbac.Principal{ + Identifier: &envoyrbac.Principal_Authenticated_{ + Authenticated: &envoyrbac.Principal_Authenticated{ + PrincipalName: &envoymatcher.StringMatcher{ + MatchPattern: &envoymatcher.StringMatcher_SafeRegex{ + SafeRegex: makeEnvoyRegexMatch(pattern), + }, + }, + }, + }, + } +} +func makeSpiffePattern(sourceNS, sourceName string) string { + const ( + anyPath = `[^/]+` + spiffeTemplate = `^spiffe://%s/ns/%s/dc/%s/svc/%s$` + ) + switch { + case sourceNS != structs.WildcardSpecifier && sourceName != structs.WildcardSpecifier: + return fmt.Sprintf(spiffeTemplate, anyPath, sourceNS, anyPath, sourceName) + case sourceNS != structs.WildcardSpecifier && sourceName == structs.WildcardSpecifier: + return fmt.Sprintf(spiffeTemplate, anyPath, sourceNS, anyPath, anyPath) + case sourceNS == structs.WildcardSpecifier && sourceName == structs.WildcardSpecifier: + return fmt.Sprintf(spiffeTemplate, anyPath, anyPath, anyPath, anyPath) + default: + panic(fmt.Sprintf("not possible to have a wildcarded namespace %q but an exact service %q", sourceNS, sourceName)) + } +} + +func anyPermission() *envoyrbac.Permission { + return &envoyrbac.Permission{ + Rule: &envoyrbac.Permission_Any{Any: true}, + } +} diff --git a/agent/xds/rbac_test.go b/agent/xds/rbac_test.go new file mode 100644 index 0000000000..0e5d11e5a4 --- /dev/null +++ b/agent/xds/rbac_test.go @@ -0,0 +1,259 @@ +package xds + +import ( + "fmt" + "path/filepath" + "sort" + "testing" + + "github.com/hashicorp/consul/agent/structs" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +func TestMakeRBACNetworkFilter(t *testing.T) { + testIntention := func(t *testing.T, src, dst string, action structs.IntentionAction) *structs.Intention { + t.Helper() + ixn := structs.TestIntention(t) + ixn.SourceName = src + ixn.DestinationName = dst + ixn.Action = action + ixn.UpdatePrecedence() + return ixn + } + testSourceIntention := func(src string, action structs.IntentionAction) *structs.Intention { + return testIntention(t, src, "api", action) + } + sorted := func(ixns ...*structs.Intention) structs.Intentions { + sort.SliceStable(ixns, func(i, j int) bool { + return ixns[j].Precedence < ixns[i].Precedence + }) + return structs.Intentions(ixns) + } + + tests := map[string]struct { + intentionDefaultAllow bool + intentions structs.Intentions + }{ + "default-deny-mixed-precedence": { + intentionDefaultAllow: false, + intentions: sorted( + testIntention(t, "web", "api", structs.IntentionActionAllow), + testIntention(t, "*", "api", structs.IntentionActionDeny), + testIntention(t, "web", "*", structs.IntentionActionDeny), + ), + }, + "default-deny-service-wildcard-allow": { + intentionDefaultAllow: false, + intentions: sorted( + testSourceIntention("*", structs.IntentionActionAllow), + ), + }, + "default-allow-service-wildcard-deny": { + intentionDefaultAllow: true, + intentions: sorted( + testSourceIntention("*", structs.IntentionActionDeny), + ), + }, + "default-deny-one-allow": { + intentionDefaultAllow: false, + intentions: sorted( + testSourceIntention("web", structs.IntentionActionAllow), + ), + }, + "default-allow-one-deny": { + intentionDefaultAllow: true, + intentions: sorted( + testSourceIntention("web", structs.IntentionActionDeny), + ), + }, + "default-deny-allow-deny": { + intentionDefaultAllow: false, + intentions: sorted( + testSourceIntention("web", structs.IntentionActionDeny), + testSourceIntention("*", structs.IntentionActionAllow), + ), + }, + "default-deny-kitchen-sink": { + intentionDefaultAllow: false, + intentions: sorted( + // (double exact) + testSourceIntention("web", structs.IntentionActionAllow), + testSourceIntention("unsafe", structs.IntentionActionDeny), + testSourceIntention("cron", structs.IntentionActionAllow), + // and we invert the default-ness of the whole thing + testSourceIntention("*", structs.IntentionActionAllow), + ), + }, + "default-allow-kitchen-sink": { + intentionDefaultAllow: true, + intentions: sorted( + // (double exact) + testSourceIntention("web", structs.IntentionActionDeny), + testSourceIntention("unsafe", structs.IntentionActionAllow), + testSourceIntention("cron", structs.IntentionActionDeny), + // and we invert the default-ness of the whole thing + testSourceIntention("*", structs.IntentionActionDeny), + ), + }, + } + + for name, tt := range tests { + tt := tt + t.Run(name, func(t *testing.T) { + filter, err := makeRBACNetworkFilter(tt.intentions, tt.intentionDefaultAllow) + require.NoError(t, err) + + gotJSON := protoToJSON(t, filter) + + require.JSONEq(t, golden(t, filepath.Join("rbac", name), "", gotJSON), gotJSON) + }) + } +} + +func TestRemoveSameSourceIntentions(t *testing.T) { + testIntention := func(t *testing.T, src, dst string) *structs.Intention { + t.Helper() + ixn := structs.TestIntention(t) + ixn.SourceName = src + ixn.DestinationName = dst + ixn.UpdatePrecedence() + return ixn + } + sorted := func(ixns ...*structs.Intention) structs.Intentions { + sort.SliceStable(ixns, func(i, j int) bool { + return ixns[j].Precedence < ixns[i].Precedence + }) + return structs.Intentions(ixns) + } + tests := map[string]struct { + in structs.Intentions + expect structs.Intentions + }{ + "empty": {}, + "one": { + in: sorted( + testIntention(t, "*", "*"), + ), + expect: sorted( + testIntention(t, "*", "*"), + ), + }, + "two with no match": { + in: sorted( + testIntention(t, "*", "foo"), + testIntention(t, "bar", "*"), + ), + expect: sorted( + testIntention(t, "*", "foo"), + testIntention(t, "bar", "*"), + ), + }, + "two with match, exact": { + in: sorted( + testIntention(t, "bar", "foo"), + testIntention(t, "bar", "*"), + ), + expect: sorted( + testIntention(t, "bar", "foo"), + ), + }, + "two with match, wildcard": { + in: sorted( + testIntention(t, "*", "foo"), + testIntention(t, "*", "*"), + ), + expect: sorted( + testIntention(t, "*", "foo"), + ), + }, + } + + for name, tc := range tests { + tc := tc + t.Run(name, func(t *testing.T) { + got := removeSameSourceIntentions(tc.in) + require.Equal(t, tc.expect, got) + }) + } +} + +func TestSimplifyNotSourceSlice(t *testing.T) { + tests := map[string]struct { + in []string + expect []string + }{ + "empty": {}, + "one": { + []string{"bar"}, + []string{"bar"}, + }, + "two with no match": { + []string{"foo", "bar"}, + []string{"foo", "bar"}, + }, + "two with match": { + []string{"*", "bar"}, + []string{"*"}, + }, + "three with two matches down to one": { + []string{"*", "foo", "bar"}, + []string{"*"}, + }, + } + + for name, tc := range tests { + tc := tc + t.Run(name, func(t *testing.T) { + got := simplifyNotSourceSlice(makeServiceNameSlice(tc.in)) + require.Equal(t, makeServiceNameSlice(tc.expect), got) + }) + } +} + +func TestIxnSourceMatches(t *testing.T) { + tests := []struct { + tester, against string + matches bool + }{ + // identical precedence + {"web", "api", false}, + {"*", "*", false}, + // backwards precedence + {"*", "web", false}, + // name wildcards + {"web", "*", true}, + } + + for _, tc := range tests { + t.Run(fmt.Sprintf("%s cmp %s", tc.tester, tc.against), func(t *testing.T) { + matches := ixnSourceMatches( + structs.ServiceNameFromString(tc.tester), + structs.ServiceNameFromString(tc.against), + ) + assert.Equal(t, tc.matches, matches) + }) + } +} + +func makeServiceNameSlice(slice []string) []structs.ServiceName { + if len(slice) == 0 { + return nil + } + var out []structs.ServiceName + for _, src := range slice { + out = append(out, structs.ServiceNameFromString(src)) + } + return out +} + +func unmakeServiceNameSlice(slice []structs.ServiceName) []string { + if len(slice) == 0 { + return nil + } + var out []string + for _, src := range slice { + out = append(out, src.String()) + } + return out +} diff --git a/agent/xds/response.go b/agent/xds/response.go index c9a482e20a..6b8173688e 100644 --- a/agent/xds/response.go +++ b/agent/xds/response.go @@ -3,6 +3,7 @@ package xds import ( envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" envoycore "github.com/envoyproxy/go-control-plane/envoy/api/v2/core" + envoymatcher "github.com/envoyproxy/go-control-plane/envoy/type/matcher" "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes/any" "github.com/golang/protobuf/ptypes/wrappers" @@ -56,3 +57,12 @@ func makeUint32Value(n int) *wrappers.UInt32Value { func makeBoolValue(n bool) *wrappers.BoolValue { return &wrappers.BoolValue{Value: n} } + +func makeEnvoyRegexMatch(patt string) *envoymatcher.RegexMatcher { + return &envoymatcher.RegexMatcher{ + EngineType: &envoymatcher.RegexMatcher_GoogleRe2{ + GoogleRe2: &envoymatcher.RegexMatcher_GoogleRE2{}, + }, + Regex: patt, + } +} diff --git a/agent/xds/routes.go b/agent/xds/routes.go index 9d8dbc2b00..a7660d1684 100644 --- a/agent/xds/routes.go +++ b/agent/xds/routes.go @@ -458,12 +458,3 @@ func makeRouteActionForSplitter(splits []*structs.DiscoverySplit, chain *structs }, }, nil } - -func makeEnvoyRegexMatch(patt string) *envoymatcher.RegexMatcher { - return &envoymatcher.RegexMatcher{ - EngineType: &envoymatcher.RegexMatcher_GoogleRe2{ - GoogleRe2: &envoymatcher.RegexMatcher_GoogleRE2{}, - }, - Regex: patt, - } -} diff --git a/agent/xds/server.go b/agent/xds/server.go index 5dc5f967e9..09f3c1d3fd 100644 --- a/agent/xds/server.go +++ b/agent/xds/server.go @@ -9,19 +9,14 @@ import ( envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" envoycore "github.com/envoyproxy/go-control-plane/envoy/api/v2/core" - envoyauthz "github.com/envoyproxy/go-control-plane/envoy/service/auth/v2" - envoyauthzalpha "github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha" envoydisco "github.com/envoyproxy/go-control-plane/envoy/service/discovery/v2" "github.com/golang/protobuf/proto" "github.com/hashicorp/consul/acl" - "github.com/hashicorp/consul/agent/cache" - "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/logging" "github.com/hashicorp/consul/tlsutil" "github.com/hashicorp/go-hclog" - rpcstatus "google.golang.org/genproto/googleapis/rpc/status" "google.golang.org/grpc" "google.golang.org/grpc/codes" "google.golang.org/grpc/credentials" @@ -92,13 +87,6 @@ const ( // coupling this to the agent. type ACLResolverFunc func(id string) (acl.Authorizer, error) -// ConnectAuthz is the interface the agent needs to expose to be able to re-use -// the authorization logic between both APIs. -type ConnectAuthz interface { - // ConnectAuthorize is implemented by Agent.ConnectAuthorize - ConnectAuthorize(token string, req *structs.ConnectAuthorizeRequest) (authz bool, reason string, m *cache.ResultMeta, err error) -} - // ServiceChecks is the interface the agent needs to expose // for the xDS server to fetch a service's HTTP check definitions type HTTPCheckFetcher interface { @@ -119,16 +107,14 @@ type ConfigManager interface { Watch(proxyID structs.ServiceID) (<-chan *proxycfg.ConfigSnapshot, proxycfg.CancelFunc) } -// Server represents a gRPC server that can handle both XDS and ext_authz -// requests from Envoy. All of it's public members must be set before the gRPC -// server is started. +// Server represents a gRPC server that can handle xDS requests from Envoy. All +// of it's public members must be set before the gRPC server is started. // // A full description of the XDS protocol can be found at // https://www.envoyproxy.io/docs/envoy/latest/api-docs/xds_protocol type Server struct { Logger hclog.Logger CfgMgr ConfigManager - Authz ConnectAuthz ResolveToken ACLResolverFunc // AuthCheckFrequency is how often we should re-check the credentials used // during a long-lived gRPC Stream after it has been initially established. @@ -490,90 +476,7 @@ func (s *Server) DeltaAggregatedResources(_ envoydisco.AggregatedDiscoveryServic return errors.New("not implemented") } -func deniedResponse(reason string) (*envoyauthz.CheckResponse, error) { - return &envoyauthz.CheckResponse{ - Status: &rpcstatus.Status{ - Code: int32(codes.PermissionDenied), - Message: "Denied: " + reason, - }, - }, nil -} - -// Check implements envoyauthz.AuthorizationServer. -func (s *Server) Check(ctx context.Context, r *envoyauthz.CheckRequest) (*envoyauthz.CheckResponse, error) { - // Sanity checks - if r.Attributes == nil || r.Attributes.Source == nil || r.Attributes.Destination == nil { - return nil, status.Error(codes.InvalidArgument, "source and destination attributes are required") - } - if r.Attributes.Source.Principal == "" || r.Attributes.Destination.Principal == "" { - return nil, status.Error(codes.InvalidArgument, "source and destination Principal are required") - } - - // Parse destination to know the target service - dest, err := connect.ParseCertURIFromString(r.Attributes.Destination.Principal) - if err != nil { - s.Logger.Debug("Connect AuthZ DENIED: bad destination URI", "source", r.Attributes.Source.Principal, "destination", - r.Attributes.Destination.Principal) - // Treat this as an auth error since Envoy has sent something it considers - // valid, it's just not an identity we trust. - return deniedResponse("Destination Principal is not a valid Connect identity") - } - - destID, ok := dest.(*connect.SpiffeIDService) - if !ok { - s.Logger.Debug("Connect AuthZ DENIED: bad destination service ID", "source", r.Attributes.Source.Principal, "destination", - r.Attributes.Destination.Principal) - return deniedResponse("Destination Principal is not a valid Service identity") - } - - // For now we don't validate the trust domain of the _destination_ at all - - // the HTTP Authorize endpoint just accepts a target _service_ and it's - // implicit that the request is for the correct cluster. We might want to - // reconsider this later but plumbing in additional machinery to check the - // clusterID here is not really necessary for now unless Envoys are badly - // configured. Our threat model _requires_ correctly configured and well - // behaved proxies given that they have ACLs to fetch certs and so can do - // whatever they want including not authorizing traffic at all or routing it - // do a different service than they auth'd against. - - // Create an authz request - req := &structs.ConnectAuthorizeRequest{ - Target: destID.Service, - EnterpriseMeta: *destID.GetEnterpriseMeta(), - ClientCertURI: r.Attributes.Source.Principal, - // TODO(banks): need Envoy to support sending cert serial/hash to enforce - // revocation later. - } - token := tokenFromContext(ctx) - authed, reason, _, err := s.Authz.ConnectAuthorize(token, req) - if err != nil { - if err == acl.ErrPermissionDenied { - s.Logger.Debug("Connect AuthZ failed ACL check", "error", err, "source", r.Attributes.Source.Principal, - "dest", r.Attributes.Destination.Principal) - return nil, status.Error(codes.PermissionDenied, err.Error()) - } - s.Logger.Debug("Connect AuthZ failed", "error", err, "source", r.Attributes.Source.Principal, - "destination", r.Attributes.Destination.Principal) - return nil, status.Error(codes.Internal, err.Error()) - } - if !authed { - s.Logger.Debug("Connect AuthZ DENIED", "source", r.Attributes.Source.Principal, - "destination", r.Attributes.Destination.Principal, "reason", reason) - return deniedResponse(reason) - } - - s.Logger.Debug("Connect AuthZ ALLOWED", "source", r.Attributes.Source.Principal, - "destination", r.Attributes.Destination.Principal, "reason", reason) - return &envoyauthz.CheckResponse{ - Status: &rpcstatus.Status{ - Code: int32(codes.OK), - Message: "ALLOWED: " + reason, - }, - }, nil -} - -// GRPCServer returns a server instance that can handle XDS and ext_authz -// requests. +// GRPCServer returns a server instance that can handle xDS requests. func (s *Server) GRPCServer(tlsConfigurator *tlsutil.Configurator) (*grpc.Server, error) { opts := []grpc.ServerOption{ grpc.MaxConcurrentStreams(2048), @@ -587,15 +490,5 @@ func (s *Server) GRPCServer(tlsConfigurator *tlsutil.Configurator) (*grpc.Server srv := grpc.NewServer(opts...) envoydisco.RegisterAggregatedDiscoveryServiceServer(srv, s) - // Envoy 1.10 changed the package for ext_authz from v2alpha to v2. We still - // need to be compatible with 1.9.1 and earlier which only uses v2alpha. While - // there is a deprecated compatibility shim option in 1.10, we want to support - // first class. Fortunately they are wire-compatible so we can just register a - // single service implementation (using the new v2 package definitions) but - // using the old v2alpha regiatration function which just exports it on the - // old path as well. - envoyauthz.RegisterAuthorizationServer(srv, s) - envoyauthzalpha.RegisterAuthorizationServer(srv, s) - return srv, nil } diff --git a/agent/xds/server_test.go b/agent/xds/server_test.go index 08736ed44d..5310df8fbf 100644 --- a/agent/xds/server_test.go +++ b/agent/xds/server_test.go @@ -1,8 +1,6 @@ package xds import ( - "context" - "errors" "strings" "sync" "sync/atomic" @@ -12,7 +10,6 @@ import ( envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" "github.com/stretchr/testify/require" "google.golang.org/grpc/codes" - "google.golang.org/grpc/metadata" "google.golang.org/grpc/status" "github.com/hashicorp/consul/acl" @@ -91,22 +88,6 @@ func (m *testManager) AssertWatchCancelled(t *testing.T, proxyID structs.Service } } -// ConnectAuthorize implements ConnectAuthz -func (m *testManager) ConnectAuthorize(token string, req *structs.ConnectAuthorizeRequest) (authz bool, reason string, meta *cache.ResultMeta, err error) { - m.Lock() - defer m.Unlock() - if res, ok := m.authz[token]; ok { - if res.validate != nil { - if err := res.validate(req); err != nil { - return false, "", nil, err - } - } - return res.authz, res.reason, res.m, res.err - } - // Default allow but with reason that won't match by accident in a test case - return true, "OK: allowed by default test implementation", nil, nil -} - func TestServer_StreamAggregatedResources_BasicProtocol(t *testing.T) { logger := testutil.Logger(t) mgr := newTestManager(t) @@ -120,7 +101,6 @@ func TestServer_StreamAggregatedResources_BasicProtocol(t *testing.T) { s := Server{ Logger: logger, CfgMgr: mgr, - Authz: mgr, ResolveToken: aclResolve, } s.Initialize() @@ -170,7 +150,7 @@ func TestServer_StreamAggregatedResources_BasicProtocol(t *testing.T) { envoy.SendReq(t, EndpointType, 1, 2) // And should get a response immediately. - assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, "", 1, 3)) + assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, 1, 3)) // Now send Route request along with next listener one envoy.SendReq(t, RouteType, 0, 0) @@ -197,7 +177,7 @@ func TestServer_StreamAggregatedResources_BasicProtocol(t *testing.T) { // which is reasonable anyway to ensure consistency of the config Envoy sees. assertResponseSent(t, envoy.stream.sendCh, expectClustersJSON(snap, 2, 4)) assertResponseSent(t, envoy.stream.sendCh, expectEndpointsJSON(2, 5)) - assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, "", 2, 6)) + assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, 2, 6)) // Let's pretend that Envoy doesn't like that new listener config. It will ACK // all the others (same version) but NACK the listener. This is the most @@ -234,7 +214,7 @@ func TestServer_StreamAggregatedResources_BasicProtocol(t *testing.T) { assertResponseSent(t, envoy.stream.sendCh, expectClustersJSON(snap, 3, 7)) assertResponseSent(t, envoy.stream.sendCh, expectEndpointsJSON(3, 8)) - assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, "", 3, 9)) + assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, 3, 9)) } func expectEndpointsJSON(v, n uint64) string { @@ -474,7 +454,6 @@ func TestServer_StreamAggregatedResources_ACLEnforcement(t *testing.T) { s := Server{ Logger: logger, CfgMgr: mgr, - Authz: mgr, ResolveToken: aclResolve, } s.Initialize() @@ -501,7 +480,7 @@ func TestServer_StreamAggregatedResources_ACLEnforcement(t *testing.T) { envoy.SendReq(t, ListenerType, 0, 0) if !tt.wantDenied { - assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, tt.token, 1, 1)) + assertResponseSent(t, envoy.stream.sendCh, expectListenerJSON(t, snap, 1, 1)) // Close the client stream since all is well. We _don't_ do this in the // expected error case because we want to verify the error closes the // stream from server side. @@ -549,7 +528,6 @@ func TestServer_StreamAggregatedResources_ACLTokenDeleted_StreamTerminatedDuring s := Server{ Logger: logger, CfgMgr: mgr, - Authz: mgr, ResolveToken: aclResolve, AuthCheckFrequency: 1 * time.Hour, // make sure this doesn't kick in } @@ -641,7 +619,6 @@ func TestServer_StreamAggregatedResources_ACLTokenDeleted_StreamTerminatedInBack s := Server{ Logger: logger, CfgMgr: mgr, - Authz: mgr, ResolveToken: aclResolve, AuthCheckFrequency: 100 * time.Millisecond, // Make this short. } @@ -716,144 +693,6 @@ func TestServer_StreamAggregatedResources_ACLTokenDeleted_StreamTerminatedInBack } } -// This tests the ext_authz service method that implements connect authz. -func TestServer_Check(t *testing.T) { - - tests := []struct { - name string - source string - dest string - sourcePrincipal string - destPrincipal string - authzResult connectAuthzResult - wantErr bool - wantErrCode codes.Code - wantDenied bool - wantReason string - }{ - { - name: "auth allowed", - source: "web", - dest: "db", - authzResult: connectAuthzResult{true, "default allow", nil, nil, nil}, - wantDenied: false, - wantReason: "default allow", - }, - { - name: "auth denied", - source: "web", - dest: "db", - authzResult: connectAuthzResult{false, "default deny", nil, nil, nil}, - wantDenied: true, - wantReason: "default deny", - }, - { - name: "no source", - sourcePrincipal: "", - dest: "db", - // Should never make it to authz call. - wantErr: true, - wantErrCode: codes.InvalidArgument, - }, - { - name: "no dest", - source: "web", - dest: "", - // Should never make it to authz call. - wantErr: true, - wantErrCode: codes.InvalidArgument, - }, - { - name: "dest invalid format", - source: "web", - destPrincipal: "not-a-spiffe-id", - // Should never make it to authz call. - wantDenied: true, - wantReason: "Destination Principal is not a valid Connect identity", - }, - { - name: "dest not a service URI", - source: "web", - destPrincipal: "spiffe://trust-domain.consul", - // Should never make it to authz call. - wantDenied: true, - wantReason: "Destination Principal is not a valid Service identity", - }, - { - name: "ACL not got permission for authz call", - source: "web", - dest: "db", - authzResult: connectAuthzResult{false, "", nil, acl.ErrPermissionDenied, nil}, - wantErr: true, - wantErrCode: codes.PermissionDenied, - }, - { - name: "Random error running authz", - source: "web", - dest: "db", - authzResult: connectAuthzResult{false, "", nil, errors.New("gremlin attack"), nil}, - wantErr: true, - wantErrCode: codes.Internal, - }, - } - - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - token := "my-real-acl-token" - logger := testutil.Logger(t) - mgr := newTestManager(t) - - // Setup expected auth result against that token no lock as no other - // goroutine is touching this yet. - mgr.authz[token] = tt.authzResult - - aclResolve := func(id string) (acl.Authorizer, error) { - return nil, nil - } - envoy := NewTestEnvoy(t, "web-sidecar-proxy", token) - defer envoy.Close() - - s := Server{ - Logger: logger, - CfgMgr: mgr, - Authz: mgr, - ResolveToken: aclResolve, - } - s.Initialize() - - // Create a context with the correct token - ctx := metadata.NewIncomingContext(context.Background(), - metadata.Pairs("x-consul-token", token)) - - r := TestCheckRequest(t, tt.source, tt.dest) - // If sourcePrincipal is set override, or if source is also not set - // explicitly override to empty. - if tt.sourcePrincipal != "" || tt.source == "" { - r.Attributes.Source.Principal = tt.sourcePrincipal - } - if tt.destPrincipal != "" || tt.dest == "" { - r.Attributes.Destination.Principal = tt.destPrincipal - } - resp, err := s.Check(ctx, r) - // Denied is not an error - if tt.wantErr { - require.Error(t, err) - grpcStatus := status.Convert(err) - require.Equal(t, tt.wantErrCode, grpcStatus.Code()) - require.Nil(t, resp) - return - } - require.NoError(t, err) - if tt.wantDenied { - require.Equal(t, int32(codes.PermissionDenied), resp.Status.Code) - } else { - require.Equal(t, int32(codes.OK), resp.Status.Code) - } - require.Contains(t, resp.Status.Message, tt.wantReason) - }) - } -} - func TestServer_StreamAggregatedResources_IngressEmptyResponse(t *testing.T) { logger := testutil.Logger(t) mgr := newTestManager(t) @@ -867,7 +706,6 @@ func TestServer_StreamAggregatedResources_IngressEmptyResponse(t *testing.T) { s := Server{ Logger: logger, CfgMgr: mgr, - Authz: mgr, ResolveToken: aclResolve, } s.Initialize() diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-12-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-12-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-13-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-13-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-14-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-14-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-15-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-and-overrides.envoy-1-15-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-12-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-13-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-14-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-15-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-chain-external-sni.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-12-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-12-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-13-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-13-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-14-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-14-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-15-x.golden index a911cd1890..e835edf4d1 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-grpc-chain.envoy-1-15-x.golden @@ -106,18 +106,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-12-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-12-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-13-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-13-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-14-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-14-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-15-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http-chain.envoy-1-15-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-12-x.golden index 6994537d4f..11d1ddf64f 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-12-x.golden @@ -101,18 +101,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-13-x.golden index 6994537d4f..11d1ddf64f 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-13-x.golden @@ -101,18 +101,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-14-x.golden index 6994537d4f..11d1ddf64f 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-14-x.golden @@ -101,18 +101,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-15-x.golden index 6994537d4f..11d1ddf64f 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-http2-chain.envoy-1-15-x.golden @@ -101,18 +101,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-12-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-13-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-14-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-15-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-local-gateway.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-12-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-13-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-14-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-15-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain-failover-through-remote-gateway.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-12-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-12-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-13-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-13-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-14-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-14-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-15-x.golden b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-15-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/connect-proxy-with-tcp-chain.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-12-x.golden new file mode 100644 index 0000000000..21137f9ebb --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-12-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-13-x.golden new file mode 100644 index 0000000000..21137f9ebb --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-13-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-14-x.golden new file mode 100644 index 0000000000..21137f9ebb --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-14-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-15-x.golden new file mode 100644 index 0000000000..21137f9ebb --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2-typed.envoy-1-15-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-12-x.golden new file mode 100644 index 0000000000..301330c589 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-12-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-13-x.golden new file mode 100644 index 0000000000..301330c589 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-13-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-14-x.golden new file mode 100644 index 0000000000..301330c589 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-14-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-15-x.golden new file mode 100644 index 0000000000..301330c589 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-2.envoy-1-15-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-12-x.golden new file mode 100644 index 0000000000..23cf9572e0 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-12-x.golden @@ -0,0 +1,107 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + }, + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "random-cluster", + "stat_prefix": "foo-stats" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-13-x.golden new file mode 100644 index 0000000000..23cf9572e0 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-13-x.golden @@ -0,0 +1,107 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + }, + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "random-cluster", + "stat_prefix": "foo-stats" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-14-x.golden new file mode 100644 index 0000000000..23cf9572e0 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-14-x.golden @@ -0,0 +1,107 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + }, + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "random-cluster", + "stat_prefix": "foo-stats" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-15-x.golden new file mode 100644 index 0000000000..23cf9572e0 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-missing.envoy-1-15-x.golden @@ -0,0 +1,107 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + }, + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "random-cluster", + "stat_prefix": "foo-stats" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-12-x.golden new file mode 100644 index 0000000000..0743cf8c84 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-12-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-13-x.golden new file mode 100644 index 0000000000..0743cf8c84 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-13-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-14-x.golden new file mode 100644 index 0000000000..0743cf8c84 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-14-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-15-x.golden new file mode 100644 index 0000000000..0743cf8c84 --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http-typed.envoy-1-15-x.golden @@ -0,0 +1,131 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "typedConfig": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + "routeConfig": { + "name": "public_listener", + "virtualHosts": [ + { + "name": "public_listener", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + }, + "httpFilters": [ + { + "name": "envoy.filters.http.rbac", + "config": { + "rules": { + } + } + }, + { + "name": "envoy.router" + } + ] + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-12-x.golden new file mode 100644 index 0000000000..e94c7711fc --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-12-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-13-x.golden new file mode 100644 index 0000000000..e94c7711fc --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-13-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-14-x.golden new file mode 100644 index 0000000000..e94c7711fc --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-14-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-15-x.golden new file mode 100644 index 0000000000..e94c7711fc --- /dev/null +++ b/agent/xds/testdata/listeners/custom-public-listener-http.envoy-1-15-x.golden @@ -0,0 +1,130 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "custom-public-listen", + "address": { + "socketAddress": { + "address": "11.11.11.11", + "portValue": 11111 + } + }, + "filterChains": [ + { + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "requireClientCertificate": true + }, + "filters": [ + { + "name": "envoy.http_connection_manager", + "config": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "route_config": { + "name": "public_listener", + "virtual_hosts": [ + { + "domains": [ + "*" + ], + "name": "public_listener", + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "random-cluster" + } + } + ] + } + ] + } + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "db:127.0.0.1:9191", + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 9191 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_db_tcp" + } + } + ] + } + ] + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Listener", + "name": "prepared_query:geo-cache:127.10.10.10:8181", + "address": { + "socketAddress": { + "address": "127.10.10.10", + "portValue": 8181 + } + }, + "filterChains": [ + { + "filters": [ + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "upstream_prepared_query_geo-cache_tcp" + } + } + ] + } + ] + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Listener", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-12-x.golden index 4013593d99..23cf9572e0 100644 --- a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-12-x.golden @@ -37,18 +37,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-13-x.golden index 4013593d99..23cf9572e0 100644 --- a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-13-x.golden @@ -37,18 +37,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-14-x.golden index 4013593d99..23cf9572e0 100644 --- a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-14-x.golden @@ -37,18 +37,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-15-x.golden index 4013593d99..23cf9572e0 100644 --- a/agent/xds/testdata/listeners/custom-public-listener.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/custom-public-listener.envoy-1-15-x.golden @@ -37,18 +37,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-12-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-13-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-14-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-15-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream-typed-ignored-with-disco-chain.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream.envoy-1-12-x.golden b/agent/xds/testdata/listeners/custom-upstream.envoy-1-12-x.golden index ad3951fce4..2a10b9b05d 100644 --- a/agent/xds/testdata/listeners/custom-upstream.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream.envoy-1-13-x.golden b/agent/xds/testdata/listeners/custom-upstream.envoy-1-13-x.golden index ad3951fce4..2a10b9b05d 100644 --- a/agent/xds/testdata/listeners/custom-upstream.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream.envoy-1-14-x.golden b/agent/xds/testdata/listeners/custom-upstream.envoy-1-14-x.golden index ad3951fce4..2a10b9b05d 100644 --- a/agent/xds/testdata/listeners/custom-upstream.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/custom-upstream.envoy-1-15-x.golden b/agent/xds/testdata/listeners/custom-upstream.envoy-1-15-x.golden index ad3951fce4..2a10b9b05d 100644 --- a/agent/xds/testdata/listeners/custom-upstream.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/custom-upstream.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/defaults.envoy-1-12-x.golden b/agent/xds/testdata/listeners/defaults.envoy-1-12-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/defaults.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/defaults.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/defaults.envoy-1-13-x.golden b/agent/xds/testdata/listeners/defaults.envoy-1-13-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/defaults.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/defaults.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/defaults.envoy-1-14-x.golden b/agent/xds/testdata/listeners/defaults.envoy-1-14-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/defaults.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/defaults.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/defaults.envoy-1-15-x.golden b/agent/xds/testdata/listeners/defaults.envoy-1-15-x.golden index 8908c8c0ef..d43380ee1a 100644 --- a/agent/xds/testdata/listeners/defaults.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/defaults.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-12-x.golden b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-12-x.golden index 60a30df1f3..485f366fe1 100644 --- a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-12-x.golden @@ -121,18 +121,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-13-x.golden b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-13-x.golden index 60a30df1f3..485f366fe1 100644 --- a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-13-x.golden @@ -121,18 +121,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-14-x.golden b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-14-x.golden index 60a30df1f3..485f366fe1 100644 --- a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-14-x.golden @@ -121,18 +121,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-15-x.golden b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-15-x.golden index 60a30df1f3..485f366fe1 100644 --- a/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-local-app-paths.envoy-1-15-x.golden @@ -121,18 +121,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-12-x.golden b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-12-x.golden index 1d9afe4356..d16f93c993 100644 --- a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-12-x.golden @@ -123,18 +123,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-13-x.golden b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-13-x.golden index 1d9afe4356..d16f93c993 100644 --- a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-13-x.golden @@ -123,18 +123,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-14-x.golden b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-14-x.golden index 1d9afe4356..d16f93c993 100644 --- a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-14-x.golden @@ -123,18 +123,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-15-x.golden b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-15-x.golden index 1d9afe4356..d16f93c993 100644 --- a/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/expose-paths-new-cluster-http2.envoy-1-15-x.golden @@ -123,18 +123,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/http-public-listener.envoy-1-12-x.golden b/agent/xds/testdata/listeners/http-public-listener.envoy-1-12-x.golden index 9641c6f353..f8eb24c538 100644 --- a/agent/xds/testdata/listeners/http-public-listener.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/http-public-listener.envoy-1-12-x.golden @@ -82,27 +82,17 @@ "requireClientCertificate": true }, "filters": [ - { - "name": "envoy.ext_authz", - "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] - }, - "stat_prefix": "connect_authz" - } - }, { "name": "envoy.http_connection_manager", "config": { "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, { "name": "envoy.router" } diff --git a/agent/xds/testdata/listeners/http-public-listener.envoy-1-13-x.golden b/agent/xds/testdata/listeners/http-public-listener.envoy-1-13-x.golden index 9641c6f353..f8eb24c538 100644 --- a/agent/xds/testdata/listeners/http-public-listener.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/http-public-listener.envoy-1-13-x.golden @@ -82,27 +82,17 @@ "requireClientCertificate": true }, "filters": [ - { - "name": "envoy.ext_authz", - "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] - }, - "stat_prefix": "connect_authz" - } - }, { "name": "envoy.http_connection_manager", "config": { "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, { "name": "envoy.router" } diff --git a/agent/xds/testdata/listeners/http-public-listener.envoy-1-14-x.golden b/agent/xds/testdata/listeners/http-public-listener.envoy-1-14-x.golden index 9641c6f353..f8eb24c538 100644 --- a/agent/xds/testdata/listeners/http-public-listener.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/http-public-listener.envoy-1-14-x.golden @@ -82,27 +82,17 @@ "requireClientCertificate": true }, "filters": [ - { - "name": "envoy.ext_authz", - "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] - }, - "stat_prefix": "connect_authz" - } - }, { "name": "envoy.http_connection_manager", "config": { "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, { "name": "envoy.router" } diff --git a/agent/xds/testdata/listeners/http-public-listener.envoy-1-15-x.golden b/agent/xds/testdata/listeners/http-public-listener.envoy-1-15-x.golden index 9641c6f353..f8eb24c538 100644 --- a/agent/xds/testdata/listeners/http-public-listener.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/http-public-listener.envoy-1-15-x.golden @@ -82,27 +82,17 @@ "requireClientCertificate": true }, "filters": [ - { - "name": "envoy.ext_authz", - "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] - }, - "stat_prefix": "connect_authz" - } - }, { "name": "envoy.http_connection_manager", "config": { "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, { "name": "envoy.router" } diff --git a/agent/xds/testdata/listeners/http-upstream.envoy-1-12-x.golden b/agent/xds/testdata/listeners/http-upstream.envoy-1-12-x.golden index d645db4e74..2acb211dc5 100644 --- a/agent/xds/testdata/listeners/http-upstream.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/http-upstream.envoy-1-12-x.golden @@ -113,18 +113,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/http-upstream.envoy-1-13-x.golden b/agent/xds/testdata/listeners/http-upstream.envoy-1-13-x.golden index d645db4e74..2acb211dc5 100644 --- a/agent/xds/testdata/listeners/http-upstream.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/http-upstream.envoy-1-13-x.golden @@ -113,18 +113,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/http-upstream.envoy-1-14-x.golden b/agent/xds/testdata/listeners/http-upstream.envoy-1-14-x.golden index d645db4e74..2acb211dc5 100644 --- a/agent/xds/testdata/listeners/http-upstream.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/http-upstream.envoy-1-14-x.golden @@ -113,18 +113,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/http-upstream.envoy-1-15-x.golden b/agent/xds/testdata/listeners/http-upstream.envoy-1-15-x.golden index d645db4e74..2acb211dc5 100644 --- a/agent/xds/testdata/listeners/http-upstream.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/http-upstream.envoy-1-15-x.golden @@ -113,18 +113,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-12-x.golden b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-12-x.golden index fe52dbd0ff..2dbd28ccd2 100644 --- a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-13-x.golden b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-13-x.golden index fe52dbd0ff..2dbd28ccd2 100644 --- a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-14-x.golden b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-14-x.golden index fe52dbd0ff..2dbd28ccd2 100644 --- a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-15-x.golden b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-15-x.golden index fe52dbd0ff..2dbd28ccd2 100644 --- a/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address-port.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-12-x.golden b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-12-x.golden index 1166269315..3340f9ca1c 100644 --- a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-13-x.golden b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-13-x.golden index 1166269315..3340f9ca1c 100644 --- a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-14-x.golden b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-14-x.golden index 1166269315..3340f9ca1c 100644 --- a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-15-x.golden b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-15-x.golden index 1166269315..3340f9ca1c 100644 --- a/agent/xds/testdata/listeners/listener-bind-address.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-address.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-12-x.golden b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-12-x.golden index f82c174425..ead52f0a5c 100644 --- a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-12-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-13-x.golden b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-13-x.golden index f82c174425..ead52f0a5c 100644 --- a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-13-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-14-x.golden b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-14-x.golden index f82c174425..ead52f0a5c 100644 --- a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-14-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-15-x.golden b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-15-x.golden index f82c174425..ead52f0a5c 100644 --- a/agent/xds/testdata/listeners/listener-bind-port.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/listener-bind-port.envoy-1-15-x.golden @@ -83,18 +83,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-12-x.golden b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-12-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-12-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-13-x.golden b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-13-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-13-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-14-x.golden b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-14-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-14-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-15-x.golden b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-15-x.golden index ddbdd99142..a2ecc48cd9 100644 --- a/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/splitter-with-resolver-redirect.envoy-1-15-x.golden @@ -99,18 +99,9 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden index ddbac0b0db..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_foo_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_foo_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_foo_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } @@ -309,29 +261,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_wan_tcp" } } @@ -368,29 +308,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_wan_tcp" } } @@ -427,29 +355,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_wan_tcp" } } @@ -486,29 +402,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden index ddbac0b0db..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_foo_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_foo_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_foo_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } @@ -309,29 +261,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_wan_tcp" } } @@ -368,29 +308,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_wan_tcp" } } @@ -427,29 +355,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_wan_tcp" } } @@ -486,29 +402,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden index ddbac0b0db..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_foo_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_foo_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_foo_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } @@ -309,29 +261,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_wan_tcp" } } @@ -368,29 +308,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_wan_tcp" } } @@ -427,29 +355,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_wan_tcp" } } @@ -486,29 +402,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden index ddbac0b0db..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_foo_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_foo_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_foo_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } @@ -309,29 +261,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_wan_tcp" } } @@ -368,29 +308,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_wan_tcp" } } @@ -427,29 +355,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_wan_tcp" } } @@ -486,29 +402,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden index 6b7f19cbc4..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden index 6b7f19cbc4..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden index 6b7f19cbc4..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden index 6b7f19cbc4..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden index 46ae83eb0a..c77782da28 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -278,29 +230,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -337,29 +277,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden index 46ae83eb0a..c77782da28 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -278,29 +230,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -337,29 +277,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden index 46ae83eb0a..c77782da28 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -278,29 +230,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -337,29 +277,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden index 46ae83eb0a..c77782da28 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -278,29 +230,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } @@ -337,29 +277,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden index 3b17879c80..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden index 3b17879c80..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden index 3b17879c80..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden index 3b17879c80..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden @@ -42,29 +42,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_api_default_tcp" } } @@ -101,29 +89,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_cache_default_tcp" } } @@ -160,29 +136,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_db_default_tcp" } } @@ -219,29 +183,17 @@ }, "filters": [ { - "name": "envoy.ext_authz", + "name": "envoy.filters.network.rbac", "config": { - "grpc_service": { - "envoy_grpc": { - "cluster_name": "local_agent" - }, - "initial_metadata": [ - { - "key": "x-consul-token", - "value": "my-token" - } - ] + "rules": { }, "stat_prefix": "connect_authz" } }, - { - "name": "envoy.filters.network.sni_cluster" - }, { "name": "envoy.tcp_proxy", "config": { - "cluster": "", + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "stat_prefix": "terminating_gateway_default_web_default_tcp" } } diff --git a/agent/xds/testdata/rbac/default-allow-kitchen-sink.golden b/agent/xds/testdata/rbac/default-allow-kitchen-sink.golden new file mode 100644 index 0000000000..7d2fd8ef6b --- /dev/null +++ b/agent/xds/testdata/rbac/default-allow-kitchen-sink.golden @@ -0,0 +1,72 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "action": "DENY", + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/web$" + } + } + } + }, + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/cron$" + } + } + } + }, + { + "and_ids": { + "ids": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/[^/]+$" + } + } + } + }, + { + "not_id": { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/unsafe$" + } + } + } + } + } + ] + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testdata/rbac/default-allow-one-deny.golden b/agent/xds/testdata/rbac/default-allow-one-deny.golden new file mode 100644 index 0000000000..7c04026c9c --- /dev/null +++ b/agent/xds/testdata/rbac/default-allow-one-deny.golden @@ -0,0 +1,31 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "action": "DENY", + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/web$" + } + } + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testdata/rbac/default-allow-service-wildcard-deny.golden b/agent/xds/testdata/rbac/default-allow-service-wildcard-deny.golden new file mode 100644 index 0000000000..7780f6c205 --- /dev/null +++ b/agent/xds/testdata/rbac/default-allow-service-wildcard-deny.golden @@ -0,0 +1,31 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "action": "DENY", + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/[^/]+$" + } + } + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testdata/rbac/default-deny-allow-deny.golden b/agent/xds/testdata/rbac/default-deny-allow-deny.golden new file mode 100644 index 0000000000..1126b28ee1 --- /dev/null +++ b/agent/xds/testdata/rbac/default-deny-allow-deny.golden @@ -0,0 +1,49 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "and_ids": { + "ids": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/[^/]+$" + } + } + } + }, + { + "not_id": { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/web$" + } + } + } + } + } + ] + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testdata/rbac/default-deny-kitchen-sink.golden b/agent/xds/testdata/rbac/default-deny-kitchen-sink.golden new file mode 100644 index 0000000000..1f5e1f1346 --- /dev/null +++ b/agent/xds/testdata/rbac/default-deny-kitchen-sink.golden @@ -0,0 +1,71 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/web$" + } + } + } + }, + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/cron$" + } + } + } + }, + { + "and_ids": { + "ids": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/[^/]+$" + } + } + } + }, + { + "not_id": { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/unsafe$" + } + } + } + } + } + ] + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testdata/rbac/default-deny-mixed-precedence.golden b/agent/xds/testdata/rbac/default-deny-mixed-precedence.golden new file mode 100644 index 0000000000..8b879b8656 --- /dev/null +++ b/agent/xds/testdata/rbac/default-deny-mixed-precedence.golden @@ -0,0 +1,30 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/web$" + } + } + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testdata/rbac/default-deny-one-allow.golden b/agent/xds/testdata/rbac/default-deny-one-allow.golden new file mode 100644 index 0000000000..8b879b8656 --- /dev/null +++ b/agent/xds/testdata/rbac/default-deny-one-allow.golden @@ -0,0 +1,30 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/web$" + } + } + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testdata/rbac/default-deny-service-wildcard-allow.golden b/agent/xds/testdata/rbac/default-deny-service-wildcard-allow.golden new file mode 100644 index 0000000000..e2c36db993 --- /dev/null +++ b/agent/xds/testdata/rbac/default-deny-service-wildcard-allow.golden @@ -0,0 +1,30 @@ +{ + "name": "envoy.filters.network.rbac", + "config": { + "rules": { + "policies": { + "consul-intentions": { + "permissions": [ + { + "any": true + } + ], + "principals": [ + { + "authenticated": { + "principal_name": { + "safe_regex": { + "google_re2": { + }, + "regex": "^spiffe://[^/]+/ns/default/dc/[^/]+/svc/[^/]+$" + } + } + } + } + ] + } + } + }, + "stat_prefix": "connect_authz" + } +} \ No newline at end of file diff --git a/agent/xds/testing.go b/agent/xds/testing.go index 1363b90846..8a635114a2 100644 --- a/agent/xds/testing.go +++ b/agent/xds/testing.go @@ -4,16 +4,20 @@ import ( "context" "fmt" "io" + "strconv" + "strings" "sync" "time" envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" envoycore "github.com/envoyproxy/go-control-plane/envoy/api/v2/core" envoyauth "github.com/envoyproxy/go-control-plane/envoy/service/auth/v2" + envoytype "github.com/envoyproxy/go-control-plane/envoy/type" "github.com/mitchellh/go-testing-interface" "google.golang.org/grpc/metadata" "github.com/hashicorp/consul/agent/connect" + "github.com/hashicorp/consul/agent/xds/proxysupport" ) // TestADSStream mocks @@ -119,16 +123,53 @@ func hexString(v uint64) string { return fmt.Sprintf("%08x", v) } +func stringToEnvoyVersion(vs string) (*envoytype.SemanticVersion, bool) { + parts := strings.Split(vs, ".") + if len(parts) != 3 { + return nil, false + } + + major, err := strconv.Atoi(parts[0]) + if err != nil { + return nil, false + } + minor, err := strconv.Atoi(parts[1]) + if err != nil { + return nil, false + } + patch, err := strconv.Atoi(parts[2]) + if err != nil { + return nil, false + } + + return &envoytype.SemanticVersion{ + MajorNumber: uint32(major), + MinorNumber: uint32(minor), + Patch: uint32(patch), + }, true +} + // SendReq sends a request from the test server. func (e *TestEnvoy) SendReq(t testing.T, typeURL string, version, nonce uint64) { e.Lock() defer e.Unlock() + ev, valid := stringToEnvoyVersion(proxysupport.EnvoyVersions[0]) + if !valid { + t.Fatal("envoy version is not valid: %s", proxysupport.EnvoyVersions[0]) + } + req := &envoy.DiscoveryRequest{ VersionInfo: hexString(version), Node: &envoycore.Node{ - Id: e.proxyID, - Cluster: e.proxyID, + Id: e.proxyID, + Cluster: e.proxyID, + UserAgentName: "envoy", + UserAgentVersionType: &envoycore.Node_UserAgentBuildVersion{ + UserAgentBuildVersion: &envoycore.BuildVersion{ + Version: ev, + }, + }, }, ResponseNonce: hexString(nonce), TypeUrl: typeURL, diff --git a/go.mod b/go.mod index 12f46bd676..ba7e7c0e76 100644 --- a/go.mod +++ b/go.mod @@ -87,7 +87,6 @@ require ( golang.org/x/tools v0.0.0-20200513154647-78b527d18275 // indirect google.golang.org/api v0.9.0 // indirect google.golang.org/appengine v1.6.0 // indirect - google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 google.golang.org/grpc v1.25.1 gopkg.in/square/go-jose.v2 v2.4.1 k8s.io/api v0.16.9 diff --git a/test/integration/connect/envoy/case-basic/verify.bats b/test/integration/connect/envoy/case-basic/verify.bats index 14ab5d2858..d5c7bf2459 100644 --- a/test/integration/connect/envoy/case-basic/verify.bats +++ b/test/integration/connect/envoy/case-basic/verify.bats @@ -35,3 +35,16 @@ load helpers [ "$status" -eq 0 ] [ "$output" = "hello" ] } + +@test "s1 proxy should have been configured with one rbac listener filter at L4" { + LISTEN_FILTERS=$(get_envoy_listener_filters localhost:19000) + PUB=$(echo "$LISTEN_FILTERS" | grep -E "^public_listener:" | cut -f 2 -d ' ' ) + UPS=$(echo "$LISTEN_FILTERS" | grep -E "^s2:" | cut -f 2 -d ' ' ) + + echo "LISTEN_FILTERS = $LISTEN_FILTERS" + echo "PUB = $PUB" + echo "UPS = $UPS" + + [ "$PUB" = "envoy.filters.network.rbac,envoy.tcp_proxy" ] + [ "$UPS" = "envoy.tcp_proxy" ] +} diff --git a/test/integration/connect/envoy/case-http/verify.bats b/test/integration/connect/envoy/case-http/verify.bats index dfcdecb4f3..33ba342aff 100644 --- a/test/integration/connect/envoy/case-http/verify.bats +++ b/test/integration/connect/envoy/case-http/verify.bats @@ -42,6 +42,39 @@ load helpers echo "PUB = $PUB" echo "UPS = $UPS" - [ "$PUB" = "envoy.ext_authz,envoy.http_connection_manager" ] + [ "$PUB" = "envoy.http_connection_manager" ] [ "$UPS" = "envoy.http_connection_manager" ] } + +@test "s2 proxy should have been configured with an http connection manager" { + LISTEN_FILTERS=$(get_envoy_listener_filters localhost:19001) + PUB=$(echo "$LISTEN_FILTERS" | grep -E "^public_listener:" | cut -f 2 -d ' ' ) + + echo "LISTEN_FILTERS = $LISTEN_FILTERS" + echo "PUB = $PUB" + + [ "$PUB" = "envoy.http_connection_manager" ] +} + +@test "s1 proxy should have been configured with http rbac filters" { + HTTP_FILTERS=$(get_envoy_http_filters localhost:19000) + PUB=$(echo "$HTTP_FILTERS" | grep -E "^public_listener:" | cut -f 2 -d ' ' ) + UPS=$(echo "$HTTP_FILTERS" | grep -E "^s2:" | cut -f 2 -d ' ' ) + + echo "HTTP_FILTERS = $HTTP_FILTERS" + echo "PUB = $PUB" + echo "UPS = $UPS" + + [ "$PUB" = "envoy.filters.http.rbac,envoy.router" ] + [ "$UPS" = "envoy.router" ] +} + +@test "s2 proxy should have been configured with http rbac filters" { + HTTP_FILTERS=$(get_envoy_http_filters localhost:19001) + PUB=$(echo "$HTTP_FILTERS" | grep -E "^public_listener:" | cut -f 2 -d ' ' ) + + echo "HTTP_FILTERS = $HTTP_FILTERS" + echo "PUB = $PUB" + + [ "$PUB" = "envoy.filters.http.rbac,envoy.router" ] +} diff --git a/test/integration/connect/envoy/helpers.bash b/test/integration/connect/envoy/helpers.bash index 5b103678d2..0ba7e2bccb 100755 --- a/test/integration/connect/envoy/helpers.bash +++ b/test/integration/connect/envoy/helpers.bash @@ -169,6 +169,22 @@ function get_envoy_listener_filters { echo "$output" | jq --raw-output "$QUERY" } +function get_envoy_http_filters { + local HOSTPORT=$1 + run retry_default curl -s -f $HOSTPORT/config_dump + [ "$status" -eq 0 ] + local ENVOY_VERSION=$(echo $output | jq --raw-output '.configs[0].bootstrap.node.metadata.envoy_version') + local QUERY='' + # from 1.13.0 on the config json looks slightly different + # 1.10.x, 1.11.x, 1.12.x are not affected + if [[ "$ENVOY_VERSION" =~ ^1\.1[012]\. ]]; then + QUERY='.configs[2].dynamic_active_listeners[].listener | "\(.name) \( .filter_chains[0].filters[] | select(.name == "envoy.http_connection_manager") | .config.http_filters | map(.name) | join(","))"' + else + QUERY='.configs[2].dynamic_listeners[].active_state.listener | "\(.name) \( .filter_chains[0].filters[] | select(.name == "envoy.http_connection_manager") | .config.http_filters | map(.name) | join(","))"' + fi + echo "$output" | jq --raw-output "$QUERY" +} + function get_envoy_cluster_config { local HOSTPORT=$1 local CLUSTER_NAME=$2 @@ -529,12 +545,13 @@ function must_fail_tcp_connection { # to generate a 503 response since the upstreams have refused connection. function must_fail_http_connection { # Attempt to curl through upstream - run curl -s -i -d hello $1 + run curl -s -i -d hello "$1" echo "OUTPUT $output" + local expect_response="${2:-403 Forbidden}" # Should fail request with 503 - echo "$output" | grep '503 Service Unavailable' + echo "$output" | grep "${expect_response}" } function gen_envoy_bootstrap { diff --git a/test/integration/connect/envoy/test-envoy-versions.sh b/test/integration/connect/envoy/test-envoy-versions.sh index e16243ba75..961e1219aa 100755 --- a/test/integration/connect/envoy/test-envoy-versions.sh +++ b/test/integration/connect/envoy/test-envoy-versions.sh @@ -6,29 +6,15 @@ unset CDPATH cd "$(dirname "$0")" -# MISSING: 1.14.0 -# MISSING: 1.12.5 versions=( - 1.14.3 - 1.14.2 - 1.14.1 - 1.13.3 - 1.13.2 - 1.13.1 - 1.13.0 - 1.12.4 - 1.12.3 - 1.12.2 - 1.12.1 - 1.12.0 - 1.11.2 - 1.11.1 - 1.11.0 - 1.10.0 + 1.15.0 + 1.14.4 + 1.13.4 + 1.12.6 ) for v in "${versions[@]}"; do echo "ENVOY_VERSION=${v}" export ENVOY_VERSION="${v}" - go test -tags integration + go test -tags integration "$@" done diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.go new file mode 100644 index 0000000000..c7b08437fb --- /dev/null +++ b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.go @@ -0,0 +1,142 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: envoy/config/filter/http/rbac/v2/rbac.proto + +package envoy_config_filter_http_rbac_v2 + +import ( + fmt "fmt" + _ "github.com/cncf/udpa/go/udpa/annotations" + v2 "github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2" + _ "github.com/envoyproxy/protoc-gen-validate/validate" + proto "github.com/golang/protobuf/proto" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +type RBAC struct { + Rules *v2.RBAC `protobuf:"bytes,1,opt,name=rules,proto3" json:"rules,omitempty"` + ShadowRules *v2.RBAC `protobuf:"bytes,2,opt,name=shadow_rules,json=shadowRules,proto3" json:"shadow_rules,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RBAC) Reset() { *m = RBAC{} } +func (m *RBAC) String() string { return proto.CompactTextString(m) } +func (*RBAC) ProtoMessage() {} +func (*RBAC) Descriptor() ([]byte, []int) { + return fileDescriptor_15d628c6558085a7, []int{0} +} + +func (m *RBAC) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RBAC.Unmarshal(m, b) +} +func (m *RBAC) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RBAC.Marshal(b, m, deterministic) +} +func (m *RBAC) XXX_Merge(src proto.Message) { + xxx_messageInfo_RBAC.Merge(m, src) +} +func (m *RBAC) XXX_Size() int { + return xxx_messageInfo_RBAC.Size(m) +} +func (m *RBAC) XXX_DiscardUnknown() { + xxx_messageInfo_RBAC.DiscardUnknown(m) +} + +var xxx_messageInfo_RBAC proto.InternalMessageInfo + +func (m *RBAC) GetRules() *v2.RBAC { + if m != nil { + return m.Rules + } + return nil +} + +func (m *RBAC) GetShadowRules() *v2.RBAC { + if m != nil { + return m.ShadowRules + } + return nil +} + +type RBACPerRoute struct { + Rbac *RBAC `protobuf:"bytes,2,opt,name=rbac,proto3" json:"rbac,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RBACPerRoute) Reset() { *m = RBACPerRoute{} } +func (m *RBACPerRoute) String() string { return proto.CompactTextString(m) } +func (*RBACPerRoute) ProtoMessage() {} +func (*RBACPerRoute) Descriptor() ([]byte, []int) { + return fileDescriptor_15d628c6558085a7, []int{1} +} + +func (m *RBACPerRoute) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RBACPerRoute.Unmarshal(m, b) +} +func (m *RBACPerRoute) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RBACPerRoute.Marshal(b, m, deterministic) +} +func (m *RBACPerRoute) XXX_Merge(src proto.Message) { + xxx_messageInfo_RBACPerRoute.Merge(m, src) +} +func (m *RBACPerRoute) XXX_Size() int { + return xxx_messageInfo_RBACPerRoute.Size(m) +} +func (m *RBACPerRoute) XXX_DiscardUnknown() { + xxx_messageInfo_RBACPerRoute.DiscardUnknown(m) +} + +var xxx_messageInfo_RBACPerRoute proto.InternalMessageInfo + +func (m *RBACPerRoute) GetRbac() *RBAC { + if m != nil { + return m.Rbac + } + return nil +} + +func init() { + proto.RegisterType((*RBAC)(nil), "envoy.config.filter.http.rbac.v2.RBAC") + proto.RegisterType((*RBACPerRoute)(nil), "envoy.config.filter.http.rbac.v2.RBACPerRoute") +} + +func init() { + proto.RegisterFile("envoy/config/filter/http/rbac/v2/rbac.proto", fileDescriptor_15d628c6558085a7) +} + +var fileDescriptor_15d628c6558085a7 = []byte{ + // 302 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x84, 0x90, 0x4f, 0x4a, 0xc3, 0x40, + 0x14, 0xc6, 0x49, 0x48, 0x8b, 0x4e, 0xbb, 0x28, 0xd9, 0x28, 0x01, 0xb5, 0x14, 0xfc, 0x03, 0xc2, + 0x8c, 0xa4, 0x3b, 0xc1, 0x85, 0x71, 0xe7, 0x2a, 0xe4, 0x02, 0x32, 0x49, 0xa6, 0xed, 0x40, 0x9c, + 0x09, 0x33, 0x2f, 0x69, 0xbb, 0xf3, 0x06, 0x6e, 0x3d, 0x8b, 0x27, 0x70, 0xeb, 0x55, 0x3c, 0x80, + 0xc8, 0x64, 0x46, 0x68, 0xe9, 0x22, 0xab, 0x19, 0xde, 0xf7, 0xfb, 0xbe, 0xf7, 0xf8, 0xd0, 0x2d, + 0x13, 0xad, 0xdc, 0x92, 0x42, 0x8a, 0x05, 0x5f, 0x92, 0x05, 0xaf, 0x80, 0x29, 0xb2, 0x02, 0xa8, + 0x89, 0xca, 0x69, 0x41, 0xda, 0xb8, 0x7b, 0x71, 0xad, 0x24, 0xc8, 0x70, 0xda, 0xc1, 0xd8, 0xc2, + 0xd8, 0xc2, 0xd8, 0xc0, 0xb8, 0x83, 0xda, 0x38, 0xba, 0xd8, 0x8b, 0x3b, 0x8c, 0x88, 0xce, 0x9b, + 0xb2, 0xa6, 0x84, 0x0a, 0x21, 0x81, 0x02, 0x97, 0x42, 0x93, 0x57, 0xbe, 0x54, 0x14, 0x98, 0xd3, + 0xcf, 0x0e, 0x74, 0x0d, 0x14, 0x1a, 0xed, 0xe4, 0x93, 0x96, 0x56, 0xbc, 0xa4, 0xc0, 0xc8, 0xff, + 0xc7, 0x0a, 0xb3, 0x35, 0x0a, 0xb2, 0xe4, 0xf1, 0x29, 0xbc, 0x43, 0x03, 0xd5, 0x54, 0x4c, 0x9f, + 0x7a, 0x53, 0xef, 0x66, 0x14, 0x47, 0x78, 0xef, 0x64, 0x77, 0x26, 0x36, 0x68, 0x66, 0xc1, 0xf0, + 0x01, 0x8d, 0xf5, 0x8a, 0x96, 0x72, 0xfd, 0x62, 0x8d, 0x7e, 0xaf, 0x71, 0x64, 0xf9, 0xcc, 0xe0, + 0xb3, 0x14, 0x8d, 0xcd, 0x30, 0x65, 0x2a, 0x93, 0x0d, 0xb0, 0xf0, 0x1e, 0x05, 0x06, 0x76, 0x31, + 0x57, 0xb8, 0xaf, 0x32, 0x1b, 0xd9, 0x79, 0x9e, 0x83, 0x23, 0x6f, 0xe2, 0x27, 0xea, 0xe7, 0xe3, + 0xf7, 0x7d, 0x70, 0x1d, 0x5e, 0x5a, 0x2b, 0xdb, 0x00, 0x13, 0xda, 0x54, 0xe1, 0xec, 0x7a, 0xd7, + 0x3f, 0xff, 0x7c, 0xfb, 0xfa, 0x1e, 0xfa, 0x13, 0x0f, 0x61, 0x2e, 0xed, 0xb2, 0x5a, 0xc9, 0xcd, + 0xb6, 0x77, 0x6f, 0x72, 0x9c, 0xe5, 0xb4, 0x48, 0x4d, 0x79, 0xa9, 0x97, 0x0f, 0xbb, 0x16, 0xe7, + 0x7f, 0x01, 0x00, 0x00, 0xff, 0xff, 0xf3, 0xc5, 0xbe, 0x85, 0x0f, 0x02, 0x00, 0x00, +} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.validate.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.validate.go new file mode 100644 index 0000000000..c4df6246c4 --- /dev/null +++ b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2/rbac.pb.validate.go @@ -0,0 +1,196 @@ +// Code generated by protoc-gen-validate. DO NOT EDIT. +// source: envoy/config/filter/http/rbac/v2/rbac.proto + +package envoy_config_filter_http_rbac_v2 + +import ( + "bytes" + "errors" + "fmt" + "net" + "net/mail" + "net/url" + "regexp" + "strings" + "time" + "unicode/utf8" + + "github.com/golang/protobuf/ptypes" +) + +// ensure the imports are used +var ( + _ = bytes.MinRead + _ = errors.New("") + _ = fmt.Print + _ = utf8.UTFMax + _ = (*regexp.Regexp)(nil) + _ = (*strings.Reader)(nil) + _ = net.IPv4len + _ = time.Duration(0) + _ = (*url.URL)(nil) + _ = (*mail.Address)(nil) + _ = ptypes.DynamicAny{} +) + +// define the regex for a UUID once up-front +var _rbac_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") + +// Validate checks the field values on RBAC with the rules defined in the proto +// definition for this message. If any rules are violated, an error is returned. +func (m *RBAC) Validate() error { + if m == nil { + return nil + } + + if v, ok := interface{}(m.GetRules()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return RBACValidationError{ + field: "Rules", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if v, ok := interface{}(m.GetShadowRules()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return RBACValidationError{ + field: "ShadowRules", + reason: "embedded message failed validation", + cause: err, + } + } + } + + return nil +} + +// RBACValidationError is the validation error returned by RBAC.Validate if the +// designated constraints aren't met. +type RBACValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e RBACValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e RBACValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e RBACValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e RBACValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e RBACValidationError) ErrorName() string { return "RBACValidationError" } + +// Error satisfies the builtin error interface +func (e RBACValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sRBAC.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = RBACValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = RBACValidationError{} + +// Validate checks the field values on RBACPerRoute with the rules defined in +// the proto definition for this message. If any rules are violated, an error +// is returned. +func (m *RBACPerRoute) Validate() error { + if m == nil { + return nil + } + + if v, ok := interface{}(m.GetRbac()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return RBACPerRouteValidationError{ + field: "Rbac", + reason: "embedded message failed validation", + cause: err, + } + } + } + + return nil +} + +// RBACPerRouteValidationError is the validation error returned by +// RBACPerRoute.Validate if the designated constraints aren't met. +type RBACPerRouteValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e RBACPerRouteValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e RBACPerRouteValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e RBACPerRouteValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e RBACPerRouteValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e RBACPerRouteValidationError) ErrorName() string { return "RBACPerRouteValidationError" } + +// Error satisfies the builtin error interface +func (e RBACPerRouteValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sRBACPerRoute.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = RBACPerRouteValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = RBACPerRouteValidationError{} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.go deleted file mode 100644 index 484489b808..0000000000 --- a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.go +++ /dev/null @@ -1,123 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// source: envoy/config/filter/network/ext_authz/v2/ext_authz.proto - -package envoy_config_filter_network_ext_authz_v2 - -import ( - fmt "fmt" - _ "github.com/cncf/udpa/go/udpa/annotations" - core "github.com/envoyproxy/go-control-plane/envoy/api/v2/core" - _ "github.com/envoyproxy/protoc-gen-validate/validate" - proto "github.com/golang/protobuf/proto" - math "math" -) - -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package - -type ExtAuthz struct { - StatPrefix string `protobuf:"bytes,1,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"` - GrpcService *core.GrpcService `protobuf:"bytes,2,opt,name=grpc_service,json=grpcService,proto3" json:"grpc_service,omitempty"` - FailureModeAllow bool `protobuf:"varint,3,opt,name=failure_mode_allow,json=failureModeAllow,proto3" json:"failure_mode_allow,omitempty"` - IncludePeerCertificate bool `protobuf:"varint,4,opt,name=include_peer_certificate,json=includePeerCertificate,proto3" json:"include_peer_certificate,omitempty"` - XXX_NoUnkeyedLiteral struct{} `json:"-"` - XXX_unrecognized []byte `json:"-"` - XXX_sizecache int32 `json:"-"` -} - -func (m *ExtAuthz) Reset() { *m = ExtAuthz{} } -func (m *ExtAuthz) String() string { return proto.CompactTextString(m) } -func (*ExtAuthz) ProtoMessage() {} -func (*ExtAuthz) Descriptor() ([]byte, []int) { - return fileDescriptor_3ec2615c2696024a, []int{0} -} - -func (m *ExtAuthz) XXX_Unmarshal(b []byte) error { - return xxx_messageInfo_ExtAuthz.Unmarshal(m, b) -} -func (m *ExtAuthz) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { - return xxx_messageInfo_ExtAuthz.Marshal(b, m, deterministic) -} -func (m *ExtAuthz) XXX_Merge(src proto.Message) { - xxx_messageInfo_ExtAuthz.Merge(m, src) -} -func (m *ExtAuthz) XXX_Size() int { - return xxx_messageInfo_ExtAuthz.Size(m) -} -func (m *ExtAuthz) XXX_DiscardUnknown() { - xxx_messageInfo_ExtAuthz.DiscardUnknown(m) -} - -var xxx_messageInfo_ExtAuthz proto.InternalMessageInfo - -func (m *ExtAuthz) GetStatPrefix() string { - if m != nil { - return m.StatPrefix - } - return "" -} - -func (m *ExtAuthz) GetGrpcService() *core.GrpcService { - if m != nil { - return m.GrpcService - } - return nil -} - -func (m *ExtAuthz) GetFailureModeAllow() bool { - if m != nil { - return m.FailureModeAllow - } - return false -} - -func (m *ExtAuthz) GetIncludePeerCertificate() bool { - if m != nil { - return m.IncludePeerCertificate - } - return false -} - -func init() { - proto.RegisterType((*ExtAuthz)(nil), "envoy.config.filter.network.ext_authz.v2.ExtAuthz") -} - -func init() { - proto.RegisterFile("envoy/config/filter/network/ext_authz/v2/ext_authz.proto", fileDescriptor_3ec2615c2696024a) -} - -var fileDescriptor_3ec2615c2696024a = []byte{ - // 384 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x91, 0xb1, 0xee, 0xd3, 0x30, - 0x10, 0xc6, 0xe5, 0x52, 0x4a, 0x71, 0x41, 0xaa, 0x32, 0x40, 0x54, 0x89, 0x2a, 0x42, 0x0c, 0x19, - 0xc0, 0x96, 0x52, 0x09, 0x75, 0x6d, 0x10, 0x62, 0x42, 0x8a, 0xca, 0x03, 0x44, 0xc6, 0xb9, 0x04, - 0x8b, 0xd4, 0xb6, 0x1c, 0x27, 0x4d, 0x99, 0x98, 0x58, 0x59, 0x79, 0x16, 0x9e, 0x80, 0x95, 0x27, - 0xe0, 0x1d, 0x18, 0x19, 0x10, 0x72, 0x9c, 0x2a, 0x48, 0x30, 0xfc, 0xb7, 0x5c, 0x7e, 0xf7, 0x9d, - 0xef, 0xbe, 0x0f, 0xef, 0x41, 0x76, 0xea, 0x42, 0xb9, 0x92, 0xa5, 0xa8, 0x68, 0x29, 0x6a, 0x0b, - 0x86, 0x4a, 0xb0, 0x67, 0x65, 0xde, 0x53, 0xe8, 0x6d, 0xce, 0x5a, 0xfb, 0xee, 0x03, 0xed, 0x92, - 0xa9, 0x20, 0xda, 0x28, 0xab, 0x82, 0x78, 0x50, 0x12, 0xaf, 0x24, 0x5e, 0x49, 0x46, 0x25, 0x99, - 0x9a, 0xbb, 0x64, 0xf3, 0xc4, 0xbf, 0xc1, 0xb4, 0x70, 0x73, 0xb8, 0x32, 0x40, 0x2b, 0xa3, 0x79, - 0xde, 0x80, 0xe9, 0x04, 0x07, 0x3f, 0x6f, 0xb3, 0x6d, 0x0b, 0xcd, 0x28, 0x93, 0x52, 0x59, 0x66, - 0x85, 0x92, 0x0d, 0x3d, 0x89, 0xca, 0x30, 0x7b, 0xe5, 0x8f, 0xfe, 0xe1, 0x8d, 0x65, 0xb6, 0x6d, - 0x46, 0xfc, 0xb0, 0x63, 0xb5, 0x28, 0x98, 0x05, 0x7a, 0xfd, 0xf0, 0xe0, 0xf1, 0x0f, 0x84, 0x97, - 0x2f, 0x7b, 0x7b, 0x70, 0xdb, 0x04, 0x31, 0x5e, 0x39, 0x55, 0xae, 0x0d, 0x94, 0xa2, 0x0f, 0x51, - 0x84, 0xe2, 0xbb, 0xe9, 0x9d, 0x5f, 0xe9, 0xdc, 0xcc, 0x22, 0x74, 0xc4, 0x8e, 0x65, 0x03, 0x0a, - 0x0e, 0xf8, 0xde, 0xdf, 0x4b, 0x86, 0xb3, 0x08, 0xc5, 0xab, 0x64, 0x4b, 0xfc, 0xd5, 0x4c, 0x0b, - 0xd2, 0x25, 0xc4, 0xdd, 0x42, 0x5e, 0x19, 0xcd, 0xdf, 0xf8, 0xae, 0xe3, 0xaa, 0x9a, 0x8a, 0xe0, - 0x29, 0x0e, 0x4a, 0x26, 0xea, 0xd6, 0x40, 0x7e, 0x52, 0x05, 0xe4, 0xac, 0xae, 0xd5, 0x39, 0xbc, - 0x15, 0xa1, 0x78, 0x79, 0x5c, 0x8f, 0xe4, 0xb5, 0x2a, 0xe0, 0xe0, 0xfe, 0x07, 0x7b, 0x1c, 0x0a, - 0xc9, 0xeb, 0xb6, 0x80, 0x5c, 0x03, 0x98, 0x9c, 0x83, 0xb1, 0xa2, 0x14, 0x9c, 0x59, 0x08, 0xe7, - 0x83, 0xe6, 0xc1, 0xc8, 0x33, 0x00, 0xf3, 0x62, 0xa2, 0xe9, 0x27, 0xf4, 0xf3, 0xcb, 0xef, 0xcf, - 0xb7, 0x69, 0xf0, 0xcc, 0x2f, 0x07, 0xbd, 0x05, 0xd9, 0x38, 0x8b, 0xc6, 0x58, 0x9a, 0xff, 0xe5, - 0xb2, 0xfb, 0xfa, 0xf1, 0xdb, 0xf7, 0xc5, 0x6c, 0x8d, 0xf0, 0x73, 0xa1, 0xfc, 0x59, 0xda, 0xa8, - 0xfe, 0x42, 0x6e, 0x9a, 0x6b, 0x7a, 0xff, 0x6a, 0x6b, 0xe6, 0x8c, 0xce, 0xd0, 0xdb, 0xc5, 0xe0, - 0xf8, 0xee, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xeb, 0x56, 0xa0, 0x9b, 0x55, 0x02, 0x00, 0x00, -} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.validate.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.validate.go deleted file mode 100644 index 5a05f5464f..0000000000 --- a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2/ext_authz.pb.validate.go +++ /dev/null @@ -1,122 +0,0 @@ -// Code generated by protoc-gen-validate. DO NOT EDIT. -// source: envoy/config/filter/network/ext_authz/v2/ext_authz.proto - -package envoy_config_filter_network_ext_authz_v2 - -import ( - "bytes" - "errors" - "fmt" - "net" - "net/mail" - "net/url" - "regexp" - "strings" - "time" - "unicode/utf8" - - "github.com/golang/protobuf/ptypes" -) - -// ensure the imports are used -var ( - _ = bytes.MinRead - _ = errors.New("") - _ = fmt.Print - _ = utf8.UTFMax - _ = (*regexp.Regexp)(nil) - _ = (*strings.Reader)(nil) - _ = net.IPv4len - _ = time.Duration(0) - _ = (*url.URL)(nil) - _ = (*mail.Address)(nil) - _ = ptypes.DynamicAny{} -) - -// define the regex for a UUID once up-front -var _ext_authz_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") - -// Validate checks the field values on ExtAuthz with the rules defined in the -// proto definition for this message. If any rules are violated, an error is returned. -func (m *ExtAuthz) Validate() error { - if m == nil { - return nil - } - - if len(m.GetStatPrefix()) < 1 { - return ExtAuthzValidationError{ - field: "StatPrefix", - reason: "value length must be at least 1 bytes", - } - } - - if v, ok := interface{}(m.GetGrpcService()).(interface{ Validate() error }); ok { - if err := v.Validate(); err != nil { - return ExtAuthzValidationError{ - field: "GrpcService", - reason: "embedded message failed validation", - cause: err, - } - } - } - - // no validation rules for FailureModeAllow - - // no validation rules for IncludePeerCertificate - - return nil -} - -// ExtAuthzValidationError is the validation error returned by -// ExtAuthz.Validate if the designated constraints aren't met. -type ExtAuthzValidationError struct { - field string - reason string - cause error - key bool -} - -// Field function returns field value. -func (e ExtAuthzValidationError) Field() string { return e.field } - -// Reason function returns reason value. -func (e ExtAuthzValidationError) Reason() string { return e.reason } - -// Cause function returns cause value. -func (e ExtAuthzValidationError) Cause() error { return e.cause } - -// Key function returns key value. -func (e ExtAuthzValidationError) Key() bool { return e.key } - -// ErrorName returns error name. -func (e ExtAuthzValidationError) ErrorName() string { return "ExtAuthzValidationError" } - -// Error satisfies the builtin error interface -func (e ExtAuthzValidationError) Error() string { - cause := "" - if e.cause != nil { - cause = fmt.Sprintf(" | caused by: %v", e.cause) - } - - key := "" - if e.key { - key = "key for " - } - - return fmt.Sprintf( - "invalid %sExtAuthz.%s: %s%s", - key, - e.field, - e.reason, - cause) -} - -var _ error = ExtAuthzValidationError{} - -var _ interface { - Field() string - Reason() string - Key() bool - Cause() error - ErrorName() string -} = ExtAuthzValidationError{} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.go new file mode 100644 index 0000000000..a9a35c3453 --- /dev/null +++ b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.go @@ -0,0 +1,150 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: envoy/config/filter/network/rbac/v2/rbac.proto + +package envoy_config_filter_network_rbac_v2 + +import ( + fmt "fmt" + _ "github.com/cncf/udpa/go/udpa/annotations" + v2 "github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2" + _ "github.com/envoyproxy/protoc-gen-validate/validate" + proto "github.com/golang/protobuf/proto" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +type RBAC_EnforcementType int32 + +const ( + RBAC_ONE_TIME_ON_FIRST_BYTE RBAC_EnforcementType = 0 + RBAC_CONTINUOUS RBAC_EnforcementType = 1 +) + +var RBAC_EnforcementType_name = map[int32]string{ + 0: "ONE_TIME_ON_FIRST_BYTE", + 1: "CONTINUOUS", +} + +var RBAC_EnforcementType_value = map[string]int32{ + "ONE_TIME_ON_FIRST_BYTE": 0, + "CONTINUOUS": 1, +} + +func (x RBAC_EnforcementType) String() string { + return proto.EnumName(RBAC_EnforcementType_name, int32(x)) +} + +func (RBAC_EnforcementType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_8ec60cc393c44598, []int{0, 0} +} + +type RBAC struct { + Rules *v2.RBAC `protobuf:"bytes,1,opt,name=rules,proto3" json:"rules,omitempty"` + ShadowRules *v2.RBAC `protobuf:"bytes,2,opt,name=shadow_rules,json=shadowRules,proto3" json:"shadow_rules,omitempty"` + StatPrefix string `protobuf:"bytes,3,opt,name=stat_prefix,json=statPrefix,proto3" json:"stat_prefix,omitempty"` + EnforcementType RBAC_EnforcementType `protobuf:"varint,4,opt,name=enforcement_type,json=enforcementType,proto3,enum=envoy.config.filter.network.rbac.v2.RBAC_EnforcementType" json:"enforcement_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RBAC) Reset() { *m = RBAC{} } +func (m *RBAC) String() string { return proto.CompactTextString(m) } +func (*RBAC) ProtoMessage() {} +func (*RBAC) Descriptor() ([]byte, []int) { + return fileDescriptor_8ec60cc393c44598, []int{0} +} + +func (m *RBAC) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RBAC.Unmarshal(m, b) +} +func (m *RBAC) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RBAC.Marshal(b, m, deterministic) +} +func (m *RBAC) XXX_Merge(src proto.Message) { + xxx_messageInfo_RBAC.Merge(m, src) +} +func (m *RBAC) XXX_Size() int { + return xxx_messageInfo_RBAC.Size(m) +} +func (m *RBAC) XXX_DiscardUnknown() { + xxx_messageInfo_RBAC.DiscardUnknown(m) +} + +var xxx_messageInfo_RBAC proto.InternalMessageInfo + +func (m *RBAC) GetRules() *v2.RBAC { + if m != nil { + return m.Rules + } + return nil +} + +func (m *RBAC) GetShadowRules() *v2.RBAC { + if m != nil { + return m.ShadowRules + } + return nil +} + +func (m *RBAC) GetStatPrefix() string { + if m != nil { + return m.StatPrefix + } + return "" +} + +func (m *RBAC) GetEnforcementType() RBAC_EnforcementType { + if m != nil { + return m.EnforcementType + } + return RBAC_ONE_TIME_ON_FIRST_BYTE +} + +func init() { + proto.RegisterEnum("envoy.config.filter.network.rbac.v2.RBAC_EnforcementType", RBAC_EnforcementType_name, RBAC_EnforcementType_value) + proto.RegisterType((*RBAC)(nil), "envoy.config.filter.network.rbac.v2.RBAC") +} + +func init() { + proto.RegisterFile("envoy/config/filter/network/rbac/v2/rbac.proto", fileDescriptor_8ec60cc393c44598) +} + +var fileDescriptor_8ec60cc393c44598 = []byte{ + // 396 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x91, 0xb1, 0xae, 0xd3, 0x30, + 0x14, 0x86, 0x71, 0xe8, 0xbd, 0xe8, 0xba, 0xe8, 0xde, 0x28, 0x03, 0x54, 0x91, 0x80, 0xa8, 0x2c, + 0x11, 0x83, 0x0d, 0xe9, 0xc4, 0xd0, 0x81, 0x54, 0x41, 0xea, 0x40, 0x52, 0xa5, 0xe9, 0xc0, 0x14, + 0xb9, 0x89, 0x53, 0x22, 0x5a, 0x3b, 0x72, 0xdc, 0x34, 0xd9, 0x78, 0x03, 0x56, 0x9e, 0x85, 0x07, + 0x40, 0xac, 0xbc, 0x0a, 0x23, 0x03, 0x42, 0x89, 0x83, 0x50, 0xdb, 0x81, 0x4e, 0x89, 0xfc, 0x7f, + 0xe7, 0xf8, 0x3b, 0x3e, 0x10, 0x51, 0x56, 0xf1, 0x06, 0x27, 0x9c, 0x65, 0xf9, 0x06, 0x67, 0xf9, + 0x56, 0x52, 0x81, 0x19, 0x95, 0x07, 0x2e, 0x3e, 0x62, 0xb1, 0x26, 0x09, 0xae, 0x9c, 0xee, 0x8b, + 0x0a, 0xc1, 0x25, 0x37, 0x9e, 0x77, 0x3c, 0x52, 0x3c, 0x52, 0x3c, 0xea, 0x79, 0xd4, 0x71, 0x95, + 0x63, 0x3e, 0x3b, 0x6a, 0x7a, 0xde, 0xc5, 0x7c, 0xba, 0x4f, 0x0b, 0x82, 0x09, 0x63, 0x5c, 0x12, + 0x99, 0x73, 0x56, 0xe2, 0x5d, 0xbe, 0x11, 0x44, 0xd2, 0x3e, 0x7f, 0x72, 0x96, 0x97, 0x92, 0xc8, + 0x7d, 0xd9, 0xc7, 0x8f, 0x2b, 0xb2, 0xcd, 0x53, 0x22, 0x29, 0xfe, 0xfb, 0xa3, 0x82, 0xf1, 0x37, + 0x0d, 0x0e, 0x42, 0xf7, 0xcd, 0xcc, 0x78, 0x09, 0xaf, 0xc4, 0x7e, 0x4b, 0xcb, 0x11, 0xb0, 0x80, + 0x3d, 0x74, 0x4c, 0x74, 0xa4, 0xdd, 0x7b, 0xa2, 0x16, 0x0d, 0x15, 0x68, 0x4c, 0xe1, 0xc3, 0xf2, + 0x03, 0x49, 0xf9, 0x21, 0x56, 0x85, 0xda, 0x7f, 0x0b, 0x87, 0x8a, 0x0f, 0xbb, 0x72, 0x1b, 0x0e, + 0x5b, 0xc5, 0xb8, 0x10, 0x34, 0xcb, 0xeb, 0xd1, 0x7d, 0x0b, 0xd8, 0x37, 0xee, 0x83, 0x5f, 0xee, + 0x40, 0x68, 0x16, 0x08, 0x61, 0x9b, 0x2d, 0xba, 0xc8, 0x48, 0xa1, 0x4e, 0x59, 0xc6, 0x45, 0x42, + 0x77, 0x94, 0xc9, 0x58, 0x36, 0x05, 0x1d, 0x0d, 0x2c, 0x60, 0xdf, 0x3a, 0xaf, 0xd1, 0x05, 0x8f, + 0xdb, 0xdd, 0x8d, 0xbc, 0x7f, 0x1d, 0xa2, 0xa6, 0xa0, 0xe1, 0x1d, 0x3d, 0x3e, 0x18, 0x4f, 0xe1, + 0xdd, 0x09, 0x63, 0x98, 0xf0, 0x51, 0xe0, 0x7b, 0x71, 0x34, 0x7f, 0xe7, 0xc5, 0x81, 0x1f, 0xbf, + 0x9d, 0x87, 0xcb, 0x28, 0x76, 0xdf, 0x47, 0x9e, 0x7e, 0xcf, 0xb8, 0x85, 0x70, 0x16, 0xf8, 0xd1, + 0xdc, 0x5f, 0x05, 0xab, 0xa5, 0x0e, 0xdc, 0xfa, 0xe7, 0x97, 0xdf, 0x9f, 0xaf, 0x5e, 0x18, 0xb6, + 0x32, 0xa2, 0xb5, 0xa4, 0xac, 0x6c, 0x17, 0xd1, 0x5b, 0x95, 0x27, 0x5a, 0x93, 0xaf, 0x9f, 0xbe, + 0xff, 0xb8, 0xd6, 0x74, 0x00, 0x5f, 0xe5, 0x5c, 0x8d, 0x51, 0x08, 0x5e, 0x37, 0x97, 0x4c, 0xe4, + 0xde, 0x84, 0x6b, 0x92, 0x2c, 0xda, 0x05, 0x2e, 0xc0, 0xfa, 0xba, 0xdb, 0xe4, 0xe4, 0x4f, 0x00, + 0x00, 0x00, 0xff, 0xff, 0x25, 0xdd, 0x2f, 0xcb, 0x99, 0x02, 0x00, 0x00, +} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.validate.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.validate.go new file mode 100644 index 0000000000..908c654480 --- /dev/null +++ b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2/rbac.pb.validate.go @@ -0,0 +1,130 @@ +// Code generated by protoc-gen-validate. DO NOT EDIT. +// source: envoy/config/filter/network/rbac/v2/rbac.proto + +package envoy_config_filter_network_rbac_v2 + +import ( + "bytes" + "errors" + "fmt" + "net" + "net/mail" + "net/url" + "regexp" + "strings" + "time" + "unicode/utf8" + + "github.com/golang/protobuf/ptypes" +) + +// ensure the imports are used +var ( + _ = bytes.MinRead + _ = errors.New("") + _ = fmt.Print + _ = utf8.UTFMax + _ = (*regexp.Regexp)(nil) + _ = (*strings.Reader)(nil) + _ = net.IPv4len + _ = time.Duration(0) + _ = (*url.URL)(nil) + _ = (*mail.Address)(nil) + _ = ptypes.DynamicAny{} +) + +// define the regex for a UUID once up-front +var _rbac_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") + +// Validate checks the field values on RBAC with the rules defined in the proto +// definition for this message. If any rules are violated, an error is returned. +func (m *RBAC) Validate() error { + if m == nil { + return nil + } + + if v, ok := interface{}(m.GetRules()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return RBACValidationError{ + field: "Rules", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if v, ok := interface{}(m.GetShadowRules()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return RBACValidationError{ + field: "ShadowRules", + reason: "embedded message failed validation", + cause: err, + } + } + } + + if len(m.GetStatPrefix()) < 1 { + return RBACValidationError{ + field: "StatPrefix", + reason: "value length must be at least 1 bytes", + } + } + + // no validation rules for EnforcementType + + return nil +} + +// RBACValidationError is the validation error returned by RBAC.Validate if the +// designated constraints aren't met. +type RBACValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e RBACValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e RBACValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e RBACValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e RBACValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e RBACValidationError) ErrorName() string { return "RBACValidationError" } + +// Error satisfies the builtin error interface +func (e RBACValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sRBAC.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = RBACValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = RBACValidationError{} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.go new file mode 100644 index 0000000000..15ed2d3553 --- /dev/null +++ b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.go @@ -0,0 +1,734 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: envoy/config/rbac/v2/rbac.proto + +package envoy_config_rbac_v2 + +import ( + fmt "fmt" + _ "github.com/cncf/udpa/go/udpa/annotations" + core "github.com/envoyproxy/go-control-plane/envoy/api/v2/core" + route "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" + matcher "github.com/envoyproxy/go-control-plane/envoy/type/matcher" + _ "github.com/envoyproxy/protoc-gen-validate/validate" + proto "github.com/golang/protobuf/proto" + v1alpha1 "google.golang.org/genproto/googleapis/api/expr/v1alpha1" + math "math" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +type RBAC_Action int32 + +const ( + RBAC_ALLOW RBAC_Action = 0 + RBAC_DENY RBAC_Action = 1 +) + +var RBAC_Action_name = map[int32]string{ + 0: "ALLOW", + 1: "DENY", +} + +var RBAC_Action_value = map[string]int32{ + "ALLOW": 0, + "DENY": 1, +} + +func (x RBAC_Action) String() string { + return proto.EnumName(RBAC_Action_name, int32(x)) +} + +func (RBAC_Action) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{0, 0} +} + +type RBAC struct { + Action RBAC_Action `protobuf:"varint,1,opt,name=action,proto3,enum=envoy.config.rbac.v2.RBAC_Action" json:"action,omitempty"` + Policies map[string]*Policy `protobuf:"bytes,2,rep,name=policies,proto3" json:"policies,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *RBAC) Reset() { *m = RBAC{} } +func (m *RBAC) String() string { return proto.CompactTextString(m) } +func (*RBAC) ProtoMessage() {} +func (*RBAC) Descriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{0} +} + +func (m *RBAC) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_RBAC.Unmarshal(m, b) +} +func (m *RBAC) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_RBAC.Marshal(b, m, deterministic) +} +func (m *RBAC) XXX_Merge(src proto.Message) { + xxx_messageInfo_RBAC.Merge(m, src) +} +func (m *RBAC) XXX_Size() int { + return xxx_messageInfo_RBAC.Size(m) +} +func (m *RBAC) XXX_DiscardUnknown() { + xxx_messageInfo_RBAC.DiscardUnknown(m) +} + +var xxx_messageInfo_RBAC proto.InternalMessageInfo + +func (m *RBAC) GetAction() RBAC_Action { + if m != nil { + return m.Action + } + return RBAC_ALLOW +} + +func (m *RBAC) GetPolicies() map[string]*Policy { + if m != nil { + return m.Policies + } + return nil +} + +type Policy struct { + Permissions []*Permission `protobuf:"bytes,1,rep,name=permissions,proto3" json:"permissions,omitempty"` + Principals []*Principal `protobuf:"bytes,2,rep,name=principals,proto3" json:"principals,omitempty"` + Condition *v1alpha1.Expr `protobuf:"bytes,3,opt,name=condition,proto3" json:"condition,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Policy) Reset() { *m = Policy{} } +func (m *Policy) String() string { return proto.CompactTextString(m) } +func (*Policy) ProtoMessage() {} +func (*Policy) Descriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{1} +} + +func (m *Policy) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Policy.Unmarshal(m, b) +} +func (m *Policy) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Policy.Marshal(b, m, deterministic) +} +func (m *Policy) XXX_Merge(src proto.Message) { + xxx_messageInfo_Policy.Merge(m, src) +} +func (m *Policy) XXX_Size() int { + return xxx_messageInfo_Policy.Size(m) +} +func (m *Policy) XXX_DiscardUnknown() { + xxx_messageInfo_Policy.DiscardUnknown(m) +} + +var xxx_messageInfo_Policy proto.InternalMessageInfo + +func (m *Policy) GetPermissions() []*Permission { + if m != nil { + return m.Permissions + } + return nil +} + +func (m *Policy) GetPrincipals() []*Principal { + if m != nil { + return m.Principals + } + return nil +} + +func (m *Policy) GetCondition() *v1alpha1.Expr { + if m != nil { + return m.Condition + } + return nil +} + +type Permission struct { + // Types that are valid to be assigned to Rule: + // *Permission_AndRules + // *Permission_OrRules + // *Permission_Any + // *Permission_Header + // *Permission_UrlPath + // *Permission_DestinationIp + // *Permission_DestinationPort + // *Permission_Metadata + // *Permission_NotRule + // *Permission_RequestedServerName + Rule isPermission_Rule `protobuf_oneof:"rule"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Permission) Reset() { *m = Permission{} } +func (m *Permission) String() string { return proto.CompactTextString(m) } +func (*Permission) ProtoMessage() {} +func (*Permission) Descriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{2} +} + +func (m *Permission) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Permission.Unmarshal(m, b) +} +func (m *Permission) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Permission.Marshal(b, m, deterministic) +} +func (m *Permission) XXX_Merge(src proto.Message) { + xxx_messageInfo_Permission.Merge(m, src) +} +func (m *Permission) XXX_Size() int { + return xxx_messageInfo_Permission.Size(m) +} +func (m *Permission) XXX_DiscardUnknown() { + xxx_messageInfo_Permission.DiscardUnknown(m) +} + +var xxx_messageInfo_Permission proto.InternalMessageInfo + +type isPermission_Rule interface { + isPermission_Rule() +} + +type Permission_AndRules struct { + AndRules *Permission_Set `protobuf:"bytes,1,opt,name=and_rules,json=andRules,proto3,oneof"` +} + +type Permission_OrRules struct { + OrRules *Permission_Set `protobuf:"bytes,2,opt,name=or_rules,json=orRules,proto3,oneof"` +} + +type Permission_Any struct { + Any bool `protobuf:"varint,3,opt,name=any,proto3,oneof"` +} + +type Permission_Header struct { + Header *route.HeaderMatcher `protobuf:"bytes,4,opt,name=header,proto3,oneof"` +} + +type Permission_UrlPath struct { + UrlPath *matcher.PathMatcher `protobuf:"bytes,10,opt,name=url_path,json=urlPath,proto3,oneof"` +} + +type Permission_DestinationIp struct { + DestinationIp *core.CidrRange `protobuf:"bytes,5,opt,name=destination_ip,json=destinationIp,proto3,oneof"` +} + +type Permission_DestinationPort struct { + DestinationPort uint32 `protobuf:"varint,6,opt,name=destination_port,json=destinationPort,proto3,oneof"` +} + +type Permission_Metadata struct { + Metadata *matcher.MetadataMatcher `protobuf:"bytes,7,opt,name=metadata,proto3,oneof"` +} + +type Permission_NotRule struct { + NotRule *Permission `protobuf:"bytes,8,opt,name=not_rule,json=notRule,proto3,oneof"` +} + +type Permission_RequestedServerName struct { + RequestedServerName *matcher.StringMatcher `protobuf:"bytes,9,opt,name=requested_server_name,json=requestedServerName,proto3,oneof"` +} + +func (*Permission_AndRules) isPermission_Rule() {} + +func (*Permission_OrRules) isPermission_Rule() {} + +func (*Permission_Any) isPermission_Rule() {} + +func (*Permission_Header) isPermission_Rule() {} + +func (*Permission_UrlPath) isPermission_Rule() {} + +func (*Permission_DestinationIp) isPermission_Rule() {} + +func (*Permission_DestinationPort) isPermission_Rule() {} + +func (*Permission_Metadata) isPermission_Rule() {} + +func (*Permission_NotRule) isPermission_Rule() {} + +func (*Permission_RequestedServerName) isPermission_Rule() {} + +func (m *Permission) GetRule() isPermission_Rule { + if m != nil { + return m.Rule + } + return nil +} + +func (m *Permission) GetAndRules() *Permission_Set { + if x, ok := m.GetRule().(*Permission_AndRules); ok { + return x.AndRules + } + return nil +} + +func (m *Permission) GetOrRules() *Permission_Set { + if x, ok := m.GetRule().(*Permission_OrRules); ok { + return x.OrRules + } + return nil +} + +func (m *Permission) GetAny() bool { + if x, ok := m.GetRule().(*Permission_Any); ok { + return x.Any + } + return false +} + +func (m *Permission) GetHeader() *route.HeaderMatcher { + if x, ok := m.GetRule().(*Permission_Header); ok { + return x.Header + } + return nil +} + +func (m *Permission) GetUrlPath() *matcher.PathMatcher { + if x, ok := m.GetRule().(*Permission_UrlPath); ok { + return x.UrlPath + } + return nil +} + +func (m *Permission) GetDestinationIp() *core.CidrRange { + if x, ok := m.GetRule().(*Permission_DestinationIp); ok { + return x.DestinationIp + } + return nil +} + +func (m *Permission) GetDestinationPort() uint32 { + if x, ok := m.GetRule().(*Permission_DestinationPort); ok { + return x.DestinationPort + } + return 0 +} + +func (m *Permission) GetMetadata() *matcher.MetadataMatcher { + if x, ok := m.GetRule().(*Permission_Metadata); ok { + return x.Metadata + } + return nil +} + +func (m *Permission) GetNotRule() *Permission { + if x, ok := m.GetRule().(*Permission_NotRule); ok { + return x.NotRule + } + return nil +} + +func (m *Permission) GetRequestedServerName() *matcher.StringMatcher { + if x, ok := m.GetRule().(*Permission_RequestedServerName); ok { + return x.RequestedServerName + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Permission) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Permission_AndRules)(nil), + (*Permission_OrRules)(nil), + (*Permission_Any)(nil), + (*Permission_Header)(nil), + (*Permission_UrlPath)(nil), + (*Permission_DestinationIp)(nil), + (*Permission_DestinationPort)(nil), + (*Permission_Metadata)(nil), + (*Permission_NotRule)(nil), + (*Permission_RequestedServerName)(nil), + } +} + +type Permission_Set struct { + Rules []*Permission `protobuf:"bytes,1,rep,name=rules,proto3" json:"rules,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Permission_Set) Reset() { *m = Permission_Set{} } +func (m *Permission_Set) String() string { return proto.CompactTextString(m) } +func (*Permission_Set) ProtoMessage() {} +func (*Permission_Set) Descriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{2, 0} +} + +func (m *Permission_Set) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Permission_Set.Unmarshal(m, b) +} +func (m *Permission_Set) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Permission_Set.Marshal(b, m, deterministic) +} +func (m *Permission_Set) XXX_Merge(src proto.Message) { + xxx_messageInfo_Permission_Set.Merge(m, src) +} +func (m *Permission_Set) XXX_Size() int { + return xxx_messageInfo_Permission_Set.Size(m) +} +func (m *Permission_Set) XXX_DiscardUnknown() { + xxx_messageInfo_Permission_Set.DiscardUnknown(m) +} + +var xxx_messageInfo_Permission_Set proto.InternalMessageInfo + +func (m *Permission_Set) GetRules() []*Permission { + if m != nil { + return m.Rules + } + return nil +} + +type Principal struct { + // Types that are valid to be assigned to Identifier: + // *Principal_AndIds + // *Principal_OrIds + // *Principal_Any + // *Principal_Authenticated_ + // *Principal_SourceIp + // *Principal_Header + // *Principal_UrlPath + // *Principal_Metadata + // *Principal_NotId + Identifier isPrincipal_Identifier `protobuf_oneof:"identifier"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Principal) Reset() { *m = Principal{} } +func (m *Principal) String() string { return proto.CompactTextString(m) } +func (*Principal) ProtoMessage() {} +func (*Principal) Descriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{3} +} + +func (m *Principal) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Principal.Unmarshal(m, b) +} +func (m *Principal) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Principal.Marshal(b, m, deterministic) +} +func (m *Principal) XXX_Merge(src proto.Message) { + xxx_messageInfo_Principal.Merge(m, src) +} +func (m *Principal) XXX_Size() int { + return xxx_messageInfo_Principal.Size(m) +} +func (m *Principal) XXX_DiscardUnknown() { + xxx_messageInfo_Principal.DiscardUnknown(m) +} + +var xxx_messageInfo_Principal proto.InternalMessageInfo + +type isPrincipal_Identifier interface { + isPrincipal_Identifier() +} + +type Principal_AndIds struct { + AndIds *Principal_Set `protobuf:"bytes,1,opt,name=and_ids,json=andIds,proto3,oneof"` +} + +type Principal_OrIds struct { + OrIds *Principal_Set `protobuf:"bytes,2,opt,name=or_ids,json=orIds,proto3,oneof"` +} + +type Principal_Any struct { + Any bool `protobuf:"varint,3,opt,name=any,proto3,oneof"` +} + +type Principal_Authenticated_ struct { + Authenticated *Principal_Authenticated `protobuf:"bytes,4,opt,name=authenticated,proto3,oneof"` +} + +type Principal_SourceIp struct { + SourceIp *core.CidrRange `protobuf:"bytes,5,opt,name=source_ip,json=sourceIp,proto3,oneof"` +} + +type Principal_Header struct { + Header *route.HeaderMatcher `protobuf:"bytes,6,opt,name=header,proto3,oneof"` +} + +type Principal_UrlPath struct { + UrlPath *matcher.PathMatcher `protobuf:"bytes,9,opt,name=url_path,json=urlPath,proto3,oneof"` +} + +type Principal_Metadata struct { + Metadata *matcher.MetadataMatcher `protobuf:"bytes,7,opt,name=metadata,proto3,oneof"` +} + +type Principal_NotId struct { + NotId *Principal `protobuf:"bytes,8,opt,name=not_id,json=notId,proto3,oneof"` +} + +func (*Principal_AndIds) isPrincipal_Identifier() {} + +func (*Principal_OrIds) isPrincipal_Identifier() {} + +func (*Principal_Any) isPrincipal_Identifier() {} + +func (*Principal_Authenticated_) isPrincipal_Identifier() {} + +func (*Principal_SourceIp) isPrincipal_Identifier() {} + +func (*Principal_Header) isPrincipal_Identifier() {} + +func (*Principal_UrlPath) isPrincipal_Identifier() {} + +func (*Principal_Metadata) isPrincipal_Identifier() {} + +func (*Principal_NotId) isPrincipal_Identifier() {} + +func (m *Principal) GetIdentifier() isPrincipal_Identifier { + if m != nil { + return m.Identifier + } + return nil +} + +func (m *Principal) GetAndIds() *Principal_Set { + if x, ok := m.GetIdentifier().(*Principal_AndIds); ok { + return x.AndIds + } + return nil +} + +func (m *Principal) GetOrIds() *Principal_Set { + if x, ok := m.GetIdentifier().(*Principal_OrIds); ok { + return x.OrIds + } + return nil +} + +func (m *Principal) GetAny() bool { + if x, ok := m.GetIdentifier().(*Principal_Any); ok { + return x.Any + } + return false +} + +func (m *Principal) GetAuthenticated() *Principal_Authenticated { + if x, ok := m.GetIdentifier().(*Principal_Authenticated_); ok { + return x.Authenticated + } + return nil +} + +func (m *Principal) GetSourceIp() *core.CidrRange { + if x, ok := m.GetIdentifier().(*Principal_SourceIp); ok { + return x.SourceIp + } + return nil +} + +func (m *Principal) GetHeader() *route.HeaderMatcher { + if x, ok := m.GetIdentifier().(*Principal_Header); ok { + return x.Header + } + return nil +} + +func (m *Principal) GetUrlPath() *matcher.PathMatcher { + if x, ok := m.GetIdentifier().(*Principal_UrlPath); ok { + return x.UrlPath + } + return nil +} + +func (m *Principal) GetMetadata() *matcher.MetadataMatcher { + if x, ok := m.GetIdentifier().(*Principal_Metadata); ok { + return x.Metadata + } + return nil +} + +func (m *Principal) GetNotId() *Principal { + if x, ok := m.GetIdentifier().(*Principal_NotId); ok { + return x.NotId + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Principal) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Principal_AndIds)(nil), + (*Principal_OrIds)(nil), + (*Principal_Any)(nil), + (*Principal_Authenticated_)(nil), + (*Principal_SourceIp)(nil), + (*Principal_Header)(nil), + (*Principal_UrlPath)(nil), + (*Principal_Metadata)(nil), + (*Principal_NotId)(nil), + } +} + +type Principal_Set struct { + Ids []*Principal `protobuf:"bytes,1,rep,name=ids,proto3" json:"ids,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Principal_Set) Reset() { *m = Principal_Set{} } +func (m *Principal_Set) String() string { return proto.CompactTextString(m) } +func (*Principal_Set) ProtoMessage() {} +func (*Principal_Set) Descriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{3, 0} +} + +func (m *Principal_Set) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Principal_Set.Unmarshal(m, b) +} +func (m *Principal_Set) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Principal_Set.Marshal(b, m, deterministic) +} +func (m *Principal_Set) XXX_Merge(src proto.Message) { + xxx_messageInfo_Principal_Set.Merge(m, src) +} +func (m *Principal_Set) XXX_Size() int { + return xxx_messageInfo_Principal_Set.Size(m) +} +func (m *Principal_Set) XXX_DiscardUnknown() { + xxx_messageInfo_Principal_Set.DiscardUnknown(m) +} + +var xxx_messageInfo_Principal_Set proto.InternalMessageInfo + +func (m *Principal_Set) GetIds() []*Principal { + if m != nil { + return m.Ids + } + return nil +} + +type Principal_Authenticated struct { + PrincipalName *matcher.StringMatcher `protobuf:"bytes,2,opt,name=principal_name,json=principalName,proto3" json:"principal_name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Principal_Authenticated) Reset() { *m = Principal_Authenticated{} } +func (m *Principal_Authenticated) String() string { return proto.CompactTextString(m) } +func (*Principal_Authenticated) ProtoMessage() {} +func (*Principal_Authenticated) Descriptor() ([]byte, []int) { + return fileDescriptor_e8a2b527e1e731e1, []int{3, 1} +} + +func (m *Principal_Authenticated) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Principal_Authenticated.Unmarshal(m, b) +} +func (m *Principal_Authenticated) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Principal_Authenticated.Marshal(b, m, deterministic) +} +func (m *Principal_Authenticated) XXX_Merge(src proto.Message) { + xxx_messageInfo_Principal_Authenticated.Merge(m, src) +} +func (m *Principal_Authenticated) XXX_Size() int { + return xxx_messageInfo_Principal_Authenticated.Size(m) +} +func (m *Principal_Authenticated) XXX_DiscardUnknown() { + xxx_messageInfo_Principal_Authenticated.DiscardUnknown(m) +} + +var xxx_messageInfo_Principal_Authenticated proto.InternalMessageInfo + +func (m *Principal_Authenticated) GetPrincipalName() *matcher.StringMatcher { + if m != nil { + return m.PrincipalName + } + return nil +} + +func init() { + proto.RegisterEnum("envoy.config.rbac.v2.RBAC_Action", RBAC_Action_name, RBAC_Action_value) + proto.RegisterType((*RBAC)(nil), "envoy.config.rbac.v2.RBAC") + proto.RegisterMapType((map[string]*Policy)(nil), "envoy.config.rbac.v2.RBAC.PoliciesEntry") + proto.RegisterType((*Policy)(nil), "envoy.config.rbac.v2.Policy") + proto.RegisterType((*Permission)(nil), "envoy.config.rbac.v2.Permission") + proto.RegisterType((*Permission_Set)(nil), "envoy.config.rbac.v2.Permission.Set") + proto.RegisterType((*Principal)(nil), "envoy.config.rbac.v2.Principal") + proto.RegisterType((*Principal_Set)(nil), "envoy.config.rbac.v2.Principal.Set") + proto.RegisterType((*Principal_Authenticated)(nil), "envoy.config.rbac.v2.Principal.Authenticated") +} + +func init() { proto.RegisterFile("envoy/config/rbac/v2/rbac.proto", fileDescriptor_e8a2b527e1e731e1) } + +var fileDescriptor_e8a2b527e1e731e1 = []byte{ + // 957 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0xdd, 0x8e, 0xdb, 0x44, + 0x18, 0x8d, 0x9d, 0xc4, 0x6b, 0x7f, 0xab, 0x94, 0x30, 0x80, 0xb0, 0x02, 0x65, 0xd3, 0x14, 0xa4, + 0x80, 0x84, 0xad, 0x06, 0x09, 0xb5, 0x6c, 0x41, 0xc4, 0xdb, 0x15, 0x09, 0xda, 0x96, 0xc8, 0x2b, + 0x54, 0xf5, 0x2a, 0x9a, 0xb5, 0xa7, 0xc9, 0x40, 0x32, 0x63, 0xc6, 0xe3, 0x68, 0x73, 0x07, 0xaf, + 0xc0, 0xe3, 0xf0, 0x04, 0xdc, 0x72, 0x8f, 0xc4, 0x3d, 0x4f, 0x80, 0xf6, 0xa6, 0x68, 0xc6, 0x76, + 0x7e, 0xa4, 0xb4, 0x69, 0x04, 0x37, 0x89, 0xe5, 0x39, 0xe7, 0xcc, 0x37, 0xdf, 0x9c, 0xf3, 0x19, + 0x4e, 0x08, 0x5b, 0xf0, 0xa5, 0x1f, 0x71, 0xf6, 0x9c, 0x4e, 0x7c, 0x71, 0x85, 0x23, 0x7f, 0xd1, + 0xd3, 0xff, 0x5e, 0x22, 0xb8, 0xe4, 0xe8, 0x6d, 0x0d, 0xf0, 0x72, 0x80, 0xa7, 0x17, 0x16, 0xbd, + 0x56, 0x41, 0xc3, 0x09, 0x55, 0xf0, 0x88, 0x0b, 0xe2, 0xe3, 0x38, 0x16, 0x24, 0x4d, 0x73, 0x5a, + 0xeb, 0xe3, 0x2d, 0x80, 0xe0, 0x99, 0x24, 0xf9, 0xef, 0x38, 0xe2, 0xf3, 0x84, 0x33, 0xc2, 0x64, + 0x09, 0xbd, 0x93, 0x43, 0xe5, 0x32, 0x21, 0xfe, 0x1c, 0xcb, 0x68, 0x4a, 0x84, 0x3f, 0x27, 0x12, + 0xc7, 0x58, 0xe2, 0x02, 0x72, 0x7b, 0x07, 0x24, 0xc1, 0x72, 0x5a, 0x2c, 0x9f, 0xec, 0x58, 0x4e, + 0xa5, 0xa0, 0x6c, 0x52, 0x00, 0x3e, 0x9a, 0x70, 0x3e, 0x99, 0x11, 0x5d, 0x0e, 0xb9, 0x4e, 0x84, + 0xbf, 0xb8, 0x87, 0x67, 0xc9, 0x14, 0xdf, 0xf3, 0xd3, 0x25, 0x93, 0xf8, 0xba, 0xdc, 0x26, 0x8b, + 0x13, 0xec, 0x63, 0xc6, 0xb8, 0xc4, 0x92, 0x72, 0x96, 0xfa, 0xa9, 0xc4, 0x32, 0x2b, 0x0b, 0x7d, + 0x77, 0x81, 0x67, 0x34, 0xc6, 0x92, 0xf8, 0xe5, 0x43, 0xbe, 0xd0, 0xf9, 0xc5, 0x84, 0x5a, 0x18, + 0xf4, 0xcf, 0xd0, 0x03, 0xb0, 0x70, 0xa4, 0x98, 0xae, 0xd1, 0x36, 0xba, 0xb7, 0x7a, 0x77, 0xbc, + 0x5d, 0xdd, 0xf3, 0x14, 0xd6, 0xeb, 0x6b, 0x60, 0x58, 0x10, 0xd0, 0x23, 0xb0, 0x13, 0x3e, 0xa3, + 0x11, 0x25, 0xa9, 0x6b, 0xb6, 0xab, 0xdd, 0xe3, 0x5e, 0xf7, 0x15, 0xe4, 0x51, 0x01, 0x3d, 0x67, + 0x52, 0x2c, 0xc3, 0x15, 0xb3, 0xf5, 0x0c, 0x1a, 0x5b, 0x4b, 0xa8, 0x09, 0xd5, 0x1f, 0xc9, 0x52, + 0x97, 0xe3, 0x84, 0xea, 0x11, 0xf5, 0xa0, 0xbe, 0xc0, 0xb3, 0x8c, 0xb8, 0x66, 0xdb, 0xe8, 0x1e, + 0xf7, 0xde, 0xdf, 0xbd, 0x8b, 0x56, 0x59, 0x86, 0x39, 0xf4, 0x0b, 0xf3, 0xbe, 0xd1, 0xb9, 0x0d, + 0x56, 0x5e, 0x32, 0x72, 0xa0, 0xde, 0xbf, 0xb8, 0xf8, 0xee, 0x69, 0xb3, 0x82, 0x6c, 0xa8, 0x3d, + 0x3a, 0x7f, 0xf2, 0xac, 0x69, 0x74, 0xfe, 0x32, 0xc0, 0xca, 0x49, 0xe8, 0x02, 0x8e, 0x13, 0x22, + 0xe6, 0x34, 0x4d, 0x55, 0x0f, 0x5d, 0x43, 0x9f, 0xa6, 0xfd, 0x92, 0x7d, 0x56, 0xc0, 0xc0, 0xbe, + 0x09, 0xea, 0xbf, 0x1a, 0xa6, 0x6d, 0x84, 0x9b, 0x74, 0x34, 0x04, 0x48, 0x04, 0x65, 0x11, 0x4d, + 0xf0, 0xac, 0x6c, 0xcd, 0xc9, 0x4b, 0xc4, 0x4a, 0xdc, 0x86, 0xd6, 0x06, 0x19, 0x3d, 0x04, 0x27, + 0xe2, 0x2c, 0xa6, 0xfa, 0x86, 0xaa, 0xfa, 0xf8, 0x1f, 0x78, 0xb9, 0x35, 0x3c, 0x9c, 0x50, 0x4f, + 0x59, 0xc3, 0x2b, 0xad, 0xe1, 0x9d, 0x5f, 0x27, 0x22, 0x5c, 0x13, 0x3a, 0x7f, 0xd6, 0x01, 0xd6, + 0xe5, 0xa2, 0x33, 0x70, 0x30, 0x8b, 0xc7, 0x22, 0x9b, 0x91, 0x54, 0xf7, 0xf7, 0xb8, 0xf7, 0xe1, + 0xbe, 0x33, 0x7a, 0x97, 0x44, 0x0e, 0x2a, 0xa1, 0x8d, 0x59, 0x1c, 0x2a, 0x1e, 0xea, 0x83, 0xcd, + 0x45, 0xa1, 0x61, 0x1e, 0xa4, 0x71, 0xc4, 0x45, 0x2e, 0xf1, 0x1e, 0x54, 0x31, 0x5b, 0xea, 0xe3, + 0xd8, 0xc1, 0xd1, 0x4d, 0x50, 0xfb, 0xc1, 0xb4, 0x8d, 0x41, 0x25, 0x54, 0x6f, 0xd1, 0x29, 0x58, + 0x53, 0x82, 0x63, 0x22, 0xdc, 0x9a, 0x56, 0x2f, 0x0d, 0xa9, 0x4e, 0xbb, 0xe8, 0x79, 0x3a, 0x91, + 0xde, 0x40, 0x23, 0x1e, 0xe7, 0xc1, 0x19, 0x54, 0xc2, 0x82, 0x82, 0x1e, 0x82, 0x9d, 0x89, 0xd9, + 0x58, 0x05, 0xcd, 0x05, 0x4d, 0x2f, 0xfb, 0xae, 0x92, 0xe6, 0x15, 0x49, 0xf3, 0x46, 0x58, 0x4e, + 0xd7, 0xe4, 0xa3, 0x4c, 0xcc, 0xd4, 0x1b, 0x74, 0x0e, 0xb7, 0x62, 0x92, 0x4a, 0xca, 0x74, 0x94, + 0xc6, 0x34, 0x71, 0xeb, 0x5b, 0x86, 0x2b, 0x4a, 0x50, 0xb3, 0xc3, 0x3b, 0xa3, 0xb1, 0x08, 0x31, + 0x9b, 0x90, 0x41, 0x25, 0x6c, 0x6c, 0xb0, 0x86, 0x09, 0xfa, 0x1c, 0x9a, 0x9b, 0x32, 0x09, 0x17, + 0xd2, 0xb5, 0xda, 0x46, 0xb7, 0x11, 0x38, 0x37, 0x81, 0xf5, 0x49, 0xcd, 0x7d, 0xf1, 0xa2, 0x3a, + 0xa8, 0x84, 0x6f, 0x6c, 0x80, 0x46, 0x5c, 0x48, 0xd5, 0xd9, 0x72, 0x88, 0xb8, 0x47, 0x7a, 0xe3, + 0xbb, 0xbb, 0x8a, 0x7f, 0x5c, 0x60, 0xd6, 0x07, 0x58, 0xd1, 0xd0, 0x97, 0x60, 0x33, 0x2e, 0xf5, + 0xed, 0xb8, 0xb6, 0x96, 0xd8, 0x6b, 0x62, 0xd5, 0x00, 0xc6, 0xa5, 0xba, 0x19, 0xf4, 0x14, 0xde, + 0x11, 0xe4, 0xa7, 0x8c, 0xa4, 0x92, 0xc4, 0xe3, 0x94, 0x88, 0x05, 0x11, 0x63, 0x86, 0xe7, 0xc4, + 0x75, 0xb6, 0xae, 0x62, 0xab, 0x9c, 0x4b, 0x3d, 0xb5, 0xd6, 0xc5, 0xbc, 0xb5, 0x52, 0xb8, 0xd4, + 0x02, 0x4f, 0xf0, 0x9c, 0xb4, 0xbe, 0x81, 0xea, 0x25, 0x91, 0xe8, 0x6b, 0xa8, 0x97, 0xe6, 0x3b, + 0x34, 0x60, 0x39, 0x31, 0x38, 0x86, 0x9a, 0x7a, 0x40, 0xd5, 0x7f, 0x02, 0xa3, 0xf3, 0x77, 0x1d, + 0x9c, 0x55, 0x80, 0xd0, 0x57, 0x70, 0xa4, 0xdc, 0x4d, 0xe3, 0xd2, 0xdb, 0x77, 0xf7, 0x44, 0xae, + 0xb0, 0xa5, 0x85, 0x59, 0x3c, 0x8c, 0x55, 0xd4, 0x2c, 0x2e, 0x34, 0xdd, 0x3c, 0x84, 0x5e, 0xe7, + 0x42, 0xb1, 0x5f, 0xe9, 0xe9, 0xef, 0xa1, 0x81, 0x33, 0x39, 0x25, 0x4c, 0xd2, 0x08, 0x4b, 0x12, + 0x17, 0xd6, 0xfe, 0x74, 0xdf, 0x0e, 0xfd, 0x4d, 0x92, 0x32, 0xda, 0x96, 0x0a, 0x3a, 0x05, 0x27, + 0xe5, 0x99, 0x88, 0xc8, 0xeb, 0x5b, 0xd5, 0xce, 0x09, 0xc3, 0x64, 0x23, 0x67, 0xd6, 0x7f, 0xcb, + 0x99, 0x73, 0x70, 0xce, 0xfe, 0x07, 0xa3, 0xdf, 0x07, 0x4b, 0x19, 0x9d, 0xc6, 0x85, 0xcd, 0xf7, + 0x8d, 0x57, 0x75, 0x51, 0x8c, 0xcb, 0x61, 0xdc, 0x0a, 0x72, 0x2b, 0x9e, 0x42, 0x35, 0x77, 0xca, + 0x81, 0xc3, 0x59, 0xb1, 0x5a, 0x63, 0x68, 0x6c, 0x5d, 0x0d, 0x1a, 0xc0, 0xad, 0xd5, 0xd0, 0xce, + 0x13, 0x63, 0xbe, 0x66, 0x62, 0xc2, 0xc6, 0x8a, 0xa8, 0x92, 0xf2, 0x6d, 0xcd, 0x36, 0x9a, 0x66, + 0xf0, 0x26, 0x00, 0x8d, 0x95, 0xfc, 0x73, 0x4a, 0x84, 0x36, 0x7b, 0xf0, 0xe0, 0xb7, 0x9f, 0x7f, + 0xff, 0xc3, 0x32, 0x9b, 0x06, 0x74, 0x28, 0xcf, 0x65, 0x13, 0xc1, 0xaf, 0x97, 0x3b, 0x4b, 0x0f, + 0x9c, 0xf0, 0x0a, 0x47, 0x23, 0xf5, 0xa9, 0x1f, 0x19, 0x57, 0x96, 0xfe, 0xe6, 0x7f, 0xf6, 0x6f, + 0x00, 0x00, 0x00, 0xff, 0xff, 0x8e, 0x7d, 0x24, 0x7e, 0x3a, 0x09, 0x00, 0x00, +} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.validate.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.validate.go new file mode 100644 index 0000000000..c7a492e95d --- /dev/null +++ b/vendor/github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2/rbac.pb.validate.go @@ -0,0 +1,856 @@ +// Code generated by protoc-gen-validate. DO NOT EDIT. +// source: envoy/config/rbac/v2/rbac.proto + +package envoy_config_rbac_v2 + +import ( + "bytes" + "errors" + "fmt" + "net" + "net/mail" + "net/url" + "regexp" + "strings" + "time" + "unicode/utf8" + + "github.com/golang/protobuf/ptypes" +) + +// ensure the imports are used +var ( + _ = bytes.MinRead + _ = errors.New("") + _ = fmt.Print + _ = utf8.UTFMax + _ = (*regexp.Regexp)(nil) + _ = (*strings.Reader)(nil) + _ = net.IPv4len + _ = time.Duration(0) + _ = (*url.URL)(nil) + _ = (*mail.Address)(nil) + _ = ptypes.DynamicAny{} +) + +// define the regex for a UUID once up-front +var _rbac_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") + +// Validate checks the field values on RBAC with the rules defined in the proto +// definition for this message. If any rules are violated, an error is returned. +func (m *RBAC) Validate() error { + if m == nil { + return nil + } + + // no validation rules for Action + + for key, val := range m.GetPolicies() { + _ = val + + // no validation rules for Policies[key] + + if v, ok := interface{}(val).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return RBACValidationError{ + field: fmt.Sprintf("Policies[%v]", key), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + return nil +} + +// RBACValidationError is the validation error returned by RBAC.Validate if the +// designated constraints aren't met. +type RBACValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e RBACValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e RBACValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e RBACValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e RBACValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e RBACValidationError) ErrorName() string { return "RBACValidationError" } + +// Error satisfies the builtin error interface +func (e RBACValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sRBAC.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = RBACValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = RBACValidationError{} + +// Validate checks the field values on Policy with the rules defined in the +// proto definition for this message. If any rules are violated, an error is returned. +func (m *Policy) Validate() error { + if m == nil { + return nil + } + + if len(m.GetPermissions()) < 1 { + return PolicyValidationError{ + field: "Permissions", + reason: "value must contain at least 1 item(s)", + } + } + + for idx, item := range m.GetPermissions() { + _, _ = idx, item + + if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PolicyValidationError{ + field: fmt.Sprintf("Permissions[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + if len(m.GetPrincipals()) < 1 { + return PolicyValidationError{ + field: "Principals", + reason: "value must contain at least 1 item(s)", + } + } + + for idx, item := range m.GetPrincipals() { + _, _ = idx, item + + if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PolicyValidationError{ + field: fmt.Sprintf("Principals[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + if v, ok := interface{}(m.GetCondition()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PolicyValidationError{ + field: "Condition", + reason: "embedded message failed validation", + cause: err, + } + } + } + + return nil +} + +// PolicyValidationError is the validation error returned by Policy.Validate if +// the designated constraints aren't met. +type PolicyValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e PolicyValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e PolicyValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e PolicyValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e PolicyValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e PolicyValidationError) ErrorName() string { return "PolicyValidationError" } + +// Error satisfies the builtin error interface +func (e PolicyValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sPolicy.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = PolicyValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = PolicyValidationError{} + +// Validate checks the field values on Permission with the rules defined in the +// proto definition for this message. If any rules are violated, an error is returned. +func (m *Permission) Validate() error { + if m == nil { + return nil + } + + switch m.Rule.(type) { + + case *Permission_AndRules: + + if v, ok := interface{}(m.GetAndRules()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "AndRules", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Permission_OrRules: + + if v, ok := interface{}(m.GetOrRules()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "OrRules", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Permission_Any: + + if m.GetAny() != true { + return PermissionValidationError{ + field: "Any", + reason: "value must equal true", + } + } + + case *Permission_Header: + + if v, ok := interface{}(m.GetHeader()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "Header", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Permission_UrlPath: + + if v, ok := interface{}(m.GetUrlPath()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "UrlPath", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Permission_DestinationIp: + + if v, ok := interface{}(m.GetDestinationIp()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "DestinationIp", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Permission_DestinationPort: + + if m.GetDestinationPort() > 65535 { + return PermissionValidationError{ + field: "DestinationPort", + reason: "value must be less than or equal to 65535", + } + } + + case *Permission_Metadata: + + if v, ok := interface{}(m.GetMetadata()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "Metadata", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Permission_NotRule: + + if v, ok := interface{}(m.GetNotRule()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "NotRule", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Permission_RequestedServerName: + + if v, ok := interface{}(m.GetRequestedServerName()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PermissionValidationError{ + field: "RequestedServerName", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + return PermissionValidationError{ + field: "Rule", + reason: "value is required", + } + + } + + return nil +} + +// PermissionValidationError is the validation error returned by +// Permission.Validate if the designated constraints aren't met. +type PermissionValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e PermissionValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e PermissionValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e PermissionValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e PermissionValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e PermissionValidationError) ErrorName() string { return "PermissionValidationError" } + +// Error satisfies the builtin error interface +func (e PermissionValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sPermission.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = PermissionValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = PermissionValidationError{} + +// Validate checks the field values on Principal with the rules defined in the +// proto definition for this message. If any rules are violated, an error is returned. +func (m *Principal) Validate() error { + if m == nil { + return nil + } + + switch m.Identifier.(type) { + + case *Principal_AndIds: + + if v, ok := interface{}(m.GetAndIds()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "AndIds", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Principal_OrIds: + + if v, ok := interface{}(m.GetOrIds()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "OrIds", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Principal_Any: + + if m.GetAny() != true { + return PrincipalValidationError{ + field: "Any", + reason: "value must equal true", + } + } + + case *Principal_Authenticated_: + + if v, ok := interface{}(m.GetAuthenticated()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "Authenticated", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Principal_SourceIp: + + if v, ok := interface{}(m.GetSourceIp()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "SourceIp", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Principal_Header: + + if v, ok := interface{}(m.GetHeader()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "Header", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Principal_UrlPath: + + if v, ok := interface{}(m.GetUrlPath()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "UrlPath", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Principal_Metadata: + + if v, ok := interface{}(m.GetMetadata()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "Metadata", + reason: "embedded message failed validation", + cause: err, + } + } + } + + case *Principal_NotId: + + if v, ok := interface{}(m.GetNotId()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return PrincipalValidationError{ + field: "NotId", + reason: "embedded message failed validation", + cause: err, + } + } + } + + default: + return PrincipalValidationError{ + field: "Identifier", + reason: "value is required", + } + + } + + return nil +} + +// PrincipalValidationError is the validation error returned by +// Principal.Validate if the designated constraints aren't met. +type PrincipalValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e PrincipalValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e PrincipalValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e PrincipalValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e PrincipalValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e PrincipalValidationError) ErrorName() string { return "PrincipalValidationError" } + +// Error satisfies the builtin error interface +func (e PrincipalValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sPrincipal.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = PrincipalValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = PrincipalValidationError{} + +// Validate checks the field values on Permission_Set with the rules defined in +// the proto definition for this message. If any rules are violated, an error +// is returned. +func (m *Permission_Set) Validate() error { + if m == nil { + return nil + } + + if len(m.GetRules()) < 1 { + return Permission_SetValidationError{ + field: "Rules", + reason: "value must contain at least 1 item(s)", + } + } + + for idx, item := range m.GetRules() { + _, _ = idx, item + + if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return Permission_SetValidationError{ + field: fmt.Sprintf("Rules[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + return nil +} + +// Permission_SetValidationError is the validation error returned by +// Permission_Set.Validate if the designated constraints aren't met. +type Permission_SetValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e Permission_SetValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e Permission_SetValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e Permission_SetValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e Permission_SetValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e Permission_SetValidationError) ErrorName() string { return "Permission_SetValidationError" } + +// Error satisfies the builtin error interface +func (e Permission_SetValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sPermission_Set.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = Permission_SetValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = Permission_SetValidationError{} + +// Validate checks the field values on Principal_Set with the rules defined in +// the proto definition for this message. If any rules are violated, an error +// is returned. +func (m *Principal_Set) Validate() error { + if m == nil { + return nil + } + + if len(m.GetIds()) < 1 { + return Principal_SetValidationError{ + field: "Ids", + reason: "value must contain at least 1 item(s)", + } + } + + for idx, item := range m.GetIds() { + _, _ = idx, item + + if v, ok := interface{}(item).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return Principal_SetValidationError{ + field: fmt.Sprintf("Ids[%v]", idx), + reason: "embedded message failed validation", + cause: err, + } + } + } + + } + + return nil +} + +// Principal_SetValidationError is the validation error returned by +// Principal_Set.Validate if the designated constraints aren't met. +type Principal_SetValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e Principal_SetValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e Principal_SetValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e Principal_SetValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e Principal_SetValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e Principal_SetValidationError) ErrorName() string { return "Principal_SetValidationError" } + +// Error satisfies the builtin error interface +func (e Principal_SetValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sPrincipal_Set.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = Principal_SetValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = Principal_SetValidationError{} + +// Validate checks the field values on Principal_Authenticated with the rules +// defined in the proto definition for this message. If any rules are +// violated, an error is returned. +func (m *Principal_Authenticated) Validate() error { + if m == nil { + return nil + } + + if v, ok := interface{}(m.GetPrincipalName()).(interface{ Validate() error }); ok { + if err := v.Validate(); err != nil { + return Principal_AuthenticatedValidationError{ + field: "PrincipalName", + reason: "embedded message failed validation", + cause: err, + } + } + } + + return nil +} + +// Principal_AuthenticatedValidationError is the validation error returned by +// Principal_Authenticated.Validate if the designated constraints aren't met. +type Principal_AuthenticatedValidationError struct { + field string + reason string + cause error + key bool +} + +// Field function returns field value. +func (e Principal_AuthenticatedValidationError) Field() string { return e.field } + +// Reason function returns reason value. +func (e Principal_AuthenticatedValidationError) Reason() string { return e.reason } + +// Cause function returns cause value. +func (e Principal_AuthenticatedValidationError) Cause() error { return e.cause } + +// Key function returns key value. +func (e Principal_AuthenticatedValidationError) Key() bool { return e.key } + +// ErrorName returns error name. +func (e Principal_AuthenticatedValidationError) ErrorName() string { + return "Principal_AuthenticatedValidationError" +} + +// Error satisfies the builtin error interface +func (e Principal_AuthenticatedValidationError) Error() string { + cause := "" + if e.cause != nil { + cause = fmt.Sprintf(" | caused by: %v", e.cause) + } + + key := "" + if e.key { + key = "key for " + } + + return fmt.Sprintf( + "invalid %sPrincipal_Authenticated.%s: %s%s", + key, + e.field, + e.reason, + cause) +} + +var _ error = Principal_AuthenticatedValidationError{} + +var _ interface { + Field() string + Reason() string + Key() bool + Cause() error + ErrorName() string +} = Principal_AuthenticatedValidationError{} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.go deleted file mode 100644 index 7e392f730c..0000000000 --- a/vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.go +++ /dev/null @@ -1,125 +0,0 @@ -// Code generated by protoc-gen-go. DO NOT EDIT. -// source: envoy/service/auth/v2alpha/external_auth.proto - -package envoy_service_auth_v2alpha - -import ( - context "context" - fmt "fmt" - v2 "github.com/envoyproxy/go-control-plane/envoy/service/auth/v2" - proto "github.com/golang/protobuf/proto" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" - math "math" -) - -// Reference imports to suppress errors if they are not otherwise used. -var _ = proto.Marshal -var _ = fmt.Errorf -var _ = math.Inf - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the proto package it is being compiled against. -// A compilation error at this line likely means your copy of the -// proto package needs to be updated. -const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package - -func init() { - proto.RegisterFile("envoy/service/auth/v2alpha/external_auth.proto", fileDescriptor_878c0ddb0c43de8d) -} - -var fileDescriptor_878c0ddb0c43de8d = []byte{ - // 176 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0xce, 0xb1, 0x0e, 0x82, 0x30, - 0x10, 0x06, 0xe0, 0x30, 0xe8, 0xd0, 0xc4, 0x85, 0x91, 0x55, 0x07, 0x5d, 0xae, 0x09, 0x8e, 0x4e, - 0xc2, 0x0b, 0x10, 0x5e, 0xc0, 0x54, 0x72, 0x49, 0x1b, 0x49, 0xaf, 0xb6, 0x07, 0x01, 0x9f, 0xc0, - 0xc7, 0x36, 0x54, 0xc6, 0xea, 0x7a, 0xff, 0x97, 0xff, 0x7e, 0x01, 0x68, 0x47, 0x9a, 0x65, 0x40, - 0x3f, 0x9a, 0x0e, 0xa5, 0x1a, 0x58, 0xcb, 0xb1, 0x54, 0xbd, 0xd3, 0x4a, 0xe2, 0xc4, 0xe8, 0xad, - 0xea, 0x6f, 0xcb, 0x15, 0x9c, 0x27, 0xa6, 0xbc, 0x88, 0x1e, 0x56, 0x0f, 0x31, 0x59, 0x7d, 0x71, - 0x4a, 0x76, 0xa5, 0x6a, 0xca, 0x4e, 0xec, 0xae, 0x03, 0x6b, 0xf2, 0xe6, 0xa5, 0xd8, 0x90, 0xcd, - 0x5b, 0xb1, 0xa9, 0x35, 0x76, 0x8f, 0x7c, 0x0f, 0xc9, 0x0f, 0x10, 0xd3, 0x16, 0x9f, 0x03, 0x06, - 0x2e, 0x0e, 0xff, 0x51, 0x70, 0x64, 0x03, 0x56, 0x17, 0x71, 0x34, 0xf4, 0x95, 0xce, 0xd3, 0x34, - 0xc3, 0xef, 0xed, 0x95, 0xa8, 0xd1, 0x73, 0x68, 0x96, 0x71, 0x4d, 0xf6, 0xce, 0xb2, 0xfb, 0x36, - 0x0e, 0x3d, 0x7f, 0x02, 0x00, 0x00, 0xff, 0xff, 0xed, 0xe3, 0x41, 0xb2, 0x21, 0x01, 0x00, 0x00, -} - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConn - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion4 - -// AuthorizationClient is the client API for Authorization service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type AuthorizationClient interface { - Check(ctx context.Context, in *v2.CheckRequest, opts ...grpc.CallOption) (*v2.CheckResponse, error) -} - -type authorizationClient struct { - cc *grpc.ClientConn -} - -func NewAuthorizationClient(cc *grpc.ClientConn) AuthorizationClient { - return &authorizationClient{cc} -} - -func (c *authorizationClient) Check(ctx context.Context, in *v2.CheckRequest, opts ...grpc.CallOption) (*v2.CheckResponse, error) { - out := new(v2.CheckResponse) - err := c.cc.Invoke(ctx, "/envoy.service.auth.v2alpha.Authorization/Check", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// AuthorizationServer is the server API for Authorization service. -type AuthorizationServer interface { - Check(context.Context, *v2.CheckRequest) (*v2.CheckResponse, error) -} - -// UnimplementedAuthorizationServer can be embedded to have forward compatible implementations. -type UnimplementedAuthorizationServer struct { -} - -func (*UnimplementedAuthorizationServer) Check(ctx context.Context, req *v2.CheckRequest) (*v2.CheckResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method Check not implemented") -} - -func RegisterAuthorizationServer(s *grpc.Server, srv AuthorizationServer) { - s.RegisterService(&_Authorization_serviceDesc, srv) -} - -func _Authorization_Check_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(v2.CheckRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(AuthorizationServer).Check(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/envoy.service.auth.v2alpha.Authorization/Check", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(AuthorizationServer).Check(ctx, req.(*v2.CheckRequest)) - } - return interceptor(ctx, in, info, handler) -} - -var _Authorization_serviceDesc = grpc.ServiceDesc{ - ServiceName: "envoy.service.auth.v2alpha.Authorization", - HandlerType: (*AuthorizationServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "Check", - Handler: _Authorization_Check_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "envoy/service/auth/v2alpha/external_auth.proto", -} diff --git a/vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.validate.go b/vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.validate.go deleted file mode 100644 index c52620a2dd..0000000000 --- a/vendor/github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha/external_auth.pb.validate.go +++ /dev/null @@ -1,37 +0,0 @@ -// Code generated by protoc-gen-validate. DO NOT EDIT. -// source: envoy/service/auth/v2alpha/external_auth.proto - -package envoy_service_auth_v2alpha - -import ( - "bytes" - "errors" - "fmt" - "net" - "net/mail" - "net/url" - "regexp" - "strings" - "time" - "unicode/utf8" - - "github.com/golang/protobuf/ptypes" -) - -// ensure the imports are used -var ( - _ = bytes.MinRead - _ = errors.New("") - _ = fmt.Print - _ = utf8.UTFMax - _ = (*regexp.Regexp)(nil) - _ = (*strings.Reader)(nil) - _ = net.IPv4len - _ = time.Duration(0) - _ = (*url.URL)(nil) - _ = (*mail.Address)(nil) - _ = ptypes.DynamicAny{} -) - -// define the regex for a UUID once up-front -var _external_auth_uuidPattern = regexp.MustCompile("^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$") diff --git a/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/cel_service.pb.go b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/cel_service.pb.go new file mode 100644 index 0000000000..b516c4e81b --- /dev/null +++ b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/cel_service.pb.go @@ -0,0 +1,195 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: google/api/expr/v1alpha1/cel_service.proto + +package expr + +import ( + context "context" + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +func init() { + proto.RegisterFile("google/api/expr/v1alpha1/cel_service.proto", fileDescriptor_f35b2125e64b6d66) +} + +var fileDescriptor_f35b2125e64b6d66 = []byte{ + // 240 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0xd1, 0x31, 0x4b, 0xc4, 0x30, + 0x14, 0xc0, 0x71, 0x2b, 0xea, 0x90, 0x45, 0xc8, 0x24, 0x87, 0x93, 0xe0, 0x09, 0x0e, 0x09, 0x77, + 0x8e, 0x3a, 0xdd, 0xe1, 0x5e, 0x74, 0x10, 0x6e, 0x91, 0x67, 0x78, 0xe6, 0x82, 0x69, 0x5e, 0x4c, + 0x6a, 0xf1, 0xcb, 0xf8, 0x3d, 0x1d, 0x25, 0x69, 0xab, 0x88, 0xc4, 0xde, 0xd8, 0xbe, 0x5f, 0xfe, + 0x81, 0x17, 0x76, 0xa9, 0x89, 0xb4, 0x45, 0x09, 0xde, 0x48, 0x7c, 0xf7, 0x41, 0x76, 0x0b, 0xb0, + 0x7e, 0x0b, 0x0b, 0xa9, 0xd0, 0x3e, 0x46, 0x0c, 0x9d, 0x51, 0x28, 0x7c, 0xa0, 0x96, 0xf8, 0x49, + 0x6f, 0x05, 0x78, 0x23, 0x92, 0x15, 0xa3, 0x9d, 0x2d, 0xcb, 0x15, 0x72, 0xcf, 0x14, 0x1a, 0x70, + 0x0a, 0x7f, 0xd7, 0x96, 0x1f, 0xfb, 0x8c, 0xad, 0xd1, 0xde, 0xf7, 0x3f, 0xf9, 0x86, 0x1d, 0xd6, + 0x10, 0x22, 0xf2, 0xb9, 0x28, 0x5d, 0x23, 0x32, 0xb8, 0xc3, 0xd7, 0x37, 0x8c, 0xed, 0xec, 0x62, + 0xd2, 0x45, 0x4f, 0x2e, 0xe2, 0xd9, 0x5e, 0x6a, 0xaf, 0xb7, 0xa8, 0x5e, 0xfe, 0x6b, 0x67, 0xb0, + 0x43, 0x7b, 0x70, 0xdf, 0xed, 0x07, 0x76, 0x70, 0xdb, 0x81, 0xe5, 0xe7, 0xe5, 0x23, 0x69, 0x3e, + 0x96, 0xe7, 0x53, 0x6c, 0x0c, 0xaf, 0x02, 0x3b, 0x55, 0xd4, 0x14, 0xf9, 0xea, 0xf8, 0x67, 0x79, + 0x75, 0x5a, 0x68, 0x5d, 0x6d, 0x6e, 0x06, 0xac, 0xc9, 0x82, 0xd3, 0x82, 0x82, 0x96, 0x1a, 0x5d, + 0x5e, 0xb7, 0xec, 0x47, 0xe0, 0x4d, 0xfc, 0xfb, 0x4a, 0xd7, 0xe9, 0xeb, 0xb3, 0xaa, 0x9e, 0x8e, + 0xb2, 0xbd, 0xfa, 0x0a, 0x00, 0x00, 0xff, 0xff, 0x3e, 0x97, 0x50, 0xb8, 0x16, 0x02, 0x00, 0x00, +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// CelServiceClient is the client API for CelService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type CelServiceClient interface { + // Transforms CEL source text into a parsed representation. + Parse(ctx context.Context, in *ParseRequest, opts ...grpc.CallOption) (*ParseResponse, error) + // Runs static checks on a parsed CEL representation and return + // an annotated representation, or a set of issues. + Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error) + // Evaluates a parsed or annotation CEL representation given + // values of external bindings. + Eval(ctx context.Context, in *EvalRequest, opts ...grpc.CallOption) (*EvalResponse, error) +} + +type celServiceClient struct { + cc *grpc.ClientConn +} + +func NewCelServiceClient(cc *grpc.ClientConn) CelServiceClient { + return &celServiceClient{cc} +} + +func (c *celServiceClient) Parse(ctx context.Context, in *ParseRequest, opts ...grpc.CallOption) (*ParseResponse, error) { + out := new(ParseResponse) + err := c.cc.Invoke(ctx, "/google.api.expr.v1alpha1.CelService/Parse", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *celServiceClient) Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error) { + out := new(CheckResponse) + err := c.cc.Invoke(ctx, "/google.api.expr.v1alpha1.CelService/Check", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *celServiceClient) Eval(ctx context.Context, in *EvalRequest, opts ...grpc.CallOption) (*EvalResponse, error) { + out := new(EvalResponse) + err := c.cc.Invoke(ctx, "/google.api.expr.v1alpha1.CelService/Eval", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// CelServiceServer is the server API for CelService service. +type CelServiceServer interface { + // Transforms CEL source text into a parsed representation. + Parse(context.Context, *ParseRequest) (*ParseResponse, error) + // Runs static checks on a parsed CEL representation and return + // an annotated representation, or a set of issues. + Check(context.Context, *CheckRequest) (*CheckResponse, error) + // Evaluates a parsed or annotation CEL representation given + // values of external bindings. + Eval(context.Context, *EvalRequest) (*EvalResponse, error) +} + +func RegisterCelServiceServer(s *grpc.Server, srv CelServiceServer) { + s.RegisterService(&_CelService_serviceDesc, srv) +} + +func _CelService_Parse_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ParseRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CelServiceServer).Parse(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.api.expr.v1alpha1.CelService/Parse", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CelServiceServer).Parse(ctx, req.(*ParseRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CelService_Check_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CheckRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CelServiceServer).Check(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.api.expr.v1alpha1.CelService/Check", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CelServiceServer).Check(ctx, req.(*CheckRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _CelService_Eval_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(EvalRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(CelServiceServer).Eval(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.api.expr.v1alpha1.CelService/Eval", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(CelServiceServer).Eval(ctx, req.(*EvalRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _CelService_serviceDesc = grpc.ServiceDesc{ + ServiceName: "google.api.expr.v1alpha1.CelService", + HandlerType: (*CelServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Parse", + Handler: _CelService_Parse_Handler, + }, + { + MethodName: "Check", + Handler: _CelService_Check_Handler, + }, + { + MethodName: "Eval", + Handler: _CelService_Eval_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "google/api/expr/v1alpha1/cel_service.proto", +} diff --git a/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/checked.pb.go b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/checked.pb.go new file mode 100644 index 0000000000..f6b2630110 --- /dev/null +++ b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/checked.pb.go @@ -0,0 +1,1144 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: google/api/expr/v1alpha1/checked.proto + +package expr + +import ( + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" + empty "github.com/golang/protobuf/ptypes/empty" + _struct "github.com/golang/protobuf/ptypes/struct" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// CEL primitive types. +type Type_PrimitiveType int32 + +const ( + // Unspecified type. + Type_PRIMITIVE_TYPE_UNSPECIFIED Type_PrimitiveType = 0 + // Boolean type. + Type_BOOL Type_PrimitiveType = 1 + // Int64 type. + // + // Proto-based integer values are widened to int64. + Type_INT64 Type_PrimitiveType = 2 + // Uint64 type. + // + // Proto-based unsigned integer values are widened to uint64. + Type_UINT64 Type_PrimitiveType = 3 + // Double type. + // + // Proto-based float values are widened to double values. + Type_DOUBLE Type_PrimitiveType = 4 + // String type. + Type_STRING Type_PrimitiveType = 5 + // Bytes type. + Type_BYTES Type_PrimitiveType = 6 +) + +var Type_PrimitiveType_name = map[int32]string{ + 0: "PRIMITIVE_TYPE_UNSPECIFIED", + 1: "BOOL", + 2: "INT64", + 3: "UINT64", + 4: "DOUBLE", + 5: "STRING", + 6: "BYTES", +} + +var Type_PrimitiveType_value = map[string]int32{ + "PRIMITIVE_TYPE_UNSPECIFIED": 0, + "BOOL": 1, + "INT64": 2, + "UINT64": 3, + "DOUBLE": 4, + "STRING": 5, + "BYTES": 6, +} + +func (x Type_PrimitiveType) String() string { + return proto.EnumName(Type_PrimitiveType_name, int32(x)) +} + +func (Type_PrimitiveType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{1, 0} +} + +// Well-known protobuf types treated with first-class support in CEL. +type Type_WellKnownType int32 + +const ( + // Unspecified type. + Type_WELL_KNOWN_TYPE_UNSPECIFIED Type_WellKnownType = 0 + // Well-known protobuf.Any type. + // + // Any types are a polymorphic message type. During type-checking they are + // treated like `DYN` types, but at runtime they are resolved to a specific + // message type specified at evaluation time. + Type_ANY Type_WellKnownType = 1 + // Well-known protobuf.Timestamp type, internally referenced as `timestamp`. + Type_TIMESTAMP Type_WellKnownType = 2 + // Well-known protobuf.Duration type, internally referenced as `duration`. + Type_DURATION Type_WellKnownType = 3 +) + +var Type_WellKnownType_name = map[int32]string{ + 0: "WELL_KNOWN_TYPE_UNSPECIFIED", + 1: "ANY", + 2: "TIMESTAMP", + 3: "DURATION", +} + +var Type_WellKnownType_value = map[string]int32{ + "WELL_KNOWN_TYPE_UNSPECIFIED": 0, + "ANY": 1, + "TIMESTAMP": 2, + "DURATION": 3, +} + +func (x Type_WellKnownType) String() string { + return proto.EnumName(Type_WellKnownType_name, int32(x)) +} + +func (Type_WellKnownType) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{1, 1} +} + +// A CEL expression which has been successfully type checked. +type CheckedExpr struct { + // A map from expression ids to resolved references. + // + // The following entries are in this table: + // + // - An Ident or Select expression is represented here if it resolves to a + // declaration. For instance, if `a.b.c` is represented by + // `select(select(id(a), b), c)`, and `a.b` resolves to a declaration, + // while `c` is a field selection, then the reference is attached to the + // nested select expression (but not to the id or or the outer select). + // In turn, if `a` resolves to a declaration and `b.c` are field selections, + // the reference is attached to the ident expression. + // - Every Call expression has an entry here, identifying the function being + // called. + // - Every CreateStruct expression for a message has an entry, identifying + // the message. + ReferenceMap map[int64]*Reference `protobuf:"bytes,2,rep,name=reference_map,json=referenceMap,proto3" json:"reference_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // A map from expression ids to types. + // + // Every expression node which has a type different than DYN has a mapping + // here. If an expression has type DYN, it is omitted from this map to save + // space. + TypeMap map[int64]*Type `protobuf:"bytes,3,rep,name=type_map,json=typeMap,proto3" json:"type_map,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // The source info derived from input that generated the parsed `expr` and + // any optimizations made during the type-checking pass. + SourceInfo *SourceInfo `protobuf:"bytes,5,opt,name=source_info,json=sourceInfo,proto3" json:"source_info,omitempty"` + // The checked expression. Semantically equivalent to the parsed `expr`, but + // may have structural differences. + Expr *Expr `protobuf:"bytes,4,opt,name=expr,proto3" json:"expr,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CheckedExpr) Reset() { *m = CheckedExpr{} } +func (m *CheckedExpr) String() string { return proto.CompactTextString(m) } +func (*CheckedExpr) ProtoMessage() {} +func (*CheckedExpr) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{0} +} + +func (m *CheckedExpr) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CheckedExpr.Unmarshal(m, b) +} +func (m *CheckedExpr) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CheckedExpr.Marshal(b, m, deterministic) +} +func (m *CheckedExpr) XXX_Merge(src proto.Message) { + xxx_messageInfo_CheckedExpr.Merge(m, src) +} +func (m *CheckedExpr) XXX_Size() int { + return xxx_messageInfo_CheckedExpr.Size(m) +} +func (m *CheckedExpr) XXX_DiscardUnknown() { + xxx_messageInfo_CheckedExpr.DiscardUnknown(m) +} + +var xxx_messageInfo_CheckedExpr proto.InternalMessageInfo + +func (m *CheckedExpr) GetReferenceMap() map[int64]*Reference { + if m != nil { + return m.ReferenceMap + } + return nil +} + +func (m *CheckedExpr) GetTypeMap() map[int64]*Type { + if m != nil { + return m.TypeMap + } + return nil +} + +func (m *CheckedExpr) GetSourceInfo() *SourceInfo { + if m != nil { + return m.SourceInfo + } + return nil +} + +func (m *CheckedExpr) GetExpr() *Expr { + if m != nil { + return m.Expr + } + return nil +} + +// Represents a CEL type. +type Type struct { + // The kind of type. + // + // Types that are valid to be assigned to TypeKind: + // *Type_Dyn + // *Type_Null + // *Type_Primitive + // *Type_Wrapper + // *Type_WellKnown + // *Type_ListType_ + // *Type_MapType_ + // *Type_Function + // *Type_MessageType + // *Type_TypeParam + // *Type_Type + // *Type_Error + // *Type_AbstractType_ + TypeKind isType_TypeKind `protobuf_oneof:"type_kind"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Type) Reset() { *m = Type{} } +func (m *Type) String() string { return proto.CompactTextString(m) } +func (*Type) ProtoMessage() {} +func (*Type) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{1} +} + +func (m *Type) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Type.Unmarshal(m, b) +} +func (m *Type) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Type.Marshal(b, m, deterministic) +} +func (m *Type) XXX_Merge(src proto.Message) { + xxx_messageInfo_Type.Merge(m, src) +} +func (m *Type) XXX_Size() int { + return xxx_messageInfo_Type.Size(m) +} +func (m *Type) XXX_DiscardUnknown() { + xxx_messageInfo_Type.DiscardUnknown(m) +} + +var xxx_messageInfo_Type proto.InternalMessageInfo + +type isType_TypeKind interface { + isType_TypeKind() +} + +type Type_Dyn struct { + Dyn *empty.Empty `protobuf:"bytes,1,opt,name=dyn,proto3,oneof"` +} + +type Type_Null struct { + Null _struct.NullValue `protobuf:"varint,2,opt,name=null,proto3,enum=google.protobuf.NullValue,oneof"` +} + +type Type_Primitive struct { + Primitive Type_PrimitiveType `protobuf:"varint,3,opt,name=primitive,proto3,enum=google.api.expr.v1alpha1.Type_PrimitiveType,oneof"` +} + +type Type_Wrapper struct { + Wrapper Type_PrimitiveType `protobuf:"varint,4,opt,name=wrapper,proto3,enum=google.api.expr.v1alpha1.Type_PrimitiveType,oneof"` +} + +type Type_WellKnown struct { + WellKnown Type_WellKnownType `protobuf:"varint,5,opt,name=well_known,json=wellKnown,proto3,enum=google.api.expr.v1alpha1.Type_WellKnownType,oneof"` +} + +type Type_ListType_ struct { + ListType *Type_ListType `protobuf:"bytes,6,opt,name=list_type,json=listType,proto3,oneof"` +} + +type Type_MapType_ struct { + MapType *Type_MapType `protobuf:"bytes,7,opt,name=map_type,json=mapType,proto3,oneof"` +} + +type Type_Function struct { + Function *Type_FunctionType `protobuf:"bytes,8,opt,name=function,proto3,oneof"` +} + +type Type_MessageType struct { + MessageType string `protobuf:"bytes,9,opt,name=message_type,json=messageType,proto3,oneof"` +} + +type Type_TypeParam struct { + TypeParam string `protobuf:"bytes,10,opt,name=type_param,json=typeParam,proto3,oneof"` +} + +type Type_Type struct { + Type *Type `protobuf:"bytes,11,opt,name=type,proto3,oneof"` +} + +type Type_Error struct { + Error *empty.Empty `protobuf:"bytes,12,opt,name=error,proto3,oneof"` +} + +type Type_AbstractType_ struct { + AbstractType *Type_AbstractType `protobuf:"bytes,14,opt,name=abstract_type,json=abstractType,proto3,oneof"` +} + +func (*Type_Dyn) isType_TypeKind() {} + +func (*Type_Null) isType_TypeKind() {} + +func (*Type_Primitive) isType_TypeKind() {} + +func (*Type_Wrapper) isType_TypeKind() {} + +func (*Type_WellKnown) isType_TypeKind() {} + +func (*Type_ListType_) isType_TypeKind() {} + +func (*Type_MapType_) isType_TypeKind() {} + +func (*Type_Function) isType_TypeKind() {} + +func (*Type_MessageType) isType_TypeKind() {} + +func (*Type_TypeParam) isType_TypeKind() {} + +func (*Type_Type) isType_TypeKind() {} + +func (*Type_Error) isType_TypeKind() {} + +func (*Type_AbstractType_) isType_TypeKind() {} + +func (m *Type) GetTypeKind() isType_TypeKind { + if m != nil { + return m.TypeKind + } + return nil +} + +func (m *Type) GetDyn() *empty.Empty { + if x, ok := m.GetTypeKind().(*Type_Dyn); ok { + return x.Dyn + } + return nil +} + +func (m *Type) GetNull() _struct.NullValue { + if x, ok := m.GetTypeKind().(*Type_Null); ok { + return x.Null + } + return _struct.NullValue_NULL_VALUE +} + +func (m *Type) GetPrimitive() Type_PrimitiveType { + if x, ok := m.GetTypeKind().(*Type_Primitive); ok { + return x.Primitive + } + return Type_PRIMITIVE_TYPE_UNSPECIFIED +} + +func (m *Type) GetWrapper() Type_PrimitiveType { + if x, ok := m.GetTypeKind().(*Type_Wrapper); ok { + return x.Wrapper + } + return Type_PRIMITIVE_TYPE_UNSPECIFIED +} + +func (m *Type) GetWellKnown() Type_WellKnownType { + if x, ok := m.GetTypeKind().(*Type_WellKnown); ok { + return x.WellKnown + } + return Type_WELL_KNOWN_TYPE_UNSPECIFIED +} + +func (m *Type) GetListType() *Type_ListType { + if x, ok := m.GetTypeKind().(*Type_ListType_); ok { + return x.ListType + } + return nil +} + +func (m *Type) GetMapType() *Type_MapType { + if x, ok := m.GetTypeKind().(*Type_MapType_); ok { + return x.MapType + } + return nil +} + +func (m *Type) GetFunction() *Type_FunctionType { + if x, ok := m.GetTypeKind().(*Type_Function); ok { + return x.Function + } + return nil +} + +func (m *Type) GetMessageType() string { + if x, ok := m.GetTypeKind().(*Type_MessageType); ok { + return x.MessageType + } + return "" +} + +func (m *Type) GetTypeParam() string { + if x, ok := m.GetTypeKind().(*Type_TypeParam); ok { + return x.TypeParam + } + return "" +} + +func (m *Type) GetType() *Type { + if x, ok := m.GetTypeKind().(*Type_Type); ok { + return x.Type + } + return nil +} + +func (m *Type) GetError() *empty.Empty { + if x, ok := m.GetTypeKind().(*Type_Error); ok { + return x.Error + } + return nil +} + +func (m *Type) GetAbstractType() *Type_AbstractType { + if x, ok := m.GetTypeKind().(*Type_AbstractType_); ok { + return x.AbstractType + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Type) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Type_Dyn)(nil), + (*Type_Null)(nil), + (*Type_Primitive)(nil), + (*Type_Wrapper)(nil), + (*Type_WellKnown)(nil), + (*Type_ListType_)(nil), + (*Type_MapType_)(nil), + (*Type_Function)(nil), + (*Type_MessageType)(nil), + (*Type_TypeParam)(nil), + (*Type_Type)(nil), + (*Type_Error)(nil), + (*Type_AbstractType_)(nil), + } +} + +// List type with typed elements, e.g. `list`. +type Type_ListType struct { + // The element type. + ElemType *Type `protobuf:"bytes,1,opt,name=elem_type,json=elemType,proto3" json:"elem_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Type_ListType) Reset() { *m = Type_ListType{} } +func (m *Type_ListType) String() string { return proto.CompactTextString(m) } +func (*Type_ListType) ProtoMessage() {} +func (*Type_ListType) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{1, 0} +} + +func (m *Type_ListType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Type_ListType.Unmarshal(m, b) +} +func (m *Type_ListType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Type_ListType.Marshal(b, m, deterministic) +} +func (m *Type_ListType) XXX_Merge(src proto.Message) { + xxx_messageInfo_Type_ListType.Merge(m, src) +} +func (m *Type_ListType) XXX_Size() int { + return xxx_messageInfo_Type_ListType.Size(m) +} +func (m *Type_ListType) XXX_DiscardUnknown() { + xxx_messageInfo_Type_ListType.DiscardUnknown(m) +} + +var xxx_messageInfo_Type_ListType proto.InternalMessageInfo + +func (m *Type_ListType) GetElemType() *Type { + if m != nil { + return m.ElemType + } + return nil +} + +// Map type with parameterized key and value types, e.g. `map`. +type Type_MapType struct { + // The type of the key. + KeyType *Type `protobuf:"bytes,1,opt,name=key_type,json=keyType,proto3" json:"key_type,omitempty"` + // The type of the value. + ValueType *Type `protobuf:"bytes,2,opt,name=value_type,json=valueType,proto3" json:"value_type,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Type_MapType) Reset() { *m = Type_MapType{} } +func (m *Type_MapType) String() string { return proto.CompactTextString(m) } +func (*Type_MapType) ProtoMessage() {} +func (*Type_MapType) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{1, 1} +} + +func (m *Type_MapType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Type_MapType.Unmarshal(m, b) +} +func (m *Type_MapType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Type_MapType.Marshal(b, m, deterministic) +} +func (m *Type_MapType) XXX_Merge(src proto.Message) { + xxx_messageInfo_Type_MapType.Merge(m, src) +} +func (m *Type_MapType) XXX_Size() int { + return xxx_messageInfo_Type_MapType.Size(m) +} +func (m *Type_MapType) XXX_DiscardUnknown() { + xxx_messageInfo_Type_MapType.DiscardUnknown(m) +} + +var xxx_messageInfo_Type_MapType proto.InternalMessageInfo + +func (m *Type_MapType) GetKeyType() *Type { + if m != nil { + return m.KeyType + } + return nil +} + +func (m *Type_MapType) GetValueType() *Type { + if m != nil { + return m.ValueType + } + return nil +} + +// Function type with result and arg types. +type Type_FunctionType struct { + // Result type of the function. + ResultType *Type `protobuf:"bytes,1,opt,name=result_type,json=resultType,proto3" json:"result_type,omitempty"` + // Argument types of the function. + ArgTypes []*Type `protobuf:"bytes,2,rep,name=arg_types,json=argTypes,proto3" json:"arg_types,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Type_FunctionType) Reset() { *m = Type_FunctionType{} } +func (m *Type_FunctionType) String() string { return proto.CompactTextString(m) } +func (*Type_FunctionType) ProtoMessage() {} +func (*Type_FunctionType) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{1, 2} +} + +func (m *Type_FunctionType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Type_FunctionType.Unmarshal(m, b) +} +func (m *Type_FunctionType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Type_FunctionType.Marshal(b, m, deterministic) +} +func (m *Type_FunctionType) XXX_Merge(src proto.Message) { + xxx_messageInfo_Type_FunctionType.Merge(m, src) +} +func (m *Type_FunctionType) XXX_Size() int { + return xxx_messageInfo_Type_FunctionType.Size(m) +} +func (m *Type_FunctionType) XXX_DiscardUnknown() { + xxx_messageInfo_Type_FunctionType.DiscardUnknown(m) +} + +var xxx_messageInfo_Type_FunctionType proto.InternalMessageInfo + +func (m *Type_FunctionType) GetResultType() *Type { + if m != nil { + return m.ResultType + } + return nil +} + +func (m *Type_FunctionType) GetArgTypes() []*Type { + if m != nil { + return m.ArgTypes + } + return nil +} + +// Application defined abstract type. +type Type_AbstractType struct { + // The fully qualified name of this abstract type. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Parameter types for this abstract type. + ParameterTypes []*Type `protobuf:"bytes,2,rep,name=parameter_types,json=parameterTypes,proto3" json:"parameter_types,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Type_AbstractType) Reset() { *m = Type_AbstractType{} } +func (m *Type_AbstractType) String() string { return proto.CompactTextString(m) } +func (*Type_AbstractType) ProtoMessage() {} +func (*Type_AbstractType) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{1, 3} +} + +func (m *Type_AbstractType) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Type_AbstractType.Unmarshal(m, b) +} +func (m *Type_AbstractType) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Type_AbstractType.Marshal(b, m, deterministic) +} +func (m *Type_AbstractType) XXX_Merge(src proto.Message) { + xxx_messageInfo_Type_AbstractType.Merge(m, src) +} +func (m *Type_AbstractType) XXX_Size() int { + return xxx_messageInfo_Type_AbstractType.Size(m) +} +func (m *Type_AbstractType) XXX_DiscardUnknown() { + xxx_messageInfo_Type_AbstractType.DiscardUnknown(m) +} + +var xxx_messageInfo_Type_AbstractType proto.InternalMessageInfo + +func (m *Type_AbstractType) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *Type_AbstractType) GetParameterTypes() []*Type { + if m != nil { + return m.ParameterTypes + } + return nil +} + +// Represents a declaration of a named value or function. +// +// A declaration is part of the contract between the expression, the agent +// evaluating that expression, and the caller requesting evaluation. +type Decl struct { + // The fully qualified name of the declaration. + // + // Declarations are organized in containers and this represents the full path + // to the declaration in its container, as in `google.api.expr.Decl`. + // + // Declarations used as + // [FunctionDecl.Overload][google.api.expr.v1alpha1.Decl.FunctionDecl.Overload] + // parameters may or may not have a name depending on whether the overload is + // function declaration or a function definition containing a result + // [Expr][google.api.expr.v1alpha1.Expr]. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // Required. The declaration kind. + // + // Types that are valid to be assigned to DeclKind: + // *Decl_Ident + // *Decl_Function + DeclKind isDecl_DeclKind `protobuf_oneof:"decl_kind"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Decl) Reset() { *m = Decl{} } +func (m *Decl) String() string { return proto.CompactTextString(m) } +func (*Decl) ProtoMessage() {} +func (*Decl) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{2} +} + +func (m *Decl) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Decl.Unmarshal(m, b) +} +func (m *Decl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Decl.Marshal(b, m, deterministic) +} +func (m *Decl) XXX_Merge(src proto.Message) { + xxx_messageInfo_Decl.Merge(m, src) +} +func (m *Decl) XXX_Size() int { + return xxx_messageInfo_Decl.Size(m) +} +func (m *Decl) XXX_DiscardUnknown() { + xxx_messageInfo_Decl.DiscardUnknown(m) +} + +var xxx_messageInfo_Decl proto.InternalMessageInfo + +func (m *Decl) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +type isDecl_DeclKind interface { + isDecl_DeclKind() +} + +type Decl_Ident struct { + Ident *Decl_IdentDecl `protobuf:"bytes,2,opt,name=ident,proto3,oneof"` +} + +type Decl_Function struct { + Function *Decl_FunctionDecl `protobuf:"bytes,3,opt,name=function,proto3,oneof"` +} + +func (*Decl_Ident) isDecl_DeclKind() {} + +func (*Decl_Function) isDecl_DeclKind() {} + +func (m *Decl) GetDeclKind() isDecl_DeclKind { + if m != nil { + return m.DeclKind + } + return nil +} + +func (m *Decl) GetIdent() *Decl_IdentDecl { + if x, ok := m.GetDeclKind().(*Decl_Ident); ok { + return x.Ident + } + return nil +} + +func (m *Decl) GetFunction() *Decl_FunctionDecl { + if x, ok := m.GetDeclKind().(*Decl_Function); ok { + return x.Function + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Decl) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Decl_Ident)(nil), + (*Decl_Function)(nil), + } +} + +// Identifier declaration which specifies its type and optional `Expr` value. +// +// An identifier without a value is a declaration that must be provided at +// evaluation time. An identifier with a value should resolve to a constant, +// but may be used in conjunction with other identifiers bound at evaluation +// time. +type Decl_IdentDecl struct { + // Required. The type of the identifier. + Type *Type `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + // The constant value of the identifier. If not specified, the identifier + // must be supplied at evaluation time. + Value *Constant `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + // Documentation string for the identifier. + Doc string `protobuf:"bytes,3,opt,name=doc,proto3" json:"doc,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Decl_IdentDecl) Reset() { *m = Decl_IdentDecl{} } +func (m *Decl_IdentDecl) String() string { return proto.CompactTextString(m) } +func (*Decl_IdentDecl) ProtoMessage() {} +func (*Decl_IdentDecl) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{2, 0} +} + +func (m *Decl_IdentDecl) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Decl_IdentDecl.Unmarshal(m, b) +} +func (m *Decl_IdentDecl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Decl_IdentDecl.Marshal(b, m, deterministic) +} +func (m *Decl_IdentDecl) XXX_Merge(src proto.Message) { + xxx_messageInfo_Decl_IdentDecl.Merge(m, src) +} +func (m *Decl_IdentDecl) XXX_Size() int { + return xxx_messageInfo_Decl_IdentDecl.Size(m) +} +func (m *Decl_IdentDecl) XXX_DiscardUnknown() { + xxx_messageInfo_Decl_IdentDecl.DiscardUnknown(m) +} + +var xxx_messageInfo_Decl_IdentDecl proto.InternalMessageInfo + +func (m *Decl_IdentDecl) GetType() *Type { + if m != nil { + return m.Type + } + return nil +} + +func (m *Decl_IdentDecl) GetValue() *Constant { + if m != nil { + return m.Value + } + return nil +} + +func (m *Decl_IdentDecl) GetDoc() string { + if m != nil { + return m.Doc + } + return "" +} + +// Function declaration specifies one or more overloads which indicate the +// function's parameter types and return type, and may optionally specify a +// function definition in terms of CEL expressions. +// +// Functions have no observable side-effects (there may be side-effects like +// logging which are not observable from CEL). +type Decl_FunctionDecl struct { + // Required. List of function overloads, must contain at least one overload. + Overloads []*Decl_FunctionDecl_Overload `protobuf:"bytes,1,rep,name=overloads,proto3" json:"overloads,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Decl_FunctionDecl) Reset() { *m = Decl_FunctionDecl{} } +func (m *Decl_FunctionDecl) String() string { return proto.CompactTextString(m) } +func (*Decl_FunctionDecl) ProtoMessage() {} +func (*Decl_FunctionDecl) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{2, 1} +} + +func (m *Decl_FunctionDecl) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Decl_FunctionDecl.Unmarshal(m, b) +} +func (m *Decl_FunctionDecl) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Decl_FunctionDecl.Marshal(b, m, deterministic) +} +func (m *Decl_FunctionDecl) XXX_Merge(src proto.Message) { + xxx_messageInfo_Decl_FunctionDecl.Merge(m, src) +} +func (m *Decl_FunctionDecl) XXX_Size() int { + return xxx_messageInfo_Decl_FunctionDecl.Size(m) +} +func (m *Decl_FunctionDecl) XXX_DiscardUnknown() { + xxx_messageInfo_Decl_FunctionDecl.DiscardUnknown(m) +} + +var xxx_messageInfo_Decl_FunctionDecl proto.InternalMessageInfo + +func (m *Decl_FunctionDecl) GetOverloads() []*Decl_FunctionDecl_Overload { + if m != nil { + return m.Overloads + } + return nil +} + +// An overload indicates a function's parameter types and return type, and +// may optionally include a function body described in terms of +// [Expr][google.api.expr.v1alpha1.Expr] values. +// +// Functions overloads are declared in either a function or method +// call-style. For methods, the `params[0]` is the expected type of the +// target receiver. +// +// Overloads must have non-overlapping argument types after erasure of all +// parameterized type variables (similar as type erasure in Java). +type Decl_FunctionDecl_Overload struct { + // Required. Globally unique overload name of the function which reflects + // the function name and argument types. + // + // This will be used by a [Reference][google.api.expr.v1alpha1.Reference] + // to indicate the `overload_id` that was resolved for the function + // `name`. + OverloadId string `protobuf:"bytes,1,opt,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"` + // List of function parameter [Type][google.api.expr.v1alpha1.Type] + // values. + // + // Param types are disjoint after generic type parameters have been + // replaced with the type `DYN`. Since the `DYN` type is compatible with + // any other type, this means that if `A` is a type parameter, the + // function types `int` and `int` are not disjoint. Likewise, + // `map` is not disjoint from `map`. + // + // When the `result_type` of a function is a generic type param, the + // type param name also appears as the `type` of on at least one params. + Params []*Type `protobuf:"bytes,2,rep,name=params,proto3" json:"params,omitempty"` + // The type param names associated with the function declaration. + // + // For example, `function ex(K key, map map) : V` would yield + // the type params of `K, V`. + TypeParams []string `protobuf:"bytes,3,rep,name=type_params,json=typeParams,proto3" json:"type_params,omitempty"` + // Required. The result type of the function. For example, the operator + // `string.isEmpty()` would have `result_type` of `kind: BOOL`. + ResultType *Type `protobuf:"bytes,4,opt,name=result_type,json=resultType,proto3" json:"result_type,omitempty"` + // Whether the function is to be used in a method call-style `x.f(...)` + // of a function call-style `f(x, ...)`. + // + // For methods, the first parameter declaration, `params[0]` is the + // expected type of the target receiver. + IsInstanceFunction bool `protobuf:"varint,5,opt,name=is_instance_function,json=isInstanceFunction,proto3" json:"is_instance_function,omitempty"` + // Documentation string for the overload. + Doc string `protobuf:"bytes,6,opt,name=doc,proto3" json:"doc,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Decl_FunctionDecl_Overload) Reset() { *m = Decl_FunctionDecl_Overload{} } +func (m *Decl_FunctionDecl_Overload) String() string { return proto.CompactTextString(m) } +func (*Decl_FunctionDecl_Overload) ProtoMessage() {} +func (*Decl_FunctionDecl_Overload) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{2, 1, 0} +} + +func (m *Decl_FunctionDecl_Overload) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Decl_FunctionDecl_Overload.Unmarshal(m, b) +} +func (m *Decl_FunctionDecl_Overload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Decl_FunctionDecl_Overload.Marshal(b, m, deterministic) +} +func (m *Decl_FunctionDecl_Overload) XXX_Merge(src proto.Message) { + xxx_messageInfo_Decl_FunctionDecl_Overload.Merge(m, src) +} +func (m *Decl_FunctionDecl_Overload) XXX_Size() int { + return xxx_messageInfo_Decl_FunctionDecl_Overload.Size(m) +} +func (m *Decl_FunctionDecl_Overload) XXX_DiscardUnknown() { + xxx_messageInfo_Decl_FunctionDecl_Overload.DiscardUnknown(m) +} + +var xxx_messageInfo_Decl_FunctionDecl_Overload proto.InternalMessageInfo + +func (m *Decl_FunctionDecl_Overload) GetOverloadId() string { + if m != nil { + return m.OverloadId + } + return "" +} + +func (m *Decl_FunctionDecl_Overload) GetParams() []*Type { + if m != nil { + return m.Params + } + return nil +} + +func (m *Decl_FunctionDecl_Overload) GetTypeParams() []string { + if m != nil { + return m.TypeParams + } + return nil +} + +func (m *Decl_FunctionDecl_Overload) GetResultType() *Type { + if m != nil { + return m.ResultType + } + return nil +} + +func (m *Decl_FunctionDecl_Overload) GetIsInstanceFunction() bool { + if m != nil { + return m.IsInstanceFunction + } + return false +} + +func (m *Decl_FunctionDecl_Overload) GetDoc() string { + if m != nil { + return m.Doc + } + return "" +} + +// Describes a resolved reference to a declaration. +type Reference struct { + // The fully qualified name of the declaration. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + // For references to functions, this is a list of `Overload.overload_id` + // values which match according to typing rules. + // + // If the list has more than one element, overload resolution among the + // presented candidates must happen at runtime because of dynamic types. The + // type checker attempts to narrow down this list as much as possible. + // + // Empty if this is not a reference to a + // [Decl.FunctionDecl][google.api.expr.v1alpha1.Decl.FunctionDecl]. + OverloadId []string `protobuf:"bytes,3,rep,name=overload_id,json=overloadId,proto3" json:"overload_id,omitempty"` + // For references to constants, this may contain the value of the + // constant if known at compile time. + Value *Constant `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Reference) Reset() { *m = Reference{} } +func (m *Reference) String() string { return proto.CompactTextString(m) } +func (*Reference) ProtoMessage() {} +func (*Reference) Descriptor() ([]byte, []int) { + return fileDescriptor_30a741de3e790389, []int{3} +} + +func (m *Reference) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Reference.Unmarshal(m, b) +} +func (m *Reference) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Reference.Marshal(b, m, deterministic) +} +func (m *Reference) XXX_Merge(src proto.Message) { + xxx_messageInfo_Reference.Merge(m, src) +} +func (m *Reference) XXX_Size() int { + return xxx_messageInfo_Reference.Size(m) +} +func (m *Reference) XXX_DiscardUnknown() { + xxx_messageInfo_Reference.DiscardUnknown(m) +} + +var xxx_messageInfo_Reference proto.InternalMessageInfo + +func (m *Reference) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +func (m *Reference) GetOverloadId() []string { + if m != nil { + return m.OverloadId + } + return nil +} + +func (m *Reference) GetValue() *Constant { + if m != nil { + return m.Value + } + return nil +} + +func init() { + proto.RegisterEnum("google.api.expr.v1alpha1.Type_PrimitiveType", Type_PrimitiveType_name, Type_PrimitiveType_value) + proto.RegisterEnum("google.api.expr.v1alpha1.Type_WellKnownType", Type_WellKnownType_name, Type_WellKnownType_value) + proto.RegisterType((*CheckedExpr)(nil), "google.api.expr.v1alpha1.CheckedExpr") + proto.RegisterMapType((map[int64]*Reference)(nil), "google.api.expr.v1alpha1.CheckedExpr.ReferenceMapEntry") + proto.RegisterMapType((map[int64]*Type)(nil), "google.api.expr.v1alpha1.CheckedExpr.TypeMapEntry") + proto.RegisterType((*Type)(nil), "google.api.expr.v1alpha1.Type") + proto.RegisterType((*Type_ListType)(nil), "google.api.expr.v1alpha1.Type.ListType") + proto.RegisterType((*Type_MapType)(nil), "google.api.expr.v1alpha1.Type.MapType") + proto.RegisterType((*Type_FunctionType)(nil), "google.api.expr.v1alpha1.Type.FunctionType") + proto.RegisterType((*Type_AbstractType)(nil), "google.api.expr.v1alpha1.Type.AbstractType") + proto.RegisterType((*Decl)(nil), "google.api.expr.v1alpha1.Decl") + proto.RegisterType((*Decl_IdentDecl)(nil), "google.api.expr.v1alpha1.Decl.IdentDecl") + proto.RegisterType((*Decl_FunctionDecl)(nil), "google.api.expr.v1alpha1.Decl.FunctionDecl") + proto.RegisterType((*Decl_FunctionDecl_Overload)(nil), "google.api.expr.v1alpha1.Decl.FunctionDecl.Overload") + proto.RegisterType((*Reference)(nil), "google.api.expr.v1alpha1.Reference") +} + +func init() { + proto.RegisterFile("google/api/expr/v1alpha1/checked.proto", fileDescriptor_30a741de3e790389) +} + +var fileDescriptor_30a741de3e790389 = []byte{ + // 1144 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0x5f, 0x6f, 0xdb, 0xb6, + 0x17, 0x8d, 0x6c, 0xd9, 0x96, 0xae, 0x9c, 0xfe, 0xfc, 0x23, 0x86, 0x41, 0x50, 0x8b, 0x36, 0x70, + 0xb7, 0x2e, 0xd8, 0x06, 0xb9, 0xf5, 0x82, 0xae, 0x5d, 0x37, 0x6c, 0x71, 0xa2, 0x24, 0x42, 0xfd, + 0x0f, 0x8a, 0x93, 0x20, 0xc5, 0x00, 0x81, 0x91, 0x19, 0x57, 0xb0, 0x2c, 0x09, 0x94, 0x9c, 0xc4, + 0x7b, 0xdd, 0xd3, 0xb0, 0x7d, 0x9b, 0x7d, 0x89, 0x7d, 0x9a, 0xbd, 0x6e, 0x8f, 0x03, 0x29, 0xc9, + 0x71, 0xfe, 0x38, 0xb6, 0xdf, 0xae, 0xc8, 0x73, 0x0e, 0x2f, 0x2f, 0xcf, 0x25, 0x05, 0x2f, 0x06, + 0x41, 0x30, 0xf0, 0x48, 0x0d, 0x87, 0x6e, 0x8d, 0x5c, 0x85, 0xb4, 0x76, 0xf1, 0x0a, 0x7b, 0xe1, + 0x47, 0xfc, 0xaa, 0xe6, 0x7c, 0x24, 0xce, 0x90, 0xf4, 0xf5, 0x90, 0x06, 0x71, 0x80, 0xd4, 0x04, + 0xa7, 0xe3, 0xd0, 0xd5, 0x19, 0x4e, 0xcf, 0x70, 0xda, 0xe7, 0x73, 0x15, 0xa2, 0x89, 0x1f, 0xe3, + 0xab, 0x44, 0x40, 0x7b, 0x9c, 0xc2, 0xf8, 0xd7, 0xd9, 0xf8, 0xbc, 0x46, 0x46, 0x61, 0x3c, 0x49, + 0x27, 0x9f, 0xdc, 0x9e, 0x8c, 0x62, 0x3a, 0x76, 0xe2, 0x64, 0xb6, 0xfa, 0x4f, 0x1e, 0x94, 0x9d, + 0x24, 0x1b, 0xe3, 0x2a, 0xa4, 0xe8, 0x67, 0x58, 0xa7, 0xe4, 0x9c, 0x50, 0xe2, 0x3b, 0xc4, 0x1e, + 0xe1, 0x50, 0xcd, 0x6d, 0xe4, 0x37, 0x95, 0xfa, 0xb7, 0xfa, 0xbc, 0x1c, 0xf5, 0x19, 0xb6, 0x6e, + 0x65, 0xd4, 0x16, 0x0e, 0x0d, 0x3f, 0xa6, 0x13, 0xab, 0x4c, 0x67, 0x86, 0x50, 0x0b, 0xa4, 0x78, + 0x12, 0x26, 0xc2, 0x79, 0x2e, 0x5c, 0x5f, 0x4e, 0xb8, 0x37, 0x09, 0xaf, 0x35, 0x4b, 0x71, 0xf2, + 0x85, 0x0c, 0x50, 0xa2, 0x60, 0x4c, 0x1d, 0x62, 0xbb, 0xfe, 0x79, 0xa0, 0x16, 0x36, 0x84, 0x4d, + 0xa5, 0xfe, 0xd9, 0x7c, 0xc5, 0x43, 0x0e, 0x36, 0xfd, 0xf3, 0xc0, 0x82, 0x68, 0x1a, 0xa3, 0x3a, + 0x88, 0x0c, 0xa7, 0x8a, 0x9c, 0xff, 0x74, 0x3e, 0x9f, 0xa5, 0x62, 0x71, 0xac, 0xd6, 0x87, 0xff, + 0xdf, 0xd9, 0x2c, 0xaa, 0x40, 0x7e, 0x48, 0x26, 0xaa, 0xb0, 0x21, 0x6c, 0xe6, 0x2d, 0x16, 0xa2, + 0xb7, 0x50, 0xb8, 0xc0, 0xde, 0x98, 0xa8, 0x39, 0xae, 0xfd, 0x7c, 0xbe, 0xf6, 0x54, 0xcd, 0x4a, + 0x18, 0xdf, 0xe5, 0xde, 0x08, 0xda, 0x07, 0x28, 0xcf, 0xee, 0xfc, 0x9e, 0x05, 0xb6, 0x6e, 0x2e, + 0xf0, 0x40, 0xf2, 0x4c, 0x68, 0x46, 0xbb, 0xfa, 0x97, 0x02, 0x22, 0x1b, 0x43, 0x5f, 0x42, 0xbe, + 0x3f, 0xf1, 0xb9, 0xa8, 0x52, 0xff, 0x34, 0x13, 0xc8, 0xec, 0xa2, 0x1b, 0xcc, 0x4b, 0x07, 0x6b, + 0x16, 0x03, 0xa1, 0x97, 0x20, 0xfa, 0x63, 0xcf, 0xe3, 0xab, 0x3d, 0xaa, 0x6b, 0x77, 0xc0, 0xed, + 0xb1, 0xe7, 0x1d, 0xb3, 0x25, 0x0e, 0xd6, 0x2c, 0x8e, 0x44, 0x4d, 0x90, 0x43, 0xea, 0x8e, 0xdc, + 0xd8, 0xbd, 0x20, 0x6a, 0x9e, 0xd3, 0xbe, 0x7e, 0x38, 0x49, 0xbd, 0x9b, 0xe1, 0xd9, 0xd7, 0xc1, + 0x9a, 0x75, 0x2d, 0x80, 0x0e, 0xa0, 0x74, 0x49, 0x71, 0x18, 0x92, 0xe4, 0xb4, 0x56, 0xd7, 0xca, + 0xe8, 0xa8, 0x05, 0x70, 0x49, 0x3c, 0xcf, 0x1e, 0xfa, 0xc1, 0xa5, 0xcf, 0xad, 0xb3, 0x58, 0xec, + 0x84, 0x78, 0xde, 0x7b, 0x86, 0xcf, 0x12, 0xbb, 0xcc, 0x06, 0xd0, 0x1e, 0xc8, 0x9e, 0x1b, 0xc5, + 0x36, 0xb3, 0xa6, 0x5a, 0xe4, 0xa5, 0xfc, 0x62, 0x81, 0x5a, 0xd3, 0x8d, 0xe2, 0x54, 0x48, 0xf2, + 0xd2, 0x18, 0xed, 0x80, 0x34, 0xc2, 0x61, 0x22, 0x53, 0xe2, 0x32, 0x2f, 0x16, 0xc8, 0xb4, 0x70, + 0x98, 0xed, 0x6d, 0x94, 0x84, 0xc8, 0x04, 0xe9, 0x7c, 0xec, 0x3b, 0xb1, 0x1b, 0xf8, 0xaa, 0xc4, + 0x45, 0xbe, 0x5a, 0x20, 0xb2, 0x97, 0xc2, 0xb3, 0x7c, 0x32, 0x3a, 0x7a, 0x0e, 0xe5, 0x11, 0x89, + 0x22, 0x3c, 0x20, 0x49, 0x4e, 0xf2, 0x86, 0xb0, 0x29, 0x1f, 0xac, 0x59, 0x4a, 0x3a, 0xca, 0xd7, + 0x7b, 0x06, 0xc0, 0xdb, 0x3a, 0xc4, 0x14, 0x8f, 0x54, 0x48, 0x21, 0x32, 0x1b, 0xeb, 0xb2, 0x21, + 0xb4, 0x05, 0x22, 0x67, 0x2b, 0xcb, 0x98, 0x94, 0x59, 0x87, 0xa1, 0x91, 0x0e, 0x05, 0x42, 0x69, + 0x40, 0xd5, 0xf2, 0x02, 0x6b, 0x26, 0x30, 0x64, 0xc1, 0x3a, 0x3e, 0x8b, 0x62, 0x8a, 0x9d, 0xf4, + 0x1c, 0x1e, 0x2d, 0xb5, 0xf7, 0xed, 0x94, 0x93, 0xae, 0x5d, 0xc6, 0x33, 0xdf, 0xda, 0x3e, 0x48, + 0xd9, 0x39, 0xa1, 0x77, 0x20, 0x13, 0x8f, 0x8c, 0x12, 0x6d, 0x61, 0xa9, 0x7e, 0x93, 0x18, 0x81, + 0x0b, 0xfd, 0x2a, 0x40, 0x29, 0x3d, 0x2a, 0xf4, 0x16, 0xa4, 0x21, 0x99, 0xac, 0xa2, 0x53, 0x1a, + 0x92, 0x09, 0xa7, 0xfe, 0x00, 0xc0, 0x5b, 0x38, 0x21, 0x2f, 0xd7, 0xf4, 0x32, 0x67, 0xf0, 0x2c, + 0xfe, 0x10, 0xa0, 0x3c, 0x7b, 0xd6, 0xe8, 0x47, 0x50, 0x28, 0x89, 0xc6, 0x5e, 0xbc, 0x4a, 0x36, + 0x90, 0x50, 0xb2, 0xa2, 0x60, 0x3a, 0xe0, 0xec, 0x28, 0x7d, 0x2c, 0x16, 0x16, 0x05, 0xd3, 0x01, + 0x0b, 0x22, 0x6d, 0x08, 0xe5, 0xd9, 0xea, 0x23, 0x04, 0xa2, 0x8f, 0x47, 0x49, 0x1a, 0xb2, 0xc5, + 0x63, 0xb4, 0x0f, 0xff, 0xe3, 0xbe, 0x22, 0x31, 0xa1, 0x2b, 0x2d, 0xf3, 0x68, 0x4a, 0xe3, 0x8b, + 0x55, 0x23, 0x58, 0xbf, 0x71, 0x1b, 0xa0, 0xa7, 0xa0, 0x75, 0x2d, 0xb3, 0x65, 0xf6, 0xcc, 0x63, + 0xc3, 0xee, 0x9d, 0x76, 0x0d, 0xfb, 0xa8, 0x7d, 0xd8, 0x35, 0x76, 0xcc, 0x3d, 0xd3, 0xd8, 0xad, + 0xac, 0x21, 0x09, 0xc4, 0x46, 0xa7, 0xd3, 0xac, 0x08, 0x48, 0x86, 0x82, 0xd9, 0xee, 0xbd, 0xde, + 0xaa, 0xe4, 0x10, 0x40, 0xf1, 0x28, 0x89, 0xf3, 0x2c, 0xde, 0xed, 0x1c, 0x35, 0x9a, 0x46, 0x45, + 0x64, 0xf1, 0x61, 0xcf, 0x32, 0xdb, 0xfb, 0x95, 0x02, 0x83, 0x37, 0x4e, 0x7b, 0xc6, 0x61, 0xa5, + 0x58, 0x3d, 0x86, 0xf5, 0x1b, 0xb7, 0x06, 0x7a, 0x06, 0x8f, 0x4f, 0x8c, 0x66, 0xd3, 0x7e, 0xdf, + 0xee, 0x9c, 0xb4, 0xef, 0x5b, 0xb5, 0x04, 0xf9, 0xed, 0xf6, 0x69, 0x45, 0x40, 0xeb, 0x20, 0xf7, + 0xcc, 0x96, 0x71, 0xd8, 0xdb, 0x6e, 0x75, 0x2b, 0x39, 0x54, 0x06, 0x69, 0xf7, 0xc8, 0xda, 0xee, + 0x99, 0x9d, 0x76, 0x25, 0xdf, 0x50, 0x80, 0xb7, 0x97, 0x3d, 0x74, 0xfd, 0x7e, 0xf5, 0xcf, 0x02, + 0x88, 0xbb, 0xc4, 0xf1, 0xee, 0xad, 0xdf, 0x4f, 0x50, 0x70, 0xfb, 0xc4, 0x8f, 0x53, 0xb3, 0x6c, + 0xce, 0xaf, 0x1a, 0x93, 0xd0, 0x4d, 0x86, 0x65, 0x11, 0xeb, 0x2b, 0x4e, 0xbc, 0x71, 0x9d, 0xe4, + 0x17, 0xb5, 0x14, 0x17, 0xc9, 0x2c, 0x96, 0xea, 0x4c, 0xe9, 0xda, 0xef, 0x02, 0xc8, 0xd3, 0x15, + 0xd8, 0xc3, 0xbb, 0x82, 0xeb, 0x92, 0x4b, 0xe1, 0xcd, 0xcd, 0x07, 0xaf, 0xfa, 0xc0, 0xff, 0x43, + 0xe0, 0x47, 0x31, 0xf6, 0xe3, 0xf4, 0xd1, 0x63, 0x8f, 0x67, 0x3f, 0x70, 0xf8, 0x0e, 0x64, 0x8b, + 0x85, 0xda, 0xdf, 0xb9, 0xeb, 0x6e, 0xe0, 0x09, 0x59, 0x20, 0x07, 0x17, 0x84, 0x7a, 0x01, 0xee, + 0x47, 0xaa, 0xc0, 0x5d, 0xb6, 0xb5, 0xc2, 0x56, 0xf5, 0x4e, 0x4a, 0xb6, 0xae, 0x65, 0xb4, 0xdf, + 0x72, 0x20, 0x65, 0xe3, 0xe8, 0x19, 0x28, 0xd9, 0x8c, 0xed, 0xf6, 0xd3, 0x73, 0x82, 0x6c, 0xc8, + 0xec, 0xa3, 0xd7, 0x50, 0xe4, 0xb6, 0x5d, 0xd6, 0xe4, 0x29, 0x9a, 0x09, 0x5f, 0x5f, 0xc1, 0x11, + 0xff, 0xb9, 0x92, 0x2d, 0x98, 0xde, 0xc0, 0xd1, 0xed, 0x46, 0x17, 0x57, 0x6e, 0xf4, 0x97, 0xf0, + 0x89, 0x1b, 0xd9, 0x2e, 0xaf, 0xa9, 0x43, 0xec, 0xa9, 0x23, 0xd8, 0xd3, 0x29, 0x59, 0xc8, 0x8d, + 0xcc, 0x74, 0x2a, 0xab, 0x48, 0x56, 0xf0, 0xe2, 0xb4, 0xe0, 0xcc, 0xb5, 0x7d, 0xe2, 0x78, 0x89, + 0x6b, 0x7f, 0x01, 0x79, 0xfa, 0xd3, 0x73, 0xaf, 0x73, 0x6f, 0x15, 0x2b, 0xdd, 0xd3, 0x4c, 0xb1, + 0xa6, 0x5e, 0x10, 0x57, 0xf4, 0x42, 0xc3, 0x83, 0x27, 0x4e, 0x30, 0x9a, 0x8b, 0x6f, 0xc8, 0xec, + 0x38, 0xbb, 0xec, 0x9d, 0xe9, 0x0a, 0x1f, 0xbe, 0x4f, 0x61, 0x83, 0xc0, 0xc3, 0xfe, 0x40, 0x0f, + 0xe8, 0xa0, 0x36, 0x20, 0x3e, 0x7f, 0x85, 0x6a, 0xc9, 0x14, 0x0e, 0xdd, 0xe8, 0xee, 0x4f, 0xfa, + 0x3b, 0xf6, 0xf5, 0xaf, 0x20, 0x9c, 0x15, 0x39, 0xf6, 0x9b, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, + 0xee, 0x02, 0xe6, 0x8f, 0x11, 0x0c, 0x00, 0x00, +} diff --git a/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/conformance_service.pb.go b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/conformance_service.pb.go new file mode 100644 index 0000000000..1eef1122c2 --- /dev/null +++ b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/conformance_service.pb.go @@ -0,0 +1,742 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: google/api/expr/v1alpha1/conformance_service.proto + +package expr + +import ( + context "context" + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" + status "google.golang.org/genproto/googleapis/rpc/status" + grpc "google.golang.org/grpc" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// Severities of issues. +type IssueDetails_Severity int32 + +const ( + // An unspecified severity. + IssueDetails_SEVERITY_UNSPECIFIED IssueDetails_Severity = 0 + // Deprecation issue for statements and method that may no longer be + // supported or maintained. + IssueDetails_DEPRECATION IssueDetails_Severity = 1 + // Warnings such as: unused variables. + IssueDetails_WARNING IssueDetails_Severity = 2 + // Errors such as: unmatched curly braces or variable redefinition. + IssueDetails_ERROR IssueDetails_Severity = 3 +) + +var IssueDetails_Severity_name = map[int32]string{ + 0: "SEVERITY_UNSPECIFIED", + 1: "DEPRECATION", + 2: "WARNING", + 3: "ERROR", +} + +var IssueDetails_Severity_value = map[string]int32{ + "SEVERITY_UNSPECIFIED": 0, + "DEPRECATION": 1, + "WARNING": 2, + "ERROR": 3, +} + +func (x IssueDetails_Severity) String() string { + return proto.EnumName(IssueDetails_Severity_name, int32(x)) +} + +func (IssueDetails_Severity) EnumDescriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{6, 0} +} + +// Request message for the Parse method. +type ParseRequest struct { + // Required. Source text in CEL syntax. + CelSource string `protobuf:"bytes,1,opt,name=cel_source,json=celSource,proto3" json:"cel_source,omitempty"` + // Tag for version of CEL syntax, for future use. + SyntaxVersion string `protobuf:"bytes,2,opt,name=syntax_version,json=syntaxVersion,proto3" json:"syntax_version,omitempty"` + // File or resource for source text, used in + // [SourceInfo][google.api.expr.v1alpha1.SourceInfo]. + SourceLocation string `protobuf:"bytes,3,opt,name=source_location,json=sourceLocation,proto3" json:"source_location,omitempty"` + // Prevent macro expansion. See "Macros" in Language Defiinition. + DisableMacros bool `protobuf:"varint,4,opt,name=disable_macros,json=disableMacros,proto3" json:"disable_macros,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ParseRequest) Reset() { *m = ParseRequest{} } +func (m *ParseRequest) String() string { return proto.CompactTextString(m) } +func (*ParseRequest) ProtoMessage() {} +func (*ParseRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{0} +} + +func (m *ParseRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ParseRequest.Unmarshal(m, b) +} +func (m *ParseRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ParseRequest.Marshal(b, m, deterministic) +} +func (m *ParseRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_ParseRequest.Merge(m, src) +} +func (m *ParseRequest) XXX_Size() int { + return xxx_messageInfo_ParseRequest.Size(m) +} +func (m *ParseRequest) XXX_DiscardUnknown() { + xxx_messageInfo_ParseRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_ParseRequest proto.InternalMessageInfo + +func (m *ParseRequest) GetCelSource() string { + if m != nil { + return m.CelSource + } + return "" +} + +func (m *ParseRequest) GetSyntaxVersion() string { + if m != nil { + return m.SyntaxVersion + } + return "" +} + +func (m *ParseRequest) GetSourceLocation() string { + if m != nil { + return m.SourceLocation + } + return "" +} + +func (m *ParseRequest) GetDisableMacros() bool { + if m != nil { + return m.DisableMacros + } + return false +} + +// Response message for the Parse method. +type ParseResponse struct { + // The parsed representation, or unset if parsing failed. + ParsedExpr *ParsedExpr `protobuf:"bytes,1,opt,name=parsed_expr,json=parsedExpr,proto3" json:"parsed_expr,omitempty"` + // Any number of issues with [StatusDetails][] as the details. + Issues []*status.Status `protobuf:"bytes,2,rep,name=issues,proto3" json:"issues,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ParseResponse) Reset() { *m = ParseResponse{} } +func (m *ParseResponse) String() string { return proto.CompactTextString(m) } +func (*ParseResponse) ProtoMessage() {} +func (*ParseResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{1} +} + +func (m *ParseResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ParseResponse.Unmarshal(m, b) +} +func (m *ParseResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ParseResponse.Marshal(b, m, deterministic) +} +func (m *ParseResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_ParseResponse.Merge(m, src) +} +func (m *ParseResponse) XXX_Size() int { + return xxx_messageInfo_ParseResponse.Size(m) +} +func (m *ParseResponse) XXX_DiscardUnknown() { + xxx_messageInfo_ParseResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_ParseResponse proto.InternalMessageInfo + +func (m *ParseResponse) GetParsedExpr() *ParsedExpr { + if m != nil { + return m.ParsedExpr + } + return nil +} + +func (m *ParseResponse) GetIssues() []*status.Status { + if m != nil { + return m.Issues + } + return nil +} + +// Request message for the Check method. +type CheckRequest struct { + // Required. The parsed representation of the CEL program. + ParsedExpr *ParsedExpr `protobuf:"bytes,1,opt,name=parsed_expr,json=parsedExpr,proto3" json:"parsed_expr,omitempty"` + // Declarations of types for external variables and functions. + // Required if program uses external variables or functions + // not in the default environment. + TypeEnv []*Decl `protobuf:"bytes,2,rep,name=type_env,json=typeEnv,proto3" json:"type_env,omitempty"` + // The protocol buffer context. See "Name Resolution" in the + // Language Definition. + Container string `protobuf:"bytes,3,opt,name=container,proto3" json:"container,omitempty"` + // If true, use only the declarations in + // [type_env][google.api.expr.v1alpha1.CheckRequest.type_env]. If false + // (default), add declarations for the standard definitions to the type + // environment. See "Standard Definitions" in the Language Definition. + NoStdEnv bool `protobuf:"varint,4,opt,name=no_std_env,json=noStdEnv,proto3" json:"no_std_env,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CheckRequest) Reset() { *m = CheckRequest{} } +func (m *CheckRequest) String() string { return proto.CompactTextString(m) } +func (*CheckRequest) ProtoMessage() {} +func (*CheckRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{2} +} + +func (m *CheckRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CheckRequest.Unmarshal(m, b) +} +func (m *CheckRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CheckRequest.Marshal(b, m, deterministic) +} +func (m *CheckRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_CheckRequest.Merge(m, src) +} +func (m *CheckRequest) XXX_Size() int { + return xxx_messageInfo_CheckRequest.Size(m) +} +func (m *CheckRequest) XXX_DiscardUnknown() { + xxx_messageInfo_CheckRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_CheckRequest proto.InternalMessageInfo + +func (m *CheckRequest) GetParsedExpr() *ParsedExpr { + if m != nil { + return m.ParsedExpr + } + return nil +} + +func (m *CheckRequest) GetTypeEnv() []*Decl { + if m != nil { + return m.TypeEnv + } + return nil +} + +func (m *CheckRequest) GetContainer() string { + if m != nil { + return m.Container + } + return "" +} + +func (m *CheckRequest) GetNoStdEnv() bool { + if m != nil { + return m.NoStdEnv + } + return false +} + +// Response message for the Check method. +type CheckResponse struct { + // The annotated representation, or unset if checking failed. + CheckedExpr *CheckedExpr `protobuf:"bytes,1,opt,name=checked_expr,json=checkedExpr,proto3" json:"checked_expr,omitempty"` + // Any number of issues with [StatusDetails][] as the details. + Issues []*status.Status `protobuf:"bytes,2,rep,name=issues,proto3" json:"issues,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *CheckResponse) Reset() { *m = CheckResponse{} } +func (m *CheckResponse) String() string { return proto.CompactTextString(m) } +func (*CheckResponse) ProtoMessage() {} +func (*CheckResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{3} +} + +func (m *CheckResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_CheckResponse.Unmarshal(m, b) +} +func (m *CheckResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_CheckResponse.Marshal(b, m, deterministic) +} +func (m *CheckResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_CheckResponse.Merge(m, src) +} +func (m *CheckResponse) XXX_Size() int { + return xxx_messageInfo_CheckResponse.Size(m) +} +func (m *CheckResponse) XXX_DiscardUnknown() { + xxx_messageInfo_CheckResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_CheckResponse proto.InternalMessageInfo + +func (m *CheckResponse) GetCheckedExpr() *CheckedExpr { + if m != nil { + return m.CheckedExpr + } + return nil +} + +func (m *CheckResponse) GetIssues() []*status.Status { + if m != nil { + return m.Issues + } + return nil +} + +// Request message for the Eval method. +type EvalRequest struct { + // Required. Either the parsed or annotated representation of the CEL program. + // + // Types that are valid to be assigned to ExprKind: + // *EvalRequest_ParsedExpr + // *EvalRequest_CheckedExpr + ExprKind isEvalRequest_ExprKind `protobuf_oneof:"expr_kind"` + // Bindings for the external variables. The types SHOULD be compatible + // with the type environment in + // [CheckRequest][google.api.expr.v1alpha1.CheckRequest], if checked. + Bindings map[string]*ExprValue `protobuf:"bytes,3,rep,name=bindings,proto3" json:"bindings,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` + // SHOULD be the same container as used in + // [CheckRequest][google.api.expr.v1alpha1.CheckRequest], if checked. + Container string `protobuf:"bytes,4,opt,name=container,proto3" json:"container,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *EvalRequest) Reset() { *m = EvalRequest{} } +func (m *EvalRequest) String() string { return proto.CompactTextString(m) } +func (*EvalRequest) ProtoMessage() {} +func (*EvalRequest) Descriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{4} +} + +func (m *EvalRequest) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_EvalRequest.Unmarshal(m, b) +} +func (m *EvalRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_EvalRequest.Marshal(b, m, deterministic) +} +func (m *EvalRequest) XXX_Merge(src proto.Message) { + xxx_messageInfo_EvalRequest.Merge(m, src) +} +func (m *EvalRequest) XXX_Size() int { + return xxx_messageInfo_EvalRequest.Size(m) +} +func (m *EvalRequest) XXX_DiscardUnknown() { + xxx_messageInfo_EvalRequest.DiscardUnknown(m) +} + +var xxx_messageInfo_EvalRequest proto.InternalMessageInfo + +type isEvalRequest_ExprKind interface { + isEvalRequest_ExprKind() +} + +type EvalRequest_ParsedExpr struct { + ParsedExpr *ParsedExpr `protobuf:"bytes,1,opt,name=parsed_expr,json=parsedExpr,proto3,oneof"` +} + +type EvalRequest_CheckedExpr struct { + CheckedExpr *CheckedExpr `protobuf:"bytes,2,opt,name=checked_expr,json=checkedExpr,proto3,oneof"` +} + +func (*EvalRequest_ParsedExpr) isEvalRequest_ExprKind() {} + +func (*EvalRequest_CheckedExpr) isEvalRequest_ExprKind() {} + +func (m *EvalRequest) GetExprKind() isEvalRequest_ExprKind { + if m != nil { + return m.ExprKind + } + return nil +} + +func (m *EvalRequest) GetParsedExpr() *ParsedExpr { + if x, ok := m.GetExprKind().(*EvalRequest_ParsedExpr); ok { + return x.ParsedExpr + } + return nil +} + +func (m *EvalRequest) GetCheckedExpr() *CheckedExpr { + if x, ok := m.GetExprKind().(*EvalRequest_CheckedExpr); ok { + return x.CheckedExpr + } + return nil +} + +func (m *EvalRequest) GetBindings() map[string]*ExprValue { + if m != nil { + return m.Bindings + } + return nil +} + +func (m *EvalRequest) GetContainer() string { + if m != nil { + return m.Container + } + return "" +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*EvalRequest) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*EvalRequest_ParsedExpr)(nil), + (*EvalRequest_CheckedExpr)(nil), + } +} + +// Response message for the Eval method. +type EvalResponse struct { + // The execution result, or unset if execution couldn't start. + Result *ExprValue `protobuf:"bytes,1,opt,name=result,proto3" json:"result,omitempty"` + // Any number of issues with [StatusDetails][] as the details. + // Note that CEL execution errors are reified into + // [ExprValue][google.api.expr.v1alpha1.ExprValue]. Nevertheless, we'll allow + // out-of-band issues to be raised, which also makes the replies more regular. + Issues []*status.Status `protobuf:"bytes,2,rep,name=issues,proto3" json:"issues,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *EvalResponse) Reset() { *m = EvalResponse{} } +func (m *EvalResponse) String() string { return proto.CompactTextString(m) } +func (*EvalResponse) ProtoMessage() {} +func (*EvalResponse) Descriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{5} +} + +func (m *EvalResponse) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_EvalResponse.Unmarshal(m, b) +} +func (m *EvalResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_EvalResponse.Marshal(b, m, deterministic) +} +func (m *EvalResponse) XXX_Merge(src proto.Message) { + xxx_messageInfo_EvalResponse.Merge(m, src) +} +func (m *EvalResponse) XXX_Size() int { + return xxx_messageInfo_EvalResponse.Size(m) +} +func (m *EvalResponse) XXX_DiscardUnknown() { + xxx_messageInfo_EvalResponse.DiscardUnknown(m) +} + +var xxx_messageInfo_EvalResponse proto.InternalMessageInfo + +func (m *EvalResponse) GetResult() *ExprValue { + if m != nil { + return m.Result + } + return nil +} + +func (m *EvalResponse) GetIssues() []*status.Status { + if m != nil { + return m.Issues + } + return nil +} + +// Warnings or errors in service execution are represented by +// [google.rpc.Status][google.rpc.Status] messages, with the following message +// in the details field. +type IssueDetails struct { + // The severity of the issue. + Severity IssueDetails_Severity `protobuf:"varint,1,opt,name=severity,proto3,enum=google.api.expr.v1alpha1.IssueDetails_Severity" json:"severity,omitempty"` + // Position in the source, if known. + Position *SourcePosition `protobuf:"bytes,2,opt,name=position,proto3" json:"position,omitempty"` + // Expression ID from [Expr][google.api.expr.v1alpha1.Expr], 0 if unknown. + Id int64 `protobuf:"varint,3,opt,name=id,proto3" json:"id,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *IssueDetails) Reset() { *m = IssueDetails{} } +func (m *IssueDetails) String() string { return proto.CompactTextString(m) } +func (*IssueDetails) ProtoMessage() {} +func (*IssueDetails) Descriptor() ([]byte, []int) { + return fileDescriptor_b3ca1183e6ceae83, []int{6} +} + +func (m *IssueDetails) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_IssueDetails.Unmarshal(m, b) +} +func (m *IssueDetails) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_IssueDetails.Marshal(b, m, deterministic) +} +func (m *IssueDetails) XXX_Merge(src proto.Message) { + xxx_messageInfo_IssueDetails.Merge(m, src) +} +func (m *IssueDetails) XXX_Size() int { + return xxx_messageInfo_IssueDetails.Size(m) +} +func (m *IssueDetails) XXX_DiscardUnknown() { + xxx_messageInfo_IssueDetails.DiscardUnknown(m) +} + +var xxx_messageInfo_IssueDetails proto.InternalMessageInfo + +func (m *IssueDetails) GetSeverity() IssueDetails_Severity { + if m != nil { + return m.Severity + } + return IssueDetails_SEVERITY_UNSPECIFIED +} + +func (m *IssueDetails) GetPosition() *SourcePosition { + if m != nil { + return m.Position + } + return nil +} + +func (m *IssueDetails) GetId() int64 { + if m != nil { + return m.Id + } + return 0 +} + +func init() { + proto.RegisterEnum("google.api.expr.v1alpha1.IssueDetails_Severity", IssueDetails_Severity_name, IssueDetails_Severity_value) + proto.RegisterType((*ParseRequest)(nil), "google.api.expr.v1alpha1.ParseRequest") + proto.RegisterType((*ParseResponse)(nil), "google.api.expr.v1alpha1.ParseResponse") + proto.RegisterType((*CheckRequest)(nil), "google.api.expr.v1alpha1.CheckRequest") + proto.RegisterType((*CheckResponse)(nil), "google.api.expr.v1alpha1.CheckResponse") + proto.RegisterType((*EvalRequest)(nil), "google.api.expr.v1alpha1.EvalRequest") + proto.RegisterMapType((map[string]*ExprValue)(nil), "google.api.expr.v1alpha1.EvalRequest.BindingsEntry") + proto.RegisterType((*EvalResponse)(nil), "google.api.expr.v1alpha1.EvalResponse") + proto.RegisterType((*IssueDetails)(nil), "google.api.expr.v1alpha1.IssueDetails") +} + +func init() { + proto.RegisterFile("google/api/expr/v1alpha1/conformance_service.proto", fileDescriptor_b3ca1183e6ceae83) +} + +var fileDescriptor_b3ca1183e6ceae83 = []byte{ + // 807 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xac, 0x55, 0x41, 0x6f, 0xdb, 0x36, + 0x18, 0xb5, 0xe4, 0x24, 0xb5, 0x3f, 0xd9, 0xa9, 0x41, 0x0c, 0xa8, 0x61, 0x64, 0x43, 0xa0, 0x2e, + 0x69, 0xb0, 0x83, 0x84, 0xba, 0x97, 0x75, 0xdd, 0xa5, 0xb1, 0xb5, 0xc6, 0xdb, 0x9a, 0x18, 0x74, + 0x97, 0x62, 0xbd, 0x68, 0x8c, 0xc4, 0xb9, 0x44, 0x14, 0x52, 0x23, 0x65, 0xcd, 0xde, 0x69, 0x18, + 0xb0, 0x7f, 0xb2, 0xfd, 0x9b, 0xfd, 0xa0, 0x1d, 0x07, 0x89, 0xb4, 0x63, 0xb7, 0x50, 0xd2, 0x0c, + 0xbd, 0x49, 0x9f, 0xde, 0x7b, 0xfa, 0xde, 0xe3, 0x47, 0x12, 0xfa, 0x53, 0x21, 0xa6, 0x09, 0xf5, + 0x49, 0xca, 0x7c, 0x3a, 0x4f, 0xa5, 0x9f, 0x3f, 0x26, 0x49, 0xfa, 0x96, 0x3c, 0xf6, 0x23, 0xc1, + 0x7f, 0x16, 0xf2, 0x8a, 0xf0, 0x88, 0x86, 0x8a, 0xca, 0x9c, 0x45, 0xd4, 0x4b, 0xa5, 0xc8, 0x04, + 0xea, 0x6a, 0x8e, 0x47, 0x52, 0xe6, 0x15, 0x1c, 0x6f, 0xc9, 0xe9, 0x1d, 0x56, 0xab, 0xbd, 0xa5, + 0xd1, 0x25, 0x8d, 0xb5, 0x42, 0xef, 0x61, 0x25, 0x8e, 0xe6, 0x24, 0x31, 0xa0, 0x83, 0x4a, 0x90, + 0x5a, 0xf0, 0x8c, 0xcc, 0x0d, 0xec, 0x81, 0x81, 0xc9, 0x34, 0xf2, 0x55, 0x46, 0xb2, 0x99, 0xd2, + 0x1f, 0xdc, 0xbf, 0x2c, 0x68, 0x8d, 0x89, 0x54, 0x14, 0xd3, 0x5f, 0x66, 0x54, 0x65, 0xe8, 0x53, + 0x80, 0x88, 0x26, 0xa1, 0x12, 0x33, 0x19, 0xd1, 0xae, 0xb5, 0x6f, 0x1d, 0x35, 0x71, 0x33, 0xa2, + 0xc9, 0xa4, 0x2c, 0xa0, 0x03, 0xd8, 0xd5, 0xc2, 0x61, 0x4e, 0xa5, 0x62, 0x82, 0x77, 0xed, 0x12, + 0xd2, 0xd6, 0xd5, 0x73, 0x5d, 0x44, 0x8f, 0xe0, 0xbe, 0x56, 0x08, 0x13, 0x11, 0x91, 0xac, 0xc0, + 0xd5, 0x4b, 0xdc, 0xae, 0x2e, 0x7f, 0x6f, 0xaa, 0x85, 0x5e, 0xcc, 0x14, 0xb9, 0x48, 0x68, 0x78, + 0x45, 0x22, 0x29, 0x54, 0x77, 0x6b, 0xdf, 0x3a, 0x6a, 0xe0, 0xb6, 0xa9, 0xbe, 0x2c, 0x8b, 0xee, + 0x1f, 0x16, 0xb4, 0x4d, 0x9b, 0x2a, 0x15, 0x5c, 0x51, 0x14, 0x80, 0x93, 0x16, 0x85, 0x38, 0x2c, + 0x6c, 0x97, 0x8d, 0x3a, 0xfd, 0xcf, 0xbd, 0xaa, 0xd4, 0xbd, 0x92, 0x1d, 0x07, 0xf3, 0x54, 0x62, + 0x48, 0x57, 0xcf, 0xe8, 0x0b, 0xd8, 0x61, 0x4a, 0xcd, 0xa8, 0xea, 0xda, 0xfb, 0xf5, 0x23, 0xa7, + 0x8f, 0x96, 0x0a, 0x32, 0x8d, 0xbc, 0x49, 0x99, 0x14, 0x36, 0x08, 0xf7, 0x1f, 0x0b, 0x5a, 0x83, + 0x62, 0x89, 0x96, 0x59, 0x7d, 0xa4, 0x1e, 0x9e, 0x42, 0x23, 0x5b, 0xa4, 0x34, 0xa4, 0x3c, 0x37, + 0x5d, 0x7c, 0x56, 0xad, 0x31, 0xa4, 0x51, 0x82, 0xef, 0x15, 0xf8, 0x80, 0xe7, 0x68, 0x0f, 0x9a, + 0x91, 0xe0, 0x19, 0x61, 0x9c, 0x4a, 0x93, 0xf0, 0x75, 0x01, 0xed, 0x01, 0x70, 0x11, 0xaa, 0x2c, + 0x2e, 0xa5, 0x75, 0xb0, 0x0d, 0x2e, 0x26, 0x59, 0x1c, 0xf0, 0xdc, 0xfd, 0xd3, 0x82, 0xb6, 0xb1, + 0x63, 0x32, 0x3d, 0x81, 0x96, 0x19, 0xc1, 0x75, 0x43, 0x07, 0xd5, 0xcd, 0x0c, 0x34, 0xba, 0x74, + 0xe4, 0x44, 0xd7, 0x2f, 0x77, 0x8a, 0xf5, 0xf7, 0x3a, 0x38, 0x41, 0x4e, 0x92, 0x65, 0xaa, 0x2f, + 0xfe, 0x77, 0xaa, 0x27, 0xb5, 0x8d, 0x5c, 0xbf, 0x7d, 0xc7, 0x8e, 0x7d, 0x07, 0x3b, 0x27, 0xb5, + 0x4d, 0x43, 0x67, 0xd0, 0xb8, 0x60, 0x3c, 0x66, 0x7c, 0xaa, 0xba, 0xf5, 0xd2, 0xd2, 0x93, 0x6a, + 0x9d, 0x35, 0x37, 0xde, 0xb1, 0x61, 0x05, 0x3c, 0x93, 0x0b, 0xbc, 0x12, 0xd9, 0x5c, 0xb9, 0xad, + 0x77, 0x56, 0xae, 0xf7, 0x13, 0xb4, 0x37, 0x88, 0xa8, 0x03, 0xf5, 0x4b, 0xba, 0x30, 0xfb, 0xb1, + 0x78, 0x44, 0x4f, 0x61, 0x3b, 0x27, 0xc9, 0x8c, 0x1a, 0x5b, 0x0f, 0x6f, 0x68, 0x67, 0x9e, 0xca, + 0xf3, 0x02, 0x8a, 0x35, 0xe3, 0x2b, 0xfb, 0x4b, 0xeb, 0xd8, 0x81, 0x66, 0x81, 0x0a, 0x2f, 0x19, + 0x8f, 0xdd, 0x5f, 0xa1, 0xa5, 0x7b, 0x36, 0x83, 0xf0, 0x0c, 0x76, 0x24, 0x55, 0xb3, 0x24, 0x33, + 0xe9, 0x7f, 0x90, 0xb8, 0xa1, 0xdc, 0x6d, 0xed, 0x6d, 0x68, 0x8d, 0x8a, 0xc7, 0x21, 0xcd, 0x08, + 0x4b, 0x14, 0xfa, 0x0e, 0x1a, 0x8a, 0xe6, 0x54, 0xb2, 0x4c, 0x9b, 0xdd, 0xed, 0xfb, 0xd5, 0xff, + 0x5e, 0x67, 0x7a, 0x13, 0x43, 0xc3, 0x2b, 0x01, 0x34, 0x84, 0x46, 0x2a, 0x14, 0xcb, 0x96, 0xc7, + 0x94, 0xd3, 0x3f, 0xaa, 0x16, 0xd3, 0x07, 0xdc, 0xd8, 0xe0, 0xf1, 0x8a, 0x89, 0x76, 0xc1, 0x66, + 0x71, 0xb9, 0xb9, 0xea, 0xd8, 0x66, 0xb1, 0xfb, 0x12, 0x1a, 0xcb, 0x7f, 0xa1, 0x2e, 0x7c, 0x32, + 0x09, 0xce, 0x03, 0x3c, 0x7a, 0xf5, 0x63, 0xf8, 0xc3, 0xe9, 0x64, 0x1c, 0x0c, 0x46, 0xdf, 0x8c, + 0x82, 0x61, 0xa7, 0x86, 0xee, 0x83, 0x33, 0x0c, 0xc6, 0x38, 0x18, 0x3c, 0x7f, 0x35, 0x3a, 0x3b, + 0xed, 0x58, 0xc8, 0x81, 0x7b, 0xaf, 0x9f, 0xe3, 0xd3, 0xd1, 0xe9, 0x8b, 0x8e, 0x8d, 0x9a, 0xb0, + 0x1d, 0x60, 0x7c, 0x86, 0x3b, 0xf5, 0xfe, 0xdf, 0x36, 0xa0, 0xc1, 0xf5, 0x35, 0x32, 0xd1, 0xb7, + 0x08, 0x7a, 0x03, 0xdb, 0xe5, 0x60, 0xa3, 0xc3, 0x5b, 0x26, 0xdf, 0x0c, 0x5a, 0xef, 0xd1, 0xad, + 0x38, 0xbd, 0xb8, 0x6e, 0xad, 0xd0, 0x2e, 0x47, 0xfd, 0x26, 0xed, 0xf5, 0x83, 0xee, 0x26, 0xed, + 0x8d, 0x13, 0xc4, 0xad, 0xa1, 0xd7, 0xb0, 0x55, 0x8c, 0x12, 0x3a, 0xf8, 0xa0, 0xed, 0xd1, 0x3b, + 0xbc, 0x0d, 0xb6, 0x14, 0x3e, 0xfe, 0x0d, 0xf6, 0x22, 0x71, 0x55, 0x09, 0x3f, 0x7e, 0xf0, 0x7e, + 0x88, 0xe3, 0xe2, 0x8a, 0x1b, 0x5b, 0x6f, 0xbe, 0x36, 0xa4, 0xa9, 0x48, 0x08, 0x9f, 0x7a, 0x42, + 0x4e, 0xfd, 0x29, 0xe5, 0xe5, 0x05, 0xe8, 0xeb, 0x4f, 0x24, 0x65, 0xea, 0xfd, 0x3b, 0xf4, 0x59, + 0xf1, 0xf6, 0xaf, 0x65, 0x5d, 0xec, 0x94, 0xd8, 0x27, 0xff, 0x05, 0x00, 0x00, 0xff, 0xff, 0xf9, + 0x66, 0xbb, 0xae, 0x09, 0x08, 0x00, 0x00, +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// ConformanceServiceClient is the client API for ConformanceService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type ConformanceServiceClient interface { + // Transforms CEL source text into a parsed representation. + Parse(ctx context.Context, in *ParseRequest, opts ...grpc.CallOption) (*ParseResponse, error) + // Runs static checks on a parsed CEL representation and return + // an annotated representation, or a set of issues. + Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error) + // Evaluates a parsed or annotation CEL representation given + // values of external bindings. + Eval(ctx context.Context, in *EvalRequest, opts ...grpc.CallOption) (*EvalResponse, error) +} + +type conformanceServiceClient struct { + cc *grpc.ClientConn +} + +func NewConformanceServiceClient(cc *grpc.ClientConn) ConformanceServiceClient { + return &conformanceServiceClient{cc} +} + +func (c *conformanceServiceClient) Parse(ctx context.Context, in *ParseRequest, opts ...grpc.CallOption) (*ParseResponse, error) { + out := new(ParseResponse) + err := c.cc.Invoke(ctx, "/google.api.expr.v1alpha1.ConformanceService/Parse", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *conformanceServiceClient) Check(ctx context.Context, in *CheckRequest, opts ...grpc.CallOption) (*CheckResponse, error) { + out := new(CheckResponse) + err := c.cc.Invoke(ctx, "/google.api.expr.v1alpha1.ConformanceService/Check", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *conformanceServiceClient) Eval(ctx context.Context, in *EvalRequest, opts ...grpc.CallOption) (*EvalResponse, error) { + out := new(EvalResponse) + err := c.cc.Invoke(ctx, "/google.api.expr.v1alpha1.ConformanceService/Eval", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// ConformanceServiceServer is the server API for ConformanceService service. +type ConformanceServiceServer interface { + // Transforms CEL source text into a parsed representation. + Parse(context.Context, *ParseRequest) (*ParseResponse, error) + // Runs static checks on a parsed CEL representation and return + // an annotated representation, or a set of issues. + Check(context.Context, *CheckRequest) (*CheckResponse, error) + // Evaluates a parsed or annotation CEL representation given + // values of external bindings. + Eval(context.Context, *EvalRequest) (*EvalResponse, error) +} + +func RegisterConformanceServiceServer(s *grpc.Server, srv ConformanceServiceServer) { + s.RegisterService(&_ConformanceService_serviceDesc, srv) +} + +func _ConformanceService_Parse_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ParseRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ConformanceServiceServer).Parse(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.api.expr.v1alpha1.ConformanceService/Parse", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ConformanceServiceServer).Parse(ctx, req.(*ParseRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ConformanceService_Check_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CheckRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ConformanceServiceServer).Check(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.api.expr.v1alpha1.ConformanceService/Check", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ConformanceServiceServer).Check(ctx, req.(*CheckRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _ConformanceService_Eval_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(EvalRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ConformanceServiceServer).Eval(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/google.api.expr.v1alpha1.ConformanceService/Eval", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ConformanceServiceServer).Eval(ctx, req.(*EvalRequest)) + } + return interceptor(ctx, in, info, handler) +} + +var _ConformanceService_serviceDesc = grpc.ServiceDesc{ + ServiceName: "google.api.expr.v1alpha1.ConformanceService", + HandlerType: (*ConformanceServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Parse", + Handler: _ConformanceService_Parse_Handler, + }, + { + MethodName: "Check", + Handler: _ConformanceService_Check_Handler, + }, + { + MethodName: "Eval", + Handler: _ConformanceService_Eval_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "google/api/expr/v1alpha1/conformance_service.proto", +} diff --git a/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/eval.pb.go b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/eval.pb.go new file mode 100644 index 0000000000..79d945c7e8 --- /dev/null +++ b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/eval.pb.go @@ -0,0 +1,351 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: google/api/expr/v1alpha1/eval.proto + +package expr + +import ( + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" + status "google.golang.org/genproto/googleapis/rpc/status" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// The state of an evaluation. +// +// Can represent an inital, partial, or completed state of evaluation. +type EvalState struct { + // The unique values referenced in this message. + Values []*ExprValue `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` + // An ordered list of results. + // + // Tracks the flow of evaluation through the expression. + // May be sparse. + Results []*EvalState_Result `protobuf:"bytes,3,rep,name=results,proto3" json:"results,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *EvalState) Reset() { *m = EvalState{} } +func (m *EvalState) String() string { return proto.CompactTextString(m) } +func (*EvalState) ProtoMessage() {} +func (*EvalState) Descriptor() ([]byte, []int) { + return fileDescriptor_1e95f32326d4b8b7, []int{0} +} + +func (m *EvalState) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_EvalState.Unmarshal(m, b) +} +func (m *EvalState) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_EvalState.Marshal(b, m, deterministic) +} +func (m *EvalState) XXX_Merge(src proto.Message) { + xxx_messageInfo_EvalState.Merge(m, src) +} +func (m *EvalState) XXX_Size() int { + return xxx_messageInfo_EvalState.Size(m) +} +func (m *EvalState) XXX_DiscardUnknown() { + xxx_messageInfo_EvalState.DiscardUnknown(m) +} + +var xxx_messageInfo_EvalState proto.InternalMessageInfo + +func (m *EvalState) GetValues() []*ExprValue { + if m != nil { + return m.Values + } + return nil +} + +func (m *EvalState) GetResults() []*EvalState_Result { + if m != nil { + return m.Results + } + return nil +} + +// A single evalution result. +type EvalState_Result struct { + // The id of the expression this result if for. + Expr int64 `protobuf:"varint,1,opt,name=expr,proto3" json:"expr,omitempty"` + // The index in `values` of the resulting value. + Value int64 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *EvalState_Result) Reset() { *m = EvalState_Result{} } +func (m *EvalState_Result) String() string { return proto.CompactTextString(m) } +func (*EvalState_Result) ProtoMessage() {} +func (*EvalState_Result) Descriptor() ([]byte, []int) { + return fileDescriptor_1e95f32326d4b8b7, []int{0, 0} +} + +func (m *EvalState_Result) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_EvalState_Result.Unmarshal(m, b) +} +func (m *EvalState_Result) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_EvalState_Result.Marshal(b, m, deterministic) +} +func (m *EvalState_Result) XXX_Merge(src proto.Message) { + xxx_messageInfo_EvalState_Result.Merge(m, src) +} +func (m *EvalState_Result) XXX_Size() int { + return xxx_messageInfo_EvalState_Result.Size(m) +} +func (m *EvalState_Result) XXX_DiscardUnknown() { + xxx_messageInfo_EvalState_Result.DiscardUnknown(m) +} + +var xxx_messageInfo_EvalState_Result proto.InternalMessageInfo + +func (m *EvalState_Result) GetExpr() int64 { + if m != nil { + return m.Expr + } + return 0 +} + +func (m *EvalState_Result) GetValue() int64 { + if m != nil { + return m.Value + } + return 0 +} + +// The value of an evaluated expression. +type ExprValue struct { + // An expression can resolve to a value, error or unknown. + // + // Types that are valid to be assigned to Kind: + // *ExprValue_Value + // *ExprValue_Error + // *ExprValue_Unknown + Kind isExprValue_Kind `protobuf_oneof:"kind"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ExprValue) Reset() { *m = ExprValue{} } +func (m *ExprValue) String() string { return proto.CompactTextString(m) } +func (*ExprValue) ProtoMessage() {} +func (*ExprValue) Descriptor() ([]byte, []int) { + return fileDescriptor_1e95f32326d4b8b7, []int{1} +} + +func (m *ExprValue) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ExprValue.Unmarshal(m, b) +} +func (m *ExprValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ExprValue.Marshal(b, m, deterministic) +} +func (m *ExprValue) XXX_Merge(src proto.Message) { + xxx_messageInfo_ExprValue.Merge(m, src) +} +func (m *ExprValue) XXX_Size() int { + return xxx_messageInfo_ExprValue.Size(m) +} +func (m *ExprValue) XXX_DiscardUnknown() { + xxx_messageInfo_ExprValue.DiscardUnknown(m) +} + +var xxx_messageInfo_ExprValue proto.InternalMessageInfo + +type isExprValue_Kind interface { + isExprValue_Kind() +} + +type ExprValue_Value struct { + Value *Value `protobuf:"bytes,1,opt,name=value,proto3,oneof"` +} + +type ExprValue_Error struct { + Error *ErrorSet `protobuf:"bytes,2,opt,name=error,proto3,oneof"` +} + +type ExprValue_Unknown struct { + Unknown *UnknownSet `protobuf:"bytes,3,opt,name=unknown,proto3,oneof"` +} + +func (*ExprValue_Value) isExprValue_Kind() {} + +func (*ExprValue_Error) isExprValue_Kind() {} + +func (*ExprValue_Unknown) isExprValue_Kind() {} + +func (m *ExprValue) GetKind() isExprValue_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (m *ExprValue) GetValue() *Value { + if x, ok := m.GetKind().(*ExprValue_Value); ok { + return x.Value + } + return nil +} + +func (m *ExprValue) GetError() *ErrorSet { + if x, ok := m.GetKind().(*ExprValue_Error); ok { + return x.Error + } + return nil +} + +func (m *ExprValue) GetUnknown() *UnknownSet { + if x, ok := m.GetKind().(*ExprValue_Unknown); ok { + return x.Unknown + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*ExprValue) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*ExprValue_Value)(nil), + (*ExprValue_Error)(nil), + (*ExprValue_Unknown)(nil), + } +} + +// A set of errors. +// +// The errors included depend on the context. See `ExprValue.error`. +type ErrorSet struct { + // The errors in the set. + Errors []*status.Status `protobuf:"bytes,1,rep,name=errors,proto3" json:"errors,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ErrorSet) Reset() { *m = ErrorSet{} } +func (m *ErrorSet) String() string { return proto.CompactTextString(m) } +func (*ErrorSet) ProtoMessage() {} +func (*ErrorSet) Descriptor() ([]byte, []int) { + return fileDescriptor_1e95f32326d4b8b7, []int{2} +} + +func (m *ErrorSet) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ErrorSet.Unmarshal(m, b) +} +func (m *ErrorSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ErrorSet.Marshal(b, m, deterministic) +} +func (m *ErrorSet) XXX_Merge(src proto.Message) { + xxx_messageInfo_ErrorSet.Merge(m, src) +} +func (m *ErrorSet) XXX_Size() int { + return xxx_messageInfo_ErrorSet.Size(m) +} +func (m *ErrorSet) XXX_DiscardUnknown() { + xxx_messageInfo_ErrorSet.DiscardUnknown(m) +} + +var xxx_messageInfo_ErrorSet proto.InternalMessageInfo + +func (m *ErrorSet) GetErrors() []*status.Status { + if m != nil { + return m.Errors + } + return nil +} + +// A set of expressions for which the value is unknown. +// +// The unknowns included depend on the context. See `ExprValue.unknown`. +type UnknownSet struct { + // The ids of the expressions with unknown values. + Exprs []int64 `protobuf:"varint,1,rep,packed,name=exprs,proto3" json:"exprs,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *UnknownSet) Reset() { *m = UnknownSet{} } +func (m *UnknownSet) String() string { return proto.CompactTextString(m) } +func (*UnknownSet) ProtoMessage() {} +func (*UnknownSet) Descriptor() ([]byte, []int) { + return fileDescriptor_1e95f32326d4b8b7, []int{3} +} + +func (m *UnknownSet) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_UnknownSet.Unmarshal(m, b) +} +func (m *UnknownSet) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_UnknownSet.Marshal(b, m, deterministic) +} +func (m *UnknownSet) XXX_Merge(src proto.Message) { + xxx_messageInfo_UnknownSet.Merge(m, src) +} +func (m *UnknownSet) XXX_Size() int { + return xxx_messageInfo_UnknownSet.Size(m) +} +func (m *UnknownSet) XXX_DiscardUnknown() { + xxx_messageInfo_UnknownSet.DiscardUnknown(m) +} + +var xxx_messageInfo_UnknownSet proto.InternalMessageInfo + +func (m *UnknownSet) GetExprs() []int64 { + if m != nil { + return m.Exprs + } + return nil +} + +func init() { + proto.RegisterType((*EvalState)(nil), "google.api.expr.v1alpha1.EvalState") + proto.RegisterType((*EvalState_Result)(nil), "google.api.expr.v1alpha1.EvalState.Result") + proto.RegisterType((*ExprValue)(nil), "google.api.expr.v1alpha1.ExprValue") + proto.RegisterType((*ErrorSet)(nil), "google.api.expr.v1alpha1.ErrorSet") + proto.RegisterType((*UnknownSet)(nil), "google.api.expr.v1alpha1.UnknownSet") +} + +func init() { + proto.RegisterFile("google/api/expr/v1alpha1/eval.proto", fileDescriptor_1e95f32326d4b8b7) +} + +var fileDescriptor_1e95f32326d4b8b7 = []byte{ + // 367 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x7c, 0x92, 0xcf, 0x4b, 0xeb, 0x40, + 0x10, 0xc7, 0x5f, 0x5e, 0xda, 0xf4, 0xbd, 0xe9, 0x6d, 0x11, 0x0c, 0x45, 0xb0, 0xa4, 0x3d, 0x94, + 0x1e, 0x36, 0x34, 0x82, 0x82, 0xf5, 0x20, 0xc5, 0x82, 0xc7, 0x92, 0xa2, 0x07, 0x6f, 0x6b, 0x5d, + 0x62, 0xe8, 0x9a, 0x5d, 0x36, 0x3f, 0xec, 0xdf, 0xe7, 0xd1, 0xbf, 0xc8, 0xa3, 0xec, 0x6c, 0x16, + 0x0f, 0x92, 0xde, 0x3a, 0xbb, 0x9f, 0xcf, 0x77, 0xa6, 0xd9, 0x81, 0x49, 0x26, 0x65, 0x26, 0x78, + 0xcc, 0x54, 0x1e, 0xf3, 0x83, 0xd2, 0x71, 0xb3, 0x60, 0x42, 0xbd, 0xb2, 0x45, 0xcc, 0x1b, 0x26, + 0xa8, 0xd2, 0xb2, 0x92, 0x24, 0xb4, 0x10, 0x65, 0x2a, 0xa7, 0x06, 0xa2, 0x0e, 0x1a, 0x4d, 0x3b, + 0xf5, 0x86, 0x89, 0x9a, 0x5b, 0x7f, 0x74, 0xda, 0x52, 0x5a, 0xed, 0xe2, 0xb2, 0x62, 0x55, 0x5d, + 0xda, 0x8b, 0xe8, 0xc3, 0x83, 0xff, 0xeb, 0x86, 0x89, 0x6d, 0xc5, 0x2a, 0x4e, 0x96, 0x10, 0xa0, + 0x55, 0x86, 0xde, 0xd8, 0x9f, 0x0d, 0x93, 0x09, 0xed, 0xea, 0x4b, 0xd7, 0x07, 0xa5, 0x1f, 0x0d, + 0x9b, 0xb6, 0x0a, 0xb9, 0x83, 0x81, 0xe6, 0x65, 0x2d, 0xaa, 0x32, 0xf4, 0xd1, 0x9e, 0x1f, 0xb1, + 0x5d, 0x4b, 0x9a, 0xa2, 0x92, 0x3a, 0x75, 0x94, 0x40, 0x60, 0x8f, 0x08, 0x81, 0x9e, 0x91, 0x42, + 0x6f, 0xec, 0xcd, 0xfc, 0x14, 0x7f, 0x93, 0x13, 0xe8, 0x63, 0xb7, 0xf0, 0x2f, 0x1e, 0xda, 0x22, + 0xfa, 0x34, 0x7f, 0xc2, 0xcd, 0x43, 0xae, 0x1c, 0x63, 0xc4, 0x61, 0x72, 0xde, 0x3d, 0x05, 0xf2, + 0xf7, 0x7f, 0xda, 0x18, 0x72, 0x0d, 0x7d, 0xae, 0xb5, 0xd4, 0x18, 0x3e, 0x4c, 0xa2, 0x23, 0xe3, + 0x1b, 0x6c, 0xcb, 0x2b, 0xe3, 0xa2, 0x42, 0x6e, 0x61, 0x50, 0x17, 0xfb, 0x42, 0xbe, 0x17, 0xa1, + 0x8f, 0xf6, 0xb4, 0xdb, 0x7e, 0xb0, 0xa0, 0xf5, 0x9d, 0xb6, 0x0a, 0xa0, 0xb7, 0xcf, 0x8b, 0x97, + 0xe8, 0x12, 0xfe, 0xb9, 0x78, 0x32, 0x87, 0x00, 0xe3, 0xdd, 0x7b, 0x10, 0x17, 0xaa, 0xd5, 0x8e, + 0x6e, 0xf1, 0x1d, 0xd3, 0x96, 0x88, 0x22, 0x80, 0x9f, 0x60, 0xf3, 0xa1, 0x4c, 0x53, 0x2b, 0xfa, + 0xa9, 0x2d, 0x56, 0x02, 0xce, 0x76, 0xf2, 0xad, 0x73, 0xb2, 0x15, 0xae, 0xc2, 0xc6, 0x2c, 0xc6, + 0xc6, 0x7b, 0xba, 0x69, 0xb1, 0x4c, 0x0a, 0x56, 0x64, 0x54, 0xea, 0x2c, 0xce, 0x78, 0x81, 0x6b, + 0x13, 0xdb, 0x2b, 0xa6, 0xf2, 0xf2, 0xf7, 0xe2, 0x2d, 0x4d, 0xf5, 0xe5, 0x79, 0xcf, 0x01, 0xb2, + 0x17, 0xdf, 0x01, 0x00, 0x00, 0xff, 0xff, 0x9d, 0x62, 0xde, 0x1d, 0xe2, 0x02, 0x00, 0x00, +} diff --git a/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/explain.pb.go b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/explain.pb.go new file mode 100644 index 0000000000..93f628f0da --- /dev/null +++ b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/explain.pb.go @@ -0,0 +1,162 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: google/api/expr/v1alpha1/explain.proto + +package expr + +import ( + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// Values of intermediate expressions produced when evaluating expression. +// Deprecated, use `EvalState` instead. +// +// Deprecated: Do not use. +type Explain struct { + // All of the observed values. + // + // The field value_index is an index in the values list. + // Separating values from steps is needed to remove redundant values. + Values []*Value `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` + // List of steps. + // + // Repeated evaluations of the same expression generate new ExprStep + // instances. The order of such ExprStep instances matches the order of + // elements returned by Comprehension.iter_range. + ExprSteps []*Explain_ExprStep `protobuf:"bytes,2,rep,name=expr_steps,json=exprSteps,proto3" json:"expr_steps,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Explain) Reset() { *m = Explain{} } +func (m *Explain) String() string { return proto.CompactTextString(m) } +func (*Explain) ProtoMessage() {} +func (*Explain) Descriptor() ([]byte, []int) { + return fileDescriptor_2df9793dd8748e27, []int{0} +} + +func (m *Explain) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Explain.Unmarshal(m, b) +} +func (m *Explain) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Explain.Marshal(b, m, deterministic) +} +func (m *Explain) XXX_Merge(src proto.Message) { + xxx_messageInfo_Explain.Merge(m, src) +} +func (m *Explain) XXX_Size() int { + return xxx_messageInfo_Explain.Size(m) +} +func (m *Explain) XXX_DiscardUnknown() { + xxx_messageInfo_Explain.DiscardUnknown(m) +} + +var xxx_messageInfo_Explain proto.InternalMessageInfo + +func (m *Explain) GetValues() []*Value { + if m != nil { + return m.Values + } + return nil +} + +func (m *Explain) GetExprSteps() []*Explain_ExprStep { + if m != nil { + return m.ExprSteps + } + return nil +} + +// ID and value index of one step. +type Explain_ExprStep struct { + // ID of corresponding Expr node. + Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + // Index of the value in the values list. + ValueIndex int32 `protobuf:"varint,2,opt,name=value_index,json=valueIndex,proto3" json:"value_index,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Explain_ExprStep) Reset() { *m = Explain_ExprStep{} } +func (m *Explain_ExprStep) String() string { return proto.CompactTextString(m) } +func (*Explain_ExprStep) ProtoMessage() {} +func (*Explain_ExprStep) Descriptor() ([]byte, []int) { + return fileDescriptor_2df9793dd8748e27, []int{0, 0} +} + +func (m *Explain_ExprStep) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Explain_ExprStep.Unmarshal(m, b) +} +func (m *Explain_ExprStep) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Explain_ExprStep.Marshal(b, m, deterministic) +} +func (m *Explain_ExprStep) XXX_Merge(src proto.Message) { + xxx_messageInfo_Explain_ExprStep.Merge(m, src) +} +func (m *Explain_ExprStep) XXX_Size() int { + return xxx_messageInfo_Explain_ExprStep.Size(m) +} +func (m *Explain_ExprStep) XXX_DiscardUnknown() { + xxx_messageInfo_Explain_ExprStep.DiscardUnknown(m) +} + +var xxx_messageInfo_Explain_ExprStep proto.InternalMessageInfo + +func (m *Explain_ExprStep) GetId() int64 { + if m != nil { + return m.Id + } + return 0 +} + +func (m *Explain_ExprStep) GetValueIndex() int32 { + if m != nil { + return m.ValueIndex + } + return 0 +} + +func init() { + proto.RegisterType((*Explain)(nil), "google.api.expr.v1alpha1.Explain") + proto.RegisterType((*Explain_ExprStep)(nil), "google.api.expr.v1alpha1.Explain.ExprStep") +} + +func init() { + proto.RegisterFile("google/api/expr/v1alpha1/explain.proto", fileDescriptor_2df9793dd8748e27) +} + +var fileDescriptor_2df9793dd8748e27 = []byte{ + // 261 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x74, 0x90, 0xb1, 0x4b, 0x03, 0x31, + 0x14, 0xc6, 0x79, 0x29, 0x56, 0x7d, 0x15, 0x87, 0x4c, 0xa1, 0x08, 0x3d, 0x44, 0xe4, 0x70, 0x48, + 0xa8, 0x0e, 0x82, 0x75, 0x2a, 0x38, 0x74, 0x2b, 0x27, 0x38, 0xb8, 0x94, 0xe8, 0x85, 0x18, 0x88, + 0x97, 0x70, 0x39, 0x4b, 0xff, 0x4a, 0xff, 0x1e, 0x47, 0x49, 0x2e, 0x37, 0x95, 0x9b, 0xee, 0xde, + 0xfb, 0x7e, 0xdf, 0xf7, 0x91, 0x87, 0xb7, 0xda, 0x39, 0x6d, 0x95, 0x90, 0xde, 0x08, 0x75, 0xf0, + 0xad, 0xd8, 0x2f, 0xa5, 0xf5, 0x5f, 0x72, 0x19, 0x27, 0x2b, 0x4d, 0xc3, 0x7d, 0xeb, 0x3a, 0x47, + 0x59, 0xcf, 0x71, 0xe9, 0x0d, 0x8f, 0x1c, 0x1f, 0xb8, 0xf9, 0xcd, 0x68, 0xc2, 0x5e, 0xda, 0x1f, + 0xd5, 0xfb, 0xaf, 0x7f, 0x01, 0x4f, 0x5f, 0xfa, 0x44, 0xfa, 0x88, 0xd3, 0x24, 0x05, 0x06, 0xc5, + 0xa4, 0x9c, 0xdd, 0x2f, 0xf8, 0x58, 0x38, 0x7f, 0x8b, 0x5c, 0x95, 0x71, 0xba, 0x41, 0x8c, 0xf2, + 0x2e, 0x74, 0xca, 0x07, 0x46, 0x92, 0xf9, 0x6e, 0xdc, 0x9c, 0xfb, 0xe2, 0xb7, 0x7d, 0xed, 0x94, + 0xaf, 0xce, 0x55, 0xfe, 0x0b, 0xf3, 0x15, 0x9e, 0x0d, 0x6b, 0x7a, 0x89, 0xc4, 0xd4, 0x0c, 0x0a, + 0x28, 0x27, 0x15, 0x31, 0x35, 0x5d, 0xe0, 0x2c, 0x15, 0xee, 0x4c, 0x53, 0xab, 0x03, 0x23, 0x05, + 0x94, 0x27, 0x15, 0xa6, 0xd5, 0x26, 0x6e, 0x9e, 0x08, 0x83, 0xb5, 0xc3, 0xab, 0x4f, 0xf7, 0x3d, + 0x5a, 0xbe, 0xbe, 0xc8, 0xed, 0xdb, 0xf8, 0xfc, 0x2d, 0xbc, 0x3f, 0x67, 0x52, 0x3b, 0x2b, 0x1b, + 0xcd, 0x5d, 0xab, 0x85, 0x56, 0x4d, 0x3a, 0x8e, 0xe8, 0x25, 0xe9, 0x4d, 0x38, 0xbe, 0xe2, 0x2a, + 0x4e, 0x7f, 0x00, 0x1f, 0xd3, 0xc4, 0x3e, 0xfc, 0x07, 0x00, 0x00, 0xff, 0xff, 0x34, 0xf2, 0xb9, + 0x9e, 0xb2, 0x01, 0x00, 0x00, +} diff --git a/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/syntax.pb.go b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/syntax.pb.go new file mode 100644 index 0000000000..7f13ff0927 --- /dev/null +++ b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/syntax.pb.go @@ -0,0 +1,1208 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: google/api/expr/v1alpha1/syntax.proto + +package expr + +import ( + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" + duration "github.com/golang/protobuf/ptypes/duration" + _struct "github.com/golang/protobuf/ptypes/struct" + timestamp "github.com/golang/protobuf/ptypes/timestamp" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// An expression together with source information as returned by the parser. +type ParsedExpr struct { + // The parsed expression. + Expr *Expr `protobuf:"bytes,2,opt,name=expr,proto3" json:"expr,omitempty"` + // The source info derived from input that generated the parsed `expr`. + SourceInfo *SourceInfo `protobuf:"bytes,3,opt,name=source_info,json=sourceInfo,proto3" json:"source_info,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ParsedExpr) Reset() { *m = ParsedExpr{} } +func (m *ParsedExpr) String() string { return proto.CompactTextString(m) } +func (*ParsedExpr) ProtoMessage() {} +func (*ParsedExpr) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{0} +} + +func (m *ParsedExpr) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ParsedExpr.Unmarshal(m, b) +} +func (m *ParsedExpr) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ParsedExpr.Marshal(b, m, deterministic) +} +func (m *ParsedExpr) XXX_Merge(src proto.Message) { + xxx_messageInfo_ParsedExpr.Merge(m, src) +} +func (m *ParsedExpr) XXX_Size() int { + return xxx_messageInfo_ParsedExpr.Size(m) +} +func (m *ParsedExpr) XXX_DiscardUnknown() { + xxx_messageInfo_ParsedExpr.DiscardUnknown(m) +} + +var xxx_messageInfo_ParsedExpr proto.InternalMessageInfo + +func (m *ParsedExpr) GetExpr() *Expr { + if m != nil { + return m.Expr + } + return nil +} + +func (m *ParsedExpr) GetSourceInfo() *SourceInfo { + if m != nil { + return m.SourceInfo + } + return nil +} + +// An abstract representation of a common expression. +// +// Expressions are abstractly represented as a collection of identifiers, +// select statements, function calls, literals, and comprehensions. All +// operators with the exception of the '.' operator are modelled as function +// calls. This makes it easy to represent new operators into the existing AST. +// +// All references within expressions must resolve to a +// [Decl][google.api.expr.v1alpha1.Decl] provided at type-check for an +// expression to be valid. A reference may either be a bare identifier `name` or +// a qualified identifier `google.api.name`. References may either refer to a +// value or a function declaration. +// +// For example, the expression `google.api.name.startsWith('expr')` references +// the declaration `google.api.name` within a +// [Expr.Select][google.api.expr.v1alpha1.Expr.Select] expression, and the +// function declaration `startsWith`. +type Expr struct { + // Required. An id assigned to this node by the parser which is unique in a + // given expression tree. This is used to associate type information and other + // attributes to a node in the parse tree. + Id int64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"` + // Required. Variants of expressions. + // + // Types that are valid to be assigned to ExprKind: + // *Expr_ConstExpr + // *Expr_IdentExpr + // *Expr_SelectExpr + // *Expr_CallExpr + // *Expr_ListExpr + // *Expr_StructExpr + // *Expr_ComprehensionExpr + ExprKind isExpr_ExprKind `protobuf_oneof:"expr_kind"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr) Reset() { *m = Expr{} } +func (m *Expr) String() string { return proto.CompactTextString(m) } +func (*Expr) ProtoMessage() {} +func (*Expr) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1} +} + +func (m *Expr) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr.Unmarshal(m, b) +} +func (m *Expr) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr.Marshal(b, m, deterministic) +} +func (m *Expr) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr.Merge(m, src) +} +func (m *Expr) XXX_Size() int { + return xxx_messageInfo_Expr.Size(m) +} +func (m *Expr) XXX_DiscardUnknown() { + xxx_messageInfo_Expr.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr proto.InternalMessageInfo + +func (m *Expr) GetId() int64 { + if m != nil { + return m.Id + } + return 0 +} + +type isExpr_ExprKind interface { + isExpr_ExprKind() +} + +type Expr_ConstExpr struct { + ConstExpr *Constant `protobuf:"bytes,3,opt,name=const_expr,json=constExpr,proto3,oneof"` +} + +type Expr_IdentExpr struct { + IdentExpr *Expr_Ident `protobuf:"bytes,4,opt,name=ident_expr,json=identExpr,proto3,oneof"` +} + +type Expr_SelectExpr struct { + SelectExpr *Expr_Select `protobuf:"bytes,5,opt,name=select_expr,json=selectExpr,proto3,oneof"` +} + +type Expr_CallExpr struct { + CallExpr *Expr_Call `protobuf:"bytes,6,opt,name=call_expr,json=callExpr,proto3,oneof"` +} + +type Expr_ListExpr struct { + ListExpr *Expr_CreateList `protobuf:"bytes,7,opt,name=list_expr,json=listExpr,proto3,oneof"` +} + +type Expr_StructExpr struct { + StructExpr *Expr_CreateStruct `protobuf:"bytes,8,opt,name=struct_expr,json=structExpr,proto3,oneof"` +} + +type Expr_ComprehensionExpr struct { + ComprehensionExpr *Expr_Comprehension `protobuf:"bytes,9,opt,name=comprehension_expr,json=comprehensionExpr,proto3,oneof"` +} + +func (*Expr_ConstExpr) isExpr_ExprKind() {} + +func (*Expr_IdentExpr) isExpr_ExprKind() {} + +func (*Expr_SelectExpr) isExpr_ExprKind() {} + +func (*Expr_CallExpr) isExpr_ExprKind() {} + +func (*Expr_ListExpr) isExpr_ExprKind() {} + +func (*Expr_StructExpr) isExpr_ExprKind() {} + +func (*Expr_ComprehensionExpr) isExpr_ExprKind() {} + +func (m *Expr) GetExprKind() isExpr_ExprKind { + if m != nil { + return m.ExprKind + } + return nil +} + +func (m *Expr) GetConstExpr() *Constant { + if x, ok := m.GetExprKind().(*Expr_ConstExpr); ok { + return x.ConstExpr + } + return nil +} + +func (m *Expr) GetIdentExpr() *Expr_Ident { + if x, ok := m.GetExprKind().(*Expr_IdentExpr); ok { + return x.IdentExpr + } + return nil +} + +func (m *Expr) GetSelectExpr() *Expr_Select { + if x, ok := m.GetExprKind().(*Expr_SelectExpr); ok { + return x.SelectExpr + } + return nil +} + +func (m *Expr) GetCallExpr() *Expr_Call { + if x, ok := m.GetExprKind().(*Expr_CallExpr); ok { + return x.CallExpr + } + return nil +} + +func (m *Expr) GetListExpr() *Expr_CreateList { + if x, ok := m.GetExprKind().(*Expr_ListExpr); ok { + return x.ListExpr + } + return nil +} + +func (m *Expr) GetStructExpr() *Expr_CreateStruct { + if x, ok := m.GetExprKind().(*Expr_StructExpr); ok { + return x.StructExpr + } + return nil +} + +func (m *Expr) GetComprehensionExpr() *Expr_Comprehension { + if x, ok := m.GetExprKind().(*Expr_ComprehensionExpr); ok { + return x.ComprehensionExpr + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Expr) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Expr_ConstExpr)(nil), + (*Expr_IdentExpr)(nil), + (*Expr_SelectExpr)(nil), + (*Expr_CallExpr)(nil), + (*Expr_ListExpr)(nil), + (*Expr_StructExpr)(nil), + (*Expr_ComprehensionExpr)(nil), + } +} + +// An identifier expression. e.g. `request`. +type Expr_Ident struct { + // Required. Holds a single, unqualified identifier, possibly preceded by a + // '.'. + // + // Qualified names are represented by the + // [Expr.Select][google.api.expr.v1alpha1.Expr.Select] expression. + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr_Ident) Reset() { *m = Expr_Ident{} } +func (m *Expr_Ident) String() string { return proto.CompactTextString(m) } +func (*Expr_Ident) ProtoMessage() {} +func (*Expr_Ident) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1, 0} +} + +func (m *Expr_Ident) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr_Ident.Unmarshal(m, b) +} +func (m *Expr_Ident) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr_Ident.Marshal(b, m, deterministic) +} +func (m *Expr_Ident) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr_Ident.Merge(m, src) +} +func (m *Expr_Ident) XXX_Size() int { + return xxx_messageInfo_Expr_Ident.Size(m) +} +func (m *Expr_Ident) XXX_DiscardUnknown() { + xxx_messageInfo_Expr_Ident.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr_Ident proto.InternalMessageInfo + +func (m *Expr_Ident) GetName() string { + if m != nil { + return m.Name + } + return "" +} + +// A field selection expression. e.g. `request.auth`. +type Expr_Select struct { + // Required. The target of the selection expression. + // + // For example, in the select expression `request.auth`, the `request` + // portion of the expression is the `operand`. + Operand *Expr `protobuf:"bytes,1,opt,name=operand,proto3" json:"operand,omitempty"` + // Required. The name of the field to select. + // + // For example, in the select expression `request.auth`, the `auth` portion + // of the expression would be the `field`. + Field string `protobuf:"bytes,2,opt,name=field,proto3" json:"field,omitempty"` + // Whether the select is to be interpreted as a field presence test. + // + // This results from the macro `has(request.auth)`. + TestOnly bool `protobuf:"varint,3,opt,name=test_only,json=testOnly,proto3" json:"test_only,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr_Select) Reset() { *m = Expr_Select{} } +func (m *Expr_Select) String() string { return proto.CompactTextString(m) } +func (*Expr_Select) ProtoMessage() {} +func (*Expr_Select) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1, 1} +} + +func (m *Expr_Select) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr_Select.Unmarshal(m, b) +} +func (m *Expr_Select) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr_Select.Marshal(b, m, deterministic) +} +func (m *Expr_Select) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr_Select.Merge(m, src) +} +func (m *Expr_Select) XXX_Size() int { + return xxx_messageInfo_Expr_Select.Size(m) +} +func (m *Expr_Select) XXX_DiscardUnknown() { + xxx_messageInfo_Expr_Select.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr_Select proto.InternalMessageInfo + +func (m *Expr_Select) GetOperand() *Expr { + if m != nil { + return m.Operand + } + return nil +} + +func (m *Expr_Select) GetField() string { + if m != nil { + return m.Field + } + return "" +} + +func (m *Expr_Select) GetTestOnly() bool { + if m != nil { + return m.TestOnly + } + return false +} + +// A call expression, including calls to predefined functions and operators. +// +// For example, `value == 10`, `size(map_value)`. +type Expr_Call struct { + // The target of an method call-style expression. For example, `x` in + // `x.f()`. + Target *Expr `protobuf:"bytes,1,opt,name=target,proto3" json:"target,omitempty"` + // Required. The name of the function or method being called. + Function string `protobuf:"bytes,2,opt,name=function,proto3" json:"function,omitempty"` + // The arguments. + Args []*Expr `protobuf:"bytes,3,rep,name=args,proto3" json:"args,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr_Call) Reset() { *m = Expr_Call{} } +func (m *Expr_Call) String() string { return proto.CompactTextString(m) } +func (*Expr_Call) ProtoMessage() {} +func (*Expr_Call) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1, 2} +} + +func (m *Expr_Call) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr_Call.Unmarshal(m, b) +} +func (m *Expr_Call) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr_Call.Marshal(b, m, deterministic) +} +func (m *Expr_Call) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr_Call.Merge(m, src) +} +func (m *Expr_Call) XXX_Size() int { + return xxx_messageInfo_Expr_Call.Size(m) +} +func (m *Expr_Call) XXX_DiscardUnknown() { + xxx_messageInfo_Expr_Call.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr_Call proto.InternalMessageInfo + +func (m *Expr_Call) GetTarget() *Expr { + if m != nil { + return m.Target + } + return nil +} + +func (m *Expr_Call) GetFunction() string { + if m != nil { + return m.Function + } + return "" +} + +func (m *Expr_Call) GetArgs() []*Expr { + if m != nil { + return m.Args + } + return nil +} + +// A list creation expression. +// +// Lists may either be homogenous, e.g. `[1, 2, 3]`, or heterogenous, e.g. +// `dyn([1, 'hello', 2.0])` +type Expr_CreateList struct { + // The elements part of the list. + Elements []*Expr `protobuf:"bytes,1,rep,name=elements,proto3" json:"elements,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr_CreateList) Reset() { *m = Expr_CreateList{} } +func (m *Expr_CreateList) String() string { return proto.CompactTextString(m) } +func (*Expr_CreateList) ProtoMessage() {} +func (*Expr_CreateList) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1, 3} +} + +func (m *Expr_CreateList) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr_CreateList.Unmarshal(m, b) +} +func (m *Expr_CreateList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr_CreateList.Marshal(b, m, deterministic) +} +func (m *Expr_CreateList) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr_CreateList.Merge(m, src) +} +func (m *Expr_CreateList) XXX_Size() int { + return xxx_messageInfo_Expr_CreateList.Size(m) +} +func (m *Expr_CreateList) XXX_DiscardUnknown() { + xxx_messageInfo_Expr_CreateList.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr_CreateList proto.InternalMessageInfo + +func (m *Expr_CreateList) GetElements() []*Expr { + if m != nil { + return m.Elements + } + return nil +} + +// A map or message creation expression. +// +// Maps are constructed as `{'key_name': 'value'}`. Message construction is +// similar, but prefixed with a type name and composed of field ids: +// `types.MyType{field_id: 'value'}`. +type Expr_CreateStruct struct { + // The type name of the message to be created, empty when creating map + // literals. + MessageName string `protobuf:"bytes,1,opt,name=message_name,json=messageName,proto3" json:"message_name,omitempty"` + // The entries in the creation expression. + Entries []*Expr_CreateStruct_Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr_CreateStruct) Reset() { *m = Expr_CreateStruct{} } +func (m *Expr_CreateStruct) String() string { return proto.CompactTextString(m) } +func (*Expr_CreateStruct) ProtoMessage() {} +func (*Expr_CreateStruct) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1, 4} +} + +func (m *Expr_CreateStruct) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr_CreateStruct.Unmarshal(m, b) +} +func (m *Expr_CreateStruct) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr_CreateStruct.Marshal(b, m, deterministic) +} +func (m *Expr_CreateStruct) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr_CreateStruct.Merge(m, src) +} +func (m *Expr_CreateStruct) XXX_Size() int { + return xxx_messageInfo_Expr_CreateStruct.Size(m) +} +func (m *Expr_CreateStruct) XXX_DiscardUnknown() { + xxx_messageInfo_Expr_CreateStruct.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr_CreateStruct proto.InternalMessageInfo + +func (m *Expr_CreateStruct) GetMessageName() string { + if m != nil { + return m.MessageName + } + return "" +} + +func (m *Expr_CreateStruct) GetEntries() []*Expr_CreateStruct_Entry { + if m != nil { + return m.Entries + } + return nil +} + +// Represents an entry. +type Expr_CreateStruct_Entry struct { + // Required. An id assigned to this node by the parser which is unique + // in a given expression tree. This is used to associate type + // information and other attributes to the node. + Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` + // The `Entry` key kinds. + // + // Types that are valid to be assigned to KeyKind: + // *Expr_CreateStruct_Entry_FieldKey + // *Expr_CreateStruct_Entry_MapKey + KeyKind isExpr_CreateStruct_Entry_KeyKind `protobuf_oneof:"key_kind"` + // Required. The value assigned to the key. + Value *Expr `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr_CreateStruct_Entry) Reset() { *m = Expr_CreateStruct_Entry{} } +func (m *Expr_CreateStruct_Entry) String() string { return proto.CompactTextString(m) } +func (*Expr_CreateStruct_Entry) ProtoMessage() {} +func (*Expr_CreateStruct_Entry) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1, 4, 0} +} + +func (m *Expr_CreateStruct_Entry) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr_CreateStruct_Entry.Unmarshal(m, b) +} +func (m *Expr_CreateStruct_Entry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr_CreateStruct_Entry.Marshal(b, m, deterministic) +} +func (m *Expr_CreateStruct_Entry) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr_CreateStruct_Entry.Merge(m, src) +} +func (m *Expr_CreateStruct_Entry) XXX_Size() int { + return xxx_messageInfo_Expr_CreateStruct_Entry.Size(m) +} +func (m *Expr_CreateStruct_Entry) XXX_DiscardUnknown() { + xxx_messageInfo_Expr_CreateStruct_Entry.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr_CreateStruct_Entry proto.InternalMessageInfo + +func (m *Expr_CreateStruct_Entry) GetId() int64 { + if m != nil { + return m.Id + } + return 0 +} + +type isExpr_CreateStruct_Entry_KeyKind interface { + isExpr_CreateStruct_Entry_KeyKind() +} + +type Expr_CreateStruct_Entry_FieldKey struct { + FieldKey string `protobuf:"bytes,2,opt,name=field_key,json=fieldKey,proto3,oneof"` +} + +type Expr_CreateStruct_Entry_MapKey struct { + MapKey *Expr `protobuf:"bytes,3,opt,name=map_key,json=mapKey,proto3,oneof"` +} + +func (*Expr_CreateStruct_Entry_FieldKey) isExpr_CreateStruct_Entry_KeyKind() {} + +func (*Expr_CreateStruct_Entry_MapKey) isExpr_CreateStruct_Entry_KeyKind() {} + +func (m *Expr_CreateStruct_Entry) GetKeyKind() isExpr_CreateStruct_Entry_KeyKind { + if m != nil { + return m.KeyKind + } + return nil +} + +func (m *Expr_CreateStruct_Entry) GetFieldKey() string { + if x, ok := m.GetKeyKind().(*Expr_CreateStruct_Entry_FieldKey); ok { + return x.FieldKey + } + return "" +} + +func (m *Expr_CreateStruct_Entry) GetMapKey() *Expr { + if x, ok := m.GetKeyKind().(*Expr_CreateStruct_Entry_MapKey); ok { + return x.MapKey + } + return nil +} + +func (m *Expr_CreateStruct_Entry) GetValue() *Expr { + if m != nil { + return m.Value + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Expr_CreateStruct_Entry) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Expr_CreateStruct_Entry_FieldKey)(nil), + (*Expr_CreateStruct_Entry_MapKey)(nil), + } +} + +// A comprehension expression applied to a list or map. +// +// Comprehensions are not part of the core syntax, but enabled with macros. +// A macro matches a specific call signature within a parsed AST and replaces +// the call with an alternate AST block. Macro expansion happens at parse +// time. +// +// The following macros are supported within CEL: +// +// Aggregate type macros may be applied to all elements in a list or all keys +// in a map: +// +// * `all`, `exists`, `exists_one` - test a predicate expression against +// the inputs and return `true` if the predicate is satisfied for all, +// any, or only one value `list.all(x, x < 10)`. +// * `filter` - test a predicate expression against the inputs and return +// the subset of elements which satisfy the predicate: +// `payments.filter(p, p > 1000)`. +// * `map` - apply an expression to all elements in the input and return the +// output aggregate type: `[1, 2, 3].map(i, i * i)`. +// +// The `has(m.x)` macro tests whether the property `x` is present in struct +// `m`. The semantics of this macro depend on the type of `m`. For proto2 +// messages `has(m.x)` is defined as 'defined, but not set`. For proto3, the +// macro tests whether the property is set to its default. For map and struct +// types, the macro tests whether the property `x` is defined on `m`. +type Expr_Comprehension struct { + // The name of the iteration variable. + IterVar string `protobuf:"bytes,1,opt,name=iter_var,json=iterVar,proto3" json:"iter_var,omitempty"` + // The range over which var iterates. + IterRange *Expr `protobuf:"bytes,2,opt,name=iter_range,json=iterRange,proto3" json:"iter_range,omitempty"` + // The name of the variable used for accumulation of the result. + AccuVar string `protobuf:"bytes,3,opt,name=accu_var,json=accuVar,proto3" json:"accu_var,omitempty"` + // The initial value of the accumulator. + AccuInit *Expr `protobuf:"bytes,4,opt,name=accu_init,json=accuInit,proto3" json:"accu_init,omitempty"` + // An expression which can contain iter_var and accu_var. + // + // Returns false when the result has been computed and may be used as + // a hint to short-circuit the remainder of the comprehension. + LoopCondition *Expr `protobuf:"bytes,5,opt,name=loop_condition,json=loopCondition,proto3" json:"loop_condition,omitempty"` + // An expression which can contain iter_var and accu_var. + // + // Computes the next value of accu_var. + LoopStep *Expr `protobuf:"bytes,6,opt,name=loop_step,json=loopStep,proto3" json:"loop_step,omitempty"` + // An expression which can contain accu_var. + // + // Computes the result. + Result *Expr `protobuf:"bytes,7,opt,name=result,proto3" json:"result,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Expr_Comprehension) Reset() { *m = Expr_Comprehension{} } +func (m *Expr_Comprehension) String() string { return proto.CompactTextString(m) } +func (*Expr_Comprehension) ProtoMessage() {} +func (*Expr_Comprehension) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{1, 5} +} + +func (m *Expr_Comprehension) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Expr_Comprehension.Unmarshal(m, b) +} +func (m *Expr_Comprehension) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Expr_Comprehension.Marshal(b, m, deterministic) +} +func (m *Expr_Comprehension) XXX_Merge(src proto.Message) { + xxx_messageInfo_Expr_Comprehension.Merge(m, src) +} +func (m *Expr_Comprehension) XXX_Size() int { + return xxx_messageInfo_Expr_Comprehension.Size(m) +} +func (m *Expr_Comprehension) XXX_DiscardUnknown() { + xxx_messageInfo_Expr_Comprehension.DiscardUnknown(m) +} + +var xxx_messageInfo_Expr_Comprehension proto.InternalMessageInfo + +func (m *Expr_Comprehension) GetIterVar() string { + if m != nil { + return m.IterVar + } + return "" +} + +func (m *Expr_Comprehension) GetIterRange() *Expr { + if m != nil { + return m.IterRange + } + return nil +} + +func (m *Expr_Comprehension) GetAccuVar() string { + if m != nil { + return m.AccuVar + } + return "" +} + +func (m *Expr_Comprehension) GetAccuInit() *Expr { + if m != nil { + return m.AccuInit + } + return nil +} + +func (m *Expr_Comprehension) GetLoopCondition() *Expr { + if m != nil { + return m.LoopCondition + } + return nil +} + +func (m *Expr_Comprehension) GetLoopStep() *Expr { + if m != nil { + return m.LoopStep + } + return nil +} + +func (m *Expr_Comprehension) GetResult() *Expr { + if m != nil { + return m.Result + } + return nil +} + +// Represents a primitive literal. +// +// Named 'Constant' here for backwards compatibility. +// +// This is similar as the primitives supported in the well-known type +// `google.protobuf.Value`, but richer so it can represent CEL's full range of +// primitives. +// +// Lists and structs are not included as constants as these aggregate types may +// contain [Expr][google.api.expr.v1alpha1.Expr] elements which require +// evaluation and are thus not constant. +// +// Examples of literals include: `"hello"`, `b'bytes'`, `1u`, `4.2`, `-2`, +// `true`, `null`. +type Constant struct { + // Required. The valid constant kinds. + // + // Types that are valid to be assigned to ConstantKind: + // *Constant_NullValue + // *Constant_BoolValue + // *Constant_Int64Value + // *Constant_Uint64Value + // *Constant_DoubleValue + // *Constant_StringValue + // *Constant_BytesValue + // *Constant_DurationValue + // *Constant_TimestampValue + ConstantKind isConstant_ConstantKind `protobuf_oneof:"constant_kind"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Constant) Reset() { *m = Constant{} } +func (m *Constant) String() string { return proto.CompactTextString(m) } +func (*Constant) ProtoMessage() {} +func (*Constant) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{2} +} + +func (m *Constant) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Constant.Unmarshal(m, b) +} +func (m *Constant) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Constant.Marshal(b, m, deterministic) +} +func (m *Constant) XXX_Merge(src proto.Message) { + xxx_messageInfo_Constant.Merge(m, src) +} +func (m *Constant) XXX_Size() int { + return xxx_messageInfo_Constant.Size(m) +} +func (m *Constant) XXX_DiscardUnknown() { + xxx_messageInfo_Constant.DiscardUnknown(m) +} + +var xxx_messageInfo_Constant proto.InternalMessageInfo + +type isConstant_ConstantKind interface { + isConstant_ConstantKind() +} + +type Constant_NullValue struct { + NullValue _struct.NullValue `protobuf:"varint,1,opt,name=null_value,json=nullValue,proto3,enum=google.protobuf.NullValue,oneof"` +} + +type Constant_BoolValue struct { + BoolValue bool `protobuf:"varint,2,opt,name=bool_value,json=boolValue,proto3,oneof"` +} + +type Constant_Int64Value struct { + Int64Value int64 `protobuf:"varint,3,opt,name=int64_value,json=int64Value,proto3,oneof"` +} + +type Constant_Uint64Value struct { + Uint64Value uint64 `protobuf:"varint,4,opt,name=uint64_value,json=uint64Value,proto3,oneof"` +} + +type Constant_DoubleValue struct { + DoubleValue float64 `protobuf:"fixed64,5,opt,name=double_value,json=doubleValue,proto3,oneof"` +} + +type Constant_StringValue struct { + StringValue string `protobuf:"bytes,6,opt,name=string_value,json=stringValue,proto3,oneof"` +} + +type Constant_BytesValue struct { + BytesValue []byte `protobuf:"bytes,7,opt,name=bytes_value,json=bytesValue,proto3,oneof"` +} + +type Constant_DurationValue struct { + DurationValue *duration.Duration `protobuf:"bytes,8,opt,name=duration_value,json=durationValue,proto3,oneof"` +} + +type Constant_TimestampValue struct { + TimestampValue *timestamp.Timestamp `protobuf:"bytes,9,opt,name=timestamp_value,json=timestampValue,proto3,oneof"` +} + +func (*Constant_NullValue) isConstant_ConstantKind() {} + +func (*Constant_BoolValue) isConstant_ConstantKind() {} + +func (*Constant_Int64Value) isConstant_ConstantKind() {} + +func (*Constant_Uint64Value) isConstant_ConstantKind() {} + +func (*Constant_DoubleValue) isConstant_ConstantKind() {} + +func (*Constant_StringValue) isConstant_ConstantKind() {} + +func (*Constant_BytesValue) isConstant_ConstantKind() {} + +func (*Constant_DurationValue) isConstant_ConstantKind() {} + +func (*Constant_TimestampValue) isConstant_ConstantKind() {} + +func (m *Constant) GetConstantKind() isConstant_ConstantKind { + if m != nil { + return m.ConstantKind + } + return nil +} + +func (m *Constant) GetNullValue() _struct.NullValue { + if x, ok := m.GetConstantKind().(*Constant_NullValue); ok { + return x.NullValue + } + return _struct.NullValue_NULL_VALUE +} + +func (m *Constant) GetBoolValue() bool { + if x, ok := m.GetConstantKind().(*Constant_BoolValue); ok { + return x.BoolValue + } + return false +} + +func (m *Constant) GetInt64Value() int64 { + if x, ok := m.GetConstantKind().(*Constant_Int64Value); ok { + return x.Int64Value + } + return 0 +} + +func (m *Constant) GetUint64Value() uint64 { + if x, ok := m.GetConstantKind().(*Constant_Uint64Value); ok { + return x.Uint64Value + } + return 0 +} + +func (m *Constant) GetDoubleValue() float64 { + if x, ok := m.GetConstantKind().(*Constant_DoubleValue); ok { + return x.DoubleValue + } + return 0 +} + +func (m *Constant) GetStringValue() string { + if x, ok := m.GetConstantKind().(*Constant_StringValue); ok { + return x.StringValue + } + return "" +} + +func (m *Constant) GetBytesValue() []byte { + if x, ok := m.GetConstantKind().(*Constant_BytesValue); ok { + return x.BytesValue + } + return nil +} + +// Deprecated: Do not use. +func (m *Constant) GetDurationValue() *duration.Duration { + if x, ok := m.GetConstantKind().(*Constant_DurationValue); ok { + return x.DurationValue + } + return nil +} + +// Deprecated: Do not use. +func (m *Constant) GetTimestampValue() *timestamp.Timestamp { + if x, ok := m.GetConstantKind().(*Constant_TimestampValue); ok { + return x.TimestampValue + } + return nil +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Constant) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Constant_NullValue)(nil), + (*Constant_BoolValue)(nil), + (*Constant_Int64Value)(nil), + (*Constant_Uint64Value)(nil), + (*Constant_DoubleValue)(nil), + (*Constant_StringValue)(nil), + (*Constant_BytesValue)(nil), + (*Constant_DurationValue)(nil), + (*Constant_TimestampValue)(nil), + } +} + +// Source information collected at parse time. +type SourceInfo struct { + // The syntax version of the source, e.g. `cel1`. + SyntaxVersion string `protobuf:"bytes,1,opt,name=syntax_version,json=syntaxVersion,proto3" json:"syntax_version,omitempty"` + // The location name. All position information attached to an expression is + // relative to this location. + // + // The location could be a file, UI element, or similar. For example, + // `acme/app/AnvilPolicy.cel`. + Location string `protobuf:"bytes,2,opt,name=location,proto3" json:"location,omitempty"` + // Monotonically increasing list of character offsets where newlines appear. + // + // The line number of a given position is the index `i` where for a given + // `id` the `line_offsets[i] < id_positions[id] < line_offsets[i+1]`. The + // column may be derivd from `id_positions[id] - line_offsets[i]`. + LineOffsets []int32 `protobuf:"varint,3,rep,packed,name=line_offsets,json=lineOffsets,proto3" json:"line_offsets,omitempty"` + // A map from the parse node id (e.g. `Expr.id`) to the character offset + // within source. + Positions map[int64]int32 `protobuf:"bytes,4,rep,name=positions,proto3" json:"positions,omitempty" protobuf_key:"varint,1,opt,name=key,proto3" protobuf_val:"varint,2,opt,name=value,proto3"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SourceInfo) Reset() { *m = SourceInfo{} } +func (m *SourceInfo) String() string { return proto.CompactTextString(m) } +func (*SourceInfo) ProtoMessage() {} +func (*SourceInfo) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{3} +} + +func (m *SourceInfo) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SourceInfo.Unmarshal(m, b) +} +func (m *SourceInfo) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SourceInfo.Marshal(b, m, deterministic) +} +func (m *SourceInfo) XXX_Merge(src proto.Message) { + xxx_messageInfo_SourceInfo.Merge(m, src) +} +func (m *SourceInfo) XXX_Size() int { + return xxx_messageInfo_SourceInfo.Size(m) +} +func (m *SourceInfo) XXX_DiscardUnknown() { + xxx_messageInfo_SourceInfo.DiscardUnknown(m) +} + +var xxx_messageInfo_SourceInfo proto.InternalMessageInfo + +func (m *SourceInfo) GetSyntaxVersion() string { + if m != nil { + return m.SyntaxVersion + } + return "" +} + +func (m *SourceInfo) GetLocation() string { + if m != nil { + return m.Location + } + return "" +} + +func (m *SourceInfo) GetLineOffsets() []int32 { + if m != nil { + return m.LineOffsets + } + return nil +} + +func (m *SourceInfo) GetPositions() map[int64]int32 { + if m != nil { + return m.Positions + } + return nil +} + +// A specific position in source. +type SourcePosition struct { + // The soucre location name (e.g. file name). + Location string `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"` + // The character offset. + Offset int32 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` + // The 1-based index of the starting line in the source text + // where the issue occurs, or 0 if unknown. + Line int32 `protobuf:"varint,3,opt,name=line,proto3" json:"line,omitempty"` + // The 0-based index of the starting position within the line of source text + // where the issue occurs. Only meaningful if line is nonzero. + Column int32 `protobuf:"varint,4,opt,name=column,proto3" json:"column,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *SourcePosition) Reset() { *m = SourcePosition{} } +func (m *SourcePosition) String() string { return proto.CompactTextString(m) } +func (*SourcePosition) ProtoMessage() {} +func (*SourcePosition) Descriptor() ([]byte, []int) { + return fileDescriptor_d4e2be48009c83cb, []int{4} +} + +func (m *SourcePosition) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_SourcePosition.Unmarshal(m, b) +} +func (m *SourcePosition) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_SourcePosition.Marshal(b, m, deterministic) +} +func (m *SourcePosition) XXX_Merge(src proto.Message) { + xxx_messageInfo_SourcePosition.Merge(m, src) +} +func (m *SourcePosition) XXX_Size() int { + return xxx_messageInfo_SourcePosition.Size(m) +} +func (m *SourcePosition) XXX_DiscardUnknown() { + xxx_messageInfo_SourcePosition.DiscardUnknown(m) +} + +var xxx_messageInfo_SourcePosition proto.InternalMessageInfo + +func (m *SourcePosition) GetLocation() string { + if m != nil { + return m.Location + } + return "" +} + +func (m *SourcePosition) GetOffset() int32 { + if m != nil { + return m.Offset + } + return 0 +} + +func (m *SourcePosition) GetLine() int32 { + if m != nil { + return m.Line + } + return 0 +} + +func (m *SourcePosition) GetColumn() int32 { + if m != nil { + return m.Column + } + return 0 +} + +func init() { + proto.RegisterType((*ParsedExpr)(nil), "google.api.expr.v1alpha1.ParsedExpr") + proto.RegisterType((*Expr)(nil), "google.api.expr.v1alpha1.Expr") + proto.RegisterType((*Expr_Ident)(nil), "google.api.expr.v1alpha1.Expr.Ident") + proto.RegisterType((*Expr_Select)(nil), "google.api.expr.v1alpha1.Expr.Select") + proto.RegisterType((*Expr_Call)(nil), "google.api.expr.v1alpha1.Expr.Call") + proto.RegisterType((*Expr_CreateList)(nil), "google.api.expr.v1alpha1.Expr.CreateList") + proto.RegisterType((*Expr_CreateStruct)(nil), "google.api.expr.v1alpha1.Expr.CreateStruct") + proto.RegisterType((*Expr_CreateStruct_Entry)(nil), "google.api.expr.v1alpha1.Expr.CreateStruct.Entry") + proto.RegisterType((*Expr_Comprehension)(nil), "google.api.expr.v1alpha1.Expr.Comprehension") + proto.RegisterType((*Constant)(nil), "google.api.expr.v1alpha1.Constant") + proto.RegisterType((*SourceInfo)(nil), "google.api.expr.v1alpha1.SourceInfo") + proto.RegisterMapType((map[int64]int32)(nil), "google.api.expr.v1alpha1.SourceInfo.PositionsEntry") + proto.RegisterType((*SourcePosition)(nil), "google.api.expr.v1alpha1.SourcePosition") +} + +func init() { + proto.RegisterFile("google/api/expr/v1alpha1/syntax.proto", fileDescriptor_d4e2be48009c83cb) +} + +var fileDescriptor_d4e2be48009c83cb = []byte{ + // 1134 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x94, 0x56, 0xcf, 0x6e, 0x1b, 0xb7, + 0x13, 0xd6, 0xea, 0x9f, 0xb5, 0x23, 0x5b, 0xf9, 0xfd, 0x88, 0xa2, 0x50, 0x36, 0x69, 0xe2, 0x38, + 0x35, 0x90, 0xa2, 0x85, 0x04, 0x3b, 0x41, 0x90, 0xc6, 0xe9, 0x45, 0xae, 0x0b, 0x19, 0x29, 0x1c, + 0x77, 0x5d, 0xf8, 0x50, 0xa0, 0x10, 0xe8, 0x15, 0xa5, 0x2c, 0x4c, 0x91, 0x8b, 0x25, 0xd7, 0xb0, + 0xce, 0x3d, 0xf4, 0xd6, 0x97, 0x69, 0x5f, 0xa0, 0xef, 0xd1, 0x07, 0xe9, 0xa5, 0x40, 0x31, 0x43, + 0xae, 0xfc, 0x0f, 0x86, 0xd4, 0x1b, 0x39, 0xfc, 0xbe, 0x8f, 0xc3, 0x99, 0xe1, 0x90, 0xb0, 0x3d, + 0xd5, 0x7a, 0x2a, 0x45, 0x9f, 0x67, 0x69, 0x5f, 0x5c, 0x66, 0x79, 0xff, 0x62, 0x87, 0xcb, 0xec, + 0x23, 0xdf, 0xe9, 0x9b, 0xb9, 0xb2, 0xfc, 0xb2, 0x97, 0xe5, 0xda, 0x6a, 0xd6, 0x75, 0xb0, 0x1e, + 0xcf, 0xd2, 0x1e, 0xc2, 0x7a, 0x25, 0x2c, 0x7a, 0xe2, 0x05, 0x08, 0x77, 0x56, 0x4c, 0xfa, 0xe3, + 0x22, 0xe7, 0x36, 0xd5, 0xca, 0x31, 0xa3, 0xc7, 0xb7, 0xd7, 0x8d, 0xcd, 0x8b, 0xc4, 0xfa, 0xd5, + 0xa7, 0xb7, 0x57, 0x6d, 0x3a, 0x13, 0xc6, 0xf2, 0x59, 0xe6, 0x00, 0x5b, 0xbf, 0x06, 0x00, 0xc7, + 0x3c, 0x37, 0x62, 0x7c, 0x70, 0x99, 0xe5, 0x6c, 0x17, 0xea, 0xb8, 0x7d, 0xb7, 0xba, 0x19, 0xbc, + 0x68, 0xef, 0x3e, 0xe9, 0xdd, 0xe7, 0x56, 0x0f, 0xd1, 0x31, 0x61, 0xd9, 0x01, 0xb4, 0x8d, 0x2e, + 0xf2, 0x44, 0x8c, 0x52, 0x35, 0xd1, 0xdd, 0x1a, 0x51, 0x3f, 0xbf, 0x9f, 0x7a, 0x42, 0xe0, 0x43, + 0x35, 0xd1, 0x31, 0x98, 0xc5, 0x78, 0xeb, 0xaf, 0x75, 0xa8, 0x93, 0x0f, 0x1d, 0xa8, 0xa6, 0x63, + 0xf2, 0xa0, 0x16, 0x57, 0xd3, 0x31, 0xdb, 0x07, 0x48, 0xb4, 0x32, 0x76, 0x44, 0x9e, 0x39, 0xf9, + 0xad, 0xfb, 0xe5, 0xf7, 0x11, 0xcb, 0x95, 0x1d, 0x56, 0xe2, 0x90, 0x78, 0x07, 0xce, 0x49, 0x48, + 0xc7, 0x42, 0x79, 0x91, 0xfa, 0x32, 0x1f, 0x91, 0xd3, 0x3b, 0x44, 0x02, 0xca, 0x10, 0x93, 0x64, + 0x86, 0xd0, 0x36, 0x42, 0x8a, 0xc4, 0xeb, 0x34, 0x48, 0x67, 0x7b, 0x89, 0xce, 0x09, 0x31, 0x86, + 0x95, 0x18, 0x1c, 0x97, 0x94, 0x06, 0x10, 0x26, 0x5c, 0x4a, 0xa7, 0xd3, 0x24, 0x9d, 0xe7, 0x4b, + 0x74, 0xf6, 0xb9, 0x94, 0xc3, 0x4a, 0xdc, 0x42, 0x9e, 0xf7, 0x26, 0x94, 0x69, 0x19, 0x98, 0x35, + 0xd2, 0xf8, 0x62, 0x99, 0x46, 0x2e, 0xb8, 0x15, 0xdf, 0xa7, 0x06, 0xfd, 0x69, 0x21, 0x9b, 0x94, + 0x8e, 0xa0, 0xed, 0xea, 0xc6, 0x69, 0xb5, 0x48, 0xeb, 0xcb, 0x95, 0xb4, 0x4e, 0x88, 0x47, 0xa7, + 0xa3, 0x11, 0xe9, 0xfd, 0x0c, 0x2c, 0xd1, 0xb3, 0x2c, 0x17, 0x1f, 0x85, 0x32, 0xa9, 0x56, 0x4e, + 0x36, 0x24, 0xd9, 0xaf, 0x96, 0xc9, 0x5e, 0x27, 0x0e, 0x2b, 0xf1, 0xff, 0x6f, 0x28, 0x21, 0x24, + 0x7a, 0x04, 0x0d, 0x4a, 0x0e, 0x63, 0x50, 0x57, 0x7c, 0x26, 0xba, 0xc1, 0x66, 0xf0, 0x22, 0x8c, + 0x69, 0x1c, 0x15, 0xd0, 0x74, 0x11, 0x67, 0x6f, 0x60, 0x4d, 0x67, 0x22, 0xe7, 0x6a, 0x4c, 0x80, + 0xe5, 0x05, 0x5d, 0xc2, 0xd9, 0x27, 0xd0, 0x98, 0xa4, 0x42, 0xba, 0x32, 0x0c, 0x63, 0x37, 0x61, + 0x8f, 0x20, 0xb4, 0xc2, 0xd8, 0x91, 0x56, 0x72, 0x4e, 0x85, 0xd8, 0x8a, 0x5b, 0x68, 0xf8, 0xa0, + 0xe4, 0x3c, 0xfa, 0x2d, 0x80, 0x3a, 0x66, 0x88, 0xbd, 0x86, 0xa6, 0xe5, 0xf9, 0x54, 0xd8, 0x15, + 0x37, 0xf5, 0x68, 0x16, 0x41, 0x6b, 0x52, 0xa8, 0x04, 0xef, 0xb6, 0xdf, 0x76, 0x31, 0xc7, 0x7b, + 0xc9, 0xf3, 0xa9, 0xe9, 0xd6, 0x36, 0x6b, 0xab, 0xdc, 0x4b, 0xc4, 0x46, 0x43, 0x80, 0xab, 0x6c, + 0xb3, 0xb7, 0xd0, 0x12, 0x52, 0xcc, 0x84, 0xb2, 0xa6, 0x1b, 0xac, 0xa4, 0xb2, 0xc0, 0x47, 0x7f, + 0x54, 0x61, 0xfd, 0x7a, 0xb2, 0xd9, 0x33, 0x58, 0x9f, 0x09, 0x63, 0xf8, 0x54, 0x8c, 0xae, 0x85, + 0xbf, 0xed, 0x6d, 0x47, 0x7c, 0x26, 0xd8, 0x7b, 0x58, 0x13, 0xca, 0xe6, 0xa9, 0x30, 0xdd, 0x2a, + 0x6d, 0xb7, 0xf3, 0x1f, 0xaa, 0xa9, 0x77, 0xa0, 0x6c, 0x3e, 0x8f, 0x4b, 0x85, 0xe8, 0xf7, 0x00, + 0x1a, 0x64, 0xf2, 0xcd, 0x21, 0x58, 0x34, 0x87, 0xcf, 0x20, 0xa4, 0xdc, 0x8c, 0xce, 0xc5, 0xdc, + 0x45, 0x0d, 0xeb, 0x9a, 0x4c, 0xef, 0xc5, 0x9c, 0x7d, 0x0d, 0x6b, 0x33, 0x9e, 0xd1, 0x62, 0x6d, + 0x95, 0x64, 0x0c, 0x2b, 0x71, 0x73, 0xc6, 0x33, 0xa4, 0xbe, 0x82, 0xc6, 0x05, 0x97, 0x85, 0xf0, + 0xcd, 0x62, 0x59, 0xb4, 0x1c, 0x78, 0x00, 0xd0, 0x3a, 0x17, 0xf3, 0xd1, 0x79, 0xaa, 0xc6, 0xd1, + 0x3f, 0x55, 0xd8, 0xb8, 0x51, 0xcc, 0xec, 0x21, 0xb4, 0x52, 0x2b, 0xf2, 0xd1, 0x05, 0xcf, 0x7d, + 0xcc, 0xd6, 0x70, 0x7e, 0xca, 0x73, 0xf6, 0x0d, 0x00, 0x2d, 0xe5, 0x5c, 0x4d, 0xc5, 0x8a, 0xfd, + 0x37, 0x44, 0x46, 0x8c, 0x04, 0x54, 0xe6, 0x49, 0x52, 0x90, 0x72, 0xcd, 0x29, 0xe3, 0x1c, 0x95, + 0xf7, 0x20, 0xa4, 0xa5, 0x54, 0xa5, 0x76, 0xc5, 0xc3, 0x90, 0xd6, 0xa1, 0x4a, 0x2d, 0x3b, 0x80, + 0x8e, 0xd4, 0x3a, 0x1b, 0x25, 0x5a, 0x8d, 0x53, 0x2a, 0xcd, 0xc6, 0x4a, 0x0a, 0x1b, 0xc8, 0xda, + 0x2f, 0x49, 0xe8, 0x03, 0xc9, 0x18, 0x2b, 0x32, 0xdf, 0xed, 0x96, 0xfa, 0x80, 0x84, 0x13, 0x2b, + 0x32, 0xbc, 0x50, 0xb9, 0x30, 0x85, 0xb4, 0xbe, 0xc7, 0x2d, 0xbd, 0x50, 0x0e, 0x3d, 0x68, 0x43, + 0x88, 0xab, 0x94, 0x8c, 0xad, 0x3f, 0x6b, 0xd0, 0x2a, 0x9f, 0x06, 0xb6, 0x07, 0xa0, 0x0a, 0x29, + 0x47, 0x2e, 0xc1, 0x98, 0x89, 0xce, 0x6e, 0x54, 0xaa, 0x96, 0x6f, 0x65, 0xef, 0xa8, 0x90, 0xf2, + 0x14, 0x11, 0xf8, 0x06, 0xa8, 0x72, 0xc2, 0x9e, 0x02, 0x9c, 0x69, 0x5d, 0x92, 0x31, 0x53, 0x2d, + 0x04, 0xa0, 0xcd, 0x01, 0x9e, 0x41, 0x3b, 0x55, 0xf6, 0xf5, 0x2b, 0x8f, 0xc0, 0x74, 0xd4, 0xb0, + 0x3f, 0x92, 0xd1, 0x41, 0x9e, 0xc3, 0x7a, 0x71, 0x1d, 0x83, 0x69, 0xa9, 0x0f, 0x2b, 0x71, 0xbb, + 0xb8, 0x09, 0x1a, 0xeb, 0xe2, 0x4c, 0x0a, 0x0f, 0xc2, 0xc8, 0x07, 0x08, 0x72, 0xd6, 0x05, 0xc8, + 0xd8, 0x3c, 0x55, 0x53, 0x0f, 0x6a, 0xfa, 0x3b, 0xd0, 0x76, 0xd6, 0x85, 0x47, 0x67, 0x73, 0x2b, + 0x8c, 0xc7, 0x60, 0x18, 0xd7, 0xd1, 0x23, 0x32, 0x3a, 0xc8, 0x77, 0xd0, 0x29, 0x7f, 0x16, 0x1e, + 0xe5, 0x1e, 0x81, 0x87, 0x77, 0xc2, 0xf2, 0xad, 0x87, 0x0d, 0xaa, 0x5d, 0xf4, 0x66, 0xa3, 0xa4, + 0x39, 0x9d, 0x43, 0x78, 0xb0, 0xf8, 0x63, 0x78, 0x21, 0xd7, 0xf6, 0xef, 0xc6, 0xf7, 0xc7, 0x12, + 0xe7, 0x95, 0x3a, 0x0b, 0x22, 0x49, 0x0d, 0x1e, 0xc0, 0x46, 0xe2, 0x33, 0xe6, 0x72, 0xf8, 0x4b, + 0x15, 0xe0, 0xea, 0xf7, 0xc0, 0xb6, 0xa1, 0xe3, 0x3e, 0x51, 0xa3, 0x0b, 0x91, 0xe3, 0xfd, 0xf2, + 0x77, 0x6a, 0xc3, 0x59, 0x4f, 0x9d, 0x11, 0xfb, 0xaa, 0xd4, 0x09, 0xbf, 0xde, 0x57, 0xcb, 0x39, + 0x36, 0x32, 0x99, 0x2a, 0x31, 0xd2, 0x93, 0x89, 0x11, 0xd6, 0xf5, 0xd7, 0x46, 0xdc, 0x46, 0xdb, + 0x07, 0x67, 0x62, 0x3f, 0x40, 0x98, 0x69, 0x43, 0x65, 0x6c, 0xba, 0x75, 0x6a, 0x65, 0x2f, 0x57, + 0xf9, 0xdc, 0xf4, 0x8e, 0x4b, 0x96, 0x6b, 0x66, 0x57, 0x2a, 0xd1, 0x3b, 0xe8, 0xdc, 0x5c, 0x64, + 0xff, 0x83, 0x1a, 0xf6, 0x28, 0xd7, 0xd7, 0x70, 0x88, 0x2f, 0xd0, 0x55, 0x81, 0x35, 0x7c, 0x7b, + 0x79, 0x5b, 0x7d, 0x13, 0x6c, 0x65, 0xd0, 0x71, 0xbb, 0x94, 0x1a, 0x37, 0x4e, 0x18, 0xdc, 0x3a, + 0xe1, 0xa7, 0xd0, 0x74, 0x87, 0xf3, 0x42, 0x7e, 0x86, 0x2f, 0x27, 0x9e, 0x92, 0xaa, 0xb3, 0x11, + 0xd3, 0x18, 0xb1, 0x89, 0x96, 0xc5, 0x4c, 0x51, 0x3d, 0x36, 0x62, 0x3f, 0x1b, 0x28, 0x78, 0x9c, + 0xe8, 0xd9, 0xbd, 0x87, 0x1e, 0xb4, 0x4f, 0x28, 0xe0, 0xc7, 0x98, 0xd8, 0xe3, 0xe0, 0xa7, 0x77, + 0x1e, 0x38, 0xd5, 0x92, 0xab, 0x69, 0x4f, 0xe7, 0xd3, 0xfe, 0x54, 0x28, 0x4a, 0x7b, 0xdf, 0x2d, + 0xf1, 0x2c, 0x35, 0x77, 0xbf, 0xc4, 0x7b, 0x38, 0xfb, 0x3b, 0x08, 0xce, 0x9a, 0x84, 0x7d, 0xf9, + 0x6f, 0x00, 0x00, 0x00, 0xff, 0xff, 0x0d, 0x25, 0xe3, 0xe8, 0x3d, 0x0b, 0x00, 0x00, +} diff --git a/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/value.pb.go b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/value.pb.go new file mode 100644 index 0000000000..cec841e86a --- /dev/null +++ b/vendor/google.golang.org/genproto/googleapis/api/expr/v1alpha1/value.pb.go @@ -0,0 +1,503 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// source: google/api/expr/v1alpha1/value.proto + +package expr + +import ( + fmt "fmt" + math "math" + + proto "github.com/golang/protobuf/proto" + any "github.com/golang/protobuf/ptypes/any" + _struct "github.com/golang/protobuf/ptypes/struct" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package + +// Represents a CEL value. +// +// This is similar to `google.protobuf.Value`, but can represent CEL's full +// range of values. +type Value struct { + // Required. The valid kinds of values. + // + // Types that are valid to be assigned to Kind: + // *Value_NullValue + // *Value_BoolValue + // *Value_Int64Value + // *Value_Uint64Value + // *Value_DoubleValue + // *Value_StringValue + // *Value_BytesValue + // *Value_EnumValue + // *Value_ObjectValue + // *Value_MapValue + // *Value_ListValue + // *Value_TypeValue + Kind isValue_Kind `protobuf_oneof:"kind"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Value) Reset() { *m = Value{} } +func (m *Value) String() string { return proto.CompactTextString(m) } +func (*Value) ProtoMessage() {} +func (*Value) Descriptor() ([]byte, []int) { + return fileDescriptor_24bee359d1e5798a, []int{0} +} + +func (m *Value) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_Value.Unmarshal(m, b) +} +func (m *Value) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_Value.Marshal(b, m, deterministic) +} +func (m *Value) XXX_Merge(src proto.Message) { + xxx_messageInfo_Value.Merge(m, src) +} +func (m *Value) XXX_Size() int { + return xxx_messageInfo_Value.Size(m) +} +func (m *Value) XXX_DiscardUnknown() { + xxx_messageInfo_Value.DiscardUnknown(m) +} + +var xxx_messageInfo_Value proto.InternalMessageInfo + +type isValue_Kind interface { + isValue_Kind() +} + +type Value_NullValue struct { + NullValue _struct.NullValue `protobuf:"varint,1,opt,name=null_value,json=nullValue,proto3,enum=google.protobuf.NullValue,oneof"` +} + +type Value_BoolValue struct { + BoolValue bool `protobuf:"varint,2,opt,name=bool_value,json=boolValue,proto3,oneof"` +} + +type Value_Int64Value struct { + Int64Value int64 `protobuf:"varint,3,opt,name=int64_value,json=int64Value,proto3,oneof"` +} + +type Value_Uint64Value struct { + Uint64Value uint64 `protobuf:"varint,4,opt,name=uint64_value,json=uint64Value,proto3,oneof"` +} + +type Value_DoubleValue struct { + DoubleValue float64 `protobuf:"fixed64,5,opt,name=double_value,json=doubleValue,proto3,oneof"` +} + +type Value_StringValue struct { + StringValue string `protobuf:"bytes,6,opt,name=string_value,json=stringValue,proto3,oneof"` +} + +type Value_BytesValue struct { + BytesValue []byte `protobuf:"bytes,7,opt,name=bytes_value,json=bytesValue,proto3,oneof"` +} + +type Value_EnumValue struct { + EnumValue *EnumValue `protobuf:"bytes,9,opt,name=enum_value,json=enumValue,proto3,oneof"` +} + +type Value_ObjectValue struct { + ObjectValue *any.Any `protobuf:"bytes,10,opt,name=object_value,json=objectValue,proto3,oneof"` +} + +type Value_MapValue struct { + MapValue *MapValue `protobuf:"bytes,11,opt,name=map_value,json=mapValue,proto3,oneof"` +} + +type Value_ListValue struct { + ListValue *ListValue `protobuf:"bytes,12,opt,name=list_value,json=listValue,proto3,oneof"` +} + +type Value_TypeValue struct { + TypeValue string `protobuf:"bytes,15,opt,name=type_value,json=typeValue,proto3,oneof"` +} + +func (*Value_NullValue) isValue_Kind() {} + +func (*Value_BoolValue) isValue_Kind() {} + +func (*Value_Int64Value) isValue_Kind() {} + +func (*Value_Uint64Value) isValue_Kind() {} + +func (*Value_DoubleValue) isValue_Kind() {} + +func (*Value_StringValue) isValue_Kind() {} + +func (*Value_BytesValue) isValue_Kind() {} + +func (*Value_EnumValue) isValue_Kind() {} + +func (*Value_ObjectValue) isValue_Kind() {} + +func (*Value_MapValue) isValue_Kind() {} + +func (*Value_ListValue) isValue_Kind() {} + +func (*Value_TypeValue) isValue_Kind() {} + +func (m *Value) GetKind() isValue_Kind { + if m != nil { + return m.Kind + } + return nil +} + +func (m *Value) GetNullValue() _struct.NullValue { + if x, ok := m.GetKind().(*Value_NullValue); ok { + return x.NullValue + } + return _struct.NullValue_NULL_VALUE +} + +func (m *Value) GetBoolValue() bool { + if x, ok := m.GetKind().(*Value_BoolValue); ok { + return x.BoolValue + } + return false +} + +func (m *Value) GetInt64Value() int64 { + if x, ok := m.GetKind().(*Value_Int64Value); ok { + return x.Int64Value + } + return 0 +} + +func (m *Value) GetUint64Value() uint64 { + if x, ok := m.GetKind().(*Value_Uint64Value); ok { + return x.Uint64Value + } + return 0 +} + +func (m *Value) GetDoubleValue() float64 { + if x, ok := m.GetKind().(*Value_DoubleValue); ok { + return x.DoubleValue + } + return 0 +} + +func (m *Value) GetStringValue() string { + if x, ok := m.GetKind().(*Value_StringValue); ok { + return x.StringValue + } + return "" +} + +func (m *Value) GetBytesValue() []byte { + if x, ok := m.GetKind().(*Value_BytesValue); ok { + return x.BytesValue + } + return nil +} + +func (m *Value) GetEnumValue() *EnumValue { + if x, ok := m.GetKind().(*Value_EnumValue); ok { + return x.EnumValue + } + return nil +} + +func (m *Value) GetObjectValue() *any.Any { + if x, ok := m.GetKind().(*Value_ObjectValue); ok { + return x.ObjectValue + } + return nil +} + +func (m *Value) GetMapValue() *MapValue { + if x, ok := m.GetKind().(*Value_MapValue); ok { + return x.MapValue + } + return nil +} + +func (m *Value) GetListValue() *ListValue { + if x, ok := m.GetKind().(*Value_ListValue); ok { + return x.ListValue + } + return nil +} + +func (m *Value) GetTypeValue() string { + if x, ok := m.GetKind().(*Value_TypeValue); ok { + return x.TypeValue + } + return "" +} + +// XXX_OneofWrappers is for the internal use of the proto package. +func (*Value) XXX_OneofWrappers() []interface{} { + return []interface{}{ + (*Value_NullValue)(nil), + (*Value_BoolValue)(nil), + (*Value_Int64Value)(nil), + (*Value_Uint64Value)(nil), + (*Value_DoubleValue)(nil), + (*Value_StringValue)(nil), + (*Value_BytesValue)(nil), + (*Value_EnumValue)(nil), + (*Value_ObjectValue)(nil), + (*Value_MapValue)(nil), + (*Value_ListValue)(nil), + (*Value_TypeValue)(nil), + } +} + +// An enum value. +type EnumValue struct { + // The fully qualified name of the enum type. + Type string `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"` + // The value of the enum. + Value int32 `protobuf:"varint,2,opt,name=value,proto3" json:"value,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *EnumValue) Reset() { *m = EnumValue{} } +func (m *EnumValue) String() string { return proto.CompactTextString(m) } +func (*EnumValue) ProtoMessage() {} +func (*EnumValue) Descriptor() ([]byte, []int) { + return fileDescriptor_24bee359d1e5798a, []int{1} +} + +func (m *EnumValue) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_EnumValue.Unmarshal(m, b) +} +func (m *EnumValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_EnumValue.Marshal(b, m, deterministic) +} +func (m *EnumValue) XXX_Merge(src proto.Message) { + xxx_messageInfo_EnumValue.Merge(m, src) +} +func (m *EnumValue) XXX_Size() int { + return xxx_messageInfo_EnumValue.Size(m) +} +func (m *EnumValue) XXX_DiscardUnknown() { + xxx_messageInfo_EnumValue.DiscardUnknown(m) +} + +var xxx_messageInfo_EnumValue proto.InternalMessageInfo + +func (m *EnumValue) GetType() string { + if m != nil { + return m.Type + } + return "" +} + +func (m *EnumValue) GetValue() int32 { + if m != nil { + return m.Value + } + return 0 +} + +// A list. +// +// Wrapped in a message so 'not set' and empty can be differentiated, which is +// required for use in a 'oneof'. +type ListValue struct { + // The ordered values in the list. + Values []*Value `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *ListValue) Reset() { *m = ListValue{} } +func (m *ListValue) String() string { return proto.CompactTextString(m) } +func (*ListValue) ProtoMessage() {} +func (*ListValue) Descriptor() ([]byte, []int) { + return fileDescriptor_24bee359d1e5798a, []int{2} +} + +func (m *ListValue) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_ListValue.Unmarshal(m, b) +} +func (m *ListValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_ListValue.Marshal(b, m, deterministic) +} +func (m *ListValue) XXX_Merge(src proto.Message) { + xxx_messageInfo_ListValue.Merge(m, src) +} +func (m *ListValue) XXX_Size() int { + return xxx_messageInfo_ListValue.Size(m) +} +func (m *ListValue) XXX_DiscardUnknown() { + xxx_messageInfo_ListValue.DiscardUnknown(m) +} + +var xxx_messageInfo_ListValue proto.InternalMessageInfo + +func (m *ListValue) GetValues() []*Value { + if m != nil { + return m.Values + } + return nil +} + +// A map. +// +// Wrapped in a message so 'not set' and empty can be differentiated, which is +// required for use in a 'oneof'. +type MapValue struct { + // The set of map entries. + // + // CEL has fewer restrictions on keys, so a protobuf map represenation + // cannot be used. + Entries []*MapValue_Entry `protobuf:"bytes,1,rep,name=entries,proto3" json:"entries,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MapValue) Reset() { *m = MapValue{} } +func (m *MapValue) String() string { return proto.CompactTextString(m) } +func (*MapValue) ProtoMessage() {} +func (*MapValue) Descriptor() ([]byte, []int) { + return fileDescriptor_24bee359d1e5798a, []int{3} +} + +func (m *MapValue) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MapValue.Unmarshal(m, b) +} +func (m *MapValue) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MapValue.Marshal(b, m, deterministic) +} +func (m *MapValue) XXX_Merge(src proto.Message) { + xxx_messageInfo_MapValue.Merge(m, src) +} +func (m *MapValue) XXX_Size() int { + return xxx_messageInfo_MapValue.Size(m) +} +func (m *MapValue) XXX_DiscardUnknown() { + xxx_messageInfo_MapValue.DiscardUnknown(m) +} + +var xxx_messageInfo_MapValue proto.InternalMessageInfo + +func (m *MapValue) GetEntries() []*MapValue_Entry { + if m != nil { + return m.Entries + } + return nil +} + +// An entry in the map. +type MapValue_Entry struct { + // The key. + // + // Must be unique with in the map. + // Currently only boolean, int, uint, and string values can be keys. + Key *Value `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` + // The value. + Value *Value `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *MapValue_Entry) Reset() { *m = MapValue_Entry{} } +func (m *MapValue_Entry) String() string { return proto.CompactTextString(m) } +func (*MapValue_Entry) ProtoMessage() {} +func (*MapValue_Entry) Descriptor() ([]byte, []int) { + return fileDescriptor_24bee359d1e5798a, []int{3, 0} +} + +func (m *MapValue_Entry) XXX_Unmarshal(b []byte) error { + return xxx_messageInfo_MapValue_Entry.Unmarshal(m, b) +} +func (m *MapValue_Entry) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + return xxx_messageInfo_MapValue_Entry.Marshal(b, m, deterministic) +} +func (m *MapValue_Entry) XXX_Merge(src proto.Message) { + xxx_messageInfo_MapValue_Entry.Merge(m, src) +} +func (m *MapValue_Entry) XXX_Size() int { + return xxx_messageInfo_MapValue_Entry.Size(m) +} +func (m *MapValue_Entry) XXX_DiscardUnknown() { + xxx_messageInfo_MapValue_Entry.DiscardUnknown(m) +} + +var xxx_messageInfo_MapValue_Entry proto.InternalMessageInfo + +func (m *MapValue_Entry) GetKey() *Value { + if m != nil { + return m.Key + } + return nil +} + +func (m *MapValue_Entry) GetValue() *Value { + if m != nil { + return m.Value + } + return nil +} + +func init() { + proto.RegisterType((*Value)(nil), "google.api.expr.v1alpha1.Value") + proto.RegisterType((*EnumValue)(nil), "google.api.expr.v1alpha1.EnumValue") + proto.RegisterType((*ListValue)(nil), "google.api.expr.v1alpha1.ListValue") + proto.RegisterType((*MapValue)(nil), "google.api.expr.v1alpha1.MapValue") + proto.RegisterType((*MapValue_Entry)(nil), "google.api.expr.v1alpha1.MapValue.Entry") +} + +func init() { + proto.RegisterFile("google/api/expr/v1alpha1/value.proto", fileDescriptor_24bee359d1e5798a) +} + +var fileDescriptor_24bee359d1e5798a = []byte{ + // 518 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x8c, 0x94, 0xcb, 0x6e, 0xd4, 0x30, + 0x14, 0x86, 0x6b, 0xe6, 0xd2, 0xc9, 0x99, 0x11, 0x48, 0x56, 0x17, 0xc3, 0xa8, 0x52, 0x43, 0xca, + 0x22, 0xab, 0x44, 0x33, 0x50, 0x10, 0x2a, 0x9b, 0x8e, 0x5a, 0x69, 0x16, 0x80, 0xaa, 0x2c, 0x58, + 0xb0, 0x41, 0xce, 0xd4, 0x84, 0x50, 0xc7, 0x0e, 0x89, 0x5d, 0x91, 0xc7, 0xe3, 0x01, 0x78, 0x1f, + 0x96, 0xc8, 0xb7, 0x50, 0xa8, 0x46, 0xed, 0x2e, 0xe7, 0xf7, 0xf7, 0xfb, 0x5c, 0x7c, 0x14, 0x78, + 0x5e, 0x08, 0x51, 0x30, 0x9a, 0x92, 0xba, 0x4c, 0xe9, 0x8f, 0xba, 0x49, 0x6f, 0x96, 0x84, 0xd5, + 0x5f, 0xc9, 0x32, 0xbd, 0x21, 0x4c, 0xd1, 0xa4, 0x6e, 0x84, 0x14, 0x78, 0x6e, 0xa9, 0x84, 0xd4, + 0x65, 0xa2, 0xa9, 0xc4, 0x53, 0x8b, 0xa7, 0xce, 0x6f, 0xb8, 0x5c, 0x7d, 0x49, 0x09, 0xef, 0xac, + 0x69, 0x71, 0xf8, 0xff, 0x51, 0x2b, 0x1b, 0xb5, 0x95, 0xf6, 0x34, 0xfa, 0x35, 0x84, 0xd1, 0x47, + 0x9d, 0x02, 0x9f, 0x02, 0x70, 0xc5, 0xd8, 0x67, 0x93, 0x70, 0x8e, 0x42, 0x14, 0x3f, 0x5e, 0x2d, + 0x12, 0x97, 0xd1, 0x9b, 0x93, 0x0f, 0x8a, 0x31, 0xc3, 0x6f, 0xf6, 0xb2, 0x80, 0xfb, 0x00, 0x1f, + 0x01, 0xe4, 0x42, 0x78, 0xf3, 0xa3, 0x10, 0xc5, 0x13, 0x0d, 0x68, 0xcd, 0x02, 0xcf, 0x60, 0x5a, + 0x72, 0xf9, 0xea, 0xa5, 0x23, 0x06, 0x21, 0x8a, 0x07, 0x9b, 0xbd, 0x0c, 0x8c, 0x68, 0x91, 0x63, + 0x98, 0xa9, 0xdb, 0xcc, 0x30, 0x44, 0xf1, 0x70, 0xb3, 0x97, 0x4d, 0xd5, 0xbf, 0xd0, 0x95, 0x50, + 0x39, 0xa3, 0x0e, 0x1a, 0x85, 0x28, 0x46, 0x1a, 0xb2, 0x6a, 0x0f, 0xb5, 0xb2, 0x29, 0x79, 0xe1, + 0xa0, 0x71, 0x88, 0xe2, 0x40, 0x43, 0x56, 0xed, 0x2b, 0xca, 0x3b, 0x49, 0x5b, 0xc7, 0xec, 0x87, + 0x28, 0x9e, 0xe9, 0x8a, 0x8c, 0x68, 0x91, 0x73, 0x00, 0xca, 0x55, 0xe5, 0x88, 0x20, 0x44, 0xf1, + 0x74, 0x75, 0x9c, 0xec, 0x7a, 0x84, 0xe4, 0x82, 0xab, 0xaa, 0x9f, 0x0d, 0xf5, 0x01, 0x7e, 0x03, + 0x33, 0x91, 0x7f, 0xa3, 0x5b, 0xe9, 0xee, 0x01, 0x73, 0xcf, 0xc1, 0x9d, 0xd1, 0x9e, 0xf1, 0x4e, + 0xd7, 0x68, 0x59, 0x6b, 0x3d, 0x83, 0xa0, 0x22, 0xb5, 0xf3, 0x4d, 0x8d, 0x2f, 0xda, 0x9d, 0xff, + 0x3d, 0xa9, 0x7d, 0xfa, 0x49, 0xe5, 0xbe, 0x75, 0x0f, 0xac, 0x6c, 0x7d, 0xee, 0xd9, 0x7d, 0x3d, + 0xbc, 0x2b, 0x5b, 0xd9, 0xf7, 0xc0, 0x7c, 0xa0, 0xdf, 0x57, 0x76, 0xb5, 0x1f, 0xfa, 0x13, 0x37, + 0xcf, 0x40, 0x6b, 0x06, 0x58, 0x8f, 0x61, 0x78, 0x5d, 0xf2, 0xab, 0xe8, 0x04, 0x82, 0x7e, 0x0c, + 0x18, 0xc3, 0x50, 0x13, 0x66, 0x99, 0x82, 0xcc, 0x7c, 0xe3, 0x03, 0x18, 0xfd, 0x5d, 0x92, 0x51, + 0x66, 0x83, 0xe8, 0x1c, 0x82, 0x3e, 0x33, 0x7e, 0x0d, 0x63, 0xa3, 0xb6, 0x73, 0x14, 0x0e, 0xe2, + 0xe9, 0xea, 0x68, 0x77, 0xb9, 0xc6, 0x90, 0x39, 0x3c, 0xfa, 0x89, 0x60, 0xe2, 0x87, 0x80, 0xd7, + 0xb0, 0x4f, 0xb9, 0x6c, 0xca, 0xfe, 0x9a, 0xf8, 0xfe, 0xc9, 0x25, 0x17, 0x5c, 0x36, 0x5d, 0xe6, + 0x8d, 0x8b, 0xef, 0x30, 0x32, 0x0a, 0x5e, 0xc2, 0xe0, 0x9a, 0x76, 0xa6, 0x91, 0x07, 0xd4, 0xa3, + 0x59, 0x7c, 0x72, 0xbb, 0xd1, 0x07, 0x98, 0x2c, 0xbd, 0xae, 0xe0, 0x70, 0x2b, 0xaa, 0x9d, 0xf0, + 0x1a, 0x0c, 0x7d, 0xa9, 0x97, 0xe6, 0x12, 0x7d, 0x7a, 0xeb, 0xb8, 0x42, 0x30, 0xc2, 0x8b, 0x44, + 0x34, 0x45, 0x5a, 0x50, 0x6e, 0x56, 0x2a, 0xb5, 0x47, 0xa4, 0x2e, 0xdb, 0xbb, 0xbf, 0x95, 0x53, + 0x1d, 0xfd, 0x46, 0x28, 0x1f, 0x1b, 0xf6, 0xc5, 0x9f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf9, 0x53, + 0x8e, 0x99, 0x81, 0x04, 0x00, 0x00, +} diff --git a/vendor/modules.txt b/vendor/modules.txt index d32f9b51d4..e2f7b4ae45 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -126,13 +126,14 @@ github.com/envoyproxy/go-control-plane/envoy/api/v2/endpoint github.com/envoyproxy/go-control-plane/envoy/api/v2/listener github.com/envoyproxy/go-control-plane/envoy/api/v2/route github.com/envoyproxy/go-control-plane/envoy/config/filter/accesslog/v2 -github.com/envoyproxy/go-control-plane/envoy/config/filter/network/ext_authz/v2 +github.com/envoyproxy/go-control-plane/envoy/config/filter/http/rbac/v2 github.com/envoyproxy/go-control-plane/envoy/config/filter/network/http_connection_manager/v2 +github.com/envoyproxy/go-control-plane/envoy/config/filter/network/rbac/v2 github.com/envoyproxy/go-control-plane/envoy/config/filter/network/tcp_proxy/v2 github.com/envoyproxy/go-control-plane/envoy/config/listener/v2 +github.com/envoyproxy/go-control-plane/envoy/config/rbac/v2 github.com/envoyproxy/go-control-plane/envoy/config/trace/v2 github.com/envoyproxy/go-control-plane/envoy/service/auth/v2 -github.com/envoyproxy/go-control-plane/envoy/service/auth/v2alpha github.com/envoyproxy/go-control-plane/envoy/service/discovery/v2 github.com/envoyproxy/go-control-plane/envoy/type github.com/envoyproxy/go-control-plane/envoy/type/matcher @@ -537,6 +538,7 @@ google.golang.org/appengine/internal/urlfetch google.golang.org/appengine/urlfetch # google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55 google.golang.org/genproto/googleapis/api/annotations +google.golang.org/genproto/googleapis/api/expr/v1alpha1 google.golang.org/genproto/googleapis/rpc/status # google.golang.org/grpc v1.25.1 google.golang.org/grpc From 9e1c6727f9cbb56d64d895d26e1d9f316d3c328c Mon Sep 17 00:00:00 2001 From: Jack <30052269+jackloughran@users.noreply.github.com> Date: Thu, 27 Aug 2020 15:34:08 -0600 Subject: [PATCH 017/122] Add http2 and grpc support to ingress gateways (#8458) --- .changelog/8458.txt | 3 ++ agent/structs/config_entry_gateways.go | 10 +++--- agent/structs/config_entry_gateways_test.go | 2 +- api/config_entry_gateways.go | 2 +- .../case-ingress-gateway-grpc/capture.sh | 3 ++ .../config_entries.hcl | 26 +++++++++++++++ .../case-ingress-gateway-grpc/gateway.hcl | 4 +++ .../envoy/case-ingress-gateway-grpc/s1.hcl | 13 ++++++++ .../envoy/case-ingress-gateway-grpc/setup.sh | 10 ++++++ .../envoy/case-ingress-gateway-grpc/vars.sh | 3 ++ .../case-ingress-gateway-grpc/verify.bats | 32 +++++++++++++++++++ test/integration/connect/envoy/main_test.go | 1 + .../agent/config-entries/ingress-gateway.mdx | 2 +- 13 files changed, 104 insertions(+), 7 deletions(-) create mode 100644 .changelog/8458.txt create mode 100644 test/integration/connect/envoy/case-ingress-gateway-grpc/capture.sh create mode 100644 test/integration/connect/envoy/case-ingress-gateway-grpc/config_entries.hcl create mode 100644 test/integration/connect/envoy/case-ingress-gateway-grpc/gateway.hcl create mode 100644 test/integration/connect/envoy/case-ingress-gateway-grpc/s1.hcl create mode 100644 test/integration/connect/envoy/case-ingress-gateway-grpc/setup.sh create mode 100644 test/integration/connect/envoy/case-ingress-gateway-grpc/vars.sh create mode 100644 test/integration/connect/envoy/case-ingress-gateway-grpc/verify.bats diff --git a/.changelog/8458.txt b/.changelog/8458.txt new file mode 100644 index 0000000000..e9fc0e4e9e --- /dev/null +++ b/.changelog/8458.txt @@ -0,0 +1,3 @@ +```release-note:improvement +connect: Add support for http2 and grpc to ingress gateways +``` diff --git a/agent/structs/config_entry_gateways.go b/agent/structs/config_entry_gateways.go index 27a025d527..a5557dbafa 100644 --- a/agent/structs/config_entry_gateways.go +++ b/agent/structs/config_entry_gateways.go @@ -38,7 +38,7 @@ type IngressListener struct { // Protocol declares what type of traffic this listener is expected to // receive. Depending on the protocol, a listener might support multiplexing // services over a single port, or additional discovery chain features. The - // current supported values are: (tcp | http). + // current supported values are: (tcp | http | http2 | grpc). Protocol string // Services declares the set of services to which the listener forwards @@ -122,8 +122,10 @@ func (e *IngressGatewayConfigEntry) Normalize() error { func (e *IngressGatewayConfigEntry) Validate() error { validProtocols := map[string]bool{ - "http": true, - "tcp": true, + "tcp": true, + "http": true, + "http2": true, + "grpc": true, } declaredPorts := make(map[int]bool) @@ -134,7 +136,7 @@ func (e *IngressGatewayConfigEntry) Validate() error { declaredPorts[listener.Port] = true if _, ok := validProtocols[listener.Protocol]; !ok { - return fmt.Errorf("Protocol must be either 'http' or 'tcp', '%s' is an unsupported protocol.", listener.Protocol) + return fmt.Errorf("protocol must be 'tcp', 'http', 'http2', or 'grpc'. '%s' is an unsupported protocol", listener.Protocol) } if len(listener.Services) == 0 { diff --git a/agent/structs/config_entry_gateways_test.go b/agent/structs/config_entry_gateways_test.go index cf341f4b3c..3a71dba6d2 100644 --- a/agent/structs/config_entry_gateways_test.go +++ b/agent/structs/config_entry_gateways_test.go @@ -326,7 +326,7 @@ func TestIngressConfigEntry_Validate(t *testing.T) { }, }, }, - expectErr: "Protocol must be either 'http' or 'tcp', 'asdf' is an unsupported protocol.", + expectErr: "protocol must be 'tcp', 'http', 'http2', or 'grpc'. 'asdf' is an unsupported protocol", }, { name: "hosts cannot be set on a tcp listener", diff --git a/api/config_entry_gateways.go b/api/config_entry_gateways.go index 13a5ec7072..9d3ee0a6a9 100644 --- a/api/config_entry_gateways.go +++ b/api/config_entry_gateways.go @@ -44,7 +44,7 @@ type IngressListener struct { // Protocol declares what type of traffic this listener is expected to // receive. Depending on the protocol, a listener might support multiplexing // services over a single port, or additional discovery chain features. The - // current supported values are: (tcp | http). + // current supported values are: (tcp | http | http2 | grpc). Protocol string // Services declares the set of services to which the listener forwards diff --git a/test/integration/connect/envoy/case-ingress-gateway-grpc/capture.sh b/test/integration/connect/envoy/case-ingress-gateway-grpc/capture.sh new file mode 100644 index 0000000000..564b963a16 --- /dev/null +++ b/test/integration/connect/envoy/case-ingress-gateway-grpc/capture.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +snapshot_envoy_admin localhost:20000 ingress-gateway primary || true diff --git a/test/integration/connect/envoy/case-ingress-gateway-grpc/config_entries.hcl b/test/integration/connect/envoy/case-ingress-gateway-grpc/config_entries.hcl new file mode 100644 index 0000000000..fc4cfc697d --- /dev/null +++ b/test/integration/connect/envoy/case-ingress-gateway-grpc/config_entries.hcl @@ -0,0 +1,26 @@ +enable_central_service_config = true + +config_entries { + bootstrap { + kind = "service-defaults" + name = "s1" + protocol = "grpc" + } + bootstrap { + kind = "ingress-gateway" + name = "ingress-gateway" + + listeners = [ + { + port = 9999 + protocol = "grpc" + services = [ + { + name = "s1" + hosts = ["localhost:9999"] + } + ] + } + ] + } +} diff --git a/test/integration/connect/envoy/case-ingress-gateway-grpc/gateway.hcl b/test/integration/connect/envoy/case-ingress-gateway-grpc/gateway.hcl new file mode 100644 index 0000000000..781ef1851b --- /dev/null +++ b/test/integration/connect/envoy/case-ingress-gateway-grpc/gateway.hcl @@ -0,0 +1,4 @@ +services { + name = "ingress-gateway" + kind = "ingress-gateway" +} diff --git a/test/integration/connect/envoy/case-ingress-gateway-grpc/s1.hcl b/test/integration/connect/envoy/case-ingress-gateway-grpc/s1.hcl new file mode 100644 index 0000000000..3a3a9f815b --- /dev/null +++ b/test/integration/connect/envoy/case-ingress-gateway-grpc/s1.hcl @@ -0,0 +1,13 @@ +services { + name = "s1" + port = 8079 + connect { + sidecar_service { + proxy { + config { + protocol = "grpc" + } + } + } + } +} diff --git a/test/integration/connect/envoy/case-ingress-gateway-grpc/setup.sh b/test/integration/connect/envoy/case-ingress-gateway-grpc/setup.sh new file mode 100644 index 0000000000..7aa6018976 --- /dev/null +++ b/test/integration/connect/envoy/case-ingress-gateway-grpc/setup.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +set -euo pipefail + +# wait for bootstrap to apply config entries +wait_for_config_entry ingress-gateway ingress-gateway + +gen_envoy_bootstrap ingress-gateway 20000 primary true +gen_envoy_bootstrap s1 19000 +gen_envoy_bootstrap s2 19001 diff --git a/test/integration/connect/envoy/case-ingress-gateway-grpc/vars.sh b/test/integration/connect/envoy/case-ingress-gateway-grpc/vars.sh new file mode 100644 index 0000000000..c97ad2ea54 --- /dev/null +++ b/test/integration/connect/envoy/case-ingress-gateway-grpc/vars.sh @@ -0,0 +1,3 @@ +#!/bin/bash + +export REQUIRED_SERVICES="$DEFAULT_REQUIRED_SERVICES ingress-gateway-primary" diff --git a/test/integration/connect/envoy/case-ingress-gateway-grpc/verify.bats b/test/integration/connect/envoy/case-ingress-gateway-grpc/verify.bats new file mode 100644 index 0000000000..56223fa2aa --- /dev/null +++ b/test/integration/connect/envoy/case-ingress-gateway-grpc/verify.bats @@ -0,0 +1,32 @@ +#!/usr/bin/env bats + +load helpers + +@test "ingress proxy admin is up on :20000" { + retry_default curl -f -s localhost:20000/stats -o /dev/null +} + +@test "s1 proxy admin is up on :19000" { + retry_default curl -f -s localhost:19000/stats -o /dev/null +} + +@test "s2 proxy admin is up on :19001" { + retry_default curl -f -s localhost:19001/stats -o /dev/null +} + +@test "s1 proxy listener should be up and have right cert" { + assert_proxy_presents_cert_uri localhost:21000 s1 +} + +@test "ingress-gateway should have healthy endpoints for s1" { + assert_upstream_has_endpoints_in_status 127.0.0.1:20000 s1 HEALTHY 1 +} + +@test "ingress should be able to connect to s1 via grpc" { + # This test also covers http2 since gRPC always uses http2 + run fortio grpcping localhost:9999 + + echo "OUTPUT: $output" + + [ "$status" == 0 ] +} diff --git a/test/integration/connect/envoy/main_test.go b/test/integration/connect/envoy/main_test.go index bb483db541..d7cdf2fb24 100644 --- a/test/integration/connect/envoy/main_test.go +++ b/test/integration/connect/envoy/main_test.go @@ -33,6 +33,7 @@ func TestEnvoy(t *testing.T) { "case-http", "case-http-badauthz", "case-ingress-gateway-http", + "case-ingress-gateway-grpc", "case-ingress-gateway-multiple-services", "case-ingress-gateway-simple", "case-ingress-gateway-tls", diff --git a/website/pages/docs/agent/config-entries/ingress-gateway.mdx b/website/pages/docs/agent/config-entries/ingress-gateway.mdx index eca70a0177..01d1fbc39b 100644 --- a/website/pages/docs/agent/config-entries/ingress-gateway.mdx +++ b/website/pages/docs/agent/config-entries/ingress-gateway.mdx @@ -343,7 +343,7 @@ Also make two services in the frontend namespace available over a custom port wi - `Port` `(int: 0)` - The port that the listener should receive traffic on. - `Protocol` `(string: "tcp")` - The protocol associated with the listener. - Either `tcp` or `http`. + One of `tcp`, `http`, `http2`, or `grpc`. - `Services` `(array: )` - A list of services to be exposed via this listener. For "tcp" listeners, only a single service is From edddc95e0f43378cafae76e6be060a1961c30d01 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 12 May 2020 14:27:50 -0400 Subject: [PATCH 018/122] logging: Remove t.Parallel from tests The tests all run fast enough that we do not get any advantage from using Parallel. The one test that was slow used a long sleep. Changing the sleep to a few milliseconds speeds up the test considerably. --- logging/logfile_test.go | 10 ++-------- logging/logger_test.go | 9 --------- logging/monitor/monitor_test.go | 5 ----- 3 files changed, 2 insertions(+), 22 deletions(-) diff --git a/logging/logfile_test.go b/logging/logfile_test.go index c1343d0556..115f1bcff4 100644 --- a/logging/logfile_test.go +++ b/logging/logfile_test.go @@ -11,12 +11,11 @@ import ( const ( testFileName = "Consul.log" - testDuration = 2 * time.Second + testDuration = 50 * time.Millisecond testBytes = 10 ) func TestLogFile_timeRotation(t *testing.T) { - t.Parallel() tempDir := testutil.TempDir(t, "LogWriterTime") logFile := LogFile{ fileName: testFileName, @@ -24,7 +23,7 @@ func TestLogFile_timeRotation(t *testing.T) { duration: testDuration, } logFile.Write([]byte("Hello World")) - time.Sleep(2 * time.Second) + time.Sleep(3 * testDuration) logFile.Write([]byte("Second File")) want := 2 if got, _ := ioutil.ReadDir(tempDir); len(got) != want { @@ -33,7 +32,6 @@ func TestLogFile_timeRotation(t *testing.T) { } func TestLogFile_openNew(t *testing.T) { - t.Parallel() tempDir := testutil.TempDir(t, "LogWriterOpen") logFile := LogFile{fileName: testFileName, logPath: tempDir, duration: testDuration} if err := logFile.openNew(); err != nil { @@ -46,7 +44,6 @@ func TestLogFile_openNew(t *testing.T) { } func TestLogFile_byteRotation(t *testing.T) { - t.Parallel() tempDir := testutil.TempDir(t, "LogWriterBytes") logFile := LogFile{ fileName: testFileName, @@ -64,7 +61,6 @@ func TestLogFile_byteRotation(t *testing.T) { } func TestLogFile_deleteArchives(t *testing.T) { - t.Parallel() tempDir := testutil.TempDir(t, "LogWriteDeleteArchives") logFile := LogFile{ fileName: testFileName, @@ -100,7 +96,6 @@ func TestLogFile_deleteArchives(t *testing.T) { } func TestLogFile_deleteArchivesDisabled(t *testing.T) { - t.Parallel() tempDir := testutil.TempDir(t, t.Name()) logFile := LogFile{ fileName: testFileName, @@ -121,7 +116,6 @@ func TestLogFile_deleteArchivesDisabled(t *testing.T) { } func TestLogFile_rotationDisabled(t *testing.T) { - t.Parallel() tempDir := testutil.TempDir(t, t.Name()) logFile := LogFile{ fileName: testFileName, diff --git a/logging/logger_test.go b/logging/logger_test.go index c6bea09191..babff2a1af 100644 --- a/logging/logger_test.go +++ b/logging/logger_test.go @@ -12,7 +12,6 @@ import ( ) func TestLogger_SetupBasic(t *testing.T) { - t.Parallel() require := require.New(t) cfg := Config{LogLevel: "INFO"} @@ -22,7 +21,6 @@ func TestLogger_SetupBasic(t *testing.T) { } func TestLogger_SetupInvalidLogLevel(t *testing.T) { - t.Parallel() cfg := Config{} _, err := Setup(cfg, nil) @@ -30,7 +28,6 @@ func TestLogger_SetupInvalidLogLevel(t *testing.T) { } func TestLogger_SetupLoggerErrorLevel(t *testing.T) { - t.Parallel() cases := []struct { desc string @@ -74,7 +71,6 @@ func TestLogger_SetupLoggerErrorLevel(t *testing.T) { } func TestLogger_SetupLoggerDebugLevel(t *testing.T) { - t.Parallel() require := require.New(t) cfg := Config{LogLevel: "DEBUG"} var buf bytes.Buffer @@ -93,7 +89,6 @@ func TestLogger_SetupLoggerDebugLevel(t *testing.T) { } func TestLogger_SetupLoggerWithName(t *testing.T) { - t.Parallel() require := require.New(t) cfg := Config{ LogLevel: "DEBUG", @@ -111,7 +106,6 @@ func TestLogger_SetupLoggerWithName(t *testing.T) { } func TestLogger_SetupLoggerWithJSON(t *testing.T) { - t.Parallel() require := require.New(t) cfg := Config{ LogLevel: "DEBUG", @@ -136,7 +130,6 @@ func TestLogger_SetupLoggerWithJSON(t *testing.T) { } func TestLogger_SetupLoggerWithValidLogPath(t *testing.T) { - t.Parallel() require := require.New(t) tmpDir := testutil.TempDir(t, t.Name()) @@ -153,7 +146,6 @@ func TestLogger_SetupLoggerWithValidLogPath(t *testing.T) { } func TestLogger_SetupLoggerWithInValidLogPath(t *testing.T) { - t.Parallel() require := require.New(t) cfg := Config{ @@ -169,7 +161,6 @@ func TestLogger_SetupLoggerWithInValidLogPath(t *testing.T) { } func TestLogger_SetupLoggerWithInValidLogPathPermission(t *testing.T) { - t.Parallel() require := require.New(t) tmpDir := "/tmp/" + t.Name() diff --git a/logging/monitor/monitor_test.go b/logging/monitor/monitor_test.go index d5101bed80..df289aa5eb 100644 --- a/logging/monitor/monitor_test.go +++ b/logging/monitor/monitor_test.go @@ -10,7 +10,6 @@ import ( ) func TestMonitor_Start(t *testing.T) { - t.Parallel() require := require.New(t) logger := log.NewInterceptLogger(&log.LoggerOptions{ @@ -41,7 +40,6 @@ func TestMonitor_Start(t *testing.T) { } func TestMonitor_Stop(t *testing.T) { - t.Parallel() require := require.New(t) logger := log.NewInterceptLogger(&log.LoggerOptions{ @@ -82,7 +80,6 @@ func TestMonitor_Stop(t *testing.T) { } func TestMonitor_DroppedMessages(t *testing.T) { - t.Parallel() require := require.New(t) logger := log.NewInterceptLogger(&log.LoggerOptions{ @@ -125,7 +122,6 @@ func TestMonitor_DroppedMessages(t *testing.T) { } func TestMonitor_ZeroBufSizeDefault(t *testing.T) { - t.Parallel() require := require.New(t) logger := log.NewInterceptLogger(&log.LoggerOptions{ @@ -162,7 +158,6 @@ func TestMonitor_ZeroBufSizeDefault(t *testing.T) { } func TestMonitor_WriteStopped(t *testing.T) { - t.Parallel() require := require.New(t) logger := log.NewInterceptLogger(&log.LoggerOptions{ From ff56a64b0823e9593f84e84d656a87868c68206c Mon Sep 17 00:00:00 2001 From: freddygv Date: Sat, 22 Aug 2020 18:05:09 -0600 Subject: [PATCH 019/122] Add LB policy to service-resolver --- agent/structs/config_entry_discoverychain.go | 124 ++++++++ .../config_entry_discoverychain_test.go | 272 ++++++++++++++++++ api/config_entry_discoverychain.go | 65 +++++ api/config_entry_discoverychain_test.go | 102 +++++++ 4 files changed, 563 insertions(+) diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index 04cf32353a..c87b46f00f 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -639,6 +639,10 @@ type ServiceResolverConfigEntry struct { // to this service. ConnectTimeout time.Duration `json:",omitempty" alias:"connect_timeout"` + // LoadBalancer determines the load balancing policy and configuration for services + // issuing requests to this upstream service. + LoadBalancer LoadBalancer `json:",omitempty" alias:"load_balancer"` + EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -807,6 +811,56 @@ func (e *ServiceResolverConfigEntry) Validate() error { return fmt.Errorf("Bad ConnectTimeout '%s', must be >= 0", e.ConnectTimeout) } + validPolicies := map[string]bool{ + "": true, + "random": true, + "round_robin": true, + "least_request": true, + "ring_hash": true, + "maglev": true, + } + if ok := validPolicies[e.LoadBalancer.Policy]; !ok { + return fmt.Errorf("Bad LoadBalancer policy: %q is not supported", e.LoadBalancer.Policy) + } + + if e.LoadBalancer.Policy != "ring_hash" && e.LoadBalancer.RingHashConfig != (RingHashConfig{}) { + return fmt.Errorf("Bad LoadBalancer configuration. "+ + "RingHashConfig specified for incompatible load balancing policy %q", e.LoadBalancer.Policy) + } + if e.LoadBalancer.Policy != "least_request" && e.LoadBalancer.LeastRequestConfig != (LeastRequestConfig{}) { + return fmt.Errorf("Bad LoadBalancer configuration. "+ + "LeastRequestConfig specified for incompatible load balancing policy %q", e.LoadBalancer.Policy) + } + if !e.LoadBalancer.IsHashBased() && len(e.LoadBalancer.HashPolicies) > 0 { + return fmt.Errorf("Bad LoadBalancer configuration: "+ + "HashPolicies specified for non-hash-based Policy: %q", e.LoadBalancer.Policy) + } + + validFields := map[string]bool{ + "header": true, + "cookie": true, + "query_parameter": true, + } + for i, hp := range e.LoadBalancer.HashPolicies { + if ok := validFields[hp.Field]; hp.Field != "" && !ok { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: %q is not a supported field", i, hp.Field) + } + if hp.SourceAddress && hp.Field != "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: "+ + "A single hash policy cannot hash both a source address and a %q", i, hp.Field) + } + if hp.SourceAddress && hp.FieldMatchValue != "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: "+ + "A FieldMatchValue cannot be specified when hashing SourceAddress", i) + } + if hp.Field != "" && hp.FieldMatchValue == "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: Field %q was specified without a FieldMatchValue", i, hp.Field) + } + if hp.FieldMatchValue != "" && hp.Field == "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: FieldMatchValue requires a Field to apply to", i) + } + } + return nil } @@ -943,6 +997,76 @@ type ServiceResolverFailover struct { Datacenters []string `json:",omitempty"` } +// LoadBalancer determines the load balancing policy and configuration for services +// issuing requests to this upstream service. +type LoadBalancer struct { + // Policy is the load balancing policy used to select a host + Policy string `json:",omitempty"` + + // RingHashConfig contains configuration for the "ring_hash" policy type + RingHashConfig RingHashConfig `json:",omitempty" alias:"ring_hash_config"` + + // LeastRequestConfig contains configuration for the "least_request" policy type + LeastRequestConfig LeastRequestConfig `json:",omitempty" alias:"least_request_config"` + + // HashPolicies is a list of hash policies to use for hashing load balancing algorithms. + // Hash policies are evaluated individually and combined such that identical lists + // result in the same hash. + // If no hash policies are present, or none are successfully evaluated, + // then a random backend host will be selected. + HashPolicies []HashPolicy `json:",omitempty" alias:"hash_policies"` +} + +func (l LoadBalancer) IsHashBased() bool { + switch l.Policy { + case "maglev", "ring_hash": + return true + default: + return false + } +} + +// RingHashConfig contains configuration for the "ring_hash" policy type +type RingHashConfig struct { + // MinimumRingSize determines the minimum number of hashes per destination host + MinimumRingSize uint64 `json:",omitempty" alias:"minimum_ring_size"` + + // MaximumRingSize determines the maximum number of hashes per destination host + MaximumRingSize uint64 `json:",omitempty" alias:"maximum_ring_size"` +} + +// LeastRequestConfig contains configuration for the "least_request" policy type +type LeastRequestConfig struct { + // ChoiceCount determines the number of random healthy hosts from which to select the one with the least requests. + ChoiceCount uint32 `json:",omitempty" alias:"choice_count"` +} + +// HashPolicy is a list of hash policies to use for hashing load balancing algorithms. +// Hash policies are evaluated individually and combined such that identical lists +// result in the same hash. +// If no hash policies are present, or none are successfully evaluated, +// then a random backend host will be selected. +type HashPolicy struct { + // Field is the attribute type to hash on. + // Must be one of "header","cookie", or "query_parameter". + // Cannot be specified along with SourceIP. + Field string `json:",omitempty"` + + // FieldMatchValue is the value to hash. + // ie. header name, cookie name, URL query parameter name + // Cannot be specified along with SourceIP. + FieldMatchValue string `json:",omitempty" alias:"field_value"` + + // SourceAddress determines whether the hash should be of the source IP rather than of a field and field value. + // Cannot be specified along with Field and FieldMatchValue. + SourceAddress bool `json:",omitempty" alias:"source_address"` + + // Terminal will short circuit the computation of the hash when multiple hash policies are present. + // If a hash is computed when a Terminal policy is evaluated, + // then that hash will be used and subsequent hash policies will be ignored. + Terminal bool `json:",omitempty"` +} + type discoveryChainConfigEntry interface { ConfigEntry // ListRelatedServices returns a list of other names of services referenced diff --git a/agent/structs/config_entry_discoverychain_test.go b/agent/structs/config_entry_discoverychain_test.go index 5f332e9bbe..d5db08ec52 100644 --- a/agent/structs/config_entry_discoverychain_test.go +++ b/agent/structs/config_entry_discoverychain_test.go @@ -536,6 +536,278 @@ func TestServiceResolverConfigEntry(t *testing.T) { } } +func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { + + type testcase struct { + name string + entry *ServiceResolverConfigEntry + normalizeErr string + validateErr string + + // check is called between normalize and validate + check func(t *testing.T, entry *ServiceResolverConfigEntry) + } + + cases := []testcase{ + { + name: "empty policy is valid", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{Policy: ""}, + }, + }, + { + name: "supported policy", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{Policy: "random"}, + }, + }, + { + name: "unsupported policy", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{Policy: "fake-policy"}, + }, + validateErr: `"fake-policy" is not supported`, + }, + { + name: "bad policy for least request config", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "ring_hash", + LeastRequestConfig: LeastRequestConfig{ChoiceCount: 2}, + }, + }, + validateErr: `LeastRequestConfig specified for incompatible load balancing policy`, + }, + { + name: "bad policy for ring hash config", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "least_request", + RingHashConfig: RingHashConfig{MinimumRingSize: 1024}, + }, + }, + validateErr: `RingHashConfig specified for incompatible load balancing policy`, + }, + { + name: "good policy for ring hash config", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: RingHashConfig{MinimumRingSize: 1024}, + }, + }, + }, + { + name: "good policy for least request config", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: LeastRequestConfig{ChoiceCount: 2}, + }, + }, + }, + { + name: "empty policy is not defaulted", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "", + }, + }, + check: func(t *testing.T, entry *ServiceResolverConfigEntry) { + require.Equal(t, "", entry.LoadBalancer.Policy) + }, + }, + { + name: "empty policy with hash policy", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "", + HashPolicies: []HashPolicy{ + { + SourceAddress: true, + }, + }, + }, + }, + validateErr: `HashPolicies specified for non-hash-based Policy`, + }, + { + name: "supported match field", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "maglev", + HashPolicies: []HashPolicy{ + { + Field: "header", + FieldMatchValue: "X-Consul-Token", + }, + }, + }, + }, + }, + { + name: "unsupported match field", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "maglev", + HashPolicies: []HashPolicy{ + { + Field: "not-header", + }, + }, + }, + }, + validateErr: `"not-header" is not a supported field`, + }, + { + name: "cannot match on source address and custom field", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "maglev", + HashPolicies: []HashPolicy{ + { + Field: "header", + SourceAddress: true, + }, + }, + }, + }, + validateErr: `A single hash policy cannot hash both a source address and a "header"`, + }, + { + name: "matchvalue not compatible with source address", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "maglev", + HashPolicies: []HashPolicy{ + { + FieldMatchValue: "X-Consul-Token", + SourceAddress: true, + }, + }, + }, + }, + validateErr: `A FieldMatchValue cannot be specified when hashing SourceAddress`, + }, + { + name: "field without match value", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "maglev", + HashPolicies: []HashPolicy{ + { + Field: "header", + }, + }, + }, + }, + validateErr: `Field "header" was specified without a FieldMatchValue`, + }, + { + name: "field without match value", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "maglev", + HashPolicies: []HashPolicy{ + { + FieldMatchValue: "my-cookie", + }, + }, + }, + }, + validateErr: `FieldMatchValue requires a Field to apply to`, + }, + { + name: "ring hash kitchen sink", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: RingHashConfig{MaximumRingSize: 10, MinimumRingSize: 2}, + HashPolicies: []HashPolicy{ + { + Field: "cookie", + FieldMatchValue: "my-cookie", + }, + { + Field: "header", + FieldMatchValue: "alt-header", + Terminal: true, + }, + }, + }, + }, + }, + { + name: "least request kitchen sink", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: LeastRequestConfig{ChoiceCount: 20}, + }, + }, + }, + } + + for _, tc := range cases { + tc := tc + t.Run(tc.name, func(t *testing.T) { + err := tc.entry.Normalize() + if tc.normalizeErr != "" { + require.Error(t, err) + require.Contains(t, err.Error(), tc.normalizeErr) + return + } + require.NoError(t, err) + + if tc.check != nil { + tc.check(t, tc.entry) + } + + err = tc.entry.Validate() + if tc.validateErr != "" { + require.Error(t, err) + require.Contains(t, err.Error(), tc.validateErr) + return + } + require.NoError(t, err) + }) + } +} + func TestServiceSplitterConfigEntry(t *testing.T) { makesplitter := func(splits ...ServiceSplit) *ServiceSplitterConfigEntry { diff --git a/api/config_entry_discoverychain.go b/api/config_entry_discoverychain.go index f3994f0dd9..0bfd3dde2a 100644 --- a/api/config_entry_discoverychain.go +++ b/api/config_entry_discoverychain.go @@ -138,6 +138,10 @@ type ServiceResolverConfigEntry struct { Failover map[string]ServiceResolverFailover `json:",omitempty"` ConnectTimeout time.Duration `json:",omitempty" alias:"connect_timeout"` + // LoadBalancer determines the load balancing policy and configuration for services + // issuing requests to this upstream service. + LoadBalancer LoadBalancer `json:",omitempty" alias:"load_balancer"` + CreateIndex uint64 ModifyIndex uint64 } @@ -201,3 +205,64 @@ type ServiceResolverFailover struct { Namespace string `json:",omitempty"` Datacenters []string `json:",omitempty"` } + +// LoadBalancer determines the load balancing policy and configuration for services +// issuing requests to this upstream service. +type LoadBalancer struct { + // Policy is the load balancing policy used to select a host + Policy string `json:",omitempty"` + + // RingHashConfig contains configuration for the "ring_hash" policy type + RingHashConfig RingHashConfig `json:",omitempty" alias:"ring_hash_config"` + + // LeastRequestConfig contains configuration for the "least_request" policy type + LeastRequestConfig LeastRequestConfig `json:",omitempty" alias:"least_request_config"` + + // HashPolicies is a list of hash policies to use for hashing load balancing algorithms. + // Hash policies are evaluated individually and combined such that identical lists + // result in the same hash. + // If no hash policies are present, or none are successfully evaluated, + // then a random backend host will be selected. + HashPolicies []HashPolicy `json:",omitempty" alias:"hash_policies"` +} + +// RingHashConfig contains configuration for the "ring_hash" policy type +type RingHashConfig struct { + // MinimumRingSize determines the minimum number of hashes per destination host + MinimumRingSize uint64 `json:",omitempty" alias:"minimum_ring_size"` + + // MaximumRingSize determines the maximum number of hashes per destination host + MaximumRingSize uint64 `json:",omitempty" alias:"maximum_ring_size"` +} + +// LeastRequestConfig contains configuration for the "least_request" policy type +type LeastRequestConfig struct { + // ChoiceCount determines the number of random healthy hosts from which to select the one with the least requests. + ChoiceCount uint32 `json:",omitempty" alias:"choice_count"` +} + +// HashPolicy is a list of hash policies to use for hashing load balancing algorithms. +// Hash policies are evaluated individually and combined such that identical lists +// result in the same hash. +// If no hash policies are present, or none are successfully evaluated, +// then a random backend host will be selected. +type HashPolicy struct { + // Field is the attribute type to hash on. + // Must be one of "header","cookie", or "query_parameter". + // Cannot be specified along with SourceIP. + Field string `json:",omitempty"` + + // FieldMatchValue is the value to hash. + // ie. header name, cookie name, URL query parameter name + // Cannot be specified along with SourceIP. + FieldMatchValue string `json:",omitempty" alias:"field_value"` + + // SourceAddress determines whether the hash should be of the source IP rather than of a field and field value. + // Cannot be specified along with Field and FieldMatchValue. + SourceAddress bool `json:",omitempty" alias:"source_address"` + + // Terminal will short circuit the computation of the hash when multiple hash policies are present. + // If a hash is computed when a Terminal policy is evaluated, + // then that hash will be used and subsequent hash policies will be ignored. + Terminal bool `json:",omitempty"` +} diff --git a/api/config_entry_discoverychain_test.go b/api/config_entry_discoverychain_test.go index d01f7b6286..0e77429bb6 100644 --- a/api/config_entry_discoverychain_test.go +++ b/api/config_entry_discoverychain_test.go @@ -233,3 +233,105 @@ func TestAPI_ConfigEntry_DiscoveryChain(t *testing.T) { require.True(t, ok, "subtest %q failed so aborting remainder", name) } } + +func TestAPI_ConfigEntry_ServiceResolver_LoadBalancer(t *testing.T) { + t.Parallel() + c, s := makeClient(t) + defer s.Stop() + + config_entries := c.ConfigEntries() + + verifyResolver := func(t *testing.T, initial ConfigEntry) { + t.Helper() + require.IsType(t, &ServiceResolverConfigEntry{}, initial) + testEntry := initial.(*ServiceResolverConfigEntry) + + // set it + _, wm, err := config_entries.Set(testEntry, nil) + require.NoError(t, err) + require.NotNil(t, wm) + require.NotEqual(t, 0, wm.RequestTime) + + // get it + entry, qm, err := config_entries.Get(ServiceResolver, testEntry.Name, nil) + require.NoError(t, err) + require.NotNil(t, qm) + require.NotEqual(t, 0, qm.RequestTime) + + // verify it + readResolver, ok := entry.(*ServiceResolverConfigEntry) + require.True(t, ok) + readResolver.ModifyIndex = 0 // reset for Equals() + readResolver.CreateIndex = 0 // reset for Equals() + + require.Equal(t, testEntry, readResolver) + } + + // First set the necessary protocols to allow advanced routing features. + for _, service := range []string{ + "test-least-req", + "test-ring-hash", + } { + serviceDefaults := &ServiceConfigEntry{ + Kind: ServiceDefaults, + Name: service, + Protocol: "http", + } + _, _, err := config_entries.Set(serviceDefaults, nil) + require.NoError(t, err) + } + + // NOTE: Due to service graph validation, these have to happen in a specific order. + for _, tc := range []struct { + name string + entry ConfigEntry + verify func(t *testing.T, initial ConfigEntry) + }{ + { + name: "least-req", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test-least-req", + Namespace: defaultNamespace, + LoadBalancer: LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: LeastRequestConfig{ChoiceCount: 10}, + }, + }, + verify: verifyResolver, + }, + { + name: "ring-hash-with-policies", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test-ring-hash", + Namespace: defaultNamespace, + LoadBalancer: LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: RingHashConfig{ + MinimumRingSize: 1024 * 2, + MaximumRingSize: 1024 * 4, + }, + HashPolicies: []HashPolicy{ + { + Field: "header", + FieldMatchValue: "my-session-header", + Terminal: true, + }, + { + SourceAddress: true, + }, + }, + }, + }, + verify: verifyResolver, + }, + } { + tc := tc + name := fmt.Sprintf("%s:%s: %s", tc.entry.GetKind(), tc.entry.GetName(), tc.name) + ok := t.Run(name, func(t *testing.T) { + tc.verify(t, tc.entry) + }) + require.True(t, ok, "subtest %q failed so aborting remainder", name) + } +} From d5974b1d17750dc57d5ac12cbf585ca545fe60ef Mon Sep 17 00:00:00 2001 From: Pierre Souchay Date: Fri, 28 Aug 2020 13:03:58 +0200 Subject: [PATCH 020/122] Added Unit test for cache reloading --- agent/cache/cache_test.go | 59 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/agent/cache/cache_test.go b/agent/cache/cache_test.go index 54794f4c3d..c2442ea7c1 100644 --- a/agent/cache/cache_test.go +++ b/agent/cache/cache_test.go @@ -14,6 +14,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" + "golang.org/x/time/rate" ) // Test a basic Get with no indexes (and therefore no blocking queries). @@ -1220,6 +1221,64 @@ func TestCacheGet_nonBlockingType(t *testing.T) { typ.AssertExpectations(t) } +// Test a get with an index set will wait until an index that is higher +// is set in the cache. +func TestCacheReload(t *testing.T) { + t.Parallel() + + typ1 := TestType(t) + defer typ1.AssertExpectations(t) + + c := New(Options{EntryFetchRate: rate.Limit(1), EntryFetchMaxBurst: 1}) + c.RegisterType("t1", typ1) + typ1.Mock.On("Fetch", mock.Anything, mock.Anything).Return(FetchResult{Value: 42, Index: 42}, nil).Maybe() + + require.False(t, c.ReloadOptions(Options{EntryFetchRate: rate.Limit(1), EntryFetchMaxBurst: 1}), "Value should not be reloaded") + + _, meta, err := c.Get(context.Background(), "t1", TestRequest(t, RequestInfo{Key: "hello1", MinIndex: uint64(1)})) + require.NoError(t, err) + require.Equal(t, meta.Index, uint64(42)) + + testEntry := func(t *testing.T, doTest func(t *testing.T, entry cacheEntry)) { + c.entriesLock.Lock() + tEntry, ok := c.types["t1"] + require.True(t, ok) + keyName := makeEntryKey("t1", "", "", "hello1") + ok, entryValid, entry := c.getEntryLocked(tEntry, keyName, RequestInfo{}) + require.True(t, ok) + require.True(t, entryValid) + doTest(t, entry) + c.entriesLock.Unlock() + + } + testEntry(t, func(t *testing.T, entry cacheEntry) { + require.Equal(t, entry.FetchRateLimiter.Limit(), rate.Limit(1)) + require.Equal(t, entry.FetchRateLimiter.Burst(), 1) + }) + + // Modify only rateLimit + require.True(t, c.ReloadOptions(Options{EntryFetchRate: rate.Limit(100), EntryFetchMaxBurst: 1})) + testEntry(t, func(t *testing.T, entry cacheEntry) { + require.Equal(t, entry.FetchRateLimiter.Limit(), rate.Limit(100)) + require.Equal(t, entry.FetchRateLimiter.Burst(), 1) + }) + + // Modify only Burst + require.True(t, c.ReloadOptions(Options{EntryFetchRate: rate.Limit(100), EntryFetchMaxBurst: 5})) + testEntry(t, func(t *testing.T, entry cacheEntry) { + require.Equal(t, entry.FetchRateLimiter.Limit(), rate.Limit(100)) + require.Equal(t, entry.FetchRateLimiter.Burst(), 5) + }) + + // Modify only Burst and Limit at the same time + require.True(t, c.ReloadOptions(Options{EntryFetchRate: rate.Limit(1000), EntryFetchMaxBurst: 42})) + + testEntry(t, func(t *testing.T, entry cacheEntry) { + require.Equal(t, entry.FetchRateLimiter.Limit(), rate.Limit(1000)) + require.Equal(t, entry.FetchRateLimiter.Burst(), 42) + }) +} + // TestCacheThrottle checks the assumptions for the cache throttling. It sets // up a cache with Options{EntryFetchRate: 10.0, EntryFetchMaxBurst: 1}, which // allows for 10req/s, or one request every 100ms. From 95094b8ddd7ec238e49219332befe30d21fe8476 Mon Sep 17 00:00:00 2001 From: Kenia <19161242+kaxcode@users.noreply.github.com> Date: Fri, 28 Aug 2020 09:21:03 -0400 Subject: [PATCH 021/122] ui: Redesign Node list page (#8567) * Create ConsulNodeList component * Implement ConsulNodeList and the new Search/Sort to Node List page * Minor styling fix to align the first icons in composite row * Fix-up and add tests for the redesigned Node List page * Add Leader to composite row for Node List page * Add test for node leader --- .../app/components/consul-node-list/index.hbs | 41 ++++ .../app/components/consul-node-list/index.js | 5 + ui-v2/app/controllers/dc/nodes/index.js | 18 +- ui-v2/app/initializers/search.js | 3 +- ui-v2/app/initializers/sort.js | 2 + ui-v2/app/models/node.js | 22 ++ ui-v2/app/routes/dc/nodes/index.js | 1 + ui-v2/app/sort/comparators/node.js | 37 ++++ .../styles/base/components/pill/layout.scss | 4 + .../app/styles/base/components/pill/skin.scss | 4 + .../app/styles/base/icons/base-variables.scss | 2 +- .../components/composite-row/layout.scss | 1 + ui-v2/app/styles/components/pill.scss | 3 +- ui-v2/app/templates/dc/nodes/index.hbs | 195 ++++++------------ .../components/catalog-filter.feature | 62 ------ .../acceptance/dc/nodes/empty-ids.feature | 7 +- ui-v2/tests/acceptance/dc/nodes/index.feature | 23 +-- .../acceptance/dc/nodes/navigation.feature | 16 ++ .../tests/acceptance/dc/nodes/sorting.feature | 73 +++++++ .../tests/acceptance/page-navigation.feature | 1 - .../steps/dc/nodes/navigation-steps.js | 10 + .../steps/dc/nodes/sorting-steps.js | 10 + .../acceptance/steps/nodes/sorting-steps.js | 10 + .../components/consul-node-list-test.js | 26 +++ ui-v2/tests/pages.js | 5 +- ui-v2/tests/pages/dc/nodes/index.js | 13 +- 26 files changed, 345 insertions(+), 249 deletions(-) create mode 100644 ui-v2/app/components/consul-node-list/index.hbs create mode 100644 ui-v2/app/components/consul-node-list/index.js create mode 100644 ui-v2/app/sort/comparators/node.js create mode 100644 ui-v2/tests/acceptance/dc/nodes/navigation.feature create mode 100644 ui-v2/tests/acceptance/dc/nodes/sorting.feature create mode 100644 ui-v2/tests/acceptance/steps/dc/nodes/navigation-steps.js create mode 100644 ui-v2/tests/acceptance/steps/dc/nodes/sorting-steps.js create mode 100644 ui-v2/tests/acceptance/steps/nodes/sorting-steps.js create mode 100644 ui-v2/tests/integration/components/consul-node-list-test.js diff --git a/ui-v2/app/components/consul-node-list/index.hbs b/ui-v2/app/components/consul-node-list/index.hbs new file mode 100644 index 0000000000..8b2c516e9c --- /dev/null +++ b/ui-v2/app/components/consul-node-list/index.hbs @@ -0,0 +1,41 @@ +{{#if (gt items.length 0)}} + + +
+
+ Health +
+
+ + {{#if (eq 'critical' item.Status)}} + At least one health check on this node is failing. + {{else if (eq 'warning' item.Status)}} + At least one health check on this node has a warning. + {{else if (eq 'passing' item.Status)}} + All health checks are passing. + {{else}} + There are no health checks. + {{/if}} + +
+
+
+ {{item.Node}} + +
+ + {{#if (eq item.Address leader.Address)}} + Leader + {{/if}} +
+
+ +
+
{{item.Address}}
+
+
+ +{{/if}} diff --git a/ui-v2/app/components/consul-node-list/index.js b/ui-v2/app/components/consul-node-list/index.js new file mode 100644 index 0000000000..4798652642 --- /dev/null +++ b/ui-v2/app/components/consul-node-list/index.js @@ -0,0 +1,5 @@ +import Component from '@ember/component'; + +export default Component.extend({ + tagName: '', +}); diff --git a/ui-v2/app/controllers/dc/nodes/index.js b/ui-v2/app/controllers/dc/nodes/index.js index 5454ee88a2..a33e295d30 100644 --- a/ui-v2/app/controllers/dc/nodes/index.js +++ b/ui-v2/app/controllers/dc/nodes/index.js @@ -2,26 +2,10 @@ import Controller from '@ember/controller'; export default Controller.extend({ queryParams: { - filterBy: { - as: 'status', - }, + sortBy: 'sort', search: { as: 'filter', replace: true, }, }, - actions: { - hasStatus: function(status, checks) { - if (status === '') { - return true; - } - return checks.some(item => item.Status === status); - }, - isHealthy: function(checks) { - return !this.actions.isUnhealthy.apply(this, [checks]); - }, - isUnhealthy: function(checks) { - return checks.some(item => item.Status === 'critical' || item.Status === 'warning'); - }, - }, }); diff --git a/ui-v2/app/initializers/search.js b/ui-v2/app/initializers/search.js index 42b92fad58..e6ed797ab7 100644 --- a/ui-v2/app/initializers/search.js +++ b/ui-v2/app/initializers/search.js @@ -23,8 +23,7 @@ export function initialize(application) { policy: policy(filterable), role: role(filterable), kv: kv(filterable), - healthyNode: node(filterable), - unhealthyNode: node(filterable), + node: node(filterable), serviceInstance: serviceNode(filterable), nodeservice: nodeService(filterable), service: service(filterable), diff --git a/ui-v2/app/initializers/sort.js b/ui-v2/app/initializers/sort.js index 4649bcfb62..6b173481b2 100644 --- a/ui-v2/app/initializers/sort.js +++ b/ui-v2/app/initializers/sort.js @@ -6,6 +6,7 @@ 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'; export function initialize(container) { // Service-less injection using private properties at a per-project level @@ -19,6 +20,7 @@ export function initialize(container) { role: role(), policy: policy(), nspace: nspace(), + node: node(), }; Sort.reopen({ comparator: function(type) { diff --git a/ui-v2/app/models/node.js b/ui-v2/app/models/node.js index 2081f6f719..f21186f845 100644 --- a/ui-v2/app/models/node.js +++ b/ui-v2/app/models/node.js @@ -1,5 +1,6 @@ import Model from 'ember-data/model'; import attr from 'ember-data/attr'; +import { computed } from '@ember/object'; export const PRIMARY_KEY = 'uid'; export const SLUG_KEY = 'ID'; @@ -20,4 +21,25 @@ export default Model.extend({ Coord: attr(), SyncTime: attr('number'), meta: attr(), + Status: computed('Checks.[]', 'ChecksCritical', 'ChecksPassing', 'ChecksWarning', function() { + switch (true) { + case this.ChecksCritical !== 0: + return 'critical'; + case this.ChecksWarning !== 0: + return 'warning'; + case this.ChecksPassing !== 0: + return 'passing'; + default: + return 'empty'; + } + }), + ChecksCritical: computed('Checks.[]', function() { + return this.Checks.filter(item => item.Status === 'critical').length; + }), + ChecksPassing: computed('Checks.[]', function() { + return this.Checks.filter(item => item.Status === 'passing').length; + }), + ChecksWarning: computed('Checks.[]', function() { + return this.Checks.filter(item => item.Status === 'warning').length; + }), }); diff --git a/ui-v2/app/routes/dc/nodes/index.js b/ui-v2/app/routes/dc/nodes/index.js index 783f1efa4f..472366e5b1 100644 --- a/ui-v2/app/routes/dc/nodes/index.js +++ b/ui-v2/app/routes/dc/nodes/index.js @@ -6,6 +6,7 @@ export default Route.extend({ repo: service('repository/node'), data: service('data-source/service'), queryParams: { + sortBy: 'sort', search: { as: 'filter', replace: true, diff --git a/ui-v2/app/sort/comparators/node.js b/ui-v2/app/sort/comparators/node.js new file mode 100644 index 0000000000..a5c906d10a --- /dev/null +++ b/ui-v2/app/sort/comparators/node.js @@ -0,0 +1,37 @@ +export default () => key => { + if (key.startsWith('Status:')) { + return function(serviceA, serviceB) { + const [, dir] = key.split(':'); + let a, b; + if (dir === 'asc') { + b = serviceA; + a = serviceB; + } else { + a = serviceA; + b = serviceB; + } + switch (true) { + case a.ChecksCritical > b.ChecksCritical: + return 1; + case a.ChecksCritical < b.ChecksCritical: + return -1; + default: + switch (true) { + case a.ChecksWarning > b.ChecksWarning: + return 1; + case a.ChecksWarning < b.ChecksWarning: + return -1; + default: + switch (true) { + case a.ChecksPassing < b.ChecksPassing: + return 1; + case a.ChecksPassing > b.ChecksPassing: + return -1; + } + } + return 0; + } + }; + } + return key; +}; diff --git a/ui-v2/app/styles/base/components/pill/layout.scss b/ui-v2/app/styles/base/components/pill/layout.scss index 6f97559aec..56cf8623b1 100644 --- a/ui-v2/app/styles/base/components/pill/layout.scss +++ b/ui-v2/app/styles/base/components/pill/layout.scss @@ -27,5 +27,9 @@ width: 14px; height: 14px; margin-right: 2px; + margin-top: 1px; position: relative; } +%reduced-pill.leader::before { + margin-right: 4px; +} diff --git a/ui-v2/app/styles/base/components/pill/skin.scss b/ui-v2/app/styles/base/components/pill/skin.scss index 31d1ed0b95..2ba8e1ff90 100644 --- a/ui-v2/app/styles/base/components/pill/skin.scss +++ b/ui-v2/app/styles/base/components/pill/skin.scss @@ -34,3 +34,7 @@ @extend %with-gateway-mask; background-color: $gray-500; } +%reduced-pill.leader::before { + @extend %with-star-outline-mask; + background-color: $gray-500; +} diff --git a/ui-v2/app/styles/base/icons/base-variables.scss b/ui-v2/app/styles/base/icons/base-variables.scss index d3e2e48d97..09fc28c599 100644 --- a/ui-v2/app/styles/base/icons/base-variables.scss +++ b/ui-v2/app/styles/base/icons/base-variables.scss @@ -156,7 +156,7 @@ $settings-svg: url('data:image/svg+xml;charset=UTF-8,'); $sort-svg: url('data:image/svg+xml;charset=UTF-8,'); $star-fill-svg: url('data:image/svg+xml;charset=UTF-8,'); -$star-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); +$star-outline-svg: url('data:image/svg+xml;charset=UTF-8,'); $star-svg: url('data:image/svg+xml;charset=UTF-8,'); $sub-left-svg: url('data:image/svg+xml;charset=UTF-8,'); $sub-right-svg: url('data:image/svg+xml;charset=UTF-8,'); diff --git a/ui-v2/app/styles/components/composite-row/layout.scss b/ui-v2/app/styles/components/composite-row/layout.scss index 2f08ea6021..289dd4f3e4 100644 --- a/ui-v2/app/styles/components/composite-row/layout.scss +++ b/ui-v2/app/styles/components/composite-row/layout.scss @@ -44,6 +44,7 @@ } %composite-row-icon { margin-right: 6px; + margin-left: -2px; } %composite-row-icon dt { display: none; diff --git a/ui-v2/app/styles/components/pill.scss b/ui-v2/app/styles/components/pill.scss index af6ecd29c8..c9222f5586 100644 --- a/ui-v2/app/styles/components/pill.scss +++ b/ui-v2/app/styles/components/pill.scss @@ -6,7 +6,8 @@ td strong { span.policy-service-identity, span.policy-node-identity, .consul-external-source, -.consul-kind { +.consul-kind, +.leader { @extend %reduced-pill; } span.policy-service-identity::before, diff --git a/ui-v2/app/templates/dc/nodes/index.hbs b/ui-v2/app/templates/dc/nodes/index.hbs index 3ecdf5cf9f..c5b38372b6 100644 --- a/ui-v2/app/templates/dc/nodes/index.hbs +++ b/ui-v2/app/templates/dc/nodes/index.hbs @@ -1,137 +1,74 @@ {{title 'Nodes'}} -{{#let (selectable-key-values - (array "" "All (Any Status)") - (array "critical" "Critical Checks") - (array "warning" "Warning Checks") - (array "passing" "Passing Checks") - selected=filterBy - ) - as |filter| -}} - - -

- Nodes {{format-number items.length}} total -

- -
- -{{#if (gt items.length 0) }} +{{#let (or sortBy "Node:asc") as |sort|}} + + +

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

+ +
+ + {{#if (gt items.length 0) }} -{{/if}} - - -{{#let (filter-by "Checks" (action "isUnhealthy") items) as |unhealthy|}} - {{#if (gt unhealthy.length 0) }} -
-

Unhealthy Nodes

-
- {{! think about 2 differing views here }} -
    - - - {{#each unhealthy as |item|}} - - - {{#if (eq item.Address leader.Address)}} - Leader - {{/if}} - - - {{/each}} - - -
  • - - -

    No nodes found

    -
    - -

    - There don't seem to be any nodes matching that search. -

    -
    -
    -
  • -
    -
    -
-
-
- {{/if}} -{{/let}} -{{#let (filter-by "Checks" (action "isHealthy") items) as |healthy|}} - {{#if (gt healthy.length 0) }} -
-

Healthy Nodes

- - - - - - {{#if (eq item.Address leader.Address)}} - Leader - {{/if}} - - - - - - - -

No nodes found

-
- -

- There don't seem to be any nodes matching that search. -

-
-
-
-
-
- {{/if}} -{{/let}} -{{#if (eq items.length 0) }} - - -

Welcome to Nodes

+ class="with-sort" + > + + + + + {{#let (from-entries (array + (array "Node:asc" "A to Z") + (array "Node:desc" "Z to A") + (array "Status:asc" "Unhealthy to Healthy") + (array "Status:desc" "Healthy to Unhealthy") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + + {{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + + {{/let}} + + - -

- There don't seem to be any nodes, or you may not have access to view nodes yet. -

+ + {{/if}} +
+ + {{#let (sort-by (comparator 'node' sort) items) as |sorted|}} + + + -
-{{/if}} -
-
+ + + +

+ There don't seem to be any registered nodes, or you may not have access to view nodes yet. +

+
+
+
+
+ {{/let}} +
+
{{/let}} \ No newline at end of file diff --git a/ui-v2/tests/acceptance/components/catalog-filter.feature b/ui-v2/tests/acceptance/components/catalog-filter.feature index 68b9e02c5e..82a4b14b43 100644 --- a/ui-v2/tests/acceptance/components/catalog-filter.feature +++ b/ui-v2/tests/acceptance/components/catalog-filter.feature @@ -3,68 +3,6 @@ # to use the name filter UI also, then they can stay together @setupApplicationTest Feature: components / catalog-filter - Scenario: Filtering [Model] - Given 1 datacenter model with the value "dc-1" - And 4 service models from yaml - --- - - ChecksPassing: 1 - ChecksWarning: 0 - ChecksCritical: 0 - - ChecksPassing: 0 - ChecksWarning: 1 - ChecksCritical: 0 - - ChecksPassing: 0 - ChecksWarning: 0 - ChecksCritical: 1 - - ChecksPassing: 1 - ChecksWarning: 0 - ChecksCritical: 0 - --- - And 4 node models from yaml - --- - - Checks: - - Status: passing - - Checks: - - Status: warning - - Checks: - - Status: critical - - Checks: - - Status: passing - --- - When I visit the [Page] page for yaml - --- - dc: dc-1 - --- - Then the url should be [Url] - - Then I see 4 [Model] models - And I see allIsSelected on the filter - - When I click passing on the filter - And I see passingIsSelected on the filter - And I see 2 [Model] models - - When I click warning on the filter - And I see warningIsSelected on the filter - And I see 1 [Model] model - - When I click critical on the filter - And I see criticalIsSelected on the filter - And I see 1 [Model] model - - When I click all on the filter - And I see allIsSelected on the filter - Then I fill in with yaml - --- - s: [Model]-0 - --- - And I see 1 [Model] model with the name "[Model]-0" - - Where: - ------------------------------------------------- - | Model | Page | Url | - | node | nodes | /dc-1/nodes | - ------------------------------------------------- Scenario: Filtering [Model] in [Page] Given 1 datacenter model with the value "dc1" And 1 node model from yaml diff --git a/ui-v2/tests/acceptance/dc/nodes/empty-ids.feature b/ui-v2/tests/acceptance/dc/nodes/empty-ids.feature index e4807d2944..52df760afb 100644 --- a/ui-v2/tests/acceptance/dc/nodes/empty-ids.feature +++ b/ui-v2/tests/acceptance/dc/nodes/empty-ids.feature @@ -20,14 +20,11 @@ Feature: dc / nodes / empty-ids: Hedge for if nodes come in over the API with no dc: dc-1 --- Then the url should be /dc-1/nodes - Then I see name on the nodes like yaml + Then I see name on the nodes vertically like yaml --- - name-1 - name-2 - name-3 - name-4 - name-5 - -@ignore - Scenario: Visually comparing - Then the ".unhealthy" element should look like the "/node_modules/@hashicorp/consul-testing-extras/fixtures/dc/nodes/empty-ids.png" image + --- \ No newline at end of file diff --git a/ui-v2/tests/acceptance/dc/nodes/index.feature b/ui-v2/tests/acceptance/dc/nodes/index.feature index e42bb68213..07a4f3ef40 100644 --- a/ui-v2/tests/acceptance/dc/nodes/index.feature +++ b/ui-v2/tests/acceptance/dc/nodes/index.feature @@ -16,7 +16,7 @@ Feature: dc / nodes / index Then the url should be /dc-1/nodes And the title should be "Nodes - Consul" Then I see 3 node models - Scenario: Seeing the leader in unhealthy listing + Scenario: Seeing the leader in node listing Given 3 node models from yaml --- - Address: 211.245.86.75 @@ -32,24 +32,7 @@ Feature: dc / nodes / index --- Then the url should be /dc-1/nodes Then I see 3 node models - And I see leader on the unHealthyNodes - Scenario: Seeing the leader in healthy listing - Given 3 node models from yaml - --- - - Address: 211.245.86.75 - Checks: - - Status: passing - Name: Passing check - - Address: 10.0.0.1 - - Address: 10.0.0.3 - --- - When I visit the nodes page for yaml - --- - dc: dc-1 - --- - Then the url should be /dc-1/nodes - Then I see 3 node models - And I see leader on the healthyNodes + And I see leader on the nodes.0 Scenario: Searching the nodes with name and IP address Given 3 node models from yaml --- @@ -76,4 +59,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" + And I see 1 node model with the name "node-02" \ No newline at end of file diff --git a/ui-v2/tests/acceptance/dc/nodes/navigation.feature b/ui-v2/tests/acceptance/dc/nodes/navigation.feature new file mode 100644 index 0000000000..116e26ff89 --- /dev/null +++ b/ui-v2/tests/acceptance/dc/nodes/navigation.feature @@ -0,0 +1,16 @@ +@setupApplicationTest +Feature: dc / nodes / navigation + Scenario: Clicking a node in the listing and back again + Given 1 datacenter model with the value "dc-1" + And 3 node models + When I visit the nodes page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/nodes + And the title should be "Nodes - Consul" + Then I see 3 node models + When I click node on the nodes + And I click "[data-test-back]" + Then the url should be /dc-1/nodes + diff --git a/ui-v2/tests/acceptance/dc/nodes/sorting.feature b/ui-v2/tests/acceptance/dc/nodes/sorting.feature new file mode 100644 index 0000000000..d23795d924 --- /dev/null +++ b/ui-v2/tests/acceptance/dc/nodes/sorting.feature @@ -0,0 +1,73 @@ +@setupApplicationTest +Feature: dc / nodes / sorting + Scenario: + Given 1 datacenter model with the value "dc-1" + And 6 node models from yaml + --- + - Node: Node-A + Checks: + - Status: critical + - Node: Node-B + Checks: + - Status: passing + - Node: Node-C + Checks: + - Status: warning + - Node: Node-D + Checks: + - Status: critical + - Node: Node-E + Checks: + - Status: critical + - Node: Node-F + Checks: + - Status: warning + --- + When I visit the nodes page for yaml + --- + dc: dc-1 + --- + When I click selected on the sort + When I click options.3.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-B + - Node-C + - Node-F + - Node-A + - Node-D + - Node-E + --- + When I click selected on the sort + When I click options.2.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-A + - Node-D + - Node-E + - Node-C + - Node-F + - Node-B + --- + When I click selected on the sort + When I click options.0.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-A + - Node-B + - Node-C + - Node-D + - Node-E + - Node-F + --- + When I click selected on the sort + When I click options.1.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-F + - Node-E + - Node-D + - Node-C + - Node-B + - Node-A + --- diff --git a/ui-v2/tests/acceptance/page-navigation.feature b/ui-v2/tests/acceptance/page-navigation.feature index 6331a044ed..b1e98fcf39 100644 --- a/ui-v2/tests/acceptance/page-navigation.feature +++ b/ui-v2/tests/acceptance/page-navigation.feature @@ -43,7 +43,6 @@ Feature: page-navigation ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | Item | Model | URL | Endpoint | Back | | service | services | /dc-1/services/service-0/instances | /v1/discovery-chain/service-0?dc=dc-1&ns=@namespace | /dc-1/services | - | node | nodes | /dc-1/nodes/node-0/health-checks | /v1/session/node/node-0?dc=dc-1&ns=@namespace | /dc-1/nodes | | 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/steps/dc/nodes/navigation-steps.js b/ui-v2/tests/acceptance/steps/dc/nodes/navigation-steps.js new file mode 100644 index 0000000000..ba1093295f --- /dev/null +++ b/ui-v2/tests/acceptance/steps/dc/nodes/navigation-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/nodes/sorting-steps.js b/ui-v2/tests/acceptance/steps/dc/nodes/sorting-steps.js new file mode 100644 index 0000000000..ba1093295f --- /dev/null +++ b/ui-v2/tests/acceptance/steps/dc/nodes/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/nodes/sorting-steps.js b/ui-v2/tests/acceptance/steps/nodes/sorting-steps.js new file mode 100644 index 0000000000..3c9a76f69f --- /dev/null +++ b/ui-v2/tests/acceptance/steps/nodes/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/integration/components/consul-node-list-test.js b/ui-v2/tests/integration/components/consul-node-list-test.js new file mode 100644 index 0000000000..6ad53b10da --- /dev/null +++ b/ui-v2/tests/integration/components/consul-node-list-test.js @@ -0,0 +1,26 @@ +import { module, skip } from 'qunit'; +import { setupRenderingTest } from 'ember-qunit'; +import { render } from '@ember/test-helpers'; +import { hbs } from 'ember-cli-htmlbars'; + +module('Integration | Component | consul-node-list', function(hooks) { + setupRenderingTest(hooks); + + skip('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``); + + assert.equal(this.element.textContent.trim(), ''); + + // Template block usage: + await render(hbs` + + template block text + + `); + + assert.equal(this.element.textContent.trim(), 'template block text'); + }); +}); diff --git a/ui-v2/tests/pages.js b/ui-v2/tests/pages.js index 24ae13a0a8..2735a3a47f 100644 --- a/ui-v2/tests/pages.js +++ b/ui-v2/tests/pages.js @@ -79,9 +79,6 @@ const tokenList = tokenListFactory(clickable, attribute, collection, deletable); const authForm = authFormFactory(submitable, clickable, attribute); const freetextFilter = freetextFilterFactory(triggerable); const catalogToolbar = searchBarFactory(freetextFilter); -const catalogFilter = searchBarFactory(freetextFilter, () => - radiogroup('status', ['', 'passing', 'warning', 'critical']) -); const aclFilter = searchBarFactory(freetextFilter, () => radiogroup('type', ['', 'management', 'client']) ); @@ -153,7 +150,7 @@ export default { service(visitable, attribute, collection, text, consulIntentionList, catalogToolbar, tabgroup) ), instance: create(instance(visitable, attribute, collection, text, tabgroup)), - nodes: create(nodes(visitable, clickable, attribute, collection, catalogFilter)), + 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)), kv: create(kv(visitable, attribute, submitable, deletable, cancelable, clickable)), diff --git a/ui-v2/tests/pages/dc/nodes/index.js b/ui-v2/tests/pages/dc/nodes/index.js index 335c87afe3..c26bbd4153 100644 --- a/ui-v2/tests/pages/dc/nodes/index.js +++ b/ui-v2/tests/pages/dc/nodes/index.js @@ -1,14 +1,13 @@ -export default function(visitable, clickable, attribute, collection, filter) { +export default function(visitable, text, clickable, attribute, collection, popoverSelect) { const node = { - name: attribute('data-test-node'), + name: text('[data-test-node]'), leader: attribute('data-test-leader', '[data-test-leader]'), - node: clickable('header a'), + node: clickable('a'), }; return { visit: visitable('/:dc/nodes'), - nodes: collection('[data-test-node]', node), - healthyNodes: collection('.healthy [data-test-node]', node), - unHealthyNodes: collection('.unhealthy [data-test-node]', node), - filter: filter('[data-test-catalog-filter]'), + nodes: collection('.consul-node-list [data-test-list-row]', node), + home: clickable('[data-test-home]'), + sort: popoverSelect(), }; } From 81115b6eaae336d1d9541de28d1baf6722b546ac Mon Sep 17 00:00:00 2001 From: freddygv Date: Fri, 28 Aug 2020 13:11:04 -0600 Subject: [PATCH 022/122] Compile down LB policy to disco chain nodes --- agent/consul/discoverychain/compile.go | 11 ++ agent/consul/discoverychain/compile_test.go | 195 ++++++++++++++++++++ agent/structs/discovery_chain.go | 3 + 3 files changed, 209 insertions(+) diff --git a/agent/consul/discoverychain/compile.go b/agent/consul/discoverychain/compile.go index ca43b4da71..d946677870 100644 --- a/agent/consul/discoverychain/compile.go +++ b/agent/consul/discoverychain/compile.go @@ -707,6 +707,7 @@ func (c *compiler) getSplitterNode(sid structs.ServiceID) (*structs.DiscoveryGra // sanely if there is some sort of graph loop below. c.recordNode(splitNode) + var hasLB bool for _, split := range splitter.Splits { compiledSplit := &structs.DiscoverySplit{ Weight: split.Weight, @@ -739,6 +740,15 @@ func (c *compiler) getSplitterNode(sid structs.ServiceID) (*structs.DiscoveryGra return nil, err } compiledSplit.NextNode = node.MapKey() + + // There exists the possibility that a splitter may split between two distinct service names + // with distinct hash-based load balancer configs specified in their service resolvers. + // We cannot apply multiple hash policies to a splitter node's route action. + // Therefore, we attach the first hash-based load balancer config we encounter. + if !hasLB && node.LoadBalancer.IsHashBased() { + splitNode.LoadBalancer = node.LoadBalancer + hasLB = true + } } c.usesAdvancedRoutingFeatures = true @@ -851,6 +861,7 @@ RESOLVE_AGAIN: Target: target.ID, ConnectTimeout: connectTimeout, }, + LoadBalancer: resolver.LoadBalancer, } target.Subset = resolver.Subsets[target.ServiceSubset] diff --git a/agent/consul/discoverychain/compile_test.go b/agent/consul/discoverychain/compile_test.go index ac77600dcc..e5aca02b4a 100644 --- a/agent/consul/discoverychain/compile_test.go +++ b/agent/consul/discoverychain/compile_test.go @@ -51,6 +51,7 @@ func TestCompile(t *testing.T) { "default resolver with external sni": testcase_DefaultResolver_ExternalSNI(), "resolver with no entries and inferring defaults": testcase_DefaultResolver(), "default resolver with proxy defaults": testcase_DefaultResolver_WithProxyDefaults(), + "loadbalancer config": testcase_LBConfig(), "service redirect to service with default resolver is not a default chain": testcase_RedirectToDefaultResolverIsNotDefaultChain(), "all the bells and whistles": testcase_AllBellsAndWhistles(), @@ -1760,6 +1761,17 @@ func testcase_AllBellsAndWhistles() compileTestCase { "prod": {Filter: "ServiceMeta.env == prod"}, "qa": {Filter: "ServiceMeta.env == qa"}, }, + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MaximumRingSize: 100, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + }, + }, + }, }, &structs.ServiceResolverConfigEntry{ Kind: "service-resolver", @@ -1821,6 +1833,17 @@ func testcase_AllBellsAndWhistles() compileTestCase { NextNode: "resolver:v3.main.default.dc1", }, }, + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MaximumRingSize: 100, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + }, + }, + }, }, "resolver:prod.redirected.default.dc1": { Type: structs.DiscoveryGraphNodeTypeResolver, @@ -1829,6 +1852,17 @@ func testcase_AllBellsAndWhistles() compileTestCase { ConnectTimeout: 5 * time.Second, Target: "prod.redirected.default.dc1", }, + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MaximumRingSize: 100, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + }, + }, + }, }, "resolver:v1.main.default.dc1": { Type: structs.DiscoveryGraphNodeTypeResolver, @@ -2219,6 +2253,167 @@ func testcase_CircularSplit() compileTestCase { } } +func testcase_LBConfig() compileTestCase { + entries := newEntries() + setServiceProtocol(entries, "foo", "http") + setServiceProtocol(entries, "bar", "http") + setServiceProtocol(entries, "baz", "http") + + entries.AddSplitters( + &structs.ServiceSplitterConfigEntry{ + Kind: "service-splitter", + Name: "main", + Splits: []structs.ServiceSplit{ + {Weight: 60, Service: "foo"}, + {Weight: 20, Service: "bar"}, + {Weight: 20, Service: "baz"}, + }, + }, + ) + + entries.AddResolvers( + &structs.ServiceResolverConfigEntry{ + Kind: "service-resolver", + Name: "foo", + LoadBalancer: structs.LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: structs.LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + }, + &structs.ServiceResolverConfigEntry{ + Kind: "service-resolver", + Name: "bar", + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + }, + }, + }, + }, + &structs.ServiceResolverConfigEntry{ + Kind: "service-resolver", + Name: "baz", + LoadBalancer: structs.LoadBalancer{ + Policy: "maglev", + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldMatchValue: "chocolate-chip", + Terminal: true, + }, + }, + }, + }, + ) + + expect := &structs.CompiledDiscoveryChain{ + Protocol: "http", + StartNode: "splitter:main.default", + Nodes: map[string]*structs.DiscoveryGraphNode{ + "splitter:main.default": { + Type: structs.DiscoveryGraphNodeTypeSplitter, + Name: "main.default", + Splits: []*structs.DiscoverySplit{ + { + Weight: 60, + NextNode: "resolver:foo.default.dc1", + }, + { + Weight: 20, + NextNode: "resolver:bar.default.dc1", + }, + { + Weight: 20, + NextNode: "resolver:baz.default.dc1", + }, + }, + // The LB config from bar is attached because splitters only care about hash-based policies, + // and it's the config from bar not baz because we pick the first one we encounter in the Splits. + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + }, + }, + }, + }, + // Each service's LB config is passed down from the service-resolver to the resolver node + "resolver:foo.default.dc1": { + Type: structs.DiscoveryGraphNodeTypeResolver, + Name: "foo.default.dc1", + Resolver: &structs.DiscoveryResolver{ + Default: true, + ConnectTimeout: 5 * time.Second, + Target: "foo.default.dc1", + }, + LoadBalancer: structs.LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: structs.LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + }, + "resolver:bar.default.dc1": { + Type: structs.DiscoveryGraphNodeTypeResolver, + Name: "bar.default.dc1", + Resolver: &structs.DiscoveryResolver{ + Default: true, + ConnectTimeout: 5 * time.Second, + Target: "bar.default.dc1", + }, + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + }, + }, + }, + }, + "resolver:baz.default.dc1": { + Type: structs.DiscoveryGraphNodeTypeResolver, + Name: "baz.default.dc1", + Resolver: &structs.DiscoveryResolver{ + Default: true, + ConnectTimeout: 5 * time.Second, + Target: "baz.default.dc1", + }, + LoadBalancer: structs.LoadBalancer{ + Policy: "maglev", + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldMatchValue: "chocolate-chip", + Terminal: true, + }, + }, + }, + }, + }, + Targets: map[string]*structs.DiscoveryTarget{ + "foo.default.dc1": newTarget("foo", "", "default", "dc1", nil), + "bar.default.dc1": newTarget("bar", "", "default", "dc1", nil), + "baz.default.dc1": newTarget("baz", "", "default", "dc1", nil), + }, + } + + return compileTestCase{entries: entries, expect: expect} +} + func newSimpleRoute(name string, muts ...func(*structs.ServiceRoute)) structs.ServiceRoute { r := structs.ServiceRoute{ Match: &structs.ServiceRouteMatch{ diff --git a/agent/structs/discovery_chain.go b/agent/structs/discovery_chain.go index e5a3f72284..85ee5965cb 100644 --- a/agent/structs/discovery_chain.go +++ b/agent/structs/discovery_chain.go @@ -107,6 +107,9 @@ type DiscoveryGraphNode struct { // fields for Type==resolver Resolver *DiscoveryResolver `json:",omitempty"` + + // shared by Type==resolver || Type==splitter + LoadBalancer LoadBalancer `json:",omitempty"` } func (s *DiscoveryGraphNode) IsRouter() bool { From 2bbbd9e1da6a89422f79ea19f6895bb52b141388 Mon Sep 17 00:00:00 2001 From: freddygv Date: Fri, 28 Aug 2020 13:11:55 -0600 Subject: [PATCH 023/122] Log error as error --- agent/xds/server.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/xds/server.go b/agent/xds/server.go index 09f3c1d3fd..8eaa299d91 100644 --- a/agent/xds/server.go +++ b/agent/xds/server.go @@ -156,7 +156,7 @@ func (s *Server) StreamAggregatedResources(stream ADSStream) error { err := s.process(stream, reqCh) if err != nil { - s.Logger.Debug("Error handling ADS stream", "error", err) + s.Logger.Error("Error handling ADS stream", "error", err) } // prevents writing to a closed channel if send failed on blocked recv From 28d0602fc16b97283d02cae74796171ffb8e78b6 Mon Sep 17 00:00:00 2001 From: freddygv Date: Fri, 28 Aug 2020 14:27:40 -0600 Subject: [PATCH 024/122] Pass LB config to Envoy via xDS --- agent/proxycfg/testing.go | 55 ++++- agent/xds/clusters.go | 76 +++++- agent/xds/clusters_test.go | 180 +++++++++++++- agent/xds/listeners.go | 9 +- agent/xds/routes.go | 188 ++++++++++++-- agent/xds/routes_test.go | 230 ++++++++++++++++++ ...t-proxy-lb-in-resolver.envoy-1-12-x.golden | 175 +++++++++++++ ...t-proxy-lb-in-resolver.envoy-1-13-x.golden | 175 +++++++++++++ ...t-proxy-lb-in-resolver.envoy-1-14-x.golden | 175 +++++++++++++ ...t-proxy-lb-in-resolver.envoy-1-15-x.golden | 175 +++++++++++++ ...ingress-lb-in-resolver.envoy-1-12-x.golden | 108 ++++++++ ...ingress-lb-in-resolver.envoy-1-13-x.golden | 108 ++++++++ ...ingress-lb-in-resolver.envoy-1-14-x.golden | 108 ++++++++ ...ingress-lb-in-resolver.envoy-1-15-x.golden | 108 ++++++++ ...ateway-hash-lb-ignored.envoy-1-12-x.golden | 151 ++++++++++++ ...ateway-hash-lb-ignored.envoy-1-13-x.golden | 151 ++++++++++++ ...ateway-hash-lb-ignored.envoy-1-14-x.golden | 151 ++++++++++++ ...ateway-hash-lb-ignored.envoy-1-15-x.golden | 151 ++++++++++++ ...y-non-hash-lb-injected.envoy-1-12-x.golden | 163 +++++++++++++ ...y-non-hash-lb-injected.envoy-1-13-x.golden | 163 +++++++++++++ ...y-non-hash-lb-injected.envoy-1-14-x.golden | 163 +++++++++++++ ...y-non-hash-lb-injected.envoy-1-15-x.golden | 163 +++++++++++++ ...ting-gateway-lb-config.envoy-1-12-x.golden | 224 +++++++++++++++++ ...ting-gateway-lb-config.envoy-1-13-x.golden | 224 +++++++++++++++++ ...ting-gateway-lb-config.envoy-1-14-x.golden | 224 +++++++++++++++++ ...ting-gateway-lb-config.envoy-1-15-x.golden | 224 +++++++++++++++++ ...m-and-tagged-addresses.envoy-1-12-x.golden | 70 ++++-- ...m-and-tagged-addresses.envoy-1-13-x.golden | 70 ++++-- ...m-and-tagged-addresses.envoy-1-14-x.golden | 70 ++++-- ...m-and-tagged-addresses.envoy-1-15-x.golden | 70 ++++-- ...ng-gateway-no-api-cert.envoy-1-12-x.golden | 35 ++- ...ng-gateway-no-api-cert.envoy-1-13-x.golden | 35 ++- ...ng-gateway-no-api-cert.envoy-1-14-x.golden | 35 ++- ...ng-gateway-no-api-cert.envoy-1-15-x.golden | 35 ++- ...ateway-service-subsets.envoy-1-12-x.golden | 105 +++++--- ...ateway-service-subsets.envoy-1-13-x.golden | 105 +++++--- ...ateway-service-subsets.envoy-1-14-x.golden | 105 +++++--- ...ateway-service-subsets.envoy-1-15-x.golden | 105 +++++--- .../terminating-gateway.envoy-1-12-x.golden | 35 ++- .../terminating-gateway.envoy-1-13-x.golden | 35 ++- .../terminating-gateway.envoy-1-14-x.golden | 35 ++- .../terminating-gateway.envoy-1-15-x.golden | 35 ++- ...t-proxy-lb-in-resolver.envoy-1-12-x.golden | 61 +++++ ...t-proxy-lb-in-resolver.envoy-1-13-x.golden | 61 +++++ ...t-proxy-lb-in-resolver.envoy-1-14-x.golden | 61 +++++ ...t-proxy-lb-in-resolver.envoy-1-15-x.golden | 61 +++++ ...ingress-lb-in-resolver.envoy-1-12-x.golden | 62 +++++ ...ingress-lb-in-resolver.envoy-1-13-x.golden | 62 +++++ ...ingress-lb-in-resolver.envoy-1-14-x.golden | 62 +++++ ...ingress-lb-in-resolver.envoy-1-15-x.golden | 62 +++++ ...ting-gateway-lb-config.envoy-1-12-x.golden | 133 ++++++++++ ...ting-gateway-lb-config.envoy-1-13-x.golden | 133 ++++++++++ ...ting-gateway-lb-config.envoy-1-14-x.golden | 133 ++++++++++ ...ting-gateway-lb-config.envoy-1-15-x.golden | 133 ++++++++++ 54 files changed, 5719 insertions(+), 307 deletions(-) create mode 100644 agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-15-x.golden create mode 100644 agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden create mode 100644 agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden create mode 100644 agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden create mode 100644 agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden diff --git a/agent/proxycfg/testing.go b/agent/proxycfg/testing.go index a534b3a7c1..96a4c8749f 100644 --- a/agent/proxycfg/testing.go +++ b/agent/proxycfg/testing.go @@ -765,6 +765,10 @@ func TestConfigSnapshotDiscoveryChainWithRouter(t testing.T) *ConfigSnapshot { return testConfigSnapshotDiscoveryChain(t, "chain-and-router") } +func TestConfigSnapshotDiscoveryChainWithLB(t testing.T) *ConfigSnapshot { + return testConfigSnapshotDiscoveryChain(t, "lb-resolver") +} + func testConfigSnapshotDiscoveryChain(t testing.T, variation string, additionalEntries ...structs.ConfigEntry) *ConfigSnapshot { roots, leaf := TestCerts(t) @@ -1250,6 +1254,50 @@ func setupTestVariationConfigEntriesAndSnapshot( }, }, ) + case "lb-resolver": + entries = append(entries, + &structs.ProxyConfigEntry{ + Kind: structs.ProxyDefaults, + Name: structs.ProxyConfigGlobal, + Config: map[string]interface{}{ + "protocol": "http", + }, + }, + &structs.ServiceSplitterConfigEntry{ + Kind: structs.ServiceSplitter, + Name: "db", + Splits: []structs.ServiceSplit{ + {Weight: 95.5, Service: "something-else"}, + {Weight: 4.5, Service: "db"}, + }, + }, + &structs.ServiceResolverConfigEntry{ + Kind: structs.ServiceResolver, + Name: "db", + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 30, + }, + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldMatchValue: "chocolate-chip", + Terminal: true, + }, + { + Field: "header", + FieldMatchValue: "x-user-id", + }, + { + SourceAddress: true, + Terminal: true, + }, + }, + }, + }, + ) case "http-multiple-services": default: t.Fatalf("unexpected variation: %q", variation) @@ -1348,6 +1396,7 @@ func setupTestVariationConfigEntriesAndSnapshot( snap.WatchedUpstreamEndpoints["bar"] = map[string]structs.CheckServiceNodes{ "bar.default.dc1": TestUpstreamNodesAlternate(t), } + case "lb-resolver": default: t.Fatalf("unexpected variation: %q", variation) return ConfigSnapshotUpstreams{} @@ -1558,6 +1607,10 @@ func TestConfigSnapshotIngressGatewayNoServices(t testing.T) *ConfigSnapshot { return testConfigSnapshotIngressGateway(t, false, "tcp", "default") } +func TestConfigSnapshotIngressWithLB(t testing.T) *ConfigSnapshot { + return testConfigSnapshotIngressGateway(t, true, "http", "lb-resolver") +} + func TestConfigSnapshotIngressDiscoveryChainWithEntries(t testing.T, additionalEntries ...structs.ConfigEntry) *ConfigSnapshot { return testConfigSnapshotIngressGateway(t, true, "http", "simple", additionalEntries...) } @@ -1828,7 +1881,7 @@ func testConfigSnapshotTerminatingGateway(t testing.T, populateServices bool) *C snap.TerminatingGateway.ServiceConfigs = map[structs.ServiceName]*structs.ServiceConfigResponse{ web: { - ProxyConfig: map[string]interface{}{"protocol": "tcp"}, + ProxyConfig: map[string]interface{}{"protocol": "http"}, }, api: { ProxyConfig: map[string]interface{}{"protocol": "tcp"}, diff --git a/agent/xds/clusters.go b/agent/xds/clusters.go index 928fe930ef..8bad63b63f 100644 --- a/agent/xds/clusters.go +++ b/agent/xds/clusters.go @@ -16,6 +16,7 @@ import ( "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes" "github.com/golang/protobuf/ptypes/any" + "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" @@ -205,9 +206,13 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ clusterName := connect.ServiceSNI(svc.Name, "", svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) resolver, hasResolver := resolvers[svc] + var lb structs.LoadBalancer + if !hasResolver { // Use a zero value resolver with no timeout and no subsets resolver = &structs.ServiceResolverConfigEntry{} + } else { + lb = resolver.LoadBalancer } // When making service clusters we only pass endpoints with hostnames if the kind is a terminating gateway @@ -223,8 +228,23 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ } cluster := s.makeGatewayCluster(cfgSnap, opts) - if cfgSnap.Kind == structs.ServiceKindTerminatingGateway { + switch cfgSnap.Kind { + case structs.ServiceKindTerminatingGateway: injectTerminatingGatewayTLSContext(cfgSnap, cluster, svc) + + err := injectLBToCluster(lb, cluster) + if err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) + } + case structs.ServiceKindMeshGateway: + // We can't apply hash based LB config to mesh gateways because they rely on inspecting HTTP attributes + // and mesh gateways do not decrypt traffic + if !lb.IsHashBased() { + err := injectLBToCluster(lb, cluster) + if err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) + } + } } clusters = append(clusters, cluster) @@ -243,8 +263,23 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ } cluster := s.makeGatewayCluster(cfgSnap, opts) - if cfgSnap.Kind == structs.ServiceKindTerminatingGateway { + switch cfgSnap.Kind { + case structs.ServiceKindTerminatingGateway: injectTerminatingGatewayTLSContext(cfgSnap, cluster, svc) + + err := injectLBToCluster(lb, cluster) + if err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) + } + case structs.ServiceKindMeshGateway: + // We can't apply hash based LB config to mesh gateways because they rely on inspecting HTTP attributes + // and mesh gateways do not decrypt traffic + if !lb.IsHashBased() { + err := injectLBToCluster(lb, cluster) + if err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) + } + } } clusters = append(clusters, cluster) } @@ -421,7 +456,7 @@ func (s *Server) makeUpstreamClustersForDiscoveryChain( return nil, err } } else { - s.Logger.Warn("ignoring escape hatch setting, because a discovery chain is configued for", + s.Logger.Warn("ignoring escape hatch setting, because a discovery chain is configured for", "discovery chain", chain.ServiceName, "upstream", upstream.Identifier(), "envoy_cluster_json", chain.ServiceName) } @@ -481,6 +516,10 @@ func (s *Server) makeUpstreamClustersForDiscoveryChain( OutlierDetection: cfg.PassiveHealthCheck.AsOutlierDetection(), } + if err := injectLBToCluster(node.LoadBalancer, c); err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", sni, err) + } + proto := cfg.Protocol if proto == "" { proto = chain.Protocol @@ -518,6 +557,37 @@ func (s *Server) makeUpstreamClustersForDiscoveryChain( return out, nil } +func injectLBToCluster(l structs.LoadBalancer, c *envoy.Cluster) error { + switch l.Policy { + case "": + return nil + case "least_request": + c.LbPolicy = envoy.Cluster_LEAST_REQUEST + c.LbConfig = &envoy.Cluster_LeastRequestLbConfig_{ + LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ + ChoiceCount: &wrappers.UInt32Value{Value: l.LeastRequestConfig.ChoiceCount}, + }, + } + case "round_robin": + c.LbPolicy = envoy.Cluster_ROUND_ROBIN + case "random": + c.LbPolicy = envoy.Cluster_RANDOM + case "ring_hash": + c.LbPolicy = envoy.Cluster_RING_HASH + c.LbConfig = &envoy.Cluster_RingHashLbConfig_{ + RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ + MinimumRingSize: &wrappers.UInt64Value{Value: l.RingHashConfig.MinimumRingSize}, + MaximumRingSize: &wrappers.UInt64Value{Value: l.RingHashConfig.MaximumRingSize}, + }, + } + case "maglev": + c.LbPolicy = envoy.Cluster_MAGLEV + default: + return fmt.Errorf("unsupported load balancer policy %q for cluster %q", l.Policy, c.Name) + } + return nil +} + // makeClusterFromUserConfig returns the listener config decoded from an // arbitrary proto3 json format string or an error if it's invalid. // diff --git a/agent/xds/clusters_test.go b/agent/xds/clusters_test.go index 856ab67456..14714feb7b 100644 --- a/agent/xds/clusters_test.go +++ b/agent/xds/clusters_test.go @@ -2,6 +2,7 @@ package xds import ( "bytes" + "github.com/golang/protobuf/ptypes/wrappers" "path/filepath" "sort" "testing" @@ -230,6 +231,11 @@ func TestClustersFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshotDiscoveryChain_SplitterWithResolverRedirectMultiDC, setup: nil, }, + { + name: "connect-proxy-lb-in-resolver", + create: proxycfg.TestConfigSnapshotDiscoveryChainWithLB, + setup: nil, + }, { name: "expose-paths-local-app-paths", create: proxycfg.TestConfigSnapshotExposeConfig, @@ -344,6 +350,61 @@ func TestClustersFromSnapshot(t *testing.T) { } }, }, + { + name: "mesh-gateway-non-hash-lb-injected", + create: proxycfg.TestConfigSnapshotMeshGateway, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.MeshGateway.ServiceResolvers = map[structs.ServiceName]*structs.ServiceResolverConfigEntry{ + structs.NewServiceName("bar", nil): { + Kind: structs.ServiceResolver, + Name: "bar", + Subsets: map[string]structs.ServiceResolverSubset{ + "v1": { + Filter: "Service.Meta.Version == 1", + }, + "v2": { + Filter: "Service.Meta.Version == 2", + OnlyPassing: true, + }, + }, + LoadBalancer: structs.LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: structs.LeastRequestConfig{ + ChoiceCount: 5, + }, + }, + }, + } + }, + }, + { + name: "mesh-gateway-hash-lb-ignored", + create: proxycfg.TestConfigSnapshotMeshGateway, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.MeshGateway.ServiceResolvers = map[structs.ServiceName]*structs.ServiceResolverConfigEntry{ + structs.NewServiceName("bar", nil): { + Kind: structs.ServiceResolver, + Name: "bar", + Subsets: map[string]structs.ServiceResolverSubset{ + "v1": { + Filter: "Service.Meta.Version == 1", + }, + "v2": { + Filter: "Service.Meta.Version == 2", + OnlyPassing: true, + }, + }, + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 50, + }, + }, + }, + } + }, + }, { name: "ingress-gateway", create: proxycfg.TestConfigSnapshotIngressGateway, @@ -419,6 +480,11 @@ func TestClustersFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshotIngress_SplitterWithResolverRedirectMultiDC, setup: nil, }, + { + name: "ingress-lb-in-resolver", + create: proxycfg.TestConfigSnapshotIngressWithLB, + setup: nil, + }, { name: "terminating-gateway", create: proxycfg.TestConfigSnapshotTerminatingGateway, @@ -521,6 +587,35 @@ func TestClustersFromSnapshot(t *testing.T) { } }, }, + { + name: "terminating-gateway-lb-config", + create: proxycfg.TestConfigSnapshotTerminatingGateway, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.TerminatingGateway.ServiceResolvers = map[structs.ServiceName]*structs.ServiceResolverConfigEntry{ + structs.NewServiceName("web", nil): { + Kind: structs.ServiceResolver, + Name: "web", + DefaultSubset: "v2", + Subsets: map[string]structs.ServiceResolverSubset{ + "v1": { + Filter: "Service.Meta.Version == 1", + }, + "v2": { + Filter: "Service.Meta.Version == 2", + OnlyPassing: true, + }, + }, + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 50, + }, + }, + }, + } + }, + }, { name: "ingress-multiple-listeners-duplicate-service", create: proxycfg.TestConfigSnapshotIngress_MultipleListenersDuplicateService, @@ -707,7 +802,7 @@ var customAppClusterJSONTpl = `{ "hosts": [ { "socketAddress": { - "address": "127.0.0.1", + "address": "127.0.0.1", "portValue": 8080 } } @@ -739,3 +834,86 @@ func setupTLSRootsAndLeaf(t *testing.T, snap *proxycfg.ConfigSnapshot) { snap.Roots.Roots[0].RootCert = golden(t, "test-root-cert", "", "") } } + +func TestLoadBalancer_injectLBToCluster(t *testing.T) { + var tests = []struct { + name string + lb structs.LoadBalancer + expected envoy.Cluster + }{ + { + name: "skip empty", + lb: structs.LoadBalancer{ + Policy: "", + }, + expected: envoy.Cluster{}, + }, + { + name: "round_robin", + lb: structs.LoadBalancer{ + Policy: "round_robin", + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_ROUND_ROBIN}, + }, + { + name: "random", + lb: structs.LoadBalancer{ + Policy: "random", + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_RANDOM}, + }, + { + name: "maglev", + lb: structs.LoadBalancer{ + Policy: "maglev", + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_MAGLEV}, + }, + { + name: "ring_hash", + lb: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MinimumRingSize: 3, + MaximumRingSize: 7, + }, + }, + expected: envoy.Cluster{ + LbPolicy: envoy.Cluster_RING_HASH, + LbConfig: &envoy.Cluster_RingHashLbConfig_{ + RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ + MinimumRingSize: &wrappers.UInt64Value{Value: 3}, + MaximumRingSize: &wrappers.UInt64Value{Value: 7}, + }, + }, + }, + }, + { + name: "least_request", + lb: structs.LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: structs.LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + expected: envoy.Cluster{ + LbPolicy: envoy.Cluster_LEAST_REQUEST, + LbConfig: &envoy.Cluster_LeastRequestLbConfig_{ + LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ + ChoiceCount: &wrappers.UInt32Value{Value: 3}, + }, + }, + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + var c envoy.Cluster + err := injectLBToCluster(tc.lb, &c) + require.NoError(t, err) + + require.Equal(t, tc.expected, c) + }) + } +} diff --git a/agent/xds/listeners.go b/agent/xds/listeners.go index ae78ffa9dc..cfdfd4d7f3 100644 --- a/agent/xds/listeners.go +++ b/agent/xds/listeners.go @@ -820,7 +820,6 @@ func (s *Server) makeFilterChainTerminatingGateway( // HTTP filter to do intention checks here instead. statPrefix := fmt.Sprintf("terminating_gateway_%s_%s_", service.NamespaceOrDefault(), service.Name) opts := listenerFilterOpts{ - useRDS: false, protocol: protocol, filterName: listener, cluster: cluster, @@ -838,6 +837,9 @@ func (s *Server) makeFilterChainTerminatingGateway( if err != nil { return nil, err } + + opts.cluster = "" + opts.useRDS = true } filter, err := makeListenerFilter(opts) @@ -1283,11 +1285,12 @@ func makeEnvoyHTTPFilter(name string, cfg proto.Message) (*envoyhttp.HttpFilter, func makeCommonTLSContextFromLeaf(cfgSnap *proxycfg.ConfigSnapshot, leaf *structs.IssuedCert) *envoyauth.CommonTlsContext { // Concatenate all the root PEMs into one. - // TODO(banks): verify this actually works with Envoy (docs are not clear). - rootPEMS := "" if cfgSnap.Roots == nil { return nil } + + // TODO(banks): verify this actually works with Envoy (docs are not clear). + rootPEMS := "" for _, root := range cfgSnap.Roots.Roots { rootPEMS += root.RootCert } diff --git a/agent/xds/routes.go b/agent/xds/routes.go index a7660d1684..f7f991f7e6 100644 --- a/agent/xds/routes.go +++ b/agent/xds/routes.go @@ -11,6 +11,7 @@ import ( envoymatcher "github.com/envoyproxy/go-control-plane/envoy/type/matcher" "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes" + "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" ) @@ -24,28 +25,103 @@ func routesFromSnapshot(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) switch cfgSnap.Kind { case structs.ServiceKindConnectProxy: - return routesFromSnapshotConnectProxy(cInfo, cfgSnap) + return routesForConnectProxy(cInfo, cfgSnap.Proxy.Upstreams, cfgSnap.ConnectProxy.DiscoveryChain) case structs.ServiceKindIngressGateway: - return routesFromSnapshotIngressGateway(cInfo, cfgSnap) + return routesForIngressGateway(cInfo, cfgSnap.IngressGateway.Upstreams, cfgSnap.IngressGateway.DiscoveryChain) + case structs.ServiceKindTerminatingGateway: + return routesFromSnapshotTerminatingGateway(cInfo, cfgSnap) default: return nil, fmt.Errorf("Invalid service kind: %v", cfgSnap.Kind) } } -// routesFromSnapshotConnectProxy returns the xDS API representation of the -// "routes" in the snapshot. -func routesFromSnapshotConnectProxy(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { +// routesFromSnapshotTerminatingGateway returns the xDS API representation of the "routes" in the snapshot. +// For any HTTP service we will return a default route. +func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { if cfgSnap == nil { return nil, errors.New("nil config given") } var resources []proto.Message - for _, u := range cfgSnap.Proxy.Upstreams { + for svc := range cfgSnap.TerminatingGateway.ServiceGroups { + clusterName := connect.ServiceSNI(svc.Name, "", svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) + resolver, hasResolver := cfgSnap.TerminatingGateway.ServiceResolvers[svc] + + svcConfig := cfgSnap.TerminatingGateway.ServiceConfigs[svc] + + cfg, err := ParseProxyConfig(svcConfig.ProxyConfig) + if err != nil || cfg.Protocol != "http" { + // Routes can only be defined for HTTP services + continue + } + + if !hasResolver { + // Use a zero value resolver with no timeout and no subsets + resolver = &structs.ServiceResolverConfigEntry{} + } + route, err := makeNamedDefaultRouteWithLB(clusterName, resolver.LoadBalancer) + if err != nil { + continue + } + resources = append(resources, route) + + // If there is a service-resolver for this service then also setup routes for each subset + for name := range resolver.Subsets { + clusterName = connect.ServiceSNI(svc.Name, name, svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) + route, err := makeNamedDefaultRouteWithLB(clusterName, resolver.LoadBalancer) + if err != nil { + continue + } + resources = append(resources, route) + } + } + + // TODO(rb): make sure we don't generate an empty result + return resources, nil +} + +func makeNamedDefaultRouteWithLB(clusterName string, lb structs.LoadBalancer) (*envoy.RouteConfiguration, error) { + action := makeRouteActionFromName(clusterName) + if err := injectLBToRouteAction(lb, action.Route); err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) + } + + return &envoy.RouteConfiguration{ + Name: clusterName, + VirtualHosts: []*envoyroute.VirtualHost{ + { + Name: clusterName, + Domains: []string{"*"}, + Routes: []*envoyroute.Route{ + { + Match: makeDefaultRouteMatch(), + Action: action, + }, + }, + }, + }, + // ValidateClusters defaults to true when defined statically and false + // when done via RDS. Re-set the sane value of true to prevent + // null-routing traffic. + ValidateClusters: makeBoolValue(true), + }, nil +} + +// routesFromSnapshotConnectProxy returns the xDS API representation of the +// "routes" in the snapshot. +func routesForConnectProxy( + cInfo connectionInfo, + upstreams structs.Upstreams, + chains map[string]*structs.CompiledDiscoveryChain, +) ([]proto.Message, error) { + + var resources []proto.Message + for _, u := range upstreams { upstreamID := u.Identifier() var chain *structs.CompiledDiscoveryChain if u.DestinationType != structs.UpstreamDestTypePreparedQuery { - chain = cfgSnap.ConnectProxy.DiscoveryChain[upstreamID] + chain = chains[upstreamID] } if chain == nil || chain.IsDefault() { @@ -72,15 +148,16 @@ func routesFromSnapshotConnectProxy(cInfo connectionInfo, cfgSnap *proxycfg.Conf return resources, nil } -// routesFromSnapshotIngressGateway returns the xDS API representation of the +// routesForIngressGateway returns the xDS API representation of the // "routes" in the snapshot. -func routesFromSnapshotIngressGateway(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { - if cfgSnap == nil { - return nil, errors.New("nil config given") - } +func routesForIngressGateway( + cInfo connectionInfo, + upstreams map[proxycfg.IngressListenerKey]structs.Upstreams, + chains map[string]*structs.CompiledDiscoveryChain, +) ([]proto.Message, error) { var result []proto.Message - for listenerKey, upstreams := range cfgSnap.IngressGateway.Upstreams { + for listenerKey, upstreams := range upstreams { // Do not create any route configuration for TCP listeners if listenerKey.Protocol == "tcp" { continue @@ -95,7 +172,7 @@ func routesFromSnapshotIngressGateway(cInfo connectionInfo, cfgSnap *proxycfg.Co } for _, u := range upstreams { upstreamID := u.Identifier() - chain := cfgSnap.IngressGateway.DiscoveryChain[upstreamID] + chain := chains[upstreamID] if chain == nil { continue } @@ -193,8 +270,16 @@ func makeUpstreamRouteForDiscoveryChain( return nil, err } + if err := injectLBToRouteAction(nextNode.LoadBalancer, routeAction.Route); err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) + } + case structs.DiscoveryGraphNodeTypeResolver: - routeAction = makeRouteActionForSingleCluster(nextNode.Resolver.Target, chain) + routeAction = makeRouteActionForChainCluster(nextNode.Resolver.Target, chain) + + if err := injectLBToRouteAction(nextNode.LoadBalancer, routeAction.Route); err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) + } default: return nil, fmt.Errorf("unexpected graph node after route %q", nextNode.Type) @@ -247,6 +332,10 @@ func makeUpstreamRouteForDiscoveryChain( return nil, err } + if err := injectLBToRouteAction(startNode.LoadBalancer, routeAction.Route); err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) + } + defaultRoute := &envoyroute.Route{ Match: makeDefaultRouteMatch(), Action: routeAction, @@ -255,7 +344,11 @@ func makeUpstreamRouteForDiscoveryChain( routes = []*envoyroute.Route{defaultRoute} case structs.DiscoveryGraphNodeTypeResolver: - routeAction := makeRouteActionForSingleCluster(startNode.Resolver.Target, chain) + routeAction := makeRouteActionForChainCluster(startNode.Resolver.Target, chain) + + if err := injectLBToRouteAction(startNode.LoadBalancer, routeAction.Route); err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) + } defaultRoute := &envoyroute.Route{ Match: makeDefaultRouteMatch(), @@ -277,6 +370,62 @@ func makeUpstreamRouteForDiscoveryChain( return host, nil } +func injectLBToRouteAction(lb structs.LoadBalancer, action *envoyroute.RouteAction) error { + if !lb.IsHashBased() { + return nil + } + + result := make([]*envoyroute.RouteAction_HashPolicy, 0, len(lb.HashPolicies)) + for _, policy := range lb.HashPolicies { + if policy.SourceAddress { + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: policy.Terminal, + }) + + continue + } + + switch policy.Field { + case "header": + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: policy.FieldMatchValue, + }, + }, + Terminal: policy.Terminal, + }) + case "cookie": + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: policy.FieldMatchValue, + }, + }, + Terminal: policy.Terminal, + }) + case "query_parameter": + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_QueryParameter_{ + QueryParameter: &envoyroute.RouteAction_HashPolicy_QueryParameter{ + Name: policy.FieldMatchValue, + }, + }, + Terminal: policy.Terminal, + }) + default: + return fmt.Errorf("unsupported load balancer hash policy field: %v", policy.Field) + } + } + action.HashPolicy = result + return nil +} + func makeRouteMatchForDiscoveryRoute(_ connectionInfo, discoveryRoute *structs.DiscoveryRoute) *envoyroute.RouteMatch { match := discoveryRoute.Definition.Match if match == nil || match.IsEmpty() { @@ -409,11 +558,12 @@ func makeDefaultRouteMatch() *envoyroute.RouteMatch { } } -func makeRouteActionForSingleCluster(targetID string, chain *structs.CompiledDiscoveryChain) *envoyroute.Route_Route { +func makeRouteActionForChainCluster(targetID string, chain *structs.CompiledDiscoveryChain) *envoyroute.Route_Route { target := chain.Targets[targetID] + return makeRouteActionFromName(CustomizeClusterName(target.Name, chain)) +} - clusterName := CustomizeClusterName(target.Name, chain) - +func makeRouteActionFromName(clusterName string) *envoyroute.Route_Route { return &envoyroute.Route_Route{ Route: &envoyroute.RouteAction{ ClusterSpecifier: &envoyroute.RouteAction_Cluster{ diff --git a/agent/xds/routes_test.go b/agent/xds/routes_test.go index ba3d21e74f..7142ee4452 100644 --- a/agent/xds/routes_test.go +++ b/agent/xds/routes_test.go @@ -7,6 +7,7 @@ import ( "time" envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" + envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/consul/discoverychain" "github.com/hashicorp/consul/agent/proxycfg" @@ -67,6 +68,11 @@ func TestRoutesFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshotDiscoveryChainWithRouter, setup: nil, }, + { + name: "connect-proxy-lb-in-resolver", + create: proxycfg.TestConfigSnapshotDiscoveryChainWithLB, + setup: nil, + }, // TODO(rb): test match stanza skipped for grpc // Start ingress gateway test cases { @@ -109,6 +115,11 @@ func TestRoutesFromSnapshot(t *testing.T) { create: proxycfg.TestConfigSnapshotIngressWithRouter, setup: nil, }, + { + name: "ingress-lb-in-resolver", + create: proxycfg.TestConfigSnapshotIngressWithLB, + setup: nil, + }, { name: "ingress-http-multiple-services", create: proxycfg.TestConfigSnapshotIngress_HTTPMultipleServices, @@ -174,6 +185,50 @@ func TestRoutesFromSnapshot(t *testing.T) { } }, }, + { + name: "terminating-gateway-lb-config", + create: proxycfg.TestConfigSnapshotTerminatingGateway, + setup: func(snap *proxycfg.ConfigSnapshot) { + snap.TerminatingGateway.ServiceResolvers = map[structs.ServiceName]*structs.ServiceResolverConfigEntry{ + structs.NewServiceName("web", nil): { + Kind: structs.ServiceResolver, + Name: "web", + DefaultSubset: "v2", + Subsets: map[string]structs.ServiceResolverSubset{ + "v1": { + Filter: "Service.Meta.Version == 1", + }, + "v2": { + Filter: "Service.Meta.Version == 2", + OnlyPassing: true, + }, + }, + LoadBalancer: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 50, + }, + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldMatchValue: "chocolate-chip", + Terminal: true, + }, + { + Field: "header", + FieldMatchValue: "x-user-id", + }, + { + SourceAddress: true, + Terminal: true, + }, + }, + }, + }, + } + }, + }, } for _, envoyVersion := range proxysupport.EnvoyVersions { @@ -221,3 +276,178 @@ func TestRoutesFromSnapshot(t *testing.T) { }) } } + +func TestLoadBalancer_injectLBToRouteAction(t *testing.T) { + var tests = []struct { + name string + lb structs.LoadBalancer + expected envoyroute.RouteAction + }{ + { + name: "empty", + lb: structs.LoadBalancer{ + Policy: "", + }, + // we only modify route actions for hash-based LB policies + expected: envoyroute.RouteAction{}, + }, + { + name: "least_request", + lb: structs.LoadBalancer{ + Policy: "least_request", + LeastRequestConfig: structs.LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + // we only modify route actions for hash-based LB policies + expected: envoyroute.RouteAction{}, + }, + { + name: "header", + lb: structs.LoadBalancer{ + Policy: "ring_hash", + RingHashConfig: structs.RingHashConfig{ + MinimumRingSize: 3, + MaximumRingSize: 7, + }, + HashPolicies: []structs.HashPolicy{ + { + Field: "header", + FieldMatchValue: "x-route-key", + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: "x-route-key", + }, + }, + Terminal: true, + }, + }, + }, + }, + { + name: "cookies", + lb: structs.LoadBalancer{ + Policy: "maglev", + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldMatchValue: "red-velvet", + Terminal: true, + }, + { + Field: "cookie", + FieldMatchValue: "oatmeal", + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "red-velvet", + }, + }, + Terminal: true, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "oatmeal", + }, + }, + }, + }, + }, + }, + { + name: "source addr", + lb: structs.LoadBalancer{ + Policy: "maglev", + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: true, + }, + }, + }, + }, + { + name: "kitchen sink", + lb: structs.LoadBalancer{ + Policy: "maglev", + HashPolicies: []structs.HashPolicy{ + { + SourceAddress: true, + Terminal: true, + }, + { + Field: "cookie", + FieldMatchValue: "oatmeal", + }, + { + Field: "header", + FieldMatchValue: "special-header", + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: true, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "oatmeal", + }, + }, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: "special-header", + }, + }, + Terminal: true, + }, + }, + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + ra := &envoyroute.RouteAction{} + err := injectLBToRouteAction(tc.lb, ra) + require.NoError(t, err) + + require.Equal(t, &tc.expected, ra) + }) + } +} diff --git a/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-12-x.golden b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-12-x.golden new file mode 100644 index 0000000000..3f3749bcb2 --- /dev/null +++ b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-12-x.golden @@ -0,0 +1,175 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "local_app", + "type": "STATIC", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "local_app", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 8080 + } + } + } + } + ] + } + ] + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-13-x.golden b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-13-x.golden new file mode 100644 index 0000000000..3f3749bcb2 --- /dev/null +++ b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-13-x.golden @@ -0,0 +1,175 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "local_app", + "type": "STATIC", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "local_app", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 8080 + } + } + } + } + ] + } + ] + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-14-x.golden b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-14-x.golden new file mode 100644 index 0000000000..3f3749bcb2 --- /dev/null +++ b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-14-x.golden @@ -0,0 +1,175 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "local_app", + "type": "STATIC", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "local_app", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 8080 + } + } + } + } + ] + } + ] + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-15-x.golden b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-15-x.golden new file mode 100644 index 0000000000..3f3749bcb2 --- /dev/null +++ b/agent/xds/testdata/clusters/connect-proxy-lb-in-resolver.envoy-1-15-x.golden @@ -0,0 +1,175 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "geo-cache.default.dc1.query.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "local_app", + "type": "STATIC", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "local_app", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "127.0.0.1", + "portValue": 8080 + } + } + } + } + ] + } + ] + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-12-x.golden b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-12-x.golden new file mode 100644 index 0000000000..9e32743471 --- /dev/null +++ b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-12-x.golden @@ -0,0 +1,108 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-13-x.golden b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-13-x.golden new file mode 100644 index 0000000000..9e32743471 --- /dev/null +++ b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-13-x.golden @@ -0,0 +1,108 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-14-x.golden b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-14-x.golden new file mode 100644 index 0000000000..9e32743471 --- /dev/null +++ b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-14-x.golden @@ -0,0 +1,108 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-15-x.golden b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-15-x.golden new file mode 100644 index 0000000000..9e32743471 --- /dev/null +++ b/agent/xds/testdata/clusters/ingress-lb-in-resolver.envoy-1-15-x.golden @@ -0,0 +1,108 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "30" + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "altStatName": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "circuitBreakers": { + + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICjDCCAjKgAwIBAgIIC5llxGV1gB8wCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowDjEMMAoG\nA1UEAxMDd2ViMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEADPv1RHVNRfa2VKR\nAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Favq5E0ivpNtv1QnFhxtPd7d5k4e+T7\nSkW1TaOCAXIwggFuMA4GA1UdDwEB/wQEAwIDuDAdBgNVHSUEFjAUBggrBgEFBQcD\nAgYIKwYBBQUHAwEwDAYDVR0TAQH/BAIwADBoBgNVHQ4EYQRfN2Q6MDc6ODc6M2E6\nNDA6MTk6NDc6YzM6NWE6YzA6YmE6NjI6ZGY6YWY6NGI6ZDQ6MDU6MjU6NzY6M2Q6\nNWE6OGQ6MTY6OGQ6Njc6NWU6MmU6YTA6MzQ6N2Q6ZGM6ZmYwagYDVR0jBGMwYYBf\nZDE6MTE6MTE6YWM6MmE6YmE6OTc6YjI6M2Y6YWM6N2I6YmQ6ZGE6YmU6YjE6OGE6\nZmM6OWE6YmE6YjU6YmM6ODM6ZTc6NWU6NDE6NmY6ZjI6NzM6OTU6NTg6MGM6ZGIw\nWQYDVR0RBFIwUIZOc3BpZmZlOi8vMTExMTExMTEtMjIyMi0zMzMzLTQ0NDQtNTU1\nNTU1NTU1NTU1LmNvbnN1bC9ucy9kZWZhdWx0L2RjL2RjMS9zdmMvd2ViMAoGCCqG\nSM49BAMCA0gAMEUCIGC3TTvvjj76KMrguVyFf4tjOqaSCRie3nmHMRNNRav7AiEA\npY0heYeK9A6iOLrzqxSerkXXQyj5e9bE4VgUnxgPU6g=\n-----END CERTIFICATE-----\n" + }, + "privateKey": { + "inlineString": "-----BEGIN EC PRIVATE KEY-----\nMHcCAQEEIMoTkpRggp3fqZzFKh82yS4LjtJI+XY+qX/7DefHFrtdoAoGCCqGSM49\nAwEHoUQDQgAEADPv1RHVNRfa2VKRAB16b6rZnEt7tuhaxCFpQXPj7M2omb0B9Fav\nq5E0ivpNtv1QnFhxtPd7d5k4e+T7SkW1TQ==\n-----END EC PRIVATE KEY-----\n" + } + } + ], + "validationContext": { + "trustedCa": { + "inlineString": "-----BEGIN CERTIFICATE-----\nMIICXDCCAgKgAwIBAgIICpZq70Z9LyUwCgYIKoZIzj0EAwIwFDESMBAGA1UEAxMJ\nVGVzdCBDQSAyMB4XDTE5MDMyMjEzNTgyNloXDTI5MDMyMjEzNTgyNlowFDESMBAG\nA1UEAxMJVGVzdCBDQSAyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEIhywH1gx\nAsMwuF3ukAI5YL2jFxH6Usnma1HFSfVyxbXX1/uoZEYrj8yCAtdU2yoHETyd+Zx2\nThhRLP79pYegCaOCATwwggE4MA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTAD\nAQH/MGgGA1UdDgRhBF9kMToxMToxMTphYzoyYTpiYTo5NzpiMjozZjphYzo3Yjpi\nZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1ZTo0MTo2ZjpmMjo3\nMzo5NTo1ODowYzpkYjBqBgNVHSMEYzBhgF9kMToxMToxMTphYzoyYTpiYTo5Nzpi\nMjozZjphYzo3YjpiZDpkYTpiZTpiMTo4YTpmYzo5YTpiYTpiNTpiYzo4MzplNzo1\nZTo0MTo2ZjpmMjo3Mzo5NTo1ODowYzpkYjA/BgNVHREEODA2hjRzcGlmZmU6Ly8x\nMTExMTExMS0yMjIyLTMzMzMtNDQ0NC01NTU1NTU1NTU1NTUuY29uc3VsMAoGCCqG\nSM49BAMCA0gAMEUCICOY0i246rQHJt8o8Oya0D5PLL1FnmsQmQqIGCi31RwnAiEA\noR5f6Ku+cig2Il8T8LJujOp2/2A72QcHZA57B13y+8o=\n-----END CERTIFICATE-----\n" + } + } + }, + "sni": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + }, + "outlierDetection": { + + }, + "commonLbConfig": { + "healthyPanicThreshold": { + + } + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-12-x.golden new file mode 100644 index 0000000000..afc23f9ae1 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-12-x.golden @@ -0,0 +1,151 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-13-x.golden new file mode 100644 index 0000000000..afc23f9ae1 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-13-x.golden @@ -0,0 +1,151 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-14-x.golden new file mode 100644 index 0000000000..afc23f9ae1 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-14-x.golden @@ -0,0 +1,151 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-15-x.golden new file mode 100644 index 0000000000..afc23f9ae1 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-hash-lb-ignored.envoy-1-15-x.golden @@ -0,0 +1,151 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-12-x.golden new file mode 100644 index 0000000000..519c2d07f8 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-12-x.golden @@ -0,0 +1,163 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-13-x.golden new file mode 100644 index 0000000000..519c2d07f8 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-13-x.golden @@ -0,0 +1,163 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-14-x.golden new file mode 100644 index 0000000000..519c2d07f8 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-14-x.golden @@ -0,0 +1,163 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-15-x.golden new file mode 100644 index 0000000000..519c2d07f8 --- /dev/null +++ b/agent/xds/testdata/clusters/mesh-gateway-non-hash-lb-injected.envoy-1-15-x.golden @@ -0,0 +1,163 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc2.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc4.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-west-2.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "dc6.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "123.us-east-1.elb.notaws.com", + "portValue": 443 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "foo.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "LEAST_REQUEST", + "outlierDetection": { + + }, + "leastRequestLbConfig": { + "choiceCount": 5 + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-12-x.golden b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-12-x.golden new file mode 100644 index 0000000000..74d755a5d5 --- /dev/null +++ b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-12-x.golden @@ -0,0 +1,224 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "db.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-13-x.golden b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-13-x.golden new file mode 100644 index 0000000000..74d755a5d5 --- /dev/null +++ b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-13-x.golden @@ -0,0 +1,224 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "db.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-14-x.golden b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-14-x.golden new file mode 100644 index 0000000000..74d755a5d5 --- /dev/null +++ b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-14-x.golden @@ -0,0 +1,224 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "db.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-15-x.golden b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-15-x.golden new file mode 100644 index 0000000000..74d755a5d5 --- /dev/null +++ b/agent/xds/testdata/clusters/terminating-gateway-lb-config.envoy-1-15-x.golden @@ -0,0 +1,224 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "db.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "lbPolicy": "RING_HASH", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + }, + "ringHashLbConfig": { + "minimumRingSize": "20", + "maximumRingSize": "50" + } + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.Cluster", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden index 0164fc6359..72abeba6b0 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "foo" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_foo_tcp" + "stat_prefix": "terminating_gateway_default_web_foo_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -402,18 +417,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "wan" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_wan_tcp" + "stat_prefix": "terminating_gateway_default_web_wan_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden index 0164fc6359..72abeba6b0 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "foo" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_foo_tcp" + "stat_prefix": "terminating_gateway_default_web_foo_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -402,18 +417,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "wan" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_wan_tcp" + "stat_prefix": "terminating_gateway_default_web_wan_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden index 0164fc6359..72abeba6b0 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "foo" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_foo_tcp" + "stat_prefix": "terminating_gateway_default_web_foo_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -402,18 +417,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "wan" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_wan_tcp" + "stat_prefix": "terminating_gateway_default_web_wan_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden index 0164fc6359..72abeba6b0 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "foo" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_foo_tcp" + "stat_prefix": "terminating_gateway_default_web_foo_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -402,18 +417,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "wan" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_wan_tcp" + "stat_prefix": "terminating_gateway_default_web_wan_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden index bfb7ab050a..cb3860ef52 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden @@ -136,18 +136,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden index bfb7ab050a..cb3860ef52 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden @@ -136,18 +136,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden index bfb7ab050a..cb3860ef52 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden @@ -136,18 +136,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden index bfb7ab050a..cb3860ef52 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden @@ -136,18 +136,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden index c77782da28..c6ab6ce7c5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -230,18 +245,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -277,18 +307,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden index c77782da28..c6ab6ce7c5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -230,18 +245,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -277,18 +307,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden index c77782da28..c6ab6ce7c5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -230,18 +245,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -277,18 +307,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden index c77782da28..c6ab6ce7c5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -230,18 +245,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] @@ -277,18 +307,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden index eba577e6ce..3ef59ad7d5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden index eba577e6ce..3ef59ad7d5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden index eba577e6ce..3ef59ad7d5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden index eba577e6ce..3ef59ad7d5 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden @@ -183,18 +183,33 @@ }, "filters": [ { - "name": "envoy.filters.network.rbac", + "name": "envoy.http_connection_manager", "config": { - "rules": { + "http_filters": [ + { + "config": { + "rules": { + } + }, + "name": "envoy.filters.http.rbac" + }, + { + "name": "envoy.router" + } + ], + "rds": { + "config_source": { + "ads": { + } + }, + "route_config_name": "default" }, - "stat_prefix": "connect_authz" - } - }, - { - "name": "envoy.tcp_proxy", - "config": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "stat_prefix": "terminating_gateway_default_web_default_tcp" + "stat_prefix": "terminating_gateway_default_web_default_http", + "tracing": { + "operation_name": "EGRESS", + "random_sampling": { + } + } } } ] diff --git a/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-12-x.golden b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-12-x.golden new file mode 100644 index 0000000000..6fa9287ba7 --- /dev/null +++ b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-12-x.golden @@ -0,0 +1,61 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "db", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-13-x.golden b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-13-x.golden new file mode 100644 index 0000000000..6fa9287ba7 --- /dev/null +++ b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-13-x.golden @@ -0,0 +1,61 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "db", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-14-x.golden b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-14-x.golden new file mode 100644 index 0000000000..6fa9287ba7 --- /dev/null +++ b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-14-x.golden @@ -0,0 +1,61 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "db", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-15-x.golden b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-15-x.golden new file mode 100644 index 0000000000..6fa9287ba7 --- /dev/null +++ b/agent/xds/testdata/routes/connect-proxy-lb-in-resolver.envoy-1-15-x.golden @@ -0,0 +1,61 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "db", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-12-x.golden b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-12-x.golden new file mode 100644 index 0000000000..1dce540e7a --- /dev/null +++ b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-12-x.golden @@ -0,0 +1,62 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "9191", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "db.ingress.*", + "db.ingress.*:9191" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-13-x.golden b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-13-x.golden new file mode 100644 index 0000000000..1dce540e7a --- /dev/null +++ b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-13-x.golden @@ -0,0 +1,62 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "9191", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "db.ingress.*", + "db.ingress.*:9191" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-14-x.golden b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-14-x.golden new file mode 100644 index 0000000000..1dce540e7a --- /dev/null +++ b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-14-x.golden @@ -0,0 +1,62 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "9191", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "db.ingress.*", + "db.ingress.*:9191" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-15-x.golden b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-15-x.golden new file mode 100644 index 0000000000..1dce540e7a --- /dev/null +++ b/agent/xds/testdata/routes/ingress-lb-in-resolver.envoy-1-15-x.golden @@ -0,0 +1,62 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "9191", + "virtualHosts": [ + { + "name": "db", + "domains": [ + "db.ingress.*", + "db.ingress.*:9191" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "weightedClusters": { + "clusters": [ + { + "name": "something-else.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 9550 + }, + { + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "weight": 450 + } + ], + "totalWeight": 10000 + }, + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden new file mode 100644 index 0000000000..b611e2508d --- /dev/null +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden @@ -0,0 +1,133 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden new file mode 100644 index 0000000000..b611e2508d --- /dev/null +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden @@ -0,0 +1,133 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden new file mode 100644 index 0000000000..b611e2508d --- /dev/null +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden @@ -0,0 +1,133 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden new file mode 100644 index 0000000000..b611e2508d --- /dev/null +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden @@ -0,0 +1,133 @@ +{ + "versionInfo": "00000001", + "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + }, + { + "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "virtualHosts": [ + { + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "domains": [ + "*" + ], + "routes": [ + { + "match": { + "prefix": "/" + }, + "route": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] + } + } + ] + } + ], + "validateClusters": true + } + ], + "typeUrl": "type.googleapis.com/envoy.api.v2.RouteConfiguration", + "nonce": "00000001" +} \ No newline at end of file From 0236e169bb13b0c49fbc662c35270c5f28b2b327 Mon Sep 17 00:00:00 2001 From: freddygv Date: Fri, 28 Aug 2020 14:46:13 -0600 Subject: [PATCH 025/122] Add documentation for resolver LB cfg --- agent/structs/config_entry_discoverychain.go | 6 +- api/config_entry_discoverychain.go | 4 +- .../agent/config-entries/service-resolver.mdx | 68 ++++++++++++++++++- 3 files changed, 71 insertions(+), 7 deletions(-) diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index c87b46f00f..79a33cb48a 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -1028,10 +1028,10 @@ func (l LoadBalancer) IsHashBased() bool { // RingHashConfig contains configuration for the "ring_hash" policy type type RingHashConfig struct { - // MinimumRingSize determines the minimum number of hashes per destination host + // MinimumRingSize determines the minimum number of entries in the hash ring MinimumRingSize uint64 `json:",omitempty" alias:"minimum_ring_size"` - // MaximumRingSize determines the maximum number of hashes per destination host + // MaximumRingSize determines the maximum number of entries in the hash ring MaximumRingSize uint64 `json:",omitempty" alias:"maximum_ring_size"` } @@ -1058,7 +1058,7 @@ type HashPolicy struct { FieldMatchValue string `json:",omitempty" alias:"field_value"` // SourceAddress determines whether the hash should be of the source IP rather than of a field and field value. - // Cannot be specified along with Field and FieldMatchValue. + // Cannot be specified along with Field or FieldMatchValue. SourceAddress bool `json:",omitempty" alias:"source_address"` // Terminal will short circuit the computation of the hash when multiple hash policies are present. diff --git a/api/config_entry_discoverychain.go b/api/config_entry_discoverychain.go index 0bfd3dde2a..5e1636fe83 100644 --- a/api/config_entry_discoverychain.go +++ b/api/config_entry_discoverychain.go @@ -228,10 +228,10 @@ type LoadBalancer struct { // RingHashConfig contains configuration for the "ring_hash" policy type type RingHashConfig struct { - // MinimumRingSize determines the minimum number of hashes per destination host + // MinimumRingSize determines the minimum number of entries in the hash ring MinimumRingSize uint64 `json:",omitempty" alias:"minimum_ring_size"` - // MaximumRingSize determines the maximum number of hashes per destination host + // MaximumRingSize determines the maximum number of entries in the hash ring MaximumRingSize uint64 `json:",omitempty" alias:"maximum_ring_size"` } diff --git a/website/pages/docs/agent/config-entries/service-resolver.mdx b/website/pages/docs/agent/config-entries/service-resolver.mdx index 7c418604a4..d0cd549888 100644 --- a/website/pages/docs/agent/config-entries/service-resolver.mdx +++ b/website/pages/docs/agent/config-entries/service-resolver.mdx @@ -72,6 +72,23 @@ Kind = "service-resolver" Name = "web" ``` +Apply consistent load balancing for requests based on `x-user-id` header: + +```hcl +Kind = "service-resolver" +Name = "web" + +LoadBalancer = { + Policy = "maglev" + HashPolicies = [ + { + Field = "header" + FieldMatchValue = "x-user-id" + } + ] +} +``` + ## Available Fields - `Kind` - Must be set to `service-resolver` @@ -117,8 +134,8 @@ Name = "web" resolve instead of one defined as that service's DefaultSubset If empty the default subset is used. - If this is specified at least one of Service, Datacenter, or Namespace - should be configured. + If this is specified at least one of Service, Datacenter, or Namespace + should be configured. - `Namespace` `(string: "")` - The namespace to resolve the service from instead of the current one. @@ -149,6 +166,53 @@ Name = "web" - `Datacenters` `(array)` - A fixed list of datacenters to try during failover. + +- `LoadBalancer` `(LoadBalancer`) - Determines the load balancing policy and + configuration for services issuing requests to this upstream. + This option is available in Consul versions 1.8.4 and newer. + + **Note:** The options below are specific to Envoy proxy. + + - `Policy` `(string: "")` - The load balancing policy used to select a host. + One of: `random`, `round_robin`, `least_request`, `ring_hash`, `maglev`. + + - `RingHashConfig` `(RingHashConfig)` - Configuration for the `ring_hash` + policy type. + + - `MinimumRingRize` `(int: 1024)` - Determines the minimum number of entries + in the hash ring. + + - `MaximumRingRize` `(int: 8192)` - Determines the maximum number of entries + in the hash ring. + + - `LeastRequestConfig` `(LeastRequestConfig)` - Configuration for the `least_request` + policy type. + + - `ChoiceCount` `(int: 2)` - Determines the number of random healthy hosts + from which to select the one with the least requests. + + - `HashPolicies` `(array)` - a list of hash policies to use for + hashing load balancing algorithms. Hash policies are evaluated individually + and combined such that identical lists result in the same hash. + If no hash policies are present, or none are successfully evaluated, + then a random backend host will be selected. + + - `Field` `(string: "")` - The attribute type to hash on. + Must be one of `header`,`cookie`, or `query_parameter`. + Cannot be specified along with `SourceAddress`. + + - `FieldMatchValue` `(string: "")` - The value to hash. + ie. header name, cookie name, URL query parameter name. + Cannot be specified along with `SourceAddress`. + + - `SourceAddress` `(bool: false)` - Determines whether the hash should be of the source IP + address rather than of a field and field value. + Cannot be specified along with `Field` or `FieldMatchValue`. + + - `Terminal` `(bool: false)` - Will short circuit the computation of the hash + when multiple hash policies are present. If a hash is computed when a + Terminal policy is evaluated, then that hash will be used and subsequent + hash policies will be ignored. ## Service Subsets From 242c8dac6f204060029c5672ac728f456ecda0aa Mon Sep 17 00:00:00 2001 From: Pierre Souchay Date: Fri, 28 Aug 2020 23:01:04 +0200 Subject: [PATCH 026/122] Added changelog for #8552 --- .changelog/8552.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/8552.txt diff --git a/.changelog/8552.txt b/.changelog/8552.txt new file mode 100644 index 0000000000..aa4dc69aa0 --- /dev/null +++ b/.changelog/8552.txt @@ -0,0 +1,3 @@ +```release-note:feature +cache: Config parameters for cache throttling are now reloaded automatically on agent reload. Restarting the agent is not needed anymore. +``` From 91d680b8306d1ff9259e9fb6f79408a3a511d24e Mon Sep 17 00:00:00 2001 From: Matt Keeler Date: Mon, 31 Aug 2020 13:12:17 -0400 Subject: [PATCH 027/122] Merge of auto-config and auto-encrypt code (#8523) auto-encrypt is now handled as a special case of auto-config. This also is moving all the cert-monitor code into the auto-config package. --- agent/agent.go | 69 +- agent/auto-config/auto_config.go | 539 +++----- agent/auto-config/auto_config_test.go | 1307 +++++++++++++------- agent/auto-config/auto_encrypt.go | 111 ++ agent/auto-config/auto_encrypt_test.go | 562 +++++++++ agent/auto-config/config.go | 72 +- agent/auto-config/config_translate.go | 20 +- agent/auto-config/config_translate_test.go | 41 + agent/auto-config/mock_test.go | 337 +++++ agent/auto-config/persist.go | 86 ++ agent/auto-config/run.go | 192 +++ agent/auto-config/server_addr.go | 111 ++ agent/auto-config/tls.go | 280 +++++ agent/auto-config/tls_test.go | 56 + agent/cert-monitor/cert_monitor.go | 505 -------- agent/cert-monitor/cert_monitor_test.go | 731 ----------- agent/cert-monitor/config.go | 150 --- agent/consul/auto_encrypt.go | 239 ---- agent/consul/auto_encrypt_test.go | 205 --- agent/setup.go | 52 +- proto/translate.go | 14 +- proto/translate_test.go | 25 +- 22 files changed, 2934 insertions(+), 2770 deletions(-) create mode 100644 agent/auto-config/auto_encrypt.go create mode 100644 agent/auto-config/auto_encrypt_test.go create mode 100644 agent/auto-config/mock_test.go create mode 100644 agent/auto-config/persist.go create mode 100644 agent/auto-config/run.go create mode 100644 agent/auto-config/server_addr.go create mode 100644 agent/auto-config/tls.go create mode 100644 agent/auto-config/tls_test.go delete mode 100644 agent/cert-monitor/cert_monitor.go delete mode 100644 agent/cert-monitor/cert_monitor_test.go delete mode 100644 agent/cert-monitor/config.go delete mode 100644 agent/consul/auto_encrypt.go delete mode 100644 agent/consul/auto_encrypt_test.go diff --git a/agent/agent.go b/agent/agent.go index f6c7f34184..0c639da9a7 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -31,7 +31,6 @@ import ( autoconf "github.com/hashicorp/consul/agent/auto-config" "github.com/hashicorp/consul/agent/cache" cachetype "github.com/hashicorp/consul/agent/cache-types" - certmon "github.com/hashicorp/consul/agent/cert-monitor" "github.com/hashicorp/consul/agent/checks" "github.com/hashicorp/consul/agent/config" "github.com/hashicorp/consul/agent/consul" @@ -162,8 +161,6 @@ type notifier interface { type Agent struct { autoConf *autoconf.AutoConfig - certMonitor *certmon.CertMonitor - // config is the agent configuration. config *config.RuntimeConfig @@ -373,6 +370,11 @@ func New(bd BaseDeps) (*Agent, error) { // pass the agent itself so its safe to move here. a.registerCache() + // TODO: move to newBaseDeps + // TODO: handle error + a.loadTokens(a.config) + a.loadEnterpriseTokens(a.config) + return &a, nil } @@ -426,11 +428,6 @@ func (a *Agent) Start(ctx context.Context) error { return fmt.Errorf("Failed to load TLS configurations after applying auto-config settings: %w", err) } - // TODO: move to newBaseDeps - // TODO: handle error - a.loadTokens(a.config) - a.loadEnterpriseTokens(a.config) - // create the local state a.State = local.NewState(LocalConfig(c), a.logger, a.tokens) @@ -495,43 +492,6 @@ func (a *Agent) Start(ctx context.Context) error { a.State.Delegate = a.delegate a.State.TriggerSyncChanges = a.sync.SyncChanges.Trigger - if a.config.AutoEncryptTLS && !a.config.ServerMode { - reply, err := a.autoEncryptInitialCertificate(ctx) - if err != nil { - return fmt.Errorf("AutoEncrypt failed: %s", err) - } - - cmConfig := new(certmon.Config). - WithCache(a.cache). - WithLogger(a.logger.Named(logging.AutoEncrypt)). - WithTLSConfigurator(a.tlsConfigurator). - WithTokens(a.tokens). - WithFallback(a.autoEncryptInitialCertificate). - WithDNSSANs(a.config.AutoEncryptDNSSAN). - WithIPSANs(a.config.AutoEncryptIPSAN). - WithDatacenter(a.config.Datacenter). - WithNodeName(a.config.NodeName) - - monitor, err := certmon.New(cmConfig) - if err != nil { - return fmt.Errorf("AutoEncrypt failed to setup certificate monitor: %w", err) - } - if err := monitor.Update(reply); err != nil { - return fmt.Errorf("AutoEncrypt failed to setup certificate monitor: %w", err) - } - a.certMonitor = monitor - - // we don't need to worry about ever calling Stop as we have tied the go routines - // to the agents lifetime by using the StopCh. Also the agent itself doesn't have - // a need of ensuring that the go routine was stopped before performing any action - // so we can ignore the chan in the return. - if _, err := a.certMonitor.Start(&lib.StopChannelContext{StopCh: a.shutdownCh}); err != nil { - return fmt.Errorf("AutoEncrypt failed to start certificate monitor: %w", err) - } - - a.logger.Info("automatically upgraded to TLS") - } - if err := a.autoConf.Start(&lib.StopChannelContext{StopCh: a.shutdownCh}); err != nil { return fmt.Errorf("AutoConf failed to start certificate monitor: %w", err) } @@ -645,19 +605,6 @@ func (a *Agent) Start(ctx context.Context) error { return nil } -func (a *Agent) autoEncryptInitialCertificate(ctx context.Context) (*structs.SignedResponse, error) { - client := a.delegate.(*consul.Client) - - addrs := a.config.StartJoinAddrsLAN - disco, err := newDiscover() - if err != nil && len(addrs) == 0 { - return nil, err - } - addrs = append(addrs, retryJoinAddrs(disco, retryJoinSerfVariant, "LAN", a.config.RetryJoinLAN, a.logger)...) - - return client.RequestAutoEncryptCerts(ctx, addrs, a.config.ServerPort, a.tokens.AgentToken(), a.config.AutoEncryptDNSSAN, a.config.AutoEncryptIPSAN) -} - func (a *Agent) listenAndServeGRPC() error { if len(a.config.GRPCAddrs) < 1 { return nil @@ -1380,12 +1327,6 @@ func (a *Agent) ShutdownAgent() error { // this should help them to be stopped more quickly a.autoConf.Stop() - if a.certMonitor != nil { - // this would be cancelled anyways (by the closing of the shutdown ch) - // but this should help them to be stopped more quickly - a.certMonitor.Stop() - } - // Stop the service manager (must happen before we take the stateLock to avoid deadlock) if a.serviceManager != nil { a.serviceManager.Stop() diff --git a/agent/auto-config/auto_config.go b/agent/auto-config/auto_config.go index 939879a767..c2dd942c6c 100644 --- a/agent/auto-config/auto_config.go +++ b/agent/auto-config/auto_config.go @@ -4,62 +4,54 @@ import ( "context" "fmt" "io/ioutil" - "net" - "os" - "path/filepath" - "strconv" - "strings" + "sync" "time" + "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/agent/config" - "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/logging" "github.com/hashicorp/consul/proto/pbautoconf" - "github.com/hashicorp/go-discover" - discoverk8s "github.com/hashicorp/go-discover/provider/k8s" "github.com/hashicorp/go-hclog" - - "github.com/golang/protobuf/jsonpb" -) - -const ( - // autoConfigFileName is the name of the file that the agent auto-config settings are - // stored in within the data directory - autoConfigFileName = "auto-config.json" - - dummyTrustDomain = "dummytrustdomain" -) - -var ( - pbMarshaler = &jsonpb.Marshaler{ - OrigName: false, - EnumsAsInts: false, - Indent: " ", - EmitDefaults: true, - } - - pbUnmarshaler = &jsonpb.Unmarshaler{ - AllowUnknownFields: false, - } ) // AutoConfig is all the state necessary for being able to parse a configuration // as well as perform the necessary RPCs to perform Agent Auto Configuration. -// -// NOTE: This struct and methods on it are not currently thread/goroutine safe. -// However it doesn't spawn any of its own go routines yet and is used in a -// synchronous fashion. In the future if either of those two conditions change -// then we will need to add some locking here. I am deferring that for now -// to help ease the review of this already large PR. type AutoConfig struct { + sync.Mutex + acConfig Config logger hclog.Logger - certMonitor CertMonitor + cache Cache + waiter *lib.RetryWaiter config *config.RuntimeConfig autoConfigResponse *pbautoconf.AutoConfigResponse autoConfigSource config.Source + + running bool + done chan struct{} + // cancel is used to cancel the entire AutoConfig + // go routine. This is the main field protected + // by the mutex as it being non-nil indicates that + // the go routine has been started and is stoppable. + // note that it doesn't indcate that the go routine + // is currently running. + cancel context.CancelFunc + + // cancelWatches is used to cancel the existing + // cache watches regarding the agents certificate. This is + // mainly only necessary when the Agent token changes. + cancelWatches context.CancelFunc + + // cacheUpdates is the chan used to have the cache + // send us back events + cacheUpdates chan cache.UpdateEvent + + // tokenUpdates is the struct used to receive + // events from the token store when the Agent + // token is updated. + tokenUpdates token.Notifier } // New creates a new AutoConfig object for providing automatic Consul configuration. @@ -69,6 +61,19 @@ func New(config Config) (*AutoConfig, error) { return nil, fmt.Errorf("must provide a config loader") case config.DirectRPC == nil: return nil, fmt.Errorf("must provide a direct RPC delegate") + case config.Cache == nil: + return nil, fmt.Errorf("must provide a cache") + case config.TLSConfigurator == nil: + return nil, fmt.Errorf("must provide a TLS configurator") + case config.Tokens == nil: + return nil, fmt.Errorf("must provide a token store") + } + + if config.FallbackLeeway == 0 { + config.FallbackLeeway = 10 * time.Second + } + if config.FallbackRetry == 0 { + config.FallbackRetry = time.Minute } logger := config.Logger @@ -83,15 +88,16 @@ func New(config Config) (*AutoConfig, error) { } return &AutoConfig{ - acConfig: config, - logger: logger, - certMonitor: config.CertMonitor, + acConfig: config, + logger: logger, }, nil } // ReadConfig will parse the current configuration and inject any // auto-config sources if present into the correct place in the parsing chain. func (ac *AutoConfig) ReadConfig() (*config.RuntimeConfig, error) { + ac.Lock() + defer ac.Unlock() cfg, warnings, err := ac.acConfig.Loader(ac.autoConfigSource) if err != nil { return cfg, err @@ -105,46 +111,6 @@ func (ac *AutoConfig) ReadConfig() (*config.RuntimeConfig, error) { return cfg, nil } -// restorePersistedAutoConfig will attempt to load the persisted auto-config -// settings from the data directory. It returns true either when there was an -// unrecoverable error or when the configuration was successfully loaded from -// disk. Recoverable errors, such as "file not found" are suppressed and this -// method will return false for the first boolean. -func (ac *AutoConfig) restorePersistedAutoConfig() (bool, error) { - if ac.config.DataDir == "" { - // no data directory means we don't have anything to potentially load - return false, nil - } - - path := filepath.Join(ac.config.DataDir, autoConfigFileName) - ac.logger.Debug("attempting to restore any persisted configuration", "path", path) - - content, err := ioutil.ReadFile(path) - if err == nil { - rdr := strings.NewReader(string(content)) - - var resp pbautoconf.AutoConfigResponse - if err := pbUnmarshaler.Unmarshal(rdr, &resp); err != nil { - return false, fmt.Errorf("failed to decode persisted auto-config data: %w", err) - } - - if err := ac.update(&resp); err != nil { - return false, fmt.Errorf("error restoring persisted auto-config response: %w", err) - } - - ac.logger.Info("restored persisted configuration", "path", path) - return true, nil - } - - if !os.IsNotExist(err) { - return true, fmt.Errorf("failed to load %s: %w", path, err) - } - - // ignore non-existence errors as that is an indicator that we haven't - // performed the auto configuration before - return false, nil -} - // InitialConfiguration will perform a one-time RPC request to the configured servers // to retrieve various cluster wide configurations. See the proto/pbautoconf/auto_config.proto // file for a complete reference of what configurations can be applied in this manner. @@ -164,30 +130,49 @@ func (ac *AutoConfig) InitialConfiguration(ctx context.Context) (*config.Runtime ac.config = config } - if !ac.config.AutoConfig.Enabled { - return ac.config, nil - } - - ready, err := ac.restorePersistedAutoConfig() - if err != nil { - return nil, err - } - - if !ready { - ac.logger.Info("retrieving initial agent auto configuration remotely") - if err := ac.getInitialConfiguration(ctx); err != nil { + switch { + case ac.config.AutoConfig.Enabled: + resp, err := ac.readPersistedAutoConfig() + if err != nil { return nil, err } - } - // re-read the configuration now that we have our initial auto-config - config, err := ac.ReadConfig() - if err != nil { - return nil, err - } + if resp == nil { + ac.logger.Info("retrieving initial agent auto configuration remotely") + resp, err = ac.getInitialConfiguration(ctx) + if err != nil { + return nil, err + } + } - ac.config = config - return ac.config, nil + ac.logger.Debug("updating auto-config settings") + if err = ac.recordInitialConfiguration(resp); err != nil { + return nil, err + } + + // re-read the configuration now that we have our initial auto-config + config, err := ac.ReadConfig() + if err != nil { + return nil, err + } + + ac.config = config + return ac.config, nil + case ac.config.AutoEncryptTLS: + certs, err := ac.autoEncryptInitialCerts(ctx) + if err != nil { + return nil, err + } + + if err := ac.setInitialTLSCertificates(certs); err != nil { + return nil, err + } + + ac.logger.Info("automatically upgraded to TLS") + return ac.config, nil + default: + return ac.config, nil + } } // introToken is responsible for determining the correct intro token to use @@ -217,118 +202,45 @@ func (ac *AutoConfig) introToken() (string, error) { return token, nil } -// serverHosts is responsible for taking the list of server addresses and -// resolving any go-discover provider invocations. It will then return a list -// of hosts. These might be hostnames and is expected that DNS resolution may -// be performed after this function runs. Additionally these may contain ports -// so SplitHostPort could also be necessary. -func (ac *AutoConfig) serverHosts() ([]string, error) { - servers := ac.config.AutoConfig.ServerAddresses +// recordInitialConfiguration is responsible for recording the AutoConfigResponse from +// the AutoConfig.InitialConfiguration RPC. It is an all-in-one function to do the following +// * update the Agent token in the token store +func (ac *AutoConfig) recordInitialConfiguration(resp *pbautoconf.AutoConfigResponse) error { + ac.autoConfigResponse = resp - providers := make(map[string]discover.Provider) - for k, v := range discover.Providers { - providers[k] = v + ac.autoConfigSource = config.LiteralSource{ + Name: autoConfigFileName, + Config: translateConfig(resp.Config), } - providers["k8s"] = &discoverk8s.Provider{} - - disco, err := discover.New( - discover.WithUserAgent(lib.UserAgent()), - discover.WithProviders(providers), - ) + // we need to re-read the configuration to determine what the correct ACL + // token to push into the token store is. Any user provided token will override + // any AutoConfig generated token. + config, err := ac.ReadConfig() if err != nil { - return nil, fmt.Errorf("Failed to create go-discover resolver: %w", err) + return fmt.Errorf("failed to fully resolve configuration: %w", err) } - var addrs []string - for _, addr := range servers { - switch { - case strings.Contains(addr, "provider="): - resolved, err := disco.Addrs(addr, ac.logger.StandardLogger(&hclog.StandardLoggerOptions{InferLevels: true})) - if err != nil { - ac.logger.Error("failed to resolve go-discover auto-config servers", "configuration", addr, "err", err) - continue - } + // ignoring the return value which would indicate a change in the token + _ = ac.acConfig.Tokens.UpdateAgentToken(config.ACLAgentToken, token.TokenSourceConfig) - addrs = append(addrs, resolved...) - ac.logger.Debug("discovered auto-config servers", "servers", resolved) - default: - addrs = append(addrs, addr) - } - } - - if len(addrs) == 0 { - return nil, fmt.Errorf("no auto-config server addresses available for use") - } - - return addrs, nil -} - -// resolveHost will take a single host string and convert it to a list of TCPAddrs -// This will process any port in the input as well as looking up the hostname using -// normal DNS resolution. -func (ac *AutoConfig) resolveHost(hostPort string) []net.TCPAddr { - port := ac.config.ServerPort - host, portStr, err := net.SplitHostPort(hostPort) + // extra a structs.SignedResponse from the AutoConfigResponse for use in cache prepopulation + signed, err := extractSignedResponse(resp) if err != nil { - if strings.Contains(err.Error(), "missing port in address") { - host = hostPort - } else { - ac.logger.Warn("error splitting host address into IP and port", "address", hostPort, "error", err) - return nil - } - } else { - port, err = strconv.Atoi(portStr) - if err != nil { - ac.logger.Warn("Parsed port is not an integer", "port", portStr, "error", err) - return nil - } + return fmt.Errorf("failed to extract certificates from the auto-config response: %w", err) } - // resolve the host to a list of IPs - ips, err := net.LookupIP(host) - if err != nil { - ac.logger.Warn("IP resolution failed", "host", host, "error", err) - return nil + // prepopulate the cache + if err = ac.populateCertificateCache(signed); err != nil { + return fmt.Errorf("failed to populate the cache with certificate responses: %w", err) } - var addrs []net.TCPAddr - for _, ip := range ips { - addrs = append(addrs, net.TCPAddr{IP: ip, Port: port}) - } - - return addrs -} - -// recordResponse takes an AutoConfig RPC response records it with the agent -// This will persist the configuration to disk (unless in dev mode running without -// a data dir) and will reload the configuration. -func (ac *AutoConfig) recordResponse(resp *pbautoconf.AutoConfigResponse) error { - serialized, err := pbMarshaler.MarshalToString(resp) - if err != nil { - return fmt.Errorf("failed to encode auto-config response as JSON: %w", err) - } - - if err := ac.update(resp); err != nil { + // update the TLS configurator with the latest certificates + if err := ac.updateTLSFromResponse(resp); err != nil { return err } - // now that we know the configuration is generally fine including TLS certs go ahead and persist it to disk. - if ac.config.DataDir == "" { - ac.logger.Debug("not persisting auto-config settings because there is no data directory") - return nil - } - - path := filepath.Join(ac.config.DataDir, autoConfigFileName) - - err = ioutil.WriteFile(path, []byte(serialized), 0660) - if err != nil { - return fmt.Errorf("failed to write auto-config configurations: %w", err) - } - - ac.logger.Debug("auto-config settings were persisted to disk") - - return nil + return ac.persistAutoConfig(resp) } // getInitialConfigurationOnce will perform full server to TCPAddr resolution and @@ -352,7 +264,7 @@ func (ac *AutoConfig) getInitialConfigurationOnce(ctx context.Context, csr strin var resp pbautoconf.AutoConfigResponse - servers, err := ac.serverHosts() + servers, err := ac.autoConfigHosts() if err != nil { return nil, err } @@ -369,6 +281,7 @@ func (ac *AutoConfig) getInitialConfigurationOnce(ctx context.Context, csr strin ac.logger.Error("AutoConfig.InitialConfiguration RPC failed", "addr", addr.String(), "error", err) continue } + ac.logger.Debug("AutoConfig.InitialConfiguration RPC was successful") // update the Certificate with the private key we generated locally if resp.Certificate != nil { @@ -379,17 +292,17 @@ func (ac *AutoConfig) getInitialConfigurationOnce(ctx context.Context, csr strin } } - return nil, ctx.Err() + return nil, fmt.Errorf("No server successfully responded to the auto-config request") } // getInitialConfiguration implements a loop to retry calls to getInitialConfigurationOnce. // It uses the RetryWaiter on the AutoConfig object to control how often to attempt // the initial configuration process. It is also canceallable by cancelling the provided context. -func (ac *AutoConfig) getInitialConfiguration(ctx context.Context) error { +func (ac *AutoConfig) getInitialConfiguration(ctx context.Context) (*pbautoconf.AutoConfigResponse, error) { // generate a CSR csr, key, err := ac.generateCSR() if err != nil { - return err + return nil, err } // this resets the failures so that we will perform immediate request @@ -397,183 +310,95 @@ func (ac *AutoConfig) getInitialConfiguration(ctx context.Context) error { for { select { case <-wait: - resp, err := ac.getInitialConfigurationOnce(ctx, csr, key) - if resp != nil { - return ac.recordResponse(resp) + if resp, err := ac.getInitialConfigurationOnce(ctx, csr, key); err == nil && resp != nil { + return resp, nil } else if err != nil { ac.logger.Error(err.Error()) } else { - ac.logger.Error("No error returned when fetching the initial auto-configuration but no response was either") + ac.logger.Error("No error returned when fetching configuration from the servers but no response was either") } + wait = ac.acConfig.Waiter.Failed() case <-ctx.Done(): ac.logger.Info("interrupted during initial auto configuration", "err", ctx.Err()) - return ctx.Err() + return nil, ctx.Err() } } } -// generateCSR will generate a CSR for an Agent certificate. This should -// be sent along with the AutoConfig.InitialConfiguration RPC. The generated -// CSR does NOT have a real trust domain as when generating this we do -// not yet have the CA roots. The server will update the trust domain -// for us though. -func (ac *AutoConfig) generateCSR() (csr string, key string, err error) { - // We don't provide the correct host here, because we don't know any - // better at this point. Apart from the domain, we would need the - // ClusterID, which we don't have. This is why we go with - // dummyTrustDomain the first time. Subsequent CSRs will have the - // correct TrustDomain. - id := &connect.SpiffeIDAgent{ - // will be replaced - Host: dummyTrustDomain, - Datacenter: ac.config.Datacenter, - Agent: ac.config.NodeName, - } - - caConfig, err := ac.config.ConnectCAConfiguration() - if err != nil { - return "", "", fmt.Errorf("Cannot generate CSR: %w", err) - } - - conf, err := caConfig.GetCommonConfig() - if err != nil { - return "", "", fmt.Errorf("Failed to load common CA configuration: %w", err) - } - - if conf.PrivateKeyType == "" { - conf.PrivateKeyType = connect.DefaultPrivateKeyType - } - if conf.PrivateKeyBits == 0 { - conf.PrivateKeyBits = connect.DefaultPrivateKeyBits - } - - // Create a new private key - pk, pkPEM, err := connect.GeneratePrivateKeyWithConfig(conf.PrivateKeyType, conf.PrivateKeyBits) - if err != nil { - return "", "", fmt.Errorf("Failed to generate private key: %w", err) - } - - dnsNames := append([]string{"localhost"}, ac.config.AutoConfig.DNSSANs...) - ipAddresses := append([]net.IP{net.ParseIP("127.0.0.1"), net.ParseIP("::")}, ac.config.AutoConfig.IPSANs...) - - // Create a CSR. - // - // The Common Name includes the dummy trust domain for now but Server will - // override this when it is signed anyway so it's OK. - cn := connect.AgentCN(ac.config.NodeName, dummyTrustDomain) - csr, err = connect.CreateCSR(id, cn, pk, dnsNames, ipAddresses) - if err != nil { - return "", "", err - } - - return csr, pkPEM, nil -} - -// update will take an AutoConfigResponse and do all things necessary -// to restore those settings. This currently involves updating the -// config data to be used during a call to ReadConfig, updating the -// tls Configurator and prepopulating the cache. -func (ac *AutoConfig) update(resp *pbautoconf.AutoConfigResponse) error { - ac.autoConfigResponse = resp - - ac.autoConfigSource = config.LiteralSource{ - Name: autoConfigFileName, - Config: translateConfig(resp.Config), - } - - if err := ac.updateTLSFromResponse(resp); err != nil { - return err - } - - return nil -} - -// updateTLSFromResponse will update the TLS certificate and roots in the shared -// TLS configurator. -func (ac *AutoConfig) updateTLSFromResponse(resp *pbautoconf.AutoConfigResponse) error { - if ac.certMonitor == nil { - return nil - } - - roots, err := translateCARootsToStructs(resp.CARoots) - if err != nil { - return err - } - - cert, err := translateIssuedCertToStructs(resp.Certificate) - if err != nil { - return err - } - - update := &structs.SignedResponse{ - IssuedCert: *cert, - ConnectCARoots: *roots, - ManualCARoots: resp.ExtraCACertificates, - } - - if resp.Config != nil && resp.Config.TLS != nil { - update.VerifyServerHostname = resp.Config.TLS.VerifyServerHostname - } - - if err := ac.certMonitor.Update(update); err != nil { - return fmt.Errorf("failed to update the certificate monitor: %w", err) - } - - return nil -} - func (ac *AutoConfig) Start(ctx context.Context) error { - if ac.certMonitor == nil { + ac.Lock() + defer ac.Unlock() + + if !ac.config.AutoConfig.Enabled && !ac.config.AutoEncryptTLS { return nil } - if !ac.config.AutoConfig.Enabled { - return nil + if ac.running || ac.cancel != nil { + return fmt.Errorf("AutoConfig is already running") } - _, err := ac.certMonitor.Start(ctx) - return err + // create the top level context to control the go + // routine executing the `run` method + ctx, cancel := context.WithCancel(ctx) + + // create the channel to get cache update events through + // really we should only ever get 10 updates + ac.cacheUpdates = make(chan cache.UpdateEvent, 10) + + // setup the cache watches + cancelCertWatches, err := ac.setupCertificateCacheWatches(ctx) + if err != nil { + cancel() + return fmt.Errorf("error setting up cache watches: %w", err) + } + + // start the token update notifier + ac.tokenUpdates = ac.acConfig.Tokens.Notify(token.TokenKindAgent) + + // store the cancel funcs + ac.cancel = cancel + ac.cancelWatches = cancelCertWatches + + ac.running = true + ac.done = make(chan struct{}) + go ac.run(ctx, ac.done) + + ac.logger.Info("auto-config started") + return nil +} + +func (ac *AutoConfig) Done() <-chan struct{} { + ac.Lock() + defer ac.Unlock() + + if ac.done != nil { + return ac.done + } + + // return a closed channel to indicate that we are already done + done := make(chan struct{}) + close(done) + return done +} + +func (ac *AutoConfig) IsRunning() bool { + ac.Lock() + defer ac.Unlock() + return ac.running } func (ac *AutoConfig) Stop() bool { - if ac.certMonitor == nil { + ac.Lock() + defer ac.Unlock() + + if !ac.running { return false } - if !ac.config.AutoConfig.Enabled { - return false + if ac.cancel != nil { + ac.cancel() } - return ac.certMonitor.Stop() -} - -func (ac *AutoConfig) FallbackTLS(ctx context.Context) (*structs.SignedResponse, error) { - // generate a CSR - csr, key, err := ac.generateCSR() - if err != nil { - return nil, err - } - - resp, err := ac.getInitialConfigurationOnce(ctx, csr, key) - if err != nil { - return nil, err - } - - return extractSignedResponse(resp) -} - -func (ac *AutoConfig) RecordUpdatedCerts(resp *structs.SignedResponse) error { - var err error - ac.autoConfigResponse.ExtraCACertificates = resp.ManualCARoots - ac.autoConfigResponse.CARoots, err = translateCARootsToProtobuf(&resp.ConnectCARoots) - if err != nil { - return err - } - ac.autoConfigResponse.Certificate, err = translateIssuedCertToProtobuf(&resp.IssuedCert) - if err != nil { - return err - } - - return ac.recordResponse(ac.autoConfigResponse) + return true } diff --git a/agent/auto-config/auto_config_test.go b/agent/auto-config/auto_config_test.go index a421a45b75..e3469862a4 100644 --- a/agent/auto-config/auto_config_test.go +++ b/agent/auto-config/auto_config_test.go @@ -5,115 +5,146 @@ import ( "fmt" "io/ioutil" "net" + "os" "path/filepath" - "strings" + "sync" "testing" "time" - "github.com/gogo/protobuf/types" + "github.com/hashicorp/consul/agent/cache" + cachetype "github.com/hashicorp/consul/agent/cache-types" "github.com/hashicorp/consul/agent/config" + "github.com/hashicorp/consul/agent/connect" + "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/proto/pbautoconf" "github.com/hashicorp/consul/proto/pbconfig" - "github.com/hashicorp/consul/proto/pbconnect" "github.com/hashicorp/consul/sdk/testutil" + "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/stretchr/testify/mock" "github.com/stretchr/testify/require" ) -type mockDirectRPC struct { - mock.Mock +type configLoader struct { + opts config.BuilderOpts } -func (m *mockDirectRPC) RPC(dc string, node string, addr net.Addr, method string, args interface{}, reply interface{}) error { - var retValues mock.Arguments - if method == "AutoConfig.InitialConfiguration" { - req := args.(*pbautoconf.AutoConfigRequest) - csr := req.CSR - req.CSR = "" - retValues = m.Called(dc, node, addr, method, args, reply) - req.CSR = csr - } else { - retValues = m.Called(dc, node, addr, method, args, reply) - } +func (c *configLoader) Load(source config.Source) (*config.RuntimeConfig, []string, error) { + return config.Load(c.opts, source) +} - switch ret := retValues.Get(0).(type) { - case error: - return ret - case func(interface{}): - ret(reply) - return nil +func (c *configLoader) addConfigHCL(cfg string) { + c.opts.HCL = append(c.opts.HCL, cfg) +} + +func requireChanNotReady(t *testing.T, ch <-chan struct{}) { + select { + case <-ch: + require.Fail(t, "chan is ready when it shouldn't be") default: - return fmt.Errorf("This should not happen, update mock direct rpc expectations") + return } } -type mockCertMonitor struct { - mock.Mock -} - -func (m *mockCertMonitor) Start(_ context.Context) (<-chan struct{}, error) { - ret := m.Called() - ch := ret.Get(0).(<-chan struct{}) - return ch, ret.Error(1) -} - -func (m *mockCertMonitor) Stop() bool { - return m.Called().Bool(0) -} - -func (m *mockCertMonitor) Update(resp *structs.SignedResponse) error { - var privKey string - // filter out real certificates as we cannot predict their values - if resp != nil && strings.HasPrefix(resp.IssuedCert.PrivateKeyPEM, "-----BEGIN") { - privKey = resp.IssuedCert.PrivateKeyPEM - resp.IssuedCert.PrivateKeyPEM = "" +func requireChanReady(t *testing.T, ch <-chan struct{}) { + select { + case <-ch: + return + default: + require.Fail(t, "chan is not ready when it should be") } - err := m.Called(resp).Error(0) - if privKey != "" { - resp.IssuedCert.PrivateKeyPEM = privKey +} + +func waitForChan(timer *time.Timer, ch <-chan struct{}) bool { + select { + case <-timer.C: + return false + case <-ch: + return true } - return err +} + +func waitForChans(timeout time.Duration, chans ...<-chan struct{}) bool { + timer := time.NewTimer(timeout) + defer timer.Stop() + + for _, ch := range chans { + if !waitForChan(timer, ch) { + return false + } + } + return true } func TestNew(t *testing.T) { type testCase struct { - config Config + modify func(*Config) err string validate func(t *testing.T, ac *AutoConfig) } cases := map[string]testCase{ "no-direct-rpc": { - config: Config{ - Loader: func(source config.Source) (cfg *config.RuntimeConfig, warnings []string, err error) { - return nil, nil, nil - }, + modify: func(c *Config) { + c.DirectRPC = nil }, err: "must provide a direct RPC delegate", }, - "no-config-loader": { + modify: func(c *Config) { + c.Loader = nil + }, err: "must provide a config loader", }, - "ok": { - config: Config{ - DirectRPC: &mockDirectRPC{}, - Loader: func(source config.Source) (cfg *config.RuntimeConfig, warnings []string, err error) { - return nil, nil, nil - }, + "no-cache": { + modify: func(c *Config) { + c.Cache = nil }, + err: "must provide a cache", + }, + "no-tls-configurator": { + modify: func(c *Config) { + c.TLSConfigurator = nil + }, + err: "must provide a TLS configurator", + }, + "no-tokens": { + modify: func(c *Config) { + c.Tokens = nil + }, + err: "must provide a token store", + }, + "ok": { validate: func(t *testing.T, ac *AutoConfig) { t.Helper() require.NotNil(t, ac.logger) + require.NotNil(t, ac.acConfig.Waiter) + require.Equal(t, time.Minute, ac.acConfig.FallbackRetry) + require.Equal(t, 10*time.Second, ac.acConfig.FallbackLeeway) }, }, } for name, tcase := range cases { t.Run(name, func(t *testing.T) { - ac, err := New(tcase.config) + cfg := Config{ + Loader: func(source config.Source) (cfg *config.RuntimeConfig, warnings []string, err error) { + return nil, nil, nil + }, + DirectRPC: newMockDirectRPC(t), + Tokens: newMockTokenStore(t), + Cache: newMockCache(t), + TLSConfigurator: newMockTLSConfigurator(t), + ServerProvider: newMockServerProvider(t), + } + + if tcase.modify != nil { + tcase.modify(&cfg) + } + + ac, err := New(cfg) if tcase.err != "" { testutil.RequireErrorContains(t, err, tcase.err) } else { @@ -157,32 +188,34 @@ func TestReadConfig(t *testing.T) { require.Same(t, ac.config, cfg) } -func setupRuntimeConfig(t *testing.T) *config.RuntimeConfig { +func setupRuntimeConfig(t *testing.T) *configLoader { t.Helper() dataDir := testutil.TempDir(t, "auto-config") - rtConfig := &config.RuntimeConfig{ - DataDir: dataDir, - Datacenter: "dc1", - NodeName: "autoconf", - BindAddr: &net.IPAddr{IP: net.ParseIP("127.0.0.1")}, + + opts := config.BuilderOpts{ + Config: config.Config{ + DataDir: &dataDir, + Datacenter: stringPointer("dc1"), + NodeName: stringPointer("autoconf"), + BindAddr: stringPointer("127.0.0.1"), + }, } - return rtConfig + return &configLoader{opts: opts} } func TestInitialConfiguration_disabled(t *testing.T) { - rtConfig := setupRuntimeConfig(t) + loader := setupRuntimeConfig(t) + loader.addConfigHCL(` + primary_datacenter = "primary" + auto_config = { + enabled = false + } + `) + + conf := newMockedConfig(t).Config + conf.Loader = loader.Load - directRPC := new(mockDirectRPC) - directRPC.Test(t) - conf := Config{ - DirectRPC: directRPC, - Loader: func(source config.Source) (*config.RuntimeConfig, []string, error) { - rtConfig.PrimaryDatacenter = "primary" - rtConfig.AutoConfig.Enabled = false - return rtConfig, nil, nil - }, - } ac, err := New(conf) require.NoError(t, err) require.NotNil(t, ac) @@ -191,38 +224,34 @@ func TestInitialConfiguration_disabled(t *testing.T) { require.NoError(t, err) require.NotNil(t, cfg) require.Equal(t, "primary", cfg.PrimaryDatacenter) - require.NoFileExists(t, filepath.Join(rtConfig.DataDir, autoConfigFileName)) - - // ensure no RPC was made - directRPC.AssertExpectations(t) + require.NoFileExists(t, filepath.Join(*loader.opts.Config.DataDir, autoConfigFileName)) } func TestInitialConfiguration_cancelled(t *testing.T) { - rtConfig := setupRuntimeConfig(t) + mcfg := newMockedConfig(t) + + loader := setupRuntimeConfig(t) + loader.addConfigHCL(` + primary_datacenter = "primary" + auto_config = { + enabled = true + intro_token = "blarg" + server_addresses = ["127.0.0.1:8300"] + } + verify_outgoing = true + `) + mcfg.Config.Loader = loader.Load - directRPC := new(mockDirectRPC) - directRPC.Test(t) expectedRequest := pbautoconf.AutoConfigRequest{ Datacenter: "dc1", Node: "autoconf", JWT: "blarg", } - directRPC.On("RPC", "dc1", "autoconf", &net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 8300}, "AutoConfig.InitialConfiguration", &expectedRequest, mock.Anything).Return(fmt.Errorf("injected error")).Times(0) - conf := Config{ - DirectRPC: directRPC, - Loader: func(source config.Source) (*config.RuntimeConfig, []string, error) { - rtConfig.PrimaryDatacenter = "primary" - rtConfig.AutoConfig = config.AutoConfig{ - Enabled: true, - IntroToken: "blarg", - ServerAddresses: []string{"127.0.0.1:8300"}, - } - rtConfig.VerifyOutgoing = true - return rtConfig, nil, nil - }, - } - ac, err := New(conf) + mcfg.directRPC.On("RPC", "dc1", "autoconf", &net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 8300}, "AutoConfig.InitialConfiguration", &expectedRequest, mock.Anything).Return(fmt.Errorf("injected error")).Times(0) + mcfg.serverProvider.On("FindLANServer").Return(nil).Times(0) + + ac, err := New(mcfg.Config) require.NoError(t, err) require.NotNil(t, ac) @@ -232,110 +261,55 @@ func TestInitialConfiguration_cancelled(t *testing.T) { cfg, err := ac.InitialConfiguration(ctx) testutil.RequireErrorContains(t, err, context.DeadlineExceeded.Error()) require.Nil(t, cfg) - - // ensure no RPC was made - directRPC.AssertExpectations(t) } func TestInitialConfiguration_restored(t *testing.T) { - rtConfig := setupRuntimeConfig(t) + mcfg := newMockedConfig(t) + + loader := setupRuntimeConfig(t) + loader.addConfigHCL(` + auto_config = { + enabled = true + intro_token ="blarg" + server_addresses = ["127.0.0.1:8300"] + } + verify_outgoing = true + `) + + mcfg.Config.Loader = loader.Load + + indexedRoots, cert, extraCACerts := mcfg.setupInitialTLS(t, "autoconf", "dc1", "secret") // persist an auto config response to the data dir where it is expected - persistedFile := filepath.Join(rtConfig.DataDir, autoConfigFileName) + persistedFile := filepath.Join(*loader.opts.Config.DataDir, autoConfigFileName) response := &pbautoconf.AutoConfigResponse{ Config: &pbconfig.Config{ PrimaryDatacenter: "primary", TLS: &pbconfig.TLS{ VerifyServerHostname: true, }, - }, - CARoots: &pbconnect.CARoots{ - ActiveRootID: "active", - TrustDomain: "trust", - Roots: []*pbconnect.CARoot{ - { - ID: "active", - Name: "foo", - SerialNumber: 42, - SigningKeyID: "blarg", - NotBefore: &types.Timestamp{Seconds: 5000, Nanos: 100}, - NotAfter: &types.Timestamp{Seconds: 10000, Nanos: 9009}, - RootCert: "not an actual cert", - Active: true, + ACL: &pbconfig.ACL{ + Tokens: &pbconfig.ACLTokens{ + Agent: "secret", }, }, }, - Certificate: &pbconnect.IssuedCert{ - SerialNumber: "1234", - CertPEM: "not a cert", - PrivateKeyPEM: "private", - Agent: "foo", - AgentURI: "spiffe://blarg/agent/client/dc/foo/id/foo", - ValidAfter: &types.Timestamp{Seconds: 6000}, - ValidBefore: &types.Timestamp{Seconds: 7000}, - }, - ExtraCACertificates: []string{"blarg"}, + CARoots: mustTranslateCARootsToProtobuf(t, indexedRoots), + Certificate: mustTranslateIssuedCertToProtobuf(t, cert), + ExtraCACertificates: extraCACerts, } data, err := pbMarshaler.MarshalToString(response) require.NoError(t, err) require.NoError(t, ioutil.WriteFile(persistedFile, []byte(data), 0600)) - directRPC := new(mockDirectRPC) - directRPC.Test(t) + // recording the initial configuration even when restoring is going to update + // the agent token in the token store + mcfg.tokens.On("UpdateAgentToken", "secret", token.TokenSourceConfig).Return(true).Once() - // setup the mock certificate monitor to ensure that the initial state gets - // updated appropriately during config restoration. - certMon := new(mockCertMonitor) - certMon.Test(t) - certMon.On("Update", &structs.SignedResponse{ - IssuedCert: structs.IssuedCert{ - SerialNumber: "1234", - CertPEM: "not a cert", - PrivateKeyPEM: "private", - Agent: "foo", - AgentURI: "spiffe://blarg/agent/client/dc/foo/id/foo", - ValidAfter: time.Unix(6000, 0), - ValidBefore: time.Unix(7000, 0), - }, - ConnectCARoots: structs.IndexedCARoots{ - ActiveRootID: "active", - TrustDomain: "trust", - Roots: []*structs.CARoot{ - { - ID: "active", - Name: "foo", - SerialNumber: 42, - SigningKeyID: "blarg", - NotBefore: time.Unix(5000, 100), - NotAfter: time.Unix(10000, 9009), - RootCert: "not an actual cert", - Active: true, - // the decoding process doesn't leave this nil - IntermediateCerts: []string{}, - }, - }, - }, - ManualCARoots: []string{"blarg"}, - VerifyServerHostname: true, - }).Return(nil).Once() + // prepopulation is going to grab the token to populate the correct cache key + mcfg.tokens.On("AgentToken").Return("secret").Times(0) - conf := Config{ - DirectRPC: directRPC, - Loader: func(source config.Source) (*config.RuntimeConfig, []string, error) { - if err := setPrimaryDatacenterFromSource(rtConfig, source); err != nil { - return nil, nil, err - } - rtConfig.AutoConfig = config.AutoConfig{ - Enabled: true, - IntroToken: "blarg", - ServerAddresses: []string{"127.0.0.1:8300"}, - } - rtConfig.VerifyOutgoing = true - return rtConfig, nil, nil - }, - CertMonitor: certMon, - } - ac, err := New(conf) + ac, err := New(mcfg.Config) require.NoError(t, err) require.NotNil(t, ac) @@ -343,64 +317,51 @@ func TestInitialConfiguration_restored(t *testing.T) { require.NoError(t, err, data) require.NotNil(t, cfg) require.Equal(t, "primary", cfg.PrimaryDatacenter) - - // ensure no RPC was made - directRPC.AssertExpectations(t) - certMon.AssertExpectations(t) -} - -func setPrimaryDatacenterFromSource(rtConfig *config.RuntimeConfig, source config.Source) error { - if source != nil { - cfg, _, err := source.Parse() - if err != nil { - return err - } - rtConfig.PrimaryDatacenter = *cfg.PrimaryDatacenter - } - return nil } func TestInitialConfiguration_success(t *testing.T) { - rtConfig := setupRuntimeConfig(t) + mcfg := newMockedConfig(t) + loader := setupRuntimeConfig(t) + loader.addConfigHCL(` + auto_config = { + enabled = true + intro_token ="blarg" + server_addresses = ["127.0.0.1:8300"] + } + verify_outgoing = true + `) + mcfg.Config.Loader = loader.Load - directRPC := new(mockDirectRPC) - directRPC.Test(t) + indexedRoots, cert, extraCerts := mcfg.setupInitialTLS(t, "autoconf", "dc1", "secret") - populateResponse := func(val interface{}) { - resp, ok := val.(*pbautoconf.AutoConfigResponse) + // this gets called when InitialConfiguration is invoked to record the token from the + // auto-config response + mcfg.tokens.On("UpdateAgentToken", "secret", token.TokenSourceConfig).Return(true).Once() + + // prepopulation is going to grab the token to populate the correct cache key + mcfg.tokens.On("AgentToken").Return("secret").Times(0) + + // no server provider + mcfg.serverProvider.On("FindLANServer").Return(nil).Times(0) + + populateResponse := func(args mock.Arguments) { + resp, ok := args.Get(5).(*pbautoconf.AutoConfigResponse) require.True(t, ok) resp.Config = &pbconfig.Config{ PrimaryDatacenter: "primary", TLS: &pbconfig.TLS{ VerifyServerHostname: true, }, - } - - resp.CARoots = &pbconnect.CARoots{ - ActiveRootID: "active", - TrustDomain: "trust", - Roots: []*pbconnect.CARoot{ - { - ID: "active", - Name: "foo", - SerialNumber: 42, - SigningKeyID: "blarg", - NotBefore: &types.Timestamp{Seconds: 5000, Nanos: 100}, - NotAfter: &types.Timestamp{Seconds: 10000, Nanos: 9009}, - RootCert: "not an actual cert", - Active: true, + ACL: &pbconfig.ACL{ + Tokens: &pbconfig.ACLTokens{ + Agent: "secret", }, }, } - resp.Certificate = &pbconnect.IssuedCert{ - SerialNumber: "1234", - CertPEM: "not a cert", - Agent: "foo", - AgentURI: "spiffe://blarg/agent/client/dc/foo/id/foo", - ValidAfter: &types.Timestamp{Seconds: 6000}, - ValidBefore: &types.Timestamp{Seconds: 7000}, - } - resp.ExtraCACertificates = []string{"blarg"} + + resp.CARoots = mustTranslateCARootsToProtobuf(t, indexedRoots) + resp.Certificate = mustTranslateIssuedCertToProtobuf(t, cert) + resp.ExtraCACertificates = extraCerts } expectedRequest := pbautoconf.AutoConfigRequest{ @@ -409,66 +370,16 @@ func TestInitialConfiguration_success(t *testing.T) { JWT: "blarg", } - directRPC.On( + mcfg.directRPC.On( "RPC", "dc1", "autoconf", &net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 8300}, "AutoConfig.InitialConfiguration", &expectedRequest, - &pbautoconf.AutoConfigResponse{}).Return(populateResponse) + &pbautoconf.AutoConfigResponse{}).Return(nil).Run(populateResponse) - // setup the mock certificate monitor to ensure that the initial state gets - // updated appropriately during config restoration. - certMon := new(mockCertMonitor) - certMon.Test(t) - certMon.On("Update", &structs.SignedResponse{ - IssuedCert: structs.IssuedCert{ - SerialNumber: "1234", - CertPEM: "not a cert", - PrivateKeyPEM: "", // the mock - Agent: "foo", - AgentURI: "spiffe://blarg/agent/client/dc/foo/id/foo", - ValidAfter: time.Unix(6000, 0), - ValidBefore: time.Unix(7000, 0), - }, - ConnectCARoots: structs.IndexedCARoots{ - ActiveRootID: "active", - TrustDomain: "trust", - Roots: []*structs.CARoot{ - { - ID: "active", - Name: "foo", - SerialNumber: 42, - SigningKeyID: "blarg", - NotBefore: time.Unix(5000, 100), - NotAfter: time.Unix(10000, 9009), - RootCert: "not an actual cert", - Active: true, - }, - }, - }, - ManualCARoots: []string{"blarg"}, - VerifyServerHostname: true, - }).Return(nil).Once() - - conf := Config{ - DirectRPC: directRPC, - Loader: func(source config.Source) (*config.RuntimeConfig, []string, error) { - if err := setPrimaryDatacenterFromSource(rtConfig, source); err != nil { - return nil, nil, err - } - rtConfig.AutoConfig = config.AutoConfig{ - Enabled: true, - IntroToken: "blarg", - ServerAddresses: []string{"127.0.0.1:8300"}, - } - rtConfig.VerifyOutgoing = true - return rtConfig, nil, nil - }, - CertMonitor: certMon, - } - ac, err := New(conf) + ac, err := New(mcfg.Config) require.NoError(t, err) require.NotNil(t, ac) @@ -478,26 +389,61 @@ func TestInitialConfiguration_success(t *testing.T) { require.Equal(t, "primary", cfg.PrimaryDatacenter) // the file was written to. - persistedFile := filepath.Join(rtConfig.DataDir, autoConfigFileName) + persistedFile := filepath.Join(*loader.opts.Config.DataDir, autoConfigFileName) require.FileExists(t, persistedFile) - - // ensure no RPC was made - directRPC.AssertExpectations(t) - certMon.AssertExpectations(t) } func TestInitialConfiguration_retries(t *testing.T) { - rtConfig := setupRuntimeConfig(t) + mcfg := newMockedConfig(t) + loader := setupRuntimeConfig(t) + loader.addConfigHCL(` + auto_config = { + enabled = true + intro_token ="blarg" + server_addresses = [ + "198.18.0.1:8300", + "198.18.0.2:8398", + "198.18.0.3:8399", + "127.0.0.1:1234" + ] + } + verify_outgoing = true + `) + mcfg.Config.Loader = loader.Load - directRPC := new(mockDirectRPC) - directRPC.Test(t) + // reduce the retry wait times to make this test run faster + mcfg.Config.Waiter = lib.NewRetryWaiter(2, 0, 1*time.Millisecond, nil) - populateResponse := func(val interface{}) { - resp, ok := val.(*pbautoconf.AutoConfigResponse) + indexedRoots, cert, extraCerts := mcfg.setupInitialTLS(t, "autoconf", "dc1", "secret") + + // this gets called when InitialConfiguration is invoked to record the token from the + // auto-config response + mcfg.tokens.On("UpdateAgentToken", "secret", token.TokenSourceConfig).Return(true).Once() + + // prepopulation is going to grab the token to populate the correct cache key + mcfg.tokens.On("AgentToken").Return("secret").Times(0) + + // no server provider + mcfg.serverProvider.On("FindLANServer").Return(nil).Times(0) + + populateResponse := func(args mock.Arguments) { + resp, ok := args.Get(5).(*pbautoconf.AutoConfigResponse) require.True(t, ok) resp.Config = &pbconfig.Config{ PrimaryDatacenter: "primary", + TLS: &pbconfig.TLS{ + VerifyServerHostname: true, + }, + ACL: &pbconfig.ACL{ + Tokens: &pbconfig.ACLTokens{ + Agent: "secret", + }, + }, } + + resp.CARoots = mustTranslateCARootsToProtobuf(t, indexedRoots) + resp.Certificate = mustTranslateIssuedCertToProtobuf(t, cert) + resp.ExtraCACertificates = extraCerts } expectedRequest := pbautoconf.AutoConfigRequest{ @@ -509,7 +455,7 @@ func TestInitialConfiguration_retries(t *testing.T) { // basically the 198.18.0.* addresses should fail indefinitely. the first time through the // outer loop we inject a failure for the DNS resolution of localhost to 127.0.0.1. Then // the second time through the outer loop we allow the localhost one to work. - directRPC.On( + mcfg.directRPC.On( "RPC", "dc1", "autoconf", @@ -517,7 +463,7 @@ func TestInitialConfiguration_retries(t *testing.T) { "AutoConfig.InitialConfiguration", &expectedRequest, &pbautoconf.AutoConfigResponse{}).Return(fmt.Errorf("injected failure")).Times(0) - directRPC.On( + mcfg.directRPC.On( "RPC", "dc1", "autoconf", @@ -525,7 +471,7 @@ func TestInitialConfiguration_retries(t *testing.T) { "AutoConfig.InitialConfiguration", &expectedRequest, &pbautoconf.AutoConfigResponse{}).Return(fmt.Errorf("injected failure")).Times(0) - directRPC.On( + mcfg.directRPC.On( "RPC", "dc1", "autoconf", @@ -533,7 +479,7 @@ func TestInitialConfiguration_retries(t *testing.T) { "AutoConfig.InitialConfiguration", &expectedRequest, &pbautoconf.AutoConfigResponse{}).Return(fmt.Errorf("injected failure")).Times(0) - directRPC.On( + mcfg.directRPC.On( "RPC", "dc1", "autoconf", @@ -541,37 +487,16 @@ func TestInitialConfiguration_retries(t *testing.T) { "AutoConfig.InitialConfiguration", &expectedRequest, &pbautoconf.AutoConfigResponse{}).Return(fmt.Errorf("injected failure")).Once() - directRPC.On( + mcfg.directRPC.On( "RPC", "dc1", "autoconf", &net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 1234}, "AutoConfig.InitialConfiguration", &expectedRequest, - &pbautoconf.AutoConfigResponse{}).Return(populateResponse) + &pbautoconf.AutoConfigResponse{}).Return(nil).Run(populateResponse).Once() - conf := Config{ - DirectRPC: directRPC, - Loader: func(source config.Source) (*config.RuntimeConfig, []string, error) { - if err := setPrimaryDatacenterFromSource(rtConfig, source); err != nil { - return nil, nil, err - } - rtConfig.AutoConfig = config.AutoConfig{ - Enabled: true, - IntroToken: "blarg", - ServerAddresses: []string{ - "198.18.0.1:8300", - "198.18.0.2:8398", - "198.18.0.3:8399", - "127.0.0.1:1234", - }, - } - rtConfig.VerifyOutgoing = true - return rtConfig, nil, nil - }, - Waiter: lib.NewRetryWaiter(2, 0, 1*time.Millisecond, nil), - } - ac, err := New(conf) + ac, err := New(mcfg.Config) require.NoError(t, err) require.NotNil(t, ac) @@ -581,102 +506,548 @@ func TestInitialConfiguration_retries(t *testing.T) { require.Equal(t, "primary", cfg.PrimaryDatacenter) // the file was written to. - persistedFile := filepath.Join(rtConfig.DataDir, autoConfigFileName) + persistedFile := filepath.Join(*loader.opts.Config.DataDir, autoConfigFileName) require.FileExists(t, persistedFile) - - // ensure no RPC was made - directRPC.AssertExpectations(t) } -func TestAutoConfig_StartStop(t *testing.T) { - // currently the only thing running for autoconf is just the cert monitor - // so this test only needs to ensure that the cert monitor is started and - // stopped and not that anything with regards to running the cert monitor - // actually work. Those are tested in the cert-monitor package. +func TestGoRoutineManagement(t *testing.T) { + mcfg := newMockedConfig(t) + loader := setupRuntimeConfig(t) + loader.addConfigHCL(` + auto_config = { + enabled = true + intro_token ="blarg" + server_addresses = ["127.0.0.1:8300"] + } + verify_outgoing = true + `) + mcfg.Config.Loader = loader.Load - rtConfig := setupRuntimeConfig(t) + // prepopulation is going to grab the token to populate the correct cache key + mcfg.tokens.On("AgentToken").Return("secret").Times(0) - directRPC := &mockDirectRPC{} - directRPC.Test(t) - certMon := &mockCertMonitor{} - certMon.Test(t) + ac, err := New(mcfg.Config) + require.NoError(t, err) - certMon.On("Start").Return((<-chan struct{})(nil), nil).Once() - certMon.On("Stop").Return(true).Once() + // priming the config so some other requests will work properly that need to + // read from the configuration. We are going to avoid doing InitialConfiguration + // for this test as we only are really concerned with the go routine management + _, err = ac.ReadConfig() + require.NoError(t, err) - conf := Config{ - DirectRPC: directRPC, - Loader: func(source config.Source) (*config.RuntimeConfig, []string, error) { - rtConfig.AutoConfig = config.AutoConfig{ - Enabled: true, - IntroToken: "blarg", - ServerAddresses: []string{ - "198.18.0.1", - "198.18.0.2:8398", - "198.18.0.3:8399", - "127.0.0.1:1234", - }, - } - rtConfig.VerifyOutgoing = true - return rtConfig, nil, nil - }, - CertMonitor: certMon, + var rootsCtx context.Context + var leafCtx context.Context + var ctxLock sync.Mutex + + rootsReq := ac.caRootsRequest() + mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCARootName, + &rootsReq, + rootsWatchID, + mock.Anything, + ).Return(nil).Times(2).Run(func(args mock.Arguments) { + ctxLock.Lock() + rootsCtx = args.Get(0).(context.Context) + ctxLock.Unlock() + }) + + leafReq := ac.leafCertRequest() + mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCALeafName, + &leafReq, + leafWatchID, + mock.Anything, + ).Return(nil).Times(2).Run(func(args mock.Arguments) { + ctxLock.Lock() + leafCtx = args.Get(0).(context.Context) + ctxLock.Unlock() + }) + + // we will start/stop things twice + mcfg.tokens.On("Notify", token.TokenKindAgent).Return(token.Notifier{}).Times(2) + mcfg.tokens.On("StopNotify", token.Notifier{}).Times(2) + + mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(time.Now().Add(10 * time.Minute)).Times(0) + + // ensure that auto-config isn't running + require.False(t, ac.IsRunning()) + + // ensure that nothing bad happens and that it reports as stopped + require.False(t, ac.Stop()) + + // ensure that the Done chan also reports that things are not running + // in other words the chan is immediately selectable + requireChanReady(t, ac.Done()) + + // start auto-config + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + require.NoError(t, ac.Start(ctx)) + + waitForContexts := func() bool { + ctxLock.Lock() + defer ctxLock.Unlock() + return !(rootsCtx == nil || leafCtx == nil) } - ac, err := New(conf) - require.NoError(t, err) - require.NotNil(t, ac) - cfg, err := ac.ReadConfig() - require.NoError(t, err) - ac.config = cfg - require.NoError(t, ac.Start(context.Background())) + // wait for the cache notifications to get started + require.Eventually(t, waitForContexts, 100*time.Millisecond, 10*time.Millisecond) + + // hold onto the Done chan to test for the go routine exiting + done := ac.Done() + + // ensure we report as running + require.True(t, ac.IsRunning()) + + // ensure the done chan is not selectable yet + requireChanNotReady(t, done) + + // ensure we error if we attempt to start again + err = ac.Start(ctx) + testutil.RequireErrorContains(t, err, "AutoConfig is already running") + + // now stop things - it should return true indicating that it was running + // when we attempted to stop it. require.True(t, ac.Stop()) - certMon.AssertExpectations(t) - directRPC.AssertExpectations(t) + // ensure that the go routine shuts down - it will close the done chan. Also it should cancel + // the cache watches by cancelling the context it passed into the Notify call. + require.True(t, waitForChans(100*time.Millisecond, done, leafCtx.Done(), rootsCtx.Done()), "AutoConfig didn't shut down") + require.False(t, ac.IsRunning()) + + // restart it + require.NoError(t, ac.Start(ctx)) + + // get the new Done chan + done = ac.Done() + + // ensure that context cancellation causes us to stop as well + cancel() + require.True(t, waitForChans(100*time.Millisecond, done)) } -func TestFallBackTLS(t *testing.T) { - rtConfig := setupRuntimeConfig(t) +type testAutoConfig struct { + mcfg *mockedConfig + ac *AutoConfig + tokenUpdates chan struct{} + originalToken string - directRPC := new(mockDirectRPC) - directRPC.Test(t) + initialRoots *structs.IndexedCARoots + initialCert *structs.IssuedCert + extraCerts []string +} - populateResponse := func(val interface{}) { - resp, ok := val.(*pbautoconf.AutoConfigResponse) +func startedAutoConfig(t *testing.T, autoEncrypt bool) testAutoConfig { + t.Helper() + mcfg := newMockedConfig(t) + loader := setupRuntimeConfig(t) + if !autoEncrypt { + loader.addConfigHCL(` + auto_config = { + enabled = true + intro_token ="blarg" + server_addresses = ["127.0.0.1:8300"] + } + verify_outgoing = true + `) + } else { + loader.addConfigHCL(` + auto_encrypt { + tls = true + } + verify_outgoing = true + `) + } + mcfg.Config.Loader = loader.Load + mcfg.Config.FallbackLeeway = time.Nanosecond + + originalToken := "a5deaa25-11ca-48bf-a979-4c3a7aa4b9a9" + + if !autoEncrypt { + // this gets called when InitialConfiguration is invoked to record the token from the + // auto-config response + mcfg.tokens.On("UpdateAgentToken", originalToken, token.TokenSourceConfig).Return(true).Once() + } + + // we expect this to be retrieved twice: first during cache prepopulation + // and then again when setting up the cache watch for the leaf cert. + // However one of those expectations is setup in the expectInitialTLS + // method so we only need one more here + mcfg.tokens.On("AgentToken").Return(originalToken).Once() + + if autoEncrypt { + // when using AutoEncrypt we also have to grab the token once more + // when setting up the initial RPC as the ACL token is what is used + // to authorize the request. + mcfg.tokens.On("AgentToken").Return(originalToken).Once() + } + + // this is called once during Start to initialze the token watches + tokenUpdateCh := make(chan struct{}) + tokenNotifier := token.Notifier{ + Ch: tokenUpdateCh, + } + mcfg.tokens.On("Notify", token.TokenKindAgent).Once().Return(tokenNotifier) + mcfg.tokens.On("StopNotify", tokenNotifier).Once() + + // expect the roots watch on the cache + mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCARootName, + &structs.DCSpecificRequest{Datacenter: "dc1"}, + rootsWatchID, + mock.Anything, + ).Return(nil).Once() + + mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCALeafName, + &cachetype.ConnectCALeafRequest{ + Datacenter: "dc1", + Agent: "autoconf", + Token: originalToken, + DNSSAN: defaultDNSSANs, + IPSAN: defaultIPSANs, + }, + leafWatchID, + mock.Anything, + ).Return(nil).Once() + + // override the server provider - most of the other tests set it up so that this + // always returns no server (simulating a state where we haven't joined gossip). + // this seems like a good place to ensure this other way of finding server information + // works + mcfg.serverProvider.On("FindLANServer").Once().Return(&metadata.Server{ + Addr: &net.TCPAddr{IP: net.IPv4(198, 18, 0, 1), Port: 8300}, + }) + + indexedRoots, cert, extraCerts := mcfg.setupInitialTLS(t, "autoconf", "dc1", originalToken) + + mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(cert.ValidBefore).Once() + + populateResponse := func(args mock.Arguments) { + method := args.String(3) + + switch method { + case "AutoConfig.InitialConfiguration": + resp, ok := args.Get(5).(*pbautoconf.AutoConfigResponse) + require.True(t, ok) + resp.Config = &pbconfig.Config{ + PrimaryDatacenter: "primary", + TLS: &pbconfig.TLS{ + VerifyServerHostname: true, + }, + ACL: &pbconfig.ACL{ + Tokens: &pbconfig.ACLTokens{ + Agent: originalToken, + }, + }, + } + + resp.CARoots = mustTranslateCARootsToProtobuf(t, indexedRoots) + resp.Certificate = mustTranslateIssuedCertToProtobuf(t, cert) + resp.ExtraCACertificates = extraCerts + case "AutoEncrypt.Sign": + resp, ok := args.Get(5).(*structs.SignedResponse) + require.True(t, ok) + *resp = structs.SignedResponse{ + VerifyServerHostname: true, + ConnectCARoots: *indexedRoots, + IssuedCert: *cert, + ManualCARoots: extraCerts, + } + } + } + + if !autoEncrypt { + expectedRequest := pbautoconf.AutoConfigRequest{ + Datacenter: "dc1", + Node: "autoconf", + JWT: "blarg", + } + + mcfg.directRPC.On( + "RPC", + "dc1", + "autoconf", + &net.TCPAddr{IP: net.IPv4(198, 18, 0, 1), Port: 8300}, + "AutoConfig.InitialConfiguration", + &expectedRequest, + &pbautoconf.AutoConfigResponse{}).Return(nil).Run(populateResponse).Once() + } else { + expectedRequest := structs.CASignRequest{ + WriteRequest: structs.WriteRequest{Token: originalToken}, + Datacenter: "dc1", + // TODO (autoconf) Maybe in the future we should populate a CSR + // and do some manual parsing/verification of the contents. The + // bits not having to do with the signing key such as the requested + // SANs and CN. For now though the mockDirectRPC type will empty + // the CSR so we have to pass in an empty string to the expectation. + CSR: "", + } + + mcfg.directRPC.On( + "RPC", + "dc1", + "autoconf", // reusing the same name to prevent needing more configurability + &net.TCPAddr{IP: net.IPv4(198, 18, 0, 1), Port: 8300}, + "AutoEncrypt.Sign", + &expectedRequest, + &structs.SignedResponse{}).Return(nil).Run(populateResponse) + } + + ac, err := New(mcfg.Config) + require.NoError(t, err) + require.NotNil(t, ac) + + cfg, err := ac.InitialConfiguration(context.Background()) + require.NoError(t, err) + require.NotNil(t, cfg) + if !autoEncrypt { + // auto-encrypt doesn't modify the config but rather sets the value + // in the TLS configurator + require.True(t, cfg.VerifyServerHostname) + } + + ctx, cancel := context.WithCancel(context.Background()) + require.NoError(t, ac.Start(ctx)) + t.Cleanup(func() { + done := ac.Done() + cancel() + timer := time.NewTimer(1 * time.Second) + defer timer.Stop() + select { + case <-done: + // do nothing + case <-timer.C: + t.Fatalf("AutoConfig wasn't stopped within 1 second after test completion") + } + }) + + return testAutoConfig{ + mcfg: mcfg, + ac: ac, + tokenUpdates: tokenUpdateCh, + originalToken: originalToken, + initialRoots: indexedRoots, + initialCert: cert, + extraCerts: extraCerts, + } +} + +// this test ensures that the cache watches are restarted with +// the updated token after receiving a token update +func TestTokenUpdate(t *testing.T) { + testAC := startedAutoConfig(t, false) + + newToken := "1a4cc445-86ed-46b4-a355-bbf5a11dddb0" + + rootsCtx, rootsCancel := context.WithCancel(context.Background()) + testAC.mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCARootName, + &structs.DCSpecificRequest{Datacenter: testAC.ac.config.Datacenter}, + rootsWatchID, + mock.Anything, + ).Return(nil).Once().Run(func(args mock.Arguments) { + rootsCancel() + }) + + leafCtx, leafCancel := context.WithCancel(context.Background()) + testAC.mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCALeafName, + &cachetype.ConnectCALeafRequest{ + Datacenter: "dc1", + Agent: "autoconf", + Token: newToken, + DNSSAN: defaultDNSSANs, + IPSAN: defaultIPSANs, + }, + leafWatchID, + mock.Anything, + ).Return(nil).Once().Run(func(args mock.Arguments) { + leafCancel() + }) + + // this will be retrieved once when resetting the leaf cert watch + testAC.mcfg.tokens.On("AgentToken").Return(newToken).Once() + + // send the notification about the token update + testAC.tokenUpdates <- struct{}{} + + // wait for the leaf cert watches + require.True(t, waitForChans(100*time.Millisecond, leafCtx.Done(), rootsCtx.Done()), "New cache watches were not started within 100ms") +} + +func TestRootsUpdate(t *testing.T) { + testAC := startedAutoConfig(t, false) + + secondCA := connect.TestCA(t, testAC.initialRoots.Roots[0]) + secondRoots := structs.IndexedCARoots{ + ActiveRootID: secondCA.ID, + TrustDomain: connect.TestClusterID, + Roots: []*structs.CARoot{ + secondCA, + testAC.initialRoots.Roots[0], + }, + QueryMeta: structs.QueryMeta{ + Index: 99, + }, + } + + updatedCtx, cancel := context.WithCancel(context.Background()) + testAC.mcfg.tlsCfg.On("UpdateAutoTLS", + testAC.extraCerts, + []string{secondCA.RootCert, testAC.initialRoots.Roots[0].RootCert}, + testAC.initialCert.CertPEM, + "redacted", + true, + ).Return(nil).Once().Run(func(args mock.Arguments) { + cancel() + }) + + // when a cache event comes in we end up recalculating the fallback timer which requires this call + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(time.Now().Add(10 * time.Minute)).Once() + + req := structs.DCSpecificRequest{Datacenter: "dc1"} + require.True(t, testAC.mcfg.cache.sendNotification(context.Background(), req.CacheInfo().Key, cache.UpdateEvent{ + CorrelationID: rootsWatchID, + Result: &secondRoots, + Meta: cache.ResultMeta{ + Index: secondRoots.Index, + }, + })) + + require.True(t, waitForChans(100*time.Millisecond, updatedCtx.Done()), "TLS certificates were not updated within the alotted time") + + // persisting these to disk happens right after the chan we are waiting for will have fired above + // however there is no deterministic way to know once its been written outside of maybe a filesystem + // event notifier. That seems a little heavy handed just for this and especially to do in any sort + // of cross platform way. + retry.Run(t, func(r *retry.R) { + resp, err := testAC.ac.readPersistedAutoConfig() + require.NoError(r, err) + require.Equal(r, secondRoots.ActiveRootID, resp.CARoots.GetActiveRootID()) + }) +} + +func TestCertUpdate(t *testing.T) { + testAC := startedAutoConfig(t, false) + secondCert := newLeaf(t, "autoconf", "dc1", testAC.initialRoots.Roots[0], 99, 10*time.Minute) + + updatedCtx, cancel := context.WithCancel(context.Background()) + testAC.mcfg.tlsCfg.On("UpdateAutoTLS", + testAC.extraCerts, + []string{testAC.initialRoots.Roots[0].RootCert}, + secondCert.CertPEM, + "redacted", + true, + ).Return(nil).Once().Run(func(args mock.Arguments) { + cancel() + }) + + // when a cache event comes in we end up recalculating the fallback timer which requires this call + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(secondCert.ValidBefore).Once() + + req := cachetype.ConnectCALeafRequest{ + Datacenter: "dc1", + Agent: "autoconf", + Token: testAC.originalToken, + DNSSAN: defaultDNSSANs, + IPSAN: defaultIPSANs, + } + require.True(t, testAC.mcfg.cache.sendNotification(context.Background(), req.CacheInfo().Key, cache.UpdateEvent{ + CorrelationID: leafWatchID, + Result: secondCert, + Meta: cache.ResultMeta{ + Index: secondCert.ModifyIndex, + }, + })) + + require.True(t, waitForChans(100*time.Millisecond, updatedCtx.Done()), "TLS certificates were not updated within the alotted time") + + // persisting these to disk happens after all the things we would wait for in assertCertUpdated + // will have fired. There is no deterministic way to know once its been written so we wrap + // this in a retry. + retry.Run(t, func(r *retry.R) { + resp, err := testAC.ac.readPersistedAutoConfig() + require.NoError(r, err) + + // ensure the roots got persisted to disk + require.Equal(r, secondCert.CertPEM, resp.Certificate.GetCertPEM()) + }) +} + +func TestFallback(t *testing.T) { + testAC := startedAutoConfig(t, false) + + // at this point everything is operating normally and we are just + // waiting for events. We are going to send a new cert that is basically + // already expired and then allow the fallback routine to kick in. + secondCert := newLeaf(t, "autoconf", "dc1", testAC.initialRoots.Roots[0], 100, time.Nanosecond) + secondCA := connect.TestCA(t, testAC.initialRoots.Roots[0]) + secondRoots := structs.IndexedCARoots{ + ActiveRootID: secondCA.ID, + TrustDomain: connect.TestClusterID, + Roots: []*structs.CARoot{ + secondCA, + testAC.initialRoots.Roots[0], + }, + QueryMeta: structs.QueryMeta{ + Index: 101, + }, + } + thirdCert := newLeaf(t, "autoconf", "dc1", secondCA, 102, 10*time.Minute) + + // setup the expectation for when the certs got updated initially + updatedCtx, updateCancel := context.WithCancel(context.Background()) + testAC.mcfg.tlsCfg.On("UpdateAutoTLS", + testAC.extraCerts, + []string{testAC.initialRoots.Roots[0].RootCert}, + secondCert.CertPEM, + "redacted", + true, + ).Return(nil).Once().Run(func(args mock.Arguments) { + updateCancel() + }) + + // when a cache event comes in we end up recalculating the fallback timer which requires this call + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(secondCert.ValidBefore).Once() + testAC.mcfg.tlsCfg.On("AutoEncryptCertExpired").Return(true).Once() + + fallbackCtx, fallbackCancel := context.WithCancel(context.Background()) + + // also testing here that we can change server IPs for ongoing operations + testAC.mcfg.serverProvider.On("FindLANServer").Once().Return(&metadata.Server{ + Addr: &net.TCPAddr{IP: net.IPv4(198, 18, 23, 2), Port: 8300}, + }) + + // after sending the notification for the cert update another InitialConfiguration RPC + // will be made to pull down the latest configuration. So we need to set up the response + // for the second RPC + populateResponse := func(args mock.Arguments) { + resp, ok := args.Get(5).(*pbautoconf.AutoConfigResponse) require.True(t, ok) resp.Config = &pbconfig.Config{ PrimaryDatacenter: "primary", TLS: &pbconfig.TLS{ VerifyServerHostname: true, }, - } - - resp.CARoots = &pbconnect.CARoots{ - ActiveRootID: "active", - TrustDomain: "trust", - Roots: []*pbconnect.CARoot{ - { - ID: "active", - Name: "foo", - SerialNumber: 42, - SigningKeyID: "blarg", - NotBefore: &types.Timestamp{Seconds: 5000, Nanos: 100}, - NotAfter: &types.Timestamp{Seconds: 10000, Nanos: 9009}, - RootCert: "not an actual cert", - Active: true, + ACL: &pbconfig.ACL{ + Tokens: &pbconfig.ACLTokens{ + Agent: testAC.originalToken, }, }, } - resp.Certificate = &pbconnect.IssuedCert{ - SerialNumber: "1234", - CertPEM: "not a cert", - Agent: "foo", - AgentURI: "spiffe://blarg/agent/client/dc/foo/id/foo", - ValidAfter: &types.Timestamp{Seconds: 6000}, - ValidBefore: &types.Timestamp{Seconds: 7000}, - } - resp.ExtraCACertificates = []string{"blarg"} + + resp.CARoots = mustTranslateCARootsToProtobuf(t, &secondRoots) + resp.Certificate = mustTranslateIssuedCertToProtobuf(t, thirdCert) + resp.ExtraCACertificates = testAC.extraCerts + + fallbackCancel() } expectedRequest := pbautoconf.AutoConfigRequest{ @@ -685,76 +1056,118 @@ func TestFallBackTLS(t *testing.T) { JWT: "blarg", } - directRPC.On( + testAC.mcfg.directRPC.On( "RPC", "dc1", "autoconf", - &net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 8300}, + &net.TCPAddr{IP: net.IPv4(198, 18, 23, 2), Port: 8300}, "AutoConfig.InitialConfiguration", &expectedRequest, - &pbautoconf.AutoConfigResponse{}).Return(populateResponse) + &pbautoconf.AutoConfigResponse{}).Return(nil).Run(populateResponse).Once() - // setup the mock certificate monitor we don't expect it to be used - // as the FallbackTLS method is mainly used by the certificate monitor - // if for some reason it fails to renew the TLS certificate in time. - certMon := new(mockCertMonitor) + // this gets called when InitialConfiguration is invoked to record the token from the + // auto-config response which is how the Fallback for auto-config works + testAC.mcfg.tokens.On("UpdateAgentToken", testAC.originalToken, token.TokenSourceConfig).Return(true).Once() - conf := Config{ - DirectRPC: directRPC, - Loader: func(source config.Source) (*config.RuntimeConfig, []string, error) { - rtConfig.AutoConfig = config.AutoConfig{ - Enabled: true, - IntroToken: "blarg", - ServerAddresses: []string{"127.0.0.1:8300"}, - } - rtConfig.VerifyOutgoing = true - return rtConfig, nil, nil - }, - CertMonitor: certMon, + testAC.mcfg.expectInitialTLS(t, "autoconf", "dc1", testAC.originalToken, secondCA, &secondRoots, thirdCert, testAC.extraCerts) + + // after the second RPC we now will use the new certs validity period in the next run loop iteration + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(time.Now().Add(10 * time.Minute)).Once() + + // now that all the mocks are set up we can trigger the whole thing by sending the second expired cert + // as a cache update event. + req := cachetype.ConnectCALeafRequest{ + Datacenter: "dc1", + Agent: "autoconf", + Token: testAC.originalToken, + DNSSAN: defaultDNSSANs, + IPSAN: defaultIPSANs, } - ac, err := New(conf) - require.NoError(t, err) - require.NotNil(t, ac) - ac.config, err = ac.ReadConfig() - require.NoError(t, err) + require.True(t, testAC.mcfg.cache.sendNotification(context.Background(), req.CacheInfo().Key, cache.UpdateEvent{ + CorrelationID: leafWatchID, + Result: secondCert, + Meta: cache.ResultMeta{ + Index: secondCert.ModifyIndex, + }, + })) - actual, err := ac.FallbackTLS(context.Background()) - require.NoError(t, err) - expected := &structs.SignedResponse{ - ConnectCARoots: structs.IndexedCARoots{ - ActiveRootID: "active", - TrustDomain: "trust", - Roots: []*structs.CARoot{ - { - ID: "active", - Name: "foo", - SerialNumber: 42, - SigningKeyID: "blarg", - NotBefore: time.Unix(5000, 100), - NotAfter: time.Unix(10000, 9009), - RootCert: "not an actual cert", - Active: true, + // wait for the TLS certificates to get updated + require.True(t, waitForChans(100*time.Millisecond, updatedCtx.Done()), "TLS certificates were not updated within the alotted time") + + // 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. + retry.Run(t, func(r *retry.R) { + resp, err := testAC.ac.readPersistedAutoConfig() + require.NoError(r, err) + + // ensure the roots got persisted to disk + require.Equal(r, thirdCert.CertPEM, resp.Certificate.GetCertPEM()) + require.Equal(r, secondRoots.ActiveRootID, resp.CARoots.GetActiveRootID()) + }) +} + +func TestIntroToken(t *testing.T) { + tokenFile := testutil.TempFile(t, "intro-token") + t.Cleanup(func() { os.Remove(tokenFile.Name()) }) + + tokenFileEmpty := testutil.TempFile(t, "intro-token-empty") + t.Cleanup(func() { os.Remove(tokenFileEmpty.Name()) }) + + tokenFromFile := "8ae34d3a-8adf-446a-b236-69874597cb5b" + tokenFromConfig := "3ad9b572-ea42-4e47-9cd0-53a398a98abf" + require.NoError(t, ioutil.WriteFile(tokenFile.Name(), []byte(tokenFromFile), 0600)) + + type testCase struct { + config *config.RuntimeConfig + err string + token string + } + + cases := map[string]testCase{ + "config": { + config: &config.RuntimeConfig{ + AutoConfig: config.AutoConfig{ + IntroToken: tokenFromConfig, + IntroTokenFile: tokenFile.Name(), }, }, + token: tokenFromConfig, }, - IssuedCert: structs.IssuedCert{ - SerialNumber: "1234", - CertPEM: "not a cert", - Agent: "foo", - AgentURI: "spiffe://blarg/agent/client/dc/foo/id/foo", - ValidAfter: time.Unix(6000, 0), - ValidBefore: time.Unix(7000, 0), + "file": { + config: &config.RuntimeConfig{ + AutoConfig: config.AutoConfig{ + IntroTokenFile: tokenFile.Name(), + }, + }, + token: tokenFromFile, + }, + "file-empty": { + config: &config.RuntimeConfig{ + AutoConfig: config.AutoConfig{ + IntroTokenFile: tokenFileEmpty.Name(), + }, + }, + err: "intro_token_file did not contain any token", }, - ManualCARoots: []string{"blarg"}, - VerifyServerHostname: true, } - // have to just verify that the private key was put in here but we then - // must zero it out so that the remaining equality check will pass - require.NotEmpty(t, actual.IssuedCert.PrivateKeyPEM) - actual.IssuedCert.PrivateKeyPEM = "" - require.Equal(t, expected, actual) - // ensure no RPC was made - directRPC.AssertExpectations(t) - certMon.AssertExpectations(t) + for name, tcase := range cases { + t.Run(name, func(t *testing.T) { + ac := AutoConfig{ + config: tcase.config, + } + + token, err := ac.introToken() + if tcase.err != "" { + testutil.RequireErrorContains(t, err, tcase.err) + } else { + require.NoError(t, err) + require.Equal(t, tcase.token, token) + } + }) + } + } diff --git a/agent/auto-config/auto_encrypt.go b/agent/auto-config/auto_encrypt.go new file mode 100644 index 0000000000..2290bb332b --- /dev/null +++ b/agent/auto-config/auto_encrypt.go @@ -0,0 +1,111 @@ +package autoconf + +import ( + "context" + "fmt" + "net" + "strings" + + "github.com/hashicorp/consul/agent/structs" +) + +func (ac *AutoConfig) autoEncryptInitialCerts(ctx context.Context) (*structs.SignedResponse, error) { + // generate a CSR + csr, key, err := ac.generateCSR() + if err != nil { + return nil, err + } + + // this resets the failures so that we will perform immediate request + wait := ac.acConfig.Waiter.Success() + for { + select { + case <-wait: + if resp, err := ac.autoEncryptInitialCertsOnce(ctx, csr, key); err == nil && resp != nil { + return resp, nil + } else if err != nil { + ac.logger.Error(err.Error()) + } else { + ac.logger.Error("No error returned when fetching certificates from the servers but no response was either") + } + + wait = ac.acConfig.Waiter.Failed() + case <-ctx.Done(): + ac.logger.Info("interrupted during retrieval of auto-encrypt certificates", "err", ctx.Err()) + return nil, ctx.Err() + } + } +} + +func (ac *AutoConfig) autoEncryptInitialCertsOnce(ctx context.Context, csr, key string) (*structs.SignedResponse, error) { + request := structs.CASignRequest{ + WriteRequest: structs.WriteRequest{Token: ac.acConfig.Tokens.AgentToken()}, + Datacenter: ac.config.Datacenter, + CSR: csr, + } + var resp structs.SignedResponse + + servers, err := ac.autoEncryptHosts() + if err != nil { + return nil, err + } + + for _, s := range servers { + // try each IP to see if we can successfully make the request + for _, addr := range ac.resolveHost(s) { + if ctx.Err() != nil { + return nil, ctx.Err() + } + + ac.logger.Debug("making AutoEncrypt.Sign RPC", "addr", addr.String()) + err = ac.acConfig.DirectRPC.RPC(ac.config.Datacenter, ac.config.NodeName, &addr, "AutoEncrypt.Sign", &request, &resp) + if err != nil { + ac.logger.Error("AutoEncrypt.Sign RPC failed", "addr", addr.String(), "error", err) + continue + } + + resp.IssuedCert.PrivateKeyPEM = key + return &resp, nil + } + } + return nil, fmt.Errorf("No servers successfully responded to the auto-encrypt request") +} + +func (ac *AutoConfig) autoEncryptHosts() ([]string, error) { + // use servers known to gossip if there are any + if ac.acConfig.ServerProvider != nil { + if srv := ac.acConfig.ServerProvider.FindLANServer(); srv != nil { + return []string{srv.Addr.String()}, nil + } + } + + hosts, err := ac.discoverServers(ac.config.RetryJoinLAN) + if err != nil { + return nil, err + } + + var addrs []string + + // The addresses we use for auto-encrypt are the retry join and start join + // addresses. These are for joining serf and therefore we cannot rely on the + // ports for these. This loop strips any port that may have been specified and + // will let subsequent resolveAddr calls add on the default RPC port. + for _, addr := range append(ac.config.StartJoinAddrsLAN, hosts...) { + host, _, err := net.SplitHostPort(addr) + if err != nil { + if strings.Contains(err.Error(), "missing port in address") { + host = addr + } else { + ac.logger.Warn("error splitting host address into IP and port", "address", addr, "error", err) + continue + } + } + addrs = append(addrs, host) + } + + if len(addrs) == 0 { + return nil, fmt.Errorf("no auto-encrypt server addresses available for use") + } + + return addrs, nil +} diff --git a/agent/auto-config/auto_encrypt_test.go b/agent/auto-config/auto_encrypt_test.go new file mode 100644 index 0000000000..867db9441f --- /dev/null +++ b/agent/auto-config/auto_encrypt_test.go @@ -0,0 +1,562 @@ +package autoconf + +import ( + "context" + "crypto/x509" + "crypto/x509/pkix" + "encoding/asn1" + "fmt" + "net" + "net/url" + "testing" + "time" + + "github.com/hashicorp/consul/agent/cache" + cachetype "github.com/hashicorp/consul/agent/cache-types" + "github.com/hashicorp/consul/agent/config" + "github.com/hashicorp/consul/agent/connect" + "github.com/hashicorp/consul/agent/metadata" + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/lib" + "github.com/hashicorp/consul/sdk/testutil" + "github.com/stretchr/testify/mock" + "github.com/stretchr/testify/require" +) + +func TestAutoEncrypt_generateCSR(t *testing.T) { + type testCase struct { + conf *config.RuntimeConfig + + // to validate the csr + expectedSubject pkix.Name + expectedSigAlg x509.SignatureAlgorithm + expectedPubAlg x509.PublicKeyAlgorithm + expectedDNSNames []string + expectedIPs []net.IP + expectedURIs []*url.URL + } + + cases := map[string]testCase{ + "ip-sans": { + conf: &config.RuntimeConfig{ + Datacenter: "dc1", + NodeName: "test-node", + AutoEncryptTLS: true, + AutoEncryptIPSAN: []net.IP{net.IPv4(198, 18, 0, 1), net.IPv4(198, 18, 0, 2)}, + }, + expectedSubject: pkix.Name{ + CommonName: connect.AgentCN("test-node", unknownTrustDomain), + Names: []pkix.AttributeTypeAndValue{ + { + // 2,5,4,3 is the CommonName type ASN1 identifier + Type: asn1.ObjectIdentifier{2, 5, 4, 3}, + Value: "testnode.agnt.unknown.consul", + }, + }, + }, + expectedSigAlg: x509.ECDSAWithSHA256, + expectedPubAlg: x509.ECDSA, + expectedDNSNames: defaultDNSSANs, + expectedIPs: append(defaultIPSANs, + net.IP{198, 18, 0, 1}, + net.IP{198, 18, 0, 2}, + ), + expectedURIs: []*url.URL{ + { + Scheme: "spiffe", + Host: unknownTrustDomain, + Path: "/agent/client/dc/dc1/id/test-node", + }, + }, + }, + "dns-sans": { + conf: &config.RuntimeConfig{ + Datacenter: "dc1", + NodeName: "test-node", + AutoEncryptTLS: true, + AutoEncryptDNSSAN: []string{"foo.local", "bar.local"}, + }, + expectedSubject: pkix.Name{ + CommonName: connect.AgentCN("test-node", unknownTrustDomain), + Names: []pkix.AttributeTypeAndValue{ + { + // 2,5,4,3 is the CommonName type ASN1 identifier + Type: asn1.ObjectIdentifier{2, 5, 4, 3}, + Value: "testnode.agnt.unknown.consul", + }, + }, + }, + expectedSigAlg: x509.ECDSAWithSHA256, + expectedPubAlg: x509.ECDSA, + expectedDNSNames: append(defaultDNSSANs, "foo.local", "bar.local"), + expectedIPs: defaultIPSANs, + expectedURIs: []*url.URL{ + { + Scheme: "spiffe", + Host: unknownTrustDomain, + Path: "/agent/client/dc/dc1/id/test-node", + }, + }, + }, + } + + for name, tcase := range cases { + t.Run(name, func(t *testing.T) { + ac := AutoConfig{config: tcase.conf} + + csr, _, err := ac.generateCSR() + require.NoError(t, err) + + request, err := connect.ParseCSR(csr) + require.NoError(t, err) + require.NotNil(t, request) + + require.Equal(t, tcase.expectedSubject, request.Subject) + require.Equal(t, tcase.expectedSigAlg, request.SignatureAlgorithm) + require.Equal(t, tcase.expectedPubAlg, request.PublicKeyAlgorithm) + require.Equal(t, tcase.expectedDNSNames, request.DNSNames) + require.Equal(t, tcase.expectedIPs, request.IPAddresses) + require.Equal(t, tcase.expectedURIs, request.URIs) + }) + } +} + +func TestAutoEncrypt_hosts(t *testing.T) { + type testCase struct { + serverProvider ServerProvider + config *config.RuntimeConfig + + hosts []string + err string + } + + providerNone := newMockServerProvider(t) + providerNone.On("FindLANServer").Return(nil).Times(0) + + providerWithServer := newMockServerProvider(t) + providerWithServer.On("FindLANServer").Return(&metadata.Server{Addr: &net.TCPAddr{IP: net.IPv4(198, 18, 0, 1), Port: 1234}}).Times(0) + + cases := map[string]testCase{ + "router-override": { + serverProvider: providerWithServer, + config: &config.RuntimeConfig{ + RetryJoinLAN: []string{"127.0.0.1:9876"}, + StartJoinAddrsLAN: []string{"192.168.1.2:4321"}, + }, + hosts: []string{"198.18.0.1:1234"}, + }, + "various-addresses": { + serverProvider: providerNone, + config: &config.RuntimeConfig{ + RetryJoinLAN: []string{"198.18.0.1", "foo.com", "[2001:db8::1234]:1234", "abc.local:9876"}, + StartJoinAddrsLAN: []string{"192.168.1.1:5432", "start.local", "[::ffff:172.16.5.4]", "main.dev:6789"}, + }, + hosts: []string{ + "192.168.1.1", + "start.local", + "[::ffff:172.16.5.4]", + "main.dev", + "198.18.0.1", + "foo.com", + "2001:db8::1234", + "abc.local", + }, + }, + "split-host-port-error": { + serverProvider: providerNone, + config: &config.RuntimeConfig{ + StartJoinAddrsLAN: []string{"this-is-not:a:ip:and_port"}, + }, + err: "no auto-encrypt server addresses available for use", + }, + } + + for name, tcase := range cases { + t.Run(name, func(t *testing.T) { + ac := AutoConfig{ + config: tcase.config, + logger: testutil.Logger(t), + acConfig: Config{ + ServerProvider: tcase.serverProvider, + }, + } + + hosts, err := ac.autoEncryptHosts() + if tcase.err != "" { + testutil.RequireErrorContains(t, err, tcase.err) + } else { + require.NoError(t, err) + require.Equal(t, tcase.hosts, hosts) + } + }) + } +} + +func TestAutoEncrypt_InitialCerts(t *testing.T) { + token := "1a148388-3dd7-4db4-9eea-520424b4a86a" + datacenter := "foo" + nodeName := "bar" + + mcfg := newMockedConfig(t) + + _, indexedRoots, cert := testCerts(t, nodeName, datacenter) + + // The following are called once for each round through the auto-encrypt initial certs outer loop + // (not the per-host direct rpc attempts but the one involving the RetryWaiter) + mcfg.tokens.On("AgentToken").Return(token).Times(2) + mcfg.serverProvider.On("FindLANServer").Return(nil).Times(2) + + request := structs.CASignRequest{ + WriteRequest: structs.WriteRequest{Token: token}, + Datacenter: datacenter, + // this gets removed by the mock code as its non-deterministic what it will be + CSR: "", + } + + // first failure + mcfg.directRPC.On("RPC", + datacenter, + nodeName, + &net.TCPAddr{IP: net.IPv4(198, 18, 0, 1), Port: 8300}, + "AutoEncrypt.Sign", + &request, + &structs.SignedResponse{}, + ).Once().Return(fmt.Errorf("injected error")) + // second failure + mcfg.directRPC.On("RPC", + datacenter, + nodeName, + &net.TCPAddr{IP: net.IPv4(198, 18, 0, 2), Port: 8300}, + "AutoEncrypt.Sign", + &request, + &structs.SignedResponse{}, + ).Once().Return(fmt.Errorf("injected error")) + // third times is successfuly (second attempt to first server) + mcfg.directRPC.On("RPC", + datacenter, + nodeName, + &net.TCPAddr{IP: net.IPv4(198, 18, 0, 1), Port: 8300}, + "AutoEncrypt.Sign", + &request, + &structs.SignedResponse{}, + ).Once().Return(nil).Run(func(args mock.Arguments) { + resp, ok := args.Get(5).(*structs.SignedResponse) + require.True(t, ok) + resp.ConnectCARoots = *indexedRoots + resp.IssuedCert = *cert + resp.VerifyServerHostname = true + }) + + mcfg.Config.Waiter = lib.NewRetryWaiter(2, 0, 1*time.Millisecond, nil) + + ac := AutoConfig{ + config: &config.RuntimeConfig{ + Datacenter: datacenter, + NodeName: nodeName, + RetryJoinLAN: []string{"198.18.0.1:1234", "198.18.0.2:3456"}, + ServerPort: 8300, + }, + acConfig: mcfg.Config, + logger: testutil.Logger(t), + } + + ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second) + defer cancel() + resp, err := ac.autoEncryptInitialCerts(ctx) + require.NoError(t, err) + require.NotNil(t, resp) + require.True(t, resp.VerifyServerHostname) + require.NotEmpty(t, resp.IssuedCert.PrivateKeyPEM) + resp.IssuedCert.PrivateKeyPEM = "" + cert.PrivateKeyPEM = "" + require.Equal(t, cert, &resp.IssuedCert) + require.Equal(t, indexedRoots, &resp.ConnectCARoots) + require.Empty(t, resp.ManualCARoots) +} + +func TestAutoEncrypt_InitialConfiguration(t *testing.T) { + token := "010494ae-ee45-4433-903c-a58c91297714" + nodeName := "auto-encrypt" + datacenter := "dc1" + + mcfg := newMockedConfig(t) + loader := setupRuntimeConfig(t) + loader.addConfigHCL(` + auto_encrypt { + tls = true + } + `) + loader.opts.Config.NodeName = &nodeName + mcfg.Config.Loader = loader.Load + + indexedRoots, cert, extraCerts := mcfg.setupInitialTLS(t, nodeName, datacenter, token) + + // prepopulation is going to grab the token to populate the correct cache key + mcfg.tokens.On("AgentToken").Return(token).Times(0) + + // no server provider + mcfg.serverProvider.On("FindLANServer").Return(&metadata.Server{Addr: &net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 8300}}).Times(1) + + populateResponse := func(args mock.Arguments) { + resp, ok := args.Get(5).(*structs.SignedResponse) + require.True(t, ok) + *resp = structs.SignedResponse{ + VerifyServerHostname: true, + ConnectCARoots: *indexedRoots, + IssuedCert: *cert, + ManualCARoots: extraCerts, + } + } + + expectedRequest := structs.CASignRequest{ + WriteRequest: structs.WriteRequest{Token: token}, + Datacenter: datacenter, + // TODO (autoconf) Maybe in the future we should populate a CSR + // and do some manual parsing/verification of the contents. The + // bits not having to do with the signing key such as the requested + // SANs and CN. For now though the mockDirectRPC type will empty + // the CSR so we have to pass in an empty string to the expectation. + CSR: "", + } + + mcfg.directRPC.On( + "RPC", + datacenter, + nodeName, + &net.TCPAddr{IP: net.IPv4(127, 0, 0, 1), Port: 8300}, + "AutoEncrypt.Sign", + &expectedRequest, + &structs.SignedResponse{}).Return(nil).Run(populateResponse) + + ac, err := New(mcfg.Config) + require.NoError(t, err) + require.NotNil(t, ac) + + cfg, err := ac.InitialConfiguration(context.Background()) + require.NoError(t, err) + require.NotNil(t, cfg) + +} + +func TestAutoEncrypt_TokenUpdate(t *testing.T) { + testAC := startedAutoConfig(t, true) + + newToken := "1a4cc445-86ed-46b4-a355-bbf5a11dddb0" + + rootsCtx, rootsCancel := context.WithCancel(context.Background()) + testAC.mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCARootName, + &structs.DCSpecificRequest{Datacenter: testAC.ac.config.Datacenter}, + rootsWatchID, + mock.Anything, + ).Return(nil).Once().Run(func(args mock.Arguments) { + rootsCancel() + }) + + leafCtx, leafCancel := context.WithCancel(context.Background()) + testAC.mcfg.cache.On("Notify", + mock.Anything, + cachetype.ConnectCALeafName, + &cachetype.ConnectCALeafRequest{ + Datacenter: "dc1", + Agent: "autoconf", + Token: newToken, + DNSSAN: defaultDNSSANs, + IPSAN: defaultIPSANs, + }, + leafWatchID, + mock.Anything, + ).Return(nil).Once().Run(func(args mock.Arguments) { + leafCancel() + }) + + // this will be retrieved once when resetting the leaf cert watch + testAC.mcfg.tokens.On("AgentToken").Return(newToken).Once() + + // send the notification about the token update + testAC.tokenUpdates <- struct{}{} + + // wait for the leaf cert watches + require.True(t, waitForChans(100*time.Millisecond, leafCtx.Done(), rootsCtx.Done()), "New cache watches were not started within 100ms") +} + +func TestAutoEncrypt_RootsUpdate(t *testing.T) { + testAC := startedAutoConfig(t, true) + + secondCA := connect.TestCA(t, testAC.initialRoots.Roots[0]) + secondRoots := structs.IndexedCARoots{ + ActiveRootID: secondCA.ID, + TrustDomain: connect.TestClusterID, + Roots: []*structs.CARoot{ + secondCA, + testAC.initialRoots.Roots[0], + }, + QueryMeta: structs.QueryMeta{ + Index: 99, + }, + } + + updatedCtx, cancel := context.WithCancel(context.Background()) + testAC.mcfg.tlsCfg.On("UpdateAutoTLSCA", + []string{secondCA.RootCert, testAC.initialRoots.Roots[0].RootCert}, + ).Return(nil).Once().Run(func(args mock.Arguments) { + cancel() + }) + + // when a cache event comes in we end up recalculating the fallback timer which requires this call + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(time.Now().Add(10 * time.Minute)).Once() + + req := structs.DCSpecificRequest{Datacenter: "dc1"} + require.True(t, testAC.mcfg.cache.sendNotification(context.Background(), req.CacheInfo().Key, cache.UpdateEvent{ + CorrelationID: rootsWatchID, + Result: &secondRoots, + Meta: cache.ResultMeta{ + Index: secondRoots.Index, + }, + })) + + require.True(t, waitForChans(100*time.Millisecond, updatedCtx.Done()), "TLS certificates were not updated within the alotted time") +} + +func TestAutoEncrypt_CertUpdate(t *testing.T) { + testAC := startedAutoConfig(t, true) + secondCert := newLeaf(t, "autoconf", "dc1", testAC.initialRoots.Roots[0], 99, 10*time.Minute) + + updatedCtx, cancel := context.WithCancel(context.Background()) + testAC.mcfg.tlsCfg.On("UpdateAutoTLSCert", + secondCert.CertPEM, + "redacted", + ).Return(nil).Once().Run(func(args mock.Arguments) { + cancel() + }) + + // when a cache event comes in we end up recalculating the fallback timer which requires this call + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(secondCert.ValidBefore).Once() + + req := cachetype.ConnectCALeafRequest{ + Datacenter: "dc1", + Agent: "autoconf", + Token: testAC.originalToken, + DNSSAN: defaultDNSSANs, + IPSAN: defaultIPSANs, + } + require.True(t, testAC.mcfg.cache.sendNotification(context.Background(), req.CacheInfo().Key, cache.UpdateEvent{ + CorrelationID: leafWatchID, + Result: secondCert, + Meta: cache.ResultMeta{ + Index: secondCert.ModifyIndex, + }, + })) + + require.True(t, waitForChans(100*time.Millisecond, updatedCtx.Done()), "TLS certificates were not updated within the alotted time") +} + +func TestAutoEncrypt_Fallback(t *testing.T) { + testAC := startedAutoConfig(t, true) + + // at this point everything is operating normally and we are just + // waiting for events. We are going to send a new cert that is basically + // already expired and then allow the fallback routine to kick in. + secondCert := newLeaf(t, "autoconf", "dc1", testAC.initialRoots.Roots[0], 100, time.Nanosecond) + secondCA := connect.TestCA(t, testAC.initialRoots.Roots[0]) + secondRoots := structs.IndexedCARoots{ + ActiveRootID: secondCA.ID, + TrustDomain: connect.TestClusterID, + Roots: []*structs.CARoot{ + secondCA, + testAC.initialRoots.Roots[0], + }, + QueryMeta: structs.QueryMeta{ + Index: 101, + }, + } + thirdCert := newLeaf(t, "autoconf", "dc1", secondCA, 102, 10*time.Minute) + + // setup the expectation for when the certs get updated initially + updatedCtx, updateCancel := context.WithCancel(context.Background()) + testAC.mcfg.tlsCfg.On("UpdateAutoTLSCert", + secondCert.CertPEM, + "redacted", + ).Return(nil).Once().Run(func(args mock.Arguments) { + updateCancel() + }) + + // when a cache event comes in we end up recalculating the fallback timer which requires this call + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(secondCert.ValidBefore).Once() + testAC.mcfg.tlsCfg.On("AutoEncryptCertExpired").Return(true).Once() + + fallbackCtx, fallbackCancel := context.WithCancel(context.Background()) + + // also testing here that we can change server IPs for ongoing operations + testAC.mcfg.serverProvider.On("FindLANServer").Once().Return(&metadata.Server{ + Addr: &net.TCPAddr{IP: net.IPv4(198, 18, 23, 2), Port: 8300}, + }) + + // after sending the notification for the cert update another InitialConfiguration RPC + // will be made to pull down the latest configuration. So we need to set up the response + // for the second RPC + populateResponse := func(args mock.Arguments) { + resp, ok := args.Get(5).(*structs.SignedResponse) + require.True(t, ok) + *resp = structs.SignedResponse{ + VerifyServerHostname: true, + ConnectCARoots: secondRoots, + IssuedCert: *thirdCert, + ManualCARoots: testAC.extraCerts, + } + + fallbackCancel() + } + + expectedRequest := structs.CASignRequest{ + WriteRequest: structs.WriteRequest{Token: testAC.originalToken}, + Datacenter: "dc1", + // TODO (autoconf) Maybe in the future we should populate a CSR + // and do some manual parsing/verification of the contents. The + // bits not having to do with the signing key such as the requested + // SANs and CN. For now though the mockDirectRPC type will empty + // the CSR so we have to pass in an empty string to the expectation. + CSR: "", + } + + // the fallback routine to perform auto-encrypt again will need to grab this + testAC.mcfg.tokens.On("AgentToken").Return(testAC.originalToken).Once() + + testAC.mcfg.directRPC.On( + "RPC", + "dc1", + "autoconf", + &net.TCPAddr{IP: net.IPv4(198, 18, 23, 2), Port: 8300}, + "AutoEncrypt.Sign", + &expectedRequest, + &structs.SignedResponse{}).Return(nil).Run(populateResponse).Once() + + testAC.mcfg.expectInitialTLS(t, "autoconf", "dc1", testAC.originalToken, secondCA, &secondRoots, thirdCert, testAC.extraCerts) + + // after the second RPC we now will use the new certs validity period in the next run loop iteration + testAC.mcfg.tlsCfg.On("AutoEncryptCertNotAfter").Return(time.Now().Add(10 * time.Minute)).Once() + + // now that all the mocks are set up we can trigger the whole thing by sending the second expired cert + // as a cache update event. + req := cachetype.ConnectCALeafRequest{ + Datacenter: "dc1", + Agent: "autoconf", + Token: testAC.originalToken, + DNSSAN: defaultDNSSANs, + IPSAN: defaultIPSANs, + } + require.True(t, testAC.mcfg.cache.sendNotification(context.Background(), req.CacheInfo().Key, cache.UpdateEvent{ + CorrelationID: leafWatchID, + Result: secondCert, + Meta: cache.ResultMeta{ + Index: secondCert.ModifyIndex, + }, + })) + + // wait for the TLS certificates to get updated + require.True(t, waitForChans(100*time.Millisecond, updatedCtx.Done()), "TLS certificates were not updated within the alotted time") + + // 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") +} diff --git a/agent/auto-config/config.go b/agent/auto-config/config.go index e6d729f4d4..c812cae6a4 100644 --- a/agent/auto-config/config.go +++ b/agent/auto-config/config.go @@ -3,9 +3,12 @@ package autoconf import ( "context" "net" + "time" + "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/agent/config" - "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/metadata" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/lib" "github.com/hashicorp/go-hclog" ) @@ -18,12 +21,35 @@ type DirectRPC interface { RPC(dc string, node string, addr net.Addr, method string, args interface{}, reply interface{}) error } -// CertMonitor is the interface that needs to be satisfied for AutoConfig to be able to -// setup monitoring of the Connect TLS certificate after we first get it. -type CertMonitor interface { - Update(*structs.SignedResponse) error - Start(context.Context) (<-chan struct{}, error) - Stop() bool +// Cache is an interface to represent the methods of the +// agent/cache.Cache struct that we care about +type Cache interface { + Notify(ctx context.Context, t string, r cache.Request, correlationID string, ch chan<- cache.UpdateEvent) error + Prepopulate(t string, result cache.FetchResult, dc string, token string, key string) error +} + +// ServerProvider is an interface that can be used to find one server in the local DC known to +// the agent via Gossip +type ServerProvider interface { + FindLANServer() *metadata.Server +} + +// TLSConfigurator is an interface of the methods on the tlsutil.Configurator that we will require at +// runtime. +type TLSConfigurator interface { + UpdateAutoTLS(manualCAPEMs, connectCAPEMs []string, pub, priv string, verifyServerHostname bool) error + UpdateAutoTLSCA([]string) error + UpdateAutoTLSCert(pub, priv string) error + AutoEncryptCertNotAfter() time.Time + AutoEncryptCertExpired() bool +} + +// TokenStore is an interface of the methods we will need to use from the token.Store. +type TokenStore interface { + AgentToken() string + UpdateAgentToken(secret string, source token.TokenSource) bool + Notify(kind token.TokenKind) token.Notifier + StopNotify(notifier token.Notifier) } // Config contains all the tunables for AutoConfig @@ -37,6 +63,10 @@ type Config struct { // configuration. Setting this field is required. DirectRPC DirectRPC + // ServerProvider is the interfaced to be used by AutoConfig to find any + // known servers during fallback operations. + ServerProvider ServerProvider + // Waiter is a RetryWaiter to be used during retrieval of the // initial configuration. When a round of requests fails we will // wait and eventually make another round of requests (1 round @@ -49,14 +79,28 @@ type Config struct { // having the test take minutes/hours to complete. Waiter *lib.RetryWaiter - // CertMonitor is the Connect TLS Certificate Monitor to be used for ongoing - // certificate renewals and connect CA roots updates. This field is not - // strictly required but if not provided the TLS certificates retrieved - // through by the AutoConfig.InitialConfiguration RPC will not be used - // or renewed. - CertMonitor CertMonitor - // Loader merges source with the existing FileSources and returns the complete // RuntimeConfig. Loader func(source config.Source) (cfg *config.RuntimeConfig, warnings []string, err error) + + // TLSConfigurator is the shared TLS Configurator. AutoConfig will update the + // auto encrypt/auto config certs as they are renewed. + TLSConfigurator TLSConfigurator + + // Cache is an object implementing our Cache interface. The Cache + // used at runtime must be able to handle Roots and Leaf Cert watches + Cache Cache + + // FallbackLeeway is the amount of time after certificate expiration before + // invoking the fallback routine. If not set this will default to 10s. + FallbackLeeway time.Duration + + // FallbackRetry is the duration between Fallback invocations when the configured + // fallback routine returns an error. If not set this will default to 1m. + FallbackRetry time.Duration + + // Tokens is the shared token store. It is used to retrieve the current + // agent token as well as getting notifications when that token is updated. + // This field is required. + Tokens TokenStore } diff --git a/agent/auto-config/config_translate.go b/agent/auto-config/config_translate.go index b7d04d5f61..ba8f940d1c 100644 --- a/agent/auto-config/config_translate.go +++ b/agent/auto-config/config_translate.go @@ -22,9 +22,9 @@ import ( // package cannot import the agent/config package without running into import cycles. func translateConfig(c *pbconfig.Config) config.Config { result := config.Config{ - Datacenter: &c.Datacenter, - PrimaryDatacenter: &c.PrimaryDatacenter, - NodeName: &c.NodeName, + Datacenter: stringPtrOrNil(c.Datacenter), + PrimaryDatacenter: stringPtrOrNil(c.PrimaryDatacenter), + NodeName: stringPtrOrNil(c.NodeName), // only output the SegmentName in the configuration if its non-empty // this will avoid a warning later when parsing the persisted configuration SegmentName: stringPtrOrNil(c.SegmentName), @@ -42,13 +42,13 @@ func translateConfig(c *pbconfig.Config) config.Config { if a := c.ACL; a != nil { result.ACL = config.ACL{ Enabled: &a.Enabled, - PolicyTTL: &a.PolicyTTL, - RoleTTL: &a.RoleTTL, - TokenTTL: &a.TokenTTL, - DownPolicy: &a.DownPolicy, - DefaultPolicy: &a.DefaultPolicy, + PolicyTTL: stringPtrOrNil(a.PolicyTTL), + RoleTTL: stringPtrOrNil(a.RoleTTL), + TokenTTL: stringPtrOrNil(a.TokenTTL), + DownPolicy: stringPtrOrNil(a.DownPolicy), + DefaultPolicy: stringPtrOrNil(a.DefaultPolicy), EnableKeyListPolicy: &a.EnableKeyListPolicy, - DisabledTTL: &a.DisabledTTL, + DisabledTTL: stringPtrOrNil(a.DisabledTTL), EnableTokenPersistence: &a.EnableTokenPersistence, } @@ -76,7 +76,7 @@ func translateConfig(c *pbconfig.Config) config.Config { result.RetryJoinLAN = g.RetryJoinLAN if e := c.Gossip.Encryption; e != nil { - result.EncryptKey = &e.Key + result.EncryptKey = stringPtrOrNil(e.Key) result.EncryptVerifyIncoming = &e.VerifyIncoming result.EncryptVerifyOutgoing = &e.VerifyOutgoing } diff --git a/agent/auto-config/config_translate_test.go b/agent/auto-config/config_translate_test.go index 18a4270a88..fa6d8febf0 100644 --- a/agent/auto-config/config_translate_test.go +++ b/agent/auto-config/config_translate_test.go @@ -1,10 +1,13 @@ package autoconf import ( + "fmt" "testing" "github.com/hashicorp/consul/agent/config" + "github.com/hashicorp/consul/agent/structs" pbconfig "github.com/hashicorp/consul/proto/pbconfig" + "github.com/hashicorp/consul/proto/pbconnect" "github.com/stretchr/testify/require" ) @@ -16,6 +19,38 @@ func boolPointer(b bool) *bool { return &b } +func translateCARootToProtobuf(in *structs.CARoot) (*pbconnect.CARoot, error) { + var out pbconnect.CARoot + if err := mapstructureTranslateToProtobuf(in, &out); err != nil { + return nil, fmt.Errorf("Failed to re-encode CA Roots: %w", err) + } + return &out, nil +} + +func mustTranslateCARootToProtobuf(t *testing.T, in *structs.CARoot) *pbconnect.CARoot { + out, err := translateCARootToProtobuf(in) + require.NoError(t, err) + return out +} + +func mustTranslateCARootsToStructs(t *testing.T, in *pbconnect.CARoots) *structs.IndexedCARoots { + out, err := translateCARootsToStructs(in) + require.NoError(t, err) + return out +} + +func mustTranslateCARootsToProtobuf(t *testing.T, in *structs.IndexedCARoots) *pbconnect.CARoots { + out, err := translateCARootsToProtobuf(in) + require.NoError(t, err) + return out +} + +func mustTranslateIssuedCertToProtobuf(t *testing.T, in *structs.IssuedCert) *pbconnect.IssuedCert { + out, err := translateIssuedCertToProtobuf(in) + require.NoError(t, err) + return out +} + func TestTranslateConfig(t *testing.T) { original := pbconfig.Config{ Datacenter: "abc", @@ -119,3 +154,9 @@ func TestTranslateConfig(t *testing.T) { translated := translateConfig(&original) require.Equal(t, expected, translated) } + +func TestCArootsTranslation(t *testing.T) { + _, indexedRoots, _ := testCerts(t, "autoconf", "dc1") + protoRoots := mustTranslateCARootsToProtobuf(t, indexedRoots) + require.Equal(t, indexedRoots, mustTranslateCARootsToStructs(t, protoRoots)) +} diff --git a/agent/auto-config/mock_test.go b/agent/auto-config/mock_test.go new file mode 100644 index 0000000000..d828e6a84e --- /dev/null +++ b/agent/auto-config/mock_test.go @@ -0,0 +1,337 @@ +package autoconf + +import ( + "context" + "net" + "sync" + "testing" + "time" + + "github.com/hashicorp/consul/agent/cache" + cachetype "github.com/hashicorp/consul/agent/cache-types" + "github.com/hashicorp/consul/agent/connect" + "github.com/hashicorp/consul/agent/metadata" + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/token" + "github.com/hashicorp/consul/proto/pbautoconf" + "github.com/hashicorp/consul/sdk/testutil" + "github.com/stretchr/testify/mock" +) + +type mockDirectRPC struct { + mock.Mock +} + +func newMockDirectRPC(t *testing.T) *mockDirectRPC { + m := mockDirectRPC{} + m.Test(t) + return &m +} + +func (m *mockDirectRPC) RPC(dc string, node string, addr net.Addr, method string, args interface{}, reply interface{}) error { + var retValues mock.Arguments + if method == "AutoConfig.InitialConfiguration" { + req := args.(*pbautoconf.AutoConfigRequest) + csr := req.CSR + req.CSR = "" + retValues = m.Called(dc, node, addr, method, args, reply) + req.CSR = csr + } else if method == "AutoEncrypt.Sign" { + req := args.(*structs.CASignRequest) + csr := req.CSR + req.CSR = "" + retValues = m.Called(dc, node, addr, method, args, reply) + req.CSR = csr + } else { + retValues = m.Called(dc, node, addr, method, args, reply) + } + + return retValues.Error(0) +} + +type mockTLSConfigurator struct { + mock.Mock +} + +func newMockTLSConfigurator(t *testing.T) *mockTLSConfigurator { + m := mockTLSConfigurator{} + m.Test(t) + return &m +} + +func (m *mockTLSConfigurator) UpdateAutoTLS(manualCAPEMs, connectCAPEMs []string, pub, priv string, verifyServerHostname bool) error { + if priv != "" { + priv = "redacted" + } + + ret := m.Called(manualCAPEMs, connectCAPEMs, pub, priv, verifyServerHostname) + return ret.Error(0) +} + +func (m *mockTLSConfigurator) UpdateAutoTLSCA(pems []string) error { + ret := m.Called(pems) + return ret.Error(0) +} +func (m *mockTLSConfigurator) UpdateAutoTLSCert(pub, priv string) error { + if priv != "" { + priv = "redacted" + } + ret := m.Called(pub, priv) + return ret.Error(0) +} +func (m *mockTLSConfigurator) AutoEncryptCertNotAfter() time.Time { + ret := m.Called() + ts, _ := ret.Get(0).(time.Time) + + return ts +} +func (m *mockTLSConfigurator) AutoEncryptCertExpired() bool { + ret := m.Called() + return ret.Bool(0) +} + +type mockServerProvider struct { + mock.Mock +} + +func newMockServerProvider(t *testing.T) *mockServerProvider { + m := mockServerProvider{} + m.Test(t) + return &m +} + +func (m *mockServerProvider) FindLANServer() *metadata.Server { + ret := m.Called() + srv, _ := ret.Get(0).(*metadata.Server) + return srv +} + +type mockWatcher struct { + ch chan<- cache.UpdateEvent + done <-chan struct{} +} + +type mockCache struct { + mock.Mock + + lock sync.Mutex + watchers map[string][]mockWatcher +} + +func newMockCache(t *testing.T) *mockCache { + m := mockCache{ + watchers: make(map[string][]mockWatcher), + } + m.Test(t) + return &m +} + +func (m *mockCache) Notify(ctx context.Context, t string, r cache.Request, correlationID string, ch chan<- cache.UpdateEvent) error { + ret := m.Called(ctx, t, r, correlationID, ch) + + err := ret.Error(0) + if err == nil { + m.lock.Lock() + key := r.CacheInfo().Key + m.watchers[key] = append(m.watchers[key], mockWatcher{ch: ch, done: ctx.Done()}) + m.lock.Unlock() + } + return err +} + +func (m *mockCache) Prepopulate(t string, result cache.FetchResult, dc string, token string, key string) error { + var restore string + cert, ok := result.Value.(*structs.IssuedCert) + if ok { + // we cannot know what the private key is prior to it being injected into the cache. + // therefore redact it here and all mock expectations should take that into account + restore = cert.PrivateKeyPEM + cert.PrivateKeyPEM = "redacted" + } + + ret := m.Called(t, result, dc, token, key) + + if ok && restore != "" { + cert.PrivateKeyPEM = restore + } + return ret.Error(0) +} + +func (m *mockCache) sendNotification(ctx context.Context, key string, u cache.UpdateEvent) bool { + m.lock.Lock() + defer m.lock.Unlock() + + watchers, ok := m.watchers[key] + if !ok || len(m.watchers) < 1 { + return false + } + + var newWatchers []mockWatcher + + for _, watcher := range watchers { + select { + case watcher.ch <- u: + newWatchers = append(newWatchers, watcher) + case <-watcher.done: + // do nothing, this watcher will be removed from the list + case <-ctx.Done(): + // return doesn't matter here really, the test is being cancelled + return true + } + } + + // this removes any already cancelled watches from being sent to + m.watchers[key] = newWatchers + + return true +} + +type mockTokenStore struct { + mock.Mock +} + +func newMockTokenStore(t *testing.T) *mockTokenStore { + m := mockTokenStore{} + m.Test(t) + return &m +} + +func (m *mockTokenStore) AgentToken() string { + ret := m.Called() + return ret.String(0) +} + +func (m *mockTokenStore) UpdateAgentToken(secret string, source token.TokenSource) bool { + return m.Called(secret, source).Bool(0) +} + +func (m *mockTokenStore) Notify(kind token.TokenKind) token.Notifier { + ret := m.Called(kind) + n, _ := ret.Get(0).(token.Notifier) + return n +} + +func (m *mockTokenStore) StopNotify(notifier token.Notifier) { + m.Called(notifier) +} + +type mockedConfig struct { + Config + + directRPC *mockDirectRPC + serverProvider *mockServerProvider + cache *mockCache + tokens *mockTokenStore + tlsCfg *mockTLSConfigurator +} + +func newMockedConfig(t *testing.T) *mockedConfig { + directRPC := newMockDirectRPC(t) + serverProvider := newMockServerProvider(t) + mcache := newMockCache(t) + tokens := newMockTokenStore(t) + tlsCfg := newMockTLSConfigurator(t) + + // I am not sure it is well defined behavior but in testing it + // out it does appear like Cleanup functions can fail tests + // Adding in the mock expectations assertions here saves us + // a bunch of code in the other test functions. + t.Cleanup(func() { + if !t.Failed() { + directRPC.AssertExpectations(t) + serverProvider.AssertExpectations(t) + mcache.AssertExpectations(t) + tokens.AssertExpectations(t) + tlsCfg.AssertExpectations(t) + } + }) + + return &mockedConfig{ + Config: Config{ + DirectRPC: directRPC, + ServerProvider: serverProvider, + Cache: mcache, + Tokens: tokens, + TLSConfigurator: tlsCfg, + Logger: testutil.Logger(t), + }, + directRPC: directRPC, + serverProvider: serverProvider, + cache: mcache, + tokens: tokens, + tlsCfg: tlsCfg, + } +} + +func (m *mockedConfig) expectInitialTLS(t *testing.T, agentName, datacenter, token string, ca *structs.CARoot, indexedRoots *structs.IndexedCARoots, cert *structs.IssuedCert, extraCerts []string) { + var pems []string + for _, root := range indexedRoots.Roots { + pems = append(pems, root.RootCert) + } + + // we should update the TLS configurator with the proper certs + m.tlsCfg.On("UpdateAutoTLS", + extraCerts, + pems, + cert.CertPEM, + // auto-config handles the CSR and Key so our tests don't have + // a way to know that the key is correct or not. We do replace + // a non empty PEM with "redacted" so we can ensure that some + // certificate is being sent + "redacted", + true, + ).Return(nil).Once() + + rootRes := cache.FetchResult{Value: indexedRoots, Index: indexedRoots.QueryMeta.Index} + rootsReq := structs.DCSpecificRequest{Datacenter: datacenter} + + // we should prepopulate the cache with the CA roots + m.cache.On("Prepopulate", + cachetype.ConnectCARootName, + rootRes, + datacenter, + "", + rootsReq.CacheInfo().Key, + ).Return(nil).Once() + + leafReq := cachetype.ConnectCALeafRequest{ + Token: token, + Agent: agentName, + Datacenter: datacenter, + } + + // copy the cert and redact the private key for the mock expectation + // the actual private key will not correspond to the cert but thats + // because AutoConfig is generated a key/csr internally and sending that + // on up with the request. + copy := *cert + copy.PrivateKeyPEM = "redacted" + leafRes := cache.FetchResult{ + Value: ©, + Index: copy.RaftIndex.ModifyIndex, + State: cachetype.ConnectCALeafSuccess(ca.SigningKeyID), + } + + // we should prepopulate the cache with the agents cert + m.cache.On("Prepopulate", + cachetype.ConnectCALeafName, + leafRes, + datacenter, + token, + leafReq.Key(), + ).Return(nil).Once() + + // when prepopulating the cert in the cache we grab the token so + // we should expec that here + m.tokens.On("AgentToken").Return(token).Once() +} + +func (m *mockedConfig) setupInitialTLS(t *testing.T, agentName, datacenter, token string) (*structs.IndexedCARoots, *structs.IssuedCert, []string) { + ca, indexedRoots, cert := testCerts(t, agentName, datacenter) + + ca2 := connect.TestCA(t, nil) + extraCerts := []string{ca2.RootCert} + + m.expectInitialTLS(t, agentName, datacenter, token, ca, indexedRoots, cert, extraCerts) + return indexedRoots, cert, extraCerts +} diff --git a/agent/auto-config/persist.go b/agent/auto-config/persist.go new file mode 100644 index 0000000000..9f94f445c7 --- /dev/null +++ b/agent/auto-config/persist.go @@ -0,0 +1,86 @@ +package autoconf + +import ( + "fmt" + "io/ioutil" + "os" + "path/filepath" + "strings" + + "github.com/golang/protobuf/jsonpb" + "github.com/hashicorp/consul/proto/pbautoconf" +) + +const ( + // autoConfigFileName is the name of the file that the agent auto-config settings are + // stored in within the data directory + autoConfigFileName = "auto-config.json" +) + +var ( + pbMarshaler = &jsonpb.Marshaler{ + OrigName: false, + EnumsAsInts: false, + Indent: " ", + EmitDefaults: true, + } + + pbUnmarshaler = &jsonpb.Unmarshaler{ + AllowUnknownFields: false, + } +) + +func (ac *AutoConfig) readPersistedAutoConfig() (*pbautoconf.AutoConfigResponse, error) { + if ac.config.DataDir == "" { + // no data directory means we don't have anything to potentially load + return nil, nil + } + + path := filepath.Join(ac.config.DataDir, autoConfigFileName) + ac.logger.Debug("attempting to restore any persisted configuration", "path", path) + + content, err := ioutil.ReadFile(path) + if err == nil { + rdr := strings.NewReader(string(content)) + + var resp pbautoconf.AutoConfigResponse + if err := pbUnmarshaler.Unmarshal(rdr, &resp); err != nil { + return nil, fmt.Errorf("failed to decode persisted auto-config data: %w", err) + } + + ac.logger.Info("read persisted configuration", "path", path) + return &resp, nil + } + + if !os.IsNotExist(err) { + return nil, fmt.Errorf("failed to load %s: %w", path, err) + } + + // ignore non-existence errors as that is an indicator that we haven't + // performed the auto configuration before + return nil, nil +} + +func (ac *AutoConfig) persistAutoConfig(resp *pbautoconf.AutoConfigResponse) error { + // now that we know the configuration is generally fine including TLS certs go ahead and persist it to disk. + if ac.config.DataDir == "" { + ac.logger.Debug("not persisting auto-config settings because there is no data directory") + return nil + } + + serialized, err := pbMarshaler.MarshalToString(resp) + if err != nil { + return fmt.Errorf("failed to encode auto-config response as JSON: %w", err) + } + + path := filepath.Join(ac.config.DataDir, autoConfigFileName) + + err = ioutil.WriteFile(path, []byte(serialized), 0660) + if err != nil { + return fmt.Errorf("failed to write auto-config configurations: %w", err) + } + + ac.logger.Debug("auto-config settings were persisted to disk") + + return nil +} diff --git a/agent/auto-config/run.go b/agent/auto-config/run.go new file mode 100644 index 0000000000..6155dc6bed --- /dev/null +++ b/agent/auto-config/run.go @@ -0,0 +1,192 @@ +package autoconf + +import ( + "context" + "fmt" + "time" + + "github.com/hashicorp/consul/agent/cache" + "github.com/hashicorp/consul/agent/structs" +) + +// handleCacheEvent is used to handle event notifications from the cache for the roots +// or leaf cert watches. +func (ac *AutoConfig) handleCacheEvent(u cache.UpdateEvent) error { + switch u.CorrelationID { + case rootsWatchID: + ac.logger.Debug("roots watch fired - updating CA certificates") + if u.Err != nil { + return fmt.Errorf("root watch returned an error: %w", u.Err) + } + + roots, ok := u.Result.(*structs.IndexedCARoots) + if !ok { + return fmt.Errorf("invalid type for roots watch response: %T", u.Result) + } + + return ac.updateCARoots(roots) + case leafWatchID: + ac.logger.Debug("leaf certificate watch fired - updating TLS certificate") + if u.Err != nil { + return fmt.Errorf("leaf watch returned an error: %w", u.Err) + } + + leaf, ok := u.Result.(*structs.IssuedCert) + if !ok { + return fmt.Errorf("invalid type for agent leaf cert watch response: %T", u.Result) + } + + return ac.updateLeafCert(leaf) + } + + return nil +} + +// handleTokenUpdate is used when a notification about the agent token being updated +// is received and various watches need cancelling/restarting to use the new token. +func (ac *AutoConfig) handleTokenUpdate(ctx context.Context) error { + ac.logger.Debug("Agent token updated - resetting watches") + + // TODO (autoencrypt) Prepopulate the cache with the new token with + // the existing cache entry with the old token. The certificate doesn't + // need to change just because the token has. However there isn't a + // good way to make that happen and this behavior is benign enough + // that I am going to push off implementing it. + + // the agent token has been updated so we must update our leaf cert watch. + // this cancels the current watches before setting up new ones + ac.cancelWatches() + + // recreate the chan for cache updates. This is a precautionary measure to ensure + // that we don't accidentally get notified for the new watches being setup before + // a blocking query in the cache returns and sends data to the old chan. In theory + // the code in agent/cache/watch.go should prevent this where we specifically check + // for context cancellation prior to sending the event. However we could cancel + // it after that check and finish setting up the new watches before getting the old + // events. Both the go routine scheduler and the OS thread scheduler would have to + // be acting up for this to happen. Regardless the way to ensure we don't get events + // for the old watches is to simply replace the chan we are expecting them from. + close(ac.cacheUpdates) + ac.cacheUpdates = make(chan cache.UpdateEvent, 10) + + // restart watches - this will be done with the correct token + cancelWatches, err := ac.setupCertificateCacheWatches(ctx) + if err != nil { + return fmt.Errorf("failed to restart watches after agent token update: %w", err) + } + ac.cancelWatches = cancelWatches + return nil +} + +// handleFallback is used when the current TLS certificate has expired and the normal +// updating mechanisms have failed to renew it quickly enough. This function will +// use the configured fallback mechanism to retrieve a new cert and start monitoring +// that one. +func (ac *AutoConfig) handleFallback(ctx context.Context) error { + ac.logger.Warn("agent's client certificate has expired") + // Background because the context is mainly useful when the agent is first starting up. + switch { + case ac.config.AutoConfig.Enabled: + resp, err := ac.getInitialConfiguration(ctx) + if err != nil { + return fmt.Errorf("error while retrieving new agent certificates via auto-config: %w", err) + } + + return ac.recordInitialConfiguration(resp) + case ac.config.AutoEncryptTLS: + reply, err := ac.autoEncryptInitialCerts(ctx) + if err != nil { + return fmt.Errorf("error while retrieving new agent certificate via auto-encrypt: %w", err) + } + return ac.setInitialTLSCertificates(reply) + default: + return fmt.Errorf("logic error: either auto-encrypt or auto-config must be enabled") + } +} + +// run is the private method to be spawn by the Start method for +// executing the main monitoring loop. +func (ac *AutoConfig) run(ctx context.Context, exit chan struct{}) { + // The fallbackTimer is used to notify AFTER the agents + // leaf certificate has expired and where we need + // to fall back to the less secure RPC endpoint just like + // if the agent was starting up new. + // + // Check 10sec (fallback leeway duration) after cert + // expires. The agent cache should be handling the expiration + // and renew it before then. + // + // If there is no cert, AutoEncryptCertNotAfter returns + // a value in the past which immediately triggers the + // renew, but this case shouldn't happen because at + // this point, auto_encrypt was just being setup + // successfully. + calcFallbackInterval := func() time.Duration { + certExpiry := ac.acConfig.TLSConfigurator.AutoEncryptCertNotAfter() + return certExpiry.Add(ac.acConfig.FallbackLeeway).Sub(time.Now()) + } + fallbackTimer := time.NewTimer(calcFallbackInterval()) + + // cleanup for once we are stopped + defer func() { + // cancel the go routines performing the cache watches + ac.cancelWatches() + // ensure we don't leak the timers go routine + fallbackTimer.Stop() + // stop receiving notifications for token updates + ac.acConfig.Tokens.StopNotify(ac.tokenUpdates) + + ac.logger.Debug("auto-config has been stopped") + + ac.Lock() + ac.cancel = nil + ac.running = false + // this should be the final cleanup task as its what notifies + // the rest of the world that this go routine has exited. + close(exit) + ac.Unlock() + }() + + for { + select { + case <-ctx.Done(): + ac.logger.Debug("stopping auto-config") + return + case <-ac.tokenUpdates.Ch: + ac.logger.Debug("handling a token update event") + + if err := ac.handleTokenUpdate(ctx); err != nil { + ac.logger.Error("error in handling token update event", "error", err) + } + case u := <-ac.cacheUpdates: + ac.logger.Debug("handling a cache update event", "correlation_id", u.CorrelationID) + + if err := ac.handleCacheEvent(u); err != nil { + ac.logger.Error("error in handling cache update event", "error", err) + } + + // reset the fallback timer as the certificate may have been updated + fallbackTimer.Stop() + fallbackTimer = time.NewTimer(calcFallbackInterval()) + case <-fallbackTimer.C: + // This is a safety net in case the cert doesn't get renewed + // in time. The agent would be stuck in that case because the watches + // never use the AutoEncrypt.Sign endpoint. + + // check auto encrypt client cert expiration + if ac.acConfig.TLSConfigurator.AutoEncryptCertExpired() { + if err := ac.handleFallback(ctx); err != nil { + ac.logger.Error("error when handling a certificate expiry event", "error", err) + fallbackTimer = time.NewTimer(ac.acConfig.FallbackRetry) + } else { + fallbackTimer = time.NewTimer(calcFallbackInterval()) + } + } else { + // this shouldn't be possible. We calculate the timer duration to be the certificate + // expiration time + some leeway (10s default). So whenever we get here the certificate + // should be expired. Regardless its probably worth resetting the timer. + fallbackTimer = time.NewTimer(calcFallbackInterval()) + } + } + } +} diff --git a/agent/auto-config/server_addr.go b/agent/auto-config/server_addr.go new file mode 100644 index 0000000000..98af4ae55a --- /dev/null +++ b/agent/auto-config/server_addr.go @@ -0,0 +1,111 @@ +package autoconf + +import ( + "fmt" + "net" + "strconv" + "strings" + + "github.com/hashicorp/consul/lib" + "github.com/hashicorp/go-discover" + discoverk8s "github.com/hashicorp/go-discover/provider/k8s" + + "github.com/hashicorp/go-hclog" +) + +func (ac *AutoConfig) discoverServers(servers []string) ([]string, error) { + providers := make(map[string]discover.Provider) + for k, v := range discover.Providers { + providers[k] = v + } + providers["k8s"] = &discoverk8s.Provider{} + + disco, err := discover.New( + discover.WithUserAgent(lib.UserAgent()), + discover.WithProviders(providers), + ) + + if err != nil { + return nil, fmt.Errorf("Failed to create go-discover resolver: %w", err) + } + + var addrs []string + for _, addr := range servers { + switch { + case strings.Contains(addr, "provider="): + resolved, err := disco.Addrs(addr, ac.logger.StandardLogger(&hclog.StandardLoggerOptions{InferLevels: true})) + if err != nil { + ac.logger.Error("failed to resolve go-discover auto-config servers", "configuration", addr, "err", err) + continue + } + + addrs = append(addrs, resolved...) + ac.logger.Debug("discovered auto-config servers", "servers", resolved) + default: + addrs = append(addrs, addr) + } + } + + return addrs, nil +} + +// autoConfigHosts is responsible for taking the list of server addresses +// and resolving any go-discover provider invocations. It will then return +// a list of hosts. These might be hostnames and is expected that DNS resolution +// may be performed after this function runs. Additionally these may contain +// ports so SplitHostPort could also be necessary. +func (ac *AutoConfig) autoConfigHosts() ([]string, error) { + // use servers known to gossip if there are any + if ac.acConfig.ServerProvider != nil { + if srv := ac.acConfig.ServerProvider.FindLANServer(); srv != nil { + return []string{srv.Addr.String()}, nil + } + } + + addrs, err := ac.discoverServers(ac.config.AutoConfig.ServerAddresses) + if err != nil { + return nil, err + } + + if len(addrs) == 0 { + return nil, fmt.Errorf("no auto-config server addresses available for use") + } + + return addrs, nil +} + +// resolveHost will take a single host string and convert it to a list of TCPAddrs +// This will process any port in the input as well as looking up the hostname using +// normal DNS resolution. +func (ac *AutoConfig) resolveHost(hostPort string) []net.TCPAddr { + port := ac.config.ServerPort + host, portStr, err := net.SplitHostPort(hostPort) + if err != nil { + if strings.Contains(err.Error(), "missing port in address") { + host = hostPort + } else { + ac.logger.Warn("error splitting host address into IP and port", "address", hostPort, "error", err) + return nil + } + } else { + port, err = strconv.Atoi(portStr) + if err != nil { + ac.logger.Warn("Parsed port is not an integer", "port", portStr, "error", err) + return nil + } + } + + // resolve the host to a list of IPs + ips, err := net.LookupIP(host) + if err != nil { + ac.logger.Warn("IP resolution failed", "host", host, "error", err) + return nil + } + + var addrs []net.TCPAddr + for _, ip := range ips { + addrs = append(addrs, net.TCPAddr{IP: ip, Port: port}) + } + + return addrs +} diff --git a/agent/auto-config/tls.go b/agent/auto-config/tls.go new file mode 100644 index 0000000000..380c9f9f8d --- /dev/null +++ b/agent/auto-config/tls.go @@ -0,0 +1,280 @@ +package autoconf + +import ( + "context" + "fmt" + "net" + + "github.com/hashicorp/consul/agent/cache" + cachetype "github.com/hashicorp/consul/agent/cache-types" + "github.com/hashicorp/consul/agent/connect" + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/proto/pbautoconf" +) + +const ( + // ID of the roots watch + rootsWatchID = "roots" + + // ID of the leaf watch + leafWatchID = "leaf" + + unknownTrustDomain = "unknown" +) + +var ( + defaultDNSSANs = []string{"localhost"} + + defaultIPSANs = []net.IP{{127, 0, 0, 1}, net.ParseIP("::1")} +) + +func extractPEMs(roots *structs.IndexedCARoots) []string { + var pems []string + for _, root := range roots.Roots { + pems = append(pems, root.RootCert) + } + return pems +} + +// updateTLSFromResponse will update the TLS certificate and roots in the shared +// TLS configurator. +func (ac *AutoConfig) updateTLSFromResponse(resp *pbautoconf.AutoConfigResponse) error { + var pems []string + for _, root := range resp.GetCARoots().GetRoots() { + pems = append(pems, root.RootCert) + } + + err := ac.acConfig.TLSConfigurator.UpdateAutoTLS( + resp.ExtraCACertificates, + pems, + resp.Certificate.GetCertPEM(), + resp.Certificate.GetPrivateKeyPEM(), + resp.Config.GetTLS().GetVerifyServerHostname(), + ) + + if err != nil { + return fmt.Errorf("Failed to update the TLS configurator with new certificates: %w", err) + } + + return nil +} + +func (ac *AutoConfig) setInitialTLSCertificates(certs *structs.SignedResponse) error { + if certs == nil { + return nil + } + + if err := ac.populateCertificateCache(certs); err != nil { + return fmt.Errorf("error populating cache with certificates: %w", err) + } + + connectCAPems := extractPEMs(&certs.ConnectCARoots) + + err := ac.acConfig.TLSConfigurator.UpdateAutoTLS( + certs.ManualCARoots, + connectCAPems, + certs.IssuedCert.CertPEM, + certs.IssuedCert.PrivateKeyPEM, + certs.VerifyServerHostname, + ) + + if err != nil { + return fmt.Errorf("error updating TLS configurator with certificates: %w", err) + } + + return nil +} + +func (ac *AutoConfig) populateCertificateCache(certs *structs.SignedResponse) error { + cert, err := connect.ParseCert(certs.IssuedCert.CertPEM) + if err != nil { + return fmt.Errorf("Failed to parse certificate: %w", err) + } + + // prepolutate roots cache + rootRes := cache.FetchResult{Value: &certs.ConnectCARoots, Index: certs.ConnectCARoots.QueryMeta.Index} + rootsReq := ac.caRootsRequest() + // getting the roots doesn't require a token so in order to potentially share the cache with another + if err := ac.acConfig.Cache.Prepopulate(cachetype.ConnectCARootName, rootRes, ac.config.Datacenter, "", rootsReq.CacheInfo().Key); err != nil { + return err + } + + leafReq := ac.leafCertRequest() + + // prepolutate leaf cache + certRes := cache.FetchResult{ + Value: &certs.IssuedCert, + Index: certs.IssuedCert.RaftIndex.ModifyIndex, + State: cachetype.ConnectCALeafSuccess(connect.EncodeSigningKeyID(cert.AuthorityKeyId)), + } + if err := ac.acConfig.Cache.Prepopulate(cachetype.ConnectCALeafName, certRes, leafReq.Datacenter, leafReq.Token, leafReq.Key()); err != nil { + return err + } + + return nil +} + +func (ac *AutoConfig) setupCertificateCacheWatches(ctx context.Context) (context.CancelFunc, error) { + notificationCtx, cancel := context.WithCancel(ctx) + + rootsReq := ac.caRootsRequest() + err := ac.acConfig.Cache.Notify(notificationCtx, cachetype.ConnectCARootName, &rootsReq, rootsWatchID, ac.cacheUpdates) + if err != nil { + cancel() + return nil, err + } + + leafReq := ac.leafCertRequest() + err = ac.acConfig.Cache.Notify(notificationCtx, cachetype.ConnectCALeafName, &leafReq, leafWatchID, ac.cacheUpdates) + if err != nil { + cancel() + return nil, err + } + + return cancel, nil +} + +func (ac *AutoConfig) updateCARoots(roots *structs.IndexedCARoots) error { + switch { + case ac.config.AutoConfig.Enabled: + ac.Lock() + defer ac.Unlock() + var err error + ac.autoConfigResponse.CARoots, err = translateCARootsToProtobuf(roots) + if err != nil { + return err + } + + if err := ac.updateTLSFromResponse(ac.autoConfigResponse); err != nil { + return err + } + return ac.persistAutoConfig(ac.autoConfigResponse) + case ac.config.AutoEncryptTLS: + pems := extractPEMs(roots) + + if err := ac.acConfig.TLSConfigurator.UpdateAutoTLSCA(pems); err != nil { + return fmt.Errorf("failed to update Connect CA certificates: %w", err) + } + return nil + default: + return nil + } +} + +func (ac *AutoConfig) updateLeafCert(cert *structs.IssuedCert) error { + switch { + case ac.config.AutoConfig.Enabled: + ac.Lock() + defer ac.Unlock() + var err error + ac.autoConfigResponse.Certificate, err = translateIssuedCertToProtobuf(cert) + if err != nil { + return err + } + + if err := ac.updateTLSFromResponse(ac.autoConfigResponse); err != nil { + return err + } + return ac.persistAutoConfig(ac.autoConfigResponse) + case ac.config.AutoEncryptTLS: + if err := ac.acConfig.TLSConfigurator.UpdateAutoTLSCert(cert.CertPEM, cert.PrivateKeyPEM); err != nil { + return fmt.Errorf("failed to update the agent leaf cert: %w", err) + } + return nil + default: + return nil + } +} + +func (ac *AutoConfig) caRootsRequest() structs.DCSpecificRequest { + return structs.DCSpecificRequest{Datacenter: ac.config.Datacenter} +} + +func (ac *AutoConfig) leafCertRequest() cachetype.ConnectCALeafRequest { + return cachetype.ConnectCALeafRequest{ + Datacenter: ac.config.Datacenter, + Agent: ac.config.NodeName, + DNSSAN: ac.getDNSSANs(), + IPSAN: ac.getIPSANs(), + Token: ac.acConfig.Tokens.AgentToken(), + } +} + +// generateCSR will generate a CSR for an Agent certificate. This should +// be sent along with the AutoConfig.InitialConfiguration RPC or the +// AutoEncrypt.Sign RPC. The generated CSR does NOT have a real trust domain +// as when generating this we do not yet have the CA roots. The server will +// update the trust domain for us though. +func (ac *AutoConfig) generateCSR() (csr string, key string, err error) { + // We don't provide the correct host here, because we don't know any + // better at this point. Apart from the domain, we would need the + // ClusterID, which we don't have. This is why we go with + // unknownTrustDomain the first time. Subsequent CSRs will have the + // correct TrustDomain. + id := &connect.SpiffeIDAgent{ + // will be replaced + Host: unknownTrustDomain, + Datacenter: ac.config.Datacenter, + Agent: ac.config.NodeName, + } + + caConfig, err := ac.config.ConnectCAConfiguration() + if err != nil { + return "", "", fmt.Errorf("Cannot generate CSR: %w", err) + } + + conf, err := caConfig.GetCommonConfig() + if err != nil { + return "", "", fmt.Errorf("Failed to load common CA configuration: %w", err) + } + + if conf.PrivateKeyType == "" { + conf.PrivateKeyType = connect.DefaultPrivateKeyType + } + if conf.PrivateKeyBits == 0 { + conf.PrivateKeyBits = connect.DefaultPrivateKeyBits + } + + // Create a new private key + pk, pkPEM, err := connect.GeneratePrivateKeyWithConfig(conf.PrivateKeyType, conf.PrivateKeyBits) + if err != nil { + return "", "", fmt.Errorf("Failed to generate private key: %w", err) + } + + dnsNames := ac.getDNSSANs() + ipAddresses := ac.getIPSANs() + + // Create a CSR. + // + // The Common Name includes the dummy trust domain for now but Server will + // override this when it is signed anyway so it's OK. + cn := connect.AgentCN(ac.config.NodeName, unknownTrustDomain) + csr, err = connect.CreateCSR(id, cn, pk, dnsNames, ipAddresses) + if err != nil { + return "", "", err + } + + return csr, pkPEM, nil +} + +func (ac *AutoConfig) getDNSSANs() []string { + sans := defaultDNSSANs + switch { + case ac.config.AutoConfig.Enabled: + sans = append(sans, ac.config.AutoConfig.DNSSANs...) + case ac.config.AutoEncryptTLS: + sans = append(sans, ac.config.AutoEncryptDNSSAN...) + } + return sans +} + +func (ac *AutoConfig) getIPSANs() []net.IP { + sans := defaultIPSANs + switch { + case ac.config.AutoConfig.Enabled: + sans = append(sans, ac.config.AutoConfig.IPSANs...) + case ac.config.AutoEncryptTLS: + sans = append(sans, ac.config.AutoEncryptIPSAN...) + } + return sans +} diff --git a/agent/auto-config/tls_test.go b/agent/auto-config/tls_test.go new file mode 100644 index 0000000000..400d7be0df --- /dev/null +++ b/agent/auto-config/tls_test.go @@ -0,0 +1,56 @@ +package autoconf + +import ( + "testing" + "time" + + "github.com/hashicorp/consul/agent/connect" + "github.com/hashicorp/consul/agent/structs" + "github.com/stretchr/testify/require" +) + +func newLeaf(t *testing.T, agentName, datacenter string, ca *structs.CARoot, idx uint64, expiration time.Duration) *structs.IssuedCert { + t.Helper() + + pub, priv, err := connect.TestAgentLeaf(t, agentName, datacenter, ca, expiration) + require.NoError(t, err) + cert, err := connect.ParseCert(pub) + require.NoError(t, err) + + spiffeID, err := connect.ParseCertURI(cert.URIs[0]) + require.NoError(t, err) + + agentID, ok := spiffeID.(*connect.SpiffeIDAgent) + require.True(t, ok, "certificate doesn't have an agent leaf cert URI") + + return &structs.IssuedCert{ + SerialNumber: cert.SerialNumber.String(), + CertPEM: pub, + PrivateKeyPEM: priv, + ValidAfter: cert.NotBefore, + ValidBefore: cert.NotAfter, + Agent: agentID.Agent, + AgentURI: agentID.URI().String(), + EnterpriseMeta: *structs.DefaultEnterpriseMeta(), + RaftIndex: structs.RaftIndex{ + CreateIndex: idx, + ModifyIndex: idx, + }, + } +} + +func testCerts(t *testing.T, agentName, datacenter string) (*structs.CARoot, *structs.IndexedCARoots, *structs.IssuedCert) { + ca := connect.TestCA(t, nil) + ca.IntermediateCerts = make([]string, 0) + cert := newLeaf(t, agentName, datacenter, ca, 1, 10*time.Minute) + indexedRoots := structs.IndexedCARoots{ + ActiveRootID: ca.ID, + TrustDomain: connect.TestClusterID, + Roots: []*structs.CARoot{ + ca, + }, + QueryMeta: structs.QueryMeta{Index: 1}, + } + + return ca, &indexedRoots, cert +} diff --git a/agent/cert-monitor/cert_monitor.go b/agent/cert-monitor/cert_monitor.go deleted file mode 100644 index 0ad50e8a11..0000000000 --- a/agent/cert-monitor/cert_monitor.go +++ /dev/null @@ -1,505 +0,0 @@ -package certmon - -import ( - "context" - "fmt" - "io/ioutil" - "sync" - "time" - - "github.com/hashicorp/consul/agent/cache" - cachetype "github.com/hashicorp/consul/agent/cache-types" - "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/agent/token" - "github.com/hashicorp/consul/tlsutil" - "github.com/hashicorp/go-hclog" -) - -const ( - // ID of the roots watch - rootsWatchID = "roots" - - // ID of the leaf watch - leafWatchID = "leaf" -) - -// Cache is an interface to represent the methods of the -// agent/cache.Cache struct that we care about -type Cache interface { - Notify(ctx context.Context, t string, r cache.Request, correlationID string, ch chan<- cache.UpdateEvent) error - Prepopulate(t string, result cache.FetchResult, dc string, token string, key string) error -} - -// CertMonitor will setup the proper watches to ensure that -// the Agent's Connect TLS certificate remains up to date -type CertMonitor struct { - logger hclog.Logger - cache Cache - tlsConfigurator *tlsutil.Configurator - tokens *token.Store - leafReq cachetype.ConnectCALeafRequest - rootsReq structs.DCSpecificRequest - persist PersistFunc - fallback FallbackFunc - fallbackLeeway time.Duration - fallbackRetry time.Duration - - l sync.Mutex - running bool - // cancel is used to cancel the entire CertMonitor - // go routine. This is the main field protected - // by the mutex as it being non-nil indicates that - // the go routine has been started and is stoppable. - // note that it doesn't indcate that the go routine - // is currently running. - cancel context.CancelFunc - - // cancelWatches is used to cancel the existing - // cache watches. This is mainly only necessary - // when the Agent token changes - cancelWatches context.CancelFunc - - // cacheUpdates is the chan used to have the cache - // send us back events - cacheUpdates chan cache.UpdateEvent - // tokenUpdates is the struct used to receive - // events from the token store when the Agent - // token is updated. - tokenUpdates token.Notifier - - // this is used to keep a local copy of the certs - // keys and ca certs. It will be used to persist - // all of the local state at once. - certs structs.SignedResponse -} - -// New creates a new CertMonitor for automatically rotating -// an Agent's Connect Certificate -func New(config *Config) (*CertMonitor, error) { - logger := config.Logger - if logger == nil { - logger = hclog.New(&hclog.LoggerOptions{ - Level: 0, - Output: ioutil.Discard, - }) - } - - if config.FallbackLeeway == 0 { - config.FallbackLeeway = 10 * time.Second - } - if config.FallbackRetry == 0 { - config.FallbackRetry = time.Minute - } - - if config.Cache == nil { - return nil, fmt.Errorf("CertMonitor creation requires a Cache") - } - - if config.TLSConfigurator == nil { - return nil, fmt.Errorf("CertMonitor creation requires a TLS Configurator") - } - - if config.Fallback == nil { - return nil, fmt.Errorf("CertMonitor creation requires specifying a FallbackFunc") - } - - if config.Datacenter == "" { - return nil, fmt.Errorf("CertMonitor creation requires specifying the datacenter") - } - - if config.NodeName == "" { - return nil, fmt.Errorf("CertMonitor creation requires specifying the agent's node name") - } - - if config.Tokens == nil { - return nil, fmt.Errorf("CertMonitor creation requires specifying a token store") - } - - return &CertMonitor{ - logger: logger, - cache: config.Cache, - tokens: config.Tokens, - tlsConfigurator: config.TLSConfigurator, - persist: config.Persist, - fallback: config.Fallback, - fallbackLeeway: config.FallbackLeeway, - fallbackRetry: config.FallbackRetry, - rootsReq: structs.DCSpecificRequest{Datacenter: config.Datacenter}, - leafReq: cachetype.ConnectCALeafRequest{ - Datacenter: config.Datacenter, - Agent: config.NodeName, - DNSSAN: config.DNSSANs, - IPSAN: config.IPSANs, - }, - }, nil -} - -// Update is responsible for priming the cache with the certificates -// as well as injecting them into the TLS configurator -func (m *CertMonitor) Update(certs *structs.SignedResponse) error { - if certs == nil { - return nil - } - - m.certs = *certs - - if err := m.populateCache(certs); err != nil { - return fmt.Errorf("error populating cache with certificates: %w", err) - } - - connectCAPems := []string{} - for _, ca := range certs.ConnectCARoots.Roots { - connectCAPems = append(connectCAPems, ca.RootCert) - } - - // Note that its expected that the private key be within the IssuedCert in the - // SignedResponse. This isn't how a server would send back the response and requires - // that the recipient of the response who also has access to the private key will - // have filled it in. The Cache definitely does this but auto-encrypt/auto-config - // will need to ensure the original response is setup this way too. - err := m.tlsConfigurator.UpdateAutoTLS( - certs.ManualCARoots, - connectCAPems, - certs.IssuedCert.CertPEM, - certs.IssuedCert.PrivateKeyPEM, - certs.VerifyServerHostname) - - if err != nil { - return fmt.Errorf("error updating TLS configurator with certificates: %w", err) - } - - return nil -} - -// populateCache is responsible for inserting the certificates into the cache -func (m *CertMonitor) populateCache(resp *structs.SignedResponse) error { - cert, err := connect.ParseCert(resp.IssuedCert.CertPEM) - if err != nil { - return fmt.Errorf("Failed to parse certificate: %w", err) - } - - // prepolutate roots cache - rootRes := cache.FetchResult{Value: &resp.ConnectCARoots, Index: resp.ConnectCARoots.QueryMeta.Index} - // getting the roots doesn't require a token so in order to potentially share the cache with another - if err := m.cache.Prepopulate(cachetype.ConnectCARootName, rootRes, m.rootsReq.Datacenter, "", m.rootsReq.CacheInfo().Key); err != nil { - return err - } - - // copy the template and update the token - leafReq := m.leafReq - leafReq.Token = m.tokens.AgentToken() - - // prepolutate leaf cache - certRes := cache.FetchResult{ - Value: &resp.IssuedCert, - Index: resp.ConnectCARoots.QueryMeta.Index, - State: cachetype.ConnectCALeafSuccess(connect.EncodeSigningKeyID(cert.AuthorityKeyId)), - } - if err := m.cache.Prepopulate(cachetype.ConnectCALeafName, certRes, leafReq.Datacenter, leafReq.Token, leafReq.Key()); err != nil { - return err - } - return nil -} - -// Start spawns the go routine to monitor the certificate and ensure it is -// rotated/renewed as necessary. The chan will indicate once the started -// go routine has exited -func (m *CertMonitor) Start(ctx context.Context) (<-chan struct{}, error) { - m.l.Lock() - defer m.l.Unlock() - - if m.running || m.cancel != nil { - return nil, fmt.Errorf("the CertMonitor is already running") - } - - // create the top level context to control the go - // routine executing the `run` method - ctx, cancel := context.WithCancel(ctx) - - // create the channel to get cache update events through - // really we should only ever get 10 updates - m.cacheUpdates = make(chan cache.UpdateEvent, 10) - - // setup the cache watches - cancelWatches, err := m.setupCacheWatches(ctx) - if err != nil { - cancel() - return nil, fmt.Errorf("error setting up cache watches: %w", err) - } - - // start the token update notifier - m.tokenUpdates = m.tokens.Notify(token.TokenKindAgent) - - // store the cancel funcs - m.cancel = cancel - m.cancelWatches = cancelWatches - - m.running = true - exit := make(chan struct{}) - go m.run(ctx, exit) - - m.logger.Info("certificate monitor started") - return exit, nil -} - -// Stop manually stops the go routine spawned by Start and -// returns whether the go routine was still running before -// cancelling. -// -// Note that cancelling the context passed into Start will -// also cause the go routine to stop -func (m *CertMonitor) Stop() bool { - m.l.Lock() - defer m.l.Unlock() - - if !m.running { - return false - } - - if m.cancel != nil { - m.cancel() - } - - return true -} - -// IsRunning returns whether the go routine to perform certificate monitoring -// is already running. -func (m *CertMonitor) IsRunning() bool { - m.l.Lock() - defer m.l.Unlock() - return m.running -} - -// setupCacheWatches will start both the roots and leaf cert watch with a new child -// context and an up to date ACL token. The watches are started with a new child context -// whose CancelFunc is also returned. -func (m *CertMonitor) setupCacheWatches(ctx context.Context) (context.CancelFunc, error) { - notificationCtx, cancel := context.WithCancel(ctx) - - // copy the request - rootsReq := m.rootsReq - - err := m.cache.Notify(notificationCtx, cachetype.ConnectCARootName, &rootsReq, rootsWatchID, m.cacheUpdates) - if err != nil { - cancel() - return nil, err - } - - // copy the request - leafReq := m.leafReq - leafReq.Token = m.tokens.AgentToken() - - err = m.cache.Notify(notificationCtx, cachetype.ConnectCALeafName, &leafReq, leafWatchID, m.cacheUpdates) - if err != nil { - cancel() - return nil, err - } - - return cancel, nil -} - -// handleCacheEvent is used to handle event notifications from the cache for the roots -// or leaf cert watches. -func (m *CertMonitor) handleCacheEvent(u cache.UpdateEvent) error { - switch u.CorrelationID { - case rootsWatchID: - m.logger.Debug("roots watch fired - updating CA certificates") - if u.Err != nil { - return fmt.Errorf("root watch returned an error: %w", u.Err) - } - - roots, ok := u.Result.(*structs.IndexedCARoots) - if !ok { - return fmt.Errorf("invalid type for roots watch response: %T", u.Result) - } - - m.certs.ConnectCARoots = *roots - - var pems []string - for _, root := range roots.Roots { - pems = append(pems, root.RootCert) - } - - if err := m.tlsConfigurator.UpdateAutoTLSCA(pems); err != nil { - return fmt.Errorf("failed to update Connect CA certificates: %w", err) - } - - if m.persist != nil { - copy := m.certs - if err := m.persist(©); err != nil { - return fmt.Errorf("failed to persist certificate package: %w", err) - } - } - case leafWatchID: - m.logger.Debug("leaf certificate watch fired - updating TLS certificate") - if u.Err != nil { - return fmt.Errorf("leaf watch returned an error: %w", u.Err) - } - - leaf, ok := u.Result.(*structs.IssuedCert) - if !ok { - return fmt.Errorf("invalid type for agent leaf cert watch response: %T", u.Result) - } - - m.certs.IssuedCert = *leaf - - if err := m.tlsConfigurator.UpdateAutoTLSCert(leaf.CertPEM, leaf.PrivateKeyPEM); err != nil { - return fmt.Errorf("failed to update the agent leaf cert: %w", err) - } - - if m.persist != nil { - copy := m.certs - if err := m.persist(©); err != nil { - return fmt.Errorf("failed to persist certificate package: %w", err) - } - } - } - - return nil -} - -// handleTokenUpdate is used when a notification about the agent token being updated -// is received and various watches need cancelling/restarting to use the new token. -func (m *CertMonitor) handleTokenUpdate(ctx context.Context) error { - m.logger.Debug("Agent token updated - resetting watches") - - // TODO (autoencrypt) Prepopulate the cache with the new token with - // the existing cache entry with the old token. The certificate doesn't - // need to change just because the token has. However there isn't a - // good way to make that happen and this behavior is benign enough - // that I am going to push off implementing it. - - // the agent token has been updated so we must update our leaf cert watch. - // this cancels the current watches before setting up new ones - m.cancelWatches() - - // recreate the chan for cache updates. This is a precautionary measure to ensure - // that we don't accidentally get notified for the new watches being setup before - // a blocking query in the cache returns and sends data to the old chan. In theory - // the code in agent/cache/watch.go should prevent this where we specifically check - // for context cancellation prior to sending the event. However we could cancel - // it after that check and finish setting up the new watches before getting the old - // events. Both the go routine scheduler and the OS thread scheduler would have to - // be acting up for this to happen. Regardless the way to ensure we don't get events - // for the old watches is to simply replace the chan we are expecting them from. - close(m.cacheUpdates) - m.cacheUpdates = make(chan cache.UpdateEvent, 10) - - // restart watches - this will be done with the correct token - cancelWatches, err := m.setupCacheWatches(ctx) - if err != nil { - return fmt.Errorf("failed to restart watches after agent token update: %w", err) - } - m.cancelWatches = cancelWatches - return nil -} - -// handleFallback is used when the current TLS certificate has expired and the normal -// updating mechanisms have failed to renew it quickly enough. This function will -// use the configured fallback mechanism to retrieve a new cert and start monitoring -// that one. -func (m *CertMonitor) handleFallback(ctx context.Context) error { - m.logger.Warn("agent's client certificate has expired") - // Background because the context is mainly useful when the agent is first starting up. - reply, err := m.fallback(ctx) - if err != nil { - return fmt.Errorf("error when getting new agent certificate: %w", err) - } - - if m.persist != nil { - if err := m.persist(reply); err != nil { - return fmt.Errorf("failed to persist certificate package: %w", err) - } - } - return m.Update(reply) -} - -// run is the private method to be spawn by the Start method for -// executing the main monitoring loop. -func (m *CertMonitor) run(ctx context.Context, exit chan struct{}) { - // The fallbackTimer is used to notify AFTER the agents - // leaf certificate has expired and where we need - // to fall back to the less secure RPC endpoint just like - // if the agent was starting up new. - // - // Check 10sec (fallback leeway duration) after cert - // expires. The agent cache should be handling the expiration - // and renew it before then. - // - // If there is no cert, AutoEncryptCertNotAfter returns - // a value in the past which immediately triggers the - // renew, but this case shouldn't happen because at - // this point, auto_encrypt was just being setup - // successfully. - calcFallbackInterval := func() time.Duration { - certExpiry := m.tlsConfigurator.AutoEncryptCertNotAfter() - return certExpiry.Add(m.fallbackLeeway).Sub(time.Now()) - } - fallbackTimer := time.NewTimer(calcFallbackInterval()) - - // cleanup for once we are stopped - defer func() { - // cancel the go routines performing the cache watches - m.cancelWatches() - // ensure we don't leak the timers go routine - fallbackTimer.Stop() - // stop receiving notifications for token updates - m.tokens.StopNotify(m.tokenUpdates) - - m.logger.Debug("certificate monitor has been stopped") - - m.l.Lock() - m.cancel = nil - m.running = false - m.l.Unlock() - - // this should be the final cleanup task as its what notifies - // the rest of the world that this go routine has exited. - close(exit) - }() - - for { - select { - case <-ctx.Done(): - m.logger.Debug("stopping the certificate monitor") - return - case <-m.tokenUpdates.Ch: - m.logger.Debug("handling a token update event") - - if err := m.handleTokenUpdate(ctx); err != nil { - m.logger.Error("error in handling token update event", "error", err) - } - case u := <-m.cacheUpdates: - m.logger.Debug("handling a cache update event", "correlation_id", u.CorrelationID) - - if err := m.handleCacheEvent(u); err != nil { - m.logger.Error("error in handling cache update event", "error", err) - } - - // reset the fallback timer as the certificate may have been updated - fallbackTimer.Stop() - fallbackTimer = time.NewTimer(calcFallbackInterval()) - case <-fallbackTimer.C: - // This is a safety net in case the auto_encrypt cert doesn't get renewed - // in time. The agent would be stuck in that case because the watches - // never use the AutoEncrypt.Sign endpoint. - - // check auto encrypt client cert expiration - if m.tlsConfigurator.AutoEncryptCertExpired() { - if err := m.handleFallback(ctx); err != nil { - m.logger.Error("error when handling a certificate expiry event", "error", err) - fallbackTimer = time.NewTimer(m.fallbackRetry) - } else { - fallbackTimer = time.NewTimer(calcFallbackInterval()) - } - } else { - // this shouldn't be possible. We calculate the timer duration to be the certificate - // expiration time + some leeway (10s default). So whenever we get here the certificate - // should be expired. Regardless its probably worth resetting the timer. - fallbackTimer = time.NewTimer(calcFallbackInterval()) - } - } - } -} diff --git a/agent/cert-monitor/cert_monitor_test.go b/agent/cert-monitor/cert_monitor_test.go deleted file mode 100644 index 2b6ea76d86..0000000000 --- a/agent/cert-monitor/cert_monitor_test.go +++ /dev/null @@ -1,731 +0,0 @@ -package certmon - -import ( - "context" - "crypto/tls" - "fmt" - "net" - "sync" - "testing" - "time" - - "github.com/hashicorp/consul/agent/cache" - cachetype "github.com/hashicorp/consul/agent/cache-types" - "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/agent/token" - "github.com/hashicorp/consul/sdk/testutil" - "github.com/hashicorp/consul/sdk/testutil/retry" - "github.com/hashicorp/consul/tlsutil" - "github.com/hashicorp/go-uuid" - - "github.com/stretchr/testify/mock" - "github.com/stretchr/testify/require" -) - -type mockFallback struct { - mock.Mock -} - -func (m *mockFallback) fallback(ctx context.Context) (*structs.SignedResponse, error) { - ret := m.Called() - resp, _ := ret.Get(0).(*structs.SignedResponse) - return resp, ret.Error(1) -} - -type mockPersist struct { - mock.Mock -} - -func (m *mockPersist) persist(resp *structs.SignedResponse) error { - return m.Called(resp).Error(0) -} - -type mockWatcher struct { - ch chan<- cache.UpdateEvent - done <-chan struct{} -} - -type mockCache struct { - mock.Mock - - lock sync.Mutex - watchers map[string][]mockWatcher -} - -func (m *mockCache) Notify(ctx context.Context, t string, r cache.Request, correlationID string, ch chan<- cache.UpdateEvent) error { - m.lock.Lock() - key := r.CacheInfo().Key - m.watchers[key] = append(m.watchers[key], mockWatcher{ch: ch, done: ctx.Done()}) - m.lock.Unlock() - ret := m.Called(t, r, correlationID) - return ret.Error(0) -} - -func (m *mockCache) Prepopulate(t string, result cache.FetchResult, dc string, token string, key string) error { - ret := m.Called(t, result, dc, token, key) - return ret.Error(0) -} - -func (m *mockCache) sendNotification(ctx context.Context, key string, u cache.UpdateEvent) bool { - m.lock.Lock() - defer m.lock.Unlock() - - watchers, ok := m.watchers[key] - if !ok || len(m.watchers) < 1 { - return false - } - - var newWatchers []mockWatcher - - for _, watcher := range watchers { - select { - case watcher.ch <- u: - newWatchers = append(newWatchers, watcher) - case <-watcher.done: - // do nothing, this watcher will be removed from the list - case <-ctx.Done(): - // return doesn't matter here really, the test is being cancelled - return true - } - } - - // this removes any already cancelled watches from being sent to - m.watchers[key] = newWatchers - - return true -} - -func newMockCache(t *testing.T) *mockCache { - mcache := mockCache{watchers: make(map[string][]mockWatcher)} - mcache.Test(t) - return &mcache -} - -func waitForChan(timer *time.Timer, ch <-chan struct{}) bool { - select { - case <-timer.C: - return false - case <-ch: - return true - } -} - -func waitForChans(timeout time.Duration, chans ...<-chan struct{}) bool { - timer := time.NewTimer(timeout) - defer timer.Stop() - - for _, ch := range chans { - if !waitForChan(timer, ch) { - return false - } - } - return true -} - -func testTLSConfigurator(t *testing.T) *tlsutil.Configurator { - t.Helper() - logger := testutil.Logger(t) - cfg, err := tlsutil.NewConfigurator(tlsutil.Config{AutoTLS: true}, logger) - require.NoError(t, err) - return cfg -} - -func newLeaf(t *testing.T, ca *structs.CARoot, idx uint64, expiration time.Duration) *structs.IssuedCert { - t.Helper() - - pub, priv, err := connect.TestAgentLeaf(t, "node", "foo", ca, expiration) - require.NoError(t, err) - cert, err := connect.ParseCert(pub) - require.NoError(t, err) - - spiffeID, err := connect.ParseCertURI(cert.URIs[0]) - require.NoError(t, err) - - agentID, ok := spiffeID.(*connect.SpiffeIDAgent) - require.True(t, ok, "certificate doesn't have an agent leaf cert URI") - - return &structs.IssuedCert{ - SerialNumber: cert.SerialNumber.String(), - CertPEM: pub, - PrivateKeyPEM: priv, - ValidAfter: cert.NotBefore, - ValidBefore: cert.NotAfter, - Agent: agentID.Agent, - AgentURI: agentID.URI().String(), - EnterpriseMeta: *structs.DefaultEnterpriseMeta(), - RaftIndex: structs.RaftIndex{ - CreateIndex: idx, - ModifyIndex: idx, - }, - } -} - -type testCertMonitor struct { - monitor *CertMonitor - mcache *mockCache - tls *tlsutil.Configurator - tokens *token.Store - fallback *mockFallback - persist *mockPersist - - extraCACerts []string - initialCert *structs.IssuedCert - initialRoots *structs.IndexedCARoots - - // these are some variables that the CertMonitor was created with - datacenter string - nodeName string - dns []string - ips []net.IP - verifyServerHostname bool -} - -func newTestCertMonitor(t *testing.T) testCertMonitor { - t.Helper() - - tlsConfigurator := testTLSConfigurator(t) - tokens := new(token.Store) - - id, err := uuid.GenerateUUID() - require.NoError(t, err) - tokens.UpdateAgentToken(id, token.TokenSourceConfig) - - ca := connect.TestCA(t, nil) - manualCA := connect.TestCA(t, nil) - // this cert is setup to not expire quickly. this will prevent - // the test from accidentally running the fallback routine - // before we want to force that to happen. - issued := newLeaf(t, ca, 1, 10*time.Minute) - - indexedRoots := structs.IndexedCARoots{ - ActiveRootID: ca.ID, - TrustDomain: connect.TestClusterID, - Roots: []*structs.CARoot{ - ca, - }, - QueryMeta: structs.QueryMeta{ - Index: 1, - }, - } - - initialCerts := &structs.SignedResponse{ - ConnectCARoots: indexedRoots, - IssuedCert: *issued, - ManualCARoots: []string{manualCA.RootCert}, - VerifyServerHostname: true, - } - - dnsSANs := []string{"test.dev"} - ipSANs := []net.IP{net.IPv4(198, 18, 0, 1)} - - fallback := &mockFallback{} - fallback.Test(t) - persist := &mockPersist{} - persist.Test(t) - - mcache := newMockCache(t) - rootRes := cache.FetchResult{Value: &indexedRoots, Index: 1} - rootsReq := structs.DCSpecificRequest{Datacenter: "foo"} - mcache.On("Prepopulate", cachetype.ConnectCARootName, rootRes, "foo", "", rootsReq.CacheInfo().Key).Return(nil).Once() - - leafReq := cachetype.ConnectCALeafRequest{ - Token: tokens.AgentToken(), - Agent: "node", - Datacenter: "foo", - DNSSAN: dnsSANs, - IPSAN: ipSANs, - } - leafRes := cache.FetchResult{ - Value: issued, - Index: 1, - State: cachetype.ConnectCALeafSuccess(ca.SigningKeyID), - } - mcache.On("Prepopulate", cachetype.ConnectCALeafName, leafRes, "foo", tokens.AgentToken(), leafReq.Key()).Return(nil).Once() - - // we can assert more later but this should always be done. - defer mcache.AssertExpectations(t) - - cfg := new(Config). - WithCache(mcache). - WithLogger(testutil.Logger(t)). - WithTLSConfigurator(tlsConfigurator). - WithTokens(tokens). - WithFallback(fallback.fallback). - WithDNSSANs(dnsSANs). - WithIPSANs(ipSANs). - WithDatacenter("foo"). - WithNodeName("node"). - WithFallbackLeeway(time.Nanosecond). - WithFallbackRetry(time.Millisecond). - WithPersistence(persist.persist) - - monitor, err := New(cfg) - require.NoError(t, err) - require.NotNil(t, monitor) - - require.NoError(t, monitor.Update(initialCerts)) - - return testCertMonitor{ - monitor: monitor, - tls: tlsConfigurator, - tokens: tokens, - mcache: mcache, - persist: persist, - fallback: fallback, - extraCACerts: []string{manualCA.RootCert}, - initialCert: issued, - initialRoots: &indexedRoots, - datacenter: "foo", - nodeName: "node", - dns: dnsSANs, - ips: ipSANs, - verifyServerHostname: true, - } -} - -func tlsCertificateFromIssued(t *testing.T, issued *structs.IssuedCert) *tls.Certificate { - t.Helper() - - cert, err := tls.X509KeyPair([]byte(issued.CertPEM), []byte(issued.PrivateKeyPEM)) - require.NoError(t, err) - return &cert -} - -// convenience method to get a TLS Certificate from the intial issued certificate and priv key -func (cm *testCertMonitor) initialTLSCertificate(t *testing.T) *tls.Certificate { - t.Helper() - return tlsCertificateFromIssued(t, cm.initialCert) -} - -// just a convenience method to get a list of all the CA pems that we set up regardless -// of manual vs connect. -func (cm *testCertMonitor) initialCACerts() []string { - pems := cm.extraCACerts - for _, root := range cm.initialRoots.Roots { - pems = append(pems, root.RootCert) - } - return pems -} - -func (cm *testCertMonitor) assertExpectations(t *testing.T) { - cm.mcache.AssertExpectations(t) - cm.fallback.AssertExpectations(t) - cm.persist.AssertExpectations(t) -} - -func TestCertMonitor_InitialCerts(t *testing.T) { - // this also ensures that the cache was prepopulated properly - cm := newTestCertMonitor(t) - - // verify that the certificate was injected into the TLS configurator correctly - require.Equal(t, cm.initialTLSCertificate(t), cm.tls.Cert()) - // verify that the CA certs (both Connect and manual ones) were injected correctly - require.ElementsMatch(t, cm.initialCACerts(), cm.tls.CAPems()) - // verify that the auto-tls verify server hostname setting was injected correctly - require.Equal(t, cm.verifyServerHostname, cm.tls.VerifyServerHostname()) -} - -func TestCertMonitor_GoRoutineManagement(t *testing.T) { - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - - cm := newTestCertMonitor(t) - - // ensure that the monitor is not running - require.False(t, cm.monitor.IsRunning()) - - // ensure that nothing bad happens and that it reports as stopped - require.False(t, cm.monitor.Stop()) - - // we will never send notifications so these just ignore everything - cm.mcache.On("Notify", cachetype.ConnectCARootName, &structs.DCSpecificRequest{Datacenter: cm.datacenter}, rootsWatchID).Return(nil).Times(2) - cm.mcache.On("Notify", cachetype.ConnectCALeafName, - &cachetype.ConnectCALeafRequest{ - Token: cm.tokens.AgentToken(), - Datacenter: cm.datacenter, - Agent: cm.nodeName, - DNSSAN: cm.dns, - IPSAN: cm.ips, - }, - leafWatchID, - ).Return(nil).Times(2) - - done, err := cm.monitor.Start(ctx) - require.NoError(t, err) - require.True(t, cm.monitor.IsRunning()) - _, err = cm.monitor.Start(ctx) - testutil.RequireErrorContains(t, err, "the CertMonitor is already running") - require.True(t, cm.monitor.Stop()) - - require.True(t, waitForChans(100*time.Millisecond, done), "monitor didn't shut down") - require.False(t, cm.monitor.IsRunning()) - done, err = cm.monitor.Start(ctx) - require.NoError(t, err) - - // ensure that context cancellation causes us to stop as well - cancel() - require.True(t, waitForChans(100*time.Millisecond, done)) - - cm.assertExpectations(t) -} - -func startedCertMonitor(t *testing.T) (context.Context, testCertMonitor) { - ctx, cancel := context.WithCancel(context.Background()) - t.Cleanup(cancel) - - cm := newTestCertMonitor(t) - - rootsCtx, rootsCancel := context.WithCancel(ctx) - defer rootsCancel() - leafCtx, leafCancel := context.WithCancel(ctx) - defer leafCancel() - - // initial roots watch - cm.mcache.On("Notify", cachetype.ConnectCARootName, - &structs.DCSpecificRequest{ - Datacenter: cm.datacenter, - }, - rootsWatchID). - Return(nil). - Once(). - Run(func(_ mock.Arguments) { - rootsCancel() - }) - // the initial watch after starting the monitor - cm.mcache.On("Notify", cachetype.ConnectCALeafName, - &cachetype.ConnectCALeafRequest{ - Token: cm.tokens.AgentToken(), - Datacenter: cm.datacenter, - Agent: cm.nodeName, - DNSSAN: cm.dns, - IPSAN: cm.ips, - }, - leafWatchID). - Return(nil). - Once(). - Run(func(_ mock.Arguments) { - leafCancel() - }) - - done, err := cm.monitor.Start(ctx) - require.NoError(t, err) - // this prevents logs after the test finishes - t.Cleanup(func() { - cm.monitor.Stop() - <-done - }) - - require.True(t, - waitForChans(100*time.Millisecond, rootsCtx.Done(), leafCtx.Done()), - "not all watches were started within the alotted time") - - return ctx, cm -} - -// This test ensures that the cache watches are restarted with the updated -// token after receiving a token update -func TestCertMonitor_TokenUpdate(t *testing.T) { - ctx, cm := startedCertMonitor(t) - - rootsCtx, rootsCancel := context.WithCancel(ctx) - defer rootsCancel() - leafCtx, leafCancel := context.WithCancel(ctx) - defer leafCancel() - - newToken := "8e4fe8db-162d-42d8-81ca-710fb2280ad0" - - // we expect a new roots watch because when the leaf cert watch is restarted so is the root cert watch - cm.mcache.On("Notify", cachetype.ConnectCARootName, - &structs.DCSpecificRequest{ - Datacenter: cm.datacenter, - }, - rootsWatchID). - Return(nil). - Once(). - Run(func(_ mock.Arguments) { - rootsCancel() - }) - - secondWatch := &cachetype.ConnectCALeafRequest{ - Token: newToken, - Datacenter: cm.datacenter, - Agent: cm.nodeName, - DNSSAN: cm.dns, - IPSAN: cm.ips, - } - // the new watch after updating the token - cm.mcache.On("Notify", cachetype.ConnectCALeafName, secondWatch, leafWatchID). - Return(nil). - Once(). - Run(func(args mock.Arguments) { - leafCancel() - }) - - cm.tokens.UpdateAgentToken(newToken, token.TokenSourceAPI) - - require.True(t, - waitForChans(100*time.Millisecond, rootsCtx.Done(), leafCtx.Done()), - "not all watches were restarted within the alotted time") - - cm.assertExpectations(t) -} - -func TestCertMonitor_RootsUpdate(t *testing.T) { - ctx, cm := startedCertMonitor(t) - - secondCA := connect.TestCA(t, cm.initialRoots.Roots[0]) - secondRoots := structs.IndexedCARoots{ - ActiveRootID: secondCA.ID, - TrustDomain: connect.TestClusterID, - Roots: []*structs.CARoot{ - secondCA, - cm.initialRoots.Roots[0], - }, - QueryMeta: structs.QueryMeta{ - Index: 99, - }, - } - - cm.persist.On("persist", &structs.SignedResponse{ - IssuedCert: *cm.initialCert, - ManualCARoots: cm.extraCACerts, - ConnectCARoots: secondRoots, - VerifyServerHostname: cm.verifyServerHostname, - }).Return(nil).Once() - - // assert value of the CA certs prior to updating - require.ElementsMatch(t, cm.initialCACerts(), cm.tls.CAPems()) - - req := structs.DCSpecificRequest{Datacenter: cm.datacenter} - require.True(t, cm.mcache.sendNotification(ctx, req.CacheInfo().Key, cache.UpdateEvent{ - CorrelationID: rootsWatchID, - Result: &secondRoots, - Meta: cache.ResultMeta{ - Index: secondRoots.Index, - }, - })) - - expectedCAs := append(cm.extraCACerts, secondCA.RootCert, cm.initialRoots.Roots[0].RootCert) - - // this will wait up to 200ms (8 x 25 ms waits between the 9 requests) - retry.RunWith(&retry.Counter{Count: 9, Wait: 25 * time.Millisecond}, t, func(r *retry.R) { - require.ElementsMatch(r, expectedCAs, cm.tls.CAPems()) - }) - - cm.assertExpectations(t) -} - -func TestCertMonitor_CertUpdate(t *testing.T) { - ctx, cm := startedCertMonitor(t) - - secondCert := newLeaf(t, cm.initialRoots.Roots[0], 100, 10*time.Minute) - - cm.persist.On("persist", &structs.SignedResponse{ - IssuedCert: *secondCert, - ManualCARoots: cm.extraCACerts, - ConnectCARoots: *cm.initialRoots, - VerifyServerHostname: cm.verifyServerHostname, - }).Return(nil).Once() - - // assert value of cert prior to updating the leaf - require.Equal(t, cm.initialTLSCertificate(t), cm.tls.Cert()) - - key := cm.monitor.leafReq.CacheInfo().Key - - // send the new certificate - this notifies only the watchers utilizing - // the new ACL token - require.True(t, cm.mcache.sendNotification(ctx, key, cache.UpdateEvent{ - CorrelationID: leafWatchID, - Result: secondCert, - Meta: cache.ResultMeta{ - Index: secondCert.ModifyIndex, - }, - })) - - tlsCert := tlsCertificateFromIssued(t, secondCert) - - // this will wait up to 200ms (8 x 25 ms waits between the 9 requests) - retry.RunWith(&retry.Counter{Count: 9, Wait: 25 * time.Millisecond}, t, func(r *retry.R) { - require.Equal(r, tlsCert, cm.tls.Cert()) - }) - - cm.assertExpectations(t) -} - -func TestCertMonitor_Fallback(t *testing.T) { - ctx, cm := startedCertMonitor(t) - - // at this point everything is operating normally and the monitor is just - // waiting for events. We are going to send a new cert that is basically - // already expired and then allow the fallback routine to kick in. - secondCert := newLeaf(t, cm.initialRoots.Roots[0], 100, time.Nanosecond) - secondCA := connect.TestCA(t, cm.initialRoots.Roots[0]) - secondRoots := structs.IndexedCARoots{ - ActiveRootID: secondCA.ID, - TrustDomain: connect.TestClusterID, - Roots: []*structs.CARoot{ - secondCA, - cm.initialRoots.Roots[0], - }, - QueryMeta: structs.QueryMeta{ - Index: 101, - }, - } - thirdCert := newLeaf(t, secondCA, 102, 10*time.Minute) - - // inject a fallback routine error to check that we rerun it quickly - cm.fallback.On("fallback").Return(nil, fmt.Errorf("induced error")).Once() - - fallbackResp := &structs.SignedResponse{ - ConnectCARoots: secondRoots, - IssuedCert: *thirdCert, - ManualCARoots: cm.extraCACerts, - VerifyServerHostname: true, - } - // expect the fallback routine to be executed and setup the return - cm.fallback.On("fallback").Return(fallbackResp, nil).Once() - - cm.persist.On("persist", &structs.SignedResponse{ - IssuedCert: *secondCert, - ConnectCARoots: *cm.initialRoots, - ManualCARoots: cm.extraCACerts, - VerifyServerHostname: cm.verifyServerHostname, - }).Return(nil).Once() - - cm.persist.On("persist", fallbackResp).Return(nil).Once() - - // Add another roots cache prepopulation expectation which should happen - // in response to executing the fallback mechanism - rootRes := cache.FetchResult{Value: &secondRoots, Index: 101} - rootsReq := structs.DCSpecificRequest{Datacenter: cm.datacenter} - cm.mcache.On("Prepopulate", cachetype.ConnectCARootName, rootRes, cm.datacenter, "", rootsReq.CacheInfo().Key).Return(nil).Once() - - // add another leaf cert cache prepopulation expectation which should happen - // in response to executing the fallback mechanism - leafReq := cachetype.ConnectCALeafRequest{ - Token: cm.tokens.AgentToken(), - Agent: cm.nodeName, - Datacenter: cm.datacenter, - DNSSAN: cm.dns, - IPSAN: cm.ips, - } - leafRes := cache.FetchResult{ - Value: thirdCert, - Index: 101, - State: cachetype.ConnectCALeafSuccess(secondCA.SigningKeyID), - } - cm.mcache.On("Prepopulate", cachetype.ConnectCALeafName, leafRes, leafReq.Datacenter, leafReq.Token, leafReq.Key()).Return(nil).Once() - - // nothing in the monitor should be looking at this as its only done - // in response to sending token updates, no need to synchronize - key := cm.monitor.leafReq.CacheInfo().Key - // send the new certificate - this notifies only the watchers utilizing - // the new ACL token - require.True(t, cm.mcache.sendNotification(ctx, key, cache.UpdateEvent{ - CorrelationID: leafWatchID, - Result: secondCert, - Meta: cache.ResultMeta{ - Index: secondCert.ModifyIndex, - }, - })) - - // if all went well we would have updated the first certificate which was pretty much expired - // causing the fallback handler to be invoked almost immediately. The fallback routine will - // return the response containing the third cert and second CA roots so now we should wait - // a little while and ensure they were applied to the TLS Configurator - tlsCert := tlsCertificateFromIssued(t, thirdCert) - expectedCAs := append(cm.extraCACerts, secondCA.RootCert, cm.initialRoots.Roots[0].RootCert) - - // this will wait up to 200ms (8 x 25 ms waits between the 9 requests) - retry.RunWith(&retry.Counter{Count: 9, Wait: 25 * time.Millisecond}, t, func(r *retry.R) { - require.Equal(r, tlsCert, cm.tls.Cert()) - require.ElementsMatch(r, expectedCAs, cm.tls.CAPems()) - }) - - cm.assertExpectations(t) -} - -func TestCertMonitor_New_Errors(t *testing.T) { - type testCase struct { - cfg Config - err string - } - - fallback := func(_ context.Context) (*structs.SignedResponse, error) { - return nil, fmt.Errorf("Unimplemented") - } - - tokens := new(token.Store) - - cases := map[string]testCase{ - "no-cache": { - cfg: Config{ - TLSConfigurator: testTLSConfigurator(t), - Fallback: fallback, - Tokens: tokens, - Datacenter: "foo", - NodeName: "bar", - }, - err: "CertMonitor creation requires a Cache", - }, - "no-tls-configurator": { - cfg: Config{ - Cache: cache.New(cache.Options{}), - Fallback: fallback, - Tokens: tokens, - Datacenter: "foo", - NodeName: "bar", - }, - err: "CertMonitor creation requires a TLS Configurator", - }, - "no-fallback": { - cfg: Config{ - Cache: cache.New(cache.Options{}), - TLSConfigurator: testTLSConfigurator(t), - Tokens: tokens, - Datacenter: "foo", - NodeName: "bar", - }, - err: "CertMonitor creation requires specifying a FallbackFunc", - }, - "no-tokens": { - cfg: Config{ - Cache: cache.New(cache.Options{}), - TLSConfigurator: testTLSConfigurator(t), - Fallback: fallback, - Datacenter: "foo", - NodeName: "bar", - }, - err: "CertMonitor creation requires specifying a token store", - }, - "no-datacenter": { - cfg: Config{ - Cache: cache.New(cache.Options{}), - TLSConfigurator: testTLSConfigurator(t), - Fallback: fallback, - Tokens: tokens, - NodeName: "bar", - }, - err: "CertMonitor creation requires specifying the datacenter", - }, - "no-node-name": { - cfg: Config{ - Cache: cache.New(cache.Options{}), - TLSConfigurator: testTLSConfigurator(t), - Fallback: fallback, - Tokens: tokens, - Datacenter: "foo", - }, - err: "CertMonitor creation requires specifying the agent's node name", - }, - } - - for name, tcase := range cases { - t.Run(name, func(t *testing.T) { - monitor, err := New(&tcase.cfg) - testutil.RequireErrorContains(t, err, tcase.err) - require.Nil(t, monitor) - }) - } -} diff --git a/agent/cert-monitor/config.go b/agent/cert-monitor/config.go deleted file mode 100644 index 2e4bcc57ca..0000000000 --- a/agent/cert-monitor/config.go +++ /dev/null @@ -1,150 +0,0 @@ -package certmon - -import ( - "context" - "net" - "time" - - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/agent/token" - "github.com/hashicorp/consul/tlsutil" - "github.com/hashicorp/go-hclog" -) - -// FallbackFunc is used when the normal cache watch based Certificate -// updating fails to update the Certificate in time and a different -// method of updating the certificate is required. -type FallbackFunc func(context.Context) (*structs.SignedResponse, error) - -// PersistFunc is used to persist the data from a signed response -type PersistFunc func(*structs.SignedResponse) error - -type Config struct { - // Logger is the logger to be used while running. If not set - // then no logging will be performed. - Logger hclog.Logger - - // TLSConfigurator is where the certificates and roots are set when - // they are updated. This field is required. - TLSConfigurator *tlsutil.Configurator - - // Cache is an object implementing our Cache interface. The Cache - // used at runtime must be able to handle Roots and Leaf Cert watches - Cache Cache - - // Tokens is the shared token store. It is used to retrieve the current - // agent token as well as getting notifications when that token is updated. - // This field is required. - Tokens *token.Store - - // Persist is a function to run when there are new certs or keys - Persist PersistFunc - - // Fallback is a function to run when the normal cache updating of the - // agent's certificates has failed to work for one reason or another. - // This field is required. - Fallback FallbackFunc - - // FallbackLeeway is the amount of time after certificate expiration before - // invoking the fallback routine. If not set this will default to 10s. - FallbackLeeway time.Duration - - // FallbackRetry is the duration between Fallback invocations when the configured - // fallback routine returns an error. If not set this will default to 1m. - FallbackRetry time.Duration - - // DNSSANs is a list of DNS SANs that certificate requests should include. This - // field is optional and no extra DNS SANs will be requested if unset. 'localhost' - // is unconditionally requested by the cache implementation. - DNSSANs []string - - // IPSANs is a list of IP SANs to include in the certificate signing request. This - // field is optional and no extra IP SANs will be requested if unset. Both '127.0.0.1' - // and '::1' IP SANs are unconditionally requested by the cache implementation. - IPSANs []net.IP - - // Datacenter is the datacenter to request certificates within. This filed is required - Datacenter string - - // NodeName is the agent's node name to use when requesting certificates. This field - // is required. - NodeName string -} - -// WithCache will cause the created CertMonitor type to use the provided Cache -func (cfg *Config) WithCache(cache Cache) *Config { - cfg.Cache = cache - return cfg -} - -// WithLogger will cause the created CertMonitor type to use the provided logger -func (cfg *Config) WithLogger(logger hclog.Logger) *Config { - cfg.Logger = logger - return cfg -} - -// WithTLSConfigurator will cause the created CertMonitor type to use the provided configurator -func (cfg *Config) WithTLSConfigurator(tlsConfigurator *tlsutil.Configurator) *Config { - cfg.TLSConfigurator = tlsConfigurator - return cfg -} - -// WithTokens will cause the created CertMonitor type to use the provided token store -func (cfg *Config) WithTokens(tokens *token.Store) *Config { - cfg.Tokens = tokens - return cfg -} - -// WithFallback configures a fallback function to use if the normal update mechanisms -// fail to renew the certificate in time. -func (cfg *Config) WithFallback(fallback FallbackFunc) *Config { - cfg.Fallback = fallback - return cfg -} - -// WithDNSSANs configures the CertMonitor to request these DNS SANs when requesting a new -// certificate -func (cfg *Config) WithDNSSANs(sans []string) *Config { - cfg.DNSSANs = sans - return cfg -} - -// WithIPSANs configures the CertMonitor to request these IP SANs when requesting a new -// certificate -func (cfg *Config) WithIPSANs(sans []net.IP) *Config { - cfg.IPSANs = sans - return cfg -} - -// WithDatacenter configures the CertMonitor to request Certificates in this DC -func (cfg *Config) WithDatacenter(dc string) *Config { - cfg.Datacenter = dc - return cfg -} - -// WithNodeName configures the CertMonitor to request Certificates with this agent name -func (cfg *Config) WithNodeName(name string) *Config { - cfg.NodeName = name - return cfg -} - -// WithFallbackLeeway configures how long after a certificate expires before attempting to -// generarte a new certificate using the fallback mechanism. The default is 10s. -func (cfg *Config) WithFallbackLeeway(leeway time.Duration) *Config { - cfg.FallbackLeeway = leeway - return cfg -} - -// WithFallbackRetry controls how quickly we will make subsequent invocations of -// the fallback func in the case of it erroring out. -func (cfg *Config) WithFallbackRetry(after time.Duration) *Config { - cfg.FallbackRetry = after - return cfg -} - -// WithPersistence will configure the CertMonitor to use this callback for persisting -// a new TLS configuration. -func (cfg *Config) WithPersistence(persist PersistFunc) *Config { - cfg.Persist = persist - return cfg -} diff --git a/agent/consul/auto_encrypt.go b/agent/consul/auto_encrypt.go deleted file mode 100644 index 0684e7f713..0000000000 --- a/agent/consul/auto_encrypt.go +++ /dev/null @@ -1,239 +0,0 @@ -package consul - -import ( - "context" - "fmt" - "net" - "strings" - "time" - - "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/lib" - "github.com/hashicorp/go-hclog" - "github.com/miekg/dns" -) - -const ( - dummyTrustDomain = "dummy.trustdomain" - retryJitterWindow = 30 * time.Second -) - -func (c *Client) autoEncryptCSR(extraDNSSANs []string, extraIPSANs []net.IP) (string, string, error) { - // We don't provide the correct host here, because we don't know any - // better at this point. Apart from the domain, we would need the - // ClusterID, which we don't have. This is why we go with - // dummyTrustDomain the first time. Subsequent CSRs will have the - // correct TrustDomain. - id := &connect.SpiffeIDAgent{ - Host: dummyTrustDomain, - Datacenter: c.config.Datacenter, - Agent: c.config.NodeName, - } - - conf, err := c.config.CAConfig.GetCommonConfig() - if err != nil { - return "", "", err - } - - if conf.PrivateKeyType == "" { - conf.PrivateKeyType = connect.DefaultPrivateKeyType - } - if conf.PrivateKeyBits == 0 { - conf.PrivateKeyBits = connect.DefaultPrivateKeyBits - } - - // Create a new private key - pk, pkPEM, err := connect.GeneratePrivateKeyWithConfig(conf.PrivateKeyType, conf.PrivateKeyBits) - if err != nil { - return "", "", err - } - - dnsNames := append([]string{"localhost"}, extraDNSSANs...) - ipAddresses := append([]net.IP{net.ParseIP("127.0.0.1"), net.ParseIP("::1")}, extraIPSANs...) - - // Create a CSR. - // - // The Common Name includes the dummy trust domain for now but Server will - // override this when it is signed anyway so it's OK. - cn := connect.AgentCN(c.config.NodeName, dummyTrustDomain) - csr, err := connect.CreateCSR(id, cn, pk, dnsNames, ipAddresses) - if err != nil { - return "", "", err - } - - return pkPEM, csr, nil -} - -func (c *Client) RequestAutoEncryptCerts(ctx context.Context, servers []string, port int, token string, extraDNSSANs []string, extraIPSANs []net.IP) (*structs.SignedResponse, error) { - errFn := func(err error) (*structs.SignedResponse, error) { - return nil, err - } - - // Check if we know about a server already through gossip. Depending on - // how the agent joined, there might already be one. Also in case this - // gets called because the cert expired. - server := c.router.FindLANServer() - if server != nil { - servers = []string{server.Addr.String()} - } - - if len(servers) == 0 { - return errFn(fmt.Errorf("No servers to request AutoEncrypt.Sign")) - } - - pkPEM, csr, err := c.autoEncryptCSR(extraDNSSANs, extraIPSANs) - if err != nil { - return errFn(err) - } - - // Prepare request and response so that it can be passed to - // RPCInsecure. - args := structs.CASignRequest{ - WriteRequest: structs.WriteRequest{Token: token}, - Datacenter: c.config.Datacenter, - CSR: csr, - } - var reply structs.SignedResponse - - // Retry implementation modeled after https://github.com/hashicorp/consul/pull/5228. - // TLDR; there is a 30s window from which a random time is picked. - // Repeat until the call is successful. - attempts := 0 - for { - select { - case <-ctx.Done(): - return errFn(fmt.Errorf("aborting AutoEncrypt because interrupted: %w", ctx.Err())) - default: - } - - // Translate host to net.TCPAddr to make life easier for - // RPCInsecure. - for _, s := range servers { - ips, err := resolveAddr(s, c.logger) - if err != nil { - c.logger.Warn("AutoEncrypt resolveAddr failed", "error", err) - continue - } - - for _, ip := range ips { - addr := net.TCPAddr{IP: ip, Port: port} - - if err = c.connPool.RPC(c.config.Datacenter, c.config.NodeName, &addr, "AutoEncrypt.Sign", &args, &reply); err == nil { - reply.IssuedCert.PrivateKeyPEM = pkPEM - return &reply, nil - } else { - c.logger.Warn("AutoEncrypt failed", "error", err) - } - } - } - attempts++ - - delay := lib.RandomStagger(retryJitterWindow) - interval := (time.Duration(attempts) * delay) + delay - c.logger.Warn("retrying AutoEncrypt", "retry_interval", interval) - select { - case <-time.After(interval): - continue - case <-ctx.Done(): - return errFn(fmt.Errorf("aborting AutoEncrypt because interrupted: %w", ctx.Err())) - case <-c.shutdownCh: - return errFn(fmt.Errorf("aborting AutoEncrypt because shutting down")) - } - } -} - -func missingPortError(host string, err error) bool { - return err != nil && err.Error() == fmt.Sprintf("address %s: missing port in address", host) -} - -// resolveAddr is used to resolve the host into IPs and error. -func resolveAddr(rawHost string, logger hclog.Logger) ([]net.IP, error) { - host, _, err := net.SplitHostPort(rawHost) - if err != nil { - // In case we encounter this error, we proceed with the - // rawHost. This is fine since -start-join and -retry-join - // take only hosts anyways and this is an expected case. - if missingPortError(rawHost, err) { - host = rawHost - } else { - return nil, err - } - } - - if ip := net.ParseIP(host); ip != nil { - return []net.IP{ip}, nil - } - - // First try TCP so we have the best chance for the largest list of - // hosts to join. If this fails it's not fatal since this isn't a standard - // way to query DNS, and we have a fallback below. - if ips, err := tcpLookupIP(host, logger); err != nil { - logger.Debug("TCP-first lookup failed for host, falling back to UDP", "host", host, "error", err) - } else if len(ips) > 0 { - return ips, nil - } - - // If TCP didn't yield anything then use the normal Go resolver which - // will try UDP, then might possibly try TCP again if the UDP response - // indicates it was truncated. - ips, err := net.LookupIP(host) - if err != nil { - return nil, err - } - return ips, nil -} - -// tcpLookupIP is a helper to initiate a TCP-based DNS lookup for the given host. -// The built-in Go resolver will do a UDP lookup first, and will only use TCP if -// the response has the truncate bit set, which isn't common on DNS servers like -// Consul's. By doing the TCP lookup directly, we get the best chance for the -// largest list of hosts to join. Since joins are relatively rare events, it's ok -// to do this rather expensive operation. -func tcpLookupIP(host string, logger hclog.Logger) ([]net.IP, error) { - // Don't attempt any TCP lookups against non-fully qualified domain - // names, since those will likely come from the resolv.conf file. - if !strings.Contains(host, ".") { - return nil, nil - } - - // Make sure the domain name is terminated with a dot (we know there's - // at least one character at this point). - dn := host - if dn[len(dn)-1] != '.' { - dn = dn + "." - } - - // See if we can find a server to try. - cc, err := dns.ClientConfigFromFile("/etc/resolv.conf") - if err != nil { - return nil, err - } - if len(cc.Servers) > 0 { - // Do the lookup. - c := new(dns.Client) - c.Net = "tcp" - msg := new(dns.Msg) - msg.SetQuestion(dn, dns.TypeANY) - in, _, err := c.Exchange(msg, cc.Servers[0]) - if err != nil { - return nil, err - } - - // Handle any IPs we get back that we can attempt to join. - var ips []net.IP - for _, r := range in.Answer { - switch rr := r.(type) { - case (*dns.A): - ips = append(ips, rr.A) - case (*dns.AAAA): - ips = append(ips, rr.AAAA) - case (*dns.CNAME): - logger.Debug("Ignoring CNAME RR in TCP-first answer for host", "host", host) - } - } - return ips, nil - } - - return nil, nil -} diff --git a/agent/consul/auto_encrypt_test.go b/agent/consul/auto_encrypt_test.go deleted file mode 100644 index 8dd04e4166..0000000000 --- a/agent/consul/auto_encrypt_test.go +++ /dev/null @@ -1,205 +0,0 @@ -package consul - -import ( - "context" - "crypto/x509" - "crypto/x509/pkix" - "encoding/asn1" - "net" - "net/url" - "os" - "testing" - "time" - - "github.com/hashicorp/consul/agent/connect" - "github.com/hashicorp/consul/agent/structs" - "github.com/hashicorp/consul/sdk/testutil" - "github.com/hashicorp/go-hclog" - "github.com/stretchr/testify/require" -) - -func TestAutoEncrypt_resolveAddr(t *testing.T) { - type args struct { - rawHost string - logger hclog.Logger - } - logger := testutil.Logger(t) - - tests := []struct { - name string - args args - ips []net.IP - wantErr bool - }{ - { - name: "host without port", - args: args{ - "127.0.0.1", - logger, - }, - ips: []net.IP{net.IPv4(127, 0, 0, 1)}, - wantErr: false, - }, - { - name: "host with port", - args: args{ - "127.0.0.1:1234", - logger, - }, - ips: []net.IP{net.IPv4(127, 0, 0, 1)}, - wantErr: false, - }, - { - name: "host with broken port", - args: args{ - "127.0.0.1:xyz", - logger, - }, - ips: []net.IP{net.IPv4(127, 0, 0, 1)}, - wantErr: false, - }, - { - name: "not an address", - args: args{ - "abc", - logger, - }, - ips: nil, - wantErr: true, - }, - } - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - ips, err := resolveAddr(tt.args.rawHost, tt.args.logger) - if (err != nil) != tt.wantErr { - t.Errorf("resolveAddr error: %v, wantErr: %v", err, tt.wantErr) - return - } - require.Equal(t, tt.ips, ips) - }) - } -} - -func TestAutoEncrypt_missingPortError(t *testing.T) { - host := "127.0.0.1" - _, _, err := net.SplitHostPort(host) - require.True(t, missingPortError(host, err)) - - host = "127.0.0.1:1234" - _, _, err = net.SplitHostPort(host) - require.False(t, missingPortError(host, err)) -} - -func TestAutoEncrypt_RequestAutoEncryptCerts(t *testing.T) { - dir1, c1 := testClient(t) - defer os.RemoveAll(dir1) - defer c1.Shutdown() - servers := []string{"localhost"} - port := 8301 - token := "" - - ctx, cancel := context.WithDeadline(context.Background(), time.Now().Add(75*time.Millisecond)) - defer cancel() - - doneCh := make(chan struct{}) - var err error - go func() { - _, err = c1.RequestAutoEncryptCerts(ctx, servers, port, token, nil, nil) - close(doneCh) - }() - select { - case <-doneCh: - // since there are no servers at this port, we shouldn't be - // done and this should be an error of some sorts that happened - // in the setup phase before entering the for loop in - // RequestAutoEncryptCerts. - require.NoError(t, err) - case <-ctx.Done(): - // this is the happy case since auto encrypt is in its loop to - // try to request certs. - } -} - -func TestAutoEncrypt_autoEncryptCSR(t *testing.T) { - type testCase struct { - conf *Config - extraDNSSANs []string - extraIPSANs []net.IP - err string - - // to validate the csr - expectedSubject pkix.Name - expectedSigAlg x509.SignatureAlgorithm - expectedPubAlg x509.PublicKeyAlgorithm - expectedDNSNames []string - expectedIPs []net.IP - expectedURIs []*url.URL - } - - cases := map[string]testCase{ - "sans": { - conf: &Config{ - Datacenter: "dc1", - NodeName: "test-node", - CAConfig: &structs.CAConfiguration{}, - }, - extraDNSSANs: []string{"foo.local", "bar.local"}, - extraIPSANs: []net.IP{net.IPv4(198, 18, 0, 1), net.IPv4(198, 18, 0, 2)}, - expectedSubject: pkix.Name{ - CommonName: connect.AgentCN("test-node", dummyTrustDomain), - Names: []pkix.AttributeTypeAndValue{ - { - // 2,5,4,3 is the CommonName type ASN1 identifier - Type: asn1.ObjectIdentifier{2, 5, 4, 3}, - Value: "testnode.agnt.dummy.tr.consul", - }, - }, - }, - expectedSigAlg: x509.ECDSAWithSHA256, - expectedPubAlg: x509.ECDSA, - expectedDNSNames: []string{ - "localhost", - "foo.local", - "bar.local", - }, - expectedIPs: []net.IP{ - {127, 0, 0, 1}, - net.ParseIP("::1"), - {198, 18, 0, 1}, - {198, 18, 0, 2}, - }, - expectedURIs: []*url.URL{ - { - Scheme: "spiffe", - Host: dummyTrustDomain, - Path: "/agent/client/dc/dc1/id/test-node", - }, - }, - }, - } - - for name, tcase := range cases { - t.Run(name, func(t *testing.T) { - client := Client{config: tcase.conf} - - _, csr, err := client.autoEncryptCSR(tcase.extraDNSSANs, tcase.extraIPSANs) - if tcase.err == "" { - require.NoError(t, err) - - request, err := connect.ParseCSR(csr) - require.NoError(t, err) - require.NotNil(t, request) - - require.Equal(t, tcase.expectedSubject, request.Subject) - require.Equal(t, tcase.expectedSigAlg, request.SignatureAlgorithm) - require.Equal(t, tcase.expectedPubAlg, request.PublicKeyAlgorithm) - require.Equal(t, tcase.expectedDNSNames, request.DNSNames) - require.Equal(t, tcase.expectedIPs, request.IPAddresses) - require.Equal(t, tcase.expectedURIs, request.URIs) - } else { - require.Error(t, err) - require.Empty(t, csr) - } - }) - } -} diff --git a/agent/setup.go b/agent/setup.go index 4ed2823222..b807e7f7e9 100644 --- a/agent/setup.go +++ b/agent/setup.go @@ -1,7 +1,6 @@ package agent import ( - "context" "fmt" "io" "net" @@ -10,11 +9,9 @@ import ( autoconf "github.com/hashicorp/consul/agent/auto-config" "github.com/hashicorp/consul/agent/cache" - certmon "github.com/hashicorp/consul/agent/cert-monitor" "github.com/hashicorp/consul/agent/config" "github.com/hashicorp/consul/agent/pool" "github.com/hashicorp/consul/agent/router" - "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/ipaddr" "github.com/hashicorp/consul/lib" @@ -86,38 +83,21 @@ func NewBaseDeps(configLoader ConfigLoader, logOut io.Writer) (BaseDeps, error) d.Cache = cache.New(cfg.Cache) d.ConnPool = newConnPool(cfg, d.Logger, d.TLSConfigurator) - deferredAC := &deferredAutoConfig{} - d.Router = router.NewRouter(d.Logger, cfg.Datacenter, fmt.Sprintf("%s.%s", cfg.NodeName, cfg.Datacenter)) - cmConf := new(certmon.Config). - WithCache(d.Cache). - WithTLSConfigurator(d.TLSConfigurator). - WithDNSSANs(cfg.AutoConfig.DNSSANs). - WithIPSANs(cfg.AutoConfig.IPSANs). - WithDatacenter(cfg.Datacenter). - WithNodeName(cfg.NodeName). - WithFallback(deferredAC.autoConfigFallbackTLS). - WithLogger(d.Logger.Named(logging.AutoConfig)). - WithTokens(d.Tokens). - WithPersistence(deferredAC.autoConfigPersist) - acCertMon, err := certmon.New(cmConf) - if err != nil { - return d, err - } - acConf := autoconf.Config{ - DirectRPC: d.ConnPool, - Logger: d.Logger, - CertMonitor: acCertMon, - Loader: configLoader, + DirectRPC: d.ConnPool, + Logger: d.Logger, + Loader: configLoader, + ServerProvider: d.Router, + TLSConfigurator: d.TLSConfigurator, + Cache: d.Cache, + Tokens: d.Tokens, } d.AutoConfig, err = autoconf.New(acConf) if err != nil { return d, err } - // TODO: can this cyclic dependency be un-cycled? - deferredAC.autoConf = d.AutoConfig return d, nil } @@ -144,21 +124,3 @@ func newConnPool(config *config.RuntimeConfig, logger hclog.Logger, tls *tlsutil } return pool } - -type deferredAutoConfig struct { - autoConf *autoconf.AutoConfig // TODO: use an interface -} - -func (a *deferredAutoConfig) autoConfigFallbackTLS(ctx context.Context) (*structs.SignedResponse, error) { - if a.autoConf == nil { - return nil, fmt.Errorf("AutoConfig manager has not been created yet") - } - return a.autoConf.FallbackTLS(ctx) -} - -func (a *deferredAutoConfig) autoConfigPersist(resp *structs.SignedResponse) error { - if a.autoConf == nil { - return fmt.Errorf("AutoConfig manager has not been created yet") - } - return a.autoConf.RecordUpdatedCerts(resp) -} diff --git a/proto/translate.go b/proto/translate.go index 3619a0e6e6..6ee90c084d 100644 --- a/proto/translate.go +++ b/proto/translate.go @@ -12,6 +12,8 @@ var ( timePtrType = reflect.TypeOf((*time.Time)(nil)) timeType = timePtrType.Elem() mapStrInf = reflect.TypeOf((map[string]interface{})(nil)) + + epoch1970 = time.Date(1970, 1, 1, 0, 0, 0, 0, time.UTC) ) // HookPBTimestampToTime is a mapstructure decode hook to translate a protobuf timestamp @@ -19,7 +21,10 @@ var ( func HookPBTimestampToTime(from, to reflect.Type, data interface{}) (interface{}, error) { if to == timeType && from == tsType { ts := data.(*types.Timestamp) - return time.Unix(ts.Seconds, int64(ts.Nanos)), nil + if ts.Seconds == 0 && ts.Nanos == 0 { + return time.Time{}, nil + } + return time.Unix(ts.Seconds, int64(ts.Nanos)).UTC(), nil } return data, nil @@ -39,6 +44,13 @@ func HookTimeToPBTimestamp(from, to reflect.Type, data interface{}) (interface{} // seeing a *time.Time instead of a time.Time. if from == timePtrType && to == mapStrInf { ts := data.(*time.Time) + + // protobuf only supports times from Jan 1 1970 onward but the time.Time type + // can represent values back to year 1. Basically + if ts.Before(epoch1970) { + return map[string]interface{}{}, nil + } + nanos := ts.UnixNano() if nanos < 0 { return map[string]interface{}{}, nil diff --git a/proto/translate_test.go b/proto/translate_test.go index cd88d89339..0fbfa2b9b8 100644 --- a/proto/translate_test.go +++ b/proto/translate_test.go @@ -27,7 +27,7 @@ func TestHookPBTimestampToTime(t *testing.T) { } expected := timeTSWrapper{ - Timestamp: time.Unix(1000, 42), + Timestamp: time.Unix(1000, 42).UTC(), } var actual timeTSWrapper @@ -43,7 +43,7 @@ func TestHookPBTimestampToTime(t *testing.T) { func TestHookTimeToPBTimestamp(t *testing.T) { in := timeTSWrapper{ - Timestamp: time.Unix(999999, 123456), + Timestamp: time.Unix(999999, 123456).UTC(), } expected := pbTSWrapper{ @@ -63,3 +63,24 @@ func TestHookTimeToPBTimestamp(t *testing.T) { require.Equal(t, expected, actual) } + +func TestHookTimeToPBTimestamp_ZeroTime(t *testing.T) { + in := timeTSWrapper{} + + expected := pbTSWrapper{ + Timestamp: &types.Timestamp{ + Seconds: 0, + Nanos: 0, + }, + } + + var actual pbTSWrapper + decoder, err := mapstructure.NewDecoder(&mapstructure.DecoderConfig{ + DecodeHook: HookTimeToPBTimestamp, + Result: &actual, + }) + require.NoError(t, err) + require.NoError(t, decoder.Decode(in)) + + require.Equal(t, expected, actual) +} From a80de898ea7cb74ed8705f6ab8b348e0360c2c71 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 24 Aug 2020 17:46:55 -0400 Subject: [PATCH 028/122] fix TestStore_RegularTokens This test was only passing because t.Parallel was causing every subtest to run with the last value in the iteration, which sets a value for all tokens. The test started to fail once t.Parallel was removed, but the same failure could have been produced by adding 'tt := tt' to the t.Run() func. These tests run in under 10ms, so there is no reason to use t.Parallel. --- agent/token/store_test.go | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/agent/token/store_test.go b/agent/token/store_test.go index f46fcc3a98..6df8122576 100644 --- a/agent/token/store_test.go +++ b/agent/token/store_test.go @@ -7,8 +7,6 @@ import ( ) func TestStore_RegularTokens(t *testing.T) { - t.Parallel() - type tokens struct { userSource TokenSource user string @@ -89,13 +87,22 @@ func TestStore_RegularTokens(t *testing.T) { } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - t.Parallel() - s := new(Store) - require.True(t, s.UpdateUserToken(tt.set.user, tt.set.userSource)) - require.True(t, s.UpdateAgentToken(tt.set.agent, tt.set.agentSource)) - require.True(t, s.UpdateReplicationToken(tt.set.repl, tt.set.replSource)) - require.True(t, s.UpdateAgentMasterToken(tt.set.master, tt.set.masterSource)) + if tt.set.user != "" { + require.True(t, s.UpdateUserToken(tt.set.user, tt.set.userSource)) + } + + if tt.set.agent != "" { + require.True(t, s.UpdateAgentToken(tt.set.agent, tt.set.agentSource)) + } + + if tt.set.repl != "" { + require.True(t, s.UpdateReplicationToken(tt.set.repl, tt.set.replSource)) + } + + if tt.set.master != "" { + require.True(t, s.UpdateAgentMasterToken(tt.set.master, tt.set.masterSource)) + } // If they don't change then they return false. require.False(t, s.UpdateUserToken(tt.set.user, tt.set.userSource)) @@ -128,7 +135,6 @@ func TestStore_RegularTokens(t *testing.T) { } func TestStore_AgentMasterToken(t *testing.T) { - t.Parallel() s := new(Store) verify := func(want bool, toks ...string) { @@ -152,7 +158,6 @@ func TestStore_AgentMasterToken(t *testing.T) { } func TestStore_Notify(t *testing.T) { - t.Parallel() s := new(Store) newNotification := func(t *testing.T, s *Store, kind TokenKind) Notifier { From 330be5b7402f45ff6e6200897a939ac349962268 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 17 Aug 2020 19:30:25 -0400 Subject: [PATCH 029/122] agent/token: Move token persistence out of agent And into token.Store. This change isolates any awareness of token persistence in a single place. It is a small step in allowing Agent.New to accept its dependencies. --- agent/acl_test.go | 4 +- agent/agent.go | 103 +-------------- agent/agent_endpoint.go | 102 +++++---------- agent/agent_endpoint_test.go | 16 ++- agent/agent_oss.go | 4 - agent/agent_test.go | 157 ----------------------- agent/config/runtime.go | 5 + agent/setup.go | 1 + agent/token/persistence.go | 190 ++++++++++++++++++++++++++++ agent/token/persistence_test.go | 213 ++++++++++++++++++++++++++++++++ agent/token/store.go | 14 ++- agent/token/store_oss.go | 6 +- 12 files changed, 473 insertions(+), 342 deletions(-) create mode 100644 agent/token/persistence.go create mode 100644 agent/token/persistence_test.go diff --git a/agent/acl_test.go b/agent/acl_test.go index a88d89273f..79ade86b20 100644 --- a/agent/acl_test.go +++ b/agent/acl_test.go @@ -184,7 +184,9 @@ func TestACL_AgentMasterToken(t *testing.T) { t.Parallel() a := NewTestACLAgent(t, t.Name(), TestACLConfig(), nil, nil) - a.loadTokens(a.config) + err := a.tokens.Load(a.config.ACLTokens, a.logger) + require.NoError(t, err) + authz, err := a.resolveToken("towel") require.NotNil(t, authz) require.Nil(t, err) diff --git a/agent/agent.go b/agent/agent.go index 0c639da9a7..a568884141 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -19,6 +19,7 @@ import ( "github.com/hashicorp/consul/agent/dns" "github.com/hashicorp/consul/agent/router" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/go-connlimit" "github.com/hashicorp/go-hclog" "github.com/hashicorp/go-memdb" @@ -39,7 +40,6 @@ import ( "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/systemd" - "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/agent/xds" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/api/watch" @@ -67,9 +67,6 @@ const ( checksDir = "checks" checkStateDir = "checks/state" - // Name of the file tokens will be persisted within - tokensPath = "acl-tokens.json" - // Default reasons for node/service maintenance mode defaultNodeMaintReason = "Maintenance mode is enabled for this node, " + "but no reason was provided. This is a default message." @@ -292,11 +289,6 @@ type Agent struct { // based on the current consul configuration. tlsConfigurator *tlsutil.Configurator - // persistedTokensLock is used to synchronize access to the persisted token - // store within the data directory. This will prevent loading while writing as - // well as multiple concurrent writes. - persistedTokensLock sync.RWMutex - // httpConnLimiter is used to limit connections to the HTTP server by client // IP. httpConnLimiter connlimit.Limiter @@ -370,10 +362,8 @@ func New(bd BaseDeps) (*Agent, error) { // pass the agent itself so its safe to move here. a.registerCache() - // TODO: move to newBaseDeps - // TODO: handle error - a.loadTokens(a.config) - a.loadEnterpriseTokens(a.config) + // TODO: why do we ignore failure to load persisted tokens? + _ = a.tokens.Load(bd.RuntimeConfig.ACLTokens, a.logger) return &a, nil } @@ -3387,90 +3377,6 @@ func (a *Agent) unloadChecks() error { return nil } -type persistedTokens struct { - Replication string `json:"replication,omitempty"` - AgentMaster string `json:"agent_master,omitempty"` - Default string `json:"default,omitempty"` - Agent string `json:"agent,omitempty"` -} - -func (a *Agent) getPersistedTokens() (*persistedTokens, error) { - persistedTokens := &persistedTokens{} - if !a.config.ACLEnableTokenPersistence { - return persistedTokens, nil - } - - a.persistedTokensLock.RLock() - defer a.persistedTokensLock.RUnlock() - - tokensFullPath := filepath.Join(a.config.DataDir, tokensPath) - - buf, err := ioutil.ReadFile(tokensFullPath) - if err != nil { - if os.IsNotExist(err) { - // non-existence is not an error we care about - return persistedTokens, nil - } - return persistedTokens, fmt.Errorf("failed reading tokens file %q: %s", tokensFullPath, err) - } - - if err := json.Unmarshal(buf, persistedTokens); err != nil { - return persistedTokens, fmt.Errorf("failed to decode tokens file %q: %s", tokensFullPath, err) - } - - return persistedTokens, nil -} - -func (a *Agent) loadTokens(conf *config.RuntimeConfig) error { - persistedTokens, persistenceErr := a.getPersistedTokens() - - if persistenceErr != nil { - a.logger.Warn("unable to load persisted tokens", "error", persistenceErr) - } - - if persistedTokens.Default != "" { - a.tokens.UpdateUserToken(persistedTokens.Default, token.TokenSourceAPI) - - if conf.ACLToken != "" { - a.logger.Warn("\"default\" token present in both the configuration and persisted token store, using the persisted token") - } - } else { - a.tokens.UpdateUserToken(conf.ACLToken, token.TokenSourceConfig) - } - - if persistedTokens.Agent != "" { - a.tokens.UpdateAgentToken(persistedTokens.Agent, token.TokenSourceAPI) - - if conf.ACLAgentToken != "" { - a.logger.Warn("\"agent\" token present in both the configuration and persisted token store, using the persisted token") - } - } else { - a.tokens.UpdateAgentToken(conf.ACLAgentToken, token.TokenSourceConfig) - } - - if persistedTokens.AgentMaster != "" { - a.tokens.UpdateAgentMasterToken(persistedTokens.AgentMaster, token.TokenSourceAPI) - - if conf.ACLAgentMasterToken != "" { - a.logger.Warn("\"agent_master\" token present in both the configuration and persisted token store, using the persisted token") - } - } else { - a.tokens.UpdateAgentMasterToken(conf.ACLAgentMasterToken, token.TokenSourceConfig) - } - - if persistedTokens.Replication != "" { - a.tokens.UpdateReplicationToken(persistedTokens.Replication, token.TokenSourceAPI) - - if conf.ACLReplicationToken != "" { - a.logger.Warn("\"replication\" token present in both the configuration and persisted token store, using the persisted token") - } - } else { - a.tokens.UpdateReplicationToken(conf.ACLReplicationToken, token.TokenSourceConfig) - } - - return persistenceErr -} - // snapshotCheckState is used to snapshot the current state of the health // checks. This is done before we reload our checks, so that we can properly // restore into the same state. @@ -3650,8 +3556,7 @@ func (a *Agent) reloadConfigInternal(newCfg *config.RuntimeConfig) error { // Reload tokens - should be done before all the other loading // to ensure the correct tokens are available for attaching to // the checks and service registrations. - a.loadTokens(newCfg) - a.loadEnterpriseTokens(newCfg) + a.tokens.Load(newCfg.ACLTokens, a.logger) if err := a.tlsConfigurator.Update(newCfg.ToTLSUtilConfig()); err != nil { return fmt.Errorf("Failed reloading tls configuration: %s", err) diff --git a/agent/agent_endpoint.go b/agent/agent_endpoint.go index 32f26b02eb..1457d5093a 100644 --- a/agent/agent_endpoint.go +++ b/agent/agent_endpoint.go @@ -1,10 +1,8 @@ package agent import ( - "encoding/json" "fmt" "net/http" - "path/filepath" "strconv" "strings" @@ -21,7 +19,6 @@ import ( "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/ipaddr" "github.com/hashicorp/consul/lib" - "github.com/hashicorp/consul/lib/file" "github.com/hashicorp/consul/logging" "github.com/hashicorp/consul/logging/monitor" "github.com/hashicorp/consul/types" @@ -1233,79 +1230,42 @@ func (s *HTTPServer) AgentToken(resp http.ResponseWriter, req *http.Request) (in return nil, nil } - if s.agent.config.ACLEnableTokenPersistence { - // we hold the lock around updating the internal token store - // as well as persisting the tokens because we don't want to write - // into the store to have something else wipe it out before we can - // persist everything (like an agent config reload). The token store - // lock is only held for those operations so other go routines that - // just need to read some token out of the store will not be impacted - // any more than they would be without token persistence. - s.agent.persistedTokensLock.Lock() - defer s.agent.persistedTokensLock.Unlock() - } - // Figure out the target token. target := strings.TrimPrefix(req.URL.Path, "/v1/agent/token/") - triggerAntiEntropySync := false - switch target { - case "acl_token", "default": - changed := s.agent.tokens.UpdateUserToken(args.Token, token_store.TokenSourceAPI) - if changed { - triggerAntiEntropySync = true + + err = s.agent.tokens.WithPersistenceLock(func() error { + triggerAntiEntropySync := false + switch target { + case "acl_token", "default": + changed := s.agent.tokens.UpdateUserToken(args.Token, token_store.TokenSourceAPI) + if changed { + triggerAntiEntropySync = true + } + + case "acl_agent_token", "agent": + changed := s.agent.tokens.UpdateAgentToken(args.Token, token_store.TokenSourceAPI) + if changed { + triggerAntiEntropySync = true + } + + case "acl_agent_master_token", "agent_master": + s.agent.tokens.UpdateAgentMasterToken(args.Token, token_store.TokenSourceAPI) + + case "acl_replication_token", "replication": + s.agent.tokens.UpdateReplicationToken(args.Token, token_store.TokenSourceAPI) + + default: + return NotFoundError{Reason: fmt.Sprintf("Token %q is unknown", target)} } - case "acl_agent_token", "agent": - changed := s.agent.tokens.UpdateAgentToken(args.Token, token_store.TokenSourceAPI) - if changed { - triggerAntiEntropySync = true - } - - case "acl_agent_master_token", "agent_master": - s.agent.tokens.UpdateAgentMasterToken(args.Token, token_store.TokenSourceAPI) - - case "acl_replication_token", "replication": - s.agent.tokens.UpdateReplicationToken(args.Token, token_store.TokenSourceAPI) - - default: - resp.WriteHeader(http.StatusNotFound) - fmt.Fprintf(resp, "Token %q is unknown", target) - return nil, nil - } - - if triggerAntiEntropySync { - s.agent.sync.SyncFull.Trigger() - } - - if s.agent.config.ACLEnableTokenPersistence { - tokens := persistedTokens{} - - if tok, source := s.agent.tokens.UserTokenAndSource(); tok != "" && source == token_store.TokenSourceAPI { - tokens.Default = tok - } - - if tok, source := s.agent.tokens.AgentTokenAndSource(); tok != "" && source == token_store.TokenSourceAPI { - tokens.Agent = tok - } - - if tok, source := s.agent.tokens.AgentMasterTokenAndSource(); tok != "" && source == token_store.TokenSourceAPI { - tokens.AgentMaster = tok - } - - if tok, source := s.agent.tokens.ReplicationTokenAndSource(); tok != "" && source == token_store.TokenSourceAPI { - tokens.Replication = tok - } - - data, err := json.Marshal(tokens) - if err != nil { - s.agent.logger.Warn("failed to persist tokens", "error", err) - return nil, fmt.Errorf("Failed to marshal tokens for persistence: %v", err) - } - - if err := file.WriteAtomicWithPerms(filepath.Join(s.agent.config.DataDir, tokensPath), data, 0700, 0600); err != nil { - s.agent.logger.Warn("failed to persist tokens", "error", err) - return nil, fmt.Errorf("Failed to persist tokens - %v", err) + // TODO: is it safe to move this out of WithPersistenceLock? + if triggerAntiEntropySync { + s.agent.sync.SyncFull.Trigger() } + return nil + }) + if err != nil { + return nil, err } s.agent.logger.Info("Updated agent's ACL token", "token", target) diff --git a/agent/agent_endpoint_test.go b/agent/agent_endpoint_test.go index 505835ce84..5958c8b8c5 100644 --- a/agent/agent_endpoint_test.go +++ b/agent/agent_endpoint_test.go @@ -4774,13 +4774,14 @@ func TestAgent_Token(t *testing.T) { init tokens raw tokens effective tokens + expectedErr error }{ { - name: "bad token name", - method: "PUT", - url: "nope?token=root", - body: body("X"), - code: http.StatusNotFound, + name: "bad token name", + method: "PUT", + url: "nope?token=root", + body: body("X"), + expectedErr: NotFoundError{Reason: `Token "nope" is unknown`}, }, { name: "bad JSON", @@ -4942,7 +4943,12 @@ func TestAgent_Token(t *testing.T) { url := fmt.Sprintf("/v1/agent/token/%s", tt.url) resp := httptest.NewRecorder() req, _ := http.NewRequest(tt.method, url, tt.body) + _, err := a.srv.AgentToken(resp, req) + if tt.expectedErr != nil { + require.Equal(t, tt.expectedErr, err) + return + } require.NoError(t, err) require.Equal(t, tt.code, resp.Code) require.Equal(t, tt.effective.user, a.tokens.UserToken()) diff --git a/agent/agent_oss.go b/agent/agent_oss.go index 03b2f7ef52..705205fb30 100644 --- a/agent/agent_oss.go +++ b/agent/agent_oss.go @@ -23,10 +23,6 @@ func (a *Agent) initEnterprise(consulCfg *consul.Config) error { return nil } -// loadEnterpriseTokens is a noop stub for the func defined agent_ent.go -func (a *Agent) loadEnterpriseTokens(conf *config.RuntimeConfig) { -} - // reloadEnterprise is a noop stub for the func defined agent_ent.go func (a *Agent) reloadEnterprise(conf *config.RuntimeConfig) error { return nil diff --git a/agent/agent_test.go b/agent/agent_test.go index 479421f591..f3616f7c19 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -3345,163 +3345,6 @@ func TestAgent_reloadWatchesHTTPS(t *testing.T) { } } -func TestAgent_loadTokens(t *testing.T) { - t.Parallel() - a := NewTestAgent(t, ` - acl = { - enabled = true - tokens = { - agent = "alfa" - agent_master = "bravo", - default = "charlie" - replication = "delta" - } - } - - `) - defer a.Shutdown() - require := require.New(t) - - tokensFullPath := filepath.Join(a.config.DataDir, tokensPath) - - t.Run("original-configuration", func(t *testing.T) { - require.Equal("alfa", a.tokens.AgentToken()) - require.Equal("bravo", a.tokens.AgentMasterToken()) - require.Equal("charlie", a.tokens.UserToken()) - require.Equal("delta", a.tokens.ReplicationToken()) - }) - - t.Run("updated-configuration", func(t *testing.T) { - cfg := &config.RuntimeConfig{ - ACLToken: "echo", - ACLAgentToken: "foxtrot", - ACLAgentMasterToken: "golf", - ACLReplicationToken: "hotel", - } - // ensures no error for missing persisted tokens file - require.NoError(a.loadTokens(cfg)) - require.Equal("echo", a.tokens.UserToken()) - require.Equal("foxtrot", a.tokens.AgentToken()) - require.Equal("golf", a.tokens.AgentMasterToken()) - require.Equal("hotel", a.tokens.ReplicationToken()) - }) - - t.Run("persisted-tokens", func(t *testing.T) { - cfg := &config.RuntimeConfig{ - ACLToken: "echo", - ACLAgentToken: "foxtrot", - ACLAgentMasterToken: "golf", - ACLReplicationToken: "hotel", - } - - tokens := `{ - "agent" : "india", - "agent_master" : "juliett", - "default": "kilo", - "replication" : "lima" - }` - - require.NoError(ioutil.WriteFile(tokensFullPath, []byte(tokens), 0600)) - require.NoError(a.loadTokens(cfg)) - - // no updates since token persistence is not enabled - require.Equal("echo", a.tokens.UserToken()) - require.Equal("foxtrot", a.tokens.AgentToken()) - require.Equal("golf", a.tokens.AgentMasterToken()) - require.Equal("hotel", a.tokens.ReplicationToken()) - - a.config.ACLEnableTokenPersistence = true - require.NoError(a.loadTokens(cfg)) - - require.Equal("india", a.tokens.AgentToken()) - require.Equal("juliett", a.tokens.AgentMasterToken()) - require.Equal("kilo", a.tokens.UserToken()) - require.Equal("lima", a.tokens.ReplicationToken()) - }) - - t.Run("persisted-tokens-override", func(t *testing.T) { - tokens := `{ - "agent" : "mike", - "agent_master" : "november", - "default": "oscar", - "replication" : "papa" - }` - - cfg := &config.RuntimeConfig{ - ACLToken: "quebec", - ACLAgentToken: "romeo", - ACLAgentMasterToken: "sierra", - ACLReplicationToken: "tango", - } - - require.NoError(ioutil.WriteFile(tokensFullPath, []byte(tokens), 0600)) - require.NoError(a.loadTokens(cfg)) - - require.Equal("mike", a.tokens.AgentToken()) - require.Equal("november", a.tokens.AgentMasterToken()) - require.Equal("oscar", a.tokens.UserToken()) - require.Equal("papa", a.tokens.ReplicationToken()) - }) - - t.Run("partial-persisted", func(t *testing.T) { - tokens := `{ - "agent" : "uniform", - "agent_master" : "victor" - }` - - cfg := &config.RuntimeConfig{ - ACLToken: "whiskey", - ACLAgentToken: "xray", - ACLAgentMasterToken: "yankee", - ACLReplicationToken: "zulu", - } - - require.NoError(ioutil.WriteFile(tokensFullPath, []byte(tokens), 0600)) - require.NoError(a.loadTokens(cfg)) - - require.Equal("uniform", a.tokens.AgentToken()) - require.Equal("victor", a.tokens.AgentMasterToken()) - require.Equal("whiskey", a.tokens.UserToken()) - require.Equal("zulu", a.tokens.ReplicationToken()) - }) - - t.Run("persistence-error-not-json", func(t *testing.T) { - cfg := &config.RuntimeConfig{ - ACLToken: "one", - ACLAgentToken: "two", - ACLAgentMasterToken: "three", - ACLReplicationToken: "four", - } - - require.NoError(ioutil.WriteFile(tokensFullPath, []byte{0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}, 0600)) - err := a.loadTokens(cfg) - require.Error(err) - - require.Equal("one", a.tokens.UserToken()) - require.Equal("two", a.tokens.AgentToken()) - require.Equal("three", a.tokens.AgentMasterToken()) - require.Equal("four", a.tokens.ReplicationToken()) - }) - - t.Run("persistence-error-wrong-top-level", func(t *testing.T) { - cfg := &config.RuntimeConfig{ - ACLToken: "alfa", - ACLAgentToken: "bravo", - ACLAgentMasterToken: "charlie", - ACLReplicationToken: "foxtrot", - } - - require.NoError(ioutil.WriteFile(tokensFullPath, []byte("[1,2,3]"), 0600)) - err := a.loadTokens(cfg) - require.Error(err) - - require.Equal("alfa", a.tokens.UserToken()) - require.Equal("bravo", a.tokens.AgentToken()) - require.Equal("charlie", a.tokens.AgentMasterToken()) - require.Equal("foxtrot", a.tokens.ReplicationToken()) - }) -} - func TestAgent_SecurityChecks(t *testing.T) { t.Parallel() hcl := ` diff --git a/agent/config/runtime.go b/agent/config/runtime.go index 08ddfdb854..dd536bb8c2 100644 --- a/agent/config/runtime.go +++ b/agent/config/runtime.go @@ -9,6 +9,7 @@ import ( "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/api" "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/logging" @@ -63,6 +64,10 @@ type RuntimeConfig struct { // hcl: acl.enabled = boolean ACLsEnabled bool + // TODO: remove old fields + // TODO: set DataDir as well + ACLTokens token.Config + // ACLAgentMasterToken is a special token that has full read and write // privileges for this agent, and can be used to call agent endpoints // when no servers are available. diff --git a/agent/setup.go b/agent/setup.go index b807e7f7e9..d5a2d063ea 100644 --- a/agent/setup.go +++ b/agent/setup.go @@ -79,6 +79,7 @@ func NewBaseDeps(configLoader ConfigLoader, logOut io.Writer) (BaseDeps, error) d.RuntimeConfig = cfg d.Tokens = new(token.Store) + // cache-types are not registered yet, but they won't be used until the components are started. d.Cache = cache.New(cfg.Cache) d.ConnPool = newConnPool(cfg, d.Logger, d.TLSConfigurator) diff --git a/agent/token/persistence.go b/agent/token/persistence.go new file mode 100644 index 0000000000..06861a40a0 --- /dev/null +++ b/agent/token/persistence.go @@ -0,0 +1,190 @@ +package token + +import ( + "encoding/json" + "fmt" + "io/ioutil" + "os" + "path/filepath" + + "github.com/hashicorp/consul/lib/file" +) + +// Logger used by Store.Load to report warnings. +type Logger interface { + Warn(msg string, args ...interface{}) +} + +// Config used by Store.Load, which includes tokens and settings for persistence. +type Config struct { + EnablePersistence bool + DataDir string + ACLDefaultToken string + ACLAgentToken string + ACLAgentMasterToken string + ACLReplicationToken string +} + +const tokensPath = "acl-tokens.json" + +// Load tokens from Config and optionally from a persisted file in the cfg.DataDir. +// If a token exists in both the persisted file and in the Config a warning will +// be logged and the persisted token will be used. +// +// Failures to load the persisted file will result in loading tokens from the +// config before returning the error. +func (t *Store) Load(cfg Config, logger Logger) error { + t.persistenceLock.RLock() + if !cfg.EnablePersistence { + t.persistence = nil + t.persistenceLock.RUnlock() + loadTokens(t, cfg, persistedTokens{}, logger) + return nil + } + + defer t.persistenceLock.RUnlock() + t.persistence = &fileStore{ + filename: filepath.Join(cfg.DataDir, tokensPath), + logger: logger, + } + return t.persistence.load(t, cfg) +} + +// WithPersistenceLock executes f while hold a lock. If f returns a nil error, +// the tokens in Store will be persisted to the tokens file. Otherwise no +// tokens will be persisted, and the error from f will be returned. +// +// The lock is held so that the writes are persisted before some other thread +// can change the value. +func (t *Store) WithPersistenceLock(f func() error) error { + t.persistenceLock.Lock() + if t.persistence == nil { + t.persistenceLock.Unlock() + return f() + } + defer t.persistenceLock.Unlock() + return t.persistence.withPersistenceLock(t, f) +} + +type persistedTokens struct { + Replication string `json:"replication,omitempty"` + AgentMaster string `json:"agent_master,omitempty"` + Default string `json:"default,omitempty"` + Agent string `json:"agent,omitempty"` +} + +type fileStore struct { + filename string + logger Logger +} + +func (p *fileStore) load(s *Store, cfg Config) error { + tokens, err := readPersistedFromFile(p.filename) + if err != nil { + p.logger.Warn("unable to load persisted tokens", "error", err) + } + loadTokens(s, cfg, tokens, p.logger) + return err +} + +func loadTokens(s *Store, cfg Config, tokens persistedTokens, logger Logger) { + if tokens.Default != "" { + s.UpdateUserToken(tokens.Default, TokenSourceAPI) + + if cfg.ACLDefaultToken != "" { + logger.Warn("\"default\" token present in both the configuration and persisted token store, using the persisted token") + } + } else { + s.UpdateUserToken(cfg.ACLDefaultToken, TokenSourceConfig) + } + + if tokens.Agent != "" { + s.UpdateAgentToken(tokens.Agent, TokenSourceAPI) + + if cfg.ACLAgentToken != "" { + logger.Warn("\"agent\" token present in both the configuration and persisted token store, using the persisted token") + } + } else { + s.UpdateAgentToken(cfg.ACLAgentToken, TokenSourceConfig) + } + + if tokens.AgentMaster != "" { + s.UpdateAgentMasterToken(tokens.AgentMaster, TokenSourceAPI) + + if cfg.ACLAgentMasterToken != "" { + logger.Warn("\"agent_master\" token present in both the configuration and persisted token store, using the persisted token") + } + } else { + s.UpdateAgentMasterToken(cfg.ACLAgentMasterToken, TokenSourceConfig) + } + + if tokens.Replication != "" { + s.UpdateReplicationToken(tokens.Replication, TokenSourceAPI) + + if cfg.ACLReplicationToken != "" { + logger.Warn("\"replication\" token present in both the configuration and persisted token store, using the persisted token") + } + } else { + s.UpdateReplicationToken(cfg.ACLReplicationToken, TokenSourceConfig) + } + + loadEnterpriseTokens(s, cfg) +} + +func readPersistedFromFile(filename string) (persistedTokens, error) { + tokens := persistedTokens{} + + buf, err := ioutil.ReadFile(filename) + switch { + case os.IsNotExist(err): + // non-existence is not an error we care about + return tokens, nil + case err != nil: + return tokens, fmt.Errorf("failed reading tokens file %q: %w", filename, err) + } + + if err := json.Unmarshal(buf, &tokens); err != nil { + return tokens, fmt.Errorf("failed to decode tokens file %q: %w", filename, err) + } + + return tokens, nil +} + +func (p *fileStore) withPersistenceLock(s *Store, f func() error) error { + if err := f(); err != nil { + return err + } + + return p.saveToFile(s) +} + +func (p *fileStore) saveToFile(s *Store) error { + tokens := persistedTokens{} + if tok, source := s.UserTokenAndSource(); tok != "" && source == TokenSourceAPI { + tokens.Default = tok + } + + if tok, source := s.AgentTokenAndSource(); tok != "" && source == TokenSourceAPI { + tokens.Agent = tok + } + + if tok, source := s.AgentMasterTokenAndSource(); tok != "" && source == TokenSourceAPI { + tokens.AgentMaster = tok + } + + if tok, source := s.ReplicationTokenAndSource(); tok != "" && source == TokenSourceAPI { + tokens.Replication = tok + } + + data, err := json.Marshal(tokens) + if err != nil { + p.logger.Warn("failed to persist tokens", "error", err) + return fmt.Errorf("Failed to marshal tokens for persistence: %v", err) + } + + if err := file.WriteAtomicWithPerms(p.filename, data, 0700, 0600); err != nil { + p.logger.Warn("failed to persist tokens", "error", err) + return fmt.Errorf("Failed to persist tokens - %v", err) + } + return nil +} diff --git a/agent/token/persistence_test.go b/agent/token/persistence_test.go new file mode 100644 index 0000000000..ec8e7e60e3 --- /dev/null +++ b/agent/token/persistence_test.go @@ -0,0 +1,213 @@ +package token + +import ( + "io/ioutil" + "path/filepath" + "testing" + + "github.com/hashicorp/consul/sdk/testutil" + "github.com/hashicorp/go-hclog" + "github.com/stretchr/testify/require" +) + +func TestStore_Load(t *testing.T) { + dataDir := testutil.TempDir(t, "datadir") + tokenFile := filepath.Join(dataDir, tokensPath) + logger := hclog.New(nil) + store := new(Store) + + t.Run("with empty store", func(t *testing.T) { + cfg := Config{ + DataDir: dataDir, + ACLAgentToken: "alfa", + ACLAgentMasterToken: "bravo", + ACLDefaultToken: "charlie", + ACLReplicationToken: "delta", + } + require.NoError(t, store.Load(cfg, logger)) + require.Equal(t, "alfa", store.AgentToken()) + require.Equal(t, "bravo", store.AgentMasterToken()) + require.Equal(t, "charlie", store.UserToken()) + require.Equal(t, "delta", store.ReplicationToken()) + }) + + t.Run("updated from Config", func(t *testing.T) { + cfg := Config{ + DataDir: dataDir, + ACLDefaultToken: "echo", + ACLAgentToken: "foxtrot", + ACLAgentMasterToken: "golf", + ACLReplicationToken: "hotel", + } + // ensures no error for missing persisted tokens file + require.NoError(t, store.Load(cfg, logger)) + require.Equal(t, "echo", store.UserToken()) + require.Equal(t, "foxtrot", store.AgentToken()) + require.Equal(t, "golf", store.AgentMasterToken()) + require.Equal(t, "hotel", store.ReplicationToken()) + }) + + t.Run("with persisted tokens", func(t *testing.T) { + cfg := Config{ + DataDir: dataDir, + ACLDefaultToken: "echo", + ACLAgentToken: "foxtrot", + ACLAgentMasterToken: "golf", + ACLReplicationToken: "hotel", + } + + tokens := `{ + "agent" : "india", + "agent_master" : "juliett", + "default": "kilo", + "replication" : "lima" + }` + + require.NoError(t, ioutil.WriteFile(tokenFile, []byte(tokens), 0600)) + require.NoError(t, store.Load(cfg, logger)) + + // no updates since token persistence is not enabled + require.Equal(t, "echo", store.UserToken()) + require.Equal(t, "foxtrot", store.AgentToken()) + require.Equal(t, "golf", store.AgentMasterToken()) + require.Equal(t, "hotel", store.ReplicationToken()) + + cfg.EnablePersistence = true + require.NoError(t, store.Load(cfg, logger)) + + require.Equal(t, "india", store.AgentToken()) + require.Equal(t, "juliett", store.AgentMasterToken()) + require.Equal(t, "kilo", store.UserToken()) + require.Equal(t, "lima", store.ReplicationToken()) + + // check store persistence was enabled + require.NotNil(t, store.persistence) + }) + + t.Run("with persisted tokens, persisted tokens override config", func(t *testing.T) { + tokens := `{ + "agent" : "mike", + "agent_master" : "november", + "default": "oscar", + "replication" : "papa" + }` + + cfg := Config{ + EnablePersistence: true, + DataDir: dataDir, + ACLDefaultToken: "quebec", + ACLAgentToken: "romeo", + ACLAgentMasterToken: "sierra", + ACLReplicationToken: "tango", + } + + require.NoError(t, ioutil.WriteFile(tokenFile, []byte(tokens), 0600)) + require.NoError(t, store.Load(cfg, logger)) + + require.Equal(t, "mike", store.AgentToken()) + require.Equal(t, "november", store.AgentMasterToken()) + require.Equal(t, "oscar", store.UserToken()) + require.Equal(t, "papa", store.ReplicationToken()) + }) + + t.Run("with some persisted tokens", func(t *testing.T) { + tokens := `{ + "agent" : "uniform", + "agent_master" : "victor" + }` + + cfg := Config{ + EnablePersistence: true, + DataDir: dataDir, + ACLDefaultToken: "whiskey", + ACLAgentToken: "xray", + ACLAgentMasterToken: "yankee", + ACLReplicationToken: "zulu", + } + + require.NoError(t, ioutil.WriteFile(tokenFile, []byte(tokens), 0600)) + require.NoError(t, store.Load(cfg, logger)) + + require.Equal(t, "uniform", store.AgentToken()) + require.Equal(t, "victor", store.AgentMasterToken()) + require.Equal(t, "whiskey", store.UserToken()) + require.Equal(t, "zulu", store.ReplicationToken()) + }) + + t.Run("persisted file contains invalid data", func(t *testing.T) { + cfg := Config{ + EnablePersistence: true, + DataDir: dataDir, + ACLDefaultToken: "one", + ACLAgentToken: "two", + ACLAgentMasterToken: "three", + ACLReplicationToken: "four", + } + + require.NoError(t, ioutil.WriteFile(tokenFile, []byte{0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08}, 0600)) + err := store.Load(cfg, logger) + require.Error(t, err) + require.Contains(t, err.Error(), "failed to decode tokens file") + + require.Equal(t, "one", store.UserToken()) + require.Equal(t, "two", store.AgentToken()) + require.Equal(t, "three", store.AgentMasterToken()) + require.Equal(t, "four", store.ReplicationToken()) + }) + + t.Run("persisted file contains invalid json", func(t *testing.T) { + cfg := Config{ + EnablePersistence: true, + DataDir: dataDir, + ACLDefaultToken: "alfa", + ACLAgentToken: "bravo", + ACLAgentMasterToken: "charlie", + ACLReplicationToken: "foxtrot", + } + + require.NoError(t, ioutil.WriteFile(tokenFile, []byte("[1,2,3]"), 0600)) + err := store.Load(cfg, logger) + require.Error(t, err) + require.Contains(t, err.Error(), "failed to decode tokens file") + + require.Equal(t, "alfa", store.UserToken()) + require.Equal(t, "bravo", store.AgentToken()) + require.Equal(t, "charlie", store.AgentMasterToken()) + require.Equal(t, "foxtrot", store.ReplicationToken()) + }) +} + +func TestStore_WithPersistenceLock(t *testing.T) { + dataDir := testutil.TempDir(t, "datadir") + store := new(Store) + cfg := Config{ + EnablePersistence: true, + DataDir: dataDir, + ACLDefaultToken: "default-token", + ACLAgentToken: "agent-token", + ACLAgentMasterToken: "master-token", + ACLReplicationToken: "replication-token", + } + err := store.Load(cfg, hclog.New(nil)) + require.NoError(t, err) + + f := func() error { + updated := store.UpdateUserToken("the-new-token", TokenSourceAPI) + require.True(t, updated) + + updated = store.UpdateAgentMasterToken("the-new-master-token", TokenSourceAPI) + require.True(t, updated) + return nil + } + + err = store.WithPersistenceLock(f) + require.NoError(t, err) + + tokens, err := readPersistedFromFile(filepath.Join(dataDir, tokensPath)) + require.NoError(t, err) + expected := persistedTokens{ + Default: "the-new-token", + AgentMaster: "the-new-master-token", + } + require.Equal(t, expected, tokens) +} diff --git a/agent/token/store.go b/agent/token/store.go index 56ab7d806a..456190f70b 100644 --- a/agent/token/store.go +++ b/agent/token/store.go @@ -77,6 +77,12 @@ type Store struct { watchers map[int]watcher watcherIndex int + persistence *fileStore + // persistenceLock is used to synchronize access to the persisted token store + // within the data directory. This will prevent loading while writing as well as + // multiple concurrent writes. + persistenceLock sync.RWMutex + // enterpriseTokens contains tokens only used in consul-enterprise enterpriseTokens } @@ -158,7 +164,7 @@ func (t *Store) sendNotificationLocked(kinds ...TokenKind) { // Returns true if it was changed. func (t *Store) UpdateUserToken(token string, source TokenSource) bool { t.l.Lock() - changed := (t.userToken != token || t.userTokenSource != source) + changed := t.userToken != token || t.userTokenSource != source t.userToken = token t.userTokenSource = source if changed { @@ -172,7 +178,7 @@ func (t *Store) UpdateUserToken(token string, source TokenSource) bool { // Returns true if it was changed. func (t *Store) UpdateAgentToken(token string, source TokenSource) bool { t.l.Lock() - changed := (t.agentToken != token || t.agentTokenSource != source) + changed := t.agentToken != token || t.agentTokenSource != source t.agentToken = token t.agentTokenSource = source if changed { @@ -186,7 +192,7 @@ func (t *Store) UpdateAgentToken(token string, source TokenSource) bool { // Returns true if it was changed. func (t *Store) UpdateAgentMasterToken(token string, source TokenSource) bool { t.l.Lock() - changed := (t.agentMasterToken != token || t.agentMasterTokenSource != source) + changed := t.agentMasterToken != token || t.agentMasterTokenSource != source t.agentMasterToken = token t.agentMasterTokenSource = source if changed { @@ -200,7 +206,7 @@ func (t *Store) UpdateAgentMasterToken(token string, source TokenSource) bool { // Returns true if it was changed. func (t *Store) UpdateReplicationToken(token string, source TokenSource) bool { t.l.Lock() - changed := (t.replicationToken != token || t.replicationTokenSource != source) + changed := t.replicationToken != token || t.replicationTokenSource != source t.replicationToken = token t.replicationTokenSource = source if changed { diff --git a/agent/token/store_oss.go b/agent/token/store_oss.go index 0a182d8265..97461edc27 100644 --- a/agent/token/store_oss.go +++ b/agent/token/store_oss.go @@ -7,6 +7,10 @@ type enterpriseTokens struct { } // enterpriseAgentToken OSS stub -func (s *Store) enterpriseAgentToken() string { +func (t *Store) enterpriseAgentToken() string { return "" } + +// loadEnterpriseTokens is a noop stub for the func defined agent_ent.go +func loadEnterpriseTokens(_ *Store, _ Config) { +} From 629e4aaa656d91ee83439ee751b6ff3dfad5356c Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 25 Aug 2020 00:10:12 -0400 Subject: [PATCH 030/122] config: use token.Config for ACLToken config Using the target Config struct reduces the amount of copying and translating of configuration structs. --- agent/auto-config/auto_config.go | 2 +- agent/config/builder.go | 38 ++++++++++++++++++-------------- agent/config/runtime.go | 36 ------------------------------ agent/config/runtime_test.go | 37 ++++++++++++++++++++++--------- 4 files changed, 49 insertions(+), 64 deletions(-) diff --git a/agent/auto-config/auto_config.go b/agent/auto-config/auto_config.go index c2dd942c6c..335f0f9872 100644 --- a/agent/auto-config/auto_config.go +++ b/agent/auto-config/auto_config.go @@ -222,7 +222,7 @@ func (ac *AutoConfig) recordInitialConfiguration(resp *pbautoconf.AutoConfigResp } // ignoring the return value which would indicate a change in the token - _ = ac.acConfig.Tokens.UpdateAgentToken(config.ACLAgentToken, token.TokenSourceConfig) + _ = ac.acConfig.Tokens.UpdateAgentToken(config.ACLTokens.ACLAgentToken, token.TokenSourceConfig) // extra a structs.SignedResponse from the AutoConfigResponse for use in cache prepopulation signed, err := extractSignedResponse(resp) diff --git a/agent/config/builder.go b/agent/config/builder.go index 040b39aee0..3dc12c463f 100644 --- a/agent/config/builder.go +++ b/agent/config/builder.go @@ -22,6 +22,7 @@ import ( "github.com/hashicorp/consul/agent/consul/authmethod/ssoauth" "github.com/hashicorp/consul/agent/dns" "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/ipaddr" "github.com/hashicorp/consul/lib" libtempl "github.com/hashicorp/consul/lib/template" @@ -799,6 +800,7 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { // ---------------------------------------------------------------- // build runtime config // + dataDir := b.stringVal(c.DataDir) rt = RuntimeConfig{ // non-user configurable values ACLDisabledTTL: b.durationVal("acl.disabled_ttl", c.ACL.DisabledTTL), @@ -837,21 +839,25 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { GossipWANRetransmitMult: b.intVal(c.GossipWAN.RetransmitMult), // ACL - ACLsEnabled: aclsEnabled, - ACLAgentMasterToken: b.stringValWithDefault(c.ACL.Tokens.AgentMaster, b.stringVal(c.ACLAgentMasterToken)), - ACLAgentToken: b.stringValWithDefault(c.ACL.Tokens.Agent, b.stringVal(c.ACLAgentToken)), - ACLDatacenter: primaryDatacenter, - ACLDefaultPolicy: b.stringValWithDefault(c.ACL.DefaultPolicy, b.stringVal(c.ACLDefaultPolicy)), - ACLDownPolicy: b.stringValWithDefault(c.ACL.DownPolicy, b.stringVal(c.ACLDownPolicy)), - ACLEnableKeyListPolicy: b.boolValWithDefault(c.ACL.EnableKeyListPolicy, b.boolVal(c.ACLEnableKeyListPolicy)), - ACLMasterToken: b.stringValWithDefault(c.ACL.Tokens.Master, b.stringVal(c.ACLMasterToken)), - ACLReplicationToken: b.stringValWithDefault(c.ACL.Tokens.Replication, b.stringVal(c.ACLReplicationToken)), - ACLTokenTTL: b.durationValWithDefault("acl.token_ttl", c.ACL.TokenTTL, b.durationVal("acl_ttl", c.ACLTTL)), - ACLPolicyTTL: b.durationVal("acl.policy_ttl", c.ACL.PolicyTTL), - ACLRoleTTL: b.durationVal("acl.role_ttl", c.ACL.RoleTTL), - ACLToken: b.stringValWithDefault(c.ACL.Tokens.Default, b.stringVal(c.ACLToken)), - ACLTokenReplication: b.boolValWithDefault(c.ACL.TokenReplication, b.boolValWithDefault(c.EnableACLReplication, enableTokenReplication)), - ACLEnableTokenPersistence: b.boolValWithDefault(c.ACL.EnableTokenPersistence, false), + ACLsEnabled: aclsEnabled, + ACLDatacenter: primaryDatacenter, + ACLDefaultPolicy: b.stringValWithDefault(c.ACL.DefaultPolicy, b.stringVal(c.ACLDefaultPolicy)), + ACLDownPolicy: b.stringValWithDefault(c.ACL.DownPolicy, b.stringVal(c.ACLDownPolicy)), + ACLEnableKeyListPolicy: b.boolValWithDefault(c.ACL.EnableKeyListPolicy, b.boolVal(c.ACLEnableKeyListPolicy)), + ACLMasterToken: b.stringValWithDefault(c.ACL.Tokens.Master, b.stringVal(c.ACLMasterToken)), + ACLTokenTTL: b.durationValWithDefault("acl.token_ttl", c.ACL.TokenTTL, b.durationVal("acl_ttl", c.ACLTTL)), + ACLPolicyTTL: b.durationVal("acl.policy_ttl", c.ACL.PolicyTTL), + ACLRoleTTL: b.durationVal("acl.role_ttl", c.ACL.RoleTTL), + ACLTokenReplication: b.boolValWithDefault(c.ACL.TokenReplication, b.boolValWithDefault(c.EnableACLReplication, enableTokenReplication)), + + ACLTokens: token.Config{ + DataDir: dataDir, + EnablePersistence: b.boolValWithDefault(c.ACL.EnableTokenPersistence, false), + ACLDefaultToken: b.stringValWithDefault(c.ACL.Tokens.Default, b.stringVal(c.ACLToken)), + ACLAgentToken: b.stringValWithDefault(c.ACL.Tokens.Agent, b.stringVal(c.ACLAgentToken)), + ACLAgentMasterToken: b.stringValWithDefault(c.ACL.Tokens.AgentMaster, b.stringVal(c.ACLAgentMasterToken)), + ACLReplicationToken: b.stringValWithDefault(c.ACL.Tokens.Replication, b.stringVal(c.ACLReplicationToken)), + }, // Autopilot AutopilotCleanupDeadServers: b.boolVal(c.Autopilot.CleanupDeadServers), @@ -957,7 +963,7 @@ func (b *Builder) Build() (rt RuntimeConfig, err error) { ConnectTestCALeafRootChangeSpread: b.durationVal("connect.test_ca_leaf_root_change_spread", c.Connect.TestCALeafRootChangeSpread), ExposeMinPort: exposeMinPort, ExposeMaxPort: exposeMaxPort, - DataDir: b.stringVal(c.DataDir), + DataDir: dataDir, Datacenter: datacenter, DefaultQueryTime: b.durationVal("default_query_time", c.DefaultQueryTime), DevMode: b.boolVal(b.devMode), diff --git a/agent/config/runtime.go b/agent/config/runtime.go index dd536bb8c2..7577854224 100644 --- a/agent/config/runtime.go +++ b/agent/config/runtime.go @@ -64,24 +64,8 @@ type RuntimeConfig struct { // hcl: acl.enabled = boolean ACLsEnabled bool - // TODO: remove old fields - // TODO: set DataDir as well ACLTokens token.Config - // ACLAgentMasterToken is a special token that has full read and write - // privileges for this agent, and can be used to call agent endpoints - // when no servers are available. - // - // hcl: acl.tokens.agent_master = string - ACLAgentMasterToken string - - // ACLAgentToken is the default token used to make requests for the agent - // itself, such as for registering itself with the catalog. If not - // configured, the 'acl_token' will be used. - // - // hcl: acl.tokens.agent = string - ACLAgentToken string - // ACLDatacenter is the central datacenter that holds authoritative // ACL records. This must be the same for the entire cluster. // If this is not set, ACLs are not enabled. Off by default. @@ -128,16 +112,6 @@ type RuntimeConfig struct { // hcl: acl.tokens.master = string ACLMasterToken string - // ACLReplicationToken is used to replicate data locally from the - // PrimaryDatacenter. Replication is only available on servers in - // datacenters other than the PrimaryDatacenter - // - // DEPRECATED (ACL-Legacy-Compat): Setting this to a non-empty value - // also enables legacy ACL replication if ACLs are enabled and in legacy mode. - // - // hcl: acl.tokens.replication = string - ACLReplicationToken string - // ACLtokenReplication is used to indicate that both tokens and policies // should be replicated instead of just policies // @@ -162,16 +136,6 @@ type RuntimeConfig struct { // hcl: acl.role_ttl = "duration" ACLRoleTTL time.Duration - // ACLToken is the default token used to make requests if a per-request - // token is not provided. If not configured the 'anonymous' token is used. - // - // hcl: acl.tokens.default = string - ACLToken string - - // ACLEnableTokenPersistence determines whether or not tokens set via the agent HTTP API - // should be persisted to disk and reloaded when an agent restarts. - ACLEnableTokenPersistence bool - // AutopilotCleanupDeadServers enables the automatic cleanup of dead servers when new ones // are added to the peer list. Defaults to true. // diff --git a/agent/config/runtime_test.go b/agent/config/runtime_test.go index adbc269e68..48aafea6b5 100644 --- a/agent/config/runtime_test.go +++ b/agent/config/runtime_test.go @@ -21,6 +21,7 @@ import ( "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/agent/checks" "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/agent/token" "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/logging" "github.com/hashicorp/consul/sdk/testutil" @@ -1613,7 +1614,7 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { json: []string{`{ "acl_replication_token": "a" }`}, hcl: []string{`acl_replication_token = "a"`}, patch: func(rt *RuntimeConfig) { - rt.ACLReplicationToken = "a" + rt.ACLTokens.ACLReplicationToken = "a" rt.ACLTokenReplication = true rt.DataDir = dataDir }, @@ -4350,6 +4351,13 @@ func testConfig(t *testing.T, tests []configTest, dataDir string) { if tt.patch != nil { tt.patch(&expected) } + + // both DataDir fields should always be the same, so test for the + // invariant, and than updated the expected, so that every test + // case does not need to set this field. + require.Equal(t, actual.DataDir, actual.ACLTokens.DataDir) + expected.ACLTokens.DataDir = actual.ACLTokens.DataDir + require.Equal(t, expected, actual) }) } @@ -5843,20 +5851,24 @@ func TestFullConfig(t *testing.T) { // user configurable values - ACLAgentMasterToken: "64fd0e08", - ACLAgentToken: "bed2377c", + ACLTokens: token.Config{ + EnablePersistence: true, + DataDir: dataDir, + ACLDefaultToken: "418fdff1", + ACLAgentToken: "bed2377c", + ACLAgentMasterToken: "64fd0e08", + ACLReplicationToken: "5795983a", + }, + ACLsEnabled: true, ACLDatacenter: "ejtmd43d", ACLDefaultPolicy: "72c2e7a0", ACLDownPolicy: "03eb2aee", ACLEnableKeyListPolicy: true, - ACLEnableTokenPersistence: true, ACLMasterToken: "8a19ac27", - ACLReplicationToken: "5795983a", ACLTokenTTL: 3321 * time.Second, ACLPolicyTTL: 1123 * time.Second, ACLRoleTTL: 9876 * time.Second, - ACLToken: "418fdff1", ACLTokenReplication: true, AdvertiseAddrLAN: ipAddr("17.99.29.16"), AdvertiseAddrWAN: ipAddr("78.63.37.19"), @@ -6804,21 +6816,24 @@ func TestSanitize(t *testing.T) { } rtJSON := `{ - "ACLAgentMasterToken": "hidden", - "ACLAgentToken": "hidden", + "ACLTokens": { + "ACLAgentMasterToken": "hidden", + "ACLAgentToken": "hidden", + "ACLDefaultToken": "hidden", + "ACLReplicationToken": "hidden", + "DataDir": "", + "EnablePersistence": false + }, "ACLDatacenter": "", "ACLDefaultPolicy": "", "ACLDisabledTTL": "0s", "ACLDownPolicy": "", "ACLEnableKeyListPolicy": false, - "ACLEnableTokenPersistence": false, "ACLMasterToken": "hidden", "ACLPolicyTTL": "0s", - "ACLReplicationToken": "hidden", "ACLRoleTTL": "0s", "ACLTokenReplication": false, "ACLTokenTTL": "0s", - "ACLToken": "hidden", "ACLsEnabled": false, "AEInterval": "0s", "AdvertiseAddrLAN": "", From f1a41318d78b4507082903f625ee2659479709d6 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 27 Aug 2020 13:15:10 -0400 Subject: [PATCH 031/122] token: OSS support for enterprise tokens --- agent/config/builder.go | 9 ++++----- agent/config/builder_oss.go | 8 ++++++-- agent/config/runtime_oss_test.go | 6 ++---- agent/config/runtime_test.go | 4 +++- agent/token/persistence.go | 2 ++ agent/token/store_oss.go | 3 +++ 6 files changed, 20 insertions(+), 12 deletions(-) diff --git a/agent/config/builder.go b/agent/config/builder.go index 3dc12c463f..4b9aab1b7d 100644 --- a/agent/config/builder.go +++ b/agent/config/builder.go @@ -1078,10 +1078,8 @@ 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 entCfg, err := b.BuildEnterpriseRuntimeConfig(&c); err != nil { - return RuntimeConfig{}, err - } else { - rt.EnterpriseRuntimeConfig = entCfg + if err := b.BuildEnterpriseRuntimeConfig(&rt, &c); err != nil { + return rt, err } if rt.BootstrapExpect == 1 { @@ -1369,7 +1367,8 @@ func (b *Builder) Validate(rt RuntimeConfig) error { b.warn(err.Error()) } - return nil + err := b.validateEnterpriseConfig(rt) + return err } // addrUnique checks if the given address is already in use for another diff --git a/agent/config/builder_oss.go b/agent/config/builder_oss.go index b585cab504..85cf081375 100644 --- a/agent/config/builder_oss.go +++ b/agent/config/builder_oss.go @@ -51,8 +51,12 @@ func (e enterpriseConfigKeyError) Error() string { return fmt.Sprintf("%q is a Consul Enterprise configuration and will have no effect", e.key) } -func (_ *Builder) BuildEnterpriseRuntimeConfig(_ *Config) (EnterpriseRuntimeConfig, error) { - return EnterpriseRuntimeConfig{}, nil +func (*Builder) BuildEnterpriseRuntimeConfig(_ *RuntimeConfig, _ *Config) error { + return nil +} + +func (*Builder) validateEnterpriseConfig(_ RuntimeConfig) error { + return nil } // validateEnterpriseConfig is a function to validate the enterprise specific diff --git a/agent/config/runtime_oss_test.go b/agent/config/runtime_oss_test.go index 3871940c51..b6eee07e27 100644 --- a/agent/config/runtime_oss_test.go +++ b/agent/config/runtime_oss_test.go @@ -6,11 +6,9 @@ var entMetaJSON = `{}` var entRuntimeConfigSanitize = `{}` -var entFullDNSJSONConfig = `` +var entTokenConfigSanitize = `"EnterpriseConfig": {},` -var entFullDNSHCLConfig = `` - -var entFullRuntimeConfig = EnterpriseRuntimeConfig{} +func entFullRuntimeConfig(rt *RuntimeConfig) {} var enterpriseNonVotingServerWarnings []string = []string{enterpriseConfigKeyError{key: "non_voting_server"}.Error()} diff --git a/agent/config/runtime_test.go b/agent/config/runtime_test.go index 48aafea6b5..d56cce977a 100644 --- a/agent/config/runtime_test.go +++ b/agent/config/runtime_test.go @@ -6497,9 +6497,10 @@ func TestFullConfig(t *testing.T) { "args": []interface{}{"dltjDJ2a", "flEa7C2d"}, }, }, - EnterpriseRuntimeConfig: entFullRuntimeConfig, } + entFullRuntimeConfig(&want) + warns := []string{ `The 'acl_datacenter' field is deprecated. Use the 'primary_datacenter' field instead.`, `bootstrap_expect > 0: expecting 53 servers`, @@ -6817,6 +6818,7 @@ func TestSanitize(t *testing.T) { rtJSON := `{ "ACLTokens": { + ` + entTokenConfigSanitize + ` "ACLAgentMasterToken": "hidden", "ACLAgentToken": "hidden", "ACLDefaultToken": "hidden", diff --git a/agent/token/persistence.go b/agent/token/persistence.go index 06861a40a0..c36b903641 100644 --- a/agent/token/persistence.go +++ b/agent/token/persistence.go @@ -23,6 +23,8 @@ type Config struct { ACLAgentToken string ACLAgentMasterToken string ACLReplicationToken string + + EnterpriseConfig } const tokensPath = "acl-tokens.json" diff --git a/agent/token/store_oss.go b/agent/token/store_oss.go index 97461edc27..16123052ef 100644 --- a/agent/token/store_oss.go +++ b/agent/token/store_oss.go @@ -2,6 +2,9 @@ package token +type EnterpriseConfig struct { +} + // Stub for enterpriseTokens type enterpriseTokens struct { } From a9df6ac50b5b930ecc9b90570132326454327980 Mon Sep 17 00:00:00 2001 From: Jasmine W Date: Tue, 1 Sep 2020 10:14:13 -0500 Subject: [PATCH 032/122] docs: update structure (#8506) - moved and renamed files/folders based on new structure - updated docs navigation based on new structure - moved CLI to top nav (created commands.jsx and commands-navigation.js) - updated and added redirects - updating to be consistent with standalone categories - changing "overview" link in top nav to lead to where intro was moved (docs/intro) - adding redirects for intro content - deleting old intro folders - format all data/navigation files - deleting old commands folder - reverting changes to glossary page - adjust intro navigation for removal of 'vs' paths - add helm page redirect - fix more redirects - add a missing redirect - fix broken anchor links and formatting mistakes - deleted duplicate section, added redirect, changed link - removed duplicate glossary page --- website/_redirects | 173 +++++++++++- website/components/learn-callout/style.css | 4 - website/data/commands-navigation.js | 78 ++++++ website/data/docs-navigation.js | 257 ++++++++---------- website/data/intro-navigation.js | 20 +- website/data/subnav.js | 7 +- website/layouts/commands.jsx | 41 +++ website/package.json | 4 +- website/pages/api-docs/acl/auth-methods.mdx | 4 +- website/pages/api-docs/acl/index.mdx | 2 +- .../commands/acl/auth-method/create.mdx | 2 +- .../commands/acl/auth-method/delete.mdx | 2 +- .../commands/acl/auth-method/index.mdx | 2 +- .../commands/acl/auth-method/list.mdx | 2 +- .../commands/acl/auth-method/read.mdx | 2 +- .../commands/acl/auth-method/update.mdx | 2 +- .../commands/acl/binding-rule/create.mdx | 2 +- .../commands/acl/binding-rule/delete.mdx | 2 +- .../commands/acl/binding-rule/index.mdx | 2 +- .../commands/acl/binding-rule/list.mdx | 2 +- .../commands/acl/binding-rule/read.mdx | 2 +- .../commands/acl/binding-rule/update.mdx | 2 +- .../{docs => }/commands/acl/bootstrap.mdx | 4 +- .../pages/{docs => }/commands/acl/index.mdx | 2 +- .../{docs => }/commands/acl/policy/create.mdx | 2 +- .../{docs => }/commands/acl/policy/delete.mdx | 2 +- .../{docs => }/commands/acl/policy/index.mdx | 2 +- .../{docs => }/commands/acl/policy/list.mdx | 2 +- .../{docs => }/commands/acl/policy/read.mdx | 2 +- .../{docs => }/commands/acl/policy/update.mdx | 2 +- .../{docs => }/commands/acl/role/create.mdx | 2 +- .../{docs => }/commands/acl/role/delete.mdx | 2 +- .../{docs => }/commands/acl/role/index.mdx | 2 +- .../{docs => }/commands/acl/role/list.mdx | 2 +- .../{docs => }/commands/acl/role/read.mdx | 2 +- .../{docs => }/commands/acl/role/update.mdx | 2 +- .../commands/acl/set-agent-token.mdx | 2 +- .../{docs => }/commands/acl/token/clone.mdx | 2 +- .../{docs => }/commands/acl/token/create.mdx | 2 +- .../{docs => }/commands/acl/token/delete.mdx | 2 +- .../{docs => }/commands/acl/token/index.mdx | 2 +- .../{docs => }/commands/acl/token/list.mdx | 2 +- .../{docs => }/commands/acl/token/read.mdx | 2 +- .../{docs => }/commands/acl/token/update.mdx | 6 +- .../commands/acl/translate-rules.mdx | 2 +- website/pages/{docs => }/commands/agent.mdx | 2 +- .../commands/catalog/datacenters.mdx | 2 +- .../{docs => }/commands/catalog/index.mdx | 2 +- .../{docs => }/commands/catalog/nodes.mdx | 2 +- .../{docs => }/commands/catalog/services.mdx | 2 +- .../{docs => }/commands/config/delete.mdx | 2 +- .../{docs => }/commands/config/index.mdx | 2 +- .../pages/{docs => }/commands/config/list.mdx | 2 +- .../pages/{docs => }/commands/config/read.mdx | 2 +- .../{docs => }/commands/config/write.mdx | 2 +- .../pages/{docs => }/commands/connect/ca.mdx | 2 +- .../{docs => }/commands/connect/envoy.mdx | 2 +- .../{docs => }/commands/connect/expose.mdx | 2 +- .../{docs => }/commands/connect/index.mdx | 2 +- .../{docs => }/commands/connect/proxy.mdx | 2 +- website/pages/{docs => }/commands/debug.mdx | 2 +- website/pages/{docs => }/commands/event.mdx | 2 +- website/pages/{docs => }/commands/exec.mdx | 2 +- .../pages/{docs => }/commands/force-leave.mdx | 4 +- website/pages/{docs => }/commands/index.mdx | 2 +- website/pages/{docs => }/commands/info.mdx | 2 +- .../{docs => }/commands/intention/check.mdx | 2 +- .../{docs => }/commands/intention/create.mdx | 2 +- .../{docs => }/commands/intention/delete.mdx | 2 +- .../{docs => }/commands/intention/get.mdx | 2 +- .../{docs => }/commands/intention/index.mdx | 2 +- .../{docs => }/commands/intention/match.mdx | 2 +- website/pages/{docs => }/commands/join.mdx | 2 +- website/pages/{docs => }/commands/keygen.mdx | 2 +- website/pages/{docs => }/commands/keyring.mdx | 2 +- .../pages/{docs => }/commands/kv/delete.mdx | 2 +- .../pages/{docs => }/commands/kv/export.mdx | 2 +- website/pages/{docs => }/commands/kv/get.mdx | 2 +- .../pages/{docs => }/commands/kv/import.mdx | 2 +- .../pages/{docs => }/commands/kv/index.mdx | 2 +- website/pages/{docs => }/commands/kv/put.mdx | 2 +- website/pages/{docs => }/commands/leave.mdx | 2 +- website/pages/{docs => }/commands/license.mdx | 6 +- website/pages/{docs => }/commands/lock.mdx | 6 +- website/pages/{docs => }/commands/login.mdx | 2 +- website/pages/{docs => }/commands/logout.mdx | 2 +- website/pages/{docs => }/commands/maint.mdx | 2 +- website/pages/{docs => }/commands/members.mdx | 2 +- website/pages/{docs => }/commands/monitor.mdx | 2 +- .../{docs => }/commands/namespace/create.mdx | 2 +- .../{docs => }/commands/namespace/delete.mdx | 2 +- .../{docs => }/commands/namespace/index.mdx | 2 +- .../{docs => }/commands/namespace/list.mdx | 2 +- .../{docs => }/commands/namespace/read.mdx | 2 +- .../{docs => }/commands/namespace/update.mdx | 2 +- .../{docs => }/commands/namespace/write.mdx | 2 +- .../{docs => }/commands/operator/area.mdx | 4 +- .../commands/operator/autopilot.mdx | 6 +- .../{docs => }/commands/operator/index.mdx | 10 +- .../{docs => }/commands/operator/raft.mdx | 2 +- website/pages/{docs => }/commands/reload.mdx | 2 +- website/pages/{docs => }/commands/rtt.mdx | 2 +- .../commands/services/deregister.mdx | 2 +- .../{docs => }/commands/services/index.mdx | 2 +- .../{docs => }/commands/services/register.mdx | 2 +- .../{docs => }/commands/snapshot/agent.mdx | 2 +- .../{docs => }/commands/snapshot/index.mdx | 2 +- .../{docs => }/commands/snapshot/inspect.mdx | 2 +- .../{docs => }/commands/snapshot/restore.mdx | 2 +- .../{docs => }/commands/snapshot/save.mdx | 2 +- website/pages/{docs => }/commands/tls/ca.mdx | 2 +- .../pages/{docs => }/commands/tls/cert.mdx | 2 +- .../pages/{docs => }/commands/tls/index.mdx | 2 +- .../pages/{docs => }/commands/validate.mdx | 2 +- website/pages/{docs => }/commands/version.mdx | 2 +- website/pages/{docs => }/commands/watch.mdx | 2 +- website/pages/docs/agent/options.mdx | 64 ++--- .../anti-entropy.mdx | 0 .../{internals => architecture}/consensus.mdx | 2 +- .../coordinates.mdx | 0 .../{internals => architecture}/gossip.mdx | 4 +- .../index.mdx} | 0 .../{internals => architecture}/jepsen.mdx | 0 .../pages/docs/connect/connect-internals.mdx | 4 +- .../docs/connect/gateways/ingress-gateway.mdx | 4 +- .../index.mdx} | 4 +- .../wan-federation-via-mesh-gateways.mdx | 6 +- .../connect/gateways/terminating-gateway.mdx | 6 +- website/pages/docs/connect/index.mdx | 4 +- website/pages/docs/connect/intentions.mdx | 4 +- .../l7-traffic}/discovery-chain.mdx | 0 .../index.mdx} | 0 .../pages/docs/connect/proxies/built-in.mdx | 2 +- .../connect/proxies/managed-deprecated.mdx | 8 +- website/pages/docs/connect/security.mdx | 2 +- .../docs/{agent => discovery}/checks.mdx | 4 +- .../pages/docs/{agent => discovery}/dns.mdx | 4 +- .../docs/{agent => discovery}/services.mdx | 4 +- .../index.mdx => docs/download-tools.mdx} | 7 +- .../docs/{agent => dynamic-app-config}/kv.mdx | 0 .../sessions.mdx | 0 .../{agent => dynamic-app-config}/watches.mdx | 0 website/pages/docs/enterprise/index.mdx | 4 +- website/pages/docs/guides/acl-legacy.mdx | 8 +- website/pages/docs/guides/consul-f5.mdx | 2 +- .../pages/docs/guides/consul-splitting.mdx | 10 +- .../docs/guides/kuberenetes-deployment.mdx | 20 +- .../guides/kubernetes-production-deploy.mdx | 16 +- .../docs/guides/managing-acl-policies.mdx | 6 +- website/pages/docs/guides/servers.mdx | 4 +- .../{agent => install}/cloud-auto-join.mdx | 5 +- website/pages/docs/{ => install}/glossary.mdx | 2 +- website/pages/docs/install/index.mdx | 4 +- website/pages/docs/install/performance.mdx | 14 +- website/pages/docs/internals/acl.mdx | 4 +- website/pages/{ => docs}/intro/index.mdx | 8 +- .../pages/{ => docs}/intro/vs/chef-puppet.mdx | 2 +- website/pages/{ => docs}/intro/vs/custom.mdx | 2 +- website/pages/{ => docs}/intro/vs/eureka.mdx | 2 +- website/pages/{ => docs}/intro/vs/index.mdx | 2 +- website/pages/{ => docs}/intro/vs/istio.mdx | 2 +- .../{ => docs}/intro/vs/nagios-sensu.mdx | 2 +- website/pages/{ => docs}/intro/vs/proxies.mdx | 2 +- website/pages/{ => docs}/intro/vs/serf.mdx | 2 +- website/pages/{ => docs}/intro/vs/skydns.mdx | 2 +- .../pages/{ => docs}/intro/vs/smartstack.mdx | 2 +- .../pages/{ => docs}/intro/vs/zookeeper.mdx | 2 +- .../docs/k8s/connect/ingress-gateways.mdx | 2 +- .../servers-outside-kubernetes.mdx | 6 +- .../docs/k8s/{ => installation}/helm.mdx | 12 +- website/pages/docs/k8s/installation/index.mdx | 2 +- .../installation/multi-cluster/kubernetes.mdx | 6 +- .../multi-cluster/vms-and-kubernetes.mdx | 6 +- .../tls-on-existing-cluster.mdx | 6 +- .../uninstalling.mdx => uninstall.mdx} | 8 +- .../{operations/upgrading.mdx => upgrade.mdx} | 8 +- .../docs/{ => security}/acl/acl-legacy.mdx | 0 .../{ => security}/acl/acl-migrate-tokens.mdx | 0 .../docs/{ => security}/acl/acl-rules.mdx | 0 .../docs/{ => security}/acl/acl-system.mdx | 4 +- .../{ => security}/acl/auth-methods/index.mdx | 0 .../{ => security}/acl/auth-methods/jwt.mdx | 0 .../acl/auth-methods/kubernetes.mdx | 0 .../{ => security}/acl/auth-methods/oidc.mdx | 0 .../pages/docs/{ => security}/acl/index.mdx | 0 .../docs/{agent => security}/encryption.mdx | 0 .../security.mdx => security/index.mdx} | 4 +- .../docs/{ => troubleshoot}/common-errors.mdx | 0 website/pages/docs/{ => troubleshoot}/faq.mdx | 0 website/pages/docs/upgrading/index.mdx | 4 +- website/pages/downloads/index.jsx | 2 +- website/pages/intro/getting-started/agent.mdx | 2 +- .../use-cases/multi-platform-service-mesh.jsx | 7 +- .../network-infrastructure-automation.jsx | 2 +- .../service-discovery-and-health-checking.jsx | 2 +- 195 files changed, 689 insertions(+), 488 deletions(-) create mode 100644 website/data/commands-navigation.js create mode 100644 website/layouts/commands.jsx rename website/pages/{docs => }/commands/acl/auth-method/create.mdx (99%) rename website/pages/{docs => }/commands/acl/auth-method/delete.mdx (97%) rename website/pages/{docs => }/commands/acl/auth-method/index.mdx (99%) rename website/pages/{docs => }/commands/acl/auth-method/list.mdx (98%) rename website/pages/{docs => }/commands/acl/auth-method/read.mdx (98%) rename website/pages/{docs => }/commands/acl/auth-method/update.mdx (99%) rename website/pages/{docs => }/commands/acl/binding-rule/create.mdx (99%) rename website/pages/{docs => }/commands/acl/binding-rule/delete.mdx (97%) rename website/pages/{docs => }/commands/acl/binding-rule/index.mdx (99%) rename website/pages/{docs => }/commands/acl/binding-rule/list.mdx (99%) rename website/pages/{docs => }/commands/acl/binding-rule/read.mdx (98%) rename website/pages/{docs => }/commands/acl/binding-rule/update.mdx (99%) rename website/pages/{docs => }/commands/acl/bootstrap.mdx (86%) rename website/pages/{docs => }/commands/acl/index.mdx (99%) rename website/pages/{docs => }/commands/acl/policy/create.mdx (99%) rename website/pages/{docs => }/commands/acl/policy/delete.mdx (98%) rename website/pages/{docs => }/commands/acl/policy/index.mdx (99%) rename website/pages/{docs => }/commands/acl/policy/list.mdx (99%) rename website/pages/{docs => }/commands/acl/policy/read.mdx (99%) rename website/pages/{docs => }/commands/acl/policy/update.mdx (99%) rename website/pages/{docs => }/commands/acl/role/create.mdx (99%) rename website/pages/{docs => }/commands/acl/role/delete.mdx (98%) rename website/pages/{docs => }/commands/acl/role/index.mdx (99%) rename website/pages/{docs => }/commands/acl/role/list.mdx (99%) rename website/pages/{docs => }/commands/acl/role/read.mdx (98%) rename website/pages/{docs => }/commands/acl/role/update.mdx (99%) rename website/pages/{docs => }/commands/acl/set-agent-token.mdx (98%) rename website/pages/{docs => }/commands/acl/token/clone.mdx (98%) rename website/pages/{docs => }/commands/acl/token/create.mdx (99%) rename website/pages/{docs => }/commands/acl/token/delete.mdx (97%) rename website/pages/{docs => }/commands/acl/token/index.mdx (99%) rename website/pages/{docs => }/commands/acl/token/list.mdx (99%) rename website/pages/{docs => }/commands/acl/token/read.mdx (99%) rename website/pages/{docs => }/commands/acl/token/update.mdx (96%) rename website/pages/{docs => }/commands/acl/translate-rules.mdx (99%) rename website/pages/{docs => }/commands/agent.mdx (97%) rename website/pages/{docs => }/commands/catalog/datacenters.mdx (96%) rename website/pages/{docs => }/commands/catalog/index.mdx (99%) rename website/pages/{docs => }/commands/catalog/nodes.mdx (99%) rename website/pages/{docs => }/commands/catalog/services.mdx (98%) rename website/pages/{docs => }/commands/config/delete.mdx (97%) rename website/pages/{docs => }/commands/config/index.mdx (98%) rename website/pages/{docs => }/commands/config/list.mdx (97%) rename website/pages/{docs => }/commands/config/read.mdx (98%) rename website/pages/{docs => }/commands/config/write.mdx (99%) rename website/pages/{docs => }/commands/connect/ca.mdx (99%) rename website/pages/{docs => }/commands/connect/envoy.mdx (99%) rename website/pages/{docs => }/commands/connect/expose.mdx (99%) rename website/pages/{docs => }/commands/connect/index.mdx (98%) rename website/pages/{docs => }/commands/connect/proxy.mdx (99%) rename website/pages/{docs => }/commands/debug.mdx (99%) rename website/pages/{docs => }/commands/event.mdx (99%) rename website/pages/{docs => }/commands/exec.mdx (99%) rename website/pages/{docs => }/commands/force-leave.mdx (95%) rename website/pages/{docs => }/commands/index.mdx (99%) rename website/pages/{docs => }/commands/info.mdx (99%) rename website/pages/{docs => }/commands/intention/check.mdx (98%) rename website/pages/{docs => }/commands/intention/create.mdx (98%) rename website/pages/{docs => }/commands/intention/delete.mdx (97%) rename website/pages/{docs => }/commands/intention/get.mdx (97%) rename website/pages/{docs => }/commands/intention/index.mdx (99%) rename website/pages/{docs => }/commands/intention/match.mdx (98%) rename website/pages/{docs => }/commands/join.mdx (98%) rename website/pages/{docs => }/commands/keygen.mdx (97%) rename website/pages/{docs => }/commands/keyring.mdx (99%) rename website/pages/{docs => }/commands/kv/delete.mdx (99%) rename website/pages/{docs => }/commands/kv/export.mdx (97%) rename website/pages/{docs => }/commands/kv/get.mdx (99%) rename website/pages/{docs => }/commands/kv/import.mdx (98%) rename website/pages/{docs => }/commands/kv/index.mdx (99%) rename website/pages/{docs => }/commands/kv/put.mdx (99%) rename website/pages/{docs => }/commands/leave.mdx (98%) rename website/pages/{docs => }/commands/license.mdx (95%) rename website/pages/{docs => }/commands/lock.mdx (97%) rename website/pages/{docs => }/commands/login.mdx (99%) rename website/pages/{docs => }/commands/logout.mdx (97%) rename website/pages/{docs => }/commands/maint.mdx (99%) rename website/pages/{docs => }/commands/members.mdx (98%) rename website/pages/{docs => }/commands/monitor.mdx (98%) rename website/pages/{docs => }/commands/namespace/create.mdx (99%) rename website/pages/{docs => }/commands/namespace/delete.mdx (97%) rename website/pages/{docs => }/commands/namespace/index.mdx (99%) rename website/pages/{docs => }/commands/namespace/list.mdx (99%) rename website/pages/{docs => }/commands/namespace/read.mdx (98%) rename website/pages/{docs => }/commands/namespace/update.mdx (99%) rename website/pages/{docs => }/commands/namespace/write.mdx (98%) rename website/pages/{docs => }/commands/operator/area.mdx (98%) rename website/pages/{docs => }/commands/operator/autopilot.mdx (94%) rename website/pages/{docs => }/commands/operator/index.mdx (80%) rename website/pages/{docs => }/commands/operator/raft.mdx (99%) rename website/pages/{docs => }/commands/reload.mdx (98%) rename website/pages/{docs => }/commands/rtt.mdx (99%) rename website/pages/{docs => }/commands/services/deregister.mdx (99%) rename website/pages/{docs => }/commands/services/index.mdx (98%) rename website/pages/{docs => }/commands/services/register.mdx (99%) rename website/pages/{docs => }/commands/snapshot/agent.mdx (99%) rename website/pages/{docs => }/commands/snapshot/index.mdx (99%) rename website/pages/{docs => }/commands/snapshot/inspect.mdx (98%) rename website/pages/{docs => }/commands/snapshot/restore.mdx (98%) rename website/pages/{docs => }/commands/snapshot/save.mdx (98%) rename website/pages/{docs => }/commands/tls/ca.mdx (98%) rename website/pages/{docs => }/commands/tls/cert.mdx (99%) rename website/pages/{docs => }/commands/tls/index.mdx (98%) rename website/pages/{docs => }/commands/validate.mdx (98%) rename website/pages/{docs => }/commands/version.mdx (98%) rename website/pages/{docs => }/commands/watch.mdx (99%) rename website/pages/docs/{internals => architecture}/anti-entropy.mdx (100%) rename website/pages/docs/{internals => architecture}/consensus.mdx (99%) rename website/pages/docs/{internals => architecture}/coordinates.mdx (100%) rename website/pages/docs/{internals => architecture}/gossip.mdx (98%) rename website/pages/docs/{internals/architecture.mdx => architecture/index.mdx} (100%) rename website/pages/docs/{internals => architecture}/jepsen.mdx (100%) rename website/pages/docs/connect/gateways/{mesh-gateway.mdx => mesh-gateway/index.mdx} (98%) rename website/pages/docs/connect/gateways/{ => mesh-gateway}/wan-federation-via-mesh-gateways.mdx (98%) rename website/pages/docs/{internals => connect/l7-traffic}/discovery-chain.mdx (100%) rename website/pages/docs/connect/{l7-traffic-management.mdx => l7-traffic/index.mdx} (100%) rename website/pages/docs/{agent => discovery}/checks.mdx (99%) rename website/pages/docs/{agent => discovery}/dns.mdx (99%) rename website/pages/docs/{agent => discovery}/services.mdx (99%) rename website/pages/{downloads_tools/index.mdx => docs/download-tools.mdx} (98%) rename website/pages/docs/{agent => dynamic-app-config}/kv.mdx (100%) rename website/pages/docs/{internals => dynamic-app-config}/sessions.mdx (100%) rename website/pages/docs/{agent => dynamic-app-config}/watches.mdx (100%) rename website/pages/docs/{agent => install}/cloud-auto-join.mdx (99%) rename website/pages/docs/{ => install}/glossary.mdx (99%) rename website/pages/{ => docs}/intro/index.mdx (97%) rename website/pages/{ => docs}/intro/vs/chef-puppet.mdx (99%) rename website/pages/{ => docs}/intro/vs/custom.mdx (99%) rename website/pages/{ => docs}/intro/vs/eureka.mdx (99%) rename website/pages/{ => docs}/intro/vs/index.mdx (98%) rename website/pages/{ => docs}/intro/vs/istio.mdx (99%) rename website/pages/{ => docs}/intro/vs/nagios-sensu.mdx (99%) rename website/pages/{ => docs}/intro/vs/proxies.mdx (99%) rename website/pages/{ => docs}/intro/vs/serf.mdx (99%) rename website/pages/{ => docs}/intro/vs/skydns.mdx (99%) rename website/pages/{ => docs}/intro/vs/smartstack.mdx (99%) rename website/pages/{ => docs}/intro/vs/zookeeper.mdx (99%) rename website/pages/docs/k8s/{ => installation}/helm.mdx (99%) rename website/pages/docs/k8s/{operations => }/tls-on-existing-cluster.mdx (96%) rename website/pages/docs/k8s/{operations/uninstalling.mdx => uninstall.mdx} (91%) rename website/pages/docs/k8s/{operations/upgrading.mdx => upgrade.mdx} (95%) rename website/pages/docs/{ => security}/acl/acl-legacy.mdx (100%) rename website/pages/docs/{ => security}/acl/acl-migrate-tokens.mdx (100%) rename website/pages/docs/{ => security}/acl/acl-rules.mdx (100%) rename website/pages/docs/{ => security}/acl/acl-system.mdx (99%) rename website/pages/docs/{ => security}/acl/auth-methods/index.mdx (100%) rename website/pages/docs/{ => security}/acl/auth-methods/jwt.mdx (100%) rename website/pages/docs/{ => security}/acl/auth-methods/kubernetes.mdx (100%) rename website/pages/docs/{ => security}/acl/auth-methods/oidc.mdx (100%) rename website/pages/docs/{ => security}/acl/index.mdx (100%) rename website/pages/docs/{agent => security}/encryption.mdx (100%) rename website/pages/docs/{internals/security.mdx => security/index.mdx} (99%) rename website/pages/docs/{ => troubleshoot}/common-errors.mdx (100%) rename website/pages/docs/{ => troubleshoot}/faq.mdx (100%) diff --git a/website/_redirects b/website/_redirects index c74519f83c..3a63ba913b 100644 --- a/website/_redirects +++ b/website/_redirects @@ -40,19 +40,172 @@ /docs/connect/terminating_gateway /docs/connect/gateways/terminating-gateway 301! /docs/connect/terminating_gateway.html /docs/connect/gateways/terminating-gateway 301! /docs/connect/terminating-gateway /docs/connect/gateways/terminating-gateway 301! +/docs/k8s/connect.html /docs/k8s/connect 301! +/docs/agent/cloud-auto-join /docs/install/cloud-auto-join 301! +/docs/internals/security /docs/security 301! +/docs/acl/ /docs/security/acl/ 301! +/docs/acl/acl-system /docs/security/acl/acl-system 301! +/docs/acl/acl-rules /docs/security/acl/acl-rules 301! +/docs/acl/acl-legacy /docs/security/acl/acl-legacy 301! +/docs/acl/acl-migrate-tokens /docs/security/acl/acl-migrate-tokens 301! +/docs/acl/auth-methods /docs/security/acl/auth-methods 301! +/docs/acl/auth-methods/kubernetes /docs/security/acl/auth-methods/kubernetes 301! +/docs/acl/auth-methods/jwt /docs/security/acl/auth-methods/jwt 301! +/docs/acl/auth-methods/oidc /docs/security/acl/auth-methods/oidc 301! +/docs/agent/kv /docs/dynamic-app-config/kv 301! +/docs/internals/sessions /docs/dynamic-app-config/sessions 301! +/docs/agent/watches /docs/dynamic-app-config/watches 301! +/docs/connect/l7-traffic-management /docs/connect/l7-traffic/ 301! +/docs/internals/discovery-chain /docs/connect/l7-traffic/discovery-chain 301! +/docs/k8s/operations/upgrading /docs/k8s/upgrade 301! +/docs/k8s/operations/uninstalling /docs/k8s/uninstall 301! +/docs/k8s/operations/tls-on-existing-cluster /docs/k8s/tls-on-existing-cluster 301! +/docs/k8s/helm /docs/k8s/installation/helm 301! +/docs/agent/services /docs/discovery/services 301! +/docs/agent/checks /docs/discovery/checks 301! +/docs/agent/dns /docs/discovery/dns 301! +/docs/agent/encryption /docs/security/encryption 301! +/docs/internals/architecture /docs/architecture 301! +/docs/internals/anti-entropy /docs/architecture/anti-entropy 301! +/docs/internals/consensus /docs/architecture/consensus 301! +/docs/internals/gossip /docs/architecture/gossip 301! +/docs/internals/jepsen /docs/internals/jepsen 301! +/docs/internals/coordinates /docs/architecture/coordinates 301! +/docs/glossary /docs/install/glossary 301! +/docs/connect/gateways/mesh-gateways /docs/connect/gateways/mesh-gateway 301! +/docs/connect/gateways/wan-federation-via-mesh-gateways /docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways 301! +/docs/faq /docs/troubleshoot/faq 301! +/docs/common-errors /docs/troubleshoot/common-errors 301! +/intro /docs/intro 301! +/intro/vs /docs/intro/vs 301! +/intro/vs/zookeeper /docs/intro/vs/zookeeper 301! +/intro/vs/chef-puppet /docs/intro/vs/chef-puppet 301! +/intro/vs/nagios-sensu /docs/intro/vs/nagios-sensu 301! +/intro/vs/skydns /docs/intro/vs/skydns 301! +/intro/vs/smartstack /docs/intro/vs/smartstack 301! +/intro/vs/serf /docs/intro/vs/serf 301! +/intro/vs/eureka /docs/intro/vs/eureka 301! +/intro/vs/istio /docs/intro/vs/istio 301! +/intro/vs/proxies /docs/intro/vs/proxies 301! +/intro/vs/custom /docs/intro/vs/custom 301! +/download-tools /docs/download-tools 301! + +# CLI redirects +/docs/commands /commands 301! +/docs/commands/acl /commands/acl 301! +/docs/commands/acl/auth-method /commands/acl/auth-method 301! +/docs/commands/acl/auth-method/create /commands/acl/auth-method/create 301! +/docs/commands/acl/auth-method/delete /commands/acl/auth-method/delete 301! +/docs/commands/acl/auth-method/list /commands/acl/auth-method/list 301! +/docs/commands/acl/auth-method/read /commands/acl/auth-method/read 301! +/docs/commands/acl/auth-method/update /commands/acl/auth-method/update 301! +/docs/commands/acl/binding-rule /commands/acl/binding-rule 301! +/docs/commands/acl/binding-rule/create /commands/acl/binding-rule/create 301! +/docs/commands/acl/binding-rule/delete /commands/acl/binding-rule/delete 301! +/docs/commands/acl/binding-rule/list /commands/acl/binding-rule/list 301! +/docs/commands/acl/binding-rule/read /commands/acl/binding-rule/read 301! +/docs/commands/acl/binding-rule/update /commands/acl/binding-rule/update 301! +/docs/commands/acl/bootstrap /commands/acl/bootstrap 301! +/docs/commands/acl/policy/ /commands/acl/policy 301! +/docs/commands/acl/policy/create /commands/acl/policy/create 301! +/docs/commands/acl/policy/delete /commands/acl/policy/delete 301! +/docs/commands/acl/policy/list /commands/acl/policy/list 301! +/docs/commands/acl/policy/read /commands/acl/policy/read 301! +/docs/commands/acl/policy/update /commands/acl/policy/update 301! +/docs/commands/acl/set-agent-token /commands/acl/set-agent-token 301! +/docs/commands/acl/token /commands/acl/token 301! +/docs/commands/acl/token/clone /commands/acl/token/clone 301! +/docs/commands/acl/token/create /commands/acl/token/create 301! +/docs/commands/acl/token/delete /commands/acl/token/delete 301! +/docs/commands/acl/token/list /commands/acl/token/list 301! +/docs/commands/acl/token/read /commands/acl/token/read 301! +/docs/commands/acl/token/update /commands/acl/token/update 301! +/docs/commands/acl/translate-rules /commands/acl/translate-rules 301! +/docs/commands/agent /commands/agent 301! +/docs/commands/catalog /commands/catalog 301! +/docs/commands/catalog/datacenters /commands/catalog/datacenters 301! +/docs/commands/catalog/nodes /commands/catalog/nodes 301! +/docs/commands/catalog/services /commands/catalog/services 301! +/docs/commands/config /commands/config 301! +/docs/commands/config/delete /commands/config/delete 301! +/docs/commands/config/list /commands/config/list 301! +/docs/commands/config/read /commands/config/read 301! +/docs/commands/config/write /commands/config/write 301! +/docs/commands/connect /commands/connect 301! +/docs/commands/connect/ca /commands/connect/ca 301! +/docs/commands/connect/proxy /commands/connect/proxy 301! +/docs/commands/connect/envoy /commands/connect/envoy 301! +/docs/commands/connect/expose /commands/connect/expose 301! +/docs/commands/debug /commands/debug 301! +/docs/commands/event /commands/event 301! +/docs/commands/exec /commands/exec 301! +/docs/commands/force-leave /commands/force-leave 301! +/docs/commands/info /commands/info 301! +/docs/commands/intention /commands/intention 301! +/docs/commands/intention/check /commands/intention/check 301! +/docs/commands/intention/create /commands/intention/create 301! +/docs/commands/intention/delete /commands/intention/delete 301! +/docs/commands/intention/get /commands/intention/get 301! +/docs/commands/intention/match /commands/intention/match 301! +/docs/commands/join /commands/join 301! +/docs/commands/keygen /commands/keygen 301! +/docs/commands/keyring /commands/keyring 301! +/docs/commands/kv /commands/kv 301! +/docs/commands/kv/delete /commands/kv/delete 301! +/docs/commands/kv/export /commands/kv/export 301! +/docs/commands/kv/get /commands/kv/get 301! +/docs/commands/kv/import /commands/kv/import 301! +/docs/commands/kv/put /commands/kv/put 301! +/docs/commands/leave /commands/leave 301! +/docs/commands/license /commands/license 301! +/docs/commands/lock /commands/lock 301! +/docs/commands/login /commands/login 301! +/docs/commands/logout /commands/logout 301! +/docs/commands/maint /commands/maint 301! +/docs/commands/members /commands/members 301! +/docs/commands/monitor /commands/monitor 301! +/docs/commands/namespace /commands/namespace 301! +/docs/commands/namespace/create /commands/namespace/create 301! +/docs/commands/namespace/delete /commands/namespace/delete 301! +/docs/commands/namespace/list /commands/namespace/list 301! +/docs/commands/namespace/read /commands/namespace/read 301! +/docs/commands/namespace/update /commands/namespace/update 301! +/docs/commands/namespace/write /commands/namespace/write 301! +/docs/commands/operator /commands/operator 301! +/docs/commands/operator/area /commands/operator/area 301! +/docs/commands/operator/autopilot /commands/operator/autopilot 301! +/docs/commands/operator/raft /commands/operator/raft 301! +/docs/commands/reload /commands/reload 301! +/docs/commands/rft /commands/rft 301! +/docs/commands/rtt /commands/rtt 301! +/docs/commands/services /commands/services 301! +/docs/commands/services/register /commands/services/register 301! +/docs/commands/services/deregister /commands/services/deregister 301! +/docs/commands/snapshot /commands/snapshot 301! +/docs/commands/snapshot/agent /commands/snapshot/agent 301! +/docs/commands/snapshot/inspect /commands/snapshot/inspect 301! +/docs/commands/snapshot/restore /commands/snapshot/restore 301! +/docs/commands/snapshot/save /commands/snapshot/save 301! +/docs/commands/tls /commands/tls 301! +/docs/commands/tls/ca /commands/tls/ca 301! +/docs/commands/tls/cert /commands/tls/cert 301! +/docs/commands/validate /commands/validate 301! +/docs/commands/version /commands/version 301! +/docs/commands/watch /commands/watch 301! +/commands/index /commands 301! # CLI renames -/docs/commands/acl/acl-bootstrap.html /docs/commands/acl/bootstrap.html 301! -/docs/commands/acl/acl-bootstrap /docs/commands/acl/bootstrap.html 301! -/docs/commands/acl/acl-policy.html /docs/commands/acl/policy.html 301! -/docs/commands/acl/acl-policy /docs/commands/acl/policy.html 301! -/docs/commands/acl/acl-set-agent-token.html /docs/commands/acl/set-agent-token.html 301! -/docs/commands/acl/acl-set-agent-token /docs/commands/acl/set-agent-token.html 301! -/docs/commands/acl/acl-token.html /docs/commands/acl/token.html 301! -/docs/commands/acl/acl-token /docs/commands/acl/token.html 301! -/docs/commands/acl/acl-translate-rules.html /docs/commands/acl/translate-rules.html 301! -/docs/commands/acl/acl-translate-rules /docs/commands/acl/translate-rules.html 301! +/docs/commands/acl/acl-bootstrap.html /commands/acl/bootstrap 301! +/docs/commands/acl/acl-bootstrap /commands/acl/bootstrap 301! +/docs/commands/acl/acl-policy.html /commands/acl/policy 301! +/docs/commands/acl/acl-policy /commands/acl/policy 301! +/docs/commands/acl/acl-set-agent-token.html /commands/acl/set-agent-token 301! +/docs/commands/acl/acl-set-agent-token /commands/acl/set-agent-token 301! +/docs/commands/acl/acl-token.html /commands/acl/token 301! +/docs/commands/acl/acl-token /commands/acl/token 301! +/docs/commands/acl/acl-translate-rules.html /commands/acl/translate-rules 301! +/docs/commands/acl/acl-translate-rules /commands/acl/translate-rules 301! # Consul Learn Redirects /docs/guides/acl.html https://learn.hashicorp.com/consul/security-networking/production-acls 301! diff --git a/website/components/learn-callout/style.css b/website/components/learn-callout/style.css index 6c78a75157..0ef9ae5b8e 100644 --- a/website/components/learn-callout/style.css +++ b/website/components/learn-callout/style.css @@ -1,10 +1,6 @@ .g-learn-callout { padding-top: 88px; padding-bottom: 88px; - background-image: url(/img/nomad-panel-learn.svg); - background-size: contain; - background-position: bottom right; - background-repeat: no-repeat; @media (max-width: 768px) { padding-top: 64px; diff --git a/website/data/commands-navigation.js b/website/data/commands-navigation.js new file mode 100644 index 0000000000..57ed8427f6 --- /dev/null +++ b/website/data/commands-navigation.js @@ -0,0 +1,78 @@ +export default [ + 'index', + { + category: 'acl', + content: [ + { + category: 'auth-method', + content: ['create', 'delete', 'list', 'read', 'update'], + }, + { + category: 'binding-rule', + content: ['create', 'delete', 'list', 'read', 'update'], + }, + 'bootstrap', + { + category: 'policy', + content: ['create', 'delete', 'list', 'read', 'update'], + }, + { + category: 'role', + content: ['create', 'delete', 'list', 'read', 'update'], + }, + 'set-agent-token', + { + category: 'token', + content: ['clone', 'create', 'delete', 'list', 'read', 'update'], + }, + 'translate-rules', + ], + }, + 'agent', + { category: 'catalog', content: ['datacenters', 'nodes', 'services'] }, + { category: 'config', content: ['delete', 'list', 'read', 'write'] }, + { category: 'connect', content: ['ca', 'proxy', 'envoy', 'expose'] }, + 'debug', + 'event', + 'exec', + 'force-leave', + 'info', + { + category: 'intention', + content: ['check', 'create', 'delete', 'get', 'match'], + }, + 'join', + 'keygen', + 'keyring', + { + category: 'kv', + content: ['delete', 'export', 'get', 'import', 'put'], + }, + 'leave', + 'license', + 'lock', + 'login', + 'logout', + 'maint', + 'members', + 'monitor', + { + category: 'namespace', + content: ['create', 'delete', 'list', 'read', 'update', 'write'], + }, + { + category: 'operator', + content: ['area', 'autopilot', 'raft'], + }, + 'reload', + 'rtt', + { category: 'services', content: ['register', 'deregister'] }, + { + category: 'snapshot', + content: ['agent', 'inspect', 'restore', 'save'], + }, + { category: 'tls', content: ['ca', 'cert'] }, + 'validate', + 'version', + 'watch', +] diff --git a/website/data/docs-navigation.js b/website/data/docs-navigation.js index 3038406c6c..8fd74023b3 100644 --- a/website/data/docs-navigation.js +++ b/website/data/docs-navigation.js @@ -7,178 +7,85 @@ // serve as the category title in the sidebar export default [ - { category: 'install', content: ['ports', 'bootstrapping', 'performance'] }, { - category: 'upgrading', - content: ['compatibility', 'upgrade-specific'], - }, - 'glossary', - { - category: 'internals', - content: [ - 'architecture', - 'consensus', - 'gossip', - 'coordinates', - 'sessions', - 'anti-entropy', - 'security', - 'jepsen', - 'discovery-chain', - ], - }, - { - category: 'commands', + category: 'intro', content: [ { - category: 'acl', + category: 'vs', content: [ - { - category: 'auth-method', - content: ['create', 'delete', 'list', 'read', 'update'], - }, - { - category: 'binding-rule', - content: ['create', 'delete', 'list', 'read', 'update'], - }, - 'bootstrap', - { - category: 'policy', - content: ['create', 'delete', 'list', 'read', 'update'], - }, - { - category: 'role', - content: ['create', 'delete', 'list', 'read', 'update'], - }, - 'set-agent-token', - { - category: 'token', - content: ['clone', 'create', 'delete', 'list', 'read', 'update'], - }, - 'translate-rules', + 'zookeeper', + 'chef-puppet', + 'nagios-sensu', + 'skydns', + 'smartstack', + 'serf', + 'eureka', + 'istio', + 'proxies', + 'custom', ], }, - 'agent', - { category: 'catalog', content: ['datacenters', 'nodes', 'services'] }, - { category: 'config', content: ['delete', 'list', 'read', 'write'] }, - { category: 'connect', content: ['ca', 'proxy', 'envoy', 'expose'] }, - 'debug', - 'event', - 'exec', - 'force-leave', - 'info', - { - category: 'intention', - content: ['check', 'create', 'delete', 'get', 'match'], - }, - 'join', - 'keygen', - 'keyring', - { - category: 'kv', - content: ['delete', 'export', 'get', 'import', 'put'], - }, - 'leave', - 'license', - 'lock', - 'login', - 'logout', - 'maint', - 'members', - 'monitor', - { - category: 'namespace', - content: ['create', 'delete', 'list', 'read', 'update', 'write'], - }, - { - category: 'operator', - content: ['area', 'autopilot', 'raft'], - }, - 'reload', - 'rtt', - { category: 'services', content: ['register', 'deregister'] }, - { - category: 'snapshot', - content: ['agent', 'inspect', 'restore', 'save'], - }, - { category: 'tls', content: ['ca', 'cert'] }, - 'validate', - 'version', - 'watch', ], }, + { - category: 'agent', + category: 'install', content: [ - 'dns', - 'options', - { - category: 'config-entries', - content: [ - 'ingress-gateway', - 'proxy-defaults', - 'service-defaults', - 'service-resolver', - 'service-router', - 'service-splitter', - 'terminating-gateway', - ], - }, + { title: 'Consul Agent', href: '/docs/agent' }, + 'glossary', + 'ports', + 'bootstrapping', 'cloud-auto-join', - 'services', - 'checks', - 'kv', - 'sentinel', - 'encryption', - 'telemetry', - 'watches', + 'performance', + { title: 'Kubernetes', href: '/docs/k8s' }, ], }, { - category: 'acl', - content: [ - 'acl-system', - 'acl-rules', - 'acl-legacy', - 'acl-migrate-tokens', - { category: 'auth-methods', content: ['kubernetes', 'jwt', 'oidc'] }, - ], + category: 'discovery', + name: 'Service Discovery', + content: ['services', 'dns', 'checks'], }, + { category: 'connect', content: [ - 'configuration', - 'connectivity-tasks', 'connect-internals', - 'observability', - 'l7-traffic-management', - 'intentions', + 'configuration', { category: 'proxies', content: ['envoy', 'built-in', 'integrate'], }, + { + category: 'registration', + content: ['service-registration', 'sidecar-service'], + }, + 'intentions', + 'observability', + { + category: 'l7-traffic', + content: ['discovery-chain'], + }, + 'connectivity-tasks', { category: 'gateways', content: [ - 'mesh-gateway', - 'wan-federation-via-mesh-gateways', + { + category: 'mesh-gateway', + content: ['wan-federation-via-mesh-gateways'], + }, + 'ingress-gateway', 'terminating-gateway', ], }, - { - category: 'registration', - content: ['service-registration', 'sidecar-service'], - }, - 'security', + 'nomad', + { title: 'Kubernetes', href: '/docs/k8s/connect' }, + { category: 'native', content: ['go'] }, { category: 'ca', content: ['consul', 'vault', 'aws'], }, - { category: 'native', content: ['go'] }, 'dev', - 'nomad', - { title: 'Kubernetes', href: '/docs/k8s/connect' }, ], }, { @@ -187,6 +94,7 @@ export default [ { category: 'installation', content: [ + 'helm', { category: 'platforms', name: 'Platform Guides', @@ -229,11 +137,7 @@ export default [ }, ], }, - { - category: 'operations', - name: 'Operations', - content: ['upgrading', 'tls-on-existing-cluster', 'uninstalling'], - }, + 'tls-on-existing-cluster', { category: 'connect', content: [ @@ -245,14 +149,50 @@ export default [ 'service-sync', 'dns', 'ambassador', - 'helm', + 'upgrade', + 'uninstall', + ], + }, + { + category: 'dynamic-app-config', + name: 'Dynamic App Configuration', + content: ['kv', 'sessions', 'watches'], + }, + { + category: 'agent', + content: [ + 'options', + { + category: 'config-entries', + content: [ + 'ingress-gateway', + 'proxy-defaults', + 'service-defaults', + 'service-resolver', + 'service-router', + 'service-splitter', + 'terminating-gateway', + ], + }, + 'telemetry', + ], + }, + { + category: 'security', + content: [ + { + category: 'acl', + content: [ + 'acl-system', + 'acl-rules', + 'acl-legacy', + 'acl-migrate-tokens', + { category: 'auth-methods', content: ['kubernetes', 'jwt', 'oidc'] }, + ], + }, + 'encryption', ], }, - '-------', - 'common-errors', - 'faq', - '--------', - 'partnerships', { category: 'enterprise', content: [ @@ -260,11 +200,30 @@ export default [ 'backups', 'upgrades', 'read-scale', + { + title: 'Single sign-on - OIDC', + href: '/docs/security/acl/auth-methods/oidc', + }, 'redundancy', 'federation', - 'network-segments', 'namespaces', + 'network-segments', 'sentinel', ], }, + { + category: 'architecture', + content: ['anti-entropy', 'consensus', 'gossip', 'jepsen', 'coordinates'], + }, + 'partnerships', + 'download-tools', + { + category: 'upgrading', + content: ['compatibility', 'upgrade-specific'], + }, + { + category: 'troubleshoot', + name: 'Troubleshoot', + content: ['common-errors', 'faq'], + }, ] diff --git a/website/data/intro-navigation.js b/website/data/intro-navigation.js index c97176b0a7..761c488cf1 100644 --- a/website/data/intro-navigation.js +++ b/website/data/intro-navigation.js @@ -6,22 +6,4 @@ // the landing page for the category, or a "name" property to // serve as the category title in the sidebar -export default [ - 'index', - { - category: 'vs', - content: [ - 'zookeeper', - 'chef-puppet', - 'nagios-sensu', - 'skydns', - 'smartstack', - 'serf', - 'eureka', - 'istio', - 'proxies', - 'custom', - ], - }, - 'getting-started', -] +export default ['getting-started'] diff --git a/website/data/subnav.js b/website/data/subnav.js index 51fda8dec4..1c3b5de40d 100644 --- a/website/data/subnav.js +++ b/website/data/subnav.js @@ -1,5 +1,5 @@ export default [ - { text: 'Overview', url: '/intro' }, + { text: 'Overview', url: '/docs/intro' }, { text: 'Use Cases', submenu: [ @@ -39,6 +39,11 @@ export default [ url: '/api-docs', type: 'inbound', }, + { + text: 'CLI', + url: '/commands', + type: 'inbound,' + }, { text: 'Community', url: '/community', diff --git a/website/layouts/commands.jsx b/website/layouts/commands.jsx new file mode 100644 index 0000000000..eaf370a717 --- /dev/null +++ b/website/layouts/commands.jsx @@ -0,0 +1,41 @@ +import DocsPage from '@hashicorp/react-docs-page' +import order from '../data/commands-navigation.js' +import { frontMatter as data } from '../pages/commands/**/*.mdx' +import Head from 'next/head' +import Link from 'next/link' +import { createMdxProvider } from '@hashicorp/nextjs-scripts/lib/providers/docs' + +const MDXProvider = createMdxProvider({ product: 'consul' }) + +function CommandsLayoutWrapper(pageMeta) { + function CommandsLayout(props) { + return ( + + + + ) + } + + CommandsLayout.getInitialProps = ({ asPath }) => ({ path: asPath }) + + return CommandsLayout +} + +export default CommandsLayoutWrapper diff --git a/website/package.json b/website/package.json index 931c00d250..1079ffef51 100644 --- a/website/package.json +++ b/website/package.json @@ -56,9 +56,9 @@ }, "main": "index.js", "scripts": { - "build": "node --max-old-space-size=2048 ./node_modules/.bin/next build", + "build": "node --max-old-space-size=4096 ./node_modules/.bin/next build", "dynamic": "NODE_ENV=production next build && next start", - "export": "node --max-old-space-size=2048 ./node_modules/.bin/next export", + "export": "node --max-old-space-size=4096 ./node_modules/.bin/next export", "format": "next-hashicorp format", "generate:component": "next-hashicorp generate component", "generate:readme": "next-hashicorp markdown-blocks README.md", diff --git a/website/pages/api-docs/acl/auth-methods.mdx b/website/pages/api-docs/acl/auth-methods.mdx index effc2de194..ef4dcad934 100644 --- a/website/pages/api-docs/acl/auth-methods.mdx +++ b/website/pages/api-docs/acl/auth-methods.mdx @@ -53,7 +53,7 @@ The table below shows this endpoint's support for - `MaxTokenTTL` `(duration: 0s)` - This specifies the maximum life of any token created by this auth method. When set it will initialize the - [`ExpirationTime`](/api/acl/tokens.html#expirationtime) field on all tokens + [`ExpirationTime`](/api/acl/tokens#expirationtime) field on all tokens to a value of `Token.CreateTime + AuthMethod.MaxTokenTTL`. This field is not persisted beyond its initial use. Can be specified in the form of `"60s"` or `"5m"` (i.e., 60 seconds or 5 minutes, respectively). This value must be no @@ -232,7 +232,7 @@ The table below shows this endpoint's support for - `MaxTokenTTL` `(duration: 0s)` - This specifies the maximum life of any token created by this auth method. When set it will initialize the - [`ExpirationTime`](/api/acl/tokens.html#expirationtime) field on all tokens + [`ExpirationTime`](/api/acl/tokens#expirationtime) field on all tokens to a value of `Token.CreateTime + AuthMethod.MaxTokenTTL`. This field is not persisted beyond its initial use. Can be specified in the form of `"60s"` or `"5m"` (i.e., 60 seconds or 5 minutes, respectively). This value must be no diff --git a/website/pages/api-docs/acl/index.mdx b/website/pages/api-docs/acl/index.mdx index 57010d52fb..d4cc06e750 100644 --- a/website/pages/api-docs/acl/index.mdx +++ b/website/pages/api-docs/acl/index.mdx @@ -165,7 +165,7 @@ $ curl \ - `ReplicatedTokenIndex` - The last token index that was successfully replicated. This index can be compared with the value of the `X-Consul-Index` header returned - by the [`/v1/acl/tokens`](/api/acl/tokens#list-acls) endpoint to determine + by the [`/v1/acl/tokens`](/api/acl/tokens#list-tokens) endpoint to determine if the replication process has gotten all available ACL tokens. Note that ACL replication is rate limited so the indexes may lag behind the primary datacenter. diff --git a/website/pages/docs/commands/acl/auth-method/create.mdx b/website/pages/commands/acl/auth-method/create.mdx similarity index 99% rename from website/pages/docs/commands/acl/auth-method/create.mdx rename to website/pages/commands/acl/auth-method/create.mdx index 23aaa52442..e685c0684a 100644 --- a/website/pages/docs/commands/acl/auth-method/create.mdx +++ b/website/pages/commands/acl/auth-method/create.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Auth Method Create' sidebar_title: create --- diff --git a/website/pages/docs/commands/acl/auth-method/delete.mdx b/website/pages/commands/acl/auth-method/delete.mdx similarity index 97% rename from website/pages/docs/commands/acl/auth-method/delete.mdx rename to website/pages/commands/acl/auth-method/delete.mdx index a4de93e921..3a25521e88 100644 --- a/website/pages/docs/commands/acl/auth-method/delete.mdx +++ b/website/pages/commands/acl/auth-method/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Auth Method Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/acl/auth-method/index.mdx b/website/pages/commands/acl/auth-method/index.mdx similarity index 99% rename from website/pages/docs/commands/acl/auth-method/index.mdx rename to website/pages/commands/acl/auth-method/index.mdx index 05431814fd..bd1b8aa323 100644 --- a/website/pages/docs/commands/acl/auth-method/index.mdx +++ b/website/pages/commands/acl/auth-method/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Auth Methods' sidebar_title: auth-method --- diff --git a/website/pages/docs/commands/acl/auth-method/list.mdx b/website/pages/commands/acl/auth-method/list.mdx similarity index 98% rename from website/pages/docs/commands/acl/auth-method/list.mdx rename to website/pages/commands/acl/auth-method/list.mdx index fd15ce18f5..933b9c1875 100644 --- a/website/pages/docs/commands/acl/auth-method/list.mdx +++ b/website/pages/commands/acl/auth-method/list.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Auth Method List' sidebar_title: list --- diff --git a/website/pages/docs/commands/acl/auth-method/read.mdx b/website/pages/commands/acl/auth-method/read.mdx similarity index 98% rename from website/pages/docs/commands/acl/auth-method/read.mdx rename to website/pages/commands/acl/auth-method/read.mdx index 14442da664..20ed1f5264 100644 --- a/website/pages/docs/commands/acl/auth-method/read.mdx +++ b/website/pages/commands/acl/auth-method/read.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Auth Method Read' sidebar_title: read --- diff --git a/website/pages/docs/commands/acl/auth-method/update.mdx b/website/pages/commands/acl/auth-method/update.mdx similarity index 99% rename from website/pages/docs/commands/acl/auth-method/update.mdx rename to website/pages/commands/acl/auth-method/update.mdx index d1017b1602..c403c583ef 100644 --- a/website/pages/docs/commands/acl/auth-method/update.mdx +++ b/website/pages/commands/acl/auth-method/update.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Auth Method Update' sidebar_title: update --- diff --git a/website/pages/docs/commands/acl/binding-rule/create.mdx b/website/pages/commands/acl/binding-rule/create.mdx similarity index 99% rename from website/pages/docs/commands/acl/binding-rule/create.mdx rename to website/pages/commands/acl/binding-rule/create.mdx index 6324d30423..d4bfef9aaf 100644 --- a/website/pages/docs/commands/acl/binding-rule/create.mdx +++ b/website/pages/commands/acl/binding-rule/create.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Binding Rule Create' sidebar_title: create --- diff --git a/website/pages/docs/commands/acl/binding-rule/delete.mdx b/website/pages/commands/acl/binding-rule/delete.mdx similarity index 97% rename from website/pages/docs/commands/acl/binding-rule/delete.mdx rename to website/pages/commands/acl/binding-rule/delete.mdx index e95ef986ba..01d9efb32c 100644 --- a/website/pages/docs/commands/acl/binding-rule/delete.mdx +++ b/website/pages/commands/acl/binding-rule/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Binding Rule Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/acl/binding-rule/index.mdx b/website/pages/commands/acl/binding-rule/index.mdx similarity index 99% rename from website/pages/docs/commands/acl/binding-rule/index.mdx rename to website/pages/commands/acl/binding-rule/index.mdx index bd12614808..0c24bb8196 100644 --- a/website/pages/docs/commands/acl/binding-rule/index.mdx +++ b/website/pages/commands/acl/binding-rule/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Binding Rule' sidebar_title: binding-rule --- diff --git a/website/pages/docs/commands/acl/binding-rule/list.mdx b/website/pages/commands/acl/binding-rule/list.mdx similarity index 99% rename from website/pages/docs/commands/acl/binding-rule/list.mdx rename to website/pages/commands/acl/binding-rule/list.mdx index 97fd981888..418e4a685c 100644 --- a/website/pages/docs/commands/acl/binding-rule/list.mdx +++ b/website/pages/commands/acl/binding-rule/list.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Binding Rule List' sidebar_title: list --- diff --git a/website/pages/docs/commands/acl/binding-rule/read.mdx b/website/pages/commands/acl/binding-rule/read.mdx similarity index 98% rename from website/pages/docs/commands/acl/binding-rule/read.mdx rename to website/pages/commands/acl/binding-rule/read.mdx index ec1c06bbc9..dbafa02ed0 100644 --- a/website/pages/docs/commands/acl/binding-rule/read.mdx +++ b/website/pages/commands/acl/binding-rule/read.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Binding Rule Read' sidebar_title: read --- diff --git a/website/pages/docs/commands/acl/binding-rule/update.mdx b/website/pages/commands/acl/binding-rule/update.mdx similarity index 99% rename from website/pages/docs/commands/acl/binding-rule/update.mdx rename to website/pages/commands/acl/binding-rule/update.mdx index 9b63735c34..78346fbc28 100644 --- a/website/pages/docs/commands/acl/binding-rule/update.mdx +++ b/website/pages/commands/acl/binding-rule/update.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Binding Rule Update' sidebar_title: update --- diff --git a/website/pages/docs/commands/acl/bootstrap.mdx b/website/pages/commands/acl/bootstrap.mdx similarity index 86% rename from website/pages/docs/commands/acl/bootstrap.mdx rename to website/pages/commands/acl/bootstrap.mdx index eea0d244b9..3e34bc798e 100644 --- a/website/pages/docs/commands/acl/bootstrap.mdx +++ b/website/pages/commands/acl/bootstrap.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Bootstrap' sidebar_title: bootstrap --- @@ -11,7 +11,7 @@ Command: `consul acl bootstrap` The `acl bootstrap` command will request Consul to generate a new token with unlimited privileges to use for management purposes and output its details. This can only be done once and afterwards bootstrapping will be disabled. If all tokens are lost and you need to bootstrap again you can follow the bootstrap -[reset procedure](https://learn.hashicorp.com/tutorials/consul/access-control-troubleshoot?utm_source=consul.io&utm_medium=docs#reset-the-acl-system). +[reset procedure](https://learn.hashicorp.com/consul/security-networking/acl-troubleshooting?utm_source=consul.io&utm_medium=docs#reset-the-acl-system). The ACL system can also be bootstrapped via the [HTTP API](/api/acl/acl#bootstrap-acls). diff --git a/website/pages/docs/commands/acl/index.mdx b/website/pages/commands/acl/index.mdx similarity index 99% rename from website/pages/docs/commands/acl/index.mdx rename to website/pages/commands/acl/index.mdx index c9d319bf19..901c2a2fde 100644 --- a/website/pages/docs/commands/acl/index.mdx +++ b/website/pages/commands/acl/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL' sidebar_title: acl --- diff --git a/website/pages/docs/commands/acl/policy/create.mdx b/website/pages/commands/acl/policy/create.mdx similarity index 99% rename from website/pages/docs/commands/acl/policy/create.mdx rename to website/pages/commands/acl/policy/create.mdx index 58a3309c7b..2a26492429 100644 --- a/website/pages/docs/commands/acl/policy/create.mdx +++ b/website/pages/commands/acl/policy/create.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Policy Create' sidebar_title: create --- diff --git a/website/pages/docs/commands/acl/policy/delete.mdx b/website/pages/commands/acl/policy/delete.mdx similarity index 98% rename from website/pages/docs/commands/acl/policy/delete.mdx rename to website/pages/commands/acl/policy/delete.mdx index 8c6af9644e..039f87d52e 100644 --- a/website/pages/docs/commands/acl/policy/delete.mdx +++ b/website/pages/commands/acl/policy/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Policy Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/acl/policy/index.mdx b/website/pages/commands/acl/policy/index.mdx similarity index 99% rename from website/pages/docs/commands/acl/policy/index.mdx rename to website/pages/commands/acl/policy/index.mdx index 2acf08d24e..e153e21047 100644 --- a/website/pages/docs/commands/acl/policy/index.mdx +++ b/website/pages/commands/acl/policy/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Policy' sidebar_title: policy --- diff --git a/website/pages/docs/commands/acl/policy/list.mdx b/website/pages/commands/acl/policy/list.mdx similarity index 99% rename from website/pages/docs/commands/acl/policy/list.mdx rename to website/pages/commands/acl/policy/list.mdx index c29d2c1257..d1da9799af 100644 --- a/website/pages/docs/commands/acl/policy/list.mdx +++ b/website/pages/commands/acl/policy/list.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Policy List' sidebar_title: list --- diff --git a/website/pages/docs/commands/acl/policy/read.mdx b/website/pages/commands/acl/policy/read.mdx similarity index 99% rename from website/pages/docs/commands/acl/policy/read.mdx rename to website/pages/commands/acl/policy/read.mdx index 75eedb0629..cc5243b3c6 100644 --- a/website/pages/docs/commands/acl/policy/read.mdx +++ b/website/pages/commands/acl/policy/read.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Policy Read' sidebar_title: read --- diff --git a/website/pages/docs/commands/acl/policy/update.mdx b/website/pages/commands/acl/policy/update.mdx similarity index 99% rename from website/pages/docs/commands/acl/policy/update.mdx rename to website/pages/commands/acl/policy/update.mdx index 5b1e9e945c..a517e06389 100644 --- a/website/pages/docs/commands/acl/policy/update.mdx +++ b/website/pages/commands/acl/policy/update.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Policy Update' sidebar_title: update --- diff --git a/website/pages/docs/commands/acl/role/create.mdx b/website/pages/commands/acl/role/create.mdx similarity index 99% rename from website/pages/docs/commands/acl/role/create.mdx rename to website/pages/commands/acl/role/create.mdx index 9124510d87..28cdc167f5 100644 --- a/website/pages/docs/commands/acl/role/create.mdx +++ b/website/pages/commands/acl/role/create.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Role Create' sidebar_title: create --- diff --git a/website/pages/docs/commands/acl/role/delete.mdx b/website/pages/commands/acl/role/delete.mdx similarity index 98% rename from website/pages/docs/commands/acl/role/delete.mdx rename to website/pages/commands/acl/role/delete.mdx index 0e80cc6935..e46258b509 100644 --- a/website/pages/docs/commands/acl/role/delete.mdx +++ b/website/pages/commands/acl/role/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Role Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/acl/role/index.mdx b/website/pages/commands/acl/role/index.mdx similarity index 99% rename from website/pages/docs/commands/acl/role/index.mdx rename to website/pages/commands/acl/role/index.mdx index ffa42155f4..238202ddab 100644 --- a/website/pages/docs/commands/acl/role/index.mdx +++ b/website/pages/commands/acl/role/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Role' sidebar_title: role --- diff --git a/website/pages/docs/commands/acl/role/list.mdx b/website/pages/commands/acl/role/list.mdx similarity index 99% rename from website/pages/docs/commands/acl/role/list.mdx rename to website/pages/commands/acl/role/list.mdx index b3dddc6339..ddfc0ac213 100644 --- a/website/pages/docs/commands/acl/role/list.mdx +++ b/website/pages/commands/acl/role/list.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Role List' sidebar_title: list --- diff --git a/website/pages/docs/commands/acl/role/read.mdx b/website/pages/commands/acl/role/read.mdx similarity index 98% rename from website/pages/docs/commands/acl/role/read.mdx rename to website/pages/commands/acl/role/read.mdx index b6c625c37d..d9002e1221 100644 --- a/website/pages/docs/commands/acl/role/read.mdx +++ b/website/pages/commands/acl/role/read.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Role Read' sidebar_title: read --- diff --git a/website/pages/docs/commands/acl/role/update.mdx b/website/pages/commands/acl/role/update.mdx similarity index 99% rename from website/pages/docs/commands/acl/role/update.mdx rename to website/pages/commands/acl/role/update.mdx index b40b93c5ba..c59dc15445 100644 --- a/website/pages/docs/commands/acl/role/update.mdx +++ b/website/pages/commands/acl/role/update.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Role Update' sidebar_title: update --- diff --git a/website/pages/docs/commands/acl/set-agent-token.mdx b/website/pages/commands/acl/set-agent-token.mdx similarity index 98% rename from website/pages/docs/commands/acl/set-agent-token.mdx rename to website/pages/commands/acl/set-agent-token.mdx index bc6967adbe..cb07fda30e 100644 --- a/website/pages/docs/commands/acl/set-agent-token.mdx +++ b/website/pages/commands/acl/set-agent-token.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Set Agent Token' sidebar_title: set-agent-token --- diff --git a/website/pages/docs/commands/acl/token/clone.mdx b/website/pages/commands/acl/token/clone.mdx similarity index 98% rename from website/pages/docs/commands/acl/token/clone.mdx rename to website/pages/commands/acl/token/clone.mdx index 4841d3aecf..88397a3002 100644 --- a/website/pages/docs/commands/acl/token/clone.mdx +++ b/website/pages/commands/acl/token/clone.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Token Clone' sidebar_title: clone --- diff --git a/website/pages/docs/commands/acl/token/create.mdx b/website/pages/commands/acl/token/create.mdx similarity index 99% rename from website/pages/docs/commands/acl/token/create.mdx rename to website/pages/commands/acl/token/create.mdx index a2533787ea..70999b2aab 100644 --- a/website/pages/docs/commands/acl/token/create.mdx +++ b/website/pages/commands/acl/token/create.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Token Create' sidebar_title: create --- diff --git a/website/pages/docs/commands/acl/token/delete.mdx b/website/pages/commands/acl/token/delete.mdx similarity index 97% rename from website/pages/docs/commands/acl/token/delete.mdx rename to website/pages/commands/acl/token/delete.mdx index 4e7f55b241..9772cc8b23 100644 --- a/website/pages/docs/commands/acl/token/delete.mdx +++ b/website/pages/commands/acl/token/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Token Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/acl/token/index.mdx b/website/pages/commands/acl/token/index.mdx similarity index 99% rename from website/pages/docs/commands/acl/token/index.mdx rename to website/pages/commands/acl/token/index.mdx index a7dd826283..2c28c1ab14 100644 --- a/website/pages/docs/commands/acl/token/index.mdx +++ b/website/pages/commands/acl/token/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Token' sidebar_title: token --- diff --git a/website/pages/docs/commands/acl/token/list.mdx b/website/pages/commands/acl/token/list.mdx similarity index 99% rename from website/pages/docs/commands/acl/token/list.mdx rename to website/pages/commands/acl/token/list.mdx index dd4a41eadb..a43ac075b9 100644 --- a/website/pages/docs/commands/acl/token/list.mdx +++ b/website/pages/commands/acl/token/list.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Token List' sidebar_title: list --- diff --git a/website/pages/docs/commands/acl/token/read.mdx b/website/pages/commands/acl/token/read.mdx similarity index 99% rename from website/pages/docs/commands/acl/token/read.mdx rename to website/pages/commands/acl/token/read.mdx index c31b3a9414..4cfa070218 100644 --- a/website/pages/docs/commands/acl/token/read.mdx +++ b/website/pages/commands/acl/token/read.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Token Read' sidebar_title: read --- diff --git a/website/pages/docs/commands/acl/token/update.mdx b/website/pages/commands/acl/token/update.mdx similarity index 96% rename from website/pages/docs/commands/acl/token/update.mdx rename to website/pages/commands/acl/token/update.mdx index c429d091e7..db48904b3b 100644 --- a/website/pages/docs/commands/acl/token/update.mdx +++ b/website/pages/commands/acl/token/update.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Token Update' sidebar_title: update --- @@ -56,8 +56,8 @@ Usage: `consul acl token update [options]` specified grant equivalent or appropriate access for the existing clients using this token. You can find examples on how to use the parameter in the [legacy token -migration](https://learn.hashicorp.com/tutorials/consul/access-control-token-migration) -tutorial. +migration](https://learn.hashicorp.com/consul/day-2-agent-authentication/migrate-acl-tokens) +guide. - `-format={pretty|json}` - Command output format. The default value is `pretty`. diff --git a/website/pages/docs/commands/acl/translate-rules.mdx b/website/pages/commands/acl/translate-rules.mdx similarity index 99% rename from website/pages/docs/commands/acl/translate-rules.mdx rename to website/pages/commands/acl/translate-rules.mdx index 3aea79adc7..01192a2b18 100644 --- a/website/pages/docs/commands/acl/translate-rules.mdx +++ b/website/pages/commands/acl/translate-rules.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: ACL Translate Rules' sidebar_title: translate-rules --- diff --git a/website/pages/docs/commands/agent.mdx b/website/pages/commands/agent.mdx similarity index 97% rename from website/pages/docs/commands/agent.mdx rename to website/pages/commands/agent.mdx index 90458ff7cd..3cf0123a91 100644 --- a/website/pages/docs/commands/agent.mdx +++ b/website/pages/commands/agent.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Agent' sidebar_title: agent description: >- diff --git a/website/pages/docs/commands/catalog/datacenters.mdx b/website/pages/commands/catalog/datacenters.mdx similarity index 96% rename from website/pages/docs/commands/catalog/datacenters.mdx rename to website/pages/commands/catalog/datacenters.mdx index ef24666524..1d2cd5a6d4 100644 --- a/website/pages/docs/commands/catalog/datacenters.mdx +++ b/website/pages/commands/catalog/datacenters.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Catalog List Datacenters' sidebar_title: datacenters --- diff --git a/website/pages/docs/commands/catalog/index.mdx b/website/pages/commands/catalog/index.mdx similarity index 99% rename from website/pages/docs/commands/catalog/index.mdx rename to website/pages/commands/catalog/index.mdx index a6e83c395d..925d3211ef 100644 --- a/website/pages/docs/commands/catalog/index.mdx +++ b/website/pages/commands/catalog/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Catalog' sidebar_title: catalog --- diff --git a/website/pages/docs/commands/catalog/nodes.mdx b/website/pages/commands/catalog/nodes.mdx similarity index 99% rename from website/pages/docs/commands/catalog/nodes.mdx rename to website/pages/commands/catalog/nodes.mdx index 55044ce379..f07ddab288 100644 --- a/website/pages/docs/commands/catalog/nodes.mdx +++ b/website/pages/commands/catalog/nodes.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Catalog List Nodes' sidebar_title: nodes --- diff --git a/website/pages/docs/commands/catalog/services.mdx b/website/pages/commands/catalog/services.mdx similarity index 98% rename from website/pages/docs/commands/catalog/services.mdx rename to website/pages/commands/catalog/services.mdx index 4173b802bc..ca2192080c 100644 --- a/website/pages/docs/commands/catalog/services.mdx +++ b/website/pages/commands/catalog/services.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Catalog List Services' sidebar_title: services --- diff --git a/website/pages/docs/commands/config/delete.mdx b/website/pages/commands/config/delete.mdx similarity index 97% rename from website/pages/docs/commands/config/delete.mdx rename to website/pages/commands/config/delete.mdx index 442c511fa4..c897d0340d 100644 --- a/website/pages/docs/commands/config/delete.mdx +++ b/website/pages/commands/config/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Config Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/config/index.mdx b/website/pages/commands/config/index.mdx similarity index 98% rename from website/pages/docs/commands/config/index.mdx rename to website/pages/commands/config/index.mdx index 4a39604704..6abbc1ceb9 100644 --- a/website/pages/docs/commands/config/index.mdx +++ b/website/pages/commands/config/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Config' sidebar_title: config --- diff --git a/website/pages/docs/commands/config/list.mdx b/website/pages/commands/config/list.mdx similarity index 97% rename from website/pages/docs/commands/config/list.mdx rename to website/pages/commands/config/list.mdx index 3378dc0518..77670ff567 100644 --- a/website/pages/docs/commands/config/list.mdx +++ b/website/pages/commands/config/list.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Config List' sidebar_title: list --- diff --git a/website/pages/docs/commands/config/read.mdx b/website/pages/commands/config/read.mdx similarity index 98% rename from website/pages/docs/commands/config/read.mdx rename to website/pages/commands/config/read.mdx index 19b1a656bc..a36c599048 100644 --- a/website/pages/docs/commands/config/read.mdx +++ b/website/pages/commands/config/read.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Config Read' sidebar_title: read --- diff --git a/website/pages/docs/commands/config/write.mdx b/website/pages/commands/config/write.mdx similarity index 99% rename from website/pages/docs/commands/config/write.mdx rename to website/pages/commands/config/write.mdx index bf4a91544b..034bd75ddd 100644 --- a/website/pages/docs/commands/config/write.mdx +++ b/website/pages/commands/config/write.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Config Write' sidebar_title: write --- diff --git a/website/pages/docs/commands/connect/ca.mdx b/website/pages/commands/connect/ca.mdx similarity index 99% rename from website/pages/docs/commands/connect/ca.mdx rename to website/pages/commands/connect/ca.mdx index 412c10b88e..8d82466841 100644 --- a/website/pages/docs/commands/connect/ca.mdx +++ b/website/pages/commands/connect/ca.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Connect CA' sidebar_title: ca description: > diff --git a/website/pages/docs/commands/connect/envoy.mdx b/website/pages/commands/connect/envoy.mdx similarity index 99% rename from website/pages/docs/commands/connect/envoy.mdx rename to website/pages/commands/connect/envoy.mdx index 142765ac03..700f06ded8 100644 --- a/website/pages/docs/commands/connect/envoy.mdx +++ b/website/pages/commands/connect/envoy.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Connect Proxy' sidebar_title: envoy description: > diff --git a/website/pages/docs/commands/connect/expose.mdx b/website/pages/commands/connect/expose.mdx similarity index 99% rename from website/pages/docs/commands/connect/expose.mdx rename to website/pages/commands/connect/expose.mdx index 08237ac61b..a590517bf2 100644 --- a/website/pages/docs/commands/connect/expose.mdx +++ b/website/pages/commands/connect/expose.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Connect Expose' sidebar_title: expose description: > diff --git a/website/pages/docs/commands/connect/index.mdx b/website/pages/commands/connect/index.mdx similarity index 98% rename from website/pages/docs/commands/connect/index.mdx rename to website/pages/commands/connect/index.mdx index 63b15c8005..31fb952ea3 100644 --- a/website/pages/docs/commands/connect/index.mdx +++ b/website/pages/commands/connect/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Connect' sidebar_title: connect --- diff --git a/website/pages/docs/commands/connect/proxy.mdx b/website/pages/commands/connect/proxy.mdx similarity index 99% rename from website/pages/docs/commands/connect/proxy.mdx rename to website/pages/commands/connect/proxy.mdx index 404cd048d8..b5c644dc0e 100644 --- a/website/pages/docs/commands/connect/proxy.mdx +++ b/website/pages/commands/connect/proxy.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Connect Proxy' sidebar_title: proxy description: > diff --git a/website/pages/docs/commands/debug.mdx b/website/pages/commands/debug.mdx similarity index 99% rename from website/pages/docs/commands/debug.mdx rename to website/pages/commands/debug.mdx index 4a93b467f1..9c2bad0964 100644 --- a/website/pages/docs/commands/debug.mdx +++ b/website/pages/commands/debug.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Debug' sidebar_title: debug --- diff --git a/website/pages/docs/commands/event.mdx b/website/pages/commands/event.mdx similarity index 99% rename from website/pages/docs/commands/event.mdx rename to website/pages/commands/event.mdx index eb60dfbd17..a0453b6f4c 100644 --- a/website/pages/docs/commands/event.mdx +++ b/website/pages/commands/event.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Event' sidebar_title: event description: >- diff --git a/website/pages/docs/commands/exec.mdx b/website/pages/commands/exec.mdx similarity index 99% rename from website/pages/docs/commands/exec.mdx rename to website/pages/commands/exec.mdx index 8403c2b9d4..97154f2fc3 100644 --- a/website/pages/docs/commands/exec.mdx +++ b/website/pages/commands/exec.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Exec' sidebar_title: exec description: >- diff --git a/website/pages/docs/commands/force-leave.mdx b/website/pages/commands/force-leave.mdx similarity index 95% rename from website/pages/docs/commands/force-leave.mdx rename to website/pages/commands/force-leave.mdx index cc11f3bb6d..f676368fa9 100644 --- a/website/pages/docs/commands/force-leave.mdx +++ b/website/pages/commands/force-leave.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Force Leave' sidebar_title: force-leave description: >- @@ -48,7 +48,7 @@ consul force-leave ec2-001-staging ``` When run on a server that is part of a -[WAN gossip pool](https://learn.hashicorp.com/tutorials/consul/federarion-gossip-wan), +[WAN gossip pool](https://learn.hashicorp.com/consul/security-networking/datacenters), `force-leave` can remove failed servers in other datacenters from the WAN pool. The identifying node-name in a WAN pool is `[node-name].[datacenter]`. diff --git a/website/pages/docs/commands/index.mdx b/website/pages/commands/index.mdx similarity index 99% rename from website/pages/docs/commands/index.mdx rename to website/pages/commands/index.mdx index f00eca7d02..03d5b68448 100644 --- a/website/pages/docs/commands/index.mdx +++ b/website/pages/commands/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: Commands sidebar_title: Commands (CLI) description: >- diff --git a/website/pages/docs/commands/info.mdx b/website/pages/commands/info.mdx similarity index 99% rename from website/pages/docs/commands/info.mdx rename to website/pages/commands/info.mdx index fd6fa1290e..24618ae274 100644 --- a/website/pages/docs/commands/info.mdx +++ b/website/pages/commands/info.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Info' sidebar_title: info description: >- diff --git a/website/pages/docs/commands/intention/check.mdx b/website/pages/commands/intention/check.mdx similarity index 98% rename from website/pages/docs/commands/intention/check.mdx rename to website/pages/commands/intention/check.mdx index 263d782ab0..d49609154e 100644 --- a/website/pages/docs/commands/intention/check.mdx +++ b/website/pages/commands/intention/check.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Intention Check' sidebar_title: check --- diff --git a/website/pages/docs/commands/intention/create.mdx b/website/pages/commands/intention/create.mdx similarity index 98% rename from website/pages/docs/commands/intention/create.mdx rename to website/pages/commands/intention/create.mdx index efb65040d9..3cc698d449 100644 --- a/website/pages/docs/commands/intention/create.mdx +++ b/website/pages/commands/intention/create.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Intention Create' sidebar_title: create --- diff --git a/website/pages/docs/commands/intention/delete.mdx b/website/pages/commands/intention/delete.mdx similarity index 97% rename from website/pages/docs/commands/intention/delete.mdx rename to website/pages/commands/intention/delete.mdx index 9bf1f1aa03..2a5ce032a8 100644 --- a/website/pages/docs/commands/intention/delete.mdx +++ b/website/pages/commands/intention/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Intention Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/intention/get.mdx b/website/pages/commands/intention/get.mdx similarity index 97% rename from website/pages/docs/commands/intention/get.mdx rename to website/pages/commands/intention/get.mdx index 570eb72438..c961fc580a 100644 --- a/website/pages/docs/commands/intention/get.mdx +++ b/website/pages/commands/intention/get.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Intention Get' sidebar_title: get --- diff --git a/website/pages/docs/commands/intention/index.mdx b/website/pages/commands/intention/index.mdx similarity index 99% rename from website/pages/docs/commands/intention/index.mdx rename to website/pages/commands/intention/index.mdx index 922f59b7e8..c26a269268 100644 --- a/website/pages/docs/commands/intention/index.mdx +++ b/website/pages/commands/intention/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Intention' sidebar_title: intention --- diff --git a/website/pages/docs/commands/intention/match.mdx b/website/pages/commands/intention/match.mdx similarity index 98% rename from website/pages/docs/commands/intention/match.mdx rename to website/pages/commands/intention/match.mdx index 12edbc0ee5..b94b56c761 100644 --- a/website/pages/docs/commands/intention/match.mdx +++ b/website/pages/commands/intention/match.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Intention Match' sidebar_title: match --- diff --git a/website/pages/docs/commands/join.mdx b/website/pages/commands/join.mdx similarity index 98% rename from website/pages/docs/commands/join.mdx rename to website/pages/commands/join.mdx index a04847cd0f..c2c8e295e4 100644 --- a/website/pages/docs/commands/join.mdx +++ b/website/pages/commands/join.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Join' sidebar_title: join description: >- diff --git a/website/pages/docs/commands/keygen.mdx b/website/pages/commands/keygen.mdx similarity index 97% rename from website/pages/docs/commands/keygen.mdx rename to website/pages/commands/keygen.mdx index 02976065c0..0a48ff909d 100644 --- a/website/pages/docs/commands/keygen.mdx +++ b/website/pages/commands/keygen.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Keygen' sidebar_title: keygen description: >- diff --git a/website/pages/docs/commands/keyring.mdx b/website/pages/commands/keyring.mdx similarity index 99% rename from website/pages/docs/commands/keyring.mdx rename to website/pages/commands/keyring.mdx index 5908c4a131..cc61b619a4 100644 --- a/website/pages/docs/commands/keyring.mdx +++ b/website/pages/commands/keyring.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Keyring' sidebar_title: keyring --- diff --git a/website/pages/docs/commands/kv/delete.mdx b/website/pages/commands/kv/delete.mdx similarity index 99% rename from website/pages/docs/commands/kv/delete.mdx rename to website/pages/commands/kv/delete.mdx index 997fcf14aa..52953dc2e1 100644 --- a/website/pages/docs/commands/kv/delete.mdx +++ b/website/pages/commands/kv/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: KV Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/kv/export.mdx b/website/pages/commands/kv/export.mdx similarity index 97% rename from website/pages/docs/commands/kv/export.mdx rename to website/pages/commands/kv/export.mdx index 48053a14c4..a48a736fca 100644 --- a/website/pages/docs/commands/kv/export.mdx +++ b/website/pages/commands/kv/export.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: KV Export' sidebar_title: export --- diff --git a/website/pages/docs/commands/kv/get.mdx b/website/pages/commands/kv/get.mdx similarity index 99% rename from website/pages/docs/commands/kv/get.mdx rename to website/pages/commands/kv/get.mdx index c748d23d87..288fa38e38 100644 --- a/website/pages/docs/commands/kv/get.mdx +++ b/website/pages/commands/kv/get.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: KV Get' sidebar_title: get --- diff --git a/website/pages/docs/commands/kv/import.mdx b/website/pages/commands/kv/import.mdx similarity index 98% rename from website/pages/docs/commands/kv/import.mdx rename to website/pages/commands/kv/import.mdx index 02d2a77a0f..3e6dff10d5 100644 --- a/website/pages/docs/commands/kv/import.mdx +++ b/website/pages/commands/kv/import.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: KV Import' sidebar_title: import --- diff --git a/website/pages/docs/commands/kv/index.mdx b/website/pages/commands/kv/index.mdx similarity index 99% rename from website/pages/docs/commands/kv/index.mdx rename to website/pages/commands/kv/index.mdx index 09a1ebdd21..ece8859323 100644 --- a/website/pages/docs/commands/kv/index.mdx +++ b/website/pages/commands/kv/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: KV' sidebar_title: kv --- diff --git a/website/pages/docs/commands/kv/put.mdx b/website/pages/commands/kv/put.mdx similarity index 99% rename from website/pages/docs/commands/kv/put.mdx rename to website/pages/commands/kv/put.mdx index 62007b18a8..50093e88f2 100644 --- a/website/pages/docs/commands/kv/put.mdx +++ b/website/pages/commands/kv/put.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: KV Put' sidebar_title: put --- diff --git a/website/pages/docs/commands/leave.mdx b/website/pages/commands/leave.mdx similarity index 98% rename from website/pages/docs/commands/leave.mdx rename to website/pages/commands/leave.mdx index 077c3a9d23..dd946e62c5 100644 --- a/website/pages/docs/commands/leave.mdx +++ b/website/pages/commands/leave.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Leave' sidebar_title: leave description: >- diff --git a/website/pages/docs/commands/license.mdx b/website/pages/commands/license.mdx similarity index 95% rename from website/pages/docs/commands/license.mdx rename to website/pages/commands/license.mdx index 1c21b4a0c9..eaa0cabf48 100644 --- a/website/pages/docs/commands/license.mdx +++ b/website/pages/commands/license.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: License' sidebar_title: license description: > @@ -17,8 +17,8 @@ The `license` command provides datacenter-level management of the Consul Enterpr If ACLs are enabled then a token with operator privileges may be required in order to use this command. Requests are forwarded internally to the leader -if required, so this can be run from any Consul node in a cluster. Review the -[ACL tutorial](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production) for more information. +if required, so this can be run from any Consul node in a cluster. See the +[ACL Guide](https://learn.hashicorp.com/consul/security-networking/production-acls) for more information. ```text Usage: consul license [options] [args] diff --git a/website/pages/docs/commands/lock.mdx b/website/pages/commands/lock.mdx similarity index 97% rename from website/pages/docs/commands/lock.mdx rename to website/pages/commands/lock.mdx index eae70bdaa2..d25b1fe9e8 100644 --- a/website/pages/docs/commands/lock.mdx +++ b/website/pages/commands/lock.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Lock' sidebar_title: lock description: >- @@ -19,11 +19,11 @@ communication is disrupted, the child process is terminated. The number of lock holders is configurable with the `-n` flag. By default, a single holder is allowed, and a lock is used for mutual exclusion. This -uses the [leader election algorithm](https://learn.hashicorp.com/tutorials/consul/application-leader-elections). +uses the [leader election algorithm](https://learn.hashicorp.com/consul/developer-configuration/elections). If the lock holder count is more than one, then a semaphore is used instead. A semaphore allows more than a single holder, but this is less efficient than -a simple lock. This follows the [semaphore algorithm](https://learn.hashicorp.com/tutorials/consul/distributed-semaphore). +a simple lock. This follows the [semaphore algorithm](https://learn.hashicorp.com/consul/developer-configuration/semaphore). All locks using the same prefix must agree on the value of `-n`. If conflicting values of `-n` are provided, an error will be returned. diff --git a/website/pages/docs/commands/login.mdx b/website/pages/commands/login.mdx similarity index 99% rename from website/pages/docs/commands/login.mdx rename to website/pages/commands/login.mdx index b67a66b9ca..6a9804f9ad 100644 --- a/website/pages/docs/commands/login.mdx +++ b/website/pages/commands/login.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Login' sidebar_title: login description: > diff --git a/website/pages/docs/commands/logout.mdx b/website/pages/commands/logout.mdx similarity index 97% rename from website/pages/docs/commands/logout.mdx rename to website/pages/commands/logout.mdx index a1c9a82104..4a60a938dc 100644 --- a/website/pages/docs/commands/logout.mdx +++ b/website/pages/commands/logout.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Logout' sidebar_title: logout description: > diff --git a/website/pages/docs/commands/maint.mdx b/website/pages/commands/maint.mdx similarity index 99% rename from website/pages/docs/commands/maint.mdx rename to website/pages/commands/maint.mdx index ad73614b39..f260d19b3f 100644 --- a/website/pages/docs/commands/maint.mdx +++ b/website/pages/commands/maint.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Maint' sidebar_title: maint description: | diff --git a/website/pages/docs/commands/members.mdx b/website/pages/commands/members.mdx similarity index 98% rename from website/pages/docs/commands/members.mdx rename to website/pages/commands/members.mdx index 190831c868..b141441462 100644 --- a/website/pages/docs/commands/members.mdx +++ b/website/pages/commands/members.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Members' sidebar_title: members description: >- diff --git a/website/pages/docs/commands/monitor.mdx b/website/pages/commands/monitor.mdx similarity index 98% rename from website/pages/docs/commands/monitor.mdx rename to website/pages/commands/monitor.mdx index 8b06a7acd5..5d30f52ed6 100644 --- a/website/pages/docs/commands/monitor.mdx +++ b/website/pages/commands/monitor.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Monitor' sidebar_title: monitor description: >- diff --git a/website/pages/docs/commands/namespace/create.mdx b/website/pages/commands/namespace/create.mdx similarity index 99% rename from website/pages/docs/commands/namespace/create.mdx rename to website/pages/commands/namespace/create.mdx index 125e66cf65..88b6a802db 100644 --- a/website/pages/docs/commands/namespace/create.mdx +++ b/website/pages/commands/namespace/create.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Namespace Create' sidebar_title: create --- diff --git a/website/pages/docs/commands/namespace/delete.mdx b/website/pages/commands/namespace/delete.mdx similarity index 97% rename from website/pages/docs/commands/namespace/delete.mdx rename to website/pages/commands/namespace/delete.mdx index ef8b305c5f..8102f3c39d 100644 --- a/website/pages/docs/commands/namespace/delete.mdx +++ b/website/pages/commands/namespace/delete.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Namespace Delete' sidebar_title: delete --- diff --git a/website/pages/docs/commands/namespace/index.mdx b/website/pages/commands/namespace/index.mdx similarity index 99% rename from website/pages/docs/commands/namespace/index.mdx rename to website/pages/commands/namespace/index.mdx index 8a4b03c255..dd2f34a85f 100644 --- a/website/pages/docs/commands/namespace/index.mdx +++ b/website/pages/commands/namespace/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Namespace' sidebar_title: namespace description: | diff --git a/website/pages/docs/commands/namespace/list.mdx b/website/pages/commands/namespace/list.mdx similarity index 99% rename from website/pages/docs/commands/namespace/list.mdx rename to website/pages/commands/namespace/list.mdx index e952db58f6..fbb82ac449 100644 --- a/website/pages/docs/commands/namespace/list.mdx +++ b/website/pages/commands/namespace/list.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Namespace List' sidebar_title: list --- diff --git a/website/pages/docs/commands/namespace/read.mdx b/website/pages/commands/namespace/read.mdx similarity index 98% rename from website/pages/docs/commands/namespace/read.mdx rename to website/pages/commands/namespace/read.mdx index d45a0aa828..f0de955024 100644 --- a/website/pages/docs/commands/namespace/read.mdx +++ b/website/pages/commands/namespace/read.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Namespace Read' sidebar_title: read --- diff --git a/website/pages/docs/commands/namespace/update.mdx b/website/pages/commands/namespace/update.mdx similarity index 99% rename from website/pages/docs/commands/namespace/update.mdx rename to website/pages/commands/namespace/update.mdx index 30d8ad6715..73187e31f6 100644 --- a/website/pages/docs/commands/namespace/update.mdx +++ b/website/pages/commands/namespace/update.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Namespace Update' sidebar_title: update --- diff --git a/website/pages/docs/commands/namespace/write.mdx b/website/pages/commands/namespace/write.mdx similarity index 98% rename from website/pages/docs/commands/namespace/write.mdx rename to website/pages/commands/namespace/write.mdx index 057ac3b878..f2b6e5b421 100644 --- a/website/pages/docs/commands/namespace/write.mdx +++ b/website/pages/commands/namespace/write.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Namespace Write' sidebar_title: write --- diff --git a/website/pages/docs/commands/operator/area.mdx b/website/pages/commands/operator/area.mdx similarity index 98% rename from website/pages/docs/commands/operator/area.mdx rename to website/pages/commands/operator/area.mdx index 68533a5ba1..f8b137d955 100644 --- a/website/pages/docs/commands/operator/area.mdx +++ b/website/pages/commands/operator/area.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Operator Area' sidebar_title: area description: > @@ -22,7 +22,7 @@ and relationships can be made between independent pairs of datacenters, so not a need to be fully connected. This allows for complex topologies among Consul datacenters like hub/spoke and more general trees. -Review the [Network Areas tutorial](https://learn.hashicorp.com/tutorials/consul/federation-network-areas) for more details. +See the [Network Areas Guide](https://learn.hashicorp.com/consul/day-2-operations/advanced-federation) for more details. ```text Usage: consul operator area [options] diff --git a/website/pages/docs/commands/operator/autopilot.mdx b/website/pages/commands/operator/autopilot.mdx similarity index 94% rename from website/pages/docs/commands/operator/autopilot.mdx rename to website/pages/commands/operator/autopilot.mdx index e350eafb57..44977dc801 100644 --- a/website/pages/docs/commands/operator/autopilot.mdx +++ b/website/pages/commands/operator/autopilot.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Operator Autopilot' sidebar_title: autopilot description: > @@ -12,8 +12,8 @@ description: > Command: `consul operator autopilot` The Autopilot operator command is used to interact with Consul's Autopilot subsystem. The -command can be used to view or modify the current Autopilot configuration. Review the -[Autopilot tutorial](https://learn.hashicorp.com/tutorials/consul/autopilot-datacenter-operations) for more information about Autopilot. +command can be used to view or modify the current Autopilot configuration. See the +[Autopilot Guide](https://learn.hashicorp.com/consul/day-2-operations/autopilot) for more information about Autopilot. ```text Usage: consul operator autopilot [options] diff --git a/website/pages/docs/commands/operator/index.mdx b/website/pages/commands/operator/index.mdx similarity index 80% rename from website/pages/docs/commands/operator/index.mdx rename to website/pages/commands/operator/index.mdx index 34226ed35c..9b89e7322c 100644 --- a/website/pages/docs/commands/operator/index.mdx +++ b/website/pages/commands/operator/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Operator' sidebar_title: operator description: | @@ -18,12 +18,12 @@ outage and even loss of data. If ACLs are enabled then a token with operator privileges may be required in order to use this command. Requests are forwarded internally to the leader -if required, so this can be run from any Consul node in a cluster. Review the -[ACL tutorial](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production) for more information. +if required, so this can be run from any Consul node in a cluster. See the +[ACL Guide](https://learn.hashicorp.com/consul/security-networking/production-acls) for more information. -Review the [Outage Recovery](https://learn.hashicorp.com/tutorials/consul/recovery-outage) tutorial for some examples of how +See the [Outage Recovery](https://learn.hashicorp.com/consul/day-2-operations/outage) guide for some examples of how this command is used. For an API to perform these operations programmatically, -please check the documentation for the [Operator](/api/operator) +please see the documentation for the [Operator](/api/operator) endpoint. ## Usage diff --git a/website/pages/docs/commands/operator/raft.mdx b/website/pages/commands/operator/raft.mdx similarity index 99% rename from website/pages/docs/commands/operator/raft.mdx rename to website/pages/commands/operator/raft.mdx index 0e1236fbb5..8c17297316 100644 --- a/website/pages/docs/commands/operator/raft.mdx +++ b/website/pages/commands/operator/raft.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Operator Raft' sidebar_title: raft description: > diff --git a/website/pages/docs/commands/reload.mdx b/website/pages/commands/reload.mdx similarity index 98% rename from website/pages/docs/commands/reload.mdx rename to website/pages/commands/reload.mdx index 6d75826cf3..ddd036d427 100644 --- a/website/pages/docs/commands/reload.mdx +++ b/website/pages/commands/reload.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Reload' sidebar_title: reload description: The `reload` command triggers a reload of configuration files for the agent. diff --git a/website/pages/docs/commands/rtt.mdx b/website/pages/commands/rtt.mdx similarity index 99% rename from website/pages/docs/commands/rtt.mdx rename to website/pages/commands/rtt.mdx index d7728e5dc9..e990658d16 100644 --- a/website/pages/docs/commands/rtt.mdx +++ b/website/pages/commands/rtt.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: RTT' sidebar_title: rtt description: | diff --git a/website/pages/docs/commands/services/deregister.mdx b/website/pages/commands/services/deregister.mdx similarity index 99% rename from website/pages/docs/commands/services/deregister.mdx rename to website/pages/commands/services/deregister.mdx index b15addf614..35df89dd47 100644 --- a/website/pages/docs/commands/services/deregister.mdx +++ b/website/pages/commands/services/deregister.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Services Deregister' sidebar_title: deregister --- diff --git a/website/pages/docs/commands/services/index.mdx b/website/pages/commands/services/index.mdx similarity index 98% rename from website/pages/docs/commands/services/index.mdx rename to website/pages/commands/services/index.mdx index 6383304fb5..13f41bca06 100644 --- a/website/pages/docs/commands/services/index.mdx +++ b/website/pages/commands/services/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Services' sidebar_title: services --- diff --git a/website/pages/docs/commands/services/register.mdx b/website/pages/commands/services/register.mdx similarity index 99% rename from website/pages/docs/commands/services/register.mdx rename to website/pages/commands/services/register.mdx index 933f2ebb9c..3c38bba6d3 100644 --- a/website/pages/docs/commands/services/register.mdx +++ b/website/pages/commands/services/register.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Services Register' sidebar_title: register --- diff --git a/website/pages/docs/commands/snapshot/agent.mdx b/website/pages/commands/snapshot/agent.mdx similarity index 99% rename from website/pages/docs/commands/snapshot/agent.mdx rename to website/pages/commands/snapshot/agent.mdx index 24d89a6ec5..284738aba3 100644 --- a/website/pages/docs/commands/snapshot/agent.mdx +++ b/website/pages/commands/snapshot/agent.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Snapshot Agent' sidebar_title: agent --- diff --git a/website/pages/docs/commands/snapshot/index.mdx b/website/pages/commands/snapshot/index.mdx similarity index 99% rename from website/pages/docs/commands/snapshot/index.mdx rename to website/pages/commands/snapshot/index.mdx index ee67f32c7d..0abe51af33 100644 --- a/website/pages/docs/commands/snapshot/index.mdx +++ b/website/pages/commands/snapshot/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Snapshot' sidebar_title: snapshot --- diff --git a/website/pages/docs/commands/snapshot/inspect.mdx b/website/pages/commands/snapshot/inspect.mdx similarity index 98% rename from website/pages/docs/commands/snapshot/inspect.mdx rename to website/pages/commands/snapshot/inspect.mdx index 8b93b6a3bf..4743031405 100644 --- a/website/pages/docs/commands/snapshot/inspect.mdx +++ b/website/pages/commands/snapshot/inspect.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Snapshot Inspect' sidebar_title: inspect --- diff --git a/website/pages/docs/commands/snapshot/restore.mdx b/website/pages/commands/snapshot/restore.mdx similarity index 98% rename from website/pages/docs/commands/snapshot/restore.mdx rename to website/pages/commands/snapshot/restore.mdx index ad45851bfd..8bdae7041f 100644 --- a/website/pages/docs/commands/snapshot/restore.mdx +++ b/website/pages/commands/snapshot/restore.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Snapshot Restore' sidebar_title: restore --- diff --git a/website/pages/docs/commands/snapshot/save.mdx b/website/pages/commands/snapshot/save.mdx similarity index 98% rename from website/pages/docs/commands/snapshot/save.mdx rename to website/pages/commands/snapshot/save.mdx index 6587df12cf..5c3e24daa5 100644 --- a/website/pages/docs/commands/snapshot/save.mdx +++ b/website/pages/commands/snapshot/save.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Snapshot Save' sidebar_title: save --- diff --git a/website/pages/docs/commands/tls/ca.mdx b/website/pages/commands/tls/ca.mdx similarity index 98% rename from website/pages/docs/commands/tls/ca.mdx rename to website/pages/commands/tls/ca.mdx index d6db7486bb..3ac9a8f666 100644 --- a/website/pages/docs/commands/tls/ca.mdx +++ b/website/pages/commands/tls/ca.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: TLS CA Create' sidebar_title: ca --- diff --git a/website/pages/docs/commands/tls/cert.mdx b/website/pages/commands/tls/cert.mdx similarity index 99% rename from website/pages/docs/commands/tls/cert.mdx rename to website/pages/commands/tls/cert.mdx index fd266e8835..328f0616fb 100644 --- a/website/pages/docs/commands/tls/cert.mdx +++ b/website/pages/commands/tls/cert.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: TLS Cert Create' sidebar_title: cert --- diff --git a/website/pages/docs/commands/tls/index.mdx b/website/pages/commands/tls/index.mdx similarity index 98% rename from website/pages/docs/commands/tls/index.mdx rename to website/pages/commands/tls/index.mdx index 7db66107dc..d696988776 100644 --- a/website/pages/docs/commands/tls/index.mdx +++ b/website/pages/commands/tls/index.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: TLS' sidebar_title: tls --- diff --git a/website/pages/docs/commands/validate.mdx b/website/pages/commands/validate.mdx similarity index 98% rename from website/pages/docs/commands/validate.mdx rename to website/pages/commands/validate.mdx index 6d72742c99..03ef8c530a 100644 --- a/website/pages/docs/commands/validate.mdx +++ b/website/pages/commands/validate.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Validate' sidebar_title: validate description: > diff --git a/website/pages/docs/commands/version.mdx b/website/pages/commands/version.mdx similarity index 98% rename from website/pages/docs/commands/version.mdx rename to website/pages/commands/version.mdx index eae2aa99e0..0f6ebf3889 100644 --- a/website/pages/docs/commands/version.mdx +++ b/website/pages/commands/version.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Version' sidebar_title: version description: >- diff --git a/website/pages/docs/commands/watch.mdx b/website/pages/commands/watch.mdx similarity index 99% rename from website/pages/docs/commands/watch.mdx rename to website/pages/commands/watch.mdx index 6faf1189b9..40312048fb 100644 --- a/website/pages/docs/commands/watch.mdx +++ b/website/pages/commands/watch.mdx @@ -1,5 +1,5 @@ --- -layout: docs +layout: commands page_title: 'Commands: Watch' sidebar_title: watch description: >- diff --git a/website/pages/docs/agent/options.mdx b/website/pages/docs/agent/options.mdx index 9b64a6f403..95180f5d14 100644 --- a/website/pages/docs/agent/options.mdx +++ b/website/pages/docs/agent/options.mdx @@ -640,8 +640,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." roles. Setting this configuration will will enable ACL token replication and allow for the creation of both [local tokens](/api/acl/tokens#local) and [auth methods](/docs/acl/auth-methods) in connected secondary datacenters. - - ~> **Warning:** When enabling ACL token replication on the secondary datacenter, + + ~> **Warning:** When enabling ACL token replication on the secondary datacenter, global tokens already present in the secondary datacenter will be lost. For production environments, consider configuring ACL replication in your initial datacenter bootstrapping process. @@ -687,8 +687,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `replication` ((#acl_tokens_replication)) - The ACL token used to authorize secondary datacenters with the primary datacenter for replication operations. This token is required for servers outside the [`primary_datacenter`](#primary_datacenter) when ACLs are enabled. This token may be provided later using the [agent token API](/api/agent#update-acl-tokens) on each server. This token must have at least "read" permissions on ACL data but if ACL token replication is enabled then it must have "write" permissions. This also enables Connect replication, for which the token will require both operator "write" and intention "read" permissions for replicating CA and Intention data. - - ~> **Warning:** When enabling ACL token replication on the secondary datacenter, + + ~> **Warning:** When enabling ACL token replication on the secondary datacenter, policies and roles already present in the secondary datacenter will be lost. For production environments, consider configuring ACL replication in your initial datacenter bootstrapping process. @@ -926,11 +926,11 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `upgrade_version_tag` - The node_meta tag to use for version info when performing upgrade migrations. If this is not set, the Consul version will be used. - + - `auto_config` This object allows setting options for the `auto_config` feature. The following sub-keys are available: - + - `enabled` (Defaults to `false`) This option enables `auto_config` on a client agent. When starting up but before joining the cluster, the client agent will make an RPC to the configured server addresses to request configuration settings, @@ -943,44 +943,44 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." object available for use on Consul servers. Enabling this option also turns on Connect because it is vital for `auto_config`, more specifically the CA and certificates infrastructure. - - - `intro_token` (Defaults to `""`) This specifies the JWT to use for the initial - `auto_config` RPC to the Consul servers. This can be overridden with the + + - `intro_token` (Defaults to `""`) This specifies the JWT to use for the initial + `auto_config` RPC to the Consul servers. This can be overridden with the `CONSUL_INTRO_TOKEN` environment variable - + - `intro_token_file` (Defaults to `""`) This specifies a file containing the JWT to use for the initial `auto_config` RPC to the Consul servers. This token from this file is only loaded if the `intro_token` configuration is unset as well as the `CONSUL_INTRO_TOKEN` environment variable - + - `server_addresses` (Defaults to `[]`) This specifies the addresses of servers in the local datacenter to use for the initial RPC. These addresses support [Cloud Auto-Joining](#cloud-auto-joining) and can optionally include a port to use when making the outbound connection. If not port is provided the `server_port` will be used. - + - `dns_sans` (Defaults to `[]`) This is a list of extra DNS SANs to request in the client agent's TLS certificate. The `localhost` DNS SAN is always requested. - + - `ip_sans` (Defaults to `[]`) This is a list of extra IP SANs to request in the client agent's TLS certficate. The `::1` and `127.0.0.1` IP SANs are always requested. - + - `authorization` This object controls how a Consul server will authorize `auto_config` requests and in particular how to verify the JWT intro token. - - - `enabled` (Defaults to `false`) This option enables `auto_config` authorization + + - `enabled` (Defaults to `false`) This option enables `auto_config` authorization capabilities on the server. - + - `static` This object controls configuring the static authorizer setup in the Consul configuration file. Almost all sub-keys are identical to those provided by the [JWT Auth Method](/docs/acl/auth-methods/jwt). - + - `jwt_validation_pub_keys` (Defaults to `[]`) A list of PEM-encoded public keys to use to authenticate signatures locally. Exactly one of `jwks_url` `jwt_validation_pub_keys`, or `oidc_discovery_url` is required. - - `oidc_discovery_url` (Defaults to `""`) The OIDC Discovery URL, without any + - `oidc_discovery_url` (Defaults to `""`) The OIDC Discovery URL, without any .well-known component (base path). Exactly one of `jwks_url` `jwt_validation_pub_keys`, or `oidc_discovery_url` is required. @@ -998,7 +998,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." (`\n`). If not set, system certificates are used. - `claim_mappings` (Defaults to `(map[string]string)` Mappings of claims (key) that - will be copied to a metadata field (value). Use this if the claim you are capturing + will be copied to a metadata field (value). Use this if the claim you are capturing is singular (such as an attribute). When mapped, the values can be any of a number, string, or boolean and will @@ -1031,13 +1031,14 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `clock_skew_leeway` (Defaults to `"0s"`) Duration of leeway when validating all claims to account for clock skew. Defaults to 60s (1 minute) if set to 0s and can be disabled if set to -1ns. - + - `claim_assertions` (Defaults to []) List of assertions about the mapped claims required to authorize the incoming RPC request. The syntax uses - github.com/hashicorp/go-bexpr which is shared with the + github.com/hashicorp/go-bexpr which is shared with the [API filtering feature](/api/features/filtering). For example, the following configurations when combined will ensure that the JWT `sub` matches the node name requested by the client. + ``` claim_mappings { sub = "node_name" @@ -1046,15 +1047,14 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." "value.node_name == \"${node}\"" ] ``` - + The assertions are lightly templated using [HIL syntax](https://github.com/hashicorp/hil) to interpolate some values from the RPC request. The list of variables that can be interpolated are: - - - `node` - The node name the client agent is requesting. - - - `segment` - The network segment name the client is requesting. - + + - `node` - The node name the client agent is requesting. + + - `segment` - The network segment name the client is requesting. - `auto_encrypt` This object allows setting options for the `auto_encrypt` feature. @@ -1414,7 +1414,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-enterprise) + versions and will assume the label is the datacenter. See: [this section](/docs/agent/dns#namespaced-services) for more details. - `domain` Equivalent to the [`-domain` command-line flag](#_domain). @@ -1423,8 +1423,8 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." the replication token via [`acl_replication_token`](#acl_replication_token). Instead, enable ACL replication and then introduce the token using the [agent token API](/api/agent#update-acl-tokens) on each server. See [`acl_replication_token`](#acl_replication_token) for more details. - - ~> **Warning:** When enabling ACL token replication on the secondary datacenter, + + ~> **Warning:** When enabling ACL token replication on the secondary datacenter, policies and roles already present in the secondary datacenter will be lost. For production environments, consider configuring ACL replication in your initial datacenter bootstrapping process. @@ -1648,7 +1648,7 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." configure Raft to its highest-performance mode, equivalent to the default timing of Consul prior to 0.7, and is recommended for [production Consul servers](/docs/install/performance#production). - See the note on [last contact](/docs/install/performance#last-contact) timing for more + See the note on [last contact](/docs/install/performance#production-server-requirements) timing for more details on tuning this parameter. The maximum allowed value is 10. - `rpc_hold_timeout` - A duration that a client diff --git a/website/pages/docs/internals/anti-entropy.mdx b/website/pages/docs/architecture/anti-entropy.mdx similarity index 100% rename from website/pages/docs/internals/anti-entropy.mdx rename to website/pages/docs/architecture/anti-entropy.mdx diff --git a/website/pages/docs/internals/consensus.mdx b/website/pages/docs/architecture/consensus.mdx similarity index 99% rename from website/pages/docs/internals/consensus.mdx rename to website/pages/docs/architecture/consensus.mdx index 3e16db1100..0059406cfc 100644 --- a/website/pages/docs/internals/consensus.mdx +++ b/website/pages/docs/architecture/consensus.mdx @@ -171,7 +171,7 @@ The three read modes are: For more documentation about using these various modes, see the [HTTP API](/api/features/consistency). -## Deployment Table +## Deployment Table ((#deployment_table)) Below is a table that shows quorum size and failure tolerance for various cluster sizes. The recommended deployment is either 3 or 5 servers. A single diff --git a/website/pages/docs/internals/coordinates.mdx b/website/pages/docs/architecture/coordinates.mdx similarity index 100% rename from website/pages/docs/internals/coordinates.mdx rename to website/pages/docs/architecture/coordinates.mdx diff --git a/website/pages/docs/internals/gossip.mdx b/website/pages/docs/architecture/gossip.mdx similarity index 98% rename from website/pages/docs/internals/gossip.mdx rename to website/pages/docs/architecture/gossip.mdx index 3320790eaf..bfbbab47af 100644 --- a/website/pages/docs/internals/gossip.mdx +++ b/website/pages/docs/architecture/gossip.mdx @@ -41,9 +41,7 @@ is used as an embedded library to provide these features. From a user perspectiv this is not important, since the abstraction should be masked by Consul. It can be useful however as a developer to understand how this library is leveraged. - - -## Lifeguard Enhancements +## Lifeguard Enhancements ((#lifeguard)) SWIM makes the assumption that the local node is healthy in the sense that soft real-time processing of packets is possible. However, in cases diff --git a/website/pages/docs/internals/architecture.mdx b/website/pages/docs/architecture/index.mdx similarity index 100% rename from website/pages/docs/internals/architecture.mdx rename to website/pages/docs/architecture/index.mdx diff --git a/website/pages/docs/internals/jepsen.mdx b/website/pages/docs/architecture/jepsen.mdx similarity index 100% rename from website/pages/docs/internals/jepsen.mdx rename to website/pages/docs/architecture/jepsen.mdx diff --git a/website/pages/docs/connect/connect-internals.mdx b/website/pages/docs/connect/connect-internals.mdx index 8558e029db..ef4eb6a0b6 100644 --- a/website/pages/docs/connect/connect-internals.mdx +++ b/website/pages/docs/connect/connect-internals.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Connect - Architecture -sidebar_title: Architecture +page_title: How Connect Works +sidebar_title: How Connect Works description: >- This page details the internals of Consul Connect: mutual TLS, agent caching and performance, intention and certificate authority replication. diff --git a/website/pages/docs/connect/gateways/ingress-gateway.mdx b/website/pages/docs/connect/gateways/ingress-gateway.mdx index 4f62b29407..170a4f460b 100644 --- a/website/pages/docs/connect/gateways/ingress-gateway.mdx +++ b/website/pages/docs/connect/gateways/ingress-gateway.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Connect - Ingress Gateways -sidebar_title: Ingress Gateways +page_title: External <> Internal Services - Ingress Gateways +sidebar_title: External <> Internal Services - Ingress Gateways description: >- An ingress gateway enables ingress traffic from services outside the Consul service mesh to services inside the Consul service mesh. This section details diff --git a/website/pages/docs/connect/gateways/mesh-gateway.mdx b/website/pages/docs/connect/gateways/mesh-gateway/index.mdx similarity index 98% rename from website/pages/docs/connect/gateways/mesh-gateway.mdx rename to website/pages/docs/connect/gateways/mesh-gateway/index.mdx index 00f245339b..76ddb1ed76 100644 --- a/website/pages/docs/connect/gateways/mesh-gateway.mdx +++ b/website/pages/docs/connect/gateways/mesh-gateway/index.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Connect - Mesh Gateways -sidebar_title: Mesh Gateways +page_title: Connect Datacenters - Mesh Gateways +sidebar_title: Connect Datacenters - Mesh Gateways description: >- A Mesh Gateway enables better routing of a Connect service's data to upstreams in other datacenters. This section details how to use Envoy and describes how diff --git a/website/pages/docs/connect/gateways/wan-federation-via-mesh-gateways.mdx b/website/pages/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx similarity index 98% rename from website/pages/docs/connect/gateways/wan-federation-via-mesh-gateways.mdx rename to website/pages/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx index 3efcc4b5c5..e8d726ae6c 100644 --- a/website/pages/docs/connect/gateways/wan-federation-via-mesh-gateways.mdx +++ b/website/pages/docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Connect - WAN Federation via Mesh Gateways -sidebar_title: WAN Federation via Mesh Gateways +page_title: WAN Federation via Mesh Gateways +sidebar_title: WAN Federation description: |- WAN federation via mesh gateways allows for Consul servers in different datacenters to be federated exclusively through mesh gateways. --- @@ -176,5 +176,5 @@ expected result: their _local_ ip addresses and are listed as `alive`. - Ensure any API request that activates datacenter request forwarding. such as - [`/v1/catalog/services?dc=`](/api/catalog.html#dc-1) + [`/v1/catalog/services?dc=`](/api/catalog#dc-1) succeeds. diff --git a/website/pages/docs/connect/gateways/terminating-gateway.mdx b/website/pages/docs/connect/gateways/terminating-gateway.mdx index 024d362bec..889dd1db97 100644 --- a/website/pages/docs/connect/gateways/terminating-gateway.mdx +++ b/website/pages/docs/connect/gateways/terminating-gateway.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Connect - Terminating Gateways -sidebar_title: Terminating Gateways +page_title: Internal <> External Services - Terminating Gateways +sidebar_title: Internal <> External Services - Terminating Gateways description: >- A terminating gateway enables traffic from services in the Consul service mesh to services outside the mesh. This section details @@ -119,7 +119,7 @@ by sending the registration request to a client or server agent on a different h All services registered in the Consul catalog must be associated with a node, even when their node is not managed by a Consul client agent. All agent-less services with the same address can be registered under the same node name and address. -However, ensure that the [node name](/api/catalog.html#node) for external services registered directly in the catalog +However, ensure that the [node name](/api/catalog#node) for external services registered directly in the catalog does not match the node name of any Consul client agent node. If the node name overlaps with the node name of a Consul client agent, Consul's [anti-entropy sync](/docs/internals/anti-entropy) will delete the services registered via the `/catalog/register` HTTP API endpoint. diff --git a/website/pages/docs/connect/index.mdx b/website/pages/docs/connect/index.mdx index b9d19697b4..b8abf9f3cd 100644 --- a/website/pages/docs/connect/index.mdx +++ b/website/pages/docs/connect/index.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Connect (Service Segmentation) -sidebar_title: Connect - Service Mesh +page_title: Service Mesh +sidebar_title: Service Mesh description: |- Consul Connect provides service-to-service connection authorization and encryption using mutual TLS. diff --git a/website/pages/docs/connect/intentions.mdx b/website/pages/docs/connect/intentions.mdx index 57befa2e0e..a2c46cf264 100644 --- a/website/pages/docs/connect/intentions.mdx +++ b/website/pages/docs/connect/intentions.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Connect - Intentions -sidebar_title: Intentions - Security Policies +page_title: Service-to-service permissions - Intentions +sidebar_title: Service-to-service permissions - Intentions description: >- Intentions define access control for services via Connect and are used to control which services may establish connections. Intentions can be managed diff --git a/website/pages/docs/internals/discovery-chain.mdx b/website/pages/docs/connect/l7-traffic/discovery-chain.mdx similarity index 100% rename from website/pages/docs/internals/discovery-chain.mdx rename to website/pages/docs/connect/l7-traffic/discovery-chain.mdx diff --git a/website/pages/docs/connect/l7-traffic-management.mdx b/website/pages/docs/connect/l7-traffic/index.mdx similarity index 100% rename from website/pages/docs/connect/l7-traffic-management.mdx rename to website/pages/docs/connect/l7-traffic/index.mdx diff --git a/website/pages/docs/connect/proxies/built-in.mdx b/website/pages/docs/connect/proxies/built-in.mdx index 9f52ee2099..f48b3e8cfb 100644 --- a/website/pages/docs/connect/proxies/built-in.mdx +++ b/website/pages/docs/connect/proxies/built-in.mdx @@ -58,7 +58,7 @@ All fields are optional with a sane default. - `bind_port` - The port the proxy will bind it's _public_ mTLS listener to. If not provided, the agent will attempt to assign one from its - [configured proxy port range](/docs/agent/options#proxy_min_port) if available. + [configured proxy port range](/docs/agent/options#sidecar_min_port) if available. By default the range is [20000, 20255] and the port is selected at random from that range. diff --git a/website/pages/docs/connect/proxies/managed-deprecated.mdx b/website/pages/docs/connect/proxies/managed-deprecated.mdx index 7f3e3ecfd1..c5d704ae39 100644 --- a/website/pages/docs/connect/proxies/managed-deprecated.mdx +++ b/website/pages/docs/connect/proxies/managed-deprecated.mdx @@ -79,7 +79,7 @@ via agent configuration files. They _cannot_ be registered via the HTTP API. And 2.) Managed proxies are not started at all if Consul is running as root. Both of these default configurations help prevent arbitrary process execution or privilege escalation. This behavior can be configured -[per-agent](/docs/agent/options#connect_proxy). +[per-agent](/docs/agent/options). ### Lifecycle @@ -172,7 +172,7 @@ passed to the proxy instance. For full details of the additional configurable options available when using the built-in proxy see the [built-in proxy configuration -reference](/docs/connect/configuration#built-in-proxy-options). +reference](/docs/connect/configuration). ### Prepared Query Upstreams @@ -209,7 +209,7 @@ service. For full details of the additional configurable options available when using the built-in proxy see the [built-in proxy configuration -reference](/docs/connect/configuration#built-in-proxy-options). +reference](/docs/connect/configuration). ### Custom Managed Proxy @@ -260,7 +260,7 @@ proxy command will use `my-proxy` instead of the default built-in proxy. The `config` key is an optional opaque JSON object which will be passed through to the proxy via the proxy configuration endpoint to allow any configuration options the proxy needs to be specified. See the [built-in proxy -configuration reference](/docs/connect/configuration#built-in-proxy-options) +configuration reference](/docs/connect/configuration) for details of config options that can be passed when using the built-in proxy. ### Managed Proxy Logs diff --git a/website/pages/docs/connect/security.mdx b/website/pages/docs/connect/security.mdx index 8ad4301b15..a92d8b060a 100644 --- a/website/pages/docs/connect/security.mdx +++ b/website/pages/docs/connect/security.mdx @@ -14,7 +14,7 @@ Connect enables secure service-to-service communication over mutual TLS. This provides both in-transit data encryption as well as authorization. This page will document how to secure Connect. To try Connect locally, complete the [Getting Started guide](https://learn.hashicorp.com/tutorials/consul/service-mesh?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) or for a full security model reference, -see the dedicated [Consul security model](/docs/internals/security.html) page. When +see the dedicated [Consul security model](/docs/internals/security) page. When setting up Connect in production, review this [tutorial](https://learn.hashicorp.com/tutorials/consul/service-mesh-production-checklist?utm_source=consul.io&utm_medium=docs). Connect will function in any Consul configuration. However, unless the checklist diff --git a/website/pages/docs/agent/checks.mdx b/website/pages/docs/discovery/checks.mdx similarity index 99% rename from website/pages/docs/agent/checks.mdx rename to website/pages/docs/discovery/checks.mdx index 6b84fbbe6f..6e114b95ff 100644 --- a/website/pages/docs/agent/checks.mdx +++ b/website/pages/docs/discovery/checks.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Check Definition -sidebar_title: Check Definitions +page_title: Monitor Services - Check Definitions +sidebar_title: Monitor Services - Check Definitions description: >- One of the primary roles of the agent is management of system- and application-level health checks. A health check is considered to be diff --git a/website/pages/docs/agent/dns.mdx b/website/pages/docs/discovery/dns.mdx similarity index 99% rename from website/pages/docs/agent/dns.mdx rename to website/pages/docs/discovery/dns.mdx index 032982077d..08759d78f6 100644 --- a/website/pages/docs/agent/dns.mdx +++ b/website/pages/docs/discovery/dns.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: DNS Interface -sidebar_title: DNS Interface +page_title: Find Services - DNS Interface +sidebar_title: Find Services - DNS Interface description: >- One of the primary query interfaces for Consul is DNS. The DNS interface allows applications to make use of service discovery without any high-touch diff --git a/website/pages/docs/agent/services.mdx b/website/pages/docs/discovery/services.mdx similarity index 99% rename from website/pages/docs/agent/services.mdx rename to website/pages/docs/discovery/services.mdx index f533d24494..5622012c28 100644 --- a/website/pages/docs/agent/services.mdx +++ b/website/pages/docs/discovery/services.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Service Definition -sidebar_title: Service Definitions +page_title: Register Services - Service Definitions +sidebar_title: Register Services - Service Definitions description: >- One of the main goals of service discovery is to provide a catalog of available services. To that end, the agent provides a simple service diff --git a/website/pages/downloads_tools/index.mdx b/website/pages/docs/download-tools.mdx similarity index 98% rename from website/pages/downloads_tools/index.mdx rename to website/pages/docs/download-tools.mdx index 2188032e38..cf3785972b 100644 --- a/website/pages/downloads_tools/index.mdx +++ b/website/pages/docs/download-tools.mdx @@ -1,6 +1,7 @@ --- -layout: index -page_title: Download Consul Tools +layout: docs +page_title: Consul Tools +sidebar_title: Consul Tools description: |- From this page you can download various tools for Consul. These tools are maintained by HashiCorp and the Consul Community. @@ -17,7 +18,7 @@ These Consul tools are created and managed by the dedicated engineers at HashiCo - [Envconsul](https://github.com/hashicorp/envconsul) - Read and set environmental variables for processes from Consul. - [Consul Migrate](https://github.com/hashicorp/consul-migrate) - Data migration tool to handle Consul upgrades to 0.5.1+ - [Consul Replicate](https://github.com/hashicorp/consul-replicate) - Consul cross-DC KV replication daemon. -- [Consul Template](https://github.com/hashicorp/consul-template) - Generic template rendering and notifications with Consul. A step-by-step tutorial is available on [HashiCorp Learn](https://learn.hashicorp.com/tutorials/consul/consul-template). +- [Consul Template](https://github.com/hashicorp/consul-template) - Generic template rendering and notifications with Consul. A step by step tutorial is available on [HashiCorp Learn](https://learn.hashicorp.com/tutorials/consul/consul-template). ## Community Tools diff --git a/website/pages/docs/agent/kv.mdx b/website/pages/docs/dynamic-app-config/kv.mdx similarity index 100% rename from website/pages/docs/agent/kv.mdx rename to website/pages/docs/dynamic-app-config/kv.mdx diff --git a/website/pages/docs/internals/sessions.mdx b/website/pages/docs/dynamic-app-config/sessions.mdx similarity index 100% rename from website/pages/docs/internals/sessions.mdx rename to website/pages/docs/dynamic-app-config/sessions.mdx diff --git a/website/pages/docs/agent/watches.mdx b/website/pages/docs/dynamic-app-config/watches.mdx similarity index 100% rename from website/pages/docs/agent/watches.mdx rename to website/pages/docs/dynamic-app-config/watches.mdx diff --git a/website/pages/docs/enterprise/index.mdx b/website/pages/docs/enterprise/index.mdx index e8203631a8..37518712a2 100644 --- a/website/pages/docs/enterprise/index.mdx +++ b/website/pages/docs/enterprise/index.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Consul Enterprise -sidebar_title: Consul Enterprise +page_title: Enterprise Features +sidebar_title: Enterprise Features description: >- Consul Enterprise features a number of capabilities beyond the open source offering that may be beneficial in certain workflows. diff --git a/website/pages/docs/guides/acl-legacy.mdx b/website/pages/docs/guides/acl-legacy.mdx index 1761b5d26c..575a4b782f 100644 --- a/website/pages/docs/guides/acl-legacy.mdx +++ b/website/pages/docs/guides/acl-legacy.mdx @@ -1069,9 +1069,7 @@ name that starts with "admin". ## Advanced Topics - - -#### Outages and ACL Replication +#### Outages and ACL Replication ((#replication)) The Consul ACL system is designed with flexible rules to accommodate for an outage of the [`primary_datacenter`](/docs/agent/options#primary_datacenter) or networking @@ -1133,9 +1131,7 @@ using a process like this: 4. Rolling restart the agents in other datacenters and change their `primary_datacenter` configuration to the target datacenter. - - -#### Complete ACL Coverage in Consul 0.8 +#### Complete ACL Coverage in Consul 0.8 ((#version_8_acls)) Consul 0.8 added many more ACL policy types and brought ACL enforcement to Consul agents for the first time. To ease the transition to Consul 0.8 for existing ACL diff --git a/website/pages/docs/guides/consul-f5.mdx b/website/pages/docs/guides/consul-f5.mdx index e8b579bbd0..c309c3dbee 100644 --- a/website/pages/docs/guides/consul-f5.mdx +++ b/website/pages/docs/guides/consul-f5.mdx @@ -229,7 +229,7 @@ The above declaration does the following: - A pool named web_pool monitored by the http health monitor. - NGINX Pool members autodiscovered via Consul's [catalog HTTP API - endpoint](https://www.consul.io/api/catalog.html#list-nodes-for-service). + endpoint](/api-docs/catalog#list-nodes-for-service). For the `virtualAddresses` make sure to substitute your BIG-IP Virtual Server. diff --git a/website/pages/docs/guides/consul-splitting.mdx b/website/pages/docs/guides/consul-splitting.mdx index b7ce946490..a9b8cbfe3b 100644 --- a/website/pages/docs/guides/consul-splitting.mdx +++ b/website/pages/docs/guides/consul-splitting.mdx @@ -183,10 +183,10 @@ $ consul config write l7_config/api_service_defaults.json ``` Find more information on `service-defaults` configuration entries in the -[documentation](https://www.consul.io/docs/agent/config-entries/service-defaults.html). +[documentation](/docs/agent/config-entries/service-defaults). -> **Automation Tip:** To automate interactions with configuration entries, use -the HTTP API endpoint [`http://localhost:8500/v1/config`](https://www.consul.io/api/config.html). +the HTTP API endpoint [`http://localhost:8500/v1/config`](/api/config). ### Configuring the Service Resolver @@ -232,7 +232,7 @@ $ consul config write l7_config/api_service_resolver.json ``` Find more information about service resolvers in the -[documentation](https://www.consul.io/docs/agent/config-entries/service-resolver.html). +[documentation](/docs/agent/config-entries/service-resolver). ### Configure Service Splitting - 100% of traffic to Version 1 @@ -248,7 +248,7 @@ The configuration entry for service splitting has the `kind` of act on. The `splits` field takes an array which defines the different splits; in this example, there are only two splits; however, it is [possible to configure multiple sequential -splits](https://www.consul.io/docs/connect/l7-traffic-management.html#splitting). +splits](/docs/connect/l7-traffic-management#splitting). Each split has a `weight` which defines the percentage of traffic to distribute to each service subset. The total weights for all splits must equal 100. For @@ -457,4 +457,4 @@ In this guide, we walked you through the steps required to perform Canary deployments using traffic splitting and resolution. Find out more about L7 traffic management settings in the -[documentation](https://www.consul.io/docs/connect/l7-traffic-management.html). +[documentation](/docs/connect/l7-traffic-management). diff --git a/website/pages/docs/guides/kuberenetes-deployment.mdx b/website/pages/docs/guides/kuberenetes-deployment.mdx index 7ab3cef23f..050302a903 100644 --- a/website/pages/docs/guides/kuberenetes-deployment.mdx +++ b/website/pages/docs/guides/kuberenetes-deployment.mdx @@ -13,7 +13,7 @@ access to the Consul UI. ~> **Security Warning** This guide is not for production use. By default, the chart will install an insecure configuration of Consul. Please refer to the -[Kubernetes documentation](https://www.consul.io/docs/platform/k8s) +[Kubernetes documentation](/docs/platform/k8s) to determine how you can secure Consul on Kubernetes in production. Additionally, it is highly recommended to use a properly secured Kubernetes cluster or make sure that you understand and enable the recommended security @@ -22,7 +22,7 @@ features. To complete this guide successfully, you should have an existing Kubernetes cluster, and locally configured [Helm](https://helm.sh/docs/using_helm/) and [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/). If you do not have an -existing Kubernetes cluster you can use the [Minikube with Consul guide](https://www.consul.io/docs/guides/minikube.html) to get started +existing Kubernetes cluster you can use the [Minikube with Consul guide](/docs/guides/minikube) to get started with Consul on Kubernetes. ## Deploy Consul @@ -31,7 +31,7 @@ You can deploy a complete Consul datacenter using the official Helm chart. By default, the chart will install three Consul servers and client on all Kubernetes nodes. You can review the [Helm chart -values](https://www.consul.io/docs/platform/k8s/helm.html#configuration-values) +values](/docs/platform/k8s/helm#configuration-values) to learn more about the default settings. ### Download the Helm Chart @@ -45,7 +45,7 @@ $ git clone https://github.com/hashicorp/consul-helm.git You do not need to update the Helm chart before deploying Consul, it comes with reasonable defaults. Review the [Helm chart -documentation](https://www.consul.io/docs/platform/k8s/helm.html) to learn more +documentation](/docs/platform/k8s/helm) to learn more about the chart. ### Helm Install Consul @@ -81,7 +81,7 @@ Kubernetes cluster. To access the UI you will need to update the `ui` values in the Helm chart. Alternatively, if you do not wish to upgrade your cluster, you can set up [port -forwarding](https://www.consul.io/docs/platform/k8s/run.html#viewing-the-consul-ui) with +forwarding](/docs/platform/k8s/run#viewing-the-consul-ui) with `kubectl`. ### Create Values File @@ -111,7 +111,7 @@ server: ``` This file renames your datacenter, enables catalog sync, sets up a load -balancer service for the UI, and enables [affinity](https://www.consul.io/docs/platform/k8s/helm.html#v-server-affinity) to allow only one +balancer service for the UI, and enables [affinity](/docs/platform/k8s/helm#v-server-affinity) to allow only one Consul pod per Kubernetes node. The catalog sync parameters will allow you to see the Kubernetes services in the Consul UI. @@ -119,7 +119,7 @@ the Kubernetes services in the Consul UI. ### Initiate Rolling Upgrade Finally, initiate the -[upgrade](https://www.consul.io/docs/platform/k8s/run.html#upgrading-consul-on-kubernetes) +[upgrade](/docs/platform/k8s/run#upgrading-consul-on-kubernetes) with `helm upgrade` and the `-f` flag that passes in your new values file. This processes should also be quick, less than a minute. @@ -140,7 +140,7 @@ mollified-robin-consul-ui LoadBalancer 122.16.31.395 36.276.67.195 ``` Additionally, you can use `kubectl get pods` to view the new catalog sync -process. The [catalog sync](https://www.consul.io/docs/platform/k8s/helm.html#v-synccatalog) process will sync +process. The [catalog sync](/docs/platform/k8s/helm#v-synccatalog) process will sync Consul and Kubernetes services bidirectionally by default. @@ -190,7 +190,7 @@ gke-tier-2-cluster-default-pool-zrr0 172.20.0.20:8301 alive client 1.4.2 You can use the Consul HTTP API by communicating to the local agent running on the Kubernetes node. You can read the -[documentation](https://www.consul.io/docs/platform/k8s/run.html#accessing-the-consul-http-api) +[documentation](/docs/platform/k8s/run#accessing-the-consul-http-api) if you are interested in learning more about using the Consul HTTP API with Kubernetes. ## Summary @@ -199,4 +199,4 @@ In this guide, you deployed a Consul datacenter in Kubernetes using the official Helm chart. You also configured access to the Consul UI. To learn more about deploying applications that can use Consul's service discovery and Connect, read the example in the [Minikube with Consul -guide](https://www.consul.io/docs/guides/minikube.html#step-2-deploy-custom-applications). +guide](/docs/guides/minikube#step-2-deploy-custom-applications). diff --git a/website/pages/docs/guides/kubernetes-production-deploy.mdx b/website/pages/docs/guides/kubernetes-production-deploy.mdx index b1c726aa17..e4f4cc818a 100644 --- a/website/pages/docs/guides/kubernetes-production-deploy.mdx +++ b/website/pages/docs/guides/kubernetes-production-deploy.mdx @@ -51,7 +51,7 @@ can reference these secrets in the customized Helm chart values file. used with the official image, `hashicorp/consul-enterprise:1.5.0-ent`. - Enable - [encryption](https://www.consul.io/docs/agent/encryption.html#gossip-encryption) to secure gossip traffic within the Consul cluster. + [encryption](/docs/agent/encryption#gossip-encryption) to secure gossip traffic within the Consul cluster. ~> Note, depending on your environment, the previous secrets may not be necessary. @@ -87,10 +87,10 @@ parameters based on your specific environment requirements. For security, set the `bootstrapACLs` parameter to true. This will enable Kubernetes to initially setup Consul's [ACL -system](https://www.consul.io/docs/acl/acl-system.html). +system](/docs/acl/acl-system). Read the Consul Helm chart documentation to review all the [global -parameters](https://www.consul.io/docs/platform/k8s/helm.html#v-global). +parameters](/docs/platform/k8s/helm#v-global). ### Consul UI @@ -104,7 +104,7 @@ or other service type in Kubernetes to make it easier to access the UI. ### Consul Servers For production deployments, you will need to deploy [3 or 5 Consul -servers](https://www.consul.io/docs/internals/consensus.html#deployment-table) +servers](/docs/internals/consensus#deployment-table) for quorum and failure tolerance. For most deployments, 3 servers are adequate. In the server section set both `replicas` and `bootstrapExpect` to 3. This will @@ -126,7 +126,7 @@ license](https://www.hashicorp.com/products/consul/enterprise) you should reference the Kubernetes secret in the `enterpriseLicense` parameter. Read the Consul Helm chart documentation to review all the [server -parameters](https://www.consul.io/docs/platform/k8s/helm.html#v-server) +parameters](/docs/platform/k8s/helm#v-server) ### Consul Clients @@ -139,7 +139,7 @@ horizontal scalability. Enabling `grpc` enables the GRPC listener on port 8502 and exposes it to the host. It is required to use Consul Connect. Read the Consul Helm chart documentation to review all the [client -parameters](https://www.consul.io/docs/platform/k8s/helm.html#v-client) +parameters](/docs/platform/k8s/helm#v-client) ### Consul Connect Injection Security @@ -153,14 +153,14 @@ same token if you are only using a default service account. This setting is only necessary if you have enabled ACLs in the global section. Read more about the [Connect Inject -parameters](https://www.consul.io/docs/platform/k8s/helm.html#v-connectinject). +parameters](/docs/platform/k8s/helm#v-connectinject). ## Complete Example Your finished values file should resemble the following example. For more complete descriptions of all the available parameters see the `values.yaml` file provided with the Helm chart and the [reference -documentation](https://www.consul.io/docs/platform/k8s/helm.html). +documentation](/docs/platform/k8s/helm). ```yaml # Configure global settings in this section. diff --git a/website/pages/docs/guides/managing-acl-policies.mdx b/website/pages/docs/guides/managing-acl-policies.mdx index 667de435ff..9c3b596b1a 100644 --- a/website/pages/docs/guides/managing-acl-policies.mdx +++ b/website/pages/docs/guides/managing-acl-policies.mdx @@ -19,7 +19,7 @@ We expect operators to automate the policy and token generation process in produ We provide high-level recommendations in this guide, however, we will not describe the command by command token generation process. To learn how to create tokens, read the [ACL bootstrapping guide](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production). -This guide assumes the `default_policy` of `deny` is set on all agents, in accordance to the [security model documentation](https://www.consul.io/docs/internals/security.html#secure-configuration). +This guide assumes the `default_policy` of `deny` is set on all agents, in accordance to the [security model documentation](/docs/internals/security#secure-configuration). ## Security and Usability @@ -37,7 +37,7 @@ To discover the minimum privileges required for a specific operation, we have th First, focus on the data in your environment that needs to be secured. Ensure your sensitive data has policies that are specific and limited. Since policies can be combined to create tokens, you will usually write more policies for sensitive data. Sensitive data could be a specific application or a set of values in the key-value store. -Second, reference the Consul docs, both the [rules page](https://www.consul.io/docs/acl/acl-rules.html) and [API pages](https://www.consul.io/api), often to understand the required privileges for any given operation. +Second, reference the Consul docs, both the [rules page](/docs/acl/acl-rules) and [API pages](/api), often to understand the required privileges for any given operation. The rules documentation explains the 11 rule resources. The following four resource types are critical for any operating datacenter with ACLs enabled. @@ -148,4 +148,4 @@ The Operator example above illustrates creating policies on the security spectru ## Next Steps -After setting up access control processes, you will need to implement a token rotation policy. If you are using third-party tool to generate tokens, such as Vault, Consul ACL tokens will adhere to the TTLs set in that third party tool. If you are manually rotating tokens or need to revoke access, you can delete a token at any time with the [API](https://www.consul.io/api/acl/tokens.html#delete-a-token). +After setting up access control processes, you will need to implement a token rotation policy. If you are using third-party tool to generate tokens, such as Vault, Consul ACL tokens will adhere to the TTLs set in that third party tool. If you are manually rotating tokens or need to revoke access, you can delete a token at any time with the [API](/api/acl/tokens#delete-a-token). diff --git a/website/pages/docs/guides/servers.mdx b/website/pages/docs/guides/servers.mdx index db094394df..e4d700e1ac 100644 --- a/website/pages/docs/guides/servers.mdx +++ b/website/pages/docs/guides/servers.mdx @@ -51,7 +51,7 @@ option to add additional servers. ## Add a Server with Agent Configuration -In production environments, you should use the [agent configuration](https://www.consul.io/docs/agent/options.html) option, `retry_join`. `retry_join` can be used as a command line flag or in the agent configuration file. +In production environments, you should use the [agent configuration](/docs/agent/options) option, `retry_join`. `retry_join` can be used as a command line flag or in the agent configuration file. With the Consul CLI: @@ -70,7 +70,7 @@ In the agent configuration file: } ``` -[`retry_join`](https://www.consul.io/docs/agent/options.html#retry-join) +[`retry_join`](https://www.consul.io/docs/agent/options#retry-join) will ensure that if any server loses connection with the cluster for any reason, including the node restarting, it can rejoin when it comes back. In additon to working with static IPs, it diff --git a/website/pages/docs/agent/cloud-auto-join.mdx b/website/pages/docs/install/cloud-auto-join.mdx similarity index 99% rename from website/pages/docs/agent/cloud-auto-join.mdx rename to website/pages/docs/install/cloud-auto-join.mdx index dc787a3149..01f5e8ae82 100644 --- a/website/pages/docs/agent/cloud-auto-join.mdx +++ b/website/pages/docs/install/cloud-auto-join.mdx @@ -181,10 +181,7 @@ $ consul agent -retry-join "provider=softlayer datacenter=... tag_value=... user ``` - `provider` (required) - the name of the provider ("softlayer" in this case). -- - - datacenter - (required) - the name of the datacenter to auto-join in. +- `datacenter ((#sl_datacenter)) (required) - the name of the datacenter to auto-join in. - `tag_value` (required) - the value of the tag to auto-join on. - `username` (required) - the username to use for auth. - `api_key` (required) - the api key to use for auth. diff --git a/website/pages/docs/glossary.mdx b/website/pages/docs/install/glossary.mdx similarity index 99% rename from website/pages/docs/glossary.mdx rename to website/pages/docs/install/glossary.mdx index e5137a4b37..6225bf05d1 100644 --- a/website/pages/docs/glossary.mdx +++ b/website/pages/docs/install/glossary.mdx @@ -1,6 +1,6 @@ --- layout: docs -page_title: Consul Glossary +page_title: Glossary sidebar_title: Glossary description: >- This page collects brief definitions of some of the technical terms used in diff --git a/website/pages/docs/install/index.mdx b/website/pages/docs/install/index.mdx index 6fac209216..3846fe0304 100644 --- a/website/pages/docs/install/index.mdx +++ b/website/pages/docs/install/index.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Install Consul -sidebar_title: Installing Consul +page_title: Get Started +sidebar_title: Get Started description: |- Installing Consul is simple. You can download a precompiled binary, compile from source or run on Kubernetes. This page details these methods. diff --git a/website/pages/docs/install/performance.mdx b/website/pages/docs/install/performance.mdx index b05ed3937d..3798b07041 100644 --- a/website/pages/docs/install/performance.mdx +++ b/website/pages/docs/install/performance.mdx @@ -17,9 +17,7 @@ are generally I/O bound for writes because the underlying Raft log store perform to disk every time an entry is appended. Servers are generally CPU bound for reads since reads work from a fully in-memory data store that is optimized for concurrent access. - - -## Minimum Server Requirements +## Minimum Server Requirements ((#minimum)) In Consul 0.7, the default server [performance parameters](/docs/agent/options#performance) were tuned to allow Consul to run reliably (but relatively slowly) on a server cluster of three @@ -43,9 +41,7 @@ The default performance configuration is equivalent to this: } ``` - - -## Production Server Requirements +## Production Server Requirements ((#production)) When running Consul 0.7 and later in production, it is recommended to configure the server [performance parameters](/docs/agent/options#performance) back to Consul's original @@ -110,7 +106,7 @@ Here are some general recommendations: and CPU until leader elections stabilize, and in Consul 0.7 or later the [performance parameters](/docs/agent/options#performance) configuration now gives you tools to trade off performance instead of upsizing servers. You can use the [`consul.raft.leader.lastContact` - telemetry](/docs/agent/telemetry#last-contact) to observe how the Raft timing is + telemetry](/docs/agent/telemetry#leadership-changes) to observe how the Raft timing is performing and guide the decision to de-tune Raft performance or add more powerful servers. @@ -157,7 +153,9 @@ Consul is write limited by disk I/O and read limited by CPU. Memory requirements For **write-heavy** workloads, the total RAM available for overhead must approximately be equal to - RAM NEEDED = number of keys * average key size * 2-3x +``` +RAM NEEDED = number of keys * average key size * 2-3x +``` Since writes must be synced to disk (persistent storage) on a quorum of servers before they are committed, deploying a disk with high write throughput (or an SSD) will enhance performance on the write side. ([Documentation](/docs/agent/options#_data_dir)) diff --git a/website/pages/docs/internals/acl.mdx b/website/pages/docs/internals/acl.mdx index 59b9269fd4..9f85926dd2 100644 --- a/website/pages/docs/internals/acl.mdx +++ b/website/pages/docs/internals/acl.mdx @@ -8,11 +8,9 @@ description: >- them. It is very similar to AWS IAM in many ways. --- -# ACL System +# ACL System ((#version_8_acls)) This content has been moved into the [ACL Guide](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production). - - See [Complete ACL Coverage in Consul 0.8](/docs/acl/acl-legacy) for details about ACL changes in Consul 0.8 and later. diff --git a/website/pages/intro/index.mdx b/website/pages/docs/intro/index.mdx similarity index 97% rename from website/pages/intro/index.mdx rename to website/pages/docs/intro/index.mdx index c4b7df2b44..a0a352ff1e 100644 --- a/website/pages/intro/index.mdx +++ b/website/pages/docs/intro/index.mdx @@ -1,7 +1,7 @@ --- -layout: intro -page_title: Introduction -sidebar_title: What is Consul? +layout: docs +page_title: Intro to Consul +sidebar_title: Intro to Consul description: >- Welcome to the intro guide to Consul! This guide is the best place to start with Consul. We cover what Consul is, what problems it can solve, how it @@ -106,5 +106,5 @@ forward the request to the remote datacenter and return the result. - See [how Consul compares to other software](/intro/vs) to assess how it fits into your existing infrastructure. -- Continue onwards with the [getting started guide](https://learn.hashicorp.com/tutorials/consul/get-started-install) +- Continue onwards with the [getting started guide](https://learn.hashicorp.com/tutorials/consul/get-started-install). to get Consul up and running. diff --git a/website/pages/intro/vs/chef-puppet.mdx b/website/pages/docs/intro/vs/chef-puppet.mdx similarity index 99% rename from website/pages/intro/vs/chef-puppet.mdx rename to website/pages/docs/intro/vs/chef-puppet.mdx index 5d0e0ac571..9382f28d0f 100644 --- a/website/pages/intro/vs/chef-puppet.mdx +++ b/website/pages/docs/intro/vs/chef-puppet.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: 'Consul vs. Chef, Puppet, etc.' sidebar_title: 'Chef, Puppet, etc.' description: >- diff --git a/website/pages/intro/vs/custom.mdx b/website/pages/docs/intro/vs/custom.mdx similarity index 99% rename from website/pages/intro/vs/custom.mdx rename to website/pages/docs/intro/vs/custom.mdx index ad3205f8dd..fe5b4921b6 100644 --- a/website/pages/intro/vs/custom.mdx +++ b/website/pages/docs/intro/vs/custom.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. Custom Solutions sidebar_title: Custom Solutions description: >- diff --git a/website/pages/intro/vs/eureka.mdx b/website/pages/docs/intro/vs/eureka.mdx similarity index 99% rename from website/pages/intro/vs/eureka.mdx rename to website/pages/docs/intro/vs/eureka.mdx index 43dc650977..0e1a900cf0 100644 --- a/website/pages/intro/vs/eureka.mdx +++ b/website/pages/docs/intro/vs/eureka.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. Eureka sidebar_title: Eureka description: >- diff --git a/website/pages/intro/vs/index.mdx b/website/pages/docs/intro/vs/index.mdx similarity index 98% rename from website/pages/intro/vs/index.mdx rename to website/pages/docs/intro/vs/index.mdx index d3cb7e39b7..fd4fa4dc64 100644 --- a/website/pages/intro/vs/index.mdx +++ b/website/pages/docs/intro/vs/index.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. Other Software sidebar_title: Consul vs. Other Software description: >- diff --git a/website/pages/intro/vs/istio.mdx b/website/pages/docs/intro/vs/istio.mdx similarity index 99% rename from website/pages/intro/vs/istio.mdx rename to website/pages/docs/intro/vs/istio.mdx index cbc3b5741e..bdbb215dc2 100644 --- a/website/pages/intro/vs/istio.mdx +++ b/website/pages/docs/intro/vs/istio.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. Istio sidebar_title: Istio description: >- diff --git a/website/pages/intro/vs/nagios-sensu.mdx b/website/pages/docs/intro/vs/nagios-sensu.mdx similarity index 99% rename from website/pages/intro/vs/nagios-sensu.mdx rename to website/pages/docs/intro/vs/nagios-sensu.mdx index 4fbebb7cf2..55eb3ea0d5 100644 --- a/website/pages/intro/vs/nagios-sensu.mdx +++ b/website/pages/docs/intro/vs/nagios-sensu.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: 'Consul vs. Nagios, Sensu' sidebar_title: 'Nagios, Sensu' description: >- diff --git a/website/pages/intro/vs/proxies.mdx b/website/pages/docs/intro/vs/proxies.mdx similarity index 99% rename from website/pages/intro/vs/proxies.mdx rename to website/pages/docs/intro/vs/proxies.mdx index c79b04f9f0..cee0c4bde8 100644 --- a/website/pages/intro/vs/proxies.mdx +++ b/website/pages/docs/intro/vs/proxies.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. Envoy and Other Proxies sidebar_title: Envoy and Other Proxies description: >- diff --git a/website/pages/intro/vs/serf.mdx b/website/pages/docs/intro/vs/serf.mdx similarity index 99% rename from website/pages/intro/vs/serf.mdx rename to website/pages/docs/intro/vs/serf.mdx index 995bbcb851..8b81904a0d 100644 --- a/website/pages/intro/vs/serf.mdx +++ b/website/pages/docs/intro/vs/serf.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. Serf sidebar_title: Serf description: >- diff --git a/website/pages/intro/vs/skydns.mdx b/website/pages/docs/intro/vs/skydns.mdx similarity index 99% rename from website/pages/intro/vs/skydns.mdx rename to website/pages/docs/intro/vs/skydns.mdx index 909e4a5225..c645014a19 100644 --- a/website/pages/intro/vs/skydns.mdx +++ b/website/pages/docs/intro/vs/skydns.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. SkyDNS sidebar_title: SkyDNS description: >- diff --git a/website/pages/intro/vs/smartstack.mdx b/website/pages/docs/intro/vs/smartstack.mdx similarity index 99% rename from website/pages/intro/vs/smartstack.mdx rename to website/pages/docs/intro/vs/smartstack.mdx index 064d04fb67..816a638a04 100644 --- a/website/pages/intro/vs/smartstack.mdx +++ b/website/pages/docs/intro/vs/smartstack.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: Consul vs. SmartStack sidebar_title: SmartStack description: >- diff --git a/website/pages/intro/vs/zookeeper.mdx b/website/pages/docs/intro/vs/zookeeper.mdx similarity index 99% rename from website/pages/intro/vs/zookeeper.mdx rename to website/pages/docs/intro/vs/zookeeper.mdx index b4028a3fd4..4cdd68a214 100644 --- a/website/pages/intro/vs/zookeeper.mdx +++ b/website/pages/docs/intro/vs/zookeeper.mdx @@ -1,5 +1,5 @@ --- -layout: intro +layout: docs page_title: 'Consul vs. ZooKeeper, doozerd, etcd' sidebar_title: 'ZooKeeper, doozerd, etcd' description: >- diff --git a/website/pages/docs/k8s/connect/ingress-gateways.mdx b/website/pages/docs/k8s/connect/ingress-gateways.mdx index 148c2af38b..a310d203f6 100644 --- a/website/pages/docs/k8s/connect/ingress-gateways.mdx +++ b/website/pages/docs/k8s/connect/ingress-gateways.mdx @@ -78,7 +78,7 @@ $ kubectl port-forward consul-server-0 8500 & If TLS is enabled use port 8501. --> Download the latest Consul binary from [Downloads](/downloads.html). +-> Download the latest Consul binary from [Downloads](/downloads). [https://releases.hashicorp.com/consul/](https://releases.hashicorp.com/consul/) If TLS is enabled set: diff --git a/website/pages/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx b/website/pages/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx index 1bc6494525..61c575a079 100644 --- a/website/pages/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx +++ b/website/pages/docs/k8s/installation/deployment-configurations/servers-outside-kubernetes.mdx @@ -77,7 +77,7 @@ externalServers: In most cases, `externalServers.hosts` will be the same as `client.join`, however, both keys must be set because they are used for different purposes: one for Serf LAN and the other for HTTPS connections. -Please see the [reference documentation](https://www.consul.io/docs/k8s/helm.html#v-externalservers-hosts) +Please see the [reference documentation](/docs/k8s/helm#v-externalservers-hosts) for more info. If your HTTPS port is different from Consul's default `8501`, you must also set `externalServers.httpsPort`. @@ -88,7 +88,7 @@ to help initialize ACL tokens for Consul clients and consul-k8s components for y ### Manually Bootstrapping ACLs -If you would like to call the [ACL bootstrapping API](/api/acl/acl.html#bootstrap-acls) yourself or if your cluster has already been bootstrapped with ACLs, +If you would like to call the [ACL bootstrapping API](/api/acl/acl#bootstrap-acls) yourself or if your cluster has already been bootstrapped with ACLs, you can provide the bootstrap token to the Helm chart. The Helm chart will then use this token to configure ACLs for Consul clients and any consul-k8s components you are enabling. @@ -118,7 +118,7 @@ The bootstrap token requires the following minimal permissions: Next, configure external servers. The Helm chart will use this configuration to talk to the Consul server's API to create policies, tokens, and an auth method. If you are [enabling Consul Connect](/docs/k8s/connect), `k8sAuthMethodHost` should be set to the address of your Kubernetes API server -so that the Consul servers can validate a Kubernetes service account token when using the [Kubernetes auth method](https://www.consul.io/docs/acl/auth-methods/kubernetes.html) +so that the Consul servers can validate a Kubernetes service account token when using the [Kubernetes auth method](/docs/acl/auth-methods/kubernetes) with `consul login`. ```yaml diff --git a/website/pages/docs/k8s/helm.mdx b/website/pages/docs/k8s/installation/helm.mdx similarity index 99% rename from website/pages/docs/k8s/helm.mdx rename to website/pages/docs/k8s/installation/helm.mdx index e181a18429..13879b8eec 100644 --- a/website/pages/docs/k8s/helm.mdx +++ b/website/pages/docs/k8s/installation/helm.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Helm Chart Reference - Kubernetes -sidebar_title: Helm Chart Reference +page_title: Install with Helm Chart +sidebar_title: Install with Helm Chart description: Reference for the Consul Helm chart. --- @@ -392,7 +392,7 @@ and consider if they're appropriate for your deployment. - `k8sAuthMethodHost` ((#v-externalservers-k8sauthmethodhost)) (`string: null`) - If you are setting `global.acls.manageSystemACLs` and `connectInject.enabled` to true, set `k8sAuthMethodHost` to the address of the Kubernetes API server. This address must be reachable from the Consul servers. - Please see the [Kubernetes Auth Method documentation](https://www.consul.io/docs/acl/auth-methods/kubernetes.html). Requires consul-k8s >= 0.14.0. + Please see the [Kubernetes Auth Method documentation](/docs/acl/auth-methods/kubernetes). Requires consul-k8s >= 0.14.0. You could retrieve this value from your `kubeconfig` by running: @@ -679,7 +679,7 @@ and consider if they're appropriate for your deployment. - `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.html#supported-versions) to ensure the version you are using is compatible with Consul. + - `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/) @@ -828,13 +828,13 @@ and consider if they're appropriate for your deployment. - `enabled` ((#v-meshgateway-enabled)) (`boolean: true`) - If mesh gateways are enabled, a Deployment will be created that runs gateways and Consul Connect will be configured to use gateways. - See [mesh gateway docs](https://www.consul.io/docs/connect/mesh_gateway.html). + See [mesh gateway docs](/docs/connect/mesh_gateway). Requirements: Consul 1.6.0+ and consul-k8s 0.15.0+ if using `global.acls.manageSystemACLs`. - `globalMode` ((#v-meshgateway-globalmode)) (`string: "local"`) - Globally configure which mode the gateway should run in. Can be set to either `"remote"`, `"local"`, `"none"` or `""` or `null`. - See [mesh gateway modes of operation](https://consul.io/docs/connect/mesh_gateway.html#modes-of-operation) for + See [mesh gateway modes of operation](/docs/connect/mesh_gateway#modes-of-operation) for a description of each mode. If set to anything other than `""` or `null`, `connectInject.centralConfig.enabled` should be set to true so that the global config will actually be used. diff --git a/website/pages/docs/k8s/installation/index.mdx b/website/pages/docs/k8s/installation/index.mdx index 4b6388195c..73c49c9afd 100644 --- a/website/pages/docs/k8s/installation/index.mdx +++ b/website/pages/docs/k8s/installation/index.mdx @@ -1,7 +1,7 @@ --- layout: docs page_title: Installing Consul on Kubernetes - Kubernetes -sidebar_title: Installation +sidebar_title: Get Started description: >- Consul can run directly on Kubernetes, both in server or client mode. For pure-Kubernetes workloads, this enables Consul to also exist purely within diff --git a/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx b/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx index 1d4e72accc..7135709706 100644 --- a/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx +++ b/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx @@ -220,8 +220,8 @@ The automatically generated federation secret contains: - **Consul server config** - This is a JSON snippet that must be used as part of the server config for secondary datacenters. It sets: - - [`primary_datacenter`](/docs/agent/options.html#primary_datacenter) to the name of the primary datacenter. - - [`primary_gateways`](/docs/agent/options.html#primary_gateways) to an array of IPs or hostnames + - [`primary_datacenter`](/docs/agent/options#primary_datacenter) to the name of the primary datacenter. + - [`primary_gateways`](/docs/agent/options#primary_gateways) to an array of IPs or hostnames for the mesh gateways in the primary datacenter. These are the addresses that Consul servers in secondary clusters will use to communicate with the primary datacenter. @@ -244,7 +244,7 @@ The automatically generated federation secret contains: ## Secondary Cluster(s) -With the primary cluster up and running, and the [federation secret](/docs/k8s/installation/multi-cluster#federation-secret) imported +With the primary cluster up and running, and the [federation secret](#federation-secret) imported into the secondary cluster, we can now install Consul into the secondary cluster. diff --git a/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx b/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx index b38029ad5f..7754606070 100644 --- a/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx +++ b/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx @@ -14,7 +14,7 @@ description: >- Consul datacenters running on non-kubernetes platforms like VMs or bare metal can be federated with Kubernetes datacenters. Just like with Kubernetes, one datacenter -must be the [primary](/docs/k8s/installation/multi-cluster#primary-datacenter). +must be the [primary](/docs/k8s/installation/multi-cluster/kubernetes#primary-datacenter). ## Kubernetes as the Primary @@ -78,7 +78,7 @@ $ consul tls cert create -client ==> Saved dc1-client-consul-0-key.pem ``` -Or use the [auto_encrypt](/docs/agent/options.html#auto_encrypt) feature. +Or use the [auto_encrypt](/docs/agent/options#auto_encrypt) feature. 1. The WAN addresses of the mesh gateways: @@ -175,7 +175,7 @@ ports { ## Kubernetes as the Secondary If you're running your primary datacenter on VMs then you'll need to manually -construct the [Federation Secret](#federation-secret) in order to federate +construct the [Federation Secret](/docs/k8s/installation/multi-cluster/kubernetes#federation-secret) in order to federate Kubernetes clusters as secondaries. -> Your VM cluster must be running mesh gateways, and have mesh gateway WAN diff --git a/website/pages/docs/k8s/operations/tls-on-existing-cluster.mdx b/website/pages/docs/k8s/tls-on-existing-cluster.mdx similarity index 96% rename from website/pages/docs/k8s/operations/tls-on-existing-cluster.mdx rename to website/pages/docs/k8s/tls-on-existing-cluster.mdx index a7cda254d5..3310fc8521 100644 --- a/website/pages/docs/k8s/operations/tls-on-existing-cluster.mdx +++ b/website/pages/docs/k8s/tls-on-existing-cluster.mdx @@ -1,8 +1,8 @@ --- layout: docs -page_title: Configuring TLS on an Existing Cluster -sidebar_title: Configuring TLS on an Existing Cluster -description: Configuring TLS on an existing Consul cluster running in Kubernetes +page_title: Configure TLS on an Existing Cluster +sidebar_title: Configure TLS on an Existing Cluster +description: Configure TLS on an existing Consul cluster running in Kubernetes --- # Configuring TLS on an Existing Cluster diff --git a/website/pages/docs/k8s/operations/uninstalling.mdx b/website/pages/docs/k8s/uninstall.mdx similarity index 91% rename from website/pages/docs/k8s/operations/uninstalling.mdx rename to website/pages/docs/k8s/uninstall.mdx index aa6ca5c1b4..a61527d44f 100644 --- a/website/pages/docs/k8s/operations/uninstalling.mdx +++ b/website/pages/docs/k8s/uninstall.mdx @@ -1,11 +1,11 @@ --- layout: docs -page_title: Uninstalling -sidebar_title: Uninstalling -description: Uninstalling Consul on Kubernetes +page_title: Uninstall +sidebar_title: Uninstall +description: Uninstall Consul on Kubernetes --- -# Uninstalling Consul +# Uninstall Consul Consul can be uninstalled via the `helm delete` command: diff --git a/website/pages/docs/k8s/operations/upgrading.mdx b/website/pages/docs/k8s/upgrade.mdx similarity index 95% rename from website/pages/docs/k8s/operations/upgrading.mdx rename to website/pages/docs/k8s/upgrade.mdx index 24684a6558..40d2d7e16d 100644 --- a/website/pages/docs/k8s/operations/upgrading.mdx +++ b/website/pages/docs/k8s/upgrade.mdx @@ -1,11 +1,11 @@ --- layout: docs -page_title: Upgrading -sidebar_title: Upgrading -description: Upgrading Consul on Kubernetes +page_title: Upgrade +sidebar_title: Upgrade +description: Upgrade Consul on Kubernetes --- -# Upgrading Consul on Kubernetes +# Upgrade Consul on Kubernetes To upgrade Consul on Kubernetes, we follow the same pattern as [generally upgrading Consul](/docs/upgrading), except we can use diff --git a/website/pages/docs/acl/acl-legacy.mdx b/website/pages/docs/security/acl/acl-legacy.mdx similarity index 100% rename from website/pages/docs/acl/acl-legacy.mdx rename to website/pages/docs/security/acl/acl-legacy.mdx diff --git a/website/pages/docs/acl/acl-migrate-tokens.mdx b/website/pages/docs/security/acl/acl-migrate-tokens.mdx similarity index 100% rename from website/pages/docs/acl/acl-migrate-tokens.mdx rename to website/pages/docs/security/acl/acl-migrate-tokens.mdx diff --git a/website/pages/docs/acl/acl-rules.mdx b/website/pages/docs/security/acl/acl-rules.mdx similarity index 100% rename from website/pages/docs/acl/acl-rules.mdx rename to website/pages/docs/security/acl/acl-rules.mdx diff --git a/website/pages/docs/acl/acl-system.mdx b/website/pages/docs/security/acl/acl-system.mdx similarity index 99% rename from website/pages/docs/acl/acl-system.mdx rename to website/pages/docs/security/acl/acl-system.mdx index 92a464a939..a0a0579c96 100644 --- a/website/pages/docs/acl/acl-system.mdx +++ b/website/pages/docs/security/acl/acl-system.mdx @@ -75,7 +75,7 @@ An ACL policy is a named set of rules and is composed of the following elements: - **Datacenters** - A list of datacenters the policy is valid within. - **Namespace** - - The namespace this policy resides within. (Added in Consul Enterprise 1.7.0) --> **Consul Enterprise Namespacing** - Rules defined in a policy in any namespace other than `default` will be [restricted](/docs/acl/acl-rules#namespace-rules-enterprise) to being able to grant a subset of the overall privileges and only affecting that single namespace. +-> **Consul Enterprise Namespacing** - Rules defined in a policy in any namespace other than `default` will be [restricted](/docs/acl/acl-rules#namespace-rules) to being able to grant a subset of the overall privileges and only affecting that single namespace. #### Builtin Policies @@ -292,7 +292,7 @@ system, or accessing Consul in special situations: | ------------------------------------------------------------------------ | ---------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | [`acl.tokens.agent_master`](/docs/agent/options#acl_tokens_agent_master) | `OPTIONAL` | `OPTIONAL` | Special token that can be used to access [Agent API](/api/agent) when remote bearer token resolution fails; used for setting up the cluster such as doing initial join operations, see the [ACL Agent Master Token](#acl-agent-master-token) section for more details | | [`acl.tokens.agent`](/docs/agent/options#acl_tokens_agent) | `OPTIONAL` | `OPTIONAL` | Special token that is used for an agent's internal operations, see the [ACL Agent Token](#acl-agent-token) section for more details | -| [`acl.tokens.master`](/docs/agent/options#acl_tokens_master) | `OPTIONAL` | `N/A` | Special token used to bootstrap the ACL system, check the [Bootstrapping ACLs](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production) tutorial for more details | +| [`acl.tokens.master`](/docs/agent/options#acl_tokens_master) | `OPTIONAL` | `N/A` | Special token used to bootstrap the ACL system, check the [Bootstrapping ACLs](https://learn.hashicorp.com/tutorials/consul/access-control-setup-production) tutorial for more details | | [`acl.tokens.default`](/docs/agent/options#acl_tokens_default) | `OPTIONAL` | `OPTIONAL` | Default token to use for client requests where no token is supplied; this is often configured with read-only access to services to enable DNS service discovery on agents | All of these tokens except the `master` token can all be introduced or updated via the [/v1/agent/token API](/api/agent#update-acl-tokens). diff --git a/website/pages/docs/acl/auth-methods/index.mdx b/website/pages/docs/security/acl/auth-methods/index.mdx similarity index 100% rename from website/pages/docs/acl/auth-methods/index.mdx rename to website/pages/docs/security/acl/auth-methods/index.mdx diff --git a/website/pages/docs/acl/auth-methods/jwt.mdx b/website/pages/docs/security/acl/auth-methods/jwt.mdx similarity index 100% rename from website/pages/docs/acl/auth-methods/jwt.mdx rename to website/pages/docs/security/acl/auth-methods/jwt.mdx diff --git a/website/pages/docs/acl/auth-methods/kubernetes.mdx b/website/pages/docs/security/acl/auth-methods/kubernetes.mdx similarity index 100% rename from website/pages/docs/acl/auth-methods/kubernetes.mdx rename to website/pages/docs/security/acl/auth-methods/kubernetes.mdx diff --git a/website/pages/docs/acl/auth-methods/oidc.mdx b/website/pages/docs/security/acl/auth-methods/oidc.mdx similarity index 100% rename from website/pages/docs/acl/auth-methods/oidc.mdx rename to website/pages/docs/security/acl/auth-methods/oidc.mdx diff --git a/website/pages/docs/acl/index.mdx b/website/pages/docs/security/acl/index.mdx similarity index 100% rename from website/pages/docs/acl/index.mdx rename to website/pages/docs/security/acl/index.mdx diff --git a/website/pages/docs/agent/encryption.mdx b/website/pages/docs/security/encryption.mdx similarity index 100% rename from website/pages/docs/agent/encryption.mdx rename to website/pages/docs/security/encryption.mdx diff --git a/website/pages/docs/internals/security.mdx b/website/pages/docs/security/index.mdx similarity index 99% rename from website/pages/docs/internals/security.mdx rename to website/pages/docs/security/index.mdx index d6bd6dfae7..74ddfbc5bd 100644 --- a/website/pages/docs/internals/security.mdx +++ b/website/pages/docs/security/index.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Security Model -sidebar_title: Security Model +page_title: Security +sidebar_title: Security description: >- Consul relies on both a lightweight gossip mechanism and an RPC system to provide various features. Both of the systems have different security diff --git a/website/pages/docs/common-errors.mdx b/website/pages/docs/troubleshoot/common-errors.mdx similarity index 100% rename from website/pages/docs/common-errors.mdx rename to website/pages/docs/troubleshoot/common-errors.mdx diff --git a/website/pages/docs/faq.mdx b/website/pages/docs/troubleshoot/faq.mdx similarity index 100% rename from website/pages/docs/faq.mdx rename to website/pages/docs/troubleshoot/faq.mdx diff --git a/website/pages/docs/upgrading/index.mdx b/website/pages/docs/upgrading/index.mdx index 4936c98440..11f1bb62cc 100644 --- a/website/pages/docs/upgrading/index.mdx +++ b/website/pages/docs/upgrading/index.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Upgrading Consul -sidebar_title: Upgrading +page_title: Upgrade Consul +sidebar_title: Upgrade description: >- Consul is meant to be a long-running agent on any nodes participating in a Consul cluster. These nodes consistently communicate with each other. As such, diff --git a/website/pages/downloads/index.jsx b/website/pages/downloads/index.jsx index 7e5b61d7fe..c925bcb808 100644 --- a/website/pages/downloads/index.jsx +++ b/website/pages/downloads/index.jsx @@ -13,7 +13,7 @@ export default function DownloadsPage({ releaseData }) { releaseData={releaseData} >

- » Download Consul Tools + » Download Consul Tools

Note for ARM users:

diff --git a/website/pages/intro/getting-started/agent.mdx b/website/pages/intro/getting-started/agent.mdx index 5e4ec3a194..0fa1a4f27e 100644 --- a/website/pages/intro/getting-started/agent.mdx +++ b/website/pages/intro/getting-started/agent.mdx @@ -120,7 +120,7 @@ $ dig @127.0.0.1 -p 8600 Armons-MacBook-Air.node.consul Armons-MacBook-Air.node.consul. 0 IN A 127.0.0.1 ``` -## Stopping the Agent +## Stopping the Agent ((#stopping)) You can use `Ctrl-C` (the interrupt signal) to gracefully halt the agent. After interrupting the agent, you should see it leave the cluster diff --git a/website/pages/use-cases/multi-platform-service-mesh.jsx b/website/pages/use-cases/multi-platform-service-mesh.jsx index 55cfbb6615..059e23affc 100644 --- a/website/pages/use-cases/multi-platform-service-mesh.jsx +++ b/website/pages/use-cases/multi-platform-service-mesh.jsx @@ -58,8 +58,7 @@ export default function MultiPlatformServiceMeshPage() { links: [ { text: 'Learn More', - url: - 'https://www.consul.io/docs/connect/l7-traffic-management.html', + url: '/docs/connect/l7-traffic-management', type: 'outbound', }, ], @@ -91,7 +90,7 @@ Splits = [ links: [ { text: 'Learn More', - url: 'https://www.consul.io/docs/platform/k8s/run.html', + url: '/docs/platform/k8s/run', type: 'inbound', }, ], @@ -147,7 +146,7 @@ Splits = [ links: [ { text: 'Learn More', - url: 'https://www.consul.io/docs/enterprise/index.html', + url: '/docs/enterprise', type: 'inbound', }, ], diff --git a/website/pages/use-cases/network-infrastructure-automation.jsx b/website/pages/use-cases/network-infrastructure-automation.jsx index 94ae4accc9..b90443b685 100644 --- a/website/pages/use-cases/network-infrastructure-automation.jsx +++ b/website/pages/use-cases/network-infrastructure-automation.jsx @@ -37,7 +37,7 @@ export default function NetworkInfrastructureAutomationPage() { links: [ { text: 'Read More', - url: 'https://www.consul.io/docs/partnerships/index.html', + url: '/docs/partnerships', type: 'inbound', }, ], diff --git a/website/pages/use-cases/service-discovery-and-health-checking.jsx b/website/pages/use-cases/service-discovery-and-health-checking.jsx index bdced50f18..6bc3fea81e 100644 --- a/website/pages/use-cases/service-discovery-and-health-checking.jsx +++ b/website/pages/use-cases/service-discovery-and-health-checking.jsx @@ -145,7 +145,7 @@ Judiths-MBP.lan.node.dc1.consul. 0 IN TXT "consul-network-segment=" links: [ { text: 'Read More', - url: 'https://www.consul.io/docs/enterprise/index.html', + url: '/docs/enterprise', type: 'inbound', }, ], From 31ad6e39caecf52045189c5fef772587d9926410 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Tue, 1 Sep 2020 19:13:11 +0100 Subject: [PATCH 033/122] ui: Improved filtering and sorting (#8591) --- .../consul-intention-search-bar/index.hbs | 74 +++++++ .../consul-intention-search-bar/index.js | 5 + .../consul-node-search-bar/index.hbs | 65 ++++++ .../consul-node-search-bar/index.js | 5 + .../consul-nspace-search-bar/index.hbs | 37 ++++ .../consul-nspace-search-bar/index.js | 5 + .../consul-policy-search-bar/index.hbs | 77 +++++++ .../consul-policy-search-bar/index.js | 3 + .../consul-role-search-bar/index.hbs | 43 ++++ .../consul-role-search-bar/index.js | 3 + .../index.hbs | 86 ++++++++ .../index.js | 5 + .../consul-service-search-bar/index.hbs | 111 ++++++++++ .../consul-service-search-bar/index.js | 5 + .../consul-token-search-bar/index.hbs | 57 +++++ .../consul-token-search-bar/index.js | 3 + .../consul-upstream-search-bar/index.hbs | 62 ++++++ .../consul-upstream-search-bar/index.js | 5 + ui-v2/app/components/popover-select/index.js | 2 +- .../popover-select/option/index.hbs | 1 + .../app/controllers/dc/acls/policies/index.js | 2 + ui-v2/app/controllers/dc/intentions/index.js | 2 + ui-v2/app/controllers/dc/nodes/index.js | 1 + ui-v2/app/controllers/dc/services/index.js | 10 + .../controllers/dc/services/show/instances.js | 10 + .../controllers/dc/services/show/services.js | 12 ++ .../controllers/dc/services/show/upstreams.js | 12 ++ ui-v2/app/filter/predicates/intention.js | 9 + ui-v2/app/filter/predicates/node.js | 8 + ui-v2/app/filter/predicates/policy.js | 28 +++ .../app/filter/predicates/service-instance.js | 19 ++ ui-v2/app/filter/predicates/service.js | 67 ++++++ ui-v2/app/filter/predicates/token.js | 21 ++ ui-v2/app/helpers/filter-predicate.js | 9 + ui-v2/app/helpers/policy/group.js | 3 +- ui-v2/app/initializers/sort.js | 2 + ui-v2/app/models/policy.js | 6 + ui-v2/app/models/service-instance.js | 46 +++- ui-v2/app/models/token.js | 5 + ui-v2/app/services/filter.js | 23 ++ ui-v2/app/services/repository/intention.js | 2 +- .../app/sort/comparators/service-instance.js | 23 ++ .../styles/base/components/buttons/index.scss | 3 - .../base/components/popover-menu/skin.scss | 1 - .../styles/base/icons/icon-placeholders.scss | 28 +++ ui-v2/app/styles/components/app-view.scss | 4 +- ui-v2/app/styles/components/filter-bar.scss | 15 +- .../styles/components/filter-bar/layout.scss | 36 +++- .../styles/components/filter-bar/skin.scss | 3 - .../main-nav-horizontal/layout.scss | 3 + .../app/styles/components/popover-select.scss | 58 ++++++ .../app/templates/dc/acls/policies/index.hbs | 195 ++++++++--------- ui-v2/app/templates/dc/acls/roles/index.hbs | 45 +--- ui-v2/app/templates/dc/acls/tokens/index.hbs | 196 ++++++++---------- ui-v2/app/templates/dc/intentions/index.hbs | 90 +++----- ui-v2/app/templates/dc/kv/index.hbs | 82 ++++---- ui-v2/app/templates/dc/nodes/index.hbs | 66 ++---- ui-v2/app/templates/dc/nspaces/index.hbs | 42 +--- ui-v2/app/templates/dc/services/index.hbs | 73 +++---- .../templates/dc/services/show/instances.hbs | 37 +++- .../dc/services/show/intentions/index.hbs | 88 +++----- .../templates/dc/services/show/services.hbs | 64 ++++-- .../templates/dc/services/show/upstreams.hbs | 53 ++++- .../dc/acls/policies/sorting.feature | 72 +++---- .../tests/acceptance/dc/nodes/sorting.feature | 146 ++++++------- .../dc/services/show/upstreams.feature | 1 + .../acceptance/dc/services/sorting.feature | 32 +-- ui-v2/tests/pages/dc/acls/policies/index.js | 2 +- ui-v2/tests/pages/dc/acls/roles/index.js | 2 +- ui-v2/tests/pages/dc/acls/tokens/index.js | 2 +- ui-v2/tests/pages/dc/intentions/index.js | 2 +- ui-v2/tests/pages/dc/nodes/index.js | 2 +- ui-v2/tests/pages/dc/nspaces/index.js | 2 +- ui-v2/tests/pages/dc/services/index.js | 2 +- ui-v2/tests/pages/dc/services/show.js | 2 +- .../unit/filter/predicates/intention-test.js | 43 ++++ .../unit/filter/predicates/service-test.js | 171 +++++++++++++++ 77 files changed, 1905 insertions(+), 732 deletions(-) create mode 100644 ui-v2/app/components/consul-intention-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-intention-search-bar/index.js create mode 100644 ui-v2/app/components/consul-node-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-node-search-bar/index.js create mode 100644 ui-v2/app/components/consul-nspace-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-nspace-search-bar/index.js create mode 100644 ui-v2/app/components/consul-policy-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-policy-search-bar/index.js create mode 100644 ui-v2/app/components/consul-role-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-role-search-bar/index.js create mode 100644 ui-v2/app/components/consul-service-instance-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-service-instance-search-bar/index.js create mode 100644 ui-v2/app/components/consul-service-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-service-search-bar/index.js create mode 100644 ui-v2/app/components/consul-token-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-token-search-bar/index.js create mode 100644 ui-v2/app/components/consul-upstream-search-bar/index.hbs create mode 100644 ui-v2/app/components/consul-upstream-search-bar/index.js create mode 100644 ui-v2/app/controllers/dc/services/show/services.js create mode 100644 ui-v2/app/controllers/dc/services/show/upstreams.js create mode 100644 ui-v2/app/filter/predicates/intention.js create mode 100644 ui-v2/app/filter/predicates/node.js create mode 100644 ui-v2/app/filter/predicates/policy.js create mode 100644 ui-v2/app/filter/predicates/service-instance.js create mode 100644 ui-v2/app/filter/predicates/service.js create mode 100644 ui-v2/app/filter/predicates/token.js create mode 100644 ui-v2/app/helpers/filter-predicate.js create mode 100644 ui-v2/app/services/filter.js create mode 100644 ui-v2/app/sort/comparators/service-instance.js create mode 100644 ui-v2/tests/unit/filter/predicates/intention-test.js create mode 100644 ui-v2/tests/unit/filter/predicates/service-test.js diff --git a/ui-v2/app/components/consul-intention-search-bar/index.hbs b/ui-v2/app/components/consul-intention-search-bar/index.hbs new file mode 100644 index 0000000000..c848f9a51f --- /dev/null +++ b/ui-v2/app/components/consul-intention-search-bar/index.hbs @@ -0,0 +1,74 @@ +
+ +
+ + + + Permissions + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + +{{/let}} + + +
+
+ + + + {{#let (from-entries (array + (array "Action:asc" "Allow to Deny") + (array "Action:desc" "Deny to Allow") + (array "SourceName:asc" "Source: A to Z") + (array "SourceName:desc" "Source: Z to A") + (array "DestinationName:asc" "Destination: A to Z") + (array "DestinationName:desc" "Destination: Z to A") + (array "Precedence:asc" "Precedence: Ascending") + (array "Precedence:desc" "Precedence: Descending") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + + + + + + + + + +{{/let}} + + +
+ \ No newline at end of file diff --git a/ui-v2/app/components/consul-intention-search-bar/index.js b/ui-v2/app/components/consul-intention-search-bar/index.js new file mode 100644 index 0000000000..4798652642 --- /dev/null +++ b/ui-v2/app/components/consul-intention-search-bar/index.js @@ -0,0 +1,5 @@ +import Component from '@ember/component'; + +export default Component.extend({ + tagName: '', +}); diff --git a/ui-v2/app/components/consul-node-search-bar/index.hbs b/ui-v2/app/components/consul-node-search-bar/index.hbs new file mode 100644 index 0000000000..82814f07aa --- /dev/null +++ b/ui-v2/app/components/consul-node-search-bar/index.hbs @@ -0,0 +1,65 @@ +
+ +
+ + + + Health Status + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + +{{/let}} + + +
+
+ + + + {{#let (from-entries (array + (array "Node:asc" "A to Z") + (array "Node:desc" "Z to A") + (array "Status:asc" "Unhealthy to Healthy") + (array "Status:desc" "Healthy to Unhealthy") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + +{{/let}} + + +
+ \ No newline at end of file diff --git a/ui-v2/app/components/consul-node-search-bar/index.js b/ui-v2/app/components/consul-node-search-bar/index.js new file mode 100644 index 0000000000..4798652642 --- /dev/null +++ b/ui-v2/app/components/consul-node-search-bar/index.js @@ -0,0 +1,5 @@ +import Component from '@ember/component'; + +export default Component.extend({ + tagName: '', +}); diff --git a/ui-v2/app/components/consul-nspace-search-bar/index.hbs b/ui-v2/app/components/consul-nspace-search-bar/index.hbs new file mode 100644 index 0000000000..f7a5beca93 --- /dev/null +++ b/ui-v2/app/components/consul-nspace-search-bar/index.hbs @@ -0,0 +1,37 @@ +
+ +
+ + + + {{#let (from-entries (array + (array "Name:asc" "A to Z") + (array "Name:desc" "Z to A") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + +{{/let}} + + +
+ \ No newline at end of file diff --git a/ui-v2/app/components/consul-nspace-search-bar/index.js b/ui-v2/app/components/consul-nspace-search-bar/index.js new file mode 100644 index 0000000000..4798652642 --- /dev/null +++ b/ui-v2/app/components/consul-nspace-search-bar/index.js @@ -0,0 +1,5 @@ +import Component from '@ember/component'; + +export default Component.extend({ + tagName: '', +}); diff --git a/ui-v2/app/components/consul-policy-search-bar/index.hbs b/ui-v2/app/components/consul-policy-search-bar/index.hbs new file mode 100644 index 0000000000..88e3482005 --- /dev/null +++ b/ui-v2/app/components/consul-policy-search-bar/index.hbs @@ -0,0 +1,77 @@ +
+ +
+ + + + Datacenters + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + {{#each dcs as |dc|}} + + {{/each}} +{{/let}} + + + + + + + Type + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + +{{/let}} + + +
+
+ + + + {{#let (from-entries (array + (array "Name:asc" "A to Z") + (array "Name:desc" "Z to A") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + +{{/let}} + + +
+ diff --git a/ui-v2/app/components/consul-policy-search-bar/index.js b/ui-v2/app/components/consul-policy-search-bar/index.js new file mode 100644 index 0000000000..5570647734 --- /dev/null +++ b/ui-v2/app/components/consul-policy-search-bar/index.js @@ -0,0 +1,3 @@ +import Component from '@ember/component'; + +export default Component.extend({}); diff --git a/ui-v2/app/components/consul-role-search-bar/index.hbs b/ui-v2/app/components/consul-role-search-bar/index.hbs new file mode 100644 index 0000000000..359f672c44 --- /dev/null +++ b/ui-v2/app/components/consul-role-search-bar/index.hbs @@ -0,0 +1,43 @@ +
+ +
+ + + + {{#let (from-entries (array + (array "Name:asc" "A to Z") + (array "Name:desc" "Z to A") + (array "CreateIndex:desc" "Newest to oldest") + (array "CreateIndex:asc" "Oldest to newest") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + +{{/let}} + + +
+ diff --git a/ui-v2/app/components/consul-role-search-bar/index.js b/ui-v2/app/components/consul-role-search-bar/index.js new file mode 100644 index 0000000000..5570647734 --- /dev/null +++ b/ui-v2/app/components/consul-role-search-bar/index.js @@ -0,0 +1,3 @@ +import Component from '@ember/component'; + +export default Component.extend({}); diff --git a/ui-v2/app/components/consul-service-instance-search-bar/index.hbs b/ui-v2/app/components/consul-service-instance-search-bar/index.hbs new file mode 100644 index 0000000000..95df8a2925 --- /dev/null +++ b/ui-v2/app/components/consul-service-instance-search-bar/index.hbs @@ -0,0 +1,86 @@ +
+ +
+ + + + Health Status + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + +{{/let}} + + +{{#if (gt sources.length 0)}} + + + + Source + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} +{{#each sources as |source|}} + +{{/each}} +{{/let}} + + +{{/if}} +
+
+ + + + {{#let (from-entries (array + (array "Name:asc" "A to Z") + (array "Name:desc" "Z to A") + (array "Status:asc" "Unhealthy to Healthy") + (array "Status:desc" "Healthy to Unhealthy") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + +{{/let}} + + +
+ diff --git a/ui-v2/app/components/consul-service-instance-search-bar/index.js b/ui-v2/app/components/consul-service-instance-search-bar/index.js new file mode 100644 index 0000000000..4798652642 --- /dev/null +++ b/ui-v2/app/components/consul-service-instance-search-bar/index.js @@ -0,0 +1,5 @@ +import Component from '@ember/component'; + +export default Component.extend({ + tagName: '', +}); diff --git a/ui-v2/app/components/consul-service-search-bar/index.hbs b/ui-v2/app/components/consul-service-search-bar/index.hbs new file mode 100644 index 0000000000..9013c715f0 --- /dev/null +++ b/ui-v2/app/components/consul-service-search-bar/index.hbs @@ -0,0 +1,111 @@ +
+ +
+ + + + Health Status + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + +{{/let}} + + + + + + Service Type + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + + + +{{/let}} + + +{{#if (gt sources.length 0)}} + + + + Source + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} +{{#each sources as |source|}} + +{{/each}} +{{/let}} + + +{{/if}} +
+
+ + + + {{#let (from-entries (array + (array "Name:asc" "A to Z") + (array "Name:desc" "Z to A") + (array "Status:asc" "Unhealthy to Healthy") + (array "Status:desc" "Healthy to Unhealthy") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + +{{/let}} + + +
+ diff --git a/ui-v2/app/components/consul-service-search-bar/index.js b/ui-v2/app/components/consul-service-search-bar/index.js new file mode 100644 index 0000000000..4798652642 --- /dev/null +++ b/ui-v2/app/components/consul-service-search-bar/index.js @@ -0,0 +1,5 @@ +import Component from '@ember/component'; + +export default Component.extend({ + tagName: '', +}); diff --git a/ui-v2/app/components/consul-token-search-bar/index.hbs b/ui-v2/app/components/consul-token-search-bar/index.hbs new file mode 100644 index 0000000000..87fdfe9201 --- /dev/null +++ b/ui-v2/app/components/consul-token-search-bar/index.hbs @@ -0,0 +1,57 @@ +
+ +
+ + + + Type + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + +{{/let}} + + +
+
+ + + + {{#let (from-entries (array + (array "CreateTime:desc" "Newest to oldest") + (array "CreateTime:asc" "Oldest to newest") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + +{{/let}} + + +
+ diff --git a/ui-v2/app/components/consul-token-search-bar/index.js b/ui-v2/app/components/consul-token-search-bar/index.js new file mode 100644 index 0000000000..5570647734 --- /dev/null +++ b/ui-v2/app/components/consul-token-search-bar/index.js @@ -0,0 +1,3 @@ +import Component from '@ember/component'; + +export default Component.extend({}); diff --git a/ui-v2/app/components/consul-upstream-search-bar/index.hbs b/ui-v2/app/components/consul-upstream-search-bar/index.hbs new file mode 100644 index 0000000000..d8a4af87b9 --- /dev/null +++ b/ui-v2/app/components/consul-upstream-search-bar/index.hbs @@ -0,0 +1,62 @@ +
+ +
+ + + + Type + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + +{{/let}} + + +
+
+ + + + {{#let (from-entries (array + (array "Name:asc" "A to Z") + (array "Name:desc" "Z to A") + (array "Status:asc" "Unhealthy to Healthy") + (array "Status:desc" "Healthy to Unhealthy") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + +{{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + +{{/let}} + + +
+ diff --git a/ui-v2/app/components/consul-upstream-search-bar/index.js b/ui-v2/app/components/consul-upstream-search-bar/index.js new file mode 100644 index 0000000000..4798652642 --- /dev/null +++ b/ui-v2/app/components/consul-upstream-search-bar/index.js @@ -0,0 +1,5 @@ +import Component from '@ember/component'; + +export default Component.extend({ + tagName: '', +}); diff --git a/ui-v2/app/components/popover-select/index.js b/ui-v2/app/components/popover-select/index.js index 4324249454..5c63497fb2 100644 --- a/ui-v2/app/components/popover-select/index.js +++ b/ui-v2/app/components/popover-select/index.js @@ -6,7 +6,7 @@ export default Component.extend(Slotted, { tagName: '', dom: service('dom'), multiple: false, - subtractive: true, + subtractive: false, onchange: function() {}, addOption: function(option) { if (typeof this._options === 'undefined') { diff --git a/ui-v2/app/components/popover-select/option/index.hbs b/ui-v2/app/components/popover-select/option/index.hbs index 8b2cca90ee..86119b1e92 100644 --- a/ui-v2/app/components/popover-select/option/index.hbs +++ b/ui-v2/app/components/popover-select/option/index.hbs @@ -1,6 +1,7 @@ {{#let components.MenuItem as |MenuItem|}} diff --git a/ui-v2/app/controllers/dc/acls/policies/index.js b/ui-v2/app/controllers/dc/acls/policies/index.js index f99cde37f3..54f6cac2d1 100644 --- a/ui-v2/app/controllers/dc/acls/policies/index.js +++ b/ui-v2/app/controllers/dc/acls/policies/index.js @@ -2,6 +2,8 @@ import Controller from '@ember/controller'; export default Controller.extend({ queryParams: { sortBy: 'sort', + dc: 'dc', + type: 'type', search: { as: 'filter', replace: true, diff --git a/ui-v2/app/controllers/dc/intentions/index.js b/ui-v2/app/controllers/dc/intentions/index.js index f99cde37f3..c22bc54cef 100644 --- a/ui-v2/app/controllers/dc/intentions/index.js +++ b/ui-v2/app/controllers/dc/intentions/index.js @@ -1,7 +1,9 @@ import Controller from '@ember/controller'; + export default Controller.extend({ queryParams: { sortBy: 'sort', + access: 'access', search: { as: 'filter', replace: true, diff --git a/ui-v2/app/controllers/dc/nodes/index.js b/ui-v2/app/controllers/dc/nodes/index.js index a33e295d30..b3f36efaee 100644 --- a/ui-v2/app/controllers/dc/nodes/index.js +++ b/ui-v2/app/controllers/dc/nodes/index.js @@ -3,6 +3,7 @@ import Controller from '@ember/controller'; export default Controller.extend({ queryParams: { sortBy: 'sort', + status: 'status', search: { as: 'filter', replace: true, diff --git a/ui-v2/app/controllers/dc/services/index.js b/ui-v2/app/controllers/dc/services/index.js index deebfa8e02..ad77eb5934 100644 --- a/ui-v2/app/controllers/dc/services/index.js +++ b/ui-v2/app/controllers/dc/services/index.js @@ -4,6 +4,9 @@ import { computed } from '@ember/object'; export default Controller.extend({ queryParams: { sortBy: 'sort', + status: 'status', + source: 'source', + type: 'type', search: { as: 'filter', }, @@ -13,4 +16,11 @@ export default Controller.extend({ return item.Kind !== 'connect-proxy'; }); }), + externalSources: computed('services', function() { + 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-v2/app/controllers/dc/services/show/instances.js b/ui-v2/app/controllers/dc/services/show/instances.js index a33e295d30..d8a4846dca 100644 --- a/ui-v2/app/controllers/dc/services/show/instances.js +++ b/ui-v2/app/controllers/dc/services/show/instances.js @@ -1,11 +1,21 @@ import Controller from '@ember/controller'; +import { computed } from '@ember/object'; export default Controller.extend({ queryParams: { sortBy: 'sort', + status: 'status', + source: 'source', search: { as: 'filter', replace: true, }, }, + externalSources: computed('items', function() { + 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/services/show/services.js b/ui-v2/app/controllers/dc/services/show/services.js new file mode 100644 index 0000000000..b71de3054d --- /dev/null +++ b/ui-v2/app/controllers/dc/services/show/services.js @@ -0,0 +1,12 @@ +import Controller from '@ember/controller'; + +export default Controller.extend({ + queryParams: { + sortBy: 'sort', + instance: 'instance', + search: { + as: 'filter', + replace: true, + }, + }, +}); diff --git a/ui-v2/app/controllers/dc/services/show/upstreams.js b/ui-v2/app/controllers/dc/services/show/upstreams.js new file mode 100644 index 0000000000..b71de3054d --- /dev/null +++ b/ui-v2/app/controllers/dc/services/show/upstreams.js @@ -0,0 +1,12 @@ +import Controller from '@ember/controller'; + +export default Controller.extend({ + queryParams: { + sortBy: 'sort', + instance: 'instance', + search: { + as: 'filter', + replace: true, + }, + }, +}); diff --git a/ui-v2/app/filter/predicates/intention.js b/ui-v2/app/filter/predicates/intention.js new file mode 100644 index 0000000000..fd7e7ffce0 --- /dev/null +++ b/ui-v2/app/filter/predicates/intention.js @@ -0,0 +1,9 @@ +export default () => ({ accesses = [] }) => item => { + if (accesses.length > 0) { + if (accesses.includes(item.Action)) { + return true; + } + return false; + } + return true; +}; diff --git a/ui-v2/app/filter/predicates/node.js b/ui-v2/app/filter/predicates/node.js new file mode 100644 index 0000000000..7effc140a1 --- /dev/null +++ b/ui-v2/app/filter/predicates/node.js @@ -0,0 +1,8 @@ +export default () => ({ statuses = [] }) => { + return item => { + if (statuses.length > 0 && !statuses.includes(item.Status)) { + return false; + } + return true; + }; +}; diff --git a/ui-v2/app/filter/predicates/policy.js b/ui-v2/app/filter/predicates/policy.js new file mode 100644 index 0000000000..f7bd68fd5e --- /dev/null +++ b/ui-v2/app/filter/predicates/policy.js @@ -0,0 +1,28 @@ +import setHelpers from 'mnemonist/set'; +export default () => ({ dcs = [], types = [] }) => { + const typeIncludes = ['global-management', 'standard'].reduce((prev, item) => { + prev[item] = types.includes(item); + return prev; + }, {}); + const selectedDcs = new Set(dcs); + return item => { + let type = true; + let dc = true; + if (types.length > 0) { + type = false; + if (typeIncludes['global-management'] && item.isGlobalManagement) { + type = true; + } + if (typeIncludes['standard'] && !item.isGlobalManagement) { + type = true; + } + } + if (dcs.length > 0) { + // if datacenters is undefined it means the policy is applicable to all datacenters + dc = + typeof item.Datacenters === 'undefined' || + setHelpers.intersectionSize(selectedDcs, new Set(item.Datacenters)) > 0; + } + return type && dc; + }; +}; diff --git a/ui-v2/app/filter/predicates/service-instance.js b/ui-v2/app/filter/predicates/service-instance.js new file mode 100644 index 0000000000..09d05c130b --- /dev/null +++ b/ui-v2/app/filter/predicates/service-instance.js @@ -0,0 +1,19 @@ +import setHelpers from 'mnemonist/set'; +export default () => ({ sources = [], statuses = [] }) => { + const uniqueSources = new Set(sources); + return item => { + if (statuses.length > 0) { + if (statuses.includes(item.Status)) { + return true; + } + return false; + } + if (sources.length > 0) { + if (setHelpers.intersectionSize(uniqueSources, new Set(item.ExternalSources || [])) !== 0) { + return true; + } + return false; + } + return true; + }; +}; diff --git a/ui-v2/app/filter/predicates/service.js b/ui-v2/app/filter/predicates/service.js new file mode 100644 index 0000000000..9aa5d4f09e --- /dev/null +++ b/ui-v2/app/filter/predicates/service.js @@ -0,0 +1,67 @@ +import setHelpers from 'mnemonist/set'; +export default () => ({ instances = [], sources = [], statuses = [], types = [] }) => { + const uniqueSources = new Set(sources); + const typeIncludes = [ + 'ingress-gateway', + 'terminating-gateway', + 'mesh-gateway', + 'service', + 'mesh-enabled', + 'mesh-disabled', + ].reduce((prev, item) => { + prev[item] = types.includes(item); + return prev; + }, {}); + const instanceIncludes = ['registered', 'not-registered'].reduce((prev, item) => { + prev[item] = instances.includes(item); + return prev; + }, {}); + return item => { + if (statuses.length > 0) { + if (statuses.includes(item.MeshStatus)) { + return true; + } + return false; + } + if (instances.length > 0) { + if (item.InstanceCount > 0) { + if (instanceIncludes['registered']) { + return true; + } + } else { + if (instanceIncludes['not-registered']) { + return true; + } + } + return false; + } + if (types.length > 0) { + if (typeIncludes['ingress-gateway'] && item.Kind === 'ingress-gateway') { + return true; + } + if (typeIncludes['terminating-gateway'] && item.Kind === 'terminating-gateway') { + return true; + } + if (typeIncludes['mesh-gateway'] && item.Kind === 'mesh-gateway') { + return true; + } + if (typeIncludes['service'] && typeof item.Kind === 'undefined') { + return true; + } + if (typeIncludes['mesh-enabled'] && typeof item.Proxy !== 'undefined') { + return true; + } + if (typeIncludes['mesh-disabled'] && typeof item.Proxy === 'undefined') { + return true; + } + return false; + } + if (sources.length > 0) { + if (setHelpers.intersectionSize(uniqueSources, new Set(item.ExternalSources || [])) !== 0) { + return true; + } + return false; + } + return true; + }; +}; diff --git a/ui-v2/app/filter/predicates/token.js b/ui-v2/app/filter/predicates/token.js new file mode 100644 index 0000000000..e50b1f2919 --- /dev/null +++ b/ui-v2/app/filter/predicates/token.js @@ -0,0 +1,21 @@ +export default () => ({ types = [] }) => { + const typeIncludes = ['global-management', 'global', 'local'].reduce((prev, item) => { + prev[item] = types.includes(item); + return prev; + }, {}); + return item => { + if (types.length > 0) { + if (typeIncludes['global-management'] && item.isGlobalManagement) { + return true; + } + if (typeIncludes['global'] && !item.Local) { + return true; + } + if (typeIncludes['local'] && item.Local) { + return true; + } + return false; + } + return true; + }; +}; diff --git a/ui-v2/app/helpers/filter-predicate.js b/ui-v2/app/helpers/filter-predicate.js new file mode 100644 index 0000000000..d90b370075 --- /dev/null +++ b/ui-v2/app/helpers/filter-predicate.js @@ -0,0 +1,9 @@ +import Helper from '@ember/component/helper'; +import { inject as service } from '@ember/service'; + +export default Helper.extend({ + filter: service('filter'), + compute([type, filters], hash) { + return this.filter.predicate(type)(filters); + }, +}); diff --git a/ui-v2/app/helpers/policy/group.js b/ui-v2/app/helpers/policy/group.js index b58ad46404..1a2c829d0a 100644 --- a/ui-v2/app/helpers/policy/group.js +++ b/ui-v2/app/helpers/policy/group.js @@ -1,7 +1,6 @@ import { helper } from '@ember/component/helper'; import { get } from '@ember/object'; - -const MANAGEMENT_ID = '00000000-0000-0000-0000-000000000001'; +import { MANAGEMENT_ID } from 'consul-ui/models/policy'; export default helper(function policyGroup([items] /*, hash*/) { return items.reduce( diff --git a/ui-v2/app/initializers/sort.js b/ui-v2/app/initializers/sort.js index 6b173481b2..1f30f55b0b 100644 --- a/ui-v2/app/initializers/sort.js +++ b/ui-v2/app/initializers/sort.js @@ -1,4 +1,5 @@ import service from 'consul-ui/sort/comparators/service'; +import serviceInstance from 'consul-ui/sort/comparators/service-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'; @@ -13,6 +14,7 @@ export function initialize(container) { const Sort = container.resolveRegistration('service:sort'); const comparators = { service: service(), + serviceInstance: serviceInstance(), kv: kv(), check: check(), intention: intention(), diff --git a/ui-v2/app/models/policy.js b/ui-v2/app/models/policy.js index 7db67378ed..b4c2661b68 100644 --- a/ui-v2/app/models/policy.js +++ b/ui-v2/app/models/policy.js @@ -1,9 +1,12 @@ import Model from 'ember-data/model'; import attr from 'ember-data/attr'; +import { computed } from '@ember/object'; export const PRIMARY_KEY = 'uid'; export const SLUG_KEY = 'ID'; +export const MANAGEMENT_ID = '00000000-0000-0000-0000-000000000001'; + export default Model.extend({ [PRIMARY_KEY]: attr('string'), [SLUG_KEY]: attr('string'), @@ -19,6 +22,9 @@ export default Model.extend({ // frontend only for ordering where CreateIndex can't be used CreateTime: attr('date', { defaultValue: 0 }), // + isGlobalManagement: computed('ID', function() { + return this.ID === MANAGEMENT_ID; + }), Datacenter: attr('string'), Namespace: attr('string'), SyncTime: attr('number'), diff --git a/ui-v2/app/models/service-instance.js b/ui-v2/app/models/service-instance.js index 4b8946098b..9df5bd6d03 100644 --- a/ui-v2/app/models/service-instance.js +++ b/ui-v2/app/models/service-instance.js @@ -1,7 +1,8 @@ import Model from 'ember-data/model'; import attr from 'ember-data/attr'; import { belongsTo } from 'ember-data/relationships'; -import { filter, alias } from '@ember/object/computed'; +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'; @@ -19,13 +20,52 @@ export default Model.extend({ Checks: attr(), SyncTime: attr('number'), meta: attr(), + Name: or('Service.ID', 'Service.Service'), Tags: alias('Service.Tags'), Meta: alias('Service.Meta'), Namespace: alias('Service.Namespace'), - ServiceChecks: filter('Checks', function(item, i, arr) { + ExternalSources: computed('Service.Meta', function() { + const sources = Object.entries(this.Service.Meta || {}) + .filter(([key, value]) => key === 'external-source') + .map(([key, value]) => { + return value; + }); + return [...new Set(sources)]; + }), + ServiceChecks: filter('Checks.[]', function(item, i, arr) { return item.ServiceID !== ''; }), - NodeChecks: filter('Checks', function(item, i, arr) { + NodeChecks: filter('Checks.[]', function(item, i, arr) { return item.ServiceID === ''; }), + Status: computed('ChecksPassing', 'ChecksWarning', 'ChecksCritical', function() { + 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'; + } + }), + ChecksPassing: computed('Checks.[]', function() { + return this.Checks.filter(item => item.Status === 'passing'); + }), + ChecksWarning: computed('Checks.[]', function() { + return this.Checks.filter(item => item.Status === 'warning'); + }), + ChecksCritical: computed('Checks.[]', function() { + return this.Checks.filter(item => item.Status === 'critical'); + }), + PercentageChecksPassing: computed('Checks.[]', 'ChecksPassing', function() { + return (this.ChecksPassing.length / this.Checks.length) * 100; + }), + PercentageChecksWarning: computed('Checks.[]', 'ChecksWarning', function() { + return (this.ChecksWarning.length / this.Checks.length) * 100; + }), + PercentageChecksCritical: computed('Checks.[]', 'ChecksCritical', function() { + return (this.ChecksCritical.length / this.Checks.length) * 100; + }), }); diff --git a/ui-v2/app/models/token.js b/ui-v2/app/models/token.js index 5b57072871..9015f73628 100644 --- a/ui-v2/app/models/token.js +++ b/ui-v2/app/models/token.js @@ -1,5 +1,7 @@ import Model from 'ember-data/model'; import attr from 'ember-data/attr'; +import { computed } from '@ember/object'; +import { MANAGEMENT_ID } from 'consul-ui/models/policy'; export const PRIMARY_KEY = 'uid'; export const SLUG_KEY = 'AccessorID'; @@ -24,6 +26,9 @@ export default Model.extend({ Datacenter: attr('string'), Namespace: attr('string'), Local: attr('boolean'), + isGlobalManagement: computed('Policies.[]', function() { + return (this.Policies || []).find(item => item.ID === MANAGEMENT_ID); + }), Policies: attr({ defaultValue: function() { return []; diff --git a/ui-v2/app/services/filter.js b/ui-v2/app/services/filter.js new file mode 100644 index 0000000000..5123a617cb --- /dev/null +++ b/ui-v2/app/services/filter.js @@ -0,0 +1,23 @@ +import Service from '@ember/service'; + +import service from 'consul-ui/filter/predicates/service'; +import serviceInstance from 'consul-ui/filter/predicates/service-instance'; +import node from 'consul-ui/filter/predicates/node'; +import intention from 'consul-ui/filter/predicates/intention'; +import token from 'consul-ui/filter/predicates/token'; +import policy from 'consul-ui/filter/predicates/policy'; + +const predicates = { + service: service(), + serviceInstance: serviceInstance(), + node: node(), + intention: intention(), + token: token(), + policy: policy(), +}; + +export default Service.extend({ + predicate: function(type) { + return predicates[type]; + }, +}); diff --git a/ui-v2/app/services/repository/intention.js b/ui-v2/app/services/repository/intention.js index 72b8a62275..e2ad0e6970 100644 --- a/ui-v2/app/services/repository/intention.js +++ b/ui-v2/app/services/repository/intention.js @@ -16,7 +16,7 @@ export default RepositoryService.extend({ const query = { dc: dc, nspace: nspace, - filter: `SourceName == "${slug}" or DestinationName == "${slug}"`, + filter: `SourceName == "${slug}" or DestinationName == "${slug}" or SourceName == "*" or DestinationName == "*"`, }; if (typeof configuration.cursor !== 'undefined') { query.index = configuration.cursor; diff --git a/ui-v2/app/sort/comparators/service-instance.js b/ui-v2/app/sort/comparators/service-instance.js new file mode 100644 index 0000000000..66f40eb163 --- /dev/null +++ b/ui-v2/app/sort/comparators/service-instance.js @@ -0,0 +1,23 @@ +export default () => key => { + if (key.startsWith('Status:')) { + const [, dir] = key.split(':'); + const props = [ + 'PercentageChecksPassing', + 'PercentageChecksWarning', + 'PercentageChecksCritical', + ]; + if (dir === 'asc') { + props.reverse(); + } + return function(a, b) { + for (let i in props) { + let prop = props[i]; + if (a[prop] === b[prop]) { + continue; + } + return a[prop] > b[prop] ? -1 : 1; + } + }; + } + return key; +}; diff --git a/ui-v2/app/styles/base/components/buttons/index.scss b/ui-v2/app/styles/base/components/buttons/index.scss index 8f5aa10ddf..bc18252196 100644 --- a/ui-v2/app/styles/base/components/buttons/index.scss +++ b/ui-v2/app/styles/base/components/buttons/index.scss @@ -1,5 +1,2 @@ @import './skin'; @import './layout'; -%sort-button { - @extend %split-button; -} diff --git a/ui-v2/app/styles/base/components/popover-menu/skin.scss b/ui-v2/app/styles/base/components/popover-menu/skin.scss index 917bc35604..8dc9f6d15c 100644 --- a/ui-v2/app/styles/base/components/popover-menu/skin.scss +++ b/ui-v2/app/styles/base/components/popover-menu/skin.scss @@ -6,7 +6,6 @@ width: 16px; height: 16px; position: relative; - top: 2px; } %popover-menu-toggle:checked + label > *::after { @extend %with-chevron-up-mask; diff --git a/ui-v2/app/styles/base/icons/icon-placeholders.scss b/ui-v2/app/styles/base/icons/icon-placeholders.scss index 907ab91d63..6f7988dd3c 100644 --- a/ui-v2/app/styles/base/icons/icon-placeholders.scss +++ b/ui-v2/app/styles/base/icons/icon-placeholders.scss @@ -948,6 +948,16 @@ mask-image: $logo-bitbucket-monochrome-svg; } +%with-logo-consul-color-icon { + @extend %with-icon; + background-image: $consul-logo-color-svg; +} +%with-logo-consul-color-mask { + @extend %with-mask; + -webkit-mask-image: $consul-logo-color-svg; + mask-image: $consul-logo-color-svg; +} + %with-logo-gcp-color-icon { @extend %with-icon; background-image: $logo-gcp-color-svg; @@ -1047,6 +1057,15 @@ -webkit-mask-image: $logo-microsoft-color-svg; mask-image: $logo-microsoft-color-svg; } +%with-logo-nomad-color-icon { + @extend %with-icon; + background-image: $nomad-logo-color-svg; +} +%with-logo-nomad-color-mask { + @extend %with-mask; + -webkit-mask-image: $nomad-logo-color-svg; + mask-image: $nomad-logo-color-svg; +} %with-logo-okta-color-icon { @extend %with-icon; @@ -1098,6 +1117,15 @@ mask-image: $logo-slack-monochrome-svg; } +%with-logo-terraform-color-icon { + @extend %with-icon; + background-image: $terraform-logo-color-svg; +} +%with-logo-terraform-color-mask { + @extend %with-mask; + -webkit-mask-image: $terraform-logo-color-svg; + mask-image: $terraform-logo-color-svg; +} %with-logo-vmware-color-icon { @extend %with-icon; background-image: $logo-vmware-color-svg; diff --git a/ui-v2/app/styles/components/app-view.scss b/ui-v2/app/styles/components/app-view.scss index 650b6a87ce..4f605fb175 100644 --- a/ui-v2/app/styles/components/app-view.scss +++ b/ui-v2/app/styles/components/app-view.scss @@ -72,10 +72,10 @@ main { display: none; } #toolbar-toggle:checked + * { - display: block; + display: flex; } html.template-service.template-show #toolbar-toggle + * { - display: block; + display: flex; padding: 4px; } html.template-service.template-show .actions { diff --git a/ui-v2/app/styles/components/filter-bar.scss b/ui-v2/app/styles/components/filter-bar.scss index c27212a633..935cfe6a6c 100644 --- a/ui-v2/app/styles/components/filter-bar.scss +++ b/ui-v2/app/styles/components/filter-bar.scss @@ -3,14 +3,18 @@ .filter-bar { @extend %filter-bar; } -%filter-bar { +%filter-bar .popover-select { + height: 35px; position: relative; z-index: 3; } -%filter-bar:not(.with-sort) { +%filter-bar [role='menuitem'] { + justify-content: normal !important; +} +html.template-acl.template-list .filter-bar { @extend %filter-bar-reversed; } -%filter-bar [role='radiogroup'] { +html.template-acl.template-list .filter-bar [role='radiogroup'] { @extend %expanded-single-select; } %filter-bar span::before { @@ -19,6 +23,11 @@ margin-left: -2px; } +%filter-bar .popover-menu > [type='checkbox']:checked + label button { + color: $blue-500; + background-color: $gray-100; +} + %filter-bar .value-passing span::before { @extend %with-check-circle-fill-icon, %as-pseudo; } diff --git a/ui-v2/app/styles/components/filter-bar/layout.scss b/ui-v2/app/styles/components/filter-bar/layout.scss index 563b0d0679..5a08de6e19 100644 --- a/ui-v2/app/styles/components/filter-bar/layout.scss +++ b/ui-v2/app/styles/components/filter-bar/layout.scss @@ -5,34 +5,50 @@ margin-top: 0 !important; margin-bottom: -12px; } +%filter-bar .filters { + display: flex; + margin-right: 12px; +} +%filter-bar .filters > *:not(:last-child) { + margin-right: 6px; +} %filter-bar + :not(.notice) { margin-top: 1.8em; } +%filter-bar fieldset { + flex: 0 1 auto; + width: auto; +} %filter-bar-reversed { flex-direction: row-reverse; padding: 4px; margin-bottom: 8px !important; } -%filter-bar fieldset { - flex: 0 1 auto; +%filter-bar-reversed fieldset { + min-width: 210px; width: auto; } -%filter-bar fieldset:first-child:not(:last-child) { - flex: 1 1 auto; - margin-right: 12px; -} %filter-bar-reversed fieldset:first-child:not(:last-child) { flex: 0 1 auto; margin-left: auto; } -%filter-bar-reversed fieldset { - min-width: 210px; - width: auto; -} %filter-bar-reversed > *:first-child { margin-left: 12px; } +@media #{$--horizontal-filters} { + %filter-bar fieldset:first-child:not(:last-child) { + flex: 1 1 auto; + margin-right: 12px; + } +} @media #{$--lt-horizontal-filters} { + %filter-bar { + flex-wrap: wrap; + } + %filter-bar fieldset { + flex: 0 1 100%; + margin-bottom: 8px; + } %filter-bar-reversed > *:first-child { margin-left: 0; } diff --git a/ui-v2/app/styles/components/filter-bar/skin.scss b/ui-v2/app/styles/components/filter-bar/skin.scss index f6090f4b71..f0998780aa 100644 --- a/ui-v2/app/styles/components/filter-bar/skin.scss +++ b/ui-v2/app/styles/components/filter-bar/skin.scss @@ -13,9 +13,6 @@ } } @media #{$--lt-horizontal-selects} { - %filter-bar label:not(:last-child) { - border-bottom: $decor-border-100; - } } %filter-bar [role='radiogroup'] label { cursor: pointer; diff --git a/ui-v2/app/styles/components/main-nav-horizontal/layout.scss b/ui-v2/app/styles/components/main-nav-horizontal/layout.scss index 04a3690900..534ad871ed 100644 --- a/ui-v2/app/styles/components/main-nav-horizontal/layout.scss +++ b/ui-v2/app/styles/components/main-nav-horizontal/layout.scss @@ -14,6 +14,9 @@ right: auto; top: 28px !important; } +%main-nav-horizontal .popover-menu > label > button::after { + top: 2px; +} @media #{$--horizontal-nav} { %main-nav-horizontal > ul, %main-nav-horizontal-panel { diff --git a/ui-v2/app/styles/components/popover-select.scss b/ui-v2/app/styles/components/popover-select.scss index 928eaf81ae..7cc3675e46 100644 --- a/ui-v2/app/styles/components/popover-select.scss +++ b/ui-v2/app/styles/components/popover-select.scss @@ -1,6 +1,64 @@ .popover-select { @extend %popover-select; } +%popover-select label { + height: 100%; +} %popover-select label > * { + @extend %button; + padding: 0 8px !important; + height: 100% !important; + justify-content: space-between !important; + min-width: auto !important; +} +%popover-select label > *::after { + margin-left: 6px; +} +%popover-select.type-sort label > * { @extend %sort-button; } + +%popover-select.type-access button::before, +%popover-select.type-source button::before, +%popover-select.type-status button::before { + margin-right: 10px; +} +%popover-select .value-allow button::before, +%popover-select .value-passing button::before { + @extend %with-check-circle-fill-mask, %as-pseudo; + color: $green-500; +} +%popover-select .value-warning button::before { + @extend %with-alert-triangle-mask, %as-pseudo; + color: $orange-500; +} +%popover-select .value-deny button::before, +%popover-select .value-critical button::before { + @extend %with-cancel-square-fill-mask, %as-pseudo; + color: $red-500; +} +%popover-select .value-empty button::before { + @extend %with-minus-square-fill-mask, %as-pseudo; + color: $gray-400; +} +%popover-select.type-source li button { + text-transform: capitalize; +} +%popover-select.type-source li.aws button { + text-transform: uppercase; +} +%popover-select .aws button::before { + @extend %with-logo-aws-color-icon, %as-pseudo; +} +%popover-select .kubernetes button::before { + @extend %with-logo-kubernetes-color-icon, %as-pseudo; +} +%popover-select .consul button::before { + @extend %with-logo-consul-color-icon, %as-pseudo; +} +%popover-select .nomad button::before { + @extend %with-logo-nomad-color-icon, %as-pseudo; +} +%popover-select .terraform button::before { + @extend %with-logo-terraform-color-icon, %as-pseudo; +} diff --git a/ui-v2/app/templates/dc/acls/policies/index.hbs b/ui-v2/app/templates/dc/acls/policies/index.hbs index 7909a6f96a..b7c7094b62 100644 --- a/ui-v2/app/templates/dc/acls/policies/index.hbs +++ b/ui-v2/app/templates/dc/acls/policies/index.hbs @@ -3,115 +3,100 @@ {{else}} {{title 'Access Controls'}} {{/if}} +{{#let (hash + types=(if type (split type ',') undefined) + dcs=(if dc (split dc ',') undefined) +) as |filters|}} + {{#let (or sortBy "Name:asc") as |sort|}} + + + {{partial 'dc/acls/policies/notifications'}} + + +

+ Access Controls +

+
+ + {{#if isAuthorized }} + {{partial 'dc/acls/nav'}} + {{/if}} + + + {{partial 'dc/acls/disabled'}} + + + {{partial 'dc/acls/authorization'}} + + + Create + + + {{#if (gt items.length 0) }} + - - {{partial 'dc/acls/policies/notifications'}} - - -

- Access Controls -

-
- -{{#if isAuthorized }} - {{partial 'dc/acls/nav'}} -{{/if}} - - - {{partial 'dc/acls/disabled'}} - - - {{partial 'dc/acls/authorization'}} - - - Create - - - {{#if (gt items.length 0) }} - - - - - - {{#let (from-entries (array - (array "Name:asc" "A to Z") - (array "Name:desc" "Z to A") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - -{{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - -{{/let}} - - - - - {{/if}} - - - {{#let (sort-by (comparator 'policy' sort) items) as |sorted|}} - - - + {{/if}} - - - -

- {{#if (gt items.length 0)}} - No policies found - {{else}} - Welcome to Policies - {{/if}} -

+ +{{#let (filter (filter-predicate 'policy' filters) items) as |filtered|}} + {{#let (sort-by (comparator 'policy' sort) filtered) as |sorted|}} + + + - -

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

+ + + +

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

+
+ +

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

+
+ + + + +
- - - - -
-
-
+ + {{/let}} +{{/let}} +
+
{{/let}} - - {{/let}} \ No newline at end of file diff --git a/ui-v2/app/templates/dc/acls/roles/index.hbs b/ui-v2/app/templates/dc/acls/roles/index.hbs index 003abf01e3..b373225367 100644 --- a/ui-v2/app/templates/dc/acls/roles/index.hbs +++ b/ui-v2/app/templates/dc/acls/roles/index.hbs @@ -35,46 +35,13 @@ {{#if (gt items.length 0) }} - - - - - - {{#let (from-entries (array - (array "Name:asc" "A to Z") - (array "Name:desc" "Z to A") - (array "CreateIndex:desc" "Newest to oldest") - (array "CreateIndex:asc" "Oldest to newest") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - -{{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - - - - - -{{/let}} - - - - + + @sort={{sort}} + @onsort={{action (mut sortBy) value="target.selected"}} + /> {{/if}} diff --git a/ui-v2/app/templates/dc/acls/tokens/index.hbs b/ui-v2/app/templates/dc/acls/tokens/index.hbs index cf226665cc..d1fad80e13 100644 --- a/ui-v2/app/templates/dc/acls/tokens/index.hbs +++ b/ui-v2/app/templates/dc/acls/tokens/index.hbs @@ -4,113 +4,97 @@ {{title 'Access Controls'}} {{/if}} -{{#let (or sortBy "CreateTime:desc") as |sort|}} - - - {{partial 'dc/acls/tokens/notifications'}} - - -

- Access Controls -

-
- -{{#if isAuthorized }} - {{partial 'dc/acls/nav'}} -{{/if}} - - - {{partial 'dc/acls/disabled'}} - - - {{partial 'dc/acls/authorization'}} - - - Create - - - {{#if (gt items.length 0)}} - - - - - - {{#let (from-entries (array - (array "CreateTime:desc" "Newest to oldest") - (array "CreateTime:asc" "Oldest to newest") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - - {{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - +{{#let (hash + types=(if type (split type ',') undefined) +) as |filters|}} + {{#let (or sortBy "CreateTime:desc") as |sort|}} + + + {{partial 'dc/acls/tokens/notifications'}} + + +

+ Access Controls +

+
+ + {{#if isAuthorized }} + {{partial 'dc/acls/nav'}} + {{/if}} + + + {{partial 'dc/acls/disabled'}} + + + {{partial 'dc/acls/authorization'}} + + + Create + + + {{#if (gt items.length 0)}} + + {{/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.

+ {{/if}} + {{#let (filter (filter-predicate 'token' filters) items) as |filtered|}} + {{#let (sort-by (comparator 'token' sort) filtered) as |sorted|}} + + + + + + + +

+ {{#if (gt items.length 0)}} + No tokens found + {{else}} + Welcome to ACL Tokens + {{/if}} +

+
+ +

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

+
+
+
+
+ {{/let}} {{/let}} -
-
-
-
- {{/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.

-{{/if}} - {{#let (sort-by (comparator 'token' sort) items) as |sorted|}} - - - - - - -

- {{#if (gt items.length 0)}} - No tokens found - {{else}} - Welcome to ACL Tokens - {{/if}} -

-
- -

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

-
-
-
-
+
{{/let}} -
- {{/let}} diff --git a/ui-v2/app/templates/dc/intentions/index.hbs b/ui-v2/app/templates/dc/intentions/index.hbs index 57a19a5834..80047c2ddc 100644 --- a/ui-v2/app/templates/dc/intentions/index.hbs +++ b/ui-v2/app/templates/dc/intentions/index.hbs @@ -6,11 +6,15 @@ +{{#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 api.data.length}} total + Intentions {{format-number items.length}} total

@@ -18,73 +22,34 @@ Create
- {{#if (gt api.data.length 0) }} - - - - - - {{#let (from-entries (array - (array "Action:asc" "Allow to Deny") - (array "Action:desc" "Deny to Allow") - (array "SourceName:asc" "Source: A to Z") - (array "SourceName:desc" "Source: Z to A") - (array "DestinationName:asc" "Destination: A to Z") - (array "DestinationName:desc" "Destination: Z to A") - (array "Precedence:asc" "Precedence: Ascending") - (array "Precedence:desc" "Precedence: Descending") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - - {{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - - - - - - - - - - - - - - {{/let}} - - - - - {{/if}} + + @sort={{sort}} + @onsort={{action (mut sortBy) value="target.selected"}} + + @filter={{filters}} + @onfilter={{hash + access=(action (mut access) value="target.selectedItems") + }} + /> + {{/if}} - {{#let (sort-by (comparator 'intention' sort) api.data) as |sorted|}} + {{#let (filter (filter-predicate 'intention' filters) items) as |filtered|}} + {{#let (sort-by (comparator 'intention' sort) filtered) as |sorted|}} - +

- {{#if (gt api.data.length 0)}} + {{#if (gt items.length 0)}} No intentions found {{else}} Welcome to Intentions @@ -93,7 +58,7 @@

- {{#if (gt api.data.length 0)}} + {{#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. @@ -112,9 +77,12 @@ - {{/let}} + {{/let}} + {{/let}} - {{/let}} + {{/let}} + {{/let}} +{{/let}} \ No newline at end of file diff --git a/ui-v2/app/templates/dc/kv/index.hbs b/ui-v2/app/templates/dc/kv/index.hbs index 013abf9bc5..b21cdafd33 100644 --- a/ui-v2/app/templates/dc/kv/index.hbs +++ b/ui-v2/app/templates/dc/kv/index.hbs @@ -23,46 +23,48 @@ {{#if (gt items.length 0) }} - - - - - - {{#let (from-entries (array - (array "Key:asc" "A to Z") - (array "Key:desc" "Z to A") - (array "isFolder:desc" "Folders to Keys") - (array "isFolder:asc" "Keys to Folders") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - - {{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - - - - - - {{/let}} - - - - +

+ +
+ + + + {{#let (from-entries (array + (array "Key:asc" "A to Z") + (array "Key:desc" "Z to A") + (array "isFolder:desc" "Folders to Keys") + (array "isFolder:asc" "Keys to Folders") + )) + as |selectable| + }} + {{get selectable sort}} + {{/let}} + + + + {{#let components.Optgroup components.Option as |Optgroup Option|}} + + + + + + + + + {{/let}} + + +
+ {{/if}}
diff --git a/ui-v2/app/templates/dc/nodes/index.hbs b/ui-v2/app/templates/dc/nodes/index.hbs index c5b38372b6..558b182054 100644 --- a/ui-v2/app/templates/dc/nodes/index.hbs +++ b/ui-v2/app/templates/dc/nodes/index.hbs @@ -1,5 +1,8 @@ {{title 'Nodes'}} +{{#let (hash + statuses=(if status (split status ',') undefined) +) as |filters|}} {{#let (or sortBy "Node:asc") as |sort|}} @@ -10,53 +13,26 @@ {{#if (gt items.length 0) }} - - - - - - {{#let (from-entries (array - (array "Node:asc" "A to Z") - (array "Node:desc" "Z to A") - (array "Status:asc" "Unhealthy to Healthy") - (array "Status:desc" "Healthy to Unhealthy") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - - {{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - - - - - - {{/let}} - - - - + {{/if}} - {{#let (sort-by (comparator 'node' sort) items) as |sorted|}} +{{#let (filter (filter-predicate 'node' filters) items) as |filtered|}} + {{#let (sort-by (comparator 'node' sort) filtered) as |sorted|}} - - + + @@ -68,7 +44,9 @@ - {{/let}} + {{/let}} +{{/let}} + {{/let}} {{/let}} \ No newline at end of file diff --git a/ui-v2/app/templates/dc/nspaces/index.hbs b/ui-v2/app/templates/dc/nspaces/index.hbs index a062ba1bb7..034d71331d 100644 --- a/ui-v2/app/templates/dc/nspaces/index.hbs +++ b/ui-v2/app/templates/dc/nspaces/index.hbs @@ -15,40 +15,14 @@ {{#if (gt items.length 0)}} - - - - - - {{#let (from-entries (array - (array "Name:asc" "A to Z") - (array "Name:desc" "Z to A") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - -{{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - -{{/let}} - - - - + {{/if}} diff --git a/ui-v2/app/templates/dc/services/index.hbs b/ui-v2/app/templates/dc/services/index.hbs index b9395b31d8..3eacce3fc9 100644 --- a/ui-v2/app/templates/dc/services/index.hbs +++ b/ui-v2/app/templates/dc/services/index.hbs @@ -1,65 +1,46 @@ {{title 'Services'}} -{{#let (or sortBy "Name:asc") as |sort|}} +{{#let (hash + statuses=(if status (split status ',') undefined) + types=(if type (split type ',') undefined) + sources=(if source (split source ',') undefined) +) as |filters|}} + {{#let (or sortBy "Name:asc") as |sort|}} {{partial 'dc/services/notifications'}}

- Services {{format-number services.length}} total + Services {{format-number services.length}} total

{{#if (gt services.length 0) }} - - - - - - {{#let (from-entries (array - (array "Name:asc" "A to Z") - (array "Name:desc" "Z to A") - (array "Status:asc" "Unhealthy to Healthy") - (array "Status:desc" "Healthy to Unhealthy") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - - {{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - - - - - - {{/let}} - - - - + + @sort={{sort}} + @onsort={{action (mut sortBy) value="target.selected"}} + + @filter={{filters}} + @onfilter={{hash + status=(action (mut status) value="target.selectedItems") + type=(action (mut type) value="target.selectedItems") + source=(action (mut source) value="target.selectedItems") + }} + /> {{/if}} -{{#let (sort-by (comparator 'service' sort) services) as |sorted|}} +{{#let (filter (filter-predicate 'service' filters) services) as |filtered|}} + {{#let (sort-by (comparator 'service' sort) filtered) as |sorted|}} - - + + @@ -92,7 +73,9 @@ - {{/let}} + {{/let}} +{{/let}}
+ {{/let}} {{/let}} diff --git a/ui-v2/app/templates/dc/services/show/instances.hbs b/ui-v2/app/templates/dc/services/show/instances.hbs index b919a1cd82..369420aa38 100644 --- a/ui-v2/app/templates/dc/services/show/instances.hbs +++ b/ui-v2/app/templates/dc/services/show/instances.hbs @@ -1,15 +1,32 @@
- {{#if (gt items.length 0) }} +{{#let (hash + statuses=(if status (split status ',') undefined) + sources=(if source (split source ',') undefined) +) as |filters|}} + {{#let (or sortBy "Name:asc") as |sort|}} + {{#if (gt items.length 0) }} - - {{/if}} - - - + + @sort={{sort}} + @onsort={{action (mut sortBy) value="target.selected"}} + + @filter={{filters}} + @onfilter={{hash + status=(action (mut status) value="target.selectedItems") + source=(action (mut source) value="target.selectedItems") + }} + /> + {{/if}} +{{#let (filter (filter-predicate 'serviceInstance' filters) items) as |filtered|}} + {{#let (sort-by (comparator 'serviceInstance' sort) filtered) as |sorted|}} + + + @@ -21,5 +38,9 @@ + {{/let}} +{{/let}} + {{/let}} +{{/let}}
diff --git a/ui-v2/app/templates/dc/services/show/intentions/index.hbs b/ui-v2/app/templates/dc/services/show/intentions/index.hbs index 0849ca5b12..40aa59945b 100644 --- a/ui-v2/app/templates/dc/services/show/intentions/index.hbs +++ b/ui-v2/app/templates/dc/services/show/intentions/index.hbs @@ -3,87 +3,55 @@
+{{#let api.data as |items|}} + {{#let (hash + accesses=(if access (split access ',') undefined) + ) as |filters|}} {{#let (or sortBy "Action:asc") as |sort|}}
Create - {{#if (gt api.data.length 0) }} - - - - - - {{#let (from-entries (array - (array "Action:asc" "Allow to Deny") - (array "Action:desc" "Deny to Allow") - (array "SourceName:asc" "Source: A to Z") - (array "SourceName:desc" "Source: Z to A") - (array "DestinationName:asc" "Destination: A to Z") - (array "DestinationName:desc" "Destination: Z to A") - (array "Precedence:asc" "Precedence: Ascending") - (array "Precedence:desc" "Precedence: Descending") - )) - as |selectable| - }} - {{get selectable sort}} - {{/let}} - - - - {{#let components.Optgroup components.Option as |Optgroup Option|}} - - - - - - - - - - - - - - - - - {{/let}} - - - - - {{/if}} - {{#let (sort-by (comparator 'intention' sort) api.data) as |sorted|}} +{{#if (gt items.length 0) }} + +{{/if}} +{{#let (filter (filter-predicate 'intention' filters) items) as |filtered|}} + {{#let (sort-by (comparator 'intention' sort) filtered) as |sorted|}} - +

- There are no intentions {{if (gt intentions.length 0) 'found '}} for this service. + There are no intentions {{if (gt items.length 0) 'found '}} for this service.

- {{/let}} + {{/let}} +{{/let}}
- {{/let}} + {{/let}} + {{/let}} +{{/let}}
diff --git a/ui-v2/app/templates/dc/services/show/services.hbs b/ui-v2/app/templates/dc/services/show/services.hbs index 4b973dc2b5..857f21efd2 100644 --- a/ui-v2/app/templates/dc/services/show/services.hbs +++ b/ui-v2/app/templates/dc/services/show/services.hbs @@ -1,22 +1,50 @@
- {{#if (gt gatewayServices.length 0)}} -

- The following services may receive traffic from external services through this gateway. Learn more about configuring gateways in our - step-by-step guide. -

- - {{else}} - - -

- There are no linked services. -

-
-
- {{/if}} +{{#let (hash + instances=(if instance (split instance ',') undefined) +) as |filters|}} + {{#let (or sortBy "Name:asc") as |sort|}} +{{#if (gt gatewayServices.length 0)}} + + +{{/if}} +

+ The following services may receive traffic from external services through this gateway. Learn more about configuring gateways in our + step-by-step guide. +

+{{#let (filter (filter-predicate 'service' filters) gatewayServices) as |filtered|}} + {{#let (sort-by (comparator 'service' sort) filtered) as |sorted|}} + + + + + + + +

+ There are no linked services. +

+
+
+
+
+ {{/let}} +{{/let}} + {{/let}} +{{/let}}
diff --git a/ui-v2/app/templates/dc/services/show/upstreams.hbs b/ui-v2/app/templates/dc/services/show/upstreams.hbs index d300097615..0a376080c1 100644 --- a/ui-v2/app/templates/dc/services/show/upstreams.hbs +++ b/ui-v2/app/templates/dc/services/show/upstreams.hbs @@ -1,18 +1,49 @@
- {{#if (gt gatewayServices.length 0)}} +{{#let (hash + instances=(if instance (split instance ',') undefined) +) as |filters|}} + {{#let (or sortBy "Name:asc") as |sort|}} +{{#if (gt gatewayServices.length 0)}} + + +{{/if}}

Upstreams are services that may receive traffic from this gateway. Learn more about configuring gateways in our documentation.

- - {{else}} - - -

- There are no upstreams. -

-
-
- {{/if}} +{{#let (filter (filter-predicate 'service' filters) gatewayServices) as |filtered|}} + {{#let (sort-by (comparator 'service' sort) filtered) as |sorted|}} + + + + + + + +

+ There are no upstreams. +

+
+
+
+
+ {{/let}} +{{/let}} + {{/let}} +{{/let}}
diff --git a/ui-v2/tests/acceptance/dc/acls/policies/sorting.feature b/ui-v2/tests/acceptance/dc/acls/policies/sorting.feature index a2b3692686..7ab40d6497 100644 --- a/ui-v2/tests/acceptance/dc/acls/policies/sorting.feature +++ b/ui-v2/tests/acceptance/dc/acls/policies/sorting.feature @@ -1,36 +1,36 @@ -@setupApplicationTest -Feature: dc / acls / policies / sorting - Scenario: Sorting Policies - Given 1 datacenter model with the value "dc-1" - And 4 policy models from yaml - --- - - Name: "system-A" - - Name: "system-D" - - Name: "system-C" - - Name: "system-B" - --- - When I visit the policies page for yaml - --- - dc: dc-1 - --- - Then the url should be /dc-1/acls/policies - Then I see 4 policy models - When I click selected on the sort - When I click options.1.button on the sort - Then I see name on the policies vertically like yaml - --- - - "system-D" - - "system-C" - - "system-B" - - "system-A" - --- - When I click selected on the sort - When I click options.0.button on the sort - Then I see name on the policies vertically like yaml - --- - - "system-A" - - "system-B" - - "system-C" - - "system-D" - --- - +@setupApplicationTest +Feature: dc / acls / policies / sorting + Scenario: Sorting Policies + Given 1 datacenter model with the value "dc-1" + And 4 policy models from yaml + --- + - Name: "system-A" + - Name: "system-D" + - Name: "system-C" + - Name: "system-B" + --- + When I visit the policies page for yaml + --- + dc: dc-1 + --- + Then the url should be /dc-1/acls/policies + Then I see 4 policy models + When I click selected on the sort + When I click options.1.button on the sort + Then I see name on the policies vertically like yaml + --- + - "system-D" + - "system-C" + - "system-B" + - "system-A" + --- + When I click selected on the sort + When I click options.0.button on the sort + Then I see name on the policies vertically like yaml + --- + - "system-A" + - "system-B" + - "system-C" + - "system-D" + --- + diff --git a/ui-v2/tests/acceptance/dc/nodes/sorting.feature b/ui-v2/tests/acceptance/dc/nodes/sorting.feature index d23795d924..dc09fec40c 100644 --- a/ui-v2/tests/acceptance/dc/nodes/sorting.feature +++ b/ui-v2/tests/acceptance/dc/nodes/sorting.feature @@ -1,73 +1,73 @@ -@setupApplicationTest -Feature: dc / nodes / sorting - Scenario: - Given 1 datacenter model with the value "dc-1" - And 6 node models from yaml - --- - - Node: Node-A - Checks: - - Status: critical - - Node: Node-B - Checks: - - Status: passing - - Node: Node-C - Checks: - - Status: warning - - Node: Node-D - Checks: - - Status: critical - - Node: Node-E - Checks: - - Status: critical - - Node: Node-F - Checks: - - Status: warning - --- - When I visit the nodes page for yaml - --- - dc: dc-1 - --- - When I click selected on the sort - When I click options.3.button on the sort - Then I see name on the nodes vertically like yaml - --- - - Node-B - - Node-C - - Node-F - - Node-A - - Node-D - - Node-E - --- - When I click selected on the sort - When I click options.2.button on the sort - Then I see name on the nodes vertically like yaml - --- - - Node-A - - Node-D - - Node-E - - Node-C - - Node-F - - Node-B - --- - When I click selected on the sort - When I click options.0.button on the sort - Then I see name on the nodes vertically like yaml - --- - - Node-A - - Node-B - - Node-C - - Node-D - - Node-E - - Node-F - --- - When I click selected on the sort - When I click options.1.button on the sort - Then I see name on the nodes vertically like yaml - --- - - Node-F - - Node-E - - Node-D - - Node-C - - Node-B - - Node-A - --- +@setupApplicationTest +Feature: dc / nodes / sorting + Scenario: + Given 1 datacenter model with the value "dc-1" + And 6 node models from yaml + --- + - Node: Node-A + Checks: + - Status: critical + - Node: Node-B + Checks: + - Status: passing + - Node: Node-C + Checks: + - Status: warning + - Node: Node-D + Checks: + - Status: critical + - Node: Node-E + Checks: + - Status: critical + - Node: Node-F + Checks: + - Status: warning + --- + When I visit the nodes page for yaml + --- + dc: dc-1 + --- + When I click selected on the sort + When I click options.0.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-A + - Node-D + - Node-E + - Node-C + - Node-F + - Node-B + --- + When I click selected on the sort + When I click options.1.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-B + - Node-C + - Node-F + - Node-A + - Node-D + - Node-E + --- + When I click selected on the sort + When I click options.2.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-A + - Node-B + - Node-C + - Node-D + - Node-E + - Node-F + --- + When I click selected on the sort + When I click options.3.button on the sort + Then I see name on the nodes vertically like yaml + --- + - Node-F + - Node-E + - Node-D + - Node-C + - Node-B + - Node-A + --- diff --git a/ui-v2/tests/acceptance/dc/services/show/upstreams.feature b/ui-v2/tests/acceptance/dc/services/show/upstreams.feature index cc703e4a43..00dc65fc0f 100644 --- a/ui-v2/tests/acceptance/dc/services/show/upstreams.feature +++ b/ui-v2/tests/acceptance/dc/services/show/upstreams.feature @@ -28,6 +28,7 @@ Feature: dc / services / show / upstreams --- And the title should be "ingress-gateway-1 - Consul" When I click upstreams on the tabs + And I see upstreamsIsSelected on the tabs Then I see 3 service models on the tabs.upstreamsTab component Scenario: Don't see the Upstreams tab Given 1 datacenter model with the value "dc1" diff --git a/ui-v2/tests/acceptance/dc/services/sorting.feature b/ui-v2/tests/acceptance/dc/services/sorting.feature index 99af3b233b..b3826f9fc4 100644 --- a/ui-v2/tests/acceptance/dc/services/sorting.feature +++ b/ui-v2/tests/acceptance/dc/services/sorting.feature @@ -40,15 +40,28 @@ Feature: dc / services / sorting dc: dc-1 --- When I click selected on the sort - When I click options.3.button on the sort + # unhealthy / healthy + When I click options.0.button on the sort Then I see name on the services vertically like yaml --- + - Service-B + - Service-C + - Service-A + - Service-D - Service-F - Service-E + --- + When I click selected on the sort + # healthy / unhealthy + When I click options.1.button on the sort + Then I see name on the services vertically like yaml + --- + - Service-E + - Service-F - Service-D + - Service-A - Service-C - Service-B - - Service-A --- When I click selected on the sort When I click options.2.button on the sort @@ -62,24 +75,13 @@ Feature: dc / services / sorting - Service-F --- When I click selected on the sort - When I click options.0.button on the sort + When I click options.3.button on the sort Then I see name on the services vertically like yaml --- - - Service-B - - Service-C - - Service-A - - Service-D - Service-F - Service-E - --- - When I click selected on the sort - When I click options.1.button on the sort - Then I see name on the services vertically like yaml - --- - - Service-E - - Service-F - Service-D - - Service-A - Service-C - Service-B + - Service-A --- diff --git a/ui-v2/tests/pages/dc/acls/policies/index.js b/ui-v2/tests/pages/dc/acls/policies/index.js index 40303efffa..a17926d733 100644 --- a/ui-v2/tests/pages/dc/acls/policies/index.js +++ b/ui-v2/tests/pages/dc/acls/policies/index.js @@ -2,6 +2,6 @@ export default function(visitable, creatable, policies, popoverSelect) { return creatable({ visit: visitable('/:dc/acls/policies'), policies: policies(), - sort: popoverSelect(), + sort: popoverSelect('[data-test-sort-control]'), }); } diff --git a/ui-v2/tests/pages/dc/acls/roles/index.js b/ui-v2/tests/pages/dc/acls/roles/index.js index 851fcbe19b..67279ffc68 100644 --- a/ui-v2/tests/pages/dc/acls/roles/index.js +++ b/ui-v2/tests/pages/dc/acls/roles/index.js @@ -2,7 +2,7 @@ export default function(visitable, creatable, roles, popoverSelect) { return { visit: visitable('/:dc/acls/roles'), roles: roles(), - sort: popoverSelect(), + sort: popoverSelect('[data-test-sort-control]'), ...creatable(), }; } diff --git a/ui-v2/tests/pages/dc/acls/tokens/index.js b/ui-v2/tests/pages/dc/acls/tokens/index.js index b08510794c..0af210d6f0 100644 --- a/ui-v2/tests/pages/dc/acls/tokens/index.js +++ b/ui-v2/tests/pages/dc/acls/tokens/index.js @@ -3,7 +3,7 @@ export default function(visitable, creatable, text, tokens, popoverSelect) { visit: visitable('/:dc/acls/tokens'), update: text('[data-test-notification-update]'), tokens: tokens(), - sort: popoverSelect(), + sort: popoverSelect('[data-test-sort-control]'), ...creatable(), }; } diff --git a/ui-v2/tests/pages/dc/intentions/index.js b/ui-v2/tests/pages/dc/intentions/index.js index 2c292bab1c..f554d19640 100644 --- a/ui-v2/tests/pages/dc/intentions/index.js +++ b/ui-v2/tests/pages/dc/intentions/index.js @@ -2,7 +2,7 @@ export default function(visitable, creatable, clickable, intentions, popoverSele return creatable({ visit: visitable('/:dc/intentions'), intentions: intentions(), - sort: popoverSelect(), + sort: popoverSelect('[data-test-sort-control]'), create: clickable('[data-test-create]'), }); } diff --git a/ui-v2/tests/pages/dc/nodes/index.js b/ui-v2/tests/pages/dc/nodes/index.js index c26bbd4153..81aabe3ff2 100644 --- a/ui-v2/tests/pages/dc/nodes/index.js +++ b/ui-v2/tests/pages/dc/nodes/index.js @@ -8,6 +8,6 @@ export default function(visitable, text, clickable, attribute, collection, popov visit: visitable('/:dc/nodes'), nodes: collection('.consul-node-list [data-test-list-row]', node), home: clickable('[data-test-home]'), - sort: popoverSelect(), + sort: popoverSelect('[data-test-sort-control]'), }; } diff --git a/ui-v2/tests/pages/dc/nspaces/index.js b/ui-v2/tests/pages/dc/nspaces/index.js index 96b1a6b7cf..4a3e5d0fb0 100644 --- a/ui-v2/tests/pages/dc/nspaces/index.js +++ b/ui-v2/tests/pages/dc/nspaces/index.js @@ -2,6 +2,6 @@ export default function(visitable, creatable, nspaces, popoverSelect) { return creatable({ visit: visitable('/:dc/namespaces'), nspaces: nspaces(), - sort: popoverSelect(), + sort: popoverSelect('[data-test-sort-control]'), }); } diff --git a/ui-v2/tests/pages/dc/services/index.js b/ui-v2/tests/pages/dc/services/index.js index deac821ada..5ca6123a3c 100644 --- a/ui-v2/tests/pages/dc/services/index.js +++ b/ui-v2/tests/pages/dc/services/index.js @@ -10,6 +10,6 @@ export default function(visitable, clickable, text, attribute, present, collecti visit: visitable('/:dc/services'), services: collection('.consul-service-list > ul > li:not(:first-child)', service), home: clickable('[data-test-home]'), - sort: popoverSelect(), + sort: popoverSelect('[data-test-sort-control]'), }; } diff --git a/ui-v2/tests/pages/dc/services/show.js b/ui-v2/tests/pages/dc/services/show.js index 0630edbe97..68cf5ea655 100644 --- a/ui-v2/tests/pages/dc/services/show.js +++ b/ui-v2/tests/pages/dc/services/show.js @@ -23,7 +23,7 @@ export default function(visitable, attribute, collection, text, intentions, filt intentions: intentions(), }; page.tabs.upstreamsTab = { - services: collection('.consul-upstream-list > ul > li:not(:first-child)', { + services: collection('.consul-service-list > ul > li:not(:first-child)', { name: text('[data-test-service-name]'), }), }; diff --git a/ui-v2/tests/unit/filter/predicates/intention-test.js b/ui-v2/tests/unit/filter/predicates/intention-test.js new file mode 100644 index 0000000000..9fde7ea33c --- /dev/null +++ b/ui-v2/tests/unit/filter/predicates/intention-test.js @@ -0,0 +1,43 @@ +import factory from 'consul-ui/filter/predicates/intention'; +import { module, test } from 'qunit'; + +module('Unit | Filter | Predicates | intention', function() { + const predicate = factory(); + + test('it returns items depending on Action', function(assert) { + const items = [ + { + Action: 'allow', + }, + { + Action: 'deny', + }, + ]; + + let expected, actual; + + expected = [items[0]]; + actual = items.filter( + predicate({ + accesses: ['allow'], + }) + ); + assert.deepEqual(actual, expected); + + expected = [items[1]]; + actual = items.filter( + predicate({ + accesses: ['deny'], + }) + ); + assert.deepEqual(actual, expected); + + expected = items; + actual = items.filter( + predicate({ + accesses: ['allow', 'deny'], + }) + ); + assert.deepEqual(actual, expected); + }); +}); diff --git a/ui-v2/tests/unit/filter/predicates/service-test.js b/ui-v2/tests/unit/filter/predicates/service-test.js new file mode 100644 index 0000000000..55d243610f --- /dev/null +++ b/ui-v2/tests/unit/filter/predicates/service-test.js @@ -0,0 +1,171 @@ +import factory from 'consul-ui/filter/predicates/service'; +import { module, test } from 'qunit'; + +module('Unit | Filter | Predicates | service', function() { + const predicate = factory(); + + test('it returns registered/unregistered items depending on instance count', function(assert) { + const items = [ + { + InstanceCount: 1, + }, + { + InstanceCount: 0, + }, + ]; + + let expected, actual; + + expected = [items[0]]; + actual = items.filter( + predicate({ + instances: ['registered'], + }) + ); + assert.deepEqual(actual, expected); + + expected = [items[1]]; + actual = items.filter( + predicate({ + instances: ['not-registered'], + }) + ); + assert.deepEqual(actual, expected); + + expected = items; + actual = items.filter( + predicate({ + instances: ['registered', 'not-registered'], + }) + ); + assert.deepEqual(actual, expected); + }); + + test('it returns items depending on status', function(assert) { + const items = [ + { + MeshStatus: 'passing', + }, + { + MeshStatus: 'warning', + }, + { + MeshStatus: 'critical', + }, + ]; + + let expected, actual; + + expected = [items[0]]; + actual = items.filter( + predicate({ + statuses: ['passing'], + }) + ); + assert.deepEqual(actual, expected); + + expected = [items[1]]; + actual = items.filter( + predicate({ + statuses: ['warning'], + }) + ); + assert.deepEqual(actual, expected); + + expected = items; + actual = items.filter( + predicate({ + statuses: ['passing', 'warning', 'critical'], + }) + ); + assert.deepEqual(actual, expected); + }); + + test('it returns items depending on service type', function(assert) { + const items = [ + { + Kind: 'ingress-gateway', + }, + { + Kind: 'mesh-gateway', + }, + {}, + ]; + + let expected, actual; + + expected = [items[0]]; + actual = items.filter( + predicate({ + types: ['ingress-gateway'], + }) + ); + assert.deepEqual(actual, expected); + + expected = [items[1]]; + actual = items.filter( + predicate({ + types: ['mesh-gateway'], + }) + ); + assert.deepEqual(actual, expected); + + expected = items; + actual = items.filter( + predicate({ + types: ['ingress-gateway', 'mesh-gateway', 'service'], + }) + ); + assert.deepEqual(actual, expected); + }); + test('it returns items depending on a mixture of properties', function(assert) { + const items = [ + { + Kind: 'ingress-gateway', + MeshStatus: 'passing', + InstanceCount: 1, + }, + { + Kind: 'mesh-gateway', + MeshStatus: 'warning', + InstanceCount: 1, + }, + { + MeshStatus: 'critical', + InstanceCount: 0, + }, + ]; + + let expected, actual; + + expected = [items[0]]; + actual = items.filter( + predicate({ + types: ['ingress-gateway'], + statuses: ['passing'], + instances: ['registered'], + }) + ); + assert.deepEqual(actual, expected); + + expected = [items[1]]; + actual = items.filter( + predicate({ + types: ['mesh-gateway'], + statuses: ['warning'], + instances: ['registered'], + }) + ); + assert.deepEqual(actual, expected); + + expected = items; + actual = items.filter( + predicate({ + types: ['ingress-gateway', 'mesh-gateway', 'service'], + statuses: ['passing', 'warning', 'critical'], + instances: ['registered', 'not-registered'], + }) + ); + assert.deepEqual(actual, expected); + }); +}); From a8c3fa471138474b40eb628a551b7ce2a1c4c821 Mon Sep 17 00:00:00 2001 From: Hans Hasselberg Date: Wed, 2 Sep 2020 14:15:41 +0200 Subject: [PATCH 034/122] add docs for dual stack options (#8407) --- website/pages/docs/agent/options.mdx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/website/pages/docs/agent/options.mdx b/website/pages/docs/agent/options.mdx index 95180f5d14..35591cb4c4 100644 --- a/website/pages/docs/agent/options.mdx +++ b/website/pages/docs/agent/options.mdx @@ -824,8 +824,16 @@ Valid time units are 'ns', 'us' (or 'µs'), 'ms', 's', 'm', 'h'." - `advertise_addr` Equivalent to the [`-advertise` command-line flag](#_advertise). +- `advertise_addr_ipv4` This was added together with [`advertise_addr_ipv6`](#advertise_addr_ipv6) to support dual stack IPv4/IPv6 environments. Using this, both IPv4 and IPv6 addresses can be specified and requested during eg service discovery. + +- `advertise_addr_ipv6` This was added together with [`advertise_addr_ipv4`](#advertise_addr_ipv4) to support dual stack IPv4/IPv6 environments. Using this, both IPv4 and IPv6 addresses can be specified and requested during eg service discovery. + - `advertise_addr_wan` Equivalent to the [`-advertise-wan` command-line flag](#_advertise-wan). +- `advertise_addr_wan_ipv4` This was added together with [`advertise_addr_wan_ipv6`](#advertise_addr_wan_ipv6) to support dual stack IPv4/IPv6 environments. Using this, both IPv4 and IPv6 addresses can be specified and requested during eg service discovery. + +- `advertise_addr_wan_ipv6` This was added together with [`advertise_addr_wan_ipv4`](#advertise_addr_wan_ipv4) to support dual stack IPv4/IPv6 environments. Using this, both IPv4 and IPv6 addresses can be specified and requested during eg service discovery. + - `serf_lan` ((#serf_lan_bind)) Equivalent to the [`-serf-lan-bind` command-line flag](#_serf_lan_bind). - `serf_lan_allowed_cidrs` ((#serf_lan_allowed_cidrs)) Equivalent to the [`-serf-lan-allowed-cidrs` command-line flag](#_serf_lan_allowed_cidrs). From 38d0b3cba66d140ef467cf5cf50850b84ac49bb9 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 2 Sep 2020 14:45:06 +0100 Subject: [PATCH 035/122] ui: Delete unused javascript/CSS components (#8597) --- .../app/components/grid-collection/index.hbs | 7 -- ui-v2/app/components/grid-collection/index.js | 83 ------------------- .../app/components/healthcheck-info/index.hbs | 9 -- .../app/components/healthcheck-info/index.js | 4 - .../components/healthcheck-status/index.hbs | 3 - .../components/healthcheck-status/index.js | 12 --- .../healthchecked-resource/index.hbs | 38 --------- .../healthchecked-resource/index.js | 29 ------- ui-v2/app/styles/base/components/index.scss | 1 - .../base/components/stats-card/index.scss | 2 - .../base/components/stats-card/layout.scss | 53 ------------ .../base/components/stats-card/skin.scss | 34 -------- ui-v2/app/styles/components.scss | 3 - .../styles/components/grid-collection.scss | 42 ---------- .../styles/components/healthcheck-info.scss | 12 --- .../components/healthcheck-info/index.scss | 2 - .../components/healthcheck-info/layout.scss | 17 ---- .../components/healthcheck-info/skin.scss | 30 ------- .../components/healthchecked-resource.scss | 53 ------------ .../styles/components/list-collection.scss | 2 + .../components/healthcheck-info-test.js | 24 ------ .../components/healthcheck-status-test.js | 22 ----- .../components/healthchecked-resource-test.js | 32 ------- 23 files changed, 2 insertions(+), 512 deletions(-) delete mode 100644 ui-v2/app/components/grid-collection/index.hbs delete mode 100644 ui-v2/app/components/grid-collection/index.js delete mode 100644 ui-v2/app/components/healthcheck-info/index.hbs delete mode 100644 ui-v2/app/components/healthcheck-info/index.js delete mode 100644 ui-v2/app/components/healthcheck-status/index.hbs delete mode 100644 ui-v2/app/components/healthcheck-status/index.js delete mode 100644 ui-v2/app/components/healthchecked-resource/index.hbs delete mode 100644 ui-v2/app/components/healthchecked-resource/index.js delete mode 100644 ui-v2/app/styles/base/components/stats-card/index.scss delete mode 100644 ui-v2/app/styles/base/components/stats-card/layout.scss delete mode 100644 ui-v2/app/styles/base/components/stats-card/skin.scss delete mode 100644 ui-v2/app/styles/components/grid-collection.scss delete mode 100644 ui-v2/app/styles/components/healthcheck-info.scss delete mode 100644 ui-v2/app/styles/components/healthcheck-info/index.scss delete mode 100644 ui-v2/app/styles/components/healthcheck-info/layout.scss delete mode 100644 ui-v2/app/styles/components/healthcheck-info/skin.scss delete mode 100644 ui-v2/app/styles/components/healthchecked-resource.scss delete mode 100644 ui-v2/tests/integration/components/healthcheck-info-test.js delete mode 100644 ui-v2/tests/integration/components/healthcheck-status-test.js delete mode 100644 ui-v2/tests/integration/components/healthchecked-resource-test.js diff --git a/ui-v2/app/components/grid-collection/index.hbs b/ui-v2/app/components/grid-collection/index.hbs deleted file mode 100644 index a7835ba1b0..0000000000 --- a/ui-v2/app/components/grid-collection/index.hbs +++ /dev/null @@ -1,7 +0,0 @@ -{{on-window 'resize' (action "resize") }} - -
  • - {{~#each _cells as |cell|~}} -
  • {{yield cell.item cell.index }}
  • - {{~/each~}} -
    \ No newline at end of file diff --git a/ui-v2/app/components/grid-collection/index.js b/ui-v2/app/components/grid-collection/index.js deleted file mode 100644 index 00970de1e1..0000000000 --- a/ui-v2/app/components/grid-collection/index.js +++ /dev/null @@ -1,83 +0,0 @@ -import { inject as service } from '@ember/service'; -import { computed, get, set } from '@ember/object'; -import Component from 'ember-collection/components/ember-collection'; -import PercentageColumns from 'ember-collection/layouts/percentage-columns'; -import style from 'ember-computed-style'; - -export default Component.extend({ - dom: service('dom'), - tagName: 'div', - attributeBindings: ['style'], - height: 500, - cellHeight: 113, - style: style('getStyle'), - classNames: ['grid-collection'], - init: function() { - this._super(...arguments); - this.columns = [25, 25, 25, 25]; - }, - didInsertElement: function() { - this._super(...arguments); - this.actions.resize.apply(this, [{ target: this.dom.viewport() }]); - }, - didReceiveAttrs: function() { - this._super(...arguments); - this._cellLayout = this['cell-layout'] = new PercentageColumns( - get(this, 'items.length'), - get(this, 'columns'), - get(this, 'cellHeight') - ); - }, - getStyle: computed('height', function() { - return { - height: get(this, 'height'), - }; - }), - actions: { - resize: function(e) { - // TODO: This top part is very similar to resize in tabular-collection - // see if it make sense to DRY out - const dom = get(this, 'dom'); - const $appContent = dom.element('main > div'); - if ($appContent) { - const rect = this.element.getBoundingClientRect(); - const $footer = dom.element('footer[role="contentinfo"]'); - const space = rect.top + $footer.clientHeight; - const height = e.target.innerHeight - space; - this.set('height', Math.max(0, height)); - this.updateItems(); - this.updateScrollPosition(); - } - const width = e.target.innerWidth; - const len = get(this, 'columns.length'); - switch (true) { - case width > 1013: - if (len != 4) { - set(this, 'columns', [25, 25, 25, 25]); - } - break; - case width > 744: - if (len != 3) { - set(this, 'columns', [33, 33, 34]); - } - break; - case width > 487: - if (len != 2) { - set(this, 'columns', [50, 50]); - } - break; - case width < 488: - if (len != 1) { - set(this, 'columns', [100]); - } - } - if (len !== get(this, 'columns.length')) { - this._cellLayout = this['cell-layout'] = new PercentageColumns( - get(this, 'items.length'), - get(this, 'columns'), - get(this, 'cellHeight') - ); - } - }, - }, -}); diff --git a/ui-v2/app/components/healthcheck-info/index.hbs b/ui-v2/app/components/healthcheck-info/index.hbs deleted file mode 100644 index 5661472fc3..0000000000 --- a/ui-v2/app/components/healthcheck-info/index.hbs +++ /dev/null @@ -1,9 +0,0 @@ -{{#if (and (lt passing 1) (lt warning 1) (lt critical 1) )}} - 0 -{{else}} -
    - - - -
    -{{/if}} diff --git a/ui-v2/app/components/healthcheck-info/index.js b/ui-v2/app/components/healthcheck-info/index.js deleted file mode 100644 index abe1ccedb6..0000000000 --- a/ui-v2/app/components/healthcheck-info/index.js +++ /dev/null @@ -1,4 +0,0 @@ -import Component from '@ember/component'; -export default Component.extend({ - tagName: '', -}); diff --git a/ui-v2/app/components/healthcheck-status/index.hbs b/ui-v2/app/components/healthcheck-status/index.hbs deleted file mode 100644 index 383f67386c..0000000000 --- a/ui-v2/app/components/healthcheck-status/index.hbs +++ /dev/null @@ -1,3 +0,0 @@ -{{!-- we use concat here to avoid ember adding returns between words, which causes a layout issue--}} -
    {{ concat 'Healthchecks ' (capitalize name) }}
    -
    {{format-number count}}
    \ No newline at end of file diff --git a/ui-v2/app/components/healthcheck-status/index.js b/ui-v2/app/components/healthcheck-status/index.js deleted file mode 100644 index e2485aee28..0000000000 --- a/ui-v2/app/components/healthcheck-status/index.js +++ /dev/null @@ -1,12 +0,0 @@ -import Component from '@ember/component'; -import { computed } from '@ember/object'; -export default Component.extend({ - tagName: '', - count: computed('value', function() { - const value = this.value; - if (Array.isArray(value)) { - return value.length; - } - return value; - }), -}); diff --git a/ui-v2/app/components/healthchecked-resource/index.hbs b/ui-v2/app/components/healthchecked-resource/index.hbs deleted file mode 100644 index 19d7f49091..0000000000 --- a/ui-v2/app/components/healthchecked-resource/index.hbs +++ /dev/null @@ -1,38 +0,0 @@ - - {{yield}} - - {{#if (eq checks.length 0)}} - {{checks.length}} - {{else if (eq checks.length healthy.length)}} - {{healthy.length}} - {{/if}} - - - - {{name}} - {{address}} - - - - {{#if (not-eq checks.length healthy.length)}} - - {{/if}} - - diff --git a/ui-v2/app/components/healthchecked-resource/index.js b/ui-v2/app/components/healthchecked-resource/index.js deleted file mode 100644 index 73fe187152..0000000000 --- a/ui-v2/app/components/healthchecked-resource/index.js +++ /dev/null @@ -1,29 +0,0 @@ -import { filter } from '@ember/object/computed'; -import Component from '@ember/component'; -import { computed, get } from '@ember/object'; -import style from 'ember-computed-style'; -export default Component.extend({ - classNames: ['healthchecked-resource'], - attributeBindings: ['style'], - style: style('gridRowEnd'), - unhealthy: filter(`checks.@each.Status`, function(item) { - const status = get(item, 'Status'); - return status === 'critical' || status === 'warning'; - }), - healthy: filter(`checks.@each.Status`, function(item) { - const status = get(item, 'Status'); - return status === 'passing'; - }), - gridRowEnd: computed('UnhealthyChecks', function() { - let spans = 3; - if (get(this, 'service')) { - spans++; - } - if (get(this, 'healthy.length') > 0) { - spans++; - } - return { - gridRow: `auto / span ${spans + (get(this, 'unhealthy.length') || 0)}`, - }; - }), -}); diff --git a/ui-v2/app/styles/base/components/index.scss b/ui-v2/app/styles/base/components/index.scss index e4017d5ee0..da964526ce 100644 --- a/ui-v2/app/styles/base/components/index.scss +++ b/ui-v2/app/styles/base/components/index.scss @@ -13,7 +13,6 @@ @import './popover-menu/index'; @import './radio-group/index'; @import './sliding-toggle/index'; -@import './stats-card/index'; @import './table/index'; @import './tabs/index'; @import './toggle-button/index'; diff --git a/ui-v2/app/styles/base/components/stats-card/index.scss b/ui-v2/app/styles/base/components/stats-card/index.scss deleted file mode 100644 index bc18252196..0000000000 --- a/ui-v2/app/styles/base/components/stats-card/index.scss +++ /dev/null @@ -1,2 +0,0 @@ -@import './skin'; -@import './layout'; diff --git a/ui-v2/app/styles/base/components/stats-card/layout.scss b/ui-v2/app/styles/base/components/stats-card/layout.scss deleted file mode 100644 index 7068b26e79..0000000000 --- a/ui-v2/app/styles/base/components/stats-card/layout.scss +++ /dev/null @@ -1,53 +0,0 @@ -%stats-card { - position: relative; -} -%stats-card header a, -%stats-card header a > * { - display: block; -} -%stats-card header a > *, -%stats-card li a > :last-child { - /* TODO: %truncate */ - overflow: hidden; - white-space: nowrap; - text-overflow: ellipsis; -} -%stats-card header a { - padding: 12px 15px; -} -%stats-card header > :not(a) { - @extend %stats-card-icon; -} -%stats-card-icon { - display: inline-flex; - align-items: center; -} -%stats-card-icon:last-child { - position: absolute; - background-size: 16px; - background-position: 5px 5px; - font-size: 1.5em; - width: 28px; - height: 28px; - top: calc(-28px / 2); - left: 15px; - font-size: 0; -} -%stats-card-icon:first-child { - float: right; - padding-left: 30px; - height: 16px; - margin-top: 15px; - margin-right: 15px; -} - -%stats-card li { - height: 33px; -} -%stats-card li a { - display: flex; - vertical-align: text-top; - align-items: center; - padding: 0 15px 0 12px; - height: 100%; -} diff --git a/ui-v2/app/styles/base/components/stats-card/skin.scss b/ui-v2/app/styles/base/components/stats-card/skin.scss deleted file mode 100644 index 14f552fdb1..0000000000 --- a/ui-v2/app/styles/base/components/stats-card/skin.scss +++ /dev/null @@ -1,34 +0,0 @@ -%stats-card { - border: $decor-border-100; - border-radius: $decor-radius-100; -} -%stats-card li { - border-top: $decor-border-100; -} -%stats-card, -%stats-card li { - border-color: $gray-200; -} -%stats-card a { - color: $gray-900; -} -%stats-card, -%stats-card header::before { - box-shadow: $decor-elevation-300; -} -%stats-card:hover, -%stats-card:focus { - box-shadow: $decor-elevation-400; -} -%stats-card header > :not(a):last-child { - border: $decor-border-100; - border-radius: 100%; - border-color: $gray-200; - background-color: $white; -} -%stats-card ul { - /*TODO: %list-style-none?*/ - list-style-type: none; - margin: 0; - padding: 0; -} diff --git a/ui-v2/app/styles/components.scss b/ui-v2/app/styles/components.scss index 77337360c2..20100e9e75 100644 --- a/ui-v2/app/styles/components.scss +++ b/ui-v2/app/styles/components.scss @@ -16,8 +16,6 @@ @import './components/tooltip'; @import './components/tag-list'; @import './components/healthcheck-output'; -@import './components/healthcheck-info'; -@import './components/healthchecked-resource'; @import './components/freetext-filter'; @import './components/filter-bar'; @import './components/tomography-graph'; @@ -34,7 +32,6 @@ @import './components/tabular-details'; @import './components/tabular-collection'; @import './components/list-collection'; -@import './components/grid-collection'; @import './components/popover-select'; @import './components/tooltip-panel'; @import './components/menu-panel'; diff --git a/ui-v2/app/styles/components/grid-collection.scss b/ui-v2/app/styles/components/grid-collection.scss deleted file mode 100644 index 108c3820aa..0000000000 --- a/ui-v2/app/styles/components/grid-collection.scss +++ /dev/null @@ -1,42 +0,0 @@ -.unhealthy > div, -.healthy > div { - @extend %card-grid; -} -.grid-collection { - height: 500px; - position: relative; -} -.healthy > div { - width: calc(100% + 23px); - min-height: 500px; -} -.unhealthy > div { - margin-bottom: 20px; -} -.healthy > div > ul > li { - padding-right: 23px; - padding-bottom: 20px; -} -%card-grid > ul, -%card-grid > ol { - list-style-type: none; - display: grid; - grid-auto-rows: 12px; -} -%card-grid li.empty { - grid-column: 1 / -1; -} -@media #{$--fixed-grid} { - %card-grid > ul, - %card-grid > ol { - grid-gap: 20px 20px; - grid-template-columns: repeat(4, minmax(220px, 1fr)); - } -} -@media #{$--lt-fixed-grid} { - %card-grid > ul, - %card-grid > ol { - grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); - grid-gap: 20px 2%; - } -} diff --git a/ui-v2/app/styles/components/healthcheck-info.scss b/ui-v2/app/styles/components/healthcheck-info.scss deleted file mode 100644 index 5207349bb3..0000000000 --- a/ui-v2/app/styles/components/healthcheck-info.scss +++ /dev/null @@ -1,12 +0,0 @@ -@import './healthcheck-info/index'; -%table tr .healthcheck-info { - @extend %healthcheck-info; -} -// TODO: Look at why we can't have the zeros in the healthcheck-info -%table td span.zero { - @extend %with-minus-square-fill-color-icon; - background-position: left center; - display: block; - text-indent: 20px; - color: $gray-400; -} diff --git a/ui-v2/app/styles/components/healthcheck-info/index.scss b/ui-v2/app/styles/components/healthcheck-info/index.scss deleted file mode 100644 index bc18252196..0000000000 --- a/ui-v2/app/styles/components/healthcheck-info/index.scss +++ /dev/null @@ -1,2 +0,0 @@ -@import './skin'; -@import './layout'; diff --git a/ui-v2/app/styles/components/healthcheck-info/layout.scss b/ui-v2/app/styles/components/healthcheck-info/layout.scss deleted file mode 100644 index a9ec45a422..0000000000 --- a/ui-v2/app/styles/components/healthcheck-info/layout.scss +++ /dev/null @@ -1,17 +0,0 @@ -%healthcheck-info { - display: inline-flex; -} -%healthcheck-info > * { - display: block; -} -%healthcheck-info dt.zero { - display: none; -} -%healthcheck-info dd.zero { - visibility: hidden; -} -%healthcheck-info dd { - box-sizing: content-box; - margin-left: 22px; - padding-right: 10px; -} diff --git a/ui-v2/app/styles/components/healthcheck-info/skin.scss b/ui-v2/app/styles/components/healthcheck-info/skin.scss deleted file mode 100644 index 5f268ab548..0000000000 --- a/ui-v2/app/styles/components/healthcheck-info/skin.scss +++ /dev/null @@ -1,30 +0,0 @@ -%healthcheck-info dt { - font-size: 0; -} -%healthcheck-info dt::before { - @extend %as-pseudo; - position: absolute; - width: 18px; - height: 18px; -} -%healthcheck-info dt.passing::before { - @extend %with-check-circle-fill-color-icon; -} -%healthcheck-info dt.warning::before { - @extend %with-alert-triangle-color-icon; -} -%healthcheck-info dt.critical::before { - @extend %with-cancel-square-fill-color-icon; -} -%healthcheck-info dt.passing, -%healthcheck-info dt.passing + dd { - color: $color-success; -} -%healthcheck-info dt.warning, -%healthcheck-info dt.warning + dd { - color: $color-alert; -} -%healthcheck-info dt.critical, -%healthcheck-info dt.critical + dd { - color: $color-failure; -} diff --git a/ui-v2/app/styles/components/healthchecked-resource.scss b/ui-v2/app/styles/components/healthchecked-resource.scss deleted file mode 100644 index b9037c1c38..0000000000 --- a/ui-v2/app/styles/components/healthchecked-resource.scss +++ /dev/null @@ -1,53 +0,0 @@ -.healthchecked-resource > div { - @extend %stats-card; -} -%stats-card-icon { - @extend %tooltip-below; -} -%stats-card-icon:first-child::before { - @extend %tooltip-left; -} -%stats-card-icon:last-child::before { - @extend %tooltip-right; -} - -%stats-card-icon:last-child { - /* TODO: In order to get rid of our colored star */ - /* this needs to use a %mask, and we are already using */ - /* our before/after psuedo elements for the tooltip */ - /* so this will need reworking slighly before we can */ - /* get rid of our hardcoded magenta star icon */ - @extend %with-star-icon; -} -%stats-card header > .zero { - @extend %with-minus-square-fill-color-icon; - color: $gray-400; -} -%stats-card header > .non-zero { - @extend %with-check-circle-fill-color-icon; - color: $green-500; -} - -%stats-card li a > :first-child { - font-size: 0; - height: 16px; - min-width: 16px; -} -[data-tooltip] { - @extend %with-pseudo-tooltip; -} -%stats-card li a > :last-child { - margin-left: 10px; -} -%stats-card a > :first-child::before { - left: -10px; -} -%stats-card a.passing > :first-child { - @extend %with-check-circle-fill-color-icon; -} -%stats-card a.warning > :first-child { - @extend %with-alert-triangle-color-icon; -} -%stats-card a.critical > :first-child { - @extend %with-cancel-square-fill-color-icon; -} diff --git a/ui-v2/app/styles/components/list-collection.scss b/ui-v2/app/styles/components/list-collection.scss index 78505f9034..0e39f15707 100644 --- a/ui-v2/app/styles/components/list-collection.scss +++ b/ui-v2/app/styles/components/list-collection.scss @@ -1,5 +1,7 @@ .list-collection { @extend %list-collection; +} +%list-collection { height: 500px; position: relative; } diff --git a/ui-v2/tests/integration/components/healthcheck-info-test.js b/ui-v2/tests/integration/components/healthcheck-info-test.js deleted file mode 100644 index a4636bd51b..0000000000 --- a/ui-v2/tests/integration/components/healthcheck-info-test.js +++ /dev/null @@ -1,24 +0,0 @@ -import { module, test } from 'qunit'; -import { setupRenderingTest } from 'ember-qunit'; -import { render } from '@ember/test-helpers'; -import hbs from 'htmlbars-inline-precompile'; - -module('Integration | Component | healthcheck info', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - - await render(hbs`{{healthcheck-info}}`); - - assert.dom('dl').exists({ count: 1 }); - - // Template block usage: - await render(hbs` - {{#healthcheck-info}} - {{/healthcheck-info}} - `); - assert.dom('dl').exists({ count: 1 }); - }); -}); diff --git a/ui-v2/tests/integration/components/healthcheck-status-test.js b/ui-v2/tests/integration/components/healthcheck-status-test.js deleted file mode 100644 index 81cdf81173..0000000000 --- a/ui-v2/tests/integration/components/healthcheck-status-test.js +++ /dev/null @@ -1,22 +0,0 @@ -import { module, test } from 'qunit'; -import { setupRenderingTest } from 'ember-qunit'; -import { render } from '@ember/test-helpers'; -import hbs from 'htmlbars-inline-precompile'; - -module('Integration | Component | healthcheck status', function(hooks) { - setupRenderingTest(hooks); - - test('it renders', async function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - - await render(hbs`{{healthcheck-status}}`); - assert.dom('dt').exists({ count: 1 }); - - // Template block usage: - await render(hbs` - {{#healthcheck-status}}{{/healthcheck-status}} - `); - assert.dom('dt').exists({ count: 1 }); - }); -}); diff --git a/ui-v2/tests/integration/components/healthchecked-resource-test.js b/ui-v2/tests/integration/components/healthchecked-resource-test.js deleted file mode 100644 index 37bc8716bf..0000000000 --- a/ui-v2/tests/integration/components/healthchecked-resource-test.js +++ /dev/null @@ -1,32 +0,0 @@ -import { module, skip } from 'qunit'; -import { setupRenderingTest } from 'ember-qunit'; -import { find } from '@ember/test-helpers'; -import hbs from 'htmlbars-inline-precompile'; - -module('Integration | Component | healthchecked resource', function(hooks) { - setupRenderingTest(hooks); - - skip('it renders', function(assert) { - // Set any properties with this.set('myProperty', 'value'); - // Handle any actions with this.on('myAction', function(val) { ... }); - - this.render(hbs`{{healthchecked-resource}}`); - - assert.ok( - find('*') - .textContent.trim() - .indexOf('other passing checks') !== -1 - ); - - // Template block usage: - this.render(hbs` - {{#healthchecked-resource}}{{/healthchecked-resource}} - `); - - assert.ok( - find('*') - .textContent.trim() - .indexOf('other passing checks') !== -1 - ); - }); -}); From f61649f2eb6350a078c4c4707600cceef4d18075 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 2 Sep 2020 14:47:04 +0100 Subject: [PATCH 036/122] ui: Reinstate tooltip for exposed paths pill (#8598) --- ui-v2/app/styles/components/healthcheck-output.scss | 5 ++++- ui-v2/app/styles/components/healthcheck-output/skin.scss | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ui-v2/app/styles/components/healthcheck-output.scss b/ui-v2/app/styles/components/healthcheck-output.scss index d9e19fdeb5..117c43288f 100644 --- a/ui-v2/app/styles/components/healthcheck-output.scss +++ b/ui-v2/app/styles/components/healthcheck-output.scss @@ -2,7 +2,10 @@ .healthcheck-output { @extend %healthcheck-output; } -%healthcheck-output em::before { +%healthcheck-output dd em[data-tooltip] { + @extend %with-pseudo-tooltip; +} +%healthcheck-output dd em::before { width: 250px; /* TODO: All tooltips previously used */ /* nowrap, they shouldn't */ diff --git a/ui-v2/app/styles/components/healthcheck-output/skin.scss b/ui-v2/app/styles/components/healthcheck-output/skin.scss index 66faff0290..87ffad8309 100644 --- a/ui-v2/app/styles/components/healthcheck-output/skin.scss +++ b/ui-v2/app/styles/components/healthcheck-output/skin.scss @@ -16,6 +16,7 @@ } %healthcheck-output dd em { @extend %pill; + background-color: $gray-100; /*TODO: Should this be merged into %pill? */ cursor: default; font-style: normal; From 63f79e5f9b84989cc313d3c8a39f433d0de5be64 Mon Sep 17 00:00:00 2001 From: freddygv Date: Wed, 2 Sep 2020 09:10:50 -0600 Subject: [PATCH 037/122] Restructure structs and other PR comments --- agent/consul/discoverychain/compile.go | 8 +- agent/consul/discoverychain/compile_test.go | 168 +++--- agent/proxycfg/testing.go | 38 +- agent/structs/config_entry_discoverychain.go | 277 +++++++--- .../config_entry_discoverychain_test.go | 507 +++++++++++++++--- agent/structs/discovery_chain.go | 2 +- agent/xds/clusters.go | 66 +-- agent/xds/clusters_test.go | 118 +--- agent/xds/routes.go | 95 +--- agent/xds/routes_test.go | 214 +------- ...ignore-extra-resolvers.envoy-1-12-x.golden | 32 -- ...ignore-extra-resolvers.envoy-1-13-x.golden | 32 -- ...ignore-extra-resolvers.envoy-1-14-x.golden | 32 -- ...ignore-extra-resolvers.envoy-1-15-x.golden | 32 -- ...ateway-service-subsets.envoy-1-12-x.golden | 32 -- ...ateway-service-subsets.envoy-1-13-x.golden | 32 -- ...ateway-service-subsets.envoy-1-14-x.golden | 32 -- ...ateway-service-subsets.envoy-1-15-x.golden | 32 -- ...teway-service-timeouts.envoy-1-12-x.golden | 34 +- ...teway-service-timeouts.envoy-1-13-x.golden | 34 +- ...teway-service-timeouts.envoy-1-14-x.golden | 34 +- ...teway-service-timeouts.envoy-1-15-x.golden | 34 +- ...stname-service-subsets.envoy-1-12-x.golden | 86 --- ...stname-service-subsets.envoy-1-13-x.golden | 86 --- ...stname-service-subsets.envoy-1-14-x.golden | 86 --- ...stname-service-subsets.envoy-1-15-x.golden | 86 --- ...ignore-extra-resolvers.envoy-1-12-x.golden | 56 -- ...ignore-extra-resolvers.envoy-1-13-x.golden | 56 -- ...ignore-extra-resolvers.envoy-1-14-x.golden | 56 -- ...ignore-extra-resolvers.envoy-1-15-x.golden | 56 -- ...ateway-service-subsets.envoy-1-12-x.golden | 88 --- ...ateway-service-subsets.envoy-1-13-x.golden | 88 --- ...ateway-service-subsets.envoy-1-14-x.golden | 88 --- ...ateway-service-subsets.envoy-1-15-x.golden | 88 --- ...ting-gateway-lb-config.envoy-1-12-x.golden | 75 +-- ...ting-gateway-lb-config.envoy-1-13-x.golden | 75 +-- ...ting-gateway-lb-config.envoy-1-14-x.golden | 75 +-- ...ting-gateway-lb-config.envoy-1-15-x.golden | 75 +-- api/config_entry_discoverychain.go | 43 +- api/config_entry_discoverychain_test.go | 44 +- command/config/write/config_write_test.go | 230 ++++++++ .../agent/config-entries/service-resolver.mdx | 84 +-- .../pages/docs/internals/discovery-chain.mdx | 6 + 43 files changed, 1228 insertions(+), 2284 deletions(-) diff --git a/agent/consul/discoverychain/compile.go b/agent/consul/discoverychain/compile.go index d946677870..31c3baa967 100644 --- a/agent/consul/discoverychain/compile.go +++ b/agent/consul/discoverychain/compile.go @@ -745,9 +745,11 @@ func (c *compiler) getSplitterNode(sid structs.ServiceID) (*structs.DiscoveryGra // with distinct hash-based load balancer configs specified in their service resolvers. // We cannot apply multiple hash policies to a splitter node's route action. // Therefore, we attach the first hash-based load balancer config we encounter. - if !hasLB && node.LoadBalancer.IsHashBased() { - splitNode.LoadBalancer = node.LoadBalancer - hasLB = true + if !hasLB { + if lb := node.LoadBalancer; lb != nil && lb.EnvoyLBConfig != nil && lb.EnvoyLBConfig.IsHashBased() { + splitNode.LoadBalancer = node.LoadBalancer + hasLB = true + } } } diff --git a/agent/consul/discoverychain/compile_test.go b/agent/consul/discoverychain/compile_test.go index e5aca02b4a..4204362723 100644 --- a/agent/consul/discoverychain/compile_test.go +++ b/agent/consul/discoverychain/compile_test.go @@ -1761,14 +1761,16 @@ func testcase_AllBellsAndWhistles() compileTestCase { "prod": {Filter: "ServiceMeta.env == prod"}, "qa": {Filter: "ServiceMeta.env == qa"}, }, - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MaximumRingSize: 100, - }, - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 100, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, }, }, }, @@ -1833,14 +1835,16 @@ func testcase_AllBellsAndWhistles() compileTestCase { NextNode: "resolver:v3.main.default.dc1", }, }, - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MaximumRingSize: 100, - }, - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 100, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, }, }, }, @@ -1852,14 +1856,16 @@ func testcase_AllBellsAndWhistles() compileTestCase { ConnectTimeout: 5 * time.Second, Target: "prod.redirected.default.dc1", }, - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MaximumRingSize: 100, - }, - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 100, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, }, }, }, @@ -2275,24 +2281,28 @@ func testcase_LBConfig() compileTestCase { &structs.ServiceResolverConfigEntry{ Kind: "service-resolver", Name: "foo", - LoadBalancer: structs.LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: structs.LeastRequestConfig{ - ChoiceCount: 3, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "least_request", + LeastRequestConfig: &structs.LeastRequestConfig{ + ChoiceCount: 3, + }, }, }, }, &structs.ServiceResolverConfigEntry{ Kind: "service-resolver", Name: "bar", - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MaximumRingSize: 101, - }, - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, }, }, }, @@ -2300,13 +2310,19 @@ func testcase_LBConfig() compileTestCase { &structs.ServiceResolverConfigEntry{ Kind: "service-resolver", Name: "baz", - LoadBalancer: structs.LoadBalancer{ - Policy: "maglev", - HashPolicies: []structs.HashPolicy{ - { - Field: "cookie", - FieldMatchValue: "chocolate-chip", - Terminal: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "maglev", + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldValue: "chocolate-chip", + CookieConfig: &structs.CookieConfig{ + TTL: 2 * time.Minute, + Path: "/bowl", + }, + Terminal: true, + }, }, }, }, @@ -2336,14 +2352,16 @@ func testcase_LBConfig() compileTestCase { }, // The LB config from bar is attached because splitters only care about hash-based policies, // and it's the config from bar not baz because we pick the first one we encounter in the Splits. - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MaximumRingSize: 101, - }, - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, }, }, }, @@ -2357,10 +2375,12 @@ func testcase_LBConfig() compileTestCase { ConnectTimeout: 5 * time.Second, Target: "foo.default.dc1", }, - LoadBalancer: structs.LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: structs.LeastRequestConfig{ - ChoiceCount: 3, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "least_request", + LeastRequestConfig: &structs.LeastRequestConfig{ + ChoiceCount: 3, + }, }, }, }, @@ -2372,14 +2392,16 @@ func testcase_LBConfig() compileTestCase { ConnectTimeout: 5 * time.Second, Target: "bar.default.dc1", }, - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MaximumRingSize: 101, - }, - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, }, }, }, @@ -2392,13 +2414,19 @@ func testcase_LBConfig() compileTestCase { ConnectTimeout: 5 * time.Second, Target: "baz.default.dc1", }, - LoadBalancer: structs.LoadBalancer{ - Policy: "maglev", - HashPolicies: []structs.HashPolicy{ - { - Field: "cookie", - FieldMatchValue: "chocolate-chip", - Terminal: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "maglev", + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldValue: "chocolate-chip", + CookieConfig: &structs.CookieConfig{ + TTL: 2 * time.Minute, + Path: "/bowl", + }, + Terminal: true, + }, }, }, }, diff --git a/agent/proxycfg/testing.go b/agent/proxycfg/testing.go index 96a4c8749f..0ed1acd12b 100644 --- a/agent/proxycfg/testing.go +++ b/agent/proxycfg/testing.go @@ -1274,25 +1274,27 @@ func setupTestVariationConfigEntriesAndSnapshot( &structs.ServiceResolverConfigEntry{ Kind: structs.ServiceResolver, Name: "db", - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MinimumRingSize: 20, - MaximumRingSize: 30, - }, - HashPolicies: []structs.HashPolicy{ - { - Field: "cookie", - FieldMatchValue: "chocolate-chip", - Terminal: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 30, }, - { - Field: "header", - FieldMatchValue: "x-user-id", - }, - { - SourceAddress: true, - Terminal: true, + HashPolicies: []structs.HashPolicy{ + { + Field: "cookie", + FieldValue: "chocolate-chip", + Terminal: true, + }, + { + Field: "header", + FieldValue: "x-user-id", + }, + { + SourceIP: true, + Terminal: true, + }, }, }, }, diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index 79a33cb48a..e033f674fb 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -3,6 +3,7 @@ package structs import ( "encoding/json" "fmt" + "github.com/golang/protobuf/ptypes" "math" "regexp" "sort" @@ -10,12 +11,29 @@ import ( "strings" "time" + envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" + envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" + "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/lib" "github.com/mitchellh/hashstructure" ) +const ( + // Names of Envoy's LB policies + LBPolicyMaglev = "maglev" + LBPolicyRingHash = "ring_hash" + LBPolicyRandom = "random" + LBPolicyLeastRequest = "least_request" + LBPolicyRoundRobin = "round_robin" + + // Names of Envoy's LB policies + HashPolicyCookie = "cookie" + HashPolicyHeader = "header" + HashPolicyQueryParam = "query_parameter" +) + // ServiceRouterConfigEntry defines L7 (e.g. http) routing rules for a named // service exposed in Connect. // @@ -641,7 +659,7 @@ type ServiceResolverConfigEntry struct { // LoadBalancer determines the load balancing policy and configuration for services // issuing requests to this upstream service. - LoadBalancer LoadBalancer `json:",omitempty" alias:"load_balancer"` + LoadBalancer *LoadBalancer `json:",omitempty" alias:"load_balancer"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex @@ -811,53 +829,60 @@ func (e *ServiceResolverConfigEntry) Validate() error { return fmt.Errorf("Bad ConnectTimeout '%s', must be >= 0", e.ConnectTimeout) } - validPolicies := map[string]bool{ - "": true, - "random": true, - "round_robin": true, - "least_request": true, - "ring_hash": true, - "maglev": true, - } - if ok := validPolicies[e.LoadBalancer.Policy]; !ok { - return fmt.Errorf("Bad LoadBalancer policy: %q is not supported", e.LoadBalancer.Policy) - } + if e.LoadBalancer != nil && e.LoadBalancer.EnvoyLBConfig != nil { + ec := e.LoadBalancer.EnvoyLBConfig - if e.LoadBalancer.Policy != "ring_hash" && e.LoadBalancer.RingHashConfig != (RingHashConfig{}) { - return fmt.Errorf("Bad LoadBalancer configuration. "+ - "RingHashConfig specified for incompatible load balancing policy %q", e.LoadBalancer.Policy) - } - if e.LoadBalancer.Policy != "least_request" && e.LoadBalancer.LeastRequestConfig != (LeastRequestConfig{}) { - return fmt.Errorf("Bad LoadBalancer configuration. "+ - "LeastRequestConfig specified for incompatible load balancing policy %q", e.LoadBalancer.Policy) - } - if !e.LoadBalancer.IsHashBased() && len(e.LoadBalancer.HashPolicies) > 0 { - return fmt.Errorf("Bad LoadBalancer configuration: "+ - "HashPolicies specified for non-hash-based Policy: %q", e.LoadBalancer.Policy) - } + validPolicies := map[string]bool{ + "": true, + LBPolicyRandom: true, + LBPolicyRoundRobin: true, + LBPolicyLeastRequest: true, + LBPolicyRingHash: true, + LBPolicyMaglev: true, + } + if ok := validPolicies[ec.Policy]; !ok { + return fmt.Errorf("Bad LoadBalancer policy: %q is not supported", ec.Policy) + } - validFields := map[string]bool{ - "header": true, - "cookie": true, - "query_parameter": true, - } - for i, hp := range e.LoadBalancer.HashPolicies { - if ok := validFields[hp.Field]; hp.Field != "" && !ok { - return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: %q is not a supported field", i, hp.Field) + if ec.Policy != LBPolicyRingHash && ec.RingHashConfig != nil { + return fmt.Errorf("Bad LoadBalancer configuration. "+ + "RingHashConfig specified for incompatible load balancing policy %q", ec.Policy) } - if hp.SourceAddress && hp.Field != "" { - return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: "+ - "A single hash policy cannot hash both a source address and a %q", i, hp.Field) + if ec.Policy != LBPolicyLeastRequest && ec.LeastRequestConfig != nil { + return fmt.Errorf("Bad LoadBalancer configuration. "+ + "LeastRequestConfig specified for incompatible load balancing policy %q", ec.Policy) } - if hp.SourceAddress && hp.FieldMatchValue != "" { - return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: "+ - "A FieldMatchValue cannot be specified when hashing SourceAddress", i) + if !ec.IsHashBased() && len(ec.HashPolicies) > 0 { + return fmt.Errorf("Bad LoadBalancer configuration: "+ + "HashPolicies specified for non-hash-based Policy: %q", ec.Policy) } - if hp.Field != "" && hp.FieldMatchValue == "" { - return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: Field %q was specified without a FieldMatchValue", i, hp.Field) + + validFields := map[string]bool{ + HashPolicyHeader: true, + HashPolicyCookie: true, + HashPolicyQueryParam: true, } - if hp.FieldMatchValue != "" && hp.Field == "" { - return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: FieldMatchValue requires a Field to apply to", i) + for i, hp := range ec.HashPolicies { + if ok := validFields[hp.Field]; hp.Field != "" && !ok { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: %q is not a supported field", i, hp.Field) + } + if hp.SourceIP && hp.Field != "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: "+ + "A single hash policy cannot hash both a source address and a %q", i, hp.Field) + } + if hp.SourceIP && hp.FieldValue != "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: "+ + "A FieldValue cannot be specified when hashing SourceIP", i) + } + if hp.Field != "" && hp.FieldValue == "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: Field %q was specified without a FieldValue", i, hp.Field) + } + if hp.FieldValue != "" && hp.Field == "" { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: FieldValue requires a Field to apply to", i) + } + if hp.CookieConfig != nil && hp.Field != HashPolicyCookie { + return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: cookie_config provided for %q", i, hp.Field) + } } } @@ -1000,14 +1025,22 @@ type ServiceResolverFailover struct { // LoadBalancer determines the load balancing policy and configuration for services // issuing requests to this upstream service. type LoadBalancer struct { + // EnvoyLBConfig contains Envoy-specific load balancing configuration for this upstream + EnvoyLBConfig *EnvoyLBConfig `json:",omitempty" alias:"envoy_lb_config"` + + // OpaqueConfig contains load balancing configuration opaque to Consul for 3rd party proxies + OpaqueConfig string `json:",omitempty" alias:"opaque_config"` +} + +type EnvoyLBConfig struct { // Policy is the load balancing policy used to select a host Policy string `json:",omitempty"` // RingHashConfig contains configuration for the "ring_hash" policy type - RingHashConfig RingHashConfig `json:",omitempty" alias:"ring_hash_config"` + RingHashConfig *RingHashConfig `json:",omitempty" alias:"ring_hash_config"` // LeastRequestConfig contains configuration for the "least_request" policy type - LeastRequestConfig LeastRequestConfig `json:",omitempty" alias:"least_request_config"` + LeastRequestConfig *LeastRequestConfig `json:",omitempty" alias:"least_request_config"` // HashPolicies is a list of hash policies to use for hashing load balancing algorithms. // Hash policies are evaluated individually and combined such that identical lists @@ -1017,15 +1050,6 @@ type LoadBalancer struct { HashPolicies []HashPolicy `json:",omitempty" alias:"hash_policies"` } -func (l LoadBalancer) IsHashBased() bool { - switch l.Policy { - case "maglev", "ring_hash": - return true - default: - return false - } -} - // RingHashConfig contains configuration for the "ring_hash" policy type type RingHashConfig struct { // MinimumRingSize determines the minimum number of entries in the hash ring @@ -1041,25 +1065,24 @@ type LeastRequestConfig struct { ChoiceCount uint32 `json:",omitempty" alias:"choice_count"` } -// HashPolicy is a list of hash policies to use for hashing load balancing algorithms. -// Hash policies are evaluated individually and combined such that identical lists -// result in the same hash. -// If no hash policies are present, or none are successfully evaluated, -// then a random backend host will be selected. +// HashPolicy defines which attributes will be hashed by hash-based LB algorithms type HashPolicy struct { // Field is the attribute type to hash on. // Must be one of "header","cookie", or "query_parameter". // Cannot be specified along with SourceIP. Field string `json:",omitempty"` - // FieldMatchValue is the value to hash. + // FieldValue is the value to hash. // ie. header name, cookie name, URL query parameter name // Cannot be specified along with SourceIP. - FieldMatchValue string `json:",omitempty" alias:"field_value"` + FieldValue string `json:",omitempty" alias:"field_value"` - // SourceAddress determines whether the hash should be of the source IP rather than of a field and field value. - // Cannot be specified along with Field or FieldMatchValue. - SourceAddress bool `json:",omitempty" alias:"source_address"` + // CookieConfig contains configuration for the "cookie" hash policy type. + CookieConfig *CookieConfig `json:",omitempty" alias:"cookie_config"` + + // SourceIP determines whether the hash should be of the source IP rather than of a field and field value. + // Cannot be specified along with Field or FieldValue. + SourceIP bool `json:",omitempty" alias:"source_ip"` // Terminal will short circuit the computation of the hash when multiple hash policies are present. // If a hash is computed when a Terminal policy is evaluated, @@ -1067,6 +1090,134 @@ type HashPolicy struct { Terminal bool `json:",omitempty"` } +// CookieConfig contains configuration for the "cookie" hash policy type. +// This is specified to have Envoy generate a cookie for a client on its first request. +type CookieConfig struct { + // TTL for generated cookies + TTL time.Duration `json:",omitempty"` + + // The path to set for the cookie + Path string `json:",omitempty"` +} + +func (ec *EnvoyLBConfig) IsHashBased() bool { + if ec == nil { + return false + } + + switch ec.Policy { + case LBPolicyMaglev, LBPolicyRingHash: + return true + default: + return false + } +} + +func (ec *EnvoyLBConfig) InjectToCluster(c *envoy.Cluster) error { + if ec == nil { + return nil + } + + switch ec.Policy { + case "": + return nil + case LBPolicyLeastRequest: + c.LbPolicy = envoy.Cluster_LEAST_REQUEST + + if ec.LeastRequestConfig != nil { + c.LbConfig = &envoy.Cluster_LeastRequestLbConfig_{ + LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ + ChoiceCount: &wrappers.UInt32Value{Value: ec.LeastRequestConfig.ChoiceCount}, + }, + } + } + case LBPolicyRoundRobin: + c.LbPolicy = envoy.Cluster_ROUND_ROBIN + + case LBPolicyRandom: + c.LbPolicy = envoy.Cluster_RANDOM + + case LBPolicyRingHash: + c.LbPolicy = envoy.Cluster_RING_HASH + + if ec.RingHashConfig != nil { + c.LbConfig = &envoy.Cluster_RingHashLbConfig_{ + RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ + MinimumRingSize: &wrappers.UInt64Value{Value: ec.RingHashConfig.MinimumRingSize}, + MaximumRingSize: &wrappers.UInt64Value{Value: ec.RingHashConfig.MaximumRingSize}, + }, + } + } + case LBPolicyMaglev: + c.LbPolicy = envoy.Cluster_MAGLEV + + default: + return fmt.Errorf("unsupported load balancer policy %q for cluster %q", ec.Policy, c.Name) + } + return nil +} + +func (ec *EnvoyLBConfig) InjectToRouteAction(action *envoyroute.RouteAction) error { + if ec == nil || !ec.IsHashBased() { + return nil + } + + result := make([]*envoyroute.RouteAction_HashPolicy, 0, len(ec.HashPolicies)) + for _, policy := range ec.HashPolicies { + if policy.SourceIP { + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: policy.Terminal, + }) + + continue + } + + switch policy.Field { + case HashPolicyHeader: + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: policy.FieldValue, + }, + }, + Terminal: policy.Terminal, + }) + case HashPolicyCookie: + cookie := envoyroute.RouteAction_HashPolicy_Cookie{ + Name: policy.FieldValue, + } + if policy.CookieConfig != nil { + cookie.Ttl = ptypes.DurationProto(policy.CookieConfig.TTL) + cookie.Path = policy.CookieConfig.Path + } + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &cookie, + }, + Terminal: policy.Terminal, + }) + case HashPolicyQueryParam: + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_QueryParameter_{ + QueryParameter: &envoyroute.RouteAction_HashPolicy_QueryParameter{ + Name: policy.FieldValue, + }, + }, + Terminal: policy.Terminal, + }) + default: + return fmt.Errorf("unsupported load balancer hash policy field: %v", policy.Field) + } + } + action.HashPolicy = result + return nil +} + type discoveryChainConfigEntry interface { ConfigEntry // ListRelatedServices returns a list of other names of services referenced diff --git a/agent/structs/config_entry_discoverychain_test.go b/agent/structs/config_entry_discoverychain_test.go index d5db08ec52..bd323855c0 100644 --- a/agent/structs/config_entry_discoverychain_test.go +++ b/agent/structs/config_entry_discoverychain_test.go @@ -3,10 +3,14 @@ package structs import ( "bytes" "fmt" + "github.com/golang/protobuf/ptypes" "strings" "testing" "time" + envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" + envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" + "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/acl" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -552,25 +556,31 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { { name: "empty policy is valid", entry: &ServiceResolverConfigEntry{ - Kind: ServiceResolver, - Name: "test", - LoadBalancer: LoadBalancer{Policy: ""}, + Kind: ServiceResolver, + Name: "test", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{Policy: ""}, + }, }, }, { name: "supported policy", entry: &ServiceResolverConfigEntry{ - Kind: ServiceResolver, - Name: "test", - LoadBalancer: LoadBalancer{Policy: "random"}, + Kind: ServiceResolver, + Name: "test", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{Policy: LBPolicyRandom}, + }, }, }, { name: "unsupported policy", entry: &ServiceResolverConfigEntry{ - Kind: ServiceResolver, - Name: "test", - LoadBalancer: LoadBalancer{Policy: "fake-policy"}, + Kind: ServiceResolver, + Name: "test", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{Policy: "fake-policy"}, + }, }, validateErr: `"fake-policy" is not supported`, }, @@ -579,9 +589,11 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "ring_hash", - LeastRequestConfig: LeastRequestConfig{ChoiceCount: 2}, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyRingHash, + LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 10}, + }, }, }, validateErr: `LeastRequestConfig specified for incompatible load balancing policy`, @@ -591,9 +603,11 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "least_request", - RingHashConfig: RingHashConfig{MinimumRingSize: 1024}, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyLeastRequest, + RingHashConfig: &RingHashConfig{MinimumRingSize: 1024}, + }, }, }, validateErr: `RingHashConfig specified for incompatible load balancing policy`, @@ -603,9 +617,11 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: RingHashConfig{MinimumRingSize: 1024}, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyRingHash, + RingHashConfig: &RingHashConfig{MinimumRingSize: 1024}, + }, }, }, }, @@ -614,9 +630,11 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: LeastRequestConfig{ChoiceCount: 2}, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyLeastRequest, + LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 2}, + }, }, }, }, @@ -625,12 +643,12 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{Policy: ""}, }, }, check: func(t *testing.T, entry *ServiceResolverConfigEntry) { - require.Equal(t, "", entry.LoadBalancer.Policy) + require.Equal(t, "", entry.LoadBalancer.EnvoyLBConfig.Policy) }, }, { @@ -638,28 +656,77 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "", - HashPolicies: []HashPolicy{ - { - SourceAddress: true, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: "", + HashPolicies: []HashPolicy{ + { + SourceIP: true, + }, }, }, }, }, validateErr: `HashPolicies specified for non-hash-based Policy`, }, + { + name: "empty policy with hash policy", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + Field: HashPolicyHeader, + FieldValue: "x-user-id", + CookieConfig: &CookieConfig{ + TTL: 10 * time.Second, + Path: "/root", + }, + }, + }, + }, + }, + }, + validateErr: `cookie_config provided for "header"`, + }, + { + name: "empty policy with hash policy", + entry: &ServiceResolverConfigEntry{ + Kind: ServiceResolver, + Name: "test", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + Field: HashPolicyCookie, + FieldValue: "good-cookie", + CookieConfig: &CookieConfig{ + TTL: 10 * time.Second, + Path: "/oven", + }, + }, + }, + }, + }, + }, + }, { name: "supported match field", entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "maglev", - HashPolicies: []HashPolicy{ - { - Field: "header", - FieldMatchValue: "X-Consul-Token", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + Field: "header", + FieldValue: "X-Consul-Token", + }, }, }, }, @@ -670,28 +737,32 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "maglev", - HashPolicies: []HashPolicy{ - { - Field: "not-header", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + Field: "fake-field", + }, }, }, }, }, - validateErr: `"not-header" is not a supported field`, + validateErr: `"fake-field" is not a supported field`, }, { name: "cannot match on source address and custom field", entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "maglev", - HashPolicies: []HashPolicy{ - { - Field: "header", - SourceAddress: true, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + Field: "header", + SourceIP: true, + }, }, }, }, @@ -703,67 +774,75 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "maglev", - HashPolicies: []HashPolicy{ - { - FieldMatchValue: "X-Consul-Token", - SourceAddress: true, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + FieldValue: "X-Consul-Token", + SourceIP: true, + }, }, }, }, }, - validateErr: `A FieldMatchValue cannot be specified when hashing SourceAddress`, + validateErr: `A FieldValue cannot be specified when hashing SourceIP`, }, { name: "field without match value", entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "maglev", - HashPolicies: []HashPolicy{ - { - Field: "header", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + Field: "header", + }, }, }, }, }, - validateErr: `Field "header" was specified without a FieldMatchValue`, + validateErr: `Field "header" was specified without a FieldValue`, }, { name: "field without match value", entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "maglev", - HashPolicies: []HashPolicy{ - { - FieldMatchValue: "my-cookie", + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + FieldValue: "my-cookie", + }, }, }, }, }, - validateErr: `FieldMatchValue requires a Field to apply to`, + validateErr: `FieldValue requires a Field to apply to`, }, { name: "ring hash kitchen sink", entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: RingHashConfig{MaximumRingSize: 10, MinimumRingSize: 2}, - HashPolicies: []HashPolicy{ - { - Field: "cookie", - FieldMatchValue: "my-cookie", - }, - { - Field: "header", - FieldMatchValue: "alt-header", - Terminal: true, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyRingHash, + RingHashConfig: &RingHashConfig{MaximumRingSize: 10, MinimumRingSize: 2}, + HashPolicies: []HashPolicy{ + { + Field: "cookie", + FieldValue: "my-cookie", + }, + { + Field: "header", + FieldValue: "alt-header", + Terminal: true, + }, }, }, }, @@ -774,9 +853,11 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { entry: &ServiceResolverConfigEntry{ Kind: ServiceResolver, Name: "test", - LoadBalancer: LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: LeastRequestConfig{ChoiceCount: 20}, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: LBPolicyLeastRequest, + LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 20}, + }, }, }, }, @@ -1444,3 +1525,267 @@ func TestIsProtocolHTTPLike(t *testing.T) { assert.True(t, IsProtocolHTTPLike("http2")) assert.True(t, IsProtocolHTTPLike("grpc")) } + +func TestEnvoyLBConfig_InjectToRouteAction(t *testing.T) { + var tests = []struct { + name string + lb *EnvoyLBConfig + expected envoyroute.RouteAction + }{ + { + name: "empty", + lb: &EnvoyLBConfig{ + Policy: "", + }, + // we only modify route actions for hash-based LB policies + expected: envoyroute.RouteAction{}, + }, + { + name: "least request", + lb: &EnvoyLBConfig{ + Policy: LBPolicyLeastRequest, + LeastRequestConfig: &LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + // we only modify route actions for hash-based LB policies + expected: envoyroute.RouteAction{}, + }, + { + name: "headers", + lb: &EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &RingHashConfig{ + MinimumRingSize: 3, + MaximumRingSize: 7, + }, + HashPolicies: []HashPolicy{ + { + Field: HashPolicyHeader, + FieldValue: "x-route-key", + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: "x-route-key", + }, + }, + Terminal: true, + }, + }, + }, + }, + { + name: "cookies", + lb: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + Field: HashPolicyCookie, + FieldValue: "red-velvet", + Terminal: true, + }, + { + Field: HashPolicyCookie, + FieldValue: "oatmeal", + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "red-velvet", + }, + }, + Terminal: true, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "oatmeal", + }, + }, + }, + }, + }, + }, + { + name: "source addr", + lb: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + SourceIP: true, + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: true, + }, + }, + }, + }, + { + name: "kitchen sink", + lb: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + HashPolicies: []HashPolicy{ + { + SourceIP: true, + Terminal: true, + }, + { + Field: HashPolicyCookie, + FieldValue: "oatmeal", + CookieConfig: &CookieConfig{ + TTL: 10 * time.Second, + Path: "/oven", + }, + }, + { + Field: HashPolicyHeader, + FieldValue: "special-header", + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: true, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "oatmeal", + Ttl: ptypes.DurationProto(10 * time.Second), + Path: "/oven", + }, + }, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: "special-header", + }, + }, + Terminal: true, + }, + }, + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + var ra envoyroute.RouteAction + err := tc.lb.InjectToRouteAction(&ra) + require.NoError(t, err) + + require.Equal(t, &tc.expected, &ra) + }) + } +} + +func TestEnvoyLBConfig_InjectToCluster(t *testing.T) { + var tests = []struct { + name string + lb *EnvoyLBConfig + expected envoy.Cluster + }{ + { + name: "skip empty", + lb: &EnvoyLBConfig{ + Policy: "", + }, + expected: envoy.Cluster{}, + }, + { + name: "round robin", + lb: &EnvoyLBConfig{ + Policy: LBPolicyRoundRobin, + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_ROUND_ROBIN}, + }, + { + name: "random", + lb: &EnvoyLBConfig{ + Policy: LBPolicyRandom, + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_RANDOM}, + }, + { + name: "maglev", + lb: &EnvoyLBConfig{ + Policy: LBPolicyMaglev, + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_MAGLEV}, + }, + { + name: "ring_hash", + lb: &EnvoyLBConfig{ + Policy: LBPolicyRingHash, + RingHashConfig: &RingHashConfig{ + MinimumRingSize: 3, + MaximumRingSize: 7, + }, + }, + expected: envoy.Cluster{ + LbPolicy: envoy.Cluster_RING_HASH, + LbConfig: &envoy.Cluster_RingHashLbConfig_{ + RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ + MinimumRingSize: &wrappers.UInt64Value{Value: 3}, + MaximumRingSize: &wrappers.UInt64Value{Value: 7}, + }, + }, + }, + }, + { + name: "least_request", + lb: &EnvoyLBConfig{ + Policy: "least_request", + LeastRequestConfig: &LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + expected: envoy.Cluster{ + LbPolicy: envoy.Cluster_LEAST_REQUEST, + LbConfig: &envoy.Cluster_LeastRequestLbConfig_{ + LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ + ChoiceCount: &wrappers.UInt32Value{Value: 3}, + }, + }, + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + var c envoy.Cluster + err := tc.lb.InjectToCluster(&c) + require.NoError(t, err) + + require.Equal(t, tc.expected, c) + }) + } +} diff --git a/agent/structs/discovery_chain.go b/agent/structs/discovery_chain.go index 85ee5965cb..77eb03937c 100644 --- a/agent/structs/discovery_chain.go +++ b/agent/structs/discovery_chain.go @@ -109,7 +109,7 @@ type DiscoveryGraphNode struct { Resolver *DiscoveryResolver `json:",omitempty"` // shared by Type==resolver || Type==splitter - LoadBalancer LoadBalancer `json:",omitempty"` + LoadBalancer *LoadBalancer `json:",omitempty"` } func (s *DiscoveryGraphNode) IsRouter() bool { diff --git a/agent/xds/clusters.go b/agent/xds/clusters.go index 8bad63b63f..b872432128 100644 --- a/agent/xds/clusters.go +++ b/agent/xds/clusters.go @@ -16,7 +16,6 @@ import ( "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes" "github.com/golang/protobuf/ptypes/any" - "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" @@ -206,13 +205,14 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ clusterName := connect.ServiceSNI(svc.Name, "", svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) resolver, hasResolver := resolvers[svc] - var lb structs.LoadBalancer + var loadBalancer *structs.EnvoyLBConfig - if !hasResolver { + if hasResolver && resolver.LoadBalancer != nil { + loadBalancer = resolver.LoadBalancer.EnvoyLBConfig + + } else { // Use a zero value resolver with no timeout and no subsets resolver = &structs.ServiceResolverConfigEntry{} - } else { - lb = resolver.LoadBalancer } // When making service clusters we only pass endpoints with hostnames if the kind is a terminating gateway @@ -232,16 +232,14 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ case structs.ServiceKindTerminatingGateway: injectTerminatingGatewayTLSContext(cfgSnap, cluster, svc) - err := injectLBToCluster(lb, cluster) - if err != nil { + if err := loadBalancer.InjectToCluster(cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } case structs.ServiceKindMeshGateway: // We can't apply hash based LB config to mesh gateways because they rely on inspecting HTTP attributes // and mesh gateways do not decrypt traffic - if !lb.IsHashBased() { - err := injectLBToCluster(lb, cluster) - if err != nil { + if !loadBalancer.IsHashBased() { + if err := loadBalancer.InjectToCluster(cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } } @@ -267,16 +265,15 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ case structs.ServiceKindTerminatingGateway: injectTerminatingGatewayTLSContext(cfgSnap, cluster, svc) - err := injectLBToCluster(lb, cluster) - if err != nil { + if err := loadBalancer.InjectToCluster(cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } + case structs.ServiceKindMeshGateway: // We can't apply hash based LB config to mesh gateways because they rely on inspecting HTTP attributes // and mesh gateways do not decrypt traffic - if !lb.IsHashBased() { - err := injectLBToCluster(lb, cluster) - if err != nil { + if !loadBalancer.IsHashBased() { + if err := loadBalancer.InjectToCluster(cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } } @@ -516,8 +513,12 @@ func (s *Server) makeUpstreamClustersForDiscoveryChain( OutlierDetection: cfg.PassiveHealthCheck.AsOutlierDetection(), } - if err := injectLBToCluster(node.LoadBalancer, c); err != nil { - return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", sni, err) + var lb *structs.EnvoyLBConfig + if node.LoadBalancer != nil { + lb = node.LoadBalancer.EnvoyLBConfig + } + if err := lb.InjectToCluster(c); err != nil { + return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } proto := cfg.Protocol @@ -557,37 +558,6 @@ func (s *Server) makeUpstreamClustersForDiscoveryChain( return out, nil } -func injectLBToCluster(l structs.LoadBalancer, c *envoy.Cluster) error { - switch l.Policy { - case "": - return nil - case "least_request": - c.LbPolicy = envoy.Cluster_LEAST_REQUEST - c.LbConfig = &envoy.Cluster_LeastRequestLbConfig_{ - LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ - ChoiceCount: &wrappers.UInt32Value{Value: l.LeastRequestConfig.ChoiceCount}, - }, - } - case "round_robin": - c.LbPolicy = envoy.Cluster_ROUND_ROBIN - case "random": - c.LbPolicy = envoy.Cluster_RANDOM - case "ring_hash": - c.LbPolicy = envoy.Cluster_RING_HASH - c.LbConfig = &envoy.Cluster_RingHashLbConfig_{ - RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ - MinimumRingSize: &wrappers.UInt64Value{Value: l.RingHashConfig.MinimumRingSize}, - MaximumRingSize: &wrappers.UInt64Value{Value: l.RingHashConfig.MaximumRingSize}, - }, - } - case "maglev": - c.LbPolicy = envoy.Cluster_MAGLEV - default: - return fmt.Errorf("unsupported load balancer policy %q for cluster %q", l.Policy, c.Name) - } - return nil -} - // makeClusterFromUserConfig returns the listener config decoded from an // arbitrary proto3 json format string or an error if it's invalid. // diff --git a/agent/xds/clusters_test.go b/agent/xds/clusters_test.go index 14714feb7b..634cbe54c8 100644 --- a/agent/xds/clusters_test.go +++ b/agent/xds/clusters_test.go @@ -2,7 +2,6 @@ package xds import ( "bytes" - "github.com/golang/protobuf/ptypes/wrappers" "path/filepath" "sort" "testing" @@ -367,10 +366,12 @@ func TestClustersFromSnapshot(t *testing.T) { OnlyPassing: true, }, }, - LoadBalancer: structs.LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: structs.LeastRequestConfig{ - ChoiceCount: 5, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "least_request", + LeastRequestConfig: &structs.LeastRequestConfig{ + ChoiceCount: 5, + }, }, }, }, @@ -394,11 +395,13 @@ func TestClustersFromSnapshot(t *testing.T) { OnlyPassing: true, }, }, - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MinimumRingSize: 20, - MaximumRingSize: 50, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 50, + }, }, }, }, @@ -605,11 +608,13 @@ func TestClustersFromSnapshot(t *testing.T) { OnlyPassing: true, }, }, - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MinimumRingSize: 20, - MaximumRingSize: 50, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 50, + }, }, }, }, @@ -834,86 +839,3 @@ func setupTLSRootsAndLeaf(t *testing.T, snap *proxycfg.ConfigSnapshot) { snap.Roots.Roots[0].RootCert = golden(t, "test-root-cert", "", "") } } - -func TestLoadBalancer_injectLBToCluster(t *testing.T) { - var tests = []struct { - name string - lb structs.LoadBalancer - expected envoy.Cluster - }{ - { - name: "skip empty", - lb: structs.LoadBalancer{ - Policy: "", - }, - expected: envoy.Cluster{}, - }, - { - name: "round_robin", - lb: structs.LoadBalancer{ - Policy: "round_robin", - }, - expected: envoy.Cluster{LbPolicy: envoy.Cluster_ROUND_ROBIN}, - }, - { - name: "random", - lb: structs.LoadBalancer{ - Policy: "random", - }, - expected: envoy.Cluster{LbPolicy: envoy.Cluster_RANDOM}, - }, - { - name: "maglev", - lb: structs.LoadBalancer{ - Policy: "maglev", - }, - expected: envoy.Cluster{LbPolicy: envoy.Cluster_MAGLEV}, - }, - { - name: "ring_hash", - lb: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MinimumRingSize: 3, - MaximumRingSize: 7, - }, - }, - expected: envoy.Cluster{ - LbPolicy: envoy.Cluster_RING_HASH, - LbConfig: &envoy.Cluster_RingHashLbConfig_{ - RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ - MinimumRingSize: &wrappers.UInt64Value{Value: 3}, - MaximumRingSize: &wrappers.UInt64Value{Value: 7}, - }, - }, - }, - }, - { - name: "least_request", - lb: structs.LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: structs.LeastRequestConfig{ - ChoiceCount: 3, - }, - }, - expected: envoy.Cluster{ - LbPolicy: envoy.Cluster_LEAST_REQUEST, - LbConfig: &envoy.Cluster_LeastRequestLbConfig_{ - LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ - ChoiceCount: &wrappers.UInt32Value{Value: 3}, - }, - }, - }, - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - var c envoy.Cluster - err := injectLBToCluster(tc.lb, &c) - require.NoError(t, err) - - require.Equal(t, tc.expected, c) - }) - } -} diff --git a/agent/xds/routes.go b/agent/xds/routes.go index f7f991f7e6..bf1f5cc3a6 100644 --- a/agent/xds/routes.go +++ b/agent/xds/routes.go @@ -43,14 +43,14 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co } var resources []proto.Message - for svc := range cfgSnap.TerminatingGateway.ServiceGroups { + for _, svc := range cfgSnap.TerminatingGateway.ValidServices() { clusterName := connect.ServiceSNI(svc.Name, "", svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) resolver, hasResolver := cfgSnap.TerminatingGateway.ServiceResolvers[svc] svcConfig := cfgSnap.TerminatingGateway.ServiceConfigs[svc] cfg, err := ParseProxyConfig(svcConfig.ProxyConfig) - if err != nil || cfg.Protocol != "http" { + if err != nil || structs.IsProtocolHTTPLike(cfg.Protocol) { // Routes can only be defined for HTTP services continue } @@ -59,7 +59,12 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co // Use a zero value resolver with no timeout and no subsets resolver = &structs.ServiceResolverConfigEntry{} } - route, err := makeNamedDefaultRouteWithLB(clusterName, resolver.LoadBalancer) + + var lb *structs.EnvoyLBConfig + if resolver.LoadBalancer != nil { + lb = resolver.LoadBalancer.EnvoyLBConfig + } + route, err := makeNamedDefaultRouteWithLB(clusterName, lb) if err != nil { continue } @@ -68,7 +73,7 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co // If there is a service-resolver for this service then also setup routes for each subset for name := range resolver.Subsets { clusterName = connect.ServiceSNI(svc.Name, name, svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) - route, err := makeNamedDefaultRouteWithLB(clusterName, resolver.LoadBalancer) + route, err := makeNamedDefaultRouteWithLB(clusterName, lb) if err != nil { continue } @@ -76,13 +81,13 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co } } - // TODO(rb): make sure we don't generate an empty result return resources, nil } -func makeNamedDefaultRouteWithLB(clusterName string, lb structs.LoadBalancer) (*envoy.RouteConfiguration, error) { +func makeNamedDefaultRouteWithLB(clusterName string, lb *structs.EnvoyLBConfig) (*envoy.RouteConfiguration, error) { action := makeRouteActionFromName(clusterName) - if err := injectLBToRouteAction(lb, action.Route); err != nil { + + if err := lb.InjectToRouteAction(action.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -250,6 +255,8 @@ func makeUpstreamRouteForDiscoveryChain( return nil, fmt.Errorf("missing first node in compiled discovery chain for: %s", chain.ServiceName) } + var lb *structs.EnvoyLBConfig + switch startNode.Type { case structs.DiscoveryGraphNodeTypeRouter: routes = make([]*envoyroute.Route, 0, len(startNode.Routes)) @@ -263,6 +270,10 @@ func makeUpstreamRouteForDiscoveryChain( ) nextNode := chain.Nodes[discoveryRoute.NextNode] + if nextNode.LoadBalancer != nil { + lb = nextNode.LoadBalancer.EnvoyLBConfig + } + switch nextNode.Type { case structs.DiscoveryGraphNodeTypeSplitter: routeAction, err = makeRouteActionForSplitter(nextNode.Splits, chain) @@ -270,14 +281,14 @@ func makeUpstreamRouteForDiscoveryChain( return nil, err } - if err := injectLBToRouteAction(nextNode.LoadBalancer, routeAction.Route); err != nil { + if err := lb.InjectToRouteAction(routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } case structs.DiscoveryGraphNodeTypeResolver: routeAction = makeRouteActionForChainCluster(nextNode.Resolver.Target, chain) - if err := injectLBToRouteAction(nextNode.LoadBalancer, routeAction.Route); err != nil { + if err := lb.InjectToRouteAction(routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -332,7 +343,10 @@ func makeUpstreamRouteForDiscoveryChain( return nil, err } - if err := injectLBToRouteAction(startNode.LoadBalancer, routeAction.Route); err != nil { + if startNode.LoadBalancer != nil { + lb = startNode.LoadBalancer.EnvoyLBConfig + } + if err := lb.InjectToRouteAction(routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -346,7 +360,10 @@ func makeUpstreamRouteForDiscoveryChain( case structs.DiscoveryGraphNodeTypeResolver: routeAction := makeRouteActionForChainCluster(startNode.Resolver.Target, chain) - if err := injectLBToRouteAction(startNode.LoadBalancer, routeAction.Route); err != nil { + if startNode.LoadBalancer != nil { + lb = startNode.LoadBalancer.EnvoyLBConfig + } + if err := lb.InjectToRouteAction(routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -370,62 +387,6 @@ func makeUpstreamRouteForDiscoveryChain( return host, nil } -func injectLBToRouteAction(lb structs.LoadBalancer, action *envoyroute.RouteAction) error { - if !lb.IsHashBased() { - return nil - } - - result := make([]*envoyroute.RouteAction_HashPolicy, 0, len(lb.HashPolicies)) - for _, policy := range lb.HashPolicies { - if policy.SourceAddress { - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ - ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ - SourceIp: true, - }, - }, - Terminal: policy.Terminal, - }) - - continue - } - - switch policy.Field { - case "header": - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ - Header: &envoyroute.RouteAction_HashPolicy_Header{ - HeaderName: policy.FieldMatchValue, - }, - }, - Terminal: policy.Terminal, - }) - case "cookie": - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ - Name: policy.FieldMatchValue, - }, - }, - Terminal: policy.Terminal, - }) - case "query_parameter": - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_QueryParameter_{ - QueryParameter: &envoyroute.RouteAction_HashPolicy_QueryParameter{ - Name: policy.FieldMatchValue, - }, - }, - Terminal: policy.Terminal, - }) - default: - return fmt.Errorf("unsupported load balancer hash policy field: %v", policy.Field) - } - } - action.HashPolicy = result - return nil -} - func makeRouteMatchForDiscoveryRoute(_ connectionInfo, discoveryRoute *structs.DiscoveryRoute) *envoyroute.RouteMatch { match := discoveryRoute.Definition.Match if match == nil || match.IsEmpty() { diff --git a/agent/xds/routes_test.go b/agent/xds/routes_test.go index 7142ee4452..88020b247b 100644 --- a/agent/xds/routes_test.go +++ b/agent/xds/routes_test.go @@ -7,7 +7,6 @@ import ( "time" envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" - envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/consul/discoverychain" "github.com/hashicorp/consul/agent/proxycfg" @@ -203,25 +202,27 @@ func TestRoutesFromSnapshot(t *testing.T) { OnlyPassing: true, }, }, - LoadBalancer: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MinimumRingSize: 20, - MaximumRingSize: 50, - }, - HashPolicies: []structs.HashPolicy{ - { - Field: "cookie", - FieldMatchValue: "chocolate-chip", - Terminal: true, + LoadBalancer: &structs.LoadBalancer{ + EnvoyLBConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MinimumRingSize: 20, + MaximumRingSize: 50, }, - { - Field: "header", - FieldMatchValue: "x-user-id", - }, - { - SourceAddress: true, - Terminal: true, + HashPolicies: []structs.HashPolicy{ + { + Field: structs.HashPolicyCookie, + FieldValue: "chocolate-chip", + Terminal: true, + }, + { + Field: structs.HashPolicyHeader, + FieldValue: "x-user-id", + }, + { + SourceIP: true, + Terminal: true, + }, }, }, }, @@ -276,178 +277,3 @@ func TestRoutesFromSnapshot(t *testing.T) { }) } } - -func TestLoadBalancer_injectLBToRouteAction(t *testing.T) { - var tests = []struct { - name string - lb structs.LoadBalancer - expected envoyroute.RouteAction - }{ - { - name: "empty", - lb: structs.LoadBalancer{ - Policy: "", - }, - // we only modify route actions for hash-based LB policies - expected: envoyroute.RouteAction{}, - }, - { - name: "least_request", - lb: structs.LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: structs.LeastRequestConfig{ - ChoiceCount: 3, - }, - }, - // we only modify route actions for hash-based LB policies - expected: envoyroute.RouteAction{}, - }, - { - name: "header", - lb: structs.LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: structs.RingHashConfig{ - MinimumRingSize: 3, - MaximumRingSize: 7, - }, - HashPolicies: []structs.HashPolicy{ - { - Field: "header", - FieldMatchValue: "x-route-key", - Terminal: true, - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ - Header: &envoyroute.RouteAction_HashPolicy_Header{ - HeaderName: "x-route-key", - }, - }, - Terminal: true, - }, - }, - }, - }, - { - name: "cookies", - lb: structs.LoadBalancer{ - Policy: "maglev", - HashPolicies: []structs.HashPolicy{ - { - Field: "cookie", - FieldMatchValue: "red-velvet", - Terminal: true, - }, - { - Field: "cookie", - FieldMatchValue: "oatmeal", - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ - Name: "red-velvet", - }, - }, - Terminal: true, - }, - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ - Name: "oatmeal", - }, - }, - }, - }, - }, - }, - { - name: "source addr", - lb: structs.LoadBalancer{ - Policy: "maglev", - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, - Terminal: true, - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ - ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ - SourceIp: true, - }, - }, - Terminal: true, - }, - }, - }, - }, - { - name: "kitchen sink", - lb: structs.LoadBalancer{ - Policy: "maglev", - HashPolicies: []structs.HashPolicy{ - { - SourceAddress: true, - Terminal: true, - }, - { - Field: "cookie", - FieldMatchValue: "oatmeal", - }, - { - Field: "header", - FieldMatchValue: "special-header", - Terminal: true, - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ - ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ - SourceIp: true, - }, - }, - Terminal: true, - }, - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ - Name: "oatmeal", - }, - }, - }, - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ - Header: &envoyroute.RouteAction_HashPolicy_Header{ - HeaderName: "special-header", - }, - }, - Terminal: true, - }, - }, - }, - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - ra := &envoyroute.RouteAction{} - err := injectLBToRouteAction(tc.lb, ra) - require.NoError(t, err) - - require.Equal(t, &tc.expected, ra) - }) - } -} diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden index afc23f9ae1..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden index bf2d501422..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "10s", + "connectTimeout": "5s", "outlierDetection": { } @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden index bf2d501422..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "10s", + "connectTimeout": "5s", "outlierDetection": { } @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden index bf2d501422..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "10s", + "connectTimeout": "5s", "outlierDetection": { } @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden index bf2d501422..845881fd3f 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "10s", + "connectTimeout": "5s", "outlierDetection": { } @@ -111,38 +111,6 @@ "connectTimeout": "5s", "outlierDetection": { - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "10s", - "outlierDetection": { - } } ], diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden index 44bd0fd5f0..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden @@ -1,60 +1,6 @@ { "versionInfo": "00000001", "resources": [ - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "api.altdomain", - "portValue": 8081 - } - } - }, - "healthStatus": "HEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "tlsCertificates": [ - { - "certificateChain": { - "filename": "api.cert.pem" - }, - "privateKey": { - "filename": "api.key.pem" - } - } - ], - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -173,38 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden index 44bd0fd5f0..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden @@ -1,60 +1,6 @@ { "versionInfo": "00000001", "resources": [ - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "api.altdomain", - "portValue": 8081 - } - } - }, - "healthStatus": "HEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "tlsCertificates": [ - { - "certificateChain": { - "filename": "api.cert.pem" - }, - "privateKey": { - "filename": "api.key.pem" - } - } - ], - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -173,38 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden index 44bd0fd5f0..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden @@ -1,60 +1,6 @@ { "versionInfo": "00000001", "resources": [ - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "api.altdomain", - "portValue": 8081 - } - } - }, - "healthStatus": "HEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "tlsCertificates": [ - { - "certificateChain": { - "filename": "api.cert.pem" - }, - "privateKey": { - "filename": "api.key.pem" - } - } - ], - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -173,38 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden index 44bd0fd5f0..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden @@ -1,60 +1,6 @@ { "versionInfo": "00000001", "resources": [ - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "api.altdomain", - "portValue": 8081 - } - } - }, - "healthStatus": "HEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "tlsCertificates": [ - { - "certificateChain": { - "filename": "api.cert.pem" - }, - "privateKey": { - "filename": "api.key.pem" - } - } - ], - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -173,38 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden index f9c7336e6f..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden @@ -119,62 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden index f9c7336e6f..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden @@ -119,62 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden index f9c7336e6f..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden @@ -119,62 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden index f9c7336e6f..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden @@ -119,62 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden index 8e3db04606..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden @@ -119,94 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden index 8e3db04606..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden @@ -119,94 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden index 8e3db04606..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden @@ -119,94 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden index 8e3db04606..27b1ddc6c7 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden @@ -119,94 +119,6 @@ } }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "LOGICAL_DNS", - "connectTimeout": "5s", - "loadAssignment": { - "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "endpoints": [ - { - "lbEndpoints": [ - { - "endpoint": { - "address": { - "socketAddress": { - "address": "cache.mydomain", - "portValue": 8081 - } - } - }, - "healthStatus": "UNHEALTHY", - "loadBalancingWeight": 1 - } - ] - } - ] - }, - "dnsRefreshRate": "10s", - "dnsLookupFamily": "V4_ONLY", - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, - { - "@type": "type.googleapis.com/envoy.api.v2.Cluster", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "type": "EDS", - "edsClusterConfig": { - "edsConfig": { - "ads": { - - } - } - }, - "connectTimeout": "5s", - "tlsContext": { - "commonTlsContext": { - "tlsParams": { - - }, - "validationContext": { - "trustedCa": { - "filename": "ca.cert.pem" - } - } - } - }, - "outlierDetection": { - - } - }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden index b611e2508d..e8370f2657 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,26 +16,7 @@ "prefix": "/" }, "route": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -45,10 +26,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -58,26 +39,7 @@ "prefix": "/" }, "route": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -87,10 +49,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -100,26 +62,7 @@ "prefix": "/" }, "route": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden index b611e2508d..e8370f2657 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,26 +16,7 @@ "prefix": "/" }, "route": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -45,10 +26,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -58,26 +39,7 @@ "prefix": "/" }, "route": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -87,10 +49,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -100,26 +62,7 @@ "prefix": "/" }, "route": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden index b611e2508d..e8370f2657 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,26 +16,7 @@ "prefix": "/" }, "route": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -45,10 +26,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -58,26 +39,7 @@ "prefix": "/" }, "route": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -87,10 +49,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -100,26 +62,7 @@ "prefix": "/" }, "route": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden index b611e2508d..e8370f2657 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,26 +16,7 @@ "prefix": "/" }, "route": { - "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -45,10 +26,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -58,26 +39,7 @@ "prefix": "/" }, "route": { - "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] @@ -87,10 +49,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -100,26 +62,7 @@ "prefix": "/" }, "route": { - "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", - "hashPolicy": [ - { - "cookie": { - "name": "chocolate-chip" - }, - "terminal": true - }, - { - "header": { - "headerName": "x-user-id" - } - }, - { - "connectionProperties": { - "sourceIp": true - }, - "terminal": true - } - ] + "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" } } ] diff --git a/api/config_entry_discoverychain.go b/api/config_entry_discoverychain.go index 5e1636fe83..68546b615a 100644 --- a/api/config_entry_discoverychain.go +++ b/api/config_entry_discoverychain.go @@ -140,7 +140,7 @@ type ServiceResolverConfigEntry struct { // LoadBalancer determines the load balancing policy and configuration for services // issuing requests to this upstream service. - LoadBalancer LoadBalancer `json:",omitempty" alias:"load_balancer"` + LoadBalancer *LoadBalancer `json:",omitempty" alias:"load_balancer"` CreateIndex uint64 ModifyIndex uint64 @@ -209,14 +209,22 @@ type ServiceResolverFailover struct { // LoadBalancer determines the load balancing policy and configuration for services // issuing requests to this upstream service. type LoadBalancer struct { + // EnvoyLBConfig contains Envoy-specific load balancing configuration for this upstream + EnvoyLBConfig *EnvoyLBConfig `json:",omitempty" alias:"envoy_lb_config"` + + // OpaqueConfig contains load balancing configuration opaque to Consul for 3rd party proxies + OpaqueConfig string `json:",omitempty" alias:"opaque_config"` +} + +type EnvoyLBConfig struct { // Policy is the load balancing policy used to select a host Policy string `json:",omitempty"` // RingHashConfig contains configuration for the "ring_hash" policy type - RingHashConfig RingHashConfig `json:",omitempty" alias:"ring_hash_config"` + RingHashConfig *RingHashConfig `json:",omitempty" alias:"ring_hash_config"` // LeastRequestConfig contains configuration for the "least_request" policy type - LeastRequestConfig LeastRequestConfig `json:",omitempty" alias:"least_request_config"` + LeastRequestConfig *LeastRequestConfig `json:",omitempty" alias:"least_request_config"` // HashPolicies is a list of hash policies to use for hashing load balancing algorithms. // Hash policies are evaluated individually and combined such that identical lists @@ -241,28 +249,37 @@ type LeastRequestConfig struct { ChoiceCount uint32 `json:",omitempty" alias:"choice_count"` } -// HashPolicy is a list of hash policies to use for hashing load balancing algorithms. -// Hash policies are evaluated individually and combined such that identical lists -// result in the same hash. -// If no hash policies are present, or none are successfully evaluated, -// then a random backend host will be selected. +// HashPolicy defines which attributes will be hashed by hash-based LB algorithms type HashPolicy struct { // Field is the attribute type to hash on. // Must be one of "header","cookie", or "query_parameter". // Cannot be specified along with SourceIP. Field string `json:",omitempty"` - // FieldMatchValue is the value to hash. + // FieldValue is the value to hash. // ie. header name, cookie name, URL query parameter name // Cannot be specified along with SourceIP. - FieldMatchValue string `json:",omitempty" alias:"field_value"` + FieldValue string `json:",omitempty" alias:"field_value"` - // SourceAddress determines whether the hash should be of the source IP rather than of a field and field value. - // Cannot be specified along with Field and FieldMatchValue. - SourceAddress bool `json:",omitempty" alias:"source_address"` + // CookieConfig contains configuration for the "cookie" hash policy type. + CookieConfig *CookieConfig `json:",omitempty" alias:"cookie_config"` + + // SourceIP determines whether the hash should be of the source IP rather than of a field and field value. + // Cannot be specified along with Field or FieldValue. + SourceIP bool `json:",omitempty" alias:"source_ip"` // Terminal will short circuit the computation of the hash when multiple hash policies are present. // If a hash is computed when a Terminal policy is evaluated, // then that hash will be used and subsequent hash policies will be ignored. Terminal bool `json:",omitempty"` } + +// CookieConfig contains configuration for the "cookie" hash policy type. +// This is specified to have Envoy generate a cookie for a client on its first request. +type CookieConfig struct { + // TTL for generated cookies + TTL time.Duration `json:",omitempty"` + + // The path to set for the cookie + Path string `json:",omitempty"` +} diff --git a/api/config_entry_discoverychain_test.go b/api/config_entry_discoverychain_test.go index 0e77429bb6..560dc1e24c 100644 --- a/api/config_entry_discoverychain_test.go +++ b/api/config_entry_discoverychain_test.go @@ -293,9 +293,11 @@ func TestAPI_ConfigEntry_ServiceResolver_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test-least-req", Namespace: defaultNamespace, - LoadBalancer: LoadBalancer{ - Policy: "least_request", - LeastRequestConfig: LeastRequestConfig{ChoiceCount: 10}, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: "least_request", + LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 10}, + }, }, }, verify: verifyResolver, @@ -306,20 +308,30 @@ func TestAPI_ConfigEntry_ServiceResolver_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test-ring-hash", Namespace: defaultNamespace, - LoadBalancer: LoadBalancer{ - Policy: "ring_hash", - RingHashConfig: RingHashConfig{ - MinimumRingSize: 1024 * 2, - MaximumRingSize: 1024 * 4, - }, - HashPolicies: []HashPolicy{ - { - Field: "header", - FieldMatchValue: "my-session-header", - Terminal: true, + LoadBalancer: &LoadBalancer{ + EnvoyLBConfig: &EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &RingHashConfig{ + MinimumRingSize: 1024 * 2, + MaximumRingSize: 1024 * 4, }, - { - SourceAddress: true, + HashPolicies: []HashPolicy{ + { + Field: "header", + FieldValue: "my-session-header", + Terminal: true, + }, + { + Field: "cookie", + FieldValue: "oreo", + CookieConfig: &CookieConfig{ + Path: "/tray", + TTL: 20 * time.Millisecond, + }, + }, + { + SourceIP: true, + }, }, }, }, diff --git a/command/config/write/config_write_test.go b/command/config/write/config_write_test.go index a5b9120b29..82bbda4bb5 100644 --- a/command/config/write/config_write_test.go +++ b/command/config/write/config_write_test.go @@ -1,6 +1,7 @@ package write import ( + "github.com/hashicorp/consul/agent/structs" "io" "strings" "testing" @@ -1165,6 +1166,235 @@ func TestParseConfigEntry(t *testing.T) { Name: "main", }, }, + { + name: "service-resolver: envoy hash lb kitchen sink", + snake: ` + kind = "service-resolver" + name = "main" + load_balancer = { + envoy_lb_config = { + policy = "ring_hash" + ring_hash_config = { + minimum_ring_size = 1 + maximum_ring_size = 2 + } + hash_policies = [ + { + field = "cookie" + field_value = "good-cookie" + cookie_config = { + ttl = "1s" + path = "/oven" + } + terminal = true + }, + { + field = "header" + field_value = "x-user-id" + }, + { + source_ip = true + } + ] + } + } + `, + camel: ` + Kind = "service-resolver" + Name = "main" + LoadBalancer = { + EnvoyLBConfig = { + Policy = "ring_hash" + RingHashConfig = { + MinimumRingSize = 1 + MaximumRingSize = 2 + } + HashPolicies = [ + { + Field = "cookie" + FieldValue = "good-cookie" + CookieConfig = { + TTL = "1s" + Path = "/oven" + } + Terminal = true + }, + { + Field = "header" + FieldValue = "x-user-id" + }, + { + SourceIP = true + } + ] + } + } + `, + snakeJSON: ` + { + "kind": "service-resolver", + "name": "main", + "load_balancer": { + "envoy_lb_config": { + "policy": "ring_hash", + "ring_hash_config": { + "minimum_ring_size": 1, + "maximum_ring_size": 2 + }, + "hash_policies": [ + { + "field": "cookie", + "field_value": "good-cookie", + "cookie_config": { + "ttl": "1s", + "path": "/oven" + }, + "terminal": true + }, + { + "field": "header", + "field_value": "x-user-id" + }, + { + "source_ip": true + } + ] + } + } + } + `, + camelJSON: ` + { + "Kind": "service-resolver", + "Name": "main", + "LoadBalancer": { + "EnvoyLBConfig": { + "Policy": "ring_hash", + "RingHashConfig": { + "MinimumRingSize": 1, + "MaximumRingSize": 2 + }, + "HashPolicies": [ + { + "Field": "cookie", + "FieldValue": "good-cookie", + "CookieConfig": { + "TTL": "1s", + "Path": "/oven" + }, + "Terminal": true + }, + { + "Field": "header", + "FieldValue": "x-user-id" + }, + { + "SourceIP": true + } + ] + } + } + } + `, + expect: &api.ServiceResolverConfigEntry{ + Kind: "service-resolver", + Name: "main", + LoadBalancer: &api.LoadBalancer{ + EnvoyLBConfig: &api.EnvoyLBConfig{ + Policy: structs.LBPolicyRingHash, + RingHashConfig: &api.RingHashConfig{ + MinimumRingSize: 1, + MaximumRingSize: 2, + }, + HashPolicies: []api.HashPolicy{ + { + Field: structs.HashPolicyCookie, + FieldValue: "good-cookie", + CookieConfig: &api.CookieConfig{ + TTL: 1 * time.Second, + Path: "/oven", + }, + Terminal: true, + }, + { + Field: structs.HashPolicyHeader, + FieldValue: "x-user-id", + }, + { + SourceIP: true, + }, + }, + }, + }, + }, + }, + { + name: "service-resolver: envoy least request kitchen sink", + snake: ` + kind = "service-resolver" + name = "main" + load_balancer = { + envoy_lb_config = { + policy = "least_request" + least_request_config = { + choice_count = 2 + } + } + } + `, + camel: ` + Kind = "service-resolver" + Name = "main" + LoadBalancer = { + EnvoyLBConfig = { + Policy = "least_request" + LeastRequestConfig = { + ChoiceCount = 2 + } + } + } + `, + snakeJSON: ` + { + "kind": "service-resolver", + "name": "main", + "load_balancer": { + "envoy_lb_config": { + "policy": "least_request", + "least_request_config": { + "choice_count": 2 + } + } + } + } + `, + camelJSON: ` + { + "Kind": "service-resolver", + "Name": "main", + "LoadBalancer": { + "EnvoyLBConfig": { + "Policy": "least_request", + "LeastRequestConfig": { + "ChoiceCount": 2 + } + } + } + } + `, + expect: &api.ServiceResolverConfigEntry{ + Kind: "service-resolver", + Name: "main", + LoadBalancer: &api.LoadBalancer{ + EnvoyLBConfig: &api.EnvoyLBConfig{ + Policy: structs.LBPolicyLeastRequest, + LeastRequestConfig: &api.LeastRequestConfig{ + ChoiceCount: 2, + }, + }, + }, + }, + }, { name: "expose paths: kitchen sink proxy defaults", snake: ` diff --git a/website/pages/docs/agent/config-entries/service-resolver.mdx b/website/pages/docs/agent/config-entries/service-resolver.mdx index d0cd549888..c5a27b5335 100644 --- a/website/pages/docs/agent/config-entries/service-resolver.mdx +++ b/website/pages/docs/agent/config-entries/service-resolver.mdx @@ -83,7 +83,7 @@ LoadBalancer = { HashPolicies = [ { Field = "header" - FieldMatchValue = "x-user-id" + FieldValue = "x-user-id" } ] } @@ -171,48 +171,52 @@ LoadBalancer = { configuration for services issuing requests to this upstream. This option is available in Consul versions 1.8.4 and newer. - **Note:** The options below are specific to Envoy proxy. - - - `Policy` `(string: "")` - The load balancing policy used to select a host. - One of: `random`, `round_robin`, `least_request`, `ring_hash`, `maglev`. - - - `RingHashConfig` `(RingHashConfig)` - Configuration for the `ring_hash` - policy type. - - - `MinimumRingRize` `(int: 1024)` - Determines the minimum number of entries - in the hash ring. - - - `MaximumRingRize` `(int: 8192)` - Determines the maximum number of entries - in the hash ring. - - - `LeastRequestConfig` `(LeastRequestConfig)` - Configuration for the `least_request` - policy type. - - - `ChoiceCount` `(int: 2)` - Determines the number of random healthy hosts - from which to select the one with the least requests. - - - `HashPolicies` `(array)` - a list of hash policies to use for - hashing load balancing algorithms. Hash policies are evaluated individually - and combined such that identical lists result in the same hash. - If no hash policies are present, or none are successfully evaluated, - then a random backend host will be selected. - - - `Field` `(string: "")` - The attribute type to hash on. - Must be one of `header`,`cookie`, or `query_parameter`. - Cannot be specified along with `SourceAddress`. + - `EnvoyLBConfig` `(EnvoyLBConfig)` - Envoy proxy specific load balancing configuration + for this upstream. + + - `Policy` `(string: "")` - The load balancing policy used to select a host. + One of: `random`, `round_robin`, `least_request`, `ring_hash`, `maglev`. + + - `RingHashConfig` `(RingHashConfig)` - Configuration for the `ring_hash` + policy type. - - `FieldMatchValue` `(string: "")` - The value to hash. - ie. header name, cookie name, URL query parameter name. - Cannot be specified along with `SourceAddress`. + - `MinimumRingRize` `(int: 1024)` - Determines the minimum number of entries + in the hash ring. - - `SourceAddress` `(bool: false)` - Determines whether the hash should be of the source IP - address rather than of a field and field value. - Cannot be specified along with `Field` or `FieldMatchValue`. + - `MaximumRingRize` `(int: 8192)` - Determines the maximum number of entries + in the hash ring. + + - `LeastRequestConfig` `(LeastRequestConfig)` - Configuration for the `least_request` + policy type. - - `Terminal` `(bool: false)` - Will short circuit the computation of the hash - when multiple hash policies are present. If a hash is computed when a - Terminal policy is evaluated, then that hash will be used and subsequent - hash policies will be ignored. + - `ChoiceCount` `(int: 2)` - Determines the number of random healthy hosts + from which to select the one with the least requests. + + - `HashPolicies` `(array)` - a list of hash policies to use for + hashing load balancing algorithms. Hash policies are evaluated individually + and combined such that identical lists result in the same hash. + If no hash policies are present, or none are successfully evaluated, + then a random backend host will be selected. + + - `Field` `(string: "")` - The attribute type to hash on. + Must be one of `header`,`cookie`, or `query_parameter`. + Cannot be specified along with `SourceAddress`. + + - `FieldValue` `(string: "")` - The value to hash. + ie. header name, cookie name, URL query parameter name. + Cannot be specified along with `SourceAddress`. + + - `CookieConfig` `(CookieConfig)` - Additional configuration for the "cookie" hash policy type. + This is specified to have Envoy generate a cookie for a client on its first request. + + - `SourceIP` `(bool: false)` - Determines whether the hash should be of the source IP + address rather than of a field and field value. + Cannot be specified along with `Field` or `FieldValue`. + + - `Terminal` `(bool: false)` - Will short circuit the computation of the hash + when multiple hash policies are present. If a hash is computed when a + Terminal policy is evaluated, then that hash will be used and subsequent + hash policies will be ignored. ## Service Subsets diff --git a/website/pages/docs/internals/discovery-chain.mdx b/website/pages/docs/internals/discovery-chain.mdx index 9c0ec3bb88..f42d52bb22 100644 --- a/website/pages/docs/internals/discovery-chain.mdx +++ b/website/pages/docs/internals/discovery-chain.mdx @@ -184,6 +184,12 @@ A single node in the compiled discovery chain. - `Targets` `(array)` - List of targets found in [`Targets`](#targets) to failover to in order of preference. + + - `LoadBalancer` `(LoadBalancer: `) - Copy of the underlying `service-resolver` + [`LoadBalancer`](/docs/agent/config-entries/service-resolver#loadbalancer) field. + + If a `service-splitter` splits between services with differing `LoadBalancer` configuration + the first hash-based load balancing policy is copied. #### `DiscoveryTarget` From 04705e90f9c907a09c727714c89f9ec4e413a312 Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:24:16 -0500 Subject: [PATCH 038/122] Add new usage memdb table that tracks usage counts of various elements We update the usage table on Commit() by using the TrackedChanges() API of memdb. Track memdb changes on restore so that usage data can be compiled --- agent/consul/fsm/snapshot_oss_test.go | 6 + agent/consul/state/memdb.go | 30 +++-- agent/consul/state/usage.go | 170 ++++++++++++++++++++++++++ agent/consul/state/usage_oss.go | 33 +++++ agent/consul/state/usage_oss_test.go | 25 ++++ agent/consul/state/usage_test.go | 133 ++++++++++++++++++++ 6 files changed, 387 insertions(+), 10 deletions(-) create mode 100644 agent/consul/state/usage.go create mode 100644 agent/consul/state/usage_oss.go create mode 100644 agent/consul/state/usage_oss_test.go create mode 100644 agent/consul/state/usage_test.go diff --git a/agent/consul/fsm/snapshot_oss_test.go b/agent/consul/fsm/snapshot_oss_test.go index e845c41c91..f798a0efaa 100644 --- a/agent/consul/fsm/snapshot_oss_test.go +++ b/agent/consul/fsm/snapshot_oss_test.go @@ -654,6 +654,12 @@ func TestFSM_SnapshotRestore_OSS(t *testing.T) { require.NoError(t, err) require.Equal(t, fedState2, fedStateLoaded2) + // Verify usage data is correctly updated + idx, nodeCount, err := fsm2.state.NodeCount() + require.NoError(t, err) + require.Equal(t, len(nodes), nodeCount) + require.NotZero(t, idx) + // Snapshot snap, err = fsm2.Snapshot() require.NoError(t, err) diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index be4f4348e2..5cdfd19dd1 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -89,17 +89,20 @@ func (c *changeTrackerDB) publish(changes Changes) error { return nil } -// WriteTxnRestore returns a wrapped RW transaction that does NOT have change -// tracking enabled. This should only be used in Restore where we need to -// replace the entire contents of the Store without a need to track the changes. -// WriteTxnRestore uses a zero index since the whole restore doesn't really occur -// at one index - the effect is to write many values that were previously +// WriteTxnRestore returns a wrapped RW transaction that should only be used in +// Restore where we need to replace the entire contents of the Store. +// WriteTxnRestore uses a zero index since the whole restore doesn't really +// occur at one index - the effect is to write many values that were previously // written across many indexes. func (c *changeTrackerDB) WriteTxnRestore() *txn { - return &txn{ + t := &txn{ Txn: c.db.Txn(true), Index: 0, } + + // We enable change tracking so that usage data is correctly populated. + t.Txn.TrackChanges() + return t } // txn wraps a memdb.Txn to capture changes and send them to the EventPublisher. @@ -125,14 +128,21 @@ type txn struct { // by the caller. A non-nil error indicates that a commit failed and was not // applied. func (tx *txn) Commit() error { + changes := Changes{ + Index: tx.Index, + Changes: tx.Txn.Changes(), + } + + if len(changes.Changes) > 0 { + if err := updateUsage(tx, changes); err != nil { + return err + } + } + // publish may be nil if this is a read-only or WriteTxnRestore transaction. // In those cases changes should also be empty, and there will be nothing // to publish. if tx.publish != nil { - changes := Changes{ - Index: tx.Index, - Changes: tx.Txn.Changes(), - } if err := tx.publish(changes); err != nil { return err } diff --git a/agent/consul/state/usage.go b/agent/consul/state/usage.go new file mode 100644 index 0000000000..397e157f37 --- /dev/null +++ b/agent/consul/state/usage.go @@ -0,0 +1,170 @@ +package state + +import ( + "fmt" + + memdb "github.com/hashicorp/go-memdb" +) + +// usageTableSchema returns a new table schema used for tracking various indexes +// for the Raft log. +func usageTableSchema() *memdb.TableSchema { + return &memdb.TableSchema{ + Name: "usage", + Indexes: map[string]*memdb.IndexSchema{ + "id": { + Name: "id", + AllowMissing: false, + Unique: true, + Indexer: &memdb.StringFieldIndex{ + Field: "ID", + Lowercase: true, + }, + }, + }, + } +} + +func init() { + registerSchema(usageTableSchema) +} + +type UsageEntry struct { + ID string + Index uint64 + Count int +} + +// updateUsage takes a set of memdb changes and computes a delta for specific +// usage metrics that we track. +func updateUsage(tx *txn, changes Changes) error { + usageDeltas := make(map[string]int) + for _, change := range changes.Changes { + var delta int + if change.Created() { + delta = 1 + } else if change.Deleted() { + delta = -1 + } + switch change.Table { + case "nodes": + usageDeltas[change.Table] += delta + case "services": + usageDeltas[change.Table] += delta + } + + addEnterpriseUsage(usageDeltas, change) + } + + idx := changes.Index + // This will happen when restoring from a snapshot, just take the max index + // of the tables we are tracking. + if idx == 0 { + idx = maxIndexTxn(tx, "nodes", "services") + } + + for id, delta := range usageDeltas { + u, err := tx.First("usage", "id", id) + if err != nil { + return fmt.Errorf("failed to retrieve existing usage entry: %s", err) + } + + if u == nil { + if delta < 0 { + return fmt.Errorf("failed to insert usage entry for %q: delta will cause a negative count", id) + } + err := tx.Insert("usage", &UsageEntry{ + ID: id, + Count: delta, + Index: idx, + }) + if err != nil { + return fmt.Errorf("failed to update usage entry: %s", err) + } + } else if cur, ok := u.(*UsageEntry); ok { + if cur.Count+delta < 0 { + return fmt.Errorf("failed to insert usage entry for %q: delta will cause a negative count", id) + } + err := tx.Insert("usage", &UsageEntry{ + ID: id, + Count: cur.Count + delta, + Index: idx, + }) + if err != nil { + return fmt.Errorf("failed to update usage entry: %s", err) + } + } + } + return nil +} + +// ServiceUsage contains all of the usage data related to services +type ServiceUsage struct { + Services int + ServiceInstances int + EnterpriseServiceUsage +} + +// NodeCount returns the latest seen Raft index, a count of the number of nodes +// registered, and any errors. +func (s *Store) NodeCount() (uint64, int, error) { + tx := s.db.ReadTxn() + defer tx.Abort() + + usage, err := tx.First("usage", "id", "nodes") + if err != nil { + return 0, 0, fmt.Errorf("failed nodes lookup: %s", err) + } + + // If no nodes have been registered, the usage entry will not exist. + if usage == nil { + return 0, 0, nil + } + + nodeUsage, ok := usage.(*UsageEntry) + if !ok { + return 0, 0, fmt.Errorf("failed nodes lookup: type %T is not *UsageEntry", usage) + } + + return nodeUsage.Index, nodeUsage.Count, nil +} + +// ServiceUsage returns the latest seen Raft index, a compiled set of service +// usage data, and any errors. +func (s *Store) ServiceUsage() (uint64, ServiceUsage, error) { + tx := s.db.ReadTxn() + defer tx.Abort() + + usage, err := firstUsageEntry(tx, "services") + if err != nil { + return 0, ServiceUsage{}, fmt.Errorf("failed services lookup: %s", err) + } + + results, err := s.compileServiceUsage(tx, usage.Count) + if err != nil { + return 0, ServiceUsage{}, fmt.Errorf("failed services lookup: %s", err) + } + + return usage.Index, results, nil +} + +func firstUsageEntry(tx *txn, id string) (*UsageEntry, error) { + usage, err := tx.First("usage", "id", id) + if err != nil { + return nil, err + } + + // If no elements have been inserted, the usage entry will not exist. We + // return a valid value so that can be certain the return value is not nil + // when no error has occurred. + if usage == nil { + return &UsageEntry{ID: id, Count: 0}, nil + } + + realUsage, ok := usage.(*UsageEntry) + if !ok { + return nil, fmt.Errorf("failed usage lookup: type %T is not *UsageEntry", usage) + } + + return realUsage, nil +} diff --git a/agent/consul/state/usage_oss.go b/agent/consul/state/usage_oss.go new file mode 100644 index 0000000000..ec54313d56 --- /dev/null +++ b/agent/consul/state/usage_oss.go @@ -0,0 +1,33 @@ +// +build !consulent + +package state + +import ( + "fmt" + + memdb "github.com/hashicorp/go-memdb" +) + +type EnterpriseServiceUsage struct{} + +func addEnterpriseUsage(map[string]int, memdb.Change) {} + +func (s *Store) compileServiceUsage(tx *txn, totalInstances int) (ServiceUsage, error) { + var totalServices int + results, err := tx.Get( + "index", + "id_prefix", + serviceIndexName("", nil), + ) + if err != nil { + return ServiceUsage{}, fmt.Errorf("failed services index lookup: %s", err) + } + for i := results.Next(); i != nil; i = results.Next() { + totalServices += 1 + } + + return ServiceUsage{ + Services: totalServices, + ServiceInstances: totalInstances, + }, nil +} diff --git a/agent/consul/state/usage_oss_test.go b/agent/consul/state/usage_oss_test.go new file mode 100644 index 0000000000..b441c71635 --- /dev/null +++ b/agent/consul/state/usage_oss_test.go @@ -0,0 +1,25 @@ +// +build !consulent + +package state + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func TestStateStore_Usage_ServiceUsage(t *testing.T) { + s := testStateStore(t) + + testRegisterNode(t, s, 0, "node1") + testRegisterNode(t, s, 1, "node2") + testRegisterService(t, s, 8, "node1", "service1") + testRegisterService(t, s, 9, "node2", "service1") + testRegisterService(t, s, 10, "node2", "service2") + + idx, usage, err := s.ServiceUsage() + require.NoError(t, err) + require.Equal(t, idx, uint64(10)) + require.Equal(t, 2, usage.Services) + require.Equal(t, 3, usage.ServiceInstances) +} diff --git a/agent/consul/state/usage_test.go b/agent/consul/state/usage_test.go new file mode 100644 index 0000000000..a1c07f6546 --- /dev/null +++ b/agent/consul/state/usage_test.go @@ -0,0 +1,133 @@ +package state + +import ( + "testing" + + "github.com/hashicorp/consul/agent/structs" + memdb "github.com/hashicorp/go-memdb" + "github.com/stretchr/testify/require" +) + +func TestStateStore_Usage_NodeCount(t *testing.T) { + s := testStateStore(t) + + // No nodes have been registered, and thus no usage entry exists + idx, count, err := s.NodeCount() + require.NoError(t, err) + require.Equal(t, idx, uint64(0)) + require.Equal(t, count, 0) + + testRegisterNode(t, s, 0, "node1") + testRegisterNode(t, s, 1, "node2") + + idx, count, err = s.NodeCount() + require.NoError(t, err) + require.Equal(t, idx, uint64(1)) + require.Equal(t, count, 2) +} + +func TestStateStore_Usage_NodeCount_Delete(t *testing.T) { + s := testStateStore(t) + + testRegisterNode(t, s, 0, "node1") + testRegisterNode(t, s, 1, "node2") + + idx, count, err := s.NodeCount() + require.NoError(t, err) + require.Equal(t, idx, uint64(1)) + require.Equal(t, count, 2) + + require.NoError(t, s.DeleteNode(2, "node2")) + idx, count, err = s.NodeCount() + require.NoError(t, err) + require.Equal(t, idx, uint64(2)) + require.Equal(t, count, 1) +} + +func TestStateStore_Usage_ServiceUsageEmpty(t *testing.T) { + s := testStateStore(t) + + // No services have been registered, and thus no usage entry exists + idx, usage, err := s.ServiceUsage() + require.NoError(t, err) + require.Equal(t, idx, uint64(0)) + require.Equal(t, usage.Services, 0) + require.Equal(t, usage.ServiceInstances, 0) +} + +func TestStateStore_Usage_Restore(t *testing.T) { + s := testStateStore(t) + restore := s.Restore() + restore.Registration(9, &structs.RegisterRequest{ + Node: "test-node", + Service: &structs.NodeService{ + ID: "mysql", + Service: "mysql", + Port: 8080, + Address: "198.18.0.2", + }, + }) + require.NoError(t, restore.Commit()) + + idx, count, err := s.NodeCount() + require.NoError(t, err) + require.Equal(t, idx, uint64(9)) + require.Equal(t, count, 1) +} + +func TestStateStore_Usage_updateUsage_Underflow(t *testing.T) { + s := testStateStore(t) + txn := s.db.WriteTxn(1) + + // A single delete change will cause a negative count + changes := Changes{ + Index: 1, + Changes: memdb.Changes{ + { + Table: "nodes", + Before: &structs.Node{}, + After: nil, + }, + }, + } + + err := updateUsage(txn, changes) + require.Error(t, err) + require.Contains(t, err.Error(), "negative count") + + // A insert a change to create a usage entry + changes = Changes{ + Index: 1, + Changes: memdb.Changes{ + { + Table: "nodes", + Before: nil, + After: &structs.Node{}, + }, + }, + } + + err = updateUsage(txn, changes) + require.NoError(t, err) + + // Two deletes will cause a negative count now + changes = Changes{ + Index: 1, + Changes: memdb.Changes{ + { + Table: "nodes", + Before: &structs.Node{}, + After: nil, + }, + { + Table: "nodes", + Before: &structs.Node{}, + After: nil, + }, + }, + } + + err = updateUsage(txn, changes) + require.Error(t, err) + require.Contains(t, err.Error(), "negative count") +} From 3feae7f77b805653a8853dcfdbcfed20011d656e Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:24:17 -0500 Subject: [PATCH 039/122] Report node/service usage metrics from every server Using the newly provided state store methods, we periodically emit usage metrics from the servers. We decided to emit these metrics from all servers, not just the leader, because that means we do not have to care about leader election flapping causing metrics turbulence, and it seems reasonable for each server to emit its own view of the state, even if they should always converge rapidly. --- agent/consul/config.go | 16 ++- agent/consul/server.go | 14 ++ agent/consul/usagemetrics/usagemetrics.go | 135 ++++++++++++++++++ agent/consul/usagemetrics/usagemetrics_oss.go | 7 + .../usagemetrics/usagemetrics_oss_test.go | 9 ++ .../consul/usagemetrics/usagemetrics_test.go | 128 +++++++++++++++++ logging/names.go | 1 + 7 files changed, 305 insertions(+), 5 deletions(-) create mode 100644 agent/consul/usagemetrics/usagemetrics.go create mode 100644 agent/consul/usagemetrics/usagemetrics_oss.go create mode 100644 agent/consul/usagemetrics/usagemetrics_oss_test.go create mode 100644 agent/consul/usagemetrics/usagemetrics_test.go diff --git a/agent/consul/config.go b/agent/consul/config.go index a48effe441..955fb49d66 100644 --- a/agent/consul/config.go +++ b/agent/consul/config.go @@ -443,6 +443,10 @@ type Config struct { // dead servers. AutopilotInterval time.Duration + // MetricsReportingInterval is the frequency with which the server will + // report usage metrics to the configured go-metrics Sinks. + MetricsReportingInterval time.Duration + // ConnectEnabled is whether to enable Connect features such as the CA. ConnectEnabled bool @@ -589,11 +593,13 @@ func DefaultConfig() *Config { }, }, - ServerHealthInterval: 2 * time.Second, - AutopilotInterval: 10 * time.Second, - DefaultQueryTime: 300 * time.Second, - MaxQueryTime: 600 * time.Second, - EnterpriseConfig: DefaultEnterpriseConfig(), + ServerHealthInterval: 2 * time.Second, + AutopilotInterval: 10 * time.Second, + MetricsReportingInterval: 10 * time.Second, + DefaultQueryTime: 300 * time.Second, + MaxQueryTime: 600 * time.Second, + + EnterpriseConfig: DefaultEnterpriseConfig(), } // Increase our reap interval to 3 days instead of 24h. diff --git a/agent/consul/server.go b/agent/consul/server.go index 04d3b61bd3..c1c1a6d76e 100644 --- a/agent/consul/server.go +++ b/agent/consul/server.go @@ -25,6 +25,7 @@ import ( "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" "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/consul/agent/pool" "github.com/hashicorp/consul/agent/router" @@ -589,6 +590,19 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { return nil, err } + reporter, err := usagemetrics.NewUsageMetricsReporter( + new(usagemetrics.Config). + WithStateProvider(s.fsm). + WithLogger(s.logger). + WithDatacenter(s.config.Datacenter). + WithReportingInterval(s.config.MetricsReportingInterval), + ) + if err != nil { + s.Shutdown() + return nil, fmt.Errorf("Failed to start usage metrics reporter: %v", err) + } + go reporter.Run(&lib.StopChannelContext{StopCh: s.shutdownCh}) + // Initialize Autopilot. This must happen before starting leadership monitoring // as establishing leadership could attempt to use autopilot and cause a panic. s.initAutopilot(config) diff --git a/agent/consul/usagemetrics/usagemetrics.go b/agent/consul/usagemetrics/usagemetrics.go new file mode 100644 index 0000000000..18b36cfd69 --- /dev/null +++ b/agent/consul/usagemetrics/usagemetrics.go @@ -0,0 +1,135 @@ +package usagemetrics + +import ( + "context" + "errors" + "time" + + "github.com/armon/go-metrics" + "github.com/hashicorp/consul/agent/consul/state" + "github.com/hashicorp/consul/logging" + "github.com/hashicorp/go-hclog" +) + +// Config holds the settings for various parameters for the +// UsageMetricsReporter +type Config struct { + logger hclog.Logger + metricLabels []metrics.Label + stateProvider StateProvider + tickerInterval time.Duration +} + +// WithDatacenter adds the datacenter as a label to all metrics emitted by the +// UsageMetricsReporter +func (c *Config) WithDatacenter(dc string) *Config { + c.metricLabels = append(c.metricLabels, metrics.Label{Name: "datacenter", Value: dc}) + return c +} + +// WithLogger takes a logger and creates a new, named sub-logger to use when +// running +func (c *Config) WithLogger(logger hclog.Logger) *Config { + c.logger = logger.Named(logging.UsageMetrics) + return c +} + +// WithReportingInterval specifies the interval on which UsageMetricsReporter +// should emit metrics +func (c *Config) WithReportingInterval(dur time.Duration) *Config { + c.tickerInterval = dur + return c +} + +func (c *Config) WithStateProvider(sp StateProvider) *Config { + c.stateProvider = sp + return c +} + +// StateProvider defines an inteface for retrieving a state.Store handle. In +// non-test code, this is satisfied by the fsm.FSM struct. +type StateProvider interface { + State() *state.Store +} + +// UsageMetricsReporter provides functionality for emitting usage metrics into +// the metrics stream. This makes it essentially a translation layer +// between the state store and metrics stream. +type UsageMetricsReporter struct { + logger hclog.Logger + metricLabels []metrics.Label + stateProvider StateProvider + tickerInterval time.Duration +} + +func NewUsageMetricsReporter(cfg *Config) (*UsageMetricsReporter, error) { + if cfg.stateProvider == nil { + return nil, errors.New("must provide a StateProvider to usage reporter") + } + + if cfg.logger == nil { + cfg.logger = hclog.NewNullLogger() + } + + if cfg.tickerInterval == 0 { + // Metrics are aggregated every 10 seconds, so we default to that. + cfg.tickerInterval = 10 * time.Second + } + + u := &UsageMetricsReporter{ + logger: cfg.logger, + stateProvider: cfg.stateProvider, + metricLabels: cfg.metricLabels, + tickerInterval: cfg.tickerInterval, + } + + return u, nil +} + +// Run must be run in a goroutine, and can be stopped by closing or sending +// data to the passed in shutdownCh +func (u *UsageMetricsReporter) Run(ctx context.Context) { + ticker := time.NewTicker(u.tickerInterval) + for { + select { + case <-ctx.Done(): + u.logger.Debug("usage metrics reporter shutting down") + ticker.Stop() + return + case <-ticker.C: + u.runOnce() + } + } +} + +func (u *UsageMetricsReporter) runOnce() { + state := u.stateProvider.State() + _, nodes, err := state.NodeCount() + if err != nil { + u.logger.Warn("failed to retrieve nodes from state store", "error", err) + } + metrics.SetGaugeWithLabels( + []string{"consul", "state", "nodes"}, + float32(nodes), + u.metricLabels, + ) + + _, serviceUsage, err := state.ServiceUsage() + if err != nil { + u.logger.Warn("failed to retrieve services from state store", "error", err) + } + + metrics.SetGaugeWithLabels( + []string{"consul", "state", "services"}, + float32(serviceUsage.Services), + u.metricLabels, + ) + + metrics.SetGaugeWithLabels( + []string{"consul", "state", "service_instances"}, + float32(serviceUsage.ServiceInstances), + u.metricLabels, + ) + + u.emitEnterpriseUsage(serviceUsage) +} diff --git a/agent/consul/usagemetrics/usagemetrics_oss.go b/agent/consul/usagemetrics/usagemetrics_oss.go new file mode 100644 index 0000000000..37d71b83f8 --- /dev/null +++ b/agent/consul/usagemetrics/usagemetrics_oss.go @@ -0,0 +1,7 @@ +// +build !consulent + +package usagemetrics + +import "github.com/hashicorp/consul/agent/consul/state" + +func (u *UsageMetricsReporter) emitEnterpriseUsage(state.ServiceUsage) {} diff --git a/agent/consul/usagemetrics/usagemetrics_oss_test.go b/agent/consul/usagemetrics/usagemetrics_oss_test.go new file mode 100644 index 0000000000..3d5263c0b2 --- /dev/null +++ b/agent/consul/usagemetrics/usagemetrics_oss_test.go @@ -0,0 +1,9 @@ +// +build !consulent + +package usagemetrics + +import "github.com/hashicorp/consul/agent/consul/state" + +func newStateStore() (*state.Store, error) { + return state.NewStateStore(nil) +} diff --git a/agent/consul/usagemetrics/usagemetrics_test.go b/agent/consul/usagemetrics/usagemetrics_test.go new file mode 100644 index 0000000000..c293cbb1de --- /dev/null +++ b/agent/consul/usagemetrics/usagemetrics_test.go @@ -0,0 +1,128 @@ +package usagemetrics + +import ( + "testing" + "time" + + "github.com/armon/go-metrics" + "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 { + mock.Mock +} + +func (m *mockStateProvider) State() *state.Store { + retValues := m.Called() + return retValues.Get(0).(*state.Store) +} + +func TestUsageReporter_Run(t *testing.T) { + type testCase struct { + modfiyStateStore func(t *testing.T, s *state.Store) + expectedGauges map[string]metrics.GaugeValue + } + cases := map[string]testCase{ + "empty-state": { + expectedGauges: map[string]metrics.GaugeValue{ + "consul.usage.test.consul.state.nodes;datacenter=dc1": { + Name: "consul.usage.test.consul.state.nodes", + Value: 0, + Labels: []metrics.Label{{Name: "datacenter", Value: "dc1"}}, + }, + "consul.usage.test.consul.state.services;datacenter=dc1": { + Name: "consul.usage.test.consul.state.services", + Value: 0, + Labels: []metrics.Label{ + {Name: "datacenter", Value: "dc1"}, + }, + }, + "consul.usage.test.consul.state.service_instances;datacenter=dc1": { + Name: "consul.usage.test.consul.state.service_instances", + Value: 0, + Labels: []metrics.Label{ + {Name: "datacenter", Value: "dc1"}, + }, + }, + }, + }, + "nodes-and-services": { + modfiyStateStore: func(t *testing.T, s *state.Store) { + require.Nil(t, s.EnsureNode(1, &structs.Node{Node: "foo", Address: "127.0.0.1"})) + require.Nil(t, s.EnsureNode(2, &structs.Node{Node: "bar", Address: "127.0.0.2"})) + require.Nil(t, s.EnsureNode(3, &structs.Node{Node: "baz", Address: "127.0.0.2"})) + + // Typical services and some consul services spread across two nodes + require.Nil(t, s.EnsureService(4, "foo", &structs.NodeService{ID: "db", Service: "db", Tags: nil, Address: "", Port: 5000})) + require.Nil(t, s.EnsureService(5, "bar", &structs.NodeService{ID: "api", Service: "api", Tags: nil, Address: "", Port: 5000})) + require.Nil(t, s.EnsureService(6, "foo", &structs.NodeService{ID: "consul", Service: "consul", Tags: nil})) + require.Nil(t, s.EnsureService(7, "bar", &structs.NodeService{ID: "consul", Service: "consul", Tags: nil})) + }, + expectedGauges: map[string]metrics.GaugeValue{ + "consul.usage.test.consul.state.nodes;datacenter=dc1": { + Name: "consul.usage.test.consul.state.nodes", + Value: 3, + Labels: []metrics.Label{{Name: "datacenter", Value: "dc1"}}, + }, + "consul.usage.test.consul.state.services;datacenter=dc1": { + Name: "consul.usage.test.consul.state.services", + Value: 3, + Labels: []metrics.Label{ + {Name: "datacenter", Value: "dc1"}, + }, + }, + "consul.usage.test.consul.state.service_instances;datacenter=dc1": { + Name: "consul.usage.test.consul.state.service_instances", + Value: 4, + Labels: []metrics.Label{ + {Name: "datacenter", Value: "dc1"}, + }, + }, + }, + }, + } + + for name, tcase := range cases { + t.Run(name, func(t *testing.T) { + // Only have a single interval for the test + sink := metrics.NewInmemSink(1*time.Minute, 1*time.Minute) + cfg := metrics.DefaultConfig("consul.usage.test") + cfg.EnableHostname = false + metrics.NewGlobal(cfg, sink) + + mockStateProvider := &mockStateProvider{} + s, err := newStateStore() + require.NoError(t, err) + if tcase.modfiyStateStore != nil { + tcase.modfiyStateStore(t, s) + } + mockStateProvider.On("State").Return(s) + + reporter, err := NewUsageMetricsReporter( + new(Config). + WithStateProvider(mockStateProvider). + WithLogger(testutil.Logger(t)). + WithDatacenter("dc1"), + ) + require.NoError(t, err) + + reporter.runOnce() + + intervals := sink.Data() + require.Len(t, intervals, 1) + intv := intervals[0] + + // Range over the expected values instead of just doing an Equal + // comparison on the maps because of different metrics emitted between + // OSS and Ent. The enterprise tests have a full equality comparison on + // the maps. + for key, expected := range tcase.expectedGauges { + require.Equal(t, expected, intv.Gauges[key]) + } + }) + } +} diff --git a/logging/names.go b/logging/names.go index 6ade11bf69..02c0fbf69f 100644 --- a/logging/names.go +++ b/logging/names.go @@ -51,6 +51,7 @@ const ( TerminatingGateway string = "terminating_gateway" TLSUtil string = "tlsutil" Transaction string = "txn" + UsageMetrics string = "usage_metrics" WAN string = "wan" Watch string = "watch" ) From 69dbc926ad592fa362576868d5223fdf43dbf940 Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:24:19 -0500 Subject: [PATCH 040/122] Add WriteTxn interface and convert more functions to ReadTxn We add a WriteTxn interface for use in updating the usage memdb table, with the forward-looking prospect of incrementally converting other functions to accept interfaces. As well, we use the ReadTxn in new usage code, and as a side effect convert a couple of existing functions to use that interface as well. --- agent/consul/state/memdb.go | 7 +++++++ agent/consul/state/usage.go | 6 +++--- agent/consul/state/usage_oss.go | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index 5cdfd19dd1..3b5d5e696e 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -15,6 +15,13 @@ type ReadTxn interface { Abort() } +// WriteTxn is implemented by memdb.Txn to perform write operations. +type WriteTxn interface { + ReadTxn + Insert(table string, obj interface{}) error + Commit() error +} + // Changes wraps a memdb.Changes to include the index at which these changes // were made. type Changes struct { diff --git a/agent/consul/state/usage.go b/agent/consul/state/usage.go index 397e157f37..8b226b3e19 100644 --- a/agent/consul/state/usage.go +++ b/agent/consul/state/usage.go @@ -37,7 +37,7 @@ type UsageEntry struct { // updateUsage takes a set of memdb changes and computes a delta for specific // usage metrics that we track. -func updateUsage(tx *txn, changes Changes) error { +func updateUsage(tx WriteTxn, changes Changes) error { usageDeltas := make(map[string]int) for _, change := range changes.Changes { var delta int @@ -140,7 +140,7 @@ func (s *Store) ServiceUsage() (uint64, ServiceUsage, error) { return 0, ServiceUsage{}, fmt.Errorf("failed services lookup: %s", err) } - results, err := s.compileServiceUsage(tx, usage.Count) + results, err := compileServiceUsage(tx, usage.Count) if err != nil { return 0, ServiceUsage{}, fmt.Errorf("failed services lookup: %s", err) } @@ -148,7 +148,7 @@ func (s *Store) ServiceUsage() (uint64, ServiceUsage, error) { return usage.Index, results, nil } -func firstUsageEntry(tx *txn, id string) (*UsageEntry, error) { +func firstUsageEntry(tx ReadTxn, id string) (*UsageEntry, error) { usage, err := tx.First("usage", "id", id) if err != nil { return nil, err diff --git a/agent/consul/state/usage_oss.go b/agent/consul/state/usage_oss.go index ec54313d56..825b804948 100644 --- a/agent/consul/state/usage_oss.go +++ b/agent/consul/state/usage_oss.go @@ -12,7 +12,7 @@ type EnterpriseServiceUsage struct{} func addEnterpriseUsage(map[string]int, memdb.Change) {} -func (s *Store) compileServiceUsage(tx *txn, totalInstances int) (ServiceUsage, error) { +func compileServiceUsage(tx ReadTxn, totalInstances int) (ServiceUsage, error) { var totalServices int results, err := tx.Get( "index", From 086a8ea8eb2069966e2b9d6fbb19c3cd39e5ea48 Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:24:20 -0500 Subject: [PATCH 041/122] Use ReadTxn interface in state store helper functions --- agent/consul/state/operations_oss.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/agent/consul/state/operations_oss.go b/agent/consul/state/operations_oss.go index 4c382694b9..30deb70683 100644 --- a/agent/consul/state/operations_oss.go +++ b/agent/consul/state/operations_oss.go @@ -7,30 +7,30 @@ import ( "github.com/hashicorp/go-memdb" ) -func firstWithTxn(tx *txn, +func firstWithTxn(tx ReadTxn, table, index, idxVal string, entMeta *structs.EnterpriseMeta) (interface{}, error) { return tx.First(table, index, idxVal) } -func firstWatchWithTxn(tx *txn, +func firstWatchWithTxn(tx ReadTxn, table, index, idxVal string, entMeta *structs.EnterpriseMeta) (<-chan struct{}, interface{}, error) { return tx.FirstWatch(table, index, idxVal) } -func firstWatchCompoundWithTxn(tx *txn, +func firstWatchCompoundWithTxn(tx ReadTxn, table, index string, _ *structs.EnterpriseMeta, idxVals ...interface{}) (<-chan struct{}, interface{}, error) { return tx.FirstWatch(table, index, idxVals...) } -func getWithTxn(tx *txn, +func getWithTxn(tx ReadTxn, table, index, idxVal string, entMeta *structs.EnterpriseMeta) (memdb.ResultIterator, error) { return tx.Get(table, index, idxVal) } -func getCompoundWithTxn(tx *txn, table, index string, +func getCompoundWithTxn(tx ReadTxn, table, index string, _ *structs.EnterpriseMeta, idxVals ...interface{}) (memdb.ResultIterator, error) { return tx.Get(table, index, idxVals...) From d301145e623fadc5ef14f02d31330156feabf0e6 Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:24:21 -0500 Subject: [PATCH 042/122] Refactor state store usage to track unique service names This commit refactors the state store usage code to track unique service name changes on transaction commit. This means we only need to lookup usage entries when reading the information, as opposed to iterating over a large number of service indices. - Take into account a service instance's name being changed - Do not iterate through entire list of service instances, we only care about whether there is 0, 1, or more than 1. --- agent/consul/state/usage.go | 138 +++++++++++++++++++++++++------ agent/consul/state/usage_oss.go | 24 +----- agent/consul/state/usage_test.go | 61 ++++++++++++++ 3 files changed, 177 insertions(+), 46 deletions(-) diff --git a/agent/consul/state/usage.go b/agent/consul/state/usage.go index 8b226b3e19..6e43f3729f 100644 --- a/agent/consul/state/usage.go +++ b/agent/consul/state/usage.go @@ -3,9 +3,14 @@ package state import ( "fmt" + "github.com/hashicorp/consul/agent/structs" memdb "github.com/hashicorp/go-memdb" ) +const ( + serviceNamesUsageTable = "service-names" +) + // usageTableSchema returns a new table schema used for tracking various indexes // for the Raft log. func usageTableSchema() *memdb.TableSchema { @@ -29,12 +34,29 @@ func init() { registerSchema(usageTableSchema) } +// UsageEntry represents a count of some arbitrary identifier within the +// state store, along with the last seen index. type UsageEntry struct { ID string Index uint64 Count int } +// ServiceUsage contains all of the usage data related to services +type ServiceUsage struct { + Services int + ServiceInstances int + EnterpriseServiceUsage +} + +type uniqueServiceState int + +const ( + NoChange uniqueServiceState = 0 + Deleted uniqueServiceState = 1 + Created uniqueServiceState = 2 +) + // updateUsage takes a set of memdb changes and computes a delta for specific // usage metrics that we track. func updateUsage(tx WriteTxn, changes Changes) error { @@ -46,23 +68,98 @@ func updateUsage(tx WriteTxn, changes Changes) error { } else if change.Deleted() { delta = -1 } + switch change.Table { case "nodes": usageDeltas[change.Table] += delta case "services": + svc := changeObject(change).(*structs.ServiceNode) usageDeltas[change.Table] += delta - } + serviceIter, err := getWithTxn(tx, servicesTableName, "service", svc.ServiceName, &svc.EnterpriseMeta) + if err != nil { + return err + } - addEnterpriseUsage(usageDeltas, change) + var serviceState uniqueServiceState + if serviceIter.Next() == nil { + // If no services exist, we know we deleted the last service + // instance. + serviceState = Deleted + usageDeltas[serviceNamesUsageTable] -= 1 + } else if serviceIter.Next() == nil { + // If a second call to Next() returns nil, we know only a single + // instance exists. If, in addition, a new service name has been + // registered, either via creating a new service instance or via + // renaming an existing service, than we update our service count. + // + // We only care about two cases here: + // 1. A new service instance has been created with a unique name + // 2. An existing service instance has been updated with a new unique name + // + // These are the only ways a new unique service can be created. The + // other valid cases here: an update that does not change the service + // name, and a deletion, both do not impact the count of unique service + // names in the system. + + if change.Created() { + // Given a single existing service instance of the service: If a + // service has just been created, then we know this is a new unique + // service. + serviceState = Created + usageDeltas[serviceNamesUsageTable] += 1 + } else if serviceNameChanged(change) { + // Given a single existing service instance of the service: If a + // service has been updated with a new service name, then we know + // this is a new unique service. + serviceState = Created + usageDeltas[serviceNamesUsageTable] += 1 + + // Check whether the previous name was deleted in this rename, this + // is a special case of renaming a service which does not result in + // changing the count of unique service names. + before := change.Before.(*structs.ServiceNode) + beforeSvc, err := firstWithTxn(tx, servicesTableName, "service", before.ServiceName, &before.EnterpriseMeta) + if err != nil { + return err + } + if beforeSvc == nil { + usageDeltas[serviceNamesUsageTable] -= 1 + // set serviceState to NoChange since we have both gained and lost a + // service, cancelling each other out + serviceState = NoChange + } + } + } + addEnterpriseServiceUsage(usageDeltas, change, serviceState) + } } idx := changes.Index // This will happen when restoring from a snapshot, just take the max index // of the tables we are tracking. if idx == 0 { - idx = maxIndexTxn(tx, "nodes", "services") + idx = maxIndexTxn(tx, "nodes", servicesTableName) } + return writeUsageDeltas(tx, idx, usageDeltas) +} + +// serviceNameChanged returns a boolean that indicates whether the +// provided change resulted in an update to the service's service name. +func serviceNameChanged(change memdb.Change) bool { + if change.Updated() { + before := change.Before.(*structs.ServiceNode) + after := change.After.(*structs.ServiceNode) + return before.ServiceName != after.ServiceName + } + + return false +} + +// writeUsageDeltas will take in a map of IDs to deltas and update each +// entry accordingly, checking for integer underflow. The index that is +// passed in will be recorded on the entry as well. +func writeUsageDeltas(tx WriteTxn, idx uint64, usageDeltas map[string]int) error { for id, delta := range usageDeltas { u, err := tx.First("usage", "id", id) if err != nil { @@ -98,34 +195,16 @@ func updateUsage(tx WriteTxn, changes Changes) error { return nil } -// ServiceUsage contains all of the usage data related to services -type ServiceUsage struct { - Services int - ServiceInstances int - EnterpriseServiceUsage -} - // NodeCount returns the latest seen Raft index, a count of the number of nodes // registered, and any errors. func (s *Store) NodeCount() (uint64, int, error) { tx := s.db.ReadTxn() defer tx.Abort() - usage, err := tx.First("usage", "id", "nodes") + nodeUsage, err := firstUsageEntry(tx, "nodes") if err != nil { return 0, 0, fmt.Errorf("failed nodes lookup: %s", err) } - - // If no nodes have been registered, the usage entry will not exist. - if usage == nil { - return 0, 0, nil - } - - nodeUsage, ok := usage.(*UsageEntry) - if !ok { - return 0, 0, fmt.Errorf("failed nodes lookup: type %T is not *UsageEntry", usage) - } - return nodeUsage.Index, nodeUsage.Count, nil } @@ -135,17 +214,26 @@ func (s *Store) ServiceUsage() (uint64, ServiceUsage, error) { tx := s.db.ReadTxn() defer tx.Abort() - usage, err := firstUsageEntry(tx, "services") + serviceInstances, err := firstUsageEntry(tx, servicesTableName) if err != nil { return 0, ServiceUsage{}, fmt.Errorf("failed services lookup: %s", err) } - results, err := compileServiceUsage(tx, usage.Count) + services, err := firstUsageEntry(tx, serviceNamesUsageTable) if err != nil { return 0, ServiceUsage{}, fmt.Errorf("failed services lookup: %s", err) } - return usage.Index, results, nil + usage := ServiceUsage{ + ServiceInstances: serviceInstances.Count, + Services: services.Count, + } + results, err := compileEnterpriseUsage(tx, usage) + if err != nil { + return 0, ServiceUsage{}, fmt.Errorf("failed services lookup: %s", err) + } + + return serviceInstances.Index, results, nil } func firstUsageEntry(tx ReadTxn, id string) (*UsageEntry, error) { diff --git a/agent/consul/state/usage_oss.go b/agent/consul/state/usage_oss.go index 825b804948..f35576abf5 100644 --- a/agent/consul/state/usage_oss.go +++ b/agent/consul/state/usage_oss.go @@ -3,31 +3,13 @@ package state import ( - "fmt" - memdb "github.com/hashicorp/go-memdb" ) type EnterpriseServiceUsage struct{} -func addEnterpriseUsage(map[string]int, memdb.Change) {} +func addEnterpriseServiceUsage(map[string]int, memdb.Change, uniqueServiceState) {} -func compileServiceUsage(tx ReadTxn, totalInstances int) (ServiceUsage, error) { - var totalServices int - results, err := tx.Get( - "index", - "id_prefix", - serviceIndexName("", nil), - ) - if err != nil { - return ServiceUsage{}, fmt.Errorf("failed services index lookup: %s", err) - } - for i := results.Next(); i != nil; i = results.Next() { - totalServices += 1 - } - - return ServiceUsage{ - Services: totalServices, - ServiceInstances: totalInstances, - }, nil +func compileEnterpriseUsage(tx ReadTxn, usage ServiceUsage) (ServiceUsage, error) { + return usage, nil } diff --git a/agent/consul/state/usage_test.go b/agent/consul/state/usage_test.go index a1c07f6546..f608d7d75c 100644 --- a/agent/consul/state/usage_test.go +++ b/agent/consul/state/usage_test.go @@ -131,3 +131,64 @@ func TestStateStore_Usage_updateUsage_Underflow(t *testing.T) { require.Error(t, err) require.Contains(t, err.Error(), "negative count") } + +func TestStateStore_Usage_ServiceUsage_updatingServiceName(t *testing.T) { + s := testStateStore(t) + testRegisterNode(t, s, 1, "node1") + testRegisterService(t, s, 1, "node1", "service1") + + t.Run("rename service with a single instance", func(t *testing.T) { + svc := &structs.NodeService{ + ID: "service1", + Service: "after", + Address: "1.1.1.1", + Port: 1111, + } + require.NoError(t, s.EnsureService(2, "node1", svc)) + + // We renamed a service with a single instance, so we maintain 1 service. + idx, usage, err := s.ServiceUsage() + require.NoError(t, err) + require.Equal(t, idx, uint64(2)) + require.Equal(t, usage.Services, 1) + require.Equal(t, usage.ServiceInstances, 1) + }) + + t.Run("rename service with a multiple instances", func(t *testing.T) { + svc2 := &structs.NodeService{ + ID: "service2", + Service: "before", + Address: "1.1.1.2", + Port: 1111, + } + require.NoError(t, s.EnsureService(3, "node1", svc2)) + + svc3 := &structs.NodeService{ + ID: "service3", + Service: "before", + Address: "1.1.1.3", + Port: 1111, + } + require.NoError(t, s.EnsureService(4, "node1", svc3)) + + idx, usage, err := s.ServiceUsage() + require.NoError(t, err) + require.Equal(t, idx, uint64(4)) + require.Equal(t, usage.Services, 2) + require.Equal(t, usage.ServiceInstances, 3) + + update := &structs.NodeService{ + ID: "service2", + Service: "another-name", + Address: "1.1.1.2", + Port: 1111, + } + require.NoError(t, s.EnsureService(5, "node1", update)) + + idx, usage, err = s.ServiceUsage() + require.NoError(t, err) + require.Equal(t, idx, uint64(5)) + require.Equal(t, usage.Services, 3) + require.Equal(t, usage.ServiceInstances, 3) + }) +} From a3028cad89e751b2c7c12baca6eca77601066baf Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:24:22 -0500 Subject: [PATCH 043/122] Update godoc string for memdb wrapper functions/structs --- agent/consul/state/memdb.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index 3b5d5e696e..895da9e069 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -31,8 +31,9 @@ type Changes struct { } // changeTrackerDB is a thin wrapper around memdb.DB which enables TrackChanges on -// all write transactions. When the transaction is committed the changes are -// sent to the eventPublisher which will create and emit change events. +// all write transactions. When the transaction is committed the changes are: +// 1. Used to update our internal usage tracking +// 2. Sent to the eventPublisher which will create and emit change events type changeTrackerDB struct { db *memdb.MemDB publisher eventPublisher @@ -100,7 +101,8 @@ func (c *changeTrackerDB) publish(changes Changes) error { // Restore where we need to replace the entire contents of the Store. // WriteTxnRestore uses a zero index since the whole restore doesn't really // occur at one index - the effect is to write many values that were previously -// written across many indexes. +// written across many indexes. WriteTxnRestore also does not publish any +// change events to subscribers. func (c *changeTrackerDB) WriteTxnRestore() *txn { t := &txn{ Txn: c.db.Txn(true), From bcb586bee2e5637869d7a310de738ae9daf6c683 Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:24:23 -0500 Subject: [PATCH 044/122] Set metrics reporting interval to 9 seconds This is below the 10 second interval that lib/telemetry.go implements as its aggregation interval, ensuring that we always report these metrics. --- agent/consul/config.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/agent/consul/config.go b/agent/consul/config.go index 955fb49d66..4316475651 100644 --- a/agent/consul/config.go +++ b/agent/consul/config.go @@ -593,9 +593,12 @@ func DefaultConfig() *Config { }, }, + // Stay under the 10 second aggregation interval of + // go-metrics. This ensures we always report the + // usage metrics in each cycle. + MetricsReportingInterval: 9 * time.Second, ServerHealthInterval: 2 * time.Second, AutopilotInterval: 10 * time.Second, - MetricsReportingInterval: 10 * time.Second, DefaultQueryTime: 300 * time.Second, MaxQueryTime: 600 * time.Second, From bf50c478db42b2cc8d14588f40e5cc61e955fbb2 Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:38:29 -0500 Subject: [PATCH 045/122] docs: add new usage metrics to telemetry page --- website/pages/docs/agent/telemetry.mdx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/website/pages/docs/agent/telemetry.mdx b/website/pages/docs/agent/telemetry.mdx index 449997fcd7..ea40e2ee64 100644 --- a/website/pages/docs/agent/telemetry.mdx +++ b/website/pages/docs/agent/telemetry.mdx @@ -171,6 +171,9 @@ This is a full list of metrics emitted by Consul. | `consul.runtime.num_goroutines` | This tracks the number of running goroutines and is a general load pressure indicator. This may burst from time to time but should return to a steady state value. | number of goroutines | gauge | | `consul.runtime.alloc_bytes` | This measures the number of bytes allocated by the Consul process. This may burst from time to time but should return to a steady state value. | bytes | gauge | | `consul.runtime.heap_objects` | This measures the number of objects allocated on the heap and is a general memory pressure indicator. This may burst from time to time but should return to a steady state value. | number of objects | gauge | +| `consul.state.nodes` | This meansures the current number of nodes registered with Consul. It is only emitted by Consul servers. | number of objects | gauge | +| `consul.state.services` | This meansures the current number of unique services registered with Consul, based on service name. It is only emitted by Consul servers. | number of objects | gauge | +| `consul.state.service_instances` | This meansures the current number of unique service instances registered with Consul. It is only emitted by Consul servers. | number of objects | gauge | | `consul.acl.cache_hit` | The number of ACL cache hits. | hits | counter | | `consul.acl.cache_miss` | The number of ACL cache misses. | misses | counter | | `consul.acl.replication_hit` | The number of ACL replication cache hits (when not running in the ACL datacenter). | hits | counter | From d0f74cd1e8e5a2a0708b4bd186edf69f41195a94 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Wed, 2 Sep 2020 10:47:19 -0500 Subject: [PATCH 046/122] connect: fix bug in preventing some namespaced config entry modifications (#8601) Whenever an upsert/deletion of a config entry happens, within the open state store transaction we speculatively test compile all discovery chains that may be affected by the pending modification to verify that the write would not create an erroneous scenario (such as splitting traffic to a subset that did not exist). If a single discovery chain evaluation references two config entries with the same kind and name in different namespaces then sometimes the upsert/deletion would be falsely rejected. It does not appear as though this bug would've let invalid writes through to the state store so the correction does not require a cleanup phase. --- .changelog/8601.txt | 3 + agent/consul/state/config_entry.go | 7 +- agent/consul/state/config_entry_test.go | 96 +++++++++++++------------ agent/structs/config_entry.go | 15 ++++ 4 files changed, 71 insertions(+), 50 deletions(-) create mode 100644 .changelog/8601.txt diff --git a/.changelog/8601.txt b/.changelog/8601.txt new file mode 100644 index 0000000000..f791fe2efe --- /dev/null +++ b/.changelog/8601.txt @@ -0,0 +1,3 @@ +```release-note:bug +connect: fix bug in preventing some namespaced config entry modifications +``` diff --git a/agent/consul/state/config_entry.go b/agent/consul/state/config_entry.go index 44113f46ad..f19205bbee 100644 --- a/agent/consul/state/config_entry.go +++ b/agent/consul/state/config_entry.go @@ -467,7 +467,7 @@ func validateProposedConfigEntryInServiceGraph( } overrides := map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: kind, Name: name}: next, + structs.NewConfigEntryKindName(kind, name, entMeta): next, } var ( @@ -909,9 +909,8 @@ func configEntryWithOverridesTxn( entMeta *structs.EnterpriseMeta, ) (uint64, structs.ConfigEntry, error) { if len(overrides) > 0 { - entry, ok := overrides[structs.ConfigEntryKindName{ - Kind: kind, Name: name, - }] + kn := structs.NewConfigEntryKindName(kind, name, entMeta) + entry, ok := overrides[kn] if ok { return 0, entry, nil // a nil entry implies it should act like it is erased } diff --git a/agent/consul/state/config_entry_test.go b/agent/consul/state/config_entry_test.go index 4cee1a6c40..fcf7624a5b 100644 --- a/agent/consul/state/config_entry_test.go +++ b/agent/consul/state/config_entry_test.go @@ -880,10 +880,10 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceDefaults, Name: "main"}: nil, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil): nil, }, expectAfter: []structs.ConfigEntryKindName{ // nothing @@ -899,17 +899,17 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceDefaults, Name: "main"}: &structs.ServiceConfigEntry{ + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil): &structs.ServiceConfigEntry{ Kind: structs.ServiceDefaults, Name: "main", Protocol: "grpc", }, }, expectAfter: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), }, checkAfter: func(t *testing.T, entrySet *structs.DiscoveryChainConfigEntries) { defaults := entrySet.GetService(structs.NewServiceID("main", nil)) @@ -932,14 +932,14 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, - {Kind: structs.ServiceRouter, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceRouter, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceRouter, Name: "main"}: nil, + structs.NewConfigEntryKindName(structs.ServiceRouter, "main", nil): nil, }, expectAfter: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), }, }, { @@ -977,12 +977,12 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, - {Kind: structs.ServiceResolver, Name: "main"}, - {Kind: structs.ServiceRouter, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceResolver, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceRouter, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceRouter, Name: "main"}: &structs.ServiceRouterConfigEntry{ + structs.NewConfigEntryKindName(structs.ServiceRouter, "main", nil): &structs.ServiceRouterConfigEntry{ Kind: structs.ServiceRouter, Name: "main", Routes: []structs.ServiceRoute{ @@ -1000,9 +1000,9 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectAfter: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, - {Kind: structs.ServiceResolver, Name: "main"}, - {Kind: structs.ServiceRouter, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceResolver, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceRouter, "main", nil), }, checkAfter: func(t *testing.T, entrySet *structs.DiscoveryChainConfigEntries) { router := entrySet.GetRouter(structs.NewServiceID("main", nil)) @@ -1040,14 +1040,14 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, - {Kind: structs.ServiceSplitter, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceSplitter, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceSplitter, Name: "main"}: nil, + structs.NewConfigEntryKindName(structs.ServiceSplitter, "main", nil): nil, }, expectAfter: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), }, }, { @@ -1067,11 +1067,11 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, - {Kind: structs.ServiceSplitter, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceSplitter, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceSplitter, Name: "main"}: &structs.ServiceSplitterConfigEntry{ + structs.NewConfigEntryKindName(structs.ServiceSplitter, "main", nil): &structs.ServiceSplitterConfigEntry{ Kind: structs.ServiceSplitter, Name: "main", Splits: []structs.ServiceSplit{ @@ -1081,8 +1081,8 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectAfter: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceDefaults, Name: "main"}, - {Kind: structs.ServiceSplitter, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceDefaults, "main", nil), + structs.NewConfigEntryKindName(structs.ServiceSplitter, "main", nil), }, checkAfter: func(t *testing.T, entrySet *structs.DiscoveryChainConfigEntries) { splitter := entrySet.GetSplitter(structs.NewServiceID("main", nil)) @@ -1106,10 +1106,10 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceResolver, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceResolver, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceResolver, Name: "main"}: nil, + structs.NewConfigEntryKindName(structs.ServiceResolver, "main", nil): nil, }, expectAfter: []structs.ConfigEntryKindName{ // nothing @@ -1124,17 +1124,17 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { }, }, expectBefore: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceResolver, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceResolver, "main", nil), }, overrides: map[structs.ConfigEntryKindName]structs.ConfigEntry{ - {Kind: structs.ServiceResolver, Name: "main"}: &structs.ServiceResolverConfigEntry{ + structs.NewConfigEntryKindName(structs.ServiceResolver, "main", nil): &structs.ServiceResolverConfigEntry{ Kind: structs.ServiceResolver, Name: "main", ConnectTimeout: 33 * time.Second, }, }, expectAfter: []structs.ConfigEntryKindName{ - {Kind: structs.ServiceResolver, Name: "main"}, + structs.NewConfigEntryKindName(structs.ServiceResolver, "main", nil), }, checkAfter: func(t *testing.T, entrySet *structs.DiscoveryChainConfigEntries) { resolver := entrySet.GetResolver(structs.NewServiceID("main", nil)) @@ -1181,28 +1181,32 @@ func TestStore_ReadDiscoveryChainConfigEntries_Overrides(t *testing.T) { func entrySetToKindNames(entrySet *structs.DiscoveryChainConfigEntries) []structs.ConfigEntryKindName { var out []structs.ConfigEntryKindName for _, entry := range entrySet.Routers { - out = append(out, structs.ConfigEntryKindName{ - Kind: entry.Kind, - Name: entry.Name, - }) + out = append(out, structs.NewConfigEntryKindName( + entry.Kind, + entry.Name, + &entry.EnterpriseMeta, + )) } for _, entry := range entrySet.Splitters { - out = append(out, structs.ConfigEntryKindName{ - Kind: entry.Kind, - Name: entry.Name, - }) + out = append(out, structs.NewConfigEntryKindName( + entry.Kind, + entry.Name, + &entry.EnterpriseMeta, + )) } for _, entry := range entrySet.Resolvers { - out = append(out, structs.ConfigEntryKindName{ - Kind: entry.Kind, - Name: entry.Name, - }) + out = append(out, structs.NewConfigEntryKindName( + entry.Kind, + entry.Name, + &entry.EnterpriseMeta, + )) } for _, entry := range entrySet.Services { - out = append(out, structs.ConfigEntryKindName{ - Kind: entry.Kind, - Name: entry.Name, - }) + out = append(out, structs.NewConfigEntryKindName( + entry.Kind, + entry.Name, + &entry.EnterpriseMeta, + )) } return out } diff --git a/agent/structs/config_entry.go b/agent/structs/config_entry.go index d377f83a72..4cafb9b292 100644 --- a/agent/structs/config_entry.go +++ b/agent/structs/config_entry.go @@ -666,4 +666,19 @@ func (c *ConfigEntryResponse) UnmarshalBinary(data []byte) error { type ConfigEntryKindName struct { Kind string Name string + EnterpriseMeta +} + +func NewConfigEntryKindName(kind, name string, entMeta *EnterpriseMeta) ConfigEntryKindName { + ret := ConfigEntryKindName{ + Kind: kind, + Name: name, + } + if entMeta == nil { + entMeta = DefaultEnterpriseMeta() + } + + ret.EnterpriseMeta = *entMeta + ret.EnterpriseMeta.Normalize() + return ret } From 40cbd5a8f3251b829331644dd75d4c95818549da Mon Sep 17 00:00:00 2001 From: Chris Piraino Date: Wed, 2 Sep 2020 10:39:35 -0500 Subject: [PATCH 047/122] Changelog entry for usage metrics --- .changelog/8603.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/8603.txt diff --git a/.changelog/8603.txt b/.changelog/8603.txt new file mode 100644 index 0000000000..ffe9a9401f --- /dev/null +++ b/.changelog/8603.txt @@ -0,0 +1,3 @@ +```release-note:feature +telemetry: track node and service counts and emit them as metrics +``` From 119e945c3ec9a97b64ed03599a61e6ed69cc92bb Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Wed, 2 Sep 2020 14:10:25 -0500 Subject: [PATCH 048/122] connect: all config entries pick up a meta field (#8596) Fixes #8595 --- .changelog/8596.txt | 3 + agent/config/runtime_test.go | 48 +++++- agent/structs/config_entry.go | 43 ++++- agent/structs/config_entry_discoverychain.go | 36 ++++ agent/structs/config_entry_gateways.go | 25 +++ agent/structs/config_entry_test.go | 92 ++++++++++- api/config_entry.go | 2 + api/config_entry_discoverychain.go | 3 + api/config_entry_gateways.go | 4 + api/config_entry_test.go | 66 +++++++- command/config/write/config_write_test.go | 156 +++++++++++++++++- .../agent/config-entries/ingress-gateway.mdx | 2 + .../agent/config-entries/proxy-defaults.mdx | 2 + .../agent/config-entries/service-defaults.mdx | 2 + .../agent/config-entries/service-resolver.mdx | 4 + .../agent/config-entries/service-router.mdx | 4 + .../agent/config-entries/service-splitter.mdx | 4 + .../config-entries/terminating-gateway.mdx | 2 + 18 files changed, 478 insertions(+), 20 deletions(-) create mode 100644 .changelog/8596.txt diff --git a/.changelog/8596.txt b/.changelog/8596.txt new file mode 100644 index 0000000000..0c96f0c7d9 --- /dev/null +++ b/.changelog/8596.txt @@ -0,0 +1,3 @@ +```release-note:feature +connect: all config entries pick up a meta field +``` diff --git a/agent/config/runtime_test.go b/agent/config/runtime_test.go index adbc269e68..906724ac6e 100644 --- a/agent/config/runtime_test.go +++ b/agent/config/runtime_test.go @@ -3436,6 +3436,10 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { { "kind": "service-defaults", "name": "web", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "protocol": "http", "external_sni": "abc-123", "mesh_gateway": { @@ -3450,6 +3454,10 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { bootstrap { kind = "service-defaults" name = "web" + meta { + "foo" = "bar" + "gir" = "zim" + } protocol = "http" external_sni = "abc-123" mesh_gateway { @@ -3461,8 +3469,12 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ServiceConfigEntry{ - Kind: structs.ServiceDefaults, - Name: "web", + Kind: structs.ServiceDefaults, + Name: "web", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, EnterpriseMeta: *defaultEntMeta, Protocol: "http", ExternalSNI: "abc-123", @@ -3482,6 +3494,10 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { { "Kind": "service-defaults", "Name": "web", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Protocol": "http", "ExternalSNI": "abc-123", "MeshGateway": { @@ -3496,6 +3512,10 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { bootstrap { Kind = "service-defaults" Name = "web" + Meta { + "foo" = "bar" + "gir" = "zim" + } Protocol = "http" ExternalSNI = "abc-123" MeshGateway { @@ -3507,8 +3527,12 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ServiceConfigEntry{ - Kind: structs.ServiceDefaults, - Name: "web", + Kind: structs.ServiceDefaults, + Name: "web", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, EnterpriseMeta: *defaultEntMeta, Protocol: "http", ExternalSNI: "abc-123", @@ -3528,6 +3552,10 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { { "kind": "service-router", "name": "main", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "routes": [ { "match": { @@ -3612,6 +3640,10 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { bootstrap { kind = "service-router" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } routes = [ { match { @@ -3693,8 +3725,12 @@ func TestBuilder_BuildAndValide_ConfigFlagsAndEdgecases(t *testing.T) { rt.DataDir = dataDir rt.ConfigEntryBootstrap = []structs.ConfigEntry{ &structs.ServiceRouterConfigEntry{ - Kind: structs.ServiceRouter, - Name: "main", + Kind: structs.ServiceRouter, + Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, EnterpriseMeta: *defaultEntMeta, Routes: []structs.ServiceRoute{ { diff --git a/agent/structs/config_entry.go b/agent/structs/config_entry.go index 4cafb9b292..b1ffd3e0d6 100644 --- a/agent/structs/config_entry.go +++ b/agent/structs/config_entry.go @@ -10,6 +10,7 @@ import ( "github.com/hashicorp/consul/lib" "github.com/hashicorp/consul/lib/decode" "github.com/hashicorp/go-msgpack/codec" + "github.com/hashicorp/go-multierror" "github.com/mitchellh/hashstructure" "github.com/mitchellh/mapstructure" ) @@ -43,6 +44,7 @@ type ConfigEntry interface { CanRead(acl.Authorizer) bool CanWrite(acl.Authorizer) bool + GetMeta() map[string]string GetEnterpriseMeta() *EnterpriseMeta GetRaftIndex() *RaftIndex } @@ -64,6 +66,7 @@ type ServiceConfigEntry struct { // // Connect ConnectConfiguration + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -80,6 +83,13 @@ func (e *ServiceConfigEntry) GetName() string { return e.Name } +func (e *ServiceConfigEntry) GetMeta() map[string]string { + if e == nil { + return nil + } + return e.Meta +} + func (e *ServiceConfigEntry) Normalize() error { if e == nil { return fmt.Errorf("config entry is nil") @@ -94,7 +104,7 @@ func (e *ServiceConfigEntry) Normalize() error { } func (e *ServiceConfigEntry) Validate() error { - return nil + return validateConfigEntryMeta(e.Meta) } func (e *ServiceConfigEntry) CanRead(authz acl.Authorizer) bool { @@ -137,6 +147,7 @@ type ProxyConfigEntry struct { MeshGateway MeshGatewayConfig `json:",omitempty" alias:"mesh_gateway"` Expose ExposeConfig `json:",omitempty"` + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -153,6 +164,13 @@ func (e *ProxyConfigEntry) GetName() string { return e.Name } +func (e *ProxyConfigEntry) GetMeta() map[string]string { + if e == nil { + return nil + } + return e.Meta +} + func (e *ProxyConfigEntry) Normalize() error { if e == nil { return fmt.Errorf("config entry is nil") @@ -175,6 +193,10 @@ func (e *ProxyConfigEntry) Validate() error { return fmt.Errorf("invalid name (%q), only %q is supported", e.Name, ProxyConfigGlobal) } + if err := validateConfigEntryMeta(e.Meta); err != nil { + return err + } + return e.validateEnterpriseMeta() } @@ -682,3 +704,22 @@ func NewConfigEntryKindName(kind, name string, entMeta *EnterpriseMeta) ConfigEn ret.EnterpriseMeta.Normalize() return ret } + +func validateConfigEntryMeta(meta map[string]string) error { + var err error + if len(meta) > metaMaxKeyPairs { + err = multierror.Append(err, fmt.Errorf( + "Meta exceeds maximum element count %d", metaMaxKeyPairs)) + } + for k, v := range meta { + if len(k) > metaKeyMaxLength { + err = multierror.Append(err, fmt.Errorf( + "Meta key %q exceeds maximum length %d", k, metaKeyMaxLength)) + } + if len(v) > metaValueMaxLength { + err = multierror.Append(err, fmt.Errorf( + "Meta value for key %q exceeds maximum length %d", k, metaValueMaxLength)) + } + } + return err +} diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index 04cf32353a..57d0a69fe5 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -38,6 +38,7 @@ type ServiceRouterConfigEntry struct { // the default service. Routes []ServiceRoute + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -54,6 +55,13 @@ func (e *ServiceRouterConfigEntry) GetName() string { return e.Name } +func (e *ServiceRouterConfigEntry) GetMeta() map[string]string { + if e == nil { + return nil + } + return e.Meta +} + func (e *ServiceRouterConfigEntry) Normalize() error { if e == nil { return fmt.Errorf("config entry is nil") @@ -89,6 +97,10 @@ func (e *ServiceRouterConfigEntry) Validate() error { return fmt.Errorf("Name is required") } + if err := validateConfigEntryMeta(e.Meta); err != nil { + return err + } + // Technically you can have no explicit routes at all where just the // catch-all is configured for you, but at that point maybe you should just // delete it so it will default? @@ -407,6 +419,7 @@ type ServiceSplitterConfigEntry struct { // to the FIRST split. Splits []ServiceSplit + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -423,6 +436,13 @@ func (e *ServiceSplitterConfigEntry) GetName() string { return e.Name } +func (e *ServiceSplitterConfigEntry) GetMeta() map[string]string { + if e == nil { + return nil + } + return e.Meta +} + func (e *ServiceSplitterConfigEntry) Normalize() error { if e == nil { return fmt.Errorf("config entry is nil") @@ -461,6 +481,10 @@ func (e *ServiceSplitterConfigEntry) Validate() error { return fmt.Errorf("no splits configured") } + if err := validateConfigEntryMeta(e.Meta); err != nil { + return err + } + const maxScaledWeight = 100 * 100 copyAsKey := func(s ServiceSplit) ServiceSplit { @@ -639,6 +663,7 @@ type ServiceResolverConfigEntry struct { // to this service. ConnectTimeout time.Duration `json:",omitempty" alias:"connect_timeout"` + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -710,6 +735,13 @@ func (e *ServiceResolverConfigEntry) GetName() string { return e.Name } +func (e *ServiceResolverConfigEntry) GetMeta() map[string]string { + if e == nil { + return nil + } + return e.Meta +} + func (e *ServiceResolverConfigEntry) Normalize() error { if e == nil { return fmt.Errorf("config entry is nil") @@ -727,6 +759,10 @@ func (e *ServiceResolverConfigEntry) Validate() error { return fmt.Errorf("Name is required") } + if err := validateConfigEntryMeta(e.Meta); err != nil { + return err + } + if len(e.Subsets) > 0 { for name := range e.Subsets { if name == "" { diff --git a/agent/structs/config_entry_gateways.go b/agent/structs/config_entry_gateways.go index a5557dbafa..61b9930823 100644 --- a/agent/structs/config_entry_gateways.go +++ b/agent/structs/config_entry_gateways.go @@ -27,6 +27,7 @@ type IngressGatewayConfigEntry struct { // what services to associated to those ports. Listeners []IngressListener + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -73,6 +74,7 @@ type IngressService struct { // using a "tcp" listener. Hosts []string + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` } @@ -93,6 +95,13 @@ func (e *IngressGatewayConfigEntry) GetName() string { return e.Name } +func (e *IngressGatewayConfigEntry) GetMeta() map[string]string { + if e == nil { + return nil + } + return e.Meta +} + func (e *IngressGatewayConfigEntry) Normalize() error { if e == nil { return fmt.Errorf("config entry is nil") @@ -121,6 +130,10 @@ func (e *IngressGatewayConfigEntry) Normalize() error { } func (e *IngressGatewayConfigEntry) Validate() error { + if err := validateConfigEntryMeta(e.Meta); err != nil { + return err + } + validProtocols := map[string]bool{ "tcp": true, "http": true, @@ -283,6 +296,7 @@ type TerminatingGatewayConfigEntry struct { Name string Services []LinkedService + Meta map[string]string `json:",omitempty"` EnterpriseMeta `hcl:",squash" mapstructure:",squash"` RaftIndex } @@ -322,6 +336,13 @@ func (e *TerminatingGatewayConfigEntry) GetName() string { return e.Name } +func (e *TerminatingGatewayConfigEntry) GetMeta() map[string]string { + if e == nil { + return nil + } + return e.Meta +} + func (e *TerminatingGatewayConfigEntry) Normalize() error { if e == nil { return fmt.Errorf("config entry is nil") @@ -339,6 +360,10 @@ func (e *TerminatingGatewayConfigEntry) Normalize() error { } func (e *TerminatingGatewayConfigEntry) Validate() error { + if err := validateConfigEntryMeta(e.Meta); err != nil { + return err + } + seen := make(map[ServiceID]bool) for _, svc := range e.Services { diff --git a/agent/structs/config_entry_test.go b/agent/structs/config_entry_test.go index 34ccfbaf46..d855529f4f 100644 --- a/agent/structs/config_entry_test.go +++ b/agent/structs/config_entry_test.go @@ -46,6 +46,10 @@ func TestDecodeConfigEntry(t *testing.T) { snake: ` kind = "proxy-defaults" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } config { "foo" = 19 "bar" = "abc" @@ -60,6 +64,10 @@ func TestDecodeConfigEntry(t *testing.T) { camel: ` Kind = "proxy-defaults" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Config { "foo" = 19 "bar" = "abc" @@ -74,6 +82,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &ProxyConfigEntry{ Kind: "proxy-defaults", Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Config: map[string]interface{}{ "foo": 19, "bar": "abc", @@ -91,6 +103,10 @@ func TestDecodeConfigEntry(t *testing.T) { snake: ` kind = "service-defaults" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } protocol = "http" external_sni = "abc-123" mesh_gateway { @@ -100,6 +116,10 @@ func TestDecodeConfigEntry(t *testing.T) { camel: ` Kind = "service-defaults" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Protocol = "http" ExternalSNI = "abc-123" MeshGateway { @@ -107,8 +127,12 @@ func TestDecodeConfigEntry(t *testing.T) { } `, expect: &ServiceConfigEntry{ - Kind: "service-defaults", - Name: "main", + Kind: "service-defaults", + Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Protocol: "http", ExternalSNI: "abc-123", MeshGateway: MeshGatewayConfig{ @@ -121,6 +145,10 @@ func TestDecodeConfigEntry(t *testing.T) { snake: ` kind = "service-router" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } routes = [ { match { @@ -200,6 +228,10 @@ func TestDecodeConfigEntry(t *testing.T) { camel: ` Kind = "service-router" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Routes = [ { Match { @@ -279,6 +311,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &ServiceRouterConfigEntry{ Kind: "service-router", Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Routes: []ServiceRoute{ { Match: &ServiceRouteMatch{ @@ -361,6 +397,10 @@ func TestDecodeConfigEntry(t *testing.T) { snake: ` kind = "service-splitter" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } splits = [ { weight = 99.1 @@ -376,6 +416,10 @@ func TestDecodeConfigEntry(t *testing.T) { camel: ` Kind = "service-splitter" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Splits = [ { Weight = 99.1 @@ -391,6 +435,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &ServiceSplitterConfigEntry{ Kind: ServiceSplitter, Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Splits: []ServiceSplit{ { Weight: 99.1, @@ -409,6 +457,10 @@ func TestDecodeConfigEntry(t *testing.T) { snake: ` kind = "service-resolver" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } default_subset = "v1" connect_timeout = "15s" subsets = { @@ -434,6 +486,10 @@ func TestDecodeConfigEntry(t *testing.T) { camel: ` Kind = "service-resolver" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } DefaultSubset = "v1" ConnectTimeout = "15s" Subsets = { @@ -457,8 +513,12 @@ func TestDecodeConfigEntry(t *testing.T) { } }`, expect: &ServiceResolverConfigEntry{ - Kind: "service-resolver", - Name: "main", + Kind: "service-resolver", + Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, DefaultSubset: "v1", ConnectTimeout: 15 * time.Second, Subsets: map[string]ServiceResolverSubset{ @@ -536,6 +596,10 @@ func TestDecodeConfigEntry(t *testing.T) { snake: ` kind = "ingress-gateway" name = "ingress-web" + meta { + "foo" = "bar" + "gir" = "zim" + } tls { enabled = true @@ -578,6 +642,10 @@ func TestDecodeConfigEntry(t *testing.T) { camel: ` Kind = "ingress-gateway" Name = "ingress-web" + Meta { + "foo" = "bar" + "gir" = "zim" + } TLS { Enabled = true } @@ -618,6 +686,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &IngressGatewayConfigEntry{ Kind: "ingress-gateway", Name: "ingress-web", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, TLS: GatewayTLSConfig{ Enabled: true, }, @@ -661,6 +733,10 @@ func TestDecodeConfigEntry(t *testing.T) { snake: ` kind = "terminating-gateway" name = "terminating-gw-west" + meta { + "foo" = "bar" + "gir" = "zim" + } services = [ { name = "payments", @@ -681,6 +757,10 @@ func TestDecodeConfigEntry(t *testing.T) { camel: ` Kind = "terminating-gateway" Name = "terminating-gw-west" + Meta { + "foo" = "bar" + "gir" = "zim" + } Services = [ { Name = "payments", @@ -701,6 +781,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &TerminatingGatewayConfigEntry{ Kind: "terminating-gateway", Name: "terminating-gw-west", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Services: []LinkedService{ { Name: "payments", diff --git a/api/config_entry.go b/api/config_entry.go index dc31d6110f..a234f6eb25 100644 --- a/api/config_entry.go +++ b/api/config_entry.go @@ -95,6 +95,7 @@ type ServiceConfigEntry struct { MeshGateway MeshGatewayConfig `json:",omitempty" alias:"mesh_gateway"` Expose ExposeConfig `json:",omitempty"` ExternalSNI string `json:",omitempty" alias:"external_sni"` + Meta map[string]string `json:",omitempty"` CreateIndex uint64 ModifyIndex uint64 } @@ -122,6 +123,7 @@ type ProxyConfigEntry struct { Config map[string]interface{} `json:",omitempty"` MeshGateway MeshGatewayConfig `json:",omitempty" alias:"mesh_gateway"` Expose ExposeConfig `json:",omitempty"` + Meta map[string]string `json:",omitempty"` CreateIndex uint64 ModifyIndex uint64 } diff --git a/api/config_entry_discoverychain.go b/api/config_entry_discoverychain.go index f3994f0dd9..209106339f 100644 --- a/api/config_entry_discoverychain.go +++ b/api/config_entry_discoverychain.go @@ -12,6 +12,7 @@ type ServiceRouterConfigEntry struct { Routes []ServiceRoute `json:",omitempty"` + Meta map[string]string `json:",omitempty"` CreateIndex uint64 ModifyIndex uint64 } @@ -111,6 +112,7 @@ type ServiceSplitterConfigEntry struct { Splits []ServiceSplit `json:",omitempty"` + Meta map[string]string `json:",omitempty"` CreateIndex uint64 ModifyIndex uint64 } @@ -138,6 +140,7 @@ type ServiceResolverConfigEntry struct { Failover map[string]ServiceResolverFailover `json:",omitempty"` ConnectTimeout time.Duration `json:",omitempty" alias:"connect_timeout"` + Meta map[string]string `json:",omitempty"` CreateIndex uint64 ModifyIndex uint64 } diff --git a/api/config_entry_gateways.go b/api/config_entry_gateways.go index 9d3ee0a6a9..e259427d86 100644 --- a/api/config_entry_gateways.go +++ b/api/config_entry_gateways.go @@ -21,6 +21,8 @@ type IngressGatewayConfigEntry struct { // what services to associated to those ports. Listeners []IngressListener + Meta map[string]string `json:",omitempty"` + // CreateIndex is the Raft index this entry was created at. This is a // read-only field. CreateIndex uint64 @@ -115,6 +117,8 @@ type TerminatingGatewayConfigEntry struct { // Services is a list of service names represented by the terminating gateway. Services []LinkedService `json:",omitempty"` + Meta map[string]string `json:",omitempty"` + // CreateIndex is the Raft index this entry was created at. This is a // read-only field. CreateIndex uint64 diff --git a/api/config_entry_test.go b/api/config_entry_test.go index aa384bb9f1..fac1665d36 100644 --- a/api/config_entry_test.go +++ b/api/config_entry_test.go @@ -271,6 +271,10 @@ func TestDecodeConfigEntry(t *testing.T) { { "Kind": "proxy-defaults", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Config": { "foo": 19, "bar": "abc", @@ -286,6 +290,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &ProxyConfigEntry{ Kind: "proxy-defaults", Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Config: map[string]interface{}{ "foo": float64(19), "bar": "abc", @@ -304,6 +312,10 @@ func TestDecodeConfigEntry(t *testing.T) { { "Kind": "service-defaults", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Protocol": "http", "ExternalSNI": "abc-123", "MeshGateway": { @@ -312,8 +324,12 @@ func TestDecodeConfigEntry(t *testing.T) { } `, expect: &ServiceConfigEntry{ - Kind: "service-defaults", - Name: "main", + Kind: "service-defaults", + Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Protocol: "http", ExternalSNI: "abc-123", MeshGateway: MeshGatewayConfig{ @@ -327,6 +343,10 @@ func TestDecodeConfigEntry(t *testing.T) { { "Kind": "service-router", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Routes": [ { "Match": { @@ -407,6 +427,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &ServiceRouterConfigEntry{ Kind: "service-router", Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Routes: []ServiceRoute{ { Match: &ServiceRouteMatch{ @@ -490,6 +514,10 @@ func TestDecodeConfigEntry(t *testing.T) { { "Kind": "service-splitter", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Splits": [ { "Weight": 99.1, @@ -506,6 +534,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &ServiceSplitterConfigEntry{ Kind: ServiceSplitter, Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Splits: []ServiceSplit{ { Weight: 99.1, @@ -525,6 +557,10 @@ func TestDecodeConfigEntry(t *testing.T) { { "Kind": "service-resolver", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "DefaultSubset": "v1", "ConnectTimeout": "15s", "Subsets": { @@ -549,8 +585,12 @@ func TestDecodeConfigEntry(t *testing.T) { } }`, expect: &ServiceResolverConfigEntry{ - Kind: "service-resolver", - Name: "main", + Kind: "service-resolver", + Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, DefaultSubset: "v1", ConnectTimeout: 15 * time.Second, Subsets: map[string]ServiceResolverSubset{ @@ -619,6 +659,10 @@ func TestDecodeConfigEntry(t *testing.T) { { "Kind": "ingress-gateway", "Name": "ingress-web", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Tls": { "Enabled": true }, @@ -651,6 +695,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &IngressGatewayConfigEntry{ Kind: "ingress-gateway", Name: "ingress-web", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, TLS: GatewayTLSConfig{ Enabled: true, }, @@ -686,9 +734,13 @@ func TestDecodeConfigEntry(t *testing.T) { { "Kind": "terminating-gateway", "Name": "terminating-west", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Services": [ { - "Namespace": "foo", + "Namespace": "foo", "Name": "web", "CAFile": "/etc/ca.pem", "CertFile": "/etc/cert.pem", @@ -707,6 +759,10 @@ func TestDecodeConfigEntry(t *testing.T) { expect: &TerminatingGatewayConfigEntry{ Kind: "terminating-gateway", Name: "terminating-west", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Services: []LinkedService{ { Namespace: "foo", diff --git a/command/config/write/config_write_test.go b/command/config/write/config_write_test.go index a5b9120b29..f11e907fde 100644 --- a/command/config/write/config_write_test.go +++ b/command/config/write/config_write_test.go @@ -161,6 +161,10 @@ func TestParseConfigEntry(t *testing.T) { snake: ` kind = "proxy-defaults" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } config { "foo" = 19 "bar" = "abc" @@ -175,6 +179,10 @@ func TestParseConfigEntry(t *testing.T) { camel: ` Kind = "proxy-defaults" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Config { "foo" = 19 "bar" = "abc" @@ -190,6 +198,10 @@ func TestParseConfigEntry(t *testing.T) { { "kind": "proxy-defaults", "name": "main", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "config": { "foo": 19, "bar": "abc", @@ -206,6 +218,10 @@ func TestParseConfigEntry(t *testing.T) { { "Kind": "proxy-defaults", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Config": { "foo": 19, "bar": "abc", @@ -221,6 +237,10 @@ func TestParseConfigEntry(t *testing.T) { expect: &api.ProxyConfigEntry{ Kind: "proxy-defaults", Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Config: map[string]interface{}{ "foo": 19, "bar": "abc", @@ -235,6 +255,10 @@ func TestParseConfigEntry(t *testing.T) { expectJSON: &api.ProxyConfigEntry{ Kind: "proxy-defaults", Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Config: map[string]interface{}{ "foo": float64(19), // json decoding gives float64 instead of int here "bar": "abc", @@ -253,6 +277,10 @@ func TestParseConfigEntry(t *testing.T) { kind = "terminating-gateway" name = "terminating-gw-west" namespace = "default" + meta { + "foo" = "bar" + "gir" = "zim" + } services = [ { name = "billing" @@ -272,6 +300,10 @@ func TestParseConfigEntry(t *testing.T) { Kind = "terminating-gateway" Name = "terminating-gw-west" Namespace = "default" + Meta { + "foo" = "bar" + "gir" = "zim" + } Services = [ { Name = "billing" @@ -292,6 +324,10 @@ func TestParseConfigEntry(t *testing.T) { "kind": "terminating-gateway", "name": "terminating-gw-west", "namespace": "default", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "services": [ { "name": "billing", @@ -313,6 +349,10 @@ func TestParseConfigEntry(t *testing.T) { "Kind": "terminating-gateway", "Name": "terminating-gw-west", "Namespace": "default", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Services": [ { "Name": "billing", @@ -333,6 +373,10 @@ func TestParseConfigEntry(t *testing.T) { Kind: "terminating-gateway", Name: "terminating-gw-west", Namespace: "default", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Services: []api.LinkedService{ { Name: "billing", @@ -352,6 +396,10 @@ func TestParseConfigEntry(t *testing.T) { Kind: "terminating-gateway", Name: "terminating-gw-west", Namespace: "default", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Services: []api.LinkedService{ { Name: "billing", @@ -373,6 +421,10 @@ func TestParseConfigEntry(t *testing.T) { snake: ` kind = "service-defaults" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } protocol = "http" external_sni = "abc-123" mesh_gateway { @@ -382,6 +434,10 @@ func TestParseConfigEntry(t *testing.T) { camel: ` Kind = "service-defaults" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Protocol = "http" ExternalSNI = "abc-123" MeshGateway { @@ -392,6 +448,10 @@ func TestParseConfigEntry(t *testing.T) { { "kind": "service-defaults", "name": "main", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "protocol": "http", "external_sni": "abc-123", "mesh_gateway": { @@ -403,6 +463,10 @@ func TestParseConfigEntry(t *testing.T) { { "Kind": "service-defaults", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Protocol": "http", "ExternalSNI": "abc-123", "MeshGateway": { @@ -411,8 +475,12 @@ func TestParseConfigEntry(t *testing.T) { } `, expect: &api.ServiceConfigEntry{ - Kind: "service-defaults", - Name: "main", + Kind: "service-defaults", + Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Protocol: "http", ExternalSNI: "abc-123", MeshGateway: api.MeshGatewayConfig{ @@ -425,6 +493,10 @@ func TestParseConfigEntry(t *testing.T) { snake: ` kind = "service-router" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } routes = [ { match { @@ -504,6 +576,10 @@ func TestParseConfigEntry(t *testing.T) { camel: ` Kind = "service-router" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Routes = [ { Match { @@ -584,6 +660,10 @@ func TestParseConfigEntry(t *testing.T) { { "kind": "service-router", "name": "main", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "routes": [ { "match": { @@ -671,6 +751,10 @@ func TestParseConfigEntry(t *testing.T) { { "Kind": "service-router", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Routes": [ { "Match": { @@ -757,6 +841,10 @@ func TestParseConfigEntry(t *testing.T) { expect: &api.ServiceRouterConfigEntry{ Kind: "service-router", Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Routes: []api.ServiceRoute{ { Match: &api.ServiceRouteMatch{ @@ -839,6 +927,10 @@ func TestParseConfigEntry(t *testing.T) { snake: ` kind = "service-splitter" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } splits = [ { weight = 97.1 @@ -858,6 +950,10 @@ func TestParseConfigEntry(t *testing.T) { camel: ` Kind = "service-splitter" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } Splits = [ { Weight = 97.1 @@ -878,6 +974,10 @@ func TestParseConfigEntry(t *testing.T) { { "kind": "service-splitter", "name": "main", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "splits": [ { "weight": 97.1, @@ -899,6 +999,10 @@ func TestParseConfigEntry(t *testing.T) { { "Kind": "service-splitter", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Splits": [ { "Weight": 97.1, @@ -919,6 +1023,10 @@ func TestParseConfigEntry(t *testing.T) { expect: &api.ServiceSplitterConfigEntry{ Kind: api.ServiceSplitter, Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, Splits: []api.ServiceSplit{ { Weight: 97.1, @@ -941,6 +1049,10 @@ func TestParseConfigEntry(t *testing.T) { snake: ` kind = "service-resolver" name = "main" + meta { + "foo" = "bar" + "gir" = "zim" + } default_subset = "v1" connect_timeout = "15s" subsets = { @@ -966,6 +1078,10 @@ func TestParseConfigEntry(t *testing.T) { camel: ` Kind = "service-resolver" Name = "main" + Meta { + "foo" = "bar" + "gir" = "zim" + } DefaultSubset = "v1" ConnectTimeout = "15s" Subsets = { @@ -992,6 +1108,10 @@ func TestParseConfigEntry(t *testing.T) { { "kind": "service-resolver", "name": "main", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "default_subset": "v1", "connect_timeout": "15s", "subsets": { @@ -1025,6 +1145,10 @@ func TestParseConfigEntry(t *testing.T) { { "Kind": "service-resolver", "Name": "main", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "DefaultSubset": "v1", "ConnectTimeout": "15s", "Subsets": { @@ -1055,8 +1179,12 @@ func TestParseConfigEntry(t *testing.T) { } `, expect: &api.ServiceResolverConfigEntry{ - Kind: "service-resolver", - Name: "main", + Kind: "service-resolver", + Name: "main", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, DefaultSubset: "v1", ConnectTimeout: 15 * time.Second, Subsets: map[string]api.ServiceResolverSubset{ @@ -1390,6 +1518,10 @@ func TestParseConfigEntry(t *testing.T) { snake: ` kind = "ingress-gateway" name = "ingress-web" + meta { + "foo" = "bar" + "gir" = "zim" + } tls { enabled = true } @@ -1413,6 +1545,10 @@ func TestParseConfigEntry(t *testing.T) { camel: ` Kind = "ingress-gateway" Name = "ingress-web" + Meta { + "foo" = "bar" + "gir" = "zim" + } Tls { Enabled = true } @@ -1437,6 +1573,10 @@ func TestParseConfigEntry(t *testing.T) { { "kind": "ingress-gateway", "name": "ingress-web", + "meta" : { + "foo": "bar", + "gir": "zim" + }, "tls": { "enabled": true }, @@ -1462,6 +1602,10 @@ func TestParseConfigEntry(t *testing.T) { { "Kind": "ingress-gateway", "Name": "ingress-web", + "Meta" : { + "foo": "bar", + "gir": "zim" + }, "Tls": { "Enabled": true }, @@ -1486,6 +1630,10 @@ func TestParseConfigEntry(t *testing.T) { expect: &api.IngressGatewayConfigEntry{ Kind: "ingress-gateway", Name: "ingress-web", + Meta: map[string]string{ + "foo": "bar", + "gir": "zim", + }, TLS: api.GatewayTLSConfig{ Enabled: true, }, diff --git a/website/pages/docs/agent/config-entries/ingress-gateway.mdx b/website/pages/docs/agent/config-entries/ingress-gateway.mdx index 01d1fbc39b..6db703367c 100644 --- a/website/pages/docs/agent/config-entries/ingress-gateway.mdx +++ b/website/pages/docs/agent/config-entries/ingress-gateway.mdx @@ -329,6 +329,8 @@ Also make two services in the frontend namespace available over a custom port wi the gateway is registered in. If omitted, the namespace will be inherited from [the request](/api/config#ns) or will default to the `default` namespace. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. + - `TLS` `(TLSConfig: )` - TLS configuration for this gateway. - `Enabled` `(bool: false)` - Set this configuration to enable TLS for diff --git a/website/pages/docs/agent/config-entries/proxy-defaults.mdx b/website/pages/docs/agent/config-entries/proxy-defaults.mdx index 2753ffdb10..e58550c32c 100644 --- a/website/pages/docs/agent/config-entries/proxy-defaults.mdx +++ b/website/pages/docs/agent/config-entries/proxy-defaults.mdx @@ -46,6 +46,8 @@ Config { - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. + - `Config` `(map[string]arbitrary)` - An arbitrary map of configuration values used by Connect proxies. The available configurations depend on the Connect proxy you use. Any values that your proxy allows can be configured globally here. To diff --git a/website/pages/docs/agent/config-entries/service-defaults.mdx b/website/pages/docs/agent/config-entries/service-defaults.mdx index feb4e3ca51..af5aa1ec64 100644 --- a/website/pages/docs/agent/config-entries/service-defaults.mdx +++ b/website/pages/docs/agent/config-entries/service-defaults.mdx @@ -31,6 +31,8 @@ Protocol = "http" - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. + - `Protocol` `(string: "tcp")` - Sets the protocol of the service. This is used by Connect proxies for things like observability features and to unlock usage of the [`service-splitter`](/docs/agent/config-entries/service-splitter) and diff --git a/website/pages/docs/agent/config-entries/service-resolver.mdx b/website/pages/docs/agent/config-entries/service-resolver.mdx index 7c418604a4..e09ad0f0e1 100644 --- a/website/pages/docs/agent/config-entries/service-resolver.mdx +++ b/website/pages/docs/agent/config-entries/service-resolver.mdx @@ -78,6 +78,10 @@ Name = "web" - `Name` `(string: )` - Set to the name of the service being configured. +- `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. + +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. + - `ConnectTimeout` `(duration: 0s)` - The timeout for establishing new network connections to this service. diff --git a/website/pages/docs/agent/config-entries/service-router.mdx b/website/pages/docs/agent/config-entries/service-router.mdx index f169686008..55b73a77ec 100644 --- a/website/pages/docs/agent/config-entries/service-router.mdx +++ b/website/pages/docs/agent/config-entries/service-router.mdx @@ -129,6 +129,10 @@ Routes = [ - `Name` `(string: )` - Set to the name of the service being configured. +- `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. + +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. + - `Routes` `(array)` - The list of routes to consider when processing L7 requests. The first route to match in the list is terminal and stops further evaluation. Traffic that fails to match any of the provided diff --git a/website/pages/docs/agent/config-entries/service-splitter.mdx b/website/pages/docs/agent/config-entries/service-splitter.mdx index 792a8241be..3ca56ff4e2 100644 --- a/website/pages/docs/agent/config-entries/service-splitter.mdx +++ b/website/pages/docs/agent/config-entries/service-splitter.mdx @@ -81,6 +81,10 @@ Splits = [ - `Name` `(string: )` - Set to the name of the service being configured. +- `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. + +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. + - `Splits` `(array)` - Defines how much traffic to send to which set of service instances during a traffic split. The sum of weights across all splits must add up to 100. diff --git a/website/pages/docs/agent/config-entries/terminating-gateway.mdx b/website/pages/docs/agent/config-entries/terminating-gateway.mdx index cb8e2c94cb..4752fbbf5e 100644 --- a/website/pages/docs/agent/config-entries/terminating-gateway.mdx +++ b/website/pages/docs/agent/config-entries/terminating-gateway.mdx @@ -407,6 +407,8 @@ and configure default certificates for mutual TLS. Also override the SNI and CA If omitted, the namespace will be inherited from [the request](/api/config#ns) or will default to the `default` namespace. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. + - `Services` `(array: )` - A list of services to link with the gateway. The gateway will proxy traffic to these services. These linked services must be registered with Consul for the gateway to discover their addresses. They must also From f81fe6a1a1c4aca860e413171ae501de2fed8b71 Mon Sep 17 00:00:00 2001 From: freddygv Date: Wed, 2 Sep 2020 15:13:50 -0600 Subject: [PATCH 049/122] Remove LB infix and move injection to xds --- agent/consul/discoverychain/compile.go | 2 +- agent/consul/discoverychain/compile_test.go | 20 +- agent/proxycfg/testing.go | 2 +- agent/structs/config_entry_discoverychain.go | 117 +------ .../config_entry_discoverychain_test.go | 308 ++---------------- agent/xds/clusters.go | 59 +++- agent/xds/clusters_test.go | 90 ++++- agent/xds/routes.go | 79 ++++- agent/xds/routes_test.go | 185 ++++++++++- api/config_entry_discoverychain.go | 4 +- api/config_entry_discoverychain_test.go | 4 +- command/config/write/config_write_test.go | 12 +- 12 files changed, 439 insertions(+), 443 deletions(-) diff --git a/agent/consul/discoverychain/compile.go b/agent/consul/discoverychain/compile.go index 31c3baa967..2acbde76fe 100644 --- a/agent/consul/discoverychain/compile.go +++ b/agent/consul/discoverychain/compile.go @@ -746,7 +746,7 @@ func (c *compiler) getSplitterNode(sid structs.ServiceID) (*structs.DiscoveryGra // We cannot apply multiple hash policies to a splitter node's route action. // Therefore, we attach the first hash-based load balancer config we encounter. if !hasLB { - if lb := node.LoadBalancer; lb != nil && lb.EnvoyLBConfig != nil && lb.EnvoyLBConfig.IsHashBased() { + if lb := node.LoadBalancer; lb != nil && lb.EnvoyConfig != nil && lb.EnvoyConfig.IsHashBased() { splitNode.LoadBalancer = node.LoadBalancer hasLB = true } diff --git a/agent/consul/discoverychain/compile_test.go b/agent/consul/discoverychain/compile_test.go index 4204362723..7e4c78dc85 100644 --- a/agent/consul/discoverychain/compile_test.go +++ b/agent/consul/discoverychain/compile_test.go @@ -1762,7 +1762,7 @@ func testcase_AllBellsAndWhistles() compileTestCase { "qa": {Filter: "ServiceMeta.env == qa"}, }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MaximumRingSize: 100, @@ -1836,7 +1836,7 @@ func testcase_AllBellsAndWhistles() compileTestCase { }, }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MaximumRingSize: 100, @@ -1857,7 +1857,7 @@ func testcase_AllBellsAndWhistles() compileTestCase { Target: "prod.redirected.default.dc1", }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MaximumRingSize: 100, @@ -2282,7 +2282,7 @@ func testcase_LBConfig() compileTestCase { Kind: "service-resolver", Name: "foo", LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "least_request", LeastRequestConfig: &structs.LeastRequestConfig{ ChoiceCount: 3, @@ -2294,7 +2294,7 @@ func testcase_LBConfig() compileTestCase { Kind: "service-resolver", Name: "bar", LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MaximumRingSize: 101, @@ -2311,7 +2311,7 @@ func testcase_LBConfig() compileTestCase { Kind: "service-resolver", Name: "baz", LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "maglev", HashPolicies: []structs.HashPolicy{ { @@ -2353,7 +2353,7 @@ func testcase_LBConfig() compileTestCase { // The LB config from bar is attached because splitters only care about hash-based policies, // and it's the config from bar not baz because we pick the first one we encounter in the Splits. LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MaximumRingSize: 101, @@ -2376,7 +2376,7 @@ func testcase_LBConfig() compileTestCase { Target: "foo.default.dc1", }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "least_request", LeastRequestConfig: &structs.LeastRequestConfig{ ChoiceCount: 3, @@ -2393,7 +2393,7 @@ func testcase_LBConfig() compileTestCase { Target: "bar.default.dc1", }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MaximumRingSize: 101, @@ -2415,7 +2415,7 @@ func testcase_LBConfig() compileTestCase { Target: "baz.default.dc1", }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "maglev", HashPolicies: []structs.HashPolicy{ { diff --git a/agent/proxycfg/testing.go b/agent/proxycfg/testing.go index 0ed1acd12b..2c6a0cd039 100644 --- a/agent/proxycfg/testing.go +++ b/agent/proxycfg/testing.go @@ -1275,7 +1275,7 @@ func setupTestVariationConfigEntriesAndSnapshot( Kind: structs.ServiceResolver, Name: "db", LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MinimumRingSize: 20, diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index e033f674fb..9fc2550c01 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -3,7 +3,6 @@ package structs import ( "encoding/json" "fmt" - "github.com/golang/protobuf/ptypes" "math" "regexp" "sort" @@ -11,9 +10,6 @@ import ( "strings" "time" - envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" - envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" - "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/acl" "github.com/hashicorp/consul/agent/cache" "github.com/hashicorp/consul/lib" @@ -829,8 +825,8 @@ func (e *ServiceResolverConfigEntry) Validate() error { return fmt.Errorf("Bad ConnectTimeout '%s', must be >= 0", e.ConnectTimeout) } - if e.LoadBalancer != nil && e.LoadBalancer.EnvoyLBConfig != nil { - ec := e.LoadBalancer.EnvoyLBConfig + if e.LoadBalancer != nil && e.LoadBalancer.EnvoyConfig != nil { + ec := e.LoadBalancer.EnvoyConfig validPolicies := map[string]bool{ "": true, @@ -1025,8 +1021,8 @@ type ServiceResolverFailover struct { // LoadBalancer determines the load balancing policy and configuration for services // issuing requests to this upstream service. type LoadBalancer struct { - // EnvoyLBConfig contains Envoy-specific load balancing configuration for this upstream - EnvoyLBConfig *EnvoyLBConfig `json:",omitempty" alias:"envoy_lb_config"` + // EnvoyConfig contains Envoy-specific load balancing configuration for this upstream + EnvoyConfig *EnvoyLBConfig `json:",omitempty" alias:"envoy_config"` // OpaqueConfig contains load balancing configuration opaque to Consul for 3rd party proxies OpaqueConfig string `json:",omitempty" alias:"opaque_config"` @@ -1113,111 +1109,6 @@ func (ec *EnvoyLBConfig) IsHashBased() bool { } } -func (ec *EnvoyLBConfig) InjectToCluster(c *envoy.Cluster) error { - if ec == nil { - return nil - } - - switch ec.Policy { - case "": - return nil - case LBPolicyLeastRequest: - c.LbPolicy = envoy.Cluster_LEAST_REQUEST - - if ec.LeastRequestConfig != nil { - c.LbConfig = &envoy.Cluster_LeastRequestLbConfig_{ - LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ - ChoiceCount: &wrappers.UInt32Value{Value: ec.LeastRequestConfig.ChoiceCount}, - }, - } - } - case LBPolicyRoundRobin: - c.LbPolicy = envoy.Cluster_ROUND_ROBIN - - case LBPolicyRandom: - c.LbPolicy = envoy.Cluster_RANDOM - - case LBPolicyRingHash: - c.LbPolicy = envoy.Cluster_RING_HASH - - if ec.RingHashConfig != nil { - c.LbConfig = &envoy.Cluster_RingHashLbConfig_{ - RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ - MinimumRingSize: &wrappers.UInt64Value{Value: ec.RingHashConfig.MinimumRingSize}, - MaximumRingSize: &wrappers.UInt64Value{Value: ec.RingHashConfig.MaximumRingSize}, - }, - } - } - case LBPolicyMaglev: - c.LbPolicy = envoy.Cluster_MAGLEV - - default: - return fmt.Errorf("unsupported load balancer policy %q for cluster %q", ec.Policy, c.Name) - } - return nil -} - -func (ec *EnvoyLBConfig) InjectToRouteAction(action *envoyroute.RouteAction) error { - if ec == nil || !ec.IsHashBased() { - return nil - } - - result := make([]*envoyroute.RouteAction_HashPolicy, 0, len(ec.HashPolicies)) - for _, policy := range ec.HashPolicies { - if policy.SourceIP { - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ - ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ - SourceIp: true, - }, - }, - Terminal: policy.Terminal, - }) - - continue - } - - switch policy.Field { - case HashPolicyHeader: - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ - Header: &envoyroute.RouteAction_HashPolicy_Header{ - HeaderName: policy.FieldValue, - }, - }, - Terminal: policy.Terminal, - }) - case HashPolicyCookie: - cookie := envoyroute.RouteAction_HashPolicy_Cookie{ - Name: policy.FieldValue, - } - if policy.CookieConfig != nil { - cookie.Ttl = ptypes.DurationProto(policy.CookieConfig.TTL) - cookie.Path = policy.CookieConfig.Path - } - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &cookie, - }, - Terminal: policy.Terminal, - }) - case HashPolicyQueryParam: - result = append(result, &envoyroute.RouteAction_HashPolicy{ - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_QueryParameter_{ - QueryParameter: &envoyroute.RouteAction_HashPolicy_QueryParameter{ - Name: policy.FieldValue, - }, - }, - Terminal: policy.Terminal, - }) - default: - return fmt.Errorf("unsupported load balancer hash policy field: %v", policy.Field) - } - } - action.HashPolicy = result - return nil -} - type discoveryChainConfigEntry interface { ConfigEntry // ListRelatedServices returns a list of other names of services referenced diff --git a/agent/structs/config_entry_discoverychain_test.go b/agent/structs/config_entry_discoverychain_test.go index bd323855c0..2f5c431ca4 100644 --- a/agent/structs/config_entry_discoverychain_test.go +++ b/agent/structs/config_entry_discoverychain_test.go @@ -3,14 +3,10 @@ package structs import ( "bytes" "fmt" - "github.com/golang/protobuf/ptypes" "strings" "testing" "time" - envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" - envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" - "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/acl" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" @@ -559,7 +555,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{Policy: ""}, + EnvoyConfig: &EnvoyLBConfig{Policy: ""}, }, }, }, @@ -569,7 +565,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{Policy: LBPolicyRandom}, + EnvoyConfig: &EnvoyLBConfig{Policy: LBPolicyRandom}, }, }, }, @@ -579,7 +575,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{Policy: "fake-policy"}, + EnvoyConfig: &EnvoyLBConfig{Policy: "fake-policy"}, }, }, validateErr: `"fake-policy" is not supported`, @@ -590,7 +586,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyRingHash, LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 10}, }, @@ -604,7 +600,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyLeastRequest, RingHashConfig: &RingHashConfig{MinimumRingSize: 1024}, }, @@ -618,7 +614,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyRingHash, RingHashConfig: &RingHashConfig{MinimumRingSize: 1024}, }, @@ -631,7 +627,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyLeastRequest, LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 2}, }, @@ -644,11 +640,11 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{Policy: ""}, + EnvoyConfig: &EnvoyLBConfig{Policy: ""}, }, }, check: func(t *testing.T, entry *ServiceResolverConfigEntry) { - require.Equal(t, "", entry.LoadBalancer.EnvoyLBConfig.Policy) + require.Equal(t, "", entry.LoadBalancer.EnvoyConfig.Policy) }, }, { @@ -657,7 +653,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: "", HashPolicies: []HashPolicy{ { @@ -675,7 +671,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -698,7 +694,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -720,7 +716,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -738,7 +734,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -756,7 +752,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -775,7 +771,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -794,7 +790,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -812,7 +808,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyMaglev, HashPolicies: []HashPolicy{ { @@ -830,7 +826,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyRingHash, RingHashConfig: &RingHashConfig{MaximumRingSize: 10, MinimumRingSize: 2}, HashPolicies: []HashPolicy{ @@ -854,7 +850,7 @@ func TestServiceResolverConfigEntry_LoadBalancer(t *testing.T) { Kind: ServiceResolver, Name: "test", LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: LBPolicyLeastRequest, LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 20}, }, @@ -1525,267 +1521,3 @@ func TestIsProtocolHTTPLike(t *testing.T) { assert.True(t, IsProtocolHTTPLike("http2")) assert.True(t, IsProtocolHTTPLike("grpc")) } - -func TestEnvoyLBConfig_InjectToRouteAction(t *testing.T) { - var tests = []struct { - name string - lb *EnvoyLBConfig - expected envoyroute.RouteAction - }{ - { - name: "empty", - lb: &EnvoyLBConfig{ - Policy: "", - }, - // we only modify route actions for hash-based LB policies - expected: envoyroute.RouteAction{}, - }, - { - name: "least request", - lb: &EnvoyLBConfig{ - Policy: LBPolicyLeastRequest, - LeastRequestConfig: &LeastRequestConfig{ - ChoiceCount: 3, - }, - }, - // we only modify route actions for hash-based LB policies - expected: envoyroute.RouteAction{}, - }, - { - name: "headers", - lb: &EnvoyLBConfig{ - Policy: "ring_hash", - RingHashConfig: &RingHashConfig{ - MinimumRingSize: 3, - MaximumRingSize: 7, - }, - HashPolicies: []HashPolicy{ - { - Field: HashPolicyHeader, - FieldValue: "x-route-key", - Terminal: true, - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ - Header: &envoyroute.RouteAction_HashPolicy_Header{ - HeaderName: "x-route-key", - }, - }, - Terminal: true, - }, - }, - }, - }, - { - name: "cookies", - lb: &EnvoyLBConfig{ - Policy: LBPolicyMaglev, - HashPolicies: []HashPolicy{ - { - Field: HashPolicyCookie, - FieldValue: "red-velvet", - Terminal: true, - }, - { - Field: HashPolicyCookie, - FieldValue: "oatmeal", - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ - Name: "red-velvet", - }, - }, - Terminal: true, - }, - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ - Name: "oatmeal", - }, - }, - }, - }, - }, - }, - { - name: "source addr", - lb: &EnvoyLBConfig{ - Policy: LBPolicyMaglev, - HashPolicies: []HashPolicy{ - { - SourceIP: true, - Terminal: true, - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ - ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ - SourceIp: true, - }, - }, - Terminal: true, - }, - }, - }, - }, - { - name: "kitchen sink", - lb: &EnvoyLBConfig{ - Policy: LBPolicyMaglev, - HashPolicies: []HashPolicy{ - { - SourceIP: true, - Terminal: true, - }, - { - Field: HashPolicyCookie, - FieldValue: "oatmeal", - CookieConfig: &CookieConfig{ - TTL: 10 * time.Second, - Path: "/oven", - }, - }, - { - Field: HashPolicyHeader, - FieldValue: "special-header", - Terminal: true, - }, - }, - }, - expected: envoyroute.RouteAction{ - HashPolicy: []*envoyroute.RouteAction_HashPolicy{ - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ - ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ - SourceIp: true, - }, - }, - Terminal: true, - }, - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ - Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ - Name: "oatmeal", - Ttl: ptypes.DurationProto(10 * time.Second), - Path: "/oven", - }, - }, - }, - { - PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ - Header: &envoyroute.RouteAction_HashPolicy_Header{ - HeaderName: "special-header", - }, - }, - Terminal: true, - }, - }, - }, - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - var ra envoyroute.RouteAction - err := tc.lb.InjectToRouteAction(&ra) - require.NoError(t, err) - - require.Equal(t, &tc.expected, &ra) - }) - } -} - -func TestEnvoyLBConfig_InjectToCluster(t *testing.T) { - var tests = []struct { - name string - lb *EnvoyLBConfig - expected envoy.Cluster - }{ - { - name: "skip empty", - lb: &EnvoyLBConfig{ - Policy: "", - }, - expected: envoy.Cluster{}, - }, - { - name: "round robin", - lb: &EnvoyLBConfig{ - Policy: LBPolicyRoundRobin, - }, - expected: envoy.Cluster{LbPolicy: envoy.Cluster_ROUND_ROBIN}, - }, - { - name: "random", - lb: &EnvoyLBConfig{ - Policy: LBPolicyRandom, - }, - expected: envoy.Cluster{LbPolicy: envoy.Cluster_RANDOM}, - }, - { - name: "maglev", - lb: &EnvoyLBConfig{ - Policy: LBPolicyMaglev, - }, - expected: envoy.Cluster{LbPolicy: envoy.Cluster_MAGLEV}, - }, - { - name: "ring_hash", - lb: &EnvoyLBConfig{ - Policy: LBPolicyRingHash, - RingHashConfig: &RingHashConfig{ - MinimumRingSize: 3, - MaximumRingSize: 7, - }, - }, - expected: envoy.Cluster{ - LbPolicy: envoy.Cluster_RING_HASH, - LbConfig: &envoy.Cluster_RingHashLbConfig_{ - RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ - MinimumRingSize: &wrappers.UInt64Value{Value: 3}, - MaximumRingSize: &wrappers.UInt64Value{Value: 7}, - }, - }, - }, - }, - { - name: "least_request", - lb: &EnvoyLBConfig{ - Policy: "least_request", - LeastRequestConfig: &LeastRequestConfig{ - ChoiceCount: 3, - }, - }, - expected: envoy.Cluster{ - LbPolicy: envoy.Cluster_LEAST_REQUEST, - LbConfig: &envoy.Cluster_LeastRequestLbConfig_{ - LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ - ChoiceCount: &wrappers.UInt32Value{Value: 3}, - }, - }, - }, - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - var c envoy.Cluster - err := tc.lb.InjectToCluster(&c) - require.NoError(t, err) - - require.Equal(t, tc.expected, c) - }) - } -} diff --git a/agent/xds/clusters.go b/agent/xds/clusters.go index b872432128..4c061a86fa 100644 --- a/agent/xds/clusters.go +++ b/agent/xds/clusters.go @@ -16,6 +16,7 @@ import ( "github.com/golang/protobuf/proto" "github.com/golang/protobuf/ptypes" "github.com/golang/protobuf/ptypes/any" + "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" @@ -208,7 +209,7 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ var loadBalancer *structs.EnvoyLBConfig if hasResolver && resolver.LoadBalancer != nil { - loadBalancer = resolver.LoadBalancer.EnvoyLBConfig + loadBalancer = resolver.LoadBalancer.EnvoyConfig } else { // Use a zero value resolver with no timeout and no subsets @@ -232,14 +233,14 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ case structs.ServiceKindTerminatingGateway: injectTerminatingGatewayTLSContext(cfgSnap, cluster, svc) - if err := loadBalancer.InjectToCluster(cluster); err != nil { + if err := injectLBToCluster(loadBalancer, cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } case structs.ServiceKindMeshGateway: // We can't apply hash based LB config to mesh gateways because they rely on inspecting HTTP attributes // and mesh gateways do not decrypt traffic if !loadBalancer.IsHashBased() { - if err := loadBalancer.InjectToCluster(cluster); err != nil { + if err := injectLBToCluster(loadBalancer, cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } } @@ -265,7 +266,7 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ case structs.ServiceKindTerminatingGateway: injectTerminatingGatewayTLSContext(cfgSnap, cluster, svc) - if err := loadBalancer.InjectToCluster(cluster); err != nil { + if err := injectLBToCluster(loadBalancer, cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } @@ -273,7 +274,7 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ // We can't apply hash based LB config to mesh gateways because they rely on inspecting HTTP attributes // and mesh gateways do not decrypt traffic if !loadBalancer.IsHashBased() { - if err := loadBalancer.InjectToCluster(cluster); err != nil { + if err := injectLBToCluster(loadBalancer, cluster); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } } @@ -515,9 +516,9 @@ func (s *Server) makeUpstreamClustersForDiscoveryChain( var lb *structs.EnvoyLBConfig if node.LoadBalancer != nil { - lb = node.LoadBalancer.EnvoyLBConfig + lb = node.LoadBalancer.EnvoyConfig } - if err := lb.InjectToCluster(c); err != nil { + if err := injectLBToCluster(lb, c); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to cluster %q: %v", clusterName, err) } @@ -781,3 +782,47 @@ func makeLbEndpoint(addr string, port int, health envoycore.HealthStatus, weight LoadBalancingWeight: makeUint32Value(weight), } } + +func injectLBToCluster(ec *structs.EnvoyLBConfig, c *envoy.Cluster) error { + if ec == nil { + return nil + } + + switch ec.Policy { + case "": + return nil + case structs.LBPolicyLeastRequest: + c.LbPolicy = envoy.Cluster_LEAST_REQUEST + + if ec.LeastRequestConfig != nil { + c.LbConfig = &envoy.Cluster_LeastRequestLbConfig_{ + LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ + ChoiceCount: &wrappers.UInt32Value{Value: ec.LeastRequestConfig.ChoiceCount}, + }, + } + } + case structs.LBPolicyRoundRobin: + c.LbPolicy = envoy.Cluster_ROUND_ROBIN + + case structs.LBPolicyRandom: + c.LbPolicy = envoy.Cluster_RANDOM + + case structs.LBPolicyRingHash: + c.LbPolicy = envoy.Cluster_RING_HASH + + if ec.RingHashConfig != nil { + c.LbConfig = &envoy.Cluster_RingHashLbConfig_{ + RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ + MinimumRingSize: &wrappers.UInt64Value{Value: ec.RingHashConfig.MinimumRingSize}, + MaximumRingSize: &wrappers.UInt64Value{Value: ec.RingHashConfig.MaximumRingSize}, + }, + } + } + case structs.LBPolicyMaglev: + c.LbPolicy = envoy.Cluster_MAGLEV + + default: + return fmt.Errorf("unsupported load balancer policy %q for cluster %q", ec.Policy, c.Name) + } + return nil +} diff --git a/agent/xds/clusters_test.go b/agent/xds/clusters_test.go index 634cbe54c8..76a23472e4 100644 --- a/agent/xds/clusters_test.go +++ b/agent/xds/clusters_test.go @@ -9,6 +9,7 @@ import ( "time" envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" + "github.com/golang/protobuf/ptypes/wrappers" "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/xds/proxysupport" @@ -367,7 +368,7 @@ func TestClustersFromSnapshot(t *testing.T) { }, }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "least_request", LeastRequestConfig: &structs.LeastRequestConfig{ ChoiceCount: 5, @@ -396,7 +397,7 @@ func TestClustersFromSnapshot(t *testing.T) { }, }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MinimumRingSize: 20, @@ -609,7 +610,7 @@ func TestClustersFromSnapshot(t *testing.T) { }, }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MinimumRingSize: 20, @@ -839,3 +840,86 @@ func setupTLSRootsAndLeaf(t *testing.T, snap *proxycfg.ConfigSnapshot) { snap.Roots.Roots[0].RootCert = golden(t, "test-root-cert", "", "") } } + +func TestEnvoyLBConfig_InjectToCluster(t *testing.T) { + var tests = []struct { + name string + lb *structs.EnvoyLBConfig + expected envoy.Cluster + }{ + { + name: "skip empty", + lb: &structs.EnvoyLBConfig{ + Policy: "", + }, + expected: envoy.Cluster{}, + }, + { + name: "round robin", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyRoundRobin, + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_ROUND_ROBIN}, + }, + { + name: "random", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyRandom, + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_RANDOM}, + }, + { + name: "maglev", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyMaglev, + }, + expected: envoy.Cluster{LbPolicy: envoy.Cluster_MAGLEV}, + }, + { + name: "ring_hash", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyRingHash, + RingHashConfig: &structs.RingHashConfig{ + MinimumRingSize: 3, + MaximumRingSize: 7, + }, + }, + expected: envoy.Cluster{ + LbPolicy: envoy.Cluster_RING_HASH, + LbConfig: &envoy.Cluster_RingHashLbConfig_{ + RingHashLbConfig: &envoy.Cluster_RingHashLbConfig{ + MinimumRingSize: &wrappers.UInt64Value{Value: 3}, + MaximumRingSize: &wrappers.UInt64Value{Value: 7}, + }, + }, + }, + }, + { + name: "least_request", + lb: &structs.EnvoyLBConfig{ + Policy: "least_request", + LeastRequestConfig: &structs.LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + expected: envoy.Cluster{ + LbPolicy: envoy.Cluster_LEAST_REQUEST, + LbConfig: &envoy.Cluster_LeastRequestLbConfig_{ + LeastRequestLbConfig: &envoy.Cluster_LeastRequestLbConfig{ + ChoiceCount: &wrappers.UInt32Value{Value: 3}, + }, + }, + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + var c envoy.Cluster + err := injectLBToCluster(tc.lb, &c) + require.NoError(t, err) + + require.Equal(t, tc.expected, c) + }) + } +} diff --git a/agent/xds/routes.go b/agent/xds/routes.go index bf1f5cc3a6..c95e748551 100644 --- a/agent/xds/routes.go +++ b/agent/xds/routes.go @@ -62,7 +62,7 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co var lb *structs.EnvoyLBConfig if resolver.LoadBalancer != nil { - lb = resolver.LoadBalancer.EnvoyLBConfig + lb = resolver.LoadBalancer.EnvoyConfig } route, err := makeNamedDefaultRouteWithLB(clusterName, lb) if err != nil { @@ -87,7 +87,7 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co func makeNamedDefaultRouteWithLB(clusterName string, lb *structs.EnvoyLBConfig) (*envoy.RouteConfiguration, error) { action := makeRouteActionFromName(clusterName) - if err := lb.InjectToRouteAction(action.Route); err != nil { + if err := injectLBToRouteAction(lb, action.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -271,7 +271,7 @@ func makeUpstreamRouteForDiscoveryChain( nextNode := chain.Nodes[discoveryRoute.NextNode] if nextNode.LoadBalancer != nil { - lb = nextNode.LoadBalancer.EnvoyLBConfig + lb = nextNode.LoadBalancer.EnvoyConfig } switch nextNode.Type { @@ -281,14 +281,14 @@ func makeUpstreamRouteForDiscoveryChain( return nil, err } - if err := lb.InjectToRouteAction(routeAction.Route); err != nil { + if err := injectLBToRouteAction(lb, routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } case structs.DiscoveryGraphNodeTypeResolver: routeAction = makeRouteActionForChainCluster(nextNode.Resolver.Target, chain) - if err := lb.InjectToRouteAction(routeAction.Route); err != nil { + if err := injectLBToRouteAction(lb, routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -344,9 +344,9 @@ func makeUpstreamRouteForDiscoveryChain( } if startNode.LoadBalancer != nil { - lb = startNode.LoadBalancer.EnvoyLBConfig + lb = startNode.LoadBalancer.EnvoyConfig } - if err := lb.InjectToRouteAction(routeAction.Route); err != nil { + if err := injectLBToRouteAction(lb, routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -361,9 +361,9 @@ func makeUpstreamRouteForDiscoveryChain( routeAction := makeRouteActionForChainCluster(startNode.Resolver.Target, chain) if startNode.LoadBalancer != nil { - lb = startNode.LoadBalancer.EnvoyLBConfig + lb = startNode.LoadBalancer.EnvoyConfig } - if err := lb.InjectToRouteAction(routeAction.Route); err != nil { + if err := injectLBToRouteAction(lb, routeAction.Route); err != nil { return nil, fmt.Errorf("failed to apply load balancer configuration to route action: %v", err) } @@ -569,3 +569,64 @@ func makeRouteActionForSplitter(splits []*structs.DiscoverySplit, chain *structs }, }, nil } + +func injectLBToRouteAction(ec *structs.EnvoyLBConfig, action *envoyroute.RouteAction) error { + if ec == nil || !ec.IsHashBased() { + return nil + } + + result := make([]*envoyroute.RouteAction_HashPolicy, 0, len(ec.HashPolicies)) + for _, policy := range ec.HashPolicies { + if policy.SourceIP { + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: policy.Terminal, + }) + + continue + } + + switch policy.Field { + case structs.HashPolicyHeader: + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: policy.FieldValue, + }, + }, + Terminal: policy.Terminal, + }) + case structs.HashPolicyCookie: + cookie := envoyroute.RouteAction_HashPolicy_Cookie{ + Name: policy.FieldValue, + } + if policy.CookieConfig != nil { + cookie.Ttl = ptypes.DurationProto(policy.CookieConfig.TTL) + cookie.Path = policy.CookieConfig.Path + } + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &cookie, + }, + Terminal: policy.Terminal, + }) + case structs.HashPolicyQueryParam: + result = append(result, &envoyroute.RouteAction_HashPolicy{ + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_QueryParameter_{ + QueryParameter: &envoyroute.RouteAction_HashPolicy_QueryParameter{ + Name: policy.FieldValue, + }, + }, + Terminal: policy.Terminal, + }) + default: + return fmt.Errorf("unsupported load balancer hash policy field: %v", policy.Field) + } + } + action.HashPolicy = result + return nil +} diff --git a/agent/xds/routes_test.go b/agent/xds/routes_test.go index 88020b247b..2dd5ef38db 100644 --- a/agent/xds/routes_test.go +++ b/agent/xds/routes_test.go @@ -7,6 +7,8 @@ import ( "time" envoy "github.com/envoyproxy/go-control-plane/envoy/api/v2" + envoyroute "github.com/envoyproxy/go-control-plane/envoy/api/v2/route" + "github.com/golang/protobuf/ptypes" "github.com/hashicorp/consul/agent/connect" "github.com/hashicorp/consul/agent/consul/discoverychain" "github.com/hashicorp/consul/agent/proxycfg" @@ -203,7 +205,7 @@ func TestRoutesFromSnapshot(t *testing.T) { }, }, LoadBalancer: &structs.LoadBalancer{ - EnvoyLBConfig: &structs.EnvoyLBConfig{ + EnvoyConfig: &structs.EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &structs.RingHashConfig{ MinimumRingSize: 20, @@ -277,3 +279,184 @@ func TestRoutesFromSnapshot(t *testing.T) { }) } } + +func TestEnvoyLBConfig_InjectToRouteAction(t *testing.T) { + var tests = []struct { + name string + lb *structs.EnvoyLBConfig + expected envoyroute.RouteAction + }{ + { + name: "empty", + lb: &structs.EnvoyLBConfig{ + Policy: "", + }, + // we only modify route actions for hash-based LB policies + expected: envoyroute.RouteAction{}, + }, + { + name: "least request", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyLeastRequest, + LeastRequestConfig: &structs.LeastRequestConfig{ + ChoiceCount: 3, + }, + }, + // we only modify route actions for hash-based LB policies + expected: envoyroute.RouteAction{}, + }, + { + name: "headers", + lb: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MinimumRingSize: 3, + MaximumRingSize: 7, + }, + HashPolicies: []structs.HashPolicy{ + { + Field: structs.HashPolicyHeader, + FieldValue: "x-route-key", + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: "x-route-key", + }, + }, + Terminal: true, + }, + }, + }, + }, + { + name: "cookies", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyMaglev, + HashPolicies: []structs.HashPolicy{ + { + Field: structs.HashPolicyCookie, + FieldValue: "red-velvet", + Terminal: true, + }, + { + Field: structs.HashPolicyCookie, + FieldValue: "oatmeal", + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "red-velvet", + }, + }, + Terminal: true, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "oatmeal", + }, + }, + }, + }, + }, + }, + { + name: "source addr", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyMaglev, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: true, + }, + }, + }, + }, + { + name: "kitchen sink", + lb: &structs.EnvoyLBConfig{ + Policy: structs.LBPolicyMaglev, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + Terminal: true, + }, + { + Field: structs.HashPolicyCookie, + FieldValue: "oatmeal", + CookieConfig: &structs.CookieConfig{ + TTL: 10 * time.Second, + Path: "/oven", + }, + }, + { + Field: structs.HashPolicyHeader, + FieldValue: "special-header", + Terminal: true, + }, + }, + }, + expected: envoyroute.RouteAction{ + HashPolicy: []*envoyroute.RouteAction_HashPolicy{ + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_ConnectionProperties_{ + ConnectionProperties: &envoyroute.RouteAction_HashPolicy_ConnectionProperties{ + SourceIp: true, + }, + }, + Terminal: true, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Cookie_{ + Cookie: &envoyroute.RouteAction_HashPolicy_Cookie{ + Name: "oatmeal", + Ttl: ptypes.DurationProto(10 * time.Second), + Path: "/oven", + }, + }, + }, + { + PolicySpecifier: &envoyroute.RouteAction_HashPolicy_Header_{ + Header: &envoyroute.RouteAction_HashPolicy_Header{ + HeaderName: "special-header", + }, + }, + Terminal: true, + }, + }, + }, + }, + } + + for _, tc := range tests { + t.Run(tc.name, func(t *testing.T) { + var ra envoyroute.RouteAction + err := injectLBToRouteAction(tc.lb, &ra) + require.NoError(t, err) + + require.Equal(t, &tc.expected, &ra) + }) + } +} diff --git a/api/config_entry_discoverychain.go b/api/config_entry_discoverychain.go index 68546b615a..640525e85f 100644 --- a/api/config_entry_discoverychain.go +++ b/api/config_entry_discoverychain.go @@ -209,8 +209,8 @@ type ServiceResolverFailover struct { // LoadBalancer determines the load balancing policy and configuration for services // issuing requests to this upstream service. type LoadBalancer struct { - // EnvoyLBConfig contains Envoy-specific load balancing configuration for this upstream - EnvoyLBConfig *EnvoyLBConfig `json:",omitempty" alias:"envoy_lb_config"` + // EnvoyConfig contains Envoy-specific load balancing configuration for this upstream + EnvoyConfig *EnvoyLBConfig `json:",omitempty" alias:"envoy_config"` // OpaqueConfig contains load balancing configuration opaque to Consul for 3rd party proxies OpaqueConfig string `json:",omitempty" alias:"opaque_config"` diff --git a/api/config_entry_discoverychain_test.go b/api/config_entry_discoverychain_test.go index 560dc1e24c..efdc347025 100644 --- a/api/config_entry_discoverychain_test.go +++ b/api/config_entry_discoverychain_test.go @@ -294,7 +294,7 @@ func TestAPI_ConfigEntry_ServiceResolver_LoadBalancer(t *testing.T) { Name: "test-least-req", Namespace: defaultNamespace, LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: "least_request", LeastRequestConfig: &LeastRequestConfig{ChoiceCount: 10}, }, @@ -309,7 +309,7 @@ func TestAPI_ConfigEntry_ServiceResolver_LoadBalancer(t *testing.T) { Name: "test-ring-hash", Namespace: defaultNamespace, LoadBalancer: &LoadBalancer{ - EnvoyLBConfig: &EnvoyLBConfig{ + EnvoyConfig: &EnvoyLBConfig{ Policy: "ring_hash", RingHashConfig: &RingHashConfig{ MinimumRingSize: 1024 * 2, diff --git a/command/config/write/config_write_test.go b/command/config/write/config_write_test.go index 82bbda4bb5..79f962835e 100644 --- a/command/config/write/config_write_test.go +++ b/command/config/write/config_write_test.go @@ -1172,7 +1172,7 @@ func TestParseConfigEntry(t *testing.T) { kind = "service-resolver" name = "main" load_balancer = { - envoy_lb_config = { + envoy_config = { policy = "ring_hash" ring_hash_config = { minimum_ring_size = 1 @@ -1235,7 +1235,7 @@ func TestParseConfigEntry(t *testing.T) { "kind": "service-resolver", "name": "main", "load_balancer": { - "envoy_lb_config": { + "envoy_config": { "policy": "ring_hash", "ring_hash_config": { "minimum_ring_size": 1, @@ -1300,7 +1300,7 @@ func TestParseConfigEntry(t *testing.T) { Kind: "service-resolver", Name: "main", LoadBalancer: &api.LoadBalancer{ - EnvoyLBConfig: &api.EnvoyLBConfig{ + EnvoyConfig: &api.EnvoyLBConfig{ Policy: structs.LBPolicyRingHash, RingHashConfig: &api.RingHashConfig{ MinimumRingSize: 1, @@ -1334,7 +1334,7 @@ func TestParseConfigEntry(t *testing.T) { kind = "service-resolver" name = "main" load_balancer = { - envoy_lb_config = { + envoy_config = { policy = "least_request" least_request_config = { choice_count = 2 @@ -1359,7 +1359,7 @@ func TestParseConfigEntry(t *testing.T) { "kind": "service-resolver", "name": "main", "load_balancer": { - "envoy_lb_config": { + "envoy_config": { "policy": "least_request", "least_request_config": { "choice_count": 2 @@ -1386,7 +1386,7 @@ func TestParseConfigEntry(t *testing.T) { Kind: "service-resolver", Name: "main", LoadBalancer: &api.LoadBalancer{ - EnvoyLBConfig: &api.EnvoyLBConfig{ + EnvoyConfig: &api.EnvoyLBConfig{ Policy: structs.LBPolicyLeastRequest, LeastRequestConfig: &api.LeastRequestConfig{ ChoiceCount: 2, From ef877449ce3916ae3620a1ca0f11d63232159cbe Mon Sep 17 00:00:00 2001 From: freddygv Date: Wed, 2 Sep 2020 15:49:03 -0600 Subject: [PATCH 050/122] Move valid policies to pkg level --- agent/structs/config_entry_discoverychain.go | 35 +++++++++++--------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index 9fc2550c01..d0cd7e46d0 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -30,6 +30,23 @@ const ( HashPolicyQueryParam = "query_parameter" ) +var ( + validLBPolicies = map[string]bool{ + "": true, + LBPolicyRandom: true, + LBPolicyRoundRobin: true, + LBPolicyLeastRequest: true, + LBPolicyRingHash: true, + LBPolicyMaglev: true, + } + + validHashPolicies = map[string]bool{ + HashPolicyHeader: true, + HashPolicyCookie: true, + HashPolicyQueryParam: true, + } +) + // ServiceRouterConfigEntry defines L7 (e.g. http) routing rules for a named // service exposed in Connect. // @@ -828,15 +845,7 @@ func (e *ServiceResolverConfigEntry) Validate() error { if e.LoadBalancer != nil && e.LoadBalancer.EnvoyConfig != nil { ec := e.LoadBalancer.EnvoyConfig - validPolicies := map[string]bool{ - "": true, - LBPolicyRandom: true, - LBPolicyRoundRobin: true, - LBPolicyLeastRequest: true, - LBPolicyRingHash: true, - LBPolicyMaglev: true, - } - if ok := validPolicies[ec.Policy]; !ok { + if ok := validLBPolicies[ec.Policy]; !ok { return fmt.Errorf("Bad LoadBalancer policy: %q is not supported", ec.Policy) } @@ -853,15 +862,11 @@ func (e *ServiceResolverConfigEntry) Validate() error { "HashPolicies specified for non-hash-based Policy: %q", ec.Policy) } - validFields := map[string]bool{ - HashPolicyHeader: true, - HashPolicyCookie: true, - HashPolicyQueryParam: true, - } for i, hp := range ec.HashPolicies { - if ok := validFields[hp.Field]; hp.Field != "" && !ok { + if ok := validHashPolicies[hp.Field]; hp.Field != "" && !ok { return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: %q is not a supported field", i, hp.Field) } + if hp.SourceIP && hp.Field != "" { return fmt.Errorf("Bad LoadBalancer HashPolicy[%d]: "+ "A single hash policy cannot hash both a source address and a %q", i, hp.Field) From eaa250cc8085895e78a0bb227a0b38d30ef22666 Mon Sep 17 00:00:00 2001 From: freddygv Date: Thu, 3 Sep 2020 08:55:57 -0600 Subject: [PATCH 051/122] Ensure resolver node with LB isn't considered default --- agent/consul/discoverychain/compile_test.go | 65 ++++++++++++++++++++- agent/structs/discovery_chain.go | 3 + api/discovery_chain.go | 3 + 3 files changed, 69 insertions(+), 2 deletions(-) diff --git a/agent/consul/discoverychain/compile_test.go b/agent/consul/discoverychain/compile_test.go index 7e4c78dc85..af6597175a 100644 --- a/agent/consul/discoverychain/compile_test.go +++ b/agent/consul/discoverychain/compile_test.go @@ -51,7 +51,8 @@ func TestCompile(t *testing.T) { "default resolver with external sni": testcase_DefaultResolver_ExternalSNI(), "resolver with no entries and inferring defaults": testcase_DefaultResolver(), "default resolver with proxy defaults": testcase_DefaultResolver_WithProxyDefaults(), - "loadbalancer config": testcase_LBConfig(), + "loadbalancer splitter and resolver": testcase_LBSplitterAndResolver(), + "loadbalancer resolver": testcase_LBResolver(), "service redirect to service with default resolver is not a default chain": testcase_RedirectToDefaultResolverIsNotDefaultChain(), "all the bells and whistles": testcase_AllBellsAndWhistles(), @@ -2259,7 +2260,7 @@ func testcase_CircularSplit() compileTestCase { } } -func testcase_LBConfig() compileTestCase { +func testcase_LBSplitterAndResolver() compileTestCase { entries := newEntries() setServiceProtocol(entries, "foo", "http") setServiceProtocol(entries, "bar", "http") @@ -2442,6 +2443,66 @@ func testcase_LBConfig() compileTestCase { return compileTestCase{entries: entries, expect: expect} } +// ensure chain with LB cfg in resolver isn't a default chain (!IsDefault) +func testcase_LBResolver() compileTestCase { + entries := newEntries() + setServiceProtocol(entries, "main", "http") + + entries.AddResolvers( + &structs.ServiceResolverConfigEntry{ + Kind: "service-resolver", + Name: "main", + LoadBalancer: &structs.LoadBalancer{ + EnvoyConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, + }, + }, + }, + }, + ) + + expect := &structs.CompiledDiscoveryChain{ + Protocol: "http", + StartNode: "resolver:main.default.dc1", + Nodes: map[string]*structs.DiscoveryGraphNode{ + "resolver:main.default.dc1": { + Type: structs.DiscoveryGraphNodeTypeResolver, + Name: "main.default.dc1", + Resolver: &structs.DiscoveryResolver{ + Default: true, + ConnectTimeout: 5 * time.Second, + Target: "main.default.dc1", + }, + LoadBalancer: &structs.LoadBalancer{ + EnvoyConfig: &structs.EnvoyLBConfig{ + Policy: "ring_hash", + RingHashConfig: &structs.RingHashConfig{ + MaximumRingSize: 101, + }, + HashPolicies: []structs.HashPolicy{ + { + SourceIP: true, + }, + }, + }, + }, + }, + }, + Targets: map[string]*structs.DiscoveryTarget{ + "main.default.dc1": newTarget("main", "", "default", "dc1", nil), + }, + } + + return compileTestCase{entries: entries, expect: expect} +} + func newSimpleRoute(name string, muts ...func(*structs.ServiceRoute)) structs.ServiceRoute { r := structs.ServiceRoute{ Match: &structs.ServiceRouteMatch{ diff --git a/agent/structs/discovery_chain.go b/agent/structs/discovery_chain.go index 77eb03937c..5e2ff9498e 100644 --- a/agent/structs/discovery_chain.go +++ b/agent/structs/discovery_chain.go @@ -82,6 +82,9 @@ func (c *CompiledDiscoveryChain) IsDefault() bool { if !node.Resolver.Default { return false } + if node.LoadBalancer != nil { + return false + } target := c.Targets[node.Resolver.Target] diff --git a/api/discovery_chain.go b/api/discovery_chain.go index 75fdbaee25..f67f881c23 100644 --- a/api/discovery_chain.go +++ b/api/discovery_chain.go @@ -147,6 +147,9 @@ type DiscoveryGraphNode struct { // fields for Type==resolver Resolver *DiscoveryResolver + + // shared by Type==resolver || Type==splitter + LoadBalancer *LoadBalancer `json:",omitempty"` } // compiled form of ServiceRoute From cf018cb2e0774dfb0c579d19a3c89cdc49deda68 Mon Sep 17 00:00:00 2001 From: freddygv Date: Thu, 3 Sep 2020 08:56:17 -0600 Subject: [PATCH 052/122] Fixup stray LB infix refs --- command/config/write/config_write_test.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/command/config/write/config_write_test.go b/command/config/write/config_write_test.go index 79f962835e..6b05790665 100644 --- a/command/config/write/config_write_test.go +++ b/command/config/write/config_write_test.go @@ -1203,7 +1203,7 @@ func TestParseConfigEntry(t *testing.T) { Kind = "service-resolver" Name = "main" LoadBalancer = { - EnvoyLBConfig = { + EnvoyConfig = { Policy = "ring_hash" RingHashConfig = { MinimumRingSize = 1 @@ -1268,7 +1268,7 @@ func TestParseConfigEntry(t *testing.T) { "Kind": "service-resolver", "Name": "main", "LoadBalancer": { - "EnvoyLBConfig": { + "EnvoyConfig": { "Policy": "ring_hash", "RingHashConfig": { "MinimumRingSize": 1, @@ -1346,7 +1346,7 @@ func TestParseConfigEntry(t *testing.T) { Kind = "service-resolver" Name = "main" LoadBalancer = { - EnvoyLBConfig = { + EnvoyConfig = { Policy = "least_request" LeastRequestConfig = { ChoiceCount = 2 @@ -1373,7 +1373,7 @@ func TestParseConfigEntry(t *testing.T) { "Kind": "service-resolver", "Name": "main", "LoadBalancer": { - "EnvoyLBConfig": { + "EnvoyConfig": { "Policy": "least_request", "LeastRequestConfig": { "ChoiceCount": 2 From 30ba080d25d326508b89c623dfcab0a9caed1ca9 Mon Sep 17 00:00:00 2001 From: freddygv Date: Thu, 3 Sep 2020 08:57:48 -0600 Subject: [PATCH 053/122] Add explicit protocol overrides in tgw xds test cases --- agent/proxycfg/testing.go | 2 +- agent/xds/clusters.go | 8 +- agent/xds/clusters_test.go | 18 ++++ agent/xds/listeners_test.go | 16 +--- agent/xds/routes_test.go | 3 + ...ignore-extra-resolvers.envoy-1-12-x.golden | 32 +++++++ ...ignore-extra-resolvers.envoy-1-13-x.golden | 32 +++++++ ...ignore-extra-resolvers.envoy-1-14-x.golden | 32 +++++++ ...ignore-extra-resolvers.envoy-1-15-x.golden | 32 +++++++ ...ateway-service-subsets.envoy-1-12-x.golden | 32 +++++++ ...ateway-service-subsets.envoy-1-13-x.golden | 32 +++++++ ...ateway-service-subsets.envoy-1-14-x.golden | 32 +++++++ ...ateway-service-subsets.envoy-1-15-x.golden | 32 +++++++ ...teway-service-timeouts.envoy-1-12-x.golden | 34 ++++++- ...teway-service-timeouts.envoy-1-13-x.golden | 34 ++++++- ...teway-service-timeouts.envoy-1-14-x.golden | 34 ++++++- ...teway-service-timeouts.envoy-1-15-x.golden | 34 ++++++- ...stname-service-subsets.envoy-1-12-x.golden | 86 ++++++++++++++++++ ...stname-service-subsets.envoy-1-13-x.golden | 86 ++++++++++++++++++ ...stname-service-subsets.envoy-1-14-x.golden | 86 ++++++++++++++++++ ...stname-service-subsets.envoy-1-15-x.golden | 86 ++++++++++++++++++ ...ignore-extra-resolvers.envoy-1-12-x.golden | 56 ++++++++++++ ...ignore-extra-resolvers.envoy-1-13-x.golden | 56 ++++++++++++ ...ignore-extra-resolvers.envoy-1-14-x.golden | 56 ++++++++++++ ...ignore-extra-resolvers.envoy-1-15-x.golden | 56 ++++++++++++ ...ateway-service-subsets.envoy-1-12-x.golden | 88 +++++++++++++++++++ ...ateway-service-subsets.envoy-1-13-x.golden | 88 +++++++++++++++++++ ...ateway-service-subsets.envoy-1-14-x.golden | 88 +++++++++++++++++++ ...ateway-service-subsets.envoy-1-15-x.golden | 88 +++++++++++++++++++ ...m-and-tagged-addresses.envoy-1-12-x.golden | 70 +++++---------- ...m-and-tagged-addresses.envoy-1-13-x.golden | 70 +++++---------- ...m-and-tagged-addresses.envoy-1-14-x.golden | 70 +++++---------- ...m-and-tagged-addresses.envoy-1-15-x.golden | 70 +++++---------- ...ng-gateway-no-api-cert.envoy-1-12-x.golden | 35 +++----- ...ng-gateway-no-api-cert.envoy-1-13-x.golden | 35 +++----- ...ng-gateway-no-api-cert.envoy-1-14-x.golden | 35 +++----- ...ng-gateway-no-api-cert.envoy-1-15-x.golden | 35 +++----- .../terminating-gateway.envoy-1-12-x.golden | 35 +++----- .../terminating-gateway.envoy-1-13-x.golden | 35 +++----- .../terminating-gateway.envoy-1-14-x.golden | 35 +++----- .../terminating-gateway.envoy-1-15-x.golden | 35 +++----- 41 files changed, 1497 insertions(+), 422 deletions(-) diff --git a/agent/proxycfg/testing.go b/agent/proxycfg/testing.go index 2c6a0cd039..3dd4b6bd36 100644 --- a/agent/proxycfg/testing.go +++ b/agent/proxycfg/testing.go @@ -1883,7 +1883,7 @@ func testConfigSnapshotTerminatingGateway(t testing.T, populateServices bool) *C snap.TerminatingGateway.ServiceConfigs = map[structs.ServiceName]*structs.ServiceConfigResponse{ web: { - ProxyConfig: map[string]interface{}{"protocol": "http"}, + ProxyConfig: map[string]interface{}{"protocol": "tcp"}, }, api: { ProxyConfig: map[string]interface{}{"protocol": "tcp"}, diff --git a/agent/xds/clusters.go b/agent/xds/clusters.go index 4c061a86fa..8491ab088a 100644 --- a/agent/xds/clusters.go +++ b/agent/xds/clusters.go @@ -208,13 +208,13 @@ func (s *Server) makeGatewayServiceClusters(cfgSnap *proxycfg.ConfigSnapshot) ([ var loadBalancer *structs.EnvoyLBConfig - if hasResolver && resolver.LoadBalancer != nil { - loadBalancer = resolver.LoadBalancer.EnvoyConfig - - } else { + if !hasResolver { // Use a zero value resolver with no timeout and no subsets resolver = &structs.ServiceResolverConfigEntry{} } + if resolver.LoadBalancer != nil { + loadBalancer = resolver.LoadBalancer.EnvoyConfig + } // When making service clusters we only pass endpoints with hostnames if the kind is a terminating gateway // This is because the services a mesh gateway will route to are not external services and are not addressed by a hostname. diff --git a/agent/xds/clusters_test.go b/agent/xds/clusters_test.go index 76a23472e4..024a4511b3 100644 --- a/agent/xds/clusters_test.go +++ b/agent/xds/clusters_test.go @@ -527,6 +527,12 @@ func TestClustersFromSnapshot(t *testing.T) { }, }, } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("web", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, + } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("cache", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, + } }, }, { @@ -553,6 +559,12 @@ func TestClustersFromSnapshot(t *testing.T) { }, }, } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("api", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, + } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("cache", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, + } }, }, { @@ -589,6 +601,9 @@ func TestClustersFromSnapshot(t *testing.T) { }, }, } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("web", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, + } }, }, { @@ -620,6 +635,9 @@ func TestClustersFromSnapshot(t *testing.T) { }, }, } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("web", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, + } }, }, { diff --git a/agent/xds/listeners_test.go b/agent/xds/listeners_test.go index b972eaf5d7..5b08ab6372 100644 --- a/agent/xds/listeners_test.go +++ b/agent/xds/listeners_test.go @@ -436,19 +436,9 @@ func TestListenersFromSnapshot(t *testing.T) { }, }, }, - structs.NewServiceName("web", nil): { - Kind: structs.ServiceResolver, - Name: "web", - Subsets: map[string]structs.ServiceResolverSubset{ - "v1": { - Filter: "Service.Meta.version == 1", - }, - "v2": { - Filter: "Service.Meta.version == 2", - OnlyPassing: true, - }, - }, - }, + } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("web", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, } }, }, diff --git a/agent/xds/routes_test.go b/agent/xds/routes_test.go index 2dd5ef38db..5181023215 100644 --- a/agent/xds/routes_test.go +++ b/agent/xds/routes_test.go @@ -230,6 +230,9 @@ func TestRoutesFromSnapshot(t *testing.T) { }, }, } + snap.TerminatingGateway.ServiceConfigs[structs.NewServiceName("web", nil)] = &structs.ServiceConfigResponse{ + ProxyConfig: map[string]interface{}{"protocol": "http"}, + } }, }, } diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-12-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-13-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-14-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-ignore-extra-resolvers.envoy-1-15-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-12-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-13-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-14-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden index 845881fd3f..afc23f9ae1 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-subsets.envoy-1-15-x.golden @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden index 845881fd3f..bf2d501422 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-12-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "5s", + "connectTimeout": "10s", "outlierDetection": { } @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden index 845881fd3f..bf2d501422 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-13-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "5s", + "connectTimeout": "10s", "outlierDetection": { } @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden index 845881fd3f..bf2d501422 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-14-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "5s", + "connectTimeout": "10s", "outlierDetection": { } @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden index 845881fd3f..bf2d501422 100644 --- a/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/mesh-gateway-service-timeouts.envoy-1-15-x.golden @@ -12,7 +12,7 @@ } } }, - "connectTimeout": "5s", + "connectTimeout": "10s", "outlierDetection": { } @@ -111,6 +111,38 @@ "connectTimeout": "5s", "outlierDetection": { + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.bar.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "10s", + "outlierDetection": { + } } ], diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden index 27b1ddc6c7..44bd0fd5f0 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-12-x.golden @@ -1,6 +1,60 @@ { "versionInfo": "00000001", "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -119,6 +173,38 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden index 27b1ddc6c7..44bd0fd5f0 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-13-x.golden @@ -1,6 +1,60 @@ { "versionInfo": "00000001", "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -119,6 +173,38 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden index 27b1ddc6c7..44bd0fd5f0 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-14-x.golden @@ -1,6 +1,60 @@ { "versionInfo": "00000001", "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -119,6 +173,38 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden index 27b1ddc6c7..44bd0fd5f0 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-hostname-service-subsets.envoy-1-15-x.golden @@ -1,6 +1,60 @@ { "versionInfo": "00000001", "resources": [ + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "alt.api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "api.altdomain", + "portValue": 8081 + } + } + }, + "healthStatus": "HEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "tlsCertificates": [ + { + "certificateChain": { + "filename": "api.cert.pem" + }, + "privateKey": { + "filename": "api.key.pem" + } + } + ], + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", @@ -119,6 +173,38 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden index 27b1ddc6c7..f9c7336e6f 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-12-x.golden @@ -119,6 +119,62 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden index 27b1ddc6c7..f9c7336e6f 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-13-x.golden @@ -119,6 +119,62 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden index 27b1ddc6c7..f9c7336e6f 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-14-x.golden @@ -119,6 +119,62 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden index 27b1ddc6c7..f9c7336e6f 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-ignore-extra-resolvers.envoy-1-15-x.golden @@ -119,6 +119,62 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden index 27b1ddc6c7..8e3db04606 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-12-x.golden @@ -119,6 +119,94 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden index 27b1ddc6c7..8e3db04606 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-13-x.golden @@ -119,6 +119,94 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden index 27b1ddc6c7..8e3db04606 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-14-x.golden @@ -119,6 +119,94 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden index 27b1ddc6c7..8e3db04606 100644 --- a/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/clusters/terminating-gateway-service-subsets.envoy-1-15-x.golden @@ -119,6 +119,94 @@ } }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "LOGICAL_DNS", + "connectTimeout": "5s", + "loadAssignment": { + "clusterName": "prod.cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "endpoints": [ + { + "lbEndpoints": [ + { + "endpoint": { + "address": { + "socketAddress": { + "address": "cache.mydomain", + "portValue": 8081 + } + } + }, + "healthStatus": "UNHEALTHY", + "loadBalancingWeight": 1 + } + ] + } + ] + }, + "dnsRefreshRate": "10s", + "dnsLookupFamily": "V4_ONLY", + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, + { + "@type": "type.googleapis.com/envoy.api.v2.Cluster", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "type": "EDS", + "edsClusterConfig": { + "edsConfig": { + "ads": { + + } + } + }, + "connectTimeout": "5s", + "tlsContext": { + "commonTlsContext": { + "tlsParams": { + + }, + "validationContext": { + "trustedCa": { + "filename": "ca.cert.pem" + } + } + } + }, + "outlierDetection": { + + } + }, { "@type": "type.googleapis.com/envoy.api.v2.Cluster", "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden index 72abeba6b0..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-12-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "foo" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_foo_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } ] @@ -417,33 +402,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "wan" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_wan_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden index 72abeba6b0..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-13-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "foo" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_foo_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } ] @@ -417,33 +402,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "wan" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_wan_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden index 72abeba6b0..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-14-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "foo" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_foo_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } ] @@ -417,33 +402,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "wan" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_wan_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden index 72abeba6b0..0164fc6359 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-custom-and-tagged-addresses.envoy-1-15-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "foo" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_foo_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_foo_tcp" } } ] @@ -417,33 +402,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "wan" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_wan_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_wan_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden index cb3860ef52..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-12-x.golden @@ -136,33 +136,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden index cb3860ef52..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-13-x.golden @@ -136,33 +136,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden index cb3860ef52..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-14-x.golden @@ -136,33 +136,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden index cb3860ef52..bfb7ab050a 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-no-api-cert.envoy-1-15-x.golden @@ -136,33 +136,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden index 3ef59ad7d5..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-12-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden index 3ef59ad7d5..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-13-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden index 3ef59ad7d5..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-14-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] diff --git a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden index 3ef59ad7d5..eba577e6ce 100644 --- a/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway.envoy-1-15-x.golden @@ -183,33 +183,18 @@ }, "filters": [ { - "name": "envoy.http_connection_manager", + "name": "envoy.filters.network.rbac", "config": { - "http_filters": [ - { - "config": { - "rules": { - } - }, - "name": "envoy.filters.http.rbac" - }, - { - "name": "envoy.router" - } - ], - "rds": { - "config_source": { - "ads": { - } - }, - "route_config_name": "default" + "rules": { }, - "stat_prefix": "terminating_gateway_default_web_default_http", - "tracing": { - "operation_name": "EGRESS", - "random_sampling": { - } - } + "stat_prefix": "connect_authz" + } + }, + { + "name": "envoy.tcp_proxy", + "config": { + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "stat_prefix": "terminating_gateway_default_web_default_tcp" } } ] From 5287ff15a82c33ab9c47d2165899cee45e21a5fc Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Thu, 3 Sep 2020 11:08:59 -0500 Subject: [PATCH 054/122] docs: forgot to change this version number when the feature was backported (#8607) --- website/pages/docs/agent/config-entries/ingress-gateway.mdx | 2 +- website/pages/docs/agent/config-entries/proxy-defaults.mdx | 2 +- website/pages/docs/agent/config-entries/service-defaults.mdx | 2 +- website/pages/docs/agent/config-entries/service-resolver.mdx | 2 +- website/pages/docs/agent/config-entries/service-router.mdx | 2 +- website/pages/docs/agent/config-entries/service-splitter.mdx | 2 +- website/pages/docs/agent/config-entries/terminating-gateway.mdx | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/website/pages/docs/agent/config-entries/ingress-gateway.mdx b/website/pages/docs/agent/config-entries/ingress-gateway.mdx index 6db703367c..1c5e96b0c9 100644 --- a/website/pages/docs/agent/config-entries/ingress-gateway.mdx +++ b/website/pages/docs/agent/config-entries/ingress-gateway.mdx @@ -329,7 +329,7 @@ Also make two services in the frontend namespace available over a custom port wi the gateway is registered in. If omitted, the namespace will be inherited from [the request](/api/config#ns) or will default to the `default` namespace. -- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.8.4. - `TLS` `(TLSConfig: )` - TLS configuration for this gateway. diff --git a/website/pages/docs/agent/config-entries/proxy-defaults.mdx b/website/pages/docs/agent/config-entries/proxy-defaults.mdx index e58550c32c..f91ced8fd1 100644 --- a/website/pages/docs/agent/config-entries/proxy-defaults.mdx +++ b/website/pages/docs/agent/config-entries/proxy-defaults.mdx @@ -46,7 +46,7 @@ Config { - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. -- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.8.4. - `Config` `(map[string]arbitrary)` - An arbitrary map of configuration values used by Connect proxies. The available configurations depend on the Connect proxy you use. Any values diff --git a/website/pages/docs/agent/config-entries/service-defaults.mdx b/website/pages/docs/agent/config-entries/service-defaults.mdx index af5aa1ec64..d8e81cb1a8 100644 --- a/website/pages/docs/agent/config-entries/service-defaults.mdx +++ b/website/pages/docs/agent/config-entries/service-defaults.mdx @@ -31,7 +31,7 @@ Protocol = "http" - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. -- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.8.4. - `Protocol` `(string: "tcp")` - Sets the protocol of the service. This is used by Connect proxies for things like observability features and to unlock usage diff --git a/website/pages/docs/agent/config-entries/service-resolver.mdx b/website/pages/docs/agent/config-entries/service-resolver.mdx index e09ad0f0e1..cfdd3f6e4c 100644 --- a/website/pages/docs/agent/config-entries/service-resolver.mdx +++ b/website/pages/docs/agent/config-entries/service-resolver.mdx @@ -80,7 +80,7 @@ Name = "web" - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. -- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.8.4. - `ConnectTimeout` `(duration: 0s)` - The timeout for establishing new network connections to this service. diff --git a/website/pages/docs/agent/config-entries/service-router.mdx b/website/pages/docs/agent/config-entries/service-router.mdx index 55b73a77ec..ff6aba1031 100644 --- a/website/pages/docs/agent/config-entries/service-router.mdx +++ b/website/pages/docs/agent/config-entries/service-router.mdx @@ -131,7 +131,7 @@ Routes = [ - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. -- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.8.4. - `Routes` `(array)` - The list of routes to consider when processing L7 requests. The first route to match in the list is terminal and diff --git a/website/pages/docs/agent/config-entries/service-splitter.mdx b/website/pages/docs/agent/config-entries/service-splitter.mdx index 3ca56ff4e2..b164d34cb6 100644 --- a/website/pages/docs/agent/config-entries/service-splitter.mdx +++ b/website/pages/docs/agent/config-entries/service-splitter.mdx @@ -83,7 +83,7 @@ Splits = [ - `Namespace` `(string: "default")` - Specifies the namespace the config entry will apply to. -- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.8.4. - `Splits` `(array)` - Defines how much traffic to send to which set of service instances during a traffic split. The sum of weights across diff --git a/website/pages/docs/agent/config-entries/terminating-gateway.mdx b/website/pages/docs/agent/config-entries/terminating-gateway.mdx index 4752fbbf5e..c7e2a339a9 100644 --- a/website/pages/docs/agent/config-entries/terminating-gateway.mdx +++ b/website/pages/docs/agent/config-entries/terminating-gateway.mdx @@ -407,7 +407,7 @@ and configure default certificates for mutual TLS. Also override the SNI and CA If omitted, the namespace will be inherited from [the request](/api/config#ns) or will default to the `default` namespace. -- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.9.0. +- `Meta` `(map: nil)` - Specifies arbitrary KV metadata pairs. Added in Consul 1.8.4. - `Services` `(array: )` - A list of services to link with the gateway. The gateway will proxy traffic to these services. These linked services From 318aa094fd8e635ca65f8795276a6edf3829a326 Mon Sep 17 00:00:00 2001 From: freddygv Date: Thu, 3 Sep 2020 10:21:20 -0600 Subject: [PATCH 055/122] Fix http assertion in route creation --- agent/xds/routes.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/agent/xds/routes.go b/agent/xds/routes.go index c95e748551..0f73e2bb47 100644 --- a/agent/xds/routes.go +++ b/agent/xds/routes.go @@ -50,7 +50,10 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co svcConfig := cfgSnap.TerminatingGateway.ServiceConfigs[svc] cfg, err := ParseProxyConfig(svcConfig.ProxyConfig) - if err != nil || structs.IsProtocolHTTPLike(cfg.Protocol) { + if err != nil { + return nil, fmt.Errorf("failed to parse upstream config: %v", err) + } + if !structs.IsProtocolHTTPLike(cfg.Protocol) { // Routes can only be defined for HTTP services continue } From 6ca45e1a61a232507ded78a5f7ab42451405703d Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Thu, 2 Jul 2020 13:31:47 -0400 Subject: [PATCH 056/122] agent: add apiServers type for managing HTTP servers Remove Server field from HTTPServer. The field is no longer used. --- agent/agent.go | 133 ++++++++++++++------------------------ agent/agent_test.go | 2 +- agent/apiserver.go | 94 +++++++++++++++++++++++++++ agent/apiserver_test.go | 65 +++++++++++++++++++ agent/http.go | 10 ++- agent/http_test.go | 12 ++-- agent/testagent.go | 19 +++--- agent/ui_endpoint_test.go | 2 +- command/agent/agent.go | 3 + 9 files changed, 234 insertions(+), 106 deletions(-) create mode 100644 agent/apiserver.go create mode 100644 agent/apiserver_test.go diff --git a/agent/agent.go b/agent/agent.go index 0c639da9a7..20486af125 100644 --- a/agent/agent.go +++ b/agent/agent.go @@ -259,10 +259,12 @@ type Agent struct { // dnsServer provides the DNS API dnsServers []*DNSServer - // httpServers provides the HTTP API on various endpoints - httpServers []*HTTPServer + // apiServers listening for connections. If any of these server goroutines + // fail, the agent will be shutdown. + apiServers *apiServers // wgServers is the wait group for all HTTP and DNS servers + // TODO: remove once dnsServers are handled by apiServers wgServers sync.WaitGroup // watchPlans tracks all the currently-running watch plans for the @@ -375,6 +377,9 @@ func New(bd BaseDeps) (*Agent, error) { a.loadTokens(a.config) a.loadEnterpriseTokens(a.config) + // TODO: pass in a fully populated apiServers into Agent.New + a.apiServers = NewAPIServers(a.logger) + return &a, nil } @@ -580,10 +585,7 @@ func (a *Agent) Start(ctx context.Context) error { // Start HTTP and HTTPS servers. for _, srv := range servers { - if err := a.serveHTTP(srv); err != nil { - return err - } - a.httpServers = append(a.httpServers, srv) + a.apiServers.Start(srv) } // Start gRPC server. @@ -605,6 +607,12 @@ func (a *Agent) Start(ctx context.Context) error { return nil } +// Failed returns a channel which is closed when the first server goroutine exits +// with a non-nil error. +func (a *Agent) Failed() <-chan struct{} { + return a.apiServers.failed +} + func (a *Agent) listenAndServeGRPC() error { if len(a.config.GRPCAddrs) < 1 { return nil @@ -737,14 +745,16 @@ func (a *Agent) startListeners(addrs []net.Addr) ([]net.Listener, error) { // // This approach should ultimately be refactored to the point where we just // start the server and any error should trigger a proper shutdown of the agent. -func (a *Agent) listenHTTP() ([]*HTTPServer, error) { +func (a *Agent) listenHTTP() ([]apiServer, error) { var ln []net.Listener - var servers []*HTTPServer + var servers []apiServer + start := func(proto string, addrs []net.Addr) error { listeners, err := a.startListeners(addrs) if err != nil { return err } + ln = append(ln, listeners...) for _, l := range listeners { var tlscfg *tls.Config @@ -754,18 +764,15 @@ func (a *Agent) listenHTTP() ([]*HTTPServer, error) { l = tls.NewListener(l, tlscfg) } + srv := &HTTPServer{ + agent: a, + denylist: NewDenylist(a.config.HTTPBlockEndpoints), + } httpServer := &http.Server{ Addr: l.Addr().String(), TLSConfig: tlscfg, + Handler: srv.handler(a.config.EnableDebug), } - srv := &HTTPServer{ - Server: httpServer, - ln: l, - agent: a, - denylist: NewDenylist(a.config.HTTPBlockEndpoints), - proto: proto, - } - httpServer.Handler = srv.handler(a.config.EnableDebug) // Load the connlimit helper into the server connLimitFn := a.httpConnLimiter.HTTPConnStateFuncWithDefault429Handler(10 * time.Millisecond) @@ -778,27 +785,39 @@ func (a *Agent) listenHTTP() ([]*HTTPServer, error) { httpServer.ConnState = connLimitFn } - ln = append(ln, l) - servers = append(servers, srv) + 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) + }, + }) } return nil } if err := start("http", a.config.HTTPAddrs); err != nil { - for _, l := range ln { - l.Close() - } + closeListeners(ln) return nil, err } if err := start("https", a.config.HTTPSAddrs); err != nil { - for _, l := range ln { - l.Close() - } + closeListeners(ln) return nil, err } return servers, nil } +func closeListeners(lns []net.Listener) { + for _, l := range lns { + l.Close() + } +} + // setupHTTPS adds HTTP/2 support, ConnState, and a connection handshake timeout // to the http.Server. func setupHTTPS(server *http.Server, connState func(net.Conn, http.ConnState), timeout time.Duration) error { @@ -860,43 +879,6 @@ func (a *Agent) listenSocket(path string) (net.Listener, error) { return l, nil } -func (a *Agent) serveHTTP(srv *HTTPServer) error { - // https://github.com/golang/go/issues/20239 - // - // In go.8.1 there is a race between Serve and Shutdown. If - // Shutdown is called before the Serve go routine was scheduled then - // the Serve go routine never returns. This deadlocks the agent - // shutdown for some tests since it will wait forever. - notif := make(chan net.Addr) - a.wgServers.Add(1) - go func() { - defer a.wgServers.Done() - notif <- srv.ln.Addr() - err := srv.Server.Serve(srv.ln) - if err != nil && err != http.ErrServerClosed { - a.logger.Error("error closing server", "error", err) - } - }() - - select { - case addr := <-notif: - if srv.proto == "https" { - a.logger.Info("Started HTTPS server", - "address", addr.String(), - "network", addr.Network(), - ) - } else { - a.logger.Info("Started HTTP server", - "address", addr.String(), - "network", addr.Network(), - ) - } - return nil - case <-time.After(time.Second): - return fmt.Errorf("agent: timeout starting HTTP servers") - } -} - // stopAllWatches stops all the currently running watches func (a *Agent) stopAllWatches() { for _, wp := range a.watchPlans { @@ -1395,13 +1377,12 @@ func (a *Agent) ShutdownAgent() error { // ShutdownEndpoints terminates the HTTP and DNS servers. Should be // preceded by ShutdownAgent. +// TODO: remove this method, move to ShutdownAgent func (a *Agent) ShutdownEndpoints() { a.shutdownLock.Lock() defer a.shutdownLock.Unlock() - if len(a.dnsServers) == 0 && len(a.httpServers) == 0 { - return - } + ctx := context.TODO() for _, srv := range a.dnsServers { if srv.Server != nil { @@ -1415,27 +1396,11 @@ func (a *Agent) ShutdownEndpoints() { } a.dnsServers = nil - for _, srv := range a.httpServers { - a.logger.Info("Stopping server", - "protocol", strings.ToUpper(srv.proto), - "address", srv.ln.Addr().String(), - "network", srv.ln.Addr().Network(), - ) - ctx, cancel := context.WithTimeout(context.Background(), time.Second) - defer cancel() - srv.Server.Shutdown(ctx) - if ctx.Err() == context.DeadlineExceeded { - a.logger.Warn("Timeout stopping server", - "protocol", strings.ToUpper(srv.proto), - "address", srv.ln.Addr().String(), - "network", srv.ln.Addr().Network(), - ) - } - } - a.httpServers = nil - + a.apiServers.Shutdown(ctx) a.logger.Info("Waiting for endpoints to shut down") - a.wgServers.Wait() + if err := a.apiServers.WaitForShutdown(); err != nil { + a.logger.Error(err.Error()) + } a.logger.Info("Endpoints down") } diff --git a/agent/agent_test.go b/agent/agent_test.go index 479421f591..472f1b652d 100644 --- a/agent/agent_test.go +++ b/agent/agent_test.go @@ -1917,7 +1917,7 @@ func TestAgent_HTTPCheck_EnableAgentTLSForChecks(t *testing.T) { Status: api.HealthCritical, } - url := fmt.Sprintf("https://%s/v1/agent/self", a.srv.ln.Addr().String()) + url := fmt.Sprintf("https://%s/v1/agent/self", a.HTTPAddr()) chk := &structs.CheckType{ HTTP: url, Interval: 20 * time.Millisecond, diff --git a/agent/apiserver.go b/agent/apiserver.go new file mode 100644 index 0000000000..27087829a6 --- /dev/null +++ b/agent/apiserver.go @@ -0,0 +1,94 @@ +package agent + +import ( + "context" + "net" + "sync" + "time" + + "github.com/hashicorp/go-hclog" + "golang.org/x/sync/errgroup" +) + +// apiServers is a wrapper around errgroup.Group for managing go routines for +// long running agent components (ex: http server, dns server). If any of the +// servers fail, the failed channel will be closed, which will cause the agent +// to be shutdown instead of running in a degraded state. +// +// This struct exists as a shim for using errgroup.Group without making major +// changes to Agent. In the future it may be removed and replaced with more +// direct usage of errgroup.Group. +type apiServers struct { + logger hclog.Logger + group *errgroup.Group + servers []apiServer + // failed channel is closed when the first server goroutines exit with a + // non-nil error. + failed <-chan struct{} +} + +type apiServer struct { + // Protocol supported by this server. One of: dns, http, https + Protocol string + // Addr the server is listening on + Addr net.Addr + // Run will be called in a goroutine to run the server. When any Run exits + // with a non-nil error, the failed channel will be closed. + Run func() error + // Shutdown function used to stop the server + Shutdown func(context.Context) error +} + +// NewAPIServers returns an empty apiServers that is ready to Start servers. +func NewAPIServers(logger hclog.Logger) *apiServers { + group, ctx := errgroup.WithContext(context.TODO()) + return &apiServers{ + logger: logger, + group: group, + failed: ctx.Done(), + } +} + +func (s *apiServers) Start(srv apiServer) { + srv.logger(s.logger).Info("Starting server") + s.servers = append(s.servers, srv) + s.group.Go(srv.Run) +} + +func (s apiServer) logger(base hclog.Logger) hclog.Logger { + return base.With( + "protocol", s.Protocol, + "address", s.Addr.String(), + "network", s.Addr.Network()) +} + +// Shutdown all the servers and log any errors as warning. Each server is given +// 1 second, or until ctx is cancelled, to shutdown gracefully. +func (s *apiServers) Shutdown(ctx context.Context) { + shutdownGroup := new(sync.WaitGroup) + + for i := range s.servers { + server := s.servers[i] + shutdownGroup.Add(1) + + go func() { + defer shutdownGroup.Done() + logger := server.logger(s.logger) + logger.Info("Stopping server") + + ctx, cancel := context.WithTimeout(ctx, time.Second) + defer cancel() + if err := server.Shutdown(ctx); err != nil { + logger.Warn("Failed to stop server") + } + }() + } + s.servers = nil + shutdownGroup.Wait() +} + +// WaitForShutdown waits until all server goroutines have exited. Shutdown +// must be called before WaitForShutdown, otherwise it will block forever. +func (s *apiServers) WaitForShutdown() error { + return s.group.Wait() +} diff --git a/agent/apiserver_test.go b/agent/apiserver_test.go new file mode 100644 index 0000000000..72f8c6d651 --- /dev/null +++ b/agent/apiserver_test.go @@ -0,0 +1,65 @@ +package agent + +import ( + "context" + "fmt" + "net" + "testing" + "time" + + "github.com/hashicorp/go-hclog" + "github.com/stretchr/testify/require" +) + +func TestAPIServers_WithServiceRunError(t *testing.T) { + servers := NewAPIServers(hclog.New(nil)) + + server1, chErr1 := newAPIServerStub() + server2, _ := newAPIServerStub() + + t.Run("Start", func(t *testing.T) { + servers.Start(server1) + servers.Start(server2) + + select { + case <-servers.failed: + t.Fatalf("expected servers to still be running") + case <-time.After(5 * time.Millisecond): + } + }) + + err := fmt.Errorf("oops, I broke") + + t.Run("server exit non-nil error", func(t *testing.T) { + chErr1 <- err + + select { + case <-servers.failed: + case <-time.After(time.Second): + t.Fatalf("expected failed channel to be closed") + } + }) + + t.Run("shutdown remaining services", func(t *testing.T) { + servers.Shutdown(context.Background()) + require.Equal(t, err, servers.WaitForShutdown()) + }) +} + +func newAPIServerStub() (apiServer, chan error) { + chErr := make(chan error) + return apiServer{ + Protocol: "http", + Addr: &net.TCPAddr{ + IP: net.ParseIP("127.0.0.11"), + Port: 5505, + }, + Run: func() error { + return <-chErr + }, + Shutdown: func(ctx context.Context) error { + close(chErr) + return nil + }, + }, chErr +} diff --git a/agent/http.go b/agent/http.go index bac6c172c2..dc9438230d 100644 --- a/agent/http.go +++ b/agent/http.go @@ -80,16 +80,14 @@ func (e ForbiddenError) Error() string { } // HTTPServer provides an HTTP api for an agent. +// +// TODO: rename this struct to something more appropriate. It is an http.Handler, +// request router or multiplexer, but it is not a Server. type HTTPServer struct { - // TODO(dnephin): remove Server field, it is not used by any of the HTTPServer methods - Server *http.Server - ln net.Listener agent *Agent denylist *Denylist - - // proto is filled by the agent to "http" or "https". - proto string } + type templatedFile struct { templated *bytes.Reader name string diff --git a/agent/http_test.go b/agent/http_test.go index 6574b89180..36ecf387b3 100644 --- a/agent/http_test.go +++ b/agent/http_test.go @@ -1353,7 +1353,7 @@ func TestHTTPServer_HandshakeTimeout(t *testing.T) { // Connect to it with a plain TCP client that doesn't attempt to send HTTP or // complete a TLS handshake. - conn, err := net.Dial("tcp", a.srv.ln.Addr().String()) + conn, err := net.Dial("tcp", a.HTTPAddr()) require.NoError(t, err) defer conn.Close() @@ -1413,7 +1413,7 @@ func TestRPC_HTTPSMaxConnsPerClient(t *testing.T) { }) defer a.Shutdown() - addr := a.srv.ln.Addr() + addr := a.HTTPAddr() assertConn := func(conn net.Conn, wantOpen bool) { retry.Run(t, func(r *retry.R) { @@ -1433,21 +1433,21 @@ func TestRPC_HTTPSMaxConnsPerClient(t *testing.T) { } // Connect to the server with bare TCP - conn1, err := net.DialTimeout("tcp", addr.String(), time.Second) + conn1, err := net.DialTimeout("tcp", addr, time.Second) require.NoError(t, err) defer conn1.Close() assertConn(conn1, true) // Two conns should succeed - conn2, err := net.DialTimeout("tcp", addr.String(), time.Second) + conn2, err := net.DialTimeout("tcp", addr, time.Second) require.NoError(t, err) defer conn2.Close() assertConn(conn2, true) // Third should succeed negotiating TCP handshake... - conn3, err := net.DialTimeout("tcp", addr.String(), time.Second) + conn3, err := net.DialTimeout("tcp", addr, time.Second) require.NoError(t, err) defer conn3.Close() @@ -1460,7 +1460,7 @@ func TestRPC_HTTPSMaxConnsPerClient(t *testing.T) { require.NoError(t, a.reloadConfigInternal(&newCfg)) // Now another conn should be allowed - conn4, err := net.DialTimeout("tcp", addr.String(), time.Second) + conn4, err := net.DialTimeout("tcp", addr, time.Second) require.NoError(t, err) defer conn4.Close() diff --git a/agent/testagent.go b/agent/testagent.go index 8f05b6ed47..fa3508ffab 100644 --- a/agent/testagent.go +++ b/agent/testagent.go @@ -73,8 +73,7 @@ type TestAgent struct { // It is valid after Start(). dns *DNSServer - // srv is a reference to the first started HTTP endpoint. - // It is valid after Start(). + // srv is an HTTPServer that may be used to test http endpoints. srv *HTTPServer // overrides is an hcl config source to use to override otherwise @@ -213,6 +212,8 @@ func (a *TestAgent) Start(t *testing.T) (err error) { // Start the anti-entropy syncer a.Agent.StartSync() + a.srv = &HTTPServer{agent: agent, denylist: NewDenylist(a.config.HTTPBlockEndpoints)} + if err := a.waitForUp(); err != nil { a.Shutdown() t.Logf("Error while waiting for test agent to start: %v", err) @@ -220,7 +221,6 @@ func (a *TestAgent) Start(t *testing.T) (err error) { } a.dns = a.dnsServers[0] - a.srv = a.httpServers[0] return nil } @@ -233,7 +233,7 @@ func (a *TestAgent) waitForUp() error { var retErr error var out structs.IndexedNodes for ; !time.Now().After(deadline); time.Sleep(timer.Wait) { - if len(a.httpServers) == 0 { + if len(a.apiServers.servers) == 0 { retErr = fmt.Errorf("waiting for server") continue // fail, try again } @@ -262,7 +262,7 @@ func (a *TestAgent) waitForUp() error { } else { req := httptest.NewRequest("GET", "/v1/agent/self", nil) resp := httptest.NewRecorder() - _, err := a.httpServers[0].AgentSelf(resp, req) + _, err := a.srv.AgentSelf(resp, req) if acl.IsErrPermissionDenied(err) || resp.Code == 403 { // permission denied is enough to show that the client is // connected to the servers as it would get a 503 if @@ -313,10 +313,13 @@ func (a *TestAgent) DNSAddr() string { } func (a *TestAgent) HTTPAddr() string { - if a.srv == nil { - return "" + var srv apiServer + for _, srv = range a.Agent.apiServers.servers { + if srv.Protocol == "http" { + break + } } - return a.srv.Server.Addr + return srv.Addr.String() } func (a *TestAgent) SegmentAddr(name string) string { diff --git a/agent/ui_endpoint_test.go b/agent/ui_endpoint_test.go index 876d4a97c8..4640bcfebb 100644 --- a/agent/ui_endpoint_test.go +++ b/agent/ui_endpoint_test.go @@ -41,7 +41,7 @@ func TestUiIndex(t *testing.T) { // Register node req, _ := http.NewRequest("GET", "/ui/my-file", nil) req.URL.Scheme = "http" - req.URL.Host = a.srv.Server.Addr + req.URL.Host = a.HTTPAddr() // Make the request client := cleanhttp.DefaultClient() diff --git a/command/agent/agent.go b/command/agent/agent.go index 7da6613066..1e06ef90be 100644 --- a/command/agent/agent.go +++ b/command/agent/agent.go @@ -288,6 +288,9 @@ func (c *cmd) run(args []string) int { case err := <-agent.RetryJoinCh(): c.logger.Error("Retry join failed", "error", err) return 1 + case <-agent.Failed(): + // The deferred Shutdown method will log the appropriate error + return 1 case <-agent.ShutdownCh(): // agent is already down! return 0 From 4d44809cbd2e6aaee0d8868cc8496b8719f6b80f Mon Sep 17 00:00:00 2001 From: Tyler Ryan Date: Thu, 3 Sep 2020 14:25:54 -0400 Subject: [PATCH 057/122] =?UTF-8?q?Clarifying=20service=20definition=20req?= =?UTF-8?q?uirements=20for=20registering=20a=20service=20=E2=80=A6=20(#860?= =?UTF-8?q?8)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- website/pages/docs/discovery/services.mdx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/website/pages/docs/discovery/services.mdx b/website/pages/docs/discovery/services.mdx index 5622012c28..41ec55d2aa 100644 --- a/website/pages/docs/discovery/services.mdx +++ b/website/pages/docs/discovery/services.mdx @@ -135,6 +135,14 @@ Services may also contain a `token` field to provide an ACL token. This token is used for any interaction with the catalog for the service, including [anti-entropy syncs](/docs/internals/anti-entropy) and deregistration. +Services registered in Consul clusters where both [Consul Namespaces](/docs/enterprise/namespaces) +and the ACL system are enabled can be registered to specific namespaces that are associated with +ACL tokens scoped to that namespace. Services registed with a service definition +will not inherit the namespace associated with the ACL token specified in the `token` +field. The `namespace` field, in addition to the `token` field, must be +included in the service definition for the service to be registered to the +namespace that the ACL token is scoped to. + The `enable_tag_override` can optionally be specified to disable the anti-entropy feature for this service. If `enable_tag_override` is set to `TRUE` then external agents can update this service in the From 00f2794bfa5f77c581107f3e13b71f2583d34d3e Mon Sep 17 00:00:00 2001 From: freddygv Date: Thu, 3 Sep 2020 12:35:11 -0600 Subject: [PATCH 058/122] Update golden files after default route fix for tgw --- ...ting-gateway-lb-config.envoy-1-12-x.golden | 75 ++++++++++++++++--- ...ting-gateway-lb-config.envoy-1-13-x.golden | 75 ++++++++++++++++--- ...ting-gateway-lb-config.envoy-1-14-x.golden | 75 ++++++++++++++++--- ...ting-gateway-lb-config.envoy-1-15-x.golden | 75 ++++++++++++++++--- 4 files changed, 264 insertions(+), 36 deletions(-) diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden index e8370f2657..b611e2508d 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-12-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,7 +16,26 @@ "prefix": "/" }, "route": { - "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -26,10 +45,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -39,7 +58,26 @@ "prefix": "/" }, "route": { - "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -49,10 +87,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -62,7 +100,26 @@ "prefix": "/" }, "route": { - "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden index e8370f2657..b611e2508d 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-13-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,7 +16,26 @@ "prefix": "/" }, "route": { - "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -26,10 +45,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -39,7 +58,26 @@ "prefix": "/" }, "route": { - "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -49,10 +87,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -62,7 +100,26 @@ "prefix": "/" }, "route": { - "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden index e8370f2657..b611e2508d 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-14-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,7 +16,26 @@ "prefix": "/" }, "route": { - "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -26,10 +45,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -39,7 +58,26 @@ "prefix": "/" }, "route": { - "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -49,10 +87,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -62,7 +100,26 @@ "prefix": "/" }, "route": { - "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] diff --git a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden index e8370f2657..b611e2508d 100644 --- a/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden +++ b/agent/xds/testdata/routes/terminating-gateway-lb-config.envoy-1-15-x.golden @@ -3,10 +3,10 @@ "resources": [ { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -16,7 +16,26 @@ "prefix": "/" }, "route": { - "cluster": "api.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -26,10 +45,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -39,7 +58,26 @@ "prefix": "/" }, "route": { - "cluster": "cache.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] @@ -49,10 +87,10 @@ }, { "@type": "type.googleapis.com/envoy.api.v2.RouteConfiguration", - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "virtualHosts": [ { - "name": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", "domains": [ "*" ], @@ -62,7 +100,26 @@ "prefix": "/" }, "route": { - "cluster": "db.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" + "cluster": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul", + "hashPolicy": [ + { + "cookie": { + "name": "chocolate-chip" + }, + "terminal": true + }, + { + "header": { + "headerName": "x-user-id" + } + }, + { + "connectionProperties": { + "sourceIp": true + }, + "terminal": true + } + ] } } ] From cd4cf5161f851d79d668b98272ef0ba1842759e5 Mon Sep 17 00:00:00 2001 From: freddygv Date: Thu, 3 Sep 2020 13:08:44 -0600 Subject: [PATCH 059/122] Update resolver defaulting --- agent/consul/discoverychain/compile_test.go | 8 ++++---- agent/structs/config_entry_discoverychain.go | 3 ++- agent/structs/discovery_chain.go | 3 --- 3 files changed, 6 insertions(+), 8 deletions(-) diff --git a/agent/consul/discoverychain/compile_test.go b/agent/consul/discoverychain/compile_test.go index af6597175a..1d5c3e582f 100644 --- a/agent/consul/discoverychain/compile_test.go +++ b/agent/consul/discoverychain/compile_test.go @@ -2372,7 +2372,7 @@ func testcase_LBSplitterAndResolver() compileTestCase { Type: structs.DiscoveryGraphNodeTypeResolver, Name: "foo.default.dc1", Resolver: &structs.DiscoveryResolver{ - Default: true, + Default: false, ConnectTimeout: 5 * time.Second, Target: "foo.default.dc1", }, @@ -2389,7 +2389,7 @@ func testcase_LBSplitterAndResolver() compileTestCase { Type: structs.DiscoveryGraphNodeTypeResolver, Name: "bar.default.dc1", Resolver: &structs.DiscoveryResolver{ - Default: true, + Default: false, ConnectTimeout: 5 * time.Second, Target: "bar.default.dc1", }, @@ -2411,7 +2411,7 @@ func testcase_LBSplitterAndResolver() compileTestCase { Type: structs.DiscoveryGraphNodeTypeResolver, Name: "baz.default.dc1", Resolver: &structs.DiscoveryResolver{ - Default: true, + Default: false, ConnectTimeout: 5 * time.Second, Target: "baz.default.dc1", }, @@ -2476,7 +2476,7 @@ func testcase_LBResolver() compileTestCase { Type: structs.DiscoveryGraphNodeTypeResolver, Name: "main.default.dc1", Resolver: &structs.DiscoveryResolver{ - Default: true, + Default: false, ConnectTimeout: 5 * time.Second, Target: "main.default.dc1", }, diff --git a/agent/structs/config_entry_discoverychain.go b/agent/structs/config_entry_discoverychain.go index d0cd7e46d0..96ef3b3a21 100644 --- a/agent/structs/config_entry_discoverychain.go +++ b/agent/structs/config_entry_discoverychain.go @@ -730,7 +730,8 @@ func (e *ServiceResolverConfigEntry) IsDefault() bool { len(e.Subsets) == 0 && e.Redirect == nil && len(e.Failover) == 0 && - e.ConnectTimeout == 0 + e.ConnectTimeout == 0 && + e.LoadBalancer == nil } func (e *ServiceResolverConfigEntry) GetKind() string { diff --git a/agent/structs/discovery_chain.go b/agent/structs/discovery_chain.go index 5e2ff9498e..77eb03937c 100644 --- a/agent/structs/discovery_chain.go +++ b/agent/structs/discovery_chain.go @@ -82,9 +82,6 @@ func (c *CompiledDiscoveryChain) IsDefault() bool { if !node.Resolver.Default { return false } - if node.LoadBalancer != nil { - return false - } target := c.Targets[node.Resolver.Target] From 5de4d5bbe38f01fc2e7574e9df22002c9e2624ac Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 14 Jul 2020 19:23:44 -0400 Subject: [PATCH 060/122] stream: have SnapshotFunc accept a non-pointer SubscribeRequest The value is not expected to be modified. Passing a value makes that explicit. --- agent/consul/state/store_integration_test.go | 2 +- agent/consul/stream/event_publisher.go | 6 +++++- agent/consul/stream/event_publisher_test.go | 4 ++-- agent/consul/stream/event_snapshot.go | 6 ++---- agent/consul/stream/event_snapshot_test.go | 4 ++-- 5 files changed, 12 insertions(+), 10 deletions(-) diff --git a/agent/consul/state/store_integration_test.go b/agent/consul/state/store_integration_test.go index 83a978bb0a..6b2e9d1fe6 100644 --- a/agent/consul/state/store_integration_test.go +++ b/agent/consul/state/store_integration_test.go @@ -376,7 +376,7 @@ var topicService stream.Topic = topic("test-topic-service") func newTestSnapshotHandlers(s *Store) stream.SnapshotHandlers { return stream.SnapshotHandlers{ - topicService: func(req *stream.SubscribeRequest, snap stream.SnapshotAppender) (uint64, error) { + topicService: func(req stream.SubscribeRequest, snap stream.SnapshotAppender) (uint64, error) { idx, nodes, err := s.ServiceNodes(nil, req.Key, nil) if err != nil { return idx, err diff --git a/agent/consul/stream/event_publisher.go b/agent/consul/stream/event_publisher.go index 9dfb8bf9e5..815a68a261 100644 --- a/agent/consul/stream/event_publisher.go +++ b/agent/consul/stream/event_publisher.go @@ -61,7 +61,11 @@ type changeEvents struct { // SnapshotHandlers is a mapping of Topic to a function which produces a snapshot // of events for the SubscribeRequest. Events are appended to the snapshot using SnapshotAppender. // The nil Topic is reserved and should not be used. -type SnapshotHandlers map[Topic]func(*SubscribeRequest, SnapshotAppender) (index uint64, err error) +type SnapshotHandlers map[Topic]SnapshotFunc + +// SnapshotFunc builds a snapshot for the subscription request, and appends the +// events to the Snapshot using SnapshotAppender. +type SnapshotFunc func(SubscribeRequest, SnapshotAppender) (index uint64, err error) // SnapshotAppender appends groups of events to create a Snapshot of state. type SnapshotAppender interface { diff --git a/agent/consul/stream/event_publisher_test.go b/agent/consul/stream/event_publisher_test.go index 4deeb1503e..4448e68454 100644 --- a/agent/consul/stream/event_publisher_test.go +++ b/agent/consul/stream/event_publisher_test.go @@ -58,7 +58,7 @@ func TestEventPublisher_PublishChangesAndSubscribe_WithSnapshot(t *testing.T) { func newTestSnapshotHandlers() SnapshotHandlers { return SnapshotHandlers{ - testTopic: func(req *SubscribeRequest, buf SnapshotAppender) (uint64, error) { + testTopic: func(req SubscribeRequest, buf SnapshotAppender) (uint64, error) { if req.Topic != testTopic { return 0, fmt.Errorf("unexpected topic: %v", req.Topic) } @@ -117,7 +117,7 @@ func TestEventPublisher_ShutdownClosesSubscriptions(t *testing.T) { t.Cleanup(cancel) handlers := newTestSnapshotHandlers() - fn := func(req *SubscribeRequest, buf SnapshotAppender) (uint64, error) { + fn := func(req SubscribeRequest, buf SnapshotAppender) (uint64, error) { return 0, nil } handlers[intTopic(22)] = fn diff --git a/agent/consul/stream/event_snapshot.go b/agent/consul/stream/event_snapshot.go index 12a52ea37b..2f0d276f78 100644 --- a/agent/consul/stream/event_snapshot.go +++ b/agent/consul/stream/event_snapshot.go @@ -18,8 +18,6 @@ type eventSnapshot struct { snapBuffer *eventBuffer } -type snapFunc func(req *SubscribeRequest, buf SnapshotAppender) (uint64, error) - // newEventSnapshot creates a snapshot buffer based on the subscription request. // The current buffer head for the topic requested is passed so that once the // snapshot is complete and has been delivered into the buffer, any events @@ -27,7 +25,7 @@ type snapFunc func(req *SubscribeRequest, buf SnapshotAppender) (uint64, error) // missed. Once the snapshot is delivered the topic buffer is spliced onto the // snapshot buffer so that subscribers will naturally follow from the snapshot // to wait for any subsequent updates. -func newEventSnapshot(req *SubscribeRequest, topicBufferHead *bufferItem, fn snapFunc) *eventSnapshot { +func newEventSnapshot(req *SubscribeRequest, topicBufferHead *bufferItem, fn SnapshotFunc) *eventSnapshot { buf := newEventBuffer() s := &eventSnapshot{ Head: buf.Head(), @@ -35,7 +33,7 @@ func newEventSnapshot(req *SubscribeRequest, topicBufferHead *bufferItem, fn sna } go func() { - idx, err := fn(req, s.snapBuffer) + idx, err := fn(*req, s.snapBuffer) if err != nil { s.snapBuffer.AppendItem(&bufferItem{Err: err}) return diff --git a/agent/consul/stream/event_snapshot_test.go b/agent/consul/stream/event_snapshot_test.go index 5e62e7f94f..c888e844ab 100644 --- a/agent/consul/stream/event_snapshot_test.go +++ b/agent/consul/stream/event_snapshot_test.go @@ -161,8 +161,8 @@ func genSequentialIDs(start, end int) []string { return ids } -func testHealthConsecutiveSnapshotFn(size int, index uint64) snapFunc { - return func(req *SubscribeRequest, buf SnapshotAppender) (uint64, error) { +func testHealthConsecutiveSnapshotFn(size int, index uint64) SnapshotFunc { + return func(req SubscribeRequest, buf SnapshotAppender) (uint64, error) { for i := 0; i < size; i++ { // Event content is arbitrary we are just using Health because it's the // first type defined. We just want a set of things with consecutive From e03e911144e145e4afc5bd800adc22bf4a31c9e2 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 21 Jul 2020 18:20:34 -0400 Subject: [PATCH 061/122] state: fix bug in changeTrackerDB.publish Creating a new readTxn does not work because it will not see the newly created objects that are about to be committed. Instead use the active write Txn. --- agent/consul/state/memdb.go | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index 895da9e069..1aaa45dd83 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -85,11 +85,8 @@ func (c *changeTrackerDB) WriteTxn(idx uint64) *txn { return t } -func (c *changeTrackerDB) publish(changes Changes) error { - readOnlyTx := c.db.Txn(false) - defer readOnlyTx.Abort() - - events, err := c.processChanges(readOnlyTx, changes) +func (c *changeTrackerDB) publish(tx ReadTxn, changes Changes) error { + events, err := c.processChanges(tx, changes) if err != nil { return fmt.Errorf("failed generating events from changes: %v", err) } @@ -127,7 +124,7 @@ type txn struct { // Index is stored so that it may be passed along to any subscribers as part // of a change event. Index uint64 - publish func(changes Changes) error + publish func(tx ReadTxn, changes Changes) error } // Commit first pushes changes to EventPublisher, then calls Commit on the @@ -152,7 +149,7 @@ func (tx *txn) Commit() error { // In those cases changes should also be empty, and there will be nothing // to publish. if tx.publish != nil { - if err := tx.publish(changes); err != nil { + if err := tx.publish(tx.Txn, changes); err != nil { return err } } From bf523420eea5562e301f12bca29df2e98ac239d0 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 15 Jul 2020 11:54:50 -0400 Subject: [PATCH 062/122] state: Add Change processor and snapshotter for service health Co-authored-by: Paul Banks --- agent/consul/state/catalog_events.go | 494 +++++++ agent/consul/state/catalog_events_test.go | 1492 +++++++++++++++++++++ agent/consul/state/memdb.go | 31 +- agent/consul/state/state_store.go | 18 +- 4 files changed, 2022 insertions(+), 13 deletions(-) create mode 100644 agent/consul/state/catalog_events.go create mode 100644 agent/consul/state/catalog_events_test.go diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go new file mode 100644 index 0000000000..0214b7ef77 --- /dev/null +++ b/agent/consul/state/catalog_events.go @@ -0,0 +1,494 @@ +package state + +import ( + "github.com/hashicorp/consul/agent/consul/stream" + "github.com/hashicorp/consul/agent/structs" + memdb "github.com/hashicorp/go-memdb" +) + +// ServiceHealthSnapshot is a stream.SnapFn that provides a streaming snapshot +// of stream.Events that describe the current state of a service health query. +func (s *Store) ServiceHealthSnapshot(req stream.SubscribeRequest, buf stream.SnapshotAppender) (uint64, error) { + tx := s.db.Txn(false) + defer tx.Abort() + // TODO(namespace-streaming): plumb entMeta through from SubscribeRequest + idx, nodes, err := checkServiceNodesTxn(tx, nil, req.Key, false, nil) + if err != nil { + return 0, err + } + + _, err = checkServiceNodesToServiceHealth(idx, nodes, buf, TopicServiceHealth) + return idx, err +} + +// ServiceHealthSnapshot is a stream.SnapFn that provides a streaming snapshot +// of stream.Events that describe the current state of a service connect health +// query. +func (s *Store) ServiceHealthConnectSnapshot(req stream.SubscribeRequest, buf stream.SnapshotAppender) (uint64, error) { + tx := s.db.Txn(false) + defer tx.Abort() + // TODO(namespace-streaming): plumb entMeta through from SubscribeRequest + idx, nodes, err := checkServiceNodesTxn(tx, nil, req.Key, true, nil) + if err != nil { + return 0, err + } + + _, err = checkServiceNodesToServiceHealth(idx, nodes, buf, TopicServiceHealthConnect) + return idx, err +} + +type changeOp int + +const ( + OpDelete changeOp = iota + OpCreate + OpUpdate +) + +type eventPayload struct { + Op changeOp + Obj interface{} +} + +// checkServiceNodesToServiceHealth converts a list of structs.CheckServiceNodes +// to stream.ServiceHealth events for streaming. If a non-nil event buffer is +// passed, events are appended to the buffer one at a time and an nil slice is +// returned to avoid keeping a full copy in memory. +func checkServiceNodesToServiceHealth(idx uint64, nodes structs.CheckServiceNodes, + buf stream.SnapshotAppender, topic topic) ([]stream.Event, error) { + var events []stream.Event + for _, n := range nodes { + event := stream.Event{ + Index: idx, + Topic: topic, + Payload: eventPayload{ + Op: OpCreate, + Obj: &n, + }, + } + + if n.Service != nil { + event.Key = n.Service.Service + } + + // TODO: always called with a non-nil buf? + if buf != nil { + buf.Append([]stream.Event{event}) + } else { + events = append(events, event) + } + } + return events, nil +} + +type nodeServiceTuple struct { + Node string + ServiceID string + EntMeta structs.EnterpriseMeta +} + +// ServiceHealthEventsFromChanges returns all the service and Connect health +// events that should be emitted given a set of changes to the state store. +func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event, error) { + var events []stream.Event + + var nodeChanges map[string]*memdb.Change + var serviceChanges map[nodeServiceTuple]*memdb.Change + + markNode := func(node string, nodeChange *memdb.Change) { + if nodeChanges == nil { + nodeChanges = make(map[string]*memdb.Change) + } + // If the caller has an actual node mutation ensure we store it even if the + // node is already marked. If the caller is just marking the node dirty + // without an node change, don't overwrite any existing node change we know + // about. + ch := nodeChanges[node] + if ch == nil { + nodeChanges[node] = nodeChange + } + } + markService := func(node, service string, entMeta structs.EnterpriseMeta, svcChange *memdb.Change) { + if serviceChanges == nil { + serviceChanges = make(map[nodeServiceTuple]*memdb.Change) + } + k := nodeServiceTuple{ + Node: node, + ServiceID: service, + EntMeta: entMeta, + } + // If the caller has an actual service mutation ensure we store it even if + // the service is already marked. If the caller is just marking the service + // dirty without an node change, don't overwrite any existing node change we + // know about. + ch := serviceChanges[k] + if ch == nil { + serviceChanges[k] = svcChange + } + } + + for _, change := range changes.Changes { + switch change.Table { + case "nodes": + // Node changed in some way, if it's not a delete, we'll need to + // re-deliver CheckServiceNode results for all services on that node but + // we mark it anyway because if it _is_ a delete then we need to know that + // later to avoid trying to deliver events when node level checks mark the + // node as "changed". + nRaw := change.After + if change.After == nil { + nRaw = change.Before + } + n := nRaw.(*structs.Node) + changeCopy := change + markNode(n.Node, &changeCopy) + + case "services": + snRaw := change.After + if change.After == nil { + snRaw = change.Before + } + sn := snRaw.(*structs.ServiceNode) + changeCopy := change + markService(sn.Node, sn.ServiceID, sn.EnterpriseMeta, &changeCopy) + + case "checks": + // For health we only care about the scope for now to know if it's just + // affecting a single service or every service on a node. There is a + // subtle edge case where the check with same ID changes from being node + // scoped to service scoped or vice versa, in either case we need to treat + // it as affecting all services on the node. + switch { + case change.Updated(): + before := change.Before.(*structs.HealthCheck) + after := change.After.(*structs.HealthCheck) + if after.ServiceID == "" || before.ServiceID == "" { + // Either changed from or to being node-scoped + markNode(after.Node, nil) + } else { + // Check changed which means we just need to emit for the linked + // service. + markService(after.Node, after.ServiceID, after.EnterpriseMeta, nil) + + // Edge case - if the check with same ID was updated to link to a + // different service ID but the old service with old ID still exists, + // then the old service instance needs updating too as it has one + // fewer checks now. + if before.ServiceID != after.ServiceID { + markService(before.Node, before.ServiceID, before.EnterpriseMeta, nil) + } + } + + case change.Deleted(): + before := change.Before.(*structs.HealthCheck) + if before.ServiceID == "" { + // Node level check + markNode(before.Node, nil) + } else { + markService(before.Node, before.ServiceID, before.EnterpriseMeta, nil) + } + + case change.Created(): + after := change.After.(*structs.HealthCheck) + if after.ServiceID == "" { + // Node level check + markNode(after.Node, nil) + } else { + markService(after.Node, after.ServiceID, after.EnterpriseMeta, nil) + } + } + } + } + + // Now act on those marked nodes/services + for node, change := range nodeChanges { + // change may be nil if there was a change that _affected_ the node + // like a change to checks but it didn't actually change the node + // record itself. + if change != nil && change.Deleted() { + // Node deletions are a no-op here since the state store transaction will + // have also removed all the service instances which will be handled in + // the loop below. + continue + } + // Rebuild events for all services on this node + es, err := serviceHealthEventsForNode(tx, changes.Index, node) + if err != nil { + return nil, err + } + events = append(events, es...) + } + + for tuple, change := range serviceChanges { + // change may be nil if there was a change that _affected_ the service + // like a change to checks but it didn't actually change the service + // record itself. + if change != nil && change.Deleted() { + // Generate delete event for the service instance and append it + sn := change.Before.(*structs.ServiceNode) + es, err := serviceHealthDeregEventsForServiceInstance(changes.Index, sn, &tuple.EntMeta) + if err != nil { + return nil, err + } + events = append(events, es...) + continue + } + + // Check if this was a service mutation that changed it's name which + // requires special handling even if node changed and new events were + // already published. + if change != nil && change.Updated() { + before := change.Before.(*structs.ServiceNode) + after := change.After.(*structs.ServiceNode) + + if before.ServiceName != after.ServiceName { + // Service was renamed, the code below will ensure the new registrations + // go out to subscribers to the new service name topic key, but we need + // to fix up subscribers that were watching the old name by sending + // deregistrations. + es, err := serviceHealthDeregEventsForServiceInstance(changes.Index, before, &tuple.EntMeta) + if err != nil { + return nil, err + } + events = append(events, es...) + } + + if before.ServiceKind == structs.ServiceKindConnectProxy && + before.ServiceProxy.DestinationServiceName != after.ServiceProxy.DestinationServiceName { + // Connect proxy changed the service it is representing, need to issue a + // dereg for the old service on the Connect topic. We don't actually need + // to deregister this sidecar service though as it still exists and + // didn't change its name (or if it did that was caught just above). But + // our mechanism for connect events is to convert them so we generate + // the regular one, convert it to Connect topic and then discar the + // original. + es, err := serviceHealthDeregEventsForServiceInstance(changes.Index, before, &tuple.EntMeta) + if err != nil { + return nil, err + } + // Don't append es per comment above, but convert it to connect topic + // events. + es = serviceHealthToConnectEvents(es) + events = append(events, es...) + } + } + + if _, ok := nodeChanges[tuple.Node]; ok { + // We already rebuilt events for everything on this node, no need to send + // a duplicate. + continue + } + // Build service event and append it + es, err := serviceHealthEventsForServiceInstance(tx, changes.Index, tuple) + if err != nil { + return nil, err + } + events = append(events, es...) + } + + // Duplicate any events that affected connect-enabled instances (proxies or + // native apps) to the relevant Connect topic. + events = append(events, serviceHealthToConnectEvents(events)...) + + return events, nil +} + +// serviceHealthToConnectEvents converts already formatted service health +// registration events into the ones needed to publish to the Connect topic. +// This essentially means filtering out any instances that are not Connect +// enabled and so of no interest to those subscribers but also involves +// switching connection details to be the proxy instead of the actual instance +// in case of a sidecar. +func serviceHealthToConnectEvents(events []stream.Event) []stream.Event { + serviceHealthConnectEvents := make([]stream.Event, 0, len(events)) + for _, event := range events { + if event.Topic != TopicServiceHealth { + // Skip non-health or any events already emitted to Connect topic + continue + } + node := getPayloadCheckServiceNode(event.Payload) + if node.Service == nil || + (node.Service.Kind != structs.ServiceKindConnectProxy && !node.Service.Connect.Native) { + // Event is not a service instance (i.e. just a node registration) + // or is not a service that is not connect-enabled in some way. + continue + } + + connectEvent := event + connectEvent.Topic = TopicServiceHealthConnect + + // If this is a proxy, set the key to the destination service name. + if node.Service.Kind == structs.ServiceKindConnectProxy { + connectEvent.Key = node.Service.Proxy.DestinationServiceName + } + + serviceHealthConnectEvents = append(serviceHealthConnectEvents, connectEvent) + } + + return serviceHealthConnectEvents +} + +func getPayloadCheckServiceNode(payload interface{}) *structs.CheckServiceNode { + ep, ok := payload.(eventPayload) + if !ok { + return nil + } + csn, ok := ep.Obj.(*structs.CheckServiceNode) + if !ok { + return nil + } + return csn +} + +// serviceHealthEventsForNode returns health events for all services on the +// given node. This mirrors some of the the logic in the oddly-named +// parseCheckServiceNodes but is more efficient since we know they are all on +// the same node. +func serviceHealthEventsForNode(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) + if err != nil { + return nil, err + } + + n, nodeChecks, svcChecks, err := getNodeAndChecks(tx, node) + if err != nil { + return nil, err + } + + var events []stream.Event + for service := services.Next(); service != nil; service = services.Next() { + sn := service.(*structs.ServiceNode) + + es, err := serviceHealthEventsForServiceNodeInternal(idx, n, sn, nodeChecks, svcChecks) + if err != nil { + return nil, err + } + + // Append to the results. + events = append(events, es...) + } + + return events, nil +} + +// getNodeAndNodeChecks returns a specific node and ALL checks on that node +// (both node specific and service-specific). node-level Checks are returned as +// a slice, service-specific checks as a map of slices with the service id as +// the map key. +func getNodeAndChecks(tx ReadTxn, node string) (*structs.Node, + structs.HealthChecks, map[string]structs.HealthChecks, error) { + // Fetch the node + nodeRaw, err := tx.First("nodes", "id", node) + if err != nil { + return nil, nil, nil, err + } + if nodeRaw == nil { + return nil, nil, nil, ErrMissingNode + } + n := nodeRaw.(*structs.Node) + + // TODO(namespace-streaming): work out what EntMeta is needed here, wildcard? + iter, err := catalogListChecksByNode(tx, node, nil) + if err != nil { + return nil, nil, nil, err + } + + var nodeChecks structs.HealthChecks + var svcChecks map[string]structs.HealthChecks + + for check := iter.Next(); check != nil; check = iter.Next() { + check := check.(*structs.HealthCheck) + if check.ServiceID == "" { + nodeChecks = append(nodeChecks, check) + } else { + if svcChecks == nil { + svcChecks = make(map[string]structs.HealthChecks) + } + svcChecks[check.ServiceID] = append(svcChecks[check.ServiceID], check) + } + } + return n, nodeChecks, svcChecks, nil +} + +func serviceHealthEventsForServiceInstance(tx ReadTxn, idx uint64, tuple nodeServiceTuple) ([]stream.Event, error) { + n, nodeChecks, svcChecks, err := getNodeAndChecks(tx, tuple.Node) + if err != nil { + return nil, err + } + + svc, err := getCompoundWithTxn(tx, "services", "id", &tuple.EntMeta, tuple.Node, tuple.ServiceID) + if err != nil { + return nil, err + } + + sn := svc.Next() + if sn == nil { + return nil, ErrMissingService + } + + return serviceHealthEventsForServiceNodeInternal(idx, n, sn.(*structs.ServiceNode), nodeChecks, svcChecks) +} + +func serviceHealthEventsForServiceNodeInternal(idx uint64, + node *structs.Node, + sn *structs.ServiceNode, + nodeChecks structs.HealthChecks, + svcChecks map[string]structs.HealthChecks) ([]stream.Event, error) { + + // Start with a copy of the node checks. + checks := nodeChecks + for _, check := range svcChecks[sn.ServiceID] { + checks = append(checks, check) + } + + csn := &structs.CheckServiceNode{ + Node: node, + Service: sn.ToNodeService(), + Checks: checks, + } + e := stream.Event{ + Topic: TopicServiceHealth, + Key: sn.ServiceName, + Index: idx, + Payload: eventPayload{ + Op: OpCreate, + Obj: csn, + }, + } + + // See if we also need to emit a connect event (i.e. if this instance is a + // connect proxy or connect native app). + + return []stream.Event{e}, nil +} + +func serviceHealthDeregEventsForServiceInstance(idx uint64, + sn *structs.ServiceNode, entMeta *structs.EnterpriseMeta) ([]stream.Event, error) { + + // We actually only need the node name populated in the node part as it's only + // used as a key to know which service was deregistered so don't bother looking + // up the node in the DB. Note that while the ServiceNode does have NodeID + // etc. fields, they are never populated in memdb per the comment on that + // struct and only filled in when we return copies of the result to users. + // This is also important because if the service was deleted as part of a + // whole node deregistering then the node record won't actually exist now + // anyway and we'd have to plumb it through from the changeset above. + csn := &structs.CheckServiceNode{ + Node: &structs.Node{ + Node: sn.Node, + }, + Service: sn.ToNodeService(), + } + + e := stream.Event{ + Topic: TopicServiceHealth, + Key: sn.ServiceName, + Index: idx, + Payload: eventPayload{ + Op: OpDelete, + Obj: csn, + }, + } + return []stream.Event{e}, nil +} diff --git a/agent/consul/state/catalog_events_test.go b/agent/consul/state/catalog_events_test.go new file mode 100644 index 0000000000..5cf610604f --- /dev/null +++ b/agent/consul/state/catalog_events_test.go @@ -0,0 +1,1492 @@ +package state + +import ( + "fmt" + "testing" + + "github.com/hashicorp/consul/agent/consul/stream" + "github.com/hashicorp/consul/agent/structs" + "github.com/hashicorp/consul/api" + "github.com/hashicorp/consul/types" + "github.com/stretchr/testify/require" +) + +func TestServiceHealthEventsFromChanges(t *testing.T) { + cases := []struct { + Name string + Setup func(s *Store, tx *txn) error + Mutate func(s *Store, tx *txn) error + WantEvents []stream.Event + WantErr bool + }{ + { + Name: "irrelevant events", + Mutate: func(s *Store, tx *txn) error { + return kvsSetTxn(tx, tx.Index, &structs.DirEntry{ + Key: "foo", + Value: []byte("bar"), + }, false) + }, + WantEvents: nil, + WantErr: false, + }, + { + Name: "service reg, new node", + Mutate: func(s *Store, tx *txn) error { + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")) + }, + WantEvents: []stream.Event{ + testServiceHealthEvent(t, "web"), + }, + WantErr: false, + }, + { + Name: "service reg, existing node", + Setup: func(s *Store, tx *txn) error { + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")) + }, + Mutate: func(s *Store, tx *txn) error { + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")) + }, + WantEvents: []stream.Event{ + // Should only publish new service + testServiceHealthEvent(t, "web", evNodeUnchanged), + }, + WantErr: false, + }, + { + 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 { + return err + } + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + return nil + }, + Mutate: func(s *Store, tx *txn) error { + return s.deleteServiceTxn(tx, tx.Index, "node1", "web", nil) + }, + WantEvents: []stream.Event{ + // Should only publish deregistration for that service + testServiceHealthDeregistrationEvent(t, "web"), + }, + WantErr: false, + }, + { + Name: "node dereg", + Setup: func(s *Store, tx *txn) error { + if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db")); err != nil { + return err + } + if err := s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web")); err != nil { + return err + } + return nil + }, + Mutate: func(s *Store, tx *txn) error { + return s.deleteNodeTxn(tx, tx.Index, "node1") + }, + WantEvents: []stream.Event{ + // Should publish deregistration events for all services + testServiceHealthDeregistrationEvent(t, "db"), + testServiceHealthDeregistrationEvent(t, "web"), + }, + WantErr: false, + }, + { + Name: "connect native reg, new node", + Mutate: func(s *Store, tx *txn) error { + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative)) + }, + WantEvents: []stream.Event{ + // We should see both a regular service health event as well as a connect + // one. + testServiceHealthEvent(t, "web", evConnectNative), + testServiceHealthEvent(t, "web", evConnectNative, evConnectTopic), + }, + WantErr: false, + }, + { + Name: "connect native reg, existing node", + Setup: func(s *Store, tx *txn) error { + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "db")) + }, + Mutate: func(s *Store, tx *txn) error { + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative)) + }, + WantEvents: []stream.Event{ + // We should see both a regular service health event as well as a connect + // one. + testServiceHealthEvent(t, "web", + evNodeUnchanged, + evConnectNative), + testServiceHealthEvent(t, "web", + evNodeUnchanged, + evConnectNative, + evConnectTopic), + }, + WantErr: false, + }, + { + 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 { + return err + } + + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regConnectNative)) + }, + Mutate: func(s *Store, tx *txn) error { + return s.deleteServiceTxn(tx, tx.Index, "node1", "web", nil) + }, + WantEvents: []stream.Event{ + // We should see both a regular service dereg event and a connect one + testServiceHealthDeregistrationEvent(t, "web", evConnectNative), + testServiceHealthDeregistrationEvent(t, "web", evConnectNative, evConnectTopic), + }, + WantErr: false, + }, + { + 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 { + return err + } + return s.ensureRegistrationTxn(tx, tx.Index, false, testServiceRegistration(t, "web", regSidecar)) + }, + WantEvents: []stream.Event{ + // We should see both a regular service health event for the web service + // another for the sidecar service and a connect event for web. + testServiceHealthEvent(t, "web"), + testServiceHealthEvent(t, "web", evSidecar), + testServiceHealthEvent(t, "web", evConnectTopic, evSidecar), + }, + WantErr: false, + }, + { + 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 { + return err + } + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")) + }, + Mutate: func(s *Store, tx *txn) error { + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)) + }, + WantEvents: []stream.Event{ + // We should see both a regular service health event for the proxy + // service and a connect one for the target service. + testServiceHealthEvent(t, "web", evSidecar, evNodeUnchanged), + testServiceHealthEvent(t, "web", evConnectTopic, evSidecar, evNodeUnchanged), + }, + WantErr: false, + }, + { + 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 { + return err + } + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)) + }, + Mutate: func(s *Store, tx *txn) error { + // Delete only the sidecar + return s.deleteServiceTxn(tx, tx.Index, "node1", "web_sidecar_proxy", nil) + }, + WantEvents: []stream.Event{ + // We should see both a regular service dereg event and a connect one + testServiceHealthDeregistrationEvent(t, "web", evSidecar), + testServiceHealthDeregistrationEvent(t, "web", evConnectTopic, evSidecar), + }, + WantErr: false, + }, + { + 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 { + return err + } + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)) + }, + 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)) + }, + WantEvents: []stream.Event{ + // We should see the service topic update but not connect since proxy + // details didn't change. + testServiceHealthEvent(t, "web", + evMutatePort, + evNodeUnchanged, + evServiceMutated, + evChecksUnchanged, + ), + }, + WantErr: false, + }, + { + 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 { + return err + } + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)) + }, + 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)) + }, + WantEvents: []stream.Event{ + // We should see the proxy service topic update and a connect update + testServiceHealthEvent(t, "web", + evSidecar, + evMutatePort, + evNodeUnchanged, + evServiceMutated, + evChecksUnchanged), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evNodeUnchanged, + evMutatePort, + evServiceMutated, + evChecksUnchanged), + }, + WantErr: false, + }, + { + 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 { + return err + } + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)) + }, + 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 { + return err + } + return s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar, regRenameService)) + }, + WantEvents: []stream.Event{ + // We should see events to deregister the old service instance and the + // old connect instance since we changed topic key for both. Then new + // service and connect registrations. The proxy instance should also + // change since it's not proxying a different service. + testServiceHealthDeregistrationEvent(t, "web"), + testServiceHealthEvent(t, "web", + evRenameService, + evServiceMutated, + evNodeUnchanged, + evChecksMutated, + ), + testServiceHealthDeregistrationEvent(t, "web", + evConnectTopic, + evSidecar, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evRenameService, + evNodeUnchanged, + evServiceMutated, + evChecksUnchanged, + ), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evNodeUnchanged, + evRenameService, + evServiceMutated, + evChecksUnchanged, + ), + }, + WantErr: false, + }, + { + Name: "connect sidecar change destination service", + 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 { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); 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)) + }, + 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)) + }, + WantEvents: []stream.Event{ + // We should only see service health events for the sidecar service + // since the actual target services didn't change. But also should see + // Connect topic dereg for the old name to update existing subscribers + // for Connect/web. + testServiceHealthDeregistrationEvent(t, "web", + evConnectTopic, + evSidecar, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evRenameService, + evNodeUnchanged, + evServiceMutated, + evChecksUnchanged, + ), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evNodeUnchanged, + evRenameService, + evServiceMutated, + evChecksUnchanged, + ), + }, + WantErr: false, + }, + { + Name: "multi-service node update", + Setup: func(s *Store, tx *txn) error { + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")); err != nil { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)); err != nil { + return err + } + return nil + }, + Mutate: func(s *Store, tx *txn) error { + // Change only the node meta. + return s.ensureRegistrationTxn(tx, tx.Index, false, + testNodeRegistration(t, regNodeMeta)) + }, + WantEvents: []stream.Event{ + // We should see updates for all services and a connect update for the + // sidecar's destination. + testServiceHealthEvent(t, "db", + evNodeMeta, + evNodeMutated, + evServiceUnchanged, + evChecksUnchanged, + ), + testServiceHealthEvent(t, "web", + evNodeMeta, + evNodeMutated, + evServiceUnchanged, + evChecksUnchanged, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evNodeMeta, + evNodeMutated, + evServiceUnchanged, + evChecksUnchanged, + ), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evNodeMeta, + evNodeMutated, + evServiceUnchanged, + evChecksUnchanged, + ), + }, + WantErr: false, + }, + { + Name: "multi-service node rename", + Setup: func(s *Store, tx *txn) error { + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")); err != nil { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)); err != nil { + return err + } + return nil + }, + Mutate: func(s *Store, tx *txn) error { + // Change only the node NAME but not it's ID. We do it for every service + // though since this is effectively what client agent anti-entropy would + // do on a node rename. If we only rename the node it will have no + // services registered afterwards. + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db", regRenameNode)); err != nil { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regRenameNode)); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar, regRenameNode)); err != nil { + return err + } + return nil + }, + WantEvents: []stream.Event{ + // Node rename is implemented internally as a node delete and new node + // insert after some renaming validation. So we should see full set of + // new events for health, then the deletions of old services, then the + // connect update and delete pair. + testServiceHealthEvent(t, "db", + evRenameNode, + // Although we delete and re-insert, we do maintain the CreatedIndex + // of the node record from the old one. + evNodeMutated, + ), + testServiceHealthEvent(t, "web", + evRenameNode, + evNodeMutated, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evRenameNode, + evNodeMutated, + ), + // dereg events for old node name services + testServiceHealthDeregistrationEvent(t, "db"), + testServiceHealthDeregistrationEvent(t, "web"), + testServiceHealthDeregistrationEvent(t, "web", evSidecar), + // Connect topic updates are last due to the way we add them + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evRenameNode, + evNodeMutated, + ), + testServiceHealthDeregistrationEvent(t, "web", evConnectTopic, evSidecar), + }, + WantErr: false, + }, + { + Name: "multi-service node check failure", + Setup: func(s *Store, tx *txn) error { + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")); err != nil { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)); err != nil { + return err + } + return nil + }, + 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 { + return err + } + return nil + }, + WantEvents: []stream.Event{ + testServiceHealthEvent(t, "db", + evNodeCheckFail, + evNodeUnchanged, + evServiceUnchanged, + // Only the node check changed. This needs to come after evNodeUnchanged + evNodeChecksMutated, + ), + testServiceHealthEvent(t, "web", + evNodeCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evNodeChecksMutated, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evNodeCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evNodeChecksMutated, + ), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evNodeCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evNodeChecksMutated, + ), + }, + WantErr: false, + }, + { + Name: "multi-service node service check failure", + Setup: func(s *Store, tx *txn) error { + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")); err != nil { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)); err != nil { + return err + } + return nil + }, + 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 { + return err + } + // Also change the service-level check status for the proxy. This is + // analogous to what would happen with an alias check on the client side + // - 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 { + return err + } + return nil + }, + WantEvents: []stream.Event{ + // Should only see the events for that one service change, the sidecar + // service and hence the connect topic for that service. + testServiceHealthEvent(t, "web", + evServiceCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evChecksMutated, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evServiceCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evChecksMutated, + ), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evServiceCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evChecksMutated, + ), + }, + WantErr: false, + }, + { + Name: "multi-service node node-level check delete", + Setup: func(s *Store, tx *txn) error { + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")); err != nil { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)); err != nil { + return err + } + return nil + }, + Mutate: func(s *Store, tx *txn) error { + // Delete only the node-level check + if err := s.deleteCheckTxn(tx, tx.Index, "node1", "serf-health", nil); err != nil { + return err + } + return nil + }, + WantEvents: []stream.Event{ + testServiceHealthEvent(t, "db", + evNodeCheckDelete, + evNodeUnchanged, + evServiceUnchanged, + ), + testServiceHealthEvent(t, "web", + evNodeCheckDelete, + evNodeUnchanged, + evServiceUnchanged, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evNodeCheckDelete, + evNodeUnchanged, + evServiceUnchanged, + ), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evNodeCheckDelete, + evNodeUnchanged, + evServiceUnchanged, + ), + }, + WantErr: false, + }, + { + Name: "multi-service node service check delete", + Setup: func(s *Store, tx *txn) error { + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")); err != nil { + return err + } + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)); err != nil { + return err + } + return nil + }, + Mutate: func(s *Store, tx *txn) error { + // Delete the service-level check for the main service + if err := s.deleteCheckTxn(tx, tx.Index, "node1", "service:web", nil); err != nil { + return err + } + // Also delete for a proxy + if err := s.deleteCheckTxn(tx, tx.Index, "node1", "service:web_sidecar_proxy", nil); err != nil { + return err + } + return nil + }, + WantEvents: []stream.Event{ + // Should only see the events for that one service change, the sidecar + // service and hence the connect topic for that service. + testServiceHealthEvent(t, "web", + evServiceCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evServiceCheckDelete, + ), + testServiceHealthEvent(t, "web", + evSidecar, + evServiceCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evServiceCheckDelete, + ), + testServiceHealthEvent(t, "web", + evConnectTopic, + evSidecar, + evServiceCheckFail, + evNodeUnchanged, + evServiceUnchanged, + evServiceCheckDelete, + ), + }, + WantErr: false, + }, + { + Name: "many services on many nodes in one TX", + Setup: func(s *Store, tx *txn) error { + // Node1 + + // Register a db service + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "db")); err != nil { + return err + } + + // Node2 + // Also a web + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regNode2)); err != nil { + return err + } + // With a connect sidecar + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar, regNode2)); err != nil { + return err + } + + return nil + }, + Mutate: func(s *Store, tx *txn) error { + // In one transaction the operator moves the web service and it's + // sidecar from node2 back to node1 and deletes them from node2 + + if err := s.deleteServiceTxn(tx, tx.Index, "node2", "web", nil); err != nil { + return err + } + if err := s.deleteServiceTxn(tx, tx.Index, "node2", "web_sidecar_proxy", nil); err != nil { + return err + } + + // Register those on node1 + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web")); err != nil { + return err + } + if err := s.ensureRegistrationTxn(tx, tx.Index, false, + testServiceRegistration(t, "web", regSidecar)); 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 { + return err + } + + return nil + }, + WantEvents: []stream.Event{ + // We should see: + // - service dereg for web and proxy on node2 + // - connect dereg for web on node2 + // - service reg for web and proxy on node1 + // - connect reg for web on node1 + // - service reg for api on node2 + // - connect reg for api on node2 + testServiceHealthDeregistrationEvent(t, "web", evNode2), + testServiceHealthDeregistrationEvent(t, "web", 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, + ), + }, + WantErr: false, + }, + } + + for _, tc := range cases { + tc := tc + t.Run(tc.Name, func(t *testing.T) { + s := testStateStore(t) + + if tc.Setup != nil { + // Bypass the publish mechanism for this test or we get into odd + // recursive stuff... + setupTx := s.db.WriteTxn(10) + require.NoError(t, tc.Setup(s, setupTx)) + // Commit the underlying transaction without using wrapped Commit so we + // avoid the whole event publishing system for setup here. It _should_ + // work but it makes debugging test hard as it will call the function + // under test for the setup data... + setupTx.Txn.Commit() + } + + tx := s.db.WriteTxn(100) + require.NoError(t, tc.Mutate(s, tx)) + + // Note we call the func under test directly rather than publishChanges so + // we can test this in isolation. + got, err := ServiceHealthEventsFromChanges(tx, Changes{Changes: tx.Changes(), Index: 100}) + if tc.WantErr { + require.Error(t, err) + return + } + 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) + }) + }) + } +} + +type regOption func(req *structs.RegisterRequest) error + +func testNodeRegistration(t *testing.T, opts ...regOption) *structs.RegisterRequest { + r := &structs.RegisterRequest{ + Datacenter: "dc1", + ID: "11111111-2222-3333-4444-555555555555", + Node: "node1", + Address: "10.10.10.10", + Checks: structs.HealthChecks{ + &structs.HealthCheck{ + CheckID: "serf-health", + Name: "serf-health", + Node: "node1", + Status: api.HealthPassing, + }, + }, + } + for _, opt := range opts { + err := opt(r) + require.NoError(t, err) + } + return r +} + +func testServiceRegistration(t *testing.T, svc string, opts ...regOption) *structs.RegisterRequest { + // note: don't pass opts or they might get applied twice! + r := testNodeRegistration(t) + r.Service = &structs.NodeService{ + ID: svc, + Service: svc, + Port: 8080, + } + r.Checks = append(r.Checks, + &structs.HealthCheck{ + CheckID: types.CheckID("service:" + svc), + Name: "service:" + svc, + Node: "node1", + ServiceID: svc, + ServiceName: svc, + Type: "ttl", + Status: api.HealthPassing, + }) + for _, opt := range opts { + err := opt(r) + require.NoError(t, err) + } + return r +} + +type eventOption func(e *stream.Event) error + +func testServiceHealthEvent(t *testing.T, svc string, opts ...eventOption) stream.Event { + e := newTestEventServiceHealthRegister(100, 1, svc) + + // Normalize a few things that are different in the generic event which was + // based on original code here but made more general. This means we don't have + // to change all the test loads... + csn := getPayloadCheckServiceNode(e.Payload) + csn.Node.ID = "11111111-2222-3333-4444-555555555555" + csn.Node.Address = "10.10.10.10" + + for _, opt := range opts { + err := opt(&e) + require.NoError(t, err) + } + return e +} + +func testServiceHealthDeregistrationEvent(t *testing.T, svc string, opts ...eventOption) stream.Event { + e := newTestEventServiceHealthDeregister(100, 1, svc) + for _, opt := range opts { + err := opt(&e) + require.NoError(t, err) + } + return e +} + +// regConnectNative option converts the base registration into a Connect-native +// one. +func regConnectNative(req *structs.RegisterRequest) error { + if req.Service == nil { + return nil + } + req.Service.Connect.Native = true + return nil +} + +// regSidecar option converts the base registration request +// into the registration for it's sidecar service. +func regSidecar(req *structs.RegisterRequest) error { + if req.Service == nil { + return nil + } + svc := req.Service.Service + + req.Service.Kind = structs.ServiceKindConnectProxy + req.Service.ID = svc + "_sidecar_proxy" + req.Service.Service = svc + "_sidecar_proxy" + req.Service.Port = 20000 + req.Service.Port + + req.Service.Proxy.DestinationServiceName = svc + req.Service.Proxy.DestinationServiceID = svc + + // Convert the check to point to the right ID now. This isn't totally + // realistic - sidecars should have alias checks etc but this is good enough + // to test this code path. + if len(req.Checks) >= 2 { + req.Checks[1].CheckID = types.CheckID("service:" + svc + "_sidecar_proxy") + req.Checks[1].ServiceID = svc + "_sidecar_proxy" + } + + return nil +} + +// regNodeCheckFail option converts the base registration request +// into a registration with the node-level health check failing +func regNodeCheckFail(req *structs.RegisterRequest) error { + req.Checks[0].Status = api.HealthCritical + return nil +} + +// regServiceCheckFail option converts the base registration request +// into a registration with the service-level health check failing +func regServiceCheckFail(req *structs.RegisterRequest) error { + req.Checks[1].Status = api.HealthCritical + return nil +} + +// regMutatePort option alters the base registration service port by a relative +// amount to simulate a service change. Can be used with regSidecar since it's a +// relative change (+10). +func regMutatePort(req *structs.RegisterRequest) error { + if req.Service == nil { + return nil + } + req.Service.Port += 10 + return nil +} + +// regRenameService option alters the base registration service name but not +// it's ID simulating a service being renamed while it's ID is maintained +// separately e.g. by a scheduler. This is an edge case but an important one as +// it changes which topic key events propagate. +func regRenameService(req *structs.RegisterRequest) error { + if req.Service == nil { + return nil + } + isSidecar := req.Service.Kind == structs.ServiceKindConnectProxy + + if !isSidecar { + req.Service.Service += "_changed" + // Update service checks + if len(req.Checks) >= 2 { + req.Checks[1].ServiceName += "_changed" + } + return nil + } + // This is a sidecar, it's not really realistic but lets only update the + // fields necessary to make it work again with the new service name to be sure + // 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 + req.Service.Proxy.DestinationServiceName += "_changed" + + return nil +} + +// regRenameNode option alters the base registration node name by adding the +// _changed suffix. +func regRenameNode(req *structs.RegisterRequest) error { + req.Node += "_changed" + for i := range req.Checks { + req.Checks[i].Node = req.Node + } + return nil +} + +// regNode2 option alters the base registration to be on a different node. +func regNode2(req *structs.RegisterRequest) error { + req.Node = "node2" + req.ID = "22222222-2222-3333-4444-555555555555" + for i := range req.Checks { + req.Checks[i].Node = req.Node + } + return nil +} + +// regNodeMeta option alters the base registration node to add some meta data. +func regNodeMeta(req *structs.RegisterRequest) error { + req.NodeMeta = map[string]string{"foo": "bar"} + return nil +} + +// evNodeUnchanged option converts the event to reset the node and node check +// raft indexes to the original value where we expect the node not to have been +// changed in the mutation. +func evNodeUnchanged(e *stream.Event) error { + // If the node wasn't touched, its modified index and check's modified + // indexes should be the original ones. + csn := getPayloadCheckServiceNode(e.Payload) + + // Check this isn't a dereg event with made up/placeholder node info + if csn.Node.CreateIndex == 0 { + return nil + } + csn.Node.CreateIndex = 10 + csn.Node.ModifyIndex = 10 + csn.Checks[0].CreateIndex = 10 + csn.Checks[0].ModifyIndex = 10 + return nil +} + +// evServiceUnchanged option converts the event to reset the service and service +// check raft indexes to the original value where we expect the service record +// not to have been changed in the mutation. +func evServiceUnchanged(e *stream.Event) error { + // If the node wasn't touched, its modified index and check's modified + // indexes should be the original ones. + csn := getPayloadCheckServiceNode(e.Payload) + + csn.Service.CreateIndex = 10 + csn.Service.ModifyIndex = 10 + if len(csn.Checks) > 1 { + csn.Checks[1].CreateIndex = 10 + csn.Checks[1].ModifyIndex = 10 + } + return nil +} + +// evConnectNative option converts the base event to represent a connect-native +// service instance. +func evConnectNative(e *stream.Event) error { + getPayloadCheckServiceNode(e.Payload).Service.Connect.Native = true + return nil +} + +// evConnectTopic option converts the base event to the equivalent event that +// should be published to the connect topic. When needed it should be applied +// first as several other options (notable evSidecar) change behavior subtly +// depending on which topic they are published to and they determin this from +// the event. +func evConnectTopic(e *stream.Event) error { + e.Topic = TopicServiceHealthConnect + return nil +} + +// evSidecar option converts the base event to the health (not connect) event +// expected from the sidecar proxy registration for that service instead. When +// needed it should be applied after any option that changes topic (e.g. +// evConnectTopic) but before other options that might change behavior subtly +// depending on whether it's a sidecar or regular service event (e.g. +// evRenameService). +func evSidecar(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + + svc := csn.Service.Service + + csn.Service.Kind = structs.ServiceKindConnectProxy + csn.Service.ID = svc + "_sidecar_proxy" + csn.Service.Service = svc + "_sidecar_proxy" + csn.Service.Port = 20000 + csn.Service.Port + + csn.Service.Proxy.DestinationServiceName = svc + csn.Service.Proxy.DestinationServiceID = svc + + // Convert the check to point to the right ID now. This isn't totally + // realistic - sidecars should have alias checks etc but this is good enough + // to test this code path. + if len(csn.Checks) >= 2 { + csn.Checks[1].CheckID = types.CheckID("service:" + svc + "_sidecar_proxy") + csn.Checks[1].ServiceID = svc + "_sidecar_proxy" + 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 + } + return nil +} + +// evMutatePort option alters the base event service port by a relative +// amount to simulate a service change. Can be used with evSidecar since it's a +// relative change (+10). +func evMutatePort(e *stream.Event) error { + getPayloadCheckServiceNode(e.Payload).Service.Port += 10 + return nil +} + +// evNodeMutated option alters the base event node to set it's CreateIndex +// (but not modify index) to the setup index. This expresses that we expect the +// node record originally created in setup to have been mutated during the +// update. +func evNodeMutated(e *stream.Event) error { + getPayloadCheckServiceNode(e.Payload).Node.CreateIndex = 10 + return nil +} + +// evServiceMutated option alters the base event service to set it's CreateIndex +// (but not modify index) to the setup index. This expresses that we expect the +// service record originally created in setup to have been mutated during the +// update. +func evServiceMutated(e *stream.Event) error { + getPayloadCheckServiceNode(e.Payload).Service.CreateIndex = 10 + return nil +} + +// evChecksMutated option alters the base event service check to set it's +// CreateIndex (but not modify index) to the setup index. This expresses that we +// expect the service check records originally created in setup to have been +// mutated during the update. NOTE: this must be sequenced after +// evServiceUnchanged if both are used. +func evChecksMutated(e *stream.Event) error { + getPayloadCheckServiceNode(e.Payload).Checks[1].CreateIndex = 10 + getPayloadCheckServiceNode(e.Payload).Checks[1].ModifyIndex = 100 + return nil +} + +// evNodeChecksMutated option alters the base event node check to set it's +// CreateIndex (but not modify index) to the setup index. This expresses that we +// expect the node check records originally created in setup to have been +// mutated during the update. NOTE: this must be sequenced after evNodeUnchanged +// if both are used. +func evNodeChecksMutated(e *stream.Event) error { + getPayloadCheckServiceNode(e.Payload).Checks[0].CreateIndex = 10 + getPayloadCheckServiceNode(e.Payload).Checks[0].ModifyIndex = 100 + return nil +} + +// evChecksUnchanged option alters the base event service to set all check raft +// indexes to the setup index. This expresses that we expect none of the checks +// to have changed in the update. +func evChecksUnchanged(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + for i := range csn.Checks { + csn.Checks[i].CreateIndex = 10 + csn.Checks[i].ModifyIndex = 10 + } + return nil +} + +// evRenameService option alters the base event service to change the service +// 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 { + 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 + // fields necessary to make it work again with the new service name to be sure + // 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 + 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" + } + return nil +} + +// evNodeMeta option alters the base event node to add some meta data. +func evNodeMeta(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + csn.Node.Meta = map[string]string{"foo": "bar"} + return nil +} + +// evRenameNode option alters the base event node name. +func evRenameNode(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + csn.Node.Node += "_changed" + for i := range csn.Checks { + csn.Checks[i].Node = csn.Node.Node + } + return nil +} + +// evNode2 option alters the base event to refer to a different node +func evNode2(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + csn.Node.Node = "node2" + // Only change ID if it's set (e.g. it's not in a deregistration event) + if csn.Node.ID != "" { + csn.Node.ID = "22222222-2222-3333-4444-555555555555" + } + for i := range csn.Checks { + csn.Checks[i].Node = csn.Node.Node + } + return nil +} + +// evNodeCheckFail option alters the base event to set the node-level health +// check to be failing +func evNodeCheckFail(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + csn.Checks[0].Status = api.HealthCritical + return nil +} + +// evNodeCheckDelete option alters the base event to remove the node-level +// health check +func evNodeCheckDelete(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + // Ensure this is idempotent as we sometimes get called multiple times.. + if len(csn.Checks) > 0 && csn.Checks[0].ServiceID == "" { + csn.Checks = csn.Checks[1:] + } + return nil +} + +// evServiceCheckFail option alters the base event to set the service-level health +// check to be failing +func evServiceCheckFail(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + csn.Checks[1].Status = api.HealthCritical + return nil +} + +// evServiceCheckDelete option alters the base event to remove the service-level +// health check +func evServiceCheckDelete(e *stream.Event) error { + csn := getPayloadCheckServiceNode(e.Payload) + // Ensure this is idempotent as we sometimes get called multiple times.. + if len(csn.Checks) > 1 && csn.Checks[1].ServiceID != "" { + csn.Checks = csn.Checks[0:1] + } + 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 +// the node ID and IP address to make it a little more realistic for cases that +// need that. nodeNum should be less than 64k to make the IP address look +// realistic. Any other changes can be made on the returned event to avoid +// adding too many options to callers. +func newTestEventServiceHealthRegister(index uint64, nodeNum int, svc string) stream.Event { + node := fmt.Sprintf("node%d", nodeNum) + nodeID := types.NodeID(fmt.Sprintf("11111111-2222-3333-4444-%012d", nodeNum)) + addr := fmt.Sprintf("10.10.%d.%d", nodeNum/256, nodeNum%256) + + return stream.Event{ + Topic: TopicServiceHealth, + Key: svc, + Index: index, + Payload: eventPayload{ + Op: OpCreate, + Obj: &structs.CheckServiceNode{ + Node: &structs.Node{ + ID: nodeID, + Node: node, + Address: addr, + Datacenter: "dc1", + RaftIndex: structs.RaftIndex{ + CreateIndex: index, + ModifyIndex: index, + }, + }, + Service: &structs.NodeService{ + ID: svc, + Service: svc, + Port: 8080, + Weights: &structs.Weights{ + Passing: 1, + Warning: 1, + }, + RaftIndex: structs.RaftIndex{ + CreateIndex: index, + ModifyIndex: index, + }, + }, + Checks: []*structs.HealthCheck{ + { + Node: node, + CheckID: "serf-health", + Name: "serf-health", + Status: "passing", + RaftIndex: structs.RaftIndex{ + CreateIndex: index, + ModifyIndex: index, + }, + }, + { + Node: node, + CheckID: types.CheckID("service:" + svc), + Name: "service:" + svc, + ServiceID: svc, + ServiceName: svc, + Type: "ttl", + Status: "passing", + RaftIndex: structs.RaftIndex{ + CreateIndex: index, + ModifyIndex: index, + }, + }, + }, + }, + }, + } +} + +// TestEventServiceHealthDeregister returns a realistically populated service +// health deregistration event. The nodeNum is a +// logical node and is used to create the node name ("node%d") but also change +// the node ID and IP address to make it a little more realistic for cases that +// need that. nodeNum should be less than 64k to make the IP address look +// realistic. Any other changes can be made on the returned event to avoid +// adding too many options to callers. +func newTestEventServiceHealthDeregister(index uint64, nodeNum int, svc string) stream.Event { + return stream.Event{ + Topic: TopicServiceHealth, + Key: svc, + Index: index, + Payload: eventPayload{ + Op: OpDelete, + Obj: &structs.CheckServiceNode{ + Node: &structs.Node{ + Node: fmt.Sprintf("node%d", nodeNum), + }, + Service: &structs.NodeService{ + ID: svc, + Service: svc, + Port: 8080, + Weights: &structs.Weights{ + Passing: 1, + Warning: 1, + }, + RaftIndex: structs.RaftIndex{ + // The original insertion index since a delete doesn't update + // this. This magic value came from state store tests where we + // setup at index 10 and then mutate at index 100. It can be + // modified by the caller later and makes it easier than having + // yet another argument in the common case. + CreateIndex: 10, + ModifyIndex: 10, + }, + }, + }, + }, + } +} diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index 1aaa45dd83..8ac0cf57a2 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -165,11 +165,34 @@ func (t topic) String() string { return string(t) } +var ( + // TopicServiceHealth contains events for all registered service instances. + TopicServiceHealth topic = "topic-service-health" + // TopicServiceHealthConnect contains events for connect-enabled service instances. + TopicServiceHealthConnect topic = "topic-service-health-connect" +) + func processDBChanges(tx ReadTxn, changes Changes) ([]stream.Event, error) { - // TODO: add other table handlers here. - return aclChangeUnsubscribeEvent(tx, changes) + var events []stream.Event + fns := []func(tx ReadTxn, changes Changes) ([]stream.Event, error){ + aclChangeUnsubscribeEvent, + ServiceHealthEventsFromChanges, + // TODO: add other table handlers here. + } + for _, fn := range fns { + e, err := fn(tx, changes) + if err != nil { + return nil, err + } + events = append(events, e...) + } + return events, nil } -func newSnapshotHandlers() stream.SnapshotHandlers { - return stream.SnapshotHandlers{} +// TODO: could accept a ReadTxner instead of a Store +func newSnapshotHandlers(s *Store) stream.SnapshotHandlers { + return stream.SnapshotHandlers{ + TopicServiceHealth: s.ServiceHealthSnapshot, + TopicServiceHealthConnect: s.ServiceHealthConnectSnapshot, + } } diff --git a/agent/consul/state/state_store.go b/agent/consul/state/state_store.go index d19922eece..3a7229607c 100644 --- a/agent/consul/state/state_store.go +++ b/agent/consul/state/state_store.go @@ -162,17 +162,17 @@ func NewStateStore(gc *TombstoneGC) (*Store, error) { ctx, cancel := context.WithCancel(context.TODO()) s := &Store{ - schema: schema, - abandonCh: make(chan struct{}), - kvsGraveyard: NewGraveyard(gc), - lockDelay: NewDelay(), - db: &changeTrackerDB{ - db: db, - publisher: stream.NewEventPublisher(ctx, newSnapshotHandlers(), 10*time.Second), - processChanges: processDBChanges, - }, + schema: schema, + abandonCh: make(chan struct{}), + kvsGraveyard: NewGraveyard(gc), + lockDelay: NewDelay(), stopEventPublisher: cancel, } + s.db = &changeTrackerDB{ + db: db, + publisher: stream.NewEventPublisher(ctx, newSnapshotHandlers(s), 10*time.Second), + processChanges: processDBChanges, + } return s, nil } From 09329b542d91cb38466b194a9d4fb6aeebf0560a Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 21 Jul 2020 18:42:26 -0400 Subject: [PATCH 063/122] state: serviceHealthSnapshot refactored to remove unused return value and remove duplication --- agent/consul/state/catalog_events.go | 84 ++++++++++------------------ agent/consul/state/memdb.go | 4 +- 2 files changed, 32 insertions(+), 56 deletions(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index 0214b7ef77..f04f9f60f9 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -6,37 +6,6 @@ import ( memdb "github.com/hashicorp/go-memdb" ) -// ServiceHealthSnapshot is a stream.SnapFn that provides a streaming snapshot -// of stream.Events that describe the current state of a service health query. -func (s *Store) ServiceHealthSnapshot(req stream.SubscribeRequest, buf stream.SnapshotAppender) (uint64, error) { - tx := s.db.Txn(false) - defer tx.Abort() - // TODO(namespace-streaming): plumb entMeta through from SubscribeRequest - idx, nodes, err := checkServiceNodesTxn(tx, nil, req.Key, false, nil) - if err != nil { - return 0, err - } - - _, err = checkServiceNodesToServiceHealth(idx, nodes, buf, TopicServiceHealth) - return idx, err -} - -// ServiceHealthSnapshot is a stream.SnapFn that provides a streaming snapshot -// of stream.Events that describe the current state of a service connect health -// query. -func (s *Store) ServiceHealthConnectSnapshot(req stream.SubscribeRequest, buf stream.SnapshotAppender) (uint64, error) { - tx := s.db.Txn(false) - defer tx.Abort() - // TODO(namespace-streaming): plumb entMeta through from SubscribeRequest - idx, nodes, err := checkServiceNodesTxn(tx, nil, req.Key, true, nil) - if err != nil { - return 0, err - } - - _, err = checkServiceNodesToServiceHealth(idx, nodes, buf, TopicServiceHealthConnect) - return idx, err -} - type changeOp int const ( @@ -50,35 +19,42 @@ type eventPayload struct { Obj interface{} } -// checkServiceNodesToServiceHealth converts a list of structs.CheckServiceNodes -// to stream.ServiceHealth events for streaming. If a non-nil event buffer is -// passed, events are appended to the buffer one at a time and an nil slice is -// returned to avoid keeping a full copy in memory. -func checkServiceNodesToServiceHealth(idx uint64, nodes structs.CheckServiceNodes, - buf stream.SnapshotAppender, topic topic) ([]stream.Event, error) { - var events []stream.Event - for _, n := range nodes { - event := stream.Event{ - Index: idx, - Topic: topic, - Payload: eventPayload{ - Op: OpCreate, - Obj: &n, - }, +// 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 topic) stream.SnapshotFunc { + return func(req stream.SubscribeRequest, buf stream.SnapshotAppender) (index uint64, err error) { + tx := s.db.Txn(false) + defer tx.Abort() + + connect := topic == TopicServiceHealthConnect + // TODO(namespace-streaming): plumb entMeta through from SubscribeRequest + idx, nodes, err := checkServiceNodesTxn(tx, nil, req.Key, connect, nil) + if err != nil { + return 0, err } - if n.Service != nil { - event.Key = n.Service.Service - } + for _, n := range nodes { + event := stream.Event{ + Index: idx, + Topic: topic, + Payload: eventPayload{ + Op: OpCreate, + Obj: &n, + }, + } - // TODO: always called with a non-nil buf? - if buf != nil { + if n.Service != nil { + event.Key = n.Service.Service + } + + // TODO: could all the events be appended as a single item? buf.Append([]stream.Event{event}) - } else { - events = append(events, event) } + + return idx, err } - return events, nil } type nodeServiceTuple struct { diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index 8ac0cf57a2..d16faa6510 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -192,7 +192,7 @@ func processDBChanges(tx ReadTxn, changes Changes) ([]stream.Event, error) { // TODO: could accept a ReadTxner instead of a Store func newSnapshotHandlers(s *Store) stream.SnapshotHandlers { return stream.SnapshotHandlers{ - TopicServiceHealth: s.ServiceHealthSnapshot, - TopicServiceHealthConnect: s.ServiceHealthConnectSnapshot, + TopicServiceHealth: serviceHealthSnapshot(s, TopicServiceHealth), + TopicServiceHealthConnect: serviceHealthSnapshot(s, TopicServiceHealthConnect), } } From 27b02d391c7c28119b753fcbbf948b94ad976504 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 21 Jul 2020 19:39:36 -0400 Subject: [PATCH 064/122] state: use an enum for tracking node changes --- agent/consul/state/catalog_events.go | 61 ++++++++++++++++------------ 1 file changed, 35 insertions(+), 26 deletions(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index f04f9f60f9..731a95d973 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -68,20 +68,19 @@ type nodeServiceTuple struct { func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event, error) { var events []stream.Event - var nodeChanges map[string]*memdb.Change + var nodeChanges map[string]changeType var serviceChanges map[nodeServiceTuple]*memdb.Change - markNode := func(node string, nodeChange *memdb.Change) { + markNode := func(node string, typ changeType) { if nodeChanges == nil { - nodeChanges = make(map[string]*memdb.Change) + nodeChanges = make(map[string]changeType) } // If the caller has an actual node mutation ensure we store it even if the // node is already marked. If the caller is just marking the node dirty // without an node change, don't overwrite any existing node change we know // about. - ch := nodeChanges[node] - if ch == nil { - nodeChanges[node] = nodeChange + if nodeChanges[node] == changeIndirect { + nodeChanges[node] = typ } } markService := func(node, service string, entMeta structs.EnterpriseMeta, svcChange *memdb.Change) { @@ -111,20 +110,11 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // we mark it anyway because if it _is_ a delete then we need to know that // later to avoid trying to deliver events when node level checks mark the // node as "changed". - nRaw := change.After - if change.After == nil { - nRaw = change.Before - } - n := nRaw.(*structs.Node) - changeCopy := change - markNode(n.Node, &changeCopy) + n := changeObject(change).(*structs.Node) + markNode(n.Node, changeTypeFromChange(change)) case "services": - snRaw := change.After - if change.After == nil { - snRaw = change.Before - } - sn := snRaw.(*structs.ServiceNode) + sn := changeObject(change).(*structs.ServiceNode) changeCopy := change markService(sn.Node, sn.ServiceID, sn.EnterpriseMeta, &changeCopy) @@ -140,7 +130,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event after := change.After.(*structs.HealthCheck) if after.ServiceID == "" || before.ServiceID == "" { // Either changed from or to being node-scoped - markNode(after.Node, nil) + markNode(after.Node, changeIndirect) } else { // Check changed which means we just need to emit for the linked // service. @@ -159,7 +149,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event before := change.Before.(*structs.HealthCheck) if before.ServiceID == "" { // Node level check - markNode(before.Node, nil) + markNode(before.Node, changeIndirect) } else { markService(before.Node, before.ServiceID, before.EnterpriseMeta, nil) } @@ -168,7 +158,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event after := change.After.(*structs.HealthCheck) if after.ServiceID == "" { // Node level check - markNode(after.Node, nil) + markNode(after.Node, changeIndirect) } else { markService(after.Node, after.ServiceID, after.EnterpriseMeta, nil) } @@ -177,11 +167,8 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event } // Now act on those marked nodes/services - for node, change := range nodeChanges { - // change may be nil if there was a change that _affected_ the node - // like a change to checks but it didn't actually change the node - // record itself. - if change != nil && change.Deleted() { + for node, changeType := range nodeChanges { + if changeType == changeDelete { // Node deletions are a no-op here since the state store transaction will // have also removed all the service instances which will be handled in // the loop below. @@ -269,6 +256,28 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event return events, nil } +type changeType uint8 + +const ( + // changeIndirect indicates some other object changed which has implications + // for the target object. + changeIndirect changeType = iota + changeDelete + changeCreate + changeUpdate +) + +func changeTypeFromChange(change memdb.Change) changeType { + switch { + case change.Deleted(): + return changeDelete + case change.Created(): + return changeCreate + default: + return changeUpdate + } +} + // serviceHealthToConnectEvents converts already formatted service health // registration events into the ones needed to publish to the Connect topic. // This essentially means filtering out any instances that are not Connect From 7581305523b1898a24cc4f7a22beae547da7973e Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 21 Jul 2020 21:02:22 -0400 Subject: [PATCH 065/122] state: Remove unused args and return values Also rename some functions to identify them as constructors for events --- agent/consul/state/catalog_events.go | 105 +++++++++------------------ 1 file changed, 35 insertions(+), 70 deletions(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index 731a95d973..a08499b11f 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -96,8 +96,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // the service is already marked. If the caller is just marking the service // dirty without an node change, don't overwrite any existing node change we // know about. - ch := serviceChanges[k] - if ch == nil { + if serviceChanges[k] == nil { serviceChanges[k] = svcChange } } @@ -115,7 +114,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event case "services": sn := changeObject(change).(*structs.ServiceNode) - changeCopy := change + changeCopy := change // TODO: why does the change need to be copied? markService(sn.Node, sn.ServiceID, sn.EnterpriseMeta, &changeCopy) case "checks": @@ -145,22 +144,13 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event } } - case change.Deleted(): - before := change.Before.(*structs.HealthCheck) - if before.ServiceID == "" { + case change.Deleted(), change.Created(): + obj := changeObject(change).(*structs.HealthCheck) + if obj.ServiceID == "" { // Node level check - markNode(before.Node, changeIndirect) + markNode(obj.Node, changeIndirect) } else { - markService(before.Node, before.ServiceID, before.EnterpriseMeta, nil) - } - - case change.Created(): - after := change.After.(*structs.HealthCheck) - if after.ServiceID == "" { - // Node level check - markNode(after.Node, changeIndirect) - } else { - markService(after.Node, after.ServiceID, after.EnterpriseMeta, nil) + markService(obj.Node, obj.ServiceID, obj.EnterpriseMeta, nil) } } } @@ -175,7 +165,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event continue } // Rebuild events for all services on this node - es, err := serviceHealthEventsForNode(tx, changes.Index, node) + es, err := newServiceHealthEventsForNode(tx, changes.Index, node) if err != nil { return nil, err } @@ -187,13 +177,9 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // like a change to checks but it didn't actually change the service // record itself. if change != nil && change.Deleted() { - // Generate delete event for the service instance and append it sn := change.Before.(*structs.ServiceNode) - es, err := serviceHealthDeregEventsForServiceInstance(changes.Index, sn, &tuple.EntMeta) - if err != nil { - return nil, err - } - events = append(events, es...) + e := newServiceHealthEventDeregister(changes.Index, sn) + events = append(events, e) continue } @@ -209,11 +195,8 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // go out to subscribers to the new service name topic key, but we need // to fix up subscribers that were watching the old name by sending // deregistrations. - es, err := serviceHealthDeregEventsForServiceInstance(changes.Index, before, &tuple.EntMeta) - if err != nil { - return nil, err - } - events = append(events, es...) + e := newServiceHealthEventDeregister(changes.Index, before) + events = append(events, e) } if before.ServiceKind == structs.ServiceKindConnectProxy && @@ -223,16 +206,10 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // to deregister this sidecar service though as it still exists and // didn't change its name (or if it did that was caught just above). But // our mechanism for connect events is to convert them so we generate - // the regular one, convert it to Connect topic and then discar the + // the regular one, convert it to Connect topic and then discard the // original. - es, err := serviceHealthDeregEventsForServiceInstance(changes.Index, before, &tuple.EntMeta) - if err != nil { - return nil, err - } - // Don't append es per comment above, but convert it to connect topic - // events. - es = serviceHealthToConnectEvents(es) - events = append(events, es...) + e := newServiceHealthEventDeregister(changes.Index, before) + events = append(events, serviceHealthToConnectEvents(e)...) } } @@ -242,16 +219,16 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event continue } // Build service event and append it - es, err := serviceHealthEventsForServiceInstance(tx, changes.Index, tuple) + e, err := newServiceHealthEventForService(tx, changes.Index, tuple) if err != nil { return nil, err } - events = append(events, es...) + events = append(events, e) } // Duplicate any events that affected connect-enabled instances (proxies or // native apps) to the relevant Connect topic. - events = append(events, serviceHealthToConnectEvents(events)...) + events = append(events, serviceHealthToConnectEvents(events...)...) return events, nil } @@ -284,7 +261,7 @@ func changeTypeFromChange(change memdb.Change) changeType { // enabled and so of no interest to those subscribers but also involves // switching connection details to be the proxy instead of the actual instance // in case of a sidecar. -func serviceHealthToConnectEvents(events []stream.Event) []stream.Event { +func serviceHealthToConnectEvents(events ...stream.Event) []stream.Event { serviceHealthConnectEvents := make([]stream.Event, 0, len(events)) for _, event := range events { if event.Topic != TopicServiceHealth { @@ -292,6 +269,7 @@ func serviceHealthToConnectEvents(events []stream.Event) []stream.Event { continue } node := getPayloadCheckServiceNode(event.Payload) + // TODO: do we need to handle gateways here as well? if node.Service == nil || (node.Service.Kind != structs.ServiceKindConnectProxy && !node.Service.Connect.Native) { // Event is not a service instance (i.e. just a node registration) @@ -325,11 +303,11 @@ func getPayloadCheckServiceNode(payload interface{}) *structs.CheckServiceNode { return csn } -// serviceHealthEventsForNode returns health events for all services on the +// newServiceHealthEventsForNode returns health events for all services on the // given node. This mirrors some of the the logic in the oddly-named // parseCheckServiceNodes but is more efficient since we know they are all on // the same node. -func serviceHealthEventsForNode(tx ReadTxn, idx uint64, node string) ([]stream.Event, error) { +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) if err != nil { @@ -345,13 +323,8 @@ func serviceHealthEventsForNode(tx ReadTxn, idx uint64, node string) ([]stream.E for service := services.Next(); service != nil; service = services.Next() { sn := service.(*structs.ServiceNode) - es, err := serviceHealthEventsForServiceNodeInternal(idx, n, sn, nodeChecks, svcChecks) - if err != nil { - return nil, err - } - - // Append to the results. - events = append(events, es...) + event := newServiceHealthEventRegister(idx, n, sn, nodeChecks, svcChecks) + events = append(events, event) } return events, nil @@ -396,31 +369,31 @@ func getNodeAndChecks(tx ReadTxn, node string) (*structs.Node, return n, nodeChecks, svcChecks, nil } -func serviceHealthEventsForServiceInstance(tx ReadTxn, idx uint64, tuple nodeServiceTuple) ([]stream.Event, error) { +func newServiceHealthEventForService(tx ReadTxn, idx uint64, tuple nodeServiceTuple) (stream.Event, error) { n, nodeChecks, svcChecks, err := getNodeAndChecks(tx, tuple.Node) if err != nil { - return nil, err + return stream.Event{}, err } svc, err := getCompoundWithTxn(tx, "services", "id", &tuple.EntMeta, tuple.Node, tuple.ServiceID) if err != nil { - return nil, err + return stream.Event{}, err } sn := svc.Next() if sn == nil { - return nil, ErrMissingService + return stream.Event{}, ErrMissingService } - return serviceHealthEventsForServiceNodeInternal(idx, n, sn.(*structs.ServiceNode), nodeChecks, svcChecks) + return newServiceHealthEventRegister(idx, n, sn.(*structs.ServiceNode), nodeChecks, svcChecks), nil } -func serviceHealthEventsForServiceNodeInternal(idx uint64, +func newServiceHealthEventRegister(idx uint64, node *structs.Node, sn *structs.ServiceNode, nodeChecks structs.HealthChecks, - svcChecks map[string]structs.HealthChecks) ([]stream.Event, error) { - + svcChecks map[string]structs.HealthChecks, +) stream.Event { // Start with a copy of the node checks. checks := nodeChecks for _, check := range svcChecks[sn.ServiceID] { @@ -432,7 +405,7 @@ func serviceHealthEventsForServiceNodeInternal(idx uint64, Service: sn.ToNodeService(), Checks: checks, } - e := stream.Event{ + return stream.Event{ Topic: TopicServiceHealth, Key: sn.ServiceName, Index: idx, @@ -441,16 +414,9 @@ func serviceHealthEventsForServiceNodeInternal(idx uint64, Obj: csn, }, } - - // See if we also need to emit a connect event (i.e. if this instance is a - // connect proxy or connect native app). - - return []stream.Event{e}, nil } -func serviceHealthDeregEventsForServiceInstance(idx uint64, - sn *structs.ServiceNode, entMeta *structs.EnterpriseMeta) ([]stream.Event, error) { - +func newServiceHealthEventDeregister(idx uint64, sn *structs.ServiceNode) stream.Event { // We actually only need the node name populated in the node part as it's only // used as a key to know which service was deregistered so don't bother looking // up the node in the DB. Note that while the ServiceNode does have NodeID @@ -466,7 +432,7 @@ func serviceHealthDeregEventsForServiceInstance(idx uint64, Service: sn.ToNodeService(), } - e := stream.Event{ + return stream.Event{ Topic: TopicServiceHealth, Key: sn.ServiceName, Index: idx, @@ -475,5 +441,4 @@ func serviceHealthDeregEventsForServiceInstance(idx uint64, Obj: csn, }, } - return []stream.Event{e}, nil } From d21024287551db3e85b3d22cf3c9032f557991e2 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Tue, 21 Jul 2020 21:33:50 -0400 Subject: [PATCH 066/122] state: fix a bug in building service health events The nodeCheck slice was being used as the first arg in append, which in some cases will modify the array backing the slice. This would lead to service checks for other services in the wrong event. Also refactor some things to reduce the arguments to functions. --- agent/consul/state/catalog_events.go | 53 +++++++++++++++------------- agent/consul/state/memdb.go | 1 - 2 files changed, 28 insertions(+), 26 deletions(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index a08499b11f..b72b7288c5 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -314,7 +314,7 @@ func newServiceHealthEventsForNode(tx ReadTxn, idx uint64, node string) ([]strea return nil, err } - n, nodeChecks, svcChecks, err := getNodeAndChecks(tx, node) + n, checksFunc, err := getNodeAndChecks(tx, node) if err != nil { return nil, err } @@ -323,33 +323,30 @@ func newServiceHealthEventsForNode(tx ReadTxn, idx uint64, node string) ([]strea for service := services.Next(); service != nil; service = services.Next() { sn := service.(*structs.ServiceNode) - event := newServiceHealthEventRegister(idx, n, sn, nodeChecks, svcChecks) + event := newServiceHealthEventRegister(idx, n, sn, checksFunc(sn.ServiceID)) events = append(events, event) } return events, nil } -// getNodeAndNodeChecks returns a specific node and ALL checks on that node -// (both node specific and service-specific). node-level Checks are returned as -// a slice, service-specific checks as a map of slices with the service id as -// the map key. -func getNodeAndChecks(tx ReadTxn, node string) (*structs.Node, - structs.HealthChecks, map[string]structs.HealthChecks, error) { +// getNodeAndNodeChecks returns a the node structure and a function that returns +// the full list of checks for a specific service on that node. +func getNodeAndChecks(tx ReadTxn, node string) (*structs.Node, serviceChecksFunc, error) { // Fetch the node nodeRaw, err := tx.First("nodes", "id", node) if err != nil { - return nil, nil, nil, err + return nil, nil, err } if nodeRaw == nil { - return nil, nil, nil, ErrMissingNode + return nil, nil, ErrMissingNode } n := nodeRaw.(*structs.Node) // TODO(namespace-streaming): work out what EntMeta is needed here, wildcard? iter, err := catalogListChecksByNode(tx, node, nil) if err != nil { - return nil, nil, nil, err + return nil, nil, err } var nodeChecks structs.HealthChecks @@ -366,11 +363,22 @@ func getNodeAndChecks(tx ReadTxn, node string) (*structs.Node, svcChecks[check.ServiceID] = append(svcChecks[check.ServiceID], check) } } - return n, nodeChecks, svcChecks, nil + serviceChecks := func(serviceID string) structs.HealthChecks { + // Create a new slice so that append does not modify the array backing nodeChecks. + result := make(structs.HealthChecks, 0, len(nodeChecks)) + result = append(result, nodeChecks...) + for _, check := range svcChecks[serviceID] { + result = append(result, check) + } + return result + } + return n, serviceChecks, nil } +type serviceChecksFunc func(serviceID string) structs.HealthChecks + func newServiceHealthEventForService(tx ReadTxn, idx uint64, tuple nodeServiceTuple) (stream.Event, error) { - n, nodeChecks, svcChecks, err := getNodeAndChecks(tx, tuple.Node) + n, checksFunc, err := getNodeAndChecks(tx, tuple.Node) if err != nil { return stream.Event{}, err } @@ -380,26 +388,21 @@ func newServiceHealthEventForService(tx ReadTxn, idx uint64, tuple nodeServiceTu return stream.Event{}, err } - sn := svc.Next() - if sn == nil { + raw := svc.Next() + if raw == nil { return stream.Event{}, ErrMissingService } - return newServiceHealthEventRegister(idx, n, sn.(*structs.ServiceNode), nodeChecks, svcChecks), nil + sn := raw.(*structs.ServiceNode) + return newServiceHealthEventRegister(idx, n, sn, checksFunc(sn.ServiceID)), nil } -func newServiceHealthEventRegister(idx uint64, +func newServiceHealthEventRegister( + idx uint64, node *structs.Node, sn *structs.ServiceNode, - nodeChecks structs.HealthChecks, - svcChecks map[string]structs.HealthChecks, + checks structs.HealthChecks, ) stream.Event { - // Start with a copy of the node checks. - checks := nodeChecks - for _, check := range svcChecks[sn.ServiceID] { - checks = append(checks, check) - } - csn := &structs.CheckServiceNode{ Node: node, Service: sn.ToNodeService(), diff --git a/agent/consul/state/memdb.go b/agent/consul/state/memdb.go index d16faa6510..3fd72dfaa7 100644 --- a/agent/consul/state/memdb.go +++ b/agent/consul/state/memdb.go @@ -189,7 +189,6 @@ func processDBChanges(tx ReadTxn, changes Changes) ([]stream.Event, error) { return events, nil } -// TODO: could accept a ReadTxner instead of a Store func newSnapshotHandlers(s *Store) stream.SnapshotHandlers { return stream.SnapshotHandlers{ TopicServiceHealth: serviceHealthSnapshot(s, TopicServiceHealth), From 01424ba1466048df0daf77392919d22ba5d3e5c1 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 22 Jul 2020 18:01:40 -0400 Subject: [PATCH 067/122] don't over allocate slice --- agent/consul/state/catalog_events.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index b72b7288c5..8e3e730b1f 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -262,7 +262,7 @@ func changeTypeFromChange(change memdb.Change) changeType { // switching connection details to be the proxy instead of the actual instance // in case of a sidecar. func serviceHealthToConnectEvents(events ...stream.Event) []stream.Event { - serviceHealthConnectEvents := make([]stream.Event, 0, len(events)) + var serviceHealthConnectEvents []stream.Event for _, event := range events { if event.Topic != TopicServiceHealth { // Skip non-health or any events already emitted to Connect topic From 417c5c93a80e60cb5534f4785d6f3826d55a90e4 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 22 Jul 2020 18:41:22 -0400 Subject: [PATCH 068/122] state: use changeType in serviceChanges To be a little more explicit, instead of nil implying an indirect change --- agent/consul/state/catalog_events.go | 60 ++++++++++++++++++---------- 1 file changed, 39 insertions(+), 21 deletions(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index 8e3e730b1f..0e8766fe18 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -63,13 +63,36 @@ type nodeServiceTuple struct { EntMeta structs.EnterpriseMeta } +func newNodeServiceTupleFromServiceNode(sn *structs.ServiceNode) nodeServiceTuple { + return nodeServiceTuple{ + Node: sn.Node, + ServiceID: sn.ServiceID, + EntMeta: sn.EnterpriseMeta, + } +} + +func newNodeServiceTupleFromServiceHealthCheck(hc *structs.HealthCheck) nodeServiceTuple { + return nodeServiceTuple{ + Node: hc.Node, + ServiceID: hc.ServiceID, + EntMeta: hc.EnterpriseMeta, + } +} + +type serviceChange struct { + changeType changeType + change memdb.Change +} + +var serviceChangeIndirect = serviceChange{changeType: changeIndirect} + // ServiceHealthEventsFromChanges returns all the service and Connect health // events that should be emitted given a set of changes to the state store. func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event, error) { var events []stream.Event var nodeChanges map[string]changeType - var serviceChanges map[nodeServiceTuple]*memdb.Change + var serviceChanges map[nodeServiceTuple]serviceChange markNode := func(node string, typ changeType) { if nodeChanges == nil { @@ -83,21 +106,16 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event nodeChanges[node] = typ } } - markService := func(node, service string, entMeta structs.EnterpriseMeta, svcChange *memdb.Change) { + markService := func(key nodeServiceTuple, svcChange serviceChange) { if serviceChanges == nil { - serviceChanges = make(map[nodeServiceTuple]*memdb.Change) - } - k := nodeServiceTuple{ - Node: node, - ServiceID: service, - EntMeta: entMeta, + serviceChanges = make(map[nodeServiceTuple]serviceChange) } // If the caller has an actual service mutation ensure we store it even if // the service is already marked. If the caller is just marking the service // dirty without an node change, don't overwrite any existing node change we // know about. - if serviceChanges[k] == nil { - serviceChanges[k] = svcChange + if serviceChanges[key].changeType == changeIndirect { + serviceChanges[key] = svcChange } } @@ -114,8 +132,8 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event case "services": sn := changeObject(change).(*structs.ServiceNode) - changeCopy := change // TODO: why does the change need to be copied? - markService(sn.Node, sn.ServiceID, sn.EnterpriseMeta, &changeCopy) + srvChange := serviceChange{changeType: changeTypeFromChange(change), change: change} + markService(newNodeServiceTupleFromServiceNode(sn), srvChange) case "checks": // For health we only care about the scope for now to know if it's just @@ -133,14 +151,14 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event } else { // Check changed which means we just need to emit for the linked // service. - markService(after.Node, after.ServiceID, after.EnterpriseMeta, nil) + markService(newNodeServiceTupleFromServiceHealthCheck(after), serviceChangeIndirect) // Edge case - if the check with same ID was updated to link to a // different service ID but the old service with old ID still exists, // then the old service instance needs updating too as it has one // fewer checks now. if before.ServiceID != after.ServiceID { - markService(before.Node, before.ServiceID, before.EnterpriseMeta, nil) + markService(newNodeServiceTupleFromServiceHealthCheck(before), serviceChangeIndirect) } } @@ -150,7 +168,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // Node level check markNode(obj.Node, changeIndirect) } else { - markService(obj.Node, obj.ServiceID, obj.EnterpriseMeta, nil) + markService(newNodeServiceTupleFromServiceHealthCheck(obj), serviceChangeIndirect) } } } @@ -172,12 +190,12 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event events = append(events, es...) } - for tuple, change := range serviceChanges { + for tuple, srvChange := range serviceChanges { // change may be nil if there was a change that _affected_ the service // like a change to checks but it didn't actually change the service // record itself. - if change != nil && change.Deleted() { - sn := change.Before.(*structs.ServiceNode) + if srvChange.changeType == changeDelete { + sn := srvChange.change.Before.(*structs.ServiceNode) e := newServiceHealthEventDeregister(changes.Index, sn) events = append(events, e) continue @@ -186,9 +204,9 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event // Check if this was a service mutation that changed it's name which // requires special handling even if node changed and new events were // already published. - if change != nil && change.Updated() { - before := change.Before.(*structs.ServiceNode) - after := change.After.(*structs.ServiceNode) + if srvChange.changeType == changeUpdate { + before := srvChange.change.Before.(*structs.ServiceNode) + after := srvChange.change.After.(*structs.ServiceNode) if before.ServiceName != after.ServiceName { // Service was renamed, the code below will ensure the new registrations From 3775392fb504a5dfbe646e507c109b3f96b91c8b Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Fri, 7 Aug 2020 13:00:39 -0400 Subject: [PATCH 069/122] state: improve comments in catalog_events.go Co-authored-by: Paul Banks --- agent/consul/state/catalog_events.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index 0e8766fe18..2e6148f73a 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -49,7 +49,8 @@ func serviceHealthSnapshot(s *Store, topic topic) stream.SnapshotFunc { event.Key = n.Service.Service } - // TODO: could all the events be appended as a single item? + // 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}) } @@ -100,7 +101,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event } // If the caller has an actual node mutation ensure we store it even if the // node is already marked. If the caller is just marking the node dirty - // without an node change, don't overwrite any existing node change we know + // without a node change, don't overwrite any existing node change we know // about. if nodeChanges[node] == changeIndirect { nodeChanges[node] = typ @@ -112,7 +113,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event } // If the caller has an actual service mutation ensure we store it even if // the service is already marked. If the caller is just marking the service - // dirty without an node change, don't overwrite any existing node change we + // dirty without a service change, don't overwrite any existing service change we // know about. if serviceChanges[key].changeType == changeIndirect { serviceChanges[key] = svcChange @@ -146,7 +147,7 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event before := change.Before.(*structs.HealthCheck) after := change.After.(*structs.HealthCheck) if after.ServiceID == "" || before.ServiceID == "" { - // Either changed from or to being node-scoped + // check before and/or after is node-scoped markNode(after.Node, changeIndirect) } else { // Check changed which means we just need to emit for the linked From e573e64d582d751783abefc50046c70402e0a393 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Fri, 7 Aug 2020 14:18:24 -0400 Subject: [PATCH 070/122] state: handle terminating gateways in service health events --- agent/consul/state/catalog_events.go | 55 ++++++++++++++++------------ 1 file changed, 32 insertions(+), 23 deletions(-) diff --git a/agent/consul/state/catalog_events.go b/agent/consul/state/catalog_events.go index 2e6148f73a..b42d47fc64 100644 --- a/agent/consul/state/catalog_events.go +++ b/agent/consul/state/catalog_events.go @@ -218,17 +218,8 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event events = append(events, e) } - if before.ServiceKind == structs.ServiceKindConnectProxy && - before.ServiceProxy.DestinationServiceName != after.ServiceProxy.DestinationServiceName { - // Connect proxy changed the service it is representing, need to issue a - // dereg for the old service on the Connect topic. We don't actually need - // to deregister this sidecar service though as it still exists and - // didn't change its name (or if it did that was caught just above). But - // our mechanism for connect events is to convert them so we generate - // the regular one, convert it to Connect topic and then discard the - // original. - e := newServiceHealthEventDeregister(changes.Index, before) - events = append(events, serviceHealthToConnectEvents(e)...) + if e, ok := isConnectProxyDestinationServiceChange(changes.Index, before, after); ok { + events = append(events, e) } } @@ -252,6 +243,22 @@ func ServiceHealthEventsFromChanges(tx ReadTxn, changes Changes) ([]stream.Event return events, nil } +// isConnectProxyDestinationServiceChange handles the case where a Connect proxy changed +// the service it is proxying. We need to issue a de-registration for the old +// service on the Connect topic. We don't actually need to deregister this sidecar +// service though as it still exists and didn't change its name. +func isConnectProxyDestinationServiceChange(idx uint64, before, after *structs.ServiceNode) (stream.Event, bool) { + if before.ServiceKind != structs.ServiceKindConnectProxy || + before.ServiceProxy.DestinationServiceName == after.ServiceProxy.DestinationServiceName { + return stream.Event{}, false + } + + e := newServiceHealthEventDeregister(idx, before) + e.Topic = TopicServiceHealthConnect + e.Key = getPayloadCheckServiceNode(e.Payload).Service.Proxy.DestinationServiceName + return e, true +} + type changeType uint8 const ( @@ -281,33 +288,35 @@ func changeTypeFromChange(change memdb.Change) changeType { // switching connection details to be the proxy instead of the actual instance // in case of a sidecar. func serviceHealthToConnectEvents(events ...stream.Event) []stream.Event { - var serviceHealthConnectEvents []stream.Event + var result []stream.Event for _, event := range events { if event.Topic != TopicServiceHealth { // Skip non-health or any events already emitted to Connect topic continue } node := getPayloadCheckServiceNode(event.Payload) - // TODO: do we need to handle gateways here as well? - if node.Service == nil || - (node.Service.Kind != structs.ServiceKindConnectProxy && !node.Service.Connect.Native) { - // Event is not a service instance (i.e. just a node registration) - // or is not a service that is not connect-enabled in some way. + if node.Service == nil { continue } connectEvent := event connectEvent.Topic = TopicServiceHealthConnect - // If this is a proxy, set the key to the destination service name. - if node.Service.Kind == structs.ServiceKindConnectProxy { - connectEvent.Key = node.Service.Proxy.DestinationServiceName - } + switch { + case node.Service.Connect.Native: + result = append(result, connectEvent) - serviceHealthConnectEvents = append(serviceHealthConnectEvents, connectEvent) + case node.Service.Kind == structs.ServiceKindConnectProxy: + connectEvent.Key = node.Service.Proxy.DestinationServiceName + result = append(result, connectEvent) + + default: + // ServiceKindTerminatingGateway changes are handled separately. + // All other cases are not relevant to the connect topic + } } - return serviceHealthConnectEvents + return result } func getPayloadCheckServiceNode(payload interface{}) *structs.CheckServiceNode { From 959d9913b891ecb0f67bd564a6591df5685e786c Mon Sep 17 00:00:00 2001 From: freddygv Date: Thu, 3 Sep 2020 16:19:58 -0600 Subject: [PATCH 071/122] Add server receiver to routes and log tgw err --- agent/xds/routes.go | 10 +++++++--- agent/xds/routes_test.go | 7 ++++++- agent/xds/server.go | 2 +- 3 files changed, 14 insertions(+), 5 deletions(-) diff --git a/agent/xds/routes.go b/agent/xds/routes.go index 0f73e2bb47..3c3e79222f 100644 --- a/agent/xds/routes.go +++ b/agent/xds/routes.go @@ -3,6 +3,7 @@ package xds import ( "errors" "fmt" + "github.com/hashicorp/consul/logging" "net" "strings" @@ -18,7 +19,7 @@ import ( // routesFromSnapshot returns the xDS API representation of the "routes" in the // snapshot. -func routesFromSnapshot(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { +func (s *Server) routesFromSnapshot(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { if cfgSnap == nil { return nil, errors.New("nil config given") } @@ -29,7 +30,7 @@ func routesFromSnapshot(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) case structs.ServiceKindIngressGateway: return routesForIngressGateway(cInfo, cfgSnap.IngressGateway.Upstreams, cfgSnap.IngressGateway.DiscoveryChain) case structs.ServiceKindTerminatingGateway: - return routesFromSnapshotTerminatingGateway(cInfo, cfgSnap) + return s.routesFromSnapshotTerminatingGateway(cInfo, cfgSnap) default: return nil, fmt.Errorf("Invalid service kind: %v", cfgSnap.Kind) } @@ -37,10 +38,11 @@ func routesFromSnapshot(cInfo connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) // routesFromSnapshotTerminatingGateway returns the xDS API representation of the "routes" in the snapshot. // For any HTTP service we will return a default route. -func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { +func (s *Server) routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.ConfigSnapshot) ([]proto.Message, error) { if cfgSnap == nil { return nil, errors.New("nil config given") } + logger := s.Logger.Named(logging.TerminatingGateway) var resources []proto.Message for _, svc := range cfgSnap.TerminatingGateway.ValidServices() { @@ -69,6 +71,7 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co } route, err := makeNamedDefaultRouteWithLB(clusterName, lb) if err != nil { + logger.Error("failed to make route", "cluster", clusterName, "error", err) continue } resources = append(resources, route) @@ -78,6 +81,7 @@ func routesFromSnapshotTerminatingGateway(_ connectionInfo, cfgSnap *proxycfg.Co clusterName = connect.ServiceSNI(svc.Name, name, svc.NamespaceOrDefault(), cfgSnap.Datacenter, cfgSnap.Roots.TrustDomain) route, err := makeNamedDefaultRouteWithLB(clusterName, lb) if err != nil { + logger.Error("failed to make route", "cluster", clusterName, "error", err) continue } resources = append(resources, route) diff --git a/agent/xds/routes_test.go b/agent/xds/routes_test.go index 5181023215..600d8ee6d5 100644 --- a/agent/xds/routes_test.go +++ b/agent/xds/routes_test.go @@ -14,6 +14,7 @@ import ( "github.com/hashicorp/consul/agent/proxycfg" "github.com/hashicorp/consul/agent/structs" "github.com/hashicorp/consul/agent/xds/proxysupport" + "github.com/hashicorp/consul/sdk/testutil" testinf "github.com/mitchellh/go-testing-interface" "github.com/stretchr/testify/require" ) @@ -257,11 +258,15 @@ func TestRoutesFromSnapshot(t *testing.T) { tt.setup(snap) } + logger := testutil.Logger(t) + s := Server{ + Logger: logger, + } cInfo := connectionInfo{ Token: "my-token", ProxyFeatures: sf, } - routes, err := routesFromSnapshot(cInfo, snap) + routes, err := s.routesFromSnapshot(cInfo, snap) require.NoError(err) sort.Slice(routes, func(i, j int) bool { return routes[i].(*envoy.RouteConfiguration).Name < routes[j].(*envoy.RouteConfiguration).Name diff --git a/agent/xds/server.go b/agent/xds/server.go index 8eaa299d91..ed148da495 100644 --- a/agent/xds/server.go +++ b/agent/xds/server.go @@ -218,7 +218,7 @@ func (s *Server) process(stream ADSStream, reqCh <-chan *envoy.DiscoveryRequest) }, RouteType: { typeURL: RouteType, - resources: routesFromSnapshot, + resources: s.routesFromSnapshot, stream: stream, allowEmptyFn: func(cfgSnap *proxycfg.ConfigSnapshot) bool { return cfgSnap.Kind == structs.ServiceKindIngressGateway From 9fb76d7bb530d3bdf0cc6c7df84c45279bb7263d Mon Sep 17 00:00:00 2001 From: Alvin Huang <17609145+alvin-huang@users.noreply.github.com> Date: Thu, 3 Sep 2020 23:40:23 -0400 Subject: [PATCH 072/122] switch to new aws account s3 bucket for dev artifacts (#8612) --- .circleci/config.yml | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index adb1cf6cd0..a2fc6be8a6 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -19,7 +19,7 @@ references: EMAIL: noreply@hashicorp.com GIT_AUTHOR_NAME: circleci-consul GIT_COMMITTER_NAME: circleci-consul - S3_ARTIFACT_BUCKET: consul-dev-artifacts + S3_ARTIFACT_BUCKET: consul-dev-artifacts-v2 BASH_ENV: .circleci/bash_env.sh VAULT_BINARY_VERSION: 1.2.2 @@ -33,6 +33,27 @@ steps: curl -sSL "${url}/v${GOTESTSUM_RELEASE}/gotestsum_${GOTESTSUM_RELEASE}_linux_amd64.tar.gz" | \ sudo tar -xz --overwrite -C /usr/local/bin gotestsum + get-aws-cli: &get-aws-cli + run: + name: download and install AWS CLI + command: | + curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" + echo -e "${AWS_CLI_GPG_KEY}" | gpg --import + curl -o awscliv2.sig https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip.sig + gpg --verify awscliv2.sig awscliv2.zip + unzip awscliv2.zip + sudo ./aws/install + + aws-assume-role: &aws-assume-role + run: + name: assume-role aws creds + command: | + # assume role has duration of 15 min (the minimum allowed) + CREDENTIALS="$(aws sts assume-role --duration-seconds 900 --role-arn ${ROLE_ARN} --role-session-name build-${CIRCLE_SHA1} | jq '.Credentials')" + echo "export AWS_ACCESS_KEY_ID=$(echo $CREDENTIALS | jq -r '.AccessKeyId')" >> $BASH_ENV + echo "export AWS_SECRET_ACCESS_KEY=$(echo $CREDENTIALS | jq -r '.SecretAccessKey')" >> $BASH_ENV + echo "export AWS_SESSION_TOKEN=$(echo $CREDENTIALS | jq -r '.SessionToken')" >> $BASH_ENV + # This step MUST be at the end of any set of steps due to the 'when' condition notify-slack-failure: ¬ify-slack-failure name: notify-slack-failure @@ -389,13 +410,12 @@ jobs: # upload development build to s3 dev-upload-s3: docker: - - image: circleci/python:stretch + - image: *GOLANG_IMAGE environment: <<: *ENVIRONMENT steps: - - run: - name: Install awscli - command: sudo pip install awscli + - *get-aws-cli + - *aws-assume-role # get consul binary - attach_workspace: at: bin/ From 436a7032d1fd39668406870dfa88f8405b20ff00 Mon Sep 17 00:00:00 2001 From: Hans Hasselberg Date: Fri, 4 Sep 2020 11:47:16 +0200 Subject: [PATCH 073/122] secondaryIntermediateCertRenewalWatch abort on success (#8588) secondaryIntermediateCertRenewalWatch was using `retryLoopBackoff` to renew the intermediate certificate. Once it entered the inner loop and started `retryLoopBackoff` it would never leave that. `retryLoopBackoffAbortOnSuccess` will return when renewing is successful, like it was intended originally. --- agent/consul/leader_connect.go | 12 ++++++++- agent/consul/leader_connect_test.go | 41 +++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/agent/consul/leader_connect.go b/agent/consul/leader_connect.go index fcad53d65b..3a7a1ce970 100644 --- a/agent/consul/leader_connect.go +++ b/agent/consul/leader_connect.go @@ -653,7 +653,7 @@ func (s *Server) secondaryIntermediateCertRenewalWatch(ctx context.Context) erro case <-ctx.Done(): return nil case <-time.After(structs.IntermediateCertRenewInterval): - retryLoopBackoff(ctx, func() error { + retryLoopBackoffAbortOnSuccess(ctx, func() error { s.caProviderReconfigurationLock.Lock() defer s.caProviderReconfigurationLock.Unlock() @@ -835,6 +835,14 @@ func (s *Server) replicateIntentions(ctx context.Context) error { // retryLoopBackoff loops a given function indefinitely, backing off exponentially // upon errors up to a maximum of maxRetryBackoff seconds. func retryLoopBackoff(ctx context.Context, loopFn func() error, errFn func(error)) { + retryLoopBackoffHandleSuccess(ctx, loopFn, errFn, false) +} + +func retryLoopBackoffAbortOnSuccess(ctx context.Context, loopFn func() error, errFn func(error)) { + retryLoopBackoffHandleSuccess(ctx, loopFn, errFn, true) +} + +func retryLoopBackoffHandleSuccess(ctx context.Context, loopFn func() error, errFn func(error), abortOnSuccess bool) { var failedAttempts uint limiter := rate.NewLimiter(loopRateLimit, retryBucketSize) for { @@ -861,6 +869,8 @@ func retryLoopBackoff(ctx context.Context, loopFn func() error, errFn func(error case <-timer.C: continue } + } else if abortOnSuccess { + return } // Reset the failed attempts after a successful run. diff --git a/agent/consul/leader_connect_test.go b/agent/consul/leader_connect_test.go index 0f8edc470d..c4852d57a7 100644 --- a/agent/consul/leader_connect_test.go +++ b/agent/consul/leader_connect_test.go @@ -1,6 +1,7 @@ package consul import ( + "context" "crypto/x509" "fmt" "io/ioutil" @@ -1442,3 +1443,43 @@ func TestLeader_lessThanHalfTimePassed(t *testing.T) { require.True(t, lessThanHalfTimePassed(now, now.Add(-10*time.Second), now.Add(20*time.Second))) } + +func TestLeader_retryLoopBackoffHandleSuccess(t *testing.T) { + type test struct { + desc string + loopFn func() error + abort bool + timedOut bool + } + success := func() error { + return nil + } + failure := func() error { + return fmt.Errorf("test error") + } + tests := []test{ + {"loop without error and no abortOnSuccess keeps running", success, false, true}, + {"loop with error and no abortOnSuccess keeps running", failure, false, true}, + {"loop without error and abortOnSuccess is stopped", success, true, false}, + {"loop with error and abortOnSuccess keeps running", failure, true, true}, + } + for _, tc := range tests { + tc := tc + t.Run(tc.desc, func(t *testing.T) { + ctx, cancel := context.WithTimeout(context.Background(), 50*time.Millisecond) + defer cancel() + + retryLoopBackoffHandleSuccess(ctx, tc.loopFn, func(_ error) {}, tc.abort) + select { + case <-ctx.Done(): + if !tc.timedOut { + t.Fatal("should not have timed out") + } + default: + if tc.timedOut { + t.Fatal("should have timed out") + } + } + }) + } +} From 2651f734a67d0994a5bd36dfe8706e8c9968bab9 Mon Sep 17 00:00:00 2001 From: Alvin Huang <17609145+alvin-huang@users.noreply.github.com> Date: Fri, 4 Sep 2020 10:42:18 -0400 Subject: [PATCH 074/122] add checkout to dev-upload-s3 (#8617) --- .circleci/config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index a2fc6be8a6..06bcda1f4f 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -414,6 +414,7 @@ jobs: environment: <<: *ENVIRONMENT steps: + - checkout - *get-aws-cli - *aws-assume-role # get consul binary From 7cde9c67886246192a072983aedd6639a2ae9d61 Mon Sep 17 00:00:00 2001 From: "R.B. Boyer" Date: Fri, 4 Sep 2020 11:24:11 -0500 Subject: [PATCH 075/122] sdk: also print test agent logs in verbose mode (#8616) --- sdk/testutil/testlog.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk/testutil/testlog.go b/sdk/testutil/testlog.go index a16396cb81..9e9ea0c995 100644 --- a/sdk/testutil/testlog.go +++ b/sdk/testutil/testlog.go @@ -25,8 +25,8 @@ func LoggerWithOutput(t testing.TB, output io.Writer) hclog.InterceptLogger { var sendTestLogsToStdout = os.Getenv("NOLOGBUFFER") == "1" // NewLogBuffer returns an io.Writer which buffers all writes. When the test -// ends, t.Failed is checked. If the test has failed all log output is printed -// to stdout. +// ends, t.Failed is checked. If the test has failed or has been run in verbose +// mode all log output is printed to stdout. // // Set the env var NOLOGBUFFER=1 to disable buffering, resulting in all log // output being written immediately to stdout. @@ -36,7 +36,7 @@ func NewLogBuffer(t CleanupT) io.Writer { } buf := &logBuffer{buf: new(bytes.Buffer)} t.Cleanup(func() { - if t.Failed() { + if t.Failed() || testing.Verbose() { buf.Lock() defer buf.Unlock() buf.buf.WriteTo(os.Stdout) From 403a18043045dde24e34587a0e9b8ce4d177b51c Mon Sep 17 00:00:00 2001 From: freddygv Date: Fri, 4 Sep 2020 12:45:05 -0600 Subject: [PATCH 076/122] Set tgw filter router config name to cluster name --- agent/xds/listeners.go | 55 +++++++++---------- ...ateway-service-subsets.envoy-1-12-x.golden | 6 +- ...ateway-service-subsets.envoy-1-13-x.golden | 6 +- ...ateway-service-subsets.envoy-1-14-x.golden | 6 +- ...ateway-service-subsets.envoy-1-15-x.golden | 6 +- 5 files changed, 38 insertions(+), 41 deletions(-) diff --git a/agent/xds/listeners.go b/agent/xds/listeners.go index cfdfd4d7f3..64ea872680 100644 --- a/agent/xds/listeners.go +++ b/agent/xds/listeners.go @@ -317,6 +317,7 @@ func (s *Server) makeIngressGatewayListeners(address string, cfgSnap *proxycfg.C useRDS: true, protocol: listenerKey.Protocol, filterName: listenerKey.RouteName(), + routeName: listenerKey.RouteName(), cluster: "", statPrefix: "ingress_upstream_", routePath: "", @@ -557,6 +558,7 @@ func (s *Server) makePublicListener(cInfo connectionInfo, cfgSnap *proxycfg.Conf useRDS: false, protocol: cfg.Protocol, filterName: "public_listener", + routeName: "public_listener", cluster: LocalAppClusterName, statPrefix: "", routePath: "", @@ -651,6 +653,7 @@ func (s *Server) makeExposedCheckListener(cfgSnap *proxycfg.ConfigSnapshot, clus useRDS: false, protocol: path.Protocol, filterName: filterName, + routeName: filterName, cluster: cluster, statPrefix: "", routePath: path.Path, @@ -822,6 +825,7 @@ func (s *Server) makeFilterChainTerminatingGateway( opts := listenerFilterOpts{ protocol: protocol, filterName: listener, + routeName: cluster, // Set cluster name for route config since each will have its own cluster: cluster, statPrefix: statPrefix, routePath: "", @@ -1001,6 +1005,7 @@ func (s *Server) makeUpstreamListenerForDiscoveryChain( useRDS: useRDS, protocol: cfg.Protocol, filterName: upstreamID, + routeName: upstreamID, cluster: clusterName, statPrefix: "upstream_", routePath: "", @@ -1074,6 +1079,7 @@ type listenerFilterOpts struct { useRDS bool protocol string filterName string + routeName string cluster string statPrefix string routePath string @@ -1083,12 +1089,8 @@ type listenerFilterOpts struct { func makeListenerFilter(opts listenerFilterOpts) (*envoylistener.Filter, error) { switch opts.protocol { - case "grpc": - return makeHTTPFilter(opts.useRDS, opts.filterName, opts.cluster, opts.statPrefix, opts.routePath, opts.ingress, true, true, opts.httpAuthzFilter) - case "http2": - return makeHTTPFilter(opts.useRDS, opts.filterName, opts.cluster, opts.statPrefix, opts.routePath, opts.ingress, false, true, opts.httpAuthzFilter) - case "http": - return makeHTTPFilter(opts.useRDS, opts.filterName, opts.cluster, opts.statPrefix, opts.routePath, opts.ingress, false, false, opts.httpAuthzFilter) + case "grpc", "http2", "http": + return makeHTTPFilter(opts) case "tcp": fallthrough default: @@ -1131,23 +1133,18 @@ func makeStatPrefix(protocol, prefix, filterName string) string { return fmt.Sprintf("%s%s_%s", prefix, strings.Replace(filterName, ":", "_", -1), protocol) } -func makeHTTPFilter( - useRDS bool, - filterName, cluster, statPrefix, routePath string, - ingress, grpc, http2 bool, - authzFilter *envoyhttp.HttpFilter, -) (*envoylistener.Filter, error) { +func makeHTTPFilter(opts listenerFilterOpts) (*envoylistener.Filter, error) { op := envoyhttp.HttpConnectionManager_Tracing_INGRESS - if !ingress { + if !opts.ingress { op = envoyhttp.HttpConnectionManager_Tracing_EGRESS } proto := "http" - if grpc { - proto = "grpc" + if opts.protocol == "grpc" { + proto = opts.protocol } cfg := &envoyhttp.HttpConnectionManager{ - StatPrefix: makeStatPrefix(proto, statPrefix, filterName), + StatPrefix: makeStatPrefix(proto, opts.statPrefix, opts.filterName), CodecType: envoyhttp.HttpConnectionManager_AUTO, HttpFilters: []*envoyhttp.HttpFilter{ { @@ -1163,13 +1160,13 @@ func makeHTTPFilter( }, } - if useRDS { - if cluster != "" { + if opts.useRDS { + if opts.cluster != "" { return nil, fmt.Errorf("cannot specify cluster name when using RDS") } cfg.RouteSpecifier = &envoyhttp.HttpConnectionManager_Rds{ Rds: &envoyhttp.Rds{ - RouteConfigName: filterName, + RouteConfigName: opts.routeName, ConfigSource: &envoycore.ConfigSource{ ConfigSourceSpecifier: &envoycore.ConfigSource_Ads{ Ads: &envoycore.AggregatedConfigSource{}, @@ -1178,7 +1175,7 @@ func makeHTTPFilter( }, } } else { - if cluster == "" { + if opts.cluster == "" { return nil, fmt.Errorf("must specify cluster name when not using RDS") } route := &envoyroute.Route{ @@ -1195,22 +1192,22 @@ func makeHTTPFilter( Action: &envoyroute.Route_Route{ Route: &envoyroute.RouteAction{ ClusterSpecifier: &envoyroute.RouteAction_Cluster{ - Cluster: cluster, + Cluster: opts.cluster, }, }, }, } // If a path is provided, do not match on a catch-all prefix - if routePath != "" { - route.Match.PathSpecifier = &envoyroute.RouteMatch_Path{Path: routePath} + if opts.routePath != "" { + route.Match.PathSpecifier = &envoyroute.RouteMatch_Path{Path: opts.routePath} } cfg.RouteSpecifier = &envoyhttp.HttpConnectionManager_RouteConfig{ RouteConfig: &envoy.RouteConfiguration{ - Name: filterName, + Name: opts.routeName, VirtualHosts: []*envoyroute.VirtualHost{ { - Name: filterName, + Name: opts.filterName, Domains: []string{"*"}, Routes: []*envoyroute.Route{ route, @@ -1221,7 +1218,7 @@ func makeHTTPFilter( } } - if http2 { + if opts.protocol == "http2" || opts.protocol == "grpc" { cfg.Http2ProtocolOptions = &envoycore.Http2ProtocolOptions{} } @@ -1229,11 +1226,11 @@ func makeHTTPFilter( // (other than the "envoy.grpc_http1_bridge" filter) in the http filter // chain of a public listener is the authz filter to prevent unauthorized // access and that every filter chain uses our TLS certs. - if authzFilter != nil { - cfg.HttpFilters = append([]*envoyhttp.HttpFilter{authzFilter}, cfg.HttpFilters...) + if opts.httpAuthzFilter != nil { + cfg.HttpFilters = append([]*envoyhttp.HttpFilter{opts.httpAuthzFilter}, cfg.HttpFilters...) } - if grpc { + if opts.protocol == "grpc" { // Add grpc bridge before router and authz cfg.HttpFilters = append([]*envoyhttp.HttpFilter{{ Name: "envoy.grpc_http1_bridge", diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden index c6ab6ce7c5..9947e4838b 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-12-x.golden @@ -202,7 +202,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -264,7 +264,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -326,7 +326,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden index c6ab6ce7c5..9947e4838b 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-13-x.golden @@ -202,7 +202,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -264,7 +264,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -326,7 +326,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden index c6ab6ce7c5..9947e4838b 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-14-x.golden @@ -202,7 +202,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -264,7 +264,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -326,7 +326,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { diff --git a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden index c6ab6ce7c5..9947e4838b 100644 --- a/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden +++ b/agent/xds/testdata/listeners/terminating-gateway-service-subsets.envoy-1-15-x.golden @@ -202,7 +202,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v1.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -264,7 +264,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "v2.web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { @@ -326,7 +326,7 @@ "ads": { } }, - "route_config_name": "default" + "route_config_name": "web.default.dc1.internal.11111111-2222-3333-4444-555555555555.consul" }, "stat_prefix": "terminating_gateway_default_web_default_http", "tracing": { From c9c9e4face9872ad62185f90d7d79efab392d0d7 Mon Sep 17 00:00:00 2001 From: Freddy Date: Fri, 4 Sep 2020 13:38:26 -0600 Subject: [PATCH 077/122] Make LockDelay configurable in api locks (#8621) --- api/lock.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/api/lock.go b/api/lock.go index 5cacee8f7e..221a7add3c 100644 --- a/api/lock.go +++ b/api/lock.go @@ -79,6 +79,7 @@ type LockOptions struct { MonitorRetryTime time.Duration // Optional, defaults to DefaultMonitorRetryTime LockWaitTime time.Duration // Optional, defaults to DefaultLockWaitTime LockTryOnce bool // Optional, defaults to false which means try forever + LockDelay time.Duration // Optional, defaults to 15s Namespace string `json:",omitempty"` // Optional, defaults to API client config, namespace of ACL token, or "default" namespace } @@ -351,8 +352,9 @@ func (l *Lock) createSession() (string, error) { se := l.opts.SessionOpts if se == nil { se = &SessionEntry{ - Name: l.opts.SessionName, - TTL: l.opts.SessionTTL, + Name: l.opts.SessionName, + TTL: l.opts.SessionTTL, + LockDelay: l.opts.LockDelay, } } w := WriteOptions{Namespace: l.opts.Namespace} From cd9398aedc82c6650e96170e418924a99cc51c70 Mon Sep 17 00:00:00 2001 From: Freddy Date: Fri, 4 Sep 2020 14:07:57 -0600 Subject: [PATCH 078/122] Adds changelog entry for snapshot agent improvement (#8622) --- .changelog/_8621.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/_8621.txt diff --git a/.changelog/_8621.txt b/.changelog/_8621.txt new file mode 100644 index 0000000000..194633f37f --- /dev/null +++ b/.changelog/_8621.txt @@ -0,0 +1,3 @@ +```release-note:improvement +snapshot agent: Deregister critical snapshotting TTL check if leadership is transferred. +``` \ No newline at end of file From 9fab3fe9905f4d621312eea192f556772603dd85 Mon Sep 17 00:00:00 2001 From: Seth Hoenig Date: Sun, 6 Sep 2020 11:27:39 -0500 Subject: [PATCH 079/122] api: create fresh http client for unix sockets (#8602) Co-authored-by: Matt Keeler --- .changelog/8602.txt | 3 +++ api/api.go | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) create mode 100644 .changelog/8602.txt diff --git a/.changelog/8602.txt b/.changelog/8602.txt new file mode 100644 index 0000000000..49f2c74ce8 --- /dev/null +++ b/.changelog/8602.txt @@ -0,0 +1,3 @@ +```release-note:improvement +api: Allow for the client to use TLS over a Unix domain socket. +``` diff --git a/api/api.go b/api/api.go index 7b00be967a..38a4e98fbd 100644 --- a/api/api.go +++ b/api/api.go @@ -607,9 +607,11 @@ func NewClient(config *Config) (*Client, error) { trans.DialContext = func(_ context.Context, _, _ string) (net.Conn, error) { return net.Dial("unix", parts[1]) } - config.HttpClient = &http.Client{ - Transport: trans, + httpClient, err := NewHttpClient(trans, config.TLSConfig) + if err != nil { + return nil, err } + config.HttpClient = httpClient default: return nil, fmt.Errorf("Unknown protocol scheme: %s", parts[0]) } From a1fe711390b738034741d019f2ae1b450a16d48f Mon Sep 17 00:00:00 2001 From: Tim Arenz Date: Tue, 8 Sep 2020 12:16:16 +0200 Subject: [PATCH 080/122] Add support for -ca-path option in the connect envoy command (#8606) * Add support for -ca-path option in the connect envoy command * Adding changelog entry --- .changelog/8606.txt | 3 + command/connect/envoy/envoy.go | 12 +- command/connect/envoy/envoy_test.go | 40 ++++++ .../envoy/testdata/existing-ca-path.golden | 125 ++++++++++++++++++ tlsutil/config.go | 4 +- tlsutil/config_test.go | 6 +- 6 files changed, 178 insertions(+), 12 deletions(-) create mode 100644 .changelog/8606.txt create mode 100644 command/connect/envoy/testdata/existing-ca-path.golden diff --git a/.changelog/8606.txt b/.changelog/8606.txt new file mode 100644 index 0000000000..a899232f22 --- /dev/null +++ b/.changelog/8606.txt @@ -0,0 +1,3 @@ +```release-note:bug +connect: `connect envoy` command now respects the `-ca-path` flag +``` diff --git a/command/connect/envoy/envoy.go b/command/connect/envoy/envoy.go index 2fe0c978bd..67530f0ec6 100644 --- a/command/connect/envoy/envoy.go +++ b/command/connect/envoy/envoy.go @@ -4,7 +4,6 @@ import ( "errors" "flag" "fmt" - "io/ioutil" "net" "os" "os/exec" @@ -20,6 +19,7 @@ import ( proxyCmd "github.com/hashicorp/consul/command/connect/proxy" "github.com/hashicorp/consul/command/flags" "github.com/hashicorp/consul/ipaddr" + "github.com/hashicorp/consul/tlsutil" ) func New(ui cli.Ui) *cmd { @@ -443,13 +443,11 @@ func (c *cmd) templateArgs() (*BootstrapTplArgs, error) { } var caPEM string - if httpCfg.TLSConfig.CAFile != "" { - content, err := ioutil.ReadFile(httpCfg.TLSConfig.CAFile) - if err != nil { - return nil, fmt.Errorf("Failed to read CA file: %s", err) - } - caPEM = strings.Replace(string(content), "\n", "\\n", -1) + pems, err := tlsutil.LoadCAs(httpCfg.TLSConfig.CAFile, httpCfg.TLSConfig.CAPath) + if err != nil { + return nil, err } + caPEM = strings.Replace(strings.Join(pems, ""), "\n", "\\n", -1) return &BootstrapTplArgs{ GRPC: grpcAddr, diff --git a/command/connect/envoy/envoy_test.go b/command/connect/envoy/envoy_test.go index d99051b1e3..cab2ae9ad9 100644 --- a/command/connect/envoy/envoy_test.go +++ b/command/connect/envoy/envoy_test.go @@ -370,6 +370,46 @@ func TestGenerateConfig(t *testing.T) { LocalAgentClusterName: xds.LocalAgentClusterName, }, }, + { + Name: "missing-ca-path", + Flags: []string{"-proxy-id", "test-proxy", "-ca-path", "some/path"}, + WantArgs: BootstrapTplArgs{ + EnvoyVersion: defaultEnvoyVersion, + ProxyCluster: "test-proxy", + ProxyID: "test-proxy", + // Should resolve IP, note this might not resolve the same way + // everywhere which might make this test brittle but not sure what else + // to do. + GRPC: GRPC{ + AgentAddress: "127.0.0.1", + AgentPort: "8502", + }, + }, + WantErr: "lstat some/path: no such file or directory", + }, + { + Name: "existing-ca-path", + Flags: []string{"-proxy-id", "test-proxy", "-ca-path", "../../../test/ca_path/"}, + Env: []string{"CONSUL_HTTP_SSL=1"}, + WantArgs: BootstrapTplArgs{ + EnvoyVersion: defaultEnvoyVersion, + ProxyCluster: "test-proxy", + ProxyID: "test-proxy", + // Should resolve IP, note this might not resolve the same way + // everywhere which might make this test brittle but not sure what else + // to do. + GRPC: GRPC{ + AgentAddress: "127.0.0.1", + AgentPort: "8502", + AgentTLS: true, + }, + AgentCAPEM: `-----BEGIN CERTIFICATE-----\nMIIFADCCAuqgAwIBAgIBATALBgkqhkiG9w0BAQswEzERMA8GA1UEAxMIQ2VydEF1\ndGgwHhcNMTUwNTExMjI0NjQzWhcNMjUwNTExMjI0NjU0WjATMREwDwYDVQQDEwhD\nZXJ0QXV0aDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALcMByyynHsA\n+K4PJwo5+XHygaEZAhPGvHiKQK2Cbc9NDm0ZTzx0rA/dRTZlvouhDyzcJHm+6R1F\nj6zQv7iaSC3qQtJiPnPsfZ+/0XhFZ3fQWMnfDiGbZpF1kJF01ofB6vnsuocFC0zG\naGC+SZiLAzs+QMP3Bebw1elCBIeoN+8NWnRYmLsYIaYGJGBSbNo/lCpLTuinofUn\nL3ehWEGv1INwpHnSVeN0Ml2GFe23d7PUlj/wNIHgUdpUR+KEJxIP3klwtsI3QpSH\nc4VjWdf4aIcka6K3IFuw+K0PUh3xAAPnMpAQOtCZk0AhF5rlvUbevC6jADxpKxLp\nOONmvCTer4LtyNURAoBH52vbK0r/DNcTpPEFV0IP66nXUFgkk0mRKsu8HTb4IOkC\nX3K4mp18EiWUUtrHZAnNct0iIniDBqKK0yhSNhztG6VakVt/1WdQY9Ey3mNtxN1O\nthqWFKdpKUzPKYC3P6PfVpiE7+VbWTLLXba+8BPe8BxWPsVkjJqGSGnCte4COusz\nM8/7bbTgifwJfsepwFtZG53tvwjWlO46Exl30VoDNTaIGvs1fO0GqJlh2A7FN5F2\nS1rS5VYHtPK8QdmUSvyq+7JDBc1HNT5I2zsIQbNcLwDTZ5EsbU6QR7NHDJKxjv/w\nbs3eTXJSSNcFD74wRU10pXjgE5wOFu9TAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIA\nBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQHazgZ3Puiuc6K2LzgcX5b6fAC\nPzAfBgNVHSMEGDAWgBQHazgZ3Puiuc6K2LzgcX5b6fACPzALBgkqhkiG9w0BAQsD\nggIBAEmeNrSUhpHg1I8dtfqu9hCU/6IZThjtcFA+QcPkkMa+Z1k0SOtsgW8MdlcA\ngCf5g5yQZ0DdpWM9nDB6xDIhQdccm91idHgf8wmpEHUj0an4uyn2ESCt8eqrAWf7\nAClYORCASTYfguJCxcfvwtI1uqaOeCxSOdmFay79UVitVsWeonbCRGsVgBDifJxw\nG2oCQqoYAmXPM4J6syk5GHhB1O9MMq+g1+hOx9s+XHyTui9FL4V+IUO1ygVqEQB5\nPSiRBvcIsajSGVao+vK0gf2XfcXzqr3y3NhBky9rFMp1g+ykb2yWekV4WiROJlCj\nTsWwWZDRyjiGahDbho/XW8JciouHZhJdjhmO31rqW3HdFviCTdXMiGk3GQIzz/Jg\nP+enOaHXoY9lcxzDvY9z1BysWBgNvNrMnVge/fLP9o+a0a0PRIIVl8T0Ef3zeg1O\nCLCSy/1Vae5Tx63ZTFvGFdOSusYkG9rlAUHXZE364JRCKzM9Bz0bM+t+LaO0MaEb\nYoxcXEPU+gB2IvmARpInN3oHexR6ekuYHVTRGdWrdmuHFzc7eFwygRqTFdoCCU+G\nQZEkd+lOEyv0zvQqYg+Jp0AEGz2B2zB53uBVECtn0EqrSdPtRzUBSByXVs6QhSXn\neVmy+z3U3MecP63X6oSPXekqSyZFuegXpNNuHkjNoL4ep2ix\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIEtzCCA5+gAwIBAgIJAIewRMI8OnvTMA0GCSqGSIb3DQEBBQUAMIGYMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDVNhbiBGcmFuY2lzY28xHDAa\nBgNVBAoTE0hhc2hpQ29ycCBUZXN0IENlcnQxDDAKBgNVBAsTA0RldjEWMBQGA1UE\nAxMNdGVzdC5pbnRlcm5hbDEgMB4GCSqGSIb3DQEJARYRdGVzdEBpbnRlcm5hbC5j\nb20wHhcNMTQwNDA3MTkwMTA4WhcNMjQwNDA0MTkwMTA4WjCBmDELMAkGA1UEBhMC\nVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMRwwGgYDVQQK\nExNIYXNoaUNvcnAgVGVzdCBDZXJ0MQwwCgYDVQQLEwNEZXYxFjAUBgNVBAMTDXRl\nc3QuaW50ZXJuYWwxIDAeBgkqhkiG9w0BCQEWEXRlc3RAaW50ZXJuYWwuY29tMIIB\nIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxrs6JK4NpiOItxrpNR/1ppUU\nmH7p2BgLCBZ6eHdclle9J56i68adt8J85zaqphCfz6VDP58DsFx+N50PZyjQaDsU\nd0HejRqfHRMtg2O+UQkv4Z66+Vo+gc6uGuANi2xMtSYDVTAqqzF48OOPQDgYkzcG\nxcFZzTRFFZt2vPnyHj8cHcaFo/NMNVh7C3yTXevRGNm9u2mrbxCEeiHzFC2WUnvg\nU2jQuC7Fhnl33Zd3B6d3mQH6O23ncmwxTcPUJe6xZaIRrDuzwUcyhLj5Z3faag/f\npFIIcHSiHRfoqHLGsGg+3swId/zVJSSDHr7pJUu7Cre+vZa63FqDaooqvnisrQID\nAQABo4IBADCB/TAdBgNVHQ4EFgQUo/nrOfqvbee2VklVKIFlyQEbuJUwgc0GA1Ud\nIwSBxTCBwoAUo/nrOfqvbee2VklVKIFlyQEbuJWhgZ6kgZswgZgxCzAJBgNVBAYT\nAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNjbzEcMBoGA1UE\nChMTSGFzaGlDb3JwIFRlc3QgQ2VydDEMMAoGA1UECxMDRGV2MRYwFAYDVQQDEw10\nZXN0LmludGVybmFsMSAwHgYJKoZIhvcNAQkBFhF0ZXN0QGludGVybmFsLmNvbYIJ\nAIewRMI8OnvTMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADa9fV9h\ngjapBlkNmu64WX0Ufub5dsJrdHS8672P30S7ILB7Mk0W8sL65IezRsZnG898yHf9\n2uzmz5OvNTM9K380g7xFlyobSVq+6yqmmSAlA/ptAcIIZT727P5jig/DB7fzJM3g\njctDlEGOmEe50GQXc25VKpcpjAsNQi5ER5gowQ0v3IXNZs+yU+LvxLHc0rUJ/XSp\nlFCAMOqd5uRoMOejnT51G6krvLNzPaQ3N9jQfNVY4Q0zfs0M+6dRWvqfqB9Vyq8/\nPOLMld+HyAZEBk9zK3ZVIXx6XS4dkDnSNR91njLq7eouf6M7+7s/oMQZZRtAfQ6r\nwlW975rYa1ZqEdA=\n-----END CERTIFICATE-----\n`, + AdminAccessLogPath: "/dev/null", + AdminBindAddress: "127.0.0.1", + AdminBindPort: "19000", + LocalAgentClusterName: xds.LocalAgentClusterName, + }, + }, { Name: "custom-bootstrap", Flags: []string{"-proxy-id", "test-proxy"}, diff --git a/command/connect/envoy/testdata/existing-ca-path.golden b/command/connect/envoy/testdata/existing-ca-path.golden new file mode 100644 index 0000000000..1dd467ce4c --- /dev/null +++ b/command/connect/envoy/testdata/existing-ca-path.golden @@ -0,0 +1,125 @@ +{ + "admin": { + "access_log_path": "/dev/null", + "address": { + "socket_address": { + "address": "127.0.0.1", + "port_value": 19000 + } + } + }, + "node": { + "cluster": "test-proxy", + "id": "test-proxy", + "metadata": { + "namespace": "default", + "envoy_version": "1.15.0" + } + }, + "static_resources": { + "clusters": [ + { + "name": "local_agent", + "connect_timeout": "1s", + "type": "STATIC", + "tls_context": { + "common_tls_context": { + "validation_context": { + "trusted_ca": { + "inline_string": "-----BEGIN CERTIFICATE-----\nMIIFADCCAuqgAwIBAgIBATALBgkqhkiG9w0BAQswEzERMA8GA1UEAxMIQ2VydEF1\ndGgwHhcNMTUwNTExMjI0NjQzWhcNMjUwNTExMjI0NjU0WjATMREwDwYDVQQDEwhD\nZXJ0QXV0aDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBALcMByyynHsA\n+K4PJwo5+XHygaEZAhPGvHiKQK2Cbc9NDm0ZTzx0rA/dRTZlvouhDyzcJHm+6R1F\nj6zQv7iaSC3qQtJiPnPsfZ+/0XhFZ3fQWMnfDiGbZpF1kJF01ofB6vnsuocFC0zG\naGC+SZiLAzs+QMP3Bebw1elCBIeoN+8NWnRYmLsYIaYGJGBSbNo/lCpLTuinofUn\nL3ehWEGv1INwpHnSVeN0Ml2GFe23d7PUlj/wNIHgUdpUR+KEJxIP3klwtsI3QpSH\nc4VjWdf4aIcka6K3IFuw+K0PUh3xAAPnMpAQOtCZk0AhF5rlvUbevC6jADxpKxLp\nOONmvCTer4LtyNURAoBH52vbK0r/DNcTpPEFV0IP66nXUFgkk0mRKsu8HTb4IOkC\nX3K4mp18EiWUUtrHZAnNct0iIniDBqKK0yhSNhztG6VakVt/1WdQY9Ey3mNtxN1O\nthqWFKdpKUzPKYC3P6PfVpiE7+VbWTLLXba+8BPe8BxWPsVkjJqGSGnCte4COusz\nM8/7bbTgifwJfsepwFtZG53tvwjWlO46Exl30VoDNTaIGvs1fO0GqJlh2A7FN5F2\nS1rS5VYHtPK8QdmUSvyq+7JDBc1HNT5I2zsIQbNcLwDTZ5EsbU6QR7NHDJKxjv/w\nbs3eTXJSSNcFD74wRU10pXjgE5wOFu9TAgMBAAGjYzBhMA4GA1UdDwEB/wQEAwIA\nBjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQWBBQHazgZ3Puiuc6K2LzgcX5b6fAC\nPzAfBgNVHSMEGDAWgBQHazgZ3Puiuc6K2LzgcX5b6fACPzALBgkqhkiG9w0BAQsD\nggIBAEmeNrSUhpHg1I8dtfqu9hCU/6IZThjtcFA+QcPkkMa+Z1k0SOtsgW8MdlcA\ngCf5g5yQZ0DdpWM9nDB6xDIhQdccm91idHgf8wmpEHUj0an4uyn2ESCt8eqrAWf7\nAClYORCASTYfguJCxcfvwtI1uqaOeCxSOdmFay79UVitVsWeonbCRGsVgBDifJxw\nG2oCQqoYAmXPM4J6syk5GHhB1O9MMq+g1+hOx9s+XHyTui9FL4V+IUO1ygVqEQB5\nPSiRBvcIsajSGVao+vK0gf2XfcXzqr3y3NhBky9rFMp1g+ykb2yWekV4WiROJlCj\nTsWwWZDRyjiGahDbho/XW8JciouHZhJdjhmO31rqW3HdFviCTdXMiGk3GQIzz/Jg\nP+enOaHXoY9lcxzDvY9z1BysWBgNvNrMnVge/fLP9o+a0a0PRIIVl8T0Ef3zeg1O\nCLCSy/1Vae5Tx63ZTFvGFdOSusYkG9rlAUHXZE364JRCKzM9Bz0bM+t+LaO0MaEb\nYoxcXEPU+gB2IvmARpInN3oHexR6ekuYHVTRGdWrdmuHFzc7eFwygRqTFdoCCU+G\nQZEkd+lOEyv0zvQqYg+Jp0AEGz2B2zB53uBVECtn0EqrSdPtRzUBSByXVs6QhSXn\neVmy+z3U3MecP63X6oSPXekqSyZFuegXpNNuHkjNoL4ep2ix\n-----END CERTIFICATE-----\n-----BEGIN CERTIFICATE-----\nMIIEtzCCA5+gAwIBAgIJAIewRMI8OnvTMA0GCSqGSIb3DQEBBQUAMIGYMQswCQYD\nVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDVNhbiBGcmFuY2lzY28xHDAa\nBgNVBAoTE0hhc2hpQ29ycCBUZXN0IENlcnQxDDAKBgNVBAsTA0RldjEWMBQGA1UE\nAxMNdGVzdC5pbnRlcm5hbDEgMB4GCSqGSIb3DQEJARYRdGVzdEBpbnRlcm5hbC5j\nb20wHhcNMTQwNDA3MTkwMTA4WhcNMjQwNDA0MTkwMTA4WjCBmDELMAkGA1UEBhMC\nVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1TYW4gRnJhbmNpc2NvMRwwGgYDVQQK\nExNIYXNoaUNvcnAgVGVzdCBDZXJ0MQwwCgYDVQQLEwNEZXYxFjAUBgNVBAMTDXRl\nc3QuaW50ZXJuYWwxIDAeBgkqhkiG9w0BCQEWEXRlc3RAaW50ZXJuYWwuY29tMIIB\nIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxrs6JK4NpiOItxrpNR/1ppUU\nmH7p2BgLCBZ6eHdclle9J56i68adt8J85zaqphCfz6VDP58DsFx+N50PZyjQaDsU\nd0HejRqfHRMtg2O+UQkv4Z66+Vo+gc6uGuANi2xMtSYDVTAqqzF48OOPQDgYkzcG\nxcFZzTRFFZt2vPnyHj8cHcaFo/NMNVh7C3yTXevRGNm9u2mrbxCEeiHzFC2WUnvg\nU2jQuC7Fhnl33Zd3B6d3mQH6O23ncmwxTcPUJe6xZaIRrDuzwUcyhLj5Z3faag/f\npFIIcHSiHRfoqHLGsGg+3swId/zVJSSDHr7pJUu7Cre+vZa63FqDaooqvnisrQID\nAQABo4IBADCB/TAdBgNVHQ4EFgQUo/nrOfqvbee2VklVKIFlyQEbuJUwgc0GA1Ud\nIwSBxTCBwoAUo/nrOfqvbee2VklVKIFlyQEbuJWhgZ6kgZswgZgxCzAJBgNVBAYT\nAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNU2FuIEZyYW5jaXNjbzEcMBoGA1UE\nChMTSGFzaGlDb3JwIFRlc3QgQ2VydDEMMAoGA1UECxMDRGV2MRYwFAYDVQQDEw10\nZXN0LmludGVybmFsMSAwHgYJKoZIhvcNAQkBFhF0ZXN0QGludGVybmFsLmNvbYIJ\nAIewRMI8OnvTMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADa9fV9h\ngjapBlkNmu64WX0Ufub5dsJrdHS8672P30S7ILB7Mk0W8sL65IezRsZnG898yHf9\n2uzmz5OvNTM9K380g7xFlyobSVq+6yqmmSAlA/ptAcIIZT727P5jig/DB7fzJM3g\njctDlEGOmEe50GQXc25VKpcpjAsNQi5ER5gowQ0v3IXNZs+yU+LvxLHc0rUJ/XSp\nlFCAMOqd5uRoMOejnT51G6krvLNzPaQ3N9jQfNVY4Q0zfs0M+6dRWvqfqB9Vyq8/\nPOLMld+HyAZEBk9zK3ZVIXx6XS4dkDnSNR91njLq7eouf6M7+7s/oMQZZRtAfQ6r\nwlW975rYa1ZqEdA=\n-----END CERTIFICATE-----\n" + } + } + } + }, + "http2_protocol_options": {}, + "hosts": [ + { + "socket_address": { + "address": "127.0.0.1", + "port_value": 8502 + } + } + ] + } + ] + }, + "stats_config": { + "stats_tags": [ + { + "regex": "^cluster\\.((?:([^.]+)~)?(?:[^.]+\\.)?[^.]+\\.[^.]+\\.[^.]+\\.[^.]+\\.[^.]+\\.consul\\.)", + "tag_name": "consul.custom_hash" + }, + { + "regex": "^cluster\\.((?:[^.]+~)?(?:([^.]+)\\.)?[^.]+\\.[^.]+\\.[^.]+\\.[^.]+\\.[^.]+\\.consul\\.)", + "tag_name": "consul.service_subset" + }, + { + "regex": "^cluster\\.((?:[^.]+~)?(?:[^.]+\\.)?([^.]+)\\.[^.]+\\.[^.]+\\.[^.]+\\.[^.]+\\.consul\\.)", + "tag_name": "consul.service" + }, + { + "regex": "^cluster\\.((?:[^.]+~)?(?:[^.]+\\.)?[^.]+\\.([^.]+)\\.[^.]+\\.[^.]+\\.[^.]+\\.consul\\.)", + "tag_name": "consul.namespace" + }, + { + "regex": "^cluster\\.((?:[^.]+~)?(?:[^.]+\\.)?[^.]+\\.[^.]+\\.([^.]+)\\.[^.]+\\.[^.]+\\.consul\\.)", + "tag_name": "consul.datacenter" + }, + { + "regex": "^cluster\\.((?:[^.]+~)?(?:[^.]+\\.)?[^.]+\\.[^.]+\\.[^.]+\\.([^.]+)\\.[^.]+\\.consul\\.)", + "tag_name": "consul.routing_type" + }, + { + "regex": "^cluster\\.((?:[^.]+~)?(?:[^.]+\\.)?[^.]+\\.[^.]+\\.[^.]+\\.[^.]+\\.([^.]+)\\.consul\\.)", + "tag_name": "consul.trust_domain" + }, + { + "regex": "^cluster\\.(((?:[^.]+~)?(?:[^.]+\\.)?[^.]+\\.[^.]+\\.[^.]+)\\.[^.]+\\.[^.]+\\.consul\\.)", + "tag_name": "consul.target" + }, + { + "regex": "^cluster\\.(((?:[^.]+~)?(?:[^.]+\\.)?[^.]+\\.[^.]+\\.[^.]+\\.[^.]+\\.[^.]+)\\.consul\\.)", + "tag_name": "consul.full_target" + }, + { + "tag_name": "local_cluster", + "fixed_value": "test-proxy" + } + ], + "use_all_default_tags": true + }, + "dynamic_resources": { + "lds_config": { + "ads": {} + }, + "cds_config": { + "ads": {} + }, + "ads_config": { + "api_type": "GRPC", + "grpc_services": { + "initial_metadata": [ + { + "key": "x-consul-token", + "value": "" + } + ], + "envoy_grpc": { + "cluster_name": "local_agent" + } + } + } + }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.Cluster.tls_context": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true, + "envoy.deprecated_features:envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager.Tracing.operation_name": true + } + } + ] + } +} diff --git a/tlsutil/config.go b/tlsutil/config.go index 1875dcea6c..c966ec724e 100644 --- a/tlsutil/config.go +++ b/tlsutil/config.go @@ -238,7 +238,7 @@ func (c *Configurator) Update(config Config) error { if err != nil { return err } - pems, err := loadCAs(config.CAFile, config.CAPath) + pems, err := LoadCAs(config.CAFile, config.CAPath) if err != nil { return err } @@ -420,7 +420,7 @@ func loadKeyPair(certFile, keyFile string) (*tls.Certificate, error) { return &cert, nil } -func loadCAs(caFile, caPath string) ([]string, error) { +func LoadCAs(caFile, caPath string) ([]string, error) { if caFile == "" && caPath == "" { return nil, nil } diff --git a/tlsutil/config_test.go b/tlsutil/config_test.go index 2ef550999f..59dbe17f10 100644 --- a/tlsutil/config_test.go +++ b/tlsutil/config_test.go @@ -519,7 +519,7 @@ func TestConfigurator_ErrorPropagation(t *testing.T) { if !v.excludeCheck { cert, err := v.config.KeyPair() require.NoError(t, err, info) - pems, err := loadCAs(v.config.CAFile, v.config.CAPath) + pems, err := LoadCAs(v.config.CAFile, v.config.CAPath) require.NoError(t, err, info) pool, err := pool(pems) require.NoError(t, err, info) @@ -562,7 +562,7 @@ func TestConfigurator_CommonTLSConfigServerNameNodeName(t *testing.T) { } } -func TestConfigurator_loadCAs(t *testing.T) { +func TestConfigurator_LoadCAs(t *testing.T) { type variant struct { cafile, capath string shouldErr bool @@ -579,7 +579,7 @@ func TestConfigurator_loadCAs(t *testing.T) { {"../test/ca/root.cer", "../test/ca_path", false, false, 1}, } for i, v := range variants { - pems, err1 := loadCAs(v.cafile, v.capath) + pems, err1 := LoadCAs(v.cafile, v.capath) pool, err2 := pool(pems) info := fmt.Sprintf("case %d", i) if v.shouldErr { From b94d24fcd00487f9c61106182e3ef3ebe6ee0732 Mon Sep 17 00:00:00 2001 From: Kevin Pruett Date: Tue, 1 Sep 2020 11:59:08 -0400 Subject: [PATCH 081/122] Integrate @hashicorp/react-search into layout --- website/components/search-bar/index.jsx | 28 ++++++ website/components/search-bar/style.css | 4 + website/layouts/api.jsx | 19 +++- website/layouts/docs.jsx | 19 +++- website/layouts/intro.jsx | 19 +++- website/package-lock.json | 65 ++++++++++++ website/package.json | 9 +- website/pages/style.css | 42 ++++---- website/scripts/index_search_content.js | 126 +----------------------- 9 files changed, 165 insertions(+), 166 deletions(-) create mode 100644 website/components/search-bar/index.jsx create mode 100644 website/components/search-bar/style.css diff --git a/website/components/search-bar/index.jsx b/website/components/search-bar/index.jsx new file mode 100644 index 0000000000..5d998ca88f --- /dev/null +++ b/website/components/search-bar/index.jsx @@ -0,0 +1,28 @@ +import Search from '@hashicorp/react-search' + +export default function SearchBar() { + return ( + ( + <> + + + + + + + + )} + resolveHitLink={(hit) => ({ + href: { + pathname: `/${transformIdtoUrl(hit.objectID)}`, + }, + })} + placeholder="Search Consul documentation" + /> + ) +} + +function transformIdtoUrl(id) { + return id.replace(/\/index$/, '') +} diff --git a/website/components/search-bar/style.css b/website/components/search-bar/style.css new file mode 100644 index 0000000000..3004fb4986 --- /dev/null +++ b/website/components/search-bar/style.css @@ -0,0 +1,4 @@ +.g-search { + width: calc(100% - 2rem); + max-width: 600px; +} diff --git a/website/layouts/api.jsx b/website/layouts/api.jsx index 9858f78b01..7060322955 100644 --- a/website/layouts/api.jsx +++ b/website/layouts/api.jsx @@ -1,18 +1,21 @@ -import DocsPage from '@hashicorp/react-docs-page' -import order from '../data/api-navigation.js' -import { frontMatter as data } from '../pages/api-docs/**/*.mdx' import Head from 'next/head' import Link from 'next/link' import { createMdxProvider } from '@hashicorp/nextjs-scripts/lib/providers/docs' +import DocsPage from '@hashicorp/react-docs-page' +import { SearchProvider } from '@hashicorp/react-search' +import SearchBar from '../components/search-bar' +import { frontMatter as data } from '../pages/api-docs/**/*.mdx' +import order from '../data/api-navigation.js' const MDXProvider = createMdxProvider({ product: 'consul' }) function ApiDocsLayoutWrapper(pageMeta) { function ApiDocsLayout(props) { + const { children, ...propsWithoutChildren } = props return ( + > + + + {children} + + ) } diff --git a/website/layouts/docs.jsx b/website/layouts/docs.jsx index 97c4e8eb68..08f0c5da85 100644 --- a/website/layouts/docs.jsx +++ b/website/layouts/docs.jsx @@ -1,18 +1,21 @@ -import DocsPage from '@hashicorp/react-docs-page' -import order from '../data/docs-navigation.js' -import { frontMatter as data } from '../pages/docs/**/*.mdx' import Head from 'next/head' import Link from 'next/link' import { createMdxProvider } from '@hashicorp/nextjs-scripts/lib/providers/docs' +import DocsPage from '@hashicorp/react-docs-page' +import { SearchProvider } from '@hashicorp/react-search' +import SearchBar from '../components/search-bar' +import { frontMatter as data } from '../pages/docs/**/*.mdx' +import order from '../data/docs-navigation.js' const MDXProvider = createMdxProvider({ product: 'consul' }) function DocsLayoutWrapper(pageMeta) { function DocsLayout(props) { + const { children, ...propsWithoutChildren } = props return ( + > + + + {children} + + ) } diff --git a/website/layouts/intro.jsx b/website/layouts/intro.jsx index 2813310ce8..9394a2ea4b 100644 --- a/website/layouts/intro.jsx +++ b/website/layouts/intro.jsx @@ -1,18 +1,21 @@ -import DocsPage from '@hashicorp/react-docs-page' -import order from '../data/intro-navigation.js' -import { frontMatter as data } from '../pages/intro/**/*.mdx' import Head from 'next/head' import Link from 'next/link' import { createMdxProvider } from '@hashicorp/nextjs-scripts/lib/providers/docs' +import DocsPage from '@hashicorp/react-docs-page' +import { SearchProvider } from '@hashicorp/react-search' +import SearchBar from '../components/search-bar' +import { frontMatter as data } from '../pages/intro/**/*.mdx' +import order from '../data/intro-navigation.js' const MDXProvider = createMdxProvider({ product: 'consul' }) function IntroLayoutWrapper(pageMeta) { function IntroLayout(props) { + const { children, ...propsWithoutChildren } = props return ( + > + + + {children} + + ) } diff --git a/website/package-lock.json b/website/package-lock.json index afd97fb248..926667eaae 100644 --- a/website/package-lock.json +++ b/website/package-lock.json @@ -3768,6 +3768,23 @@ "@hashicorp/react-image": "^2.0.3" } }, + "@hashicorp/react-search": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@hashicorp/react-search/-/react-search-2.1.0.tgz", + "integrity": "sha512-vaTht+2G9ipsVyusK3b3TtUpuy9ccsxj3NMSWXJyGsoT39K1Oovb8aLiIlbUU5Ll72KEi5yq5OS3WAJDdSqW+g==", + "requires": { + "@hashicorp/react-inline-svg": "^1.0.2", + "@hashicorp/remark-plugins": "^3.0.0", + "algoliasearch": "^4.4.0", + "dotenv": "^8.2.0", + "glob": "^7.1.6", + "gray-matter": "^4.0.2", + "react-instantsearch-dom": "^6.7.0", + "remark": "^12.0.1", + "search-insights": "^1.6.0", + "unist-util-visit": "^2.0.3" + } + }, "@hashicorp/react-section-header": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/@hashicorp/react-section-header/-/react-section-header-2.0.2.tgz", @@ -4584,6 +4601,21 @@ "@algolia/transporter": "4.4.0" } }, + "algoliasearch-helper": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/algoliasearch-helper/-/algoliasearch-helper-3.2.2.tgz", + "integrity": "sha512-/3XvE33R+gQKaiPdy3nmHYqhF8hqIu8xnlOicVxb1fD6uMFmxW8rGLzzrRfsPfxgAfm+c1NslLb3TzQVIB8aVA==", + "requires": { + "events": "^1.1.1" + }, + "dependencies": { + "events": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", + "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=" + } + } + }, "ally.js": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/ally.js/-/ally.js-1.4.1.tgz", @@ -14310,6 +14342,34 @@ } } }, + "react-fast-compare": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", + "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==" + }, + "react-instantsearch-core": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/react-instantsearch-core/-/react-instantsearch-core-6.7.0.tgz", + "integrity": "sha512-wIvSIwkWfqPbaQZcbKsfBK3Gpm1e7ahSwU8Bmx1N5RfUqA/NghqS0Ppv3sz4vCXjoEAdPV06R+Fpn9lT+cE9/Q==", + "requires": { + "@babel/runtime": "^7.1.2", + "algoliasearch-helper": "^3.1.0", + "prop-types": "^15.5.10", + "react-fast-compare": "^3.0.0" + } + }, + "react-instantsearch-dom": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/react-instantsearch-dom/-/react-instantsearch-dom-6.7.0.tgz", + "integrity": "sha512-J1C9xkHHLLa6rkKLKFDa7szA0TDo6yPFGmDzh2+JLaq4o694RIqivfUpROHus0Ki3BAQu9QmzLtodf6K1NOBWQ==", + "requires": { + "@babel/runtime": "^7.1.2", + "algoliasearch-helper": "^3.1.0", + "classnames": "^2.2.5", + "prop-types": "^15.5.10", + "react-instantsearch-core": "^6.7.0" + } + }, "react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -15320,6 +15380,11 @@ "ajv-keywords": "^3.1.0" } }, + "search-insights": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-1.6.2.tgz", + "integrity": "sha512-mpy+57HZVMZH5HsMHYMCLvkf+tUvhy+ycP2tDy1j7wmj+mQsNZ3LC61IcMYomok02NozaMR3GiGyfH6uc+ibdA==" + }, "section-matter": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", diff --git a/website/package.json b/website/package.json index 1079ffef51..40fe6af15f 100644 --- a/website/package.json +++ b/website/package.json @@ -22,6 +22,7 @@ "@hashicorp/react-mega-nav": "4.0.1-2", "@hashicorp/react-product-downloader": "4.1.1", "@hashicorp/react-product-features-list": "1.0.3", + "@hashicorp/react-search": "^2.1.0", "@hashicorp/react-section-header": "2.0.2", "@hashicorp/react-subnav": "3.2.6", "@hashicorp/react-text-and-content": "4.1.4", @@ -31,21 +32,15 @@ "@hashicorp/react-text-split-with-logo-grid": "1.3.0", "@hashicorp/react-use-cases": "1.0.6", "@hashicorp/react-vertical-text-block-list": "2.0.3", - "algoliasearch": "4.4.0", "babel-plugin-import-glob-array": "0.2.0", - "dotenv": "8.2.0", - "gray-matter": "4.0.2", "next": "9.4.4", "nuka-carousel": "4.7.0", "react": "16.13.1", "react-device-detect": "1.13.1", - "react-dom": "16.13.1", - "remark": "12.0.1", - "unist-util-visit": "2.0.3" + "react-dom": "16.13.1" }, "devDependencies": { "dart-linkcheck": "2.0.15", - "glob": "7.1.6", "husky": "4.2.5", "prettier": "2.0.5" }, diff --git a/website/pages/style.css b/website/pages/style.css index 8d323a8890..ed2f689962 100644 --- a/website/pages/style.css +++ b/website/pages/style.css @@ -10,31 +10,32 @@ --highlight-color: var(--consul); } -@import '~@hashicorp/react-button/dist/style.css'; -@import '~@hashicorp/react-section-header/dist/style.css'; -@import '~@hashicorp/react-logo-grid/dist/style.css'; -@import '~@hashicorp/react-product-features-list/dist/style.css'; -@import '~@hashicorp/react-product-downloader/dist/style.css'; -@import '~@hashicorp/react-vertical-text-block-list/dist/style.css'; -@import '~@hashicorp/react-docs-sidenav/dist/style.css'; -@import '~@hashicorp/react-content/dist/style.css'; -@import '~@hashicorp/react-subnav/dist/style.css'; -@import '~@hashicorp/react-text-and-content/dist/style.css'; -@import '~@hashicorp/react-consent-manager/dist/style.css'; -@import '~@hashicorp/react-toggle/dist/style.css'; +@import '~@hashicorp/react-alert-banner/dist/style.css'; @import '~@hashicorp/react-alert/dist/style.css'; -@import '~@hashicorp/react-text-split/dist/style.css'; -@import '~@hashicorp/react-text-split-with-code/dist/style.css'; -@import '~@hashicorp/react-enterprise-alert/dist/style.css'; -@import '~@hashicorp/react-mega-nav/style.css'; -@import '~@hashicorp/react-docs-page/style.css'; +@import '~@hashicorp/react-button/dist/style.css'; @import '~@hashicorp/react-call-to-action/dist/style.css'; @import '~@hashicorp/react-case-study-slider/dist/style.css'; -@import '~@hashicorp/react-tabs/dist/style.css'; @import '~@hashicorp/react-code-block/dist/style.css'; -@import '~@hashicorp/react-alert-banner/dist/style.css'; -@import '~@hashicorp/react-use-cases/dist/style.css'; +@import '~@hashicorp/react-consent-manager/dist/style.css'; +@import '~@hashicorp/react-content/dist/style.css'; +@import '~@hashicorp/react-docs-page/style.css'; +@import '~@hashicorp/react-docs-sidenav/dist/style.css'; +@import '~@hashicorp/react-enterprise-alert/dist/style.css'; @import '~@hashicorp/react-featured-slider/dist/style.css'; +@import '~@hashicorp/react-logo-grid/dist/style.css'; +@import '~@hashicorp/react-mega-nav/style.css'; +@import '~@hashicorp/react-product-downloader/dist/style.css'; +@import '~@hashicorp/react-product-features-list/dist/style.css'; +@import '~@hashicorp/react-search/dist/style.css'; +@import '~@hashicorp/react-section-header/dist/style.css'; +@import '~@hashicorp/react-subnav/dist/style.css'; +@import '~@hashicorp/react-tabs/dist/style.css'; +@import '~@hashicorp/react-text-and-content/dist/style.css'; +@import '~@hashicorp/react-text-split-with-code/dist/style.css'; +@import '~@hashicorp/react-text-split/dist/style.css'; +@import '~@hashicorp/react-toggle/dist/style.css'; +@import '~@hashicorp/react-use-cases/dist/style.css'; +@import '~@hashicorp/react-vertical-text-block-list/dist/style.css'; /* Local Components */ @import '../components/basic-hero/style.css'; @@ -43,6 +44,7 @@ @import '../components/learn-callout/style.css'; @import '../components/case-study-carousel/style.css'; @import '../components/cloud-offerings-list/style.css'; +@import '../components/search-bar/style.css'; /* Layouts */ @import '../layouts/use-cases/style.css'; diff --git a/website/scripts/index_search_content.js b/website/scripts/index_search_content.js index 7eeb7524f1..f853b4ddf7 100644 --- a/website/scripts/index_search_content.js +++ b/website/scripts/index_search_content.js @@ -1,125 +1,3 @@ -require('dotenv').config() +const { indexDocsContent } = require('@hashicorp/react-search/tools') -const algoliasearch = require('algoliasearch') -const glob = require('glob') -const matter = require('gray-matter') -const path = require('path') -const remark = require('remark') -const visit = require('unist-util-visit') - -// In addition to the content of the page, -// define additional front matter attributes that will be search-indexable -const SEARCH_DIMENSIONS = ['page_title', 'description'] - -main() - -async function main() { - const pagesFolder = path.join(__dirname, '../pages') - - // Grab all search-indexable content and format for Algolia - const searchObjects = await Promise.all( - glob.sync(path.join(pagesFolder, '**/*.mdx')).map(async (fullPath) => { - const { content, data } = matter.read(fullPath) - - const searchableDimensions = SEARCH_DIMENSIONS.reduce( - (acc, dimension) => { - return { ...acc, [dimension]: data[dimension] } - }, - {} - ) - - const headings = await collectHeadings(content) - - // Get path relative to `pages` - const __resourcePath = fullPath.replace(`${pagesFolder}/`, '') - - // Use clean URL for Algolia id - const objectID = __resourcePath.replace('.mdx', '') - - return { - ...searchableDimensions, - headings, - objectID, - } - }) - ) - - try { - await indexSearchContent(searchObjects) - } catch (e) { - console.error(e) - process.exit(1) - } -} - -async function indexSearchContent(objects) { - const { - NEXT_PUBLIC_ALGOLIA_APP_ID: appId, - NEXT_PUBLIC_ALGOLIA_INDEX: index, - ALGOLIA_API_KEY: apiKey, - } = process.env - - if (!apiKey || !appId || !index) { - throw new Error( - `[*** Algolia Search Indexing Error ***] Received: ALGOLIA_API_KEY=${apiKey} ALGOLIA_APP_ID=${appId} ALGOLIA_INDEX=${index} \n Please ensure all Algolia Search-related environment vars are set in CI settings.` - ) - } - - console.log(`updating ${objects.length} indices...`) - - try { - const searchClient = algoliasearch(appId, apiKey) - const searchIndex = searchClient.initIndex(index) - - const { objectIDs } = await searchIndex.partialUpdateObjects(objects, { - createIfNotExists: true, - }) - - let staleIds = [] - - await searchIndex.browseObjects({ - query: '', - batch: (batch) => { - staleIds = staleIds.concat( - batch - .filter(({ objectID }) => !objectIDs.includes(objectID)) - .map(({ objectID }) => objectID) - ) - }, - }) - - if (staleIds.length > 0) { - console.log(`deleting ${staleIds.length} stale indices:`) - console.log(staleIds) - - await searchIndex.deleteObjects(staleIds) - } - - console.log('done') - process.exit(0) - } catch (error) { - throw new Error(error) - } -} - -async function collectHeadings(mdxContent) { - const headings = [] - - const headingMapper = () => (tree) => { - visit(tree, 'heading', (node) => { - const title = node.children.reduce((m, n) => { - if (n.value) m += n.value - return m - }, '') - // Only include level 1 or level 2 headings - if (node.depth < 3) { - headings.push(title) - } - }) - } - - return remark() - .use(headingMapper) - .process(mdxContent) - .then(() => headings) -} +indexDocsContent() From 22572470956e2c2d5e2c5fd080bdceb39a566066 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Wed, 22 Jul 2020 19:57:29 -0400 Subject: [PATCH 082/122] server: add gRPC server for streaming events Includes a stats handler and stream interceptor for grpc metrics. Co-authored-by: Paul Banks --- agent/consul/config.go | 3 ++ agent/consul/rpc.go | 6 +++ agent/consul/server.go | 33 +++++++++++- agent/grpc/handler.go | 113 +++++++++++++++++++++++++++++++++++++++++ agent/grpc/stats.go | 82 ++++++++++++++++++++++++++++++ agent/pool/conn.go | 22 ++++---- 6 files changed, 247 insertions(+), 12 deletions(-) create mode 100644 agent/grpc/handler.go create mode 100644 agent/grpc/stats.go diff --git a/agent/consul/config.go b/agent/consul/config.go index 4316475651..c1b2451ab4 100644 --- a/agent/consul/config.go +++ b/agent/consul/config.go @@ -470,6 +470,9 @@ type Config struct { // AutoEncrypt.Sign requests. AutoEncryptAllowTLS bool + // TODO: godoc, set this value from Agent + EnableGRPCServer bool + // Embedded Consul Enterprise specific configuration *EnterpriseConfig } diff --git a/agent/consul/rpc.go b/agent/consul/rpc.go index 0a520dcee0..ac1096292b 100644 --- a/agent/consul/rpc.go +++ b/agent/consul/rpc.go @@ -188,6 +188,9 @@ func (s *Server) handleConn(conn net.Conn, isTLS bool) { conn = tls.Server(conn, s.tlsConfigurator.IncomingInsecureRPCConfig()) s.handleInsecureConn(conn) + case pool.RPCGRPC: + s.grpcHandler.Handle(conn) + default: if !s.handleEnterpriseRPCConn(typ, conn, isTLS) { s.rpcLogger().Error("unrecognized RPC byte", @@ -254,6 +257,9 @@ func (s *Server) handleNativeTLS(conn net.Conn) { case pool.ALPN_RPCSnapshot: s.handleSnapshotConn(tlsConn) + case pool.ALPN_RPCGRPC: + s.grpcHandler.Handle(conn) + case pool.ALPN_WANGossipPacket: if err := s.handleALPN_WANGossipPacketStream(tlsConn); err != nil && err != io.EOF { s.rpcLogger().Error( diff --git a/agent/consul/server.go b/agent/consul/server.go index c1c1a6d76e..2a496d9624 100644 --- a/agent/consul/server.go +++ b/agent/consul/server.go @@ -26,6 +26,7 @@ import ( "github.com/hashicorp/consul/agent/consul/fsm" "github.com/hashicorp/consul/agent/consul/state" "github.com/hashicorp/consul/agent/consul/usagemetrics" + "github.com/hashicorp/consul/agent/grpc" "github.com/hashicorp/consul/agent/metadata" "github.com/hashicorp/consul/agent/pool" "github.com/hashicorp/consul/agent/router" @@ -239,8 +240,9 @@ type Server struct { rpcConnLimiter connlimit.Limiter // Listener is used to listen for incoming connections - Listener net.Listener - rpcServer *rpc.Server + Listener net.Listener + grpcHandler connHandler + rpcServer *rpc.Server // insecureRPCServer is a RPC server that is configure with // IncomingInsecureRPCConfig to allow clients to call AutoEncrypt.Sign @@ -314,6 +316,12 @@ type Server struct { EnterpriseServer } +type connHandler interface { + Run() error + Handle(conn net.Conn) + Shutdown() error +} + // NewServer is used to construct a new Consul server from the configuration // and extra options, potentially returning an error. func NewServer(config *Config, options ...ConsulOption) (*Server, error) { @@ -603,6 +611,8 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { } go reporter.Run(&lib.StopChannelContext{StopCh: s.shutdownCh}) + s.grpcHandler = newGRPCHandlerFromConfig(logger, config) + // Initialize Autopilot. This must happen before starting leadership monitoring // as establishing leadership could attempt to use autopilot and cause a panic. s.initAutopilot(config) @@ -612,6 +622,11 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { go s.monitorLeadership() // Start listening for RPC requests. + go func() { + if err := s.grpcHandler.Run(); err != nil { + s.logger.Error("gRPC server failed", "error", err) + } + }() go s.listen(s.Listener) // Start listeners for any segments with separate RPC listeners. @@ -625,6 +640,14 @@ func NewServer(config *Config, options ...ConsulOption) (*Server, error) { return s, nil } +func newGRPCHandlerFromConfig(logger hclog.Logger, config *Config) connHandler { + if !config.EnableGRPCServer { + return grpc.NoOpHandler{Logger: logger} + } + + return grpc.NewHandler(config.RPCAddr) +} + func (s *Server) connectCARootsMonitor(ctx context.Context) { for { ws := memdb.NewWatchSet() @@ -949,6 +972,12 @@ func (s *Server) Shutdown() error { s.Listener.Close() } + if s.grpcHandler != nil { + if err := s.grpcHandler.Shutdown(); err != nil { + s.logger.Warn("failed to stop gRPC server", "error", err) + } + } + // Close the connection pool if s.connPool != nil { s.connPool.Shutdown() diff --git a/agent/grpc/handler.go b/agent/grpc/handler.go new file mode 100644 index 0000000000..82577ed699 --- /dev/null +++ b/agent/grpc/handler.go @@ -0,0 +1,113 @@ +/* +Package grpc provides a Handler and client for agent gRPC connections. +*/ +package grpc + +import ( + "fmt" + "net" + + "google.golang.org/grpc" +) + +// NewHandler returns a Handler for addr. +func NewHandler(addr net.Addr) *Handler { + conns := make(chan net.Conn) + + // 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(&statsHandler{}), + grpc.StreamInterceptor((&activeStreamCounter{}).Intercept), + ) + + // TODO(streaming): add gRPC services to srv here + + return &Handler{ + conns: conns, + srv: srv, + listener: &chanListener{addr: addr, conns: conns}, + } +} + +// Handler implements a handler for the rpc server listener, and the +// agent.Component interface for managing the lifecycle of the grpc.Server. +type Handler struct { + conns chan net.Conn + srv *grpc.Server + listener *chanListener +} + +// Handle the connection by sending it to a channel for the grpc.Server to receive. +func (h *Handler) Handle(conn net.Conn) { + h.conns <- conn +} + +func (h *Handler) Run() error { + return h.srv.Serve(h.listener) +} + +func (h *Handler) Shutdown() error { + h.srv.Stop() + return nil +} + +// chanListener implements net.Listener for grpc.Server. +type chanListener struct { + conns chan net.Conn + addr net.Addr +} + +// 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) { + return <-l.conns, nil +} + +func (l *chanListener) Addr() net.Addr { + return l.addr +} + +// Close does nothing. The connections are managed by the caller. +func (l *chanListener) Close() error { + return nil +} + +// NoOpHandler implements the same methods as Handler, but performs no handling. +// It may be used in place of Handler to disable the grpc server. +type NoOpHandler struct { + Logger Logger +} + +type Logger interface { + Error(string, ...interface{}) +} + +func (h NoOpHandler) Handle(conn net.Conn) { + h.Logger.Error("gRPC conn opened but gRPC RPC is disabled, closing", + "conn", logConn(conn)) + _ = conn.Close() +} + +func (h NoOpHandler) Run() error { + return nil +} + +func (h NoOpHandler) Shutdown() error { + return nil +} + +// logConn is a local copy of github.com/hashicorp/memberlist.LogConn, to avoid +// a large dependency for a minor formatting function. +// logConn is used to keep log formatting consistent. +func logConn(conn net.Conn) string { + if conn == nil { + return "from=" + } + addr := conn.RemoteAddr() + if addr == nil { + return "from=" + } + + return fmt.Sprintf("from=%s", addr.String()) +} diff --git a/agent/grpc/stats.go b/agent/grpc/stats.go new file mode 100644 index 0000000000..40821244cf --- /dev/null +++ b/agent/grpc/stats.go @@ -0,0 +1,82 @@ +package grpc + +import ( + "context" + "sync/atomic" + + "github.com/armon/go-metrics" + "google.golang.org/grpc" + "google.golang.org/grpc/stats" +) + +// statsHandler is a grpc/stats.StatsHandler which emits connection and +// request metrics to go-metrics. +type statsHandler struct { + activeConns uint64 // must be 8-byte aligned for atomic access +} + +// TagRPC implements grpcStats.StatsHandler +func (c *statsHandler) TagRPC(ctx context.Context, _ *stats.RPCTagInfo) context.Context { + // No-op + return ctx +} + +// HandleRPC implements grpcStats.StatsHandler +func (c *statsHandler) HandleRPC(_ context.Context, s stats.RPCStats) { + label := "server" + if s.IsClient() { + label = "client" + } + switch s.(type) { + case *stats.InHeader: + metrics.IncrCounter([]string{"grpc", label, "request"}, 1) + } +} + +// TagConn implements grpcStats.StatsHandler +func (c *statsHandler) TagConn(ctx context.Context, _ *stats.ConnTagInfo) context.Context { + // No-op + return ctx +} + +// HandleConn implements grpcStats.StatsHandler +func (c *statsHandler) HandleConn(_ context.Context, s stats.ConnStats) { + label := "server" + if s.IsClient() { + label = "client" + } + var count uint64 + switch s.(type) { + case *stats.ConnBegin: + count = atomic.AddUint64(&c.activeConns, 1) + case *stats.ConnEnd: + // Decrement! + count = atomic.AddUint64(&c.activeConns, ^uint64(0)) + } + metrics.SetGauge([]string{"grpc", label, "active_conns"}, float32(count)) +} + +type activeStreamCounter struct { + // count of the number of open streaming RPCs on a server. It is accessed + // atomically. + count uint64 +} + +// GRPCCountingStreamInterceptor is a grpc.ServerStreamInterceptor that emits a +// a metric of the count of open streams. +func (i *activeStreamCounter) Intercept( + srv interface{}, + ss grpc.ServerStream, + _ *grpc.StreamServerInfo, + handler grpc.StreamHandler, +) error { + + count := atomic.AddUint64(&i.count, 1) + metrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) + defer func() { + count := atomic.AddUint64(&i.count, ^uint64(0)) + metrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) + }() + + return handler(srv, ss) +} diff --git a/agent/pool/conn.go b/agent/pool/conn.go index 8a046fa4ca..79731953b4 100644 --- a/agent/pool/conn.go +++ b/agent/pool/conn.go @@ -40,23 +40,24 @@ const ( // that is supported and it might be the only one there // ever is. RPCTLSInsecure = 7 + RPCGRPC = 8 - // RPCMaxTypeValue is the maximum rpc type byte value currently used for - // the various protocols riding over our "rpc" port. + // RPCMaxTypeValue is the maximum rpc type byte value currently used for the + // various protocols riding over our "rpc" port. // - // Currently our 0-7 values are mutually exclusive with any valid first - // byte of a TLS header. The first TLS header byte will begin with a TLS - // content type and the values 0-19 are all explicitly unassigned and - // marked as requiring coordination. RFC 7983 does the marking and goes - // into some details about multiplexing connections and identifying TLS. + // Currently our 0-8 values are mutually exclusive with any valid first byte + // of a TLS header. The first TLS header byte will begin with a TLS content + // type and the values 0-19 are all explicitly unassigned and marked as + // requiring coordination. RFC 7983 does the marking and goes into some + // details about multiplexing connections and identifying TLS. // // We use this value to determine if the incoming request is actual real - // native TLS (where we can demultiplex based on ALPN protocol) or our - // older type-byte system when new connections are established. + // native TLS (where we can de-multiplex based on ALPN protocol) or our older + // type-byte system when new connections are established. // // NOTE: if you add new RPCTypes beyond this value, you must similarly bump // this value. - RPCMaxTypeValue = 7 + RPCMaxTypeValue = 8 ) const ( @@ -66,6 +67,7 @@ const ( ALPN_RPCMultiplexV2 = "consul/rpc-multi" // RPCMultiplexV2 ALPN_RPCSnapshot = "consul/rpc-snapshot" // RPCSnapshot ALPN_RPCGossip = "consul/rpc-gossip" // RPCGossip + ALPN_RPCGRPC = "consul/rpc-grpc" // RPCGRPC // wan federation additions ALPN_WANGossipPacket = "consul/wan-gossip/packet" ALPN_WANGossipStream = "consul/wan-gossip/stream" From fd42804063261a7d7cf702717c988d9c3b2f5c01 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Fri, 28 Aug 2020 19:23:40 -0400 Subject: [PATCH 083/122] grpc: Add a simple test service for testing the gRPC server --- agent/grpc/handler.go | 10 +- .../internal/testservice/simple.pb.binary.go | 28 + agent/grpc/internal/testservice/simple.pb.go | 691 ++++++++++++++++++ agent/grpc/internal/testservice/simple.proto | 17 + agent/grpc/stats.go | 1 - agent/grpc/stats_test.go | 124 ++++ 6 files changed, 863 insertions(+), 8 deletions(-) create mode 100644 agent/grpc/internal/testservice/simple.pb.binary.go create mode 100644 agent/grpc/internal/testservice/simple.pb.go create mode 100644 agent/grpc/internal/testservice/simple.proto create mode 100644 agent/grpc/stats_test.go diff --git a/agent/grpc/handler.go b/agent/grpc/handler.go index 82577ed699..ab23537ffa 100644 --- a/agent/grpc/handler.go +++ b/agent/grpc/handler.go @@ -10,10 +10,8 @@ import ( "google.golang.org/grpc" ) -// NewHandler returns a Handler for addr. +// NewHandler returns a gRPC server that accepts connections from Handle(conn). func NewHandler(addr net.Addr) *Handler { - conns := make(chan net.Conn) - // 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( @@ -24,23 +22,21 @@ func NewHandler(addr net.Addr) *Handler { // TODO(streaming): add gRPC services to srv here return &Handler{ - conns: conns, srv: srv, - listener: &chanListener{addr: addr, conns: conns}, + listener: &chanListener{addr: addr, conns: make(chan net.Conn)}, } } // Handler implements a handler for the rpc server listener, and the // agent.Component interface for managing the lifecycle of the grpc.Server. type Handler struct { - conns chan net.Conn srv *grpc.Server listener *chanListener } // Handle the connection by sending it to a channel for the grpc.Server to receive. func (h *Handler) Handle(conn net.Conn) { - h.conns <- conn + h.listener.conns <- conn } func (h *Handler) Run() error { diff --git a/agent/grpc/internal/testservice/simple.pb.binary.go b/agent/grpc/internal/testservice/simple.pb.binary.go new file mode 100644 index 0000000000..ef203aaa64 --- /dev/null +++ b/agent/grpc/internal/testservice/simple.pb.binary.go @@ -0,0 +1,28 @@ +// Code generated by protoc-gen-go-binary. DO NOT EDIT. +// source: agent/grpc/internal/testservice/simple.proto + +package testservice + +import ( + "github.com/golang/protobuf/proto" +) + +// MarshalBinary implements encoding.BinaryMarshaler +func (msg *Req) MarshalBinary() ([]byte, error) { + return proto.Marshal(msg) +} + +// UnmarshalBinary implements encoding.BinaryUnmarshaler +func (msg *Req) UnmarshalBinary(b []byte) error { + return proto.Unmarshal(b, msg) +} + +// MarshalBinary implements encoding.BinaryMarshaler +func (msg *Resp) MarshalBinary() ([]byte, error) { + return proto.Marshal(msg) +} + +// UnmarshalBinary implements encoding.BinaryUnmarshaler +func (msg *Resp) UnmarshalBinary(b []byte) error { + return proto.Unmarshal(b, msg) +} diff --git a/agent/grpc/internal/testservice/simple.pb.go b/agent/grpc/internal/testservice/simple.pb.go new file mode 100644 index 0000000000..ee6ebc1ec2 --- /dev/null +++ b/agent/grpc/internal/testservice/simple.pb.go @@ -0,0 +1,691 @@ +// Code generated by protoc-gen-gogo. DO NOT EDIT. +// source: agent/grpc/internal/testservice/simple.proto + +package testservice + +import ( + context "context" + fmt "fmt" + proto "github.com/golang/protobuf/proto" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" + io "io" + math "math" + math_bits "math/bits" +) + +// Reference imports to suppress errors if they are not otherwise used. +var _ = proto.Marshal +var _ = fmt.Errorf +var _ = math.Inf + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the proto package it is being compiled against. +// A compilation error at this line likely means your copy of the +// proto package needs to be updated. +const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package + +type Req struct { + Datacenter string `protobuf:"bytes,1,opt,name=Datacenter,proto3" json:"Datacenter,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Req) Reset() { *m = Req{} } +func (m *Req) String() string { return proto.CompactTextString(m) } +func (*Req) ProtoMessage() {} +func (*Req) Descriptor() ([]byte, []int) { + return fileDescriptor_3009a77c573f826d, []int{0} +} +func (m *Req) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Req) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Req.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Req) XXX_Merge(src proto.Message) { + xxx_messageInfo_Req.Merge(m, src) +} +func (m *Req) XXX_Size() int { + return m.Size() +} +func (m *Req) XXX_DiscardUnknown() { + xxx_messageInfo_Req.DiscardUnknown(m) +} + +var xxx_messageInfo_Req proto.InternalMessageInfo + +func (m *Req) GetDatacenter() string { + if m != nil { + return m.Datacenter + } + return "" +} + +type Resp struct { + ServerName string `protobuf:"bytes,1,opt,name=ServerName,proto3" json:"ServerName,omitempty"` + XXX_NoUnkeyedLiteral struct{} `json:"-"` + XXX_unrecognized []byte `json:"-"` + XXX_sizecache int32 `json:"-"` +} + +func (m *Resp) Reset() { *m = Resp{} } +func (m *Resp) String() string { return proto.CompactTextString(m) } +func (*Resp) ProtoMessage() {} +func (*Resp) Descriptor() ([]byte, []int) { + return fileDescriptor_3009a77c573f826d, []int{1} +} +func (m *Resp) XXX_Unmarshal(b []byte) error { + return m.Unmarshal(b) +} +func (m *Resp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { + if deterministic { + return xxx_messageInfo_Resp.Marshal(b, m, deterministic) + } else { + b = b[:cap(b)] + n, err := m.MarshalToSizedBuffer(b) + if err != nil { + return nil, err + } + return b[:n], nil + } +} +func (m *Resp) XXX_Merge(src proto.Message) { + xxx_messageInfo_Resp.Merge(m, src) +} +func (m *Resp) XXX_Size() int { + return m.Size() +} +func (m *Resp) XXX_DiscardUnknown() { + xxx_messageInfo_Resp.DiscardUnknown(m) +} + +var xxx_messageInfo_Resp proto.InternalMessageInfo + +func (m *Resp) GetServerName() string { + if m != nil { + return m.ServerName + } + return "" +} + +func init() { + proto.RegisterType((*Req)(nil), "testservice.Req") + proto.RegisterType((*Resp)(nil), "testservice.Resp") +} + +func init() { + proto.RegisterFile("agent/grpc/internal/testservice/simple.proto", fileDescriptor_3009a77c573f826d) +} + +var fileDescriptor_3009a77c573f826d = []byte{ + // 200 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xd2, 0x49, 0x4c, 0x4f, 0xcd, + 0x2b, 0xd1, 0x4f, 0x2f, 0x2a, 0x48, 0xd6, 0xcf, 0xcc, 0x2b, 0x49, 0x2d, 0xca, 0x4b, 0xcc, 0xd1, + 0x2f, 0x49, 0x2d, 0x2e, 0x29, 0x4e, 0x2d, 0x2a, 0xcb, 0x4c, 0x4e, 0xd5, 0x2f, 0xce, 0xcc, 0x2d, + 0xc8, 0x49, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x46, 0x92, 0x51, 0x52, 0xe5, 0x62, + 0x0e, 0x4a, 0x2d, 0x14, 0x92, 0xe3, 0xe2, 0x72, 0x49, 0x2c, 0x49, 0x4c, 0x4e, 0x05, 0xe9, 0x96, + 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x0c, 0x42, 0x12, 0x51, 0x52, 0xe3, 0x62, 0x09, 0x4a, 0x2d, 0x2e, + 0x00, 0xa9, 0x0b, 0x4e, 0x2d, 0x2a, 0x4b, 0x2d, 0xf2, 0x4b, 0xcc, 0x4d, 0x85, 0xa9, 0x43, 0x88, + 0x18, 0xe5, 0x72, 0xb1, 0x05, 0x83, 0xed, 0x12, 0x32, 0xe2, 0xe2, 0x0c, 0xce, 0xcf, 0x4d, 0x2d, + 0xc9, 0xc8, 0xcc, 0x4b, 0x17, 0x12, 0xd0, 0x43, 0xb2, 0x53, 0x2f, 0x28, 0xb5, 0x50, 0x4a, 0x10, + 0x4d, 0xa4, 0xb8, 0x40, 0x89, 0x41, 0x48, 0x9f, 0x8b, 0xc5, 0x2d, 0x27, 0xbf, 0x9c, 0x48, 0xe5, + 0x06, 0x8c, 0x4e, 0x02, 0x27, 0x1e, 0xc9, 0x31, 0x5e, 0x78, 0x24, 0xc7, 0xf8, 0xe0, 0x91, 0x1c, + 0xe3, 0x8c, 0xc7, 0x72, 0x0c, 0x49, 0x6c, 0x60, 0x3f, 0x1a, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, + 0x61, 0xd3, 0x5e, 0xba, 0x13, 0x01, 0x00, 0x00, +} + +// Reference imports to suppress errors if they are not otherwise used. +var _ context.Context +var _ grpc.ClientConn + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +const _ = grpc.SupportPackageIsVersion4 + +// SimpleClient is the client API for Simple service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. +type SimpleClient interface { + Something(ctx context.Context, in *Req, opts ...grpc.CallOption) (*Resp, error) + Flow(ctx context.Context, in *Req, opts ...grpc.CallOption) (Simple_FlowClient, error) +} + +type simpleClient struct { + cc *grpc.ClientConn +} + +func NewSimpleClient(cc *grpc.ClientConn) SimpleClient { + return &simpleClient{cc} +} + +func (c *simpleClient) Something(ctx context.Context, in *Req, opts ...grpc.CallOption) (*Resp, error) { + out := new(Resp) + err := c.cc.Invoke(ctx, "/testservice.Simple/Something", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *simpleClient) Flow(ctx context.Context, in *Req, opts ...grpc.CallOption) (Simple_FlowClient, error) { + stream, err := c.cc.NewStream(ctx, &_Simple_serviceDesc.Streams[0], "/testservice.Simple/Flow", opts...) + if err != nil { + return nil, err + } + x := &simpleFlowClient{stream} + if err := x.ClientStream.SendMsg(in); err != nil { + return nil, err + } + if err := x.ClientStream.CloseSend(); err != nil { + return nil, err + } + return x, nil +} + +type Simple_FlowClient interface { + Recv() (*Resp, error) + grpc.ClientStream +} + +type simpleFlowClient struct { + grpc.ClientStream +} + +func (x *simpleFlowClient) Recv() (*Resp, error) { + m := new(Resp) + if err := x.ClientStream.RecvMsg(m); err != nil { + return nil, err + } + return m, nil +} + +// SimpleServer is the server API for Simple service. +type SimpleServer interface { + Something(context.Context, *Req) (*Resp, error) + Flow(*Req, Simple_FlowServer) error +} + +// UnimplementedSimpleServer can be embedded to have forward compatible implementations. +type UnimplementedSimpleServer struct { +} + +func (*UnimplementedSimpleServer) Something(ctx context.Context, req *Req) (*Resp, error) { + return nil, status.Errorf(codes.Unimplemented, "method Something not implemented") +} +func (*UnimplementedSimpleServer) Flow(req *Req, srv Simple_FlowServer) error { + return status.Errorf(codes.Unimplemented, "method Flow not implemented") +} + +func RegisterSimpleServer(s *grpc.Server, srv SimpleServer) { + s.RegisterService(&_Simple_serviceDesc, srv) +} + +func _Simple_Something_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(Req) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(SimpleServer).Something(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/testservice.Simple/Something", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(SimpleServer).Something(ctx, req.(*Req)) + } + return interceptor(ctx, in, info, handler) +} + +func _Simple_Flow_Handler(srv interface{}, stream grpc.ServerStream) error { + m := new(Req) + if err := stream.RecvMsg(m); err != nil { + return err + } + return srv.(SimpleServer).Flow(m, &simpleFlowServer{stream}) +} + +type Simple_FlowServer interface { + Send(*Resp) error + grpc.ServerStream +} + +type simpleFlowServer struct { + grpc.ServerStream +} + +func (x *simpleFlowServer) Send(m *Resp) error { + return x.ServerStream.SendMsg(m) +} + +var _Simple_serviceDesc = grpc.ServiceDesc{ + ServiceName: "testservice.Simple", + HandlerType: (*SimpleServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "Something", + Handler: _Simple_Something_Handler, + }, + }, + Streams: []grpc.StreamDesc{ + { + StreamName: "Flow", + Handler: _Simple_Flow_Handler, + ServerStreams: true, + }, + }, + Metadata: "agent/grpc/internal/testservice/simple.proto", +} + +func (m *Req) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Req) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Req) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.Datacenter) > 0 { + i -= len(m.Datacenter) + copy(dAtA[i:], m.Datacenter) + i = encodeVarintSimple(dAtA, i, uint64(len(m.Datacenter))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func (m *Resp) Marshal() (dAtA []byte, err error) { + size := m.Size() + dAtA = make([]byte, size) + n, err := m.MarshalToSizedBuffer(dAtA[:size]) + if err != nil { + return nil, err + } + return dAtA[:n], nil +} + +func (m *Resp) MarshalTo(dAtA []byte) (int, error) { + size := m.Size() + return m.MarshalToSizedBuffer(dAtA[:size]) +} + +func (m *Resp) MarshalToSizedBuffer(dAtA []byte) (int, error) { + i := len(dAtA) + _ = i + var l int + _ = l + if m.XXX_unrecognized != nil { + i -= len(m.XXX_unrecognized) + copy(dAtA[i:], m.XXX_unrecognized) + } + if len(m.ServerName) > 0 { + i -= len(m.ServerName) + copy(dAtA[i:], m.ServerName) + i = encodeVarintSimple(dAtA, i, uint64(len(m.ServerName))) + i-- + dAtA[i] = 0xa + } + return len(dAtA) - i, nil +} + +func encodeVarintSimple(dAtA []byte, offset int, v uint64) int { + offset -= sovSimple(v) + base := offset + for v >= 1<<7 { + dAtA[offset] = uint8(v&0x7f | 0x80) + v >>= 7 + offset++ + } + dAtA[offset] = uint8(v) + return base +} +func (m *Req) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.Datacenter) + if l > 0 { + n += 1 + l + sovSimple(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func (m *Resp) Size() (n int) { + if m == nil { + return 0 + } + var l int + _ = l + l = len(m.ServerName) + if l > 0 { + n += 1 + l + sovSimple(uint64(l)) + } + if m.XXX_unrecognized != nil { + n += len(m.XXX_unrecognized) + } + return n +} + +func sovSimple(x uint64) (n int) { + return (math_bits.Len64(x|1) + 6) / 7 +} +func sozSimple(x uint64) (n int) { + return sovSimple(uint64((x << 1) ^ uint64((int64(x) >> 63)))) +} +func (m *Req) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowSimple + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Req: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Req: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Datacenter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowSimple + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthSimple + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthSimple + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Datacenter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipSimple(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthSimple + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthSimple + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func (m *Resp) Unmarshal(dAtA []byte) error { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + preIndex := iNdEx + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowSimple + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + fieldNum := int32(wire >> 3) + wireType := int(wire & 0x7) + if wireType == 4 { + return fmt.Errorf("proto: Resp: wiretype end group for non-group") + } + if fieldNum <= 0 { + return fmt.Errorf("proto: Resp: illegal tag %d (wire type %d)", fieldNum, wire) + } + switch fieldNum { + case 1: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field ServerName", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowSimple + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthSimple + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthSimple + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.ServerName = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex + default: + iNdEx = preIndex + skippy, err := skipSimple(dAtA[iNdEx:]) + if err != nil { + return err + } + if skippy < 0 { + return ErrInvalidLengthSimple + } + if (iNdEx + skippy) < 0 { + return ErrInvalidLengthSimple + } + if (iNdEx + skippy) > l { + return io.ErrUnexpectedEOF + } + m.XXX_unrecognized = append(m.XXX_unrecognized, dAtA[iNdEx:iNdEx+skippy]...) + iNdEx += skippy + } + } + + if iNdEx > l { + return io.ErrUnexpectedEOF + } + return nil +} +func skipSimple(dAtA []byte) (n int, err error) { + l := len(dAtA) + iNdEx := 0 + for iNdEx < l { + var wire uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowSimple + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + wire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + wireType := int(wire & 0x7) + switch wireType { + case 0: + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowSimple + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + iNdEx++ + if dAtA[iNdEx-1] < 0x80 { + break + } + } + return iNdEx, nil + case 1: + iNdEx += 8 + return iNdEx, nil + case 2: + var length int + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowSimple + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + length |= (int(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + if length < 0 { + return 0, ErrInvalidLengthSimple + } + iNdEx += length + if iNdEx < 0 { + return 0, ErrInvalidLengthSimple + } + return iNdEx, nil + case 3: + for { + var innerWire uint64 + var start int = iNdEx + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return 0, ErrIntOverflowSimple + } + if iNdEx >= l { + return 0, io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + innerWire |= (uint64(b) & 0x7F) << shift + if b < 0x80 { + break + } + } + innerWireType := int(innerWire & 0x7) + if innerWireType == 4 { + break + } + next, err := skipSimple(dAtA[start:]) + if err != nil { + return 0, err + } + iNdEx = start + next + if iNdEx < 0 { + return 0, ErrInvalidLengthSimple + } + } + return iNdEx, nil + case 4: + return iNdEx, nil + case 5: + iNdEx += 4 + return iNdEx, nil + default: + return 0, fmt.Errorf("proto: illegal wireType %d", wireType) + } + } + panic("unreachable") +} + +var ( + ErrInvalidLengthSimple = fmt.Errorf("proto: negative length found during unmarshaling") + ErrIntOverflowSimple = fmt.Errorf("proto: integer overflow") +) diff --git a/agent/grpc/internal/testservice/simple.proto b/agent/grpc/internal/testservice/simple.proto new file mode 100644 index 0000000000..bffa86def5 --- /dev/null +++ b/agent/grpc/internal/testservice/simple.proto @@ -0,0 +1,17 @@ +syntax = "proto3"; + +package testservice; + +// Simple service is used to test gRPC plumbing. +service Simple { + rpc Something(Req) returns (Resp) {} + rpc Flow(Req) returns (stream Resp) {} +} + +message Req { + string Datacenter = 1; +} + +message Resp { + string ServerName = 1; +} \ No newline at end of file diff --git a/agent/grpc/stats.go b/agent/grpc/stats.go index 40821244cf..cbf443878e 100644 --- a/agent/grpc/stats.go +++ b/agent/grpc/stats.go @@ -70,7 +70,6 @@ func (i *activeStreamCounter) Intercept( _ *grpc.StreamServerInfo, handler grpc.StreamHandler, ) error { - count := atomic.AddUint64(&i.count, 1) metrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) defer func() { diff --git a/agent/grpc/stats_test.go b/agent/grpc/stats_test.go new file mode 100644 index 0000000000..cc99100701 --- /dev/null +++ b/agent/grpc/stats_test.go @@ -0,0 +1,124 @@ +package grpc + +import ( + "context" + "net" + "testing" + "time" + + "github.com/armon/go-metrics" + "github.com/hashicorp/consul/agent/grpc/internal/testservice" + "github.com/stretchr/testify/require" + "golang.org/x/sync/errgroup" + "google.golang.org/grpc" +) + +func TestHandler_EmitsStats(t *testing.T) { + sink := patchGlobalMetrics(t) + + addr := &net.IPAddr{IP: net.ParseIP("127.0.0.1")} + handler := NewHandler(addr) + + testservice.RegisterSimpleServer(handler.srv, &simple{}) + + lis, err := net.Listen("tcp", "127.0.0.1:0") + require.NoError(t, err) + defer lis.Close() + + ctx, cancel := context.WithCancel(context.Background()) + t.Cleanup(cancel) + + g, ctx := errgroup.WithContext(ctx) + g.Go(func() error { + return handler.srv.Serve(lis) + }) + t.Cleanup(func() { + if err := handler.Shutdown(); err != nil { + t.Logf("grpc server shutdown: %v", err) + } + if err := g.Wait(); err != nil { + t.Logf("grpc server error: %v", err) + } + }) + + conn, err := grpc.DialContext(ctx, lis.Addr().String(), grpc.WithInsecure()) + require.NoError(t, err) + defer conn.Close() + + client := testservice.NewSimpleClient(conn) + fClient, err := client.Flow(ctx, &testservice.Req{Datacenter: "mine"}) + require.NoError(t, err) + + // Wait for the first event so that we know the stream is sending. + _, err = fClient.Recv() + require.NoError(t, err) + + expectedCounter := []metricCall{ + {key: []string{"testing", "grpc", "server", "request"}, val: 1}, + } + require.Equal(t, expectedCounter, sink.incrCounterCalls) + expectedGauge := []metricCall{ + {key: []string{"testing", "grpc", "server", "active_conns"}, val: 1}, + {key: []string{"testing", "grpc", "server", "active_streams"}, val: 1}, + // TODO: why is the count reset to 0 before the client receives the second message? + {key: []string{"testing", "grpc", "server", "active_streams"}, val: 0}, + } + require.Equal(t, expectedGauge, sink.gaugeCalls) +} + +type simple struct { + name string +} + +func (s *simple) Flow(_ *testservice.Req, flow testservice.Simple_FlowServer) error { + if err := flow.Send(&testservice.Resp{ServerName: "one"}); err != nil { + return err + } + if err := flow.Send(&testservice.Resp{ServerName: "two"}); err != nil { + return err + } + return nil +} + +func (s *simple) Something(_ context.Context, _ *testservice.Req) (*testservice.Resp, error) { + return &testservice.Resp{ServerName: "the-fake-service-name"}, nil +} + +func patchGlobalMetrics(t *testing.T) *fakeMetricsSink { + t.Helper() + + sink := &fakeMetricsSink{} + cfg := &metrics.Config{ + ServiceName: "testing", + TimerGranularity: time.Millisecond, // Timers are in milliseconds + ProfileInterval: time.Second, // Poll runtime every second + FilterDefault: true, + } + _, err := metrics.NewGlobal(cfg, sink) + require.NoError(t, err) + t.Cleanup(func() { + _, err = metrics.NewGlobal(cfg, &metrics.BlackholeSink{}) + require.NoError(t, err, "failed to reset global metrics") + }) + return sink +} + +type fakeMetricsSink struct { + metrics.BlackholeSink + gaugeCalls []metricCall + incrCounterCalls []metricCall +} + +func (f *fakeMetricsSink) SetGaugeWithLabels(key []string, val float32, labels []metrics.Label) { + f.gaugeCalls = append(f.gaugeCalls, metricCall{key: key, val: val, labels: labels}) +} + +func (f *fakeMetricsSink) IncrCounterWithLabels(key []string, val float32, labels []metrics.Label) { + f.incrCounterCalls = append(f.incrCounterCalls, metricCall{key: key, val: val, labels: labels}) +} + +type metricCall struct { + key []string + val float32 + labels []metrics.Label +} From 71237fef4f0436cb25129ee6e8881bf0edafc2bb Mon Sep 17 00:00:00 2001 From: Luke Kysow <1034429+lkysow@users.noreply.github.com> Date: Tue, 8 Sep 2020 11:11:48 -0700 Subject: [PATCH 084/122] Update useSystemRoots docs for k8s --- website/pages/docs/k8s/installation/helm.mdx | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/website/pages/docs/k8s/installation/helm.mdx b/website/pages/docs/k8s/installation/helm.mdx index 13879b8eec..e238549c5d 100644 --- a/website/pages/docs/k8s/installation/helm.mdx +++ b/website/pages/docs/k8s/installation/helm.mdx @@ -386,8 +386,13 @@ and consider if they're appropriate for your deployment. - `tlsServerName` ((#v-externalservers-tlsservername)) (`string: null`) - The server name to use as the SNI host header when connecting with HTTPS. - - `useSystemRoots` ((#v-externalservers-usesystemroots)) (`boolean: false`) - If true, the Helm chart will ignore the CA set in `global.tls.caCert` - and will rely on the container's system CAs for TLS verification when talking to Consul servers. Otherwise, the chart will use `global.tls.caCert`. + - `useSystemRoots` ((#v-externalservers-usesystemroots)) (`boolean: false`) - If true, consul-k8s components will ignore the CA set in + [`global.tls.caCert`](#v-global-cacert) when making HTTPS calls to Consul servers and + will instead use the consul-k8s image's system CAs for TLS verification. + If false, consul-k8s components will use `global.tls.caCert` when + making HTTPS calls to Consul servers. + **NOTE:** This does not affect Consul's internal RPC communication which will + always use `global.tls.caCert`. - `k8sAuthMethodHost` ((#v-externalservers-k8sauthmethodhost)) (`string: null`) - If you are setting `global.acls.manageSystemACLs` and `connectInject.enabled` to true, set `k8sAuthMethodHost` to the address of the Kubernetes API server. From 8595fef2bedb120881837bfd5c792f1293457239 Mon Sep 17 00:00:00 2001 From: Luke Kysow <1034429+lkysow@users.noreply.github.com> Date: Tue, 8 Sep 2020 11:31:04 -0700 Subject: [PATCH 085/122] Move helm reference out --- website/data/docs-navigation.js | 2 +- website/pages/docs/k8s/{installation => }/helm.mdx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) rename website/pages/docs/k8s/{installation => }/helm.mdx (99%) diff --git a/website/data/docs-navigation.js b/website/data/docs-navigation.js index 8fd74023b3..ceee6ffd18 100644 --- a/website/data/docs-navigation.js +++ b/website/data/docs-navigation.js @@ -94,7 +94,6 @@ export default [ { category: 'installation', content: [ - 'helm', { category: 'platforms', name: 'Platform Guides', @@ -151,6 +150,7 @@ export default [ 'ambassador', 'upgrade', 'uninstall', + 'helm', ], }, { diff --git a/website/pages/docs/k8s/installation/helm.mdx b/website/pages/docs/k8s/helm.mdx similarity index 99% rename from website/pages/docs/k8s/installation/helm.mdx rename to website/pages/docs/k8s/helm.mdx index e238549c5d..5a32c0e0be 100644 --- a/website/pages/docs/k8s/installation/helm.mdx +++ b/website/pages/docs/k8s/helm.mdx @@ -1,7 +1,7 @@ --- layout: docs -page_title: Install with Helm Chart -sidebar_title: Install with Helm Chart +page_title: Helm Chart Reference +sidebar_title: Helm Chart Reference description: Reference for the Consul Helm chart. --- From d21740a3086e3b44f87436e4262cf67d0771adfb Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Tue, 8 Sep 2020 15:55:22 -0700 Subject: [PATCH 086/122] docs: Fix rendering of link under service config endpoint HTML and markdown cannot be present in the same line. Change markdown link to HTML anchor element. --- website/pages/api-docs/agent/service.mdx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/website/pages/api-docs/agent/service.mdx b/website/pages/api-docs/agent/service.mdx index 1b99e751bc..20e166f1cf 100644 --- a/website/pages/api-docs/agent/service.mdx +++ b/website/pages/api-docs/agent/service.mdx @@ -145,8 +145,7 @@ The table below shows this endpoint's support for | ----------------- | ----------------- | ------------- | -------------- | | `YES`1 | `none` | `none` | `service:read` | -1 Supports [hash-based blocking](/api/features/blocking#hash-based-blocking-queries) -only. +1 Supports hash-based blocking only. ### Parameters From 5cc1fefa95009aaf25fff22f887004b059ab33e2 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Wed, 9 Sep 2020 09:12:09 +0100 Subject: [PATCH 087/122] ui: [Bugfix] KV creation from within a 'folder' (#8613) * ui: Prefill an newly created KV for the when we are on a create route * ui: Add some KV creation tests --- ui-v2/app/components/consul-kv-form/index.hbs | 2 +- ui-v2/app/routes/dc/kv/edit.js | 12 +++- ui-v2/tests/acceptance/dc/kvs/create.feature | 64 +++++++++++++++---- 3 files changed, 62 insertions(+), 16 deletions(-) diff --git a/ui-v2/app/components/consul-kv-form/index.hbs b/ui-v2/app/components/consul-kv-form/index.hbs index f5fff53910..a0a0670814 100644 --- a/ui-v2/app/components/consul-kv-form/index.hbs +++ b/ui-v2/app/components/consul-kv-form/index.hbs @@ -31,7 +31,7 @@

    - -

    Learn more about Consul cloud offerings

    Date: Mon, 14 Sep 2020 10:24:39 -0700 Subject: [PATCH 108/122] Create compatability.mdx for Consul Kubernetes docs (#8655) Create Compatibility Matrix page for Consul and Consul on Kubernetes underneath Upgrade section in the Kubernetes docs. --- website/data/docs-navigation.js | 5 ++++- .../pages/docs/k8s/upgrade/compatibility.mdx | 20 +++++++++++++++++++ .../k8s/{upgrade.mdx => upgrade/index.mdx} | 0 3 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 website/pages/docs/k8s/upgrade/compatibility.mdx rename website/pages/docs/k8s/{upgrade.mdx => upgrade/index.mdx} (100%) diff --git a/website/data/docs-navigation.js b/website/data/docs-navigation.js index f4b8730511..016df94c68 100644 --- a/website/data/docs-navigation.js +++ b/website/data/docs-navigation.js @@ -155,7 +155,10 @@ export default [ }, 'service-sync', 'dns', - 'upgrade', + { + category: 'upgrade', + content: ['compatibility'], + }, 'uninstall', 'helm', ], diff --git a/website/pages/docs/k8s/upgrade/compatibility.mdx b/website/pages/docs/k8s/upgrade/compatibility.mdx new file mode 100644 index 0000000000..62c50f1871 --- /dev/null +++ b/website/pages/docs/k8s/upgrade/compatibility.mdx @@ -0,0 +1,20 @@ +--- +layout: docs +page_title: Compatibility Matrix +sidebar_title: Compatibility Matrix +description: Compatibility Matrix for Consul Kubernetes and Consul +--- + +# Compatibility Matrix for Consul Kubernetes and Consul + +Consul Kubernetes (consul-k8s) is managed using Consul Helm. For every release of Consul Kubernetes, a new version of the Consul Kubernetes +Helm chart and Consul Kubernetes binary is released through the HashiCorp Helm repository. The recommended best practice is to upgrade +the Helm chart which will ensure a compatible version of the Consul Kubernetes binary is used. + +## Supported Versions + +| Consul Version | Compatible Consul Helm Versions | +| ------------------- | -------------------------------- | +| 1.8.x | 0.22.0 - 0.24.1 | +| 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.mdx b/website/pages/docs/k8s/upgrade/index.mdx similarity index 100% rename from website/pages/docs/k8s/upgrade.mdx rename to website/pages/docs/k8s/upgrade/index.mdx From 9e9d5b78eb0d5338e5bc5cb19fe812e9cf4251b1 Mon Sep 17 00:00:00 2001 From: Derek Strickland <1111455+DerekStrickland@users.noreply.github.com> Date: Mon, 14 Sep 2020 13:37:35 -0400 Subject: [PATCH 109/122] Fixed broken install links (#8674) --- website/pages/docs/k8s/connect/connect-ca-provider.mdx | 2 +- website/pages/docs/k8s/connect/index.mdx | 4 ++-- website/pages/docs/k8s/connect/ingress-gateways.mdx | 2 +- website/pages/docs/k8s/connect/terminating-gateways.mdx | 2 +- website/pages/docs/k8s/installation/install.mdx | 6 +++--- .../docs/k8s/installation/multi-cluster/kubernetes.mdx | 6 +++--- .../k8s/installation/platforms/self-hosted-kubernetes.mdx | 2 +- website/pages/docs/k8s/service-sync.mdx | 2 +- 8 files changed, 13 insertions(+), 13 deletions(-) diff --git a/website/pages/docs/k8s/connect/connect-ca-provider.mdx b/website/pages/docs/k8s/connect/connect-ca-provider.mdx index 36a3e1ede1..edecadc15f 100644 --- a/website/pages/docs/k8s/connect/connect-ca-provider.mdx +++ b/website/pages/docs/k8s/connect/connect-ca-provider.mdx @@ -101,7 +101,7 @@ connectInject: enabled: true ``` -Finally, [install](/docs/k8s/installation#installing-consul) the Helm chart using the above config file: +Finally, [install](/docs/k8s/installation/install#installing-consul) the Helm chart using the above config file: ```shell-session $ helm install consul -f config.yaml hashicorp/consul diff --git a/website/pages/docs/k8s/connect/index.mdx b/website/pages/docs/k8s/connect/index.mdx index 802b928514..9f2ad33d43 100644 --- a/website/pages/docs/k8s/connect/index.mdx +++ b/website/pages/docs/k8s/connect/index.mdx @@ -21,7 +21,7 @@ your cluster, making configuration for Kubernetes automatic. This functionality is provided by the [consul-k8s project](https://github.com/hashicorp/consul-k8s) and can be automatically installed and configured using the -[Consul Helm chart](/docs/k8s/installation). +[Consul Helm chart](/docs/k8s/installation/install). ## Usage @@ -332,7 +332,7 @@ provided by the [consul-k8s project](https://github.com/hashicorp/consul-k8s). This enables the automatic pod mutation shown in the usage section above. Installation of the mutating admission webhook is automated using the -[Helm chart](/docs/k8s/installation). +[Helm chart](/docs/k8s/installation/install). To install the Connect injector, enable the Connect injection feature using [Helm values](/docs/k8s/helm#configuration-values) and diff --git a/website/pages/docs/k8s/connect/ingress-gateways.mdx b/website/pages/docs/k8s/connect/ingress-gateways.mdx index a310d203f6..abf1da71d5 100644 --- a/website/pages/docs/k8s/connect/ingress-gateways.mdx +++ b/website/pages/docs/k8s/connect/ingress-gateways.mdx @@ -57,7 +57,7 @@ in the `ports` object for each gateway. By default ports 8080 and 8443 are expos ## Deploying the helm chart Ensure you have the latest consul-helm chart and install Consul via helm using the following -[guide](/docs/k8s/installation#installing-consul) while being sure to provide the yaml configuration +[guide](/docs/k8s/installation/install#installing-consul) while being sure to provide the yaml configuration as previously discussed. ## Configuring the gateway diff --git a/website/pages/docs/k8s/connect/terminating-gateways.mdx b/website/pages/docs/k8s/connect/terminating-gateways.mdx index 6e5d1c0a33..473ced318c 100644 --- a/website/pages/docs/k8s/connect/terminating-gateways.mdx +++ b/website/pages/docs/k8s/connect/terminating-gateways.mdx @@ -42,7 +42,7 @@ terminatingGateways: ## Deploying the helm chart Ensure you have the latest consul-helm chart and install Consul via helm using the following -[guide](/docs/k8s/installation#installing-consul) while being sure to provide the yaml configuration +[guide](/docs/k8s/installation/install#installing-consul) while being sure to provide the yaml configuration as previously discussed. ## Accessing the Consul agent diff --git a/website/pages/docs/k8s/installation/install.mdx b/website/pages/docs/k8s/installation/install.mdx index db8c796491..d1998f81b2 100644 --- a/website/pages/docs/k8s/installation/install.mdx +++ b/website/pages/docs/k8s/installation/install.mdx @@ -18,7 +18,7 @@ a server running inside or outside of Kubernetes. This page starts with a large how-to section for various specific tasks. To learn more about the general architecture of Consul on Kubernetes, scroll -down to the [architecture](/docs/k8s/installation#architecture) section. +down to the [architecture](/docs/k8s/installation/install#architecture) section. If you would like to get hands-on experience testing Consul as a service mesh for Kubernetes, check the guides in the [Getting Started with Consul service mesh](https://learn.hashicorp.com/consul/gs-consul-service-mesh/understand-consul-service-mesh?utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS) track. @@ -185,7 +185,7 @@ has important caching behavior, and allows you to use the simpler [`/agent` endpoints for services and checks](/api/agent). For Consul installed via the Helm chart, a client agent is installed on -each Kubernetes node. This is explained in the [architecture](/docs/k8s/installation#client-agents) +each Kubernetes node. This is explained in the [architecture](/docs/k8s/installation/install#client-agents) section. To access the agent, you may use the [downward API](https://kubernetes.io/docs/tasks/inject-data-application/downward-api-volume-expose-pod-information/). @@ -297,7 +297,7 @@ The clients expose the Consul HTTP API via a static port (default 8500) bound to the host port. This enables all other pods on the node to connect to the node-local agent using the host IP that can be retrieved via the Kubernetes downward API. See -[accessing the Consul HTTP API](/docs/k8s/installation#accessing-the-consul-http-api) +[accessing the Consul HTTP API](/docs/k8s/installation/install#accessing-the-consul-http-api) for an example. There is a major limitation to this: there is no way to bind to a local-only diff --git a/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx b/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx index 7135709706..dde7c78f7b 100644 --- a/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx +++ b/website/pages/docs/k8s/installation/multi-cluster/kubernetes.mdx @@ -113,7 +113,7 @@ Modifications: mesh gateway, for example using a Node Port service or a custom DNS entry, see the [Helm reference](/docs/k8s/helm#v-meshgateway) for that setting. -With your `config.yaml` ready to go, follow our [Installation Guide](/docs/k8s/installation) +With your `config.yaml` ready to go, follow our [Installation Guide](/docs/k8s/installation/install) to install Consul on your primary cluster and then skip ahead to the [Federation Secret](#federation-secret) section. @@ -337,7 +337,7 @@ Modifications: mesh gateway, for example using a Node Port service or a custom DNS entry, see the [Helm reference](/docs/k8s/helm#v-meshgateway) for that setting. -With your `config.yaml` ready to go, follow our [Installation Guide](/docs/k8s/installation) +With your `config.yaml` ready to go, follow our [Installation Guide](/docs/k8s/installation/install) to install Consul on your secondary cluster(s). ## Verifying Federation @@ -375,7 +375,7 @@ You can switch kubectl contexts and run the same command in `dc2` with the flag ### Consul UI We can also use the Consul UI to verify federation. -See [Viewing the Consul UI](/docs/k8s/installation#viewing-the-consul-ui) +See [Viewing the Consul UI](/docs/k8s/installation/install#viewing-the-consul-ui) for instructions on how to view the UI. ~> NOTE: If ACLs are enabled, your kubectl context must be in the primary datacenter diff --git a/website/pages/docs/k8s/installation/platforms/self-hosted-kubernetes.mdx b/website/pages/docs/k8s/installation/platforms/self-hosted-kubernetes.mdx index 6914ca0e90..afe59bcadc 100644 --- a/website/pages/docs/k8s/installation/platforms/self-hosted-kubernetes.mdx +++ b/website/pages/docs/k8s/installation/platforms/self-hosted-kubernetes.mdx @@ -9,7 +9,7 @@ description: Installing Consul on Self Hosted Kubernetes Except for creating persistent volumes (see below), installing Consul on your self-hosted Kubernetes cluster is the same process as installing Consul on a -cloud-hosted Kubernetes cluster. See the [Installation Overview](/docs/k8s/installation) +cloud-hosted Kubernetes cluster. See the [Installation Overview](/docs/k8s/installation/install) for install instructions. ## Predefined Persistent Volume Claims (PVCs) diff --git a/website/pages/docs/k8s/service-sync.mdx b/website/pages/docs/k8s/service-sync.mdx index 4e474530d9..46ab6a8d9b 100644 --- a/website/pages/docs/k8s/service-sync.mdx +++ b/website/pages/docs/k8s/service-sync.mdx @@ -15,7 +15,7 @@ services are available to Consul agents and services in Consul can be available as first-class Kubernetes services. This functionality is provided by the [consul-k8s project](https://github.com/hashicorp/consul-k8s) and can be automatically installed and configured using the -[Consul Helm chart](/docs/k8s/installation). +[Consul Helm chart](/docs/k8s/installation/install). **Why sync Kubernetes services to Consul?** Kubernetes services synced to the Consul catalog enable Kubernetes services to be accessed by any node that From a24a60ec751b8e9bd431d9a5c6daa68b2aefefb4 Mon Sep 17 00:00:00 2001 From: Freddy Date: Mon, 14 Sep 2020 14:16:47 -0600 Subject: [PATCH 110/122] Create 8585.txt --- .changelog/8585.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/8585.txt diff --git a/.changelog/8585.txt b/.changelog/8585.txt new file mode 100644 index 0000000000..a91d8d77f1 --- /dev/null +++ b/.changelog/8585.txt @@ -0,0 +1,3 @@ +```release-note:improvement +connect: add support for specifying load balancing policy in service-resolver +``` From ee65ee541e0145323542c5de138235c3acf4d395 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Fri, 11 Sep 2020 18:52:47 -0400 Subject: [PATCH 111/122] grpc: add Datacenter field to testing service response --- agent/grpc/internal/testservice/simple.pb.go | 67 +++++++++++++++++--- agent/grpc/internal/testservice/simple.proto | 1 + 2 files changed, 60 insertions(+), 8 deletions(-) diff --git a/agent/grpc/internal/testservice/simple.pb.go b/agent/grpc/internal/testservice/simple.pb.go index ee6ebc1ec2..f26bda740a 100644 --- a/agent/grpc/internal/testservice/simple.pb.go +++ b/agent/grpc/internal/testservice/simple.pb.go @@ -75,6 +75,7 @@ func (m *Req) GetDatacenter() string { type Resp struct { ServerName string `protobuf:"bytes,1,opt,name=ServerName,proto3" json:"ServerName,omitempty"` + Datacenter string `protobuf:"bytes,2,opt,name=Datacenter,proto3" json:"Datacenter,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` @@ -120,6 +121,13 @@ func (m *Resp) GetServerName() string { return "" } +func (m *Resp) GetDatacenter() string { + if m != nil { + return m.Datacenter + } + return "" +} + func init() { proto.RegisterType((*Req)(nil), "testservice.Req") proto.RegisterType((*Resp)(nil), "testservice.Resp") @@ -130,20 +138,20 @@ func init() { } var fileDescriptor_3009a77c573f826d = []byte{ - // 200 bytes of a gzipped FileDescriptorProto + // 206 bytes of a gzipped FileDescriptorProto 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xe2, 0xd2, 0x49, 0x4c, 0x4f, 0xcd, 0x2b, 0xd1, 0x4f, 0x2f, 0x2a, 0x48, 0xd6, 0xcf, 0xcc, 0x2b, 0x49, 0x2d, 0xca, 0x4b, 0xcc, 0xd1, 0x2f, 0x49, 0x2d, 0x2e, 0x29, 0x4e, 0x2d, 0x2a, 0xcb, 0x4c, 0x4e, 0xd5, 0x2f, 0xce, 0xcc, 0x2d, 0xc8, 0x49, 0xd5, 0x2b, 0x28, 0xca, 0x2f, 0xc9, 0x17, 0xe2, 0x46, 0x92, 0x51, 0x52, 0xe5, 0x62, 0x0e, 0x4a, 0x2d, 0x14, 0x92, 0xe3, 0xe2, 0x72, 0x49, 0x2c, 0x49, 0x4c, 0x4e, 0x05, 0xe9, 0x96, - 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x0c, 0x42, 0x12, 0x51, 0x52, 0xe3, 0x62, 0x09, 0x4a, 0x2d, 0x2e, + 0x60, 0x54, 0x60, 0xd4, 0xe0, 0x0c, 0x42, 0x12, 0x51, 0x72, 0xe3, 0x62, 0x09, 0x4a, 0x2d, 0x2e, 0x00, 0xa9, 0x0b, 0x4e, 0x2d, 0x2a, 0x4b, 0x2d, 0xf2, 0x4b, 0xcc, 0x4d, 0x85, 0xa9, 0x43, 0x88, - 0x18, 0xe5, 0x72, 0xb1, 0x05, 0x83, 0xed, 0x12, 0x32, 0xe2, 0xe2, 0x0c, 0xce, 0xcf, 0x4d, 0x2d, - 0xc9, 0xc8, 0xcc, 0x4b, 0x17, 0x12, 0xd0, 0x43, 0xb2, 0x53, 0x2f, 0x28, 0xb5, 0x50, 0x4a, 0x10, - 0x4d, 0xa4, 0xb8, 0x40, 0x89, 0x41, 0x48, 0x9f, 0x8b, 0xc5, 0x2d, 0x27, 0xbf, 0x9c, 0x48, 0xe5, - 0x06, 0x8c, 0x4e, 0x02, 0x27, 0x1e, 0xc9, 0x31, 0x5e, 0x78, 0x24, 0xc7, 0xf8, 0xe0, 0x91, 0x1c, - 0xe3, 0x8c, 0xc7, 0x72, 0x0c, 0x49, 0x6c, 0x60, 0x3f, 0x1a, 0x03, 0x02, 0x00, 0x00, 0xff, 0xff, - 0x61, 0xd3, 0x5e, 0xba, 0x13, 0x01, 0x00, 0x00, + 0xa0, 0x99, 0xc3, 0x84, 0x6e, 0x8e, 0x51, 0x2e, 0x17, 0x5b, 0x30, 0xd8, 0x2d, 0x42, 0x46, 0x5c, + 0x9c, 0xc1, 0xf9, 0xb9, 0xa9, 0x25, 0x19, 0x99, 0x79, 0xe9, 0x42, 0x02, 0x7a, 0x48, 0x6e, 0xd2, + 0x0b, 0x4a, 0x2d, 0x94, 0x12, 0x44, 0x13, 0x29, 0x2e, 0x50, 0x62, 0x10, 0xd2, 0xe7, 0x62, 0x71, + 0xcb, 0xc9, 0x2f, 0x27, 0x52, 0xb9, 0x01, 0xa3, 0x93, 0xc0, 0x89, 0x47, 0x72, 0x8c, 0x17, 0x1e, + 0xc9, 0x31, 0x3e, 0x78, 0x24, 0xc7, 0x38, 0xe3, 0xb1, 0x1c, 0x43, 0x12, 0x1b, 0x38, 0x0c, 0x8c, + 0x01, 0x01, 0x00, 0x00, 0xff, 0xff, 0xe7, 0x4b, 0x16, 0x40, 0x33, 0x01, 0x00, 0x00, } // Reference imports to suppress errors if they are not otherwise used. @@ -348,6 +356,13 @@ func (m *Resp) MarshalToSizedBuffer(dAtA []byte) (int, error) { i -= len(m.XXX_unrecognized) copy(dAtA[i:], m.XXX_unrecognized) } + if len(m.Datacenter) > 0 { + i -= len(m.Datacenter) + copy(dAtA[i:], m.Datacenter) + i = encodeVarintSimple(dAtA, i, uint64(len(m.Datacenter))) + i-- + dAtA[i] = 0x12 + } if len(m.ServerName) > 0 { i -= len(m.ServerName) copy(dAtA[i:], m.ServerName) @@ -395,6 +410,10 @@ func (m *Resp) Size() (n int) { if l > 0 { n += 1 + l + sovSimple(uint64(l)) } + l = len(m.Datacenter) + if l > 0 { + n += 1 + l + sovSimple(uint64(l)) + } if m.XXX_unrecognized != nil { n += len(m.XXX_unrecognized) } @@ -554,6 +573,38 @@ func (m *Resp) Unmarshal(dAtA []byte) error { } m.ServerName = string(dAtA[iNdEx:postIndex]) iNdEx = postIndex + case 2: + if wireType != 2 { + return fmt.Errorf("proto: wrong wireType = %d for field Datacenter", wireType) + } + var stringLen uint64 + for shift := uint(0); ; shift += 7 { + if shift >= 64 { + return ErrIntOverflowSimple + } + if iNdEx >= l { + return io.ErrUnexpectedEOF + } + b := dAtA[iNdEx] + iNdEx++ + stringLen |= uint64(b&0x7F) << shift + if b < 0x80 { + break + } + } + intStringLen := int(stringLen) + if intStringLen < 0 { + return ErrInvalidLengthSimple + } + postIndex := iNdEx + intStringLen + if postIndex < 0 { + return ErrInvalidLengthSimple + } + if postIndex > l { + return io.ErrUnexpectedEOF + } + m.Datacenter = string(dAtA[iNdEx:postIndex]) + iNdEx = postIndex default: iNdEx = preIndex skippy, err := skipSimple(dAtA[iNdEx:]) diff --git a/agent/grpc/internal/testservice/simple.proto b/agent/grpc/internal/testservice/simple.proto index bffa86def5..4077d9bcd1 100644 --- a/agent/grpc/internal/testservice/simple.proto +++ b/agent/grpc/internal/testservice/simple.proto @@ -14,4 +14,5 @@ message Req { message Resp { string ServerName = 1; + string Datacenter = 2; } \ No newline at end of file From 0c87cf468c2e2364d6e2d2feca06550903dc4129 Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 14 Sep 2020 14:53:31 -0400 Subject: [PATCH 112/122] Update go-metrics dependencies, to use metrics.Default() --- go.mod | 2 +- go.sum | 6 ++---- .../github.com/armon/go-metrics/prometheus/prometheus.go | 8 +++++++- vendor/github.com/armon/go-metrics/start.go | 7 ++++++- vendor/modules.txt | 2 +- 5 files changed, 17 insertions(+), 8 deletions(-) diff --git a/go.mod b/go.mod index e5864976ec..c91bfbdf23 100644 --- a/go.mod +++ b/go.mod @@ -13,7 +13,7 @@ require ( github.com/NYTimes/gziphandler v1.0.1 github.com/StackExchange/wmi v0.0.0-20180116203802-5d049714c4a6 // indirect github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e - github.com/armon/go-metrics v0.3.4 + github.com/armon/go-metrics v0.3.5-0.20200914211745-2bc64ebd2914 github.com/armon/go-radix v1.0.0 github.com/aws/aws-sdk-go v1.25.41 github.com/coredns/coredns v1.1.2 diff --git a/go.sum b/go.sum index dde7494dc1..fd10770940 100644 --- a/go.sum +++ b/go.sum @@ -34,7 +34,6 @@ github.com/Azure/go-autorest/tracing v0.5.0 h1:TRn4WjSnkcSy5AEG3pnbtFSwNtwzjr4VY github.com/Azure/go-autorest/tracing v0.5.0/go.mod h1:r/s2XiOKccPW3HrqB+W0TQzfbtp2fGCgRFtBroKn4Dk= github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ= github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU= -github.com/DataDog/datadog-go v2.2.0+incompatible h1:V5BKkxACZLjzHjSgBbr2gvLA2Ae49yhc6CSY7MLy5k4= github.com/DataDog/datadog-go v2.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= github.com/DataDog/datadog-go v3.2.0+incompatible h1:qSG2N4FghB1He/r2mFrWKCaL7dXCilEuNEeAn20fdD4= github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ= @@ -58,10 +57,9 @@ github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e h1:QEF07wC0T1rKkctt1 github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8= github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= -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/armon/go-metrics v0.3.4 h1:Xqf+7f2Vhl9tsqDYmXhnXInUdcrtgpRNpIA15/uldSc= -github.com/armon/go-metrics v0.3.4/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4QAOwNTFc= +github.com/armon/go-metrics v0.3.5-0.20200914211745-2bc64ebd2914 h1:Yiw8vrY+7jX6pCOdAkIUNU8QBS9c6HJAct+K36MeANw= +github.com/armon/go-metrics v0.3.5-0.20200914211745-2bc64ebd2914/go.mod h1:4O98XIr/9W0sxpJ8UaYkvjk10Iff7SnFrb4QAOwNTFc= github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= github.com/armon/go-radix v1.0.0 h1:F4z6KzEeeQIMeLFa97iZU6vupzoecKdU5TX24SNppXI= github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= diff --git a/vendor/github.com/armon/go-metrics/prometheus/prometheus.go b/vendor/github.com/armon/go-metrics/prometheus/prometheus.go index 66d2d32539..abb8c49864 100644 --- a/vendor/github.com/armon/go-metrics/prometheus/prometheus.go +++ b/vendor/github.com/armon/go-metrics/prometheus/prometheus.go @@ -28,6 +28,7 @@ type PrometheusOpts struct { // Expiration is the duration a metric is valid for, after which it will be // untracked. If the value is zero, a metric is never expired. Expiration time.Duration + Registerer prometheus.Registerer } type PrometheusSink struct { @@ -67,7 +68,12 @@ func NewPrometheusSinkFrom(opts PrometheusOpts) (*PrometheusSink, error) { expiration: opts.Expiration, } - return sink, prometheus.Register(sink) + reg := opts.Registerer + if reg == nil { + reg = prometheus.DefaultRegisterer + } + + return sink, reg.Register(sink) } // Describe is needed to meet the Collector interface. diff --git a/vendor/github.com/armon/go-metrics/start.go b/vendor/github.com/armon/go-metrics/start.go index 32a28c4837..6aa0bd389a 100644 --- a/vendor/github.com/armon/go-metrics/start.go +++ b/vendor/github.com/armon/go-metrics/start.go @@ -6,7 +6,7 @@ import ( "sync/atomic" "time" - "github.com/hashicorp/go-immutable-radix" + iradix "github.com/hashicorp/go-immutable-radix" ) // Config is used to configure metrics settings @@ -48,6 +48,11 @@ func init() { globalMetrics.Store(&Metrics{sink: &BlackholeSink{}}) } +// Default returns the shared global metrics instance. +func Default() *Metrics { + return globalMetrics.Load().(*Metrics) +} + // DefaultConfig provides a sane default configuration func DefaultConfig(serviceName string) *Config { c := &Config{ diff --git a/vendor/modules.txt b/vendor/modules.txt index e2f7b4ae45..c0ecc86d01 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -32,7 +32,7 @@ github.com/NYTimes/gziphandler github.com/StackExchange/wmi # github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e github.com/armon/circbuf -# github.com/armon/go-metrics v0.3.4 +# github.com/armon/go-metrics v0.3.5-0.20200914211745-2bc64ebd2914 github.com/armon/go-metrics github.com/armon/go-metrics/circonus github.com/armon/go-metrics/datadog From 636f76f6f144ab63fc417b552a3b80b6ec70492e Mon Sep 17 00:00:00 2001 From: Daniel Nephin Date: Mon, 14 Sep 2020 13:16:13 -0400 Subject: [PATCH 113/122] agent/grpc: make TestHandler_EmitsStats predictable Occasionally this test would flake. The flakes were fixed by: 1. Stopping the service and retrying to check on metrics. This way we also include the active_streams going to 0 in the metric calls. 2. Using a reference to the global Metrics. This way when other tests have background goroutines that are still shutting down, they won't emit metrics to the metric instance with the fake Sink. The stats test can patch the local reference to the global, so the existing statHandlers will continue to emit to the global, but the stats test will send all metrics to the replacement. --- agent/grpc/handler.go | 2 +- agent/grpc/server_test.go | 28 +++++++++++++++++++++ agent/grpc/stats.go | 15 ++++++++--- agent/grpc/stats_test.go | 53 ++++++++++++++++++--------------------- 4 files changed, 65 insertions(+), 33 deletions(-) create mode 100644 agent/grpc/server_test.go diff --git a/agent/grpc/handler.go b/agent/grpc/handler.go index ab23537ffa..c3af7f38c4 100644 --- a/agent/grpc/handler.go +++ b/agent/grpc/handler.go @@ -15,7 +15,7 @@ func NewHandler(addr net.Addr) *Handler { // 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(&statsHandler{}), + grpc.StatsHandler(newStatsHandler()), grpc.StreamInterceptor((&activeStreamCounter{}).Intercept), ) diff --git a/agent/grpc/server_test.go b/agent/grpc/server_test.go new file mode 100644 index 0000000000..b7843ff011 --- /dev/null +++ b/agent/grpc/server_test.go @@ -0,0 +1,28 @@ +package grpc + +import ( + "context" + "time" + + "github.com/hashicorp/consul/agent/grpc/internal/testservice" +) + +type simple struct { + name string + dc string +} + +func (s *simple) Flow(_ *testservice.Req, flow testservice.Simple_FlowServer) error { + for flow.Context().Err() == nil { + resp := &testservice.Resp{ServerName: "one", Datacenter: s.dc} + if err := flow.Send(resp); err != nil { + return err + } + time.Sleep(time.Millisecond) + } + return nil +} + +func (s *simple) Something(_ context.Context, _ *testservice.Req) (*testservice.Resp, error) { + return &testservice.Resp{ServerName: s.name, Datacenter: s.dc}, nil +} diff --git a/agent/grpc/stats.go b/agent/grpc/stats.go index cbf443878e..d25048110d 100644 --- a/agent/grpc/stats.go +++ b/agent/grpc/stats.go @@ -9,12 +9,19 @@ import ( "google.golang.org/grpc/stats" ) +var defaultMetrics = metrics.Default() + // statsHandler is a grpc/stats.StatsHandler which emits connection and // request metrics to go-metrics. type statsHandler struct { + metrics *metrics.Metrics activeConns uint64 // must be 8-byte aligned for atomic access } +func newStatsHandler() *statsHandler { + return &statsHandler{metrics: defaultMetrics} +} + // TagRPC implements grpcStats.StatsHandler func (c *statsHandler) TagRPC(ctx context.Context, _ *stats.RPCTagInfo) context.Context { // No-op @@ -29,7 +36,7 @@ func (c *statsHandler) HandleRPC(_ context.Context, s stats.RPCStats) { } switch s.(type) { case *stats.InHeader: - metrics.IncrCounter([]string{"grpc", label, "request"}, 1) + c.metrics.IncrCounter([]string{"grpc", label, "request"}, 1) } } @@ -53,7 +60,7 @@ func (c *statsHandler) HandleConn(_ context.Context, s stats.ConnStats) { // Decrement! count = atomic.AddUint64(&c.activeConns, ^uint64(0)) } - metrics.SetGauge([]string{"grpc", label, "active_conns"}, float32(count)) + c.metrics.SetGauge([]string{"grpc", label, "active_conns"}, float32(count)) } type activeStreamCounter struct { @@ -71,10 +78,10 @@ func (i *activeStreamCounter) Intercept( handler grpc.StreamHandler, ) error { count := atomic.AddUint64(&i.count, 1) - metrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) + defaultMetrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) defer func() { count := atomic.AddUint64(&i.count, ^uint64(0)) - metrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) + defaultMetrics.SetGauge([]string{"grpc", "server", "active_streams"}, float32(count)) }() return handler(srv, ss) diff --git a/agent/grpc/stats_test.go b/agent/grpc/stats_test.go index cc99100701..05a9f30365 100644 --- a/agent/grpc/stats_test.go +++ b/agent/grpc/stats_test.go @@ -8,6 +8,7 @@ import ( "github.com/armon/go-metrics" "github.com/hashicorp/consul/agent/grpc/internal/testservice" + "github.com/hashicorp/consul/sdk/testutil/retry" "github.com/stretchr/testify/require" "golang.org/x/sync/errgroup" "google.golang.org/grpc" @@ -18,12 +19,11 @@ func TestHandler_EmitsStats(t *testing.T) { addr := &net.IPAddr{IP: net.ParseIP("127.0.0.1")} handler := NewHandler(addr) - testservice.RegisterSimpleServer(handler.srv, &simple{}) lis, err := net.Listen("tcp", "127.0.0.1:0") require.NoError(t, err) - defer lis.Close() + t.Cleanup(logError(t, lis.Close)) ctx, cancel := context.WithCancel(context.Background()) t.Cleanup(cancel) @@ -43,7 +43,7 @@ func TestHandler_EmitsStats(t *testing.T) { conn, err := grpc.DialContext(ctx, lis.Addr().String(), grpc.WithInsecure()) require.NoError(t, err) - defer conn.Close() + t.Cleanup(logError(t, conn.Close)) client := testservice.NewSimpleClient(conn) fClient, err := client.Flow(ctx, &testservice.Req{Datacenter: "mine"}) @@ -53,36 +53,24 @@ func TestHandler_EmitsStats(t *testing.T) { _, err = fClient.Recv() require.NoError(t, err) + cancel() + // Wait for the server to stop so that active_streams is predictable. + retry.RunWith(fastRetry, t, func(r *retry.R) { + 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_streams"}, val: 0}, + } + require.Equal(r, expectedGauge, sink.gaugeCalls) + }) + expectedCounter := []metricCall{ {key: []string{"testing", "grpc", "server", "request"}, val: 1}, } require.Equal(t, expectedCounter, sink.incrCounterCalls) - expectedGauge := []metricCall{ - {key: []string{"testing", "grpc", "server", "active_conns"}, val: 1}, - {key: []string{"testing", "grpc", "server", "active_streams"}, val: 1}, - // TODO: why is the count reset to 0 before the client receives the second message? - {key: []string{"testing", "grpc", "server", "active_streams"}, val: 0}, - } - require.Equal(t, expectedGauge, sink.gaugeCalls) } -type simple struct { - name string -} - -func (s *simple) Flow(_ *testservice.Req, flow testservice.Simple_FlowServer) error { - if err := flow.Send(&testservice.Resp{ServerName: "one"}); err != nil { - return err - } - if err := flow.Send(&testservice.Resp{ServerName: "two"}); err != nil { - return err - } - return nil -} - -func (s *simple) Something(_ context.Context, _ *testservice.Req) (*testservice.Resp, error) { - return &testservice.Resp{ServerName: "the-fake-service-name"}, nil -} +var fastRetry = &retry.Timer{Timeout: 7 * time.Second, Wait: 2 * time.Millisecond} func patchGlobalMetrics(t *testing.T) *fakeMetricsSink { t.Helper() @@ -94,7 +82,8 @@ func patchGlobalMetrics(t *testing.T) *fakeMetricsSink { ProfileInterval: time.Second, // Poll runtime every second FilterDefault: true, } - _, err := metrics.NewGlobal(cfg, sink) + var err error + defaultMetrics, err = metrics.New(cfg, sink) require.NoError(t, err) t.Cleanup(func() { _, err = metrics.NewGlobal(cfg, &metrics.BlackholeSink{}) @@ -122,3 +111,11 @@ type metricCall struct { val float32 labels []metrics.Label } + +func logError(t *testing.T, f func() error) func() { + return func() { + if err := f(); err != nil { + t.Logf(err.Error()) + } + } +} From 86e7274a70db1803f3c4bb68d8dccbc01dbf3b5b Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Mon, 14 Sep 2020 19:02:43 -0700 Subject: [PATCH 114/122] docs: Add -node-identity option to token and role command (#8671) Document `-node-identity` option which was added in #7970 for `acl token ` and `acl role ` commands. --- website/pages/commands/acl/role/create.mdx | 4 ++++ website/pages/commands/acl/role/update.mdx | 4 ++++ website/pages/commands/acl/token/create.mdx | 4 ++++ website/pages/commands/acl/token/update.mdx | 7 +++++++ 4 files changed, 19 insertions(+) diff --git a/website/pages/commands/acl/role/create.mdx b/website/pages/commands/acl/role/create.mdx index 28cdc167f5..f7b450eb67 100644 --- a/website/pages/commands/acl/role/create.mdx +++ b/website/pages/commands/acl/role/create.mdx @@ -29,6 +29,10 @@ Usage: `consul acl role create [options] [args]` - `-name=` - The new role's name. This flag is required. +- `-node-identity=` - Name of a node identity to use for this role. May + be specified multiple times. Format is `NODENAME:DATACENTER`. Added in Consul + 1.8.1. + - `-policy-id=` - ID of a policy to use for this role. May be specified multiple times diff --git a/website/pages/commands/acl/role/update.mdx b/website/pages/commands/acl/role/update.mdx index c59dc15445..61a2851be7 100644 --- a/website/pages/commands/acl/role/update.mdx +++ b/website/pages/commands/acl/role/update.mdx @@ -36,6 +36,10 @@ Usage: `consul acl role update [options] [args]` - `-name=` - The role name. +- `-node-identity=` - Name of a node identity to use for this role. May + be specified multiple times. Format is `NODENAME:DATACENTER`. Added in Consul + 1.8.1. + - `-no-merge` - Do not merge the current role information with what is provided to the command. Instead overwrite all fields with the exception of the role ID which is immutable. diff --git a/website/pages/commands/acl/token/create.mdx b/website/pages/commands/acl/token/create.mdx index 70999b2aab..454cb95d06 100644 --- a/website/pages/commands/acl/token/create.mdx +++ b/website/pages/commands/acl/token/create.mdx @@ -36,6 +36,10 @@ Usage: `consul acl token create [options] [args]` - `-meta` - Indicates that token metadata such as the content hash and raft indices should be shown for each entry. +- `-node-identity=` - Name of a node identity to use for this role. May + be specified multiple times. Format is `NODENAME:DATACENTER`. Added in Consul + 1.8.1. + - `-policy-id=` - ID of a policy to use for this token. May be specified multiple times. - `-policy-name=` - Name of a policy to use for this token. May be specified multiple times. diff --git a/website/pages/commands/acl/token/update.mdx b/website/pages/commands/acl/token/update.mdx index db48904b3b..543a3660d2 100644 --- a/website/pages/commands/acl/token/update.mdx +++ b/website/pages/commands/acl/token/update.mdx @@ -28,6 +28,9 @@ Usage: `consul acl token update [options]` - `-id=` - The Accessor ID of the token to read. It may be specified as a unique ID prefix but will error if the prefix matches multiple token Accessor IDs +- `merge-node-identities` - Merge the new node identities with the existing node + identities. + - `-merge-policies` - Merge the new policies with the existing policies. - `-merge-roles` - Merge the new roles with the existing roles. @@ -37,6 +40,10 @@ Usage: `consul acl token update [options]` - `-meta` - Indicates that token metadata such as the content hash and Raft indices should be shown for each entry. +- `-node-identity=` - Name of a node identity to use for this role. May + be specified multiple times. Format is `NODENAME:DATACENTER`. Added in Consul + 1.8.1. + - `-policy-id=` - ID of a policy to use for this token. May be specified multiple times. - `-policy-name=` - Name of a policy to use for this token. May be specified multiple times. From 4f541df88bb02852cbd8d2db264353fbaca1363b Mon Sep 17 00:00:00 2001 From: Jeff Escalante Date: Tue, 15 Sep 2020 11:37:45 -0400 Subject: [PATCH 115/122] redirect fix round 1 --- website/_redirects | 1 - website/pages/docs/k8s/upgrade/compatibility.mdx | 14 +++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/website/_redirects b/website/_redirects index 9d4538a053..3824b53971 100644 --- a/website/_redirects +++ b/website/_redirects @@ -60,7 +60,6 @@ /docs/k8s/operations/upgrading /docs/k8s/upgrade 301! /docs/k8s/operations/uninstalling /docs/k8s/uninstall 301! /docs/k8s/operations/tls-on-existing-cluster /docs/k8s/tls-on-existing-cluster 301! -/docs/k8s/helm /docs/k8s/installation/helm 301! /docs/agent/services /docs/discovery/services 301! /docs/agent/checks /docs/discovery/checks 301! /docs/agent/dns /docs/discovery/dns 301! diff --git a/website/pages/docs/k8s/upgrade/compatibility.mdx b/website/pages/docs/k8s/upgrade/compatibility.mdx index 62c50f1871..600b7ff3e2 100644 --- a/website/pages/docs/k8s/upgrade/compatibility.mdx +++ b/website/pages/docs/k8s/upgrade/compatibility.mdx @@ -5,16 +5,16 @@ sidebar_title: Compatibility Matrix description: Compatibility Matrix for Consul Kubernetes and Consul --- -# Compatibility Matrix for Consul Kubernetes and Consul +# Compatibility Matrix for Consul Kubernetes and Consul -Consul Kubernetes (consul-k8s) is managed using Consul Helm. For every release of Consul Kubernetes, a new version of the Consul Kubernetes +Consul Kubernetes (consul-k8s) is managed using Consul Helm. For every release of Consul Kubernetes, a new version of the Consul Kubernetes Helm chart and Consul Kubernetes binary is released through the HashiCorp Helm repository. The recommended best practice is to upgrade the Helm chart which will ensure a compatible version of the Consul Kubernetes binary is used. ## Supported Versions -| Consul Version | Compatible Consul Helm Versions | -| ------------------- | -------------------------------- | -| 1.8.x | 0.22.0 - 0.24.1 | -| 1.7.x | 0.17.0 - 0.21.0 | -| 1.6.x | 0.10.0 - 0.16.2 | +| Consul Version | Compatible Consul Helm Versions | +| -------------- | ------------------------------- | +| 1.8.x | 0.22.0 - 0.24.1 | +| 1.7.x | 0.17.0 - 0.21.0 | +| 1.6.x | 0.10.0 - 0.16.2 | From f6c522fb016cd253654e0235316b4f5ee5001bac Mon Sep 17 00:00:00 2001 From: Jeff Escalante Date: Tue, 15 Sep 2020 12:01:47 -0400 Subject: [PATCH 116/122] round 2 --- website/_redirects | 5 +++-- website/pages/community/index.jsx | 2 +- website/pages/docs/install/index.mdx | 2 +- .../k8s/installation/multi-cluster/vms-and-kubernetes.mdx | 2 +- website/pages/docs/upgrading/upgrade-specific.mdx | 2 +- website/pages/use-cases/multi-platform-service-mesh.jsx | 5 +++-- 6 files changed, 10 insertions(+), 8 deletions(-) diff --git a/website/_redirects b/website/_redirects index 3824b53971..7f51ebd5cc 100644 --- a/website/_redirects +++ b/website/_redirects @@ -89,6 +89,7 @@ /intro/vs/proxies /docs/intro/vs/proxies 301! /intro/vs/custom /docs/intro/vs/custom 301! /download-tools /docs/download-tools 301! +/downloads_tools /docs/download-tools 301! /docs/k8s/ambassador /docs/k8s/connect/ambassador 301! /docs/k8s/installation/overview /docs/k8s/installation/install 301! /docs/partnerships /docs/integrate/partnerships 301! @@ -329,8 +330,8 @@ /docs/connect/platform/nomad.html /docs/connect/nomad 301! /docs/connect/platform/nomad /docs/connect/nomad 301! -/docs/platform/k8s/run.html /docs/k8s/installation 301! -/docs/platform/k8s/run /docs/k8s/installation 301! +/docs/platform/k8s/run.html /docs/k8s/installation/install 301! +/docs/platform/k8s/run /docs/k8s/installation/install 301! /docs/platform/k8s/consul-enterprise.html /docs/k8s/installation/deployment-configurations/consul-enterprise 301! /docs/platform/k8s/consul-enterprise /docs/k8s/installation/deployment-configurations/consul-enterprise 301! /docs/platform/k8s/clients-outside-kubernetes.html /docs/k8s/installation/deployment-configurations/clients-outside-kubernetes 301! diff --git a/website/pages/community/index.jsx b/website/pages/community/index.jsx index 729367fb22..93150ce75a 100644 --- a/website/pages/community/index.jsx +++ b/website/pages/community/index.jsx @@ -28,7 +28,7 @@ export default function CommunityPage() { { header: 'Community Tools', body: - '[Download Community Tools](/downloads_tools). Please check out some of the awesome Consul tooling our amazing community has helped build.', + '[Download Community Tools](/docs/download-tools). Please check out some of the awesome Consul tooling our amazing community has helped build.', }, { header: 'Training', diff --git a/website/pages/docs/install/index.mdx b/website/pages/docs/install/index.mdx index 3846fe0304..2c6a61315c 100644 --- a/website/pages/docs/install/index.mdx +++ b/website/pages/docs/install/index.mdx @@ -15,7 +15,7 @@ Installing Consul is simple. There are three approaches to installing Consul: 1. Installing [from source](#compiling-from-source) -1. Installing [on Kubernetes](/docs/platform/k8s/run) +1. Installing [on Kubernetes](/docs/k8s/installation/install) Downloading a precompiled binary is easiest, and we provide downloads over TLS along with SHA256 sums to verify the binary. We also distribute a PGP signature diff --git a/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx b/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx index 7754606070..639d9f58b7 100644 --- a/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx +++ b/website/pages/docs/k8s/installation/multi-cluster/vms-and-kubernetes.mdx @@ -285,7 +285,7 @@ server: name of your primary datacenter running on VMs and with the IPs of your mesh gateways running on VMs. -With your config file ready to go, follow our [Installation Guide](/docs/k8s/installation) +With your config file ready to go, follow our [Installation Guide](/docs/k8s/installation/install) to install Consul on your secondary cluster(s). ## Next Steps diff --git a/website/pages/docs/upgrading/upgrade-specific.mdx b/website/pages/docs/upgrading/upgrade-specific.mdx index 6e2ea71be8..4db4016080 100644 --- a/website/pages/docs/upgrading/upgrade-specific.mdx +++ b/website/pages/docs/upgrading/upgrade-specific.mdx @@ -845,7 +845,7 @@ this: This automatic upgrade will only exist in Consul 0.5.1+ and it will be removed starting with Consul 0.6.0+. It will still be possible to upgrade directly from pre-0.5.1 versions by using the consul-migrate utility, which is available on the -[Consul Tools page](/downloads_tools). +[Consul Tools page](/docs/download-tools). ## Consul 0.5 diff --git a/website/pages/use-cases/multi-platform-service-mesh.jsx b/website/pages/use-cases/multi-platform-service-mesh.jsx index d9c77c0b06..d42f19d50e 100644 --- a/website/pages/use-cases/multi-platform-service-mesh.jsx +++ b/website/pages/use-cases/multi-platform-service-mesh.jsx @@ -58,7 +58,8 @@ export default function MultiPlatformServiceMeshPage() { links: [ { text: 'Learn More', - url: 'https://learn.hashicorp.com/tutorials/consul/service-mesh-features', + url: + 'https://learn.hashicorp.com/tutorials/consul/service-mesh-features', type: 'outbound', }, ], @@ -90,7 +91,7 @@ Splits = [ links: [ { text: 'Learn More', - url: '/docs/platform/k8s/run', + url: '/docs/k8s/installation/install', type: 'inbound', }, ], From 04bf7373ece958eafb4e6ab10559f6af4c30b181 Mon Sep 17 00:00:00 2001 From: Kyle Havlovitz Date: Tue, 15 Sep 2020 10:05:23 -0700 Subject: [PATCH 117/122] Create 8646.txt --- .changelog/8646.txt | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 .changelog/8646.txt diff --git a/.changelog/8646.txt b/.changelog/8646.txt new file mode 100644 index 0000000000..9a0eb0c007 --- /dev/null +++ b/.changelog/8646.txt @@ -0,0 +1,3 @@ +```release-note:bug +connect: fix Vault provider not respecting IntermediateCertTTL +``` From f06e9753955589be25a9eac2a3342850e7e4d118 Mon Sep 17 00:00:00 2001 From: John Cowen Date: Tue, 15 Sep 2020 18:45:08 +0100 Subject: [PATCH 118/122] ui: Add in-repo addon to configure inclusion of components/**/*.scss (#8660) --- ui-v2/ember-cli-build.js | 6 ++++- ui-v2/lib/colocated-components/index.js | 25 +++++++++++++++++++++ ui-v2/lib/colocated-components/package.json | 6 +++++ ui-v2/package.json | 2 ++ 4 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 ui-v2/lib/colocated-components/index.js create mode 100644 ui-v2/lib/colocated-components/package.json diff --git a/ui-v2/ember-cli-build.js b/ui-v2/ember-cli-build.js index 43e564e455..a01c2c5deb 100644 --- a/ui-v2/ember-cli-build.js +++ b/ui-v2/ember-cli-build.js @@ -13,7 +13,11 @@ module.exports = function(defaults) { trees.app = new Funnel( 'app', { - exclude: ['components/**/pageobject.js'] + exclude: [ + 'components/**/pageobject.js', + 'components/**/*.test-support.js', + 'components/**/*.test.js' + ] } ); } diff --git a/ui-v2/lib/colocated-components/index.js b/ui-v2/lib/colocated-components/index.js new file mode 100644 index 0000000000..487be45eba --- /dev/null +++ b/ui-v2/lib/colocated-components/index.js @@ -0,0 +1,25 @@ +'use strict'; + +const Funnel = require('broccoli-funnel'); +const mergeTrees = require('broccoli-merge-trees'); + +module.exports = { + name: require('./package').name, + + /** + * Make any CSS available for import within app/components/component-name: + * @import 'app-name/components/component-name/index.scss' + */ + treeForStyles: function(tree) { + return this._super.treeForStyles.apply(this, [ + mergeTrees( + (tree || []).concat([ + new Funnel(`${this.project.root}/app/components`, { + destDir: `app/components`, + include: ['**/*.scss'], + }), + ]) + ), + ]); + }, +}; diff --git a/ui-v2/lib/colocated-components/package.json b/ui-v2/lib/colocated-components/package.json new file mode 100644 index 0000000000..5bcc0f9776 --- /dev/null +++ b/ui-v2/lib/colocated-components/package.json @@ -0,0 +1,6 @@ +{ + "name": "colocated-components", + "keywords": [ + "ember-addon" + ] +} diff --git a/ui-v2/package.json b/ui-v2/package.json index 55a10cd973..423d4ab3ce 100644 --- a/ui-v2/package.json +++ b/ui-v2/package.json @@ -62,6 +62,7 @@ "base64-js": "^1.3.0", "broccoli-asset-rev": "^3.0.0", "broccoli-funnel": "^3.0.3", + "broccoli-merge-trees": "^3.0.2", "chalk": "^4.1.0", "clipboard": "^2.0.4", "css.escape": "^1.5.1", @@ -140,6 +141,7 @@ "ember-addon": { "paths": [ "lib/block-slots", + "lib/colocated-components", "lib/commands", "lib/startup" ] From 1732cda1e607e7ac38ddf2f597580ca108a17eaf Mon Sep 17 00:00:00 2001 From: John Cowen Date: Tue, 15 Sep 2020 18:45:22 +0100 Subject: [PATCH 119/122] ui: Use runInDebug to add error logging to logger service (#8658) --- ui-v2/app/services/logger.js | 12 +++++++++++- ui-v2/app/services/state.js | 2 +- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/ui-v2/app/services/logger.js b/ui-v2/app/services/logger.js index c8e80171bf..e61252afee 100644 --- a/ui-v2/app/services/logger.js +++ b/ui-v2/app/services/logger.js @@ -1,5 +1,15 @@ import Service from '@ember/service'; +import { runInDebug } from '@ember/debug'; export default Service.extend({ - execute: function(obj) {}, + execute: function(obj) { + runInDebug(() => { + obj = typeof obj.error !== 'undefined' ? obj.error : obj; + if (obj instanceof Error) { + console.error(obj); // eslint-disable-line no-console + } else { + console.log(obj); // eslint-disable-line no-console + } + }); + }, }); diff --git a/ui-v2/app/services/state.js b/ui-v2/app/services/state.js index 598ae37f0e..efb9cd88eb 100644 --- a/ui-v2/app/services/state.js +++ b/ui-v2/app/services/state.js @@ -7,7 +7,7 @@ export default Service.extend({ logger: service('logger'), // @xstate/fsm log: function(chart, state) { - this.logger.execute(`${chart.id} > ${state.value}`); + // this.logger.execute(`${chart.id} > ${state.value}`); }, addGuards: function(chart, options) { this.guards(chart).forEach(function([path, name]) { From dec8dcd1fa32fce3663ca2ac7da115313c7f3380 Mon Sep 17 00:00:00 2001 From: Blake Covarrubias Date: Tue, 15 Sep 2020 11:49:34 -0700 Subject: [PATCH 120/122] website: Add redirects for additional pages (#8684) Add redirects for additional pages which have old URLs being returned in search engine results. --- website/_redirects | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 45 insertions(+), 1 deletion(-) diff --git a/website/_redirects b/website/_redirects index 7f51ebd5cc..6fbdc9e1b8 100644 --- a/website/_redirects +++ b/website/_redirects @@ -14,9 +14,11 @@ /docs/agent/acl-rules.html /docs/security/acl/acl-rules 301! /docs/agent/acl-rules /docs/security/acl/acl-rules 301! /docs/acl/acl-rules /docs/security/acl/acl-rules +/docs/acl/acl-rules.html /docs/security/acl/acl-rules /docs/agent/acl-system.html /docs/security/acl/acl-system 301! /docs/agent/acl-system /docs/security/acl/acl-system 301! /docs/acl/acl-system /docs/security/acl/acl-system 301! +/docs/acl/acl-system.html /docs/security/acl/acl-system 301! /docs/agent/http.html /api-docs 301! /docs/agent/http /api-docs 301! /docs/guides/acl-legacy.html /docs/security/acl/acl-legacy 301! @@ -44,54 +46,79 @@ /docs/connect/terminating_gateway /docs/connect/gateways/terminating-gateway 301! /docs/connect/terminating_gateway.html /docs/connect/gateways/terminating-gateway 301! /docs/connect/terminating-gateway /docs/connect/gateways/terminating-gateway 301! -/docs/k8s/connect.html /docs/k8s/connect 301! +/docs/k8s/connect.html /docs/k8s/connect 301! +/docs/k8s/connect/overview /docs/k8s/connect 301! /docs/agent/cloud-auto-join /docs/install/cloud-auto-join 301! +/docs/agent/cloud-auto-join.html /docs/install/cloud-auto-join 301! /docs/internals/security /docs/security 301! /docs/acl/ /docs/security/acl/ 301! /docs/acl/auth-methods /docs/security/acl/auth-methods 301! /docs/acl/auth-methods/kubernetes /docs/security/acl/auth-methods/kubernetes 301! +/docs/acl/auth-methods/kubernetes.html /docs/security/acl/auth-methods/kubernetes 301! /docs/acl/auth-methods/jwt /docs/security/acl/auth-methods/jwt 301! /docs/acl/auth-methods/oidc /docs/security/acl/auth-methods/oidc 301! /docs/agent/kv /docs/dynamic-app-config/kv 301! /docs/internals/sessions /docs/dynamic-app-config/sessions 301! +/docs/internals/sessions.html /docs/dynamic-app-config/sessions 301! /docs/agent/watches /docs/dynamic-app-config/watches 301! +/docs/agent/watches.html /docs/dynamic-app-config/watches 301! /docs/connect/l7-traffic-management /docs/connect/l7-traffic/ 301! +/docs/connect/l7-traffic-management.html /docs/connect/l7-traffic/ 301! /docs/internals/discovery-chain /docs/connect/l7-traffic/discovery-chain 301! /docs/k8s/operations/upgrading /docs/k8s/upgrade 301! /docs/k8s/operations/uninstalling /docs/k8s/uninstall 301! /docs/k8s/operations/tls-on-existing-cluster /docs/k8s/tls-on-existing-cluster 301! /docs/agent/services /docs/discovery/services 301! +/docs/agent/services.html /docs/discovery/services 301! /docs/agent/checks /docs/discovery/checks 301! +/docs/agent/checks.html /docs/discovery/checks 301! /docs/agent/dns /docs/discovery/dns 301! /docs/agent/dns.html /docs/discovery/dns 301! /docs/agent/encryption /docs/security/encryption 301! +/docs/agent/encryption.html /docs/security/encryption 301! /docs/internals/architecture /docs/architecture 301! +/docs/internals/architecture.html /docs/architecture 301! /docs/internals/anti-entropy /docs/architecture/anti-entropy 301! +/docs/internals/anti-entropy.html /docs/architecture/anti-entropy 301! /docs/internals/consensus /docs/architecture/consensus 301! +/docs/internals/consensus.html /docs/architecture/consensus 301! /docs/internals/gossip /docs/architecture/gossip 301! +/docs/internals/gossip.html /docs/architecture/gossip 301! /docs/internals/jepsen /docs/internals/jepsen 301! +/docs/internals/jepsen.html /docs/internals/jepsen 301! /docs/internals/coordinates /docs/architecture/coordinates 301! +/docs/internals/coordinates.html /docs/architecture/coordinates 301! /docs/glossary /docs/install/glossary 301! +/docs/glossary.html /docs/install/glossary 301! /docs/connect/gateways/mesh-gateways /docs/connect/gateways/mesh-gateway 301! +/docs/connect/gateways/mesh-gateways.html /docs/connect/gateways/mesh-gateway 301! /docs/connect/gateways/wan-federation-via-mesh-gateways /docs/connect/gateways/mesh-gateway/wan-federation-via-mesh-gateways 301! /docs/faq /docs/troubleshoot/faq 301! +/docs/faq.html /docs/troubleshoot/faq 301! /docs/common-errors /docs/troubleshoot/common-errors 301! +/docs/common-errors.html /docs/troubleshoot/common-errors 301! /intro /docs/intro 301! /intro/vs /docs/intro/vs 301! /intro/vs/zookeeper /docs/intro/vs/zookeeper 301! /intro/vs/chef-puppet /docs/intro/vs/chef-puppet 301! /intro/vs/nagios-sensu /docs/intro/vs/nagios-sensu 301! +/intro/vs/nagios-sensu.html /docs/intro/vs/nagios-sensu 301! /intro/vs/skydns /docs/intro/vs/skydns 301! +/intro/vs/skydns.html /docs/intro/vs/skydns 301! /intro/vs/smartstack /docs/intro/vs/smartstack 301! /intro/vs/serf /docs/intro/vs/serf 301! /intro/vs/eureka /docs/intro/vs/eureka 301! +/intro/vs/eureka.html /docs/intro/vs/eureka 301! /intro/vs/istio /docs/intro/vs/istio 301! /intro/vs/proxies /docs/intro/vs/proxies 301! /intro/vs/custom /docs/intro/vs/custom 301! /download-tools /docs/download-tools 301! /downloads_tools /docs/download-tools 301! +/download_tools /docs/download-tools 301! +/downloads_tools /docs/download-tools 301! /docs/k8s/ambassador /docs/k8s/connect/ambassador 301! /docs/k8s/installation/overview /docs/k8s/installation/install 301! +/docs/k8s/installation/muti-cluster/overview /docs/k8s/installation/multi-cluster 301! /docs/partnerships /docs/integrate/partnerships 301! # CLI redirects @@ -105,10 +132,15 @@ /docs/commands/acl/auth-method/update /commands/acl/auth-method/update 301! /docs/commands/acl/binding-rule /commands/acl/binding-rule 301! /docs/commands/acl/binding-rule/create /commands/acl/binding-rule/create 301! +/docs/commands/acl/binding-rule/create.html /commands/acl/binding-rule/create 301! /docs/commands/acl/binding-rule/delete /commands/acl/binding-rule/delete 301! +/docs/commands/acl/binding-rule/delete.html /commands/acl/binding-rule/delete 301! /docs/commands/acl/binding-rule/list /commands/acl/binding-rule/list 301! +/docs/commands/acl/binding-rule/list.html /commands/acl/binding-rule/list 301! /docs/commands/acl/binding-rule/read /commands/acl/binding-rule/read 301! +/docs/commands/acl/binding-rule/read.html /commands/acl/binding-rule/read 301! /docs/commands/acl/binding-rule/update /commands/acl/binding-rule/update 301! +/docs/commands/acl/binding-rule/update.html /commands/acl/binding-rule/update 301! /docs/commands/acl/bootstrap /commands/acl/bootstrap 301! /docs/commands/acl/policy/ /commands/acl/policy 301! /docs/commands/acl/policy/create /commands/acl/policy/create 301! @@ -167,6 +199,7 @@ /docs/commands/logout /commands/logout 301! /docs/commands/maint /commands/maint 301! /docs/commands/members /commands/members 301! +/docs/commands/members.html /commands/members 301! /docs/commands/monitor /commands/monitor 301! /docs/commands/namespace /commands/namespace 301! /docs/commands/namespace/create /commands/namespace/create 301! @@ -179,6 +212,7 @@ /docs/commands/operator/area /commands/operator/area 301! /docs/commands/operator/autopilot /commands/operator/autopilot 301! /docs/commands/operator/raft /commands/operator/raft 301! +/docs/commands/operator/raft.html /commands/operator/raft 301! /docs/commands/reload /commands/reload 301! /docs/commands/rft /commands/rft 301! /docs/commands/rtt /commands/rtt 301! @@ -187,9 +221,13 @@ /docs/commands/services/deregister /commands/services/deregister 301! /docs/commands/snapshot /commands/snapshot 301! /docs/commands/snapshot/agent /commands/snapshot/agent 301! +/docs/commands/snapshot/agent.html /commands/snapshot/agent 301! /docs/commands/snapshot/inspect /commands/snapshot/inspect 301! +/docs/commands/snapshot/inspect.html /commands/snapshot/inspect 301! /docs/commands/snapshot/restore /commands/snapshot/restore 301! +/docs/commands/snapshot/restore.html /commands/snapshot/restore 301! /docs/commands/snapshot/save /commands/snapshot/save 301! +/docs/commands/snapshot/save.html /commands/snapshot/save 301! /docs/commands/tls /commands/tls 301! /docs/commands/tls/ca /commands/tls/ca 301! /docs/commands/tls/cert /commands/tls/cert 301! @@ -306,6 +344,12 @@ /docs/commands/acl/policy.html /docs/commands/acl/policy 301! /docs/commands/acl/role.html /docs/commands/acl/role 301! /docs/commands/acl/token.html /docs/commands/acl/token 301! +/docs/commands/acl/role/create /commands/acl/role/create 301! +/docs/commands/acl/role/delete /commands/acl/role/delete 301! +/docs/commands/acl/role/list /commands/acl/role/list 301! +/docs/commands/acl/role/read /commands/acl/role/read 301! +/docs/commands/acl/role/read.html /commands/acl/role/read 301! +/docs/commands/acl/role/update /commands/acl/role/update 301! /docs/commands/catalog.html /docs/commands/catalog 301! /docs/commands/config.html /docs/commands/config 301! /docs/commands/connect.html /docs/commands/connect 301! From 8f5a56e4e60da8d69c973cdeaea059f4deba9429 Mon Sep 17 00:00:00 2001 From: Hans Hasselberg Date: Tue, 15 Sep 2020 21:35:02 +0200 Subject: [PATCH 121/122] Update API docs for GET /operator/keyring (#8691) The response includes a new field: PrimaryKeys that lists the installed primary keys. --- website/pages/api-docs/operator/keyring.mdx | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/website/pages/api-docs/operator/keyring.mdx b/website/pages/api-docs/operator/keyring.mdx index c9bc8264d4..88f00152db 100644 --- a/website/pages/api-docs/operator/keyring.mdx +++ b/website/pages/api-docs/operator/keyring.mdx @@ -66,7 +66,10 @@ $ curl \ "ZWTL+bgjHyQPhJRKcFe3ccirc2SFHmc/Nw67l8NQfdk=": 1, "WbL6oaTPom+7RG7Q/INbJWKy09OLar/Hf2SuOAdoQE4=": 1 }, - "NumNodes": 1 + "PrimaryKeys": { + "pUqJrVyVRj5jsiYEkM/tFQYfWyJIv4s3XkvDwy7Cu5s=": 1, + }, + "NumNodes": 3 }, { "WAN": false, @@ -77,7 +80,10 @@ $ curl \ "ZWTL+bgjHyQPhJRKcFe3ccirc2SFHmc/Nw67l8NQfdk=": 1, "WbL6oaTPom+7RG7Q/INbJWKy09OLar/Hf2SuOAdoQE4=": 1 }, - "NumNodes": 1 + "PrimaryKeys": { + "pUqJrVyVRj5jsiYEkM/tFQYfWyJIv4s3XkvDwy7Cu5s=": 1, + }, + "NumNodes": 3 } ] ``` @@ -92,6 +98,9 @@ $ curl \ - `Keys` is a map of each gossip key to the number of nodes it's currently installed on. +- `PrimaryKeys` is a map of each primary gossip key to the number of nodes it's currently + installed on. + - `NumNodes` is the total number of nodes in the datacenter. ## Add New Gossip Encryption Key From 2ae5230851f4bace61aa41954b446cc1a61a0a79 Mon Sep 17 00:00:00 2001 From: Paul Banks Date: Tue, 15 Sep 2020 20:57:37 +0100 Subject: [PATCH 122/122] Update UI Config passing to not use an inline script (#8645) * Update UI Config passing to not use an inline script * Update agent/http.go * Fix incorrect placeholder name --- agent/bindata_assetfs.go | 157 +++++++++++++---------- agent/http.go | 109 ++++++++++------ agent/http_oss.go | 2 +- ui-v2/config/environment.js | 11 +- ui-v2/lib/startup/templates/head.html.js | 30 ----- 5 files changed, 166 insertions(+), 143 deletions(-) diff --git a/agent/bindata_assetfs.go b/agent/bindata_assetfs.go index dd585209d4..2c9b4d0e9d 100644 --- a/agent/bindata_assetfs.go +++ b/agent/bindata_assetfs.go @@ -15,9 +15,10 @@ // 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-8f69a00424bae13b8764ed2197104033.js -// pkg/web_ui/assets/consul-ui-97ec8a4278cddf4266ff5aa45bf84f69.css +// pkg/web_ui/assets/consul-ui-791d914f251adffbcdf4d48ff3466279.js +// pkg/web_ui/assets/consul-ui-ac33675cf2d3f767c0eb03745026ec60.css // pkg/web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js +// pkg/web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js // pkg/web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js // pkg/web_ui/assets/favicon-128-08e1368e84f412f6ad30279d849b1df9.png // pkg/web_ui/assets/favicon-16x16-672c31374646b24b235b9511857cdade.png @@ -34,7 +35,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-d38f8b642cf98384d0f0a8760e75b259.js +// pkg/web_ui/assets/vendor-e5bd98ddbd577554f3a4bea67986a1d2.js // pkg/web_ui/index.html // pkg/web_ui/oidc/callback // pkg/web_ui/robots.txt @@ -122,7 +123,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/android-chrome-192x192-501b0811835ea92d42937aaf9edfbe08.png", size: 18250, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -142,7 +143,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/android-chrome-512x512-707625c5eb04f602ade1f89a8868a329.png", size: 58433, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -162,7 +163,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-114x114-49e20f98710f64b0cae7545628a94496.png", size: 15576, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -182,7 +183,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-120x120-c9cc4fc809a6cbff9b9c261c70309819.png", size: 16251, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -202,7 +203,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png", size: 20027, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -222,7 +223,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-152x152-08c9aa1c11a83650b824e3549b33a832.png", size: 23769, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -242,7 +243,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-57x57-ae96d6d27e61e25514af459bc8b20960.png", size: 5158, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -262,7 +263,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(1596829165, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-60x60-522fca33a44f77c679561313def843b9.png", size: 5522, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -282,7 +283,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-72x72-da5dd17cb4f094262b19223464fc9541.png", size: 7289, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -302,7 +303,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-76x76-c5fff53d5f3e96dbd2fe49c5cc472022.png", size: 8031, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -322,7 +323,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/apple-touch-icon-d2b583b1104a1e6810fb3984f8f132ae.png", size: 8285, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -342,7 +343,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/javascript/javascript-77218cd1268ea6df75775114ae086566.js", size: 21467, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -362,7 +363,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/ruby/ruby-ea43ca3a3bdd63a52811e8464d66134b.js", size: 5269, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -382,7 +383,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/codemirror/mode/yaml/yaml-86bec82a0f62e7a53eef41d44a8e4727.js", size: 44654, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -402,47 +403,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-logo-707625c5eb04f602ade1f89a8868a329.png", size: 58433, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsConsulUi8f69a00424bae13b8764ed2197104033Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\xfb\x76\xdb\x38\x96\x28\x0e\xff\xef\xa7\xa0\x79\xe6\xa4\xc9\x29\x48\xb6\xec\x5c\x55\xa3\x4e\xb9\x9c\x54\x77\xa6\x53\xa9\x9c\x38\xe9\xcb\x78\x7c\xb2\x60\x12\x92\x38\xa6\x00\x15\x08\xd9\x71\xc9\x3a\xcf\xf2\x3d\xcb\xf7\x64\xbf\x85\x1b\x09\x92\xe0\x4d\x92\x2f\xa9\x4a\xad\xd5\x1d\x4b\x22\x81\x8d\x8d\x8d\x8d\x7d\xdf\xee\x22\x41\x4e\xc2\x68\x14\x30\x77\x27\x44\xe3\x08\x23\xcf\x0d\x08\x4e\x16\x71\x6f\x11\xed\xc1\x10\xce\x19\xa2\xc9\x5e\xef\x7f\x12\x82\x7b\x70\x1e\xb9\xe0\xd4\x45\x5f\xe6\x84\xb2\xc4\x05\xee\x0f\x68\x76\x8e\x68\x2f\x84\x0c\xea\x67\xf7\xd2\x27\xcf\x80\x37\x5e\xe0\x80\x45\x04\x7b\x08\x30\x7f\xf9\xcb\xf9\xff\xa0\x80\xf5\xe5\x34\xef\x29\x99\x23\xca\xae\x3d\x04\xdc\xcf\x9f\x51\xf2\x33\x09\x17\x31\x72\xc1\xf2\x12\xc6\x0b\x34\xdc\xdd\x5f\xf9\xa0\xf2\x85\x10\x8d\xe1\x22\x66\x2e\x58\x22\xbc\x98\x21\x0a\xcf\x63\xfe\x0a\x98\x20\x36\x4c\xe7\xf4\x97\x14\xb1\x05\xc5\x8e\x18\x81\x3f\xbf\x5a\xf9\x2b\xdf\x07\x35\xeb\x84\x41\x9c\x5f\xa1\xed\x99\xf9\x3c\x8e\x02\xc8\xe7\xc8\x3d\x30\x23\x21\x8a\xd5\x10\xe5\xaf\xc3\xa0\x88\x10\x80\x01\xf5\x97\xfa\x1b\x07\x7a\xfe\xf2\x12\x52\x07\x8d\x42\xef\xd4\xfd\x6f\xec\x88\xff\xde\x7f\xfa\xe8\xec\x5d\x0e\xf8\xa8\x7b\x41\x4c\x30\xda\x73\x81\xfb\xd2\x05\xea\x01\xf7\xcc\xdf\x51\xab\x84\xa3\xf2\xca\xd1\x0a\xa0\x55\x3a\x03\x69\x9c\x21\x44\x09\xa3\xe4\xba\x72\x0e\xd2\x38\x47\xd2\x38\xc7\x62\x1e\x42\x86\xe4\xf0\xfa\x77\xdb\x5c\x49\xe3\x5c\x91\xc4\x62\xb6\xcf\x4e\x84\x1d\xf4\xb2\x8a\x6a\x98\xa6\x2d\x0c\xf2\x54\x13\x10\x3c\x8e\x26\x8b\xf4\xf3\x15\x8d\x98\xfa\x7b\xe5\x0f\xd1\x29\x3b\x1b\x61\x73\xde\xb8\x79\xa7\x28\x6a\xb5\xc6\xb8\x71\x8d\x0b\xeb\x5c\x7f\x79\x9d\xcd\x15\xe1\x31\xc9\x36\xac\x6e\xb6\x45\xe3\x6c\x41\xe3\x6c\x71\x94\xb0\xe6\x99\x82\xc6\x99\x42\xc9\x12\xf4\xce\xdd\xdc\x78\x6c\x84\xfa\x49\x1c\x05\xc8\xdb\xf7\xd3\xa3\x3f\xa6\x08\xfd\x86\x3c\xdb\x96\x46\x28\xf1\x10\x58\x52\x78\x35\x54\xfb\x9a\x7f\x87\xf9\xab\x95\xef\xaf\x3a\x33\x1d\xa4\xb9\xc5\xe8\x92\x44\xa1\xb3\xbf\xc3\x11\x32\x1e\xa5\x4c\xa4\x8f\xbe\x30\x84\x43\x6f\x49\xd1\xaf\x0b\x94\xb0\x9f\x08\xfd\x3f\x0b\x44\xaf\x87\x79\x66\xc7\xdf\xc2\xfc\xad\x00\xd0\x11\xeb\x47\x38\x44\x5f\x34\x7a\x90\x17\x78\x3e\x58\x86\xc1\x10\xaf\xc0\x52\xfc\x34\xa4\x2b\x7f\x05\x0a\x43\x7e\x40\x01\xa1\x61\x8b\x81\x01\xe4\x7f\x85\x3b\xd1\xd8\x93\x40\x8f\x46\x23\xe8\xb3\x29\x25\x57\x0e\x46\x57\xce\x6b\x4a\x09\xf5\xdc\x7f\x91\x85\x33\x5b\x24\xcc\x49\xe6\x28\x88\xc6\xd7\x0e\xc4\x4e\x14\xba\x7e\x06\xd7\xc2\xf3\x01\xac\x87\xec\x58\xd0\x76\x19\x34\x0c\x60\xb6\xd7\x5e\xec\xf9\x20\xf2\x96\x2b\xc0\xfa\xaf\x8e\x3e\x1e\x1d\xbf\x7e\xf7\xf1\xf5\x87\xcf\xff\xe7\xd3\xeb\x0f\xff\xfa\xfc\xfe\xe8\xc3\xd1\xcf\x00\x9e\xd2\xfe\x4f\xbf\x7c\x78\xfd\xe6\x2f\xef\x3e\xff\xed\xf5\xbf\xce\x7c\x80\x73\xf3\x7c\x12\x7c\xa2\x69\x9e\x64\xe3\x79\x5e\xa1\x18\xd9\xe6\x81\x20\x31\xe6\x21\x9e\x0f\x92\x53\xdc\x3f\x79\xfb\xe9\x2f\x62\x98\x86\x59\x93\xe2\xac\x79\x1c\x72\x4e\x5e\x9e\x92\xe4\xa6\x84\x5b\x98\x52\x5c\x19\xc3\xf2\xad\xa3\xcf\xdd\x34\x4a\xfa\x0a\x2c\xcf\x72\x39\x69\x58\xfa\x56\xd0\x3d\xf9\xd4\xca\xb7\xdd\x6b\xc6\xab\xc9\x9c\xe0\xb0\x40\x39\xd9\xbb\x14\xb0\xbe\xb8\x23\xdf\xc1\x19\xe2\x67\x76\x27\x3b\x81\xe3\xa6\xeb\xda\xbc\x8a\x1b\xae\xed\x29\x63\xf3\xb2\x4c\x92\x32\x24\x7c\xb7\x97\xc9\x06\x6c\x09\xf5\xdf\x9d\xbc\x3f\x3a\x7e\x6d\x6e\xfe\x08\x55\x50\x85\x66\x62\x95\xbf\xbb\x61\xe0\xee\x58\x87\x74\x71\xe2\x0a\xe6\x47\x2d\xcc\x2f\x88\x23\x84\xd9\xf0\x35\x97\xff\xfa\x11\x16\x8b\x49\x10\xbd\xe4\xfc\xdb\x95\x3f\x4a\x8c\xfb\x00\xe1\xcb\x8a\xe7\x10\xbe\x74\x7d\x30\x26\x74\x06\xd9\xbb\x64\x0e\x03\x93\x54\xfd\x65\x34\xf6\x04\x81\x22\x7c\xc9\xff\xe7\xb9\xc7\xbf\xbc\x3b\xf9\xf4\xf6\xb3\x84\xf5\xe4\xf3\xeb\x77\x47\x3f\xbe\x7d\xfd\xca\xf5\x7d\xb9\x67\xae\xbb\x3b\x1a\xa1\x97\x98\x9f\x12\x0e\x3c\x40\xfe\x50\x2e\x7f\xa5\x26\x79\x05\x19\x0c\x10\x66\x88\xe6\x26\x52\x5b\x2e\x5f\x0c\x03\xfe\x62\x7a\x5a\x9b\x0e\xcf\x3c\xe8\x73\x2a\xbc\x16\xa0\x02\x48\x27\x8b\x19\xc2\x2c\x29\x10\x32\x6d\x20\xe4\x80\x10\x1a\x46\x18\x32\xd4\x49\xfc\xac\x23\x67\x7d\x93\xe7\x1f\x28\xdd\xb4\x9a\xf7\x6f\xed\xc2\xb5\x08\x0e\xd9\xea\xf6\x30\x09\x51\x92\xc9\x96\x8e\xf3\xcf\xde\x07\x89\xe8\xde\x9b\x57\x43\xa7\x51\xb2\xc0\x55\x92\xc5\x76\xee\x79\x1b\xa9\x37\xdf\xf3\x54\x5e\xc7\x30\xbd\x8e\xc9\x88\xf5\x17\x34\xca\xee\x55\xac\xee\x7b\xba\x02\x44\xdf\xab\x70\xd5\x91\x48\x38\x65\xfe\x0e\x89\x03\x32\x18\x93\xc9\x5e\x98\x9e\xcd\xe4\x61\xef\xba\x71\x45\x63\xcf\xef\xba\x87\x51\x12\x90\x4b\x44\xaf\x7b\xc1\x14\x46\xcd\xb7\x56\xdb\x0d\x35\x44\x43\x85\x93\x0b\x74\x9d\x78\xc8\xe7\x32\xa1\xfa\x66\x82\xd8\x2f\x57\x58\x63\xe9\xe4\x7a\x76\x4e\xe2\x44\x53\x70\xdd\x33\x7c\x18\xf6\xe8\x91\x47\x47\xb4\x3f\x8e\x62\x86\xa8\x21\x2c\x64\x52\xbc\x75\x88\x57\x28\x09\x68\x34\x67\x84\x0a\x18\xfb\xd9\x6d\xb9\xf2\x7d\x1f\xe0\xfe\x7c\x91\x4c\x15\x0b\x15\x12\x81\xde\xf2\x4c\x57\xa0\x1c\xe7\x63\x42\x3d\x0e\x29\x1b\x0d\xbe\x67\xff\x91\xf2\xd9\x7e\x8c\xf0\x84\x4d\xbf\x67\xdf\x7d\xa7\x57\x82\x17\x71\xbc\x3b\x4a\x9f\x38\x65\x67\x2f\xcd\x0f\xc3\xe5\x6a\x87\xfd\xef\x83\x97\x58\xa1\xc5\xa3\x3e\xd8\xdd\xf7\xfb\x63\x42\x5f\xc3\x60\x9a\x5f\x19\x14\x5c\x9f\x9e\xb2\x33\x7f\xe5\xfb\xc3\x86\x15\x26\x56\x71\x41\x1e\x8d\xa6\x57\x3d\xea\xfb\x43\x03\xa6\x0a\x80\xaa\xe5\x91\x26\xec\x53\xc0\x7c\xbe\x88\x55\x7a\x7e\x0c\xd3\xc3\xfd\x28\xd2\xe4\x21\xf1\xa1\xc2\xc9\xcc\xdb\x40\x3a\xdf\x53\x95\x96\x92\xed\x70\xac\xa4\x99\x63\x35\x29\x8f\xfc\xb6\xc2\x09\x48\xd2\x4b\x2b\x12\x3a\x24\x88\xd5\xdd\x65\xea\x92\xd1\x3a\xba\x24\x57\x99\x22\xad\x4b\xc6\x80\x7a\x54\xa8\x2f\x5c\x6a\x32\x45\x3e\x0f\xfa\x3e\x58\xa6\xda\x66\xb2\x2a\xb2\xd4\xa4\x81\xa5\x0a\x31\x33\xc7\x47\xcb\x56\xc9\x0a\x5b\x25\xe2\x6b\xb1\xbe\x90\xc8\xdf\x12\xbb\xd1\x6e\x3b\x9b\x08\x47\xf9\x91\x35\x03\x2b\x32\xb7\x3f\x1f\x3e\x7a\x24\x5f\xdb\x1d\x19\x7c\xed\xd0\xe4\x6b\x87\x82\xaf\x65\x4a\xd7\x3c\x28\xe8\x73\x86\x4a\x76\xea\x66\xa4\xe2\xf6\x03\x82\x03\xc8\x3c\xec\x9f\x79\xcc\xa6\xcd\x15\x5e\xd4\xca\x9c\xed\x45\xce\x62\x56\x80\x8c\xea\xb4\xc1\x32\x60\xa6\x3e\x5f\x07\x1a\x80\x16\xe0\x8a\x2f\x57\x81\x27\x5f\x96\x00\xda\x0e\x4f\x07\x7d\x86\xce\x03\x8b\x52\x20\x36\x94\x6b\xf0\x23\x41\xe1\xf2\x15\x7e\xa6\xf8\xa7\x84\x11\x8a\xf8\xc9\xe2\x3a\xc2\x62\x14\xf1\xa1\x23\x18\x47\xbf\x21\xfa\x13\x67\xcd\xfa\xd4\xb8\x7a\x5c\x77\x34\x62\xd7\x73\x44\xc6\x0e\xee\x43\xc6\x68\x74\xbe\x60\x28\x79\xe9\xc1\x91\xf9\xd9\xf3\x01\x19\x2d\xb2\xc1\x3c\x0c\x96\xfc\x9a\x22\x23\x38\xc2\xc0\xa6\xd9\x33\xd3\x44\x03\x18\x20\x02\x2f\x7e\x3f\x80\x2c\x77\xd3\x64\x42\x4e\xdc\x17\x07\xc1\x43\xe2\x39\x36\x45\xd8\xfa\x18\xf3\x16\x00\xe9\xe1\x56\x40\xbc\x53\x54\xe6\x90\x13\xe1\x84\x41\x1c\xf0\x75\x7d\xbc\x9e\x23\xc1\x4a\x14\x6b\x41\xe2\x48\x30\x00\x47\xa7\xcb\x84\x41\xb6\x48\x86\x6e\xba\x89\xa8\x2f\xbf\x3a\x26\x21\xf2\x01\x8b\x58\x8c\x86\xee\xc7\x29\x72\xce\x61\x70\x81\x70\xe8\xa8\x8d\x47\xa1\x73\x15\xb1\x29\xe7\x45\xea\x68\x87\x88\xc1\x28\x1e\xa2\xfe\x0c\x25\x09\x9c\xa0\xd5\xd9\x0e\xa3\xd7\xcb\xe4\x2a\xe2\x0b\xce\x8d\xbb\x0c\x60\x82\x9c\xfd\x21\x1b\x71\x36\x47\xfb\x47\xe7\x84\x32\x01\x22\x60\x12\x09\xc9\xe9\xfe\x99\x7a\x63\xe4\xee\xbb\x3b\xe7\x14\xc1\x8b\x1d\xf1\xda\xe3\xfd\x41\xfa\xe2\x27\x0c\x17\x6c\x4a\x68\xf4\x1b\x0a\x25\xb7\x84\xc0\x75\xfd\xfc\xe3\x87\xe9\xe3\x3f\x11\x7a\x1e\x85\x21\xc2\x95\xcf\x3e\x4e\x9f\x7d\x47\xd8\x4f\x64\x81\xab\x87\x7d\x9e\x3e\xfa\x31\x9a\x21\xb2\x90\x0b\xc8\x3f\xf3\x22\x7d\xe6\x98\xe0\x71\x1c\x05\xac\x6a\xb8\x83\x83\xf4\xd1\x37\xf8\x12\xc6\x91\x9e\x58\x3f\xa6\x8e\xd1\x50\xdc\xd6\x29\x2a\xff\x3c\x7a\xb2\xbf\xff\x52\xbe\x77\x82\xe8\x25\xa2\xc6\x04\x43\xfe\x3d\xd6\x07\x50\x7e\xb7\x5a\x49\x02\x24\xfe\x92\x8d\xc8\x4a\x52\x04\x5b\x81\x5f\x4b\x0a\x97\x21\xa5\x40\xa9\x72\x1b\xd6\x23\xe0\x8a\x9b\xcf\x15\x16\xbe\x5f\x2b\x2e\xc1\x36\x23\xc8\xd7\xe4\x38\xe3\x08\x87\x47\x71\x5c\xb8\x48\x6b\x46\xf8\x49\xbe\xe0\xfa\x2b\x10\x54\xd8\x4a\x4d\x20\x88\x65\x08\xd3\x52\x26\xa1\x58\x54\x58\x43\x9b\x46\x32\xad\xa8\x72\xa4\xb0\xc2\xde\xd9\x34\x92\x69\x27\x15\x23\x75\xba\xa4\x23\xcc\x10\x6e\x65\xa7\x6b\x70\xaf\x71\x25\xb8\xfc\x6d\x36\x7c\x5b\x27\x5b\x60\x88\x80\xaf\x5e\xbf\x7d\xfd\xf1\xb5\x32\x55\x60\x8c\x02\x96\x0d\x98\x6c\xc5\xe1\x16\x58\x1c\x45\x75\x53\xad\x25\x5a\x1a\x4e\xb8\xfb\x91\xe7\x23\xfb\x7a\x7f\x39\xa9\x5a\x70\xf3\x62\xa3\xc6\xc5\xc6\xd6\x49\x33\xd3\x53\xfd\x7e\x3a\xce\x31\x0c\xa6\xa8\x77\x4c\x30\xa3\x24\x1e\x3a\x98\xf4\xc4\x6d\xbd\x3d\xc7\x5d\x3b\xb0\x6a\x75\x8d\xad\xb8\xf6\xbe\x2a\x87\x5b\xb8\xa9\xc3\x4d\xda\x29\xea\x6c\x72\x8b\xcc\x07\x47\x40\x2a\x5f\xd3\x97\xe6\x36\x40\x3c\x41\x43\x27\x95\x43\xa8\x3f\x74\xdd\xd4\x7e\x07\xe4\x1c\x0f\xc4\x75\x17\xaf\xef\xba\xcb\x49\xd1\x5e\xe4\xf9\x20\x69\x70\xa9\xe1\x82\x4b\x6d\x79\x42\x16\x34\x40\xef\x4e\x86\xb4\xaf\xff\x04\xaf\x50\xc2\x22\x2c\x38\xb9\xf8\x21\xf7\x19\xa8\xc7\xe0\x0c\x65\xef\xf0\x8b\xc6\x7c\x4a\xfe\x58\xf8\x46\xbd\xc9\x05\xc8\xf4\x4d\xfe\x01\x1c\x89\xf5\x0c\x69\x5f\xfe\x01\xb4\xf1\x43\x7e\x69\x7c\x5a\xb5\x72\x34\x42\x10\x15\x1c\x80\xd1\x29\x35\xbc\x71\xf5\x38\x8a\x6a\x70\x04\xab\x70\x04\xab\x71\x04\xeb\x70\x04\xeb\x70\x04\x2d\x38\x82\x36\x1c\xc1\x6a\x1c\x55\x39\x49\x49\x0e\x47\x70\x53\x1c\x15\x84\x8a\xb0\x41\xa8\xb8\xb8\x5c\x5b\x9a\x58\xb0\x88\x8b\x0d\xc9\x4f\x24\x0e\x85\x79\xa0\xf8\xd3\x05\xba\xfe\x48\x8e\x28\x85\xd7\x36\x79\x83\xcf\xdc\x56\x36\xc1\xc2\xcc\x61\x13\x4c\x00\x94\x2e\x5f\xcb\x05\x3a\xb5\x8b\x27\x17\x97\x95\xe2\x48\x97\x9b\x72\x6a\x11\x47\x8a\x43\x3b\x0e\xbf\x13\x11\x66\x3d\x41\x45\x0e\x43\x5f\xd8\xde\x3c\x86\x11\xfe\xde\x09\xa6\x90\x26\x88\x8d\x16\x6c\xdc\x7b\xbe\xbd\x9b\xf2\x0e\xc1\xea\x12\x0b\x33\xb5\x5c\xe0\x26\x58\x5b\x89\x84\xf9\x9d\xda\xee\xc7\x5d\x6c\xf7\xb8\xad\xed\x3e\xd4\x76\x72\x5c\x63\xbb\x9f\xc9\x63\x76\x17\xb6\x7b\xec\xfb\x43\x03\xa6\xad\xdb\xee\x71\xb5\xed\x7e\x76\x4f\xb2\xfe\x7c\x2b\xc7\x63\xde\x78\x3c\xa6\x5f\x97\xdc\x7a\xbe\x9e\xdc\x2a\xa4\xc0\x30\x10\x42\x6a\x95\x51\x3e\x41\x73\x48\x21\x23\x74\x73\xd3\xfc\xdc\xf3\x81\xb7\x0f\xa8\x06\xd5\xf7\x22\x1f\x78\x33\x0f\x8f\x96\x2b\xe0\x72\xee\xe3\x02\x7e\x14\x7d\x30\xf3\xb0\x0c\x89\x80\xea\xef\x14\x0a\x17\xc4\x3e\xc0\x3e\x18\x7b\x63\xbb\x5d\x9f\x94\xed\xfa\x5d\xa5\x64\xe5\xa3\x20\x29\x3a\x92\xb2\xb0\x9c\xac\x83\x80\xa0\x84\x80\x24\x55\x06\x2a\x17\x94\x77\x54\x90\xc2\x82\xaa\x84\xeb\xd4\xb0\x1f\x8d\xca\x23\x67\x01\x29\x1e\x3e\x25\x05\x61\xc8\x02\x02\x3e\x4d\x74\xa8\x8e\x7c\x26\xaf\xce\xe4\x97\x84\x4f\x61\x26\x8a\xf9\x20\x12\xc6\xef\x66\xb9\x77\x03\x80\x39\x76\xc6\x31\x9c\x24\x43\xdc\xff\x89\xff\x6b\x43\x63\xcd\x1a\xe2\xae\x6b\xa8\x92\x4b\x19\x88\xe5\x1a\x16\xdf\x7b\xfb\x00\x67\xe3\xc5\xb9\xf1\x1e\x3d\xf2\x16\xe2\xce\xf1\xc5\xe1\x0d\xc4\x82\x6b\x96\x1c\xb7\xd9\xa3\xb8\xb8\x3e\x81\x16\x8a\x82\x05\x4d\xd0\x70\xb1\x32\xd6\x1b\x95\xd6\x9b\x87\x0f\x04\x05\x89\xf8\xbc\x41\x22\xc6\x24\xdc\x7e\x04\x11\xb1\x30\x78\x69\xec\xdd\x8b\x11\x0c\x11\xb5\xca\xa3\x95\x31\x1b\x86\x5f\xbf\x6e\x86\x88\x63\x1c\xc3\x78\x6f\x11\x89\x65\x6d\xe8\x90\xa5\x8d\xe0\xc0\x4e\xe0\x6c\x12\xc4\xd4\xc6\x72\xf8\x55\xdd\x7a\x2d\xdc\xd1\x6d\x4c\x21\x64\xe4\x89\xdb\x4e\x18\x6a\x8c\x63\x02\x4d\x4b\xcd\x06\xf1\xd2\x79\x63\x50\x14\x8a\xeb\xa4\xe8\xeb\x26\xeb\xdc\x27\xd4\xf3\x39\x68\x12\xc6\xc4\x8c\xf0\x2a\xc2\xf8\x56\x9c\x98\xca\x20\x32\x5b\xc8\x98\x76\x66\x58\x5e\xdd\x34\x9a\xd7\x00\xa9\x6b\x34\xaf\xf5\xd5\xba\x60\xde\x26\x17\x81\xd2\x93\x37\xf4\x0f\x54\x69\xdb\x06\x67\xcb\xf8\xce\xc2\x66\xa6\x4e\x4f\x3a\x0c\xe2\xbd\xd4\x93\xd7\x2c\xcb\x76\xe1\x30\x0b\xbb\x7a\x8f\xe1\x0c\x09\xf8\xf7\x36\x75\x38\x2c\x2c\xaa\x74\x61\xf4\x4d\x7d\x0c\x5b\x9a\xaa\x4d\x9e\x8f\x6d\x2a\xcd\x98\x3b\x4c\xd5\xc5\x44\x52\x3b\x55\xb2\x26\xe3\x6f\x63\x0c\xf9\xaa\x18\x7f\xb0\x36\xe3\x97\x7c\x98\x16\x8d\xf2\x5c\x02\xa4\x9a\x7f\xe2\xae\x3c\x3e\x1b\xb4\xa0\x24\xd0\x76\x4c\x9d\x6f\xb0\x5b\x90\xcf\xaa\xa0\xa9\x96\xf7\x69\x21\x3f\x85\xe6\x92\x38\x96\xc2\x62\xcb\xfa\xda\x90\x9b\x9a\x5f\x99\x69\x7e\x05\x47\xc7\x6f\x93\xe1\xf2\x3d\x89\xa3\xe0\xfa\x95\xc4\x70\x32\x64\x7d\xfe\x75\x3f\xff\x6d\x7f\x06\xe7\xb6\x98\x8c\xe5\x9b\x57\x43\xd4\x7f\xf3\x8a\x6f\x37\xf8\x40\x62\x54\x1c\xc6\xfc\xae\xcd\x20\xab\x76\x76\xf3\x3c\x02\x48\x19\x01\x5f\xf3\xa2\xab\x15\x0e\x5a\x30\x84\xe7\x16\x9d\x1b\xe3\x48\xdf\x29\xed\x15\xdf\xbc\xa4\x21\xe4\x0c\x80\x93\x21\x04\x5a\x17\x05\xa7\xcb\x0f\x28\x11\x76\xfe\xa1\xcb\x0f\xb3\x54\xd1\x8f\x82\x00\x25\xc9\xd0\xbd\xa2\x11\x43\xee\x8a\xc3\x01\xad\xb3\x6f\x2a\x48\xa4\x6b\xaa\x10\x23\x8c\x40\xa1\x8a\xef\x39\xae\xeb\x05\x88\xa0\x41\x80\x20\x51\x18\xf4\xe6\x94\x5c\x46\xc2\xa4\xbf\xa6\x1c\x81\xf0\xa5\xc5\x1d\x80\x09\xee\xa1\xd9\x9c\x5d\xf7\x12\xc4\xd6\xcb\xe4\xd5\xf2\x85\x48\xa3\x24\x13\xb2\x60\x8d\x2e\x68\x7d\xc9\x1c\x4b\x68\x3e\x92\x0b\x84\x87\x6b\xab\x14\x8d\x50\x71\x04\xee\x05\x30\x8e\xcf\x61\x70\xb1\xb1\x8f\x7c\xed\x64\xe1\x12\x48\x9c\x64\x7b\x0b\x1a\x6f\x0c\x52\xcb\x9c\xe2\xdf\xad\x35\x3e\xbe\x15\x6b\x7c\xd4\xc6\x1a\xbf\xb8\x5b\x6b\x7c\x74\x3f\xd6\xf8\xc5\x3d\x59\xe3\xeb\x13\xb7\x4d\xdb\x85\x60\x92\xe2\x40\xcd\x10\x9b\x92\x70\x13\x3b\xc6\x03\x4a\xf3\x16\x49\xda\x3b\x1b\x0b\xb5\x60\x3c\x12\xf6\x42\x84\x2f\xfd\xea\x7c\xc3\x97\x79\x9b\x9d\xfb\x4e\xeb\x05\xae\x5f\x2e\x3f\xb1\x5c\xad\x84\xa8\x3c\xb3\x88\xca\x4d\xa9\x91\x9d\x6c\x28\x38\xa9\x8b\x76\x09\x4c\x1b\x4a\xec\xa5\x16\x0a\x8b\x01\x93\xfa\x6b\x98\xea\x4d\x08\xb6\x10\xcd\x92\x64\xe0\xc6\x5e\xec\x2d\x57\x60\xcc\xe1\x12\xa6\x54\x2e\x6b\xfc\x2c\x88\x77\x08\xc1\x07\x14\x46\x14\x05\xec\xd3\x87\x37\x46\xc0\x70\x9a\x37\x7a\x09\x69\xba\x8f\x3f\x1e\x9d\xbc\xfe\xfc\xe9\xcd\xe7\x4f\x1f\xde\xba\x3e\x70\xf3\xd7\x9d\xeb\x17\xec\xf9\x2d\xa4\xb4\xdc\x9a\x85\x31\x29\x20\x21\x12\x3e\x9b\x84\x41\x86\xd6\x46\xc3\x1a\xfe\x0d\x3e\x73\xe1\xcd\x96\xae\x21\x01\x6a\x31\x71\xa3\x15\xee\x8f\x49\x88\x86\x09\x38\xe1\x03\x0c\xa3\x02\xfe\xde\x0a\x11\xa7\x4a\x51\xcb\x93\x08\x5e\x87\x44\xb8\x90\x8d\xef\x4d\xa0\xad\xb4\x8b\x59\x5e\x2c\x08\xb5\x20\x2e\xa3\x66\x53\x70\x25\xb6\x6d\xb0\x1a\x7c\xa8\x5e\xbc\x9e\x35\x88\xd7\x73\xa1\x80\x6d\x6a\x9f\xd3\xa3\x74\x8c\x9e\xd9\x82\x84\xde\x3d\xda\x86\x0b\xa0\x12\xde\x5b\x8b\xba\xb1\x4d\x71\x9b\xe1\x34\xd9\x7c\xdb\xad\x17\x63\x0b\x02\xe8\xba\xb6\x6f\xb1\x32\xdf\x62\x65\xfe\x80\xb1\x32\xe9\x31\x89\x50\x8b\x80\xf8\x07\x14\x31\x23\xe2\x5d\xb6\x20\x73\x9f\x73\x99\x9b\xb4\x90\xb9\x93\xae\x32\xf7\xe5\xa6\x7e\x49\x53\xa6\xde\x11\x62\x4b\x2e\x86\xa6\x29\x62\x84\xe6\x22\x46\xe0\x3a\x21\x30\x56\xc9\xbe\x20\x3e\xad\xe5\xb2\x0c\x4c\x97\xe5\x9a\x2b\x68\x8c\x79\x81\xa3\xda\x00\x92\x62\xc1\xa2\x62\x21\xaa\xb1\xd7\xd2\x5a\xfe\x61\x11\xa3\x64\xc8\xfa\xe2\x5f\x90\xcd\xc1\xbf\x33\x3e\xad\xc0\xb9\x27\xc7\x12\xab\x2b\xe8\x39\xd5\x06\x6d\x28\x57\x43\xea\x56\x53\xaa\x33\x55\x8c\xcd\xcf\x19\xc1\xc9\x1d\xaf\xad\xda\x6e\x4d\xe4\xda\x92\xfa\x60\x1f\x52\x5a\x9d\x2d\xe2\xeb\x14\x56\x45\xf6\x44\x9c\xda\x72\x18\x28\x96\xc8\xb9\x6c\x12\x3f\x29\xf9\xd2\x4d\xfa\xfc\x56\x2f\xe3\x5b\xbd\x8c\x6f\xf5\x32\x6e\xbb\x6e\x8f\x4e\x65\xfb\xda\xeb\x65\xfc\x01\x2a\x65\x50\x12\x6f\x1c\x5f\x23\xc7\xf8\x5a\xb4\x77\x0e\xed\xad\xea\xee\xf9\x09\x6e\x5b\x73\xe7\xb3\xdd\x8d\xde\xde\x7e\x5d\xdf\xb4\xf6\x6f\x5a\xfb\x1f\x54\x6b\xe7\x87\xe4\x9b\xca\xfe\x4d\x65\xff\xa6\xb2\xaf\xa1\xb2\xbf\x57\x26\xaf\x21\xeb\xeb\x3f\xc1\x89\x74\x7f\xbe\x09\x11\x66\x11\x93\x3f\x96\xbe\x03\xef\x48\x98\x7f\x24\xff\xc5\x57\xa9\xe4\xdf\x13\x36\xbe\x7e\xb3\x80\xf2\x98\x6f\x3d\xe9\x25\xb6\xf0\xfc\x29\x82\x31\x9b\xea\x29\x37\xd4\x78\xba\xe4\xc7\x98\xc0\xd8\xc3\x3a\x14\x4c\xb9\x68\x8e\x5a\x90\xd6\x8f\x61\xff\x3d\x0b\x73\xe4\x56\x84\x39\xd8\x46\x98\x4b\xee\x56\x98\x83\xf7\x23\xcc\xdd\x7f\x69\xa2\xe6\xb3\x34\x81\x0c\x5d\x41\xae\x89\xca\x33\xd5\x13\xf9\x5e\xc5\xe3\x6e\xd6\x87\xe9\x7e\xe6\x3a\x2b\xa2\x5f\x55\x5a\xc0\x62\xab\xe6\x96\x78\xc4\xfa\x6a\x4f\xc0\x22\x1f\xd7\x94\x96\xed\x89\x5f\xca\xcb\x24\xce\xcc\x28\x0b\x40\x3c\xd2\xd6\x90\x32\x34\x22\xab\x57\xdd\x5e\x6d\x2f\x1f\xd2\x3b\xb2\x27\xe1\xd4\x9e\x44\x39\x22\xba\xac\x25\x77\xf7\x2e\x1a\xef\xde\x24\xd9\x42\x49\xb7\x74\x98\x6d\x54\x54\x31\x2e\xf3\xfa\x7e\x47\x6a\xd6\x5b\xeb\x79\x94\x66\xca\xaa\x79\xda\xf7\xe9\xf9\x16\xa5\xfc\x2d\x4a\xf9\x0f\x18\xa5\xac\x0f\xca\x16\x92\xbd\x1f\x50\x60\xf2\x76\x2e\xd4\x8d\xfb\x4f\x59\xec\x11\xdb\xcb\x7e\x0e\xf2\xd9\xcf\x2a\x68\xf4\xeb\xb2\xad\x24\xe6\x1a\xd6\x5c\x41\xb5\x36\x9d\xe8\x8a\x1a\xe5\x91\x0d\x6d\xba\xdc\xc1\xc9\x02\x42\x52\xad\x4d\x5b\x9a\x54\x75\x6c\xa8\xc4\xc8\x05\xda\xf8\x3e\x57\x83\x3c\x28\x1f\xd1\x75\x85\x47\x45\xc0\xca\xb9\x8d\xec\xae\xb8\xb1\x9f\xe8\xba\xc2\x54\x2c\xe7\x49\x50\x3c\xce\xb3\xb5\x8a\xcc\xae\x3b\x28\x4b\x7a\x5d\xed\x35\x4b\x91\x62\x45\x47\x17\xf7\x52\x23\xda\xb7\xe3\x5f\xb2\x4d\xd7\xdc\x75\xb2\x4a\x1d\x0b\x1b\x67\x1c\xb7\x5b\x60\xf3\xe2\xc6\x8d\x53\xcd\x5a\x92\x56\x2b\x5c\xce\x1a\xa7\x9b\xff\xae\x25\xcb\xe9\xad\x48\x96\xf3\x36\x92\xe5\xf9\xdd\x4a\x96\xf3\xfb\x91\x2c\xcf\xef\x49\xb2\xbc\x6c\x77\x4a\x5a\x38\xeb\x2e\x1b\x8f\xc8\xf5\x5d\x3a\xeb\x26\x5b\x70\xd6\x4d\x6e\xcd\x59\xf7\xd9\x22\x96\x8a\x6b\xaa\x22\xab\x4d\xfc\xb6\x71\x5e\x1b\x25\x31\x12\xc2\xab\x4c\x2e\xc8\xe4\x9f\x4b\xcf\x07\x4b\xfe\xeb\x90\x00\xf9\xdb\x30\x01\x52\xa2\x9b\x7a\xd3\xaf\x4f\x26\x9d\x99\x32\xe9\x9a\x2b\x68\xe1\xef\x2b\x8e\xdb\xd2\xdf\x37\x16\xfe\xbe\xa9\x57\x53\xcf\xc1\xe6\xd5\xfa\x40\x54\x38\x2b\xff\x77\x3b\x3e\x2e\xf0\x96\x04\x30\x1e\xb2\xbe\xf8\x77\x05\x26\xeb\xfa\xff\xd2\x1d\xdb\x1d\x8d\xa0\x0c\xb8\xf5\xd3\xf5\x86\x9e\xdf\xd6\x2b\x08\x98\x2c\x28\x47\xea\x70\x5b\xe7\x4b\x0c\x2c\xbe\xc4\xaf\x0d\xd3\x2d\x7c\x8b\x65\x9a\xde\xa2\x6f\x71\x61\xf3\x2d\x1a\xf0\x9d\xa0\x78\x6c\x3d\x11\x74\x84\xa5\x99\x16\xa7\xe7\x19\xf7\x13\x14\x50\xc4\xf2\xde\x5e\x5b\x47\xc7\xe6\x2e\xbf\xc6\xfa\x73\xe0\xad\x5d\xd5\x92\x8f\x15\xdf\x2e\x2e\x45\x4d\x78\x10\xfb\x2b\x90\x94\xb1\xb6\x59\xe6\x22\xdf\x86\xae\x39\x96\xf9\x77\x8a\xe9\x95\xd6\xa6\xc7\x29\xce\x39\x88\x3b\xeb\x83\xdb\xaa\xff\x31\xd1\xea\xbe\xda\x94\x76\x3b\xd2\x7a\x3b\x8a\x55\xd8\x52\x70\x22\x0e\x0c\xa9\xc9\xf1\xfc\x5c\xa1\xff\xcf\xad\x1d\xd4\x28\x4a\x48\x7c\x89\xb2\x0e\x69\x31\x81\x61\x2f\xc2\x11\x53\xcd\xab\xf2\xf6\x01\x29\xb4\x71\xe5\x3d\xa2\x04\x73\x29\xb9\xb1\x50\x4a\x5a\x72\xc7\x83\x23\x4b\xf3\x2b\xa9\x35\x3c\x7a\xe4\x26\xe2\x8f\xe2\x0f\xfd\x88\xc9\x42\x37\x2f\xb3\x49\x32\x52\x94\x4f\xa2\x95\xb5\x75\xe7\xa3\x47\x35\xd3\xa1\x3e\x5f\x14\xa3\x8b\x80\x11\x3a\x1a\x8d\xd2\xef\x77\xf5\xdf\xfd\x39\x25\x8c\xf0\xd7\x5e\x6a\xd8\x86\xe9\x84\xbe\x87\xfc\x52\x29\xc7\x68\xec\xed\xe6\x3b\x60\x31\xdf\x38\xe3\x69\x3b\x2c\xcf\x3d\x86\x18\x13\xe6\x04\x30\x8e\x1d\xe8\x04\x31\x4c\x12\x07\x26\x0e\x74\x52\x80\xfd\x82\x3f\x35\x45\x62\xa2\x95\xaf\x04\xb1\xf7\x1a\xc2\x5f\xc6\x37\x37\x79\xd9\x25\xa5\xa3\xcf\x9f\xc5\x3a\x3e\x7f\x1e\x31\x20\xe0\x06\xcc\xcf\x79\x19\x24\x1d\x33\x53\x26\x8e\xc6\x9e\xbb\xc0\x92\x86\xc2\x0c\x77\x1f\xd0\x38\x46\x01\xbb\xb9\xd9\x55\x7f\x65\x38\x54\x57\xe8\xee\x80\x73\xb8\xd2\xaf\xfd\x64\x0a\x67\xb9\x47\x2c\x3b\xf3\x9e\x92\x2f\xd7\xfa\xa1\x7d\xd1\xc2\x4b\x2d\xe2\x15\x64\x28\xdb\x8d\x3e\x23\x27\x8c\x46\x78\xd2\xe7\xe8\x2b\x4f\xe6\xf1\xc7\xc1\xe9\x59\x2e\x3f\x5a\xa8\x8f\xbb\xfb\xaa\x07\x55\x4a\x24\xbb\x83\xd5\xca\xcb\x34\xf5\xec\x79\x59\xb1\x99\x8e\x02\xa5\x14\x33\x2d\x48\x05\xa2\xee\x80\x6f\x52\xcf\x0e\x1e\x95\x81\xa0\x59\x9f\x68\x00\xfd\x15\x8a\x13\xe4\xe0\x11\xb5\x37\x92\x4e\x6d\x3b\xf2\x07\xec\xaf\x2a\xdc\xc2\xbb\xec\xe6\xc6\x25\x62\xff\x5d\x2e\xbf\x78\xcc\x37\xa9\x7c\x57\xe3\x92\xbd\x5c\x78\xc8\x1f\xb2\x9c\x3f\xc0\x90\x7d\x46\xa3\x11\x32\x28\xf3\x03\x1a\x23\x8a\x70\xa0\xc9\x93\x43\xe1\x4c\x61\x82\xff\xc4\x9c\x73\x84\xb0\xa3\xf9\x41\x82\x42\xa7\xe7\x24\x8b\x39\xa2\x9e\x9f\x7b\x82\xef\x05\x32\x25\xdb\x5c\x5b\x9a\x94\x7a\x03\x3b\xf5\xbe\xcc\xf4\x51\xe3\x5b\xeb\xa9\xce\x08\xfa\xe6\xc6\xfa\x96\x68\x63\x97\x3b\x9e\xe1\xdd\x6a\xac\xdb\x72\x07\x18\xe4\x58\x88\x65\xca\x1d\xa0\x6c\xd3\x1f\x3d\x92\xd6\x8c\x11\xb3\x73\x9d\x13\xbe\x6f\x0e\xfa\x32\xa7\xd2\x0d\x23\x45\x0d\x14\xb1\x29\xa2\xce\x39\x72\xf8\xdb\x0e\xa1\x39\x36\xb4\x63\x9c\x3c\xbd\x77\xb2\xe5\x99\xc7\x1e\x3d\x62\xd9\x8f\x60\x69\x1c\x09\xad\xf3\x22\x13\x47\x45\xfc\xad\x56\x3e\x60\x8f\x1e\x49\xf6\xb6\xf2\x3d\x0c\xa4\x46\x79\x94\x99\x9e\xa5\xe0\x83\x46\x91\x87\xfd\x9d\x52\x04\x17\xdc\x21\xfa\xc0\xec\x68\x8b\x4f\x52\x6a\xad\x09\x22\xd1\xde\x4e\xf4\xf9\xf0\x12\x1f\xc4\xa3\xfd\xef\xe3\xff\x48\xbe\x8f\xbf\xfb\xce\x8f\x4e\xe3\x33\xc3\xf8\x13\x9f\xa5\xf6\x41\x6f\xe1\xc1\x11\x12\x2c\x46\x9d\x59\x04\x4e\xf9\x64\x67\xba\xfe\x48\xc4\x59\x8a\x3b\x13\xfb\xf9\x9e\xa2\x71\xf4\xc5\xcd\x2a\xc6\xf4\xcd\xef\x7d\x20\x86\xf3\x81\x3b\x27\xe1\xcf\x15\x2f\x14\x7e\xca\xde\xf9\x90\xde\xd0\xa9\x22\xee\x03\x98\x59\xbe\xbc\x9c\xf1\x1f\xe4\x6b\x61\x8f\xab\x40\xb2\x0b\x09\x01\x99\xcd\x09\x46\x98\xf5\x66\x10\xc3\x09\xa2\xc9\xde\x24\x8e\x66\xb3\x62\xad\xb5\x1f\xd4\xb7\xd9\x0b\x7b\xbd\x39\x8d\x2e\x21\x43\x7b\x52\x8c\x28\x8d\x54\x8e\xc8\xeb\x7c\x4e\x2a\x5f\x50\x2b\x74\xc1\x32\x7f\x60\x27\x88\x95\x0d\x1b\x4e\x8a\xc6\xd5\xaa\x09\x0d\xc9\x5e\x2f\xbc\xc6\x70\x16\x05\x3d\x14\x23\x4e\x24\x3d\xc8\xe7\xc9\x70\x91\x5b\xd5\xb6\xba\xc6\xb2\x91\x3c\x09\xc7\x1a\x0e\x6d\x79\x31\xb7\x9a\x75\x86\xfd\x6b\x81\x1b\xce\xe7\x3d\xd1\x8c\x73\x4f\xe8\x5c\x77\x06\xf6\x5f\x3f\xfe\xfc\xf6\x47\x48\x93\x3e\x43\xb3\x79\xcc\x59\xdc\x32\x0a\x87\x6e\xf4\xb7\xe4\xa7\x9f\xc2\x2f\x4f\x5d\x70\x1e\x93\xe0\x62\xf8\xa7\xa5\x92\x07\x13\x77\x78\x7a\x06\x5c\x51\x5c\x47\x30\x10\x77\x78\x7a\xfa\x04\xb8\x1c\xfe\xcb\x08\x5d\xb9\x5c\x0a\x39\x3d\x75\x7f\x10\x02\x9e\x7b\xc6\xd7\xc1\x97\xe5\x24\x53\x72\xe5\x9e\x9d\x81\x65\xe1\xdd\x7d\xe0\xfe\xb7\xb6\x56\x02\x3e\x92\x98\xb0\x97\xc4\x84\xa5\x63\x89\xfa\xa5\x7c\xa8\xa9\xa8\xcb\x5c\x3f\x8c\x1c\xe8\x19\x70\xa7\x03\x17\x30\xba\x40\x67\xe0\xf4\xf9\x19\xc8\x3d\xe1\x48\xe5\x53\x3c\x39\x00\xa7\x07\x8f\x35\x98\xae\x5c\xda\x22\xe1\x73\x8c\x61\x9c\xa0\xc2\x9b\xfc\x8d\x17\xb9\xef\xf8\x93\xee\x1c\x52\x38\x43\x8c\xab\x0e\xc3\xd3\xb3\x55\xe1\x81\xc6\x75\x05\xb2\xf7\x4f\x9b\x85\x3d\x01\x12\xd2\x9e\xac\x6f\xa4\x87\x92\xd0\xf3\xbf\x0f\x0e\xd4\x13\xee\xd9\xd9\x59\x7b\x48\x9b\x7f\x9c\xc2\xe4\xf5\x25\x8c\xdd\xa1\xc0\xcb\xea\x4f\x60\x86\x18\x1c\x2e\x25\x8b\x15\xe1\xe0\xad\x48\xbb\x3f\x3d\x4f\x5c\x7e\x0f\x62\x45\x82\x9f\x13\xc4\xd2\xd3\xf3\x51\x93\x21\x03\x15\xe7\x6a\xc9\xe0\x44\xce\xe6\xae\x7c\xf3\x90\xe1\x56\x87\x8c\x13\x69\xf9\x8c\x99\xdb\x93\x58\x7c\xb4\xea\x74\x44\xbf\x35\x95\xe0\xce\xa4\x36\xf3\xcc\x46\x63\x4f\xdc\xc5\xfd\x28\x91\x77\x32\xf2\xb5\x01\x8e\x2b\x8b\x2b\x0f\xf9\xa6\x32\x53\xd4\x46\x76\x8b\x9a\x5c\x41\x4f\xe4\xb2\x9d\xf2\x8b\x64\x03\xcb\x09\xc7\x94\xcc\x2c\x33\x68\xd5\x0d\xa9\xa7\x85\x7e\x92\x08\x15\x23\xd3\x4e\x90\x01\xa3\x36\xfd\xa5\xde\xb3\x2a\xdd\x04\xf9\xca\x67\xf0\x1c\xf4\x06\xfe\x8e\x2b\x1f\x77\x47\xa3\x11\x2e\x68\xa0\x8f\x1e\x79\x78\x94\xfb\xa6\xcf\x0f\x84\xd0\x3d\xdc\x9f\xe1\x5c\xbc\x73\x73\xe3\x9e\x20\xf9\xba\x75\x61\xe2\xe1\x23\x2d\xcd\xa8\x57\xf6\xfe\xaf\xf7\x72\xf8\x29\xba\x79\xe3\x63\xe6\xbd\x1c\x3e\xbf\x19\x3c\xbd\x39\x3c\xf0\xbd\x97\xc3\xe3\x18\xce\xe6\x28\xf4\x5f\x8a\x41\xfe\x6d\xaf\xcf\x50\x22\x9c\x49\xb9\x95\x16\xb0\xe5\x2f\xad\xa2\xa5\x6a\x1d\xec\x40\xc6\xa9\x83\x39\x8c\x38\xc9\x9c\x22\x18\x3a\x98\xe0\x9e\xd8\x9b\xf3\x38\x53\x8d\xfb\xff\x8d\xdf\x60\x87\xd0\x10\x51\xfe\xe8\x39\x72\xf4\x23\x40\xbc\x00\x39\x44\x8e\x54\x74\x12\x29\xa6\x4e\xe1\x25\x72\xa0\x73\x5a\xd8\xee\x33\xcf\x77\x64\x95\xc3\xbe\xeb\xaf\x3c\xbf\x14\xc5\xee\x71\xa9\x76\x34\x62\x37\x37\xec\xcf\x48\x89\x84\xfe\xa3\x47\xc2\xa1\xa3\x3e\xa5\xc2\x23\x1e\xed\x03\x6a\x48\x8b\xcc\xff\x1e\xff\x07\xfb\x1e\x7f\xf7\x9d\x4f\x4f\xf1\xd9\x08\x9d\xe2\x54\x42\xa4\x5b\x92\xf3\x49\xfd\xe5\xf3\xdd\x34\x78\x3c\x3d\xff\xfb\xdc\x7a\xf9\xb8\xe3\x18\x26\x53\x71\x44\xd5\xb9\x76\x41\xfa\x9d\xe2\xdd\xc0\xe5\x84\xe9\x02\xf7\x91\x96\x92\x4a\x57\xd6\xe0\x31\x78\x6a\xb0\x37\x79\x61\xc8\xdb\xa5\x7c\x69\xf0\xdf\x1f\x03\x17\xc1\x60\xea\x72\x0e\xcb\xaf\x0b\x31\xe5\xcf\xb2\xfb\x36\x9f\xf1\xd7\x05\x5a\x20\xce\x72\x45\x87\x21\x1b\x1b\x37\x38\xb8\x78\xb9\xa7\x7a\x77\xa7\x3c\x5c\xae\x42\xf0\xf0\x43\x30\x00\xa7\x82\x7f\xdb\xef\x03\x05\x51\x34\x76\xe5\xd3\x87\xe0\xd4\x0d\xc9\xac\x71\x7e\x0d\x03\xbf\xf4\xcc\xb7\xf4\x9a\xab\xef\x82\xd2\x88\x8f\x81\x1b\x23\x26\xe6\x7f\x0e\xdc\x98\x5c\x21\x1a\xc0\x04\x29\x80\x0e\x34\x8a\xf8\x81\x49\xc1\x3a\x03\xd6\x87\x39\x1c\x50\x2a\x5f\xe9\x93\xd5\xeb\x30\x6e\xf1\xf4\xae\x9f\xa7\xbb\x36\xd8\x07\x6e\x08\x19\xec\x61\xc2\xa2\x71\x16\xce\xe3\xaa\xdf\x54\xa2\x37\x8c\x11\x65\xe2\xbb\x01\x70\xa5\xac\x22\x61\x93\x9a\x8e\x02\xec\x31\xdf\x04\xe0\x3a\xe6\x58\x3d\x57\xe0\xee\x89\xd8\x1f\x0d\xab\x45\xc2\x30\xa0\x4b\x18\x25\x78\x52\x23\x8d\xe4\x37\x86\x43\x01\xe7\x11\x13\xc6\x48\x13\x12\x8d\x44\x43\x30\xd9\xb5\xcc\xf8\xa2\x48\xb8\xd7\x11\x8a\x43\x25\x7a\x08\xac\x9e\x9e\xba\x42\xf6\x50\xbb\x2c\xe5\xb4\x3c\xc2\x04\x18\xf2\x52\x54\xcf\x98\x28\x49\x31\x90\xd2\x51\xc4\x90\x20\x24\xfd\x39\x15\x41\x14\x8a\xac\x94\x6c\x59\x7f\xf1\x5c\x66\x54\xfe\x1c\xb8\xe8\x57\x05\x85\x9c\xdb\x95\x15\x07\xdd\x7a\x92\xb1\x8f\xa0\xb6\x36\x59\x88\x52\xe2\x0d\x43\x94\x40\xe5\xff\xfd\x8b\x2c\x1c\x48\x91\x83\xc9\x95\x13\x93\xc9\x04\x85\x0e\x59\xb0\x7e\xdb\xf3\x63\x1d\xf3\xe3\x14\x51\xe4\x5c\xc1\x24\xed\xf5\x2f\x86\x8e\xf0\xa4\x6e\xec\x96\xc7\xb5\x1a\x8f\x69\xad\xc9\x87\x83\xca\x08\x6f\x1b\x93\xc0\x99\xc7\x08\x26\xc8\x09\xa6\x28\xb8\x70\xae\xc9\x82\x3a\x27\xc2\xfd\xf5\xe6\xd5\x9e\x88\x54\xab\x15\x83\x8b\xb4\x6a\x01\x4c\xad\x7b\xeb\xdb\xf3\x8d\xcc\xbf\x91\xf9\x57\x49\xe6\xc5\x21\x8b\xb7\x53\xf1\x8d\xc7\xe0\x49\xcd\xf8\x20\x93\xa2\x8a\xbf\x1e\x80\xc3\x5a\x5d\x76\xa0\x87\x05\xa6\x24\xf6\x0c\xb8\x61\x74\x59\x73\x2f\xd7\x3e\x94\xbf\x9d\xb8\x4c\x98\xd2\x57\xd8\x4a\x10\x33\x66\xc0\xf0\x32\x27\xc1\x40\x1a\xc1\x5e\x0c\xcf\x51\xec\x02\xf7\x47\xae\x54\x04\x74\x31\x3b\x77\x6b\xa4\x87\x54\xb8\x34\x6f\xfb\xa2\xa1\xe1\x3c\x1d\x2a\xb1\x19\x1b\xc4\xed\xdb\x60\xce\x68\xbb\x97\x25\x8c\xd7\x20\x95\x2f\x59\x09\x61\x2e\x8b\x58\x8c\xea\x16\xda\x62\x99\xed\xec\x44\xc5\x41\x73\xb2\x47\xf3\x39\xa8\x01\xaf\x66\x79\x52\xce\x4d\xdc\xed\x93\x52\x6b\xec\xa4\x20\xb4\x47\x4f\x3a\xee\x9c\x50\x06\xe3\x1e\x83\x74\x82\x6c\x43\x2b\x0b\x4b\x2f\x9b\xa3\x92\x5c\x5b\xa0\xbd\x11\xf5\x1d\xc8\xce\x66\xbb\x6b\xf7\x4b\x03\x3a\xf9\xd9\x6d\x89\xca\xda\xe5\xb6\xa2\x31\x9b\xfd\xd1\x22\xf1\xaf\x47\x49\x2d\x16\xcb\x08\x89\xcf\x61\x5b\x13\x6c\x84\xe7\x0b\x96\x3b\x06\x51\xc8\x8f\xb8\x1c\xa4\xc7\xc8\x64\x22\xcf\x3a\xff\x49\xe9\xec\xe2\xda\x3a\x27\x5f\xf4\x09\x29\xee\x8b\x15\x87\x6b\x13\xc9\x8b\xa2\x11\xa0\x0d\xaf\x7f\x0e\xb8\xb2\x94\x62\x18\x61\x78\x1e\x1b\xe8\x6d\x3c\xaf\x2d\xf0\x1c\x46\x89\x1e\xb4\x33\x97\x6e\xab\xbe\xdb\x57\x63\xa1\x97\x6d\x2c\x48\x0f\xab\x4a\x55\xdc\xd2\xaa\xba\x40\x54\x63\x74\x6f\x73\x0f\xb6\x94\x50\xcb\xb7\xe4\x26\x76\xf4\xcc\x7a\x9d\x9a\xd1\x93\x5a\x33\x3a\xa9\x32\xa3\xa7\x1e\x41\xb0\xcc\x76\x7c\xb8\xbb\x0f\x14\x35\x0b\xe7\x35\xbf\xb3\x44\x1c\xe4\x30\x63\xed\xee\x59\xf6\xfd\x8f\x11\x0e\x23\x3c\xe1\x3f\xeb\xd7\x86\x29\xe5\x1a\xf2\x76\x38\x1c\x2e\xb0\x49\x58\x20\x24\xb3\x8a\x60\xea\x90\xcc\x5c\x1f\x84\x51\xf8\x01\x05\x28\xba\x44\x47\x8c\xd1\x64\x98\x33\xc6\x46\x49\xff\xb3\x08\xc8\xa8\x08\x2d\x91\x0e\x74\xf1\x5c\x48\x66\x7d\x4a\x08\xf3\xfc\x1d\xf1\x39\x26\x90\x43\xfc\x12\xf5\xc5\x22\xde\x46\x09\xeb\xc3\x30\xf4\x5c\xf5\x83\xeb\x0f\xcd\x9f\x28\x9a\x91\x4b\x64\xfc\xaa\x9c\x67\x62\x2c\xf1\xd8\xcd\x8d\xeb\x9a\xd1\x32\x80\x08\x63\xea\x09\x62\x5e\xde\x2d\xcd\xfa\xc9\x3c\x8e\x98\xe7\x3a\xae\xef\xf3\x6d\xd3\x8f\x51\xcf\x98\xd1\x2f\xe7\x8f\x64\x91\x3b\xa4\x3f\x85\x89\x88\xf5\xf0\xfd\x1d\xea\x25\x15\x29\x10\xbd\xc1\xee\x68\x94\x9f\xfc\xd4\x45\x61\xc4\x5c\xe0\x0a\x37\x1c\x70\xe3\x28\x61\xee\x99\x2f\x03\x41\x7f\x19\x8b\x98\x1a\xcb\xba\x99\x70\x16\xcb\xa8\x80\x0c\x42\x18\x86\x0a\xf1\x10\x50\x8f\xf8\xfe\x6a\xc5\xf7\xeb\x0d\x4e\x10\x65\xaf\xa5\xdf\xb5\xd3\x86\xc9\xa0\xcd\xc2\x96\x7b\xbe\x18\xf5\x95\xcc\x63\x5f\x67\x58\x93\x0e\x04\xf8\xdf\xb9\x8e\xde\x48\xbe\x65\x3a\x0c\x0c\xc0\x22\xad\x7c\xef\xb1\x11\x34\x97\x2c\xf1\xa1\xa7\x01\xb4\xb0\xb7\x28\xb7\xb7\xfe\x6a\x95\xf7\x4c\x55\x14\xb0\x34\xcf\x36\x97\xf7\x67\x08\x2f\x1a\xdd\xbf\x02\x62\x33\x2e\xa4\xb3\xc7\x89\x7e\x05\x1e\x27\xfa\x87\xf1\x38\xd1\xaf\xdb\xe3\x44\x6f\xdb\xe3\x94\xf7\x6d\x7d\x6d\x11\x6d\x0d\x9e\xae\x1f\x9f\xc1\xdf\xde\xfc\xf3\xb7\x4f\x76\x4f\x57\xad\xf7\x6a\xa0\x44\x37\xe5\x37\x91\x26\xaa\x7d\x69\xa2\x0a\xa6\x10\x4f\x52\x23\x17\xa8\x7c\xee\x02\x5d\x8b\xb8\xb8\xfc\x93\xa9\x07\x24\x73\xb1\xf5\x52\xfe\xd4\x63\x34\x9a\x4c\x10\x15\x5e\x10\x2e\x2e\x4e\x16\x51\x58\xf4\xef\xd4\x8f\x20\xfe\xaf\xee\x75\x43\x79\x41\x5f\xe6\x10\x87\x52\x0c\x76\xb9\x54\xce\xdf\x7b\x76\xd6\x7a\x65\xc7\x71\x14\x5c\xa4\xa6\xba\x8d\xa4\xaf\x3c\x87\x36\xc4\xaf\xc1\x21\x88\x46\x87\x07\x20\x1e\x1d\x3e\x07\x8b\xd1\xe3\x7d\x10\x8c\x96\x97\x88\xb2\x28\x80\xf1\xd0\x63\xa3\xe5\x0a\x40\x8f\x81\x85\x85\x91\x97\x22\xf7\xfe\x3c\x78\xf4\x28\xcb\xd5\x49\xa3\xf4\x06\x66\x8a\xe6\xe0\x6c\xd8\x1b\xa8\x13\xe2\xb1\xef\x06\xfe\xff\xd6\x87\x8c\xdf\x33\x7c\xaa\x78\x8b\x53\xed\xeb\xb3\xb8\x3f\x1a\x8d\xd8\x4b\x3d\x55\x6f\x30\x64\xbd\x81\x9e\xf0\xf0\xa9\xa5\x35\x93\xb3\x9f\xfe\xfc\x04\x58\xe4\x19\x27\x1b\x8b\x3f\xc8\x7c\x20\xe4\x43\x82\x19\x8c\x87\x4b\x2e\x54\xac\x27\xda\x1a\x11\x22\x8d\x72\x26\x25\x0b\x86\x68\xc5\x23\xf2\x47\xd7\x07\x9c\x4a\xf9\x68\x9a\x1c\x87\xbb\x03\x40\x68\x84\x30\x13\xea\xcc\xd0\xd5\xdb\xed\x82\x0b\x74\x7d\x4e\x20\x0d\x55\x8b\xda\xdd\x7d\x10\xe1\xa8\xa3\x38\x24\xa1\x49\x90\x6c\xf8\x06\xe4\x21\x01\xa9\x8c\xc2\x3f\xca\x90\x6c\x25\x39\x7d\xe6\xe2\x1c\xc2\x88\x26\x99\x20\x93\x7e\xa5\xd3\xbb\x3e\x8b\xd5\xd4\x3f\x59\x2f\xc7\x65\xe2\x94\x94\xa5\xff\x8d\x1f\x87\x6c\x1c\x15\x71\xe7\xb9\xff\x2b\xed\x57\x67\x3d\xff\x2e\x70\xe5\xbf\x7e\xae\xad\x1d\x5f\x95\x9f\x93\xaf\xc5\xf8\xfd\x09\x62\x5c\x1e\x8c\xce\x17\x0c\x79\x86\x61\x34\x46\xe1\xf9\xb5\xab\xc4\xfa\x7f\x53\x6c\xa9\x16\x1a\xe6\xdb\x51\x21\x14\x00\x99\x33\x23\x36\x1c\x2c\xc5\xbf\xff\x88\xe2\xf8\x58\x70\x52\x4b\x40\x25\xea\x2b\x0b\x57\x3f\x88\x49\x82\xb2\x78\xd9\xe5\xea\x4c\x36\x57\xbe\x8a\xe2\x78\x03\xe1\xb5\xb8\xb3\x5a\x24\xaf\x58\x82\xfe\x75\x05\x14\x5c\xc3\x65\x8e\x07\xe6\xe2\xca\x51\x5f\xda\xef\xfa\x61\x94\xcc\x21\x0b\xa6\xaf\x2f\x39\xaa\xf8\x95\xfc\x33\x59\x24\x48\x7e\x74\x03\xc1\x3c\x7d\x7f\x05\xf4\x50\xc3\x82\xc4\x78\x9a\x80\x08\xc4\x60\x71\xd6\x8f\x70\x10\x2f\x42\x94\x78\xa8\x7f\x81\xae\x8f\x49\x88\x7c\x3e\x4f\xc2\xc8\x9c\x5f\x9e\x70\x02\xe5\xc2\xd5\xfe\x62\xaf\xb8\x51\x89\xf7\xa7\x53\x4a\x62\xf4\x7f\x47\x82\x3a\xa4\x3b\xf9\x4f\x20\x23\x04\x5f\x26\x25\x88\x0e\x88\xea\x18\xde\xdc\xa4\xb3\xed\x8e\x46\x09\x97\xf6\xb2\x8f\x51\x3e\xef\x31\x10\x91\xcc\x7d\xe3\xd4\x9e\x9d\xa6\x8f\x9f\x71\x58\xe7\x14\xf1\x75\xab\x2e\xda\x0a\x54\x6a\x2a\x07\x29\x4d\xa5\x24\x65\x85\xd9\x1d\x8e\x49\xb0\x48\x5c\xdf\x84\x7e\x07\x8a\xfa\x00\xac\x3f\x8e\x70\xf8\x86\x5f\x21\x36\x15\xcf\x41\xa3\xd1\x08\x8a\xcc\x0d\x76\x5a\x0f\x32\x57\x43\xfc\xb3\xbe\x98\xca\xf3\x57\x32\xdd\x42\x72\x0e\xba\xc0\x7d\x8c\xbe\x98\xb9\x5f\xfe\x92\x9d\xee\x67\x4f\x0b\x9d\x2d\x28\x10\xb7\x49\x19\xc2\x0a\x87\xc2\x97\x02\x02\x4d\xea\x64\x8e\xb0\x49\xad\xa7\xe8\xcc\x1f\xe6\x9e\x30\x0f\x43\xfa\x88\x48\x5d\x4b\x50\x1d\x2b\xb1\xd1\x79\x91\x0b\xa6\xb2\x00\xd8\x1d\xe8\x5f\xad\x2b\x45\x29\x3b\x50\x83\x19\xfc\x83\xc1\x73\xa9\x61\xc9\xbe\x98\x7c\x45\x15\x70\xd5\x4c\xbf\xaf\x77\x56\x4f\x93\xe4\x78\x54\x3a\x07\x70\x7b\x03\xb7\x7c\x92\x53\x76\xc3\x69\x2a\x24\x81\x38\xf1\x9e\x0f\xf8\x89\x0d\xc9\x95\x01\x10\xf3\x97\x07\xcf\xf8\xb5\xab\x77\x9d\x93\x78\x3a\xab\xda\x4c\xf0\x62\x37\xf7\xc4\xc1\x33\xf3\xf3\x4b\x41\x31\xc6\x95\xc4\x87\xd0\xdb\xa5\xcf\xb5\x11\xee\x7f\xe6\x0f\x8d\x29\x5a\x32\x88\x55\x49\xe5\x0d\x9b\x55\xde\x05\x9b\xf6\xc2\x48\x36\xdb\x98\x42\xca\xfa\x5f\x74\x48\xeb\xed\x85\x3e\x67\x5f\x08\xf9\xdb\x80\xc1\x05\x2a\xe1\x67\xe8\x46\x21\x1f\x87\xe0\xe1\xf2\xf8\xaf\x47\xef\xfe\xf2\x7a\x78\xba\x94\xa7\x62\x68\x1a\x47\xb9\x22\x11\x0e\xb9\x3c\xf9\x51\x16\x06\xd2\x8c\xf7\xd4\x8d\xc9\x24\xc2\xee\xd9\x0a\xa4\xef\xe5\xac\x5f\xf9\x27\x85\x67\x7f\x75\xb6\x02\x62\xf5\xc9\x70\xc9\xa7\x1f\x2e\xbb\x4e\x5f\x35\xd9\xea\x6c\xb5\x02\xe6\x37\xc3\xa5\xd1\x5b\x94\x7f\x12\x5b\xd7\x7e\xaf\x3a\xc4\xce\xb6\xd9\x6d\x4b\x38\xed\x76\x54\x2f\x5a\xaf\x7a\xbd\x18\x7f\xf8\x2f\xf6\xe2\x3f\xf7\xed\xaa\xd7\x89\xa4\x44\xf7\x2f\x0b\x48\x43\x17\xb8\x47\x4a\xc7\x70\xf5\x81\x50\xc1\x86\xfc\x99\x24\xc2\x17\x2e\x70\xe1\x3c\x32\xa3\x12\x93\xda\xf0\xc3\x27\xea\x8b\x9e\xc0\x45\x6a\x9b\x4e\x68\x90\xc6\x70\xcb\x5f\xaa\x43\x00\x85\x19\x9a\x3f\xfd\x14\xa8\x80\xbb\xb3\xb3\x9c\x8d\x1b\xb8\x3f\x70\x1a\x91\x0e\xd1\x94\x4a\x2b\x55\xa6\xf4\x11\x43\x5b\x4a\xcd\xdd\xd9\x3c\x87\xb6\x79\xd0\x17\x24\x00\x57\x94\x5f\x3d\x89\x3a\x19\x9b\xcd\xc0\x4f\x4c\xed\x14\x66\xb0\xcc\x59\xce\x87\x23\xfc\x03\xca\x37\x20\xa2\x04\x13\xb2\xa0\x01\xca\x6d\x00\x70\x7f\x20\x38\x55\xa1\x4f\xdd\x04\x31\x26\x8c\xdc\x7b\x7b\x92\xb4\x87\xcc\x40\xa5\x8c\xfb\xac\x56\xc6\xc5\xf7\xb3\x45\xe6\x5f\x91\x2f\x9b\xb1\x83\xa7\xae\xa0\x65\xe9\xf7\x81\x0c\x4a\xa7\x69\xe5\x78\x69\x24\x8a\x64\x0f\x8d\x6a\x7e\x09\x02\x2e\xe8\x44\x64\xa1\xb7\xbb\x01\x92\xb6\x88\x14\xa7\x40\xa3\x91\x7f\xa8\xc3\x5d\x63\x22\xc8\xe0\x31\x28\x39\x35\x8d\x70\xd3\xa9\x88\xf7\xd5\xb1\x8c\x8a\xea\x52\xda\xd0\x38\xae\xdb\x95\x43\xf0\x14\x9c\xba\xfc\xfe\x2f\x9a\x1f\x9a\x1f\x57\x4f\xeb\x77\x72\xbb\xaa\x11\x9e\x87\xf0\x68\xc1\xa6\xef\x29\x19\x47\x22\xf8\x94\x7f\xfa\x89\xd0\x59\x0a\xa1\x11\xcb\x2c\x3d\x65\xbd\xb9\x7a\x58\xe0\x53\x0a\x96\x25\x02\x3a\x4b\xcd\x2d\xc5\xb7\xc7\x7a\x70\x57\xd4\xa6\x4b\x4b\xd1\xf1\x2d\x38\x9f\x45\x2c\x1b\x2c\x0c\x64\xd0\x26\xff\x5b\xd7\x9f\x6d\x8d\x87\x2a\x8a\x91\xff\xb5\xf0\x19\xca\x03\x3f\x30\x0f\xfc\x8c\x73\x57\x94\xe4\x7c\x86\x76\x37\x68\xbb\x10\xd7\x56\xe3\x94\x3c\xf4\x2f\xe4\xaa\x9f\xa5\xab\x7e\xae\xc2\xb1\xbb\xc4\x1d\xd4\x3a\xa5\x73\xfe\xec\x06\x3c\xe4\x7d\x67\x9b\x60\xa2\xc5\x48\xf7\x80\x8b\xf2\x8f\xcf\xc0\xf3\xc2\x20\xe5\x67\x9e\xd6\x47\x7c\x81\x03\xc0\x39\xe5\x93\xad\xa5\x31\x15\x65\xa0\xd4\x04\x08\x6b\xcd\x54\xb4\x85\x07\xd6\x30\x58\x51\x34\x27\x55\xe6\x28\x34\x27\x49\xc4\x08\xbd\x16\x3d\xfe\x39\x8f\xb8\x8c\x42\x61\xa0\xea\x6e\x63\x92\x5e\x31\x2e\x63\x8c\x52\x47\x96\x61\x3c\xd0\xd2\x80\xc5\xf4\x91\xaa\xd4\x62\x08\xc1\x8d\xfa\x52\xb5\x20\xf4\xcd\x2b\xd1\x06\x3e\xb2\x28\x55\x72\x4d\x93\x54\x9f\xca\xdd\x42\xc6\x00\x5c\x61\x2a\x3d\x5c\x9c\xc5\xf5\x77\xa4\xc7\x61\x84\x1e\x3d\xf2\x9a\x06\xd7\xe1\x8f\xae\xef\x03\xf5\x1a\x13\xce\x09\xfb\x34\xc6\xe3\xca\x03\x65\x44\x8e\xee\xa4\xcb\x47\xb2\x72\x06\x13\x5e\x25\x77\x91\x20\xad\xea\x69\xe9\xc1\x5b\x72\x8e\x38\xb4\x4e\xc2\x9f\xbd\x9e\xa3\x21\x5e\x59\x1a\xe7\xfb\xcb\x74\x92\x06\xac\x2d\xd8\xf4\x67\xe1\x97\x71\xfd\x47\x8f\x54\xd9\x97\x39\xe9\xcb\x01\xbd\xf6\x58\x11\xaf\xe6\x7e\x16\x55\x02\xad\xeb\x91\x3f\x70\xe0\xf5\x85\x5b\x56\xff\x60\x3b\x95\x82\xdf\x53\xf7\xab\xfc\x89\x9b\xd2\xa6\xfa\x7d\x78\x7d\xf2\xfa\xa3\xa1\x7a\x89\x5f\xca\x6a\x1a\xc2\x8c\x5e\x0f\x4f\xdd\x20\x46\x90\xbe\x56\x49\x98\xfc\xfd\x93\x4f\x3f\xfe\xfc\xc6\x1c\x40\x7b\x9e\x33\xc5\xed\xef\xe2\xe6\x34\x14\x37\x99\x33\x21\x34\x36\xf5\xb4\xd4\x03\x5f\x7f\xf8\xf0\xcb\x07\x63\x28\xe3\x39\xf1\xe7\x70\x89\xbe\x44\xcc\x06\xc5\xc7\x7f\xbd\x7f\xf3\xee\x2f\xe5\x65\x80\xcd\xc0\x6b\xab\x32\x8a\xfd\xb5\x28\x8c\x5d\x28\x62\xf3\x1c\x7a\xab\x7a\x88\xeb\xd5\xc3\xa7\x7b\xcf\xfe\x19\x5c\xc4\x6f\x37\x57\x0f\x53\x25\x10\xb8\x8f\x20\x63\x34\xb9\x15\x6d\x30\x8b\x8b\xb3\x4a\xc8\x14\x25\x48\x24\xca\x09\xc3\x64\x83\x60\xac\xd4\x0b\x71\x02\x9a\x9d\x88\x7a\x48\xad\x25\xd8\x95\xba\x46\xf5\x54\x52\x5b\xad\x7a\xfa\x77\x25\x69\xd6\xea\x23\x6d\x74\x48\xe3\x98\xac\xa9\xc4\x15\xb2\x9b\x5a\x39\x25\x4b\x83\xc8\xda\x6b\xf6\x51\xaa\x54\x64\x1d\xa1\xa8\x53\xc0\x06\x07\x46\x68\xb1\x29\xfa\x0f\x0e\xc1\xb3\x52\x10\x75\x0b\x59\x53\xaf\xac\x55\xe2\xa1\x35\x6f\xbe\x5d\x06\x62\x29\x69\xaf\x94\x98\x67\x04\x4d\x63\xc2\xa2\x00\x39\x69\x92\x7b\x5d\xe4\xb4\xd4\x47\x80\xa8\xf4\x59\x0d\x8d\x2d\xc5\xc3\x5e\x05\xc0\x7d\xbc\x7f\xd8\x35\xd9\xa3\x36\xef\x4f\xd6\xc6\x76\x84\x98\xe4\x8c\x61\x24\xa2\x3c\x65\x94\xe0\x33\xe0\x9e\xe7\x13\x50\xed\x51\xc9\x8e\xf3\x0f\xe4\x50\x19\x2c\x15\x3a\xd0\x11\x22\x85\x33\xa6\x64\x26\xf3\x3d\x7e\x79\xf3\xea\xd8\xd1\xe2\xa1\x73\xbe\x60\x4e\x40\x16\x71\xe8\x60\xc2\xf8\xbc\x4e\x84\x1d\x46\x1c\x05\xc8\x55\xc4\xa6\x4e\xd4\x3e\xa3\xa7\x13\xea\x06\x5b\x46\x5d\x79\x15\xa9\x14\xdc\x19\x87\x1f\xa7\xa8\x80\xa9\x29\x4c\x1c\x8a\xf8\xf5\x82\x42\x51\x45\xcf\x81\x42\xe4\x94\x08\xee\x3b\xef\x65\x66\x8d\x8c\x92\xc1\x0e\x0c\x67\x11\x8e\x12\x26\x43\xa2\x8c\x7c\x1b\x7e\x12\x55\xc0\x8c\x93\xc6\x9b\x70\x86\x70\x2b\x48\x7e\xf1\x62\xab\x48\x3e\x39\xf9\x45\xa3\xf7\x2a\xc2\x21\xb9\x72\x84\xfb\x66\x0d\x22\x2d\x23\x58\x0d\x78\x05\x13\x35\x68\x8a\x53\x46\xaf\x1d\x38\x81\x9b\xe4\x43\xd5\xae\x4a\x4b\x45\x1d\x97\x60\xab\x10\x12\x22\x06\xa3\xb8\xaa\x42\x48\x8d\xbe\xbb\xee\x57\x0f\x89\x7b\xe9\x18\xb4\xd4\xc4\xd6\x9d\x24\x24\xb7\x12\xf5\x22\x51\xe8\x84\x04\x25\xe2\x48\xa3\x2f\x51\xc2\x52\x7a\x10\x3f\x3b\xd0\x31\x66\xe3\xa7\x5d\x12\xe6\xd7\x4b\x23\xed\xa3\xc6\x0b\xf7\x65\xa7\x54\xab\x56\x35\x69\x9e\x71\xd9\x8d\x6b\x3f\xfa\x12\x1e\x18\x06\xc2\x36\xf6\x67\xa9\x43\xb8\xd5\x49\xf0\x7a\x96\x08\xc5\xa1\x90\x3f\x9b\x12\xed\x54\xc6\x9b\x01\x90\x35\x35\x5f\xa4\x8a\xf4\xe6\x30\x49\xae\x08\x97\xbf\xcd\xa8\x31\x0e\x35\x0e\xf5\x9f\x52\xac\xd6\xf2\x4d\x2e\x19\x54\x0b\x13\x86\xd0\x96\x4b\xea\xb0\x8b\x35\xa9\xac\xe6\xf2\xcb\xa2\xa7\x9f\x72\x0b\x62\x9b\x3d\x7b\x4d\x13\xdf\x1c\xe2\x22\x2e\xde\x6a\x86\xcb\xa6\xfa\x3e\xaf\x4a\x4a\xca\xe7\xd6\x98\x82\x60\x16\x7a\xdf\xb4\x78\xad\xed\x65\xf0\xf2\xf7\x95\xa0\xcc\x6f\xaf\x53\x6d\x1d\x38\x73\xd5\x8f\xf3\x18\x06\x68\x4a\x62\x51\x22\xc3\x4d\x8d\x07\xea\xd7\x4b\x2d\xbe\x1f\x80\x4c\xae\x95\x3f\x11\xac\x40\x5d\x4f\xd4\x2e\x4a\xc9\x05\xa3\xb3\x8a\x57\x50\x5f\xd4\xda\xae\x0b\x03\x67\xaf\x6c\x38\x6e\x7a\x20\xa4\xb6\x5d\xa6\x05\x8e\x05\x99\xdd\x24\xf0\x23\xd0\xa1\xea\x62\x80\xd3\x43\xe0\x52\x34\xce\x2b\x3b\x12\x61\x67\x35\x7c\x67\xdb\x92\x7c\x27\xea\x5f\x97\xcd\xda\xc4\xfc\xea\x74\xd6\xdc\x45\x20\xc4\x2a\x49\x0a\x56\xfe\xbb\x46\x26\xea\x9a\xf9\x76\xd5\xdf\xf1\x1b\x63\xc1\x18\xc1\x39\x0e\xb6\xd1\xa1\xcc\xd2\xe2\x32\xc7\x4d\x19\x63\x92\x79\xb4\x81\x0f\xcd\x2c\xda\x08\x83\x01\x53\x72\x6b\x4e\xa0\x1d\xcb\xb4\xfc\x08\x3b\x01\x45\xa2\x56\x3a\x8c\x93\x7e\xb7\x0c\x44\x2e\x9f\xe0\x4b\xce\xb3\x55\x87\x86\x93\x93\x5f\xd2\xee\x0c\xad\x88\xaa\x83\xb7\x56\xfc\xad\x49\xf7\x87\x0c\x9d\xa7\x85\xeb\x63\x4f\xed\x85\xd0\xff\x8b\xbe\x2f\x37\x73\xda\x2b\x4e\xbf\xa7\x83\x95\xa5\xb3\xcc\x15\xd6\xf7\x3d\x2d\xd3\x16\xa2\xa7\x3b\xf3\x37\x63\x9c\x76\x9e\xd8\xed\x98\x2c\x0a\x73\x88\x5f\xfb\xe2\xff\x93\xfe\x38\xa2\x09\x53\x69\x14\xc6\xbc\x6e\x0c\x7f\xbb\x76\x0b\x86\x97\xdc\x56\x4f\x6c\xcb\x02\xae\x8c\xf2\xe5\xb8\xdb\x6f\xbd\xe5\x39\xfb\x40\x85\x60\x61\xbb\x48\x33\x01\xae\x9a\x40\x1b\x18\x84\xa2\x38\xe1\x63\x49\x50\xcc\xb1\xa0\x29\x2e\x62\x68\x26\x8a\x81\x1a\x59\x6e\x56\xfa\xd3\x76\x3b\x93\x4a\x3a\x9e\xff\x35\xf7\xb9\x74\xad\x35\xbb\xb6\x2b\xe4\xb9\xfb\xa1\xb6\x36\x90\x0a\x83\x78\xf1\x9e\xed\xe0\x91\x2c\x92\x48\x8b\xdb\x34\xdd\x9c\x16\x25\x2c\x85\xf8\x56\x64\x56\xc2\x13\xff\x43\xea\x8a\xff\x41\xf1\xf5\x1f\xb4\xbd\xaa\x96\x8c\xc2\x40\xd3\x8f\xc1\xb3\x4c\x4b\x97\xe1\xba\xcf\xb1\xb3\xaa\xc4\x8a\x82\x95\x4c\x52\xbb\x9b\xc9\x6e\x2d\x5f\x6b\xfe\xb6\x33\xdb\xea\x68\x7f\x96\x73\x65\x81\x0d\x56\xba\xff\xba\xc8\xb7\xb3\xb7\xdc\xf4\x75\x6f\xea\xe1\xce\x5c\x36\xa9\x7f\x9b\xd6\xfa\xb7\x71\x9b\x34\x0c\xbd\x3f\xa6\x8f\x73\x05\x34\xc5\xe7\xbf\x4d\xc5\x63\xe5\x39\xe5\x10\x2e\x18\x0a\x3d\x4b\x86\x89\x7c\x82\xa1\x84\x45\x78\xf2\xd2\x65\xe8\x0b\x73\x87\x6e\xaa\x19\xae\xfc\x0d\x5d\xe3\xcc\xee\x1a\x17\x9e\x88\xb2\x6b\xdc\x75\xb5\x57\x5c\xd0\x8a\x91\x5e\x93\x7d\xb9\x02\xc2\x61\x52\x82\x48\xac\x3a\x8b\xe6\xce\xbb\x53\x69\x3b\x77\x9b\x0a\x1a\x7a\x18\x25\x84\xff\xf1\x14\xfe\x7d\xb6\xff\xee\x75\xbb\x12\xc2\xcf\x80\x1b\xc6\x15\xf7\xbd\xf6\x7b\x54\x1b\x10\x6a\xe4\x81\x9f\xaf\x9d\xa3\xe3\xb7\xce\xc7\x6e\xe6\xaa\x2c\xd2\xc0\x2a\x42\x98\x50\x85\xb5\x50\xa9\x7a\x7e\xc9\xe2\x3c\x61\x19\xe7\x16\x01\x5d\xc0\x35\xe2\x19\xce\xce\x40\xef\xb9\xa5\xbe\x5f\xa5\x88\xfd\x62\xe3\x93\x9e\xa3\x96\x5b\xad\xca\xbb\x53\x4b\xba\xe7\x30\x89\x82\x5e\x48\xc9\x3c\x24\x57\xb8\xa7\xcb\x32\x58\x1a\xb7\xe4\x9f\x6c\x31\xc6\xd7\x59\x7f\xbd\xb0\x18\x15\x8b\xbf\x11\x42\xf4\x18\xbf\x07\x84\x6c\x82\x88\xaf\x15\x01\x66\xed\x70\x7b\xe0\x7d\xc5\xe3\x5f\xe7\x7a\xa5\x58\xc0\x07\xec\x25\x88\x35\xa5\x1c\xdc\x4f\x84\xc8\x5f\xff\xf2\xfa\xe3\xf4\xd7\x17\x1f\xd6\xc9\xdd\x2e\xa8\x1e\x35\x85\x6a\x80\xfb\x83\x51\xa2\x35\xe3\x8d\xd6\xea\xac\xfa\x6a\x49\x6a\xeb\xae\x0a\x00\x6a\xe5\xcb\x6a\xad\x5e\xeb\xbf\xdd\x34\xfa\x4e\x6b\x14\x8e\x82\xdb\x5d\x5f\x5b\xc7\x51\x8b\x22\x42\xa2\x71\x77\x45\x09\xa1\xce\x50\x6c\x72\xa5\xdb\x8e\xcc\xa6\x12\xbc\x3d\x42\xb5\x29\xa5\x7a\x4d\x81\xbb\x21\x89\xb9\x5d\x42\x6d\x65\xba\x6c\xcd\xf4\xab\xba\x62\x43\xa5\x44\xc5\xc6\x75\x08\x02\xd5\x22\xbf\x8e\x07\x43\xb4\x1f\x42\x06\x1f\x3d\xf2\x1a\xe0\xb4\x65\x09\xa6\x63\x80\x65\x51\x5f\x62\x05\x4d\x28\x41\x8c\xf3\x39\x75\x4c\x59\x9a\xe7\x0b\x19\xf4\x39\x21\x14\x93\x1a\xd5\x83\xf9\x40\x51\x73\x46\x69\x7c\xf4\xfd\xb4\x46\x4f\xba\x9e\x04\x41\x1a\x4c\xe5\x0b\x0c\xd1\x59\xe2\x77\x56\x5a\x82\x69\xc4\x0f\x96\x30\xb1\xd9\x3a\x9f\x3c\x04\x36\xff\x9f\x8f\x3f\xfc\x78\xf4\xd7\xc9\xb1\x9d\xcd\x2b\x41\xbe\x45\x8c\x5f\x29\x70\xeb\x10\x1c\x96\x22\x99\x06\x8f\xc1\x41\xfb\xbb\x41\xdc\x08\xa2\x2f\x55\x05\x03\x3a\xa8\xf7\x70\xd8\x9d\xae\x66\x29\xce\xeb\x39\xea\x09\x9d\xba\x4a\x27\x2b\x69\x5c\x0d\xe0\xca\xb9\x3a\x41\x5b\x57\xdb\x30\x4a\x7e\x31\x13\x78\x1a\xcb\xc1\xb5\x4c\xf9\xda\xb2\xbb\x40\xbd\x3e\x8f\x17\x34\x2b\xe9\xfe\x58\xb9\xb1\xbb\x58\x6a\x0b\x46\x2a\x18\xc7\xbf\xcc\xb3\x32\x9b\xb5\xae\x83\xce\xe9\x1a\xaa\xda\xe7\x15\xa2\x45\x1b\xb8\x3c\xf8\x02\x67\x6a\xf6\xcc\xd9\xf2\xb3\x6e\x69\xa0\x1f\x2b\x7d\xf1\x3e\xe7\x46\xfe\x81\x60\xb1\x83\xe2\xaf\xe3\x98\x24\xca\xfa\x79\x9c\xdf\x0b\x5b\x40\xa8\x02\x23\xc3\xda\x01\x70\x35\x40\x67\xc0\x7d\x2b\x01\xea\xf7\xfb\x2e\x70\xdf\x11\x67\x4e\x92\x24\x3a\x8f\x91\x93\x02\x2d\xed\xf3\x06\x38\x1d\x50\x5f\x20\x3c\xdd\x3f\xa1\xe3\x06\x96\x46\x51\xcc\xa1\x21\xe2\x36\x35\x13\x0b\xee\x7d\x7a\xa6\xe9\xad\x59\x34\x2a\xfb\x36\x5b\x8b\x65\x12\x6d\xd5\x7d\x01\x06\x66\x3f\x84\x75\xb8\x91\xdd\x25\x3b\x28\x71\xac\x1a\x4f\xe3\x6d\x0b\xaa\x5a\x3c\x5d\x63\x7d\x6d\x85\xce\xea\xda\xdc\x1b\x19\x7c\x6c\x37\xed\x16\xa5\x43\xbb\x21\xd7\x90\x19\x65\x9a\x42\xfe\x57\x91\x41\xd2\x2c\x4e\x72\x9d\x07\x46\xb8\xb2\x48\x8f\xe2\x03\x3e\x18\x13\x3a\x3b\x6e\x78\x58\x04\x3c\xf9\x80\x53\x47\xc1\xba\xdc\x87\x71\x04\x13\xf9\x44\x5f\x0a\x3d\x40\xe2\x0b\x85\x8a\xcb\x56\xbc\x21\x49\xed\xb6\xe4\x5e\xf9\x90\x5c\x24\x97\xee\x55\x39\x43\xbd\x4e\xe3\x17\x25\x8a\x5d\xcf\x91\xd1\x05\x7b\x94\xfe\x95\xa2\x46\x7c\xb2\x3e\xdc\x17\x81\xf1\xde\x32\xeb\xe7\x2c\xab\x7b\x84\x01\x48\x7d\x4c\xf2\x1b\x79\xff\xdd\x66\x99\x9b\x15\x20\x56\xac\xf3\x0d\xcf\xed\x4a\x9f\x33\x40\xe3\x2e\x14\x9f\x3d\xab\x08\xdf\xcf\x9e\xba\xb9\x39\x3d\x03\xaa\xce\x50\x61\x40\xfe\xd3\x4e\x4e\xaa\x16\x82\x71\xca\x4b\xfc\x3f\xef\x8b\x9c\x33\x54\x57\xaa\x53\xd6\x79\xf9\xf1\xda\x73\xdf\xbc\x32\xe5\x6b\x04\x5c\x91\x71\xb5\xf2\x4b\x3b\x2b\x24\x7e\xe4\xfb\x00\x89\xb2\x59\xda\xdd\x20\x1f\x18\x96\xeb\x79\x99\x1d\xbf\x31\xba\x72\xde\x53\x32\x8b\x12\x64\x80\x93\x36\x7e\x67\x25\xc5\xc2\x98\xb7\xac\x55\xf0\x65\x78\x3e\xc0\x1e\x2a\x2a\x10\x3b\xe6\x8b\x5a\x05\x40\xb2\x96\x8a\xc8\x31\x29\x6d\xfe\xba\x74\x95\xc0\xcb\x7c\xb3\x73\xd5\xa0\x58\x2c\x1b\xd0\x72\x35\xb3\x03\x6b\x35\xb3\x03\xb3\x9a\xd9\xc1\x59\x9e\x05\xa9\xd2\x3e\x14\xcd\xc9\x4e\x4e\x7f\x3a\x16\x52\xf5\xc7\x88\xdf\x82\xa2\xea\xc9\x2b\xc8\x90\xcf\x37\x90\x7f\xe7\xf1\x3d\x1a\xc1\xfe\x1c\xd1\x24\x4a\x98\x87\xec\xca\x1b\x02\x4b\xd5\xe1\x29\x9b\x15\xfa\x4b\x9c\x15\xcb\x11\x68\x57\xe7\x02\x83\x34\x17\x6b\x89\x05\xd7\x4c\x6f\x77\xa9\xc1\xb0\xd5\x0a\x30\x00\xc5\x56\x9c\x71\x5d\xc6\x38\x79\x9e\x0f\x28\x3f\x32\x05\x36\xcb\xfc\x65\xf1\x31\x2c\xdd\x96\x1e\x93\x45\xaa\xe4\x69\xab\xc4\xb3\xcc\x26\x9c\x20\x76\x12\x2f\x26\x7f\x43\x62\x9e\x91\x49\xcc\xd8\xe7\x48\x6c\xa8\x69\x94\x7f\x61\x34\x12\x9a\xe1\x4e\x34\xf6\x44\xa1\x5a\xe8\xa7\x16\x42\x5d\xad\xc7\x83\x60\xa0\x0a\x7b\x65\xb9\x87\x0a\x39\xfc\x5b\x0e\x79\x89\x66\x65\xed\x10\x5d\xb3\xc9\xcb\x4a\x81\xf9\x7d\x4c\xe8\x4c\x48\xde\xa2\x6e\x8d\x42\x38\x35\xb9\x10\x19\xb1\x9d\xe4\x2a\x62\xc1\xd4\x83\x9a\xe6\x45\x69\xd0\xa5\x68\x53\xa5\xb7\x62\x98\x51\x09\x6e\x43\x25\xa4\x3f\x5f\x24\x53\x55\x28\x15\x97\xd2\x43\xf3\x4b\xea\xee\xf4\x0b\x48\x88\x7a\x28\x8c\xac\xca\x73\xc1\xe7\x97\xd6\xd1\x64\xb9\x66\xe9\x2d\x6b\xc6\xa2\x8a\x72\xae\xb6\x96\xe9\xb2\x76\xe8\xcd\xcd\xae\x57\x5b\x34\x56\xd7\x81\x95\xd4\x76\x7a\x06\xe8\x68\x77\x1f\xc0\xd1\xee\x00\x10\xad\x9f\x33\x7a\xbd\x4c\xbb\x1c\x83\x68\x84\x2c\x85\x49\xbf\xdf\xf5\xe8\xc8\x4b\x46\x91\x2c\x04\xe5\xfb\xfd\x90\x60\xe4\x3f\x7a\xe4\x61\x81\x7d\x4f\x39\x5e\x7d\xb0\xcb\x6e\x6e\xb0\x62\x17\xa2\x63\xf4\xf7\x7c\x4a\xff\x7b\xd5\x21\x3d\xf6\x97\x90\x83\x40\x46\xf1\x6a\x1c\x61\x18\xc7\xd7\x4b\xd1\x91\xfd\xe6\x46\x26\x0d\x47\x7d\x09\xf2\xcd\x8d\xfe\xcb\xf3\xd3\x27\xa3\xb1\x07\x55\x0b\x6a\xb2\x32\x3a\x15\x73\x4c\xad\x5f\x07\x17\x67\x75\x70\xe9\xfa\x75\x70\x69\xb9\x0e\x2e\x6d\xaa\x83\x4b\xb3\x3a\xb8\xb4\x65\x1d\x5c\xda\xbd\x0e\x2e\xf5\xf3\x2b\x2d\xe1\xab\x7d\x25\xdc\x10\xc9\xc5\x2c\x44\x83\x9d\x7b\x2a\x87\x8b\xef\xac\x1c\x2e\x35\x79\xb5\xa2\x8c\x0b\x74\x9d\xa8\x9d\xc9\xda\xc4\xff\x72\x85\xb5\x6d\x4c\x2e\x23\xd1\x52\x41\xdd\x33\x7c\x18\x26\xe8\x84\x96\xc5\x9c\x8c\x7d\x58\x87\x78\x85\x92\x80\x46\x73\x46\x24\x8c\xfd\xcc\x3d\x24\x0a\xdb\xc9\x63\x99\x5e\x7b\xd4\xcf\x4e\x8b\x59\xec\xd7\x4f\x4f\x3e\x1b\x0d\xbe\x67\xff\x51\xbc\xf0\xbf\x67\xdf\x7d\xa7\xd7\x8f\x45\x0f\xf8\xec\xa2\x67\xe6\xad\xcf\xce\x86\xcb\xd5\x0e\xfb\xdf\x07\x2f\xa9\x97\xb1\xe2\xdd\xfd\x8a\xea\xe9\x44\x5e\x25\xa7\xec\x8c\x8b\x35\xc3\x86\x15\x26\xd6\x02\xc4\x11\x4a\x3c\x04\x9a\x5e\xf5\xb0\xef\x0f\x0d\x98\x2a\x00\xaa\xae\x70\xdc\x84\x7d\x0c\x98\x90\x34\x57\x29\x17\x4f\x11\x4c\xbe\xc6\x6a\xca\x49\xbd\xa9\x76\xff\x2f\xe1\xf8\xd7\xf0\xf9\x89\xdd\x54\x3b\x23\x61\x7d\x4b\xd0\x27\xc0\x8d\x2e\xaf\x7b\xfc\x52\x9d\x45\x2a\x39\x58\x2a\xff\x69\x88\x5e\x9a\xb8\xac\x0c\xa4\xa6\x05\x4c\x3c\xf4\x69\x1e\x42\x26\x53\xe5\x84\x79\x29\xb5\xc4\x1d\xe8\xf4\x0a\xf5\x77\xda\x1e\x3b\x6f\xb6\x6a\x8a\x72\xbb\x40\xd7\x8b\xb9\x5b\x55\x94\xe9\x99\x28\xf1\x90\xb3\xc7\x3e\x03\x6e\x20\x16\x6e\x7c\xa7\xac\xcc\x2f\xea\x8d\x29\x46\x16\x8d\x99\x19\x40\x11\x0c\x09\x8e\xaf\x8b\x81\x7d\xe6\x33\xc9\x35\x66\xf0\x4b\xc9\xb2\xd9\xc2\xf2\x62\x35\x38\xa6\xe6\x40\x61\x44\x94\xba\x5a\x66\x50\x7c\x8d\xb3\x40\xdc\x0c\x8f\xed\x6b\x63\x1f\x00\x49\x1a\xca\xfa\x96\x7d\x93\xd4\xa6\xdb\x9b\x7d\x54\x07\x40\x97\xd8\x29\xc7\xee\xd4\x9b\xb4\x6a\xfb\xab\xad\x6d\xec\x29\x8a\x85\xa9\xa5\x27\x1a\x2d\x19\x3c\x3f\x89\x7e\x43\xc3\x03\x10\x47\x18\xbd\x5b\xf0\x03\x25\xca\x14\xb3\x29\xe2\x23\x4e\x61\x32\x8d\x5c\x90\x4c\xc9\xd5\xf1\x82\x26\x84\xfe\x63\x8a\xf0\x89\xc0\x7a\x84\x27\xc2\xbf\xbf\x60\x1c\xd6\xe1\xa9\x7b\x4c\x42\xf4\xb3\x38\x2a\xbd\x38\xc2\xac\x37\x83\xf4\x42\x86\x3a\xf3\x8f\xfc\x20\x83\xb8\xd6\xb6\x94\x54\x86\x13\xa5\x85\xc3\xaa\x8c\x3e\xf2\x67\xd7\x6f\xb4\x1f\x4d\x51\x3c\xaf\xb4\x07\x09\x54\xc9\xd3\xbe\xc7\x61\x16\xc5\x74\x72\x6d\x4f\x0c\x64\xba\x67\x40\x53\xff\x70\x77\x00\x24\x95\xcb\xe8\x46\x71\x2e\x8b\xc1\x8d\x22\xa4\xaf\x18\xdb\xb8\x69\x2d\x68\x49\x99\x52\x93\x90\x4b\xeb\x8b\xaf\x3c\xbf\xde\x91\xd9\xa9\x5b\x86\x5c\xef\x8e\x28\x37\x9a\x20\x26\x0d\x23\x9e\x38\xfb\xbf\xf0\xb3\x0f\x94\x72\x28\x91\xc1\xb5\x75\xc4\x7e\x26\x61\xde\x84\x50\x84\x3c\xe5\x95\xd0\x83\x1e\xc7\x85\x0f\x96\x2b\xc0\xc9\x19\x0d\x51\x7f\x16\xcd\x10\xd0\x13\x0c\x73\xe3\xaf\xf2\x65\xa1\x15\x70\xcc\x84\x4c\x32\x77\x39\x8a\x9f\x43\x0e\xdf\x55\x8f\xf1\x9f\x48\x88\xec\xe8\x74\x01\xda\x96\x21\x8b\x9c\x73\xd2\x42\x54\x15\xe3\xd1\x1f\xfb\x61\x94\x04\x04\x63\x7e\xcf\x77\x2c\xb2\xdd\xb8\x65\xd8\x52\x9f\x98\xa1\x2f\x0c\x52\x04\x9d\xff\xe7\xcc\x29\x72\xd4\x0d\x20\x90\x27\x1f\xf1\x77\xb0\x0c\x5c\x3e\x9e\x46\x71\xa8\xdd\xd2\x1a\x5c\x21\x8d\xfe\xbc\x90\x35\x87\x7f\x51\x5f\x5a\xed\x4a\x1e\x06\x03\xff\x74\xff\x6c\x07\xf5\x15\xbd\x7b\x39\x43\x8a\xba\x39\xa9\xd6\xa9\xaf\xa6\x24\x46\x1f\xd1\x17\x66\x58\xc0\x52\x24\xa9\x3f\x3c\x0c\x96\x50\x57\xd3\x4d\xc4\x49\x5b\x9c\x33\x8a\xa4\xbc\xc1\xe1\x7d\x1b\x25\x8c\x7f\x1f\x4c\x21\x85\x01\x43\xf4\x15\x64\x50\xca\x0d\xc5\xfd\x55\x00\x98\xab\x35\x81\x28\x17\x19\x96\x27\x3d\x47\x42\x13\xc4\x5e\x8b\xaf\xbd\x1c\x0a\x53\x03\x9e\x64\x45\xca\xe0\x77\x12\x2f\x26\x5e\x8e\x6b\xf8\x7d\x36\x45\x38\x2f\xd3\xc9\x8d\x93\x44\x99\x00\xae\x8c\x49\x6e\xb2\x43\x85\x96\x80\xc5\x60\xf6\x02\xd1\x42\x55\xeb\x33\xf2\x96\x5f\x95\xc7\x30\x41\x9e\x3f\x1a\xd1\xfc\x17\xb2\x80\x34\xd7\x3f\xf0\xe9\xfe\x19\x10\x87\x98\x9f\x4f\xd9\xd0\x47\x10\xe0\xd1\x7c\x8e\x20\x2d\x91\xb8\x84\xb9\x4f\xd1\x98\xa2\x64\x9a\xab\x27\x6e\xb1\x12\xe6\x11\xa0\xed\x61\xcb\xdc\xf2\x87\x68\x95\x61\x4a\x00\x81\x4a\xf1\xcd\x71\x0b\x53\x07\x1e\x47\x74\x26\x3b\x70\x8b\xe4\xc1\x3d\x09\xd8\xc3\x08\x76\xfe\xdb\xe5\x3f\xc2\xf1\xbb\xfd\xef\xba\x06\x83\x3d\x03\x6e\x1c\x59\x7d\xef\x21\x47\x36\x25\x8b\xa4\xe8\x7b\xaf\xc8\x34\xdc\x07\x85\xba\xd3\x69\x46\xb7\xac\xd2\xdc\x28\x5a\xca\xc7\x4c\x47\xb2\x91\x7d\xa8\x66\xcb\x04\xc8\x81\x25\x20\x79\x2b\x65\xf6\x1a\x36\xfa\x56\xe3\x94\x3b\x93\xe0\x83\xa0\x3d\xfa\xe1\xfc\xe0\xaf\xd3\x17\xaf\x1a\x68\xaf\x3a\x34\x25\x17\x91\xd8\x54\x64\xa8\x8c\x05\x55\x6d\xe8\xc0\x4e\xa7\xd5\x0d\x76\xd5\x03\xaa\x57\x6b\x5d\x10\xfd\xda\xdd\x5e\x9b\x82\xf0\xaa\x23\xfb\x9b\xfa\xe8\x92\x70\xad\xa8\x3f\x7b\xea\xd9\x33\xe0\x2e\xea\x92\x1f\xba\xc4\x87\xf2\xcd\xa9\xf2\xd2\x17\x6b\xc5\x56\x9e\x35\xa1\x41\x65\x3c\xa1\x2e\x71\xca\xce\x3c\xda\x06\x21\xb8\x19\x37\x69\xd9\xcc\xd3\xa0\x1c\x83\x73\x56\x24\x84\x94\xeb\x49\x8c\x65\xcd\xaf\x54\x1b\x37\x12\xa1\x21\x0e\x50\xdc\x94\x3c\xba\xf5\x54\x8c\x2a\xae\xf2\x50\x18\x5d\xbb\xaa\xef\xa5\xd8\xbc\x6f\x0d\xea\xbe\x35\xa8\xfb\x63\x34\xa8\xdb\xce\x1d\x0f\xeb\xef\xf8\x80\x7c\xb9\x7a\x3c\xf9\xc7\x60\xed\x3b\xbe\xe6\x4a\x2f\x44\x3b\x5e\x45\x6c\xda\x33\x59\x80\x5b\xca\x02\x56\xbf\xaa\x74\x68\xd7\x31\x3e\xdb\x4a\xe1\x94\x84\x83\x12\xd7\xef\x74\xc9\xa5\xd7\x50\xd5\x1d\x67\x35\xfb\xa9\x9b\xb1\x39\xb8\x4e\x5f\x03\xf9\xe4\xdc\xb6\x45\x54\x8c\x18\xd1\x39\xa2\x33\x88\x55\x87\xe1\x92\x8d\x34\x87\xc3\xf6\x76\x52\xcb\x95\x59\x6b\x43\xac\x4b\xf2\x68\x8d\x71\xdd\x21\xa5\x13\xc6\xd1\x17\x14\x2c\x58\x8b\x2e\x84\x79\x8c\x2b\x91\x42\x45\x4e\x64\xd9\xe4\xf2\xcd\x5c\x51\xc7\xb6\xdb\x52\x81\xee\xdb\x47\xf0\xf6\x04\x03\x6b\xdd\x71\x52\x2b\x19\xc0\x6e\x59\x1d\x3a\x54\xc5\x3d\xa2\xc8\xb9\x26\x0b\x27\x59\x50\xf4\xd2\x05\x19\xe2\x86\xbb\x03\x90\xd2\x34\xff\x90\x59\x06\xc4\x0e\x9a\xb6\x84\xa2\x59\xc5\xe4\x10\xbb\x03\x7f\x05\x14\x75\x74\x78\x47\xdb\x10\x70\x28\xab\xed\xe6\xba\x4c\xe5\xc8\x43\x37\xe7\x52\x4d\xc6\x32\x7b\x99\xef\xaf\xf4\x7a\xca\x26\x37\x79\x87\x66\x77\xb8\xb8\xb2\xe5\x05\x6e\x5a\xf9\x46\xe8\x74\xff\x0c\xf0\x5b\x5a\xde\xe9\x03\xbf\xd4\x29\xca\x80\x05\xb0\xb2\x89\x29\x1d\xcd\x05\xb8\xfc\x6b\x6e\xd5\xfb\x25\x4b\x09\x69\x23\xbd\xf1\x2f\xb9\x9c\x96\xa0\xb0\x37\x87\x6c\xda\x8b\xa3\xe4\x81\x28\xab\x27\xef\x5e\x2f\xc8\x2f\xcf\xfe\x8f\xfd\x22\xe3\xc0\xca\x26\x3a\xe7\x5c\xca\x3b\x0a\x43\xd5\x9e\xb4\x7c\x9b\x59\x15\x26\x75\xee\x11\x0c\xa6\x15\x09\x63\xd5\xde\xa7\x3a\x85\xa2\x56\x97\x75\x4b\xdd\x49\xd2\xcb\x54\xb1\x2e\xbd\x8c\x33\xe0\x0e\xdd\xd4\x63\xf4\x1e\x8a\xc0\xe4\x0e\x2d\xf6\x4b\x35\x73\x33\xa5\x5c\x22\xac\x97\x4e\x55\x53\x64\xcf\x96\x25\x5f\xaa\x2d\x36\x30\xaa\x36\xdb\xab\x5c\xda\xaa\x4c\xa5\xea\x6a\x40\xe6\xd7\x3d\x6d\xa2\xb2\x7a\x51\xcf\xe4\x1d\x20\x67\x70\xd3\x9d\x3e\xab\xad\xb5\x55\xe6\xc4\x07\x96\xda\x87\x55\x99\xfa\x75\xbb\x17\x8d\xb3\x38\x76\xf7\x3d\x67\x02\x01\x89\x5b\x26\x96\xe4\x6b\x17\x98\xfb\x32\x4f\x07\xaa\xd9\x8f\x9a\xba\x06\xb9\x9a\x32\x24\x66\xd1\x5c\x61\xf3\x4c\xa0\xad\x3e\xbc\x5f\xfe\xa7\xd7\x52\x18\x73\xcd\xd2\x67\x6d\xca\x1e\x94\x7d\xa3\x06\x3e\x3b\x10\x53\xfb\xaa\x4d\xc5\xfd\x7b\xab\xe2\x30\xdf\x13\xca\x36\xdf\x43\x52\x55\xa8\xee\x6e\xf6\x8f\x50\x76\xb7\x7b\x27\xa3\x58\x23\x3c\x71\x08\x76\x86\xf9\x9d\x2c\x60\xf6\x6e\x76\x93\x04\x30\xe6\xcc\xf2\xdb\x76\xae\xb5\x9d\x1c\x7d\x0e\x5f\x76\x69\x33\x0b\x88\xbd\x93\xdd\xcc\xdd\x7a\x6b\x6f\xa2\x18\xe4\xfe\x36\x11\xb2\xe9\xbd\xf2\x53\x89\xc3\x5b\xd9\xaf\x8a\x5b\xb4\x69\x80\x41\x36\xc2\xf6\x1c\x41\x35\x72\xec\xfd\x9a\x47\x25\x60\x0c\x51\x0c\x63\x95\x4f\xfa\x30\xc4\xeb\x8f\xff\xf9\xe2\x10\xff\xf6\x1b\xb6\x8b\xd7\x1a\xe4\x13\x95\x01\x5b\xe3\x98\x2c\xe4\xd9\x8a\x06\x74\x35\xbd\x14\x0c\xe1\xd7\x78\xed\x73\x61\xc2\x54\x99\xb7\xfe\xf0\x1c\xb8\x2a\x2e\x67\xaf\x80\x5b\x3b\x1c\x0d\x92\x73\x81\xf1\xb4\xe8\x04\xf1\x44\xa4\xf0\xb5\x69\x5e\x31\x78\xcc\x05\x57\xab\x43\xc5\x42\x1a\x6e\xd6\xc4\x0f\x94\x97\x5e\x58\x5b\x56\x85\xb0\x39\x6b\xb7\xb9\xc5\x46\x4e\xd6\xcf\xd5\xd3\x7e\x51\x09\xae\xe3\xe6\x60\xa8\x16\x96\xb3\xda\xf3\xba\x6e\xa2\x0b\xaf\x92\x6e\xd5\xe6\x6b\x74\x92\x0f\x68\xc2\xa5\x0d\x8a\x42\xe7\x32\x82\x66\x35\xad\xc5\x7c\x8e\xa8\x48\xcc\x28\xe7\x9e\xa6\x4c\xb1\x81\xdd\xdd\x06\x5c\x01\x9c\x47\x2c\x4b\xf1\x5e\x0b\xb0\x7c\x95\xe2\x66\xbe\xdd\xda\x36\x35\xa8\x36\x5a\x6d\x21\xe2\xb0\x9a\x25\xde\x3f\xa7\xd6\xee\x86\x9e\xe8\xd0\x91\x3c\x0c\x4e\xfd\x8c\xbd\xd9\xff\xeb\x5f\x0f\xec\x0d\xa6\x6a\xd8\xf1\x86\x69\xce\x55\x9d\x23\xa6\x08\xc6\x6c\x7a\xcc\x11\xe4\x02\x57\x20\x4a\x50\x9b\xaa\x6f\xd3\xa1\x6a\x6f\x58\x51\xc0\xbf\x7a\x96\x6a\xff\x6d\xad\x18\xb7\x81\x10\x57\x7d\x66\xcb\x65\x19\x4c\x29\xcb\x11\xa0\x27\x39\x20\x5a\x24\xb5\x57\x96\xe3\x2e\x4b\x7d\xef\x48\x0a\x9c\x2e\x1a\x9f\x87\x40\xd2\x70\x93\x9b\x7a\xa3\x1e\x33\x85\x5d\x22\x0b\xed\xc2\xb0\x52\xdc\x37\xda\xb8\x2b\xda\x38\x8a\xe3\x56\xc4\x91\x6b\x48\x92\x47\x6b\xd6\x18\xa6\x7c\x1b\xad\x49\x45\xdf\x76\x78\x4b\x3b\x6c\xdf\xb1\xf4\xf8\x19\x80\xec\x99\x1b\x5c\xbe\x02\x4c\x90\xef\x9d\x5e\x3a\x8a\x2c\x1b\x4a\x20\xd6\xab\x7e\x8b\x12\x08\x30\xd0\x53\x2a\x4c\x20\x76\xa2\xa2\xfc\xc0\x3e\x60\xa3\x7d\x80\x47\xfb\x3a\xcd\x38\xab\x15\x66\xc9\xfa\xa2\xfe\x52\x3d\x46\xfb\x27\x62\x0b\x54\x22\x72\x40\x23\x16\x05\x1c\x3f\xe8\xbb\xd1\x60\xe7\x9c\x22\x78\xb1\x23\x7e\xb9\x82\x14\x47\x78\xe2\x0e\x59\xe1\x87\x39\x4c\x12\xf1\x03\xfe\x6e\x34\x10\x7d\x3b\x77\xf7\xe5\x68\xb2\x8b\xed\x50\x46\x32\x2c\x05\xc6\x86\xd9\x0c\x40\xee\xfd\xd0\x1d\xc3\x28\x56\x9d\x41\x17\x98\x0d\xd1\x6a\x27\x7d\x99\x15\x5e\xd6\x40\xa4\xef\x8a\x7e\x36\xe9\xb7\x72\x00\x66\x0c\x80\x0b\x03\x68\x60\xd3\x01\xd2\x2f\xe4\xbb\x78\xb5\xa3\x44\xad\xc2\x8b\x52\x4e\x11\xde\xb2\xb5\xa5\x44\x86\xb0\x70\xb6\xda\xbb\x96\xde\x87\x90\xf8\x9f\xcf\xa7\x93\x27\xe8\x5d\x45\xd8\x07\x9c\x47\x6e\xe6\x67\x4f\x1d\xe9\x20\x75\x9e\x67\x61\x0f\xc0\x8d\x54\xe5\xc8\xac\x19\xbc\x52\xb6\xed\x5f\xbd\x23\x2c\x1a\x47\x01\x54\xd1\x80\xe5\x54\x39\x51\x4a\x4b\xf6\x8f\x6a\x28\x70\x0f\x17\x8c\x8c\xa3\x98\x03\xf6\x83\x52\x82\xed\x9d\x3b\xcc\xde\xf4\x59\xcd\xfb\x83\x14\xbe\x33\xbd\x0a\x15\xfe\x71\x20\x5a\x15\xc9\xb1\xd5\x93\xba\x53\xbe\x68\x43\x44\xd3\xa2\xf9\xad\x12\xc1\x3a\xd6\x97\x6f\xd1\x07\x20\x57\xb6\xb5\x58\x38\xb2\xbe\x3b\x4f\x76\x51\xa8\xbe\x04\x46\x63\x82\x36\xb7\x9c\xd5\x5d\x28\xf6\x0c\x9b\x3b\x2b\xc2\x75\x1a\xdb\x6f\x0a\x58\x1d\xf3\xc5\xde\x42\x24\x3a\xba\xf5\xd6\x81\x84\x41\xca\x92\x1e\x67\x02\xfc\x24\x85\x8b\x79\xcc\xdf\x47\x4e\xba\x8d\xce\x98\x2c\x70\x68\x38\x45\x4b\xfd\xd3\x3a\x58\x13\xdc\xfa\xbe\x75\x7a\x4a\xd1\x67\xce\x22\x41\xcb\xff\x8e\xb0\x01\x1d\x8c\x29\x82\xe1\xb5\x7a\x45\x34\xc4\x11\x5d\x21\xa5\xed\xa6\xf7\x4a\xd4\x9d\x17\x08\x71\xe6\x30\xa2\xa5\xe6\x75\x61\x34\x1e\x23\x8a\x30\x73\xa4\x87\x56\x3e\x4a\xc6\xce\x89\x3c\x68\x09\x70\x08\x75\x64\x1e\xa3\xc3\xa6\x06\x62\x12\x87\x11\x07\x85\x11\x73\xa0\x82\x38\xc2\x93\xec\xe7\xf5\x1a\xe0\xd5\x22\x48\x84\xf0\xed\x56\xa1\xe5\xe3\x14\x51\x24\xfa\x36\x72\x78\x04\x3d\x24\xf0\x92\xc3\x24\x1a\x07\x15\x00\xab\x48\x25\xcd\x6f\x71\x26\x5b\x6c\x71\xf3\x2d\x75\xdd\x07\xa5\xf1\xcb\x52\xcd\x3e\x70\x87\x05\x23\xfb\x3a\x9d\xfc\xea\xa3\x82\x4c\x50\xcb\x22\x61\x63\xcc\x73\xc9\xa0\x63\x26\x92\xb6\x67\x3c\xb2\x41\x70\x15\xff\x28\xc6\xdd\x6f\x50\x31\xb1\x50\x27\xb1\x54\x16\x51\x5d\x36\x49\x8b\x08\x31\x51\x68\x45\x9f\x99\x8c\x59\xe8\xea\x86\xa5\x64\xe8\xe6\x36\x54\xef\x4e\xde\x1f\x1d\xbf\x3e\xe9\xd6\x8a\xaa\x3b\x5e\xdc\xbd\x7f\xdf\xfb\xf7\x3d\xac\x8b\x1c\x25\x35\x0d\xae\xe5\x22\xdf\x65\xcf\x35\xac\xb1\xc1\x89\x53\x6a\xc2\xb8\x5e\xab\x47\x0e\x42\xb9\xb5\x8a\xc1\xf4\xcb\x77\x4e\xa9\xdd\x63\xb1\x0b\x9a\x5a\x98\xfe\xc6\xaa\x02\x3a\xf6\xb8\x0d\xe3\xa6\x9a\x50\xb2\x98\xdb\x9d\x80\x75\xc0\x54\xf5\x9b\x53\xcf\x4f\x0f\x4a\xed\x70\x53\x3b\x7d\x5d\xff\xcf\xfa\xe6\x95\x2f\x74\xcf\xca\x34\xb3\xdd\xf0\x94\x18\xfb\x0c\x52\xae\x23\x67\x4d\xbb\xf3\x18\xcd\x26\x4d\x4a\xa8\x6e\x9e\x57\x63\xbf\x96\x43\xeb\x2b\xa8\x6e\x61\xd6\xb4\xfc\x9e\x0c\x10\x96\x75\x67\xd3\x14\xfd\xac\x0e\x82\xbc\xcd\x7e\xe2\x78\xb7\x27\xec\x17\x2a\x80\x9e\x2f\xa2\x38\x3c\x59\x4c\x26\xfc\x32\x15\x22\xc9\x0f\x22\xf9\x5c\x4c\xf0\x8f\x69\x5a\x1c\x54\x4d\x58\xac\x0e\x7a\x90\x4a\xad\x22\x4e\x4c\x46\xdd\x89\xaf\x4d\x14\x02\xf7\xe3\xf5\x1c\x39\xea\x49\x07\xab\xa7\xea\x8f\x22\xba\x7a\x2b\xb7\xd4\xfd\x94\x20\x07\xea\x7e\xd9\x0a\x71\x4e\x00\xe3\x18\x85\xce\x7f\xff\x69\xb9\x64\x88\xce\x56\xab\xff\xfe\x53\x33\x2b\x8b\x92\x4f\x38\xfa\x55\xb6\xca\x94\xdd\x2d\x35\xec\xad\x3a\x75\x71\x4a\xd1\xdc\xe5\xac\xb0\xc4\x2d\xbc\xdd\x3e\xce\x39\x73\xfc\xec\x83\xd3\xac\x8b\xd4\xbf\x77\xed\x35\x6c\xfe\xf7\xef\x8e\x77\x14\xa7\xf8\x4d\xfc\xb5\x9b\xfc\x16\x29\x58\x5d\xea\x26\xa4\x2d\xba\xf2\x02\xdb\xc0\x96\x6b\x78\xdf\xe2\xeb\x2f\x1c\xc3\x72\xdb\xc5\x13\x29\xf3\x71\x89\xd2\x14\xf0\x14\x39\x08\xb1\x50\x09\x91\xf8\x3a\xa5\x38\x91\xf9\xdb\xc4\x89\x5a\x77\x62\x5c\xfb\x0a\xbc\x75\xae\x77\x72\x5b\x3c\xcf\xe8\x94\xf6\xd5\x73\x3d\xac\x24\x05\x2b\xd3\x3b\x49\x59\x5e\x2a\x7b\x6c\xc6\xf4\x52\xcc\x6d\x87\xed\xa5\xc0\x6f\xc0\xf5\x4e\x36\xe0\x79\x27\x1b\x70\xbc\x17\x5b\x62\x78\x8a\xdd\xa5\x98\xdd\x0a\xc3\xcb\xd8\xdd\x8b\x5b\xe1\x76\x2f\xb6\xc8\xec\x52\xd2\x2c\xb0\xbb\x77\x39\x92\xed\xc4\xf0\x5a\xb6\xfe\xad\x0a\xc6\x72\xb6\x29\x38\x1a\xd6\x81\xbb\x96\x1e\x8d\xa9\x6f\x45\x84\x34\x0d\x1f\xbf\x7b\x39\xb2\x84\xcc\xdf\xa9\x30\x59\x5e\xe7\xb6\x86\x58\x83\xc9\x3e\xff\x5a\xa4\xca\xe7\xb7\xc2\x66\x9f\x7f\x93\x29\x6f\x83\x17\x6e\x5f\xb0\x34\x39\xe1\xef\x5f\xba\x2c\xe0\x72\x4b\x22\xe6\x78\x21\x8a\xb6\x3e\x40\x49\xb3\xb8\xde\xed\x0c\xb0\x06\x3b\x7c\xb6\x6d\x76\xb8\x5d\xa9\xd3\x64\x88\xcf\x6e\x85\x21\x3e\x5b\x87\x21\xfe\x24\xfc\x35\x48\x94\x06\x56\xbb\x00\x44\x6e\xeb\x0c\x5e\x3b\xc1\x94\x10\x4e\x7e\xf8\xda\x20\x60\xce\x3b\xaf\xa6\x51\x30\x15\x8f\xc9\x62\x03\xa2\x49\xeb\xdd\x4a\xa1\x75\xdf\x57\x5b\x44\x29\x0c\x23\x92\x9a\x45\x73\x6c\xb3\x81\x47\x1e\xa9\xaa\x2f\x76\xe6\x58\x97\x61\xc9\x4f\x02\xa5\xf0\xda\x95\xfd\x88\xc8\x95\xf0\x98\xe0\x96\x21\x83\xa5\x95\xe5\x39\x7f\x77\x8e\x5c\x15\x88\xfb\xb4\x3e\x10\xb7\x62\x78\x51\xd0\x2e\x87\x69\x95\x1c\x7f\x94\x56\xc9\xe1\x58\x56\x89\x8d\xc6\x3c\x12\xf9\x53\x14\x5c\x48\x8b\xf7\xf3\xaa\x98\x69\xbd\x11\xd9\x06\x94\xa0\x4d\xc7\x31\x0a\x2a\xc8\xba\x5e\xca\x75\xde\x9a\x1d\x59\x2b\x7b\x09\xa2\x71\x2b\xda\x20\xb7\x25\xf0\xa7\x15\x14\xde\x40\xc7\x6d\xee\x79\xd1\x7e\xac\xd5\x2d\x2f\xaa\x1e\xd7\x90\x71\xf5\x1d\x5f\x7f\xbf\xeb\x71\x1d\x4f\x56\x9b\x84\xb1\xdf\xa8\x3d\x56\x52\x4e\x0e\xce\x12\xf9\x18\x0b\xcb\x2f\x48\x0d\x32\xcf\x5d\xf3\xd5\xb0\x6d\x93\x40\xcc\xfe\x6f\xed\x79\x55\xfe\x5b\x4b\xbe\x53\x65\x59\xb0\xdc\x63\xc5\x2a\x77\x05\x4f\x52\x56\x70\x23\x87\xbb\x28\x51\x85\x68\x4c\xe7\x72\xce\xdf\x64\x59\x67\x16\x7d\xa2\xc5\x69\x78\x59\x29\xc9\x55\x83\xd7\xbe\xde\x9e\x2a\x7b\x71\x56\xe5\xea\x6b\xe7\x38\x33\x8f\x32\x12\xcd\xa9\x6a\x2b\x5a\x95\x44\x0c\x5d\x93\x44\x8e\x1d\x25\xc7\xba\xa1\x60\x87\x38\x72\x4c\x58\xcf\x88\x1f\x96\xae\x46\x9d\xf0\x22\x9b\x9b\xbb\x10\x13\x7c\x3d\x93\xf5\x0c\x3b\x39\xf5\x9f\x14\x6a\xce\xa5\xc5\x48\xa4\x94\x9c\x16\x0a\x01\xa7\xb9\xd2\x15\xe2\x8f\x2b\x88\x55\x6f\x80\x18\x31\x24\x63\x37\xd2\x40\x90\x97\x4d\xd1\x37\x39\x18\xea\x5c\xea\x30\xe5\xde\x6d\xb2\x07\x0b\xb4\x63\x2b\xb2\x27\x38\x9f\x04\xda\x55\x3f\x35\xd2\xc1\x81\xa5\x58\xe3\x61\xe5\xb9\x7f\x92\xe3\x00\x7a\x2a\x93\x47\xbe\x4a\xa7\xaf\xe2\x74\xc5\x5b\xe0\x49\x85\x8c\xd6\x02\x83\x6a\x53\x3b\x60\xf0\x09\x50\x50\x17\x6b\x15\xe5\xc9\x02\xb8\x3f\x64\x01\x72\x3f\xa4\xa5\x66\x04\x36\x1e\xa7\x38\x38\x48\xff\x3a\x4c\xb3\x9e\xda\xac\xf8\x00\x1c\x82\xc7\xd6\x55\xd7\xc6\x73\x74\x09\x1d\xb1\xdc\xab\x56\xde\x6a\xf9\xb2\x23\x0c\xa5\xba\xe4\x1b\xc7\xe2\x96\x03\x2a\xb7\x19\x8a\x4b\xb0\x24\x80\x52\x0d\x5b\x1d\xd9\x50\xd5\xee\x57\xf3\xde\x35\x5e\x94\xbf\x17\xba\x48\xa5\x65\x70\x72\x61\x2a\xf6\xa6\x4a\xa2\x7d\x53\x7f\x81\xa3\x5f\x7f\xbc\xf6\xa4\x9e\xe4\xf7\x19\x91\x85\xc6\xfc\xba\x8e\x62\x22\x5d\x0f\xa3\x80\xf5\xe6\x94\x7c\xb9\x96\x61\x9e\xd3\xde\x04\x32\x74\xc5\xe5\x6f\x97\xeb\xc8\x42\xcb\xc1\x93\xf4\xdb\xb3\x7e\x84\x83\x78\x11\xa2\xc4\x43\xfd\xbf\x45\x38\xf4\x57\xbe\xdf\x4f\x08\x65\x5e\xa1\x60\x5f\x5a\x5e\x98\xc3\xd4\x17\x49\xe3\x88\xa3\x1f\x52\xe4\x31\xf1\xa5\xa8\xd8\x4c\x47\x1e\x1e\x9d\x2e\xe5\x1e\xfc\xbb\xbb\xca\x8a\xed\xf8\x7e\xda\xf2\x4c\x5a\x0c\x50\x3f\x73\x30\xfb\x3b\xf4\xe6\x86\xbf\x49\x47\xf2\x5d\xf3\xc7\xdc\x20\xaa\x1a\x1a\x2e\x0d\x56\xb0\x2d\xfa\x3b\x50\x8e\x08\xd3\x11\x0b\x4f\xe4\x86\xcd\xea\xec\x18\x2d\x3a\xc4\x06\x2f\xb5\xd5\x74\x88\x41\x06\xd3\x90\x82\xc2\x70\x43\x28\xda\x4e\x99\x51\x3a\x75\x5b\x9c\xed\xe9\x1d\x63\xfb\xa4\x1a\xd7\x27\xdd\x31\x7d\xd2\x80\xe7\x93\xb6\x58\x56\x76\x98\x0c\xc9\x27\x05\x14\x9f\xe4\x10\xac\x6c\x44\xc3\x0a\xb4\x51\x24\x44\x61\x6f\x4f\x9b\x86\xf6\x26\x80\xf9\x2b\xa0\xad\x3f\xd6\xf7\x76\x51\x61\xa9\xcc\xde\x47\x4c\xed\x24\xa0\x00\x8e\x74\x07\xbc\xac\x3b\x98\xd1\x16\xcc\x08\xa0\x18\x8a\x2f\x8a\xf6\xef\xa1\xf9\xd8\x89\xe5\xa1\x13\x77\x68\x94\x99\xd4\x45\x2d\x3d\x3c\xa2\x23\xa8\xda\x56\x89\x9a\x90\x59\x0b\x35\xf5\xb5\x32\xcb\xf9\x3e\x50\x5f\x8c\x30\xd8\x1f\x8d\x74\x43\x43\x49\xd1\x8a\x9d\x64\x0b\xc6\xbe\x2e\x76\xa8\xd3\x0b\xd4\xa6\xe2\x15\xe8\xb8\xb2\x62\xdd\xaa\x24\x8b\xce\xa3\x29\x49\xe4\xa1\x49\x8f\x84\xef\x9b\x09\x0a\xf5\xe8\x29\xce\x83\xd3\x00\xb9\xc2\x34\xea\x07\x73\x96\x55\xe1\x65\xb9\x44\x40\xfd\x15\xeb\x4f\x21\x0e\x63\xd9\x10\xce\x52\x90\x7c\x8d\xac\x81\x87\x53\x63\xeb\x7c\xf6\x3a\xf9\xe9\x39\xfc\x64\xcf\x1a\xb8\xa2\x11\x13\xea\xa3\x92\xcf\x75\xc9\x70\xfd\x6f\x1a\x91\x9f\xda\x2f\x8c\x2c\x82\x04\x61\xfe\xc5\x05\xba\x9e\x53\x94\x24\xc7\x52\xd5\xc9\xde\xa9\x2e\x28\x60\x76\x79\x11\xc1\x93\x1a\x0e\x1d\x3c\x19\xe1\x0b\x33\x6b\x40\xdf\xee\x75\xd1\xa5\x66\x83\xed\x62\xb4\x69\xba\x31\x7b\x59\x67\xee\x5c\xf6\x40\xbd\x76\x96\x49\xc4\xdb\x09\xf7\x0f\x88\xcc\xbf\x68\x6f\xfb\xdd\xb0\x99\x71\x31\x90\x97\xc1\xf3\x45\x0c\x69\x2f\x20\xb1\xe8\xe5\x22\xd7\x5d\xa8\xec\x5d\xa6\x68\x57\x76\x14\xff\x41\x55\x51\x53\xde\x81\xac\xa6\x5a\x9b\x5c\xbb\x06\xd4\x54\x97\xef\xae\xd1\x9e\xd8\x74\xed\x38\xcd\xf2\xab\xff\xff\xff\xdf\x5a\xaf\x75\x73\xf0\x97\xdf\x7f\x4f\x51\x80\x42\x84\xab\xa1\x6e\x55\x57\xa6\x15\x92\x29\xb9\xea\x8a\xe1\xd0\x5a\x7a\x27\x2b\x69\xd1\x68\x9d\x85\x39\xc3\xc8\x94\xa2\xb1\x3a\x77\xfc\xcf\x1e\x23\x96\x9a\xa9\x94\x2c\x58\x16\xf5\x1a\x06\xfd\x2c\x21\x42\xb4\xa6\x30\x7c\x30\x42\x6b\x93\xd6\x85\x1a\x43\xb5\xc5\xec\xca\x5f\x2b\x84\xd7\xae\xe9\x51\x31\xfd\xca\x8e\xf7\xef\x9b\x7a\x52\x5c\xb3\xee\x5e\x01\xc4\x75\x3d\x29\x36\xef\x48\xd1\x33\x90\x71\x56\xc9\x40\x7b\x45\xd3\x9a\x01\x8e\xf4\xa0\x66\x5c\xbe\x50\xea\xd7\xb0\xc1\xb7\x7e\xbb\xa5\x3d\xbe\x9d\x6d\xba\x91\x94\x8b\x46\x66\x49\x60\x3d\x37\xc5\x7b\x6a\x8a\x6f\x70\x0a\xd7\xa5\xd3\x0c\xca\xa3\x35\xae\xb2\xe3\x3a\xcc\x56\x21\x79\x3e\xb4\x96\x1f\xbb\xf1\xc4\xd8\x42\x8a\x1e\xe2\xb1\xb1\xc0\x79\xef\x67\xa7\x1c\x82\xd0\xf9\x00\x35\x0e\x71\xb7\xa7\x28\x57\xe3\xd2\xbc\xc5\x9a\xce\x4b\xb6\x51\xe6\xed\x57\x55\xca\xac\x1e\xb6\xed\xdd\x8e\xca\x84\xd3\xc9\x20\x3c\x27\x73\x72\x89\x68\x6f\x86\xf0\x22\x1d\x11\x7d\x99\x43\x1c\xaa\x6e\x84\x46\x72\xeb\x05\xba\x3e\x27\x90\x86\x47\xc2\x99\x9c\xca\xb4\x96\xb3\xf6\x34\x35\x45\x3e\x36\xbd\x80\x1c\xf1\x1a\x49\xcd\x51\x08\x4f\xec\x83\xc8\xf7\x3b\xd9\x58\xeb\xb0\xc6\x68\x34\x99\xb4\x97\xdc\x1c\xe7\x67\x42\x91\x65\xa2\x56\xbb\xd8\x12\x26\xb1\x1b\xad\x01\xca\x3c\x91\x91\xcd\xa1\x8e\x09\x6e\x24\x6a\x9b\xb4\x93\x8d\xc0\xc1\xd1\x39\xc9\x95\x2d\x9a\xee\x52\x32\x7a\x2d\x1f\xad\xe1\x12\xf5\xbc\xa0\x35\xce\x5a\xf5\xb2\xaa\x1e\xbb\xaa\x71\x8b\x88\x2f\x49\x1d\x5f\x5d\xb0\x2c\x9a\x34\x0a\xad\xd5\xd5\xf1\xd1\x5d\xdc\x1d\x05\x00\x2b\x42\x30\x24\xf9\x35\x2d\xb2\x72\x94\xea\x26\x4b\x69\x11\x85\x16\x83\xb7\x76\xb2\x56\xbc\xd6\xd0\x91\xc9\xfe\xdf\xb1\x04\xd9\x91\x78\x6c\x9c\xa6\x1e\xc9\x39\x70\xe6\x1d\x21\x69\xe5\x05\x4c\x4f\xcf\xcb\x2d\x80\xda\xfe\xa9\xba\x4e\x4f\xb5\x6f\x75\xed\x12\xd7\x38\x60\xab\xfe\x71\xfb\xd5\x2e\xc9\x92\xab\xfb\xd7\x05\x5a\xa0\x9a\x86\x10\x3a\x05\xab\x7d\x20\x5e\x6a\x83\xc9\x7c\x74\xe5\xde\x22\x55\x3d\xea\x3a\x1c\xe9\x2e\x9b\x68\xdb\x90\x4e\x78\x6f\xc1\xd9\x1a\x1a\x52\x6d\x02\x7e\x9b\xa7\xda\xf1\xc0\x75\x2f\x10\x4b\x68\x1f\x78\x0e\x5e\x80\xca\x34\xba\xd6\x52\x5e\xf1\xb1\xc7\xe0\x09\x78\x6a\xa9\xc7\x64\x71\xe2\xe6\x13\xe9\xdb\x2b\x23\xae\x6a\x15\x52\xdf\x2b\x24\xd3\x2e\x1a\xd6\x72\x97\x3e\xd9\x5b\x29\xa5\x6b\xf5\xc9\xae\x6b\x5a\xbf\x88\x70\xf8\x30\x0c\xea\xf0\xb7\xe7\x2f\xfe\xfa\x94\x4b\xf5\x36\x83\xba\x74\xad\xb8\xb1\x34\x60\xab\x7f\x3a\x55\xd6\x05\xee\xdf\x22\x1c\xb6\x2d\xb0\xcb\x22\x16\x23\x1d\xda\xc8\x65\xc6\xc5\x0c\x62\xb3\x82\x99\x6d\xcc\xd6\xe1\x3c\x4f\xc0\xe3\x56\xc5\xb9\x07\x8f\xb9\x6e\x51\x59\x02\xf7\x42\x4c\x6e\xd4\xbd\xbd\x8a\xd8\xf4\x0d\x1e\x13\xd7\x52\xf0\xf6\xb1\x6a\x3b\x25\x7f\x5f\xa3\xf0\x6d\x1e\xa7\xe6\x50\xad\xea\x39\x54\x17\x1a\x57\xe5\xe5\x7a\x73\x88\x51\x45\x17\x87\x6c\x88\xa6\x5c\x31\x9b\xf9\xa5\x20\xf5\x69\xd4\x39\xa9\x03\x7f\xdd\x28\x58\x5d\x92\xb7\xde\x2c\x50\x17\xdf\x56\x17\x80\x5c\x5f\xad\x3c\xd5\xd4\xb8\x38\xac\x70\xa7\x35\xb5\x39\x49\x22\x6d\xa9\x72\x63\x34\xae\x71\x89\x94\x17\xbb\xa1\x27\xa1\xca\xc2\x55\x3e\x34\xc0\x8d\xf0\x84\xeb\x0a\x59\x24\x45\x77\x4b\xd7\x1b\x39\x84\xde\xcb\xc4\x41\x58\xb5\xbf\x93\xdf\x33\x0a\xc7\xe3\x28\x70\xc6\x94\xcc\x74\x96\x4e\xe2\x90\x05\x4b\xa2\x10\x89\xc0\x75\x95\x12\xa1\x33\xcd\x66\x28\x99\x8a\x9e\x7a\xfa\xd9\x08\xd7\x3d\xda\xba\x48\x50\x5b\x9c\x58\x23\x4c\xba\xe3\xe5\x63\x36\x4c\x86\x1b\x11\x3c\xee\xe8\x10\x17\x89\xa9\xd0\x5c\x69\x15\x32\x02\x32\x9b\x2d\xb0\xac\x2b\x25\xca\xcd\x59\x31\xb9\x16\x5e\xac\xd0\xff\xcc\xe7\x2d\x6e\x29\xd7\xce\x45\xc7\x8c\x31\x07\x93\x2f\x21\xdd\xdd\x73\xc4\xae\x10\xc2\x46\x2d\x28\xb5\x90\x10\x32\x18\x88\x84\xac\xa4\x6f\x3d\xdc\xed\x8a\x29\x5a\x4c\x97\xf7\x69\x52\xa9\x35\x0e\x24\x88\x43\xc5\x44\x50\x76\x0b\xcb\xf3\x2d\x9d\x4b\xfe\xdf\xd1\x39\x59\xb0\xd2\x09\x7d\xa0\x07\x26\x03\xd8\x76\x74\x36\xce\xdf\x91\x43\xe7\xe8\xba\x42\xac\x5f\x9b\x22\x2b\xd2\x08\x0d\xa9\x86\x33\xc1\x1e\xc2\x8c\x46\x28\x29\x66\x96\xe4\xd3\x4c\x8a\x14\x00\x5c\x25\x31\xee\x85\xe8\x12\xc5\x5c\x04\xec\xf1\x63\xbe\x57\x78\xb0\x58\x68\x4a\x8f\x67\xdb\xa4\xca\x31\x17\x38\x44\x34\x61\x10\x87\x3d\xcb\x7b\x55\x53\x14\x22\xf5\x2a\xc6\xd6\xcc\xaf\x38\x58\x2b\x09\xae\x02\xe5\x9d\xec\x74\x31\x82\x94\x6b\x06\xf8\xa2\x8d\x29\xbf\x64\xf3\xb4\xda\x0f\x6c\x26\xba\xbc\xcd\xd3\xe8\x96\x56\xca\x27\x7d\xf5\xcb\xf1\xc9\xe7\xb7\xaf\x8f\x3e\xbc\xfb\xfc\xe9\xc3\xdb\x3c\x76\x27\x48\x47\xae\x1f\x1a\xa1\x1b\xf5\xc2\xaf\x04\x49\xe4\x1e\x62\x42\xe6\x08\x23\xea\x60\x42\xd1\x18\x51\x8a\x68\x66\x3f\xa4\x62\x70\xf7\xf3\x79\x0c\x9b\x91\xe1\x38\x6f\x39\xe2\x9c\xc9\x22\x0a\x51\xd5\xd1\x69\xef\x98\x29\x1f\xb3\xc3\x5c\x3b\x9d\x2d\x1e\x1a\x4e\x6e\xc5\x63\xd2\xf9\x94\x88\x41\x6a\x38\x5d\xf3\x59\x10\x23\xe4\xbe\xbf\x6b\xca\x0f\x49\x90\x3c\x3c\xc2\xaf\x21\xf9\x83\xfb\x26\xf9\x57\x24\x10\x71\xd1\xc2\x46\xbd\x31\xcd\x77\xda\xc0\x0a\x29\xa2\x0c\xc1\x2f\x6c\x8a\xa8\xbe\xd3\x1c\x76\x3d\xb7\x9e\x4e\xeb\xcd\x54\x99\xdc\x52\xbc\xe2\xab\xc9\xf6\x1b\xa1\x1a\x0d\x1e\x6b\x4f\xf7\x2d\x91\x68\x1b\x89\x66\x13\xb6\x6c\x6b\x72\xd6\x4c\x30\x5b\x91\x09\xff\x30\x74\xd3\x88\xad\xdb\x23\x9f\x0a\x59\xfb\x61\x50\xd1\xc6\x6a\xd0\x1f\x86\x82\x6a\x31\x75\x7b\xd4\x63\x51\x2d\x6f\x8b\x72\x9a\x7b\xe2\x9a\x63\xb6\x34\x0d\x74\x08\xae\x69\xca\xfe\x5d\xbf\x50\xf5\x96\x2c\xa5\x9b\xda\x49\x9b\x97\xd3\xe6\xab\x3b\x68\xc0\x95\xb9\x4c\xee\xbf\xeb\xd6\xc5\xe5\x03\x6a\xa4\x00\x7f\xfb\xe7\xfe\x8f\x8f\xff\xfe\x6c\xe3\x46\x0a\x9b\xb5\x42\x50\xce\xdf\xed\xf6\x44\xb8\xb8\x94\x19\x19\x0f\xb9\x25\x42\x0b\x33\x63\x63\x86\x84\x71\x92\x6f\xab\x98\x75\x8e\x5d\x6c\x58\xc7\xda\xb5\x34\xbf\x2d\xa5\xd7\xb7\xf0\x4c\x6d\xb1\x48\xc6\xdf\xd0\xf5\x56\x8b\x63\xfc\x0d\x5d\x3b\x84\x3a\x63\x59\x90\xa2\x7b\x4d\x0c\x41\xaa\x24\x58\x70\x96\x9e\xfd\x5d\x2c\x8b\xf1\x1c\x08\x3f\x51\x8f\xd1\x68\x56\x5e\x9b\x5a\x93\xa4\xc9\x39\xa4\xb2\xc9\x89\xfc\x36\x7f\xc7\xab\x0a\x1c\x30\x0c\x23\x59\x2a\x23\x8b\x63\x51\xa0\xad\x59\x28\x23\x5f\x95\xa3\x84\x94\x0e\xb5\x34\x6c\x11\xc7\x0a\xd7\x1f\x89\x23\x53\x23\x1d\xa8\xc6\x06\x0e\xc2\xa1\x03\x9d\x0b\x74\x2d\x1d\x1f\xea\xdd\x80\x84\xa8\xf8\xf6\x9e\xde\x9d\xb5\xee\x6a\x9b\x7c\xaa\x42\x13\x33\xfb\xf7\xc6\xdb\x24\x7a\x91\x18\x9c\xc7\x90\x80\xf9\xd8\x30\x61\x55\xc3\xa6\x03\xec\x59\x0d\x47\x6d\xdc\xbf\x8d\x91\x72\x96\x07\x4b\xe1\x51\x8c\x4c\x26\x71\x6d\xc4\xa8\xf5\x4c\xb7\x10\xa6\x2b\xeb\xc9\xfc\x4f\x92\x15\x92\xb1\x16\x1c\xe2\xf8\x96\x0f\xdd\x7a\x29\x21\x31\xfa\x39\xf9\x52\x4f\xe1\x8d\x5c\xe5\x98\xd3\xef\x5a\xa1\xea\x8d\x2c\xa8\xc0\x4b\xf7\x55\xf0\x95\xeb\x6e\xca\x59\xff\x2e\x98\xd5\xb6\x8b\x0b\xaa\x51\xab\xcd\x53\xc6\xe6\x76\xd3\xfc\x9e\x48\x36\xd1\x43\x61\xc4\x48\x96\x84\xa9\x78\x2e\x17\x3c\x2e\xd0\xb5\xac\x23\x26\x69\x82\x91\xf3\xf2\xea\xf5\xaa\xd7\x28\x8c\x77\xa9\x96\x86\xdb\x74\xb5\x68\xaf\xce\xf2\xed\x82\x14\xe5\x33\xcf\x8c\x6b\xa6\x65\xc9\x1b\xf3\x84\x69\x48\x37\xbe\x2a\x8c\xd4\x8e\x76\xe8\x5c\xa7\x61\x70\xf5\x31\x68\xcf\xe7\xad\x2d\xe0\xb7\x25\xce\xac\x5b\xd1\xe9\x3d\x15\xe5\x4c\x51\xa9\x60\xd2\xed\x97\x7b\xaa\x86\xfc\xc1\x17\x7b\x5a\xab\x69\xf8\xc3\x2c\xba\xf5\xd5\xee\x42\x89\xef\x6e\xb1\x98\xd5\x05\xba\x6e\x55\xc6\xaa\x85\xfe\xd5\xa5\x88\x95\xfb\x7b\x28\x61\xd5\xb6\x80\x55\x0b\xdc\x75\x29\x5f\xe5\xde\x47\xf1\xaa\xf6\xa5\xab\x3a\x17\xae\x32\xef\x9f\x32\xaa\xef\xb9\x06\x55\xce\x08\xb5\xcd\x40\x67\x84\xb9\xfc\x44\x55\x79\x92\x08\x0b\x1b\x96\x0a\x32\xf3\xdc\x73\x46\xa0\xeb\x03\x2e\x9a\x0d\x77\xf7\x1f\x60\xa5\xaa\xca\xa2\x37\x23\xd6\x9f\x20\xf6\x0a\x32\xe8\xf9\x3b\x8c\x5e\x2f\x4b\x95\x52\x02\xc8\x82\xa9\x47\xe4\xf3\x8d\x25\x72\xa4\xf4\x64\x54\x71\xc1\x5a\xce\x01\x62\x21\x0a\x8f\x7d\x45\xe7\xba\xbc\x4d\xbe\x42\x8c\xa1\xb2\x0f\xa9\x51\x0b\x47\x56\x84\x91\xda\x64\x9f\xab\x82\x46\x01\x22\x3e\x11\xff\x0a\xb8\xae\x2e\x13\xe3\xee\xb9\xbb\xa3\x11\x7d\x49\x87\xae\xeb\xeb\x2f\xad\x13\x0a\x99\xba\x54\x7a\x46\x7c\x0b\x76\x05\xdc\xfc\x6f\xfd\x8a\xee\x48\xcb\xa6\x94\x5c\x39\x64\xb5\x5a\xbb\x9a\xcc\xc5\xe5\x03\x2a\x23\x33\x9b\x9e\x07\x3f\x5f\x3e\x66\x77\x57\x46\x66\x7b\xd5\x63\x52\x43\xeb\xa6\x65\x64\x2e\x2e\x8d\xfa\x31\xa6\xa5\xf5\x77\x5e\x3e\x26\x77\x57\xb5\xae\x1d\xa3\xe8\x77\xb3\xa2\x31\x2d\xd0\xd1\xbe\x64\x8c\x5b\x55\x7c\x45\xf5\xa7\xb0\xca\x69\x2d\x3c\x5f\x2d\x80\x6c\x59\x72\xc5\xad\xaf\x51\x61\x1a\x1e\x0e\x84\xce\xf5\x93\xb2\x2c\x9e\x01\x77\xac\x8d\x8e\xe3\x28\x46\xd6\x7a\xdd\x8e\x63\x91\xdb\xda\x16\x66\xa9\x9e\x38\x0c\xfa\x17\x97\xfd\x74\x7a\xf9\xd1\x9a\x86\x5c\xb4\xc4\x1a\x5a\x30\x8d\x26\x53\xc3\x5e\x68\x31\x20\x66\x03\x34\x58\x0e\xf7\x5a\x95\x41\xb8\xdd\xfd\xee\x50\x44\xc0\xfd\x03\x94\x10\x68\x81\xb1\x8e\x05\x04\x2c\xe5\x03\x3a\xb8\xb3\xef\x32\xce\xbd\x4d\xe1\x00\x6b\x98\xc4\x76\xca\x06\xdc\xf2\xb9\xad\x1e\xfe\xef\x11\xba\x72\xd3\x22\x03\xdb\xa8\x4b\x72\x9b\xd5\x06\x2a\x1d\x6c\x0f\xa3\xd6\x40\x85\xc7\xa1\x53\xa5\x81\x06\xaf\xc5\x66\x75\x06\x5a\xfb\x4e\x2c\x2f\xad\x51\x63\xa0\x75\x85\x81\x26\xc4\xe6\x00\xe9\x56\x5d\xa0\xb5\x51\xe6\xd6\x73\xb0\xd7\xab\x27\x60\x3f\x4c\x6b\x57\x13\xa8\xb0\xc9\xdd\x49\x2d\x81\x27\x0f\xb5\x94\x40\x27\xf2\xeb\x58\x46\xa0\x3d\xcb\x5a\xa3\x88\xc0\x76\x08\xb3\x0d\x5b\x5b\xe7\x2e\xa8\x28\x1c\xd0\xbd\xfa\x7a\xf5\x43\xeb\x55\x0c\xe8\x5e\x2e\x60\xbf\xa5\x41\x6d\xad\x72\x01\x5b\x31\x9a\x3d\xfc\xea\x00\x31\xe1\x17\xc8\xc3\xb0\x94\x44\xbf\xfd\xed\xf2\x7f\xfe\xbe\xff\xab\xdd\x52\xf2\x08\x32\x46\x93\xb2\x4d\x43\x5f\x9d\x36\xeb\x79\x6e\x91\x82\x6c\x0e\xc1\xa0\xc0\x23\xb4\xe3\xf8\x72\x92\xe3\xbc\x5f\x66\xb1\x68\x1a\x37\x65\x6c\x3e\xdc\xdb\xbb\xba\xba\xea\x5f\x1d\xf6\x09\x9d\xec\x1d\xec\xef\xef\xef\x89\xc7\xab\x7e\x14\xef\xee\xb9\xe6\x48\xc3\x2f\xaa\xa2\x41\xf9\x95\xc1\x8b\x17\x2f\xf6\xaa\x7f\xb6\x8c\x78\x15\x85\x5c\x13\x77\x1f\x3f\x9e\x7f\xd1\xdf\x4d\x11\x57\x03\x0b\x5f\x5e\x46\xe8\xea\x47\xc2\x6f\x8f\x7d\x67\xdf\x79\xfc\xd8\x79\xfc\x38\xfd\x09\xd1\x44\xf6\xb4\x1b\xf4\x07\xb6\x8b\x4a\xe1\x65\xd2\xa6\xbf\x4c\x10\xd1\x20\x46\x79\xf9\x8a\x8f\x9c\xde\x58\x1c\x84\x83\x67\xe9\xc7\x6b\xfe\x51\x7f\x4a\xd8\xb5\x10\xc5\x18\x85\x38\x19\x13\x3a\xeb\x11\x1a\x4d\x22\x3c\x74\x0e\x9e\xcd\xbf\x38\x07\xf3\xda\x48\x88\x2e\x10\x0c\x3a\x43\x30\xd8\x32\x04\x05\x1c\x3c\x6e\x8b\x84\xc7\xb7\x87\x85\x36\x30\x0c\xb6\x0d\xc3\x41\x0e\x84\x0c\xa2\x1a\x34\xcc\xbf\x08\x30\x6e\x07\x82\x83\x96\x10\x1c\x6c\x11\x82\xc7\xdd\x91\xf0\x78\xdb\x58\x78\xdc\x1d\x0d\x8f\xb7\x8d\x87\xc3\xc3\x3c\x3d\x36\x83\x70\x78\xc8\xc9\x71\x8b\x27\x62\xd0\x15\x82\xc1\x60\xbb\x10\x14\x71\xb0\xdf\x16\x09\xfb\xb7\x87\x85\x16\x30\x48\x34\x6c\x11\x86\x6c\x52\x79\x26\x06\x2d\xe8\x71\x9f\x9f\x89\xc1\x16\x61\xc8\x81\x90\xed\x4c\x0d\x08\xf3\x2f\x62\x3b\x6e\x09\x0b\xad\x40\xd8\xdf\x36\x0c\xdd\x37\xa2\x61\x1f\x6c\x3a\xc9\x16\x84\x8c\x83\x3c\x5b\x3f\xe8\x7a\x94\x0f\x0e\x36\x3d\xca\xf5\x10\xb4\x38\x46\x12\x84\x8d\x8e\xd1\x41\xcd\xe6\x1d\xb4\xb8\xe1\xf9\xe6\x1d\x6c\x74\xc1\x1f\xd4\x91\x70\x2b\x10\xf6\xb7\x0c\xc3\x8b\x1c\x08\x2f\x9a\x21\x78\x31\xff\xc2\xff\xb7\xad\xf9\x0f\x9f\xe4\x8f\xf1\x93\x16\x4c\xfd\x09\x3f\xc6\x4f\x6e\x0d\x86\x16\x48\x10\x20\x6c\x11\x0b\x2f\x3a\x23\xe1\x45\x03\x0e\xee\x86\x91\x3c\xcf\xc1\xfd\xbc\xc5\x29\x7e\x3e\xff\xe2\x3c\xdf\x1e\xe2\x06\x4f\xbb\x42\x30\x78\xba\x5d\x08\x0a\x38\x38\x7c\xda\x12\x09\x87\x4f\x6f\x0d\x0b\x6d\x60\x10\x68\xd8\x26\x0c\x79\x34\x1c\xb4\xd8\x09\x8e\x85\x83\x2d\xee\x44\x1e\x82\x41\x0b\x24\x70\x08\x06\x5b\xc4\xc1\xe1\xd3\xce\x48\xe0\x5b\xb0\x55\x2c\x14\x60\x68\x83\x06\x01\x43\x1d\x1e\x6e\x89\x99\x3c\xa9\x93\x09\x06\x6d\xd4\x7e\xa1\xea\x6d\x74\x1b\xd6\xc2\x70\xd8\x16\x86\xc3\x2d\xc2\x30\x38\xe8\x2c\x15\x0c\x0e\x36\x96\x0a\xf2\x30\x1c\x76\x87\xe1\x70\xdb\x30\x0c\xf2\xb7\xf2\xa0\xc5\xa5\x38\xe0\xd7\xf2\x60\x23\xc9\xa0\x40\x0f\xf9\x8b\xf9\xa0\x85\x68\x70\xc0\x6f\xe6\x83\x8d\x64\x83\x5a\x18\xda\xe0\x41\xc0\xb0\x4d\x3c\x14\xf6\xa2\x0d\x1e\xc4\x5e\xd4\xe1\xe1\x96\x98\xca\x8b\xba\x03\xdd\x86\x90\x0f\x9a\x08\xb9\x08\xb8\x5b\x4a\x5e\x79\xb1\xd5\xc0\x62\xd3\xfd\x70\xff\xb9\xf6\x1c\x76\x11\x16\xf9\x70\xa2\x47\xff\x2b\xb9\x0a\x93\x7f\xcd\x9f\xda\x7d\x22\xb9\xa0\x51\x5b\x4e\x7d\xeb\x90\xc3\xdc\xd2\xd7\x0f\x3c\x74\xb7\x17\x74\xe8\x56\x85\x1c\x8a\x90\x9a\x9a\xd4\x96\xf2\x1b\x96\x04\x40\xa7\x8d\x7b\xb3\xc5\x6a\x5a\x45\x27\xba\xa5\xd8\xc4\x9a\xb3\x5f\xd1\x56\xca\x71\xf2\x4f\xea\xee\x46\x82\x08\x7b\x22\x14\x77\x3f\xab\xc3\x51\x8c\x1a\x6a\x1b\xc2\x57\x87\xd6\xf5\xa0\xb7\xc0\x39\xa8\x86\xb3\x0d\x4c\x5d\x73\x21\xc0\xc1\x96\xb3\x21\x2c\x6c\xe2\xfe\x79\x97\xea\x9b\xf5\x70\x38\x57\x98\xec\xfd\xf3\xed\xa7\xc3\xbf\xd7\x72\xae\x23\x15\xec\xa9\xff\x72\x81\x7b\x9c\x4b\xe5\xd1\x1f\xeb\x0a\xc0\x6f\x18\xa6\xfd\x04\xb8\x1c\x6b\xcd\x3c\xd2\x40\x71\x9e\x43\x02\xf7\x87\x38\xc2\x17\xf0\x3c\x46\x45\x6e\x59\x5d\x25\x24\x4a\xde\x66\xef\x6c\x25\xba\xbd\x5b\xdd\x6e\x19\xd1\x23\x23\x72\xc2\x23\xd6\x98\x7c\xea\x36\x05\x7a\x89\xa1\x22\x3c\x49\xd9\x93\x9c\xc1\xd2\x3e\xae\xdf\xef\x1b\xab\x5a\x37\xd1\xd2\x6d\x1d\x85\xed\x86\x41\xda\xd7\x58\x44\x69\x16\x81\x2b\xc7\x67\xda\x61\x6f\x9b\x42\xbc\x8d\x9b\x25\x44\x0c\x46\x71\x63\x1c\xb4\x5b\x2a\xbc\x5f\xe6\xce\x6e\x55\x65\xfd\x57\x28\x09\x68\x34\xaf\x6e\xbd\xea\xb6\x2a\x54\x9f\xdf\xf0\xdc\xa0\x55\x57\x50\x95\x84\x5c\x53\x41\x32\x5f\xb6\xec\xe8\xf8\xed\xc9\xe7\xd7\xef\x8e\x7e\x7c\xfb\xfa\x55\xdb\xb2\x6d\x6e\x9a\x3a\xca\x8f\x33\x23\x17\x08\xf7\xe8\x22\x46\x09\x62\xf2\x54\xeb\x4d\xd0\x91\xa9\xd9\x3d\xd5\x90\x5a\x5f\x4c\xf9\xde\x7c\xfb\x5b\x86\xc1\xf3\x67\x9f\x9a\xf9\x8b\x7c\x98\x33\xf1\x67\xb3\x4c\xf2\x14\x18\x65\x7f\xe5\xfc\xe2\xfc\xe8\xa0\xf8\x35\x4e\xd0\x56\x72\x68\x65\x5c\x5e\xab\x18\xf2\xd7\x61\xc4\xb6\x11\xb3\x96\x13\x11\xaa\x6b\x08\xe6\xd9\x82\xbd\xff\x64\x53\x6a\x78\x0e\xeb\xb9\x7b\xc6\x08\x1c\x95\x18\xd1\xe1\x9c\x67\x75\x31\x9c\x85\x54\xa9\x92\x70\x75\xe7\x7b\x62\x89\x2c\xde\x5e\x8f\xc9\x5c\xa6\x6f\xeb\x0c\x8a\xa7\xc0\x48\xf6\xcd\xe1\x3c\x0d\xd4\x6e\x7b\x70\x5a\x43\xda\xad\x21\x77\x16\x98\x1d\xda\x03\xb3\xb7\xdb\x8d\xe0\x9c\x84\xd7\x9d\xb3\x34\xda\x05\x79\xb7\x0a\xee\xe6\x80\x08\x7e\x62\x0b\xf1\xb6\xdf\x45\xb7\x81\x86\xb4\x1e\x5d\x17\x4c\x3c\x35\x33\x7b\x6a\xc9\xe6\x55\x7a\x28\x5b\x83\xdc\x2e\x99\xbe\xc3\x89\x2a\x45\xe7\x6e\x23\x5b\xbd\x54\x18\xd3\x5a\x6d\xbd\x41\x6d\x2b\xe9\x65\xf5\x39\xec\xb7\x54\xec\xb1\xa4\x38\x6d\x33\x54\x37\x4d\x15\xcf\xa4\xfd\xa1\xa9\x89\x51\xc4\x16\x14\xef\xa2\x7e\x2a\x87\xaf\x9d\xf4\x3c\x27\x71\x14\x5c\x3f\x20\x05\xf0\xfd\x97\x1f\xc9\xe2\xf5\x71\x45\xb1\xc8\xaf\x51\x01\x34\x50\x7c\xaf\x26\xb2\xb2\x68\x9c\xd6\x77\x93\x20\xee\xb1\xeb\x39\x22\x86\x9e\x67\xe4\x78\xaa\x45\xcc\x20\x86\x13\x31\x70\x37\xe9\xa5\xba\xc9\x97\x6d\xe0\xda\x46\x5f\x2d\xbb\x5f\xa9\xe6\x61\xf6\xd6\x57\x8c\xcc\x7b\x09\x83\xb4\x75\xff\xab\xbf\xc4\xe4\x1c\xc6\xce\xcf\x29\x94\xce\x7b\x01\xf7\xba\xec\x75\x2b\x35\xa2\xba\x2a\xb3\x30\x88\x93\xbe\xc0\x77\x54\x12\xc8\x0b\x0d\x8b\x2b\xb2\xa0\xb7\x45\x34\xc0\x8d\x12\x2b\x2d\xb5\xd6\xa4\x5b\x61\x7b\x7b\xfa\x72\x13\x15\x67\xed\xa4\x9a\xc8\xb7\x4d\x9f\xba\x4d\xc9\xf7\x55\xd6\xdc\x6a\x23\x8a\x6c\x7f\xe8\x72\xd6\xe5\xff\x21\x11\xe7\x85\x2e\x70\x14\xf5\x28\x4a\x31\x7a\x6e\x59\xc8\xe5\x16\x8c\xcf\x55\x9b\x95\xb7\x5f\x74\xda\xad\x46\xdb\x47\x37\x46\xd5\xd1\xfe\xd1\x1e\x0b\xbf\x4f\x63\x42\x6b\x0e\x76\x17\xca\xeb\x7d\xdd\xa7\xfc\xbf\xbf\x47\xe8\x6a\xcd\x82\x8d\xca\xf6\xd1\xa6\x9a\xe1\xed\x5a\x45\xee\x42\xee\xf8\x66\x35\xf9\x66\x35\xf9\xc3\x5b\x4d\xe4\x19\xfa\x66\x32\xa9\x5f\xdd\x37\x93\xc9\x2d\x9b\x4c\x4a\xa6\x86\xfb\x77\x7f\x53\x12\x3f\x24\xe7\x77\xf0\xdb\xf8\xf0\xea\xd3\xc9\xc5\xef\xc7\xf6\x91\x22\xf8\x01\x04\x07\xad\xa1\x2c\x73\xf0\x1b\x34\xe5\x07\xaa\xb0\x6e\xc5\x69\x99\xc3\xdb\xbd\xfa\x8a\x6f\xc9\x5b\xbc\xad\x4d\x79\xa0\x9a\x52\x23\xf9\xfe\x0e\xfc\xae\x95\x28\xfa\x26\xed\x7f\x93\xf6\xd5\x7f\x7f\x28\x69\x9f\x1f\xfa\x6f\xb2\x7e\xfd\xea\xee\x5f\xd6\xaf\x7a\xe4\x6b\x11\xe6\x0b\x92\xf3\xfd\x8b\xf2\xaa\xfc\x77\x2f\xc2\x09\x83\xf8\x41\xc5\xb4\x3e\x0d\x93\x05\xb9\xda\x7f\xbe\x4e\x34\xfe\x76\xcb\x0a\xab\xc3\xdb\x4e\x76\xb7\x62\xf4\x41\x7a\x30\x1f\x8b\x90\xfa\x05\x43\x59\x88\x55\xa0\xeb\xc1\x27\xfd\x64\x4a\xae\x3a\x7b\x2b\x5b\x55\xe9\x2d\xcd\xab\x85\xac\x13\x39\x77\x6d\xa3\x3b\xa7\x24\xd4\x0a\xd1\xac\x95\x2c\xdb\xd5\xee\xbb\xd5\x45\x01\x63\x79\x99\xe2\x23\xfa\x9e\xc9\x7f\xce\xce\x2c\x8d\x4a\xb2\xb7\xe5\x32\xeb\x46\x2d\x55\x07\x6c\xc6\x5d\x71\xf8\x75\xb1\x78\xc7\xd1\xb8\x6e\xa9\xa3\x94\xa8\xd8\x9e\xb4\x68\xea\x93\xd7\xf0\x38\x1f\xa5\x18\xc6\xbd\x84\x2c\x28\xc7\x43\x27\xf5\x2e\x1b\x27\x3d\xec\x0a\x0e\x3d\x8e\xae\xed\x9e\x9e\x7b\x37\xd1\x18\xcf\x75\xfe\xcd\x2d\xa1\xe6\x3c\xac\xdb\x74\x6a\xad\x55\x9b\xf3\xdf\xce\xf2\xc7\x51\xcc\x10\xed\x9d\x5f\xbb\xd9\x6c\x6f\x5e\xb9\xc0\xcd\x14\xaf\xe3\xfc\xc6\x6e\x0f\x12\x2c\x8e\x9e\x2c\xea\x8d\x44\xbe\xcc\x9a\x60\x54\x50\x7c\xfe\x0a\x32\xf6\x79\x4e\xc9\x97\x08\x59\x37\x1a\x14\xcc\x24\xcd\xa4\x5c\x13\x21\x42\xc9\x97\x8a\x0e\xc3\xed\x9c\xea\x56\x97\x7a\x5b\x85\xe4\x3d\x9f\x7d\x1d\x9d\x75\x7d\x63\x47\x40\x30\x46\x01\x43\xa1\xec\x2c\x39\x2f\x40\xd0\x6c\xd6\xa8\x33\x24\xdb\x04\x8a\x32\x0b\x5f\xb7\x5f\x41\xf5\x2e\x62\xd5\x58\xf0\x5e\x36\x91\xaf\xe9\x6e\xf7\xb0\x9b\xb1\x91\x23\x47\x09\x2a\x15\x37\x6a\xa5\xc1\x31\x7f\xef\x76\xc9\x88\x5b\x8f\x6a\x8a\xe7\xfc\x3d\xa1\xcd\x59\x40\x4d\xc4\x01\xc3\x90\xaa\xba\xfa\xf7\x42\x1f\x6f\xde\x3b\x47\x12\x04\x07\xe2\xd0\xe1\x6b\xba\x0b\x72\xa9\xf3\x8e\x17\xf1\x7c\xa4\x51\x64\xb4\x6a\x6d\x17\x2b\x50\x25\x28\x19\x23\x1a\xd2\xd2\xb0\xea\x71\xb5\xd1\x05\xc9\x6a\x9d\x08\x04\xd7\x46\xc1\xb7\x06\x4d\x3e\xa8\x61\x8b\xcc\x13\xe2\xb0\x46\xe4\xc9\x9d\x8b\x35\x8e\xc7\x86\xe7\x20\x20\xf3\xeb\x9e\x2e\x0d\x5e\x6c\x30\xaa\xe5\xd3\x02\xac\xc6\x61\xde\x8c\xb4\x0b\xbb\x56\xdc\xab\x6d\xe0\x7f\x1d\x51\x99\xc1\xc9\x86\x09\x5b\x9b\xce\x60\x17\x44\x37\xd2\x43\x2c\x26\xa0\x72\xea\xf2\x2d\x19\x81\x6a\x6c\x2e\x0f\xc7\x20\xf4\x70\xec\x40\xc7\xff\x08\x3e\xe2\x8f\x5f\xfe\xd2\xc2\x0e\xa4\xa5\x5e\xd1\xab\x21\xe6\x72\xd8\xfd\xfb\x72\x4d\x84\xba\x77\x9c\xc9\xbc\x3d\xe3\x51\xac\x14\x98\x66\x5d\xa6\x98\xe5\x6b\xc5\x5e\x7e\x44\x85\xa2\x3d\xb9\x69\x99\xea\x96\x32\x18\xa3\x53\x64\x9b\x8b\xc1\x22\x35\x99\x81\xd9\x69\x7b\xa0\xaa\x32\xdc\xb5\x77\xc5\x5f\x05\x90\x35\x9e\xd1\x76\xb2\xae\x55\xf0\xea\x1e\x6f\x6f\xb7\xed\xb9\x01\x8d\x58\x14\xc0\xd8\x2d\x75\x43\x6a\x27\xfc\x1c\x31\x27\x46\x30\x61\x0e\xc1\xc8\x91\xdb\xe2\x88\x6d\x71\x08\x16\xdf\x69\xde\xe5\x44\x89\x33\x86\x51\x1c\xe1\x49\xbf\x2d\xfb\xb7\xc0\xab\x9d\x5e\xb7\x0e\xee\x14\x26\x0e\xd4\x0d\x63\x36\x81\x78\x0e\x93\x64\x13\x88\xe3\x38\x07\x68\xe2\x40\x8a\x1c\x35\x68\x6b\xb8\x0a\x83\x7e\x9c\x22\x8a\xc4\x40\x98\xe4\x47\xef\x37\xcb\xe5\xed\xbe\x2a\x48\x85\x2d\x5c\x35\xe5\xc0\x81\x7a\xb1\xe5\xb1\x71\xd1\x16\x7d\x3c\xcd\xda\xf8\x1b\xb5\xd1\xc7\x64\x21\x5b\x0f\x36\xb0\x71\x9b\x5d\x5c\x8e\xf4\xb7\x08\x8b\xb6\xd0\x2e\x43\x74\x16\x61\xc8\x22\x3c\xe9\x4d\x20\x43\x57\xf0\xba\x9d\x26\xd1\x4d\x99\xcd\x19\xde\xd3\x4f\x0d\xd5\x13\x8a\xa8\xae\xad\x04\xd1\x72\x03\x5a\xd1\x7f\x09\x4b\x11\x9e\x70\x45\xe4\xee\x30\xb4\x98\x27\x8c\x22\x38\x7b\x20\x28\xda\xc2\x8a\x34\x93\xba\xfd\x15\x6d\xc2\x02\xaa\x5d\x64\xb5\x0e\xf9\x76\x80\xb6\xf7\x34\x34\xca\xf7\xdb\xf6\x32\x14\x54\xd7\xac\xe1\xaa\xa5\x5e\xc6\xbb\x93\xf7\x47\xc7\xaf\x2b\x4a\x66\xb4\x62\x45\xd6\x32\x08\xc6\x94\x39\x10\xd6\x15\x8a\x4c\x3b\xa3\x1a\x6b\x3d\x99\x68\x33\x2b\xa3\x5e\x59\xd7\x20\x80\xf5\x05\xaf\x3c\x21\xa6\x68\xb5\x79\xbf\xba\x5f\x60\x55\xf7\x97\xa5\x72\x89\xe9\xb9\xb8\x88\x04\x75\xb5\xf3\x3f\x6d\xee\xc5\x6a\x36\xa2\x75\xbd\x4a\xf3\x74\x56\x5b\x59\xcd\xcd\xb2\xde\xc6\x84\xce\x20\xeb\xe1\x05\x57\x01\x6b\x66\xb7\xe4\xb9\x99\xc3\xcc\xe3\x05\x85\x71\xf4\x1b\xaa\x5b\x40\xfa\x8d\x40\x8a\x7b\x15\xb1\x29\x59\x70\x15\x6e\x21\xf3\x67\x05\xb4\xeb\x5e\x08\x56\xd1\x64\x0b\xaa\x52\xab\xe3\x5b\xe9\xec\xb9\xe5\xd3\xfb\x71\x1a\x25\x8e\xba\xc5\x9c\x45\x82\xb8\x70\x2d\x60\x71\xc6\x84\x3a\x6c\x8a\x9c\x63\x41\xa2\xe9\x33\x33\x94\x4c\xef\xe6\x9c\xd7\xba\x83\xd6\x3f\xd5\xc5\xd3\xdb\xc9\x3a\xd6\xb0\xe0\x87\x60\x94\xba\xcf\xd2\x0c\x4e\xd6\x26\x1f\x81\xc2\xf1\xf5\xff\xbc\xbf\x76\xb5\x86\x04\x25\x49\x44\x70\x8f\xf3\x9a\x87\x61\xd3\x0a\xdf\x24\xc9\x77\x68\xfe\x4f\xbb\x4d\x0b\xce\x23\x17\xb8\xe8\x0b\x0a\x16\x4c\xb4\xa3\x97\x0d\x11\x81\x3b\x43\x49\x02\x65\x87\xfa\xaa\x64\x05\xdd\x6c\x9e\xaf\x35\xa5\xc9\x30\x10\xf6\x6b\x79\xd1\x29\x2f\xb8\xd9\x7a\x9e\xa3\xe9\x7c\x26\x1a\xe0\x4a\x33\x54\x18\x08\x1b\xd4\x81\x29\x18\x68\xf3\x94\x98\x53\x62\xb4\xb9\xa9\xbc\x1e\xb7\x45\xec\x6f\x0b\x91\x4d\x2c\xaa\x65\x8d\xb6\x8a\xf6\xb1\x62\x5f\x85\x89\xa5\xc7\xb4\xe5\xad\xd2\x69\x30\x3d\x58\xdf\x5b\xf9\xc2\x5a\x49\xed\xd5\x2f\xc7\x27\x9f\x3f\x7d\x78\x9b\xa5\xf4\xef\x45\x58\xde\xde\xc9\x9e\xc2\x6a\xd2\x9f\xb2\x59\xfc\xbf\x34\xd5\x86\x28\x89\x26\xd8\xcd\x9a\xfa\x0a\x52\x98\xa2\x78\xee\x60\x42\xe6\x08\x23\xea\x60\x42\xd1\x18\x51\xaa\x1a\xef\x89\x66\xa6\x54\xdc\x3e\xee\xe7\xf3\x18\xe2\x0b\x63\x99\x6f\x49\x70\xe1\x9c\xa8\x0d\xdc\x28\x3b\xbc\x53\x0a\x78\x75\xf3\xfa\x2a\x7e\x9e\x49\x69\x9c\xa2\x5d\xd0\x90\x26\xd2\x30\xff\xd1\x44\x55\xc9\xd8\x3c\x61\x7f\x33\x0f\xb5\x5e\x4c\xbd\x87\x3a\xff\xd4\x1a\x2d\xe2\x6b\x50\xf1\xe6\xd5\x86\x1b\x91\x0f\x16\xeb\x34\xf7\x8f\x68\x0a\x2f\x23\x42\x37\x84\x20\x1b\xc6\x5e\x30\xb2\xe8\xf4\x92\xec\x50\xbf\xfd\x0a\xc5\xf0\xba\x85\x07\xac\x76\x25\x6a\x90\x8d\x96\xc1\xcf\xa2\x06\xa6\x65\xe1\x4b\xbb\x53\x2f\xbf\xbe\x8f\x1f\xdf\x6e\xba\x3a\x31\xc4\x46\x6b\x93\x40\xac\xbd\xaa\xa2\x65\x4f\x8d\xaa\x02\xb1\xd6\x89\xb4\xa9\x5d\xaf\x34\xeb\x3b\x3a\xce\xeb\xd6\xea\x7a\xd8\x16\xd3\xb5\x84\x74\xab\x8c\xd7\x3a\x36\xfe\xa4\xd0\x46\x3d\x8c\x60\x4c\x26\xe9\x7d\xab\xc5\x0c\x7e\xe5\x56\x26\x4f\x44\xf8\x12\xc6\x51\x08\x75\x02\x85\xba\xae\x5e\xb6\xc9\x5f\x68\x71\xd5\x2b\x99\xa2\x75\x42\x8d\xd1\xd2\xdb\xd6\x9c\xb6\xd8\xbe\x9b\xcb\x38\x51\xc2\x05\x80\xd0\xd8\x15\xfd\x8d\xbc\x6b\x0f\x2c\xbd\xb5\x0f\xeb\x7b\x7b\x5b\x9b\x77\x3f\x16\x71\x8f\xea\xbe\x35\xfd\x4e\x6f\x32\x14\xd6\xde\xc7\x36\xb5\xc1\x9e\x8b\xd1\xc6\xec\x25\xf7\xba\x0b\x62\x9b\xd3\x6c\x32\xa3\x8a\x4c\x69\xaa\xa2\xe3\xea\xcb\x6a\xdd\x5d\xec\xb0\x43\xb2\x85\xba\xd1\x67\x5c\xe5\x37\xa5\xdb\x50\xb3\x01\xed\xc1\x0b\xd2\xee\xe5\x1d\xc1\x3b\x2c\x82\x57\xdb\x06\xdd\x92\xe1\x02\x0e\xc1\xda\x09\x35\x9b\xd6\x7d\xdf\x4a\x13\xef\xb2\x9e\xb6\xb1\x0e\xba\xa6\xc6\x28\x33\x7f\x1f\x4e\x0c\x04\xfb\xf4\xd3\xc7\x1f\x43\x12\x6f\x29\xc5\xbd\xfb\x0f\x0f\x20\x90\x22\xdb\x93\x07\x99\x4d\x23\xf9\xfe\x51\x10\xa0\x24\x21\x54\x67\x6b\x3c\x16\x6e\xfc\x0b\x84\xc5\xae\x18\xbf\x6d\x58\x07\x90\x2a\x7b\x80\x5d\x7d\x6d\x2f\xa9\x6c\x29\x0c\x21\x7f\x1b\xfc\x8b\x2c\xa8\x23\x56\xbd\x6e\xa2\xe0\x96\x0a\xfd\x75\x55\xd7\x44\xfa\xb7\x00\xbc\x98\xff\x6d\xdf\x3b\xb3\xe9\x46\xb2\x38\x4f\x18\xad\x24\x85\xde\xf3\xfa\xf6\x1b\x77\x92\x37\x53\x4d\x53\x9d\x54\xf9\x93\x80\xcc\x3b\xea\xf2\x0d\x32\x72\x2e\x4a\xfa\x2d\x09\xa0\xc8\xec\x76\x63\xf1\x17\x70\x27\xa2\x8e\xa4\xbb\xed\x5a\x77\x5b\xaa\xf4\xb0\x31\x3e\xb7\x58\x1d\x2f\x87\xd5\x5c\x26\x59\xa1\xf6\x83\xdd\x07\xf1\xad\x80\x5e\x75\x59\x88\xf6\x7c\xe1\x77\x50\x1f\xc2\xe6\x1e\xd4\x7f\x0a\x44\xec\x45\x49\x2f\x46\x13\x18\x5c\x57\x17\xa5\x5c\xa3\xd8\x5c\xe7\x32\x13\x41\x4c\xf0\x03\xa9\x32\xb1\x98\xc7\x51\x00\xd7\x29\x34\xd1\x51\xda\xae\x30\x97\xdc\x81\x20\x72\x3b\xa5\x42\x1e\xce\x1e\xbe\x25\x13\xb2\x58\xe3\x2c\xb5\x82\x63\x93\x4a\x21\xcf\xbf\x8a\x4a\x21\x71\x19\x7d\x1d\x50\xd8\x12\xb8\xfb\xa8\x14\x92\x30\x32\x77\x16\x49\x84\x27\xd2\xd8\x75\x74\xfc\x56\x0a\xb8\x2f\xa5\x0b\xfc\x2a\x8a\x63\xbe\x7a\xf1\x12\x59\xb0\x7e\x05\x24\x0f\xbe\x92\xc8\x8b\x16\x57\xa9\x3c\x24\x9d\x40\x2e\x3e\xfa\x62\xdb\x95\x44\x9e\x6f\x85\xab\xde\xea\x4d\xb5\x48\x1e\x06\x8f\xfb\x94\x3c\xc4\x52\x48\x4f\xbf\x0a\x06\xb7\x48\x7e\x8f\x75\x90\x16\x09\x2a\xb2\xb5\xaf\x95\x7f\x3d\x6b\xc1\xbf\x3e\x25\x9b\x95\x41\x7a\xb6\x6d\xe6\xf5\x74\x1b\xcc\xab\x46\x60\x57\x7a\xa0\x29\xba\x43\x4c\xf0\xf5\x8c\x8b\x6b\x96\xf2\xd1\xdb\x92\x26\x1f\x82\x6c\xf9\xad\x0c\xdd\xb7\x32\x74\x1d\x80\xbb\xef\x32\x74\x5f\x37\xf7\xfd\xc3\xd4\xa1\x6b\x65\x7d\x2e\x3f\xf4\xb5\x94\xa9\x2b\xba\xbf\xee\x3f\x2d\xb9\x6c\xa0\x7d\x18\x8e\xb9\x27\xc1\x77\xb3\x4f\xec\xf8\x85\xdd\x31\xa7\x7b\x6e\xe8\x86\x4d\xf2\x4f\x9d\xb2\x1c\x22\xcc\x22\x96\xfb\xce\x68\xd8\x60\x04\x5b\xd6\xa4\xce\xaa\x56\x10\x13\x4a\x16\xf3\xc2\x75\xaf\xbd\x71\xa2\xec\x83\x9a\x3c\xbd\x18\xb5\xcb\xf0\xf8\x6d\xa2\x7f\xbf\x7e\x25\x57\x9f\xa4\x49\x2d\x90\x52\x78\xed\xca\xcb\xbb\xfd\xb5\x6e\xcf\x16\xd6\x99\xbc\x6e\xeb\x9e\x14\xf6\x50\xa0\xa7\xfc\xce\x5d\x23\xf4\x67\x43\x13\x7d\x81\xd3\x64\x1d\xad\x3a\x45\xe2\xd5\x54\x33\x41\x30\x98\x6e\x8e\xb3\x42\x42\xa8\x31\x77\x2e\x1f\xa3\xd8\xa7\xca\xd6\x50\xe4\x59\xce\x9e\x6b\x84\x78\x3d\xeb\xd8\xab\xf9\x99\xd5\x31\xb7\xa9\x97\xcf\x22\x43\x1b\x46\xd1\x3a\x02\x34\xce\xdd\x3a\x04\xf8\xf8\x7e\x08\xf0\x8d\x09\xf5\xc6\x44\x96\x4b\x59\xbe\x4d\x2a\x7a\x52\x45\x45\x4f\x3a\x52\xd1\x93\x3b\xa1\xa2\xc7\x15\xa6\x75\x9b\xcb\x23\x65\xa3\x1b\x39\xf3\x3b\x11\xc1\x07\x7e\xff\x6d\xee\x22\x7c\x2b\x16\x21\x65\xcd\xc4\x99\xc2\x4b\xe4\xa0\xd9\x39\x0a\x43\x14\x3a\xe2\x8a\x2d\xa6\x8b\xaf\x89\xe2\xfa\x9b\x01\xce\xe7\x48\x25\x54\xda\x8e\x69\x7a\x61\xe6\xb4\xd2\xf2\xdd\xf6\x81\xc4\xd5\x17\x1b\xff\x71\x7b\xd7\x9a\x85\x1b\x1c\xdc\x0f\x37\x58\x9b\x10\xca\x8c\xe0\xa0\x0b\x23\x58\x97\x0d\x1c\x56\xb1\x81\xc3\x8e\x6c\xe0\xf0\x4e\xd8\xc0\x41\x75\x0e\xa7\x4d\x26\xdf\xae\xd8\x5d\x16\x72\xef\x5f\xfc\xd6\xc9\xf6\x0f\xb1\x4e\xf4\x3f\x83\x1f\x93\xbf\xfe\x1c\xd4\xb7\x7f\x09\xc8\xec\x3c\xc2\x28\x4c\xeb\xa5\x15\xc5\xea\x67\xc0\x5d\xd8\x0e\x63\xf1\xc0\x64\x31\x6e\xf5\xa7\x46\x9d\x94\x38\xaa\x38\xe0\x6e\x39\x4d\xa9\x22\x77\xb3\xce\xba\xe0\x16\xdb\x7b\x30\x51\xa9\x82\xe0\xea\x4a\x00\xf6\xa8\x0d\xdb\x37\x95\xe0\x95\x43\xe0\xda\x67\xbf\x77\x4c\x7b\x37\x96\xf4\xf1\x7a\xae\xcc\x06\x14\xcd\x21\x45\xe1\xe7\x5f\x17\x88\xb6\xac\x34\x51\x15\x47\xd7\x9c\xff\xde\x56\x29\xb0\x46\xd2\x6d\x92\x03\xdf\x3a\x76\x60\xb3\x72\x9b\x15\xb1\x42\x26\x21\xa5\x09\xf2\xae\x3a\x9d\x0d\x91\x58\x36\x90\xd6\x65\xc5\x0d\x55\x04\xad\x34\x63\x74\x95\xd5\x62\x41\x18\xb8\x05\xfb\x76\xc3\x6b\x6e\xbb\xa2\x0d\x2d\xc9\xab\xa9\xd1\xed\x1d\x90\x58\xb6\xbc\xfb\xa1\x31\x1b\x92\xb7\x4f\x3e\x75\x19\x44\x22\xae\xf0\xc7\x08\x87\xba\xb2\x62\x73\x6d\x20\x43\x5c\x0d\x08\x0e\x60\xd1\xa5\x52\x18\xd8\xac\x36\x3a\x38\x78\xd6\xdf\xef\xef\xf7\x07\x59\xaa\xe7\x30\x8b\x1b\x2b\xc2\xf2\xe0\x0b\x5e\xca\x18\x3b\xa3\xde\xe8\x46\x44\x32\x30\xe2\xf6\xd6\xad\x6f\x59\x23\xa4\x59\x52\xf5\xf3\xc5\x6f\xea\x47\x1e\x64\x23\x14\x1e\xdb\x50\xc0\xab\x13\xa3\x1e\x90\x90\xf7\x70\x64\x3b\x84\xe7\xff\x3a\x7f\xf6\xcb\xac\x55\xed\x47\x58\x25\xdb\xb5\x4e\x31\xc8\x61\xc0\xfd\x6a\x8b\x35\x6e\xa9\x36\x5a\xbb\x6a\x8a\x6d\xea\x37\xd6\xd7\xaf\xfa\xdd\x55\x5c\xec\x84\x92\x0e\xe6\xdc\x7b\xac\xca\x78\xff\x4b\xba\x8d\xca\x8d\xb7\xb6\xaa\x6f\xd5\x1d\xed\x67\xc5\x10\xdb\x5b\xe9\x8c\x15\xa2\x7a\xeb\x62\x68\x6d\x05\xaa\x36\xf9\x41\x72\x86\x7e\xa9\x47\x12\xc8\x8b\x87\xee\xff\x73\xad\xd5\xc5\xb2\x15\xa5\xfa\x48\xfb\x32\x7f\x45\x31\xba\xbd\x7a\xdf\x8d\xd2\x3a\xa0\xc3\x86\x87\x7b\x59\x4d\xf7\xea\x8c\x9b\x56\x29\x6c\x05\x15\x38\xbd\xf7\x3a\x85\x0f\xe4\x94\xad\x6b\x79\x69\x23\x1b\x6c\xdd\xea\xb2\x16\xd7\x6b\x2f\x80\xdc\x49\xe5\xc1\x3a\x21\xf0\x2f\xb2\x3e\xab\x08\xaa\x9a\x64\x0d\x24\x50\xa7\x9c\xdd\xbc\x07\xa1\x7e\xd8\x26\xe7\x42\xb3\x4a\xdb\x81\x0e\x5a\xab\xb3\x87\x0d\xea\x6c\xfb\x3d\x1e\x18\x61\x8b\x55\xa9\x9d\x2d\x7d\x1a\x0d\x8a\x6c\xc7\x88\x24\x4b\xed\xb8\x6d\xa9\xaf\x5f\x59\x91\xb8\x9d\x06\xed\x37\xa5\x99\xbd\x60\x0a\x29\xeb\x7f\x11\x84\x7a\xab\xba\x6f\xf6\x85\x6c\x61\x6f\xd2\xad\xa8\x4f\x06\xe3\xa1\x1b\x85\x7c\x1c\x82\x87\xcb\x0f\xaf\x4f\x5e\x7f\x1c\x9e\x2e\x65\x55\x2f\xf5\xcb\xea\x6c\x05\x04\xa4\x1c\x65\x61\x8c\x86\x4b\xfe\xe8\xc9\xa7\xe3\xe3\xd7\x27\x27\xc6\xc3\xc9\x42\x44\xe8\xba\xab\x33\xf0\xfa\xc3\x87\x5f\x3e\x18\x3f\x21\x4a\x09\xe5\x03\xad\x80\x7a\x6a\xb8\x5c\x01\xf1\xed\x70\xb9\x12\xb8\x6c\x32\x1d\x64\xc8\x2b\x59\x0c\x40\x47\x84\xe7\xb0\x0c\xd8\xb6\x6c\x0c\xb8\xa1\xbf\xc4\xd3\xd7\xef\x5f\xb3\xbd\x3d\xbb\x8d\xe1\x44\x92\x82\xfb\x97\x05\xa4\xa1\x59\x5a\x21\x8c\x92\x39\x64\x9c\x09\xba\x8a\x5c\xdc\x47\x90\x31\xca\x97\xfd\x28\xb3\x93\x97\x4d\x11\xe2\x8b\x9e\x58\x78\xca\xa3\x12\x1a\xa4\x56\x05\xf9\x4b\x0b\x4b\x81\x14\xcb\x54\x7f\x3b\x5d\xee\x4d\x72\x39\xa0\xd9\xde\x59\xce\x1e\x91\xc1\x9c\x85\x80\x9c\x15\xa4\x91\xa7\xc0\x68\xbb\xa0\xea\x01\xf1\x77\x90\x6a\xe0\xa7\x88\xa9\x4d\x99\x85\xa2\xaa\x2d\x81\x7c\x13\x8a\x12\x84\xc9\xc9\x94\x5c\x71\x44\x66\x1a\x38\x70\x7f\x08\x17\x54\x97\x9e\xf8\x81\x60\x4e\x34\xba\xd8\x8b\xc0\xcd\x64\x11\x85\xee\x99\x60\xbf\xb2\x20\xa1\xa1\xbd\x1f\xee\xef\xef\xd7\xd4\x23\xd4\x61\xce\xae\x38\x4b\x2d\xec\x31\x4e\x95\xbf\x7b\x1f\xb8\x94\x70\xca\x73\x61\x8c\x28\x73\xcd\x8a\x32\xf3\x08\x85\xe9\x45\x7f\x00\x5c\x75\xe7\x18\xf7\xfb\xae\xed\x5e\xef\xd8\xab\xa6\x24\x42\x36\x6c\x9a\x3c\xe6\xdd\xb6\x4c\xd8\xc7\xf2\xeb\xfc\x83\xec\xa2\x54\xb4\xaf\x60\xe2\x40\xec\xcc\x29\x39\x8f\xd1\xec\x56\x76\xad\xa6\x4c\xa5\x79\x21\x28\x35\x2c\x12\x95\xaa\x52\xf4\x55\x79\x94\x6d\x05\x8a\x58\xc4\x62\x54\x52\x54\x8f\xc9\xfc\x5a\xd4\x24\x13\x92\xbd\xee\x01\xec\x30\x22\x0a\xf7\x06\x71\x34\x3f\x27\x9c\xe9\x65\x8a\xdc\xe0\x10\x3c\x2d\xd4\x3c\x92\x80\x32\x09\xe5\x81\x2a\x3e\x9a\xbe\xdb\x63\xe8\x0b\x53\x60\x2b\x86\x54\x55\x18\x49\xc8\x52\x8f\xc1\xb3\xae\xb6\x7a\x20\xea\x1e\x81\x27\xdb\x93\x75\x0a\x37\x5a\x2a\xe2\xd0\x5a\x11\x07\x57\x8a\x38\x29\x36\x86\xf2\x89\x08\x8b\x5b\x4d\x69\xcf\x9e\x9b\xfe\xbe\x47\x12\xd7\x07\x21\x99\x55\x3c\x18\x92\x99\xeb\x03\x43\x62\xe2\x92\x42\x26\x22\xf9\x4b\x36\x8d\x92\xfe\xe7\x64\x31\x47\xb4\x0f\xe7\xf3\xf8\xda\xe3\xdf\x00\x48\x27\x0b\x71\x30\x7c\x20\x9e\x10\x37\xcc\x88\xe9\xbb\x52\x7e\xc9\xa9\x6a\x24\xfe\x0a\xc9\x4c\x7c\x12\x2f\xab\x57\x3e\x73\x91\x0f\x61\x44\x93\xec\x99\xf4\x2b\xcf\x5f\x81\xab\x28\x8e\x5f\xa1\x84\x51\x72\xfd\x3a\x16\xc7\x70\x0d\xc0\xb2\x59\xfa\x14\xcd\xc8\x25\xe2\x23\x87\x51\xf8\x06\x27\x88\x32\xcb\xb8\xfc\x7a\x47\x02\xa2\x9d\xee\x53\xc0\x50\x2e\xb1\x9f\x6e\x40\x5f\xd5\xdc\xf5\xdc\xff\xe5\xf6\xe5\x41\xf1\x52\xe4\x00\xd7\x51\xd4\xea\xfb\x60\xa9\xc5\x25\x03\x18\x25\x9f\xa2\xbe\xbe\x66\x3d\x57\x09\x63\xae\xaf\x85\xaa\xfa\xc7\x85\x78\xe6\xfa\xab\x95\x5f\x90\x62\x69\xa3\x20\x96\x16\xfd\xb5\x89\x61\x99\x79\x21\x29\x0b\x59\xfa\x93\xa3\x3e\x2b\xb8\x4c\x79\x37\x1a\x7b\x47\x94\xc2\xeb\x7e\x94\x88\x7f\x3d\xe4\xfb\x1a\xfc\x95\x87\xfc\x9b\x9b\xfc\x90\xd1\xd8\x73\x17\x58\xc2\x1b\xba\xa3\x91\x8c\x05\x73\x4e\x84\x58\x75\x73\xb3\xeb\xc9\xbf\xfa\x11\x43\x14\x32\x42\x9d\x08\x3b\x52\xd6\xe3\x23\xab\xa1\x95\xec\x76\x7a\x06\xe8\x68\x77\x1f\xc0\xd1\xee\x00\x10\x2d\xd7\x31\x7a\xbd\x1c\x13\xea\xf1\x67\x12\x10\x8d\xd0\x69\x61\xc8\x33\xcf\xff\x7e\xd7\xa3\x23\x2f\x19\x45\x7d\x8c\xbe\x30\xcf\xf7\xfb\x21\xc1\xc8\x7f\xf4\xc8\xc3\xfd\xf9\x22\x99\x7a\x49\x5f\xf0\x24\x1f\xec\xb2\x9b\x1b\xdc\x97\xea\xef\xee\x68\xc4\xfc\xef\xf9\x94\xfe\xf7\xab\x40\xec\x4b\xec\x2f\x21\x07\x81\x8c\xe2\xd5\x38\xc2\x30\x8e\xaf\x97\x1c\x00\x7a\x73\xc3\x39\xe3\x68\x14\xf5\x25\xc8\x37\x37\xfa\x2f\xcf\x4f\x9f\x8c\xc6\x1e\xf4\xd9\x94\x92\x2b\x87\xac\x56\x0a\x6d\x78\x25\x30\x65\x41\xdc\x2e\xd2\xeb\xe7\x58\x4c\x18\x8d\xf0\x24\x43\xa1\xfe\xd1\xa1\xe2\x05\x85\x23\x25\x27\xcf\x29\x61\x84\x3f\xd8\x67\xe4\x44\xbc\xd8\x0f\x60\x1c\x7b\xc8\xef\x27\x31\xe7\x20\xcf\x41\x6f\xe0\xef\xb8\xf2\x71\x77\x34\x1a\xe1\x47\x8f\x10\x27\xf4\x84\xd1\x45\xc0\x08\xe5\xb8\x19\xe5\xbe\xe9\xf3\x8b\xc1\x17\xb0\xfc\x0c\xe7\xe2\x9d\x9b\x1b\xf7\x04\xc9\xd7\x35\x34\x92\x3a\xc6\x94\xcc\x3c\xf5\xf0\x91\x3e\x77\xea\x95\xbd\xff\xeb\xbd\x1c\x7e\x8a\x6e\xde\xf8\x98\x79\x2f\x87\xcf\x6f\x06\x4f\x6f\x0e\x0f\x7c\xef\xe5\xf0\x38\x86\xb3\x39\x0a\xfd\x97\x62\x90\x7f\xdb\xeb\x33\x94\x30\x0f\xfb\xf9\x95\x96\xf0\xc5\x99\x0a\xc7\x29\x46\x57\xce\xc7\xeb\x39\x7a\xcd\xcf\x97\xa7\x6b\x2a\x3a\x90\x71\x29\x5f\xe5\x57\xc9\xc5\x2c\x84\xe9\x1c\xf7\x04\x89\x9c\xc7\x99\x6f\xa1\xff\xdf\xf8\x0d\x76\x08\x0d\x11\xe5\xcf\x9f\x23\x47\x3f\x02\xc4\x0b\x22\x60\xd4\x21\x02\x6b\x89\x33\x5b\x24\x4c\x06\xcd\x42\xc7\x42\x75\xce\x0c\xb1\x29\x09\xfb\xae\xbf\xe2\x44\xa0\x0f\x97\x5c\xc5\xd2\x93\x04\xc3\x6e\x6e\xd8\x9f\x91\xa2\x38\x4e\x91\x6c\x94\x7e\xda\xd1\x74\x8d\x47\xfb\x80\x8e\xf8\xfa\xe4\xa1\x63\xfe\xf7\xf8\x3f\xd8\xf7\xf8\xbb\xef\x7c\x7a\x8a\xcf\x46\xe8\x14\x9f\xed\x68\x24\xad\xb6\xa3\x2b\xc1\x7a\x5d\x29\x3a\x39\xba\xde\x7f\xf7\x5f\x73\xbb\xae\x74\x45\x39\x1e\xb8\x44\x25\x0a\x98\xd7\x6a\x41\x82\x5f\xc5\x44\xf8\x33\xcd\x52\x4b\xc2\xd3\xca\xd5\x21\x29\x3a\x4e\x21\x9e\xa8\x12\xe5\x41\xde\xf1\xaa\xfd\xae\x99\x3c\xb3\xe7\x16\xad\x94\x20\xfb\x4e\x1a\xdc\xb3\xcf\x4c\x47\x93\xa5\xdf\x08\x1d\x2c\x1f\x23\x64\xf3\xe9\x26\x88\xbd\x82\x0c\xa6\xb6\x53\xd9\x34\x62\x13\xaf\xae\xc0\x42\x58\x2d\x9e\xe7\x25\x74\x81\x38\x8d\x69\xad\x3e\x46\xf8\xc2\xac\xe7\x2e\x93\x52\x05\xd6\x54\xfe\xab\x89\xcd\xb3\x62\x44\x4b\x35\xe6\xf2\x11\xd7\xba\x7a\x72\x53\x7c\x95\x15\xcb\x19\x62\xb5\xf4\xa7\xfe\x56\x19\xb4\x8d\xa5\xe4\xd3\x4c\xde\xa6\x2d\xea\x5c\x7b\xde\xda\xe6\x70\x0a\x93\xa9\x0a\x12\x3f\x4d\x97\x9e\xd2\x63\x94\x1c\x53\x24\xb5\x7e\xa9\x5c\x99\xf5\x64\x5d\x35\x33\x70\xb3\x5a\xa5\x06\x06\xcf\x6a\xa8\x2b\xdd\x22\xd3\x59\x14\xc8\xa9\x0c\x87\x51\xaa\xd0\xe9\x2f\x22\x3c\x8e\xa3\xc9\x94\xd5\x0d\xae\x9f\x9d\x23\x9a\xe8\xf8\x06\x13\xaa\x66\xbc\xda\x6b\xdb\xe6\x5f\x3f\xab\x33\xf8\xe6\x1d\x2d\x8f\xc1\xa1\x19\x83\x5e\xe1\x36\xe4\x53\x70\x61\x5e\x2d\xb9\x8d\x47\xaf\xe1\xc0\xb5\x50\x87\x8d\x91\xae\x23\x14\x87\x9b\x8d\xd4\xb0\xde\x4e\xbe\x87\xf5\xb3\x52\x73\xc8\x6f\x4e\x02\x66\x08\xb7\xa8\xf8\xd8\x02\x49\x6d\xba\x36\xdc\x19\x8e\xea\x43\xc9\xea\xf5\xfb\x41\x7e\x9c\x35\x76\x63\x13\xc5\xb4\x20\xe1\xa7\x6a\x29\xa9\x55\x4b\x61\x95\x5a\x9a\xa9\x7f\xa6\x0d\xbe\x49\xf9\x3c\x5f\x44\x71\x88\x68\xc5\x33\x62\xa7\x7d\x20\xf9\xd5\x90\xcb\xeb\x8a\x6b\x5b\xf4\x1e\xa1\x57\x69\x26\x6d\xd7\xd8\x56\x80\xdf\x50\x38\x40\xf1\xfa\xef\xcb\xdf\xcd\xf7\xc5\xa8\x82\xcd\x0e\xf3\xc2\xb7\x1e\xb8\x3f\x85\x38\x8c\xd1\xeb\x4b\x84\xb9\x3e\x22\x34\xd0\x0f\x28\x40\xd1\x25\x3a\x62\x8c\x26\x9d\x14\x5b\xa1\xa9\x88\xa7\x38\x72\xa4\xf2\xac\x90\x28\xbe\x91\xfa\x25\xbf\x0f\x7d\xa5\x6d\x20\x7f\xb9\x92\xfa\xf4\x07\x84\x39\xae\x3b\xe9\xd1\x72\x63\x12\x24\x15\x57\x90\x71\x4e\xa5\xfe\x46\xc9\x07\x34\xe1\x2a\x30\x45\xa1\xa7\xf8\x97\xbf\x05\xfd\x3d\xf3\xca\xc8\x79\x39\xb5\xf6\xa3\xe4\x1d\xba\x72\xfd\x47\x8f\xa4\xcd\x80\x7f\x45\x49\x1c\x9f\xc3\xe0\x82\x63\x32\x3a\x5f\x30\x24\xac\x07\xa9\xeb\x47\x49\x57\x39\xbf\x8f\x8c\x13\x44\x5a\xd4\x95\xd2\x2a\x57\xd3\x34\x56\x85\xfc\x9c\x7e\xea\xab\x31\xb8\xda\x33\x51\x7f\xfa\x39\x00\xf9\xf5\xad\x00\xf3\x8a\xf8\x52\x77\x2d\xd8\xdd\xf7\x01\xd3\x8a\x15\xc2\x8c\x46\x28\x91\x7b\x05\x17\x8c\x8c\xa3\x38\xbe\xb9\x59\xae\xfc\x3e\x45\xe1\x22\x40\x5e\x41\xa7\xe6\x20\xd3\x11\xf6\x18\x38\xf0\x01\x1c\xd1\xd3\xfd\x33\x40\x46\xf4\x74\x90\x0a\xec\xd9\xbc\x08\x40\x40\x7c\x80\x56\x3e\x60\x7e\x79\x03\xa5\xe4\xc1\x94\xf9\x82\x7f\x5a\x01\x2b\xf9\xaa\x03\x21\x7f\xf3\x52\x2b\x0d\x26\x74\x26\x3a\xa3\x29\x7a\x4e\x87\xe2\xb8\xca\xfe\x32\x50\x55\x74\xa1\x91\x76\xc6\x07\x29\xcc\xdf\x9b\x0b\x2d\xa7\x50\xa4\x2e\x34\xfe\x85\x74\xa1\x49\xd7\x57\xea\xf9\x0a\xa3\x24\xed\x10\xe6\xae\xc0\xdb\x5f\x8e\x5e\x15\xfd\x6b\x20\x20\x38\x1c\x6a\xf1\x7c\x05\xd2\x5f\xf9\x37\x5c\x2b\x37\x1d\x70\xfc\xbb\xe1\x72\x05\xd4\x6f\x79\x5f\x5c\xc1\x6f\x07\x0a\xb0\x28\x2f\xdc\x6a\x05\xa4\x1b\x2f\xf5\xc0\x49\xd7\xdf\xc7\x0f\xff\x1a\xe6\xe6\x16\x8f\x9a\x0b\xa8\x7d\xb2\x85\x17\xcf\xdc\xbf\x06\xf3\x51\x85\x4f\xaf\x92\x02\x0a\xe6\x26\x80\xb7\xe5\xd5\xa3\xf5\x9a\xea\xe2\xef\xe7\x27\x27\x09\xfc\xb8\xb9\x57\xaf\x49\x99\x55\x46\xeb\x4c\x74\xdd\x82\x8f\xef\xae\xdc\x7c\x07\xa6\xc7\x48\x0f\xc9\xc9\xde\x54\x4c\x6b\xe3\x9b\x95\xee\x9a\xca\xfe\xa0\xb8\x02\x95\x5f\x14\x46\x61\x6f\x31\x0f\x25\x53\x90\x9d\x1f\xb1\x99\x8a\x0e\x5c\x7e\x04\x0d\x5f\x83\x52\xc8\xb5\x06\xa0\xb4\xf3\x52\xac\x4c\x7b\xdd\xcd\xd0\xd3\x04\x76\x94\x42\x51\x56\xcd\x1e\xe7\x15\xac\xe7\xc0\xfd\x75\x81\x16\x29\xdc\x56\xcd\xe8\x39\x70\x67\x8b\xac\x0a\x3e\xca\x29\x2b\x72\x39\xe9\x4e\xc9\x5f\xfb\xe2\xff\x93\xfe\x38\xa2\x09\x53\x16\xb9\xb3\x06\xed\x4d\x61\x4a\x9a\x89\x0b\x21\x58\x0d\x6a\x97\x42\x92\x29\xa7\x6b\xfc\x64\x91\x66\x0a\x05\xb5\xba\x15\x27\xf7\xb4\x14\x47\x5e\x6b\xeb\x1a\x8f\xab\x4b\x94\x95\x73\x2a\x3b\x95\x0c\xcb\xb9\x3d\x31\x61\x3f\x67\x9e\x4f\x33\xdf\xfb\xd4\xa4\x80\x8c\xf7\x37\x19\x07\x2a\xa3\xeb\x32\xaa\x04\x85\x2a\x6b\xe6\xba\xa4\xdd\x2a\xaf\x5b\x4b\xee\xa0\x1d\xb4\x46\xa1\x04\x90\x5e\x2d\x6b\xd6\x51\x2b\xda\x89\x0a\x0d\x61\xc9\x5c\x54\x6c\xb3\xdb\xd7\x50\x76\x1e\x0e\x80\x2b\x1e\x55\x16\x1a\x75\x10\xdb\x9c\x04\xd7\xb0\x31\x19\x14\x9f\x9a\x08\x5a\x50\xb7\xf6\x99\xe4\xd7\xae\x8b\x44\x16\x8f\x6f\x23\x05\x96\xb3\xc5\xd7\xd4\xa1\x37\x75\xc2\xa7\x5b\xdb\x40\x69\xb5\x47\xb4\x7e\x90\x6d\x9d\xd2\xa2\x31\x45\x5d\xf9\x39\x73\xed\x99\x0c\x8e\xdf\x34\x04\x76\x4b\x21\x0c\x6d\x70\x57\x37\xc4\x6d\x61\x4e\xcc\xd9\xd3\xc2\xb0\x5c\x56\xfe\xa0\xa5\x57\xc5\x9d\xe1\x32\xcf\x14\xa5\xa8\xdb\x8d\x27\x1a\x16\xe9\x86\x6d\xcb\x0f\xbb\xee\xee\xa9\x25\x5b\x86\x94\x0c\x45\x0a\xa8\xea\x99\xd4\xba\xad\x84\x53\x11\xbb\x4f\x58\x34\x8e\x82\xb4\xc5\xd3\xa9\x0b\xc7\x2a\x19\xb7\x7b\xac\x49\xbd\x3d\xb9\x64\xcf\xda\x06\x35\x19\x14\x95\x5b\x4a\x2a\x5b\xb2\x28\xb8\x10\xcd\x08\x1b\xdc\x11\xf9\xe1\x72\xb1\xf0\x83\x7d\x75\x69\xe4\x67\x70\xdd\x8a\x68\x19\x33\x5c\x45\xa5\xe5\x38\xe6\xab\x5a\xdc\x6b\x6e\xa6\x99\x30\x4a\xf0\xa4\x18\xdd\xfb\x0f\x39\xa6\x25\xf2\x26\xfb\xef\x08\x3b\xe2\xfc\x88\x68\x1d\xa9\x59\xa3\xd0\xb9\x9a\x46\x71\xc2\x1c\xc5\x2b\x65\x61\x45\xbe\x32\xe0\x50\x34\xa6\x28\x99\x8a\x18\x17\x7a\xed\xc0\x09\x8c\x70\xb1\x56\x77\xd5\x7c\xdd\x8d\x7d\x46\x02\x6a\xd3\xa9\x6d\x65\x48\x6d\x72\x14\xb5\x20\xbb\x76\xd0\x74\xb7\xa0\x3e\xad\xba\x25\xcd\xf8\x9c\x4d\x8d\x9f\xa6\x86\x9a\x9a\x3f\x61\xad\xf9\x93\x76\x33\x7f\x5a\x2c\x83\x59\xa0\xc6\x6a\xb3\x78\x1b\xac\x67\xdc\xcc\xa0\x08\xf2\xf6\x2f\x21\x37\x2b\x03\x9b\xb2\xa2\xf5\xe5\x1a\xcc\xd7\x4f\xb3\x67\xcf\x1a\x42\x6a\x5a\xae\x29\x0b\x5a\x11\x7a\x9b\x69\xc3\xd3\x5a\xa1\xc5\x68\x6b\x81\xfd\xe6\x46\x7e\x39\x52\x5f\x26\x34\xb0\x18\xb8\xfc\x65\x85\x5d\x2c\x67\xf4\x42\x65\xe3\x15\x6c\x67\xfc\x48\x22\x7c\x51\x1f\xc0\xbc\x60\x51\x9c\xec\x85\x64\xb6\x87\x2e\x11\x66\x5a\xb4\xbe\x9f\x98\xe5\x8b\xbd\xff\xfa\x71\xb0\xc0\x7f\xb3\x5b\x37\x6a\x6d\x15\x03\xab\x8e\xac\x34\x03\x6d\xb3\xa9\x96\xef\x95\x5e\x60\xba\x27\xd5\x4b\x67\x65\x59\x7c\xa3\xd3\x9e\x6d\xc9\xc6\x11\x78\xc6\x09\x57\xbe\x8a\x2a\x27\x47\x3a\xb1\xfa\xaa\x45\x3c\x5e\x4c\x26\x93\x4a\x8f\x88\xfc\xd1\xf5\x2d\x9c\x45\x7a\x22\x4a\x61\x61\xca\xa4\xa8\xc6\xe3\x48\x59\x30\x14\x7a\xae\x0e\x56\x11\x09\xef\x2a\x6e\x65\x19\x46\x94\x5d\x7f\xbc\x9e\x23\x10\x25\x27\xf0\x32\xc2\x93\x95\x6b\x10\xa4\x0a\x90\x03\x3a\xcb\x3e\x33\xcf\xa7\x43\xe8\xf7\xdc\x2c\x85\xc3\xf2\x54\x3a\x8f\x2b\xa2\x7b\xb2\x13\xfb\xe8\x51\xfa\x37\xf6\xd1\x48\x4a\x93\x3b\x28\x4e\xd0\x32\xb9\x8a\x38\x7f\xc0\xfe\x32\x80\x09\x52\x86\xf5\xd0\x1d\xa2\x11\x7b\x29\x3f\xf1\x69\x87\xda\xe2\xbe\x73\x4e\x11\xbc\xd8\x11\xcf\x4a\xc9\x41\x3f\x2b\x3e\xc9\x67\x95\x48\x61\x3e\x2b\x1d\x4c\xa1\x3b\xe4\x9f\x14\x83\x91\xef\x89\x10\x42\xf9\x9e\x8c\x26\x74\x57\x68\x24\x88\xfa\x12\xf5\xd3\xf8\x3e\xe4\xab\x98\xac\xa5\x92\x5b\xb3\xcd\x48\x7d\x42\xbd\xc1\xee\x68\x84\xfa\x82\x18\x7f\x19\x7b\x4c\x72\x99\x75\xaf\x83\x7b\x8c\xa5\x94\x4c\xab\xe4\x5d\xc1\x02\x10\x40\x47\xde\x3e\x60\x9c\x9d\x22\xdf\x43\xfc\x6a\xb5\x33\x60\x0c\x0c\x6a\x94\x18\x97\x7e\x2e\xdc\x57\x04\xcd\xdf\xc6\x7d\x49\xfc\x69\x50\xa5\xe9\xe1\xb2\xfd\xb8\xda\x31\x5d\x7b\x85\x40\x4d\x0a\x96\xaa\x2d\x71\x0e\x7a\x3e\x6b\x3d\x60\x00\x9b\xf7\x83\x82\x80\xf9\x4b\x28\xb6\xb1\x18\x96\x99\x5d\xf7\x50\x80\xe4\x03\xba\xe9\x75\x99\xbf\xde\x38\x87\x31\x0e\x4d\x7a\x0f\xde\xdc\xe4\xae\x70\xce\x66\xcb\x17\xb8\x10\x62\xd3\x57\xf8\x4d\xae\x62\x39\x86\x65\xf7\x93\xdc\xd3\x9d\xf4\xc6\x45\x2f\x8b\x37\x68\x86\x2a\x79\xf1\x4a\x9e\xd5\x57\xe5\xb5\xa4\x07\x89\xf3\x42\xc0\xc7\xf4\x87\x35\xaf\x2b\x92\x93\xd4\xe5\x79\xe5\x7b\x1f\x67\xa3\x4b\x80\x3d\x2c\x87\xc6\x7d\x3d\x8c\xbf\xf2\xfd\x15\x90\xa4\x6a\x71\xff\x89\xc5\x54\x83\x80\x1a\x41\x48\x99\xb2\x3e\x0e\x4c\x2d\x4e\x4e\x9c\x4a\x2f\x1c\xf3\xc3\x52\x54\x26\x4b\x83\x05\xc9\xd8\x11\x9e\x34\xe1\x74\xd4\x34\x96\xee\x27\x32\xf7\xd6\xcf\x22\x14\x55\x74\xe2\xbf\xc8\x42\xc6\x0f\x26\x73\x14\x44\xe3\x6b\xa1\x96\x88\x06\x43\xf0\x12\x01\x87\x50\x87\x5f\xac\xfc\x0b\xc5\xb1\xfc\x1d\x19\x30\x38\x42\x37\x37\xae\xcb\xff\x7d\x29\xd6\xa9\xd7\xe0\x0f\xc5\x47\x8d\x55\x11\x29\xb9\x5e\xec\xb0\xc4\xdc\xc3\x28\xfb\xf2\xd3\xe5\xb3\x83\x13\xf4\x4f\x68\x15\x6f\xea\x5b\xd1\xaa\x0c\xe6\xc7\x79\x5b\x99\x1b\xc3\xdf\x5a\x55\x8a\xd3\x69\x19\x52\xb8\xcc\x72\xe0\xcb\xc9\x17\x5c\xfd\x85\x34\x82\xbd\x69\x14\x86\x42\x78\xe2\x8f\x6b\xc5\x38\x61\xd7\x42\x5b\xbe\x8a\x42\x36\x1d\x3a\xfb\xdf\x4f\x51\x34\x99\x32\xfe\xd7\x98\x70\xe9\x31\xfa\x0d\xf1\x0f\x73\x18\x0a\x77\xa1\xb3\xff\xfd\x0c\xd2\x49\x84\xf9\x5f\x5a\x65\x6e\x59\x2f\x6d\x33\x29\xcb\xd8\x76\x23\x99\xb3\xe8\xb3\x93\x1e\xb7\x94\xab\xa9\x58\xd5\x3f\x1f\x6a\x72\xdf\x1d\x65\x3f\x9e\x1e\x9e\xbd\x34\x3f\x94\x03\xf6\x4b\xe3\xec\x5b\xc7\xd9\x37\xc7\xd9\x3f\x1b\xf2\x05\xab\x3b\xc2\xd5\x63\x1a\xa1\xd1\x2f\x91\xe7\x8b\x67\x56\x00\x8e\xd0\x29\x4b\x7d\xed\x70\x57\x44\x3a\x53\x0f\x02\x6c\x3a\xd8\xe5\xda\x56\x0d\x62\x65\xab\xdc\x55\x8e\xcb\x5a\x99\x52\xa2\xf9\x1e\xa5\x4a\xed\x98\x76\x11\x9c\x08\x17\x79\xf2\x06\x73\x5a\x42\x01\x97\xad\x86\xbb\x83\x5b\x12\x67\xf4\x43\xf0\xb7\xeb\xb7\x2d\x1e\xac\x4a\x43\x69\x25\x15\xa5\x0a\x70\x4c\x12\x53\xff\xad\x16\x89\x6c\xd0\x15\x7f\xac\xc1\xc0\x16\xb3\x53\x24\x8b\xd2\x22\x81\xda\x2d\xa5\xd8\x17\xe0\x4b\x13\x57\x38\x8a\xfe\x3f\xf6\xde\x7d\xbd\x6d\x1b\xdb\x1b\xfe\x3f\x57\x41\x73\x66\x7b\xc8\x1d\x88\x96\xe4\xb3\xba\xd5\x34\x75\xd2\x36\xd3\x9c\x76\x9c\x74\x0e\x8e\xde\x3c\xb4\x08\x59\x6c\x28\x52\x05\x21\x3b\x8e\xad\xef\x7e\xbe\xdb\xf8\xae\xec\x7b\x70\x24\x40\x82\x27\x49\x4e\x9c\x79\xbb\x9f\xd9\x8d\x45\x82\x38\x2e\x00\x0b\x0b\x6b\xfd\x7e\x64\x1c\x7f\x0b\xe1\x15\x59\xad\xb3\xa7\x90\xd5\xc6\x18\xc8\xe2\xba\xca\x92\x8e\x55\xc5\x0e\x02\x5b\x17\x0b\xba\xb7\x43\x4f\x7f\xf8\x08\xea\x6a\xca\x79\x18\x07\x0e\x74\x1d\x77\x00\x73\x23\x20\xdf\x2c\x5d\x77\x4d\x3f\x2a\xc0\xe5\xb6\x51\x07\xc9\x01\x74\xcc\x5f\x71\x65\x4b\x6f\x96\x9b\xb3\xa2\x14\x54\xb0\x51\xb9\x9a\xa0\x8e\x35\xc0\xc3\x98\xeb\x27\xe2\xfa\x2d\x73\x7f\x22\x9f\x39\xc2\xce\x01\x58\x72\x6a\xc2\x98\xc3\x38\x37\x2c\x90\x7d\x41\x7b\xd2\xc1\x4c\x4f\x01\x68\xa8\x26\x21\xda\xaf\x6a\x2d\xe0\xde\x4d\xa5\xf7\xcb\xee\x03\x7b\xaf\x7f\x6c\x6f\x0d\x95\xf4\xf1\xed\xed\xcd\x92\x6d\xa9\x8b\xd4\x76\xb7\xb7\xa1\x54\xe2\xe9\xd8\xe7\xf4\x74\xac\xa8\xd0\xa6\x97\x64\xed\x2d\x0d\xb4\x62\xfd\x61\xd0\xe4\x79\x5b\xa0\xe2\xbf\x24\xca\x89\xdd\x1b\xe4\xc4\x25\xaa\x3a\xd3\xd1\xc9\x91\x54\x74\xf9\x07\xae\x38\x01\xdf\x05\x86\x4d\x02\x93\x36\x9f\x2c\x10\x82\x31\xa6\x6a\x1c\x1b\xb9\x64\x58\x78\xe1\xb8\x0f\x92\xed\x6d\xd6\x4f\x68\x11\x7b\xe9\x78\x0a\xc9\x86\xea\xb0\xab\x03\xe6\x9b\xa7\x1f\xb6\x73\x4d\x48\x94\xae\x42\xb4\x6f\x5c\xd2\x0c\x3a\xa0\x9a\xe8\x68\x46\x31\xd6\x47\x44\xbb\x94\x42\xc3\x45\x40\xe9\x41\xb6\xa8\x15\xda\x2c\xd4\xd1\xbc\x9e\x2c\xe4\x90\xbf\x5f\x55\x45\x64\x51\x07\x5f\xd7\xc3\x4b\x44\x3e\xe4\x40\x12\x8a\x38\x08\xaf\x9f\xbe\x39\x7d\x76\xfa\x36\xf3\x87\xe2\x3a\x32\x75\xdc\x02\x6f\x9e\xbe\x78\xf5\xdb\xd3\xec\xa5\xb4\x15\x2c\x97\xfc\x10\x52\xee\xc4\xc5\x7a\x3b\xa8\xf2\xe3\xca\xca\x2a\xc9\x83\x27\xa8\xce\x85\x17\x24\xbc\xbb\x4e\x9f\xbe\xcd\x7b\x92\x65\x45\xd5\x25\xd3\x3c\xca\x8c\x49\x9a\xfa\x89\x71\x29\x58\xc3\x4f\xcc\x24\x47\x5f\xcb\x4f\xec\x7f\x71\x9a\xce\x7b\x7f\xa0\xbb\xf7\x13\xbb\xe7\x6e\x61\xed\x1d\xa9\x44\x1c\x89\x0c\x73\x01\x4a\x18\x4a\x13\xb7\x2a\x93\x7d\x59\x06\xa7\xa8\x0e\x33\xad\xfd\xaf\x72\x21\x29\x0d\x02\x5b\xe4\x55\x2f\x59\x17\x8a\xbe\x27\x95\x5e\x3b\xfa\x85\xba\xb2\xce\x80\x6c\x5d\x69\xe7\xad\x55\x73\x8b\xd7\xd4\x69\x22\x2b\xbd\x01\xf4\x83\xb4\x7d\x17\xc2\xca\x38\xce\xea\x0f\x7c\xfc\x2b\xfd\x86\xe8\x37\xdc\x6f\x28\xc8\xe2\xe4\x56\x70\xfc\xf9\x96\x5c\xef\x1a\xc2\x3e\x34\x1d\x37\x45\x84\x36\x33\x72\x2d\x47\xec\xcf\xc1\x6a\x3b\xc9\x36\xe6\xdd\x22\x72\xdb\x90\x63\x4b\xfd\x88\x98\xbd\x5c\x5a\x47\x63\xb6\xf2\x8e\xd9\xbc\x9f\x95\xd1\x2b\xe6\x6b\x77\x45\x83\xd0\xb9\x8d\x79\xe0\x70\x3c\x0a\xdd\x03\x27\x0b\x3f\xad\x60\x17\x32\x7b\xdf\x9c\xb2\xfc\x4a\xbd\x6f\xfe\x95\x2c\x90\x81\x3f\x62\x4f\xa5\xc4\xd5\x62\x80\x0d\x94\x11\x14\xd3\xf7\x1c\xc2\x98\x53\xa0\x06\x5e\x2d\x0b\xc0\x8a\x2e\x38\x9b\x5c\x95\xeb\x3c\x70\x9a\x4b\x64\x85\x4c\x09\x37\xda\x5a\x61\x6a\xe2\xf8\x58\x57\xf1\x3b\x71\x58\xbb\x7b\xe9\xae\xf6\x2f\xbb\x47\xd2\x9d\xfa\x97\x55\xb2\xbd\x86\xef\xd8\xfd\x70\xae\xd5\x36\x30\x7e\x3a\xb8\xa7\x7e\x99\x5f\x65\xe7\xd9\x1c\x92\xd9\xc6\x27\x16\xf3\x9e\x6c\xe5\xb6\x59\x39\xb1\xe8\x3d\x67\x85\xcb\xa6\x86\xad\xc6\x0a\x4f\xa9\xff\x89\x75\xbd\x81\x29\xe7\x55\xc5\x6b\xb0\xf0\x01\x71\x78\xe5\xf6\xce\x51\x16\x58\x20\xa3\x43\x28\xde\x72\x9b\x50\x14\xa5\x57\xce\x91\xd6\x23\xc7\x12\x20\xd6\x5c\xb6\x52\xf7\x81\x82\x0f\x6c\xac\x4e\x2e\xf0\xa9\x61\xb0\xc3\x97\xdc\x48\x1b\x39\xb1\x36\x42\x16\xa8\xf1\x61\xbd\xa7\xfe\xa9\xaa\x65\xec\xae\xfc\x53\xeb\xe2\xe9\x8b\xbe\x9f\xb9\x78\x7a\xc3\x7d\xe1\xa6\xdc\x5a\xe5\xe5\x88\xd9\x2b\x05\x6f\x6f\x1b\x2d\xf2\x73\x44\x3d\x2a\x39\x4f\xe7\xf6\x76\xfe\x89\x53\x16\x14\x0d\x0b\xbe\xa8\xdc\xe8\x6b\xaf\xe2\x06\x4a\x3b\xb6\xc3\xd9\xef\xe9\x52\x78\x3f\x9c\x21\x76\x9f\xef\xfe\x34\xf9\x71\xfe\x73\x33\x67\x88\x52\x78\x7b\x3b\x03\x25\xe5\xd7\x2f\x76\x71\x49\xc9\x93\x37\x28\x78\x92\x06\x90\x4a\x32\x82\xca\x19\xa3\xd7\x03\x44\x73\x8d\xc2\xf1\xc7\xf2\x98\x51\x7e\xee\x67\x17\x46\xda\xc9\x9f\xe4\x6c\x44\x85\x14\x2d\x38\x61\x43\x63\x3d\xa1\x25\xae\x5a\x5f\x06\x28\xd1\xb2\xbe\xe2\xa3\x86\xd5\x3d\x91\x65\x6c\x88\x3f\xaa\x54\x38\x37\x89\xbf\xcd\x07\x45\x5f\x1b\x8a\xf8\x1b\x06\x80\xed\x9a\x99\x15\xa6\xe3\xe4\x12\xa2\xeb\xce\x78\xea\x87\xcd\x71\xa2\xf3\xdf\x51\x0f\xec\x6a\xfc\xc2\xb6\xe8\x85\xf4\x02\x31\x07\x60\x98\x87\x2f\xdc\xd2\xe1\x0b\xb7\xb7\x2b\xc1\x0b\x4d\x80\x78\x25\x10\x89\x7f\x22\xfd\x95\x21\xfd\xad\x86\xf3\x97\xce\x11\xf4\x83\x3f\x21\xfe\xd6\x83\xf8\xdb\x7d\xf6\xc7\x8b\x7f\x5d\x3d\x3c\xad\xa4\x5c\x0b\x20\xbd\xf7\x11\x04\x6c\xa6\x87\xfc\x57\x3a\x8f\x42\xcc\x50\x01\x59\xd4\x71\x8e\xb4\x8d\x24\x7b\x43\x64\x34\xff\x3d\x4b\x5d\xfa\x5a\xfd\xa7\xc2\x23\x90\x86\x96\xa7\x4f\xc2\x74\x1e\xf9\xd7\xd4\x00\xd2\xc0\xfb\x8f\x3b\xef\xd5\xf0\xde\xd2\xd0\x07\x18\xf1\x38\x44\x3b\x4e\x82\x06\x6c\x17\xd9\x3e\x5c\xf2\xb9\x66\x41\xb8\x51\x4e\x4f\xc9\xdc\x1f\x87\xf8\x7a\x60\xf5\xac\xad\x70\x46\x16\x4e\x3f\xc6\xdf\x65\xf1\x63\xe4\xff\xce\xfd\xf1\xc7\x0b\x94\x2c\xe2\xa0\x33\x4e\xa2\x04\x0d\xac\x4b\x1f\x39\x9d\xce\xd5\x34\xc4\xd0\xfd\x4e\x4d\x49\xa7\x82\x78\x1f\xc0\x71\x82\x3a\xec\x59\xa7\xd7\xed\x1a\x92\x76\x90\x1f\x84\x8b\x54\xff\x82\x3d\xeb\xf4\xcd\x5f\x68\x55\xb8\x40\xfe\x75\x67\xbf\x90\xf0\x53\x27\x9d\xfa\x41\x72\xa5\xe7\x0b\x23\x78\xc9\x0e\xa3\x07\xda\x17\xcb\xc6\xb4\x27\xb9\xde\x85\xc1\xc5\x3a\x83\x23\x3e\x6f\x30\x38\xcd\x2b\x2b\x25\x2e\x0f\x77\x5d\x01\x0b\x8e\x92\x05\x66\x36\x1b\x23\xf6\x37\xe7\x07\xac\x21\x52\x99\xf6\x1b\x90\xd4\x50\xad\x87\x6c\xbb\x36\xb0\x4f\x99\xdf\xa1\x81\x0e\xc9\x7a\x43\x2a\x84\x8a\x46\x6d\x0d\x6b\xbd\xc2\x3c\x47\x26\x71\x11\x91\x5d\xa0\xd0\x67\xdf\xbe\x4b\xa1\x45\x1b\x8f\x52\xb2\x7e\x87\x31\x86\x68\x0c\xc9\xba\x8f\xfc\xc9\x24\x1c\x5b\x8b\x34\x8c\x2f\xac\xe7\x87\xd6\x98\x1e\xc2\x42\xdf\x4a\x17\xe3\xa9\xe5\xa7\xd6\xdc\xc7\x53\x6b\x8e\xe0\x24\xfc\x04\x53\x2b\x41\xd6\x14\xe3\xb9\xc5\xba\x2a\xf5\xcc\xa6\x0a\xf3\x99\x79\x25\xda\x6c\xa5\x59\x64\x6a\xce\xed\x5a\x7a\x71\x31\xc8\x0d\x41\x30\xf6\xb9\x58\x74\xc6\xd4\x47\x41\xc1\x52\xe5\x37\x7f\x54\xc1\x15\x34\xae\xca\x45\x9c\x11\xbe\x81\x27\xce\xdf\x95\x19\x30\xf3\xba\x2d\x79\x56\x6b\x85\x5b\x6c\x15\x77\x2a\xdf\xa7\xa2\x90\xbb\x97\x59\x59\x14\x25\xed\xa3\xba\xfb\xc5\x02\xc1\x80\xe9\x2a\x51\x88\xad\x30\x1e\x27\x33\x22\xb7\x08\xfe\xb1\x80\x29\x4e\x2d\x7f\x8c\x92\x34\xb5\x82\x70\x32\x81\x08\xc6\xd8\x12\x1c\x6b\x44\x70\xd3\xc5\x79\x0a\x71\x6a\x25\x13\xcb\xb7\x88\xbc\x47\x50\xbc\xbf\x6f\x72\x7c\x04\xec\x34\x41\xb8\x73\x4e\x5d\x22\xe8\xca\x21\x96\xd5\x6c\x94\xdb\x81\xbd\xec\x67\x12\xd2\x48\xd4\x7b\xc7\x9b\x12\xf5\xde\xf1\xa6\x45\x1d\xc1\x34\x89\x2e\xef\x58\xd4\xdf\x88\x42\xee\x5e\xd4\x65\x51\x54\xd4\x17\x29\x13\x72\xa6\xa8\x5a\x57\xd3\x70\x3c\x95\x9a\xb8\x10\x5f\x26\xb7\x56\x3a\x4d\x16\x51\x60\xa5\x3e\x0e\xd3\xc9\xb5\x25\xcf\x7c\x72\x4a\x7c\x3b\x92\xad\x0c\x6a\x6b\xc9\x16\xdf\x36\x93\xec\xa3\x8d\x49\xf6\xd1\xaa\x92\x9d\x5e\x5e\x68\x1d\x48\x03\x5d\x6c\x60\xf7\xba\xdd\xff\x12\x97\x0c\x2c\xe6\x45\x7d\xd8\x03\xf6\x65\x08\xaf\x7e\x4c\x3e\x15\xd8\x48\xba\x56\x57\x92\x91\xb0\xcc\x28\x1b\x89\x78\xc4\xf3\xca\x5b\x60\xe6\x08\x12\x49\x82\x8f\xd3\x39\x1c\xe3\x37\x44\x69\xa4\xca\x74\x0c\xd7\xdf\x67\x75\x57\xb8\x20\x99\x75\x32\x8e\x9b\x3c\x82\xf6\x5f\x38\xfd\x25\xc9\xf7\xd9\x93\xa6\x04\x89\xab\x96\xf0\x12\x7e\xc2\x2f\x93\xa0\x31\x11\xa3\x5e\x0e\xbe\x82\x30\x66\x2c\x9e\x06\x27\x3f\x72\x28\xbb\x96\x92\x76\x00\xc8\x13\x29\x6c\x81\xb8\x4a\xa1\x2f\xae\xe5\x0b\x3a\x9d\xb2\x17\x72\xb0\x40\xdf\xe0\x7d\x93\x63\xd3\x6f\xdd\x6b\xe6\x9b\x17\xa2\xe6\x19\x42\xb6\xca\xcb\x02\xf6\xf7\x35\x5d\x4a\xb3\x11\xb9\xa4\x97\x17\x9d\xf1\x02\x5d\xc2\x26\xdd\x76\x98\x75\x1b\xff\x75\x6d\x8b\xf8\x78\x05\xd8\xae\x2a\x17\xbd\xbb\xf7\xb5\x0c\xf7\x95\x39\xa2\x7b\xa9\xe8\x5f\x18\x07\x68\xbf\x66\x80\x58\x2d\xeb\xe2\xcf\x7a\x87\xa5\x37\x2a\xe5\x77\x2d\xfb\xa5\x6f\xf6\xb4\x43\x9c\x36\x4d\x8b\x0a\xc3\x26\xe6\xd1\x51\xdb\x89\xaa\x10\x5e\x92\x6f\xa9\x72\xb7\xe1\xc5\xa3\xfb\x45\xa7\x76\xbf\x6c\x6a\xf7\xcb\x24\xa7\xdf\x7e\x6a\x1f\x65\xb3\xad\xc3\x5b\xb9\x02\xab\x76\xf3\x29\x2e\xa5\x65\x90\x0d\xb3\x38\xb7\xca\xf9\x5e\xd6\xcf\xc5\xd3\x88\xd8\xb4\xe8\xf5\xde\x9c\x1c\x39\x63\xec\x5f\x40\x9d\x1a\x81\xe7\xf8\x0f\xd9\x33\xdd\x0d\xac\x20\xbb\xda\x84\xdf\x5d\x7b\x05\x39\x56\xf3\x3b\xae\x5f\x3f\x8e\x4b\x84\xe0\x78\x33\xab\x47\x29\xe7\x69\xaf\x5f\xfa\xa6\x0b\x7a\xbd\xb2\x97\xc7\x65\x2f\xf2\x0a\x4e\x43\x75\x26\xaf\xa8\x77\xc2\x38\x82\xf4\x02\xb0\x56\x89\xe9\x75\xab\x94\x96\xb5\x55\x92\xcc\xb1\x21\xc5\x3e\xc2\x69\xe7\x2a\x24\xb3\x22\x53\x3f\xb9\xe4\x1f\x54\x2c\x26\x9b\x58\xad\xaa\xf2\x6f\xb4\x73\xf3\x9e\x1f\x87\x68\xac\x58\x5b\xa9\x32\x6e\x03\xbb\xef\xed\x4b\x5f\x15\x22\xd3\xfb\xa2\xeb\xc7\xd7\x76\x5e\x56\x0f\x4b\x64\xf5\xb0\x52\x56\xeb\xa5\xb4\x74\x8b\x2b\x7b\x7e\xb0\xee\x2e\xa6\x6c\x32\xbb\x77\xb3\xc9\xac\xa2\x3e\x9a\x15\xae\x0d\x0c\x5c\x99\x8e\x52\xad\xa2\xd4\x0f\x5c\xa9\x9e\xb1\x57\xf6\x62\x77\xbd\x65\x42\x1a\x26\xee\xff\x32\x91\xdb\x20\x7b\x77\xbc\x4c\x54\xe5\xff\x85\x97\x89\x32\xbd\xa6\x5a\xad\xa9\x97\xb6\xd2\x1d\xab\x74\x27\x5b\xe1\x12\xa0\x27\x85\x2d\xd7\xcf\x19\x63\x2b\x79\xae\x5c\x7f\x30\xa0\xa3\xb7\xc2\x56\x43\x0e\xd3\xec\x11\x73\x0d\xcc\x35\xb2\x77\x24\xef\xbd\x72\x05\x88\x21\x1e\x58\xfe\x79\x9a\x44\x0b\x0c\xbf\xc3\xc9\x7c\x20\x84\xf7\x9a\x75\xc8\xa7\xef\x22\x38\xc1\xf2\xe9\x27\xf1\xd4\x36\xc9\x74\x99\x25\xaa\xdc\xc6\xc4\x9d\x02\xe9\xdd\x96\x6c\xa1\x4c\xc3\x94\xa2\x00\x8e\xc3\x99\x4f\x5d\x04\xce\xfa\x39\xa4\xf0\xff\xaa\x36\x6b\xdc\x0d\xbe\x86\xc9\xef\x61\x5d\xda\x96\x9b\x5a\x7a\xd0\x70\xfc\xb1\x14\x38\x82\xbd\xb4\x5d\x8a\x57\x71\x4a\x2f\xfe\xd3\x4a\xd8\x0a\x96\xc4\x76\x01\x15\x3e\xd2\xd8\x74\xc0\x21\x58\xb3\x96\xd9\xa3\xec\xf5\x8f\x61\x1c\x84\xf1\x05\x49\xc5\xa5\x6d\x04\x94\x0b\xd8\xc1\x56\x0f\x88\x8b\xb5\x67\xc1\xc0\xb6\xc1\xa7\x41\x17\x5c\x0f\xba\x80\x0f\xa6\x20\x82\x97\x92\x7b\xe7\xc8\x14\x97\x1c\x3c\x41\xbc\x29\x01\xe5\xda\x30\x0d\x69\xbe\xd4\x3a\x50\x07\x0e\xe8\x60\x42\x6e\xb8\x10\xc8\x0d\xd9\x35\xb7\xbb\x45\xb1\xd9\x9c\x1c\xb4\x43\x96\x40\xe0\x3a\xc8\x27\x8f\x20\xa9\xc1\x6b\x1f\x4f\x9f\x67\xad\x1e\x40\x8f\x49\x8c\x17\x30\xe0\x0d\x8a\xb0\xb8\x3e\x96\x83\xda\x22\x81\xba\x50\x28\xfc\xee\x70\xd0\xca\x86\x40\x7f\x9f\x6b\x39\x47\x21\x91\x7a\x5c\x01\xa0\x8f\x4e\x05\xef\x25\xbd\xc7\x07\x45\x00\x2a\x0a\xad\x76\x01\xb1\xbc\x15\x72\x9d\x3c\xdc\x9e\x9a\x83\xcb\xe0\x1e\xe8\x46\xdf\xbc\x28\x26\x88\xa2\x28\x7a\x39\x5b\x57\x0e\xd0\xc0\x56\xa8\x4b\xcf\x16\xf4\x26\x61\x1c\x38\x4e\x11\x16\xcd\xde\xb1\x87\x2a\x7a\x04\x04\xf6\x13\x38\xa1\xc1\xf8\x49\xec\x51\xe4\x7d\xef\x97\xb7\x6f\x5f\x7b\x64\x30\x5f\xd3\x4b\x57\x9b\xb4\x64\x7b\xbb\x22\x53\x2b\x83\xcf\xf2\xb2\xdc\x88\x9c\x31\x74\x0b\x80\x86\xca\xe9\x46\xc3\x33\x61\x4d\x51\x2e\xa8\x81\xed\xd9\xae\x21\x09\x5d\xba\xe6\xfe\xb8\x34\x41\xc6\x6a\xe8\x02\x7f\xa8\xa8\x49\x6b\x96\xa7\x00\x26\x0a\x88\x07\xa5\xff\xcf\xfc\xd1\xa3\x78\xe8\x0f\xca\x13\xa0\x11\x75\xd5\x42\x0a\xf0\x6b\x2c\x40\x2b\x6e\xb8\x87\xec\x60\xab\x0b\x9e\x3d\x19\x30\xbd\xb0\xae\xc6\x2e\xa0\x7b\x56\x49\x73\xb2\xfe\x1f\xdc\xd0\xe1\x1c\xdc\x90\xf1\x1c\xdc\x64\x03\x3a\xb0\x77\x28\xa4\x80\x50\xeb\x06\xf1\xf2\x01\x64\x8c\xba\x54\xf2\x18\xa0\x23\x15\x3e\xd7\x49\x40\x49\x41\xba\xd8\xb9\x92\x19\x17\x52\xb9\x17\x57\x29\x25\xa2\x7f\x43\xfb\x06\xbc\xa5\x71\xef\xe9\xb2\x6a\xbe\xc9\xab\x29\xd7\x3c\xda\xc0\x28\x24\xe6\x29\xc3\xcb\xb3\x8b\x74\x57\xc5\xa9\x7b\x81\xfc\xf9\xb4\x50\xfd\xec\x18\x28\x9c\x39\xbc\xb3\x91\x69\x0e\x4b\xf4\x0f\xbe\x4b\x7b\x34\x3f\xc7\xd5\x30\x12\x65\x6e\xde\x24\x41\x4f\xfd\xf1\xd4\xd1\xb6\x07\xec\xb1\x03\xa4\xe1\x6d\xec\xde\xd0\x05\xff\x79\x18\x7f\x74\xb0\xf7\xec\x09\x88\x3d\x31\x9e\x14\x10\xcf\xe5\x0b\x03\xaf\xa4\x31\xff\x5c\x0e\x58\xcb\x01\xd0\x81\x14\x7b\x7d\xb1\x23\xa4\x12\x40\xaf\xdd\xfc\xf9\xb4\xac\x17\xa8\x93\xa1\x44\xf0\xc9\xbe\xbb\xbd\xdd\xaa\x85\x3b\xca\x52\x4b\x5a\xe9\x9b\xe5\x83\x0c\x51\x50\x49\x00\xe2\x21\x66\x1d\xea\xd8\x03\xdb\xf5\xd2\x69\x38\xc1\x8e\x0b\xd0\xf0\x0c\x8f\x80\x3f\x3c\x1b\x69\x5d\x4f\xab\x2c\xba\x85\xf4\x01\x0c\x48\xcb\x1d\x6d\x87\x06\x89\x7b\x83\xd8\xcc\xc0\x5e\x18\xb8\xc0\x67\x3f\x6c\x59\xcb\x84\xba\x52\x3e\x0b\x80\xfd\x7d\xb6\x8c\x24\x1e\x4e\x48\x8d\x01\x2c\x2f\xc6\x0b\x83\xbc\x23\x2c\x5b\x13\xa0\x17\x06\x86\x76\x3c\x88\xb7\x86\xc3\x64\x7b\x3b\x73\xc8\x63\xa0\x68\xda\xef\x64\x7b\xdb\xe1\xf5\x85\xe6\xfa\x62\x53\x7d\x31\xaf\xaf\x10\x9c\x1b\xea\xcc\x36\x40\xde\xcc\x9f\x1b\x37\x91\x6c\x94\x4e\x4e\x4f\x3d\x98\x8e\xfd\x39\xe4\xaa\x05\xa0\xbe\x56\x03\x7f\x95\x6f\x29\x80\x09\x43\xdc\x2b\xa0\xe7\xaa\xba\x4f\xf3\x45\xc4\x52\x35\x15\x2f\x99\x4c\x52\x88\xff\x41\x0a\x20\x25\x71\x48\xbf\x3b\x2c\xea\x17\x5a\x02\x29\x2b\xaf\x1e\x95\x68\x9f\xad\xe0\x8a\xa0\x51\x37\x82\x99\x62\xb6\x45\x35\x44\xa6\xff\xc0\x60\x7b\xdb\x81\x79\x54\x27\x48\x67\x5f\x90\x8c\xa9\xca\xe5\xb8\xe0\x86\xde\x3d\x0f\x72\x38\x56\xc9\x8c\x61\x18\xa5\xd8\xf9\xdb\x19\x3d\x2a\xfc\x75\x68\xb3\xab\xee\xd1\xdf\x00\xf6\x18\x7e\x89\x7b\x7b\xab\x2b\xac\xe2\xb8\xba\xd5\xd3\x51\xfb\xf4\xc5\xc3\xa6\x03\x0f\x62\x5e\x19\x5e\xfb\xd4\xa1\xd7\x05\x6c\x26\xd8\x59\xab\x5c\xb7\x6c\x2d\xcb\x03\x56\x81\x9b\x59\xb2\x48\x21\x39\xe7\x18\x20\x81\xad\x0c\xeb\x2c\x9d\x26\x57\x74\xa1\xe5\x6a\x28\x04\x67\x78\xe4\x2e\x01\xfb\x7c\x81\xab\xbf\x9e\x86\x01\x34\x7c\xbd\x64\x7a\xb6\x06\x4d\x2a\x0b\xd2\x21\x70\xd9\x3a\x86\xb9\x43\x70\x08\x53\xe7\xe6\xd3\x00\x72\x11\xfa\x27\xb8\x96\x7f\xff\xab\xb3\x2f\x8f\x59\x90\x77\x3a\xdd\x63\x52\x88\xbd\xec\x76\x23\x7f\xfe\xea\x2e\xdd\x25\x90\xd5\x54\x25\x2f\x1f\x96\xa3\x9b\x1c\xc8\xb8\x2d\x41\x4e\x20\x32\x3e\x47\x6f\xcc\xd0\xb6\xd8\xa4\x20\x7b\xa9\xe4\x84\x74\xec\x30\xb0\xdd\x07\xb8\xb8\xe8\x3f\x2a\x10\x36\x9a\x85\x84\xe3\x5e\xe5\xe4\x64\x50\xfe\xb5\x09\x35\x4b\xf9\x1a\xaf\x44\x8b\x68\x0c\x60\x28\x0f\x27\x92\x9e\xe4\x58\x85\xf1\xe5\x5e\xdf\x1f\xe1\x75\xca\x5d\xee\xf9\x93\x0b\x88\x5f\x5d\xc5\xc2\x0f\x9c\xb9\xa9\xa7\x02\xaa\xb3\x2a\x0d\xc9\x86\x9c\x0e\xd1\x10\x79\x93\x30\xc2\x10\xe9\x73\x81\xcb\xa8\x31\x8b\x27\x30\x1d\xa3\x70\x8e\x13\xe6\xed\xee\xc1\x78\x31\x63\x8e\xf4\x44\x5e\x41\x4c\x37\x0c\x2e\xca\x31\x40\x02\x5c\xdb\x8a\x97\x7a\x9c\x46\xe6\x01\xdf\xfb\x2e\xfe\x9f\x3c\x20\x28\xf5\x80\xbf\x61\xde\xea\xf1\x22\x8a\xb6\x14\x54\xd0\x58\x45\x05\x8d\x47\x83\x9b\xe5\x83\xf8\xbf\xfa\x8f\x30\xef\x16\xc7\x77\xc9\x68\x9a\x67\x39\xad\x34\xf0\xe9\x0c\x73\xdd\x41\x4d\x0b\xd3\x47\x26\x8f\x7b\x32\xc1\x20\xa8\xfb\xd4\xf1\x5d\x77\xa0\xd4\xa9\xa4\x42\x65\x2e\xfd\xb8\xae\x00\xc7\xa7\x32\xe9\xba\x99\xde\xac\x07\x22\x80\x38\xdb\x59\xac\x30\xb6\xa0\xb1\x31\xac\x2c\x1e\x33\x10\x83\x6c\x34\xc9\x91\x42\xb8\x2c\x8a\xdf\x57\x28\xc4\xfc\xef\xa5\x3b\x80\x67\x78\x34\x8c\x81\x52\xae\xaf\xf1\xe8\x36\x0c\xc1\x81\x25\xd1\x31\x4a\x04\xce\x50\x8f\xc0\xb9\xbd\xdd\x72\x2a\x63\x70\x44\x58\x0d\x93\xaf\xb3\x11\x40\xc3\xad\x2e\xf0\x87\x5b\x3d\x90\x88\x48\x08\x8c\xae\xa5\x0c\xa6\x20\x1c\x42\x43\x9c\xc7\x77\x5b\x0e\x1a\x3a\xe9\x30\xf4\x62\xf8\x09\x3b\xae\xeb\x05\x49\x0c\x5d\x72\x1e\x63\x7a\x51\xea\xd1\x8e\x73\xc1\x16\xbe\xbd\x8d\xb9\xec\x92\x43\x9c\xfb\x1d\x29\xd2\xfd\x8e\x03\x00\x46\xee\x8d\x4f\xaa\x90\x0c\xa3\xe5\x24\x8c\xfd\x28\xba\xa6\x60\x81\xe8\xf6\x96\x05\x8b\x84\x1e\xab\xf2\xed\xad\xf8\xcb\x71\x65\xca\x70\xe2\xf8\x1c\x4a\x3a\x59\x66\xf3\x89\xf6\xd4\xea\x61\x45\xc9\xff\x35\x61\x45\x89\x08\x2b\xd2\xfb\xab\x79\x60\x11\x35\x01\x2d\xc6\x78\x81\xe0\xd7\x8b\x2e\x4a\xee\x61\x74\x91\x72\xd2\x1f\x42\xed\xb0\xcd\x7f\xd2\xc3\x23\xfb\x5b\xda\xbd\xd8\xcf\xc7\x64\xdb\x89\x7d\x0c\xb9\x4d\x20\x55\x43\x94\xd2\xe1\xa6\x20\xa3\x6f\x96\x00\x17\xbf\xed\x29\x89\x7a\x23\x6e\x7c\x79\xa0\x6f\x7b\xb4\xa1\x64\xab\x2c\x6e\x91\x0a\x27\x90\x47\x24\x87\xa8\x29\x54\x53\x0b\x87\x26\x1c\xfe\x42\xf1\x7d\x63\xd5\xfb\x6a\xd5\xfb\xa3\x81\x2d\x90\x04\x81\x09\x78\x5b\x47\xd8\xd6\x5b\x90\x99\xd3\xce\xf0\x88\xa8\xed\x64\xa5\xbe\x79\xf6\x64\xa0\x9c\xe3\x34\xbb\x55\xac\xfd\x42\xc2\x42\x04\x4e\xa6\x61\x14\x20\x18\x0f\xce\x46\x64\xbc\xcf\xf0\x68\x09\x22\x53\x1b\x01\x1a\xc2\xe2\x89\x8d\x83\x86\x3b\x67\x18\xc0\x51\xd9\x81\xce\x82\xe2\xb4\x4a\xaa\x80\x20\x91\x1e\x48\x11\x83\x41\xdf\xa5\xa4\xd9\xdd\x11\x48\x29\x77\x36\x08\x87\x67\x76\x66\xb9\xb1\x81\x2d\x0d\x36\x59\x94\x0a\xf9\x8b\xfa\xc9\xdb\x52\xb6\xd3\x82\xe5\x31\xe3\xe8\x86\xe4\xd8\xab\x60\x85\xb3\x15\x2c\x24\x1a\x02\x40\xec\x3c\xcb\x5f\xdd\x90\xa1\x1e\xc4\xe2\x10\x37\x40\xcb\xe5\x83\x12\x51\x8e\x1e\xe4\x44\xde\xd0\xec\x94\x1e\x64\xc4\xe1\xdb\x35\xf7\x1e\x99\xd5\xa4\x8d\x4a\x17\x49\x2b\x44\xd6\x57\x00\x4b\x6b\x85\xfa\x34\x76\x62\xe7\x66\x09\xa0\x0b\x6e\x96\x80\x0e\x7f\xd1\xa8\xc9\xb2\x17\x03\xee\xfd\x9e\x84\x31\x2d\x85\x1e\x3f\x78\xfb\xf8\x2c\x36\x92\xe5\xd3\x56\xb0\xc0\x1c\xdb\x48\x86\x1e\x2b\xe3\x2c\xa4\xcd\x63\x39\x96\x4a\xc4\x82\x7c\xe7\x31\x2b\x21\x3f\x06\x51\xf4\xe5\x07\xb9\x35\xa6\xd8\x5b\xc5\x99\x6e\x9c\x6a\xbd\x91\xbe\x00\x64\x53\x6d\xe5\xd9\x7a\xb3\x34\x4e\xd3\x46\xf8\xf8\x37\x4b\xe0\x0f\x6f\x96\xe6\x05\x08\x55\x2d\x40\xd2\x2c\x4e\xa9\x21\xe8\x62\xb4\x34\xaa\x9a\x02\xc2\x1f\x24\xc3\xb8\x20\x51\x89\x52\x5d\x07\x0d\x13\x21\x4d\x2e\x48\x14\x71\x92\x8f\xb5\xbf\xe4\x7b\xb6\x70\x83\xc5\x30\xc9\xa4\x08\x8c\x87\xa1\xe3\x83\x05\xc0\x20\x67\x07\x8f\x3d\x31\x8c\xde\x4f\x7e\x18\x91\x53\xd2\xf6\xb6\x93\x0e\x23\xc7\xf0\x46\xd8\x5d\xb9\x50\xb8\x2e\x40\xac\x39\xc1\xf0\x86\xcd\x75\x6e\x00\xe7\x42\x43\x85\x19\x2d\x33\xee\x93\x74\x7b\xdb\x09\x64\x76\xc3\xd4\x05\x63\x4f\xac\x6d\x4c\x93\x0b\xdc\x25\x8c\x24\x7f\x10\xff\x64\xac\x7e\x42\x16\x24\x7d\x64\xe2\x92\x8e\x56\xdb\x89\xce\x0c\x37\x17\xb1\xf7\xec\x89\x3b\x12\x06\xbb\xc8\x39\x23\x0f\x46\xe4\xc0\xc9\x63\x79\xcc\xab\x34\x74\x99\x66\x24\x16\x3a\xb2\x72\xd1\x21\x67\x39\xa5\xb4\xaf\xa5\x91\x9d\xf6\x39\x58\x0c\x6f\xde\xc0\x20\x44\x70\x9c\xf5\xd1\xb3\x27\xac\x87\xe2\x33\xf6\xf9\x48\xe9\xa9\x8a\xfa\x1a\x47\x6c\x91\x75\x51\xe4\xb4\xfa\x58\x19\xd4\x67\x4f\x5c\x17\xa4\xb9\x11\x59\x70\x92\x25\xbd\xcf\x7d\x97\x99\x6f\x17\x3a\x43\x05\xca\x98\x66\xb4\x45\x4f\xdc\x8f\xd0\x7b\x25\xf2\x97\xc2\x36\xa7\xde\x35\xb1\x9b\x2b\xe3\x1d\x0a\xb0\x3b\xca\xd6\xe8\xa8\x5f\x91\x85\x89\x2c\x4a\xaa\x1a\xb4\xa8\xb5\x0a\xc0\xd9\x39\x0b\x8e\x8d\xa0\x88\xdd\x50\x90\x10\xf2\x6f\x2b\xbf\x5c\x9f\x7c\xae\xf4\x03\xb9\x22\xde\xe8\x67\xc2\x0b\x88\x4d\xe0\x33\x12\x04\x86\x6e\x1c\x4d\x3a\x20\xf6\x71\x78\x09\x3b\xe9\x18\x25\x51\x44\x72\x6f\xdb\x0f\xc5\x0c\xbe\xe5\xee\x98\x27\x73\x32\x2b\x4c\x9d\xc0\x4d\x76\x69\xf9\x47\xdf\x72\xc3\x33\xff\xa5\x16\x0d\xcf\xbc\x83\xbe\xcd\x86\xcf\xf1\x35\x23\x85\xae\x83\x51\xff\x3a\xf4\x92\xfe\x1f\xff\xfc\xe3\xc9\x6f\x07\x0f\x6b\xe8\x25\x81\xbd\xed\x63\x4c\x83\x18\x0d\x3c\x93\x79\x60\x1e\xea\xce\x26\x5c\xb2\x7a\x7d\x05\x83\x2e\xeb\x0e\xea\xbd\xb7\x0b\xfa\x35\xb0\x0b\x53\x3f\xfd\x85\xc5\x47\x36\xc2\x73\x28\x8d\xa5\xb4\x1b\x80\x67\x4e\x45\x41\xb5\xa0\x82\xbd\x46\xd8\x6c\x75\xe5\xa5\x8b\xf3\x4d\x17\x69\x70\x32\x5c\xa7\x86\xe7\x49\x70\x5d\x51\x39\x83\xf7\xa2\x29\x7a\xb5\x20\x22\x46\xd0\xbe\x23\x60\xc3\xf8\x92\xcc\x8f\x93\x57\x2f\x4f\xdf\x3d\xff\xf0\xf8\xe4\xf9\xe9\x87\xa7\x2f\x1f\xff\xf8\xfc\xe9\x93\x1c\x0f\xa9\x1f\x45\xc9\xd5\xf3\xe4\x22\x8c\xdb\x06\x60\x1e\x02\x8e\x31\xa8\x3a\x22\x4e\x28\xfc\x5e\x44\xf2\xeb\xe0\xe4\xe2\x22\xaa\x84\x1a\x95\x30\xdc\x9c\x6a\x43\x41\xf7\x57\xf1\xb7\xe9\x08\x43\x8c\xa9\x8b\xdc\xce\x0e\x5b\x1e\x06\x38\xf9\x08\xe3\x2a\x0c\xaa\x1c\x6c\x36\x4b\x5f\x06\x9b\x2d\xc0\xef\xb5\xc8\xcf\xfc\x14\xe2\x45\xda\x8f\x29\x10\x6a\x82\x94\x58\xa8\x3a\xff\xef\xe7\xc9\x85\x15\xc6\xd6\x55\x88\xa7\x96\xaf\x84\xaa\xd3\x2c\x57\xa2\x36\x17\x79\xd6\x82\xa1\x16\x03\x54\x1b\xc0\x20\x6e\x4e\xf2\xf9\x4d\x5c\xbd\xf0\x2f\xa2\xe6\xb2\xdf\xae\x8a\xc7\xeb\x78\xa4\x16\x36\x9e\x75\x99\x75\xcd\x28\x85\x57\x61\x14\xb1\x0b\xe7\x76\xfe\x7a\xf9\x0b\xb8\x6c\x99\xe7\x1e\x7b\x61\xfa\x06\x5e\x84\x29\x86\x08\x06\x8e\x58\x99\x5d\xce\xe6\x94\x7b\x9b\xad\xa3\xcc\x31\xa0\x15\xdd\x0d\x05\xdf\x2c\xdb\xa1\xbf\x06\x08\xe0\xfc\x59\xdc\xdf\x79\x7c\x75\xb0\x02\x23\x62\x9c\xe0\x8e\xc2\x8a\x58\x04\x21\xb5\xf7\xba\xbb\x4d\xb9\x11\xf7\xf5\xed\x1a\x9c\xa9\x3b\x79\x3e\x14\x8f\x96\xd0\xb1\x41\x49\xc1\x19\xe4\xed\x19\x59\x2d\x9b\x80\x6a\x67\xaa\x51\x11\x58\xb4\x72\xd7\xac\x01\x4e\x28\x62\xce\x8a\xda\x4a\xac\xc4\x11\xb0\x4f\xa8\xa8\x58\x4c\xe5\x83\x81\x84\xb0\xb5\xf3\x50\xb4\x79\xc8\x81\x4a\xb0\xd5\xfc\xca\x5c\xd2\x4f\x55\x2b\x4e\x4d\xcf\xd4\xa9\x14\x85\xce\xd9\x35\xc2\xfa\x6a\xd8\x40\xe5\x58\xb6\xad\x1a\xdf\x68\xf1\xae\x69\x5e\x85\x3e\x92\x6f\x99\x19\x1a\x93\xfd\x1f\xe5\x66\xf5\xaf\xd9\xcd\xcc\x65\x98\x86\x98\x0c\xb1\xf5\xee\xcd\x73\x0b\x4f\x7d\x6c\x85\xa9\xc5\xe9\xe3\xc8\xc0\x2f\xe2\x8f\x71\x72\x15\x5b\x08\x72\x4a\x2e\x2b\x4d\xac\xeb\x64\x61\x8d\xfd\xd8\xc2\xe8\xda\xba\x48\x48\xca\x73\x7f\xfc\xd1\xc2\x89\x85\xa7\xd0\x42\x49\x82\xad\x04\xd1\xb7\x08\x76\xd2\xc5\xf9\x2c\xa4\x9a\x00\xc3\x3e\x7e\x7c\xf2\xdc\x7a\x4b\xb6\xd0\x9d\x53\x38\x46\x10\x3f\x7b\x62\x9d\xe7\xb3\x79\x7c\xf2\x3c\xf5\x2a\xf1\x2e\x2a\xe1\x79\x1b\x75\x67\xf5\x26\x97\xef\xd1\x28\x34\x06\x44\x91\x0a\x77\x22\xce\x2c\x62\x46\x99\x3a\x04\xb6\xaf\x47\x7e\x10\x05\xcc\x9e\x26\x33\x89\x26\x3a\x65\x24\x47\x34\xca\x15\xc1\x09\x0b\x6c\xe6\xd0\x71\x85\xb8\x92\x9f\x13\xd9\x4d\xa4\xa7\x9b\x01\x84\xd4\xb5\x23\x48\xc6\x69\xab\x76\x28\xb5\x3e\x36\x2a\xb0\x4f\x5e\x9d\x9c\x7e\x78\xf7\xe6\xb9\x86\xcf\x91\x35\x3f\x4e\x92\x39\x8c\x21\xb2\xe2\x04\xc1\x09\x44\x88\xe1\x88\x53\xb4\x51\xc1\xf2\xf4\xe1\x3c\xf2\xb5\x1a\xbd\x81\x7e\x40\x45\x4c\x78\x62\x49\x40\xf5\x26\x10\x29\xab\xe3\xcb\x37\xd7\xf4\x6a\xf7\x0e\xb1\x5b\xd0\xbd\xe8\x1e\xec\x08\x5d\x40\xc9\x9a\x7d\x7a\xe5\x8b\x2d\x7f\x81\xa7\x09\x0a\x3f\xc3\xe0\x6e\x26\xdd\xa6\x96\x68\xb6\x95\xdf\x41\x05\x37\xb9\xc8\x2e\x52\x6c\x9d\x43\xeb\x02\xf9\x31\x59\x63\xe7\x10\xcd\xc2\x34\x25\x8b\x0e\x99\xbc\x97\x21\xbc\xa2\xce\x90\x94\x1c\xdb\xb3\x1e\xa7\x1f\xd9\x02\xe9\x07\xb3\x30\x0e\x53\xcc\x3d\x3e\x26\x74\xb9\xc5\xd3\x30\xa6\xef\x05\x92\x10\xbb\x58\xa7\xa7\x9a\x6f\x62\xa5\xbc\xfb\x15\x06\xd8\x3b\xfe\x38\x12\x0a\x3f\x9e\x31\x1c\xe3\xaf\xb9\xe6\xd4\xf5\x49\x04\x7d\x14\xdf\x41\xa7\x3c\x7f\xfa\xf8\xcd\xcb\x5c\xd7\x30\xfd\x7f\x27\x85\xe3\x05\x0a\xf1\x75\x27\x86\xf8\x2a\x41\x1f\xc3\xf8\x62\x67\x8e\x92\x60\x41\xc7\xb8\xe3\x8f\xa3\x74\x23\xdd\xf6\x53\x12\x45\xc9\x15\xed\xb8\x8b\x45\x18\xc0\xaf\xb3\x48\xaf\x75\x88\xcc\x9f\x8d\x36\x88\x41\xdd\x16\x5a\x9a\xc2\xc4\xdf\x2b\xea\x7a\xff\xe1\x14\x1d\x1c\xa0\xbd\x1a\xd3\xa9\xd1\x62\x6a\x04\xf4\xa0\x8e\xd3\x76\x05\x95\x88\x4c\x91\x41\x70\x6c\x04\x73\xbc\xd8\xb7\x7f\xf2\xc3\xaf\xce\x0f\xbf\x11\xba\xf7\xd6\x2c\xf3\x54\x34\x5e\xc5\xdc\x87\x7f\xb0\xd5\x2d\x72\xc3\x0b\x0f\xf2\x1c\x95\x33\x64\xbc\x7b\xee\xca\xec\x10\x35\xc1\xb7\x8d\xa2\x3b\xf5\xea\xe7\xf8\xb9\xf3\x24\xef\xe0\x6c\x54\x1b\xf2\x59\x47\xe5\xbe\x7a\x48\x6b\x3e\x20\x2c\x45\x63\x4f\xfa\xcf\xd2\x2b\xe6\x05\x0a\x69\x5c\x6e\x21\x25\x1d\x34\x53\xe2\x0d\x11\x92\x3f\x68\x43\x47\x9e\x23\x21\xcf\xe2\x12\xb7\xb7\x8d\x84\xe4\x22\xef\x39\x4a\x3e\x5d\xf3\xac\x49\x5e\xba\x2b\x93\xc8\x05\xd2\x5c\x78\x44\x2d\xf5\xad\x52\x62\xb1\xaa\x18\xc3\x73\x42\x8b\xdd\x1b\xe7\xbe\x13\xa1\xbb\xec\xbf\x0f\x0a\x2c\xdd\xd8\xbd\x17\x24\xe0\x40\x2f\x92\x0e\x20\x97\x38\xfa\xb7\x32\x4e\xad\xed\xa7\x93\xc8\x4f\xa7\x1d\x61\x3b\x33\x5d\xec\x47\x61\x87\x26\x2a\xff\xea\xdb\xbc\xdb\x9d\x24\x68\xd6\x91\xbf\x5b\x5f\xef\xfe\x49\x66\xf1\x9f\xe2\x75\xfe\x27\x99\xc5\x3d\x20\xb3\xd8\x83\x4f\x8e\x5e\x3d\xfb\xd5\x7c\x6d\x52\xa3\x8d\xaf\xa3\x3b\x9b\x56\x01\x05\xf9\x65\xc7\x39\xfb\x3f\x67\xef\x47\x23\xf7\xe1\xce\x05\x48\x57\x03\x82\x29\x23\x08\x43\x30\xd5\x57\xb1\x32\xd6\xaf\x82\x26\xc8\x1e\x72\xaa\x4d\xfd\xb1\xa2\x78\x8a\x40\x57\xcf\x8f\x42\x3f\x75\x6c\xd2\x54\xba\x43\xd9\x2e\x08\x31\x9c\x35\x48\x56\xa7\x0c\x8f\x93\x18\xfb\x61\x5c\xaa\x0f\x93\xbc\x6c\x37\x53\x7d\xf2\xad\xcb\xdc\xbb\x81\x9f\x29\x9f\x71\x82\x66\x7e\x14\x7e\x86\x4f\xc9\xc1\x86\x26\x02\xe9\x30\x76\x7c\x11\x09\x49\x96\x0c\x8f\xd2\x62\x3e\x8e\x22\x27\x71\x5d\x10\x0e\xd3\x33\x71\x06\xe9\xf4\x46\x67\xdd\xd1\x03\x34\xec\xf4\x86\xc3\x61\xe8\xd1\x31\x7d\x35\x71\xec\x33\xdb\x7d\x64\xeb\x61\xe7\x64\x31\x03\xe4\x85\x78\x1a\x02\x7b\x64\xbb\x83\x90\xca\x6c\xc4\xea\x44\x5a\x41\xc3\x90\x22\x6f\xea\xc7\x41\xc4\xeb\xe5\x03\xc4\xb5\x55\x31\x6c\xe4\x20\x41\x2a\x48\x21\x1b\x96\x42\xed\x58\x88\xb5\x64\xb1\xcc\xef\xcf\x69\xfd\x2e\x85\x20\xc4\xf0\x13\xee\x30\xd7\xe2\xfb\x71\x74\x3e\x7e\xfa\xf6\xe5\x93\xc9\xc5\x7e\x63\xa2\xb3\x49\x08\xa3\x20\x85\xd8\x68\x43\xca\x35\xb1\x68\x48\x2a\x75\xfc\xd0\xe8\xc2\x52\xe8\xa3\xf1\xb4\xd2\x0c\x65\x02\x53\x3f\x95\x9f\x99\xa1\xcb\x0f\x81\x1d\xc6\xf3\x05\xd6\x2c\x58\x49\xcc\x4b\xab\x80\xf6\x16\x6e\x24\x2a\xc0\x68\x12\xf3\xbc\xda\x7e\xf6\x11\x5e\x07\xc9\x55\x85\xe7\x89\x2d\x52\xe8\x18\xa9\x9c\xf5\x35\xc3\xb9\xa3\xbe\x27\x8c\x5c\x8e\xfb\xa1\xf0\x37\xf3\xc8\x1f\xc3\x69\x12\xd1\x4b\x7c\xfa\x5e\x7d\x22\xf2\xf3\x17\x38\x99\x24\xe3\x05\xe9\xf5\xec\x6f\x9d\x64\x4d\x1f\x88\x2a\x98\x77\x7b\x5d\x37\x09\xe3\xec\x58\xdb\xca\x55\x0b\xdc\x95\xad\xe2\xe5\x2b\x1b\x3f\x8a\x0a\x49\xc9\x10\xa3\x52\x88\xe9\xfa\xc1\xbc\xaa\xd5\x29\xca\x07\xc7\x14\x3d\x40\xa3\x06\x1e\xb1\x19\x3a\x80\x0c\xd8\x89\x8f\xb8\x56\x66\x6f\x97\xfa\x4b\x7f\x84\xd7\x27\x49\x40\xcf\x70\x79\x86\xc6\xfc\x12\x54\x6f\xba\xbb\x40\x61\xa0\xfa\xf7\x1a\x34\xe5\x56\xbe\xd0\x86\xe4\x91\x7f\x9d\x2c\x70\xba\x93\x85\xb6\x93\xb7\x8b\x59\xac\x66\xce\xb6\xa9\x0e\xc3\xbe\xcb\xe9\xe3\x20\x06\x68\x53\x8b\x5f\x8d\xa6\xd2\x3b\xfc\x7d\x3c\xff\x3d\x98\x98\x35\x95\x31\x8c\x22\x1b\x54\x29\x2c\xdc\x81\x21\xee\x5c\x85\x71\x90\x5c\x71\x40\xd8\xf0\x33\xac\x98\xdc\x3c\x81\x8e\x05\x68\xe0\x84\xdc\x17\xbd\x65\xf2\xd9\x66\x77\x22\x5c\x78\x6d\x60\xff\xc0\x09\x5e\x3b\xac\x70\xfb\x07\x96\xba\x13\xc1\x09\x56\x7e\xe2\x64\x9e\xfd\x3a\x61\xcb\x13\xf9\x38\x0a\x61\x8c\x4f\xc3\xcf\xf0\x24\x73\x98\x5b\x44\x7c\xed\xf8\xc0\xf3\x3e\x65\xd5\x66\xcf\x58\x16\xcf\x49\xf6\xfa\xa3\xb7\x09\x85\x0f\x2c\x6b\xbd\x56\x74\x1d\xd7\xbf\x6d\xa8\x58\x5c\x4b\xd8\x5c\xbc\xe5\x10\x6b\x57\x1e\xd1\xf3\x03\x19\xe1\x0a\x67\x8f\xdc\x5d\x89\x0a\xd6\xc8\x30\x36\xb9\xfc\x8a\xfb\xf0\xde\x1e\xe8\x73\x24\x69\xc0\x59\xdb\x04\x96\x74\x76\x83\x4e\x53\x1f\x97\xc3\x53\x6e\xf6\xde\xc0\x38\xe1\x1b\xc3\x21\x4a\x75\xb7\xfd\x7a\x4a\x3d\x51\x7d\x81\x2d\xa1\x00\x14\x8a\x39\xcf\x81\x5c\xf6\xbb\x5d\x40\x86\x81\xa1\xae\x0c\x7a\xbd\x5d\x40\x53\x0c\x9c\x2e\x40\xa2\x78\xd7\xb1\x2f\x20\x3e\xa5\x5f\xe6\x50\x11\x73\x0d\xb4\x47\x2b\x13\xeb\xb2\x45\x6a\x78\xd6\xdf\x07\xe2\x7f\xa3\x6a\x04\xc2\x86\x39\x0b\x53\x22\x9b\xf9\x9a\x31\x51\x55\x32\xe9\x8e\x22\xe0\xf1\x1c\x77\x39\xda\x08\xe0\x1f\x95\xf1\xe7\x74\x4d\xa6\x1a\x30\x5b\xd6\x3a\x6c\x95\xb6\x47\xf4\xe4\x28\xd9\x84\x0b\xa0\x75\x44\x86\x85\x2e\x6e\x02\xe0\xe2\x0b\xbb\xe1\x8d\x1c\x52\x9b\xec\x6f\x62\xf4\x0a\xb8\x3d\x82\xad\xa4\x08\xcd\x73\xa3\x21\xfd\x64\x39\xf3\x2f\x18\xee\x90\xdc\xb3\x59\xdf\x1a\x10\x4f\xf2\x9f\x53\x31\x7d\x10\x4e\x1c\x9c\xe1\x57\xcd\xfc\x30\xb6\xbe\xb7\x88\xc8\xba\xe2\x56\x45\x03\x06\xba\x80\xf8\xc7\x64\x41\x45\xf8\x84\x2e\x49\x6f\xe0\x18\x3b\x2e\x39\xe8\xc8\x5c\xfe\x36\x49\x12\x0c\xd1\x19\x4a\x22\x38\x14\x84\xdb\x61\x3c\x49\xec\xd1\xdf\x68\x48\xad\x87\x93\xf9\x43\xdf\x63\x6b\x1a\xeb\x1b\x90\x0e\x25\x24\x4c\x18\xc7\x10\xb1\xc7\x9d\xe4\x81\xc0\x97\xc9\x7a\xe8\x85\x8f\xa7\xde\xcc\xff\xe4\x74\x41\x2a\x70\xc2\x18\x6b\xfc\x33\x32\x48\x8e\xf6\xe8\x94\x2e\xb3\xaf\x39\x88\xac\xe3\x2e\x49\xa3\xc2\x5c\x61\x14\x53\x09\x44\x85\x2e\xe2\xa3\x2a\x87\xfd\x41\x7a\x15\x92\xc3\xcf\x56\xd7\xbd\x19\xfb\x29\xb4\xc2\xef\x7b\xdd\xde\xee\x60\x6f\x6b\x18\x6d\x6f\xe7\x2d\x9e\x72\xb3\xd7\x26\x92\xfb\xe0\x1c\x41\xff\xe3\x03\xfe\xfd\xe1\xde\xde\x60\xb7\xe6\xf3\xdd\x5d\x40\xfe\xb7\x97\xff\x76\xef\xe8\x70\xd0\xaf\xf9\x76\xbf\x0b\xf6\xbb\xb9\x0f\xff\x67\xef\xe8\x68\xd0\xab\xf9\xb0\xd7\xed\x8e\xdc\x65\x64\xb8\x31\xc8\xf7\x8a\xb0\x13\xdf\x87\x09\xb6\x02\x4c\xce\xd4\x4f\xa7\xe1\x38\x41\xf3\x0e\xbf\x8b\xbf\x17\xa7\xd1\xd9\xf1\xf3\xdf\x3f\x5f\x4e\x22\xb3\x42\xe6\x2f\xf0\xf4\x49\xe8\x47\xc9\x05\x65\x2f\x16\x6d\xb1\x81\xfd\x78\x81\xa7\x3f\x25\x68\xc6\xff\x7c\x8d\x92\x49\x48\x11\x8d\xfd\x79\x68\x8b\xcb\x5a\xf1\xcb\xf4\x2c\x0c\xe8\x69\x27\x26\xff\x7c\x84\xd7\x73\x04\xd3\xf4\x84\x91\x54\x8b\x73\x5c\x9e\x05\xb5\x5c\x2f\xd4\xbd\x28\x67\x49\xe0\x53\x79\xa0\xa7\x31\xe9\x65\xd5\x80\x7f\x4c\x41\x66\x3e\xf7\xc9\x8c\x35\x9d\x88\x2b\xdd\x32\xea\x7d\xf8\x2a\x58\xa5\xfa\x47\x76\x9e\x53\xaa\x7f\x28\x1e\x7d\x9a\x45\x54\xa3\x9f\x62\x3c\x1f\xec\xec\x5c\x5d\x5d\x79\x57\xbb\x5e\x82\x2e\x76\xfa\xdd\x6e\x77\x87\xe6\x59\xf6\x92\x7e\xbb\x63\x67\x35\xc0\x21\x2e\x72\xbf\x32\xc7\x5f\x71\xca\x2c\x30\x91\x74\x29\xc7\x87\xfd\xa2\xb7\xeb\xf5\x8f\xf6\xac\xde\x81\xd7\x3b\x3c\xf2\xfb\xde\xd1\xe1\x81\xc5\xfe\xdb\xb5\x7a\x56\xaf\xe3\x75\xbb\x47\x9d\x7d\xef\x70\xbf\x67\xe9\x2f\xc9\x6b\xf2\xd2\x22\x2f\x3f\xcf\xf6\xbd\xfd\xe3\x83\x4e\xcf\xdb\xdf\x3b\xf4\x7b\xde\xee\xee\xae\xc5\xfe\x4b\x73\xb1\xba\x9d\xbe\x77\x70\x70\x68\xe9\x6f\xc8\xbb\xae\x45\xdf\x7c\x9e\xed\x79\x47\xfb\xe4\x55\x7f\xef\xd8\xef\x79\xfd\xc3\x9e\xc5\xfe\xcb\x32\xf0\xba\xfd\xc3\x8e\xd7\xeb\x1e\x8e\xbb\x96\xd7\xdd\x25\x8f\xbd\xee\xc1\x61\x87\x3c\x27\x8f\x3f\xcf\x3a\xde\xf1\xee\x61\x67\xd7\xdb\xdb\x3d\x30\x54\xc0\x3b\x3e\xa2\xb5\x3b\xde\x1f\x7b\xdd\xdd\x5d\xaf\x77\xd8\xa7\xff\xee\xee\x1d\x91\xac\xf6\xfb\x1d\xaf\x7b\xe8\xed\xef\x76\xbc\xbd\x83\x7d\xef\xf8\xa0\x43\x3e\xb0\x7a\x5e\x97\xb4\x6d\xcf\x3b\xec\x5b\xbb\x5e\xff\xb8\x98\x71\x87\x24\xa1\x39\xef\x1e\x19\x5a\xd7\xf3\x7a\x3d\x92\xcd\x5e\xef\xd0\xdb\xdd\xeb\x93\xff\xa7\x6f\xba\xbc\xe2\xfd\x69\xc7\xeb\xf6\x76\x3f\xcf\x48\x3e\x47\x9d\x5d\x6f\x77\xd7\x50\x79\xf2\xee\x88\x94\xd1\xdf\x1b\x7b\xdd\xde\x9e\xd7\xeb\xed\xd1\x7f\xfb\xfd\x63\x52\xfb\xdd\xbd\xbe\x5f\x28\xbb\xd3\xf3\x7a\xdd\x3e\xa9\xc1\x51\x7f\x4a\x52\xd3\x2e\xea\xef\x5b\x87\xe4\xbf\xa6\x2e\xea\x1d\xec\x77\xc8\xf8\x8d\x49\x9d\xbc\xde\xf1\x6e\x87\x74\xb1\xb7\x7b\xd4\x21\xaf\xc8\x1b\x92\xc5\xde\x51\xa7\xd7\xf7\x7a\xc7\x3d\x53\x16\xfb\xdd\xc3\x4e\xcf\x3b\xea\xed\x8d\x3d\x52\xbd\xdd\x43\xaf\x77\x7c\xe4\xed\x93\x2a\x1f\xec\x79\x87\x47\x64\xc0\x76\x8f\xbc\x3d\x92\x67\xff\xe8\xd8\x3b\xea\x1f\x75\x3c\x2a\x17\xdd\xbd\xfd\x4b\x52\xee\xd1\x67\x22\x92\x24\xcb\xfe\x01\x11\x8c\x93\x7d\xef\xf8\x90\xff\x4d\x84\xa5\xeb\x1d\x1c\x93\x3f\x78\xa2\xae\x45\xdf\xd3\xff\x64\x0f\xc7\x7d\xef\xb8\x7f\x4c\xb2\x23\xd2\x79\x78\xe4\x1d\xef\xef\x5b\x47\x5e\xf7\xf8\xc8\xea\x7b\x87\x7b\xfd\xe7\xbd\x63\xef\xc8\xda\xf3\x8e\x8e\xfd\x5e\x97\x09\x66\x97\x17\x40\xc6\xa6\x77\xe8\xf5\x76\x77\xad\x23\x6f\x6f\x6f\xcf\x32\x24\xb0\x68\x82\x43\x92\xe0\xb0\x17\xf5\xbc\x83\xfe\xa1\xd5\xf7\x7a\xbb\x3e\x99\x4c\xbd\x23\x8b\xff\xc3\x86\x41\x16\xbb\xbb\xfb\x59\xcc\xfe\x49\x48\x8f\xc6\x7f\xf9\xe9\xa7\x9f\x54\xe3\xd0\x71\x0b\xd3\x5b\x66\xd1\x9a\xc1\x78\x21\x32\xa6\xeb\x30\xd1\xc7\x3a\xb1\x7f\xa9\x44\x80\x31\xd3\x99\x58\x89\x5b\x98\xdc\x32\x5b\xd6\x78\x0a\xc7\x1f\xcf\x93\x4f\x66\x6b\x56\xa5\x71\x92\x45\xa5\x19\xaa\x65\x0a\x4c\x7b\x4b\xdf\x5a\x2f\x60\xbc\xa8\xa1\x4e\x6c\x14\xb6\xb7\xc9\xaa\xd5\x5a\x50\x4f\x84\xdf\x53\xb1\xaa\xe5\x8d\x50\xf2\x8c\x7d\x9d\xe1\xd1\x47\xa1\xdf\xe1\x95\xb6\x5f\x30\xd4\xfa\xca\x20\xd3\x60\xdc\x38\x22\xce\xaa\x89\xfc\x6a\x1e\xde\xf8\xf2\xf4\xf5\xe3\x93\xa7\xa6\x08\xc7\x23\x60\x5f\x64\x11\x80\x31\x45\xbd\x61\xbe\x92\x54\x61\xd3\x68\xa7\x5a\x90\xb9\xe4\x47\xd5\xec\x90\x29\x8a\x6b\xde\xaa\x3f\x2a\xab\xda\xd3\xda\x15\x27\x59\xc3\xc6\x7e\xfc\xc2\x8f\xfd\x0b\xf8\x52\x14\xb9\x12\x47\x4d\x13\x21\x13\xa1\x2c\xb1\x40\x10\xca\x13\x5c\xd7\x44\xe4\xb5\xac\xc2\x3e\xb0\x79\xbc\x7e\x87\x2e\x33\xc2\x74\x26\x29\x54\x46\xe0\xcc\xa6\x56\xb2\x1a\x7f\xe2\x8a\x02\xaa\xbc\x95\x31\x0a\xa9\x1b\xd9\x0a\xb9\xeb\xb4\xe0\xa5\xfd\x55\x5f\xc9\xc6\x81\x50\x47\xc0\x0e\xd3\x0e\xd7\x1d\xed\x60\xec\x65\x12\xb8\xa2\x14\x6c\x30\x62\xa0\x3c\xfb\x12\xef\xf7\xf7\xef\xb1\xfa\x3f\xd3\xd7\x12\xc9\x2a\xb5\xf0\x14\xce\x52\x18\x5d\xc2\x54\x86\x1f\xc4\xe2\x6d\x40\xe3\x8c\xd8\x29\x38\x8c\x2f\xac\xab\x30\x8a\x68\x0a\xb6\xdd\x50\xbf\x62\x8e\xab\x4a\x1d\xe9\xbd\x06\x95\x36\x2f\xa3\xad\x86\xae\x36\x8c\x6b\xe5\x11\x61\x3b\xf2\x1a\xe3\x91\x5b\xd1\xf8\x21\x26\x85\xa4\xbe\x38\x31\x9e\x63\xca\xfe\x2f\x1b\xa3\xda\xa4\x76\xf3\x90\x70\x60\xff\xc0\xe3\xca\x68\x83\x77\xfe\x7b\xe7\xbf\x77\xe4\x78\xa7\x2d\xa2\xc2\xe3\xe2\x8a\x69\x8c\x0b\x27\x7b\xf7\xe7\x6b\x3b\x77\xee\xab\x6a\xc9\x71\x15\x1b\x32\x82\xe4\x34\xce\xf9\x90\x9f\xc0\x08\x62\x18\x3c\xc6\x36\x28\xad\x54\xfb\x99\x5b\x3b\x9c\x82\xf0\x37\x4f\x93\x94\xad\x26\x85\x0d\x49\x59\xbf\x24\x6f\x2d\x7f\x20\x83\x03\xc2\xb4\x23\x49\x6c\xcc\x2c\x46\x0d\x6a\xac\x07\xb9\x61\xff\x9c\x9b\x37\xec\x4e\xcf\xd6\x5b\x41\x64\x9d\x99\xea\xcd\x47\x67\x31\xd8\x05\x1f\x71\xde\xa2\x51\x81\x84\xeb\xff\xb1\xcb\x1a\x37\xca\xb3\x8d\xf5\x0a\x29\x4b\x22\x3a\x9b\x8b\x4a\x39\x33\x6c\x5e\xd7\x2a\xdd\xf5\x37\x2c\x27\x85\x69\xdf\xa6\x69\xb5\xd2\xf7\x15\x45\x83\x59\x55\x94\x7d\x12\x48\x25\x16\xe4\x47\x5e\x56\x94\x75\xb9\xa5\x2c\x36\x1b\x1c\xec\xc6\x5b\x40\x4d\x1c\x56\xeb\x8f\xea\x11\x24\x36\xda\x0c\xf3\x1d\x5f\x89\x4e\xc3\x03\xcc\x73\x3a\x6f\x30\x4e\xf3\x44\xac\xca\x72\x45\xde\x9a\x74\xe7\x3b\xd3\x87\x55\x99\xf9\x53\x17\x36\xe7\x5f\xd9\x57\x6b\x29\x53\x6b\xb5\xeb\x3e\x69\x4b\x19\x50\xeb\x9d\xab\x4b\x41\x56\x54\x0b\x7d\x49\x9b\x76\x5f\x46\x57\x4a\x13\x24\x34\x25\xe6\x2e\x61\xac\xc9\xd7\x56\x90\x34\xa1\x96\x9c\xf1\xdf\xaa\x72\x14\x70\xaa\xec\x5c\x33\x4a\xf4\x9f\xfd\xbb\xd4\x7f\xf6\xbf\xda\xa6\xb8\xe6\xbe\x58\x31\x82\xaa\xbc\x95\x0a\x97\x7e\x96\xe7\x8e\x1a\x55\x4a\xca\xaa\xe2\xd5\xe2\x0a\xaa\x59\x45\x54\x97\x4e\x9e\xb8\x51\xcf\xdc\x55\xdf\xc5\x8c\xf4\xef\x2b\x77\x5c\x5d\x2d\xb2\x22\x19\x25\xda\x57\xed\xb2\x8f\x97\x5f\xbd\xbf\x2a\xab\x90\x95\xf7\x2b\xbc\xde\xf9\x4d\xec\x41\x5f\xb2\xc3\x32\xbd\x54\xef\x3a\x1a\xf6\x5e\xd1\x79\x25\x9f\x04\x61\xea\x9f\x47\x14\x2b\xa3\x34\xdd\x22\xd6\x30\x35\x34\x17\xc4\x2f\x32\x26\xa4\xa2\x1e\xc5\xac\x6b\x26\xc9\x8f\x4f\x9e\x7f\x5d\x39\x0e\x99\x1f\x4f\x52\x59\xdf\x2f\xd3\x77\x8d\xaa\x92\x95\xfb\x2c\x4b\xbe\x66\x0f\xae\x7c\x5c\x6b\x75\x5f\x54\x7b\x61\x55\x81\xef\x57\x37\xda\x75\x43\xd1\xf8\x78\x84\x04\x63\x79\x3b\x65\xff\x6e\x4f\x47\xbf\xc0\x68\xbe\xaa\x8e\xb2\x46\x8d\x57\x3d\xf7\x34\xd3\x99\x9b\xa3\xb5\x54\x94\xb1\x11\x4d\xb7\x06\x4a\x6a\x75\x74\x12\x7e\xa9\xcd\xdc\x8c\xa8\x22\xbc\xc7\x3d\x83\x78\x23\x9f\xd4\xa1\xbc\x94\x35\xbd\x69\xba\x56\xc3\x50\x07\x10\x73\xd7\xe3\x20\x2d\xac\xed\x91\x66\xbe\xc4\x60\xfd\xe2\xa7\xd3\xf0\x24\x41\x73\xeb\x39\xe9\xa8\x2f\x3a\x5c\x2b\x99\x58\x5b\x0b\xc0\x04\xc2\xa0\x06\x63\xee\xae\x65\x40\x1f\xf5\x37\x4f\x5f\xbf\xfa\xf0\xec\xf4\xf4\xdd\x53\xd3\x94\x34\x0d\x62\xed\xe0\xd7\x8d\xf2\x6b\x94\x5c\x86\x01\xb4\x7e\xe2\x7d\xb1\xd9\x61\x36\x1c\x5f\x7b\xa0\xd7\x07\x3d\x52\x91\xda\x55\xbb\xf5\x42\x7f\x67\x8a\x93\x40\x5b\xb6\xbf\x9c\x82\x94\x2f\x52\x3d\x43\xca\x37\xad\xd4\xa0\x82\x21\xb9\x1e\x14\x7b\x5d\xf7\x8f\x86\x7a\x0a\x51\xe2\x3b\x01\xf7\x84\xe5\xdb\x32\xd5\x05\x7f\x90\xd7\x6c\x1a\xfa\xb5\xd1\xc2\x54\x72\x2b\x57\x1a\xb6\x24\x4f\x0e\xb5\x51\x38\xbc\xe3\x22\x88\x79\x1e\x7d\x70\x96\xb9\xe8\x72\xf3\x96\x78\x26\x7c\x75\x57\xbb\x7c\x6a\xa0\xa6\xe8\x67\x9e\x75\xcc\xb4\x05\xe7\x2b\x65\x11\xeb\xda\x95\x08\xe6\x32\xf4\x93\x7a\x16\x57\xc7\x7e\x2a\xce\xc7\xed\x8d\x7c\x65\xf7\x0c\x5d\x60\x33\xb8\xef\xe6\xd7\x4d\xed\x52\x4a\x4f\xe7\x9c\x5c\x72\x27\x3f\x22\x8f\xdc\xe3\xfa\x87\x24\x26\x6b\x2f\xbb\x6e\x50\xfb\xa9\x2a\x10\x4c\x41\xdb\x2a\x4f\xc6\xb3\xad\x8f\x11\xab\x6d\x0a\x5b\x62\x44\x98\x1d\xdf\x47\x64\x5b\xa4\xc9\x5a\x29\x9b\x36\x9e\xed\x19\x47\x74\xcb\x68\x66\xbd\xbe\x73\x0f\x19\xab\x0a\x6d\x93\xa3\xca\xe3\xc4\xd2\xbd\xad\x9b\xd5\x7b\xa5\x0b\x95\x86\x4d\x6e\x02\x7d\x59\x5d\xc0\x01\x1d\x8b\x5d\x76\x0d\xd1\x04\xdc\xb4\x51\x9d\xdb\x0b\x86\x2f\x63\x13\xa8\x3e\xd1\x6d\x25\x1c\x46\x95\xa0\xdb\xa2\xa3\xef\x72\x8c\x1a\x42\x71\x56\x97\x71\x08\xec\xf3\x05\xc6\x49\x9c\x8b\xca\x97\x3a\x58\xd9\xc5\xd2\x2e\x38\x66\xaa\x99\xc1\xd7\x97\xe7\xd8\xea\x72\xc4\x22\x73\x00\x87\xf1\x02\x52\x96\x85\x64\x81\xad\x28\xb9\xb8\x08\x63\x4e\x92\xd0\xa4\x31\xab\xcf\x9d\xe3\x86\x03\x53\xfc\xf2\xa8\xe1\x3d\xe6\x5d\x5d\x7f\x6e\x62\x77\xfd\x73\xf3\x90\x9b\xc7\xfe\xb7\xb6\x79\x98\x29\x49\xfe\xdc\x49\xea\xea\xbc\xee\x4e\x72\xb8\xf6\x46\x72\xf8\xe7\x3e\x42\x7b\xf2\xe0\x3f\x68\x1f\x39\x58\x79\x1f\xd9\x6f\xfc\xe5\xdd\xda\xca\xb5\x52\xee\xcc\x9f\xc8\x62\xfc\x47\xc9\x02\x7f\x65\xe1\xaf\xb6\xa2\xeb\x36\x08\x06\x24\xb1\x06\x8b\x54\x59\x1d\x37\xe8\x65\xa9\x2e\x99\x7b\xb9\x25\xb3\x95\xa3\x4a\xd3\x39\xb0\xba\x69\x74\x65\xff\xc9\xaa\x62\xe5\xa5\x85\x1f\x5f\x40\x94\x64\x90\x4a\x6b\xf6\xa8\x61\x7d\x6b\x69\x46\x6d\xb4\x16\xf6\x98\x5e\x45\x63\xd7\x1b\xae\x89\xcf\x79\xf2\xb6\x43\x76\xe7\xea\xc1\xca\x3a\x6f\x2b\x47\xd7\x5d\xb0\xd7\x40\x6c\x0c\xc7\x38\xd0\x6f\x65\x9e\x6d\x29\xad\xd5\x77\xaf\xe6\x50\xc4\x2a\x80\x2f\x2b\x93\xc3\x99\x1f\x16\x8c\x4b\x7c\xad\xea\xed\x81\xde\x61\xb3\x5c\x18\x5e\x86\x69\xca\x6a\xe0\x19\x1b\xa2\x22\x38\x79\xf5\xfa\x5f\x6f\x9e\xfd\xfc\xcb\xdb\xdc\xfd\xd0\x46\xf8\x05\xfe\xbf\xff\x57\xfa\xa7\x56\x14\xfc\xaf\xa7\x8f\xdf\x14\x58\xab\xc8\xc8\xc9\x9b\xa3\xf2\x91\x31\xc5\x38\x71\x66\xac\xd2\x92\x7f\x7b\xfa\xe6\xf4\xd9\xab\x97\x35\x44\x59\x2b\xf6\x67\x0d\xa3\xce\x14\x46\x73\x6b\xa5\xbe\x6c\x70\xe7\xa9\xb4\x38\x8b\xba\x78\xff\x69\x77\xbc\xd5\xe9\x58\xc6\x8b\xa2\x9f\x9f\xbd\xfd\x70\xfa\xcb\xe3\x6c\xdc\x3b\x9d\xf7\x9f\x76\xb3\x43\x21\x6f\x76\x5e\x6a\xd7\x00\x5e\x32\xe3\x6b\xdc\x39\x9e\xdd\x06\xe0\x8a\x82\x64\xe6\xa1\x24\xc1\x8e\xeb\xd1\xbd\xec\x79\x98\x62\x01\xe9\x6e\x0b\xb8\x8e\x0e\x51\x6d\x3b\x97\x10\xe1\x70\xec\x47\x4c\x09\x74\x97\x20\x1f\x52\x52\xc0\xfb\x51\x68\x67\x4c\xa0\x3f\x19\x15\x3c\x03\x57\x51\x92\xdf\xde\x9e\x8d\x5c\x6f\x12\xc6\x81\x91\x93\x3f\x99\x33\x70\x5d\xc6\xc9\xff\x06\x0a\x30\x6f\xfb\x0a\x85\x18\xb2\xa7\x4c\x61\xda\xde\x86\xde\xe3\x28\x4a\xae\x96\xae\xab\x61\x08\x69\xa6\x77\x0d\x4a\x48\xe2\xe6\x04\x61\x3a\xf7\xf1\x78\xca\x50\x43\x63\x78\x65\xbd\x48\x16\x29\x07\x11\xb5\xd9\xf6\xea\xba\x4b\x90\xc7\x85\x67\x38\x50\xfc\xf8\xe6\x51\xa4\x45\xc7\x04\x48\xae\xa7\xa3\xa8\xb2\x24\x9d\x72\xf9\x52\x84\x25\xa4\xb6\x03\x8e\x54\x9e\x07\x31\x85\xa4\x90\x22\x9c\xa1\x82\xff\xae\x83\x4e\x81\x78\x98\x93\x01\x80\xb2\x27\x12\x30\x89\x1e\xa9\xdd\x07\xb2\x5b\x68\x68\x3d\x0c\x1e\x39\xb1\x22\x32\x7e\x10\xd4\xc8\x0b\x40\x1e\xc5\xfa\xf2\x18\xbe\xc8\x30\xd6\x7f\x6a\x98\x48\x0f\xed\xf9\x27\xdb\x1d\x68\x25\x34\x12\xca\x9a\x42\xc8\xfc\x5f\x01\x48\x71\x0a\xfd\xa0\xc3\xf7\x29\x1d\x3f\x31\x4b\x2e\xaa\xc5\x52\xdf\x35\xab\x74\x25\x13\xc6\x2c\x09\x60\x54\xb2\x70\xd0\xa6\x70\x90\x60\x86\x5a\x34\xc8\xc0\xd7\x57\xe8\x15\x8e\x7c\x54\x82\x3f\x4f\x92\x94\x7d\xf2\x6d\x82\xcf\x4f\xa1\x1f\xe1\x29\x9d\x02\x1d\xa2\xb2\xdc\x0f\x24\xa5\x3f\xd2\xdf\xff\xf9\x7c\x77\xf6\x66\x05\xee\x52\x05\x51\x20\xca\x02\x37\xe6\x7e\x9a\xd2\xf8\x8f\x3c\x90\x80\x92\xe6\xca\x47\x71\x5d\x9a\x31\x0a\xe9\xf4\x6c\x19\x55\x65\xba\xd7\xa4\x8a\x04\x83\x0e\xb2\x5f\x26\xd6\x2f\xd9\x40\xa4\x79\xd7\x95\xcf\x10\xa9\xba\x64\xb7\x81\x6a\x5d\x55\x8d\xc0\x0c\x5e\x9c\x17\x05\x93\xf6\xca\x4d\x02\x6a\x52\xce\x7e\x21\x4c\x03\x02\x7f\xc9\x64\x0b\xec\x03\x31\x10\x14\xbd\xcd\x1e\xc9\xdf\x02\xe9\x57\x0e\x53\xfe\xb4\xbd\x76\xc1\x7c\x74\x65\xc1\x62\xb4\x81\xfa\xf6\x2e\x0a\x16\x22\x23\x4b\x96\x32\x04\xb4\xf7\xb9\xb2\xeb\xc7\x78\x2d\x05\xcf\x38\xed\xbf\x22\x2d\x97\x5a\xa1\x28\x4c\x0d\x34\x18\x5f\x63\x1d\xfa\x39\xf8\xc7\xe1\xd5\xfe\xab\x87\x66\x44\x37\x01\xa5\xe6\x63\x8c\xd2\x22\x90\x9a\x80\xc6\x11\x27\x97\xde\x2e\xe8\xe7\xa6\x94\x5d\x8f\x00\xa3\x61\xbe\x52\xc0\xbd\x46\xfc\xbe\xd5\x6e\x4f\xd9\xc1\x43\xed\xf7\x64\x81\xe7\x0b\x6c\x65\x08\xb1\xa7\x79\xde\xe5\x52\x00\xb7\x6a\x0c\x20\xdb\x08\x10\x57\xc6\x8b\x5f\xe4\xaa\xec\xc9\x1a\xd5\xc7\x59\x55\x9e\x42\x83\x46\x50\x3b\x3c\xae\x8d\xf7\x01\xd3\x34\x44\xc1\x76\x1b\x67\x29\x51\x2a\xce\x97\xfa\x32\x09\x78\x8e\x66\x33\x87\xf8\x30\x28\xeb\x86\x24\xd8\x58\xa8\x6d\x69\x25\xb5\x96\xaf\x56\xcf\x5c\xe7\x35\xab\xae\x6e\x11\x6a\x3f\x9e\x0d\x9a\x76\x42\xe4\xfd\xd9\x93\xf6\xcd\xca\x02\x5f\x58\x03\x65\x46\xe4\x54\xde\xd0\x56\xb1\xf1\xd6\xbc\xbd\x9e\xb7\x1c\x21\xb3\x59\x2d\x1b\x37\x96\xa3\x09\xd8\xdb\xa8\x6b\xed\xf1\x65\x3a\x65\xb7\xe8\x62\x89\xc1\x7e\x48\xa3\x3d\xf2\xb9\xb2\x6f\x11\xf2\x69\x54\xeb\x14\xe3\xb9\x0d\xec\x0b\x34\x1f\xdb\x26\x8d\xaa\xe1\xe5\x00\x6f\x28\x59\x91\x55\x90\x45\x1f\xfb\x1d\x9c\x24\x11\x0e\x49\x21\x4f\x69\x25\xd9\x89\x2f\xb5\xc2\xd4\x4a\x21\xa5\xce\x21\x5f\x50\x98\x1c\x3f\x8a\x2c\x04\x2f\xc2\x14\x43\x04\x03\xeb\x97\xb7\x6f\x5f\x5b\x7e\x1c\x58\x17\x6f\x5e\x9f\x58\xf4\x33\x6b\xee\xe3\x29\x83\xd9\xe1\x4d\xb6\xf0\x14\x25\x8b\x8b\xa9\xf5\x34\xbe\x4c\xae\xad\x49\x82\x28\xa6\x0e\x37\x70\xf9\x17\x64\x83\x54\x74\xa9\xa7\xa2\xa3\x56\x32\x8f\x36\x35\x7f\x6e\x40\xac\x5e\x26\xb8\x3c\x0e\xaf\xf9\x14\xe1\xd9\x7c\xcd\x09\xf2\x8a\x6e\x6c\xeb\x4e\x91\xcc\x96\x89\x74\xb8\xcf\x43\x22\xed\x01\x2c\x59\x03\x45\xe1\x7a\xab\xcb\xae\x0f\xb8\xba\x39\x4e\xe6\xd7\x1d\x71\x63\xc2\xf5\x4c\xce\xca\x90\xdd\xbe\x15\x4b\xb0\x13\xf1\x67\x49\x3b\x9b\x75\x78\x9d\x35\xdd\x70\x1d\x90\x13\xd7\x7c\xfa\xc2\xd7\x9b\x50\x5c\x33\x3d\xf1\x9e\x28\xae\xec\x60\x70\x3f\x54\xd7\xe8\xe7\xbf\xbf\x4b\x7f\x21\xe7\xcd\x86\xd4\x38\x81\xce\x2c\xc3\x8f\xa6\x99\x05\x7d\xec\xcf\x43\x4c\xd9\x90\x32\x58\xa4\x3c\x3e\x50\x4e\xd3\x3c\xe6\x47\x20\x21\xb0\xba\xc7\xbd\x7a\xac\x4e\x16\x31\xd6\x0e\xde\xb6\xc5\x0f\xbd\x59\xd6\x47\x26\xc3\xb9\x7a\x6c\x16\xd6\xf3\xfa\x9a\x96\x2e\x43\xc5\xb5\x60\x53\x7d\xd1\xa2\xe9\x5a\xcb\x59\x36\x92\xba\xa1\x2f\x10\x8e\x73\x3d\x32\x49\xd0\xcc\xc7\x9d\x78\x41\x64\xa2\x90\x79\xb1\xc1\x1b\x9a\x82\xaa\xc4\x6f\x70\x12\x02\x5a\xf1\x82\xfd\xbd\xc0\x4b\xa3\x72\x96\x7a\xf4\xed\x03\x8d\xa7\x2f\x63\x3c\x7c\x24\xc8\xe7\x28\x69\xcd\x1a\x93\x1c\x06\x1d\x04\xcb\xe8\xa3\x9b\x71\xc4\x6c\xda\x78\x5a\xb2\x02\xbc\xb9\xf8\xe3\xe7\xe7\x07\xbb\x9f\xaa\x0f\xaf\xa5\x38\xe0\xfb\xec\x41\xda\x19\xfb\x28\xb0\x9b\xb8\x8e\x35\xf0\x17\x09\xc7\x49\x6c\xf2\x17\xe9\xed\x81\x7e\x1d\x61\x79\xbd\x33\x4a\x18\x87\x54\x22\x9b\x7a\xa4\xe8\x18\x26\xdc\xf6\x56\x8e\x8f\x5a\xae\x82\x96\xd9\xf7\xf2\x06\x3c\x83\x4a\xfa\x76\x1a\xa6\x56\x9c\x04\xd0\x9a\xfa\xe4\x0f\x55\xfd\x9c\xe6\x6c\x82\x2a\xe4\x92\xa1\xb6\x2b\x9e\x06\x5b\xf4\x07\x7b\xc1\xaa\x75\xad\xbe\xd9\x50\x3f\xc5\x49\xdc\x91\x7d\xd5\xcb\xf7\x55\x6e\xe9\x7f\x1c\x45\x96\x5d\x5e\x25\x60\x8b\xfd\x60\x1e\x2d\x90\xbe\x58\x1b\x93\xd3\xf6\x52\xbd\xca\xe6\xae\x6f\x1d\xbe\x7e\x82\x33\x5a\x57\x9a\xa7\x34\x51\x16\xa0\x60\xca\x32\x36\x2b\xbb\xe5\x1a\x7f\xf9\x89\xb8\x96\xd3\x7f\x23\xee\xb4\x95\xf7\xe9\x7d\xfe\x67\x85\x2d\x28\xc5\x28\x89\x2f\x0a\xda\x70\xa6\x07\x94\x69\xff\x26\xe9\x50\xbe\xf6\x83\x80\x86\x1f\x95\xf7\xa8\xfe\x64\xfd\xde\xaa\x76\xbe\x2d\xac\x25\x71\x82\x3b\x77\x39\x7f\xda\x5a\x0b\x17\xb1\x28\xa9\xde\xc3\xae\x68\x33\x6c\xe9\xb8\xa2\x0a\x86\xa6\xf8\x14\x4c\x89\x55\x67\xb7\x9c\xec\x94\xad\x01\xba\xfa\x55\x69\xac\xec\xb5\xf8\xa4\x12\xbe\xa9\x4a\x3a\xd7\x31\x4e\xb6\x38\x5a\x69\xd2\xa6\x40\x7b\x9b\x56\x9d\x96\x5b\xd7\x86\x06\x5e\x59\xcb\xb3\x85\x72\x03\x03\x9e\x05\xcf\x97\xaf\xf6\x09\x9e\x42\x24\xd6\xe7\xcd\xaf\xfd\xba\x58\xb5\x95\x90\xba\xcd\xa1\x5b\x6c\x40\x26\xbc\x1b\xdc\xc0\x36\x2b\x9b\x05\x23\x55\xcb\x0f\x56\x44\xe5\xdc\xa0\x11\xa1\xa0\xce\xcb\x53\x0c\xaa\x3c\xc5\xc4\xa5\xa7\x18\x8d\xe0\xcd\x5c\x92\x3d\xaa\x24\x97\x93\x14\x72\x58\xa5\x90\x43\x61\xf0\x26\xb9\x7a\x1a\x07\xb6\x0b\xe4\xca\x9e\xa7\x4e\x66\xf4\xa3\x0e\xdf\x7b\xbc\x1f\xc8\x7e\xe0\xf1\x65\x4e\x37\x42\xe4\x09\xc6\x20\x10\xcb\xa1\xcb\xcf\x50\xd9\xcd\xe4\x90\xd2\x79\xcb\x4b\x52\xf2\x93\x1c\x99\xd6\xae\x03\x2f\x47\xac\x14\xc3\xa1\xb9\x3e\xa4\xac\xac\xf9\x85\x53\xe1\x3b\xd1\x19\x27\x7c\xc3\x2d\x9e\x0f\x77\xc5\xb1\x30\x4f\x44\xc5\xfd\x48\x6c\x77\x7b\x1b\x3e\x7c\x58\xe0\xa9\xe2\x19\x4b\x8a\xab\xef\xbb\x2c\xdd\x0d\xaf\xce\x80\x72\xcf\x5a\x3b\x16\x99\xf3\x96\x64\x74\x86\x0f\x0b\x54\x59\x72\xc4\x64\x5e\xb7\xb7\x5d\x97\xf2\xc0\xe9\x87\x51\x44\x7e\x56\x1e\x46\xc3\xcb\xeb\xce\x38\x09\xe0\x2c\x44\x88\x5a\x5a\x95\xe3\xa7\xfe\xae\xe2\xab\x6f\xd3\x5b\xe5\xf7\x2b\xdc\x29\x3f\x7b\x67\x9f\x2c\x70\x18\xa5\x3b\x41\x32\xdb\xa1\x9c\xb3\x1d\x39\xed\xbe\xb0\x13\x13\x82\xf3\xa4\xc4\x71\x89\xbc\x4a\x43\x9c\xa0\xeb\x9d\x24\x0c\xc6\x9d\x39\x83\xe6\x40\x0d\xc8\xce\x35\xf2\xf6\xc6\x3c\xed\x2b\x32\x4b\x7e\x88\xc8\x69\x34\x86\x28\xcd\x5c\xe9\xe4\x23\xc7\x5d\x82\xab\x30\x8a\x9e\x40\xb2\x8f\x5f\xaf\xee\xb6\x49\x7a\x43\xf7\x02\xcc\xca\x15\x9e\x72\x6e\x35\x9f\x65\x66\x09\xe2\xfc\x83\xdc\x87\x52\xf9\xa1\x97\xc0\x9e\x0d\xe9\x3a\x3b\x41\xc9\xec\x35\x4a\x66\x61\x0a\x5d\x27\xab\xd1\x24\x8c\x83\x93\x24\x80\x3f\x5e\xbf\x7b\xf3\x9c\x3d\x4f\xd1\xd8\x2d\x56\xd1\x0f\x02\x47\xc9\x14\xdc\xcc\x60\x9a\xfa\xea\xb8\x60\x29\xf1\x30\xf3\x70\xc4\xee\x12\xe4\x86\x4a\x4f\x47\x5f\x92\x64\x4b\xf2\xbf\x56\x36\x2b\x52\xb9\x7b\xc7\x96\xac\x9e\xb7\x52\x13\x77\x32\xf0\x37\x35\x2b\x93\x6a\xeb\xd8\xfe\xe3\x7f\xe2\xbf\x9f\x5e\xfd\x72\x1f\xd9\x93\xa9\x35\x4c\x7d\xf0\x27\x9d\xf2\x7d\xa3\x53\x6e\x12\x91\xc4\x5d\xaa\x15\x4b\x7e\x25\x09\x73\xf9\x75\x01\x9f\x44\xf2\xda\xbd\x04\xa9\x3a\xc9\x0c\xff\x51\x18\x7f\xa4\xe2\x31\x92\x84\x49\x64\xb8\x69\xcb\x34\xe1\xcb\xf1\x3d\xe7\x51\x35\xb3\x7c\x2a\x3d\x80\xf6\x81\x7d\x1d\xc2\x28\x68\x6d\x75\x32\xb8\x0e\xad\xc3\x43\x5d\x08\x49\x6a\x50\xb9\x00\x62\x3f\x8c\x8c\xf1\xbb\x5f\xb9\x76\xc0\xfe\x81\x7e\x4f\x6d\xbf\x32\xce\x98\x8d\x27\x5b\x46\xf9\x6b\x45\x4c\xe8\xea\x4d\x16\xa3\x59\x82\x60\x47\x0b\x73\xa5\x39\xc3\x4f\x73\x3f\x0e\x60\x60\x2b\x8c\x74\x82\x04\xa4\xdc\x0a\x2c\xfc\x3a\x72\xad\x54\xe2\x4f\xc4\x2a\x56\x37\x89\x25\x07\x9e\x31\x2b\xe5\x98\x5d\x17\x16\xdb\xc8\xf1\x8c\xfb\xb5\x34\x1e\xb3\x26\x27\xe2\x9a\x51\xb5\xbf\x24\x41\xba\x71\x8f\x97\x27\xd8\x74\x28\xa9\x7b\xbd\x39\x4a\x70\x82\xaf\xe7\xd0\x63\x37\x85\xcf\x30\x9c\x51\x52\x6b\x10\x56\x9e\x73\x93\x22\x8d\xba\x2f\x1e\x80\x3b\x27\x54\x3f\xec\xb6\xe3\x53\xcf\xf5\x87\x3d\x02\x5c\x7c\x07\x74\xe5\x5b\x97\x5c\xbd\xd7\xed\xfe\x49\xaa\xbe\x11\xce\xe7\x07\x39\x6d\x3d\x57\x87\xbc\x90\x0e\x55\xf5\x98\x1d\xb9\x52\x73\x13\x1f\x48\xe5\x99\x8f\xfc\x70\x38\xc4\xdb\xdb\x4e\x3c\xb4\xe5\xf1\x3c\x06\xf6\x77\x9f\x3b\x74\xae\x0c\xac\x9e\xed\xba\x20\x5e\x7e\x7b\x2c\xef\x71\x33\x96\x77\xd4\x98\xe5\xdd\x1f\xc6\x94\xe5\x1d\x69\x2c\xef\x0f\x7b\x20\x31\xf3\xbc\xfb\xd5\x3c\xef\x49\x7b\x9e\xf7\x25\x18\x17\xa2\xd7\x84\x99\x40\x4c\x07\x9a\xe2\xa7\x10\xa5\xf8\x71\x3c\x9e\x26\x88\x9c\x0b\xbc\xdc\xbc\xb7\xbe\xb7\x16\x91\xf5\xbd\x15\x85\x76\x55\x08\x99\x94\x1a\x2e\xce\xdf\xf7\xb6\xb7\x65\x08\x9f\x7c\x79\xd6\x1b\x3d\x52\x7f\x0c\x6e\x96\x6c\x6c\xf4\xf0\xb1\xed\x6d\xb8\x55\xa4\x5d\xe7\x9b\xa7\xeb\xde\x14\x58\xdb\xf9\x2b\x30\xf7\x51\x0a\x9f\xc5\xd8\x81\xa2\xc3\xfe\x8a\x92\xab\xa1\xd2\xe0\x24\x85\x29\x76\x98\xfa\xc9\x4b\x55\x52\xf2\x88\xb0\xcf\xcf\x88\x3c\x0f\x7b\x0f\x14\xd9\x20\x9f\xa7\xe1\x79\x14\xc6\x17\xb2\xbe\x6c\xcb\x24\x72\x11\x97\xca\x8c\xcf\xf9\xfe\x63\x9d\xef\x3f\x29\x06\xd3\x55\x4b\x54\x3a\x4c\x4a\xcb\x08\x87\x29\x29\xe3\x81\xff\x7d\xf8\xa8\x10\x78\xe7\x9f\x27\x97\xd0\x76\x07\xa6\x78\x39\xfe\x6e\x09\xa3\x14\xd2\x81\x8c\x6a\x1b\xfb\x20\x2a\xcf\x07\x94\x0e\x0c\x0d\xae\x2b\xeb\x67\xf2\x72\x99\x8f\xbc\x0b\x6b\x0f\xe5\x44\x11\xeb\xcc\xfd\x18\x1a\x28\xeb\x2b\xcf\xc6\x5f\xc8\x67\x64\xfc\xf2\xf7\xbf\x9f\x3f\x7b\xf7\x7b\x09\x85\x3d\x65\x9b\x97\x87\xe2\xf2\xd0\x87\xc2\x01\x56\x01\xd4\x2c\xb0\xad\xe4\xb4\xd0\x06\xcc\xc8\x55\x87\x34\x55\x21\xcc\x3b\xa3\xd9\x59\xf7\x5b\x22\xe2\x48\x62\xbe\x14\xae\x26\x1b\x9c\x1d\x88\xc0\xa3\xc4\x7c\x78\xd0\x55\x42\x4d\x07\xcd\x47\xfa\xd4\x73\x9c\xaa\x95\x10\xfd\xd6\xec\x52\xbf\xa1\xae\x5c\x53\xc7\x46\x37\x3b\xb9\xd2\xab\xfc\x18\xe4\x45\xb6\x0c\x8e\xe9\x6b\xc8\x1f\x36\x8b\x97\xd9\x2d\xd4\xb4\xc1\xa0\x34\x41\x76\x6f\xd0\xdc\x5a\xe7\x81\x4a\xff\xd6\x52\xed\x7f\x55\x55\x3f\xbf\x72\xac\x7b\x4f\x85\x33\x2d\x5e\xb1\x27\xd7\x29\xf4\x52\x99\x29\xdd\x54\xa5\xaa\x70\x01\xf1\x63\xa1\xf0\x3b\x76\x18\xd8\x5a\x7c\xb6\x54\x6c\xce\x26\x09\x1a\xfe\x4d\xea\x66\x18\xd8\x7f\x1b\x11\x95\xcc\x14\xb9\xcd\xb6\x19\xd2\x13\x23\x1b\xc4\xde\xdc\x47\x30\x16\x5a\x38\xd9\xb5\x8a\x7b\xa6\x97\x75\x9b\x0d\x10\x55\xaa\xf2\x71\xdf\xee\x8d\x88\xb1\x0e\xc2\x74\x1e\xf9\xd7\x43\xb6\x0e\xdb\xdc\x8a\x88\xbc\x64\x32\x49\xa1\x50\x87\xfa\x0f\x7c\x9e\x7c\xe6\x7f\x62\xcf\x86\xf2\x49\x18\xf3\x27\x99\xb2\x99\x00\x1a\xfb\x4d\xb7\x2b\x2b\x5f\x12\x9d\xca\xc5\xfc\xf4\xc7\x59\xa6\x5d\x3b\xbf\xe3\xa0\xfa\x1d\x47\x41\x26\xac\xdb\x73\x8a\x57\x28\x7c\x77\x60\xd6\xbe\x9c\xb1\xd6\xbd\x11\xbf\x2d\xa4\x68\x6a\xaa\x48\x84\x13\x27\xef\x88\xe9\xf2\x64\xbe\x03\xdd\xa5\x03\xdd\xdb\xdb\xdc\x07\xf6\x22\x66\x0d\x0a\xec\xad\x21\x39\xb1\x26\x13\xeb\x94\xee\x41\xdb\xdb\xec\x5f\x2f\xc4\x0c\x2e\xc1\x0a\x63\x8b\x6d\x8b\x4a\xc6\xac\xc0\x09\x4a\x66\x86\x12\xc8\x46\x1a\x4e\x9c\x2d\xc8\x53\x13\x81\xb0\x53\x8c\xd8\xf5\x23\x2f\x0d\x2a\x75\x04\xd8\xe5\xfb\x26\xdf\x7f\xb3\x83\x34\x4e\x4e\xe9\x87\xde\xd8\x8f\x22\x07\xba\x5e\x1a\x91\x99\x72\x04\x3a\x3d\xf7\x81\xcd\x92\xdb\xc3\xe1\x30\xde\xde\x86\x44\x1a\x52\x8c\x16\x63\x9c\x20\x7a\x1a\xd1\x9e\x78\x64\xed\xa2\xc2\x69\xbf\xf0\xe7\xf4\x9b\xdb\x5b\xfb\x14\xb2\xcf\x8d\x0d\xa3\x89\x1f\x0b\xb5\x94\x7f\xb2\xf3\x7f\x9c\x47\x83\x77\xe1\xed\x33\x37\xc6\xce\xa3\xc1\xd1\x6d\xef\xe0\x76\xb7\xef\x3a\x8f\x06\x27\x91\x3f\x9b\xc3\xc0\x7d\x44\x33\xf9\xeb\x8e\x87\xc9\xf4\x88\x5d\xbd\xa5\xb9\xde\x22\x27\x4a\x94\x5c\x59\xe4\x40\xf8\xf6\x7a\x0e\x9f\xd2\xcb\x08\xfb\x59\x7c\xe9\x47\x61\x60\xf9\x98\x48\x07\x8d\x9f\x49\xe7\x08\xfa\x81\x15\x27\x71\x87\x8e\xcd\x79\x04\xad\x30\x4e\xb1\x1f\x8f\xa1\xf7\x3e\x7e\x16\x5b\x09\x0a\x20\x22\x49\xcf\xa1\x25\x92\x00\xfa\x01\x0d\x04\xb2\x12\xda\x5d\xa9\x35\x5b\xa4\xd8\x9a\xfa\x97\xd0\xf2\xad\xb3\xdc\x70\x8f\x1c\xd7\x9a\x41\x3c\x4d\x02\xcf\x76\x97\x8e\xbb\x94\xf2\xc7\xaa\x7f\xe3\x90\x89\x43\xef\xaa\xf1\xf7\xc2\xdf\xd7\xdd\xde\x76\xc8\xaa\xc4\x7f\x3d\x98\x24\xc8\x61\x03\xda\x25\x3a\x30\xbc\x62\xfd\xea\x60\xf7\xbb\xf8\x7f\xf0\x77\xf1\xc3\x87\x2e\x3a\x8b\x47\x43\x78\x16\x8f\xc4\x61\x12\x2d\xbf\xc8\x95\xc4\xf8\xdf\x57\x8f\x9f\x1e\x1f\xbe\x35\x2b\x5f\x4d\xd4\xae\xbb\xbc\x94\xa0\xa8\x79\x08\xd3\xb8\x65\x0d\xf7\x91\xee\xb9\x14\x02\xb4\xc6\x37\xb8\xb7\x07\x7a\xc5\xe0\x57\x53\x8c\xec\xae\x00\x98\x2c\xa0\x8c\x16\x2d\xd0\x3c\x9b\x30\x9e\x2f\xf4\x08\x86\x30\xb0\x55\xb7\x43\xee\x9e\xc4\x2d\xab\x3c\x37\xc5\xe3\x48\xea\xfd\x59\xdc\x42\x66\xfb\x94\xf6\xf9\x2c\x91\xf6\x5e\xde\x08\x48\xfb\x66\x33\x4d\x56\xc3\x26\x43\x7e\x10\xca\xa8\x7b\x23\xea\x94\xa6\xdc\x66\x90\x53\x1c\x77\x96\x3f\xf4\x51\xe8\x77\x38\x26\xab\x4d\x12\x9b\x5c\xb0\xec\x32\x54\x78\x86\x00\x4f\x3f\xff\x20\xb0\x67\x8d\x1e\x4f\x8d\x0c\xb0\x2d\xac\xb4\xcd\x02\x84\x57\xa9\x79\x17\xd8\x27\xe2\x77\x39\xa8\xd8\xca\x77\x18\x65\x61\x5c\x44\xdc\xcd\x07\x1e\x51\x99\x66\xa0\xbf\xa5\x38\xa9\x0d\x11\xe2\xea\xe2\xde\x6a\xc6\xa6\x51\xef\xb4\x81\xa9\xfd\x86\xfa\x26\x87\xf2\xb6\x52\xf7\xb4\xbd\xc5\xa9\x6f\x73\x2b\x94\xe7\xfb\xdf\xdb\xab\x44\x20\xde\x35\x3e\x46\x51\x6b\x56\x6e\x55\xaa\xef\x4b\x36\x7a\xde\x12\xd7\x17\x5b\x5d\x71\x43\x42\x87\x8e\x55\x8c\xfd\x9d\x5c\x42\x34\x89\x92\x2b\x6a\x60\xf3\xd3\x74\x60\x2b\x4f\xa8\x87\x50\x1e\xa7\x6b\x09\x18\x0c\xb9\xfe\xec\x83\xfe\x88\x29\xe3\xa5\xc6\xb1\xad\xae\x0b\x98\xb6\xc5\x4e\x5d\xac\x76\xdc\xdb\x86\x1f\xd8\x0a\x50\x5d\xd2\x6a\xc8\xed\x85\x62\xdf\x62\x86\x6d\xf6\xdf\xbf\x81\x0c\x17\x8c\x9e\x18\xcb\x2c\x88\x0f\xf2\x75\x13\xe8\xeb\xb8\x68\xd3\x13\xe6\xe9\x98\xd7\xd3\x5d\xb2\x3a\x85\xc1\xe3\xf9\x1c\xfa\x28\x83\x1e\x23\x9d\x40\x81\xc7\xe4\xbb\x82\x8f\xd1\x77\x4e\xd3\x7b\x23\x7e\xc0\xdc\xde\x76\x60\x1e\x99\x2c\x33\x48\xba\x9e\x1f\x04\x3c\x1b\x08\x90\xe3\x74\x41\x9c\x5d\x75\x31\x57\x5e\xbe\x9d\x8f\x5c\xd7\x5d\x82\x0f\xb9\x01\x15\x47\xef\x42\x87\x64\x83\xd5\x63\x87\x18\x71\x42\xa6\x1d\x45\x4e\x10\x3e\xfb\x94\x1b\x76\xf3\x92\xf4\xc0\x57\xcc\xa6\x22\x9e\xdf\x49\xdc\xed\x6d\xbf\x68\x4f\x4d\xdc\xa5\x83\xab\x5a\xc9\xd2\x89\xfe\xaa\x6f\xa8\x04\x83\xa3\x3e\x5b\x70\x23\x57\x5f\x64\x41\xde\xde\xae\xea\x27\xa0\x0a\x30\x17\x67\x69\xe1\x67\xa5\x50\x11\x11\xd7\x74\x37\xcb\x65\x8d\x5f\xda\x5d\x5f\x09\x82\xe6\x75\x2c\x77\xd3\xa3\x82\xfd\xa0\xbe\xaa\xd5\x82\xac\x0d\x71\x23\x59\xae\xba\x1c\x0b\x27\x8e\x36\x8d\xd4\xd5\x84\x4d\x63\x22\xc2\x64\x11\xda\x1a\x0e\xb1\x76\x29\xc6\x24\x5c\xd8\x90\x0a\x72\x4d\x72\xfe\xde\x74\xa7\xe5\x2a\x40\x8e\x1a\x58\x9f\x94\x7e\xe4\xde\xde\xe6\xaf\x2b\x90\xeb\x3e\x28\x49\xbc\xbd\x6d\xb8\xc2\x40\xee\x72\x69\xbc\x96\xd2\xbc\x9f\x75\x2b\x95\xed\x3e\x52\x46\x16\xba\x03\x7e\x95\x2b\x27\x87\x19\x8d\x51\x33\x9f\xfd\x45\xd5\x8d\x5d\x79\x41\xba\xd5\x55\x6e\x63\xf5\x75\x9a\x1e\xaa\xce\xc8\xac\x19\x8a\x13\x93\xb6\x3e\x3f\x50\x7c\x19\x85\xb4\xc1\x65\x01\x91\x30\x6d\x68\xa5\x8a\xfc\x6b\x88\x6a\xc3\xe7\xe5\xa9\x1f\xb7\xb7\x3a\xc5\xdf\x80\xd5\x29\xce\xac\x4e\x68\x75\xab\x13\x2a\x5a\x9d\x50\x9d\xd5\x09\x65\x56\x27\xd4\xd0\xea\x84\xda\x5b\x9d\x90\xab\xb7\xf4\x9b\xb5\x3a\xc5\xdf\x86\xd5\x09\x55\x5b\x9d\x76\xff\x39\xfe\x75\xfa\x8f\x3f\xf6\x9b\x03\x45\x94\x1c\x18\xcb\xc2\x9f\x8a\xc6\x99\x2e\x33\xce\xe4\xcf\xea\x65\xe6\x99\x4d\x9b\x55\xf2\xc7\x08\x69\xd9\xea\x08\x60\xe7\xdc\xf9\x6d\xb6\x88\x70\x38\x8f\xa0\x62\xea\x02\x22\xa0\x6a\xf3\x10\x27\x85\xb5\x50\x1e\x3d\xfc\xca\xa3\x07\x5a\x19\x77\x59\x39\x90\x94\x5e\xf0\xb8\x37\x4c\x5d\x52\x37\x88\xd4\xf9\x5b\x6e\x73\x70\x5d\x11\xfe\x63\x0a\xf4\x51\xc7\x7b\x6b\x38\x84\x86\x3b\xa2\x25\xc9\x21\x41\x4f\xfd\xf1\x54\xcf\x82\x59\xb2\x86\xc5\xaf\x34\xe3\x9d\x4b\x56\x3d\xe3\x96\xe4\x16\x76\x25\xbf\xc1\xae\x94\xf3\xa1\xdc\xf1\x4b\x7d\xe9\xbf\xfe\xdd\xfd\x24\x86\x7e\x3f\xfa\xad\x04\xac\xb0\xd9\xad\x7d\x2f\x8f\x84\x12\x85\xc6\x3b\x5a\x49\xb0\x9b\xc7\x34\xd4\x83\xa2\x69\xa8\xa2\x9f\x9e\x24\xf1\x24\x44\x33\x5f\x5c\xb4\xd7\x23\xa5\xe6\xac\x7b\x3d\x6e\xdd\x33\x05\x83\x32\x0a\x17\xf2\x94\x94\x91\x45\x59\x5f\x2c\xc2\xa0\xc0\x02\x61\x22\x97\x30\x12\x51\x14\x18\x2f\x95\xa2\x72\x2c\x97\x66\x93\x74\x8d\xc1\x8c\x35\xd0\x8c\x84\xd1\x6b\x73\xf7\x5c\x67\x1b\x16\xb7\xe9\xad\x6a\xa8\xdb\xac\xc6\xea\xf0\x35\x74\x3f\x56\xbf\xe9\xf8\x11\x44\x98\xf9\x1f\x4b\xa7\x79\x3b\x43\xb1\x3a\x02\xf6\x1f\x0b\xb8\xa8\xf6\x6f\x27\xfd\x2f\x3e\x1e\x8d\xea\x1c\x8d\x75\xd1\x20\x1f\xbd\x95\x7c\x3b\xa3\xbc\x07\xfc\xca\x32\x55\xe5\xad\xdc\x76\x1c\x5b\x42\x75\xd0\x99\xc5\xc2\xae\x1b\x4c\x27\xbf\x4c\x32\x6a\x27\x41\x3d\xee\xc3\x3a\xc2\x6e\x70\xc9\xe8\xad\xe3\x86\xd1\x12\x08\xd9\x40\x49\xd3\x6e\x81\x68\x40\x49\xd3\x35\xc9\x6d\x33\x9e\xae\xfb\xdd\xb3\xe6\xef\x37\xa6\x03\x55\xed\xbc\x5f\xc7\xf7\x65\x45\xef\x71\xb2\x66\x64\x47\x6b\xf2\x8b\xa6\xdb\x8c\xd5\x88\x74\x8d\xe7\x07\xc1\xe9\xe2\x9c\xfc\xe9\xc8\x12\xeb\x0c\x3e\x6d\xf2\x67\x66\x0b\x53\x11\x57\x61\x14\xbd\x81\x71\x00\x51\xbb\xbc\x0b\xf6\xd9\x9c\x8e\xc0\x1d\xd5\xc3\xf4\x8d\x04\x43\x72\xf4\x6d\x88\x85\x4e\xb7\xf4\x84\xc9\xcb\xd4\xbd\x00\xea\xdb\xff\x6d\xb1\x3b\x47\x1f\x2f\xaa\x5c\x2e\xc5\x46\x04\xec\x14\xc6\x41\x41\x05\xc9\x6d\x71\x55\x71\x8b\x06\x45\x41\x00\x76\x18\x23\x86\x0c\x0e\x91\x46\xee\x3c\x25\xae\x28\x23\x6f\x07\xf6\x0f\x1f\xe1\xf5\x79\xe2\xa3\x80\xb1\x97\xd8\x02\x14\x5d\x26\xaf\xdb\xc2\xb3\x20\xa5\x9c\x6b\x42\x9d\xc3\xe5\x66\xe8\xf7\x5e\x24\x08\x36\x5b\x30\x9b\x21\x94\x35\x77\x4d\x3c\x68\x14\xd4\xc5\x97\x45\xa6\x5b\xc9\x28\xaf\xe2\x45\x5f\xb6\x44\x90\x03\xb1\x3a\x9f\x35\xe9\xaa\x14\x2b\x05\x71\x54\xc9\x4e\x89\xa4\xd2\xf3\xcd\x98\xf2\xf9\x5f\x7b\xf2\x2f\xc1\x12\x5b\xb8\x4f\x2c\xf6\x71\x1f\x90\x0f\xf7\x73\x7b\x93\xc1\xc1\xf2\x6e\x4e\xe2\xc6\x15\xe3\x2b\xa2\x8d\xc6\x49\x00\x3b\x61\x00\x63\x1c\xe2\xeb\xfb\xb1\x7e\x4d\xfe\xf9\xdb\x2f\xbf\xbe\xed\x9a\xbd\x96\xaa\xb9\x3a\x74\x9a\xab\x97\xa7\xaf\x1f\x9f\x3c\x3d\xfd\xf0\xf4\xe5\xe3\x1f\x9f\x3f\x7d\x52\x0f\xb4\x4e\xa6\x15\x65\x6a\xb2\xde\xbf\x17\xa8\x13\xef\xdf\xdb\xd6\x0d\x95\x12\x8a\xa9\xf7\xfe\xbd\x6d\x97\xe2\x8f\x51\x09\x61\xc9\xdf\xbf\xc7\x96\x35\x4f\xa2\x70\x7c\x6d\x0d\xc9\x57\x94\x78\xe9\xfd\x7b\x26\x70\xcb\xf7\xef\x63\xf2\xff\xb2\xc0\x0f\x73\x04\x27\xe1\x27\x8b\x26\x10\x05\x72\x75\xc1\xf0\xae\x90\x3b\x82\x7e\x90\xcf\xbc\xa9\xf6\xda\xb6\x5d\x25\xad\x22\x45\x56\xd6\xd8\x5c\xdf\xb2\x9a\xae\x33\xcd\x0c\x42\xfd\x55\xa7\x18\x0e\x27\xe1\xd8\x37\x1b\x7a\xbe\xc6\x0c\xbb\xec\xbe\x9b\x7e\x9c\x8d\x7f\xae\x31\xec\xd4\xee\xf5\xaa\x4f\x1c\x3f\xc9\x9a\x18\x10\x73\x2b\xe9\x5a\x03\x9b\xef\xca\x4d\x62\xc4\xd2\xdc\xaf\x4b\x54\xf6\x49\xe4\xa7\xd3\x17\x0c\x84\x23\x6d\x80\xa9\x92\xc4\xa4\xde\x11\xc4\x70\x23\xa8\x29\xab\x29\xfd\xd9\x35\x1c\x30\x78\x4d\xd8\x7f\xc9\xbc\xe4\xa5\x0e\x4e\x7a\xf2\x06\x87\x33\x98\x2c\xf0\xe0\x00\xee\x02\xd6\x51\x30\x78\xcb\x9f\xed\x76\xbb\xb4\xf1\xe2\x9e\xf3\xed\x8b\xe7\x4b\x1e\xb8\x87\xc3\xf1\xc7\xeb\xed\x6d\x27\xe6\x7f\x0e\xb7\xba\x2e\x90\xb7\x94\xe2\xca\x9c\xf6\xb2\x37\x8e\xa0\x8f\x44\x7f\x3a\x2e\xb0\x45\xb5\xb3\x0b\x2c\x76\x8d\x3d\xc1\x10\x3d\xe2\x50\x2a\x1e\x82\x69\x12\x5d\x42\x27\x7b\xe5\xb8\xae\x37\xf6\x71\xde\xba\x1b\x4e\x1c\xfb\x2d\xf2\x63\x16\x8c\xf3\xf8\x3c\x41\x98\xde\xc4\x0d\x21\xbb\xa5\x62\x57\x42\x70\xe9\xba\x1e\x9e\xc2\xd8\x51\x63\x31\xa1\xa8\xa3\x1f\x04\x4e\xec\x2e\x5d\x7e\x39\xaa\x3f\x6d\xbb\x0c\x50\x50\x9e\x14\x46\x70\x8c\x77\xc6\x53\x1f\x61\xef\x13\x9d\x5d\x77\xba\x18\x64\x0f\xe8\xc4\x57\xea\x60\x53\x49\x0c\xfd\x68\x60\x47\x89\x1f\x50\xd7\x1e\x5a\x9f\x74\x70\x43\x1e\xc0\x60\x70\xb3\x04\xfc\xd5\xe0\x26\x89\x07\x37\xa7\xef\x4e\x4e\x9e\x9e\x9e\x0e\xa4\xff\x80\xcd\x12\xda\xcb\xd1\x92\x85\xae\x35\xef\x81\x4a\xb4\xa5\x26\xbd\xf6\x75\x4c\xe2\x3e\x7c\xf2\x22\x3c\xbc\xea\x9a\x57\xce\x53\x36\x9e\xf6\xcf\x0b\x8a\x70\x6c\x3f\x16\x40\x37\x82\x28\xd1\xe6\x2b\xaa\x0d\x04\x5c\xb2\xfe\x4f\x99\x21\x9d\x43\x27\xc3\x0e\xed\x02\x79\x0c\x48\xd1\x58\x1e\x80\xd8\x9b\x2a\x27\x3e\x7b\x55\xa2\xfd\xac\xf6\x52\xeb\x2e\x30\x4b\x1d\x00\x19\xf7\x24\x32\x9f\x91\x6f\x18\xe1\x83\x10\x94\x26\xd0\x2a\xba\xfb\x76\x3f\x3b\x4e\xaa\xc2\xcb\x6e\x0a\x8e\xab\x69\x77\x14\x50\x74\xc6\x73\xa4\x82\x1b\xee\xae\x42\x06\xb2\x61\x5e\xa5\x42\xfe\x95\xa0\x99\xb9\xb4\x06\x7a\xff\x20\x4c\xfd\xf3\x48\x7a\x93\xcb\x9f\x26\x30\x18\xc5\x40\xbd\x0b\x8e\xc0\x99\xfd\x6b\x18\x07\x8c\x55\x43\x87\x0f\xd3\x71\xe3\x1b\x98\x28\x73\xa7\x6c\xc0\x0b\x68\x69\xab\xd4\xff\xef\x24\x89\x71\x18\x2f\xa0\x75\x15\xe2\xa9\x8a\x64\x29\x99\x41\x48\x13\x9e\xb0\x28\x28\x01\x9b\x2a\x1e\xbf\xd4\x90\xf4\xa5\x6c\x95\x41\xed\x66\x1f\x51\xd5\x9c\xf6\x49\xa6\x12\xd5\x09\x8d\x63\x4b\x08\xd7\x42\x36\x8a\x3e\xed\xd6\x40\x59\x96\x8c\x7b\x15\xcb\x47\x95\x75\xf5\xa8\x94\x1c\x7b\xb5\x4b\x03\x25\xf6\x56\x01\x09\xca\x64\x46\x00\x08\xd1\x35\xb9\x43\xe5\xac\x0b\x4c\x53\x63\x25\x4e\x1e\xfd\x32\xaf\x86\x5c\xa5\xe0\x3e\xd0\x05\xf6\xe9\xe9\x2b\xeb\x75\x26\xe0\x75\xe4\x29\xf3\xe4\x0a\x22\xb9\x6f\xf2\xe5\x2d\x9b\x6c\xf6\x0f\x49\x9c\xe1\x5d\xb1\x64\xec\x79\x0a\x7d\x34\x9e\x3e\x8d\xb3\x84\x73\xe6\xad\x2d\x56\xed\x6c\x8a\x56\x4c\xa8\x23\x60\xcf\x16\xd8\xd4\xcb\x85\x9b\xa7\x5d\x70\x40\x3f\xa2\x92\xc6\x56\x81\xac\xbf\x9b\x78\x77\x97\x40\xaa\x57\x2d\x1e\x87\x8d\x16\x8f\xaa\xd9\x6d\x9a\xcf\x87\xe6\xf9\x7c\xb8\xca\x7c\x3e\xdc\xcc\x7c\x2e\x64\x73\x97\xf3\x39\x9f\xdb\x61\x09\x3b\x7e\x75\x0c\xca\x6a\xfb\xc4\x8a\x8b\xfc\xc1\x1a\x8b\xfc\xf3\xe4\xc2\x0a\xe3\xca\xb6\x15\xfb\xe4\xa0\x1e\xe1\x7e\x25\x14\xf7\x06\xca\x0c\xe7\x75\x6d\xa6\xcd\x18\x6c\xe3\x73\x94\x5c\x20\x98\xa6\x16\x51\x84\x31\x44\xb3\x30\x66\x5a\x6d\x21\x34\xaa\x25\xa4\x71\x0f\x64\x16\xce\x35\x4e\xda\x05\x5d\x7d\x6d\x18\xe3\x2f\x0a\x32\x4a\xb5\xe1\x61\x06\x05\x5b\xe5\xea\x2d\x11\x5a\xe8\x97\x74\xb9\xe4\x5e\xcf\x42\xf1\x75\x6c\x7e\xf4\xb1\xdb\x5f\x12\x31\xab\x57\x67\x92\xa0\x59\xe3\x43\x0f\x49\xdc\x91\xbf\xf9\x67\x5f\xe7\xc0\xf3\xd3\x93\x7f\xbe\x39\x7e\xfe\xba\xc4\x54\x14\x8c\xc9\xe1\x86\xfc\x87\x43\x45\x8a\x8f\x1b\xa3\x7a\xec\xe7\xfd\x83\x26\x21\x8c\x82\x94\xa8\x17\x4a\x08\xe7\x81\x49\xe1\xae\x84\xb0\x90\x15\x29\x4e\xd2\xe6\x7c\x96\xcd\xa2\x08\x5f\xd3\x11\x56\xf6\x30\xc5\xa3\xc2\x8f\xa2\xe4\xea\x19\xb7\x44\x72\x54\x79\x64\x09\xd3\xe4\x23\x3b\xa3\xff\xcc\x05\xc8\x9a\x96\xbf\xbc\x23\x54\x3e\xf3\x46\x64\x0f\xf3\xd2\x76\xf0\x9c\x42\xc8\xc8\x08\xf9\xf0\x31\x33\x33\x79\x48\x55\x6f\x7a\xb5\x73\xb1\x60\xbe\xb1\xd4\x7c\xed\x59\x6f\xa7\xf0\xda\x4a\xfd\x4b\x68\x5d\x27\x0b\x2b\x4d\x66\xd0\xc2\xe1\x0c\x52\x9e\x43\x38\x99\x24\x08\x93\x17\xef\xff\x86\xa0\xb5\xa0\x48\xf4\x9c\xc9\x70\x92\x20\xf2\x67\x0c\xc7\xd8\x9a\x40\x1f\x2f\x10\x4c\xbd\xd2\xb6\x97\x43\x8f\x28\x6e\x16\xd4\x35\xf3\x02\x25\x8b\xb9\x5d\x0e\x80\x29\xb4\x50\x1b\xd8\x90\x21\x5e\x4b\x26\x49\xdb\x9a\xfa\x69\x07\x72\x44\xeb\xa2\xee\x62\x3a\xeb\x49\x62\xfb\xc6\xe7\xbd\x8d\xa8\xb1\x3d\x71\x1a\x97\xe1\xc8\x55\x64\x13\x56\x55\x60\x33\x3b\xfc\x9b\xfc\x96\x44\xd6\xf6\x99\x68\xe5\x28\x77\x20\xe4\x14\x5a\xa2\x2e\xca\xbc\x2b\x46\x38\xeb\x40\x90\x7c\x08\xd4\x99\x6a\xcc\x25\x77\xfc\xac\xf1\xdc\x65\xad\xa0\x89\x52\x88\x3b\x29\xd4\x8d\x00\xb4\x31\x59\xf6\x32\xf3\x33\x5b\x5a\x3e\x44\xa0\x04\x7f\x30\x6a\x1e\x54\xdd\x54\x6f\xd9\x5b\x85\xe6\xa0\x7a\x5a\x6f\x70\x50\xbb\x72\x50\x6d\x5b\x6f\xfa\x34\x0c\x02\x18\x17\xdb\xde\xdc\x9b\x27\x47\x28\x5d\x70\xca\xd4\xc0\x95\x48\xa9\x1d\x0c\x3f\xe1\x02\x7e\xad\xca\x13\x9b\x9b\xc9\xd9\x61\x81\x9d\x02\xf2\xe9\xc2\xf4\x35\x0a\x53\x1c\xc6\x06\xfa\x3e\xd3\xec\x37\x9f\x5d\x2a\xce\x96\xe5\xf4\xc6\xa5\x43\x25\xe7\x90\x52\x4f\x79\xc8\xd1\x06\x33\x47\x80\x68\x9f\x91\x64\x23\x5b\xca\xa8\xbf\xc0\xc9\x24\x19\x2f\x88\x6a\x91\xfd\x2d\x27\x0f\x2f\x7a\x25\xaf\x77\x3a\x10\xa5\x62\x6f\x17\xd8\x72\x4d\xeb\xd9\x0b\xff\x53\x38\x5b\xcc\xac\x5e\xff\xc8\x22\x2a\x9a\x3f\x26\xc2\xe1\x59\x2f\xfc\x6b\x2b\x89\xa3\x6b\x2b\x8c\xc7\xd1\x22\x80\x56\x04\x31\x79\x63\x39\x8b\xf9\x1c\xa2\xb1\x9f\xd2\xdd\x64\x27\x41\x56\x44\xce\xe2\xe4\x81\x2b\x9e\x30\x8a\x42\x92\xcb\x22\xc5\xd6\x39\xb4\x16\x71\xf8\xc7\x02\x7a\xa5\x11\xc1\x05\x43\xe1\xdd\x88\x53\x0b\x42\xef\x12\x86\xab\xb2\xfa\x50\x89\x09\x03\xe1\xfe\xdc\x94\xa7\xad\x6a\xc9\x29\x9f\x95\xca\xa1\x25\x9b\x90\x6d\x27\xc5\x9b\x45\x04\xd3\x6a\xda\x9f\x63\xe3\x1d\xfe\x93\x57\x27\xa7\x1f\xde\xbd\x79\x2e\xd5\x24\x7b\xe7\x62\x11\x06\x30\xdd\xf1\xc7\x91\x37\xc5\xb3\xe8\x2f\x68\x11\xc1\x4e\x3a\x87\x63\x79\x35\x98\xcd\x07\x44\x5a\x62\x4f\x61\x34\xb7\xe2\x24\x99\xc3\x18\x22\x2b\x4e\x10\x9c\x40\x84\x98\xe9\x87\x39\x63\x72\x33\xf8\x87\xf3\xc8\x8f\x3f\x2a\xad\x73\x7e\x39\x79\x6e\xfd\x44\xb1\x43\x5d\xbb\x10\xed\x51\x10\xa4\xea\xdd\x4d\x90\x83\xc8\xab\xe9\xe6\xd4\xef\xb6\x60\xf1\x0d\x60\x07\x06\x21\xa6\x66\x12\x76\x32\x45\xd0\x0f\xc8\xdc\x51\xad\xf8\xe9\x75\x8c\xfd\x4f\xcc\x32\xc5\xe6\x3c\x67\xec\xa9\xd9\x0f\xe8\x30\x8d\xb2\xbe\x9e\x8e\xa3\xfa\xd5\xa2\x55\x9e\x15\xfe\xcd\xa0\xe8\x9e\x64\xe8\x30\xa2\xe4\x33\x03\x8c\xea\xf1\x4d\x8b\x94\x76\x19\xe3\x42\x3a\xca\x1c\xbd\x5a\x31\x04\x35\xa6\x37\x34\x8d\xb8\xe6\x89\xf0\xe7\x70\xd7\x0c\x77\xbe\xb7\x94\x03\xdd\xdd\x0e\x69\xb3\xae\xcf\xba\x59\x2c\x88\xb9\x6b\x33\x3a\x00\x1f\xe1\x35\x3b\x7d\x28\xdd\x59\x7e\xf0\xa0\xdd\x45\xeb\xa8\xa9\x1d\xed\x06\x4e\xcb\x59\xe6\x78\x37\x03\x59\x71\x1e\x2d\x69\xda\x9d\xec\x83\x2c\xf3\x75\x36\xc2\x15\x54\xd6\xd5\x57\xfe\x96\xeb\x80\xee\x00\x4a\x03\xd2\x38\xe3\x90\x7a\xf5\xab\x7a\xc6\x12\x79\xdb\xf9\xef\x9d\xff\xde\x21\x89\xc7\x30\xa6\x2d\x68\x7e\xa7\xa0\x7e\xa5\x9e\xb9\xd4\x63\x11\x49\x63\x9b\x5c\x2c\x9b\x68\x0d\xd9\xbd\x6d\x19\xc9\xa7\x41\x6b\x78\x22\x6b\x65\x52\xa8\xab\x2e\x67\xc4\x3d\x8b\xbc\x83\xf9\x29\x84\x51\x60\xbe\x9e\x79\x1d\xf9\x63\x38\x4d\x22\x6a\xe3\x51\xee\x72\x84\xe3\xeb\xcc\x9f\x77\xce\xaf\x6d\x71\xf1\x00\x2a\x7a\x0c\xc8\x24\xfa\xc5\x18\x17\x09\xb5\x3d\x62\xd6\x06\x63\xf5\xf3\xb7\xd7\x73\x68\xf9\x56\x96\xb9\xa5\x1c\xe3\xaa\xe6\xb2\xde\x57\xcd\xf1\x7c\xb2\xdb\x8d\xdd\xec\xe2\xa8\xd0\xd1\xf9\x89\xb1\x6b\xe4\x28\x58\xe3\xf8\x5a\x66\x26\x67\x1a\x67\x72\x71\x11\x55\x81\x8e\x99\x64\xe7\x37\x1a\xdc\xad\x8d\x52\x29\xe4\x58\x9d\x21\xa6\xf6\x8c\x5d\x38\x96\x85\xe9\xe9\x38\x99\xc3\x60\x54\x66\x07\xd1\x6e\xaa\x32\x39\xe1\x9f\xa9\x22\x21\x31\xe1\x5a\x1a\x42\x2a\x0f\x73\x34\xd3\xf3\xe4\x53\xed\x81\xce\xd4\xb5\x8f\xa3\xa8\xac\x33\xab\x20\x96\x0c\x1b\x46\xbe\xb9\x55\x52\x72\xaf\x17\xc2\x66\x97\x3e\xa2\xd7\x3b\x99\x85\x32\x33\x5d\xca\x67\xd5\xd6\x46\x53\x05\xeb\xf4\x99\xfa\xe5\x39\x2f\x0f\x25\xf0\x65\x2d\x66\x40\xb6\x1e\xa5\xca\x24\x50\xac\x85\x7d\xf5\x26\xb7\x72\x86\x08\xf8\x13\x3e\x72\xca\x87\xa0\x64\x79\x4d\xef\xc1\x04\xaa\xb3\xdc\xf6\x57\x20\xf8\x35\x84\x33\x68\x64\xbe\x05\x1f\xa4\x92\x5e\xa9\x3e\xd3\x88\x15\xe9\x08\xd8\x93\x30\x0e\x72\x9b\x9f\xbc\x18\xad\x9a\x2f\x2d\xce\x39\xf7\x52\x38\x19\x80\x37\xaf\x8b\x10\x4b\x45\x92\xee\x87\x08\xf5\xb4\x2d\xbb\xbd\xf0\x94\xa9\xc2\xbd\x1a\x63\x11\xfb\x5f\x2b\xd5\xba\x9d\xba\xdc\xe4\xa4\xbc\x8e\xb5\xaa\x4a\xe7\x84\xe9\x18\x85\x54\x7d\xb4\x9c\x57\xf4\x5f\x3f\x72\x4b\x8d\x65\x24\x7f\x1f\x41\xbf\xa1\xdc\x65\x99\x9b\xe4\x4e\x9d\xb5\x59\xca\x2c\xe1\x0a\x06\xdc\xa2\x37\x41\x53\x33\xa1\x36\xdc\x6b\x45\x3d\x15\xae\xc0\x1b\xfb\x12\x14\xa8\xa2\x6e\xc8\xa0\x0e\x6c\x96\xa3\x0d\x62\x5a\xa8\xf8\xa5\xdd\x87\x0e\xb6\xba\x3a\x95\x93\x52\x0b\x7b\x04\x84\xea\x31\xd8\xea\xad\xe0\x63\x90\x0f\x37\x95\x8a\x4c\x81\xa4\x88\x0c\xa7\xa7\x2c\x37\x0a\xf3\x2f\x77\x55\x90\xd7\x87\xc3\xb3\x1b\xd6\x1e\x7e\xa1\x0c\xc4\x9b\x81\x6d\x2f\x01\x7f\x77\xca\x2c\x62\x96\xbc\xf6\x55\x52\x15\xac\x65\xf2\xab\x97\x49\x60\xfe\x44\x3f\x97\x2e\x47\xcb\x4a\x40\x7e\x8c\xae\xeb\x3b\x67\xc9\xbc\xf1\x91\x06\xaf\x26\x3a\x08\xc4\x43\x24\x60\xd2\x48\xd5\x1e\xa4\x57\x21\x49\x1d\xbb\x37\x63\x3f\x85\x7c\x90\x14\xf5\x79\x80\x1f\x15\x30\x23\xe7\x08\x5e\x86\xc9\x22\x55\x77\xb6\x5c\xc7\x53\x37\x0e\x7d\xef\x73\xf3\xc3\x66\x48\xc3\x28\x5a\xdc\x81\x53\x9f\x92\x3e\x37\xd4\xa4\x28\x1c\xc6\xea\xb2\x82\x2a\x04\x69\x0b\xbb\x0f\xce\x11\xf4\x3f\x3e\xe0\x53\x60\xc0\xe1\x0b\x19\x83\x2b\xe2\x88\x93\x05\x68\x1a\xfa\x94\x08\x39\x45\x4d\x5b\xd1\x5b\x85\x1d\x92\x13\x03\x74\x5a\x89\xc7\xca\x78\x1a\x46\x41\xfe\xb3\x82\xc7\x8a\x0a\x74\xd5\x16\x68\x0d\x7d\x03\x40\x6b\xe8\xff\x1a\x78\x7f\xf4\x6d\x03\xad\xa1\x6f\x03\x68\xcd\xaf\xf6\xcd\x3a\xfe\xf7\x3f\x1e\xfe\xf1\xd3\xee\xdc\xec\x9b\x25\x2e\x28\x39\xca\x08\xfc\x04\xc7\x94\xf2\xd5\x1e\x93\x5e\x8e\x28\x26\x09\x8d\xbe\xd2\x02\xb6\x99\xe1\xcc\x16\x38\xcd\x8d\xdc\xb8\xf6\x89\xde\xa1\xce\x7f\xa2\x93\xf4\x76\x41\xaf\x3b\x12\x77\x16\xf3\x84\x1c\xd2\xa9\xa7\xd8\x0f\xf2\xfa\xe6\x07\xae\x08\xff\x30\xd7\x2d\x70\xdc\x63\x99\x2b\x4f\xf4\x63\x4e\x03\x1c\x8c\xc5\x5f\xe2\xb2\x07\xc8\xdd\xdf\x3e\xa5\xd6\x3c\xea\x55\x24\x9e\x35\x74\x80\xb6\x59\xa0\xa2\x01\xc6\xad\x2a\xf6\xbe\x01\x54\xca\x63\xb2\x41\x5a\x7e\x6c\xc1\x4f\xf4\x92\xf8\x82\xd7\xac\xa9\x23\x6a\x4d\x0d\xc6\x08\x9a\x5d\xdc\xda\x38\xca\x55\xe2\x16\x28\x46\x42\xb5\x7f\xda\x5d\xaa\x34\xd3\xd4\x75\xce\x01\x86\xbd\x1f\xc3\xab\x0e\xdf\x92\xca\x8d\x80\x95\xea\xfc\x09\xed\x22\xba\x24\xcd\xa5\x9f\x5e\xb5\xe5\xca\x56\x83\x24\xf8\x28\xa8\xf0\xdd\x99\x91\x99\x82\x3b\xcb\x6b\xa0\x2a\xd4\x73\x9a\x50\x5a\x24\x0c\xcd\x6a\xc2\x4e\x5b\x23\x0d\xcd\x09\x05\x84\x5f\x63\xbf\xe0\xbb\x02\xaf\x14\x77\x46\xd3\x81\xb2\x01\x2c\x7b\x83\xaa\x36\x45\xf7\x97\x26\xfe\x4c\x75\x17\x79\xb1\x1f\xea\x6a\xc2\x56\x17\x7a\x08\xe0\x5a\xf2\x33\xf5\x2a\x91\x2c\x05\x5c\xf9\xd7\x57\x90\xdc\xca\x62\xce\xc0\xc8\xe6\xbb\x99\xce\x10\x08\xfe\xcd\x07\x4e\xb8\xf4\xab\x51\x72\xaa\x4f\xbf\x66\x3d\x2b\x5e\x43\x84\xe9\xa9\x7f\xc9\x1d\xd8\xcb\x9d\x59\xf2\xaf\xf8\x36\xae\x5a\xd6\x94\xe8\x15\x69\xdf\xe8\x4b\xfb\x46\xba\x38\x9f\x85\xf4\xf0\xbd\x5b\x42\xd7\xee\x5f\xea\xc7\x5e\xad\xd0\xec\x0e\xb3\x1e\xcb\x4d\x0f\x30\xab\xa4\xa6\x81\xb8\x78\x37\x5d\x09\x37\x58\xec\xb4\x96\x41\x7d\xeb\x86\x00\x34\xf0\xe5\x69\xbe\x10\xfa\x71\x60\xd1\x63\x9b\x79\x82\x97\xc7\x93\xb4\x16\xbd\x12\x81\xab\x11\x1a\x31\x42\x25\x32\xf3\x65\xe5\xe1\x84\x69\x4a\x0d\x97\xc2\x23\x03\x1d\x7b\x4b\xc7\x04\x31\xa2\xeb\xab\x06\x89\x30\x1d\xd5\xd1\x48\xe6\xa3\xaa\x0a\x37\x80\x75\xa1\x48\x0d\x2a\x43\x3b\xb9\x01\xbe\x12\xf6\xcf\x17\x91\x8f\x3a\x82\x41\x3f\xdb\x68\x33\xfc\x27\x45\x39\x6c\xb2\xd7\xd2\x54\x69\x82\x30\xb7\x62\xb3\x69\xf0\x36\x9c\xc1\x41\x00\x53\x11\xb9\x30\xf0\xc9\x9f\xe6\xf8\xc4\x7a\x70\xa5\x0d\xed\xcb\xc2\xa2\x38\x6d\xea\x51\xda\x60\x03\x6a\x50\x3d\x94\x5c\x35\xaf\x5b\x50\x1a\x12\xc8\xf6\xe8\x1d\x76\x24\xb6\x81\x42\x83\x59\xee\x46\x1f\x2a\x09\xed\x67\x4f\xda\xf9\x8a\x98\xbd\x08\x8f\xd8\x9f\x1d\x9c\xd8\xf4\x72\xdd\xf3\xc7\x51\xea\x89\x18\x06\x0f\x06\x21\x96\x16\x7e\xb5\xc8\x51\xde\xb0\x5e\x71\x37\xd3\xd6\xa5\xa8\xa4\xca\xb1\x7a\xa1\xa2\x5c\x85\xad\x53\x0d\x7d\x4b\xb8\x3b\xa1\x11\x33\xb4\xee\xe8\x51\xb0\xf8\xb3\x46\xb5\x36\xf6\x6b\x15\x6b\x72\x0d\x0c\xec\x1f\x64\x98\x5e\x76\x8d\xc8\x3c\x9d\xec\x1d\xbd\xdb\xb3\xb0\xd0\x1d\x5b\xf5\xca\x00\x36\xb7\x87\xed\x98\x45\xa6\xf9\xad\x32\x83\x3f\x78\xc6\x74\x9c\xea\x4b\x65\x72\x4e\xfa\xcc\xa2\x79\x1a\xec\xff\x0d\xbb\x78\x45\x37\xc4\x4c\x85\xa9\x0b\x53\x11\xe9\x70\xb9\x0b\xcf\xa0\x4c\xb3\xc8\xbe\x0e\x1a\x05\xc3\x64\x73\x43\xf7\xa7\x31\xb9\xae\xd4\xeb\x34\x1b\x98\xd6\x9b\xe8\x9d\x74\xa3\xdd\x73\x04\xec\xdf\x93\x90\x08\xa5\x0d\x2c\x7d\x81\xd6\xdd\x22\xf2\x27\x04\x4d\x50\x41\x71\x0d\x8f\xcb\x29\x1d\x37\xd3\xe1\x79\x9d\x76\x9d\x5b\xbe\x5c\x1e\x7f\xfa\xa5\x1b\x56\x86\xd5\x5d\xd2\xad\xa6\xce\xb2\xd2\x63\x59\xfa\xc4\x32\xaa\x83\xbb\xf5\x00\xd7\x77\xd5\x3b\x75\xfe\xde\xe4\x82\xfb\x25\xfa\xb4\xd2\xcd\xfa\x8e\xfa\x6d\xad\x46\xaa\xb8\x44\x59\x6b\x0b\x5e\x96\xca\xe2\xa5\xb9\x41\xb3\x26\xe9\xee\xc8\xa3\x9a\x0d\xb6\xe1\xd2\xb4\x09\x1a\x4c\x0d\xd9\x3e\x67\x62\x14\x26\x7a\xd2\xf0\xc7\x88\x07\xd8\x2e\xf8\x1f\x57\x7e\x4c\x6f\x53\x18\xbe\x1a\x85\x4b\x13\xa0\x90\x13\x94\xcc\xd8\x03\x9c\x7c\x84\xf1\xa3\x26\xc6\x25\xab\x8d\xb9\xaa\x69\x86\x95\x86\x03\xdd\xfe\x0b\x23\xc8\xcc\x1f\x8a\x39\x20\x03\x8e\x28\xb3\x07\x08\xc4\x13\x0e\x16\x5b\xf4\x50\x92\xe7\x39\x65\xd5\x67\x49\x5b\xe1\x6f\x1c\x94\xe0\x6f\x34\x53\x97\xb9\x6d\xbb\x65\x9f\x95\xc7\x6a\xe7\x13\xf7\x32\x18\xdc\x8a\x6d\xb9\x28\xb5\x5f\x63\xbc\x76\x19\x80\x58\x66\x65\x61\xf2\xcf\xc5\xb8\x6a\x54\x9a\x57\x6e\x2c\x2d\x37\x2d\x2b\xb7\x97\xaf\x5c\x85\x09\xa8\x4c\x54\x8a\x00\xc3\x55\xa9\x1b\x13\x9b\xd6\x7e\x6a\x04\x03\x51\xd2\xac\x02\x27\x92\x7f\xb9\xa6\x0f\x90\xee\x21\x20\xfd\x80\x92\x4a\x3f\x20\xdf\xe0\x07\x84\xe0\x3c\x29\xc1\xdf\x24\xaf\x52\xb2\xa5\x5c\x8b\xe3\x5b\xb6\xfb\xb9\x39\x97\x21\xdd\x9d\xa8\x91\x03\x91\xbc\xe4\x1c\x15\x1c\x87\x32\xb8\xcd\x7a\xe6\xc3\x07\x8a\x77\x0c\x3b\xcb\x52\x16\x41\x96\x09\x1a\x32\xe3\x38\xcf\x26\x0a\x53\x4c\x54\xc4\x94\x62\x4f\x62\x70\x43\x5e\x66\x05\x63\xe9\x4b\x01\x05\xeb\xe3\x19\x1a\x79\xe7\x61\x1c\x38\xd0\xe5\xc5\xb3\x6b\x65\x10\x3b\xd8\x23\x47\x00\x0a\x77\xbf\x5c\x02\x6a\x01\xd5\x9d\x7c\xd6\xf0\x7e\xda\xea\xb9\x24\xcb\x09\x82\xe9\xf4\x24\x09\xe0\x53\xba\xb5\x0f\x74\x7f\x0a\x89\x43\x2a\x87\xc5\xb1\x3d\x4d\x13\xc0\xae\xca\xa4\xba\x04\x39\x5c\x18\xa8\xbb\x16\x61\x38\x03\xf1\x10\x7a\x34\x15\xe9\x44\xd6\xd4\xe1\x70\x18\xb3\x67\x29\x47\xfb\x8c\x39\x7b\x99\x78\x7c\xd6\x1d\x01\x7f\x28\x42\x89\x92\x21\xf2\x98\x59\x43\x38\x25\x6d\x75\x99\x57\x12\xcd\x2b\xf1\xa8\xc8\xbe\x9a\x38\xf6\x4f\x7e\x18\xc1\x80\xec\xbc\x73\x1f\xa5\xd0\x7a\x7c\xf2\xdc\x42\x34\x13\x77\x60\x4a\x2f\x1c\x20\xb8\x84\x8a\x8b\x48\x77\x60\x2c\x9c\x39\xfd\x54\xe5\xc3\x6e\xe8\x06\xd6\x63\xfe\x17\x43\xe6\xa0\x2a\x1b\xcd\x93\x79\xea\x26\xc3\xc4\x4b\x17\xe7\x29\x46\x8d\xbe\xcc\x8a\x19\xd8\xee\xc3\x9e\xbb\xf4\xb7\xb7\x29\x1b\x25\xf3\xe2\xf0\x41\xa2\xb2\x6b\x16\xa8\x7d\xe9\x50\x14\x46\xde\x81\x40\xb2\x62\xce\x7d\x04\x63\x01\x52\x5b\xe0\xce\x4a\x1a\xb8\x26\x55\x11\x2d\xd4\xf0\x65\xfd\xe9\x79\xf4\xa7\xe7\xd1\x9f\x9e\x47\x1b\xf3\x3c\x3a\x84\x7f\xfc\xfa\xf3\xe5\xbf\x9f\x99\x3d\x8f\xa4\x09\x36\xa3\x3b\xb3\x7d\x14\xfa\xcf\xfd\x73\x18\x45\x30\xf8\xf1\x9a\x3f\x38\x49\x62\x8c\xc8\x47\xec\xe7\xd3\x8c\xf2\x23\xcf\x1b\xc1\x58\x4b\xd2\xc5\xb9\xfc\xbb\x21\xfd\x5c\x57\x33\x8a\x54\xc1\xcb\xe6\x89\x4a\x7a\xbb\xa0\xd7\x2b\xdc\x5a\xec\xb3\xaa\xea\x5c\x25\x25\x9c\x24\xf9\xc7\xf5\xd8\xbc\xcc\x1b\xa4\x23\xd4\x5b\x9e\x7d\x16\x80\xa0\x85\x39\xe5\x2f\x5b\x0b\xc5\x29\x67\x02\x96\x22\x23\x49\xd1\x4d\xd8\xd9\x85\x6a\x76\x74\x6a\xe8\x60\x5e\x7f\x47\x66\xaf\x0a\x3b\xcc\x5d\x63\x68\x2b\x8e\x0b\xa0\xc3\x85\xb3\x80\x62\x1b\xa4\x23\x34\xf5\xd3\x79\x32\x5f\xcc\x15\xca\x3a\x49\xc2\x17\x24\x57\xb1\x9d\xb1\x89\x14\x61\x0f\x19\xcd\x96\xa8\x81\x9d\xb1\x6d\x29\xa0\xf7\xe2\x24\xc3\x9e\xd1\x32\xc7\x52\xa0\xb3\xb3\x44\x43\x20\x44\xbb\x9e\x9b\xab\x21\xc5\x8c\xf4\xd7\xea\x75\x41\x4b\xea\x96\xaa\x6b\x55\x95\xa2\xa5\xfe\x5e\x5d\xcf\x55\x58\x5c\xf2\x4e\x34\x0d\x8e\x34\x75\x60\x88\xc7\xa6\xcb\x68\x52\x6c\x67\xee\xc7\x30\xa2\xae\x88\xfd\x6c\xc8\xe4\x98\xf4\xf9\x90\x45\x7c\x51\xa2\xd7\xc3\xea\x98\x8a\x04\x19\x11\x91\xc2\x34\x43\x07\x86\x1e\x33\x04\x59\x0e\x99\xf0\xd9\x83\x75\xd9\x84\xa4\x20\x35\xb8\x7e\x36\x86\x3e\x85\x41\x3e\xbe\x5f\x5b\xe0\x3a\xb6\x4e\x40\x08\xec\x4e\xdb\x20\x25\xdb\x10\x72\x96\xb2\x11\x6f\x12\x99\xb8\xc9\x9a\x1b\x21\xa6\x73\x01\x5a\xcc\xc9\x41\xe1\x7e\x6a\xda\xca\x7a\x28\xe5\x9a\x53\xb3\x81\xbf\xf4\x17\xe1\x12\xd0\xa4\x97\x36\xe8\x5e\xf0\x4d\x2c\x0a\xac\xaa\x75\x7e\xab\xa5\xcd\xae\x37\x46\x37\xb8\x00\x6f\x6b\xee\x2e\x46\xcb\x6d\x88\xb8\xab\x31\xa7\x2a\x57\x48\xca\xb9\x54\x5b\x2e\x03\xfc\x05\xa5\x87\xd3\x0c\xad\x15\x9b\x63\x33\xd8\x81\x6f\x46\x10\x57\x30\xb8\xd5\xd0\x8a\x1d\x36\x83\xee\x05\x07\x05\xfa\xb1\xb5\x4c\x6f\xa5\x7c\x63\x75\x76\xb7\x8d\xd2\x5d\x8a\x8d\x74\xb0\xd5\x03\xba\xae\x3a\xd8\xea\x96\x60\x02\x8b\x1d\x95\xe4\xbf\x61\xe6\x1c\xf6\x56\xec\x58\x43\x32\x8b\xcd\xec\x93\x06\x6e\xc9\x5f\x04\x22\xac\x81\x55\x92\x2f\x4c\xae\x6a\x2e\xc9\xa4\x53\x33\x9a\xe4\x73\x96\xdb\xa7\x5e\x37\x41\xd2\x03\x5d\x6a\x5d\x53\x84\xb7\xcc\x26\x26\xbf\x14\x46\x1d\xe8\x7e\xd7\xe9\x6d\x0d\x87\x98\x9c\x31\xb5\x14\xe9\x9c\xda\x02\x30\xe8\x15\x0d\x7b\x25\xf5\x21\xd5\x30\x44\x07\x4a\x4b\x0f\x3f\xaf\xdc\xde\xc6\x06\x82\x77\xfb\x2c\x0c\xfe\xcf\x50\x5f\x84\x0a\x2c\x44\xc0\x1e\xd9\x6e\x19\x71\x3b\x14\x05\x0c\xb7\x7a\x4b\x97\x8f\xa3\x8c\x83\x83\xee\x12\x90\x45\xab\x20\x29\xe4\x21\x23\x64\x29\x89\x5b\x5c\xd9\x22\x55\x46\x69\xf3\x35\xa8\xbd\xde\x85\xdd\x57\xfe\xdf\xe3\xff\x2d\x89\x09\x0a\x2a\x18\x3f\xc5\xa9\x5d\x86\x00\x95\x9d\xab\x9b\x9c\xa2\x35\x9e\x96\x83\xc6\xbc\x9f\x23\xba\x42\x7f\x09\x22\xce\x0a\xa7\x90\xfc\x5e\x25\xb7\x42\x89\x1c\x24\xa0\x61\x4b\xe0\x72\x8a\xb1\xe2\x5f\x8e\xe9\x53\x67\x91\x51\xf0\x45\x52\x48\x6a\xc0\x2e\x2e\x2a\x5a\xda\x07\x36\x0e\x71\x54\xa0\xff\x2b\x0d\x95\xc9\x9f\x01\x24\xc5\x45\xd3\x23\x80\xb9\xba\x71\x12\x43\xbb\x1c\xc3\x59\xc7\x10\x50\x86\xe6\x23\xbc\x56\x4c\x1f\xfc\xa7\x74\xd2\x09\xd3\x0e\x59\x94\x2f\xf3\x21\xf2\x46\x6f\x57\x83\x65\xa1\x48\xdb\x5d\x42\xf1\xad\xc3\x49\xa8\x35\x69\xca\xb0\xd0\xc0\xd1\xdd\x56\x8f\x37\xfb\xba\xc7\xbb\x3c\xea\xea\x9e\x5b\xe5\xc6\x08\x79\x85\x5c\x94\xee\xba\x78\xa9\xbc\x74\xef\x37\x38\x22\x71\x65\xa7\x46\x61\xba\x1b\x1a\x56\xd3\xc2\xbd\x49\x22\xc1\x3a\x4d\xa8\x3c\xc6\x5e\xde\x8f\xc9\xfd\x4c\xee\xa0\x29\xc4\x4f\x2f\x49\x55\xe8\x26\x2b\xf7\x0f\x0c\x14\xe9\x57\x59\xec\xc4\x95\xe0\xd2\x75\x0b\x7b\x5b\x3d\x5b\x1d\xd9\xc1\xfc\xa8\x23\x2c\x75\xea\x45\x0b\x24\x2d\xeb\xa4\xe4\x95\x8f\x61\xf9\x47\xeb\x13\x16\x94\x7e\x20\x6d\xbf\x37\x30\x5e\xcc\x98\x8d\x9e\x28\x91\x17\x50\xd3\x10\x79\x17\x64\x34\x10\x4b\xb7\x61\xc3\xdb\xb5\xf8\x9b\x6d\x6a\x86\x9c\xd7\x99\x2d\x22\x1c\xce\x23\xd8\xb9\x0a\xf1\xb4\xc3\x23\x4b\x0d\xbd\xa0\x7d\xa4\xa4\x6d\x97\xf1\x7f\x50\x87\xd5\x75\x52\x7d\x06\xff\x41\x9d\xb1\x23\xb4\xaf\x75\x3b\x45\x66\xf4\x1f\xd0\x39\x9b\x9e\x51\xff\x61\x13\x49\x6d\x72\xba\xb8\xb8\x80\x29\x86\x41\x47\x9c\x42\x36\xdb\x5f\xc5\x02\xbe\xfd\x0e\x5c\x75\xae\xfd\x07\x34\x7d\xe7\x1c\x4e\x12\x04\x3b\x12\xee\x75\xb5\x9e\xc8\x67\xf3\x1f\xd0\x31\xeb\xf6\xc8\x7f\x50\x57\xac\xb9\x25\x7d\xe3\x3b\x11\xa5\xab\x61\x80\xa3\xf7\xc3\x42\x85\x9f\xec\x1e\x76\x8f\x7f\xbc\xa8\x44\xad\xf9\x40\x4e\xcb\xc0\xfe\x20\xfc\x02\x8a\x16\xa8\x8c\x27\xcc\x60\xbc\x31\xb8\xe0\x57\x92\x44\xb1\x3b\xc7\x63\x70\xa6\xbc\xfb\xc0\xe1\x63\x62\x11\x0a\xb1\x26\xe7\xaf\xce\x9a\x5a\xc2\x54\xd9\x93\x86\x02\x70\xd6\x3f\xd4\x8e\xf3\xda\x2b\xf6\x53\x32\x14\xa9\x37\x1e\x92\x41\xb3\xa7\x62\xd4\x94\x7c\xd2\x88\x32\xac\x48\xd3\x93\x99\x41\xea\x9d\x50\xec\x6e\x01\x79\x55\xf1\xc0\xa8\x77\x61\x29\x31\x7d\x88\x3c\x8a\x06\x0e\x23\x8d\x10\x1d\x57\x8b\xb6\xbe\xa3\x7a\x7e\x28\xc3\x4a\x9b\xdb\xe8\x72\x5d\x44\xee\x66\xd2\x61\x42\xb7\xad\xc5\xb5\xe5\xa3\x5e\x04\xe1\x2f\x8e\xab\xcc\xf0\x2e\x31\x6d\x2b\x99\xad\xca\xec\xa5\x26\xf0\xf0\x6a\x14\xe8\x02\x84\x2d\xd8\x6d\x0a\x44\x5a\xb4\x3e\x6e\xc8\x22\x54\x58\x25\x37\x69\x0e\xca\x5f\x76\xf5\x6a\x0d\x44\x2b\x5e\x75\x11\x61\x34\x5d\x75\x29\x37\x51\x7c\xda\x68\x17\x37\xbd\xdd\xe1\x70\x08\xbd\x8f\xf0\xfa\x24\x09\xe0\xf6\xb6\xbc\xc8\x11\xfc\x97\xd4\xee\xe4\xc4\xf0\xca\x7a\x91\x2c\x52\xc8\x7e\xf2\x7b\xdf\x92\xcb\xa0\x76\x46\x2c\x28\xe7\x8e\xb6\x1f\xb1\xfd\xce\xb6\x49\xf5\x1e\xb1\x1d\x66\xb0\xa2\x3d\x0b\xc1\xc9\x17\xde\xfe\xaa\x2d\x84\xe5\x74\xa4\x39\xe8\x49\x36\x14\xd9\xf8\xb2\xbf\x68\x25\xdc\xe5\x52\xed\x04\xdc\xa0\x13\xd2\x24\xba\x84\xa8\x33\xf6\x51\x70\x3f\xb4\x81\xc3\x17\xe8\xd7\xeb\xe9\xe7\xcf\x65\x9e\xa4\x21\x65\x6d\x90\x0e\x83\xf2\x0f\x6e\x68\x2f\xb9\x99\x32\xc4\x09\x6b\x6d\xcf\x5f\x81\xd8\x46\xa2\xcf\x9c\xa1\xbe\x9f\xfd\x1a\x95\xfb\x2a\x89\x72\x06\x39\x40\x5f\x03\xd6\x44\xc1\x95\xd1\xd7\x6a\xce\x9d\x3c\xca\x9c\x05\x49\x7d\x77\xab\xa8\x52\xaa\x90\x23\x4a\x40\x8e\x7e\xf2\xc3\x28\xb9\x6c\xec\x99\xa4\xc7\xbe\xab\xbd\x3d\x91\x19\x55\xdc\xaf\x04\xfa\xae\x4a\x61\x1d\x70\x92\x44\x38\x9c\x9b\xc9\x69\xf2\xb5\x54\x79\x3b\x95\x12\xf3\x78\x1e\xeb\x65\x54\x83\xaf\x5d\x1f\x98\xcf\x53\x25\x26\x94\x80\x32\x3d\x32\x57\x39\x2a\xf5\xed\xf9\x45\xc3\xf5\xc9\x45\x6b\x69\x45\xeb\x76\xf7\x22\xd7\x65\xd9\x2d\x69\xd9\xd3\xba\x12\x6a\x99\xed\x8c\x77\x96\x99\x1a\x76\x51\x90\x8b\x13\xb2\xec\x20\x0a\xed\xc7\xe1\x9a\x47\x23\xd0\x6d\xa3\x32\x2f\x5a\x0e\xb6\x2c\x71\xa5\x5b\xd3\xb5\xd7\xa9\x52\x38\x1c\xa3\xbc\x37\x58\xa6\x6c\x03\xc0\xcf\x1b\x18\x84\x88\xda\x9d\x56\x84\x1e\xd1\x97\x73\x91\x59\x73\xd0\x0d\xf2\xbd\xbe\xc8\x28\x75\x52\x82\x83\xb3\x47\x9b\x85\x2b\x29\x43\xd8\xaa\x9b\x14\xd5\x12\xcc\xf2\x6e\xb1\x72\x37\xe9\xde\xea\xf5\xbb\xb4\x83\x6b\x57\xf1\x5c\x65\x57\x5a\xc0\x5b\xe4\xd1\x94\x12\xb9\xc1\x50\xb6\x5b\xc7\x8b\x75\x6c\xb9\x84\x97\xcd\xf5\xaa\x40\xf0\x75\x0e\x69\xc5\x7c\xaa\x96\xdc\xdd\x52\x04\xc2\x2a\x29\xae\x7e\xd7\x74\x99\x6f\x05\xd2\xb1\xd2\xe4\x68\x37\x6b\xd7\x9d\x48\xdf\xfe\x34\x6a\xb7\x1e\x7e\xd1\x29\xd4\x6e\x02\x55\x4f\x9f\x7e\xc3\xe9\x53\x6b\xef\xa8\x98\x3c\x4d\xa7\x47\xab\x69\xb3\x11\x61\x5f\x09\x24\x65\x15\x75\xae\x8e\x7c\xa6\x19\x67\xc9\x7a\xd6\xa0\xe2\x39\x79\x83\xf6\xa0\xa2\xe9\xe2\x41\xf5\xa9\x3d\x89\xa0\x42\x9e\xd2\x80\x8d\x81\x24\xee\xc8\xdf\x65\x6c\x0c\x9b\x39\xdf\xc7\xd5\xe7\xfb\x5f\x5f\xec\x1d\x5c\x3e\xff\x57\x09\x46\xbd\x0c\xe2\x34\xc6\x6e\xe6\x43\x37\x0b\x26\x7f\x4d\x21\x14\xbd\x54\x5c\x69\x4b\xcd\xd8\x4d\xd8\xe6\x2b\x38\xc1\xef\x29\x5d\x7c\xa6\x93\x93\x3e\x11\x0c\xf1\xdf\x14\x3f\x7c\x7f\xff\xe0\xde\xf0\xc3\x97\x0b\xc0\x37\x46\xf0\x6e\x9e\x06\x5f\x9f\x30\x2b\x27\xaf\x3a\x47\xd6\xd7\x67\xc8\xca\xff\x2a\x5b\x88\xa8\x6f\xbd\x00\x9a\xb5\xf3\x58\xdf\xca\x73\x93\xe1\xb1\x80\xc4\xff\x5a\xf9\xa0\x20\x99\xa5\x81\x71\x5c\x24\x58\x44\x58\x46\x82\x61\x8a\x09\x53\x40\xd7\x2b\x03\xb7\x2c\x25\x62\x6b\x25\x35\xc3\xd6\x30\xfc\x15\x8a\x10\xe6\xe0\x9e\xe7\x04\xd1\xc9\x3f\x0c\x84\x1f\x9a\x10\x64\xdd\x54\x0b\xe8\xb6\x39\xed\x40\xdf\x8f\xd7\x26\x33\x63\xb7\xd2\x0c\x97\x88\xfd\xad\xc1\x0e\x29\x1b\x5b\x5b\x36\x27\xfa\xe9\x66\xb8\x9c\xd4\xb4\x0b\x1c\x46\xe9\x4e\x90\xcc\x76\xe0\x25\x8c\xb1\x80\xe2\xcd\x29\x18\x20\xde\x94\x8a\x81\xaa\x55\x8c\xfd\xcf\xaf\x83\x7f\xec\x3d\xfe\x57\x23\x1a\x1c\xd9\x1a\x11\xed\xa2\xb0\x3b\x4a\x12\x9c\x92\x08\x99\x1c\x37\x8e\x89\x07\xa7\x84\x27\x44\x90\xe9\xd4\x12\x85\x14\x90\x83\x69\x09\x6a\x04\x03\x95\x10\x8d\x49\x84\x8e\x72\x3d\x8f\x48\x83\x18\x93\xba\x50\xe2\x82\xe9\x54\x0d\xc1\xc0\x02\xfb\x52\xad\x61\x23\x63\xa9\x99\x87\xe4\x0d\xcb\x66\x3d\x5e\xe9\xe6\x14\x27\x77\x0b\xc7\x5f\x4d\x78\xa2\x6e\x05\x65\x01\xf1\x79\x2e\xc9\x0f\x34\xa3\x0f\xac\xb3\x47\x75\xc4\x93\x34\xf1\x28\x53\x10\xf9\x86\x2a\xc6\xaa\x89\x9b\x42\xf9\x20\x7f\x79\x77\x04\xde\xe3\xd9\xd2\x98\x67\x85\xd1\x76\x15\x13\xfb\x4b\x71\x63\x59\x1f\xe8\x5f\x10\x0c\x55\x0e\xb3\x96\x5b\xd9\xa6\x28\xc0\xcd\xeb\xb6\x47\xb9\xf2\xb6\xdf\x2c\x9b\x72\xef\x6c\x20\xd4\x4e\xd3\x84\x8b\xa7\x30\x4a\xf5\x54\x2a\xe0\xb2\x53\xab\x39\xa3\xda\x5e\x70\x35\xa5\x86\xaa\x33\xbe\x34\xa2\x00\xaa\x48\xb4\xa1\x60\x73\x5d\xc7\x6e\xb9\x86\x68\x5d\xbc\xca\x2a\x92\x75\x5f\xeb\x75\x44\x7e\xfa\x75\x57\x12\x13\xc3\x94\x00\x59\x50\xd6\x14\xc6\x97\x11\xc1\x33\x96\x7e\xc4\xaf\xdb\xd8\xaf\x9f\x72\xcb\x4b\x9e\x1e\x7e\xfd\x5d\xa4\x96\x29\xea\xee\xf6\xe8\x3f\x29\xa7\x0a\x50\xb1\xbd\xee\xbd\xe2\x9c\xb2\xbf\x20\xdb\x54\xfd\xaa\x5a\xc1\x33\x55\x6a\x1a\xf8\x56\xb8\xa5\x36\x33\xf0\x26\x64\xe1\x15\x34\xdc\x55\x27\xa6\xa4\xcd\x2c\x4e\x4d\xe5\x55\x71\x72\x2a\x2f\x37\x3f\x3d\x85\xc3\xa1\x9d\xcd\x54\xd2\xb9\x08\xf9\xd7\xf9\x8a\xe7\x57\x0b\x45\xb9\x69\xce\xcb\x52\x79\xba\x6a\x38\x57\x4d\x1d\xf9\xe7\x6c\xcd\xcf\x56\xa3\xb8\x6d\x60\xbe\x36\x18\xcd\xf6\x53\xae\x32\x24\xbd\xd7\x6d\x0a\x98\x9d\x41\x46\x16\xe8\x71\xbf\x00\x2f\x2e\x0f\x76\x50\x58\x71\xd9\x93\x16\x9c\xb8\x77\x41\x80\x4b\x2a\xb1\x21\x75\xa8\x8e\xfe\xb6\xfc\xd4\xd1\x94\x7b\x56\x33\xad\x94\xba\x61\xd6\x1c\x2e\x50\xc1\x90\x51\x9c\x57\x1b\xea\x91\x76\xac\x7f\xc7\xad\x58\xff\x8c\x40\x8b\x9b\x64\xfd\x1b\x27\x11\x99\x1f\xa1\x82\x7c\x8a\x92\xab\x54\x93\xfc\xfd\xff\x68\x42\xbf\x8a\x4f\xb4\xdb\x8e\x7b\x46\x05\x58\xe1\xf4\xda\x86\xa4\x8f\xcc\x93\x0d\x31\xf4\x55\x9f\xdb\x9b\xb7\x40\xa1\x1a\xd3\x6e\x9b\x4a\x9c\x81\xee\x6e\x64\x1a\x73\x04\xdb\xa5\xd0\x4a\xf6\x0f\x19\x92\xa9\x4e\x94\x67\x82\x2f\x36\x9d\xdc\x33\x30\x61\x09\x93\xca\x36\x5a\xca\xc6\xc3\xbb\xa4\x8e\x19\x4f\x78\x15\x17\x32\x11\x3c\x43\x5f\xda\x2e\xf5\x22\x41\xb0\xbd\x51\xa7\x51\x3d\x9a\x60\x36\xe5\x84\xb2\x1a\x0c\xa9\xd6\x39\xd1\x37\x7d\xad\x01\x13\x19\x41\x8c\x36\x35\x37\xbb\xc0\x7e\x1a\x84\x15\xae\xb3\xf5\xce\x81\xf5\x80\x50\xca\xe6\x1d\x10\x11\x46\xc9\xa2\x70\xaf\x6a\xce\xb7\xcc\xf4\xc8\xa1\x2d\x57\xe8\x35\x1a\xcb\xc8\x31\xce\x15\x10\xda\xe6\x44\x43\xa5\x27\x01\xa5\x16\xd5\x8d\xab\x3d\x4b\x68\xfc\x52\x7e\x04\x11\xb6\xae\x7c\x14\x73\x6a\xcc\x46\x0e\xa5\xf5\x5c\x56\x85\x4f\x72\xb1\x34\x75\x5f\x59\x96\xa0\x01\x62\x7d\x56\x99\x7d\x95\xeb\xaa\x52\x85\x66\xf4\x49\xec\xff\x1a\x91\x6b\x91\x31\x79\xb4\x46\xcd\x9a\xa5\x28\x0b\x1f\xa8\x6c\x6b\x6e\xce\xb4\x9c\x20\xb9\xcc\x9a\x02\x9f\x95\xf1\x41\x35\x03\x38\xa3\x88\xcc\x8d\x98\xbb\xea\xc1\xcb\x1a\xce\xb5\xa6\xc3\xd0\xde\xf3\xda\x6a\xb5\xcc\x34\x26\x97\x6a\x5e\xe5\xba\x14\xf5\x8b\x50\xdb\x15\xbb\xb8\x4f\x1e\x80\x43\x50\x64\x41\x6f\xa8\x03\x35\x61\xd1\xaa\x63\xb8\xaa\x29\xea\xee\xe8\xad\x0c\x9e\x16\xd2\x2f\xc4\xaf\xf4\x0b\x41\x2b\x93\x5b\x91\x32\x35\x6a\xab\xba\xa8\x62\xd5\xc5\x44\x75\x3d\x29\xba\x9b\x28\x1c\x57\x54\x73\x11\x29\x99\x15\x87\x17\x42\x8a\x5e\x60\x18\x78\x7e\x14\xfa\xa9\xa3\xdc\x82\x50\x86\xa9\xd5\xc3\x98\xb3\x8c\x58\x30\xf3\x24\x41\xb3\x93\x24\xc6\x7e\x18\x43\x44\x7f\x89\xc2\x6c\x81\xe2\x4b\xef\x41\x29\x47\x4a\xec\x9d\xf8\x51\xe4\x9f\x47\x2c\x4c\xf9\x94\xbe\x51\x02\xa0\x57\x21\xbc\xca\xd5\xca\x1b\x47\xd0\x47\xce\x8d\xc2\x6d\xcc\x02\x9c\xc7\x4b\x77\x09\x84\x0d\xd3\x84\xea\xc7\xea\x99\x8b\xab\x66\x6e\x40\x10\x90\x4e\x1b\xe0\xa5\x21\x9e\x9a\x33\x8b\x01\x3c\x74\xb2\xf8\x6e\xd7\x8b\x13\x34\xf3\xa3\xf0\x33\x6b\x29\xaf\x3b\x54\x2b\x1e\x0f\x31\x0f\x20\x16\x9c\x56\x31\x63\xf0\xa1\xbc\x56\xec\x2a\x8b\x5f\xea\x0d\x0a\xe0\xbf\xd4\x9a\x06\x62\x1e\x6b\x2c\xaf\xea\x28\xaf\x16\x7d\xb6\xbd\x5d\x4f\xe5\x15\x7b\x31\xfc\x24\x58\x9f\x4e\xc3\xf3\x28\x8c\x2f\x34\x76\x2f\xce\x77\xc5\xa7\xc0\xa0\x76\x30\x96\xf9\xd8\x6f\xbf\x81\x1b\xd4\x02\xc3\x66\x31\xcf\x92\xa7\x07\xb3\x51\x6b\xc7\x14\x05\x4b\x48\x9c\x14\xa2\xa8\xa1\x4e\x14\x75\x7b\xbb\xe5\x54\x52\x45\x09\xf6\x27\xe6\x6a\x7d\x36\x02\x68\xb8\xd5\x05\xfe\x70\xab\x07\x12\xe1\x23\x85\xd1\xf5\x8d\x20\x0b\x4a\x41\x38\x84\x06\x3a\xa2\xef\xb6\x1c\x34\x74\xd2\x61\x48\xc7\xc3\x71\x5d\x2f\x48\x62\xe8\x6e\x6f\x3b\xb1\x37\x5f\xa4\x53\x47\xc4\x94\x83\x2d\x7c\x7b\x1b\x73\x12\xa2\xad\xe1\x10\xbb\xdf\x91\x22\xdd\xef\x96\x63\x22\xb2\x4e\xe4\xde\xf8\xa4\x0a\xc9\x30\x5a\x4e\xc2\xd8\x8f\xa2\xeb\x1b\x52\x01\x74\x7b\xcb\x38\x8d\x42\x8f\x55\xf9\xf6\x56\xfc\xe5\xb8\x32\x65\x38\x71\x7c\xce\xc6\x96\x2c\x97\xbc\xdb\xe2\x25\xed\xa9\xd5\xd9\xaf\xe2\x8c\xfd\x0a\xad\xce\x7e\x85\x8a\xec\x57\xa8\x8e\xfd\x0a\x65\xec\x57\xa8\x21\xfb\x15\x6a\xcf\x7e\x85\x5c\xbd\xa5\x85\xfe\x6a\xce\x7f\x15\x40\xd6\x18\xa2\xe6\x7e\x35\x12\xac\xf8\xdb\x20\xc1\xaa\xf1\x3b\x3c\x7e\xe5\xa3\x1f\x7f\xfe\xf7\xdf\xab\xfd\x0e\x95\x7f\x4c\x70\x05\x7e\x49\x30\x83\x58\xb1\x0c\xfa\x74\x69\x7c\x6f\x11\x6d\xa0\x21\xc8\x41\x2d\xbe\xf2\xdc\xc7\x53\x15\xf6\xda\xde\xc9\x3c\x36\xd2\x69\x82\xb0\x11\x4e\xb9\xe0\x8a\x50\x8c\xb4\x7e\x42\x46\x28\xe4\x6e\x95\x2f\xf8\xd5\xdf\x2f\x6f\xdf\xbe\x26\x3f\xa9\xec\xa4\x1b\x09\xc2\x56\x3b\x77\x46\x8a\xe9\xcc\x78\xee\x4d\x23\xb4\x9b\xd4\xb4\xc5\xc5\x5f\xee\x60\x51\x1d\xa0\xd9\x24\x00\xb3\xc1\x45\x72\xf1\x03\x3d\x6e\xb1\xe4\x7a\x23\x30\x63\x6c\x59\x8a\x8d\x54\x91\x11\xcc\xa3\x08\x9b\x21\xa3\x37\x0b\x1e\x34\x14\xd3\x1a\x81\x7d\x4d\x48\x80\xaa\xe1\x17\x6c\x10\x2d\xe5\x54\xdc\x1e\x89\x3b\x8f\x52\x51\x65\x33\xd6\x70\x84\x2f\x99\xd1\xc5\x30\x77\xc1\x37\x54\x8e\x24\xb2\x97\xef\xfe\x5f\xb2\x42\x1b\x5e\x08\x1b\x25\x69\xc5\x19\xd5\x8a\x20\xa9\x5a\x46\x55\x4b\x7e\xbf\x26\x9e\x77\x5d\x01\x3d\x12\x4b\xf7\x8c\x35\xe7\xac\x80\xdc\xd5\x04\x53\xbf\x3e\x60\xb4\x4e\x9c\xcb\x27\xff\x1a\x62\xfe\xbf\x0b\x88\xae\x5f\x93\x6c\xef\x4e\xd4\xff\x20\x65\x64\x31\x2c\x2b\x8a\x3b\xad\xa9\xf5\xba\x24\x9b\x0a\xa1\xcf\x7f\xf8\x15\x24\x5f\xe9\xe5\x4d\x4b\x7f\x5d\x34\xfb\x9d\x48\x7f\x6f\x5d\xe9\xaf\x8b\x07\x6e\x23\xfd\x1b\x8b\x00\xd2\x0f\x94\x8d\x4d\x3d\x0d\x90\xc1\xc8\xfe\x96\x33\xb0\x38\x5c\x6e\x0c\xe8\xfe\x5c\xd1\x85\x31\x46\x21\x4c\x1d\xf6\xdd\x45\xc6\xcc\x8d\xe1\xcc\xcb\xa4\xcd\xa3\xb2\xe6\x51\x49\x73\x6f\x6f\x6f\x96\xae\x87\x60\xb0\x18\x43\x95\x60\x07\xc4\x82\x83\x1c\x3b\x31\xe8\x93\x46\xa1\xb3\xee\x08\x24\x43\x74\xd6\x93\x3a\xb6\xef\xe1\xe4\x79\x72\x05\xd1\x89\x9f\x42\xc7\xf5\x52\xec\x23\x9c\xfe\x23\xc4\x53\x87\x6d\xd1\xee\x23\x66\xd7\xf0\x3d\x04\xa9\x1f\x8b\x63\xbf\x66\x5b\xb7\xed\x02\xa6\x79\x27\xcb\x01\x5c\xba\x80\x87\x41\xbd\x46\x70\x12\x7e\xb2\xf9\x3b\x7b\xc7\xa6\xe0\xa6\x6d\xcf\xfa\x29\x75\x77\xe9\x9c\xfb\xc6\x78\xa7\x4a\x8e\xe8\x2f\x12\x0f\xbd\x78\xe9\xff\x32\x3f\x3d\x9c\xd4\xc4\x43\x57\x93\xda\x6a\x6b\xcc\x21\x0f\x6c\x30\xd1\xf1\xe4\x30\x7f\x26\x61\x84\x21\x22\x9d\x53\x4d\xa6\x32\x4e\xe2\xc0\x47\xd4\xc7\x8e\xba\x5a\x64\xca\x3e\x25\x0c\xef\xa4\x9a\xc6\x2f\x8d\xf3\xbb\xa0\x6f\x26\xfa\x99\x20\x08\x31\xfc\x84\x3b\xac\x02\x4a\x60\x14\x1b\xae\x8c\x01\x36\xe7\xf4\x54\x19\x29\x45\xc9\x66\x44\x0e\xaa\x3f\x66\x5f\xaa\x87\xa0\xe0\xf5\xa8\x66\x3e\x12\xde\x51\x5a\xf4\xb6\xb6\x7a\x57\x52\x10\x6a\x1d\x55\xb9\x46\xb7\x0f\x9e\xd4\x7d\x0c\x6b\x39\x75\x4a\x3d\xbe\x4b\xc7\xb2\x45\xf0\x72\x25\xd4\xae\x9e\x7a\xbf\xc0\x00\xc5\xf9\x57\xe9\x0e\x9d\x7f\x65\xdb\x9c\x49\x55\xe1\xef\xf9\x41\x22\x57\xeb\x4e\x0a\x82\x94\x88\x07\xbe\x88\x0f\xf8\x78\x67\x70\xd5\x75\xf2\xa2\x30\x80\x72\x99\x3e\x4d\x10\xb6\x7e\xe4\xf1\x0f\xa6\x5b\xfe\x75\xe1\x35\xf6\x79\x04\x02\xc3\x17\x2d\x63\x8d\x56\xe7\x00\xbb\xf9\xca\xf1\x3d\x53\x2f\x8b\x72\xbe\xa3\xb5\x7a\xa1\x2e\x78\xb6\x39\x18\xcf\xe6\x76\xd9\xfc\x52\xde\x38\xd0\xb6\x0d\x6b\x61\xdb\x90\xda\x14\x8e\x11\xc4\x9c\xa1\xfb\x7e\x40\x68\x4e\x7f\xe9\x5f\x5f\x1f\x1d\xbc\x6b\x0b\xb1\x51\xef\x16\x89\xe0\x25\xa4\xec\x36\x26\x3b\x52\x2e\xc8\xa8\x09\x99\x6e\xa5\xc7\xe4\x1b\x59\x98\xe1\x83\x1c\x6e\x04\x5f\x4f\xf3\x61\xfa\x6b\x09\x5b\x61\x5c\xd7\x86\x7c\x69\x8b\x51\xcb\xaf\xeb\x3a\x61\x00\x63\x1c\xe2\xeb\x7b\x22\x5e\x27\x1f\x7f\x47\x3f\x3e\x3e\x37\x8a\x57\x41\xa8\xf4\x8d\x28\xbe\xa4\x2e\x9a\xaf\x5e\x9e\xbe\x7b\xfe\xe1\xe5\xe9\xeb\xc7\x27\x4f\x4f\x3f\x3c\x7d\xf9\xf8\xc7\xe7\x4f\x9f\xd4\x6f\x44\x64\xa3\xa5\xee\xcc\xd6\xfb\xf7\xb6\x38\x64\xa8\x3e\xce\xda\x71\xc2\xb6\x6e\xa8\xc4\xf0\x5e\xcc\x7f\xc3\x36\x6d\xc3\x17\xef\xdf\x63\x8b\x07\x00\x5a\x43\xf2\xd5\x15\x0a\x31\x7c\xff\x9e\xc9\xdf\xb2\x55\x9e\x9d\x34\x0c\xe0\xd8\x47\x9d\x39\x4a\x3e\x5d\xaf\x50\xc2\x87\x39\xd5\x82\x2d\xfa\xb2\xe4\x6b\x04\xfd\x40\xff\x38\x4e\x82\x95\xbe\x5c\xb6\xd8\xd2\x56\xe8\xd6\x92\x26\x93\x52\xd7\xee\xd0\xfa\xbc\xcd\x1d\x62\xee\x0e\xf2\x59\x79\x27\x96\x7f\x53\xb6\x57\xae\xbe\x0a\x99\x56\x80\x3b\xc5\x9e\xaa\x59\x92\xe6\x51\x88\xf1\xbd\x42\x8c\x0e\x3f\x77\x77\x5e\xff\xe6\x3f\x6c\xb6\x1e\x95\x5e\xb1\x68\x2d\xbb\xf3\x5b\x16\xb3\x21\x6b\x45\xf8\x66\x93\xf9\x7a\x53\x3a\x57\x71\xbc\xbf\xfc\x36\x48\x06\xb0\x33\x9e\xfa\x08\xef\x30\x15\xf6\x7e\x08\xde\x3f\x7e\x7c\xfb\x5b\xfa\xe6\x7f\xd1\x4a\x50\x66\xeb\x8c\x49\x49\x7f\x6c\x94\xb1\x32\x0c\x9e\x91\x85\x53\x78\x6a\x14\x7c\x4f\xa8\xdb\xc9\x83\x86\xae\x32\xb4\xae\x9e\x1f\x70\xbe\x65\x27\x03\xaf\xcf\x46\x8d\xe2\xc3\x08\xbf\x09\x0f\x7e\x82\x63\xfa\x68\xe9\xba\x8c\x87\xfb\x09\x4c\x31\x4a\xae\x57\x70\x1f\x62\xa5\x33\xa7\x42\xb5\x02\x44\x3d\x75\x5b\x13\x07\xa8\xbd\x7f\xb1\xb8\x37\xab\xe0\xce\xee\x3f\xd3\x23\xfc\x47\xfc\x35\x85\x51\xe9\x8e\x2f\x25\x8b\xb5\x22\xf0\x20\x2f\xad\x52\x16\x7f\x26\xb5\x35\x8a\xa2\x24\x9a\x10\x4f\x14\x17\x13\x6f\x9c\xc4\xc1\x23\xf6\x8f\xc1\xc3\x6a\xc0\xde\xe4\xa5\x76\x95\x9a\x17\x85\x37\x57\xe3\xf5\x64\xf7\x5e\x48\xed\x93\x2b\x78\x79\xf2\x6e\x32\x5b\x45\x6a\x25\x55\x8e\x70\x78\xcc\x22\x3e\xc1\x99\xfa\xa7\x1e\x0b\x2a\x02\x45\x8b\xdf\xa9\x52\xcc\xf2\xa0\x0f\x58\x1e\xdc\x60\x52\xff\x39\x37\xb2\xd4\x7d\x5f\x19\xed\x9c\x99\x2e\xf3\x55\xdf\xc8\x3c\xdd\xcc\x0c\xa5\x79\x95\xf8\x97\xb2\x2a\xbb\x40\x99\xc5\x49\x8c\x91\x1f\xa7\xf4\xde\x41\x9d\x07\xcb\x55\xbd\x42\x3f\x70\x17\xce\xe1\xcd\x92\x3f\xa0\x23\x47\x7e\x2f\xab\xf8\x54\x94\x05\x81\x09\xea\xd6\x90\xf9\x50\xce\xfc\xf1\x34\x8c\x85\x17\x23\xff\xe5\xa5\x38\x99\x3b\x2e\xd0\x93\xd2\xfb\x13\x3f\xda\xde\x66\xb3\x31\x45\x63\xf1\x48\x7b\xcf\x6b\xca\xb3\x1a\x2a\x13\x3a\x8c\x31\x44\x73\x24\x48\x5d\x52\x34\x06\x37\x49\xfc\xd6\xd0\x43\x98\xd5\x38\xa6\xbe\x4e\x27\x8b\x14\x27\x33\xce\xb7\x93\xf5\xa7\x0d\x6e\x02\x88\xfd\x30\x1a\x60\xca\x00\xa3\xf6\xb5\x13\xbb\x20\x16\x53\xf3\x35\xa2\x08\x6d\x30\xb8\xbd\xc5\x1e\xef\x3f\x6f\x92\xa0\xa7\xfe\x78\xaa\xdc\xf9\xc4\xee\x8d\x71\xed\x13\x5d\x7e\x16\xd3\xcd\x73\xb4\xbd\x5d\x7c\xe6\xb0\x7f\x01\x26\x0b\x21\x86\x9f\x30\xc0\x1e\x2d\x94\x52\xd3\x65\x4e\xa5\x50\x7a\x94\x62\x77\x09\x92\x98\x2e\x6e\x5a\xb3\xa5\xab\x17\x40\x43\x39\xf8\xdc\x11\x0c\xf8\x8a\xef\x17\xfa\xbe\xf7\x08\x75\x7a\x83\xae\x0b\x92\x61\xef\xbb\xe4\x7f\xd0\x77\xc9\xc3\x87\xae\x7f\x96\x74\x7a\xa3\xec\xd3\xb3\x44\xdc\x56\x39\xf1\x10\x0a\x71\x71\xcf\xf0\x88\x8b\x59\x0c\x7c\xb2\xa6\x2e\xd7\xdb\x71\x40\x89\xe3\xac\x26\x55\x5c\x40\x4e\xc9\xab\xdb\xdb\x9c\xc0\xf9\x18\xea\x92\xc3\x6e\xd3\x9c\xb5\x35\x21\x5d\xa6\x97\x40\x6a\x64\x26\xdf\x64\x39\xb0\x70\x34\xc4\x4b\xa0\xea\x4f\x9a\xbb\x34\x8b\xf3\xb0\xf2\xdf\xd0\xdc\x73\x83\xaa\x64\xce\x3a\x5f\xcb\x3b\x9f\x38\x97\xb5\xfc\xa2\xda\xa5\x5a\xb6\x91\x2c\x52\xd4\x39\x32\xf3\xf5\x2e\xfb\x6e\x7b\x1b\x7b\x73\x36\x35\x9e\xb0\x89\x52\x7c\xe2\xf0\x3e\x14\x79\x38\x70\x05\xd6\x29\x3a\xb6\xf7\x64\xeb\x3d\xfe\xe3\xf9\xef\x0b\xdc\x1a\x88\x59\xbf\x88\x42\x30\x0e\x20\xaa\x07\xb9\x68\x76\xe9\x25\xae\x10\xd6\xda\xe4\x36\xb4\xbd\xf1\xbd\xac\xf9\x06\x57\xb1\xe5\x84\x13\x47\xdf\x3f\xd8\x1c\xe7\x5b\xd1\x56\xb7\xb0\x11\xe1\xf1\x14\xa6\x8f\xf8\x8e\xc1\x0b\x15\x8f\x9d\x2c\x07\xa0\x26\x77\x07\x7a\x2e\x71\x82\x5f\xb0\x37\xdb\xdb\x0e\x1c\x6e\x35\xca\x2b\xfb\xc8\x2d\x2e\x64\xd9\x60\x83\x55\x85\x3f\x2d\x31\x1c\xdd\x87\xab\xf8\xcf\x07\xe3\x9f\x7e\xbb\xfe\xdf\x3f\x36\x01\x4d\x5e\x16\x7b\x99\xf5\x41\xc9\x2d\x4a\xad\x9d\x68\x5f\xbf\x84\x2e\x84\x18\x87\x71\xd8\x21\xa5\x98\xee\xa0\xc5\x61\xaf\x1a\x56\xae\xb6\x8c\x72\xbc\x83\x0d\x15\x10\x8e\xcd\xa0\x15\xf5\xd9\x9b\xae\x8b\x6a\x0a\x2b\x83\xe2\xac\x2b\x6c\x93\x56\xb6\xdc\xcc\xd8\xe0\xcd\x66\xdb\xfb\x4c\xec\x9f\x77\x62\xff\xf2\x7e\xec\x51\x8b\xcf\xe7\x3f\x9f\xfe\xfa\xf1\xa8\xc2\xa3\xde\x64\xe0\x8d\xfd\x4b\xcd\x9d\x3d\xc5\xd7\x11\x2c\x42\x10\x89\x4b\xf3\x7f\x84\x01\xf3\x5c\xcc\x79\xc7\x74\x3a\x22\x45\xe7\x8a\x24\x91\x0c\x7e\x85\x0f\xed\xef\x94\xb4\x11\x9c\xe0\x42\xd2\xe7\x70\x82\x0b\x29\xa7\x30\xbc\x98\x16\xd3\xfe\x42\x1f\x17\x52\xe3\x64\x5e\x48\xfa\x36\x99\x6b\x9e\x2e\x87\xb9\xd8\x58\x1e\x34\x8e\xfd\xf3\x28\x4c\xb1\x6d\x70\xef\xcf\x9a\xcb\x47\xde\x00\xac\x96\x3e\x8e\xc3\x99\x4f\x32\xe1\x34\x07\x7e\xf6\x9b\x12\x7d\x19\x18\x77\x99\x6d\xbc\x0f\xec\x8b\x05\x45\x04\x33\x2e\x76\xad\x58\xd1\x2a\xbc\x5d\x8a\xf4\x67\xe6\x08\x06\x8d\x0a\x39\x73\x19\xe1\x23\xaf\xb9\xc9\xe4\xde\x69\xf4\x41\x0a\x89\xf2\x11\xb0\xd3\x68\x71\x11\x4e\xae\x0d\xef\x35\xf0\x8b\x42\xb2\x1c\xe7\x72\xee\x1f\xcd\xa5\xa5\x2e\x94\x82\x15\x4b\x11\x1b\x5a\x84\x1c\x98\xb1\x58\x72\x79\xe5\x20\x56\x64\xd3\x1b\x32\x10\xd4\xb2\xd6\x15\x1c\x0e\x32\x91\xb5\x47\x66\x7e\xe8\x46\xec\xcf\xf9\x20\xf5\xae\xc8\xcd\x47\xa1\xdf\x21\x47\x53\x44\x96\x91\x1a\x96\x6f\x60\x7f\xb0\xbf\x98\x00\x00\xfb\xc3\xdc\x8f\xf9\x87\x39\x24\xdc\xfb\x51\xc3\x6a\x36\x13\xdf\x10\xc1\xd2\xab\xe4\x48\xaa\x77\xa6\x6a\x1e\xcf\xd2\x84\x1a\x7a\x8d\x2d\x5a\xdb\x17\xd7\x3e\x5c\xb0\xc8\x6b\x22\xe3\xda\x09\xa2\x8e\x05\x5a\x59\x88\x07\x5b\xbd\x55\x0d\x67\x64\x45\x36\xb3\x42\xaf\x67\xf7\xa0\x29\xfe\x1a\xfb\x97\x59\xe6\x90\xe5\xe3\xd8\x7f\xb1\x3d\xb6\xd3\x38\xb2\x0a\xae\x88\xd5\xa6\xeb\x9c\x53\xfc\x26\x0a\xbd\xcc\xaf\x4d\x66\x6e\x38\x97\x68\x1b\x14\xd8\xea\xb2\x96\xbc\x9b\x07\x3e\xae\x34\xff\xb1\x7c\xd0\x22\xf6\xd2\xf1\x14\x12\x01\x70\x6c\x7f\x82\x21\x7a\x43\x0f\x3a\x46\x07\x6b\x28\xea\x0b\x2b\x2a\x0b\x79\x4d\xe9\x35\x00\x7b\xac\xd9\x35\xe0\xf6\xb6\x6c\x03\xd7\x9d\x42\x7e\x18\x03\x37\x9a\x76\x31\x80\x5e\x32\x99\xa4\x10\xd3\x5f\x40\x55\x27\xe4\x2b\xf2\x03\xe8\xca\x83\x7c\xc7\x7e\x02\x45\x5f\x90\xaf\xde\x26\xf3\xe5\x5d\x33\x81\xb7\x3e\x23\x92\x69\xc6\xa3\x42\xee\x87\x0a\x7a\x75\xf1\xc7\xa4\xf7\xf0\xf2\x72\x05\x67\xba\x22\xea\x76\x3d\x6c\x75\xa9\x3f\x66\x01\x89\xbb\x74\x47\x18\x8d\xf2\x18\xdf\x0d\x36\x0f\x75\xe9\xa7\x0a\x57\x90\xf3\x05\xd5\x58\x77\xfa\xc0\xe6\x4a\x5d\x29\xbe\x77\x5e\x8b\x32\x01\x79\xd7\x02\x72\x97\x1c\xa6\x33\x15\x81\xef\x97\x2d\xdb\xcb\xab\xaf\xef\xb7\x79\xf5\xb4\x70\xaa\x5f\x7b\xfb\xd0\xe4\x7a\xfd\xeb\x17\x15\xa4\x43\xc9\x9e\xb4\x8b\x85\x3f\xc1\x14\x77\x68\x4f\x70\x68\x9c\x42\x14\x09\xbd\xf6\x24\xbd\x66\xb8\xfa\xd4\xd7\x6b\x9a\xd2\xfe\x60\xbb\xda\xd3\x30\xa0\x36\x7d\x65\x33\x13\x82\xab\x5d\xf0\xac\xb0\x06\xe4\xf0\x1f\x4d\xf6\x22\x48\x1a\xa3\xa6\x51\x72\xc8\xbf\x33\x25\x67\xa4\x35\x31\x84\x41\xda\x41\x90\xd3\x6b\x41\x53\xca\xc8\xbf\x4e\x16\x38\xdd\xb9\x40\x94\xd2\x49\xbc\x67\xbd\xd8\xe1\x87\xcb\x2a\xfb\x15\x88\x01\x02\x3e\x48\x36\xb5\x64\xa5\xd5\x4b\x56\xef\xf9\xbf\x77\x3e\xfd\xf6\x53\x49\x48\xc9\x18\x46\x91\xc2\x7b\x53\x61\xd6\xe2\xc1\x12\x71\xe7\x2a\x8c\x83\xe4\x8a\x93\x44\x87\x9f\xab\x50\xf7\x79\x82\x9c\x62\xab\x87\x79\xf1\xd9\xb5\x5b\x72\x98\x21\x2b\xc7\xd4\x4f\x4f\xfc\x8c\xca\xab\x36\x90\x70\xcc\x13\xab\x0a\x68\x8d\xd9\x67\xec\x97\x62\xa3\xd2\xca\x35\xf1\x64\xaf\x0a\xa8\xb6\x05\x72\x27\xf4\xcb\x62\xe5\x44\x92\x72\x54\xb4\x75\x8d\x71\x25\xcd\xa8\xe8\xf6\xc7\xe3\x9a\xc8\x92\xfc\x09\x4e\x81\x26\x55\x0d\x9d\x12\xa0\x52\x36\xea\x71\xf6\x64\x83\xec\xed\xb2\x8f\xd8\xb4\x8c\x7d\x1c\x5e\xc2\x4e\x3a\x46\x09\x03\xfd\x91\x1d\xc6\xf5\x6c\x1b\xd8\x3f\xd0\x8b\xc9\x18\x77\x98\x2c\xdb\x3f\xb0\xd4\xd4\x70\xa3\xfc\xc4\xc9\x3c\xfb\x75\x22\xe3\x4e\xc6\x51\x48\x91\x6b\x3e\xc3\x13\x19\x89\x61\x63\x6a\x44\x64\x5b\xcb\x07\x9e\xfd\x29\x9b\x08\xec\x19\xcb\x85\x59\x81\xb4\x47\xd4\x82\x53\x3e\x9f\xb4\xd2\x6b\x11\xe6\x0d\x75\xab\x87\xb8\x35\x4b\xe1\xb1\xc1\x0a\xf3\x81\xac\x1d\xd5\x66\x18\x25\x97\xde\x91\x62\x79\xe3\x26\x17\xfa\x53\x21\xe7\xab\xc1\x84\xe3\x8a\x64\x39\x05\x7d\x83\xf9\x51\x82\x61\x4b\x26\x47\x76\x1c\xce\xa8\x1f\x44\x78\xf6\x17\x98\x38\x41\xc3\x89\x53\x44\x73\x2d\x6b\x2f\xb0\x7f\x50\xf8\xfe\x44\x4e\x25\x84\x7f\x26\xf6\x67\xce\x0c\x5b\xcf\x65\x30\xce\x4b\x24\xe9\x05\xa9\xe2\x35\x84\x56\x56\xa2\xe1\xaa\xc7\x62\x25\xfc\xb8\x95\x96\x19\x23\x9c\x5c\x69\x68\xd3\x7a\x0a\xa1\x51\xc9\x91\x7a\x61\x38\x44\x12\x07\x2e\xc3\x2e\x9a\x24\x68\xe6\xe3\x67\x18\xce\x4e\xc9\x5c\x02\x51\xa5\xf6\x98\x16\xb1\xe4\x12\x43\xd0\x13\x3f\x38\x6b\x1a\x65\x90\xcc\x3a\x08\x8e\xaf\xc7\x11\xc3\x05\x95\x2f\x7f\x0c\xe3\x20\x8c\x2f\x48\x1a\x55\xea\x81\x8f\x31\x0a\xcf\x17\x58\x4d\xc0\xe7\x7b\xad\x61\x83\xa6\x1b\x38\x5d\xe0\x8b\xda\xb9\x8e\x7d\x01\x31\x6d\xa3\xed\x02\x66\x7e\xef\xf5\xf6\xbb\x00\x25\x57\xfc\x88\xbb\xdf\x05\x33\xff\x93\xfc\xd1\x05\x5c\xfc\x06\x74\xf6\x65\x1a\xc4\x4a\x96\x92\xbc\xdb\x20\xd3\x9b\x3a\x4c\x15\xb4\x47\xd4\xf9\x44\x8e\x4f\x21\xcc\x9a\xd6\xd7\x16\x86\x8a\xec\xb9\xac\xbc\xcd\x8d\x1f\xb9\x6c\xf3\xc3\x3b\x2c\x7a\x01\x85\x25\xf5\x95\xe6\x09\xde\x0b\xc3\xe1\x10\x6f\x6f\x3b\xf1\x30\xd3\xe4\x63\x60\x7f\xf7\xb9\x43\xa5\x6c\x60\xf5\x48\x15\xe2\xe5\x46\x6c\x3e\xc2\x91\x88\x29\x7f\x6a\xca\xb3\x1b\x66\x2f\x18\x48\xeb\xce\x65\x08\xaf\x88\x0a\xef\xb8\xcb\x91\xbb\x04\x62\x90\x0b\x67\x93\xac\xab\x80\xfd\x41\x84\x3f\xce\xfc\x4f\x6f\x18\x02\xbc\x1c\x79\xfd\xf0\xc2\x46\xcd\xd0\xed\xa9\xed\x02\x5c\x78\x91\xe5\x42\x71\xb9\xa0\xe8\xe4\x17\x3e\x9e\x7a\x33\xff\x93\xb3\x9b\x1b\x42\x8f\x55\xe5\xf6\xf6\x6c\x24\x21\x2f\x5c\xf7\x81\xf8\x22\x64\xe1\xf2\x86\x92\x94\x91\xff\xef\xf8\x61\xff\x98\x43\x9d\xdd\xf0\x2b\x20\x4c\x0e\x49\xd4\xb9\x87\x99\x9e\xd6\x73\x38\x52\xb4\x67\xee\x19\x17\xa6\x6f\xe0\x45\x98\x62\x88\x48\xdf\x0a\xd5\xd7\x60\x4a\x53\xa6\xb4\xf1\x53\xb1\xa7\xb8\xee\x12\x7c\xa0\x87\xa7\x37\xf2\xec\x54\xa8\x74\x98\x72\x57\x25\xea\x6f\xa6\x3d\x09\xe3\x8b\xdb\x5b\xd1\xa5\xe9\xcf\x51\x38\x9b\x41\xd4\x77\xdc\x47\xf4\x11\x82\xcc\xd5\xc0\x71\xc9\xa2\x10\x67\x8b\x02\xb5\x53\xba\x3a\x7a\x63\xf8\x19\x6a\x36\x2b\x66\xd4\xa1\xf9\x70\xeb\x1c\x88\x0d\x16\xc9\x99\x1f\xc6\xd6\xf7\x56\x10\x5e\xb2\xc1\xe7\x28\x07\xfe\x10\x93\x61\xfb\x31\x59\xd0\x55\xec\x84\x6a\x54\x6f\xe0\x18\x3b\x2e\x48\x8a\xd9\xfc\x6d\x92\x24\x18\xa2\x33\x94\x44\x70\x68\x73\xcd\x2f\x8c\x27\x89\x3d\xfa\x9b\x0b\xd2\xa1\xef\xe1\x64\xfe\x30\xf1\x98\x66\xc6\x44\xe0\x61\x0f\x44\x43\x69\x49\x0b\xe3\x18\x22\xf6\xa2\xc3\x5d\x94\xc9\x70\xa8\x12\x2e\xc5\xb1\x0b\x22\xf3\xc2\x91\x5b\x8f\x62\x5e\x1e\x33\x1a\x56\xad\x42\x74\x9d\x5b\x94\xae\x73\xe5\x0b\x92\xec\xe8\x9a\x05\x69\xa1\x2c\x48\x90\x62\xb9\x29\xa6\x85\xc2\x82\x84\xb9\x2b\xe7\x82\xda\x6e\x49\xb1\xa9\xf0\xbb\x62\x8f\x4e\xa9\x3e\xfc\x3a\xe1\xbe\x8d\xee\x72\x09\xa8\x8e\xa8\x49\x00\x2f\x3a\x03\xa3\x24\x29\x7e\x0a\x51\x8a\x1f\xc7\xe3\x69\x82\x1c\x68\xc0\xd4\x94\x0d\xca\xbb\x1a\x7e\xdf\xdb\xde\x96\x9e\x35\x99\x33\x61\x6f\xf4\x48\xfd\x31\xb8\x59\x96\x60\x12\x86\x13\x26\xe7\x7f\xc5\x48\xf8\x8b\xfe\x15\x23\x8f\xee\x79\xde\xe7\x67\xa4\xf5\x43\xb2\x65\xb9\x40\x60\x73\x8a\x2e\xdb\xde\x86\x5b\x85\x95\x44\x28\x59\xae\x7b\x93\x9f\xbc\xd2\x10\x37\xf7\x51\x0a\x9f\xc5\x14\x30\x92\x7b\xbe\x88\xbc\x01\x1a\x2a\xfd\x92\xa4\x30\xa5\x9e\xa4\x36\x59\xb6\xfc\xec\x55\xca\x90\x39\xc9\x9e\x41\x67\x08\x48\x86\x7e\xe9\xbc\x48\x87\x09\x15\x73\x5f\x13\x73\x10\xb6\x9d\x2e\xd1\x30\x2c\x2d\x63\x31\x8c\x48\x19\x0f\xd2\xef\x17\x8f\x48\x39\x7e\x9a\x3e\x0f\x53\xea\xc8\xef\xd8\xfe\x79\x72\x09\x6d\x77\xa0\xbe\x60\x3e\x85\xf2\x1d\xc8\xf5\x78\x0f\x88\x91\x18\xa2\x25\x8c\x52\x68\x95\xf6\x26\x1d\x9c\xbc\x29\x3b\x6a\x6c\xc6\x62\x9e\xb9\xe9\xfd\xf4\x79\x3a\x1a\xbf\x7d\x1d\xbe\x9a\x05\x25\x1e\x16\xf1\x7c\x81\x9f\x05\x0a\x6c\x61\xbd\xd5\x68\x0f\xec\xe5\xed\xb7\x5c\xbf\x34\x1c\x76\x28\x7a\x08\xef\x20\x6b\xea\xa7\x9d\x92\xd3\xcf\xbd\x30\xa6\xec\x35\x3b\x75\xac\x6d\x13\x69\x6a\xf4\x20\x05\x31\xbb\x43\x99\x0f\x45\x04\x71\xe1\xa8\x67\xe7\xe4\xb2\x23\x7c\x4a\xf8\xed\x01\xb0\x39\xc1\x91\x7c\x21\x3c\x38\xec\x0f\x35\x21\xda\x2d\xbd\x36\x0a\x07\x62\x94\xbf\x2c\x59\xd3\x3a\xb0\xb6\x85\x60\x4f\x01\x6c\x53\x08\x4a\x9a\xf3\x81\xac\x78\xcc\x2f\x77\x90\xc8\x9c\x02\x0c\xc7\x77\x03\x8b\x0a\xcf\xbe\x04\x62\xe1\x74\x9a\x5c\x59\x5c\x0e\x84\x84\x99\x91\xdd\xeb\xee\xee\xcb\x06\xb2\xd4\x59\x20\xdf\x2d\x49\xc4\x2a\x68\xef\x96\x75\x89\x19\x66\xa2\x70\xff\x14\x27\x52\xe6\xc3\xb4\x03\x67\x73\x7c\x9d\xe1\xee\x31\xa6\x76\xd5\x42\xa1\x5d\xaf\xc9\x0b\x2e\xd9\x89\xda\xad\x5b\x76\xc5\xa6\x5e\x38\x35\x1e\x88\x76\xc4\xb5\x40\x95\xbc\x5a\xf6\x83\x2a\x8c\x8d\x5c\x07\xd6\x73\x77\x7c\x09\xd1\xfb\x25\x0c\x60\x13\xd1\x6b\x45\x39\xd2\x60\xb2\xcb\x22\x9b\xb1\xf0\x48\x03\x55\xd9\x52\x50\x56\x91\x46\x4b\x44\x15\x97\x42\x53\xfa\xaa\x3a\x43\x57\x1f\xec\x96\x59\xb0\x9a\xb8\xcc\x6c\xc4\xbf\xd5\xa8\x0a\x6d\xd0\xc9\xb5\xce\xbe\x64\xbc\x96\xdc\xbc\xfb\x8c\x3c\x95\x16\x8f\x24\x2d\xcf\x22\x80\x46\x43\xd3\x8f\x44\xdd\x9d\x18\xd0\x68\x96\x65\x7b\x8f\xde\x8b\x4e\x14\xa6\xf7\x25\xe2\xf3\xf9\xd1\xbb\xf0\xf0\xb0\x57\x09\x92\xdd\x24\xfa\xc4\x08\x57\xfa\xd6\xbf\x68\x85\x0f\x9d\x65\xb7\x0f\xfa\x0d\x40\xa4\x7b\x7b\x64\x05\x28\x06\x80\x8a\x3e\x66\x61\x9f\x82\x25\x4a\xa3\x95\x1e\xd5\x61\x6a\xd5\x80\x57\x07\x25\xb8\x4c\x4a\xc9\xed\xf1\x9a\xe5\x92\x29\xb1\x52\xe9\x7a\x39\xa2\xab\x5c\xdd\xfa\x48\x3a\x7b\x1d\xa3\xbc\x5e\x49\x93\x5e\x5f\xe6\x0a\x2c\x46\xba\x89\xb3\x6b\x39\xc6\x54\xb5\x87\x62\x13\xe0\xd1\x7a\x64\xe9\xb6\xe0\x69\xab\xaf\xb0\xea\x24\xff\x8a\x00\x31\x62\xb6\x07\x1d\x9f\xae\x6f\xf7\x63\xd5\x81\xbf\xbe\x38\x0e\xff\x7d\xfa\xeb\x97\x46\x47\x30\xf7\x86\x32\x3c\x05\xdb\x75\xc1\xfa\xd4\x35\x5a\x9f\xba\xaa\xf5\xa9\x3b\x1a\xc4\xf0\xca\xfa\x07\xf4\x3f\xbe\xf0\xe7\xdc\xf2\x76\x73\xa1\xd2\xda\xe0\x0c\xc5\x15\x32\x63\x12\x35\x7a\x4a\x8e\x0a\x74\x16\x8f\x96\x20\xcd\x7d\x02\x90\x30\x8a\xca\x8f\x78\x7a\x56\xa5\xe1\x70\xe8\x6f\x6f\x3b\xfe\xf0\x66\x09\x20\x33\x9d\x00\xdf\x75\x81\x7f\x16\x8f\x86\x88\xfe\xb3\x5c\x2e\x1d\xb2\xc5\xef\xdc\xdc\x38\x67\x8f\x3b\xff\xf6\x3b\x9f\xbd\x6e\xe7\xf8\x43\x67\xf4\xd0\x5d\x2e\x77\x2e\x6a\x20\x72\x1b\x88\xa8\x6f\x1b\xef\x9e\x98\x3f\xbb\x8d\x88\x0a\x6b\x33\xdb\x97\x3d\x02\x08\x46\xf9\xab\x06\xbd\xa3\x32\xf3\x61\x9c\x19\xdd\xa0\x9b\xeb\x1b\x6a\xa0\xe1\x0c\x3a\x98\x93\xe7\x90\x8a\xa1\x98\x08\x49\xce\xc6\x69\xc5\x49\x32\x87\x31\x44\x56\x9c\x20\x38\x81\x08\x41\x64\x17\x4d\xef\xbc\x8e\xc0\xfe\x70\x1e\xf9\xf1\x47\xdb\x95\x74\x28\x59\x22\xa6\x01\xb8\xe0\xd2\x47\xe9\xc6\xda\x91\xcb\xbf\x78\x27\x40\x7b\x52\xc9\xc6\x16\x62\x4d\x5d\x3c\x5d\x40\x12\xdc\x45\x6d\xb2\x72\x04\x9b\x8b\x3f\x54\xab\x41\x7a\xc1\xce\x89\xe4\x16\x15\xc9\x2c\x12\xf2\x91\x83\x87\x58\x42\x0e\xa3\xbc\x91\x8d\x32\xd5\xf0\xab\xb3\x78\x9c\x04\xf0\xdd\x9b\x67\x52\xd6\x94\x7b\x3d\x9f\xf2\xab\xd8\xb6\xcb\x59\x6f\xe2\xcc\x51\x8e\x5e\xdd\xe4\xfa\xd0\x1d\xd0\xe7\x6d\xc1\x8a\xb9\xe1\xe5\x3e\x81\x49\x5e\xc2\x17\xbf\xfa\x3b\xb3\x32\x84\x0e\x06\x4a\x5c\xa5\xb1\x65\x47\x76\x89\x47\xbc\x4b\x3d\x2b\x29\x2c\x71\x99\xeb\x68\xe6\x4a\xa0\x25\xd2\xe2\x9b\xfa\xa6\x13\xb8\xad\xf5\x61\xde\x86\xa5\x7f\xdd\xfc\x30\x6e\xa4\xa3\x57\xcf\xdc\xbb\x64\xa5\x99\xe8\xdf\xb2\x66\x8f\xca\xbc\x5a\xf9\xf1\x5a\x45\x69\x36\x9c\xaf\x9b\xb6\xc7\x54\x81\x2c\x08\xc4\xe0\xdc\x2a\xf4\xd8\xa9\x9f\x4e\x33\x2c\x63\x61\x52\x2b\x85\x59\xce\x19\xdd\xf2\x10\xc9\xeb\x39\xc9\x16\xc5\x7f\x6d\x4d\xa6\xee\x68\xa8\x84\x5f\x08\xff\x81\xad\x5e\xc9\x81\x31\x89\xcf\xa3\x05\xba\xd3\x43\x24\xbf\x74\x25\xaa\x1c\xd9\x31\xd2\x2c\x8d\x7c\xe4\x6c\x0a\x5a\x28\x2b\x45\x5c\x96\xb8\x95\xc0\x29\x0d\xb3\xe5\xdd\xc8\x6e\x72\xfd\x20\x38\x21\x02\xf3\x6a\x81\xd3\x30\x80\xcf\x79\x89\x8e\x3b\x28\xaf\x42\xc9\x37\x95\x10\x64\xc5\x7c\x0a\x6d\xf4\x83\x20\x0b\x32\x09\x92\x31\xad\xb4\xe3\x0a\x89\x56\xa1\xc8\xdc\x1b\x16\xdd\x11\xa6\xbc\x0e\x0e\xf4\xe8\x64\x92\x57\x74\xee\xf6\x76\x49\x12\x03\xbf\x9d\xfa\x95\x03\x3d\xba\x2e\x64\x77\x7c\xf9\x27\xc3\xad\x1e\x80\xd9\xb1\x5f\x78\x50\xf0\x54\x64\x0f\x81\xa6\xf6\xb2\x60\x93\x0a\x13\x44\xa7\x37\x1c\x0e\x1d\x79\xef\x8c\x60\x44\x37\x34\x8f\xce\xb3\x57\x13\xc7\x16\x6a\x8a\x4d\x1b\x67\x46\xbf\xc8\xd5\xb4\xf8\x0c\x90\x5d\x97\x6c\x34\xd8\x0f\x23\x25\x60\x84\xcc\x1c\x27\xe7\x2f\xc2\x5a\xa8\xf9\x8b\xc0\x91\x91\xee\xb0\x58\x0e\x47\xe9\x29\x95\x2f\xa0\x1b\x4f\x34\x3f\x14\xde\x91\x2b\x44\xa7\x24\x1f\x61\x5c\x62\x4c\xb9\x0f\xb7\x79\xe8\x75\xb4\xf7\xec\xd9\x3f\xcd\x50\x98\xad\xee\xf0\xca\x9c\xb3\x8b\x56\x97\xf6\x7c\x5c\xc2\xe4\x50\xf0\x80\x13\xd8\xf0\xd2\xb6\x21\xbb\x5b\xe0\xc2\x23\xe6\xfd\xc3\xf1\xd0\x69\x3e\x2c\x7c\x25\x41\xb8\x73\x7e\x4d\xc6\x83\xa1\xa7\x27\xe8\xd9\x93\x81\x9f\x8e\xed\x12\xe3\x79\x99\x75\xa3\xe8\xda\x39\x6e\xe4\x87\x2e\x5b\x55\x45\xff\x5e\xe5\x72\xce\xae\x17\x64\x0a\xc9\x7e\xdf\x8a\xbb\xd6\x68\x9e\xa8\xa9\x54\xf9\x95\x67\xd9\x85\xd6\x34\x6f\xa9\xc9\xba\xbc\xca\x9c\x6d\xfc\xf4\x74\x9c\xcc\x4b\x39\x9a\x4b\xbf\x7a\x02\xd3\x31\x0a\x45\x57\x19\x4c\x4a\x8d\x2c\x51\x35\x1d\x53\x72\x2d\x58\x7f\xcd\x57\x79\xa9\x62\x0e\xba\x36\x93\xec\x53\xf9\xcf\xb3\xec\xab\x9d\x9d\xbb\x5c\x12\x27\xc8\x3c\xc9\x85\x38\xfd\x8e\xd4\x60\x7d\x69\x02\x3b\x02\x36\x46\x0b\xa2\x6e\x42\xc5\x13\x58\x2b\x06\x1c\x09\x35\x55\x8f\xe7\x68\x7e\x73\xd1\xae\x9f\x7a\x86\x88\xe6\xe7\xc9\xd8\xa7\xca\xac\x1d\xd1\xbf\x80\x7d\x11\x25\xe7\x14\x20\xbe\x9c\x4b\x68\x53\x15\x2a\x90\xc7\x67\x11\xf1\x9a\x2c\xb6\xef\x9a\x1a\x59\xad\x23\xb8\xbe\x13\x18\xa5\xfc\x36\x77\x2f\x88\x16\x58\xa5\x18\x61\xf2\x0e\x03\xd1\xfb\xc4\x91\xd5\xee\xf0\x84\x9c\x3d\xa0\x1b\xac\x5a\x09\x1b\x70\x10\xb7\x81\x1d\x06\x24\xa3\x24\x1e\xdc\xbc\x79\x7a\xfa\xf6\xf1\x9b\xb7\x03\xe9\xf8\x6a\x33\x22\x01\x1b\x8c\x93\x38\x18\xd8\x61\x7a\xca\x7e\x2f\x81\x4c\x31\x47\xc9\x65\x48\xd6\xe0\xe5\x68\xc9\xe8\xb5\xd3\xc1\x0d\xc9\x72\x70\xb3\x04\xec\x73\xf2\x97\x48\x36\xb8\x21\x05\x9d\xbe\x3b\x39\x79\x7a\x7a\x3a\xb0\x7f\xbf\xc2\xf6\x72\x09\x7e\xbf\xc2\xb9\x17\xb4\xae\xe4\x15\xfd\x63\x70\xc3\x88\x92\x5b\x74\xb2\x41\xc5\x69\x39\x32\x05\x2d\x28\xcf\xf8\xca\x74\x1a\x3e\x4c\x1f\xe1\x75\xca\x19\x72\xf9\x93\x0b\x88\x5f\x5d\xc5\x62\xe0\x18\x9d\x6c\x2a\xec\x98\x55\x69\x48\x36\x98\xf2\xf5\x22\x8f\x71\x0c\x39\x9a\x7a\xaf\xb3\x65\xe9\x59\x88\x09\x9d\x20\x5a\x47\x0f\xc6\x8b\x19\x23\xbc\x5d\xba\xd4\xd2\x33\x5f\xa4\x53\x89\x18\x88\x32\x33\x5d\xc6\x67\x8b\xc4\x0d\x9e\xf0\x44\xb4\xc2\xd8\x82\x8f\xca\xc4\x11\x0b\x19\x8c\x41\x56\xd8\x60\xab\x4b\x64\x66\x12\x5e\x2c\xe4\xef\x2b\x14\xf2\xe0\xff\xee\xd2\x1d\xc0\x33\x3c\x1a\xc6\x00\x6e\x88\xdd\xd6\xaf\xd6\x2d\xbb\xe9\xbf\xbb\x97\xe3\x9f\x7f\x32\xeb\x96\xa7\x6c\x26\xda\x14\xc3\xcf\x16\x8e\x4d\xb6\x82\x69\x2a\x71\x10\x19\x1d\x58\x41\xe9\xdc\x07\x2a\x8c\xaa\xdc\x8e\x53\x34\xa6\x0a\x1f\x9b\x6a\xb6\xe0\xfb\x91\xc8\xaa\xa5\xac\x55\x82\x77\xd4\x4e\xc2\x60\x9c\x11\x56\xc9\xc9\x06\xc4\xcc\xac\x8f\x55\x21\xe5\x1c\xa8\xfe\x18\x7a\xc8\x0d\x99\xd9\x54\x63\x90\x93\xbb\xdc\x9e\x24\x93\x94\x32\x4c\x19\x7d\xb6\x76\x8a\x9b\xba\x20\xbd\x18\x01\x3b\x53\xe4\x79\x23\x77\x84\xda\x4b\x5a\x3e\x6a\x4c\x91\x7b\xa0\x5c\x88\xf1\x36\x72\x9c\x38\x9b\xd3\x5b\x21\x68\xc4\x15\x33\x68\x56\x34\x04\x59\x2c\x94\xfa\x58\xaa\x2c\x4e\x49\x0c\x11\x4a\x32\x62\x2f\xcd\xaf\xe4\x80\xf5\x19\x5b\x60\x76\x52\x18\x4d\x64\xc3\x04\xdd\x6b\xfb\x40\xa5\xea\xb8\x7b\x5e\x1b\x03\x0d\x52\x23\xc5\xb2\x41\x2f\x4a\x01\xfc\xf2\xfd\x48\x66\xc2\x8e\x28\xbf\xba\x2b\xff\x58\xc0\x05\xb4\xab\xd8\xd6\x8e\x80\x3d\x5b\x64\x47\x41\xa5\x59\x99\x8a\x79\x96\xf1\xae\xd1\x86\xd8\x55\xf0\xc7\xe4\xaf\x3d\x56\x53\xbe\x87\xe5\xc3\x88\xbf\xfe\xe0\x91\xcd\xb6\xd9\xb8\xfd\x7e\x85\xdb\x0e\x9b\xd6\x8d\xc0\x7e\xbc\xc0\xd3\x77\x6f\x9e\x4b\x10\x9f\xd6\x43\xc2\x2a\xfb\x1f\x3c\x1a\x4c\xc3\xf9\x4a\xf3\xc8\x5f\xe0\x69\x82\xc2\xcf\x50\x4e\x24\x65\xec\x04\x57\x47\xb6\x12\x93\xc1\x00\xb6\xf8\xc8\x27\xbd\x76\x92\x04\xf5\x89\x4e\x05\xf8\xf7\xfd\x59\xe8\x8a\x2f\x0f\x4a\x3d\xcc\x40\x1f\x10\x39\xda\x5f\x33\x58\xb2\xa0\x96\xca\x23\x49\x52\x79\x24\xf1\x4b\xef\x05\x36\xea\x12\x46\xb5\x91\xa1\x3c\xe6\x28\x66\x58\xb1\xdf\x0f\x8a\x08\x1b\x7c\x3b\x1d\x72\xb8\x56\xa2\xaf\x18\xa3\x52\xa0\x47\x64\xd7\xc3\xc9\xdf\x4f\x5f\xbd\x1c\x16\x11\x89\xd4\xb4\x02\x32\x1b\x0f\x7b\xdf\xe1\xff\xc9\xfb\x12\x7c\x87\x1f\x3e\x14\x17\xfa\x64\xb8\xb6\x14\x87\x02\xac\x3a\x14\x60\x1a\xce\x82\xff\xab\xff\x28\xe6\xaa\xb8\xe3\xbb\x60\xab\xeb\x1a\xb0\xc2\x89\x36\x4d\x75\x58\xff\x0c\x8f\xdc\xa5\xeb\x0e\x6a\xb4\xea\xd4\xa8\x07\x87\x30\x75\x20\xa8\xfb\xd4\xf1\x5d\x77\xa0\xd4\xa9\xa4\x42\xe5\x8a\x76\x9d\xc6\xef\x03\xcc\x2c\xe9\xe2\x52\x78\xe9\xdc\x28\x16\x45\x3a\x52\xd9\x6f\xc0\x06\x57\xbc\x10\xbf\xc0\x4b\x41\x54\xc6\x9e\xcb\x9f\x4b\x70\x43\x56\xf5\x17\x10\x4f\x93\x20\x07\xd7\x9b\xbd\x78\x94\xfb\xcd\x13\x2e\xdd\x65\xce\xa8\x5d\x04\xe1\x4d\x1a\x9c\xf0\x66\xc9\x05\xf2\xe7\xd3\xeb\x0e\xfd\xe7\x7e\xdc\x32\x9f\xf7\xe1\xab\xab\xdf\xa7\x49\x4b\xa0\xcf\xf4\xf2\x42\x33\xa7\xb1\xb8\x5b\x06\x02\xc4\x68\x41\x29\x06\x83\x74\xe4\x9e\xf2\x80\x3a\x63\x02\x63\x38\xc9\x85\xd9\xe9\x4e\x76\xa2\x2d\x4c\x6f\xc8\x8f\x53\x46\xbb\xcb\x20\x88\xe8\x03\xda\x40\xae\xba\x53\xff\x65\x01\x8c\xc4\x4a\x05\x7d\xa9\xb1\x03\xab\x51\x32\xb7\x88\x55\xa4\x19\xa9\x2e\x9a\xd9\xb2\xc6\x21\x1a\x97\x44\xe4\x9c\xfb\xe3\x8f\x17\x28\x59\xc4\x92\x03\x0b\xc9\xfe\xa2\xe6\x70\xfe\xe9\xff\xcf\xde\xbf\x7f\xb9\x6d\x23\x89\xe2\xf8\xef\xfd\x57\x74\xf3\x7b\xaf\x96\x48\x20\x76\xb7\x33\x33\xbb\x97\x19\xa6\xc7\xb1\x9d\x19\x7f\xc7\x71\xbc\xb6\x33\x7b\xe7\x68\x75\x73\xd0\x24\xba\xc5\x69\x0a\x50\x00\xa8\x1f\x91\xb4\x7f\xfb\xe7\xe0\xc5\x37\x45\x52\xad\xb6\x25\x47\x73\x76\xe3\x16\x59\x00\x81\x42\xa1\xaa\x50\xa8\x87\x73\x66\x8b\x69\x34\xb9\x9b\x77\xf9\x1a\xba\x8f\x79\xcb\x77\xce\x3f\xd1\x77\x9e\x7d\xa2\xef\x7c\xb3\x8d\xef\x5c\x52\x66\xca\x21\xaf\xf9\xd2\x1f\xd6\x7f\xa9\xd9\xc5\xbc\x91\xee\x93\x98\xe0\x52\xc8\x4a\x9d\x8b\x66\x14\x73\x81\x48\x88\xbb\x39\x68\x5a\x77\x88\x98\xe0\xc2\x66\xae\x6c\x29\x46\x85\xdd\x4f\xda\xf4\xaa\x1f\x28\x75\x04\x64\x59\x45\x1e\x9e\xa5\xe8\xd0\x60\x0f\xe9\xd2\xca\xd7\x4a\x11\x24\x52\xf5\x2a\x42\x45\x15\x20\x3b\x8d\x32\xa0\x7d\x5c\x86\xe7\xf8\x7a\xaa\xfd\x81\xf3\xe0\xf6\x69\xed\x5a\x74\x73\x32\xdd\x6c\xad\xd0\x25\x4e\xda\xe3\x8b\xd6\x10\xd9\x8c\xc6\x44\xe7\x0c\x3e\x53\x34\xe6\xfc\x71\x5d\x74\x49\x1b\xcb\x34\x7e\x25\x2d\xcc\xf2\x4c\x33\xc2\x3f\xd8\x14\xa5\xdc\x70\x9a\x35\xac\x6f\x2d\x1d\x9d\x41\xe7\xfe\x99\x03\x9d\x7f\x3f\x5b\x3f\xf6\x5c\x07\x02\xdf\x17\xcb\xd8\xde\xcb\xf6\x7f\xb4\x88\x78\x48\x93\xc9\x9e\x41\x27\x92\xbf\xbc\x6f\x9e\x69\x7f\xef\xdc\x8d\x8a\x8e\x9b\x1e\x92\xb9\x94\x7a\xe9\xc6\x98\xc6\x49\x12\xeb\x12\xdc\x76\x62\xea\x24\x32\x45\xf7\xf1\x74\x3e\xfd\x81\x69\xbd\xf1\x65\x7c\x1d\x0b\x5d\xb5\x79\x3c\x2e\x5c\x6c\x4c\x6b\x42\x05\xd7\xd3\xc8\x53\x2e\xcc\xf9\x97\xba\x30\xe7\x7b\xbe\x30\xcf\xbe\xd4\x85\x79\xb6\xe7\x0b\xf3\xcd\x97\xba\x30\xdf\x7c\x82\x85\x69\x8f\xb5\xd8\x5e\xc0\x5a\xed\x29\xa9\xce\x6f\x3f\xf3\x6c\x3e\xff\xd3\xd9\x57\x78\x05\x59\x50\xbc\xf2\xb2\x57\x40\xdf\x9d\x5d\xa4\x69\x19\xc4\x57\x18\x9c\x9e\x9f\x9d\xf9\x67\xab\x8d\xfd\xdf\x55\xde\x93\x6f\xbe\xf9\x13\xcc\xc6\xea\xab\x8c\x48\xfe\xf0\xff\xd8\xff\x6d\x6c\xcf\x50\x4a\x41\x30\x22\xee\x39\x80\xc4\xf5\x9e\xfd\x51\xfd\xa3\xff\xfb\xef\xea\x9f\x73\x30\xd6\xb0\x9a\xb6\x25\xec\xd0\xc0\x0d\x3d\xf3\x8f\x86\x1c\x9e\x83\xf1\x0a\xe6\xe9\xa5\x92\xec\x27\x53\x18\x55\x4e\x9e\x2e\x39\x7d\x24\x98\x75\xfd\x1e\x31\xf7\xd9\x1f\x21\x06\x90\xb9\x7f\x3c\xd3\xff\xfe\xbb\xf9\x7d\x7e\x26\x1f\x8c\xd5\xb1\xd8\x7e\xa4\xf2\xf9\xdc\x71\xae\xe6\xcb\xea\x7b\xd5\x8c\x3e\xb9\x46\x99\x77\xaa\x7a\x0d\x73\xf3\x01\xcb\xe5\x68\x7c\x44\xea\xcd\x14\x2a\x8d\xb2\x02\xfc\x2e\x6b\x8e\xcd\xdc\x72\x29\xa2\xed\x33\x98\x35\x50\xae\xe5\xfa\x1e\x34\x6b\x4a\xb2\x9c\x44\x2a\xb8\xe3\xbb\x6f\xfe\x74\x66\xed\x3d\xdf\xfc\xe9\xec\x94\x1d\x91\x80\x54\xef\x43\xf3\x64\x7a\x16\x04\x62\xb9\x14\x41\xc0\x86\xe7\xcb\xa5\x4a\x3c\xc3\x10\x89\xe8\xd4\x05\x7f\x56\xfe\xeb\x0d\xdf\xcb\x62\x15\xa6\x68\xe6\xd6\x56\x75\x5d\x68\x75\xdd\xff\xe6\x4f\x67\x5f\x91\x53\x06\x1f\x9e\xf9\xd9\x7c\x4e\xab\x08\xf8\x6a\x78\xfe\xa7\x33\x28\x35\x75\x5f\x78\xf2\x9f\x74\x05\x73\xed\xa0\x51\xaf\x7d\xe1\x99\xbf\x56\x2b\x6d\xc0\xe9\xed\x7a\xaf\x02\xe0\x76\xc3\x1c\x72\x9d\x90\x97\x1f\xe6\xcf\x7b\x57\x16\x4e\xd3\x60\x16\xc3\xf9\x9c\xbf\x68\x57\x03\x95\xc9\xe3\x2f\x94\xfc\x2d\x8e\x94\xb1\x3b\xe6\x1f\x26\xaa\xac\x82\xf3\x97\x68\xce\x90\xb9\xb1\xfd\x8b\xf2\xfb\x54\xb9\x04\xe9\x6c\x86\xd9\x0b\x4a\x04\x8a\x89\xb2\x6b\xff\x85\xcb\xa6\xf6\x12\x36\xed\x75\x9c\xd6\xc7\xa6\xd3\x59\x82\x45\x9a\xf7\xd2\x7e\xc1\xfc\x4c\xbf\x32\xae\x29\x32\x62\x20\xc7\xd0\x21\x94\xe0\xea\x85\xa7\x1e\x96\xe2\xea\xf4\x56\x1d\x7e\x8b\xc5\x13\x24\x43\x1b\xde\xc6\xf8\xae\xda\x74\x66\xf2\x05\xa9\xd6\x42\x65\xdc\xec\x72\xe7\xdb\x5a\xb0\x6c\x5b\xc2\x26\x47\x7a\x9f\x33\x74\x8f\xb2\x38\x1e\xc6\x57\x72\x8a\x43\x15\x2f\x33\xa1\x89\xba\xcf\xc8\xbb\x80\x28\xa8\x4e\xcd\x9e\xcc\x07\x36\x35\xb4\xf7\x9a\x5e\x21\x2b\x40\xbd\xdb\x6e\x03\xf8\xe3\x27\xd2\xd8\xc0\x6e\x65\xb8\x28\x7a\x7e\x5c\xd7\x5d\x19\x1c\x67\x37\x0c\x2a\xb6\xa8\x76\xbe\xaa\xb0\x49\x82\x19\x3f\x95\x02\x3e\x0e\xcd\xb6\xae\xf7\xe2\xd1\x49\xb0\x19\x9d\x8b\x98\x5c\x9f\x66\x45\x43\x75\xa9\x9f\x75\xde\x3b\xb5\xd7\x0f\xf1\x95\xab\x2a\x72\x7a\x31\xd7\x95\x39\x31\x48\x03\x0c\x5d\x0c\x56\x2e\x06\xcb\x65\xa9\x81\x33\x27\x7a\x1a\x91\x73\x62\x93\x66\x69\x2f\x9e\xc1\x40\xff\xeb\xc5\x02\x33\x24\x28\x3b\x8e\xad\xcb\x4e\xae\x63\xfd\xc1\x2b\x46\xa7\x35\x5f\x90\xa3\x8e\xaf\xdc\x13\x6c\xa0\x1b\x52\x74\x65\x63\xb4\x81\x66\xa9\x53\x52\x96\x7a\x53\xd0\x0f\xaa\xa1\x17\xa2\x24\x71\x31\xf0\x78\x12\x87\xd8\xfd\x0f\x38\x3c\x07\x47\x8e\x06\x77\x82\x20\x20\x83\x81\x2a\x02\xcd\x05\x9b\x87\x82\x32\x95\x85\xb1\xf0\x44\x57\x6f\x56\x63\xf9\x11\xcd\x54\x9b\xe5\xd2\xf9\xa0\x2f\x83\x48\xed\xc4\x14\xf0\x73\xab\xa6\x99\x26\xa7\xff\xcf\xbd\xf0\x7f\x8e\x97\xaf\x01\x11\xee\x85\xff\x1f\xcb\xf3\x3f\x2d\xbf\x79\x06\xdc\x0b\xff\x45\x82\xa6\x33\x1c\x81\x0b\xd5\xc9\xff\x3a\xf5\x04\xe6\xc2\x25\xa0\x38\xd3\x12\xb6\xa4\x7a\xc8\xe8\xdd\x31\xc1\x77\xc7\x1f\x1f\x66\xf8\x15\x63\x94\xb9\xce\x6b\xa2\x12\xfc\x1d\x23\x21\x85\x94\x38\x16\xf4\x98\xcf\x18\x46\xd1\x31\xa1\x64\xa8\xd6\xe6\x32\xc1\xc7\x31\xd1\x12\xd9\xfb\x6f\xf2\x9a\x1c\x2b\xfb\xa4\x04\xbd\xc4\xc7\x16\x04\xaa\x06\x48\x8e\xe8\x98\x2a\x74\xf1\xe3\xe9\x9c\x8b\xe3\x09\xba\xc5\xc7\xe8\x78\x54\x5a\xee\xb1\x0b\x8e\xa7\xea\x06\xc4\x73\xc0\xca\x05\x25\xff\x2a\xb0\x70\x25\x13\xd7\x0a\xcb\x77\xd8\xdc\x71\x01\x95\x63\x2e\xfd\x75\x94\x16\x91\x0d\xce\x20\xcb\xd5\x8c\x15\xe0\x5b\xf2\x67\xf1\x2d\xf9\xfa\x6b\xc0\x46\x64\x1c\xe0\x11\xb1\xd5\x61\x8f\xd9\x96\x3d\xaa\x5e\xa4\x9b\x32\xe5\xd2\x72\xcb\x61\xd6\x10\x99\xa4\x5f\xaa\xbc\xa8\x94\x35\x57\xa0\xa4\x0c\x3b\x00\x5e\x61\x1c\x5d\xa2\xf0\xa6\x01\xcc\xbe\x76\x40\x3e\x69\x62\x7a\x79\x5d\xc9\x7f\xc7\x72\x51\x35\xb6\xad\xaa\xc6\x3f\x17\xd8\x2d\xd4\x09\xf0\xd4\x08\xbc\x30\xc1\x88\xb9\x36\x3c\x53\x67\xc1\xd3\x57\x96\xba\x43\x1a\xe8\x5f\x47\xf9\x22\x98\xcc\xd3\xee\x4b\x1a\x84\xe7\x74\x4a\xaa\x2f\xcf\xb5\x73\x13\x58\x2e\x2d\xa4\xba\x44\x3b\xe2\xb9\xb6\xea\xc9\x60\xe0\x22\xf3\x3b\x70\xfe\x27\x8d\xba\xe5\x00\xac\x56\xb2\xeb\x38\xeb\xfa\xa7\x3b\x82\x99\xcb\x00\x4c\x02\xe6\x69\x14\x7b\xe1\x9c\x31\x4c\xc4\x7b\xf9\x4b\x17\x39\x98\x07\xb1\x97\x50\x7a\x33\x9f\x99\x75\xf0\xd3\x4e\x13\x90\xc6\x9a\x96\x61\xf2\xac\x16\x78\x0c\x5f\x31\xcc\x27\x2e\x90\xdc\x63\x1a\x73\xec\x89\x09\x26\xae\x5b\x73\x68\x4c\xd4\x84\x6a\x46\x23\x27\xb7\x5c\x66\x31\xad\x66\x92\x17\x73\x2f\xe3\xd2\x1f\xa9\x39\xc4\xcd\x21\x71\xdd\xb3\x2c\xd9\x2f\x70\x6b\xfb\x84\x08\xc6\x00\x00\x1f\x2b\xfd\x18\x62\x5d\xa8\xb9\x6e\x58\x78\x05\xe0\x42\x47\xc8\x74\xd1\xa2\x33\x99\x13\x85\x9f\x4c\x77\xae\xd9\x55\x85\xd1\x8a\x2e\xa3\x3d\x45\x61\xc2\x4f\x43\x86\x4b\x8e\xc4\xb0\xa5\x85\xf2\xc9\x7f\x7a\x05\xc7\xce\xac\x93\x22\xd7\x30\xca\xcf\xb8\x1e\x97\xf3\x58\x6a\x82\x4d\xac\x89\xb2\xa9\x03\xda\xab\x5e\x6d\x66\xc3\x90\xbd\xeb\x9b\x75\x33\x0a\xf5\xc4\x75\x50\x98\x38\x3a\xf0\x3c\xf3\x3c\x68\xc8\x1f\x7b\x94\xfb\x94\x5b\x74\x52\xf6\x18\x8e\xe6\x21\x2e\x9c\xa2\x49\x9a\x12\x80\x98\x94\x00\xea\xe2\xda\x97\xa2\x25\x10\xea\xf3\xf2\x34\xff\x12\x09\xe4\xca\x67\x40\x72\x25\xf5\x2b\xe7\x6e\x00\x20\x2e\xc6\xf1\x55\x53\x03\x59\xb7\xe9\x34\x98\x91\x50\x36\x45\x49\xfc\x9b\x29\xbf\xa4\x94\x98\x14\x07\xde\x04\x91\x28\x31\xaf\x48\x79\x4b\xcb\x4d\x72\xd4\x8d\x98\x3e\xed\xc9\xb8\x86\x9a\x7e\x9d\x63\xf6\xf0\x4e\x25\xb0\xf7\x17\xda\x8a\xf1\xfd\x83\xbf\x40\xdc\xd7\xce\xbe\x72\x51\x11\x0b\x27\xfa\x91\x06\x70\xa0\x09\xfd\x97\x9f\xcc\xa1\x95\x63\x12\xbd\x48\x28\xc1\xd5\x2c\x4d\xaa\x70\xb8\x13\x26\xea\x10\x8a\xeb\x10\xd6\x71\xf7\xcd\x68\x12\x87\x31\xde\x84\xbd\xa4\x4d\xf7\x83\xcf\x14\x87\xbb\xeb\x0c\x67\xcb\x0c\x45\x4d\xfe\x61\xf7\x79\xca\xa3\xc9\x78\xb7\x18\x00\xa7\x4c\x7c\xff\xe0\xab\xd0\x4f\xa7\x75\xe7\x6f\x3a\x79\x46\x93\x8d\x36\xb0\x6e\xb7\x1f\xbb\x37\x37\xd6\xdf\xd9\xd6\x55\x85\xe4\xbe\xd8\x8d\xab\xd7\xf5\xf7\xb8\x6b\x75\xe0\xec\x06\xdb\xd6\x34\xdc\x8f\x7d\x9b\x1f\xec\x67\x5c\xdf\x36\xfd\xbd\xdb\xc6\xe6\x2a\x12\x3c\x7a\x44\x59\xdb\xa6\x4d\xae\xa3\x04\x76\x7e\x97\x3f\x5a\xe5\xb7\x99\xfd\xe5\x47\x8f\x54\x5e\xab\xb2\xea\xaf\x53\x57\xa1\xd4\xce\x67\x73\x73\x28\xc3\x07\x5a\x3d\x7a\xbf\xfd\xce\x58\x4d\xac\xab\x17\xd0\xdf\xdf\xcc\x6f\x6e\x77\x6d\xc6\xdb\x9f\x23\xa1\xd1\xce\x49\xcf\xe2\xa1\x97\x0b\x24\xe6\xbc\xd7\xb1\x77\x82\xf8\x07\xd5\xca\xaf\xbb\xfd\x77\x9c\x20\x08\xf0\x72\x29\x3c\x4e\xa7\xb8\x36\x62\x5a\x78\xba\xbd\x04\x54\x09\x87\x62\xfe\x37\x8c\x12\x31\x79\xa8\x49\xf6\x77\x52\xc8\xf6\x13\xf3\x9f\xc9\x44\xc3\x56\x53\xfe\xe4\x5e\xd6\x65\x0d\xc4\xe5\x11\xa5\xaf\x9c\x90\xc5\x22\x0e\x51\xa2\xc6\x6e\x46\xb7\x5c\x3a\x77\x88\x11\x7d\xcb\x93\x3e\x5d\x81\xcd\x0e\xf3\x9a\x12\xf8\x84\xde\x9d\x1a\xb1\xc5\x77\x86\x22\x5a\x97\x5e\xa5\x4b\xaa\xba\xbc\x48\x31\xe5\xbd\x50\xef\xbc\xd1\xb8\xce\xed\x65\xb1\xb2\xc6\xee\xb2\xe7\x4b\xae\xad\x03\x6a\xdc\x49\x32\x72\x52\xa9\xa0\x3e\x68\x9c\xbd\x7e\xb9\x6a\x0a\xd7\x49\x93\x89\xe2\x91\xc8\xc0\xc7\x83\x81\x5b\x7c\x10\x8c\xc6\x00\x16\x1f\xa9\x60\x7c\x57\xa8\xdb\x50\x6d\xd6\xee\xbf\xbc\xca\xb0\xde\x53\x5b\xb4\x8d\x76\x5e\x53\x2c\x0c\x74\xef\xb5\xc4\xed\x6a\x86\x26\x84\xfe\xa0\x1a\x3e\x8d\x6a\x68\x49\x6f\xb7\x64\x68\x0d\xc7\xdc\x68\x76\x56\x14\xec\xda\xf4\xda\x74\xbf\x95\xa4\x76\x3d\xf4\x5a\xa9\x50\x95\x07\xf9\x72\x6a\x1a\x62\x0d\xcf\x0f\x29\x21\x38\x14\xc3\x19\xa3\xf7\x0f\x5a\x00\xfc\x3d\x26\x91\xf6\xc8\x83\xf2\x69\xdc\xf9\xc3\x65\x41\xb4\xc9\x08\x82\xdc\x08\x9a\xbc\x30\xdf\x49\xc8\x1f\x28\x1b\x0c\xb2\xbf\x6b\x60\x09\x58\xe8\xcd\x6b\x26\xb3\xa1\xbc\xc9\x11\x4e\x1a\x5f\xf4\xd9\x68\x87\x50\x11\x5f\x3d\x34\x71\xdd\x04\xf1\xc9\x8f\x98\x73\x74\x8d\x79\xde\x81\x40\x05\x8f\x17\xd8\xe4\xb9\xc2\x73\x9a\x5a\x12\x45\x0f\x2a\x70\x7d\x30\x70\xfe\x70\xf6\x07\xb9\x08\x05\xff\x4e\xd5\xde\x53\xff\x95\x4b\xc9\xb8\x30\x13\x35\x2a\x2d\xb0\x85\xf2\xf4\xf0\x54\xea\xce\x45\xa4\xf3\x9d\xfe\x44\x54\xc2\x47\xff\xe4\x1c\x72\x11\x87\x37\x0f\xfe\xc9\x19\x14\x0f\x33\xec\xa7\x3a\x9f\x19\xa8\xef\xe8\x9a\x81\xce\x0a\xc0\x91\x1d\x9c\x96\x08\x8a\x36\xc6\x35\x6b\x8c\xc1\x42\x0e\xda\xfe\xce\x39\x09\xe9\x6a\x79\xca\xb7\x47\xfe\xe1\x4a\x12\xd8\x4c\x9f\x4c\x09\x40\xaa\x94\xbb\x2c\x93\x9f\x9c\x38\xdc\x4d\xa9\xe3\x49\x89\x23\x3b\xd7\xa7\xd1\xfd\x31\xc9\xe8\x26\xc6\xe6\xf9\x35\x12\xf8\x0e\x3d\x18\x65\x94\xef\x04\x39\xa5\x4c\xe5\xb3\x1e\x51\x14\x8f\x2e\x31\x79\x0f\x25\x31\xe2\xe6\xe4\xf1\x56\x1e\xa9\x1c\x00\xfb\x9d\x65\x6e\xf0\x03\x8e\xde\x35\x88\x10\xb3\x34\xdd\x84\x88\x05\xae\x15\x08\xb9\x13\x86\x92\x06\xde\x4b\xcc\x45\x4c\x74\x3a\x8e\xec\x30\x22\x31\xf3\x78\x21\x60\x16\x6d\x47\x2d\x49\x45\x83\x83\x49\x27\xd2\x6e\x70\xe8\x8b\x10\x8e\x85\x88\xc9\xf5\x67\xa5\x59\x86\x67\xb4\xc9\xd5\xce\x0e\xaf\xdd\x59\x45\xc4\x53\x4c\xe7\xa2\x01\xc6\xbc\x75\x80\xce\xec\xc6\xa6\x31\xb9\x96\xbc\x4a\x9d\x5d\x3e\xa6\x7e\x5d\xf5\x99\xae\xa1\x29\x6a\x6c\x3a\xf1\x24\x7f\x3b\xaa\x14\x2d\x4d\xfb\x75\xe0\xc9\x19\x80\xc2\x05\x65\xe7\xb3\x7c\xdd\x58\x5c\x6a\x71\x5e\xca\x22\x7d\x83\x8b\xe6\x18\x5b\xf2\x42\xd9\x75\x8a\x83\x76\x55\x82\x10\x75\xd2\x39\x3e\xff\x46\x71\xfc\x1b\xfc\xf0\x82\x46\xd8\xaf\x26\x93\x5e\xd5\xd6\xbc\xea\x72\x94\xc9\xca\xd8\xd6\x9a\x25\x74\x01\x5a\x4f\xf9\x74\xcb\x29\x81\x23\x7b\x08\xd3\x4e\xb7\xfa\x24\xa6\xa1\x46\x16\x6a\xec\xf8\x65\x3c\xd6\x76\x06\x4f\x98\x39\x51\x6a\x1f\x11\x23\x41\xa0\xe9\xcf\x54\xcc\xce\x35\x05\x47\x97\x0c\xa3\x9b\x23\xf5\xd1\x39\x4b\xf8\xc8\x90\xc2\xd8\xf1\x53\xa3\x47\xed\x3c\x24\x70\x31\x06\xa8\xfc\x12\x2e\x56\xd5\x52\x1d\xe9\x6b\x4b\x73\x0e\x24\x9e\xda\x14\xf5\x03\xd7\x3d\x65\xc3\x96\xbf\x41\xc7\xd3\x9e\x8a\x79\x47\x11\x9a\x89\x72\x88\xc0\x5f\x74\x10\x8a\x04\x38\x8d\xf0\xe5\xfc\x7a\x9f\x3c\xe8\x31\xb9\x5d\x63\x03\xba\x8a\xaf\x25\x44\xcc\x28\xd1\xb1\xfe\x15\x67\xfa\x6b\x2c\x86\x79\x88\xd2\xd4\x21\xd9\x88\x97\x61\x72\x9b\xe7\x63\x2c\x28\xd5\x45\x4f\x33\xac\xde\xc5\x24\xa2\x77\xd0\xe6\xb7\x97\xeb\x28\xdb\x36\xe4\x57\x55\x4a\xdc\xa9\x76\xc6\x2e\xce\x5a\x2f\x61\x98\xc4\x43\x0d\x53\x80\xdc\xa3\xe5\xbc\xa2\x6c\xca\x4f\x51\x98\x34\x2d\xaa\xa9\x5e\xaf\x84\xaf\x02\xab\xac\xa8\xec\xe2\xd4\x58\x8e\xb6\xb4\x9c\x76\x6b\x95\x2d\x4d\x64\xd3\xea\xe3\x8e\x03\x51\xb5\xed\xb3\xda\xb6\xcf\xf2\x6d\x9f\x8d\xfd\x8c\x78\x68\xb5\x8b\x6f\x6a\xbb\xf8\x26\xdf\xc5\x37\x63\x9f\x59\xed\x8a\xba\x44\x32\x26\xc9\x92\xfe\xa1\x11\xab\xb3\x36\xad\x6a\xc9\x76\xed\x9a\xa5\x4a\x51\x97\x95\xcb\x01\x1f\xd6\x6f\x37\xd6\xef\xa6\x91\x8f\xe6\x17\x4e\x42\x1d\x56\x6c\x37\x56\xcc\xd8\xc3\x3b\xac\x9a\x85\x3c\xac\xdc\x13\xac\x9c\xb2\x68\xe0\x92\x77\x69\xf1\xa9\x76\x5c\x5b\xb3\xc6\x35\x3e\xdd\x7a\x8d\x4d\x7f\x1d\xd6\xd8\x42\xee\xe7\x1a\xdb\xd1\xef\xce\x4a\xbf\x44\x02\x85\x98\x08\xcc\xb8\xbf\xd0\x36\x29\x15\x0b\xe7\xac\xb6\xb3\x7b\x15\x4d\x74\x58\x57\x0d\xb7\x9f\xab\xaa\xc7\xbe\x3b\x6b\xda\x79\xf7\x6e\xb0\x9e\xda\x6f\xad\xc3\x82\x1a\xc0\xfd\x5c\xd1\xbd\x5c\xcd\x7e\xbc\xb8\x66\x85\x27\x38\x99\x61\xc6\x4f\x87\x2a\x7a\x72\x88\x75\xb9\xb0\xba\x13\x58\x4c\xec\xdb\xe1\x8c\x26\x0f\x57\x71\x92\x34\xb5\xde\xc9\x53\x59\x73\x9f\x6a\xf0\xaf\xec\xcc\x3b\x76\x9c\x6f\xd4\x78\xe6\x4b\xf1\xb3\x06\xaf\x16\xa9\x1a\xb6\xda\x64\x27\x91\xb9\x7e\xba\xe8\x92\xd7\xcd\x74\x8a\xc4\x64\x68\x61\xf2\xb0\x3b\x39\xc5\xe6\x3e\xd5\xf4\x3a\xf6\x87\x2e\x79\x3b\xba\x42\xda\x03\x5f\x12\x78\xdf\x10\xa6\x26\xd8\x15\x63\x21\xed\x86\xb2\x49\x2f\x9c\x4d\xf6\x11\x69\x93\x5e\x58\x9b\xb4\xa3\x2d\x8a\xba\x23\x2d\x8a\xf6\x0e\x65\x72\x7a\x5d\x11\x16\x45\xed\xe8\x22\xb5\xe8\x12\x6c\x5e\x87\x2f\xb2\x7f\xf8\x22\x3d\xf0\x45\x3a\xe0\x6b\x36\x1b\xde\x62\xc6\xd7\x98\xca\x6a\x2d\xd7\x99\x89\x37\xd7\x83\x4d\x09\x83\xaf\xf1\xfd\xac\x4e\x6b\xcc\x27\xe1\xb0\x29\x23\x36\x54\xfe\x16\x2b\x88\x72\x3e\x8e\xcf\xdf\xbd\xf3\xcc\x28\x20\x0d\x98\xfd\xfb\x27\x92\x3c\x2c\x97\xcc\x9b\xc4\x11\xfe\x30\x41\x90\x07\xcc\xe3\x13\x94\x7f\xfc\x0f\xd3\x2a\x56\x69\xed\x53\x9d\x6e\x30\x70\x25\x28\xbd\x7b\xa5\xee\xf8\x54\xb1\xd5\x38\x40\xde\x54\x97\xf0\xb6\x1f\xb0\x6f\xdf\xe3\xeb\x57\xf7\x33\x00\x60\xbc\x5c\xd6\xc1\xd9\xf7\x00\xf2\x52\x47\x7c\x82\xb2\xc6\x17\xf1\xe8\x6c\xec\xa3\x4d\x72\x88\xa0\xd9\xcc\x4c\x25\x60\x2d\x45\x9a\xd4\xda\x7b\x9a\x04\x5c\xd6\x21\x4b\x43\x8e\x5a\x70\xfd\x06\x53\xc9\x8f\xb8\xa4\xc8\xea\x2e\xd3\x8d\xf6\x6d\xa3\x99\xa9\x76\xdd\x6b\x0a\xbc\x7d\xbb\xf1\x98\x74\x67\xe7\x12\x78\xdf\xd0\xa6\x26\xd8\x15\x69\x3c\x26\x9d\x50\xd6\x43\x6f\x50\xd0\x7b\x88\xb4\x1e\x7a\x83\x84\xee\x80\x36\x1e\x5f\xd7\xd2\x9a\x7e\x53\x3e\xbc\x18\xf8\xbd\xc3\x9c\x9e\x65\x67\xd4\x49\xf0\x76\xdc\x09\xd4\x63\x97\x4a\xe0\x7d\x43\x9b\x9a\x60\x57\xa4\x09\xd4\x0d\x65\xcf\x7a\xe1\xec\xd9\x3e\x22\xed\x59\x2f\xac\x3d\xeb\x84\xb6\x1e\xcc\x4d\x41\xef\x21\xda\x7a\x30\x37\x09\xdd\x01\x6d\xf4\x72\x7d\x5a\x42\x05\xd1\x5a\x42\xb4\x5f\x1a\x42\xdc\x90\x21\x30\x97\x85\x30\x28\x66\x21\x5c\x2e\x4f\xdc\xb5\x79\x08\x6d\x6a\x41\x6d\x07\x1d\x8d\x21\x0b\x4e\xce\x20\x0a\x4e\xce\x21\xb5\xaa\x9b\x60\x0f\x69\x6d\x26\x0e\xe3\x00\xd7\xe4\xba\xfb\xf6\xc4\x65\x81\xcb\x83\xd8\x23\xf8\x5e\xb8\x00\x78\x11\x25\x18\x0c\x06\xae\x2e\x39\xea\x72\xeb\xc9\x73\x22\x96\x4b\x62\x54\xed\x93\x20\x10\xe0\x5b\xf9\x49\xf0\xad\x89\xe2\x48\xc0\x02\xc9\x21\xd0\x20\x59\x5d\xc5\x04\x25\xc9\xc3\x42\x05\x7d\x2c\x97\x3a\x61\x5e\xec\xe9\x21\x2f\x97\xf6\x2f\x17\xa4\x90\xf1\x95\x8b\x80\x8e\x02\xa1\xab\xac\xb6\xa9\xc2\xd4\x21\xb5\x62\x8f\xd4\x8a\x45\x7c\x75\x4f\xae\xa8\x5c\x99\xe7\xa1\x98\x33\x7c\xc8\xb0\xd8\xb5\x66\x6d\xe1\x38\xe4\x96\xaf\x27\x58\x20\x09\xf6\x1c\x8c\xce\xc6\x10\x05\xa9\xe7\x1d\xbb\x70\x9c\xf4\x0a\xa0\x98\x3f\x0f\x75\x4b\x20\x6d\x99\x99\xce\x21\xab\xb2\x03\xf3\xe6\xec\xb2\xb5\xd0\x3b\x29\x0a\xd6\xcf\x36\x44\x53\x9c\xc4\xbf\xe1\x26\x8f\x31\xcd\x05\x2a\xa2\x2f\x6d\xb6\x93\x53\x5e\x73\x51\x91\x4e\xb7\xeb\x25\x85\x69\xd0\x01\x91\x24\xc4\xc9\x10\x25\x49\xfd\x79\x9c\xe8\xec\x8d\xe1\x43\x5d\x8b\x9d\xc4\x62\xdb\x7c\x67\xb1\x40\x1b\x91\x4e\xda\x70\x27\xa7\xbd\x8e\x78\xb2\x29\x77\x26\x1f\xdb\xa4\x1d\xa1\x97\xac\xf6\x76\xab\x56\xf5\x54\xc0\xfb\x86\x3e\x35\xc1\xae\x88\xbb\x64\x1d\x68\x10\xc7\xb5\xbb\xad\x1e\x65\x12\x78\xdf\x50\xa6\x26\xd8\x15\x65\x38\x4e\xda\x51\xa6\x5c\xf5\x39\x16\xc3\x6b\x5c\xef\x26\x6c\x01\x1a\x9a\xec\x24\x06\xbb\xce\x99\xf7\x9f\x33\xdf\xd5\x39\xaf\xa1\x1a\x3b\x78\xa9\x2b\x77\xa6\x9e\x5c\xa3\xee\x18\x5d\x8b\xcd\x61\xde\xb3\xa5\xda\x74\x5f\xb1\xda\x1f\xa5\x1d\xf0\x39\x27\x37\x3d\xed\xf8\xba\xcd\xde\x21\x51\x4d\xb4\x33\x02\xe7\xe4\xa6\x1d\x79\x09\xe2\x3c\xbe\x7a\xe8\xab\x87\xd8\x66\xfb\x86\xc2\x74\xba\x9d\xfd\x6c\x74\x03\x8d\xc8\x1a\x6f\xd2\x0c\x23\xbf\x7d\xd3\xdd\x68\xa8\xa1\xf7\x0e\x79\x6a\x8a\x9d\x31\xf7\xdb\x37\xed\x46\x43\xb9\x47\x51\x43\xcc\xcd\x9a\xed\x6b\x5a\xed\x24\x02\x3b\x4c\x58\x19\x1d\xd6\x04\x79\xa6\xe6\x07\x71\xb0\xed\xed\x8f\x6d\x8f\x64\xb6\x3d\xb6\xb9\x6d\x8f\x55\x6d\x7b\xac\xcd\xb6\xc7\x32\xdb\x1e\xeb\x68\xdb\x63\xfd\x6d\x7b\x0c\x14\x67\xba\xef\xb6\x3d\xb2\x1f\xb6\x3d\x56\xb4\xed\xa5\x75\x0f\x29\x6b\x0a\xaf\x56\x39\x6f\x00\x34\x39\x01\x2a\x69\x9c\x48\x20\xd9\xca\x33\x20\x67\xa2\x2d\x81\x64\x74\x3e\x2e\xe4\x05\x90\x3d\x78\x19\xab\x72\x99\xb2\x04\x16\xa2\x61\x1b\x22\x29\xf3\x7c\x6e\x5e\x4e\x23\xd6\x89\xb1\xcf\xc5\xfe\x19\x37\xec\x64\xbb\xca\x46\x0d\xdf\x41\x58\xa8\x92\x73\xb5\xee\x99\x6b\xb1\x68\x9a\xed\x1d\x1a\xed\x74\x3b\xe3\x51\x37\xe8\x80\xc8\xee\x2e\xae\x7b\xe8\xe1\xda\xc7\xc1\xb5\x8b\x7f\x6b\x2f\xf7\xd6\x7d\xf4\x6e\xed\xe5\xdc\xda\xc9\xb7\x35\x42\x7c\x82\x59\x7f\x8b\x6e\xd6\x6e\xcf\x50\x98\x9b\x70\xd7\x5e\x6d\x8b\x76\x64\xe2\xb0\x27\xcb\x93\x2d\xf6\x0d\x81\x72\x92\x9d\xfb\x0b\x3b\x20\xcd\x8c\xb1\xd3\xb1\xa2\x98\xeb\x76\x74\x36\xb6\x45\xb6\xcc\xcf\x0b\x3c\x3a\x1f\xfb\xf2\xaf\x4d\xd4\x98\x5f\xd2\x9c\x19\x4d\x29\x3d\xeb\xee\x2b\x45\x87\xb4\x9e\xe9\x6c\xe3\x68\x18\x13\x8e\xeb\xed\xfe\x0c\x93\x08\xb3\x2a\x95\x64\x8d\x76\x92\x58\xda\xa7\x6c\x33\x96\xf4\x9a\xb2\x69\xb4\x97\x53\xbe\xba\xc2\x0c\xaf\x4f\x0e\x58\x47\xd6\xc7\x92\x72\xab\xd9\x11\xd3\xb3\xf4\x89\x24\x6f\xef\x2a\x26\xd1\xf7\x0f\xae\xf3\xfa\xa5\x03\x0b\x85\xab\x5f\xbf\x74\x74\xf5\xe4\x4d\x54\xf8\x74\xcc\x4f\x49\xfd\xb7\x9d\xe5\xb3\x84\xdd\xc9\xa5\x5f\xd3\xa7\x9c\x5e\xd7\xfe\xe2\xdb\x76\x32\xa2\xd3\x61\x5a\xfb\xf8\x60\x76\x39\x98\x5d\x0e\x66\x97\x83\xd9\x65\x33\xb3\x4b\x5b\xe2\xbb\xee\x46\x17\x97\x8c\xce\xc7\x30\xcd\xf1\x66\x02\x6e\xe5\x72\x43\x1a\x8c\x90\x47\xaf\xae\x38\x16\xef\x10\xc3\x44\x40\x94\xcd\xcf\xe3\x02\x31\xc1\xff\x2b\x16\x13\xd7\xf9\xff\x31\xcc\x69\x72\x8b\x99\xef\x80\xc1\x80\x7a\x73\xc2\x27\xf1\x95\x70\xa9\x14\x7f\xf9\x1e\x00\xa4\x75\xd9\xb9\x45\xae\xb4\xc0\xfd\xd7\x81\x30\x6d\xde\xe0\x2b\x29\xbb\x1e\xb2\x27\x1f\xe9\x0c\xaa\x6a\xa8\xf7\xfe\x19\x7c\xf0\xcf\xe0\x04\xc7\xd7\x13\xe1\xdb\x71\xfe\x4d\xfd\x84\x77\x71\x24\x26\xe9\xc3\xff\x92\xbf\x56\xfd\x0c\x47\x11\xa3\xb3\xbe\xca\x3f\xa3\x95\x10\xad\xdd\x10\x71\xeb\xa7\xaa\x27\x36\xa3\x77\x98\x0d\x39\x4e\x70\x28\x86\x31\x1f\x5e\x33\x3a\xaf\xc5\x40\x1e\xb0\x53\x1f\x3b\x89\x92\xe6\x3e\xd5\x54\xde\xc9\x99\x7c\x50\x13\x79\xcd\xff\xaa\x51\xd1\xf1\x1b\x0d\xed\x37\x5c\x06\xfd\x17\xae\x8d\x10\xeb\xb1\x12\x69\x37\x7b\xbf\x18\x1f\x52\x84\x6c\xbc\x1e\xb6\x8b\xf6\x25\x21\x82\xc5\xb8\xaf\xdd\xd3\xb6\xda\x37\x54\xdb\xc9\x76\xc5\xab\x86\xef\x80\xc4\xc6\xcc\x63\xf2\xd5\x21\xa2\xe0\x8b\x50\x7f\x0f\x11\x05\xfb\xa5\xfe\x7e\x89\x11\x05\xcf\x00\x44\x01\x93\x6a\x2d\x0d\x98\xd4\x6a\x79\x16\x5c\x40\x2f\x1c\xc7\xa7\x30\x0e\x54\x60\x01\x26\xb7\xc0\x45\xc0\x8e\x56\x22\xe1\x24\x88\x2f\x62\x9f\xf7\x8a\x33\xc0\xbf\x76\xcf\x8c\x80\x7f\x9d\xa3\xbd\x73\x5e\xd5\x83\xee\x2c\x11\x24\x74\xbb\x3c\xb8\xaf\x55\x2b\x6b\x8d\x46\x35\x49\x0f\x76\x1e\x65\xf7\x3d\x54\xc5\xfb\x0e\x6a\xe1\xfd\x6c\x7a\xde\x07\x61\xd3\xf3\x3d\x44\x99\x9c\x62\x77\xa4\x4d\xcf\x5b\xd1\xa6\x6d\xae\xc3\xcb\x7a\x97\xc2\x66\xe5\x2d\x6b\xb7\x93\x48\xec\x32\xe9\x8d\x66\xbc\x9f\xd3\x25\xd1\x26\x2b\xac\x5b\xed\xe5\x84\xef\x71\x34\xbc\x66\x71\x34\x4c\xd0\x03\x9d\x37\x38\x2c\x26\xf2\x78\x13\x53\x72\xaa\x81\xf8\xa9\x6c\xf1\x74\x65\xf1\x5a\x25\xb4\x95\xb2\xf8\x2e\x9b\xab\x8b\xa5\x9c\xc6\xa3\xf3\x71\x29\xb4\xaf\xe5\xca\xe1\x2a\x91\x9a\x54\x6d\x2e\x81\x75\x6b\x6e\x5a\xed\xe4\x9a\x37\xf7\x99\x4e\xb6\x63\x9f\x06\xbe\x9d\x8e\x12\x4a\x6b\xd9\x44\xad\x4c\xd1\xd0\x7b\x87\x3a\x35\xc5\xce\x88\xa3\x94\xb5\xa3\x8d\xb2\x29\x12\x43\x32\x97\xb8\x5a\x1f\x2c\x9f\x45\xca\x25\xc9\x30\xbe\x1a\xca\x53\x50\xe7\xa3\xae\x3c\x2f\xbd\xa1\x21\x4a\xb0\x3e\x35\xb9\x7a\xbb\xc9\x53\xc7\x06\x7b\xb6\xd8\x57\x40\x3a\xd9\x99\xed\x36\x2e\x44\xe1\x3a\x66\xe6\x40\x9e\x86\x4a\xa6\xd4\x35\x3e\xe9\xf2\x18\x36\xdc\xcc\x94\x52\x68\xba\x6f\x14\xc8\xe8\xf4\x55\x4f\x9b\x4a\xae\x4d\x3b\x35\x32\x3a\xaf\xcf\x1c\x55\xbf\x8b\x35\xf8\xfe\x21\x71\xde\x23\x67\x94\x06\x6f\x45\xdd\x75\xd8\x1d\x6f\x12\x76\xcf\x90\xa6\xa6\xd7\xb1\xbf\xeb\xb0\x03\xba\x18\x9d\xcf\xfa\x2b\x5a\x69\xb3\x9d\x44\x5f\xcb\x94\x6b\x55\xab\xfa\x93\xfd\xf5\x8e\xba\xf1\xac\x21\x90\xee\xdd\x5d\x77\xc1\x55\xad\x27\x50\x13\xb2\x76\xd4\x03\x68\x1d\xb6\xba\x3b\x17\x5e\x77\x70\xa7\x9e\x20\x3e\x24\xf8\xbe\x6f\xb4\x51\xda\x6c\xcf\xd0\x37\x41\xfc\xad\x9a\x6d\xc7\x3e\x0d\x7c\x27\x34\xce\x18\xbe\x8d\xe9\xbc\xaf\x5a\x51\x68\xba\x7f\xe8\x7c\x97\xce\xba\x3b\x4a\x6d\x9b\x76\xb4\x32\x7c\x35\x9c\x96\x8f\x96\x0d\x70\x82\xd6\xe8\xbe\x8c\xce\x45\x4c\xae\x4f\x45\x5a\x8c\x4e\x8e\xaf\x2d\x79\xe9\xe1\xaa\x67\x5f\xae\x7a\xd0\xef\xe6\xaa\x07\x7d\x11\x57\x3d\x68\x3f\xae\x7a\x68\xbd\xa7\x93\xe4\x26\x98\x35\x38\x3b\xe9\x97\xb5\xfe\x4e\x10\xe9\xab\x21\x1a\x30\x9b\x6c\x2a\x9f\x5a\x4a\xb2\xaf\x8f\x14\xe8\x42\x8d\xca\xfb\x49\xf7\x05\x4b\x95\xfc\xb2\x37\x9e\xce\xfe\x23\xde\xcb\x5f\x90\x66\x9e\xba\x3f\xdd\x11\xcc\x14\x24\x00\xb0\x1c\x9f\x46\x3b\x70\x5b\xc9\x45\xab\xf2\xcb\xbc\xea\xc1\x70\xef\xe2\x24\x0a\x11\x8b\x0a\x20\x06\x45\x15\xee\x0b\x59\x8e\xff\xa2\x9c\x99\xae\x23\xf7\x8d\x5d\x0c\x34\x03\x4e\xd4\x7f\x79\x91\x19\x77\xdf\x23\x7c\xc6\x30\x8a\x3e\xdf\xf6\xa0\xfd\xe7\x8e\xb7\x32\xf1\x9d\x60\x0e\x3c\xe5\xfe\x7a\xca\xcd\x6c\x3f\xde\x9c\xed\x9b\x18\x8f\xfe\xcc\x1f\xd6\x71\xfe\x8b\x02\xcb\xf7\xb7\xc0\xef\x2f\xf4\xdc\x4c\x11\xd8\x55\x86\x9d\xf8\xa9\x59\x67\xfa\xa5\xc4\xe2\x3f\x53\x5e\x4e\x8a\xca\xcb\x60\xb0\x56\x75\xa9\x13\x87\x8f\xe1\xcc\xd8\xb0\xc8\x3c\x8b\x9e\x97\xca\xe9\x30\xcd\x1a\x39\x80\x61\xae\x06\x91\xe4\x2d\x90\x6b\xee\x1b\x07\xd4\x65\x00\x26\x41\x3c\x3a\x1b\xc3\x30\x88\x0d\x5d\xa4\x44\x71\x3c\x77\x13\x89\xca\x30\x08\xbd\x29\x9a\xd5\x5e\x1c\x60\x8f\xcf\x92\x58\xb8\xce\xa9\x03\x14\x10\x26\x21\x8d\xf0\xcf\xef\x5f\xbf\x90\x3a\x3e\xc1\x44\x00\xef\x5f\x34\x26\x0a\x62\xa5\x52\xc2\x7b\x3a\x9f\xdf\x45\x81\xd9\xe3\xf4\x39\xf0\x5d\x52\x60\xe8\x6f\xd1\x14\x17\x5c\x5a\x75\x4d\x3d\xcf\x01\x83\x41\x52\x78\x11\x85\xea\xa1\x9b\x04\x29\x8c\x24\xdc\x10\x09\x37\x01\x00\x96\x3e\x38\x4a\xc6\xf6\x2d\x72\x43\x00\x00\x58\x1d\xa5\xa8\x0d\x15\x56\xa3\x2d\x0b\xbe\x4c\x91\x0e\xab\xe2\x4d\x29\x34\x90\x92\x9f\xdf\xbf\x79\xa1\x4b\x3e\xeb\x0f\xd0\x4b\xd9\x37\x66\xb6\x6b\x8b\x9c\x9f\xdf\xbf\x29\x16\x70\xd7\x9d\x61\xf3\x5d\x55\x51\xa9\x20\xf0\xa2\x16\x81\x27\xa6\xc9\x90\xa3\xab\xbe\x01\x8a\x59\xbb\x7d\x3b\xaf\x89\x69\xf2\x41\xcd\xb7\xeb\x61\xcd\x34\x68\x3f\xa9\xcd\xa7\x88\xf4\x0f\xf5\x4c\x9b\xed\x1b\x22\xd3\xe9\x76\x45\xa4\x69\xd0\x8e\xc8\x87\x19\xed\x9e\xb7\x4f\x43\xef\x1b\xf2\xf4\x14\xbb\x62\x4e\x42\xb7\xa2\x2d\x9e\xce\xbb\xa7\xee\x53\xc0\x7b\x86\x34\x3d\xc1\x8e\x1d\x4a\xe0\x76\x94\x91\xbe\x11\xc5\xb2\xc5\xbe\xa1\x8d\x74\x8f\x28\x8e\x49\x7b\x44\x71\xac\x8a\x74\x36\x95\x44\x5f\x87\x3a\xdb\x6e\x27\x11\xd8\x36\xe9\x5b\x7a\xd3\x37\x6f\x89\x69\xb4\x93\xd3\x5d\x47\x2f\x7a\xaa\x9d\x49\x46\x82\xb7\x23\x90\x0f\x51\x28\xe2\xdb\xfa\x28\x65\xa5\xe3\x54\xf1\x97\xb6\xd9\x37\x14\xf2\xe7\x66\xae\x5d\x91\x68\x1a\x74\x42\xa3\x2a\x8b\xdb\xf9\x86\x27\x6d\xb1\x7f\x38\xd4\x13\xed\x8e\x42\x09\xdf\x05\x83\xf2\xc4\xdf\x0f\x83\xba\xc5\x4e\x62\xb0\x7d\xb6\xda\x69\xb8\xcf\x6c\xf7\xd1\x37\x3a\xe6\xaf\x7a\x79\x47\x1b\xf8\x2e\x18\x94\xc7\xc3\xbe\x99\x06\x3a\x9a\xae\x50\x6a\xb6\xa3\xea\xbf\x6c\x5f\xcd\x76\x64\x63\xb3\xdd\x23\x27\xbe\x13\x66\x3b\xd6\xd9\x6c\xf7\x88\xdb\x9a\x9d\x37\xdb\xa1\x06\xb3\xdd\x93\xdf\x78\x14\x8d\xc7\xbb\x64\xb6\xcb\x59\xeb\xf8\x76\xed\x4a\x26\xd2\x06\xa2\x40\xfe\x80\x34\x40\xa3\xb3\x31\xe4\x01\xaa\x98\xf4\x9a\x2e\x4d\xd6\xd9\xd8\x68\xad\x8d\x8d\x56\x6d\x6c\x14\x00\xe8\xb2\x20\xf7\x0d\x90\x6a\x33\x1e\x9a\xcd\x92\x07\x97\xc1\x11\x4d\xad\x6e\xc2\xe5\x00\x3c\xad\xc9\x8b\xaf\x67\xe8\xff\xa2\xf5\x15\x0a\xd7\x28\xf2\xaa\xc9\x4e\xca\xc3\xf5\x53\xbd\xc1\x0f\x7d\x7d\x31\x54\x93\x9d\x9c\x6a\x73\x9f\x7a\x9a\x1d\x3b\x94\xc0\xad\x88\x4b\x10\xef\x9a\x32\xeb\xe0\x28\xb1\x2f\x8e\x12\x87\x94\x30\xfb\xa5\x54\x3d\x79\x4a\x98\xbc\xfa\x96\xcf\xc7\xa2\x4b\x61\xb1\x2c\x5a\x95\x5c\x38\x8e\x4f\x8e\xf8\x5d\x2c\x69\xfb\xe4\x0c\x2c\x42\xc4\x71\x85\xd2\x98\x9f\x65\x63\x99\x5f\x72\xc1\xdc\xe1\x39\x58\x6d\xa2\x3e\x48\xfe\xf3\x74\x45\x8e\x93\x70\xda\xd9\x50\x2c\x61\xf7\x4c\x1c\xa8\xe9\x75\xec\x2f\x09\xa7\xed\xc2\x00\x5f\x89\xa1\x60\xf1\x74\x7d\x8c\x49\x06\x76\xc8\xa1\xf0\x45\xc8\x8b\x43\x0e\x85\xfd\x92\x17\x5f\x7a\x0e\x85\x54\x1c\x21\x29\x8e\x54\xa9\xff\xd1\xf9\x18\xc6\xd9\x0b\x2e\x5f\xf0\xda\x92\x8d\x14\xc6\xfd\x8a\x36\x26\xf4\x7a\x58\x6b\xac\xaf\x17\x13\x0a\x7a\xdf\x04\x05\xbd\x7e\xd5\x5d\x52\xd0\xeb\x57\xed\xa2\x82\x5e\x9f\x9f\xf5\x41\xda\xf9\xd9\x1e\x22\x4d\x4e\xb1\x3b\xd6\xce\xcf\x3a\xa1\xad\x7b\x16\x0a\x0d\xbd\x87\x68\xeb\x9e\x89\x42\x41\xb7\x56\x17\x4a\xe8\x75\xf7\xe2\x42\x0a\x78\xff\x90\xd6\xbd\xb4\x90\x04\xee\x40\x69\x77\x98\x29\xe5\xbd\x9f\x97\x4e\xd6\x6e\xef\x50\x98\x4e\xb8\x33\x1e\x4d\x8b\x76\x64\xf6\x88\xca\x4b\x76\xf4\xda\x7f\x0d\xe6\xba\x77\xd7\xc1\x14\x97\xf4\x89\xca\x4b\xf6\x2f\x2a\x2f\xe9\x11\x95\x97\x74\x88\xca\x9b\xa2\x0d\x42\x5c\x4d\xa3\x9d\x44\x5d\xeb\x74\xfb\xcf\x75\x3f\x27\x7a\xdf\x59\x64\x49\xd8\x9d\x9c\x62\x73\x9f\x6a\x7a\x1d\xfb\x9b\xa2\xfb\x76\x74\xd5\xdf\x55\xd4\xa3\x6b\x57\x2f\x29\xd6\xa0\x2b\xee\x9e\x4d\x65\x1a\xb7\x67\x52\x99\x6e\x98\x91\x27\x6b\xb7\x8b\x79\x79\xfa\xa5\xe4\x99\xd2\xee\xd9\x14\x24\xec\xbe\x91\x0c\xed\x9e\x4d\x61\x4a\xdb\xb3\x29\x4c\xe7\xf5\x6a\x4c\x3d\xbe\xe6\xfb\xa7\xc7\x4c\xfb\x74\x38\xed\xc2\xc3\x37\x88\x96\xdf\xc7\x48\x79\xd2\x27\x4c\x9e\x74\x89\x91\x27\xb4\x77\x16\x73\xd5\x64\xdf\x10\xa7\xa6\xd9\x15\x71\x94\xb6\x67\x5d\x24\x54\x0c\xfb\x64\xf7\xd4\xf0\x7b\xe8\xc5\x46\xa8\x78\xf5\x6b\x0f\xdc\x89\x57\xbf\x76\x41\x5e\x2f\xcc\xed\x21\xce\xfa\x60\xac\x15\x5f\xda\x0a\x3d\x44\x7d\x79\x5c\xd6\x6e\xcf\x10\xa8\x07\xfe\xbc\x7b\xa7\xb6\x41\x57\x54\xd6\x64\x1b\x3b\x78\x54\x7c\x01\x37\x64\x07\x8f\x8a\xfd\xba\x21\xdb\x25\x8f\x8a\xc5\xca\x27\xf9\x84\xdf\x41\xc0\x2e\x46\x63\xdf\x50\x91\xe1\x18\x2e\xdb\xc8\xfb\x52\x63\xc9\x64\xee\x7b\x3a\x3f\x0a\x4a\x86\x11\x0d\x15\x85\xd5\x89\x0a\x4a\x8c\x88\xa8\x6d\xb0\x93\x32\xa2\x75\xbe\x77\x31\x89\xe8\x5d\xe7\xd9\x1a\xf0\xbd\x9c\x6b\xd7\x49\xee\xe5\xec\x66\xb2\x65\x7d\x58\xc8\x3a\x0d\xc7\x36\xdb\xc9\x29\xaf\x51\x70\xd2\xe9\x76\x55\x70\x4c\x83\x76\x44\xd6\xe6\xed\xad\x57\xad\xf7\x2f\x6b\x6f\x8f\x94\xbd\x1d\xf2\xf5\xce\xd0\x35\x1e\x8a\x58\x24\xb5\x37\x21\xd9\xdb\xba\x06\x4f\x66\x95\x4b\x11\xd1\xdd\xc0\x36\xc3\x2c\xc4\x44\xc8\xc1\x85\x34\x99\x4f\x09\xef\x67\x6c\xac\xb6\xdf\x45\xa3\xa3\x4a\x06\x0e\xf1\xe8\x59\x4f\xf3\xe3\x0c\xb3\x2b\xca\x6a\x1d\x0c\x43\x4a\xb4\x4f\x7f\xf8\x50\x01\xdf\xc9\x9d\xd1\x32\xd3\x78\x86\x55\x80\x6a\xbd\xac\x58\xc3\x47\xf3\x2d\xf7\x74\xe2\x1b\xcc\x78\x37\xa7\xda\xdc\xa7\x9e\x66\xc7\x0e\x25\x70\x3b\xe2\x92\x39\x43\x49\x43\x8e\x90\x98\x5c\x49\x4e\x41\xd9\x69\x12\x5f\xd6\x34\xd9\x29\x16\x48\x93\x38\x7c\x38\x8d\x90\x40\x92\x95\x61\xd6\xf5\x6c\xaf\x0f\x05\x22\x40\xf6\x64\x66\x0e\x1c\xdf\x9d\x0f\x06\x7a\x50\x27\x41\xf6\x72\x74\x3e\xbe\xc8\xff\xf0\x17\x2b\x68\x79\xda\x35\x36\x7c\xca\x79\x99\x1b\x45\x1a\xf4\x54\x34\x15\x10\x30\x18\xc8\x9e\xed\xf9\xfa\x62\x6d\x1f\xfe\x48\x78\xd7\x09\xbd\x44\xc9\x72\xe9\x3c\x4f\x12\x67\xa3\x6a\xe7\x39\xe4\x3c\x5d\xc9\x67\xb3\x10\x95\xea\x90\x07\xf3\xca\xc1\xbc\x72\x30\xaf\x7c\x69\xe6\x95\xed\x70\xfc\x86\xda\x12\x35\x5a\x61\x6a\xba\x69\x28\x12\xac\x66\x50\x09\x8b\x39\x33\xff\x1b\xd6\xfc\xc7\xfc\xef\x5c\x52\x4c\xa5\xb6\xbe\x4f\x02\x67\x8a\x08\xba\x56\x35\x8f\x9d\xa3\x4b\x86\xd1\xcd\x91\xea\xd3\x39\x29\xc1\xcb\x95\x4f\x90\xc0\xba\x55\x1c\x61\x22\x62\x11\x63\x6e\x5b\x99\x79\xcb\x97\x8a\x47\xca\x57\x76\x63\x4a\xa4\x6a\xee\x20\x80\x2e\x5f\x9c\x7d\xd5\x1f\x8d\x61\xd6\x9b\xfc\x65\x9b\xfb\xa3\xf1\xaa\xa4\x0a\xb7\x54\xda\x30\xcc\x59\x6f\xeb\x35\xdc\x79\x83\x65\x95\x7d\xfe\x74\x55\x27\x57\xea\xa4\xad\x92\x71\xa4\x09\x81\xe5\x05\x3c\xce\xac\x74\x26\xa0\xc9\x61\x34\xc1\x8e\x5e\x09\x13\x9b\x3c\x34\x48\x7a\x70\xf2\x70\x7a\xc6\xc3\x0a\x8c\x6e\x4a\x68\xb4\xbe\x5d\x11\xe0\xe8\x91\xd4\x54\xec\x3b\x4f\x58\x96\x38\x0a\x10\xce\x6a\xb5\x2d\x99\x5c\x6b\x20\xab\x75\x28\x98\xed\xaa\x75\x6c\x8d\x5a\x2c\xa7\xd7\x55\x2b\xa6\x77\xed\x4a\xf1\x66\x49\xe3\xf7\x35\x61\xfc\xac\x6f\xb6\xf8\x59\xd7\x54\xf1\xbf\xce\xf1\xbc\xef\xb9\x4c\xb7\xd9\x33\x14\x9a\x89\x76\xec\x51\x41\xb7\x22\x8f\x21\x12\xd1\xee\x61\x91\x06\x7c\xcf\x10\x67\x27\xd9\xb1\x4b\x0d\xde\x05\x75\xd7\x7d\xe9\x4e\xb7\xd9\x3f\xf4\x5d\x77\xa7\x3b\x05\xdd\x8e\x3c\xa5\x58\xf5\xc5\x9e\x6e\xb4\x93\xe8\x6b\x9b\xee\x15\xc3\x7c\xa2\x33\xbe\x6d\x57\x25\xaa\xd1\x74\xc5\x56\x53\xae\x68\x6d\x0a\xab\x5c\x27\x47\xe5\x13\xb4\x55\xb5\x4a\x69\xe8\x31\x80\x24\xc0\x75\xd9\x57\xd4\xa1\xeb\x28\x17\x75\x41\x6f\xe6\x33\xf3\x79\x3f\x4d\xaf\x42\x00\xf0\x0c\xce\x5c\xb0\x2a\xe6\xb2\x17\x6d\xa8\x56\xbe\x17\xbd\x9d\xe8\xb3\x76\x7b\x49\x5f\x33\xdc\xdb\x71\xc7\x34\xda\xc9\xe9\xae\xe1\x46\x66\xaa\x5d\xd9\x91\x02\xef\x80\xc0\x5b\xcc\x1a\xc2\xa3\xd6\x61\x50\xb7\xda\x49\x14\xb6\x4c\x38\xbe\x9e\x74\x09\xef\xcf\xc1\x1d\xe2\xfb\xbf\x08\xf3\xda\x21\xbe\x7f\xbf\xcc\x6b\x87\xf8\xfe\x6d\xc6\xf7\x33\x4a\xc5\x70\xce\x6a\x5d\x40\x1a\xf2\xf1\xa6\x4d\x76\x92\xcd\xaf\x91\x94\x94\x8a\x9f\x59\x77\xef\x0f\x03\xdf\x2e\x3a\x7a\x55\x7c\xdd\xcb\x82\xaf\xfd\xea\xbd\x76\x2b\xf7\xaa\xa8\x4b\xe2\x28\x9c\x1c\xae\xac\xbe\x30\x99\x7a\xb8\xb2\xda\x2f\x99\xfa\xe5\x5c\x59\x55\x9d\x8d\xcd\xa7\x6f\xf0\x03\x77\x49\xf5\x96\x43\x1e\xfd\xc3\x64\x1e\x61\xee\x3a\xef\x18\xe6\x98\x88\xec\xd2\x20\x3b\x80\x7b\xaf\xc9\x2d\x66\xe2\xc2\x79\xfb\xd3\xc7\x63\xc7\x77\x1c\x65\xc2\xd5\xd0\x47\x95\x8e\x5e\xdd\xa3\xb0\x63\x37\xff\x86\x25\x6c\xf2\x70\xac\x38\x61\x4c\xae\x8f\x9d\x7f\x03\x19\xbc\xea\x09\xfe\x9b\xf3\x6f\x35\x5f\x79\xc7\xf0\x55\x7c\xdf\xf1\x33\x33\x05\x8c\xa3\xe3\xcb\x87\xe2\x17\x74\x2f\x0d\x9f\xf8\x30\xbf\xea\xfe\x09\xae\x80\x6b\x3e\xa1\x7b\x69\xf8\xc4\x7b\x7c\x8d\xbb\x7e\x21\xc5\x91\x98\xe0\x63\x26\x1b\x16\x3f\xa4\xfa\x52\xdf\x59\xd9\xee\xaa\x57\x75\xad\x32\x49\x17\xa3\xea\xa5\x11\xe5\x9a\xed\x9f\x68\x17\xf8\x9d\x99\x71\x77\x01\x6f\xdb\xb4\x8a\x79\x8e\x11\x0b\x27\xb2\xc7\x83\x94\x3f\x48\xf9\x83\x94\x3f\x48\xf9\x9e\x52\xde\x9a\xeb\x35\x23\x69\x30\xd7\xeb\x97\x6b\x32\xa4\x6b\x9d\xe0\x19\x90\xb3\x91\x7a\x01\x0a\xc8\xe8\x7c\x5c\xc8\x8d\xae\xfb\xf0\x32\x86\xe5\x32\xe0\xa1\x28\x72\xcb\xd5\x63\x5b\x84\x08\xc7\x09\x0e\x85\x32\x90\xde\xe0\x87\xa1\x9a\x2e\x6f\x2b\xdc\xcd\x93\xf9\x75\x7c\x55\x63\x6c\xcf\xaf\x9e\x65\x8c\x2e\x09\x1c\xfb\xbc\xcc\xda\x06\x03\x87\xab\x3f\xca\x2f\x52\x02\xb9\xa8\x73\xf1\x31\x5b\x7b\xe5\xd7\xbc\xc4\x83\xc1\x9a\xcf\x15\xb6\x6a\x10\x04\xe9\xf3\x13\xfb\x77\xc6\x14\x2e\xec\xd8\xfc\xf4\x83\xe0\xd1\x15\x31\x33\x7c\xff\x1d\x3f\xfc\x43\x61\xbb\x48\x4e\xe5\xab\x1b\xc8\xaa\x8e\xa7\x67\xb5\x8e\xa7\x67\x79\xc7\xd3\xb3\xb1\x3f\x92\x84\xb3\xb9\xd3\x2a\x0d\x58\xa9\x9c\x26\x83\x54\x0f\x8a\xc3\xd8\xaa\xa6\x44\x32\x9e\x42\x6a\x61\x9f\x07\xca\xcc\x63\x88\x04\xb8\x23\x36\x06\x30\x0e\x58\xc9\xcb\x89\xa5\x23\xba\x70\xb9\xb6\x27\xc5\xca\x7a\x04\x7c\xb7\xda\xc5\xe8\x6c\xac\x7b\x51\xb9\x45\xe4\x20\x92\x60\x71\x83\x1f\x7c\x0e\x35\xa6\xe3\x55\x36\x24\x64\xd0\x8c\xa3\xf2\xd8\xb2\x37\x92\xcb\x8e\xce\xc6\x83\x81\x8b\x83\x04\xe4\xfd\xb6\xc8\x5c\xee\xda\x12\x2c\x35\x80\x56\x1e\x25\x52\x55\xd3\x7f\x2f\x62\x81\xa7\xdc\xa7\xd0\x82\xfb\xa9\xf1\x0b\x5f\x50\xb9\x12\x78\xb5\x3a\xaa\x5f\x7a\xb6\xa5\xb0\x3e\xc3\x5b\x4e\x25\xff\x61\x04\x25\x43\x4e\xe7\x2c\xec\xa3\xc5\xe4\xfd\x88\x32\x1f\xe3\x57\xa6\xbf\x0f\xaa\x3b\xee\x5d\xc5\x8c\x0b\x23\x0e\xc1\x11\x59\x2e\xdd\x6a\x9b\x1f\xb1\x40\x5e\x79\x20\xc0\x8a\xde\x14\x37\xca\x4b\xe4\x2a\xbe\xbf\x70\x1c\xdf\xfe\x2d\x25\x21\x19\x0c\x46\xce\xcd\xfc\x12\x33\x82\x85\xe4\x45\x8e\xc0\x8c\x21\x1d\xa0\xe1\x10\x3a\x45\x59\x75\x6a\x07\x3a\xe8\x8e\x3b\xe3\x4c\x43\x4f\x0d\xc8\x99\x6e\xce\x32\x9d\x7b\xa3\xcd\x6b\x70\x5b\x44\xc5\xd3\xb9\x47\xdb\xa5\x9c\x60\x94\x88\xc9\x30\x9c\xe0\xf0\xe6\x10\x86\x7e\x50\x47\x0f\xea\xe8\x17\xad\x8e\x36\x85\xa1\x97\xb5\xc0\xe2\xa5\xcb\xe2\x85\x62\x0f\x2f\x58\x2c\xe2\x10\x25\xfe\x19\xd4\x0f\xfe\x0b\x31\x12\x93\xeb\xf4\xf7\x3b\xc4\xb9\xfa\xbd\xf2\x51\xc5\xaa\x24\x55\x01\xe6\x15\x7b\x5a\x2e\xe5\x53\x5a\x7a\x6a\xed\x1e\xa1\xf9\xad\xfd\x5d\x0b\x1d\x98\x2f\x17\xdb\xdb\xe1\x98\xe6\x77\xfa\x67\x4d\x6b\x33\xce\x62\x6b\x3b\x78\xeb\xfa\xaa\x7f\x56\x5c\x62\x75\xc1\xbb\x8d\x6a\x17\x68\x5e\xab\xbf\xf6\x74\xb1\xf7\x7c\x32\xbf\xba\xaa\x8f\x24\x5d\xe3\xa7\x60\x5b\xed\x99\xa9\x26\x9d\x6c\xc7\x3e\x0d\x7c\xbb\x89\x26\xbe\xee\x9e\x5e\x50\x01\xef\x1b\xe2\xd4\x04\xbb\x62\x2d\xbe\x6e\xcf\x30\xc8\x7b\x24\x64\xe4\xfb\x97\x90\x91\xf7\x48\xc8\xc8\x3b\x24\x64\x94\xcc\x65\x9e\x20\xd6\x2b\xe6\x31\xdf\x68\x97\xa2\x1e\x95\xe2\xd0\x97\xe3\xa8\x36\x3b\x49\x05\x6d\x93\xd5\x76\x89\x83\xb2\x7c\x50\x96\x0f\xca\xf2\xef\x50\x59\x56\xd7\xa8\xd6\xd7\xa8\x54\x0a\x0b\x78\x0c\xcf\x12\x14\x62\xf7\xf4\xf8\xf4\x1a\x3a\x43\x07\x78\x82\xbe\xa1\x77\x98\xbd\x40\x1c\xbb\x9b\xd9\x06\x34\xc7\x79\x42\x9d\x91\xb2\x0d\xfc\xa1\x6d\xab\x7d\xe4\xe1\xb3\x24\x3e\xd4\x31\x3c\x70\xf0\x03\x07\xff\x5d\x72\xf0\xbc\xb9\x23\x65\xe0\x4c\x32\x70\x06\xa9\x36\x80\xf0\xec\x05\xbd\x70\xa0\xe3\x53\xdb\x2d\xf2\x14\xf7\x70\xf9\x66\xbc\x5c\xb6\x7d\x42\x4e\xfe\x2b\xeb\x9e\xb4\x5b\x01\xef\x24\xf7\x5e\x73\x0e\x53\x13\xec\x7a\x10\xfb\x95\x75\x90\x05\xaa\x9e\xf3\xf0\x2e\x16\x07\xaf\xcb\x83\x44\x38\x48\x84\xdf\xbd\x44\xc8\xb9\x41\xb8\xa5\xd0\x03\x90\xaf\xfe\xbe\x59\x0a\xd6\xac\x83\x47\x4a\x81\x35\xf9\x35\xb8\x40\xd6\x91\xfc\x90\x5c\xfa\xc0\xd4\x0e\x4c\xed\xcb\x66\x6a\x4f\xeb\x64\x26\x79\x49\x93\x8f\x99\x50\x79\x72\x1e\xe5\x62\x26\xbb\xf0\x0c\xab\x72\x19\xec\xeb\x59\x36\xbf\xec\xae\xee\xce\x2f\xf7\x4e\xdb\x95\xd3\xeb\xaa\xec\xce\x2f\xdb\x75\x5d\x55\x7d\xfd\x20\x11\x0e\x12\xe1\x20\x11\x0e\x12\x61\xab\xc1\x45\xdf\xf4\xb4\xa9\x9c\xf9\x14\xc6\x01\x19\x3d\x1b\xe7\x0c\x2b\x8a\x3d\xb9\xbc\x12\xb2\xdb\x26\x05\x6e\xaf\x87\xe1\x9c\xdd\x1e\x02\x2a\x0e\x9c\xed\xc0\xd9\x0e\x9c\xad\x03\x67\xab\x24\x2f\xd2\x6b\x9b\xd1\x96\x22\x25\x4d\x58\xa9\xd3\xba\x75\xc6\xce\xdc\x7e\x2b\x9e\xef\xcf\x2e\x9c\x17\x8e\xef\xfc\xa7\x03\x9d\x63\x27\xf5\x09\xc6\xd9\x1f\x7c\x12\x5f\xa9\x5d\x5a\x74\x7b\xcf\x62\x0b\xcc\x0c\x75\x90\x84\x24\xea\x7f\xd1\x98\xb8\xb2\xb7\x15\xb0\x3f\xa0\x03\xc0\x0a\xb6\x26\x54\x80\x44\xcf\x0e\x41\x9a\x0b\x00\xe5\x01\xf1\x38\x0b\x97\xcb\xc5\xbd\x7f\x06\x1f\xfc\xb3\x95\x64\xc4\x2a\x73\xe6\x72\xe9\x84\xf3\xcb\x38\x74\x60\x12\x8c\x28\x5c\xdc\xfb\x2e\xf7\xee\xbf\xa6\xde\x3d\x38\x7d\x06\x1f\x7c\xee\x3d\xac\xec\x62\x18\xc8\x20\x08\xe2\xc1\x20\xd1\xac\x66\x71\xef\x27\xa3\xf3\xb1\x77\x0f\x1f\x7c\xea\x3d\xac\x00\xcc\x50\xe5\xa2\x80\x43\xe7\xbf\xc9\xf1\xf1\xf1\xf1\x8f\xc7\x19\x06\xbd\xfb\x02\xaa\x90\xf7\xa0\xa1\x1c\x00\xd2\x87\xcc\x43\xb3\x59\xf2\x60\xcc\x31\x30\x01\xfd\x52\x3a\x08\x74\xd3\xd7\x3d\x45\x35\xd9\xc9\xd3\x42\xdb\x54\xbb\xbb\x61\x49\xd8\x9d\x9c\x62\x73\x9f\x6a\x7a\x1d\xfb\x13\xa8\xdd\x0d\x4b\x20\x32\xe9\x83\xaf\xc9\x1e\x22\x6c\xd2\x07\x63\x93\x0e\x28\xe3\x37\x5d\x8b\x58\x28\xd8\x9d\xc4\x58\xcb\x1c\x63\x91\xe0\x06\xd7\xbc\x30\x89\x87\x5a\x5f\xa9\x12\x88\x6d\xb6\x93\x53\x5e\x43\x24\xe9\x74\xbb\x12\x8a\x69\xd0\x8e\x48\x7a\x7d\x9d\x6c\x58\x0c\xa4\xd8\x76\x27\x51\xda\x65\xf2\x1b\xcd\x7a\x37\xa7\xbb\x86\x82\xcc\x54\xbb\xd2\x8f\x02\xef\x80\xc0\x1b\x4c\x4e\x63\x3e\x44\x84\x92\x87\x69\x29\x17\xf2\xe3\x33\x63\xc6\xfc\xb9\xed\xb8\x3d\x63\xb8\xd1\x7a\x3a\xa4\xdd\x7e\x56\x4c\xbb\xad\x03\xd6\x9e\x87\x21\xe6\x9c\xb2\xd7\x2f\x1d\xb0\xa5\x7c\xda\x29\x7a\x12\x7c\x8d\xc2\x75\x1e\xa9\x1b\xe1\xe6\x8d\xea\x35\x20\x4d\x29\x44\xcb\x76\x00\x91\x9f\x33\x74\xde\xcf\x13\xcc\x1d\x75\x4c\x92\xa7\x81\x93\x40\xa4\x41\x73\xf2\xf0\xe9\x09\x16\x4f\x5d\x70\x54\x09\x09\x84\x8e\xfe\x70\x56\xb2\x24\x0d\x25\x25\x83\x01\x59\x1d\x15\xe3\x7f\x75\x7b\x9c\xb9\xe4\xe5\xc0\x6d\x51\x13\xe2\x5d\xc5\x24\x6a\xca\xe4\x2f\x89\xd0\x57\x71\x7b\xcd\x46\x0f\xd2\xc3\x1a\x21\x18\x22\x3c\x96\xdf\x19\x0a\xda\x23\x67\x46\xb1\xdd\xbe\x31\x80\x74\xf0\x1f\x69\x77\x36\x90\x6b\xd4\xce\x0c\x2a\x99\x28\xdb\xe5\x71\x6d\x52\xca\x5d\x47\x64\xdc\x3d\x11\xb5\x04\xee\x80\xb8\x39\x09\xbb\x2b\xb9\x0a\x7a\xef\x90\xa6\xa6\xd8\x19\x6b\x73\x12\x76\x43\x1b\x12\xbd\x75\x40\xdb\x6c\x1f\x51\xa8\xa6\xdb\x07\x8b\x48\x74\x90\xe2\x77\x18\x97\x59\xe1\xc1\x38\x7b\x30\xce\x1e\x8c\xb3\x07\xe3\x6c\x0f\x47\x04\x11\x87\x37\x8d\xc9\xe9\xf5\xcb\xc7\xb9\x22\xe8\x3e\x3c\xc5\xae\x3e\xd2\xfe\xbe\x08\x92\xdb\x30\x1e\x52\xd6\x57\x64\xe4\x1a\xee\x99\xd0\xc8\x4f\xb9\x63\xb7\x59\x93\x56\xc1\x31\x27\xfd\x8d\x06\xba\xcd\x4e\xa2\xb1\x75\xb2\xbf\x96\x62\x70\x0e\x42\xf2\x20\x24\x0f\x42\xf2\x4b\x13\x92\x3d\x5d\x90\x8f\x8d\xc0\xe3\xaf\xa6\x33\xf1\xe0\x32\x70\x31\x1a\x1b\x21\xf8\xdc\x45\xc0\x93\x7c\xe3\xfb\x87\x0d\x9d\x91\x75\xe3\xa7\x0b\x47\x99\xcf\x66\x98\xa9\x7c\x57\x3d\x25\x62\xda\x6e\x27\x39\xf9\x1a\x81\x98\x4d\xb8\xab\x3c\xb4\x2d\xda\x25\x04\x8b\x3f\x57\x61\x20\x4c\x42\x1a\x35\x2a\x5f\xe6\x6d\x83\xf6\x95\x57\xb1\x0c\xa4\x37\x67\xf1\xff\x9f\xc6\xf2\x75\xaf\xca\x3d\x73\x96\x0c\xaf\x28\xeb\x61\x53\xb3\x2d\xf6\x8d\x8c\x58\xf2\x83\x9c\x67\x57\x1a\x52\xe0\xad\x04\x54\x97\x77\xb1\x55\xa1\x32\x8d\xf6\x0c\x81\x76\xaa\x1d\xbb\xd4\xe0\xad\x08\xac\x2d\x5f\xb9\x86\x8d\xed\x5d\x09\xcb\xee\x05\x2c\xdb\xcb\x57\xde\xc5\x49\x32\x54\x22\x9d\xd6\x46\x96\x33\x2c\x4f\x02\x55\x9c\xe5\x9b\xed\x24\xfa\xda\xa6\x2d\x26\x74\xde\xb7\xd2\x96\x6d\xb5\x93\x13\x5e\x43\x2f\x76\xb2\x5d\xa9\x46\xc3\xb7\x22\xf1\xbe\x9e\xc9\x0b\x36\xaf\xb1\x58\xdf\xef\x1f\x7f\xbf\xef\xc1\xdc\xef\xd7\x70\xf6\x98\xc4\x22\x46\x49\xfc\x9b\xc4\x03\x9a\xcd\x86\xb7\x98\xf1\xa6\x43\x73\x12\x0f\x73\x20\xf9\xb6\xc3\x2b\x24\x8f\x10\x0f\x85\x3c\xbc\x21\x25\x57\xf1\xf5\x29\x26\xb7\x31\xa3\x44\xd5\x07\x2e\x61\xd9\xba\x97\x31\x88\x8e\x1e\xad\x7e\x40\x62\x1f\x78\xcf\xdf\xbd\x53\xe7\x9b\xc2\x13\x75\xbe\x91\xaa\x71\xe1\xa1\x99\x8c\x3e\x5f\xd1\x60\x21\x81\x7c\xe7\xf9\x6c\x76\xfc\x0f\x8b\x89\x6c\x9e\x7e\xb1\x32\x90\x32\xf0\xe4\x94\x0f\x5a\x1f\x54\x57\xc0\x71\x48\x89\x40\x31\xc1\x6c\x18\xe1\xcb\xf9\xf5\x10\x45\x68\x26\x70\xbd\x46\x82\x39\x4d\x6e\x31\x3b\xb5\x7f\xf0\xd3\x30\x41\x9c\xc7\x61\x63\x2f\x4f\x96\xd3\xc9\xe0\xa5\x71\xf4\x39\x1c\x55\x1c\x23\xf3\x29\x7b\x97\xcb\x7c\xf2\xdf\x23\xec\x31\x7c\x1d\x73\x81\x99\xdb\xd4\xb7\x3f\x45\x31\x71\x72\x68\x87\xd8\xe8\x8f\x6d\x4d\x1c\x39\x66\x3e\x43\x21\x76\xa0\x83\x66\xb3\x24\x0e\x91\x1c\x98\x7e\x0d\x56\xab\xf6\x8b\xf2\xca\xd2\x31\x9a\x24\x98\x0d\x93\xf8\x0a\x87\x0f\x61\xd7\x04\xfc\x60\xb1\xc9\xd9\x2a\xfb\x78\x8d\x6f\x01\xd4\x9a\xb4\x2e\x78\xc9\x30\x9d\x61\xe2\x2e\x18\xe6\x58\xbc\x48\x87\xe9\x97\xf7\x9a\x52\xa1\x7f\xe1\x73\xa9\x99\x6b\x7f\x48\xf9\x04\x66\xee\xa9\xb0\x26\x29\xb5\xec\x9e\x63\x31\x18\x98\x3f\x5c\xa1\x74\x6e\x43\x17\xb9\x85\x17\x7d\x11\x5a\x71\xfb\x6a\xf3\x0a\x6b\x69\xbd\x93\x3c\xbc\x33\x1e\x22\x24\x90\xfe\x4f\x2d\x4f\xf8\x4b\x06\x75\xaa\xa8\xfd\x94\x63\x31\x9f\x7d\x01\x93\xae\x5b\x75\xfd\x3c\xf7\x43\xcf\x76\x98\xee\xf8\x3a\x51\xb2\xad\xdb\x03\xc3\xec\xf2\x23\xc9\x91\x79\x2a\x3f\x56\xed\x96\xfd\xe2\x8c\xd5\x1c\x87\x39\x4e\x34\xbc\x4e\xe8\x25\x4a\x9a\x12\xd9\xb7\x0b\xd0\x42\x2e\xfb\x0e\xfc\x36\xbe\x72\x4f\xce\x95\xf3\x8c\x95\x81\xfa\xbb\xcf\xb3\x31\xfd\x55\x0d\xc9\xd8\x95\x8e\x8a\xf6\xdd\x13\xcb\x13\xee\x62\x12\xd1\x3b\x40\x02\xfd\xc7\x11\x4e\x38\x3e\x6e\x80\xd5\x73\x04\x24\xd0\x7f\x28\xd8\x26\xbb\x31\xc7\xc9\x95\x35\x8a\x92\x40\xfe\x5a\x19\xfd\xa0\x7d\xc8\x47\x2c\xa8\x18\x51\xd1\x05\x32\x26\x07\x6b\x25\x55\x02\xf4\xea\xc1\xcd\xba\x9b\x2a\xc2\xd0\x25\x7b\x00\x24\x23\x36\x5e\x2e\x5d\xf9\x4f\x80\x61\xc6\x5a\xe5\xa9\xe2\xa5\x3e\x54\xf8\x05\xcb\x64\x1b\x47\x8d\x70\x82\x05\x3e\x96\x1d\xae\x56\x00\x6c\x94\xf8\x35\x27\x09\x1a\x9c\xa9\x32\xa2\x6d\x26\xb2\x3c\x0d\xf7\xa5\xdd\xab\x04\xf1\xc9\x70\x8a\x39\x47\xd7\xcd\x95\x17\x6a\x08\x36\xaf\x3c\xaa\x4e\x4c\xd1\xd7\x42\x87\x43\x3a\x93\x23\xad\x18\x09\x36\xdc\xd4\x39\x74\xd5\x18\x26\x73\xe6\xd3\xf6\x1d\x03\x59\x46\x78\xcb\xe5\x62\x05\x51\xc0\x3c\x35\xf6\x1f\xf5\xd0\x5f\xea\x77\x1c\xd2\x00\x2d\x97\xa3\x31\xe4\x01\x35\xfa\x49\x4c\xc9\x0f\x4a\x2d\x8e\x31\x87\x71\xe0\xe6\x34\x54\xe0\x22\x70\xc4\x07\x03\x1b\xf5\x71\x14\xd7\xb4\xf1\xae\x28\x7b\x85\xc2\x49\xce\xed\x4c\x80\x45\xaa\xfd\x08\xe8\xe4\x07\x22\x57\xc2\x18\xd4\xfc\xd2\x6a\x49\x76\xbc\xd2\xf6\x58\x43\x25\xe5\xe5\xcc\x91\x06\x5b\xb5\x5b\x67\x8b\xa4\xa1\x52\xde\xd7\x13\x84\x7c\xc7\x4f\x6f\x6e\x6b\x1e\xa2\x30\xa9\x79\xaa\x3c\x12\x6b\x9e\xcf\x68\x12\x87\x0f\x35\x2f\x18\x95\xeb\x5f\x79\x1c\x13\x81\x89\x76\x19\xae\xbc\x23\x5a\x27\xac\xd0\x1a\x64\x10\x41\x0a\x39\x8c\x73\x6c\x35\xb1\x36\xf6\x24\x50\xfa\x8f\x54\xc4\xdf\x2b\x9d\x95\xa9\xdd\xe5\x66\x48\x97\x78\x00\x70\x1e\x2c\x6e\x6e\xfd\x94\x68\x20\x0a\x93\x4c\x64\x40\x35\x3f\x9f\xa5\xbf\xf5\xbc\x7c\x94\x3e\x90\xf3\xf1\x69\xfa\x33\x9d\x87\xcf\xd3\x67\x7a\xfc\x7e\x9c\xc9\xa1\x24\x65\x53\x72\x10\x95\xab\xeb\xbc\x5f\xa5\x62\x58\x0a\x0f\x50\xdf\xdf\x9c\x08\x75\x29\xa1\x21\x78\x09\x02\xce\x47\x78\xac\x9e\x00\x00\x1d\x85\xeb\x20\x08\xf0\x72\xe9\x98\x05\x91\xbf\x40\xb5\x2c\x83\x62\x82\x18\x1c\x09\x2f\x4c\x30\x62\xb5\x8e\x93\xc4\x0b\x19\x46\x02\x6b\xff\x49\xa8\xe2\xcf\xa7\xb1\x68\x80\x95\x07\xf5\x98\x1b\x67\x4b\x7b\xb7\xa6\x54\x8d\xc7\x31\x88\xa4\x9e\x9f\xce\x0b\x9a\x6d\x92\xdf\x13\xf3\x0e\x7b\x22\xfb\x31\x94\x7b\x39\x1e\x86\x28\x49\x2e\x51\x78\xd3\x8b\x73\xaa\xa6\xa7\x0c\x47\x31\xc3\xa1\x18\x4e\x10\x89\x92\x4f\xa2\xf9\x94\xc7\x7c\x89\xaf\x28\xb3\xcf\xeb\x0f\x7b\x18\x2c\xf2\x5c\x54\xd5\x21\xc9\x3f\x00\xd9\x09\xce\x53\xdd\x0c\x06\xa5\x07\x5e\x14\x2b\xd3\xd6\x7b\x33\xdf\xd7\x19\x42\x97\x4b\x57\x0d\x18\xb3\xf7\x18\x45\x31\xc1\x9c\xbb\x20\x77\xde\xd7\x98\x71\x8d\x56\xe2\xe9\xbb\x5c\x37\x27\xa6\xb1\x87\xa2\x5b\x44\x42\x9c\x6b\xbf\x02\xa0\x78\x06\xec\x22\x07\x2b\x0b\xcb\x31\xaf\xda\x4b\xf4\xc2\x5d\x52\x2a\x24\x9b\x98\x9d\xa6\x40\xe6\x8d\x5e\xed\xb9\xe6\x20\x9f\x6c\x3d\xd3\x51\xa0\x2b\x79\x48\x7e\xd4\x6a\x9a\xfe\x95\x4c\xbb\x56\x67\xce\x6c\x42\xc0\x55\x8c\x45\x72\x13\xf5\xc1\x0f\x9a\x41\xbe\x45\x53\x0c\x16\x45\x0b\x0a\x86\xb5\x50\xe6\xf2\x30\x65\xad\xce\xd7\x75\x60\x47\x99\x21\x20\x3d\x31\xd5\xc1\x29\x37\x9c\xc7\x2e\xf4\xfa\x05\x36\x20\xb5\xcb\xdb\xd7\x24\x06\xd9\xb6\xd6\x1f\x15\xd6\x7f\xd3\x7d\xab\xd6\xd8\x4e\x09\x03\x97\x15\xb7\xad\xd4\x8a\x14\x50\x7e\x59\xf3\x46\x1a\x75\xb1\x66\x71\x93\x53\x52\xf4\xef\xe2\x16\xec\xa2\x6f\xc4\xb7\x0f\xc3\x90\x46\x78\x1a\x33\x46\xbb\xa6\x22\x91\x2c\xa0\x56\x7a\x2b\x93\x3a\xc1\x44\xf8\xa5\x7e\x41\x2a\x53\x91\x10\x2c\xbe\x9c\x0b\xfc\x7d\x4c\xa2\x98\x5c\x73\x7f\xa4\x4c\x4b\xce\xf8\xd1\xd2\xa7\xb1\x3c\xcf\xa3\xec\x2a\x34\x8e\xc2\xe1\x8c\xd1\xdb\x38\x2a\x5b\x11\x34\x81\xda\x77\xfc\x94\xa2\xb9\x98\x3c\x53\xf3\xde\x8a\xf1\x30\x37\x37\xd4\x34\x37\x47\x8d\xef\x2e\x16\x13\x5d\x25\x9d\x15\xce\x76\xfa\xbe\x58\xd1\x2d\x81\x97\xf3\x38\x89\x7e\x66\x49\x9d\xb9\x41\xaa\x29\x97\x88\xe3\x9f\x59\xb2\x82\x72\xa5\x6a\xf4\x1e\x05\x24\x15\x12\xbd\x60\x00\x12\xfd\xc8\xf6\xeb\x82\x82\x03\x9f\x82\x9c\xd1\xd9\x7c\xe6\x00\x4f\x2d\x3e\x81\x23\x93\xa4\x48\x6e\x63\x85\x24\x0c\x3c\x31\xc1\xa4\x4e\x4f\x59\x48\x6c\x52\x16\xff\xa6\x88\xeb\x83\x4a\x7c\x84\x75\x86\x22\x58\x78\xf5\x82\x46\xd8\x8f\xb0\xec\xf1\xe7\xf7\xaf\x5f\x58\x1a\x54\x61\xde\x11\x06\xd0\x2e\x90\x2f\xd4\x99\x11\x86\x09\xe5\x35\x96\xd5\xd2\xa0\x3d\x86\xa7\x54\x60\x07\xc8\x3d\xa9\x8e\xee\x75\xd6\x3c\xd5\x57\xea\xd4\xa5\x7f\xba\xca\xa4\x97\x6e\x18\x64\x37\x8c\xb5\xcd\x6a\x01\x92\x8e\x2a\x2b\x28\x0b\x20\xd3\x47\x0b\x5a\x20\x59\x54\x36\x8b\xb7\x91\xac\x2e\xf7\x3a\x67\x89\x46\x4a\x6d\xbd\xd8\xac\xa9\xbe\xab\x2f\x3c\xd2\xa7\x4a\xf9\x22\x26\xd7\xa7\x77\x71\x12\x85\x88\x55\x8a\xc2\x3f\xfe\x40\xd9\x40\xd5\xac\x74\xbc\x33\x05\x5d\x79\x01\xa9\x60\xb1\xaa\xb3\xda\xea\xb9\xfe\x40\x59\xc3\x02\xaf\x33\x2f\xa4\x5e\x41\x5a\x6d\x57\x1f\x55\x22\xf4\xc2\x4c\x53\xd5\x68\xc6\x92\x99\x45\xf3\x10\xe7\x8f\x92\x12\x17\xe5\x80\x27\x3c\x22\xe3\x0b\x31\x22\xe3\xa0\x8e\x38\x47\x64\x0c\x7c\x61\x1d\x92\xa0\x58\x01\xb8\x58\x01\x1f\x5b\x73\xf0\x23\x69\xc0\x14\x9c\x6c\x58\x73\xfd\xf6\xf4\x2a\x4e\x84\x96\xcf\x75\x07\xbc\x12\x50\xf5\x34\x59\x02\xa8\x39\x56\x96\x20\x2a\xe7\xcb\xd2\xfb\xd2\xd9\xb6\xf4\xb6\x7c\xc8\x2d\xbd\x26\x92\xa3\xb4\xbc\x3f\x35\xf2\x72\x1d\x9c\x2d\xc6\xd6\xd6\x5f\x87\xae\x88\xbd\x30\x29\x6f\xad\x02\x9c\xaa\x3d\xbc\xe6\x00\x0d\x13\x38\x87\x21\x8c\xe0\xd5\x63\xf7\xdb\xac\x7e\xbf\x4d\xe5\x7e\xbb\xca\xf6\x5b\x6e\x9f\xcd\x2c\xfb\xbf\x6a\x3b\xb1\xa7\x15\x4e\x67\x92\x70\xed\x41\xbb\xa8\xca\x4c\x81\x39\xb3\x17\xf7\xf7\x14\xa8\x83\xbd\x7b\x06\x79\xe1\xa1\x39\xcf\xbb\x67\x90\x15\x9e\xab\x63\xbd\x7b\x06\x51\xe1\xe9\xcd\xad\x7c\x46\x0b\xcf\x74\x91\xa7\x87\xb7\x52\x42\xb8\x67\x30\x2e\xbc\x9c\x93\xb5\xaf\xcd\xc4\x5e\x1b\x6f\x47\x09\x30\x2f\x00\x48\x02\xb1\xb3\x77\xcf\x60\x52\xd7\x5a\xbe\x08\x8b\xad\xb4\xc1\xc1\x3d\x83\x51\xfe\xf9\xea\xe8\x2a\xe5\x61\x59\x85\xd7\x3a\xd7\xad\xd9\x08\x8f\xe5\x51\x5d\xae\xca\xa4\xc0\x24\x66\x79\x26\x31\xe9\xc2\x24\x68\x39\x3f\x75\x8e\x94\x29\x13\xa7\x52\xa1\x43\xca\x45\xb3\x81\xde\xcb\x40\xaa\x74\xe1\x7a\x90\x06\x66\x53\x06\xab\x61\x37\x65\x90\x2a\x3b\x29\x43\x18\x96\xd4\xb8\xb9\x72\x7a\x6d\x6c\x29\x3d\x6e\xa5\x74\x89\x35\x00\x93\x60\x91\x5b\xe4\x1c\x95\x03\xa8\xb0\x50\x22\x72\x00\x0b\xbb\x82\xe5\xdf\xa4\x9b\x02\xe5\x9f\x5a\x32\xa7\xf9\x87\xd9\x9e\xc8\xed\x15\xb0\x3a\x8a\x53\xea\xc9\xe6\x5f\x47\x3d\x89\xa1\x9e\xc7\x31\x92\xb8\x9e\x91\x24\x05\x72\x8c\xf3\xe4\x98\x34\x91\xa3\xde\x5d\xc3\x9e\xd7\x59\xf9\x23\x25\x17\x94\xe1\xa1\x25\xcf\xa7\xbe\xb5\x6f\xb8\xc8\x12\x75\x17\x59\x8d\xe7\x8b\xe6\x49\x4f\x18\xbe\x6a\x08\x54\x36\xaf\x4e\x2d\xc8\xa7\x99\x69\x3a\xa0\x86\x03\x6f\xc3\xe5\xd3\x0f\x88\x8b\xef\x29\x4d\xab\xcc\xa6\x4d\xac\x97\x4a\xe0\x3c\x77\x82\x20\x20\x9e\x40\xec\x1a\x0b\x4f\xa0\x6b\xa9\x6b\x5d\xd8\x07\xe5\x8f\x18\xe5\x9a\x8b\x92\xb6\xcd\x85\xeb\x20\x47\xbb\x7f\xe3\x00\x7b\x33\xc4\x30\x11\xaf\x12\x2c\x75\xba\x6f\xf1\x60\xe0\x3c\x77\xa4\x32\x66\x3f\xf0\x2d\xa8\x40\x1d\x65\x41\x19\xf6\xeb\xe0\x88\x0d\x06\x04\xdf\x65\x17\xb1\x2e\x56\xd6\x04\x6f\x8a\x1e\x2e\xf1\xdf\xb4\x8d\x0c\xac\x8e\x22\x1a\x2a\xed\xd1\xbb\xa4\xd1\x83\x87\xa2\xe8\xd5\x2d\x26\xe2\x8d\x54\xf5\x89\x72\xc4\x48\x62\xc9\x10\x09\x68\xbf\xfe\x32\xa3\x28\xf6\x28\x4f\x21\xb7\xb8\xb1\xd3\x56\x9d\x56\xee\xf5\x6e\xce\x19\xb5\x34\x29\xbf\x5b\x53\x58\x38\xcf\x74\x31\xb9\x6d\xab\x0a\xae\xf8\x23\x26\xb7\xc0\x75\x5e\xfc\xf4\xf6\xc3\xcf\x6f\x7e\xf9\xf9\xf5\x2f\x2f\x5f\x7f\x78\xfe\xfd\x9b\x57\xbf\xbc\x7f\xf5\xfc\xcd\xc7\xd7\x3f\xbe\x92\x27\xad\xd1\xd8\x1e\x86\x46\x4e\xaa\x4e\x2a\x36\x3f\x6e\xca\xd0\x95\x32\x61\x87\xe1\x19\xe5\xb1\xa0\xec\xe1\x34\x3d\x53\x61\xe8\x9c\xa6\x56\x09\x07\x40\x7d\x24\x2e\xc0\x4a\x82\xcd\xc1\x58\xc9\xcd\xfd\x45\x48\x15\xc7\x6e\xe8\x59\xe2\x35\x97\x14\x6b\x94\x0d\x44\x5f\xe2\x64\xfd\x28\x46\x9e\xef\x44\x3e\xc8\x7f\xd2\x30\xf5\x3c\x88\x7e\x94\x03\x5a\xad\xc6\xa0\xfe\x12\x2b\x3d\x70\xd8\x13\xbf\xf6\x2e\xb1\xc7\xcd\x74\x58\x76\xa4\xa9\xaf\xb8\xa6\xc9\x35\x92\x2e\xd7\x44\xf7\x0c\x40\x6a\x54\x90\x64\x94\x3f\x16\xa5\xbd\xf2\xba\x61\xa6\xbb\x3e\x03\x1b\x91\xf1\x51\x6e\xe8\xea\xb4\x75\x51\xb2\x74\xe5\x47\xa0\x1e\x00\x48\x60\x75\x78\x0c\x00\x3f\x6b\xb9\x6e\xc2\x0d\xad\x57\xfa\xff\x9e\xea\x36\xb9\xf7\x65\x71\xdd\x5e\x9c\x60\x14\x0d\x2f\x19\xbd\xe3\x78\x9d\xa1\xee\xf1\x42\x20\x7b\x60\x04\x41\xf1\xcb\xf5\xde\x69\x6a\x33\x74\x9e\x8b\x3d\x18\x75\xb6\x48\x48\x26\xa3\xae\x68\x1b\x6c\xbc\x45\x6b\x4b\xbf\x58\x3c\x2a\xf7\x72\x29\x1c\xaf\x2c\xd7\x4e\x8a\xc1\x78\x83\xc1\xda\x50\xbc\xba\xf0\xae\x86\x80\xbf\x8e\x71\x6b\x34\x8b\x5b\x23\x9b\xc7\xad\x91\x6a\xdc\x1a\x69\x8b\x5b\x23\x59\xdc\x1a\xe9\x18\xb7\x46\xfa\xc7\xad\x11\x50\x9c\x69\x09\x5b\xdd\xa3\xd6\xf8\x8c\x61\x14\x7d\xbe\x80\x35\xba\x83\x51\xdd\xed\x37\xb4\x3c\x28\x89\xef\x74\x68\xf9\x12\x19\xae\xa3\xf7\xad\xe7\x00\xc8\x82\x72\xb2\x4d\x88\x72\x73\x60\xdf\x3d\xbb\x60\xc3\x67\xfe\x19\x80\x34\x78\xf6\x2d\xfd\x33\xfb\x96\x7e\xfd\x35\x40\x23\x3a\x7c\x36\xce\xdd\x89\xd0\x74\x66\x64\x30\x10\x85\x6f\x45\xa1\x03\x2e\x46\xe9\x27\x53\x66\x0e\x52\x1d\x01\x01\x7f\x24\x72\xbf\x56\x30\x0e\x2a\x5e\x9a\xa9\xd6\x25\x49\x24\x41\xda\xa2\xe7\x93\xb4\x32\xa0\x73\xca\x28\x15\x43\x7d\x7d\xee\x48\x75\x41\xff\x05\x72\x10\xd9\x4b\x1c\xc5\xa2\xf0\xea\x8a\x26\xea\x5e\xc0\x39\x8d\x49\x84\xef\x1d\xb0\xd2\x52\xd5\x4a\x5f\x2d\xc6\xf4\x24\x4e\xf3\xa6\xde\x34\x0a\xb5\xf1\x2e\x25\xf5\x3c\xcd\x35\x53\x7a\x69\xd9\xd1\xd7\x80\xd5\x7c\x84\x81\x5c\x82\x26\xe5\x7d\x51\x63\x33\x1d\x95\xd2\x05\x39\x66\x76\x72\x19\x9c\x71\xd5\xd8\x99\x0f\x77\xc6\x23\x31\x2e\xa4\x9e\xb2\x94\x23\xaa\xf4\x41\xf2\x34\xfe\xdd\xf9\x85\x18\x9e\x4b\xfa\x60\xc1\xf9\xb7\xec\xcf\xe2\x5b\xf6\xf5\xd7\x80\x8c\xd8\xf0\x3c\x4f\x1f\xac\x98\x14\xa0\x46\xd3\x75\x79\x31\x1b\xe9\xa8\x68\xbb\x85\x78\x9c\xc3\x1e\x00\x2b\x88\xb5\xa5\x15\xd4\x39\xfd\x8e\x9c\x29\x8d\xb0\x8e\xf6\x72\x52\x53\x72\x6f\x24\xe4\xee\x4b\xd2\x81\xd4\xef\x23\xc5\x3c\x8d\x34\x0c\x82\x00\x0f\x06\x27\x62\x30\xb0\x4f\xa4\x62\x54\xb4\x44\x1b\x9d\xd7\x18\x91\x9c\xff\x71\x56\x39\x36\x52\xc1\x78\x9e\xab\x90\xef\xce\x2f\x88\xc6\x38\x0d\xce\xbf\xa5\x7f\x26\x6a\x47\xb2\x11\x2d\x62\x9c\x6e\x11\xe3\xac\x88\x71\x63\xd7\x6e\x51\x3a\x8d\xf4\xcf\x34\xcd\x3c\x75\xfa\x3b\x48\x6b\xda\x65\x5a\x68\x42\x22\xb5\x34\x97\xdb\x51\x7b\x3a\x03\x1d\xd4\xb8\x9f\x83\x5f\xa9\x6d\x56\x77\x26\xb2\x9a\x26\x35\x37\xf3\x85\x33\xea\xdb\x0f\xef\x9e\xbf\x78\xf5\xe1\x97\x57\x6f\xe5\x39\xf5\xa5\x03\xc0\x62\x24\xa5\x92\x3c\x42\x08\x11\x93\x6b\xa9\xb5\x46\xa1\x97\xda\xf5\xb8\xa7\xc4\x43\xf9\xa1\x91\x1e\xe3\x16\x17\xc4\xca\x89\x07\x40\xc3\x07\xf8\x7b\x3c\xa3\xb9\xcb\xfe\xdc\x31\xd1\xf0\x7c\x4c\xa4\x16\x13\x39\x15\x57\x01\xbf\x2a\x3e\x37\xe8\x55\x72\xcb\x72\xc7\x39\xa7\x58\x67\x83\x2e\x8d\xbd\xf0\xf4\xbf\xbd\xd3\xeb\xa3\xfc\x39\xb2\x68\x1b\x4d\xaf\xfe\x80\xa7\x2f\x4b\x6a\x3d\xda\x70\x45\x71\x58\xad\x49\xe9\x8d\x33\xf1\xed\xfd\x62\x9c\x65\xbd\x19\x12\x13\x07\x3a\x39\xd9\x9e\x40\xe7\x54\x77\x54\x7f\xea\x96\x2c\x17\x36\x8a\xef\xca\x62\x6a\x37\x1e\xb0\x20\x41\x96\x84\x5b\x64\x6a\x83\xf1\x31\xe9\xd6\x9b\xd4\x03\xd2\xa3\x33\x1a\x0c\x62\x17\x43\x04\x09\x58\x29\xd7\x71\x51\xff\x85\x7e\x63\x75\x31\x64\x52\x0f\x57\x2b\x9f\x50\x7a\x33\x9f\x65\xdb\x26\xa2\x53\x89\x28\x4a\x85\x0b\xb4\x17\xf8\x9b\x98\x0b\x0f\x45\x91\xeb\x4c\x10\x1f\x1a\x6a\x90\xaa\x71\x65\x57\x3d\x7f\xf1\x26\xb7\xa5\xa4\x32\xd3\xb7\x77\x14\x26\xdc\x64\xed\xdc\xc4\xb3\xb0\xee\x3c\xca\x71\xa2\xfd\x85\x7b\x19\xb9\xb6\x6c\x6f\xcd\x0d\xa2\xd9\xd6\x7a\xb2\xd6\x96\xf6\xfc\xed\x8b\xbf\xfd\xf4\xfe\x97\x0f\xaf\xde\xbc\x7a\xf1\xf1\xf5\x4f\x6f\x9d\xd4\x9d\xb4\x01\xcd\x90\x05\xd5\x1d\xa2\x2d\xb3\xa9\xc5\xf4\x42\xaa\xcb\x39\x5b\x2b\xc4\x2a\xdb\x7d\x55\xe1\x61\x2e\x4e\xcd\xa7\xf1\x95\xab\x0f\xb8\xd9\x75\xb8\x77\x39\x17\x82\x92\xc1\xe0\x59\x90\xfd\x4a\x73\x6e\x78\x11\x12\x88\x63\xe1\x4d\x18\xbe\xca\x27\x0f\x75\xf5\xc9\x00\x8b\xe7\xd6\x75\xc8\x75\x24\x8c\x03\x49\xea\x89\x2d\xbc\xeb\xea\x7b\x70\x84\xe4\x89\xab\xd0\x71\x80\xa0\x30\x36\xd5\x0a\x38\x58\xad\x20\xed\x34\xad\xda\x21\x9f\x94\x1c\x0e\xaa\x62\xf1\xbb\xb3\xc1\x20\xdb\xb6\x39\xc7\xf8\x8b\xfc\x0f\x5f\x7b\x5e\x42\xa2\x67\xf5\xc1\x52\x85\x2b\x17\xeb\xe4\x5c\xe5\xf0\x61\x81\x13\xf3\x17\x34\x49\xd0\x8c\xe3\xc8\x89\xd5\xf1\xe9\x84\x78\xb9\x87\x83\x01\x49\xed\x02\x2e\xb0\x23\x38\x37\xb9\x79\x30\x58\xac\xd2\x23\xa5\x0b\x06\x83\x35\x48\x5e\xb5\x5b\xb9\xa7\x74\xce\x71\x44\xef\x88\x03\x11\x80\x9d\xa0\xe7\x33\x25\x76\xb7\x68\x15\x5f\x37\x88\xe6\x06\x66\x1c\x4f\x6c\x48\xd7\x01\x57\x5a\x96\xad\xf7\x7e\x34\x5e\x37\x8d\xfe\x8f\xf6\xe9\x74\x86\xc4\xe9\x35\x16\x36\xd7\x86\xfd\xee\x1a\x90\x24\xbe\xcc\x1c\xa1\xf5\xa3\x88\x27\x43\x7c\x5f\x6b\x54\x83\x68\x5b\x1c\x8e\x96\x5d\x67\xf3\xb8\x68\x66\x75\x4d\xfe\xb0\xb5\xae\xb0\xfa\x3b\x45\xe5\x01\x83\x23\xea\x49\x01\x27\x49\xeb\x63\x7a\x8a\x70\xb2\xb9\xa6\x81\x5e\xca\xe5\x28\x77\xfb\x4a\x81\x87\xe6\x62\x22\x55\xb8\x10\x09\x1c\x29\xed\x92\x1f\x9d\x94\xd3\xff\x0c\x06\x15\x1f\x5c\x00\xa9\x47\xaf\xae\xaa\x5f\x25\xca\xc6\xbc\xea\xe4\xc9\x53\x47\x43\x77\x28\xb9\x49\xdd\xc6\x6a\xa9\x28\x89\x2f\x73\xd1\xcc\xca\xd5\xe4\x33\xbb\x49\x97\xc7\xdc\xb0\xda\x2d\x0e\xd0\xf6\xa4\x81\x8e\x63\x72\xcc\xbc\xb4\x3f\x90\xfb\xdb\x9b\x20\xfe\xd3\x1d\x49\x07\x8e\xec\xda\x68\xb9\x07\x74\x5e\xf4\xa2\xe7\xdd\xd7\xa8\x93\xd3\xfa\x34\xbe\x8f\x89\xf2\x3f\x52\x99\x21\x4c\x0e\xfc\x46\x87\x3a\x03\xae\x40\x2f\x13\x1a\xde\xc4\xe4\x3a\x6d\xd3\x72\x53\xd6\xcf\x72\xcd\xf6\xc0\x72\xcd\x7e\x37\x96\x6b\xb6\xdf\x96\x6b\xb6\x83\x96\xeb\x35\x69\xd0\x7e\x94\xbb\xcc\x46\x3d\x65\x11\x62\x0b\x7b\x36\x6f\x2a\x92\x6a\x8f\xee\x00\x9a\x2d\xe9\x2f\xe6\xbc\x39\x47\x96\x85\x4f\x63\xa6\x16\xda\x59\x67\xf1\xd6\xe6\x43\xf0\xb3\xd0\xee\xac\xaa\x80\x2f\xb1\x08\x3f\xe0\x90\x61\xf1\xfa\xa5\x5f\x48\xa8\xaf\x6a\x0e\xac\xc0\x0a\x26\xf4\x9a\xce\x6b\xa3\xbf\x0b\x5f\xd6\x41\xaf\xae\xa3\x3d\xa2\xb4\x03\x33\xa9\xf2\xcf\x9c\xbe\x09\x99\xb2\x1b\x16\xec\x29\x57\x18\x47\x97\x28\xbc\xf1\xf0\x3d\x0e\xa5\x7e\xe7\x56\xbf\xcb\xe4\xe1\x97\x7a\xaa\x7f\xb7\xea\x9a\x9d\x83\x53\x51\x2f\x2f\xd5\xc0\x8c\xba\xc4\xa0\x3c\x16\xeb\x9b\x54\xe8\xa8\x2e\x1c\x75\x45\xde\x1e\x91\x60\x18\xa6\x5a\x4b\xc9\x2b\x4d\x90\xc3\x27\x4a\xae\x56\x20\xa4\x85\x8e\xce\xfa\x91\x46\x38\xe9\x17\x9a\xac\x8d\xa0\x12\x7d\xb1\xde\xdb\xb2\x3b\xb0\x82\x11\x96\x74\x76\x8b\x04\xee\xd5\xdf\x91\xf6\x59\x2e\xc5\x1a\x66\xd6\x7e\xe8\xc4\x02\x4f\xd5\x09\xc4\x01\x47\x05\xfa\x8a\xf9\x5b\x7c\xa7\x8f\xd6\x26\x73\xd3\x7b\x1c\x52\x16\xb9\xdd\xd2\xbb\x99\xd5\x30\x06\x9b\xed\x0b\xbc\x6d\x9d\x9a\xd7\xb3\x81\x55\x87\xca\x1d\x66\xdc\xc6\xd5\x02\xf1\xe1\x14\x91\x87\xa6\x49\x6a\xc7\xdd\x69\x4c\xe2\x69\xfc\x9b\x26\x90\xf5\xc2\x1c\xa6\x07\xc5\xa2\xf7\xb8\x94\x3a\xe6\xc9\x35\x16\x39\x95\x45\x73\x6a\x6e\xb5\xa1\x75\x30\xb2\x1b\xa1\xb2\xf2\xb0\xaa\x5d\x4c\x94\x8b\xd7\x15\xbb\x78\x89\x79\xc8\xe2\x99\xa0\x9a\xe1\x7b\x59\x3a\x8a\x15\x00\x00\xea\x24\xaf\x86\x28\x09\x64\x20\xcb\xbd\x5a\x14\x15\x39\x97\x77\x21\x95\x08\x7c\xd1\xb4\xb2\xc2\x2e\x27\x81\xc5\xdc\x17\xa9\x4e\x6a\x7e\xdf\xb1\x58\x98\xbf\x57\xc0\x57\xd7\x2a\x04\xe2\xad\x09\x8e\xaa\xdb\x80\xc9\x3a\x8b\x97\xcb\xd1\xb8\xc6\x60\x68\xe2\xbe\xec\xcd\xa1\x2f\xa0\xba\x3c\x94\x62\x6d\x55\xa9\x6f\x82\x47\x6c\x3c\x18\xb8\x48\x25\x3b\x18\xb1\x31\x80\x48\x85\x9b\xd0\x1a\x0b\x4b\xe3\x17\x6b\xf4\xbf\xcc\xcc\x7e\xfe\xad\xf8\x73\xd9\xa6\xf0\xad\xf8\xfa\x6b\x3b\x50\x5d\xd8\x25\xb3\x25\x88\xbc\x61\x41\x8c\xfd\xc5\xea\x48\xfc\xef\x67\x17\xc4\x90\x9f\x8b\x00\x3c\x39\x6b\x30\x6f\xea\x25\x46\x23\x31\x56\x05\x59\x5a\x28\x89\xd7\xae\x7d\x8c\xb9\x8b\x61\x5b\x53\x17\x01\xe0\xe7\xc6\xd4\x30\xa0\x66\xe2\x6a\xa3\x72\x04\x8d\x5c\xca\xdc\xfc\xb2\x25\x75\x9c\x15\xd4\x61\xd0\x90\x97\x09\x04\xe5\x4c\xc6\x6b\xac\xcf\x05\xe6\x6b\x3b\x76\x40\x10\x28\x0e\x5b\x4f\x55\x22\x60\xee\x62\x05\x09\x2c\x34\x7e\xab\xe2\xaa\xaa\x95\x76\xf2\x40\xea\x5c\x23\x46\x68\x5c\x7a\x0a\xa0\x50\xb3\x88\x6b\xc8\x6d\xed\xf8\x9d\x52\x7d\xa4\xfc\x1c\x54\x8f\x49\xad\xa0\x64\x98\xcf\x28\x89\x7e\xa0\xec\x3f\xe7\x98\x19\x11\xe3\xd7\xde\x8f\xe6\x84\x5d\x2d\x9b\xc2\xe5\x2a\x99\x69\xa0\xfa\x3b\xc9\x9a\x63\xcc\x03\xea\x66\x3f\xb2\xe2\x94\x2e\xf1\x8c\x11\xe0\x75\x24\x8f\xea\x92\xe2\xd2\xdb\x87\x61\xac\x9f\x3d\x38\xd0\xc9\x99\x0a\x1c\xe8\xbc\x44\x02\x85\x98\x08\x79\x22\x05\x85\xde\xde\xd2\xa8\xd0\x15\xa1\x51\xa1\x1f\xf9\xbe\xd2\x89\x23\x71\xaf\x06\xae\x95\x1f\xa1\x2e\xfc\x0a\xd8\xd9\x2e\x5e\xd4\xc7\xd6\x5c\x6f\xe4\xb0\x86\xeb\xb0\x86\xb7\x8a\x35\xbc\x39\xd6\x94\xc4\xc9\x90\xc6\x31\xab\xd8\x06\x60\xe6\x39\xd8\x39\x7c\xab\x3a\xbd\x80\xbb\x2c\xc5\x44\xdf\xb9\x42\x56\x9a\x61\xa9\xb7\x8e\xd3\x85\x59\x9b\xa0\x68\x34\x8a\x73\xdd\x01\x00\x59\x51\x4d\x6b\xf0\x9c\x2f\x2a\x2f\xbf\x03\x35\x4d\x39\xcd\x6e\x43\x49\x7b\xc2\x99\x7d\x1a\xae\xf8\x9e\x26\x38\x57\xbd\xdd\x3c\xb0\x59\xf5\xed\xef\x8b\xd1\xd8\x37\x7f\xee\x16\x7b\x2a\x0d\x1f\x97\x86\x8f\xb3\xe1\x9b\x3f\x9f\x8c\x4f\xe8\x91\x94\xf2\x50\xea\xa7\x95\x6d\x48\xea\xf3\x51\xe6\x89\xf3\x77\xb0\x09\x79\x42\x45\x69\x6e\x6a\x16\x43\xf5\xa2\x08\xb5\x47\xc9\xf4\xcc\xb8\x75\x09\xc7\x83\x8d\xf7\x60\xe3\x3d\xd8\x78\xbf\x70\x1b\x6f\xe6\xa2\x59\xb0\x92\x2a\x03\xde\x55\x4c\xa2\xef\x1f\x3e\x24\xf3\x6b\xb7\x70\x2e\xca\x17\x8d\xd5\xf6\x3e\xeb\x2d\xaa\x9d\x8e\xbc\x28\xf4\x94\x07\x64\xe9\x9d\xf1\xe6\x04\x9e\x71\xc6\xe2\xf3\x4b\x2e\x98\x7b\x0e\x9a\x93\x5f\x1c\x8b\x66\xcb\x73\xce\xca\xdc\x3c\xbc\x7a\xd3\xb3\x7d\xea\x00\x98\xd9\xaf\x2b\x47\x50\x33\x5c\xcd\x2d\xb7\x6e\xa6\xce\xbb\x8e\x43\xb4\x99\xa1\x1a\xad\x37\x54\xe7\xd0\x18\x60\x88\x6a\xac\xd5\x08\x12\x13\xf7\xd3\x68\xe4\x16\x8f\x30\x65\xd7\xcb\x85\xae\xd9\x75\xfa\x09\x08\xb2\x07\x02\xe2\x77\x58\x76\x69\x3f\x05\xc4\x9e\x15\x25\x2c\x1e\xbe\x7e\xb1\xac\xa3\x41\x2e\xd8\xd7\x0e\x50\x7e\x08\x9b\xdc\xc7\x68\x38\xdb\x11\x34\x12\xa4\x98\xef\x11\x66\x1f\x82\x0b\xc3\xc4\xb2\x6f\x19\xcf\x9a\xf4\x34\x64\xb9\x9c\xce\x49\x20\x72\x57\x3c\xfa\x92\x50\xf1\xae\x17\x6a\x86\x8d\x97\x94\x0a\xe6\xe7\x59\x84\x52\xfe\x56\x76\x5e\x82\x39\x90\x86\xcc\x38\xb9\x48\x85\x59\x12\x0b\xd7\xf1\xb2\x9a\xdf\xd8\x9b\xd1\x99\x6b\x84\x5e\xde\x1f\xdf\xc5\xde\xbf\x68\x4c\x14\xb0\xfd\x8a\x66\xb4\x7d\xbe\xc2\xef\x62\xe5\x94\xa6\xbf\x02\x16\xaa\x64\x93\x76\x5b\xf5\x8b\xd2\xf9\x8a\x61\x3e\x71\xd5\x41\x4c\xd2\x44\xe1\x6d\xf3\xb8\x56\x10\xcb\x1d\xd7\x8c\x45\x6c\x20\xca\x08\xaa\x42\x94\x27\x57\x80\x48\xb5\x8d\x50\xee\xd7\xc6\x44\x5b\x1d\x96\x2b\xac\x0e\xb5\x14\xe3\xf1\xc8\x3b\xde\x2c\x05\x68\xdb\x2d\xaf\xc6\x5a\x7a\xcb\xab\xb4\x61\x2b\x1a\x4d\x5c\x54\x7d\x58\x0c\xf3\x72\x58\xd7\x6c\x51\x45\x12\x54\x71\xfc\xb9\xa6\x56\x58\x83\xe2\xd4\xf4\x28\x5b\xa6\xa6\xdb\x67\x53\x8b\xaa\xc4\xb1\xdd\xa9\x69\x37\xc6\xfe\x57\xf3\xf9\x99\xe9\x41\xb6\xcc\x4c\xb7\x4f\x67\xd6\xa9\xf2\xaa\x52\x78\x4d\x9a\xa6\x86\xac\x1d\x0a\xa4\xf8\x08\x09\x51\x9b\x85\x55\xb1\xf9\x42\x16\xb5\x3d\xb9\x72\xc4\xde\x87\x37\x3f\xff\xf5\x97\xbf\xbf\xfa\x67\x80\xbd\x77\xef\x5f\xff\xf8\xfc\xfd\x3f\xd5\xaf\x34\xbc\x3a\xff\xd0\x99\xc7\x91\x73\x94\x6b\xe3\xbc\x7e\xe9\x18\xaf\xc9\x4a\x26\x3f\x17\xb9\x2c\x58\xac\xa0\x6a\x04\x8b\xf9\x65\xac\xf2\x05\x00\x44\x2e\x53\x5e\x26\x2d\x10\xda\x46\x5d\x0f\x03\x17\xe6\xd1\x3f\xd4\x14\x1d\x67\x65\x5b\x49\xfd\xa5\xad\xe7\xf7\xf3\x04\xf3\x36\x20\xcd\x17\x5e\x2b\x2e\x5f\x06\x25\x73\x49\x20\x29\xe8\x8f\x34\x8a\xaf\x1e\x3a\x81\xe6\x2c\xee\xcd\xdf\x67\x00\xb4\x3b\x61\x1a\x72\x0e\x29\x65\x51\x4c\x1a\x4a\xcf\x1f\xa8\xba\x23\x55\xbf\xa5\x11\xde\x0a\x5d\xab\x8e\xda\x48\x4b\xae\x59\x19\xc8\xbe\xfc\x80\xaf\x75\x4a\xe8\xf5\x7d\x74\x22\x24\xdd\xe1\x03\x09\x3f\xc6\x35\x7b\x29\x23\xcd\x3e\x04\x17\x85\xbd\x09\xad\xf0\x84\xe1\x44\x39\xce\xf2\x49\x3c\xab\x29\x02\x00\x99\x71\x17\x38\x2a\xc6\xac\xef\x1f\x15\xfe\xf0\xd3\xfb\x57\xaf\xff\xfa\xb6\x2f\x4d\xe6\x9b\xe5\x57\xb9\x48\xae\x92\x37\x9a\xd0\xf8\x2a\xb9\x52\x17\x75\x20\x57\xea\xa2\xf5\x4c\xd6\xc2\x98\xbb\x47\xcd\x31\x99\x37\x41\xfc\x47\x44\x1e\x40\x1a\xaa\x93\x75\x46\xa3\x1a\x28\x95\xa8\xd0\x82\xfc\x88\xf9\xe4\x95\x09\xb2\x2b\x7f\xf6\x92\xd2\x04\x23\x52\x66\xee\x12\xc7\x00\xa2\x02\x89\xf2\xf5\x24\x1a\xf3\x90\xde\x62\xf6\x30\x0c\x27\xaa\x3a\xd4\x81\x31\x6e\xcc\x18\xf3\x17\xcf\xdb\xe0\x8f\x85\x8b\xec\x6d\xb1\xb8\x17\x7a\x99\xeb\x19\xea\x14\x0b\x54\xf3\xae\x0f\xcf\xcb\xe5\x04\x3c\x90\xd2\xee\x6b\x8e\xd6\xb9\x4a\x07\xd3\xac\x27\x47\x95\x3b\xec\xed\x87\x8e\x70\x3d\x54\xd2\xaf\x32\x9d\xf4\x25\xe6\x42\xaa\x68\x31\x25\x5b\xe8\xa1\x75\xac\xef\x18\x0e\x71\x84\x55\xb0\xd5\x7a\x6d\x54\xcf\x6a\x9d\xca\x5c\x1e\x93\xde\x1a\xd9\xc0\x9e\x87\xeb\xb0\x5c\x6e\x8d\x92\x84\xde\x65\x8d\x7f\xac\xdf\x99\x5d\xb5\x96\xbe\x4c\x42\x29\xf4\xd1\xf3\xaa\x6a\xa5\x8e\xd2\x16\x4c\x1f\x9a\x5b\xc1\xb6\x7e\x3c\xe8\xc3\x8f\x6e\x6e\x37\xd0\xc1\xca\x6e\x28\x31\xff\x41\x27\x87\xf9\x82\x75\xb0\x0d\xb8\xd4\xdf\xf1\xc3\x56\x34\x2b\xd9\x4f\x0b\xc8\x1b\x1a\xde\xb4\x91\x85\x02\xfc\x21\x41\xd7\xd5\x03\x6b\x09\x48\xed\xb1\xb6\x4f\x76\x23\x5b\xad\xaa\x75\x22\x5b\xa3\x21\x9a\x6a\x23\xeb\x3f\xde\x69\xaf\xa6\x6a\xa9\xc9\xc1\xb6\x1e\x30\x25\x62\xe3\xa9\x6a\x6a\xca\x47\xae\xc1\x7f\xc5\x02\x55\x0c\xc1\x2c\x55\x31\x52\x8d\xc0\x72\xe9\x28\xd7\xd2\x7e\x4a\xa7\xce\xc7\x7d\x50\x0f\x76\x5f\x3d\x78\x1e\x45\x0c\xf3\x56\x03\x50\x97\x93\xfc\x5a\x09\x96\x3f\x36\xd5\xbc\x7f\x31\xc1\xe1\x4d\xf3\xdb\x27\x31\x3f\x7d\x44\xd7\xd7\x38\x32\x08\x68\x1e\x5a\x0f\xe3\x42\xbd\xb5\xa2\x9b\xa5\xa3\xa3\x88\xdf\x82\x02\x5f\x97\xd0\xf1\x77\xb7\x3d\x75\xc2\x20\xb3\x41\x7b\xed\x55\x7d\xfa\xab\x1a\x20\x0a\x7d\xe6\x98\x76\xeb\x3e\xee\x72\xfc\xeb\x74\x44\x6c\xd7\xf4\x9b\x4d\xc5\xfa\x12\xa1\x4e\xd3\x2b\x33\x8c\x17\x6f\x2a\x5b\xc5\xe4\x78\xaa\x0a\x98\xe2\xe7\x16\xca\x71\xfa\xc1\x56\x8e\xf4\x47\x63\xf8\x9e\x26\x38\xf7\x5b\xa7\xe9\x7d\x12\x53\xdd\x9a\xda\x40\xbf\x3b\xe2\x7f\xa4\x79\x78\x5b\xe6\x8f\x2e\x44\xdd\xc0\xef\x7a\x72\xe6\x97\x31\x9f\x25\xe8\xa1\xcb\x07\xff\x1e\x93\x4e\x03\x6f\xd3\xc8\xf4\x66\x99\x8b\xc9\xcf\xef\xdf\x6c\xe9\x7a\xc3\x66\xd9\x3e\xd0\xee\xee\xeb\x55\x9b\x5d\xd8\x3d\x8a\x85\xaf\xbd\xc9\x6b\x6e\xa6\x95\xab\x5a\x4e\xab\xaf\xd5\x8b\x2d\xcf\x56\xfd\xb7\x5f\xe7\xfd\xf2\x48\x2d\xa8\x34\xac\x4f\xac\x4f\xa6\xa1\x78\x7d\x96\xa0\xd7\xfe\x67\xf4\xfe\xb0\xfd\xf7\x62\xfb\xf7\xb0\xec\xdb\x00\xb8\x76\x96\xd2\xe1\x0c\x66\x3a\x7b\xa7\x29\xe5\x53\x59\x13\xbb\xec\xef\x3e\x84\xae\x8b\x05\x1d\xe8\x7c\xf7\xe9\xfc\x33\x88\x39\x1b\x7d\x59\x6e\x59\x6c\x50\x39\x8a\xc8\xc3\x45\x79\xcb\xa5\x51\xa2\x8f\xe8\xab\x18\x6e\xfa\x88\x8e\xda\xe4\xf0\x0e\x88\xdd\x0e\xa2\xf5\x6f\x88\x4f\x3e\xb9\x37\x51\x1f\xde\x92\x96\x46\x3b\xb0\x97\xfd\x38\x01\x7e\xac\x31\xf7\xf7\xd8\x56\xb6\x26\xe0\x0b\x3a\xaf\x71\x24\x2a\x91\x9b\x92\x9b\x2a\xa3\x7c\x3d\x75\x77\x39\x1c\xbe\xba\x17\x98\x11\x94\xe8\xfb\xc4\xc6\x8d\xf2\x57\x24\xf0\x1d\x7a\xd0\xf9\xf3\x9a\x80\xd6\x99\x54\x3b\x5a\x6e\x3b\x5a\x39\xdf\xa9\xf2\x82\xeb\xb1\xa3\x7d\x55\x3e\xa2\xeb\x9f\x6e\x31\x63\x71\x8d\x36\x62\xbd\x56\x9e\x56\xd1\xd6\xc6\xe2\x77\x88\x73\x25\x29\xd6\x59\x94\x5f\xb0\x58\xc4\x21\x4a\xd6\x43\xfd\x17\x62\x64\x4d\x57\x99\x2b\xcf\xa3\x8c\x10\x9d\xd9\x71\x9d\xa2\x57\x12\x5d\x9b\xd9\xd1\xb7\x71\xbc\x9a\x59\xb4\x97\xef\x98\x4a\xab\x92\x0d\xa5\x6a\x15\xd4\x61\x29\x7e\x4d\xce\x14\x7d\xf3\x54\xec\x0a\x5c\xb4\xbc\xcf\x45\xc5\xd5\x43\x3a\x36\x23\xf9\xf7\x0f\xae\xf3\x41\x20\x31\xe7\x4e\x36\x13\x00\x1d\x3d\x20\x15\x46\x67\xe7\x39\x41\xdc\x42\xd6\x64\x84\x39\x4b\xe3\x20\x4c\x04\x84\xed\xcc\x17\x6d\xb3\x39\xba\x64\x18\xdd\x1c\xa9\x56\xa1\x25\xcf\xc6\x66\x29\x01\x17\xda\xdd\x19\x82\x6d\x6c\x66\x29\xba\xd0\x4a\x82\x9f\xdb\xcc\x3a\xe2\xbb\xb3\xbe\xe7\x4f\x6e\x6f\x36\x0f\xa2\x73\xbf\x35\xf3\x5e\xfe\xb9\x4f\xc2\xc2\xdf\xd0\xf0\xe6\x25\x4e\x50\xd5\x2d\xa0\x04\xf8\x3d\x9e\xa0\xdb\xb8\x2a\x91\x2b\x62\xee\xe3\x3a\x2b\xeb\x1a\xde\xd8\x43\x95\xf8\x3c\x9a\x77\x9f\x1d\x6a\x0a\xf1\x1e\xf6\xe7\xc6\xfb\x33\x17\x98\xbd\x8d\x7d\x9a\xeb\xae\x75\x47\xbf\xeb\x66\x2d\x32\x51\xe1\x6d\xfb\xa1\x43\xe8\xc7\x66\x87\xf7\x4e\x01\x23\x6f\xf0\x35\x0a\xab\x9b\xbb\xac\x1f\x3e\xca\x10\xb0\x9d\xab\xa1\xce\x5b\xf5\x0d\xad\xd1\x23\x2b\x33\xda\x82\x75\x42\xe5\xb4\xf9\xbd\x5a\x37\x76\xda\x7e\x10\x5f\xc5\x98\xf1\xd3\x28\x8e\x86\x31\xe1\xb8\x5c\x90\xfd\x2f\x8a\xb1\x9e\x32\x4c\x22\xcc\x86\x19\x7c\x6d\xcb\x7d\xca\xb8\x53\x18\xbf\x8d\xb6\xec\x3f\x73\xd3\x72\x2f\x67\xae\xea\x6b\x54\xe5\x2a\xc3\x57\xe9\x74\x4b\xd0\x7b\x39\xcd\xbb\x38\x49\x86\x26\x13\x71\xdf\x25\x2e\xb4\xdd\xa3\xd9\xdb\xc2\x62\xcd\xd5\x84\xaa\xfe\xc2\xa6\xf2\x87\xaa\xf3\x50\xa7\x3f\xe5\xb3\xf8\xa4\xde\x96\x2c\x70\xec\xf3\x2c\xef\x86\xcd\xf2\xe1\x70\xf5\x47\xf9\x45\x9a\x07\xe2\xa2\x2e\xa1\x80\x49\xdd\xb1\xaa\x8d\x71\x1f\x0c\xd6\x7c\xae\x90\x8a\x23\x08\x82\xf4\xf9\x89\xfd\x3b\x4b\xfa\x71\x61\xc7\xe6\xa7\x1f\x04\x2e\xce\x65\xa2\x40\x59\x8e\x11\x37\xcb\x81\x41\xaf\x8e\x05\x00\xb5\xd9\x34\x5e\x20\x42\xa8\x38\x0e\x51\x92\x1c\xa3\x63\x55\x37\xea\x18\xf1\x63\x94\xe6\x51\x71\xaa\x65\x5a\x0d\x12\xa9\xcd\x49\xc2\xb1\x78\x67\x47\xf8\xd3\x55\x39\xdf\x49\x9a\x0c\xe1\x97\x5f\xd4\x3c\x7e\xf9\x25\x10\x50\x8d\x1b\x8a\x5c\xdf\x3c\x3b\xd2\xe7\x48\xa7\xa1\x4e\xfe\x7b\x7c\x95\xe0\x50\x2c\x97\x27\xe6\xaf\x0c\x87\x26\xa5\xc8\xc9\xf9\x51\x7c\xe5\x56\xde\x7a\x7c\x82\xa6\x05\x90\x9a\x95\x51\xb6\x47\x0b\x74\xa6\x4b\x07\xe9\x49\xbc\x44\x02\x37\xa6\x60\xa9\x7c\xcc\x95\xe0\x70\x34\x2e\x18\x5e\x94\x5d\xe3\xe4\x2c\xab\x28\x64\x07\xb3\x5a\xb9\x69\xe6\x88\x52\x16\x08\x02\x59\x30\x37\x59\x57\x84\xcd\x5b\x3c\x57\x66\x06\x90\xa7\x9e\x23\x12\x54\x07\xc1\x60\x2e\x71\x90\x29\x76\x46\x82\x96\x2c\x7f\xb1\x7e\x41\xc0\x2a\x5b\xa1\x38\xbf\x9e\x27\x62\xb9\x74\x74\xd6\x14\xe7\x24\x08\x98\x2b\x40\x9e\xca\xd3\xd4\x39\xe2\x22\x71\x31\xf0\x45\xd6\x4d\x62\x12\xed\x64\xa9\x0c\x73\x94\xf9\x1e\x5f\x61\x86\x49\x68\xc9\x53\x8e\xe2\x78\x82\x38\xf9\x37\x71\x7c\x89\x31\x39\xb6\xa5\x50\x38\x8e\x8e\x87\xc7\x3a\xcd\x22\x28\x40\xc8\xb5\x50\xb5\xf2\xd2\x0c\x13\xe9\xa7\xe7\x39\x16\x30\xaf\xa7\xde\x8b\x2c\x2f\x72\xee\x69\xed\xae\xce\x08\x7a\xb9\xac\x6d\x25\x77\x66\x71\x7b\x86\x7b\x74\x7a\xd3\xa5\x86\xf2\xf9\x63\xa2\x60\x11\x85\xfe\xc2\x56\xff\xf3\x17\x33\x24\x26\xbe\x73\xea\x47\xa1\xb3\xca\x55\xee\xaf\x00\xd8\x57\x12\x6a\x42\xef\xea\xba\x20\xf2\x04\xb4\x82\x96\x63\xd5\xf5\x92\xbe\x73\x56\x12\xd0\x56\x8a\xac\x85\xb4\x2f\x9d\x15\xc4\x51\x2c\xea\xbe\x98\x45\xcf\xad\xd2\xcc\x21\x55\x30\x93\xac\x63\xb5\xea\x38\xc1\x15\x9c\xcf\xb8\x60\x18\x4d\xeb\xe0\xd2\x77\x12\xd0\x48\xae\x1a\x30\x5b\xcd\x6a\xb5\x82\x02\x5d\xd7\x75\x24\x1f\xab\x41\x59\xa4\x34\xe1\x34\xc3\xda\xa9\x4f\x68\x84\x4f\xfd\x38\x72\x56\x70\x82\x51\x22\x26\xa1\xb2\xc3\xd4\x34\xd5\xaf\x87\xfa\xbd\x1c\x86\x72\x78\xa9\x01\xd4\x8e\x30\x7d\x66\x2d\x25\x3b\xc7\x91\x7c\x55\x07\x6b\x5e\x0f\xd5\x7b\x09\x8f\xec\x7d\x49\x0d\x70\xfa\x4e\x02\xca\x43\x68\x84\x04\xaa\x81\xb3\xaf\x14\xc6\x08\x15\x57\x74\x4e\xa2\x46\x8c\xe5\xf0\xa4\xc0\xa3\xda\x6f\xab\xe7\xed\x04\xdd\x17\xd1\xed\x44\x36\x2c\xec\x03\x26\xea\x88\x9b\xc9\x09\x0e\x05\x8b\x67\x43\x21\x0f\x7a\xaa\x63\x65\x32\xae\xeb\x58\xa7\x22\x35\xef\x7b\xa0\x72\x2b\xbb\x30\xea\xba\xfd\x6e\x6e\x6b\xde\xdf\xdc\x3a\x2b\xa8\xab\x89\xd7\xbc\xfd\xea\x06\x2b\xe2\x6c\xf8\xb8\x7c\xad\x6b\x93\xaf\x1b\x82\x82\x4a\xc7\x01\x9d\x7c\xe1\xf3\xf5\x23\x46\x61\x52\x4b\xb5\x61\xb2\x0d\x8c\xc0\x99\x31\x70\xd4\x6d\x4b\x6b\xfb\xd8\x06\xe2\x19\x4d\x6a\x3f\xa2\x9e\x6f\xe5\x0b\xca\x58\x5a\xcb\xe6\xd4\x8b\x6d\x7c\x43\x11\x6b\x84\xef\x6b\x80\xf4\xee\x30\xb9\x31\xeb\xb6\x9d\xb0\xcc\x78\x0d\xeb\xf8\x4a\x95\xc2\xd5\x75\xea\x8c\xe4\x8c\x60\xb5\xea\x68\xa5\x3a\xf2\x60\xe0\x46\x5e\x14\x9a\x24\x97\x3c\xa8\x61\x34\xd6\x2c\xb6\x0e\x0f\x9a\xdb\x74\xc3\x76\x64\x3e\x56\xf3\x2d\x53\xf8\xd8\x59\xc1\x28\xf4\xe5\xb8\x56\x3a\x85\xdb\x55\x5e\x27\x77\x2b\xf9\x0c\xeb\xf4\xbe\xc1\x40\x17\xd6\x08\x44\xfd\xc1\xe3\x83\x54\xdd\x8e\xf1\xfd\x8c\x69\xc6\xa3\x53\xef\xe1\x58\x4c\x30\x3b\xbe\xc4\xc7\xb2\xf5\x31\x65\x85\x93\xc8\x51\x4e\xf9\xb6\xea\x9b\xcd\x73\x3a\x18\xe4\x92\x23\xc2\x45\x4e\x2b\xf6\x8d\x86\x83\xf3\x6a\x52\x59\x85\x5a\xad\x00\x14\x83\x01\x35\xc9\x9b\x5c\x92\x2f\x74\xcf\x6c\x22\x3b\xee\x12\x70\x94\x4b\xfb\x67\xcd\xf3\xc8\xaa\xcb\x69\x7e\x3f\x5a\x2d\xef\xcd\x73\xe9\xfe\x28\x80\x71\x70\xf6\x6d\xfc\x67\xfa\x6d\xfc\xf5\xd7\x80\x8f\xe2\x7c\x51\xef\x38\x4d\xfd\x17\xba\x89\xce\xd6\x88\x92\xc4\x68\xec\x58\x57\xf0\x4e\xab\x75\x73\x79\xa0\x70\x12\x6a\xab\x4a\xe7\x88\xce\x3e\x54\x26\x68\x00\xa0\xea\x0d\x68\x16\x66\x9d\xe1\x2d\xac\x7d\xa6\x52\xe9\xa7\xc5\x6b\xdc\xbc\x39\xee\x0a\x5e\xe9\x04\xe5\x05\xeb\x5d\x04\xd6\x9d\xe6\xf9\x69\xa1\xe4\xf5\xb6\xf3\x42\xe7\x0e\x98\x1d\x13\x7f\xe2\x86\x9c\x9c\x75\xc7\x4c\x7d\xfc\x5e\x2e\x4f\xdc\xb5\x99\x3f\x6d\x32\x4f\x9d\xb5\x6c\x34\x86\x2c\x38\x39\x83\x28\x38\x39\x87\xd4\xea\xcf\xf2\x10\x69\x69\x83\xc3\x38\xc0\x35\xd9\x25\xbf\x3d\x71\x59\xe0\xf2\x20\xf6\x08\xbe\x17\x2e\x00\x5e\x44\x09\x96\x2c\x42\x97\x17\x72\xb9\xa7\x28\x19\x40\x79\xfa\x22\x86\xae\xd4\x16\xfb\x56\x7e\x12\x7c\x6b\x4e\x95\x09\x58\x20\x39\x04\x1a\x24\xab\xab\x98\xa0\x24\x79\x58\xa8\x53\xac\x4d\x17\x1f\x7b\x7a\xc8\xcb\xa5\xfd\xcb\x05\x29\x64\x7c\xe5\x22\xb3\x67\xe9\x2a\x47\x0a\x12\x53\x87\x6c\xd7\x3d\xb2\x5d\x17\xf1\xd5\x3d\x9d\xa9\xb2\xdc\xcd\x43\x31\x67\xf8\x90\xf4\xba\x47\x7d\xaa\xdc\xd1\x3c\x2b\x80\x6e\x92\xff\x19\x2b\x71\x42\x51\xa4\x9d\x62\xec\x5f\xaa\xd6\x54\x8e\xd7\xdb\xbb\xc5\x5c\xe2\xec\x88\x4e\x1b\x72\xa3\x9a\x6a\xe0\x4a\x46\x34\x80\x18\x9b\x26\x80\xb9\x62\xff\x4d\xa0\x95\xc2\xff\x51\xcc\x4d\xe5\x7f\xc8\x3a\xb5\x8b\x42\x07\xc0\xee\x89\xbe\xa7\xe5\x8a\x7d\x85\xe2\x4c\xef\x3f\xfc\xe3\x9d\x37\x41\x7c\xe2\x2e\xcc\x14\xb3\x64\xa4\x0c\x46\x21\xf7\x8b\xd9\xbf\x9f\x27\x89\x9b\xce\x53\xbf\xcb\x4d\x3a\x03\xf1\x34\x97\xaa\xba\x23\x8d\xc6\x2a\xdb\xa2\x52\xc7\xe6\xb3\x17\x69\x4e\xd7\x52\xa5\x0d\x6c\x6c\x36\xb6\x5a\x96\x00\xb9\x24\xa2\x66\x5d\x6b\xd2\x96\x17\x32\x76\xcb\xad\xaf\x58\x85\x0a\xac\x2f\xc8\x28\x12\x94\xaa\x06\xfe\x40\x99\x2b\x40\x2e\x5f\x2d\xc9\xc8\x07\x9e\x9c\xd9\x0c\xcd\xaa\x55\x44\xa7\xa6\x08\xff\x11\x2b\x97\xe1\x4f\x49\x0e\x2a\x3d\x66\x1a\x73\xec\x19\xa6\x5b\x40\x46\xc3\x87\xce\xd5\x4d\x9a\xce\x99\xa9\xd2\x4d\x36\xa4\x66\x87\x2c\x58\x70\xe5\x30\xe5\x4b\xce\x18\xe1\xe5\xd2\x71\xe0\x14\x73\x8e\xae\xb1\x8f\x3d\xf3\xd7\x72\x29\x37\x94\x40\x71\xb2\x5c\x3a\x8a\x19\x39\x52\x79\x55\x3d\x73\xc9\x66\xf5\x5f\xa3\xb3\xb1\xc9\x18\x9d\xfe\x86\xcc\xf6\x11\x30\x4f\xc4\x22\xc1\xcb\x25\x2b\xf7\x05\xa0\x2a\x91\xc5\x3c\x3d\x14\xd9\x47\xda\xca\x82\xd8\x7b\xfd\x6a\x52\xf8\xe5\xb2\x36\x1b\xbc\x27\xdf\x49\x76\x7d\x42\xf5\x8c\xb5\x4e\xf5\xf3\xfb\x37\xae\xd5\x75\x54\x59\x79\xe0\x49\x85\x96\xa8\x84\xb9\x3a\x6d\x7c\x8e\x72\x3d\xa3\xea\x18\xfe\x35\x3c\x07\x36\xab\xee\xa9\x63\x05\xcf\x39\xfc\x06\x1c\xd1\x60\xa1\x3f\xab\xeb\x96\x66\x25\x4b\xe5\x81\x61\x74\x36\x96\x53\x63\x82\xff\x57\x2c\x26\xae\xf3\x3f\x4a\x97\xa7\xa9\x6e\xad\x5a\x70\x8f\x4f\xe2\x2b\xe1\x82\x15\x80\xd4\x8b\x42\xfb\x78\x74\x36\x5e\xa9\x22\xfc\x71\x79\xf2\x79\x4a\x04\xcb\xe5\x62\x05\x93\x20\xf6\xa2\x90\x2f\x97\x23\xd9\xc3\x18\xce\xa5\x7e\xa0\xb7\x95\x7a\xa6\xff\x1e\xc3\xb0\x4a\x80\x0d\x9b\x39\x0a\xfd\xb3\x93\x6c\x69\xf2\x05\xef\xd5\x19\xe9\xa7\x2b\xd7\xf9\xa3\x03\x2e\xb2\xdd\x7d\x8d\xc5\xf3\x50\xc4\xb7\xd8\xa5\x69\xba\xfe\x04\x58\xb4\x18\xe2\x51\x1c\x21\x31\xfb\xdf\xb7\x03\x4b\xf9\xc1\x7c\xb5\x26\xe3\xfc\x3b\xb3\x1d\xa4\xf4\x1f\x61\x28\x6c\xa6\x7a\x8c\x98\xf9\x30\x18\xd7\xe5\x9d\x4f\x6b\x98\x4b\xd6\x70\x0e\x46\x67\xe3\x23\xe4\x86\xa0\x90\x11\xba\x8a\xd7\x12\xff\xa0\x35\xf0\x58\x53\x68\x09\x72\xa1\xf7\x1d\x53\x17\x58\x35\x6c\xac\xfe\xdb\x1d\xfa\x82\xf2\x04\xb2\xea\x70\xf7\x6d\x94\xea\x62\xba\xc3\x35\x79\xf1\x0f\x0a\xf2\xbe\x28\xc8\xbf\xc3\x6c\xff\x7b\xad\x20\x3f\x79\xd2\xff\xb2\x2a\xfe\x85\x96\xc5\x45\x7d\xca\xb5\x92\xae\xe5\x5a\x99\x2d\x8d\x4a\xd6\x94\x6b\x35\xe9\xc3\x3e\x45\xb9\x56\x02\x80\x9f\x1b\xd3\xd6\xcb\xb5\x92\x4a\xb9\xd6\x3d\x4c\x92\x96\x3b\xd7\xf1\xba\x33\xd9\xa2\xc7\x21\xe8\x91\xc7\x2d\x7b\x48\x5a\xd3\xbe\xf9\x1c\x55\x54\xc7\xc9\x5a\x1d\xaf\x51\x4b\x33\x7a\x54\xe5\x18\x95\xe9\x62\x40\x1b\xce\xfd\x42\x45\xa1\xf7\xa5\x5a\x4c\xb6\xb2\x10\x8c\x42\xbf\xb6\x58\x93\x54\xaa\x21\x91\x2a\x26\x58\xa7\xa1\x95\xc7\x87\x5c\xe4\x2e\x56\x10\x03\x68\x47\x4a\xec\x30\xcd\xae\xfd\xee\xfc\xc2\x15\x41\xfa\x14\x4a\x39\x64\x74\x42\x1a\x08\x35\x84\x86\x5a\x87\x52\xad\x54\x67\x07\xf9\x87\xd4\x83\x52\x5f\x01\x3a\x18\xa4\x7f\xbb\xeb\x7a\x49\x75\x75\x55\x1b\xd1\xf4\xa3\x34\x74\xd5\x88\x71\xa1\xe9\x14\x40\x0a\x72\x23\xcf\xbd\x59\x01\x2d\x8c\x05\x64\x90\xd6\xa8\x9e\xa4\xa6\x94\x31\x81\x1a\xdd\x5e\x56\x32\xea\xa2\x01\x71\x04\xc0\xc5\x0c\xb3\x69\x6c\xae\xe5\x44\x61\x91\xd1\x5c\x4c\x28\x8b\x7f\xc3\x7a\x79\x0a\x5f\x30\x47\x21\x53\xf6\x58\x32\x2e\xa2\x2b\x31\xaf\x3d\x34\xd7\x9c\x69\xd7\x2a\xc5\x85\x43\xf5\x5d\x9c\x24\x1f\xd3\x42\x21\x7e\x49\x93\x6c\x2f\xf3\x9f\x95\xfb\x1e\x0c\x5c\xec\xa5\x87\x6f\x0f\x93\xc8\x9c\x9f\xec\x0a\x98\x8b\x0a\x20\x8f\xa7\x19\x5c\xfe\xa4\x95\x1e\x05\x3d\x14\x26\xf2\xf4\xa2\xee\x88\x00\xb0\x12\xa2\x75\xa6\x47\xb9\x25\x29\x1c\x3c\x9a\x4d\x16\xb0\xf2\x2a\x5b\xa1\xc2\xe2\x98\xd3\x91\x03\xd6\xad\xd9\xb8\xe9\x1c\xc3\x02\xa9\xb2\x3f\x03\x10\x05\x4c\x1e\xb4\x69\xc0\x46\xe7\xe3\xa3\x14\x7d\x64\x30\x20\xe5\x63\x84\x3d\x5f\x21\x98\x27\x27\xba\x32\x25\x28\x56\x1d\x72\x05\xa6\x87\x0a\x7d\x37\xb9\x83\x45\x38\x9b\x4c\x73\x5d\x8a\x70\x16\x67\x67\x6f\xc2\xd6\x4f\x12\x85\x49\xb1\xa2\xe5\x67\x9a\x9f\xcd\x64\x62\xec\x0f\x66\x0a\xea\xce\xba\xa3\x45\x10\x85\x89\x03\xe0\x25\xbe\xa2\x4c\x97\xf6\xad\x14\x70\x52\x02\x21\xd6\x5a\x36\x12\xd8\x05\xab\x46\xbb\xa0\x82\x8f\x05\x9e\x06\x59\x4b\x5b\x47\x2a\x73\xf4\xf7\xd7\x54\xf9\x5b\xd9\x8d\x91\x93\x74\xe6\xd2\xf2\xe4\x0c\xc6\xfc\x8d\x31\xdf\x9d\x9c\x43\xf9\x1d\x3f\xfd\x22\x94\xc7\x20\xee\x8f\x9c\x29\x22\xe8\x1a\xeb\xf4\x7e\x4e\x98\xc4\xf2\x8f\xf1\x66\x46\xc3\x08\xcb\xe5\xbd\x2d\x55\x77\x2a\xc6\xf1\xe9\x8f\x3b\x31\x7f\x8b\xef\x1c\x30\x18\xa4\xcf\x3c\xe3\x60\xab\xab\x15\xbb\xa0\x5a\xf8\xb6\x9d\x16\xf5\x42\xee\x05\x25\xf6\xa1\xb6\x8d\x0d\xd0\xcd\xea\xc6\xa2\x81\x34\xaa\xda\x4c\x1c\xad\xab\x32\x09\x9e\x80\x8e\x36\x58\x78\x5d\xa6\xeb\xf7\xbc\xf2\xbf\xce\x31\x7b\x78\x87\x98\x72\x19\xe3\x18\xb1\x70\xe2\x2f\x10\xf7\x1d\x7d\x04\x55\xec\x2d\x91\x6a\xe5\xc9\xd9\x6a\xd5\xc4\xbf\xb2\x12\x69\x47\xb5\xd5\x35\x6b\xf4\xe0\xb2\xe4\x95\xaa\x91\xf6\x55\x08\x0a\xe1\xcf\xc5\xca\xa0\x52\x1b\x31\x03\xd2\x4a\x48\x59\xfb\x50\x1a\x58\xe7\xeb\x94\x0a\x31\xd7\x5c\xa5\x7c\xff\x90\x71\x54\x77\x3d\x45\x57\x4f\x01\x75\x33\xdf\x0e\x6d\xd7\x54\xf3\x2e\xd1\xb6\x75\x3e\x6a\x91\xb4\x4d\xad\x34\x4f\xac\x6e\x07\xd5\x9b\x54\x39\x54\xc3\x3a\x57\xff\x6d\x55\x49\xac\xc4\x19\x92\x36\x81\x5c\x1c\x7c\x97\xb2\x5f\xeb\x67\xdf\x8c\xb1\x98\x5c\x9f\xf2\x98\x5c\xcb\xa9\x54\x71\xa4\xf3\x12\xae\xe5\x1a\xe5\x98\x88\x83\x65\xe9\x60\x59\xfa\x9d\x59\x96\xd6\xed\xef\x6e\xc2\xce\xe4\xff\x34\xac\xb7\x9b\x8d\xc9\xda\x61\xd6\xd9\x8a\x9a\x4a\x63\x57\x4c\x48\x8d\xc5\xb1\x4d\xa9\x44\x2f\x1d\x58\x41\x30\xae\x3b\xa4\x6f\x64\xfa\xd1\xb2\x8b\x19\x71\xa3\xb3\x0a\xe7\xcb\x7f\x1b\xed\x59\xd7\xfe\x86\xa4\x7a\x67\x86\xc1\xc2\xe4\xef\x28\x5c\xcf\xeb\xbb\xe6\xbc\x39\xc6\x5c\x56\x3a\xb6\xd0\xe9\x1f\xce\xbe\x71\x7c\xf3\xd7\xb9\x2d\x78\xba\xd2\x37\x08\x78\x65\xea\x36\x3e\x5a\xe2\x75\x3a\x30\x67\xdc\xbb\x8b\x5a\xd7\x81\x47\x57\x7d\xdc\xbe\x50\x0e\xcd\xfa\x70\x68\xd6\x95\x43\x13\xcb\x0d\xd9\x1a\x0e\xad\x13\x29\xb0\x4f\xc1\xa1\x19\x00\x7e\x6e\x4c\x5b\xe7\xd0\xac\x99\x43\xef\x4f\xba\x88\x1c\x87\x6e\xf3\xc7\xea\xc9\xa3\x8b\x27\x0d\xca\xc4\xf7\x0f\xbe\xc3\x55\x96\xad\xd6\x73\x47\x57\x8d\x9e\xb9\x4c\xb2\xc4\x4c\x89\xd7\xdc\xca\x5d\x3c\x52\xb9\x2f\x1f\x65\x1b\xf9\xbe\x72\x22\x58\xac\x60\xe1\x68\xb1\x05\x06\xd8\xe6\x86\xa0\x19\xa0\x0a\x05\xe8\xa7\xef\xeb\x26\xfb\xa8\xec\xe7\x46\xbe\x81\xa6\x9f\x9f\xf7\xa6\x6a\xbe\xec\xe3\xa0\xe4\x1f\x94\xfc\x83\x92\xff\x94\x4a\xbe\xca\x7d\x7c\x50\xf1\x8b\x2a\xfe\x7b\x9a\xe0\xdf\x9f\x82\xaf\x99\x76\x17\xed\xbe\x95\x35\x1f\x74\xfb\x83\x6e\x7f\xd0\xed\x1f\xa9\xdb\x1b\xd6\x7c\xd0\xec\x9f\x5c\xb3\xd7\xf7\x1b\xfd\x54\x7b\xd3\x66\x1f\x75\xfb\xfc\xd0\x37\x50\xee\x0b\x33\xdf\x54\xbb\x57\x9d\x1c\xd4\xfb\x83\x7a\x7f\x50\xef\x9f\x52\xbd\xb7\xca\xfa\xe6\xce\x0a\xd9\xb6\xab\xdc\x40\x6f\x5d\x0b\xd7\x77\xbc\xa4\xe5\x82\xf7\xd3\x69\xc4\x86\xd3\x75\x51\x89\xdb\xf9\xd9\x41\x27\x3e\xe8\xc4\x07\x9d\xf8\x91\x3a\x71\x7f\x7e\xf6\x18\xf5\xf9\x73\x3b\xe4\x0c\x06\xf5\x0e\x39\x3d\x3d\x71\x76\x47\xbb\xcf\xbb\xfb\x77\x31\x02\x15\x5c\x88\x3a\x7b\x00\x3d\xfd\xa9\xa1\x22\x11\x4a\xc1\x89\xdb\xd9\x32\xa2\x36\x3c\x64\x9d\x97\xab\x48\xdd\xd7\x3f\x52\x45\x2d\x69\xce\xb6\xd2\x0c\x45\xfb\x0c\x6d\x5e\xab\xce\xc7\xa2\x5c\x13\x75\x36\x78\x32\x4f\xbe\x8a\x5a\x54\x3d\xe7\x94\xc7\xd2\xcf\x7b\xb1\xdc\xfa\xf3\x2c\x74\x37\x8e\x98\x65\xf8\xdb\xc8\x24\xdb\x18\x99\x53\xd8\x7a\x51\xe8\x0b\x1b\xf3\xec\x7c\xe5\x68\xd7\xd4\x2c\xde\xc1\x8b\xa3\x8b\x35\x8e\xaa\xd0\xf9\xca\x01\x06\xfc\xf1\xfe\x79\x7d\x48\xf7\x73\xee\xd3\x27\xb0\xdb\x2c\x6c\x78\x53\x93\x79\xbd\x1f\x7b\x5d\x2e\x0b\xc1\xfe\x4f\xbb\x2a\x37\xb7\x9d\x19\xc9\xcd\xed\xe7\x67\x20\x76\x0c\xfd\x18\x87\x6d\xd5\x30\x45\x9d\xcc\x19\xf1\x10\x93\xe8\x70\x3c\x38\x1c\x0f\x0e\xc7\x83\xf5\xc7\x83\x8e\x22\xf0\xe6\x56\x9d\x08\x54\x50\x58\xb7\x3b\x4c\x5b\x5a\xaa\x49\x64\x6a\x63\x07\x44\x01\x96\x1b\x0f\xd6\x66\x6f\x49\xb9\x2e\xef\x7c\xa9\xb9\x2e\x59\x09\xb5\xdc\x9b\xe7\xd8\x32\x9c\x21\x86\x89\xc8\x44\x2d\xaa\x97\xb3\x2a\xc5\x5d\x9a\xac\x0e\x41\xc5\xdb\x4f\x1d\x48\x21\x07\xf5\x21\x24\xf6\x6d\x49\x94\x37\xf4\x8f\x74\x4f\x1a\xcc\xa2\xda\x97\x5b\xb3\x36\x9a\x36\x4d\x7c\xad\x95\x03\x81\xa7\x35\xe9\x89\xcc\xa5\xea\x07\xbb\x14\x3a\xef\xf7\xfa\x23\x0c\x06\x70\x91\x7e\xdd\xcb\x2d\xb9\x19\xec\xdf\xf1\x83\x2b\xd4\x58\x0b\x5b\xe3\x13\x9c\x08\x6e\x6e\x4f\x75\x86\xd6\x4e\xe2\x4d\xeb\x25\x9f\x59\xbe\x19\xe5\xa8\xf6\x3c\x81\xcd\x81\x62\x9d\x89\xef\x28\xa7\x5c\xce\x94\x9e\x63\xf6\x86\x77\x73\xeb\x19\x64\xe8\xac\x1a\xa7\x4e\x10\x04\x4a\x86\xd9\xd4\x23\xea\x07\xc8\x9f\x9e\x2b\x47\x97\x9b\x5b\x9d\xa8\xa7\x7c\x74\xe9\x22\x84\xd7\x5a\xec\xb4\x14\x8e\xf9\x0f\x7a\x88\x07\x39\x7c\x90\xc3\x07\x39\xbc\x5e\x0e\xf7\x8b\x63\xeb\x21\xb5\x5b\x2d\x6c\x39\xce\x92\x65\x37\x53\x11\x61\x9a\x9d\x38\xa7\x8e\x4a\x95\x56\x94\x80\x59\xa2\x27\x2b\xce\x52\x1b\x5a\xb1\x17\x88\xbf\x76\x4e\x9d\xaa\x2d\xad\x9c\xdc\x02\xa7\x5f\x83\x68\xad\x32\x50\x51\x15\xfa\x2b\x03\x85\x93\xb7\x51\x00\x6a\xa5\x32\x81\x08\xd2\x5e\xf9\x2c\x72\x62\xd4\xd8\xfe\x4a\x86\x3f\xd5\x6f\x5e\x48\xeb\xef\x43\xe7\xef\xf8\xc1\x01\xea\x7b\x5b\x76\x7e\x4a\xeb\xe6\x54\x04\x40\x21\xf4\xf0\xc8\xac\xed\x1a\xf8\x82\xc0\x48\xef\x89\xd2\xf4\x0e\xd5\x6c\x82\xf1\x95\xdb\x90\x0a\xd0\xf9\xc3\xd9\x1f\x9c\x20\x9f\x0e\xd0\x8c\xbd\xab\xc8\x3a\xb2\x2e\x5c\x9f\x42\xf1\xc8\x27\x6b\xef\xa2\x7d\x18\xd0\x4f\xa7\x7e\xf4\x12\xdf\xaa\xe6\x40\xab\xe5\x26\xe5\xb2\x22\x65\x17\xa5\x54\x20\xcb\xa5\x4a\x4f\xa5\x53\x88\x9d\x81\x74\xbf\x99\x59\x5e\x31\x8c\x7f\xc3\x6e\xb3\x68\x59\x30\x74\x67\xb3\x6a\x17\xdb\x08\x4d\x60\xee\x48\xb2\x03\xfd\xff\xba\x50\xc2\x38\xfd\x48\xa1\xbe\x4f\x2a\x1a\xb6\xc6\xa5\x6b\xa3\x99\x3b\x9e\x96\xe4\x50\x1d\x00\x55\xe9\x83\x86\x84\xaf\x48\xa0\x21\x57\xf5\xc4\x4f\x6d\xfd\xfa\xbe\xb1\xcc\x15\x0b\x56\x8e\xa5\xf7\xb5\x44\x66\xb7\x14\x72\x64\x9e\x1e\x59\x6d\x92\x1a\xe2\x0a\x17\x40\xe7\x2b\x07\x62\x75\xe7\x90\x60\x14\xa5\x19\x5d\x33\xee\xf9\x46\x3d\x56\x95\x6b\x9e\x3c\x12\x5e\x93\x33\x9f\xd0\xbb\x7e\xd4\x1c\xe7\xc9\xcb\xd6\xad\x38\xbd\xa2\x6c\xa8\x2a\x77\x38\xd0\xe9\x42\x6e\x39\x5d\xb6\xb6\xe3\x90\x52\x16\xc5\x04\xc9\xc1\x36\xf4\x4d\x5a\xfb\x3e\x38\xe7\x1c\x9c\x73\xf6\xc7\x39\x27\xfd\x2e\xaf\xdf\x12\x35\x5b\x80\xb7\x6e\x81\x42\xd9\xb0\xe3\x8a\xec\x81\x5b\x13\x3a\xdb\x91\x1f\x49\xad\xfc\xe8\x2d\x12\xea\x95\x66\xed\xb9\xdf\x62\x34\xab\xe4\x04\x6e\xbe\x04\x4e\x02\xac\xf2\x63\x75\xb2\x9e\xc5\xb9\xb4\x29\xf5\xd2\x22\x97\x83\xcd\xe5\x2e\x80\x31\xa4\x30\xd1\xea\xe2\x46\x4e\x4b\x2b\xb8\x10\x74\x4a\xaf\x19\x9a\x4d\x1e\x7c\xd6\xe1\xab\x24\xff\xd5\xac\x66\x51\x97\xa6\xa2\x38\xe0\x6d\x5c\x76\x27\xdd\x25\xd8\x69\xbe\xd0\xd3\x67\xba\x56\x5b\xa7\x58\xa4\xc7\x3a\x9b\xeb\xda\x4b\x73\x5d\x9f\xc1\xe1\x39\xf0\xfe\x45\x63\xa2\x9e\x16\x1c\x37\x52\x22\xc4\x4f\x7f\x39\x99\x43\xe6\xe7\xbc\x9c\x44\x57\x02\xb3\xaa\xcd\x2f\x67\xd1\xeb\x8e\x4b\x48\x8a\x59\xe7\x55\xde\x28\x5d\xfd\xde\xc8\x47\x07\x7c\x77\x76\xe1\x14\x88\xc7\x77\x52\xd7\x84\xa3\xca\x19\xdd\x71\x6c\xdd\x17\x01\xd5\x77\xcd\x2f\x02\xa4\x5e\xb7\x31\xc2\xd3\xb2\x5e\x07\xca\x7d\x1c\xe5\x32\xf1\xb9\x7c\x22\x9e\x1a\x87\x0d\xfb\x22\xbe\x72\x4f\x0a\x34\x9e\x71\x7c\x2f\x8a\x6d\xa5\x3a\xb0\xe1\x06\xaa\x6e\x00\xb9\x38\x9f\x70\x3d\xd3\xad\xb8\x0b\x9e\x12\x8f\x39\x59\xee\xd7\x36\x4a\xab\x11\xee\x51\x2e\xca\x0d\xaf\x59\xaf\x30\x8e\x2e\x51\x78\xd3\xd0\xc6\xbe\xae\xab\xd6\xf2\xb9\x97\x37\xb3\x20\x66\xe9\x23\xcd\xa5\x65\xe7\x64\xc8\x05\xd5\x97\x75\x57\x7d\x51\x39\xcf\x6b\x61\x5e\x16\x6b\x1e\xbe\xc7\xe1\x5c\xe0\x9a\x62\x33\xc7\xa2\x70\x4b\x6a\xea\x04\xe1\x8a\xa6\xdb\x00\xaf\xcd\x25\x6f\x69\x84\x5d\xec\xc9\x7f\xa0\x3c\x24\xd7\xa8\xc9\xa8\x9c\xb0\x35\xd5\x6a\xf1\x2a\x55\x55\xa1\x13\xe1\x04\x0b\xec\x80\x55\x5f\x23\x8a\x4e\xff\xda\xd9\x83\xc8\xc2\xef\x59\x74\x56\x71\xd8\x0d\x77\x23\xab\x7e\x21\x5b\xc5\x3e\xd7\x32\x1a\x93\x20\x7c\x7f\xd2\x31\xda\x8d\x03\x63\xfe\x42\xa7\x57\x2d\x8e\xd5\x64\xc9\x36\x54\xa3\xee\xa0\x05\x62\xd7\x58\x94\x79\xc8\x8c\xce\x6a\x32\xc2\x96\x62\x5f\x94\x05\xd1\xee\x5e\xfb\xc5\x86\x5c\xd0\x6b\x2f\x89\xba\xdd\xfc\x98\x84\xb1\x0c\x46\xa1\x8f\xf4\xa9\x96\x5d\xd8\x4c\xce\x0c\x73\x9a\xdc\x62\x97\xa4\x99\x69\x9f\xbf\x78\xc3\xfd\x85\x4e\x4e\xf5\x52\xa3\x91\xfb\xa3\x31\x7c\x4f\x13\x9c\xfb\xbd\x52\xa9\xb4\x8b\x3e\x9a\xaa\x56\xc6\xa7\x30\x85\x1a\x52\xec\x12\x4f\xd3\x89\x16\x6b\xac\x9b\x9f\xe3\x12\xe0\xab\xd3\xaf\xf2\x05\x4c\x3b\x98\x4e\xb7\xc5\x5d\x5a\x4a\xba\xf5\xb5\xe7\xf4\xdc\x75\x8f\xd4\xdb\x36\xb6\xf7\x97\x6c\x29\xca\x8a\x52\x8c\x1b\x7e\x2c\x29\xb7\x72\x55\xab\x31\xef\xdb\x3d\x55\xaa\xe9\x7f\xe6\xab\xaa\x27\xbd\x7d\x82\xa6\x30\x9c\x7a\x6f\xee\x9c\xab\x04\x98\xba\xfa\x61\x8f\xab\xe2\x71\x2c\xc0\xe6\x96\xf7\x48\x57\x14\x32\x6d\xfd\xd4\x1a\xc1\x00\x1c\x9e\x07\x41\x40\xd2\x12\x62\x4c\xd5\x65\x0a\x88\x15\x26\xff\x4d\x32\x6b\x05\xb3\xfa\xa8\x7a\x28\x58\x3c\x75\x81\x29\xb7\x50\x11\x0f\xcd\x2a\xe0\x5a\x33\x6a\x5b\x5d\x0d\x04\x95\x6d\x54\x60\x36\xe5\xbe\xe3\x9c\x04\x01\xb9\x28\x8c\x55\x4a\x88\x5e\xfb\x4d\xb8\xc0\x78\x1d\x7c\x8a\x54\xbb\xb9\x6d\xa6\x0f\xd9\x8f\xba\x43\x2b\x56\x96\x4f\x5f\x6c\xe9\x2a\x6d\xc6\xe8\xfd\x43\x5b\xef\x87\xcb\xb4\xc3\x65\xda\xef\xe9\x32\xad\xe3\xa6\x3b\x5c\xb0\x7d\xc6\x0b\xb6\x9c\xbf\xf9\x96\xae\xd8\x72\x0b\x95\x5e\xb1\xa9\x50\x30\xec\x11\x1a\x61\x98\x1e\x39\x6a\xee\xdc\x78\xdb\x9d\x1b\xd7\x77\x6e\x8a\xdd\xfe\x88\x05\xf2\x47\x52\x74\x10\x1c\x8a\xa1\x7a\xe6\x40\x67\x8a\xf9\x64\x78\x8d\x04\xbe\x43\x0f\xce\xd8\x8b\x49\x98\xcc\x23\xcc\x73\xfe\x69\xb6\xe2\xc5\xdf\x63\x12\x39\x00\x5c\x48\x46\xd3\x78\x01\x97\x9f\x0e\x69\x99\xce\x5a\x77\xf8\x42\xac\x2f\x86\x4e\x3a\x07\xef\x83\x5e\xf2\xd7\x2f\x9d\xac\x44\xa5\x51\x9f\x16\x71\xe4\xb7\xb7\x82\x72\x24\x4d\x70\x6f\xb5\xcb\x8f\x1c\x65\x4b\x57\xba\x76\xcf\xaa\x89\x0e\x8a\xd7\x9e\xaa\x75\xaf\x6b\x4b\x22\xb1\x46\x34\xd6\x48\x1e\x6b\x9f\xe8\x2a\xb3\xa2\x4f\x9c\xa2\x28\x62\x98\xf3\xcf\x66\xfb\xfe\x7c\x17\x1a\xc5\x5d\x72\x12\xd4\x5c\xe2\x99\xdd\xb1\x4f\xb7\x1a\xd5\x15\x96\x8b\xca\x71\x34\x43\x62\xf2\x3b\x5c\xe4\x22\x6b\x5c\xb3\xca\xcb\x65\xf5\xcd\x3b\xd9\xc8\x7b\xa5\x10\xe8\xbd\x93\x08\x4c\x2f\x74\xff\x7c\xbe\xe7\x64\x71\x70\x65\xd8\x3e\x4e\x3b\x84\xdd\xd8\xcc\x60\x0c\x47\x31\x93\x84\x29\xe8\x27\xb5\x31\x2f\xec\x87\xfd\x62\xc4\x40\xd1\x3b\x01\xf4\x33\x6c\x56\x31\x71\x70\x35\xd8\x2e\x65\x19\xcd\xee\x80\xcc\x6d\x20\x73\x3e\xe3\x82\x61\x34\xfd\x52\xf9\xde\x36\xc4\xe1\x7e\x4a\x37\x42\xc5\x15\x9d\x93\xe8\xb3\x65\x2c\x31\xbc\xb5\x12\x47\x5a\xce\x62\x64\x47\xec\x65\x86\x3d\x7d\x8a\xca\xce\x54\x71\xb4\x31\x1a\xfa\x7b\xdb\x27\x79\xa3\x85\xd1\x89\xb5\x47\xbc\xe9\xf4\x11\x56\xc2\xa4\x6c\x25\x8c\xf1\xba\xae\xbb\x98\x08\x6b\xbb\x8e\x62\x1e\xd2\x5b\xcc\x1e\x86\xe1\x04\xc5\xa4\xd4\x2d\x6b\xed\x16\x7d\xd1\x96\x47\xfa\x24\x96\x47\xd4\xc5\xf2\xc8\x3f\xad\xe5\x11\x7d\x1e\xcb\x23\xff\x4c\x96\xc7\xb8\x7e\x37\xd4\x6f\xae\xb8\x75\x17\x24\xfb\x65\x68\x9c\x6f\xc7\xd0\xf8\x98\x62\xa6\xd9\x85\x56\x35\x15\x46\xc1\x24\x99\x3c\x3e\x36\x96\x27\xf3\x6b\xdf\x48\x8a\x28\xf4\xb9\xb5\x49\x26\xbd\x6c\x92\xb1\x0b\x60\x02\x79\xce\x70\x07\xe7\x2c\xe1\x6b\x72\xcb\xc9\xd7\x0e\x80\x86\x7b\xfb\xa3\x71\xd5\x70\x99\x7e\xa0\xc5\x1e\x09\x9d\x98\x5c\x33\xcc\x79\xee\x89\xc0\x6c\x1a\x13\xed\x92\xb4\xd6\x6e\x29\x8c\x92\x62\xcc\x75\x56\x59\xb9\x10\x7e\x19\x55\xd4\xa5\x2a\xe9\x9f\x36\xd5\x29\x89\xe0\xa3\x0e\xb8\x61\x55\xdc\xd8\x59\x77\x69\x4e\x2a\xcd\xeb\xcd\xa2\x24\xc3\xd6\x23\xd0\x41\x1a\xd0\xd1\x80\x0c\xa2\x91\x61\xba\x34\x8d\x9a\xe7\x55\x8e\x2b\xac\xcc\xab\x53\x4d\xfa\x36\xed\x6e\xde\x4b\xad\xd9\xeb\x33\xb6\x55\xf6\x36\x3f\x60\x1b\x14\xd8\x6e\x0e\xfe\xca\x9f\xee\x6c\x61\x50\x6f\x73\xeb\x7d\x1e\xdc\x6f\x65\xe8\x9d\xdd\x48\x1b\x3b\xf8\xec\xe9\xe9\xd6\x8f\xec\x71\x9b\x6b\x17\x72\x5f\x36\x95\x4c\x5f\xe4\x92\x50\xda\x64\x88\x85\xdc\x43\x4a\xdd\x80\x66\x4a\x35\xef\xb3\x93\xa7\x3a\x24\x02\xad\x4a\x70\x16\xfa\xd8\x4b\xa7\xfe\x09\x4f\xec\x65\x9c\xef\x4e\xc6\xca\x9d\xcb\x51\x09\x95\xf2\xd7\x71\x49\x3f\xf5\x12\x1a\x99\xbb\x1b\xdb\xe5\xb3\x85\x45\x29\x35\x73\x5f\x8d\x67\xbb\x10\x0a\xf5\x45\x29\x0b\x02\x5d\x1f\xf0\xb8\x05\x3c\x7e\xe9\xf6\xfa\xa7\x44\xe6\xe7\x94\xa7\xdd\xdc\xe9\xa5\x74\xec\xe7\x1c\x9f\xcb\x67\x73\x8d\xc5\xf3\x50\xc4\xb7\xd8\x55\xee\xb8\x6b\xc3\xba\x75\xc6\xcd\xa3\x96\x44\xf1\xb0\x60\x6c\xd0\xfe\x40\xbd\x30\xfe\x99\xef\x20\xd6\x66\x94\x23\xf8\xce\xa0\xf4\x15\x63\x52\x7b\x78\x87\xae\xf1\x31\xa1\xe2\x58\x0f\x39\xcd\xdb\xe5\x85\x34\xc2\xc1\x1f\xce\xfe\x00\x71\xaf\xb9\x6b\x35\xa6\xe1\x60\x81\xc9\xed\x9a\xd3\x7a\xb6\x24\xe8\x32\xa9\x8d\x49\xcb\xfb\x08\xa7\x14\x52\x92\xc7\xcf\x19\x43\x0f\x5e\xcc\xd5\xbf\xb9\x3c\x78\x5c\xee\x34\x17\x83\xe5\x32\x56\xff\xa5\xea\xbf\x39\x04\xe9\x89\x4b\x04\x7d\x7c\x98\x61\x83\x9e\xd7\x3a\xe2\xf1\x18\x09\x79\x02\x11\xc7\x82\x1e\xf3\x19\xc3\x28\x3a\x26\x94\x0c\x63\xa1\xad\xb6\xc7\xf6\x40\xee\xfd\x37\x79\x4d\x8e\x29\x8b\x30\x93\xa0\x97\xf8\xd8\x82\x40\xd5\x00\xc9\x41\x1d\x53\xb5\xfa\xfc\x78\x3a\xe7\xe2\x78\x82\x6e\xf1\x31\x3a\x1e\xe9\x4b\x02\x4f\xc1\x0b\xca\xc6\x2e\x38\x9e\x62\x31\xa1\x91\xe7\x80\x95\x0b\x4a\x1e\xc4\xfd\xe6\x8e\xb7\x32\xf1\x08\x73\xc1\xe6\xa1\x98\x33\xfc\xf9\x66\x4f\x35\x4f\x8c\xaf\xec\x85\x26\x17\x4c\xaa\x9d\x41\x20\x1e\x66\x98\x5e\x1d\xe3\xdc\x82\x43\x01\x8e\x0a\xb7\x39\x33\x46\x05\x95\x80\x9e\xa0\x1f\x54\x43\x2f\x44\x49\xe2\x62\xcb\xb2\xff\x43\xb2\x6c\xc3\xa8\x1d\xdd\xc8\x09\x82\x80\x0c\x06\x72\x47\x10\x8d\x00\xca\x54\xcc\x43\xe1\x89\xb6\x8a\x41\xe7\x47\x34\x53\x0d\x96\x4b\xe7\x03\xd6\x6d\x2f\xf4\xb2\x5c\x31\x3a\x75\x31\xf0\x9d\xe7\xf6\x1a\xc5\x00\x9e\xfe\x3f\xf7\xc2\xff\x39\x5e\xbe\x06\x44\xb8\x17\xfe\x7f\x2c\xcf\xff\xb4\xfc\xe6\x19\x70\x2f\xfc\x17\x09\x9a\xce\x70\x04\x74\x0f\xff\xeb\xd4\x13\x98\x0b\x97\x80\x0b\x3d\x37\x5b\x51\xa0\x74\x05\x01\x16\xae\xc9\x31\xbb\x5c\x8a\xef\xb0\xb9\xdb\x01\x83\x81\x32\xe4\x9b\x5f\x47\xf6\x26\x88\x04\x67\x90\x29\xbe\xa0\xa9\x46\x80\x6f\xc9\x9f\xc5\xb7\xe4\xeb\xaf\x01\x1b\x91\x71\x80\x47\x64\x9c\x5e\xa1\x15\xdc\x91\x35\xfe\xe7\x44\x33\x83\xc8\x39\xb1\x4b\xa0\x17\x73\x30\x28\x2d\xea\x71\x6c\x2f\xb7\x72\xa4\x59\xc0\xcd\x93\xfa\x1e\xf7\x10\x46\x8a\x99\xb1\x26\x60\xf5\xb2\x29\x75\xa7\x39\x14\x94\x0f\x69\x95\xe3\x9d\x40\x4c\x70\x7d\x1b\xfc\x3f\xf6\xbc\x40\x83\x2c\xef\x87\x32\x1c\x62\x72\x0b\xe4\x07\xa9\xf8\xf9\xfd\x1b\x07\xa4\x81\x35\xce\xff\xd8\x23\x61\xfa\xc8\x1e\xde\xbd\x39\x4b\x80\xbd\x86\xd0\x43\xf5\x18\x0e\xe9\x35\x89\x7f\xc3\x2e\x05\x30\x0e\x90\xec\x9c\x64\x56\x49\x0e\x17\xab\x4c\xe8\xfd\x74\x47\x4c\xd1\x1b\x00\x00\x4c\x82\x78\x74\x36\x86\xf3\x20\x36\x1b\xe4\xbc\x7a\x48\xc9\x47\x80\x8e\x92\xaa\x1a\x94\xd7\x81\xc6\x69\x6c\x90\x3b\x4f\x5f\x03\x29\x5f\x6b\xee\x55\xfa\xab\x00\xf6\x70\x8d\x0d\x9e\x1b\x55\x02\xb9\x4b\xcc\xa2\x98\x8c\x95\x3a\x38\x96\xaa\x7d\x3c\x18\xb8\xb8\x61\xa5\x2e\x6a\xb4\x07\x03\x59\x50\x22\x6c\x7b\xa8\x95\x0e\x75\xf4\x37\x99\xc8\xd7\xa8\x1e\xb6\x55\x59\xe1\x58\xef\xd7\x9b\x5e\x4e\x7d\x1e\x85\x23\x4c\x62\x4c\x44\xc3\x6e\xd1\x2f\x4f\x27\x42\xcc\xd6\xc7\x57\xe6\x6e\xd8\xa2\xb0\x5b\x76\x05\xb5\x57\x4d\x4c\x6d\xb7\x16\x26\xa8\x36\x8a\xb9\x94\x4a\x51\x4b\xb6\x85\xcc\x3a\x23\x29\x3c\x0e\x91\xd0\x79\xda\x3b\xd2\xa5\xc9\x29\xeb\x82\xd4\x50\xa7\x27\x96\x23\x58\x93\x4f\x5e\xd2\x0e\x07\x05\xcb\x50\x6e\x5a\x45\x1d\xb7\x39\x45\x57\x9d\x8b\xbd\xf1\xf2\xd7\xab\xe0\xd9\x1c\x1a\x0e\x18\x0c\x34\x10\xcf\xf9\xfd\x68\x20\x07\x2e\x2c\x98\xa1\x84\xcd\xae\x78\xb2\xac\x11\xf3\x59\x54\x8d\x4c\x37\x09\x73\xb1\xc9\x84\x6b\xbe\xed\x17\x74\xef\xca\xa8\x97\x4b\x9d\x0d\x42\x3f\x47\x97\x94\x09\x17\xac\x94\x14\x83\x0c\xa2\xa3\x0c\xf7\x33\xcc\x78\xcc\x85\xeb\xa2\x40\x40\x97\x05\x18\xc4\xc4\x25\xc1\x62\x05\x1a\xee\xe3\x65\x07\x86\xfe\x51\xaf\xfb\x78\x32\x62\xe3\x00\x41\x02\xca\x39\x1d\xd6\x28\xca\xf9\xca\xb0\x5d\x9c\x74\xbe\x64\xb7\x14\x92\x77\x4b\x21\xc1\xf9\xb7\xa4\xea\x96\x42\xac\x5b\x0a\xaa\xb8\xa5\x90\xbc\x5b\x0a\x51\x6e\x29\xe4\x7f\x3f\xbb\x10\xd6\x05\x04\xad\x71\x4b\x51\x83\x86\xe8\x53\xb8\xa5\x20\x00\xfc\xdc\x98\xb6\xee\x96\x82\x9a\xdd\x52\xd8\x3e\x66\x61\x47\xb5\x92\xe6\x89\xb3\x5c\xb0\x5c\x96\x8b\x6d\x25\x39\xb7\xaa\xd8\xfa\x74\x19\x4d\x22\x85\x54\xcb\x90\x21\x2b\x26\xa8\x4d\x90\xc1\x57\x90\x15\x2a\x1a\xfa\x3c\x7f\xff\x5f\xce\x98\xc1\xd2\x8c\x19\x59\x91\x43\x1f\xc1\xb7\x36\x7f\x83\x4f\xe5\x66\x60\x95\x2a\x66\x26\xe8\xb9\xa4\x99\xa0\x7a\x2e\xa7\x2f\x4f\x4e\x35\x3f\xe1\xa7\x28\x4c\x9e\x46\x39\xa9\x0d\xb6\x72\xab\x4b\x4b\x02\xe1\x71\xc8\x82\x2c\x0e\x8d\x5c\x38\x8e\x4f\x80\x27\xe8\x1b\x7a\x87\xd9\x0b\xc4\xb1\x6b\xd7\x61\x78\x5e\x76\x8c\xd5\x66\xa0\x22\x70\x2e\x06\x7e\xb9\xac\x36\x79\xfd\x72\x4d\x83\x95\xc2\x63\x07\xcc\x65\xd5\xed\x76\x02\x7f\x25\xf4\x41\x54\x9c\xf3\x07\xe5\x41\x52\x87\x2c\x48\x8b\x90\x2f\x31\x17\xca\xc3\x85\x92\x5a\x70\x1e\xb0\xd2\x93\x38\x70\x9e\x27\xc9\xb1\x75\x5a\x39\x76\xbf\x02\x4e\xf3\xea\xa1\x14\xd9\xdc\xae\x0e\x2d\x3c\x72\xbe\x92\x9c\x02\x0d\x06\xea\x5d\x5c\xf3\x8e\xd6\xbc\xeb\xbc\x6e\x37\xb7\x2d\x2e\x2a\xf1\xf5\x44\x0c\x05\x8b\xa7\x5b\xbd\x46\x6f\x5d\x4f\x92\x96\x33\xf1\x38\x44\xd9\x7a\x32\xb9\x9e\x2c\x8f\xc1\xa2\xeb\x4a\x61\xf1\x74\x2d\x04\xe7\x54\x1e\xf1\x34\x77\x3d\xb5\xdc\xb5\x81\xe2\x51\xf1\x79\x77\x3c\xaa\x64\xed\x3b\x41\xfa\x1b\xb3\x0e\x15\x7b\xda\x8b\x75\x3c\xd7\x31\x99\xdb\xe0\x1f\x2a\x99\xb3\x75\x73\xdc\x6b\x3c\x7e\xb0\xbe\x9a\xdb\xe3\xc2\xcb\x65\x91\xae\x3f\x22\x79\xfe\x5c\x2e\x47\x63\xe0\x71\x3a\xad\x0d\xe6\x55\x9f\xc0\xeb\x16\xa6\x6e\x18\xef\x28\x13\x6a\x20\xda\xea\xd8\xb8\x4f\xd2\x95\xad\xc9\x0a\x52\x5e\xd9\x8a\xa9\x7d\xff\xd6\x74\x03\xb1\x6a\x95\x5e\x75\x14\xef\xbc\xb2\xcf\x5f\xbc\xe1\x5e\x31\x37\x58\xc7\x85\x56\x3a\xe4\xda\xd5\xae\xf9\x52\x3e\xe7\xd8\x96\xbe\xd3\x79\xc7\xcf\xd4\x2c\x0f\x74\xf1\x38\xbe\xc9\xe8\xda\xc3\xf9\xef\x19\x87\x65\x8a\x57\xdb\x2a\xc6\x4f\xb5\xa1\x6c\x8e\x87\x48\xea\xc1\xa2\xfb\x77\x72\x09\x1d\xb6\xb2\xaf\x6a\x84\x68\x55\xad\x9b\x87\xaa\xdc\xd3\xa7\xd5\xe9\x98\x31\x8e\x40\x1a\x30\x8f\x43\x9e\x23\x19\x2a\x49\x86\x96\x49\xc6\x18\xdf\x4e\xce\xb4\xf5\xed\x98\x17\xac\xdc\xd6\x77\xd0\x01\x7e\xea\xfd\x5d\x43\x59\x90\xdb\x53\xee\x7f\x00\x70\x54\xd3\x8f\x40\xd7\xcd\x7d\x64\xa2\x36\xeb\xe7\x0f\xf5\xfd\xd8\x24\x64\xc0\x37\xe3\x46\x41\xda\xe4\xdf\x73\xc3\xf8\x77\x5b\x56\xeb\x0e\x31\x12\x93\x6b\xc7\xd7\xa6\x45\x16\x8b\x38\x44\x89\xf9\x39\x43\x9c\xab\x97\x85\x23\xb7\x19\x95\x4e\xda\x5e\xbc\x84\xc9\xaa\x8a\x02\x00\xbe\x3b\x2b\xd5\xe1\x3a\x39\x5f\x95\x0a\x73\x35\x20\x0b\x2c\x97\x6b\x50\xa0\x23\x62\xcc\x65\x65\x6a\xba\xc1\x6e\xde\x70\x53\xbc\xdd\x15\xe0\x42\x94\xb7\x80\xc8\x67\x1c\x81\x44\x59\xb5\xd4\x6e\x10\x0d\x3b\x80\xf4\xa3\xfd\x2f\x44\x1b\xf7\x36\x50\xc9\x6d\x80\x45\x8b\x3e\xa9\x1a\x66\xb7\x78\xb5\x5d\xa4\xda\x3d\x74\xfc\xec\x02\xaf\x16\x54\xab\x8d\x1b\x09\x30\x55\x37\x6e\xbf\xd7\xea\x79\x18\x62\xce\x29\xeb\x82\xf3\x83\xe8\xeb\x2f\xfa\xca\x9f\x93\x5a\xeb\xa7\x50\x57\x59\x8c\x92\xf8\x37\x49\xa4\xc3\xd4\xb5\x39\x2f\x54\xff\x82\xe5\xa8\x86\x11\x12\x28\x07\x7d\xfa\x2f\x4e\xc9\x16\x04\x6b\x63\x83\x74\x2c\x8b\xa2\xe1\xfb\x1a\x8b\x1a\xc7\xb4\x54\x30\xac\x54\x7e\xef\xb6\x89\xca\xc1\x0f\xd1\x2c\xee\x3c\x53\x05\xbc\xaf\xb3\x65\x98\x77\x5b\x53\x05\xb8\xa7\xb3\x2c\x19\xb5\x61\x13\x58\xee\xee\xb8\x90\xe7\x99\x46\x38\xd1\xbd\x7c\xca\xf4\xeb\x8b\x19\x8b\xa7\x88\x3d\xfc\x1d\x3f\xf8\xc4\x7b\xf7\xfe\xf5\x8f\xcf\xdf\xff\xf3\x97\xbf\xbf\xfa\xa7\x8a\x2e\xd0\x4f\x3f\xbc\xf9\xf9\xaf\xea\x11\xc3\x7c\x46\x49\xf4\x03\x65\xff\x39\xc7\xec\xe1\x3d\x0e\x29\x8b\x6a\x6f\x5f\x8e\x73\xd5\xb2\x1b\x34\x92\x92\x19\x32\x8d\x98\xc4\x90\x8c\xce\xc6\x26\x43\x7e\xc7\x44\xc4\x8d\x08\x6e\x5f\x0f\xe5\x8a\x50\xd5\xdc\xe5\xe3\x53\xfd\xb0\xe9\xed\x44\x55\x4d\xe4\x75\xab\x18\x85\x75\x4f\xad\x89\xa6\xd2\x9d\xbe\x81\x19\x5e\xc5\xe4\x1a\xb3\x19\x8b\x89\xa8\xd6\xe1\x86\xea\x4e\x5b\xd5\x72\x5f\xe4\xdd\xae\xf6\xef\x32\x2f\x09\xea\xee\xda\xca\xb7\xbc\xdf\x3d\x1b\x0c\xb2\x32\xfc\xe9\x9d\xee\xb3\xfc\x05\xef\xb3\xb1\xbf\x58\x41\x14\x2c\x56\xa5\x24\xd1\xe6\x3e\xbc\xa1\xda\xf6\xa8\xa4\xff\x8e\x03\x39\x43\x49\x59\xe9\x07\x99\x17\x85\x83\x81\x8b\x46\xc4\xfb\xdb\xab\xe7\x2f\x5f\xbd\xff\xf0\xcb\xcb\xe7\x1f\x9f\xbf\x78\xf5\xf6\xe3\xab\xf7\xe5\xd6\x12\x18\xc0\x3c\xec\xdb\xe7\x3f\xbe\xfa\xf0\xee\xf9\x8b\x57\x65\xd0\xdc\x07\x08\xbf\x90\xff\xf1\x33\xa6\x24\x72\x3d\x7c\xf8\xe7\x8f\xdf\xff\xf4\x66\x1c\x20\x28\x56\x70\x5e\xb3\x6f\x91\x10\x28\x9c\xfc\x4d\xd3\xa0\x9f\xc0\x1c\xf1\xf8\xee\x19\xe4\xb9\x83\x8a\xf7\xc3\x4f\xef\x5f\xbd\xfe\xeb\x5b\xb5\x87\xa9\xf7\x56\x8d\x4c\xfe\x00\xe5\x1d\xdd\x98\xeb\xff\xa8\xe9\xa4\x69\x9e\x27\x2e\x86\x2e\x0a\x18\xa4\x81\x4a\xa6\x6f\x87\xe2\x12\x2f\x63\x30\x90\x78\x86\xa9\xc8\x73\x54\x08\x60\xf1\x08\x83\xc0\x05\xf2\xa6\x68\xe6\x52\xe0\x8f\xd0\xd8\xfc\x29\x79\x81\x75\xdc\x44\x90\x2a\xef\x93\x2e\x7c\xa8\xdf\xd8\xbb\x0f\xda\x65\x8a\x2b\x15\x87\xa1\x2f\x73\x6b\xc6\x91\x5d\xb0\xe4\x53\x94\xda\x0e\xcd\x65\x70\xf6\xb1\xfa\xa1\xa6\x5c\xf3\x44\x2a\xcd\x42\x79\x6e\x12\x00\x59\x61\xcc\x1c\x52\x48\x46\x85\xb5\x1e\x03\xb7\x32\xd2\x9f\x95\xf7\xcd\x3e\x8c\xf4\xa5\xaa\x8d\xd2\x3e\x52\x5e\x1c\x69\xd2\x65\xa4\xc6\xaf\x2b\xcd\x82\xe1\x2e\x56\x30\x29\x0d\x33\x81\xbc\x66\x98\x2e\x0e\x16\x2b\x28\xf9\xae\x7c\xcb\xc7\x40\xfd\x9d\xdf\x54\x90\x8c\xf2\x3f\xc7\x00\x62\x00\x46\x89\x96\x68\x90\x50\x36\x55\xa2\xe7\xbd\x9a\x28\x2f\x3a\x2f\x68\x16\xaf\x47\xc7\x03\x56\xe5\x07\xcb\xe5\x62\x75\xa4\xab\xc6\x1c\xd7\xbc\x36\xfc\x55\xbb\x8c\xd9\x2f\xbd\x43\x0f\x09\x45\x91\xab\xfb\x96\xcc\xa4\xf0\xfa\x47\x2c\x74\x65\x7e\x0e\x13\x05\x71\xe4\xa8\xc0\x47\xe7\x44\xdd\x79\xba\x89\x37\xc5\x02\x05\x73\xbd\x05\xc3\x20\x2f\xd9\x65\xb3\xd8\x5d\x48\x00\x7f\xbe\x82\x42\xbb\x40\xe8\xe4\x16\x3a\x2f\xfa\x51\xd9\x1b\x2d\xbc\x60\x7e\xb8\x82\x22\x9e\x62\x2e\xd0\x74\x56\xd5\xbb\x5c\x82\xef\x8e\x5f\x22\x81\x81\x3c\x89\x7c\x8c\xa7\xd8\xcd\x23\x4e\xe5\xb8\x2d\x20\x4d\x49\x45\x18\x6b\xb4\x25\xc1\x22\x44\xe1\x04\x1b\xe7\x34\x1f\x8d\x98\xf7\xe2\xf9\x8b\xbf\xbd\xfa\xe5\xc5\x4f\x6f\x3f\xbe\xff\xe9\x4d\x89\x25\xc3\x70\xce\x38\x65\x7e\x9e\x7d\xbf\x7e\xfb\xf2\xd5\xff\x2d\xc3\x45\xa1\xdf\x49\x1c\x58\x87\x8c\x2e\xf2\x60\x55\x44\x8f\x94\x74\x23\xe7\x7e\xc8\x10\xb9\xc6\xce\x58\x21\x5f\xfd\x5d\x78\x0c\xa0\x59\xa0\x20\x08\x62\x05\x23\xb7\xb4\x5e\x97\x14\xad\x2e\x80\xb4\x46\xfc\x61\xb0\x28\x78\xfa\x7d\x78\x20\xa1\xc4\xb0\x03\x75\x2f\xca\xa5\x03\x26\x39\x74\x1b\xea\xa9\xf3\xc4\xc5\x9d\x12\x37\xe4\x95\xad\xac\xbc\xf2\x16\x54\xe5\x5c\x67\xbb\xaa\x31\xf7\xd5\x5d\xa5\xde\xd8\x0f\x2f\x9f\x30\xe8\x3e\x37\x6f\x6d\x52\x59\xa3\x3d\x34\x5b\x82\xac\xa6\x5a\xe4\x86\x55\x2a\x2b\xf3\x79\x6b\xa5\x26\xc6\xaa\xab\xb7\x80\xb5\xb2\x62\xa5\x2d\xd4\xb9\xc1\x0a\xc9\xaf\x49\xc0\xf2\x22\x1d\x05\x18\x12\xa9\x2a\x8b\x06\x55\x59\x6a\xdb\x1b\xb9\x7f\x8a\x11\x51\x3a\x9b\xf6\x8f\x86\x04\xa2\x82\x17\x5e\x97\x44\x04\x05\x7a\x28\xa6\x30\xdb\xc2\xa6\x29\xf7\xd8\x12\x56\xf5\x05\x7b\x9a\x1e\x4a\x2f\x6c\xc3\xd3\x74\x77\x4a\x2f\x6c\x87\xf1\xf1\x5d\x35\x91\xb0\x82\x89\xc4\x24\x9e\x67\x2a\x81\x93\xce\xe5\x94\x1b\x83\xf7\x42\xee\xed\x51\xf6\x68\x0c\x40\x83\x41\x85\xb7\x33\x21\x6d\x21\xc9\x73\x9e\x5a\xe3\x1d\xdf\x96\xf5\xae\xb3\x40\x7a\xb4\xf8\x69\x5b\xac\xde\xdd\xfc\xa0\x63\x3c\x1e\xd3\x45\xc3\x51\xb2\x77\x3f\x0d\x07\xbd\xde\xfd\x34\x1c\xc3\xba\xf5\xd3\x57\xde\xd5\xba\xb7\x6e\x28\xe9\xb2\xbe\xbe\x14\xed\xb0\xd9\x89\xb4\x07\x5a\x6e\x6e\x3b\x9a\x26\x51\x84\x66\x62\x5d\x87\xc6\x73\x55\x95\x50\x1d\x4a\xf1\xd8\x64\xb2\xcc\xa9\x14\x9f\x38\x29\xe6\x76\x96\x39\x7e\xa4\x4c\x88\x70\x48\xa3\xc6\x00\x52\x24\xe8\xa5\xca\x38\x69\x96\xb0\x36\x53\x01\x12\x82\xb9\xce\x3f\xe4\x40\xd3\x88\xb3\x4a\xac\xb3\xd0\xd1\x88\xe6\x73\x69\x15\x5c\x01\x7c\xb9\x3a\xdd\xcc\x66\x5b\x30\xdf\xbb\x67\x90\x66\xd6\x47\x65\xcc\xcf\x84\x4f\x6f\x8b\x63\xfd\x48\x68\xc3\x48\xe2\xf4\xb9\xd4\x3e\xe2\xea\xa9\x40\x05\xd6\xa6\x65\x96\x5c\xaa\x4e\x07\xa9\xf1\x08\x03\xc8\x5d\x0a\x59\xde\x9c\x23\x46\xc8\xfe\xfc\xcf\x9f\x5f\xbd\xff\xe7\x2f\xef\x9e\xbf\x7f\xfe\xe3\x18\x28\x5b\x64\x83\x54\x8d\xdb\x37\x73\xd9\x77\x62\xc3\xed\xac\xba\x79\x42\x06\x57\xe5\xf8\x8e\x13\x04\x01\xce\x2b\x17\x83\x81\x5b\xf8\x1d\x68\x97\x0a\x00\xf1\x0a\xa2\xed\xea\x53\x4f\x70\xd9\xa4\x68\x84\xad\x21\xd1\xa7\xda\x27\x4c\xea\xe3\x8d\x5f\x7d\xa3\x2c\xfb\x9d\x24\x6e\xea\x5c\xa1\x9d\xef\x7d\x07\x40\x16\x10\xed\x80\x6f\x48\x7d\x61\xbc\x4c\x7c\x62\x82\xaf\x25\xd0\x3b\xca\x84\xcf\x56\x15\x41\xdd\x18\xc4\x93\xa3\xde\xb5\x89\x3d\xfa\xd0\xaf\xee\x68\x57\x45\xf4\x5a\x13\x47\x96\xd4\xab\xde\x1a\x9e\x5b\x6e\xaf\x70\x5d\x93\x92\x5d\x9d\xc1\xa2\xdd\x51\x59\xc5\xa3\xd7\xbc\x09\x6a\x9f\x36\x7e\x08\x7b\x36\x8d\x62\xe0\x38\x50\x1f\x9c\x47\x4e\xe9\x63\xda\x0d\x24\xfd\x39\xae\x3f\x3f\xa6\xd6\x5d\x3d\x82\x74\x80\xc1\x68\x6c\x2f\xd5\xd2\x97\x23\x31\x4e\xdf\x4b\x39\x3d\x52\x87\x60\xfd\xfd\xa7\xd1\xca\xfb\xa8\xd4\x69\xda\xbe\xd5\xce\xeb\xd3\x1d\x34\x46\x1a\x47\xe1\x70\xc6\xe8\x6d\x1c\x61\xb6\x85\xdd\x5a\xec\xef\x77\x6d\x3b\xda\x3f\x35\x96\x6e\x8d\x15\x3e\x9f\x8b\x09\x65\x45\x5d\xb5\x62\xaf\x6d\xa1\x67\x56\x61\x89\xc6\x45\x75\x0b\xf2\x97\x34\xec\x26\x9a\x4b\x60\x8d\x61\x7e\xf3\x7d\x1e\x3b\x20\xfa\x92\xed\x80\xee\x42\x65\xe7\x15\x5e\x1c\xe5\xa2\x89\x85\x47\xf8\x0a\xd2\x26\xc5\x99\xb6\xf3\xb4\x6a\x40\xcb\x86\xcc\xcc\x74\xb4\xab\xaa\x47\x5f\x5e\x5f\x29\x09\xb5\x29\x5a\x54\x3f\x5f\x0a\x56\xca\x81\x3b\x1b\x22\x45\x77\x93\x7f\x1e\xdf\xc7\xc4\xd2\xd0\x29\xe2\xc3\x29\x22\x35\x58\x83\x6c\x5b\x78\xab\x39\x48\x31\xfb\x00\x6e\x8c\xc1\x0e\xaa\x7e\x4b\xa0\x4b\x0f\x24\xda\x9e\x76\x95\xb6\x9e\x4e\xf0\xb0\x82\xe0\xa9\x65\x8c\x99\xda\xcf\xa0\xa3\xa2\x86\x0c\x4e\xac\xf3\x7f\x0a\xea\x00\x28\x8f\xd7\xdc\x67\xab\xcd\xbd\x24\x39\xe6\x7c\x3b\x76\x56\xdb\xd3\x97\xbb\xaa\x9f\xc2\x6b\xb5\x12\x9f\xb1\xe1\x6a\x98\x7e\x5a\x39\x55\x0d\x84\xe4\x71\xeb\x38\x19\x44\xdb\x5a\xd1\x1a\x4d\x34\xe3\x65\x68\x23\xae\x56\x6b\x3f\x2d\x5a\x14\xcd\xc2\xae\x4f\xb9\xa2\xd5\xbb\x80\x78\xef\xe7\x09\xe6\x2a\xb1\xe3\xe2\xf5\x4b\xf9\x21\x1c\x32\x2c\x5e\xbf\x54\x5b\xd6\x27\x5e\x2e\x42\x04\x7e\x7c\x98\xc9\x47\xf2\x1f\xa8\xda\xf9\xa6\xfd\x0a\x40\x32\x18\x18\x7f\xad\x5c\x1f\x24\xaf\xe4\x7e\xc0\xc9\xd5\x1a\x72\xac\x25\x5f\x05\xb6\x81\x5f\xdf\x7a\xab\xea\x1a\x42\x4f\x6b\x76\x2b\xe4\xd8\x40\x97\xc1\x20\xc5\x97\x7d\xb4\x5c\xba\xd9\x8f\xdc\xf9\x5f\x01\xbd\x7e\x69\x13\x37\x31\x8f\x0b\xca\xb0\x37\xc3\xf8\xe6\x79\x92\xb8\x8e\x26\x5c\x60\xf2\xcc\xb8\x8e\xc5\x95\x03\x55\xb3\x23\x24\xd7\x22\xc5\xa0\xea\x0b\x12\x2f\x8b\x09\xca\xc5\xef\xa0\x62\xac\x50\xaa\x93\xaa\x5d\x6a\xb7\x28\x24\x9d\x55\x4f\x9d\x7a\x7a\x28\xf7\x25\x4a\xea\x6e\x42\xb9\x40\xec\x1a\x09\x5c\x05\xde\xaf\x58\x06\x3d\x76\x75\x21\xb1\x36\xac\x55\x41\x3c\x71\x05\x1d\x2b\xf6\x2c\xc7\x37\xb7\x19\xeb\xa6\x66\x76\xb6\xc9\xa2\x97\xed\xed\xae\xd7\x90\x7a\xfa\x97\x82\xa2\xf5\xd3\x57\x10\x5f\xea\xf4\x4d\x86\x46\x53\xb2\xab\xa5\xb2\x4d\x6a\x10\x11\xfd\xb3\x10\x93\x34\x03\x73\xa9\xc1\x76\x73\xc8\x96\xbe\x60\xb2\x05\x9f\xd8\xbc\xc0\x47\x6b\x93\x06\x93\x2c\x69\x30\xeb\x99\x34\x38\x97\x2e\x98\x55\xd3\x05\xb3\xba\x74\xc1\x6a\x2c\x26\x63\x30\xcb\x32\x06\xb3\xda\x89\x29\xe0\x42\xee\x60\xd6\x3f\x77\x30\x03\xc5\x99\xae\xf6\x35\x0b\x36\x79\xea\x4c\xc7\xdb\x52\x65\xeb\x77\x77\x44\xa7\x4d\xe5\x09\xe9\xd4\x01\x10\x93\xdb\x86\xf7\x98\xdc\x3a\x00\xf6\xaf\x6f\xa8\x1e\x34\x95\x37\xcc\xa5\x48\x95\x84\x7e\x8a\x6f\x31\x11\xa6\x13\x07\xc0\x98\xc4\x05\x11\xd3\xaa\x5c\x41\x0d\x91\xc4\x5c\x60\x82\x99\xf1\xd8\x8f\xe8\xd4\x4b\x1f\xb9\x06\x28\xc7\x77\xd4\xda\x7c\xc0\x42\xbf\x40\x51\xf4\x8f\x98\xc7\x97\x71\x12\x8b\x87\x17\x13\x44\xae\x95\x5b\xf8\x5d\x9c\x24\x2f\x31\x17\x8c\x3e\x54\x87\x94\xf6\xee\x69\x2f\x05\xfb\x91\xd9\x9c\x5d\xa7\x3f\xd6\x0d\x7c\x05\x6b\x3e\x5b\x9f\x1e\xf6\xa8\xfc\x49\x14\x45\x6e\x3a\xcf\x88\x86\xaa\x4b\x17\xc0\xc5\x6d\xda\x5f\x58\xea\x4f\x80\x85\xcd\x55\xe8\x4d\xe2\x28\xc2\x2a\xd1\xb8\x19\xad\x14\xdc\xf0\x6e\x82\xc9\xf3\x5b\x14\x27\x4a\xda\xd7\x5f\x46\x41\x12\xd4\x7c\x37\x55\x70\x4d\xcf\x17\x12\xbb\x26\x19\x60\x4e\xd9\x63\x69\xfd\xca\xf2\x5c\xc8\xba\x91\x83\x05\x72\x01\x54\xe5\x2b\x94\x7e\xe1\x97\xd3\x0c\x62\xb0\x82\x6a\x22\x55\xec\x55\x22\xbf\xce\x6a\x23\xbf\xce\xf2\x86\xd6\xb3\xb1\x7f\x76\x24\xdc\x32\xc9\x34\x98\x35\x6d\x72\x58\x5d\xbe\xb1\x89\xce\x56\x10\x85\xbf\xce\x63\x86\xcb\xe9\xbb\xcb\x0d\x3c\x1e\xff\x86\xbf\xd3\x48\xc6\xe4\xd6\xbb\x45\xcc\x75\x5e\xfc\xf4\xf6\xc3\xcf\x6f\x7e\xf9\xdb\xc7\x8f\xef\x7e\xf9\xf1\xf9\xff\xfd\xe5\xc5\x4f\x6f\xdf\xbe\x7a\xf1\xf1\xf5\x4f\x6f\x3f\xd8\x84\xde\x76\x5d\x90\x40\x5e\x98\x50\x8e\x23\x89\xb3\xa0\x76\x1a\x31\x89\xea\x2e\xed\x4e\x4e\xb0\x67\xe2\x0e\x5d\xa0\x62\x02\xf0\xaf\x73\xcc\xc5\x30\x8e\x9c\xf1\x60\x40\xb2\xa2\x90\x6b\xe0\x24\x16\x8e\xb2\x54\x6f\x83\x81\x23\xf0\xbd\xb0\xbb\x5c\x95\x56\x51\x77\xfc\xf9\x1e\x42\xaa\xdc\xa9\x86\x92\x1f\xa8\xc8\x04\x93\x1d\x33\x8f\x16\xc5\xfd\xb8\x0b\x3c\x82\xef\x85\x0b\xf4\xef\x7c\x50\x9d\xe4\xc4\xfa\x48\x93\x60\xc4\xb1\xcb\x00\x64\x66\x69\xfe\xf0\xec\xff\x00\xb0\xaa\x74\x29\x09\x0f\xab\x83\x8e\x6a\x51\x2d\xa4\x9d\x07\xd6\xe7\x2c\x4d\x83\xa5\xd3\x77\x6d\xfe\xac\xa2\xc6\x53\x75\x73\xec\x1c\xf5\xd9\x39\x64\xd4\x04\x7a\xce\x59\x1b\x44\xdb\x57\x34\x94\xf2\x81\x1f\xea\xbc\xf2\x5d\x9d\xaf\x52\x35\x6d\x5a\xaf\x19\xe5\xb4\xaf\xa0\xa8\x7d\x2d\x97\x27\xee\x5a\xfd\xcb\xaa\x54\x9a\xd6\x47\x63\xc8\x82\x93\x33\x88\x82\x93\x73\x48\xad\x14\x14\xec\x21\xbd\x6c\xe1\x30\x0e\x70\x8d\x8c\xff\xf6\xc4\x65\x81\xcb\x83\xd8\x10\x12\xf0\x22\x4a\x30\x50\x07\xc0\xd9\x9c\x4f\xfe\x3f\xf6\xde\x7d\xb9\x6d\x1b\xed\x03\xfe\x3f\x57\xc1\xf0\x9d\x71\xc5\x59\x48\x3e\xc4\x69\x53\xed\xab\x4d\xd3\x24\x6d\xf3\x36\xa7\xcd\xa1\xdd\xd6\xf5\x64\x60\x12\x92\x58\x53\x84\x16\x84\xec\xa8\xb6\xbe\x6b\xf9\xae\xe5\xbb\xb2\x6f\x70\x22\x41\x12\x24\x41\x89\xb6\xec\xd4\x99\xd9\xad\x2c\x11\x20\xf0\xe0\xf0\x9c\x7f\x4f\x2f\x51\x5b\xeb\x3e\xbd\xbc\x8c\xe5\xb5\x71\x7f\x34\xa2\xde\x3f\xd9\x2b\xbd\x7f\xae\x7c\x48\xfd\x69\x2f\xf2\x2e\x20\x1b\x02\x1e\x45\xab\x71\x18\xc3\x28\x5a\x5e\xb0\x01\x90\xcb\x4b\x21\x28\x84\x03\x31\xe4\xcb\x4b\xf5\x89\x09\x15\xf2\xc9\x70\xdc\x83\x9e\x10\x80\xf0\x2a\x73\x02\x72\x4a\x5d\x5e\xfa\xf2\xbf\x0b\x5d\x0c\x09\xdb\x8b\xc1\x41\x26\xa4\xf2\xff\xf7\x6f\xab\x08\x16\x69\x73\x9f\x95\x26\x94\x23\xd3\xe2\x36\x94\x19\x49\x47\xeb\x5b\xd7\x18\x09\xbe\xe0\x1a\x23\x41\x45\x8d\x91\xe0\xda\x6a\x8c\x8c\xaf\x44\x3f\x4c\xbb\x9f\x35\x56\xcd\x49\x1f\x9d\x7f\xd1\xc1\x0d\xd3\x2b\x71\x88\xcf\x6d\x1c\xe2\x27\xd7\xeb\x10\x9f\x6f\x27\x31\xe6\xe4\xd6\x44\x8f\x70\xf9\x9d\x42\x42\x7f\xd5\xf5\x0e\xc5\xcb\x2b\x7e\x35\x04\x35\xe9\x24\x65\x27\x78\xcf\xcd\xd5\xa5\xa0\xc0\x45\x8c\x01\x24\x03\xdd\xf1\x25\x80\xde\xdc\xec\x00\x0e\x72\xda\x4f\x8f\xaa\xea\x64\x74\x25\xa0\xd2\xce\x46\xf9\xd0\x63\x14\xfb\x38\x40\x1f\xdf\xbd\x78\x8a\x67\x73\x1c\xa3\x98\x7a\x60\xc9\x9e\x21\x75\xcf\x80\x33\x0f\x4c\xd8\x53\x30\x7b\xca\x03\x9f\x46\xe6\x70\x11\x9e\x5c\xc8\x08\x11\x2c\xfc\x42\xa8\x4b\xb6\xc2\x02\x40\x99\x66\x21\x9a\x7f\xc4\xae\x57\x17\x97\x47\xc2\x59\x8f\x57\x89\x17\xc1\x9a\xec\xf1\x0c\x50\xc9\xfd\x23\x66\x5f\x3c\x8e\x87\x68\xe5\x31\xe6\x01\xca\xe8\x19\x00\x6a\xf7\x2b\xf9\xd7\xfe\x63\xd2\xdf\x1f\xee\x79\x00\x8f\xf6\xff\x89\xff\x97\xfc\x13\xff\xe3\x1f\x1e\x3c\xc2\xfd\xfd\x63\xed\xe4\xe2\x63\x1d\x7b\x2b\xe6\xb7\x37\xe4\x43\xf6\x51\x2f\xf6\x2a\x27\x59\xc4\x0f\x2c\x22\xd3\xa9\x24\xcd\x3d\xc1\xd6\x7a\x88\xbb\x05\x90\x82\x3a\xa3\x02\xe6\x4f\xb1\xd5\xf4\x4e\x4f\x21\xf4\xa6\xbd\x69\xef\x62\x05\x10\xc7\x81\x28\xc0\xeb\xd1\x15\xf7\xb7\x79\xe0\x88\xa6\xc5\x84\xa0\xb7\x02\x6f\x46\x47\x34\x9f\xf7\x0d\xdc\xff\xf4\xdf\x49\x2d\xe8\xc5\x33\x97\xff\x29\x12\xaa\xc1\xf3\x35\xcd\x32\x9a\xf2\x51\x5f\xef\x46\xb7\xa6\x7a\x80\x57\xfc\x61\x4a\x46\x7d\xa3\xf4\xb1\x64\xf7\xf3\x94\xf0\x14\x01\x51\x13\xa7\xb9\x64\xce\xd5\x58\x68\xd6\xb4\xb6\xd4\x1b\x58\x16\xc4\x54\xe7\x71\x59\x69\xcc\x06\x27\x38\x58\x1a\x5a\x7c\xaa\x6e\x21\x75\x5f\x59\xc9\xd9\x74\x8e\xe3\xf2\x01\xd2\x05\x94\xf8\x5f\xfb\x8f\x63\x71\x80\xe0\x68\xff\x9f\xf0\x7f\xe3\x7f\x42\x2e\xac\xc0\xfc\x01\x82\xc7\xca\xbd\xc9\xe6\xcd\x06\x5a\x41\xed\x64\x14\xf5\x38\x14\x43\x72\xb4\x77\x0c\xfc\x51\x92\x16\xbf\x02\x81\x68\xbc\x20\x51\xae\x90\x16\x4a\x77\x77\xd8\xf3\x3d\x2f\x45\x5a\x77\x5c\x0f\x8c\x47\x51\x2f\xf0\xc0\x6c\x34\x66\xbd\xcd\x47\xe3\xac\xb7\xe5\x68\x2e\xef\x10\x27\x43\x67\x67\xb7\x07\xf8\x34\x8a\x7a\x4b\x0f\x3c\x1f\x7d\x62\x8d\x3e\x8f\x3e\x65\x8d\xfe\x1c\x5d\xb0\x55\x79\x2e\xef\x21\x20\x64\xe2\xe1\x4c\xfd\x2d\x95\xd3\xe1\xb4\x77\xc2\xce\x25\x1d\xb0\x13\xf6\xfc\xf5\x87\x4f\x1f\x7e\x7b\xfb\x1c\xe8\xd5\x91\x38\x74\xd9\x3f\x1d\x7f\x0a\x49\x82\xe8\x68\x41\xc7\xfd\x47\xae\x07\x26\xbd\xcf\x9e\x27\x16\x92\x49\x0f\xc2\x7c\xb9\x58\x31\xd9\xe9\x4f\x59\xce\x47\x86\x05\x8e\xde\x18\x6f\x9d\x42\x91\xa3\xfb\xa3\xd1\x9f\xca\x58\x21\xc3\x8b\xcb\x18\x3f\xfa\x13\x40\xba\x64\xf5\xef\x78\x08\x32\xb8\x58\x69\x06\x8b\x85\xc7\x98\xd5\x8f\xcf\x3f\xb8\xfc\x0d\x82\x0e\x1e\xbf\x1d\xb5\x96\xb9\xe9\x1f\x67\xd7\x34\x07\xa8\xf3\x1e\xff\xc9\x37\xc2\xe8\xff\xde\xbf\x79\x3d\x10\x57\x5c\x38\x5e\xf6\xfe\xe4\x66\x20\x6f\x58\xd6\x26\xc4\x2f\x3b\x3b\xe2\xbf\xa9\x4d\xec\xf2\x52\x17\x34\x65\xf3\xf4\x57\x26\x6a\xcb\x17\xc9\x9f\xee\xa1\x28\x41\x5c\x44\x7b\x3b\x3a\x53\xcf\xdf\x7b\xab\xd9\xd8\x7a\x72\x22\x6c\xab\xa5\x83\x7e\xcc\x47\xbc\x20\x91\x06\x5b\xc9\xff\x06\xee\x4e\x86\x4e\xf9\xd6\x1b\x56\x3c\xf4\x58\x7f\x28\x15\x7e\x2a\xa9\x35\x6a\xdc\x2d\xe0\xcf\xf4\x00\xb7\x09\xbe\xcf\xce\x76\x77\xcc\x51\xe5\x82\xe5\xee\x13\x75\x4a\x0d\xb1\x04\xec\x6e\x16\x57\xb2\x5e\x3d\x25\xf5\x74\x97\x2b\x77\x89\xe1\x4a\x76\x17\xf2\xdc\xde\x8b\xc2\x61\xcb\x30\x45\x3e\xbc\xf9\xf9\xf9\x6b\x3d\xb8\x5e\xf9\xc6\x1f\xbb\xee\x30\xfb\xcb\x03\xa1\x22\xbe\xb7\xf2\x78\x3e\x4e\xca\x58\xd4\x4c\x7a\x24\x33\x0f\x1b\xad\xc2\x5a\xa1\x88\x92\x5d\x18\x82\x0b\x3c\x47\x71\xde\x34\x37\x90\xa6\xd4\x1e\x92\xf6\x6c\x6f\x05\x66\x28\x49\x60\xc1\xdc\x2d\x2e\x5f\x39\x63\xb9\xc1\x51\x4c\x09\xaf\x1a\x26\x0e\x80\x1a\x7c\xc5\x45\x20\x7a\x48\x7a\x14\x1c\xf0\xb4\x17\x76\x9b\xc1\x51\x7c\xb4\x9f\xaa\x90\x6f\x32\xa3\x28\x87\xec\x44\xbc\x44\x57\x7a\xdc\x19\x81\x72\x77\x0e\xeb\xc6\x18\x98\x1f\x03\x39\x24\x22\xb1\x7b\xbc\xd5\x3d\xc1\x8a\xc9\x22\x16\xb6\xaa\x72\x22\x81\x83\x24\x02\x26\xe0\x22\x6e\x8e\x4c\xcd\x8d\xe3\x1e\x1a\xf0\x76\xa2\x0b\x6e\x35\x2e\x50\x5a\x19\x53\x53\x4a\x03\xc2\x9d\x05\xf7\xe0\x60\x8c\x98\x5c\xa6\xf0\x37\xbd\x5a\xff\x81\x1e\x18\xa2\x1b\x55\xf3\x32\x37\x2f\x7e\x7f\xc2\x44\x97\xa2\x19\x5f\x52\xbb\x87\x4a\x76\x61\x4f\x78\x30\xe4\x41\x41\x79\xf7\x4a\xd1\xe2\x6e\xd1\x9b\x6c\x63\xec\xaf\x64\x27\xb6\xe8\x4f\xb6\x31\xf5\x97\xb3\x23\x3f\xb7\xf3\x9c\x17\xc4\xb6\x66\x8b\xb2\x9d\xc9\x97\xf7\x65\xfe\x49\x9e\xe2\xaa\x9f\xf9\xfe\xa9\x0a\xe8\x4a\x95\x52\xfc\x45\xdb\x34\x92\x2b\xb1\x69\x60\x1b\x9b\x46\x78\xbd\x36\x0d\xbc\x1d\x9b\xc6\x2d\x45\xa2\xcc\x97\xbe\xcd\x03\xbc\x7b\x4c\x40\x37\x2b\x86\x9f\xa7\xc6\xcc\xcc\x48\xfa\xaa\x2a\xa4\x15\xe9\x98\x05\x98\x8b\x1f\xa9\x11\xa2\x87\xa4\x64\x09\x10\x97\xa1\x7a\x61\x8f\xdb\x15\xf2\x5e\x3b\xa6\x2f\xeb\x5c\xaa\xe4\xd4\x03\x61\x8f\x02\x97\x89\x80\xec\x59\xc6\xa7\x2e\x2f\x2f\xa4\x72\x1c\x8d\x92\x5e\x22\x75\x68\x26\x54\x88\x5a\xc5\xef\x51\x9c\x4f\x41\xc3\x03\xc6\xc9\xf9\x24\x7c\x1c\x9f\x21\x42\x99\xe4\x71\xc1\xdd\x83\x0e\x17\x67\xf3\xbc\x87\x2c\xd5\xcc\xb9\x74\x3b\x67\x72\x1b\x6b\x2d\xbc\x2f\x54\x07\x0a\x5b\x81\x64\xc1\x63\xf2\x86\xe5\x00\x79\xac\x62\x1c\x7b\xa9\xb4\x83\x80\xe2\xb1\x43\x0a\x24\xe2\x7f\x2c\x3f\x7c\x40\x9f\x29\x8f\x7d\x2e\x71\x54\x79\xad\xc9\x0b\x29\xbc\x17\x8e\x92\xd4\x4d\x80\xc7\x0e\x77\x32\x3c\x4e\x86\x8c\xfa\xa9\x71\x87\x6f\x6a\x80\x05\x97\xed\x85\x7c\xea\xb3\x39\xd3\x0e\x74\x26\x82\x85\xc3\x56\x30\x56\x95\x61\x2e\xf8\xeb\xc8\xc0\xb5\x07\x9f\xa7\xa4\x17\x79\x00\xaf\x00\xb6\x05\x49\x4b\x99\xc8\xfc\x04\x43\x12\xec\x46\xd8\x87\x51\x3f\xa1\x98\xc0\x49\x31\xfa\x5e\x3d\x54\x8e\x42\xd3\x23\x62\x32\x40\xbd\x91\xab\xbe\x2f\x3a\xf5\x76\x76\xdc\x84\x7f\x28\xfe\x90\xda\xd0\x1f\x9b\xa4\x04\xe9\xf8\x58\x19\x33\x18\x77\x76\x6a\x5e\x97\x73\x61\x8c\x46\xa3\xf4\xfb\xfb\xea\x73\xe6\x32\x79\xac\xc6\x36\x4c\x5f\xe8\xe5\x6c\xf6\x32\xcb\x50\x73\x2c\xfc\x33\xfe\x5f\x5a\xaa\x13\x4a\x46\x94\xbb\x14\x34\xce\x31\xd2\xff\xb8\xbc\xbc\xbf\x0f\xc8\x40\xbf\x7b\x46\xf7\xf7\x80\xcb\xef\x0f\x37\x8c\x1d\x1e\xb2\x35\x50\x77\xd1\xe8\xfe\x5e\x75\x5c\x26\x61\x5c\x93\x31\xa1\x42\xb6\x60\xba\x18\x50\xf1\x49\x51\x23\x57\xcc\xf4\xcd\xb8\xe8\x8a\x4d\x8d\x81\x9f\x3e\x71\x7a\x7c\xfa\x34\xa2\x80\xcf\x1f\xd0\x7c\x01\x7c\xa5\x0b\x69\xfb\xb0\xc2\x8f\xfb\x0e\x8d\x23\xe4\xd3\xcb\xcb\xfb\xf2\x53\xb6\x16\xd2\xc8\x7a\x7f\x9f\x31\xfb\xd2\xaf\x83\x64\x0a\x67\xb9\x47\x0c\x2b\xfc\x96\xe0\xcf\x4b\xf5\x90\xf0\xf4\xca\x49\x3c\x83\x14\x55\x3a\xc2\x4a\x2f\xeb\xb1\xc7\xc1\x91\xbe\xb5\xbd\x0b\xce\xe9\xef\xef\xc9\xab\x25\x8b\x87\xd8\x5f\xad\xb2\xd8\x96\x82\xd4\x17\x03\x32\x0a\xa5\xfc\x42\x55\x5c\x4b\x28\x8a\x99\xeb\xbb\xf0\x5e\x3c\x2a\x0f\x82\x64\x72\x20\x80\xde\x8a\x69\xd3\x4e\x3c\x6a\x88\x1e\x4f\xc4\x0f\xb1\x57\x2e\xc2\x2f\xc7\x4b\x2f\x2f\x5d\xe1\x8b\x74\xef\x8f\x46\x8c\x1f\xeb\xa7\x25\xb3\x7d\x3e\x2e\xb8\x8f\x33\x3d\xcf\xcb\x3c\xa7\xef\xd0\x18\x11\x14\xfb\xca\x7d\xca\x5e\xee\x4c\x61\x12\x7f\x45\x9d\x13\x84\x62\x27\x8c\x43\x1a\xc2\x28\x4c\x50\xe0\xf4\x1d\x11\xee\xed\xe5\x9e\x60\x4b\x80\x82\xac\x8a\x35\x5a\xf5\x90\x37\xa4\x46\x97\x76\x2f\x34\x6f\xdd\xc7\x99\xdc\xa0\x7d\x6b\xbc\x1a\xb2\xdd\x9c\xda\x33\xf2\xad\x78\x8c\x4e\x97\xb5\xff\xf5\x51\xf4\xca\xd1\x0e\x06\xd2\xa7\x41\xed\xd4\x33\x3a\xa9\xdf\x33\x32\x3a\xe8\xf3\x9c\x88\xcc\x17\xe1\x53\x46\x21\x9d\x22\xe2\x9c\x20\x9e\x42\xe0\x60\xe2\xc0\x74\x3f\xba\x8c\x03\xa4\xfb\x5f\x11\x51\xd6\x5d\xa5\x3b\x3b\x9a\x97\x18\x5c\x68\x1b\x73\x28\xe7\x87\x74\x31\xa8\x28\x22\x71\x03\xf8\xce\x8e\xb8\x64\x56\x5e\x2f\x02\xc8\x4b\xe1\x07\x13\x10\x8e\x70\x2f\xf2\xee\xe9\x6e\xfa\x54\xce\x2f\x9d\x9b\x34\x3c\xb6\x87\x74\xc6\x49\x3d\x33\x25\x9e\xc2\x38\xc6\x94\xef\x21\x07\x3a\x7e\x04\x93\xc4\x81\x49\x6e\xe2\x2b\x71\x22\x22\x0f\xf4\xe2\x51\x28\x4e\x3c\xff\x06\x79\xde\xe0\x93\x7f\x32\xa2\x20\x4e\xe3\xf3\x47\x11\x7b\xea\xe8\xe2\x14\x2d\x87\x2e\x8e\x9f\x46\xa1\x7f\xea\x02\x41\x83\x52\xe4\xcf\x27\xff\x44\x44\x13\x31\xe9\xa4\x87\x78\xf4\xcf\x04\x52\xf4\x81\x6b\xc1\x97\x97\x68\xe0\x2f\x08\x41\x31\x15\x5f\xa8\xc0\x2f\x34\x0b\x69\xcf\x95\xc2\x88\x0b\x2e\x56\xde\x6a\x75\xec\xed\xec\x90\x9e\xbe\x0a\xb1\x07\x12\xfe\x1d\x48\x3c\x10\xad\x7a\x99\x58\x58\x29\x13\x4a\x4e\x3d\x3c\x0f\xe3\x00\x9f\x0f\x38\xfb\x7e\x2f\xbe\x03\x7c\x42\x19\xd7\x06\xa5\x68\x6e\xa3\x41\x8b\x51\x9b\x03\x6b\xe7\x15\x7e\xf9\x22\x76\x08\x5f\x50\x34\xeb\x71\x3d\x0d\x20\xaf\x04\x10\x60\x2f\x6b\xe0\xc4\x5a\xc0\xb8\xe6\x30\xf7\xec\xee\x60\xd4\xa0\x99\xcc\xdc\x36\xac\x1d\x07\xa8\x3f\x0b\xb9\x2a\x9c\x9b\x6a\x78\xb6\xec\xb3\x1f\xc5\x6f\xe6\x06\xb7\x31\x8b\x43\x1b\xff\x6e\x24\x2a\x0a\xd4\x9a\x22\x50\x10\x52\xf9\xe8\xd5\x2d\xfa\xd1\x45\x0c\x67\x68\xe8\x32\x75\xc1\x05\xb3\x90\x7d\x2e\x1a\x80\x5d\x5e\x90\x7b\xe8\xfe\x09\xcf\xa0\xd0\x3c\xd9\x79\xa1\xc3\x23\x61\x50\x07\xee\x0c\xce\xdd\x63\x00\xa3\x10\x26\xf2\xcb\x87\xee\xf1\x0a\xc8\xae\x7f\x7a\xfa\x52\xf5\xcc\xa3\x1a\x3f\xf7\xc9\xe2\x64\xa9\x3a\x15\x9f\x45\x77\xe4\x44\xef\x46\xfc\xe2\xce\xa0\x2f\x3f\x11\x78\x8a\xd8\x7f\x4e\xf8\xff\x7d\xd6\x5e\xf1\xdb\x93\x57\xc5\x77\x2c\xe1\x2c\x52\xef\x10\x9f\xc5\x3b\xc4\x67\x77\x39\x8b\xb4\x77\xf1\xbf\x56\xc7\x60\xdd\x68\xf0\x19\xcf\xfe\x34\xa8\x1d\x2b\xc0\x96\x6f\xad\x1c\x11\xb6\xe1\x9e\xf3\x2d\x50\x69\x15\x0c\xf0\x6c\x80\x22\xc4\xc3\x89\xf9\xbc\x21\x41\xd0\xf9\x87\x13\x84\x67\x2e\x40\xde\xe0\x29\x0e\xd0\x2b\xbe\xe1\x6c\xb3\x1f\xc5\x4e\x15\x11\xea\x61\x7c\xba\xcb\xef\x5f\x1f\x47\x65\xcc\xc9\x9a\xbc\x13\x4d\x58\xb6\x0c\xb9\x43\x15\x49\x21\x77\xa1\x8f\x76\xa1\x8f\x77\xd9\x34\xd6\xd9\x34\x79\x7a\xdd\x82\xa8\xc7\x2f\x28\xa9\xa6\x4d\xb8\x84\x84\x0a\x6d\xce\x87\xc9\x50\x45\x3d\x70\x5a\x95\x94\xa3\x3d\x7f\x7a\xc6\x03\x37\xb8\xa2\xd0\xfc\xb4\xca\xa5\xf7\xc0\x9c\xa0\x39\x24\x65\x80\x9d\x1c\x48\x98\x50\xc3\x94\x81\x38\xe6\x29\xc1\x73\x44\x92\x30\x67\x7d\xd4\xad\xb2\xd3\x30\x39\x62\xc2\x72\x56\xa7\x1d\x1c\x7a\x47\x0f\x8e\x8f\x07\xb2\x5d\x2f\xe6\x16\xcc\x19\x3e\x43\xad\xbb\x90\x61\x1f\xc5\xc4\xda\x75\xee\xff\x4a\xe3\x57\x77\x65\x0b\xb5\x1d\x44\x37\xde\x41\xa6\xe5\x52\xce\x84\xb5\x2b\x1b\xe9\x39\xe9\x23\x7e\x00\x39\xf6\x22\x7d\xac\x76\x92\xe5\xfa\xd3\xd4\x1c\x02\x20\xc0\x23\xa4\x01\x05\xe6\x40\x02\x05\x9b\x4f\x7d\xd6\x6a\x47\xf4\xe0\x88\x82\x1e\x19\x61\x2f\x8c\x7b\xf1\xe8\x62\xe5\x55\x98\xf5\xd9\x0b\xd6\x42\xcd\x8f\xb9\x47\x16\xc4\x9e\x69\xef\x65\x20\xa8\x76\xc3\x96\x59\x20\x45\x0c\x06\x6a\xbd\x0b\x9b\xcb\xe3\xdf\x89\x1f\x77\xe2\xc7\x9d\xf8\x71\x27\x7e\x54\x62\xe4\xf6\xf7\x79\x44\x4e\x1a\x55\x35\xdc\xdd\x15\xb0\x9d\x23\x79\xf5\xb0\x2f\x54\x9c\x14\xf2\x58\xcf\xea\x72\x63\x4f\xae\x00\xac\xe0\x48\xb2\x75\x5d\xaa\xaf\x41\x91\x6a\x0c\x1d\x6d\x66\xc1\x46\x16\x17\x03\x28\x11\x95\x47\xb4\x47\x7a\xc8\x03\x07\x1e\x48\x46\xf8\x68\xef\x18\x84\x23\xac\xc5\xe0\x70\xa9\x21\x39\x1e\xc8\x4e\x7a\x21\x6f\x5b\x25\xad\xc8\x0c\xd4\xb4\x4b\x3c\x82\xac\xcb\x64\x04\x8b\x5d\xe2\x4c\x70\xe1\x66\x77\xb3\xe8\xd2\xaa\x3f\x29\xc5\x24\x25\x80\x90\x6a\xac\x2c\x9d\x83\x88\x4c\x6b\x6b\x4d\x96\xf3\xb6\x7b\xf9\x3d\x7f\x7d\x6e\x74\xdd\x91\xb6\x31\x1b\xbb\x69\xe0\x0d\x70\xfd\x6c\xac\x35\xf2\xb0\xf4\xfb\x5e\x4f\xc5\xb2\xbc\xef\xd7\x4a\xca\xca\xcf\x74\x6d\xf0\x86\x1b\x71\xdb\xc3\xdb\x71\xdb\x63\xf3\xc5\xdc\x8b\x7b\x74\x74\xc1\x6e\x00\x1f\xc5\x3c\x6a\xa2\x51\xd7\x0b\x7c\xd7\x03\x31\x37\xe5\x35\x3e\xcb\x51\xde\xc5\xd3\xd6\x0f\x4f\x20\x45\xe7\x70\x69\xd1\xbb\x06\x0b\x21\xef\xb2\x35\xda\xb4\x68\xb2\x02\xae\xfc\xdc\x57\x3b\xcc\x05\xf6\xcd\x3d\x10\xf7\x28\x70\xe7\x04\x7f\x0e\x51\x62\xd1\x52\x20\x5a\xea\xed\x96\x6d\x5e\x9c\x6f\x5e\x2a\xc9\xd5\xbc\xd0\x85\x16\xaa\xa7\xac\x7e\x9d\xcd\x24\xb4\x6a\x77\xaa\x03\x69\x2d\xb0\x69\x9d\x1a\x16\x64\xd3\x58\x81\x09\xda\x34\x96\x18\xed\xaa\x6d\x6a\x02\xb1\x69\xab\xd9\x4b\x8a\xcd\xd7\x6a\x7d\x7a\x66\xd1\xec\xf4\x2c\x7d\x5e\xe2\xe1\x35\xe3\x9c\x88\xa0\x6c\xb5\x47\x54\x21\x7f\x8b\xdd\x21\x50\x64\x73\x2d\x97\xed\xdb\x11\x5e\x6c\xbf\xb9\x19\x07\x22\x55\x8d\x70\x18\xf8\x16\x6d\xf2\xa8\xdd\x29\x65\x96\xf3\xca\xdd\x5f\x2d\xca\xec\x9e\x44\xd8\x3f\x65\x0c\x37\xdd\x85\x02\x16\xa6\xe8\x32\x12\x16\x07\x5e\x9a\x73\x44\x72\xe6\x22\x9e\xf8\x26\x8a\x94\xe4\x72\xf3\x3c\x10\x8e\x92\xa3\xfd\x63\x10\x8d\x92\xa3\x83\x63\x9e\x1d\xf3\x40\xcf\x8e\x39\x54\xd9\x31\x47\x8b\x63\x55\x0e\x50\xb9\xd1\x9f\x9f\xa1\x38\x17\x02\xb3\x11\xb6\xc8\xc5\x0a\xd0\xd1\x05\xa3\xd0\xd0\x95\x61\xeb\xae\xc8\x52\x41\x2b\x10\xe7\x33\x17\x79\x44\xf8\x0c\x51\xe8\x7a\xbc\x3a\x6b\x2e\x33\x85\x71\x76\x51\xc2\x73\x67\x27\x18\x10\xc4\x44\xfe\x30\x42\xbd\xd8\xe3\x75\x9d\x65\x2d\x43\x8d\x6f\xb8\x43\xfe\x8d\x76\x3e\x87\xb1\x29\x1a\x3d\xe0\x29\x05\x4f\xb8\xe8\xb2\xba\x77\x42\x10\x3c\x95\x59\x74\xf2\x0a\x57\x1d\x31\x06\x23\x3f\x8b\x3d\x26\x3e\xa7\x3b\xbc\xa1\xfb\xef\x97\xcf\xd2\xc1\xf5\x22\x10\x82\xc2\xeb\xb4\xcb\x60\xc8\x48\x3e\x1e\x91\x9e\xef\xa9\xd5\x81\x22\x25\x09\xeb\x29\x49\x50\x4e\x7a\x8c\x49\x5f\xdd\xe9\x75\x83\xf8\x7e\x29\x79\x6d\x0f\x83\xfc\x00\x54\x2a\x60\xfb\x19\xac\xb4\x19\xe8\xd7\x30\x9f\xc2\xac\x30\x85\x99\x98\xc2\xcc\x3c\x05\xce\x6d\x1b\x87\xf0\x1a\x07\x62\xfc\x85\x97\x2b\x26\xc6\x5f\x3c\x2f\xbc\x78\x2e\x5e\x3c\x5f\x9f\x76\xfc\xdd\x3c\xeb\x24\xa5\x9d\xfe\x76\x25\x22\x88\xd7\x4f\x0b\xaf\x9f\x8a\xd7\x4f\xd7\x7f\xfd\x8f\xa2\xff\xba\x21\xa4\x3c\x8c\x0f\xe1\xa4\x30\x84\x13\x31\x84\x93\x35\x49\xaf\xd1\xbd\xf4\x62\x71\xe1\xeb\xad\xb5\xc6\x09\x8a\xc6\x3d\x9f\xdf\x45\xc6\xd3\x25\x0f\x51\x91\xb3\x67\x47\xae\x69\x47\x33\x7a\xf8\x6c\x72\x86\x23\x55\x92\x8d\x86\xe9\x56\xd1\xe4\x96\xba\x17\xbc\x90\x0f\xe9\x2f\xe2\xb3\xf1\xd9\xbd\x6a\x78\xa5\x64\x46\xe2\x45\xa7\x67\xf2\x43\xc6\x7d\x87\xf1\xa8\x87\x47\xac\x1f\xcf\x14\x0e\x9a\x9b\x56\x4a\x6d\x83\x1f\xba\x88\x0a\x15\xa8\x20\xa8\x8b\xec\x8c\x0e\x23\x0d\x15\x39\x5c\x79\xf9\x91\x72\x96\x37\x14\xd9\xde\xf9\xbd\x72\x26\xf6\xca\x59\x79\xaf\x28\xd6\xb7\xf1\x65\x97\xf2\xd0\x8a\x6d\xa3\x53\x41\x2e\x6e\xbe\x03\xa8\x0a\x27\x54\x8e\x24\x7d\x42\xf4\x80\xd9\xaa\x61\x6d\xd5\x52\x73\xa8\x08\x7d\x62\x9a\xac\x60\xc0\xc2\xfc\xef\xf1\x78\xef\x16\xa8\xa6\x36\x9c\xbe\x36\x6e\x24\xc0\xb3\x3c\x3e\x1c\x30\xbd\x26\x75\x95\x18\x7f\xcd\x21\x30\x95\xde\x30\x83\xcb\x13\xd4\x67\x6a\xfa\x55\xa3\x12\x57\xd8\xdc\xf8\xe8\xea\x73\xb5\xed\xcc\x6c\x9a\xc3\x48\x10\x4b\xb7\x53\xa5\x65\xdf\x8b\x21\x60\x74\xf0\xbd\x5c\x09\x2e\xe4\xbc\x17\xcb\xad\xa5\x74\xa8\xa6\xe1\x48\x86\xa9\x0f\x4e\xc2\x38\xe8\xa5\xc5\xd7\xf3\x58\x06\x86\x2c\x33\x3a\x10\x45\xd0\x25\x35\x56\x1e\xe0\x79\x11\xe1\xf8\x35\xa6\xea\xdd\x5e\x2f\xf3\xb1\x78\x5e\xaf\x94\xbe\xa8\xe5\xbb\x51\xf5\x63\xee\xbd\x61\x63\xa7\xa6\x94\xc8\xa2\x34\xa5\x55\x47\x62\xd2\x16\x70\x99\xe4\x25\x87\xef\x7a\x3b\x3b\x61\x4f\x94\x12\x1a\x08\x3f\x04\x07\x7b\x30\xa1\x54\xb0\x37\x8b\xb5\x53\xa5\x28\x70\x4b\x3c\xe0\x9a\x93\x33\x17\xd7\x5c\xcb\x83\x73\xcd\xa1\x76\xe5\x1d\x98\x9a\x1d\x79\x1e\x0c\x8e\x7d\xe4\x09\xc4\xe4\x56\x91\x76\x66\xba\xd4\x65\x33\xdc\x30\xc2\x30\xcd\x69\x9d\x03\x9c\x03\xda\x06\xb0\xc6\x61\x29\x4e\xb5\x0c\x0e\x35\x1f\x6a\xad\x4e\x0e\x1b\x8f\xce\x5a\x20\xdb\xad\x3c\x46\x16\x81\x05\x09\x87\xf1\x60\x41\xc2\xd5\x06\xab\xd4\x50\xe1\xa1\xf2\x9e\x9f\xc5\x68\x86\xe3\x30\xa1\xbb\xb3\x45\x44\xc3\xbe\x08\xcc\xab\xad\x09\xd5\xd6\xc8\x9c\x5c\x23\x48\x30\xbe\xad\xc8\x6b\xf0\xce\x0b\x7d\xfd\x5e\x68\x7c\xcb\xbd\xab\xd8\x1a\xd5\x2e\xf9\x82\x51\xed\x92\x0a\x54\xbb\xe4\x76\x78\x23\x42\x9e\xa9\x0c\x22\xf1\x9f\x85\xf8\x8f\xbf\x36\xc8\x74\x5d\x99\x62\xf9\xab\x40\x3d\x6a\xf2\x41\x1b\x9d\xa0\x96\x5e\xe8\x7a\xc9\x61\x1d\x6c\xa3\x90\xaf\xca\x2b\x38\x67\x84\x92\x9f\x16\xfc\x53\x9a\xfb\xdb\x7b\x8f\xa8\x2d\x08\x12\x41\x09\xa2\x4f\xa1\x3f\xcd\x65\x88\xa6\x2f\x69\x8f\x92\x14\x19\xf2\xb4\x91\x77\x81\xd2\x9c\x53\x6e\x1a\xcd\xad\xf4\xc0\x8f\x10\x24\x3d\x4f\xae\xf9\xaa\x2c\x8e\xe8\x90\xc3\x80\x8c\x50\x4f\xc2\x15\x8b\xda\xd0\x0b\x12\x7e\x80\x93\x9e\xd7\x88\xfb\x91\x3a\xf8\x2f\x56\x20\x19\xc5\x22\x41\x98\x00\x0c\xee\xef\x79\xf7\x92\x2c\x65\x92\x3d\x3e\x20\x68\x3c\xc2\x6a\x63\x16\x71\x42\x12\x70\x51\x42\x00\x89\xbd\x0b\x2e\xb0\x8b\xcc\x6b\x6e\xe1\xf0\x7a\xb1\x04\xb2\x00\xb1\x00\xad\x31\x42\x67\xb0\x66\xb1\x24\x50\x02\xb0\x07\x60\x86\x94\xb1\x52\xe8\xc6\xf7\x47\xa3\x84\xe9\x0a\x4f\x45\x22\x10\x97\xb4\x7a\xde\xce\x4e\x32\x08\xc2\x64\xce\x58\x84\xf8\xca\xf0\x90\x80\xcb\x58\xc4\xe7\x04\xce\x8d\x51\x7d\x68\xf0\x49\xd0\x5c\x51\x70\xc1\x34\x19\x91\x4d\xbc\x48\x43\x21\xd9\x18\x8b\x24\xf2\x40\x5a\x10\xa6\xf4\x1b\x88\x57\xa0\x80\xa6\xa2\x85\xef\xd9\x87\x12\xee\xec\xe8\x7f\xe9\x7e\xf2\xfb\xa5\xfb\x5d\xe0\x4d\xf1\x99\xf2\xb7\xfd\xb3\x6d\xf4\x8a\xd4\x9e\xf3\x31\x2c\x20\x19\xc1\x1e\x06\x07\x1e\xf0\x05\xca\x55\x20\x8c\xfb\x63\x61\xc1\xf7\xf9\xa0\xa2\xc1\x14\x32\x11\xcf\x8b\x47\x91\x50\xea\xd8\x69\x48\x71\x9c\x41\xc4\x69\xca\x44\xeb\x0c\xce\x68\x36\xba\x58\xdd\x0b\x65\xc3\x9d\x9d\xde\x6c\x14\xca\xa6\x1e\x98\xb1\x8d\x3d\x42\x20\x1e\x8d\x95\x59\x24\x00\x33\x31\xc0\xf9\xc8\x84\xd0\x1e\x83\x8b\x02\xa8\x8a\x56\x50\x59\xee\x43\x32\x8a\xcb\x1b\x04\xc0\x51\x71\xfd\x84\x16\x7a\x4f\xc7\xbb\xce\x16\x67\x67\x27\x94\x93\xb9\xf0\xb5\x8e\x86\x04\x88\x66\x43\xb8\x62\x1b\x87\x4d\x2b\xf6\x2e\x2f\x75\x2a\xcc\x45\xda\x79\x46\x0c\x29\x8c\xf4\xee\x67\xcf\xb3\xdd\x03\x83\xe5\x7b\x0a\x29\xfa\xd7\xfe\xe5\x25\xf1\x76\x76\xe4\x69\x65\xdd\xa6\x5b\x33\x2e\x83\xc8\xb0\x0d\x86\x76\x76\x7a\xe9\xae\x45\x62\x0f\x0b\x0a\x5f\x5e\xf6\xd2\x8b\x08\x1c\xf0\x8d\x91\xbd\x69\x67\x27\x1b\x67\x81\x18\x0b\x12\x7a\x29\x64\x4d\x60\xb0\x05\x92\x5e\x94\x42\xfd\x78\x5e\x19\x14\x24\x0d\xfc\x64\xe2\xed\x81\x77\x8f\x1e\xed\x65\xb1\x3a\x47\xfb\xc7\xb9\x09\x33\x8d\xbf\x12\x4f\xf1\x68\xef\xb8\x94\x1b\xe7\x5b\xe9\x47\x5c\x26\x29\xe4\xc6\xc5\x13\x02\xe7\xd3\x01\xff\xff\xeb\x56\x4d\xf9\x4b\xcb\xb4\x2c\xe0\x56\xb4\xd4\x04\xf1\xac\x59\xf3\xfb\x6f\x02\xfb\x63\xc8\xe4\xb3\x65\xc5\x13\x49\x78\x12\x71\x63\xa1\xf1\x57\xbe\x0b\x8c\x10\x35\xec\xd7\x30\xe9\xe3\x05\x4d\xc2\x00\x55\x3c\x30\x41\xb4\xef\x2b\x47\x61\xc3\x40\x62\x4c\x66\x30\x0a\xff\x42\x7d\xae\xae\x56\x0d\x48\x80\xee\xa4\x97\x41\xe5\xb8\x43\xff\xb4\xcf\x51\x49\xfb\x30\xf6\xa7\x55\x40\x3a\x00\x83\x04\x84\x20\xd2\xb4\xdd\x45\x7b\x6d\xd7\xbf\x05\x25\x71\xfc\xbf\x4d\x54\x95\x7f\xbb\x4b\xe2\xf8\xb7\x43\x85\x09\xc0\x18\xcc\x46\x85\x1b\x0c\xcc\xd9\x37\x51\xf6\x4d\x86\xd8\x0b\xa6\x95\xea\x8d\x3f\x54\xe5\x4e\xc0\x79\x18\xcb\x44\xec\x35\xf4\x85\x31\x27\xc1\xaf\x08\x9e\x32\x4d\x21\x28\xa0\x0a\xa7\x16\xe8\x37\xe7\x31\x22\x02\x4d\xa2\x09\x1a\xb5\xe1\x6d\x1c\x03\x53\x0a\xf2\x6a\x0a\xa6\x2c\x4e\xa1\x8e\xf8\x2b\x70\x16\xa2\xf3\x79\x01\x85\x4d\x7f\xe8\x3c\x8c\x57\x60\xb2\x08\x8d\x15\xe6\xe5\x04\x16\x61\xf0\x03\x26\x02\xec\x87\xdd\x72\x3f\xb0\x4b\xee\x09\xbf\xe3\x86\x73\x20\x2f\xec\x61\x56\x97\x51\x5e\xf0\xc3\x54\x67\x02\x61\xf2\x46\xdc\xda\xc3\xac\x66\x63\x7a\xfb\x0a\xe9\x26\xc9\x9a\x23\x21\xf0\x88\x6c\x7c\xb5\x5d\x2a\x4a\x15\x2a\x2c\xbb\x82\x76\xf2\x99\x6d\xaf\x8b\x5c\x6a\x34\xbf\x79\xd5\xd4\x5c\xd1\x8a\x9d\x7c\xfc\x38\x6b\x43\xca\x6d\x52\x62\x60\x91\x50\x93\xa2\xe7\x1d\xd1\x63\x6f\x48\x8e\xf0\xf1\x6a\xe5\x0d\x15\x2a\xc8\x04\xa9\xc4\x59\xf9\x4d\x1e\x23\x6e\x05\x52\x36\x32\x0c\xd3\x09\x13\x8c\xeb\x16\x31\x2d\xcd\xf3\x5c\xa4\xd4\xae\x80\xcc\xad\xfd\x7e\xf9\xc2\xb8\x6c\x69\xc3\x09\x52\x6d\xd8\xa3\x7c\x01\x65\xd3\xe4\xfb\xe5\x07\x38\xe1\x05\x2a\xf3\xd7\xbb\x14\x13\xd4\xc1\xe3\x73\x56\xfd\x0d\xa9\xa7\x75\x99\x75\x91\xeb\xd8\x5c\x9f\x72\x26\xcb\x50\xca\xa7\x8c\x0f\xb9\xff\x23\x6a\xc9\x24\x8b\x93\x84\x92\xde\x1e\xd8\xf7\xc4\xab\x91\x3e\x07\xf5\xf3\xbe\xe7\x0d\x17\x3d\xd1\xaf\xc7\xe4\x36\x90\xb2\x7d\xf3\x10\x02\x83\x62\xf3\x18\x0d\xf5\x37\x88\xce\xb4\x9e\x2a\x66\xb3\xe8\xe9\xad\x84\x05\xa8\x5a\xaa\x0c\x44\x35\x21\xa3\xdc\xaa\xe5\x6d\xdd\x1f\x21\xae\x49\x86\xc9\x8b\xf8\x97\xd2\xa9\xdd\x3c\x4b\x6c\xef\xde\x58\xaa\x05\x69\x6a\x0b\xdb\xf8\x2f\x78\x30\x91\x80\x38\x7c\x73\xc2\x64\xbd\xe2\x18\x51\x79\x66\x12\x46\x48\x68\x53\x0a\x4d\xf2\x9e\x01\xe9\x87\xee\xec\xb0\x27\xd8\x9c\xd4\x6b\xe2\x89\x74\xa3\x5d\xb0\x7d\xff\x0a\x92\x49\x18\x0f\xdd\xbd\xf9\x67\x17\xd0\x29\x41\xc9\x14\x47\xc1\x30\xce\xc0\xb3\xc8\x00\x8b\x61\x31\x05\x47\x3f\x25\x83\x45\xac\xff\xb2\xb3\x33\xd6\x34\x21\x32\xe0\x21\x17\x1c\xbc\x91\xd7\x4e\xe2\x77\x66\x5e\xde\x9d\x36\xc8\xbb\xca\x90\xd5\x5c\xe1\xd2\xae\xf2\x63\x97\x85\x8e\xcd\x9c\x6d\x41\xc2\x34\x4a\x6e\x68\x00\xac\x67\x83\x5d\x2f\xe9\x9f\xcd\xc7\x04\x24\xd0\xdc\x72\x41\xc2\xff\xc3\x61\x5c\x75\xc1\xfd\x89\x43\xc5\x1c\x07\xfa\xf0\x81\xbb\xeb\x02\xd7\xf5\x6a\x3b\xfe\x00\x27\x55\xfd\x52\x38\x49\x3b\x65\xef\x17\x9e\x6e\xc5\x83\xc5\x5b\x0d\xb9\x83\xa5\xc3\xb5\x6f\x3c\x5c\xfb\xfa\xe1\xda\x3f\x1e\xba\x2e\x58\xfb\x60\xba\x6e\x09\x5d\x87\xc7\x2a\xc8\xab\x18\x5e\x5e\x4a\xfc\x61\x25\x85\xb1\x9b\x24\xea\xb1\x2b\xa7\x04\x74\x4b\x81\xc6\xb2\x32\xc8\x65\xea\x65\x88\xf7\xa9\x39\xa6\xc7\x98\xd7\xe5\x65\xcc\x0f\xa3\xeb\x7a\xab\x15\xa0\x3a\x3d\xcd\x45\x19\xba\x07\x42\x4f\xa3\x01\x08\x2f\x87\xdd\x2a\x23\x18\xc5\x67\x55\xc7\x93\xfd\x74\xdd\x98\x34\xf1\x99\x81\x7c\x5c\x62\x45\xf1\x19\x07\xab\x02\x67\xd0\x84\x9b\x91\x7b\xa6\x95\x52\x3e\x46\x28\x38\x81\xfe\x69\xfd\x2d\xc5\x94\x2c\xa6\x34\xc8\xaa\x6c\x75\x58\x80\x5f\x30\xb6\x2b\x69\x83\xed\x4a\x6c\xb1\x5d\x63\x85\xa3\x4a\x6a\xb0\x5d\xb9\xe7\x15\x90\xeb\xc0\x76\x25\x9e\x37\xd4\xc6\xd4\x39\xb6\x2b\xa9\xc6\x76\x85\xb7\x11\xdb\x15\x1b\x31\xbc\x57\x20\xa9\x38\xe5\x31\xa6\xe1\x78\x59\xe1\x99\x1a\x47\x30\x99\xbe\x12\xde\x8b\xc4\xf5\x40\x84\x27\x93\x4a\x4f\x99\xf8\xd1\xf5\x0c\x28\x5f\x5a\x32\x22\xd3\x02\x93\x75\x99\x0b\x06\x61\xb9\xe9\x03\xed\x99\x07\xc7\xd2\xa7\x79\x2f\x45\x0a\xe8\x85\xc0\x0d\x93\x97\x18\x06\xdc\x4c\x77\x7f\xcf\xcb\x30\x70\x35\xdd\x3b\xf6\xc0\xa2\xf0\x55\xe2\x01\x5f\x18\xcf\x05\x91\xb2\xbb\xdd\x14\xb1\x75\x7f\xff\xfe\x68\x84\x76\x76\x7a\xbe\x70\x52\x29\xb2\xf5\x3c\xe0\x73\x93\x3b\xe9\x91\xde\xc5\x0a\x5c\xd0\x70\x86\xf0\x82\x0e\xbf\x46\x0f\x80\x58\x05\x14\x7c\x90\xdf\x3d\xd8\xdb\x5b\x09\xa8\x5a\x1e\x84\xbf\xc8\x10\xdb\x3c\x00\xf9\xab\x86\x51\xcf\x03\x21\x45\xb3\x21\xbf\x29\xb4\x90\x2f\x7d\x30\xe5\x31\xc0\x81\x58\x9f\x81\x5c\x1d\x26\x56\xba\x1f\x08\x8c\x93\x90\x35\x7a\x72\x82\x09\xe5\xb1\x0f\x23\xc4\x4d\x50\x8f\xbb\x1e\x34\xbb\x28\x36\xe9\x53\xc0\x79\x03\x94\x23\x84\x70\x90\x21\x01\xf3\x3e\x90\x11\x0c\xb9\x70\xa2\xca\x7d\xb0\x5f\x06\x8e\x4b\x9a\xb8\x13\x3b\x0e\xfd\x99\x3a\x0f\x86\x8a\xf8\x7e\x14\xf6\xf9\x53\x95\x8d\x6e\x23\xa6\xda\x18\x93\x06\x5b\x39\x7b\x62\xf7\x64\x11\x46\x4c\xc3\xb8\x32\x39\xa5\x68\x2d\xab\x52\x1c\x08\x8e\x2c\xf2\xf2\x44\x4a\x11\x10\x31\xe0\xcd\x8f\xab\xc4\xa5\x75\x8b\x0c\x31\x12\x25\xa3\xa3\xe3\x15\xe0\x74\x32\xeb\xe2\x71\xb5\x82\xc0\xda\xeb\xaf\x6d\x27\x5a\x4e\x11\x0c\xfa\x01\xa4\xb0\x6a\xd7\xb2\x07\x4c\x8f\xdf\xc6\xfd\x1a\xc1\xbf\x96\x7d\x91\xbe\xb8\x35\x08\x9d\x29\x5e\x44\x01\xb7\xc3\x95\xe7\x72\x7f\x7f\x55\xda\x45\xa5\x8a\xda\x35\x1b\xea\x5e\x86\x99\x39\x90\x05\x8a\x81\x16\x57\x1f\x7b\x17\x26\xe3\xc5\x51\xcc\x2b\x04\x0d\xb4\xa1\xf5\x98\x78\xf3\x18\x1d\xc5\xc7\x35\x29\x64\x20\x8d\xec\x14\x76\x22\xc9\x3f\x58\xd3\x7c\xd2\x17\x63\xdd\x9c\x31\x3e\x86\x45\xfe\x48\xb5\x65\x14\x53\x22\x02\xb9\x73\x08\x2b\x0a\x64\x0d\x0d\x10\xb5\x48\x4e\xa1\x30\xde\xd4\x39\x1a\x1f\x1b\xaa\xd2\xf0\x4c\x8a\xb4\x28\x0e\x13\xe1\xa8\x17\xf7\x48\x4b\x98\x1c\x29\xdc\x6c\x6b\x3b\x95\x44\xaa\xe2\xf9\x6f\x1a\xff\x1c\x4e\x50\x9f\x86\x34\x12\xbe\x3f\xd3\x2d\x90\x3d\x52\xdd\xec\x36\xde\x06\x73\x3c\x5f\x14\x2a\x5c\x53\x4c\xc2\xd2\x13\xb7\x71\x6e\x19\x7f\xda\xda\xd6\x9c\x20\xfa\x0a\x07\x28\xca\x9b\xdf\xbd\x0b\x0e\xad\xf9\x96\x84\x33\x48\x96\x3f\xa3\x65\xe9\xa7\xf7\xd1\x62\x52\xfa\x3e\xa1\x98\x54\xb1\x6e\xfe\x9b\xeb\x81\x34\x9b\xd4\x7c\x7d\x02\x83\xd9\xcb\x36\xfb\xf5\x5e\x8a\x38\x7e\x7f\x34\xe2\x45\x8f\xd2\x78\x32\xd7\xe5\x5f\x89\x9c\x70\x71\x45\xf3\x01\x0d\xe6\x08\x9d\x3e\x91\xe8\xce\x03\x9d\x18\x3d\xa3\xb2\x4a\xb8\xd3\x39\x4b\xe7\x20\xc0\xcd\x92\xaf\x5c\x6f\xc4\xdf\xeb\xf3\x87\x62\xaf\xf8\x64\x9a\x20\xe6\x7a\x62\x34\xea\x6f\x3d\x04\x19\x8e\x72\x6d\xde\x2f\x63\x9f\x49\xd5\xae\x77\x8f\x0c\xc2\xe4\x19\x37\x2a\x07\x97\x97\xa9\x4b\x04\x5e\x5e\x42\x35\xdb\xcb\x4b\x24\xa7\xb5\x88\x23\x0c\x83\x77\xc8\xc7\x24\x10\xb7\xa5\xb7\x5a\x01\x36\xd9\x37\x71\x75\x05\xa5\x8c\x24\xb2\xa5\x81\x2a\xec\xe2\x07\x86\xcc\xb3\x6e\x41\xe4\x00\x19\x5d\x04\xfe\x10\x81\x38\x19\xd2\x55\x89\x51\xa9\xa8\x25\x5e\xe0\x80\x47\x7c\xa5\x5f\x01\x1e\x26\x38\x12\xa1\x3c\x40\x9b\x16\x2f\x3b\x6f\x9c\x11\x91\x33\x12\x99\x0a\x15\xce\xbd\xb2\xe2\x6a\x9c\xca\x83\xe3\xbc\x3e\x7b\xb1\x02\x90\x4f\x85\xb2\xa9\xc4\x20\x0c\x86\xa8\x3c\x1f\x92\xcd\x07\xca\xf9\xa8\xaf\x00\xe4\xf3\x21\xe6\xf9\xd4\xac\x13\xf4\x56\x40\xc4\x8b\x34\xac\xb7\x78\xa8\x61\xc5\xcb\x90\x47\x1a\x3c\x7e\x02\xcf\x50\xaf\x0e\x05\x4f\xd4\x17\x18\xa1\x52\x9a\x39\xbb\xab\xb8\xf7\x59\xbc\x5e\x06\x54\xb0\xbd\xcf\xe3\x6a\x5d\xcf\x03\xaa\xf0\x40\x9a\x46\x25\x21\xf7\x63\x1e\x5a\x3f\xb2\xdf\xb8\xf1\x91\xfa\x36\xbb\xd7\x7a\xde\x31\xb7\xd7\xe5\x46\x61\x34\x10\xa4\xb7\xbb\xe1\x80\x09\x14\x73\x10\x8a\x70\x0a\x98\xe7\xf4\xda\x00\x45\xa3\xaa\xeb\xa6\x9d\x48\xa0\xe9\x36\xd0\x8f\xaa\xf4\x3b\x23\xab\xd1\x7e\x9f\xb1\xf7\x27\xbc\x87\x2b\x74\x10\x65\x3e\x9d\x26\xb6\x23\x9d\x05\x6c\x3c\x35\x1c\x28\x55\xb7\xde\xbe\x7b\xf1\xea\xc9\xbb\xdf\x3e\xfd\xfc\xfc\x37\x1e\xb3\xd7\x78\xb7\xf1\x67\x8c\xbb\x43\x4b\xd1\x03\xa6\x7d\x52\x5c\x9f\x26\x95\xcd\x0c\x82\xb2\xe6\x32\x09\x35\x9d\xe2\x19\xe6\xb1\x74\xc6\x20\xb2\x50\xa6\x58\x1b\x22\xbd\xba\x5a\x49\x58\xa8\x3c\xa5\xc5\xb7\xe0\xf6\x8b\xac\x91\xa5\x89\xa3\x6c\xe8\x11\xe3\xe5\xae\x39\x3f\x29\x5f\xbd\x34\xbb\x7a\x63\x79\xf5\xaa\xaf\x00\x67\x22\x23\xda\x82\x95\xc4\x3a\x73\x7c\x8d\x83\x4a\x28\x5c\x61\x54\x30\x24\x70\xb3\x87\x0c\xfa\x97\xe0\xa7\x19\x50\x47\x0e\xcc\x43\x10\xc3\xf5\x18\x39\x7a\x31\x0f\x3d\xa5\x95\x21\x00\xfa\x46\x97\x97\xec\xca\x13\x5e\x8b\x19\xa2\x30\x0f\x13\x22\x10\x42\x40\x5c\x32\xb6\x35\xe5\x99\xe6\x21\xa3\x5a\x6c\xfb\x46\x7f\xd0\x5d\xc2\xd8\x6d\x80\x2d\x25\x7f\x9b\x80\x4b\xf2\x45\xc0\x96\x92\xdb\x11\x77\x09\x0d\x6c\xc6\x1e\xbe\xa0\x81\x21\x05\x7e\xc6\x88\xaa\x42\x39\x9a\x18\xc0\xc5\xaa\x5a\x99\x10\x6a\xa1\x08\xaf\xca\xd2\x35\xc4\xc3\x3d\xae\x1d\xba\x40\x6c\xcf\x38\x97\xe5\x52\xc2\xb6\x66\xac\x2c\xbb\xa6\x63\xa1\x59\xb2\x6b\xbc\x0a\xde\xe0\x82\xcf\xd8\xd4\x84\x5d\xec\x59\x00\x96\x78\x82\x6f\xd5\x2c\xe4\x49\xd4\x2f\x1c\xb9\x87\x7b\x87\x2e\x60\x2c\x9f\xc2\x30\x1a\xb9\x6f\xe1\x84\xed\x57\xea\x8c\xf1\x22\x0e\x5c\x90\xa1\xa4\xf0\x8b\xf2\x82\x3b\x77\x92\xe1\x11\x39\x5e\x89\x42\x1d\x4f\x7c\x1a\x9e\x99\xc0\xc6\xf3\x16\x4a\x35\xdb\x7b\x05\xf4\x15\x76\x53\x1c\xa1\xcb\x4b\x98\x2b\x4b\xcd\xf1\x08\xd9\x76\xd5\xf8\x29\x13\xea\x2b\xea\x54\xd3\x51\xcc\xf3\x32\x98\xbc\x22\xc0\x54\xa9\x06\xa6\x4a\xf2\x88\x30\x49\xd9\x39\xa7\x4c\x15\x19\x29\x13\xe0\xf2\x40\x7b\x79\x69\xa5\x46\x55\x58\xb1\x5a\x28\x5b\x2d\x80\x54\x81\x63\xee\xee\x2b\xd2\xa7\xb0\xf1\x0a\x48\xe1\x7c\xe6\x65\xa8\xd7\x7b\x96\x3c\xb9\x88\x07\xb8\x01\x83\xee\xca\x3f\x54\x3e\xd9\x81\x6f\x8b\x48\xd9\x74\xb2\x0b\xd3\xb5\xd0\xf7\x45\xa0\xa9\x9f\x0c\xa4\xd1\xa4\x47\xbd\x02\xb2\x3d\xb9\xbc\xcc\x99\x6a\x5e\xa1\x64\xfa\x3c\x66\xd7\x72\xe0\xca\x68\xd1\x3a\x37\x80\xc9\xf1\xab\x5b\xea\xe4\x66\x11\xc7\x68\xa0\xed\x31\x79\x20\x99\x58\xd6\xf8\xa8\x38\xac\xae\x37\xa0\x24\x9c\xf5\x52\xdc\x21\x2a\x31\x86\x1e\xee\xed\xb9\x43\x4d\x22\x96\xb7\xd3\x88\xec\xec\xc4\x03\x14\x07\xc9\xaf\x21\x9d\xf6\xdc\xa7\x22\x76\x51\xb0\x96\x13\xe4\x20\x31\x4b\x26\x16\xa5\x5c\x69\x91\x20\xbe\x51\x1d\x14\x07\x73\x1c\xc6\xd4\xf5\x76\x76\x32\xf7\x6d\x81\x3e\xe0\xfe\xbe\xd8\xab\x1c\x0a\x4d\x70\x4a\xc4\x2e\xa3\x61\x11\x6c\xa9\x65\x08\x92\x11\x86\x71\x33\xe5\x38\xeb\xa7\x01\x26\xe2\x0b\x8e\x56\x82\x57\x52\x89\x9a\xd8\x54\xa2\xc6\xd7\x5b\x89\x9a\x6c\xa7\x12\x35\xbe\x8d\xd1\x4a\x49\x7b\xa5\x3f\x3b\x4c\xed\xed\x3b\x95\xc6\x4c\x99\x99\x8c\x06\xa9\x85\x1d\x68\xd7\x6f\x0f\x65\x22\x99\x44\xfd\xed\xda\xc4\x8b\x53\x13\x2f\xc7\x7f\x8b\x81\x38\xa2\xc3\xaf\x04\x42\x0e\x1b\x96\x33\x1a\x39\xee\x57\x69\xc0\x2b\xf8\xca\x75\x30\x71\x9e\xa1\x84\x86\x31\xcf\x3d\xcd\x1e\xf2\xf4\xa7\xbe\xf2\x6a\xcd\xc5\xb8\x68\x2e\xc6\x75\xe6\x62\xb3\xa1\xb8\xc7\x66\xd0\x36\x9a\x26\x0f\x5c\xbb\x91\x5d\x2b\x4c\x7e\xc0\x3c\xf4\xc4\x70\xf9\x9e\x96\x02\x67\xbb\x35\x68\xb5\xde\xc0\xa7\x67\x16\x3b\x97\xe4\x77\x6e\x95\xb0\x41\x54\x5c\xdd\xda\x3b\x8f\xb1\x96\xbc\x4d\x0e\x79\x0a\xfb\x80\x57\x37\x17\x0a\x7a\x38\x5e\xf6\x8e\x08\xa0\x00\x1d\x7b\x20\x69\x61\x33\xc7\x59\x91\xe0\xcb\xcb\x9e\x6c\xa9\xd0\x0f\x7f\xe6\x60\x4e\x9a\xc1\x8e\x6a\x18\x88\xdc\x3e\x5a\x64\xe6\x89\x50\x36\xc2\xd1\x45\x18\x0c\x11\x50\x6e\x11\x52\xde\xe2\x30\xdb\xe2\xa1\xdc\xe2\xea\xab\x56\x5e\x90\x50\x37\xc8\x35\x88\x7b\x60\x93\x85\x70\x77\x79\xf4\x9d\x00\x1c\x70\x15\xba\x40\x7e\x9e\x31\x48\xd0\x1c\x72\x4d\x7c\xe8\xee\xba\xb5\xb3\xc6\x8d\xb3\xae\x58\xb0\xba\xe0\x8d\x1a\xc9\x01\xdd\x1f\xe5\x4d\x7f\x3f\xa3\xa5\xeb\xad\xcc\x31\x8a\xb1\xb0\xa1\x31\x8d\x50\x6f\x15\xd7\x8a\xab\x6a\xb3\x17\xf7\xa5\xd8\x95\x78\x44\xca\x5b\x92\x94\x9d\x5a\xf7\xf0\xce\x0e\xce\xbb\x5f\xbc\x95\x34\xb5\x94\xac\x94\x4d\xc5\x2f\x8a\xf8\xf3\x37\x53\x0d\x6a\xb8\x91\xf8\xc8\xd5\x25\xf3\x12\xc1\xc0\x68\x3a\xcf\x9b\xbf\x8b\x7b\x49\x34\x33\xee\xa8\x62\x49\xaa\x16\x12\xb8\x84\x60\xdf\x4c\xfc\x96\x9d\x5c\xb7\x7b\xaa\x8d\x64\x62\x8e\x87\x48\x9f\x7d\xff\xf2\xe3\x8f\xe9\x83\xb5\x2b\x29\xa6\x6a\x34\x42\x75\x80\x0c\x5e\xbe\x6f\x50\x76\xdf\x50\x79\xdf\xa8\xaf\x00\x15\xa8\x24\x2d\x04\x89\xe2\x4e\x69\xe1\x22\x13\x33\xdf\x0d\xc2\x44\xea\x87\x77\x5b\x66\xf3\x2d\x53\x30\xa0\x29\x26\x7c\x74\x6c\xb6\xc7\xe5\x8d\x85\x69\xd4\xd3\x6a\x05\x52\x78\x5f\xcb\xde\x37\xdc\x05\x28\xae\xdd\x04\x3c\xcf\xaa\xbb\x4d\xd1\xa5\x34\x19\x97\xb6\x05\xc1\x0b\x5a\x99\x73\x21\x7e\x6c\x85\xc0\xdb\x52\xf2\xac\xdd\x66\xe4\xef\x74\x33\x99\x36\x71\x11\x3c\x96\x27\xbd\xb9\x4f\xdf\xbc\x7e\xff\xf1\xe5\xa7\x27\x4f\x5f\xbe\xff\xf4\xfc\xf5\x93\xef\x5f\x3e\x7f\xa6\xec\x79\xe2\x3d\x19\xda\xb5\xd1\x03\xa0\xe2\x96\xe2\x95\xc9\x7e\x2c\x5e\x77\x74\x6c\xb2\x75\x1d\x5d\xbc\x43\x12\x12\xcd\x65\x7b\x90\x09\x8a\x2e\x78\xc2\xb3\x31\x86\x2e\x53\xe5\x91\x0b\x9e\x44\x11\x3e\x67\xbb\xb0\xf2\x18\xe7\xa2\xe9\x2e\x0a\xa5\x1f\xd8\xb7\x72\xe3\x0d\x3e\xc9\xff\x4a\x68\x27\x8e\x4a\x34\x90\xdf\x41\xde\x6d\x96\x62\x22\xbe\x7f\x11\x8f\x71\xe2\x7a\xb9\x48\xbb\xd8\x8b\xcd\x50\x70\x39\x2b\xd8\x80\x09\xbe\xb3\xc4\x64\x53\x89\xbd\x0b\xca\x1d\x46\xf2\x99\xa3\xf8\x58\xc8\x9d\x19\x7c\x16\xa9\x9a\x82\x1c\xfa\x3b\xf6\x97\x18\x57\xaa\x54\x09\x6b\xbe\x19\x5c\x49\xbc\x89\x6b\x2b\x83\x30\xf6\xa3\x45\x80\x92\x9e\xda\xe5\xfc\xd5\x3a\x06\x56\x4f\x45\x0e\x8e\xa0\x1c\xa2\xfc\xdb\xcb\x03\x9b\xa7\x36\x7a\xdd\x43\xa1\x3a\xad\x8b\x29\x12\xcf\x5c\x5e\xa2\xcb\x4b\xf7\xff\x49\x2f\xde\x32\xb4\x34\xd5\x83\xae\x4a\x5e\x21\x69\x7d\xa0\x3c\xee\xb4\xf2\x75\xe2\x7a\x47\xf2\x9d\x19\x84\xc1\x6a\x13\xe9\x39\x5f\xac\xe5\x66\x8a\xd1\x33\x18\xc3\xea\xfc\x37\x1e\x54\xbc\x7e\x7e\x88\x9a\xfb\xc8\x04\xb4\x32\x88\x30\x3e\x5d\xcc\xe5\x4b\x52\x3a\x0d\xd3\x9c\x68\x5e\x20\xa0\x7f\x1e\xd2\x69\x7f\x41\x22\xd7\xf3\x1a\x2f\xe4\x3c\xc1\x2b\x6e\xb7\x14\x6a\x5e\x57\x46\x7d\x1c\xa0\x21\x05\x4c\x2b\x43\xc3\x98\xe9\xa6\x84\xdd\x56\xd0\xa4\x1b\xd4\xdf\x74\xd8\x5b\x81\x08\x4f\xf0\x82\x36\xbd\xd4\xd4\xb7\x68\x59\xd9\x71\x01\xef\x4d\x2e\x84\x5c\x43\x09\xed\x56\x24\x9b\x60\x4f\x4f\x71\x80\xbe\x5f\x7e\x7c\xf7\xb2\x22\x10\x31\x1f\x42\x93\xc8\x1b\x25\x5d\x41\xe0\x9e\xc0\x04\x7d\x24\x11\xcf\x56\xcb\xbd\x95\x03\xd3\x15\x5e\x0a\x2e\x0c\xd7\xbc\x72\xef\x2a\x7f\xcb\xfd\x3d\xe1\x70\x71\xd0\x40\xa6\x92\x0d\x38\xb8\xbb\xf4\xaf\x10\x34\xc3\x14\x39\xe7\x30\x71\x04\xf0\x9c\xeb\x0d\x7b\xb1\xf0\xc8\x8a\xb0\x81\x77\xe5\x27\x3c\xa9\x58\xb3\xe9\x8e\x0e\xbf\xfd\xb6\x50\x5e\x26\xd7\x3e\x7d\x6d\xbe\xd5\xc3\xbd\xbd\x95\x0a\x68\x84\x01\x9c\x53\x44\x7e\xc0\xa4\x47\x4b\x81\xd0\x5c\xab\xef\xc5\xe5\x9c\xbb\x16\xca\xa0\xaa\x31\xb5\x89\xa5\x10\xfa\x51\xd2\x97\xf6\x84\xf2\xaf\x1c\xc5\x1e\xfa\xd1\x6e\x98\xf4\x79\x94\x45\x5f\x40\x88\xf4\x65\xf2\x61\x59\x26\x94\x63\xba\xe2\x02\x0d\x1c\xce\x5f\x4b\x7c\x4b\x0a\x61\x74\x58\xd9\xc9\x3c\x10\xb6\x57\xff\xe5\x1c\x9a\x8d\x92\xb0\x85\x68\x08\x35\xd1\x50\xd0\xdb\x64\x77\xe7\x38\xe7\xc6\xd0\x60\xb9\xef\x73\xee\x49\x8a\x66\xf3\x48\x54\x82\x13\xde\xc7\xd4\xf5\x98\x46\x10\x57\xe8\x14\xec\x2d\x94\x49\x22\x51\x73\x34\x73\xfa\x5c\xaf\x50\xd5\x4c\x8e\xe2\xdd\x22\x42\x89\x5b\xdc\xc7\x61\x8b\x7d\x5c\xcc\x4c\x5b\x43\x17\x11\x7d\xdc\xa4\x88\x5b\x31\xa2\xd6\x3e\x19\x1b\xd3\xea\x46\x91\xf3\x9c\x65\x71\xd3\x69\xe0\x9b\x32\x01\xd6\x8e\x9c\xaf\x8c\x99\x2f\x97\x22\x32\x70\x37\x0d\x8b\x2b\x1f\xc9\xc9\x65\x3e\xf5\x48\x51\x06\x4b\x45\x53\x61\xb8\xcf\x45\x0f\xa4\x31\x9c\x7b\x8a\x73\x2a\x47\xef\xf7\xcb\x9e\x2b\x1d\x57\x3c\xed\x6f\xa0\x39\x8d\xe4\xf7\x2f\x9e\x31\x66\x95\x85\x12\x71\x5b\x26\xf5\xfe\xd9\xc3\x97\x97\x3d\x3c\x22\xe9\x2f\x0d\xfd\x88\x18\xa4\xd8\xf3\x3c\x46\xcf\x11\x4e\x4f\x64\xc6\x2b\xa1\x0c\x0a\x05\xb9\xd1\x8b\x38\x51\x0f\xc0\x12\x87\x68\xa1\xfe\xf3\x94\xde\x1b\xc5\x1f\xf8\x88\x6e\x35\x77\xe0\x33\xd8\x1a\x6f\x58\xf7\x8e\x6d\xa8\xed\x71\xb3\xed\xf1\x6a\xf0\x35\x71\x80\xfa\xd5\x51\x1b\x23\x54\x15\xc5\x96\x8f\x27\xe3\xd5\x12\xb9\xf2\xcb\x41\xf2\x54\xa4\xa6\x0a\xc6\x50\x62\xe0\x3d\xe9\x26\x11\xe2\x5c\x32\x3a\xba\x90\xcb\x27\x42\xfb\x78\xa2\xe8\xd0\x7d\x9d\x86\xf4\xad\x8e\x41\xbc\x2a\x69\xdf\x85\x78\x37\x00\x47\xb4\x8c\xfd\xa4\xcf\x12\x29\x2d\x27\xd7\x89\x4a\x44\xfc\x00\x27\x89\xeb\x5d\x5e\x1e\x1d\x7b\x2b\x0f\x1c\x1d\x7b\x83\x45\x1c\xfe\x37\xab\x3a\x93\x0b\x21\xe2\x0f\x03\xa8\xb2\x35\xe4\xb7\x62\xfe\x80\x16\xbe\x2e\x5e\x53\x28\xbb\xa6\xf2\xcd\xd3\xb4\x3c\x50\x0a\xd3\x4b\x6b\xc8\x12\x1e\xa7\xb7\x36\x6f\x68\x60\x0c\x29\xaf\x8c\x07\x7c\x32\xb2\x1e\x5e\x80\x3e\xe7\x1f\xca\xec\xc3\x92\x7a\x2f\x9e\x09\xa7\xa3\x68\xc7\xff\x8f\xed\x80\x95\xc7\x77\x43\x7f\x9f\x71\x48\xc5\x74\x64\xdf\x47\xe4\x58\x35\xcf\x62\x15\x79\x43\xed\x01\xf6\x01\x40\xf5\xdc\xd3\x29\xf2\x4f\x13\xfd\x77\xf1\x4d\x0d\x8c\xa0\xeb\xde\x1f\xa1\x41\xca\x9e\xd8\xd1\x17\x6f\x59\xab\xaf\x51\xb1\xaf\x5a\x7e\x14\x9b\x16\x1a\x56\x2c\x74\x5c\x58\x68\xb8\x12\xd7\x72\xf1\xd4\xe0\xfa\x53\xf3\x91\xdb\xac\x1d\x8a\x1d\xb6\x74\x69\xe8\x36\x3b\x43\x38\xdd\x3a\xb9\xca\x92\x57\x9b\x67\x28\x8b\x64\x76\x9a\x6c\x58\x25\x32\xad\xab\x11\xaa\xf2\xce\x37\xf3\x96\xb7\x49\x66\x6e\xe4\x04\x62\x82\x8a\x13\x18\x13\x82\xba\x12\x92\xd3\xb5\xbf\x2e\x21\xf9\xfb\xbc\x2c\x51\x91\xdf\x24\x36\x7b\x05\x4c\xc4\xba\x3b\x47\xd6\xc7\xde\x48\x07\x93\x7d\x74\x2b\x43\x5e\xbd\xac\x08\x4b\xb2\x22\xe9\x4a\x56\x14\x14\x69\xad\x03\x5a\xbb\x32\x9b\x0c\x09\x09\x8a\xc6\x35\x82\x92\xd8\x97\xbc\xc8\xad\xd1\xef\x92\x20\x9f\x20\x2a\x4f\x82\xc1\x28\x97\x75\x87\x7b\xd4\x7b\x7c\x21\xfc\x2a\x98\xbc\x78\x36\xe4\x58\xd6\xef\x79\xfb\x17\xcf\x86\x68\x35\x2c\x24\x33\x50\x15\xa6\xdf\x55\x86\x69\x8e\x84\x5e\x7a\xa0\xde\x0a\x34\xa3\xba\x33\xd5\x98\x80\x22\x11\x91\xf4\x0b\x21\xed\xff\x1d\x8e\xea\x33\x12\x1b\x7b\xe7\xe0\x4c\xf9\xbe\xd7\x15\xf2\xe9\x72\x8e\x76\x53\x78\xe3\xc6\xd3\xac\xc3\x02\xb5\xae\xbe\x78\xb5\xb6\x15\x23\x5c\x90\xbe\x7f\x85\x58\x9e\x96\xa6\x61\x8b\xc1\x64\x5e\x57\x9a\xce\x5c\x2e\xb3\x99\x90\xf7\x0c\xf9\x8e\x9a\xc7\x32\x56\xc5\x87\xf8\xe7\x31\xc1\x33\x75\xfc\x7b\xe8\x88\x2a\x38\x1d\xa4\xdd\xb8\x1e\xe0\x65\x72\xb4\xb1\x3c\x89\x22\xd7\x7b\x7c\xb1\x1a\x72\xc7\xfd\xba\xaa\x3b\x5f\xcb\x7c\xa1\xc5\x86\xe5\xac\xaa\x9e\xdb\xd5\x7a\x03\xa2\x05\xe7\xdf\xd5\x1a\xdc\x42\xea\x68\x72\xcb\x53\x22\x71\xfb\x52\x28\xe1\x35\x96\x42\x49\x6e\x6b\x89\x8f\xc4\xba\x86\x63\xf8\x05\xd7\x70\x0c\x2b\x6a\x38\x86\xb7\x23\x11\x37\x1a\xe9\x51\x34\x00\x82\x44\x55\xf3\x2e\x69\x32\x87\x46\x4d\xe6\x50\xd7\x64\x0e\x8f\x87\xf9\xa8\x60\x10\xc9\x50\x73\xce\x25\xc0\xa2\x08\x70\xb7\x01\x4a\x14\x88\x47\x02\x95\xd4\x95\x3e\x51\x17\x04\x90\xc2\x21\x5d\x01\x92\x8f\x65\x66\x5f\x0f\x84\x25\xe1\xf2\xb2\x18\xa3\x34\x62\x6a\x15\x81\xf1\x04\xb1\x8d\x95\xa2\x5a\xf5\x88\x07\x32\x0d\xac\x30\x6a\x7f\x94\xc1\xa0\xa3\xa2\x68\xe5\x0e\xdc\x34\xf1\x23\xce\xfd\x15\xca\xfb\x26\xdb\xfa\x7c\xa7\x8b\x7d\xaf\xf1\x76\x0f\x04\x1a\xee\xdf\x78\x94\x7a\xba\xc7\x26\x1f\x84\xc4\xf2\xc5\xbd\x40\x2b\x6f\x90\x06\x95\xc8\x18\xbc\x9d\x9d\x5e\x32\x4a\xd4\x40\x8e\xc8\xb1\xe7\x01\x94\x21\xf5\x21\x80\x7b\x49\x5d\x05\x74\x53\x8f\x59\x8c\xd7\xe5\x25\x4c\x8b\xb4\xe5\xcb\x9f\xd3\x8a\xf2\xe7\x91\x97\x96\x91\xf6\x01\x5f\x45\x62\xaa\x33\x9f\x05\xd4\x5d\xc8\xd7\x0e\x33\xc0\xac\xc1\x89\x6c\xc0\x5e\xaf\x3e\xab\xf4\x22\x51\x00\x66\xc1\xc4\xda\xac\x32\xa9\x2a\x75\xb3\x41\xea\x79\x8b\x72\xfc\xed\x23\x50\x64\x42\xea\x62\x67\x87\x3f\x9b\x95\xfa\xac\x2e\xfc\x29\x6f\x01\x55\xca\xce\x67\x1b\xdc\x14\x9b\x65\xac\x67\xc7\x0b\xd9\x69\x65\x3e\xfd\xd1\xc5\x4a\xe0\x2f\x93\x81\xcf\xde\xe4\xf5\xfc\xea\xe2\x42\x1d\xbf\x5a\x2b\x22\xbb\x02\xeb\x49\xe2\x55\xa2\x77\x56\x8b\xf4\x5e\x63\x98\x97\x58\xc3\x72\x98\x17\x49\x5f\x1d\x89\xb2\x0f\xb1\x27\x72\x7f\xc0\xa2\x1c\x4e\x11\x34\x48\xdc\x09\x82\xc4\x9f\x6e\x0f\x16\x95\xbf\x9e\xa7\x13\x96\xa3\x86\x61\x10\xf0\xc3\xf3\x52\x56\x15\xca\x43\x03\x0a\x68\xb0\xea\x07\x56\xed\xd0\xaf\xd2\x93\x55\x8b\x6b\x2c\xcb\xef\x16\x8a\xf1\x76\x69\x43\x44\x83\x70\xfc\x1a\x53\x75\x05\xd5\x01\x1e\xcb\xd1\xb9\x6c\x9a\xf9\x46\xc6\x00\x45\x9b\xbd\x95\x3d\xaf\xc5\xcd\xaa\x1b\x6d\x67\xe7\x7e\xf6\x07\x87\x51\xad\xab\xd6\x22\x89\xc3\x53\x17\x6d\x03\xc9\x53\x8b\x01\x9c\x08\x78\x06\xaf\x0a\xfb\xc2\xae\x8b\x09\xa2\xbf\x30\x22\x33\xb9\xd7\x1c\x56\xa2\x21\xe7\xca\x46\xf7\xf2\x89\xcf\x32\xe3\xba\x22\xc8\x94\x9d\x5c\xf1\x86\x98\x73\x31\xcf\x94\xa3\x86\xbc\x95\x2c\x75\x9b\x7b\x75\x51\xe4\xbf\xbc\xec\xa1\xd1\x11\x3a\xce\xc1\xf9\xca\x41\x81\x98\xd7\x1b\x2d\xf9\xc4\x34\x63\x8b\xac\x5a\x2a\x47\xc3\xd9\x1f\xb8\xc8\x0a\x0d\x15\x07\x15\xb7\xf4\xaa\x27\x98\xd0\xad\x5d\x13\x3e\x9e\xa9\x2c\xb7\xdc\x11\x6f\x75\xc0\x69\x09\x2e\x6d\x1c\x41\xea\x02\xf7\xbb\xcf\xfc\xb7\xdd\x71\x32\x6b\x4a\xc8\x6f\xab\xbe\x25\xd7\xa8\xbe\xe1\xdb\xaa\xbe\xdd\xd9\x52\xb6\x60\x4b\xc1\xb7\xdf\x96\x62\xa9\xf3\x27\x5f\xb0\xce\x9f\x54\xe8\xfc\xc9\xed\xd0\xf9\xc3\x8a\xfb\xde\xae\xae\x4c\x84\x8b\x51\x30\x9c\x65\x16\xea\x9a\xe8\x0a\x72\x18\x00\xd7\xf9\x97\x93\x29\xc2\x54\x9e\x44\x6f\x05\x60\x10\xfc\xb8\x80\x24\xa8\xa8\x8a\x28\x7c\x17\xfc\x81\x4a\x71\x40\x3a\x5e\x7b\xb1\xc0\x83\x22\x02\x0f\x8a\x1c\xed\x1f\x6b\xe5\x67\x10\xc0\xa0\x9c\xbe\x73\xff\x3e\x1d\xe0\x98\x0f\x20\xc5\xac\x3f\x4a\x8e\xd5\x38\x2d\xd5\x75\x91\xe4\x02\x8e\x10\xa0\xc7\x2b\x30\x83\xfe\x34\x8c\x4d\xe8\xb9\x6b\xa3\x5e\xa6\x80\x45\x32\x65\xff\x95\x78\x45\xbe\x4a\x85\xcc\xfa\x4d\x09\x2a\x2a\x48\x32\x01\x8c\xa0\x39\x24\xe8\xe9\x14\x12\x23\xee\x6f\x3a\x84\x1e\x12\x39\xdd\x73\x48\x12\xd4\x2b\xa4\x77\xb3\x9b\x7a\x80\xe3\x9d\x1d\xb9\x07\xf9\x0a\x26\x3d\x1e\x00\x4f\x91\x31\x1f\x88\x69\x5e\x69\xc5\xcf\x01\x8e\x1f\xb3\xff\x1b\xa1\x01\x8e\x87\xf9\x94\x22\x1c\x57\x2d\xad\xde\x5c\x94\x1d\x90\x9f\x78\x37\x52\xf4\x63\xc4\x47\x8c\xf0\xd4\x9f\xa2\x8a\x8d\x94\x09\xd6\x3b\x3b\x05\xee\x46\xbd\xc7\x74\x78\x44\x8f\xbd\x41\x82\x67\xa8\x22\x4b\x47\x76\xae\x3c\x88\x22\xeb\xc2\x90\x94\xa3\x06\x81\x56\x2b\x10\xc6\x14\x91\x39\x41\xa6\x92\x9b\x02\xa9\xe0\x9e\x48\xef\x1a\xe8\x4b\xd4\x43\x9e\x0e\xd2\x9a\x76\xe2\xf5\x64\x0e\x03\x5f\x7b\xb1\xba\x59\xe0\x4f\xb2\x38\x49\x7c\x12\x9e\xa0\x3c\x01\xe3\x81\x3f\x85\xf1\x84\x1b\x80\x08\x3b\xa3\x5c\x7a\x05\x8c\x88\x59\x4a\x58\x2f\x16\x34\x84\x2b\x30\x29\x9e\xc5\x22\x22\x91\xd2\xf6\xf3\x3a\x11\xaa\x2f\x45\xca\x44\x8d\x7d\xef\x68\xef\x58\xc3\xa2\x62\x67\x2c\x70\xcb\xaa\x73\x93\xe3\x51\x84\x6c\x18\x0a\x27\x04\x90\x42\xf9\xeb\x35\x46\x97\x4c\x29\x9d\x37\x63\x9b\x95\xdd\x6a\x1e\x37\x56\x0a\x2b\x57\x45\x7b\xf6\x80\x7c\x3c\x0d\xa4\x6c\x65\x80\xe2\x68\x74\x25\x0b\x94\x78\x66\x00\x4f\x30\xa1\x3d\x19\x2a\xc2\x1a\xe4\xcc\x4d\xe2\xeb\x6c\x88\x86\x1f\xc3\x38\xa4\x3d\x83\x33\xbd\x78\x7b\x6b\x09\x29\xc8\xd3\xdc\xea\xe0\x62\x96\xc6\x30\xa0\x15\xa0\x12\xea\x87\xef\xf7\x18\x46\xdc\xa4\xfa\x03\x26\x2f\x02\x01\x76\x25\x6e\xbe\xf7\x31\x9c\x27\x53\x4c\x7b\x17\xe2\x18\x96\x23\x0d\x32\x5b\x8f\xac\x98\x92\x1f\x40\x86\x4e\x48\x42\x18\x85\x7f\xa5\xdf\xe3\x51\x6e\x3c\xba\x29\x55\x06\x2a\x00\x0c\x18\xa9\x7d\x82\x28\x1b\x50\xa5\x0e\x0f\x07\x69\x19\xea\x77\x28\x99\xe3\x38\x61\x7a\x2a\x06\x4c\xb1\x71\x59\x6f\x62\xd7\x03\x0d\xb0\xc1\x9a\x7c\x45\x90\x87\x02\x11\xb9\x0d\xad\x2a\x49\xb6\x00\xe2\xbe\x3e\x06\x73\x37\x74\xcd\xe7\xa4\x01\x2c\x06\x5f\x06\x4d\xae\x27\x2c\xe5\x84\x95\x2c\xd0\x4d\xfb\x94\x24\x2e\x65\xb5\x75\x01\x40\x6d\x98\x3c\x31\x4f\x32\xd6\x93\xe3\x00\x01\x94\x89\x42\x6d\x71\x38\x28\xfa\x4c\xfb\x33\x04\x93\x05\x29\xa6\x64\x8a\x8b\x2f\xf7\x40\x55\xbb\xdb\x58\x56\x85\x86\xfe\x69\x53\xa9\x64\xf9\x4c\x69\x7a\x22\x6d\xaf\xab\x50\x11\xb3\xbc\xbc\x66\x8a\x29\xbf\x4a\xd9\xcd\x49\xcf\x11\x8a\x3f\xe0\xd2\xf6\x34\x44\x11\x5a\x57\x0c\x36\x40\x1f\x1d\xe4\x8b\x72\xc8\xb3\x82\x2d\x4b\x38\x32\x51\x3a\xdb\xcf\x53\x98\xf4\x12\xef\x71\xaf\x47\x46\xb1\x80\x4d\xf5\x3c\xa5\x7f\xe2\xb1\x43\x07\x1f\xd8\x9c\x24\xbe\x61\x42\xf1\xbc\xc7\xcb\xbb\x8b\xb2\xfb\x3d\x0e\x52\x98\x70\xb0\x55\xf9\xe4\x80\xe2\x1e\x01\x88\x07\x53\x7b\x80\x78\xc3\x9e\x7a\x00\x89\x7a\x15\x41\xd9\xef\xa0\xdf\x8e\x92\x96\x69\x77\xf2\xf1\xd4\x5f\xa2\xb7\x13\x11\xf4\xaf\xe0\xbc\x9d\x09\x4e\xd6\x47\xac\xdf\x86\x73\x61\xe7\x53\x85\x13\xaf\xab\xf8\x5e\x1a\x25\x58\xb5\x45\x6b\x43\x91\x62\x59\x40\x9f\x9d\x21\x53\xc8\x1f\x3a\x57\xf6\xcb\xfc\x75\x2c\x5e\x45\x16\xb1\xb0\xb4\xa0\xb2\x10\xd7\x48\x53\x9e\x3f\x6d\x8c\x1b\x2e\x14\x85\xca\x3f\x79\x2b\x6f\x31\x9e\x90\xde\x38\xc7\x5b\x35\x37\x4c\xe8\x6e\x66\x1d\x4e\x76\xfd\x29\xca\x57\x8b\x2e\xd8\xa9\x53\x0b\x09\xbd\x33\x3a\xde\x1e\xec\xff\x38\x33\xe1\x91\xf5\xb1\xff\x49\xd9\x78\x47\x9a\xb0\xff\x49\x66\xbf\x23\x96\xd8\xff\xa4\xbd\x25\x8f\x78\xf9\x99\xde\x76\xec\xff\xf8\xe6\x9b\x1f\xb3\x2f\xca\xf7\x8e\xd1\x7d\xaa\xc3\x2b\xbc\x97\xf9\x3a\xde\xe3\xcc\xc4\x91\x62\x6f\x02\x7c\xcf\x85\x89\xcf\x43\x70\x7b\x68\x90\xcc\xa3\x90\xf6\xdc\xa1\xeb\x81\x03\x8f\x09\x4a\x3d\x38\x8a\x01\x1e\x31\x11\x03\x8f\x62\x00\x47\xc4\x93\xd8\xb7\x70\x20\x3a\x06\xe1\x08\xcb\x8f\x0a\xef\x21\x91\x19\xee\x73\x98\x24\xec\x8c\x0c\x55\x96\xb5\xfc\x7b\x34\x1a\x85\x8f\xf7\x86\xfb\xf7\xf8\x53\x3e\x09\x69\xe8\xc3\x28\x7d\x2c\xfd\x42\x3e\xd7\x97\x0f\x9e\x43\x12\xf3\xee\xe4\x6b\x42\xf3\x6b\xfa\x15\xfd\x3a\xfb\x29\x3a\x84\x8a\x86\x48\x0f\xfd\xde\x6a\x88\x56\x2b\xcb\x6b\xdb\x88\xac\xdd\xb9\x8b\xb1\xed\x9a\x5b\x0f\xbf\x8c\x44\x71\x7b\xc6\x5e\xcc\x91\xbe\x19\x23\x37\x55\x1d\x28\x8e\xdc\x90\xd3\x7b\xc7\xed\xef\xb8\xfd\x1d\xb7\xbf\xe3\xf6\xd7\xca\xed\x25\xef\xac\x67\xfa\x8a\xd5\x0f\x53\xf6\x0f\x52\x0c\x27\x28\x33\x96\x9f\x4a\xf6\xfa\x2f\x5c\xf8\x22\x63\xb7\xc6\xe7\xff\xb7\xe2\xf9\x7e\xc6\x9e\x8b\xb0\x51\xaa\x8b\x5f\x85\x00\x90\xbe\x51\xfe\x5d\xf1\x42\xf9\xeb\xff\x9a\x9f\xb6\x78\xdd\x5b\x21\x57\xa4\x1d\xc8\xbf\x2b\x5e\x27\x7f\xfd\x97\xf9\xe9\xfe\xbe\x26\x6b\xb4\x11\x36\x4a\xb9\x9e\x37\x83\xe5\x19\x86\xae\x00\x8e\x92\x5d\x38\x9f\x47\xa1\x0f\xaf\x5c\x44\xd2\xa3\xb0\x7e\xfa\xf0\xea\xe5\xf7\x90\x24\x03\x35\x8c\xde\x45\x18\x0c\x5d\xf2\xf2\x57\xf8\x7f\xc1\x87\xc0\x05\x3c\x16\x70\xf8\xd5\x85\x9b\x88\x92\x22\xee\xf0\xe8\x18\xb8\xdc\x23\x29\xee\xc7\xe1\xd1\xd1\x43\xe0\x4e\x11\x0c\xfa\x11\x5c\x0a\xdb\xd5\x31\x38\x62\xff\x3b\x3e\x3e\x06\x47\x7b\xc0\xfd\xe3\x8f\xd8\x3d\x06\x47\xfb\xe0\xe8\xe0\x11\x70\xb3\xfa\xe2\x6c\x96\x4f\x45\x7c\x23\x6b\xe1\xa6\x38\xe7\x2e\x70\x3f\x05\x68\x4e\x90\x0f\x29\x62\xbf\xb9\x4e\xdf\x71\x81\xbb\x4b\x67\xf3\xdd\x13\x82\x7d\x1f\x47\x61\x7f\xff\xeb\x6f\xff\xfd\xea\x84\xbe\x3a\xf8\xfd\xf9\xdb\xc5\x37\x93\x5d\xbc\xa0\xfd\xc3\x6f\x0f\xfa\x3e\x8e\x30\x6b\x18\x7c\x52\x93\xfa\x34\x27\x58\xa4\x6d\xee\x36\x10\x7e\x30\x3d\x49\x5c\x36\xee\x31\x8c\x12\x94\x1b\xfe\x21\x70\xc3\xb1\x0b\x8e\xf8\x24\x62\x4c\xfb\xe8\xbf\xfc\xaf\x43\x70\xa4\x30\x59\x81\xab\x23\x4b\x72\x5c\x9c\xe3\x63\xe0\xea\x0b\x7b\xcc\x3d\x0f\xc7\xe2\x3f\xe0\xa2\x40\xc9\x3d\xe0\x3a\x0e\x7b\x19\x23\x29\x4c\xa6\xa1\x8f\xc9\xbc\x2f\x63\x40\xc1\xd1\xd1\xfe\x01\x70\xc3\xc0\x05\xee\x39\x81\xf3\x39\x22\xac\xfb\xa3\x23\xf7\xbb\x39\x22\xb3\x90\x5b\xad\x12\x17\xb8\xdf\x05\xbe\xfc\x0f\xfb\x7f\x01\xd9\x98\x64\x1f\xd9\x27\x1c\x0b\x57\x2d\x27\xfc\xc1\x01\x70\xf5\x1e\x8e\x01\xff\x8a\xf5\x72\x2c\xd6\x8c\x2d\x89\x9c\x6a\xe0\xf3\x97\xca\xcf\x3c\xc4\x4e\x43\xf6\x38\x96\x33\x93\x5d\xa8\x77\x97\xbb\x51\xc0\xba\xaa\xab\x6c\x94\x55\xdd\x3d\x02\x2e\xf4\xe5\xe1\x38\x3a\x78\x00\xf6\xd8\x06\x03\x2e\x41\x99\x1f\x46\x11\xf7\xd8\x44\xd8\x3f\xfe\x88\x05\x6d\xf7\xc5\xd8\xf0\x82\x46\x88\xba\xc5\xa5\x76\x9c\x74\x05\xe4\x5e\x89\x30\x14\xf8\x94\x9c\xfc\x7e\x04\x13\x36\xcc\xb3\x10\x9d\xab\x9f\x8e\xcb\x1b\x9e\x75\x72\xcc\x36\x3b\x81\x33\x44\x11\xe1\x07\x67\xa5\x6d\xa8\xf2\x8f\x6a\x67\xb0\x95\x7f\x7e\xc6\x34\x30\x3e\xb2\xd5\x57\x60\x86\x28\x1c\x5e\xcc\xf8\xe1\x16\x38\xcb\x36\xdb\xd8\x2a\x76\x32\x6b\x9e\x26\xd5\x26\xbb\x27\x30\x09\xfd\x7e\x40\xf0\x3c\xc0\xe7\x31\xdb\x7f\xb4\x94\x6c\x2b\xdc\x41\xf9\x27\x5b\xf5\x76\x8b\x4c\x90\x36\xd3\xa2\x24\xe4\x31\x4b\xdd\x10\x49\xf5\xf6\x65\x11\xa9\x1b\xe2\xdc\x7a\xa2\xcc\xf1\x39\x22\xfd\x04\x45\xc8\xa7\xfd\xd9\x22\xa2\xe1\xbc\x88\x61\x26\x68\xa3\x3f\xd8\xa6\xab\x2f\x92\x40\xbb\x35\x27\x6c\x4d\x42\xed\x7e\x29\xc7\x4c\x9f\xdd\xe6\xf4\xf9\xa2\xc8\xb1\x7b\x82\xc6\x98\xa0\x3e\x9e\x53\x21\x1e\x6d\x4a\x9d\x62\x87\x5f\x14\xb1\xba\xa3\xd2\x17\x49\x9e\x79\x04\x7d\x34\x95\x75\xc7\x36\x26\x91\xde\xdb\x97\x45\x26\xfd\xb2\x9d\x10\xbc\x98\x77\x41\xad\x72\xa7\x5f\x14\xd1\x44\x9e\x64\x3f\xcd\x2f\xdf\x98\x60\x85\x0e\xbf\x28\x62\x75\x26\x0b\xdc\x6e\x11\x80\x69\xf8\xdb\xb5\x14\xfd\x18\x3c\x7f\xf3\xd7\xb7\xff\xfe\xda\xce\x52\x54\xaf\x7a\xbb\x1b\x28\xbf\x81\xbf\x8e\xce\x1b\xf8\x1c\xb9\x6d\xdb\x44\xfc\xeb\xe3\xdb\xbf\x82\x97\xcb\xdd\xed\x13\x91\x93\x63\x03\x4a\xee\xf6\x95\x35\xe6\x46\xd8\x31\xff\xf1\xfd\x0f\xcb\x07\x8f\xc8\x99\xb5\x1d\x13\xcd\xe6\x74\xd9\x57\x79\xa4\x39\x83\x8f\x00\xa2\xeb\x1f\xee\x3d\x50\x56\x37\x18\x45\xf8\xfc\x25\x9e\x84\xdc\x3e\x48\xc9\x02\x35\x58\x9e\x1e\x02\x97\x8f\xa3\x9f\x44\x58\xd9\x49\xdd\xef\x62\x6e\x27\x04\x47\xdc\x88\x2a\xac\x49\x55\x9d\x88\x6e\xbe\x01\xee\xf4\xc0\x05\xfc\x85\xe0\xe8\x91\x58\xfa\xdf\xf0\xc2\x81\x44\x14\xd7\x4f\x2d\x62\x01\x7b\xfc\x5b\x5b\xa3\x94\xd5\x20\x93\xc5\x49\x9b\x71\x3e\x28\x8e\x93\x3b\xba\x1c\x4e\xc5\xae\x87\x76\x82\x83\xa5\xd5\xa8\xe6\xc5\x41\xc9\x9f\x1d\x87\x51\x51\x15\x2c\x9f\x10\x18\x53\x14\x38\x9a\x69\xd4\xa1\xd8\x39\x0b\xd1\xb9\x28\x5a\xce\xa1\x5e\x1c\xbe\x01\x1c\x4c\x1c\x98\x9c\x3a\x4b\xbc\x20\x0e\x0c\x66\x61\x1c\x26\x54\x3a\x87\xc7\xec\x5b\xd6\x22\xe6\xbf\x3b\x02\x6e\x42\xfa\xe0\x38\x9c\xe0\x40\x1b\x5e\xb7\x24\x11\x16\xd3\xc4\x8a\x2a\x51\x98\x92\x65\x7f\x2f\xdb\xf7\x01\xf6\x93\x7e\x14\xc6\xa7\xae\x81\x5e\xb2\x29\xcc\x5a\xee\x03\x77\x4a\xd0\xd8\x05\x47\x07\xdf\x4a\x63\x39\xaf\xbd\x76\xa4\x4a\x64\x3d\x7b\xf3\xf4\xfd\xa7\x8f\xef\x5e\x2a\x6b\x2d\x70\x05\x34\x66\x1c\xa0\xcf\x83\x29\x9d\x45\xdc\xea\xcb\x87\x40\x50\xe4\x02\x37\xc6\x78\x8e\x62\x44\x9c\x18\x13\x34\x46\x44\x44\x98\xf3\x07\x28\x0f\xf5\x75\x81\xfb\xe9\x24\x82\xb9\x11\xbe\x43\x30\x70\xe8\x14\x39\x01\xf6\xb9\x27\x57\x99\xdf\x73\x04\x2e\x93\xbc\x89\x1a\x11\x82\x24\xee\x9c\x1c\x2f\x9f\x3f\x79\xf7\xba\x40\x14\x71\xcb\xee\x26\xc8\x5f\x90\x90\x2e\xfb\x31\xa2\xe7\x98\x9c\x86\xf1\x64\x77\x4e\x70\xb0\xe0\x2b\xdb\xe7\xec\xab\x0b\x82\xfd\x80\xd9\x6d\xc6\x49\x36\x59\x84\x01\x6a\x26\x55\x6b\x03\x77\x97\x3c\xaa\xc0\x68\x36\x62\x59\xa6\x02\x92\x5b\xe1\x56\x67\x07\x7f\x7e\x7c\xf5\xf6\x3f\x6b\x72\xab\xd4\x09\xb1\x35\x1e\xf4\x2b\x8a\x7c\x3c\xe3\x80\xd6\x4f\x9e\xbe\x4c\x6e\xe4\x0d\xcf\x06\x96\x32\x4a\x89\xf3\xe4\x84\x22\xc2\xdf\x11\xde\x48\xc7\x8f\x16\x09\x45\x64\xe0\xfc\x8a\x9c\x84\x12\x1c\x4f\xa2\xa5\x83\x62\x1f\x2f\x08\x9c\x20\x7e\x46\x16\x09\x72\xf0\x58\xf4\x16\xc6\x4e\x76\x22\x1d\x14\x9f\x85\x04\xc7\x7c\x6c\xce\x18\x13\xfe\xf8\x09\x4a\xa8\xa3\x8e\xb2\x33\x27\xec\x5e\xf6\xd1\xdd\xc5\x7f\x77\xf1\xdf\x5d\xfc\x6d\x2f\x7e\x75\x5d\x6f\x74\xe7\x8f\x31\x99\x6d\xfb\xbe\x5f\xfe\xb2\xfb\xee\x7d\xfc\xf9\xdf\xc6\xfb\xde\x95\xd9\x34\x2e\x70\x7d\x18\xfb\x7c\x7d\x53\xdb\x10\x9b\xdb\x38\x64\x33\x70\xe9\x72\xce\x96\xac\x70\xc6\xbf\x01\xae\x98\xa1\xf1\x16\x94\xbb\x75\x1c\xa2\x28\x48\xd8\xae\xa8\xb8\x2b\xb3\x33\x01\x4f\xd8\x00\xb4\xbd\x2d\x8f\x05\xdf\xdc\x7c\x0c\x3c\x33\xd0\x15\x7e\x7a\x19\x27\x71\x08\x8e\xdc\x90\x22\x36\x4a\x55\x2c\x27\x8d\x89\x70\xa6\x30\x49\xe1\xcf\xa5\xd7\xde\x38\x02\x6d\x14\xc9\x1c\xc6\xc5\xb1\xbe\x96\x17\xde\xb7\x95\x0d\x1f\x02\x37\x8c\xe7\x8b\xec\x8e\xe4\xab\xc6\xc3\x21\x78\xe1\x22\xf7\x3b\xb8\xa0\x78\x8c\xfd\x45\x22\xa2\x21\xb4\x61\xa7\xc3\x95\x8f\x6a\x4f\x1e\x1b\x69\x55\x1e\x86\x1c\x7b\x10\x9e\xe5\xae\x15\x11\x92\xeb\x12\x18\x84\x58\x19\x33\xf3\x84\xad\xa5\xe3\x07\xbe\xea\x66\x3a\xea\x54\x94\x81\x2b\x08\x72\x00\x38\xd1\x15\x5b\xad\x24\x0d\xad\x30\xc7\xa0\xe4\xff\x19\x77\x81\x79\xa9\x9a\x96\x4c\x06\x01\xf9\x70\x1e\x52\x9e\x5c\x2b\xa3\x39\x1e\x8a\xe8\x09\x71\x07\x2a\x8b\x86\x79\x51\x0b\xaf\x90\x8b\xab\xd1\x56\x2e\x96\xa0\x91\xa0\xaa\x5c\x73\x79\x17\xab\xd7\x1d\x2b\x9a\x4f\x91\x7f\xca\xe5\x3f\x8d\xea\xec\xc2\xfe\x6f\x91\xfe\x8a\xee\xa5\x21\xa7\x7d\x64\xab\xc0\x7a\x4e\xe3\x6c\xaa\x03\x58\xd2\x40\x9c\xb4\xdd\x9e\x3c\xd5\x72\x7b\xa8\xbb\xba\x9a\x1a\xf9\x9d\x57\xbe\x81\x1f\xaa\xe0\x12\xa0\xaf\x6e\xed\x7e\x2d\x9c\x78\x8d\x11\x66\x87\x7d\x9d\xf3\x2a\xc0\xea\x3b\x12\x1f\x38\xbf\xe2\xc5\x17\xb8\xfc\xf0\x3f\x64\x11\xa1\x7e\x32\x47\x7e\x38\x4e\xe3\xad\xf2\x1c\x72\x8a\xa2\xb9\xb3\x16\x9b\xec\xfd\xf4\xf4\xa5\xf3\x03\x26\x33\x48\x3d\x45\xb9\xda\x4b\xc7\xc7\x01\xea\xa3\x20\xe4\xf1\x6c\xf2\xea\x51\x34\x4c\xaf\x9e\xf4\x2e\x4a\x96\x31\x85\x9f\x45\x68\xd6\x29\x5a\x8a\xfb\xa0\xe1\x12\x10\x55\x09\xd9\x6a\xe7\x2e\x00\xf5\x03\xc8\x35\xca\x1e\x9e\xfa\x51\xf3\x76\x4c\x1b\x68\x97\x73\xdd\x75\x97\x8f\x90\x63\xef\x15\x18\x0a\x56\xf7\xcc\x15\xef\xb9\x17\xcf\xd6\xe2\x10\x45\x66\xc0\xba\x31\x11\x42\x7b\x3b\x2a\x71\xdc\x5f\xd1\x1f\x5f\x45\x91\x33\x61\xfb\x0d\x52\xe4\x40\xe7\xe3\xc7\x17\xcf\x9c\x70\x2c\x14\x0e\xce\x82\x9d\x30\x71\x22\x34\xa6\x0e\xd7\xe7\x06\xd5\xe7\xb2\xee\x8c\x97\x8e\x78\xa5\x80\xab\xb3\xa2\x12\xa7\xd8\x68\x01\x4f\x16\x94\xb2\xfd\xa4\xee\xef\xfd\x03\xf6\xb6\x54\xb9\xce\x5f\xae\x5a\x30\xa0\x24\x70\x98\xbc\x25\x61\x42\xc3\x58\x8b\x0b\x4c\x7f\x92\x91\xf1\xe2\x17\xe3\xdd\x9c\x32\xeb\x7c\x90\xe5\xb1\x36\x06\xed\x92\x3d\x48\x2f\xd9\x64\x71\x32\x0b\xf9\xce\x7a\x50\x71\x24\x04\x21\xf4\x11\xe5\xa4\x95\xf7\xf0\x4c\xca\x20\x86\x45\x29\x52\xad\x15\x99\xaa\x28\xb0\xe9\x8c\x16\xf3\xc0\x72\x46\xcd\x62\xbd\xc5\x1e\x50\xdc\x0c\x25\xa8\x96\xce\x52\xce\xad\x1a\xd5\x53\xf1\x7b\xcd\xbd\xc3\xee\xb4\x38\xd0\x82\x74\xab\x36\xb3\xdc\x44\x85\x30\x5e\xfd\xa0\xb3\x9e\x70\xbc\x9c\xe1\x45\x52\xd8\x4f\x76\xc7\xe1\x61\x2a\xa4\x73\x46\xd4\x0f\x42\x18\xe1\x49\x7a\xc5\x64\x5e\xd9\x23\xf7\x09\x41\xc2\x30\xbc\x90\x1f\xce\x61\x2c\x53\x3f\x22\x44\x91\xb8\x29\x9e\x3c\x7d\xe9\xf0\xa8\xf6\xc7\xf5\x3a\x7d\x61\x0c\xcd\x36\x02\xbb\xee\x1a\x56\x38\x77\x51\x8b\x61\xbb\xf9\xc5\x97\xad\x2a\x57\x9f\x7d\x3a\x14\xfb\x40\xb6\xcf\xef\x03\xf9\xd7\x1c\x12\x1e\x3c\xaa\xef\x8b\x67\xe9\xfb\xaa\xee\xf8\xe2\xde\x3d\xcc\x99\x53\x5a\x11\x4d\xae\x63\x9b\x35\x10\xf3\xe9\xeb\xdb\xa1\xb4\x0f\x80\xfb\x5d\xa6\xf0\x7d\xe7\xa7\x3b\x9d\x91\xe5\x41\x4a\xa0\xfd\xf4\xd3\x41\x2a\xc0\xda\xcc\x77\x1f\x1c\x80\x07\x86\x39\xaf\x19\xa3\x5c\xc1\x63\xf2\x7f\x75\xa5\xee\x33\x3d\x76\x23\x55\x3f\x86\x67\xdb\xd6\xf4\xdf\x7e\xfc\x7e\xf2\xfe\xe0\xf4\xad\xb5\x65\x97\xc2\x13\x39\x6e\xb1\x4d\xd8\x21\x48\x52\x91\x90\x67\x74\xa9\x5b\x6e\x0a\x93\xa9\x2b\xae\xa4\xa3\x23\x25\x43\x49\x59\xda\x15\x41\x0e\xc2\x0f\xe8\x7e\x60\xd7\x87\xd2\x2d\xd9\x03\x7d\x8a\x5d\x1e\xc6\x3f\xe0\x6e\x5f\x2a\x7e\xcf\xdd\x90\x61\xd2\x97\x62\x79\xc5\x63\xc7\x8a\x21\xdb\x8f\xe3\x1d\x96\xe2\xa9\x79\x18\x04\x6b\x82\x67\xe5\x28\x72\x4f\xad\x31\x08\xae\x88\x84\x75\xe3\x98\xab\x27\x9a\x86\x52\x7c\xf0\x38\xe5\x32\xb9\x0c\x98\x0e\xce\x42\x0c\xcf\x36\x3b\x0a\x98\xa6\xaa\xd1\xd6\xa3\x1e\x7e\xfb\xfa\xa7\xbd\xf7\xbf\x1e\xfe\x69\x77\x28\x0e\x2b\x14\x73\xaa\x2c\x21\x8a\xc3\xd7\x32\xe9\xaa\x5e\x64\xe9\x3e\xd6\x4f\xb2\xe0\x3e\x59\x9b\x4c\x1d\xee\x2f\x26\x19\x6b\x76\xa6\x30\x71\x4e\x10\x8a\x1d\x18\x04\x28\x18\x54\x5d\xa2\x15\x9d\x7d\x98\x22\x82\x9c\x73\x98\x38\x30\x76\xb8\x4a\xc7\xfa\x09\xe3\x89\x70\x2b\xa7\xaf\xa9\xea\xd7\xe6\x55\x8d\x64\x94\xa2\xe1\xcd\x20\x63\x02\xcf\x3a\x21\x63\x02\xcf\xae\x99\x8c\xa9\x0c\xb4\x45\x32\x32\x12\x88\x71\x74\x41\x43\xde\xd3\x75\x6f\xc6\xe4\xba\x49\xf8\x1a\x9f\x3b\x8b\x84\x4d\x93\x67\x2e\x37\xcd\xb2\x05\xfd\x44\xaf\x74\x0a\xe9\x35\x11\x8f\xa3\x5f\x6e\x7f\x07\xf2\x61\x74\xb1\x01\x59\x47\x9b\xed\x3f\x95\x60\xd7\xfc\xa8\xe5\x57\xdd\x32\x77\x9d\x39\x6f\xc2\xe6\x51\x10\x5e\x5f\x1d\x87\x0a\xe6\x7e\x9e\x44\x3f\xfe\xfb\xb7\xb7\xbf\x6c\xe4\xdb\x4a\x0b\xea\x9a\x9d\x5c\x0f\x79\x6a\x6d\xff\x2c\x44\xe7\x65\x0b\x6b\x84\x21\x63\x9d\x52\xd1\x8d\x1c\x49\x94\x83\x03\x26\xc2\xbd\x54\x3f\x36\xba\xc7\x1b\xb4\x41\x7d\xcd\x9a\x74\x42\xae\x10\x33\x75\x50\x2e\x53\x51\x18\x7b\x08\xbe\x3e\x2e\xd8\xeb\x4a\x86\x7c\xf0\x75\x41\x8b\xb3\x09\x9a\x20\x08\x06\x3e\x59\xcc\x4e\x1a\xc2\x01\x34\x1d\x1f\x37\xf9\x79\xca\xce\xf2\x47\x75\x26\x7d\xa3\x84\x5d\xf6\x58\x3d\x89\x22\xe7\x83\x52\x2f\x2a\x4c\xec\x26\xbb\x66\x6d\xb4\x44\x67\x71\x2f\xda\xbc\xa7\xfb\x56\x26\xd4\xbc\x65\xd2\xce\xe1\xe6\x4a\x2f\x99\xc1\xb2\x69\x88\xf4\xb5\xbc\x4e\xd5\xbf\xd7\xe8\x5c\x5c\x9b\xd6\x26\xbd\xee\x49\xdd\x18\x9a\x52\xb2\xe9\xd5\x19\xf2\x5a\x58\xe3\xe6\xcb\xbe\xb2\x5d\x19\x5d\xc1\x46\x83\x3f\x10\x15\xae\x1d\xf1\x47\xb3\xcd\xe7\x29\x9e\x2f\x1d\xd5\xc4\xd6\xd4\x52\xd8\x5d\x35\x36\xd4\x26\x33\x9a\xe4\xfa\xd5\x36\x54\xf6\xb3\x18\x5f\xb5\x9f\xa1\x0b\xdb\xe5\x22\xb9\x15\x86\xcb\xf6\xd6\x49\x26\x93\x56\x92\xf7\x63\x52\x4b\x5c\xf3\x46\xb8\x26\x6b\xa4\x63\x13\x1e\x57\x7e\x7c\x1f\x64\x36\xc8\x32\x54\x42\xf1\xe9\x7a\x27\xf5\x95\x5a\x8f\xf7\x85\x49\x34\xdb\xea\x62\x0b\x3b\x1f\x93\x1a\xdb\x70\x9b\x91\x65\x56\xd9\x96\x23\x3b\x28\x8e\xcc\xe0\xc8\xa8\xdf\x22\x57\x67\xc0\xdd\xfc\x3e\x4f\x01\x1d\x6c\x78\xa7\x2e\x00\xc9\x18\xac\x26\xa1\xa7\x29\xb8\x4c\x17\xbd\xd9\xae\x6e\x2d\x79\x33\xd1\x70\x13\x79\x9b\x47\x30\x6e\x5b\xe0\xc6\x3f\xd0\x68\x32\x9e\xee\x99\x05\x6e\x59\x0c\x10\xb8\xa2\x70\x46\xfa\x01\x05\x2e\x48\x3d\x8c\x62\x1a\xe9\x7f\xd3\x48\x80\x34\x3c\x46\x17\xcd\x51\xcc\xbe\x38\x45\xcb\x39\x41\x49\xf2\x34\x0a\xfd\xd3\x66\x89\xfd\x10\xb8\x11\xa2\x8a\xad\x8b\x21\xf4\x4f\x38\xaa\xe2\x07\x71\x9c\xd4\x40\xb3\x0b\x36\x69\xe4\xf5\xf9\x5e\x85\x95\x17\x9e\x44\xa8\x7f\x8a\x96\x7d\x51\x3a\xc6\x2d\x58\xce\x5d\x29\x94\x8a\xda\x3b\xec\x0b\x26\x7a\xf6\xf2\xef\x65\xdd\xc6\x13\x3a\xe5\xbb\xce\x2b\x7a\x95\xf3\xfd\xcd\x60\x0c\x27\x7c\x48\xa5\x9e\x5f\xa5\x3f\x89\x17\x3c\xe2\x0e\xda\x9c\x8c\x98\x7f\x97\xbc\xcc\xb2\x6f\x52\x47\x76\xc3\x20\x32\xe2\xe5\x06\xf0\x94\x7f\x2d\x5e\x5e\xe8\xb9\xdc\xa5\x44\x62\xca\x2c\xe5\x62\x94\x62\xad\xbe\x5f\x8a\x10\x88\x8a\x85\x68\xa5\x90\x45\x61\xd2\x4e\x21\xeb\x54\x1d\x6b\x52\xc6\xd8\x85\xbb\x7f\x00\xf6\x1f\xd4\x43\xfa\x88\x47\x5a\xc6\x66\xb7\x89\xb1\x37\xe9\x19\xea\x3e\x65\x92\x95\xd0\x96\x2a\xe2\x4f\x64\xb0\xdd\x98\x47\x2d\xf5\xe3\x05\xbb\x3f\xaa\xf7\x5d\x31\xfa\x8e\xb1\x08\x8a\x29\x34\x30\xaa\xca\xd8\x92\x72\x08\xcf\x98\x87\x2a\x51\x8c\xa3\x13\x48\xfa\x14\x4f\x26\x1c\xa0\xa4\x14\xd1\x76\xbd\x21\xef\xf5\x81\x67\x06\x67\x50\xc1\xbb\x70\x6c\x0a\x50\x4a\x9f\x49\xf9\x7c\xfa\x45\xb7\x33\x95\xd4\x6c\xa1\x41\x4d\x68\xcd\x7d\xb3\x67\xa5\x4a\xc9\x71\xc9\xac\x72\xf6\xfa\x92\x16\x85\x63\x55\x6b\xd8\xfd\x2e\xbd\x42\xd8\xf7\x0a\x55\xc2\x00\x3c\x26\x5b\x54\x23\x7c\xf1\xef\x67\x8b\x6c\x02\xaa\x45\xee\xc6\x4a\x43\xb6\x64\x08\xdf\x40\x7e\x91\x49\x60\xda\xa5\x96\x7d\xa7\x18\x8c\xfd\xdb\xf5\x8b\xd0\xea\xfd\x45\x1f\x60\x9d\x40\xb6\xf9\xd6\xb0\x12\xc6\x94\x8e\xc7\x57\x82\x73\x4a\x1e\x05\x2e\xfb\x0a\xc2\x64\xce\x0b\x8b\xb1\x83\xfb\x1d\x45\x44\xf3\x3c\x67\xc5\x9c\x5d\x71\x8d\x57\xc5\xcc\x16\x48\xce\x25\x85\x5c\x70\x56\x81\xc3\x83\x2a\x89\xa0\xba\xab\x1a\x11\x21\x8f\x42\xa7\x6d\x98\x26\xfb\x5c\x53\xf2\x2b\xb2\x14\x73\x85\x0b\x7f\x11\x41\xd2\xf7\x71\xc4\x46\xae\x07\x7d\xe4\xbd\xf9\x09\x26\x54\x4e\x99\xcb\xaa\x30\xf1\xdd\x4c\xe7\x6a\xc6\xb4\x6b\xa1\x2e\xda\x5a\xb9\xb4\x9b\x92\x4e\xdb\x87\xdc\x1b\x9b\xa9\x70\x6c\x53\x33\x2b\xe3\x88\xd5\x0c\x09\x3e\x6f\x37\xbd\xa0\x51\x15\xae\x65\x19\x66\x6e\xa1\x8c\xcd\xdc\x68\x20\x03\x47\x73\xb6\xce\xfd\xf4\xc7\xa2\x6d\xaf\x9a\xaa\xf5\xf4\x36\xcd\xa3\xc4\x06\xd2\xc3\x79\xa8\xce\x17\x23\xbc\x26\xbb\x5a\x1b\xd5\x0a\xaf\x17\x59\x72\x25\xe1\x23\xff\xa2\xf2\x14\xd7\x31\x61\x3a\x0d\xd9\x05\xeb\xbc\x33\x6f\xf6\xac\x23\x78\x77\x3b\xd5\x4a\x5c\x29\xf4\x37\xc7\x73\x7c\x86\x48\x7f\x86\xe2\x45\xda\x23\xfa\x3c\x87\x71\x20\x39\x6d\x9a\x6f\xe0\x7e\x77\x8a\x96\x27\x18\x92\xe0\x89\xf0\xdf\x31\x9e\xbc\x38\x61\x2d\xb3\xab\xc7\xb0\x33\x1e\xa5\x56\x8b\xaf\xf5\xfc\x06\x46\x64\x45\xcc\x7a\x44\x4e\xf6\xe9\x1b\x73\x27\xbc\x7d\x41\x67\x11\x45\xcb\x5c\x69\x57\x2b\xfa\xcd\xed\xec\x5a\x36\x22\x93\x82\x79\xb1\xb5\x94\xbd\xc2\x04\x19\x5e\x64\xb5\xfa\x96\x63\xe2\xab\x68\x3d\xa0\xaa\x04\x45\x99\x49\x14\x0b\x67\xaf\x5d\x5a\x0e\x34\xf5\xc0\x86\x23\x2c\x9a\x2a\x17\xe2\x44\x99\x02\xfa\xfb\x6e\x37\xf7\xde\x1e\x70\x9f\x07\x22\x34\xb9\x2e\xb9\xa7\x1c\x57\x58\x7d\x8d\x09\xc3\xbc\xf4\x7d\x0b\xd8\x67\xf7\x3d\x2f\x9c\x98\x7f\xbf\xed\x8d\xd6\x25\x9d\xcb\x79\x73\x5c\x1d\xca\xeb\xe7\x6c\x22\xdf\x0a\xdb\xb2\x3c\x0c\xf9\x5c\xa0\x36\xcb\xc3\x93\x47\xb8\x45\x46\x2a\xfb\xfb\x12\x95\x56\x05\x76\x53\x3c\x17\x91\x08\x4d\x4b\xd0\x94\xb9\x26\x36\x6f\x13\x1d\x2a\x7b\x51\x8a\x53\xce\xcf\x00\x23\x44\xa8\xa3\x0a\x96\x58\x74\xde\x90\xd3\x50\xd5\x28\x53\xaf\x85\x3c\xd4\xa6\xa5\xe3\x28\xbb\xb2\x58\xac\xc6\xd7\xd4\x13\x39\x37\x1c\x5b\xb3\xbc\xfa\x57\xe9\x7c\x49\xd2\x65\x2e\xfa\x60\x9c\x0f\xec\xef\xf3\x30\x8a\xd8\xf8\x79\x23\xbc\xa0\x83\x0e\x66\x61\xff\xd4\x37\xc0\x5d\xd8\xe6\x11\xe6\x5a\x55\x25\xaa\x33\x8e\x47\x44\xa0\xbe\x25\xe5\x0a\x26\x7f\xad\xd3\x8a\x63\xe5\x0b\x03\x67\x1d\xd3\xdb\xdf\xcb\x1d\xe2\xcc\x67\x64\x4c\xed\xcb\xfc\x06\x72\xc4\x2f\xd5\xd9\xb7\xde\x31\x2d\x76\x56\xc1\x4f\x6f\x4d\xa0\x8d\x2f\x30\x4b\x8f\xc7\x3a\x93\xb3\x79\xca\xee\x96\x6b\xc3\x8a\xd6\x13\x58\xb7\xc9\x54\x72\x41\x74\x9d\x73\x94\x46\xef\x9a\x73\xc7\x4a\x2a\xff\x29\x56\xb2\x48\xca\xb2\x66\xf1\x1d\xdb\xe0\x23\x06\x27\xfe\x1d\xa7\xe8\x8e\x53\xc8\x50\x82\x56\x6c\xc2\xea\xbc\xb5\xa1\xf3\xb5\xf3\x88\xfc\x7d\xf4\x37\x60\x10\x65\xeb\x42\x9e\x7e\x1b\xb0\x84\xda\xe0\x05\xd3\x35\x7f\x60\xda\xb7\x2d\xc2\x8b\x12\x14\x07\x4f\x55\x88\x91\xda\xb8\x5a\x2a\xde\x42\xd4\xa0\x68\xdc\xa3\x0d\x1a\x9e\x96\x98\xa9\x6b\x79\x55\x39\x99\x1d\xb2\xe0\x35\xaf\x8b\x35\xcf\x42\x31\x4d\xa0\x73\xf6\xdc\x94\x1b\x59\x18\xff\x1d\x87\x2e\xfc\x53\x1c\x5a\xd0\xf1\x46\x32\x69\x3d\x4b\xf8\x8e\x47\x37\xf1\xe8\xa2\xd3\x56\x0b\x37\x6b\xcb\xbe\xb3\x3c\xe5\x56\x1c\xdc\xf6\x48\xb6\x59\x88\x6b\x67\xe2\xa5\x8b\xeb\x6f\xc0\xc7\x0d\x18\x3a\xaa\x69\xf1\xe1\x6f\xd9\x26\xd9\xdf\xaf\x0c\xec\xb4\x74\x22\x14\x1f\xfb\x1a\x7c\x03\x1e\x59\x85\x01\x1e\x82\x87\xa5\xe7\xca\x4f\x95\x43\x0a\x2d\xcc\xd6\x1c\xa5\xc4\xda\x0d\x5a\xc6\xa8\x6c\x09\x9c\x5c\xe8\xaf\x63\xf7\x66\x19\xc4\xf2\x8a\xc2\x27\xf4\x7f\xaf\x05\x3e\xa6\x33\xc6\x8b\x38\xd8\xc0\xaa\x50\xc0\xdb\xbc\x41\xce\xad\x66\xa0\xce\xc2\x3a\x98\xb8\xe1\x75\x2d\xc3\x39\xcf\x35\xe3\x8b\xe1\xcc\x20\xf5\xa7\x69\xa2\x9e\x88\x1c\x00\x0e\x26\x9c\xe3\xce\xe0\x92\xc3\x86\x6a\xd0\xcd\x1a\x22\x34\x12\xbd\x2d\x25\x10\xb7\x68\xcb\xba\x1a\x63\xd2\x36\xfd\x4d\xff\x27\x52\xe1\x02\x1c\xff\xf1\x15\x1b\x11\x9a\xc9\x2a\xaf\x30\x5e\xca\x37\x22\x6a\x35\x44\xf5\x70\x65\xca\x5c\xb7\x1b\xc5\xe2\x21\x8b\xf0\xe3\x86\x80\x98\x8d\x90\x28\x73\x3f\x1e\x54\x25\x08\xee\x9b\x4a\xf3\xad\x15\x68\x2c\xa1\x4e\xd7\x8f\x34\x56\x48\x03\x37\x03\xbf\xf2\x9b\xe0\xcf\xff\xec\xed\x8d\x0f\xd7\xc9\xf1\x8b\x70\xa2\xe7\xfa\xb5\x02\xb0\x74\x95\x33\x3c\x0a\xfd\xa5\xa2\x84\xb8\x80\xc4\x1f\x7a\xa5\x4b\xa5\x41\xf1\x48\x20\xfe\x73\xae\x36\xa5\xfa\x4b\xa5\x72\xd4\x04\xd4\xe5\xe3\xe0\x6a\x9d\xcd\x92\x4c\x6e\x9b\x82\x90\x1d\xe5\x3c\xc9\xe1\x71\x45\xa0\x2f\x63\x6c\x65\x24\x2e\x9c\x0b\x71\x56\x0b\x40\x72\x9f\xcc\xe7\x51\x88\x02\x76\x47\xb0\x1b\x6c\xcc\xc1\x60\xf9\xfd\xc7\x03\x4b\x87\x6e\x46\x9e\xc4\x6d\x15\xcb\xd6\xa0\xae\xb9\x77\x78\x63\x9b\xe3\x8d\xad\xeb\x96\x68\x4d\xbf\x3b\x20\xb2\xd6\x40\x64\x1d\x25\x2d\x76\x08\x21\x26\xb0\x37\x6f\x64\x1a\x5e\x37\x19\x60\x0f\x6b\xf0\xc3\x36\xc2\x0b\x2b\xeb\x52\xd6\x44\x6a\xca\xd0\xbb\x5a\x21\x57\x0e\x70\x86\x03\x18\x15\xf7\x0f\x8e\x05\x17\x4e\x51\xa5\xea\x92\xd7\x5a\xc5\x63\x59\x92\xa6\x8d\xba\x56\xda\x45\x65\xc5\x4d\x42\xcb\x86\x71\x73\xc6\x5f\xab\x48\x2e\xcb\xd9\xd8\xab\x3c\x85\x99\xd8\x1b\x02\x3f\x64\xa7\xd8\x09\x13\x47\x16\x1b\x8f\xf8\x9c\x17\x09\x1a\x38\x2f\x44\xad\x19\x7f\x8a\x31\x4f\x44\x35\x1c\x7f\xe0\x84\x54\xc4\x7f\x9c\x20\x87\xa0\x19\x3e\x43\x81\x33\x26\x78\x56\xe0\xff\x6e\x6d\x60\xa7\x79\x77\xea\x99\x23\xf9\x34\xfe\x3d\xe0\x0e\xd7\xb4\xcb\xd4\x89\x34\x6a\x08\xdf\x49\xdc\x5e\x25\xe7\x29\xf9\x26\x85\xf1\x35\x03\xe5\x6d\xb6\x10\xe2\xbc\x38\x3e\x8c\x99\xc2\x75\x82\x9c\x45\x1c\xe0\x18\x0d\x44\x6e\x91\x75\xd6\xac\x0d\x0d\xba\xdf\xad\xad\xa2\x4f\x0b\x74\xba\xbe\x14\xde\xdf\x50\x02\x9c\x96\x2e\x8c\xab\x4b\xe3\x2d\x3a\xbb\xec\x6c\x9d\xf6\xf9\xde\x6b\xe8\xb3\xb6\xc1\xd2\xd7\x84\x42\x69\x6b\x55\xb8\x09\xf8\x94\x5d\x60\xf6\xe4\xf5\xf1\x6e\x34\xfb\x1b\x85\xd1\xb7\xfc\xcf\xec\x24\x7a\xb7\x7c\x5a\xa1\xe2\x4b\xd8\xf1\xdb\x03\xd5\x27\x6c\x06\x57\x8b\xd3\x27\xde\xf1\x85\x82\xf4\x15\x09\x78\x15\x08\x7d\xd7\x40\xc0\xed\xc1\xf3\x49\x02\x5e\x25\x36\x5f\x7b\xfa\xb5\x00\x46\x03\x7a\xba\x3d\xa3\x86\xaa\x46\xc0\xff\x9b\x70\x64\x01\x92\x50\x71\x3b\x55\x1b\x73\x32\xda\x8a\x8c\xf4\x00\x51\x18\x46\x8d\xc6\x1f\xc5\xe3\xf3\x6e\xfc\x6f\xb5\xc2\x22\x69\xd6\x7b\x2f\x6f\xc1\x10\xaf\xc9\x96\xae\xec\xd9\xcc\xff\xee\x0e\x9d\x72\xb2\x7d\x61\xac\x5a\xf6\xbc\x0d\x36\x53\xbd\x75\xf9\x6a\xf8\x52\x67\xa0\x72\x59\x97\x32\xbd\x7f\xab\x7c\xe9\xd1\xa3\x05\x9c\xbf\x39\xff\x68\x87\x1d\x9b\x93\xed\xf5\x08\x00\x46\x1d\x1f\xc9\x03\xd3\xcf\xe5\xc1\x29\x3c\x33\x83\x02\xb4\x07\x34\x4c\x07\x4d\xa8\x10\x6a\xc1\x24\xc2\x27\x30\xd2\x3a\x93\x68\x50\x61\xe2\x9c\x2c\xc2\x88\x3a\x61\x4c\xb1\xac\x34\xf7\xc7\x57\x89\xba\x10\x92\x65\x42\xd1\x6c\xc0\x2b\x90\xfa\x30\x76\xe0\x7c\x1e\x2d\x85\xe2\xc6\x2b\x9a\xc0\x48\x3d\x49\xb1\x34\xce\xf2\xea\x72\xe3\x45\x14\xa9\x32\xa2\x62\x00\xf3\x54\x41\xe4\x25\xee\x82\x90\x83\x61\x38\x98\x48\x75\x8f\xfd\x05\x9c\x93\x05\xe5\xef\x39\x41\x4e\x38\x89\x31\x41\x81\x73\x22\x5c\x47\xfc\xcd\xec\x32\x09\xb9\x05\x09\xc6\x12\xcf\x2a\x19\x38\x2f\x11\x24\xb1\x33\xc3\x04\x31\x95\x93\xdd\x35\xee\x95\x14\x72\xe1\x84\x0a\xe3\x7e\x86\xac\x7c\x5c\x5d\xa0\xa5\xb1\xfe\x99\x5c\xb3\xaa\x82\x70\x83\xb2\x94\x58\x13\xc3\xc4\xf7\x75\xc8\xed\x71\x9c\xae\xc5\x28\x15\xd5\xbc\x2a\x24\x46\xfd\x5e\xaa\xba\x65\x4e\xab\x55\x8f\x07\x95\x2a\xb8\x01\x1f\xce\xdc\x45\xe9\x8d\xbf\xc0\x28\x0c\x9c\x67\x90\x42\x1f\xc5\xfc\x3a\x6a\xf1\xfa\x47\xc0\xfd\x13\x87\xbc\xc2\x33\x70\xe4\x55\x2b\x76\xde\x6e\xa0\xf5\x98\x33\x1e\x17\xb3\xb4\xdb\x0e\xf8\x19\x4a\x7c\x12\xce\xab\x0b\xfa\x35\x52\x2a\xd7\x83\xf9\xfd\xf5\x3a\xc3\x35\x3a\x57\x3a\xe3\x01\xec\xc2\xee\xe4\xea\xbf\x09\xc0\xa2\x07\x3f\xbe\xf4\x1f\xe2\x64\x6a\xd6\x48\xf2\xf8\x43\x20\x5f\x31\xa9\x46\x51\xe1\x5b\x24\x79\xa2\xd5\xcd\x6e\x16\x5c\x5a\xf9\xac\xdc\xec\xd8\xcc\xe1\x04\xf5\x69\x48\x05\x86\xc2\x6b\x74\x2e\x2d\x73\x5c\xd1\x76\x3f\x05\x68\x4e\x90\x0a\xa1\x75\x77\xe9\x6c\xbe\x7b\x42\xb0\xef\xe3\x28\xec\xef\x7f\xfd\xed\xbf\x5f\x9d\xd0\x57\x07\xbf\x3f\x7f\xbb\xf8\x66\xb2\x8b\x17\xb4\x7f\xf8\xed\x41\xdf\xc7\x11\x66\x4d\x82\x4f\x8a\x58\x9f\xe6\x04\x33\x9e\x80\xc9\xae\xf5\xd2\xf2\x3d\x72\xbc\x21\xce\x64\xe5\x44\x9f\x07\x21\xbd\x85\x33\xb5\x9e\x7c\xe5\xc4\x45\xfe\x35\xe3\xf8\x94\xe0\x28\xb9\x55\x93\x07\x76\x98\x4e\xa2\x88\xa2\x3a\x3b\xc0\xfd\x4e\x16\xd6\x4d\x7d\x0b\x99\x58\x2e\xa5\x13\x83\x7b\x31\x7f\xfc\x80\x2b\x6e\x1b\x97\x5f\xb3\x26\x58\x0f\x0d\x35\x4a\x7d\xf1\x24\x57\xf8\x5e\x7c\xf7\x5c\x0d\x65\x9b\x58\xbf\xe9\x02\x98\x70\xa6\x1e\x80\xc3\x26\x0c\x3c\xf5\x58\x6b\x70\xbe\xcc\x3f\xdb\x6e\xc0\x9a\x1b\xb8\x05\x3e\x9f\xad\xf1\x59\x2f\xdd\xdd\x76\x64\xf9\xc6\x57\x31\xbc\x1b\x0b\x98\x5c\xae\x34\x92\x43\x4e\x7e\x9b\xfd\xfa\x25\x60\x27\x5f\x25\x3b\x76\x24\x16\xb2\xe0\x47\xb6\x4c\xce\x64\x10\xca\xc4\x5e\x26\x72\xe0\x71\x85\xc4\x9b\x86\x2b\xad\x07\xb6\xf2\x4b\xd8\x7a\xb0\xb9\xf6\x1a\xf3\xb5\xe7\x73\x6b\xf8\x1b\x0a\xbc\x6e\x8b\x28\xd3\x8d\x40\x58\x25\xc7\xfb\xb5\x2d\x68\x25\x73\x50\x4c\x76\x13\xd1\xcb\xd4\x6f\x09\x68\xb5\x7e\x51\xda\x47\x55\x6e\x1c\x19\x59\x16\x50\x36\xd5\x55\x6e\x04\x28\xeb\xd7\xbf\x1f\x9c\x7d\xf8\x3c\xfd\xbd\x42\x59\xc1\x84\x09\x38\xec\x3f\x5c\x6a\xd2\x20\x59\x9b\x71\x54\x5b\xdf\x94\xf5\x42\xaa\xce\x3b\xb6\x26\x9d\x66\xf1\xb1\x9b\x68\x21\xb7\x42\x10\x6f\x3b\xd5\x22\xa3\x6c\x0d\x78\x9b\x41\xcb\xb9\x4f\x1c\x8a\x9d\xdf\x5d\x33\x86\x2c\x7f\x2e\x40\xfc\xc1\xdf\x79\x66\x81\x5b\x8f\x0c\xcb\xb6\x6f\x03\x2e\x6c\xce\x78\xb2\x99\x36\xa1\xf4\x07\x33\x7a\xec\xa6\x7a\x40\xa7\x5a\x40\x0b\x1d\xe0\x10\x3c\xac\x8f\x14\x2e\xa6\xf3\x74\x24\x95\xd5\x49\x64\x55\x0c\xdd\xc4\xb2\x37\xc7\xad\x8c\xe1\x99\x2d\xab\x6e\x79\xe5\x95\x17\x42\x14\x56\xdc\xbf\x56\x5c\x4e\x3b\x3d\xac\x46\x0b\xdb\xb7\x0e\x25\xef\x5a\x05\x6b\x52\xc0\xba\x1e\x99\x5d\x64\x92\x95\xe3\xa1\x46\x85\xba\x43\xf4\x55\xe3\xb2\x47\xf4\xf5\x71\x1c\x40\xb2\xbc\x59\xf0\xbe\x52\x8c\x4a\x3d\xb8\x05\x94\xdf\xfd\xb5\x50\x7e\x33\xa6\x56\x37\x08\xf5\xae\x81\x40\xa4\xbd\x69\x50\xbf\x06\x51\x21\x85\x9a\x95\x56\xb9\x19\x1b\x01\xe5\xa9\x11\x92\xb3\x1a\x28\xa9\x10\x77\xcd\xc8\xbd\x6d\xb6\xda\xc6\x88\xc3\xfa\x18\xf5\xc0\xe4\x6d\x02\xfd\x4a\x79\x4f\xaa\x83\xe6\xf8\x54\x1c\x67\x31\x91\x7a\x30\x5d\xd5\x76\x14\x07\x21\x0e\x4c\xc1\x2a\xc5\x58\xd6\xbb\xb4\xde\xb2\x99\x6d\x5b\x69\xbd\x8a\xbb\x74\x99\xda\xab\x54\xb3\xbb\xf4\xde\xf5\x97\xa3\xb3\x14\xdf\xb4\xc7\x6b\x4d\xf3\x55\x6f\xb5\x1a\x66\x36\xc4\x6b\x4b\xf5\xed\x3e\xe4\xbc\x6c\x2e\xcf\x05\x61\x60\x3f\xe9\x47\xa1\x88\xff\x58\x0b\xb7\xdb\x3a\x34\xc5\xc7\xb3\x19\x8c\x03\x1e\x9c\xb2\x2b\xd9\x4f\x2a\x2c\xd6\x86\x9d\x54\x84\xab\xa8\x58\x06\x3d\x1a\xc5\xc1\xb1\x33\x2f\x58\xef\xcd\x34\xa9\x05\x01\xaf\xa0\x56\x84\x20\x89\xaf\x82\x5c\x2f\x9f\x3f\x79\xf7\xba\x44\x2f\xc6\x0d\x77\x13\xe4\x2f\x48\x48\x97\xfd\x18\xd1\x73\x4c\x4e\xc3\x78\xb2\xcb\x2d\xa5\x61\x3c\xe9\x43\x3f\x32\x84\xf6\x6c\x40\xcc\x77\x08\x06\xfc\x78\xf2\x40\xa2\xf6\x14\xbc\x19\xf9\xec\x35\x39\xe9\x36\x42\x63\xcb\x1f\xbb\x4b\x6b\x37\x18\xb5\xd6\xb4\xde\xf2\xa2\xfe\x37\x23\xb9\xfd\xa7\xaf\xdf\xff\x18\xff\xf9\x67\xb4\xa5\xe4\x76\x46\x09\x73\x6a\xbb\x0c\x69\xf9\x2e\xf0\xb5\x44\x77\x53\x82\xbb\xca\x7c\x67\x9f\x03\xdf\x2d\xa4\xbd\xe7\x74\x95\x02\x23\x86\x71\x60\x93\xc5\x0a\xda\x72\xed\x46\xd3\xb4\x51\x72\xfb\x95\x33\xc6\x30\x11\xc1\x90\x8c\x30\xce\x22\x41\xc1\xe3\xb2\x16\x5e\x9b\xc5\xf5\x2b\xfa\xe3\x2b\x82\x1c\x1c\x47\x4b\x87\x07\x44\x52\xec\x24\x53\x7c\xee\x84\xb1\x28\x90\xc4\xee\xe1\x31\x26\x82\xcd\x93\x70\x06\xc9\xd2\xc9\x42\xd9\x1c\x18\x8b\x2b\x46\x66\xdd\x69\x3f\xc9\xb8\x4b\x26\xf9\xa7\x8c\x99\xf7\x8c\xce\x10\x59\x3a\x3e\x4c\x90\x14\x40\xb2\x19\x84\x09\x8f\xb3\x0c\x45\xf8\xb7\xc9\xa2\xd6\x2a\xd2\x4c\x66\xdb\xdd\x25\xeb\xdf\x25\xeb\xdf\x25\xeb\x7f\x11\xc9\xfa\xef\x70\x84\xee\x52\xf5\xef\x52\xf5\xbf\xc8\x54\xfd\x77\x9c\x05\x7e\xe1\x89\xfa\xef\x24\x9f\x6f\x99\xa6\xcf\x9a\xdd\x25\xe9\x77\xb5\x08\x77\x49\xfa\x77\x49\xfa\x1d\x27\xe9\xdf\xa5\xe9\xb7\xb2\x8c\xdc\x80\x34\x7d\xcd\xac\x50\x61\x9d\xb8\xd7\xc2\x3a\x71\xa3\x12\xf4\x1f\xbe\xfc\xf9\xfd\xf8\xd5\xef\xe7\x5f\x4a\x82\x3e\x57\x8e\xaf\x34\x3d\x9f\xbd\xe1\x0b\x4d\xce\xcf\x13\xef\x2a\x52\xf3\xaf\x9c\x78\xdb\x4b\xcc\xe7\xc4\xbb\xca\xb4\xfc\xb6\xb4\xbb\x4b\xca\xff\xb2\x92\xf2\x4d\xec\x63\x73\x63\xf9\x4d\xc8\xc9\x3c\x8c\xe7\xc9\xec\xf3\x3f\x9e\xdf\x8c\x9c\x4c\xd9\xbf\x56\xfd\xb1\x36\x30\xb0\x32\x57\x91\x29\x62\xee\x16\x62\x84\xb3\x75\xed\x20\x21\xb3\x72\x8a\xaf\xd1\xf9\xed\x9a\xe1\x17\x11\xff\xbd\xde\xcc\xbb\xcf\xc2\xe4\xcc\xee\x6f\x96\x83\x29\x68\x7f\x97\x80\x79\x97\x80\xb9\x7e\x02\x26\xdf\x43\xe6\xec\xcb\x77\xf2\xa7\xbb\xd4\x4b\x1b\x7b\xb7\x62\x3f\x6b\x1a\x4c\x52\x06\xbd\x29\xb3\xc8\xfe\xdd\xa2\xd4\xc5\xba\xfb\xad\x94\xeb\xb7\x96\x81\x66\xf3\xa0\x90\x02\xa7\xdb\x48\xc6\xbd\x11\xb9\x7c\xff\xf7\x63\xf4\x0d\x59\xbe\xf8\xf5\xe6\xe7\xf2\xa5\x37\xd1\x76\xa4\x9b\x2f\x3f\x8b\x6f\xbd\x79\xde\x80\x14\xbe\xc2\x83\x22\x9b\xe5\x05\x9b\x87\xec\xf7\x35\x3a\x47\x09\xf7\x45\xe3\x28\x40\x99\xd0\x57\xd3\x50\xbe\xe8\x0d\x7f\x9e\xb5\x8c\x79\x1f\x37\x2b\x6b\x90\xcb\xbb\xb7\x30\x67\xb0\x4a\x66\xbd\x4b\x18\xbc\x4b\x18\x6c\xd0\x1a\xee\x12\x06\x0d\x1b\xb7\x75\xba\x20\x3f\x80\x77\xb9\x82\x77\xb9\x82\x77\xb9\x82\x7a\xae\xa0\xa8\x0b\x7c\x93\x33\x05\xb3\x11\xde\xb0\x3c\x41\x1e\xd9\x7d\x97\x25\xf8\x77\xce\x12\xe4\x4c\xa5\xcb\x14\x41\xae\xf1\xdd\xa0\x54\xaf\xdb\x92\x1f\x28\x16\xa2\xb3\xe4\x40\xd1\xdd\xb5\x66\x06\xf2\x57\x5a\x0d\x50\x0e\xee\x2e\x27\xb0\xe3\x9c\x40\xce\x68\xae\x24\x23\x90\xe8\x16\xe5\x5b\x90\x0e\xc8\x29\xf5\xe4\xed\x8b\x02\xb5\x14\x91\x12\x8e\xed\x7d\x97\xef\x77\xeb\xf3\xfd\x8a\xe6\xaf\x35\x6d\xbb\x02\x04\x7b\xb7\x3f\x0e\x51\x14\x24\x88\x26\xfd\x08\x4d\x20\x47\x77\xd8\xaa\xa1\xf7\xe3\xfe\x4f\xe3\x43\x78\x40\xcc\x86\x5e\xb3\x11\x37\x1f\x09\xa3\x66\x54\xe3\x91\x72\xab\xca\xee\xcb\x53\xca\xcf\x98\x50\x2c\x29\xfa\x4c\x2b\x13\x7c\x54\xa0\x4f\x9a\xdf\xe4\x4c\x61\xd2\x57\xb1\x15\x99\x28\x58\xeb\x13\x4b\xe6\x30\xb6\x83\xa3\x2f\x5c\xed\x61\x3c\x5f\xd0\xb2\x26\xc8\xaf\x77\x61\x8f\xc3\x63\xec\x2f\x92\xcc\xee\x67\xc6\x61\x77\x65\x0b\xad\x41\x39\x18\xbc\x1c\x25\xaa\xa4\x03\x69\x7b\xb5\x4c\x44\x2b\x22\xfb\x0b\x4d\xc1\x25\x30\x08\xf1\x84\xe0\xc5\xdc\x2d\x2e\x45\x2d\xe5\x3f\xa8\xd0\x35\x03\xe5\x0d\xe2\x0c\x82\x4c\x43\x2e\x58\x76\x35\x0c\x49\xf6\xda\xb0\x25\x3a\x68\xcd\x96\xaa\x0f\x92\xaf\x5a\x7f\x15\xb7\x05\xe7\x21\x85\x51\xf8\x17\xca\xa2\xb1\x8e\x1b\xc0\xfb\x2b\x5e\x21\x77\x8a\x46\x76\xb9\xe4\x82\x7c\x82\xe0\x72\x03\x49\xfe\x92\x46\x9a\xab\xe5\x98\x22\xff\xd4\x90\x2b\x58\x4e\xf6\x53\x4b\x52\x1a\x72\xda\x87\x96\x00\xb7\x0f\xdc\xd4\x12\x51\xa9\x6b\xb9\xa9\xa9\x22\x6d\xb7\x97\x65\xa8\xb1\x9d\xe3\x6a\x61\x6f\xd5\x39\x55\x75\xa9\x71\xfb\xa5\xb8\x68\x9b\x56\x95\x8d\xca\xb7\x4b\xd1\x62\xc5\x2f\x96\x75\xee\x86\x77\x0b\x26\x4a\x76\x23\x4b\x15\x4b\x7f\x90\x05\x53\xf9\xe7\xc8\xd7\x2d\xe6\x39\x89\x61\x8a\xa2\xb9\xb3\x96\xd8\xd0\xfb\xe9\xe9\x4b\xe7\x07\x9e\xec\xeb\x55\x7b\xea\x1d\x5d\x65\x0f\x50\x1f\x05\xa1\xb0\x7a\x14\x1c\x0f\xea\x96\x4b\x96\x31\x85\x9f\xd9\x27\xcd\x14\x76\x8a\x96\xe2\x22\x69\xb8\x3d\x38\x29\x45\xa8\x8d\x7e\x73\xa8\x1f\x80\x3b\xf5\xf3\xb9\x8d\x5a\x93\xa6\xcd\x9a\x3e\x5a\x61\x12\xa8\xbb\x52\xd7\xcd\xf2\xbd\xaa\x2d\xf7\xe2\xd9\x5a\xcc\xa8\xc8\x77\x44\x50\xa0\x39\xd1\x48\xbe\x1d\x95\xf2\xf2\x7f\x45\x7f\x7c\x15\x45\xce\x84\xed\x37\x48\x91\x03\x9d\x8f\x1f\x5f\x3c\x73\xc2\xb1\x48\xd8\xe2\xdc\xde\x09\x13\x27\x42\x63\xea\x70\x93\xc7\xc0\x3c\xd8\xd6\x67\x39\xdf\xa0\xa3\x38\xd4\x2a\xb9\xab\x53\x59\x6e\xdb\x42\xdc\xc1\x6f\x87\xf4\xfd\xe4\x81\xb9\x70\xa1\x11\x90\xa1\x5a\x66\x5b\xf3\x5c\x54\x88\x1b\xf9\xf3\x80\x27\x93\x72\x0d\x21\x4b\x5e\xde\xc4\x5a\x5f\x62\x1f\x46\x6e\x1d\xf7\x64\x73\x91\x4f\x5d\x15\x73\xe4\x9d\x9e\xe0\xcf\x55\xfc\xb1\x8e\xcd\xa0\x84\x92\xd0\xa7\xe2\x98\x89\x2a\x5a\x14\x3b\xd0\x89\xd8\x90\x35\x00\x86\x12\x14\x84\x39\x32\xa7\xe2\x78\x73\x02\xa8\x92\x5a\x13\x44\x9d\x04\x51\x27\x8c\xb9\x7e\xf9\x0e\x8e\xa9\x93\x50\x4c\x90\x83\xc7\xfc\x1b\xf1\xee\x67\x4f\x39\x1e\x44\x80\x45\x8d\xad\x33\x44\x78\x4b\x4a\x60\x9c\xcc\x42\x4a\xb3\xa2\x3f\x0a\x49\xe2\xd9\x53\x51\x81\x6b\x1e\x85\x3c\xe6\x40\x95\xd6\xc2\x74\x8a\x88\xf3\xec\x69\xe9\xca\x68\x79\x59\xd8\xdf\xbf\x0e\x07\x04\x80\x14\xf5\x85\x33\x46\xec\x11\xe3\xfe\x33\xad\x8a\x26\xba\x3b\xbd\x37\xb2\x07\xaf\x92\xde\xec\x8d\x90\x20\x68\xda\xa0\x85\x7a\x4e\x62\xb7\xa9\x6b\xdc\x7a\xb3\x5d\x4d\x99\x27\xd3\x95\xc0\x86\x1e\x06\xae\x50\x19\x92\x22\xd5\x2a\x8d\xca\xef\x4c\x76\x1c\x57\xc3\x79\x11\xfe\x13\x4d\xc6\xc8\x61\xbb\xe8\x40\x1f\x15\x60\x2e\x05\x01\x41\xbc\xaf\x08\xf1\xd2\x62\x7e\x3a\x16\x95\xd5\x14\x8b\xa5\x27\x0a\xb3\x94\xd8\x88\x1d\xcf\xf3\xad\x06\x21\x55\x3d\xd5\x2b\x60\x98\x9d\x70\xca\x1b\x80\x71\xf4\x0c\xbf\x88\x7e\x78\xf0\x93\xb9\x8a\x62\x03\xc6\x51\x7b\x6c\xa3\x92\x3d\x5f\x81\x6e\x3c\x92\x69\xe3\xbb\xa1\x66\x02\xaa\x29\x1b\xd7\x18\x14\xa7\xc5\x1e\x48\x72\xeb\x72\xc9\x3a\xe5\x15\x9a\xba\xcd\xc6\x6d\x5f\x64\xe1\x06\xe2\xed\xe4\xb1\x9f\xec\x16\xa5\x88\xc5\xa3\xc1\xf4\x54\x3c\x91\x41\xd2\xdc\x81\xf0\xdc\x81\xf0\xac\x09\x3b\x66\xba\x3c\x60\x8c\xe3\xe5\x0c\x2f\x9a\xca\x4e\xaa\x0e\xfa\x65\xd3\x91\x08\x5f\xc3\x84\x2b\x8a\x72\x3a\xbc\xff\xe2\x6f\xf6\x57\x52\xc1\xa2\xd0\x21\x46\x10\x87\xef\xf8\x82\x41\x82\x0e\xaf\x0a\x24\xa8\x0a\xdc\xc1\x82\x48\x4d\x20\x41\x65\x12\x5d\x13\xa8\x43\xfd\x8c\xb7\x0f\xdd\xb0\x96\xab\x49\x97\x96\xba\x90\xba\x6e\x14\x76\xc3\xeb\xe5\x47\x38\xd9\x3b\x08\xbf\x00\xec\x86\x0f\x53\x24\x15\xf4\xab\xc2\x6e\xa0\xea\x0d\x5f\x1e\x76\x83\x81\x78\x1d\x63\x37\x5c\x0f\xf1\xb6\x82\xdd\x90\x11\xef\x8a\xb0\x1b\xae\x87\x76\x7e\x84\xe3\x1b\xb0\xef\xf8\x30\x02\x07\x26\x7a\xfe\x0d\x25\x8b\xd8\x17\x42\xa7\x7c\xe1\x42\x00\x49\x14\xc5\xa5\x47\x40\xf3\xc4\x6e\x92\xb5\x6e\x58\x0f\x36\xb2\x6b\xbc\x07\x92\x2d\x60\x90\xf0\xa8\xb1\x18\x9f\x3b\x8b\x44\xcd\x34\x46\xe7\xce\x93\xa7\x2f\xc5\x8c\x37\x27\xa2\xea\x18\xd2\xac\xd7\x2b\x82\x24\xb9\x03\x2e\xf9\x62\x80\x4b\x8c\xc2\x53\x07\xd2\xd8\x4d\x80\x2e\x99\x7e\xfe\xfe\xf9\xc1\x9b\xdf\xde\x6c\x60\x02\x2b\x66\x78\xde\x98\xaa\xf3\x6e\x1d\xf6\x07\xd7\x1d\xdd\x2d\x24\x4f\x6a\x8b\x7f\x95\xf8\x26\x3c\x43\xfc\x96\x4d\xf2\x8b\x48\x8e\x5d\x73\xea\xdd\x63\x9c\x08\xd1\xe6\x6f\x06\x72\x22\xa9\x5f\xd4\x73\x1f\x82\xaf\xc1\x37\xe0\x51\x13\x2a\x80\x7a\xec\x0e\xe5\xe4\x6f\x8d\x72\x42\x15\x2c\xb0\x01\xe6\x24\x0f\x19\x7c\x87\x73\x62\x81\x73\xf2\x61\x0d\xe1\x5d\xfd\xcb\xd8\xd8\x97\x88\x74\xd2\x98\xfe\x51\xe9\x33\x6c\x01\xd4\x5f\x6c\xdf\x99\xd5\xbf\x9a\xce\x5d\x19\xfb\x17\x89\xb4\xf4\xa7\xda\x9a\x85\xb5\xbf\x63\x4b\x7f\xb3\x73\xa8\x85\x29\x9f\xe9\xd5\x95\x76\xfc\x4a\x34\x78\x3b\x03\x7e\xa7\xc6\x7b\xd7\x16\x6d\xdc\xb5\xc4\x11\xaf\x72\x4f\x5c\xb9\x13\xa5\x08\xd7\xfd\x54\x6c\xca\x3a\xec\x7d\xdb\x31\xad\x0d\xd2\x7d\xd0\x02\xa4\xdb\xd6\x97\xb1\xb6\x27\xe3\xca\x63\x12\xba\x39\x45\xd2\x44\x58\xed\x05\x5b\xc8\xd0\x32\xdb\xc0\x31\x0b\xdf\xce\x35\x60\x59\x95\x6e\xf8\x36\x64\x6f\xe2\x74\xa5\x53\xac\x07\xc4\x31\x19\xd9\x47\xbc\xfc\x93\x9b\xc9\x49\x86\x5a\x0a\xec\x6a\xe2\x7e\x01\x3d\x46\xcf\xf9\x15\x89\x34\xcb\xc5\x7c\x42\x60\x80\x02\x07\x2f\x08\xbf\xa7\x93\x65\x42\xd1\xcc\x39\x59\x3a\x50\xd5\x69\x60\x77\x3a\xc5\x8e\x60\x58\x0e\x41\x0b\x2e\xf5\xea\xe5\x29\x43\x7f\x2a\x6a\x42\x40\x1e\x78\x18\xf3\xea\x50\x4b\x1e\x44\xc8\x05\xae\x81\xf3\x4c\xe4\x7f\x9e\x63\x42\x96\xc0\x41\x67\x88\x3d\x88\x17\x93\xa9\x1e\x1e\x79\x0e\x13\xe7\x9c\x84\x94\xa2\x58\x85\x30\xe2\x28\x70\x12\xba\x94\x45\x25\xc2\xc4\x49\x68\x18\x45\x22\x08\x70\xe0\xfc\x84\xcf\xd1\x19\x22\xc0\x39\x47\x4e\x80\x1d\x82\x7c\x3c\x9b\xa1\x38\x90\xd3\x4a\xc1\x8b\x59\x2f\x32\x44\x52\x06\x36\xc6\xe8\x5c\xf4\x3b\x70\x5e\x22\x48\x62\x47\xd4\xd2\xe2\x64\x70\x3b\x4e\x0d\xe8\xcf\xc2\x09\x81\x14\xf5\x25\x31\xf2\x89\x84\x86\x80\xff\xc6\xfc\x42\xb9\xae\x81\x9e\x73\xa9\xad\xee\xc0\x3e\xfa\xb2\xb3\x3a\x42\x86\x88\xa0\x5c\x7e\x2b\x1a\x87\x71\xc8\x45\x09\x8e\x14\x55\x0e\xda\xcc\x77\x63\xa9\x29\x04\xa5\x88\x67\x5d\xe0\x69\xc8\x30\x0d\x02\x2b\xfe\xc8\x45\xa1\xf9\xb2\xaf\x6e\xbf\xaa\x7c\xb1\x39\x4e\x42\xb5\x10\x35\xf2\x99\xfe\x27\xbb\x2f\xe6\xfd\x84\x42\x42\xd3\x9c\xb1\x94\x27\x57\xf6\x50\x5d\xec\xa3\x79\xca\x25\x7a\xa5\x46\xa6\x1b\x41\xaa\xf7\xc8\x27\x88\x4a\x42\x7d\x90\x32\x6c\x05\x8d\x38\xa0\x0b\x7b\x3c\xff\xba\x63\xce\x6f\x8a\xfb\xb4\x40\x50\xfd\x3d\x82\x9c\x96\xd5\x4f\xda\x07\x01\xb5\xe5\xc5\xc0\xf2\x28\xb6\x63\x22\xe5\x85\x7f\xef\xe3\x79\x43\x8e\xa4\xfd\xc2\xef\x57\x45\x8f\x65\xf1\xf9\x3c\xf4\xdc\x05\xee\x24\xc2\x27\x3c\x68\xdb\xe4\x2b\xa8\x23\xb5\x55\xee\x98\xf9\x0c\xac\xd5\x55\x55\xd4\xe4\x0d\x81\xa8\x2c\x5a\x2a\x37\xf3\x66\xdc\x08\x90\xca\xf1\xde\xfc\xeb\x1f\xe1\xfe\x6f\x1b\x82\x54\x82\xd4\xc5\x7b\x0d\x70\x95\x99\x45\x69\x4b\xa6\xea\x2f\x1f\xb0\x72\xcd\x89\x16\x6f\xe9\xd6\x88\x95\x02\x02\xed\x43\x98\xe1\x51\xb6\x02\x98\xe4\x0d\xe1\x15\xc1\x4b\x6e\x0e\x2a\x29\x44\xee\x5b\x88\x2a\x59\xe1\x24\xe0\xb0\x92\xe0\xeb\x46\x60\x49\xf0\xf5\x1d\xb4\xe4\x1d\xb4\x64\x77\xf4\xbe\xe5\xd0\x92\x8e\x9d\xba\x5b\xe9\x67\xb9\x43\x97\xcc\x94\x91\x3b\x74\xc9\x2f\x19\x5d\xd2\xce\xc8\xd7\x0a\x2a\xf2\xda\xad\x7b\xef\x85\x75\x8f\x62\x61\xdd\x13\x25\xe1\xd9\x59\xe4\xa0\x5d\x63\x83\x71\x8f\x87\xdb\xf9\x30\xe6\x90\x6d\xa2\xe6\xbb\x6e\xd7\xe3\x58\x56\x33\x4c\x90\x03\x4f\xf0\x82\x8a\x0e\xf9\xd6\x4d\x78\x8e\xf1\x94\xbd\x04\xab\x81\x38\x82\x60\xca\x16\xf7\xf7\xb4\xb7\xd9\xa2\x94\x4a\x17\xde\x4d\x86\x29\xd5\x86\x78\xc3\x70\x4a\x6b\x2b\xf9\x4a\xbb\xd2\x77\x38\xe6\x1e\x3d\x0d\xba\x94\x7f\x8e\xf0\x04\xb3\x3b\x4c\x56\xae\x8e\x4b\x88\xa6\x07\xf2\x0a\xa8\xbd\x8e\x73\xf0\xa6\x5a\x44\xee\x7a\x88\xa8\xb6\xad\xe4\xd8\x5b\xb6\xca\xc7\x6f\xdf\x81\xaf\xde\x5c\xf0\x55\x79\x73\x76\x88\xbe\xca\xd8\x82\x30\x62\xdc\x20\x64\xcd\xdb\x02\xc1\x2a\x97\xa3\x33\x0c\x56\xd9\xdf\xb5\x82\xb0\x8a\x77\xda\x0d\x51\x0e\xef\xda\x60\x58\x2d\x1e\xb2\xf0\xf3\x7e\x81\x28\x96\x25\x9b\x58\x7b\xf3\x6f\xc8\xc5\x5e\xa6\x71\xdc\x88\x58\xf6\x6f\xfe\x2f\x9a\xbd\xfc\x0f\xf9\xd3\x0e\xf3\xe8\x6a\x8a\x66\xbe\x50\x24\xb9\x66\x33\x67\x61\x29\xae\xba\x72\xe6\xed\x9b\x66\x6d\x80\x35\x1b\x74\xda\xb5\xc3\xf7\xf2\xa6\x41\xcc\x57\x10\xdd\xea\x6e\x18\xdb\x9a\x11\xcf\x1c\xda\xfa\x42\xff\xfd\x4b\x08\x6f\xb5\x3e\xd3\xea\x5f\xfe\x08\xaf\xc9\x2d\x73\xe7\xe3\xf6\x04\x97\xb6\xa7\x98\xb5\xbf\xde\x88\x42\x08\xdc\x8f\x1f\xc5\x87\x66\x11\xed\x29\x9e\x2f\x39\xe8\x60\xa7\x99\xfb\xd7\x5a\xa9\x30\x53\x2c\xd3\x63\xa8\x30\x90\x32\xe5\x92\x51\xac\x88\x09\xc5\x1a\x29\x4c\x14\xe1\x40\xe1\x3e\x7f\x50\x0d\x11\xc5\x53\x56\x61\x9c\xc8\x60\x99\xf2\xf1\x1f\x28\x5f\x2d\x5f\x14\xd6\xc7\xb1\x59\x73\xdb\xcc\x29\xdd\x3a\xdb\xce\x74\xbb\x6f\x24\x95\xdc\x08\x9f\xf4\x2f\x04\xfb\xbf\xbf\x7e\xf7\xd6\xec\x93\x86\xf3\xd0\x05\xd5\x9e\xe9\x92\xd8\x62\x64\xc9\xf9\x9b\x7b\x3b\xfc\xb8\xde\xb9\x2a\x60\x40\x20\x85\xfd\x08\xf3\xbb\x5e\x6d\xfb\x84\xf8\x6e\x39\x77\x69\x57\x6d\x4e\xb5\xad\x8f\x41\xf6\x1d\xdf\xb0\xc0\xdd\x35\xf0\xb3\xaa\x73\x68\x6b\xc9\x95\x29\x8b\x16\xbc\x9f\x49\x12\x32\x59\x57\x76\xa2\xd2\x1d\xd3\xf4\x57\xd5\xd9\xb1\xb5\x53\xc6\x76\x98\x9c\x86\x35\xfe\xab\x0d\x5c\xd6\x4f\xf8\xe1\x50\x65\x16\x85\x89\x17\x3b\xcf\x50\xbc\xac\x70\x55\xcb\x06\xd2\xbf\xcd\x1e\xe4\x36\x01\xd6\xb2\xa2\xc5\x7b\xbc\x20\x3e\xd2\xaa\x39\x8a\x2f\x86\x4e\x6d\x55\x47\xad\x95\x7c\x97\x6a\x56\x5b\xe3\xf1\x19\x4a\x68\x18\x73\x7b\xab\xf6\x46\xed\xdb\x86\xd7\x16\xdb\xa7\xf3\xd4\x3a\xa8\x1d\xc0\x5b\x82\x7c\x14\xa0\xd8\x57\xef\xd6\xbe\x70\x9e\x24\x7e\x73\x33\xf9\x4a\xbd\xdd\x33\x94\x35\xdc\xb4\xc2\x64\x8e\x47\x59\x09\xc8\x22\x53\xb0\x83\x3c\x8c\x75\xcc\x66\xd5\xfe\xf1\xec\x5f\x76\x1f\x56\xc0\x9e\xca\x5b\x74\xcc\xb1\xb0\xfb\xf1\x82\xdd\xdf\x7a\xfe\x3c\xa4\x50\x37\xed\x18\x42\xcd\x1c\x8a\x29\xac\x08\xd9\x37\xcb\x74\x45\x31\xbe\x84\x54\x3a\xe6\x99\xff\xd2\x01\x59\x80\xc6\xb5\xc9\x0b\x58\x2f\x27\x64\x9d\x12\x34\x6d\x3c\xbd\x9a\xd8\xd1\xa1\xa3\xb7\x5b\x1a\xac\xed\xf4\x35\x6f\x97\x56\x96\xc0\x2f\xce\xf7\x7b\x60\xf0\xfd\x1e\xdc\x50\xdf\x6f\xb7\xdb\xa8\xeb\x2a\x83\xe9\xd1\x31\x10\xb6\xec\xc3\xd3\xf6\xe2\x1a\x69\x22\x5d\x38\xf3\x0a\xe3\x7d\xb0\xae\x43\xaf\x4b\x92\x17\x59\x43\x95\x2e\x66\x57\x91\xf0\x30\xf3\xdf\x11\x34\x26\x28\x99\xf6\x09\x5e\xc8\xd0\x6a\xbb\x01\x38\x57\xe0\xa1\x6a\x49\xb4\x36\x6c\xd7\x70\xfb\xb7\xf2\x5c\x75\x70\x43\x96\xff\xbd\xc6\x4e\xc6\x56\x36\x76\x65\xe9\xff\x34\xb7\x56\x26\x44\x58\x7b\x2a\x8a\xc4\xaa\x2f\x0d\x63\xed\xee\x2a\x76\xdb\x99\xeb\xab\xd8\x71\x4b\x37\xd8\x35\xac\x6d\x67\x7e\x31\xad\xcf\xce\x7d\x63\xfa\xbf\x3a\x3f\x59\x36\x06\xab\x61\xeb\x43\x6e\xe3\x2f\x2b\xae\xea\x76\x76\x61\x2b\xb9\xb2\xd8\xf7\x86\x65\x0e\x0d\xdd\x75\x55\xf2\x30\xe3\x71\x57\x52\xf3\x30\x2c\xd9\xe0\x9b\x89\x65\xf7\xd4\xa6\x05\x11\xbb\xa0\xe9\xcb\xe7\x4f\xde\xbd\x2e\x51\x96\x71\xe2\xdd\x09\xa2\x34\x8c\x27\x22\x4d\x0b\x05\xec\xeb\x58\x61\x9e\x5d\x57\xb9\xc4\xb6\x84\x6d\x7d\x70\x5a\x35\x68\xf1\xb0\x1d\x40\x40\x63\xa7\xc6\x30\x9d\x8a\x14\xa9\x4d\x5d\xef\x9d\xbb\xcd\xf7\x3b\xb4\x3e\x6f\xe2\x14\x3f\x3d\xbb\x11\xce\xf0\xc3\x83\x0f\xd1\xe2\xaf\x60\xcf\x6c\x75\xce\xbc\x93\x2e\x70\x85\x95\xdc\xce\x41\xfe\xb3\xa6\x74\xb4\xcc\x03\xe2\xce\xb5\x9f\xd1\x72\xf7\x97\xb4\x34\xd5\xf5\x19\xaa\xe5\xaa\x5c\x5d\x96\xd3\x6b\x74\x7e\x8b\x26\xd7\x68\xec\x3b\x3d\x6b\x74\x83\x77\xe9\x04\xb7\x71\x80\x6f\xea\xfe\x3e\x3d\x1b\xa8\x9d\x5e\x70\x7e\xff\x8c\x96\xce\xae\xf3\x8b\x30\x88\x97\x5c\xdf\x25\xe9\xb7\x80\xa1\x33\x87\x44\x14\xae\x14\x67\x03\xb8\xbb\xcd\xd0\xa9\x7a\x15\xcc\x24\x0a\x7d\xb6\x85\xf6\x40\x5f\xee\xac\x64\x1e\x85\xd4\xba\xff\x16\xc5\xe9\x36\x20\xdd\x18\x47\xc2\x6d\xc3\x7e\xfd\x13\x87\x71\xea\xa6\x79\xc4\x37\x12\xca\xf2\x96\xb3\x09\x89\x1f\x83\x40\x6a\x0b\x3c\xc2\x17\xec\xe7\x0c\xde\x2d\xe7\x0a\x5c\xe3\xe4\xf5\x3a\x48\x0a\x24\x5e\xaf\x7a\x54\x5b\x77\x12\x1c\xb4\x80\x04\xe9\x3a\xdf\xc4\x4e\x17\x5f\x2b\xf0\xa1\xf9\xae\xce\x3a\x97\x3b\x2f\x42\x63\xda\xa7\x24\x9c\x99\xfb\x02\xc6\x55\xda\x1c\xef\xd8\x91\x61\x13\xda\x41\xb4\xd0\x76\xba\x5f\x8c\x96\x89\x1c\xc2\x50\x9a\x24\x4a\x1b\xd8\x34\x59\xe3\x1c\x92\x58\x66\x4f\x56\xd4\xba\x33\xe7\x6f\xfc\x2a\xda\xe5\x12\x38\x3e\x4c\xc3\xc4\xf9\xf9\x17\x0e\x6d\xcd\x2b\xc6\x9d\x3a\x72\xa8\x03\x8e\xb5\xec\x43\x11\xe8\xe4\xfc\xfc\xcb\x1f\x5f\x25\xce\x79\x48\xa7\xb9\xa7\x12\xe0\x9c\x2c\xa8\x73\x8e\x34\x4c\x94\x00\x33\x65\x39\xc1\xe2\x69\x1f\x12\xc4\xf5\x58\xa6\xbf\xa6\x3f\x41\xea\xc0\x28\x1a\x38\x2f\xa8\xd0\x6d\xd1\x04\xd2\xf0\x0c\x45\x4b\x27\x9c\xcd\xa1\x2f\xf2\x3b\x98\x6e\x78\x86\x9c\x18\x07\xc8\x09\x29\x7b\x3f\x4c\x12\xec\x87\xbc\x30\x1c\xeb\x7c\xe0\xbc\x47\xc8\x39\x41\x11\x3e\x67\xca\xb9\xc8\x0f\x11\x48\xc1\x09\x53\x93\x58\x27\x2f\xd9\x68\xdf\x8b\xd1\xf2\x4c\x91\x04\xa1\x8e\xb4\x3d\x26\x0a\x92\x18\x46\xc9\xae\xa2\x46\x77\x29\x20\x78\x41\x9c\xaa\x34\x90\x6c\xae\x61\x2c\x7c\x53\x6c\xbd\x8c\x89\x9e\x56\x11\x2e\xba\xa9\xf3\xf4\xac\x65\xbc\x09\x70\xbf\x93\x07\xbd\x4d\xe4\x89\x11\x14\xbc\xfa\x5a\xaf\x0e\x57\x29\xb2\xeb\xda\x27\x33\xee\x54\x7d\x3f\xe5\x2c\xd1\x6a\x66\x85\xc2\x69\xeb\x9f\xed\x8c\xd0\xb2\xd5\x9a\xd1\x3d\xe9\x3b\xeb\xc9\x6c\xe7\xc3\xc9\x0f\x9f\x3d\xf2\x8d\x21\xd2\x67\xb3\x0c\xb9\xee\xc3\x80\x74\x71\x76\x2d\xfd\xeb\x46\x84\xfd\x3c\xf8\x2d\xfe\xf3\xdd\x5f\xff\xa9\x40\xd6\xd6\xa0\x27\x6c\x74\x31\xa3\xca\xb1\x45\x75\xc3\x22\xd8\xa7\x5e\xb9\x68\x0a\x21\xb8\x2e\xe5\xa2\x73\xe1\xbe\x08\x67\xb5\x81\xcc\xdd\x5e\x51\xa9\xcd\x1a\xac\xd0\x39\x0e\xae\x44\xe7\xb8\x21\x1a\xc7\x83\x6b\xd2\x38\x0e\x5a\x69\x1c\x1c\xbe\xf1\xd6\x69\x16\xb6\x2c\xdd\xc6\xed\xd3\x2c\xe8\x37\x07\x4d\xa8\xea\x2c\xf0\x14\xb9\xe9\x5f\x01\xc1\xf3\xec\x2f\x82\xce\x10\x49\x50\xba\x4d\xd6\xd9\xe3\x2d\xd4\x9b\x3a\xe5\xc4\xe9\x22\xf2\xe7\x8b\x83\x37\x98\x47\xd0\x47\x53\x79\xd0\x4d\x11\x2f\x6c\xcc\xef\xf9\x47\xe7\x64\xe9\x08\xf4\xb7\xeb\x09\x69\xb9\x5e\x08\x81\xb5\x90\xa0\x3b\x65\x54\x6d\x62\xba\x4e\xcf\x06\xf9\x92\xa3\x15\x12\xf7\xfa\x11\x5e\xed\xae\x84\xf5\xa6\x40\x30\xa6\xfd\xce\x62\xd2\xea\x2e\x84\x6b\xb0\x4c\x38\x1d\xc6\xf1\x9c\x9e\xb9\x66\x4c\x80\xae\xd3\xf2\xad\xa3\x77\x4a\xaa\xac\x39\x5c\x27\xdd\x86\x85\xc0\x9d\x5c\xa0\x95\x1b\x26\x3f\xf0\x1b\x47\x05\xd6\xfe\x8c\x96\x22\x34\x37\x83\x8b\x36\xa9\x8a\xeb\x86\xfd\x74\x1f\xec\xd3\x79\x88\xcf\x3a\x81\x3d\x5d\xe5\x40\xf3\x88\x8f\x9f\x77\x7f\x71\xe6\x30\x24\x5d\x04\xf3\x68\x21\x3c\xa9\x86\xd4\x22\x76\xa2\xda\xf1\x6b\xed\x90\xed\x38\x46\x67\x8d\xc8\x9c\x2b\x5a\x9c\xce\xa2\x71\xb2\x2e\xaf\x20\x18\xe7\x37\xbc\x50\x01\x38\xe2\xfd\xf1\x32\x7b\xa1\xd5\x10\xb5\xe1\xb5\x0b\xbc\xb9\x9e\xcd\xd3\x32\xb4\xa6\x93\x80\x9a\x6e\x0c\xab\x70\x82\x62\xba\xcb\x54\xdb\xab\x08\x9e\xf9\x79\xf7\x97\xba\xb0\x8d\xa6\xdf\x36\x8f\x90\xb9\x86\xb8\x98\x8e\x68\x67\x1f\x12\xb3\xf1\x96\xbe\x3a\x98\x86\xfd\x36\x38\x0d\xdb\x30\x63\x6e\x12\x47\x12\xe3\x00\xdd\xb4\x8a\xcd\x0f\xce\x9f\x4f\x4f\xce\x3f\x46\x6d\x11\x16\x6e\x5a\xc1\x5c\x69\x19\xe7\xe5\x02\xc2\x98\x97\x02\x80\xdd\x94\xcd\x4d\x7b\x53\x15\x4c\x95\xd3\xed\x36\x54\x6d\xce\xfc\x8f\x56\x74\x0c\x13\xe1\xc1\x8b\xb1\x13\xe1\x78\x82\x88\x83\x3e\x87\x09\x4d\x54\xe5\x05\x1f\x52\x18\xe1\x89\x2d\x55\xed\x88\x53\xe1\xa7\xdf\xec\xa8\x9a\xce\xda\x46\xc7\xf6\x46\x78\x20\x1e\x7d\xfd\xed\x7f\xcf\x7e\x61\x12\x61\xb5\x07\xc2\x05\x4c\x55\x88\xe8\x74\x99\xfb\x24\xdd\x55\x72\x1a\xee\x22\xce\x7e\xd2\x3f\x4b\x87\xa0\x8d\xb3\xe2\x35\xa3\xcb\x35\x3b\x2a\xb4\xb5\xa8\xf7\x55\xa0\x33\x14\xd3\x7e\xc2\xf3\x49\xcb\x99\xc9\xd2\xf3\x99\x98\xbc\x85\xad\xf3\x6b\x45\x56\xad\xd3\x7b\x12\x2f\x9d\xf7\xfc\xe8\x79\x15\x19\xa0\x3e\x09\x69\x28\x10\xef\x9f\xca\x8f\xce\xd3\x29\xf2\x4f\x93\x8a\x06\xea\xf8\xa6\x01\x01\xf5\x8f\xcf\x61\x92\x88\xc7\xdf\x8a\x4f\x85\xc7\x2b\xf2\x4a\xc5\xbe\x59\x1b\x5c\x5a\x20\x37\x07\xa8\x0b\x0f\x50\x37\xb0\xca\x7c\x67\xb6\xcd\x13\x35\x2a\x58\x2d\xd2\x44\xcd\xdf\xfc\x1d\x8d\xc3\x6b\x64\x40\xde\x94\xa4\xc7\x6e\x91\x6e\xf5\x83\x75\x03\x2d\xd4\x6b\x24\x37\x8a\x19\x49\xab\x9b\xbc\x5c\x2a\xe9\xe1\x86\xc9\xc7\x94\xb5\xac\x83\x4c\x6a\xce\x50\xfa\x1a\x1c\xad\xb9\x25\x6b\x6a\x11\x2d\xb4\x81\x56\x47\xaa\x96\xcd\x69\xe9\x04\x9d\x94\x1d\x9a\x21\x96\x0a\xef\xce\x1b\x7c\x4a\x9e\xb0\x6f\x80\xbb\xb0\x29\x77\xd4\x85\x6d\x38\x9d\x3a\x9b\x81\x5b\x11\xf3\x53\x81\x37\x9b\xb9\x52\x81\x5c\x1a\x75\x0e\xda\xed\x94\x29\x4c\xde\xcb\x7a\x1d\x16\xd8\xb6\xd9\x8b\xea\x1f\x35\x85\x09\x75\x9f\xb0\x5a\x8b\x44\xeb\x16\x3c\xf5\x0f\xc0\x37\x99\x39\xda\xce\xf8\x25\x87\x20\x16\xc9\x67\x94\x44\x41\x9f\xa0\x82\x6c\x43\xe1\xe4\xb5\xac\xa4\x24\xcc\x13\x59\x65\x25\x18\x04\x04\x89\x2a\x10\xbe\x92\x07\x8e\xb8\x61\xc4\xe0\x45\xe1\x12\xd6\x20\x99\xe2\x73\xb1\x14\x8f\xa4\xa4\x57\x58\x00\xed\xeb\xf4\xef\x27\xf2\x3d\xda\x57\x4a\xfe\x58\x2b\x99\xb6\x8e\xe8\xa1\x5f\x07\xac\x5f\xe5\xe6\x36\x8c\xf3\x90\xdf\x26\x02\xc0\x46\xfb\x65\xed\x84\x47\x79\x7a\x93\x39\x8c\x73\x17\x0d\x47\xca\x61\xec\x98\x86\x73\x17\xb8\x2f\xa5\xa0\x93\x1e\xee\xec\x8b\x35\xea\x1b\xe9\xaf\x6f\x95\xc0\xd4\xd2\x80\xf2\xa8\xe6\xfd\xe5\xa7\xbf\xa9\xc9\x6e\xea\x0a\x19\xb8\x40\xf6\x0a\x6b\x9f\xec\xac\x3e\x15\xae\xd2\xab\x63\xae\x1e\xb6\xd1\xf6\x5d\x2f\x5f\xbb\x92\x0b\xbd\xc6\x5c\x6f\x97\xbe\x96\x3a\xdb\xdf\x5a\xbb\xe4\xca\x72\x94\x6b\xfc\x20\xe6\x06\xf5\xd9\xb8\x82\x06\x26\x37\xc6\xa0\x76\x08\x9d\x12\xab\x65\x46\x60\x9d\x99\xd6\xda\xbf\x60\x0d\xb1\x6c\x03\xff\x68\x1f\x97\x5c\xfc\xfe\xeb\x2a\x4c\xfb\xb6\x62\xe3\x4f\x9d\x0b\x8d\x07\x57\x21\x34\xae\x27\x32\xfe\x64\x27\x30\x76\x21\xda\x75\x26\xd8\x1d\x5c\x97\x60\x77\x70\x1d\x82\xdd\xa6\x42\x5d\xf1\x04\x3f\x04\xee\x84\x84\x41\xdf\xc7\x11\x1b\x6f\xa8\xc1\x66\xfa\x28\x8a\x7e\x42\xe1\x64\xca\x63\x18\xe4\x0e\x06\x47\xdf\x1e\x68\x78\x2a\xad\x24\xd1\x06\x31\xd0\x4a\xf6\xb3\x10\xfb\x0e\xcd\x62\xdf\x61\x41\xec\x3b\x2c\x8b\x7d\x87\x6b\x89\x7d\x57\x28\xf2\x95\xc6\xd8\xa5\xc8\xb7\x45\x71\x6f\xa3\x6c\x72\x6b\x56\x72\x08\x1e\x5a\xfa\x00\xcb\x05\x20\x2c\x17\xb6\x85\xa8\xd7\x81\x8c\x76\x05\xd2\x59\x07\x72\x59\xab\xc5\xec\x58\x16\x6b\x25\x85\x75\x27\x7f\x5d\xaf\xec\xd3\x95\xc7\x7a\x3d\xc9\xe8\xa0\xa2\xba\xb6\xe6\xb5\xdb\xd8\xda\xda\x51\x38\x5a\xa7\xe7\xa3\xf2\x64\x68\x21\x5d\xb5\x72\x50\x37\x30\x6e\xb6\xe7\xc1\xf2\x24\x34\x9e\x01\xab\x90\x24\x71\x5a\x64\x38\x52\xd3\xb1\x58\x2b\x9a\xa2\x0d\x7c\x76\xfb\x50\x8a\xea\x1f\x8d\x25\x2d\xd6\x74\xe1\x6e\x1e\x70\x21\x85\x9a\xad\x3a\x6e\xdf\x2f\x9e\x7c\x1f\xfd\xf6\xe8\xb4\x16\x31\xba\x50\xb0\xf8\x75\xae\x1a\xaa\x8d\x4b\x36\x97\xdf\x9d\x4a\x6f\xd7\xef\x9f\x65\x14\x6f\x8b\x1b\x5d\xc7\xc0\x6d\x1d\x1a\x12\x29\xb1\x39\x9e\xba\xd1\x3b\xac\x92\x84\xdd\x32\x7e\xba\x5d\x07\x14\xcf\xf0\x84\xc0\xf9\x74\xd9\xba\x0b\xee\xf9\xd2\xa0\xa7\xf5\x34\xdd\x47\xc0\xfd\xef\x02\x2d\xd2\xfc\x17\xa3\x17\x4a\x82\xb8\x49\x2d\xf1\xb9\xc2\xac\xce\xab\x4e\x9d\x23\x58\xdf\x12\xa0\xed\x20\x4c\x24\x10\x55\x1d\xdc\x76\xb5\x36\x91\x8d\x0e\xe8\x81\x36\x87\x7b\x87\x6d\xb2\x33\xbe\x06\x1a\xf6\xa4\x5c\x7a\x1a\xfa\xa7\xcb\x56\x6c\xba\x84\x3e\xc0\x8f\x55\xae\x8a\x32\xd7\xe3\x45\x68\x21\x66\x77\x84\x0b\x23\x44\xa8\x5b\x30\x64\xc8\x38\x03\x47\x6f\xda\x4f\x63\x90\xea\x4a\x97\xd4\xc2\x17\xdc\xaf\x12\xf1\x5a\x45\x1a\xd5\x31\xc6\xf6\x3c\xef\x6e\x59\xaa\x97\xe5\x89\x8a\x79\x3b\x87\x89\x43\x10\x5d\x90\x18\x05\xce\xf9\x34\x8c\x12\xea\xc8\x02\xe2\x0e\x65\x6b\xc7\x66\x04\x1c\x99\x39\xc1\x6b\x7f\x92\xa5\x03\x27\x30\x8c\x3b\x5f\xb1\x6a\x01\xe5\xf0\x0a\x70\xf6\x0b\xd7\x54\x5d\xb8\x0b\x97\x2b\xba\x10\xa7\xed\xca\x9e\x1b\xfd\xc4\xb2\x72\xb4\x60\xbb\xe5\xea\xe7\x07\xe0\x41\xb1\x70\xa3\x89\x90\x3c\x7b\x75\x2d\xb9\xba\x4d\x49\x24\xa7\x21\x71\xdb\x29\xfc\x2b\xbb\x74\xda\x25\x1c\xc7\x52\xaf\x88\xcb\x75\x91\x72\x2a\x47\x1b\xb4\xf7\xae\x14\x92\xab\x81\xc9\x77\x65\x7c\x53\x59\x0a\x2c\x48\x61\xcd\x13\x75\xba\x88\x5f\xea\x96\x66\xb5\x45\xec\x8b\xe3\x7e\x08\x5c\x0a\x4f\xfa\xa2\x18\xbd\x9e\x53\x76\xac\xe3\x72\xfb\xb4\x18\xcd\x27\xf6\x11\x4c\xa6\xae\xe0\xe2\x47\x47\x6a\xfe\x72\xa3\xe5\xe2\xe7\xa4\x2d\xdf\xc9\x99\xc1\xab\x0c\xab\x03\xcd\x74\x5b\x88\xe0\x0b\x93\xbe\xdc\xc6\x16\x4d\x8e\x95\x25\xde\x7e\x98\xef\x11\x39\x0b\x7d\xe4\xbc\x88\x13\x0a\x63\x1f\x35\x0e\x35\x11\x0d\x6c\x87\x59\x7c\x3c\x1d\xa2\x06\xbd\xa2\x49\xc4\x80\x49\x61\x72\x20\xed\x27\xf3\x8e\x27\x2b\x7d\x20\xe1\xdc\xf9\x10\xce\x50\xd3\x54\x08\xa5\x96\xb3\xd0\x9e\x3c\x2e\x78\x40\x5a\x0d\x50\x87\x31\xb2\xa0\xb4\xd2\x34\x2c\x29\x9d\x7f\x7c\x8d\xcd\xf0\x0a\x51\x28\x10\x9e\xeb\x47\x36\x53\xcf\xd9\x8d\xac\xf8\xf8\x71\xad\xca\xd1\xed\xd5\xd0\x22\x7d\xca\x5d\xb7\xc4\x99\xe6\x42\xd0\x3f\x17\xdf\x57\xb8\x7f\xb5\x27\xc5\x15\xdc\x8d\x1d\xb2\x9b\xf8\xbe\x32\xe7\x38\x00\x2e\x5e\xd0\x08\xb1\x83\x60\x66\x19\x8d\x83\xb3\xd1\xd2\x5a\xc3\xc0\xe6\x7e\x5d\xbb\x4a\x6a\xc1\x3a\xb1\x89\x41\x69\x37\x77\x33\x6f\xd9\xba\x34\xdb\xfb\xf7\xe2\xec\xdd\xd3\x57\x76\x49\x3c\x06\x87\x76\x18\xa4\xde\xec\x7e\xe6\x26\xcc\x65\xcd\xc3\x93\x7e\x22\x7d\x9b\x05\x09\xa4\xc2\x49\x2e\x15\x1b\x0a\x4f\xe6\x30\x46\x91\xdb\x2a\xcb\xd5\x05\xa9\x6b\x79\x7d\x83\xb8\xb6\x44\xa6\xec\xf2\x72\x1e\xb9\xa1\x60\x07\x6f\xed\x02\x57\x38\xb1\x79\x52\x79\x39\x28\x21\x1b\xad\xa9\xec\x5e\x7b\x35\x74\x6d\x0f\xd7\x36\x4c\xe1\x4a\x93\x9f\x42\xf6\xc1\x11\x44\x77\xc4\x2e\xda\x96\x65\x3b\xd3\x19\x8b\xb0\xaf\xdf\x76\x61\x93\x2e\x5d\x00\x9b\x5f\x27\xb3\x8c\x29\x6f\xf5\x2a\xc1\x6f\xff\x13\x9f\xbe\x78\xf2\xf5\x66\x57\x89\x26\x0b\x5c\xdf\x2d\xa2\x9d\x46\x26\xe2\x58\x80\x5a\x67\xf8\x13\x6a\xc0\x75\xf7\x04\xe6\xf4\xef\xa3\x98\x92\x50\xa6\x01\x55\xbd\x72\xbd\xe3\xbf\xf6\xd1\xef\xe8\xd8\x5b\x1c\xf9\xd2\x71\x57\x84\x1b\x54\xb8\x48\x2d\x4e\x78\xa7\xa7\xdb\x2c\x28\x6c\x72\xce\xd3\x19\x6e\x7c\xc6\x99\x7e\xb1\xe5\xe3\xfd\xdf\xf9\x8f\x70\xf1\x7a\xf6\x71\xb3\xe3\x4d\x98\x06\xd6\xa7\x24\x9c\xf7\x69\x28\x36\xd8\x15\x9e\x72\xa7\x39\x10\x8f\x13\x4d\x62\x88\xf2\xd8\xb7\x6a\xbc\xdd\xc0\xaa\x22\x77\x40\x1b\x8d\x2d\xaf\xc2\x38\x9c\x2d\x66\x16\x1c\x2e\xeb\x35\xb0\x36\xe1\x54\xa6\xa8\xe5\xd4\xe8\x59\x18\x2b\x17\xdf\x0c\x7e\x66\xc3\xf9\x81\x08\x5d\xe8\x59\x38\x09\xf9\x1e\x3b\x3a\x28\x38\xe1\x66\x49\xab\x21\x5b\x10\x02\x05\x21\x8c\xb7\x4b\x07\x3e\x84\x1b\x40\x0a\xf1\xe6\xed\xd2\x02\x7e\xbe\x0a\x42\x98\xae\x75\xd3\x37\x0f\x75\xdf\x67\x9f\xff\x27\xcb\x51\xd1\x9c\xa2\x4d\x7e\xd2\xba\xcb\xbd\xd3\xfb\x9d\xd0\x75\x71\x69\xb5\x4e\x52\x03\xd8\x96\xef\xf7\xd7\xbf\xbf\x7d\x76\xf2\xdb\x32\x36\xc7\x19\xa8\x10\xa3\xea\x5a\xd4\x5a\xd8\xb6\x26\xdb\xbc\x4f\xcd\x7b\x55\x22\x55\x15\xa7\xd0\x0c\x83\xdb\x50\x27\x85\xbb\x76\x1d\x70\xc3\x6f\x80\x1b\xc6\xf3\x05\x2d\x4f\xa9\x6c\xf6\xe6\xb8\x2c\x22\x66\x83\xab\x03\x27\xf8\xb3\xd9\x1a\xee\x76\x89\x9a\xb8\x3b\x97\xf5\x39\x6f\x1a\x74\x62\x87\xf1\xeb\xfc\x84\x89\x2d\x54\x85\xe5\xd6\x1d\x74\x9d\x55\xc8\xb7\x5b\x00\x06\xe7\x63\xeb\x87\xd2\xae\x9e\x57\x1f\x38\xa0\x9c\x4a\xca\x4b\x11\xed\xb4\x14\xbc\xc0\x4f\x2d\xe7\x5a\xe8\xf5\x41\x56\x91\xd2\xd7\xe2\xa8\x1b\x34\xe2\x03\x63\xac\x62\x37\x91\xb7\x1b\xd9\x24\x3a\x0e\x58\xb5\xb4\x4b\xa8\x20\x3d\x48\x78\x8c\x41\x4a\x66\x4b\xe7\xd7\xd5\x21\x1c\xb5\x05\x38\x6a\x50\x71\xae\x2c\xee\x2e\xc7\xd6\xba\x60\x90\xa9\x3b\x64\xab\x0c\x12\xbe\x7b\x11\x3f\xf9\xe6\xe7\xdf\xab\x19\xa4\x06\x92\x82\x3e\x23\x7f\x41\xf9\xbd\xce\x4e\x77\xc4\x25\xcd\x24\x81\x13\xfe\x15\x8e\xc7\x21\x31\x80\xa5\x54\xf1\x42\xb1\xfd\x33\xff\xcd\xb6\xec\xab\xd9\x52\xac\x0b\xfb\x4b\xe1\xc9\x22\x82\x24\x9f\xef\x72\xb4\x7f\x90\x4d\x47\x8b\x9f\x2b\x5a\x52\x0a\xd1\x75\x5b\x29\x39\x4f\xa7\xa5\x48\x7d\xd9\x5b\xad\x27\xbc\xdc\xec\xc5\xb3\x35\x1a\x3d\x43\x11\x5c\xae\xd1\xee\xc3\x87\x97\x6b\xb4\xfa\x1e\x4d\xe1\x59\x88\xc9\x1a\x4d\x53\xf4\x98\xb6\x0d\xff\xbf\xff\x77\x6d\x5b\xaf\xd5\x92\x13\x9b\xc8\x9b\xe2\x28\x9b\x15\xad\xec\xf9\xb4\xea\x94\xdc\x18\x75\x01\x14\x4e\x43\x2e\xc3\xa6\x23\x60\x7b\x6c\x9b\xef\x7f\x89\xfd\x53\xb9\x65\xb7\x39\x0c\xbe\xfb\xb7\x39\x80\xec\x20\x5d\xdd\x28\xea\x15\x99\x0d\x5c\x62\xe6\x89\x69\x65\x18\x80\x93\x65\x68\x16\x9d\x59\x36\x75\xc0\xea\xf2\xd4\xba\x5e\x93\x87\x29\xf7\x15\x21\x91\x41\x08\x23\x3c\x49\xaf\x09\xc5\xa3\xd9\x4d\xf1\x84\x20\x9e\x88\x91\x2c\xe4\x87\x73\x18\x53\x87\x62\x0d\x24\x50\x44\x34\x4a\x9e\xf4\xb8\x6d\x0a\x7b\x8b\xf8\x84\xf6\x5d\x6b\x04\x52\xb1\x0a\x06\xeb\x27\x47\x34\xcf\xc0\xb1\xf7\xf7\x81\x8b\x63\x3f\x0a\xfd\x53\xd7\x3e\x64\xfc\x6b\x99\x7b\x9d\x92\x45\x06\xb0\x18\xf5\xae\x47\x45\xd4\x6c\xb1\xfb\x0a\xc5\x34\x34\xbd\x58\x8e\x5e\x63\x9c\xe9\x7b\xea\xb7\x47\x46\x05\x43\xb2\xb9\x45\x2b\x8b\x78\x70\xbe\x77\x36\x59\x9a\x36\xf0\x05\x7a\x53\x71\xb5\x3c\xcc\x15\x1a\xb1\x7b\x69\x33\xbd\x9c\xf2\xce\x51\xaf\xd0\xe5\xb4\xe2\xd6\x39\x30\xac\xd8\x83\xca\x3d\xa3\xd2\x97\x53\x79\x41\x1c\x4a\xa7\xed\xe2\xb6\x19\xac\x94\xc4\xdb\x0f\xf6\xb0\x38\xd8\xb4\xa3\x75\x76\x1f\xeb\xcf\x9c\x18\x5b\xd7\xaa\x35\x12\xc4\x1a\xfa\x23\x2f\x7e\xf9\x77\x09\x3e\xd0\x54\xfc\x5c\xd4\x1d\x2f\xbb\xc7\xef\xf5\xd7\x38\x40\x03\xe7\x07\x43\x15\x3e\x20\xd2\xf0\xdc\xeb\xa9\x2f\xb8\x01\xb2\x73\x5d\x7d\xc1\x1b\x18\x60\xd1\xbd\x0b\x36\x23\xe9\x7a\x66\x08\x5e\x67\x2f\xd9\x55\xf5\xfb\xb6\x6a\x80\xd8\x25\xd1\xf9\xf4\x7c\xfc\xd4\x6c\x80\x58\xdb\xe2\x20\xa6\x66\x38\x2d\x72\x7b\x8f\x43\x14\x05\xdc\x08\x6b\x51\x6d\x56\x55\x47\xb1\xae\x09\x96\x8f\x10\xdf\x4f\xaf\x6c\x7e\x80\xc4\xbd\x4d\xd1\x67\xea\x96\x82\x82\xa5\xc1\x45\x25\x54\x29\x65\xcb\x75\xa6\x30\xe9\xab\xac\xb0\x2c\xa2\xa2\x2e\xe3\x45\x47\x60\xb0\x50\xea\x2b\x8d\xfc\x70\x41\xf1\x18\xfb\x3c\x13\x33\xfb\x2c\xe7\x25\x0d\xf3\xf9\x10\x7b\x31\x68\xd9\x5c\x02\x6f\xa8\x57\x0b\x61\x4c\xbe\xa5\x12\x25\x25\xc5\xb9\xd4\x45\xa7\xbc\x4f\x20\xed\x30\x13\xaa\x38\x49\x2b\xc3\xee\xd3\x29\x22\xf3\xc6\xc8\xfe\xbd\x5a\x24\x94\xa7\x2f\x3b\x9c\x6d\x3b\xcf\x5e\xbf\x77\xa6\x38\xa1\x6c\x2a\x03\xf1\xab\x8f\x63\x0a\xc3\xd8\xd9\xef\x7f\x7d\xe8\xf8\x53\x48\xa0\xcf\xee\x02\xa7\x27\x3c\x91\x09\x70\x22\x44\x29\xff\x00\xe3\xc0\x99\x2e\xe7\x53\x14\x27\x9e\xf8\x6b\x26\xfa\x9f\x84\xb1\x28\x33\x0b\xe5\xc3\x03\xe7\x4d\xec\x23\x47\xec\xb6\x00\x88\xfb\xda\x87\x71\x8c\xf9\x70\x04\x51\x82\xba\x18\xb2\xf2\xd6\x35\x6f\x28\x3b\xed\xc8\xad\xcc\x9d\x2a\x04\xf5\xe6\x7a\xe7\x9b\x82\xe3\x83\x0b\x09\x5f\x2f\x19\xd7\x42\x5f\x6a\xb2\xed\x1a\xcb\xcb\x19\xb3\x33\x72\xe2\x12\xdb\x23\x8e\x92\xc6\xfa\x02\x5c\x15\x1a\x02\x2c\x6a\xcf\xd1\x33\x94\xf8\x24\xe4\x6d\x9d\xde\x1b\xd9\x87\x67\x3a\x59\x4a\x9b\x43\x9f\x29\x24\x08\xe6\xc6\x25\x4f\x86\xd6\xd9\x06\x07\xc4\xb0\x2a\xb9\x8e\x4d\xeb\x60\x62\x91\x75\xfb\xa9\xc4\xf7\x9f\x3c\x7d\xf9\xfe\xd3\xf3\xd7\x4f\xbe\x7f\xf9\xfc\x99\x4d\xb6\x67\xd5\xdd\xab\x05\xd2\x44\xc2\x37\x6a\x8c\x76\x29\xa3\x26\xbc\x53\xcf\x1b\x81\x86\xab\xc5\xa5\xef\x97\x0e\x0c\x78\xf6\x1e\x7f\x23\x4f\xd8\xe3\x91\x5c\x70\x86\x04\x73\x04\x42\x39\x0e\xa3\xc8\x81\xf3\x79\xb4\x74\xe8\x54\xc0\x1a\xc0\x28\x72\x28\x3e\x45\x71\xa2\x0e\x2a\x3f\xc4\x3c\x4d\x53\xef\xc1\x5c\xd3\x58\x93\x0b\xd9\x9b\xfb\x22\x11\x41\xcb\xfc\x2d\x56\xcf\xcd\x1b\x8a\x79\xad\x5c\x57\x32\xd9\xc2\xb5\xfb\xe4\xe9\x4b\xb6\xcb\x19\x49\x9e\x89\x07\x92\x72\xc2\x70\x79\xb1\x6b\xd7\x63\x8e\xa3\xd0\x0f\x5b\x2d\xc9\x5b\xad\xc9\xda\xab\xa2\xde\xbb\x95\x85\xe1\x2f\x5f\x36\x2f\x0d\xc7\x12\x79\x11\xa0\x98\x86\x74\xd9\xb8\x56\xfc\xf8\x19\x57\x8c\x53\x6c\x69\xb7\x66\x16\xb0\x15\x0d\xd0\xba\x9b\x49\x36\x26\x75\x34\x08\x13\x78\x12\xa1\xa0\x84\xa8\x86\x49\x91\x0d\x85\xc9\x5b\x12\x26\x34\x8c\x51\x86\x3c\x95\xfe\x24\xb5\x64\xcd\xcc\x96\x75\xad\x49\x02\x99\x96\x9b\xd5\x95\x36\x6b\xb9\x6e\xbe\x82\x9f\x00\x0d\xd0\xe5\xa6\xf7\xf0\xac\x8b\xa2\x7c\xf6\x44\xa9\x98\xef\xc6\x13\x95\x39\xd0\x1b\x4e\xb4\xc8\x7e\x2b\xa6\x26\x07\x45\x10\x0f\x10\xa8\x26\xbe\x14\xd8\xab\xc6\x64\xb2\x37\x94\xf8\x0d\xcc\x2a\xe0\xc6\x98\x56\x6d\x5b\x69\x82\x2b\xd4\x8b\xcc\x8b\xa3\xd9\x51\x6c\x5f\xe6\xb7\x0b\xfb\xaa\x30\x2a\x49\x1d\x5c\xdd\x45\x56\xd6\xd5\xce\xed\xa9\x57\x6e\x07\x13\x80\x01\xaa\xf8\x4d\x7e\x07\xe4\xcb\x69\xe6\x76\xc4\xb3\xf4\x7d\x76\x21\x08\x87\xeb\x02\xac\xb5\xb1\x71\xca\xee\xc4\x5c\xfa\xfa\x36\x28\xad\x3f\x70\xbf\xcb\xf4\xd5\xef\x32\xc3\x5c\x56\xa6\x39\x35\x1d\x67\x81\x2d\x86\x2c\xc0\x0a\x2b\x96\x21\x29\x7d\x53\x88\xa3\x2b\x0d\x29\xd4\xad\x0c\x9b\x5a\x2a\x6e\x54\x8d\xa8\xf0\xec\xa7\xc3\xf3\xbd\x08\x56\x98\x2c\xa4\x96\xde\xb6\xc4\x51\xa1\x4c\xeb\xf5\x94\x8a\xfa\x0d\x2f\x48\x26\x1a\xf1\x24\x86\x13\x84\x62\x26\x87\x75\x52\x2c\x4a\xca\x73\xcb\xdc\x6b\x6e\x45\xa5\xa8\x4e\xc8\x98\xc0\xb3\x4e\xc8\x98\xc0\xb3\x6b\x26\xe3\x56\x0a\x97\x55\x91\x71\x06\xc9\x29\x0a\xb8\x0d\x9b\x8f\xab\xa6\xda\x58\x0b\xa2\x8a\xae\x36\x22\x6b\x4d\xa9\xae\xf2\xad\x5c\x88\x25\x56\x46\x13\xfe\x5f\x11\x85\x4c\x12\x2a\x2e\xb0\x6a\x81\x3c\x23\xb9\x44\xb5\x42\x14\x86\x51\xa3\x00\xaf\x58\x3e\xc9\x69\x05\xdf\x66\x6e\x6f\x1f\xc7\x3e\xe4\xe9\x38\xbd\xbc\xc8\x2a\x81\x87\xd3\x15\xcd\x3f\x5d\xfe\xdd\x1d\x3a\x6e\x09\x8e\xb8\x30\x56\xe0\x66\x15\xa1\x6c\x5d\xe9\x95\xb1\x7d\x5d\x99\xd7\x8d\xac\x66\x43\xbe\x85\x82\x70\xeb\x29\x4e\x3f\x4d\xe9\x9f\x8b\xe7\xe8\x57\x33\xb7\x2a\x82\xec\xe5\x2c\x7a\x35\x4c\xcc\x5a\x79\xd4\x42\x2b\x0a\xe5\xd2\xd0\x79\x26\x08\xbb\xd7\x0c\xcb\xa7\xad\x4f\x25\x30\x5f\x9b\x34\x45\xe3\x0c\x9f\x07\x21\xbd\x6d\x53\xac\x85\x7a\x02\xee\x77\x12\xf5\x8a\x0f\x5e\xbc\xc2\x91\x9b\x9c\xe3\xf2\x25\x2f\xd5\xef\x9b\xd5\x3d\xb3\x83\x80\x52\x37\x9b\x42\x7d\x92\x53\x36\xe2\x3e\x81\xc3\x7a\xe8\x3c\xf5\x50\xcb\x9a\x51\xd6\x88\x4f\xae\x05\xd2\x93\xbb\x29\xc2\x93\x20\x40\x05\xc6\x53\x6a\x42\x73\x8d\x40\x4f\x65\xe3\xe0\xa6\xf5\xb4\x36\x2d\x5e\xb7\x81\xb9\x2a\x77\xb9\xb4\xb6\xeb\xf0\x83\xeb\x1a\xc0\xa3\x8c\xb1\x8f\xf5\xa6\x94\xee\xc9\x6a\x01\xee\xb2\xf9\x4b\xac\xb0\x52\x0c\x67\x4f\xba\x94\xad\x61\x2a\x9b\x7f\x5c\x1f\xdd\xa4\x78\x03\xae\xcf\xc7\x6f\x44\xb1\xd3\xff\x9e\xfd\xf9\xf6\x1d\x7a\x68\x46\x35\xc9\x72\xd8\xca\xc0\xb9\xc9\x42\x0a\x95\x76\x65\x4c\x73\xf7\xc4\x16\x38\xd6\xd5\x55\x33\x6d\xcb\xd9\x64\xf6\xd2\xcd\xe5\x6c\x16\x7c\x6d\x2d\xae\xd6\x51\xd9\xd1\x74\x27\x5d\x19\x8b\xb1\x04\xba\xb2\x8a\x69\x32\xf2\xd2\x41\xc1\x2c\x73\x6c\x72\x2a\xa7\xcf\xa4\xb6\xed\xf4\x8b\x6e\xa7\x6b\x5b\xa1\xb2\xd3\xf2\xa5\x6e\x97\x59\x9a\x37\x33\x41\xd3\xed\x2a\x3f\x53\x3a\x07\x8d\xf5\x99\xba\xce\xcf\xb4\x86\x33\x73\x73\x39\x9a\x62\x8c\x26\x60\x17\xbe\x72\x99\xd1\x5f\x37\x56\x5b\x05\x4d\x8b\x65\x8a\x83\x4a\x03\x52\x8b\x5a\x44\x1d\x15\x6f\xb0\x24\x65\xbb\x02\x27\x95\xbe\xef\x2b\xab\x1f\xac\xff\x7b\x8d\x35\x6f\xb8\x28\xa4\xd2\x5a\xc0\xd5\xff\xe9\x95\x27\xf4\x0b\xbb\xc9\x43\xa8\x53\xa3\x2a\x1d\xca\xba\x68\x49\xa7\x15\x5c\x6a\x02\x0d\xae\x7b\x79\xce\xb9\xd9\x91\x2f\x92\xb1\x0e\x8c\x55\x61\x0c\x3a\x45\x7a\x9f\xec\x71\x48\x90\xec\x81\x75\x38\xc6\xa4\xad\x3d\x34\xff\xaf\xb6\x80\x87\x16\x7a\x61\x53\xc5\x43\x1b\xa8\x28\xe5\x71\xb3\x36\x52\x0b\x68\x4c\xc7\xa8\x92\xe7\x70\x76\xb0\x9f\xf4\xa3\x30\x17\x9d\x5c\x9d\xd3\xb3\x61\x48\xb5\x8f\x67\x33\x18\x07\xc9\x6e\x9c\x99\x94\x3a\x88\xa6\x7e\xa6\x47\x52\x3b\x38\xd6\x56\xb0\x7a\x45\xea\xd3\x2e\xea\x89\x16\x21\x48\xe2\x2b\xa4\xda\xcb\xe7\x4f\xde\xbd\x2e\xd1\x8e\xf1\xbe\x8c\x72\xc9\x6e\x82\xfc\x05\x41\x7d\x7d\xb2\x1d\x10\xf3\x1d\x82\x01\x3f\xaf\x93\x45\x18\xd4\x66\x7b\x6c\xbc\xdb\xaf\x2e\x25\x7f\xbf\x6d\x4e\xfe\x76\xf5\xfb\x4d\x2a\xe2\xa8\x84\xfe\x1b\xe6\x61\x9e\xbc\xfa\xfc\x71\xf2\xe3\xf3\x33\x3b\x58\xb2\x6b\xf3\x89\xca\xfa\x0b\x76\xce\xbc\x0f\x22\x8b\x50\x00\x6d\xa7\xae\xbc\x00\x11\x34\x09\x13\x6e\xaa\xe0\xc1\xd0\x16\x05\x2f\x6c\xf8\x5a\x0b\x7f\x5d\x47\x0e\xa3\x8a\xad\xb3\xe9\x46\xbc\x11\xa6\xa6\xdd\x43\x1a\xbd\x7e\xf7\x9f\xf3\x0a\x9f\x11\x07\xda\xe1\xff\xe1\xf6\xa6\x4a\xd3\x93\x9d\xc1\xe9\xbd\x86\x89\x74\x8d\xe6\xa6\x3c\xc5\xaf\xc4\xde\x94\x2f\xfa\x2b\x02\x4a\xb9\x76\x79\x8a\x96\x7d\xbe\x44\x49\x11\x6f\x9f\x9b\xdf\x38\xac\x2e\x70\x9f\x30\xa1\xea\xf7\x3c\xdc\x78\xfe\xb9\x00\xf1\x07\x7f\x67\x0f\x3e\xa9\x78\x50\x43\xea\x05\xee\xc7\x58\x96\xc0\x65\x2d\xca\x55\x85\x0d\xed\xe4\x2b\x7e\xca\x9a\xa5\x7d\xb8\xba\x2a\xae\x43\xaa\xcb\x8b\x03\x13\xfa\xfd\x52\x29\xe3\x16\x16\x86\x9a\x02\x23\xea\x1e\xe1\x5a\xeb\xe6\xaa\xb3\xbd\x11\xce\xc9\x1b\xe2\xd2\x4d\x53\xf6\x31\x1d\x82\x87\xcd\xa8\x44\xa6\x24\xc9\x4e\xf5\xd3\x66\xab\x9c\xfa\xa7\x8e\x5d\x45\x5a\x4c\x2d\xc0\x5e\x06\xef\x96\x69\x4b\x06\x87\xbe\x43\x31\x85\x95\x29\xa5\x75\xdf\x6f\x5c\x66\xc3\x4a\xf0\x69\xa4\xbb\x7c\xd7\x7a\xf6\x36\x13\x91\x5a\xa9\x94\xd5\x86\xb7\xb2\xa5\x0d\xb8\xdf\x25\xc8\xc7\x71\x00\xc9\x52\xfc\x91\x56\x8a\xfe\x4e\x64\xb9\x48\xfb\x4e\x9a\x39\x72\x74\x3d\x86\x38\x20\xd9\x45\xa9\x84\xb5\x56\x9a\x4d\xdd\x9e\x2d\x06\x91\xde\x2d\x75\x83\x50\xef\x1a\xc8\x62\xd9\x2d\x51\xdb\x3a\xda\x44\xb6\x46\x5b\x9d\x55\xd4\x41\xb0\x17\x01\xe0\xea\x0a\x88\xe7\xf6\x61\x8b\x92\xce\x5d\x19\x44\x73\x63\x3d\x58\x17\xac\xce\x92\xd0\x6d\x6b\x94\x17\x40\xeb\xcc\x16\xd1\x39\xc1\x9f\x65\x3a\x8b\x1e\xc7\x7b\x00\xdc\xf4\x17\xcb\x10\xde\xad\xd6\x83\x5e\xdb\x7a\x7a\x05\xf6\xd3\xf5\x2d\xa8\x1b\x5f\xa9\xd9\xbf\xd7\x19\x08\x5e\x07\x46\xd4\x9c\x19\x55\x71\xd6\x16\xb6\xaf\x26\x7b\xca\x8d\x2c\x86\xbd\x85\x95\xea\xcc\x9e\x9a\xf6\x78\x05\xd6\xd4\x7a\x7b\xaa\xa6\xff\xaa\x41\x58\x8d\x3a\x1b\x71\x3b\xb3\xea\x75\x6e\xad\x96\xc6\xd5\x8e\xcc\xab\x9d\x1b\x58\x73\x1c\xb3\x73\xfb\xaa\x8e\x01\x5c\x8f\x03\xd5\x88\x12\xb5\xa1\x85\xf5\x4a\x6c\xac\x13\x44\x69\x18\x4f\x18\xf7\x21\x14\x05\xdd\x12\xd3\xde\xbe\xda\xd1\xb6\xbf\x36\x63\xac\x21\x72\x63\x1d\x89\xb4\xe5\x3b\x8c\x08\xa9\x6d\x0d\xb1\x06\x4b\xca\x46\x06\x30\x81\x1d\xbc\x6d\x1b\xd8\xe9\xde\x03\x18\xfd\xf5\xee\x75\x45\x89\x72\x59\xc7\x6c\x2d\x93\x57\x2e\xa8\x90\xc3\x19\x6e\xcd\xf4\x25\x68\xbd\xa6\xf5\xab\xa1\x32\xb7\x29\x2b\xb4\x8c\x61\xd2\xce\xd0\xc6\x84\xee\xa5\x29\xb0\xcb\xae\xa5\xaa\x4a\x63\x19\x16\xc6\x96\x41\xd1\xc8\xa2\xbe\x6d\xc7\x96\x27\x1b\xbb\x53\xa9\xa2\xad\x31\x02\xac\x74\x49\x74\x5b\xc9\xd6\xb5\xac\x62\x5b\xe6\x5a\xed\xe2\x9b\x4b\x65\x35\x73\x01\xce\xef\x0b\x7c\xb5\xbe\x88\xeb\xa6\x63\x10\x00\xe5\xa5\x81\xa8\xca\xa2\x3d\xb7\x1c\x3e\x2c\x7f\x2b\x44\x10\x7b\xd5\xe3\x2d\x73\x30\x8b\xfb\xbf\x23\x65\xcd\xc6\x90\x68\x98\x63\x35\x38\xab\x89\x1d\xe7\x15\x71\xf4\x59\x60\x86\x15\x4f\xb1\xba\x53\xb4\x0b\xc6\x00\x00\xaf\xf7\x74\x1a\xf2\xbc\x71\xad\x39\x70\xbf\x3b\x0f\xe9\xf4\x45\x3c\xc6\xc5\xbb\x4a\xa8\xc2\x9d\x93\xd9\xa2\x3c\xaf\x6b\x51\x82\xc7\xad\x2a\xb6\xa2\x76\x5a\x35\xa8\x93\x6b\xac\xa8\xd2\x32\x0e\xb2\x04\xc8\x6f\xdc\xd0\x45\x50\xaa\xe6\x9d\x6f\xda\xf1\x55\x5b\x64\x6d\x1a\xbd\xc6\xc1\x95\x13\x28\x2b\xf9\x5a\xc4\xc1\xc2\x01\xca\x2a\x4e\x37\x50\x28\xff\x70\x4b\x2a\x75\xb1\x5d\x1b\x55\xb7\xb2\x95\xb2\x8c\xef\xa1\x55\x77\x35\xcd\x2e\xfb\xb9\xb5\x21\xd2\xae\x3c\xad\x0a\x58\x6c\x2a\x48\xab\x9e\x6b\x2c\x41\x5b\x23\x31\x6b\xc1\xa3\x9b\x53\xbf\x6d\x2c\xe7\xcd\xa8\xe5\x9d\xde\x0d\x99\x1c\x69\x59\xd2\xdb\xae\x65\xb1\x6c\x76\x3e\x30\x41\xee\xad\x9f\x43\x19\x71\x3a\x43\xc9\xb4\x3f\x81\x14\x9d\xc3\xe5\xba\xa5\xaa\xe5\xbe\xa9\x28\x08\x5e\x1e\x35\x4c\x9f\x6f\x35\xd9\x52\x33\x43\x7d\x6d\x2d\xed\x49\x09\xbd\x6d\x67\xf3\x96\xb5\x73\x38\xcf\xb3\x9b\x8e\x7c\x51\x9b\xa9\xe4\x9a\x1c\x17\x10\x59\xec\x87\xfa\x01\x4e\x12\x67\xc7\xe1\xf2\xb9\xdd\x58\x6d\xca\x71\x37\xb7\xb2\xab\xca\x6d\x53\x0c\xba\x7d\x18\x54\x47\x3a\xb7\xa6\xc2\x75\xa0\x76\xef\x42\xed\x08\x6c\x55\x01\xdf\xfb\xf6\xf9\x13\xfa\x74\xf9\xa3\x59\x01\xa7\x70\x32\x41\xc1\x93\x54\x0d\x57\x35\x4a\x94\x62\x6e\x5d\x86\x44\x3f\x8b\x5b\x29\xce\xfa\x41\x9f\x49\x5d\x51\xb1\x22\x26\x91\xb1\xec\x48\xfb\x4a\xad\x55\xef\xef\xc8\x2b\xd7\x49\x39\x92\x0f\x70\x52\x6d\xce\xab\x6c\x95\x4a\x01\x1b\x14\x35\xb2\x9a\x63\x6d\xfd\x0d\xb9\xf0\x4c\xfd\x70\xf3\x0b\xc2\x21\x14\xf6\x4b\x80\xf2\xad\xd0\x39\x2d\x0a\x05\xb8\x59\x38\x87\xfe\xe2\xbd\x32\x92\xbd\xba\xd5\xaa\x30\xb8\x24\xf7\xe5\x6e\xd0\x4a\x61\xaf\x24\xe5\x81\x72\xdb\xb7\x98\xd0\x52\x43\xf9\xa5\x2d\x3e\x97\x28\xaa\x62\x04\x74\xed\xc9\xdb\x46\xea\xd6\x4d\x91\x80\x45\x62\xd5\x6f\x33\x7b\x82\x97\xe8\xa4\x71\x8d\x61\xfe\x21\x45\x90\x6a\xdc\x7b\xb7\x01\xbf\xed\x41\x45\xd1\x89\xf5\x42\x80\x37\x04\x4d\x6f\x2c\x9b\xac\x01\x95\xc3\x20\x08\x05\x84\xaa\x93\xde\xc5\x55\xe5\x93\xeb\x9c\x5e\xc5\x27\x3b\xc4\xde\xae\xe1\x92\x9d\xf1\xdd\x9c\x00\xbc\x65\xd6\xfb\x60\x71\xf6\xea\x97\x6f\xbe\x7f\xb7\x59\x59\x64\x31\xa3\x7e\x56\xe0\x6f\x4b\x05\xbe\xf2\x46\x88\x0d\x8a\xc6\xc8\x81\xa9\x61\xd7\x1b\x24\x1e\x2a\x02\xf0\xf9\x57\x44\x97\xb0\x45\x4e\x54\xd0\x64\x53\xe0\x0f\xef\x88\x4d\x24\x8b\xe8\xcc\x47\xfa\x18\x27\x5a\x0c\x07\x12\x02\x7b\xfa\xd4\x5b\xf9\xe7\x73\x3e\x12\x17\x68\xc5\x6e\x4c\x36\xb6\x0d\xa1\x32\x1b\x6b\xa9\xa7\xd6\x76\x59\x4f\x3d\x0d\x20\x17\xca\xa8\xd8\x4b\x2d\x6f\x87\x86\x7d\xf1\x1a\x07\x37\x68\x53\x74\xba\x13\xb4\xa9\x99\x4a\xf1\x6f\x6f\x59\x45\xc9\xfc\x0d\xd6\xf4\xfa\x6f\x7c\xfd\x7e\xae\xb8\xf4\xef\xb5\xbe\xf4\x53\x75\x74\xcb\x17\xfe\xcb\xf9\xf7\x3f\x7f\x03\xdf\x98\xab\x30\x58\x5f\xf8\x33\xee\x5d\xbb\xae\xe2\xf7\xc5\x13\x97\x7f\xeb\xc4\x00\x5a\x9d\x79\x35\x1e\x18\x14\x8c\xa4\xbc\x9d\x1a\x6e\x0e\xde\x68\xdd\x3b\x83\x2b\x70\x93\xf2\x15\x50\xed\xe9\x68\x7f\x34\x6f\x6b\xed\x1a\xb6\x7c\x75\x75\x0e\x36\x92\x6d\x2d\x4b\xb9\x98\x0d\xed\x8d\x3b\x4f\x33\x30\xd9\xef\xbe\x57\xf2\xe0\x58\x54\x72\x50\x1e\x6c\x6b\xd8\x62\x76\x11\xa9\x41\xd5\x31\x9c\x7a\x23\x41\xee\xb5\x7f\xa3\x4d\x69\xe0\x5d\x8a\x98\x37\x6f\x83\x5e\x2b\x3f\x4c\xc9\xd0\x95\x02\x24\x05\xd3\xed\x32\xc2\x7f\xfc\x1a\x8e\xff\xfd\xf1\xc1\xe7\xb5\x19\xe1\x16\xf4\x1b\x25\xd1\x2b\x51\xfe\xe3\x3c\xa1\x04\xc1\xb5\xc1\x5e\x1a\x6e\x38\xfe\xba\xfe\x22\x7d\x49\x9b\x8b\xee\xa3\xde\xaa\x3e\x1a\x40\xbd\xa0\xa2\x98\x7c\xaa\x42\xe5\xca\x32\x1c\x37\xd3\x44\x85\xef\xf3\xfa\x0c\xfc\x53\x9c\x26\xd3\x97\x2e\x7b\xbb\xca\x0b\xb6\x0b\x93\xea\x58\x6f\x21\x9d\x5e\xe9\xea\x48\xbd\xb2\x3f\xe7\x2f\x6a\xb3\x42\x62\x8c\x81\x93\xb6\xac\x70\xc8\x37\x98\x77\x9c\x31\x8e\x22\x7c\x1e\xc6\x13\x9e\xb3\xc7\x83\xa7\xd8\x55\x1a\x84\x67\x61\xb0\x80\x91\xf3\xd3\x87\x0f\x6f\xc5\x4b\x1c\x39\x58\x87\x4e\x09\x5e\x4c\xa6\xce\xf3\xf8\x0c\x2f\x39\xda\xaf\x8a\x08\xc9\x82\x9f\xa3\xf0\x14\x39\x6f\x09\x9e\x21\x3a\x45\x8b\x64\xe0\xf0\x88\x50\x5e\xca\x0e\x9e\xe0\x05\x15\x00\xfb\x61\xec\x94\x8a\xc4\x55\x29\x18\xa6\xbd\xa7\x93\xaf\x62\xdb\x65\x7e\x06\xbb\xc5\xae\xb1\x92\x76\xb2\xed\xa4\x33\xde\xbc\x01\x9b\x4d\x1f\xa0\xaa\xa9\x95\x76\xbc\xde\xb6\xb5\xde\x93\xc2\x8f\x29\x14\xb0\x9a\xc5\xbb\x72\xcd\xfa\x11\x0f\x14\x44\xd2\x1e\x5e\x4d\xe0\xe3\xa2\xad\xc5\xa8\x87\x1b\xd5\x71\xfb\xd5\xaf\xd4\x80\x3b\xe6\xf3\x7c\x0e\x9b\x32\x79\x19\x1e\xb3\x55\xd6\x3e\x7e\xf1\xfa\xd7\x5f\xe6\xf4\x17\x1b\x20\xe4\xf6\x61\xbc\x2a\xc4\x29\x1f\x15\xb5\x95\xa8\x5e\x46\xec\xdb\x13\xd1\xeb\x4f\x61\x18\xaf\x15\xd1\x1b\xf2\x98\x19\x19\xb5\xb4\x5e\x40\x70\x31\x7f\xcf\xb6\xad\x0c\x33\x79\xaf\xe5\x36\xb4\x08\x29\x56\x46\xcd\xa6\x88\x62\x0b\x85\x67\x2d\x38\xc9\x9a\x2c\xf6\x83\x46\x94\xe4\x5b\x8d\x90\xbc\x49\x04\x71\x59\xdb\xba\x0e\x80\xe4\xb5\x23\x71\x4d\x17\xd2\x95\x05\xe6\x9a\x83\x42\x37\x0e\xd2\x35\x87\x90\x96\x02\x76\x37\x5f\x89\xda\x60\xdd\x92\xee\x65\x2e\x34\x95\x11\xbc\x36\x24\xcd\x0a\x0a\x63\xfd\xf8\xbe\xba\x50\x39\xc3\x08\x29\x22\xb3\x30\x86\x3c\x63\x6b\xc3\xd8\xb9\x97\x61\x7c\x8a\x82\xec\x10\x35\x46\xcf\x97\x4e\x63\x6d\x08\x97\xb1\x45\x75\xdc\x9c\x2d\x01\xc2\x78\xc2\xe4\xf0\x4d\x27\xaf\xe9\xdc\x8d\xd3\xd6\x55\x67\xcb\x79\x97\x9a\x18\x26\x6e\x3f\xd8\x17\x52\xb6\xb3\x19\x6c\x98\x3e\x6b\x3d\xd8\x52\x13\x43\x1c\xa7\xf5\x11\xea\x70\x83\xbe\xc8\xe4\x05\x9b\x79\x67\xc2\x85\xfd\xc4\x8b\x6d\xea\xe3\x3a\x85\xe8\x03\xdc\xa7\x52\x04\x6a\x3b\xa1\x77\x78\xc1\xe8\x62\x31\x1b\x22\x9f\xb4\x9e\x4a\xa1\x41\xed\x39\xd3\x2b\xf3\x55\x2d\xe4\x06\x61\xa1\x16\xd3\x93\xee\x1e\xcb\xb9\xe9\x4f\xe7\x26\x56\xa9\x99\x59\xe8\x61\x57\x8e\x64\x5d\xf6\x08\x2c\x48\xc4\x13\x10\x0b\x59\x18\xf5\xd6\xf7\x43\x76\xa4\x84\xd6\x10\xf4\x61\xec\x4f\x99\xde\xab\x96\x42\x2e\xc1\x19\xe4\x05\x89\x88\x2a\x5f\x67\x7c\x99\x69\x29\x9f\x41\x0a\x7d\x14\x53\x0e\x0c\x92\x72\x6c\xd5\x45\xe0\x57\x34\x7b\x9d\x06\xf0\x37\x29\x54\x42\xa8\x70\x95\x40\x52\x41\xad\x37\x73\x14\x3b\xcf\x60\x32\x3d\xc1\x90\x04\x0d\x8b\x77\x3d\xcb\x6b\x5f\x4f\xa1\x21\xd0\x78\x4b\x61\xc6\xa9\x4e\xb9\xa1\x11\x60\x37\xd4\x78\xcf\x76\x31\x16\x7f\x39\xf8\x3d\x38\xfc\xfe\xa4\xa1\x9c\x82\xb5\xf3\x5b\xe7\x7a\xdb\x8c\x74\xda\xc0\xae\x5c\x2e\xfe\xcf\x67\x56\x46\xdc\xd2\x8a\xee\x73\x83\xd9\x09\xfe\xec\x1a\x81\xb8\xdc\x16\x10\x56\xd7\x06\x49\xb5\x1d\x6c\x78\x79\x0c\x5e\x64\xe9\xed\xd7\x01\x12\x6f\x85\x89\xe4\x1a\xf1\x90\xcc\x7e\x17\x26\x18\x20\x59\xe8\xdf\x88\x92\x64\xcc\xbb\x70\x73\xa5\x4f\x0f\x38\x50\x15\x0a\xde\x56\x22\x28\x19\xf3\xae\xcc\xda\x64\x07\xc8\x49\x1b\x79\xa5\x3b\xf5\x4b\x5b\x7b\xa6\x0b\x01\x13\x29\xc1\x2d\xa3\x99\x37\xc7\xab\xb0\x7c\xc4\x82\x73\x5e\xb5\xc7\x3a\xcf\x76\x3a\x62\x62\x9a\x26\xb1\x55\x2e\xf6\xcb\x3c\x7e\x9b\x3c\x1f\xcf\xed\xfc\xd5\xf5\xc2\x45\xc7\x04\x57\x24\xea\x98\xe2\x37\xa2\xa8\xe2\xe1\x7f\xc9\x5f\x7f\xbd\xdb\x7b\x68\x47\xf6\xec\x6e\x4d\xa7\xd1\x57\x85\xb2\xc4\x3d\x21\xeb\x86\x28\x6f\xb6\x34\xc5\xc3\x05\xc5\xe3\x30\x8a\x24\x9b\x4c\xab\xc0\xe7\xbc\xd6\x45\x6f\xb6\x34\x53\x97\xa5\xec\xf7\xdc\x78\x97\x97\xb5\x93\xbc\xb1\x8e\x35\xa2\x04\xc6\x09\x0f\xc8\x6f\x56\x8d\x07\x22\xeb\xaa\x42\x61\xea\x7e\x2b\x6d\x52\xcb\xab\xb2\xcf\x1b\x81\xb8\xfc\xea\x87\x97\xe7\xdf\xfc\xf7\xdb\x37\x15\x68\x33\xf3\xd0\x05\x6e\x80\xe2\x50\x03\x5c\xd6\x91\x97\x4d\x5b\x4e\x04\x7c\x61\x6e\x62\x2e\xf9\x30\x72\x25\x5f\x77\x95\x30\x92\x46\x42\x80\xec\x3b\xa1\xb5\xb9\x3a\xc5\xc6\x98\x28\x29\x21\x7d\x2c\x89\x16\x13\xab\xd4\x31\x1b\xb6\x2d\x5c\x4a\x16\x50\x2b\xfc\xc9\x02\xd0\xa1\xe6\xbe\x12\xf8\x98\xaa\xbb\x8e\x6d\xc6\x9c\xb4\x41\x9b\x84\x79\xb1\x5c\xc2\xf7\xec\x3e\x91\x82\x2d\x5b\xd6\x65\x06\xe6\x29\x62\x07\x1b\xfc\xea\xeb\x00\x4b\xbb\xc5\x42\xbf\x4f\xa2\xc8\xe9\x15\x5e\xac\xab\x0e\x59\x91\x5e\x33\x40\x34\x07\x94\x34\xf5\x8a\xcf\x1d\x55\x44\x38\x59\x9c\xe8\xc5\x8a\x8b\xaf\x90\xa8\xa0\x65\x10\xe1\xa6\x77\x2b\x9a\xe5\x5e\xfd\x0c\xc5\x4b\x35\xa3\x5c\xaf\xe5\xee\x2a\x20\xab\xc5\x02\xd9\x81\x56\x6b\xc2\x5a\x85\x3e\xa8\x19\x03\x6d\x15\xc2\x86\x8e\x1b\x43\xa3\x0b\x22\x29\xbb\xcf\x60\x94\x6e\x5d\x89\xab\xc6\xcd\x4d\xd2\x3b\xd9\x5f\xaf\x1e\xca\x3a\x60\x39\x3a\xdf\x28\x16\xbb\x5f\xbb\xa6\x9a\xa5\x48\x5b\xa5\x34\x57\xec\xcb\x76\x40\x95\x57\xa6\x3d\x17\x56\xd3\x1e\x08\xfa\xa6\x60\x3f\xab\xec\xc6\x22\xe8\xf3\x83\xb5\x40\x9f\xf5\xd3\x79\x05\x8a\x7e\x81\xda\x1b\x2b\xfc\xe9\x76\x77\x2b\x1c\x53\x05\xda\x28\xf4\xe6\x9c\xa1\x3d\xc7\x14\x40\x35\x17\xa9\xee\xad\x8e\xb1\xac\x8d\xc6\x6c\xa9\xf6\x5a\xc3\x9a\x14\x69\x5f\x94\x96\x1b\xaa\xd5\x01\xdd\x2e\x21\x39\xff\x61\x66\x6c\x20\x68\x4c\x50\x32\xed\xf3\x67\x98\xac\x54\x77\x35\x71\xf5\xc2\x7a\xc0\x1b\x1b\x0f\x5a\xd1\xb3\x1d\x74\x6f\xee\x76\x6a\x36\x28\xe8\xff\x72\xc6\x85\x8c\x38\x7a\x2a\xb9\xd9\x00\xa9\x29\xc6\xa6\x28\x43\x57\x40\xf7\x9a\xaa\xff\xf3\x80\x4f\xaa\x15\x8d\x29\xda\x32\xf2\x53\xaa\xc6\xfd\x74\xec\x53\xfb\xd7\x7a\xbc\xc5\xc3\xe5\x47\x0f\x37\xc5\x19\x6d\xc6\x89\xab\x49\x0d\x6f\x82\x18\x6d\xe9\x5c\xd8\xaf\xac\xe5\xd4\x9d\xc6\xd7\x09\xa6\x28\xef\x94\xa4\xde\xd2\xad\x6a\x7a\x67\xbf\x7e\xfc\x09\x7d\xf8\x77\xb0\x59\xaa\x5d\xe6\x9f\xbd\x8e\x6c\x3b\xa6\x4d\x86\x89\x8f\xcf\x10\x59\xf6\xa5\xd7\x5a\x45\xb5\x09\xdf\x75\x95\x4b\xbb\xa0\x73\x55\x5b\xfb\xba\xde\x42\x92\x40\x9d\xec\x9c\x0c\xcc\x7c\xcb\xc6\xbe\x7f\xfb\x3f\xff\xe7\x5b\xf2\xff\xb3\xf7\xa6\xed\x6d\xdb\xe8\xc2\xf0\x77\xfd\x0a\x99\xd7\x73\x54\xa0\x81\x68\xc9\x49\xe7\xcc\x28\x65\xfd\x3a\x8e\x67\xea\x69\x12\xe7\xb5\x9d\x79\xe6\x8c\x46\xc7\x17\x2c\x42\x36\x27\x14\xa0\x02\x90\x1d\x57\xe2\x7f\x7f\x2e\x6c\x24\xb8\x68\xb1\xe3\xa4\x49\xdb\x7c\x70\x28\x12\x3b\x6e\xdc\x1b\xee\xe5\xe7\x8f\x03\x1d\x3f\xfe\xf4\xaf\x74\x4f\x55\x35\x9f\xfc\x08\xbf\xeb\xed\xfd\x10\x72\x1f\x82\x29\xbe\x6b\x73\x32\x26\xc9\x0d\x69\x4b\x8e\x27\x93\x64\xdc\x9e\x70\x36\x6d\x70\x37\x70\x2e\x09\x9a\x2e\xd9\x51\x87\xed\x57\x04\x73\xea\x3b\x1d\x8c\x19\x9d\x24\x57\x73\xae\xba\xb1\xa5\x9c\x13\x42\xdd\x78\xf1\xa3\xa3\x94\x53\x4a\xc6\x72\xb7\xd1\x30\x66\xb4\x3a\x82\xf6\xc6\xc8\xdb\x76\xfd\x84\x24\xb3\xee\xa5\x62\x65\xc8\xac\x16\x66\xfb\x3e\x4e\x14\xeb\xf3\x6a\xf8\x0e\x3b\x4d\x06\xb5\x2b\x5d\x73\xee\xe3\x70\xf8\x11\xbc\xd9\xa3\x71\x63\x5b\xf1\x5f\x25\x7e\x2b\x35\x86\x74\x4d\x77\x3a\xcd\xab\xfe\xb8\x31\xc1\x3f\xaf\x7f\x7d\x09\xc1\x3e\x0a\xb6\x96\xc6\x66\xe8\x57\xc5\xd4\xef\x5e\x1e\xbf\x3c\x79\x9f\xfc\xf5\xe3\x30\xb5\xf3\x62\xff\x75\xe3\xa6\xfc\xe1\xe5\xfe\x1b\xf6\x72\xff\x6c\x47\x5c\x4f\xf6\x31\x8e\xf7\xdc\xb3\xb4\xfd\x75\x83\x24\xfd\xeb\xef\xd3\x53\xf2\x72\xcb\xab\xd7\x55\x67\xbc\xe4\x47\xfb\xdb\x66\xc7\x72\x1b\x69\x9b\x70\x27\xe7\xb1\xb0\x5c\xcd\x93\x3d\x9c\xf3\x7a\x64\x7e\xab\x66\x28\xfe\x08\xbc\x56\xc9\x41\xf5\x81\x6c\x56\xee\x27\xbd\xad\x7b\xf4\x6a\x6e\x6b\xad\x4b\xf4\x6f\x9f\xef\xca\x8f\xe2\xef\x80\xe3\x2a\xe6\xfa\x00\x9c\x6c\x2e\x54\x7f\xed\x48\x0d\x93\x7e\xff\xfc\xd9\xdf\xc8\x7d\x73\x64\x3f\xf3\x6f\x84\x9b\x91\x9a\xf5\xde\x73\xd3\xac\x5d\x2b\xef\x21\xef\x4e\x79\xf3\x0d\xc3\xc3\xb7\x4d\xf7\xf2\x90\x1d\xba\x26\x38\xfe\xb5\x37\xe8\x96\xfd\xf9\xc5\xcf\xff\x48\x7e\xd9\x9a\x3e\x5a\xbf\xda\x4a\x12\x5a\xb5\x5f\x53\x16\x6b\x6c\x6a\x4a\x54\xe2\xe3\x7f\xfc\xe9\x50\xab\xf5\x90\x55\x4e\x19\x8e\xbf\x00\x8d\xe2\xd5\xfb\x9f\x7b\x7f\x79\x79\xbb\xdd\x49\x78\xf8\x2a\xd9\xd9\x3e\x64\xa1\x28\x93\x5a\xf1\xff\x6b\xaf\xd4\xee\xe1\xdf\x7b\x1f\xae\xc6\xdb\xe9\x5e\x1f\xbe\x52\x6e\xba\x0f\x5a\x2a\x6b\x0a\xf6\xeb\x2e\xd4\xe1\xab\x17\x77\xc7\xaf\xbf\x6b\x4e\x00\xbf\xa5\x59\xe1\x47\xac\x9f\x5e\x83\x87\xac\x9e\x30\xc9\xe7\x7e\x7d\xd9\xe0\xc3\xb3\x27\x3f\xbd\xfe\xfb\x7c\xfb\xf5\x6b\x48\x8b\x6f\xa7\xf2\x19\xa3\x08\xb8\xe5\x5b\x1f\x3d\x60\xad\x67\xbb\x69\xe0\x31\x5c\xdb\xb7\xf1\x8e\x0e\x36\xfa\x46\xbb\x65\xfc\x64\x4e\xdc\x5b\x7b\xf6\xac\x09\x16\x45\x99\x4c\xc6\xa4\x9d\x58\xc7\xe7\xad\x03\xa3\xbc\x62\x63\x9c\xb6\xcf\x24\xe3\xf8\xaa\xd1\x34\x66\x3b\x25\xb9\x50\xd2\x98\xdd\x38\xc5\x0b\x27\xd3\x29\x89\x13\x2c\x49\x7a\xd7\x16\xf8\x86\xc4\x6d\xc9\xda\xa9\xee\x4b\x98\xbe\xda\x98\xc6\xed\x19\xe1\x22\x11\xd2\x8b\xdc\x73\xc9\xd9\xad\x20\xbc\x3d\x17\xf8\x8a\xac\x13\x62\x9a\xdf\xfc\xb7\xc9\x37\xbf\x29\x40\xcc\x24\x21\x69\xac\x6d\x32\x36\xc5\x09\xa8\x27\x18\xce\xbd\xc2\xda\xaf\x12\xfa\x7e\x45\x68\xf8\xad\x44\x87\x83\x38\x6e\x63\xad\xab\x55\xab\xe3\xe5\x94\x6d\xc7\x44\xe2\x24\x6d\xab\xe3\xac\x44\x51\xf5\xe9\xdd\xb1\x2a\x74\x45\x64\xfb\xe7\x79\x32\x7e\xef\xe5\x76\xc5\xae\x5a\xf7\x36\x89\x49\x7b\x4a\x24\x4f\xc6\xa2\x1d\xbb\x71\x86\xed\x23\x2a\x09\xd7\xad\xe4\x2f\xdb\xef\x4e\x5f\xb5\x13\x6a\xfb\xd5\xeb\xd1\xbe\x24\x29\xbb\x0d\xdb\xff\xc3\xe6\xed\x31\xa6\xed\xb9\x20\xfa\xe3\x2c\xc5\x63\x72\xcd\xd2\x98\xf0\x3c\xd5\xff\x58\xa7\xe3\x29\xf1\x59\xc1\x62\x51\x38\xef\x65\x59\x50\xe5\xb0\xf4\x86\xaf\xad\x6e\x85\xc9\x50\xa1\xf5\xa6\x06\x6e\xaf\x93\xf1\x75\xfb\x36\x49\xd3\xf6\x25\x69\x73\xa2\x07\x16\xb7\x6f\x13\x79\xad\x07\xaa\x0e\x54\x9b\x4d\xec\x44\xdd\x50\x9c\xd8\xd2\x1e\xcf\x39\x27\x54\xa6\x77\xed\x4b\xa2\x84\x7d\x85\x80\x48\xbc\x49\x52\x2b\x22\x46\x18\x27\x53\x4f\x11\x60\xcf\x5e\xd9\x86\xb0\xe6\xa1\xcb\xe8\x24\xe1\x53\x7d\xd3\x3a\x42\xa5\x9f\x4e\x41\xd0\xd6\xe6\x6a\x92\x7c\x90\x15\x73\x36\xa3\xde\xe1\xa9\xb8\x10\x85\x27\xe4\x1a\x63\x3f\x31\xc3\xb5\xd8\x48\xaf\x34\x78\x59\xfc\xac\x2d\x24\x36\x65\x8f\x5d\x69\x8c\x46\x8d\xcf\x8e\x1a\xd0\xd0\x36\x32\x0a\xec\x5a\x58\x33\xb2\x92\xda\xb7\xc1\xbb\x54\x97\xcd\xcd\xc8\x56\x87\x84\xc9\xed\xcc\xf2\xe5\xd0\xf5\xde\x93\xbb\x99\xc9\xd6\xb1\xb2\xa6\xb6\x59\xaa\x57\x8b\xd9\x2d\xdd\xbe\x56\x61\x5e\x67\x77\x65\xa5\x69\x5d\xb0\x2a\x81\x00\x09\xaf\xc2\xf6\xb5\x94\x33\x31\xd8\xdd\xbd\xe2\x78\x82\x29\x0e\xc9\x07\x3c\x9d\xa5\x24\x1c\xb3\xe9\x6e\xbc\xdb\xdf\xad\xdc\x73\x4d\x89\xb8\xee\x30\x7e\x95\xc4\x51\xbf\x53\x40\x70\x14\xac\x3f\x60\x3d\x14\x74\x5c\x13\x6a\x8f\x8a\xf2\x1b\x4e\xd4\x46\x25\xc5\xda\x68\xb6\xce\x69\xbb\xa6\x02\x7b\x77\x7c\xf1\xf2\xf8\xec\xe0\xc5\xab\xa3\x8b\xd3\xa3\x83\x57\xe7\xc7\xaf\x8f\x1a\xfd\xa3\x37\xaa\x02\x3f\x06\x4d\xbf\x50\x04\x57\x1d\xf3\xff\x7f\x4e\x78\xb2\x0a\xda\x57\xe1\xe9\x9f\x08\x99\xb5\xc7\x58\xe2\x94\x5d\x69\xa2\xda\x9e\xcf\xba\x92\x75\x63\x75\x88\x14\xc2\x61\x73\xd9\xb6\x46\x61\x26\x81\x38\xd1\xd8\x3a\x6c\x1f\xd0\xbb\xb6\x81\x5e\xd1\x9e\xe2\x58\xa7\x73\x2f\xb2\x74\xeb\x54\x6f\x1a\x13\x7a\x26\x51\xb7\x6c\xae\xb1\xaf\x6a\xd0\xd8\xde\x29\xa4\xcf\x09\x4e\xdb\x32\x99\x92\x70\xed\xd0\x57\x46\x8f\xd4\x38\x25\xb7\x18\x5d\x83\x35\xca\x88\x6d\x6d\xde\xcd\x95\x38\x61\x9c\x26\x84\xca\xe1\xa5\x5d\xf4\x1c\x2d\x68\xeb\x54\x12\x07\xb5\xc0\x05\x16\x45\x98\x7a\x81\xe5\x8f\x72\x24\x69\x6b\x55\xcf\xf1\x03\xd0\xc6\x43\x0c\x65\x9b\x30\x69\xff\x7e\x33\x38\xa1\x01\x0a\x4e\x26\x93\x9a\x99\xda\x2a\x1c\xf2\xb0\x13\xb9\x95\xeb\xe9\xd6\xcc\xea\xe6\x8f\x0f\x94\xc6\x4a\x42\xc1\x76\xf2\x18\xc7\x54\x28\x4e\x4e\xec\x5e\x32\x96\x12\xb5\x1b\x85\x3c\x86\x82\xff\x8f\x28\xd9\x49\x1d\x47\xac\xe8\x7b\x82\xd3\xe4\x17\xc2\x77\xbb\x33\x9e\xdc\x18\x09\xc7\x93\xd8\x90\x7c\x80\xcc\xb6\xb2\x82\x1d\x79\x80\x16\x84\xce\xa7\x84\xe3\xcb\x54\x55\x41\x57\x44\x0e\xf2\x3e\xe1\x82\x13\x39\xe7\xb4\x2d\xc3\x17\x66\xfc\xe7\x6e\x46\x59\x06\x37\xce\x39\x36\xfa\xee\xaf\x73\xc2\x2f\xb1\x24\xf7\x9a\x2d\x9d\xab\xb9\x7d\xb5\xf3\x7d\xa3\x87\x7f\xaf\x19\x0b\xc9\x2b\x5a\xbf\xaf\x6a\xc6\x67\x7a\xf8\x9b\x67\x3c\x97\x49\x2a\x76\xf1\x38\x15\x5d\x17\x1c\x71\xa5\x52\xc5\x3d\xb7\xa5\x9a\x1d\xa2\x45\x77\x8a\x18\x92\xfd\x55\x83\x97\x6e\x8a\x14\x95\x07\xef\xee\xf5\xdc\xef\x5b\x9e\x48\xfb\x9c\xc1\x01\x19\xca\x51\x44\x11\xc9\x3e\x42\x99\xe3\x0f\xff\x06\xf3\x36\x8d\x30\xbf\xd2\xb7\x71\x22\x34\xd7\x9f\x3f\xf4\x3b\x1d\xa3\xf2\xd9\x89\x8a\x8f\xc3\xfe\x68\xdf\xff\x31\x78\xcb\xd9\x34\x11\xa4\x65\x67\x9c\xb7\xcb\x4d\xbb\x18\x31\x24\x22\x3b\xd0\xf7\xe4\x4e\x00\x0e\x87\xbd\x11\x4a\x22\x3e\x14\x23\x57\x4b\x82\x45\x22\x0e\xe6\xf2\x9a\xf1\xe4\x17\x12\x0f\x28\xb9\x6d\x53\x50\x5a\x63\x5c\x0c\x59\xc2\x05\x01\x12\x66\x6a\xe3\x12\x71\x44\xd5\xca\x34\xd6\x61\x8d\x75\x32\x24\x50\x12\x8e\xb1\x1c\x5f\x7b\xc5\x25\x5c\x24\x13\x20\x43\x7d\xe9\x20\x3a\x1d\xf7\x34\xec\x8d\xe0\x42\xdc\x26\xaa\xb4\xf7\x2e\x34\x40\x01\x17\x63\x2c\x48\xf0\x5d\xaf\x17\x0c\x92\x09\xd8\x51\x7d\x40\x3b\x29\x06\x76\xfa\x10\x61\xfd\x97\x86\x9c\xa8\x25\x00\x12\xb6\x18\xd8\xe9\xd9\xf7\xad\x4b\x4e\xf0\xfb\x96\x6e\xe3\x59\xef\x69\x30\x58\xf9\xad\xaf\xbf\xf5\xcb\xdf\xec\x66\x0e\xe4\x35\x67\xb7\xa5\xfe\x64\x66\x06\x31\x1c\x65\x4d\x1f\x21\x0c\xe5\x35\xa9\xac\x56\x31\x6c\x33\x84\x1e\x44\x24\x83\x10\x66\xd9\xda\x13\x22\xc6\xe4\x53\xa9\xb6\xcb\x38\xc3\x80\x29\x09\xc5\x2c\x4d\x24\x08\x76\x03\xe8\xc0\x87\x3a\x90\x95\xfb\x34\x14\x69\x32\x26\xa0\x87\xba\x12\x86\x46\xb2\x05\x41\x00\xc3\xff\xb0\x84\xea\x4a\x83\x20\x58\x3f\x21\xc9\x2e\xcb\xd8\xed\x12\x0b\xf2\xa7\x67\xdd\xff\x88\x47\xc0\x63\x9f\xe0\x04\x06\x73\x39\xe9\xfe\x39\x40\x3c\x92\xae\xf1\x50\xb2\x17\x77\x92\x1c\x70\x8e\xef\x00\x29\xd6\x89\xdc\xb6\xcf\xc9\x07\xf9\x92\x8c\x59\x4c\x38\xa0\x30\x8c\xf5\x23\xe0\x70\xed\x9a\x5c\x4a\x86\xbf\xd2\x35\x71\x73\x3e\xa2\xf9\x9c\x89\x7e\xf4\xd6\xa5\x58\xb7\x09\x67\xd3\x62\xe5\x36\xac\xca\x18\xa7\xe3\xb9\xe2\x12\xbb\x33\x66\x7c\xc6\xcb\x6b\x64\x88\xe2\x25\x16\xc9\xb8\x1b\x73\x36\x53\x72\xfc\xea\xaa\x5f\x10\x8d\xb4\xe5\x37\xd0\xc6\x31\x4e\x53\xed\x20\x66\x84\x94\x4f\x8b\x00\xdc\xe8\x02\xf7\x2a\xd8\x89\x54\xbf\x6c\xd2\x26\xfb\xf5\x39\x90\x6c\x40\xd6\xef\x9d\xf6\xa7\xec\x4e\x12\x7a\x45\xf8\x8c\x27\x26\x6a\xd7\x96\x14\xde\x01\xa7\x4f\xd6\x08\x6c\x25\x13\x60\xdf\x5c\x11\x79\x72\x4b\xdd\x5c\xcf\xcc\xdd\x87\xa9\xc5\xa3\x75\x65\x54\x33\xb2\xd3\x01\x3c\xe2\xa1\xf1\x74\x2b\x93\x28\x3b\xbd\xc6\x26\x5e\x12\x31\xe6\xc9\x4c\x32\xae\xc7\x18\x16\x7b\xad\xb0\x38\xa2\xe1\x6c\x2e\xae\x43\x3c\x9b\xa5\x77\x80\x22\x0e\x33\x87\x15\xb2\x7c\x76\x66\xae\x8c\x03\x33\xbf\xfe\x73\xfa\x7d\xf5\x00\x3e\xa7\x4f\x9e\x58\xd2\x1e\x29\x79\x6d\xc7\x3b\x85\xd4\x3f\x85\x74\x34\x58\x64\x2d\xfa\x5f\x7b\xfb\xd2\x2e\x0b\xc0\x10\xed\xf4\x60\x38\x61\xfc\x08\x57\x89\xaf\x1e\x34\xc2\x43\x39\x52\x40\x37\xd8\x30\x43\xd1\xc8\x53\x25\x44\x00\x82\x36\x55\x05\x18\xc2\x81\x37\xa6\x15\x03\x5a\xcd\xb4\x6d\x5a\x7d\x8c\x24\x54\x93\xc8\x72\x60\xcc\x17\x98\x7f\x85\x0c\xa2\x83\x77\x5c\x47\xc6\x7b\x8d\xc8\x78\xcf\x07\x83\xbd\xd1\xe0\xef\x67\x27\x6f\x42\x23\x36\x24\x93\xbb\x1a\xa7\xc8\x14\x3f\xa6\xb9\x2f\x05\x4f\x51\x94\x2c\x97\x89\xed\xe0\xfb\x3e\x34\xec\x8b\xc2\xe2\x47\x8a\xf7\x02\xc1\x3b\xcd\xef\xb5\x25\x6b\x9b\x33\xdc\xf6\xce\x30\x6a\x4f\x13\x21\x12\x7a\xd5\x9e\x30\x4e\x92\x2b\xfa\x13\xb9\x6b\x1b\xf5\x2e\xac\xf5\x9b\x9a\x69\xcd\x5b\x79\xcf\xe9\x50\x8c\x96\x4b\xf5\xf7\xa3\xfb\xd7\x01\x21\xa0\xbe\x2c\x1d\x47\xe9\x50\x8e\x96\xcb\x1c\x0d\xe7\xe4\x18\x50\xb0\xc8\x50\x0a\x11\xe0\x60\x1e\x2d\x32\x24\xd1\x18\x22\x0e\xe6\x88\xa0\xc4\x3c\x30\x84\xc1\x70\x8c\x12\xa4\x46\x35\x82\x10\xcd\x35\x43\xb6\x0e\xb5\xc5\x49\x1e\x75\xea\x93\xf3\x64\x24\x22\xe1\x21\x63\x3c\x46\x32\x92\xe6\xa9\x55\xe0\x8f\x1e\xe2\x51\xef\x39\xff\x9e\x84\xff\x20\x63\x87\x3f\x78\x81\x3f\xf4\xfb\x21\x1f\x75\xa5\x7d\x68\xd1\x27\x11\xfe\x16\x67\xea\x33\x8b\x5e\x63\x79\x1d\x8a\x9f\xb9\x04\x14\x3e\x21\xe1\x8f\x24\xb9\xba\x96\x4f\xa4\x7d\x40\x22\x62\x4f\x48\x78\x10\xff\x67\x2e\xa4\x82\xb5\x27\xd2\xfb\xd1\x12\x3f\xf4\x3a\x1d\xc0\x22\x91\x6f\xbc\x6e\x8e\xb3\x39\x8d\x41\x9f\x7c\xf7\x2d\x83\xbb\xfd\x5e\x6f\xfd\x4a\xb2\xe9\xee\x38\x4d\xc6\xef\xbb\x93\x84\x0b\x99\x07\x8c\xfc\xd4\xa4\xee\xa3\x58\x1f\x59\x03\x74\xe9\x28\xcf\x43\x99\x29\xc9\x03\x84\x23\x19\x5a\x0f\x73\xca\x62\xad\x30\x0b\x25\x7b\xc5\x6e\x09\x3f\xc4\x82\x00\xd8\xb2\x42\x12\xb6\x32\x91\xd1\xb7\x0e\xf4\xb3\x51\xd3\x9a\x67\x6c\xff\xbf\x9c\x4b\xc9\x68\x30\x30\xa3\xb5\x5b\x4e\x00\x47\xae\x1f\x18\xfe\x3c\x27\xfc\xee\x4c\xfb\x74\xab\x93\x87\x03\xd8\x62\x9d\x0e\x05\x0c\x66\x99\xb5\x43\xf0\x97\x6d\x18\x4c\xd9\x5c\x10\x73\x5d\x62\x9e\xe7\x33\xa3\xe6\x1c\xbf\x0f\x46\xe1\x14\xcf\x1a\x25\x1e\x75\xb8\x5f\xab\xd2\x47\x37\x84\x2a\x02\xbf\xb8\x9c\x5f\x5e\xa6\x44\x68\x4c\xab\x8e\x52\xea\xf0\xec\x4d\x42\x6e\x07\xb7\x09\x8d\xd9\xad\x66\x8e\x9a\x49\x07\x09\x9d\x9f\xbc\x69\x51\x6a\x6a\xd0\x9c\x22\xd1\x87\x34\x26\x88\xf8\x44\xc1\x9d\xca\xc7\x56\xf2\xbb\x82\xdb\xb3\xfd\x02\x02\x33\x23\x14\xe7\xe4\x69\x03\x9e\x51\x63\x36\x6c\x54\x9a\x08\x49\x28\xe1\xdb\x2b\x49\x34\xbe\xdf\x01\x24\xcf\x2f\xc6\x26\x6d\x09\x3d\x6c\x7b\x7e\x37\x23\x16\xe3\x1e\x62\x4a\x99\x6c\x2b\x7e\xb3\x8d\xdb\xfa\x92\xa0\x8d\x45\x1b\xe7\x10\x1e\xc0\x12\x0b\xa3\x5a\xf7\x90\xd0\x73\xfa\xbd\xac\x31\x2f\x3c\x92\x43\x3a\x6a\x71\x8f\x4b\x8a\xfc\x1f\xcb\xe5\x4e\x1f\xf1\xd0\xa7\xb3\xd1\x4e\xcf\xdd\x15\x26\xb4\xcd\x15\x97\x16\x3a\xba\x1b\x29\x69\x79\xd5\xf6\x70\xc5\x21\x2a\x86\xeb\x51\xe8\xb1\x19\x3f\xa9\x1f\xe6\x5e\xe3\x61\xee\xf9\x87\xb9\x37\x1a\x0c\x47\xbe\x34\xc8\xd5\xae\xb7\xcc\x82\x78\x3d\xe4\xab\x49\xc0\x4a\x6c\xb4\x75\x77\x12\xc8\xeb\x44\x20\x02\x91\xfa\x3f\xcc\x61\x25\x32\x87\x9e\x23\x8c\x98\x1b\x13\x8f\x08\x02\x38\x1a\x2e\xde\x93\xbb\x41\x80\xe3\x38\x40\x66\x35\x8a\xe3\x85\x14\xef\xea\x74\x4b\x91\x6a\x52\x11\xf0\x42\x2e\x88\x9c\x5c\x20\x21\x8e\x64\x8b\xa4\x82\xb4\x93\x09\x90\x3e\xa4\x11\xf5\x29\xe4\x64\xca\x6e\x48\x78\x99\xd0\x18\x48\xa8\x4b\xea\x76\x45\xa4\x7a\xd6\x47\xf7\x95\x1d\x6c\x80\x92\x28\x30\xe5\xcb\xef\x5b\x66\x0d\xa2\x28\x92\x43\x31\xea\x74\x80\x88\x02\x25\x07\x26\x51\xc0\x26\x13\xcb\x01\xa4\x11\x6d\x05\x56\x6f\x9a\x0f\x2f\xed\x74\x40\x5a\x3a\x97\x9f\x8f\x2f\x54\x6c\x87\x5a\x46\x33\xbc\x79\x49\x90\x49\xe1\x4a\x44\xe9\x0d\xd6\x1b\xea\x50\x8c\xf4\x0b\xd4\x20\x4a\x0e\x13\xfb\x8d\x66\x19\x20\x28\x1d\x12\xcd\xde\xb7\x70\x54\x2f\x3c\x5f\xd9\x2f\x01\x06\x81\xba\x56\x4b\x60\xa4\xc5\x1a\x25\x5a\xd4\x4e\x08\xf3\x0a\x4d\x12\x1a\x1f\xd3\x98\x7c\x68\xee\x20\x8a\x22\xac\xc6\xe5\x74\x60\x5e\x4d\x31\xd3\x0a\x25\x82\xfa\x70\xd8\x1b\x01\xc5\x7d\x21\x03\x9e\x06\x1e\x6a\x10\xea\xba\xaf\x0c\x73\xfd\xe4\x5a\xcd\x73\xb3\x9d\xf7\x2a\x47\xc7\x9e\x41\x88\x48\x96\x8d\xa0\x22\x89\x3c\x9c\x71\x26\x99\x82\x2d\x84\x21\xd2\x64\x92\x23\xa6\x4a\x80\xb5\x52\xbc\xc2\xe2\x7e\xc2\x97\xdd\xfc\x2e\xf0\x5e\xa8\xdc\x30\xd0\xc4\xea\x3e\x17\x06\xa7\x50\xc4\x11\xae\x90\x9e\xf5\x65\x17\x19\x62\x55\xb1\x5a\xa1\x72\xc3\x47\x32\x9f\x87\xa4\x11\x1b\xf2\x11\x92\x26\x0a\xdf\xc9\x04\x50\xf8\x43\xd4\x5b\x2e\x01\x1e\xd2\x51\x44\x86\x74\x94\x2f\x2a\xce\x74\xdf\xdb\x09\xe8\x6c\xa3\x80\x7e\xcf\x01\xd9\xe6\xf2\xfd\x51\x4f\xba\xc9\x63\x71\x94\x1f\xde\x50\x51\x37\x7d\x54\x3a\x1d\x6f\x06\x59\x3e\x83\x47\x64\x2d\xc5\x43\x19\x41\x0a\x20\x4a\x8a\xe6\xa8\x69\x2e\xd1\x90\x8e\xd2\x87\xb6\xba\xc8\xd0\x3c\x4a\x43\x6b\xe2\xa4\xd1\x2b\x1a\x47\x12\xa4\x68\x18\xf8\x2f\x83\x11\x6c\x11\xab\xbf\xd0\x3d\x0e\xab\x13\x4b\x23\x62\x63\x6b\x99\x56\xe6\x91\x02\xd0\x61\xe0\xbd\x0b\x46\x9e\xd6\xd8\xb4\x95\xa0\xe1\x1c\x25\x23\x68\xaf\x04\x44\x4d\x37\x6e\xaf\x06\x7c\x02\xa2\x39\x13\xa7\xe8\x97\x06\x80\xa3\x26\x22\x94\xee\xa7\x03\x06\x81\x44\x04\xb6\x68\xa8\x5e\x2e\x97\x80\x46\x0b\xf5\x34\x08\xa6\x44\x08\x7c\x45\x02\x14\x63\x89\x07\x34\x33\xf8\x58\x58\xeb\xda\x2b\x22\x01\x0d\xd5\xa7\xe5\x72\x91\xd9\x04\xd3\xb0\x25\x3a\x1d\x40\xd4\x72\x09\xc6\x23\x0e\x84\x7d\x44\xee\x9d\xda\xfa\x31\x1e\x5f\x93\x43\x46\x25\x67\x69\x24\x4a\x3f\x21\xea\xf6\xa3\x28\x02\xe5\x42\xcb\x65\x10\xc0\x1c\x72\x03\xca\xba\x42\x32\x4e\x02\x05\x8e\x49\x69\x6f\x22\x0a\x51\x52\x61\x70\xa9\x23\x24\x58\x81\x30\x4a\xc2\x19\x27\x37\x09\x9b\x0b\xfd\x39\x5f\xf1\xca\xfb\xa8\xdc\x30\x9a\x5b\x46\x19\x8d\x47\x10\xe5\x80\x33\xef\x74\xf4\x76\x97\x07\x31\xb7\xdc\x44\x95\x50\x83\x80\xcd\x08\x0d\xca\xf8\xca\x88\x0a\xc4\xc9\x2f\x57\x44\x1e\x7a\x6d\x01\xd8\xca\x3b\x93\x9d\x4e\x75\x6e\x66\x4c\xfe\x14\xec\x39\x76\x78\x02\x0b\x91\x5c\x51\x87\x59\x0c\xac\x01\xe2\xe1\xe3\x85\xc2\xb9\x92\xcf\x95\x14\x33\xb0\x47\x94\xac\x25\xd5\x19\x44\x8b\xca\x28\x9b\x14\xb5\xd5\x55\xc9\xd0\x15\x91\x6f\xfd\x25\x5e\x55\xab\xb4\x0f\xaa\xbb\x24\x43\x24\xbc\xc1\x69\x12\x63\x49\x0e\x0d\x6c\xb9\xc3\xf4\xdd\x87\x0f\x2f\xf0\xf8\x3d\x9b\x4c\x7c\x1b\x70\xfa\x68\x2c\xe9\x53\xf2\x14\xc9\x8f\xbc\x7f\x44\x0d\x1c\xea\x76\xda\x29\x41\xe4\x79\x32\x25\x6c\x5e\x17\x9c\x1d\x9f\xe9\x9d\x47\x6e\x9d\x9f\x14\x47\xc1\x85\xb4\x9b\x6e\x6f\x88\x35\x85\x29\xba\x84\x56\x22\xde\xe9\x19\x91\x58\xb3\x89\xb8\x38\x64\xdf\xa9\xd3\xf5\x54\xbf\x33\x23\xee\x74\xf4\x4d\xa2\xaa\x3b\xf0\x98\x74\x59\xc6\x45\x3e\x6a\x82\x0b\x09\x38\x54\xd8\x5e\x43\xa9\x11\x9f\x78\x96\xb5\x1a\xf6\x8e\x56\xf9\xfc\xfc\x64\x3c\x94\x1c\xcc\xd3\x14\xd1\x68\x86\xb9\x20\xc7\x4a\x70\xd6\xf3\xdf\x49\xc4\x1b\xfc\x06\xd0\xfc\x1e\xd4\x68\x89\xd5\xd1\xa2\xdf\xcb\x4e\x07\xd0\xa8\x07\x91\x56\xc6\x4c\xf1\x07\x40\x51\x1f\xaa\xe1\x56\x60\x8f\xb7\xcc\xca\xd7\xe1\x77\x85\x00\x6f\xe1\xa0\xbc\x54\xc5\xde\x56\xd6\x4c\x2d\x17\xda\x23\x4f\x0d\x5f\x89\x58\xc3\x4d\x43\x23\x8a\x26\x9b\x45\xe2\x12\x33\xa5\x51\xec\xe7\xbb\x1c\x7d\xe0\x11\x58\x73\x87\x5f\x7d\x85\x11\x73\x4c\x04\x53\x1c\x5a\x09\xe2\xb9\x16\x81\x58\x98\xdb\x4c\x11\x73\x37\xef\x20\x21\x97\x95\x54\xc1\x42\xb6\x56\x0d\x2b\x69\xba\xf6\x32\x5a\x64\x10\xd5\x5f\xe7\xed\x47\x45\x57\x88\xe8\xfa\x86\x0e\x25\x11\xb3\xa4\x56\xa2\x54\x77\xa6\xaf\x01\x13\x3d\xfa\x56\xce\x77\xa7\xb0\x66\x05\x50\xc0\x94\x89\xad\xd7\x56\x95\x8b\xdb\x7b\x7d\xca\x56\x5f\x9d\xe7\xf3\x23\x95\x01\x1b\xc2\x6c\xe8\x76\xca\x04\x01\x0a\x84\xf2\xf6\xcd\x3d\xfb\x26\xad\x6e\x1d\xb4\xcc\xf5\xdb\xe7\x51\x47\x36\x28\xff\xef\x87\x9f\xd9\x43\x81\x53\xa2\x06\x7e\xf5\x69\x63\xd5\xa7\x7e\xd5\xa7\xa3\x01\xf5\xb9\xd5\xfc\x90\x68\xde\x31\x79\x38\xb7\xda\xb2\xcc\xba\x6a\xc7\x72\x21\x9c\xe0\xf8\xee\x4c\x62\x49\xa2\x3d\xf3\xc6\x6c\x52\xd4\x70\x5d\x29\x1b\xae\x2b\x0d\x25\xb7\x90\x81\x43\x4e\x04\x4b\x6f\x94\x60\x38\x90\xb5\x0e\x7a\x7e\x81\x2a\x2c\x5a\xb5\x1a\xf5\x2a\xfc\xd0\x2f\x30\xb1\xdf\x4e\x1f\xd1\x0a\xa7\x63\x31\x9e\x66\xa0\x32\x88\x18\xa0\x28\x41\x5c\x83\x7c\xc3\x39\xa9\xd6\x56\xa2\x91\x31\x74\xf1\xd6\x62\x45\x17\x7a\xaa\x41\xd6\x74\x9a\x54\xc3\x7e\x13\x9f\x82\xf9\x4a\x36\x32\x5f\x7a\x80\x3e\xf3\xe4\x2c\x80\xca\x9b\xe1\xe8\xba\xd6\x68\xb7\xf7\x06\x35\x60\xa8\x19\xea\x94\xbf\x3f\xf5\x55\x1a\x39\x1b\x66\x4b\x9f\xce\x29\x25\xbc\xec\x76\xe7\x29\xe6\xac\x22\x4c\xed\x37\xf7\xac\x8e\xa4\x05\x3d\xa7\xd6\x02\x14\xc9\x86\x45\xce\x91\xa0\x69\x26\x83\xb0\x25\x37\xec\x55\xab\x3a\x32\x59\xe5\x03\xcb\x14\x59\xcb\x48\xa6\x29\xeb\x30\x8e\x16\xfa\xff\x01\x41\x96\xaa\x0e\x48\x68\x9f\x32\x98\xa1\x32\x6b\x62\x57\x9c\xd4\x97\x7b\xcf\x2c\xf7\x53\xcb\x23\xed\xf4\xec\x2a\xee\xf4\xef\x87\x41\x6b\xa1\xef\xd1\x96\x3a\xee\x35\x4d\x1b\x11\x63\x97\x8b\x9b\xd9\xda\x72\x65\xfe\x60\x73\x41\x97\x4b\x7b\x63\x41\x8b\x1a\xf8\x76\xbd\x3b\x12\xb2\xb9\xac\xc2\x0a\xdb\x96\x2d\x54\x48\x9b\xcb\x5a\x97\xba\xdc\x5c\x66\xcc\xa8\x11\x69\xc6\xe5\xe9\x12\x7a\x53\x35\x91\x41\x5a\x67\x84\xf4\xfd\x31\x4a\xd1\x1c\x8d\x51\xec\x29\xa7\x26\xe5\x32\xe6\xd6\xc3\xb0\x07\x64\xc8\x46\x40\x40\x94\x46\x89\x89\x97\x6c\x6f\x3e\xe6\x65\x52\x4e\xc1\x1c\x66\x49\x18\x33\x4a\xf6\x25\x48\xa1\x23\x66\x39\xfe\x4d\xed\xc9\xe2\x08\x7b\x57\x10\xd3\x26\x95\xa9\xe3\xb5\x35\xf5\xf1\x38\xb5\xd6\x5a\x1e\x56\x35\x6c\xb5\x52\xb9\xea\x03\x51\xd8\xca\xfb\x12\x5a\x1f\x07\x98\x9e\xa5\x5a\x87\x80\x92\x0f\x32\x50\xf2\x40\x5e\x26\xa9\x95\xd1\x72\x82\x2e\x24\x2c\xf7\x66\x18\x61\xd5\xd3\xcc\x5d\xe4\x3d\x80\x7b\x60\x74\x4c\x94\x9c\xcd\xec\x4c\x22\xa2\x2d\xaa\x8a\x5f\x1a\xde\x23\xe2\xc8\x63\xbe\x92\x91\x46\xd9\x1f\xee\x22\x12\x5a\x7f\x4e\x8d\x38\xce\x5c\x31\xe7\x11\x53\x7e\x7b\x62\x61\xb2\xfc\xf6\xd0\x42\xb5\xff\xd6\x4c\x12\x81\x1e\x8a\x43\x42\x6f\x20\xf0\xfc\x7d\x9c\x9f\xcf\xc5\xe9\xbb\x37\x6f\x8e\x4e\x03\x68\x2f\x30\xc9\x38\x18\xcc\x56\x29\xe8\x8d\x44\x68\x97\x88\x7c\x90\x84\xc6\x60\x21\xb1\x78\x3f\x00\x3d\x34\x0e\xd5\x13\x04\x9c\x5c\x29\x8c\x81\x25\xe3\xa7\x73\xaa\xfd\x61\xa6\x98\xbf\x2f\xf6\xb7\xcd\x0b\x54\xdc\x50\xf8\x96\x97\x74\xc6\xdc\x5c\x6b\x3d\x7f\xee\x04\x4b\xae\xe5\xf8\x88\x87\x6a\xcf\x73\x5a\x94\x4c\x80\x42\xa0\x70\x61\xde\x47\xdf\x19\x22\xe4\x48\x8d\x7d\xfb\x14\x91\x12\xa5\x20\x10\x48\xd8\x72\x88\xd5\x94\xe9\x79\x36\xa8\xed\xef\xcc\xb5\x2d\xa1\xb1\xbb\xb3\x6d\xf3\x50\x48\x36\x03\x50\x51\x2e\x4d\x43\x60\x06\x1d\x0d\x86\x5a\x5c\x0e\xd4\x42\x04\x30\x9c\x11\x3e\x61\x7c\x0a\x60\xe6\x9b\xb5\xe6\x13\x2e\x2d\xb4\xd3\x26\x4c\xb7\x58\x3f\x52\xb9\x0f\x42\xf9\x79\xda\xbc\x9c\xa4\xba\x9c\xc4\x2c\x27\x29\x2f\x27\x8b\x00\x8e\xb6\x19\xc9\x3d\x76\x72\xcb\xae\x93\x09\xd0\xa4\x7d\x41\x1a\x77\x92\xb8\x9d\xac\xd3\xfc\x7c\x27\xc9\x76\x3b\x49\xbc\x9d\xd4\x42\x0e\x04\x50\xd7\x04\xb6\xa5\x3d\x35\x18\xa6\x51\x61\x3e\x9c\xbf\x34\x0e\xe7\x3b\xc4\x0c\x4e\x75\x9d\x09\x75\xde\x09\x95\x4a\x04\xc8\x5b\x45\xb6\xf4\x9e\x3f\xb0\xbf\x14\xc3\xc1\x97\x7c\x3e\x93\x20\xb0\x56\x7f\x48\xd8\x71\xf4\x7b\xdb\x0c\xbe\x6e\x02\x61\xa0\xa4\x68\xbe\xd0\x22\xe7\x98\x18\x66\x19\x28\x59\x5d\x63\x71\x47\xc7\x8f\x06\x9a\x8f\x0e\x98\x4d\xca\x91\x06\x48\xc8\xec\xc2\xd5\xa0\xe9\xbf\x1b\xb7\xef\x19\xc2\x6e\xcf\x9f\x0d\x98\xdb\x3a\xfb\xb1\xef\xef\xd6\x7f\xaf\xde\x2d\x66\x5b\xf8\xf3\xa7\xdd\x2c\x4d\xaf\xae\x23\xd0\x43\xc2\xb1\xa6\x10\x50\xf7\x88\x9c\xe8\x39\x83\xad\x66\xaa\x70\xad\x19\xd8\x4b\xd5\x40\x52\x34\x70\xad\x8a\x37\x91\x96\x4b\x5d\xfc\x46\x15\x4f\x8b\xe2\x97\xaa\x78\x13\x7d\xba\xd1\xc5\xef\x54\xf1\xf9\x9a\xe1\xa9\xea\x0d\x34\xef\x4e\xd7\xbe\x52\xb5\x71\x51\xdb\x27\x3b\x6f\x15\xc1\x44\xe6\x8d\xb6\x57\x36\x2f\x72\xf3\x5d\xd5\xb0\x21\xaa\x57\xba\xad\x0b\xd5\x16\x2b\xda\xf2\xfa\x77\x54\xf8\x42\x17\x3c\x69\xe2\xe8\x2f\x00\x51\xe4\xb3\x68\x1d\xd4\x65\xb7\xc2\x40\xf5\x4a\x6b\xa5\xb4\xec\x96\x13\xfb\x13\xdd\xf8\x91\x1a\x05\x2f\x5a\x39\x41\x37\xfe\x4a\x18\x06\xe1\xa8\x55\x66\x1c\x56\x48\x18\xd7\x25\x91\xa6\xc4\x5f\x69\x49\xab\x24\xcf\xd8\x23\xa1\x85\xf6\x92\xb1\x83\x74\x92\x77\x2e\x67\x92\x26\x15\x0f\x80\x88\x82\x15\x4a\xc1\x55\x32\xb2\xa9\xf4\x48\xf2\x91\xa2\xe9\x19\x74\x8b\x5a\xf0\x58\x8f\xa8\x08\x2c\x26\xd6\x60\x2c\xb6\x9d\xce\xc5\x4e\x65\x3d\x5b\xeb\x69\x11\x4b\x3e\x3e\x80\xe8\xeb\x2e\x98\xf9\x8a\x1b\x02\x17\x0c\x10\xe3\x7a\xa3\xa7\x5e\xbb\xf3\xa1\x48\x28\x82\x52\x7b\xcf\x51\x02\x51\x59\xf5\xdb\x70\x45\x67\x75\x72\x9d\x4e\xa1\x9c\x23\x61\x83\xad\x87\xeb\xa6\xe9\x93\xea\xa9\xd8\x1b\xcd\x06\x3f\xe2\xb6\x5c\xfa\xab\x59\x3a\x70\x1e\x47\xaa\xe9\x4d\x93\x72\x72\x85\x0e\xa6\x06\xc3\x88\xe6\x07\x61\x3b\x8d\x8f\x6d\xc8\xc2\xae\x05\xdd\x4a\x3b\x19\x44\x72\xbd\x17\xc5\x1a\x49\xf3\x93\x2a\x36\x3f\xf2\xd2\xca\xc3\xd5\xa8\xd6\xea\x83\xaf\x54\xb4\x76\xb1\x91\xde\x19\x3d\x60\x59\x3d\x2e\xb3\xc2\x83\xe5\x71\x34\x63\x72\xa3\x66\x4c\xed\xce\xd6\x8a\xb1\xa7\x35\x8d\x57\x89\x83\xd8\x1b\x94\xef\xf3\x3d\xcd\x69\xc3\x74\x0b\x6b\x08\xa7\x2d\x93\xf7\x03\x2c\xab\x43\xf9\xc4\x97\x31\x3e\xef\x52\x20\x3c\x27\xc5\x3f\x10\x2e\x86\x23\x24\x22\xa2\xad\xca\xf4\x20\x1d\x7e\x75\x56\x65\xb9\x76\x99\x79\xcd\x15\xb7\x96\x2c\x8f\x69\x0b\xb5\x89\x1a\x55\x2d\xd9\x74\x72\x2c\x62\x75\x57\x93\x9c\x52\xed\x14\x8d\x10\x14\x24\xe2\x25\x11\x92\xb3\x3b\x12\xab\x96\xea\x1f\x53\x22\xcd\xa7\xca\x97\x57\x26\x5b\xa0\xe6\xf7\x90\x67\x32\x97\x8c\x3a\x1d\xa0\xfe\x8b\x44\x2e\x45\x27\x34\x91\xcd\xd6\x54\xad\x8a\x01\xa1\x22\xaf\x15\xc3\x28\x1c\x1b\x1a\x1f\x5e\x58\x38\x2a\xf0\x5c\x13\x9f\x62\x86\x29\xcc\x30\x5d\x2c\x2b\xc5\xe4\x68\x2a\x04\x6d\xf3\x17\x62\x3e\x23\x7c\x05\x1f\x8a\xaa\x64\x67\x50\xb1\xb5\xdd\x30\x40\xcd\x28\xa1\x35\xb7\xfd\x7a\xfe\x76\xbf\x81\x35\x2b\xb3\x95\x61\xd5\x96\xc1\x8e\x91\x94\x06\xd8\x40\xb0\xb6\x6e\xbf\xa1\x6e\x63\x1f\x25\xca\xb0\x75\xeb\x65\x06\xad\xa9\xdd\x9a\x22\x7e\x6d\x7b\xba\x74\x63\x3b\x55\xb4\xb5\xb6\x19\x55\xb8\xb1\x95\xdb\x24\x4d\xed\x09\xf0\x1b\xdb\x08\x24\xa8\x74\xc1\x53\x81\x08\xb3\xc4\xc0\x50\x49\x75\x16\x1c\xb2\x5e\x58\x80\x1c\x30\x64\x87\x36\xc0\xa8\x84\x12\x07\xb8\x8c\x22\xb3\xc2\x30\x7e\x71\x3f\xdc\x58\xa8\x8d\xbf\x64\xa2\xbb\xea\xa2\x5a\xf3\x41\xda\xba\xa1\x55\x75\x13\x2c\xcc\x81\xab\x67\x45\xbb\xd9\x35\x58\x03\x41\x64\x2c\x16\xf8\x7e\xa1\xe8\xe5\x06\x23\xac\xbe\xfa\x95\x1a\x68\x80\xb9\xca\xd5\xbe\xe8\x3e\xbf\x4b\x14\x4d\xa0\xe6\xec\xbb\xe8\xb9\xa8\xc2\x5b\x39\x30\x40\xb9\x9d\x92\x83\x17\x5e\x70\xbf\xfa\x86\xcd\x36\xd3\x8c\xd8\xfc\x86\x40\x81\xc8\xb2\x4d\x7e\xdc\xab\x15\xf3\x5b\x99\x81\xba\x85\x00\x32\x6a\x58\x7b\x63\x3c\xd9\xe9\xd8\x30\x90\xd5\x0f\x61\x22\x8d\x42\x64\xbf\x69\x65\x2d\x97\x9e\x0d\x9a\x8c\x67\x3b\x9d\x35\xdd\xe9\x6b\x78\xc7\xe2\x44\x51\x94\xbf\xdf\x71\xcf\x05\x3b\xb4\xef\xc6\x36\xc8\x3b\x84\x80\xd4\x1d\x0b\x3e\x91\xdb\x02\xff\x92\xdd\x16\xf2\x51\xe2\xaa\x99\x7a\xa7\xc3\x4b\x3c\xa5\x84\x88\xea\x77\x88\xaa\xa3\x90\x57\x64\xe5\x8a\x80\x45\xc1\x9c\x9a\x1e\xe3\x82\x79\x39\x35\x31\xa4\x3a\x1d\xfb\xa0\xce\xe6\xbe\xf7\x3c\xa8\x2a\xe3\xab\x06\x4d\x6e\x09\x9f\xef\xd4\x8c\x6e\xaf\xb1\xf0\xac\x79\x9d\xb9\xad\x84\x9d\x8e\xb5\x4f\x02\x24\x8a\x95\x88\xfd\x1c\x3e\xcf\xfd\x36\x73\xb3\xe1\xdc\x12\x6c\x93\xef\x27\x47\x85\xb9\x23\xd6\xe3\xd7\x7f\x4d\x7f\x14\x0e\xb0\xbd\x6f\x52\xc0\xa5\xe6\xb0\x5c\xfa\x30\x26\x72\x18\x6b\x32\x1c\xc8\x87\x2a\x9b\x01\xee\x4c\x11\xa0\x36\xf9\xa0\xc3\xcc\xe9\x8b\xa8\xb9\x90\x6d\x92\xc8\x6b\xc2\xdb\x97\x44\x1b\x62\xb5\x19\x2f\x41\x60\x8b\xd4\x25\x07\x4b\x7e\x64\xa7\x23\x37\x5a\x31\x7a\xe2\x41\x55\x74\xd0\x1c\x7a\xa7\x93\x18\x55\x90\x7f\x1b\x85\x72\x06\x0c\x24\xae\x53\x41\xe4\x5b\xd7\xd7\xc9\x64\xb9\x2c\x6f\x6a\xae\x98\xb9\xb8\xd0\x23\xba\xb8\x88\x24\x22\x66\x11\xbd\xb6\xd3\xc2\xa6\xad\x6c\x12\xe1\x41\x5b\x54\x81\xb6\xe5\x72\xc7\x81\x58\x3e\x43\xe8\x2e\x94\xd5\xde\xd7\xbe\x86\xe2\x1a\x4f\x4b\x45\x1a\x70\x90\x56\xc6\xb9\x42\xbd\x96\xe7\x71\xf5\x12\x4b\x6f\xd1\x43\xc9\x4c\x48\x1a\x03\x22\xb5\xce\x80\x2a\x8e\x86\x3e\xea\x85\x0b\xcd\x46\xef\xf4\xec\xad\x65\xc1\xac\xf7\xb5\x0a\xbb\xf9\xea\x91\x22\xae\x01\x5c\x8d\x37\xf7\xe8\xb5\x0a\x31\x1f\x4f\xb6\x68\x54\x1f\x04\x2f\x98\x19\x84\x61\xa6\x9d\x6a\x68\xb4\x82\xdb\x71\x03\x98\x9b\x0f\xd4\xc7\x20\x73\xdf\x77\x64\x87\x2e\x97\x4e\xa0\x51\x60\x0d\x28\xf4\xf1\x79\x0e\xf9\x74\x7f\x0c\x08\x1c\x78\x8e\xea\xea\xf7\x22\x37\x3d\x8b\xa2\x88\x78\x47\xe2\x94\x4c\x08\x27\x74\xec\xce\x85\x4e\xa2\x71\x8d\x05\xfd\x46\xb6\x2f\x09\xa1\x6d\x25\x61\x24\x38\x4d\x04\x89\xdb\xdd\xb6\xe6\xdb\x00\x2c\x95\x50\x7b\xa1\xe4\x95\x56\xdd\x85\x3b\xf6\x88\x5d\xdc\x0c\xbd\xfb\x05\x96\xf0\xde\x36\xd2\xaf\x02\xa0\x73\x47\x81\x72\x2d\x6d\x73\xa6\xfe\x3c\xa2\x31\xd7\x47\x1b\xdb\xd6\x8d\x48\x69\xee\x89\xe5\xed\xc9\x72\x49\x14\x0d\x51\x92\x5e\x4d\x9a\x57\x1f\x60\xa7\xd3\x77\x1f\x7d\xdd\x81\xa5\x74\x85\x36\x00\xd4\xeb\xc3\x96\x2c\xb8\xb3\x66\xb5\x57\x93\x0d\xde\x93\x27\x88\x86\x17\x25\x53\xf2\x15\xfa\xb0\x55\xb6\x4b\x4d\xba\xdf\x2c\xab\x1d\x3a\x02\x17\x02\x24\x88\x40\xcb\x8f\xa7\x20\xf1\xae\xed\x15\x12\x74\x3a\x81\xc2\x1d\xdc\x58\xa6\x41\x04\x58\x24\x9b\x8f\x16\x2c\x9b\x57\x31\xcb\x2a\x46\xd8\x3e\x2c\x97\xc6\x39\x15\xb1\xd0\x44\xd3\xcc\xb9\x38\x96\xdf\xb9\x23\x16\x5e\x63\x1a\xa7\x84\x47\xdc\x28\xc5\xc7\x80\x41\x88\x58\x45\xbb\x84\xab\x6f\x9c\xcf\x41\x1f\x31\xc7\xed\xb2\xdc\x41\x05\x24\xc8\x7a\xed\x95\x56\xad\xc1\x3b\x2a\x99\x80\xa6\x5d\x77\xae\x57\x20\x06\x9e\x9d\x17\x44\xd5\xf6\x0c\xc2\x5a\x71\x27\x64\x3d\xb3\x8c\xcd\x52\xbd\x6b\xdd\xa7\xe5\xae\x9b\xd4\xb8\xfa\xbb\x5a\x38\x23\xa3\xd9\x65\x6a\x30\xf2\xcb\x7b\xaa\x48\x0f\x0d\x7d\xfa\x26\x7e\x25\xc0\xcb\xdb\x30\x1e\x0b\xeb\xbc\xc8\x8a\xae\x5b\x35\x85\x1a\xea\xef\x44\x11\x71\x4e\x12\x76\x72\x35\x55\xf8\xda\x99\xd9\x5f\x40\x01\xf2\x08\xa2\x24\x53\xf8\x66\x3b\x61\xc1\xda\x3b\xf9\x3f\xba\xe2\x3a\xb1\x9f\x1f\x57\x9a\xbc\xe5\x78\x66\x8e\x6c\x23\x73\x40\xc9\x6d\xe9\xf6\xd5\xf3\x35\x93\xcb\xa5\x8c\xa2\xa8\xca\x14\xe6\x30\x67\x2d\xe3\xa9\x56\x58\x49\xd8\x32\xb5\x34\xaf\xdc\xa8\xc7\xf7\x3d\xd4\x0c\x83\xa8\xf0\x9d\x0b\x43\xe5\x9a\x25\x2d\x8f\xbd\xd7\xfc\xaa\x67\x39\xaa\x19\xd8\x8c\xaf\xe4\xbe\x36\x69\x6a\xf9\x06\x4d\x6d\x1e\x86\x01\x47\xbd\xe7\xf8\x7b\x37\xb6\xe7\x4f\x9e\xe4\xba\x48\x3a\xc4\x23\x6d\xb1\x0f\x98\x76\x37\xf5\x16\xc6\xf9\x53\x35\x30\x36\x9b\x38\x60\x89\x18\xb4\x06\x00\xcd\x7b\xec\xbb\x2a\x32\x94\xee\x27\x80\xc1\x81\x50\x28\x28\xf7\xf0\xe4\x19\x20\xa0\x99\x1c\x4a\x08\xb5\x94\xa1\x95\x76\x52\xfb\xb0\x16\x95\x56\x56\xb1\x8c\x22\x22\x61\x22\xce\x24\x9b\xcd\x48\xdc\x74\xa9\xc8\x01\x81\x61\x1e\xff\xdd\x16\x54\xb5\x04\x31\x67\xf6\xed\x35\xae\xdd\xb8\xe9\x4a\xa4\xf8\x2a\x6d\x05\x8b\x17\xce\x0d\x86\x6e\xa8\x33\x2e\x15\x70\xd5\xde\x62\x21\x92\x1b\xe2\x4e\x6e\x53\xc5\x59\xa5\x88\x74\x4a\x1f\xc5\xfd\xfc\x5f\x82\xdf\xbf\xc6\x33\x44\xfd\x5f\x3e\x24\x16\x14\xdb\xe8\x67\xf3\x05\x54\x50\xc6\x52\x12\x62\x21\x08\x97\xc0\x08\x1b\x14\x05\xdf\x28\x78\xfd\xa6\x9d\x08\x25\x5b\x98\x18\xbf\x98\xb6\xf5\x7a\xb4\x0d\xf7\x86\xda\x97\x73\xd9\xbe\x62\xda\xf0\x0c\xd1\x92\xc0\x08\x17\xd6\xdf\xb3\x3a\xec\x7d\x62\x56\x2d\x2c\x42\x2c\x18\x0b\x79\xfd\x93\xc4\x5a\x70\x6d\xba\xae\x33\xb5\x66\x5c\xff\xff\xd2\xf0\x38\x4a\xd8\x6f\x7a\x0f\x20\x1c\x34\x89\x9a\x76\xae\x8d\xea\x03\xb7\x0e\x5a\xe7\xd2\xe9\x94\x7e\xfa\xf1\x5f\xca\x3d\xb5\x13\x2a\x92\x98\xb4\xed\x2c\xdb\xfa\x5b\xdb\xa9\xf9\xda\x09\xbd\x61\x63\x43\x46\x03\x54\x5b\x0b\x58\x16\x95\x29\x5c\x48\x03\xe0\x0a\x53\x2c\x74\x53\x06\x4c\x06\x04\xe9\x5f\x03\x8a\x0a\x90\x1b\xec\xa1\x12\x2c\x0d\x08\x72\x8b\x38\xd8\xe9\x23\x61\xe0\x58\x3d\x56\x61\x5b\xbd\xab\x0c\xc5\xb8\xf5\xc8\x64\x4a\xce\x24\x9e\xce\x06\x34\xcc\x9f\x97\x4b\x2d\xbb\x50\x76\x0b\xe0\xca\x78\x63\x7a\xc8\x41\x22\xce\xf9\x5c\x48\x12\x17\x48\xbc\x5f\xf6\x55\xf7\x50\x14\x2f\x21\x54\x0a\x91\xc1\x59\xbc\x01\x67\x71\x85\xb3\x98\x49\x2c\x90\x88\x9c\x67\x6e\x1a\x03\x43\x16\xa9\x94\x8d\x25\xad\x77\x4f\x73\xec\x33\x6e\xe5\x21\xbd\xb6\x43\x32\xca\x90\xf0\xcb\xe9\x03\x58\x2e\xa1\xce\x6d\x15\x13\x97\xe7\x59\x31\xc4\xb4\xfd\x37\x92\x7b\x19\x95\x9a\xcf\x6f\xf7\x86\x64\x94\x5b\x7f\x96\xb4\xe3\xeb\x3b\x66\x1e\x75\x51\x13\xd6\xba\xb4\x15\x93\xd5\x0e\x33\xfa\x1e\xa2\x6d\xc8\xf8\x8a\x72\x06\xc2\x4c\xc1\x12\xd0\xd5\xcb\x97\x3e\xab\xc1\x4e\x67\x4c\x90\xf8\x2d\x96\xd7\x75\x3e\xa7\xb1\x52\xcb\x73\x21\x8b\x22\xb2\x3f\x1c\x0d\xf4\xa6\xa8\xce\xdf\x9c\xbc\x39\x2a\xfa\xec\x99\x97\x87\x07\x6f\xcf\xdf\x9d\x1e\xbf\xf9\xdb\xc5\xdb\x1f\x0f\xce\xbc\xef\x7d\xf3\xfd\xe0\xfc\xe2\xfc\xe0\xf4\x6f\x47\xe7\xc5\x97\x3d\xf3\xe5\xc5\xbb\x17\x2f\x5e\x35\x54\x7c\x6a\x3e\x17\x87\x6d\xc5\xba\xe8\x6f\x99\x3e\x6b\x0a\x0c\xf1\x95\x51\xd0\xaf\x9a\x67\xcb\xd8\x41\xcd\x36\xa2\xb9\x4a\x83\x05\x9e\xab\x7c\x00\xd0\x74\x7e\xec\x4e\xf8\xfd\x47\x41\x6a\xa4\x6f\x8b\xb1\x35\xf5\x57\x1e\x64\x53\x09\x60\xae\xbc\xda\x36\xd0\x4e\xb1\xa6\x36\xe2\x34\x28\xc3\xa6\x2d\x66\x2b\x15\xf4\x62\x53\xbd\xa2\x24\xcc\x50\x19\x5d\xfb\x6b\x82\x5d\x35\xdb\x81\x95\x9b\xdf\x9a\x0a\x24\x6e\x00\x6d\x8b\x5e\xed\x80\x2c\x64\x6f\x1c\x8e\x2d\x67\xbb\xc9\xf1\x6a\xbd\xfd\xfc\x93\x29\x29\xf8\xf8\x28\xd5\xb9\x06\xb6\x39\x95\x7a\x6c\x2f\xf4\x92\xd5\x8b\x0b\xc7\xd4\x88\x6a\x51\xa3\x51\x21\x15\x4c\xd4\x92\x25\x40\x75\x11\xcd\xbd\x6b\x15\x7f\xa9\x4d\x53\x4a\x18\x69\x78\x1d\xed\xf4\x94\x88\xa6\xc6\x68\x06\xf5\x0f\x85\x03\xf3\x21\xee\xd4\x17\x57\x54\x8a\x12\xb8\x20\xcb\xa5\xbf\x5d\x09\x4d\xea\x37\xa6\x59\xb6\x82\x36\x79\x08\xd1\xf8\x16\x58\xa6\x3a\x27\x52\x6c\x7d\x04\x15\xd4\xc4\x4a\x18\x89\xdb\xd3\x9f\x98\x17\xa1\xbb\x64\x6a\x54\x11\x95\x86\xe2\x57\xf0\x45\x5f\xc3\xe4\x36\x7f\x45\x0c\x6e\x19\xd7\xa3\xe4\x92\xb2\xc9\xd9\x65\x2b\xa9\xee\x31\x43\xbe\xae\xf2\x28\xcf\x5a\x74\x4b\x9b\x96\xaa\x54\xd7\x28\x2e\xd1\x8d\x86\x2d\x2b\x6e\xb0\x73\x6e\x59\x1b\x3f\xe6\x22\x28\x74\x41\x8d\x9e\xeb\xf7\x55\x76\x1f\x02\xaa\x6f\x11\xa1\x95\x2c\x49\x68\x22\xb3\x44\xb4\xe2\x6b\xec\x42\x13\x5c\xcc\x8c\x6a\xed\x10\xa7\xe9\x25\x1e\xbf\xcf\xed\xd8\xe5\x72\x09\x1a\x0b\x68\xe7\x58\x99\x99\x93\x30\xe4\x5a\x92\x63\xd0\xb1\x54\x22\xea\x3d\x17\x45\x7c\x12\xf1\xe4\x09\x64\x43\x31\xf2\x8c\x20\x01\xde\xd2\x76\xc1\xfe\xd8\x60\x47\x90\xc7\x15\x33\x75\x26\x13\x53\x29\x8f\x28\x96\xa9\x45\x36\xe6\x16\xa7\x67\xff\x78\x6b\xc0\xd9\x2c\x56\x38\x4d\x3e\x24\x14\x78\xfb\xed\x96\x8d\x7a\xd9\x16\xf8\x26\x68\x57\x40\xaa\x31\x2c\x55\x50\x3b\xc1\x6a\xfb\x3f\xb9\xb9\xcf\x47\x2a\x54\x03\x9d\x4a\xae\xcb\xc9\x55\x22\x24\xbf\x1b\x4c\x71\x42\x03\x44\x23\x12\xa6\x8c\xbd\x9f\xcf\x80\xac\xab\xf3\x3d\xa8\xb9\x22\xf2\x40\x4a\x9e\x5c\xce\x25\x01\x41\x12\x07\x56\xbb\xef\xd8\xa6\xa1\x1c\x6d\xbe\xf5\x4d\x44\x97\xcd\xa5\x92\x5d\xbe\x78\x47\x75\x97\x31\xba\x55\x10\x2a\x1e\xed\xc8\xe5\x72\x47\x6b\x7b\x25\x4e\xa8\x00\x52\xc9\x0f\x24\xd2\x5a\x1f\xe2\xbf\x6e\x39\x3a\xd3\xe9\xec\xe0\xed\x7d\x06\x29\xe3\x53\x9c\x26\xbf\x90\xee\x26\x9d\x96\x7f\x21\xfe\x47\x94\xe0\x3f\xa2\x04\xff\x1e\xa3\x04\x37\x18\x8e\x6f\x77\xb6\x17\x59\x29\x96\x84\xb3\x82\x29\x94\xa9\x2e\x2c\x87\x51\x71\xd8\xe0\xb9\x1c\xa2\x05\xc5\x53\x32\x20\x56\x81\x2e\xb3\x2d\x0c\x5d\x7e\x16\xf8\x33\x11\x88\x8f\x34\x78\xca\x11\x5e\xcd\xe2\xe9\x23\xa3\xc4\x92\x22\x0a\x56\x29\xca\xea\x41\x9a\xea\x34\x19\x9b\x56\x50\x24\x97\xe9\x27\x4b\xfe\xdc\x44\x31\x88\xd6\x16\x3d\xa7\x11\xd5\xae\x48\x67\xa6\xff\xe7\xd0\xde\x26\x51\x1d\x95\xf6\xfc\x6e\x46\x3a\x1d\xba\x22\x42\xad\x22\x09\x39\x69\x5c\x3b\x43\x12\x27\x92\xf1\xdd\x34\xd9\x1a\xdd\x37\x86\xa7\x49\x26\x40\x3b\xe6\x84\x89\x70\xa9\x18\xf2\xfe\x01\xd1\x1e\x1d\xbe\xa1\x43\xd5\x52\x61\xa7\x6a\xcf\x54\xb1\x96\x52\x58\xc1\xe2\xa7\xa2\x61\xd3\xe1\x84\xb3\x69\x43\x0f\xce\x80\xc9\xdd\x7c\x68\xdb\x85\x6a\x60\x4a\xe2\x8d\x11\x49\xc7\x8a\xd5\x0c\x6a\xca\x76\x0b\x04\xda\xc4\x1b\x7f\x46\xdd\x3e\x6c\x05\xa6\x78\x10\xe9\x5b\x94\x92\x1d\x96\xa6\x5b\xa5\x37\xfa\x5e\x4a\x13\xc6\xe0\x35\x9e\xe9\x3a\xcb\x65\x70\x46\x4c\xf5\xc6\x89\xe9\xc2\x07\x0e\xa0\x6d\x95\xdd\xff\x05\xfb\x83\x77\xc9\xf2\x18\x52\x09\xf6\x07\x7f\x5e\xf6\xff\xb4\x7c\xba\x07\xc1\xfe\xe0\x30\xc5\xd3\x19\x89\xe1\xbe\x6e\xe4\xff\xec\x86\x92\x08\x09\x38\x2c\xcf\xb4\xb2\x5a\x8a\xfd\x6d\xb0\xb2\x39\xa6\x3a\x54\x51\x1b\x4b\x49\xa6\x33\xa9\x73\xe4\xcd\x38\xc1\x71\x9b\x32\xda\xd5\x7b\x73\x99\x16\x06\x62\xe1\xbf\xe9\x31\x6d\x33\x1e\x13\xae\x8a\x5e\x92\xb6\x2b\x82\x74\x05\x6d\x85\x6d\xd5\xe8\xc2\x58\xec\x5c\xe3\x1b\xd2\xc6\xed\x61\x65\xbb\x47\x00\xb6\xa7\x44\x5e\xb3\x38\x0c\x60\x06\xea\xa6\x69\xde\x65\xd7\x0f\xc4\xdd\x45\x29\x59\x3c\xca\x7f\x55\x82\x73\xab\xa9\x19\xc8\x94\xf0\x39\xfd\x5e\x6a\xb2\xcd\x5d\xf4\xc1\xe2\x62\xe5\xd1\xce\xb2\x31\x20\xf3\x4d\x59\x34\x13\x6b\x15\x01\xa1\xe4\xc9\x14\xc0\x3c\x1a\x16\x71\x7e\xc3\xaf\x12\x2a\x8d\x3b\x09\x72\x81\xad\xb4\x45\x79\x29\x3a\x06\x7f\x74\xac\xab\x86\x66\xf5\x2e\xe2\xc5\xdd\x39\xbe\xd2\x38\x45\x8b\x50\xae\x08\x6c\x0a\x3c\xb6\x1d\x0a\x3e\x64\x31\x79\x9d\x28\xa0\x2a\x70\xb1\x11\x04\x08\xff\x91\xa4\x33\xc2\x41\x60\x30\x50\xc0\xe7\x97\x77\x01\xaa\xc7\xef\x18\x8e\x14\x16\xcb\x5f\xeb\x48\x07\xce\xb1\x4a\x02\x02\x02\xc3\x6d\x04\x10\xa2\x24\x32\x41\x50\x9b\xac\x57\xbb\xfa\x0a\x39\x14\x7c\x5c\x04\x27\xdb\x1d\xb3\x98\x4c\xf5\xf0\x76\xa7\x2c\x26\xbb\x81\xcb\xa6\x83\x51\xb0\x1b\x40\xef\x57\xf8\x1f\x11\x68\x56\xa6\x45\x43\x3c\x57\x28\x17\xc7\xaf\x75\x56\x19\x84\x21\x4a\xf6\x19\x80\x03\x50\x1b\x10\x55\x82\xa5\x5a\x6e\x14\xa4\x0c\xc7\xe5\xe9\x31\x60\xdc\xc9\x8b\x40\x66\x76\xbf\x5d\x5c\x30\xbe\x3e\xaa\xa9\x02\x9a\xdd\xcb\x79\x92\xc6\xd5\xe4\x6c\x36\xca\x84\xc9\x72\x49\x64\xfd\x4d\xd7\x46\x22\x4b\x18\x6d\x52\x92\x28\x29\x53\xb5\xae\xb3\x95\x76\x5d\x28\xcf\xa6\xd0\x14\x5f\x04\x03\x81\x1f\x1e\x59\x2f\x77\xd2\x5c\x65\x50\xf6\xd0\x31\x05\x8d\xee\x85\x5b\x07\x0b\xb5\x51\x62\xf5\x35\x95\x88\x16\x26\x74\xa6\x0e\x45\xa7\xf8\x40\x8a\xae\x88\xd4\xe9\x1c\x57\xd8\x60\xa8\x52\x5a\xb3\xf8\x52\x55\x6c\x10\x9b\x58\xa7\xb3\x53\x26\xdb\xd2\x62\x51\x7d\xb7\xed\xb4\x18\xf9\xf5\x5c\xa0\x46\x10\x20\x69\x8c\x29\xb4\x7e\xb3\xdc\x74\xb9\x7f\x55\x5a\x2b\x5e\x9a\xec\xc1\xf0\x50\xe3\x43\x35\x7e\x00\x47\x11\xb1\x4d\x1a\x03\x8d\xaa\x66\xca\x59\xc0\xe2\x9c\x59\x46\x2c\x92\x80\x2e\x97\xd8\x90\x54\x24\x22\x66\x92\xad\xb1\x61\x7f\x84\xd2\x88\x2b\xba\x29\x76\xac\xf1\x4d\xde\x91\x89\x6f\x6a\x2c\x41\x04\x10\x45\x2c\x21\xf5\x4a\xc7\x6d\x10\x30\xf4\xc6\xa0\x08\x70\xaa\xb3\x65\x64\x26\xec\xa7\x6b\x4e\xcd\x1b\x40\x34\x6e\xb2\x1b\x98\x87\x92\xfd\xfd\xec\xe4\xcd\xbe\x7b\x00\x70\x50\x78\x09\xcd\xed\x32\xc2\xfc\xa3\xb6\x4c\xf0\x65\xe7\x31\x0c\x13\x3a\x4e\xe7\x31\x11\x20\xb1\x16\x0a\x71\xe4\x65\xe6\xc8\x31\x54\x82\x82\xb6\x3b\x99\xed\x98\x11\x6d\xd7\x47\x3e\x24\x42\x21\x9e\x96\xa1\xea\x71\x6e\x3a\x85\x62\x3d\x8b\x49\xe4\x8f\x26\x81\xad\x32\x0c\x4c\xe0\x72\x99\xc3\x67\xaa\x1d\x97\xea\x21\xbd\x87\xc9\x48\x2b\xfa\x3a\x1d\xeb\x5d\x15\x99\xb2\xa1\xe5\x98\x3c\x66\x74\xdf\x52\xeb\x49\xa7\x03\x26\xd1\x70\x04\xd1\x64\x88\x43\x9b\x3d\x76\x3f\x50\x52\xb8\xe5\xa1\x5c\xa0\x69\xfb\x73\x04\xac\x0d\xb1\x0f\x88\x73\x94\xa0\x09\x84\x83\xdc\xf6\x2e\x6f\x6a\xb9\x0c\xb4\x29\x65\x64\x6b\x95\x47\xd1\xe9\xe8\x30\xe5\xab\x3e\xef\x97\x7b\x70\x1d\x0f\xaa\xaf\x6d\x5f\xe5\x28\xd6\x2e\xa2\x23\xd0\xaa\x43\xd1\x74\xdf\xda\xe4\xa6\x51\x02\xa5\x90\x33\xa3\xee\xcc\xd5\x5c\xa2\xd3\xd9\x58\x04\xb8\xa3\x38\x4e\x09\xae\xfb\x3a\x3d\x14\x6f\x2d\xb2\xd5\xde\x25\x64\xdf\xba\xf8\x10\xcc\x09\x8f\x88\x71\x7c\xb4\x58\x06\xf8\xdf\x14\xaf\x5e\x8c\x3e\x43\x62\x7e\x39\x6d\x72\x78\x7b\xf8\x20\x9b\x0d\x92\x49\xe9\x54\x9b\x5e\xa5\x1a\x6a\xab\xfc\x02\x94\x97\x17\x6a\x5c\xf9\x0f\xb3\x97\x8c\x8b\x26\xac\xc5\x72\x44\xe5\xf6\x7c\x85\x1d\x5b\xde\xea\x9a\x85\xcc\xe1\x46\xf1\x7f\x05\x0c\xd9\x0e\x70\x1c\xeb\xd3\xbe\xb1\x83\xc6\xa6\x5d\x6d\xd5\xb4\x7b\x6e\x74\xf4\x52\x48\xaf\x69\xa6\xee\x22\x5a\x75\x36\xc0\xfa\x2e\xfa\x1a\x37\xae\x49\xb1\x55\xaa\x54\x6e\x1f\xea\x16\x3a\x72\x0f\x86\x9d\x14\x10\x89\x50\x1f\x92\xc8\xfe\x5f\xbc\xcf\xb2\x22\xea\x82\x27\x7f\x25\xe2\x0c\xdf\x24\xf4\xca\xa2\xad\x31\x9b\xce\xe6\x92\xc4\x40\xe3\xd1\xfc\x6b\x13\xd7\x58\xd0\xa1\xbc\x58\x66\x53\x01\x94\xa2\xb5\xf3\x52\xb8\x82\x7c\x0c\x26\x10\x04\x2d\x42\x38\x70\x1d\xfd\x67\x1d\x3b\xa6\x98\x26\x42\x6f\x12\xce\xe8\xf4\x7e\x2a\xd4\xfb\x49\xd5\x64\x85\xc0\xdb\x64\xfe\x6f\xa4\xab\xe5\x72\x07\xac\x15\xab\x9d\xa4\x6c\x38\x9e\xe1\x08\xf1\x68\xa7\x87\x70\xb4\xd3\x47\xcc\x49\x1f\x92\xdf\xe5\xfa\x50\x81\x92\x88\x34\x88\x6e\xcf\x77\x00\x8f\x80\x88\x12\x1b\x00\x07\x9a\x58\x3a\x9d\x0e\x30\x2a\x57\x20\x1c\x56\xdf\x91\xcb\xa5\x33\xd7\xd3\xce\x1e\xcf\x55\x97\xf0\xb9\xbd\x4b\x49\xe1\x02\xab\x21\xb0\x28\xcd\x26\x09\xc5\x69\x7a\x67\xf2\xb9\x2c\x97\x36\x7f\x56\x68\x86\xbc\x5c\xba\x27\x25\x2b\xda\x92\xc9\x04\x60\x6b\x2a\xcf\xb2\x42\xb7\xab\x57\xea\x0f\x4d\xc1\x3d\x34\x05\xe5\xf5\xda\x5e\x57\x10\x13\x33\x99\x39\x27\x7f\x28\x0c\xb6\x91\x7c\x9a\x04\xec\x6d\x49\xe1\xc3\xe5\x0c\x6b\x46\xff\xe0\x9c\x77\x4e\x3f\xe0\x5f\xf7\x16\x5c\x7e\x38\x66\xec\x7d\x92\xa7\xb2\x7d\x1e\xc0\x35\x2e\xf8\x81\x62\xcf\x48\x06\x57\xe7\x65\x21\x4e\x71\x62\xdb\x8b\x02\xa3\x2b\x11\x0d\x17\x95\x3c\x4c\xd9\x18\xa7\x36\xe2\x90\x22\x98\xc7\x92\x4c\xfd\x24\xb1\x1a\x26\x22\xb9\x6f\x66\x39\x90\xd5\x60\x2c\x9e\x2b\x13\x77\x0a\x1a\x0d\xb8\x57\x44\x1e\x51\xc9\x13\x22\x5e\xdc\xa9\x43\x00\x02\x4e\x8c\xd3\x81\x9e\x5f\x49\xf7\x90\xa3\x76\xa7\x11\x50\x5d\x86\xc6\x31\x47\x32\x6e\x14\xb9\xfa\x12\xcf\x08\x6c\x10\x2e\x97\x8b\xcc\xa2\xc0\xbc\xf2\x22\xcb\x32\x94\x46\xb8\x51\x51\x53\x28\x1b\xd0\x3c\x4a\x87\xa9\xdd\xc0\x6e\x7f\x14\x0a\x3e\x46\x63\x2f\x34\x70\xe1\x3e\xec\xc2\x59\xd8\x18\x80\x36\x4a\xe0\x8b\x83\xb3\xa3\x8b\x77\xc7\x17\xef\x4e\x5f\xe5\x81\xac\xe6\x5e\x22\xe2\x22\xe9\xf0\x9e\x97\x69\xb8\xe5\x37\xf1\xe3\xf9\xf9\xdb\x8b\xb7\xa7\x27\xe7\x27\x87\x27\x45\x23\x85\xaf\x4c\xa7\x03\x48\x94\x80\x39\x74\xa1\xd1\x7e\xd4\xe6\x5d\x92\x8d\x75\x72\x86\x6b\x29\x67\xbb\xfd\xb0\x1f\xd4\x1b\x7d\x7d\xf0\xcf\x8b\xc3\x93\x37\x6f\x8e\x0e\xcf\x8f\x4f\xde\x9c\x05\x03\x17\x1d\x30\xa2\xa0\xb9\x77\x7d\xc1\x56\x84\xa4\xe7\x85\xd6\xe7\x7a\x2f\x80\x83\xc6\x0f\x3f\xaf\xf8\x20\x66\xf1\x5d\x00\xed\x7c\xf2\x40\xb7\x76\x7a\xdf\xa9\xfd\x89\x6b\x50\x98\x2f\x33\x0d\x3d\xae\xc0\x2e\x79\x4c\x6e\x48\xca\x66\x9a\x4f\x30\xe1\xc3\x84\xc4\x57\x8a\xee\x98\x5f\x63\x76\x43\xb4\x4b\x8b\xf9\xa9\xf0\xb3\xce\xbd\x9d\x1f\x4a\xc0\x23\xa6\xc4\x02\x12\xcf\xc7\x65\x27\xec\xdc\x63\x54\x02\x8a\xf6\x20\xc2\x11\x57\xe2\x31\x8b\xf8\xb0\x3f\xaa\xe6\xaf\xb3\x2b\x77\x70\xf8\xea\xec\xe2\xe8\xcd\xc1\x8b\x57\x47\xc1\x80\x84\xf5\xb7\x2f\xa3\x9d\x1d\x9d\xe1\x52\xc7\xc1\x07\x86\xd4\x01\x06\xcb\x92\x54\x29\xb0\x9c\x6d\xe4\xcd\xd9\xdb\x83\xc3\xa3\x86\xd6\xcb\x1f\x1e\xde\xc1\xd9\xd9\x49\xbd\xf1\xe2\xe5\xfd\x1a\x76\x5b\x4b\x86\x78\x14\xb1\xe2\xd6\x12\xa2\x45\x06\xe1\x90\x8c\x1c\x89\xe4\x8a\xe1\xcd\x2d\x10\xc8\xa8\xe6\x1b\x65\x9c\x33\x9a\x4f\xda\xbb\xe3\x8b\x97\xc7\x67\x6a\x74\x79\x5c\x4e\xbb\xd1\xf5\x02\x07\x6f\x0e\x7f\x3c\x39\xbd\x38\x3b\x7a\x65\x40\xdf\x9d\xaa\xa6\x59\x09\xa0\xe8\x75\xaf\x3a\xb7\xe5\x32\x76\x61\x2f\xd7\x44\x04\x75\xe0\x6c\x1a\xa9\xd5\x28\x61\x87\x35\x67\x7e\xf3\xc9\xb5\xfd\xc4\xba\x9f\xb1\xc9\x1a\x53\x39\x52\xb1\xb9\x9e\xdb\xc4\x6d\x37\xa8\x28\x3f\xb9\x25\x4c\x32\x01\x56\x93\x9c\x63\x87\x61\x50\xf0\xe6\xe1\x54\x23\xef\x5d\x10\x7e\x0b\xff\x3d\xd4\x7f\x47\xbb\x0e\x75\xf6\x1d\xfd\x19\x06\x01\x52\x02\xd3\x9a\xf9\x5d\x6b\xe5\xb8\x49\x40\xdd\x4d\x26\x9b\xf2\x4f\x37\x5d\xd3\xfd\xe6\xc2\x14\x3c\x6a\x92\xed\x42\xdc\xa2\xf5\x57\xfc\x23\x13\x02\x2c\x8a\xa0\x55\x40\xa1\x5f\xa8\x20\x66\x5f\x3d\x0d\xa8\x7e\x81\xf0\x26\x00\xd7\xc4\x10\x8f\xd3\xdd\x44\x18\x6d\x7d\x57\x10\x7e\x43\x78\xd7\x46\xd6\xf8\x92\x6f\xf4\x03\x3e\x1b\xb7\xf5\x38\xdb\x53\xfc\x3e\xa1\x57\xda\xd7\x78\xd0\xe6\xb3\xf1\xa0\x3d\xc6\xf4\x1b\xd9\x56\xac\x92\x65\xdc\xdb\x07\x87\xaf\x82\xa6\xcb\x7f\x87\xe9\x8c\x97\xbe\x49\x49\x53\x3c\x0d\x7b\xa3\xd2\x8f\x30\x26\x12\x27\x29\xec\x74\xf4\x01\xad\x7f\xc9\x4f\x2c\xd9\x70\xf7\xaf\x97\xde\xbc\x7c\xdc\x75\xfe\xf1\xe8\xe0\xe5\xd1\xe9\xd9\xc5\xd9\xff\xbc\x7e\x71\xf2\x2a\x2a\x5e\xbc\x3c\xfe\xdb\xd1\xd9\xb9\xf7\xe2\xfc\xe4\xa7\xa3\x37\xde\xef\xe3\x37\x2f\x8f\xfe\xe9\x57\x38\x38\x3f\x38\x3c\x7a\x73\x7e\x74\xea\xbd\x7c\x73\xf0\xfa\x48\x53\x55\x27\xb3\x37\x7d\x0a\xfe\xd9\x3d\x34\xf3\x55\xfc\xa3\x98\xe1\x31\x09\x5a\x8d\x0d\x17\x25\x5f\x62\x89\xc7\x44\xa7\x8f\x6f\x55\xc7\x54\x94\xd2\xa9\x07\xfd\x02\x66\x12\x45\x81\x73\xf6\x9e\xd0\x52\x67\x66\xda\x45\x89\x43\x13\x0c\xe8\x47\x2c\xae\xfd\x72\x76\xbd\x82\x8b\x0b\xb3\x2b\x17\xf3\xe4\x42\x6d\xd2\xc5\x35\xc1\x31\xe1\xe2\xe2\x22\xd8\xbc\x9f\x26\xc2\xbd\xad\xf1\xc9\xcf\x4f\x83\x4e\x27\xa7\x11\x0d\x5c\x5b\x91\xb8\xc3\x71\xdc\x83\xc0\x4b\xe2\x56\x20\x1f\x40\x86\x54\x81\xb4\x11\x86\x46\x11\x1d\xf6\xdd\x0f\x1d\x97\x47\x31\x2a\xdb\x40\xb7\x59\x0d\x6d\x16\xd3\x9d\x61\x8e\xa7\xdb\xa6\xb5\xfd\xcd\x52\x97\xaf\x4b\x71\x50\xa7\x63\x6d\x6e\x42\x8e\x96\x0d\x23\x89\x11\x56\x01\x6e\x10\x16\x30\x12\x2e\xbb\x61\xc5\x01\xf3\x0f\x85\xe4\x1f\x0a\xc9\x3f\x14\x92\x8f\xa3\x90\x04\x42\x89\xe1\x69\x94\x28\xb6\x6f\x1e\x25\x4a\x0c\xf7\xa3\xba\xcc\xdd\x2c\xb1\xde\xca\x71\x44\x40\x9a\xa3\xfe\x9c\xd9\x62\x9d\x0e\x18\x47\xc5\xf5\x2f\x43\x4a\xee\x70\xbf\xc6\x28\x18\x05\x36\xa8\x9b\x6a\x72\x1f\xe7\x5f\xe0\xc0\x45\x9f\x89\xa2\x48\x82\x39\x2c\xbe\x71\x30\x47\x63\x08\x07\xf9\x8b\xa2\xf9\x31\x0a\xa2\xa2\x79\x02\xe6\x3a\xef\x01\x1a\x8e\x9c\xea\xa7\x13\xdc\x83\xcc\xcc\xf9\x3a\x46\xea\x77\x41\x5d\x1e\x29\xee\x6a\xa3\xa8\x52\x44\x41\xa8\xf2\xeb\x88\x79\x44\x09\xff\xd0\xdf\xc7\xdd\xfe\xa0\x07\x91\x88\xfa\xcf\xc5\xf7\xd8\xb9\xcc\x74\xfb\x23\x8f\x9b\x17\x23\x9b\x60\xae\x9f\x93\xac\x8a\x56\x56\x67\x6c\xd1\x37\xf0\xd6\x40\x5f\x31\x20\x67\x12\x73\x1d\x59\x50\xb3\xdf\x9e\xf6\x6c\x3f\xb0\x31\x70\x92\x4e\x07\x24\xd1\x5e\xbd\xc4\xbf\xe9\xbf\xa9\xc9\xc2\x1a\x3d\x6b\xfa\xaa\xbe\x3d\xdb\x71\x0d\x3c\x75\x19\x64\x8b\xc3\x31\xc4\xa3\x7d\xf5\x67\x10\x04\x4e\xc5\x95\x58\xe5\x5f\x7f\x50\xc9\x50\x59\x43\xa8\x62\x20\x22\x02\x84\xaf\x5c\x6a\x97\x69\x9d\x80\x03\x11\x55\xb3\x5b\x17\xda\xdd\xa0\x38\x27\xda\xdc\x1d\x05\x81\xa7\x21\xcd\x4a\xc1\x80\x1f\x30\x98\xd2\xf9\xd5\x43\xa1\x40\x94\x9a\x7d\xe6\x25\x2b\x31\xdc\xa3\x59\xd1\x61\xcf\x29\xa9\x8a\x31\xf2\xfc\x54\x0b\x1d\x03\xdb\x8c\x33\x70\x76\x89\x5b\x1c\xea\x4d\x02\xe8\xef\xe2\x3c\x97\xb8\xc5\x07\x04\xfb\xaa\xf0\x56\x9f\x2f\xc6\x57\x25\xc8\x18\x2f\x6e\x4d\x1a\x56\xec\x35\x9e\xed\xab\x91\xbc\xc6\x33\x6b\x76\xe3\xc2\xc9\xf2\xaa\x56\xcc\x92\x1e\x93\xfa\x99\x98\xfc\xcb\x7f\xb5\x45\x2a\xcc\x08\xf5\x92\x30\x0f\x29\x96\xc9\x0d\x69\x8f\x59\x4c\x14\x09\x2b\x5c\x21\x34\xef\xd7\x6a\x0e\x13\x48\x1e\x31\x38\xa0\xaf\x56\xb7\x59\xb0\xb5\x89\x18\xf1\xd2\xcd\xd9\x18\x22\xd2\x46\x51\xe6\xa5\xa0\x96\xc5\x95\x97\x6f\x60\x81\x92\x7a\xd8\x39\x58\xe4\x27\x7a\x78\x48\x1c\xdf\xfd\xa5\xbf\x29\x36\xa1\x00\x1c\xb9\xe0\x6a\xf9\x90\x2b\x11\x2e\x01\x8e\x18\x80\xfb\xb5\x80\x78\x2b\x22\x51\x0e\xd5\x2a\x8e\x5a\xdc\x77\xa2\xe2\x8e\x11\xc5\x8a\xde\x80\x7c\xdf\x2f\x13\x1a\xe7\xb6\x27\x5e\x18\x1b\xda\xe9\x08\x80\x91\xef\x0d\x89\x70\xe6\x22\x5e\x69\x43\x47\xcf\x52\x25\x1f\x38\xfb\xbd\x05\x3a\xcc\x67\x2e\x4a\x01\x25\xc5\xa3\x06\x94\xf4\x22\x76\xac\x0a\x55\xf9\xa5\x05\xfb\xf3\x2c\xe2\xd3\x12\x22\x02\x75\x29\xb4\x8e\x3d\xbe\xd2\x20\xa3\xc2\xe6\x9b\x01\x69\x1e\x71\x0f\x71\x84\x23\x20\xa3\x14\xe9\xfb\x40\x54\xb3\x2b\xc0\x51\x02\x4a\xd1\x5d\x59\xd4\x80\x97\x5a\xa4\x21\x1c\x26\xf6\x70\x19\xb3\xe1\x30\x49\x84\xd7\x87\xc3\xa4\xce\x65\x3c\xf3\x02\x01\xa6\x9e\x82\xab\xee\xe9\xfb\xf8\x01\x87\xcd\x18\x52\x88\x00\x8d\xb0\x1f\x8d\x0c\x42\x9b\xc5\xfc\x90\xc5\x24\x22\x88\x3a\x7c\x9c\x66\x80\x03\xdd\x03\x84\x9e\x3b\x76\xba\x91\x17\xfa\x24\xea\xc4\xc3\x93\x37\xe7\x47\x6f\xce\x2f\xce\xff\xe7\xed\x51\x44\xc2\xc3\x83\xc3\x1f\x8f\x2e\xd4\xcb\xd3\x93\x57\x85\x6a\xb7\xfc\x3a\x38\xc4\xe3\x6b\xa2\x15\xa8\x9c\xa5\x41\xab\xd2\x4a\x60\x35\xab\x5d\xb5\x94\x9b\x95\xa5\x46\x80\x7d\xdc\x59\xbd\x3d\xd1\x1a\xee\x97\x47\xaf\x8e\xce\xd5\xb4\xde\xbe\x3b\x2f\x26\xa3\x7e\x04\x6f\xdf\x9d\xab\x81\xdb\x12\x81\xf9\x5f\xbd\xd1\x55\x03\xf5\x57\x0d\xbd\xb5\x76\xe8\x9c\xfc\x3c\x27\x42\xde\x33\x0a\x84\x0e\x1c\x51\x0b\xf9\xe0\x33\x79\x39\x8a\xa4\xbf\x55\x4e\x96\xff\xa6\x1d\xba\xb1\xef\xd0\x2d\xa3\xfe\x73\x59\x77\xe8\x96\xce\xa1\x9b\xd6\x1c\xba\xa5\x7f\xc5\x25\xf5\x0d\x9f\xfc\xaf\xbd\x7d\xee\x9c\xa7\xe9\x1a\x87\x6e\x1b\x18\xfc\x73\x38\x74\x53\x08\x07\xde\x98\x1e\xdd\xa1\x9b\xae\x76\xe8\x66\x9f\xd7\xa1\xbb\xca\x1a\x7d\xe1\x51\xe5\xff\x88\x08\xfe\xeb\x45\x04\x1f\x57\x23\x82\x8f\x7f\x8d\x88\xe0\xc5\x85\xb6\x2c\x29\x09\xa8\x76\xbd\x5a\x9f\x44\xff\xd7\x50\x12\xc8\x4a\x24\x72\x0b\xba\xe3\xaf\x4e\x42\x88\x7f\x37\x12\x42\xe2\x24\x84\x79\x21\x21\x50\xc4\x11\x8b\x52\x30\xf7\x18\xf2\x79\x49\xa2\xff\x7c\x2c\xf9\x1c\x22\xc0\x23\x56\xb0\xe4\x10\x86\x17\x73\x9e\x46\x12\xf1\xf0\xc2\x30\x9d\x91\x42\x9f\xee\x62\x3f\xa2\xfe\x0f\x0c\x30\x58\x64\x88\x42\xb4\xc8\xd0\xc2\xa5\xb2\x32\xa6\x51\x83\x40\x1d\xca\xc4\x44\x1f\xdd\xfd\x8f\x60\x34\xc8\x5c\x16\x2e\xad\x4e\x76\xad\x84\x97\x2c\xbe\x33\xfa\x27\x8d\xd0\xdd\xfb\x61\xb9\xbd\x51\x14\x48\xf2\xc1\x85\x07\x13\x92\x13\x3c\x0d\x20\xe2\x79\x7a\xb6\x68\xae\xc4\x0b\x1b\x0e\x3c\x17\x03\xd6\x47\xc6\xb6\xc5\xd6\x07\xc5\x26\x2e\xd7\xd2\x87\x6b\x6e\x7d\x8e\x9a\x83\xb4\xeb\xda\x59\x11\x10\x9c\x13\x31\x63\x34\x5e\xd9\xe0\x96\x91\xde\x5d\x73\x56\xcd\x5b\x6f\x4c\x63\x20\x4f\x90\xf2\x4c\x82\x8c\x97\x95\xf7\x05\xf8\x05\xab\x9f\xe1\x9a\xc9\x55\x13\x2e\x6e\x17\xf6\xbc\xb1\x29\x53\xc3\x6f\x82\x51\x4a\x0c\x64\x6e\xd8\xb0\x0f\xd7\x3c\xaf\x85\x2f\x19\x6f\x8a\x7d\xfe\x51\x96\x52\x3d\x4d\x47\xeb\x90\xe6\x62\xc7\x5b\x88\x01\xb0\x0a\x9e\x76\xc2\xbe\x38\xdb\x2a\x92\xc3\x86\xc5\x14\x8d\x93\xa9\xf4\xa3\xd0\x3b\xab\xd4\x7a\x2e\x43\x93\x78\xba\xdd\x1f\xc8\x50\x4f\x57\xdf\x07\x64\x23\xd8\xe9\x08\xe0\x23\x28\x0a\x11\xd7\xef\x10\x87\x68\x9e\x81\x52\x3e\x5e\x87\x82\xe3\x8d\x62\xa6\x19\xfd\xe3\x8a\x99\xc7\x6f\xce\x8f\x4e\xdf\x1c\xbc\xba\x38\x3b\x3a\xfd\xc7\xd1\xe9\xc5\xd1\xe9\xe9\xc9\x69\x44\xc2\xbf\x9e\x9c\xbe\x38\x7e\xf9\x52\x5b\x55\xbd\x7b\x73\xf0\xee\xfc\xc7\x93\xd3\xe3\x7f\x1d\xbd\x8c\x48\x78\xf2\x53\x21\x88\x9e\xfc\x14\xed\xf5\xd4\x43\xa9\xcc\xb3\x5e\xbf\xe5\x37\xf1\xac\xf7\xb4\xb5\xaa\xab\xef\x7a\xbd\x8d\x13\xff\x70\xbd\xed\x05\xca\xa7\xb5\x44\xa9\xda\xbc\xfc\x46\x65\x3f\x7e\x1f\xd9\x8f\x6f\x2b\xfb\xb9\x18\x8d\x80\xaf\x91\xfd\x8c\xae\x9d\x7f\x0e\xd9\x8f\x43\x38\xf0\xc6\xf4\xe8\xb2\x1f\x5f\x2d\xfb\xd5\x72\x66\x7d\x0d\xc1\xbc\x1a\x2e\xd3\x8b\xb4\x01\xe4\x16\xd0\xe5\xf2\x9f\xaf\x5f\xfd\x28\xe5\xec\xd4\xe8\x94\x60\x8b\x85\x8c\x6a\xa4\xa9\x30\x17\x31\xe1\x34\x2a\x32\xd7\xb3\x55\xc9\x5e\x74\x6c\x05\xeb\xbf\x7b\x90\xa6\xa7\x9a\x5a\x0b\xf2\xa3\xc3\xf0\xc5\xd5\x6d\x00\x0d\xce\x2e\x10\xfc\x0f\x0a\x29\x59\xa7\x70\xf3\xe6\xfb\x67\xbd\x5e\x1e\xa2\x42\xa1\xfb\x1b\xc2\xa5\x66\x63\x14\x31\x69\x6b\x06\x68\xe4\x32\xd6\x9a\x9e\x60\x0b\x87\x62\x3e\x1e\x13\x21\x74\xfa\x79\xaf\x35\xff\xf9\x9c\x7c\x90\x56\xd6\xc1\x36\x1e\xbc\x44\xa5\x86\x54\x89\x75\xb5\xcd\x6f\x93\xcd\xaf\x85\xb5\xd7\x6e\x4a\x24\xf1\x27\xa4\x88\xb1\x4d\xb0\x82\x43\xc3\xf8\x21\x1c\xce\x79\xaa\x4e\x12\xf2\x3c\xfc\x2d\x01\xec\x74\x40\xfe\x1c\x2d\x32\x67\x01\xc0\x01\x57\x1c\x61\xfe\xc9\x72\x86\xff\xec\xda\x1d\x23\x71\xf7\xff\x26\xf2\x3a\x18\x04\xe5\x9d\x0c\xb2\x5c\xd8\xa9\xd8\xc9\x89\xa6\x63\x43\x72\x59\x12\xe1\x08\xf0\x68\x0f\x6d\x6f\x1a\x47\xa3\x4d\xc6\x71\xf7\x0b\x81\xb5\xf8\x6d\xdb\xc4\x65\x1a\x87\x97\x16\x8c\xba\x98\xcd\x6b\xad\xe1\xa4\x2e\xf9\x20\x6b\x38\x6b\x22\x71\x7f\x9b\x38\xd4\x64\x10\xb7\x5f\xb2\x84\x1b\x3c\x82\x19\xdc\xbe\x99\x9b\xbd\x81\xaf\x2f\xd1\x57\x61\x07\x07\x91\x88\xb0\x09\xd4\x82\x87\xfd\x9c\x07\x61\xa1\x20\xd2\x9e\x4a\x83\x0a\x81\x30\x79\xe6\x11\x0e\x2f\xc9\x84\x71\x72\x46\x68\x0c\x18\x44\xaa\x28\x8d\x01\xd6\x12\x1c\x44\x6c\xbd\xa9\x4a\x22\xfe\xca\xaa\x91\x91\xbe\x40\x4f\x89\x3c\xc9\xf5\x6e\x60\xc4\x2a\x0d\x97\xdd\xfe\xfa\x58\x03\xef\xc9\xdd\x39\x3b\x30\xb9\xad\xbf\xec\xd8\xbf\xbb\x41\x91\x80\x38\x8a\xe4\x7e\x10\x0c\x88\x23\x75\x1b\x92\xe6\xa7\x64\x22\xbb\x92\x27\xd3\x2f\x7d\x0b\x1f\x1e\x7e\x2a\xdf\x7e\xa3\xd6\xcb\xcd\x62\x24\xdc\x27\xa1\x98\x5f\x0a\xc9\x81\x53\x65\xc3\x01\x59\xbb\x5c\x53\x7c\x77\x49\xba\x0a\xbf\x7d\x8e\x80\x95\xab\x9d\xa8\x64\x35\x4f\x9d\xf4\x53\xa9\x12\x00\x11\xdd\x98\xa8\x77\x9a\xd0\x64\x9a\xfc\x42\x5e\xb3\x98\x7c\xf2\xe9\xac\xa7\xe0\xf7\xc8\x1b\xff\x86\xdc\x6a\xa7\xf4\x55\x3e\xec\x8b\xe3\x97\x83\x52\x95\xe3\x97\x01\x44\x3a\x8e\x57\xe9\xb5\x7a\x13\xe8\xb3\xb1\x76\x91\x14\x3e\x56\x88\xfd\xae\xab\x63\xbc\x7d\xea\x45\x5a\xe9\xa0\xd5\xce\xc5\xd3\x40\xeb\x2d\xf6\x17\x59\xcd\x74\xe8\x53\x0a\x04\x9e\xda\x7a\x91\x99\x54\xf3\x6b\xd7\xcd\x06\x99\x8f\xcf\x93\x29\x61\xf3\x4f\xbd\x72\x8f\x93\x0d\xfc\xe1\x28\x46\x10\x69\x27\x5a\xd3\xf3\xd2\x95\xd1\x8c\xb7\x6b\xda\xbf\x9a\xc9\x0d\x40\xaa\x59\xc1\x75\x36\x21\x50\x8a\x86\x09\x28\xcc\x20\xa2\x5b\x24\xec\x36\x41\xc1\xba\x0a\xc0\x3e\x1b\x80\x97\xb5\x1f\x75\xaf\x19\x5f\xce\xb5\x97\x04\x64\x48\x47\x9d\x0e\x90\x4e\xc1\x02\x91\x74\x9e\x58\xeb\x26\x97\x5c\x5d\xff\xf6\x09\x9c\x09\xf4\x6f\xa2\x52\x38\x52\xa6\xa4\x5b\xfa\x43\xd4\x2b\x90\x6c\x8a\x85\x3c\xce\x89\x5f\x14\x45\xb4\x20\x80\x3d\xc5\xfb\x92\xe2\x94\xaf\x5d\x53\x36\x97\x09\xbd\xda\xe5\x24\x4e\x38\x19\xcb\xae\x64\xbf\x0a\x66\x2c\xd2\xc5\x86\x6a\x48\x26\x50\xb3\x15\xf0\x43\x3f\x96\x46\xdf\x59\x60\x87\x01\x74\x79\x2f\x67\x29\x1e\x13\x25\xb7\x7a\x0e\x19\x14\xe9\x7a\xce\xd0\x1c\x6e\xc4\x72\x6e\x25\x24\xc7\x54\x24\x6a\x5c\x0a\x6f\xfe\x11\xe9\xf9\xf7\xe4\x2e\xf5\x47\xa4\xe7\x4f\xe9\x7f\xf9\x51\x82\xd1\x22\x6b\x8a\xf9\xb4\x57\x0e\xb0\x64\xb5\x3a\xce\xb4\x5e\x87\xcf\xa1\x2e\x6b\x4a\xa0\x11\xcb\xc0\xbb\xf6\x0c\x6c\x80\x3b\xa6\x44\x6d\xbd\x88\x28\x71\x31\xe5\x59\x94\x84\x33\xcc\x09\x95\xcf\xa1\x88\x44\x1e\xd9\x18\x30\x24\x75\xe4\x64\x56\x44\xef\xe3\xe4\x86\x70\xa1\x38\x75\x0e\x88\x06\xe7\xe5\xd2\xbf\x5e\x0d\x90\x50\xf0\x55\x0d\x48\x4d\x4c\x40\xe0\xaa\xe7\x1a\x0f\xa9\xf6\x32\x57\x07\x47\x48\xcc\xa5\x30\xa8\x2d\x1e\x87\xda\xe7\x87\x44\x81\x29\x10\x06\x1e\x7a\xa3\xd1\xd0\x55\x1c\xe5\x38\x10\x42\x34\x2c\x7e\xea\x17\x19\xc2\x8f\xb9\x29\xb9\xb0\x1a\x6a\xa7\x68\xed\x22\xbf\x5c\x0e\x47\x55\x9e\x9e\xd6\xe7\xa9\xa8\xff\xbe\xfa\x33\xb0\x95\xc5\x90\x8e\x32\x9d\xcd\xda\x2e\xe7\x56\xf8\xfa\x16\xa7\xef\x3f\x3f\xc9\x82\x8b\x52\x32\xee\x21\x19\xc1\x2c\x43\x24\x54\xa3\xf1\x6d\x29\x8a\x56\x4c\x80\x1b\x2f\x2d\x7a\x39\x5f\x70\x83\x16\x95\x1b\x8a\x70\xc1\x66\x52\xc7\x9d\x56\xb0\x61\x2d\x72\x10\x8b\xe4\x90\x8f\x42\xf7\xad\xdc\xd8\x90\x8f\xa0\xef\x02\x8f\x7d\xd6\x86\x94\xc6\xad\xca\x8e\x34\x77\x69\xe8\x2e\xe0\x88\xe9\x58\x1b\xd0\xd3\x2a\xcb\xfc\xfa\xdf\x3e\x45\x0b\xd7\xf1\x60\x31\xc3\xf2\x7a\x10\x04\x59\x06\xb3\x96\x9d\xbf\xdc\x6a\xdf\x92\x34\x1e\x63\xfe\xc8\x46\xb3\xf7\x62\x37\x76\xfa\x5a\x01\x4c\x23\xed\x41\xe7\x8b\x94\x12\xe6\x4b\x1b\xaa\x09\x16\xfe\x37\xdf\x06\x2e\x7f\x15\x87\x0b\x4f\x0d\xbb\x6e\xca\x82\x60\x3e\xbe\xde\x35\x82\xf1\x06\xae\xe2\x0b\xe0\x5f\x9b\x13\x72\x3d\x9c\xa7\xb5\x22\x59\x93\x38\x95\xf3\xb3\x26\xdb\x97\x9d\x57\x10\xa0\x0b\x6d\x5e\x31\x1c\xad\x8a\x89\x9d\x47\x2b\x35\x3c\xa3\x2e\x9e\x07\x9c\x9d\x24\x34\x7e\x34\x8b\x83\xe1\xa8\x1a\xc0\x78\x4e\xa2\x75\x5a\x8e\x3a\x47\xd5\xe9\x6c\x1f\xae\x4f\xc1\x91\x0c\x39\x11\x2c\xbd\xb1\x37\x40\x26\x06\x73\x73\x10\x8c\x2d\xb4\x2e\x9a\x3f\x58\x08\x9d\x04\x47\x7b\x5b\x16\x2b\x66\x02\xf9\x2a\xe0\x6c\x0e\x9d\xdb\xb4\xe7\x0f\x5a\x35\x1d\xe8\xaf\x1a\x3f\x7d\x5f\x0e\x86\x72\x04\x57\xab\xbf\x88\xdd\x61\xa4\x17\xe7\xea\x8a\x70\x10\x98\x3b\xc4\x00\xb9\x94\x3f\xce\xda\xcb\xae\x92\x91\x0d\xfe\x4d\x03\x68\x0c\x74\xa4\xb6\xf4\xd2\x8b\xaa\x40\x63\x53\xac\x0f\x61\x22\x20\xee\xea\x70\x88\x5d\xfb\xeb\xcb\x3e\xad\x1f\x23\x6d\xda\x2c\x92\x7e\xf0\xc7\x46\x2e\x6b\xab\xe8\x96\x3a\xbe\x9a\x81\xfd\x64\x72\xd7\x14\x65\xf3\x69\x63\x3b\x4f\xfd\x76\x9e\xda\x76\x74\x9c\xb6\xa6\x48\x9b\xcf\x1a\xdb\x78\xe6\xb7\xf1\x6c\x54\xc2\x18\x76\x92\x65\x53\x27\xc5\xfa\xda\x19\x9b\x17\x41\xbe\xd9\xda\x7a\x89\xe8\x58\x99\xcc\x0b\x20\x40\x90\x17\x62\x66\xe1\xf2\x93\x34\xe4\x84\x94\x79\xfc\x4c\x2f\xfa\x80\x27\x89\xc2\x96\xc3\x10\x85\x7b\x6b\xa7\x03\x68\xf4\x4d\x10\x7c\x03\x2d\x45\xe2\x80\x3a\x3a\x83\xe1\x82\x46\x41\x50\xd0\x1a\x1b\x7b\xbb\xd4\x39\xe2\xbe\x53\x29\x2f\x85\xf5\x36\x4a\x21\x97\x2c\xd5\xd8\x18\x47\x8a\xbd\xb0\x1d\x24\x70\xc1\x75\xe7\x99\x4d\x12\x12\x8a\xb5\x13\x40\x3c\xbf\x0c\xc6\xab\xe6\x88\x84\x4b\x0d\xb9\x7a\x99\xcc\xf7\xb5\x2b\xb5\xb1\x1b\x9a\x21\x9c\xa6\xcd\xd8\xab\xd5\xa0\xa0\x92\xab\x14\x54\xc9\x04\xf4\x74\xca\xa8\x9c\xd2\x7b\x3d\xc2\xdc\xd2\xc5\xe9\x58\x58\x2e\x52\x29\x0e\x2a\xf2\x12\xd6\x14\x06\x35\xb9\x4e\x6b\x2d\xca\x51\x62\x64\x8a\x65\xf2\xcb\x17\x8e\x67\x0a\x8c\x4e\x56\x11\xb1\xc0\xce\x85\x74\x3d\xc9\x64\x93\x56\x5e\x26\xe3\xf7\x84\xef\xea\x65\xff\xc3\x09\xe9\x61\x4e\x48\x9e\x6f\x32\x8f\x9a\x54\x48\xd6\x54\xbf\xd3\x71\x36\xfb\x57\x44\xee\x7b\xcf\x2b\x5c\x97\x2b\x0b\xab\xe4\xe2\x9d\x9a\x26\xe8\x1a\x0b\xcf\xfe\xc9\xea\x83\x90\x84\xb9\x49\x38\x20\x51\xac\x0e\xeb\x73\xf8\xdc\x33\x98\x47\x25\x37\x4b\xdc\x6c\x0e\x57\xb1\xa6\xca\xf1\x81\x1e\xbf\xfe\xeb\x3c\xe4\x07\x36\x0f\x45\x66\xbc\x3d\x10\x5d\x2e\x6b\x2e\xdc\x8f\x6d\xa4\x9d\xb7\xce\xbe\x0a\x97\x1a\x51\x35\x3a\xeb\x74\x58\xc9\x7f\x5e\x42\x44\xf5\x3b\x44\xa1\xef\x31\x94\xfc\x06\x4d\xff\xd3\xba\x4f\x90\xe7\x6f\x94\x3e\xaa\xbf\xd1\xfc\x0f\x7f\xa3\xb5\xfe\x46\x71\xd5\xdf\x28\xfe\x94\xfe\x46\xe3\x06\x7f\xa3\xf1\xd7\xed\x6f\x14\x7b\x94\x2e\xfe\xb2\xfd\x8d\xce\x6f\x09\xa1\x11\x09\xcf\x35\xd9\xf7\x55\x65\x93\xb2\x89\x01\xa0\xb9\x4f\x4e\x34\x07\xd4\xf3\xc6\x29\xbc\xf5\x1b\x64\x8c\xed\x98\x99\x3e\x79\xba\xfb\xa7\x5e\xc1\x5e\x5a\x88\x40\x80\x44\xb2\xe4\x6d\x23\x88\x3c\x55\x58\x87\x2b\x84\xe8\x14\xbe\x80\x22\xeb\xc7\xa2\x98\x97\x7b\xf9\x56\x98\x0a\x56\x76\xd5\x22\x69\xe1\x66\x61\xfb\x6a\x72\x21\x29\x3c\x15\x5a\x3a\x63\xd0\x31\x95\x84\xdf\x60\x33\xcc\xf0\x22\xb1\x3f\x9d\x6c\xef\x7e\x47\x8a\x91\x77\x45\x9b\x72\xbe\x84\x6a\x3c\x00\xaa\x9d\x29\xc6\xa1\x8d\xde\xd8\x5d\xc3\xbc\xd6\xf6\x9d\x65\x23\xc5\x8f\x7b\xbe\x0d\x68\xba\xfd\x96\x92\x8a\x73\x95\xb7\x27\xbc\xbe\x27\x0a\x7a\x14\x3e\xd7\xd2\x88\xbf\x2f\x3a\x14\xca\x70\xd3\x3c\x72\x08\xc9\x13\xd6\x18\x70\xfc\x1b\x67\xf3\x99\x36\xec\xac\xbf\x0e\x6d\x73\x40\xb1\xb2\x29\x91\xa4\xdd\x54\xca\xac\xc2\x96\x10\x72\x21\xed\x34\xdc\x36\x78\x90\xe0\x66\xb8\x01\x1a\xca\xed\x44\xc4\x53\xda\x96\x7b\xb8\x22\x76\x98\x9d\x0e\x58\xf5\xa9\x21\x1e\xab\x74\xfa\x22\x55\xba\xda\xa6\x7a\x30\x29\x89\xca\x1f\x8a\x89\x5c\xad\x99\x48\xc5\x75\xc8\x55\xce\xeb\x26\xe2\x20\x4d\x6e\x36\xd6\xb3\xc5\x8a\xb5\x93\xb8\xd1\xed\xa8\x54\x5a\xb1\x55\xce\xb6\xdc\xdb\x3d\x00\x75\x06\x28\x75\x60\x5f\x25\x42\x12\x4a\x14\xc2\x36\x47\xd6\x2d\xc2\x3a\x27\x2c\xdb\xf7\x8a\xe3\x2d\xd9\x6c\xf3\xb8\xfa\x2b\xc6\x65\x84\xe5\x8f\x19\x9a\xea\xbd\x79\x64\x78\x2c\x93\x1b\x72\xc8\xe6\xb4\x69\xe1\xfc\xd5\xae\x2f\x57\x51\xb5\x0e\xbf\xb6\xd8\x6a\x8f\xbd\x2b\xf5\x39\x22\x55\x70\x59\x55\xaf\x72\x87\x94\x03\xf9\x95\x3d\xb6\xf9\xeb\x7b\x1c\x6b\x7d\x09\x7a\xed\x10\xa7\x19\x50\xe3\xc1\xf6\x4b\xd4\x51\x5d\x2b\xa7\x68\x53\x8d\xe0\x66\xd1\x82\x60\x41\x4e\xe6\x55\xd1\xca\xbb\xf1\x23\xbb\x11\x47\xf4\x5b\xd0\xed\x92\x6f\xc9\xb7\xe4\x49\x1f\x3e\x91\x59\x86\xae\xa3\x09\xba\xbc\x07\xe2\x44\x2e\x52\x0d\x12\x0f\x55\xdd\xf5\xf7\x50\xf2\x50\x75\xdd\x2c\xb4\x13\x6d\xc0\xdc\xac\x8e\xb9\x5f\xeb\x2b\x6c\x90\x18\xf3\x64\xc5\x55\xcc\x84\xa2\xae\xfa\x97\xb9\x69\x50\x48\x5d\xff\xfc\x2b\xc7\x53\xed\x62\x80\x98\xc1\x3f\x2c\x9c\x30\x7e\x8b\x79\x2c\x10\xbb\x3f\xd6\x9f\x16\x28\x3c\x87\x38\xc9\xea\xd0\x89\x74\x98\xa0\x46\xfb\xa6\xc6\x7b\x3a\x0a\x17\x4a\xae\xeb\xea\x5b\xf3\x0c\x42\xa4\x40\xaa\x68\x27\x9c\xa5\x58\x77\x59\x26\x0c\x8a\xc7\x1a\x13\xd1\xe4\x03\xeb\xa9\xb0\x4a\x9d\x6b\x00\x9c\xa9\x15\x5b\xe1\xab\x64\xb3\xa2\x3b\xd7\x60\x40\xc2\x8b\xf1\x9c\x73\x42\xe5\x44\x2d\x25\x22\x8a\x5c\x6b\x6e\x53\xfb\xe3\x0c\xe5\x48\xbd\xd2\x2d\xda\x67\xc9\x24\x4e\x75\x61\x01\x5b\x45\x46\x47\xf5\xc5\xde\x02\x29\xc6\x19\x16\x0b\xe8\x36\x64\x25\x66\xf3\x07\xf0\xbd\xa3\x20\x45\x2f\xfb\xc5\xb4\xb4\xa3\x8d\x3b\x67\x7e\xb5\x27\x91\x63\x35\xc6\x5c\xe7\xf3\x81\x03\x50\x2f\x55\x6f\xbb\x82\x4a\x01\x0c\x15\x16\x04\xde\xe8\x2f\xf1\xf8\xfd\xf6\xc3\xef\x56\xc7\xd1\x30\xd6\x1f\xa2\xde\x7e\x65\x46\x76\xb0\x7c\x6e\x0d\x9c\x72\x18\x6e\x98\x43\x15\xfd\x37\x8c\xf9\x8a\x49\x76\x40\xe3\xb7\x29\x6e\x64\x6d\x6a\xea\xcf\x0a\xb2\xf4\x01\x20\xe7\x05\xfc\x97\xd1\x22\x43\xf7\x03\xbb\x3a\x58\x45\x39\xc0\x0c\xe5\x48\x8b\x85\x1c\xc4\xa0\x14\xbe\xae\x3c\x0f\x23\xef\x35\xca\x6d\x25\xaa\xa2\xdb\x5c\x4d\x50\x6c\xfa\xd6\x32\x45\x69\xae\x53\x65\x3f\x74\x29\xbf\x2f\x8d\x9a\x9a\xba\x2a\xd5\xd3\xeb\xe2\x6e\x1e\xbd\xda\xaf\x6d\x44\xa8\x55\x23\x75\xce\xfb\x8e\x94\x78\xe3\xf2\x2c\x06\xe0\x02\xbb\x00\x61\x6b\xa0\x45\x73\xf9\x16\x24\x41\x1f\x16\x98\x91\x38\x64\x93\x88\x03\x79\xb6\x82\x31\x2a\x4d\xa7\x7c\x5a\xfb\x3e\x33\x26\x8f\x1a\x7c\xe5\xd7\x54\xff\xa1\x7e\x20\x0b\x8e\xa3\xc2\x65\xad\x02\xe4\xc2\x17\xa2\x7a\x2c\xea\x9c\x5a\x53\xce\xce\xc2\xd5\xbf\xc6\x3d\x3d\xa4\xcb\x86\x66\xd6\xf5\xba\x82\xe3\x2b\x31\x54\xe6\x10\x9c\xa9\x33\x5e\x5f\xc2\xa2\xa9\x59\xf3\x69\x6f\x68\x4a\x9d\xa7\xb5\x4d\xad\x62\x90\x1f\xd2\x96\x37\xfc\xd5\xa0\x5e\x02\xd9\x92\xd7\xbd\xb7\xb8\xf9\x75\x71\x68\x59\x61\x00\x3b\x1d\x69\x91\x5f\xf9\x74\xad\x43\x80\x1f\xdd\xe9\x72\x29\x8d\xd5\x55\xad\x57\x57\x6d\x6b\xb6\x54\xd6\xe5\x2d\x62\x8c\xee\xa6\x96\x21\x42\xfe\x17\x1f\x7b\x18\xce\x67\x23\xf2\xf1\x8e\x56\x03\x0a\xca\x71\xc2\xc6\x76\x72\x82\x96\xb7\x32\x82\x88\x64\x40\x07\xf7\x33\x1a\x9b\xcb\xf5\x77\x38\x32\x25\x95\x1b\xac\x3c\x87\x7e\x9a\x74\xcd\x7d\x67\xd7\xe5\x68\xaa\x54\xaa\xdd\xe0\xdc\x5b\xad\xb4\xb2\x82\x65\xcf\x03\xb4\x28\xbb\x49\x5c\x35\x25\x9e\x2e\xb2\xd9\x66\xda\x54\x62\xf5\x74\xd9\x94\x5d\x71\x3c\xbb\xfe\x0c\xde\x64\x35\xe3\xa5\xe2\x76\xe6\x2f\xee\x1f\xc2\x51\xb7\xf8\xc1\xa2\xe1\xa8\x45\x1b\x28\xb5\x30\xc1\x7a\xa3\x48\x84\x6f\x58\x4c\x5c\x2a\x0b\x11\x9e\x91\x2b\xb5\xf9\x8d\x95\x8c\xde\xdf\xd4\xd8\x89\xa4\xfe\x5f\x1d\x4c\x5b\x27\x8a\x92\x9c\xed\x04\x02\x69\x97\x6f\xed\x14\xbb\xa0\x2c\x26\x03\x53\x1e\xc5\x89\xb9\x6f\x19\x50\x24\x4c\xbd\x41\x92\x41\x44\xbf\x37\xe6\xc0\x14\x22\xfa\x03\xd6\x86\x6a\xd4\x5c\x16\xb2\x50\x30\x2e\x57\x1a\xbb\xb8\xf6\xba\x32\x7f\xb4\xd7\x8c\x2d\xe7\xc9\xeb\x2e\x68\x51\x1a\xbd\xc6\xf2\x3a\x9c\xa4\x8c\x71\x90\xec\xee\xe5\x87\x3e\xf9\xa1\xb7\x2f\xa2\xe4\xbf\xf6\xf6\xd9\x30\x1d\xe5\x0d\x0d\x00\x1b\xa6\xdd\x7e\xf1\xe2\x49\xe9\x33\xdc\xdd\x1b\x00\xa1\xcd\x67\x7b\x08\x47\x3d\x88\x16\xee\x93\x18\x30\x34\x4d\xe8\x40\xdb\x2e\x1c\x2b\x52\xdc\xeb\x7d\xcb\xe1\x6e\xbf\xd7\x43\x53\x12\x27\xb8\xf2\x49\xd8\x4f\xf8\x43\xf9\x3d\xd6\xef\x37\x5c\x1b\xcf\xc7\x93\x84\x8b\xcf\xe6\xc6\xe4\xd9\x41\x14\x6e\x06\x7d\x18\x4a\xf6\x6e\x36\xcb\x33\xe7\xd5\xca\xf4\x37\x5c\xfe\xce\x67\x31\x96\xc4\x58\x41\x77\xad\xca\xfd\x93\x3b\xe3\x59\x21\x3c\xca\xd1\x35\xdf\x2f\x6c\xff\xd4\xf9\x1a\x70\x1b\x9b\x99\x68\xc3\x25\xed\x67\xd1\x68\x59\xe5\x9b\x0c\x52\xa8\x5a\xca\x20\x7c\xae\xad\x09\x15\x38\x4b\xff\xa2\xd1\x94\x35\x53\xd0\xb7\x30\x9d\x4e\x21\x5f\x49\xe4\xc2\xd5\x04\x88\x84\x66\x21\x0e\x24\xc0\x3a\xf1\xa7\x75\x70\x00\x18\xf5\xd1\x50\x8e\x0a\xb3\x08\xb9\x62\x6d\x6d\x82\xf4\x84\x51\xb1\x8b\xc7\x69\x23\x56\xd6\x66\x54\x82\xc8\xae\x5f\xf8\x26\xcf\xe8\xfe\x08\x48\xb9\x31\xb6\x18\x8d\x16\xda\x7f\x6f\x08\x7a\x48\xe6\x99\xdc\xdf\x72\x22\x88\x3a\x5c\x60\xa7\x07\x51\xe9\xd3\x2b\x63\x66\x01\x16\xea\x64\xf5\x33\x38\x42\xe7\x77\x33\x32\x58\x5d\x3d\xf3\x22\xea\xd0\xcd\xeb\x93\xe8\x55\xd7\x46\xda\x5f\xd4\x2a\x9d\xe9\x1c\xb9\x1f\xbb\x56\x2f\x89\x90\x09\xd5\xe3\xfe\xd8\xa6\x0e\xf4\x2c\x1f\x6f\xe1\xdf\xdf\x7c\x61\x2b\xfe\x13\xb9\xfb\x88\xf5\xb9\xe7\xec\x8d\xa5\xfe\x17\xb6\x02\x1a\x44\x4a\xd3\xfc\x2b\xe3\x53\x2c\x21\x58\x70\x72\x45\x3e\x0c\x76\xff\x77\x88\xbb\xbf\x1c\x74\xff\xd5\xeb\xfe\x65\x04\x8a\xe7\xee\x68\xd1\x43\x7f\xda\xcb\xbc\xaf\x70\xff\xff\xec\x66\xf7\x85\x89\x19\x4b\x93\xf1\xdd\x57\xb8\x2a\x07\xdd\x7f\xe1\xee\x2f\xbd\xee\x5f\xfe\xdd\xbd\x18\x2d\xfa\xa8\xbf\xf7\xe7\xec\x01\xf3\xe7\x2c\xfd\x1a\x61\xa2\x3a\xfb\xbd\xef\xfe\xd4\x38\xfb\x86\x40\xd4\xfe\x7c\xa4\x4e\x77\xf8\x49\xc8\x7f\x1e\xae\xcc\xbd\x58\xac\x20\x9d\xc6\x58\x64\xd7\xcb\x40\x1d\x54\xad\x1c\x24\xbf\xb3\x5a\xb6\x0d\xf5\x64\xe4\x12\xbe\x87\x3a\x6f\xe0\x19\x49\xc9\x58\x32\x0e\xbe\x99\x12\x89\x87\x54\x49\xa6\xc1\x37\x4f\xc8\x93\x6f\x82\xd1\x37\x50\x87\x39\x92\x92\x27\x97\x73\x69\x86\xa4\xd9\x01\x88\x68\xb4\x70\xe9\x7e\xbd\x14\xc6\x31\x19\xb3\x98\xbc\x3b\x3d\x3e\x64\xd3\x19\xa3\x84\x4a\x9d\x4b\xa7\x62\xf3\x58\x59\x2b\xba\x7a\xad\x68\xe1\xd5\x50\xd8\x2e\x18\x93\x85\x6f\x0e\xd9\x3c\x8d\xdb\x94\xc9\xb6\x76\x74\x33\x73\x6d\x4f\x38\x9b\xb6\xd5\x4c\xda\x12\x5f\xb5\x6f\x13\x79\xdd\x56\x53\x6a\xdb\x29\x85\xdf\x18\xd6\x8f\xcf\x29\x4d\xe8\xd5\x39\x11\x52\x2c\x97\x9c\xfc\x3c\x4f\x78\x69\xc9\xf1\x6c\x16\x40\xb7\x31\xce\xca\x67\xa1\x9a\x1a\x14\xa5\x02\x74\x43\xb8\x50\x04\x28\xd8\x0b\xf7\xc2\xde\x93\x1e\xf9\xd3\x9f\xc7\x7f\x99\x4c\x82\x0c\xb6\xfe\x5f\x00\x00\x00\xff\xff\x8c\xf1\x0f\x73\xd8\x13\x0d\x00") +var _web_uiAssetsConsulUi791d914f251adffbcdf4d48ff3466279Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\xfd\x7a\xdb\x36\xb6\x28\x0e\xff\x9f\xab\x60\x78\xce\xc9\x90\x53\x48\xb6\x6c\xe7\x4b\xdd\xda\xa9\xeb\xa4\x6d\xa6\xf9\xda\x71\x32\xb3\x67\xbc\x7d\xf2\xc0\x24\x24\x71\x42\x81\x2a\x00\xd9\x71\x1d\x9d\x6b\x79\xaf\xe5\xbd\xb2\xdf\x83\x0f\x92\x20\x09\x92\xa0\x24\xdb\x4a\xeb\x3c\xcf\x4c\x2d\x12\x04\x16\x16\x80\x85\xf5\xbd\xdc\x05\x45\x0e\x65\x24\x0a\x98\x7b\x2f\x44\xe3\x08\x23\xcf\x0d\x12\x4c\x17\x71\x6f\x11\xed\xc0\x10\xce\x19\x22\x74\xa7\xf7\x6f\x9a\xe0\x1e\x9c\x47\x2e\x38\x71\xd1\x97\x79\x42\x18\x75\x81\xfb\x03\x9a\x9d\x21\xd2\x0b\x21\x83\x69\xdb\x9d\xac\xe5\x29\xf0\xc6\x0b\x1c\xb0\x28\xc1\x1e\x02\xcc\xbf\x7a\x7b\xf6\x6f\x14\xb0\xbe\x1c\xe6\x1d\x49\xe6\x88\xb0\x4b\x0f\x01\xf7\xd3\x27\x44\x5f\x27\xe1\x22\x46\x2e\xb8\x3a\x87\xf1\x02\x0d\xef\xef\x2e\x7d\x50\xfb\x41\x88\xc6\x70\x11\x33\x17\x5c\x21\xbc\x98\x21\x02\xcf\x62\xfe\x09\x98\x20\x36\xcc\xc6\xf4\xaf\x08\x62\x0b\x82\x1d\xd1\x03\x6f\xbf\x5c\xfa\x4b\xdf\x07\x0d\xf3\x84\x41\x5c\x9c\xa1\xa9\xcd\x7c\x1e\x47\x01\xe4\x63\x14\x1a\xcc\x92\x10\xc5\xaa\x8b\xea\xe3\x30\x28\x23\x04\x60\x40\xfc\xab\xf4\x89\x03\x3d\xff\xea\x1c\x12\x07\x8d\x42\xef\xc4\xfd\x1f\xec\x88\x7f\xef\x3e\x7e\x70\x76\xce\x07\xbc\xd7\x9d\x20\x4e\x30\xda\x71\x81\xfb\xcc\x05\xaa\x81\x7b\xea\xdf\x53\xb3\x84\xa3\xea\xcc\xd1\x12\xa0\x65\x36\x02\x6d\x1d\x21\x44\x94\x91\xe4\xb2\x76\x0c\xda\x3a\x46\xd2\x3a\xc6\x62\x1e\x42\x86\x64\xf7\xe9\x7b\xd3\x58\x49\xeb\x58\x91\xc4\x62\xbe\xce\x4e\x84\x1d\xf4\xac\x6e\xd7\xb0\x74\x6f\x61\x50\xdc\x35\x41\x82\xc7\xd1\x64\x91\xfd\xbe\x20\x11\x53\x7f\x2f\xfd\x21\x3a\x61\xa7\x23\xac\x8f\x1b\xb7\xaf\x14\x41\x56\x73\x8c\x5b\xe7\xb8\x30\x8e\xf5\xf3\x8b\x7c\xac\x08\x8f\x93\x7c\xc1\x9a\x46\x5b\xb4\x8e\x16\xb4\x8e\x16\x47\x94\xb5\x8f\x14\xb4\x8e\x14\x4a\x92\x90\xae\xdc\xd7\xaf\x1e\x1b\xa1\x3e\x8d\xa3\x00\x79\xbb\x7e\x76\xf4\xc7\x04\xa1\xdf\x91\x67\x5a\xd2\x08\x51\x0f\x81\x2b\x02\x2f\x86\x6a\x5d\x8b\xdf\x30\x7f\xb9\xf4\xfd\x65\x67\xa2\x83\x52\x6a\x31\x3a\x4f\xa2\xd0\xd9\xbd\xc7\x11\x32\x1b\x65\x44\xa4\x8f\xbe\x30\x84\x43\xef\x8a\xa0\xdf\x16\x88\xb2\x9f\x12\xf2\x5f\x0b\x44\x2e\x87\x45\x62\xc7\xbf\xc2\xfc\xab\x00\x90\x11\xeb\x47\x38\x44\x5f\x52\xf4\x20\x2f\xf0\x7c\x70\x15\x06\x43\xbc\x04\x57\xe2\xd5\x90\x2c\xfd\x25\x28\x75\xf9\x1e\x05\x09\x09\x2d\x3a\x06\x90\xff\x15\xde\x8b\xc6\x9e\x04\x7a\x34\x1a\x41\x9f\x4d\x49\x72\xe1\x60\x74\xe1\xbc\x20\x24\x21\x9e\xfb\xcf\x64\xe1\xcc\x16\x94\x39\x74\x8e\x82\x68\x7c\xe9\x40\xec\x44\xa1\xeb\xe7\x70\x2d\x3c\x1f\xc0\x66\xc8\x8e\xc4\xde\xae\x82\x86\x01\xcc\xd7\xda\x8b\x3d\x1f\x44\xde\xd5\x12\xb0\xfe\xf3\xc3\x0f\x87\x47\x2f\xde\x7c\x78\xf1\xfe\xd3\x7f\x7d\x7c\xf1\xfe\x9f\x9f\xde\x1d\xbe\x3f\x7c\x0d\xe0\x09\xe9\xff\xf4\xf6\xfd\x8b\x97\x3f\xbf\xf9\xf4\xeb\x8b\x7f\x9e\xfa\x00\x17\xc6\xf9\x28\xe8\x44\xdb\x38\xc9\xda\xe3\x3c\x47\x31\x32\x8d\x03\x41\xa2\x8d\x43\x3d\x1f\x24\x27\xb8\x7f\xfc\xea\xe3\xcf\xa2\x9b\x96\x51\x93\xf2\xa8\x45\x1c\x72\x4a\x5e\x1d\x92\x16\x86\x84\x1b\x18\x52\x5c\x19\xc3\xea\xad\x93\x9e\xbb\x69\x44\xfb\x64\x1e\x78\x86\x8b\x29\x85\xa3\x6f\x04\xdb\x93\xad\x96\xbe\xe9\x4e\xd3\x3e\xa5\xf3\x04\x87\xa5\x5d\x93\x7f\x4b\x00\xeb\x8b\xfb\xf1\x0d\x9c\x21\x7e\x5e\xef\xe5\xa7\x6f\xd6\x76\x55\xeb\xd7\x70\xcb\x95\x3d\x65\x6c\x5e\xe5\x47\x32\x62\x84\x6f\xf6\x22\x59\x83\x24\xa1\xfe\x9b\xe3\x77\x87\x47\x2f\xf4\x85\x1f\xa1\x9a\x1d\x91\x12\xb0\xda\xf7\x6e\x18\xb8\xf7\x8c\x5d\xba\x98\xba\x82\xf0\x11\x03\xe1\x0b\xe2\x08\x61\x36\x7c\xc1\x79\xbf\x7e\x84\xc5\x64\x28\x22\xe7\x9c\x76\xbb\xf2\xa5\xc4\xb8\x0f\x10\x3e\xaf\x69\x87\xf0\xb9\xeb\x83\x71\x42\x66\x90\xbd\xa1\x73\x18\xe8\xdb\xd4\xbf\x8a\xc6\x9e\xd8\x9c\x08\x9f\xf3\xff\x79\xee\xd1\xdb\x37\xc7\x1f\x5f\x7d\x92\xb0\x1e\x7f\x7a\xf1\xe6\xf0\xc7\x57\x2f\x9e\xbb\xbe\x2f\xd7\xcc\x75\xef\x8f\x46\xe8\x19\xe6\x27\x84\x03\x0f\x90\x3f\x94\xd3\x5f\xaa\x41\x9e\x43\x06\x03\x84\x19\x22\x85\x81\xd4\x92\xcb\x0f\xc3\x80\x7f\x58\xdc\x87\xa4\x65\x1f\x06\x49\x42\xc2\x08\x43\x86\x3a\x71\x8e\x4d\xbb\x31\xbd\x84\x8b\x0d\x2a\x97\x64\x4a\xb6\x37\x76\x57\x1a\xee\xfc\x7c\x76\x3b\x38\x09\x11\xcd\xd9\x42\xc7\xf9\xef\xde\x7b\x49\x1a\x7a\x2f\x9f\x0f\x9d\x56\xa6\x00\xd7\x31\x05\x9b\xb9\xa2\x4d\x3b\xb5\xfd\x8a\x26\xf2\x26\x85\xd9\x4d\x4a\x47\xac\xbf\x20\x51\x7e\x25\x62\x75\x55\x93\x25\xa0\xe9\x95\x08\x97\x1d\x37\x09\xdf\x58\x7f\xc0\xcd\x01\x19\x8c\x93\xc9\x4e\x98\x1d\x2d\xba\xdd\xab\xae\xdd\xae\xd8\xf3\xbb\xae\x61\x44\x83\xe4\x1c\x91\xcb\x5e\x30\x85\x51\xfb\xa5\x63\xbb\xa0\x1a\x57\xa7\x70\xf2\x19\x5d\x52\x0f\xf9\x9c\x9d\x53\x4f\x26\x88\xbd\xbd\xc0\x29\x96\x8e\x2f\x67\x67\x49\x4c\xd3\x1d\xdc\xd4\x86\x77\xc3\x1e\x3c\xf0\xc8\x88\xf4\xc7\x51\xcc\x10\xd1\xee\xfa\x9c\x01\x37\x76\xf1\x1c\xd1\x80\x44\x73\x96\x10\x01\x63\x3f\xbf\xec\x96\xbe\xef\x03\xdc\x9f\x2f\xe8\xb4\xcf\xa7\x79\xe9\x89\x0b\x3d\x5d\xf2\x9c\xcd\x27\x1c\xe7\xe3\x84\x78\x1c\x52\x36\x1a\x7c\xcf\xfe\x03\x92\xc9\x62\x86\x30\xa3\xfd\x18\xe1\x09\x9b\x7e\xcf\xbe\xfb\x2e\x9d\x09\x5e\xc4\xf1\xfd\x51\xd6\xe2\x84\x9d\x3e\xd3\x7f\x0c\xaf\x96\xf7\xd8\xff\xd9\x7b\x86\x15\x5a\x3c\xe2\x83\xfb\xbb\x7e\x7f\x9c\x90\x17\x30\x98\x16\x67\x06\xc5\x4d\x4d\x4e\xd8\x29\x17\xfa\x87\x2d\x33\xa4\xc6\xdb\x5e\x1e\x8d\xb6\x4f\x3d\xe2\xfb\x43\x0d\xa6\x1a\x80\xea\xd9\x89\x36\xec\x13\xc0\x7c\x3e\x89\x65\x76\x7e\x34\xad\xc1\xed\xc8\xc0\x74\x9b\xe8\x50\xe9\x64\x16\xd5\x17\x9d\xef\xa9\x5a\x25\xc7\x66\x28\x56\xd2\x4e\xb1\xda\xe4\x3e\x7e\x5b\x61\x0a\x92\xec\xd2\x8a\x84\xf8\x07\x62\x75\x77\xe9\x62\x60\xb4\x8a\x18\xc8\xa5\x9d\x28\x15\x03\x63\x40\x3c\x22\x24\x0f\xce\x90\xe9\x1c\x9b\x07\x7d\x1f\x5c\x65\x82\x62\xb2\x2c\x93\xd4\xa4\x85\xa4\x0a\x2e\xb1\x40\x47\xab\x0a\xc5\x1a\x35\x23\xe2\x73\x31\x7e\x40\xe5\x3b\x6a\xd6\xb7\x6d\x66\x11\xe1\xa8\xd8\x73\x4a\xc0\xca\xc4\xed\x3f\xf7\x1f\x3c\x90\x9f\xdd\x1f\x69\x74\x6d\x5f\xa7\x6b\xfb\x82\xae\xe5\x32\x53\x45\x1c\xd3\x24\xaa\x13\x37\xdf\x2a\x6e\x3f\x48\x70\x00\x99\x87\xfd\x53\x8f\x99\x84\xb1\xd2\x87\xa9\x2c\x66\xfa\x90\x93\x98\x25\xa0\xa3\x26\x61\xae\x0a\x98\x2e\x8a\x37\x81\x06\xa0\x01\xb8\xf2\xc7\x75\xe0\xc9\x8f\x25\x80\xa6\xc3\xd3\x41\x1c\x21\xf3\xc0\x20\x0c\x8b\x05\x05\xe2\x3c\xf1\x1d\x2e\x3f\xe1\x67\x8a\xff\xa2\x2c\x21\x88\x9f\xac\x69\x44\xc1\x62\x14\xf1\xae\x23\x18\x47\xbf\x23\xf2\x13\x27\xcd\xe9\xa9\x71\xd3\x7e\xdd\xd1\x88\x5d\xce\x51\x32\x76\x70\x1f\x32\x46\xa2\xb3\x05\x43\xf4\x99\x07\x47\xfa\x6f\xcf\x07\x74\xb4\xc8\x3b\xf3\x30\xb8\xe2\xd7\x14\x1d\xc1\x11\x06\x49\x2a\x74\x1b\x2f\x6b\xe4\xc5\x80\x01\x2a\xf0\xe2\xf7\x03\xc8\x0a\x37\x4d\xce\xe4\xc4\x7d\x71\x10\x3c\x24\xda\xb1\x29\xc2\xc6\x66\xcc\x5b\x00\x94\x76\xb7\x04\xe2\x9b\xb2\x2c\x86\x9c\x08\x53\x06\x71\xc0\xe7\xf5\xe1\x72\x8e\x04\x29\x51\xa4\x05\x89\x23\xc1\x00\x1c\x9d\x5c\x51\x06\xd9\x82\x0e\xdd\x6c\x11\x51\x5f\x3e\x3a\x4a\x42\xe4\x03\x16\xb1\x18\x0d\xdd\x0f\x53\xe4\x9c\xc1\xe0\x33\xc2\xa1\xa3\x16\x1e\x85\xce\x45\xc4\xa6\x9c\x16\xa9\xa3\x1d\x22\x06\xa3\x78\x88\xfa\x33\x44\x29\x9c\xa0\xe5\xe9\x3d\x46\x2e\xaf\xe8\x45\xc4\x27\x5c\xe8\xf7\x2a\x80\x14\x39\xbb\x43\x36\xe2\x64\x8e\xf4\x0f\xcf\x12\xc2\x04\x88\x80\x49\x24\xd0\x93\xdd\x53\xf5\xc5\xc8\xdd\x75\xef\x9d\x11\x04\x3f\xdf\x13\x9f\x1d\xec\x0e\xb2\x0f\x3f\x62\xb8\x60\xd3\x84\x44\xbf\xa3\x50\x52\x4b\x08\x5c\xd7\x2f\x36\xdf\xcf\x9a\xff\x94\x90\xb3\x28\x0c\x11\xae\x6d\x7b\x90\xb5\x7d\x93\xb0\x9f\x92\x05\xae\xef\xf6\x49\xd6\xf4\x43\x34\x43\xc9\x42\x4e\xa0\xd8\xe6\x69\xd6\xe6\x28\xc1\xe3\x38\x0a\x58\x5d\x77\x7b\x7b\x59\xd3\x97\xf8\x1c\xc6\x51\x3a\x70\xda\x4c\x1d\xa3\xa1\xb8\xad\x33\x54\xfe\xe7\xe8\xe1\xee\xee\x33\xf9\xdd\x31\x22\xe7\x88\x68\x03\x0c\xf9\x73\x9c\x1e\x40\xf9\x6c\xb9\x94\x1b\x90\xfa\x57\x6c\x44\x97\x72\x47\xb0\x25\xf8\xad\x22\x70\x69\x5c\x0a\x14\xc2\xbd\xae\xfc\x01\xae\xb8\xf9\x5c\xa1\x9c\xfb\xad\xe6\x12\xb4\xe9\x41\x7e\x26\xfb\x19\x47\x38\x3c\x8c\xe3\xd2\x45\xda\xd0\xc3\x4f\xf2\x03\xd7\x5f\x82\xa0\x46\xcd\xa9\x03\x41\x0d\x5d\xe8\x8a\x2e\x09\xc5\xa2\x46\x91\xd9\xd6\x93\xae\x00\x95\x3d\x85\x35\xaa\xca\xb6\x9e\x74\x15\xa7\xe8\xa9\xd3\x25\x1d\x61\x86\xb0\x95\x9a\xad\xc5\x32\xc6\x85\xe0\xea\xd3\xbc\x7b\x5b\xfb\x58\xa0\xb1\x80\xcf\x5f\xbc\x7a\xf1\xe1\x85\x52\x55\x60\x8c\x02\x96\x77\x48\x37\x62\x2b\x0b\x0c\x36\x9e\xa6\xa1\x56\x62\x2d\x35\xfb\xd9\xed\xf0\xf3\x91\x79\xbe\x6f\x8f\xeb\x26\xdc\x3e\xd9\xa8\x75\xb2\xb1\x71\xd0\x5c\xf5\xd4\xbc\x9e\x8e\x73\x04\x83\x29\xea\x1d\x25\x98\x91\x24\x1e\x3a\x38\xe9\x89\xdb\x7a\x73\x36\x37\x3b\xb0\x1a\x65\x8d\x8d\x58\xe5\xbe\x29\x5b\x59\xb8\xae\xad\x4c\xea\x29\x9a\x74\x72\x8b\xdc\x7c\x46\x41\xc6\x5f\x93\x67\xfa\x32\x40\x3c\x41\x43\x27\xe3\x43\x88\x3f\x74\xdd\x4c\x7f\x07\xe4\x18\x5b\x62\x75\x8b\x57\xb7\xba\x15\xb8\x68\x2f\xf2\x7c\x90\xb4\x58\xc3\x70\xc9\x1a\x76\x75\x9c\x2c\x48\x80\xde\x1c\x0f\x49\x3f\xfd\x13\x3c\x47\x94\x45\x58\x50\x72\xf1\xa2\xf0\x1b\xa8\x66\x70\x86\xf2\x6f\xf8\x45\xa3\xb7\x92\x2f\x4b\x4f\xd4\x97\x9c\x81\xcc\xbe\xe4\x3f\xc0\xa1\x98\xcf\x90\xf4\xe5\x1f\x20\x55\x7e\xc8\x87\xda\xaf\xa5\x95\x8d\x10\x82\xa8\x64\xbb\x8b\x4e\x88\x66\x48\x6b\xc6\x51\xd4\x80\x23\x58\x87\x23\x58\x8f\x23\xd8\x84\x23\xd8\x84\x23\x68\xc0\x11\x34\xe1\x08\xd6\xe3\xa8\xce\xbe\x49\x0b\x38\x82\xeb\xe2\xa8\xc4\x54\x84\x2d\x4c\xc5\xe7\xf3\x95\xb9\x89\x05\x8b\x38\xdb\x40\x7f\x4a\xe2\x50\xa8\x07\xca\xaf\x3e\xa3\xcb\x0f\xc9\x21\x21\xf0\xd2\xc4\x6f\xf0\x91\x6d\x79\x13\x2c\xd4\x1c\x26\xc6\x04\x40\x69\xad\x35\x5c\xa0\x53\x33\x7b\xf2\xf9\xbc\x96\x1d\xe9\x72\x53\x4e\x0d\xec\x48\xb9\x6b\xc7\xe1\x77\x22\xc2\xac\x27\x76\x91\xc3\xd0\x17\xb6\x33\x8f\x61\x84\xbf\x77\x82\x29\x24\x14\xb1\xd1\x82\x8d\x7b\x4f\x36\x77\x53\xde\x20\x58\x5d\xdc\x58\xa6\x86\x0b\x5c\x07\x6b\x23\x4e\x2c\x7f\x50\xdd\xfd\xac\x8b\xee\x1e\xdb\xea\xee\xc3\x54\x4f\x8e\x1b\x74\xf7\x63\x79\xcc\x6e\x42\x77\x8f\x7d\x7f\xa8\xc1\xb4\x71\xdd\x3d\xae\xd7\xdd\x8f\x6f\x89\xd7\x9f\x6f\xe4\x78\xcc\x5b\x8f\xc7\xf4\xdb\xe2\x5b\xcf\x56\xe3\x5b\x05\x17\x18\x06\x82\x49\xad\x53\xca\x53\x34\x87\x04\xb2\x84\xac\xaf\x9a\x9f\x7b\x3e\xf0\x76\x01\x49\x41\xf5\xbd\xc8\x07\xde\xd8\xc3\xa3\xab\x25\x70\x39\xf5\x71\x01\x3f\x8a\x3e\x18\x7b\x58\x7a\x34\x40\xf5\x77\x06\x85\x0b\x62\x1f\x60\x1f\xcc\xbc\x99\x59\xaf\x4f\xab\x7a\xfd\xae\x5c\xb2\xb2\x51\xd0\x0c\x1d\x49\x95\x59\x4e\x56\x41\x40\x50\x41\x40\x92\x09\x03\xb5\x13\x2a\x1a\x2a\x68\x69\x42\x75\xcc\x75\xa6\xd8\x8f\x46\xd5\x9e\x73\x7f\x12\x0f\x9f\xd0\x12\x33\x64\x00\x01\x9f\x24\xa9\xa7\x8d\x6c\x53\x14\x67\x8a\x53\xc2\x27\x30\x67\xc5\x7c\x10\x09\xe5\x77\x3b\xdf\xbb\x06\xc0\x1c\x3b\xe3\x18\x4e\xe8\x10\xf7\x7f\xe2\xff\x35\xa1\xb1\x61\x0e\x71\xd7\x39\xd4\xf1\xa5\x0c\xc4\x72\x0e\x8b\xef\xbd\x5d\x80\xf3\xfe\xe2\x42\x7f\x0f\x1e\x78\x0b\x71\xe7\xf8\xe2\xf0\x06\x62\xc2\x0d\x53\x8e\x6d\xd6\x28\x2e\xcf\x4f\xa0\x85\xa0\x60\x41\x28\x1a\x2e\x96\xda\x7c\xa3\xca\x7c\x8b\xf0\x81\xa0\xc4\x11\x9f\xb5\x70\xc4\x38\x09\x37\xef\x41\x44\x0d\x04\x5e\x2a\x7b\x77\x62\x04\x43\x44\x8c\xfc\x68\xad\xcf\x86\x66\xd7\x6f\x1a\x21\xe2\x18\xc7\x30\xde\x59\x44\x62\x5a\x6b\x1a\x64\x49\x2b\x38\xb0\x13\x38\xeb\x38\x31\xd9\x68\x0e\xbf\xa9\x5b\xcf\xc2\x1c\x6d\xa3\x0a\xa1\x23\x4f\xdc\x76\x42\x51\xa3\x1d\x13\xa8\x6b\x6a\xd6\x70\x75\x2e\x2a\x83\xa2\x50\x5c\x27\x65\x5b\x37\x5d\xe5\x3e\x21\x9e\xcf\x41\x93\x30\x26\xba\x87\x57\x19\xc6\x57\xe2\xc4\xd4\x3a\x91\x99\x5c\xc6\x52\x63\x86\xe1\xd3\x75\x1c\x71\x35\x70\xba\x3a\xe2\x1a\x3f\x6d\xf2\xc3\x6d\x33\x0f\x28\x19\x79\x4d\xdb\x40\x9d\xa4\xad\x51\xb5\x9c\xe6\x2c\x4c\x2a\xea\xec\x94\xc3\x20\xde\xc9\xac\x78\xed\x7c\x6c\x17\xea\xb2\x30\x8b\xf6\x18\xce\x90\x80\x7f\x67\x5d\x63\xc3\xc2\x20\x46\x97\x7a\x5f\xd7\xbe\xb0\xa1\xa1\x6c\xc2\x73\x4c\x43\xa5\x44\xb9\xc3\x50\x5d\xd4\x23\x8d\x43\xd1\x15\x89\xbe\x8d\x22\xe4\x9b\x22\xfa\xc1\xca\x44\x5f\xd2\x60\x52\x56\xc8\x73\xee\x8f\xa4\xb4\x13\x77\xa5\xef\x79\xa7\x25\x01\x81\xd8\x11\x74\xbe\xc0\x6e\x89\x37\xab\x83\xa6\x9e\xd7\x27\xa5\xb0\x12\x52\x88\xbd\xb8\x12\xda\x5a\xd6\x4f\x95\xb8\x99\xea\x95\xe9\xaa\x57\x70\x78\xf4\x8a\x0e\xaf\xde\x25\x71\x14\x5c\x3e\x97\x18\xa6\x43\xd6\xe7\x8f\xfb\xc5\xa7\xfd\x19\x9c\x9b\xfc\x31\xae\x5e\x3e\x1f\xa2\xfe\xcb\xe7\x7c\xb9\xc1\xfb\x24\x46\xe5\x6e\xf4\x67\x36\x9d\x2c\xed\x74\xe6\x45\x04\xd0\x2a\x02\xbe\xe5\x49\xd7\x0b\x1b\xa4\xa4\x04\x2f\x4c\xba\xd0\xc7\x61\x7a\xa7\xd8\x0b\xbd\x45\x2e\x43\xf0\x18\x00\xd3\x21\x04\xa9\x1c\x0a\x4e\xae\xde\x23\x2a\x74\xfc\x43\x97\x1f\x66\x29\x9e\x1f\x06\x01\xa2\x74\xe8\x5e\x90\x88\x21\x77\xc9\xe1\x80\xc6\xd1\xd7\x61\x22\xb2\xf9\xd4\xb0\x10\x9a\x83\x50\xcd\x73\x8e\xe7\x66\xe6\x21\x68\x61\x1e\x92\x28\x0c\x7a\x73\x92\x9c\x47\x42\x95\xbf\x22\x0f\x81\xf0\xb9\xc1\x0c\x80\x13\xdc\x43\xb3\x39\xbb\xec\x51\xc4\x56\x0b\xbe\x4d\x79\x0b\x11\xf9\x98\x4c\x92\x05\x6b\x35\x3d\xa7\x17\xcc\x91\x84\xe6\x43\xf2\x19\xe1\xe1\xca\xa2\x44\x2b\x54\x1c\x81\x3b\x01\x8c\xe3\x33\x18\x7c\x5e\xdb\x36\xbe\x72\x7c\x6f\x05\x24\xbe\x5d\x7b\x0b\x12\xaf\x0d\x92\x65\x18\xf0\x1f\x56\x0b\x1f\x5f\x8b\x16\x3e\xb2\xd1\xc2\x2f\x6e\x56\x0b\x1f\xdd\x8e\x16\x7e\x71\x4b\x5a\xf8\xe6\x58\x6b\x5d\x67\x21\x88\xa4\x38\x50\x33\xc4\xa6\x49\xb8\x8e\xfe\x62\x8b\x22\xb3\x45\x5c\xf5\xbd\xb5\x19\x5a\x30\x1b\x09\x3d\x21\xc2\xe7\x7e\x7d\x98\xe0\xb3\xa2\xae\xce\x7d\x93\xca\x04\xae\x5f\xcd\x18\x71\xb5\x5c\x0a\x36\x79\x6c\x60\x93\xdb\x22\x1a\x3b\xe9\x4e\x30\x6d\xf2\x72\x09\x74\xdd\x49\xec\x65\x9a\x09\x83\xe2\x92\xf8\x2b\xa8\xe8\x75\x08\x36\xe0\xc5\x92\xe4\xe0\xc6\x5e\xec\x5d\x2d\xc1\x8c\xc3\x25\x54\xa8\x9c\xd7\x78\x2d\x36\xef\x10\x82\xf7\x28\x8c\x08\x0a\xd8\xc7\xf7\x2f\x35\x47\xe1\x2c\xdc\xf3\x1c\x92\x6c\x1d\x7f\x3c\x3c\x7e\xf1\xe9\xe3\xcb\x4f\x1f\xdf\xbf\x72\x7d\xe0\x16\xaf\x3b\xd7\x2f\xe9\xf1\x2d\x38\xb4\xc2\x9c\x85\x12\x29\x48\x42\x24\x6c\x35\x94\x41\x86\x56\x46\xc3\x0a\x76\x0d\x3e\x72\xe9\x4b\x4b\x93\x90\x00\xb5\x1c\xb0\x61\x85\xfb\xa3\x24\x44\xc3\x04\x1c\xf3\x0e\x86\x51\x09\x7f\xaf\x04\x8b\x53\x27\xa4\x15\xb7\x08\x5e\x65\x8b\x70\x06\x1b\xdf\x0a\x33\x5b\xab\x0f\x33\x7c\x58\x62\x68\x41\x5c\x45\xcb\x3a\xa0\x4a\x2c\x9b\xe0\xd4\xe8\x4f\x33\x5b\x3d\x6e\x61\xab\xe7\x42\xe8\x5a\x57\x27\x97\xf6\xd2\xd1\x5b\x66\x03\x9c\x79\x77\xef\x1a\xce\x78\x4a\x78\xaf\xcd\xcb\xc6\x34\xc4\x75\xba\xcf\xe4\xe3\x6d\x36\xb5\x8b\xc9\xe8\xdf\x75\x6e\x77\xbe\x31\x77\xbe\x31\x7f\x42\xdf\x98\xec\x98\x44\xc8\xc2\x01\x7e\x8b\x3c\x64\x84\x7f\xcb\x06\x78\xed\x33\xce\x6b\x53\x0b\x5e\x3b\xe9\xca\x6b\x9f\xaf\x6b\x87\xd4\x79\xe9\x7b\x82\x5d\x29\xf8\xcc\xb4\x79\x88\x90\x82\x87\x08\x5c\xc5\xe5\xc5\xc8\xd1\x97\xd8\xa6\x95\x4c\x94\x81\x6e\xa2\x5c\x71\x06\xad\x3e\x2e\x70\xd4\xe8\x30\x52\xce\x2d\x54\xce\x19\x35\xf3\x2c\x35\xe4\xef\x17\x31\xa2\x43\xd6\x17\xff\x05\xf9\x18\xfc\x99\xf6\x6b\x09\xce\x3c\xd9\x97\x98\x5d\x49\xbe\xa9\x57\x62\x43\x39\x1b\xda\x34\x9b\x4a\x4a\xa8\xb2\x2f\x7e\x41\xf1\x4d\x6f\x78\x6e\xf5\xba\x6a\x75\x33\x26\xcd\xce\x3d\xb4\x32\x3b\x93\x87\xd7\x09\xac\xf3\xe4\x89\xf8\x6e\x2b\x60\x20\x29\xb1\x9f\xe7\x6d\xec\x27\x49\xbe\x74\xe3\x3e\xef\xf2\x63\xdc\xe5\xc7\xb8\xcb\x8f\x71\xdd\x79\x7a\xd2\xd0\xb5\x6f\x3d\x3f\xc6\x9f\x20\x33\x06\x49\xe2\xb5\x7d\x6a\x64\x1f\xdf\x8a\xf4\xce\xa1\xbd\x56\xd9\xbd\x38\xc0\x75\x4b\xee\x7c\xb4\x9b\x91\xdb\xed\xe7\x75\x27\xb5\xdf\x49\xed\x7f\x52\xa9\x9d\x1f\x92\x3b\x91\xfd\x4e\x64\xbf\x13\xd9\x57\x10\xd9\xdf\x29\x95\xd7\x90\xf5\xd3\x3f\xc1\xb1\x34\x7b\xbe\x0c\x11\x66\x11\x93\x2f\x2b\xcf\xc0\x9b\x24\x2c\x36\x29\x3e\xf8\x26\x85\xfc\x5b\xc2\xc6\xb7\xaf\x16\x50\x96\xf2\x5e\x9a\x4a\xea\x4e\x43\x70\xa7\x21\xb8\xd3\x10\x6c\x85\x86\x60\x8a\x60\xcc\xa6\xe9\x09\xbd\x53\x10\xdc\x8a\x82\xc0\x8a\x79\x11\xb3\x10\x73\x48\x67\x90\xc7\x5d\xdd\x2b\x38\x24\x14\x3b\x53\x54\x46\x24\x07\xcb\x28\x42\x47\xa5\x84\xda\x1e\x1b\x8f\x52\x8c\xaf\x7b\x47\x76\x09\x68\xd4\x81\x31\xfb\xe3\x29\x98\x0a\x6e\x78\x8d\x20\xad\x1e\x78\xf4\x47\xbe\xd9\xe8\xb5\x48\xe3\xd0\x46\x1a\x4f\x6e\x56\x1a\x87\xb7\x23\x8d\xdf\x7e\x2e\xb9\xf6\xb3\x34\x81\x0c\x5d\xc0\xcb\x5e\x7a\xa6\x7a\x22\x40\xb7\x7c\xdc\xf5\x84\x5e\xdd\xcf\x5c\x67\x4d\xe2\x37\x15\xcb\xb5\xd8\xe8\x75\xc8\xef\x41\xb5\x26\x60\x51\x74\x48\xcd\xf2\xac\xc5\xcf\xa4\x34\x10\xe7\xd7\xdc\x02\x50\x8f\xda\x5e\x74\x43\x2d\x1c\x66\xd9\xed\x53\x7b\x01\x9f\xdc\xd0\x7d\x8f\xb3\xfb\x9e\x70\x44\x74\x99\x4b\xe1\xee\x5d\xb4\xde\xbd\x94\x6e\x20\x07\x67\xd6\xcd\x26\x52\x60\x69\x97\x79\x73\x6d\x39\x35\xea\xb5\xd5\x97\xcb\x52\x1b\xa8\x71\xec\x6b\xa2\xdd\x85\x97\xdc\x85\x97\xfc\x09\xc3\x4b\xd2\x83\xb2\x81\xec\x1c\x5b\x14\x51\xb2\x99\x0b\x75\xed\x5a\x7f\x06\x85\xf2\xe6\xd2\x55\x04\xc5\x74\x15\xca\xdb\xff\xdb\x52\x8e\x27\xfa\x1c\x56\x9c\x41\xbd\x3a\x34\x49\x53\x20\x55\x7b\xd6\xd4\xa1\xd5\x6a\x79\x06\x10\x92\x7a\x75\xa8\xa1\x20\x60\xc7\x02\x76\x2c\xf9\x8c\xd6\xbe\xcf\x55\x27\x5b\x65\xe4\xbf\xac\x31\x89\x0b\x58\x39\xb5\x91\x95\x6c\xd7\x36\xf4\x5f\xd6\xd8\xfa\xe4\x38\x14\xc5\xe3\x22\x59\xab\x09\xc9\xbd\x81\x3c\xd2\x97\xf5\x6e\x0f\x19\x52\x8c\xe8\xe8\xe2\x1f\xd0\x8a\xf6\xcd\x38\x08\x98\x86\x6b\xaf\xf0\x5b\x27\x8e\x85\xad\x23\xce\xec\x26\xd8\x3e\xb9\x59\xeb\x50\x63\xcb\xad\x65\x85\xcb\x71\xeb\x70\xf3\x3f\x34\x67\x39\xbd\x16\xce\x72\x6e\xc3\x59\x9e\xdd\x2c\x67\x39\xbf\x1d\xce\xf2\xec\x96\x38\xcb\x73\xbb\x53\x62\xe1\x6d\x71\xde\x7a\x44\x2e\x6f\xd2\xdb\x62\xb2\x01\x6f\x8b\xc9\xb5\x79\x5b\xbc\x35\xb0\xa5\xe2\x9a\xaa\x09\x47\x16\xef\xd6\x0e\x48\x26\x49\x8c\x04\xf3\x2a\xa3\xc3\x72\xfe\xe7\xdc\xf3\xc1\x15\x7f\x3b\xa4\x40\xbe\x1b\x26\x40\x72\x74\x53\x6f\xfa\xed\xf1\xa4\x63\x9d\x27\x5d\x71\x06\x16\x0e\x1b\xe5\x7e\x2d\x1d\x36\x66\xc2\x61\x63\xea\x35\x24\xe1\x31\xb9\x25\xbc\x4f\x54\x3c\x02\xff\xef\x66\x9c\x14\xc0\xab\x24\x80\xf1\x90\xf5\xc5\x7f\x97\x60\xb2\xaa\x03\x47\xb6\x62\xf7\x47\x23\x28\x23\x26\xfc\x6c\xbe\xa1\xe7\xdb\xba\x75\x00\x26\x33\x80\xd2\x26\xdc\x36\x39\x83\x04\x06\x67\x90\x6f\x0d\xd3\x16\xce\x21\xd5\x3d\xbd\x41\xe7\x90\x85\xc9\x39\x44\x83\xef\x18\xc5\x63\xe3\x89\x20\x23\x2c\xd5\xb4\x38\x3b\xcf\xb8\x4f\x51\x40\x10\x2b\xba\xeb\x98\x4a\xf0\xb6\x57\x54\xd7\xe6\x5f\x00\x6f\xe5\x34\xc4\xbc\xaf\xf8\x7a\x71\x29\x8a\x78\x80\xd8\x5f\x02\x5a\xc5\xda\xea\x61\xe7\x7c\x09\xba\x06\xc7\x17\xbf\x29\xc7\xc5\x1b\x8b\xcb\x67\xf8\xe6\xe0\xdd\x5b\x0d\x54\xab\x3a\xf3\x34\x15\xf3\xd5\x62\x24\x56\x2b\x91\xd8\x2e\x43\x39\x65\x66\x06\x4e\xc4\x81\xa1\x0d\xc1\xf9\x6f\x6b\xe4\xfe\xb9\xb1\xd4\x25\x41\x34\x89\xcf\x51\x5e\xca\x32\x4e\x60\xd8\x8b\x70\xc4\x54\x95\xc1\xa2\x5e\x40\x32\x6b\x5c\x68\x8f\x48\x82\x39\x77\xdc\x9a\xd9\x2a\xcb\x8f\xe6\xc1\x91\xa1\x4a\xa1\x94\x16\x1e\x3c\x70\xa9\xf8\xa3\xfc\xa2\x1f\x31\x99\x95\xec\x59\x3e\x48\xbe\x05\x65\x4b\xb4\x34\xd6\x58\x7e\xf0\xa0\x61\x38\xd4\xe7\x93\x62\x64\x11\xb0\x84\x8c\x46\xa3\xec\xf9\xfd\xf4\xef\xfe\x9c\x24\x2c\xe1\x9f\x3d\x4b\x61\x1b\x66\x03\xfa\x1e\xf2\x2b\x39\x77\xa3\xb1\x77\xbf\x58\xaa\x90\xf9\xda\xd9\xce\xea\x16\x7a\xee\x11\xc4\x38\x61\x4e\x00\xe3\xd8\x81\x4e\x10\x43\x4a\x1d\x48\x1d\xe8\x64\x00\xfb\x25\x3b\x6a\x86\xc4\x24\x15\xba\x28\x62\xef\x52\x08\xdf\x8e\xbf\x7e\x2d\xf2\x2c\xd9\x3e\xfa\xf4\x49\xcc\xe3\xd3\xa7\x11\x03\x02\x6e\xc0\xfc\x82\x75\x41\xee\x63\xa6\xf3\xc2\xd1\xd8\x73\x17\x58\xee\xa1\x30\xc7\xdd\x7b\x34\x8e\x51\xc0\xbe\x7e\xbd\xaf\xfe\xca\x71\xa8\xae\xce\xfb\x03\x4e\xd9\x2a\x6f\xfb\x74\x0a\x67\x85\x26\x86\x95\x79\x47\x92\x2f\x97\x69\xa3\x5d\x51\x6b\x51\x4d\xe2\x39\x64\x28\x5f\x8d\x3e\x4b\x8e\x19\x89\xf0\xa4\xcf\xd1\x57\x1d\xcc\xe3\xcd\xc1\xc9\x69\x21\xb1\x85\x10\x1b\xef\xef\xaa\x62\x81\xd9\x26\xb9\x3f\x58\x2e\xbd\x5c\x64\xce\xdb\x0b\x96\x0f\x90\x51\xa0\x84\x61\x96\x32\x50\x81\x70\x61\xf1\xf5\xdd\x73\x0f\x8f\xaa\x40\x90\xdc\xcb\x05\x40\x7f\x89\x62\x8a\x1c\x3c\x22\x66\x37\x98\x4c\xa7\x23\x5f\x60\x7f\x59\x63\x0e\xbe\xcf\xbe\x7e\x75\x13\xb1\xfe\x2e\xe7\x5b\x3c\xe6\xeb\xbb\xfc\x7e\x8a\x4b\xf6\x6c\xe1\x21\x7f\xc8\x0a\x76\x00\x8d\xe7\x19\x8d\x46\x48\xdb\x99\xef\xd1\x18\x11\x84\x83\x74\x7b\x72\x28\x9c\x29\xa4\xf8\x2f\xcc\x39\x43\x08\x3b\x29\x3d\xa0\x28\x74\x7a\x0e\x5d\xcc\x11\xf1\xfc\x42\x0b\xbe\x16\x48\xe7\x68\x0b\xf5\xc3\xb2\xdd\x1b\x98\x77\xef\xb3\x5c\x0e\xd5\x9e\x1a\x4f\x75\xbe\xa1\xbf\x7e\x35\x7e\x25\xea\x8d\x16\x8e\x67\x78\xb3\x92\xea\xa6\xcc\x00\xda\x76\x2c\xf9\x30\x15\x0e\x50\xbe\xe8\x0f\x1e\x48\x2d\xc6\x88\x99\xa9\xce\x31\x5f\x37\x07\x7d\x99\x13\x69\x7e\x91\x2c\x06\x8a\xd8\x14\x11\xe7\x0c\x39\xfc\x6b\x27\x21\x05\x32\x74\x4f\x3b\x79\xe9\xda\xc9\xda\x94\x1e\x7b\xf0\x80\xe5\x2f\xc1\x95\x76\x24\x52\x59\x17\xe9\x38\x2a\xe3\x6f\xb9\xf4\x01\x7b\xf0\x40\x92\xb7\xa5\xef\x61\x20\x25\xc9\xc3\x5c\xe5\x2c\x19\x1e\x34\x8a\x3c\xec\xdf\xab\x78\x6e\xc1\x7b\x34\x3d\x30\xf7\x52\x4d\x4f\x52\xa9\x81\x0c\x22\x51\x87\x54\x14\x64\xf2\x12\x1f\xc4\xa3\xdd\xef\xe3\xff\x48\xbe\x8f\xbf\xfb\xce\x8f\x4e\xe2\x53\x4d\xe9\x13\x9f\x66\x7a\x41\x6f\xe1\xc1\x11\x12\x24\x46\x9d\x59\x04\x4e\xf8\x60\xa7\x69\xc2\xa8\x88\x93\x14\x77\x26\xd6\xf3\x1d\x41\xe3\xe8\x8b\x9b\xa7\xf8\xea\xeb\xcf\x7d\x20\xba\xf3\x81\x3b\x4f\xc2\xd7\x35\x1f\x94\x5e\xe5\xdf\xbc\xcf\x6e\xe8\x4c\x00\xf7\x01\xcc\x35\x5e\x5e\x41\xe9\x0f\x8a\x45\x0b\x66\x75\x20\x99\x99\x84\x20\x99\xcd\x13\x8c\x30\xeb\xcd\x20\x86\x13\x44\xe8\xce\x24\x8e\x66\xb3\x72\x72\xcc\x1f\xd4\xd3\xfc\x83\x9d\xde\x9c\x44\xe7\x90\xa1\x1d\xc9\x46\x54\x7a\xaa\x7a\xe2\x75\x3e\x27\xb5\x1f\xa8\x19\xba\xe0\xaa\x78\x60\x27\x88\x55\x15\x1a\x4e\x86\xc6\xe5\xb2\x0d\x0d\x74\xa7\x17\x5e\x62\x38\x8b\x82\x1e\x8a\x11\xdf\x24\x3d\xc8\xc7\xc9\x71\x51\x98\xd5\xa6\xca\x7b\xb3\x91\x3c\x09\x47\x29\x1c\xa9\xc6\x45\x5f\x6a\xd6\x19\xf6\x6f\x05\x6e\x38\x9f\xf7\x44\xd5\xe4\x1d\x21\x6b\xdd\x18\xd8\xbf\x7c\x78\xfd\xea\x47\x48\x68\x9f\xa1\xd9\x3c\xe6\x24\xee\x2a\x0a\x87\x6e\xf4\x2b\xfd\xe9\xa7\xf0\xcb\x23\x17\x9c\xc5\x49\xf0\x79\xf8\x97\x2b\xc5\x0f\x52\x77\x78\x72\x0a\x5c\x91\x0d\x4d\x10\x10\x77\x78\x72\xf2\x10\xb8\x1c\xfe\xf3\x08\x5d\xb8\x9c\x0b\x39\x39\x71\x7f\x10\x0c\x9e\x7b\xca\xe7\xc1\xa7\xe5\xd0\x69\x72\xe1\x9e\x9e\x82\xab\xd2\xb7\xbb\xc0\xfd\x9f\x54\x4b\x09\x78\x4f\x62\xc0\x1e\x8d\x13\x96\xf5\x25\x92\x4d\xf3\xae\xa6\x22\x89\x7e\x73\x37\xb2\xa3\xc7\xc0\x9d\x0e\x5c\xc0\xc8\x02\x9d\x82\x93\x27\xa7\xa0\xd0\xc2\x91\x42\xa7\x68\x39\x00\x27\x7b\x07\x29\x98\xae\x9c\xda\x82\xf2\x31\xc6\x30\xa6\xa8\xf4\x25\xff\xe2\x69\xe1\x19\x6f\xe9\xce\x21\x81\x33\xc4\xb8\xe8\x30\x3c\x39\x5d\x96\x1a\xb4\xce\x2b\x90\x45\xda\x6c\x26\xf6\x10\x48\x48\x7b\x32\x21\x5d\xda\x95\x84\x9e\xff\xbd\xb7\xa7\x5a\xb8\xa7\xa7\xa7\xf6\x90\xb6\xbf\x9c\x42\xfa\xe2\x1c\xc6\xee\x50\xe0\x65\xf9\x17\x30\x43\x0c\x0e\xaf\x24\x89\x15\x71\x3c\x56\x5b\xbb\x3f\x3d\xa3\x2e\xbf\x07\xb1\xda\x82\x9f\x28\x62\xd9\xe9\xf9\x90\x6e\x43\x06\x6a\xce\xd5\x15\x83\x13\x39\x9a\xbb\xf4\xf5\x43\x86\xad\x0e\x19\xdf\xa4\xd5\x33\xa6\x2f\x0f\x35\xd8\x66\xd5\xe9\x88\x7e\x6f\xab\x97\x90\x73\x6d\xfa\x99\x8d\xc6\x9e\xb8\x8b\xfb\x11\x95\x77\x32\xf2\x53\xc5\x1b\x17\x16\x97\x1e\xf2\x75\x61\xa6\x2c\x8d\xdc\x2f\x4b\x72\x25\x39\x91\xf3\x76\xca\x1e\x92\x77\x2c\x07\x1c\x93\x64\x66\x18\x21\x15\xdd\x90\x6a\x2d\xe4\x13\x2a\x44\x8c\x5c\x3a\x41\x1a\x8c\xa9\xca\x2f\xb3\x9a\xd5\xc9\x26\xc8\x57\xb6\x82\x27\xa0\x37\xf0\xef\xb9\xb2\xb9\x3b\x1a\x8d\x70\x49\x02\x7d\xf0\xc0\xc3\xa3\xc2\x93\x3e\x3f\x10\x42\xf6\x70\x5f\xc3\xb9\xf8\xe6\xeb\x57\xf7\x18\xc9\xcf\x8d\x13\x13\x8d\x0f\x53\x6e\x46\x7d\xb2\xf3\x7f\xbd\x67\xc3\x8f\xd1\xd7\x97\x3e\x66\xde\xb3\xe1\x93\xaf\x83\x47\x5f\xf7\xf7\x7c\xef\xd9\xf0\x28\x86\xb3\x39\x0a\xfd\x67\xa2\x93\xff\xbd\xd3\x67\x88\x0a\x23\x52\x61\xa6\x25\x6c\xf9\x57\x46\xd6\x52\xd5\x78\x77\x20\xe3\xbb\x83\x39\x2c\x71\xe8\x9c\x20\x18\x3a\x38\xc1\x3d\xb1\x36\x67\x71\x2e\x1a\xf7\xff\x07\xbf\xc4\x4e\x42\x42\x44\x78\xd3\x33\xe4\xa4\x4d\x80\xf8\x00\x72\x88\x1c\x29\xe8\x50\xc9\xa6\x4e\xe1\x39\x72\xa0\x73\x52\x5a\xee\x53\xcf\x77\x64\x5a\xda\xbe\xeb\x2f\x3d\xbf\xe2\xbd\xee\x71\xae\x76\x34\x62\x5f\xbf\xb2\xff\x44\x8a\x25\xf4\x1f\x3c\x10\x86\x1c\xf5\x2b\x63\x1e\xf1\x68\x17\x10\x8d\x5b\x64\xfe\xf7\xf8\x3f\xd8\xf7\xf8\xbb\xef\x7c\x72\x82\x4f\x47\xe8\x04\x67\x1c\x22\xd9\x10\x9f\x4f\x9b\x2f\x9f\xef\xa6\xc1\xc1\xf4\xec\xef\x73\xe3\xe5\xe3\x8e\x63\x48\xa7\xe2\x88\xaa\x73\xed\x82\xec\x99\xa2\xdd\xc0\xe5\x1b\xd3\x05\xee\x83\x94\x4b\xaa\x5c\x59\x83\x03\xf0\x48\x23\x6f\xf2\xc2\x90\xb7\x4b\xf5\xd2\xe0\xef\x0f\x80\x8b\x60\x30\x75\x39\x85\xe5\xd7\x85\x18\xf2\x35\xa2\x14\x4e\x10\x1f\xf1\xb7\x05\x5a\x20\x4e\x72\x45\x29\x38\x13\x19\xd7\x28\xb8\xf8\xb8\x37\x93\x5f\x67\x34\x5c\xce\x42\xd0\xf0\x7d\x30\x00\x27\x82\x7e\x9b\xef\x03\x05\x51\x34\x76\x65\xeb\x7d\x70\xe2\x86\xc9\xac\x75\xfc\x14\x06\x7e\xe9\xe9\x5f\xa5\x73\xae\xbf\x0b\x2a\x3d\x1e\x00\x37\x46\x4c\x8c\xff\x04\xb8\x71\x72\x81\x48\x00\x29\x52\x00\xed\xa5\x28\xe2\x07\x26\x03\xeb\x14\x18\x1b\x73\x38\xa0\x14\xbe\xb2\x96\xf5\xf3\xd0\x6e\xf1\xec\xae\x9f\x67\xab\x36\xd8\x05\x6e\x08\x19\xec\xe1\x84\x45\xe3\xdc\x8d\xc7\x55\xef\x54\x86\x0e\x18\x23\xc2\xc4\xb3\x01\x70\x25\xaf\x22\x61\x93\x92\x8e\x02\xec\x80\x2f\x02\x70\x1d\xbd\xaf\x9e\x2b\x70\xf7\x50\xac\x4f\x0a\xab\x81\xc3\xd0\xa0\xa3\x8c\x24\x78\xd2\xc0\x8d\x14\x17\x86\x43\x01\xe7\x11\x13\xca\x48\x1d\x92\x14\x89\x1a\x63\x72\xdf\x30\xe2\xd3\xf2\xc6\xbd\x8c\x50\x1c\x2a\xd6\x43\x60\xf5\xe4\xc4\x15\xbc\x87\x5a\x65\xc9\xa7\x15\x11\x26\xc0\x90\x97\xa2\x6a\xa3\xa3\x24\xc3\x40\xb6\x8f\x22\x86\xc4\x46\x4a\x7f\x67\x2c\x88\x42\x91\x71\x27\x1b\xe6\x5f\x3e\x97\xf9\x2e\x7f\x02\x5c\xf4\x9b\x82\x42\x8e\xed\xca\x34\xb1\x6e\xf3\x96\x31\xf7\xa0\x96\x96\x2e\x44\xdd\x87\x96\x2e\x2a\xa0\xf2\x7f\xff\x4c\x16\x0e\x24\xc8\xc1\xc9\x85\x13\x27\x93\x09\x0a\x9d\x64\xc1\xfa\xb6\xe7\xc7\xd8\xe7\x87\x29\x22\xc8\xb9\x80\xd4\x81\xd8\x91\x8c\x33\xef\x3a\xc2\x93\xa6\xbe\x2d\x8f\x6b\x3d\x1e\xb3\xe4\xc0\xdb\x83\xca\x08\x6f\x1a\x93\xc0\x99\xc7\x08\x52\xe4\x04\x53\x14\x7c\x76\x2e\x93\x05\x71\x8e\x85\xd9\xeb\xe5\xf3\x1d\xe1\xa1\xd6\xc8\x06\x97\xf7\xaa\x01\x30\x35\xef\x8d\x2f\xcf\xdd\x36\xbf\xdb\xe6\xdf\xe4\x36\x2f\x77\x59\xbe\x9d\xca\x5f\x1c\x80\x87\x0d\xfd\x83\x9c\x8b\x2a\xbf\xdd\x03\xfb\x8d\xb2\xec\x20\xed\x16\xe8\x9c\xd8\x63\xe0\x86\xd1\x79\xc3\xbd\xdc\xd8\xa8\x78\x3b\x71\x9e\x30\xdb\x5f\xa1\x15\x23\xa6\x8d\x80\xe1\x79\x81\x83\x81\x24\x82\xbd\x18\x9e\xa1\xd8\x05\xee\x8f\x5c\xa8\x08\xc8\x62\x76\xe6\x36\x70\x0f\x19\x73\xa9\xdf\xf6\x65\x45\xc3\x59\xd6\x15\x35\x29\x1b\xc4\xed\xdb\xa2\xce\xb0\x5d\xcb\x0a\xc6\x1b\x90\xca\xa7\xac\x98\x30\x97\x45\x2c\x46\x4d\x13\xb5\x98\xa6\x9d\x9e\xa8\xdc\x69\x81\xf7\x68\x3f\x07\x0d\xe0\x35\x4c\x4f\xf2\xb9\xd4\xdd\xfc\x56\xb2\xc6\x4e\x06\x82\x3d\x7a\xb2\x7e\xe7\x09\x61\x30\xee\x31\x48\x26\xc8\xd4\xb5\xd2\xb0\xf4\xf2\x31\x6a\xb7\xab\x05\xda\x5b\x51\xdf\x61\xdb\x99\x74\x77\x76\x6f\x5a\xd0\xc9\xcf\xae\x25\x2a\x1b\xa7\x6b\xb5\xc7\x4c\xfa\x47\x03\xc7\xbf\xda\x4e\xb2\x98\x2c\x4b\x92\xf8\x0c\xda\xaa\x60\x23\x3c\x5f\xb0\xc2\x31\x88\x42\x7e\xc4\x65\x27\x3d\x96\x4c\x26\xf2\xac\xf3\x57\x4a\x66\x17\xd7\xd6\x59\xf2\x25\x3d\x21\xe5\x75\x31\xe2\x70\xe5\x4d\xf2\xb4\xac\x04\xb0\xa1\xf5\x4f\x00\x17\x96\x32\x0c\x23\x0c\xcf\x62\x0d\xbd\xad\xe7\xd5\x02\xcf\x61\x44\xd3\x4e\x3b\x53\x69\x5b\xf1\xdd\x3c\x1b\xc3\x7e\xd9\xc4\x84\xd2\x6e\x55\x8a\x8a\x6b\x9a\x55\x17\x88\x1a\x94\xee\x36\xf7\xa0\x25\x87\x5a\xbd\x25\xd7\xd1\xa3\xe7\xda\xeb\x4c\x8d\x9e\x34\xaa\xd1\x69\x9d\x1a\x3d\xb3\x08\x82\xab\x7c\xc5\x87\xf7\x77\x81\xda\xcd\xc2\x78\xcd\xef\x2c\xe1\xff\x38\xcc\x49\xbb\x7b\x9a\x3f\xff\x31\xc2\x61\x84\x27\xfc\x75\xfa\xd9\x30\xdb\xb9\x1a\xbf\x1d\x0e\x87\x0b\xac\x6f\x2c\x10\x26\xb3\x1a\x27\xea\x30\x99\xb9\x3e\x08\xa3\xf0\x3d\x0a\x50\x74\x8e\x0e\x19\x23\x74\x58\x50\xc6\x46\xb4\xff\x49\x38\x64\xd4\xb8\x96\x48\x03\xba\x68\x17\x26\xb3\x3e\x49\x12\xe6\xf9\xf7\xc4\xef\x38\x81\x1c\xe2\x67\xa8\x2f\x26\xf1\x2a\xa2\xac\x0f\xc3\xd0\x73\xd5\x0b\xd7\x1f\xea\xaf\x08\x9a\x25\xe7\x48\x7b\xab\x8c\x67\xa2\x2f\xd1\xec\xeb\x57\xd7\xd5\xbd\x65\x00\x15\xca\xd4\x63\xc4\xbc\xa2\x59\x9a\xf5\xe9\x3c\x8e\x98\xe7\x3a\xae\xef\xf3\x65\x4b\x9b\x11\x4f\x1b\xd1\xaf\xc6\x8d\xe4\x9e\x3b\xb4\x3f\x85\x54\xf8\x7a\xf8\xfe\x3d\xe2\x25\x35\xa1\x0f\xbd\xc1\xfd\xd1\xa8\x38\xf8\x89\x8b\xc2\x88\xb9\xc0\x15\x66\x38\xe0\xc6\x11\x65\xee\xa9\x2f\x1d\x40\xdf\x8e\x85\x4f\x8d\x61\xde\x4c\x18\x8b\xa5\x57\x40\x0e\x21\x0c\x43\x85\x78\x08\x88\x47\x7d\x7f\xb9\xe4\xeb\xf5\x12\x53\x44\xd8\x0b\x69\x77\xed\xb4\x60\xd2\x59\xb3\xb4\xe4\x9e\x2f\x7a\x7d\x2e\xe3\xd7\x57\xe9\x56\xdf\x07\x02\xfc\xef\x5c\x27\x5d\x48\xbe\x64\xa9\x1b\x18\x80\xe5\xbd\xf2\xbd\xc7\x46\x50\x9f\xb2\xc4\x47\x3a\x0c\x20\xa5\xb5\x45\x85\xb5\xf5\x97\xcb\xa2\x65\xaa\x26\xc9\x8f\x7e\xb6\x39\xbf\x3f\x43\x78\xd1\x6a\xfe\x15\x10\xeb\x7e\x21\x9d\x2d\x4e\xe4\x1b\xb0\x38\x91\x3f\x8d\xc5\x89\x7c\xdb\x16\x27\x72\xdd\x16\xa7\xdb\x4a\x1a\x77\x23\x96\xae\x5f\x5e\xff\x2d\x39\xfc\xc2\x5e\x98\x2d\x5d\x8d\xd6\xab\x81\x62\xdd\x94\xdd\x44\xaa\xa8\x76\xa5\x8a\x2a\x98\x42\x3c\xc9\x94\x5c\xa0\xb6\xdd\x67\x74\x29\xfc\xe2\xec\x5b\x1e\xc5\x51\xf0\xb9\xd8\x7c\x2a\x4c\x6f\xa9\x59\x41\xe8\x2c\x62\x14\xfe\xa8\x8a\x98\x31\xc2\x27\x03\x38\x35\x83\x38\x14\x57\xff\x49\xd1\xce\x92\x1b\xf2\x7a\x19\x15\xec\x31\x12\x4d\x26\x88\x08\x5b\x0b\x67\x4a\x27\x8b\x28\x2c\x5b\x91\x9a\x7b\x10\xff\xd7\xf4\xb9\x26\x22\xe5\xc0\x9d\x02\x97\xf3\xfe\xfc\xbb\xc7\xb9\xe9\x42\x18\xe2\x56\xe7\xdb\x8a\xb4\x5d\x63\xdc\x06\xfb\x20\x1a\xed\xef\x81\x78\xb4\xff\x04\x2c\x46\x07\xbb\x20\x18\x5d\x9d\x23\xc2\xa2\x00\xc6\x43\x8f\x8d\xae\x96\x00\x7a\x0c\x2c\x0c\x57\x40\xc5\xe7\xef\x3f\x07\x0f\x1e\xe4\xd1\x3d\x99\x7f\xdf\x40\x0f\xea\x1c\x9c\x0e\x7b\x03\x75\xb6\x3c\xf6\xdd\xc0\xff\x3f\xe9\xf1\xe4\x37\x14\x1f\x2a\xde\xe0\x50\xbb\xe9\x29\xde\x1d\x8d\x46\xec\x59\x3a\x54\x6f\x30\x64\xbd\x41\x3a\xe0\xfe\x23\x43\x35\x3e\x67\x37\x7b\xfd\x10\x18\x38\x21\x27\xef\x8b\x37\x64\x3e\x10\x9c\x65\x82\x19\x8c\x87\x57\x9c\x1d\x59\x8d\x29\xd6\x7c\x4b\x5a\x39\x54\xbe\xa7\x78\xbb\x74\xf3\x0c\xef\x0f\x40\x42\x22\x84\x99\x10\x71\x86\x6e\xba\x90\x2e\xf8\x8c\x2e\xcf\x12\x48\x42\x55\x63\xfc\xfe\x2e\x88\x70\xd4\x91\x45\x92\xa0\x50\x24\xab\x76\x02\xb9\xa5\x41\xc6\xb7\xf0\x9f\xd2\x4d\x5b\x71\x53\x9f\x38\x8b\x87\x30\x22\x34\x67\x6e\xb2\x47\x69\xa8\xd7\x27\x92\x2c\x18\x6a\x6e\x69\xc1\xdb\xfd\x6f\xbe\xbb\xf3\x8f\x95\xeb\x9d\xe7\xfe\xaf\xac\xd2\xa8\xf1\x88\xba\xc0\x95\xff\xf5\x0b\x05\x49\xf9\x54\xfc\x02\xf3\x26\xfa\xef\x4f\x10\xe3\x8c\x61\x74\xb6\x60\xc8\xd3\x34\xa4\x31\x0a\xcf\x2e\x5d\xc5\xdf\xff\x6f\x45\x39\x1a\xa1\x41\xbe\xbf\x04\x17\x51\x1c\xaf\xc1\x5c\x96\xb1\x9c\xb2\xcc\x66\xcc\x66\x6f\x97\x40\x69\xc6\x86\x57\x05\x9a\x5a\xf0\xfb\x46\x7d\xa9\x5f\xeb\x87\x11\x9d\x43\x16\x4c\x5f\x9c\xf3\x19\xf0\x2b\xf3\x75\xb2\xa0\x48\xfe\x74\x03\x41\x8c\xf9\x5c\xd2\xae\x86\xd5\xb3\x2b\x62\x82\xa2\xb1\x77\x92\x80\x08\xc4\x60\x71\xda\x8f\x70\x10\x2f\x42\x44\x3d\xd4\xff\x8c\x2e\x8f\x92\x10\xf9\x7c\x48\xca\x92\x39\xbf\xe7\xe0\x04\x4a\x1c\xdc\x53\xc1\x62\x5e\x19\x95\xd4\xfb\xcb\x09\x49\x62\xf4\x7f\x47\x62\xfd\xa4\xe5\xf7\x2f\x20\x5f\x2a\x5f\x30\x49\x59\xf7\xa3\xd1\x28\xf9\xfa\x55\xff\x19\xa5\xa1\x05\xb2\x02\xad\x3a\x41\xcf\x24\x4d\x19\x92\x93\xdd\xd3\x7b\x72\xbf\x93\x05\xee\x63\xf4\x45\x2f\x87\xef\x5f\x65\xa4\xc7\x83\x23\x96\x7f\x0d\x87\x2c\x5b\x7e\xff\xc1\x03\xd8\x1f\x27\xc1\x82\x6f\x60\xdf\x5f\xea\x91\x8f\x81\xf0\x69\xee\x6b\x67\xf5\xf4\x24\x03\xee\x94\xa3\x62\x4e\x10\xc7\xf0\x73\x79\xfd\x2a\x4c\x50\x10\x1a\x36\x55\xb6\xa7\x8c\x28\x71\x87\x02\x06\xd7\xd7\x91\x73\x2f\x7c\xf0\xc0\xa3\x22\x43\x00\x0e\x5f\xf2\x2b\xc1\x24\xec\x39\x1c\x4f\xa1\x88\xe1\x20\x27\xcd\x20\x7b\x04\x50\xff\x34\x9b\xee\x72\x09\x24\x03\x60\xde\x53\x42\xbf\x86\xc2\x67\xa2\x47\xb5\x19\xfb\xc9\x1c\x61\x7d\x9f\x9f\xa0\x53\x7f\x58\x68\x11\xc4\x09\x45\xe5\x26\x22\x20\x8d\xa2\x61\x29\x8a\x44\x1e\xdb\x7b\xb5\x27\xa4\x4c\xcb\xb2\xfb\x17\xdc\x1f\xa4\x6f\x8d\x2b\x8f\xb2\x05\x56\x9d\x69\x04\x81\xc1\x33\x29\x3b\xc9\x12\xc5\x7c\x46\x35\x70\x35\x0c\xbf\x9b\xae\x54\x3a\x0c\x2d\x10\x9d\x6c\x0c\xe0\xf6\x06\x6e\x95\x06\xc0\x30\xcc\x4f\x4b\x98\x04\x82\x56\x78\x3e\xe0\x67\x3d\x4c\x2e\x34\x80\x98\x7f\xb5\xf7\x98\x5f\x8b\xe9\x2a\x72\x51\x25\x1b\x55\x2d\x25\x78\x7a\xbf\xd0\x62\xef\xb1\xfe\xfb\x99\xd8\x01\xda\xc5\xc2\xbb\x48\x97\x2b\xa5\x08\x9a\x23\xff\xa9\x3f\xd4\x86\xb0\x24\x2d\xcb\x8a\x30\x1b\xb6\x0b\xb3\x0b\x36\xed\x85\x91\xac\x7f\x34\x85\x84\xf5\xbf\xa4\xce\xaa\xd7\xe7\xd4\x9c\x3f\x10\x9c\xb5\x06\x83\x0b\x54\x28\xcf\xd0\x8d\x42\xde\x4f\x82\x87\x57\x47\xbf\x1c\xbe\xf9\xf9\xc5\xf0\xe4\x4a\x9e\x8a\xa1\xae\xf6\xe4\x22\x42\x38\xe4\xfc\xde\x07\x99\xea\x27\x25\xd9\x27\x6e\x9c\x4c\x22\xec\x9e\x2e\x41\xf6\x5d\x41\xaf\x55\x6c\x29\x6c\xf6\xcb\xd3\x25\x10\xb3\xa7\xc3\x2b\x3e\xfc\xf0\xaa\xeb\xf0\x75\x83\x2d\x4f\x97\x4b\xa0\x3f\x19\x5e\x69\x65\x9e\xf9\x2f\xb1\x74\xf6\x6b\xd5\xc1\x2b\xd6\x66\xb5\x0d\x8e\xb2\x9b\x11\xaa\x48\xb3\x50\xf5\x74\xfc\xfe\x5f\xec\xe9\xdf\x76\xcd\x42\xd5\xb1\xdc\x89\xee\xcf\x0b\x48\x42\x17\xb8\x87\x4a\xda\x71\xd3\x03\xa1\xdc\x08\x79\x1b\x1a\xe1\xcf\x2e\x70\xe1\x3c\xd2\xfd\x0d\x69\xa3\x63\xe1\x43\xf5\xa0\x27\x70\x91\x69\x9d\x29\x09\x32\xef\x6c\xf9\xa6\xde\xb9\x4f\x28\x98\x79\xeb\x47\x40\xb9\xd2\x9d\x9e\x16\xb4\xd7\xc0\xfd\x81\xef\x11\x69\xea\xcc\x76\x69\xad\xf0\x96\x35\xc9\x05\x9a\x5c\x91\x9d\x8f\xb3\x6f\x1a\x07\x7d\x41\x02\x70\xb5\xf3\xeb\x07\x51\x27\x63\xbd\x11\xf8\x89\x69\x1c\x42\x77\x83\x39\x2d\x58\x67\x84\xe6\x5f\x69\xfd\x85\xff\x1f\x4d\x16\x24\x40\x85\x05\x00\xee\x0f\x09\xce\x84\xe3\x13\x97\x22\xc6\x84\xfa\x7a\x67\x47\x6e\xed\x21\xd3\x50\x29\x3d\x3a\xeb\xc5\x6c\xf1\x7c\xb6\xc8\x2d\x27\xf2\x63\xdd\x2b\xf0\xc4\x15\x7b\x59\x5a\x74\x20\x83\xd2\x1c\x5a\xdb\x5f\xe6\x63\x22\xc9\x43\xab\x58\x5e\x81\x80\x33\x2e\x51\xb2\x48\x97\xbb\x05\x12\x5b\x44\x8a\x53\x90\xa2\x91\xff\x68\xc2\x5d\x6b\x88\xc7\xe0\x00\x54\xcc\x95\x9a\x23\x69\x49\x9d\x20\x77\x5d\xb6\x37\x52\x1c\x37\xad\xca\x3e\x78\x04\x4e\x5c\x7e\xff\x97\x45\xfe\xf6\xe6\xaa\x75\xfa\x4d\x61\x55\x4f\x8d\x0a\x8f\xc3\x05\x9b\xbe\x23\xc9\x38\x12\x6e\xa5\xfc\xd7\x4f\x09\x99\x69\x6a\x8e\xcc\x4b\x59\xda\xc0\x7a\x73\xd5\x58\xe0\x53\x32\x8a\x95\x0d\x74\x9a\xa9\x38\xca\x5f\x8f\xd3\xce\x5d\x91\x6d\x2e\x4b\x2e\xc7\x97\xe0\x6c\x16\xb1\xbc\xb3\x30\x90\xee\x98\xfc\xef\x34\xa3\xac\x35\x1e\xea\x76\x8c\xd2\x85\xb4\x5b\x03\xe5\x81\x1f\xe8\x07\x7e\xc6\xa9\x2b\xa2\x05\x6b\xa0\xd9\xc0\x69\xe7\xbc\x6a\xd5\x4f\xc5\xf6\xfe\x54\xce\xfa\x71\x36\xeb\x27\xca\xd1\xba\x8b\x47\x41\xa3\xb9\xb9\x60\xa9\x6e\xc1\x43\xd1\x2a\xb6\x0e\x26\x2c\x7a\xba\x05\x5c\x54\x5f\x3e\x06\x4f\x4a\x9d\x54\xdb\x3c\x6a\xf6\xe5\x02\x7b\x80\x53\xca\x87\x1b\x0b\x50\x2a\xf3\x40\x99\x8a\x0e\x36\xaa\x91\x88\x85\x6d\x55\x53\x28\x11\x34\x4f\x6a\x34\x4a\xfc\x15\x8d\x58\x42\x2e\x77\x92\x28\x0c\x38\x8d\x38\x8f\x42\x44\x5c\x7f\x05\x4d\x91\xb4\x77\x71\x1e\x63\x94\x99\xa8\x34\xb5\x43\xca\x0d\x18\xa2\x44\x33\x11\x59\x74\x21\xa8\x51\x5f\x8a\x16\x09\x79\xf9\x7c\x09\x04\x35\xae\x0a\x55\x72\x4e\x93\x4c\x9e\x2a\xdc\x42\x5a\x07\x5c\x60\xaa\x34\x2e\x8f\xe2\xfa\xf7\xa4\x2d\x61\x84\x1e\x3c\xf0\xda\x3a\x4f\x1d\x1b\x5d\xdf\x07\xea\x33\x26\xcc\x0e\xe6\x61\xb4\xe6\xca\xb6\xa4\xf9\x84\xde\xcb\xa6\x8f\x64\x4e\x0c\x26\xec\x45\xee\x82\xa2\x54\xd4\x4b\xb9\x07\xef\x8a\x53\xc4\xa1\x71\x10\xde\xf6\x72\x8e\x86\x78\xe9\x0b\x8c\x25\x8b\xc2\xfa\x65\x83\xb4\x60\x6d\xc1\xa6\xaf\x85\xc5\xc5\xf5\x1f\x3c\x50\xd5\x45\xe6\x49\x5f\x76\xe8\xd9\x63\x45\x7c\x5a\x78\x2d\xf2\xfe\x19\xe7\x23\x5f\x70\xe0\xd3\x0b\xb7\x2a\xfe\x41\x3b\x91\x82\xdf\x53\xb7\x2b\xfc\x89\x9b\xd2\x24\xfa\xbd\x7f\x71\xfc\xe2\x83\x26\x7a\x89\x37\x55\x31\x0d\x61\x46\x2e\x87\x27\x6e\x10\x23\x48\x5e\xa8\xf0\x4a\xfe\xfd\xf1\xc7\x1f\x5f\xbf\xd4\x3b\x48\x6d\xca\xb9\xe0\xf6\x77\x71\x73\x6a\x82\x9b\x8c\x86\x10\x12\x9b\x6a\x2d\xe5\xc0\x17\xef\xdf\xbf\x7d\xaf\x75\xa5\xb5\x13\x7f\x0e\xaf\xd0\x97\x88\x99\xa0\xf8\xf0\xcf\x77\x2f\xdf\xfc\x5c\x9d\x06\x58\x0f\x3c\x5b\x91\x51\xac\xaf\x41\x60\xec\xb2\x23\xd6\x8f\x8e\x37\x8a\x87\xb8\x59\x3c\x7c\xb4\xf3\xf8\xbf\x83\xcf\xf1\xab\xf5\xc5\xc3\x4c\x08\x04\xee\x03\xc8\x18\xa1\xd7\x22\x0d\xe6\x1e\x6f\x46\x0e\x99\x20\x8a\x44\x08\x9c\x50\x34\xb6\x30\xc6\x4a\xbc\x10\x27\xa0\xdd\xe8\x97\x76\x99\x5b\xc1\x4c\x42\x5d\xab\x78\x2a\x77\x5b\xa3\x78\xfa\x77\xc5\x69\x36\xca\x23\x36\x32\xa4\x76\x4c\x56\x14\xe2\x4a\x71\x4b\xba\x21\xd0\x5e\x0e\x93\xd9\xd4\xcc\xbd\xd4\x89\xc8\xa9\xef\x61\x1a\xdc\x35\xd8\xd3\x9c\x86\x75\xd6\x7f\xb0\x0f\x1e\x57\xdc\xa3\x2d\x78\xcd\x74\x66\x56\x21\x85\xc6\x88\x78\xbb\xd8\xc2\x4a\x38\x5e\x25\xe4\x4e\x73\x87\xc6\x09\x8b\x02\xe4\x64\xe1\xeb\x4d\x3e\xd1\x52\x1e\x01\x22\x77\x67\x3d\x34\xa6\xe0\x0d\x73\x7c\xbf\x7b\xb0\xbb\xdf\x35\x8c\xa3\x31\xa2\x4f\x66\xbb\x76\x04\x9b\xe4\x8c\x61\x14\x4b\x7b\xf7\x53\xf9\xcd\x59\x31\xb4\xd4\xec\x6f\xec\x38\xff\x40\x0e\x91\x6e\x50\xa1\x03\x1d\xc1\x52\x38\x63\x92\xcc\x64\x24\xc7\xdb\x97\xcf\x8f\x9c\x94\x3d\x74\xce\x16\xcc\x09\x92\x45\x1c\x3a\x38\x61\x7c\x5c\x27\xc2\x0e\x4b\x1c\x05\xc8\x45\xc4\xa6\x4e\x64\x1f\xab\xd3\x09\x75\x83\x0d\xa3\xae\x3a\x8b\x8c\x0b\xee\x8c\xc3\x0f\x53\x54\xc2\xd4\x14\x52\x87\x20\x7e\xbd\xa0\x50\xe4\xc6\x73\xa0\x60\x39\x25\x82\xfb\xce\x3b\x19\x33\x23\xfd\x5f\xb0\x03\xc3\x59\x84\x23\xca\xa4\xb3\x93\x16\x49\xc3\x4f\xa2\x72\x85\x71\x32\x4f\x12\x4e\x10\xae\x05\xc9\x4f\x9f\x6e\x14\xc9\xc7\xc7\x6f\x53\xf4\x5e\x44\x38\x4c\x2e\x1c\x61\xbe\x59\x61\x93\x56\x11\xac\x3a\xbc\x80\x54\x75\x9a\xe1\x94\x91\x4b\x07\x4e\xe0\x3a\x91\x4e\x8d\xb3\x4a\xb9\xa2\x8e\x53\x30\xe5\xfe\x08\x11\x83\x51\x5c\x97\xfb\xa3\x41\xde\x5d\xf5\xd1\x36\x51\xaf\xd4\xbb\x2c\x53\xb1\x75\xdf\x12\x92\x5a\x89\x4c\x90\x28\x74\xc2\x04\x51\x71\xa4\xd1\x97\x88\xb2\x6c\x3f\x88\xd7\x0e\x74\xb4\xd1\xf8\x69\x97\x1b\xf3\xdb\xdd\x23\xf6\xfe\xe0\xa5\xfb\xb2\x53\x10\x95\x55\xb6\x99\xc7\x9c\x77\xe3\xd2\x4f\x7a\x09\x0f\x34\x05\xa1\x8d\xfe\x59\xca\x10\x6e\x7d\x78\x7b\x3a\x4a\x84\xe2\x50\xf0\x9f\x6d\x21\x74\x2a\x96\x4d\x03\xc8\x18\x74\x2f\x82\x40\x7a\x73\x48\xe9\x45\xc2\xf9\x6f\xdd\x53\x8b\x43\x8d\xc3\xf4\x4f\xc9\x56\xa7\xfc\x4d\x21\xcc\x33\x65\x26\x34\xa6\xad\x10\xae\x61\x66\x6b\x32\x5e\xcd\xe5\x97\x45\x2f\x6d\xe5\x96\xd8\x36\x73\x5c\x5a\xba\xf9\xe6\x10\x97\x71\xf1\x2a\x25\xb8\x6c\x9a\xde\xe7\x75\xe1\x46\xc5\xa8\x19\x9d\x11\xcc\x9d\xea\xdb\x26\x9f\x4a\x7b\x39\xbc\xfc\x7b\xc5\x28\xf3\xdb\xeb\x24\xd5\x0e\x9c\xba\xea\xe5\x3c\x86\x01\x9a\x26\xb1\x48\x7e\xe1\x66\xca\x03\xf5\xf6\x3c\x65\xdf\xf7\x40\xce\xd7\xca\x57\x09\x56\xa0\xae\xc6\x6a\x97\xb9\xe4\x92\xd2\x59\xf9\x2b\xa8\x07\x8d\xba\xeb\x52\xc7\xf9\x27\x6b\xf6\x9b\x1d\x08\x29\x6d\x57\xf7\x02\xc7\x82\x8c\x5b\x12\xf8\x11\xe8\x50\x19\x2f\xc0\xc9\x3e\x70\x09\x1a\x17\x85\x1d\x89\xb0\xd3\x06\xba\xb3\x69\x4e\xbe\xd3\xee\x5f\x95\xcc\x9a\xd8\xfc\xfa\x40\xd5\xc2\x45\x20\xd8\x2a\xb9\x15\x8c\xf4\x77\x85\x18\xd3\x15\x23\xe9\xea\x9f\xf1\x1b\x63\xc1\x58\x82\x0b\x14\x6c\xad\x43\x99\x07\xbc\xe5\x86\x9b\x2a\xc6\x24\xf1\xb0\x81\x0f\xcd\x0c\xd2\x08\x83\x01\x53\x7c\x6b\x81\xa1\x1d\xcb\x80\xfb\x08\x3b\x01\x41\x22\xfb\x39\x8c\x69\xbf\x5b\x6c\x21\xe7\x4f\xf0\x39\xa7\xd9\xaa\xe6\xc2\xf1\xf1\xdb\xac\xde\x82\xd5\xa6\xea\x60\xad\x15\x7f\xa7\x5b\xf7\x87\x1c\x9d\x65\x5f\xe2\x1d\xb5\x16\x42\xfe\x2f\xdb\xbe\xdc\xdc\x68\xaf\x28\xfd\x4e\xea\x20\x2c\x8d\x65\xae\xd0\xbe\xef\xa4\x3c\x6d\xc9\x2f\xba\x33\x7d\xd3\xfa\xb1\xb3\xc4\x6e\x46\x65\x51\x1a\x43\xbc\xed\x8b\xff\xa7\xfd\x71\x44\x28\x53\x01\x12\xda\xb8\x6e\x0c\x7f\xbf\x74\x4b\x8a\x97\xc2\x52\x4f\x4c\xd3\x02\xae\xf4\xc2\xe5\xb8\xdb\xb5\x5e\xf2\x82\x7e\xa0\x86\xb1\x30\x5d\xa4\x39\x03\x57\xbf\x41\x5b\x08\x84\xda\x71\xc2\xc6\x42\x51\xcc\xb1\x90\xee\xb8\x88\xa1\x99\x48\xf3\xa9\xc5\xaf\x19\xf7\x5f\xaa\xb7\xd3\x77\x49\xc7\xf3\xbf\xe2\x3a\x57\xae\xb5\x76\xd3\x76\x0d\x3f\x77\x3b\xbb\xcd\x06\x52\xa1\x10\x2f\xdf\xb3\x1d\x2c\x92\xe5\x2d\x62\x71\x9b\x66\x8b\x63\x91\x9c\x52\xb0\x6f\x65\x62\x25\x2c\xf1\x3f\x64\xa6\xf8\x1f\x14\x5d\xff\x21\xd5\x57\x35\x6e\xa3\x30\x48\xf7\x8f\x46\xb3\x74\x4d\x97\x66\xba\x2f\x90\xb3\xba\x60\x86\x92\x96\x4c\xee\x76\x37\xe7\xdd\x2c\x3f\x6b\x7f\xda\x99\x6c\x75\xd4\x3f\xcb\xb1\x72\xc7\x06\xe3\xbe\xff\xb6\xb6\x6f\x67\x6b\xb9\x6e\xeb\x5e\xd7\xc2\x9d\x9b\x6c\x32\xfb\x36\x69\xb4\x6f\x63\x9b\x30\x89\x74\x7d\x74\x1b\xe7\x12\xa4\x3b\xbe\xf8\x34\x63\x8f\x95\xe5\x94\x43\xb8\x60\x28\xf4\x0c\x11\x20\xb2\x05\x43\x94\x45\x78\xf2\xcc\x65\xe8\x0b\x73\x87\x6e\x26\x19\x2e\xfd\x35\x4d\xe3\xcc\x6c\x1a\x17\x96\x88\xaa\x69\xdc\x75\x53\xab\xb8\xd8\x2b\x5a\xf8\x4b\xfe\x70\x09\x84\xc1\xa4\x02\x91\x98\xb5\xe6\x9d\x5d\x30\xa7\x12\xfe\xb3\xdd\xdc\xa6\x9c\x86\xb6\x23\x39\xf0\x3f\x1e\xc1\xbf\xcf\x76\xdf\x98\xa3\xd6\x2a\x26\xb0\xc7\xc0\x0d\xe3\x9a\xfb\x3e\xb5\x7b\xd4\x2b\x10\x1a\xf8\x81\xd7\x97\xce\xe1\xd1\x2b\xe7\x43\x37\x75\x55\xee\x69\x60\x64\x21\x74\xa8\xc2\x46\xa8\x54\xa6\x3e\xba\x38\xa3\x2c\xa7\xdc\xc2\xa1\x0b\xb8\x9a\x3f\xc3\xe9\x29\xe8\x3d\x31\x64\xee\xab\x65\xb1\x9f\xae\x7d\xd2\x0b\xbb\xe5\x16\xf3\xed\x9e\x41\x1a\x05\xbd\x90\x24\xf3\x30\xb9\xc0\xbd\x34\xe1\x82\xa1\x24\x4b\xb1\xa5\x45\x1f\xdf\x66\x66\xf5\xd2\x64\x94\x2f\xfe\x5a\x08\x49\xfb\xf8\x23\x20\x64\x1d\x44\x7c\xab\x08\xd0\xb3\x82\x9b\x1d\xef\x6b\x9a\x7f\x9b\xf3\x95\x6c\x01\xef\xb0\x47\x11\x6b\x0b\x39\xb8\x1d\x0f\x91\x5f\x7e\x7e\xf1\x61\xfa\xdb\xd3\xf7\xab\x44\x65\x97\x44\x8f\x86\x14\x34\xc0\xfd\x41\x4b\xbe\x9a\xd3\x46\x63\xde\xd5\xf4\x6a\xa1\x8d\x19\x55\x05\x00\x8d\xfc\x65\xbd\x54\x9f\xca\xbf\xdd\x24\xfa\x4e\x73\x14\x86\x82\xeb\x9d\x9f\xad\xe1\xc8\x22\x3d\x90\x28\xc5\x5d\x93\x1c\xa8\x33\x14\xeb\x5c\xe9\xa6\x23\xb3\x2e\x07\x6f\xf6\x50\x6d\x0b\x79\x5e\x91\xe1\x6e\x09\x45\xb6\x0b\xc5\xad\x0d\xb4\x6d\x18\x7e\xd9\x94\x46\xa8\x12\xa8\xd8\x3a\x0f\xb1\x41\x53\x96\x3f\xf5\x07\x43\xa4\x1f\x42\x06\x1f\x3c\xf0\x5a\xe0\x34\x45\x09\x66\x7d\x80\xab\xb2\xbc\xc4\x4a\x92\x10\x45\x8c\xd3\x39\x75\x4c\x59\x16\x21\x0c\x19\xf4\xf9\x46\x28\x07\x35\xaa\x86\x45\x47\x51\x7d\x44\xa9\x7c\xf4\xfd\x2c\xfb\x4e\x36\x1f\x8a\x20\x09\xa6\xf2\x03\x86\xc8\x8c\xfa\x06\xa1\xa5\x8d\xcc\x47\xfc\x60\x09\x15\x9b\xa9\xa6\xc9\x36\x90\xf9\xbf\x1d\xbc\xff\xf1\xf0\x97\xc9\x91\x99\xcc\x2b\x46\xde\xc2\xc7\xaf\xe2\xb8\xb5\x0f\xf6\x2b\x9e\x4c\x83\x03\xb0\x67\x7f\x37\x88\x1b\x41\x54\x9c\xaa\x21\x40\x7b\xcd\x16\x0e\xb3\xd1\x55\x4f\xb2\x79\x39\x47\x3d\x21\x53\xd7\xc9\x64\x15\x89\xab\x05\x5c\x39\x56\x27\x68\x9b\xb2\x16\x46\xf4\xad\x1e\xc0\xd3\x9a\xe8\xcd\x32\xe4\x6b\xc3\xe6\x02\xf5\xf9\x3c\x5e\x90\x3c\x59\xfb\x81\x32\x63\x77\xd1\xd4\x96\x94\x54\x30\x8e\xdf\xce\xf3\x04\x9a\x8d\xa6\x83\xce\xe1\x1a\x2a\x8f\xe7\x05\x22\x65\x1d\xb8\x3c\xf8\x02\x67\x6a\xf4\xdc\xd8\xf2\x3a\x2d\x56\x90\x36\xab\x3c\x78\x57\x30\x23\xff\x90\x60\xb1\x82\xe2\xaf\xa3\x38\xa1\x4a\xfb\x79\x54\x5c\x0b\x93\x43\xa8\x02\x23\xc7\xda\x1e\x70\x53\x80\x4e\x81\xfb\x4a\x02\xd4\xef\xf7\x5d\xe0\xbe\x49\x9c\x79\x42\x69\x74\x16\x23\x27\x03\x5a\xea\xe7\x35\x70\x3a\xa0\xbe\xb4\xf1\xd2\xca\x08\x1d\x17\xb0\xd2\x8b\x22\x0e\x2d\x1e\xb7\x99\x9a\x58\x50\xef\x93\xd3\x74\xbf\xb5\xb3\x46\x55\xdb\xa6\x35\x5b\x26\xd1\x56\x9f\xf1\x7f\xa0\x57\x3a\x58\x85\x1a\x99\x4d\xb2\x83\x0a\xc5\x6a\xb0\x34\x5e\x37\xa3\x9a\xb2\xa7\x2b\xcc\xcf\x96\xe9\xac\xcf\xba\xbd\x96\xc2\xc7\x74\xd3\x6e\x90\x3b\x34\x2b\x72\x35\x9e\x51\x86\x29\x14\xdf\x8a\x08\x92\x76\x76\x92\xcb\x3c\x30\xc2\x88\xd4\xb4\x52\x74\xc0\x07\xe3\x84\xcc\x8e\x5a\x1a\x0b\x87\x27\x1f\xf0\xdd\x51\xd2\x2e\xf7\x61\x1c\x41\x2a\x5b\xf4\x25\xd3\x03\x24\xbe\x50\xa8\xa8\x6c\xcd\x17\x72\xab\x5d\x17\xdf\x2b\x1b\xc9\x49\x72\xee\x5e\x25\x2a\x4c\xe7\xa9\xbd\x51\xac\xd8\xe5\x1c\x69\x75\xad\x47\xd9\x5f\x19\x6a\xc4\x2f\x63\xe3\xbe\x70\x8c\xf7\xae\xf2\x4a\xcd\x32\xbb\x47\x18\x80\xcc\xc6\x24\x9f\xc8\xfb\x6f\x79\x8d\x09\x72\x96\x20\x31\x62\x9d\x2f\x78\x61\x55\xfa\x9c\x00\x6a\x77\xa1\xf8\xed\x19\x59\xf8\x7e\xde\xea\xeb\xd7\x93\x53\xa0\x32\x74\x96\x3a\xe4\xaf\xee\x15\xb8\x6a\xc1\x18\x67\xb4\xc4\xff\xcf\x5d\x11\x73\x86\x9a\x92\x70\x32\x91\xb7\xe5\xc7\x4b\xcf\x7d\xf9\x5c\xe7\xaf\x11\x70\x45\xc4\xd5\xd2\xaf\xac\xac\xe0\xf8\x91\xef\x03\x24\xd2\x5a\xa5\xe6\x06\xd9\xa0\x2e\x67\x4f\x5a\xec\x12\x5d\x38\xef\x48\x32\x8b\x28\xd2\xc0\xc9\x4a\xb9\xb3\x8a\x60\xa1\x8d\x5b\x95\x2a\xf8\x34\x3c\x1f\x60\x0f\x95\x05\x88\x7b\xfa\x87\xa9\x08\x80\x64\x2e\x15\x11\x63\x52\x59\xfc\x55\xf7\x15\x85\xe7\xc5\x12\xe6\xaa\xf4\xb0\x98\x36\x20\xd5\x6c\x63\x7b\xc6\x6c\x63\x7b\x7a\xb6\xb1\xbd\xd3\x22\x09\x52\x99\x85\x08\x9a\x27\xf7\x0a\xf2\xd3\x91\xe0\xaa\x3f\x44\xfc\x16\x14\x59\x4f\x9e\x43\x86\x7c\xbe\x80\xfc\x99\xc7\xd7\x68\x04\xfb\x73\x44\x68\x44\x99\x87\xcc\xc2\x1b\x02\x57\xaa\x76\x53\x3e\x2a\xf4\xaf\x70\x9e\x2c\x47\xa0\x5d\x9d\x0b\x0c\xb2\x58\xac\x2b\x2c\xa8\x66\x76\xbb\x4b\x09\x86\x2d\x97\x80\x01\x28\x96\xe2\x94\xcb\x32\xda\xc9\xf3\x7c\x40\xf8\x91\x29\x91\x59\xe6\x5f\x95\x9b\x61\x69\xb6\xf4\x98\x48\xda\x02\xe4\x69\xab\xc5\xb3\x8c\x26\x9c\x20\x76\x1c\x2f\x26\xbf\x22\x31\xce\x48\xdf\xcc\xd8\xe7\x48\x6c\xc9\x51\x54\xfc\x60\x34\x92\xe6\xac\x68\xec\x89\x14\xb4\xd0\xcf\x34\x84\x69\xb6\x1e\x0f\x82\x81\xca\xd4\x95\xc7\x1e\x2a\xe4\xf0\xa7\x1c\xf2\xca\x9e\x95\xb9\x43\xc4\x7e\x07\x70\xe4\xe5\xb9\xbd\xfc\x3e\x4e\xc8\x4c\x70\xde\x22\x6f\x8d\x42\x38\xd1\xa9\x10\x1d\xb1\x7b\xf4\x22\x62\xc1\xd4\x83\xe9\x9e\x17\x49\x3f\xaf\x44\x01\xaa\x74\x29\x86\xf9\x2e\xc1\x36\xbb\x84\xf6\xe7\x0b\x3a\x55\x29\x50\x71\x25\x3c\xb4\x38\x25\x93\xd1\xaf\x45\x7e\x4e\x42\xd4\x43\x61\x64\x14\x9e\x4b\x36\xbf\x2c\x43\x26\x2b\x94\x41\xb7\xcc\x06\x8b\x6a\x12\xb5\x9a\x8a\xa1\xcb\xac\xa0\x5f\xbf\xde\xf7\x1a\xd3\xc1\xa6\x19\x5e\xe5\x6e\x3b\x39\x05\x64\x74\x7f\x17\xc0\xd1\xfd\x01\xa0\xa9\x7c\xce\xc8\xe5\x55\x56\xbf\x18\x44\x23\x64\x48\x39\xfa\xfd\x7d\x8f\x8c\xbc\x64\x14\xc9\x44\x50\xbe\xdf\x0f\x13\x8c\xfc\x07\x0f\x3c\x2c\xb0\xef\x25\xd2\xf0\xea\x83\xfb\xec\xeb\x57\xac\xc8\x85\xa8\x05\xfd\x3d\x1f\xd2\xff\x5e\xd5\x3e\x8f\xfd\x2b\xc8\x41\xa0\xa3\x78\x39\x8e\x30\x8c\xe3\xcb\x2b\x51\x6b\xfd\xeb\x57\x19\x34\x1c\xf5\x25\xc8\x5f\xbf\xa6\x7f\x79\x7e\xd6\x32\x1a\x7b\x50\x15\x97\xa6\x4b\xad\x06\x31\xc7\xd4\xea\x19\x6e\x71\x9e\xe1\x96\xac\x9e\xe1\x96\x54\x33\xdc\x92\xb6\x0c\xb7\x24\xcf\x70\x4b\x2c\x33\xdc\x92\xee\x19\x6e\x89\x5f\x9c\x69\x05\x5f\xf6\x39\x6e\x43\x24\x27\xb3\x10\xa5\x73\x6e\x29\xd1\x2d\xbe\xb1\x44\xb7\x44\xa7\xd5\x6a\x67\x7c\x46\x97\x54\xad\x4c\x5e\x00\xfe\xed\x05\x4e\x75\x63\x72\x1a\x34\xe5\x0a\x9a\xda\xf0\x6e\x98\xd8\x27\xa4\xca\xe6\xe4\xe4\xc3\xd8\xc5\x73\x44\x03\x12\xcd\x59\x22\x61\xec\xe7\xe6\x21\x91\xa8\x4e\x1e\xcb\xec\xda\x23\x7e\x7e\x5a\xf4\x34\xbe\x7e\x76\xf2\xd9\x68\xf0\x3d\xfb\x8f\xf2\x85\xff\x3d\xfb\xee\xbb\x74\xfe\x58\x54\x77\xcf\x2f\x7a\xa6\xdf\xfa\xec\x74\x78\xb5\xbc\xc7\xfe\xcf\xde\x33\xe2\xe5\xa4\xf8\xfe\x6e\x4d\x5e\x74\x2a\xaf\x92\x13\x76\xca\xd9\x9a\x61\xcb\x0c\xa9\x31\xb5\x70\x84\x78\x2f\x6d\x9f\x7a\xd8\xf7\x87\x1a\x4c\x35\x00\xd5\xe7\x2e\x6e\xc3\x3e\x06\x4c\x70\x9a\xcb\x8c\x8a\x67\x08\xa6\xdf\x62\x9e\xe4\xa4\x59\x55\xbb\xfb\x73\x38\xfe\x2d\x7c\x72\x6c\x56\xd5\xce\x92\xb0\xb9\xd8\xe7\x43\xe0\x46\xe7\x97\x3d\x7e\xa9\xce\x22\x15\x1c\x2c\x85\xff\xcc\x45\x2f\x0b\x5c\x56\x0a\x52\x5d\x03\x26\x1a\x7d\x9c\x87\x90\xa5\xf9\x8b\xb3\xb0\x08\xa5\x9d\x4a\x75\x08\x7b\x59\xcc\x6e\x45\x6d\xd5\xe6\xe5\xf6\x19\x5d\x2e\xe6\x6e\x5d\x52\xa6\xc7\x22\xc5\x43\x41\x1f\xfb\x18\xb8\x81\x98\xb8\xf6\x4c\x69\x99\x9f\x36\x2b\x53\xb4\x28\x1a\x3d\x32\x80\x20\x18\x26\x38\xbe\x2c\x3b\xf6\xe9\x6d\xe8\x25\x66\xf0\x4b\x45\xb3\x69\xa1\x79\x31\x2a\x1c\x33\x75\xa0\x50\x22\x4a\x59\x2d\x57\x28\xbe\xc0\xb9\x23\x6e\x8e\x47\xfb\xac\xd7\x7b\x40\x6e\x0d\xa5\x7d\xcb\x9f\xd0\xc6\x70\x7b\xbd\x42\xea\x00\xa4\x29\x76\xaa\xbe\x3b\xcd\x2a\xad\xc6\xca\x69\x2b\x2b\x7b\xca\x6c\x61\xa6\xe9\x89\x46\x57\x0c\x9e\x1d\x47\xbf\xa3\xe1\x1e\x88\x23\x8c\xde\x2c\xf8\x81\x12\xc9\x86\xd9\x14\xf1\x1e\xa7\x90\x4e\x23\x17\xd0\x69\x72\x71\xb4\x20\x34\x21\xff\x98\x22\x7c\x2c\xb0\x1e\xe1\x89\xb0\xef\x2f\x18\x87\x75\x78\xe2\x1e\x25\x21\x7a\x2d\x8e\x4a\x2f\x8e\x30\xeb\xcd\x20\xf9\x2c\x5d\x9d\xf9\x4f\x7e\x90\x41\xdc\xa8\x5b\x4a\x6a\xdd\x89\xb2\xc4\x61\x75\x4a\x1f\xf9\xda\xf5\x5b\xf5\x47\x53\x14\xcf\x6b\xf5\x41\x02\x55\xf2\xb4\xef\x70\x98\x45\x32\x9d\x42\x41\x13\x0d\x99\xee\x29\x48\x77\xff\x90\x73\xa9\x62\x97\x4b\xef\x46\x71\x2e\xcb\xce\x8d\xc2\xa5\xaf\xec\xdb\xb8\x6e\x46\x67\xb9\x33\xa5\x24\x21\xa7\xd6\x17\x8f\x3c\xbf\xd9\x90\xd9\xa9\x0e\x86\x9c\xef\x3d\x91\x6e\x94\x22\x26\x15\x23\x9e\x38\xfb\x6f\xf9\xd9\x07\x4a\x38\x94\xc8\xe0\xd2\x3a\x62\xaf\x93\xb0\xa8\x42\x28\x43\x9e\xd1\x4a\xe8\x41\x8f\xe3\xc2\x07\x57\x4b\xc0\xb7\x33\x1a\xa2\xfe\x2c\x9a\x21\x90\x0e\x30\x2c\xf4\xbf\xf4\x0b\x05\x55\x14\x70\x4c\x87\x4c\x12\x77\xd9\x8b\x5f\x40\x0e\x5f\x55\x8f\xf1\x57\x49\x88\xcc\xe8\x74\x01\xda\x94\x22\x2b\x39\xe3\x5b\x0b\x11\x95\x8c\x27\xfd\xd9\x0f\x23\x1a\x24\x18\xf3\x7b\xbe\x25\x55\x76\x17\x83\xf3\x3d\x4d\x52\x2f\xe4\x1b\x66\xe8\x0b\x83\x04\x41\xe7\xff\x39\x73\x82\x1c\x75\x03\x08\xe4\xc9\x26\xfe\x3d\x2c\x1d\x97\x8f\xa6\x51\x1c\xa6\x66\xe9\x14\x5c\xc1\x8d\xbe\x5e\xc8\x1c\xc2\x6f\xd5\x43\xa3\x5e\xc9\xc3\x60\xe0\x9f\xec\x9e\xde\x43\x7d\xb5\xdf\xbd\x82\x22\x45\xdd\x9c\x24\x95\xa9\x2f\xa6\x49\x8c\x3e\xa0\x2f\x4c\xd3\x80\x65\x48\x52\x7f\x78\x18\x5c\xc1\x34\x9b\x2e\x15\x27\x6d\x71\xc6\x08\x92\xfc\x06\x87\xf7\x55\x44\x19\x7f\x1e\x4c\x21\x81\x01\x43\xe4\x39\x64\x50\xf2\x0d\xe5\xf5\x55\x00\xe8\xb3\xd5\x81\xa8\x26\x19\x96\x27\xbd\xb0\x85\x26\x88\xbd\x10\x8f\xbd\x02\x0a\x33\x05\x9e\x24\x45\x4a\xe1\x77\x1c\x2f\x26\x5e\x81\x6a\xf8\x7d\x36\x45\xb8\xc8\xd3\xc9\x85\x93\x9b\x92\x02\x2e\x8c\x49\x6a\x72\x8f\x08\x29\x01\x8b\xce\xcc\x09\x9f\x85\xa8\xd6\x67\xc9\x2b\x7e\x55\x1e\x41\x8a\x3c\x7f\x34\x22\xc5\x07\x82\xcf\x66\x5c\xfe\xc0\x27\xbb\xa7\x40\x1c\x62\x7e\x3e\x65\xa9\x1e\xb1\x01\x0f\xe7\x73\x04\x49\x65\x8b\x4b\x98\xfb\x04\x8d\x09\xa2\xd3\x42\x26\x72\x83\x96\xb0\x88\x80\x54\x1f\x76\x55\x98\xfe\x10\x2d\x73\x4c\x09\x20\x50\xc5\xbf\x39\xb6\x50\x75\xe0\x71\x44\x66\xb2\xb6\xb6\x08\x1e\xdc\x91\x80\x6d\x87\xb3\xf3\xaf\xe7\xff\x08\xc7\x6f\x76\xbf\xeb\xea\x0c\xf6\x18\xb8\x71\x64\xb4\xbd\x87\x1c\xd9\x24\x59\xd0\xb2\xed\xbd\x26\xd2\x70\x17\x94\xf2\x4e\x67\x11\xdd\x32\x4b\x73\x2b\x6b\x29\x9b\xe9\x86\x64\x2d\xfa\x50\x8d\x96\x33\x90\x03\x83\x43\xf2\x46\xd2\xec\xb5\x2c\xf4\x2d\xfa\x29\x1b\x20\xdb\x8a\xbd\x47\xde\x9f\xed\xfd\x32\x7d\xfa\xbc\x65\xef\xd5\xbb\xa6\x14\x3c\x12\xdb\x92\x0c\x55\xb1\xa0\xb2\x0d\xed\x99\xf7\x69\x7d\xe9\x5c\xd5\x40\x55\x61\x6d\x72\xa2\x5f\xb9\x8e\x6b\x9b\x13\x5e\xbd\x67\x7f\x5b\x85\xdc\x24\x5c\xc9\xeb\xcf\x1c\x7a\xf6\x18\xb8\x8b\xa6\xe0\x87\x2e\xfe\xa1\x7c\x71\xea\xac\xf4\xe5\x5c\xb1\xb5\x67\x4d\x48\x50\x39\x4d\x68\x0a\x9c\x32\x13\x0f\x5b\x27\x04\x37\xa7\x26\x96\x65\x3a\xb5\x9d\xa3\x51\xce\x9a\x80\x90\x6a\x3e\x89\xb1\xcc\xf9\x95\x49\xe3\x5a\x20\x34\xc4\x01\x8a\xdb\x82\x47\x37\x1e\x8a\x51\x47\x55\xb6\x85\xd0\xd9\x65\x7d\xaf\xf8\xe6\xdd\x95\x9e\xbb\x2b\x3d\xf7\xe7\x28\x3d\xb7\x99\x3b\x1e\x36\xdf\xf1\x41\xf2\xe5\xe2\x60\xf2\x8f\xc1\xca\x77\x7c\xc3\x95\x5e\xf2\x76\xbc\x88\xd8\xb4\xa7\x93\x00\xb7\x12\x05\xac\xde\xaa\x70\x68\xd7\xd1\x7e\x9b\x52\xe1\x54\x98\x83\x0a\xd5\xef\x74\xc9\x65\xd7\x50\xdd\x1d\x67\x54\xfb\xa9\x9b\xb1\xdd\xb9\x2e\xbd\x06\x8a\xc1\xb9\xb6\x49\x54\x34\x1f\xd1\x39\x22\x33\x88\x55\xed\xe0\x8a\x8e\xb4\x80\x43\x7b\x3d\xa9\xe1\xca\x6c\xd4\x21\x36\x05\x79\x58\x63\x3c\xad\x90\xd2\x09\xe3\xe8\x0b\x0a\x16\xcc\xa2\xbe\x60\x11\xe3\x8a\xa5\x50\x9e\x13\x79\x34\xb9\xfc\xb2\x90\xd4\xd1\x76\x59\x6a\xd0\x7d\xfd\x08\xde\x1c\x63\x60\xcc\x3b\x4e\x1b\x39\x03\xd8\x2d\xaa\x23\x75\x55\x71\x0f\x09\x72\x2e\x93\x85\x43\x17\x04\x3d\x73\x41\x8e\xb8\xe1\xfd\x01\xc8\xf6\x34\xff\x91\x6b\x06\xc4\x0a\xea\xba\x84\xb2\x5a\x45\xa7\x10\xf7\x07\xfe\x12\xa8\xdd\xd1\xe1\x9b\x54\x87\x80\x43\x99\x6d\xb7\x50\x65\xaa\xb0\x3d\xd2\x62\x5b\xaa\x26\x59\xae\x2f\xf3\xfd\x65\x3a\x9f\xaa\xca\x4d\xde\xa1\xf9\x1d\x2e\xae\x6c\x79\x81\xeb\x5a\xbe\x11\x3a\xd9\x3d\x05\xfc\x96\x96\x77\xfa\xc0\xaf\x54\x8a\xd2\x60\x01\xac\xaa\x62\xca\x7a\x73\x01\xae\xbe\x2d\xcc\x7a\xb7\xa2\x29\xa1\x36\xdc\x1b\x7f\xc8\xf9\x34\x8a\xc2\xde\x1c\xb2\x69\x2f\x8e\xe8\x96\x08\xab\xc7\x6f\x5e\x2c\x92\xb7\x8f\xff\xcb\x7c\x91\x71\x60\x65\x11\x9d\x33\xce\xe5\x1d\x86\xa1\x2a\x3c\x5a\xbd\xcd\x8c\x02\x93\x3a\xf7\x08\x06\xd3\x9a\x80\xb1\x7a\xeb\x53\x93\x40\xd1\x28\xcb\xba\x95\xea\x24\xd9\x65\xaa\x48\x57\x3a\x8d\x53\xe0\x0e\xdd\xcc\x62\xf4\x0e\x0a\xc7\xe4\x0e\xc5\xf3\x2b\x39\x73\x73\xa1\x5c\x22\xac\x97\x0d\xd5\x90\x64\xcf\x14\x25\x5f\xc9\x2d\x36\xd0\xb2\x36\x9b\xb3\x5c\x9a\xb2\x4c\x65\xe2\x6a\x90\xcc\x2f\x7b\xa9\x8a\xca\x68\x45\x3d\x95\x77\x80\x1c\xc1\xcd\x56\xfa\xb4\x31\xd7\x56\x95\x12\xef\x19\x72\x1f\xd6\x45\xea\x37\xad\x5e\x34\xce\xfd\xd8\xdd\x77\x9c\x08\x04\x49\x6c\x19\x58\x52\xcc\x5d\xa0\xaf\xcb\x3c\xeb\xa8\x61\x3d\x1a\xf2\x1a\x14\x72\xca\x24\x31\x8b\xe6\x0a\x9b\xa7\x02\x6d\xcd\xee\xfd\xf2\x5f\x3a\x97\x52\x9f\x2b\xa6\x3e\xb3\x49\x7b\x50\xb5\x8d\x6a\xf8\xec\xb0\x99\xec\xb3\x36\x95\xd7\xef\x95\xf2\xc3\x7c\x97\x10\xb6\xfe\x1a\x26\x75\x89\xea\x6e\x66\xfd\x12\xc2\x6e\x76\xed\xa4\x17\x6b\x84\x27\x4e\x82\x9d\x61\x71\x25\x4b\x98\xbd\x99\xd5\x4c\x02\x18\x73\x62\x79\xb7\x9c\x2b\x2d\x27\x47\x9f\xc3\xa7\x5d\x59\xcc\x12\x62\x6f\x64\x35\x0b\xb7\xde\xca\x8b\x28\x3a\xb9\xbd\x45\x84\x6c\x7a\xab\xf4\x54\xe2\xf0\x5a\xd6\xab\xe6\x16\x6d\xeb\x60\x90\xf7\xb0\x39\x43\x50\x03\x1f\x7b\xbb\xea\x51\x09\x18\x43\x04\xc3\x58\xc5\x93\x6e\x07\x7b\xfd\xe1\x6f\x4f\xf7\xf1\xef\xbf\x63\x33\x7b\x9d\x82\x7c\xac\x22\x60\x1b\x0c\x93\xa5\x38\x5b\x51\x80\xae\xa1\x96\x82\xc6\xfc\x6a\x9f\x7d\x2a\x0d\x98\x09\xf3\xc6\x17\x4f\x80\xab\xfc\x72\x76\x4a\xb8\x35\xc3\xd1\xc2\x39\x97\x08\x8f\x45\x25\x88\x87\x22\x84\xcf\xa6\x78\xc5\xe0\x80\x33\xae\x46\x83\x8a\x61\x6b\xb8\x79\x11\x3f\x50\x9d\x7a\x69\x6e\x79\x16\xc2\xf6\xa8\xdd\xf6\x12\x1b\x05\x5e\xbf\x90\x4f\xfb\x69\x2d\xb8\x8e\x5b\x80\xa1\x9e\x59\xce\x73\xcf\xa7\x79\x13\x5d\x78\x41\xbb\x65\x9b\x6f\x90\x49\xde\xa3\x09\xe7\x36\x08\x0a\x9d\xf3\x08\xea\xd9\xb4\x16\xf3\x39\x22\x22\x30\xa3\x1a\x7b\x9a\x11\xc5\x16\x72\x77\x1d\x70\x05\x70\x1e\xb1\x3c\xc4\x7b\x25\xc0\x8a\x59\x8a\xdb\xe9\xb6\xb5\x6e\x6a\x50\xaf\xb4\xda\x80\xc7\x61\x3d\x49\xbc\x7d\x4a\x9d\x9a\x1b\x7a\xa2\x42\x07\xdd\x0e\x4a\xfd\x98\xbd\xdc\xfd\xe5\x97\x3d\x73\x81\xa9\x06\x72\xbc\x66\x98\x73\x5d\xe5\x88\x29\x82\x31\x9b\x1e\x71\x04\xb9\xc0\x15\x88\x12\xbb\x4d\xe5\xb7\xe9\x90\xb5\x37\xac\x49\xe0\x5f\x3f\x4a\xbd\xfd\xb6\x91\x8d\x5b\x83\x89\xab\x3f\xb3\xd5\xb4\x0c\x3a\x97\xe5\x08\xd0\x69\x01\x08\x8b\xa0\xf6\xda\x74\xdc\x55\xae\xef\x4d\x92\x01\x97\x26\x8d\x2f\x42\x20\xf7\x70\x9b\x99\x7a\xad\x1a\x33\xa5\x55\x4a\x16\xa9\x09\xc3\xb8\xe3\xee\xf6\xc6\x4d\xed\x8d\xc3\x38\xb6\xda\x1c\x85\x82\x24\x45\xb4\xe6\x85\x61\xaa\xb7\xd1\x8a\xbb\xe8\x6e\x85\x37\xb4\xc2\xe6\x15\xcb\x8e\x9f\x06\xc8\x8e\xbe\xc0\xd5\x2b\x40\x07\xf9\xd6\xf7\x4b\x47\x96\x65\x4d\x0e\xc4\x78\xd5\x6f\x90\x03\x01\x1a\x7a\x2a\x89\x09\xc4\x4a\xd4\xa4\x1f\xd8\x05\x6c\xb4\x0b\xf0\x68\x37\x0d\x33\xce\x73\x85\x19\xa2\xbe\x88\x7f\xa5\x9a\x91\xfe\xb1\x58\x02\x15\x88\x1c\x90\x88\x45\x01\xc7\x0f\xfa\x6e\x34\xb8\x77\x46\x10\xfc\x7c\x4f\xbc\xb9\x80\x04\x47\x78\xe2\x0e\x59\xe9\xc5\x1c\x52\x2a\x5e\xe0\xef\x46\x03\x51\xb7\xf3\xfe\xae\xec\x4d\x56\xb1\x1d\x4a\x4f\x86\x2b\x81\xb1\x61\x3e\x02\x90\x6b\x3f\x74\xc7\x30\x8a\x55\x65\xd0\x05\x66\x43\xb4\xbc\x97\x7d\xcc\x4a\x1f\xa7\x40\x64\xdf\x8a\x7a\x36\xd9\x53\xd9\x01\xd3\x3a\xc0\xa5\x0e\x52\x60\xb3\x0e\xb2\x07\xf2\x5b\xbc\xbc\xa7\x58\xad\xd2\x87\x92\x4f\x11\xd6\xb2\x95\xb9\x44\x86\xb0\x30\xb6\x9a\xab\x96\xde\x06\x93\xf8\xb7\x27\xd3\xc9\x43\xf4\xa6\xc6\xed\x03\xce\x23\x37\xb7\xb3\x67\x86\x74\x90\x19\xcf\x73\xb7\x07\xe0\x46\x2a\x73\x64\x5e\x0c\x5e\x09\xdb\xe6\x47\x6f\x12\x16\x8d\xa3\x00\x2a\x6f\xc0\x6a\xa8\x9c\x48\xa5\x25\xeb\x47\xb5\x24\xb8\x87\x0b\x96\x8c\xa3\x98\x03\xf6\x83\x12\x82\xcd\x95\x3b\xf4\xda\xf4\x79\xce\xfb\xbd\x0c\xbe\xd3\x74\x16\xca\xfd\x63\x4f\x94\x2a\x92\x7d\xab\x96\x69\xa5\x7c\x51\x86\x88\x64\x49\xf3\xad\x02\xc1\x3a\xe6\x97\xb7\xa8\x03\x50\x48\xdb\x5a\x4e\x1c\xd9\x5c\x9d\x27\xbf\x28\x54\x5d\x02\xad\x30\x81\xcd\x2d\x67\x34\x17\x8a\x35\xc3\xfa\xca\x0a\x77\x9d\xd6\xf2\x9b\x02\x56\x47\xff\xb0\xb7\x10\x81\x8e\x6e\xb3\x76\x80\x32\x48\x18\xed\x71\x22\xc0\x4f\x52\xb8\x98\xc7\xfc\x7b\xe4\x64\xcb\xe8\x8c\x93\x05\x0e\x35\xa3\x68\xa5\x7e\x5a\x07\x6d\x82\xdb\x5c\xb7\x2e\x1d\x52\xd4\x99\x33\x70\xd0\xf2\xdf\x21\xd6\xa0\x83\x31\x41\x30\xbc\x54\x9f\x88\x82\x38\xa2\x2a\xa4\xd4\xdd\xf4\x9e\x8b\xbc\xf3\x02\x21\xce\x1c\x46\xa4\x52\xbc\x2e\x8c\xc6\x63\x44\x10\x66\x8e\xb4\xd0\xca\xa6\xc9\xd8\x39\x96\x07\x8d\x02\x27\x21\x8e\x8c\x63\x74\xd8\x54\x43\x0c\x75\x58\xe2\xa0\x30\x62\x0e\x54\x10\x47\x78\x92\xbf\x5e\xad\x00\x5e\x23\x82\x84\x0b\xdf\xfd\x3a\xb4\x7c\x98\x22\x82\x44\xdd\x46\x0e\x8f\xd8\x0f\x14\x9e\x73\x98\x44\xe1\xa0\x12\x60\x35\xa1\xa4\xc5\x25\xce\x79\x8b\x0d\x2e\xbe\x21\xaf\xfb\xa0\xd2\x7f\x95\xab\xd9\x05\xee\xb0\xa4\x64\x5f\xa5\x92\x5f\xb3\x57\x90\x0e\x6a\x95\x25\x6c\xf5\x79\xae\x28\x74\xf4\x40\x52\x7b\xc2\x23\x0b\x04\xd7\xd1\x8f\xb2\xdf\xfd\x1a\x19\x13\x4b\x79\x12\x2b\x69\x11\xd5\x65\x43\x2d\x3c\xc4\x44\xa2\x95\xf4\xcc\xe4\xc4\x22\xcd\x6e\x58\x09\x86\x6e\x2f\x43\xf5\xe6\xf8\xdd\xe1\xd1\x8b\xe3\x6e\xa5\xa8\xba\xe3\xc5\xdd\xf9\xeb\xce\x5f\x77\x70\x9a\xe4\x88\x36\x14\xb8\x96\x93\x7c\x93\xb7\x6b\x99\x63\x8b\x11\xa7\x52\x84\x71\xb5\x52\x8f\x1c\x84\x6a\x69\x15\x8d\xe8\x57\xef\x9c\x4a\xb9\xc7\x72\x15\x34\x35\xb1\xf4\x89\x51\x04\x74\xcc\x7e\x1b\xda\x4d\x35\x21\xc9\x62\x6e\x36\x02\x36\x01\x53\x57\x6f\x4e\xb5\x9f\xee\x55\xca\xe1\x66\x7a\xfa\xa6\xfa\x9f\xcd\xc5\x2b\x9f\xa6\x35\x2b\xb3\xc8\x76\xcd\x52\xa2\xad\x33\xc8\xa8\x8e\x1c\x35\xab\xce\xa3\x15\x9b\xd4\x77\x42\x7d\xf1\xbc\x06\xfd\xb5\xec\x3a\xbd\x82\x9a\x26\x66\x0c\xcb\xef\x49\x07\x61\x99\x77\x36\x0b\xd1\xcf\xf3\x20\xc8\xdb\xec\x27\x8e\x77\x73\xc0\x7e\x29\x03\xe8\xd9\x22\x8a\xc3\xe3\xc5\x64\xc2\x2f\x53\xc1\x92\xfc\x20\x82\xcf\xc5\x00\xff\x98\x66\xc9\x41\xd5\x80\xe5\xec\xa0\x7b\x19\xd7\x2a\xfc\xc4\xa4\xd7\x9d\x78\xac\xa3\x10\xb8\x1f\x2e\xe7\xc8\x51\x2d\x1d\xac\x5a\x35\x1f\x45\x74\xf1\x4a\x2e\xa9\xfb\x91\x22\x07\xa6\xf5\xb2\x15\xe2\x9c\x00\xc6\x31\x0a\x9d\xff\xf9\xcb\xd5\x15\x43\x64\xb6\x5c\xfe\xcf\x5f\xda\x49\x59\x44\x3f\xe2\xe8\x37\x59\x2a\x53\x56\xb7\x4c\x61\xb7\xaa\xd4\xc5\x77\x4a\x4a\x5d\x4e\x4b\x53\xdc\xc0\xd7\xf6\x7e\xce\xb9\xe1\x67\x17\x9c\xe4\x55\xa4\xfe\xda\xb5\xd6\xb0\xfe\xef\xaf\x8e\x77\x18\x67\xf8\xa5\xfe\xca\x45\x7e\xcb\x3b\x58\x5d\xea\x3a\xa4\x16\x55\x79\x81\xa9\x63\xc3\x35\xbc\x6b\xb0\xf5\x97\x8e\x61\xb5\xec\xe2\xb1\xe4\xf9\x38\x47\xa9\x33\x78\x6a\x3b\x08\xb6\x50\x31\x91\xf8\x32\xdb\x71\x22\xf2\xb7\x8d\x12\x59\x57\x62\x5c\xf9\x0a\xbc\x76\xaa\x77\x7c\x5d\x34\x4f\xab\x94\xf6\xcd\x53\x3d\xac\x38\x05\x23\xd1\x3b\xce\x48\x5e\xc6\x7b\xac\x47\xf4\x32\xcc\x6d\x86\xec\x65\xc0\xaf\x41\xf5\x8e\xd7\xa0\x79\xc7\x6b\x50\xbc\xa7\x1b\x22\x78\x8a\xdc\x65\x98\xdd\x08\xc1\xcb\xc9\xdd\xd3\x6b\xa1\x76\x4f\x37\x48\xec\xb2\xad\x59\x22\x77\x6f\x0a\x5b\xb6\x13\xc1\xb3\x2c\xfd\x5b\xe7\x8c\xe5\x6c\x92\x71\xd4\xb4\x03\x37\xcd\x3d\x6a\x43\x5f\x0b\x0b\xa9\x2b\x3e\xfe\xf0\x7c\x64\x05\x99\x7f\x50\x66\xb2\x3a\xcf\x4d\x75\xb1\x02\x91\x7d\xf2\xad\x70\x95\x4f\xae\x85\xcc\x3e\xb9\xe3\x29\xaf\x83\x16\x6e\x9e\xb1\xd4\x29\xe1\x1f\x9f\xbb\x2c\xe1\x72\x43\x2c\xe6\x78\x21\x92\xb6\x6e\x21\xa7\x59\x9e\xef\x66\x3a\x58\x81\x1c\x3e\xde\x34\x39\xdc\x2c\xd7\xa9\x13\xc4\xc7\xd7\x42\x10\x1f\xaf\x42\x10\x7f\x12\xf6\x1a\x24\x52\x03\xab\x55\x00\x22\xb6\x75\x06\x2f\x9d\x60\x9a\x24\x7c\xfb\xe1\x4b\x6d\x03\x73\xda\x79\x31\x8d\x82\xa9\x68\x26\x93\x0d\x88\x22\xad\x37\xcb\x85\x36\x3d\xaf\xd7\x88\x12\x18\x46\x49\xa6\x16\x2d\x90\xcd\x16\x1a\x79\xa8\xb2\xbe\x98\x89\x63\x53\x84\x25\x3f\x09\x84\xc0\x4b\x57\xd6\x23\x4a\x2e\x84\xc5\x04\x5b\xba\x0c\x56\x66\x56\xa4\xfc\xdd\x29\x72\x9d\x23\xee\xa3\x66\x47\xdc\x9a\xee\x45\x42\xbb\x02\xa6\x55\x70\xfc\x61\x96\x25\x87\x63\x59\x05\x36\x6a\xe3\x48\xe4\x4f\x51\xf0\x59\x6a\xbc\x9f\xd4\xf9\x4c\xa7\x0b\x91\x2f\x40\x05\xda\xac\x1f\x2d\xa1\x82\xcc\xeb\xa5\x4c\xe7\xd6\xe4\xc8\x98\xd9\x4b\x6c\x1a\xb7\xa6\x0c\xb2\xed\x06\x7f\x54\xb3\xc3\x5b\xf6\xb1\xcd\x3d\x2f\xca\x8f\x59\xdd\xf2\x22\xeb\x71\xc3\x36\xae\xbf\xe3\x9b\xef\xf7\xb4\x5f\xc7\x93\xd9\x26\x61\xec\xb7\x4a\x8f\xb5\x3b\xa7\x00\x67\x65\xfb\x68\x13\x2b\x4e\x48\x75\x32\x2f\x5c\xf3\xf5\xb0\x6d\x72\x83\xe8\xf5\xdf\xec\x69\x55\xf1\xa9\x21\xde\xa9\x36\x2d\x58\xa1\x59\x39\xcb\x5d\xc9\x92\x94\x27\xdc\x28\xe0\x2e\xa2\x2a\x11\x8d\x6e\x5c\x2e\xd8\x9b\x0c\xf3\xcc\xbd\x4f\x52\x76\x1a\x9e\xd7\x72\x72\xf5\xe0\xd9\xe7\xdb\x53\x69\x2f\x4e\xeb\x4c\x7d\x76\x86\x33\xfd\x28\x23\x51\x9c\xaa\x31\xa3\x55\x85\xc5\x48\x73\x92\xc8\xbe\x23\x7a\x94\x16\x14\xec\xe0\x47\x8e\x13\xd6\xd3\xfc\x87\xa5\xa9\x31\x0d\x78\x91\xc5\xcd\x5d\x88\x13\x7c\x39\x93\xf9\x0c\x3b\x19\xf5\x1f\x96\x72\xce\x65\xc9\x48\x24\x97\x9c\x25\x0a\x01\x27\x85\xd4\x15\xe2\x8f\x0b\x88\x55\x6d\x80\x18\x31\x24\x7d\x37\x32\x47\x90\x67\x6d\xde\x37\x05\x18\x9a\x4c\xea\x30\xa3\xde\x36\xd1\x83\xa5\xbd\x63\x4a\xb2\x27\x28\x9f\x04\xda\x55\xaf\x5a\xf7\xc1\x9e\x21\x59\xe3\x7e\xed\xb9\x7f\x58\xa0\x00\xe9\x50\x3a\x8d\x7c\x9e\x0d\x5f\x47\xe9\xca\xb7\xc0\xc3\x1a\x1e\xcd\x02\x83\x6a\x51\x3b\x60\xf0\x21\x50\x50\x97\x73\x15\x15\xb7\x05\x70\x7f\xc8\x1d\xe4\x7e\xc8\x52\xcd\x08\x6c\x1c\x64\x38\xd8\xcb\xfe\xda\xcf\xa2\x9e\x6c\x66\xbc\x07\xf6\xc1\x81\x71\xd6\x8d\xfe\x1c\x5d\x5c\x47\x0c\xf7\xaa\x91\xb6\x1a\x1e\x76\x84\xa1\x92\x97\x7c\x6d\x5f\xdc\xaa\x43\xe5\x26\x5d\x71\x13\x2c\x37\x40\x25\x87\x6d\xea\xd9\x50\x57\xee\x37\xa5\xbd\x2b\x7c\x28\xdf\x97\xaa\x48\x65\x69\x70\x0a\x6e\x2a\xe6\xa2\x4a\xa2\x7c\x53\x7f\x81\xa3\xdf\x7e\xbc\xf4\xa4\x9c\xe4\xf7\x59\x22\x13\x8d\xf9\x4d\x15\xc5\x44\xb8\x1e\x46\x01\xeb\xcd\x49\xf2\xe5\x52\xba\x79\x4e\x7b\x13\xc8\xd0\x05\xe7\xbf\x5d\x2e\x23\x0b\x29\x07\x4f\xb2\xa7\xa7\xfd\x08\x07\xf1\x22\x44\xd4\x43\xfd\x5f\x23\x1c\xfa\x4b\xdf\xef\xd3\x84\x30\xaf\x94\xb0\x2f\x4b\x2f\xcc\x61\xea\x8b\xa0\x71\xc4\xd1\x0f\x09\xf2\x98\x78\x28\x32\x36\x93\x91\x87\x47\x27\x57\x72\x0d\xfe\xea\x2e\xf3\x64\x3b\xbe\x9f\x95\x3c\x93\x1a\x03\xd4\xcf\x0d\xcc\xfe\x3d\xf2\xf5\x2b\xff\x92\x8c\xe4\xb7\xfa\xcb\x42\x27\x2a\x1b\x1a\xae\x74\x56\xd2\x2d\xfa\xf7\xa0\xec\x11\x66\x3d\x96\x5a\x14\xba\xcd\xf3\xec\x68\x25\x3a\xc4\x02\x5f\xa5\x5a\xd3\x21\x06\x39\x4c\x43\x02\x4a\xdd\x0d\xa1\x28\x3b\xa5\x7b\xe9\x34\x2d\x71\xbe\xa6\x37\x8c\xed\xe3\x7a\x5c\x1f\x77\xc7\xf4\x71\x0b\x9e\x8f\x6d\xb1\xac\xf4\x30\x39\x92\x8f\x4b\x28\x3e\x2e\x20\x58\xe9\x88\x86\x35\x68\x23\x48\xb0\xc2\xde\x4e\xaa\x1a\xda\x99\x00\xe6\x2f\x41\xaa\xfd\x31\x7e\x77\x1f\x95\xa6\xca\xcc\x75\xc4\xd4\x4a\x02\x02\xe0\x28\xad\x80\x97\x57\x07\xd3\xca\x82\x69\x0e\x14\x43\xf1\xa0\xac\xff\x1e\xea\xcd\x8e\x0d\x8d\x8e\xdd\xa1\x96\x66\x32\x4d\x6a\xe9\xe1\x11\x19\x41\x55\xb6\x4a\xe4\x84\xcc\x4b\xa8\xa9\xc7\x4a\x2d\xe7\xfb\x40\x3d\x18\x61\xb0\x3b\x1a\xa5\x05\x0d\xe5\x8e\x56\xe4\x24\x9f\x30\xf6\xd3\x64\x87\x69\x78\x81\x5a\x54\xbc\x04\x1d\x67\x56\xce\x5b\x45\x73\xef\x3c\x92\x6d\x89\x22\x34\xd9\x91\xf0\x7d\x3d\x40\xa1\x19\x3d\xe5\x71\x70\xe6\x20\x57\x1a\x46\xbd\xd0\x47\x59\x96\x3e\x96\x53\x04\xc4\x5f\xb2\xfe\x14\xe2\x30\x96\x05\xe1\x0c\x09\xc9\x57\x88\x1a\xd8\x9e\x1c\x5b\x67\xb3\x17\xf4\xa7\x27\xf0\xa3\x39\x6a\xe0\x82\x44\x4c\x88\x8f\x8a\x3f\x4f\x53\x86\xa7\xff\xcd\x3c\xf2\x33\xfd\x85\x16\x45\x40\x11\xe6\x0f\x3e\xa3\xcb\x39\x41\x94\x1e\x49\x51\x27\xff\xa6\x3e\xa1\x80\x5e\xe5\x45\x38\x4f\xa6\x70\xa4\xce\x93\x11\xfe\xac\x47\x0d\xa4\xb7\x7b\x93\x77\xa9\x5e\x60\xbb\xec\x6d\x9a\x2d\xcc\x4e\x5e\x99\xbb\x10\x3d\xd0\x2c\x9d\xe5\x1c\xf1\x66\xdc\xfd\x83\x44\xc6\x5f\xd8\xeb\x7e\xd7\x2c\x66\x5c\x76\xe4\x65\xf0\x6c\x11\x43\xd2\x0b\x92\x58\xd4\x72\x91\xf3\x2e\x65\xf6\xae\xee\x68\x57\x56\x14\xff\x41\x65\x51\x53\xd6\x81\x3c\xa7\x9a\x4d\xac\x5d\x0b\x6a\xea\xd3\x77\x37\x48\x4f\x6c\xba\xb2\x9f\x66\xf5\xd3\xff\xff\xff\x6f\xa5\xcf\xba\x19\xf8\xab\xdf\xbf\x23\x28\x40\x21\xc2\xf5\x50\x5b\xe5\x95\xb1\x42\x32\x49\x2e\xba\x62\x38\x34\xa6\xde\xc9\x53\x5a\xb4\x6a\x67\x61\x41\x31\x32\x25\x68\xac\xce\x1d\xff\xb3\xc7\x12\x43\xce\x54\x92\x2c\x58\xee\xf5\x1a\x06\xfd\x3c\x20\x42\x94\xa6\xd0\x6c\x30\x42\x6a\x93\xda\x85\x06\x45\xb5\x41\xed\xca\x3f\x2b\xb9\xd7\xae\x68\x51\xd1\xed\xca\x8e\xf7\xd7\x75\x2d\x29\xae\x9e\x77\xaf\x04\xe2\xaa\x96\x14\x93\x75\xa4\x6c\x19\xc8\x29\xab\x24\xa0\xbd\xb2\x6a\x4d\x03\x47\x5a\x50\x73\x2a\x5f\x4a\xf5\xab\xe9\xe0\xad\xbf\xb6\xd4\xc7\xdb\xe9\xa6\x5b\xb7\x72\x59\xc9\x2c\x37\x58\xcf\xcd\xf0\x9e\xa9\xe2\x5b\x8c\xc2\x4d\xe1\x34\x83\x6a\x6f\xad\xb3\xec\x38\x0f\xbd\x54\x48\x91\x0e\xad\x64\xc7\x6e\x3d\x31\x26\x97\xa2\x6d\x3c\x36\x06\x38\x6f\xfd\xec\x54\x5d\x10\x3a\x1f\xa0\xd6\x2e\x6e\xf6\x14\x15\x72\x5c\xea\xb7\x58\xdb\x79\xc9\x17\x4a\xbf\xfd\xea\x52\x99\x35\xc3\xb6\xb9\xdb\x51\xa9\x70\x3a\x29\x84\xe7\xc9\x3c\x39\x47\xa4\x37\x43\x78\x91\xf5\x88\xbe\xcc\x21\x0e\x55\x35\x42\x2d\xb8\xf5\x33\xba\x3c\x4b\x20\x09\x0f\x85\x31\x39\xe3\x69\x0d\x67\xed\x51\xa6\x8a\x3c\xd0\xad\x80\x1c\xf1\x29\x92\xda\xbd\x10\x1e\x9a\x3b\x91\xdf\x77\xd2\xb1\x36\x61\x8d\x91\x68\x32\xb1\xe7\xdc\x1c\xe7\x75\x42\x90\x61\x20\xab\x55\xb4\x84\x49\xac\x86\x35\x40\xb9\x25\x32\x32\x19\xd4\x71\x82\x5b\x37\xb5\x89\xdb\xc9\x7b\xe0\xe0\xa4\x31\xc9\xb5\x25\x9a\x6e\x92\x33\x7a\x21\x9b\x36\x50\x89\x66\x5a\x60\x8d\x33\xab\x5a\x56\xf5\x7d\xd7\x15\x6e\x11\xfe\x25\x99\xe1\xab\x0b\x96\x45\x91\x46\x21\xb5\xba\xa9\x7f\x74\x17\x73\x47\x09\xc0\x1a\x17\x0c\xb9\xfd\xda\x26\x59\xdb\x4b\x7d\x91\xa5\x2c\x89\x82\x45\xe7\xd6\x46\xd6\x9a\xcf\x5a\x2a\x32\x99\xff\x1d\x49\x90\x1d\x89\xc7\xd6\x61\x9a\x91\x5c\x00\x67\xde\x11\x12\x2b\x2b\x60\x76\x7a\x9e\x6d\x00\x54\xfb\x56\x4d\x95\x9e\x1a\xbf\xea\x5a\x25\xae\xb5\x43\xab\xfa\x71\xbb\xf5\x26\xc9\x8a\xa9\xfb\xb7\x05\x5a\xa0\x86\x82\x10\x69\x08\x96\xbd\x23\x5e\xa6\x83\xc9\x6d\x74\xd5\xda\x22\x75\x35\xea\x3a\x1c\xe9\x2e\x8b\x68\x5a\x90\x4e\x78\xb7\xa0\x6c\x2d\x05\xa9\xd6\x01\xdf\xa6\x95\x1d\x0d\x5c\xf5\x02\x31\xb8\xf6\x81\x27\xe0\x29\xa8\x0d\xa3\xb3\xe6\xf2\xca\xcd\x0e\xc0\x43\xf0\xc8\x90\x8f\xc9\x60\xc4\x2d\x06\xd2\xdb\x0b\x23\xae\x2a\x15\xd2\x5c\x2b\x24\x97\x2e\x5a\xe6\x72\x93\x36\xd9\x6b\x49\xa5\x6b\xb4\xc9\xae\xaf\x5a\x97\x3e\xce\xbd\x33\x48\xb6\x43\xc1\xfe\xe2\xfd\xef\xff\x78\xfe\xe1\x49\x8d\x82\x3d\x9f\x89\x0b\xdc\xb7\x73\x26\x3d\x32\xc5\x9f\xd2\x17\x5b\xba\x6f\xc3\xb3\x58\x66\xe8\x69\x6c\x6d\x2a\x7d\x51\x0c\xe5\xd7\x68\xb4\x34\xf7\x70\x3c\x95\xaf\x03\xc5\x39\x8f\x09\x42\x0c\x7d\x61\x3d\xd9\x52\xab\xb0\x2e\x51\x9c\xd5\xb1\x17\x05\x80\x34\x67\x33\x8b\x12\x80\xaa\x07\x9d\xbc\x8b\x98\x1a\xf9\x34\x8d\x4e\x28\x56\x78\x68\x61\x83\x24\x94\x86\xbb\xad\x24\x82\x95\xea\xc5\xcf\x13\x1a\xa5\x6e\xef\xba\x10\x36\x5b\xc4\x2c\x9a\xc7\x52\x50\x88\xd1\xb8\x31\xf5\x81\x9c\x54\x8a\x27\x17\x2a\xc1\xad\x20\x90\x59\x64\xef\x69\x11\x57\x32\x4f\x7e\xdb\x84\x3e\xad\xc5\x3b\xde\x21\x32\x8b\x28\xe5\x72\x41\xad\x3b\x9e\x35\x61\xb5\x98\x41\x56\x73\xbf\xc5\xb0\x91\x66\x88\x16\xc2\x69\xbe\xd1\x73\x81\x35\xdb\xf1\x96\x49\x38\x1e\xe5\x77\x66\xa5\xc2\x48\x8e\xd6\xdc\x2d\x39\x55\xd7\x30\x18\x61\xea\xea\xcf\x85\xcf\x5a\x71\xa1\xf5\x80\x01\xf3\xcc\x0e\xc5\xd7\xb6\x79\xdf\xad\x81\x15\xbe\xd3\x55\x58\xd3\xc7\x2b\x81\xfa\x5c\xf8\x63\x77\xf2\x05\x7a\x04\x1e\x1b\x5c\x8f\x56\x48\x52\xf3\xd0\xa6\xf8\x69\xdd\xf9\xa7\xc6\x5a\x0d\x75\x87\xbf\xea\x41\x47\x55\x5d\x03\x6b\xa2\x40\xa2\xc9\xd4\x82\x2a\x50\xbd\x10\x85\x9d\x5a\xe5\x06\x69\x81\x5b\xa9\x47\x34\x26\xc9\xac\x87\x30\x23\x11\xa2\x65\xaf\xfd\xa2\x0b\xbf\x54\x57\x0f\x21\x0d\x5c\xb5\xc5\xb9\xe0\xf4\x5c\x73\xe8\x07\xc6\x0f\x42\x24\xbe\xe0\x0d\xf9\x07\xea\x70\x18\xbf\xd0\x7c\x6c\xe4\x30\xf2\xc1\xd0\x39\xe4\x5f\xfe\xab\xfd\x2b\x35\x56\xfa\xd9\xbf\xc4\x80\x35\x9f\x55\x7c\x78\x14\x98\xd9\xd3\x96\x61\xcb\xdf\x67\xf3\xd4\x3a\x68\x04\x20\xd7\x72\xaa\xb1\xb5\x07\xce\x21\x0d\x10\x0e\xa5\x54\xdf\xf2\xb1\x1a\x58\xff\xfa\x39\x2a\x7f\x6e\x95\x17\xdf\x10\x82\xa2\x14\xce\x93\x8c\x44\x1f\x68\xdb\xdd\xb8\xd9\xeb\x29\xc7\x81\x85\xcb\xe2\xed\xde\x3f\x03\xc3\xfd\x33\x58\xf5\xfe\xd9\xd3\x49\xba\x94\xed\x38\x54\xf9\x2d\x6c\xa3\x8c\xcc\xbb\xdb\x6f\xbf\x21\xf4\x23\x9a\xab\x8e\x4b\x8f\xab\x0b\xd7\x70\x8b\xe5\x47\xdc\x5a\x9f\xde\x15\x5a\xb9\x7d\xab\xe0\xa6\xcf\x6d\xe1\x2d\x11\x18\xab\xdb\xb7\xd3\x15\x5d\xb3\x9e\x79\x9d\x8a\x8d\xae\x65\x99\x16\x6a\x08\xaa\xbe\xb2\x5e\x53\x45\xd0\x36\xbf\x98\x15\x22\x6c\x86\xb7\xeb\xa2\xa6\x04\xf4\xc6\x56\xb3\xe0\xb8\xb1\xe1\x25\x35\xde\x38\x1a\x9e\x6a\xde\xdf\xfe\xe2\x9a\xaf\xba\x06\xc8\xb7\x7e\x99\x8b\x16\xc6\x8d\xae\x72\xf9\x5a\xd7\xd0\x54\x7d\x65\xbd\xb6\xf9\x7d\xbe\xf9\xe5\xad\xf0\x12\x66\x90\xbb\x13\xe4\x4e\x40\x77\x14\x43\x84\x6a\x6e\x13\x62\xc8\xa0\x41\x0c\x71\x37\x50\xa9\xb7\x59\x5f\x75\xfb\x25\x50\x3e\x47\x38\xdc\x0e\xdd\x19\xfc\xfd\xc9\xd3\x5f\x1e\xa1\xd0\xac\x3b\x93\x6e\xca\x6e\x2c\x9d\x41\xd5\x7f\x3a\x55\xa9\x02\xee\xaf\x11\x0e\x6d\x8b\x55\xb1\x88\xc5\x28\x0d\x13\x7e\x02\xdc\xe9\x62\x06\xb1\x5e\x0d\xc0\xd4\xa7\x75\x68\xdc\x43\x70\x60\x55\xe8\x6e\x70\xc0\x39\xee\xda\x72\x52\x9f\xc5\xe0\x5a\x0d\xa9\x8b\x88\x4d\x5f\xe2\x71\xe2\x1a\x8a\x47\x1d\xa8\x12\xee\xf2\xfd\x0a\x45\xa4\x8a\x38\xd5\xbb\xb2\x62\x8b\xeb\x8b\xf6\xa9\x52\x0d\xbd\x39\xc4\xa8\xa6\x22\x6a\xde\x45\x5b\xde\x25\x93\x08\x5c\xb2\xa0\xa6\xa8\x73\xb2\x60\x98\x55\x23\xca\xd3\xf2\x56\xcd\x2e\x36\xf5\x6e\x2a\xcd\xc1\xfc\xcd\x95\xff\x32\x21\x68\x86\xf0\x42\xe1\xae\xa2\xe8\xcc\x14\x9a\x9b\x73\xee\x68\xf3\xca\x75\x6b\xbc\xc5\xaa\x87\x06\xb8\x11\x9e\x10\x44\x69\x1e\x95\xd4\xdd\x6b\xec\xa5\xec\x22\x5d\x4b\xea\x20\x0c\xcf\x62\xe4\xa8\xae\x1d\x46\xe0\x78\x1c\x05\xce\x98\x24\xb3\x34\xe3\x0d\x75\x92\x05\xa3\x51\x88\x44\x12\x08\x95\x5e\x24\xcd\xda\x34\x43\x74\xca\x19\x92\xac\x6d\x84\x9b\x9a\x5a\x27\xdc\xb6\xc5\x89\x31\x5a\xab\x3b\x5e\x3e\xe4\xdd\xe4\xb8\x11\x9a\x4d\x27\x0d\x17\x93\x98\x0a\xf5\x99\xd6\x21\x23\x48\x66\xb3\x05\x96\x39\xda\x45\xe9\x06\x23\x26\x57\xc2\x8b\x11\xfa\xd7\x7c\xdc\xf2\x92\x92\x64\x21\xa6\x93\x8c\x39\x98\x7c\x0a\xd9\xea\x9e\x21\x76\x81\x10\xd6\xf2\xaa\xab\x89\x84\x90\xc1\x40\x24\x37\xa2\x7d\xe3\xe1\xb6\x2b\x4c\x62\x70\x03\xbc\x4d\xf7\xa4\x46\x47\x1b\x8a\x38\x54\x2c\x29\xd9\x7a\x6e\xf8\x5c\xf2\x7f\x87\x67\xc9\x82\x55\x4e\xe8\x96\x1e\x98\x1c\x60\xd3\xd1\x59\x3b\x17\x8e\xec\xba\xb0\xaf\x6b\x4c\xe4\x2b\xef\x48\x13\xff\xba\xaa\xbe\xb7\xbc\x03\x80\xab\x38\xc6\x9d\x10\x9d\xa3\x98\xb3\x80\x3d\x7e\xcc\x77\x4a\x0d\xcb\x49\xdb\xd3\xfe\x4c\x8b\x54\xdb\xe7\x02\x87\x88\x50\x06\x71\xd8\x33\x7c\x57\x37\x44\x29\xea\xb5\xa6\xef\x94\xf8\x95\x3b\x5b\x45\x45\xda\x7a\x14\x4d\x3e\x6f\x31\x82\x04\xf7\x04\x07\x6b\xe7\x46\x0e\xdb\x7d\x71\x4c\xee\x6e\x45\xff\xc1\xcc\x1d\xd9\x90\x9b\xed\xf9\xdb\xa3\xe3\x4f\xaf\x5e\x1c\xbe\x7f\xf3\xe9\xe3\xfb\x57\x45\xec\xe6\xaa\xdf\x7d\x4d\xf5\xdb\xcc\xfc\x4a\x90\x44\x1e\x2f\x9c\x24\x73\x84\x11\x71\x70\x42\xd0\x18\x11\x22\x4d\xc6\x72\x22\x44\x74\xee\x7e\x3a\x8b\x61\x3b\x32\x1c\xe7\x15\x47\x9c\x33\x59\x44\x21\xaa\x3b\x3a\xf6\x4e\xce\xd5\x63\xb6\x5f\x28\x4d\xbd\xc1\x43\xc3\xb7\x5b\xf9\x98\x74\x3e\x25\xa2\x93\x06\x4a\xd7\x7e\x16\x44\x0f\x85\xe7\x37\xbd\xf3\xc3\x24\xa0\xdb\xb7\xf1\x1b\xb6\xfc\xde\x6d\x6f\xf9\xe7\x49\x20\x72\x0c\x08\xdd\xda\xda\x7b\xbe\xd3\x02\xd6\x70\x11\x55\x08\xde\xb2\x29\x22\xe9\x9d\xe6\xb0\xcb\xb9\xf1\x74\x1a\x6f\xa6\xda\x44\x31\xe5\x2b\xbe\x7e\xdb\xde\x6d\xd4\x7c\xa3\x36\xa0\xe9\xfa\xb6\xa8\x0d\x47\xb3\x0e\x59\x2e\x50\x65\xeb\x0d\xb3\x11\x9e\xf0\x4f\xb3\x6f\x5a\xb1\x75\x7d\xdb\xa7\x86\xd7\xde\x8e\x5d\xb4\xb6\x18\xf4\xa7\xd9\x41\x8d\x98\xba\xbe\xdd\x63\x10\x2d\xaf\x6b\xe7\x54\x2c\x10\xb5\xb9\x3b\x3b\xa8\x06\x3a\xd8\x73\xda\x32\xe9\x75\x97\x4e\x37\xac\x29\x5d\x57\x4f\xda\x3e\x1d\x9b\x47\x37\x50\xcc\x3e\x37\x99\x6c\x81\xf9\xe6\x7c\x8b\x8a\x92\x0e\x1e\xfd\x72\xf6\xf7\xff\x7a\xfd\x79\xed\xa2\xa4\xeb\x95\x15\x55\x81\x14\x9b\xad\x2f\xfa\xf9\x5c\x66\x37\xd9\xe6\xf2\xa2\x16\x6a\xc6\xd6\x6c\x23\xda\x49\xbe\xae\xc2\x70\x05\x72\xb1\x66\x4d\xb8\xa2\x20\x51\x93\xaa\xd2\xc2\x32\xb5\xc1\x84\xb3\xbf\xa2\xcb\x8d\x26\x9a\xfd\x15\x5d\x3a\x09\x71\xc6\x99\xbf\x7d\xc7\xfc\xb2\x62\xab\x26\xc1\x82\x93\xf4\xfc\xef\x72\x8a\xd9\x27\x40\xd8\x89\x7a\x8c\x44\xb3\xea\xdc\xd4\x9c\xe4\x9e\x9c\x43\x22\x0b\x06\xcb\xa7\xc5\x3b\x5e\x65\xb3\x85\x61\x18\xc9\xb4\xb3\x6e\xb6\x79\x14\x68\x2b\x26\x9d\x2d\x66\xb8\xad\x20\xa5\x43\x5e\x5a\xc7\x10\xbd\xaf\x70\xfd\x21\x71\x64\x9a\x31\x07\xaa\xbe\x81\x83\x70\xe8\x40\xe7\x33\xba\x94\x86\x0f\xf5\x6d\x90\x84\xa8\xfc\xf5\x4e\xba\x3a\x2b\xdd\xd5\x26\xfe\x54\x85\xf9\xe6\xfa\xef\xb5\x97\x49\xd4\xf5\xd5\x28\x8f\xc6\x01\xf3\xbe\x21\x65\x75\xdd\x66\x1d\xec\x18\x15\x47\x36\xe6\xdf\xd6\xa8\x53\x43\xc3\x4a\xa8\x21\x4b\x26\x93\xb8\x31\xfa\xda\x78\xa6\x2d\x98\xe9\xda\xdc\xcc\xff\xa6\x79\x52\x66\x63\xf2\x6e\x8e\x6f\xd9\xe8\xda\xd3\x72\x8b\xde\xcf\x92\x2f\xcd\x3b\xbc\x95\xaa\x1c\xf1\xfd\xbb\x52\xda\x87\x56\x12\x54\xa2\xa5\xbb\x2a\x90\xd1\x75\xd7\xa5\xac\x7f\x17\xc4\x6a\xd3\x85\x3a\x54\xaf\xf5\xea\x29\x6d\x71\xbb\x49\x7e\x0f\x25\x99\xe8\xa1\x30\x62\x09\x29\x5e\xc6\x7a\x3c\x95\x08\x40\x97\xb9\xf9\x0b\x04\x19\xb2\xe4\xac\x8a\x8d\x14\x0b\xb6\xc1\xb2\x5a\xd1\x89\x73\x35\xd5\x1c\x63\xab\xca\x0e\x05\xac\xf2\xe5\x83\x04\x15\xb3\x3a\x69\xd7\x8e\x65\x3a\x69\xfd\xc4\xa5\x90\xae\x7d\x75\x68\x69\x53\xec\xd0\x59\x15\x51\xec\xf2\xc2\xac\x2c\xa3\x15\x85\xc8\xa6\x8d\xb8\x3a\x7b\xb3\x6a\xb6\xf4\x77\x44\x94\x0a\x42\x95\x64\xe4\xd7\x9f\x4a\xbd\x1e\xf2\xad\x4f\xa4\xde\xed\x30\xad\xb9\x44\x77\xab\xd0\x18\x0f\xef\x5e\x43\xa2\xf8\xcf\xe8\xd2\x2a\x45\xbc\x85\x3c\xd6\x25\x41\xbc\xfb\x47\x48\x0f\x6f\x9b\x1c\xde\x02\x77\x5d\x52\xc3\xbb\xb7\x91\x18\xde\x3e\x2d\x7c\xe7\xa4\xf0\x45\xaf\xe7\x32\xaa\x6f\x39\xbf\x7b\x41\x29\xb5\xc9\x24\x02\x08\x73\x7e\x8a\xa8\xd4\xbf\x11\x16\x3a\x2d\xe5\x74\xe6\xb9\x67\x2c\x81\xae\x0f\x38\xab\x36\xbc\xbf\xbb\x85\x59\xe0\x6b\x13\x4a\x8f\x58\x7f\x82\xd8\x73\xc8\xa0\xe7\xdf\x63\xe4\xf2\xaa\x92\x85\x38\x80\x2c\x98\x7a\x54\xb6\x6f\x4d\x3f\x2d\xb9\x27\x2d\x43\x32\x4e\xf9\x1c\x20\x26\xa2\xf0\xd8\x57\xfb\x3c\x4d\x1d\x5d\xcc\xbe\xac\x89\xf0\x43\xa2\xe5\x99\x96\xd9\x96\xa5\x74\xd9\xe7\xa2\xa1\x96\xdc\x9b\x0f\xc4\x1f\x01\xd7\x4d\x53\x30\xbb\x3b\xee\xfd\xd1\x88\x3c\x23\x43\xd7\xf5\xd3\x87\xc6\x01\x05\x8f\x5d\x49\xeb\x2c\x9e\x82\xfb\x02\x6e\xfe\x77\xfa\x89\x52\x4f\x0e\xd9\x94\x24\x17\x0e\x5d\x2e\x57\xce\xd4\xfc\xf9\x7c\x8b\x52\x34\xcf\xa6\x67\xc1\xeb\xf3\x03\x76\x73\x29\x9a\x37\x97\x99\x39\x53\xbc\xae\x9b\xa2\xf9\xf3\xb9\x96\x9b\x59\xd7\xbc\xfe\xc1\x53\x33\x17\xee\x2a\xeb\xbc\xcc\x6a\xff\xae\x97\x90\xd9\x02\x1d\xf6\xe9\x98\xdd\xba\xc4\xc6\xaa\xf6\xab\x91\x4f\xb3\x0c\xec\xda\x4c\x3a\x63\xb7\x39\xff\xab\xae\x88\xd8\x13\x32\xd7\x4f\x4a\xd3\x78\x0a\xdc\x71\xaa\x84\x1c\x47\x31\x32\xd6\xc2\x73\x1c\x03\xdf\x66\x9b\xf4\xb8\x7e\xe0\x30\xe8\x7f\x3e\xef\x67\xc3\xcb\x9f\xc6\x14\x7f\x65\xcd\xac\x26\x05\x8b\x4c\x06\xb9\xfe\xd0\xa0\x50\xcc\x3b\x68\xd1\x24\xee\x58\xa5\x18\xbd\xde\xf5\xee\x90\xa0\xd3\xfd\x13\xa4\xe7\xb4\xc0\x58\xc7\xe4\x9c\x86\xd4\x9c\x1d\xcc\xdb\x37\xe9\xf7\x6e\x93\x94\xd3\xe8\x36\xb1\x99\x94\x9c\xd7\x7c\x6e\xeb\xbb\xff\x7b\x84\x2e\xdc\x2c\x81\x67\xfb\x81\x6c\x3a\x96\x9d\x10\xbd\x52\xbe\xc1\x5a\x83\xdb\x76\xe4\xf1\xac\xb1\x40\x74\xca\xe2\xd9\x62\xc5\x58\x2f\x87\xa7\xb5\x2d\xc5\xf0\xd1\x0a\xf9\x3b\xad\xb3\x77\xb6\x21\xb6\x00\x48\xb7\xcc\x9d\xd6\x4a\x99\x35\xc1\xb3\x6d\xd3\x35\x57\xa7\xf9\x30\xad\x9c\xa9\xb3\x46\x27\x77\x23\x79\x3a\x1f\x6e\x6b\x9a\xce\x4e\xdb\xaf\x63\x8a\x4e\x7b\x92\xb5\x42\x82\xce\xcd\x6c\x4c\x1b\xb2\xb6\xca\x5d\x50\x93\x94\xb3\x7b\x65\xc3\xfa\x46\xab\x65\xe3\xec\x9e\x8a\x73\xd7\x52\xa1\xb6\x52\x2a\xce\x8d\x28\xcd\xb6\x3f\xf3\x66\x9c\xf0\x0b\x64\x3b\x34\x25\xd1\xef\xbf\x9e\xff\xfb\xef\xbb\xbf\x99\x35\x25\x0f\x20\x63\x22\x41\x64\x35\x4b\xa6\xb8\x3a\x4d\xda\xf3\xc2\x24\xc5\xb6\xd9\x07\x03\x43\xbe\xcc\xc7\xc0\xa5\xe7\x93\x02\xe5\xfd\x32\x8b\x31\xef\x62\xca\xd8\x7c\xb8\xb3\x73\x71\x71\xd1\xbf\xd8\xef\x27\x64\xb2\xb3\xb7\xbb\xbb\xbb\x23\x9a\xd7\xbd\x14\xdf\xee\xb8\x7a\x4f\xc3\x2f\x2a\xc3\x41\xf5\x93\xc1\xd3\xa7\x4f\x77\xea\x5f\x1b\x7a\xbc\x88\x42\x2e\x89\xbb\x07\x07\xf3\x2f\xe9\xb3\x29\x92\x09\xed\x0a\x0f\xcf\x23\x74\xf1\x63\xc2\x6f\x8f\x5d\x67\xd7\x39\x38\x70\x0e\x0e\xb2\x57\x88\x50\x99\x23\x6f\xd0\x1f\x98\x2e\x2a\x85\x97\x89\x4d\xed\xe6\x20\x22\x41\x8c\x8a\xfc\x15\xef\x39\xbb\xb1\x38\x08\x7b\x8f\xb3\x9f\x97\xfc\x67\xfa\x8b\xb2\x4b\xc1\x8a\x31\x02\x31\x1d\x27\x64\xd6\x4b\x48\x34\x89\xf0\xd0\xd9\x7b\x3c\xff\xe2\xec\xcd\x1b\x3d\x23\xba\x40\x30\xe8\x0c\xc1\x60\xc3\x10\x94\x70\x70\x60\x8b\x84\x83\xeb\xc3\x82\x0d\x0c\x83\x4d\xc3\xb0\x57\x00\x21\x87\xa8\x01\x0d\xf3\x2f\x02\x8c\xeb\x81\x60\xcf\x12\x82\xbd\x0d\x42\x70\xd0\x1d\x09\x07\x9b\xc6\xc2\x41\x77\x34\x1c\x6c\x1a\x0f\xfb\xfb\xc5\xfd\xd8\x0e\xc2\xfe\x3e\xdf\x8e\x1b\x3c\x11\x83\xae\x10\x0c\x06\x9b\x85\xa0\x8c\x83\x5d\x5b\x24\xec\x5e\x1f\x16\x2c\x60\x90\x68\xd8\x20\x0c\xf9\xa0\xf2\x4c\x0c\x2c\xf6\xe3\x2e\x3f\x13\x83\x0d\xc2\x50\x00\x21\x5f\x99\x06\x10\xe6\x5f\xc4\x72\x5c\x13\x16\xac\x40\xd8\xdd\x34\x0c\xdd\x17\xa2\x65\x1d\x4c\x32\xc9\x06\x98\x8c\xbd\x22\x59\xdf\xeb\x7a\x94\xf7\xf6\xd6\x3d\xca\xcd\x10\x58\x1c\x23\x09\xc2\x5a\xc7\x68\xaf\x61\xf1\xf6\x2c\x6e\x78\xbe\x78\x7b\x6b\x5d\xf0\x7b\x4d\x5b\xd8\x0a\x84\xdd\x0d\xc3\xf0\xb4\x00\xc2\xd3\x76\x08\x9e\xce\xbf\xf0\xff\x6d\x6a\xfc\xfd\x87\xc5\x63\xfc\xd0\x82\xa8\x3f\xe4\xc7\xf8\xe1\xb5\xc1\x60\x81\x04\x01\xc2\x06\xb1\xf0\xb4\x33\x12\x9e\xb6\xe0\xe0\x66\x08\xc9\x93\x02\xdc\x4f\x2c\x4e\xf1\x93\xf9\x17\xe7\xc9\xe6\x10\x37\x78\xd4\x15\x82\xc1\xa3\xcd\x42\x50\xc2\xc1\xfe\x23\x4b\x24\xec\x3f\xba\x36\x2c\xd8\xc0\x20\xd0\xb0\x49\x18\x8a\x68\xd8\xb3\x58\x09\x8e\x85\xbd\x0d\xae\x44\x11\x82\x81\x05\x12\x38\x04\x83\x0d\xe2\x60\xff\x51\x67\x24\xf0\x25\xd8\x28\x16\x4a\x30\xd8\xa0\x41\xc0\xd0\x84\x87\x6b\x22\x26\x0f\x9b\x78\x82\x81\x8d\xd8\x2f\x44\xbd\xb5\x6e\xc3\x46\x18\xf6\x6d\x61\xd8\xdf\x20\x0c\x83\xbd\xce\x5c\xc1\x60\x6f\x6d\xae\xa0\x08\xc3\x7e\x77\x18\xf6\x37\x0d\xc3\xa0\x78\x2b\x0f\x2c\x2e\xc5\x01\xbf\x96\x07\x6b\x71\x06\xa5\xfd\x50\xbc\x98\xf7\x2c\x58\x83\x3d\x7e\x33\xef\xad\xc5\x1b\x34\xc2\x60\x83\x07\x01\xc3\x26\xf1\x50\x5a\x0b\x1b\x3c\x88\xb5\x68\xc2\xc3\x35\x11\x95\xa7\x4d\x07\xda\x66\x23\xef\xb5\x6d\xe4\x32\xe0\xae\x21\x7d\xf2\x26\x1d\x8b\x75\xf3\xc3\xed\xc7\xde\x4b\xaf\x16\x24\x8a\x39\x6c\x91\x07\xe9\x25\x7b\xfb\x3c\xf8\xdb\xe7\x9f\xcc\x76\x91\x92\xe3\xa8\x55\x38\x7e\x16\xde\xde\x94\xa0\x71\x1d\xd7\xc7\x87\xc0\xe5\xf8\x6b\x77\x75\xac\xa0\x7c\x55\xa7\x47\x77\x33\xee\x8e\x6e\x5b\xce\x0b\xb7\x5c\x6a\xfc\x69\xa3\x29\xb1\x92\x8c\xbc\x2d\x04\x02\x31\x18\xc5\x2d\xde\x6f\x6e\x25\xf9\x72\x8d\xf1\xa6\x31\xb7\xb2\x9b\x06\xd2\xcc\x2f\x7b\xa9\xeb\x41\x39\xaf\x7c\x0a\x57\x3a\x79\x51\x69\x18\xa4\x05\x87\x6d\x69\x5e\x29\xef\x71\x8e\x4b\xd9\x9d\xd9\xb5\xa9\xda\x5f\x75\xda\x03\x3d\x0b\x23\x47\x6a\x88\x62\x73\x4e\x93\x0e\x08\x51\xc9\xab\x15\x32\x4e\x85\x03\x44\x9b\x33\xdb\x73\x3e\x6e\x37\x67\xc8\x6e\xf8\x7a\x22\xb3\x37\x40\xd6\x63\xd1\x0c\x69\x61\x63\xaf\x92\xe0\xf3\x73\x39\xeb\x86\x88\xc7\x55\x10\xca\x98\x31\x75\xf7\x35\x63\xf2\xc3\x87\x57\xd7\x89\x47\x89\xb4\x0f\x1f\x5e\x6d\x6e\xe3\x9d\xa1\x29\x3c\x8f\xcc\x69\xf5\xae\x19\x59\x3f\xaa\xa1\xaf\x1f\x63\x3f\x66\x93\xdc\x14\xda\x44\x40\x83\xd1\x45\xea\x9a\x91\x76\x24\x06\xbe\x2e\x94\xe5\x9c\xd2\x01\x70\x11\x0c\xa6\xda\x59\x3d\x52\x53\xb6\x0f\xf3\xad\xb9\x87\x1e\xd7\xe4\x5e\x32\x38\xf7\x18\x8b\x6a\xb4\xad\xdd\xfa\xf7\x98\x95\x17\xb7\xbb\xa1\x50\xce\x48\x46\xcc\xc2\xd4\x73\x50\xf1\x13\xad\x21\x9d\xd6\xf3\xe8\x10\x80\x60\x70\xe2\xdb\xa8\xbf\xde\xa3\x42\x80\xcc\xcb\x6c\xe6\x5a\x38\x6e\xc9\x9f\x8f\xa0\x31\x41\x74\xda\x23\x89\xe0\x0b\xc5\xce\xeb\xe0\xb3\x57\xf2\x1f\xcb\x47\xac\xcc\xbe\xbd\xea\x9b\xc9\x2b\x6c\x83\x51\xa1\xae\xad\x2f\xaa\x9b\x9d\xa4\x87\x85\x93\x64\xea\xb0\x41\xbe\xec\x18\xb8\xdb\x21\x28\x57\x85\xa0\x6a\xc9\x3d\xa4\xd3\xae\xbe\xde\xeb\x81\x96\x87\xc1\x76\x04\xed\xa0\x0c\x5a\xad\x6b\xa4\x21\x23\x33\x38\x00\xe5\xe8\xe0\xce\xde\x79\xcd\x91\xaf\x60\xaf\xcd\xa7\x70\x43\x49\xe3\x6a\x84\xc5\xdb\x97\x62\xf9\x34\x44\x70\xdf\xf6\x48\xb0\xff\xa2\x17\x21\xfd\xe7\xfc\x91\x85\x04\x6b\xca\x14\x67\x1d\x38\x57\x98\xfa\xea\xe1\x73\x1b\x92\x25\xb5\xe3\x58\x0d\x9c\x13\x81\x21\x0d\x09\x1a\xaa\x5f\x18\xd2\xda\x58\x71\x2f\x16\xb3\xb1\x8a\xb1\x73\x2b\x11\x76\x0d\x1a\xac\xd6\xe2\xd5\x39\x11\x7e\x02\xdc\x44\x6c\xc2\x9e\x08\x28\xdd\xad\x5e\x63\xdd\xc8\x73\x33\x5a\x57\x83\xde\x00\xe7\xa0\x1e\x4e\x1b\x98\xd6\xa7\x6b\x6b\xd2\x2f\x03\x99\xb8\x7d\xda\x85\x93\x10\x6d\x11\xdd\xda\xf9\xfd\xcb\xe3\x5f\xff\xf9\xfa\xcb\x2a\x74\xeb\xe6\x75\x69\x19\xf2\xb6\x43\x87\x16\xd6\xa4\x5f\x94\xb2\xd0\x31\x83\x6c\x41\xcb\xd9\x1f\x0b\xa7\xb0\x51\x00\xfc\x05\xc1\x98\x4d\x57\x16\xd0\xf4\x83\x59\x91\x23\x4b\xe5\xb6\x58\x32\xef\x51\x06\x49\x97\xb8\x71\x59\x6d\x31\x20\x11\x8b\x02\x18\x1b\xa7\xdd\x21\xf3\xf4\x21\x73\x62\x04\x29\x73\x12\x8c\x9c\xa9\x98\xb9\x23\xe4\x67\x27\xc1\x52\xe4\xe1\x6b\xef\x44\xd4\x19\xc3\x28\x8e\xf0\x64\x8d\x1a\x56\x6e\x1a\xba\x76\x33\x30\x4f\x21\x75\x60\x1a\x2e\xb7\x0e\xd8\x73\x48\xe9\x26\xc0\x8e\xe3\x02\xb4\xd4\x81\x04\x39\xaa\xf3\x55\x4b\x60\x7d\x98\x22\x82\x44\x47\x38\x29\xf6\xde\x2f\x5d\x3f\xab\xe5\x48\x2e\xa7\x2f\x5b\x49\xa3\x51\xab\xc0\xb1\x88\x73\x77\xc3\xa0\xcf\x97\x93\xf6\xe9\x34\xb9\xc8\xd7\xe0\x8d\x48\x4a\xd8\x92\x34\x76\x50\x6e\x6e\xb8\xf0\x37\xaf\xa1\x68\xd5\xb4\x9b\xcf\x74\x0a\xea\x61\x18\x8a\xc0\xd4\x4c\x18\x8f\x55\x28\xa6\xf6\xc6\x6a\xe3\x99\x58\x8e\x41\xb1\xba\x90\x0a\x5e\x51\xb8\x7b\x95\x3d\xe8\x9c\x87\xee\x76\x8c\x06\x1a\xaa\x0a\xc8\x59\x5b\x29\xa9\x75\x6c\xa7\x93\xdc\x5a\x61\xb2\xc4\xf7\x6c\x09\x23\x56\x2e\x6e\x7b\xdb\xec\xd8\x3f\xff\x39\x78\xbf\xff\x8f\xc3\x8f\x66\x76\x2c\x9f\x84\x0b\xf2\xaa\xff\x20\x2d\xf6\x0f\x5c\x59\x24\x19\x9e\xc5\xd2\x14\xda\xd8\xda\x14\x66\x56\x4c\x9f\xad\x1d\xd1\x71\x14\x33\x44\x38\x9e\xca\x7a\x33\x75\x5c\xc6\x04\x21\x86\xbe\xb0\x9e\x6c\x99\x1d\x99\x04\x4b\x14\x17\x92\x87\xea\x79\x91\x4f\x9b\x94\x81\x2a\x9d\xb8\xec\x41\x57\xfa\xed\xf1\xb9\xca\xa7\xc0\x3d\xce\xdf\x17\xc0\x6a\x88\x67\x97\x50\x1a\x74\xf3\x6e\x31\xe1\x86\x44\x68\x99\x1b\x15\xea\x25\x9a\x5e\xbe\x45\x76\xaa\x94\x8c\x63\xb6\xe0\x5c\x97\xcc\xfd\x2b\xab\x9a\xb6\xa6\x04\x4a\x31\xe8\xd2\xd2\xf5\x2e\x27\xb2\xb6\xc2\x37\xaf\xa4\x6d\x29\x0f\xb7\x4a\xba\x92\x53\x75\x24\x3b\xd2\x22\xa7\x5a\x5e\xdc\x2d\x73\x48\xe6\x2d\xca\x77\xb7\x58\x12\x4d\xa8\x41\xf3\x43\x90\x47\x86\x67\xa7\xc1\xd2\x62\xf1\x48\xb3\x4e\x14\x37\x85\xd8\xdd\xbd\x94\x47\x3b\x6d\x2a\x5f\xae\x31\x72\x32\xd1\x14\x83\x11\xa6\x25\x16\x8f\x6f\x86\xd2\x56\x40\xb4\x2d\x51\xd4\xbb\x7c\xf8\x0e\x25\xe7\xeb\xa7\x93\x25\x79\x68\x9a\x8e\xc6\x4e\x97\xa6\xa3\xbd\x59\x69\x3a\xff\xc8\x87\xdf\xc8\x74\x32\x69\xa5\x71\x3e\xba\x4c\x53\x9a\x90\xfe\x6a\xa5\x19\xfd\x24\xa5\x97\x8d\xcd\x08\xcd\xe6\xec\xb2\x79\x3a\xb2\x49\x75\x2e\xd9\xf3\x95\x26\xf2\x26\x71\x52\xfb\x66\x27\x8e\xe3\x11\x30\x1b\xec\x3a\x57\xc1\x7f\xd8\x50\x05\xbf\x95\xfe\xd3\x84\xb0\xb5\x88\x7f\x42\x58\x27\xd2\x4f\x64\xec\x72\xeb\x55\x27\xfb\xed\x92\x44\xe9\x06\x29\xbe\xbb\x46\x9d\x49\x2e\xf8\x0c\x21\x0d\xb8\xf8\xe0\xb0\xc4\xf9\x57\x4d\x15\x48\xd1\x2e\x44\xa2\xe1\xbf\x78\xc3\xc3\x9a\x86\xf2\xb6\x51\x5d\x7e\xc4\x52\xe6\xbc\xe4\x5f\xc8\xeb\xa8\xae\xcc\xa4\xfa\x4e\x0d\xf1\x4b\xfe\x59\xd6\xc7\x3a\x45\x26\x35\x95\x6f\x5e\x70\xea\x40\x5b\x63\xe3\x0a\xd7\x1f\x97\x03\x63\xc9\xa6\x6d\xba\x58\x07\x86\x8b\x75\xb0\xea\xc5\xaa\x52\xd4\x4a\xa0\x64\xf2\x12\x0e\x55\x81\xc1\xb0\xb5\x93\x3e\x02\x5a\x09\xd8\x26\x02\xa9\xef\x24\x4d\xdd\x52\x7c\x5c\x5d\x3b\x33\x18\xe6\x9d\x68\x5d\x32\xab\x2b\xd0\x72\x1b\x57\xa1\x4e\x9f\xdb\x82\x6d\x3e\x07\x2b\x25\x47\x69\xbc\xc9\x6a\x16\xf8\x58\x55\x61\x4f\x5d\x0f\x37\xba\xbe\x39\xe9\xd1\xf0\xa4\x3f\xb4\x45\x52\x4a\xb8\x36\xbf\x9a\x1a\xd5\x2b\xc3\xd8\x75\x25\x53\xa2\xb9\xee\xda\xd5\x64\xb3\xd9\xc4\xd5\x3d\x68\xb8\xba\xe5\xaf\x0d\xe9\x1b\xca\xe2\xfd\x16\x68\x1d\x44\xca\xd8\x2d\x32\x00\x85\x74\xe7\xbf\x5f\x7d\xdc\xff\x7b\xa3\x01\xe8\x50\xf9\x3a\xa5\x7f\xb9\x99\xbf\x06\x2c\xfe\xdc\x0a\x23\x51\x8e\xe2\xa2\x99\x08\xb8\x3f\xc4\x11\xfe\x2c\xd4\x23\x25\x93\x51\x7d\xe9\xb3\x88\xbe\xca\xbf\xd9\x48\x8a\xde\x36\x03\x93\x6b\x28\xa0\x21\xd3\x8a\x85\x87\xac\xf5\x3e\x6d\xf5\x10\x12\x5d\x45\x78\x52\x56\x4c\x97\x9c\xbe\x77\x81\xdb\xef\xf7\x8d\x5a\xc6\x6e\xf6\x81\x8e\x2a\x76\xb1\x78\x54\xa6\x9a\x2c\x03\x57\x4d\x32\xd9\xe6\xb0\xbe\x56\xda\xac\xcd\x28\xd9\x0b\x58\x68\xd0\x4d\x37\x68\xa7\x9f\x23\x1a\x90\x28\x55\xdb\xd5\x9b\xfe\x1b\xed\x80\x65\x4b\x44\xa1\xd3\x3a\x0f\x84\x3a\x9d\x75\x5d\xb9\x97\x4a\x2d\xd6\xc3\xa3\x57\xc7\x9f\x5e\xbc\x39\xfc\xf1\xd5\x8b\xe7\xb6\xb5\x68\x33\x0d\xbc\x38\xce\x2c\xf9\x8c\x70\x8f\x2c\x62\x44\x11\x93\xa7\x3a\x5d\x84\x34\xbd\x66\xee\xa6\xd0\x52\x1f\xa8\x6c\x2f\x58\x7f\xf9\x2d\x73\xf9\x1a\x19\x20\x1b\x67\xde\x1a\x2e\x42\x9c\x9f\x54\x75\xba\xc2\x09\xda\x48\x21\x10\xc5\xbe\xd9\x24\xc2\x7d\x11\x46\xac\xdd\x0e\xd8\x91\x3f\xa9\x2f\x8c\x5c\x24\x0b\x6e\x9e\x2d\xbe\x43\xf1\xb7\x02\xd6\x0b\xf7\x8c\x96\xfd\x32\x55\x72\x4b\x1f\x57\x0b\x5d\x76\x31\xbf\xa4\xee\x5b\x73\xe3\x6b\x62\x48\x8f\xda\x81\xb5\x6d\xcf\x43\x9f\xb3\x07\xd6\x69\xa0\x1f\x01\x4d\x5c\x2e\xe0\xbc\xa0\x88\xb4\xf3\x82\xb7\x84\xd4\x3e\x45\xbc\xfc\x97\x3a\xaa\x86\xe6\xec\xb2\xd6\x89\xa6\xad\x80\x3b\x4b\xc2\xcb\xce\xa9\xa6\xed\x32\xd5\x5a\x65\xa8\xe5\x80\x08\x7a\x62\xca\x53\x6b\xbe\x8b\xae\x03\x0d\x59\x91\xdd\x2e\x98\x78\xa4\xa7\x27\x6f\xdc\x36\xcf\xb3\x43\x69\x0d\xb2\x5d\x45\xa0\x0e\x27\xca\xa0\xf8\x59\x57\x5e\xb3\x12\xd6\xf6\x5b\xa5\xb5\x66\x0b\x71\xa5\x10\xcf\x75\xd9\x8f\xcb\x82\xd3\x26\xf3\x8d\x66\xf5\x6e\x72\x6e\x7f\xa8\x4b\x62\x04\xb1\x05\xc1\xf7\x51\x3f\xe3\xc3\x57\xae\xdc\xa2\xe6\xb1\x6d\x86\xe7\xff\x1a\x87\x87\x1f\x5e\xa2\x70\x7d\xc3\xf3\x9f\xda\xae\x7c\x67\x57\xb8\x71\xbb\x02\x3f\xc2\x36\x76\x05\xde\xce\x68\x57\xb8\x53\xf3\x6f\x8b\x9a\xff\x7a\xb4\xbf\xd9\x06\xd1\x35\xab\xda\xc3\x2d\xd0\xfe\xe6\x7b\xb3\x0c\xe3\x9d\xf6\x77\x1d\x6e\x61\xfb\xf4\xbf\xf3\x24\x8e\x82\xcb\x2d\xd2\xff\xbe\xfb\xf2\x63\xb2\x78\x71\xf4\xf8\x8f\xa3\xff\xd5\x50\x7c\xab\x01\x52\x55\xcd\x58\x56\xb3\x5e\x82\xb8\xc3\xaf\xfc\x44\x53\xf3\x6a\x75\xaa\xd4\x24\x66\x10\xc3\x89\xe8\xb8\x9b\xf2\xa2\x3e\x28\xdd\xd4\x71\x53\xa0\x50\x8b\x4e\x71\x63\xf1\x05\x45\x01\xeb\xe7\x38\x39\x83\xb1\xf3\x3a\x83\xd2\x79\x27\xe0\x5e\x55\xba\xda\x48\x9d\xeb\xae\xba\x6c\x18\xc4\xb4\x2f\xf0\x1d\x55\xf4\x71\x2a\xbf\x88\x5e\x4d\xd8\x50\xc9\x6d\x53\x9b\x06\xb8\x11\x35\xee\xa5\x0e\x99\x5f\x6e\x54\x5d\xde\xb6\x8b\x43\xc8\x60\x80\x30\x43\xc6\x9c\x14\x8e\xa5\xab\xf7\xa6\xb6\xef\xf3\x0c\x9a\x66\x6f\xa8\xb6\x1d\x69\x7f\xe8\x0a\x1c\xe8\xbf\x93\x88\xd3\x42\x17\x38\x6a\xf7\xa8\x9d\x12\x6a\x60\x55\xb7\xcb\x35\x84\x1e\xd6\x2d\x56\xd1\x7c\xd1\x69\xb5\x5a\x4d\x1f\xdd\x08\x55\x47\xf3\x87\x3d\x16\xfe\x98\xb6\x04\x6b\x0a\x76\x13\xba\xeb\xdb\xba\x4f\xf9\xbf\xbf\x47\xe8\x62\xc5\xc8\x28\x65\xfa\x68\xb6\x44\xa6\x38\xba\x4e\xa3\xc8\x4d\xf0\x1d\x77\x46\x93\x3b\xa3\xc9\x9f\xde\x68\x22\xcf\xd0\x9d\xc5\xa4\x79\x76\x77\x16\x93\x6b\xb6\x98\x54\x54\x0d\x5b\xa3\xfd\xd8\x36\xe3\xc7\x3b\xfc\xe4\xe7\x37\xc1\x61\x8d\x0e\x64\xa3\x51\x77\x16\x0d\xc2\xe0\xcf\x6d\x43\x59\x2f\x36\x4f\x3e\xed\x85\xc1\xb5\x86\xe6\xf1\x35\xda\xfa\xb0\x3c\x4d\x2c\xdd\xd2\xa0\xbc\x27\x06\xa3\xc2\x13\x0b\xa3\x82\x9e\x78\xf0\x40\x88\x2a\xed\x39\x07\xf3\x0b\x6e\xb0\xdb\xaa\x92\x17\xcd\x74\x8d\x48\x39\x7a\xca\xd0\xa0\x10\x46\xa5\x43\x64\xe2\x52\x95\x20\x5a\x55\xba\x74\x0b\xdf\x1e\x68\xd7\x45\xe1\xcd\x53\x30\xd8\xad\xb5\x29\x3d\x94\x0a\x94\x1e\x4d\x16\x24\x40\xd9\x42\x52\x12\x08\x1f\xd9\x04\x86\x22\x68\x4f\x3b\x2e\x7c\x79\x77\xfe\xba\xf3\xd7\xa2\x4e\xc1\x8d\xe1\xef\x97\x4d\xa7\xe6\x09\x70\x67\x0b\x66\x5c\x26\x79\x38\xcf\xd3\x8c\x4f\x02\x20\xf7\xb4\xe0\xc2\x67\xb9\x37\xab\x0d\x9e\x98\x65\x6f\x2b\xc2\x21\xf2\xc4\x5d\x23\xe5\x50\xfd\x6f\x3b\xed\xf8\x70\x39\x47\x5b\x4a\x34\xae\x23\x92\xb7\xc9\x3a\x37\x11\xba\x68\x5d\x24\xae\xc6\x52\x1a\xdb\x14\x08\x02\x5f\xf7\xd6\xa0\xca\x8a\xda\xbb\x63\x74\x8d\xc5\x6c\x28\x83\x38\x84\x24\x34\x4c\x42\x7f\xd5\x1d\xf6\xe3\xf4\xeb\xbb\x78\xd0\x3b\xbf\x8d\x3b\xbf\x8d\x6d\xa1\x96\x77\x7e\x1b\x77\x7e\x1b\x37\xe5\xb7\x51\x00\x62\x33\xda\x8b\x8d\x7b\x70\xac\xa8\xb9\x20\x49\xbc\x4d\x51\x7b\xc1\xef\xe3\xfd\x8b\x8f\xc7\x9f\xff\x38\x5e\x1b\x19\x82\x6f\xd5\x67\xa3\x70\xeb\x75\x31\xf3\x73\xf0\x5b\x6c\xfc\x5b\x6a\x6a\x77\x37\x11\x6d\x55\xc0\xdb\xad\x06\xb9\xad\x64\xe7\x35\x5f\xd8\x7f\x22\x1b\x6f\xeb\xf6\xfd\x03\x04\x8c\xd5\xa2\xe8\xce\x4e\x79\x67\xa7\x54\xff\xfe\x54\x76\x4a\x7e\xe8\xef\xac\x94\xcd\xb3\xbb\x7d\x2b\x65\x5d\x93\x6f\xc5\x0c\x59\xe2\x9c\xaf\xd5\x08\x79\xcf\x9a\x95\xdf\x36\x13\xe4\x77\x8b\xa3\xf8\x29\xf9\xb8\x81\xc4\x9f\x7f\x6a\xdb\xe1\x9d\x1e\xef\xdb\xd3\xe3\x95\x1a\x1e\x11\x04\x19\x7a\xc9\x0f\x65\xda\xfe\x0d\xba\x40\x54\x5c\x5f\x7c\x6f\x51\x66\xf1\xa5\x84\xe8\xad\x68\xce\x3f\xc4\xa2\x8b\x3b\xd5\xe1\x9d\xea\xf0\x4e\x75\xb8\x6e\xb2\x36\x71\xce\x3a\xd4\x8c\xb3\x46\x4a\xf5\xe8\x6b\xb8\x31\xbd\xb4\x45\x51\x95\x80\x6c\x7e\x45\x2b\xd4\xa7\x06\xf6\x8e\x5b\xb0\x4a\xc2\xee\x54\xc4\x4d\x8c\xdc\x6d\x29\x88\xa9\xcc\x60\xd8\x8b\x30\x65\x10\x6f\x55\x8a\xb7\x9f\x7e\x3d\x7f\xfc\xcf\xcb\x2f\xf4\x56\x6b\xfc\x88\x6d\xa5\xae\x29\x3b\x8d\xb0\x11\xa3\x5b\x19\xd1\x77\x20\x0a\x8c\x2d\x18\xca\x33\x0e\x05\x7d\x05\xbe\xaa\x17\xd2\x35\x7a\xcf\x42\xf7\x6c\x18\x37\x2b\x0c\x23\xc7\x6e\xac\x4b\xe2\x54\x54\xa5\xc5\x5a\xd5\x4d\x1a\xd2\xae\x71\x10\x1b\x9d\x14\xd0\xa6\x57\xac\xab\x02\xb2\xf2\x2a\xb2\x96\x19\xd1\x18\x99\xfc\x6b\x39\xcd\xa6\x5e\xcb\xec\xa1\x05\xee\xca\xdd\xaf\x8a\xc5\x9c\x00\xdf\x88\x09\xa0\xb8\xa3\x39\xea\x03\xdb\x0a\xbe\x45\xbb\x01\xa7\x9e\x04\xc3\xb8\xec\x53\x66\x67\x34\xc8\xfb\xc9\x0e\xbb\x82\x23\xed\x47\x95\xef\xcc\xcf\xbd\x4b\x53\x8c\x17\x58\xf2\xc2\x14\x1a\xce\x43\x4b\xa2\xb8\xcd\xce\x5a\x1f\xff\x7a\xa6\x9f\xca\xf1\x32\xc3\xb5\x7c\xf5\xf2\xb9\x0b\xdc\x5c\x9d\x5f\x2a\xcd\xbc\x39\x48\xb0\x38\x7a\xaa\x10\xaf\xa8\x1e\xb8\x22\x18\x35\x3b\xbe\x9c\x0b\xf3\x1d\x49\xbe\x5c\xbe\x54\xe0\x59\x6e\xd4\x86\x78\x68\xde\x5b\x55\x65\xe0\x34\x99\xaa\x4c\xfa\xf2\x55\xea\x74\x3b\x8e\x98\xcb\x2a\x76\x8e\xd5\x0d\x64\x41\x82\xb1\xe0\x5a\x9d\x8b\x88\x4d\x9d\x79\x09\x82\x76\x53\x58\x53\xd8\x84\x89\x5d\xa8\x12\xe8\xae\x6c\x43\xfb\x2a\x8a\x3d\x78\x5b\x8b\xc8\xe7\x74\xb3\x6b\xd8\xcd\x40\x5d\x5b\xb6\x0c\x98\xab\x97\x0d\xea\x6e\xd5\x2e\xd5\x3f\x57\xdb\x35\xe5\xcb\xf4\x9d\x2e\x21\xad\xba\x39\x60\x5a\x44\xeb\x96\xf6\xc7\xcb\x77\x8e\xaa\xe3\xe5\x40\x1c\x3a\x7c\x4e\x37\xb1\x5d\x2a\xdc\x6a\x25\x41\x66\x8e\x67\xbd\x80\x59\xb7\xc8\xd8\x3a\x36\xc8\x50\xb9\x6c\x17\xb8\xc3\xba\xe6\x6a\xa1\x5b\xb5\x66\xed\xf1\xb6\xae\x69\x07\x5f\x1b\x34\x36\xda\xbb\x95\x88\x27\xc4\x61\x03\x43\xf3\xae\xa8\x39\xe8\x7c\x3c\xd6\x3c\x07\x9d\x8a\xe3\xa5\xc8\xcc\x81\x5e\x6f\x6b\x97\x56\xad\xbc\x56\x9b\xc0\xff\x2a\x8c\x30\x83\x93\x35\xb3\x13\xaf\x3b\x82\x99\xcd\x5c\x4b\xca\x30\xa8\x78\x6e\xac\x62\x60\x83\x46\xe5\xf6\x23\x19\x2b\xc0\x6d\x9b\x41\xf1\x5f\x8f\xff\x7d\x11\x45\x17\xf1\x8d\xc4\x34\xa6\xe2\xcf\x5d\xcd\xc1\xbb\x9a\x83\x77\x35\x07\x33\x03\xda\x53\x83\x01\xed\xe9\xaa\x06\xb4\xc1\xe0\x8f\x55\x74\xb0\x61\x3e\xdf\x64\xd5\xc1\x86\xf9\x7c\xab\x65\x07\x1b\xa6\xf4\xcd\xd5\x1d\x1c\xec\x82\x3c\x5a\x76\x3d\x2b\xd7\xd3\xa6\x84\x3b\x9a\x8d\x44\xde\x8a\xdd\xad\x24\xdd\x1c\x56\xc4\xcd\x7b\x9d\x37\x42\x3a\xc2\xb6\xdf\x08\xc7\x02\xd0\x2d\xbd\x0a\x56\x0d\x5a\x2d\x47\xba\xa7\x7b\x6a\xed\x7a\xb5\x2a\xd4\x5e\x4a\x0a\x4d\x61\xf0\x4f\xf2\x58\xee\x52\xfc\xfb\x13\x6d\xc3\x94\xb6\x8b\x4d\xf0\xbb\xfc\x7c\x85\xa8\xf7\x27\x75\x41\xef\xd7\x12\x4b\xda\x24\x31\x66\x46\xcd\xbb\x50\xd3\x3f\x93\x8b\xda\x5d\xe9\xd1\xed\x20\xaa\x77\xa5\x47\x0b\x60\xdc\x95\x1e\xdd\xbe\xd2\xa3\x77\x9e\x88\x7f\x66\x0f\xb5\x56\x2d\xe1\xf6\x28\x32\xb7\xc8\x5d\xed\xf7\x87\x7f\x7b\x7d\x18\x3f\xbd\x55\x77\xb5\xce\x5e\x6a\xb7\x51\x6e\x74\x03\x2e\x6d\x8e\xd9\x7a\x3a\x28\xc8\x09\xfc\x4e\x7d\x8d\xe8\xf4\x38\x57\x0e\x56\x24\x30\x1b\xfb\x91\xa4\xf4\x0d\x11\xb6\x76\xf6\x6f\xa3\x31\xb6\x7b\xc6\xf9\x8a\xe8\x2e\x29\x9f\xae\x6b\x31\x4e\xbd\x03\x4b\x76\xc8\x9c\x18\x41\xca\x9c\x04\x23\x47\x5e\x6d\x52\x7b\xe1\x24\x58\x3c\x4b\x09\x83\x13\x51\x67\x2c\x75\x34\x7d\x5b\xf3\x90\x01\x76\x4d\xf3\x75\x73\xa0\x4f\x21\x75\xa0\xa3\x86\x5e\x07\x7a\x4d\x0f\xb9\x36\xf4\x71\x5c\x00\x9a\x3a\x90\x20\x47\x0d\x60\x0d\x63\xa9\xd3\x0f\x53\x44\x90\xe8\x08\x27\xc5\xde\xfb\xed\xf6\x7c\xbb\x47\x25\x56\xdb\x8a\xad\x2e\x07\xa9\x37\x56\x67\x2d\xf8\xe4\xa4\x4e\x54\x47\xc9\x42\xa6\x9a\x6a\x21\x8a\x26\xdf\x57\xd9\xd3\xaf\x11\x96\x89\x9f\x18\x22\xb3\x08\x43\x16\xe1\x49\x6f\x02\x19\xba\x80\x97\x76\xfe\x04\xdd\x5c\x5a\x0a\xce\xb5\xd9\xaf\x96\x82\xc1\x65\xc4\x35\x16\x3f\xae\x41\xe7\x4a\x3b\xbb\x82\xa5\x08\x4f\x08\xa2\xf4\xe6\x30\xb4\x98\x53\x46\x10\x9c\x6d\x09\x8a\x36\x30\xa3\x94\xfc\x5c\xff\x8c\xd6\x39\xd0\xf5\x6e\xf0\x8d\xa1\xdc\x76\x80\xb6\x23\x3e\x57\x51\xb5\x58\xf9\x37\xed\x49\x5c\x72\x60\x91\xe5\x98\x32\xc7\xec\x62\x89\xe8\x37\xc7\xef\x0e\x8f\x5e\xd4\x54\x89\xb6\x22\x45\xc6\xca\xbf\xda\x90\x05\x10\xba\x9c\xb5\x3a\x6f\x43\xd5\xd7\x6a\x5c\xd0\x7a\xbe\x86\xe9\xcc\xba\x86\x8f\xaf\xce\x6a\x15\x37\x62\x86\x56\x93\x87\x7b\xfb\x75\xd4\xe0\x2e\xd2\x9c\x89\xdb\x2d\x78\x27\x7f\x8e\xc4\xee\xb2\xf3\x31\x77\xd7\xf6\x54\x6f\x77\xa5\xeb\x7a\x95\x16\xf7\x59\xa3\x6d\x43\xd3\xeb\x8d\x13\x32\x83\xac\x87\x17\x5c\x7e\x6a\x18\xdd\xa0\xe2\xd3\xbb\x99\xc7\x0b\x02\xe3\xe8\x77\xd4\x34\x01\x37\x77\xb1\xe6\xf8\xb9\x88\xd8\x34\x59\x70\x81\x68\x21\x6b\x46\x49\x33\xd0\x8a\x17\x42\x8d\xe3\xe7\x3b\xe9\x8c\xbd\xd6\xe1\xac\x75\xe8\xbe\xe6\xb3\xf9\x61\x1a\x51\x47\xdd\x51\xce\x82\x22\xce\x14\x0b\x58\x9c\x71\x42\x1c\x36\x45\xce\x91\xd8\x80\x59\x9b\x19\xa2\xd3\x9b\x39\xc5\x8d\x2e\xdf\xab\x9f\xd9\xf2\xd9\xec\xe4\x01\xd7\x59\x05\x74\xf3\x8e\x67\xb7\x59\x6b\xd8\x91\x3d\x4d\x10\xf3\x10\x28\x1d\x4e\xff\x3f\x77\x57\x2e\x3f\x9c\xce\x6d\xdb\xdc\xd5\xfe\x76\x14\xbe\xfa\x6d\xfa\xf6\xbb\xad\x72\x57\xbb\xf3\x67\xbb\xf3\x67\xbb\xf3\x67\xd3\xec\x6d\x7b\x26\x83\xdb\xde\xca\x1e\x6d\xa6\x5c\x60\xdf\xb2\x47\x5b\xfd\x7c\xbe\x4d\x8f\xb6\xfa\xf9\x7c\xb3\x1e\x6d\xf5\x53\xfa\xf6\x3c\xda\xf8\x74\x36\x64\x15\xdb\xb3\xac\x98\xf0\xa7\xaf\x8b\x90\x5a\x8b\xb7\xb8\x3e\xc2\xb5\x78\x1d\x37\x96\x14\x28\x84\x22\x17\x2a\x0a\xe4\x6f\x56\x28\x28\x90\x47\xf9\x77\x39\xe1\xbb\x66\x33\xff\xcf\xa9\xaa\xb5\x8b\x85\xdf\x66\xf6\x65\x5d\x6e\x15\x0b\x86\x16\xdd\xb1\xf1\x52\x76\xe2\x68\xf3\xe8\xe4\x09\x60\x33\x15\x93\xf2\xbe\x3a\x9d\x9a\x56\xdd\xa7\xf4\x21\xef\xe8\x5a\xa7\xc5\x05\xed\x86\xf9\x94\x5f\x77\x9f\xc8\x6b\x44\xa7\x9d\x66\xb0\xa1\x3d\xcd\xc7\xdd\xfc\x86\x16\xf8\x40\x98\x0b\x53\xa6\x2a\x21\xe5\xd7\xab\x6c\xe5\x82\x0e\xe4\xfa\xd6\x3c\x8c\x68\xe3\x2c\xf4\xf7\xdd\xa7\xf1\x26\x61\x4e\xb4\xc2\x54\xee\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\xef\x1c\xd7\x57\x04\xf1\xce\x71\xfd\x5a\x1d\xd7\xb7\xd1\x5f\x9d\xd2\x28\xc1\xbd\x71\x42\x66\xdb\x61\xba\x0c\x5f\x52\xfa\x1d\x9a\xff\xb7\xd9\x74\x09\xe7\x91\x0b\x5c\xf4\x05\x05\x0b\x26\x4c\x8e\x10\x07\x28\x76\x01\x97\x40\x29\x9c\x48\x2b\x64\x4d\x15\xae\xb4\x4e\xaf\x34\x29\xaa\xc3\x10\x8a\x22\xbd\xca\x05\x49\x25\xe2\xe3\xff\x4d\x13\xf3\x71\x34\x9d\xcd\x22\xe6\xa6\x3e\xe7\xa2\x9e\xb8\xf8\x2b\xf7\x5b\x4a\x7d\xd1\xc5\x98\x12\xa3\x16\x8c\x96\xea\xd7\xa2\xa8\x8d\xc5\xad\x29\x26\x65\x57\x88\xab\x8e\x23\x15\xeb\x2a\xf8\xc8\x5e\x5a\xfb\xa0\x3e\xb3\xd1\x74\x6f\xf5\x94\x6a\x4f\x53\x6f\xce\x82\xe3\xda\xf3\xb7\x47\xc7\x9f\x3e\xbe\x7f\x95\x31\x4d\xee\x4e\x84\xa5\x73\x11\xdd\x51\x58\xa5\xfd\x29\x9b\xc5\xff\x2b\xdd\xb5\x21\xa2\xd1\x44\x5e\xf0\x62\x26\x44\x6c\x85\x29\x8a\xe7\x0e\x4e\x92\x39\xc2\x88\x38\x38\x21\x68\x8c\x08\x91\x86\x5d\xde\x8a\x41\x22\x18\x23\xf7\xd3\x59\x0c\xf1\x67\x6d\x9a\xaf\x92\xe0\xb3\x73\xac\x16\xd0\x3a\x33\x9b\xc9\x85\xa6\x01\x27\x55\x8f\x99\x37\x6a\x11\x4d\x55\x62\xcc\x0e\x29\xb9\x13\x99\x28\xf4\x0c\x5a\xea\x9f\xb5\x8c\x7f\x38\x41\xd2\x09\xc9\x1e\x80\xaa\x2b\x5d\x57\xff\x53\x53\x1a\xbd\x74\x32\xcd\x69\xf4\x8a\xad\x5a\xa7\xdc\x09\x15\x2f\x9f\xaf\xb9\x10\xc5\x7c\xb5\x9d\xc6\xfe\x11\x4d\xe1\x79\x94\x90\x35\x21\xc8\xbb\x31\xc1\xe1\x56\x32\x73\x49\x72\x98\x7e\xfd\x1c\xc5\xb0\xdd\x67\xac\x65\x26\xaa\x93\xb5\xa6\xc1\xcf\x62\x0a\x8c\x71\x1e\xb6\x99\xc7\x8a\xf3\xfb\xf0\xe1\xd5\xba\xb3\x13\x5d\xac\x35\x37\x09\xc4\xca\xb3\x2a\x07\x1e\xa8\x5e\x55\x2e\xd8\x55\xd2\x81\x36\xce\x57\x89\x3e\x69\xaa\xd9\x4d\x90\x09\x25\x9f\xfe\x3b\x89\xf8\xdd\xe8\x02\xa7\x42\x03\xca\x89\x6d\x6b\x52\x40\xaf\xe0\x5e\x57\x4f\x17\xdc\xcc\xb3\x35\xab\xc7\xd6\x0b\x23\x18\x27\x93\xec\xbe\x4d\xd9\x0c\x7e\xe5\xd6\x56\x05\x8b\xf0\x39\x8c\xa3\x10\xa6\x95\xc1\xd4\x75\xf5\xcc\x56\xac\xb0\x2a\x7a\x68\xd3\x59\xb6\x2c\x69\x72\xc1\x14\x89\x15\x6d\x52\x5a\x6b\x4f\xbe\xd2\x35\xf9\x6a\x55\xd2\x27\xf2\xae\xdd\x53\x16\xe6\xac\xe7\x53\x70\xb2\x5f\xc3\xed\x64\xc5\xc5\xd2\xae\xb4\xb2\x7e\x42\xa2\x48\xef\x5b\x3d\x10\xee\x65\x8e\xc2\xc6\xfb\xb8\x4d\x6b\xd7\x09\xb1\x6a\xad\xbb\x20\xb6\xbd\x7e\x9c\x9b\x11\x80\x03\x4d\xd1\x69\x6a\x5b\x37\xc3\x55\x57\xb1\xc3\x0a\xed\xa5\x1a\x60\x35\x8b\xb4\x70\x5f\xb6\x0c\x0d\x0b\x60\x0f\x9e\x62\xd6\xbb\x83\xb7\x5f\x06\x2f\xeb\xc8\x6e\x47\xec\x81\x7d\xb0\x72\xa5\xb8\x4e\x75\x4b\xcd\x92\xe6\x26\x24\xc8\xb2\x9c\x76\x5b\x95\x39\x64\x49\xdb\xed\x89\x6f\x66\x1f\x7f\xfa\xf0\x63\x98\xd4\x64\x66\xec\x5c\xbb\xb9\xfb\x8b\x2d\x88\x9a\xce\xd7\xc4\xdd\xc6\x82\x1e\x92\xee\x1f\x06\x01\xa2\x34\x21\x69\xc1\x88\x03\x11\x57\xfc\x19\x61\xb1\x2a\xda\xbb\xae\xc5\x3d\x4a\x91\x0b\x44\xe9\x03\xcc\xe2\xab\x3d\xa7\xe2\x6e\x26\x2e\xba\x78\x1b\xfc\x33\x59\x10\x47\xcc\xba\x32\x9a\xb5\x4a\xaf\x4d\x2a\xed\xc0\x03\x75\x2c\xcb\x2d\x00\x2f\x17\x36\x36\xaf\x5d\xc6\xf8\x3e\x01\x2e\x5d\x9c\x51\x46\x6a\xb7\x42\xef\x49\x99\xc7\xbb\xb5\xea\xdd\x6b\x8b\xf2\xc7\x41\x32\xef\x28\xcb\xb7\xf0\xc8\x85\x88\x9e\x57\x89\xf2\x12\x75\x63\xf1\x17\x70\x27\x71\x72\xc6\x1f\x75\xe2\x92\xdb\x9f\x6e\xa8\x84\xf9\xda\xf8\x6c\x2d\x63\xbe\x22\x56\x0b\xc5\x6c\x4a\x45\xcd\xcd\x01\xb0\x6b\xa3\x76\x13\xdb\x78\x4b\xeb\x9d\xdb\xd3\x85\x3f\x40\xe1\xf3\xca\x2d\x87\x93\xcc\x18\x2d\x10\xb1\x13\xd1\x5e\x8c\x26\x30\xb8\x74\xf5\xb3\xd1\xd1\x94\x5b\xb3\x14\x1d\xea\xa7\x07\x71\x82\xb7\xa4\x7c\xfa\x62\x1e\x47\x01\x5c\xa5\x82\x7a\x47\x6e\xbb\x46\x5d\x72\x03\x8c\xc8\xf5\xd4\xc0\xdf\x9e\x35\x7c\x95\x4c\x92\xc5\x0a\x67\xc9\x0a\x8e\x75\x4a\xe0\x3f\xf9\x26\x4a\xe0\xc7\x55\xf4\x75\x40\xa1\x25\x70\xb7\x51\x02\x9f\xb2\x64\xee\x2c\x68\x84\x27\x52\xd9\x75\x78\xf4\x4a\x32\xb8\xcf\x64\x0c\xef\x45\x14\xc7\x7c\xf6\xe2\xa3\x64\xc1\xfa\x35\x90\x6c\x7d\x89\xfc\xa7\x16\x57\xa9\x3c\x24\x9d\x40\x6e\xf2\x2a\x5d\x01\x0f\x46\x37\xb9\x0d\x50\xd5\x6b\xbd\xa9\x16\x74\x3b\x68\xdc\x47\xba\xc2\x0d\x75\xed\x04\xee\xd1\x37\x41\xe0\x16\x25\xdc\x75\xc0\x9f\x25\x64\xb7\x41\xdd\x16\x14\x95\xc9\xda\xb7\x4a\xbf\x1e\x5b\xd0\xaf\x8f\xd4\x2e\x40\xa8\x6e\x6a\x8f\x37\x4d\xbc\x1e\x6d\x82\x78\x35\x30\xec\x4a\x0e\xd4\x59\x77\x88\x13\x7c\x39\xe3\xec\x5a\x95\x7b\x07\x9b\xe2\x26\xb7\x81\xb7\xd4\x0d\x31\xb7\x2d\x20\x08\x50\xb6\x90\xf6\x9a\x02\x5c\xb7\x8f\xf6\x86\x55\xf4\x75\x40\xa1\x25\x70\xb7\x41\x7e\xe5\xc4\x24\x05\xfe\xb6\xa9\xef\x43\x0b\xea\xfb\x3c\x3b\x90\x2b\x13\x60\xb3\xed\x73\x0d\x02\xdc\xd9\x6c\x66\xa5\x7d\xae\x36\xda\x6f\x75\xd9\x6c\xce\x57\x33\xb8\xa1\x6c\x36\x65\xf3\xd7\xed\xbb\x70\x56\x15\xb4\xdb\x61\x98\x7b\x18\x7c\x37\xfb\xc8\x8e\x6a\x12\x0f\xcf\x93\x38\x0a\x44\xc8\x86\xfe\x67\x9a\x8e\x38\x44\x98\x45\xac\xf0\x6c\x06\x31\x9c\x88\xe3\xe2\x6a\xce\x96\x65\xc3\x9b\x16\x18\x22\xba\xbd\xdc\x51\x39\x66\x0a\xd7\x7d\x6a\x8d\x13\xb5\x29\xd5\xe0\xd9\xc5\x98\x9a\x0c\x8f\x5e\xd1\xf4\xfd\xe5\x73\x39\x7b\xd5\x2a\x8f\xe5\x10\x97\xb7\xfd\xb5\x5e\x04\x70\xa2\x07\x30\xf0\xad\xa9\x4d\xb1\x43\xba\xbe\xcc\x15\xe8\x91\x08\xea\xeb\xee\xfa\xb3\xa6\x8a\xbe\x44\x69\x5e\x67\x93\xe8\xe4\x89\xd7\x50\x72\x35\x0b\x7c\x5b\x0b\x67\xa5\x28\x19\x6d\xec\x42\xa8\x51\x21\x57\x73\xbe\x8b\xd8\xe5\x1c\x25\xa9\x25\xe6\x71\x41\x9f\xab\xb9\x78\x3d\x36\xa4\x97\x6c\xb2\xcb\x99\xc2\xd4\xea\x91\x65\x6b\xe5\x33\xf0\xd0\x9a\x52\xb4\x69\x03\x6a\xe7\x6e\x95\x0d\x78\x70\x3b\x1b\xf0\xa5\x0e\xf5\xda\x9b\x4c\xf1\x7c\xd7\xbf\x8b\x1e\xd6\xed\xa2\x87\x1d\x77\xd1\xc3\x1b\xd9\x45\x07\x35\xaa\x75\x93\xc9\x23\x23\xa3\x6b\x19\xf3\x3b\x6d\x82\xf7\xfc\xfe\x5b\xdf\x44\xf8\x4a\x4c\x42\xf2\x9a\xd4\x99\xc2\x73\xe4\xa0\xd9\x19\x0a\x43\x14\x3a\xe2\x8a\x2d\xe7\xa6\x5e\x11\xc5\xcd\x37\x03\x9c\xcf\x91\xca\xf7\x6a\x3a\xa6\xd9\x85\x59\x90\x4a\xab\x77\xdb\xfb\x24\xae\xbf\xd8\xf8\xcb\xcd\x5d\x6b\x06\x6a\xb0\x77\x3b\xd4\x60\xe5\x8d\x50\x25\x04\x7b\x5d\x08\xc1\xaa\x64\x60\xbf\x8e\x0c\xec\x77\x24\x03\xa6\xc8\xa8\xcd\x93\x81\xbd\xfa\x14\xb3\x26\x9e\x7c\xb3\x6c\x77\x95\xc9\xdd\x16\xf6\x7b\xdb\x12\x40\xfe\x7b\x7a\x34\x3b\xfe\x65\x30\xb9\x81\x04\x90\x77\x59\x1b\xbb\x64\x6d\xfc\xd3\xa7\xfc\xda\xe2\x54\x5f\xab\x26\xe7\x68\xca\xb5\xd1\x14\x72\x2b\x7d\xb7\x7a\xba\x64\x5b\xc9\xac\x63\x6c\xd3\x3d\xbb\xce\xcf\xa2\x1b\x4d\x38\xeb\x18\x34\x6d\x3d\x9b\xda\x29\xac\x03\xf7\xe6\x81\x55\xee\x73\x15\x58\xb3\xe7\xdd\x41\xcd\x7d\xf3\xec\x55\x63\xd7\x92\xa9\xa4\x7a\xa8\x5a\x88\xd8\x5d\x2a\x92\x9b\x4e\x45\x72\x44\x10\x64\xe8\x43\x94\x27\x1a\x79\x83\x2e\x10\x15\x3a\x6f\x7e\x9d\x51\x56\x93\x3a\x44\xfb\x50\xa6\x1d\x79\x2b\x5a\xf3\xef\xb0\xe8\xe1\x2e\x73\xc8\xb6\x65\x0e\x11\x4b\x66\x69\x7a\xaa\x71\xa5\x30\xd3\xb0\xca\x26\xd2\xf2\x36\x18\xde\xd9\x66\x6f\xa8\xee\xc4\xcd\x27\x9b\x28\x6f\x63\x33\xe4\x1d\x73\x63\x54\x8f\xc2\x5d\x02\x8a\x46\x21\xe5\xb6\x42\x88\xd2\xf2\x49\x79\x21\xc7\xed\xb1\x5a\xfc\x77\xf0\x23\xfd\xe5\x75\xf0\xb9\x31\x9c\x28\x48\x66\x67\x11\x46\xe1\x61\x18\x12\x44\xa9\x51\x04\x5a\x98\xf4\x17\x65\x1d\x43\x1e\x16\xd4\x4c\x6a\xd4\x4d\x14\x47\x35\xac\xb5\xe1\x82\xaf\xa9\xd7\xd1\x64\x90\x75\x0b\xb1\xca\xcf\x11\x65\x22\x9f\x68\x82\xeb\x6b\x3b\x99\x1d\xdd\x4d\x4f\x6a\xc1\x73\x2b\xce\xba\xf6\xf5\x8c\x3a\x16\x32\xd2\xa6\xf4\x41\x4a\x4b\xc0\x9d\x13\x34\x87\x04\x85\x9f\x7e\x5b\x20\x62\x59\x3b\xcc\xa4\xa4\xb2\xab\x68\x64\x6b\x47\x71\x37\x5d\xd5\xc8\xda\xdd\xba\x29\xbf\x45\xb3\xfe\xd4\xad\x0f\xaf\xd0\x37\x52\x56\xf2\xc8\x55\xa7\xb3\x25\x78\xc5\xcc\x2f\xac\x5b\x07\xc9\x58\x5c\xcb\xb8\x67\x20\x83\x01\xc2\x4c\xfa\x65\xc8\x23\x1b\x06\x6e\xc9\x25\xa8\xe5\x33\xd7\xae\x0c\x97\xe5\xf6\x0a\xb5\xbe\x6f\x69\x8b\xe5\xd3\xbb\x9d\x3d\x66\x42\xf2\xe6\xb7\x4f\x53\xd2\x05\x21\xee\xfd\x18\xe1\xf0\x9d\x92\x7e\xda\xab\x3d\x6a\xa2\x42\x90\xe0\x00\x96\xbd\xd0\x4a\x1d\x67\xb7\xcb\x29\x70\x07\x7b\x8f\xfb\xbb\xfd\xdd\xfe\x20\xcf\x8e\x33\xcc\x43\x6d\xca\xb0\xac\xbc\xcb\xd6\xdc\x4b\x41\x32\xbf\xec\xa5\x61\xe0\x65\x06\x30\x65\xd3\x73\x56\xd9\xcd\x67\xb8\xd6\x26\x19\x68\xec\x77\x5d\xe6\x95\xb6\x25\x6f\xd0\x6b\x97\xd8\x3d\x93\x70\xdd\xd4\xb3\x96\x6d\x78\xb3\x4c\x5d\x13\x1b\x75\xfb\x7a\xf1\x0c\xba\xed\xe1\xed\x2e\xf6\xbf\x84\x3f\xce\xff\xd5\xcc\xdb\x29\x48\x5d\x58\xc7\xdb\x59\x47\x65\x17\x30\xe0\x7e\x7b\xc5\xac\x2b\x8c\xd9\x5a\xd5\x6e\xeb\xab\xcd\xdd\x55\xc7\xbe\xab\x8e\x7d\x57\x1d\xfb\x0f\x58\x1d\x5b\x63\xab\xad\x64\xba\x1a\x56\xda\xba\xfc\xac\x2d\xc3\x63\x93\xf2\x40\x8e\xd0\x2f\x17\x4a\xce\x4d\x06\x92\x7d\x73\xff\x9f\x6b\xac\xe7\x9a\xcf\x28\x93\x17\xec\x0b\x2b\x97\xd9\x5c\x7b\xf1\xbb\xdb\x4e\xeb\x80\x0e\x13\x1e\x6e\x65\x36\x1d\x26\xd8\xaa\xf1\xb0\x85\xcb\x02\x2a\x70\x72\xeb\x95\xa1\xb7\xe4\x94\xad\xaa\x19\xb1\xb9\xd3\x37\xae\x15\x59\x89\xea\xd9\x33\x0e\x37\x52\xeb\xb9\x89\x49\x53\x55\x74\x44\x9c\xc8\xc4\xcd\x04\xae\x6e\xc5\x48\x8a\x4e\x51\xcd\xdd\x76\x2f\x36\xbc\xc6\x3e\xb0\x16\x37\xf7\x5b\xc4\x4d\xfb\x35\x1e\x68\x16\x8e\xba\x6c\x35\x96\x6e\x5a\xad\xe5\x24\xba\xa5\x19\xab\xd6\xf3\xdd\x94\x78\xf9\x47\x2c\xdc\x9b\x4d\x6e\xdb\x1c\xb7\xf6\xf7\xff\x3d\xb9\x7c\x1e\xc0\x3b\xc7\xad\x3f\x8d\xe3\x56\x94\x55\x86\xbf\x73\xde\xfa\x76\x9c\xb7\x08\x9a\x44\x94\x21\x62\xac\x87\x56\x7c\x59\xf0\x25\x4a\x57\xbb\xd5\x9f\xe8\x7d\xde\xc7\xc6\xdd\x9f\x38\xf7\xd7\x38\x81\x6a\x83\xd5\x26\xf1\x26\x61\x8e\xe5\x44\xee\xbc\xa3\xee\xbc\xa3\xee\x0a\x35\xdd\xb9\x5b\xdd\x15\x6a\xba\x2b\xd4\x74\x57\xa8\xe9\xae\x50\xd3\x6d\xf8\xc9\xd5\x8a\x85\xb7\x6a\x4f\xcd\xb4\x1c\x3b\xc1\x14\x12\xd6\xff\x22\x16\xf2\x5a\x25\xd5\xfc\x81\x90\x4a\x0b\x9a\x16\x51\x24\x08\xc6\x43\x37\x0a\x79\x3f\x09\x1e\x5e\xbd\x7f\x71\xfc\xe2\xc3\xf0\xe4\x4a\x96\xd6\x51\x6f\x96\xa7\x4b\x20\x20\xe5\x42\x7e\x18\xa3\xe1\x15\x6f\x7a\xfc\xf1\xe8\xe8\xc5\xf1\xb1\xd6\x98\x2e\x44\x9a\x1c\x77\x79\x0a\x5e\xbc\x7f\xff\xf6\xbd\xf6\x0a\x11\x92\x10\xde\xd1\x12\xa8\x56\xc3\xab\x25\x10\x4f\x87\x57\x4b\x21\xfd\xdb\x23\xaf\x22\xdf\x83\x8e\x08\x2f\x60\x19\xb0\x4d\x69\x04\x70\xb3\x46\xe0\xe8\xd1\x8b\x77\x2f\xd8\xce\x8e\x59\x23\x70\x2c\xb7\x82\xfb\xf3\x02\x92\x50\xcf\x6f\x1e\x46\x74\x0e\x99\x90\xbb\xd5\x76\x71\x1f\x40\xc6\x08\x9f\xf6\x83\xdc\xf3\xaa\x6a\xdc\x16\x0f\x7a\x62\xe2\xd9\x9d\x4f\x49\x90\xd9\xa9\xe5\x1b\x0b\xdb\xb3\x34\x24\xc8\x0e\xb2\x9a\x4b\x92\x7d\xc8\x74\x01\xa7\x05\x0b\x77\x0e\x73\x1e\x87\x5d\x96\xe9\x1f\xe5\xd9\x8a\xb2\xa2\x1c\xfc\x1b\x19\xf4\x99\x6d\x26\x9b\x5c\xe7\x65\xa3\xae\x04\xf2\x65\x28\xea\x80\xd1\xe3\x69\x72\x21\x18\x75\x9d\x69\x0f\x17\x04\x6a\x0c\x7c\x32\x9b\xa7\x15\x17\x04\x6e\x26\x8b\x88\x13\x69\xce\x0d\x4b\x1d\x85\x66\x27\xde\xdf\xdd\xdd\x6d\x60\xea\x53\xd6\xcf\x15\x67\xc9\xc2\xc2\x5f\xc7\x83\x8b\x1c\xe8\x89\x50\x00\xc1\x18\x15\x64\x97\xa3\x64\x1e\xa1\x30\x63\x3c\xf7\x80\xab\x98\x39\x8d\xb5\xbc\x6f\xd2\x44\xb7\x58\x35\x5a\x8d\x1e\x2d\x8b\x26\x8f\x79\xb7\x25\x13\x82\x56\x71\x9e\x7f\x92\x55\x94\xa6\xe1\x0b\x48\x1d\x88\x9d\x39\x49\xce\x62\x34\xbb\x96\x55\x6b\x10\x8a\xf5\x0b\x41\x19\x0e\x23\xa1\x26\xc8\xd0\x57\xe7\xa3\x6c\xaa\x12\xc2\x22\xc6\x67\x5a\x32\xad\x1e\x25\xf3\x4b\x27\x65\x67\xb0\xe2\xf6\x5c\xce\xb2\xb0\x29\x72\x82\x38\x9a\x9f\x25\x9c\xe8\xe5\xa6\xc7\xc1\x3e\x78\x54\x2a\x3c\x22\x01\x65\x12\xca\x3d\x55\x01\x30\xfb\xb6\xc7\xd0\x17\xa6\xc0\x56\x04\xa9\xae\x3a\x89\xd0\xfe\x1f\x80\xc7\x5d\xbd\xbf\x80\x28\x3e\x02\x2a\xa5\xa4\x57\xe7\x54\x4a\x37\x5a\xc6\x9a\x90\x46\xd6\x04\xd7\xb2\x26\x19\x36\x86\xb2\x45\x84\xc5\xad\xa6\xec\xbd\x9e\x9b\xbd\xdf\x49\xa8\xeb\x83\x30\x99\xd5\x34\x0c\x93\x99\xeb\x03\x4d\xc7\xcf\x39\x85\x5c\xa9\xef\x5f\xb1\x69\x44\xfb\x9f\xe8\x62\x8e\x48\x1f\xce\xe7\xf1\xa5\xc7\x9f\x00\x48\x26\x0b\x71\x30\x7c\x20\x5a\x88\x1b\x66\xc4\xd2\xbb\x52\x3e\xe4\xbb\x6a\x24\xfe\x0a\x93\x99\xf8\x25\x3e\x56\x9f\x7c\x8a\x23\xca\x10\x46\x84\xe6\x6d\xb2\x47\x9e\xbf\x04\x17\x51\x1c\x3f\x47\x94\x91\xe4\xf2\x45\x2c\x8e\xe1\x0a\x80\xe5\xa3\xf4\x09\x9a\x25\xe7\x88\xf7\x1c\x46\xe1\x4b\x4c\x11\x61\x86\x7e\xf9\xf5\x8e\x04\x44\xf7\xba\x0f\x01\x43\x39\xc5\x7e\xb6\x00\x7d\x55\xf8\xd2\x73\xff\x97\xdb\x97\x07\xc5\xcb\x90\x03\x5c\x47\xed\x56\xdf\x07\x57\x29\xbb\xa4\x01\xa3\x2c\x2a\xa8\x9f\x5e\xb3\x9e\xab\x98\x31\xd7\x4f\x99\xaa\xe6\xe6\x82\x3d\x73\xfd\xe5\xd2\x2f\xd9\x5d\x48\x2b\x23\x96\x55\xde\x34\xb1\x61\xb9\x96\x81\x56\x99\xac\xf4\x97\xa3\x7e\x2b\xb8\x74\x7e\x37\x1a\x7b\x87\x84\xc0\xcb\x7e\x44\xc5\x7f\x3d\xe4\xfb\x29\xf8\x4b\x0f\xf9\x5f\xbf\x16\xbb\x8c\xc6\x9e\xbb\xc0\x12\xde\xd0\x1d\x8d\x64\x42\x06\xe7\x58\xb0\x55\x5f\xbf\xde\xf7\xe4\x5f\xfd\x88\x21\x02\x59\x42\x9c\x08\x3b\x92\xd7\xe3\x3d\xab\xae\x15\xef\x76\x72\x0a\xc8\xe8\xfe\x2e\x80\xa3\xfb\x03\x40\x53\xbe\x8e\x91\xcb\xab\x71\x42\x3c\xde\x26\x01\xd1\x08\x9d\x94\xba\x3c\xf5\xfc\xef\xef\x7b\x64\xe4\x25\xa3\xa8\x8f\xd1\x17\xe6\xf9\x7e\x3f\x4c\x30\xf2\x1f\x3c\xf0\x70\x7f\xbe\xa0\x53\x2f\xe9\x0b\x9a\xe4\x83\xfb\xec\xeb\x57\xdc\x97\x06\xdb\xfb\xa3\x11\xf3\xbf\xe7\x43\xfa\xdf\x2f\x03\xb1\x2e\xb1\x7f\x05\x39\x08\x74\x14\x2f\xc7\x11\x86\x71\x7c\x79\xc5\x01\x20\x5f\xbf\x72\xca\x38\x1a\x45\x7d\x09\xf2\xd7\xaf\xe9\x5f\x9e\x9f\xb5\x8c\xc6\x1e\xf4\xd9\x94\x24\x17\x0e\x5d\x2e\x15\xda\xf0\x52\x60\xca\x80\xb8\xfb\x28\x9d\x3f\xc7\x22\x65\x24\xc2\x93\x1c\x85\xe9\x4b\x87\x88\x0f\x14\x8e\x14\x9f\x3c\x27\x09\x4b\x78\xc3\x3e\x4b\x8e\xc5\x87\xfd\x00\xc6\xb1\x87\xfc\x3e\x8d\x39\x05\x79\x02\x7a\x03\xff\x9e\x2b\x9b\xbb\xa3\xd1\xff\xc7\xde\xbb\xaf\xb7\x6d\x6b\x79\xa0\xff\xfb\x29\x68\xee\x3d\xde\xe2\x14\xa2\x25\xd9\x8e\x6d\x75\xd4\xd4\x75\xd2\x36\xd3\xdc\x26\x4e\xbb\x2f\x8e\x26\x1f\x4d\x42\x16\x1b\x8a\x54\x41\xc8\x8e\x63\xeb\xbc\xcf\x79\x8d\xf3\x64\xe7\xc3\x95\x00\x09\xde\x24\x39\x71\xf6\x74\x7f\x33\x8d\x45\x82\xb8\x2e\x00\xeb\xfa\x5b\xa3\x78\x67\x07\x12\x42\x4f\x31\x5a\xf8\x38\x41\x64\x6e\x46\xda\x13\x97\x5c\x0c\x0e\xed\xcb\x0b\x6f\x4e\xbf\xb9\xbb\xb3\xcf\x20\xfb\x5c\xf4\x86\x51\xc7\x04\x25\xb3\x0e\x2f\x7c\x22\xf6\x1d\xff\x64\xf7\x7f\x3b\x8f\x87\xbf\x86\x77\xcf\x9c\x18\x77\x1e\x0f\x8f\xee\xfa\x8f\xee\xf6\x06\x4e\xe7\xf1\xf0\x34\xf2\x66\x73\x18\x38\x8f\x69\x25\x7f\xdd\x75\x31\x4c\x71\x27\x76\xf4\x91\x16\xe6\x8b\x1c\x2a\x64\x4e\x63\x78\x4d\xcd\x26\x4f\xc9\xfe\xea\x88\xc4\x66\x96\x87\x09\x97\xcf\x41\x0e\xd9\x60\x16\xd4\xd9\x2b\xee\x52\x12\xb9\x88\x32\xaf\x37\xf7\x5d\xfc\x2c\xb6\x12\x14\x40\x44\xca\x5f\x40\x4b\x14\x01\xf4\x03\xaa\xaf\xb4\x12\x3a\x6b\xa9\x35\x5b\xa4\x98\x21\xd7\x78\x96\x81\xea\xac\x19\xc4\xd3\x24\x70\x6d\x67\x49\x88\x40\x6c\x2e\x36\x8a\xdb\x0e\x23\x18\x7c\x77\x87\xbf\x83\x9c\xe2\x08\x45\xe2\x91\xfc\xb5\x25\xe8\x3a\x1e\xf5\x00\x1a\x91\xf1\xb1\x4d\x87\x9d\x6f\xe3\xff\xc2\xdf\xc6\xdf\x7c\xe3\xa0\xf3\x78\x3c\x82\xe7\xf1\x78\x4b\x4c\xd2\x72\x33\xb2\x92\x57\x2d\x2b\x85\x67\x27\x37\xbd\x97\xff\x9a\x9b\x65\xa5\x6b\x14\x32\xf3\x05\xcb\x22\x5c\x29\x05\xd1\xf3\x2a\x4a\xa8\x87\xac\x9a\xef\x84\xfa\xee\x12\x71\x28\xa7\xc1\x4f\x62\x5f\x77\xe5\x15\x9e\xbc\x19\x3f\xb3\x6b\xe7\xfd\x6a\x40\xf6\x8c\xb9\x88\x65\xbf\xb1\x88\x4f\x92\x4f\xa8\x0c\xa6\x47\x9d\x98\xbc\x84\x53\x88\x9f\x78\xd8\xb3\x1b\x9a\x12\x1b\xe8\x79\xe9\x2c\x54\x18\x04\x74\x0e\x9d\x4e\x9c\x98\x69\x21\x3e\x86\xf1\x07\x35\xa9\x32\x53\xe6\xd1\x59\xe3\x20\xb4\xea\x6c\x8e\xf3\x31\x12\xe5\x33\xa7\xc3\x1e\x89\x14\xa6\x75\x11\x3b\xc6\x59\xd6\x4c\xcb\xec\x39\xfb\x5b\x6a\x1e\x9b\xc2\xe9\xd6\x2d\x51\xeb\x04\xd0\x46\x73\xca\xd4\x4b\xa7\x1c\xa9\xe9\x5c\x0e\x5d\xd2\x63\x98\xb2\x38\x5a\x1b\x70\xe1\x4a\x4d\xea\x68\xf3\x96\x81\x9d\x25\x0c\x54\x66\x70\x5c\x41\x5d\x72\x89\x54\xf7\x46\x9f\x35\xa5\x28\xf4\xa5\x40\x27\x1e\x84\xf1\x24\xa2\x66\xad\x8a\xca\x45\xd9\x39\x44\xa9\xf0\x98\x57\x7b\x55\x3f\xaf\xe6\x04\x93\xfa\xe7\xe3\x2a\x2b\x83\xee\x1a\xb8\x0f\xf6\x54\x20\xa8\x12\x47\x57\xd2\x04\x61\xe6\xf9\x90\x9b\xf8\xa0\xd6\x6c\xb8\x06\xe2\xb0\x52\xd3\x4d\x08\xa3\x60\xbd\x9a\x6a\xc6\xdb\x42\x7f\xdf\x52\x4d\xac\xe9\x88\xdb\xd8\x9e\xfc\x24\xc6\x1c\xc5\x64\xed\x49\x6a\x92\x3a\xfd\xb3\xcd\x51\x75\x70\x52\x73\x5d\x79\xbd\x8c\x5f\xe6\x5d\xbb\xaa\x60\x9a\xe3\xf0\xa5\x58\x9a\x56\x8a\xa5\x5e\x99\x58\x9a\x89\x7f\xaa\xd7\x58\x9d\xf0\x79\xb1\x08\xa3\x00\xa2\x92\x32\x74\xa5\x1d\xc0\xce\xab\xe1\x76\x1f\x88\x53\xdb\x20\xf7\x50\xb9\x4a\x1c\xd2\x66\x89\x6d\x09\xc8\x0d\x15\xfb\x30\x5a\xfd\x7b\xf6\x5e\xfd\x9e\xd6\x4a\x8f\xd9\xa1\xce\x7c\x8b\x8a\xdd\xa9\x17\x07\x11\x7c\x7a\x05\x63\x22\x8f\x50\x09\xf4\x0d\xf4\x61\x78\x05\x4f\x30\x46\x69\x2b\xc1\x96\x4a\x2a\xb4\x14\x99\x1c\x26\x3c\xf3\x49\xa4\x4f\x98\x7c\x49\xee\x43\x87\x4b\x1b\xd0\xb9\x5d\x32\x79\xfa\x0d\x8c\xc9\x5c\xb7\x92\xa3\xd9\xc2\xa4\x90\x09\xae\x20\x3b\x39\xb9\xf8\x1b\xa6\x99\xbb\x48\x87\x9f\x5f\xce\x06\xe4\xf7\xcc\x8f\x90\xb5\x4b\xa8\xd5\x0d\xd3\x97\xf0\xda\x76\x76\x76\x98\xce\x80\x3c\x42\x49\x14\x5d\x78\xfe\x07\x32\x93\xe1\xc5\x02\x43\xaa\x3d\x90\xce\x8a\x9c\xbb\xd2\x3c\x15\x99\x57\x1f\x14\xac\x2e\xe3\x56\x89\x98\x26\x66\x95\xf2\xcf\xf2\x97\xcb\xeb\x20\x62\xcf\x25\xff\xd3\xd1\x3a\x48\xae\x6f\xde\xb1\x4e\x7e\xbe\xf8\x5d\x0b\xb6\x7b\x0e\xc0\x42\xb0\xe2\x5e\x15\x6c\xad\xbc\x05\x4e\x26\x61\x14\xdd\xdd\xdd\x2e\x1d\x17\xc1\x60\xe1\xc3\x4e\x4e\xa6\x26\x5d\x46\xa3\xb8\x83\xc1\xc0\x01\xde\x08\x9d\xf7\xc6\x20\x1d\xa1\xf3\xbe\x64\xd8\xb3\x76\x21\xf0\x40\xea\x00\xb8\x74\x00\x76\x8a\x0b\xc8\x38\x0f\xcc\xd5\x17\xe4\xd7\x12\x18\xc9\x97\x6f\x08\xf6\xae\x23\xb5\x34\x71\x82\x66\x5e\x14\x7e\x12\xf4\x2c\xab\x22\x73\x95\xfd\xa5\x4c\x55\xde\xe9\x33\x6d\xa6\x7c\x60\xcc\xfc\x17\x33\xa1\x69\x02\x85\x34\xa1\x91\x07\xcc\x84\xc6\x4c\x5f\xd2\xf2\x15\x84\xa9\x9f\xc4\x31\x33\xfb\x2e\xc1\xf3\x57\x27\x4f\xf2\xf6\x35\xe0\x27\x71\x30\x14\xec\xf9\x12\xc8\xb7\xe4\x09\x91\xca\x55\x03\x1c\x79\x36\xbc\x5d\x02\xfe\x4e\xb7\xc5\xe5\xec\x76\x20\xd7\x17\x6e\x85\x5b\x2e\x01\x33\xe3\x49\x0b\x1c\x33\xfd\xbd\x7d\xf3\xcf\xa1\xd6\x36\x2d\xaa\x0e\xa0\xb2\x64\x03\x2b\x9e\xba\x7e\x35\xea\xa3\x12\x9b\x5e\x29\x05\xe4\xd4\x4d\x20\xde\x94\x55\x0f\x55\x4b\xaa\x8b\xdf\x2e\xce\xce\x52\xef\xed\xfa\x56\xbd\x3a\x61\x96\x2b\xad\x33\xd6\x75\x03\x36\xbe\xcf\x65\xe6\xd3\x5c\x40\x44\x95\x84\xec\x55\xc1\xb4\x32\x62\x96\xcb\xae\x92\xf7\x07\xf9\x11\x70\x0f\xac\x20\x0c\xba\x8b\x79\xc0\x0e\x05\xe6\xaf\x16\x6b\x2e\x59\x36\xd9\x82\x8a\xad\x81\x0b\xe4\x42\x02\xe0\xd2\x79\x21\xba\xa3\xb9\xec\xa6\xc8\x69\x74\x76\xb8\x40\x51\x14\xcd\xf6\x75\x01\xeb\x08\xd8\x7f\x2c\xe0\x42\xf6\xdb\x28\x19\x1d\x01\x7b\xb6\xc8\x52\x51\x43\x4d\x58\x61\xc3\x91\x2b\xc5\xde\xba\xf4\xbf\xa9\x3b\x09\x51\x8a\xb9\x46\x6e\x5c\x23\xbd\xf1\x99\x62\x6a\xe2\x9c\x4b\x5c\x8d\xd8\xc5\x27\x49\xe5\xd3\xc5\xfc\x64\xb1\x51\x7c\x0a\x2a\x65\x2b\x42\xee\x12\x0f\x5f\x97\xda\xda\x46\x8a\x8a\x3c\x41\x45\x94\x9e\x56\x8e\x6a\x9a\xd9\x33\x4e\xf0\x8b\xcc\xf2\xa9\xbb\x1b\x2a\x14\x90\x9d\xfd\x75\xca\x81\xd2\x78\xb0\x8c\x2a\x41\x2e\xd5\x91\x3a\xae\x24\xf6\x0b\x3a\x0b\x76\x3a\x08\x03\xad\x82\x56\x0e\xe4\xd5\xb2\xa6\xdb\xa3\xd0\x13\xa5\xc9\x02\xf9\x30\x8b\x15\x98\xd3\xb4\x49\x66\xfd\x1a\xcc\xf6\xc3\x00\xd8\xb4\xa8\x08\x04\x60\x1b\xb1\xc9\x4e\xb0\x15\x1d\x93\x42\xf1\x52\x45\xd0\x80\xba\x85\xcd\x44\x1f\xbb\xc8\xd4\x96\xdf\xbe\xb5\x14\x68\xf2\xd8\x5c\x49\x86\x5e\xd7\x08\x2f\x97\xb6\x86\xd2\x2a\xb7\x68\x75\x25\x9b\xda\xa5\x79\x65\x0a\xbf\xf2\x35\x75\xed\x98\xe1\x6a\xaf\x1b\xb4\xb9\x21\x17\x86\x26\x73\x57\x55\xc5\x7d\xcd\x1c\x6d\xb3\x2b\x98\x61\x36\x2c\x7d\xa3\xc9\xab\xe2\xb3\xcd\xa5\x7e\x28\x32\x56\xb7\xdd\x99\xa8\x68\xa4\x6b\x96\x4d\xaf\x76\xd5\xd5\xe3\x43\x36\x54\xc9\x0e\x14\xc6\xa0\xf2\x32\x52\xbb\xcd\x99\x53\x1e\x6e\x11\x4e\x42\xdf\x13\x90\x12\xe7\xb6\x37\xc1\x75\xb1\x51\x65\xbe\x26\xd5\xfa\xe4\x82\x3e\x6b\x13\xd4\xa4\x50\x94\x36\x14\xc9\x5b\xe2\xd0\xff\x70\x43\x4a\x34\x88\x6c\xd2\x9c\x62\xe6\x9a\xfb\x09\xbd\x34\xf4\x16\x6c\xbb\xc4\x5b\x46\x75\x57\xe1\x80\x11\x96\xfa\xa9\x60\xf7\x6a\x12\xc6\x1f\x92\xfb\x10\x25\xf1\x65\x3e\xc8\xe1\xef\xac\x4e\x83\xe7\x4d\xf6\xbf\x93\xd8\xa2\xfb\x87\x7a\xeb\x30\xc9\x1a\x06\xd6\xf5\x34\x8c\x52\x6c\xf1\xb3\x92\x65\x37\x23\x23\x03\x16\x82\x13\x04\xd3\x29\xf5\x71\x41\x37\x96\x77\xe9\x85\x71\x3e\x61\x6e\x59\x7b\xed\x95\x7d\x0a\xa4\x51\xdd\xae\x6d\xa4\x48\xad\x33\x14\x35\x20\xbb\x66\xbd\x69\xaf\x41\x7d\x54\x76\x4b\xaa\xfe\x39\xeb\x2a\x3f\x55\x09\x55\xaa\x3f\xbd\x4a\xf5\x27\x6a\xa7\xfe\x34\x68\x06\x33\x47\x8d\xe5\x7a\xfe\x36\xb1\x68\x71\x3d\x85\x22\xd0\xf5\x5f\x94\x6f\xe6\x0a\x36\xae\x45\x73\xd9\x18\xd4\xcf\xcf\xb3\xb2\xe3\x1a\x97\x9a\x86\x63\xca\x9c\x56\xa8\xdc\xa6\xea\xf0\x84\x54\x68\x50\xda\x1a\xfa\x7e\x77\xc7\x1e\x8e\xf8\xc3\x14\xf9\x06\x05\x97\x73\x5b\xa2\x17\xd3\x94\x5e\xb0\xa8\xbc\xf2\x9a\x29\x3f\xd2\x30\xfe\x50\xed\xc0\xbc\xc0\x61\x94\xee\x06\xc9\x6c\x17\x5e\xc1\x18\x0b\xd6\xfa\xcb\xf8\x2c\x7f\xd8\xfd\xd7\x0f\xfd\x45\xfc\x8b\x59\xbb\x51\xa9\xab\xe8\x1b\x65\x64\x2e\x19\x08\x9d\x4d\x39\x7f\xcf\xe5\x02\xd5\x3c\xc9\x3f\x1a\x17\x79\xf1\xb5\x76\x7b\xb6\x24\x6b\x7b\xe0\x29\x3b\x9c\xdb\x2a\xca\x8c\x1c\xb2\x61\xfe\xa8\x81\x3f\x5e\x94\x5c\x5e\x96\x5a\x44\xd8\x4b\xdb\x31\x9c\x2c\xcc\x12\x51\x70\x0b\xe3\x2a\x45\x5e\x1f\x99\x94\x05\x86\x41\x27\x8b\x62\xce\xa2\x43\xdd\xdb\x20\x44\xf8\xe6\xed\xcd\x1c\x82\x30\x3d\xf3\xae\xc2\xf8\x72\x69\x2b\x04\xc9\x1d\xe4\x80\x88\x89\xcf\xd4\xf3\xb2\x0a\xf1\x9d\x9d\x85\x5e\x18\x4a\xc9\x76\x6c\xea\xdd\x93\xed\xd8\x9d\x1d\xf9\x77\xec\xc0\x11\xe3\x26\xb7\x60\x94\xc2\xdb\xf4\x3a\x24\xe7\x43\xec\xdc\xfa\x5e\x0a\xb9\x62\x3d\xb0\x87\x70\x84\x1f\xb3\x5f\xa4\xd9\xa1\xd0\xb8\x6f\x5d\x20\xe8\x7d\xd8\xa2\x65\x19\xe7\x20\xca\xd2\x5f\xac\x2c\x67\x29\xd4\xb2\xcc\xc0\x14\xd8\x43\xf2\x8b\x1f\x30\xec\x3b\xea\x42\xc8\xbe\x63\xde\x84\xf6\x12\x8e\x28\x51\x5f\x41\x57\xfa\xf7\x41\x87\xfb\x64\xdd\x72\xbe\x35\x5b\x0c\x69\x13\xea\xf6\xb7\x47\x23\xe8\x52\x62\x7c\x35\xe9\x60\x76\xca\xac\x7a\x1d\x7c\x41\x5f\x4a\x76\x68\x15\xac\x2b\x31\xed\x08\x40\xa3\x4e\x0f\x60\x72\x9c\x42\xa7\x03\xc9\xd5\x6a\x3e\x80\x63\x25\xa6\x9e\x5f\x47\xcc\xce\x15\xbb\x9c\xa0\xc9\xd7\xb1\xcb\x88\x5f\x3a\x55\xaa\x16\x2e\xd3\xcb\xe5\x96\x6a\xda\xcb\x39\x6a\x22\x70\x3b\x83\x69\xea\xe5\x6e\x05\xd2\x6a\x75\xc7\x40\xac\xde\x0f\xbc\x07\xd8\xb9\xf5\xe8\x32\xe6\xdd\x32\xb3\xeb\xde\xa3\x5d\x72\x00\x5a\xf7\xba\xd4\xaf\x37\x72\xc2\x28\x9b\x46\xde\x83\x77\x77\xda\x15\x4e\x8e\xd9\xe2\x05\x4e\x99\x58\xf9\x09\xb9\xc9\xb9\x2f\xc7\xb0\x68\x7e\x62\x6b\xba\x25\x6f\x5c\xf8\x38\x7f\x83\x66\x53\xc5\x2e\x5e\x76\x66\xb9\x1c\xb0\x99\x59\x90\xc8\x59\x08\x48\x9d\xce\xb0\xe2\x73\x4e\x72\x8c\xba\x3a\x9d\xe2\xbd\x1f\x67\xb5\xb3\x0e\x77\x62\x56\x75\xec\x8a\x6a\x9c\xa5\xe3\x2c\x01\x23\x55\x83\xf9\x8f\x0e\xa6\xbc\x0b\xb0\xb6\x0b\xf2\x50\x16\xdb\x01\xf3\xc1\xb1\x86\x25\xf7\x42\x66\x7e\x58\xf0\xca\xc4\xd2\x59\x30\x99\x58\xd4\x92\x46\x8d\x8e\x82\xc6\xe4\x7a\x42\x75\x6d\x9d\xcc\x43\x91\x7b\x27\xfe\x33\x59\x30\xff\xc1\x74\x0e\xfd\x70\x72\x43\xc5\x12\x22\x8d\xa4\xde\x15\x04\x56\x82\x2c\x72\xb1\x92\x07\xfc\xc4\x72\xb6\x98\xc3\xe0\x08\xde\xdd\xd9\x36\xf9\xf7\x31\x1d\xa7\x18\x83\x33\xa4\x3f\xc5\xac\x52\x4f\xc9\xd5\x7c\x87\xd9\xcc\x3d\x0c\x90\x96\x1f\xaf\x0e\x07\x67\xf0\x1f\x66\x90\x16\x53\x5a\xda\x1c\xfa\x20\xe3\x4b\x14\x5d\x99\x1d\x79\x9f\x1a\x61\x8f\x8b\xb0\x0c\xc6\x5c\x66\xa8\x6d\xc5\xe0\x0b\x22\xfe\x7a\x28\xf4\xba\xd3\x30\x08\x28\xf3\x44\x8a\x0b\xc1\x38\xc5\x37\x54\x5a\xbe\x0e\x03\x3c\x1d\x5a\xbd\x6f\xa7\x30\xbc\x9c\x62\xf2\xd7\x24\x21\xdc\x63\xf8\x09\x92\x1f\x73\x2f\xa0\xe6\x42\xab\xf7\xed\xcc\x43\x97\x61\x4c\xfe\x12\x22\x73\x43\x04\xee\xf5\xb8\x2c\x65\xd9\x95\x20\xcc\xbc\xcd\x8e\x59\xdc\xe4\xa9\xc6\x7d\x55\xbf\xdb\x13\xe4\xbe\x3d\xca\x5e\x9e\xef\x8d\x1f\xab\x3f\x8a\x0e\xfb\x85\x7a\x7a\xc6\x7a\x7a\x6a\x3d\xbd\xf1\x90\x0c\x98\xdf\x11\xb6\xa8\x53\x71\x8d\x7e\x0c\x3b\x0e\x2d\xb3\x04\xde\x08\x9e\x63\x69\x6b\xf7\xb6\xa9\xa7\x33\xea\x78\x20\x56\x0d\xec\x6c\x6c\xcb\x1a\xb6\xb2\x11\xda\x12\x99\xcb\x4a\x9e\x92\x4d\xf3\x17\xe4\x2a\x85\x61\xda\x86\xde\x25\x35\x91\xa7\xcf\x62\x42\x4b\xd0\x27\xbc\xd5\x70\xbb\x7f\x4f\xec\x8c\x28\xe4\x7d\xba\x79\xde\xa0\x60\x59\x18\x4a\x23\xae\x48\x0a\xc0\x51\x92\xaa\xf2\x6f\x39\x4b\x64\xea\x5d\xfe\x65\xc5\x0c\x6c\x30\x3a\x85\x1d\x51\x82\x25\xe0\xab\xc5\x05\xfb\x5c\xff\x64\xe0\x0a\x99\x22\xb2\x8e\xbf\x85\xf0\x9a\x9c\xd6\xd9\x53\xc8\x7a\x63\x0c\x64\x71\x1c\xe5\x48\xc7\x2a\x63\x07\x81\xad\x93\x05\xbd\xdb\xa1\xab\x3f\x7c\x0c\x75\x36\xe5\x22\x8c\x83\x0e\x74\x3a\xce\x10\xe6\x56\x40\xbe\x59\x3a\xce\x9a\x7e\x54\x80\xd3\x6d\xa3\x09\x92\x0b\xd8\x31\x7f\xc5\x99\x2d\x7d\x58\x4e\x4e\x8b\x52\x60\xc1\xc6\xe5\x6c\x82\xba\xd6\x00\x8f\x62\xce\x9f\x08\xf3\x5b\xe6\xfe\x44\x3e\xeb\x08\x3d\x07\x60\xc5\xa9\x0a\x63\x0e\xe3\xdc\xb2\x40\xf6\x05\x9d\xc9\x0e\x66\x7c\x0a\x40\x23\xb5\x08\xe1\x7e\x55\x6d\x01\xf7\x6e\x2a\xb5\x2f\x3b\x5b\xf6\xfe\xe0\xd8\xde\x1e\x29\xe5\xe3\xbb\xbb\xdb\x25\xbb\x52\x17\xa9\xed\xec\xec\x40\xc9\xc4\xd3\xb5\xcf\xf1\xe9\x58\x61\xa1\x4d\x2f\xc9\xd9\x5b\x1a\x68\xc5\xe6\xc3\xc0\xc9\xf3\xb1\x40\xc5\x7f\x49\xb4\x13\x3b\xb7\xa8\x13\x97\xb0\xea\x8c\x47\x27\x22\xa9\x98\xf2\xf7\x9c\x71\x02\x9e\x03\x0c\x97\x04\x26\x63\x3e\x5d\x20\x04\x63\x4c\xd9\x38\xb6\x72\xe9\xa8\xf0\xa2\xe3\x6c\xa5\x3b\x3b\x6c\x9e\xd0\x22\x76\x53\x7f\x0a\xc9\x85\xda\x61\xa6\x03\xe6\x9b\xa7\x0b\xdb\xb9\x21\xa4\xca\x54\x21\x3a\x37\x0e\x19\x06\x5d\x50\x8d\x74\x34\xa5\x18\x9b\x23\xc2\x5d\x4a\xa2\xe1\x24\xa0\xcc\x20\x3b\xd4\x0a\x63\x16\xec\x68\x9e\x4f\x16\x74\xc8\xdf\xaf\xca\x22\xb2\xa8\x83\x2f\xeb\xe1\x25\x22\x1f\x72\x20\x09\x45\x1c\x84\xd7\x4f\xdf\x9c\x3d\x3b\x7b\x9b\xf9\x43\x71\x1e\x99\x3a\x6e\x81\x37\x4f\x5f\xbc\xfa\xed\x69\xf6\x52\xea\x0a\x96\x4b\x2e\x84\x94\x3b\x71\xb1\xd9\x0e\xaa\xfc\xb8\xb2\xb6\x4a\xea\xe0\x05\xaa\x6b\xe1\x0d\x09\xef\xae\xb3\xa7\x6f\xf3\x9e\x64\x59\x53\x75\xc5\x34\x8f\x32\x63\x91\xa6\x7e\x62\x9c\x0a\xd6\xf0\x13\x33\xd1\xd1\x97\xf2\x13\xfb\x1f\x9c\xa6\xf3\xfe\x1f\xe8\xfe\xfd\xc4\x1e\xb8\x5b\x58\x7b\x47\x2a\x11\x47\x22\xc3\x5c\x80\x12\x86\xd2\xc4\xad\xca\xa4\x5f\x96\xc1\x29\xaa\xc3\x4c\x6b\xff\xab\x5c\x48\x4a\x83\xc0\x16\x69\xea\x25\xe7\x42\xd1\xf7\xa4\xd2\x6b\x47\x37\xa8\x2b\xe7\x0c\xc8\xce\x95\x76\xde\x5a\x35\x56\xbc\xa6\x4e\x13\x59\xeb\x0d\xa0\x1f\xa4\xee\xbb\x10\x56\xc6\x33\x77\x7c\xcf\xd7\xbf\xd2\x6f\x88\x7e\xc3\xfd\x86\x82\x2c\x4e\x6e\x05\xc7\x9f\xaf\xc9\xf5\xae\x21\xec\x43\xd3\x75\x53\x48\x68\x33\x2b\xd7\x72\xc5\xfe\x5c\xac\xb6\x9b\x6c\x63\xde\x2d\xa2\xb6\x0d\x39\xb6\xd4\xaf\x88\xd9\xcb\xa5\x75\x34\x66\x2b\xef\x98\xcd\xfb\x59\x19\xbd\x62\xbe\xf4\x54\x34\x03\xf8\xdc\x8c\x07\x0e\xc7\xa3\xd0\x3d\x70\xb2\xf0\xd3\xb2\xa4\x62\xa5\xde\x37\x67\xac\xbe\x52\xef\x9b\x7f\x26\x0b\x64\xc8\x48\x48\xf5\xae\x2c\xa0\x77\xac\xc7\x00\x1b\x50\x36\x69\xb6\x99\x0b\x08\x63\x8b\x1b\xf1\xdc\x75\xb0\x8f\xef\xdd\x05\x31\xe3\xd9\x9b\x1c\xca\x0d\x28\xb2\x82\xa6\x84\x1b\x6d\x2d\x31\x35\x71\x7c\xac\xeb\xf8\xbd\x38\xac\xdd\x3f\x75\x57\xfb\x97\x3d\x20\xea\x4e\xbd\xab\x2a\xda\x5e\xc3\x77\xec\x61\x38\xd7\x6a\x17\x18\x97\x0e\x1e\xa8\x5f\xe6\x17\xb9\x79\x36\x87\x64\xb6\xf1\x8d\xc5\xbc\x27\x5b\xb9\x6d\x56\x6e\x2c\x6a\xe7\xac\x70\xd9\xd4\xb0\xd5\x58\xe3\x29\xf5\x3f\xb1\x6e\x36\xb0\xe5\xdc\xaa\x78\x0d\x16\x3e\x20\x84\xd7\x54\xe2\x17\xe7\xdf\xb0\x0c\x41\x6d\x93\x94\xf1\x59\xb9\x40\xda\x8c\x1c\xcb\x94\x26\xe6\xb6\x95\xbe\x0f\x95\x8c\x36\xc6\xee\xd4\xe2\x53\x1b\x83\x1d\x3e\xe7\x45\xda\xc8\x89\xb5\x11\xb2\x40\x8d\x0f\xeb\x03\xf5\x4f\x55\x35\x63\xf7\xe5\x9f\x5a\x17\x4f\x5f\xf4\xfd\xcc\xc5\xd3\x1b\xec\x85\x9b\x72\x6b\x95\xc6\x11\xb3\x57\x0a\xde\xd9\x31\x6a\xe4\xe7\x88\x7a\x54\x3e\x61\xd5\xec\xec\xe4\x9f\x74\xca\x82\xa2\x61\xc1\x17\x95\x2b\x7d\xed\x55\xdc\x40\xe9\xc4\x76\xfd\x24\x9e\x84\x68\x46\x8f\xc2\x87\xe1\x0c\xb1\xf7\x7c\xef\xc7\xc9\x0f\xf3\x9f\x9a\x39\x43\x94\x26\x64\xb3\x33\x50\x52\x6e\x7e\xb1\x8b\x47\x4a\x1e\xfd\x59\xc1\x93\x34\x80\x54\xd2\xf4\x0b\x99\x8c\xd1\xef\x03\xc2\xb9\x46\xa1\xff\xa1\x2e\xbb\x02\x37\x18\x69\x92\x3f\xa9\xd9\x88\x0a\x29\x46\x70\xca\x96\xc6\x7a\x42\x5b\x5c\xb5\xbf\x0c\x50\xa2\x65\x7f\xc5\x47\x0d\xbb\x7b\x2a\xdb\xd8\x10\x7c\x76\x29\x71\x6e\x32\x63\x14\x5f\x14\xfd\x6c\x28\xe2\x6f\xb4\x4e\x09\x45\x03\x76\xae\x20\xba\xe9\xfa\x53\x2f\x6c\x8e\x13\x9d\xff\x8e\x7a\x60\x57\xe3\x17\xb6\x45\x2f\xa4\x06\xc4\x1c\x80\x61\x1e\xbe\x70\x5b\x87\x2f\xdc\xd9\xa9\x04\x2f\x34\x01\xe2\x95\x40\x24\xfe\x89\xf4\x57\x86\xf4\xb7\x1a\xce\x5f\x3a\x47\xd0\x0b\xfe\x84\xf8\x5b\x0f\xe2\xef\xc7\x93\x9f\xff\xe8\x13\x8e\xb3\x2a\x89\x77\x00\xa9\xdd\x47\xa4\xf4\x36\x3d\xe4\xbf\xd2\x79\x14\x62\x86\x0a\xc8\xa2\x8e\x73\x69\xc0\x49\xb1\x37\x34\xb5\x4f\xee\x7b\x56\xba\xf4\xb5\xfa\x4f\x85\x47\x20\x0d\x2d\x4f\x9f\x84\xe9\x3c\xf2\x6e\xa8\x02\xa4\x81\xf7\x1f\x77\xde\x2b\xcb\xb9\xa3\x54\x2d\x13\x47\x10\x39\x30\x68\x90\x9f\x31\xbb\x87\x4b\x3e\xd7\x34\x08\xb7\x8a\xf4\x94\xcc\x3d\x3f\xc4\x37\x43\xab\x6f\x6d\x87\x33\x72\x70\x7a\x31\xfe\x36\x8b\x1f\x23\xff\xbb\xf0\xfc\x0f\x97\x28\x59\xc4\x41\xd7\x4f\xa2\x04\x0d\xad\x2b\x0f\x75\xba\xdd\xeb\x69\x88\xa1\xf3\xad\x5a\x92\x6e\x05\xf1\x3e\x80\x7e\x82\xba\xec\x59\xb7\xdf\xeb\x19\x8a\x76\x91\x17\x84\x8b\x54\xff\x82\x3d\xeb\x0e\xcc\x5f\x68\x5d\xb8\x44\xde\x4d\xf7\xa0\x50\xf0\x63\x37\x9d\x7a\x41\x72\xad\xd7\x0b\x23\x78\xc5\x84\xd1\x47\xda\x17\xcb\xc6\x89\x3a\x73\xb3\x0b\x83\xcb\x75\x16\x47\x7c\xde\x60\x71\x9a\x77\x56\x52\x5c\x8b\x5c\x59\x28\x59\x60\x58\x92\x54\xef\x10\x88\x8c\xf3\x35\xa9\x3f\xa7\x83\x06\x69\x55\x29\xd7\x43\xae\x5d\x1b\x88\x8c\x30\x86\x04\xbe\xd6\x1b\xd2\x21\xb4\x42\xa6\x3b\x5e\x0e\xce\x4c\x88\xec\x02\x85\x3e\xfb\xf6\xd7\x14\x5a\x74\xf0\x28\x25\xe7\x77\x18\x63\x88\x7c\x48\xce\x7d\xe4\x4d\x26\xa1\x6f\x2d\xd2\x30\xbe\xb4\x9e\x1f\x5a\x3e\x15\xc2\x42\xcf\x4a\x17\xfe\xd4\xf2\x52\x6b\xee\xe1\xa9\x35\x47\x70\x12\x7e\x84\xa9\x95\x20\x6b\x8a\xf1\xdc\x62\x53\x95\xba\x66\x55\x85\x59\x66\xae\x4e\x45\xaa\x8c\x2a\xbf\x7c\x7c\x58\x3c\x2f\x93\xe1\x48\x91\xf9\x5f\xc9\xb4\x8b\x45\x6e\x08\x82\x71\xc0\xc9\xa2\xeb\x53\x1f\x05\x05\x4b\x95\x5b\xfe\x28\x83\xcb\x5d\x01\x06\x8a\x21\xce\x08\xdf\xc0\x0b\xe7\x6d\x65\x06\xcc\xbc\x5e\x41\xdf\x60\x22\xe6\x36\x89\xe0\xf8\x55\x71\xaf\xf4\x7d\x26\x1a\xb9\x7f\x9a\x95\x4d\xd1\x34\xf3\x94\x77\xbf\x5c\x20\x18\x30\x5e\x25\x0a\xb1\x15\xc6\x7e\x32\x23\x74\x8b\xe0\x1f\x0b\x98\xe2\xd4\xf2\x7c\x94\xa4\xa9\x15\x84\x93\x09\x44\x30\xc6\x96\xc8\x0a\x4e\x08\x37\x5d\x5c\xa4\x10\xa7\x56\x32\xb1\x3c\x8b\xd0\x7b\x04\xc5\xfb\x87\x46\xc7\x47\x2c\xaf\x5f\xf7\x42\x26\x92\x93\x30\xbb\xd9\x2a\xb7\x03\x7b\x39\xc8\x28\xa4\x11\xa9\xf7\x8f\x37\x45\xea\xfd\xe3\x4d\x93\x3a\x82\x69\x12\x5d\xdd\x33\xa9\xbf\x11\x8d\xdc\x3f\xa9\xcb\xa6\x28\xa9\x2f\x52\x46\xe4\x8c\x51\xb5\xae\xa7\xa1\x3f\x95\x9c\xb8\x20\x5f\x9e\x65\x2c\x9d\x26\x8b\x28\xb0\x52\x0f\x87\xe9\xe4\xc6\x92\x32\x9f\xdc\x12\x5f\x0f\x65\x2b\x8b\xda\x9a\xb2\xc5\xb7\xcd\x28\xfb\x68\x63\x94\x7d\xb4\x2a\x65\xa7\x57\x97\xda\x04\xd2\x40\x17\x1b\xd8\xfd\x5e\xef\x3f\x84\x91\x81\xc5\xbc\xa8\x0f\xfb\xc0\xbe\x0a\xe1\xf5\x0f\xc9\xc7\x42\x36\x92\x9e\xd5\x93\xc9\x48\x58\x65\x34\x1b\x89\x78\xc4\xeb\xca\x6b\x60\xe6\x08\x12\x4a\x82\x27\xe9\x1c\xfa\xf8\x0d\x61\x1a\x29\x33\x1d\xc3\xf5\xef\x59\xdd\x15\x2e\x48\x66\xdd\x2c\xc7\x4d\x1e\x41\xfb\x2f\xcc\xa9\xae\x4f\xea\x7d\xf6\xa4\x69\x4a\xff\x55\x5b\x78\x09\x3f\xe2\x97\x49\x60\xf0\x39\x68\xd2\x0e\xbe\x86\x30\xee\xe2\xc4\xec\xe4\x47\x84\xb2\x1b\x49\x69\x8f\x00\x79\x22\x89\x2d\x10\xa6\x14\xfa\xe2\x46\xbe\xa0\xdb\x29\x7b\x21\x17\x0b\x0c\x0c\xde\x37\xda\xb8\x56\x98\x35\xb3\xe5\x85\xb0\x79\x86\x90\xad\xf2\xb6\x80\xfd\x5d\xcd\x94\xd2\x6a\x44\x2d\xe9\xd5\x65\xd7\x5f\xa0\x2b\xd8\x64\xda\x0e\xb3\x69\xe3\xbf\x6e\x6c\x11\x1f\xaf\x00\xdb\x55\xd5\xa2\x4f\xf7\x81\x56\xe1\x81\xb2\x47\x74\x2f\x15\xfd\x0b\xe3\x02\x1d\xd4\x2c\x10\xeb\x65\x5d\xfc\x59\xff\xb0\xd4\xa2\x52\x6e\x6b\x39\x28\x7d\xb3\xaf\x09\x71\xda\x36\x2d\x32\x0c\x9b\xd8\x47\x47\x6d\x37\xaa\xec\x13\xfb\x96\x32\x77\x1b\x3e\x3c\x7a\x9f\x75\x6b\x0f\xca\xb6\xf6\xa0\x8c\x72\x06\xed\xb7\xf6\x51\xb6\xdb\xba\x7c\x94\x7d\x06\x1c\xd6\x66\xa3\x37\xdf\xe2\x92\x5a\x86\xd9\x32\x0b\xb9\x55\xee\xf7\xb2\x79\x2e\x4a\x23\xe2\xd2\xa2\xe6\xbd\x39\x11\x39\x63\xec\x5d\x42\x3d\x35\x02\xaf\xf1\xef\x72\x66\x7a\x1b\x38\x41\xf6\xb4\x0d\xbf\xb7\xf6\x09\x72\xac\xd6\x77\x5c\x7f\x7e\x1c\x97\x10\xc1\xf1\x66\x4e\x8f\xbd\xd2\x93\x60\x50\xfa\xa6\x07\xfa\xfd\xb2\x97\xc7\x65\x2f\xf2\x0c\x4e\x43\x76\x26\xcf\xa8\x77\xc3\x38\x82\xd4\x00\x58\xcb\xc4\xf4\x7b\x55\x4c\xcb\xda\x2c\x49\xe6\xd8\x90\x62\x0f\xe1\xb4\x7b\x1d\x92\x5d\x91\xb1\x9f\x9c\xf2\x1f\x55\x1c\x26\x9b\x38\xad\xaa\xea\x6f\x74\x73\xf3\x99\xf7\x43\xe4\x2b\xda\x56\xca\x8c\xdb\xc0\x1e\xb8\x07\xd2\x57\x85\xd0\xf4\x81\x98\x7a\xff\xc6\xce\xd3\xea\x61\x09\xad\x1e\x56\xd2\x6a\x3d\x95\x96\x5e\x71\x65\xcf\x1f\xad\x7b\x8b\x29\x97\xcc\xde\xfd\x5c\x32\xab\xb0\x8f\x66\x86\x6b\x03\x0b\x57\xc6\xa3\x54\xb3\x28\xf5\x0b\x57\xca\x67\xec\x97\xbd\xc8\x67\x53\x6e\x79\x4c\x48\xc5\xc4\xc3\x3f\x26\x72\x17\x64\xff\x9e\x8f\x89\xaa\xfa\x3f\xf3\x31\x51\xc6\xd7\x54\xb3\x35\xf5\xd4\x56\x7a\x63\x95\xde\x64\x2b\x18\x01\xfa\x92\xd8\x72\xf3\x9c\x65\x6c\x25\xcf\x15\xf3\x07\x03\x3a\x7a\x2b\x74\x35\x44\x98\x66\x8f\x98\x6b\x60\x6e\x90\xfd\x23\x69\xf7\x2a\x34\x30\x1f\x0a\x4a\xe5\x79\xe8\x3f\x7e\x1b\xc1\x09\x96\x4f\x3f\x8a\xa7\xb6\x89\x80\xcb\xd4\x4e\xe5\x0a\x25\xee\x01\x48\x0d\x59\x72\x38\xb2\x0c\xe3\x80\x02\xe8\x87\x33\x8f\xfa\x03\x9c\x0f\x72\xb0\xe0\xff\x51\xad\xc3\xb8\x1f\x30\x0d\x93\x93\xc3\xba\x39\x5a\x6e\x6b\x73\x81\x86\xfe\x87\x52\x94\x08\xf6\xd2\x76\x28\x38\xc5\x19\xb5\xf2\xa7\x95\x18\x15\xac\x88\xed\x00\x4a\x69\x64\xb0\xe9\x90\xe3\xad\x66\x23\xb3\xc7\xd9\xeb\x1f\xc2\x38\x08\xe3\x4b\x52\x8a\x93\xd6\x18\x28\xd6\xd6\xe1\x76\x1f\x08\x2b\xda\xb3\x60\x68\xdb\xe0\xe3\xb0\x07\x6e\x86\x3d\xc0\x17\x93\x3c\xd2\xc8\xf4\xde\x61\x28\xae\x38\x52\x82\x78\x53\x82\xc0\xb5\xe1\x9c\xa3\xf9\x56\xeb\x10\x1c\x38\x7a\x83\x09\xa6\xe1\x52\xc0\x34\x64\x36\x6d\x67\x9b\x02\xb1\x75\x72\x38\x0e\x59\x01\x01\xe2\x20\x9f\x3c\x86\xa4\x07\xaf\x3d\x3c\x7d\x9e\x8d\x7a\x08\x5d\x46\x31\x6e\xc0\x50\x36\x28\x9c\xe2\xfa\xc0\x0d\xea\x88\x04\xc4\x42\xa1\xf1\xfb\x03\x3d\x2b\x5b\x02\xfd\x7d\x6e\xe4\x1c\x72\x44\x32\x6d\x05\x34\x3e\xba\x15\xdc\x97\xd4\x68\x0f\x8a\x68\x53\x14\x47\xed\x12\x62\x69\x02\x72\x3a\x79\x6c\x3d\xb5\x06\x87\x61\x3b\xd0\x5b\xbd\x79\x53\x8c\x10\x45\x53\xd4\x12\x5b\xd7\x0e\xd0\x90\x55\xa8\xff\xce\x36\x74\x27\x61\x1c\x74\x3a\x45\x0c\x34\x7b\xd7\x1e\xa9\x50\x11\x10\xd8\x4f\xe0\x84\x46\xde\x27\xb1\x4b\x61\xf6\xdd\x9f\xdf\xbe\x7d\xed\x92\xc5\x7c\x4d\x2d\xac\x36\x19\xc9\xce\x4e\x45\xa5\x56\x86\x95\xe5\x66\xb5\x11\x3a\x63\x50\x16\x00\x8d\x14\x51\x46\x03\x2f\x61\x43\x51\xac\xd1\xc0\x76\x6d\xc7\x50\x84\x1e\x5d\x73\xcf\x2f\x2d\x90\xa5\x30\x74\x80\x37\x52\x78\xa2\x35\xdb\x53\xd0\x11\x05\x9e\x83\x32\xff\xe7\xde\xf8\x71\x3c\xf2\x86\xe5\x05\xd0\x98\xfa\x65\x21\x05\xe5\x35\x16\x08\x15\xb7\xdc\x1d\x76\xb8\xdd\x03\xcf\x9e\x0c\x19\x13\x58\xd7\x63\x07\xd0\x3b\xab\x64\x38\xd9\xfc\x0f\x6f\xe9\x72\x0e\x6f\xc9\x7a\x0e\x6f\xb3\x05\x1d\xda\xbb\x14\x3f\x40\xf0\x70\xc3\x78\xb9\x05\x59\xfa\x5c\x4a\x79\x0c\xbd\x91\x12\x9f\xd3\x49\x41\x49\x43\x3a\xd9\x39\x32\x0d\x2e\xa4\x74\x2f\xec\x26\x25\xa4\x7f\x4b\xe7\x06\xbc\xa5\x41\xee\xe9\xb2\x6a\xbf\x49\x3b\x94\x63\x5e\x6d\x60\x24\x12\xf3\x96\xe1\xed\xd9\xc5\xdc\x56\xc5\xad\x7b\x89\xbc\xf9\xb4\xd0\xfd\x4c\xe6\x13\x9e\x1b\xee\xf9\xd8\xb4\x87\x25\xd4\x07\xbf\xa5\x5d\x5a\x5f\xc7\xd1\x00\x11\x65\x6d\xee\x24\x41\x4f\x3d\x7f\xda\xd1\xae\x07\xec\x32\x69\xd1\xf0\x36\x76\x6e\xe9\x81\xff\x3c\x8c\x3f\x74\xb0\xfb\xec\x09\x88\x5d\xb1\x9e\x14\xfd\xce\xe1\x07\x03\xef\xa4\xb1\xfe\x5c\x0d\x58\xab\x01\xd0\x85\x14\x77\x7d\x71\x22\x24\x13\x40\x6d\x6c\xde\x7c\x5a\x36\x0b\xd4\xa3\x50\xc2\xf5\x64\xdf\xdd\xdd\x6d\xd7\x62\x1b\x65\xa5\x65\x0e\xe9\xdb\xe5\x56\x06\x1f\xa8\x14\x00\xf1\x08\xb3\x09\xed\xd8\x43\xdb\x71\xd3\x69\x38\xc1\x1d\x07\xa0\xd1\x39\x1e\x03\x6f\x74\x3e\xd6\xa6\x9e\x76\x59\x4c\x0b\x99\x03\x18\x90\x91\x77\xb4\x1b\x1a\xa4\xce\x2d\x62\x3b\x03\xbb\x61\xe0\x00\x8f\xfd\xb0\x65\x2f\x53\xea\x37\xf9\x2c\x00\xf6\x77\xd9\x31\x92\xba\x38\x21\x3d\x06\xb0\xbc\x19\x37\x0c\xf2\x5e\xaf\xec\x4c\x80\x6e\x18\x18\xc6\xb1\x15\x6f\x8f\x46\xe9\xce\x4e\xe6\x7d\xc7\x10\xd0\xb4\xdf\xe9\xce\x4e\x87\xf7\x17\x9a\xfb\x8b\x4d\xfd\xc5\xbc\xbf\x82\x70\x6e\xa9\xe7\xda\x10\xb9\x33\x6f\x6e\xbc\x44\xb2\x55\x3a\x3d\x3b\x73\x61\xea\x7b\x73\xc8\x59\x0b\x40\x1d\xab\x86\xde\x2a\xdf\x52\xb4\x12\x06\xaf\x57\x80\xca\x55\x79\x9f\xe6\x87\x88\xa5\x72\x2a\x6e\x32\x99\xa4\x10\xff\x9d\x34\x40\x5a\xe2\xf8\x7d\xf7\xd8\xd4\xcf\xb4\x05\xd2\x56\x9e\x3d\x2a\xe1\x3e\x5b\x61\x13\x41\x23\x6f\x04\x33\xc6\x6c\x9b\x72\x88\x8c\xff\x81\xc1\xce\x4e\x07\xe6\x21\x9c\x20\xdd\x7d\x41\xe2\x53\x96\xab\xe3\x80\x5b\x6a\x68\x1e\xe6\x40\xab\x92\x19\x03\x2c\x4a\x71\xe7\x6f\xe7\x54\x54\xf8\xeb\xc8\x66\x76\xed\xf1\xdf\x00\x76\x19\x58\x89\x73\x77\xa7\x33\xac\x42\x36\xdd\xee\xeb\x10\x7d\xfa\xe1\x61\xd3\x85\x07\x31\xef\x0c\xef\x7d\xda\xa1\xb6\x01\xb6\x13\xec\x6c\x54\x8e\x53\x76\x96\xe5\xd1\xa9\xc0\xed\x2c\x59\xa4\x90\xc8\x39\x06\xfc\x5f\x2b\x03\x36\x4b\xa7\xc9\x35\x3d\x68\x39\x1b\x0a\xc1\x39\x1e\x3b\x4b\xc0\x3e\x5f\xe0\xea\xaf\xa7\x61\x00\x0d\x5f\x2f\x19\x9f\xad\xe1\x90\xca\x86\x74\xbc\x5b\x76\x8e\x61\xee\xfd\x1b\xc2\xb4\x73\xfb\x71\x08\x5d\x3f\x0a\x61\x8c\xff\x01\x6e\xe4\xdf\xff\xec\xee\x49\x31\x0b\xf2\x49\xa7\x77\x4c\x0a\xb1\x9b\x99\x32\xf2\xf2\x57\x6f\xe9\x2c\x81\xec\xa6\x4a\x79\xf9\x18\x1c\x5d\xbf\x40\xd6\x6d\x09\x72\x04\x91\x25\x6f\x74\x7d\x06\xad\xc5\x36\x05\xb9\x4b\x65\x02\xc8\x8e\x1d\x06\xb6\xb3\x85\x8b\x87\xfe\xe3\x42\x76\x46\x33\x91\x70\x90\xab\x1c\x9d\x0c\xcb\xbf\x36\x41\x64\x29\x5f\xe3\x95\x72\x20\x1a\xa3\x15\xca\x63\x87\xa4\xdb\x38\x56\x31\x7b\xb9\x8b\xf7\x07\x78\x93\x72\xff\x7a\xfe\xe4\x12\xe2\x57\xd7\xb1\x70\xfa\x66\x3e\xe9\xa9\xc0\xe5\xac\x2a\x43\xaa\x21\xd2\x21\x1a\x21\x77\x12\x46\x18\x22\x7d\x2f\x70\x1a\x35\x56\xf1\x04\xa6\x3e\x0a\xe7\x38\x61\xae\xed\x2e\x8c\x17\x33\xe6\x35\x4f\xe8\x15\xc4\xf4\xc2\xe0\xa4\x1c\x03\x24\x90\xb4\xad\x78\xa9\x07\x65\x64\xee\xee\xfd\x6f\xe3\xff\xca\xa3\x7f\x52\x77\xf7\x5b\xe6\x9a\x1e\x2f\xa2\x68\x5b\x81\x00\x8d\x55\x08\xd0\x78\x3c\xbc\x5d\x6e\xc5\xff\x31\x78\x8c\xf9\xb4\x74\x3c\x87\xac\xa6\x79\x97\xd3\x4e\x03\x8f\xee\x30\xc7\x19\xd6\x8c\x30\x7d\x6c\x72\xaf\x27\x1b\x0c\x82\xba\x4f\x3b\x9e\xe3\x0c\x95\x3e\x95\x74\xa8\xcc\x7f\x1f\xd7\x35\xd0\xf1\x28\x4d\x3a\x4e\xc6\x37\xeb\x51\x07\x20\xce\x6e\x16\x2b\x8c\x2d\x68\x1c\x0c\x6b\x8b\x07\x08\xc4\x20\x5b\x4d\x22\x52\x08\xff\x44\xf1\xfb\x1a\x85\x98\xff\xbd\x74\x86\xf0\x1c\x8f\x47\x31\x50\xda\xf5\xb4\xa4\xb9\x0d\xe3\x6d\x60\x49\x28\x8c\x12\x6e\x33\xd2\xc3\x6d\xee\xee\xb6\x3b\x95\x01\x37\x22\x86\x86\xd1\xd7\xf9\x18\xa0\xd1\x76\x0f\x78\xa3\xed\x3e\x48\x45\xd8\x03\x46\x37\x92\x06\x13\x10\x8e\xa0\x21\xa8\xe3\xdb\xed\x0e\x1a\x75\x92\x51\xe8\xc6\xf0\x23\xee\x38\x8e\x1b\x24\x31\x74\x88\x3c\xc6\xf8\xa2\xc4\xa5\x13\xe7\x80\x6d\x7c\x77\x17\x73\xda\x25\x42\x9c\xf3\x2d\x69\xd2\xf9\x96\xa3\xfd\x45\xce\xad\x47\xba\x90\x8e\xa2\xe5\x24\x8c\xbd\x28\xba\xa1\xc8\x80\xe8\xee\x8e\x45\x86\x84\x2e\xeb\xf2\xdd\x9d\xf8\xab\xe3\xc8\x92\xe1\xa4\xe3\x71\xdc\xe8\x74\x99\xed\x27\x3a\x53\xab\xc7\x10\xa5\xff\x67\x62\x88\x52\x11\x43\xa4\xcf\x57\xf3\x28\x22\xaa\x02\x5a\xf8\x78\x81\xe0\x97\x0b\x25\x4a\x1f\x60\x28\x91\x22\xe9\x8f\xa0\x26\x6c\xf3\x9f\x54\x78\x64\x7f\x4b\xbd\x17\xfb\x79\x42\xae\x9d\xd8\xc3\x90\xeb\x04\x52\x35\x1e\x29\x19\x6d\x0a\x1f\xfa\x76\x09\x70\xf1\xdb\xbe\x52\xa8\x3f\xe6\xca\x97\x2d\xfd\xda\xa3\x03\x25\x57\x65\xf1\x8a\x54\x12\x00\xb9\x84\x72\x08\x9b\x42\x39\xb5\x70\x64\x02\xdd\x2f\x34\x3f\x30\x76\x7d\xa0\x76\x7d\x30\x1e\xda\x02\x36\x10\x98\x50\xb6\x75\x38\x6d\x7d\x04\x99\x3a\xed\x1c\x8f\x09\xdb\x4e\x4e\xea\xdb\x67\x4f\x86\x8a\x1c\xa7\xe9\xad\x62\xed\x17\x12\x1a\x22\x70\x3a\x0d\xa3\x00\xc1\x78\x78\x3e\x26\xeb\x7d\x8e\xc7\x4b\x10\x99\xc6\x08\xd0\x08\x16\x25\x36\x8e\x10\xde\x39\xc7\x00\x8e\xcb\x04\x3a\x0b\x0a\x69\x95\x74\x01\x41\x42\x3d\x90\xc2\x03\x83\x81\x43\x33\x64\xf7\xc6\x20\xa1\x89\xb2\x41\x38\x3a\xb7\x33\xcd\x8d\x0d\x6c\xa9\xb0\xc9\x42\x52\xc8\x5f\xd4\x29\xde\x96\xb4\x9d\x14\x34\x8f\x59\x42\x6e\x48\xc4\x5e\x05\x18\x9c\x9d\x60\x21\xe1\x10\x00\x62\xf2\x2c\x7f\x75\x4b\x96\x7a\x18\x0b\x21\x6e\x88\x96\xcb\xad\x12\x52\x8e\xb6\x72\x24\x6f\x18\x76\x42\x05\x19\x21\x7c\x3b\xe6\xd9\x23\xbb\x9a\x8c\x51\x99\x22\xa9\x85\xc8\xe6\x0a\x60\xa9\xad\x50\x9f\xc6\x9d\xb8\x73\xbb\x04\xd0\x01\xb7\x4b\x40\x97\xbf\xa8\xd4\x64\xd5\x8b\x05\x77\x7f\x4f\xc2\x98\xb6\x42\xc5\x0f\x3e\x3e\xbe\x8b\x8d\x99\xf1\xe9\x28\x58\x14\x8e\x6d\xcc\x7c\x1e\x2b\xeb\x2c\xa8\xcd\x65\x35\x96\x52\xc4\x82\x7c\xe7\x32\x2d\x21\x17\x83\x28\xd4\xf2\x56\xee\x8c\x29\xce\x56\x71\xa7\x1b\xb7\x5a\x7f\xac\x1f\x00\xd9\x56\x5b\x79\xb7\xde\x2e\x8d\xdb\xb4\x11\x18\xfe\xed\x12\x78\xa3\xdb\xa5\xf9\x00\x42\x55\x07\x90\x54\x8b\xd3\x3c\x10\xf4\x30\x5a\x1a\x59\x4d\x81\xd7\x0f\xd2\x51\x5c\xa0\x28\xb5\xbb\x1d\x34\x4a\x05\x35\x39\x20\x55\xc8\x49\x3e\xd6\xfe\x92\xef\xd9\xc1\x0d\x16\xa3\x34\xa3\x22\xe0\x8f\xc2\x8e\x07\x16\x00\x83\x9c\x1e\x3c\x76\xc5\x32\xba\x3f\x7a\x61\x44\xa4\xa4\x9d\x9d\x4e\x32\x8a\x3a\x86\x37\x42\xef\xca\x89\xc2\x71\x00\x62\xc3\x09\x46\xb7\x6c\xaf\x73\x05\x38\x27\x1a\x4a\xcc\x68\x99\x25\x3a\x49\x76\x76\x3a\x81\xac\x6e\x94\x38\xc0\x77\xc5\xd9\xc6\x38\xb9\xc0\x59\xc2\x48\x26\x0b\xe2\x9f\xf8\xea\x27\xe4\x40\xd2\x57\x26\x2e\x99\x68\x75\x9c\xe8\xdc\x60\xb9\x88\xdd\x67\x4f\x9c\xb1\x50\xd8\x45\x9d\x73\xf2\x60\x4c\x04\x4e\x1e\xb8\x63\x3e\xa5\xa1\xc3\x38\x23\x71\xd0\x91\x93\x8b\x2e\x39\xab\x29\xa1\x73\x2d\x95\xec\x74\xce\xc1\x62\x74\xfb\x06\x06\x21\x82\x7e\x36\x47\xcf\x9e\xb0\x19\x8a\xcf\xd9\xe7\x63\x65\xa6\x2a\xfa\x6b\x5c\xb1\x45\x36\x45\x51\xa7\xd5\xc7\xca\xa2\x3e\x7b\xe2\x38\x20\xc9\xad\xc8\x82\x67\x54\xd2\xe7\xdc\x73\x98\xfa\x76\xa1\xa7\xa3\x40\x59\x5a\x19\xed\xd0\x13\xf6\x11\x6a\x57\x22\x7f\x29\xa9\xe5\x54\x5b\x13\xb3\x5c\x19\x6d\x28\xc0\xee\x2a\x57\x63\x47\xfd\x8a\x1c\x4c\xe4\x50\x52\xd9\xa0\x45\xad\x56\x00\xce\x2e\x58\x24\x6c\x04\x45\xa0\x86\x02\x7b\x90\x7f\x5b\xf9\xe5\xfa\x99\xe6\x4a\x3f\x90\x27\xe2\xad\x2e\x13\x5e\x42\x6c\x42\x9a\x91\x88\x2f\xf4\xe2\x68\x32\x01\xb1\x87\xc3\x2b\xd8\x4d\x7d\x94\x44\x11\xa9\xbd\xed\x3c\x14\x2b\xf8\x9a\xa7\x63\x9e\xcc\xc9\xae\x30\x4d\x02\x57\xd9\xa5\xe5\x1f\x7d\xcd\x03\xcf\x9c\x95\x5a\x0c\x3c\xf3\x0e\xfa\x3a\x07\x3e\xc7\x37\x2c\x03\x74\x1d\x66\xfa\x97\xc9\x25\xe9\xfd\xf1\x8f\x3f\x9e\xfc\xf6\xe8\x9b\x9a\x5c\x92\xc0\xde\xf1\x30\xa6\x11\x8b\x86\xa4\x92\x79\x14\x1e\xea\xbb\x26\x5c\xb2\xfa\x03\x05\x70\x2e\x9b\x0e\xea\xaa\xb7\x07\x06\x35\x18\x0b\x53\x2f\xfd\x99\x05\x43\x36\x02\x6f\x28\x0d\x9c\xb4\x1b\x20\x65\x4e\x45\x43\xb5\x08\x82\xfd\x46\x40\x6c\x75\xed\xa5\x8b\x8b\x4d\x37\x69\xf0\x28\x5c\xa7\x87\x17\x49\x70\x53\xd1\x39\x83\xab\xa2\x29\x54\xb5\x40\x22\x46\x84\xbe\x23\x60\xc3\xf8\x8a\xec\x8f\xd3\x57\x2f\xcf\x7e\x7d\xfe\xfe\xe4\xf4\xf9\xd9\xfb\xa7\x2f\x4f\x7e\x78\xfe\xf4\x49\x2e\xe9\xa8\x17\x45\xc9\xf5\xf3\xe4\x32\x8c\xdb\x46\x5b\x1e\x02\x0e\x28\xa8\x3a\x22\x4e\x28\xd6\x5e\x44\xea\xeb\xe2\xe4\xf2\x32\xaa\xc4\x15\x95\x98\xdb\x3c\xaf\x86\x02\xe5\xaf\x82\x6d\xd3\x15\x86\x18\x53\x17\xb9\xdd\x5d\x76\x3c\x0c\x71\xf2\x01\xc6\x55\x80\x53\x39\x8c\x6c\x56\xbe\x0c\x23\x5b\x20\xdd\x6b\x61\x9e\xf9\x2d\xc4\x9b\xb4\x4f\x28\xea\x69\x82\x94\xc0\xa7\x3a\x67\xef\xe7\xc9\xa5\x15\xc6\xd6\x75\x88\xa7\x96\xa7\xc4\xa5\xd3\x2a\x57\xca\x63\x2e\xea\xac\x45\x3e\x2d\x46\xa3\x36\xc0\x3c\xdc\x1c\xe5\x73\x4b\x5c\x3d\xf1\x2f\xa2\xe6\xb4\xdf\xae\x8b\xc7\xeb\x78\xa4\x16\x2e\x9e\x75\xd3\xe8\x9a\x21\x09\xaf\xc3\x28\x62\x06\xe7\x76\xfe\x7a\x79\x03\x5c\x76\xcc\x73\x8f\xbd\x30\x7d\x03\x2f\xc3\x14\x43\x04\x83\x8e\x38\x99\x1d\x9e\xba\x29\xf7\x36\x3b\x47\x99\x63\x40\xab\xdc\x36\x14\x69\xb3\xec\x86\xfe\x12\x88\x7f\xf3\x67\xf1\x60\xf7\xe4\xfa\xd1\x0a\xe9\x0f\xe3\x04\x77\x95\x14\x88\x45\xc4\x51\x7b\xbf\xb7\xd7\x34\x11\xe2\x81\x7e\x5d\x83\x73\xf5\x26\xcf\xc7\xdd\xd1\x16\xba\x36\x28\x69\x38\xc3\xb7\x3d\x27\xa7\x65\x13\x04\xed\x8c\x35\x2a\xa2\x88\x56\xde\x9a\x35\x28\x09\x45\x80\x59\xd1\x5b\x09\x8c\x38\x06\xf6\x29\x25\x15\x8b\xb1\x7c\x30\x90\x78\xb5\x76\x1e\x77\x36\x8f\x2f\x50\x89\xac\x9a\x3f\x99\x4b\xe6\xa9\xea\xc4\xa9\x99\x99\x3a\x96\xa2\x30\x39\x7b\x46\x0c\x5f\x0d\x08\xa8\x1c\xb8\xb6\xd5\xe0\x1b\x1d\xde\x35\xc3\xab\xe0\x47\xf2\x23\x33\xe3\x60\xb2\xff\xd1\x44\xac\xde\x0d\xb3\xcc\x5c\x85\x69\x88\xc9\x12\x5b\xbf\xbe\x79\x6e\xe1\xa9\x87\xad\x30\xb5\x78\xae\x38\xb2\xf0\x8b\xf8\x43\x9c\x5c\xc7\x16\x82\x3c\xff\x96\x95\x26\xd6\x4d\xb2\xb0\x7c\x2f\xb6\x30\xba\xb1\x2e\x13\x52\xf2\xc2\xf3\x3f\x58\x38\xb1\xf0\x14\x5a\x28\x49\xb0\x95\x20\xfa\x16\xc1\x6e\xba\xb8\x98\x85\x94\x13\x60\x40\xc7\x27\xa7\xcf\xad\xb7\xe4\x0a\xdd\x3d\x83\x3e\x82\xf8\xd9\x13\xeb\x22\x5f\xcd\xc9\xe9\xf3\xd4\xad\x04\xb7\xa8\xc4\xe2\x6d\x34\x9d\xd5\x97\x5c\x7e\x46\xa3\xd0\x18\xfd\x44\x3a\xdc\x8d\x78\x1a\x11\x33\xa4\xd4\x21\xb0\x3d\x3d\xf2\x83\x30\x60\xf6\x34\x99\x49\xe8\xd0\x29\xcb\x68\x44\x43\x5a\x11\x9c\xb0\x28\x66\x8e\x13\x57\x88\x2b\xf9\x29\x91\xd3\x44\x66\xba\x19\x1a\x48\xdd\x38\x82\xc4\x4f\x5b\x8d\x43\xe9\xf5\xb1\x91\x81\x7d\xf2\xea\xf4\xec\xfd\xaf\x6f\x9e\x6b\x60\x1c\xd9\xf0\xe3\x24\x99\xc3\x18\x22\x2b\x4e\x10\x9c\x40\x84\x18\x68\x38\x85\x16\x15\x29\x9d\xde\x5f\x44\x9e\xd6\xa3\x37\xd0\x0b\x28\x89\x09\x4f\x2c\x89\x9e\xde\x04\x0f\x65\x75\x30\xf9\xe6\x9c\x5e\xed\xdd\x21\x6e\x0b\x7a\x17\x3d\x80\x1b\xa1\x07\x68\x66\x66\x8f\x9a\x7c\xb1\xe5\x2d\xf0\x34\x41\xe1\x27\x18\xdc\xcf\xa6\xdb\xd4\x11\xcd\xae\xf2\x7b\xe8\xe0\x26\x0f\xd9\x45\x8a\xad\x0b\x68\x5d\x22\x2f\x26\x67\xec\x1c\xa2\x59\x98\xa6\xe4\xd0\x21\x9b\xf7\x2a\x84\xd7\xd4\x19\x92\x66\xc2\x76\xad\x93\xf4\x03\x3b\x20\xbd\x60\x16\xc6\x61\x8a\xb9\xc7\xc7\x84\x1e\xb7\x78\x1a\xc6\xf4\xbd\x80\x0d\x62\x86\x75\x2a\xd5\x7c\x15\x27\xe5\xfd\x9f\x30\xc0\xde\xf5\xfc\x48\x30\xfc\x78\xc6\x40\x8b\xbf\xe4\x99\x53\x37\x27\x11\xf4\x50\x7c\x0f\x93\xf2\xfc\xe9\xc9\x9b\x97\xb9\xa9\x61\xfc\xff\x6e\x0a\xfd\x05\x0a\xf1\x4d\x37\x86\xf8\x3a\x41\x1f\xc2\xf8\x72\x77\x8e\x92\x60\x41\xd7\xb8\xeb\xf9\x51\xba\x91\x69\xfb\x31\x89\xa2\xe4\x9a\x4e\xdc\xe5\x22\x0c\xe0\x97\x39\xa4\xd7\x12\x22\xf3\xb2\xd1\x06\x01\xa7\x8b\x38\xd2\x5b\xd5\x72\xda\x15\x8c\xf1\x83\xca\x53\xef\x7d\x33\x45\x8f\x1e\xa1\xfd\x1a\xd5\xa9\x51\x63\x6a\x44\xef\xa0\x8e\xd3\x76\x45\xde\x10\x59\x22\xc3\xdb\xd8\x08\xc0\x78\x71\x6e\xff\x4c\x06\xbf\x7a\x32\xf8\x8d\xe4\x76\x6f\x9d\x52\x9e\x92\xc6\xab\x98\xfb\xf0\x0f\xb7\x7b\xc5\x44\xf0\xc2\x83\x3c\x97\xb7\x19\xb2\x24\x7b\xce\xca\xa9\x20\x6a\x82\x6f\x1b\x45\x77\xea\xdd\xcf\x25\xe3\xce\x67\x74\x07\xe7\xe3\xda\x90\xcf\xba\xbc\xed\xab\x87\xb4\xe6\x03\xc2\x52\xe4\xbb\xd2\x7f\x96\x9a\x98\x17\x28\xa4\x71\xb9\x85\x92\x74\xd1\x4c\x85\x37\x94\x7d\x7c\xab\x4d\xee\xf1\x5c\xc6\xf1\x2c\x2e\x71\x67\xc7\x98\x7d\x5c\xd4\x3d\x47\xc9\xc7\x1b\x5e\x35\xa9\x4b\x77\x65\x12\xb5\x40\x5a\x0b\x8f\xa8\xa5\xbe\x55\x4a\x2c\x56\x55\x7a\xf0\x1c\xd1\x62\xe7\xb6\xf3\xd0\xb3\x9e\x3b\xec\xbf\x5b\x85\x94\xdc\xd8\x79\x10\x19\xbf\x81\xde\x24\x5d\x40\x4e\x71\xf4\x6f\x65\x9d\x5a\xeb\x4f\x27\x91\x97\x4e\xbb\x42\x77\x66\x32\xec\x47\x61\x97\x16\x2a\xff\xea\xeb\xb4\xed\x4e\x12\x34\xeb\xca\xdf\xad\xcd\xbb\x7f\x66\xae\xf8\x77\xf1\x3a\xff\x33\x73\xc5\x03\xc8\x5c\xb1\x0f\x9f\x1c\xbd\x7a\xf6\x8b\xd9\x6c\x52\xc3\x8d\xaf\xc3\x3b\x9b\x4e\x01\x05\xf9\x65\xb7\x73\xfe\xbf\xe7\xef\xc6\x63\xe7\x9b\xdd\x4b\x90\xac\x06\x04\x53\x96\x0d\x0c\xc1\x54\x3f\xc5\xca\x52\x7c\x15\x38\x41\xf6\x90\xe7\xd5\xd4\x1f\x2b\x8c\xa7\x08\x74\x75\xbd\x28\xf4\xd2\x8e\x4d\x86\x4a\x6f\x28\xdb\x01\x21\x86\xb3\x06\xc5\xea\x98\x61\x3f\x89\xb1\x17\xc6\xa5\xfc\x30\xa9\xcb\x76\x32\xd6\x27\x3f\xba\xcc\xbd\x1b\x78\x19\xf3\x19\x27\x68\xe6\x45\xe1\x27\xf8\x94\x08\x36\xb4\x10\x48\x46\x71\xc7\x13\x91\x90\xe4\xc8\x70\x69\x0e\xcc\x93\x28\xea\xa4\x8e\x03\xc2\x51\x72\x9e\x70\x3a\xef\xf6\xc7\xe7\xbd\xf1\x16\x1a\x75\xfb\xa3\xd1\x28\x74\xe9\x9a\xbe\x9a\x74\xec\x73\xdb\x79\x6c\xeb\x61\xe7\xe4\x30\x03\xe4\x85\x78\x1a\x02\x7b\x6c\x3b\xc3\x90\xd2\x6c\xc4\xfa\x44\x46\x41\xc3\x90\x22\x77\xea\xc5\x41\xc4\xfb\xe5\x01\xc4\xb9\x55\xb1\x6c\x44\x90\x20\x1d\xa4\x90\x0d\x4b\xc1\x76\x2c\xc4\x59\xb2\x58\xe6\xef\xe7\xa4\xfe\x96\x42\x10\x62\xf8\x11\x77\x99\x6b\xf1\xc3\x10\x9d\x8f\x9f\xbe\x7d\xf9\x64\x72\x79\xd0\x38\xab\xd9\x24\x84\x51\x90\x42\x6c\xd4\x21\xe5\x86\x58\x54\x24\x95\x3a\x7e\x68\xb9\xc1\x52\xe8\x21\x7f\x5a\xa9\x86\x32\x21\xa7\x9f\xc9\xcf\xcc\x38\xe5\x87\xc0\x0e\xe3\xf9\x02\x6b\x1a\xac\x24\xe6\xad\x55\xe0\x78\x0b\x37\x12\x15\x4d\x34\x89\x79\x5d\x6d\x3f\xfb\x00\x6f\x82\xe4\xba\xc2\xf3\xc4\x16\x25\x74\x40\x54\x9e\xe2\x35\x03\xb5\xa3\xbe\x27\x2c\x93\x1c\xf7\x43\xe1\x6f\xe6\x91\xe7\xc3\x69\x12\x51\x23\x3e\x7d\xaf\x3e\x11\xf5\x79\x0b\x9c\x4c\x12\x7f\x41\x66\x3d\xfb\x5b\xcf\xa8\xa6\x2f\x44\x15\xa6\xbb\xbd\xae\x9b\x84\x71\x77\xac\xad\xe5\xaa\x05\xee\xca\x4e\xf1\xf2\x93\x8d\x8b\xa2\x82\x52\x32\xc4\xa8\x14\x62\x7a\x7e\x30\xaf\x6a\x75\x8b\xf2\xc5\x31\x45\x0f\xd0\xa8\x81\xc7\x6c\x87\x0e\x21\x03\x76\xe2\x2b\xae\xb5\xd9\xdf\xa3\xfe\xd2\x1f\xe0\xcd\x69\x12\x50\x19\x2e\x9f\x8e\x31\x7f\x04\xd5\xa7\x80\x9b\x7a\xe9\x34\xf4\x13\x34\xef\x72\x0d\xec\x83\x38\x83\xd2\xf0\x69\x12\x5d\x3f\x7a\x65\x66\x18\xbc\x05\x9e\x3e\x09\xbd\x28\xb9\xb4\x95\xac\xc5\x84\x6a\x4f\x16\x78\xfa\x23\xb9\x96\xd8\x9f\xaf\x51\x32\x09\x29\x8e\x9d\x56\xca\x9b\x87\x36\xb0\x5f\xc0\x78\xf1\x8c\xc1\xf8\x93\x3f\xcf\xe0\xdc\xa3\xcc\x98\x2c\xc0\x14\x7a\xe2\x97\xe9\x99\x56\x6b\x45\x7d\x4d\xcb\xf1\xac\x02\xed\x3a\xcb\x3f\x2a\xe7\xa2\x74\x13\xfe\x2c\x09\xbc\xa8\x1b\x79\x37\xf4\x28\x90\x26\xbe\x06\x99\x2e\x14\x58\xc0\x0b\x2f\x8e\x4d\x87\x79\x8d\x4d\xa0\xde\x80\x5c\x91\xbf\x60\x70\x64\xe7\xb3\x17\x0c\x0e\xc5\xa3\x8f\xb3\x28\x26\xb3\x35\xc5\x78\x3e\xdc\xdd\xbd\xbe\xbe\x76\xaf\xf7\xdc\x04\x5d\xee\x0e\x7a\xbd\xde\x2e\xad\xb3\xec\x25\xfd\x76\xd7\xce\x7a\x80\x43\x5c\xcc\x32\xc6\xbc\x4e\xc4\x11\x57\xc0\xbc\xee\x51\x34\x69\xfb\x45\x7f\xcf\x1d\x1c\xed\x5b\xfd\x47\x6e\xff\xf0\xc8\x1b\xb8\x47\x87\x8f\x2c\xf6\xdf\x9e\xd5\xb7\xfa\x5d\xb7\xd7\x3b\xea\x1e\xb8\x87\x07\x7d\x4b\x7f\x49\x5e\x93\x97\x16\x79\xf9\x69\x76\xe0\x1e\x1c\x3f\xea\xf6\xdd\x83\xfd\x43\xaf\xef\xee\xed\xed\x59\xec\xbf\xb4\x16\xab\xd7\x1d\xb8\x8f\x1e\x1d\x5a\xfa\x1b\xf2\xae\x67\xd1\x37\x9f\x66\xfb\xee\xd1\x01\x79\x35\xd8\x3f\xf6\xfa\xee\xe0\xb0\x6f\xb1\xff\xb2\x0a\xdc\xde\xe0\xb0\xeb\xf6\x7b\x87\x7e\xcf\x72\x7b\x7b\xe4\xb1\xdb\x7b\x74\xd8\x25\xcf\xc9\xe3\x4f\xb3\xae\x7b\xbc\x77\xd8\xdd\x73\xf7\xf7\x1e\x19\x3a\xe0\x1e\x1f\xd1\xde\x1d\x1f\xf8\x6e\x6f\x6f\xcf\xed\x1f\x0e\xe8\xbf\x7b\xfb\x47\xa4\xaa\x83\x41\xd7\xed\x1d\xba\x07\x7b\x5d\x77\xff\xd1\x81\x7b\xfc\xa8\x4b\x3e\xb0\xfa\x6e\x8f\x8c\x6d\xdf\x3d\x1c\x58\x7b\xee\xe0\xb8\x58\x71\x97\x14\xa1\x35\xef\x1d\x19\x46\xd7\x77\xfb\x7d\x52\xcd\x7e\xff\xd0\xdd\xdb\x1f\x90\xff\xa7\x6f\x7a\xbc\xe3\x83\x69\xd7\xed\xf5\xf7\x3e\xcd\x48\x3d\x47\xdd\x3d\x77\x6f\xcf\xd0\x79\xf2\xee\x88\xb4\x31\xd8\xf7\xdd\x5e\x7f\xdf\xed\xf7\xf7\xe9\xbf\x83\xc1\x31\xe9\xfd\xde\xfe\xc0\x2b\xb4\xdd\xed\xbb\xfd\xde\x80\xf4\xe0\x68\x30\x25\xa5\xe9\x14\x0d\x0e\xac\x43\xf2\x5f\xd3\x14\xf5\x1f\x1d\x74\xc9\xfa\xf9\xa4\x4f\x6e\xff\x78\xaf\x4b\xa6\xd8\xdd\x3b\xea\x92\x57\xe4\x0d\xa9\x62\xff\xa8\xdb\x1f\xb8\xfd\xe3\xbe\xa9\x8a\x83\xde\x61\xb7\xef\x1e\xf5\xf7\x7d\x97\x74\x6f\xef\xd0\xed\x1f\x1f\xb9\x07\xa4\xcb\x8f\xf6\xdd\xc3\x23\xb2\x60\x7b\x47\xee\x3e\xa9\x73\x70\x74\xec\x1e\x0d\x8e\xba\x2e\xa5\x8b\xde\xfe\xc1\x15\x69\xf7\xe8\x13\x21\x49\x52\xe5\xe0\x11\x21\x8c\xd3\x03\xf7\xf8\x90\xff\x4d\x88\xa5\xe7\x3e\x3a\x26\x7f\xf0\x42\x3d\x8b\xbe\xa7\xff\xc9\x1e\xfa\x03\xf7\x78\x70\x4c\xaa\x23\xd4\x79\x78\xe4\x1e\x1f\x1c\x58\x47\x6e\xef\xf8\xc8\x1a\xb8\x87\xfb\x83\xe7\xfd\x63\xf7\xc8\xda\x77\x8f\x8e\xbd\x7e\x8f\x11\x66\x8f\x37\x40\xd6\xa6\x7f\xe8\xf6\xf7\xf6\xac\x23\x77\x7f\x7f\xdf\x32\x14\xb0\x68\x81\x43\x52\xe0\xb0\x1f\xf5\xdd\x47\x83\x43\x6b\xe0\xf6\xf7\x3c\xb2\x99\xfa\x47\x16\xff\x87\x2d\x83\x6c\x76\x6f\xef\x93\xd8\xfd\x93\x30\x8a\x6c\x60\xff\xe5\xc7\x1f\x7f\x54\x39\x93\xe3\x16\x7c\x5f\xc6\x4e\xcd\x60\xbc\x10\x15\x87\x64\x4f\xcf\xbc\x30\xee\xc6\xde\x95\xe2\x7e\xcc\x13\xd4\x32\x76\xae\x0d\xbf\x97\x31\x52\xfe\x14\xfa\x1f\x2e\x92\x8f\x66\x56\xaa\x92\x33\x66\x2e\xd1\x86\x6e\x99\xbc\xa2\xdf\xd2\xb7\x16\xb9\x35\x6a\x92\xf4\x34\xf2\x19\xdf\x64\xd7\x6a\xd9\xf7\x53\x61\x74\x33\xa7\xac\xaf\x7e\x73\x48\x56\x54\xcf\x25\xe4\xa1\xd0\xeb\xf2\x4e\xdb\x2f\x18\x64\x6a\x65\x84\x43\xe0\x37\x76\xc7\xb6\x6a\xdc\x8e\x9b\xfb\xd6\xbf\x3c\x7b\x7d\x72\xfa\xd4\xe4\x5e\x7f\x04\xec\xcb\xcc\xfd\x3c\xa6\x21\xd7\xcc\x50\x4f\x44\x63\x3d\xc1\x41\x0b\xd8\xf0\xfc\xaa\x9a\xbd\x01\x44\x73\xcd\x47\xf5\x47\x65\x57\xfb\xda\xb8\xe2\x24\x1b\x98\xef\xc5\x2f\xbc\xd8\xbb\x84\x2f\x45\x93\x2b\xa1\xa1\x37\x21\x32\xe1\x47\x19\x8b\xf0\xf5\x7c\x2a\xc5\x1a\x77\xf0\x96\x5d\x38\x00\x36\x0f\x16\xeb\xd2\x63\x46\xf8\xb2\x48\xb0\xee\x31\x38\xb7\x23\x38\xa9\x49\xc2\x5f\xd9\x40\x95\xab\x0c\x46\x21\xb5\x61\xae\x50\xbb\x9e\x80\xb2\x74\xbe\xea\x3b\xd9\xd8\x0b\xf7\x08\xd8\x61\xda\xe5\xbc\xa3\x1d\xf8\x6e\x46\x81\x2b\x52\xc1\x06\xdd\xd5\xca\xab\x2f\x71\xbd\x7a\xf7\x0e\xab\xff\x67\xfa\x5a\xc2\x28\xa4\x16\x9e\xc2\x59\x0a\xa3\x2b\x98\x4a\xdf\xb7\x58\xbc\x0d\xa8\x93\x6b\x7a\x1d\x62\x7f\x1a\xc6\x97\xd6\x75\x18\x45\xb4\x04\xbb\x6e\xa8\x53\x0b\x07\xf5\xa2\x5e\x5c\x6e\x83\x4e\x9b\x8f\xd1\x56\x4b\x57\xeb\x43\xbc\xf2\x8a\xb0\x1b\xb9\x6c\x3d\x38\xd1\x08\xf8\xfb\x3d\x30\x18\x80\xf3\x4c\x60\xe2\x89\x55\xe4\xc3\x4c\x74\x6a\x73\xb2\x17\xfb\xfc\x88\x55\x7b\xc0\x42\x83\x9a\xb8\x4a\xd6\xd5\x58\x33\x0b\xec\xde\x5a\xb9\x05\x95\xbc\x1a\x15\x6f\x11\x4e\x05\xec\xef\xb9\x4f\x36\xed\xe9\xee\x7f\xee\xfe\xe7\xae\x24\xd7\xb4\x45\x44\x55\x5c\x3c\xf0\x8d\x31\x55\x84\xf5\xf8\x74\x63\xe7\xc4\xd6\xea\xd1\xd4\x38\x1a\xae\xf8\xa9\x5d\x4c\x42\x88\xe0\xef\xd0\x17\x69\x08\x9f\xc0\x08\x62\x18\x9c\x60\x1b\x94\x0e\x71\x6d\x22\xdc\x67\xb3\x59\x08\x02\xc9\x0e\xd2\xc2\x5d\xac\x1c\xdd\xb4\x8a\x47\x59\x3a\x26\xe9\x94\x17\xa6\x5d\x09\x1e\x9f\xc5\x88\xd8\xdf\xd3\x23\x59\x26\x39\x22\x02\xbd\x58\xc3\x82\xdb\x14\x6f\x6c\x5c\x48\x42\xf1\xff\xd8\x65\xed\x8e\xd5\x90\x94\x87\xbb\x9b\xc4\x6d\xa8\x8f\xa1\xf1\x3d\xd8\x80\xb4\xd6\xf8\xd4\x90\x0a\xe3\x51\x59\x32\xee\x52\x6e\x6b\xa3\xe7\x62\xe3\x51\xe5\x89\xba\x8c\xe4\x98\x0e\x49\xe1\x0a\x80\x64\xd9\x41\x81\xa2\x1e\x30\x1d\xb1\xb9\x6f\x77\x38\x7f\x3e\xb2\x29\x4b\x94\x32\xd8\x07\x83\x83\xc6\x37\xfc\x0a\xbd\x35\x50\xf0\x00\x0c\xf6\xea\x1c\x6a\x4b\xbb\x92\xb7\x4d\xb4\xe6\x56\x8a\xc2\x51\x85\x14\xc4\x23\xd8\x72\x72\x4d\xe0\xa7\xf9\xb4\x6e\xca\xb9\x4c\xde\x9a\xe4\xa3\x7b\x93\x79\xd4\x9d\xf2\xa7\xbc\x63\xae\xbf\x72\xae\xd6\x62\x98\xd7\x1a\x57\x4b\x8e\xb8\x7f\x64\xe0\x88\xe5\xc3\xf5\x39\x62\xe5\xd4\xee\x6d\x82\x1f\xbe\xff\x73\x37\x83\xaf\x6b\x76\xde\xae\xc5\x0a\x07\x59\x63\x2d\x78\x61\xed\xb4\xd8\x10\x1f\xbc\xf2\xc5\xd1\x96\x07\x2e\x49\xc4\x9d\x1b\xd3\xba\x5c\x86\x48\x24\xdf\x8c\xf1\xd5\xf6\x30\x25\xd6\xfe\xfd\x30\xbd\x01\x4f\x01\x9a\x6b\xe1\xeb\xe0\x47\x14\xbe\xb6\xff\x35\xf0\xb5\xa5\x89\x47\xfb\xc7\x60\xd0\xfb\xbc\x2c\x4a\xff\x48\xf9\x6c\x4d\x16\xa5\xac\x44\x4e\x41\xdb\x2f\x23\x7c\x5d\x75\xc6\x9d\x1c\xaa\xb8\x64\x13\xe9\x57\xe9\xed\x73\x9d\x6a\x62\xf1\x6d\xd6\x11\xd5\x7d\x87\x17\x6e\x34\x33\xf7\x35\x77\x31\x4b\xf0\xf4\x85\x27\xae\xae\x17\x59\x93\x2c\xfd\xcd\x17\x9d\xb2\x0f\x57\x5f\x7c\xbe\x2a\xbb\x90\xb5\xf7\x0b\xbc\xd9\xfd\x4d\xdc\xab\x9f\x73\xc2\x32\x11\x41\x9f\x3a\x1a\xe2\x58\x31\x79\x25\x9f\x04\x61\xea\x5d\x44\x34\x2e\xba\xb4\xdc\x22\xd6\xe2\xa7\x55\xe9\xe2\xf3\xac\x09\xe9\xa8\x4b\xf1\x89\x9a\x51\xf2\xc9\xe9\xf3\x2f\x4b\xc7\x61\x8c\x61\xcc\xa2\x8b\xbf\x34\x3d\x37\xea\x4a\xd6\xee\xb3\xac\xf8\x9a\x33\xb8\xb2\xe4\xdc\xca\x3c\x5b\x6b\x1f\xae\xc0\x72\xaa\x5b\xed\xba\xa5\x68\x2c\xa9\x22\x91\x8a\xb6\x1d\x73\x75\xbf\x82\xea\xcf\x30\x9a\xb7\xe2\x52\x1a\xb1\x36\x1b\x17\x41\x0f\x4c\x22\xe8\xc1\x3d\x88\xa0\xfd\x47\x45\xa1\x40\x0d\xef\x37\xb0\xf3\x75\xd0\x20\x0f\x55\x88\x55\x43\xfe\xbf\x90\xec\x57\x37\x03\x15\x6b\xa2\xc2\x0b\x18\x16\x45\xda\x0a\xda\xc3\x08\x3c\xf8\x95\xfb\xd9\x4b\xa7\xe1\x69\x82\xe6\xd6\x73\x32\x09\x0f\x7b\xed\x0e\x57\x51\xe5\xaf\xb7\xf6\xfa\x6a\xbf\x79\xfa\xfa\xd5\xfb\x67\x67\x67\xbf\x3e\xfd\x3a\xf6\xe5\x6b\x94\x5c\x85\x01\xb4\x7e\x84\x30\xb8\xf0\xfc\x0f\x5f\x4c\x2d\x53\x90\x4f\x1f\x81\xfe\x61\x23\x91\x78\x85\x1e\x19\x9a\x3b\xa8\xf9\xe8\xde\x58\x37\x81\xed\x69\x7f\x3e\x16\x2d\xdf\xa4\x2a\xc5\xca\x37\xad\x18\xb1\x82\x55\xa1\x1e\x82\x75\x5d\x7f\xaf\x86\x9c\x12\x11\x23\xba\x01\xf7\xc0\xe7\x9b\x87\x72\xa3\xdf\x4b\xe3\xb2\x86\xb5\x6a\xd4\xbf\x95\xd8\xa2\x4b\x5c\x29\x11\x94\xb2\x4b\xed\xfe\x2f\x7a\x84\x80\xf3\x2c\x34\x40\x28\xff\xf8\x33\x11\x23\xb0\x1a\xe3\xd1\xe0\x30\xd1\xa5\xae\x35\xbc\x8a\x8a\xde\x96\xd8\xbb\xe0\xe1\x1a\x76\xcf\xae\xc4\xcb\x95\x81\x46\x73\x04\xd3\x0a\x2d\xb4\x2d\x8a\x9c\x46\xa1\xff\xa1\xd5\x5e\xd1\xfa\x6a\xf2\xe6\x64\xe0\xb2\x4d\xbd\x8d\x9a\xfb\x25\xe5\x42\x1b\x72\x74\xc9\xbd\x7a\x09\x3d\xf2\xd8\x8d\xef\x93\x38\x99\x43\x6e\x7b\x52\xe7\xa9\xc2\x91\x57\xc5\x76\x29\x2f\xc6\xab\xdd\xc0\xed\xc4\x8e\x18\x36\x02\x89\x62\x24\xc7\x22\x0d\x01\x4a\xdb\x74\xf0\xcc\xa9\xa2\x3f\xa0\xd7\x74\x1b\x9b\xfb\x3d\xfa\xc4\x59\x4a\x40\x49\x01\xdc\x8d\x83\x18\xe3\xc4\xd2\xe3\x2b\xee\xd5\x98\xd1\x68\xc8\x4d\x90\xd6\xaa\x1b\x60\xec\xcf\xde\x66\x1c\xc4\xd6\xa0\x0c\x4f\x06\x45\x51\xe2\xd8\x6f\x45\x1c\xc6\x7b\x7d\x7f\x33\xda\xfc\x46\xe3\xdd\x00\xf2\x5b\x75\x1b\x87\xc0\xbe\x58\x60\x9c\xc4\xb9\x20\x50\x9a\x31\xb5\xca\x5e\xb7\x07\xfa\x7b\x8c\x1f\x36\xb8\xf7\xf3\x2a\x5b\x9c\x9c\xe4\x7f\xa7\x49\x8c\xc3\x78\x01\x29\xaa\x77\xb2\xc0\x56\x94\x5c\x5e\x86\x31\x07\xe5\x6e\x32\x9a\xd5\x37\x4f\x7f\x6f\x65\xa6\xb3\x3f\x68\x68\xd8\xbe\x2f\x7b\xf8\x26\x6e\xd8\x3f\x2f\x10\x79\x81\x1c\x7f\x6d\xf7\x87\x19\x04\xff\xcf\xcb\xa4\xae\xcf\x6b\x5f\x26\xfd\xf5\x2f\x93\xfe\x9f\x97\x09\x9b\xcb\xde\xbf\xd3\x65\xd2\x5b\xf9\x32\x39\x6e\xa1\xa1\xba\x4f\xad\xbd\xd6\xca\xbd\x39\x99\x59\x2c\xeb\x46\xb2\xc0\x5f\x98\xfc\x5b\xea\xf3\x4d\xea\xfc\x16\xda\xfc\x4c\xaf\xb1\x07\xfa\xeb\xe5\x41\xa9\x1a\x73\x31\x9a\x8d\x07\xb0\xc7\x49\x5c\x13\x96\x58\x5e\x29\x3b\x8a\xf7\x57\x73\x70\xce\xaa\x69\xba\xb9\xf2\x0d\x1f\x95\x35\xbc\x72\x08\x8e\xa9\x95\x43\x93\x11\xc5\x8b\x2f\x21\x4a\x58\x9e\x01\x42\x3c\xe2\x5c\xab\x80\x45\x15\x0b\x1c\x51\x1a\xdf\x80\x4f\x76\xd6\xd1\xfb\xf6\x84\x62\xff\x6b\xb8\x39\xb3\x8e\xad\xbc\x49\x1b\x54\x50\x7c\x79\x08\x8e\x5a\xac\xf2\x06\x15\xcd\x07\xe0\xd1\xfa\x4c\x7f\xf1\xe5\x1e\xd8\x6f\x30\x1e\xc3\x85\x03\xea\x64\x90\x95\xed\xd8\xc5\x8f\xeb\xdf\x14\x9f\x9a\x9f\x1c\xb2\x60\xe9\x12\x9f\xf2\xfe\x3e\x18\x1c\x36\xab\x65\x92\x24\xd8\x8c\xd5\xe1\x27\xcc\x15\x20\x9e\x24\xe6\x13\xaf\x52\xc9\x6d\x86\xf1\x3e\x7d\xf5\xfa\x9f\x6f\x9e\xfd\xf4\xf3\xdb\x9c\xf9\x6d\x23\xd8\xdc\xff\xdf\xff\x2b\x9d\x10\x2b\x1a\xfe\xe7\xd3\x93\x37\x85\x8c\x2f\x64\xe5\xa4\x6d\xad\x7c\x65\x4c\x21\x9a\x3c\xab\x4c\x69\xcb\xbf\x3d\x7d\x73\xf6\xec\xd5\xcb\x9a\x24\x33\x2b\xce\x67\x4d\x36\x8a\x29\x8c\xe6\xd6\x4a\x73\xf9\xa4\x0e\x15\xde\x52\x47\x9c\x85\x67\xbd\xfb\xb8\xe7\x6f\x77\xbb\x96\x6d\x9a\x8a\x9f\x9e\xbd\x7d\x7f\xf6\xf3\x49\xb6\xee\xdd\xee\xbb\x8f\x7b\x99\x78\xcb\x87\x9d\xa7\xda\x35\xa0\xa0\xcc\x28\x45\xf7\x8e\x05\x15\x84\xc1\xb3\x38\x85\x08\x97\x21\x23\xd7\xe3\x2f\x07\xc9\xcc\x45\x49\x82\x3b\x8e\x4b\xaf\xd1\xe7\x61\x8a\x05\x1c\xb2\x2d\x40\x8f\xba\x84\x43\xef\x5e\x41\x84\x43\xdf\x8b\x18\x2b\xeb\x2c\x41\x3e\x32\x2b\x87\xe9\xd7\xb1\x95\x94\x0d\x2a\xb2\x94\x44\x2c\x95\xd0\xb2\x0c\xa0\x4a\x29\x7e\x77\x77\x3e\x76\x0a\xf9\xd8\x25\x22\x55\x32\x67\xc0\x94\x2c\x9f\xf5\x1b\x28\x80\x70\xed\x6b\x14\x62\xc8\x9e\x32\x56\x6d\x67\x07\xba\x27\x51\x94\x5c\xb3\x24\xed\x19\x66\x96\x66\x48\xd0\x60\xac\xa0\x40\xfa\x0b\xc2\x74\xee\x61\x7f\xca\x10\xf7\x62\x78\x6d\xbd\x48\x16\x29\x07\xe0\xb3\x19\x6b\xe1\x38\x4b\x90\xc7\x54\x66\x70\xcc\x5c\x10\x75\x29\x4a\x59\xc7\x04\xe6\xab\x97\xa3\x88\x8c\xa4\x9c\x62\x4a\x2a\x42\x7a\x51\x2d\x08\x47\xf9\xcd\x03\x00\x42\xd2\x48\x11\x0a\x4c\xc1\x4e\x26\xab\x7d\x15\xc2\xeb\x79\x82\x70\x87\xd0\x65\x8e\x06\x00\xca\x9e\x40\x46\x53\x1d\xa6\x1c\x70\xb6\xe4\xb4\x50\x64\x10\x18\x3c\xee\xc4\x0a\xc9\x78\x41\x50\x43\x2f\x00\xb9\x29\xbe\x89\xa0\xcb\xe0\x91\x46\xb1\xfe\x13\xbb\x61\x1c\x43\xf4\x33\xfd\xf5\x8d\x3d\xff\x68\x3b\x43\xad\x85\x46\x44\x59\xd3\x08\xd9\xff\xab\x80\x90\x41\x2f\xe8\xf2\x7b\x4a\x47\xe9\xcd\x8a\x8b\x6e\xb1\xd2\xf7\x9d\x91\xb5\x12\x45\x7e\x96\x04\x30\x2a\x39\x38\xe8\x50\x38\xc0\x66\xe4\xdd\x24\x0b\x3c\xcc\x80\x8b\x57\x98\x15\x56\x47\x19\x76\x33\x29\x52\xf6\xc9\xd7\x09\xdc\x3c\x85\x5e\x84\xa7\x74\x0b\x74\xa3\x30\x35\x40\x37\x7f\x09\x3c\xba\x9f\x82\xbf\x1f\x5e\x1f\xbc\x2a\xc9\xc4\x2b\x10\xd8\x4a\xb2\xf0\x16\x92\xee\xe6\x33\xeb\x56\xfb\x38\xda\xb9\xe8\x9a\x7d\xc0\x5a\x6c\x96\x93\xae\xda\x79\x22\xbb\xf0\xd5\x79\x4f\x16\x78\xbe\xc0\x96\x2d\x85\xb7\xb3\x7c\xae\xc0\x52\xdc\xb7\x6a\xe8\x20\xbb\x26\x11\xb0\xce\x55\x17\xf3\x2b\xf5\x65\x8f\xca\xc3\x16\xeb\xf9\x72\xd2\xcd\x46\x08\x3d\x3c\x76\x88\xcf\x01\xdb\xe1\xa2\x61\xbb\x8d\xcb\x85\x68\x15\xe7\x5b\x7d\x99\x04\xbc\x46\xb3\x78\x21\x3e\x0c\xca\xa6\x21\x09\x36\x16\xbd\x59\xda\x49\x6d\xe4\xab\xf5\x33\x37\x79\xcd\xba\xab\x4b\x62\xed\xd7\xb3\xc1\xd0\x4e\x09\xbd\x3f\x7b\xd2\x7e\x58\x99\x03\x3f\x1b\xa0\xac\x88\x70\xc3\x0d\x65\x84\x8d\x8f\xe6\xed\xcd\xbc\xe5\x0a\x99\xc5\xd9\x6c\xdd\x58\x8d\xf9\xe8\xaf\xc2\x46\x11\xa0\x4f\xfb\xfc\x98\x4e\x99\x1d\x4e\x1c\x31\xd8\x0b\xa9\xd7\x7a\xbe\x56\xf6\x2d\x42\x1e\x8d\x13\x9c\x62\x3c\xb7\x81\x7d\x89\xe6\xbe\x6d\x0a\x7d\x6e\xa8\x0e\xe4\x03\x25\x27\xb2\x8a\xcd\xe8\x61\x2f\xcb\x71\x6f\x3f\xa5\x9d\x64\x9c\x56\x6a\x85\xa9\x95\x42\x0a\xf7\x4e\xbe\xa0\xe8\x3a\x5e\x14\x59\x48\xa6\xb1\xb5\x7e\x7e\xfb\xf6\xb5\xe5\xc5\x81\x75\xf9\xe6\xf5\xa9\x45\x3f\xb3\xe6\x1e\x9e\x32\x74\x1e\x3e\x64\x0b\x4f\x51\xb2\xb8\x9c\x5a\x4f\xe3\xab\xe4\xc6\x9a\x24\x88\x42\xf1\x70\xc1\xd2\xbb\x24\xdc\x84\x22\x9a\x3d\x15\x13\xb5\x92\x5a\xa2\xa9\xda\x61\x03\x64\xf5\x32\xc1\xe5\xf1\x44\xcd\xb7\x08\xaf\xe6\x4b\x6e\x90\x57\xf4\x62\x5b\x77\x8b\x64\x3a\x04\xa4\xa3\x84\x1e\x12\x6a\x0f\x60\xc9\x19\x28\x1a\xd7\x47\x5d\xa6\x05\xe6\x0a\x4e\x3f\x99\xdf\x74\x85\x45\x89\x6b\x38\x39\x92\x70\xa6\xea\x2c\xb6\x60\x27\xe2\xcf\x92\x71\x36\x9b\xf0\x3a\x2d\x96\x41\x0d\x57\x93\xee\xbe\xf0\xf5\xca\x1a\x01\x23\x9f\x78\xaf\x39\xd0\xaa\x19\xd7\xf0\xea\xa6\x4b\x56\x7f\x16\xb2\x94\xbc\x2a\xc3\xae\xbf\xab\xf8\xea\xeb\xe4\xd9\x7f\xbf\x2e\x4f\xfe\xa6\x8a\x70\x0b\x1c\x46\xe9\x6e\x90\xcc\xb4\xa4\x66\x9f\x5f\x94\x43\x70\x9e\x94\x88\x6f\xe4\x55\x1a\xe2\x04\xdd\xec\x26\x61\xe0\x77\xe7\xcc\x95\x1b\x35\x48\x97\xa0\xa5\x7f\x68\x9c\xe9\xe1\x0b\xa6\xf5\xaa\x6f\x85\xcc\x86\xae\x0b\x31\xe4\xf4\x5a\x56\xaa\xc9\x94\xfc\x57\x5a\x4a\x25\xe5\x87\xde\x02\x7b\x36\xea\xf4\x00\xa6\x29\x61\x5e\xa3\x64\x16\xa6\xd0\xe9\x64\x3d\x9a\x84\x71\x70\x9a\x04\xf0\x87\x9b\x5f\xdf\x3c\x97\x79\xb3\x9c\x62\x17\x0b\xf9\xab\x78\x52\x23\x2d\x83\x15\xa7\x78\x98\xe9\x79\xb0\xb3\x04\xc5\x4c\x57\x4a\x39\x91\x8e\x8a\x6c\x8e\x96\x42\x3d\xe9\x5c\xd7\x4f\xa2\x08\xd2\x8a\x4d\x1b\x86\x8b\xf7\x59\x19\x35\x1b\x60\xee\x9d\xa9\x38\x93\xff\xd3\xdd\x39\x44\x3e\x8c\xb1\x77\x09\xc9\xdb\xc5\x2c\x56\x2b\x67\x2a\xc4\x2e\xd5\xde\x54\x67\x43\x02\x31\x40\xc0\xdb\xd4\xae\x4c\xab\x05\xed\x83\x93\x7f\xe0\xff\x3e\xbb\xfe\xd9\x2c\x68\xfb\x90\xe2\xfc\x56\x24\x8c\xe1\x7c\x47\xdc\xbd\x0e\xe3\x20\xb9\x26\x13\x8b\x60\x1a\x7e\xaa\xf2\xcd\xe2\x05\x72\x01\xb1\x45\x96\xb7\xbf\x4f\xe5\xf6\xec\xc1\x81\x98\xce\xd8\xc3\xe1\x15\xec\xa6\x3e\x4a\xa2\x88\x1c\xac\x8a\x53\xcd\xe5\x4b\xee\x4d\xc3\xf5\x5b\x5d\xd6\x1b\xfb\x7b\x56\xba\x4b\xd1\x6f\xb2\x9f\x38\x99\x67\xbf\x4e\x25\xa6\x88\x1f\x85\x30\xc6\x67\xe1\x27\x78\x2a\xbd\xea\xa9\xba\x80\x26\x73\x78\xcf\xeb\x3e\x63\xe3\x60\xcf\x58\x15\xcf\x29\xb8\x8e\xf6\xe8\x6d\x42\x4d\x23\x65\xd3\xa1\x35\x5d\xeb\xb1\x66\xe8\x58\xbd\x7d\xb7\xa8\x98\x10\x08\xc8\x79\x45\xc7\x7b\xb2\xe4\x15\x9a\x8e\xa2\x7a\xa3\xd6\xd7\xc6\xf6\x73\xae\xed\xfd\x23\x42\x46\x37\xcc\x7f\x8f\x71\x52\xec\xe7\x78\x5c\x19\x6f\xc2\x37\x91\x5d\x65\xfc\xce\x98\x60\x32\x9a\x28\x8c\x3f\x50\xf2\x18\x4b\xd4\x5b\xb2\xdc\x74\x64\x1a\xf1\x89\x7e\x84\xcc\xbb\x22\x1f\xab\x9d\xd5\x53\xa9\x8f\x39\x00\xf6\x4d\x08\xa3\xa0\xb5\x53\x9e\x41\x91\x43\x88\x3f\xe3\x34\x43\x35\x88\x33\x83\xf2\xa7\x13\x76\x5c\x6f\x63\x6e\xd0\xb9\x00\x62\x2f\x8c\x8c\xde\x58\x5f\xb8\x77\xc0\xfe\x9e\x7e\x9f\x6a\x5e\x63\x6c\x3d\xd9\x31\xca\x5f\x2b\x64\x42\x4f\x6f\x72\x18\xcd\x12\x04\xbb\x9a\xcb\x12\xad\x19\x7e\x9c\x7b\x71\x00\x03\x5b\x81\x15\x17\x4e\x15\x46\x2c\x1b\x6e\x23\x30\x8e\x52\xb1\xc2\x89\x53\xac\x6e\x13\x4b\x20\x73\x63\x55\x2d\x90\x6b\x1a\xa9\x01\xb9\x96\xa1\xf1\x9a\x35\x11\x54\x1a\xa4\x11\x2f\x2e\x7d\x29\x76\xcc\x7a\xa9\x99\x8d\x77\xbc\x14\x4d\x92\x51\x2c\x2e\x46\x25\xe7\xde\x24\x41\x33\x0f\x3f\xc3\x70\x76\x46\xce\x1e\x10\x56\x0a\x30\x29\x90\x0c\xba\xe0\x6a\xbd\x2c\x11\x59\x63\x4e\x95\x2e\x93\x87\x31\x0a\x2f\x16\x18\xfe\x10\xc6\x41\x18\x5f\xa6\x43\x79\xfe\x01\x66\xd6\x19\x1e\xf4\x7a\x80\x1c\xc4\xcc\x78\x34\x3c\xec\x01\x5a\x60\xd8\xe9\x01\x24\x9a\x75\x3a\xf6\x25\xc4\xb4\xf3\x34\xe3\xad\x97\xa6\x14\xd3\x70\x48\x8e\x3d\x6d\x3e\xec\x31\xe0\xe4\x4b\xd3\x00\xaf\xca\x02\x73\x9e\x66\x74\xde\xef\xf5\xc6\xd5\x4c\x68\xc3\x1a\x45\x86\x57\xc6\x10\x68\x39\x5e\xd5\xdc\x5f\x39\x2b\xdf\x72\xbc\x6e\xd2\x5a\x56\x82\x4c\xf0\x73\xca\xba\x51\x76\x99\x71\x3b\xd2\x98\x43\x13\xfa\x49\xc2\xe9\xe4\xb3\xd7\x52\x83\x00\x4f\x91\x66\x17\xd3\xe0\x0a\xfe\xcf\xf0\x46\x2e\xab\xcd\xd3\xc0\x2a\xdc\x7a\xae\x0f\x79\x22\x1d\x69\x29\x6a\xa9\xc8\x95\x98\x87\xb8\x25\x99\x67\xbe\xf2\x23\x9a\xca\xb6\x13\x8f\xb2\x94\x6d\x31\xb0\xbf\xfd\xd4\xa5\x7b\x65\x68\xf5\x6d\xc7\x01\xf1\x72\x09\x04\x4d\x15\x6c\xdf\x22\x09\x4c\xd1\xec\x7d\xcb\xa9\x36\x3f\x54\xfe\x05\x61\xd9\x15\x3b\x35\x5b\x6c\x83\x41\x37\xff\x39\xdd\x3b\x5b\xe1\xa4\x83\x33\xd3\xed\xcc\x0b\x63\xeb\x3b\x8b\xec\x23\x47\x4c\x01\x5d\x4d\x5e\x82\x7c\xfe\x43\xb2\xa0\xfb\xea\x94\x72\x4a\x6f\xa0\xcf\xed\xc0\xb2\x96\xbf\x31\xdf\x9d\x73\x94\x44\x70\xa4\xbb\xeb\xfc\xcd\x01\xde\x28\x76\x71\x32\xff\x06\xb9\x8c\xd5\xe2\x06\xdc\x3e\x48\x47\xd2\x62\xac\x58\x76\xbb\x1e\x97\xb3\x20\xce\xe6\xe8\x85\x87\xa7\xee\xcc\xfb\xd8\xe9\x81\x54\x88\x49\x8b\x79\xe0\x61\x48\xd6\x32\xed\x68\x8f\xce\x28\xff\xf7\x9a\x7b\xd0\x76\x9c\xe5\x12\xf8\x05\x1b\xbe\x50\x13\x88\xed\x40\x4b\xfc\x18\xa2\x14\x9f\xc4\xfe\x34\x41\x44\x2e\x70\x73\xfb\xde\xfa\xce\x5a\x44\xd6\x77\x56\x14\xda\x55\x86\xf4\x42\xd6\xf1\xbe\x31\xeb\x78\x5f\xcd\x3a\xde\x1f\x0f\x6f\x97\x6c\x6d\x74\x23\xfa\xce\x0e\xdc\x2e\xac\xa4\xb8\x3c\x1d\xe7\x36\x9f\x9d\x57\xbc\x02\x73\x0f\xa5\xf0\x59\x4c\xf3\xaf\xb2\xd9\xf9\x2b\x4a\xae\x47\xca\x80\x93\x14\xa6\xb8\xc3\xd8\x4f\xde\xaa\x52\x92\xdb\xc5\x3f\x3d\x23\xf4\x3c\xea\x6f\x29\xb4\x41\xf3\x84\x85\x17\x51\x18\x5f\xca\xfe\xb2\x2b\x93\xd0\x45\x5c\x4a\x33\xde\x08\x51\x4a\x88\x35\x4a\x00\x69\xd1\xa5\xa0\x9a\xa2\x92\x51\x5a\xda\x46\x38\x4a\x48\x1b\x5b\xde\x77\xe1\xe3\x82\xfb\x81\x77\x91\x5c\x41\xdb\x19\x9a\xbc\x06\xf8\xbb\x25\x8c\x52\x78\xab\xa4\x57\xac\x18\xec\x56\x54\x5e\x4f\x21\x6d\xb2\x5c\x18\xea\x62\x50\x36\xcf\xe4\x65\x21\x0f\x63\x58\x2b\x94\x13\x46\xac\x3b\xf7\x62\x68\x48\x7f\x56\x93\x29\x78\xb3\xba\xaa\x12\xa9\xd8\x7f\xf9\xfb\x7f\x5f\x3c\xfb\xf5\xf7\x92\x74\x68\x34\x43\x98\x14\x8a\xcb\x0d\xd1\x05\x01\x56\xf1\xe8\x2e\x80\x18\xe6\xb8\xd0\x06\xe9\x6d\xaa\x84\x34\x95\x21\xd4\x24\xaa\x63\xee\x7a\xce\xa6\xdf\x12\xd9\x09\xa5\xff\xfe\x38\x2f\xdc\x34\x90\x1d\x08\xc1\xa3\xc4\x2c\x3c\xe8\x2c\xa1\xc6\x83\xea\xcc\x66\x13\xc4\x4b\xb5\x13\x12\xf1\xbc\x51\xcc\x53\x43\x5e\xb9\xa6\x8f\x8d\x9c\x5a\x73\xad\x97\xdb\x59\x15\x27\x04\xe9\xaa\x30\x90\x6e\xa4\x32\x2d\xd2\x1e\xd8\x33\x26\xf1\xac\x59\x94\xea\xf8\x82\xc6\xc3\xad\xe4\xf3\x6b\xad\x0d\xa5\xdc\xff\xaa\xac\x7e\xfe\xe4\x90\x5c\x3e\xaa\xe4\xdf\xe3\x76\xe9\x84\xeb\x18\xfa\xaa\x44\x95\xec\x52\x95\xac\xc2\x25\xc4\x27\x82\xe1\xef\xd8\x61\x60\x6b\x5e\x6a\x92\xb1\x39\x9f\x24\x68\xf4\xb7\x2c\x9d\x2e\xb0\xff\x36\x26\x2c\x99\xc9\x7f\x8d\x5d\x33\x64\x26\xc6\x36\x88\xdd\xb9\x87\x60\x2c\xb8\x70\x47\x4d\xfd\x2b\xef\x4c\x37\x9b\x36\x1b\x20\xca\x54\xe5\xbd\xdf\x9c\x5b\xe1\x69\x16\x84\xe9\x3c\xf2\x6e\x46\xec\x1c\xb6\xb9\x16\x11\xb9\xc9\x64\x92\x42\xc1\x0e\x0d\xb6\x3c\x5e\x7c\xe6\x7d\x64\xcf\x46\xf2\x49\x18\xf3\x27\x19\xb3\x99\x02\xea\x01\x47\xaf\x2b\x2b\xdf\x12\xdd\xca\xc5\xfa\xf4\xc7\x59\xa5\x3d\xbb\x7d\x66\x7e\x35\xd2\xb4\xee\xce\x29\x9a\x50\xf8\xed\xc0\xb4\x7d\x39\x65\xad\x92\xbc\x1e\xb5\x4f\x5e\xef\x7d\x05\xc9\xeb\xbd\xff\x33\xc9\xeb\xbd\xaf\x3b\x79\xbd\xf7\x75\x24\xaf\xaf\x31\x49\xf8\xff\xba\x3e\x79\x7a\x7c\xf8\xb6\x26\x79\x7d\x05\xdb\x75\x9f\x46\x09\x1a\x01\x89\x30\x8d\xdc\xd6\xe2\x78\xe9\x9d\x4b\x43\xba\x2b\x2e\x5d\x7e\xe1\xf6\x8b\xae\x88\x26\x8f\xc5\x3d\x11\x30\x5c\x88\x1a\x2f\x6a\xa0\xed\xb2\xec\xda\x61\xc0\x79\xbc\x58\x40\xfe\xa8\xb9\x17\x59\x6d\xac\x24\xf5\xd9\x91\x7c\x3f\x0f\x9d\x18\x00\x45\xf7\x29\xf5\xf3\x59\x21\xed\xfd\x46\x12\x35\x22\x2f\x08\x65\xe4\x8c\x31\xf6\x46\x63\x6e\xb3\xc0\x1b\x8e\x23\xa0\xe6\x1e\xe4\x31\xf6\x36\x29\x6c\x0a\xc6\xb1\x6b\xf2\x2a\x92\xcf\xdf\x0b\x2c\x01\x63\xda\xc8\x36\x7e\x98\x4d\xb4\xb4\xcd\xdc\x35\x57\xe9\x79\xb3\xfc\x8e\x2b\xdb\x30\xca\x9c\x6a\x08\xb9\x9b\x05\x1e\xd1\x99\x66\x20\x0e\xa5\x61\xef\x0d\x63\xec\xea\xbc\x90\x1a\xe5\xe0\xac\x99\x9d\x36\xb0\x03\x5f\xd1\xdc\xe4\x62\xdd\x56\x9a\x9e\xb6\x56\x9c\xfa\x31\xb7\x8a\x6b\x7d\xf8\xb3\xbd\x8a\x3f\x58\x13\x79\x74\x2d\x69\xab\xc0\x35\x2b\x56\x95\x6a\x7b\xc9\x46\xe5\x2d\x61\xbe\xd8\xee\x09\x0b\x09\x5d\x3a\xd6\x31\xf6\x77\x72\x05\xd1\x24\x4a\xae\xa9\x82\xcd\x4b\xd3\xa1\xad\x3c\xa1\x1e\x42\xf9\x68\xa5\x25\x60\xb0\x32\xfa\xb3\xf7\xfa\x23\xc6\x8c\x97\x2a\xc7\xb6\x7b\x0e\x60\xdc\x16\x93\xba\x58\xef\xb8\xb7\x0d\x17\xd8\x0a\x01\x4b\x52\x6b\xc8\xf5\x85\xe2\xde\x62\x8a\x6d\xf6\xdf\xbf\x81\x2c\x3a\x8a\x4a\x8c\x65\x1a\xc4\xad\x7c\xdf\x04\x9a\x0e\x2e\xea\xf4\x84\x7a\x3a\xe6\xfd\x74\x96\xac\x4f\x61\x70\x32\x9f\x43\x0f\x65\x01\x58\x64\x12\x68\xf8\x95\x7c\x57\xf0\x31\xfa\xb6\xd3\xd4\x6e\xc4\x05\xcc\x9d\x9d\x0e\xcc\xc7\x67\x65\x0a\x49\xc7\xf5\x82\x80\x57\x03\x01\xea\x74\x7a\x20\xce\x4c\x5d\xe7\x36\x0d\x8e\xe2\xec\x8a\xe3\x38\x4b\xf0\x3e\xb7\xa0\x42\xf4\x2e\x4c\x48\xb6\x58\x7d\x26\xc4\x08\x09\x99\x4e\x14\x91\x20\x3c\xf6\x29\x57\xec\xe6\x29\x69\xcb\x53\xd4\xa6\xc2\xbb\xba\x93\x3a\x3b\x3b\x5e\x51\x9f\x9a\x3a\xcb\x0e\xae\x1a\x25\x2b\x27\xe6\xab\x7e\xa0\x32\x24\x8e\xfa\x6c\xc1\x8d\x98\xbe\xc8\x81\xbc\xb3\x53\x35\x4f\x40\x25\x60\x4e\xce\x52\xc3\xcf\x5a\xa1\x24\x22\xcc\x74\xb7\xcb\x65\x8d\x5f\xda\x7d\x9b\x04\x41\xf3\x3e\x96\xbb\xe9\x51\xc2\xde\xaa\xef\x6a\x35\x21\x6b\x4b\xdc\x88\x96\xab\x8c\x63\xe1\xa4\xa3\x6d\x23\xf5\x34\x61\xdb\x98\x90\x30\x39\x84\xb6\x47\x23\xac\x19\xc5\x18\x85\x0b\x1d\x52\x81\xae\x49\xcd\xdf\x99\x6c\x5a\x8e\x12\xce\xaa\x85\x2c\x4a\xea\x47\xce\xdd\x5d\xde\x5c\x81\x1c\x67\xab\xa4\xf0\xce\x8e\xc1\x84\x81\x9c\xe5\xd2\x68\x96\xca\xcc\x47\x50\x84\x5a\xbb\xd2\x84\xf4\x58\x59\x59\xe8\x0c\xb9\x29\x57\x6e\x0e\x73\x4c\xaa\xa6\x3e\xfb\x8b\xca\x1b\x3b\xd2\x40\xba\xdd\x53\xac\xb1\xfa\x39\x4d\x85\xaa\x73\xb2\x6b\x46\x42\x62\xd2\xce\xe7\x2d\xc5\x97\x51\x50\x1b\x5c\x16\xe2\x32\x93\x86\x5a\xaa\xc8\xbb\x81\xa8\x36\x0e\x4f\x4a\xfd\xb8\xbd\xd6\x29\xfe\x0a\xb4\x4e\x71\xa6\x75\x42\xab\x6b\x9d\x50\x51\xeb\x84\xea\xb4\x4e\x28\xd3\x3a\xa1\x86\x5a\x27\xd4\x5e\xeb\x84\x1c\x7d\xa4\x5f\xad\xd6\x29\xfe\x3a\xb4\x4e\xa8\x5a\xeb\xb4\xf7\x0f\xff\x97\xe9\xdf\xff\x38\x30\x6a\x9d\x4a\x43\x4c\x0d\x12\x91\x5d\x02\xc8\x5b\x54\xce\xf4\x98\x72\x26\x2f\xab\x97\xa9\x67\x36\xad\x56\xc9\x8b\x11\x52\xb3\xd5\x15\xf0\x16\x39\xf9\x6d\xb6\x88\x70\x38\x8f\xa0\xa2\xea\x62\x63\x19\xdf\x47\xc0\x49\xe1\x2c\x94\xa2\x87\x57\x29\x7a\xa0\x95\xd1\x27\x14\x81\xa4\xd4\xc0\xe3\xdc\x32\x76\x49\xbd\x20\xd2\xce\xdf\x72\x97\x83\xe3\xb8\x93\x30\xc2\x10\x19\xc1\x1e\xd4\xf5\xde\x1e\x8d\xa0\xc1\x46\xb4\x24\x35\x24\xe8\xa9\xe7\x4f\xf5\x2a\x98\x26\x6b\x54\xfc\x4a\x53\xde\x39\xe4\xd4\x33\x5e\x49\x4e\xe1\x56\xf2\x1a\xdc\x4a\x39\x1f\xca\x87\x11\x23\x1e\xec\x47\x3f\x7f\x9a\xfd\x32\x2f\x71\x5d\x97\xfd\xb7\x41\xde\x62\x5f\xb7\x9d\xc9\xae\x11\x18\x5c\x46\x07\x52\x83\x7d\xdc\x08\x8b\xa7\xb8\x99\x6a\x19\x2b\x3f\xc0\x9b\x8b\xc4\x43\x01\x83\xf4\x60\x9a\x87\x01\xc8\xbc\x52\xcb\x5d\x47\x99\x37\x6a\xe6\xb3\x9a\xd3\x54\xd7\xd9\xdf\x37\x83\xac\xf7\x22\x41\xb0\x99\x81\x78\x03\x48\x78\x9a\xfe\x66\x2f\x73\x60\x55\xc0\xf0\x5a\xda\xac\xab\xa1\xac\x36\x7a\x84\x19\x37\xce\x17\x0c\x9a\x8b\x93\x00\x76\xc3\x00\xc6\x38\xc4\x37\x0f\x63\x1b\x4f\xfe\xf1\xdb\xcf\xbf\xbc\xed\x99\xcd\x3d\x85\x9d\x5a\x91\x9f\xe1\xe5\xd9\xeb\x93\xd3\xa7\x2d\x52\x34\xc4\x22\x05\xb8\xf5\xee\x9d\x08\xd7\x7b\xf7\xce\xb6\x6e\x29\x9d\x90\xa9\x22\x2f\x44\x80\xb6\xb4\xa0\xe8\x46\x21\x56\xfc\xdd\x3b\x6c\x59\xf3\x24\x0a\xfd\x1b\x6b\x44\xbe\xa2\xb8\x3d\xef\xde\x31\x92\x5b\xbe\x7b\x17\x93\xff\x97\x0d\xbe\x9f\x23\x38\x09\x3f\x5a\xb4\x80\x68\x90\xdf\x46\x86\x77\x85\xda\x09\xc3\x97\xaf\xbc\x29\x00\x41\xdb\x71\x95\x8c\x8a\x34\x59\xd9\x63\x73\x7f\xcb\x7a\xba\xce\x36\x33\x10\xf5\x17\xdd\x62\x38\x9c\x84\xbe\x67\x8e\x36\xfb\x12\x3b\xec\xaa\xf7\xeb\xf4\xc3\xcc\xff\xa9\xc6\xa0\x5a\x7b\x2b\xaa\xc6\xc4\xcb\x45\x18\xe4\xac\x90\x05\xdb\xa6\xbd\x2e\x0a\x59\x71\x2a\x37\xb8\xae\x80\xd6\x7e\x53\xc2\x11\x4e\x22\x2f\x9d\xbe\x60\xd1\x8b\x69\x83\x60\xd4\x24\x26\xfd\x8e\x20\x86\x1b\x09\x37\x25\xd3\x9b\x29\x22\xc8\x2f\x5a\xae\x71\xec\x27\x30\xa8\x9b\xed\xbf\x64\xee\x45\xa2\x0d\x87\xcc\xe4\x2d\x0e\x67\x30\x59\xe0\xe1\x23\xb8\x07\xd8\x44\xc1\xe0\x2d\x7f\xb6\xd7\xeb\xd1\xc1\x0b\x05\xd1\xdb\x17\xcf\x97\xdc\xe3\x19\x87\xfe\x87\x9b\x9d\x9d\x4e\xcc\xff\x1c\x6d\xf7\x1c\x20\xd5\x3b\x42\xd7\x48\x67\xd9\xf5\x23\xe8\x21\x31\x9f\x1d\x07\xd8\xa2\xdb\x99\xe4\xcf\xf4\x7f\x13\x0c\xd1\x63\x1e\x83\xea\x22\x98\x26\xd1\x15\xec\x64\xaf\x3a\x8e\xe3\xfa\x1e\xce\xb3\xc5\x44\x20\x7f\x8b\xbc\x98\x79\x31\x9e\x5c\x24\x08\x53\x15\xc6\x08\x32\xf1\x9e\xc9\xd2\x90\xb0\xd5\x78\x0a\xe3\x8e\xea\xc4\x0e\x45\x1f\xbd\x20\xe8\xc4\x84\x45\x1e\xaa\x3d\xe7\x4f\xdb\x1e\x03\x34\x9a\x39\x85\x11\xf4\xf1\xae\x3f\xf5\x10\x76\x3f\xd2\xdd\x75\xaf\x87\x41\xf6\x80\x6e\x7c\xa5\x0f\x36\xa5\xc4\xd0\x8b\x86\xb6\x48\x97\x0e\x68\x7f\xd2\xe1\x2d\x79\x00\x83\xe1\xed\x12\xf0\x57\xc3\xdb\x24\x1e\xde\x9e\xfd\x7a\x7a\xfa\xf4\xec\x6c\x28\x15\xaf\x36\x2b\x68\x2f\xc7\x4b\xe6\xf3\xdb\x7c\x06\x2a\xc3\xd4\x9b\xcc\xda\x97\xf1\x03\xf6\xe0\x93\x17\xe1\xe1\x75\xcf\x7c\x72\x9e\xb1\xf5\xb4\x7f\x5a\x78\x28\xa0\x58\xca\x3c\x42\x58\xe0\xec\xd9\xfc\x44\xb5\x81\x80\xac\xd2\xff\x29\x73\x60\x39\xe0\x0f\xba\x74\x0a\xb4\xd4\xf7\x63\xe9\x93\x41\xde\x54\x59\x3f\xed\x55\x11\xe7\xb3\xde\x4b\xd8\xe5\x9c\xa3\xae\xcc\x34\x97\x21\x23\xdb\xdf\xcf\xc8\x37\x0c\xb7\x44\x10\x4a\x93\x98\x54\xdd\xef\x45\x01\x3f\x56\x89\x97\xb9\xc4\x1c\x57\xa3\x47\x45\x38\x07\xd7\x05\x6c\x1e\x9f\x33\x1e\x83\xbd\x55\x30\x6d\x36\x0c\x0f\x56\xa8\xbf\x51\x22\x30\xbb\x14\xe5\x5e\xa6\x20\x66\x57\x72\x96\x91\xb8\x0a\x78\x8c\x23\x5a\xdb\xbf\x84\x71\xc0\xc0\x61\x74\xdc\x05\x45\x77\xd4\x0c\x48\x3f\x27\x8f\x66\x90\xd9\x6b\x20\xeb\x6b\x48\xfa\x2a\x60\xaa\x04\xb8\x21\x43\x78\xc2\xdc\x47\xb3\x54\x66\xec\x71\x2e\x59\xb0\xa0\x2d\x8d\x56\xe2\x04\x77\x25\xda\x98\xf8\x88\xe5\x46\xa3\x5b\x40\xb2\x44\x75\x44\xd3\xb1\x25\xe6\x4c\xa1\x1a\x85\x9f\x76\x6a\x70\x86\x4a\xd6\xbd\x0a\xac\xa6\xca\xea\x5f\x0e\x51\xdd\xde\x7f\x3d\x17\xb4\xa0\x44\x57\x67\x34\x23\x22\xaf\xe9\x99\xdc\xa5\x74\xd6\x03\xa6\xad\xb1\x12\xb4\x94\xee\xe3\x54\x83\x11\x64\x4a\x84\x76\x76\xf6\x4a\xe4\x88\x44\x75\xd3\x4a\x55\x39\xd7\x10\xc9\x7b\x53\xa4\xdb\x93\x9b\xcd\xfe\x3e\x89\x33\xa0\x00\x56\x8c\x3d\x4f\xa1\x87\xfc\xe9\xd3\x38\x2b\x38\x97\x19\xa1\x73\x5b\xb4\x62\x43\x1d\x01\x7b\xb6\xc0\xa6\x59\x1e\x17\x83\xd6\x59\xae\x4f\x4a\x69\xec\x14\xc8\xe6\xbb\x19\x0c\xbb\x69\xda\x2a\x0f\x8f\xc3\x46\x87\x47\xd5\xee\x36\xed\xe7\x43\xf3\x7e\x3e\x5c\x65\x3f\x1f\x6e\x66\x3f\x17\xaa\xb9\xcf\xfd\x5c\x80\x99\x2f\x01\x57\xaf\x76\xde\x5b\xed\x9e\x58\xf1\x90\x7f\xb4\xc6\x21\xcf\xd2\x08\x55\x8e\xad\x38\x27\x8f\x2a\xa2\xc7\x81\x1a\xe4\x73\xdc\x34\xac\xa8\x31\x33\x43\xf8\xe5\xc6\xdc\x8c\x41\x8b\x3c\x47\xc9\x25\x82\x69\x6a\x11\x46\x18\x43\x34\x0b\x63\xc6\xd5\x16\x7c\x4a\xdb\x66\x98\x05\x03\x40\x98\xb4\x83\xf5\x54\x28\x05\x5e\x7d\xdd\xb8\x9a\xdb\xcf\x8a\xce\x44\xb9\xe1\x51\x86\xa1\x55\xe5\x23\x23\x43\x5b\xe9\x97\xf4\xb8\xe4\xee\x22\x82\xf1\xed\xd8\x5c\xf4\xb1\xf3\x62\x5f\x7d\x9c\x09\xd3\x7a\x75\x27\x09\x9a\x35\x16\x7a\x48\xe1\xae\xfc\xcd\x3f\xfb\x32\x02\xcf\x8f\x4f\xfe\xf1\xe6\xf8\xf9\xeb\x12\x55\x11\x4d\x28\x9b\x65\x95\x05\x12\xba\xba\x71\x38\xe4\x81\xc6\x46\x1f\x02\x7b\x12\xc2\x28\x48\x09\x7b\xa1\xf8\xbe\x3f\x32\x31\xdc\x95\xb1\x7f\xb2\x23\xc5\x4d\xda\x1c\x96\xb5\x99\xfb\xf5\x6b\xba\xc2\xca\x1d\xc6\x6f\x21\x72\x44\x7a\x51\x94\x5c\x3f\xe3\x9a\x48\xba\x59\xad\x04\x59\x42\x35\xf9\xd8\xce\x50\x6c\x73\x91\x05\xa6\xe3\x4f\xbd\xe2\x4c\x95\x37\xc2\x22\x2e\xa4\x5d\x90\xe3\xe0\x35\x85\x90\x61\x6a\xf2\xe5\x63\x6a\x66\xf2\x90\xb2\xde\x7e\x12\x4f\xc2\xcb\x05\x73\x2a\xa0\xea\x6b\xd7\x7a\x3b\x85\x37\x56\xea\x5d\x41\xeb\x26\x59\x58\x69\x32\x83\x16\x0e\x67\x90\xc2\x75\xc2\xc9\x24\x41\x98\xbc\x78\xf7\x37\x04\xad\x45\x1a\xc6\x97\x02\x90\x73\x92\x20\xf2\x67\x0c\x7d\x6c\x4d\xa0\x87\x17\x08\xa6\x6e\xe9\xd8\xcb\x63\x36\x15\x8f\x7f\x6a\xd3\xbe\x44\xc9\x62\x6e\x97\x23\x07\x09\x2e\xd4\x06\x36\x64\x50\x81\x12\x10\xd5\xb6\xa6\x5e\xda\x85\x1c\x0a\xb0\xc8\xbb\x98\x64\x3d\x89\x8b\xde\x58\xde\xdb\x08\x1b\xdb\x17\xd2\xb8\x8c\xe3\x28\xc7\xf2\xd4\x6a\x2a\x46\x84\x30\xe1\x3f\xcf\xd9\xa9\x55\xdb\xe7\x62\x94\xe3\x9c\x40\xc8\xb1\x30\x45\x5f\x94\x7d\x57\x0c\x0d\xd1\x11\x74\xf8\x12\xa8\x3b\xd5\x58\x4b\x4e\xfc\xac\x71\x79\x60\xa3\xa0\x85\x52\x88\xbb\x29\xd4\x95\x00\x74\x30\x59\xf5\xb2\xf2\x73\x5b\x6a\x3e\x84\x87\x19\x7f\x30\x6e\x1e\x8d\xd2\x94\x6f\x29\x26\xd8\x59\x41\x0a\xd3\xf7\xc3\x06\x17\xb5\x27\x17\xd5\xb6\xf5\xa1\x4f\xc3\x20\x80\x71\x71\xec\x65\xf6\x9b\x4a\x9e\xac\x18\xab\x92\x8f\x4a\x27\xad\x76\x31\xfc\x88\x0b\xc0\x5f\x2a\xdc\x71\x6e\x27\x6b\x79\xcc\xe3\x04\xe7\xcb\x85\xe9\x6b\x14\xa6\x38\x8c\xa1\x01\xd6\xcb\xb0\xfb\xcd\xb2\x4b\x85\x6c\x59\x8e\xd2\x5d\xba\x54\x72\x0f\x29\xfd\x94\x42\x8e\xb6\x98\x22\x02\x8b\xdf\x73\xf6\x39\x29\x36\xce\x92\xfe\x78\x0b\x9c\xd0\x74\x1c\xb6\xfa\xb7\xdc\x3c\xbc\xe9\x95\xdc\x85\xe8\x42\x94\x92\xbd\x5d\x00\x7d\x36\x9d\x67\x2f\xbc\x8f\xe1\x6c\x31\xb3\xfa\x83\x23\x8b\xb0\x68\x9e\x4f\x88\xc3\xb5\x5e\x78\x37\x56\x12\x47\x37\x56\x18\xfb\xd1\x22\x80\x56\x04\x31\x79\x63\x75\x16\xf3\x39\x44\xbe\x97\xd2\xdb\x64\x37\x41\x56\x44\x64\x71\xf2\xc0\x11\x4f\xe2\x05\x61\x60\x48\x2d\x8b\x14\x5b\x17\xd0\x5a\xc4\xe1\x1f\x0b\xe8\x96\x86\x52\x14\x14\x85\xf7\x43\x4e\x2d\x70\xe9\x53\x8c\x92\xf8\xb2\x70\xbc\x97\xf5\x87\x52\x4c\x18\xf0\x94\x42\x8d\xc1\xe7\xab\x8e\x9c\xf2\x5d\xa9\x08\x2d\xd9\x86\x6c\xbb\x29\xde\x2c\x22\x98\x8a\x02\xeb\xe4\x65\x02\xf6\xee\xe5\x22\x0c\x60\xba\xeb\xf9\x91\x3b\xc5\xb3\xe8\x2f\x68\x11\xc1\x6e\x3a\x87\xbe\x34\x0d\xe6\x93\x60\xad\x9e\xbd\xa9\xf3\xf3\xe9\x73\xeb\x47\x0a\xba\xe4\xd8\x05\x37\xb9\x02\x21\x55\xdf\x6e\x36\x37\x11\x4a\xd3\x74\xf3\x0c\x06\xb6\x00\xa3\x0e\x60\x17\x06\x21\xa6\x6a\x12\x26\x99\x22\xe8\x05\x64\xef\xa8\x5a\xfc\xf4\x26\xc6\xde\x47\xa6\x99\x62\x7b\x7e\x0c\xce\x29\x1c\x5d\xf5\x7d\x40\x97\x69\x9c\xcd\xf5\xd4\x8f\xea\x4f\x8b\x56\x75\x96\x07\x69\xc9\x0c\x58\x0a\x58\x9f\x61\xc2\x08\x93\xcf\x14\x30\xf2\x14\x14\x4d\x4a\xbd\x8c\xf1\x20\x1d\x67\x2e\x51\x2d\xc4\x69\xb3\xfa\xb3\xf1\x8a\x6b\x9e\x08\x7f\x2e\x77\xcd\x72\xe7\x67\x4b\x11\xe8\xee\x77\x49\x9b\x4d\x7d\x36\xcd\xe2\x40\xcc\x99\xcd\xe8\x02\x7c\x80\x37\x4c\xfa\x50\xa6\xb3\x5c\xf0\xa0\xd3\x45\xfb\xa8\xb1\x1d\xed\x16\x4e\xab\x59\xd6\x78\x3f\x0b\x59\x21\x8f\x96\x0c\xed\x5e\xee\x41\x56\xf9\x3a\x17\xe1\x0a\x2c\xeb\xea\x27\x7f\xcb\x73\x40\x77\x95\xa4\x9e\xbc\x1c\xaa\x5d\x35\xfd\xaa\x3e\xa4\x84\xde\x76\xff\x73\xf7\x3f\x77\x49\x61\x1f\xc6\x74\x04\xcd\x6d\x0a\xea\x57\xaa\xcc\xa5\x8a\x45\x34\xa7\x56\x31\xd6\xb5\x19\xd7\x90\xd9\x6d\x4b\x22\xee\x4d\x5c\xc3\x13\xd9\xab\xb2\x58\xd8\x32\xe3\x8c\xb0\xb3\x48\x1b\xcc\x8f\x21\x8c\x02\xb3\x79\xe6\x75\xe4\xf9\x70\x9a\x44\x54\xc7\xa3\xd8\x72\x44\xf8\xef\xcc\x9b\x77\x2f\x68\x82\x94\x97\x9c\x0b\x2f\x9d\x31\x20\x8b\xe8\x86\x31\x4e\x12\xea\x78\xc4\xae\x0d\x7c\xf5\xf3\xb7\x37\x73\x68\x79\x56\x56\xb9\xa5\x88\x71\x55\x7b\x59\x9f\xab\xe6\x81\xd0\x99\x75\x63\x2f\x33\x1c\xd5\x62\xbb\xee\x19\xc1\x5d\xd7\x10\x5f\xcb\xd4\xe4\x8c\xe3\x4c\x2e\x2f\xa3\x2a\xb4\x06\x13\xed\xfc\x46\xa3\x62\xb4\x55\x2a\xc5\x6a\xa8\x53\xc4\xd4\xca\xd8\x05\xb1\x2c\x4c\xcf\xfc\x64\x0e\x83\x71\x99\x1e\x44\xb3\x54\x65\x74\xc2\x3f\x53\x49\x42\x82\x69\xb4\x54\x84\x54\x0a\x73\xb4\xd2\x8b\xe4\x63\xad\x40\x67\x9a\xda\x93\x28\x2a\x9b\xcc\xea\x5c\x25\x85\x0b\x23\x3f\xdc\x2a\x2a\x79\xd0\x07\x61\x33\xa3\x8f\x98\xf5\x6e\xa6\xa1\xcc\x54\x97\xf2\x59\xb5\xb6\xd1\xd4\xc1\x3a\x7e\xa6\xfe\x78\xce\xd3\x43\x09\xee\x43\x8b\x1d\x90\x9d\x47\xa9\xb2\x09\x14\x6d\xe1\x40\xb5\xe4\x56\xee\x90\x5c\x02\x2b\xe5\x43\x50\x72\xbc\xa6\x0f\x60\x03\xd5\x69\x6e\x07\x2b\x24\xd1\x2b\x9e\xac\x83\x4c\xae\x37\xf9\x20\x95\xcc\x4a\xb5\x4c\x23\x4e\xa4\x23\x60\x4f\xc2\x38\xc8\x5d\x7e\xd2\x30\x5a\xb5\x5f\x5a\xc8\x39\x0f\x92\x38\xfb\x3c\xaf\x3f\xed\x8b\x20\x4b\x85\x92\x1e\x06\x09\xf5\xb5\x2b\xbb\x3d\xf1\x94\xb1\xc2\xf9\x1c\x52\xf9\x9a\xd8\xff\xb5\x62\xad\xdb\xb1\xcb\x4d\x24\xe5\x75\xb4\x55\x55\x3c\x27\x4c\x7d\x14\x52\xf6\xd1\xea\xbc\xa2\xff\x7a\x91\x53\xaa\x2c\x23\xf5\x7b\x08\x7a\x0d\xe9\x2e\xab\xdc\x44\x77\xea\xae\xcd\x4a\x66\x05\x57\x50\xe0\x16\xbd\x09\x9a\xaa\x09\xb5\xe5\x5e\x2b\xea\xa9\x60\x02\x6f\xec\x4b\x50\xc0\xd8\xbf\x25\x8b\x3a\xb4\x59\x8d\x36\x88\x69\xa3\xe2\x97\x66\x0f\x1d\x6e\xf7\x74\x0c\x7c\xa5\x17\xf6\x18\x08\xd6\x63\xb8\xdd\x5f\xc1\xc7\x20\x8f\x94\x21\x19\x99\x02\xba\x3b\x59\x4e\x57\x39\x6e\x24\x42\xfc\x77\x3d\xee\xaa\x20\xcd\x87\xa3\xf3\x5b\x36\x1e\x6e\x50\x06\xe2\xcd\xd0\xb6\x97\x80\xbf\xe3\x79\x3c\x2d\x69\xf6\x55\x4a\x15\xb4\x65\xf2\xab\x97\x49\x60\xfe\x44\x97\x4b\x97\xe3\x65\x25\x92\x29\x46\x37\xf5\x93\xb3\x64\xde\xf8\x48\xc3\xa5\x10\x13\x04\xe2\x11\x12\xf8\x12\xa4\x6b\x5b\xe9\x75\x48\x4a\xc7\xce\xad\xef\xa5\x90\x2f\x92\xc2\x3e\x0f\xf1\xe3\x02\xd8\xce\x1c\xc1\xab\x30\x59\xa4\xea\xcd\x96\x9b\x78\xea\xc6\xa1\xdf\x7d\x4e\x7e\xd9\x0c\x65\x18\xb6\xb5\x33\xec\xd4\x97\xa4\xcf\x0d\x3d\x29\x12\x87\xb1\xbb\xac\xa1\x0a\x42\xda\xc6\xce\xd6\x05\x82\xde\x87\x2d\xbe\x05\x86\x1c\xf7\x85\xa5\xbe\x42\x1c\xaa\xa7\x10\xd3\x4b\x9f\x12\x22\xa7\x70\x13\x2b\x7a\xab\x30\x21\x39\x31\x60\x4e\x94\x78\xac\xf8\xd3\x30\x0a\xf2\x9f\x15\x3c\x56\x54\x84\x80\xb6\x08\x15\xe8\x2b\x40\xa8\x40\xff\x67\x70\x51\xd1\xd7\x8d\x50\x81\xbe\x0e\x84\x0a\xaf\xda\x37\xeb\xf8\x5f\x7f\xff\xe6\x8f\x1f\xf7\x4a\xe2\xdd\x85\x81\x92\xed\x60\x1b\x7e\x84\x3e\xcd\x95\x65\xfb\x64\x96\x23\x0a\x28\x4e\xa3\xaf\xd8\x9e\x9e\x84\x88\x14\x67\x8a\x33\x5b\x00\xdc\x35\x72\xe3\x3a\x20\x7c\x87\xba\xff\x09\x4f\xd2\xdf\x03\xfd\xde\x58\xd8\x2c\xe6\x09\x11\xd2\xa9\xa7\xd8\xf7\xd2\x7c\xf3\x3d\x67\x84\xbf\x9f\xeb\x1a\x38\xee\xb1\xcc\x99\x27\xfa\x31\xcf\x9f\x16\xf8\xe2\x2f\x61\xec\x01\xf2\xf6\xb7\xcf\xa8\x36\x8f\x7a\x15\x89\x67\x0d\x1d\xa0\x6d\x16\xa8\x68\xc0\xbf\xa8\x8a\x52\x67\x9c\x67\xa5\x96\xed\x84\x5c\x90\x96\x17\x5b\xf0\x23\x35\x12\x5f\xf2\x9e\x35\x75\x44\xad\xe9\x81\x8f\xa0\xd9\xc5\xad\x8d\xa3\x5c\x65\x84\xbf\xa2\x24\x54\xe7\xa7\x9d\x51\xa5\x19\xa7\xae\x83\xb5\x32\xd0\xd2\x18\x5e\x77\xf9\x95\x54\xae\x04\xac\x64\xe7\x4f\xe9\x14\xd1\x23\x69\x2e\xfd\xf4\xaa\x35\x57\xb6\x1a\x24\xc1\x57\x41\xc5\x3d\xcc\x94\xcc\x14\x15\x4f\xcf\x03\x5c\xc2\x97\xd3\x82\x52\x23\x61\x18\x56\x93\xb4\x5e\x35\xd4\xd0\x1c\x89\x55\xf8\x35\x0e\x0a\xbe\x2b\xf0\x5a\x71\x67\x34\x09\x94\x0d\xf0\x2c\x1b\x74\xb5\x29\x2c\xaa\x54\xf1\x67\xac\xbb\xa8\x8b\xfd\x50\x4f\x13\x76\xba\x50\x21\x80\x73\xc9\xcf\x54\x53\x22\x39\x0a\x38\xf3\xaf\x9f\x20\xb9\x93\xc5\x5c\x81\x31\x0d\xda\x66\x26\x43\x40\x9f\x36\x5f\x38\xe1\xd2\xaf\x46\xc9\xa9\x3e\xfd\x9a\xf6\xac\x68\x86\x08\xd3\x33\xef\x8a\x3b\xb0\x97\x3b\xb3\xe4\x5f\xf1\x6b\x5c\xd5\xac\x29\xd1\x2b\x52\xbf\x31\x90\xfa\x8d\x74\x71\x31\x0b\xa9\xf0\xbd\x57\x92\xe7\xd2\xbb\xd2\xc5\x5e\xad\xd1\xcc\x86\xf9\xc7\x02\x2e\xaa\x93\x3c\xea\x01\x66\x95\x98\xde\x10\x17\x6d\xd3\xa5\x41\x84\xe6\x49\x6b\x19\xd4\xb7\x6e\x08\x40\xe3\x8c\xf4\x4d\x0e\x42\x2f\x0e\x2c\x2a\xb6\x99\x37\x78\x2d\xf2\x6f\x73\xd2\x2b\x21\xb8\x1a\xa2\x11\x2b\x54\x42\x33\x9f\x97\x1e\x4e\x19\xa7\xd4\xf0\x28\x3c\x32\xe4\xb1\x6c\xe9\x98\x20\x56\x74\x7d\xd6\x20\x11\xaa\xa3\xba\xfc\x3b\xf9\xa8\xaa\x82\x05\xb0\x2e\x14\xa9\x41\x67\xe8\x24\x37\x40\x22\xc2\xde\xc5\x22\xf2\x50\x57\xa4\x1e\xcd\x2e\xda\x0c\x29\x49\x61\x0e\x9b\xdc\xb5\xb4\x54\x9a\x20\xcc\xb5\xd8\x6c\x1b\xbc\x0d\x67\x70\x18\xc0\x54\x44\x2e\x0c\x3d\xf2\xa7\x39\x3e\xb1\x1e\x86\x68\x43\xf7\xb2\xd0\x28\x4e\x9b\x7a\x94\x36\xb8\x80\x1a\x74\x0f\x25\xd7\xcd\xfb\x16\x94\x86\x04\xb2\x3b\x7a\x97\x89\xc4\xb6\x9a\x3f\xa8\xdc\x8d\x3e\x54\x0a\xda\xcf\x9e\xb4\xf3\x15\x31\x7b\x11\x1e\xb1\x3f\xbb\x38\xb1\xa9\x71\xdd\xf5\xfc\x28\x75\x45\x0c\x83\x0b\x83\x10\x67\x59\x56\x95\x26\xc7\x79\xc5\x7a\x85\x6d\xa6\xad\x4b\x51\x49\x97\x63\xd5\xa0\xa2\x98\xc2\xd6\xe9\x86\x7e\x25\xdc\x1f\xd1\x54\x24\x07\xae\x76\x90\x61\x83\x6a\xad\xec\xd7\x3a\xd6\xc4\x0c\x0c\xec\xef\x65\x98\x5e\x66\x46\x64\x9e\x4e\xf6\xae\x3e\xed\x59\x58\xe8\xae\xad\x7a\x65\x00\x9b\xeb\xc3\x76\xcd\x24\xd3\xdc\xaa\xcc\xe0\x0f\x9e\xe5\x72\x49\x1b\x8d\xca\x44\x4e\xfa\xc4\xa2\x79\x1a\xdc\xff\x0d\xa7\x78\x45\x37\xc4\x8c\x85\xa9\x0b\x53\x11\xe5\x70\xb9\x0b\xcf\xb0\x8c\xb3\xc8\xbe\x0e\x1a\x05\xc3\x64\x7b\x43\xf7\xa7\x31\xb9\xae\xd4\xf3\x34\x1b\xd8\xd6\x9b\x98\x9d\x74\xa3\xd3\x73\x04\xec\xdf\x93\x90\x10\xa5\x0d\x2c\xfd\x80\xd6\xdd\x22\x0a\xf9\xd1\x55\x42\x05\xc5\x33\x3c\x2e\xcf\x85\xb3\x99\x09\xcf\xf3\xb4\xeb\x58\xf9\x72\x75\xfc\xe9\x97\x6e\x38\x19\x56\x77\x49\xb7\x9a\x3a\xcb\x4a\x8f\x65\xe9\x13\xcb\x30\x62\xef\xd7\x03\x5c\xbf\x55\xef\xd5\xf9\x7b\x93\x07\xee\xe7\x98\xd3\x4a\x37\xeb\x7b\x9a\xb7\xb5\x06\xa9\xe2\x12\x65\xa3\x2d\x78\x59\x2a\x87\x97\xe6\x06\xcd\x86\xa4\xbb\x23\x8f\x6b\x2e\xd8\x86\x47\xd3\x26\xf2\x07\x71\xe5\x3b\x3d\x21\xf2\x2a\x46\xa1\xa2\x27\x03\x3f\x41\x3c\xc0\x76\xc1\xff\xb8\xf6\x62\x6a\x4d\x61\xf8\x6a\x14\x2e\x4d\x80\x42\x4e\x50\x32\x63\x0f\x70\xf2\x01\xc6\x8f\x9b\x28\x97\xac\x36\xea\xaa\xa6\x15\x56\x2a\x0e\x74\xfd\x2f\x8c\x20\x53\x7f\x28\xea\x80\x0c\x38\xa2\x4c\x1f\x20\x10\x4f\x6c\x36\x0b\x45\x0f\x25\x29\xcf\x29\xa7\x3e\x2b\xda\x0a\x7f\xe3\x51\x09\xfe\x46\x33\x76\x99\xeb\xb6\x5b\xce\x59\x79\xac\x76\xbe\x30\xe3\x89\x0e\x4a\x5d\x78\xcb\xa8\xf6\x4b\xac\xd7\x9e\xc8\x2a\x2b\xb4\x2c\x8c\xfe\x39\x19\x57\xad\x4a\xf3\xce\xf9\x52\x73\xd3\xb2\x73\xfb\xf9\xce\x55\xa8\x80\xca\x48\x45\xc0\x6f\x98\xf7\xfc\xca\x19\xa1\x6a\x3f\x35\x82\x81\x28\x65\x56\x81\x13\xc9\xbf\x5c\xd3\x07\x48\xf7\x10\x90\x7e\x40\x69\xa5\x1f\x90\x67\xf0\x03\x42\x70\x9e\x94\xe0\x6f\x92\x57\x29\xb9\x52\x6e\x84\xf8\x96\xdd\x7e\x4e\xce\x65\x48\x77\x27\x6a\xe4\x40\x24\x8d\x9c\xe3\x82\xe3\x50\x06\xb7\x59\x9f\x32\x66\x4b\xf1\x8e\x61\xb2\x2c\x4d\xbf\xc2\x2a\x41\x23\xa6\x1c\xe7\xd5\x44\x61\x8a\x09\x8b\x98\x52\xec\x49\x0c\x6e\xc9\xcb\xac\x61\x2c\x7d\x29\xa0\x48\x97\x73\x8e\xc6\xee\x45\x18\x07\x1d\xe8\xf0\xe6\x99\x59\x19\xc4\x1d\xec\x12\x11\xc0\x71\x96\x4b\x67\xb9\x04\x54\x03\xaa\x3b\xf9\xac\xe1\xfd\xb4\xdd\x77\x48\x95\x13\x04\xd3\xe9\x69\x12\xc0\xa7\xf4\x6a\x1f\xea\xfe\x14\x59\x36\x62\xb1\x2c\x1d\xdb\xd5\x38\x01\xec\xa8\x29\xa8\x96\x20\x87\x0b\x03\x75\xd7\x22\x0c\x67\x20\x1e\x41\x97\x96\x22\x93\xc8\x86\x3a\x1a\x8d\x62\xf6\x2c\xe5\x68\x9f\x31\x4f\xfb\x20\x1e\x9f\xf7\xc6\xc0\x1b\x89\x50\xa2\x74\x84\x5c\xa6\xd6\x10\x4e\x49\xdb\x3d\xe6\x95\x44\xeb\x4a\x5d\x4a\xb2\xaf\x26\x1d\xfb\x47\x2f\x8c\x60\x40\x6e\xde\xb9\x87\x52\x68\x9d\x9c\x3e\xb7\x10\xad\xc4\x19\x9a\xca\x0b\x07\x08\x4e\xa1\xc2\x10\xe9\x0c\x8d\x8d\x33\xa7\x9f\xaa\x7a\x98\x85\x6e\x68\x9d\xf0\xbf\x18\x32\x07\x65\xd9\x68\x9d\xcc\x53\x37\x1d\xa5\x6e\xba\xb8\x48\x31\x6a\xf4\x65\xd6\xcc\xd0\x76\xbe\xe9\x3b\x4b\x6f\x67\x87\xa6\xf1\x61\x5e\x1c\x1e\x48\xd5\xb4\x44\x85\x9c\x68\x74\x29\x0a\x2b\xdf\x81\x40\xa6\x13\xd2\xb3\x52\xe7\x5d\x93\xd2\x06\xae\x49\x55\xf9\x06\xf4\x84\xcd\x7f\x7a\x1e\xfd\xe9\x79\xf4\xa7\xe7\xd1\xfd\x79\x1e\xfd\xde\xbf\x99\xfc\xf0\xfb\xaf\x69\x49\xa6\x0d\xa1\x82\xfd\x00\x6f\xe6\x08\x52\xae\x4c\xfc\x79\xca\x80\xe5\x68\x32\x5e\x1b\x98\x92\x72\xb0\x7c\x19\x76\xba\xb8\x20\xcc\x1c\x73\x8f\x68\xe4\x86\x24\xbd\xc2\xfb\xfb\xa0\xdf\xcb\x59\xa8\xaa\x80\x65\xf3\xc9\x3c\xfa\x7b\xa0\xdf\x37\xfa\x8c\x1f\x88\x2c\xc2\x6a\x4e\x8f\x92\xdc\x1d\xf9\xc7\xa5\xcc\x7f\xa6\xb0\x51\x50\x35\xf5\x7c\xa4\x32\xb5\x05\xa0\x7f\x9e\x41\xc2\xa3\x31\x1e\xe4\xbc\x28\xdf\x6b\x27\x25\x4d\xf4\xcf\xac\xeb\xa4\x26\x31\x46\x43\x23\x5e\x10\x9c\x2d\x2e\xf8\xf4\x33\x66\x3c\xfb\x9d\x79\x88\x51\x68\xc0\xb7\xdc\x6b\x28\xbf\xb0\x55\x76\x39\xa5\xfe\x06\x86\x59\xb5\x79\x73\x50\xb4\x36\xce\xae\xd0\xdc\x0b\x1c\x7a\xbb\x6b\xab\xb0\x98\x3d\x70\x9e\x11\x13\x43\x37\xd4\xc5\x11\xc6\xf5\x37\x98\xcb\x54\x99\x7c\xa1\x49\x28\x8f\xaa\x29\x5d\xd2\xcc\x9f\xa9\xb4\x7b\xe5\x15\x1b\xac\x35\xec\xeb\xae\x90\x8c\x38\x6d\x66\xb1\x2b\x5a\x84\x5c\xde\x4e\x5f\xa0\x55\x89\xc4\x94\x65\xa0\x11\xf2\xb4\xf2\x44\x5b\x97\xcc\x2a\x9f\xc9\xdf\x0d\xa3\x14\x9a\x85\xab\xda\xab\xe2\x57\x8b\x89\x25\x8f\x8e\x0b\xe8\xd5\x46\xc1\x52\x51\x34\xd3\x0d\x3f\xf5\xd2\x79\x32\x5f\xcc\xc5\xf9\x24\x03\x32\x3e\xc0\x9b\x20\xb9\x8e\x65\x48\xdb\xd8\x80\xa1\x59\xb6\xbc\x6a\x06\x05\x36\xdb\x54\xcd\x1d\xc1\xe0\x87\x9b\xec\x3d\x6d\xdf\x4f\x62\x8c\x12\x6a\x12\xe7\x45\xe5\x93\x3c\x3e\x55\x35\xd6\xa6\x5d\x9f\xb3\xba\x61\xce\x1f\x45\xf9\x40\xce\x5b\x36\xe3\x07\xba\x56\xc6\x94\x15\xb9\xb1\xdb\x54\xbd\xfc\x7b\x9c\x17\x6e\x95\x11\xd2\xbd\x3a\xf7\x62\x18\x51\x6f\xd4\x81\x3e\xd1\xb9\xd9\x1b\xf0\x69\x16\xf3\x4f\x7d\x05\xca\xd6\x44\x14\xce\x72\x39\x19\x36\x0b\xf7\x7c\xa5\x92\x68\xc8\x96\x83\xde\x0a\xd9\x83\x4d\xb8\xfc\x29\xc3\x68\xea\x3b\x56\x8c\x92\x0b\x83\x3c\x14\x44\xd3\x93\xb5\x69\x3c\x9b\x6d\x88\x4e\x4c\xd9\xd9\xde\x12\x20\x62\x23\xbd\x37\x22\x92\xe7\xe2\xf9\x98\x4f\x8c\x92\x54\xab\xe9\x48\x9b\x21\x6f\xd7\x28\x5a\xf2\x3e\x68\x53\x2f\xfd\x59\x78\x91\x34\x9d\xad\x8d\x79\x8b\xae\xb2\xc9\xd9\x37\x75\xbe\xc7\xa5\x7d\xa8\x37\x28\x34\xd4\xa2\xb5\x35\x5b\x98\x56\x6a\x23\xe9\xca\x1a\x9c\xbd\x7a\x42\x7c\xce\x62\x96\x65\xc3\x5f\x85\x0b\xa2\xdb\x0e\xc6\x81\xc6\xf9\x54\xdd\x4f\x2d\x61\x24\xee\xe3\x1a\x68\xe0\xac\x52\xe5\x9e\xd6\x0e\x36\xfa\xc0\x04\xd9\x5d\x0a\xb1\x5c\xf0\x82\x5b\x2b\xb5\x51\x45\x56\xb8\x3a\xed\xe8\x46\x33\xeb\x8b\x3b\x6c\xb8\xdd\x07\x3a\x5b\x38\xdc\xee\x95\x20\x37\x8b\x4b\x8d\xd4\xbf\xe1\xfc\x46\xec\xad\xb8\x2c\x46\x64\x8f\x5e\x87\x51\xf4\x06\xc6\x01\xd4\xa0\xa2\x0b\xa9\xed\xe5\x91\xc9\xaa\x78\x1f\xa6\x6f\xe0\x65\x98\x62\x88\x60\xd0\x11\x47\x8f\x96\x6b\x3b\x13\x50\x0c\xd9\xa7\xb3\x9a\xe5\xcd\xa5\xf7\x4d\xa4\x52\x82\x0e\xd5\x81\x2a\xf2\x4b\x99\xe6\x52\x7e\x29\x54\x6f\xd0\xf9\xb6\xdb\xdf\x1e\x8d\xf0\xce\x4e\x47\x2f\x91\xce\xa9\xc6\x06\x83\x7e\x51\xfd\x5a\xd2\x1f\xd2\x0d\x43\x0c\xa7\xd4\xc7\x71\xd1\xe0\xee\x2e\x36\xe4\x2f\xb5\xcf\xc3\xe0\x7f\x47\xfa\xd1\x52\xc8\x15\x05\xec\xb1\xed\x94\xe5\x25\x85\x59\x1e\xed\xfe\x52\xc9\x5a\xcf\xa2\x15\xa1\xb3\x04\xe4\x28\x2a\x50\x0a\x79\xc8\xd2\xe6\x94\x44\x97\xae\xa7\x37\x94\xd2\x70\x6b\x0d\xe2\x67\x41\xdb\xfe\x69\xb1\xff\xc7\xcf\x4f\x7a\x25\x11\x5d\x64\x5f\xa3\xd8\x8b\x1a\x83\x6b\x0f\x34\x96\x82\xe7\x97\x51\x35\x20\x1c\x7a\x24\x4e\x62\xc8\x15\x1f\x7b\x35\xde\xf0\x53\x2f\x3d\x55\xec\xd5\x35\xfc\x88\xd9\x7b\xa7\xcf\xc3\x7b\x4c\xf8\x63\x39\x75\x83\x94\x3a\xf9\x85\xa6\x33\x9e\xbc\xfb\xe4\x1b\xa1\xe1\x60\x6e\x33\x17\x22\xea\xad\xdb\xd7\x44\x35\xae\x8d\xd2\x9a\xca\x29\x30\x8a\x78\xaf\x0d\x44\xa6\xd2\x50\x30\xba\x08\xb5\xbe\xdc\xf9\xc0\xb3\x72\x7c\x6b\x53\xbe\xd9\x96\x8c\x85\xea\x6e\x50\xc9\x60\x28\x5a\x10\xcd\x45\xc1\x8b\x20\xc2\x4c\x9b\x24\x85\x5c\x5b\x8b\x80\xaa\x77\xd0\xe7\xe9\x23\x74\x4e\xa3\x26\xdd\x84\x20\x0d\x55\xff\x64\x48\x81\xb2\x32\x4d\x55\x71\x3c\x6d\xd7\xb1\xa5\x2f\x11\xdd\x59\x08\x4e\x2a\x01\x5a\x14\x55\x12\xb3\x03\x74\x39\x5a\x6e\x9a\xaf\x03\xd8\xc3\xdd\xdd\x16\x18\x1a\x5e\x19\xa9\x35\xd8\x55\x8d\x32\x85\xd4\x2c\x9d\xe6\x6f\x37\x00\x72\x18\xf4\xb9\xcc\x3d\xae\xe8\xac\x84\x86\x29\x73\x8c\x53\x6b\xa2\xce\x75\xc6\xe2\x66\x5f\xbb\xa2\x7f\xfa\xba\xdb\x3e\x17\x63\xa1\x9e\xc4\x0d\xd8\xda\x3a\x52\xea\x97\xe3\xac\x14\x7a\x62\xd6\x69\x99\x96\x58\xa8\x9a\x32\x80\xbc\xbc\x96\x50\xbe\xa1\x4a\x35\xb4\x28\xe0\xda\xac\x48\x21\x6a\xda\x9f\x9e\x76\x30\x08\xd8\xe5\x64\xce\xa5\x47\x83\x1b\x6a\x33\xed\xd7\x66\x56\xf3\x7e\xd6\xb3\xcc\xdb\x6c\x93\x08\x2c\xe5\x3c\xd0\xba\x89\x5d\x56\x13\x33\x3e\x6b\x1a\xd4\x86\x95\x93\x89\x71\x33\x21\x40\x49\x8a\x4a\xab\x7f\x02\x53\x8c\x92\x9b\x35\xeb\xd7\x24\x03\xad\x09\xb3\x5c\xd3\xde\x1d\x23\xcf\xa2\x19\xe5\x1f\x8d\x0b\x70\x56\x49\x6b\x53\x6a\x17\x79\x98\xac\xf5\x53\xf8\x6a\xb0\x78\xfe\xc7\xa2\x6d\xce\xe3\x42\x02\x63\x3d\x4d\xa3\x72\x9a\xaa\x86\x21\xed\xf4\x59\x93\x81\xec\xd7\xe9\x0a\x37\x94\x9c\xbe\x76\x49\xef\xe5\xa4\x58\x95\xf0\xca\xf3\xc8\xfe\xe9\x08\xf2\xa7\x23\xc8\x9f\x8e\x20\x9f\xc7\x11\xe4\x5f\xbf\xfc\xcf\x04\x3d\x7d\x5e\x92\x0f\x59\xf3\xee\xe0\x32\xc0\xab\x39\x66\x48\xa7\xf4\x4f\x86\x35\xd3\x0c\x63\x46\x73\xd3\xe0\x36\xbd\xbc\x0b\x87\x96\x1e\xf8\x91\xd1\x08\x97\x4b\x59\x9a\xd9\xe3\x88\x84\x35\xc1\x0d\xd0\x93\x39\x0f\x78\x90\x57\x93\x28\x02\x9a\xd1\x87\x80\x1f\x59\x89\x98\x01\xda\x3b\x65\x8e\xc6\x6a\xd4\x6c\xa5\x37\x42\x56\x93\x18\x96\x2d\x00\xb0\xf5\x49\x97\xac\x74\xde\xcf\xb9\xdf\x3c\x9c\x5e\x18\x04\x54\x09\x5b\x91\x0a\x66\x8b\x08\x87\xf3\x08\x96\xb2\xeb\x12\xed\x54\x62\x9d\x14\x30\xe5\x1b\xa1\xff\x56\x99\x60\x1a\xda\xac\x1b\xdc\xc4\xaa\x90\x53\x6f\x9f\x25\x64\x60\x74\xef\x28\x92\x39\x5f\x82\xbd\xbc\xab\x79\xc1\x3a\xb2\x82\x9f\xb7\x01\x8e\x7b\x03\x36\xab\x06\xb3\x25\xf3\xd9\x7e\x9d\x93\x65\xf4\xdd\xcf\x99\x01\xeb\xbc\xea\x37\xc2\x73\x19\x33\x6d\x7e\x56\xbb\x8f\xd8\xc6\xc3\xed\x3e\x48\x17\x17\x18\x91\x93\xe0\x8a\xfe\x34\x1b\x7d\xbc\x20\x60\x8b\xa5\x9b\x37\x84\xef\x35\x13\x3a\x38\x7d\x08\x7b\x86\xf8\x4d\x2f\xb1\x33\x88\x33\xf3\x8e\x68\xef\x31\x74\xc5\x0e\xbc\xbb\xd3\xbe\xa1\xbe\xef\x90\x65\x65\x73\x86\x59\x31\x9e\xab\xd3\x58\x4c\x18\x62\x0c\x1d\xd5\x3f\x62\xc1\x2c\xca\x77\x19\x0c\x26\x39\xfc\x72\x1e\xec\xcc\x8d\xfc\x1c\x8f\x99\x7f\xbe\x98\xba\xfc\x28\xdd\xa9\x97\x76\xb0\xf3\xd8\xd8\x14\x76\x86\xc5\x7e\x63\xc2\x5b\x6b\x8f\xf3\x86\x13\x29\xfb\xa6\x10\x3f\xbd\x22\xf4\x40\xd5\x63\xfc\x7e\x0f\x61\xda\x81\xe0\x56\x4c\x8d\xba\x60\x9c\x2f\xc0\x4b\x20\xde\x3e\xc3\x70\x96\x16\xc3\x17\xe2\x0e\xa2\xac\x9a\xe0\x3f\xbe\xeb\x39\x32\xba\xe0\xf7\x24\x8c\x3b\x36\x60\x69\x50\x0d\xe6\x25\xe9\xde\xdf\xb0\xbf\x37\x1d\x0c\xb2\x13\x57\xe1\xd5\xb3\x88\x86\xa5\xe3\xac\x61\xf4\xc9\x5d\xb9\x45\x71\x41\x13\x10\x36\x25\x8a\xe2\x6a\xa6\xe9\x97\x47\x67\xbf\x3c\x79\xfe\xfb\x99\x99\x69\xd2\x1d\x3c\x41\x85\x68\xaa\xb0\x1c\xcc\xa7\x49\xb9\xf8\x73\x6e\xa2\x65\x37\x6c\x21\xd3\xf1\x98\xfe\x59\xc5\xf9\xac\x8f\x8a\x27\x02\xd6\x06\xc2\x32\xd4\x04\x74\xa6\x79\x94\x12\xc8\x9b\xbe\xaa\xf4\xa7\x1b\x3a\xb8\x75\x02\x93\x27\x78\x5c\x79\x82\xe3\x06\xb9\x92\x75\xc2\x8f\x57\x20\xfc\x30\x89\x1f\x06\xd9\xbf\xdc\x83\x1f\x7f\x7b\x39\xe9\x97\x93\x3d\x77\x71\xe6\x32\xc0\x3a\xa4\xaf\x41\x6d\x94\xdb\x3e\x34\xf2\x57\x05\x8a\x4a\xd5\x77\x98\x76\xd9\x65\xa5\xea\xbf\xf7\xa8\x81\x88\xa3\x15\x71\xa3\x58\x96\x6c\xa6\xca\x2f\x3a\xcf\x5e\x0f\x80\xda\x5c\x03\xd8\xa4\x35\xb7\xa3\x64\xce\xf6\xda\x29\xb5\xdb\xa5\x25\xbf\x97\x3d\x27\x69\x7b\x83\x3b\xae\x96\x53\xda\x80\xa6\x99\x8d\xc0\x95\x2c\x94\x50\x62\x5f\x87\x51\xb4\xb6\x9a\x99\x57\xae\x72\x3e\xa2\xfe\x52\xae\x26\xbb\xb6\xc9\x0b\x72\x91\x93\x9f\x9c\x19\x5a\xb6\x3f\x84\x10\xf6\xa2\xae\xb4\xdc\x29\xca\x39\x48\x26\xb6\x9b\x92\x57\x1e\x86\xe5\x1f\xad\xaf\x24\x2e\xfd\x40\x2a\x1b\x6e\x61\xbc\x98\x31\xbd\xce\x70\xbb\x07\x2e\x21\x36\x31\x4c\x32\x87\xfc\xd2\x69\x38\xf0\x76\x23\xfe\x6a\x87\x9a\xa5\xdd\xea\x0a\x0e\xb8\x7b\x1d\xe2\x69\x97\xc3\xd2\x1a\x66\x41\xfb\x48\x29\xdb\xae\xe2\x87\x3a\x61\x5b\xed\x27\xac\x6e\x92\xea\x2b\x78\xa8\x93\xb1\x02\xf5\xec\x0a\x2d\xce\xba\x93\x22\x2b\xfa\x37\x98\x9c\x4d\xef\xa8\xaf\x61\x23\xad\x36\x3d\xbb\xe9\xe2\xf2\x12\xa6\x18\x06\x5d\x81\x62\xbe\xd9\xf9\x2a\x36\xf0\xf5\x4f\xe0\xaa\x7b\xed\xdf\x60\xe8\xbb\x17\x70\x92\x20\xd8\x95\xb9\x22\x57\x9b\x89\x7c\x35\xff\x06\x13\xb3\xee\x8c\xfc\x1b\x4d\xc5\x9a\x57\xd2\x57\x7e\x13\x21\x2f\x08\x93\xee\x03\x52\x9d\xe1\x27\x7b\x87\xbd\xe3\x1f\x2e\x2b\x53\x5e\xbc\xff\x00\x6f\xc8\x3f\x22\x16\xb4\xe8\x12\x37\x09\x61\x14\xa4\xb0\x80\xc7\xd8\xc0\x03\x97\x4e\x49\x96\xbf\x51\x46\xa0\x1d\x83\x73\xe5\xdd\x7b\xee\xc9\x18\x0b\x1c\xb5\xba\xb4\x8e\x3a\xea\x70\x8d\xfb\xa7\x96\xaa\xaf\xab\xa1\xd0\x91\xa1\x53\x93\xc9\xe1\x58\x0d\x7f\xd6\x5e\xb1\x9f\x7c\x76\x74\xcf\x59\xe9\x87\xd7\x57\x75\x07\x25\x9f\xd4\x5b\xed\x8c\xbe\xdf\x99\x9b\x60\x7d\x18\xb2\xdd\x2b\xa4\x6d\x54\x22\x6e\xeb\x83\x98\x4b\x54\x2e\xa2\x8e\xa2\x27\xa1\x8a\x6a\x4c\x96\x94\xa2\x49\xd1\x75\xb5\xe8\xe8\xbb\x6a\xa4\xaf\xb2\xac\x74\xb8\x79\x9d\x4a\x65\x52\xc2\x8c\x3a\x4c\xa9\x31\x6b\x93\x62\xf2\x55\x2f\x7a\x3b\x17\xd7\x55\x56\x78\x9f\x09\x31\xe9\x1c\x15\x03\x22\xb5\xc9\x28\x49\x63\xb8\x57\x91\xc6\xb0\xce\x77\x72\x00\xf6\x9a\x66\x31\xcc\x57\xb5\x31\xc7\xa9\xc2\x29\xb9\x49\x6d\x54\x3e\x06\xab\x7f\x5f\xae\x95\x84\x18\xcd\xae\x95\x52\x6b\xc4\xb7\x8d\xa6\x37\xea\xef\x8d\x46\x23\xe8\x7e\x80\x37\xa7\x49\x00\x77\x76\x64\x7c\x51\x10\xa6\x73\x0f\xfb\x53\x6a\xf5\xe9\xc4\xf0\xda\x7a\x91\x2c\x52\xc8\x7e\x72\xa5\x67\x49\x8c\x52\x3b\x13\x12\x94\x7b\x47\xbb\x8f\xd8\x7d\x67\xdb\xa4\x7b\x8f\xd9\x0d\x33\x34\x5a\x93\xea\xf5\x59\x08\x4e\x3e\xf3\xf5\x57\xad\xa0\x0c\x83\x37\xd0\x87\xe1\x15\x3c\xc1\x18\xa5\xe5\x51\x70\x7c\x29\xb2\xf5\xd5\xd5\x7a\xea\x24\xe0\x06\x93\x90\x26\xd1\x15\x44\x5d\xdf\x43\xc1\xc3\xe0\x06\x0e\x5f\xa0\x5f\x6e\xa6\x9f\x3e\x95\xc1\xd0\x84\x34\xe5\xbb\x04\x89\x90\x7f\x70\x9f\xf7\x22\x5f\x50\x96\xaa\x43\x1b\xbb\xc9\xbd\xf3\x10\x88\x88\x42\xf5\xa8\x57\x7c\xdf\x07\x40\x73\x6b\x2f\x89\x5c\x17\xed\x0c\x73\xd9\x40\x0d\x40\xf5\xfa\x11\x59\x08\xe2\xe0\x81\x3f\x26\x18\x08\xd1\xdf\xbd\xc2\x51\xac\xb4\x58\x05\x3b\x5f\x92\x21\xe5\x47\x2f\x8c\x92\xab\x46\x31\xea\x76\x01\x38\x5b\x9d\xed\x89\xac\xa8\x22\xd9\x53\xa0\xdf\xaa\x14\x13\x1e\x27\x49\x84\xc3\xb9\x39\xb2\x2c\xdf\x4b\x96\x6c\x9f\x1e\xfc\x96\xd2\x62\x3e\x19\xc0\x7a\x15\xd5\x24\xe7\xad\x47\xf5\xe6\xa5\x12\x13\xc4\x78\x19\x1f\x99\xeb\x1c\xa5\xfa\xa6\x38\x0b\x19\xdf\x16\x36\x42\x1b\x2f\xbf\xd5\xf7\x6b\x92\x13\x37\xb9\xdd\xf3\xbe\x38\xe6\xef\xaa\x9e\x36\x08\xcb\xaa\xca\x74\x6c\xe2\x1a\x34\x08\xe8\xcb\x02\x5d\x9c\x92\x63\x07\xd1\xbc\x60\x3c\xd7\xeb\x78\x0c\x7a\x6d\x58\xe6\x45\xcb\xc5\x96\x2d\x36\xde\x78\xaa\x03\xfb\xda\xe7\x54\x69\x2e\x0d\x23\xbd\x37\x38\xa6\x6c\x43\x76\x90\x37\x30\x08\x11\xd5\x3b\xad\x98\xb7\x40\x3f\xce\x45\x65\xcd\x11\xfb\xc9\xf7\xfa\x21\xa3\xf4\x49\x41\x16\xce\x1e\x6d\x36\xd7\x41\x59\x7a\x9e\xba\x4d\x51\x4d\xc1\xac\xee\x16\x27\x77\x93\xe9\xad\x3e\xbf\x4b\x27\xb8\xf6\x14\xcf\x75\x76\xa5\x03\xbc\x45\x1d\x35\x67\x57\x9b\xa5\x6c\x77\x8e\x17\xfb\xd8\xf2\x08\x2f\xdb\xeb\x55\x28\xd2\xeb\x08\x69\xc5\x7a\xaa\x8e\xdc\xbd\xd2\xf4\x65\x55\x54\x5c\xfd\xae\xe9\x31\xdf\x2a\x2a\x77\xa5\xcd\xd1\x6e\xd7\xae\xbb\x91\xbe\xfe\x6d\xd4\xee\x3c\xfc\xac\x5b\xa8\xdd\x06\xaa\xde\x3e\x83\x86\xdb\xa7\x56\xdf\x51\xb1\x79\x9a\x6e\x8f\x56\xdb\x66\x23\xc4\xbe\x52\x86\x85\x55\xd8\xb9\xbc\xce\xa7\x0d\x03\xb8\x29\x6d\x50\x51\x4e\xfe\x82\xfe\x80\x28\x89\x20\x4d\x9c\xda\x38\x95\x3b\x29\xdc\x95\xbf\xcb\x52\xb9\x7f\x96\x98\xcd\x5f\x5e\xec\x3f\xba\x7a\xfe\xcf\x12\x38\x94\x76\x31\x9b\x05\x95\xbf\xc6\x10\x8a\x59\x32\x07\x8e\x1b\xd5\xd8\x45\x35\x31\xcd\x42\x54\x96\x03\x93\x42\x8e\x2b\x82\xb5\x6d\x4d\xbd\xb4\xcb\x9e\xaa\x29\x49\x5a\x65\x37\x2e\xcb\x0c\x58\xa1\x7e\x96\x6a\xe6\xa2\xb0\xaf\xf3\xe4\x64\x4e\xce\xc9\x9b\xb1\x2d\x90\x30\x17\x38\x99\x24\xfe\x82\x62\xf5\xca\xbf\xa5\x0c\xc1\xdb\x5a\x49\x7b\xac\x26\x70\x2a\x1d\x0c\xe9\x6b\xc5\x41\xfc\xc2\xfb\x18\xce\x16\x33\x6b\x70\xf0\xc8\xf2\xa7\x1e\xf2\x7c\xb2\xc5\x5d\xeb\x85\x77\x63\x25\x71\x74\x63\x71\xb8\x0c\x2b\x82\x98\xbc\xb1\x3a\x8b\xf9\x1c\x22\x8a\xb4\xee\xc5\xc1\x6e\x82\xac\x28\xb9\x66\x0f\x1c\xf1\x24\x5e\x10\x02\x25\xb5\x2c\x52\x6c\x5d\x40\x6b\x11\x87\x7f\x2c\xa0\x5b\x2a\x76\x96\xaa\x47\x72\x04\xd0\x42\x8a\x49\x31\x4a\xe2\xcb\x2a\x6d\x8d\x56\x37\x5d\xe3\x30\x10\xf8\x3c\x4d\x13\x18\xd6\x8b\xc1\xab\xe6\xe1\xaa\x20\xe0\x27\x30\xf5\x51\x48\xcd\xc5\x56\x87\xf9\x2a\x7a\x91\x53\x24\x69\x5e\x05\xa9\xdf\x43\xd0\x28\x43\x52\x7a\x55\xea\x1b\xdb\x15\x14\xaf\x94\xb3\x15\xc8\xd6\xd6\x24\x9c\xa7\xd7\x6a\x1b\x43\xf9\x41\x44\x64\x6c\x5b\x64\xa9\xb4\xf3\x89\x82\x95\xe7\x26\xc5\x63\x21\x8d\xf7\x6b\xe5\x83\x02\x65\x96\x22\x32\x72\x92\x60\x28\x41\x59\x06\x7d\x13\x3e\x90\x92\xb1\xb9\x32\x5c\xd2\x52\xa0\x01\x57\x62\x33\x6c\x2d\x01\xb8\x4c\xbd\x21\xdc\x9c\x59\xca\xef\x2c\x05\xb8\x92\x1c\x56\xcb\xe9\xad\xe4\xfa\x56\x88\x20\x9b\xa6\xda\x6c\x50\x9b\xe3\x0e\xf4\xfb\xb8\x71\x48\x7d\x31\x03\x0a\x4b\x5d\xc2\xac\xd2\x2c\xa9\x09\xfb\x5b\xcb\x59\xa2\x5c\x6c\x6d\x03\xed\xe9\xa7\x7a\xbe\x96\x06\xdc\x03\x55\xba\x17\x3e\x53\xca\x2e\x70\x18\xa5\xbb\x41\x32\xdb\x85\x57\x30\xc6\x22\x8f\x67\x8e\xc1\x00\xf1\xa6\x58\x0c\x54\xcd\x62\x1c\x7c\x7a\x1d\xfc\x7d\xff\xe4\x9f\x95\x0e\x05\x62\x14\x72\x34\x02\xe0\x3e\x83\xd7\xce\xf0\xd1\x29\xc2\x66\x11\xf0\x5e\xb8\xa4\xd9\x7e\x94\xa4\x06\xaf\x84\x03\x60\xcf\x92\xc0\x8b\xf2\x19\xc0\x92\x98\x7d\x00\x32\xa7\xfe\xc6\x69\x47\x69\x0b\x6a\xc2\x76\x4a\x21\xf2\x57\x0c\xaf\xbb\x74\x95\x65\x60\xee\x3a\x81\x3f\x75\x80\xb2\x05\xd5\x29\xb7\x60\xab\x1d\xd5\x7b\xd8\x48\x59\x5a\x3c\xfd\x5e\xc2\x6b\xeb\x0d\xab\x66\x45\xe1\xa6\xb2\x6a\x96\x39\xa5\xbe\xf2\xf2\xf8\xd1\xb6\xe9\xb3\x2f\x92\xe0\xa6\x7c\x5e\xd5\xab\xa0\x0c\x1e\xf9\x98\x9f\x88\xbc\x4a\xfb\x3d\xad\xe8\x3d\x9b\xec\x71\xce\x31\x21\x5f\xf8\x9c\x16\x1e\x67\x0c\x22\xbf\x50\xc5\x5a\x35\x71\x53\x28\x5f\xe4\xcf\xef\x8e\xc0\x67\x3c\x3b\x1a\xc5\x84\xb3\x1f\xb9\x5b\x45\x5c\x26\x42\x3a\x30\x5f\x2c\xeb\x67\x09\xe7\x17\x6e\xf5\x32\x6b\xb5\x95\x5d\x8a\x22\x33\x72\xdd\xf5\x28\x4f\xde\xf6\x97\x65\x53\xa8\xe3\x0d\x84\xec\x6b\x9c\x70\x29\x90\x64\x09\x81\xcb\x49\x35\x31\xab\x22\x29\x5f\x7b\x03\x57\x0f\xf0\x3c\xf2\x14\x67\x64\x6e\x38\x10\x9a\x29\x5f\xd6\x45\x40\xde\x50\x14\xbc\xce\x63\xb7\x3c\x43\xb4\x29\x5e\xe5\x14\xc9\xa6\xaf\xf5\x39\x22\x3f\xfd\xb2\x27\x09\xdf\x88\xda\x59\x22\x80\x37\x95\x33\x85\x25\xdb\x8f\xe0\x39\x2b\x3f\xe6\xe6\x36\xf6\xeb\xc7\xdc\xf1\xa2\x30\xa4\xf5\xe1\x76\x8d\xf6\x1b\xf7\xe2\xa9\x3c\x61\xee\xe9\x8e\x36\xa5\x6b\x0c\xc2\xd4\xbb\x88\x0c\x2b\xad\x80\xb3\x08\xf6\x2b\x3d\xf3\xae\x68\x26\xf7\xdc\x99\x14\xa6\xaf\x51\x98\xe2\x30\x86\x86\x57\x1c\xf3\x47\x65\x7f\x64\x9b\xca\x42\x67\xe9\x21\xd3\xc5\xc5\x2c\xa4\xe2\xab\x39\x3d\x24\x4b\xc9\x07\x34\xe9\x27\x97\x63\xb4\x19\xa0\x0a\xd5\x97\xf6\x54\x97\xbc\x8a\x3c\x38\x29\xc4\xc5\x44\x29\x95\x10\xbd\xc5\x59\x6b\x96\x59\xbf\xc2\xff\x65\x8e\x92\x4b\xc2\xcc\x5a\x84\x03\xc6\x10\xcd\xc2\x98\xc5\x8f\xd4\xa6\x3f\x30\xa8\xab\xeb\x4f\x55\x2f\x0e\x2c\xea\xa9\x66\x56\x04\x18\x55\x03\xcd\x69\xac\x84\xb2\x6a\xa8\x43\xac\x44\x69\xee\xd0\xcf\xba\xf0\xa6\xb4\xa4\x2b\x70\xb8\xab\x6e\x4c\xa1\x1d\x30\x6c\x4d\xe5\x55\x71\x73\x2a\x2f\x37\xbf\x3d\x85\xc3\xa1\x9d\xed\x54\x32\xb9\x08\x79\x37\xf9\x8e\xe7\x4f\x0b\x85\xb9\xa9\xc6\x29\x6d\x2c\x5d\x35\xdc\xab\xa6\x89\xfc\x73\xb7\xe6\x77\xab\x91\xdc\x36\xb0\x5f\x1b\xac\x66\xfb\x2d\x57\x19\x23\xdf\xef\x35\xc5\xb1\xe0\xe4\x72\x00\x6c\x5d\xa5\x22\x2f\x76\x04\xe7\x89\x89\xc9\xe7\xe3\xff\x7e\x1e\x79\x3e\x9c\x26\x11\x75\x4a\xcc\xf3\xfe\xf4\xe3\x72\xce\x5f\x04\x3b\x9c\x41\x0f\xf9\x53\x6b\x92\x20\x8b\x3d\xa1\xc5\xb2\x58\x85\xfb\xc5\x09\x39\x21\x44\x65\x79\xb1\x05\x3f\xd2\x83\xe4\x92\x76\x62\x43\xec\x90\x08\x81\xac\xc3\x57\xa8\x57\x7a\x67\x72\x04\x79\x45\x05\x92\xa2\x6a\xa5\xd4\x0d\xb3\x46\xb8\x40\x05\x45\x46\x71\x5f\x6d\x68\x46\x44\x4c\x63\x13\xe8\x16\x9a\x48\xad\xd4\xe0\x5b\xec\xcb\x71\xdb\xce\xd0\xcd\xdb\x00\xfb\x02\x7b\x17\x8b\xc8\x43\x5d\x3f\x89\xc8\xfe\x08\x95\xdc\x77\x28\xb9\x4e\x35\xca\x3f\x60\xbb\x3e\x4d\x10\xee\xd2\x0c\x5f\x7c\xa2\xdf\x86\x33\x38\x0c\x60\xea\x73\x0b\xca\xd0\x23\x7f\x9a\xe2\x72\x36\x20\xe7\x37\xcd\xbb\x24\x2c\x1e\xd3\xd6\x36\xbf\xe2\x27\x9a\xb5\x63\x85\xc4\xe2\x8d\x06\x86\x92\xeb\xe6\xa3\x6a\xe4\xf4\xea\x69\x52\xa8\xc0\x87\x3f\x62\x7f\x76\x71\x42\x56\x30\xf0\x5d\xcf\x8f\x52\x97\xec\x93\xd4\x85\x41\x88\x2b\x5d\x12\xcb\x9d\x15\x9a\xb9\x93\xb6\x19\x41\xd6\x96\x6e\x6d\x2a\x71\x06\xba\xbf\x95\xa9\x95\xfc\xd4\x2e\x14\x81\x36\x59\x6d\x59\xb6\x3b\x25\x95\x24\x30\x67\x3f\x35\x49\xee\x6a\x52\xa8\x3d\x95\x05\x26\xb3\x28\xa6\xa4\x2e\x0d\x84\xf0\x2a\x2e\x54\xc2\xbe\xff\xfc\x7a\xa9\x17\x09\x82\xed\x95\x3a\x8d\xfa\xd1\x34\xab\x98\x65\x76\xeb\xed\x15\xb2\xbb\xd4\x3a\x27\xae\x9e\x06\x62\x23\x7b\xb3\x07\xec\xa7\x41\x58\xe1\x3a\x5b\xef\x1c\x58\x3b\x07\xea\xe5\x1d\x10\x12\x46\xc9\xa2\x60\x57\x35\xd7\x5b\xa6\x7a\x14\x39\xce\xd6\x4d\x49\x23\x53\x12\x66\xbe\xc4\xb3\xe4\xaa\xe4\xa8\xcf\x75\xae\x55\xb6\x98\x46\x35\x88\x49\x2a\x66\x7e\xb1\xae\x3d\x14\x53\x1e\xbc\xa1\x43\xa9\x5a\x75\xf5\x07\x56\x49\x2c\x4d\xdd\x57\x96\xc5\x01\xef\x2d\x36\x67\x95\xd5\x57\xb9\xae\x2a\x5d\x98\xb7\x68\xfd\x04\x41\xeb\x26\x59\x58\xe9\x82\xff\x71\xed\xc5\x14\x64\x9a\x61\x30\x59\x78\x1a\xa6\x94\x93\x7b\xbc\x46\xcf\x9a\x95\x28\x0b\x1f\xa8\x1c\x6b\x6e\xcf\xb4\xdc\x20\xb9\xca\x0c\xe9\x46\x8a\xd4\x5f\xe0\xa1\x29\x28\xa6\xdd\x3c\x67\x08\xcd\xcf\x99\x65\x8a\xb6\x35\x50\x63\x13\xe3\x56\x9d\x25\xa4\xc9\x5e\x6b\xba\x0c\xed\x3d\xaf\xad\x56\xc7\x4c\x85\x3c\xba\x6a\x97\xeb\x4a\xd4\x1f\x42\x6d\x4f\xec\xe2\x3d\xf9\x08\x1c\x82\xa3\x4d\xe5\x80\x24\x8c\xc2\x41\xad\x0d\x44\x07\xf2\xad\x69\xaa\xfe\xe5\x5a\x3e\x21\xba\xcb\x84\xf4\x0b\xf1\x2a\xfd\x42\x90\xc1\x2f\x84\x88\xf6\x25\xf1\xc1\xe4\x55\x1a\xe2\x04\xdd\xd0\x36\xb3\x3e\xd8\x4e\x6d\x54\xb1\xea\x62\xa2\xba\x9e\x14\xdd\x4d\xa4\xa6\x62\x0c\x28\xe7\x22\x4a\x32\x2d\x0e\x6f\x84\x34\xbd\xc0\x30\x70\xbd\x28\xf4\xd2\x8e\x62\x05\x71\x03\x0f\x7b\xab\x87\x31\x67\x15\xb1\x60\xe6\x49\x82\x66\xa7\x49\x8c\xbd\x30\x86\x88\xfe\x12\x8d\xd9\x02\x2f\x8f\xda\x41\x29\x24\x71\xec\x9e\x7a\x51\xe4\x5d\x44\x2c\x4c\xf9\x8c\xbe\x51\x02\xa0\xa9\x52\xc9\x00\x23\xdc\xa2\x57\xae\x1f\x41\x0f\x75\x6e\x9f\x78\xd8\xf3\x61\x8c\x21\x62\x38\xc0\x81\xbf\xa4\x69\x66\x98\x0e\xd3\x84\xa9\xcb\xfa\x99\x8b\xab\x66\x6e\x40\x10\x90\x49\x1b\xe2\xa5\x21\x9e\x9a\xe3\xfa\x02\x3c\xea\x64\xf1\xdd\x8e\x1b\x27\x68\xe6\x45\xe1\x27\x36\x52\xde\x77\xa8\x76\x3c\x1e\x61\x1e\x40\xbc\x95\x5e\x87\xd8\x9f\x76\x62\x96\xf5\xe1\xd6\xf7\x52\xc8\x4c\x59\xdc\xa8\x37\x2c\xe4\xa4\xa4\xda\x34\x10\xf3\x58\x63\x69\xaa\x1b\x8d\x46\xfc\x19\x87\x6d\x0e\x92\x99\x2b\xc9\xb0\x63\xbb\x7e\x12\xc0\x2e\x61\x15\xc9\xa9\x17\xbb\x31\xfc\x28\x60\x16\xcf\xc2\x8b\x28\x8c\x2f\x1d\x37\x08\x83\x93\xf9\x9c\x4c\xa2\xb3\x75\x81\xa0\xf7\x61\x8b\x6f\x81\x61\xed\x62\x2c\xf3\xb1\xdf\x5e\x03\x37\xa8\x05\x86\xcd\x62\x9e\x65\x6e\x07\xcc\x56\xad\x5d\x76\x11\x58\x92\xf8\x43\x49\x2e\x32\xd2\x93\x8b\xdc\xdd\x6d\x77\x2a\xd3\x8b\x88\x8c\x21\xcc\xd5\xfa\x7c\x0c\xd0\x68\xbb\x07\xbc\xd1\x76\x1f\xa4\xc2\x47\x0a\xa3\x9b\x5b\x91\x60\x22\x01\xe1\x08\x1a\x52\x58\x7c\xbb\xdd\x41\xa3\x4e\x32\x0a\xe9\x7a\x74\x1c\xc7\x0d\x92\x18\x3a\x3b\x3b\x9d\xd8\x9d\x2f\xd2\x69\x27\x11\xeb\xbc\x8d\xef\xee\x62\x0e\x1c\xbd\x3d\x1a\x61\xe7\x5b\xd2\xa4\xf3\xed\xd2\x27\x24\xdb\x89\x9c\x5b\x8f\x74\x21\x1d\x45\xcb\x49\x18\x7b\x51\x74\x73\x4b\x3a\x80\xee\xee\x58\x1e\x8c\xd0\x65\x5d\xbe\xbb\x13\x7f\x75\x1c\x59\x32\x9c\x74\x3c\x87\xe5\xf7\x48\x97\x4b\x3e\x6d\xf1\x92\xce\xd4\xea\x19\x53\xe2\x2c\x63\x0a\x5a\x3d\x63\x0a\x2a\x66\x4c\x41\x75\x19\x53\x50\x96\x31\x05\x35\xcc\x98\x82\xda\x67\x4c\x41\x8e\x3e\xd2\xc2\x7c\x35\xcf\x99\x12\x40\x36\x18\xc2\xe6\x7e\xb1\xc4\x29\xf1\xd7\x91\x38\xa5\xc6\xef\xf0\xf8\x95\x87\x7e\xf8\xe9\x5f\xff\x5d\xed\x77\xa8\xfc\x63\x82\x2b\xf0\x4a\x82\x19\xc4\x89\x65\xe0\xa7\x4b\xe3\x7b\x8b\x68\x03\x0d\x41\x0e\x0c\x88\xc9\xba\xe3\xc0\xdc\xc3\x53\x1b\x48\x5c\x1a\x60\xef\x66\x1e\x1b\xe9\x34\x41\xd8\x98\x82\xb1\xe0\x8a\x50\x8c\xb4\x7e\x42\x56\x28\xe4\x6e\x95\x2f\xb8\xe9\xef\xe7\xb7\x6f\x5f\x53\x10\x68\x42\x3b\xe9\x46\x82\xb0\xd5\xc9\x9d\x91\x66\xba\x33\x5e\x7b\xd3\x08\xed\x26\x3d\x6d\x61\xf8\xcb\x09\x16\xd5\x01\x9a\x4d\x02\x30\x1b\x18\x92\x8b\x1f\xe8\x71\x8b\x25\xe6\x8d\xc0\x8c\xb1\x65\x29\x3a\x52\x85\x46\x30\x8f\x22\x34\x69\x48\xcd\xfa\xd1\xfa\xe0\x41\x43\x33\x92\x14\x9b\xb5\x93\x7f\x92\x9f\xad\xb5\x08\x55\x24\x29\x6f\x49\xa7\xc2\x7a\x24\x6c\x1e\xa5\xa4\xca\x76\xac\x41\x84\x2f\xd9\xd1\xc5\x30\x77\xde\xc3\x0a\x24\x91\xfd\xfc\xf4\xff\x9c\x35\xda\xd0\x20\x6c\xa4\xa4\x15\x77\x94\xe8\x70\x63\x18\x92\x72\x1a\x55\x35\xf9\x83\x9a\x78\xde\x75\x09\xf4\x48\x1c\xdd\x33\x36\x9c\xf3\x02\x72\x57\x7d\xab\x4d\x02\x46\xeb\xc8\xb9\x7c\xf3\xaf\x41\xe6\xff\xb3\x80\xe8\xe6\x35\xa9\xf6\xfe\x48\xfd\x0f\xd2\x46\x16\xc3\xb2\x22\xb9\xd3\x9e\x5a\xaf\x4b\xaa\xa9\x20\xfa\xfc\x87\x5f\x80\xf2\x95\x59\xde\x34\xf5\xd7\x45\xb3\xdf\x0b\xf5\xf7\xd7\xa5\xfe\xba\x78\xe0\x36\xd4\xbf\xb1\x08\x20\x5d\xa0\x6c\xac\xea\x69\x80\x0c\x46\xee\xb7\x9c\x82\xa5\xc3\xe9\xc6\x90\x5b\x87\x33\xba\x30\xc6\x28\x84\x69\x87\x7d\x77\x29\x65\x78\xf2\x9d\x9b\x51\x9b\x4b\x69\xcd\xa5\x94\xe6\xdc\xdd\xdd\x2e\x1d\x17\xc1\x60\xe1\xc3\x8e\x1a\xb9\x13\x8b\xec\x48\xb8\x13\x83\x01\x19\x14\x3a\xef\x8d\x41\x3a\x42\xe7\x7d\xc9\x63\x7b\x2e\x4e\x9e\x27\xd7\x10\x9d\x7a\x29\xec\x38\x6e\x8a\x3d\x84\xd3\xbf\x87\x78\xda\x61\x57\xb4\xf3\x98\xe9\x35\x3c\x17\x41\xea\xc7\xd2\xb1\x5f\xb3\xab\xdb\x76\x00\xe3\xbc\xd3\xe5\x10\x2e\x1d\xc0\xc3\xa0\x5e\x23\x38\x09\x3f\xda\xfc\x9d\xbd\x6b\x53\x70\xd3\xb6\xb2\x7e\x4a\xdd\x5d\xba\x17\xde\x03\xcd\x61\xfb\xdb\xdb\x57\xd7\xf3\xd7\x49\x49\x06\x95\x06\x59\x14\x8d\x81\xd1\xd4\x43\x59\x75\xc4\x52\x39\xfa\x0c\xf3\x67\x12\x46\x18\x22\x32\x39\x95\xce\xd9\xd0\x4f\xe2\xc0\x43\xd4\xc7\x8e\xba\x5a\x64\xcc\xbe\x45\xb1\xb4\x53\x8d\xe3\xd7\xf2\xa7\x18\x4e\xc0\xd2\x68\x45\x1a\x33\x81\xc2\x19\x6f\xaa\xee\x94\xab\x44\x7c\x55\x4e\x22\x75\x82\x9a\x1d\x31\x55\x18\x09\xdc\xcc\x3b\x41\x10\x62\xf8\x11\x77\xd9\x1c\x2a\xb1\x5d\x8c\xe2\x6c\x60\x7f\x2f\xdc\xe1\x35\xbf\xad\xca\x60\xaf\x7d\x9a\x2a\x9d\xd7\xa0\xba\x94\x0e\x24\x87\x0b\x0a\x8e\x9b\x6a\xe5\x63\xe1\xe0\xa5\x05\xa0\x57\x6a\xbb\xeb\x56\x44\x5b\xfe\x07\xb5\x26\xba\xdf\x65\x96\xb7\xb0\x1c\x70\xb7\x25\x7d\x9b\x2b\x5a\x05\x51\xe3\x80\x07\x1d\x74\x79\x52\x44\x4e\x2d\x39\x4f\x0b\x95\x66\x98\xb1\x4b\xf5\xcc\x18\x83\x73\xea\x58\x91\x4b\x5f\x04\x32\x14\xe0\x01\xc8\x66\xa1\xc2\xd0\xc6\xa8\x4c\xd4\x3a\x6e\x48\x29\xcd\xf1\x77\x36\x77\xb1\xe6\x4f\xef\x07\x91\xae\x3a\x85\x3e\x82\xb8\xcb\x0c\x8e\x0f\x03\x35\x73\xfa\xf3\xe0\xe6\xe6\xe8\xd1\xaf\x6d\x51\x35\xea\x3d\x21\x11\xbc\x82\x34\xa1\x8d\x49\x75\x94\x8b\x2b\xca\x8c\xb1\x34\x6a\xe7\x22\xf9\x68\x97\xc4\xd3\x97\x38\x49\xbe\x91\x8d\x19\x3e\xc8\x41\x45\xf0\x23\x24\x1f\x99\xbf\x16\xb1\x15\xd6\x75\x6d\x94\x97\xb6\xd8\x2e\xdc\x42\xd7\x0d\x03\x18\xe3\x10\xdf\x3c\x10\xf2\x3a\xfd\xf0\x3b\xfa\xe1\xe4\xc2\x48\x5e\xa6\x44\x6e\xca\x39\x1b\x5f\x51\xaf\xcc\x57\x2f\xcf\x7e\x7d\xfe\xfe\xe5\xd9\xeb\x93\xd3\xa7\x67\xef\x9f\xbe\x3c\xf9\xe1\xf9\xd3\x27\xf5\x11\x47\xe4\x16\xa2\x1e\xcc\xd6\xbb\x77\xb6\x9d\x25\x19\x94\x6e\xcd\x9a\x04\x61\x5b\xb7\x94\x62\xf8\x2c\xe6\xbf\x61\x37\x9a\xe1\x8b\x77\xef\xb0\xc5\x63\xfe\xac\x11\xf9\xea\x1a\x85\x18\xbe\x7b\xc7\xe8\x6f\xd9\xaa\xce\x6e\x1a\x06\xd0\xf7\x50\x77\x8e\x92\x8f\x37\x2b\xb4\xf0\x7e\x4e\x19\x5f\x8b\xbe\x2c\xf9\x1a\x41\x2f\xd0\x3f\x8e\x93\x60\xa5\x2f\x97\x2d\x18\xa0\x15\xa6\xb5\x64\xc8\xa4\xd5\xb5\x27\xb4\xbe\x6e\xf3\x84\x98\xa7\x83\x7c\x56\x3e\x89\xe5\xdf\x94\xdd\x95\xab\x9f\x42\xa6\x13\xe0\x0b\xc2\x4d\xa5\xf3\x28\xc4\xf8\x41\x81\x44\x87\x9f\x7a\xbb\xaf\x7f\xf3\xbe\x69\x76\x1e\x95\x5a\x55\xb4\x91\xdd\xbb\x61\xc5\xac\xbb\x5a\x11\xb1\xd9\xa4\xb1\xde\x14\xcf\x55\x5c\xef\xcf\x7f\x0d\x92\x05\xec\xfa\x53\x0f\xe1\x5d\xc6\xc2\x3e\x0c\xc2\xfb\xfb\x0f\x6f\x7f\x4b\xdf\xfc\x0f\x5a\x09\xbd\x6c\x9d\x35\x29\x99\x8f\x8d\xe6\xc8\xac\xc8\x81\xc9\xd2\x48\xe3\x69\x98\x6e\x35\xf4\x8e\xa1\x7d\x75\xbd\x20\x38\xf1\x65\xb6\x4a\x86\x57\x9f\xad\x1a\x85\x84\x91\x89\xa8\xe1\x47\xe8\xd3\x47\x34\x0f\xb5\x92\x36\x73\x05\x8f\x21\xd6\x3a\xf3\x23\x54\x3b\x40\xd8\x53\xa7\x75\xae\x00\x75\xf6\x2f\x17\x0f\xe6\x14\xdc\xdd\xfb\x47\x7a\x84\xff\x88\xbf\x24\x31\x2a\xd3\xf1\xb9\x68\xb1\x96\x04\xb6\xf2\xd4\x2a\x69\xf1\x27\xd2\x5b\x23\x29\xca\xdc\x12\xe2\x89\xe2\x55\xe2\xfa\x49\x1c\x3c\x66\xff\x18\x9c\xaa\x86\xec\x4d\x9e\x6a\x57\x4f\xf6\xaa\x12\x6f\xae\xc7\xeb\xd1\xee\x83\xa0\xda\x27\xd7\xf0\xea\xf4\xd7\xc9\x6c\x15\xaa\x95\xd9\x71\x84\x8f\x63\x16\xe4\x09\xce\xd5\x3f\xf5\xf0\x4f\x11\x1b\x5a\xfc\x4e\xa5\x62\x56\x07\x7d\xc0\xea\xe0\x0a\x93\xfa\xcf\xb9\x92\xa5\xee\xfb\xca\x00\xe7\x4c\xd5\x97\xef\xfa\x46\xf6\xe9\x66\x76\x28\xad\xab\xc4\xa5\x94\x75\xd9\x01\xca\x2e\x4e\x62\x8c\xbc\x38\xa5\xa6\x06\x75\x1f\x2c\x57\x75\x04\x7d\xcf\xbd\x36\x47\xb7\x4b\xfe\x80\xae\x1c\xf9\xbd\xac\x4a\xa1\xa2\x1c\x08\x8c\x50\xb7\x47\xcc\x6d\x72\xe6\xf9\xd3\x30\x16\x8e\x8b\xfc\x97\x9b\xe2\x64\xde\x71\x80\x5e\x94\x9a\x4c\xbc\x68\x67\x87\xed\xc6\x14\xf9\xe2\x91\xf6\x9e\xf7\x94\x57\x35\x52\x36\x74\x18\x63\x88\xe6\x48\xe4\x71\x49\x91\x0f\x6e\x93\xf8\xad\x61\x86\x30\xeb\x71\x4c\xdd\x9b\x4e\x17\x29\x4e\x66\x3c\xc5\x4e\x36\x9f\x36\xb8\x0d\x20\xf6\xc2\x68\x88\x69\xd2\x17\x75\xae\x3b\xb1\x03\x62\xb1\x35\x5f\x23\x0a\xca\x06\x83\xbb\x3b\xec\xf2\xf9\x73\x27\x09\x7a\xea\xf9\x53\xc5\xcc\x13\x3b\xb7\xc6\xb3\x4f\x4c\xf9\x79\x4c\x2f\xcf\xf1\xce\x4e\xf1\x59\x87\xfd\x0b\x30\x39\x08\x31\xfc\x88\x01\x76\x69\xa3\x34\x1b\x5d\xe6\x47\x0a\xa5\x13\x29\x76\x96\x20\x89\xe9\xe1\xa6\x0d\x5b\x7a\x77\x01\x34\x92\x8b\xcf\x7d\xbf\x80\xa7\xb8\x7b\xa1\xef\xfa\x8f\x51\xb7\x3f\xec\x39\x20\x1d\xf5\xbf\x4d\xff\x0b\x7d\x9b\x7e\xf3\x8d\xe3\x9d\xa7\xdd\xfe\x38\xfb\xf4\x3c\x15\x06\xaa\x4e\x3c\x82\x82\x5c\x9c\x73\x3c\xe6\x64\x16\x03\x8f\x9c\xa9\xcb\x35\x33\x80\x97\xf8\xca\x6a\x54\xc5\x09\xe4\x8c\xbc\xba\xbb\xcb\x11\x9c\x87\xa1\x4e\x39\xcc\x80\xd6\x59\x9b\x13\xd2\x69\x7a\x09\x24\x47\x66\x72\x47\x96\x0b\x0b\xc7\x23\xbc\x04\x2a\xff\xa4\x79\x48\xb3\xd0\x0e\x2b\xff\x0d\xad\x3d\xb7\xa8\x4a\xe5\x6c\xf2\xb5\xba\xf3\x85\x73\x55\xcb\x2f\xaa\xbd\xa8\xe5\x18\xc9\x21\x45\xfd\x21\x33\xf7\xee\xb2\xef\x76\x76\xb0\x3b\x67\x5b\xe3\x09\xdb\x28\xc5\x27\x1d\x3e\x87\xa2\x8e\xce\x2a\x89\xd3\xe9\xda\x3e\x90\xab\xf7\xf8\x8f\xe7\xbf\x2f\x70\x6b\xec\x65\xdd\xce\x82\x60\x1c\x40\x54\x8f\x6b\x51\xb0\xf3\x54\x42\xf8\xaf\x75\xc9\x6d\xe8\x7a\xe3\x77\x59\xf3\x0b\xae\xe2\xca\x09\x27\x1d\xfd\xfe\x60\x7b\x9c\x5f\x45\xdb\xbd\xc2\x45\x84\xfd\x29\x4c\x1f\xf3\x1b\x83\x37\x2a\x1e\x77\xb2\x1a\x80\x5a\xdc\x19\xea\xb5\xc4\x09\x7e\xc1\xde\xec\xec\x74\xe0\x68\xbb\x51\x5d\xd9\x47\x4e\xf1\x20\xcb\x16\x1b\xac\x4a\xfc\x69\x89\xe2\xe8\x21\x58\xdf\x3f\x3d\xf2\x7f\xfc\xed\xe6\x7f\xfe\xd8\x04\x1a\x79\x59\xb8\x65\x36\x07\x25\x56\x94\x5a\x3d\xd1\x81\x6e\xa1\x2d\x44\x15\x87\x71\xd8\x25\xad\x98\x0c\xb4\x42\xd8\xab\x46\x92\xab\x6d\xa3\x1c\xe2\x60\x43\x0d\x84\xbe\x19\xa7\xa2\xbe\x7a\x93\xb9\xa8\xa6\xb1\x32\xf4\xcd\xba\xc6\x36\xa9\x65\xcb\xed\x8c\x0d\x5a\x36\xdb\xda\x33\xb1\x77\xd1\x8d\xbd\xab\x87\x71\x47\x2d\x3e\x5d\xfc\x74\xf6\xcb\x87\xa3\x0a\x27\x7a\x93\x82\x37\xf6\xae\x34\x0f\xf6\x14\xdf\x44\xb0\x88\x3a\x24\x8c\xe6\x7f\x0f\x03\xe6\xac\x98\x73\x88\xe9\x76\x45\x89\xee\x35\x29\x22\x93\xf6\x15\x3e\xb4\xbf\x55\xca\x46\x70\x82\x0b\x45\x9f\xc3\x09\x2e\x94\x9c\xc2\xf0\x72\x5a\x2c\xfb\x33\x7d\x5c\x28\x8d\x93\x79\xa1\xe8\xdb\x64\xae\x79\x86\x1c\xe6\xc2\x61\x79\x9c\x38\xf6\x2e\xa2\x30\xc5\xb6\xc1\xa3\x3f\x1b\x2e\x5f\x79\x03\x96\x5a\x7a\x12\x87\x33\x8f\x54\xc2\x33\x1b\x78\xd9\x6f\x9a\xdb\xcb\x90\x64\x97\xe9\xc6\x07\xc0\xbe\x5c\x50\x10\x30\xe3\x61\xd7\x2a\x11\x5a\x85\x33\x47\x31\xe3\x99\x39\x68\x41\xcb\x7e\x2c\x7d\x26\xc4\xca\x6b\x5e\x20\xb9\x77\x5a\xc6\x20\x25\x6f\xf2\x11\xb0\xd3\x68\x71\x19\x4e\x6e\x0c\xef\x35\xbc\x8b\x42\xb1\x5c\x9a\xe5\xdc\x3f\x40\xe9\x43\x6d\xf4\x04\x6b\x96\x82\x34\xb4\x88\x32\x30\xc3\xaf\xe4\xea\xca\xa1\xaa\xc8\xa1\x37\x4c\x3a\x50\x9b\xa8\xae\xe0\x70\x90\x91\xac\x3d\x36\xa7\x84\x6e\x94\xf0\x39\x1f\x97\xde\x13\xb5\x79\x28\xf4\xba\x44\x34\x45\xe4\x18\xa9\x49\xec\x0d\xec\xf7\xf6\x67\x23\x00\x60\xbf\x9f\x7b\x31\xff\x30\x07\x7e\xfb\x30\x7a\x58\x9d\xc0\xc4\x33\x04\xad\xf4\x2b\xd3\x22\xd5\xbb\x79\x35\x0f\x61\x69\x92\x0d\x7a\x8d\x2b\x5a\xbb\x17\xd7\x16\x2e\x58\xb0\x35\xa1\x71\x4d\x82\xa8\x4b\xfc\xac\x1c\xc4\xc3\xed\xfe\xaa\x8a\x33\x72\x22\x9b\x13\x41\xaf\xa7\xf7\xa0\x25\xfe\x1a\x7b\x57\x59\xe5\x90\xd5\xd3\xb1\xff\x62\xbb\xec\xa6\xe9\xc8\x2e\x38\x22\x3c\x9b\x9e\x73\x9d\xe2\x37\x51\xe8\x66\x7e\x6d\xb2\x72\x83\x5c\xa2\x5d\x50\x60\xbb\xc7\x46\xf2\xeb\x3c\xf0\x70\xa5\xfa\x8f\xd5\x83\x16\xb1\x9b\xfa\x53\x48\x08\xa0\x63\x7b\x13\x0c\xd1\x1b\x2a\xe8\x18\x7d\xaa\xa1\xe8\x2f\xac\xe8\x2c\xe4\x3d\xa5\x66\x00\xf6\x58\xd3\x6b\xc0\x9d\x1d\x39\x06\xce\x3b\x85\x5c\x18\x03\xb7\x1a\x77\x31\x84\x6e\x32\x99\xa4\x10\xd3\x5f\x40\x65\x27\xe4\x2b\xf2\x03\xe8\xcc\x83\x7c\xc7\x7e\x02\x85\x5f\x90\xaf\xde\x26\xf3\xe5\x7d\x27\xff\x6e\x2d\x23\x92\x6d\xc6\x03\x41\x1e\x06\x0b\x7a\x7d\xf9\xc7\xa4\xff\xcd\xd5\xd5\x0a\xce\x74\x45\xa0\xed\x7a\xa4\xea\x52\x7f\xcc\x02\xf8\x76\xe9\x8d\x30\x1e\xe7\x61\xbd\x1b\x5c\x1e\xea\xd1\x4f\x19\xae\x20\xe7\x0b\xaa\x25\xda\x19\x00\x9b\x33\x75\xa5\x90\xde\x79\x2e\xca\x84\xdd\x5d\x8b\xc1\x5d\x22\x4c\x67\x2c\x02\xbf\x2f\x5b\x8e\x97\x77\x5f\xbf\x6f\xf3\xec\x69\x41\xaa\x5f\xfb\xfa\xd0\xe8\x7a\x7d\xf3\x8b\x8a\xcb\xa1\x54\x4f\xc6\xc5\x22\x9e\x60\x8a\xbb\x74\x26\x38\x1a\x4e\x21\x70\x84\x9a\x3d\xc9\xac\x19\x4c\x9f\xfa\x79\x4d\x4b\xda\xef\x6d\x47\x7b\x1a\x06\x54\xa7\xaf\x5c\x66\x82\x70\x35\x03\xcf\x0a\x67\x40\x0e\xf2\xd1\xa4\x2f\x82\x64\x30\x6a\x19\xa5\x86\xfc\x3b\x53\x71\x96\xa7\x26\x86\x30\x48\xbb\x08\xf2\x8c\x5a\xd0\x54\x32\xf2\x6e\x92\x05\x4e\x77\x2f\x11\xcd\xe2\x24\xde\xb3\x59\xec\x72\xe1\xb2\x4a\x7f\x05\x62\x80\x80\x07\xd2\x4d\x1d\x59\x49\xf5\x91\xd5\x7f\xfe\xaf\xdd\x8f\xbf\xfd\x38\x29\xc9\x9a\x0f\xa3\x48\x49\x75\x53\xa1\xd6\xe2\xc1\x05\x71\xf7\x3a\x8c\x83\xe4\x9a\xe7\x85\x0e\x3f\x55\x01\xed\xf3\x02\x39\xc6\x56\x8f\xec\xe2\xbb\x6b\xaf\x44\x98\x21\x27\xc7\xd4\x4b\x4f\xbd\x2c\x7b\x57\x6d\xec\xa0\xcf\x0b\xab\x0c\x68\x8d\xda\xc7\xf7\x4a\xe1\x50\x69\xe7\x9a\x78\xb2\x57\xc5\x50\xdb\x02\xac\x13\x7a\x65\xe1\x71\xa2\x48\x39\x10\xda\xba\xca\xb8\x92\x61\x54\x4c\xfb\x89\x5f\x13\x38\x91\x97\xe0\x14\x34\x52\x55\xd1\x29\x31\x29\xe5\xa0\x4e\xb2\x27\x1b\x4c\xd8\x2e\xe7\x88\x6d\xcb\xd8\xc3\xe1\x15\xec\xa6\x3e\x4a\x18\xce\x8f\x9c\x30\xce\x67\xdb\xc0\xfe\x9e\x1a\x26\x63\xdc\x65\xb4\x6c\x7f\xcf\x4a\x53\xc5\x8d\xf2\x13\x27\xf3\xec\xd7\xa9\xc4\xc3\xf4\xa3\x90\x82\xd5\x7c\x82\xa7\x32\x12\xc3\xc6\x54\x89\xc8\xae\x96\xf7\xbc\xfa\x33\xb6\x11\xd8\x33\x56\x0b\xd3\x02\x69\x8f\xa8\x06\xa7\x7c\x3f\x69\xad\xd7\x82\xca\x1b\xfa\x56\x8f\x6a\x6b\xa6\xc2\x63\x83\x16\xe6\x3d\x39\x3b\xaa\xd5\x30\x4a\x2d\xfd\x23\x45\xf3\xc6\x55\x2e\xf4\xa7\x92\x8f\xaf\x06\x06\x8e\x33\x92\xe5\x59\xe7\x1b\xec\x8f\x12\xd8\x5a\xb2\x39\x32\x71\x38\xcb\xf6\x20\x22\xb2\x3f\xc3\xc6\x09\x1a\x6e\x9c\x22\x80\x6b\xd9\x78\x81\xfd\xbd\x92\xe2\x4f\xd4\x54\x92\xe3\xcf\x94\xf0\x99\x27\x83\xad\x4f\x5f\xe0\xe7\x29\x92\xcc\x82\x64\xf1\x1a\xa2\x29\x2b\x01\x60\xd5\x6b\xb1\x12\x64\xdc\x4a\xc7\x8c\x11\x41\xae\x34\xb4\x69\x3d\x86\xd0\xc8\xe4\x48\xbe\x30\x1c\x21\x09\xfd\x96\xc1\x15\x4d\x12\x34\xf3\xf0\x33\x0c\x67\x67\x64\x2f\x81\xa8\x92\x7b\x4c\x8a\xf0\x71\xa9\x21\xe8\x89\x0b\xce\x1a\x47\x19\x24\xb3\x2e\x82\xfe\x8d\x1f\x31\x28\x50\xf9\xf2\x87\x30\x0e\xc2\xf8\x92\x94\x51\xa9\x1e\x78\x18\xa3\xf0\x62\x81\xd5\x02\x7c\xbf\xd7\x2a\x36\x68\xb9\x61\xa7\x07\x3c\xd1\x3b\xa7\x63\x5f\x42\x4c\xc7\x68\x3b\x80\xa9\xdf\xfb\xfd\x83\x1e\x40\xc9\x35\x17\x71\x0f\x7a\x60\xe6\x7d\x94\x3f\x7a\x80\x93\xdf\x90\xee\xbe\x8c\x83\x58\x49\x53\x92\x77\x1b\x64\x7c\x53\x97\xb1\x82\xf6\x98\x3a\x9f\xc8\xf5\x29\x44\x56\xd3\xfe\xda\x42\x51\x91\x3d\x97\x9d\xb7\xb9\xf2\x23\x57\x6d\x7e\x79\x47\x45\x2f\xa0\xb0\xa4\xbf\x52\x3d\xc1\x67\x61\x34\x1a\xe1\x9d\x9d\x4e\x3c\xca\x38\xf9\x18\xd8\xdf\x7e\xea\x52\x2a\x1b\x5a\x7d\xd2\x85\x78\xb9\x11\x9d\x8f\x70\x24\x62\xcc\x9f\x5a\xf2\xfc\x96\xe9\x0b\x86\x52\xbb\x73\x15\xc2\x6b\xc2\xc2\x77\x9c\xe5\xd8\x59\x02\xb1\xc8\x05\xd9\x24\x9b\x2a\x60\xbf\x17\xe1\x8f\x33\xef\xe3\x1b\x06\xfa\x2e\x57\x5e\x17\x5e\xd8\xaa\x19\xa6\x3d\xb5\x1d\x80\x0b\x2f\xb2\x5a\x28\x14\x17\x14\x93\xfc\xc2\xc3\x53\x77\xe6\x7d\xec\xec\xe5\x96\xd0\x65\x5d\xb9\xbb\x3b\x1f\x4b\x94\x0b\xc7\xd9\x12\x5f\x84\x2c\x42\xde\xd0\x92\xb2\xf2\xff\x19\x7f\x33\x38\xe6\xe8\x66\xb7\xdc\x04\x84\x89\x90\x44\x9d\x7b\x98\xea\x69\x3d\x87\x23\x85\x7b\xe6\x9e\x71\x61\xfa\x06\x5e\x86\x29\x86\x88\xcc\xad\x60\x7d\x0d\xaa\x34\x65\x4b\x1b\x3f\x15\x77\x8a\xe3\x2c\xc1\x7b\x2a\x3c\xbd\x91\xb2\x53\xa1\xd3\x61\xca\x5d\x95\xa8\xbf\x99\xf6\x24\x8c\x2f\xef\xee\xc4\x94\xa6\x3f\x45\xe1\x6c\x06\xd1\xa0\xe3\x3c\xa6\x8f\x10\x64\xae\x06\x1d\x87\x1c\x0a\x71\x76\x28\x50\x3d\xa5\xa3\x03\x36\x86\x9f\xa0\xa6\xb3\x62\x4a\x1d\x5a\x0f\xd7\xce\x81\xd8\xa0\x91\x9c\x79\x61\x6c\x7d\x67\x05\xe1\x15\x5b\x7c\x0e\x6c\xe0\x8d\x30\x59\xb6\x1f\x92\x05\x3d\xc5\x4e\x29\x47\xf5\x06\xfa\xb8\xe3\x80\xb4\x58\xcd\xdf\x26\x49\x82\x21\x3a\x47\x49\x04\x47\x36\xe7\xfc\xc2\x78\x92\xd8\xe3\xbf\x39\x20\x19\x79\x2e\x4e\xe6\xdf\xa4\x2e\xe3\xcc\x18\x09\x7c\xd3\x07\xd1\x48\x6a\xd2\xc2\x38\x86\x88\xbd\xe8\x26\x5b\x5c\x23\x4a\xfb\x27\x29\x5c\x92\x63\x0f\x44\xe6\x83\x23\x77\x1e\xc5\xbc\x3d\xa6\x34\xac\x3a\x85\xe8\x39\xb7\x28\x3d\xe7\xca\x0f\x24\x39\xd1\x35\x07\xd2\x42\x39\x90\x20\x85\x6f\x53\x54\x0b\x85\x03\x09\x73\x57\xce\x05\xd5\xdd\x92\x66\x53\xe1\x77\xc5\x1e\x9d\x51\x7e\xf8\x75\xc2\x7d\x1b\x9d\xe5\x12\x50\x1e\x51\xa3\x00\xde\x74\x86\x3f\x49\x4a\xfc\x18\xa2\x14\x9f\xc4\xfe\x34\x41\x1d\x68\x80\xd1\x94\x03\xca\xbb\x1a\x7e\xd7\xdf\xd9\x91\x9e\x35\x99\x33\x61\x7f\xfc\x58\xfd\x31\xbc\x5d\x96\xc0\x10\x86\x13\x46\xe7\x7f\xc5\x48\xf8\x8b\xfe\x15\x23\x97\xde\x79\xee\xa7\x67\x64\xf4\x23\x72\x65\x39\x40\xc0\x71\x8a\x29\xfb\xff\xd9\xfb\xf7\xf6\xb6\x71\x24\x51\x18\xff\xdf\x9f\xc2\xe6\xef\xb7\x5a\xb2\x03\xd1\x76\xd2\xd3\x3b\x47\x3d\x6c\x4f\x3a\x49\xcf\xe4\x74\x92\xce\x89\xd3\xbb\xef\x39\x5a\xbd\xfd\xc0\x24\x2c\x71\x4c\x81\x6a\x00\xb2\xe3\xb6\x74\x3e\xfb\xfb\xe0\x46\x82\x24\x78\x93\xed\x44\x4a\x6b\x9e\xdd\x8e\x45\x16\x40\xa0\x50\x28\x54\x15\xea\x32\x18\xa0\xa3\x0a\x27\xd1\x42\x96\xe7\xdd\x95\x37\x6f\x66\x88\x5b\x40\x42\xd1\x6b\x2c\x72\x44\x2a\xcf\x17\xdd\x37\x20\x81\x81\x97\x94\x22\x2a\x3c\x49\x1d\xce\xb6\x60\xfe\x8a\xca\x64\x9c\xfc\xcc\x10\x3b\x04\xd0\x00\xd6\xee\x8b\x34\xa0\x82\xcc\x61\x81\xcc\x41\xdc\x77\xbb\x24\x41\x5c\xfb\x8d\x65\x90\xf0\x6f\x1c\xa4\x3f\x2c\xcf\xf8\x77\x20\xa5\x6f\x62\x2a\x1c\xf9\x5d\x07\x5e\xa4\xd7\xc8\xf1\x46\xe6\x0b\xe9\x53\x98\xbd\x03\x25\x8c\x9f\x02\xbd\x12\x01\x59\xa3\x84\xa2\xc3\x5a\x6c\x8a\xc5\x29\x9b\xb2\x93\xce\x66\x2c\xe9\x99\x4b\xb7\xd3\xe7\xe9\xaf\xe1\xc7\xf7\xf1\x2f\xf3\xa8\xc6\xc3\x02\x2f\x96\xec\x75\x64\x64\x2a\x6c\xb7\x1a\x7d\x0b\xbe\x2d\xdb\x6f\x95\x7c\x69\x51\x76\x44\xc2\x10\x85\xa0\xc3\x19\xa4\xc3\x1a\xed\x67\x2b\x8c\x29\xdf\x76\xd3\x3a\xee\x6d\x13\xe9\x6a\xf4\xe0\x1f\x92\x76\x87\x3a\x1f\x8a\x04\xb1\x8a\xaa\xe7\x94\xe8\x72\xa8\x7d\x4a\xd4\xed\x01\x70\x54\x4d\xa3\xec\x85\xf6\xe0\x70\x7e\x6b\x09\xd1\xee\xe9\xb5\x51\x51\x88\x49\xf9\xb2\xe4\x9e\xd6\x81\x7b\x5b\x08\xbe\x35\x72\xb4\x19\x35\x49\xba\x97\x00\xd9\x50\xcd\xaf\x77\x90\xc8\x9d\x02\x2c\xea\xbb\xa5\x70\x8a\xea\xbe\x26\xc5\xc2\xf9\x2c\xbd\x39\x54\x74\xa0\x29\xcc\x9e\xcc\xbd\xed\xee\xbe\x6e\x21\x6b\x9d\x05\xca\x68\x49\x13\x39\x40\xe7\x59\x1d\x4a\xec\x69\x26\x2a\xf7\x4f\x38\xcd\x68\x3e\xa6\x43\x34\x5f\xb0\xdb\x3c\xd5\x9e\x2c\xce\x6e\x5a\x28\x0a\xd7\x6b\xd9\x05\x57\x86\xc4\xc2\xad\x5b\x7e\xc5\x66\x5e\x38\x75\x5e\x88\x7e\xb5\x6a\x81\x49\x79\xad\x05\x0f\x9a\x72\x6c\x94\x10\xd8\x5e\xae\xe3\x73\x90\xde\x3f\xe3\x08\x75\x21\xbd\x5e\x55\x46\x3a\x6c\xf6\xec\x93\xdd\x0a\xef\x64\x06\xaa\x3a\x56\x50\x37\x90\x4e\x2c\xa2\xa9\x7c\x42\xd7\x8a\x55\x6d\x86\xae\xa7\xe0\x59\x9d\x05\xab\x8b\xcb\xcc\x83\xf8\xb7\x5a\x45\xa1\x07\x74\x72\x6d\xb3\x2f\x59\xaf\x25\x1f\xde\x7d\x26\xd3\x4a\xab\x2a\x49\x4f\x5d\x04\x88\x68\x68\xd1\x48\x8f\xdd\xc5\x40\x44\xb3\xac\xfb\x7b\xf4\x4e\x87\x49\x4c\xb7\x25\xe2\xf3\xcd\x5f\x7f\x8d\xff\xe3\x3f\x6a\x52\xdc\x29\x31\xb3\x4b\xf4\x89\x35\x43\xe9\x47\x38\xed\x95\x12\x3a\xef\xee\x2f\xe0\x69\x87\xbc\xd1\xa7\xdf\x72\x0e\x50\x0d\x00\xd5\x38\x96\x61\x9f\xba\x30\x54\xa1\x92\xf4\xa4\x2d\xa7\x56\x4b\xbe\xea\xa8\x26\x2f\x93\xf1\xe5\xfe\x29\x9a\x33\x96\x99\xa5\x47\x15\xfc\x72\x22\xb8\x5c\x1b\x7f\xe4\xc8\xbe\x8f\x51\xbe\x38\x48\x9b\x5c\x5f\xe7\x0a\xac\x57\xba\x8b\xb3\x6b\x7d\x8e\xa9\x66\x0f\xc5\x2e\xb9\x46\xdb\x93\x49\xf7\x4d\x9e\xb6\x39\x87\x35\x37\xf9\x17\x4c\x10\xa3\x77\x7b\x34\x84\x82\xbf\x6d\x07\xd7\x41\x3f\xbf\xfd\x1f\xf1\xff\x39\xff\xf9\x73\x67\x47\xb0\x63\xc3\x58\x9e\x8a\xed\xba\x62\x7d\x3a\xb1\x5a\x9f\x4e\x4c\xeb\xd3\xc9\x64\x84\xd1\xcd\xe1\x7f\x21\x78\xf5\x16\x2e\x94\xe5\xed\x6e\x6a\x56\xb2\x61\x79\xe2\x56\x24\x8d\x49\xc2\xe8\x99\x95\xa5\x20\x63\x3c\x59\x03\x5a\x6a\x02\x88\x36\x8a\x66\x8d\x14\xbc\x1c\x52\x10\x04\x70\x30\x70\x61\x70\xb7\x06\x48\x9a\x4e\x00\xf4\x3c\x00\xc7\x78\x12\x10\xf1\xcf\x7a\xbd\x76\xf9\x11\x7f\x7c\x77\xe7\x8e\x9f\x0f\xff\x0f\x1c\xfe\xe1\x9f\x0c\xff\xc7\x6f\xc3\xc9\x13\x6f\xbd\x3e\x9e\xb6\x64\xc5\xed\x40\xa2\xd0\xb1\xde\x3d\x49\x7f\x76\x87\x70\x11\xd6\x91\xb6\x2f\x67\x02\x08\x4a\xca\x57\x0d\x45\x44\xe5\xe6\x43\x9c\x1b\xdd\x90\x57\xc2\x8d\x30\xd0\xa8\xa2\x39\x4c\xd5\xcb\xe1\x03\x23\x98\x13\x49\xc9\xc6\x79\x88\xd3\x74\x81\x30\x22\x87\x38\x25\xe8\x12\x11\x82\x88\x53\x35\xbd\xab\x31\x02\xe7\xb7\x8b\x04\xe2\x2b\xc7\xcb\x2a\xa0\xe4\x40\x52\x02\xf0\xc0\x35\x24\xf4\xc1\xe6\x51\xea\xbf\x7a\x27\x20\x30\x69\x74\xe3\x68\xb2\x16\x2e\x9e\x1e\xe0\x00\x8f\x31\x9a\xfc\x3b\xba\x80\x0b\x0c\xcc\x61\x70\x2c\x38\x25\x92\x3c\x12\x24\x99\x47\x42\x9e\xb9\x2c\x60\x59\x96\x61\x52\x36\xb2\x89\xe2\x34\xea\xea\x0c\x87\x69\x84\x7e\xfd\xf0\x3a\xa3\x35\xe3\x5e\x0f\x8a\x92\x2a\x8e\xe3\xa9\x42\x37\x38\x77\x94\x13\x57\x37\x25\x1c\x7a\x23\xf1\xbc\x6f\x7e\x62\x65\x78\xd9\xa6\x64\x92\xd7\xe8\xed\xcf\xf0\x78\x5e\x97\xa1\x43\xe6\x21\x6e\x92\xd8\x72\x95\x3d\x4b\x41\xfc\x4c\x78\x56\x8a\x4c\xc4\x75\xae\xa3\xb9\x2b\x41\x01\xa8\x10\xdf\xf4\xd4\xa6\x81\x3b\x05\x1c\x96\x6d\x58\xc5\xd6\xdd\x95\x71\x6b\x05\x7a\x53\xe7\x7e\xc6\x39\xcd\x65\xb1\xad\x9c\xf6\xa4\xce\xab\x55\xa9\xd7\x66\x62\x66\x8b\x7e\xdd\x75\x3e\xb6\x01\xe4\x41\x20\x16\xe7\x56\x2d\xc7\xce\x20\x9d\xe5\x89\x7e\xb5\x49\xad\x36\x2d\x71\xc9\xe8\x56\x14\x6a\xef\xeb\x24\x5b\x25\xff\x7b\x4b\x32\x6d\xaa\xa1\x11\x7e\xa1\xfd\x07\x8e\x4e\x6b\x14\xc6\x14\x5f\x24\x4b\xf2\xa8\x4a\xa4\xba\x74\xe5\xa2\x1c\x3f\x31\x8c\x1b\xc7\xec\x91\xfb\x50\xa9\x85\xf2\xaf\xe8\xcb\x12\xaf\x31\x71\x4a\xc7\x6e\x15\x1a\xe5\x4d\x2e\x8c\xa2\x17\x9c\x60\x7e\x59\x32\x1a\x47\xe8\x8d\xfa\xa2\xeb\x8d\xea\x87\x50\xd3\xa6\x31\x05\x59\xb5\x9f\xca\x1c\x61\x14\xe5\x41\x26\x51\x1a\x8a\x41\xbb\x9e\xa6\x68\x33\x15\x99\x77\x27\xa3\x3b\x62\xaa\xc6\xe0\x22\x5f\x6c\xa6\xec\x8a\xce\x1b\x0c\x6a\x40\x2c\x25\xed\xcc\x56\x2e\xf2\x05\x5f\xc8\xef\xf8\xca\x4f\x82\xa3\x53\x80\x72\xb5\x5f\x7b\x50\x28\x28\x7e\x86\x20\xdb\x7c\x65\xb0\x49\x83\x09\x62\x78\x1a\x04\x81\x9b\xdd\x3b\x13\x94\x88\x03\xcd\x17\xfb\xec\x97\x4b\xd7\xd1\x62\x8a\x23\x26\x67\xcf\x7e\x51\x1a\x69\xf5\x19\xe0\xa7\x2e\x3f\x68\x18\x8c\x13\x23\x60\x84\xef\x1c\xb7\xe4\x2f\x22\x67\x58\xf0\x17\x41\x13\x6b\x85\xc3\xea\x77\x54\x96\x9e\x5a\xfa\x02\x45\xe3\x49\xc1\x0f\x45\x21\xd2\x16\x9d\x72\xd0\x72\x3e\x5f\x21\x5c\x63\x4c\xd9\x86\xdb\x3c\xf2\x3e\xf9\xf6\xf5\xeb\xff\xc7\x9e\x0a\xb3\xd7\x1d\x5e\x9d\x73\x76\xd5\xea\xd2\xbf\x04\x97\x36\x39\x54\x3c\xe0\x78\xbf\x46\x7d\x02\x27\x47\xb7\x38\xc4\xc6\xce\xdf\x89\xf4\xfe\x51\xf9\xd0\x45\x3f\x32\x7c\x25\x25\x6c\x78\x71\xcb\xd7\x43\x66\x4f\x4f\xc9\xeb\x97\x23\x48\x43\xa7\xc6\x78\x5e\x67\xdd\xa8\xba\x76\x86\x9d\xfc\xd0\xb3\x59\x35\x55\x7c\x6f\x72\x39\x97\xd7\x0b\x19\x44\x56\xf0\xbe\x57\xb9\x5a\xab\x79\xa2\x65\x50\xf5\x57\x9e\x75\x17\x5a\xb3\xb2\xa5\x26\x47\x79\x93\x39\xdb\xda\xf4\x3c\x4c\x17\xb5\x65\x99\x6b\x5b\xbd\x44\x34\x24\xb1\x46\x95\xc5\xa4\xd4\xc9\x12\xd5\x82\x98\x9a\x6b\xc1\xf6\x6b\xbe\xc6\x4b\x15\x7b\xd0\xb5\xbd\xae\xbe\xa0\xff\x72\x61\x7d\x13\xd9\xa5\xcb\x25\xad\x41\x96\x8b\x42\x68\xed\x77\x62\x06\xeb\x67\x26\xb0\xbf\x02\x87\x91\x25\x17\x37\x91\xe1\x09\x5c\xf8\x0c\xf8\xab\x16\x53\x8b\xf1\x1c\xdd\x6f\x2e\xfa\xe1\xe9\xd4\x12\xd1\xfc\x26\x0d\xa1\x10\x66\x9d\x44\xfc\x05\x9c\x69\x92\x5e\x88\x04\xf1\xf5\xe5\x83\x1e\x6a\x40\x95\x7a\xf1\x79\x44\x7c\x81\x16\xfb\xa3\xa6\x85\x56\xdb\x6a\x5a\x3f\x4a\x1a\xa5\xf2\x31\xb7\x15\x85\x16\xe4\xa0\x64\x8d\xe4\x63\x99\x44\xef\x93\xca\xac\xf6\x88\x1a\x72\xfe\x40\x1c\xb0\xe6\x20\x1c\xa0\x92\xb8\x8d\x9c\x38\xe2\x1d\xa5\x78\x74\xf7\xe1\xd5\xf9\xc7\xe7\x1f\x3e\x8e\x32\xc7\x57\x47\x16\x12\x70\x40\x98\xe2\x68\xe4\xc4\xf4\x5c\xfe\x5e\x83\x0c\x62\x41\xd2\xeb\x98\xf3\xe0\xf5\x64\x2d\x2b\x6a\xd3\xd1\x1d\xef\x72\x74\xb7\x06\xb2\x39\xff\x4b\x83\x8d\xee\xf8\x87\xce\x7f\x7d\xf1\xe2\xd5\xf9\xf9\xc8\xf9\xd7\x0d\x73\xd6\x6b\xf0\xaf\x1b\x56\x7a\x21\xc6\xca\x5f\x89\x3f\x46\x77\xb2\x36\x72\x0f\x24\x5b\x44\x9c\x9e\x2b\x53\x91\x82\xca\x45\x5e\xa5\x4c\xa3\x96\xe9\x0a\xdd\x52\x55\x14\x57\x3d\x99\x22\xf6\xcb\x0d\xd6\x0b\x27\x2b\xc8\x52\x6d\xc7\x6c\x82\xe1\xdd\x30\x51\xa2\x97\xf8\xb2\x26\x8f\x5b\x10\xef\x8b\x05\xb2\x8a\x5d\xe8\x0d\x9d\x12\x31\x46\x1f\xe1\xe5\x5c\xd6\xb8\x5d\x7b\xc2\xd2\xb3\x58\xd2\x59\x96\x31\x90\xe4\x66\xba\xbc\x84\x2d\xd1\x37\x78\xda\x13\xf1\x30\xc6\x87\xe8\xac\x8e\x1c\x99\xa6\x41\x0c\xf2\x8f\x8d\x8e\x4e\x38\xcd\x5c\xc6\xd3\x65\xf6\xfb\x86\xc4\x2a\xf8\xff\x64\xed\x8d\xd0\x98\x4d\x02\x0c\xd0\x03\x15\xb4\x85\xcd\xb2\xe5\x09\xfd\x3f\x27\xd7\xe1\x3f\x7e\xb2\xcb\x96\xe7\x72\x27\x3a\x22\x87\x9f\xa3\x1d\x9b\x1c\x23\xa7\x69\x96\x07\x51\x56\x00\xab\x08\x9d\x7f\x01\x66\x1a\xd5\xec\x38\xa6\x24\x14\x02\x9f\xdc\x6a\xd2\x32\x21\x0c\x47\x2a\xb3\x6a\x6d\xa1\x2a\x5d\x6a\xd4\x49\xe3\x28\xcc\x6b\x54\x65\x9b\x0d\xe8\x9d\xd9\x1e\xab\xc2\xbf\xf3\x9d\xe9\x8f\x51\x0c\xb9\xe1\x3b\x5b\x48\x0c\xd9\xe6\xae\xb7\x27\x65\x20\xb6\x3a\x3b\xf5\x3e\x5b\xc7\xd5\x43\x5d\x17\xbd\x98\x00\x27\x17\xe4\xd5\x24\x8f\xb5\xd8\xcb\x67\x3e\xe9\x5c\x15\xf7\x3b\xe3\x42\x4c\xcd\x51\xe5\x89\x73\x54\xed\x27\x82\xac\x79\xc5\x2c\x92\x95\x08\x41\xd6\x8c\xb2\xb8\x96\xb9\xd9\x8d\xff\x8d\x08\x49\xf3\x42\x58\x05\xbf\x92\xef\x24\xce\x24\x83\x39\xa6\x28\xb9\xcc\x26\xa6\x2b\xbc\xf6\x0f\x54\x6a\x8e\xbb\x57\xa3\xb1\x94\x41\xea\x24\x58\x76\xc0\x62\x46\x80\x9f\x1f\x8f\x7c\x27\x1c\xeb\xef\x37\xa3\xf2\xf7\x25\x5a\x22\xa7\xa9\x3a\xd9\x5f\x81\x33\x5f\xe6\xaa\xa0\x31\xad\x5c\xc4\x1c\xe7\x75\xca\xc4\x44\x9c\xa6\xf4\xc7\xfc\xaf\x6f\xe5\x48\xd5\x19\x56\x0e\x23\xfe\xf2\x8b\xc7\x0f\xdb\x6e\xeb\xf6\xaf\x1b\xd6\x77\xd9\x0a\x68\x04\xce\xf3\x25\x9b\xfd\xfa\xe1\x4d\x96\xc4\xa7\xf7\x92\xc8\xc1\x7e\xc5\xab\x21\x25\x9c\x2f\xb4\x8f\xe0\x92\xcd\x52\x12\xff\x81\xb2\x8d\x64\xac\x9d\xae\xd5\x91\x73\x62\xbe\x18\xc0\xd1\x8d\x20\xc7\xda\x8b\x34\x6a\x07\x3a\xd7\xc9\xbf\xb7\x87\xd1\x55\x5f\x7e\x57\xeb\x61\x06\x9e\x02\x4e\x47\x7f\xb9\x67\xb0\x64\x45\x2c\xcd\x54\x12\xda\xa8\x92\xc0\xda\x7b\x81\x07\x75\x09\x13\xd2\x48\x90\xa9\x39\x86\x19\x56\x9f\xf7\xa3\x6a\x86\x0d\x75\x9c\x06\x2a\x5d\x2b\x97\x57\xac\x51\x29\xc8\xe7\xb4\xeb\xb3\xf4\x7f\x9e\xff\xf2\x2e\xa8\x66\x24\x32\x61\x75\xca\x6c\x16\x9c\x7e\xcf\xfe\x56\xf6\x25\xf8\x9e\x3d\x79\xa2\x2f\xf4\xf9\x72\x1d\x19\x0e\x05\xcc\x74\x28\x60\x22\x9c\x85\xfd\xdb\xd3\x33\xac\x44\x71\x17\x7a\xe0\xe8\xc4\xb3\xe4\x0a\xe7\xd2\xb4\x90\x61\xe1\x98\x4d\xbc\xb5\xe7\x8d\x5a\xa4\x6a\x6a\x95\x83\x63\x44\x5d\x04\xda\x9a\xba\xd0\xf3\x46\xc6\x98\x6a\x06\x54\x2f\x68\xb7\x49\xfc\x10\x30\x69\x49\xd7\x97\xc2\x6b\xf7\xce\xb0\x28\x8a\x95\xca\x7f\x03\xb9\xb8\xfa\x85\xfe\x05\xde\xe9\x42\x65\xf2\x79\xf6\x73\x0d\xee\x38\x57\x7f\x8b\xd8\x2c\x8d\x4a\xe9\x7a\xf3\x17\x67\xa5\xdf\x0a\x70\xed\xad\x4b\x46\xed\x6a\x12\x5e\xda\x41\xc3\x9b\xa7\x53\x02\x17\xb3\xdb\xa1\xf8\x67\x3b\x6e\x99\x2f\x9e\xa2\x5f\x6e\xfe\x35\x4b\x7b\x26\xfa\xa4\xd7\xd3\x82\x39\x4d\xc6\xdd\xca\x24\x40\x42\x4d\x90\xc9\x48\x32\x47\xee\x99\x0a\xa8\xb3\x02\x58\xc3\x49\xa6\x76\xa7\xbb\x0c\x89\x8e\x36\xbd\x11\x88\xa9\xac\xb4\x2b\x53\x10\x89\x07\x62\x82\x4a\x74\x17\xfe\xcb\x3a\x31\x92\xfc\x2a\x78\x9a\x49\xec\xe0\xb0\x13\x98\x57\xcd\x55\x54\x30\x52\x4d\xbb\xd9\xb2\xc2\x98\x84\x35\x11\x39\x17\x30\xbc\x9a\x92\x74\x89\xb3\x1a\x58\x24\xc3\x97\x30\x87\xab\xa6\xce\x89\x2e\xa6\x51\xe7\x6e\xde\xe5\x6b\xf0\x53\x4c\x5b\xbe\x73\xfa\x99\xbe\xf3\xf4\x33\x7d\xe7\xd9\x43\x7c\xe7\x22\x25\xaa\x7c\x70\xc3\x97\xbe\x6d\xfe\x52\xbd\x8b\x79\x2d\xdd\x27\x31\x46\xa5\x90\x15\x9b\x8b\x66\x14\x53\x06\x71\x88\xba\x39\x68\x6a\x77\x88\x18\xa3\xc2\x66\xae\x6c\x29\x92\x32\xbd\x9f\xa4\xe9\x55\x3e\x10\xe2\x88\x97\x67\x15\xb9\x7d\x9a\xa1\x43\x82\xdd\x66\x4b\xcb\x5f\x0b\x41\x10\x73\xd1\xab\x08\x15\x55\x80\xf4\x34\xca\x80\xfa\x71\x19\x9e\xa2\xe9\x5c\xfa\x03\x9b\xe0\xfa\xa9\x75\x2d\xba\x39\x99\x6e\xb6\x56\xf0\x02\x25\xed\xf1\x45\x0d\x44\xb6\x48\x63\x2c\x73\x06\x9f\x08\x1a\x73\xfe\xd2\x14\x5d\xd2\xc6\x32\x95\x5f\x49\x0b\xb3\x3c\x91\x8c\xf0\x5b\x9d\xa2\x94\x2a\x4e\xd3\xc0\xfa\x1a\xe9\xe8\x04\x38\x9f\x9e\x3a\xc0\xf9\x8f\x93\xe6\xb1\x1b\x1d\x30\xf4\xa9\x58\xc6\xf6\x13\x6f\xff\x17\x8d\x88\xdb\x2c\x99\xec\x09\x70\x22\xfe\xcb\x7f\xf6\x54\xfa\x7b\x1b\x37\x2a\x32\x6e\x7a\x88\x97\xfc\xd4\xcb\x36\xc6\x3c\x4e\x92\x58\x56\x98\xd6\x13\x13\x9a\xc8\x1c\x7e\x8a\xe7\xcb\xf9\x4f\x44\xca\x8d\x2f\xe3\x69\xcc\x64\xd5\xe6\xc9\xa4\x70\xb1\x31\xb7\x84\x0a\x36\xd3\xc8\x63\x2e\xcc\xe9\xd7\xba\x30\xa7\x3b\xbe\x30\x4f\xbf\xd6\x85\x79\xba\xe3\x0b\xf3\xec\x6b\x5d\x98\x67\x9f\x61\x61\xda\x63\x2d\x1e\x2e\x60\xcd\xaa\x25\xd9\xfc\xf6\x73\xcf\xe6\xd3\xef\x4e\xbe\x41\x6b\x40\x82\xe2\x95\x97\xbe\x02\xfa\xe1\xe4\x2c\x4b\xcb\xc0\xbe\x41\xde\xf1\xe9\xc9\xc9\xe8\x64\xbd\xb1\xff\xbb\xc8\x7b\xf2\xec\xd9\x77\x20\x1f\xeb\x48\x64\x44\x1a\x0d\xff\x87\xfe\xdf\xc6\xf6\x0c\x21\x14\x04\x63\xec\x9e\x7a\x00\xbb\xfe\xd3\xbf\x88\x7f\xe4\x7f\xff\x43\xfc\x73\xea\x4d\x24\xac\xa4\x6d\x0e\x3b\x54\x70\x43\x5f\xfd\x23\x21\x87\xa7\xde\x64\x0d\x4c\x7a\xa9\x24\xfb\xc9\x05\x46\x91\x93\xa7\x4b\x4e\x1f\x0e\xa6\x5d\xbf\xc7\xc4\x7d\xfa\x17\x80\x3c\x40\xdc\xbf\x9c\xc8\x7f\xff\x43\xfd\x3e\x3d\xe1\x0f\x26\x42\x2d\xd6\x1f\xa9\x7c\xde\x50\xe7\x2c\x5f\x16\xdf\xab\x66\xf4\x31\x1a\xe5\xde\xa9\xe2\x35\x30\xe6\xe3\xad\x56\xe3\xc9\x01\xb6\x9b\x29\x44\x1a\x65\x01\xf8\x43\xde\x1c\xa9\xb9\x19\x29\xa2\xf5\x33\x90\x37\x10\xae\xe5\xf2\x1e\x34\x6f\x8a\xf3\x9c\x44\x22\xb8\xe3\x87\x67\xdf\x9d\x68\x7b\xcf\xb3\xef\x4e\x8e\xc9\x01\x0e\x70\xf5\x3e\xd4\x24\xd3\x93\x20\x60\xab\x15\x0b\x02\x32\x3c\x5d\xad\x44\xe2\x19\x02\x71\x94\xce\x5d\xef\x6f\xc2\x7f\xbd\xe6\x7b\x79\xac\xc2\x1c\x2e\x5c\x6b\x55\xd7\x3b\x29\xae\x8f\x9e\x7d\x77\xf2\x0d\x3e\x26\xe0\xf6\xe9\x28\x9f\xcf\x71\x15\x01\xdf\x0c\x4f\xbf\x3b\x01\x5c\x52\x1f\x31\x9f\xff\x93\xad\xa0\xd1\x0e\x28\xf1\x7a\xc4\x7c\xf5\xd7\x7a\x2d\x0d\x38\xbd\x5d\xef\x45\x00\xdc\x76\x98\x43\xa6\x09\x7e\x79\xbe\x7c\xde\xbb\xb2\x70\x96\x06\xb3\x18\xce\xe7\xfc\x5d\xba\x1a\x88\x4c\x1e\x7f\x4f\xf1\x3f\xe3\x48\x18\xbb\x63\x7a\x3e\x13\x65\x15\x9c\xbf\x47\x4b\x02\xd5\x8d\xed\xdf\x85\xdf\xa7\xc8\x25\x98\x2e\x16\x88\xbc\x48\x31\x83\x31\x16\x76\xed\xbf\x53\xde\x54\x5f\xc2\x66\xbd\x4e\xb2\xfa\xd8\xe9\x7c\x91\x20\x96\xe5\xbd\xd4\x5f\x50\x3f\xb3\xaf\x4c\x2c\x45\x46\x14\xe4\x04\x38\x38\xc5\xa8\x7a\xe1\x29\x87\x25\xb8\x7a\x7a\x2d\x94\xdf\x62\xf1\x04\xce\xd0\x86\xd7\x31\xba\xa9\x36\x5d\xa8\x7c\x41\xa2\x35\x13\x19\x37\xbb\xdc\xf9\xb6\x16\x2c\x7b\xa8\xc3\xc6\x20\xbd\x2f\x19\xba\x97\x92\x38\x1e\xc6\x97\x7c\x8a\x43\x11\x2f\x33\x4b\x13\x71\x9f\x61\xba\x80\x08\xa8\x4e\xcd\x1e\xcd\x07\x36\x33\xb4\xf7\x9a\x5e\x21\x2b\x80\xdd\x6d\xb7\x06\xfc\xfe\x13\xa9\x6d\xa0\xb7\x32\xb8\x2b\x7a\x7e\x4c\x6d\x57\x06\x87\xf9\x0d\x83\x88\x2d\xb2\xce\x57\x14\x36\x49\x10\xa1\xc7\xfc\x80\x8f\x43\xb5\xad\xed\x5e\x3c\x32\x09\x36\x49\x97\x2c\xc6\xd3\xe3\xbc\x68\xa8\x2c\xf5\xd3\xe4\xbd\x63\xbd\x7e\x88\x2f\x5d\x51\x91\xd3\x8f\xa9\xac\xcc\x89\xbc\x2c\xc0\xd0\x45\xde\xda\x45\xde\x6a\x55\x6a\xe0\x2c\xb1\x9c\x46\xe4\x1c\xe9\xa4\x59\xd2\x8b\x67\x30\x90\xff\xfa\x31\x43\x04\xb2\x94\x1c\xc6\xda\x65\xc7\xe8\x58\x7e\xf0\x92\xa4\x73\xcb\x17\xf8\xa8\xe3\x4b\xf7\x08\x29\xe8\x9a\x14\x5d\xf9\x18\x75\xa0\x59\xe6\x94\x94\xa7\xde\x64\xe9\xb9\x68\xe8\x87\x30\x49\x5c\xe4\xf9\x34\x89\x43\xe4\xfe\x15\x0c\x4f\xbd\x03\x47\x82\x3b\x41\x10\xe0\xc1\x40\x14\x81\xa6\x8c\x2c\x43\x96\x12\x91\x85\xb1\xf0\x44\x56\x6f\x16\x63\x79\x0b\x17\xa2\xcd\x6a\xe5\x9c\xcb\xcb\x20\x6c\x9d\x98\x00\x7e\xae\xc5\x34\xd5\xe4\xf8\xff\x75\xcf\x46\xbf\xc6\xab\xd7\x1e\x66\xee\xd9\xe8\xaf\xab\xd3\xef\x56\xcf\x9e\x7a\xee\xd9\xe8\x45\x02\xe7\x0b\x14\x79\x67\xa2\x93\xff\xff\xb1\xcf\x10\x65\x2e\xf6\x8a\x33\x2d\x61\x8b\x8b\x87\x24\xbd\x39\xc4\xe8\xe6\xf0\xe3\xed\x02\xbd\x22\x24\x25\xae\xf3\x1a\x8b\x04\x7f\x87\x90\xf1\x43\x8a\x1d\xb2\xf4\x90\x2e\x08\x82\xd1\x21\x4e\xf1\x50\xac\xcd\x45\x82\x0e\x63\x2c\x4f\x64\xff\xbf\xf1\x6b\x7c\x28\xec\x93\x1c\xf4\x02\x1d\x6a\x10\x20\x1a\x40\x3e\xa2\xc3\x54\xa0\x8b\x1e\xce\x97\x94\x1d\xce\xe0\x35\x3a\x84\x87\xe3\xd2\x72\x4f\x5c\xef\x70\x2e\x6e\x40\x7c\xc7\x5b\xbb\x5e\xc9\xbf\xca\xbb\x73\x39\x13\x97\x02\xcb\x0f\x48\xdd\x71\x79\x22\xc7\x5c\xf6\xeb\x20\x2b\x22\x1b\x9c\x00\x62\xd4\x8c\x65\xde\xf7\xf8\x6f\xec\x7b\xfc\xe4\x89\x47\xc6\x78\x12\xa0\x31\xd6\xd5\x61\x0f\xc9\x03\x7b\x54\xbd\xc8\x36\x65\xc6\xa5\xf9\x96\x43\xa4\x26\x32\x49\xbe\x14\x79\x51\x53\x52\x5f\x81\x32\x25\xc8\xf1\xc0\x25\x42\xd1\x05\x0c\xaf\x6a\xc0\xf4\x6b\xc7\x33\x93\x26\x66\x97\xd7\x95\xfc\x77\xc4\x88\xaa\xd1\x6d\x45\x35\xfe\x25\x43\x6e\xa1\x4e\x80\x2f\x46\xe0\x87\x09\x82\xc4\xd5\xe1\x99\x32\x0b\x9e\xbc\xb2\x94\x1d\xd2\x40\xfe\x3a\x30\x8b\x60\x12\x5f\xba\x2f\x49\x90\xd4\x90\x29\xa9\xbc\x3c\x97\xce\x4d\xde\x6a\xa5\x21\xc5\x25\xda\x41\x6a\xb4\x15\x4f\x06\x03\x17\xaa\xdf\x81\xf3\x7f\xb3\xa8\xdb\xd4\xf3\xd6\x6b\xde\x75\x9c\x77\xfd\xcb\x0d\x46\xc4\x25\x1e\x48\x02\xe2\x4b\x14\xfb\xe1\x92\x10\x84\xd9\x07\xfe\x4b\x16\x39\x58\x06\xb1\x9f\xa4\xe9\xd5\x72\xa1\xd6\x61\x94\x75\x9a\x78\x59\xac\x69\x19\xc6\x64\xb5\x9e\x4f\xd0\x25\x41\x74\xe6\x7a\x9c\x7b\xcc\x63\x8a\x7c\x19\x34\x6a\xa2\x6f\xed\x79\x3e\x9b\x21\xec\xba\x16\x55\x32\x11\xd3\xb4\x8c\x91\x4f\x79\xb5\xca\x23\x5d\xd5\xd4\xcf\x96\x7e\xce\xbb\x3f\xa6\x4a\xb5\x5b\x02\xec\xba\x27\x79\x0a\x60\xcf\xb5\xf6\x09\x20\x88\x3d\xcf\x1b\x21\x21\x35\x03\x24\xcb\x37\xdb\x86\x85\xd6\x1e\xb8\x93\x71\x33\x5d\x64\xeb\xfc\x24\x8a\xc2\xcf\x26\x51\x5b\xf6\x5a\x61\xb4\xac\xcb\x68\x8f\x61\x98\xd0\xe3\x90\xa0\x92\x7b\x31\x68\x69\x21\x3c\xf5\x1f\x5f\xec\xd1\x33\xeb\x24\xde\xd5\x8c\xf2\x0b\xae\xc7\xc5\x32\xe6\xf2\x61\x1d\xc3\x4a\xc9\xdc\xf1\xda\x6b\x61\x6d\x66\xd9\xe0\xbd\xcb\xfb\x76\x35\x0a\xf1\xc4\x75\x60\x98\x38\x32\x1c\x3d\xf7\x47\xa8\xc9\x2a\x7b\x60\x7c\xca\x2d\xba\x2e\xfb\x04\x45\xcb\x10\x15\x74\x6b\x9c\x25\x0a\xc0\x2a\x51\x80\xb8\xce\x1e\xf1\x03\x27\x60\xe2\xf3\x5c\xc7\x7f\x09\x19\x74\xf9\x33\x8f\xf3\x2a\xf1\xcb\x70\x42\xf0\x00\x2a\x46\xf7\x55\x13\x06\x69\x67\xea\x2c\xc4\x11\xa7\x64\x0e\x93\xf8\x0f\x55\x94\x49\x88\x36\x19\x0e\xfc\x19\xc4\x51\xa2\x5e\xe1\xf2\x96\xee\xb1\x49\x3e\xaf\xbe\x6c\xa1\xa6\xdf\x97\x88\xdc\xbe\x17\x69\xed\x47\x77\xd2\xb6\xf1\xe3\xed\xe8\x0e\xd2\x91\x74\x01\xe6\x8b\x0a\x49\x38\x93\x8f\x24\x80\x03\x54\x42\x00\xfe\x49\x03\xad\x14\xe1\xe8\x45\x92\x62\x54\xcd\xdd\x24\xca\x89\x3b\x61\x22\x54\x53\x74\x0f\x84\x2d\xd2\x24\x0e\x63\xb4\x09\x7b\xc9\x9a\xee\x06\x9f\x29\x0e\x77\xdb\x19\xce\x03\x33\x14\x31\xf9\xdb\xed\xe7\x29\xf7\x26\xe3\xed\x62\x00\x34\x25\xec\xc7\xdb\x91\x08\x08\x75\x40\x14\x8e\x1c\x2e\x7b\x70\x46\xa0\xd8\x41\x2b\x37\xd8\x14\x21\x24\x4d\x36\xda\xd4\xb2\xdd\x6e\xec\x68\x63\xac\x7f\xb2\xed\x2c\x4a\xce\x7d\xb5\x9b\x59\xae\xeb\x36\xef\xe4\xc7\xda\xb5\x32\xc4\x76\x83\x6d\xab\x1a\xee\xc6\xbe\x35\x07\xfb\x05\xd7\xb7\x4d\xa6\xef\xb6\xb1\xa9\x88\x19\x8f\xee\x51\x00\xb7\x6e\x93\xcb\x78\x82\xad\xdf\xe5\xf7\x56\x03\x74\x0d\x00\xfe\xd1\x03\x91\x01\xab\xac\x0e\x48\x7b\x05\xcc\x2c\x82\x3a\x8b\x87\x30\x91\xc0\xf5\xbd\xf7\xdb\x9f\x8c\xd5\xc4\xb2\xce\x41\xba\xe5\x33\x87\xc2\xb1\x7d\xe4\xc8\x7f\x1f\x05\x13\x57\xd7\xdb\x86\x81\x87\x9f\x23\x4e\xa3\x6d\x3f\x4d\x19\x64\x4b\x3a\x72\xe4\xbf\x8f\xb2\xd0\x12\x09\x74\x96\xde\x1c\x2b\x0e\x4e\xb7\x07\x19\x6d\x06\x01\x91\x63\xa8\xea\x27\xc2\x39\xb6\xff\x42\xbc\xf3\xc7\x13\x9b\xaf\xc8\xdd\x5a\x5b\x88\xcb\xee\x22\x46\x5b\xc7\xb3\xf8\x60\xe4\xf9\x04\x45\xfe\xa4\x73\x89\xb3\xd7\x2f\xd7\x75\x31\x2e\x59\x06\x4e\x34\x66\x39\xf8\x64\x30\x70\x8b\x0f\x82\xf1\xc4\x03\xc5\x47\x22\x82\xdd\x65\xe2\x0a\x51\x5a\x7d\xfb\x2f\xaf\xb0\x3b\xf7\x14\x9c\x74\xa3\xad\x17\x9a\x0a\x03\xdd\x79\x81\xe9\x61\x85\x24\x15\x77\xbe\x97\x92\x1e\x47\x4a\xd2\xa4\xb7\xd5\xc7\x47\x95\x7f\x6e\x34\x57\x7d\x30\xb4\x4e\x36\xbb\xf8\x65\xfd\x1d\x0f\xf0\x0e\x38\x1e\xe0\xdc\xf1\x80\x6c\xee\x78\x40\xaa\x8e\x07\xa4\xcd\xf1\x80\xe4\x8e\x07\xa4\xa3\xe3\x01\xe9\xef\x78\x40\xbc\xe2\x4c\x77\xd6\xf1\x00\xef\x86\xe3\x01\x79\x18\xa9\x50\xc4\x5b\xf3\xb7\x32\x6a\xbe\xc5\x8a\xba\xe6\x27\x82\xdc\xd0\x56\xc9\xa9\x2a\x33\x99\x75\xfa\x24\x44\x83\x5c\x14\xa6\x18\xa3\x90\x0d\x17\x24\xfd\x74\x2b\x85\xa4\x9f\x63\x1c\x49\x57\x4f\xa0\x93\x6f\x9f\x8b\xb1\x56\x07\x90\xcb\xa0\x76\x07\x5f\x7d\x6a\x52\xdb\xa9\x94\xbb\xc7\xa2\x2c\xad\xb7\xff\xaa\xf8\xc5\xd5\x6a\x3c\xf1\xd6\x1e\x18\x4f\x32\x27\x01\xe6\xf2\x55\x3f\x47\x82\x69\xe8\xa9\xfd\x98\xa6\x09\x82\xd8\xf3\xa9\x2c\x82\x5a\x92\xbe\x6a\xf3\x60\xd5\x31\xce\x2c\x44\xed\x8b\x1d\x14\x38\x65\xf1\xe5\x6d\x9d\x0c\x92\x40\x3a\x7b\x8b\x28\x85\x53\x44\x4d\x1f\x14\x91\x7f\xa0\x20\x34\x9c\x72\x59\x36\xcf\x4e\x0a\xa3\x5b\x91\xfb\x60\x30\x70\xbe\x3d\xf9\x96\x33\x9e\x82\x8b\xb0\x68\xef\x8b\xff\x72\xb2\x21\x94\xa9\x89\x2a\xea\xf5\x74\xad\x45\x39\x3c\x91\xfd\xf5\x2e\x92\x29\x73\x7f\xc1\x22\x67\xe8\xe8\xe8\x14\x50\x16\x87\x57\xb7\xa3\xa3\x13\x45\xdd\x37\x90\x60\xce\xa3\xd5\x40\x47\x8e\x2c\x3b\xe9\xf0\x95\xd5\x83\x93\xf2\x91\xa0\xc3\x89\x45\x36\x47\xde\x1d\x1f\xb4\xfe\x6d\xb0\x7b\x59\x70\x51\x70\x69\xfe\x87\x58\x7d\xdb\x4d\xa2\x35\x09\xa9\x9d\x00\xb8\x82\xb5\xcd\x12\x6a\x2f\xe2\xe0\x3c\xa0\xb4\x73\x7d\x98\xc4\x90\x6a\x06\x62\xac\xf3\x86\xb4\xe4\x6e\x4a\x4c\x8f\x4a\x4b\xb9\x7d\x28\xcb\x27\x11\xe3\x9c\xcc\x62\xa4\x9e\x4f\x21\x43\x37\xf0\x56\x69\x72\xf4\x71\xa8\xaf\x07\xfb\x11\xea\xbd\xe6\x41\x4d\xfa\xfd\x5e\x80\xdb\x0b\x70\x7b\x01\xee\x4b\x0b\x70\xad\x76\xaf\x36\x29\x4a\xe5\x7b\xae\x11\xa1\x24\x8f\xde\x29\xf9\x49\x31\xb0\x9d\xb0\xce\x3f\x82\x91\xb6\x88\x87\xed\xb3\xd3\x16\xe6\xaf\xd9\xc4\xc8\xc9\xa5\xde\x47\xc7\xc9\x72\x41\x19\x41\x70\xfe\x67\x46\x0a\x45\x8c\xc5\x78\xfa\x45\x51\x40\xd0\x22\xad\x73\x84\xd7\xc3\x6b\x77\x1a\x65\xf1\x1c\xa5\x4b\x56\x03\xa3\xde\x3a\x9e\xcc\xbb\x4a\xe6\x31\x9e\x72\xb9\x4e\x18\x49\x3f\x66\xfe\xd5\xf6\x3a\x14\x80\xa9\x34\x5e\xb2\x13\x9f\xcb\x82\x07\x95\x92\xe2\x59\xbf\x0e\x38\x3a\xf1\x00\x73\x2b\x4e\xe0\x66\x55\x77\x54\x6a\x71\x5a\xaa\xf1\x70\x85\x6e\x0b\x52\xaf\x2e\x48\x25\x0a\x23\x14\x07\xed\x8a\xf4\x5d\xc2\xa4\x7a\x78\xfa\x4c\x48\xc7\x57\xe8\xf6\x45\x1a\xa1\x51\xb5\xd4\xc3\xda\x5a\x91\xb2\x8b\xcd\x34\x2f\x32\x6f\xbd\xff\x90\xe5\xe1\x7d\x11\x71\xc5\xa7\xe4\x1d\x68\x6b\xaf\x14\x6c\xa4\xc9\x57\x42\x8d\x35\xd4\xc4\x19\x95\xf1\x68\xed\x0c\x1c\x11\x65\xba\x96\xbe\x9a\x4a\xda\x06\xaa\x3f\x07\x64\x87\x94\x6a\xea\x1d\x5c\x10\x04\xaf\x0e\xc4\x47\x97\x24\xa1\x63\x45\x0a\x13\x67\x94\xdd\xae\x58\xe7\xc1\x81\x8b\x11\xba\xe5\x97\xe0\x6e\x5d\x2d\xa4\x95\xbd\xd6\x34\xe7\x00\xec\x8b\x4d\x61\x1f\xb8\xec\x29\x1f\x36\xff\xed\x75\x34\x2b\x8b\x8c\x34\x30\x82\x0b\x56\x0e\xe0\xfb\xbb\x0c\x11\xe5\x00\xc7\x11\xba\x58\x4e\x77\x29\xbe\x0d\xe1\xeb\x86\xcb\xa6\xcb\x78\xca\x21\x62\x92\x62\x99\x89\xa7\x12\xea\x36\x45\x6c\x68\x42\x94\xa6\x0e\xf0\x46\xbc\x0c\xe1\xeb\xa2\xf4\xe6\x9e\x00\x9c\x87\x5d\xe4\xf9\xcf\x6f\x62\x1c\xa5\x37\x40\x57\x9f\xe1\xeb\xc8\xdb\xd6\x48\x2d\x92\x79\x1f\x2f\x08\x8a\xe2\x10\x32\x61\xef\x51\xa2\xca\x67\x4a\x7a\xde\x9c\x6d\x50\xf2\x6c\xe4\x4b\x7f\x01\x44\x01\x0e\xb2\x7d\xc3\xce\xc6\x93\x11\x3b\xb0\xb4\x92\x8f\x8e\x5c\x9c\x55\x38\xf4\x56\xab\xa3\x23\xec\xc7\x38\x4c\x96\x11\xa2\x2e\xf2\x65\xfa\x68\xaf\x36\x65\x79\x15\x33\x2a\xa3\xd3\xf6\x20\x45\x0a\xe1\x9b\x23\x65\x30\x28\xa2\xe4\x5c\xf4\xe7\xf5\xc1\x89\xf2\x41\x2e\xec\x97\x39\x46\xf3\x14\xc7\x94\xf1\x63\xfd\x31\x2e\x61\xfb\xe0\x09\x07\xc8\x8f\x42\x0a\x48\x8e\x22\xcc\x51\x84\x01\x0c\x64\x1c\x12\x05\x34\x7f\x07\xf9\x3b\x08\xd2\x60\xac\x6a\x3f\x0c\xe7\x10\xc3\x29\x52\x7b\x9d\xcb\x3f\x11\x24\x91\x33\x69\x51\x42\xc6\x6c\x12\xd0\x1c\xb7\x4c\xdc\x82\x0b\x8e\x1d\x07\x5a\xe5\x20\x9e\x6d\x99\xe4\xa0\x8f\x4e\x00\x0c\x8e\x4e\x34\x80\x59\xaa\xd3\xc5\xc1\xd1\x29\x48\x6d\x03\x9c\x70\xed\x3e\xa6\xff\x10\x2f\xde\x66\xcf\x65\x9b\x13\x0f\xa4\xbe\x9e\xc0\x60\x70\xd4\x04\xe9\x01\x62\x7e\x11\xe6\x08\x42\xfe\x4b\xc8\x60\x88\x30\x43\x84\xae\x56\xf9\x4d\x78\x2c\x9e\xc8\x2a\x3b\xe7\xf1\x1f\xc8\x8d\x41\xa6\x5b\x99\x6d\x3c\xef\x87\x13\x0f\xe0\xc1\x00\xf6\x20\x33\x75\x98\x0d\x6d\xc6\xe8\x2d\x24\x38\xa9\x0d\xd7\x11\x5d\xb6\x6d\x6d\x74\xd7\x4c\x1c\x15\x72\x38\x3b\x3a\xa2\x96\x2d\x3c\x3a\x72\x89\xc9\xfb\x44\x0a\xd0\xfa\xa5\x4a\x8d\xa5\xb2\x29\xcd\x7d\x38\x42\x26\x77\x6c\xf5\x0a\x65\x16\xc5\xba\x35\x52\x2b\x68\x5b\x22\x63\x05\xe3\xfc\x75\xca\x5f\xa7\x20\xc9\xb8\xca\x32\x7f\x97\xf0\x77\x09\x08\xb3\xd5\xa5\x1e\x88\x82\xb1\x13\xe3\x29\x41\x94\x0e\x95\xd1\xd5\x01\x0e\x43\x5c\x12\x87\x5c\xdb\x30\x9e\xce\x11\x9d\x19\x3f\x33\x14\xcb\x17\x48\xc4\xd2\x47\xfa\x67\x14\x53\xf9\xbb\x0b\x8f\x5a\x5a\x79\xd4\x3c\x18\x3b\x04\x4d\x63\xca\x10\x11\x1d\xe3\x94\x0d\x8d\x07\x5d\x7a\x26\xb6\x9e\x6d\x34\x1d\x5f\xba\x71\x4e\xab\xea\x94\x3a\x8a\x4d\xaa\x7e\x8b\xe8\x4c\x51\xb6\xc8\x3a\x93\x83\xdf\x89\x50\xe0\xd7\x6a\x35\x5f\xa4\x4b\xcc\xd4\xd3\xb9\x9f\x0f\x58\xf7\x7a\xb2\x46\x09\x45\x87\xfc\xed\xb8\x32\xa7\x0c\x48\x0d\xf2\xe8\x54\xfb\x7b\x2c\x8d\xed\xe6\x1e\x45\xd5\x75\x9b\xac\x56\x95\x67\xd9\xf5\xa1\xb7\x5a\xb9\xb2\x99\x6d\x71\x79\x53\xdb\x73\x4b\xf3\x02\x15\xf0\x76\x85\x07\x95\x06\x5a\x03\x30\x82\x79\xad\x3d\x6a\xf2\x99\x68\x40\xc1\xe5\xdf\x93\xf4\xd3\x2d\x97\x9a\x72\xc0\x9c\xb0\x0a\x5d\x4a\x48\xfe\xbf\xd1\x91\x4b\x7b\x70\x9d\xf0\x01\xb9\x8e\xf4\xab\xde\x26\xe1\x4c\x32\x81\x8a\x64\x06\x48\x8d\x68\xa1\x4a\x4d\xe9\xda\x53\x5d\xb6\x18\xee\xba\xc5\xac\xf2\x30\xa7\x01\x62\x95\x22\x56\x2b\xab\x70\xa0\xdb\xf8\xb2\xc9\x6a\x85\x7c\x51\x31\x4b\x52\x09\xf1\xc5\xc0\x45\x5b\xf9\xb8\x69\x01\x13\x48\x67\xc7\xd2\xce\x5e\x3c\x29\xa4\xe6\x18\x26\xf1\x50\xc2\x14\x20\x77\x48\x8b\xbc\x4c\xc9\x9c\x1e\xc3\x30\xa9\xd3\x25\xc5\xbd\x05\x94\x36\x61\x01\x56\x51\x24\x79\x17\xc7\xca\x33\xee\x81\xb4\xc8\x0a\x09\x67\x47\x62\xa5\x28\xfc\xa9\xb5\x28\xfc\xa9\x99\xc3\xfd\x74\x32\x72\x1c\x00\xab\x6d\x9f\x5a\xdb\x3e\x35\xdb\x3e\x9d\x8c\x72\x9d\x95\x56\xbb\x78\x66\xed\xe2\x99\xd9\xc5\xb3\xc9\x88\x64\x02\xb2\x8b\x39\xf1\xfb\x14\xb1\xff\x94\x88\x95\xa9\xdc\xd7\x56\x6d\xb9\x71\xcd\xac\x0a\x70\xdd\xca\x19\xc0\xfb\xf5\xdb\x8e\xf5\xbb\xaa\x35\xdf\x98\x0b\xc7\xa1\xf6\x2b\xb6\x1d\x2b\xa6\xfc\x7d\x3b\xac\x9a\x86\xdc\xaf\xdc\x23\xac\x9c\x70\x3a\x41\xa5\xe0\xf2\xe2\x53\x19\xa3\xba\xc9\x1a\xdb\x0c\x45\xf6\x35\xd6\x90\xbb\xb9\xc6\x7a\xf4\xdb\xb3\xd2\x86\xed\x65\x74\x27\xdd\x86\x84\x9b\x83\xb3\x7e\x98\xdd\x2b\x68\xa2\xc3\xba\x4a\xb8\xdd\x5c\x55\x39\xf6\xed\x59\xd3\xce\xbb\x77\x83\xf5\xac\xa8\x52\x75\x0b\xaa\x00\x77\x73\x45\x77\x72\x35\xef\xcd\x8b\x67\x28\x59\x20\x42\x8f\x87\x22\xa5\xda\x10\x25\x4a\xfb\xac\x6a\x60\x31\xd6\x6f\x87\x8b\x34\xb9\xbd\x8c\x93\xa4\xae\xf5\x56\x6a\x65\xf5\x7d\x8a\xc1\xbf\xd2\x33\xef\xd8\xb1\xd9\xa8\x56\xe7\xcb\xf0\xd3\x80\x57\x8d\x54\x09\x5b\x6d\xb2\x95\xc8\x6c\x9e\x2e\xbc\xa0\xb6\x99\xce\x21\x9b\x0d\x35\x8c\x09\xbb\x95\x53\xac\xef\x53\x4c\xaf\x63\x7f\xf0\x82\xb6\xa3\x2b\x4c\x7b\xe0\x8b\x03\xef\x1a\xc2\xc4\x04\xbb\x62\x2c\x4c\xbb\xa1\x6c\xd6\x0b\x67\xb3\x5d\x44\xda\xac\x17\xd6\x66\xed\x68\x8b\xa2\xee\x48\x8b\xa2\x9d\x43\x19\x9f\x5e\x57\x84\x45\x51\x3b\xba\xb0\x15\x5d\x8c\x2c\x6d\xf8\xc2\xbb\x87\x2f\xdc\x03\x5f\xb8\x03\xbe\x16\x8b\xe1\x35\x22\xb4\xc1\x54\x66\x75\x98\xc9\x4d\xbc\x46\x0f\x3a\x4f\x34\x9a\xa2\x4f\x0b\x9b\xd4\x98\xf9\x57\x93\x3c\x8f\xec\x86\xc2\xdf\xdd\x1a\x40\xe3\x62\xe2\xf9\xfb\xf7\xbe\x1a\x05\xa0\x01\xd1\x7f\xff\x82\x93\xdb\xd5\x8a\xf8\xb3\x38\x42\xe7\x33\x08\xd2\x80\xf8\x74\x06\xcd\xc7\xff\xa9\x5a\xc5\xa2\xd6\x65\x26\xd3\x0d\x06\x2e\x07\x4d\x6f\x5e\x09\xd7\x42\x14\x0d\x06\x6e\x1c\x40\x5f\x14\x96\x75\xb1\xfe\x80\x7e\xfb\x01\x4d\x5f\x7d\x5a\x78\x1e\x88\x57\x2b\x1b\x9c\x7e\xef\x81\xb4\xd4\x11\x9d\xc1\xbc\xf1\x59\x3c\x3e\x99\x8c\xe0\x26\xee\xe1\x70\xb1\x50\x53\x09\x48\x4b\xe5\x76\xb1\xf6\xbe\x24\x01\x97\x94\x93\xb4\x5a\xc2\x8a\x0c\x6a\x41\xf6\x0d\x26\x32\xa2\x8b\xab\xa5\xea\x2e\x93\x8d\x76\x6d\xa3\xa9\xa9\x76\xdd\x6b\x02\xbc\x7d\xbb\xd1\x18\x77\x67\xe7\x1c\x78\xd7\xd0\x26\x26\xd8\x15\x69\x34\xc6\x9d\x50\xd6\x43\x6e\x10\xd0\x3b\x88\xb4\x1e\x72\x03\x87\xee\x80\x36\x1a\x4f\xad\xb4\x26\xdf\x94\x95\x17\x05\xbf\x73\x98\x93\xb3\xec\x8c\x3a\x0e\xde\x8e\x3b\x06\x7b\xec\x52\x0e\xbc\x6b\x68\x13\x13\xec\x8a\x34\x06\xbb\xa1\xec\x69\x2f\x9c\x3d\xdd\x45\xa4\x3d\xed\x85\xb5\xa7\x9d\xd0\xd6\x83\xb9\x09\xe8\x1d\x44\x5b\x0f\xe6\xc6\xa1\x3b\xa0\x2d\xbd\x68\xae\x55\x22\x20\x1a\x2b\x93\x18\x8e\x18\x1d\x23\x4c\x51\x4d\xf0\xa7\x11\x60\x1a\x14\x03\x4c\x57\xab\x23\xb7\x31\xc4\x54\x47\x8d\x4a\x3b\xe8\x78\x02\x88\xf2\x1a\x3d\xcd\xbc\xd6\x44\x4e\x19\x1d\x64\x98\x82\x38\x40\x96\x30\xc6\xef\x8f\x5c\x12\xb8\x69\x10\xfb\x18\x7d\x62\xae\xe7\xf9\x51\x8a\x91\x37\x18\xb8\x58\x66\x71\x4a\x75\x00\xc1\x11\x5b\xad\xb4\x0b\xc9\x51\x10\x30\xef\x7b\xfe\x49\xef\x7b\x95\xa5\x26\xf1\xee\x20\x1f\x02\x0d\x92\xf5\x65\x8c\x61\x92\xdc\xde\x89\xa4\x36\xab\x95\x8c\x85\x8c\x7d\x39\xe4\xd5\x4a\xff\xe5\x7a\x19\x64\x7c\xe9\x42\x4f\xc6\x78\xd2\x75\x56\xeb\x6b\x2d\x30\xb5\xaf\xb7\xd2\xa3\xde\x4a\x11\x5f\xdd\xe3\x66\x45\xb4\xf9\x32\x64\x4b\x82\xf6\x65\x57\x3a\x96\x5d\x29\xaa\x43\x6e\xf9\x7a\x82\x04\x9c\x60\x4f\xbd\xf1\xc9\x04\x18\x3e\xd4\xe4\xcc\x71\xb2\x2b\x80\x62\xf9\x0c\xd8\xad\xaa\x9c\x66\x66\xb2\xb0\x94\x28\x19\x46\xeb\x4b\x4e\x59\xa1\xb7\xf2\x28\x68\x9e\x6d\x08\xe7\x28\x89\xff\x40\x75\x1e\x63\x92\x0b\x54\x8e\xbe\xac\xd9\x56\x4e\xb9\xe1\xa2\x22\x9b\x6e\xd7\x4b\x0a\xd5\xa0\x03\x22\x71\x88\x92\x21\x4c\x12\xbb\x3e\x8e\x65\xf1\x96\xf0\xd6\xd6\x62\x2b\xb1\xd8\x36\xdf\x45\xcc\xe0\x46\xa4\x93\x35\xdc\xca\x69\x37\x11\x4f\x3e\xe5\xce\xe4\xa3\x9b\xb4\x23\xf4\x82\x58\x6f\xb7\xac\xa2\xa7\x00\xde\x35\xf4\x89\x09\x76\x45\xdc\x05\xe9\x40\x83\x28\xb6\xee\x36\x3b\xca\x38\xf0\xae\xa1\x4c\x4c\xb0\x2b\xca\x50\x9c\xb4\xa3\x4c\x44\x08\x53\xc4\x86\x53\x64\x77\x13\xd6\x00\x35\x4d\xb6\x12\x83\x5d\xe7\x4c\xfb\xcf\xf9\x61\x82\x6b\x3e\x2f\xd5\xe8\xc1\x73\x59\xb9\x33\xf5\x18\x8d\xba\x63\xb4\x11\x9b\x43\xd3\xb3\xa5\xda\x74\x57\xb1\xda\x1f\xa5\x1d\xf0\xb9\xc4\x57\x3d\xed\xf8\xb2\xcd\xce\x21\x51\x4c\xb4\x33\x02\x97\xf8\xaa\x1d\x79\x09\xa4\x34\xbe\xbc\xed\x2b\x87\xe8\x66\xbb\x86\xc2\x6c\xba\x9d\xfd\x6c\x64\x83\x0e\x88\xfc\xe3\x59\x77\xa3\xa1\x84\xde\x39\xe4\x89\x29\x76\xc6\xdc\x1f\xcf\xda\x8d\x86\x7c\x8f\xc2\x9a\x98\x9b\x86\xed\xab\x5a\x6d\x25\x02\x3b\x4c\x58\x18\x1d\x3a\xe6\x8e\xdb\xdb\xf6\x76\xc5\xb6\xf7\x27\xcc\x88\xb7\xd3\xb6\xbd\x1d\x4b\x8c\xa7\x6c\x7b\x3a\x3d\x14\x4d\x49\x5d\x56\x27\x91\x27\xcb\x03\x2a\x89\x5d\x25\x4d\x3d\x0e\x38\x5b\x79\xea\xf1\x99\x48\x4b\x20\x1e\x9f\x66\xc3\x96\x59\x79\x52\xc2\xfc\x9c\x55\xb9\x44\x58\x02\xbb\xa4\x9d\x33\xf9\xdc\xb2\x5c\x26\xa1\x13\x63\xe7\xad\xb6\x92\xb1\x37\x9c\x8c\x7a\xb2\x5d\xcf\x46\x09\xdf\xe1\xb0\xc0\x0c\xc6\xd8\xea\x9e\xd9\x88\x45\xd5\x6c\xe7\xd0\xa8\xa7\xdb\x19\x8f\xb2\x41\x07\x44\x76\x77\x71\xdd\x41\x0f\xd7\x3e\x0e\xae\x5d\xfc\x5b\x7b\xb9\xb7\xee\xa2\x77\x6b\x2f\xe7\xd6\x4e\xbe\xad\x11\xa4\x33\x44\xfa\x5b\x74\xf3\x76\x3b\x86\x42\x63\xc2\x5d\x7b\xd5\x2d\xda\x91\x89\xc2\x9e\x2c\x8f\xb7\xd8\x35\x04\xf2\x49\x76\xee\x2f\xec\x80\x34\x35\xc6\x5e\x29\xa9\x1d\x47\xd4\x53\x3a\x29\x64\xdb\x18\x9f\x4c\xce\xd0\xf8\x74\x32\xe2\x7f\x6d\x22\xc6\xfc\x96\xa5\xea\xab\x2b\x59\x64\xbb\xaf\x64\x1d\xca\x16\x65\xb3\x8d\xa3\x61\x8c\x29\xb2\xdb\xfd\x09\xc2\x11\x22\x55\x2a\xc9\x1b\x6d\x25\xb1\x34\x7b\xac\xf2\xd1\xeb\x44\x89\xbd\xa6\xac\x1a\x6d\xeb\x94\x1b\x57\xf9\xf2\x12\x11\xd4\x5c\xee\xc1\x46\xd6\x87\x9c\x72\xab\xb5\x35\x32\x5d\xfa\x88\x93\xb7\x7f\x19\xe3\xe8\xc7\x5b\xd7\x79\xfd\xd2\x01\x46\xd6\x4b\xc0\x1f\x88\x22\x1b\x1b\x89\xf0\xd9\x98\x1f\x93\xfa\xaf\x3b\x9f\xcf\x1c\x76\x2b\x97\xbe\xa1\x4f\x3e\xbd\xae\xfd\xc5\xd7\xed\x64\x94\xce\x87\x8b\x54\xa6\x85\xdd\x9b\x5d\xf6\x66\x97\xbd\xd9\x65\x6f\x76\xd9\xd0\xec\xd2\x96\x6f\xbb\xbb\xd1\xc5\xc5\xe3\xd3\x09\xc8\x52\x4b\xab\x80\x5b\xbe\xdc\x80\x06\x63\xe8\xa7\x97\x97\x14\xb1\xf7\x90\x20\xcc\x00\xcc\xe7\xe7\x53\x06\x09\xa3\xff\x15\xb3\x99\xeb\xfc\xff\x08\xa2\x69\x72\x8d\xc8\xc8\xf1\x06\x03\xea\x2f\x31\x9d\xc5\x97\xcc\xa5\xfc\xf8\x33\x7b\xf0\x40\x6b\x9d\x82\x4f\x4f\x02\xa6\xda\xbc\x41\x97\xfc\xec\xba\xcd\x9f\x7c\x4c\x17\x32\xa3\xd7\xa7\xd1\x09\xb8\x1d\x9d\x80\x19\x8a\xa7\x33\x36\xd2\xe3\xfc\xa7\xf8\x09\x6e\xe2\x88\xcd\xb2\x87\xff\xc5\x7f\xad\xfb\x19\x8e\x22\x92\x2e\xfa\x0a\xff\xbc\xc9\x56\x1e\x71\xcd\x53\x95\x13\x5b\xa4\x37\x88\x0c\x29\x4a\x50\xc8\x86\x31\x1d\x4e\x49\xba\xb4\x62\xc0\x04\xec\xd4\xc7\x56\xa2\xa4\xbe\x4f\x31\x95\xf7\x7c\x26\xe7\x62\x22\xaf\xe9\x3f\x24\x2a\x3a\x7e\xa3\xa6\xfd\x86\xcb\x20\xff\x42\xd6\x08\xb1\x1e\x2b\x91\x75\xb3\xf3\x8b\x71\x9e\x21\x64\xe3\xf5\xd0\x5d\xb4\x2f\x09\x66\x24\x46\x7d\xed\x9e\xba\xd5\xae\xa1\x5a\x4f\xb6\x2b\x5e\x25\x7c\x07\x24\xd6\x66\x1e\xe3\xaf\xf6\x11\x05\x5f\x85\xf8\xbb\x8f\x28\xd8\x2d\xf1\xf7\x6b\x8c\x28\x78\xea\x01\x18\x10\x2e\xd6\xd2\x80\x70\xa9\x36\xcd\x83\x0b\xe8\x99\xe3\x8c\x28\x88\x03\x11\x58\x80\xf0\xb5\xe7\xc2\x2c\x29\x2c\x47\xc2\x51\x10\x9f\xc5\xa3\xb4\x57\x9c\x01\xfa\xbd\x7b\x66\x04\xf4\xfb\x12\xee\x9c\xf3\xaa\x1c\x74\xe7\x13\x81\x43\xb7\x9f\x07\x9f\xac\x62\xa5\xd5\x68\x64\x49\x7a\xb0\xf5\x28\xfb\xd4\x43\x54\xfc\xd4\x41\x2c\xfc\xb4\x98\x9f\xf6\x41\xd8\xfc\x74\x07\x51\xc6\xa7\xd8\x1d\x69\xf3\xd3\x56\xb4\x49\x9b\xeb\xf0\xc2\xee\x52\x58\x2f\xbc\xe5\xed\xb6\x12\x89\x9d\x26\x9d\x25\x00\xdf\x1b\x19\xbf\x32\x29\x6b\x6f\x64\xdc\x2d\x29\x6b\xb7\x8d\x8c\x92\x9d\xd4\x95\x90\x96\xf5\x0d\xef\xe5\xdf\x25\xfb\xf0\x33\x7e\xb5\x81\x83\x97\x2e\xb3\xb8\x01\x93\xdf\x4d\x0e\x8f\xa3\x4d\x0e\x35\xd9\x6a\x27\x27\xfc\x09\x45\xc3\x29\x89\xa3\x61\x02\x6f\xd3\x65\x8d\x8f\x76\x92\xc8\x0a\x1a\xc7\x12\x88\x1e\xf3\x16\x8f\x51\x51\xa7\xfe\xe2\xb4\x70\xbc\x6a\x2e\x86\x6e\xf2\xb9\xba\x88\x6f\x03\x34\x3e\x9d\x94\xa2\x99\x5b\x6e\x59\x2f\x13\xce\xd6\xac\xe9\x53\x9a\xd6\x5c\xb5\xda\xca\x35\xaf\xef\x33\x9b\x6c\xc7\x3e\x15\x7c\x3b\x1d\x25\x69\x6a\x65\x13\x56\x31\x5a\x42\xef\x1c\xea\xc4\x14\x3b\x23\x2e\x4d\x49\x3b\xda\x52\x32\x87\x6c\x88\x97\x1c\x57\xcd\xf9\x41\xf2\xe0\xe0\x24\x19\xc6\x97\x43\x2e\x92\x74\xb6\xee\x71\xe1\x45\x94\x47\x41\x52\x84\x71\xe5\x76\xe3\x22\xc0\x06\x7b\xb6\xd8\x57\x80\x3b\x9d\x7a\x7a\x1b\x17\x12\x0f\x38\x6a\xe6\x9e\x8b\xbd\x3e\xa7\x92\x44\x1b\x8b\xe7\x7b\x19\x7c\x2f\x83\xef\x65\xf0\xbd\x0c\xde\x57\x06\xaf\xb3\x74\x62\x40\x00\x04\x54\xc8\xd6\x22\x83\xca\x01\x0c\xde\x42\x36\x93\xfc\xdc\xa5\xc7\xa7\xe8\x19\x17\xb9\x8d\x67\xf0\xf8\xbb\x13\x0f\xc0\x7f\x0b\xbe\x3b\x01\xd8\x7c\x41\xc4\x0b\xc2\x5f\x88\x21\xa4\xe6\x4b\x7c\xfc\xf4\x5b\x51\x96\xf3\xdf\x82\xa7\xdf\x82\x24\x20\x60\x19\x40\x5d\x35\x3a\xab\x68\x7d\x72\x14\x04\xe9\x48\xa1\x22\x7d\xe2\x44\xce\x41\xf6\x3c\xd6\xcf\xe3\x27\xce\xcc\x78\x9e\xe8\xe7\xc9\x13\x67\xee\x1c\x28\x5c\xe8\x87\xcb\x27\x0e\x75\xd6\xeb\x5e\xdc\x96\xa4\xf3\xe1\x66\x77\x75\x85\xa6\xbb\x76\xde\x93\x74\xfe\xaa\xe7\xa5\x9d\xd1\xa6\xfd\xec\x27\xe9\xd2\x9e\x9a\xd4\x2e\x33\x49\xf0\xdd\x43\xe2\xb2\x47\x52\x52\x09\xde\x8a\xba\x69\xd8\x1d\x6f\x1c\x76\xc7\x90\x26\xa6\xd7\xb1\xbf\x69\xd8\x01\x5d\x24\x5d\x2e\xfa\xab\xb5\x59\xb3\xad\x44\x5f\xcb\x94\xad\x8a\xac\xfd\xea\x68\xba\xa5\x7e\xe2\x0d\x04\xd2\xbd\xbb\x69\x17\x5c\x59\x5d\xcd\xeb\x90\xb5\xa5\x2e\xe6\x4d\xd8\xea\x1e\xbd\x32\xed\x10\xaf\x37\x83\x74\xc8\x05\xef\x9e\xdb\x29\x6b\xb6\x63\xe8\x9b\x41\xfa\x4e\xcc\xb6\x63\x9f\x0a\xbe\x13\x1a\x17\x04\x5d\xc7\xe9\xb2\xaf\x58\x51\x68\xba\x7b\xe8\x7c\x9f\xcd\xba\x3b\x4a\x75\x9b\x76\xb4\x12\x74\x39\x9c\x97\x0d\x79\x35\x70\x2c\xb5\x58\x1a\x48\xba\x64\x31\x9e\x1e\x33\x02\xb1\xf4\xa6\xe7\xe3\x6b\xcb\x8e\xbf\xd7\xb0\x77\x45\xc3\x86\x7f\x1a\x5f\x22\xf8\x55\x68\xd8\x70\x37\x34\x6c\x6a\xbf\xe5\xe2\xdc\xa4\xf6\x96\x4b\xbe\xb4\xde\x72\x01\x28\x35\x72\x1a\x90\x4c\x17\x57\x1b\xe4\x04\x30\x9f\xb3\xaf\x8f\xa9\xe7\xb2\x59\x4c\xa5\x7b\xbd\xec\x0b\x14\x2b\x92\x19\x6f\x7c\x99\x5e\x92\x7d\xe0\xbf\x00\xcd\x43\xc1\x7e\xb9\xc1\x88\x08\x48\xcf\x03\xe5\xfb\x31\xda\x1c\xad\x97\x71\xd1\xea\xf9\xa5\x5e\xf5\x60\xb8\x37\x71\x12\x85\x90\x44\x05\x10\x85\xa2\x0a\xf7\x05\xc4\xe0\xbf\xd0\xb8\x14\xe9\xc8\x7d\x63\x17\x79\x92\x01\x27\xe2\xbf\x69\x91\x19\x77\xdf\x23\x74\x41\x10\x8c\xbe\xdc\xf6\xa0\xfd\xe7\x8e\x1e\x64\xe2\x5b\xc1\x1c\xd2\x8c\xfb\xcb\x29\xd7\xb3\xfd\x78\x73\xb6\xaf\x82\x88\xfb\x33\x7f\x60\xe3\xfc\x67\x05\x96\x3f\x7a\x00\x7e\x7f\x26\xe7\x36\x92\xdc\x68\x9d\x63\x27\x7e\x6c\xd6\x99\x7d\x29\xd1\xf8\xcf\x85\x97\xa3\xa2\xf0\x32\x18\x34\x8a\x2e\xb6\xe3\xf0\x3e\x9c\x19\x29\x16\x69\xb2\xe8\x65\xa9\x5e\x23\x91\xac\x91\x7a\x20\x34\x8a\x5c\x72\xde\x02\x52\xc9\x7d\xe3\x80\xba\xc4\x03\x49\x10\x8f\x4f\x26\x20\x0c\x62\x45\x17\x19\x51\x1c\x2e\xdd\x84\xa3\x32\x0c\x42\x7f\x0e\x17\xd6\x6b\x5a\xe4\xd3\x45\x12\x33\xd7\x39\x76\x3c\x01\x84\x70\x98\x46\xe8\xd7\x0f\xaf\x5f\x70\x19\x1f\x23\xcc\x3c\xff\x5f\x69\x8c\x05\xc4\x5a\xd4\x1c\xf2\x65\xc2\xe8\xb3\x02\xb3\x47\xd9\x73\x6f\xe4\xe2\x02\x43\x7f\x07\xe7\xa8\x10\x33\x25\x8b\x36\xfb\x8e\x37\x18\x24\x85\x17\x51\x28\x1e\xba\x49\x90\xc1\x70\xc2\x0d\x21\x73\x13\xcf\x03\xa5\x0f\x8e\x93\x89\x7e\x0b\xdd\xd0\xf3\x3c\x6f\x7d\x90\xa1\x36\x14\x58\x8d\x1e\xf8\xe0\xcb\x05\xe9\xb0\x7a\xbc\x09\x81\x06\xa4\xf8\xd7\x0f\x6f\x5e\x88\xe4\x89\xea\x03\xe9\x05\xef\x1b\x11\xdd\xb5\x46\xce\xaf\x1f\xde\x38\xc6\xd1\xc1\xb9\x1b\xef\x0c\xa9\xef\x8a\x92\x9d\x85\x03\x2f\x6a\x51\x2f\xd8\x3c\x19\x52\x78\xd9\x37\x03\x46\xde\x6e\xd7\xf4\x35\x36\x4f\xce\xc5\x7c\xbb\x2a\x6b\xaa\x41\xbb\xa6\xb6\x9c\x43\xdc\x3f\x97\x48\xd6\x6c\xd7\x10\x99\x4d\xb7\x2b\x22\x55\x83\x76\x44\xde\x2e\xd2\xee\x89\xa1\x25\xf4\xae\x21\x4f\x4e\xb1\x2b\xe6\x38\x74\x2b\xda\xe2\xf9\xb2\x7b\x6e\x68\x01\xbc\x63\x48\x93\x13\xec\xd8\x21\x07\x6e\x47\x19\xee\x9b\xb2\x86\xb7\xd8\x35\xb4\xe1\xee\x29\x6b\x62\xdc\x9e\xb2\x26\x16\x55\xe0\x51\xef\xfc\x9f\x79\xbb\xad\x44\x60\xdb\xa4\xaf\xd3\xab\xbe\x89\xf1\x54\xa3\xad\x9c\x6e\x13\xbd\xc8\xa9\x76\x26\x19\x0e\xde\x8e\x40\x3a\x84\x21\x8b\xaf\xed\x69\x70\x84\x8c\x53\xc5\x5f\xd6\x66\xd7\x50\x48\x9f\xab\xb9\x76\x45\xa2\x6a\xd0\x09\x8d\x5c\xa5\xe8\x7e\xc3\x93\xb5\xd8\x3d\x1c\xca\x89\x76\x47\x21\x87\xef\x82\x41\xae\xf1\xf7\xc3\xa0\x6c\xb1\x95\x18\x6c\x9f\xad\x8c\x4a\xeb\x33\xdb\x5d\x0c\xbe\x8b\xe9\xab\x5e\xe1\x77\x0a\xbe\x0b\x06\xb9\x7a\xd8\x37\x95\x55\x47\xd3\x15\xcc\xcc\x76\x54\xfc\x97\xec\xaa\xd9\x0e\x6f\x6c\xb6\xbb\xe7\xc4\xb7\xc2\x6c\x47\x3a\x9b\xed\xee\x71\x5b\xb3\xf5\x66\x3b\x58\x63\xb6\x7b\xf4\x1b\x8f\xa2\xf1\x78\x9b\xcc\x76\x86\xb5\x2e\x7d\x58\xbb\x92\x0a\xe5\x06\x30\xe0\x3f\x00\x0d\xe0\xf8\x64\x02\xd2\x00\x56\x4c\x7a\x75\x97\x26\x4d\x36\x36\x6a\xb5\xb1\xd1\xaa\x8d\x8d\x7a\x1e\x70\x49\x60\x7c\xc3\xcb\xa4\x19\x1f\x2e\x16\xc9\xad\x4b\xc0\x98\x66\x56\x37\xe6\xa6\x9e\xf7\xb8\x26\xaf\xb4\x99\xa1\xff\x2b\xb5\x97\xc0\x6e\x10\xe4\x45\x93\xad\x3c\x0f\x9b\xa7\x7a\x85\x6e\xfb\xfa\x62\x88\x26\x5b\x39\xd5\xfa\x3e\xe5\x34\x3b\x76\xc8\x81\x5b\x11\x97\x40\xda\x35\x27\xeb\xde\x51\x62\x57\x1c\x25\xf6\xa1\x08\xbb\x25\x54\x3d\x7a\x28\x82\x29\xbe\x99\x51\xb8\xb2\xd6\x2a\xc9\xd3\xa1\xe0\x33\xc7\x19\xe1\xb2\x3b\x7f\x85\xd2\x88\xf6\xca\x27\x3e\x5d\x5e\x50\x46\xdc\xe1\xa9\xb7\xde\x44\x7c\xe0\xfc\x27\x20\x7d\x92\xbc\x90\x1e\x89\x58\x92\x70\xde\xd9\x50\xcc\x61\x77\xec\x38\x10\xd3\xeb\xd8\x5f\x12\xce\xdb\x0f\x03\x74\xc9\x86\x8c\xc4\xf3\xe6\x88\xbe\x1c\x6c\x9f\xa4\xeb\xab\x38\x2f\xf6\x49\xba\x76\xeb\xbc\xf8\xda\x93\x74\x65\xc7\x11\xe4\xc7\x11\x04\xa9\x4c\xdb\x15\xe7\x2f\x52\xfe\x22\xb5\xd6\x04\xa7\x20\xee\x57\x15\x3c\x49\xa7\x43\xab\xb1\xde\x7e\x4c\x08\xe8\x5d\x3b\x28\xd2\xe9\xab\xee\x27\x45\x3a\x7d\xd5\x7e\x54\xa4\xd3\xd3\x93\x3e\x48\x3b\x3d\xd9\x41\xa4\xf1\x29\x76\xc7\xda\xe9\x49\x27\xb4\x75\x4f\x73\x26\xa1\x77\x10\x6d\xdd\x53\x9d\x09\xe8\x2e\x68\xeb\x5e\xbd\x52\x00\xef\x1e\xd2\xba\xd7\xae\xe4\xc0\x1d\x50\x76\x83\x88\x10\xde\xfb\x79\xe9\xe4\xed\x76\x0e\x85\xd9\x84\x3b\xe3\x51\xb5\x68\x47\x66\x8f\xa8\xbc\x64\x4b\xaf\xfd\x1b\x30\xd7\xbd\xbb\x0e\xa6\xb8\xa4\x4f\x54\x5e\xb2\x7b\x51\x79\x49\x8f\xa8\xbc\xa4\x43\x54\xde\x1c\x6e\x10\xe2\xaa\x1a\x6d\x25\xea\x5a\xa7\xdb\x7f\xae\xbb\x39\xd1\x4f\x9d\x8f\x2c\x0e\xbb\x95\x53\xac\xef\x53\x4c\xaf\x63\x7f\x73\xf8\xa9\x1d\x5d\xf6\xbb\x0a\x3b\xba\xb6\xf5\x92\xa2\x01\x5d\x71\xf7\xdc\x55\xf3\xb8\x3d\x6f\xd5\x7c\xc3\xfc\x67\x79\xbb\x6d\xcc\x82\x66\x49\x80\xd6\x10\xc3\x34\x4f\xbb\x67\x53\xe0\xb0\xbb\x46\x32\x69\xf7\x6c\x0a\xf3\xb4\x3d\x9b\xc2\x7c\x69\x17\x63\xec\xf8\x5a\xee\x9e\x1c\x33\xef\xd3\xe1\xbc\x0b\x0f\xdf\x20\x5a\x7e\x17\x23\xe5\x71\x9f\x30\x79\xdc\x25\x46\x1e\xa7\xbd\xcb\xe4\x88\x26\xbb\x86\x38\x31\xcd\xae\x88\x4b\xd3\x76\x4d\x17\xa7\x6c\xd8\x27\x7d\xbc\x84\xdf\x41\x2f\x36\x9c\xb2\x57\xbf\xf7\xc0\x1d\x7b\xf5\x7b\x17\xe4\xf5\xc2\xdc\x0e\xe2\xac\x0f\xc6\x5a\xf1\x25\xad\xd0\x43\xd8\x97\xc7\xe5\xed\x76\x0c\x81\x72\xe0\xcf\xbb\x77\xaa\x1b\x74\x45\xa5\x25\xdb\xd8\xde\xa3\xe2\x2b\xb8\x21\xdb\x7b\x54\xec\xd6\x0d\xd9\x36\x79\x54\xdc\xad\x47\xd8\xac\x28\x13\x04\xe4\x6c\x3c\x19\x29\x2a\x52\x1c\xc3\x25\x1b\x79\x5f\x4a\x2c\xa9\xcc\x7d\x8f\xe7\x47\x91\xe2\x61\x94\x86\x82\xc2\x6c\x47\x45\x8a\xd5\x11\x61\x6d\xb0\x95\x67\x44\xeb\x7c\x6f\x62\x1c\xa5\x37\x9d\x67\xab\xc0\x77\x72\xae\x5d\x27\xb9\x93\xb3\x5b\xf0\x96\xf6\xb0\x90\x26\x09\x47\x37\xdb\xca\x29\x37\x08\x38\xd9\x74\xbb\x0a\x38\xaa\x41\x3b\x22\xad\x59\xd2\xed\xa2\xf5\xee\xe5\x48\xef\x91\x20\xbd\x43\x76\xf4\x05\x9c\xa2\x21\x8b\x59\x62\xbd\x09\xc9\xdf\xda\x1a\x3c\x9a\x55\x2e\x43\x44\xf7\x0a\x03\x0b\x44\x42\x84\x19\x1f\x5c\x98\x26\xcb\x39\xa6\xfd\x8c\x8d\xd5\xf6\xdb\x68\x74\x14\xa5\x17\x00\x1a\x3f\xed\x59\x7f\x61\x81\xc8\x65\x4a\xac\x0e\x86\x61\x8a\xa5\x4f\x7f\x78\x5b\x01\xdf\xca\x9d\xd1\x32\xd3\x78\x81\x44\x80\xaa\xfd\xac\x68\xe0\xa3\x66\xcb\x1d\x9d\xf8\x06\x33\xde\xce\xa9\xd6\xf7\x29\xa7\xd9\xb1\x43\x0e\xdc\x8e\xb8\x64\x49\x60\x52\x93\x23\x24\xc6\x97\x9c\x53\xa4\xe4\x38\x89\x2f\x2c\x4d\xb6\x8a\x05\xa6\x49\x1c\xde\x1e\x47\x90\x41\xce\xca\x10\xe9\xaa\xdb\x4b\xa5\x80\x05\x50\x6b\x66\x4a\xe1\xf8\xe1\x74\x30\x90\x83\x3a\x0a\xf2\x97\xe3\xd3\xc9\x99\xf9\x63\x74\xb7\x06\x9a\xa7\x4d\x91\xe2\x53\xce\x4b\x63\x14\x59\xd0\x53\xd1\x54\x80\xbd\xc1\x80\xf7\xac\xf5\xeb\xb3\xc6\x3e\x46\x63\xe6\x4f\x93\xf4\x02\x26\xab\x95\xf3\x3c\x49\x9c\xc9\x46\xae\x7f\x79\x97\x01\xeb\xc3\x9f\x59\x1f\x6e\x2b\x17\xc2\x52\x7e\x3c\x87\x9d\xa7\x11\x4a\x34\xe8\xde\x39\xf9\xeb\x30\xbd\xec\x9d\x93\x77\xcb\xf4\xf2\xf5\x38\x27\x1b\x16\x31\x61\xd6\xf1\x09\x8a\x96\x21\x32\x81\x00\x56\x3e\xcc\x95\x0a\x18\x39\xdf\xc5\xc0\x79\xfd\xd2\xf1\x82\x20\x60\xfe\xdb\xe7\xef\x9e\xff\xe3\xd5\xdb\x57\xef\x3e\xfe\xf6\xfa\xe5\x88\x04\xce\x1c\x62\x38\x45\xc2\x4e\x72\x70\x41\x10\xbc\x12\xf5\x30\x1c\xe7\x28\x08\x0a\x3d\xf0\x35\x4e\x20\x43\x8e\xc7\x5b\xc5\x11\xc2\x2c\x66\x31\xa2\xba\x55\x56\x2d\x23\x70\x04\xfb\xe3\xaf\xf4\x16\x44\x63\x32\x91\x7c\x00\x7b\x00\xad\x3d\x70\x97\x7f\x75\x34\x9e\x80\xbc\x37\xfe\x4b\x37\x1f\x8d\x27\xeb\x7e\x8e\xd4\x8a\x45\xcb\x0d\xdc\x70\x4c\x6e\xb0\x80\xbc\xcf\x5f\x2e\x6d\xa7\x8b\xed\xcc\x15\x27\x9d\x79\x7c\x32\x13\x81\x95\xa5\xca\x6d\x75\x2a\xac\xc9\x21\x69\x82\x64\x65\x12\x47\x45\x28\x0f\x15\x92\x6e\x1d\x13\x4e\xce\x78\x58\x81\x91\x4d\x71\x1a\x35\xb7\x2b\x02\xc8\x46\x27\xea\x7f\x43\xcb\x7f\xd4\xff\x4e\x79\x5f\x85\xc9\x71\xfa\x2a\xf5\x6d\x12\x56\x46\x1c\x26\x84\xb3\x5e\x3f\xd4\xc9\x6c\x35\x93\x59\xdd\x0a\x16\xdb\x6a\x23\x6b\x10\x8e\xf9\xf4\xba\xca\xc6\xe9\x4d\xbb\x68\xbc\x59\xea\xf8\x5d\x4d\x1b\xbf\xe8\x9b\x33\x7e\xd1\x35\x61\xfc\xef\x4b\xb4\xec\xab\x9d\xc9\x36\x3b\x86\x42\x35\xd1\x8e\x3d\x0a\xe8\x56\xe4\x11\x88\xa3\xb4\x7b\x70\xa4\x02\xdf\x31\xc4\xe9\x49\x76\xec\x52\x82\x77\x41\xdd\xb4\x2f\xdd\xc9\x36\xbb\x87\xbe\x69\x77\xba\x13\xd0\xed\xc8\x13\x22\x54\x5f\xec\xc9\x46\x5b\x89\xbe\xb6\xe9\x5e\x12\x44\x67\x32\xef\xdb\xc3\x8a\x44\x16\x99\x96\x3d\x68\xe2\x15\x29\x4d\x21\x91\xf1\xe4\xa0\xac\x2b\x6b\x51\xab\x94\x8c\x1e\x79\x80\xab\x55\x96\x1c\x2c\x42\xbd\x3a\x30\x62\x2f\xd2\xab\xe5\x42\x7d\x7e\x94\x25\x59\xc1\x9e\xe7\x2b\x9c\xb9\xde\xba\x98\xd1\x9e\xb5\xa1\x5a\x78\x60\xf4\x76\xa5\xcf\xdb\x6d\x2b\x7d\x35\xb8\xc0\x12\xb4\x40\xbd\xdd\x77\x54\xa3\xad\x9c\x6e\x03\x37\x52\x53\xed\xca\x8e\x04\x78\x87\x0d\x7a\x8d\x48\x4d\x90\x54\x13\x06\x65\xab\xad\x44\x61\xcb\x84\xe3\xe9\xac\x4b\x90\xbf\x01\xb7\x37\xa4\xed\x0d\x69\x7b\x43\xda\xde\x90\xb6\xd3\x51\xfe\x24\x4d\xd9\x70\x49\xac\x8e\x20\x35\x59\x79\xb3\x26\x5b\xc9\xe6\x1b\x4e\xca\x34\x65\xbf\x92\xee\x3e\x20\x0a\xbe\xfd\xe8\xe8\x55\xf7\x75\x27\xcb\xbe\xf6\xab\xfa\xda\xad\xe8\xab\xa0\x2e\x8e\xa3\x70\xb6\xf7\x0b\xfe\xca\xce\xd4\xbd\x5f\xf0\x6e\x9d\xa9\x5f\x59\xd1\xf7\x82\xcb\xb1\xfa\xf4\x15\xba\xa5\x2e\xae\xde\x72\x70\xd5\x3f\x4c\x96\x11\xa2\xae\xf3\x9e\x20\x8a\x30\xcb\x2f\x0d\x72\x05\xdc\x7f\x8d\xaf\x11\x61\x67\xce\xbb\x5f\x3e\x1e\x3a\x23\xc7\x11\x26\x5c\x09\x7d\x50\xe9\xe8\xd5\x27\x18\x76\xec\xe6\xdf\x11\x87\x4d\x6e\x0f\x05\x27\x8c\xf1\xf4\xd0\xf9\x77\x2f\x87\x17\x3d\x81\x7f\x77\xfe\xdd\xf2\x95\xf7\x04\x5d\xc6\x9f\x3a\x7e\x66\x21\x80\x51\x74\x78\x71\x5b\xfc\x82\xec\xa5\xe6\x13\xe7\xcb\xcb\xee\x9f\xa0\x02\xd8\xf2\x09\xd9\x4b\xcd\x27\x3e\xa0\x29\xea\xfa\x85\x0c\x47\x6c\x86\x0e\x09\x6f\x58\xfc\x90\xe8\x4b\x7c\x67\xad\xbb\xeb\x55\x1a\x5f\x9e\x49\xb2\x24\x55\x2f\x89\xc8\x68\xb6\x7b\x47\x3b\x43\xef\xd5\x8c\xbb\x1f\xf0\xba\x4d\xeb\x31\x4f\x11\x24\xe1\x8c\xf7\xb8\x3f\xe5\xf7\xa7\xfc\xfe\x94\xdf\x9f\xf2\x3d\x4f\x79\x6d\xae\x97\x8c\xa4\xc6\x5c\x2f\x5f\x36\xe4\x49\x97\x32\xc1\x53\x8f\xcf\x86\xcb\x05\x30\xc0\xe3\xd3\x49\x21\x43\xba\xec\xc3\xcf\x19\x96\x4b\x3c\x1f\x46\x91\x5b\xae\x21\xdb\x72\x88\x50\x94\xa0\x90\x09\x03\xe9\x15\xba\x1d\x8a\xe9\xd2\xb6\xf2\xdd\x34\x59\x4e\xe3\xcb\x16\xef\x3c\xcd\x18\x5d\x1c\x38\xfa\x79\x99\xb5\x0d\x06\x0e\x15\x7f\x94\x5f\x64\x04\x72\x66\x71\xe6\xd1\x5b\x7b\x3d\xb2\xbc\x44\x83\x41\xc3\xe7\x0a\x5b\x35\x08\x82\xec\xf9\x91\xfe\x3b\x67\x0a\x67\x7a\x6c\xa3\xec\x83\xde\xbd\xeb\x62\xe6\xf8\xfe\x19\xdd\xfe\xa7\xc0\x76\x91\x9c\xca\x57\x37\x80\x54\xdd\x4f\x4f\xac\xee\xa7\x27\xa6\xfb\xe9\xc9\x64\x34\xe6\x84\xb3\xb9\xeb\x2a\x0d\x48\xa9\xa8\x26\x01\x54\x0e\x2a\x05\xb1\x16\x4d\x31\x67\x3c\x85\x04\xc3\xa3\x34\x10\x66\x1e\x45\x24\x9e\x3b\x26\x13\x0f\xc4\x01\x29\x7b\x39\x65\x23\x3a\x73\x53\x69\x4f\x8a\x85\xf5\xc8\x1b\xb9\xd5\x2e\xc6\x27\x13\xd9\x8b\xc8\x30\xc2\x07\x91\x04\x77\x57\xe8\x76\x94\x02\x89\xe9\x78\x9d\x0f\x09\x2a\x34\xa3\xa8\x3c\xb6\xfc\x0d\xe7\xb2\xe3\x93\xc9\x60\xe0\xa2\x20\xf1\x4c\xbf\x2d\xbc\xe4\xbb\xb6\x04\x4b\x15\xa0\x3e\x8f\x12\x2e\xaa\xc9\xbf\xef\x62\x86\xe6\x74\x44\x81\x06\x1f\x65\xc6\x2f\x74\x26\x56\x02\xad\xd7\x07\xf6\xa5\x27\x0f\x14\xdc\xa7\x78\xcb\x31\xe7\x3f\x04\xc3\x64\x48\xd3\x25\x09\xfb\x48\x31\xa6\x1f\x51\xee\x69\xfc\x4a\xf5\x77\x2e\xba\xa3\xfe\x65\x4c\x28\x53\xc7\xa1\x77\x80\x57\x2b\xb7\xda\xe6\x2d\x62\xd0\x2f\x0f\xc4\xd3\x47\x6f\x86\x1b\xe1\x25\x72\x19\x7f\x3a\x73\x9c\x91\xfe\x9b\x9f\x84\x78\x30\x18\x3b\x57\xcb\x0b\x44\x30\x62\x9c\x17\x39\x0c\x11\x02\x65\x98\x86\x83\xd3\x39\xcc\x6b\x54\x3b\xc0\x81\x37\xd4\x99\xe4\x12\x7a\x66\x40\xce\x65\x73\x92\xcb\xdc\x1b\x6d\x5e\x85\xdb\x22\x2a\x1e\xcf\x49\x9a\xce\x96\x97\x97\xf6\xa8\xa3\x86\xdb\x2c\xdd\x6a\xc7\x04\xfa\x6c\xb2\x1d\xfb\x54\xf0\xed\x82\x7c\x3c\xed\x9e\x8a\x4a\x00\xef\x1a\xe2\xc4\x04\xbb\x62\x2d\x9e\xb6\x67\xa3\xa2\x3d\x92\x77\xd1\xdd\x4b\xde\x45\x7b\x24\xef\xa2\x1d\x92\x77\xd1\x18\x4f\x97\x09\x24\xbd\xe2\x63\xcc\x46\xdb\x14\x21\x23\xb4\x9d\xbe\x1c\x47\xb4\xd9\x4a\x2a\x68\x9b\xac\x94\x5e\xf7\x1a\xfe\x5e\xc3\xdf\x6b\xf8\x5f\xb1\x86\xdf\x98\xdf\x43\xdf\x48\x97\xca\xa6\x78\x3e\x41\x8b\x04\x86\xc8\x3d\x3e\x3c\x9e\x02\x67\xe8\x78\x3e\x4b\xdf\xa4\x37\x88\xbc\x80\x14\xb9\x9b\x49\x90\x92\xe3\x3c\x5e\x6e\x0f\x9a\x92\x0d\xbc\xe6\x74\xab\x5d\xe4\xe1\x8b\x24\xde\xd7\xbc\xda\x73\xf0\x3d\x07\xff\x53\x72\x70\xd3\x34\x9a\x31\x70\xc2\x19\x38\x01\x54\x18\x4b\x41\x9a\xbf\xa0\x67\x0e\x70\x46\x99\xff\x33\xf4\x05\xf7\x70\xd3\xcd\x78\x39\x6f\xfb\x88\x9c\xfc\x77\xd2\x3d\xc1\xab\x00\xde\x4a\xee\xdd\xa0\x87\x89\x09\x76\x55\xc4\x7e\x27\x1d\xce\x02\x51\xfb\x73\x78\x13\xb3\xbd\x6f\xce\xfe\x44\xd8\x9f\x08\x7f\xfa\x13\xc1\xb8\x2c\x73\x4b\x0e\xaa\x9e\x59\x29\x78\xb3\x74\x7d\x79\x07\x8f\x78\x0a\x30\xa8\xdd\x0d\xf7\x89\x48\xf7\x4c\x6d\xcf\xd4\xbe\x6e\xa6\xf6\xb8\xae\x08\x9c\x97\xd4\x79\x22\x30\x91\x4d\xe1\x5e\x8e\x08\xbc\x0b\x5f\xb1\x2a\x97\x80\xbe\xfe\x07\xb2\x82\x55\x38\x83\xa4\x26\x87\xb5\x82\xb8\xc4\xb4\xae\xd1\xae\x49\xc0\x62\xf4\x2f\x66\x90\xf4\x48\x62\x6d\x36\xea\x20\x11\xe7\xf8\x09\xd3\x08\x6d\x86\x59\xdd\x72\x67\xd1\xfb\x22\x8d\xd0\x46\x28\x96\x0d\x3b\xa3\x99\xe3\x69\x91\xc6\xb8\x2e\x0b\x7b\x03\x9e\x0b\x4d\x77\x13\xd1\x69\x84\xde\xf3\x19\xf4\xc7\x74\xde\xb2\x3b\xaa\x71\xd8\x1f\xc7\xa2\xcd\x8e\x22\x57\xce\xb7\x27\x5e\x79\xa3\xae\x28\x45\x38\xaa\xea\xce\xed\x58\xcd\x9b\xed\x24\x62\x5f\xe1\x48\x88\xf0\x3d\x51\xab\x9b\x75\x46\xee\xef\x4b\x98\x58\x9d\xb3\x1b\x30\x2b\xdb\xec\x26\x5a\xd5\x7c\xfb\x21\x55\x34\xea\x8a\x52\x2e\xa8\xe6\xe7\x53\x3f\xd4\x96\xda\xee\x24\x8a\x7f\x22\xe9\x5c\x9f\x51\x3d\x11\x6d\x36\xed\x87\xee\xec\x98\xda\x04\xdf\x79\xe3\xdd\x45\xb8\x3e\xaa\x36\xc1\xb8\x6e\xdb\x15\xe5\x33\x36\x4f\x86\x14\x5e\xee\x63\x10\xf6\x8a\xff\x5e\xf1\xff\xaa\x15\xff\x46\x0f\x85\x62\x05\x12\xc7\xc9\x2b\x90\x48\x65\x5e\x51\x0b\x67\x17\xe7\xf0\x12\x6d\x6c\xce\xe4\xbd\xfc\x53\x75\x72\x4f\x93\x66\x43\x96\x1b\xc5\xdc\xb4\xa3\x6e\xbf\x83\x24\x6b\xb5\x93\x27\xc8\xeb\x6c\xce\xbd\x0e\x0f\xdd\xac\xeb\xb9\x11\xe3\x08\x7d\x1a\x16\xb3\x76\x76\x41\xad\x6a\xb5\xa3\xa8\x8d\xd0\xa7\x5f\x2e\x7b\x63\x56\xb4\xea\x8a\xd8\x04\x52\xb6\x21\x76\x8b\x4d\x77\x12\xc5\x6f\x20\x65\x9b\xa1\xd9\x68\xd9\x15\xd5\x59\x29\xc4\x9e\x0c\xc2\x68\xb7\x93\x48\x7e\x97\xb2\x8d\x74\xa7\xac\x5d\x57\x04\x2f\x60\xc4\x75\xf7\x7e\xd8\xd5\x8d\x76\x12\xb5\xef\x61\xf4\xaa\x47\x3e\x10\xb3\x51\x1f\xa4\x8a\x6b\xc1\xfe\x68\x95\xcd\x76\x15\xb1\xe7\x72\xd2\x7d\x51\x2b\x9a\x75\x45\x6e\x7d\x7a\xbc\x7a\xcc\xee\x66\x76\x3c\x39\xf8\x0f\xfd\x72\xe4\x99\x8d\x7a\xa0\x34\x81\x21\x1a\xc2\xc4\x9a\x4a\xa9\x11\xaf\x59\xc3\x5d\x45\x2e\x9f\xc0\xf3\xa4\x7b\x66\xa5\x72\xc3\x9e\x48\xde\x08\xc1\x3b\x8d\xdc\xcd\x30\xdb\x15\xad\xb5\xa1\x2a\xf5\x48\xdd\xe2\x48\x95\x36\x94\x9e\xcb\xd9\xf6\x42\xa8\x68\xd3\x19\x9d\x65\x47\xea\x0e\xe8\x14\x4d\x76\x13\x9d\x72\xb6\xfd\xd0\xc9\xdb\x74\x46\xa7\xdd\x17\xb1\x03\x52\x8d\x86\xbb\x89\xda\xcc\x2d\xaa\x2f\x7e\xb3\x86\x9d\x91\xbc\xbc\x50\x26\xb6\x7e\x28\xce\x9a\xed\x26\x82\xf3\x59\xf7\xc3\xaf\x6e\xd7\x15\xbd\x2c\x1d\x86\x70\x8e\x92\xa1\x88\x86\xef\x85\xe2\x62\xd3\x9d\x44\xf3\xc7\xf4\x05\x9f\xc1\x0b\x31\xf7\x5e\x88\x36\x5a\xf6\x40\xf5\x15\xba\x80\x17\x9b\xa1\xda\x68\xba\xa3\xa8\xfe\x99\xcf\x60\x23\x54\x67\x2d\x7b\xa0\x3a\x49\x6f\x10\xd9\x0c\xd5\x46\xd3\x1d\x45\x75\x16\xc2\xd6\x1b\xd5\x59\xcb\x1e\xa8\x5e\x40\x1a\xc2\x0d\x39\x88\xd9\x76\x47\x91\xfd\x5e\x4c\x61\x23\x6c\xe7\x4d\x7b\xa0\x9b\x22\xcc\x10\x0e\xd1\x66\x08\x2f\xb6\xde\x51\x94\x9f\xab\x49\x6c\x84\x74\xb3\x71\x1f\xb4\x63\x78\xb5\x29\xce\xf3\xa6\xbb\x8a\x70\x3e\x83\xcd\xb0\xad\x5b\xf6\x40\xb5\x28\xac\xbc\x19\xaa\x8d\xa6\x3b\x8a\xea\x8f\x7c\x06\x1b\xa1\x3a\x6b\xd9\x03\xd5\xcb\xc5\x62\xd3\x63\xd2\x68\xba\xa3\xa8\xfe\x95\xcf\x60\x23\x54\x67\x2d\x3b\xa3\x9a\xc4\xf3\xfe\xb6\xf8\xac\xd5\x6e\x22\x98\xc4\xf3\xfe\xd6\x78\xd5\xaa\x17\x62\x37\xb0\xc7\x1b\xed\x76\x16\xb9\x9b\x58\xe4\xb3\x76\x7d\x10\xdc\x1f\xb5\xbb\x8b\xd4\x0d\xf0\xd9\x8e\xca\xe5\x45\xf7\x38\xdf\xe5\xc5\xce\x21\x8f\x4f\xaf\x2b\xd6\x96\x17\x5d\xd0\x45\x19\xd9\x7b\xc4\xed\x3d\xe2\xf6\x1e\x71\x5f\xb3\x47\xdc\xa3\x84\xc2\x35\xe7\xde\x7f\xd6\x33\x99\xc4\xc9\x88\x82\x38\xc0\xe3\xa7\x13\x23\xa3\x84\x60\x4f\x6e\x5a\xa9\x68\xd3\x16\xfe\x76\x3d\x1d\x86\x4b\x72\xbd\xf7\xf5\xdd\x73\xb6\x3d\x67\xdb\x73\xb6\x0e\x9c\xcd\x40\xb0\xac\xed\x29\xd7\x36\xa7\x2d\x41\x4a\x92\xb0\xb2\x9c\xce\x3a\x57\x71\x9e\x15\xb7\x92\x18\xfa\xe9\x99\xf3\xc2\x19\x39\xff\xcb\x01\xce\xa1\x93\xa5\xcc\x45\xf9\x1f\x74\x16\x5f\x8a\x5d\x5a\xcc\x0a\x9d\xa7\xde\x56\x33\x94\x39\xc4\x39\x51\xff\x2b\x8d\xb1\xcb\x7b\x5b\x7b\xfa\x07\x70\x3c\x6f\x0d\x5a\xeb\x8d\xe9\x9a\xfc\x10\x50\xc3\x21\x3a\x0d\xb0\x4f\x49\xb8\x5a\xdd\x7d\x1a\x9d\x80\xdb\xd1\xc9\x9a\x33\x62\x51\x58\x7e\xb5\x72\xc2\xe5\x45\x1c\x3a\x20\x09\xc6\x14\xdc\x7d\x1a\xb9\xa9\xff\xe9\x09\xf5\x3f\x79\xc7\x4f\xc1\xed\x28\xf5\x6f\xd7\x7a\x31\x14\x64\x10\x04\xf1\x60\x90\x48\x56\x73\xf7\x69\x94\x8c\x4f\x27\xfe\x27\x70\x3b\xa2\xfe\xed\xda\x03\x39\xaa\x5c\x18\xa4\xc0\xf9\x6f\x7c\x78\x78\x78\xf8\xf6\x30\xc7\xa0\xff\xa9\x80\x2a\xe8\xdf\x4a\x28\xc7\xf3\xb2\x87\xc4\x87\x8b\x45\x72\xab\xf2\x50\x80\xc4\xeb\x57\xf1\x8c\xc1\xab\xbe\x79\x39\x45\x93\xad\xd4\x16\xda\xa6\xda\x3d\xff\x2c\x87\xdd\xca\x29\xd6\xf7\x29\xa6\xd7\xb1\x3f\x06\xdb\xf3\xcf\x32\x88\xad\x2e\x06\x75\xf8\xda\x39\xb7\x02\x39\xc1\xee\x18\x9b\xb5\x16\xda\x65\x90\x5e\xd9\x37\x13\x96\x55\x8e\xc3\xdb\x22\xec\x56\x62\xac\x85\x2c\x62\x96\xa0\x9a\x9c\xc4\x61\x12\x6b\x13\x4d\x85\x40\x74\xb3\xad\x9c\x72\x03\x91\x64\xd3\xed\x4a\x28\xaa\x41\x3b\x22\xd3\xe9\x34\x41\x43\x28\x7a\xe8\xcb\x82\x0b\x6d\xb7\x12\xa5\x5d\x26\xbf\xd1\xac\xb7\x73\xba\x0d\x14\xa4\xa6\xda\x95\x7e\x04\x78\x07\x04\x5e\x21\x7c\x1c\xd3\x21\xc4\x29\xbe\x9d\xa7\xcb\xa6\x2c\x4e\x1b\x48\x86\x31\x7d\xae\x3b\xb6\x55\x22\x30\x55\x46\x3d\x78\xe7\x44\xfd\x6f\x68\xf9\x8f\xfa\xdf\x53\x2e\x14\x95\xeb\x39\x3c\x0f\x43\x44\x69\x4a\x5e\xbf\x74\x64\xe5\x8d\xfb\xd7\x38\xc8\xd0\x93\xa0\x29\x0c\x9b\x52\x71\x6f\x84\x9b\x37\xa2\xd7\x00\xd7\x55\xd8\x2f\xdb\x01\x98\x39\x67\xe0\x7c\x58\x26\x88\x3a\x42\x4d\xe2\xda\xc0\x51\xc0\xb2\x9a\x12\x5c\xf9\xf4\x19\x89\xe7\xae\x77\x50\xa9\x98\x01\x1c\xf9\x61\x47\x4b\xdb\x87\x59\xa5\x15\x3c\x18\xe0\xf5\x81\xa9\x6c\x68\x0b\x04\xca\x73\x11\x1b\xe0\x4a\x28\x3f\xc3\xfe\x65\x8c\x23\xab\xb4\xcd\x97\x76\xed\x79\x23\x51\xd6\xa2\xde\xe8\x81\x7b\x58\x23\x18\x81\x98\xc6\xfc\x3b\x43\x96\xf6\x28\x29\x57\x6c\xb7\x6b\x0c\x20\x1b\xfc\xc7\xb4\x3b\x1b\x30\x1a\xb5\x33\x83\x9a\xeb\x92\xa6\xf3\x78\x07\xef\x4b\x58\x9f\x9b\x12\xd6\xe5\x8e\x84\x91\x25\x0e\xbb\x0b\xb9\x02\x7a\xe7\x90\x26\xa6\xd8\x19\x6b\x4b\x1c\x76\x43\x1b\x64\xbd\x65\x40\xdd\x6c\x17\x51\x28\xa6\xdb\x07\x8b\x90\x75\x38\xc5\x6f\x10\x2a\xb3\xc2\xbd\x71\x76\x6f\x9c\xdd\x1b\x67\xf7\xc6\xd9\x0e\xd7\x4e\x3a\x03\x23\x8b\xc3\x2b\x44\x6a\x52\x30\xca\x97\xf7\xcb\xc1\x28\xfb\xf0\x05\xbb\xfa\x98\xf6\x4f\xc2\xc8\xb9\x0d\xa1\x61\x4a\xfa\x1e\x19\x46\xc3\x1d\x3b\x34\xcc\x29\x77\xec\x36\x6f\xd2\x7a\x70\x2c\x71\x7f\xa3\x81\x6c\xb3\x95\x68\x6c\x9d\xec\xef\xa5\xe2\x23\xfb\x43\x72\x7f\x48\xee\x0f\xc9\xaf\xed\x90\xcc\xbe\xd4\x2d\xf7\xba\x4a\x53\x14\xd3\x57\xf3\x05\xbb\x75\x89\x77\x36\x9e\xa8\x43\xf0\xb9\x0b\x3d\x9f\xf3\x8d\x1f\x6f\x37\x4c\x5b\x24\x1b\x3f\x5e\x06\x76\xe1\xc9\x5c\xe7\x03\xdd\x74\x22\x66\xed\xb6\x92\x93\x37\x1c\x88\xf9\x84\xbb\x9e\x87\xba\x45\xfb\x09\x41\xe2\x87\x35\xf1\x59\xad\x7a\x56\xd9\x0b\xe1\x30\x8d\x6a\x85\x2f\xf5\xb6\x46\xfa\x32\x45\x2c\x05\xe9\x2f\x49\xfc\x3f\xd3\x98\xbf\x2e\x4a\x58\xac\x0d\x03\xc9\xf0\x32\x25\x3d\x6c\x6a\xba\xc5\xae\x91\x11\x49\x7e\xe2\xf3\xec\x4a\x43\x02\xbc\x95\x80\x6c\x65\xc9\x5b\x05\x2a\xd5\x68\xc7\x10\xa8\xa7\xda\xb1\x4b\x09\xde\x8a\xc0\x9b\x9e\x6c\xec\x66\xd7\xd0\x76\xd3\xb9\xb7\x9b\x76\x64\xc5\x49\x32\x14\x47\x7a\x6a\x2d\xa9\x47\x10\xd7\x04\xaa\x38\x33\x9b\x6d\x25\xfa\xda\xa6\xcd\x66\xe9\xd2\x1a\x33\xd1\xb0\xcb\x74\xab\xad\x9c\x70\x03\xbd\xe8\xc9\x76\xa5\x1a\x09\xdf\x8a\xc4\x4f\x76\x26\xcf\xc8\xd2\x62\xb1\xfe\xb4\x7b\xfc\xfd\x53\x0f\xe6\xfe\xa9\x81\xb3\xc7\x38\x66\x31\x4c\xe2\x3f\x38\x1e\xe0\x62\x31\xbc\x46\x84\xd6\x29\xcd\x49\x3c\x34\x40\xcc\xb6\xc3\x4b\xc8\x55\x88\xdb\xac\x22\x3c\xef\x3b\x4c\xf1\x65\x3c\x3d\x46\xf8\x3a\x26\x29\xe6\x2a\x42\x19\xcb\xda\xbd\x8c\x00\x78\x70\x6f\xf1\x03\x60\xfd\xc0\x7f\xfe\xfe\xbd\xd0\x6f\x0a\x4f\x84\x7e\xc3\x45\xe3\xc2\x43\x35\x19\xa9\x5f\xd1\xe0\x8e\x03\x8d\x9c\xe7\x8b\xc5\xe1\x7f\x6a\x4c\xe4\xf3\x1c\xb9\x27\x20\x5b\x1f\x4f\x1a\x78\x0c\xe1\x83\x76\xc0\x71\x98\x62\x06\x63\x8c\xc8\x30\x42\x17\xcb\xe9\x10\x46\x70\xc1\x90\x5d\x22\x41\x34\x4d\xae\x11\x39\xd6\x7f\xd0\xe3\x30\x81\x94\xc6\x61\x6d\x2f\x8f\x56\xcc\x5a\xe1\xa5\x76\xf4\x06\x8e\x2a\x8e\x91\x99\x8b\xe3\xf8\x74\xb2\x5a\xe5\xbf\x4e\x26\x07\xc8\x27\x68\x1a\x53\x86\x88\x5b\xd7\xf7\x68\x0e\x63\xec\x18\x68\x07\x48\xc9\x8f\x6d\x4d\x1c\x3e\x66\xba\x10\xa9\x90\x1c\xb8\x58\x24\x71\x08\xf9\xc0\xe4\x6b\x6f\xbd\x6e\xbf\x28\xaf\x2c\x1d\x49\x93\x04\x91\x61\x12\x5f\xa2\xf0\x36\x4c\x3a\xfa\x8b\x7b\x77\x9b\xe8\x56\xf9\xc7\x2d\xbe\x05\x40\x4a\xd2\x1f\xb8\xd4\xea\x13\x94\x2e\x10\x76\xef\x08\xa2\x88\xbd\xc8\x86\x39\x2a\xef\x35\x21\x42\xff\x46\x97\x5c\x32\x97\xfe\x90\xfc\x09\xc8\xdd\x53\x81\xa3\x9b\x18\x86\x08\x5f\x74\x3b\x18\xa8\x3f\x5c\x26\x64\x6e\x45\x17\xc6\xc2\xb3\xbe\x08\xad\xb8\x7d\xb5\x79\x85\xb5\xb4\xde\x4a\x1e\xde\x19\x0f\x11\x64\x50\xfe\xc7\xca\x13\xfe\x9e\x43\x1d\x0b\x6a\x3f\xa6\x88\x2d\x17\x5f\xc1\xa4\x6d\xab\x2e\x9f\x1b\x3f\xe4\x6c\x87\xd9\x8e\xb7\x1d\x25\x0f\x75\x7b\xa0\x98\x9d\x39\x12\x83\xcc\xb3\xf3\x63\xdd\x6e\xd9\x2f\xce\x58\xcc\x71\x68\x70\xa2\xe1\x34\x49\x2f\x60\x29\xf9\x5f\x9f\x03\xd4\xe0\x32\x9d\xf8\x6d\x7c\xe9\x1e\x9d\x0a\xe7\x19\x7d\x06\xca\xef\x3e\xcf\xc7\xf4\x0f\x31\x24\x65\x57\x3a\x28\xda\x77\x8f\x34\x4f\xb8\x89\x71\x94\xde\x78\x38\x90\x7f\x1c\xa0\x84\xa2\xc3\x1a\x58\x39\x47\x0f\x07\xf2\x0f\x01\x5b\x67\x37\xa6\x28\xb9\xd4\x46\x51\x1c\xf0\x5f\x6b\x25\x1f\xb4\x0f\xf9\x80\x04\x15\x23\x2a\x3c\x83\xa3\x42\x96\x6e\x79\x80\x5e\xde\xba\x79\x77\x73\x41\x18\xef\x09\xba\x8c\x3f\x79\x00\x8f\xc9\x64\xb5\x72\xf9\x3f\x01\x02\x39\x6b\xe5\x5a\xc5\x4b\xa9\x54\x8c\x0a\x96\xc9\x36\x8e\x1a\xa1\x04\x31\x74\xc8\x3b\x5c\xaf\x3d\x6f\x7d\xcf\x93\xa0\xc6\x99\x2a\x27\xda\x7a\x22\x33\x69\xb8\x2f\xed\x5e\x26\x90\xce\x86\x73\x44\x29\x9c\x96\x2d\x00\x8d\x04\x6b\x0a\x8f\xa2\x93\xe3\x25\x8b\x93\x52\x87\xc3\x74\xc1\x47\x5a\x31\x12\x6c\xb8\xa9\x0d\x74\x59\x0c\x93\x86\xf9\xb4\x7d\xc7\x00\x92\x13\xde\x6a\x75\xb7\x06\x30\x20\xbe\x18\xfb\x5b\x39\xf4\x97\xf2\x1d\x05\x34\x80\xab\xd5\x78\x02\xd2\x80\x2a\xf9\x24\x4e\xf1\x4f\x42\x2c\x8e\x11\x05\x71\xe0\x1a\x12\xaa\xe7\x42\xef\x20\x1d\x0c\x52\x65\x0a\x3e\x88\x2d\x6d\xfc\xcb\x94\xbc\x82\xe1\xcc\x70\x3b\x63\xde\x5d\x26\xfd\x30\xe0\x98\x03\xe1\x2b\xa1\x0c\x6a\xa3\xd2\x6a\x71\x76\xbc\x96\xf6\x58\x45\x25\xe5\xe5\x34\x48\x83\xac\xdb\x93\xc9\x17\x49\x23\x25\xf3\x3a\x82\xe0\xef\xe8\xf1\xd5\xb5\xe5\x21\x0c\x13\xcb\x53\xe1\x91\x68\x79\xbe\x48\x93\x38\xbc\xb5\xbc\x20\x29\x5f\xff\xca\xe3\x18\x33\x84\xa5\xcb\x70\xe5\x1d\x96\x32\x61\x85\xd6\x00\x01\x10\x50\x90\x82\xd8\x60\xab\x89\xb6\xb1\x27\x81\x90\x7f\xb8\x20\xfe\x41\xc8\xac\x44\xec\x2e\x37\x47\x3a\xc7\x83\x07\x96\xc1\xdd\xd5\xf5\x28\x23\x1a\x00\xc3\x24\x3f\x32\x80\x98\xdf\x88\x64\xbf\xe5\xbc\x46\x30\x7b\xc0\xe7\x33\xa2\xd9\xcf\x6c\x1e\xa3\x34\x7b\x26\xc7\x3f\x8a\xf3\x73\x28\xc9\xd8\x14\x1f\x44\xe5\xea\xda\xf4\xab\x14\x0c\x4b\xe0\x01\xc8\xfb\x9b\x23\x26\x2e\x25\x24\x04\x2d\x41\x80\xe5\x18\x4d\xc4\x13\xcf\x03\x8e\xc0\x75\x10\x04\x68\xb5\x72\xd4\x82\xf0\x5f\x9e\xbe\x84\x28\x7e\x85\xf7\xcf\xfc\x30\x41\x90\x58\x1d\x27\xb1\x1f\x12\x04\x19\x92\xfe\x93\x40\xc4\x9f\xcf\x63\x56\x03\xcb\x15\xf5\x98\x2a\x67\x4b\x7d\xb7\x26\x44\x8d\xfb\x31\x88\xc4\xce\x4f\x97\x05\xc9\x36\x31\xf7\xc4\xb2\x03\xbb\xcc\x7f\x0c\xf9\x5e\x8e\x87\x21\x4c\x92\x0b\x18\x5e\xf5\xe2\x9c\xa2\xe9\x31\x41\x51\x4c\x50\xc8\x86\x33\x88\xa3\xe4\xb3\x48\x3e\xe5\x31\x5f\xa0\xcb\x94\xe8\xe7\x76\x65\x0f\x79\x77\x26\x17\x1d\x0c\xdc\x22\x5b\xf5\x72\x0d\xce\x17\xdd\x0c\x06\xa5\x07\x7e\x14\x0b\xd3\xd6\x07\x35\xdf\xd7\x39\x42\x57\x2b\x57\x0c\x18\x91\x0f\x08\x46\x31\x46\x94\xba\x9e\xa1\xef\x4b\xcc\xb8\x4a\x2a\xf1\xe5\x5d\xae\x6b\x1c\xd3\xc8\x87\xd1\x35\xc4\x21\x32\xda\xaf\x3d\xaf\xa8\x03\x76\x39\x07\x2b\x0b\x4b\x11\xad\xda\x4b\xe4\xc2\x5d\xa4\x29\xe3\x6c\x62\x71\x9c\x01\xa9\x37\x72\xb5\x97\x92\x83\x7c\xb6\xf5\xcc\x46\x01\x2f\xb9\x92\x7c\xaf\xd5\x54\xfd\x8b\x33\x6d\x2a\x74\xce\x7c\x42\x9e\x2b\x18\x0b\xe7\x26\xe2\x83\xe7\x92\x41\xbe\x83\x73\xe4\xdd\x15\x2d\x28\x08\x58\xa1\xd4\xe5\x61\xc6\x5a\x9d\x27\x36\xb0\x83\xdc\x10\x90\x69\x4c\x36\x38\xe1\x86\x73\xdf\x85\x6e\x5e\x60\x05\x62\x5d\xde\xbe\x26\x31\x40\x1e\x6a\xfd\x61\x61\xfd\x37\xdd\xb7\x62\x8d\xf5\x94\x90\xe7\x92\xe2\xb6\xe5\x52\x91\x00\x32\x97\xd5\x34\xd2\x88\x8b\x35\x8d\x1b\x43\x48\x91\xbf\x8b\x5b\xb0\xe6\x36\xb8\xb8\x32\xd7\xb7\xa2\x98\xd9\x3c\x26\x24\xed\x9a\x8a\x84\xb3\x00\xeb\xe9\x2d\x4c\xea\x18\x61\x36\x2a\xf5\xeb\x65\x67\x2a\x64\x8c\xc4\x17\x4b\x86\x7e\x8c\x71\x14\xe3\x29\x1d\x8d\x85\x69\xc9\x99\xdc\xfb\xf4\xb1\xc4\x8c\x3c\x80\x5d\x25\x8d\xa3\x70\xb8\x20\xe9\x75\x1c\x95\xad\x08\x92\x40\xf5\x3b\x7a\x9c\xc2\x25\x9b\x3d\x7d\xa8\x3a\x7c\x85\xb9\xc1\xba\xb9\x39\x62\x7c\x37\x31\x9b\x0d\x97\x24\x71\x4c\x11\x3b\xbb\x2f\x16\x74\x8b\xc1\xc5\x32\x4e\xa2\x5f\x49\x62\x33\x37\x70\x31\xe5\x02\x52\xf4\x2b\x49\xd6\x80\xaf\x94\x45\xee\x11\x40\x5c\x20\x91\x0b\xe6\x01\x2c\x1f\xe9\x7e\x5d\xaf\xe0\xc0\x27\x20\x17\xe9\x62\xb9\x70\x3c\x5f\x2c\x3e\x06\x63\x55\x9d\x99\x6f\x63\x81\x24\xe4\xf9\x6c\x86\xb0\x4d\x4e\xb9\xe3\xd8\x4c\x49\xfc\x87\x20\xae\x73\x51\xf1\x19\xc9\xd2\xcc\xa0\xf0\xea\x45\x1a\xa1\x51\x84\x78\x8f\xbf\x7e\x78\xfd\x42\xd3\xa0\x08\xf3\x8e\x90\x07\xf4\x02\x8d\x98\xd0\x19\x41\x98\xa4\xd4\x62\x59\x2d\x0d\xda\x27\x68\x9e\x32\xe4\x78\x7c\x4f\x0a\xd5\xdd\x66\xcd\x13\x7d\x65\x4e\x5d\xf2\xa7\x2b\x4c\x7a\xd9\x86\x81\x7a\xc3\x68\xdb\xac\x3c\x40\xb2\x51\x65\xb1\xd7\xd8\x03\x44\xaa\x16\xb4\x40\xb2\xb0\xaf\x59\x5c\x30\x09\x4e\x0e\x12\x29\xc3\x05\x24\x70\x5e\xab\x67\xca\xbb\xfa\xc2\x23\xa9\x55\xf2\x17\x31\x9e\x1e\xdf\xc4\x49\x14\x42\x52\xc9\xce\x76\x7f\x85\xb2\x86\xaa\x49\x49\xbd\x63\xbe\x18\x23\x2d\x20\xd5\xbb\x5b\xdb\xac\xb6\x72\xae\x3f\xa5\xa4\x66\x81\x9b\xcc\x0b\x99\x57\x90\x14\xdb\xc5\x47\xc5\x11\x7a\xa6\xa6\x79\x85\x6e\x45\x0e\x00\x82\xa2\x65\x88\x4c\x55\x92\xe3\xa2\x1c\xf0\x84\xc6\x78\x72\xc6\xc6\x78\x12\xd8\x88\x73\x8c\x27\xde\x88\x69\x87\x24\xc0\xd6\x1e\xb8\x5b\x7b\x23\xa4\xcd\xc1\xf7\xa4\x01\x8a\x20\x09\x67\x75\x6b\x2e\xdf\x1e\x5f\xc6\x09\x93\xe7\xb3\x4d\xc1\x2b\x01\x55\xb5\xc9\x12\x80\x45\xad\x2c\x41\x54\xf4\xcb\xd2\xfb\x92\x6e\x5b\x7a\x5b\x56\x72\x4b\xaf\xb1\x28\x1e\xda\xfc\xfe\x58\x9d\x97\x4d\x70\x0a\xa4\xb5\xbf\x0e\x5d\x61\x7d\x61\x52\xde\x5a\x05\x38\x2e\xa7\x37\x29\xd0\x20\x01\x4b\x10\x82\x08\xcc\xef\xbb\xdf\x16\xf6\xfd\x76\xc9\xf7\xdb\x3c\xdf\x6f\xc6\x3e\x5b\x68\xf6\x3f\x6f\xd3\xd8\x15\xc1\x79\x60\xc1\x09\x57\x2b\xda\x45\x51\xe6\xd2\x53\x3a\x7b\x71\x7f\x5f\x7a\x42\xb1\x77\x4f\x40\x5a\x78\xa8\xf4\x79\xf7\x04\x90\xc2\x73\xa1\xd6\xbb\x27\x00\x16\x9e\x5e\x5d\xf3\x67\xb4\xf0\x8c\xaf\x21\x7f\x1a\x17\x9e\xaa\x21\xbf\x56\x7e\x8c\x1c\x60\x59\x69\xa6\xe7\xe5\x9e\x80\xc4\xd6\x9a\xbf\x08\x8b\xad\xa4\x29\xc1\x3d\x01\x91\xf9\x7c\x7d\x30\xcf\xb8\x93\x44\x92\x30\xfd\x5b\x14\xf3\xc5\x18\x4d\xb8\x12\xce\xf1\x3d\x2b\x6c\xff\x85\xb9\xfd\x67\x5d\xb6\x7f\x5a\x4e\x14\x69\x10\x69\x4a\xd8\x31\x17\xd5\xa0\x70\xbe\xac\xa1\xe4\x1a\xa0\xa1\xf6\xfe\x6c\x86\x2e\xef\xe4\xf2\xfb\x70\x86\xb8\x2e\xdc\x04\x52\xc3\x94\xca\x60\x16\xb6\x54\x06\xa9\xb2\x9d\x32\x84\x8d\x75\x95\x61\x2c\x9b\xb9\x0a\x63\x11\xfd\xaa\x5b\xd9\x90\xa6\x23\xbd\xbf\xa2\xd6\xfd\xc5\x57\xd4\x03\xf3\xe0\xce\x20\x40\x63\x6f\x59\xc9\x1a\x9b\xef\xe5\x06\x21\xe6\x23\xb1\x0c\xa5\xad\xe4\x81\xc2\xf6\xa5\xe6\x9b\x6c\xf7\xa6\xe6\x53\xbd\x1f\x63\xf3\x61\xbe\x79\x13\xf3\x71\xbe\x49\x96\x85\xc7\x6a\xa3\x1a\x3b\xca\x5b\x1f\x44\xd9\xc6\xc9\x91\x6c\xdb\x38\x73\xb5\x71\xee\xc7\x1d\x23\x3b\x77\x9c\x17\x76\x62\x64\xee\xc4\x79\xdd\x4e\x94\x2b\x30\xec\x79\x47\x67\xea\xc9\x94\xa5\x04\x0d\xf5\xce\x7c\x6c\x57\x84\x9a\xdb\x39\x66\xbb\x9d\xab\x55\x9a\xea\x27\x3d\x23\xe8\xb2\x26\xfa\x5a\xbd\x3a\xd6\x20\x9f\x67\xa6\xd9\x80\x6a\xb4\xf8\x9a\x1b\xb5\x9f\x20\x65\x3f\xa6\x29\xd3\x36\xda\xac\x89\x76\xbd\x09\x9c\xe7\x4e\x10\x04\xd8\x67\x90\x4c\x11\xf3\x19\x9c\x72\x01\xf2\x4c\x3f\x28\x7f\x44\x69\x0c\x94\x95\x54\x08\xca\x5c\x07\x3a\xd2\xa7\x1d\x05\xc8\x5f\x40\x82\x30\x7b\x95\x20\x2e\xa8\x7e\x8f\x06\x03\xe7\xb9\xc3\x25\x4c\xfd\x81\xef\xbd\x0a\xd4\x41\x1e\x69\xa2\xbf\xee\x1d\x90\xc1\x00\xa3\x9b\xfc\x76\xd9\x45\xc2\x44\xe2\xcf\xe1\xed\x05\xfa\xa7\x34\xfc\xf1\x7d\x97\x86\x42\x24\xf6\x2f\xd2\xe8\xd6\x87\x51\xf4\xea\x1a\x61\xf6\x86\xeb\x2f\x58\x78\x97\x24\x31\xe7\xde\xd8\x6b\xbf\xd3\x53\xa3\x28\xf6\xc8\x55\xab\x6b\x54\xdb\x69\xab\xa0\xce\xf7\x7a\x37\x8f\x13\x2b\x4d\xf2\xef\x0e\x69\xba\x24\xe5\xa2\x5b\x79\x4b\x84\xaf\x1b\xaf\x87\xb5\xf1\x0d\xe1\x6b\xcf\x75\x5e\xfc\xf2\xee\xfc\xd7\x37\xbf\xfd\xfa\xfa\xb7\x97\xaf\xcf\x9f\xff\xf8\xe6\xd5\x6f\x1f\x5e\x3d\x7f\xf3\xf1\xf5\xdb\x57\x5c\x7d\x1c\x4f\xb4\x86\x37\x76\xb2\x83\x46\x9c\x49\x93\xba\xb4\x63\x19\x8f\x77\x08\x5a\xa4\x34\x66\x29\xb9\x3d\xce\x14\x45\x04\x9c\xe3\xcc\xd4\xe2\x78\x40\xea\xf9\x05\x58\x4e\xb0\x06\x8c\x3e\x1b\xe8\xe8\x2e\x4c\x05\x77\xaf\xe9\x99\xe3\xd5\xc8\xf4\x35\xce\x07\x22\x6f\xa6\xf2\x7e\x04\xd3\x37\x3b\xe1\x0f\xcc\x4f\xaa\x03\xc0\x04\x91\x8f\x0c\xa0\xf5\x7a\xe2\xd9\x6f\xe6\x32\x2d\x4a\x9b\x31\xa4\xcb\x8c\xd6\xa1\xb3\x61\xe9\x91\x66\x0e\xf0\x92\x26\x1b\x0e\x52\xa3\x89\xec\xd9\xf3\x32\x4b\x09\x27\x23\x53\xd7\xcb\x7a\xa5\xb6\x61\x66\xbb\x3e\x07\x1b\xe3\xc9\x81\x31\x74\xa1\x42\x9e\x95\xcc\x77\xe6\x08\xc4\x03\x0f\x60\x50\x1d\x1e\xf1\xbc\x51\xde\xb2\x69\xc2\x35\xad\xd7\xf2\xff\x1e\xeb\x8a\xbc\xf7\x0d\xb8\x6d\x2f\xce\x10\x8c\x86\x17\x24\xbd\xa1\xa8\xc9\xfa\x78\xff\x43\x20\x7f\xa0\x0e\x82\xe2\x97\xed\x2e\x77\x62\x33\x74\x9e\x8b\x16\x10\x3b\x9b\x59\x38\x93\x11\xf7\xce\x35\x86\xeb\xa2\x09\xa9\x5f\x80\x21\xe5\x7b\xb9\x14\x63\x58\x3e\xd7\x8e\x8a\x11\x86\x83\x41\x63\x7c\xa1\x2d\x66\xad\x26\x8a\xb1\x63\x30\x1e\xcd\x83\xf1\xf0\xe6\xc1\x78\xb8\x1a\x8c\x87\xdb\x82\xf1\x70\x1e\x8c\x87\x3b\x06\xe3\xe1\xfe\xc1\x78\xd8\x2b\xce\xb4\x84\xad\xee\xa1\x78\x74\x41\x10\x8c\xbe\x5c\x14\x1e\xdd\xc2\x50\xf5\xf6\x6b\xe7\x34\x28\x1d\xdf\xd9\xd0\x84\x19\x59\x15\xe8\x73\x1d\xb9\x6f\x7d\xc7\x03\x24\x28\x67\x10\x05\xd0\x98\x03\xf9\xe1\xe9\x19\x19\x3e\x1d\x9d\x78\x80\x06\x4f\xbf\xa7\x7f\x23\xdf\xd3\x27\x4f\x3c\x38\xa6\xc3\xa7\x13\xe3\xa2\x87\x66\x33\xc3\x83\x01\x2b\x7c\x2b\x0a\x1d\xef\x6c\x9c\x7d\x32\x63\xe6\x5e\x26\x23\x40\x6f\x34\x66\xc6\xaf\x35\x88\x83\x8a\xeb\x69\x26\x75\x71\x12\x49\xa0\x34\x53\x8e\xb0\xaf\x4a\xad\xba\xce\x31\x49\x53\x36\x94\x3e\x01\x0e\x17\x17\xe4\x5f\x9e\x01\x91\xbf\x44\x51\xcc\x0a\xaf\x2e\xd3\x44\x5c\x76\x38\xc7\xa2\xcc\xbb\xe3\xad\xe5\xa9\xaa\x4f\x5f\x79\x8c\xc9\x49\x1c\x9b\xf6\xeb\x2c\xb4\xb6\xf6\x82\x28\x73\xa7\x35\x9a\x09\xb9\xb4\xec\xbd\xac\xc0\x2c\x1f\x21\x9e\x91\x75\x4a\xb8\x94\x58\x0c\xc1\xe3\x52\x0e\x24\x47\xcd\x4e\x14\x73\x9c\x54\x2d\xb8\x66\x0c\x37\x1a\xb3\x49\x21\x9f\x96\xa6\x1c\x56\xa5\x0f\x6c\xd2\xf8\x0f\xa7\x67\x6c\x78\xca\xe9\x83\x04\xa7\xdf\x93\xbf\xb1\xef\xc9\x93\x27\x1e\x1e\x93\xe1\xa9\x49\x1f\xa4\x98\xe9\xc0\x22\xe9\xba\x69\x31\xc5\xea\xb8\x68\x90\x06\x68\x62\x60\xcf\xf3\xd6\x00\x49\xf3\xb1\x67\xf3\x64\x1e\x3b\xf3\x34\x42\x32\x84\xcd\xc9\xec\xe3\xbd\x91\x60\x5c\x02\x65\x03\xb1\xef\x23\xc1\x3c\xd5\x69\x18\x04\x01\x1a\x0c\x8e\xd8\x60\xa0\x9f\x70\xc1\xa8\x68\x5e\x57\x32\xaf\x32\x0d\x38\xff\xd7\x59\x1b\x6c\xa4\x82\x71\x93\xab\xe0\x1f\x4e\xcf\xb0\xc4\x38\x0d\x4e\xbf\xa7\x7f\xc3\x62\x47\x92\x31\x2d\x62\x9c\x3e\x20\xc6\x49\x11\xe3\xca\x58\xdf\x22\x74\xaa\xd3\x3f\x97\x34\x4d\xea\x1c\x6d\x21\xad\x49\x3f\x70\x26\x09\x09\x5b\x69\xce\xd8\x51\x3b\x3a\x03\x19\xa9\xb9\x9b\x83\x5f\x8b\x6d\x66\xd3\x89\xb4\xa4\x49\x95\xbb\x41\x41\x47\x7d\x77\xfe\xfe\xf9\x8b\x57\xe7\xbf\xbd\x7a\xc7\xf5\xd4\x97\x8e\xe7\xdd\x8d\xf9\xa9\xc4\x55\x08\xc6\x62\x3c\xe5\x52\x6b\x14\xfa\x99\x0d\x90\xfa\xe2\x78\x28\x3f\x54\xa7\xc7\xa4\xc5\xaf\xb2\xa2\xf1\x78\x40\xf1\x01\xfa\x01\x2d\x52\xc3\x83\xc1\x50\x13\x15\xcf\x47\x98\x4b\x31\x91\x53\xf1\x7f\x18\x55\x8f\xcf\x0d\x7a\xe5\xdc\xb2\xdc\xb1\xe1\xe9\xeb\x6c\xd0\xe5\x81\xf4\x6d\x3c\xfe\x6f\xff\x78\x7a\x60\xea\x91\x45\xbb\x6b\x76\x9f\xe9\xf9\xf2\x06\xc8\xea\xa6\x87\x2a\x82\xc3\xba\x21\x4f\x39\xca\x8f\x6f\xff\x37\xe5\x01\xec\x2f\x20\x9b\x39\xc0\x31\xce\xf6\x04\x38\xc7\xb2\x23\xbb\xd6\xcd\x59\x2e\xa8\x3d\xbe\x2b\x8b\x29\x7d\x93\xbc\x3b\x1c\xe4\x99\xc5\x59\x2e\x36\x28\xc7\x99\x6e\xbd\x71\x39\x20\x53\x9d\xe1\x60\x10\xbb\x08\x40\x80\xbd\xb5\xf0\x87\x67\xf6\x2f\xf4\x1b\xab\x8b\x00\xe1\x72\xb8\x58\xf9\x24\x4d\xaf\x96\x8b\x7c\xdb\x44\xe9\x9c\x23\x2a\x4d\x99\xeb\x49\xd7\xf6\x37\x31\x65\x3e\x8c\x22\xd7\x99\x41\x3a\x54\xd4\xc0\x45\xe3\xca\xae\x7a\xfe\xe2\x8d\xb1\xa5\xb8\x30\xd3\xb7\x77\x18\x26\x54\xa5\x22\xdd\xc4\x5d\xd2\xa6\x8f\x52\x94\x48\x27\xe8\x5e\x46\xae\x07\xb6\xb7\x1a\x83\xa8\xb7\xb5\x1e\x35\xda\xd2\x9e\xbf\x7b\xf1\xcf\x5f\x3e\xfc\x76\xfe\xea\xcd\xab\x17\x1f\x5f\xff\xf2\xce\xc9\x7c\x64\x6b\xd0\x0c\x48\x50\xdd\x21\xd2\x32\x9b\x59\x4c\xcf\xb8\xb8\x6c\xd8\x5a\x01\x12\x29\xfc\xab\x02\x0f\x71\x51\x66\x3e\x8d\x2f\x5d\xa9\xe0\xe6\x77\xfc\xfe\xc5\x92\xb1\x14\x0f\x06\x4f\x83\xfc\x57\x96\x48\xc4\x8f\x20\x83\x14\x31\x7f\x46\xd0\xa5\x99\x11\xd5\x95\x9a\x01\x62\xcf\xb5\x3f\x94\xeb\x70\x18\x07\xe0\xcc\xbd\x9c\xf9\xd3\xea\x7b\xef\x00\x72\x8d\xab\xd0\x71\x00\x01\x53\x36\xd5\x0a\xb8\xb7\x5e\x03\xda\x69\x5a\xd6\x21\x1f\x95\xbc\x28\xaa\xc7\xe2\x0f\x27\x83\x41\xbe\x6d\x0d\x6f\xff\x33\xf3\xc7\x48\xba\x93\x02\x2c\x67\x75\xae\xa9\xc2\xe5\x8b\x75\x74\x2a\x12\x13\x91\xc0\x89\xe9\x8b\x34\x49\xe0\x82\xa2\xc8\x89\x85\xfa\x74\x84\x7d\xe3\xe1\x60\x80\x33\xbb\x80\xeb\xe9\x11\x9c\xaa\x84\x43\xc8\xbb\x5b\x67\x2a\xa5\xeb\x0d\x06\x0d\x48\x5e\xb7\x5b\xb9\xe7\xe9\x92\xa2\x28\xbd\xc1\x0e\x80\x1e\xe8\x04\xbd\x5c\x88\x63\xf7\x01\xad\xe2\x4d\x83\xa8\x6f\xa0\xc6\xf1\xc8\x86\x74\x19\x45\x26\xcf\xb2\x66\x97\x4e\xe5\x4a\x54\xeb\xd4\xa9\x9f\xce\x17\x90\x1d\x4f\x11\xd3\x09\x44\x8c\xcb\xe6\x3a\x90\x24\xbe\xc8\xbd\xbb\xe5\xa3\x88\x26\x43\xf4\xc9\x6a\x54\x03\xf0\xa1\x38\x1c\x2d\xfb\x03\x9b\xb8\xa8\x67\x75\x75\x4e\xbe\x56\xff\x5e\xf9\x9d\xa2\xf0\x80\xbc\x03\xea\xf3\x03\x8e\x93\xd6\xc7\x4c\x8b\x70\xf2\xb9\x66\xd1\x6b\xc2\x8f\xca\xb8\xd9\xa5\x9e\x0f\x97\x6c\xc6\x45\xb8\x10\x32\x14\x09\xe9\x92\x1e\x1c\x95\x73\x1a\x0d\x06\x15\xc7\x62\x0f\x50\x3f\xbd\xbc\xac\x7e\x15\x0b\x1b\xf3\xba\x93\x7b\x92\x8d\x86\x6e\x60\x72\x95\xf9\xc2\x59\xa9\x28\x89\x2f\x8c\x10\x6d\xe1\x3f\xf3\x85\x7d\xbf\xcb\x63\xae\x59\xed\x16\xaf\x6e\xad\x69\xc0\xc3\x18\x1f\x12\x3f\xeb\xcf\x33\xfe\xf6\x67\x90\xfe\x72\x83\xb3\x81\x43\xbd\x36\xf2\xdc\xf3\x64\xb2\xf7\xa2\x3b\xe1\x13\xd8\xc9\x13\x7f\x1e\x7f\x8a\xb1\x70\xaa\x12\xe9\x2e\x54\x62\xff\x5a\x2f\x41\x05\x2e\x40\x2f\x92\x34\xbc\x8a\xf1\x34\x6b\xd3\x72\x53\xd6\xcf\x72\x4d\x76\xc0\x72\x4d\xfe\x34\x96\x6b\xb2\xdb\x96\x6b\xb2\x85\x96\xeb\x86\xdc\x6e\x6f\xf9\x2e\xd3\xa1\x5c\x79\xd8\xdb\x9d\xd6\xcd\x6b\x52\x7e\x65\xaa\xbb\x07\xd4\x96\x1c\xdd\x2d\x69\x7d\xe2\x2f\x0d\x9f\x05\x82\xdd\x49\xc7\x9e\xbb\x77\x3a\xc9\xc3\x28\x8f\x57\xcf\x4b\x25\x8c\x38\x16\xc1\x39\x0a\x09\x62\xaf\x5f\x8e\x0a\x55\x02\x44\x21\x85\xb5\xb7\x06\x49\x3a\x4d\x97\xd6\x90\xf6\xc2\x97\x65\x24\xaf\xeb\x48\xf7\x2d\xe9\x95\x8d\xab\xfc\xd3\x90\x37\x01\x11\x76\xc3\x82\x3d\xe5\x12\xa1\xe8\x02\x86\x57\x3e\xfa\x84\x42\x2e\xdf\xb9\xd5\xef\x12\xae\xfc\xa6\xbe\xe8\xdf\xad\xfa\x9b\x1b\x70\x22\x94\xe7\xa5\x18\x98\x12\x97\x08\xe0\x6a\xb1\xbc\x49\x05\x8e\xe8\xc2\x11\x57\xe4\xed\x61\x16\x8a\x61\x8a\xb5\xe4\xbc\x52\x45\x6e\x7c\xa6\x8c\x71\x05\x42\xba\x93\x21\x67\x6f\xd3\x08\x25\xfd\xe2\xad\xa5\x11\x94\xa3\x2f\x96\x7b\x9b\x77\xe7\xad\x41\x84\x38\x9d\x5d\x43\x86\x7a\xf5\x77\x20\x1d\xb1\x4b\x01\x94\xb9\xb5\x1f\x38\x31\x43\x73\xa1\x81\x38\xde\x41\x81\xbe\x62\xfa\x0e\xdd\x48\xd5\x5a\xa5\xa3\xfa\x80\xc2\x94\x44\x6e\xb7\x9c\x75\x6a\x35\x94\xc1\xe6\xe1\x0f\xbc\x87\xd2\x9a\x9b\xd9\xc0\xba\x43\x39\x12\x35\x6e\xe5\x6a\x01\xe9\x70\x0e\xf1\x6d\xdd\x24\xa5\x37\xf2\x3c\xc6\xf1\x3c\xfe\x43\x12\x48\xf3\x61\x0e\x32\x45\xb1\xe8\x12\xcf\x4f\x1d\xf5\x64\x8a\x98\x21\xb2\x48\x4e\x4d\xb5\x34\xd4\x04\xc3\xbb\x61\x22\xd5\x10\xa9\xda\xc5\x58\xb9\x22\x5f\xb1\x8b\x97\x88\x86\x24\x5e\xb0\x54\x32\x7c\x3f\xcf\xb1\xb1\xf6\x3c\x0f\xc8\xcc\xb5\x8a\x28\x31\x20\x5e\x9e\x50\xb6\x78\x54\x18\x7e\xfc\x8c\x0b\x11\xe8\xac\x6e\x65\x99\x5e\x4e\x0c\x8a\x09\x3d\x32\x99\x54\xfd\xbe\x21\x31\x53\x7f\xaf\xbd\x91\xb8\x56\xc1\x00\x3d\xd8\xc1\x51\x75\x1b\x50\xa9\x74\xd1\x6a\x35\x9e\x58\x0c\x86\x2a\x98\x4d\xdf\x1c\x8e\x18\x10\x97\x87\xfc\x58\x5b\x57\x8a\xb6\xa0\x31\x99\x0c\x06\x2e\x14\x19\x1c\xc6\x64\xe2\x01\x28\x62\x68\xa8\xc5\xc2\x52\xfb\x45\x8b\xfc\x97\x9b\xd9\x4f\xbf\x67\x7f\x2b\xdb\x14\xbe\x67\x4f\x9e\xe8\x81\xca\x6a\x35\xb9\x2d\x81\x99\x86\x05\x36\x19\xdd\xad\x0f\xd8\xbf\x3d\x3d\xc3\x8a\xfc\x5c\xe8\x81\xa3\x93\x1a\xf3\xa6\x5c\x62\x38\x66\x13\x51\x65\xa6\x85\x92\xa8\x75\xed\x63\x44\x5d\x04\xda\x9a\xba\xd0\xf3\x46\xc6\x98\x6a\x06\x54\x4f\x5c\x6d\x54\x0e\x81\x3a\x97\x72\x37\xbf\x7c\x49\x1d\x67\x0d\x64\x6c\x37\x48\xcb\x04\x02\x0d\x93\x71\x83\xf5\xb9\xc0\x7c\x75\xc7\x8e\x17\x04\x82\xc3\xda\xa9\x8a\x05\xc4\xbd\x5b\x03\x0c\x0a\x8d\xdf\x89\x60\xb1\x6a\xf9\x20\x13\x48\xe8\x35\x6c\x0c\x27\xa5\xa7\x1e\x60\x62\x16\xb1\x85\xdc\x1a\xc7\xef\x94\x8a\x3e\x99\x73\x10\x3d\x26\xd6\x83\x92\x20\xba\x48\x71\xf4\x53\x4a\xfe\xd7\x12\x11\x75\xc4\x8c\xac\xf7\xa3\xc6\x61\x67\x65\x53\xa8\x5c\xfa\x33\x8b\xbe\x7f\xcf\x59\x73\x8c\x68\x40\xdd\xfc\x47\x5e\x71\xd3\xc5\xbe\x32\x02\xbc\x8e\xb8\xaa\xce\x29\x2e\xbb\x7d\x18\xc6\xf2\xd9\xad\x03\x1c\xc3\x54\xe0\x00\xe7\x25\x64\x30\x44\x98\x71\x8d\xd4\x2b\xf4\xf6\x2e\x8d\x0a\x5d\xe1\x34\x2a\xf4\xc3\xdf\x57\x3a\x71\x38\xee\xc5\xc0\xa5\xf0\xc3\xc4\x85\x5f\x01\x3b\x0f\x8b\x17\xf1\xb1\x86\xeb\x0d\x03\x6b\xc8\x86\x35\xf4\xa0\x58\x43\x9b\x63\x4d\x9c\x38\x39\xd2\x28\x22\x15\xdb\x00\xc8\x3d\x07\x3b\xc7\xa4\x55\xa7\x17\xa4\x2e\xc9\x30\xd1\x77\xae\x80\x94\x66\x58\xea\xad\xe3\x74\x41\xde\x26\x28\x1a\x8d\x62\xa3\x3b\xcf\x03\xa4\x28\xa6\x25\x5d\x84\x97\x3f\x81\x98\x26\x9c\x66\x1f\x42\x48\x7b\xc4\x99\x7d\x1e\xae\xf8\x21\x4d\x10\xcd\x4b\xd2\xab\x07\xba\x54\x80\xfe\x7d\x36\x9e\x8c\xd4\x9f\xdb\xc5\x9e\x4a\xc3\x47\xa5\xe1\xa3\x7c\xf8\xea\xcf\x47\xe3\x13\x72\x24\xa5\xe4\x9a\xf2\x69\x65\x1b\x76\x20\xce\x3f\xc1\x26\xa4\x49\xca\x4a\x73\x13\xb3\x18\x8a\x17\x45\xa8\x1d\xca\x10\xa8\xc6\x2d\xeb\x52\xee\x6d\xbc\x7b\x1b\xef\xde\xc6\xfb\x95\xdb\x78\x73\x17\xcd\x82\x95\x54\x18\xf0\x2e\x63\x1c\xfd\x78\x7b\x9e\x2c\xa7\x6e\x41\x2f\x32\x2b\xe1\x4a\x7b\x9f\xf6\x16\x95\x4e\x47\x7e\x14\xfa\xc2\x03\xb2\xf4\x4e\x79\x73\x7a\xbe\x72\xc6\xa2\xcb\x0b\xca\x88\x7b\xea\xd5\x67\xf4\x38\x64\xf5\x96\x67\xc3\xca\x5c\x3f\x3c\xbb\xe9\x59\x3f\x75\x3c\x90\xdb\xaf\x2b\x2a\xa8\x1a\xae\xe4\x96\x0f\x6e\xa6\x36\x5d\xc7\x01\xdc\xcc\x50\x0d\x9b\x0d\xd5\x06\x1a\x03\x04\xa0\xc5\x5a\x0d\x01\x56\x71\x3f\xb5\x46\x6e\x76\x0f\x53\xb6\xfd\x5c\xe8\x9a\x32\xa8\xdf\x01\x81\x77\xe0\x80\xf8\x13\xd6\x92\xda\xcd\x03\x62\xc7\x2a\x2d\x16\x95\xaf\xdf\x34\xeb\xa8\x39\x17\xf4\x6b\xc7\x13\x7e\x08\x9b\xdc\xc7\x48\x38\xdd\x11\x50\x27\x48\x31\x89\x25\xc8\x3f\x04\xee\x14\x13\xcb\xbf\xa5\x3c\x6b\x32\x6d\x48\x73\x39\x99\xfa\x80\x19\x57\x3c\xf2\x92\x50\xf0\xae\x17\x62\x86\xb5\x97\x94\x02\xe6\xd7\x45\x04\x33\xfe\x56\x76\x5e\x02\x06\x48\x4d\xba\x1f\x23\x52\x61\x91\xc4\xcc\x75\xfc\xbc\x90\x39\xf2\x17\xe9\xc2\x55\x87\x9e\xe9\x8f\xef\x22\xff\x5f\x69\x8c\x05\xb0\xfe\x8a\x64\xb4\x7d\xbe\x42\x6f\x62\xe1\x94\x26\xbf\xe2\xdd\x89\x3a\x54\xd2\x6d\x75\x54\x3c\x9d\x2f\x09\xa2\x33\x57\xe4\x86\xe5\x34\x51\x78\x5b\x3f\xae\x35\x40\x7c\xc7\xd5\x63\x11\x29\x88\x32\x82\xaa\x10\xe5\xc9\x15\x20\x32\x69\x23\xe4\xfb\xb5\x36\x7b\x58\x87\xe5\x0a\xab\x43\x2d\xc5\x78\xdc\xf3\x8e\x37\xcf\x6b\xda\x76\xcb\x2b\xb1\x96\xdd\xf2\x0a\x69\x58\x1f\x8d\x2a\x2e\xca\x1e\x16\x43\x7c\x03\xeb\x92\x2d\x8a\x48\x82\x2a\x8e\xbf\xd4\xd4\x0a\x6b\x50\x9c\x9a\x1c\x65\xcb\xd4\x64\xfb\x7c\x6a\x51\x95\x38\x1e\x76\x6a\xd2\x8d\xb1\xff\xd5\xbc\x39\x33\x39\xc8\x96\x99\xc9\xf6\xd9\xcc\x3a\x95\x93\x15\x02\xaf\xca\x3d\x55\x93\xb5\x43\x80\x14\x1f\x41\xc6\xac\xa9\x65\x05\x9b\x2f\xa4\x86\xdb\x91\x2b\x47\xe4\x9f\xbf\xf9\xf5\x1f\xbf\xfd\xfc\xea\x7f\x07\xc8\x7f\xff\xe1\xf5\xdb\xe7\x1f\xfe\xb7\xf8\x95\x85\x57\x9b\x0f\x9d\x65\x1c\x39\x07\x46\x1b\xe7\xf5\x4b\x47\x79\x4d\x56\xd2\x13\xba\xd0\x25\xc1\xdd\x1a\x88\x46\xa0\x98\xb4\x46\x0b\x5f\x9e\x07\xa0\x4b\x84\x97\x49\x0b\x84\xb4\x51\xdb\x61\xc0\x9d\x7a\xf4\x9f\x62\x8a\x8e\xb3\xd6\xad\xb8\xfc\xd2\xd6\xf3\x87\x65\x82\x68\x1b\x90\xe4\x0b\xaf\x05\x97\x2f\x83\xe2\x25\x27\x90\x0c\xf4\x6d\x1a\xc5\x97\xb7\x9d\x40\x0d\x8b\x7b\xfd\xf7\x89\xe7\xb5\x3b\x61\x2a\x72\x0e\xd3\x94\x44\x31\xae\xa9\xa7\xbf\xa7\xea\x8e\x54\xfd\x2e\x8d\xd0\x83\xd0\xb5\xe8\xa8\x8d\xb4\xf8\x9a\x95\x81\xf4\xcb\x73\x34\x95\x79\xae\x9b\xfb\xe8\x44\x48\xb2\xc3\x5b\x1c\x7e\x8c\x2d\x7b\x29\x27\xcd\x3e\x04\x17\x85\xbd\x09\xad\xf0\x84\xa0\x44\x38\xce\xd2\x59\xbc\xb0\x54\x36\x00\x44\xb9\x0b\x1c\x14\x63\xd6\x77\x8f\x0a\x7f\xfa\xe5\xc3\xab\xd7\xff\x78\xd7\x97\x26\xcd\x66\xe6\x2a\x17\xc9\x95\xf3\x46\x15\x1a\x5f\x25\x57\xea\xc2\x0e\xe4\x4a\x5d\xd8\xcc\x64\x35\x8c\xba\x7b\x94\x1c\x93\xf8\x33\x48\xdf\x42\x7c\xeb\x65\xa1\x3a\x79\x67\x69\x64\x81\x12\x99\xd4\x34\xc8\x5b\x44\x67\xaf\x54\x90\x5d\xf9\xb3\x17\x69\x9a\x20\x88\xcb\xcc\x9d\xe3\xd8\x03\xb0\x40\xa2\xa9\xbd\x00\x83\x26\xd1\x98\x86\xe9\x35\x22\xb7\xc3\x70\x26\x4a\x5e\xed\x19\xe3\xc6\x8c\xd1\xbc\x78\x7e\x08\xfe\x58\xb8\xc8\x7e\x28\x16\xf7\x42\x2e\xb3\x9d\xa1\xce\x11\x83\x96\x77\x7d\x78\x9e\x91\xc0\x70\x4f\x4a\xdb\x2f\x39\x6a\xe7\x2a\x19\x4c\xd3\x4c\x8e\x22\x77\xd8\xbb\xf3\x8e\x70\x3d\x44\xd2\x6f\x72\x99\xf4\x25\xa2\x8c\x8b\x68\x71\x8a\x1f\xa0\x87\xd6\xb1\xbe\x27\x28\x44\x11\x12\xc1\x56\xcd\xd2\xa8\x9c\x55\x93\xc8\x5c\x1e\x93\xdc\x1a\xf9\xc0\x9e\x87\x4d\x58\x2e\xb7\x86\x49\x92\xde\xe4\x8d\xdf\xda\x77\x66\x57\xa9\xa5\x2f\x93\x10\x02\x7d\xf4\xbc\x2a\x5a\x09\x55\x5a\x83\x49\xa5\xb9\x15\xec\xc1\xd5\x83\x3e\xfc\xe8\xea\x7a\x03\x19\xac\xec\x86\x12\xd3\x9f\x64\x72\x98\xaf\x58\x06\xdb\x80\x4b\xfd\x8c\x6e\x1f\x44\xb2\xe2\xfd\xb4\x80\xbc\x49\xc3\xab\x36\xb2\x10\x80\x3f\x25\x70\x5a\x55\x58\x4b\x40\x62\x8f\xb5\x7d\xb2\x1b\xd9\x4a\x51\xad\x13\xd9\x2a\x09\x51\x95\x50\x69\xfe\x78\xa7\xbd\x9a\x89\xa5\x2a\x07\x5b\x33\x60\x46\xc4\xca\x53\x55\x15\xca\x8f\x5c\x85\xff\x8a\x05\xaa\x18\x82\x59\x2a\xcd\x24\x1a\x79\xab\x95\x23\x5c\x4b\x6d\x42\x67\xfd\x9e\x94\x49\xc6\xf7\xe2\xc1\xf6\x8b\x07\xcf\xa3\x88\x20\xda\x6a\x00\xea\xa2\xc9\x37\x9e\x60\xa6\xda\x64\x79\xff\x62\x86\xc2\xab\xfa\xb7\x8f\x62\x7e\xfa\x08\xa7\x53\x14\x29\x04\xd4\x0f\xad\x87\x71\xc1\x6e\xad\xe8\x66\xe9\xe8\x78\xc4\xd7\x08\xf0\xb2\x0f\x06\xd9\x92\x56\x77\xbf\x44\xae\x3f\x9e\x38\x1a\xd1\x2f\x48\xcc\xe2\x10\x26\xd9\x83\xf7\x90\x52\x19\xc9\x2e\x7f\xff\x17\x24\x58\xfc\x36\x99\x86\xba\xfa\x39\x3a\x91\xb7\x3e\x32\x19\xe8\x2c\xa6\x7e\xb1\x53\x75\xd1\xe3\x84\xfa\x23\x07\x36\x68\xf5\x05\x0d\x7c\xa3\x3e\x68\x85\x55\xa3\xd3\xb0\x0b\x35\xd8\xd2\xcd\x92\x83\xe6\x0b\x76\xeb\xac\x25\xb7\xca\xa9\x2a\x9f\x6c\x03\x62\x6c\x4e\x05\xf9\x00\x9a\x5c\xf2\xb3\x69\x0a\x7f\x48\xb9\x06\x6b\x4f\x67\x71\x28\x0f\x26\x43\xf4\xa3\x8c\x45\x63\xa6\xd3\x50\xb2\x35\x7e\x94\xa1\xe8\x05\xad\x1f\x4a\x1f\x21\xcf\x96\x84\xf4\x4f\x77\xa4\xc8\x24\x57\xea\x50\xe9\x75\xbe\x48\x8b\x45\xd5\x68\x56\xe8\xd3\x10\x34\x5a\xcf\x9e\x2e\x26\x8b\x4e\x66\x8d\x76\xed\xb4\xfe\x7a\x43\x5e\x7c\xd9\xb4\x93\xf2\x21\xf7\xe2\x4d\x85\xbd\xab\xbc\x64\x55\x02\x2f\x7e\xee\x4e\x38\xfb\xdf\xea\x12\xae\xa3\xf1\x04\x7c\x48\x13\x64\xfc\x5e\x1b\x0c\xe7\x81\xcd\xcb\x0d\x45\xba\xfe\x74\xc4\x7f\xcf\x2b\x8d\x87\x32\xd9\x75\x21\xea\xa6\x33\xba\xbb\x34\xf1\x32\xa6\x8b\x04\xde\x76\xf9\xe0\xcf\x31\xee\x34\xf0\x36\x2d\x42\x6e\x96\x25\x9b\xfd\xfa\xe1\xcd\x03\x5d\xc9\xe9\xcc\xf0\x7f\x6a\xda\x7d\xfb\xfc\xdd\xf3\x7f\xbc\x7a\xfb\xea\xdd\xc7\xdf\x5e\xbf\x7c\x10\xdd\xa0\xdc\xa7\x73\xa2\xfe\x37\xb4\xfc\x47\xfd\xef\x74\xab\xef\xaa\xef\x75\x12\x34\x5e\x62\xd7\x37\x93\x7a\x85\x95\x61\x4b\x8f\x92\x62\xcb\x93\xac\x61\x4c\x65\x3d\xf9\xb7\x10\xc3\x29\x92\x42\x7f\x59\x8a\x12\x88\xaa\x9c\x2e\xdd\x16\x2a\x50\xe2\xef\xeb\x97\xf9\xd9\xd2\x9d\x73\x74\xde\xea\x0f\xa1\x74\x98\xe1\x77\x9f\x55\x7d\xcb\x22\x5f\xfb\x2c\x7b\x2f\xd6\x45\xd2\x4f\x7f\x76\xce\x75\x7f\x47\x02\xa0\x03\x3c\x3f\x97\x45\xa3\xc7\xa5\x5a\x3e\xb4\x07\x30\x7f\xa8\xce\xde\x4b\xaa\xf9\x5c\x86\xfc\x2e\x7b\xbd\x0f\xd1\xcb\xa2\x62\x7b\x9a\xdf\x7e\xcb\xdd\x17\x38\x66\x75\xe0\x73\xb9\x65\xb1\x41\xe5\xcc\xe3\x3a\x52\x79\xcb\x65\x01\xda\xf7\xe8\xab\x18\xe9\x7d\x8f\x8e\xda\xe4\x80\x2d\x38\x82\x3b\x1c\xb3\xff\x84\x74\xf6\xd9\x1d\xf9\xfa\xf0\x96\x6a\xad\xc5\xaf\xda\x77\x2a\xfb\x6e\xda\x3f\x50\x68\xf9\x19\x03\x85\x92\x5d\x0d\x80\x89\x0b\xde\xd0\x1d\x31\x8b\x6a\xa2\xa3\x6c\x85\xf1\xe4\x48\x56\xab\x23\xb7\x11\xb5\x3a\xac\x4a\xfa\x8f\x8f\x27\x80\x04\x47\x27\x00\x06\x47\xa7\x40\xc7\xce\x8b\x4c\xc0\x3a\x0a\x27\x05\x71\x80\x2c\xd3\xfc\xfe\xc8\x25\x81\x9b\x06\xb1\x8f\xd1\x27\xe6\x7a\x9e\x1f\xa5\x18\x79\x83\x81\x2b\x13\x3d\xb9\xa9\x2f\x08\xd2\x03\x47\x6c\xb5\xc2\xca\x96\x7a\x14\x04\xcc\xfb\x9e\x7f\xd2\xfb\x5e\x65\x0c\x4e\xbc\x3b\xc8\x87\x40\x83\x64\x7d\x19\x63\x98\x24\xb7\x77\x22\x15\xb1\x0e\xdc\x8f\x7d\x39\xe4\xd5\x4a\xff\xc5\xf1\xaa\x20\xe3\x4b\x17\x7a\x92\x06\xe8\x3a\xcf\x28\x25\x30\x25\xa8\x45\xfc\xbb\x01\xbd\x88\x0c\x67\xcb\x90\x2d\x09\xfa\x72\x44\x93\x64\x2b\xae\x36\x54\x6d\x20\xdc\x72\xf3\x48\x69\xa5\xeb\xf5\x8f\x97\x06\xb6\x60\xe9\xb3\xc2\xa6\x1d\x3d\x40\x88\xf4\x99\x9c\xdb\x48\x12\xe7\x3a\xc7\xce\x72\x8b\x63\xca\x1e\x42\x1b\xf1\x4d\x95\xc4\xd7\xb2\x5a\x78\x4f\xbf\x51\x5b\xc7\x0f\x76\xfd\x2f\x14\x8a\xd7\xd9\x91\x29\xee\xec\x2f\x50\x92\xe2\x29\xfd\x98\x7a\xae\x7c\x5f\x84\xb6\x48\x08\xd9\x40\xeb\xde\x9d\xeb\x6a\xc9\xf6\xd7\xb5\x17\xb4\xb2\x71\xbb\x14\x23\xe0\x6a\x0c\x09\x86\xf7\x6d\xd1\x8a\xe2\x73\x4e\x62\x22\x35\xfb\x71\x5e\x72\xb7\xfd\x28\x9c\x42\x4a\xad\x61\x12\x43\x9a\x77\x20\x60\x72\xe7\x5b\x3e\x94\xe6\x06\x02\xc6\xe2\x86\xd1\xdc\xca\x08\xcb\x56\x4d\x5f\x7d\x62\x88\x60\x98\x48\x17\x33\xcb\x0d\x6d\xe1\x83\x05\xab\x91\x0c\xc7\x53\xbb\x06\x61\x46\x62\x44\x65\x7e\x49\xb3\xcd\x6a\x75\xb7\xb6\x57\xdd\x90\xb1\xf3\xfc\xa4\x7c\xea\x01\x1c\xb0\xf1\xc9\xe4\x80\x8d\x4f\xf5\x8e\x74\x90\x1a\x9a\x2e\x1c\xca\x39\x4a\x43\x26\x34\xd9\xd1\x81\xe8\x46\x4b\x51\xe3\xd3\xc9\x3a\x4f\x84\x96\xba\x9c\x15\x9c\x23\x71\x32\x0a\xeb\x95\x49\x5e\x9a\x8c\x4a\x18\x54\x23\xb7\xdf\x3c\x1a\xd9\xcf\x44\x69\x82\x4c\x6b\xcf\x7b\xe7\x84\x7d\xcf\xae\x83\x9a\xae\x9b\x2f\xd5\x6b\xef\xcd\x2b\x77\xcf\x1b\x5c\xa4\x2b\x56\xdb\xeb\x3e\xbd\xd4\xa6\xcb\xb5\x7a\xa9\x49\x97\xdb\x75\x83\x25\x7c\x89\x0b\xed\xf2\x18\xbe\xc4\x4d\x76\x79\x0c\x5f\xc6\xcb\x20\x1f\xc5\x7b\x44\xf8\x79\x02\xa7\xa8\xfb\xba\x94\x97\xb0\x79\x78\x45\x72\x39\x36\x07\x2e\x1f\x7d\x73\x7a\x72\x52\x3f\xa0\x2e\x8b\xd4\xe4\x7d\x52\x1d\x50\x91\xe4\x7b\x0f\xa8\xd3\x8a\x35\xee\xe3\xea\x90\x4a\x5b\xb7\x69\x4c\x45\x7f\xba\xb0\x8b\xe6\xbc\x37\xcc\xed\xca\x15\xf0\x47\x8b\x8f\x6a\x0f\x83\x94\x16\xf7\x5e\xa4\x4b\x4b\xf4\x5b\xc9\x50\xd3\x68\x71\x16\x2f\x45\x8d\x44\xfb\xfb\x2e\x57\xc7\x15\xf1\xc5\xde\xd5\x3f\x20\x43\x37\xf0\x56\x56\x84\xa8\x03\x6a\x72\x12\xec\xe8\x8b\xd8\xd1\x6f\xef\x7d\x4a\x5a\x51\x27\xa3\xaf\x3e\xc2\xe9\x2f\xd7\x88\x90\xd8\x62\xe4\xd7\x71\x58\x8f\x7b\x97\x55\xe6\xc3\x0d\x3e\x92\x06\x27\x6a\x80\xca\x39\xa8\x15\x28\x0f\x4e\xbb\x97\x8b\x42\x67\x2b\x67\x8d\xe2\x61\x5a\x84\x37\xf3\x0c\x7d\x88\x1b\xcc\xb7\x88\xce\xea\xa4\x3c\xfe\xae\x2c\xe9\xe5\xcf\x72\x69\x2f\x7f\xd6\x53\xe2\xab\x36\x6c\x13\xf7\x2a\x9f\x6f\x91\xf5\x2a\x53\xe8\xed\x46\x69\x41\x42\x9b\x34\x2c\xd8\x8e\xdf\x20\x5e\x48\xbd\xe6\xa4\x92\x3e\x59\x0c\x59\xb4\x1e\x0c\x5c\x64\xfc\x2c\x76\xa6\xd2\x9b\x14\x9e\x3d\x41\xb6\x21\xb7\x88\x1d\xf9\x12\x9a\x5f\xb1\x0a\x20\x9b\x0e\x59\x75\x56\x18\xb2\x7a\x66\x1f\x72\x9b\x60\x62\x78\xef\x9a\xdf\xb1\x53\xde\xa6\xa3\xd6\xbd\x15\x86\xad\x1f\x9a\xe3\x5e\x74\xa5\x89\x6c\x27\x57\x5d\xee\x94\x06\x62\x49\xa2\x2d\x43\x11\x8a\x5d\x79\x67\x2d\xef\x8d\x34\x69\x76\x48\x47\x2b\xcb\x3f\xde\xba\x99\x86\x97\xcd\xc4\x03\x8e\x1c\x90\xc8\xab\xa6\xe7\x39\x83\x54\x43\x5a\x14\xe3\x93\x2c\x31\x8e\x4a\x89\xa3\x3b\x1b\xb1\xb6\xd9\x1c\x5c\x10\x04\xaf\xc4\xae\xcd\x37\x7d\x6d\xb3\x6c\x95\x0b\xed\xf4\xde\xaf\x6d\xa6\x29\xba\xd0\x8a\x83\x9f\x6a\x0b\x2f\xfb\xe1\xa4\xaf\x87\x04\xd5\xa1\x2e\x7b\xb1\x74\xb7\xef\x8b\x7b\x25\x6c\x78\x14\x09\xe8\x4d\x1a\x5e\xbd\x44\x09\xac\xc6\x89\x95\x00\x7f\x44\x33\x78\x1d\x57\x05\xda\x8a\x94\xf8\xb1\xc9\x85\xb1\x41\xb4\xe8\x21\xa6\x7f\x99\xfb\xe0\x3e\x3b\x54\x26\x78\xbc\x4f\x7c\x64\xd1\x8f\x73\x0b\xaf\x59\xbf\xe0\xde\x35\xb2\x78\x3e\x44\x94\xa4\xd1\x5d\x0b\xe4\xeb\x97\xef\xbb\x25\xab\x50\x29\x44\x5b\xe0\x5a\xf2\x04\xb5\x26\xc7\xb0\x7a\x8c\x88\x56\x6d\xd9\x85\x64\xe8\x27\x9a\xc2\xb0\xba\xf1\x0d\xd5\x4b\x5e\x99\x6c\xe8\xba\xd2\x7a\xf3\xf0\x08\xa1\x98\x6f\x52\x8b\x8a\x56\x99\x51\x17\x37\x52\xed\x73\x53\x63\x3f\x94\x77\x01\x1a\x48\x56\xaa\xb9\x8c\x39\xe1\x59\xf3\xb9\xbf\x7e\x19\x04\x01\x29\x3a\x0f\x17\xcd\x88\xf7\x72\xf1\x91\x6b\x9e\x5a\xd6\xbc\x47\xfb\x07\x72\x11\xca\x2e\x06\x1e\xa4\xa3\x0e\x2e\x42\x02\xae\xc5\x09\xe7\x71\xe2\x8e\xbb\x86\xe6\xc6\x97\x31\x22\xf4\x38\x8a\xa3\x61\x8c\x29\x22\xac\x78\x32\xfc\x5d\x9c\x03\xc7\x04\xe1\x08\x91\x61\x0e\x6f\x6d\xb9\x4b\x19\xe3\x0b\xe3\xd7\xd9\x02\xfb\xcf\x5c\xb5\xdc\xc9\x99\x8b\xfa\xd0\x55\x31\x80\xa0\xcb\x6c\xba\x25\xe8\x9d\x9c\xe6\x4d\x9c\x24\x43\x55\x49\xaf\xef\x12\x17\xda\xee\xd0\xec\x65\x79\xe8\xa6\x6a\xf8\xd5\x7c\x17\xaa\x72\xb5\xa8\x53\x6c\x53\xc7\x32\x61\x8e\x18\x85\xd0\x48\xe0\xe8\xe7\x65\x1f\xa9\xc1\xc0\xa1\xe2\x8f\xf2\x8b\xcc\x23\xe7\xcc\x96\x10\x57\x79\xdc\xac\xad\x39\x5a\x07\x83\x86\xcf\x15\x7c\x67\x82\x20\xc8\x9e\x1f\xe9\xbf\x73\x5f\x9d\x33\x3d\xb6\x51\xf6\x41\xcf\x45\x86\x4f\x10\xcc\x73\x64\xbb\xb9\x37\x52\x7a\x79\xc8\x3c\xcf\xea\xdc\xf4\x02\x62\x9c\xb2\xc3\x10\x26\xc9\x21\x3c\x0c\x13\x48\xe9\x21\xa4\x87\x30\x73\x42\x73\x8c\xde\xa9\xe9\xa6\xe6\x52\x7d\x99\x4f\x11\x7b\xaf\x47\xf8\xcb\x65\xd9\x23\x2d\x3b\xb1\x7f\xfb\x4d\xcc\xe3\xb7\xdf\x02\x06\xc4\xb8\x01\xf3\x4a\xae\x85\xd2\x02\x61\x90\x4e\x8d\x3b\xdb\x07\x74\x99\xa0\x90\xad\x56\x47\xea\xaf\x1c\x87\xca\xe7\xe9\xe8\xf4\x20\xbe\x74\x2b\x6f\x7d\x3a\x83\xf3\x02\x88\x65\x65\x84\xf1\x48\x03\x49\x87\x37\x35\x89\x97\x90\xa1\x5a\xcf\xa9\xca\xc7\x5c\x0e\x0e\xc6\x93\x82\xb0\x23\x04\x94\xa3\x93\xbc\x22\xbe\x1e\xcc\x7a\xed\x66\xae\x07\x25\xab\x17\x06\x24\x58\xaa\xac\xe1\x4c\xd7\xdd\x5b\x0a\x81\xc9\x33\xa9\xe7\x00\x07\xd5\x41\x10\x60\x24\xbe\xf7\xd6\x28\xa1\xe8\x10\x07\x2d\x55\x6a\x62\xf9\x02\x7b\xeb\x1a\x27\xc5\x23\xb6\x5a\x39\xd2\x7f\xcd\x39\x0a\x02\xe2\x32\xcf\xa4\xf2\xcc\xa3\x93\x9d\x25\x2e\xf2\x46\xac\xe0\xb6\x26\xd6\x35\x2f\xc5\x63\x50\xe6\x07\x74\x89\x08\xc2\xa1\x26\x4f\x3e\x8a\xc3\x19\xa4\xf8\xdf\xd9\xe1\x05\x42\xf8\x50\x97\xf2\xa6\x28\x3a\x1c\x1e\xca\x32\x41\x5e\x01\x82\xaf\x05\x8a\x8c\x2c\xd2\x05\x9f\xb0\x8c\x7a\x97\x76\xea\x3d\xcb\xeb\xfa\x19\x4f\xad\xbb\x3a\x27\xe8\xd5\xca\xda\x8a\xef\xcc\xe2\xf6\x0c\x77\x48\xa1\x94\xa5\xf2\xcd\xfc\xe7\x51\x70\x17\x85\xa3\xbb\xdf\x52\xa1\xb9\xd0\xd1\xdd\x02\xb2\xd9\xc8\x39\x1e\x45\xa1\x23\xea\x23\x89\xc4\x18\x16\x00\xfd\x8a\x43\xcd\xd2\x1b\x5b\x17\x98\x2b\x65\x6b\xa0\x39\x96\xad\x97\xec\x9d\xb3\xe6\x80\x2a\x77\x9b\x1d\x52\xbf\x74\xd6\x00\x45\x31\xb3\x7d\x31\xcf\xfe\xb6\xce\x32\x5f\x57\xc1\x54\xb2\xe9\xf5\xba\xe3\x04\xd7\x60\xb9\xa0\x8c\x20\x38\xb7\xc1\x65\xef\x38\xa0\x3a\xb9\x2c\x60\xea\x0d\x07\x62\x70\x6a\xeb\x88\x3f\x16\x83\xd2\x48\xa9\xc3\x69\x8e\xb5\xe3\x11\x4e\x23\x74\x3c\x8a\x23\x67\x0d\x66\x08\x26\x6c\x16\x0a\xb3\x91\xa5\xa9\x7c\x3d\x94\xef\xf9\x30\x44\x04\x99\x05\x50\x46\x96\xf5\x99\x35\x3f\xd9\x29\x8a\xf8\x2b\x1b\xac\x7a\x3d\x14\xef\x39\x3c\xd4\xb7\xa3\x16\xe0\xec\x1d\x07\xe4\x7a\x71\x04\x19\xb4\xc0\xe9\x57\x02\x63\x38\x65\x97\xe9\x12\x47\xb5\x18\x33\xf0\x24\xc0\x23\xeb\xb7\xc5\xf3\x76\x82\xee\x8b\xe8\x76\x22\x1b\x16\xf6\x01\x61\x36\xe2\x26\x7c\x82\x43\x46\xe2\xc5\x90\x71\x45\x4f\x74\x2c\x2c\xdc\xb6\x8e\x65\x29\x2d\xf5\xbe\x07\x2a\x1f\x64\x17\x46\x5d\xb7\xdf\xd5\xb5\xe5\xfd\xd5\xb5\xb3\x06\x97\x22\x57\x94\xe5\xed\x37\x57\x48\x10\x67\xcd\xc7\xf9\xeb\x63\xfe\xae\x71\x08\x02\x2a\x1b\x07\x70\x48\x9a\xb2\xa1\xfa\xdd\x3c\x62\x18\x26\x56\xaa\x0d\x93\x87\xc0\x08\x58\x28\x03\x87\x6d\x5b\x6a\xdb\xc7\x43\x20\x9e\xa4\x89\xf5\x23\xe2\xf9\x83\x7c\x41\xd8\x76\xad\x6c\x4e\xbc\x78\x88\x6f\x08\x62\x8d\xd0\x27\x0b\x90\xdc\x1d\xaa\xb6\x93\x6d\xdb\x31\xcd\x8c\x1b\x58\xc7\x37\xfc\x5f\xfe\xa1\x83\xec\xe4\x8c\x80\xa8\xf1\x87\xf0\xb5\xe7\x3a\x2f\x7e\x79\x77\xfe\xeb\x9b\xdf\x64\x92\x92\xf3\xdf\x5e\xbd\x7b\xfe\xe3\x9b\x57\x2f\x1d\x6f\x30\x70\x23\x3f\x0a\x55\x91\x26\x1a\x58\x18\x8d\xb6\xd4\x35\xe1\x41\x72\x9b\x6e\xd8\x8e\xd4\xc7\x2c\xdf\x1a\xa9\xec\x34\x6b\x10\x85\x23\x3e\xae\xb5\x8c\x1a\x98\x9b\x32\xb9\x5b\x8d\x38\xb1\xc8\x7d\x83\x81\x2c\x0c\x1d\x30\xbb\xe2\x71\xce\x45\xb7\x43\xf4\x69\x41\x24\xe3\x91\x41\x10\x28\x66\x33\x44\x0e\x2f\xd0\x21\x6f\x7d\x98\x92\x82\x26\x72\x60\x08\xdf\x5a\x7c\xd3\x75\xba\x06\x03\x23\xa6\x01\xdc\x19\x52\xf1\x48\x49\x38\xc8\x14\x93\xca\x22\xd4\x7a\xed\x01\x36\x18\x50\x55\x7c\xc0\xd5\x35\x92\x3f\x08\x95\x54\x17\x62\x49\x5d\xec\xe5\xd7\x03\x5a\x3c\x27\x07\x50\x8b\xcb\x59\x2c\x01\x0d\xca\x35\xb3\x41\x6a\x84\x16\x50\x0f\xc4\xc1\xc9\xf7\xf1\xdf\xe8\xf7\xf1\x93\x27\x5e\x3a\x8e\x27\x46\x09\xed\x38\x73\x49\x0e\xdd\x44\x56\x1b\x82\x49\xa2\x24\x76\x04\xc6\xfc\x63\x13\x5d\x0b\x37\xe5\x0a\x85\x93\xa4\x21\xcc\xec\xc9\x9a\xe8\xf4\x43\x61\x15\xf7\x3c\x20\x7a\xf3\x24\x0b\xd3\x89\x31\x34\xac\x7e\x26\x4a\xc1\xe6\xa1\x32\xa6\x39\x6e\x0e\xe6\xd2\x9b\xba\x60\xbd\x8b\xbc\x26\x6d\x9e\x1e\xf3\x51\xc7\x7a\x70\x0f\x5d\xd7\x70\x1f\x35\xf5\xb9\xa3\xa6\x2a\x88\xdb\x57\x6b\xac\xab\xd6\xb8\xd3\xd1\x65\x3b\x53\xb4\xd1\xaa\x9a\x0b\x43\xd6\x9b\x98\x32\x5d\xbc\x46\x59\x89\x93\x14\x46\xd2\x87\x47\xff\xe5\xad\x01\x0d\x0c\x5e\xaf\xaf\x3b\x8d\xc2\x8f\x51\x3a\xaf\xa9\xed\x15\xa5\x73\xc7\x03\xd2\x6c\x59\x03\xa2\x6c\x9a\x1e\x50\x27\xfc\x07\xb4\x48\xeb\x40\xd1\x22\xa5\x31\x4b\xc9\xad\xca\x12\x77\x1c\xc5\x54\x26\xd5\xf7\x00\xe9\xd4\x2e\x0a\x1d\x0f\x74\x2f\x54\x29\xae\xc4\x2d\xa6\x5a\x85\x8f\xf3\xff\x7c\xef\xcf\x20\x9d\xb9\x77\x6a\x8a\x79\x31\x2d\x02\xa2\x90\x8e\x8a\xd5\x2b\x9f\x27\x89\x9b\xcd\x53\xbe\x33\x26\x9d\x83\xf8\x92\x4b\x55\xaf\x00\xc7\x13\x71\x83\x27\xc4\xb1\xe5\xe2\x45\x56\x93\xac\x54\x29\x1a\x29\x9b\x0d\xa7\x18\x11\x44\xe4\x19\x45\xb0\xd4\xba\x5a\xca\x6e\x16\x2a\x4e\xf2\xad\x2f\x58\x85\x48\x0c\x5b\x38\xa3\xb0\x74\x21\xcb\x4b\xa2\xfd\x94\x12\x97\x79\x46\xbd\x35\x9c\x93\x0f\x38\x3a\xd1\x15\x06\x45\xab\x28\x9d\xfb\xfc\x28\x75\xbd\x03\x62\x50\x21\x8c\x22\x37\x27\x39\x20\xe4\x98\x79\x4c\x91\xaf\x98\x6e\x01\x19\x35\x1f\x3a\x15\x8e\x15\xb2\xe6\x93\x28\x97\x54\x53\x5a\x14\x90\xe0\x8e\x0a\xff\xae\x11\xe7\x8c\x11\x5a\xad\x1c\x07\xcc\x11\xa5\x70\x8a\x46\xc8\x57\x7f\xad\x56\x7c\x43\x31\x18\x27\xab\x95\x23\x98\x91\xc3\x85\x57\xd1\x33\xe5\x6c\x56\xfe\x35\x3e\x99\xa8\x8a\x87\xd9\x6f\x40\x74\x1f\x01\xf1\x59\xcc\x12\xb4\x5a\x91\x72\x5f\x1e\x10\x91\x48\xc4\x97\x43\xe1\x7d\x64\xad\x34\x88\x76\x17\xaa\x16\x35\x5d\xad\xac\xd5\x4c\x7d\xfe\x8e\xb3\xeb\x23\x2a\x67\x2c\x65\xaa\x5f\x3f\xbc\x71\xb5\xac\xe3\xcf\x08\xba\xf4\x7c\x2e\xd0\x62\x51\xf0\x4d\x96\x3d\x35\x28\xd7\x57\xa2\x8e\xe2\x5f\xc3\x53\x4f\x57\x85\x3b\x76\xf4\xc1\x73\x0a\x9e\x79\x07\x34\xb8\x93\x9f\x1d\xdd\xbd\x83\x73\x34\xca\xee\x3b\xd6\x6b\x90\x8e\x4f\x26\x7c\x6a\x84\xd1\xff\x8a\xd9\xcc\x75\xfe\xaf\x90\xe5\x69\x26\x5b\x8b\x16\xa9\x4f\x67\xf1\x25\x73\xbd\xb5\x07\xa8\x1f\x85\xfa\xf1\xf8\x64\xb2\x5e\xf3\xf1\xc7\xe5\xc9\x9b\x94\xe8\xad\x56\x77\x6b\x90\x04\xb1\x1f\x85\x74\xb5\x1a\xf3\x1e\x26\x60\xc9\xe5\x03\xb9\xad\xc4\x33\xf9\xf7\x04\x84\x55\x02\xac\xd9\xcc\x51\x38\x3a\x39\xca\x97\x26\x3b\x7c\x5d\xcf\x17\x3a\xd2\x2f\x97\xae\xf3\x17\xc7\x3b\xcb\x77\xf7\x14\xb1\xe7\x21\x8b\xaf\x91\x4b\xb3\x72\xb3\x89\xa7\xd1\xa2\x88\x47\x70\x84\x44\xed\xff\x91\x1e\x58\xc6\x0f\x96\xeb\x86\x8a\xa9\xef\xd5\x76\xe0\xa7\xff\x18\x01\xa6\x2b\xad\x22\x48\xd4\x87\xbd\x89\xad\x6e\xaa\x22\x7c\x1a\x70\xd6\x70\xea\x8d\x4f\x26\x07\xd0\x0d\xbd\x42\x45\xc3\x2a\x5e\x4b\xfc\x83\x5a\xe0\x91\xa4\xd0\x12\xe4\x9d\xdc\x77\x44\x5c\x60\x59\xd8\x98\xfd\xdb\x1d\xfa\x02\x5c\x03\x59\x77\xf0\x86\x52\x42\x75\xb1\x5c\x4f\x43\x5d\xd7\xbd\x80\xbc\x2b\x02\xf2\x9f\xb0\x5a\xed\x4e\x0b\xc8\x8f\x5e\xb4\xb6\x2c\x8a\x17\x54\xa7\x2b\x74\x4b\xd5\xca\xe4\x77\x4f\xbf\xdc\x60\x2d\x48\xcb\x69\xa8\x53\x32\xa3\x27\x2b\x0c\xef\x86\x09\x3a\x21\xd5\xb8\xcd\x9c\x7d\x58\xbb\xd0\x9e\x6c\xa9\x1c\xa3\x9f\x5f\x53\x89\x7b\x4e\xb9\x2d\x95\xe1\x02\x03\xe2\xe5\xbb\xc5\xbc\xb2\xf6\xb2\x9d\xcf\x82\xd3\xef\xd9\xdf\xca\xa6\x93\xef\xd9\x93\x27\x7a\xfe\xd2\xaa\x94\xdb\x4a\xd8\xe4\xcc\xfc\x31\xba\x5b\x1f\xb0\x7f\x7b\x7a\x46\x14\x5a\x5c\xcc\x79\xab\xe7\x5f\xa6\xe4\x15\x2c\x70\x6b\xe6\xdd\x29\xff\xce\x31\x13\x67\xcb\xa8\x65\x86\xd4\x7a\x4f\xc7\x59\x39\x02\x6d\x4d\xb9\x7a\x38\x32\xc6\x54\x33\xa0\xfa\x8b\xc0\x36\xec\x63\xc0\x64\xad\xcd\xea\xad\xe7\xee\x78\xb1\x1a\x7a\x5d\x6a\xd3\xc9\xee\x7a\x28\x41\xf7\x54\xb7\xb4\x92\xd4\xd0\xbe\x5e\x8f\x2a\x8a\xe3\xb8\x51\xc6\xab\x95\xd2\x94\x1c\x55\x51\xa3\x72\x59\xcc\x93\x86\xf3\x51\xa1\x22\x7e\xa6\x6a\xfd\x78\x7b\x9e\x2c\xa7\x59\x65\x7c\x10\x85\x25\x75\x4d\x01\x70\xa1\x1a\x60\x2e\x62\x7a\x4d\x12\x5a\x79\x7c\xd0\x85\xee\xdd\x1a\x20\x0f\xe8\x91\x62\x3d\x4c\xb5\x6b\x7f\x38\x3d\x73\x59\x90\x3d\x05\xfc\x1c\x52\x32\x21\x0d\x58\x93\x6f\x27\x17\x2b\x85\xee\xc0\xff\xe0\x72\x50\xe6\x2b\x40\x07\x83\xec\x6f\xb7\xa9\x97\x4c\x56\x17\x51\xe6\xaa\x1f\x21\xa1\x8b\x46\x84\x32\x49\xa7\x1e\xa0\x9e\x31\x72\xe3\xcd\xda\x93\x87\x31\x03\x04\x50\x8b\xe8\x89\x4b\xa8\x99\x4a\x7d\x4d\xa0\xdb\xcf\xfc\x95\x75\x84\x4f\x05\x71\xd8\x03\x77\x0b\x44\xe6\xb1\xba\x96\x63\x85\x45\x86\x4b\x36\x4b\x49\xfc\x07\x92\xcb\x53\xf8\x82\x52\x85\x84\x1b\xb3\xd8\xf3\x23\x2c\x74\xc2\x66\xa5\xd9\xa2\xd3\x36\x0a\xc5\x05\xa5\xfa\x26\x4e\x92\x8f\x59\xa1\xeb\x51\x49\x92\x6c\x2d\x63\x0e\xb2\x70\x28\x34\x18\xb8\xc8\xcf\x94\x6f\x1f\xe1\x48\xe9\x4f\x7a\x05\xd4\x45\x85\xc7\xd5\xd3\x1c\xce\xd4\xb4\x32\x55\xd0\x87\x61\xc2\xb5\x17\x71\x47\xe4\x79\xfa\x84\x68\x9d\xe9\x81\xb1\x24\x05\xc5\xa3\xde\x64\x01\x2a\xaf\xf2\x15\x2a\x2c\x8e\xd2\x8e\x1c\xaf\x69\xcd\x26\x75\x7a\x0c\x09\x98\xcc\x6f\x02\x03\xc2\x15\x6d\x1a\x90\xf1\xe9\xe4\x20\x43\x1f\x1e\x0c\x70\x59\x8d\xd0\xfa\x15\x04\x26\x39\xd1\xb5\x2a\xa1\xbc\xee\xe0\x50\x9b\x29\x15\xf2\x6e\xf2\x41\xac\xf4\x0f\x73\x0c\xe0\x16\xd3\x5c\x61\x76\xb8\xcb\xec\xf4\x4d\x58\xf3\x24\x61\x98\xc8\x89\x7e\xe1\xf9\xe9\xd4\xc0\xca\xfe\xa0\xa6\x20\xee\xac\x3b\x5a\x04\x61\x98\x38\x1e\xb8\x40\x97\x29\x41\x6f\xcb\xe6\xbe\xfc\x40\x88\xa5\x94\x0d\x19\x72\xbd\x75\xad\x5d\x50\xc0\xc7\x0c\xcd\x83\xbc\xa5\xba\x80\xbb\xcb\x63\x0f\x46\x16\x83\x8e\x36\x1b\xac\xf5\xc6\x30\x4e\x3a\x75\x69\x79\x74\x02\x62\xfa\x46\x99\xef\x8e\x4e\x01\xff\xce\x28\xfb\x22\xe0\x6a\x10\x1d\x8d\x9d\xb9\x11\x62\xe0\x84\x49\xcc\xff\x98\x6c\x66\x34\x8c\x10\x5f\xde\xeb\x42\x61\x78\x6d\x7e\xd3\x61\x87\xf2\xe3\x4e\x4c\xdf\xa1\x1b\xc7\x1b\x0c\xb2\x67\xbe\x72\xb0\xfd\x80\xc2\x94\x44\xae\xb7\xde\x80\x16\xe5\x42\xee\x04\x25\xf6\xa1\xb6\x8d\x0d\xd0\xf5\xe2\xc6\x5d\x0d\x69\x54\xa5\x99\x38\x02\x0d\xf4\xe7\x3d\x02\x1d\x6d\xb0\xf0\xb1\x8c\x83\xf8\x13\xaf\xfc\xef\x4b\x44\x6e\xdf\x43\x22\x5c\xc6\x28\x82\x24\x9c\x8d\xee\x20\x1d\x39\x52\x05\x15\xec\x2d\xe1\x62\xe5\xd1\xc9\x7a\x5d\xc7\xbf\xe4\xad\x3c\x5f\xee\x03\x93\x43\xe9\xcf\xd8\xe4\xe0\xf2\xc9\xcb\x45\x23\xe9\xab\x10\x14\xa2\xb5\x0b\x41\x6c\x42\x1a\x51\x03\x92\x42\x48\x59\xfa\x10\x12\x58\xe7\xeb\x94\x0a\x31\x5b\xae\x52\x7e\xbc\xcd\x39\xaa\xdb\x4c\xd1\x55\x2d\xc0\x36\xf3\xcf\x45\xdb\xda\xf9\xa8\xe5\xa4\xad\x6b\x25\x79\x62\x75\x3b\x88\xde\xb8\xc8\x21\x1a\xda\x5c\xfd\x1f\x66\x3b\x90\x6a\xe8\x23\x6e\x3b\x90\x8b\x83\x2f\xe0\x8c\xf4\xc3\x59\xd3\x89\xa0\x43\x1d\x68\x8c\xa7\x7c\x2a\x55\x1c\xc9\xd8\xd6\x46\xae\x51\x8e\x89\xd8\x5b\x96\xf6\x96\xa5\x3f\x99\x65\xa9\x69\x7f\x77\x3b\xec\x54\x0c\xb9\x62\xbd\xdd\x6c\x4c\xda\x0e\xd3\x64\x2b\xaa\x61\xf1\x55\x13\x92\xf2\xd3\xf3\x94\x4a\xaa\x6f\x39\x4f\x3d\xa0\xee\xa1\xb3\x81\x15\x0e\xc6\x26\x25\x7d\x23\xd3\x8f\x3c\xbb\x88\x3a\x6e\x64\x85\x31\x43\x21\x46\x4a\x7a\xe6\x47\xa8\xa0\x94\xca\x9d\x19\xca\x32\x0a\x15\xae\xe7\xe5\x5d\xb3\x69\x8e\x51\x97\x95\x8e\xa7\xb2\x92\x7c\x7b\xf2\xcc\x19\xa9\xbf\x4e\x1d\x95\xf1\x67\x2d\x6f\x10\x90\x0c\x04\xee\x60\x15\x69\x3b\xf1\x3a\x29\xcc\x39\xf7\xee\x22\xd6\x75\xe0\xd1\x55\x1f\xb7\xaf\x94\x43\x93\x3e\x1c\x9a\x74\xe5\xd0\x58\x73\x43\xd2\xc0\xa1\x65\x5e\x16\xf2\x39\x38\x34\xf1\xbc\x91\x31\xa6\x07\xe7\xd0\xa4\x9e\x43\xef\x4e\xf6\x19\x83\x43\xb7\xf9\x63\xf5\xe4\xd1\x45\x4d\x23\x25\xec\xc7\xdb\x91\x43\x45\x4e\xbd\x56\xbd\xa3\xab\x44\x4f\x5c\xc2\x59\x62\x2e\xc4\x4b\x6e\xe5\xde\xdd\x53\xb8\x2f\xab\xb2\xb5\x7c\x5f\x38\x11\xdc\xad\x41\x41\xb5\x78\x00\x06\xd8\xe6\x86\x20\x19\xa0\x08\x05\xe8\x27\xef\xcb\x26\xbb\x28\xec\x1b\x23\xdf\x40\xd2\x37\xe7\xbd\xa9\x98\xcf\xfb\xd8\x0b\xf9\x7b\x21\x7f\x2f\xe4\x3f\xa6\x90\x2f\x0a\x88\xed\x45\xfc\xa2\x88\xff\x21\x4d\xd0\x9f\x4f\xc0\x97\x4c\xbb\x8b\x74\xdf\xca\x9a\xf7\xb2\xfd\x5e\xb6\xdf\xcb\xf6\xf7\x94\xed\x15\x6b\xde\x4b\xf6\xf7\x94\xec\x0f\x5a\x39\x9f\xbc\xdf\xe8\x27\xda\xab\x36\xbb\x28\xdb\x9b\x43\xdf\x40\xb8\x2f\xcc\x7c\x53\xe9\x5e\x74\xb2\x17\xef\xf7\xe2\xfd\x5e\xbc\x7f\x4c\xf1\x5e\x0b\xeb\x9b\x3b\x2b\xe4\xdb\xae\x72\x03\xfd\xe0\x52\xb8\xbc\xe3\xc5\x2d\x17\xbc\x9f\x4f\x22\x56\x9c\xae\x8b\x48\xdc\xce\xcf\xf6\x32\xf1\x5e\x26\xde\xcb\xc4\xf7\x94\x89\xfb\xf3\xb3\xfb\x88\xcf\x5f\xda\x21\x67\x30\xb0\x3b\xe4\xf4\xf4\xc4\xd9\x1e\xe9\xde\x74\xf7\xef\x62\x04\x2a\xb8\x10\x75\xf6\x00\x7a\xfc\xfb\x80\xca\x89\x50\x0a\x4e\x7c\x98\x2d\xc3\xac\xe1\x21\x4d\x5e\xae\x2c\x73\x5f\xff\x98\x0a\x6a\xc9\x72\xb6\x95\x66\xc8\xda\x67\xa8\xf3\x5a\x75\x56\x8b\x8c\x26\x42\x37\x78\x34\x4f\xbe\x8a\x58\x54\xd5\x73\xca\x63\xe9\xe7\xe1\x55\x6e\xfd\x65\x16\xba\x1b\x47\xcc\x33\xfc\x6d\x64\x92\xad\x8d\xcc\x29\x6c\xbd\x28\x1c\x31\x1d\xf3\xec\x7c\xe3\x48\xd7\xd4\x3c\xde\xc1\x8f\xa3\xb3\x06\x47\x55\xe0\x7c\xe3\x64\xc5\x8b\xef\xbd\x39\xfb\x90\xee\x97\xdc\xa7\x8f\x60\xb7\xb9\xd3\xe1\x4d\x75\xe6\xf5\x7e\xec\x75\xb5\x32\x83\xfd\x1f\x79\x55\xae\xae\x3b\x33\x92\xab\xeb\x2f\xcf\x40\xf4\x18\xfa\x31\x0e\xdd\xaa\x66\x8a\x32\x99\x33\xa4\x21\xc2\xd1\x5e\x3d\xd8\xab\x07\x7b\xf5\xa0\x59\x3d\xe8\x78\x04\x5e\x5d\x0b\x8d\x40\x04\x85\x75\xbb\xc3\xd4\x95\xb0\xea\x8e\x4c\x69\xec\x00\x30\x18\x9e\xea\xda\x6b\x62\x93\xbf\x13\x61\x7a\x32\x8f\x8a\xef\x78\xfe\x22\x5d\x98\xf9\x44\x74\x58\x1f\xa0\x01\xe2\x3b\x16\xa4\x8d\xb7\xa1\x95\xbc\x28\xb5\x9c\xba\x29\xcb\x49\xaa\xd9\x7e\x6c\xf0\x73\xb0\x80\x04\x61\x96\x9f\xd1\xd4\x7e\x40\x8b\xdc\x78\x59\x96\x3b\x0a\xc4\xa1\x70\xec\x80\x14\xc4\x9e\x3d\xf6\x44\xbf\x95\x32\x00\x3c\x6b\x8c\x91\x4a\x41\x56\x82\x65\x14\xaf\x6b\x7a\xa4\xb2\x3f\xb5\x26\x23\xbe\xe1\xad\x31\xba\x59\x3a\x6d\x29\x72\x30\x34\xb7\x24\x3d\x52\x57\xb5\xe7\x7a\x81\x65\x36\xf1\x66\xc5\x08\x79\xe0\x2e\xfb\xba\x6f\x10\x92\x1a\xe5\xcf\xe8\xd6\x65\x62\x90\x85\x0d\xf7\x19\xf4\x8c\xab\xeb\x63\x99\xf7\xb5\xd3\xa1\x29\xa5\x9d\x2f\x7c\x6a\x2a\x91\xcb\xaa\xa5\x20\xa5\xa6\x34\x19\x0e\x0f\x0c\x91\x75\x21\xa4\x27\xb5\x71\xfc\xab\x6b\x5f\x21\x43\xe6\xea\x38\x76\x82\x20\x10\x27\xa3\x4e\x68\x22\x7e\x78\xa6\x4e\x5e\x51\x88\xae\xae\xe5\x76\x2d\x2b\x44\x5d\x8e\xf6\x46\x3b\xa0\x3c\xdb\x63\xfa\x93\x1c\xe2\xfe\x74\xdf\x9f\xee\xfb\xd3\xbd\xf9\x74\xef\x17\x1d\xd7\x43\x16\x68\xb5\xdb\x19\x9c\xa5\x78\xb8\x7b\x92\x9d\x38\xc7\x8e\x48\xc0\x56\x3c\x1e\xf3\xf4\x51\xfa\x1c\xcb\x2c\x73\xc5\x5e\x00\x7a\xe2\x1c\x3b\x55\x0b\x5d\x39\x65\x06\xca\xbe\x06\x60\xa3\xa4\x50\x49\x1f\xd7\x5f\x52\x28\xe8\xf3\x4a\x3a\xb0\x1e\xc7\x18\x40\xd0\x2f\x4b\x86\x71\x8c\x2a\x8b\x62\xc9\x9c\x28\xfa\x35\x0f\x69\xf9\x7d\xe0\xfc\x8c\x6e\x1d\x4f\x7c\xef\x81\x5d\xaa\xb2\x6a\x3c\x95\x03\xa0\x10\xd0\x58\xaa\xa5\x6c\x83\x2f\x1c\x18\xd9\xed\x53\x96\x34\xa2\x9a\xa3\x30\xbe\x74\x6b\x12\x0c\x3a\xdf\x9e\x7c\xeb\x04\x66\x92\x41\x35\xf6\xae\x47\xd6\x81\x76\x0c\xfb\x1c\x82\x87\x99\x02\xbe\x8b\xf4\xa1\x40\x3f\x9f\xf8\xd1\xeb\xf8\x16\x95\x0c\x5a\xed\x41\x19\x97\x65\x19\xbb\x28\x25\x18\x59\xad\x44\xd2\x2b\x99\x98\xec\xc4\xcb\xf6\x9b\x9a\xe5\x25\x41\xe8\x0f\xe4\xd6\x1f\x2d\x77\x04\xde\xe8\x5c\xdd\xc5\x36\x4c\x12\x98\x3b\xe6\xec\x40\xfe\xbf\x2c\xbf\x30\xc9\x3e\x52\xa8\x1a\x94\x1d\x0d\x0f\xc6\xa5\xad\x31\xd2\x1d\x75\x30\x3e\x54\xc7\x03\xa2\xa0\x42\x4d\x1a\x59\xc8\xe0\x90\xa6\x4b\x12\xa2\x63\xf5\xf0\xa1\xbd\x9b\x0c\x06\xdf\xd7\xda\x99\xdf\x84\xf0\x71\xfa\x72\x9c\xd6\x44\x38\xd8\x65\xae\x07\x9c\x6f\x1c\x80\xc4\xbd\x46\x82\x60\x94\x65\x8d\xcd\x79\xe9\x1b\xf1\x58\x54\xc7\x79\xf4\x88\x64\x49\xdc\x74\x96\xde\xf4\xa3\xed\xd8\x24\x36\x5d\x1b\xe3\xf8\x32\x25\x43\x51\x1d\xc4\x01\x4e\x17\xe2\x33\x24\x5b\x6b\xc7\x61\x9a\x92\x28\xc6\x90\x0f\xb6\xa6\x6f\xdc\xda\xf7\xde\x01\x68\xef\x00\xb4\x3b\x0e\x40\xd9\x77\x53\xfb\x96\xb0\x6c\x81\xb4\x75\x0b\x14\x4a\x93\x1d\x56\x4e\x22\xf0\x60\x47\xd0\xc3\x9c\x26\x89\xf5\x34\xe9\x7d\x40\xd8\x45\x68\x19\x1d\x50\x95\x8b\x37\xb4\xaf\x81\x24\x40\x22\x07\x57\x93\xa1\x8d\x66\x86\x36\x23\x35\x8b\xfd\xb4\x30\xf2\xbc\xb9\xa9\xeb\x81\x18\x50\x90\x48\xe1\x71\x23\xc7\xa8\x35\xb8\x63\xe9\x3c\x9d\x12\xb8\x98\xdd\x8e\x48\x87\xaf\x62\xf3\xab\x79\x5d\xa4\x2e\x4d\x59\x71\xc0\x0f\x71\xa1\x9e\x74\x3f\xc1\x8e\xcd\x62\x52\x5f\xe8\xea\xae\x49\xb0\xb0\xda\x81\xd5\x26\x04\xc3\x53\xcf\xff\x57\x1a\x63\xf1\xb4\xe0\x1c\x92\x11\x21\x7a\xfc\x0b\x50\x03\x99\x5f\xf2\x02\x14\x5e\x32\x44\xaa\x16\x40\xc3\xbe\xd7\x1d\x97\x00\x17\x33\xdb\x8b\xdc\x54\x2f\x04\x8d\xa8\xf3\xd1\xf1\x7e\x38\x39\x73\x0a\xc4\x33\x72\x32\xf7\x87\x83\x8a\xc6\xee\x38\xba\xb6\x0c\x03\xe2\xbb\xea\x17\xf6\xb8\x5c\xb7\x31\xc2\xb3\xd2\x61\x7b\xca\xbd\x1f\xe5\x12\xf6\xa5\xfc\x2e\x1e\x1b\x87\x35\xfb\x22\xbe\x74\x8f\x0a\x34\x9e\x73\x7c\x3f\x8a\x75\x35\x3c\x6f\xc3\x0d\x54\xdd\x00\x7c\x71\x3e\xe3\x7a\x66\x5b\x71\x1b\xbc\x31\xee\xa3\x59\xee\xd6\x36\xca\x2a\x1e\xee\x50\xbe\xcb\x0d\xaf\x72\x2f\x11\x8a\x2e\x60\x78\x55\xd3\x46\xbf\xb6\x55\x84\xf9\xd2\xcb\x9b\xdb\x13\xf3\x14\x95\xea\x0a\xb3\x73\xc2\xe5\x82\xe8\x4b\xba\x8b\xbe\xb0\x9c\x4b\xb6\x30\x2f\x8d\x35\x1f\x7d\x42\xe1\x92\x21\x4b\x41\x9b\x43\x56\xb8\x33\x55\xb5\x88\x50\x45\xd2\xad\x81\x97\xe6\x92\x77\x69\x84\x5c\xe4\xf3\x7f\x00\x57\x92\x2d\x62\x32\x2c\x27\x85\xcd\xa4\x5a\xb4\xce\x44\x55\xe0\x44\x28\x41\x0c\x39\xde\xba\xaf\x11\x45\xa6\x98\xed\xec\xa5\xa4\xe1\x77\x2c\x02\xac\x38\xec\x9a\x9b\x92\x75\xbf\xb0\xb0\x62\x9f\x8d\x8c\x46\x25\x21\xdf\x9d\x94\x8f\x7a\xe3\x80\x98\xbe\x90\x29\x5c\x8b\x63\x55\x99\xb8\x15\xd5\x88\x1b\x69\x06\xc9\x14\x31\xab\xaf\x48\xf5\x4a\xa8\x18\x5f\x23\x2c\x88\x7a\xf7\xea\x2f\xd6\xe4\x9b\x6e\xbc\x32\xea\x76\x0f\xa4\x92\xd2\x12\x10\x85\x23\x28\xb5\x5a\x72\xa6\xb3\x45\x13\x44\xd3\xe4\x1a\xb9\x38\xf3\xec\x78\xfe\xe2\x0d\x1d\xdd\xc9\x04\x58\x2f\x25\x1a\xe9\x68\x3c\x01\x1f\xd2\x04\x19\xbf\xd7\x22\x5d\x77\xd1\x0f\x54\xd4\xe3\xf8\x1c\xa6\x50\x45\x8a\x5d\x62\x76\x3a\xd1\xa2\xc5\xba\xf9\x25\xae\x04\xbe\x39\xfe\xc6\x2c\x92\xda\xc1\x74\xfa\x50\xdc\xa5\xa5\x6c\x5c\x5f\x7b\x4e\xcf\x5d\xf7\x39\xa2\x9f\xdb\xad\xff\x25\xcb\x8a\xb0\xa9\x14\x23\x95\xef\x4b\xd8\xad\x3c\x56\xcb\xcf\xbb\x76\x87\x95\xc9\xfd\x5f\xf8\x1a\xeb\x9e\x37\x53\xcd\xb4\x06\x54\x29\x3a\xf1\x5e\xdd\x47\x57\x09\x30\x73\x2e\x44\x3e\x15\xe5\xea\x48\x80\xd4\x0d\xf0\x81\xac\x61\xa4\xda\x8e\x32\xdb\x04\xf1\xc0\xf0\x34\x08\x02\x9c\x39\x19\x12\x51\x09\x2a\xc0\xfa\x68\xf9\x6f\x9c\xdb\x2e\x88\x96\x4e\xc5\x43\x46\xe2\xb9\xeb\xa9\x02\x0f\x95\xc3\xa2\x5e\x20\x6c\x34\xaa\xb6\x55\xf2\x80\x40\x58\x4a\x19\x22\x73\x3a\x72\x9c\xa3\x20\xc0\x67\x85\xb1\xf2\xf3\xa2\xd7\x7e\x63\xae\xa7\x3c\x12\x3e\xc7\xf9\x61\x6c\x33\xa9\x72\xdf\xeb\x46\xad\x58\xcb\x3e\x7b\xf1\x40\x17\x6b\x0b\x92\x7e\xba\x6d\xeb\x7d\x7f\xb5\xb6\xbf\x5a\xfb\x33\x5d\xad\x75\xdc\x74\xfb\xeb\xb6\x2f\x78\xdd\x66\x38\xaa\x3f\xd0\x85\x9b\xb1\x50\xd9\x85\x9b\x08\x3e\x43\x3e\x4e\x23\x04\x32\x05\xc4\x72\x03\x97\xb6\xdd\xc0\xa5\xf2\x06\x4e\xb0\xdb\xb7\x88\xc1\xd1\x98\x1f\x1d\x18\x85\x6c\x28\x9e\x39\xc0\x99\x23\x3a\x1b\x4e\x21\x43\x37\xf0\xd6\x99\xf8\x31\x0e\x93\x65\x84\xa8\xe1\xbb\x96\x2a\xcf\xf4\x9f\x63\x1c\x39\x9e\x77\xc6\x19\x4d\xed\x75\x9c\x39\x1d\xdc\x32\x9d\x46\x57\xf9\x42\x74\x31\x02\x4e\x36\x07\xff\x5c\x2e\xf9\xeb\x97\x4e\x5e\x14\x53\x89\x4f\x77\x71\x34\x6a\x6f\x05\xf8\x48\xea\xe0\xde\x49\x77\x20\x3e\xca\x96\xae\x64\xb5\xa0\x75\x1d\x1d\x14\x2f\x41\x45\xeb\x5e\x97\x98\x98\x63\x0d\x4b\xac\x61\x13\x6b\x9f\xe9\x62\xb3\x22\x4f\x1c\xc3\x28\x22\x88\xd2\x2f\x66\x09\xff\x72\xd7\x1b\xc5\x5d\x72\x14\x58\xae\xf4\x14\x51\xfc\x7f\xec\xbd\xf9\x7b\xdb\x36\xba\x3f\xfa\x7b\xfe\x0a\x86\xdf\x7b\x5d\xf2\x0c\x24\xdb\x59\xda\x54\x1d\x4d\x9a\x3a\xe9\x34\xa7\x69\x92\x93\xa5\x9d\x7e\x5d\xdd\x3c\x30\x09\xdb\x6c\x28\x40\x03\x40\x76\x34\xb6\xce\xdf\x7e\x1f\x6c\x24\x48\x82\x9b\x24\xaf\x75\x9e\x67\xa6\x32\x17\x10\x78\xb1\xbc\xfb\xe7\x1d\xea\x5d\x72\x93\x7c\x1d\xd5\x99\x16\x93\xcb\x50\x3c\x83\xfc\xf8\x2f\x38\xd9\xc5\x23\xd2\x39\xdb\x6a\x96\xcf\xcf\xab\x77\xde\x8a\x97\x86\x2f\x24\x01\x87\x6f\x05\x01\x33\x37\xef\xdf\x77\x6f\xf8\xb2\xb8\x0b\x70\xd8\x3c\x4d\x3b\xa4\xe6\x18\x4c\x32\x8a\xe2\x84\x8a\x85\xc9\xc9\xa5\x5a\x9e\xcf\xcc\x87\x47\xc5\xac\x82\x62\xcc\x42\xb8\xa6\xba\x7a\x17\x80\xd0\xb6\xb2\x1a\xe1\x00\xab\xf4\xd4\x12\xde\x1d\x31\x37\xb1\x4d\xe7\x33\xc6\x29\x82\xd3\xdb\x7a\xee\xad\xc7\x0e\x6f\x83\xf0\x83\x09\x3f\x24\x73\x1c\x5f\x19\x66\x8a\x3e\x63\x2b\x39\xa7\x65\x1c\x25\xd3\xe3\x61\x6e\xe8\x53\x5a\x55\xae\x63\x25\xf1\xca\x64\xe8\x1f\x8b\x9f\xda\x46\x0c\x2d\x23\xab\x78\x79\xdd\xe8\x1a\x56\xc3\xb4\x6c\x35\x4c\x50\x53\xd3\x5d\x4c\x86\xce\xa6\xe3\x84\x45\xe4\x04\xd1\xc5\x20\x3a\x86\x09\x2e\x35\x4b\x5b\x9b\x85\xb7\xda\x12\xc9\x2e\xc4\x12\x09\xbb\x58\x22\xc9\xe5\x5a\x22\xe1\xd5\x58\x22\xc9\x15\x59\x22\x13\xf7\x6e\x28\x5b\x22\x9b\xb6\x5c\xd2\xba\x37\xd2\x9b\x65\x8e\x9c\x6f\xc6\x1c\xb9\x4e\x91\xd5\xdc\xed\xd5\x82\xc3\x91\xae\x9f\x5d\xcb\xd2\xf9\xd1\x48\xf3\x0f\x1b\x93\x23\x6d\xf7\x75\xd9\xb6\xbe\x24\x08\x41\x0a\x88\x65\xdf\x03\x73\x9a\xb2\x06\xd0\x3b\x71\xdb\x0f\x81\x3e\xd4\x47\xfb\x93\xaa\x7d\x33\xfb\x40\x8b\xd9\x12\xf8\x09\x3e\xa2\x88\x31\xeb\x0a\x47\x74\x9a\x60\x15\xc7\xd4\x68\xde\xe4\x4a\x86\x29\x66\xe6\x96\x04\x9a\xa7\x7c\x54\x26\x1c\x0b\x98\x84\x26\x54\xe6\x3d\xc9\x35\x46\xb0\x03\xa1\x68\x95\x50\x86\x04\x5d\x5e\xc7\x95\xd7\xdd\xa6\x54\x9c\x93\x6e\x0d\xda\xe0\x2e\xb4\xa9\xa1\x0c\x56\x94\xd1\xed\xeb\x97\xea\x07\x59\x4e\x53\xac\x0c\xb2\x53\x19\xfd\x36\x71\x70\xde\x4b\x0e\xba\xd1\xca\x79\x76\x78\xaf\xac\x99\x6b\x12\x98\x66\xee\xc2\x9f\x2f\x4f\x19\xd1\xa4\x37\x70\x80\x57\x43\xfb\x8d\x74\xbd\x73\x54\x6a\x6d\x03\x57\x8e\xa8\xd7\xdc\xb3\xf5\x36\xd7\x75\x80\xeb\xac\xab\xf2\x7e\x66\xe1\x66\x1a\xfc\xc6\x02\xb0\x91\x94\x44\x80\x1e\x92\xe3\x7e\xae\xaa\x4a\xad\x32\x54\x52\x06\xa3\xd1\x08\x0d\xb3\xa1\x5f\xa2\x8a\x5f\xa6\xf9\xf5\x01\xd9\xbc\x76\xb0\x9a\x40\xca\x85\x1d\xa7\xf4\xb2\xa7\x50\xf3\xdc\xeb\xb1\x5d\xae\x2c\xcb\x4a\xca\x9c\x37\xd5\xda\x76\x1d\x32\xab\x6e\x95\xb0\xc0\xe1\xd1\x1d\x1d\x37\x40\xc7\xdb\x6e\xe8\xbf\x48\x62\x5e\x25\x3f\xed\x16\x9d\x2f\xb8\x63\xbf\xe8\x7a\x0b\x1e\xe7\x08\xf1\x67\x11\x4f\x4e\x50\x20\xe3\x79\x1b\xb3\xc4\x15\x9c\xe7\xbd\x16\x6c\x7b\x50\x30\x43\xa8\x80\xa2\x5e\x14\xbf\x62\xa7\x45\x23\x5c\x1d\x46\xa7\x9a\xa4\x2f\x28\x15\xd2\xc3\x5b\x78\x84\x3c\x4c\xb8\xa7\xba\x9c\x81\x82\x0d\x23\x12\xa3\xf1\xa3\x9d\x47\x00\xf5\x1a\xbb\x12\x63\x6a\x14\x0b\x84\x4f\x1a\xb4\xf5\x7c\x4a\xe0\x41\xea\x4c\x71\xb3\x83\x8c\xb3\x15\x52\xe2\xc7\xcf\x28\x85\x8b\x61\xc2\xe4\x7f\x2d\x90\x3d\x22\x76\x5a\x80\xc2\xf3\xf3\x44\xfe\x3f\x93\xff\x6f\x11\x48\x0d\x5c\x10\xe8\xc3\x62\x86\x34\x79\x5e\xaa\x04\x4a\x0f\x72\xa1\x81\x70\x8f\x13\x8f\xcd\x28\x82\xb1\x87\x09\x1e\x24\x5c\x99\x79\x3d\xa3\x90\x0f\xff\xc0\x2f\xb1\x47\x68\x8c\xa8\x78\xf4\x00\x79\xe6\x11\x20\x5f\x80\xa2\x53\x1e\x91\xb3\xcf\xbc\xe9\x9c\x71\xef\x18\x9e\x20\x0f\x7a\xfb\xca\xab\x30\x94\xcf\x73\x42\x27\x41\xe8\x4d\x11\x3f\x26\xf1\xd0\x0f\x97\x41\x58\x0a\x41\xee\x37\x76\xb4\x91\x81\xc7\x88\x71\x3a\x8f\xf8\x9c\xa2\xab\x1b\x3d\x53\x67\x62\x72\x68\x3c\xa1\x8c\x53\x21\x76\x8e\xc7\x7c\x31\x43\xe4\xd0\x43\xd6\x84\x03\x1e\xde\x2b\xb8\x7f\x66\x94\x70\x22\x1e\x1c\x72\xf2\x5e\xbe\x38\x8c\x60\x9a\x06\xc8\x1c\xd9\x4f\xc4\x91\xad\x0f\x6a\x5f\xbd\xe4\x8f\xc7\x63\xbc\xb5\x25\x76\x04\x56\x04\x20\x54\x26\x4d\x14\xae\x28\xab\x18\xf0\x7f\x81\x33\xf9\xc2\xf9\xb9\xff\x1e\xa9\x77\x9f\xaa\x69\x39\xa4\x64\x1a\xa0\x70\xe4\x3f\x33\x7e\x17\xfd\xe0\xf6\xff\x17\x3c\x1d\x7d\x4c\xce\x5f\x86\x98\x07\x4f\x47\x4f\xce\x77\xbf\x3e\x7f\xf8\x20\x0c\x9e\x8e\xf6\x52\x38\x9d\xa1\x38\x54\x2d\xfc\x3f\xdb\x43\x8e\x18\x0f\x70\xf8\x54\x8d\xcd\x14\x41\x28\xf9\x2c\xc2\xb3\x40\x03\xd8\x9e\x9f\xf3\x7f\x20\xed\x0c\x0a\xb7\xb6\xa4\x8d\x5f\xff\x75\xcf\xb8\x8e\xf0\x78\x07\x50\x79\x2e\xa8\x55\xc3\xc3\xef\xf0\xdf\xf9\x77\xf8\x6f\x7f\x0b\xe9\x3e\x9e\x8c\xd1\x3e\x9e\x64\x3e\xb7\x42\x3c\xb3\xa2\xff\x1c\xab\xc3\x20\xf6\xef\x9b\x29\x50\x93\xb9\xb5\x55\x9a\x54\x2f\x31\xde\x30\x6b\x69\x16\x68\x73\xa1\xc1\xcb\x3d\x98\x91\x3c\xcc\x68\xdd\xc3\xf2\x66\x1d\x2e\xa8\x56\x0a\xca\x4a\x5a\x45\xbd\xe3\x90\x72\xa6\xdc\xc7\xff\x6b\xf4\x05\x36\xce\x61\x44\xa4\xe1\x10\xe1\x93\x50\x7c\x90\xf0\x8f\xef\x5e\xf9\x61\x96\x99\xe3\xff\xaf\x51\x09\xb3\x4b\x46\x79\x1f\xce\x69\x1a\x1a\x0f\x85\xea\xea\x90\xa2\x88\x1c\xe1\xe4\x3f\x28\x60\x21\x48\xc6\x50\x34\x8e\x73\xab\x24\x01\x67\xcb\x9c\xe9\xbd\x39\xc5\xba\x4e\x4f\x18\x86\x20\x1d\x27\xfb\x3b\x13\x30\x1f\x27\x7a\x83\xec\x56\x95\x14\x3b\xa1\x74\x3f\xad\x8a\x41\xb6\x0c\x34\xc9\x92\x8b\x82\x79\x76\x3b\x14\xfc\xd5\xe1\x72\xe9\x2f\x02\x18\xe5\x1a\x69\x3a\xd7\x8a\x04\x62\x97\xe8\x49\xd1\x70\x98\x2a\xd7\x96\xc8\x7d\xbc\xb5\x15\xa0\x9a\x99\x7a\xea\x90\x1e\xf4\x93\x05\x21\xc2\xbc\x0f\x94\xd0\x21\x55\x7f\x8d\x58\xde\x20\x7a\x98\xb7\xca\x02\x47\x73\x60\x70\xe6\xb7\xba\x1a\x81\x23\x4a\x13\x84\x79\xcd\x6e\x51\x37\xb7\x8f\x39\x9f\x35\xa7\x6b\x5a\xce\xb7\x38\xea\x06\xd6\x20\xf7\xaa\x4e\xd1\xed\xf6\x86\xce\xd1\x8d\x13\x26\xb8\x52\xdc\x02\xde\x90\x5b\x67\xc4\x0a\x4f\x22\xc8\x15\x08\x7c\xc7\x75\xa9\x01\x6b\x83\x30\x33\xd4\xa9\x81\x59\x0b\x56\xd1\x56\x10\x3b\x62\x61\xc1\x32\x64\x0d\xab\x28\xe3\xd6\x23\x7e\xb9\x62\xf4\x75\x9a\x80\x9a\x85\xa1\x81\xe4\xf0\xc3\xad\x2d\xf5\x10\xb3\x02\x86\xd4\x43\x3e\x38\x33\x8f\xe9\x95\xb0\x9a\x8b\x27\x07\xa1\x98\xcf\xe2\x6a\xa2\xbb\x46\xe3\x45\x1a\x66\x57\x7f\x7b\x54\x90\xbd\x2b\xbd\x3e\x3f\x57\xe0\x12\xea\x3a\x3c\x20\x94\x07\xe1\x52\x72\x31\x40\x01\xbc\x97\xd3\x7e\x86\x28\x4b\x18\x0f\x02\x38\xe6\x20\xa0\x63\x14\x26\x38\xc0\xe3\xb3\x65\x58\xe3\xc0\x17\x0d\xe8\xf5\x0f\x7b\x39\xf0\xf1\x3e\x9d\x8c\x21\xc0\x61\x19\x22\xa2\x41\x50\xb6\x8b\xd9\x76\x89\xea\xb9\xcd\x71\x2c\xd8\x8e\x63\xc1\xe3\xdd\xef\x70\x35\x8e\x05\x9b\x38\x16\x58\x89\x63\xc1\x76\x1c\x0b\x96\x71\x2c\xf8\xff\x7d\xf0\x94\x9b\x98\x11\xd8\x10\xc7\x22\x3b\x0d\xe0\x65\xc4\xb1\xc0\x30\x1c\x59\x7d\xda\x78\x1c\x0b\xac\x8f\x63\xa1\x37\x11\xe2\x1d\x3a\x39\xcd\x05\x83\x66\x50\x0b\x34\x63\x53\x08\xea\x46\x14\x6b\x46\xdf\xa8\x63\x29\xb8\x5a\x39\x0d\x1a\x36\xc1\x0c\xde\x06\x59\x02\x5a\x28\xc2\x38\x22\xb6\xff\xbf\x0c\xc0\x41\x5d\xa5\x55\xa0\x55\x5a\x85\x89\xcd\x40\x2b\x85\xd7\x74\xd6\x74\x49\x32\x81\xee\x53\x4e\x39\x4f\xb6\xd5\x79\xc2\xb6\x61\x94\x5e\x8c\x70\xe2\xcc\xd6\x0a\xaa\x53\x8b\xc7\x7c\xc8\x00\x1d\xe7\x89\x6c\xf8\xa9\xef\x8f\x70\x38\xe4\xe4\x15\x39\x45\x74\x0f\x32\x14\x98\x79\x90\x75\x7a\x0a\x76\x7d\x65\x06\x2a\x3e\x6c\x25\xd1\x9f\x9f\x57\x5f\x79\xf9\xbc\xe1\x85\xa5\xa4\x63\x07\xca\xe5\x05\xf9\xae\x05\xfd\x4a\xe4\x03\xb0\x38\xe6\xf7\x32\x82\xc4\x45\x2c\xc0\x8a\x4f\x3e\x47\x8c\xcb\x70\x17\x82\x9d\x8f\x93\x31\x2d\x5d\x49\xc6\xfe\xb3\x34\xf5\x4c\xd0\x8a\x17\xfc\x57\xe8\xd7\xcf\x1e\xcc\x88\x4d\xcc\xec\xb0\xc2\x25\xff\xbf\xc4\x49\x01\xb7\xb6\xe4\xbd\xc4\x71\x8f\x39\xee\x75\x9e\xb7\xcf\x27\x2d\x21\x2a\xc9\xd1\x31\x1f\x70\x9a\x4c\x37\xea\x46\x6f\x9d\x4f\x9c\xd5\x4a\x19\x32\x00\xf3\xf9\xa4\x62\x3e\xa9\x4d\xc1\x62\xe8\x4a\x61\xf2\x54\xa1\x05\x7f\x5b\xa8\x78\xea\x74\xdd\xce\xca\x57\xb9\x57\x3c\x2c\x5e\xef\x4e\x47\x89\x04\x7f\x2d\x96\xfe\xca\x47\x87\x4c\x5e\xed\x75\x74\x3c\x53\x49\x9d\x9b\x38\x3f\x24\x36\xb4\x89\x80\xbc\xd1\x74\x7c\x6f\xc2\x38\x37\x77\x0a\x9f\x9f\x17\xd7\xf5\x07\x28\xf4\xcf\xf3\xf3\xfd\x49\x38\x64\x64\xea\xcc\x06\x96\x9f\x40\x4d\x13\xe3\xea\xc6\x5b\x42\xb9\xec\x88\xb2\x3a\xd6\xee\x93\x3e\x33\x5b\x31\xb5\xdf\xbc\x39\x5d\x81\xad\x1a\xa1\x57\xaa\xe2\x9d\x67\xf6\xd9\xde\x2b\x36\x2c\x42\x8d\x75\x9c\x68\x29\x43\x36\xce\xb6\xe3\x4b\x36\x84\xd9\x86\xbe\xd3\x79\x5d\xcc\xe4\x28\xef\xd6\xc5\x7a\xbb\x8b\x92\x46\xe5\xfc\xaf\x4c\xc3\xf2\x8a\x97\xdb\x2a\x41\x17\xb5\xa1\x0c\x48\x44\x2c\xe4\x60\xde\xfd\x3b\x16\x22\xc4\x46\xf6\x95\x83\x89\x56\xc5\xba\x79\x24\xa3\xb2\x2f\x57\xa6\xa3\xda\x38\x02\xd8\x98\x0e\x19\x20\xd6\x92\x61\x62\xc9\xb0\xf2\x92\xd1\xc6\xb7\xfb\x3b\xca\xfa\xe6\x91\x82\x95\xdb\xc4\x0e\xfa\xe1\x28\x8b\xfe\x76\xac\x2c\x40\x8c\x96\xfb\x24\x0c\xef\x39\xda\xe1\xf0\xa8\xbe\x8d\x9c\xd5\xe6\xed\x3c\x72\xb7\x63\x50\xcc\xc2\x91\xee\x37\x1c\x67\xaf\x7c\x63\x75\xe3\x1b\x53\xb3\xeb\x14\x52\x9c\xe0\x23\x7f\xa4\x4c\x8b\x34\xe1\x49\x04\x53\xfd\xe7\x0c\x32\x26\x6f\x16\x54\x6e\xdd\x2b\x85\x01\x5f\x74\xc2\x64\x22\x30\x0c\xc3\xf0\x1f\x3b\xa5\x22\x5f\xf7\x77\x97\xa5\xaa\x5f\x35\xc4\x0a\xcf\xcf\x1b\x48\xa0\x92\x65\xb4\xb3\x32\x33\xdd\xa0\xc0\x36\xdc\x14\xbd\xbb\x3c\x7c\xca\xcb\x5b\x80\xdb\x90\x25\x00\x4b\xab\x96\xaa\x39\x5b\xb3\x03\x70\xbf\xb5\x7f\x4b\xa4\xf1\xe1\x0a\x22\xb9\x49\xb0\x68\x91\x27\xe5\x8b\xb9\x17\xcf\xd9\x44\x26\xdd\x03\x7f\x94\x3b\xf0\x9c\x8f\x2a\xb1\x71\x25\x06\x26\x8b\xd2\xdd\xec\xb9\x7a\x16\x45\x88\x31\x42\xbb\xd0\xfc\x8e\xf5\xf5\x67\x7d\xe5\xcf\x09\xa9\x75\xc3\xe2\xaa\x03\x1e\x81\x21\x9a\xc0\x34\xf9\x8f\x58\xa4\x83\x2c\xb4\xd9\x66\xaa\xdf\x23\xd1\xab\x41\x0c\x39\xb4\x9e\xde\xfe\x93\x11\xbc\x01\xc6\x5a\xfb\x42\xd6\x97\xb3\xa2\xe1\xfb\x08\x71\x47\x60\x5a\xc6\x18\x96\x12\x2e\xdc\xb9\x21\xad\x81\x8a\xce\x0f\xe0\x2c\xe9\x3c\x52\xf9\xf0\x4d\x1d\x2d\x45\xac\xdb\x9c\xca\x07\x6f\xe8\x28\x4b\x46\x6d\x50\xf7\x98\xe5\x3b\x2e\xc0\x46\x93\x18\xa5\xaa\x95\xcb\x44\x73\x3f\x9b\xd1\x64\x0a\xe9\xe2\x67\xb4\x18\xe1\xe1\xdb\x77\x2f\x7f\x79\xf6\xee\xf7\x4f\x3f\xbf\xf8\x5d\x66\x17\xa8\xab\xef\x5f\x7d\xfc\xa7\xbc\x44\x11\x9b\x11\x1c\xff\x48\xe8\xff\xcc\x11\x5d\xbc\x43\x11\xa1\xb1\xd3\xfb\xe2\x59\xa5\xb8\x6b\x24\x92\x92\x19\x32\x4b\x9f\x44\x00\xef\xef\x4c\x34\xe0\x7e\x47\x24\xe3\x5a\x02\xb7\xcf\x87\x0c\x45\xa8\x4a\xee\xe2\xf2\xb6\xba\x58\x77\xf7\x58\x16\x61\x64\xae\x59\x8c\x23\xd7\x55\x63\xa2\xa9\x34\xa7\x3c\x30\x83\xc3\x04\x1f\x21\x3a\xa3\x09\xe6\xd5\x22\xdf\x40\xfa\xb4\x01\x03\xc4\xf2\x05\x27\x37\xd1\x99\x97\x8e\x5d\xbe\xb6\xb2\x97\xf7\x1f\x0f\xb6\xb6\xb2\x8a\xfc\xb9\x4f\xf7\x81\xed\xe0\x7d\x30\x19\x9d\x2d\x01\x1c\x9f\x2d\x4b\x28\xd3\xda\x1f\x5e\x53\xca\x7b\xbf\x24\xff\x4e\xc6\x62\x84\x62\x65\x65\x1f\xa4\xc3\x38\xda\xda\x0a\xe0\x3e\x1e\xfe\xf4\xe2\xd9\xf3\x17\xef\xde\x7f\x7a\xfe\xec\xc3\xb3\xbd\x17\xaf\x3f\xbc\x78\x57\x7e\x5b\x3c\x1c\x02\xfb\xd9\xd7\xcf\x7e\x79\xf1\xfe\xed\xb3\xbd\x17\xe5\x47\xad\x0f\x60\xf6\x54\xfc\xdf\x28\x3f\x94\xb8\xd5\xc2\xfb\xdf\x7f\xf9\xe1\xcd\xab\xc9\x18\x02\xbe\x04\x73\xc7\xbe\x85\x9c\xc3\xe8\xf8\x27\xb5\x06\x47\x29\xb0\x16\xcf\x28\xd8\x01\xc4\x52\x54\x86\x3f\xbe\x79\xf7\xe2\xe5\x3f\x5f\xab\x6d\x3d\x7c\x2d\x7b\x26\xfe\x08\xcb\x3b\xba\xb6\x74\xc0\xbd\x3a\x4d\x53\x5f\x4f\x03\x04\x02\x38\xa6\x80\x8d\x25\x36\xbf\xe9\x4a\x80\x87\xf9\x01\x03\xf0\x50\x1f\x2a\x42\x8f\x8a\x42\x50\x54\x61\x60\xf8\x14\x0e\xa7\x70\x16\xb0\x70\xb4\x0f\x27\xfa\xa7\x38\x0b\x4c\xe0\x26\x04\x4c\x46\x9f\x74\x39\x87\xfa\xf5\xbd\x7b\xa7\x03\x2a\x4f\xa5\x62\x37\x94\x33\xd7\xd1\x8f\xdc\xc1\x62\x63\x9c\x9a\x06\xb5\x33\x38\xff\x98\xbb\xab\xd9\xa9\x79\x5f\x08\xcd\x5c\x46\x6e\xe2\x10\xd0\x42\x9f\x09\x60\x00\xef\x17\xe6\x7a\x12\x06\x95\x9e\x7e\x94\xd1\x37\x37\xa1\xa7\xcf\x65\xa9\x95\xf6\x9e\x92\x62\x4f\xd3\x2e\x3d\xd5\x71\x5d\x19\x40\x46\x70\xb6\x04\x69\xa9\x9b\x29\x20\x8e\x6e\x06\x68\x7c\xb6\x04\xe2\xdc\x15\x77\xc9\x24\x94\xbf\xed\x4d\x05\xf0\xbe\xfd\xe7\x24\x04\x28\x0c\xf7\x53\xc5\xd1\x00\x26\x74\x2a\x59\xcf\x3b\x39\x50\x56\x0c\x5e\x50\x47\xbc\xea\x1d\x19\xd3\xea\x79\x70\x7e\x7e\xb6\xbc\xa7\x8a\xd0\x78\x8e\xdb\xfa\x7c\x55\x21\x63\xe6\x4b\x6f\xe1\x22\x25\x30\x0e\x54\xdb\xe2\x30\x29\xdc\xfe\x05\x71\x55\xf6\x9f\x80\x54\x3e\x71\xcf\x97\x89\x8f\xfe\x7d\xe9\xf3\x0c\xd2\xe1\x14\x71\x38\x9e\xab\x2d\x18\x8d\x6d\xce\x2e\x5e\x4b\x82\x33\xf1\xc0\x68\xbe\x04\x5c\x85\x40\x28\xdc\x0b\x05\xac\x7e\xaf\x1c\x8d\x16\x3d\xa5\xa3\x68\x09\x78\x32\x45\x8c\xc3\xe9\xac\x2a\x77\x05\x18\x9d\x7a\xcf\x21\x47\xa1\xd0\x44\x3e\x24\x53\x14\xd8\x84\x93\x20\xb9\x05\xa2\x49\xae\x08\x12\x45\xb6\x74\x7c\x16\xc1\xe8\x18\xe9\xe0\xb4\x11\xdc\xa7\xc3\xbd\x67\x7b\x3f\xbd\xf8\xb4\xf7\xe6\xf5\x87\x77\x6f\x5e\x95\x8e\x64\x10\xcd\x29\x23\x74\x64\x1f\xdf\x2f\x5f\x3f\x7f\xf1\xaf\xf2\x73\x71\x34\xea\xc4\x0e\x4c\x40\x46\x17\x7e\xb0\x2c\x92\x47\x70\xba\x7d\xff\xcb\x80\x42\x7c\x84\xfc\x89\x24\xbe\xfc\x5d\xb8\x1c\x02\x3d\x41\xe3\xf1\x38\x91\xcf\x88\x2d\xad\xe6\x25\x23\x6b\x10\x02\xe6\x60\x7f\x28\x3c\x2b\x44\xfa\xbd\x5f\xe0\x48\x50\xd8\x07\xaa\x15\x19\xd2\x01\x52\x8b\xdc\x7a\xf5\xb8\x22\x71\x51\x27\xe0\x06\x5b\xd8\xca\xab\x35\x6f\x40\x54\xb6\x1a\xbb\xae\x12\x73\x5f\xd9\x55\xc8\x8d\xfd\xe8\x72\x89\x49\xf7\xd6\xb8\x95\x49\xa5\x41\x7a\xa8\xb7\x04\x19\x49\xb5\x78\x1a\x56\x57\x59\xf9\x9c\x37\x56\x6a\xac\xad\xba\x6a\x0b\x18\x2b\x2b\x92\xd2\x82\x2b\x0c\x96\x8b\xf3\x1a\x8f\xa9\xcd\xd2\xe1\x18\x01\x2c\x44\x65\x5e\x23\x2a\x0b\x69\x7b\xa5\xf0\x4f\xbe\x8f\xa5\xcc\xa6\xe2\xa3\x01\x06\xb0\x10\x85\xd7\x05\x88\xa0\xb0\x1e\x8a\x98\x67\x1b\xd8\x34\xe5\x16\x5b\xd2\xaa\x6e\x71\xa4\xe9\x5d\xed\x86\x4d\x44\x9a\x5e\x9f\xda\x0d\x9b\x39\xf8\xc8\x75\x35\x91\xd0\x82\x89\x44\x23\xd7\x53\x09\xe0\xa4\xb0\x9c\xac\x3e\x0c\xf7\xc4\xde\xde\xcf\x2f\x4d\xc2\xb0\xc6\xa0\x42\xda\x0f\x21\x65\x21\xb1\x4f\x1e\xa7\xf1\x8e\x6d\xca\x7a\xd7\x99\x21\xad\xcd\x7e\xda\x26\xab\x77\x33\x3f\xaa\x1c\x8f\x75\x9a\xa8\x51\x25\x7b\xb7\x53\xa3\xe8\xf5\x6e\xa7\x46\x0d\xeb\xd6\x4e\x5f\x7e\xe7\x0c\x6f\x5d\x91\xd3\xe5\x6d\xdd\x16\xe9\xb0\x3e\x88\xb4\x07\x59\x3e\x9f\x74\x34\x4d\xc2\x18\xce\x78\x53\x83\x3a\x72\x55\x56\x64\x1d\x08\xf6\x58\x67\xb2\xb4\x44\x8a\x4b\x46\xd1\xdc\xcc\x34\x27\x6b\xf2\x84\x18\x45\x24\xae\x4d\x20\x85\x9c\x1c\x48\x30\x4a\x3d\x85\x4e\xa4\x02\xc8\x39\x0d\xfc\x5f\x45\x47\xb3\x8c\xb3\x4a\xae\x33\x57\xd9\x88\xfa\x73\x59\x51\x5d\x1e\x8e\xc4\xec\x74\x33\x9b\x6d\xc0\x7c\x1f\xec\x00\x96\x5b\x1f\xa5\x31\x3f\x67\x3e\xbd\x2d\x8e\xee\x9e\xb0\x9a\x9e\x24\xd9\x75\x21\x7d\x24\x55\xad\x40\x26\xd6\x66\x75\x9a\x02\x26\xb5\x83\xcc\x78\x84\x42\x40\x02\x06\xa8\x6d\xce\xe1\xfb\xd0\xfc\xf9\x3f\x1f\x5f\xbc\xfb\xfd\xd3\xdb\x67\xef\x9e\xfd\x32\x09\xa5\x2d\xb2\x86\xab\x26\xed\x9b\xb9\x1c\x3b\xb1\xe2\x76\x96\xcd\x5c\xe0\x01\x57\x3d\xf1\x7d\x7f\x3c\x1e\x23\x5b\xb8\xd8\xda\x0a\x0a\x7f\x8f\x55\x48\x45\x08\xd0\x12\xc0\xcd\xca\x53\x17\xe0\x6c\x92\x6b\x84\x36\x2c\xd1\x8b\xda\x27\x54\xc8\xe3\xb5\x5f\x7d\x25\x2d\xfb\x9d\x38\x6e\x16\x5c\xa1\x82\xef\x47\x7e\x08\xe8\x18\xab\x00\x7c\xbd\xd4\xcf\x74\x94\xc9\x08\xeb\xe4\x6b\xf1\xd0\x5b\x42\xf9\x88\x2e\x2b\x8c\xba\x36\x89\xc7\x5a\xbd\x8d\xc0\x1e\x7d\xd6\xaf\x6a\xe8\xba\xb2\xe8\x46\x13\x47\x0e\xea\xe5\xb6\x86\x5b\xd3\x3d\x2c\xb8\x6b\xb2\x65\xe7\x32\x58\xb4\x07\x2a\xcb\x7c\x74\xc7\x9d\xb1\xf3\x6a\xed\x87\xd0\xd0\xc0\x28\x8e\x7d\x1f\x28\xc5\x79\xdf\x2f\x7d\x4c\x85\x81\x64\x7f\x4e\xdc\xfa\x63\x66\xdd\x55\x3d\xc8\x3a\x38\xde\x9f\x18\xa7\x5a\x76\x73\x9f\x4f\xb2\xfb\x82\x4f\xef\x4b\x25\x58\x7d\xff\x62\xa4\xf2\x3e\x22\x75\x06\xdb\xb7\xbc\xf6\xf2\x74\x07\x89\x91\x24\x71\x34\x98\x51\x72\x92\xc4\x88\x6e\x60\xb7\x16\xdb\xfb\x4b\xdb\x8e\x6e\x9e\x18\xcb\x36\x76\x14\x3e\x9b\xf3\x63\x42\x8b\xb2\x6a\xc5\x5e\xdb\xb2\x9e\x69\xe5\x48\xd4\x21\xaa\x1b\xe0\xbf\xb8\x66\x37\x31\x0b\xc0\x1a\x01\x7b\xf3\x5d\x8d\x1d\x10\xde\x66\x3b\x60\x70\x26\xd1\x79\xf9\x30\x89\xad\x6c\x62\x3e\xc4\x6c\x09\x58\x9d\xe0\xcc\xda\xcf\xb4\x6a\x42\xcb\x8a\x87\x99\x6e\xe8\xba\x8a\x1e\x7d\xcf\xfa\x4a\x2d\xa9\x55\xc9\x22\xdb\xb9\x2d\x54\x29\x27\xee\xac\x48\x14\xd5\x8c\x7d\x3d\xf9\x92\x60\xb3\x86\xb6\x21\x1b\x4c\x21\x76\x50\x0d\xd0\x4d\xd1\xcd\xa1\x48\x51\x73\x01\xac\x4c\xc1\x0e\xa2\x7e\xb9\xd2\xc8\x06\xa8\x59\x69\xf2\xba\xae\xb6\x0b\x52\x3f\x93\xc3\x40\x86\xbf\x1b\xf4\x35\x93\x83\x8d\x4e\x3d\x89\xb7\xa7\x51\x17\xe9\x10\x89\xbf\xd8\x78\xff\xcc\x24\xbd\x3c\xda\x79\xe4\x03\x9e\xf0\x14\x8d\xfc\xd7\x19\x4c\xe3\x72\x02\xe8\xd2\xd6\x69\x37\xa9\xcc\xd6\x31\x53\x5a\xac\x04\xac\x45\x31\x1c\xd7\xe8\x1a\x59\xa6\x85\x04\xe4\xc0\x24\x46\x5b\x5b\x59\x68\xfa\xf0\xe5\x73\x79\x99\x99\x08\x77\x21\x89\x65\x18\x2f\x25\xb2\xc0\x1e\x64\x81\xcb\x4c\xdc\xc8\x78\xd0\x98\x66\x9f\xcd\xae\x01\x35\xa2\x95\x83\x4e\x5b\xb2\xc1\xfa\xef\x8d\xbf\xda\x96\x50\x3d\xcb\x03\x39\x71\x55\xac\xcf\x2d\x50\x95\x72\x77\xaa\xd2\xc9\xd2\x29\xd6\x88\xd7\xf6\xd5\x54\x4f\xc6\x42\xc4\x07\x3d\xda\x1e\xb7\xb6\x8d\x54\x39\xd9\x1f\x09\x15\xeb\xd9\xfc\x6e\x52\x93\xef\x8f\xc7\x54\x29\xc1\xe2\x3f\xea\x95\xb1\x29\xa1\x02\x2e\x73\xff\x5a\xc2\xb0\x53\x58\xcb\x4d\x11\x14\xf8\xae\xfa\x32\xd9\xa3\x7e\x08\xc4\xde\x66\x23\xba\x5c\x67\x13\x31\xb6\x19\xdf\x8f\x69\xe9\xa6\x6c\xa2\xeb\x19\x49\x5f\xc9\x19\x5b\x71\x36\x74\x3b\xad\xd2\x93\xe3\x09\x21\x77\x35\x49\x57\x00\x6e\x6a\x46\x1d\xda\x71\x2e\x5f\xc1\x95\x24\x2d\xa7\x4f\xa7\xe8\xe5\xd0\x13\xdb\x0c\x03\xa5\x54\xce\x31\x1e\xbe\x9b\xa7\x88\x49\xb0\xd9\xb3\x97\xcf\xc5\x87\x50\x44\x11\x7f\xf9\x5c\x6e\xd9\x11\x1e\x5a\x59\x6b\xe0\xc3\x62\x26\x2e\x89\xff\x00\xf9\xde\x48\xbf\xbf\x0c\x01\xde\xda\xd2\x31\xa4\x56\x1b\xd8\x3e\x6b\xde\xa3\xf4\xb0\x61\x39\x3a\x97\xaf\x7c\x6c\x85\x58\xe3\x66\x4f\x4f\xb3\x18\x95\x9d\xa8\x78\x68\x92\xef\xb6\xb6\x32\x7a\x99\x4b\xe7\xe7\x41\xfe\x87\x65\x93\x94\x0f\xbd\x7c\x6e\x04\x0d\x3a\x64\x9c\x50\x34\x9c\x21\xf4\xf9\x59\x9a\x06\xbe\x5a\xb8\xa1\xc6\xbe\x0a\x7c\x43\x2b\x1f\xc8\xd7\xee\x41\x31\x17\x19\x05\x65\x5b\x00\x0f\xf3\x3c\x45\x2b\xa7\x10\x16\xf3\x17\x43\xa7\xb8\x06\x70\x67\x75\x58\xc1\xe1\x0f\xc4\xbe\x84\xa9\x2b\x3a\x83\x71\x48\x8f\x20\x47\xd5\x87\x6f\x56\x7e\x95\xea\xbb\x74\x92\x36\xa6\xda\xcb\x27\x2e\xb8\xaa\x97\x61\x7b\xe6\xc4\xd7\x1e\xd6\xa6\xa1\xe9\x9d\xad\x91\x3d\xf3\xbd\xdd\x35\x34\x42\x0d\xff\x80\x13\xd8\x3c\x7c\xf9\xc4\x6d\x1d\xbe\x46\x8d\xd5\xa2\x59\x4b\xb5\xad\xcc\x48\xcb\xfb\x23\xa3\xe3\x0c\x15\xbe\xf4\xc2\x66\x71\xad\x4b\x5f\xd0\x08\xe6\xf7\x0d\x56\xf9\xbd\x46\x20\x73\x9c\x03\x99\xd3\x9e\x40\xe6\x16\x84\x39\xad\x42\x98\x53\x17\x84\xb9\xec\x8b\x46\x31\xa7\x39\x8a\x39\x75\x0e\x4c\x3e\x5c\xc0\x33\xa7\xfd\xf1\xcc\x69\x58\x1c\xe9\xf2\xa6\x22\xf3\xe3\x8b\x46\x5f\xdf\x94\x28\xeb\xde\xdd\x31\x99\xd6\x55\x53\x25\x53\x3f\x04\x08\x9f\xd4\xdc\x47\xf8\xc4\x0f\x41\xff\x72\xac\xf2\x42\x5d\x35\x56\x0b\xb6\x59\x2c\xf4\x6d\x74\x82\x30\xd7\x8d\xf8\x21\x48\x70\x52\x60\x31\xad\xc2\x15\x50\x4f\xa4\x09\xe3\x08\x23\xaa\xf3\x9d\x62\x32\x1d\x66\x97\x02\xfd\x90\x75\xee\xc8\xb9\x79\x8f\xb8\xba\x01\xe3\xf8\xd7\x84\x25\x07\x49\x9a\xf0\xc5\xde\x31\xc4\x47\x32\x55\xe5\x34\x49\xd3\xe7\x88\x71\x4a\x16\xd5\x2e\x65\xad\x0f\x55\xe4\x94\xf9\xc8\x6c\x4e\x8f\xb2\x3f\x9a\x3a\xbe\x04\x8e\xcf\xba\x21\xab\xef\x95\x3f\x09\xe3\x38\xc8\xc6\x19\x93\x48\x36\x19\x84\xe0\xec\x24\x6b\x2f\x2a\xb5\xc7\xc3\x33\x83\x9f\x3a\x3c\x4e\xe2\x18\xc9\xe2\x07\xaa\xb7\x83\x5d\x71\x90\x2f\xc1\xe9\x31\xc2\xcf\x4e\x60\x92\x4a\x7e\xef\x76\x91\x03\x3c\x76\x7c\x39\x57\xf7\x55\xdb\x4f\x05\x7d\x35\x44\xa9\x25\xee\xd1\xac\xe0\x6e\x79\x34\xb8\xa9\xef\xe1\x19\x0c\x42\x20\x8b\xea\x48\x09\x63\x54\x06\x3f\x45\xe1\x12\xc8\xa1\x54\xe9\x57\xc9\x47\xdd\x71\xe6\xa3\xee\xd8\xee\x9f\x9d\xc9\x68\xe7\x1e\x0f\xca\x8b\xa6\xc6\xd9\x62\x20\xab\x55\x85\xd9\xba\x95\xb6\x04\x30\xfa\xf7\x3c\xa1\xa8\x5c\x54\xa0\xfc\xc2\x90\x25\xff\x41\xff\x50\x44\x46\xf8\x64\x78\x02\x69\xe0\xef\xbd\x79\xfd\xfe\xe3\xab\x4f\x3f\x7d\xf8\xf0\xf6\xd3\x2f\xcf\xfe\xf5\x69\xef\xcd\xeb\xd7\x2f\xf6\x3e\xbc\x7c\xf3\xfa\xbd\x29\x33\x60\xe6\x05\x72\x38\x8c\x52\xc2\x50\x2c\x68\x36\x76\x0e\xa3\xc6\xbc\x77\xff\x3e\x1a\xea\x6c\xe8\x20\x94\x99\x4a\xe8\xdf\x73\xc4\xf8\x20\x89\xfd\xc9\xd6\x16\xce\xeb\xd6\x36\x3c\x27\xa8\x70\x2f\x07\xa0\xdc\xda\xf2\x39\xfa\xc2\xcd\x3e\x97\x05\x9f\x94\x39\xc6\x6a\x21\x22\x32\xc8\x73\x20\x4e\x04\x99\x2f\xa5\x31\x7b\x6d\xb2\xc8\xf3\x8f\x05\xe1\x10\xa3\x2f\x3c\x08\xd5\xdf\x76\xaa\xaf\x38\x8b\x95\x52\x93\x22\xc8\x50\x40\x43\x40\xf5\xd4\x3c\x7a\xf0\x6d\x18\x2e\x2b\x4d\x8a\x85\x87\xa4\xaa\x23\xdf\x28\xcc\x4c\xe5\x61\xa5\x69\xa9\x35\xd8\x49\xff\x2e\xc8\x3c\xd5\xe0\xeb\xce\xb9\xe8\x9d\x13\xd9\x75\xfa\xf9\x9c\xb6\x3d\xd1\xf6\x15\xf5\x94\xcc\xcc\x19\xa8\x6a\x17\x5d\x43\x42\x73\x41\xcd\x2d\x1b\x59\xf2\xd7\xb8\x28\x7f\x9d\x9f\xdf\x0f\x1a\x25\x30\x23\x54\xa9\xb5\xbe\x3f\x01\x74\x7c\x7f\x07\xc0\xf1\xfd\x5d\xc0\x0c\x1f\xe4\x74\x91\xb9\x80\x09\x48\xc6\xc8\xc1\xe5\xbf\xbb\x1f\xd0\x71\x40\xc6\x89\x5e\x48\xe1\x30\x26\x18\x85\x52\x05\x9c\xcd\xd9\x71\x40\xcc\xd2\xba\xcf\xcf\xcf\x8d\x6d\xff\xfe\x78\xcc\xc3\xef\xc4\x27\xc3\xef\x96\x11\xe4\xd1\x71\x90\x86\x67\x50\x74\x81\x8d\xd3\xe5\x61\x82\x61\x9a\x2e\xce\x44\x07\xe8\xf9\xb9\x12\x15\x92\xa1\xea\xf2\xf9\xb9\xf9\x25\xc4\x0a\xfd\x64\x72\x18\xc0\x50\x89\x40\x6c\x99\x87\x26\x48\x4a\x9d\x9f\x47\xfa\xbf\x73\x5b\x10\x49\xfa\x0b\xc2\x71\x26\xa6\x4e\xe5\xff\x47\x37\x55\x08\x4b\xed\xb1\x57\x06\x54\x20\xd3\xfc\x26\x14\x3f\xca\x7a\x1b\x75\xae\x7c\x14\xdf\xe2\xca\x47\x71\x4d\xe5\xa3\xf8\xd2\x2a\x1f\x4d\x2f\x44\x43\xcc\x9a\x3f\x6c\xad\xe5\x95\x3d\x3a\xbb\xd5\x21\x57\xc7\x17\x12\xa6\x33\xeb\x12\xa6\x73\x70\xb9\x61\x3a\xb3\xab\x49\xd7\x3b\xb8\x31\x31\x6d\x52\x7e\xe7\x90\xf2\xdf\x6c\xbd\xc3\xf0\xf2\x9a\xbb\x0e\xa7\xb4\x4d\x52\xb1\x83\x07\xbb\x7e\xa1\x5c\x0e\x07\xbe\xf2\x34\x0f\x6d\xdf\x97\xf2\x39\xfb\xf9\x0e\x1c\x16\xd4\x9f\x80\x9b\xa2\x89\x7c\xa9\x10\x1c\x4f\xc6\xc5\x8c\x08\x84\x23\x12\xa3\x8f\xef\x5e\xee\x91\xe9\x8c\x60\x84\x79\x08\x16\xe2\x19\xda\xf4\x0c\x38\x09\xc1\x91\x78\x0a\xe6\x4f\x85\xe0\xcd\xd8\x1d\xc5\x26\x73\x9e\x05\x25\xe2\x79\x54\x8a\xc0\xcb\xa7\x58\xe1\xba\xf3\x3c\x72\xfc\x0f\xec\x87\x4d\xe1\xc2\x34\x99\x06\x62\xf5\xe8\x18\x72\xf1\x78\x8e\xf3\xe6\xff\x81\xc5\x85\xa7\x78\x84\x96\xa1\xe0\x1e\xa0\x0a\xea\x03\xa0\x75\xc0\xd2\x7f\xec\x3e\xa5\x83\xdd\xd1\x4e\x08\xd8\x78\xf7\x3b\xf6\x77\xfa\x1d\xfb\xdb\xdf\x42\xb8\xcf\x06\xbb\x13\x6b\xeb\xb2\x89\x0d\x09\x88\xe5\xf1\x0d\x65\x97\x23\x14\xe0\xb0\x76\x90\x65\x58\xd3\x32\x60\xa6\xc9\x1d\xdf\x51\x7c\x2d\x40\xd2\x33\x80\x0c\x02\x23\x57\xe8\xa3\x86\xaf\x66\x87\x7a\x86\xec\x79\x1c\x1c\x07\x67\x4b\x80\x24\x3c\x4d\x09\xf5\x93\x2f\xa5\xcb\x2d\x04\xfb\x3c\xab\x71\x06\xc3\x25\xf8\x34\xde\xe7\x45\x38\x0a\xe0\xff\x6b\xf0\x4e\xab\x41\x2f\x9f\xfb\xf2\x4f\x85\xf3\x00\x5e\xac\x68\x99\xb1\xb4\x8f\xe6\x32\x5c\xb6\x41\x35\x04\xb2\x10\x99\xd0\x32\x9a\x5f\xca\x1e\x63\xdb\x5f\x8e\xa9\xcc\x5c\x52\xa5\xba\xda\x2b\x79\x5d\x8c\x91\x66\x45\x83\x4b\xb3\x8d\x65\x4e\x5d\xe5\x67\x17\xb5\xf6\x6c\x70\x40\xe2\x85\xe3\x8d\x37\xf5\x6f\x68\xe5\x57\x17\x98\x77\xed\x63\x5c\xdd\x40\xb6\x84\x82\xff\xb1\xfb\x14\xab\x0d\x04\xc7\xbb\xdf\xc1\xbf\xe3\xef\xa0\x94\x56\x60\x71\x03\xc1\x89\xf1\x70\x8a\x71\x8b\x8e\xd6\x50\x9b\x8c\xd3\x40\x22\xc4\x90\xfd\x9d\x09\x88\xc6\x24\xab\xc9\x07\x62\xf5\xf2\x9c\xa6\x85\xfa\x7e\x28\x5b\xdd\x49\x10\x85\x61\x56\x00\xc2\xf3\x43\x30\x1d\xa7\x41\x1c\x82\xc3\xf1\x54\xb4\x36\x1b\x4f\xf3\xd6\x16\xe3\x99\x3e\x43\xbc\xbc\x68\x84\x38\x3d\xc0\x9b\x71\x1a\x2c\x42\xf0\x62\xfc\x46\xbc\xf4\xe7\xf8\x4d\xfe\xd2\x97\xf1\x99\x98\x95\x17\xfa\x1c\x02\x4a\x28\x1e\x1d\x9a\xbf\xb5\x76\x3a\x3a\x0e\x0e\xc4\xbe\xe4\x43\xb1\xc3\x5e\xbc\xfe\xf0\xe9\xc3\xef\x6f\x5f\x00\xbb\x68\x9b\x44\x54\xfc\xce\x8b\x8e\x21\x65\x88\x8f\xe7\xfc\x70\xf0\xc4\x0f\xc1\x51\xf0\x67\x18\xaa\x89\x14\xe2\x83\xb2\x60\xce\x97\x42\x78\xfa\xa2\xab\x8c\xe9\x68\xe5\xf1\x27\xe7\xa9\x53\xaa\xbd\x76\x7f\x3c\xfe\x62\xac\x15\x3a\xeb\xa1\x0a\x3d\x66\x3f\x01\xb4\x57\xd6\xbe\x26\x33\x23\xc0\xd9\xd2\xb2\x58\xcc\x43\xc1\xad\xfe\xf9\xe2\x83\x2f\xbf\xa0\xe8\x10\xca\xd3\xd1\x7a\xb3\x30\xfc\x49\x7e\x4c\x4b\xdc\xcc\xf0\xe9\x17\xb9\x10\xc6\xff\xfd\xfe\xcd\xeb\xa1\x3a\xe2\x92\xc3\x45\xf0\x45\xda\x81\xc2\x51\x55\x9d\x50\x77\xb6\xb6\xd4\x7f\x33\xa3\xd8\xf9\xb9\x2d\x69\xea\xd7\xb3\xbb\x42\xd6\xd6\x1f\xd2\xb7\xee\xa1\x94\x21\x29\xa3\xbd\x1d\x9f\x98\xe7\xef\xbd\xb5\x8c\x6c\x81\x1e\x88\x58\x6a\x59\xa7\x9f\xca\x1e\xcf\x69\x6a\xa1\xe9\xca\xbf\x81\xbf\x95\x83\xe6\xbe\x0d\x47\x35\x0f\x3d\xb5\x1f\xca\xa4\x9f\x5a\x6a\x8d\x5b\x57\x0b\xf8\x92\x6d\xe0\x3e\x39\x41\xf9\xde\xde\x1c\x73\x34\x29\xaa\x85\xf3\xc4\xec\x52\x47\x38\x81\x38\x9b\xd5\x91\x6c\x17\x75\xca\x9c\xdd\xd5\x82\x82\xaa\xbb\x9a\xdd\x25\x12\x72\xe0\xac\xb4\xd9\x72\xa8\xa3\x0f\x6f\x7e\x7e\xf1\xda\xce\xf9\x31\xee\xf1\xa7\xbe\x3f\xca\xff\x0a\x41\x62\x88\x1f\x2e\x43\x99\x26\x98\x31\x16\x33\x92\x80\xe6\xf6\x61\xa7\x59\xd8\x8a\x1c\xab\x18\x86\x21\x38\x23\x33\x84\x8b\xb6\xb9\xa1\xb6\xa5\x06\x48\x9b\xb4\xc3\x25\x98\x22\xc6\x60\xc9\xe2\xad\x0e\x5f\x3d\x62\xbd\xc0\x11\xe6\x54\x16\x33\x54\x1b\xc0\x74\xbe\xe6\x20\x50\x2d\x90\x80\x83\x07\x32\x1b\x4f\x9c\x66\x70\x8c\xf7\x77\x33\x1d\xf2\x53\x6e\x15\x95\x48\xc2\x48\x56\x0e\xcc\xb6\xbb\x20\x50\xe1\xcc\x11\xcd\x38\xf3\x85\x30\xd0\x5d\xa2\x1a\x52\x2c\x5c\xde\x53\xac\x98\xce\xb1\x32\x56\x55\xf3\x9b\x3c\xa4\x81\x79\x81\x14\x71\x0b\x64\x6a\x7f\x19\x07\x48\x05\x61\xaa\x26\xa4\xd9\xb8\x44\x69\x63\x4d\xcd\x28\x0d\x68\x20\x4d\xa0\x70\x78\x88\x84\x5c\x66\x60\x81\xc3\x46\x07\x82\x1d\x1b\x62\x5b\x55\x8b\x32\x37\x0a\x97\x40\x5a\x6c\x2b\x76\x7c\x4d\xed\x00\x55\x0c\xc3\xa1\x72\x62\xe8\x8d\x82\x8a\x1e\x96\xb2\xc9\xbd\x43\x6b\xfa\x1d\x67\x7b\x15\x43\x71\x87\xf6\xf4\x3b\xae\xf6\x0a\x86\xe4\x17\xdd\x0c\xc9\x25\xb1\xad\xdd\xa4\xdc\xcd\xe6\x2b\xdb\x72\xdf\xd2\xbb\xb8\xee\xb6\x5c\x3f\x75\x31\x5d\x99\x56\xca\x6e\xb5\x51\x83\x5c\x88\x51\x83\x75\x31\x6a\x24\x97\x6b\xd4\x60\x57\x63\xd4\xb8\xa1\x00\xb9\xc5\x8a\xdc\xc5\xba\x13\xa1\x10\xd0\xdd\x8a\xe1\x97\x63\x67\xc2\x78\xaa\x9d\x55\x35\xd2\x8a\xf6\xcc\x02\xe5\x72\xcc\x8c\x10\x01\xd2\x92\x25\x40\x52\x86\x0a\x92\x40\xda\x15\x8a\x6e\x3b\xa1\x2f\xdb\x5c\xaa\xe2\xd5\x03\x49\xc0\x81\x2f\x44\x40\xf1\xac\xe0\x53\xe7\xe7\x67\x5a\x39\x4e\xc7\x24\x20\x5a\x87\x16\x42\x85\x2a\xa1\xfe\x1e\xe1\x62\x66\x2c\x1b\x0a\x4e\x2e\x07\x11\x11\x7c\x82\x28\x17\x92\xc7\x99\xf4\x0f\x7a\x52\x9c\x2d\xf2\x1e\xba\x30\x23\x97\xd2\xed\x4c\xc8\x6d\xe2\x6d\xe5\x7e\xe1\x36\x7e\xe1\x12\xb0\xb9\x0c\xcb\x1b\x55\xf3\x76\xb2\x30\xc7\x20\x93\x76\x10\x30\x3c\x76\xc4\x81\x4e\x3e\xc0\xfa\xc7\x07\xf4\x85\xcb\xf0\xe7\x0a\x47\xd5\xc7\x1a\x51\xf4\x4e\xee\x25\x63\x92\xf9\x09\xc8\xa1\xca\x6d\x78\x4a\x46\x82\xfa\x99\x71\x47\x2e\x6a\xc0\x14\x97\x0d\x12\x39\xf4\xe9\x4c\x68\x07\x36\x13\x61\xca\x63\xab\x18\xab\x01\xbe\x50\xfc\x75\xec\xe0\xda\xc3\x2f\xc7\x34\x48\x43\xc0\x96\x80\x75\xc5\x6e\xcc\x98\xc8\xec\x80\x40\x1a\x6f\xa7\x24\x82\xe9\x80\x71\x42\xe1\x51\x39\xdf\xc1\x3c\x54\x0d\x44\xb3\x83\x62\x72\x9c\xcf\xb1\x6f\xae\x97\xbd\x7a\x5b\x5b\x3e\x93\x3f\xca\x37\x32\x23\xfa\x53\x97\x94\xa0\x3d\x1f\x4b\x67\x62\xf5\xd6\x56\xc3\xe7\x0a\x3e\x8c\xf1\x78\x9c\x5d\xbf\x6f\x7e\xe7\x3e\x93\xa7\xa6\x6f\xa3\xec\x83\x61\xc1\x68\xaf\x93\x9f\x2d\xcf\xc2\x77\xf8\xef\xbc\x52\xbe\x98\x8e\xb9\xf4\x29\x58\x9c\x63\x6c\xff\x71\x7e\x7e\x7f\x17\xd0\xa1\x7d\xf6\x8c\xef\xef\x00\x5f\x9e\x1f\x7e\x82\x3d\x19\xb5\x35\x34\x67\xd1\xf8\xfe\x4e\x7d\x68\x26\x15\x5c\x53\x30\xa1\x52\x12\x73\x36\x19\xd0\xf0\x49\x55\xba\x5b\x8d\xf4\xcd\x61\xd9\x17\x9b\x19\x03\x3f\x7d\x92\xf4\xf8\xf4\x69\xcc\x81\x1c\x3f\xe0\x61\x01\xfb\xcd\xe8\x42\xd6\x3a\xac\x71\xe4\xbe\x43\x87\x29\x8a\xf8\xf9\xf9\x7d\xfd\x2b\x9f\x0b\x6d\x64\xbd\xbf\x2b\x98\x7d\xe5\xee\x90\x1d\xc3\x69\xe1\x11\xc7\x0c\xcb\xfc\x0a\xf3\x90\x72\xf5\xea\x41\x3c\x87\x1c\xd5\x7a\xc2\x2a\x1f\x0b\xc4\xe3\x60\xdf\x5e\xda\xe1\x99\xe4\xf4\xf7\x77\xf4\xd1\x92\x07\x44\xec\x2e\x97\x79\x70\x4b\x49\xea\xc3\x80\x8e\x13\x2d\xbf\x70\x13\xd8\x92\x48\x83\x4a\x68\xaf\xc2\x7b\x78\x5c\xed\x04\xcd\xe5\x40\x00\xc3\xa5\xd0\xa6\x3d\x3c\x6e\x09\x20\x27\xea\x06\xb6\x67\xbf\xe0\x76\xbf\xcf\xcf\xcf\x7d\xe5\x8c\xf4\xef\x8f\xc7\x82\x1f\xdb\xbb\x25\xb7\x7d\x3e\x2d\xf9\x8f\x73\x3d\x2f\xcc\x5d\xa7\xef\xd0\x21\xa2\x08\x47\xc6\x7f\x2a\x3e\xee\x1d\x43\x86\xbf\xe2\xde\x01\x42\xd8\x4b\x70\xc2\x13\x98\x26\x0c\xc5\xde\xc0\x53\x11\xdf\x61\xe1\x09\x31\x05\x28\xce\x8b\xeb\xa3\x65\x80\xc2\x11\x77\xfa\xb4\x83\xc4\xbd\x74\x9f\xe6\x72\x83\x75\xd5\x79\x34\xe4\xab\x39\xb3\x67\x14\xdf\x92\x41\x3a\xe2\xff\x36\xc5\xe1\xed\x5e\x04\xd5\x70\x07\x07\xe9\xb3\xb8\x76\x1e\x3a\xbd\xd4\xef\x05\x19\x3d\xf4\x65\x46\x55\xf2\x8b\x72\x2a\xa3\x84\x1f\x23\xea\x1d\x20\x99\x45\xe0\x11\xea\xc1\x6c\x3d\xfa\x82\x03\x64\xeb\xdf\x10\x51\x97\x83\xe6\x5b\x5b\x96\x9b\x18\x9c\x59\x0b\x73\xa4\xc7\x87\x6c\x31\xa8\x2c\x22\x49\x03\xf8\xd6\x96\x3a\x64\x96\x61\x90\x02\x14\x66\xa8\xa8\x04\x24\x63\x16\xa4\xe1\x3d\xdb\x4f\x9f\xc9\xf9\x95\x7d\x93\x45\xc8\x06\xc8\x66\x9c\x3c\x74\x53\x62\x0f\x62\x4c\xb8\x5c\x43\x1e\xf4\xa2\x14\x32\xe6\x41\x56\x18\xf8\x52\xed\x88\x34\x04\x01\x1e\x27\x6a\xc7\xcb\x2b\x28\x0c\x87\x9f\xa2\x83\x31\x07\x38\x0b\xd1\x1f\xa7\xe2\xa9\xfd\xb3\xcf\x68\x31\xf2\x09\xde\x4b\x93\xe8\xb3\x0f\x14\x0d\x2a\xa1\x3f\x9f\xa2\x03\x15\x4e\x24\xa4\x93\x00\xc9\xf0\x9f\x23\xc8\xd1\x07\xa9\x05\x9f\x9f\xa3\x61\x34\xa7\x14\x61\xae\x2e\x98\xc8\x2f\x34\x4d\x78\xe0\x6b\x61\xc4\x07\x67\xcb\x70\xb9\x9c\x84\x5b\x5b\x34\xb0\x67\x01\x87\x80\xc8\x6b\x80\x84\x20\x5d\x06\xb9\x58\x58\x2b\x13\x6a\x4e\x3d\x3a\x4d\x70\x4c\x4e\x87\x92\x7d\xbf\x57\xd7\x80\x1c\x50\xce\xb5\x41\x25\xa0\xdb\x69\xd0\x12\xd4\x96\x78\xff\x45\x85\x5f\x7f\x48\x6c\xc2\x97\x1c\x4d\x03\xa9\xa7\x01\x14\x56\x70\x4b\xba\xcb\x1a\x84\x75\x16\x30\x2e\x39\xd2\x3d\x3f\x3b\x04\x35\x78\x2e\x33\xf7\x8d\x6c\x27\x31\x1a\x4c\x13\xa9\x0a\x17\x86\x9a\x9c\x2c\x06\xe2\xa6\xba\xe7\x7e\xe1\xba\x26\x72\xb8\xab\x3c\x55\xfa\xbf\x9d\xaa\x42\x27\x8d\xa6\x08\x14\x27\x5c\x3f\x7a\x71\x93\xbe\x7f\x86\xe1\x14\x8d\x7c\xa1\x2e\xf8\x60\x9a\x88\xdf\x65\x03\xb0\x0f\xa6\x24\x46\x23\xff\x4f\x78\x02\x95\xe6\x29\xf6\x0b\x1f\xed\x2b\x83\x3a\xf0\xa7\x70\xe6\x4f\x00\x4c\x13\xc8\xf4\xc5\xc7\xfe\x64\x09\x74\xd3\x3f\xed\xbd\x32\x2d\xcb\xb0\xc6\x2f\x03\x3a\x3f\x58\x98\x46\xd5\x6f\xd5\x1c\x3d\xb0\x9b\x51\x77\xfc\x29\x8c\xf4\x2f\x0a\x3f\x23\xf1\x9f\x03\xf9\x7f\x5f\xac\x4f\xfc\xfe\xec\x97\xf2\x37\x16\x70\x9a\x9a\x6f\xa8\xdf\xea\x1b\xea\xb7\xbf\x98\xa6\xd6\xb7\xe4\x5f\xcb\x09\x58\x35\x20\x7c\x2a\x13\x40\x1d\x6a\xc7\x12\x88\xe9\x5b\x29\x4d\x44\x2c\xb8\x17\x72\x09\xd4\x5a\x05\x63\x32\x1d\xa2\x14\xc9\x78\x62\x39\x6e\x48\x11\xf4\xfe\xe6\xc5\xc9\x89\x0f\x50\x38\xdc\x23\x31\xfa\x45\x2e\xb8\x7e\x01\x98\x2a\x48\x3d\xc1\x9f\xb7\xe5\xf9\x1b\x91\xb4\x0a\x85\xdb\x90\x7a\x62\xc7\x34\x76\x8b\xb9\x43\x35\x79\x21\x77\xb1\x8f\xdd\x62\x1f\xef\x12\x6a\x3a\x27\xd4\x14\xe9\x75\x03\xc2\x1e\x6f\x51\x5e\x4d\x9f\x70\x09\x8d\x60\xdc\x9e\x12\x93\x83\x1d\x87\xe0\x73\x5d\x5e\x8e\xf5\xfc\xe7\x13\x19\xb8\x21\x15\x85\xf6\xa7\x4d\x3a\x7d\x08\x66\x14\xcd\x20\xad\xe2\x7e\x69\xda\x65\xb5\x45\x2c\x03\x31\x96\x59\xc1\x33\x44\x59\x52\xb0\x3e\xda\x56\xd9\xe3\x84\xed\x0b\x61\x59\x47\x02\x6c\xfb\x21\x78\x14\xee\x3f\x9c\x4c\x86\xfa\xbd\x00\x4b\x0b\xe6\x94\x9c\xa0\xde\x4d\xe8\xb0\x8f\x72\x6e\xed\x2a\xe7\x7f\xad\xf1\x6b\x73\xd5\x54\xad\x15\xc4\xd7\x5e\x41\xae\xe9\x32\xce\x84\x95\x0b\xae\xd9\x69\xe9\x63\xb9\x01\x25\x24\x2c\x7f\x6a\x56\x52\xc7\xf9\xe7\x99\x39\x04\x40\xc0\xc6\xc8\xc2\x2f\x2d\x60\x97\x2a\x36\x9f\xf9\xac\xcd\x8a\x08\xe0\x98\x83\x80\x8e\x59\x98\xe0\x00\x8f\xcf\x96\x61\x8d\x59\x5f\x7c\x60\xa5\x62\x1e\x58\x7a\x64\x01\x0e\x5d\x6b\x2f\xc7\x66\xee\xd6\x6d\x9d\x06\x52\x86\x61\xe0\x9d\x57\xa1\x03\x62\xe6\x4e\xfc\xb8\x13\x3f\xee\xc4\x8f\x3b\xf1\xa3\x2b\x74\xf7\x60\x57\x46\xe4\x64\x51\x55\xa3\xed\x6d\x85\x26\x3c\xd6\x47\x8f\xb8\x60\xe2\xa4\x50\x28\x5a\x36\x87\x9b\x78\x72\x09\x60\x0d\x47\xd2\x6f\x37\x65\xfb\x3a\x14\xa9\xd6\xd0\xd1\x76\x16\xec\x64\x71\x18\x40\x0d\xf4\x3e\xe6\x01\x0d\x50\x08\x1e\x84\x80\x8c\xd9\xfe\xce\x04\x24\x63\x66\xc5\xe0\x48\xa9\x81\x4c\x86\xba\x91\x20\x91\xef\xd6\x49\x2b\x3a\x05\x35\x6b\x92\x8d\xa1\x68\x92\x8c\x61\xb9\x49\x96\x0b\x2e\x04\xd4\x8a\x2e\xbd\xda\xd3\x52\x0c\xa9\x60\x84\xd4\x43\xf8\xd9\x1c\x44\x25\x5b\x77\xd6\x64\x25\x6f\xbb\x57\x5c\xf3\x97\xe7\x46\xb7\x1d\x69\x6b\xb3\xb1\xeb\x86\xdf\x00\x57\x4f\xc7\x5a\x21\x11\xcb\x3e\xef\xed\x5c\xac\x8e\xe7\xfd\x4a\x59\x59\xc5\x91\xae\x8c\xdf\x70\x2d\x4e\x7b\x78\x33\x4e\x7b\xe6\x3e\x98\x03\x1c\xf0\xf1\x99\x38\x01\x22\x84\x65\xd4\x44\xab\xae\x17\x47\x7e\x08\xb0\x34\xe5\xb5\x3e\x2b\x8b\x4f\xa8\xa7\x3b\x3f\x7c\x04\x39\x3a\x85\x8b\x0e\xad\x5b\xc8\x10\xfa\x2c\x5b\xe1\x9d\x1e\xaf\x2c\x81\x5f\xc5\x3a\xed\xfa\x7a\xfe\x4a\x18\x02\x1c\xf0\x6a\x5b\x6c\x9d\xc6\x66\x94\x7c\x49\x3a\x35\xa1\x70\x0b\xed\xf7\x16\x7d\x86\x53\x7c\xbd\x52\x7f\xb0\x7d\xf9\x94\xde\x30\x2d\xe5\xc5\x3a\xbb\x0c\xc2\x2a\xed\x99\x93\x53\xda\x20\xba\x51\x51\x9b\x2b\xf4\xab\xd8\xa0\x14\x76\x79\x59\x17\xa4\x30\xef\x66\x86\x95\x2e\xef\x5a\x56\x98\xf2\xeb\x2b\xbd\xfd\xf9\xa4\xc3\x6b\x9f\x4f\xb2\xe7\x35\xd0\x5e\x3b\x80\x8a\x0a\xf5\x36\x6b\x44\x03\xa3\x75\x59\x1d\x0a\x32\xbb\xf0\xe6\xa2\xff\x7b\x94\xa4\x9d\x3e\x27\x51\x97\xcd\x4b\x24\x89\xa3\x0e\xef\x14\x4b\x14\x64\x94\x59\xcc\x6a\x57\x7f\xbd\x80\xb4\x7d\x90\x92\xe8\xb3\x60\xe3\xd9\x2a\x54\x78\x33\x65\x47\x94\xb2\x63\xc8\x3a\xc4\x63\x5a\x30\x42\xc9\x74\x3a\x55\x91\xa9\x90\xf1\x17\x82\x64\x4c\xf6\x77\x27\x20\x1d\x93\xfd\x07\x13\x99\x73\xf3\xd0\xce\xb9\x79\x64\x72\x6e\xf6\xe7\x13\x53\xfb\xd4\x38\xe7\x5f\x9c\x20\x5c\x08\xac\x59\x0b\xb2\xe4\x6c\x09\xf8\xf8\x4c\x50\x68\xe4\xeb\x60\x78\x5f\xe5\xbe\xa0\x25\xc0\xc5\x7c\x48\x19\x67\x3e\x45\x1c\xfa\xa1\x2c\x45\x5d\xc8\x77\x91\x90\xc6\xb2\x48\xf1\xd6\x56\x3c\xa4\x48\x28\x12\x49\x8a\x02\x1c\xca\x22\xf6\xba\x70\xab\xc5\x8d\xfc\x91\xbc\x62\xed\xcf\x11\x76\xc5\xb8\xc7\x32\x51\xe1\x99\x14\x88\x96\xf7\x0e\x28\x82\x9f\x75\x6e\x9e\x66\x0c\xa6\x21\xc1\xb6\xf4\x6f\xb5\xc6\xd4\xef\x6c\x85\xb7\x34\xff\xc3\xe2\x79\xd6\xb9\x20\x05\x09\x28\x7d\xce\x3a\x0c\x46\x82\xe4\xd3\x31\x0d\xa2\xd0\xcc\x0e\x54\x89\x4e\xcc\x4e\x74\x82\x7a\xd0\x87\x84\x0e\x0c\xa3\x69\xea\xc4\x0f\x0b\xcd\xc1\x03\x06\x8a\x1d\x30\x09\x86\xfd\x47\xb0\xac\x12\xcc\x62\x4a\x72\x20\x87\xa5\x81\x1c\xaa\x81\x1c\x6e\x74\x20\x76\x3f\x6c\x76\x20\x7b\x30\x2b\xf5\x60\xa6\x7a\x30\x73\xf7\x40\xca\x12\xad\xa4\x78\x4d\x62\xf5\xf9\xd2\xc7\x0d\x33\x95\x1f\x3e\x2e\x7d\xf8\x58\x7d\xf8\x78\xf5\xa1\xcb\x6f\xcb\x9c\x1a\xe7\xd0\x8d\x00\xa4\x3e\x7f\x50\xfa\xfc\x81\xfa\xfc\xc1\xea\x9f\xff\xa7\x6a\xbf\xa9\x0b\x19\x2f\x1d\xa9\xfc\xe4\x62\x17\x4e\x54\x17\x4e\x56\x24\xbd\x45\xf7\xca\x87\x15\xe3\xb1\xdf\xb6\x5e\x66\x28\x3d\x0c\x22\x79\x26\x16\xb7\x5d\x59\xa6\xc8\x37\x7b\xdb\x12\x14\x14\x88\xc4\x70\x1c\x9b\xb9\x22\x6b\x75\x6d\x4b\x76\x31\x12\x87\xb6\xa3\xd5\x92\xc0\xd5\xd4\xe6\x4b\xfd\x50\xf7\xb6\x15\x17\x55\xc3\xff\x7c\xa2\x7f\xe4\x62\xc3\x08\x8f\x03\x36\x16\xed\x84\xae\xe8\xd8\xc2\x48\xb2\xe9\x71\xb8\xe5\xcb\x28\x59\xb1\x89\x09\x3b\xcb\x0f\x97\x51\x6a\xe1\x44\x27\xcb\xb0\xd8\x53\xc9\xab\xe5\xe2\x5a\x94\x16\xd7\x42\x2d\xae\x45\x75\x71\x19\x9e\xbd\xf6\x29\x9d\x31\xff\x9a\x75\x66\x53\x41\xaf\x8d\x62\x03\xd0\x94\xb7\xa9\xed\x49\xf6\x84\x6a\x81\x89\x59\x63\xd6\xac\x65\xd6\x61\x15\x09\x26\x14\x7b\x25\x39\x28\x6f\x48\x28\xc3\xdf\x7b\xe0\xbc\x76\x11\x51\x1a\xc3\x68\x62\x32\x2d\x22\xe6\x01\xd7\x67\x32\xcf\x91\xf3\x6e\x01\x91\xaa\xf2\x85\x29\x5c\x1c\xa0\x41\x04\xeb\xca\x80\x6e\x0e\xa7\xb9\xc6\x04\x29\x7b\xd7\x9c\xba\xde\xcd\xea\x68\xf9\xcf\x14\xb1\x6c\xb3\x9d\xce\x2a\x22\x95\x88\x38\x3e\xfc\x41\xcf\x84\x94\xce\xde\xab\xe9\xb6\x32\x5c\xcc\xab\xc9\x58\x47\xed\x0f\x0f\x12\x1c\x07\x59\x94\x6e\x11\xda\xc1\x91\x74\xc7\x87\xd1\x9c\x32\x42\x35\x35\x96\x21\x90\x69\x22\xc9\xe1\x6b\xc2\xcd\xb7\xc3\x80\x64\x2e\xa7\x30\x0c\x2a\xd9\x9c\x56\xfa\x1f\x37\x37\x0b\xdf\x4d\x5a\x1b\x75\x65\x88\x96\xc5\x40\xab\x86\x9d\x10\x13\x81\x2f\x44\x46\xdd\x7d\x3f\xdc\xda\x4a\x02\x55\xf0\x6d\xa8\xdc\x32\x12\xfb\xc2\x85\xda\x21\xbe\xac\xe6\xce\x14\x0c\x2a\x67\xbf\xad\xb1\x73\x66\xea\x98\xeb\xb9\x71\x2e\x39\xf2\xb0\xba\x02\x33\x2b\xac\x4c\x0b\x22\x38\x42\xa1\xc2\x90\xee\x15\x78\xe8\xa6\x4b\x53\x72\xc7\x35\x23\x8c\x50\xf9\x56\xd9\xc0\x05\xe8\x71\x00\x1b\xfc\xb7\x6a\x57\xeb\x58\x59\xf7\xa6\xb6\xaa\x99\x89\xfe\xd8\xac\x05\x8a\xd5\x2a\x43\x86\x11\x98\xd3\x64\x84\x87\x73\x9a\x2c\xd7\x98\xa5\x96\x12\x23\xb5\xe7\xfc\x14\xa3\x29\xc1\x09\xe3\xdb\xd3\x79\xca\x93\x81\x8a\x53\x6c\xac\xdc\xd7\xd7\xe6\x4e\x2e\x11\x36\x99\xdd\x54\x24\x3a\x78\xe7\x94\xbf\x7c\xa7\x3c\xbb\xe1\xce\x66\xd6\x19\xe5\x8f\xdc\x62\x94\x3f\x52\x83\xf2\x47\x6e\x86\x73\x26\x91\x89\xdb\x20\x55\xff\x99\xab\xff\x44\x2b\xc3\x6e\x37\x15\x93\xd7\x77\x15\x08\x54\x9b\x4b\xde\xe9\x13\xee\xe8\x94\x6f\x96\x1c\x56\x81\x7a\x4a\xe4\xac\xfc\x02\x67\x82\x50\xfa\xd7\x5c\xfe\xca\x52\xa1\x83\xf7\x88\x77\xc5\x84\xa2\x88\x21\xbe\x07\xa3\xe3\x42\xc2\x6c\xf6\x91\xfe\xa0\x51\x69\x5d\xfd\x27\x93\x82\x2b\x6d\xba\x85\x99\x1e\x46\x29\x82\x34\x08\xf5\x9c\x2f\xab\xe2\x88\x0d\xc1\x0c\xe8\x18\x05\x1a\xbe\x59\x55\xf0\x9f\xd3\xe4\x03\x3c\x0a\xc2\x56\x18\x94\x2c\xde\xe1\x6c\x09\xc8\x18\xab\x7c\x69\x0a\x18\xb8\xbf\x13\xde\x23\x79\x06\xa9\x78\x7c\x48\xd1\xe1\x98\x99\x85\x59\x86\x4d\x21\xe0\xac\x02\x88\x82\xc3\x33\x29\xb0\xab\x44\x74\x69\xe1\x08\x03\xac\x71\x3d\x00\x56\x18\x3e\x4e\x24\x11\xf1\x1a\xd6\x04\x22\x80\x85\x00\xe6\xc0\x21\x4b\x83\xf6\x7c\x7f\x3c\x26\x42\x57\xd8\x53\x79\x51\x52\xd2\x0a\xc2\xad\x2d\x32\x8c\x13\x36\x13\x2c\x42\x5d\x72\x3c\xa4\xd0\x43\xe6\xf8\x94\xc2\x99\x33\xc8\x11\x0d\x3f\x29\x9a\x1b\x0a\xce\x85\x26\xa3\x92\xab\xe7\x59\x64\xa8\xe8\x63\x99\x44\x21\xc8\x4a\xe4\x54\xee\x01\xbc\x04\x25\x70\x19\x2b\x9a\xb1\x7b\x64\xe5\xd6\x96\xfd\x97\x1d\x36\x70\xbf\x72\xbe\x2b\xf8\x2d\x39\x52\xf9\xb5\xef\xfa\x06\xf3\x68\xed\xb9\x18\xd2\x03\xc8\x18\x06\x0c\x3c\x08\x41\xa4\x40\xbf\x62\xe5\x95\x98\x2a\xd7\x43\x24\x3b\x95\x0e\x8f\xa1\x10\xbb\x42\x3c\x4e\x95\x52\x27\x76\x43\x86\x6b\x0d\x52\x49\x53\x21\x5a\xe7\xe8\x4e\x87\xe3\xb3\xe5\xbd\x44\xbf\xb8\xb5\x15\x1c\x8e\x13\xfd\x6a\x08\x0e\xc5\xc2\x1e\x23\x80\xc7\x53\x63\x16\x89\xc1\xa1\xea\xe0\x6c\xec\xc2\xac\xc7\xe0\xac\x84\x31\x63\x95\xbd\xd7\xeb\x90\x8e\x71\x75\x81\x00\x38\x2e\xcf\x9f\xd2\x42\xef\xd9\xf8\xdf\xf9\xe4\x6c\x6d\x25\x7a\x30\x67\x91\xd5\xd0\x88\x02\xf5\xda\x08\x2e\xc5\xc2\x11\xc3\xc2\xe1\xf9\xb9\x4d\x85\x99\xca\xc2\xcf\x89\xa1\x85\x91\xe0\x7e\xfe\xbc\x58\x3d\x30\x5e\xbc\xe7\x90\xa3\x7f\xec\x9e\x9f\xd3\x70\x6b\x4b\xef\x56\xd1\x6c\xb6\x34\x71\x15\x53\x47\x2c\x30\xb4\xb5\x15\x64\xab\x16\xa9\x35\xac\x28\x7c\x7e\x1e\x64\x07\x11\x78\x20\x17\x46\xfe\xa5\xad\xad\xbc\x9f\x25\x62\xcc\x69\x12\x66\x08\x3e\xb1\xc3\x16\x48\x83\x34\x43\x3e\x0a\x43\x67\xe1\x3c\x15\x07\x2b\xc4\xdb\x07\xe1\x3d\xbe\xbf\x93\x87\x2e\xed\xef\x4e\x0a\x03\x16\x1a\x7f\x2d\xbc\xe4\xfe\xce\xa4\x92\x2a\x18\x75\xd2\x8f\xa4\x4c\x52\x4a\x15\xc4\x47\x14\xce\x8e\x87\xf2\xff\x2f\x5b\x35\x95\x1f\xad\xd2\xb2\x04\xe3\xd1\x53\x13\x24\xd3\x76\xcd\xef\xdf\x0c\x0e\x0e\xa1\x90\xcf\x16\x35\x4f\xb0\xe4\x20\x95\xc6\x42\xe7\x5d\xb9\x0a\x9c\x88\x3d\xe2\x6e\xc2\x06\x64\xce\x59\x12\xa3\x9a\x07\x8e\x10\x1f\x44\xc6\xc3\xd9\xd2\x11\x4c\xe8\x14\xa6\xc9\x7f\xd0\x40\xaa\xab\x75\x1d\x52\x18\x44\xd9\x61\x50\xdb\xef\x24\xfa\x3c\x90\x20\xad\x03\x88\xa3\xe3\x3a\x5c\x21\xc0\x00\x01\x09\x48\x2d\x6d\x77\xde\x5f\xdb\x8d\x6e\x40\x91\xa0\xe8\x2f\x13\x64\x16\xdd\xec\x22\x41\xd1\xcd\x50\x61\x62\x30\x05\x87\xe3\xd2\x09\x06\x66\xe2\x4a\x9a\x5f\xc9\x01\x8c\xc1\x71\xad\x7a\x13\x8d\x4c\xf9\x17\x70\x9a\x60\x9d\x97\xbe\x82\xbe\x30\x95\x24\xf8\x0d\xc1\xcf\x42\x53\x88\x4b\x20\xcb\x99\x05\xfa\xcd\x29\x46\x54\x81\x6b\xb4\x21\xc5\xb6\x7c\x4d\x42\x82\x6a\x41\xde\x0c\xc1\x95\xd4\xaa\xd4\x91\x68\x09\x4e\x12\x74\x3a\x2b\x81\xd2\xd9\x0f\x9d\x26\x78\x09\x8e\xe6\x49\xec\xca\x6d\xd5\x03\x98\x27\xf1\x8f\x84\x2a\xec\x23\x71\xca\xfd\x28\x0e\xb9\x67\xf2\x8c\x1b\xcd\x80\x3e\xb0\x47\x79\xa5\x4a\x7d\xc0\x8f\x32\x9d\x09\x24\xec\x8d\x3a\xb5\x47\x79\x15\xcb\xec\xf4\x55\xd2\x0d\xc9\x5f\x47\x4a\xe0\x51\xe0\x04\x66\xb9\xd4\x14\x6f\x34\xd0\x7e\x25\xed\xe4\x8b\x58\x5e\x67\x85\x4c\x71\x79\xf2\x66\x25\x76\xd5\x5b\x62\xe7\xb3\xa7\xf9\x3b\xb4\xfa\x4e\x46\x0c\xa6\xf2\x8b\x32\x30\xc1\x7d\x3e\x09\x47\x74\x9f\x4d\x96\xcb\x70\x64\x40\x52\x8e\x90\xc9\x23\xd6\x57\x8a\x90\x79\x4b\xf7\xe0\x12\xc4\x6a\x34\x87\xae\x83\xd3\x05\x4d\x2a\x83\x83\xd6\xe0\x70\xf5\x9d\x2a\x58\x2c\xdf\x87\x93\xa7\xe2\xff\x72\xd0\xc4\x11\xde\x87\xfd\x06\x99\xf1\xca\x51\x92\xcd\x2a\x25\xa4\x69\xa5\x66\xf5\x98\x5e\xa8\x34\xea\x25\xd0\xf9\xd4\x3f\x2c\x5e\x3a\xd7\x66\xf6\xe2\x11\x32\xef\x88\x47\xe5\x2a\xd5\xaf\xb2\x1f\x16\x1f\xe0\x91\xac\x4b\x5a\xa4\xae\x96\x85\xcc\xe9\x22\x27\xd6\xb4\x37\xe2\xa1\xd5\x64\xde\x44\xa1\x61\x77\x59\xd2\x43\x5d\x7d\x54\x3f\xe5\x7c\xc8\xff\x3f\xaa\x80\x10\x9b\x1f\x30\x4e\x83\x1d\xb0\x1b\xaa\x4f\x23\x7b\x0c\xe6\xf6\x6e\x18\x8e\xe6\x81\x6a\x37\x14\xc2\x29\xc8\x64\x1b\x77\x17\x62\x87\xf6\xf6\x14\x8d\xec\x2f\xa8\xc6\xac\x96\x6a\x46\x33\x0f\xec\xb7\x94\x11\xb0\x5e\x74\x8e\x55\x09\xa9\x86\xaa\xd6\xba\x84\x2c\x92\xea\x72\xc2\x5e\xe2\x5f\x2b\x47\xd3\xfa\x99\x81\x3b\xf7\xa6\x5a\xf7\xc9\xd2\x99\xc4\x06\x78\x29\x43\xbd\x14\xac\xe5\x9b\x03\x21\xd0\x96\xfb\x88\xaa\x23\x53\x3a\xc5\x54\xa9\x8c\x66\x33\xdc\x73\xa0\x3b\xf1\xad\x2d\xf1\x84\x18\x93\xf9\x0c\x3e\xd2\xbe\xc2\x33\xb1\xee\x7f\x81\xf4\x28\xc1\x23\x7f\x67\xf6\xc5\x07\xfc\x98\x22\x76\x4c\xd2\x78\x84\x73\xc0\x34\x3a\x24\xaa\x5b\x42\x8b\xb3\x77\xc9\x70\x8e\xad\x3b\xd3\xad\xad\xa9\xa5\xee\xd1\xa1\x0c\x4b\x91\x80\x9d\xb2\x60\x96\x64\x0c\x45\xa1\xfe\xb8\x45\xa8\x37\xd6\xba\xf6\xc2\xa6\xdd\x0a\x7e\x6e\xb2\xbe\xb5\x9b\x7d\xcf\x69\x92\xc5\x30\x8e\x1c\x45\x0a\x44\x67\x57\x03\x7a\x10\xe3\x71\x81\x47\xb4\xbf\x39\xa7\xc9\x7f\x93\x04\xd7\x1d\x70\x7f\x92\xc4\x48\x00\x43\xbb\xfb\xc0\xdf\xf6\x81\xef\x87\x8d\x0d\x7f\x80\x47\x75\xed\x72\x78\x94\x35\x2a\xbe\xaf\xdc\xf9\x46\xd0\x50\x5f\x75\xe4\x8b\x56\x36\xd7\xae\x73\x73\xed\xda\x9b\x6b\x77\x32\xf2\x7d\xb0\xf2\xc6\xf4\xfd\x0a\xa2\x92\xc5\x7f\x02\x78\x7e\xae\x31\xa7\x8d\xa8\x29\x4e\x92\x34\x10\x47\x4e\x05\xdc\x98\x17\x98\x9d\x9f\x17\x4b\xc8\xab\x1c\x64\x36\xa7\x40\x70\xe8\xf3\x73\x2c\x37\xa3\xef\x87\xcb\x25\xe0\x36\x3d\xdd\x95\x38\x36\x0f\x7e\x9f\x85\x3c\x50\x59\x05\xbd\x57\x16\x38\xc2\x27\x75\xdb\x53\xdc\xba\x6c\x1c\x22\x7c\xe2\x20\x9f\x14\xcb\x11\x3e\x91\x00\x65\xe0\x04\xba\xb0\x52\x0a\xcf\xf4\xb2\x3c\x1c\x22\x14\x1f\xc0\xe8\x73\xf3\x29\x25\x34\x49\xa1\x19\xe9\x52\x7c\x4d\xf8\x8f\xb7\x18\xcf\x97\xf6\xc1\xf3\xa5\x5d\xf1\x7c\xb1\xc1\xce\xa5\x0d\x78\xbe\xd2\xbd\x0c\xe8\x65\xe0\xf9\xd2\x30\x1c\x59\x7d\xda\x38\x9e\x2f\xad\xc7\xf3\x85\x37\x11\xcf\x97\x39\x71\xdb\x97\x80\xd4\xec\x72\x4c\x78\x72\xb8\xa8\x71\xbf\x1d\xa6\x90\x1d\xff\xa2\x5c\x34\xcc\x0f\x41\x4a\x8e\x8e\x6a\xdd\x81\xea\xa6\x1f\x3a\x90\xdd\xac\x04\x54\xa1\xea\x92\x55\x99\x0b\x03\x49\xf5\xd5\x87\xd6\x33\x0f\x27\xda\x71\x7b\x2f\x43\x87\x08\x12\xe0\x27\xec\x15\x81\xb1\xb4\x45\xde\xdf\x09\x73\xdc\x63\xcb\xc0\x80\x43\x30\x2f\x5d\x22\x21\x88\x94\x87\x40\x11\x29\x3f\xdb\x5d\x61\x69\xf7\x77\xef\x8f\xc7\x68\x6b\x2b\x88\x94\x27\xce\x90\x2d\x08\x41\x24\xfd\x0a\x34\xa0\xc1\xd9\x12\x9c\xf1\x64\x8a\xc8\x9c\x8f\xbe\x46\x0f\x81\x9a\x05\x14\x7f\xd0\xd7\x1e\xee\xec\x2c\x15\x3c\xb1\x4c\x91\x98\xe7\x28\x7d\x21\x80\xf2\x53\xa3\x34\x08\x41\xc2\xd1\x74\x24\x4f\x0a\x2b\xae\xcd\xee\x4c\xb5\x0f\x70\xa8\xe6\x67\xa8\x67\x47\x88\x95\xfe\x07\x0a\x31\x4b\xc4\x4b\xcf\x0e\x08\xe5\x32\xc0\x63\x8c\xa4\x9d\xed\xe9\xa6\x3b\x2d\x0e\x8a\x75\xda\x54\x10\xee\x00\x15\x08\xa1\xbc\x80\x48\x41\xfb\x0f\x75\x98\x46\x21\x66\xaa\x76\x1d\xec\x56\xc1\x02\x49\x1b\x77\x92\x87\x7c\x1d\x6f\x52\x77\xb7\x67\x14\xc5\x49\x04\xb9\x0c\x71\xd5\x51\x54\x5d\x9e\xb2\x12\xe7\x1a\x1f\x97\xa1\xe8\xcd\x8f\x58\x89\x60\x8d\xcf\xe9\x14\xae\xc6\x67\x74\x1c\x78\xad\x89\x7b\x53\x52\x48\x32\x3e\x33\x59\x94\x65\xcb\x9f\xbe\x6e\x42\xd8\x47\x45\xc0\x72\x9d\x12\x5a\x2c\x69\x66\xe3\x19\x95\xcb\x98\xc9\x51\x8f\x8a\x16\xbc\x10\xa8\x71\x8a\xcb\xc4\xf6\x9b\x80\xb4\xe6\xdc\xcc\x48\xe4\x12\x31\x93\x7d\x34\x29\x2e\xad\xb4\x6d\x69\x89\x93\x76\x30\x35\x47\x6d\x61\x89\x21\xd1\x81\x41\x94\x26\x03\xf9\x54\xed\x4b\xd7\x15\xa2\xb1\x71\xdc\x84\xb6\xf8\x9a\xc4\x13\xdb\x07\xf3\x24\x15\xca\xeb\x85\x89\xc0\xe5\x35\x57\xa7\x93\x52\x92\x76\x48\xf3\x55\xb9\x84\x66\x4d\x75\xce\x58\x5c\xb5\x66\x99\x20\x11\x1b\xef\x4f\x96\x40\xd2\xc9\x6d\xe6\xc1\xf5\xba\xa7\x78\xdf\xfe\x6c\x3f\xad\xe5\x18\xc1\x78\x10\x43\x0e\xeb\x56\xad\x78\xc0\xf5\xf8\x4d\x5c\xaf\x29\xfc\xcf\x62\xa0\xf2\x96\xaf\x0c\x91\xeb\x98\xcc\xd3\x58\x9a\x7a\xab\x63\xb9\xbf\xbb\xac\xac\xa2\x4a\x8d\xfe\x86\x05\x75\x2f\x87\xe0\x1d\xea\x82\xe7\xc0\xca\x4b\xc1\xe1\x99\xcb\x2e\xb6\x8f\x65\xc1\xb1\xa1\xd5\xb5\x40\x48\xce\x4f\xd1\x3e\x9e\x34\xe4\x8e\x82\x2c\x32\x5a\x99\x20\xb5\x68\x22\x5e\xbd\x57\x36\x58\x43\x29\x73\x3d\x85\x65\xd1\x8b\x5b\xd3\xa8\x86\x44\x15\x10\xf0\x08\xd6\xd4\xdb\x1b\x39\x10\xaf\x91\x1e\x42\xa9\xbf\x59\x70\x01\x9e\x38\x8a\x5c\xc9\x4c\xa4\xac\xc6\x96\xd0\x0e\x78\x88\x03\xda\x13\x75\x4b\xcb\xcd\x57\xb5\x9c\x2a\xd2\x7a\x79\xff\xb7\xf5\x7f\x06\x8f\xd0\x80\x27\x3c\x55\xbe\x73\xd7\x29\x90\x3f\x52\xff\xda\x4d\x3c\x0d\x66\x64\x36\x2f\x55\xcc\xe7\x84\x26\x95\x27\x6e\xe2\xd8\x72\xfe\x74\x65\x4b\xf3\x08\xf1\x5f\x48\x8c\xd2\xa2\x67\x27\x3c\x93\x48\xbd\x6f\x69\x32\x85\x74\xf1\x33\x5a\x54\x6e\xbd\x4f\xe7\x47\x95\xeb\x8c\x13\x5a\xc7\xba\xe5\x3d\x3f\x04\x59\x1a\xb9\xfb\xf8\x04\x0e\x8b\x6a\xd7\xb4\xf7\x7b\x59\x01\x83\xfb\xe3\xb1\xac\xa1\x96\xc5\x63\xfa\xbe\xbc\xa4\xc0\x20\xd4\x11\x2d\x3b\x34\x9c\x21\xf4\xf9\x99\x06\x8b\x1f\xda\xc4\x08\x9c\x76\x10\x2a\x83\x36\xf2\x74\x28\x0a\xfc\x3c\x79\xd1\x0f\xc7\xf2\xbb\x91\x7c\x08\x87\xe5\x27\xb3\x04\x4b\x3f\x54\xbd\x31\x7f\xdb\x21\xfc\x70\x5c\x78\xe7\xfd\x02\x47\x42\x61\xf3\xc3\x7b\x74\x98\xb0\xe7\xd2\x5f\x11\x9f\x9f\x67\xde\x36\x78\x7e\x0e\xcd\x68\xcf\xcf\x91\x1e\xd6\x1c\xa7\x04\xc6\xef\x50\x44\x68\xac\x4e\xcb\x70\xb9\x04\x62\xb0\x6f\x70\x7d\x41\xb6\x9c\x24\xfa\x4d\x07\x55\xc4\xc1\x0f\x1c\x99\x9b\x9b\xc5\xa4\x04\x74\x7c\x16\x47\x23\x04\x30\x1b\xf1\x65\x85\x51\x99\xa8\x3f\x59\x2f\x45\x46\x4c\x66\x97\x80\x0c\xb3\x1d\xab\x50\x38\x60\x0d\xeb\xdf\x73\x44\x17\xce\x11\x51\x3d\x22\x95\xe9\x53\xe3\x1c\xaf\xda\x44\x9c\x43\x79\x38\x29\x9a\x4a\xce\x96\x00\xca\xa1\x70\x31\x14\x0c\x92\x78\x84\xaa\xe3\xa1\xf9\x78\xa0\x1e\x8f\xb9\x04\xa0\x1c\x0f\x75\x8f\xa7\x61\x9e\x60\xb8\x04\x2a\xde\xaa\x65\xbe\xd5\x43\x2d\x33\x5e\x45\x50\xb3\xaa\x6d\x30\x78\x82\x82\x26\x50\x4d\x55\xae\x64\x8c\x2a\xf8\x12\xe2\xac\x92\xd1\x1b\xea\xf3\x3a\x20\x49\xac\x7d\x19\x97\xee\x87\x21\x30\x75\x4c\xb2\x34\x44\x5d\xc1\x03\xcb\xd4\x94\x71\xf7\x85\x8b\xf7\xcd\xd5\xfc\x5c\x0b\xc2\x89\x34\x05\x17\x7a\xe1\xb4\x3d\x65\xa7\xbb\x63\x83\xa9\xa2\x08\x20\x51\xe1\x48\xb0\xc8\xe9\xad\x0e\xaa\x97\xea\x8e\x9b\x7e\x22\x81\xa5\xdb\xc0\x28\xad\xd3\xef\x9c\xac\xc6\xba\x3f\x15\xdf\x67\xb2\x85\x0b\xf4\x3d\xe6\xee\xc2\x36\xb6\xa3\xfd\x50\xa2\x3f\x0d\x1c\x28\x53\xb7\xde\xbe\x7b\xf9\xcb\xb3\x77\xbf\x7f\xfa\xf9\xc5\xef\x32\xe6\xb5\xf5\x6c\x93\xcf\x38\x57\x87\x95\xe2\x0a\x5c\xeb\xa4\x3c\x3f\x6d\x2a\x9b\x1b\xfd\x68\xc5\x69\x52\x6a\x3a\x27\x53\x22\x63\x51\x9d\x41\x98\x89\x36\x6d\x39\xcc\x48\x9b\x9a\x49\x58\x2a\x64\x67\xc5\x87\xb1\xfe\x93\x6c\x91\xa5\x8d\xa3\xac\xe9\x6c\x95\xd5\xf3\x25\x3f\xa9\x1e\xbd\x3c\x3f\x7a\xb1\x3e\x7a\xcd\x25\x20\x99\xc8\x98\xf7\x60\x25\xd8\x66\x8e\xaf\x49\x5c\x8b\xac\xad\x8c\x0a\x0e\x00\x04\xf1\x90\x43\xff\x52\xfc\x34\x47\xe8\x29\xa0\xf8\x28\x62\xf8\xa1\x20\x47\x80\x65\xe8\x36\xaf\x8d\x2e\xb1\x17\xba\x3e\x64\x97\xa1\x72\x88\x4d\x11\x87\x45\x7c\x20\x05\x0d\x04\x70\xc5\x8e\xdb\x96\xa7\x5d\x44\xa0\xeb\xb1\xec\x5b\x5d\x8d\x77\x09\x97\x37\x01\x05\x99\xfe\x65\x02\x96\xe9\xad\x40\x41\xa6\x37\x23\x6e\x19\x3a\xd8\x4c\x77\xf8\x8f\x16\x86\x14\x47\x39\x23\xaa\x8b\x12\x6a\x63\x00\x67\xcb\x7a\x65\x42\xa9\x85\x2a\x72\x2f\x4f\x77\x52\x0f\x07\x52\x3b\xf4\x81\x5a\x9e\xb8\x90\x25\x56\x81\xca\x17\xac\x2c\x3f\xa6\xb1\xd2\x2c\xc5\x31\x5e\x07\x0f\x72\x26\x47\xec\x7a\x45\x1c\xec\x79\x6c\x9f\x7a\x42\x2e\xd5\x3c\x9a\x4e\x95\x43\x1d\xfb\x8f\x76\x1e\xf9\xd2\x01\xc4\x61\x92\x8e\xfd\xb7\xf0\x48\xac\x57\xee\x1d\x92\x39\x8e\x7d\x90\xa3\x0c\xc9\x83\xf2\x4c\xfa\x0d\xd9\x68\x9f\x4e\x96\xaa\xee\xcf\xb3\x88\x27\x27\xae\xda\x05\x45\x0b\xa5\x19\xed\xbd\x12\x7a\x91\x38\x29\xf6\xd1\xf9\x39\x2c\x54\xb9\x97\xf0\xa6\x62\xb9\x5a\xfc\x54\x08\xf5\x35\x65\xef\xf9\x18\xcb\xbc\x26\x21\xaf\x28\x6c\x66\x6e\x61\x33\xd3\x22\xa2\x12\xa9\xfa\x7d\x8d\xa9\x22\x27\x25\x01\xbe\x4c\x54\xd1\x87\x56\x66\x54\x85\x35\xb3\x85\xf2\xd9\x02\xc8\xd4\x4b\x97\x9e\xe4\x32\x7d\x4a\x0b\xaf\x54\x78\x40\x8e\xbc\x1f\x72\x74\x03\xac\xe7\x3a\x0c\x7a\x53\xfe\xa1\xea\xce\x8e\xa3\xae\x00\xb7\x6d\x3b\xbb\x34\xdc\x0e\xfa\xbe\x8a\x61\x8e\xd8\x50\x1b\x4d\x02\x1e\x96\x0a\x65\xd0\xf3\xf3\x82\xa9\xe6\x17\xc4\x8e\x5f\x60\x71\x2c\xc7\xbe\x0e\x44\x6e\x72\x03\xb8\x62\x0a\x6c\x4b\x9d\x5e\x2c\x6a\x1b\x0d\xad\x35\xa6\x37\xa4\x10\xcb\x5a\x1f\x55\x9b\xd5\x0f\x87\x9c\x26\xd3\x20\xc3\xed\xe2\x1a\xa3\xeb\xf1\xce\x8e\x3f\xb2\x24\x62\x7d\x3a\x8d\xe9\xd6\x16\x1e\x22\x1c\xb3\xdf\x12\x7e\x1c\xf8\x7b\x2a\x2c\x56\xb1\x96\x03\xe4\x21\x35\x4a\x21\x16\x65\x5c\x69\xce\x90\x5c\xa8\x1e\xc2\xf1\x8c\x24\x98\xfb\xe1\xd6\x56\x1e\x19\x50\xa2\x0f\xb8\xbf\xab\xea\xca\x49\x0c\x44\xc5\x29\x91\x38\x8c\x46\x65\xb0\xb2\x9e\xd1\x6d\x4e\xfc\xd5\xf5\x94\xe3\xbc\x9d\x16\x98\x95\x5b\x1c\x08\x07\x2f\xa4\xb0\x3d\xed\x52\xd8\x9e\x5d\x6e\x61\x7b\x7a\x35\x85\xed\xd9\x4d\x0c\x84\x23\xfd\x95\xfe\x7c\x33\xf5\xb7\xef\xd4\x1a\x33\x75\x66\x3f\x1a\x66\x16\x76\x60\x1d\xbf\x01\xca\x45\x32\x1d\xfe\xb2\x69\x13\x2f\xcb\x4c\xbc\x12\x3f\x11\x03\xb5\x45\x47\x5f\x29\x84\x29\xd1\x2d\x6f\x3c\xf6\xfc\xaf\xb2\x58\x6a\xf0\x95\xef\x11\xea\x3d\x47\x8c\x27\x58\xe6\x6e\xe7\x0f\x85\xe5\xa7\x4a\xad\xfc\x57\xed\xab\xff\xe5\x7f\x15\x36\x5a\x97\x59\xd9\xba\xcc\x9a\xac\xcb\x6e\xbb\x72\x20\x06\xdc\x37\xae\xab\x08\x70\xbd\x96\x19\x2c\x61\x3f\x12\x19\xa9\xe2\x38\xab\x3f\x57\x42\xb8\x37\x6b\xff\xea\xbd\xde\x3f\x9f\x74\x58\xe8\xb4\xb8\xd0\xeb\x64\x13\x6a\x22\x3c\x57\x5e\xa8\x82\x13\x15\x4d\x78\x28\x34\x50\x23\xff\xfd\xfe\xcd\xeb\xa1\xd2\xe7\x93\xc3\x45\xb0\x4f\x01\x07\x68\x12\x02\xd2\xc3\xc4\x6e\x95\x28\x3f\x3f\x0f\xf4\x9b\x06\x6c\xf4\x67\x89\x9d\x66\xd9\xf7\xb8\x05\x39\x2a\xcd\xa9\x65\xde\x4f\x94\x6e\x92\x8c\xcf\x92\x78\x84\x80\xf1\xa2\xd0\xea\x12\x87\xf9\x12\x4f\xf4\x12\x37\x97\x7a\x39\x4d\x12\xdb\x7e\xd7\x22\x1d\x82\x75\x26\xc2\xdf\x96\x71\xa0\x0a\xdf\xc3\x37\x60\x1e\xc5\x71\x62\xc0\xd0\x0c\x4a\xc5\x7d\xe4\x6f\xfb\x8d\xa3\x66\xad\xa3\xae\x99\xb0\xa6\x58\x8f\x06\x41\x03\xdd\x1f\x17\x2d\x85\x3f\xa3\x85\x1f\x2e\xdd\xd1\xb2\x58\x99\xdc\x84\x02\x69\xbf\x85\x1b\xa5\x5b\xb3\xd8\xcb\xeb\x52\xad\x4a\x36\xa6\xd5\x25\x49\xab\x3e\xb0\x7b\x6c\x6b\x8b\x15\xbd\x35\xe1\x52\x5b\x66\x2a\x46\xcd\x1e\x0a\x94\x0a\x11\xbd\x96\x5a\x53\xcb\x89\x24\x7b\x6e\x0e\x99\x57\x08\xc6\x4e\x4b\x7b\xd1\x5a\x5e\x5e\x4b\xea\x35\xe7\x8a\x2a\x17\xc4\xc3\x2d\x05\xa4\xab\xa5\x1a\xd6\x93\xd6\x75\x23\x97\xed\xcd\xea\x23\xc8\xb8\xc3\x27\xb2\x67\xdf\xbf\xfa\xf8\xcf\xec\xc1\xc6\x99\x54\x43\x75\xda\xac\x36\x50\x41\xa0\x7a\xde\xa0\xfc\xbc\xe1\xfa\xbc\x31\x97\x00\x57\x20\x40\x3d\x04\x89\xf2\x4a\xe9\xe1\x51\x53\x23\xdf\x8e\x13\xa6\xd5\xc9\xbb\x25\xb3\xfe\x92\x29\xd9\xdb\x0c\x13\xde\x9f\xb8\xcd\x77\x45\xdb\x62\x16\x24\xb5\x5c\x82\x0c\x4d\xbb\x63\xeb\x6b\xae\x02\x84\x1b\x17\x81\xcc\xf8\xdb\xdc\xa2\xd8\xa4\x34\x89\x2b\xcb\x82\x92\x39\xaf\xcd\xfe\x51\x37\x7b\x01\x5e\xf7\x94\x3c\x1b\x97\x19\xfd\x2b\x9d\x4c\xae\x45\x5c\xc6\x6a\x96\xe9\x97\xfe\xde\x9b\xd7\xef\x3f\xbe\xfa\xf4\x6c\xef\xd5\xfb\x4f\x2f\x5e\x3f\xfb\xe1\xd5\x8b\xe7\xc6\xfc\xa7\xbe\x93\x83\xcb\x3b\x1d\x06\x26\xcc\x09\x2f\x5d\xe6\x66\xf5\xb9\xfd\x89\xcb\x34\xb6\x7f\xf6\x0e\x69\x04\x42\x5f\xac\x41\x21\x28\xfa\xe0\x99\xcc\x0b\x1a\xf9\x42\xf3\x47\x3e\x78\x96\xa6\xe4\x54\xac\xc2\xda\x6d\x5c\x08\xbe\x3b\x2b\x95\x88\x11\x57\xf5\xc2\x1b\x7e\xd2\xff\xd5\x48\x6a\x12\x04\x6c\xa8\xaf\x41\xd9\x6c\x9e\xec\xa4\xae\xbf\xc4\x87\x84\xf9\x61\x21\x30\x0f\x87\xd8\x8d\xbc\x58\x30\x9a\x0d\x85\xe0\x3b\x65\x2e\x13\x0c\x0e\xcf\xb8\xf4\x2f\xe9\x67\xf6\xf1\x44\xc9\x9d\x39\x5a\x1d\xad\x1b\x82\xee\xfa\x3b\xf1\x97\xea\x57\xa6\x54\x29\xe3\xbf\x1b\xcb\x4c\x7d\x49\x6a\x2b\xc3\x04\x47\xe9\x3c\x46\x2c\x30\xab\x5c\x7e\xda\x86\x9c\x0b\x4c\xa0\xe1\x18\xea\x2e\xea\xbf\xc3\x62\x1d\x81\xcc\xa4\x6f\x3b\x34\x4c\xa3\x4d\x21\x48\xea\x99\xf3\x73\x74\x7e\xee\xff\x6f\x76\xf0\x56\x91\xdc\xb9\x1d\xa3\x55\x71\x22\x69\x63\x05\x97\x61\xaa\xb5\x9f\x53\xc7\x3b\xd2\xdf\xcc\xc1\x34\x96\xeb\x48\xcf\xc5\xa2\x4e\xd7\x53\x8c\x9e\x42\x0c\xeb\x33\x31\x65\x0c\xf2\xea\xe9\x24\x66\xec\x63\x17\xae\xd1\x30\x25\xe4\xf3\x7c\xa6\x3f\x92\xd1\x69\x94\x65\xe7\xcb\x7a\x1c\x83\xd3\x84\x1f\x0f\xe6\x34\xf5\xc3\xb0\xf5\x40\x2e\x12\xbc\xe6\x74\xcb\x2a\x3b\xd8\xca\x68\x44\x62\x34\xe2\x40\x68\x65\x68\x84\x85\x6e\x4a\xc5\x69\x05\x5d\xba\x41\xf3\x49\xc7\xc2\x25\x48\xc9\x11\x99\xf3\xb6\x8f\xba\xda\x56\x6f\xd6\x36\x5c\x82\x57\xd4\x13\xa1\xe7\x50\x23\x29\x96\xc9\xa6\xd8\xd3\x1e\x89\xd1\x0f\x8b\x8f\xef\x5e\xd5\xc4\x2d\x16\x23\x6e\x98\x3e\x51\xb2\x19\x04\xfe\x01\x64\xe8\x23\x4d\x65\xde\x64\xe1\xab\x12\x07\xb2\xf4\x51\x70\xe6\x38\xe6\x8d\x37\xd8\xb8\x67\xee\xef\x28\xff\x8c\x87\x86\x3a\xf3\x6c\x28\x6b\x29\x68\x77\x0c\x45\x53\xc2\x91\x77\x0a\x99\xa7\x70\x1e\xfd\x70\x14\x60\xe5\xc0\x55\x51\x06\xef\xaa\x4f\x84\x5a\xb1\x16\xc3\x1d\x3f\xfa\xf6\xdb\x52\x19\xaa\xc2\xfb\xd9\x67\x8b\x6f\x3d\xde\xd9\x59\x9a\xf8\x47\x18\xc3\x19\x47\xf4\x47\x42\x03\x5e\x89\x9b\x96\x5a\x7d\x80\xab\xd9\x9f\x3d\xbc\x37\xa6\x16\xdd\x3a\x96\x42\x18\xa5\x6c\xa0\xed\x09\xd5\xbb\xb2\x68\x04\x8c\xd2\xed\x84\x0d\x64\x50\xc6\x40\x81\xd9\x0c\x74\x1a\x6c\x55\x26\x6c\x4a\xd4\xdc\x5c\x3d\x94\x72\x9a\x25\x29\x45\xdd\x31\x63\x27\x0b\x41\xd2\x5f\xfd\xd7\x63\x68\x37\x4a\xc2\x1e\xa2\x21\xb4\x44\x43\x45\x6f\x97\x99\x5e\x96\x15\x70\x46\x12\xeb\x75\x5f\xf0\x66\x72\x34\x9d\xa5\xaa\x62\xa4\x72\x56\x66\x9e\xca\x2c\xe0\xb8\x46\xa7\x10\x5f\xe1\x42\x12\x49\xdb\x83\x9f\xb3\xe7\x82\x52\xf5\x43\xdd\x8b\x77\xf3\x14\x31\xbf\xbc\x8e\x93\x1e\xeb\xb8\x9c\xc8\xb6\x82\x2e\xa2\xda\xb8\x4e\x01\xba\xaa\x47\xbd\x5d\x38\x97\x61\x5a\x05\x86\x73\x49\x0b\x6a\x1c\xb9\xf2\x07\x1a\x0c\xa7\xda\x23\x02\x7b\xa8\x0b\x55\x23\xaa\x2d\x3a\x3a\x65\x5d\xc5\x5e\xa4\x69\x73\x06\x29\x43\x01\x1a\xce\x93\x38\xbc\xc7\x55\xc9\x12\xc0\x55\x04\x20\x32\xf9\x3a\x32\xdf\x6f\x68\xb9\x7c\xf4\xf5\x97\xcf\x4d\x8c\x9d\xc3\x1c\xea\x28\x7f\x5b\x32\xa6\xf2\x30\xbc\x87\x6d\x37\x3d\x06\xbe\xfc\xd4\xcb\xec\x0d\x19\xdb\xae\x22\x55\x40\xb5\xca\x99\x83\x93\x5b\x30\x7f\xc5\x20\x57\x29\xdf\x9a\x47\xca\x14\xcb\xc4\x70\xe5\xa4\x28\x04\x56\x64\xe1\xad\x3b\x46\x4a\x30\x3e\xf0\x1f\x16\x81\xdf\x4a\x21\x31\x86\x3c\xca\x4a\xda\x6d\x79\xf8\x5d\xc0\xce\xcf\x03\x36\xa6\xd9\x9d\x96\x76\x54\x78\x16\x0e\xc3\x70\x6b\x2b\x80\x63\x96\x9d\x3e\x39\xf1\xa0\x8e\x97\x05\x85\xde\xab\x10\xda\x10\xc0\x0a\x37\xec\x61\xea\x90\xd9\xce\xd7\x8a\x17\xca\x1e\xdd\x68\x4e\x28\x47\x70\x65\x7c\x70\x55\x7e\x52\xdd\xd3\xd7\x52\x7b\x6a\xa1\x7d\x65\x14\x17\xed\xa1\x87\x65\x0f\xfd\x86\x13\xb1\x6a\x53\xb0\x6a\x03\xcd\x6c\xad\xa7\x32\xae\xc7\xce\x71\x3d\xb6\xc7\xf5\x58\x8e\x8b\xc8\x71\x29\x95\x2c\x43\xf1\x90\xdc\x4f\xe9\x6d\x49\x3c\xc2\xd5\x61\xb2\x7c\x98\x44\x0f\xd3\x5c\x02\x44\x0e\x93\xf5\xce\x37\x23\xab\xcb\xfa\x2d\xa5\xb0\x6e\xc4\x52\xd6\x2b\xb8\x50\xad\xf5\x62\x53\x09\x75\xe1\xd9\x4b\x59\xc6\xab\xcf\xac\x2a\xdd\x7e\x3d\x67\xb6\x4b\xbe\x72\xeb\xec\xab\x01\x9a\x8d\xee\xcc\xf9\xd9\xc0\xb4\x17\x03\x03\x2e\xef\xe0\x2a\xf0\xb9\x9a\x14\x26\xb5\xd8\x6b\x90\x20\x56\x5d\x39\x1a\x38\x69\x2d\xbd\xa9\x0a\xbe\xb4\x01\x59\xe8\xe2\x65\x1e\x58\x91\x79\xe8\xa6\x64\x1e\x45\x91\xde\x7a\x5b\x67\xf7\x63\x9b\xf2\xcf\x50\x7a\xe8\xc6\xce\xb1\xd6\xa5\x2c\x1c\xed\xf4\x95\x30\x14\x51\xc4\xf5\x4e\x70\x18\xd2\xf2\xe6\x58\xc0\xc3\xa7\x67\xca\x17\x42\xe8\xcb\xe7\x23\x09\xf7\xfe\x5e\xbe\xff\xf2\xf9\x08\x2d\x47\xa5\x7c\x05\x6e\x22\xf1\x37\x95\x44\x5a\x20\x61\x98\x6d\xa8\xb7\x0a\xb0\xa8\x69\x4f\xb5\xe6\x98\x68\xd0\x23\xfb\x40\xc8\xda\x7f\x47\xd2\xe6\xa4\xc3\xd6\xd6\x25\xfe\x52\xb1\xed\x55\x85\x55\xbe\x98\xa1\xed\x0c\x1c\xbb\x75\x37\xdb\xc8\x3f\xbd\x0b\x94\x5e\xac\x3d\xc4\x89\x08\x64\xaf\x5f\x89\x7c\x9e\x57\x6f\x12\x93\xe1\x87\xe7\xe7\xbe\x36\x77\xf9\xe2\xf6\xd2\x85\xdb\xe8\x48\x69\xb4\xbc\x8c\xd8\xd4\xe7\x92\xbf\x0f\x29\x99\x9a\xed\x1f\xa0\x7d\x6e\x10\x73\x90\x75\xe2\x86\x40\x56\x92\xb2\xfa\xf2\x2c\x4d\xfd\xf0\xe9\xd9\x72\x24\x9d\xed\xab\xaa\xa0\x72\x2e\x8b\xb5\x48\x5b\xa6\xb3\xae\xc0\xf4\xa6\xe6\x1b\x50\x2b\xfe\xfe\xae\x1c\xe7\x15\x64\x87\x92\x1b\x9e\xf5\xc8\xfa\x57\x0b\x4a\x2e\xb1\x5a\x10\xb9\xa9\x55\x70\x48\xe7\x32\xa7\xc9\x2d\x2e\x73\x9a\xd4\x94\x39\x4d\x6e\x46\xae\x6d\x3a\xb6\x23\x5f\x00\x04\xc4\x14\xbc\xaf\x68\x32\x8f\x9c\x9a\xcc\x23\x5b\x93\x79\x34\x19\x15\x8d\xcf\x20\xd5\xe1\xe1\x92\x4b\x80\x79\x19\xc3\x6e\x0d\x20\x28\x80\xc7\x0a\xd3\xd6\xd7\x7e\x4c\x1f\xc4\x90\xc3\x11\x5f\x02\x5a\x8c\x3f\x16\x97\x87\xca\x42\x7b\x7e\x5e\x8e\x2b\x1a\x0b\xb5\x8a\x42\x7c\x84\xc4\xc2\xca\x80\xab\x02\x1a\x82\x5c\x03\x2b\xf5\x3a\x1a\xe7\x20\xfa\xa8\x2c\x5a\xf9\x43\x3f\xcb\xed\xc0\x85\xbf\x12\x7d\xde\xe4\x4b\x5f\xae\x74\xb5\xee\x2d\xde\x1e\x82\xd8\x82\xf6\x9b\x8e\x89\xe9\xc6\xd4\x65\x4b\xd7\x48\xd0\x2c\x88\xad\xe2\x18\x59\x20\x88\x8e\x9b\xdb\xda\x0a\xc8\x98\x98\x8e\xec\xd3\x49\x18\x02\x94\x83\xf1\x21\xc0\x02\xd2\x10\x1f\xe2\x6c\x31\x8f\xcb\x3a\x3f\x87\x59\x1d\x43\x64\xc5\x86\xef\x00\x3e\xa4\x48\x7a\xb5\x7f\x3b\x46\xf8\xd9\x09\x4c\x24\xde\x7c\x18\xa4\x61\x56\x69\x3d\x02\x72\x16\xe9\xf0\x87\x94\x44\x9f\x13\x7c\x64\x55\x6d\xcf\x83\xe0\xce\xf4\x67\x47\x39\x26\xd6\xf0\x40\xbf\x20\x3e\x6f\x7e\x9b\x0c\x22\x55\x23\x69\x2e\xc4\xda\xbc\x78\xaf\xa9\x06\xb5\x46\x76\xb9\x5a\xc8\x35\xcf\xd9\xb2\xd0\x2a\x51\x23\x3a\xe7\x74\xbe\xb5\x25\x9f\xcd\xab\xe1\xd6\xd7\xc6\xd5\xa7\x80\xa9\xf6\x18\x89\x05\xee\x8a\xa7\x72\x96\x7c\x94\xb5\x1e\xad\x4a\xb8\xd1\xf8\x6c\xa9\xd0\xbb\xe9\x30\x12\x5f\x0a\x83\xa8\xbe\xfe\xd6\x86\x3f\x6d\xd5\x59\x5e\x82\xd5\x24\xf1\x3a\xd1\x3b\x2f\xd7\x7b\xaf\x35\x34\x4b\xcd\x61\x35\x34\x8b\x66\x9f\x4e\x55\xd1\x10\x1c\xaa\x7c\x1d\x30\xaf\x86\x40\xc4\x2d\x12\x37\x43\x90\x46\xc7\x57\x87\x7c\x2a\x3f\x2f\x33\x06\xab\x91\xbe\x30\x8e\xe5\xe6\x79\xa5\x6b\x52\x15\xd1\xff\x14\xfa\x57\xfd\x03\xcb\x7e\x00\x57\xd9\xce\x6a\x84\x2e\xd6\x15\xaa\x4b\xf5\xaa\x37\x69\x43\x44\xc3\xe4\xf0\x35\xe1\xe6\x08\x6a\xc2\x34\xd6\xbd\xf3\xc5\x30\x8b\x2f\xb9\x3d\xc3\x1d\xd6\x16\xaa\x96\x15\x43\xd9\x89\xb6\xb5\x75\x3f\xff\x43\x22\xa5\x36\xd5\xfa\xd1\xc4\x91\xd9\x89\x5d\x83\xbf\x33\x8b\x01\x3c\x52\x08\x0c\x61\x9d\x4b\xa3\x5b\x13\x47\x88\xff\x2a\x88\x2c\xe4\x5e\x77\x28\x88\x05\x8e\xab\x5f\xba\x57\xcc\x6d\xd6\x49\xd5\x35\x81\xa1\x62\xe7\xaa\x2f\x60\xc9\xc5\x42\x57\x5e\x19\x0a\x97\xba\x1a\x74\xe1\xd3\x65\x91\xff\xfc\x3c\x40\xe3\x7d\x34\x29\x20\xf6\xea\x4e\x01\x2c\x4b\xf2\x96\xaa\xe9\x20\xdb\xd8\xa2\x0b\xfb\xea\xde\x48\xf6\x07\xce\xf2\x32\x55\xe5\x4e\xe1\x9e\xde\x61\x46\x28\xbf\xb2\x63\x22\x22\x53\x93\x99\x56\xd8\xe2\xbd\x36\x38\xaf\x20\xa2\x1d\xa6\x90\xfb\xc0\xff\xfe\x8b\xbc\xb7\x7d\xc8\xa6\x6d\x39\xf7\x7d\xd5\x37\x72\x89\xea\x1b\xbb\xa9\xea\xdb\x9d\x2d\xe5\x0a\x6c\x29\xec\xe6\xdb\x52\x3a\xea\xfc\xe4\x16\xeb\xfc\xa4\x46\xe7\x27\x37\x43\xe7\x4f\x6a\xce\xfb\x6e\x55\x89\x52\x52\x06\xbc\x92\x2c\xb3\x54\x15\xc7\x56\x90\x93\x18\xf8\xde\x3f\xbc\x5c\x11\xe6\x7a\x27\x86\x4b\x00\xe3\xf8\x9f\x73\x48\xe3\x9a\x9a\x9a\xca\x77\x21\x1f\xa8\x15\x07\xb4\xe3\x35\xc0\x0a\xf2\x89\x2a\xc8\x27\xba\xbf\x3b\xb1\x8a\x17\x21\xc0\x40\x35\xe5\xe6\xfe\x7d\x3e\x24\x58\x76\x20\x83\xa5\xdf\x27\x13\xd3\xcf\x8e\xea\xba\x4a\x4c\x01\xfb\x08\xf0\xc9\x12\x4c\x61\x74\x9c\x60\x17\x40\xee\xca\xc0\x96\x19\x26\x91\x4e\xb3\xff\x45\x7d\xa2\x58\x88\x42\x67\xea\x66\x04\x55\xf5\x47\x85\x00\x46\xd1\x0c\x52\xb4\x77\x0c\xa9\x13\xda\x37\xeb\x42\x80\xec\x60\xc5\x52\x14\xa1\x38\xa9\x87\x04\x6f\x6d\xe9\x35\x28\x67\x90\x05\x32\x68\x9d\x23\x67\x0e\x8f\xd0\xbc\xb2\x7a\xb1\x43\x82\x9f\x8a\xff\x1b\xa3\x21\xc1\xa3\x62\x1a\x10\xc1\x75\x53\x6b\xbf\xae\x2a\x0b\xe8\x5f\xb2\x19\x2d\xfa\xa9\xd8\x45\x30\x15\xa7\x77\xa5\x30\x70\x45\xb0\xde\xda\x2a\x71\x37\x1e\x3e\xe5\xa3\x7d\x3e\x09\x87\x8c\x4c\x51\x4d\x66\x8d\x6e\xdc\x78\x10\x55\xa6\x84\x23\x91\xc6\x74\x02\x2d\x97\xb2\x74\x0e\x9d\x51\xe4\x2a\xd8\xaa\x42\x60\xef\xa9\x94\xac\xa1\x3d\x45\x01\x0a\x6d\x1c\xd6\xac\x91\x30\xd0\x79\x07\x72\xee\xd5\xec\xe6\x38\x64\x6c\x7e\xc0\x22\x9a\x1c\xa0\x22\x01\xf1\x30\x3a\x86\xf8\x48\x1a\x80\xa8\xd8\xa3\x52\x7a\x05\x82\x88\x79\x1a\x57\x80\x15\x0d\xe1\x12\x1c\x95\xf7\x62\x19\x74\xc8\x68\xfb\x45\x9d\x08\x35\x17\xb2\x15\xa2\xc6\x6e\xb8\xbf\x33\xb1\xe0\xa6\xc4\x1e\x8b\xfd\xaa\xea\xdc\xe6\x78\x54\x21\x1b\x8e\xda\x08\x31\xe4\x50\xdf\xbd\xc4\xe8\x92\x63\xce\x67\xed\xf0\x65\x55\xb7\x5a\x28\x8d\x95\xca\xca\x55\xf3\xbe\x78\x40\x3f\x9e\x05\x4f\xf5\x32\x40\x49\xc0\xb9\x8a\x05\x4a\x3d\x33\x84\x07\x84\xf2\x40\x87\x8a\x88\x17\x0a\xe6\x26\x75\x39\xef\xa2\xe3\x66\x82\x13\x1e\x38\x9c\xe9\xe5\xd3\xdb\x4a\x22\x41\xa1\xe5\x56\x07\x67\xd3\x2c\x86\x01\x2d\x01\xd7\x68\x3e\x72\xbd\x63\x98\x4a\x93\xea\x8f\x84\xbe\x8c\x15\x9e\x95\x3a\xf9\xde\x63\x38\x63\xc7\x84\x07\x67\x6a\x1b\x56\x23\x0d\x72\x5b\x8f\x2e\x8a\x52\xec\x40\x0e\x40\x48\x13\x98\x26\xff\xc9\xae\xb3\x71\xa1\x3f\xb6\x29\x55\x07\x2a\x00\x06\x04\xa9\x23\x8a\xb8\xe8\x50\xad\x0e\x0f\x87\x59\xa5\xf6\x77\x88\xcd\x08\x66\x42\x4f\x65\x40\x28\x36\xbe\x68\x4d\xad\x7a\x60\x81\x2c\x74\x26\x5f\x19\x98\xa1\x44\x44\x69\x43\xab\x4b\x6c\x2d\xe1\xb4\xaf\x0e\xb3\xbc\x19\xba\x16\xf3\xc8\x00\x53\x9d\xaf\xe2\x22\x37\x13\x96\x4b\xc2\x6a\x16\xe8\x67\x6d\x6a\x12\x57\x32\xd1\x36\x81\x31\xed\x18\x3c\x75\x0f\x12\xdb\x09\x6d\x80\x02\x2e\x44\x21\x17\x76\x46\xd3\x81\xc7\xd1\x17\x3e\x98\x22\xc8\xe6\xb4\x9c\x46\xa9\x0e\xbe\xc2\x03\x75\xef\xdd\xc4\xca\x29\x3c\x89\x3e\xb7\x15\xda\xd6\xcf\x54\x86\xa7\x52\xed\x36\x15\x2a\xe2\x96\x97\x57\x4c\x0b\x95\x47\xa9\x38\x39\xf9\x29\x42\xf8\x03\xa9\x2c\x4f\x47\x14\x61\xe7\x7a\xd3\x8e\x9c\x9a\x07\xc5\xba\x1b\x7a\xaf\x38\xe2\x91\x9d\x05\x40\x85\x28\x9d\xaf\xe7\x63\xc8\x02\x12\x3e\x0d\x02\x3a\xc6\x0a\x19\x35\x0c\x8d\xfe\x49\x0e\x3d\x3e\xfc\x20\xc6\xa4\x21\x0c\x19\x27\xb3\x20\x14\x8f\x7d\x90\xb5\xe0\x03\x89\x43\xc8\x24\x9e\xaa\x7e\x72\xc8\x49\x40\x01\x92\xd9\x22\x21\xa0\xe1\x28\x30\x0f\x20\x55\x92\x22\xae\xfa\x1d\xec\xd3\x51\xd3\x32\x6b\x4e\x3f\x9e\xf9\x4b\xec\xf7\x54\xf2\xe3\x2f\x70\xd6\xcf\x04\xa7\xab\x6b\x36\x2f\xc3\x99\xb2\xf3\x99\xb2\x9b\x97\x55\x5f\x2f\x8b\x12\xac\x5b\xa2\x8d\xa1\x48\xea\xaf\x25\x10\x7b\xc8\x15\xf2\x87\x4e\x8d\xfd\xb2\x78\x1c\xab\x4f\xd1\x39\x56\x96\x16\x54\x15\xe2\x5a\x69\x2a\x73\x9e\x9d\x71\xc3\xa5\xba\x4f\xc5\x27\x6f\xe4\x29\x26\x93\xc8\x5b\xc7\x78\xa3\xc6\x46\x28\xdf\xce\xad\xc3\x6c\x3b\x3a\x46\xc5\x5a\xe3\x25\x3b\x75\x66\x21\xe1\x77\x46\xc7\x9b\x03\xef\x8f\x73\x13\x1e\x5d\x1d\xde\x9f\x56\x8d\x77\xb4\x0d\xde\x9f\xe6\xf6\x3b\xda\x11\xde\x9f\xf6\xb7\xe4\xd1\xb0\x38\xd2\x9b\x0e\xef\x8f\xaf\xbf\xf9\x31\xbf\x50\x3d\x77\x9c\xee\x53\x1b\x12\xe1\xbd\x8a\x3b\xf7\xc3\xa7\xb9\x89\x23\xc3\xcb\x04\xec\x9e\x0f\x59\x24\x43\x70\x03\x34\x64\xb3\x34\xe1\x81\x3f\xf2\x43\xf0\x20\x14\x82\x52\x00\xc7\x18\xb0\xb1\x10\x31\xd8\x18\x03\x38\xa6\xa1\x86\xb7\x85\x43\xd5\x30\x48\xc6\x4c\xff\x34\x18\x0d\x44\x67\xa5\xcf\x20\x63\x62\x8f\x8c\x4c\x66\xb4\xfe\x7b\x3c\x1e\x27\x4f\x77\x46\xbb\xf7\xe4\x53\x11\x4d\x78\x12\xc1\x34\x7b\x2c\xbb\xa0\x9f\x1b\xe8\x07\x4f\x21\xc5\xb2\x39\xfd\x99\xc4\xfd\x99\x41\x4d\xbb\xde\x6e\x86\xe8\x60\xa2\x21\xb2\x4d\xbf\xb3\x1c\xa1\xe5\xb2\xe3\xb1\xed\x04\xcf\xde\xb8\x8b\xb1\xef\x9c\x77\xee\x7e\x11\x63\xf6\xe6\xf4\xbb\x0c\x2b\x79\xc7\x2c\xef\x98\xe5\x1d\xb3\xbc\x63\x96\x97\xca\x2c\x35\xeb\x69\xe6\x99\x86\x53\x8e\x32\xee\x09\x32\xd8\x22\x38\xdc\x13\x52\x3f\xdb\xd3\xdc\xe9\x1f\xac\x74\x21\xe7\x56\xce\xe7\xff\x5e\xf3\xfc\x20\xe7\x6e\x65\xa4\x24\xd3\xc4\x6f\x8a\x7f\x66\x5f\xd4\x7f\xd7\x7c\x50\xdf\xfd\xbb\xfb\xe9\x0e\x9f\x7b\xab\xd8\x72\xd6\x80\xfe\xbb\xe6\x73\xfa\xee\x3f\xdc\x4f\x0f\x76\x2d\x56\xdd\x87\x57\x57\x71\x73\x6f\x0e\xc3\xab\xc2\x3c\xdd\x9c\xbe\x97\x41\x39\xae\x47\xcf\x5d\x60\xcb\xe5\x9e\x37\x81\x48\xdc\x89\x1c\x77\x22\xc7\x9d\xc8\x71\x27\x72\xac\x7a\x18\x25\x87\x41\x8d\xb8\x91\x79\x60\x1d\x02\x05\xa0\xe3\x7d\xff\x2d\xa2\x11\xc2\x1c\x1e\xa1\x02\x7f\xf4\x41\xe5\x8e\x66\xd4\x8e\x3b\x46\x64\xf0\xcd\xe0\x8d\x18\x83\xb7\xb6\xe8\x90\xa2\x13\x44\x65\x32\x4a\x71\x67\x65\x44\x15\x67\x4d\x0e\x09\x2b\x48\x28\xc6\xb3\x0f\x27\x62\xe3\xef\xc3\x49\x76\xb0\xed\xc3\xc9\x3f\xc4\x85\xa7\x83\xdd\xd1\xee\x72\xb9\xec\xcd\x3d\x1c\xa0\x27\x77\x47\xef\xdd\xd1\x7b\x77\xf4\xde\x1d\xbd\x37\x4d\xdb\xfb\x05\xb1\xe3\x8a\xc6\x57\xbd\x58\xd1\x8a\xaa\x8f\xfc\xbd\xe1\xbd\x46\x75\x2c\x7f\x2b\xd7\x00\x2b\xd7\x1a\x3a\x90\x6b\x82\x75\x6f\x75\xfc\x7c\xae\x11\x56\xae\x35\x7c\x3e\xd7\x0c\xeb\xde\x5a\x59\x3b\xac\x00\xe9\x5c\x0f\x35\xc5\xd1\x75\x83\xf8\xca\xb6\xe1\x6c\x96\x26\x11\xbc\x70\xfb\xb3\x9d\xe2\xf2\xd3\x87\x5f\x5e\xfd\x00\x29\x1b\x9a\x6e\x04\x67\x49\x3c\xf2\x1f\xd3\x6f\x9e\x1c\xbe\x79\xbb\xed\x03\x99\x68\x35\xfa\xea\xcc\x67\xaa\x24\xa3\x3f\xda\x9f\x00\x5f\x86\x7b\xaa\xf3\x74\xb4\xbf\xff\x18\xf8\xc7\x08\xc6\x83\x14\x2e\x54\x60\xc0\x04\xec\x8b\xff\x4d\x26\x13\xb0\xbf\x03\xfc\x3f\xfe\xc0\xfe\x04\xec\xef\x82\xfd\x07\x4f\x80\x3f\x83\x47\x68\xc0\x13\xae\xd4\xc8\x3d\x95\x3c\x26\xde\xf0\xb3\xc2\x4f\x3e\xf0\x3f\xc5\x68\x46\x51\x04\x39\x12\xf7\x7c\x6f\xe0\xf9\xc0\xdf\xe6\xd3\xd9\xf6\x01\x25\x51\x44\xd2\x64\xb0\xfb\xed\xcf\x7b\x5f\xff\xdf\x23\xf6\xe7\xeb\x1f\x5f\xfe\x6b\x77\x9b\xcc\xf9\xe0\xd1\xb7\x5f\x0f\x22\x92\x12\xf1\x5e\xfc\xc9\x8c\xe9\xd3\x8c\x12\x05\x89\xb3\xdd\x42\xf7\xe1\xf1\x01\xf3\x45\xb7\x0f\x61\xca\x50\xa1\xf7\x8f\x80\x9f\x1c\xfa\x60\x5f\x8e\x01\x13\x3e\x40\xff\x96\x7f\x3d\x02\xfb\xa6\x46\x05\xf0\x6d\xa4\x7d\x89\x9d\x39\x99\x00\xdf\x9e\xd7\x89\x8c\xea\x9a\xa8\xff\x80\xb3\x12\x21\x77\x80\xef\x79\xe2\x63\x82\xa2\x90\x1d\x27\x11\xa1\xb3\x81\xce\xaf\x03\xfb\xfb\xbb\x0f\x80\x9f\xc4\x3e\xf0\x4f\x29\x9c\xcd\x10\x15\xcd\xef\xef\xfb\xdf\xcf\x10\x9d\x26\x32\x22\x80\xf9\xc0\xff\x3e\x8e\xf4\x7f\xc4\xff\x2b\x3b\x09\xcb\x7f\x8a\x5f\x04\xab\x30\x58\x49\xf7\x07\x0f\x80\x6f\xb7\x30\x01\xf2\x92\x68\x65\xa2\xa6\x4c\xcc\x88\x1e\x6a\x1c\xc9\x8f\xea\xdf\x32\x7d\xc9\x2a\x04\x3c\xd1\x23\xd3\x4d\x98\x6f\x57\x9b\x31\x85\x46\x4c\x53\x79\x2f\xeb\x9a\x7b\x02\x7c\x18\xe9\xbd\xb1\xff\xe0\x21\xd8\x11\xeb\x0b\xf8\x14\xe5\x31\x6e\x86\xb8\x13\x17\x61\xff\xf8\x03\x2b\xda\xee\xaa\xbe\x91\x39\x4f\x11\xf7\xcb\x53\xed\x79\xd9\x0c\xe8\xb5\x92\x12\xa8\xf0\xfa\x25\xf9\xa3\x14\x32\xd1\xcd\x93\x04\x9d\x9a\x5b\x93\xea\x7a\x17\x8d\x4c\xc4\x5a\xa7\x70\x8a\x38\xa2\x72\xdf\x2c\xad\x05\x55\xbd\x69\x56\x86\x98\xf9\x17\x27\x30\xf5\x47\xb2\x67\xcb\xaf\xc0\x14\x71\x38\x3a\x9b\xca\xbd\xad\xea\xce\x74\x59\xc6\x9d\xf2\xd2\xf2\xd7\x33\xc0\x22\xb6\x7d\x00\x59\x12\x0d\x62\x4a\x66\x31\x39\xc5\x62\xfd\xf1\x0a\x90\x91\x0a\xb5\x2b\x3e\xd9\xab\xb5\x1b\x14\xde\xd1\x65\x58\x9c\x26\x32\x1f\x64\x33\x44\x32\xad\xdd\x2e\x22\x6d\x86\x38\x37\x9e\x28\x33\x72\x8a\xe8\x80\xa1\x14\x45\x7c\x30\x9d\xa7\x3c\x99\x95\x71\x8e\x15\x6d\xec\x07\xfb\x34\x75\x2b\x09\xb4\xdd\xb0\xc3\x56\x24\xd4\xf6\x6d\xd9\x66\xf6\xe8\xd6\xa7\xcf\xad\x22\xc7\xf6\x01\x3a\x24\x14\x0d\xc8\x8c\x2b\xf1\x68\x5d\xea\x94\x1b\xbc\x55\xc4\xda\x1c\x95\x6e\x25\x79\x66\x29\x8c\xd0\xb1\xae\xc3\xbc\x36\x89\xec\xd6\x6e\x17\x99\xec\xc3\xf6\x88\x92\xf9\x6c\x13\xd4\xaa\x36\x7a\xab\x88\xa6\x30\x68\x06\x19\x76\xd7\xda\x04\x2b\x35\x78\xab\x88\xb5\x31\x59\xe0\x66\x8b\x00\x42\xc3\xbf\x5a\x43\xd1\x3f\xe3\x17\x6f\xfe\xf3\xed\xff\x7c\xdd\xcd\x50\xd4\xac\x7a\xfb\x6b\x28\xbf\x71\xb4\x8a\xce\x1b\x47\x12\x15\xfb\xaa\x89\xf8\x9f\x8f\x6f\xff\x13\xbf\x5a\x74\xb4\xb6\x5d\x24\x11\x25\x39\xd6\xa0\xe4\xf6\xc0\x58\x63\xae\x85\x19\xf3\x6f\x3f\xfc\xb8\x78\xf8\x84\x9e\x74\x36\x63\xa2\xe9\x8c\x2f\x06\x06\xa3\xa7\x60\xf0\x51\x20\xdf\x83\x47\x3b\x0f\x8d\xd5\x0d\xa6\x29\x39\x7d\x45\x8e\x12\x69\x1f\xe4\x74\x8e\x5a\x2c\x4f\x8f\x81\x2f\xfb\x31\x60\x29\x31\x66\x52\xff\x7b\x2c\xed\x84\x60\x5f\xda\x50\x95\x35\xa9\xae\x11\xd5\xcc\x37\xc0\x3f\x7e\xe0\x03\xf9\x41\xb0\xff\x44\x4d\xfd\xef\x64\xee\x41\xe9\x51\xe2\x5e\x66\x11\x8b\xc5\xe3\xdf\x76\x35\x4a\x75\xea\x24\x9b\x1f\xf4\xe9\xe7\xc3\x72\x3f\xa5\x5f\xcc\x93\x54\xdc\x74\xd7\x0e\x48\xbc\xe8\xd4\xab\x59\xb9\x53\xfa\xb6\xe7\x09\x2a\x4a\x87\xda\x01\xf2\x8e\x28\xc4\x1c\xc5\x9e\x65\x1a\xf5\x38\xf1\x4e\x12\x74\x2a\x73\xed\x3c\x09\xa3\xe9\xc9\x05\xe0\x11\xea\x41\xf6\xd9\x5b\x90\x39\xf5\x60\x3c\x4d\x70\xc2\xb8\xf6\x25\x1f\x8a\xab\xe2\x0d\x2c\xef\x7b\x0a\xca\x4f\xbb\xec\x24\x54\xfb\xd0\xea\xde\x66\x49\xa2\x2c\xa6\xac\x13\x55\xd2\x24\x23\xcb\xee\x4e\xbe\xee\x63\x12\xb1\x41\x9a\xe0\xcf\xbe\x83\x5e\xfa\x55\x98\xbf\xb9\x0b\xfc\x63\x8a\x0e\x7d\xb0\xff\xe0\x5b\x6d\x2c\x97\xb5\xa8\xf7\x4d\xc9\xe0\xe7\x6f\xf6\xde\x7f\xfa\xf8\xee\x95\xb1\xd6\x02\x5f\x95\x1d\xc0\x31\xfa\x32\x3c\xe6\xd3\x54\x5a\x7d\x65\x17\x28\x4a\x7d\xe0\x63\x42\x66\x08\x23\xea\x61\x42\xd1\x21\xa2\x2a\x7b\x57\x3e\xc0\x65\x1a\xa5\x0f\xfc\x4f\x07\x29\x2c\xf4\xf0\x1d\x82\xb1\xc7\x8f\x91\x17\x93\x48\x3a\x7e\x8d\xf9\xbd\x40\xe0\x2a\xc9\xdb\xa8\x91\x22\x48\xf1\xc6\xc9\xf1\xea\xc5\xb3\x77\xaf\x4b\x44\x51\xa7\xec\x36\x43\xd1\x9c\x26\x7c\x31\xc0\x88\x9f\x12\xfa\x39\xc1\x47\xdb\x33\x4a\xe2\xb9\x9c\xd9\x81\x64\x5f\x9b\x20\xd8\x8f\x44\x9c\x66\x92\x64\x47\xf3\x24\x46\xed\xa4\xea\x6d\xe0\xde\x24\x8f\x2a\x31\x9a\xb5\x58\x96\xab\xa0\xfe\x95\x70\xab\x93\x07\x7f\x7e\xfc\xe5\xed\xbf\x56\xe4\x56\x99\x13\xe2\xca\x78\xd0\x6f\x28\x8d\xc8\x14\x89\x53\xf2\xd9\xde\x2b\x76\x2d\x4f\x78\xd1\xb1\x8c\x51\x6a\x0c\x5d\x2f\x51\xd9\xd3\x9e\x72\x46\x7a\x51\x3a\x67\x1c\xd1\xa1\xf7\x1b\xf2\x18\xa7\x04\x1f\xa5\x0b\x0f\xe1\x88\xcc\x29\x3c\x42\x72\x8f\xcc\x19\xf2\xc8\xa1\x6a\x2d\xc1\x5e\xbe\x23\x3d\x84\x4f\x12\x4a\xb0\xec\x9b\x77\x48\xa8\x7c\xfc\x00\x31\xee\x99\xad\xec\xcd\xa8\x38\x97\x23\x74\x77\xf0\xdf\x1d\xfc\x77\x07\x7f\xdf\x83\xdf\x1c\xd7\x6b\x9d\xf9\x87\x84\x4e\xaf\xfa\xbc\x5f\xfc\xba\xfd\xee\x3d\xfe\xf2\x3f\xce\xf3\xde\xd7\x48\x05\x3e\xf0\x23\x88\x23\x39\xbf\x99\x6d\x48\x8c\xed\x30\x11\x23\xf0\xf9\x62\x26\xa6\xac\xb4\xc7\xbf\x01\xbe\x1a\xa1\xf3\x14\xd4\xab\xf5\x30\x41\x69\xcc\xc4\xaa\xa8\x39\x2b\xf3\x3d\x01\x0f\x44\x07\xac\xb5\xad\xb7\x85\x5c\xdc\xb2\x0f\x12\x75\xc5\x57\x7e\x7a\x1d\x27\xf1\x08\xec\xfb\x09\x47\xa2\x97\xa6\xa0\x66\x16\x13\xe1\x1d\x43\x96\x95\x96\xd2\x5e\x7b\x67\x0f\xac\x5e\xb0\x19\xc4\xe5\xbe\xbe\xd6\x07\xde\xb7\xb5\x2f\x3e\x06\x7e\x82\x67\xf3\xfc\x8c\x94\xb3\x26\xc3\x21\x64\x71\x53\xff\x7b\x38\xe7\xe4\x90\x44\x73\xa6\xa2\x21\xac\x6e\x67\xdd\xd5\x8f\x5a\x4f\x4e\x9c\xb4\xaa\x76\x43\xf7\x3d\x4e\x4e\x0a\xc7\x8a\xca\xa2\xf0\x29\x8c\x13\x62\x8c\x99\x45\xc2\x36\xd2\xf1\x83\x9c\x75\x37\x1d\x6d\x2a\xea\xc0\x15\x04\x25\xb8\xb6\x6a\x4a\xcc\x16\xcb\x42\x2b\xdc\x31\x28\xc5\x7f\xce\x55\xe0\x9e\xaa\xb6\x29\xd3\x31\x40\x11\x9c\x25\x5c\x02\x17\xe9\x68\x8e\xc7\x2a\x7a\x42\x9d\x81\xc6\xa2\xe1\x9e\xd4\xd2\x27\xf4\xe4\x5a\xb4\xd5\x93\xa5\x68\xa4\xa8\xaa\xe7\x5c\x9f\xc5\xe6\x73\x13\x43\xf3\x63\x14\x7d\x96\xf2\x9f\x45\x75\x71\x60\xff\xbb\x4c\x7f\x43\xf7\x4a\x97\xb3\x36\xf2\x59\x10\x2d\x67\x71\x36\xf5\x01\x2c\x59\x20\x4e\xf6\xde\x8e\xde\xd5\x7a\x79\x98\xb3\xba\x9e\x1a\xc5\x95\x57\x3d\x81\x1f\x9b\xe0\x12\x60\xcf\x6e\xe3\x7a\x2d\xed\x78\x8b\x11\xe6\x9b\x7d\x95\xfd\xaa\x0a\x81\x6d\x48\x7c\x90\xfc\x4a\x16\xb6\x93\xf2\xc3\xff\xa1\xf3\x14\x0d\xd8\x0c\x45\xc9\x61\x16\x6f\x55\xe4\x90\xc7\x28\x9d\x79\x2b\xb1\xc9\xe0\xa7\xbd\x57\xde\x8f\x84\x4e\x21\x0f\x0d\xe5\x1a\x0f\x9d\x88\xc4\x68\x80\xe2\x44\x86\xb3\xe9\xa3\xc7\xd0\x30\x3b\x7a\xb2\xb3\x88\x2d\x30\x87\x5f\x54\x68\xd6\x67\xb4\x50\xe7\x41\xcb\x21\xa0\xaa\xb4\x8b\xd9\x2e\x1c\x00\xe6\x06\x28\xbc\x94\x3f\x7c\x1c\xa5\xed\xcb\x31\x7b\xc1\x3a\x9c\x9b\x8e\xbb\x62\x84\x9c\xf8\xae\xc2\xa7\xeb\x74\xce\x5c\xf0\x9a\x7b\xf9\x7c\x25\x0e\x51\x66\x06\xa2\x19\x17\x21\xac\xaf\xa3\x0a\xc7\xfd\x0d\xfd\xf1\x55\x9a\x7a\x47\x62\xbd\x41\x8e\x3c\xe8\x7d\xfc\xf8\xf2\xb9\x97\x1c\x2a\x85\x43\xb2\x60\x2f\x61\x5e\x8a\x0e\xb9\x27\xf5\xb9\x61\xfd\xbe\x6c\xda\xe3\x95\x2d\x5e\x2b\xe0\xda\xac\xa8\xc2\x29\xd6\x9a\xc0\x83\x39\xe7\x62\x3d\x99\xf3\x7b\xf7\x81\xf8\x5a\xa6\x5c\x17\x0f\x57\x2b\x18\x50\x13\x38\x61\x6f\x69\xc2\x78\x82\xad\xb8\xc0\xec\x96\x0e\xa4\x57\x77\x9c\x67\x73\xc6\xac\x8b\x41\x96\x13\xab\x0f\xd6\x21\xfb\x20\x3b\x64\xd9\xfc\x60\x9a\xc8\x95\xf5\xb0\x66\x4b\x28\x42\xd8\x3d\x2a\x48\x2b\xef\xe1\x89\x96\x41\x1c\x93\x52\xa6\x5a\x2f\x32\xd5\x51\x60\xdd\x11\xcd\x67\x71\xc7\x11\xb5\x8b\xf5\x1d\xd6\x80\xe1\x66\x88\xa1\x46\x3a\x6b\x39\xb7\xae\x57\x7b\xea\x7e\xc3\xb9\x23\xce\x34\x1c\x5b\x41\xba\x75\x8b\x59\x2f\xa2\x52\x18\xaf\xbd\xd1\x45\x4b\x04\x2f\xa6\x64\xce\x4a\xeb\xa9\xdb\x76\x78\x9c\x09\xe9\x92\x11\x0d\xe2\x04\xa6\xe4\x28\x3b\x62\x72\xaf\xec\xbe\xff\x8c\x22\x65\x18\x9e\xeb\x1f\xa7\x10\xeb\x4c\x91\x14\x71\xa4\x4e\x8a\x67\x7b\xaf\x3c\x19\xd4\xfe\xb4\x59\xa7\x2f\xf5\xa1\xdd\x46\xd0\xad\xb9\x96\x19\x2e\x1c\xd4\xaa\xdb\x7e\x71\xf2\xf5\x5b\xb5\xb3\x2f\x7e\x3d\x52\xeb\x40\xbf\x5f\x5c\x07\xfa\xaf\x19\xa4\x32\x78\xd4\x5e\x17\xcf\xb3\xef\xd5\x9d\xf1\xe5\xb5\xfb\xa8\x60\x4e\xe9\x45\x34\x3d\x8f\x7d\xe6\x40\x8d\x67\x60\x2f\x87\xca\x3a\x00\xfe\xf7\xb9\xc2\xf7\x7d\x94\xad\x74\x41\x96\x87\x19\x81\x76\xb3\x5f\x0f\x32\x01\xb6\xcb\x78\x77\xc1\x03\xf0\xd0\x31\xe6\x15\x63\x94\x6b\x78\x4c\xf1\xaf\x4d\xa9\xfb\x42\x8f\x5d\x4b\xd5\xc7\xf0\x62\x61\x71\x3a\x68\xfa\x6f\x3f\xfe\x70\xf4\xfe\xc1\xe7\xb7\x9d\x2d\xbb\x1c\x1e\xe8\x7e\xab\x65\x22\x36\x01\xcb\x44\x42\x99\x00\x66\x4e\xb9\x63\xc8\x8e\x7d\x75\x24\xed\xef\x1b\x19\x4a\xcb\xd2\xbe\x0a\x72\x50\x7e\x40\xff\x83\x38\x3e\x8c\x6e\x29\x1e\x18\x70\xe2\xcb\x30\xfe\xa1\x74\xfb\x72\x75\xbf\x70\x42\x26\x6c\xa0\xc5\xf2\x9a\xc7\x26\x86\x21\x77\xef\xc7\x3b\xa2\xc5\x53\x77\x37\x28\xb1\x04\xcf\xda\x5e\x14\x9e\x5a\xa1\x13\x52\x11\x49\x9a\xfa\x31\x33\x4f\xb4\x75\xa5\xfc\xe0\x24\xe3\x32\x85\x04\x98\x0d\xec\x05\x0c\x4f\xd6\xdb\x0a\x84\x67\xaa\xd1\x95\x47\x3d\xfc\xfe\xf5\x4f\x3b\xef\x7f\x7b\xf4\x67\xb7\x4d\xf1\xa8\x46\x31\xe7\xc6\x12\x62\x38\x7c\x23\x93\xae\x6b\x45\x97\x45\x17\xed\xb0\xb9\xf4\xc9\x76\xc9\xd4\x91\xfe\x62\x9a\xb3\x66\xef\x18\x32\xef\x00\x21\xec\xc1\x38\x46\xf1\xb0\xee\x10\xad\x69\xec\xc3\x31\xa2\xc8\x3b\x85\xcc\x83\xd8\x93\x2a\x9d\x68\x27\xc1\x47\xca\xad\x9c\x7d\xa6\xae\xdd\x2e\x9f\x6a\x25\xa3\x16\x0d\xaf\x07\x19\x19\x3c\xd9\x08\x19\x19\x3c\xb9\x64\x32\x66\x32\xd0\x15\x92\x51\x90\x40\xf5\x63\x13\x34\x94\x2d\x5d\xf6\x62\x64\x97\x4d\xc2\xd7\xe4\xd4\x9b\x33\x31\x4c\x99\xe8\xdc\x36\xca\x1e\xf4\x53\xad\xf2\x63\xc8\x2f\x89\x78\xb2\xb2\xc0\xd5\xaf\x40\xd9\x8d\x4d\x2c\x40\xd1\xd0\x7a\xeb\xcf\x24\xd8\xb5\x3f\xda\xf1\xd2\x66\x99\xbb\xcd\x9c\xd7\x61\xf3\x28\x4e\x2e\xaf\x46\x5e\x0d\x73\x3f\x65\xe9\x3f\xff\xe7\xf7\xb7\xbf\xae\xe5\xdb\xd2\xab\xb0\xce\xc9\xf5\x58\xa6\xd6\x0e\x4e\x12\x74\x5a\xb5\xb0\xa6\x04\x0a\xd6\xa9\x15\xdd\xd4\xd3\x44\x79\xf0\x40\x88\x70\xaf\xcc\xcd\x56\xf7\x78\x8b\x36\x68\xcf\x59\x9b\x4e\x28\x15\x62\xa1\x0e\xea\x69\x2a\x0b\x63\x8f\xc1\xd7\x93\x92\xbd\xae\x62\xc8\x07\x5f\x97\xb4\xb8\x2e\x41\x13\x14\xc1\x38\xa2\xf3\xe9\x41\x4b\x38\x80\xa5\xe3\x93\x36\x3f\x4f\xd5\x59\xfe\xa4\xc9\xa4\xef\x94\xb0\xab\x1e\xab\x67\x69\xea\x7d\x30\xea\x45\x8d\x89\xdd\x65\xd7\x6c\x8c\x96\xd8\x58\xdc\x8b\x35\xee\xe3\xdd\x4e\x26\xd4\xa2\x65\xb2\x9b\xc3\xcd\xd7\x5e\x32\x87\x65\xd3\x11\xe9\xdb\xf1\x38\x35\xff\x5e\xa3\x53\x75\x6c\x76\x36\xe9\x6d\x9e\xd4\xad\xa1\x29\x15\x9b\x5e\x93\x21\xaf\x87\x35\x6e\xb6\x18\x18\xdb\x95\xd3\x15\xec\x34\xf8\x03\x5f\xb1\x32\xf5\x47\xbb\xcd\x67\x8f\xcc\x16\x9e\x79\xa5\xab\xa9\xa5\xb4\xba\x1a\x6c\xa8\x6d\x66\x34\xcd\xf5\xeb\x6d\xa8\xe2\xb6\xea\x5f\xbd\x9f\x61\x13\xb6\xcb\x39\xbb\x11\x86\xcb\xfe\xd6\x49\x21\x93\xd6\x92\xf7\x23\x6b\x24\xae\x7b\x21\x5c\x92\x35\xd2\xeb\x12\x1e\x57\x7d\x7c\x17\xe4\x36\xc8\x2a\x54\x42\xf9\xe9\x66\x27\xf5\x85\x5a\x8f\x77\x95\x49\x34\x5f\xea\x6a\x09\x7b\x1f\x59\x83\x6d\xb8\x4f\xcf\x72\xab\x6c\xcf\x9e\x3d\x28\xf7\xcc\xe1\xc8\x68\x5e\x22\x17\x67\xc0\x5d\xff\x3c\xcf\x00\x1d\xba\xf0\x4e\x5b\x00\xd2\x31\x58\x6d\x42\x4f\x5b\x70\x99\x2d\x7a\x8b\x55\xdd\x5b\xf2\x16\xa2\xe1\x3a\xf2\xb6\x8c\x60\xbc\x6a\x81\x9b\xfc\xc8\xd3\xa3\xc3\xe3\x1d\xb7\xc0\xad\x0b\xad\x03\x5f\x15\x25\xcc\x7e\xa0\xd8\x07\x99\x87\x51\x0d\x23\xfb\x6f\x16\x09\x90\x85\xc7\xd8\xa2\x39\xc2\xe2\xc2\x67\xb4\x98\x51\xc4\xd8\x5e\x9a\x44\x9f\xdb\x25\xf6\x47\xc0\x4f\x11\x37\x6c\x5d\x75\x61\x70\x20\x81\x70\x3f\xa8\xed\x64\x3a\x9a\x1f\xb0\xac\x95\xd7\x17\x5b\x55\x56\x5e\x78\x90\xa2\xc1\x67\xb4\x18\xa8\xb2\x9c\x7e\xc9\x72\xee\x6b\xa1\x54\xd5\x35\x15\x17\x84\xe8\x19\x14\xbf\x2b\x9a\xc5\x47\xfc\x58\xae\xba\xb0\xec\x55\x2e\xb6\x37\x85\x18\x1e\xc9\x2e\x55\x5a\xfe\x25\xbb\xa5\x3e\xf0\x44\x3a\x68\x0b\x32\x62\xf1\x5b\xfa\x30\xcb\xaf\x64\x8e\xec\x96\x4e\xe4\xc4\x2b\x74\x60\x4f\x5e\x56\x1f\x2f\xb5\x5c\x6d\x52\x03\x31\xe5\x96\x72\xd5\x4b\x35\x57\x3f\x2c\x54\x08\x44\xcd\x44\xf4\x52\xc8\xd2\x84\xf5\x53\xc8\x36\xaa\x8e\xb5\x29\x63\xe2\xc0\xdd\x7d\x00\x76\x1f\x36\x43\xfa\xa8\x47\x7a\xc6\x66\xf7\x89\xb1\x77\xe9\x19\xe6\x3c\x15\x92\x95\xd2\x96\x6a\xe2\x4f\x74\xb0\xdd\xa1\x8c\x5a\x1a\xe0\xb9\x38\x3f\xea\xd7\x5d\x39\xfa\x4e\xb0\x08\x4e\x38\x74\x30\xaa\xda\xd8\x92\x6a\x08\xcf\xa1\x0c\x55\xe2\x84\xa4\x07\x90\x0e\x38\x39\x3a\x92\x00\x25\x95\x88\xb6\xcb\x0d\x79\x6f\x0e\x3c\x73\x38\x83\x4a\xde\x85\x89\x2b\x40\x29\x7b\x26\xe3\xf3\xd9\x85\xcd\x8e\x54\x53\xb3\x87\x06\x75\xc4\x1b\xce\x9b\x9d\x4e\xaa\x94\xee\x97\xce\x2a\x17\x9f\xaf\x68\x51\x04\xab\xbb\x32\xa0\xcd\x1c\x21\xe2\xba\x41\x95\x70\x00\x8f\xe9\x37\xea\x11\xbe\xe4\xf5\xe9\x3c\x1f\x80\x79\xa3\x70\x62\x65\x21\x5b\x3a\x84\x6f\xa8\x2f\xe4\x12\x98\x75\xa8\xe5\xd7\x0c\x83\xe9\xfe\x75\xfb\x20\xec\xf4\xfd\xb2\x0f\xb0\x49\x20\x5b\x7f\x69\x74\x12\xc6\x8c\x8e\x27\x67\x42\x72\x4a\x19\x05\xae\xdb\x8a\x13\x36\x93\x45\x9b\xc5\xc6\xfd\x9e\x23\x6a\x79\x9e\x15\xed\xc5\x2b\xbe\x3a\xc6\xeb\x62\x66\x4b\x24\x97\x92\x42\x21\x38\xab\xc4\xe1\x41\x9d\x44\x50\xdf\x54\x83\x88\x50\x44\xa1\xb3\x16\x4c\x9b\x7d\xae\x2d\xf9\x15\x75\x14\x73\x95\x0b\x7f\x9e\x42\x3a\x88\x48\x2a\x7a\x6e\x07\x7d\x14\xbd\xf9\x8c\x50\xae\x87\x2c\x65\x55\xc8\x22\x3f\xd7\xb9\xda\x31\xed\x7a\xa8\x8b\x5d\xad\x5c\xd6\x49\xc9\x8f\xfb\x87\xdc\x3b\x5f\x33\xe1\xd8\xae\xd7\x3a\x19\x47\x3a\x8d\x90\x92\xd3\x7e\xc3\x8b\x5b\x55\xe1\x46\x96\xe1\xe6\x16\xc6\xd8\x2c\x8d\x06\x3a\x70\xb4\x60\xeb\xdc\xcd\x6e\x96\x6d\x7b\xf5\x54\x6d\xa6\xb7\x6b\x1c\x15\x36\x90\x6d\xce\x47\x66\x7f\x09\xc2\x5b\xb2\x6b\x67\xa3\x5a\xe9\xf3\x2a\x4b\xae\x22\x7c\x14\x3f\x54\x1d\xe2\x2a\x26\x4c\xaf\x25\xbb\x60\x95\x6f\x16\xcd\x9e\x4d\x04\xdf\xdc\x4a\xed\x24\xae\x94\xda\x9b\x91\x19\x39\x41\x74\x30\x45\x78\x9e\xb5\x88\xbe\xcc\x20\x8e\x35\xa7\xcd\xf2\x0d\xfc\xef\x3f\xa3\xc5\x01\x81\x34\x7e\xa6\xfc\x77\x82\x27\xcf\x0f\xc4\x9b\xf9\xd1\xe3\x58\x19\x4f\x32\xab\xc5\xd7\x76\x7e\x83\x20\xb2\x21\x66\x33\x22\xa7\xf8\xf5\x8d\xbb\x11\xf9\x7e\x49\x67\x51\x05\xa1\x7d\x6d\x57\x2b\xfb\xcd\xbb\xd9\xb5\xba\x88\x4c\x06\xe6\xa5\xab\xa5\xec\x17\x42\x91\xe3\x43\x9d\x66\xbf\x63\x9f\xe4\x2c\x76\xee\x50\x5d\x82\xa2\xce\x24\xc2\xca\xd9\xdb\x2d\x2d\x07\xba\x5a\x10\xdd\x51\x16\x4d\x93\x0b\x71\x60\x4c\x01\x83\x5d\x7f\x33\xe7\xde\x0e\xf0\x5f\xc4\x2a\x34\xb9\x29\xb9\xa7\x1a\x57\x58\x7f\x8c\x29\xc3\xbc\xf6\x7d\x2b\xd4\x67\xff\xbd\x2c\x4a\x5f\xfc\x7e\xd7\x13\x6d\x93\x74\xae\xe6\xcd\x49\x75\xa8\xa8\x9f\x8b\x81\x7c\xab\x6c\xcb\x7a\x33\x14\x73\x81\xfa\x4c\x8f\x4c\x1e\x91\x16\x19\xad\xec\xef\x6a\x54\x5a\x13\xd8\xcd\xc9\x4c\x45\x22\xb4\x4d\x41\x5b\xe6\x9a\x5a\xbc\x6d\x74\xa8\x6d\xc5\x28\x4e\x05\x3f\x03\x4c\x11\xe5\x9e\x29\x06\xd9\xa1\xf1\x96\x9c\x86\xba\x97\x72\xf5\x5a\xc9\x43\x7d\xde\xf4\x3c\x63\x57\x56\x93\xd5\xfa\x99\x66\x22\x17\xba\xd3\xd5\x2c\x6f\xfe\xd5\x3a\x5f\x58\x36\xcd\x65\x1f\x8c\xf7\x41\xfc\x7d\x9a\xa4\xa9\xe8\xbf\x7c\x89\xcc\xf9\x70\x03\xa3\xe8\xfe\xd4\x37\xc0\x9f\x77\xcd\x23\x2c\xbc\x55\x97\xa8\x2e\x38\x1e\x55\x81\xfa\x1d\x29\x57\x32\xf9\x5b\x8d\xd6\x6c\xab\x48\x19\x38\x9b\x98\xde\xee\x4e\x61\x13\xe7\x3e\x23\x67\x6a\x5f\xee\x37\xd0\x3d\x7e\x65\xf6\x7e\xe7\x15\xd3\x63\x65\x95\xfc\xf4\x9d\x09\xb4\xf6\x01\xd6\xd1\xe3\xb1\xca\xe0\xba\x3c\xd5\xed\x94\xeb\xc3\x8a\x56\x13\x58\xaf\x92\xa9\x14\x82\xe8\x36\xce\x51\x5a\xbd\x6b\xde\x1d\x2b\xa9\xfd\x67\x58\xc9\x9c\x55\x65\xcd\xf2\x37\xae\x82\x8f\x38\x9c\xf8\x77\x9c\x62\x73\x9c\x42\x87\x12\xf4\x62\x13\x9d\xf6\x5b\x1f\x3a\x5f\x3a\x8f\x28\x9e\x47\x7f\x01\x06\x51\xb5\x2e\x14\xe9\xb7\x06\x4b\x68\x0c\x5e\x70\x1d\xf3\x0f\x5c\xeb\xb6\x47\x78\x11\x43\x38\xde\x33\x21\x46\x66\xe1\x5a\xa9\x78\x73\x55\x83\xa2\x75\x8d\xb6\x68\x78\x56\x62\xa6\xad\xe5\xd5\xe5\x64\x6e\x90\x05\xaf\x78\x5c\xac\xb8\x17\xca\x69\x02\x1b\x67\xcf\x6d\xb9\x91\xa5\xfe\xdf\x71\xe8\xd2\x3f\xc3\xa1\x15\x1d\xaf\x25\x93\xb6\xb3\x84\xef\x78\x74\x1b\x8f\x2e\x3b\x6d\xad\x70\xb3\xbe\xec\x3b\xcf\x53\xee\xc5\xc1\xbb\x6e\xc9\x3e\x13\x71\xe9\x4c\xbc\x72\x70\xfd\x05\xf8\xb8\x03\x43\xc7\xbc\x5a\x7e\xf8\x5b\xb1\x48\x76\x77\x6b\x03\x3b\x3b\x3a\x11\xca\x8f\x7d\x0d\xbe\x01\x4f\x3a\x85\x01\x3e\x02\x8f\x2b\xcf\x55\x9f\xaa\x86\x14\x76\x30\x5b\x4b\x94\x92\xce\x6e\xd0\x2a\x46\x65\x4f\xe0\xe4\x52\x7b\x1b\x76\x6f\x56\x41\x2c\x2f\x28\x7c\xc2\xfe\xf7\x5a\xe1\x63\x7a\x87\x64\x8e\xe3\x35\xac\x0a\x25\xbc\xcd\x6b\xe4\xdc\x6a\x07\xea\x2c\xcd\x83\x8b\x1b\x5e\xd6\x34\x9c\xca\x5c\x33\x39\x19\xde\x14\xf2\xe8\x38\x4b\xd4\x53\x91\x03\xc0\x23\x54\x72\xdc\x29\x5c\x48\xd8\x50\x0b\xba\xd9\x42\x84\x46\xaa\xb5\x85\x06\xe2\x56\xef\x8a\xa6\x0e\x09\xed\x9b\xfe\x66\xff\x53\xa9\x70\x31\xc1\x7f\x7c\x25\x7a\x84\xa6\xba\x28\x2c\xc4\x0b\xfd\x45\xc4\x3b\x75\xd1\x3c\x5c\x9b\x32\xb7\xd9\x85\xd2\xe1\xa1\x0e\xe1\xc7\x2d\x01\x31\x6b\x21\x51\x16\x6e\x3e\xa8\x4b\x10\xdc\x75\x95\xe6\x5b\x29\xd0\x58\x43\x9d\xae\x1e\x69\x6c\x90\x06\xae\x07\x7e\xe5\x37\xf1\x9f\xff\xda\xd9\x39\x7c\xb4\x4a\x8e\x5f\x4a\x98\x9d\xeb\xd7\x0b\xc0\xd2\x37\xce\xf0\x34\x89\x16\x86\x12\xea\x00\x52\x7f\xd8\x95\x2e\x8d\x06\x25\x23\x81\xe4\xed\x42\x6d\x4a\xf3\x97\x49\xe5\x68\x08\xa8\x2b\xc6\xc1\x35\x3a\x9b\x35\x99\xfc\x3e\x05\x21\x37\x94\xf3\xa4\xbb\x27\x15\x81\x81\x8e\xb1\xd5\x91\xb8\x70\xa6\xc4\x59\x2b\x00\xc9\x7f\x36\x9b\xa5\x09\x8a\xc5\x19\x21\x4e\xb0\x43\x09\x06\x2b\xcf\x3f\x19\x58\x3a\xf2\x73\xf2\x30\xbf\x57\x2c\x5b\x8b\xba\xe6\xdf\xe1\x8d\xad\x8f\x37\xb6\xaa\x5b\xa2\x37\xfd\xee\x80\xc8\x7a\x03\x91\x6d\x28\x69\x71\x83\x10\x62\x0a\x7b\xf3\x5a\xa6\xe1\x6d\x26\x03\xec\x71\x03\x7e\xd8\x5a\x78\x61\x55\x5d\xaa\x33\x91\xda\x32\xf4\x2e\x56\xc8\xd5\x1d\x9c\x92\x18\xa6\xe5\xf5\x43\xb0\xe2\xc2\x19\xaa\x54\x53\xf2\x5a\xaf\x78\xac\x8e\xa4\xe9\xa3\xae\x55\x56\x51\x55\x71\xd3\xd0\xb2\x09\x6e\xcf\xf8\xeb\x15\xc9\xd5\x71\x34\xdd\x55\x9e\xd2\x48\xba\x1b\x02\x3f\xe4\xbb\xd8\x4b\x98\xa7\x8b\x8d\xa7\x72\xcc\x73\x86\x86\xde\x4b\x55\x6b\x26\x3a\x26\x44\x26\xa2\x3a\xb6\x3f\xf0\x12\xae\xe2\x3f\x0e\x90\x47\xd1\x94\x9c\xa0\xd8\x3b\xa4\x64\x5a\xe2\xff\x7e\x63\x60\xa7\x7b\x75\xda\x99\x23\xc5\x34\xfe\x1d\xe0\x8f\x56\xb4\xcb\x34\x89\x34\xa6\x0b\xdf\x6b\xdc\x5e\x23\xe7\x19\xf9\x26\x83\xf1\x75\x03\xe5\xad\x37\x11\x6a\xbf\x78\x11\xc4\x42\xe1\x3a\x40\xde\x1c\xc7\x04\xa3\xa1\xca\x2d\xea\x9c\x35\xdb\x85\x06\x9b\x5f\xad\xbd\xa2\x4f\x4b\x74\xba\xbc\x14\xde\xdf\x11\x03\x5e\x4f\x17\xc6\xc5\xa5\xf1\x96\x9d\x5d\xdd\x6c\x9d\xdd\xf3\xbd\x57\xd0\x67\xbb\x06\x4b\x5f\x12\x0a\x65\x57\xab\xc2\x75\xc0\xa7\xdc\x04\x66\x4f\x51\x1f\xdf\x8c\x66\x7f\xad\x30\xfa\x16\xff\x9a\x1e\xa4\xef\x16\x7b\x35\x2a\xbe\x86\x1d\xbf\x39\x50\x7d\xca\x66\x70\xb1\x38\x7d\xea\x1b\xb7\x14\xa4\xaf\x4c\xc0\x8b\x40\xe8\xbb\x04\x02\x5e\x1d\x3c\x9f\x26\xe0\x45\x62\xf3\xf5\xa7\x5f\x0f\x60\x34\x60\xa7\xdb\x0b\x6a\x98\x6a\x04\xf2\xbf\x4c\x22\x0b\x50\xc6\xd5\xe9\x54\x6f\xcc\xc9\x69\xab\x32\xd2\x63\xc4\x61\x92\xb6\x1a\x7f\x0c\x8f\x2f\xba\xf1\xbf\xb5\x0a\x8b\x64\x59\xef\x41\xd1\x82\xa1\x3e\x93\x4f\x5d\xd5\xb3\x59\xbc\xef\x8f\xbc\x6a\xb2\x7d\xa9\xaf\x56\xf6\x7c\x17\x6c\xa6\x66\xeb\xf2\xc5\xf0\xa5\x8d\x81\xca\xe5\x4d\xea\xf4\xfe\x2b\xe5\x4b\x4f\x9e\xcc\xe1\xec\xcd\xe9\xc7\x6e\xd8\xb1\x05\xd9\xde\x8e\x00\x10\xd4\x89\x90\xde\x30\x83\x42\x1e\x9c\xc1\x33\x73\x28\x40\x3b\xc0\xc2\x74\xb0\x84\x0a\xa5\x16\x1c\xa5\xe4\x00\xa6\x56\x63\x1a\x0d\x2a\x61\xde\xc1\x3c\x49\xb9\x97\x60\x4e\x74\xa5\xb9\x3f\xbe\x62\xe6\x40\x60\x0b\xc6\xd1\x74\x28\x2b\x90\x46\x10\x7b\x70\x36\x4b\x17\x4a\x71\x93\x15\x4d\x60\x6a\x9e\xe4\x44\x1b\x67\x65\x75\xb9\xc3\x79\x9a\x9a\x32\xa2\xaa\x03\xb3\x4c\x41\x94\x25\xee\xe2\x44\x82\x61\x78\x84\x6a\x75\x4f\xfc\x05\xbc\x83\x39\x97\xdf\x39\x40\x5e\x72\x84\x09\x45\xb1\x77\xa0\x5c\x47\xf2\xcb\xe2\x30\x49\xa4\x05\x09\x62\x8d\x67\xc5\x86\xde\x2b\x04\x29\xf6\xa6\x84\x22\xa1\x72\x8a\xb3\xc6\xbf\x90\x42\x2e\x92\x50\x09\x1e\xe4\xc8\xca\x93\xfa\x02\x2d\xad\xf5\xcf\xf4\x9c\xd5\x15\x84\x1b\x56\xa5\xc4\x86\x18\x26\xb9\xae\x13\x69\x8f\x93\x74\x2d\x47\xa9\x98\xd7\xeb\x42\x62\xcc\xfd\x4a\xd5\x2d\x77\x5a\xad\x79\x3c\xae\x55\xc1\x1d\xf8\x70\xee\x26\x2a\x5f\xfc\x15\xa6\x49\xec\x3d\x87\x1c\x46\x08\xcb\xe3\xa8\xc7\xe7\x9f\x00\xff\x4f\x92\xc8\x0a\xcf\xc0\xd3\x47\xad\x5a\x79\xdb\xb1\xd5\x62\xc1\x78\x5c\xce\xd2\xee\xdb\xe1\xe7\x88\x45\x34\x99\xd5\x17\xf4\x6b\xa5\x54\xa1\x05\xf7\xf7\x9b\x75\x86\x4b\x74\xae\x6c\x8c\x07\x88\x03\x7b\x23\x47\xff\x75\x00\x16\x3d\xda\xc3\x4f\xb6\xc9\x23\x77\x49\xef\x12\xfe\x10\x28\x56\x4c\x6a\x50\x54\xe4\x12\x61\xcf\xac\xba\xd9\xed\x82\x4b\x2f\x9f\x95\x9f\x6f\x9b\x19\x3c\x42\x03\x9e\x70\x85\xa1\xf0\x1a\x9d\x6a\xcb\x9c\x54\xb4\xfd\x4f\x31\x9a\x51\x64\x42\x68\xfd\x6d\x3e\x9d\x6d\x1f\x50\x12\x45\x24\x4d\x06\xbb\xdf\xfe\xbc\xf7\xf5\xff\x3d\x62\x7f\xbe\xfe\xf1\xe5\xbf\x76\xb7\xc9\x9c\x0f\x1e\x7d\xfb\xf5\x20\x22\x29\x11\x6f\xc4\x9f\x0c\xad\x3e\xcd\x28\x11\x2c\x81\xd0\xed\xce\x33\x2b\x97\xc8\x64\x4d\x98\xc9\xda\x71\xbe\x88\x13\x7e\xf3\x06\xda\x79\xec\xb5\xe3\x56\xd9\xd7\x82\xdf\x73\x4a\x52\x76\x93\xc6\x0e\xba\x01\x3a\xa9\x0a\x8a\x66\xe3\x00\xff\x7b\x5d\x55\x37\x73\x2c\xe4\x32\xb9\x16\x4d\x1c\xbe\xc5\xe2\xde\x03\xbe\x3a\x6a\x7c\x79\xc6\xba\x30\x3d\x2c\xc8\x28\x73\xe1\x59\xa1\xea\xbd\xba\xf6\xc2\x74\xe5\x2a\x81\x7e\xb3\x09\x70\x81\x4c\x3d\x04\x8f\xda\x00\xf0\xcc\x63\xbd\x91\xf9\x72\xe7\x6c\xbf\x0e\x5b\x3e\xe0\x1e\xe0\x7c\x5d\x2d\xcf\x76\xdd\xee\xbe\x3d\x2b\xbe\x7c\x11\xdd\xbb\xb6\x68\xc9\xd5\x32\x23\x05\xd8\xe4\xb7\xf9\xdd\xdb\x00\x9c\x7c\x91\xbc\xd8\xd3\x40\xc8\x8a\x1b\x75\x65\x71\x2e\x6b\x50\x2e\xf3\x0a\x79\x83\x1c\xd6\x88\xbb\x59\xac\xd2\x6a\x48\x2b\xbf\x26\xbd\x3b\x5b\x78\xdf\x62\xbd\xdd\xd9\xdc\x0a\xce\x86\x12\xab\xbb\x42\x88\xe9\x56\x14\xac\x8a\xd7\xfd\xd2\x26\xb4\x96\x39\x18\x26\xbb\x8e\xe0\xe5\x6a\xb7\x82\xb2\xda\x3c\x29\xfd\x43\x2a\xd7\x0e\x8b\xac\x0a\x28\xeb\x2a\x2a\xd7\x02\x91\xf5\xe3\xaf\x7b\x9f\x5f\x25\xdf\xfc\xb7\x5b\x53\x51\x50\x67\x42\x90\x62\x84\xf2\x22\x20\xab\xb8\xa2\x7e\xc8\x18\x62\xf5\xb3\x15\x59\xb5\xf7\xf1\xd9\x2c\xb8\xda\x0c\xe5\xaa\x24\xd6\x3c\x60\x76\x1d\xbd\xe4\x26\xc8\xe6\x7d\x47\x5a\xb4\xc3\x57\x2a\x9f\xa9\x1a\xdf\xe2\x34\xa8\x80\x3d\xd9\x7e\x10\x85\x3f\x37\x4b\x13\x5e\x75\x91\x00\x0b\xa9\xef\x9b\x22\xe0\xac\xd5\x52\x1c\xd5\xb4\xa3\x6e\xb8\x5b\xa9\x47\x90\x2d\x8e\xc9\x0a\xd9\x14\x5b\xe2\x07\x85\x20\x98\x81\xe4\xf5\x81\xad\x5c\x4f\x8d\x31\x8a\x8b\x1b\xb3\x76\x7d\x05\x64\xe3\x2a\x48\x4f\x25\xe4\x6b\xf0\x4d\x39\x42\xc6\x99\x7c\xb4\x4a\xba\xd0\x26\x04\xc4\x26\x19\xa3\x5e\x92\xe8\x98\x82\xd0\x4e\x78\x78\xd2\x55\x92\xe8\x79\xf8\xba\xa7\x4a\x15\x7e\xdc\x05\x0f\x7a\x45\x5b\x6f\x6a\xb4\x5d\x95\xc6\x46\xb5\xb1\xd0\xf9\x4d\xf6\xae\x97\xf6\xd8\xae\x3f\x5e\x5c\x3f\xbb\xc7\x57\x75\x72\xa1\x34\xe8\x83\x9b\xc4\x26\xde\x1c\x01\xae\x04\xa3\xd8\x2b\x44\x4e\x0b\xae\xab\xe5\x74\x07\x6a\x71\x0e\x55\x5c\x80\x2d\x56\xc2\x98\xb8\xa6\x7f\x65\x88\xf9\xdf\x13\xac\x7f\x5f\x3a\x76\x71\x1f\x80\xe2\x8c\x53\x36\x7e\xc2\x02\x43\x2e\x06\x75\x55\x44\x89\x38\xca\x85\xce\x86\x40\xe1\x52\x2f\x24\xfb\xef\xd4\x83\x97\x19\x80\x6f\xe7\xc6\xb5\x8c\xd2\xaf\xf9\x9e\x50\xcc\x9b\xdb\x09\x5d\x95\xd1\x4a\x65\x84\x52\x9d\x84\x19\x45\xb1\xc2\xd6\xc8\x04\x12\xdf\x8a\x9a\x74\xc2\x2a\xf7\x2a\x9c\x90\xe1\x10\x6b\xab\xed\x54\x0c\x9d\x4b\x21\xac\xf0\xbd\x07\xc5\xef\x95\x80\x8a\x3b\x6f\xd0\x75\xd1\xa7\xed\x2e\x3d\x2a\x76\xa9\x3b\xe8\x73\xc7\x39\xec\x04\xfc\x5c\x7b\xfa\xb8\x63\x96\x09\xce\xe3\x64\xf3\xec\x85\xfa\x4d\xa0\xce\x0f\x1c\xbb\x02\x98\x5c\xf1\xcd\x5d\xd3\x18\x3a\x0c\xbf\x63\xca\xb7\x77\x01\x69\xdf\x1d\x7b\xd8\x37\x97\xc0\xbf\xc2\xf4\x6f\x4f\xe5\x1e\x1b\xfe\xbd\x76\x1a\xb8\x57\x4c\x05\x37\x8a\x7b\x2f\x34\xa2\xa6\x28\xe6\x1e\xd1\xe7\x5d\x0c\xec\xbd\xf2\x24\xfc\xab\x4b\x0f\x2f\x4f\xd3\xc6\xd2\xc4\xb3\x16\x37\x9e\x2a\xee\xb5\xa4\x8b\x9b\x2f\x77\xea\x6a\xde\xcd\x3e\x29\xe3\x97\xbb\x98\x7a\xa7\x31\x54\x3d\x31\x85\xe0\x1e\x12\xb1\x41\x9a\xa8\xb8\xa2\xa6\x24\x90\x4e\x32\x7b\x6b\xd8\x53\x44\xa6\x53\x88\x63\x19\xf8\xb4\xad\xd9\x59\x26\xbe\x37\x86\x34\xd5\x84\x42\x99\x38\x19\x3b\xd2\xc9\x23\xd8\x9b\x95\x9c\x43\xf5\xb4\x69\xad\x92\x56\x43\xb9\x14\x41\x8a\x2f\x8a\x74\xaf\x5e\x3c\x7b\xf7\xba\x42\x3b\xc1\x61\xb7\x19\x8a\xe6\x34\xe1\x8b\x01\x46\xfc\x94\xd0\xcf\x09\x3e\xda\x96\x46\xf9\x04\x1f\x0d\x60\x94\x3a\x42\xc8\xd6\x20\xec\x3b\x04\x63\xb9\x85\x65\xc0\xda\xea\xd4\xec\xbc\x09\x3a\x23\x72\xac\x8b\xc7\xe0\xcc\x52\x71\x47\xac\x3e\x5c\x45\x52\xbe\x7e\x60\x0c\x0e\xd3\x6b\xd5\xed\x70\xaf\x8b\xdb\x81\x92\xf4\xba\x40\x32\xfc\xf4\xf5\xfb\x7f\xe2\x3f\xff\x4c\xaf\x08\x92\x41\x50\xc2\x0d\xc8\xa0\x03\xb1\xbe\x97\xda\xe4\xf7\x39\xf6\x42\x05\x96\xc1\xe0\x35\x88\xdf\x42\x89\x2c\x82\x35\x14\x34\xb8\x12\xfb\x87\x38\xee\x92\x7b\x0d\xfa\xca\x0a\xad\xee\x13\xa7\x1c\xf9\x9b\x64\xc3\x09\x53\x21\xbc\x82\x30\xde\x9c\xa1\xf8\x69\xf9\x58\x68\x10\x70\x3c\x29\xd7\xfd\xf1\x15\x45\x1e\xc1\xe9\xc2\x93\x61\xbc\x9c\x78\xec\x98\x9c\x7a\x09\x56\x65\xbd\xc4\x09\x7f\x48\xa8\x12\x2c\x68\x32\x85\x74\xe1\xe5\x01\x98\x1e\xc4\xea\xc0\xd2\xb9\xa2\xd6\x2d\x1d\x2d\x2c\x74\x93\x4c\x0c\x90\x2d\xa3\x13\x44\x17\x5e\x04\x19\xd2\x22\x4f\x3e\x82\x84\xc9\xe8\xe0\x44\x25\x2d\x54\xcf\x38\xbf\x5f\x7c\xa4\xce\x11\xbd\x83\x98\xb8\x83\x98\xb8\x83\x98\xb8\x15\x10\x13\xef\x48\x8a\xee\x00\x26\xee\x00\x26\x6e\x25\xc0\xc4\x3b\xc9\x02\x6f\x39\xbc\xc4\x3b\xcd\xe7\x7b\x82\x4b\x88\xd7\xee\xa0\x25\x36\x35\x09\x77\xd0\x12\x77\xd0\x12\x1b\x86\x96\xb8\x03\x97\x58\xd3\x1e\x72\xe9\xe0\x12\x96\x59\x61\x9d\xa0\x48\xdd\xcc\xb5\x82\x95\x78\xfc\xea\xe7\xf7\x87\xbf\xfc\xdf\xd3\xdb\x02\x2b\x21\x95\xe3\x0b\x05\x95\x10\x5f\xb8\xa5\x90\x12\x45\xe2\x5d\x04\xa0\xc4\x85\x13\xef\xea\xe0\x24\x24\xf1\x2e\x12\x4c\xa2\x2f\xed\xee\xa0\x24\x6e\x17\x94\x84\x8b\x7d\xac\xcf\x8e\xae\x43\x26\xf1\x09\xf9\x16\x3e\xff\x29\x3d\xbe\x1e\x99\xc4\xba\x7d\xab\x66\x69\xd3\xc2\xad\x4f\xb1\x15\x8a\x98\x7f\xf9\x81\xec\xf9\xb4\x6e\x20\x8d\xb8\x76\x84\xaf\xd1\xe9\x8d\x1a\xe0\x6d\x48\x51\x58\x6d\xe0\x9b\xcf\x1d\x96\x9c\xee\x2f\x96\x39\xac\x68\x7f\x97\x36\x7c\x97\x36\xbc\x7a\xda\xb0\x5c\x43\xee\x9c\xe1\x77\xfa\xd6\x5d\xc2\x70\x17\x63\xb7\x61\x3e\x2b\x5a\x4b\x32\xee\xbc\x2e\xaf\xc8\xff\xdd\xa0\x84\xdb\xa6\xf3\xad\x92\xa1\xba\x92\x75\x66\xfd\x88\x90\x12\xa7\x5b\x4b\xc0\xbd\x16\x19\xa8\xef\xde\x1f\xfe\xe7\x18\xb3\x7f\xd7\x48\xb8\x2a\xc1\x21\x4b\x36\xb5\x13\x50\x2f\x3b\xd9\x34\x3b\x89\xae\x44\xb8\xb9\xf5\x69\xa6\xab\x0d\xb3\x7c\xdc\x6e\x2a\x33\x73\xfd\x74\x4c\x29\x0b\x5e\x4c\x32\xe6\x46\x25\xba\xae\xf2\xdc\x23\xf0\xb8\xb9\x52\x4c\xb9\x9c\xdb\x86\xf8\x6c\x13\x8f\xad\x63\x31\x2e\x26\xd2\xc2\x42\xba\xd0\xf4\x02\x73\x2c\xcb\xb3\xa0\xf3\x2b\x7b\x04\x1a\xad\x3f\xbe\x6e\x32\x75\x83\x44\xbd\xdb\xb9\x94\xd0\xa6\xc5\xe9\x36\x61\x7a\xd3\x3d\xeb\xe2\x3e\xf4\x57\xcc\x99\x94\x1b\x70\x93\x09\x93\xeb\x8f\xf7\x4a\x12\x25\xfd\x42\x9a\x92\x0c\xdb\x5c\x35\x45\xf2\x72\x93\x21\x77\x2f\x3a\x19\xb2\x4f\xfc\xe1\xfa\x93\xbf\x42\x6e\x60\x63\x9a\x9e\xaa\xd7\xbc\x56\x52\x60\x69\x85\xac\x9b\xa5\x97\xf7\xe8\xc1\xaa\x39\x7a\x1d\xe8\xd8\x29\x3f\xcf\xb1\xe8\xbb\x65\xe6\x3d\xdc\x60\x66\x5e\x75\xcd\xdc\x15\x61\xbd\xaa\x22\xac\x92\x1b\x6c\xb2\x0a\xab\x54\x63\xee\xca\xb0\xae\x38\x11\x1b\x4b\xb0\x53\xcd\x5d\x6a\x21\x56\xf9\xc9\x4e\x1d\xd4\x9d\xbb\xb4\x32\xac\x9b\x8f\xd9\xaa\x9a\x25\x7b\xe7\xd0\x75\x92\xdf\xfa\xe5\xcf\x49\x46\x73\x21\xd9\x73\xd4\x36\x93\xba\xc9\x51\x7f\x67\xdd\x94\xb9\x55\x29\xf5\xec\xed\xcb\x12\xb5\x0c\x91\x98\xc4\x58\xbf\xd4\x7c\xb8\xb5\x16\x70\x27\x14\x86\x0b\x4a\x3f\xeb\x22\xe8\xf5\xbc\xb9\xb9\x0c\xb6\xb2\x55\x67\x45\x83\xa5\x02\x23\xdf\x1e\x1c\x26\x28\x8d\x19\xe2\x6c\x90\xa2\x23\x28\x91\x15\xae\x16\x3f\x6f\xf7\xa7\xc3\x47\xf0\x01\x75\x5b\x2f\xdd\x96\xc9\x62\x6c\x87\x19\x51\x83\x9b\xc5\x6c\x51\x78\x80\xd2\xc2\x16\xd3\xbb\x54\xee\x31\xa5\x11\x72\xf4\x85\xd7\xa6\xac\x98\xd0\x95\x2c\x63\xc7\x3b\x86\x6c\x60\xa2\x05\x72\x51\xb0\xd1\xd1\xc3\x66\x10\x77\x2b\x0b\x50\x3a\xda\x13\x3c\x9b\xe7\xa7\xba\xd2\x6f\x80\x3e\xde\x95\x21\x8d\x1c\x92\x68\xae\x65\xf4\x7a\x3c\x7c\x5f\xbf\x61\xbd\x50\x0d\x6f\xae\xc6\x3d\x1a\xe9\x40\x9b\x14\x3b\xa6\x56\x95\x2b\x2c\x28\x4d\xc1\xa7\x30\x4e\xc8\x11\x25\xf3\x99\x5f\x9e\x8a\x46\xca\x7f\x30\xc1\x58\x0e\xca\x3b\xc4\x19\x04\x85\x36\xab\x13\x13\x28\x85\x72\xb9\x5b\x70\x9e\xe2\xb3\x49\x4f\xa0\xd6\x86\x25\xd5\x1c\xf6\x5d\x37\xff\x26\x12\x09\xce\x12\x0e\xd3\xe4\x3f\x28\x8f\x2f\x9a\xb4\x14\x51\xa8\xf9\x84\x5e\x29\x16\xd9\xf5\x94\x7f\xd0\x08\x3f\x82\xe0\x7a\x01\x69\xfe\x92\xc5\x4e\x9b\xe9\x38\x46\xd1\x67\x47\xf6\x5b\x35\x7d\xed\x43\x06\x33\x58\xea\x72\xd6\x86\x95\xd2\xb5\x0b\x7c\x82\x95\xba\xe9\xd7\xea\x5a\x5a\x1f\xb5\xdf\xdb\xc9\x73\xae\xc4\xca\xf1\xad\x40\xae\xfa\x2c\xa1\xa6\x64\xaf\x5d\x47\x7e\x73\xfb\x5b\xb5\x2f\x55\x4f\x97\xb2\xa9\x49\x1e\x2c\xab\x9c\x0d\xef\xe6\x42\x94\xdc\x8c\x2c\x55\x2e\xc1\x42\xe7\x42\xe5\x9f\xa1\xc8\x36\x75\x17\x24\x86\x63\x94\xce\xbc\x95\xc4\x86\xe0\xa7\xbd\x57\xde\x8f\x32\x7d\x35\xac\x77\x3f\x7b\xb6\xca\x1e\xa3\x01\x8a\x13\x65\xe5\x28\x79\x0c\xcc\x29\xc7\x16\x98\xc3\x2f\xe2\x57\x76\x00\x12\xfc\x19\x2d\xd4\x41\xd2\x72\x7a\x48\x52\xaa\xf8\x11\xfb\xe4\x30\x37\x80\x7f\x1c\x15\xb3\xf5\xac\x57\xda\x16\x6b\xf6\x68\x2d\x58\x4f\xfd\x91\xba\x6a\xde\xea\x45\x2d\xb9\x97\xcf\x57\x62\x46\x65\xbe\xa3\xc2\xdc\xdc\xa9\x33\xfa\xeb\xa8\x92\x69\xfe\x1b\xfa\xe3\xab\x34\xf5\x8e\xc4\x7a\x83\x1c\x79\xd0\xfb\xf8\xf1\xe5\x73\x2f\x39\x54\x29\x48\x92\xdb\x7b\x09\xf3\x52\x74\xc8\x3d\x69\xf2\x18\xba\x3b\xdb\x7b\x2f\x17\x5f\xd8\x50\x64\x65\x9d\xdc\xb5\x51\x59\xee\xaa\x85\xb8\x07\xbf\x3f\xe2\xef\x8f\x1e\xba\x0b\x48\x3a\x21\x06\xea\x65\xb6\x15\xf7\x45\x8d\xb8\x51\xdc\x0f\xe4\xe8\xa8\x5a\xcb\xa9\x23\x2f\x6f\x63\xad\xaf\x48\x04\x53\xbf\x89\x7b\x8a\xb1\xe8\xa7\x2e\x8a\x39\xca\x46\x0f\xc8\x97\x3a\xfe\xd8\xc4\x66\x10\xe3\x34\x89\xb8\xda\x66\xaa\x9a\x19\x27\x1e\xf4\x52\xd1\x65\x0b\x52\xa0\x02\x6e\xe0\x0e\x37\xa9\xd9\xde\x92\x00\xa6\xb4\xd9\x11\xe2\x1e\x43\xdc\x4b\xb0\xd4\x2f\xdf\xc1\x43\xee\x31\x4e\x28\xf2\xc8\xa1\xbc\xa2\xbe\xfd\x7c\x4f\x22\x1c\xc4\x44\xd5\x3a\x3b\x41\x54\xbe\xc9\x29\xc4\x6c\x9a\x70\x9e\x17\x5f\x32\xd8\x08\xcf\xf7\x54\x25\xb4\x59\x2a\xb1\xf4\x62\x53\xe2\x8c\xf0\x63\x44\xbd\xe7\x7b\x95\x23\xa3\xe7\x61\xd1\xfd\xfc\xf5\x64\x8a\x3b\xe4\x68\x40\xa4\x00\xae\xd6\x88\x73\xfd\xb9\x66\xc5\x12\xdd\xbd\xe0\x8d\x6e\x21\xac\xa5\xb7\xf8\x22\xa4\x08\xba\x16\x68\xa9\xae\x96\x5a\x6d\xe6\x18\xef\xbc\xd8\x2e\xa6\xdc\x96\xeb\x48\x10\x5d\x4f\x62\x5f\xa9\x0c\xac\x4c\xb5\x5a\xa3\xf2\x3b\x97\x1d\xc7\xb7\x90\x4b\x94\x1f\xc8\x92\x31\x0a\x68\x25\x36\x74\x45\x0d\x3c\x49\x49\x40\x50\xdf\x2b\x83\x96\xf4\x18\x9f\x8d\xdb\xd4\x69\x88\xe5\x2a\x20\xa5\x51\x66\x68\xa8\x1b\x1d\xe7\x5b\x0b\x62\xa9\x7e\xa8\x17\xc0\x30\x37\xc2\x29\xaf\x01\x6a\xcf\x73\xf2\x32\xfd\xf1\xe1\x4f\xee\x6a\x96\x2d\xa8\x3d\xfd\xd1\x7a\x2a\xf6\x7c\x03\x23\xf1\x44\x27\x42\x6f\x27\x96\x09\xa8\xa1\x7c\x5f\x6b\xa4\x97\x15\x34\xa0\xc9\x6d\xcb\x25\xab\x54\xba\x68\x6b\x36\xef\x77\xf7\x7a\x17\xd7\x10\x41\xa6\x88\x66\xd4\x6d\x52\xca\xe8\x32\x16\xf0\x4c\xcd\x13\x39\xc8\xca\x1d\xac\xcc\x1d\xac\xcc\x8a\x40\x5a\xae\xc3\x03\x62\x82\x17\x53\x32\x6f\x2b\xff\x69\x1a\x18\x54\x4d\x47\x2a\xee\x8c\x50\xa9\x28\xea\xe1\xc8\xf6\xcb\xf7\xba\x1f\x49\x25\x8b\xc2\x06\x51\x6f\x24\x20\xc5\x2d\x86\xbd\x79\x74\x51\xb0\x37\x75\x70\x05\x1d\x88\xd4\x06\x7b\x53\x25\xd1\x25\xc1\x14\x34\x8f\xf8\xea\xc1\x08\x56\x72\x35\xd9\xd2\xd2\x26\xa4\xae\x6b\x85\x46\xf0\x7a\xf1\x11\x1e\xed\x3c\x48\x6e\x01\x1a\xc1\x87\x63\xa4\x15\xf4\x8b\x42\x23\xe0\xe6\x0b\xb7\x0f\x8d\xc0\x41\xbc\x0d\xa3\x11\x5c\x0e\xf1\xae\x04\x8d\x20\x27\xde\x05\xa1\x11\x5c\x0e\xed\xa2\x94\xe0\x6b\xb0\xee\x64\x37\x62\x0f\x32\x3b\xab\x84\xd3\x39\xd6\xf5\x1f\xf4\x07\xe7\x0a\x1a\xa1\x2c\x2e\x3d\x01\x96\x27\x76\x9d\x44\x6c\xc7\x7c\x88\x9e\x5d\xe2\x39\xc0\xae\x00\x55\x43\x46\x8d\x61\x72\xea\xcd\x99\x19\x29\x46\xa7\xde\xb3\xbd\x57\x6a\xc4\xeb\x13\xd1\x34\x0c\x79\xde\xea\x05\x81\x6c\xdc\x41\x71\xdc\x1a\x28\x0e\xa7\xf0\xb4\x01\x69\xec\x3a\x80\x71\xbc\x89\xbe\x49\xd2\xaf\xbf\x3c\x5e\xc3\x04\x56\x4e\x5b\xbc\x36\xd5\xff\xfd\x26\x38\x0b\xa9\x3b\xfa\x97\x9f\x12\x68\xcd\xfd\x45\x22\x76\xc8\xac\xe7\x9b\x35\xc6\xdb\x90\xf0\xb9\xe2\xc8\x37\x8f\xda\xa1\xe4\x9a\xbf\x18\x6c\x87\xa6\x7e\x59\xc9\x7d\x0c\xbe\x06\xdf\x80\x27\x6d\x79\xee\xe6\xb1\x3b\xdc\x8e\xbf\x34\x6e\x07\x37\x28\xb7\x0e\xe0\x8e\x22\x02\xee\x1d\x72\x47\x07\xe4\x8e\x0f\x2b\x48\xee\xe6\x5f\xce\xc4\x6e\x23\x76\x47\x6b\xee\x47\xad\xc3\xb0\x07\xee\x7c\xf9\xfd\x8d\x99\xfc\xeb\xe9\xbc\x29\x4b\xff\x9c\x69\x33\x7f\xa6\xaa\x75\x30\xf5\x6f\xd8\xcc\xdf\xee\x19\xea\x61\xc7\x17\x4a\x75\xad\x11\xbf\x16\xdc\xbc\x9b\xf5\x7e\xa3\x96\x7b\xbf\x2b\x78\xb6\xdf\x11\x16\xbb\xce\x37\x71\xe1\x1e\x94\x32\xfa\xf4\x9e\x5a\x94\x4d\x50\xf2\x5d\xfb\xb4\x32\xe6\xf4\x83\x1e\x98\xd3\x5d\x1d\x19\x2b\xbb\x31\x2e\x3c\x20\x61\x33\xbb\x48\xdb\x07\xeb\x5d\x60\x73\x1d\x57\xd6\x35\x6a\xac\x83\x63\xe7\x12\xd0\x99\x2a\x27\x7c\x1f\xb2\xb7\x71\xba\xca\x2e\xb6\xa3\xe1\x84\x8c\x1c\x21\x59\xcd\xc8\xcf\xe5\x24\x47\x69\x00\x71\x34\x49\xa7\x80\x1d\xa0\xe7\xfd\x86\x54\x8e\xe5\x7c\x76\x44\x61\x8c\x62\x8f\xcc\xa9\x3c\xa7\xd9\x82\x71\x34\xf5\x0e\x16\x1e\x34\x65\x07\xc4\x99\xce\x89\xa7\x18\x96\x47\xd1\x5c\x4a\xbd\x76\x7d\xc7\x24\x3a\x56\x25\x0e\xa0\x8c\x3a\xc4\xb2\xd8\xd1\x42\x46\x10\x4a\x81\x6b\xe8\x3d\x57\xc9\x9f\xa7\x84\xd2\x05\xf0\xd0\x09\x12\x0f\x92\xf9\xd1\xb1\x1d\x1b\x79\x0a\x99\x77\x4a\x13\xce\x11\x36\xf1\x8b\x24\x8d\x3d\xc6\x17\xba\x46\x42\xc2\x3c\xc6\x93\x34\x55\x11\x80\x43\xef\x27\x72\x8a\x4e\x10\x05\xde\x29\xf2\x62\xe2\x51\x14\x91\xe9\x14\xe1\x58\x0f\x2b\xc3\xe2\x15\xad\xe8\xf8\x48\x1d\xd5\x88\xd1\xa9\x6a\x77\xe8\xbd\x42\x90\x62\x4f\x95\x86\x92\x64\xf0\x37\x9c\x17\x30\x98\x26\x47\x14\x72\x34\xd0\xc4\x28\x66\x11\x3a\xa2\xfd\x5b\x93\x0b\xf5\xbc\xc6\x76\xc2\xa5\x35\xbb\xc3\xee\xa1\x97\x1b\x2b\x8b\xe3\x08\x07\x2a\x24\xb7\xa2\xc3\x04\x27\x52\x94\xe0\x12\xe1\xa0\x86\x29\x99\x66\x3a\x6a\x0a\x71\x25\xdc\xd9\x16\x78\x5a\xd2\x4b\xe3\xb8\x13\x7f\x94\xa2\xd0\x6c\x31\x30\xa7\x5f\x5d\xb2\xd8\x8c\xb0\xc4\x4c\x44\x83\x7c\x66\xff\x29\xce\x8b\xd9\x80\x71\x48\x79\x96\x30\x96\xf1\xe4\xda\x16\xea\x6b\x57\xb4\x0f\xb9\x42\xaf\xcc\xc4\x74\x2d\x48\xf5\x1e\x45\x14\x71\x4d\xa8\x0f\x5a\x86\xad\xa1\xd1\x63\xe0\x33\xf9\x78\xf1\x73\x13\xc9\x6f\xca\xeb\xb4\x44\x50\xfb\x3b\x8a\x9c\x1d\x8b\x79\xf4\x8f\x00\xea\xcb\x8b\x41\xc7\xad\xd8\x8f\x89\x54\x27\xfe\x7d\x44\x66\x2d\x09\x92\xdd\x27\x7e\xb7\x2e\x74\x2c\x0f\xce\x97\x71\xe7\x3e\xf0\x8f\x52\x72\x20\x23\xb6\x5d\x8e\x82\x26\x52\x77\x4a\x1c\x73\xef\x81\x95\x9a\xaa\x0b\x99\xbc\x26\xa0\x8b\x65\x4b\xe5\x7a\xae\x8c\x6b\x01\xbb\xf8\xef\xe7\x7b\xaf\x8e\x3e\x3f\x79\xe8\xf6\x65\x28\x98\x45\xa6\x91\x17\x4b\xb8\x8b\x06\x8b\x51\x61\x56\x38\xb0\x18\x41\xe6\xf4\xbd\x04\x54\xc6\xdc\xcc\x74\x35\xe6\xeb\x5b\x8f\xcb\xb8\xe2\x38\xcb\x07\xb7\x85\x0e\x75\x0c\xd9\xb1\xaf\xe6\x7a\x5f\xf9\xd1\x73\x60\x26\x6b\x75\xf0\x2c\x33\xf7\x09\xf0\xd9\x2c\x4d\x78\xd5\xf7\x0e\xfc\xfc\x28\xff\x26\x2f\xd0\xd6\x60\xe1\x69\x05\x88\x54\x18\x6a\x1f\x92\x29\x1a\xc5\xa8\x15\x27\xb2\x88\x44\xb5\x26\x64\xa4\x12\xcd\x2f\x06\x33\xd2\xdb\xbc\x4b\xa1\xb3\x53\x41\xe8\xe1\x0e\xb7\x82\xeb\x2c\x77\xb9\x15\x2e\xcd\xf0\x9b\x73\x36\x37\xa4\x64\x3d\xcf\xeb\x80\xfe\x71\xa5\xf0\x92\xae\xc9\xd2\x10\x93\xe0\x41\xaf\x6a\xb6\x9b\x1a\x6d\x57\x47\x50\xa3\x2b\xa8\xd0\xf9\x4d\xf6\xae\x97\x47\xa8\xdd\x27\x74\x71\xfd\xec\x8e\x89\xd4\x49\xd5\xae\xf5\xf1\x6c\x12\x8f\x72\x73\xc3\xbf\x12\x5c\x4a\xaf\x60\xb7\x17\x7c\x53\x95\x66\x5c\x15\x9c\x12\xf8\xdf\x2b\xf1\x4a\x5d\xd3\xbf\x2f\x17\xb2\xf2\xc1\x45\x43\x56\x96\x81\x31\xab\x32\x80\xdf\x58\x82\xb5\xd4\x01\x2d\x00\x74\xfa\xfc\xcb\xac\x68\x77\x3f\xe4\xcc\xcd\x2d\xd3\xcd\xda\x36\x3b\xc3\x63\x7a\x57\x65\xd8\x7c\xaf\x0c\x9b\x9c\x28\xc3\xa6\x2a\xee\x2e\x8e\x02\x09\x56\x76\xe8\xb0\x6b\xca\x30\xc3\x08\x62\x09\x55\xa7\xaa\xb7\xdb\x26\x4d\x89\xe1\x35\x25\x14\x79\xf0\x80\xcc\xb9\x6a\x50\xe6\xf6\x32\x99\x5b\x7d\x2c\x3e\x42\x4c\x47\x3c\x45\x34\x63\x86\xfc\x6b\x9a\x1a\x2d\x39\xd7\x9c\x2e\xf6\x5f\x83\x19\x45\x71\xa2\x23\x75\x8d\x0b\x73\x2d\x4c\xd6\x1e\x08\xb0\xd6\xe7\x4a\x80\xab\xda\x39\xd6\xfb\x1c\x5e\x17\x01\xd6\xea\xd1\xa3\x55\x21\x60\x3b\x1e\x06\x9d\x60\x60\xeb\x78\x4c\x4d\xf9\x5f\x6d\xbd\xfb\x9e\x60\xe9\x37\xb5\xd0\x61\xe5\xef\x94\x1c\x91\xb9\x66\x39\x26\x78\x7c\x3f\xaf\x15\x2e\x07\xc9\x8d\x71\xb2\x1b\x82\xac\x15\xf4\xbc\x1a\xe8\x6c\xd7\xb7\x74\xdf\x7b\xbe\x55\x0c\x91\x77\x25\x3e\x39\x62\x9a\x56\x05\xa6\xec\x88\x73\x6b\xb5\xb6\x31\xac\xdb\x8e\x3d\xec\x5b\x64\xdc\xbf\x42\xcc\x5b\x4f\xc1\xad\xea\xc3\x7b\x5d\xe0\x5b\xaf\x08\x7e\x2b\xb8\x93\xb2\x18\x75\x06\x36\xf5\x1a\x8d\xfd\x9d\x44\x84\x1e\x33\xd5\xaf\x84\x7a\x43\xf0\xc1\xe5\x4e\xd3\xc6\x60\x71\x75\x7b\x1b\xc7\xc5\xf5\x5a\xb0\x71\xd5\x77\xbb\x75\x53\x77\xb1\x0f\x3a\xee\xc6\x16\x51\xc7\x07\x3b\x3d\xd6\xd3\x92\xfe\xa8\x2e\x1e\xe0\xe1\x2a\x82\x73\xcf\x8f\x3f\x68\xcd\x62\xd8\x94\x95\x7f\x1d\xac\xd2\x44\xca\xf9\x42\x23\xbf\x16\x09\x0b\x1f\xfe\xf6\xfc\xc7\x5f\x7f\xfc\xed\x59\x37\x60\xab\x8b\xa9\xf5\xf9\xd2\x90\xe4\x72\x4d\xd7\xa5\x99\xb8\xe8\x82\x9f\x37\x6e\x94\x8d\xf6\x6a\xd1\xe7\xac\x69\x4f\xae\xe4\x75\x43\xd5\x2f\x20\x86\xd9\x5f\x33\x82\x39\x27\x9e\x3b\x80\xf9\xa5\x7d\xff\x36\x04\x31\x77\xde\xd1\xe6\x5f\x71\x03\xaf\xc8\x7d\x0b\xdb\xe3\xe6\x84\x10\xf7\xa7\x58\xe7\xa8\x0c\x27\xd0\x24\xf0\x3f\x7e\x54\x3f\xda\x45\xbf\x3d\x32\x5b\x48\x5c\xc9\x8d\x82\x33\x5c\x6a\x85\xc5\x5c\xb1\xcd\xb6\xa1\x81\xb9\xca\x95\x5b\x41\xb1\x32\xec\x97\x78\xc9\xc0\xde\x28\xf7\x97\x8c\xec\x00\xf5\x28\x60\x32\x2b\x19\x62\xa6\x43\xa2\xaa\xdb\x7f\x68\x3c\xf2\x72\x52\x44\x1b\x13\xb7\xe6\xb8\x5e\xe8\x41\xef\x84\x4a\xd7\xe9\xbe\x96\x4c\x72\x2d\x22\x0f\x8e\xdf\xbf\xfd\xf8\xe0\x75\xfa\xc0\x1d\x79\x00\x67\x89\x4e\x8a\x64\x59\xd8\x41\xd7\x38\x84\x8a\x44\xe3\x64\xd7\xc5\x63\xfd\x4a\x78\x75\xb3\x2f\x5d\xa1\xc0\x40\x0e\x07\x29\x91\x7c\x20\xf3\x26\xd0\xc8\xaf\x66\xaf\x6d\x9b\x85\x6b\x96\xfc\x04\xe4\xd7\xe4\x62\x06\xfe\xb6\x83\xd7\xd5\xed\x51\x1b\x8b\xaf\xd1\xea\xa1\x32\x56\x3b\xc8\x05\x42\xca\xd0\xb9\xda\xba\x11\x93\xed\x9a\x65\x3f\x9b\xc6\x26\x9d\xeb\xb4\x75\xed\xa6\xa4\x61\x83\x97\xb1\x14\x9e\xa0\xf3\xac\x21\x87\x8d\x79\x3e\xb5\xd1\x0c\x4a\x57\x74\x07\x34\x40\x9d\xe2\xef\x0c\x69\xc8\x6f\x5e\x44\x50\xc3\x33\xb9\xc7\x3b\xd4\xbd\x2c\x67\xa6\x74\x92\x10\x55\x42\xe4\x06\xd2\x4d\x56\xa9\xcb\xd4\xec\xc8\x57\xff\xf2\x3d\x5f\x03\xed\xaa\x4f\x8a\x43\x89\xf7\x3d\xc0\x73\x71\x80\xe9\xf5\xf0\x40\x2c\x22\x63\x28\x71\x84\xd2\x79\x9c\x70\x58\x93\x92\xe0\x96\x66\xca\x02\x6c\x05\x86\xf5\x50\xc2\x1a\x68\xe7\x66\x09\xf7\xb7\x4b\xde\xc3\x6a\x39\x2f\xab\xd4\xd7\xe9\xe3\x4d\xb6\x18\xee\x86\x9d\xc9\x9b\xa3\xc1\xca\x0e\xe5\xd2\x3a\xe9\x65\x50\xab\x93\x87\x6e\xb2\x43\xf9\xd1\xa5\x38\x94\x1f\xd6\x39\x94\xcd\x69\xda\xc3\xa5\x9c\x1d\xc0\x17\xee\x54\xde\xdc\x72\x5d\xa1\x34\x63\xbb\x33\x30\x5b\x80\x7e\xc5\x21\x57\x71\xd9\xad\xef\x0b\x2c\x7d\xed\x51\xf9\x6b\x8f\x7b\xf9\x03\xbd\x0d\xfa\x04\x4b\x3d\xfb\x7a\x1d\xbf\xe0\x66\x15\xa8\xf6\xa3\xa3\x5b\xcd\xc8\x6f\x72\xf7\x1f\x45\x87\x14\xb1\xe3\x01\x25\x73\x1d\xff\xde\xad\x03\xde\x05\x39\xb5\x7a\x10\xad\xaf\x73\xab\xc4\xc2\x7a\x39\xb9\xd6\x39\xe6\xab\xff\x5e\x13\x2f\x67\x8a\x1b\x71\x75\x99\x7f\x96\xcb\x2b\x97\x7d\x7a\x79\x2b\x6c\x2a\x35\x57\xed\xe9\xe5\x02\xb3\x9b\xdd\xa8\x2b\xcc\x6e\xb8\xa7\x4b\xec\x22\x27\x75\x63\x8e\x31\xab\xcd\x0b\x71\x8e\x99\x7f\x4d\x4e\xb2\xbc\x0f\x9d\xba\x6d\x77\xb9\xaf\xb3\xcc\x9e\xce\xab\x59\x7e\xbd\xc4\xe1\x72\xdb\x6b\x96\x9e\x74\x34\xb7\xa9\x32\x94\x39\x57\xbb\x90\x3a\x94\x49\xc5\x68\xde\x4e\xac\x6e\x4f\xad\x5b\xa4\x72\x13\x34\x7d\xf5\xe2\xd9\xbb\xd7\x15\xca\x0a\xde\xbb\x7d\x84\x38\x4f\xf0\x91\xca\x9e\x43\xb1\xb8\x8c\x0d\x0e\xdd\x65\x95\xb0\xec\x4b\xd8\xde\x1b\xa7\xd7\x0b\xbd\x02\x23\xca\x8f\x7e\xb3\x8a\xff\xdb\x91\x4e\x50\xe7\x36\x7e\x5c\x9b\xd2\x76\x15\x8e\xf3\x0d\xd7\xf6\xdc\xdd\xa0\xe5\x79\x1d\x77\xf8\xe7\x93\x6b\xe1\x06\x9f\x1d\x3e\xfe\xe7\x62\xef\xd7\x5d\xb7\xc5\x39\xf7\x4c\xfa\xc0\x57\x16\xf2\x6e\xae\xf1\x9f\xd1\x62\xd5\xa4\x35\xe9\x58\xfb\x19\x2d\xb6\x7f\xcd\x2a\x8f\x5d\x9a\x1d\x5a\x4f\xca\xc5\xa5\xac\xbd\x46\xa7\x37\x67\x6c\xad\x56\xce\xcf\x27\xad\x0e\xf0\x4d\xba\xbf\xbb\xb8\xbe\xd7\x75\x7c\x7f\x3e\x19\x9a\x75\x5e\x72\x7b\xff\x8c\x16\xde\xb6\x27\x27\xce\xe1\xf4\xae\xc8\xcf\x25\x8c\xa4\x19\xa4\xaa\x2a\xa9\xda\x19\xc0\xdf\x6e\xc7\xc5\xb5\x4b\x9c\xb2\x34\x89\xc4\x0a\xda\x01\x83\x5d\x97\x89\xbc\xad\xfd\x1e\x95\x07\xd7\x20\xdd\x21\x49\x95\x53\x46\xdc\xfd\x93\x24\x38\x73\xc2\x3c\x91\x0b\x09\xe5\x79\xe9\xf9\x80\xd4\xcd\x38\xce\xf5\x8d\xc9\x04\xec\x16\x82\x5a\x7b\x8e\x15\xf8\xce\xc1\xdb\x45\xae\x4c\xc2\x85\x5d\xd2\xaa\xb1\xa8\x28\xa8\x8d\xb2\x6a\xc1\xf2\x6f\xe5\x9b\x1b\x53\xe3\x57\x0a\x79\x68\x3f\xa9\xf3\xc6\xf5\xca\x4b\xd1\x21\x1f\x70\x9a\x4c\xdd\x6d\x01\xe7\x2c\xad\x0f\x66\xed\xe9\x80\x09\x6b\x23\x76\x50\x9b\x36\x3f\x19\x3d\x33\x56\x94\x95\x98\x31\xa3\x56\xb4\x85\x8b\xb5\x65\xa4\x9c\x42\x8a\x75\xd6\x6b\x4d\x21\x43\x77\x92\xca\x6f\xea\xbd\x42\x96\xca\x87\xe3\x84\x79\x3f\xff\x2a\x71\xcb\x65\x39\xc0\xcf\x9e\xee\xea\x50\x02\x69\x47\x50\x85\x38\x79\x3f\xff\xfa\xc7\x57\xcc\x3b\x4d\xf8\x71\xe1\x29\x06\xbc\x83\x39\xf7\x4e\x91\x85\x79\x13\x13\xa1\x75\x33\xa2\x9e\x8e\x20\x45\x52\x21\x16\x8a\x70\x76\x0b\x72\x0f\xa6\xe9\xd0\x7b\xc9\x95\x92\x8c\x8e\x20\x4f\x4e\x50\xba\xf0\x92\xe9\x0c\x46\x2a\x89\x45\x28\x99\x27\xc8\xc3\x24\x46\x5e\xc2\xc5\xf7\x21\x63\x24\x4a\x64\xd5\x3f\xd1\xf8\xd0\x7b\x8f\x90\x77\x80\x52\x72\x2a\xb4\x7c\x95\x04\xa3\x60\xa0\x99\xd0\xb7\x44\x23\xaf\x44\x6f\xdf\xab\xde\xca\x74\x18\x86\xd0\x86\xd4\x46\x21\x08\x52\x0c\x53\xb6\x6d\xa8\xb1\xb9\x3c\x17\x32\xa7\x5e\x5d\xae\x4b\x3e\xd6\x04\x2b\xa7\x9c\x98\x2f\x8b\x47\xf6\x2e\x8d\x9a\x5b\x49\x3f\x9f\xf4\x8c\x34\x01\xfe\xf7\x7a\xa3\xf7\x89\x39\x71\x22\xbe\xd7\x1f\xeb\xf5\x81\x2a\x65\x76\xdd\xf8\x64\xce\x9d\xea\xcf\xa7\x82\x11\xdb\x8c\xac\x54\x15\x6f\xf5\xbd\x9d\x13\x5a\xbf\xb5\x62\x5c\x4f\xf6\xcd\x66\x32\x77\x73\x60\x15\xbb\x5f\x76\xac\x77\x5e\x4a\x97\x1c\x00\x64\x8b\xb3\x2b\x69\x5f\xd7\x22\xe0\xe7\x35\x7e\x4c\xd0\x37\xf1\xef\x6e\xf5\x4b\x7b\x2c\xb3\x68\x1e\x2b\xc2\x27\x22\xd3\x19\xc1\x72\x89\x01\xff\xcd\x8c\xab\x82\xfb\xf2\xa7\x9c\x72\x5f\x39\xe3\x94\xbf\xa6\x93\x1e\xe7\xd4\x57\xae\x4e\x57\x69\x8b\x03\xea\x12\xd9\x91\xb0\x1f\xe5\x96\xef\x1a\xdb\xd1\x1e\xd7\xf1\xf9\xa4\x43\x40\xc7\x26\x75\x9e\x66\xad\x67\xe3\x5a\xc7\x46\xd5\x81\xfe\x3a\x54\x63\xd6\x66\x8d\x3a\xf4\xe0\x76\xab\x43\xdf\x5e\x92\x3a\xf4\xa4\x97\x3a\xf4\x04\x7c\xeb\x4c\x6c\xb9\x19\x11\xdf\x5d\xe5\x8e\x6e\x4e\xae\x76\x7d\xa4\x8b\x57\xde\xd4\x08\x82\x9f\x91\x9f\xfd\x15\x53\x32\xcb\xff\xa2\xe8\x04\x51\x86\xb2\x25\xb3\xca\x8a\xef\xa1\x87\xb5\x05\x9e\x7b\x9b\x09\xd3\xfa\xff\xd9\x7b\xd7\xed\xb6\x71\x64\x5f\xfc\xbb\x9f\x82\xe6\x3a\x5b\x4d\x4e\x20\xfa\x92\x74\xf7\x8c\xd2\x6c\x8f\x93\x78\x26\xd9\x9d\x38\xd9\xb1\x33\x7b\x66\x34\x3a\x5e\xb0\x08\x4b\x9c\x50\xa0\x1a\x80\xec\xb8\x6d\xbd\xcb\xff\x59\xfe\x4f\x76\x16\x6e\x24\x48\x82\x14\x75\xf1\x25\x3d\xe9\x0f\x1d\x99\x04\x71\x29\x00\x85\xaa\x42\xd5\xaf\x36\xb1\x44\x1e\x0c\xeb\x22\xa3\x40\x21\x57\xaf\xa9\xb5\x29\x2f\x92\x73\x48\x84\xce\xd2\x15\x67\x7a\x23\x9e\xe4\xf7\xc0\xbd\x20\x08\x31\xf4\x85\x75\x33\x8f\x14\x39\x60\xd3\xb1\x29\xf3\x9b\x9f\x26\x70\x88\xc6\x92\xd5\x2c\xe3\xd4\xb3\xbc\xeb\x92\xe9\x21\xe5\x9e\xe4\x9f\xd7\xfb\xc0\xd5\xe1\x70\x36\x53\x21\xa3\xc3\x34\x9d\xa6\x97\x88\xa8\x84\xd7\xbc\xe7\x15\xf8\x64\x59\x93\x24\x4f\x86\xe7\x28\xa3\xb9\x55\xba\x7d\xf7\xcf\x93\x59\xc2\xe2\xa9\x5c\x80\x2e\x89\x47\xe3\x86\xbc\xe8\x9b\x70\xbf\xd2\x50\x8e\x4b\xf9\xa9\x34\xc7\xc5\x67\xb5\xb7\xbe\x70\x75\xeb\x53\xcf\xdb\x9d\x9f\x48\x3a\xe9\x22\xcc\x48\x8c\x68\x86\x23\x49\x08\xbc\x2e\xff\xc1\x39\x8c\x90\xa8\x80\x7b\xe8\xb0\xd4\xf9\x67\x29\x00\xdd\x2c\x26\x50\xc2\x80\xfb\x4f\x11\x5f\x5c\x53\x2e\x93\xd2\x54\x61\xf9\x97\xb8\x2a\xff\x05\x5d\xd3\x45\x5f\xc9\x9e\xf0\x92\xfc\x0b\xf5\x71\x13\xef\x6b\x7f\xeb\x6f\xf0\xe5\x51\xe6\x03\xfd\x63\x09\x14\xbc\x25\x3f\xfd\xb1\xe6\x52\xad\x99\xbf\xe6\x6f\x97\xba\x5c\x5c\xb8\xa0\xd2\x69\xbb\x80\x9f\xdc\xf5\x9b\x6f\x85\x4c\xcf\xc8\x1d\x19\xb5\xc2\xd1\x36\x6c\x2a\xef\xe1\x0f\xc0\x40\x59\x90\xdd\x93\xc7\x08\xef\xdf\xb1\xe8\xe8\xb2\x8e\x56\x3f\xe4\xce\x68\x95\xe8\xa2\x7c\x0b\x99\x2b\x38\x97\x05\xcc\x67\xc5\xa9\xb5\x77\x43\x2f\xfd\xa5\x6f\x89\x97\xec\xa6\xdc\x14\xa5\x7e\xea\x87\x6d\x3a\xaa\xf7\xde\x52\x1d\x5d\xba\xf8\x82\xf9\x3c\x55\xa0\x84\x77\x34\x9f\x25\x16\x62\x50\xab\xf2\xa6\x0d\xc9\x2a\x1c\xe8\x2e\x27\xb9\xc8\xc8\x6c\x5d\x5f\x62\x55\x56\xd8\xe0\xe6\x66\xbd\xfa\xf2\x7b\xf0\x43\x23\x53\x5b\xcb\xc9\xc1\x9e\x5a\xba\x5e\x0a\x5d\xd2\xe8\xf9\x40\x69\x57\x36\xac\x9c\x2f\x13\x62\xf0\xf9\x32\x28\xa6\xf7\xaf\x31\x80\xae\x1e\x70\xb0\xac\xea\xb3\xda\x20\x48\x9a\xb2\xee\xc6\x82\x24\x9a\x15\x9f\x7b\x09\xfc\xac\x8a\x62\x8d\x4e\xe1\x9f\x2f\xd7\x04\xa3\xaa\x24\xd8\x59\xd7\x19\x5c\xf7\x68\x7f\x75\x2f\xf0\x4d\xd0\xb1\xc8\x25\x0a\x77\x1a\x76\x97\xef\x6c\x03\x54\x9c\xbf\x9f\xe6\xce\xdf\xf9\xed\xc6\xaa\xae\xe0\xee\x37\x5c\xa3\x96\x80\x39\xbf\xec\xfc\xcd\x99\xc2\x98\x6c\x1c\xda\x28\x33\x63\x7f\x43\x36\xda\xf0\x44\x6d\xcc\x87\x3b\xaf\xf2\x4e\x5c\xb8\xff\x91\xce\xb4\xe3\xb6\xec\x01\xbe\xce\x9b\x6c\xd5\x49\xa3\x83\x0f\x82\x6e\x74\x37\x8e\xd9\x55\x2b\xf7\x4a\x0e\xd9\x9b\xb9\x51\x87\x23\x84\xd9\xce\xe7\xcb\xbb\x71\xbf\xfe\x65\xe7\x6f\x8b\x94\xec\x45\x6f\x37\xe1\x67\xbd\x2a\xa9\x96\xf0\xaf\xde\x10\x05\x97\x71\xad\xde\xc8\x12\x6f\x59\x70\x45\x3f\xe4\xb5\xb3\x9d\x95\x3d\x8f\x5b\x38\x13\x2d\xeb\x9a\x5c\x85\xeb\x5a\xe5\x62\x7c\x1d\xbf\x64\x9c\x46\xa8\x9c\xa3\xfc\xa1\x6f\xc9\x9f\x5e\x1d\x8d\xcf\xaf\x3e\x25\xcb\x62\x75\x15\xef\x79\xb2\xc4\x08\x45\xb0\xcd\x7a\xff\x4b\x6b\x2d\x34\xcf\x45\x4f\x67\x3a\x92\xb6\xc5\x29\x7a\x3a\x46\xda\x6b\x4a\x24\x18\x8b\xb1\x48\x1e\x06\x19\x8a\x96\x3d\xdb\x64\x18\x12\xaf\x04\x62\x47\xa0\x43\xe4\xb5\xc9\xe3\x37\x6b\xaa\xf6\x9c\x6a\xd1\xda\x42\x3a\xce\x04\xec\xf1\xfa\x74\xcc\x3d\xda\x5a\xd1\x31\xa6\xd2\x27\x0c\xa7\x4e\x92\xe2\x11\x22\x0e\xfa\x12\x53\x46\x75\xae\xb6\x21\x64\x30\x49\x47\x6d\xa9\xda\x8e\x38\x35\x9e\x9f\xeb\x6d\x55\xdb\x5e\x5b\x6b\xdb\x3e\x0a\x9f\x96\x8b\x7f\xce\x76\x27\x9f\x8f\x7f\xdc\x44\xfa\x9c\x76\x5e\x2a\xc7\x7c\xf0\xf7\xeb\xa1\x62\xd0\xbb\x19\xac\x06\x5d\x22\xcc\xba\x34\x9d\x91\x21\xaa\xa2\xd5\xec\x83\x5c\x69\x6f\xb8\x9b\x29\x06\xf0\xcb\xad\x63\xc7\x51\xc9\xb7\x95\xe5\x8e\xd8\xd8\x73\x77\x80\xa3\xc2\x67\x61\x73\x9e\x36\x62\x8b\x6f\xc4\xd7\x66\x7d\xe7\x69\x2d\x53\x88\x75\xb6\x2c\x4a\x8a\x55\xf5\x5a\x0a\x2b\xa5\xee\xd9\x7f\xf2\xc5\x7b\xd1\xc4\xc3\x17\xcb\x57\x0d\x09\xf2\xc0\x39\x26\x34\x63\x58\xc6\x7b\x40\xf3\x92\x3b\x86\x04\x79\x20\x13\xec\x62\x28\x10\xbe\xe6\xee\x2f\x2d\x40\xde\xda\x5a\x59\x01\x36\x65\xf2\xcd\xbb\xb3\x46\x4a\x80\x56\x8e\x0f\x2b\x18\x7c\x05\x37\xb0\x9b\x7c\x13\x75\x16\x80\x32\xc4\xbf\x7e\x61\x71\x67\xb1\x5c\x7c\xad\x86\x48\xd3\x1a\x0b\xbf\xd6\x62\x6c\x4f\x2a\x5a\x6b\x72\xde\x94\xc9\xb1\xc1\xe0\x58\xb6\x03\x34\x41\x24\x10\x34\x8a\xa9\x90\xf5\x84\x00\xdf\xce\xec\x26\x4a\x6a\x93\x5b\xb5\x5b\x75\xe8\x61\xf7\x84\x04\xbe\x92\x1d\x61\x09\xb0\xf0\xcd\x1a\x18\x96\x03\x0a\x5f\x51\x9d\x59\xdf\xf8\x40\xc7\xe9\xd5\x43\x2b\x31\xaf\x3f\xbe\x9b\x7c\xfc\x95\xc1\x26\x24\x4e\x5a\xca\xec\x79\x5c\xc8\x0f\xd8\x46\x73\x29\x44\xcf\x71\xe9\x52\x1e\xd5\xf7\xad\xc6\x70\x82\x2f\x0b\xb9\xd9\xc4\x8a\xda\x46\xd2\x29\x28\xc9\xc5\xe2\xfd\x42\x25\x4a\x47\x60\x55\x18\x78\xdb\x0a\x58\x3a\x49\x47\x04\x4e\xc7\xd7\x4b\x57\x21\xa4\x46\x03\xb5\xd3\x8c\x81\xfa\x23\x70\x7f\x9d\xa1\x59\xe6\xb3\x6b\x95\xac\x14\xae\xa6\x3a\x7c\x8f\x34\xdc\x67\xd1\x75\x6d\xe3\xe0\x9f\x5f\x09\x46\x69\x14\x53\x05\x17\xd2\x02\xa9\xb4\x62\x69\x32\x7b\x07\x4c\xfd\xf7\xd9\xee\xb3\x65\xd0\x3e\x7f\x30\x81\xfb\xd4\xd4\xb3\x78\xf8\xf9\xba\xf5\xbd\x6d\xe5\x0c\xe5\xca\x9a\xd8\x56\x85\xb4\xa2\xc2\x57\x5f\x1a\xee\x53\x11\xba\x03\x13\x24\x5d\x65\xcd\xdb\x06\x65\x31\x73\xcc\x4f\xbb\x99\x39\xae\x09\x11\xbe\x31\x36\x74\xbb\xee\x44\x5d\xca\xe8\xd6\x74\x3c\x2f\x1d\x24\xf6\x6d\x5a\x1a\xa6\xe5\x50\x9b\x7f\xaf\x20\x75\x08\x62\x33\x82\x51\xe4\x5c\x8d\xe3\x84\x32\x47\x65\xd5\x75\x18\x9f\x3b\x3e\x22\xe0\x28\xef\x05\x91\x3d\x8e\x5c\x3b\x70\x04\x63\xbc\xf1\x19\xab\x8f\x07\x7c\x76\x07\x10\xc5\x25\x36\xd5\x64\x4c\x12\x62\xc5\x26\x94\x92\x76\x79\x80\xdd\xf2\x5d\xb0\x9b\x27\x42\x95\xc7\xae\x2d\x15\xf0\xd3\x36\xfa\x07\x2f\xb6\x92\x06\xb2\x54\xa6\x09\xa7\x25\xe4\x46\xa9\xec\xca\x01\x53\x58\x59\x71\x71\x35\xdd\x44\x66\xe0\xb5\x67\x9a\xa8\x5b\xbb\xad\x25\xfc\x07\x02\x5f\x76\x95\xdd\xb0\x2a\x04\x96\xa4\xb0\xc5\x03\x75\x36\x63\x13\xdc\x24\xcd\x1a\x73\x36\x97\xfb\xfd\x3d\x70\x19\x3c\xef\xca\xbc\xcb\xa6\xd2\x3e\x30\xcd\x21\x43\x66\x8d\x4c\x28\x1a\xb3\xd4\xf8\xd5\x42\x73\x0b\xce\xb6\xaf\x11\x4c\xd8\xd8\x79\x39\x46\xc3\xcf\xb4\x7e\x15\x06\x52\x22\x16\x85\x87\xb2\x6c\x21\x0a\x21\xa6\x5d\xb5\x8c\x5b\x7c\x32\xb0\xdb\xdc\x9a\xba\x79\x82\xc8\x65\x3c\x44\xce\x1b\x4c\x19\xc4\x43\xb4\xb0\xab\x54\x7e\xd0\xb6\x9b\xe5\xe2\x59\x17\xcd\x14\xf3\xb9\x44\x0c\xb8\x14\xa6\x3a\xb2\xfc\x60\x3e\x0a\xe7\xa0\x53\x12\x4f\x9d\xd3\x78\x82\x16\x0d\x85\x30\xd6\x72\x14\x46\x49\x3e\x00\xb7\xf8\x59\xfb\x0e\x9a\x18\x11\x2d\x28\xad\x35\x8d\x96\x94\x2e\x16\x5f\x61\x31\xbc\x43\x0c\x0a\x4d\x69\x41\xcf\x26\xba\x5c\xbb\x9e\x95\x8b\x0f\x1a\x55\x8e\xcd\xb2\x86\x25\x53\x73\xaf\x94\x39\xe6\x30\x8a\x88\xce\x1a\x60\xfc\x2e\xb7\x57\xe2\xbf\x46\x49\x1d\xc5\xb5\x09\x0b\xd1\x5d\x78\xb8\xee\x49\xcb\x65\x3a\x63\x09\xe2\x1b\xc1\x7e\x64\xb4\xb0\x9f\x2f\xd6\xd2\x96\x46\xd8\x2b\xbc\x5d\x39\xf5\x5c\xc9\x3a\xb1\x8e\x3d\x69\xa7\xc0\x99\x1f\xd8\xb8\x34\xd9\xfd\x9f\xd9\xe5\xc7\x97\xef\xda\xf9\xb3\x58\xc2\x28\xe3\x88\xf3\x0a\x31\xa2\x6e\x76\xd8\x14\x3d\xe0\xe1\x79\x97\xa2\xa1\x86\x8e\xf9\x63\x41\x2d\xb7\x86\x66\x2a\xc5\x86\xc1\xf3\x29\xc4\x32\x6c\xa7\xbd\x5f\xa9\x0b\x5c\x7d\xa6\xae\x70\x9d\xa7\xf6\x86\x31\x45\x36\xf3\xfd\xa0\xcd\x3d\x89\xf8\xda\x05\xee\x89\x50\xf5\xcd\xeb\x68\x60\xeb\xad\x2d\x9b\xd1\xf2\x6a\xe8\xca\xb6\xfa\x0d\xda\xe9\x5b\xda\xe8\x73\x4d\x7e\x0c\xf9\x0f\x47\x12\xdd\x91\xab\x28\x68\x15\x6c\xb3\x69\x7b\xb8\xa9\x33\x96\x31\xf5\xfe\xb4\x09\x93\x74\x85\x01\xac\xcf\x4e\x26\xf9\xa1\xfc\xa0\xac\x24\xfd\xf0\x77\xfc\xf9\xcd\xe1\x0f\xeb\xb1\x12\x43\x16\xb8\x3f\x2e\x62\xec\x46\x2e\xe2\xb4\xc0\x0b\xcd\xaf\xf8\x74\x87\x9b\xf8\x44\x2a\xe8\x5f\x08\x69\xae\x6b\x72\xb5\xed\xbf\xf2\xd6\xdf\xd0\xb6\x6f\xb1\xe5\x2b\xdb\x5d\x13\x2e\x68\xf0\x2e\xd9\xec\xa5\x53\xf3\xee\xb6\x0b\x0a\xeb\xec\xf3\x6c\x84\x6b\xef\x71\xae\x5f\x3c\xf0\xf6\xfe\x75\xfa\x57\x38\x3b\x9e\x7c\x5a\x6f\x7b\x13\xae\x81\x75\x19\x89\xa7\x5d\x16\xcb\x05\x76\x87\xbb\xdc\x59\x0c\xff\x20\x88\xa6\x00\xda\x84\x4b\x41\x3d\x98\x61\xd4\x2a\xd1\x69\xc4\x16\x1a\x5b\xde\xc5\x38\x9e\xcc\x26\x2d\x4e\xb8\xbc\xd6\xa8\xb5\x09\xa7\xd6\xf5\xab\xa0\x46\x4f\x62\xac\x6f\xf8\x26\xf0\x0b\xef\xce\x5f\x88\xd4\x85\x5e\xc5\xa3\x58\xac\xb1\xfe\x7e\xe9\x12\x6e\x42\x97\xea\x72\x0b\x42\xa0\x28\x86\xf8\x61\xe9\x20\xba\xf0\x08\x48\x21\x5b\x7e\x58\x5a\xc0\x2f\x77\x41\x08\x1b\x5b\xb7\x3d\xf9\xde\xbc\xfb\xec\x8a\x7f\xb2\xd3\xc8\xbc\x14\x5d\x74\x4f\xda\xc4\xdc\x37\xca\xdf\x09\x5b\x15\xf4\xcf\xa8\x24\x33\x80\x3d\x34\xfe\xdf\x3f\x3f\xbc\x3a\xff\xc7\x35\xb6\xbb\x19\x14\x53\x7d\xda\xdc\xa1\x0d\x0f\x32\x43\xb6\x39\xc9\xcc\x7b\x75\x22\x55\xdd\x49\x61\x18\x06\x1f\x42\x9d\x94\xd7\xb5\xcb\x2a\x90\xaa\x07\x31\x9e\xce\x58\x75\x48\x55\xb3\xb7\x88\x7a\x92\x2e\x1b\x42\x1d\x38\x4f\xbf\xd8\xad\xe1\x6a\x7f\x58\x1c\x4b\x4d\xcc\x25\x13\x8b\x29\x73\x33\x95\x56\x5c\xfe\xd3\x39\xbf\x76\xb8\x58\xb7\x33\x15\xce\xa6\xf7\xe3\x54\xba\x64\xda\x35\x77\x83\x6e\x81\x6a\x09\x59\x5d\x23\xdb\x7b\x07\xb6\x10\x91\x5b\xf9\x06\xba\x25\xd4\x55\xd1\xb7\x6e\xac\xec\xea\x45\xf5\x41\x04\x75\x0b\xe4\x19\x60\xb8\x0c\xe6\xf6\x15\x37\x1a\x66\x96\xf3\x40\x39\x29\x19\xbe\xbb\xfb\x6a\x39\x55\x9d\x50\xac\x77\x78\x16\xad\x79\x53\x1e\x84\x6b\xd9\x24\x36\xec\x3d\xd8\xd2\x2e\xa1\x3d\x07\x21\x11\x3e\x06\x19\x99\x5b\x5e\x7e\xdd\x8b\x27\x5f\x8b\x02\x0b\x55\x9c\x3b\x73\xbb\x2b\x1c\x6b\x9b\x38\x20\xb3\xeb\x90\x07\x3d\x20\xe9\xe9\x93\x57\xe8\x9c\xbe\x5a\x4f\x01\x92\x2b\x39\xbf\x8a\x79\x28\x53\x69\x4e\xd5\x95\x0e\xb9\x9c\x91\x99\x03\xaa\x4d\x68\xf8\x26\x0b\x31\x74\xab\x7e\x72\x0d\x47\x8f\xec\x29\x16\x5e\x17\x6e\x1e\xa7\x78\x92\x81\x4e\xaf\x63\x31\x5d\x83\x37\x6d\x8c\x2f\xb5\xe2\x49\x05\x7e\x54\xb8\x22\x14\x00\xec\xc2\xad\xe6\x38\x8d\x50\xe0\xfc\xc5\x82\xc7\x0e\xa4\xf7\xb2\x7b\x3f\x48\xf3\x6b\x04\x79\x37\x21\xcd\xaf\xe3\x1a\xb4\xb0\xc0\xc3\x5b\x8a\x72\x62\xae\xc6\x2d\x05\xd6\x3a\xdd\xd1\x18\xee\x0f\xca\x27\x77\x48\x72\x35\xbe\xba\x78\x69\x57\x24\xd0\x17\x34\x9c\x31\x21\xf0\x72\xb1\x27\x11\x2a\x38\xa5\x50\xc0\x63\x0e\x53\x7c\x11\x93\x49\x55\xb9\x28\xc3\x9a\x5a\x38\xe3\x45\x8c\x92\x48\xc8\x8a\x2d\x32\x8e\x68\x40\xa6\x56\xf7\x41\x55\x47\x96\xbd\x8c\x65\x8b\xad\x23\x41\x9e\x18\xfa\xa2\xc1\x3c\xab\x66\x65\xed\xf7\xa9\xd1\x04\x5d\x67\x0c\x69\x57\x3b\xaf\xe6\x5c\xac\xc9\x31\xcf\x02\x9f\x79\xac\xb8\x4d\x83\x95\xa0\xaa\x8b\xc0\x19\x4b\x2f\xd2\xa1\xf0\x17\xcf\x7f\xab\x71\x29\xfd\xa1\xe8\x09\x24\x3b\xad\x3e\xc7\x52\x2c\xd5\x4d\xf3\x8f\x52\xac\x5a\xa9\xe3\xe4\x4a\x9e\x37\x5c\xaa\x78\x4d\x45\xd5\x25\xab\x30\xd7\x89\x04\x49\x6b\xbd\x83\x9c\x9a\xf8\xc7\xaa\x48\xf7\x6e\x46\x99\x08\xfd\x70\xc4\x09\xe2\xbc\x3a\x3e\x71\xc6\x29\x65\x7c\x28\x81\x7c\x3b\x4c\x31\x83\x31\x76\xf6\xba\x3f\x3c\x73\x86\x63\x48\xe0\x90\xf3\x02\xc7\x93\x06\x13\x0a\x9c\x04\x31\x26\x7e\x40\x1c\x39\xe3\xeb\xe9\x18\x61\xea\xcb\xbf\x26\xb2\xfe\x51\x8c\x65\xaa\x11\xa8\x0a\x07\xce\x7b\x3c\x44\x8e\x5c\x6d\x11\x90\x9c\x7a\x08\x31\x4e\x45\x77\x24\x51\xa2\xa6\xab\xae\xda\x7b\x8a\xd2\x82\x6a\x87\x9b\xe3\xd6\xba\x78\x96\x7c\x0f\x0a\xb5\x8b\x45\x21\x22\xfa\xa5\x93\xa1\x89\xcc\xdd\x5e\xb1\xab\x0c\xac\x55\x3e\x10\xab\x13\x59\x01\x5b\x8d\xaf\x11\x47\x0b\x06\x5d\x89\x26\x0a\x2d\x76\xe0\xc6\x7d\xf4\x0a\xd1\x21\x89\xc5\xb7\x8e\xf7\x5e\xd5\xe1\xd7\x19\xb3\x7e\x94\x2b\x13\x12\x04\x0b\xfd\x52\x3b\xc3\xa8\x6c\x8d\x0d\x62\x99\x95\x42\xc5\xb6\x79\xb0\x1d\x8f\x4d\xeb\xa9\x72\xe2\x1f\xbe\x7c\x7b\x72\x76\x74\x7c\xf8\xe2\xed\xd1\xab\xb6\xc1\xd3\x36\xde\x6b\xd8\xfb\x13\x69\xc2\xb1\x1a\xe5\xab\x08\x5f\x1f\x75\xf9\xea\xa0\x1a\xc5\xa4\x17\xd7\x0e\x8c\x84\x93\xb1\x68\x51\xf8\x15\x8b\x0b\x27\x38\x41\xf2\x70\x04\x22\xbe\xeb\x2a\x4e\x12\x07\x4e\xa7\xc9\xb5\xc3\xc6\x32\x24\x0c\x26\x89\xc3\xd2\xcf\x08\x53\xbd\x51\xc5\x26\x16\xde\xe4\x66\x0d\xf6\xbc\x36\x86\x34\xc8\x5b\x56\xf8\xd0\x46\x80\x42\x39\x83\x8a\x71\x33\xa8\xf3\xa5\xb8\xea\x90\x2d\xb1\xdd\xc3\x97\x6f\xf9\x2a\xe7\x24\x79\x25\x0b\xd0\x6a\x5c\x43\x75\xb2\x1b\xe7\x63\x9a\x26\xf1\x30\x5e\x6a\x4a\x3e\x18\x9f\xac\x3c\x2b\xba\xdd\x07\x99\x18\xd1\xf8\xf5\xe2\xa9\x11\x18\x78\x6f\x22\x84\x59\xcc\xae\x17\xce\x95\xd8\x7e\xd6\x19\x13\x14\xbb\x6e\x37\x67\x0b\xf9\xa0\x45\xf1\xdb\xa4\x64\xa3\x1d\xd9\x34\x33\xd9\xdb\x17\x2e\x96\xf0\x3c\x41\x91\x5b\x4e\x91\x94\x92\xf2\x31\x14\xd3\x0f\x24\xa6\x2c\xc6\xc8\x1d\x94\xfc\x5a\x62\xaa\xb4\x3e\x03\x64\x20\xaf\xda\x90\x04\xf6\xb3\xf3\x3e\xcf\x2d\xf4\xb4\x86\x4b\x16\x60\x43\x65\x6c\x93\x29\x37\x9d\xc0\xcb\xb5\x90\x40\x97\x26\x4a\xcd\x78\xd7\x1e\xa8\x0a\xd5\x58\x73\xa0\xe5\xe3\xb7\x66\x68\xaa\x53\x04\x09\x3b\x66\x3d\xf1\x95\xc0\x5e\xd7\xa7\x97\xf2\x7d\xf3\x79\x03\xf3\x44\x23\x38\x65\x75\xcb\x56\xd9\x04\x4a\x30\xb5\x45\x71\x34\xdf\x8a\xcb\x41\xab\xe7\xe6\x0b\xae\x6b\xc8\xc8\x98\x28\x86\x49\x3a\xca\x18\x83\xd6\x48\xb8\x1e\x7f\x48\x90\x60\x50\x74\xa6\x7e\x5c\x41\xcc\x38\x7b\x92\xd8\x4d\x4a\xfb\xd6\xbc\xe8\x60\x09\x47\xd2\xc5\x6e\xa9\x4b\x46\x45\xdb\xe6\xb6\x20\x2b\xe5\xd0\xa2\xc6\xb4\xab\xaf\x6a\xe7\x3d\x8f\x6b\xd2\x70\x55\xc5\x15\x50\xc4\xf0\x2d\xac\x88\x57\x59\x7b\xed\x2c\xa5\xf5\x48\xcb\x0b\x43\xf3\xc4\xfc\x2d\xe3\xe3\x2f\xc7\xd2\x35\x97\x41\x65\xfe\x81\xfb\xe7\x5c\x5f\xfd\xf3\x30\x5b\xdf\x26\x30\x6b\x8e\x65\xa1\x01\x11\x6c\x69\x28\x2c\x16\x57\x60\x8b\x9d\x59\x3e\x2a\xad\x7c\x56\xdc\xe1\xcd\xa7\x69\x65\x58\xd7\x52\xf1\xa8\x50\xdd\xe2\xcb\xd7\xcf\xae\x76\x93\x9a\x10\x6b\xad\xa5\x2f\x0b\x4a\x56\x42\x86\xbe\x1f\x70\xb7\x7f\xa4\x33\x92\x8b\x46\xc2\xd7\xea\x1c\x21\xcc\xe5\xb0\x8d\xc0\xbb\x29\x79\xee\xba\xd0\xcc\x57\x81\xed\xb6\x11\x32\x52\x78\xb9\x11\x32\x52\x78\x79\xcf\x64\x7c\x10\xa8\xc1\x3a\x32\x4e\x20\xf9\x8c\x22\x61\xbd\x16\xfd\x6a\xc0\x07\x5c\x82\xa8\xb2\xaa\xb5\xc8\xda\x00\xae\x57\xe5\xca\x25\x97\x07\x6d\x34\x11\xff\x4a\x67\x09\x42\x99\x64\x60\xf5\x02\x79\x4e\x72\x15\x7c\x2f\xb2\xc6\xb6\xcd\xcf\x7b\x4e\x0a\x5a\xc1\x9f\x72\x7f\x9f\x61\x8a\x87\x50\x78\x0d\x7a\x45\x91\x55\x36\x53\x42\x67\xcb\x4a\x57\xdf\xbb\x3d\xa7\x9c\xc5\xad\xd2\x57\xe0\xfa\x6e\xfb\x74\x5e\x0b\x90\x3f\x36\x65\x5e\xb7\x1e\x35\x6b\x9e\x5b\x22\xc9\xfc\x03\x9f\x56\x2f\xe2\xbf\xc3\xbf\xbf\x8e\xec\x18\xa4\x15\x28\x90\x82\x45\xaf\xe1\x10\x6b\xad\x3c\x1a\x3e\x65\x25\xec\x43\x74\x95\x0b\xc2\xee\xfd\x82\x87\x18\xd3\x53\x0b\x1f\xb2\x8c\x33\xb5\x75\x80\x47\x51\xcc\xbe\xb2\x11\x36\xc6\xa3\x03\xf7\xcf\x2a\x34\x5f\xf4\x5d\x36\xe1\xa8\x25\x2e\xc0\x43\xe8\x5b\xfd\xbe\x41\xb4\x6e\x21\x9f\xb7\x8b\x53\x77\x4a\xa1\xe9\x6a\xc8\xd6\xe0\x74\xf0\xac\x19\xdf\x43\x17\x5a\x32\xa3\x7a\xeb\xb0\x74\xb7\x45\x38\xba\xbb\x6e\x18\xba\x24\x40\x4d\x20\x7a\x66\x40\x73\xad\xd1\xe8\x55\xd3\xe0\x7d\xa4\xfe\x77\x97\x4a\xfc\xdf\xda\x58\x55\x60\x2d\x4b\x5b\x75\xc4\xbe\x75\x2d\x11\xee\xca\x90\xb0\x4c\x02\xca\xcd\x93\xb5\x45\x04\xea\xfa\x8d\xb4\x0a\xe8\xb4\xec\x3d\x9d\x14\x7c\xfd\xa0\x8b\xf5\x43\x30\xcb\x1c\x70\xf5\x53\xfc\x71\x80\x13\xff\xba\xff\xa7\xa7\xa3\xa7\xff\xbb\x74\xc2\xed\xf2\x09\x4f\x67\x4a\xc4\x6c\x87\x50\x5c\xe0\x1b\xf7\x7f\x80\x6d\x22\x9b\xb6\x58\x27\x8b\xf1\x7d\x57\xc7\x3c\x5e\xf6\xcc\x54\x7e\x4f\x8f\xf9\xcc\x7c\x06\xbe\x07\x3f\x34\xef\x63\x59\xe4\x9e\x4f\x05\xc5\xe0\xb3\x55\x79\x67\xc7\x57\xcb\x48\xff\x56\x7e\x52\xd6\x73\x3a\xd8\x58\x2a\xb0\x4d\x0c\xf7\xb1\xe0\x21\x0b\xda\xac\x8c\x88\x7c\xbf\xd8\xc7\x7b\x77\x8d\x7d\xbc\x8c\x33\xfc\x3d\x1c\xfa\x55\x7e\xdb\x8c\xfc\xab\x6e\x4a\x37\x91\xf3\xcd\xdd\x94\x9f\xbf\xd1\xa7\x95\xb3\xbe\xb5\xa0\xe5\x0a\x2e\xfe\x6a\xe9\xd7\xf9\xc4\xda\xf3\xbc\xb5\x82\x69\x2c\xb8\xc5\xda\x0c\x7b\x6d\xd2\xc1\xb9\x1b\x4f\x06\xb7\xa1\xd3\xa2\x72\xaf\xf5\x40\x89\xe0\x8e\x53\xc3\x4b\x61\x03\x79\xe0\x8c\x2c\x70\x85\xe3\x6e\xd1\xcd\xad\x49\x8d\xb5\x40\x86\x37\x1c\x4f\xd1\xe8\x00\x72\xdf\xd3\xb3\xb1\xec\x6f\x46\x9d\x77\x90\xfe\xad\x09\x94\xda\x74\x89\x69\x03\x47\x6d\x74\x74\xb9\x34\x70\xf7\xb3\x90\x96\x4c\x00\x57\x35\x96\xac\x90\xfe\xad\x95\xf0\xb6\xd0\xc9\x7d\x98\x4e\x26\x10\x47\x74\x07\xe7\xb6\xbe\xbb\x48\x03\x87\x2b\x26\x9c\x3a\xc2\x34\xbd\x5b\x3f\x13\xdc\xaa\x54\x6b\xc8\x03\x97\x0f\x6d\x87\xa2\xe1\x8c\xa0\xae\x39\xd8\x7b\xcd\x08\xb7\xf6\x6a\xbf\xbb\x88\xae\xf2\xfd\xff\x92\xa6\x95\x72\x16\xb8\x35\x2d\x33\x8b\x03\xc2\x56\x35\xd9\xac\x03\xc4\xae\x03\xc9\x1e\x99\xcb\xc0\xe8\xdd\x97\x4f\xa3\xbf\x1e\x5d\x6e\x28\x11\xdc\xc3\x25\x30\x53\xf4\xcd\xef\x66\x23\x64\x64\x47\x80\x38\x7a\x80\xec\x66\x1b\xba\x01\xac\x59\x3a\xeb\x2e\xc4\x47\x61\x3d\x7c\xf6\xe6\xd9\x3f\xbe\x7f\xf1\xee\x78\x13\xa9\xcd\xca\x26\xc5\x76\x86\xc4\x13\x23\x40\xff\xfe\xcc\x88\xc5\x59\x78\xb8\x84\x67\x92\x54\x92\xc2\xbc\xfe\xcd\xa7\x40\xab\xc2\xa0\x2a\x66\x61\xa9\x2b\xe3\x23\xed\x6a\x52\x24\xa9\xe9\x57\xf6\xf2\x4e\x52\xb3\xb5\x33\xdd\x16\xad\x04\x0d\x78\xda\x9a\x7d\x2d\xce\xcf\xb6\x61\xa3\xab\x53\x34\xbc\x66\xeb\xd2\x76\x5b\xf9\x03\xf8\x71\x71\x18\x3e\x2f\xb4\x42\x20\x7e\x7b\x8d\x7a\xb1\x15\x56\xfe\xa7\x37\x76\x4d\x78\x55\x23\x9e\x4c\x8e\x66\xb2\x62\x86\xb9\x26\x89\xcd\xdd\x04\xaa\x74\x2b\x41\xed\x6e\xad\xab\x36\x22\x2d\xa5\x02\xbb\x56\x28\x09\x9b\x8d\x55\xf1\x26\xb0\x91\x04\x74\xe8\x8b\x0c\xfe\x3d\xc9\x39\xde\x7f\x5a\x5e\xba\xfc\xd2\x4d\x71\xc9\x26\x33\xdd\x66\xf2\xd4\xb5\x1f\xb3\x3a\x05\xee\xaa\xfa\xec\x60\xb8\xe3\x3c\x7b\x9b\xda\xa3\x77\x92\x6b\xaf\x09\x53\xa6\xb0\xb7\x37\x98\x71\xaf\xd0\xe6\x5a\x49\xf7\x36\x67\x77\x2f\xf4\x69\x8d\xcc\x7b\x9b\x33\xbe\xd7\x33\xc6\x3a\x64\x4e\x95\x76\xaf\xa5\xc3\xbe\x2d\xd5\x5e\xab\xde\xb7\x4e\xb6\x77\x17\x36\xf9\x3b\xb0\xca\xaf\x6e\x97\x5f\xfb\xe0\xcb\xff\x3b\xce\x91\x79\x36\x60\x9a\x2f\x18\xe7\xb5\xfc\xb3\x84\x45\x75\x91\x95\xae\xa5\x55\x75\xe3\x06\xfa\x95\x4d\xf4\x77\x34\x53\x1b\xb3\xd2\x67\x35\xde\x81\x8d\xbe\x75\xea\x48\xdd\x89\x56\xbd\xce\x7b\xbc\x9c\xb1\xfe\x3e\x97\xd6\x92\x26\xfb\x0d\x19\xed\x37\x6e\xb6\x2f\x9c\xc1\x1b\xb7\xda\x9b\xc0\x84\x75\xd3\xd2\x3c\x69\x9b\xb2\xdb\xdf\x89\xe5\x7e\x84\x18\x8b\xf1\x88\x9f\x3e\x84\xa1\x68\xb3\xc4\x6c\x6f\xb5\xdf\xd0\xb2\xbf\x37\x13\xbf\x35\x98\xd1\x1e\xe8\x50\xcd\xad\xda\xa2\x03\xab\x5e\x0d\xdc\x89\x5d\xdf\x62\x84\x5b\xcb\x9e\x2a\x21\x10\x1f\xda\xa4\xfa\xea\xe2\xe5\xbf\xff\xfa\x23\x44\x35\x89\x56\x55\x3a\x96\x95\x8c\xa5\x36\x4c\x54\x17\xb8\x6f\x5e\xdd\x77\x96\xd5\x0a\xd1\x57\xb4\xa0\x2e\xc8\x34\x6a\x0b\x1f\xaf\x82\x1d\x2d\x67\xac\x9d\x92\xf4\xcb\xb5\xcd\x53\xb3\xdd\x97\x1a\x65\xbf\xa5\x9f\x27\x9f\x05\x4d\xa3\x16\xf9\xfa\x36\x6c\x5a\x6c\x63\x58\xac\x64\xe8\xb3\x70\x81\x4a\x84\x71\x1b\xf9\x72\x99\xcc\x7c\x6e\xcb\xac\x7c\xd5\x03\x6f\xb9\x50\x88\x4a\x9a\xb0\x42\x2c\xc4\x49\xe9\x48\x6e\x4e\x4a\xb7\x6e\x1f\x24\xe0\x6a\xa5\x23\x3a\x53\x9a\xe7\x56\x23\x0d\xf2\x2d\xaf\x7f\x15\x77\x9c\x5f\xdf\xf3\xea\x31\xd8\xe2\xac\xd8\x90\xc6\xd7\xc6\x62\xdc\x38\x5a\xc1\xe0\xac\xe9\xa0\x6c\xa7\x7b\x51\x7b\xd7\xd6\xc6\xf2\xce\xd6\x7c\xc6\x60\x3a\x16\x90\x5b\xb3\xa6\xcf\xb1\x00\x9d\x30\x3e\x07\xee\x9f\xaf\x62\x36\x7e\x83\x2f\xd2\x32\xff\x92\x9a\xf5\xc6\x09\xde\x22\x05\xa1\xdb\x22\xcd\x80\x5b\x07\x28\xaf\x57\x5f\x3d\x22\x9c\x6b\x45\x8d\x5f\xd2\xd5\xb9\x02\x3a\xbc\x60\x91\x97\xb1\xed\x96\xd9\x17\xb6\xfd\x50\xb7\x6c\x56\xa6\xdb\x71\x1a\xdd\x39\xd1\xf2\x54\x77\x65\x60\xbd\x34\x42\x66\xba\xf5\x46\x5a\x15\x0b\x2f\x49\xa5\x4d\x2c\xe1\x85\xda\x61\xd5\x9e\x5a\x05\x0c\xca\x67\xdc\xc8\x6f\x67\x1b\x67\xfe\x7a\x79\xcf\xf3\x56\x09\xfa\xb4\xb1\x7f\x51\x4a\x3e\x5d\x6e\x61\x12\xbe\x06\x27\x1a\x23\x7c\x6c\xfd\x79\x68\x9d\x9c\xcf\x7d\x4c\xd9\x4c\x33\xce\x91\x4b\x9e\x2d\x93\x9a\xb6\xfb\xb2\x9c\x38\xb4\xe8\x22\x53\x59\x7d\xbf\xc4\xca\x7d\x7a\x82\xe8\xb8\x3b\x82\x0c\x5d\xc1\xeb\x55\xd3\x76\xaa\x15\x54\x93\x1c\xb5\xda\x7f\x98\x95\x5f\x6a\xd8\x95\xcf\x2c\xb9\x46\x8d\x5b\x7e\x2d\x30\x2f\x3b\x9a\x0f\xfc\x3b\x47\x9c\x8d\xed\x86\xa3\x1a\x5a\x66\x28\x85\x4f\x06\x25\xd8\xa7\xf6\x5d\x3d\x85\x23\xea\x74\x1c\x21\xdb\xb7\xeb\x6b\x9b\xd4\xa4\x8b\xbf\x6a\x97\xa1\xb4\x4d\x62\xcc\xe5\x7d\xf6\x36\xa4\xb8\x1b\xea\xdf\x06\x74\xf7\x1d\x68\x6c\x81\x07\xd5\xe2\xff\xe7\x8f\xef\x87\x2f\x7e\x1b\x53\xbb\x16\xcf\xe0\x68\x84\xa2\xc3\x4c\x97\x57\xbe\x5c\x99\x76\xdf\x1a\xc7\xdd\xdc\x8b\x0f\x92\xa8\x2e\x67\x65\xa7\xe6\x98\x9a\x52\xad\x94\x21\xd0\x18\x3c\x9f\x25\x90\x74\x87\x69\x92\xa0\x61\x01\x01\x6b\x99\xfc\x75\x8b\x7b\xb2\xa1\x6b\xc0\x15\x52\x9f\xb3\x71\x59\xe0\x3b\x85\xa3\x7a\xcb\x62\xed\x57\x99\x8c\xb0\x46\xd2\x87\x56\x63\x24\x4d\x96\x06\xb5\x18\xb8\xea\xe2\x16\xa7\x46\x60\xb7\xec\x55\x2e\xa5\x97\x82\x05\x66\x4b\xe5\x93\x32\x1b\xde\xad\xde\x86\x6b\x4e\x57\x07\xfe\xa7\xce\x66\x71\x7d\x5d\x2b\x0a\x56\x64\x40\x50\xfd\xf6\x83\x08\x13\x2c\x7d\xa8\x1e\xb6\x05\x06\xfc\xff\xff\x3f\xb7\x0e\x49\xda\x53\x1c\x48\x69\xe8\x8b\x3c\x56\xcb\xc4\x6a\x5e\x66\xed\x09\x5e\xa1\x93\x71\x92\xf4\x8a\x85\x34\x41\xda\xe6\xed\xb7\xba\xa5\x57\x0c\xd4\x2d\x57\xb9\x15\x88\x63\x11\x84\xdd\x22\x38\xce\xe6\xb4\x92\x46\x6e\x04\x18\x45\xb1\xc4\x6e\x76\x32\xfe\x5c\x97\x5e\xb2\xe9\xfe\xad\x5c\x72\x83\xa0\xff\x0d\x27\x67\xcd\x59\xbc\xb5\xf4\x59\xfc\x98\x12\x4c\x3f\x9d\x5d\xbe\xfb\xdb\x8f\x2f\x3e\xfe\xae\x12\x4c\xab\x13\x6f\xcd\x3c\xd3\x3f\x72\x61\x56\x1d\xbb\x8d\x86\x8b\xc5\x09\xa9\x05\x50\xe5\x34\xa5\x52\x2c\xde\x5c\x6e\xea\xe2\x40\xcb\xbe\x4e\x52\x88\xcf\x4a\x7d\x50\x7f\x1e\x89\x9e\x14\x32\x5b\xdb\xec\x73\x6b\x62\xf4\x2e\xcc\x35\x9b\x59\xef\x55\xbe\xd9\x2c\xd0\xc1\x9e\x66\xba\x15\x77\x58\xb0\x2e\x8e\xd3\xe8\x11\x2d\x8a\x8d\xae\x04\x63\x68\xb6\x54\xc5\x0f\x37\xad\x32\xa5\xf0\x1a\x73\x7a\xff\x1c\x7f\x03\xf9\xbf\xab\x95\x3e\x96\x34\xe0\x6f\xa7\x2f\x7e\xf9\x11\xbe\xb7\xa7\x7f\x59\x2a\x0d\xf8\x1d\xf3\xf9\x86\x1d\x57\x6c\x75\x64\x41\xcb\xcf\xef\x46\x9e\x5a\x14\x0c\x5a\x5d\x4e\x0b\x38\x87\xf8\x68\x55\x9e\x21\x54\xb9\x51\x95\x05\xd4\xdf\x92\x2c\xbf\x35\x57\x4e\xe2\xd7\xe6\xc6\xb1\xa5\x47\x5b\x0b\x16\x51\x11\x09\xf9\xf4\x35\x25\x58\x59\x4b\xb6\x6d\x99\x43\xca\x6e\x90\x5f\xb8\xf2\xcc\x54\xf8\xad\x57\xdf\x3b\xb5\x71\x5a\xa4\x90\x69\x91\xea\xde\xa9\xdc\xa5\x3d\x8a\x74\xf7\x5f\xe5\xa2\xb4\x9c\x5d\xd5\x14\xf8\x8f\x65\x81\xde\xeb\x79\xb8\x66\x9e\xfc\x6a\x85\x4a\x30\x7d\xd8\x83\x30\x49\xdf\xed\x1e\xcd\x4e\xff\x67\xe5\x83\xf0\x01\xf4\x9b\x92\x44\xef\x02\x57\x0b\xf5\x9f\xa6\x94\x11\x04\x57\xc2\xed\x68\xc1\xeb\x44\xc3\xdd\x59\xd6\xc8\x32\x2c\xef\x93\xf9\x55\xb3\x4f\x81\x6e\xa0\x26\xed\x6e\xa6\x4c\x15\x32\xc3\x0c\x96\xa1\x8e\xce\xbf\x2b\x92\xc5\x88\x5f\x38\x43\x90\xa8\x1c\x00\xed\xd2\xc0\x2c\x3f\x59\x99\x06\xf6\x01\xb2\xf1\x9d\xce\x98\xd2\x3a\xbb\x53\xd1\xd0\x32\xb3\x26\xfb\x18\x39\xd9\x97\x35\xd7\xfa\x0b\x8c\x3f\xce\x45\x9a\x24\xe9\x55\x8c\x47\x22\x04\x54\xb8\x6a\x71\x46\x1b\xc5\x97\x71\x34\x83\x89\xf3\xfa\xf4\xf4\x83\x6c\xc4\x51\x9d\x75\xd8\x98\xa4\xb3\xd1\xd8\x39\xc2\x97\xe9\xb5\x00\x21\xd7\xbe\x26\xb9\x97\x76\x12\x7f\x46\xce\x07\x92\x4e\x10\x1b\xa3\x19\x0d\x1c\xe1\xba\x2a\x72\x6b\xc2\xf3\x74\xc6\x64\xde\x8f\x18\x3b\x95\xac\x95\x75\xea\x87\x6d\x3d\x9a\xe4\xab\x59\x8a\xf9\xcd\xc4\xb2\xd3\xde\x60\x4d\xdd\xc8\x52\x4c\xc9\xe2\x45\xd9\xa0\x0d\x83\xba\x4f\x5b\x69\xd1\xab\x2d\xe0\xd6\xab\x53\xde\x81\x4a\x45\xad\x61\x1a\xef\x5c\x03\xff\xa3\x70\x50\x44\xca\x6e\x5e\x4f\xe0\x41\xd9\x26\x63\xd5\xd7\xad\x6a\x7b\xfb\xd9\xaf\xd5\x94\x37\x2c\x0f\x88\x31\xac\x2b\x0c\x28\x77\x9b\x07\x15\x01\xfe\xf1\xe1\xd9\x21\xfc\x71\x74\xde\x06\xa9\xbd\x22\x11\xac\xe0\x7e\xdb\x94\x4c\x79\x6d\xff\xdb\xe1\x18\xc6\x78\x25\xff\xdb\x58\xf8\xab\x28\xdf\xa1\xd5\xdc\x77\x63\xb4\xda\xb7\xca\xb1\xe3\xc4\x08\x62\x28\xd4\xb1\x84\xb3\xb6\xe9\xd4\xf6\x10\x1e\xdb\x7c\x41\x37\x7b\x6b\xb7\x80\x49\x58\xe4\xc9\xdc\x42\x31\x5a\x09\x97\xb6\x09\x1e\x61\x21\x90\xfb\x57\x0d\xe2\xbe\x8e\xe7\x72\x55\x2b\xbb\x0f\x0c\xf7\x0d\xf8\xfd\xda\xbd\x9c\x37\xea\xfc\x6b\x69\xb7\xe6\xa2\x61\x29\x47\x60\x6b\xb5\x55\xa7\xe0\xf5\x67\xa2\xd1\x21\xb8\xa2\xa3\xd9\x33\xe1\xb5\x74\x67\x6b\x85\xb1\xb2\xba\x97\xe0\x92\x0e\x77\x0c\x91\x49\x8c\xa1\x08\x32\x5b\xd3\xef\xee\x6d\x8c\x3f\xa3\x28\xdf\x44\x0b\xbd\xf6\x2b\xbb\xb1\xd1\xfd\xcb\xfa\x45\xbd\xcf\x5d\x5b\x02\xc4\x78\xc4\xe5\xf0\x75\x07\x6f\x68\xe4\x0b\x87\x6d\x2a\xd6\x2d\xc7\x5d\xf9\xc4\x32\xf0\xf6\x9d\x7d\xa3\x64\xbb\x36\x9d\x8d\xb3\xb2\xad\x3b\x5b\xf9\xc4\xe2\x0d\xda\x7a\x0b\x6d\x70\x81\xbe\xc9\x25\x9f\x36\xe3\xce\xc5\xa4\xf6\x03\x2f\x7f\xd3\xec\x13\x2a\x85\x38\xe0\xbe\x54\xc2\xdc\xb2\x03\xfa\x98\xce\x38\x5d\x5a\x8c\x86\xa8\x92\xad\x87\x52\xfa\xa0\x71\x9f\x99\xa9\x43\xeb\x26\x72\x0d\x97\xd2\x16\xc3\x53\xd7\x42\x2d\xc7\x66\x96\x2e\x0c\xac\x56\x33\x6b\xa1\x87\xdd\x39\x20\x7e\xf5\xe6\x60\x46\x12\x11\x01\x59\x8a\xef\x68\xb6\xd2\x3f\xe3\x5b\x4a\x4a\xb4\x51\x17\xe2\xe1\x98\xeb\xbd\x7a\x2a\xd4\x14\x5c\x42\x81\x56\x47\x74\x7e\x4d\x6b\x63\xb6\xa9\x7c\x05\x19\x1c\x22\x2c\x21\x8b\xb2\x13\x5b\x57\x11\x0d\x6b\x3e\x3b\xce\xc2\x00\x16\xc9\xfa\x52\xa8\xc8\xb0\x8f\x6a\xa8\xf5\x7e\x8a\xb0\xf3\x0a\xd2\xf1\x79\x0a\x49\xb4\x60\xf2\x1e\x09\xfa\xbb\xd3\xd2\x49\xf9\x81\x5c\x94\x33\x7d\x67\x4d\x23\xc0\x4e\x6c\x9c\x3d\x0f\x6a\x0e\xf8\xcb\xce\x3f\xbe\xfc\xf0\x6c\x37\xde\x04\x66\x63\xeb\x9b\x74\xf3\x68\xbc\x87\x6b\x85\x36\xc8\x89\xf7\x86\x98\xf8\xf8\x71\x0e\x37\x0d\x91\xae\x66\x2e\xc6\xd3\x99\x25\xfb\x7f\x15\x21\x4f\xc0\x35\x48\x44\x33\x61\x87\x3c\x4f\xbf\xb8\x56\xe0\x3c\xd7\x8a\xac\x94\x5d\xa3\x7c\xc3\x9e\xbb\x0f\xec\xb9\xc7\x08\x3a\x77\xe7\xa8\x70\x2b\x22\xb4\xbd\xc9\x51\x25\xd6\x49\x57\xb2\x3c\x4c\x5b\xb1\xe1\x35\xe0\xda\xdc\xcd\x42\xb5\x15\xfb\xb5\x32\x64\x5b\x0b\xc9\x63\x85\x5c\x29\x15\x86\x52\xb8\x4d\xe1\xaa\x81\x90\x1a\xf8\x50\x33\xc3\x84\x35\x54\x4b\x8e\xce\x8e\xeb\xd6\x06\xd3\xad\xc5\xf0\x5a\xe2\xb9\xad\xe5\xa0\xb2\x51\x17\x95\xd6\x4e\x2a\x25\xdf\xa9\x8c\xb8\x2d\x03\x1b\xd6\x47\xd1\x69\x59\x64\xe3\x48\x3c\xcb\xc3\xe7\xdc\xa3\xdf\x68\x51\x88\xdd\x90\x48\x6c\xd8\x25\x1e\x54\x26\xfe\xdb\x14\x7f\xa0\x47\x17\xd3\x76\x5e\x32\xcd\xaa\xca\x86\x09\xae\x49\xb4\x61\x8a\x3f\x8a\x1c\xd2\xcf\x7e\x25\xbf\xfd\xf6\x71\xf7\xfb\x76\x64\xcf\xf9\x74\x36\x8c\xae\xce\x0c\x2a\x59\x92\xca\xc2\xa5\x3d\x67\xd4\x1d\x25\x9c\xb1\xf4\x22\x4e\x12\x25\xe5\xcd\xce\x27\x71\x9e\xd2\x2d\xf7\xae\x29\xfa\xcb\xa8\xeb\xbb\xaa\x18\x24\x45\xbf\xa2\xe6\x4e\x8b\xa6\x7f\xfe\x11\x23\x10\x53\x11\x06\xb4\xd8\xd0\x16\xc8\xf8\xcf\x1a\xf3\xcb\xe6\x97\xd2\x3a\xc9\x4b\x6b\xeb\x7c\x14\xf9\x08\xfe\x44\xa2\xf8\x1f\x4f\x7f\x78\x55\x03\x9e\x35\x8d\x5d\x90\x29\x35\x6b\x6a\xba\xdf\x03\x57\x7a\xa0\xa6\xe2\x2e\xab\x72\xed\x5b\x48\x7e\xbf\xa3\x21\x37\x32\x37\x2c\x90\x3f\x93\xe6\x21\xd7\x24\xe6\x45\x4a\xb4\x30\x92\x15\xa3\xc9\x6c\xd4\x2a\x96\xb5\x8d\xf0\x20\x6f\xe1\x5b\x60\x49\x89\x92\x25\x10\x58\xe3\xca\x5f\x66\xe0\xd7\xd5\x6d\xf8\x72\x4a\x90\x36\x6a\x8d\xf4\x21\xfb\x22\x7d\x95\xdb\x09\xd2\xc5\x9d\x2d\xa1\x32\xed\x16\x01\xf9\xae\x46\x87\xcf\x5f\xde\x85\x0e\x7f\x28\xb6\x50\xfb\x6c\x05\x86\xa4\x55\x63\x8a\x31\x8c\xf5\x6d\x6d\x31\x0b\x2a\x5e\x18\xe2\x50\x92\x27\x39\x87\x80\x49\x36\xe3\x0a\xaa\x51\x98\x83\x95\xf7\x40\x77\xb5\xc4\x5d\xab\x80\x68\x99\x9c\xb8\x94\x3c\x75\xf5\xd4\xa9\x2d\xe5\xd1\xca\x15\xeb\x48\xaf\xe5\x7d\xbe\x01\x56\x04\xbd\x2d\x6a\x35\xf9\x69\xb9\x6a\xfe\xd3\x66\xa3\xc8\xfd\x58\x3f\x9e\xdd\x8b\xf5\xe3\x69\x9d\xf5\x43\xef\xf1\x25\x8c\x1e\x19\x5b\x78\x2c\x36\x89\x6c\x21\xb8\x15\x1b\x40\xc5\x4a\xb0\xbe\x21\xa2\xd4\xda\xb3\x72\x6b\xdf\xaf\x84\x10\xb0\x09\x53\x44\xa9\x67\x3f\xac\x83\x1b\xdf\x52\x49\x6e\x8d\x96\xb4\x68\x0b\x2f\xc8\xe3\x0a\x4c\x33\x85\x3a\xa1\x7f\x54\xcb\x73\x1f\xb8\x04\x5d\x10\x44\xc7\x5d\x51\x86\xcb\x34\x4d\xbc\x50\x68\x08\xad\x3b\xbc\xb6\xa9\x61\x29\x7a\x2e\x07\x3f\x5e\x38\x22\x16\x9b\x1f\xcc\xff\x0a\xa6\x88\x9c\x38\x26\x06\x45\x6b\xe6\x0d\x5c\x89\x39\xee\x96\xe1\x29\xf8\x3a\xbf\x48\x89\xf4\xe6\x56\xf3\x51\x36\x77\x14\xc7\x51\x0f\x58\xec\xb4\x07\x02\x59\xa9\xf8\x12\x85\xab\x45\xab\xb9\x85\x5a\x54\x5a\x7d\xf9\x43\x9d\x61\xe4\xfb\x5a\xcc\x88\xc5\xa0\x96\x1b\xb5\xd8\xb4\xb9\x3f\xb5\x22\xb5\xdd\xb9\xee\xb7\x11\xb0\x64\x51\x29\xc9\xbc\x30\x1e\x54\xe7\xbb\xfc\xdf\x4f\xaf\xd1\xe9\xff\x44\xeb\x85\xfa\xe6\x7e\x1f\xf7\x11\xed\xcb\x95\xc7\x98\x0e\xd3\x4b\x44\xae\xbb\xca\x1b\x46\x7b\xcb\x4a\x9f\x98\x3a\x57\x99\x92\x8a\x55\x6f\xf7\xdb\xf4\x12\x52\x04\xda\xc8\xca\xc9\xf3\x3a\x3c\xec\xd2\xf9\xfc\xdf\xef\xd3\x17\xef\x87\xfb\xf7\x7a\x15\x6e\x22\xf7\x3f\xe0\x4d\x78\xe1\x46\xbe\xac\xee\x66\xf7\x18\x76\x85\xd7\x7c\xfd\x08\xaf\xad\xcb\xee\xf6\x8f\xf6\x02\x3b\x0b\x04\xfc\x9a\x15\xb3\x07\xbe\x96\xce\xd7\xe2\x12\xaa\x99\xb1\x80\xef\x4a\x39\x2b\xae\xa4\x7a\xa1\xb3\x18\x3d\x98\x45\xfe\x4d\xe0\xb5\x43\xd0\x10\xc5\x97\xc8\x61\x04\x5e\x5c\xc4\x43\xe7\x82\xa4\x13\x4b\x90\xa0\x0e\x24\x14\xd2\xa3\x5a\xfb\x81\xf3\x16\x41\x82\xcd\x50\xc1\x21\x5f\x1f\xa3\x19\xe1\xcd\xa8\x52\x3a\x74\xb0\xec\x72\xbf\x76\x0a\x14\x8c\xd1\x90\xed\x58\x5d\x58\x07\xf5\xe9\x39\x16\xa6\xf5\x50\xb4\xa3\x0c\x4d\xbb\xe7\x5c\xc7\x40\xd3\x4a\x0e\x8f\xa0\x26\xa0\x6c\xf3\x49\xd6\x2c\x51\x3d\x1b\xbe\xc4\xdf\x40\xae\xb5\x0d\x5f\xdf\xaf\x9d\x69\x6d\x53\x17\xf7\x75\x57\xf7\x76\xfd\xd8\x8c\xa1\x56\x96\x87\xc6\xb0\x68\xbb\x4e\x62\xcb\xbd\xb6\xb9\x9b\xfa\x0d\x28\xd0\x1b\x56\x9c\x97\x50\x98\x0b\x6a\x72\x22\x03\x22\xea\x2e\xee\x9b\x34\xd8\xd6\x10\x96\xf7\x70\xc7\xff\xfb\xbc\xc2\xcf\x66\x65\x13\x82\x3c\x93\x6e\xea\x0f\x0b\xf5\x74\xf2\xf1\xf5\xe4\xd7\xbd\x7a\xa8\xdd\x25\xf0\x74\x35\xcc\xd2\xbd\xca\xe5\x17\x09\x64\x0c\x61\xfd\xe7\x04\x4e\xe5\xb9\x90\x05\x01\xd4\xfa\x89\x2d\x23\x18\xcb\xdb\xb1\xbb\x80\x76\xaa\x88\x64\x1a\x7b\x2a\x3f\x37\x17\x4b\x4d\xbf\x1f\x84\x9d\xc7\x02\xfb\xf4\x68\x38\x8e\xa0\xc2\x26\xb8\xcd\xcc\x88\x35\x7b\x50\x96\x73\xfc\xea\xdf\xf4\xe9\x35\x79\x71\xaf\x76\x83\x02\x2c\xcd\x37\xc3\xc1\x37\xc3\xc1\x37\xc3\xc1\xef\xd9\x70\xd0\xea\xc4\xc9\xa2\x6f\x55\xf6\xd9\xcc\x22\x00\x59\xbd\x05\x61\x75\x3b\xc1\x86\xed\x03\x95\x10\xe4\x0d\xd8\x06\x0a\x20\x48\x16\xb3\xc0\x37\xc3\xc0\x37\xc3\xc0\x37\xc3\xc0\x03\x19\x06\x32\x11\xe6\x9b\x49\xe0\x31\x99\x04\xf2\x69\x59\x41\x4a\x97\xbe\x9f\x0f\x2c\x90\x3f\xb9\xd8\xdb\x3b\x7d\xf6\x57\x7b\xd2\xdc\x8a\x84\x5d\x8c\x26\xcf\x9c\x57\xed\x0c\x53\x21\x1a\xe9\x61\x56\x3c\x60\xf7\x81\xe1\xfe\xba\xf8\x7c\x5f\x7d\xda\x44\x2b\xab\xcc\xd0\x18\xc1\xe8\xa1\x27\xe8\x2a\xfd\xe3\x8b\x5f\xff\x16\xff\xd6\xfa\x92\x5e\xc1\x60\x19\xfc\x45\xc3\xfc\x4c\xd2\x48\xc8\x01\xb2\x44\x29\x07\xe1\xfa\xbb\x83\x53\x6b\x15\x2a\x27\x29\x8c\x1e\x81\x37\xc4\xe8\xf3\xaf\xbb\x7f\x7a\x75\xd5\x6e\x27\xac\x4e\x25\x35\xda\x55\x08\x85\x53\x26\xdc\xa0\x1e\x9a\x52\x3b\x2f\xff\x7b\xf7\xcb\x68\xd8\xce\x6f\x64\x75\x4a\xe9\xe1\xae\x44\x2a\x15\xd0\xf2\xb0\x84\x7a\xf9\xf6\xc5\xf5\x9b\x77\xdf\x5f\xad\x13\x1c\xb5\x06\xfd\x04\x0d\x56\xa1\x1e\x45\x8c\xc5\xf8\xe1\x0d\xd4\xbf\xbc\x78\xf9\xd7\x7f\xbe\x78\xdd\x32\x17\x81\x0d\x0b\xd0\x3d\xd1\x43\xb9\x3f\xd0\x3f\x4d\xbd\x35\xc0\xfe\x64\x05\x9b\x40\xfb\x6b\x03\x18\xe7\x2e\x84\x8b\xd3\x54\xbc\x33\x5c\xbb\xd6\x60\x27\x0d\x38\xdb\x38\x65\xf1\x10\x39\xb1\xc2\x82\x6b\x8d\x15\xfb\x36\x1d\xc2\xc4\x39\x61\x29\x81\x23\x6b\x34\x42\x0b\xa1\xfd\x74\x8c\x28\x72\xb2\x89\xe3\x52\x7b\x3c\x99\xa0\x28\x86\x0c\x25\xd7\x0e\x85\x97\x28\x72\x58\xea\x24\xa2\x2d\x2a\xdb\x72\x20\x8e\x9c\x29\x22\x34\xa6\xcc\x80\x35\x3e\x27\xe9\x15\x45\xc4\x99\x51\x38\x42\x4d\x68\xc4\xf6\x27\x3f\x02\x57\xc6\xf6\x35\x63\xe6\x5e\xc4\x28\x89\x84\xe2\xba\x08\x3a\x71\xbc\x5f\x2e\x93\x01\xe5\x38\x6f\x63\xfc\xb9\x26\xab\x5e\x2b\x55\xe7\x30\x8a\x1c\x28\xae\x3d\x39\x75\xd8\x38\x33\xc5\x38\x11\x62\x30\x4e\x1c\xbe\x9b\x9d\x18\x8b\x57\x9f\xde\xf0\x42\x23\xc4\x9c\x5f\x67\xf1\xf0\xb3\x23\xc3\x04\xf8\x33\xa8\x3f\xeb\x5e\xc5\x11\x72\x26\x88\x91\x78\x48\x9d\x48\xf7\x33\x70\x8e\x30\x43\x44\xd4\x92\x3d\x74\x3e\x7d\x7c\xeb\xc4\x58\xb5\x2b\xe8\xe1\x9c\xa3\x24\xbd\x0a\x9c\x7f\xa4\x33\x67\x08\xb1\x33\xa3\x48\xbc\x9c\x26\x70\x88\xc6\x69\x12\x21\x42\xf5\xc0\x86\x22\xcf\x71\x41\xcc\x72\x6f\x6e\x72\x3c\xa3\xf9\xdc\x2d\x0b\x58\x62\xc2\x1b\x3f\x57\x96\x8f\x80\x73\x75\x5b\x05\x57\xe3\x78\x38\x76\xae\xe2\x24\x71\xce\x91\x43\x90\xe8\x58\xe4\x5c\xc5\x6c\x2c\x3a\xca\x37\x94\x93\x5e\xa8\x81\xea\xae\x68\xad\xc5\x19\xce\x08\x41\x98\x25\xd7\xce\x39\x8a\xf1\xc8\xe1\x0c\x08\x45\x41\xad\x67\x6f\x69\x2e\x15\xee\x96\x61\xc1\x52\x7b\xaf\x18\xb4\x57\x01\x2d\x4b\xf1\x45\x4c\x26\xc2\x49\x74\x00\x0a\x7f\x6a\xcb\x96\x23\x22\x84\x18\xfa\xc2\x4a\x11\x44\xd2\x80\x4f\x12\x7a\x46\x73\x70\xa8\x86\xf8\x2a\x3a\x85\x15\xb8\xe8\xb7\x62\x79\x29\xfe\x2c\xdc\xc5\x69\x09\xb6\xb3\xa6\xb2\xaa\x31\x1a\x4b\x10\x03\xde\xa1\xbe\xaa\x64\xe0\x2a\x5a\xa8\x1c\xd5\x05\x48\x2a\x0b\xe0\x96\x28\x9b\x62\x69\x3e\x72\xeb\xf1\x7e\x55\x01\x83\x1c\xe2\xbb\xcf\xe8\x7a\x2a\x93\x9f\xd6\x7e\xf9\x19\x5d\xdb\x3e\x8b\xd2\x2b\xdc\xfe\xab\xdc\xbc\xae\x66\xc5\x62\x5a\x2f\x10\xab\x9a\x7b\x11\x05\xa3\xc0\x19\x33\x36\xa5\xbd\x9d\x9d\x11\x81\x17\x10\xc3\x00\x7d\x81\x93\x69\x82\x82\x61\x3a\xd9\x89\x76\xf6\x76\x4a\xc6\xa6\x09\xa2\xe3\x4e\x4a\x46\x71\x14\xee\x75\xf2\x15\x1c\xba\xcd\x1b\x6c\x17\xb8\x1d\x5d\x05\x9f\xa3\xbc\xfc\x82\x1d\xb5\x60\xe9\x5b\x4d\x9e\x55\x1c\xbb\x8a\xed\xf6\xd3\x9b\xb3\x57\x6f\x4e\x0e\x5f\xbc\x3d\x3a\xfb\x78\x74\xf8\xf6\xf4\xcd\xbb\x23\x2b\x64\xdc\xc2\x7c\x5a\xeb\xb0\xe9\x17\xfc\xc0\xe5\xdb\xfc\x7f\x66\x48\x64\x72\x59\x8a\x4f\xff\x82\xd0\xd4\x19\x42\x06\x93\x74\x24\x0e\x55\x67\x36\xed\xb2\xb4\x1b\xf1\x4d\xc4\x19\x4e\x3a\x63\x8e\x0a\x8b\xe1\x8d\x08\x3e\xc9\x4f\x2c\xe7\x10\x5f\x3b\x72\xf5\x52\x67\x02\x23\xc4\x39\xb4\xde\x71\x40\x24\xfc\xa2\x82\x13\x1a\x41\x21\x57\xe9\x4c\x70\x5f\x5e\xa1\xb4\xff\x73\xa6\x4f\x10\x4c\x1c\x16\x4f\x50\xd0\xd8\xf5\xda\xc4\x1b\x82\xa7\x64\x37\x46\x0d\x5c\xa3\xc8\xd8\xea\x03\x30\x9b\x78\xc2\x30\x89\x11\x66\xfd\x73\x45\xf4\x8c\x2d\x88\xdb\x29\x14\xb9\x15\x74\x2b\xc5\x22\xe4\x77\xae\x92\x8f\x32\x26\xa9\xbe\x2a\xef\xe3\x15\xd8\x46\xdb\x8b\xb2\x45\x9c\x74\x6f\xb9\x11\xbc\xc7\x2e\x70\xdf\x5f\x5c\x54\x62\x76\xea\x78\xc8\x6a\x3b\xb2\x95\x1f\x69\x6b\x61\x75\xf1\xcb\x15\x95\xb1\x82\x52\xd0\x4e\x1d\x23\x10\x53\x2e\xc9\xd1\x9d\xf3\x34\x4d\x10\x9f\x8d\x5c\x1d\x03\xee\x9f\x11\x57\x9d\xf8\x76\x84\xfc\x7c\x8f\x61\x12\xff\x86\xc8\x4e\x77\x4a\xe2\x4b\xa9\xe0\x18\x0a\x1b\x60\x2b\xa8\x6c\xb5\x1f\xa8\x9e\xbb\xe0\x06\xe1\xd9\x04\x11\x78\x9e\xf0\x4f\xc0\x08\xb1\x5e\xd6\xa6\x7f\x43\x10\x9b\x11\xec\xb0\xe0\x85\xec\xff\xa9\x1e\xd1\x7c\xee\x2f\x1c\x73\xa4\xae\x8c\xbe\xca\x01\xbf\x82\x0c\x2d\x35\x5a\x3c\xe3\x63\xfb\x6a\xc7\x7b\x2c\xba\xbf\xd4\x88\x29\x23\x25\xa3\xdf\x57\x35\xe2\x13\xd1\xfd\xc5\x23\x9e\xb1\x38\xa1\x3b\x70\x98\xd0\xae\x86\x81\xab\xb5\xa9\xe8\xdf\x0e\xe3\xa3\x03\x38\x6f\x8e\x1f\x86\xe8\xa0\xae\xf3\x4c\x0f\x11\x83\x62\xe7\xf5\x85\xb4\xfe\xfb\x8a\xc4\x4c\xfd\x9e\xfb\x3d\xd4\x67\x83\x10\x03\x34\x5f\xc3\x96\x63\x76\xff\x12\x12\x07\x87\x90\x8c\xc4\x35\x32\x0d\xa4\x07\xc8\xcf\x7b\x9d\x8e\xb4\xf8\x6c\x87\xf9\xcb\xfe\xde\xe0\xc0\xfc\xa3\xf7\x81\xa4\x93\x98\xa2\x2d\x35\xe2\xac\x5e\x22\xeb\x85\x80\x82\x34\x54\x1d\xfd\x8c\xae\xa9\x47\xfc\xfe\xee\x00\xc4\x21\xe9\xa7\x03\xfd\x15\xf3\x6e\x62\x7a\x38\x63\xe3\x94\xc4\xbf\xa1\xa8\x87\xd1\x95\x83\xbd\x02\x8d\x61\xde\x65\xe6\xdf\x20\x8f\xf9\x73\x3e\x71\x31\x3d\xc2\x9c\x32\xd6\x6f\xa8\xf5\x9b\x39\x48\x41\x1c\x0c\x21\x1b\x8e\x8d\xe2\xcc\xbf\x89\x2f\x3c\x16\x88\x3b\x07\xda\xe9\xe8\x5f\xfd\xdd\x81\x7f\x43\xaf\x62\x5e\xda\x78\x16\xc8\x45\xe1\xdf\x0c\x21\x45\xee\xf7\xbb\xbb\x6e\x2f\xbe\xf0\xb6\x79\x1b\xbe\x1a\x14\xf5\xb6\xf7\x7c\x00\xc5\xff\x71\x40\x10\x27\x81\xc7\xfc\x2d\xea\x6d\xef\xaa\xe7\x5b\xe7\x04\xc1\xcf\x5b\xa2\x8e\x67\xbb\x4f\xdd\x5e\xed\xbb\x3d\xf1\x6e\xaf\xf8\x4e\x4d\x66\x8f\x8d\x49\x7a\x55\x68\x8f\xcd\x65\x27\xfa\x83\xb9\xed\xa5\xef\x07\x6c\x8c\x4a\xd4\xca\xbb\x2d\xbb\xb0\xeb\x03\x34\xf7\x7d\x7f\x3e\x6f\xdc\x21\x74\x88\xee\xca\xb2\x5d\xe4\x19\x72\x99\xa2\x40\xf8\x57\x79\xee\x8e\xeb\xeb\xe5\x83\xf5\x92\x65\x07\x38\xa0\x49\x3c\x44\xde\x2e\xe8\x32\x3f\x90\x9a\xad\xe7\xba\x7e\xf0\xef\x34\xc6\xe2\xa3\x9e\xeb\x36\x0f\x88\xa5\xe7\x45\xee\x76\x0e\x29\xfa\xe1\x59\xf7\xdf\x74\x03\x7c\xec\x0e\x76\xa0\x3b\x63\x17\xdd\x3f\xba\x80\x84\x4c\x57\x1e\xb0\xf4\xc5\x35\x43\x87\x84\xc0\x6b\x0f\xe5\x74\x42\x57\xce\x29\xfa\xc2\x5e\xa1\x61\x1a\x21\xe2\x61\x3f\x88\xc4\x4f\x8f\xf8\x8d\x34\x39\x67\x29\xfc\x4a\x69\xa2\xc7\x7c\x84\xb3\x31\x23\xf1\xd3\xa0\x4b\x4e\xb7\x0b\x92\x4e\x72\xca\x2d\xa0\xca\x10\x26\xc3\x19\x97\x12\xbb\xd3\x54\x02\x5f\x15\x69\x24\x0f\xc5\x73\x48\xe3\x61\x37\x22\xe9\x94\xeb\xf1\xf5\x9f\x3e\xa2\x33\x52\x95\x5f\x70\x36\x0e\x61\x92\x08\x2f\x1a\xa9\xa4\xdc\x2d\x03\xd0\xbd\x73\xf5\x23\x77\x3b\xe4\xed\xa6\x17\x0e\x3a\xa8\x8e\x01\xcd\x7b\xa8\x79\xee\x04\x84\x4d\xf7\x22\xc6\x23\x44\xa6\x24\x96\x40\xe6\x2d\x4f\x78\xbd\x38\xcd\x63\x0d\xf9\x5b\xf1\x85\xa7\x9e\x8c\x10\x7b\x7f\x85\xf5\x58\x4f\xe4\xd5\x87\xfc\x8a\x84\x4d\x65\x78\x35\xac\xd3\xf1\x48\x48\x02\xe9\x87\x55\x3c\xa2\xd4\xf0\xac\x55\xbc\x42\x74\x48\xe2\x29\x4b\x89\xe8\x63\x90\xcf\x35\xe7\xe2\x00\x07\xd3\x19\x1d\x07\x70\x3a\x4d\xae\x3d\x0c\x88\x3f\xd7\x5c\x61\x9e\x8d\x4e\x8e\x35\x25\x9e\x1c\xdf\xde\x73\xfc\x53\x79\x03\x3e\xc7\x4f\x9e\xa8\xa3\x3d\xe4\xfa\xda\xb6\xb1\x0b\xb1\xb9\x0b\xf1\xa0\x77\x33\xdf\xc2\xff\xb5\x7f\xc0\x14\x59\x3c\xe8\x83\xed\x5d\x3f\xb8\x48\xc9\x11\x2c\x1f\xbe\xa2\xd3\x00\xf6\xd9\x80\x2f\xba\xde\x82\x11\x52\xab\x4c\x15\x23\xea\x21\xb0\xe8\x53\x0f\xfa\x7e\xcf\xe8\x53\x4d\x87\xea\x85\xb6\x45\xd4\x87\x80\xf9\x7c\x10\xf3\x6c\x31\x66\x04\x26\x5f\xa1\x80\xa8\xd7\x3b\xac\x32\xe3\x7d\x2b\x33\xde\x37\x97\xc1\xfe\xa0\xf7\xdf\x27\xef\x8f\x03\xa9\x36\xc4\x17\xd7\x15\x49\x91\x72\x79\x4c\x48\x5f\x7c\x3d\x85\x61\x7c\x7b\x1b\xab\x06\x7e\xda\xf3\xa5\xf8\xc2\xb9\xf8\x11\x97\xbd\x3c\xf7\x93\x90\xf7\x1c\x96\x3a\x72\x0f\x3b\xc6\x1e\x06\xce\x24\xa6\x34\xc6\x23\xe7\x22\x25\x28\x1e\xe1\x5f\xd0\xb5\x23\xcd\xbb\x7e\xa5\xdd\x44\x0e\x6b\x06\x86\x61\xaa\x85\x0a\xe0\xfa\xc1\x04\x4e\x8b\x82\x51\xd6\x33\x79\xe7\x39\x42\xcc\x4b\x00\xf2\x6f\x6f\x8b\x7f\xaf\xdd\x67\x01\x77\x97\xf5\xb3\x58\xb9\xe0\x65\x85\x0e\x30\xff\xf6\x36\xe3\xec\xd9\x09\xef\x61\xef\x66\x0e\x12\x1f\x78\xc4\x9b\x85\x37\x73\xc0\x40\xe4\x03\xe2\xcd\x00\x02\xb1\xfc\x41\x01\xf4\xfa\x11\x88\x07\x5a\x3c\x1a\x72\xf6\x30\x13\x82\x5e\x13\xcb\x8c\xe2\x0c\xe9\xf7\xce\x65\x3d\x14\xa2\xe0\x65\x9a\x92\x08\xb0\x90\xc9\x5f\x5b\x39\x5f\xda\x05\x24\xdc\x7d\x4e\x7e\x42\xc1\xdf\xd0\x50\xf3\x25\x92\xf3\x25\xf1\xbc\x4f\x06\x5d\xa6\x7e\x6c\xe1\x27\x21\xfc\x03\x9c\xf3\xd7\x34\x7c\x07\xd9\x38\xa0\xbf\x12\xe6\x61\xff\x09\x0a\x5e\xa3\x78\x34\x66\x4f\x98\xfa\x01\xd2\x90\x3e\x41\xc1\x61\xf4\xef\x19\x65\x7c\x0d\x3f\x61\xc6\x1f\x5b\xe9\xcf\xbb\x9d\x8e\x47\xc3\x34\x9b\x28\x51\x1d\x49\x67\x38\xf2\xf6\xd0\xf7\x7f\xa0\xfe\xce\xde\xee\x2e\xa7\xe4\x56\x2d\x25\xd3\xc9\xce\x30\x89\x87\x9f\xbb\x17\x31\xa1\x2c\xcb\xcd\x71\xd7\x47\xe8\x5a\x22\x15\xab\x6c\x20\xa6\x4f\xb4\x55\x85\x34\x46\x5c\x00\x43\x16\x28\x0f\x72\x9c\x46\xc2\x10\x17\xb0\xf4\x6d\x7a\x85\xc8\x4b\x48\x91\xe7\x6f\x29\xe5\x0b\x2a\x5d\x4b\xda\x71\x7b\xe2\xb7\x34\xff\xca\xdf\x50\xfd\x7b\x3e\x63\x2c\xc5\x6e\x4f\xf6\x56\x4d\x39\xf2\x08\xd0\xed\xf8\xc1\xaf\x33\x44\xae\x4f\x84\xbf\x3a\xdf\x9d\xd0\xf5\xb7\x68\xa7\x83\x3d\xea\xcf\xe7\xca\xbd\xc1\x24\x5b\xdf\x9d\xa4\x33\x8a\xe4\x35\x8c\xfc\x3d\x9b\x4a\xf3\xe9\xf0\xb3\x3b\xa8\x32\x0c\x43\xdc\x7e\xc7\x4b\x1f\x5d\x22\xcc\x05\x87\x9b\xf3\xd9\xf9\x79\x82\xa8\xe0\xe0\x7c\x2b\x25\x9a\x7f\x5f\xc6\xe8\xaa\x77\x15\xe3\x28\xbd\x12\x42\x97\xfd\x48\x42\x81\x76\x52\x96\x35\x32\x71\xca\x34\xee\x59\xb1\xd2\x52\x8a\xe8\x1d\x21\xdf\x16\xb7\x2d\x23\xd7\xb9\x14\xa9\xda\xf5\x90\x3f\x97\xca\x76\x76\xec\x2d\xe0\x33\xbc\xcf\x52\x3c\x4b\x62\xca\x10\x16\x91\x45\xad\x45\x33\xae\x86\x7b\x28\x4b\xf9\x9e\x5e\x38\xcc\x37\x38\xf2\xe9\xf5\x14\x29\xae\xfc\x12\x62\x9c\x32\x87\xcb\xb1\x0e\x74\xc4\xe5\x83\x03\xa9\x03\xb3\x15\xee\xfa\x05\xd1\x88\xd7\x6e\x30\xa1\xe7\xf8\x27\x56\x11\x8a\x48\xc8\xfa\x78\xb0\x45\x0c\xe9\x2b\x34\xff\xb8\xbd\xdd\xde\x03\x24\x30\xcf\xef\x70\x7b\x57\xdf\x41\xc6\xd8\x21\x5c\xfa\x0b\xf4\x79\x1e\x72\x2d\xbc\x6e\x7a\x08\x97\x3c\xb9\x20\xb7\x91\x73\x5e\xf6\x1f\x55\x37\xf3\xae\x75\x33\xef\x9a\x9b\x79\x77\xd0\xeb\x0f\x4c\x2d\x93\xf0\x59\xdf\x92\x04\x31\x5a\xc8\xa8\x89\xbc\x5a\x6e\xd4\xba\x39\xe6\xb1\x71\x4c\x01\xf2\x01\xff\x37\xc8\xd6\x4a\x28\x37\x3d\x01\x10\x50\xdd\x27\x12\x22\xe0\xc1\xb0\x7f\xf3\x19\x5d\xf7\x5c\x18\x45\x2e\x90\xd4\xc8\xb7\x17\xe0\x32\xb1\xb6\x59\x85\xbc\x4a\x2e\xd0\xe7\xfa\x46\xa8\xf5\x0d\xe6\xc3\x90\x6d\xa1\x84\x22\x27\xbe\xf0\x98\xb9\xd2\x10\x7f\x15\x10\x34\x49\x2f\x51\x70\x1e\xe3\xc8\x63\xbe\x28\x29\xea\x4d\x43\xde\xb2\xd8\xba\x6f\x55\x67\x5d\x10\x87\xae\x2c\x5f\x7c\xbe\x25\x69\x10\x86\x21\xeb\xa7\x83\x4e\xc7\x4b\x43\x97\xeb\x97\x71\xe8\xa6\x17\x17\xae\x2f\x68\x9b\x84\x78\xcb\x55\xf6\xd8\xac\x7b\x49\xa7\xe3\x25\x85\x7d\x79\x7f\xf2\x26\x97\x3d\x38\x19\x65\xf7\x66\x05\x05\x29\xb1\x48\x56\xe5\x13\x05\x99\x5d\xed\xa7\x03\xf1\x00\x58\x54\xd4\x7e\xac\xde\xe1\xf9\xdc\x43\x20\xe9\x23\xa1\x36\x6c\xc1\xb0\x5a\x78\x56\xdb\x2e\xf2\x24\x03\xd5\xb5\x16\x96\x91\x50\x97\xb8\xca\x52\xd9\x21\x66\xa1\x8b\x18\x47\x6f\x70\x84\xbe\xd8\x1b\x08\xc3\x10\xf2\x7e\x69\xdb\x9a\xf1\x25\x97\x38\x87\xc8\x43\x60\xcf\xef\xef\x0e\x3c\x2e\x7d\x01\xb9\x3c\xe5\x7a\xa8\xac\x50\xdd\x7c\xa9\x9b\xcd\x83\xdb\xb2\x8f\x4d\x35\xbe\x5b\xda\x3a\x6a\x0f\xfa\x00\xcd\xe7\x03\x9f\x1f\x89\x24\x98\x92\x94\xa5\x7c\x6d\x01\xe8\x03\x71\x4c\x12\x40\x79\x09\xaf\xd1\x3a\xc0\xb9\xb8\x99\x25\x78\x27\xbb\x63\x5c\x8a\x95\x4b\xc1\x1b\x29\x9b\xea\x8d\xe4\x29\x18\x10\x00\x4b\x47\x4f\x73\xd9\x9b\x39\xa0\x65\x75\x9d\xb3\x72\x29\x47\x52\x53\x86\xc4\x21\xed\x93\x01\x60\x12\xa2\xfc\xfd\x85\x87\xfd\x9f\xc3\xdd\xdb\x5b\x0f\xf6\xf1\x20\x44\x7d\x3c\xc8\x88\x0a\xe7\xa2\xed\x76\x8a\x3f\x5d\xa8\xf8\x2f\xd9\x21\x55\x5d\x36\x3f\xfc\x97\xa8\xf2\x0d\x3d\xca\x36\x6f\xc0\x4f\x37\xb1\x55\x3a\x1d\x63\x04\xf3\x6c\x04\x1b\x14\x2d\xd3\x55\x05\x41\xec\xf9\x20\xce\xab\xc3\xb2\xba\x58\xac\x74\x90\xac\x5a\xeb\xcd\x1c\xcc\xc2\x24\x50\xae\x53\x82\xbd\x82\x61\xc8\x55\xa7\xbe\x6b\x3e\x74\x07\xfe\x16\x52\x76\x11\xd1\x62\xbf\x3c\xb0\x24\x44\x0a\x26\x59\xd6\x32\x0b\xf9\x02\xed\xbb\xc6\x33\x77\x60\x58\xa3\x65\x5d\x31\xe8\xcf\x40\x3c\xf0\xd5\x55\x43\x5a\xb1\xb9\xab\x2b\x07\xf3\x00\x11\x92\x89\xbe\x40\x60\x72\x01\x87\xb6\x43\x28\x39\x48\x7a\xd4\xf7\x18\x40\xfe\x16\x0e\xf8\xc3\xdb\x5b\x0f\x87\x37\xfc\x57\xcf\x9d\x20\x4a\xe1\x08\xb9\x20\x82\x0c\xf6\xf0\x5c\xf2\xe3\xd4\xd0\x1f\x71\xc0\x5f\xdd\xde\xde\xcc\x81\x3b\x41\x8c\x8b\xc0\x69\xa7\xe3\x21\x4e\x2e\x9a\x92\x90\x78\xa9\xfa\x09\xf4\x33\x3e\xf5\x43\x38\x1c\xa3\x97\x29\x66\x24\x4d\xc2\xb4\xf0\xa7\x0f\xba\x7b\x61\x18\x7a\xc5\x42\xb7\xb7\xae\xeb\x67\x2b\xd7\xc5\x69\x97\xb2\x94\x20\x97\x2f\xc7\xb8\x30\x37\x21\xf6\x41\x5c\x12\x70\xb1\x3e\x48\x20\x5f\xc2\x20\x0e\xa6\x04\x5d\xc6\xe9\x8c\x8a\xd7\x19\xc5\x4b\xcf\xc3\x62\xc5\x60\xa6\x04\x65\x30\x1c\xf8\x20\x5b\x38\xb3\x4e\x47\x4c\x77\xb1\x13\x33\x25\x4d\x94\x0f\x6a\xcf\x4d\xa7\x08\xbb\x45\x7e\x25\x55\x05\xa4\xf5\x97\x11\x62\x2f\x8d\xba\x3c\x7f\x2b\x6b\x8c\x75\x3a\xe5\xb1\xc9\x3e\x99\x43\x50\xfb\x58\xf3\x09\x48\x69\x3c\xc2\x9a\xb3\xc8\xb5\xe6\x21\x83\x1f\xdf\x70\x9e\xcb\xc8\x8c\x6b\x31\x3d\xb5\x45\x51\xe3\x51\x3d\xf7\xc1\x4d\xa9\x97\x36\x03\x70\x99\x2a\x73\x30\x42\xec\x83\x49\xe2\xba\xaf\x0a\xf3\xc0\x9b\x8b\xe7\x00\x05\x97\x30\x89\x23\xc8\xd0\x4b\xb9\xb6\xb2\xcd\xc4\x17\xfb\x0b\x38\xfc\x9c\x5e\x5c\x98\xce\xe5\x78\x63\x42\xe9\x53\xf4\x14\xb0\x35\x6f\x36\x81\x45\x46\x6d\x67\xf7\xa2\x88\x9d\xc6\x13\x94\xce\xaa\xaa\xb3\x96\x34\x8d\x1d\x49\x54\x54\x15\x97\x29\x08\x65\x6a\xda\xd5\xdd\xb3\x38\x63\xf2\x26\x7d\xa5\x13\x6f\xef\x4a\xa5\x58\x08\x8a\x30\xdf\x66\xdf\xf3\xfd\xf5\x54\x3c\x93\x3d\xee\x74\xc4\x1d\x25\xff\x56\x6a\xc9\xbb\x2e\x7f\xdb\x33\x44\x76\x56\xe4\x4c\x26\xa3\xf2\x6f\x98\x47\x7c\xce\xfb\xc5\x9a\x95\xca\x14\x99\xcf\xb7\xac\x33\x89\xcb\x72\x7f\xb6\x53\x56\x3d\x1e\x66\x49\x02\x70\x38\x85\x84\xa2\x37\x5c\x91\x16\xd4\xd8\x8e\xe9\x31\x3c\xf6\x70\x76\xdf\x2a\xad\xd1\x7c\xab\xe1\x9f\x58\xa7\xe3\xe1\x70\xd7\x07\xc2\x38\x33\x81\x5f\x3c\x0c\xf6\x7c\xde\xe1\xd2\x5a\x24\x5b\x72\x1e\xaa\xeb\xb9\x46\xa1\x57\xab\xa2\x48\xac\x7c\xa6\x4b\x54\xe3\x04\x03\xfb\xe8\xa9\x94\x33\x01\xb5\xdc\x68\x58\x59\x36\x5a\xac\x22\x17\x84\x2b\xc1\x72\xef\xef\x12\x76\xc5\x0d\xd1\xe0\x2b\x50\x7e\x04\x01\xd5\x42\x05\xe5\x12\x5b\x61\xfd\x13\xa1\x12\xd1\x20\xf3\xcd\x42\xd2\x07\x40\xaf\x84\x4c\x77\xe2\x05\x73\x5d\x9b\x57\xcc\xb5\xeb\xca\xc3\xf0\x66\xee\x83\xea\xe3\xac\xfe\x30\x6f\x0a\x20\xf1\xbd\x3c\x97\xe2\x90\xaa\xa3\x97\x81\x44\x34\x26\xae\x1b\x63\xd1\xfb\xad\x4c\x0e\x4f\xfc\x8a\xb7\x41\xbe\xa6\x24\x8a\xb9\xc3\x3f\xce\xbd\x04\xc4\x3e\xab\xbf\xa2\xcf\xc6\x87\x4a\x1d\x96\x07\xb5\x3c\xc7\x93\x94\x22\x8f\x2f\xa1\xac\x7e\x79\x9f\xbf\xc8\xca\x5b\x5d\x5a\xf2\x9a\xef\x7e\xcc\x93\x96\x4b\x86\xe5\xb8\x35\x5d\x75\x71\x32\x60\x91\x5f\x9f\x5a\x3f\x7d\x6a\x7e\xfa\x74\xd0\xc3\xa6\xf4\x9a\x6d\x12\x21\x4b\xc6\xab\x4b\xaf\x5b\x4a\x78\xe7\xf5\x28\xa9\x84\x20\x18\x5d\x9f\x30\xc8\x50\xb8\x2f\x9f\xc8\x49\x0a\x2d\xd7\xa2\xcc\x72\x2d\x2a\x4f\x76\xb5\x32\x60\x40\x10\x4d\x93\x4b\xae\x28\xf6\x58\xa5\x81\x5d\xb3\x40\x79\x2d\x2a\x33\x1b\x36\x3e\xf8\x79\x2f\xe7\xc4\x66\x3d\x7b\x00\x97\x24\x1f\xc5\xf1\x84\x40\x35\xf7\x01\xf5\x30\x88\x01\x11\x4b\xde\xb2\x4f\xca\x5f\xa7\x1e\xf2\xa5\x43\x8d\x41\x8b\x9a\x26\xc4\x50\xdd\xb9\x6d\x37\xf1\x8a\xcd\x2a\xee\x42\x18\x8b\x17\x0a\x63\xa2\x83\xa6\x30\xa5\x3d\x8d\x8a\x93\xa1\x4f\x79\x71\x76\x3b\xfb\xbd\xca\x62\xa8\x38\x04\x15\xdf\x3f\x35\x4d\x1c\x99\x58\xa6\x4a\x7f\x9c\x61\x8c\x48\x31\xba\xcf\x30\xd4\x29\xc3\x18\x9f\x6f\x62\x78\x37\x31\xb5\xf4\xb4\x99\xcb\xc3\x80\x59\x88\x9c\x31\x41\x59\xcd\xdc\xf7\xb7\xd8\x82\xb9\xda\x2a\xf7\x8c\x95\xa5\xc2\xe2\x89\x2c\x84\x0f\x59\x95\x8a\x4b\x07\x37\xe2\xdf\x1e\x02\xea\x54\xed\xa1\x40\xfd\x9a\xfb\x73\x50\x14\x4d\x14\xc5\x51\x95\xdc\xfb\x92\xdc\x4f\x95\x94\xb4\xbd\xab\xa8\xb8\xbd\xb7\x1c\x07\xad\xe4\x09\x03\x2d\x6d\xde\x0d\x55\x4b\x95\x63\x87\xd0\xcb\x69\x63\xb9\xa2\x7c\xb0\xb8\xe0\x94\xa4\x5f\xae\xdb\x14\x54\xac\x81\xb4\x6b\x5d\x1f\x21\x8b\xcb\x72\xae\xd0\xb6\x6c\x6e\x52\x5a\x5c\x56\x85\xee\x65\x6e\x39\xc3\x14\x4b\x15\x67\x58\x1c\x2e\xc2\x97\x65\x57\x1c\x20\x6c\x48\x40\xdc\x53\x83\x04\xcc\xc0\x10\x44\x86\xb1\x6a\x52\x2c\x23\x6f\x41\xa4\x78\x80\xfa\x74\xe0\xa5\x3e\x48\xc2\x58\x22\x41\xa9\x9b\x90\x59\xf1\x28\xc7\xde\xcc\x9f\xc7\x41\x94\x62\x74\xc0\xbc\xc4\xd7\x87\x59\xc6\x7f\x13\xb5\xb3\x08\x80\xc6\x95\xc4\x85\xcd\x84\xaa\x65\x6d\x71\xfa\x18\x92\xda\x56\xa3\x0c\xcb\x2b\x56\x56\xaa\xcc\x14\x02\xb0\xbf\x95\xb5\xc5\xb9\xee\xcd\xc4\xa3\x62\x94\x9c\x0e\x2e\x46\x5f\x98\xcb\x35\x82\xac\x4c\x5c\x29\x23\x34\x05\x51\x28\x55\xd2\x9b\x14\x84\x79\x4b\x53\x7d\xb1\xb7\x82\xf4\x90\xe2\x21\xe2\x7a\x77\xaa\x46\x12\x22\xe1\xb9\x95\xff\x25\xd6\x7b\x88\xf4\xf1\x98\x51\x32\x14\x2c\xfb\xcb\x75\x88\x02\x15\x37\x2a\x18\xc7\x89\x2e\xa6\x23\x6f\x8a\x4f\xdf\xab\x35\x59\x7c\xfa\x52\xad\x6a\xf3\xa9\x1c\x24\xf0\x76\x41\x14\x20\x7c\xe9\x7b\x46\x5c\x91\x8e\x27\x3a\xfb\xf8\xe9\xf8\xf8\xe8\xa3\xeb\xab\x0b\x4d\x34\x74\x7b\xd3\x3a\x83\xbd\xd4\x0f\x15\x89\xd0\x17\x86\x70\xe4\xdd\x30\x48\x3f\xf7\xbc\x5d\x30\x0c\xf8\x2f\xdf\x23\x68\xc4\x39\x06\x64\x29\xf9\x38\xc3\x22\xee\x66\x02\xc9\xe7\x7c\x7e\x1d\x92\xb3\x62\x4b\xe1\x2b\x52\xb0\x21\x13\x79\xcd\xf5\xfc\xb9\x56\x33\x89\xd0\xeb\x43\x12\xf0\x39\xcf\xce\xa2\xf8\xc2\xe3\x0c\xd4\xbf\x91\xcf\xc3\xef\xe5\x21\xa4\x8f\x1a\xf5\xf4\x29\x40\x85\x93\x02\xf9\x1e\xf3\xb7\x34\x63\x95\x65\x76\x0d\x5f\x57\xe7\x7b\xa9\xa0\x22\x1c\xe9\x3b\x5c\x87\x04\x94\xa5\x53\xcf\xe7\x27\x97\x38\x43\xfc\xb9\xaf\xcf\x60\x5f\x28\xcf\x2e\x27\x84\xeb\x07\x53\x44\x2e\x52\x32\xf1\xfc\xb9\xe9\x3e\x9b\x0d\xb8\x40\x68\x6d\x5b\xb8\x68\x41\x3f\x54\xba\x1f\x02\xe9\x56\x6b\x72\xa2\x32\x39\x91\x24\x27\x2a\x92\x93\x86\x1e\x0c\xdb\xf4\x64\x89\x99\x6c\xd9\x74\x7c\xe1\x89\xa3\xfd\x06\x59\x67\x12\xe9\x99\xac\x9e\xf9\xd9\x4c\xa2\x76\x33\x89\x8c\x99\x14\x4a\x8e\xef\xf9\xe2\x4b\x4f\xd5\xb4\xcf\x3b\x43\x05\x2b\xcc\xba\xf3\x27\x6b\x77\xbe\x07\x54\xf2\x54\xdd\x58\xca\xf7\x3b\xc2\x8c\xab\x00\x59\xad\x40\x95\xde\x37\x3b\xf6\xa7\xbc\x3b\xf0\x9c\xcc\xa6\xcc\x73\x95\x77\x21\x48\x55\x3f\xf6\x76\xdb\x74\xbe\xea\x12\x21\x57\x49\x5e\x7d\x6e\x55\xce\x38\xb1\x3f\x9f\x7b\x05\xef\x6e\x48\xaf\xf1\x70\x63\x4b\x73\xe3\x0b\xd3\x66\x1c\xb1\xac\x84\xb9\x22\x5c\x65\x35\xfd\x68\x9d\xbe\x67\x00\xea\x39\x7f\xd6\xa3\x7a\xea\xd4\xcb\x3d\x73\xb6\x7e\xac\x9f\x2d\xaa\x6a\xf8\xe3\xdd\x4e\x96\x38\xaf\xc6\xa1\xb7\x0b\x52\x2d\x9a\xfa\x1e\xd6\x3f\x81\x56\x3d\xa7\xfe\x96\xfd\x54\x18\x0b\x01\xf6\x9c\x57\x10\xe7\x15\x8c\x79\x71\xdb\xd1\x72\x2e\x8a\x5f\xf2\xe2\x49\x5e\xfc\x9c\x17\xb7\x9d\x4f\x97\xa2\xf8\x35\x2f\x3e\x6b\xe8\x1e\xff\xdc\x72\xe6\x5d\x8b\xaf\x47\xfc\x6b\x98\x7f\x6d\x1e\x3b\x1f\xf8\x81\x09\xe4\x13\xe1\x17\x2d\x1f\x64\x6e\xc2\xbc\x62\x79\xa8\x8e\x44\x5d\xef\x79\x5d\x34\xaf\xcb\x68\x5f\x9f\xc2\xef\x45\xc1\x33\x9b\x44\xff\xde\x43\xfc\xf8\xcc\x6b\xf7\xaa\xba\x5b\xee\x08\x3b\x12\x56\x29\xa1\xbb\x65\x87\xfd\x99\xa8\xfc\x88\xf7\x82\xe4\xb5\x9c\x81\x4b\x93\x12\x52\x40\x38\xda\x2a\x0a\x0e\x35\x1a\xc6\xb8\xa0\xd2\x14\xe4\x2b\xa1\x69\x15\xf4\x19\xb5\x25\x84\xd2\x5e\x70\x7e\x60\x5a\xf3\xce\xf4\x4c\x64\x33\xf1\x78\x3e\xc0\x5e\x8d\x51\xb0\x4e\x47\x96\x1f\x6d\x48\x3f\xe2\x67\xfa\xdc\xd7\x44\xcd\x65\xac\x0d\x1a\x02\xf3\x81\x59\x9c\xc7\xda\xd9\x5c\xd4\x50\x9a\xc5\x5a\xc3\x8a\x68\x12\x07\x7a\x48\x5c\x7f\xf9\x73\xd3\x70\xc3\x75\x41\x0f\xc9\x10\x1f\x31\xf4\xca\x1d\x10\x06\x29\x3f\x50\x2a\xcf\x09\x88\x7d\x50\x34\xfd\x5a\xae\xec\x94\x4d\xae\xd3\xc9\x8d\x73\x28\xb0\xf8\x7e\xe8\x66\x6c\xaf\x78\x4b\xf9\xdc\x08\x31\x78\x83\xd3\x72\x6e\x52\xb3\xb0\xe1\x0c\x89\x54\x9c\x37\x36\xe3\x64\x8d\x0d\xa6\xb2\x86\x01\xce\x36\x42\x3b\x8b\x8f\xaa\x48\xad\x5d\xb5\x74\x4b\xf5\xcc\x7d\xc0\x16\xbb\xc2\xd5\x68\x9a\x77\x6a\xd8\x5c\xf3\x0a\xcb\xe0\xd5\xa0\x52\xeb\xca\x57\x2a\xc2\xba\x68\x3d\xef\xa4\x1d\xb0\x68\x1e\x67\xf3\x3c\x52\x66\x33\x96\x31\xb6\xd0\x32\xc6\x67\xa7\xb5\x61\xec\x69\xc5\xe2\x55\x90\x20\xf6\x7b\xc5\xfb\x7d\xc3\x72\x6a\x19\x6e\xee\x1d\xa1\xad\x65\x6c\xb9\x85\xa5\x6c\x28\x77\x7c\x19\x63\xca\x2e\x39\xc3\xd3\x5a\xfc\x8a\xeb\xa2\x3f\x00\x69\x88\x84\x97\x99\xe8\xa4\xe6\xaf\xda\xcb\x2c\xb3\x2e\x53\xa3\xba\xfc\x0e\x93\x66\xf0\xe1\xbe\x70\x59\xc3\xbc\x26\xc8\x65\x06\x17\xd0\x90\x56\x43\x5a\xb2\x93\x6a\x3b\xaf\x04\x01\x37\xa6\xaf\x10\x65\x24\xbd\x46\x11\xaf\xa9\xfa\x32\x41\x4c\xbe\x2a\xbd\x79\x2b\xf3\xa7\x0b\x79\x0f\x18\x2e\x74\xf1\xa0\xd3\xf1\xf8\x3f\x61\x9a\x69\xd1\x31\x8e\x99\xdd\xbb\x6a\xab\xe4\x50\xc8\x8f\xd7\x92\xa3\x14\x8c\xe4\x19\x1f\x9c\xa9\x75\x94\xf3\x39\x9b\x9c\x22\xbb\x49\x65\x37\x35\x66\x16\x17\x72\xc4\x29\xe4\xab\xea\xcf\xe8\x6c\x8a\x48\x8d\x1c\x0a\xca\xc7\x4e\xaf\xe4\x7b\xbb\xa0\x83\x42\x50\x02\x0d\xb7\xff\x62\xfc\x6a\xbe\x3d\xe5\x66\xa6\x3e\xf6\xcb\xbe\x0d\xaa\x8f\xa8\xd0\x41\xcb\x81\xd5\xba\x7e\xcb\xb7\xd6\x36\x0a\x27\x43\xeb\xda\x8b\x02\x9a\xad\xde\x8a\x21\xbe\xb1\x3e\x51\xda\x5a\x4f\x99\x6d\x35\x56\xc3\x0b\x5b\x6b\xb9\x8a\x93\x44\xed\x00\xb3\xb2\x85\x8b\x04\x14\x2e\x78\x4a\x2b\x42\x92\xd8\x93\xa7\x24\xdf\x0b\x9a\x59\xdf\xa8\x05\xd9\xa3\x40\x75\xad\x07\x41\x81\x25\xf6\x60\x91\x45\xce\x73\x47\xf9\x9b\xe5\x78\x63\x6e\x36\x7e\xcc\x87\x6e\xdd\x45\xb5\x90\x83\x84\x77\xc3\x56\x39\x1c\x31\x77\x0f\x2e\xef\x15\x11\xce\x67\xf1\x0e\xf2\x81\xf4\x58\x20\x07\xb9\xa1\x97\x48\x8e\x50\x7f\xf5\xcb\xc4\xa2\xf1\xe4\x55\xae\x88\x79\x37\xe5\x5d\xc4\xcf\x04\x2c\xf7\xbe\x06\xe9\x05\x25\xd9\x4a\x2f\x03\x90\xf9\x2d\xe9\xf5\x42\x72\xe9\x57\xdc\xb0\xa9\x6a\xec\x8c\xcd\xac\xc8\xcb\x19\xd9\x7c\x51\xbc\x78\xbd\x61\xbe\x95\x5b\xa8\x26\x84\xc7\x42\x0b\xed\xa5\x33\x65\xa7\xa3\xd0\x26\xcb\x2f\x82\x98\x49\x83\xc8\x81\x8d\xb2\x4a\x4a\x9f\xf7\x6c\xce\xb4\x9d\x4e\x43\x73\xe2\x1a\x5e\x8b\x38\x61\x18\x66\xcf\xb7\xf5\xef\x5c\x1c\x3a\xd0\x7d\xeb\x65\x0d\xfa\x1e\xaa\x06\x1a\xdc\x51\x18\x03\x79\xcc\x61\x0c\x59\x2f\x61\xd9\x6d\xbd\xd3\x21\x05\x99\x92\xf9\x00\x8b\x67\x00\xf3\xad\x90\x7d\x48\x8b\x1f\x7a\x34\x74\x67\x58\xb6\x18\xe5\xc2\xcb\x47\x89\x55\xd5\xe9\xa8\x1f\x7c\x6f\x1e\x18\xbf\x7b\x65\x63\x7c\xd9\xa1\x49\x93\xf0\xf9\x76\xc5\x09\x77\x0c\xa9\xe1\xdd\xab\xdd\x6f\x99\xdf\xe9\x28\xff\x24\x0f\x85\x11\x57\xb1\x9f\xfb\xcf\xb3\xf8\xd0\xcc\x8d\x38\xf3\x0b\x5b\x14\x63\x4a\x40\xee\xfe\x08\x45\xff\xc5\xff\x65\x7b\xd8\xef\x41\x75\xdf\xc4\x17\x17\x1f\xc3\xed\xad\xb9\xc6\xd2\x6c\x8d\xd9\x1c\x07\xb2\xae\x32\xfb\x82\x3b\xe1\x07\x90\x83\xbe\x08\x38\x3b\x71\x03\x36\xa3\xcc\x41\x31\x1b\x23\xe2\x9c\x23\xe1\x88\xe5\xa4\xa4\xb0\x02\xb7\x50\x55\x73\x50\xc7\x0f\xeb\x74\xd8\x42\xaf\x46\x43\x3d\x28\xab\x0e\x42\x42\xef\x74\x62\x69\x0a\x32\x6f\xa3\x40\x26\x80\x79\xb1\x6e\x94\x22\xf6\x41\xb7\xf5\xfe\xe2\xf6\xb6\x38\xa9\x99\x61\xe6\xec\x4c\xf4\xe8\xec\x2c\x64\x00\x49\x22\x1a\x75\x27\xb9\x4f\x5b\xd1\x25\xc2\x58\x6d\x61\x69\xb5\xdd\xde\x6e\xeb\x25\x96\x8d\xd0\xd7\x17\xca\x7c\xee\x2b\x6f\x03\x3a\x86\x93\x42\x11\x0b\x0f\x12\xc6\x38\x5d\x68\x77\xcb\x88\xc0\x7a\x05\x99\x41\xf4\x80\xa5\x12\xfa\x46\x2e\x91\x4a\x63\x1e\x2f\x0e\xfa\x26\xeb\xf5\x6f\x84\x18\xbd\xbd\xab\x6e\x2d\x73\x61\x7d\x4f\x98\xb0\xed\x57\x8f\x18\x10\xb1\xc0\x79\x7f\xb3\xc8\x61\x65\x10\x33\xf9\xe4\x16\x0e\xab\x9d\x20\xb9\x30\x03\xa0\x3f\x17\x41\x36\x38\xac\x91\x76\x74\x07\x66\xf2\x05\x36\x39\xc8\xcc\x8c\x25\xd9\xc6\xb7\xb7\x5a\xa1\xe1\xcb\xda\xc3\xbe\xc9\xcf\xb3\x95\x8f\x0f\x86\x1e\xf2\x7b\x46\x40\xfc\x50\xc5\xff\xe6\x1e\x57\xc6\x96\xf8\x88\x2e\x10\x41\x78\xa8\xf7\x85\xc8\x32\x33\x86\x14\x7f\xc7\x9c\x73\x84\xb0\xc3\x35\x8c\x18\x26\x31\x45\x91\xd3\x75\x84\xdc\xe6\xf9\x85\x12\x7c\x2e\xb8\xbe\xb2\x55\x0d\x15\x8f\x8c\xc3\x2e\xb2\xaf\xde\x83\x9c\x4b\x18\x4f\xad\xe7\x57\xbe\xa0\xb3\xc0\x81\xe2\x57\xc2\xe7\x8c\xff\x6f\x83\xce\x5c\x6b\xbb\xde\x56\x9d\x48\x71\x16\x99\x65\xcc\xc9\xed\x2d\xe2\x67\x08\xd7\xf4\x2a\xda\x3c\x7f\xe1\x77\x3a\x7b\xfa\xa5\x69\x3b\x50\x27\x5d\x6e\x0d\xf0\xaa\xdf\xfb\x5b\x2c\x97\xce\xec\x66\x2f\x9b\x0f\xde\x93\x27\x00\x07\x67\x05\xd7\xf2\x1a\x7b\x58\x9d\xef\x92\xcd\xf6\x3b\x9f\x57\x36\x1d\xf2\x6f\x52\x2f\x06\xc8\x57\xf2\x78\xe2\xc5\xc6\xb5\x3d\x67\x82\xda\x26\x90\xc7\x88\x4b\xcf\x34\x1f\x78\x34\x64\xf6\xad\xe5\x17\xdd\xab\xa8\x12\x15\x43\xa8\x7e\xdc\xde\xca\x60\x55\x40\x03\x89\xda\x99\x49\x71\x99\x4b\x1a\x02\x34\x18\x43\x1c\x25\x88\x84\x44\x1a\xc5\x87\x1e\xf5\x7d\x50\xb6\x2e\xc1\xf2\x13\x1d\x83\xb0\x07\xa8\x96\x76\x69\x16\xb0\xe2\xc5\x40\x45\xf1\x15\xa8\x66\x89\x96\x8a\x2f\x3c\xdb\xac\xeb\x50\x2c\x2f\xf2\x0c\x3f\x2f\x1f\x94\xeb\x93\x0c\xab\xe6\x4e\x48\x45\x6a\x49\x9f\xa5\x6a\xd3\xa2\x4d\x25\x5d\xdb\xcc\xb8\xe2\x3d\x27\x9c\xd4\xd1\x14\x99\x2c\x4e\x7e\x59\x4b\x25\xed\xc1\xd2\xa6\xe9\xe2\x57\x58\x78\x59\x1d\x32\x82\xa1\x29\xaa\x2c\x6f\x7a\xab\x62\x50\x03\x7b\xdb\x61\x88\x74\xd0\x84\x1a\x5c\xc5\x14\xde\x38\x32\xf5\x97\xc7\x17\xf2\xc0\x07\xf1\x9c\xf3\x9b\x76\xca\x82\xf2\x77\x32\xff\xe8\xd2\x71\xac\x5e\x6f\x56\x9b\xbc\x22\x70\x2a\xb7\xac\x55\x38\xc0\xe8\xaa\x70\xfb\x6a\xc4\x9e\xb1\xdb\x5b\x16\x86\x61\x59\x28\xcc\xd6\x9c\xf2\x8c\xc7\xc2\x60\xc5\xfc\x2d\xf9\x95\x90\x95\xad\x76\x7c\x33\x62\x4d\x0a\x88\x9c\xdf\x69\xb8\x2b\x5d\x2d\xda\x32\xc4\x7b\x21\xaf\x1a\x9e\xa3\x42\x80\x9d\x93\x5a\xe9\x6b\x91\xa5\x96\x2c\xb0\xd4\x66\xb0\x0c\x30\xdc\x7d\x0e\x7f\xd2\x7d\x7b\xfe\xe4\x49\x66\x8b\xc4\x7d\x38\x10\x1e\xfb\x9e\xc8\xaa\x66\xb4\xe8\xeb\xf8\x2a\x8b\x60\xb3\x48\x02\x66\x80\xfa\xca\x01\xc0\x3e\xc7\x66\xe8\x22\x05\xc9\x41\xec\x51\xbf\x97\x72\x16\x94\x45\x7c\x92\xb9\x87\x3c\xfb\x71\xc8\x7c\x5f\x68\x19\xc2\x68\xc7\x44\x4c\x6b\xfe\x51\xed\x27\x4a\x50\x04\x28\x88\xe9\x09\x4b\xa7\x53\x14\xd9\x2e\x15\x89\x87\xfc\x20\xc3\x99\x57\x05\xf9\x57\x14\xc9\x3d\xfb\x61\x0c\x2b\x37\x6e\xe2\x23\x94\xbf\x65\xea\x03\xc5\x17\x4e\x25\x87\xb6\x7c\x33\x2c\x14\xd0\x9f\x7d\x80\x94\xc6\x97\x48\xef\x5c\xdb\x87\xd3\x52\x11\xa6\x8d\x3e\x5c\xfa\xf9\x5f\x04\x3f\xbf\x83\x53\x80\xcd\xbf\xcc\x95\x98\x9f\xd8\xd2\x3e\x9b\x11\x90\xaf\xb2\x34\x41\x01\xa4\x14\x11\xe6\x49\x65\x03\x03\xf7\x3b\xbe\x5e\xbf\x73\x62\xca\x75\x0b\x89\x25\x0c\xb1\x23\xe8\xe1\x48\xe9\x0d\x38\xe7\x33\xe6\x8c\x52\xe1\x78\x06\x70\x41\x61\xf4\x6f\x54\xfc\x67\xb9\xdb\x07\x48\x52\x2d\xc8\x21\x17\xa4\x87\xbc\xf8\x13\x45\x42\x71\xb5\x5d\xd7\xc9\xaf\xa6\x44\xfc\xfb\x4a\xca\x38\x5c\xd9\xb7\x3d\xf7\x7c\xbf\x67\x53\x35\xd5\x58\xad\xe6\x03\x4d\x07\x61\x73\xe9\x74\x0a\x7f\x9a\x98\x31\xc5\x96\x9c\x18\xd3\x38\x42\x8e\x1a\xa5\x23\xde\x39\xda\xcc\xe7\xc4\xf8\x32\x1d\xca\x63\xd4\x05\x15\x5a\xf8\x45\x55\x19\xfb\x37\x4c\x2e\x70\xce\x29\x6e\x44\x55\x72\x99\xf4\x10\x10\x7f\xf5\x30\xc8\x97\x5c\x6f\x1f\x14\xd6\x52\x0f\x01\x4d\xc4\xde\xf6\x1e\xa0\x72\x1d\xf3\x9f\xe5\xb5\xcd\x9f\x95\xba\x22\xc3\x7a\x58\x3c\x41\x27\x0c\x4e\xa6\x3d\x1c\x64\xbf\x6f\x6f\x85\xee\x82\xd3\x2b\xcf\xaf\xc5\x35\x13\x5d\x76\x63\x7a\x4a\x66\x54\x24\x98\xd5\x4c\x7c\xaf\x18\xbb\x6e\xb0\x28\x52\x60\xa8\xd8\x07\x92\x67\x11\x0b\xcf\x22\x9c\x67\x51\x99\xc0\x20\xa6\x99\xcc\x6c\xeb\x03\x05\x8a\xa9\x14\x9d\x25\x55\x74\x8f\x1d\x63\x8d\x28\x7d\x48\xd0\xb6\x8f\x06\x73\x40\xcd\x72\x62\x03\x16\x4b\xf0\x7d\x5b\xe6\xc4\xc5\x71\x96\x1c\x31\x55\xfb\xd6\xe3\x9e\x85\x85\xea\xb3\xdb\xbd\x3e\x1a\x64\xde\x9f\x05\xeb\x78\x73\xc3\xd4\x38\x5d\xf8\x80\x85\x2d\xad\x66\xb0\x22\x60\x46\xdc\x43\x38\xf2\x18\xaf\x29\x27\x57\x98\x2c\x58\x58\x74\xd5\xf2\x85\xd7\xbc\xb3\x93\x69\x4a\x51\xf4\x01\xb2\x71\x55\xce\xb1\x7e\xb4\x65\x84\x90\x85\x21\x3a\xe8\x0f\x7a\x62\x52\x78\xe3\xc7\xef\x8f\x8f\xf2\x36\x77\xe5\xc3\x97\x87\x1f\x4e\x3f\x7d\x7c\x73\xfc\xd7\xb3\x0f\xaf\x0f\x4f\x8c\xf7\x7b\xf2\xfd\xe1\xe9\xd9\xe9\xe1\xc7\xbf\x1e\x9d\xe6\x6f\xf6\xe5\x9b\x17\x9f\x5e\xbc\x78\x6b\xf9\xf0\xa9\x7c\x9d\x6f\xb6\x1a\xba\x88\x77\x73\xb1\xd7\xf8\x32\x84\x23\x69\xa0\xaf\x1b\xe7\x96\xf4\x83\x9a\x2e\x64\x73\xa5\x0a\x73\x3e\x57\x7a\xe1\xf9\xb2\xf1\x37\x7a\x87\x2f\xdf\x0b\x54\x39\xfa\x5a\xf4\xcd\xd6\x5e\xb1\x93\xb6\x12\x9e\xbc\xf2\x72\x14\xf0\x4e\x4e\x53\x85\x6c\xed\x15\xd7\xa6\x2a\xa6\x3e\xca\xcf\x8b\x45\xdf\xe5\x25\xfd\x39\x28\xb2\x6b\x93\x26\x50\x7f\xa6\x1a\x50\x7a\xf3\x07\xf9\x01\x8a\x2c\x4b\x5b\xb1\x57\xd5\x21\xb5\xb2\x17\x76\x47\x95\x53\xcd\x64\x7c\xb5\x5a\x7f\xf6\x4a\x96\xa4\x64\x78\x94\x88\x9c\x06\x6d\x76\xa5\xe8\xdb\x0b\x41\xb2\x6a\x71\xaa\x85\x1a\x5a\x2e\x2a\x2d\x2a\xa8\xc4\x89\xb6\x58\x61\xa1\x6a\xe4\x74\xe3\x5a\xc5\x24\xb5\xac\x8a\x2b\x23\x96\xc7\xe1\xf6\x2e\x57\xd1\x78\x1f\x65\xa7\xfe\xc6\x79\x60\xd6\xc5\xed\x2a\x71\x69\xa9\x28\xf2\x6f\xd0\xed\xad\x39\x5d\x31\x8e\xab\x37\xa6\xf3\x79\xcd\xd9\x64\x30\x44\x19\x5b\xa0\x84\xea\xec\x90\xa2\xcd\x88\x2a\xc0\x26\x4a\x48\x8d\xdb\xb0\x9f\xc8\x07\x81\xbe\x64\xb2\x9a\x88\x0a\x5d\x31\x3f\x30\x55\x5f\x29\xe4\xda\xdf\x02\xea\xb7\xc4\xf9\x28\x84\xa4\x2c\x0a\x76\x69\xa5\xd5\x6d\x12\x5a\xb6\x2e\xbe\x7c\xbe\x85\x5b\xfa\xb4\x94\xb5\x3a\xab\xba\x84\x17\x3a\xb6\xd4\xdc\x60\x67\xd2\xb2\x70\x7e\xcc\x54\x50\x5f\x83\x1c\x3d\x17\xcf\xcb\xe2\xbe\xef\x61\x71\x8b\xe8\x2b\xcd\x12\x05\x12\xa9\x25\xc4\xa5\x58\x63\x0d\x55\x70\x36\x95\xa6\xb5\x97\x30\x49\xce\xe1\xf0\x73\x66\x15\x62\xb7\xb7\x9e\xb5\x80\x08\x8e\x65\x73\xb9\x13\xfa\x44\x68\x72\xd4\xd7\x22\x55\x1a\xee\x3e\x4f\x73\xbc\x92\xf4\xc9\x13\x9f\xf6\xd3\x81\xe1\x04\xe9\xc1\x96\xbe\x0b\xea\x8f\x05\x7e\x04\x19\xce\x98\xfc\xe6\xe2\x42\x7e\x94\x21\x8c\xcd\x39\x91\xa5\xbb\xc5\xc7\x93\xbf\x7d\x90\xcb\x59\x12\x2b\x98\xc4\x5f\x62\xec\x19\xf3\xad\xc9\x86\x8d\xac\x0e\x64\xd1\x6a\xe7\x8b\x54\x70\x58\xcc\x57\xed\x05\xe4\xd3\x7f\xe7\xee\x3e\x6b\x1a\x54\x5d\x91\xb2\xae\x4b\xd0\x28\xa6\x8c\x5c\xf7\x26\x30\xc6\x2e\xc0\x21\x0a\x92\x34\xfd\x3c\x9b\x7a\xac\x6a\xce\x37\x56\xcd\x08\xb1\x43\xc6\x48\x7c\x3e\x63\xc8\x73\xe3\xc8\x55\xd6\x7d\x2d\x36\xf5\xd9\x60\xf1\xad\x6f\x4c\xbb\xe9\x8c\x71\xdd\xe5\xd1\x07\xaa\xeb\x94\xea\x5b\xf9\x41\x45\xc2\x6d\x76\x7b\xbb\x2d\xac\xbd\x0c\xc6\x98\x7a\x8c\xeb\x0f\x28\x14\x56\x1f\x64\x3e\xde\xd2\xe7\x4c\xa7\xb3\x0d\xdb\xc7\x0c\xe2\x94\x4c\x60\x12\xff\x86\xba\x8b\x6c\x5a\xe6\x85\xf8\x37\x34\xe2\x6f\x68\xc4\xff\x89\x68\xc4\x16\xc7\xf1\x76\x7b\xfb\x66\x5e\xc0\x92\xd0\x5e\x30\xb9\x31\x55\xc3\x72\x48\x13\x87\x42\xd4\x25\x3e\xb8\xc1\x70\x82\x7a\x48\x19\xd0\xd9\xbc\x85\xa3\xcb\xaf\x14\xde\xd3\x01\xb1\xa6\xc3\x53\xc6\xf0\x2a\x1e\x4f\x6b\xa2\xc6\xa2\x1c\x15\xab\x80\xba\x7a\x98\x24\x22\x1d\xc7\x22\x0a\xd2\xf8\x3c\xb9\xb3\x1c\xd3\xb6\x13\x03\x09\x6b\xd1\x73\x1c\x62\x11\x8a\x74\x22\xdb\x7f\xee\xab\xdb\x24\x2c\x50\x6a\x4f\xaf\xa7\xa8\xd3\xc1\x35\x88\xb5\xfc\x48\xc8\x8e\xc6\xc6\x11\xa2\x28\x66\x29\xd9\x49\xe2\xd6\xec\xde\x0a\x4f\x13\x5f\x78\x22\x30\x27\x88\xa9\x4e\xf9\x90\xb5\xef\x21\x11\xd1\x61\x3a\x3a\x94\x3d\x15\xb6\xcb\xfe\x4c\x25\x6f\x29\xce\x15\x14\x7f\xca\x2b\x96\x0d\x5e\x90\x74\x62\x69\x41\x3b\x30\xe9\x9b\x0f\xe1\xbb\x50\x06\xaa\x44\x46\x1f\x01\xd3\xa2\x58\xc5\xa1\xa6\xe8\xb7\x80\x7c\x95\xe0\xe3\x8f\xa0\xbb\xe7\x6f\xb9\xb2\xb8\x1b\x8a\x5b\x94\x82\x1f\x96\x38\xb7\x0a\x4f\xc4\xbd\x94\x38\x18\xdd\x77\x70\x2a\xbe\xb9\xbd\x75\x4f\x90\xfc\xdc\x3a\x30\x51\xf8\x50\x2f\x68\xf5\xc9\xce\xff\xf5\x0e\x7a\x9f\xe2\xdb\x37\x3e\x66\xde\x41\xef\x8f\xb7\x7b\x3f\xdc\x3e\xdd\xf7\xbd\x83\xde\xcb\x04\x4e\xa6\x28\xf2\x0f\x44\x25\xff\x67\x27\x60\x88\x32\x8f\xf8\xc5\x91\x96\xa8\xc5\xc5\x5f\x8b\x97\xcd\x1b\x2c\xa0\x8a\x1c\xc8\x18\x9a\x4c\x99\xc8\xc5\x37\x25\x08\x46\x0e\x4e\x71\x57\xcc\xcd\x79\x92\x3b\x88\x05\xff\xc2\x6f\xb0\x93\x92\x08\x11\x5e\xf4\x1c\x39\xba\x08\x10\x1f\x08\x2f\x6c\x65\x46\xa7\xd2\x63\x67\x0c\x2f\x91\x03\x9d\x7e\x69\xba\x07\x9e\xef\x4c\x10\x1b\xa7\x51\xe0\xfa\x73\xaf\xea\x9a\x66\x5c\x76\xfd\x8c\xf4\x5d\x14\xd7\xc5\xc3\xec\xaf\x12\x58\x37\x1f\x9a\x5c\x99\xcc\x7f\x8e\x7f\x62\xe2\xd8\x26\x1a\x8d\x30\xbf\x58\xd9\xd8\x5e\x96\x0e\x64\xa6\x2b\x8b\x10\x62\x95\x21\x20\x60\x24\x9e\x78\x7e\x86\x8d\x85\x74\xdc\xf0\xdb\x18\x33\x19\x4e\x02\x34\xb4\x95\xf0\x28\x2f\xa0\x63\x90\x8d\x73\x5d\xde\x35\x65\x77\xa1\x2f\xae\x4f\xe1\x48\xf0\x14\xa1\x42\xe9\x22\xbe\x0d\x86\xac\x1d\x0b\x7e\x99\x46\xe8\x5d\xcc\x17\x55\xce\x8b\xa5\x22\x80\xc8\x6b\x94\x4c\x11\xf1\x5c\xc9\x81\x5c\x32\x3b\xbf\x76\x41\x15\xbf\xa3\x3f\xe0\x5c\x2c\x7b\x2c\x90\x0e\x74\x60\x15\xf3\x90\xe7\x4a\x69\xc3\xf5\x7d\x10\x87\xa9\x00\x45\xb5\x79\xaf\x76\xc5\x15\x72\x40\xc9\x30\x87\x2a\xdb\x19\xa6\x11\x9a\x88\xee\xed\x4c\xd2\x08\xed\xb8\x1a\x96\x1e\x02\x77\xc7\xf5\x8d\xbf\x82\x7f\x53\x57\x88\x32\x5b\x38\x80\x33\xce\x72\x61\xf4\x4e\x64\xaf\x01\xd0\x07\xf1\x01\xf5\xfc\x9e\x57\xe9\x10\xe6\x8a\x65\xda\xdf\x1d\x00\x37\x49\x61\x54\x1c\x1e\xf5\x64\x38\x79\x0e\x65\xa6\xe6\x5b\xe3\x82\x91\x66\x94\x53\xbe\x68\x76\xce\x67\x71\x12\x95\x93\xc0\x29\x94\x09\x99\x4d\x13\xb1\xea\x93\xae\x42\x22\x8b\x53\x6c\x33\x92\x70\x2d\x93\xd7\x2e\xb2\xa2\x76\x35\xb4\xa7\x0d\x9a\xe2\x51\x08\x10\x70\x75\x9c\xbd\x2c\x48\xb3\xce\xa1\x6c\xd5\x3e\xb9\xd6\xf0\xc2\xd6\xe0\xa1\x0a\x35\x56\x5c\x53\xa5\xe1\x8d\x84\xd2\x14\x50\x74\x5c\x0e\xc4\x60\x84\x98\x48\x1b\x59\xe3\x83\xc1\x4b\x09\xcb\xe2\x2b\xfe\xa1\x45\x6d\xa2\x9d\xce\x76\xf1\xd8\x66\x8a\x8b\x8a\xbb\x6d\x6d\xc5\xc8\xae\xe7\x5c\xde\x03\x17\x30\xe9\x4c\x21\xec\x9b\xc5\xaa\x8b\xed\xf3\xd2\xc2\xf0\x62\xf3\x07\x83\x7d\xc1\x0f\x79\xff\x3d\x7f\x10\x22\x55\xa5\x74\xd0\x28\x5b\xa6\xb4\x07\x2c\xcc\x84\x65\x40\x43\xe6\xe1\xdb\x5b\x28\x8f\x54\x90\x86\x54\x26\x75\xe3\xb4\x03\x49\x48\xf8\xb9\x99\x6e\x2b\xe7\x9b\xac\x21\x89\x77\x2a\x3d\x41\xa8\x97\xe6\x58\x42\xfc\x91\xc0\x6d\x48\xfd\xc0\xe8\x03\x3f\x80\x93\x30\xe9\xa7\x83\xb9\x84\x01\xd5\xd5\xf1\x71\x7b\x3e\x18\xda\xfc\x06\x66\x01\x4b\xff\xfb\xe4\xfd\xf1\x81\xfe\xe1\xf9\xbd\x3c\x4a\x68\xa6\xc8\xe8\x67\x2f\x85\x67\x82\xa9\x3b\x0f\xfd\x20\xc6\xc3\x64\x16\x21\xea\xc5\xca\x43\x21\x0a\x8d\x6c\x1e\x19\x87\x8a\x81\xeb\xe8\x9d\xe9\x44\x29\x12\x7e\x7d\xe8\x4b\x4c\x39\xe3\xd9\x92\xa7\x7a\x94\xb9\x4e\x81\x48\x8c\x62\x12\x9a\xbd\x89\xfd\xad\xe2\x1a\x98\xf8\xb7\xb7\xd9\xfa\x4c\x44\xe0\x52\x15\xe2\xbb\x1f\x0f\x84\xa1\xaf\xd3\x51\xd1\x55\xa1\x2c\x1b\x28\x89\xc9\x10\x46\x0f\xd4\x69\x3d\xe9\x74\xbc\x49\xd8\x1f\xf8\x60\xd2\x87\x81\xca\x52\x7b\xe0\x72\x2d\x5c\xc9\x50\x1a\x78\x5a\xfd\x39\xf0\x94\x0f\xb1\xb9\x10\x67\x20\x06\x13\xdf\xef\x65\xbe\x77\x59\x55\xb7\xb7\xae\x70\xa5\x0c\xd5\x57\xc5\x5e\x74\x3a\x02\xb6\xbc\xee\xf5\x41\xb1\x05\xdd\x70\xaf\xfc\x58\xb5\x55\x44\xb5\xd6\x88\x8e\x9e\x30\x1d\x52\xdb\x7d\xab\x2d\x4c\xa3\xb0\x94\x02\x92\x4a\x73\x67\x66\xe6\xa2\x9d\xce\xc2\x22\x9e\xde\x8a\xc3\x04\xc1\x6a\xac\xd3\xaa\x7c\xeb\x66\x5e\x1f\x5d\x82\x0e\x54\x88\x0f\x82\x04\x91\x10\xc9\xc0\x47\xc5\x65\x3c\xf3\x1d\x97\xd5\xf3\xde\xcf\x01\x9d\x9d\x4f\x6c\x01\x6f\xab\x77\xd2\xee\x90\x8c\x0a\xbb\x5a\xb6\xca\x78\x57\xb7\x8a\x0f\xbc\x22\x79\x7d\xc1\x2b\xff\x26\xe7\x32\x25\xd4\xc6\xb5\x68\xc6\xa8\xf4\x9c\xd7\xf8\xb1\x65\xb5\x36\x10\x32\x5b\x37\x5c\xfe\xcb\xd7\x90\x6a\x00\x46\x91\xd8\xed\x0b\x1b\xb0\x56\xad\xbf\xe6\x55\xeb\xdf\xd6\x40\x2f\xce\xf4\x6c\x23\xd5\x17\xd1\xbc\xb1\x1e\x14\x77\xd1\x63\x68\xa5\x49\x3e\x55\xbc\x54\xe6\x1f\x9a\x2a\x42\x87\xfa\x87\x14\x27\x53\x1f\xa4\x81\xd8\x24\xa1\xfa\x37\x7f\x3e\x9f\xe7\xa8\x0b\x86\xfe\x15\xd3\x13\x78\x19\xe3\x91\x62\x5b\xc3\x74\x32\x9d\x31\x14\x79\x82\x8f\x66\x6f\x6d\x52\x63\x7e\x0e\x65\xc5\xe6\x2a\x35\x40\x01\xbd\x9d\x14\xe0\x0a\xb2\x3e\x48\x20\x08\x9c\x43\x38\x10\x81\xfe\xd3\x24\x8e\x71\xa1\x09\xe1\xcb\x98\xa4\x78\xb2\x9c\x09\x75\x39\xad\x1a\xd5\x28\xbc\x36\xf7\x7f\xa9\x5d\xdd\xde\x6e\x7b\x8d\x6a\xb5\xd6\x94\xa5\xc4\xd3\x1f\x00\x12\x6e\xef\x02\x18\x6e\xef\x01\xaa\xb5\x0f\x46\xae\x33\x7b\x68\x0a\xe2\x10\x59\x54\xb7\xe7\xdb\x1e\x09\xbd\x34\x8c\x15\x00\x8e\x2f\xb1\x74\x3a\x1d\x4f\x9a\x5c\xbd\x54\x73\xf5\x6d\x76\x7b\xab\xdd\xf5\x44\xb0\xc7\x73\xde\xa4\xff\x5c\xdd\xa5\x24\xfe\x0d\xe4\x5d\xa0\x61\x32\xbf\x88\x31\x4c\x92\x6b\x99\xdf\xe5\xf6\x56\xe5\xe9\x0a\x64\x97\x6f\x6f\xf5\x2f\xae\x2b\xaa\x92\xf1\x85\x07\x95\xab\x3c\x9d\xe7\xb6\x5d\x41\xa9\x6f\x96\x82\x25\x2c\x05\x45\x7a\xb5\xb7\x15\x44\x48\x0e\x66\x46\xd0\x37\x83\x41\x1b\xcd\xc7\xa6\x60\xb7\x3d\x0a\x57\xd7\x33\x94\x1b\xfd\xca\xb9\xf5\xb4\x7d\xc0\xbc\xee\xcd\xa5\xfc\x60\x98\xa6\x9f\xe3\x2c\x65\xee\x73\xd7\x6f\x08\xc1\x77\xb9\x78\x86\xe6\x7e\x7d\x9e\x16\xa4\x0d\x27\xaa\xbe\xd0\x95\xb6\x92\xd4\x72\x51\x49\x82\x24\x1d\xc2\x44\x21\x0e\xf1\x03\xf3\x0d\x43\x13\x33\x19\xad\x58\x13\x21\x3b\x90\xa3\xec\xb1\x32\x18\x8b\x11\xca\x44\xb4\x81\x46\x2c\xdc\x11\x62\x47\x98\x91\x18\xd1\x17\xd7\x7c\x13\x78\x2e\x41\x32\xe8\x40\x8c\xaf\x60\x7b\xc8\x58\xbb\xb6\x08\xf0\x26\x03\x19\x98\xc3\x52\x22\x0d\xb9\xe2\x12\x4f\x2a\x6c\xbe\x7f\x7b\x7b\x33\x57\x2c\x30\xfb\xf8\x66\x3e\x9f\x83\x24\x84\x56\x43\x4d\x6e\x6c\x00\xb3\x30\xe9\x27\x6a\x02\xbb\x7b\x83\x80\x92\x21\x18\x1a\xd0\xc0\x79\xf8\xb0\x86\xb3\x50\x18\x80\x0a\x25\xf0\xc5\xe1\xc9\xd1\xd9\xa7\x37\x67\x9f\x3e\xbe\xcd\x80\xac\x66\x46\xc2\xe3\x3c\xb9\xf1\xbe\x91\xd1\x78\xcb\xac\xe2\xf5\xe9\xe9\x87\xb3\x0f\x1f\xdf\x9f\xbe\x7f\xf9\x3e\xaf\x24\x8f\x95\xe9\x74\x3c\x14\xc6\xde\xcc\xd7\xd0\x68\xaf\x85\x7b\x17\x4b\x87\x22\x59\xc3\x98\xb1\xe9\xce\x5e\xb0\xe7\x56\x2b\x7d\x77\xf8\xf7\xb3\x97\xef\x8f\x8f\x8f\x5e\x9e\xbe\x79\x7f\x7c\xe2\xf6\x34\x3a\x60\x88\x3d\x7b\xeb\xe2\x82\x2d\x07\xa8\x27\xb9\xd5\x67\xbc\xef\xfa\x3d\xeb\x8b\x5f\x6b\x5e\xd0\x69\x74\xed\xfa\x6a\x3c\x19\xd0\xad\x1a\xde\xf7\x7c\x7e\xa2\xca\x2a\xcc\xc8\x8c\x03\x43\x2a\x50\x24\x8f\xd0\x25\x4a\xd2\xa9\x90\x13\x24\x7c\x18\x65\x70\xc4\xcf\x1d\xf9\xd7\x30\xbd\x44\x22\xa4\x45\xfe\xc9\xf9\xb3\xc8\xf1\x9d\x6d\x4a\x8f\x84\x94\xab\x05\x28\x9a\x0d\x8b\x41\xd8\x59\xc4\x28\xf3\x30\xd8\xf7\x01\x0c\x09\x57\x8f\x69\x48\xfa\x7b\x83\x72\x3e\x3b\x45\xb9\xc3\x97\x6f\x4f\xce\x8e\x8e\x0f\x5f\xbc\x3d\x72\x7b\x28\xa8\x3e\x7d\x15\x6e\x6f\x8b\x4c\x9a\x02\x07\xdf\x93\x47\x9d\x47\xfd\xa2\x26\x55\x00\x96\x53\x95\x1c\x9f\x7c\x38\x7c\x79\x64\xa9\xbd\xf8\x62\xf5\x06\x4e\x4e\xde\x57\x2b\xcf\x1f\x2e\x57\xb1\x9e\x5a\xd4\x87\x83\x90\xe6\xb7\x96\x3e\xb8\x99\xfb\x7e\x1f\x0d\xf4\x11\x49\xb8\xc0\x9b\x79\x20\xa0\x41\x25\x36\x4a\x06\x67\xd8\x77\xda\xa7\x37\x67\xaf\xde\x9c\xf0\xde\x65\xb8\x9c\x6a\xa2\xab\x05\x0e\x8f\x5f\xbe\x7e\xff\xf1\xec\xe4\xe8\xad\x5c\xfa\x7a\x57\xd9\x46\x95\x7a\xfc\xbc\xde\x2d\x8f\xed\xf6\x36\xd2\xb0\x97\x0d\x88\xa0\x7a\x39\xcb\x4a\x2a\x5f\x14\xb8\x43\xc3\x9e\x5f\xbc\x73\x55\x3b\x91\x68\x67\x28\xb3\xc8\x94\xb6\x54\x24\xaf\xe7\x16\x49\xdb\x16\x13\xe5\x9d\x7b\xc2\xc4\x17\x9e\xb2\x24\x67\xdc\xa1\xef\xe6\xb2\x79\x30\x11\xcc\x7b\xc7\x0b\xfe\xe0\xff\xab\x2f\xfe\x3f\xd8\xd1\xac\x73\x4f\x9f\x3f\x7d\xd7\x05\x5c\x61\x6a\x18\xdf\x58\x18\xc7\x65\xa2\xeb\x6e\x7c\xb1\x28\xcf\xb5\xed\x9a\xee\x77\x07\x53\xb0\xd1\x64\xde\xb9\xba\x85\xab\x8f\xc8\x9a\x09\x01\x6e\x72\xd0\x2a\x8f\xb3\x5f\x9f\xaf\x98\x03\xfe\xab\x87\xc5\x03\x00\x17\x2d\x70\x71\x18\xc2\x61\xb2\x13\x53\x69\xad\xef\x52\x44\x2e\x11\xe9\x2a\x64\x8d\xc7\x7c\xa3\xef\x92\xe9\xd0\x11\xfd\x74\x26\xf0\x73\x8c\x47\x22\xd6\xb8\xe7\x90\xe9\xb0\xe7\x0c\x21\xfe\x8e\x39\x5c\x54\x52\x82\xbb\x73\xf8\xf2\xad\x6b\xbb\xfc\xd7\x9c\x4e\x46\xe9\xcb\x04\x35\xf9\xaf\xfe\xee\xa0\xf0\x47\x10\x21\x06\xe3\xc4\xef\x74\xc4\x06\xad\xbe\xc9\x76\x2c\x5a\x70\xf7\x2f\x48\x2f\x1f\x6e\x96\xce\xaf\x8f\x0e\x5f\x1d\x7d\x3c\x39\x3b\xf9\xc7\xbb\x17\xef\xdf\x86\xf9\x83\x57\x6f\xfe\x7a\x74\x72\x6a\x3c\x38\x7d\xff\xcb\xd1\xb1\xf1\xf7\x9b\xe3\x57\x47\x7f\x37\x3f\x38\x3c\x3d\x7c\x79\x74\x7c\x7a\xf4\xd1\x78\x78\x7c\xf8\xee\x48\x9c\xaa\x5a\x67\xb7\xbd\x72\xff\xde\x7d\x29\xc7\xcb\xe5\x47\x3a\x85\x43\xe4\x6e\x59\x2b\xce\x4b\xbe\x82\x0c\x0e\x91\x48\x53\xbf\x55\xee\x53\x5e\x4a\xa4\x22\x34\x0b\xc8\x41\xe4\x05\x4e\xd3\xcf\x08\x17\x1a\x93\xc3\xce\x4b\xbc\x94\x60\x40\xaf\x21\x1d\x9b\xe5\x14\xbd\xdc\xb3\x33\x39\x2b\x67\xb3\xf8\x8c\x4f\xd2\xd9\x18\xc1\x08\x11\x7a\x76\xe6\x2e\x9e\x4f\x89\x70\xaf\xbe\x58\xc2\x3a\xf3\xd8\x15\x48\x8b\xf5\x28\x3b\x8d\x1a\xe4\x43\x00\x43\xac\xa5\xfb\x9e\xeb\x97\x5c\x76\x9b\xed\x4f\x24\x84\x77\xee\xd4\x41\x8a\xa6\x1a\xac\x1d\xf7\x1b\x6d\x34\x4c\x94\x5c\xc9\x46\xa3\x34\xb5\xe5\x2d\x35\xc0\x66\xa6\x39\x28\x8c\xa6\xb7\x01\xe3\xcc\x81\x1c\x9b\xba\xfd\x98\x97\x08\xf4\x55\xd8\x66\x8c\xab\xba\xb2\x44\xe4\xc4\xc6\x09\xe3\xa1\x7e\xaa\xb4\xfd\x41\x18\x2b\x5d\xb3\xe7\x6a\xd7\x09\x81\x3f\xc5\x05\xf2\x36\x5c\x5c\xee\x7a\xe1\xfe\xd5\x9d\x42\x02\x27\x6d\xb7\xfe\xef\x56\x8a\xfa\xba\x0c\x64\x55\x79\xcd\x21\x12\x5a\xb7\xe8\x00\x8c\xa4\x51\xc6\x83\x16\xa5\x18\x82\x54\x67\xf5\x2c\x1a\x7f\xbf\x19\xde\xbf\x19\xde\xbf\x19\xde\x37\x64\x78\xf7\x52\xb0\x2f\xb2\xcd\x70\x16\x3f\x0b\xe3\xfe\xde\x60\xcb\x44\x2f\x9a\xe9\x51\x42\x31\x95\xc3\x10\x79\x49\xc6\xfe\x33\xa5\x82\x76\x3a\xde\x30\xcc\xdd\x1c\x28\xe0\xfa\xb5\xfe\x6b\x08\xdc\x81\xab\xc0\x0b\x79\x95\x07\x30\x7b\xe3\xf7\x34\xca\x52\x18\x86\xcc\x9b\xf9\xf9\x3b\xe2\xcd\xc0\xd0\xf7\x7b\xd9\x83\xbc\xfa\x21\x70\xc3\xbc\x7a\xe4\xcd\x44\x7e\x0f\xd0\x1f\x68\x13\x67\xc7\x5d\xe2\x98\x99\x91\x26\x85\xe1\x3f\xe2\x74\xd9\x10\xbe\xb0\x55\x25\xcf\xd1\x3e\xca\x7a\x29\xa0\xc6\xa1\x04\x7f\xde\x3b\x80\xdd\xbd\xde\x2e\x17\x38\xf6\x9e\xa7\x3f\x41\x1d\x1a\xd6\xdd\x1b\x18\x5a\x6b\x3a\x50\x89\x14\xf7\xb2\x23\xab\x74\xfb\x20\x32\x13\x09\x4f\x13\x15\x88\xc2\x05\x90\x13\x06\x89\x40\xd0\x14\x6a\xa6\x61\x25\x3e\x70\x15\xd6\x53\xdc\xe9\x78\x71\xb8\x5f\x2d\xf1\x2f\xfc\x2f\x2c\xb3\x0f\x87\xcf\x6c\x6f\xf9\xbb\x67\xdb\xba\x82\xa7\x3a\x73\x72\xbe\x39\xfa\x70\x70\xc0\xff\xd7\x73\x5d\x6d\xca\x8d\x95\x91\x7b\xaf\x57\xca\xcb\x5a\x61\xa8\x69\x2f\x0d\x91\x97\x9a\x46\x54\xa7\x78\xd6\xa5\x7e\x2f\x0d\xd3\x12\x11\xf2\x5b\x0c\x37\xdf\x27\x22\xac\x03\xb8\xae\x71\x13\x30\x2f\x80\x5e\xaf\xd0\x99\xc2\xfe\x15\x5d\xc1\x5e\x5a\xa8\xf6\x99\x91\x94\x47\x6a\x2e\x92\xa2\xfd\x5d\x6d\x8c\xcd\xfb\x48\xb2\x5d\x9d\x0a\xac\x77\xd9\xcf\x4c\x88\x6c\xb1\xa9\x17\x19\x5a\xfe\x23\xf6\x73\x41\x5a\x5c\x01\xd4\xae\x24\x5b\xdd\x1f\x96\x5d\x09\x4c\x8f\xe4\xb7\x83\x16\x8a\xbd\x83\xd3\x03\xde\x93\x77\x70\xaa\x14\x2c\x0d\x9b\x4c\xca\x6a\xb1\x3a\x7a\x64\xca\x73\x24\xf3\x8e\xff\x45\x15\x29\x09\x23\xd8\x48\x3e\xde\xc7\x90\xc5\x97\xc8\x19\xa6\x11\xe2\x47\x58\x1e\xf2\x23\x64\xbf\x2d\x3b\x1c\x26\xda\x20\x08\xa6\x79\x7d\xa4\xb2\xbf\x0b\x57\x48\x64\xa4\x55\x54\x58\x39\x4c\xa1\x85\x93\x02\x78\x6b\x7e\xb5\x6b\x3a\x12\x81\xb8\x0a\xaf\xe8\xe7\x79\xb8\x56\x87\x7e\x32\xc3\xbc\xf6\x16\x61\x70\xa6\x1e\x01\x1a\x44\x30\xeb\x72\x09\xc9\xd5\x83\x21\xf5\xfc\x83\x0a\xf0\x63\x0d\xe2\x6a\x9f\x53\x71\xb0\x45\xcc\x60\x41\xa2\x05\x51\xc8\xcf\x1b\x2f\x9b\xf7\xf3\x18\x47\x99\x8f\x95\x01\xd7\x84\x3b\x9d\xd4\x83\xc0\x8c\xfa\x05\x70\xae\x91\xdd\x84\x43\xaf\xe1\x91\x95\x75\x9c\xfe\xa7\x01\x7a\x66\x23\x4f\x0b\xc0\xa9\xe9\x46\x81\x53\x0d\x64\x9a\x3a\x48\xd6\xc7\x06\x6a\x69\x44\x7e\x24\x05\x46\xe4\x55\xb5\xd0\x2a\xf7\xf8\x4a\xc1\x74\x53\x95\x57\xc9\x4b\x32\x64\x49\x40\x00\x0c\x3d\x16\x26\x40\xdc\x7b\x83\x8a\xff\x0c\x0c\x63\xaf\x80\x62\x4c\x43\x0b\x5f\xda\x42\x16\xd8\x57\x68\xf0\x32\xaa\x60\x5f\x51\x08\x9b\x61\x5f\xb1\x86\x46\x98\x1b\x80\x97\x89\x11\xcb\x57\x8d\x68\xdf\x3c\xb0\xb6\xec\x43\xe2\x03\x0f\x87\xd0\x44\xdd\xf3\x7d\x95\xbb\xff\x65\x1a\xa1\x10\x01\xac\xf9\x71\x32\xf7\x88\x27\x5a\xf0\x7d\x03\x76\x20\x59\x28\x0b\x2d\x36\x9b\xaf\xb0\xca\x5f\xbe\x3f\x3e\x3d\x3a\x3e\x3d\x3b\xfd\xc7\x87\xa3\x10\x05\x2f\x0f\x5f\xbe\x3e\x3a\xe3\x0f\x3f\xbe\x7f\x9b\x5f\x61\x14\x1f\xbb\x2f\xe1\x70\x8c\xc4\x45\x01\x49\x13\x77\xab\x54\x8b\xab\x6e\x10\xba\x9c\x94\xee\xdc\x17\x57\xcb\xf5\xc3\x92\x0a\xec\x66\x47\xf5\xe1\xbd\xb8\xc9\x79\x75\xf4\xf6\xe8\x94\x0f\xeb\xc3\xa7\xd3\x7c\x30\xfc\x0f\xf7\xc3\xa7\x53\xde\x71\x55\xc2\x95\xff\xf2\x27\xe2\x53\x97\xff\x7f\xf1\x7d\x06\x41\xbf\xce\x10\x65\x4b\xa2\x9d\x08\x80\x94\x0a\xb4\x89\x29\xe4\x65\x2c\x12\xff\x5e\x25\x59\xf2\xbb\x06\x2e\x80\x26\x70\x01\x0b\xf7\x9e\xb3\x2a\x70\x01\xd3\xc0\x05\xb8\x02\x5c\xc0\xcc\xab\x5c\x26\x6e\xb2\xd9\x7f\xed\x1f\x10\x0d\x12\x80\x1b\x80\x0b\x14\x00\xfe\x7d\x00\x17\x60\xdf\xef\x19\x7d\xda\x38\x70\x01\xae\x07\x2e\xa0\xf7\x0b\x5c\x50\x16\x8d\x1e\x79\xf6\x84\x6f\xc8\xf7\x0f\x87\x7c\x3f\x2c\x23\xdf\x0f\x1f\x02\xf9\x3e\x77\xdc\x60\x05\x23\x01\x16\x21\x86\x36\x31\xf5\x61\x8d\x04\xac\x84\xb8\xaf\x96\xee\xf0\xab\xd3\x10\xa2\xff\x18\x0d\x21\xd6\x1a\xc2\x2c\xd7\x10\x30\x20\x80\x86\x89\x37\x33\x04\xf2\x59\x41\xa3\xbf\x3f\x91\x7c\xe6\x03\x8f\x84\x34\x17\xc9\x7d\x3f\x38\x9b\x91\x24\x64\x80\x04\x67\x52\xe8\x0c\x39\xfb\xd4\x0e\x2c\x21\x36\xff\x80\x1e\xf4\x6e\xe6\x00\xfb\xe0\x66\x0e\x6e\x74\xca\x36\xe9\x02\xd8\x73\xf9\xa6\x8c\x25\xca\xee\xce\xbf\x69\x8a\xdd\xb9\xce\x36\x27\xcc\xc9\xba\x96\xe0\x3c\x8d\xae\xa5\xfd\x49\x30\x74\xfd\xbc\x5f\xac\x6f\x10\xba\x0c\x7d\xd1\x30\x78\x94\x11\x04\x27\xae\x0f\x48\x96\x86\x30\x9c\x71\xf5\x42\xc1\xde\x67\x6a\x40\x33\x02\xbc\x2a\xd6\x0c\xfe\x8e\x74\x4e\xb1\x2f\x63\xa2\x62\xeb\xec\xc9\x08\xc4\xd7\xf3\x1c\xf8\x9e\x20\x3a\x4d\x71\x54\x5b\x61\xcb\x8c\x06\xba\x3a\x65\xe6\xad\x56\x26\x38\x90\xa1\x48\x19\xae\x6f\x32\x9a\xd0\x78\xe3\x99\x05\xcb\xaf\xfd\x86\xc1\x95\x13\x8b\xb6\x83\xf7\xb7\x56\x25\xbf\x30\xab\x48\x31\x46\x72\x65\x2e\x98\xb0\x2f\x63\x92\x7d\x05\xcf\x53\x62\xc3\xf8\x5f\xcb\x23\x70\x57\x9c\xa3\xd5\x95\xa6\x73\x24\xa8\x15\xe3\xf9\xe5\xe5\xa9\x06\x6c\xaa\xb3\x5b\x79\x12\xe4\x20\x1f\xa2\x0c\xa6\x66\x66\xb6\x05\xed\x7d\x5d\xcd\xd9\x29\x13\xac\x3b\x7b\x3d\x16\x88\xe1\x8a\xfb\x80\xf9\xc0\xef\x74\x52\xcf\x64\x50\xd8\x07\x44\x3c\x03\xc4\x07\xb3\xb9\x57\xc8\x3b\xad\x59\x70\xb4\x50\x57\x93\xbd\xdf\xac\x9a\xf9\xe6\xf8\xf4\xe8\xe3\xf1\xe1\xdb\xb3\x93\xa3\x8f\x7f\x3b\xfa\x78\x76\xf4\xf1\xe3\xfb\x8f\x21\x0a\xfe\xf2\xfe\xe3\x8b\x37\xaf\x5e\x09\xef\xc1\x4f\xc7\x87\x9f\x4e\x5f\xbf\xff\xf8\xe6\x9f\x47\xaf\x42\x14\xbc\xff\x25\x57\x44\xdf\xff\x12\xee\xef\xf2\x1f\x85\x32\xcf\x76\xf7\xb6\xcc\x2a\x9e\xed\x3e\xdd\xaa\x6b\xea\xfb\xdd\xdd\x85\x03\xff\x32\x6e\x7b\x81\x72\xb7\x9e\x28\x65\x9f\x97\xdf\xa9\xee\x47\x96\xd1\xfd\x48\x5b\xdd\x4f\x63\x91\x7a\xa4\x41\xf7\x93\xb6\x76\x72\x1f\xba\x1f\xf1\xfd\x9e\xd1\xa7\x8d\xeb\x7e\xa4\x5e\xf7\xab\xe4\x86\xfb\x1a\x40\xeb\x2c\x97\xe9\x79\x7a\x0c\x74\xe5\xe1\xdb\xdb\xbf\xbf\x7b\xfb\x9a\xb1\xe9\x47\x69\x53\xf2\xb7\x68\x90\x62\xc1\x34\x39\xe7\x42\x12\x36\xa6\xa4\x73\x3d\xab\x4b\x6a\x24\x30\x44\x54\x9c\xfa\x61\x92\x7c\x14\xa7\x35\x45\xaf\x35\x87\xcf\xaf\x6e\x5d\x5f\xf2\xec\x9c\xc1\xff\xcc\x99\x92\x02\x3f\x90\x4f\x7e\x7a\xb6\xbb\x9b\x41\xb1\x70\x76\x7f\x89\x08\x13\x62\x0c\x3f\x4c\x1c\x21\x00\x0d\x74\x66\x66\xd9\x92\xbf\x05\x03\x3a\x1b\x0e\x11\xa5\x1e\x97\x0b\x8d\xda\xcc\xdf\xa7\xe8\x0b\x53\xba\x0e\x54\x79\x0f\x18\x28\x54\xc4\x4b\x34\x7d\x2d\xff\x96\x59\x2b\xb7\xa0\x88\x4e\x4f\x10\x43\xe6\x80\xf8\x61\xac\x12\x09\xc1\x40\x0a\x7e\x00\x06\x33\x92\xf0\x9d\x04\x0c\x24\x0b\x75\x00\x76\x3a\x5e\xf6\x3b\xbc\x99\x6b\x0f\x00\xe2\x11\x2e\x11\x66\xaf\x94\x64\xf8\xf7\xae\x9a\x31\x14\x75\xff\x37\x66\x63\xb7\xe7\x16\x67\xd2\x9d\x67\xca\x4e\xc9\x4f\x2e\xb5\x6d\x1b\x94\xe9\x92\x00\x86\x1e\x09\xf7\x41\x7b\xd7\x38\x1c\x2e\x72\x8e\x5b\xce\x2b\xf8\xe6\xf7\xed\x13\x37\x17\x3c\xfc\x9b\x8b\x73\xa3\x8b\x73\x89\x44\x5f\x85\x1f\x9c\x0f\xd2\x10\x4a\x2f\x67\xd8\xdf\xcb\x64\x10\x81\x93\xa2\x76\xa5\x64\x85\x5e\x0a\x62\x81\xef\x05\x83\x73\x74\x91\x12\x74\x82\x70\xe4\x51\x1f\xf0\xa2\x38\xf2\xa0\xd0\xe0\x7c\x40\x9b\x5d\x55\x62\xfa\x97\xb4\x8c\x00\xf6\x08\x23\x82\xb2\x64\xee\x3b\xae\x54\xab\xc4\xba\xec\xee\x35\x63\x6a\x7c\x46\xd7\xa7\xe9\xa1\xcc\xe1\xfe\xb8\x31\xae\x77\xdc\x3c\xd1\x76\x18\xb2\x03\xd7\xed\x21\x7d\xd4\xb1\xe6\x41\x26\xe8\x82\x75\x19\x89\x27\x8f\x7d\x0a\x57\x87\x59\xcb\xa6\x5f\x9a\xf5\x32\xb7\x18\xe6\x1f\xa0\x80\xce\xce\x29\x23\x9e\x36\x65\xfb\x3d\xd4\x48\xae\x09\xbc\x3e\x47\x5d\xce\xdf\xee\x03\x98\xb5\x3e\x58\x90\x95\xf3\x31\x32\x33\x65\x30\xf2\x7c\x80\x17\x26\xa4\x9e\xc4\x38\x9e\xc4\xbf\xa1\x77\x69\x84\xee\x7c\x38\xcd\x27\x78\x03\x38\xc3\x76\x0e\x1a\x86\x80\x1b\xd3\x63\x74\x25\xc0\x17\xea\xb0\x1a\x6e\xde\xbc\xea\x15\x3e\x79\xf3\xca\xf5\x81\xc0\xab\x2b\x3c\xe6\x4f\x5c\xb1\x37\x1a\x89\xc4\xf9\x31\x67\xec\xd7\x5d\x81\x65\x78\xd7\x44\xaa\x0d\x44\x74\x32\xf5\xd4\x15\x76\x8b\x83\x9b\x79\xc5\x75\xe8\x2e\x15\x02\xc3\x6c\x7d\x33\x07\xc2\x02\xda\x48\x37\x95\x4c\x21\x3a\x8d\x27\x28\x9d\xdd\x35\xe5\x36\x93\xf5\x7e\x75\x16\x43\x11\x53\x03\xad\xd8\x79\x71\x2d\x6a\x77\xbb\xaa\xcd\xab\x99\xcc\x01\xa4\x9c\xfd\x5e\x64\xcd\xf2\x0a\xa8\xaf\x1e\xf6\xe7\x3e\xc0\x2d\x12\xd3\x4b\xf0\xbb\x2e\x5f\x60\xf7\xb6\xc0\x8b\xd6\x8f\x6a\xd4\x8c\xa9\xe7\xaa\x4b\x02\xd4\xc7\x83\x4e\xc7\x63\xda\xc0\xe2\x03\xa6\x23\xb1\x9a\x06\x17\x8f\xc6\xbf\xff\x03\x4e\x26\xb4\x90\xe8\x2b\xfa\x28\xe3\xda\x2d\xfe\x39\xdc\xcd\x99\x6c\x02\x29\x7b\x93\x1d\x7e\x61\x18\xe2\xfc\x00\xdc\xe5\xb2\x2f\xca\x77\x79\x23\x4d\xd3\x19\x8b\xf1\x68\x87\xa0\x28\x26\x68\xc8\xba\x2c\x7d\x10\xce\x98\xa7\x45\x0e\x78\x97\x24\x20\xb9\x52\xf0\x03\x13\x33\x66\x4f\x7b\x60\x07\xae\xaf\xf3\xbb\x4e\x13\x38\x44\x5c\x6f\x35\x02\x32\x30\x10\xdf\x69\x47\x73\x7f\x21\x97\xd3\x94\x60\x04\x62\x1a\xf3\x7e\x71\xbe\xf9\x0d\xd1\xfc\x3f\x29\x5c\xea\x1b\xa2\xf9\x5d\xc6\x5f\xae\xa5\x18\xdd\xcc\x6d\xd8\x66\xfb\x45\x20\x31\x65\xd5\xd1\xae\xf5\x02\x26\x0a\xeb\xec\x40\xae\x60\x2c\x3d\xe3\xda\xd3\x55\x40\x8e\x94\xab\xda\x82\x88\x20\xd6\xb9\x13\x68\x18\x07\x53\x48\x10\x66\xcf\xfd\x34\x4c\x33\x04\x6f\x4f\xb8\x45\x82\x38\xa4\x39\x4a\x25\x41\x97\x88\x50\x2e\xa9\x13\x0f\x89\xe5\x7c\x7b\x6b\x5e\xaf\xba\x20\xe5\xeb\xab\x0c\xbc\x8e\x24\xf0\x75\x39\x72\x8d\x04\x58\xa0\x29\xf0\x8d\x43\x19\x24\x8c\x4a\xd6\x16\x0d\x03\x11\xf3\x83\x42\x57\x16\x08\x5c\x83\xbd\xe1\xb0\xaf\x3f\x1c\x64\x3c\xd0\xf7\x41\x3f\xff\x53\x3c\x98\x03\xb8\xc9\x49\xc9\x94\xd5\x40\x04\x45\x0b\x28\x88\xdb\xdb\xfe\xa0\x2c\xd3\xe3\xea\x38\xf9\xe9\x7f\xc0\xff\xd7\x53\x1f\xd3\x3e\x1e\xcc\x45\xd6\x76\x45\xce\x56\xfc\xfa\x0a\x26\x9f\xef\xff\xc8\xf2\x6f\x0a\x49\xe7\xfb\x68\xe0\xcf\xe7\x00\x05\xbc\x37\xa6\x2f\x45\x5e\x8b\x04\x72\x32\xd2\xff\x17\xf3\x62\x5b\xac\xa8\x44\x9e\x08\x67\xe9\x94\x09\x7c\x75\xbe\x36\x94\x47\x0e\xa0\x21\xeb\x93\x41\xa0\xdf\x15\x2b\xeb\x93\x81\x6f\x4c\xa4\x07\x4d\xd1\x06\x15\xfa\xcd\xcb\x0e\x84\x74\x29\xcf\x5d\x8f\x00\xe1\xba\xc3\x29\x9f\x59\x95\x59\x76\xfd\xaf\x7e\x85\x37\xba\xe1\xde\xcd\x14\xb2\x71\xcf\x75\xe7\x73\x7f\xbe\xa5\xc6\xcf\x5a\xcd\x5b\x9c\x44\x43\x48\x36\xec\x34\xbb\x94\xb8\xb1\xbd\x27\x0c\xc0\x38\x14\x11\x74\xa6\x4a\xc9\xfc\x8c\xb4\x01\x1f\x60\x1e\x7f\xf3\x07\x57\xe7\x69\x23\xfe\x8d\x61\x86\x6d\x1a\x32\x45\x90\x0c\xc7\x3b\x52\x31\x5e\x20\x55\x3c\x02\xf9\xd5\x9e\x78\x6e\x75\x99\x56\xa9\x64\x36\x75\x2a\x93\x67\x65\x56\x3b\x35\x2e\xd7\x05\x67\xc2\xbd\xa2\x3f\xa8\xc3\x7e\xcf\x50\x79\xa5\xcc\x28\x8a\x67\xc0\xca\x17\x31\x8e\x36\xe6\x71\xd0\x1f\x94\x81\xba\x67\x28\x6c\xb2\x72\x54\x25\xaa\x4e\xa7\x3d\x2c\x25\x5f\x47\x2c\x20\x88\xa6\xc9\xa5\xba\x01\x92\x58\xe3\x16\x08\x16\xd3\xe3\xb1\xbe\x3f\x42\x3e\xb8\xa1\x22\xd9\x93\x88\xb6\xcc\x29\x26\x01\xab\xf9\xe2\xb4\x43\x44\xdb\xe6\x7c\x25\xaa\x09\x40\xcb\x72\x9e\x80\x03\xd6\xeb\xb3\x81\x5f\x6f\xfe\x42\x6a\x86\x81\x20\xce\x68\x84\x88\xe7\xca\x3b\x44\x17\xe8\xd4\x56\xda\xdb\x4b\x51\x49\xea\x06\xff\xc2\xae\x2f\x1d\x74\x98\xf0\xf4\x12\x44\xe5\x4b\x63\x11\xd6\x07\x95\x48\x9f\x3b\x02\xf6\xb3\xab\xfe\x7a\xdc\xbb\x75\x1d\x6d\x53\x65\x4b\x35\x41\x4e\xad\x52\x56\x2b\x14\x57\x81\x23\x28\xd7\x7e\x7c\x71\x6d\x43\x93\x7d\x6a\xad\xe7\xa9\x59\xcf\x53\x55\x8f\xc0\x23\xb4\x21\xca\x3e\xb3\xd6\xf1\xcc\xac\xe3\xd9\xa0\xc0\x31\xd4\x20\x8b\xae\x4e\x5c\xf4\x55\x23\x96\x0f\xdc\x6c\xb2\x85\xf7\x12\x12\x98\xb0\xd4\x00\x10\x40\xc0\xed\x65\x2e\x9f\x37\x3a\x0f\x8f\x25\xf7\x29\xcb\x70\x62\x0d\xf4\x01\x43\x13\xf5\xb7\x34\x87\xc8\xc3\x5b\x3b\x1d\x0f\x87\xdf\xb9\xee\x77\xbe\x3a\x91\x88\x87\xf5\x39\x03\xfd\x1b\x1c\xba\x6e\x7e\xd6\x28\x8c\xf9\x42\xe3\x80\x98\x41\xa5\xa4\x00\x5f\x2f\x8d\x42\x3a\x29\xb0\xf4\x31\x0e\xb9\x78\xa1\x1a\x88\xfd\x1b\x22\x1a\x9f\xab\x64\x38\x01\x6d\x1c\x00\x20\xd9\x65\x30\xac\x1b\x23\x48\x75\x0a\xd4\x7a\x32\xc9\xf7\x8d\x94\x5a\xd8\x0c\x9e\x03\x98\x24\x76\xee\xb5\x65\x31\x50\xb1\x3a\x03\x55\x7c\xe1\xed\x8a\xd4\x68\xd9\x49\x6f\xb4\xe8\x67\x9e\x2e\xda\xc6\x42\x33\x95\x8a\x4b\x50\xa1\x91\x98\x29\x77\xa8\xc9\x6c\x5a\x8d\x2c\x87\xab\x91\x09\x64\xf1\x6f\x8f\x9c\xcf\xe4\x1c\x1d\xd5\x1d\x62\xae\x1a\x0b\xea\x1a\x9a\xc9\x22\xab\x3c\x8b\x87\x9f\x11\xd9\x11\x64\xff\x16\x84\xb4\x5a\x10\x92\x11\x9b\x4c\x42\x9b\x09\x49\xb9\xea\x77\x3a\xda\x67\x7f\x84\xd8\x81\xf1\xbb\x26\x74\xb9\x44\x58\xae\x17\x6f\x57\x2c\x41\x63\x48\x0d\xff\x27\x65\x0f\x02\xcc\xcf\x5c\xc2\x3d\x14\x46\x7c\xb3\x3e\xf7\x9f\x1b\x0e\xf3\xa0\x10\x66\x09\xed\xee\x70\x25\x6f\xaa\x8c\x1f\x88\xfe\x8b\xff\xeb\x08\xf9\x9e\xca\xb7\x32\x97\xd1\x1e\x00\xdf\xde\x56\x42\xb8\x37\xed\xa4\x9d\xd5\x4e\xbf\x8a\x90\x9a\xb4\xec\x74\xd6\xe9\xd0\x42\xfc\x3c\xf3\x01\x16\xcf\x00\xf6\xcd\x88\xa1\xf8\x77\xe8\xfa\x9f\x54\x63\x82\x8c\x78\xa3\x64\xa3\xf1\x46\xb3\x6f\xf1\x46\x8d\xf1\x46\x51\x39\xde\x28\xba\xcb\x78\xa3\xa1\x25\xde\x68\xf8\x75\xc7\x1b\x45\xc6\x49\x17\x3d\xee\x78\xa3\xd3\x2b\x84\x70\x88\x82\x53\x71\xec\x9b\xa6\xb2\x49\xd1\xc5\xc0\xc3\x59\x4c\x4e\x38\xf3\xb0\x11\x8d\x93\x47\xeb\x5b\x74\x8c\x76\xc2\xcc\x1e\x7a\xba\xf3\xc3\x6e\x2e\x5e\xaa\x15\x01\x3c\x14\xb2\x42\xb4\x0d\x45\xec\x23\xe7\x3a\x84\x33\x44\x6d\xf0\xf5\x30\x50\x71\x2c\x5c\x78\x59\x2a\xb6\x42\x7e\xa0\x74\x57\xa1\x92\xe6\x61\x16\xaa\x2d\x5b\x08\x49\x1e\xa9\xb0\x25\x32\x63\xbd\xc1\x0c\x91\x4b\x28\xbb\x19\x9c\xc5\xea\x4f\xad\xdb\xeb\xbf\x43\x2e\xc8\xeb\xa2\xb6\xdc\x46\x01\xef\x8f\xe7\xf3\x99\xc9\xfb\x21\x9c\xde\xd2\x6b\xcb\xb8\x1a\xdb\x9e\xcf\x07\x5c\x1e\x37\x62\x1b\xc0\x45\xfb\x29\x45\xa5\xe0\x2a\x63\x4e\x48\x75\x4e\xf8\xea\xe1\xfc\x5c\x68\x23\xe6\xbc\x08\x28\x94\xfe\xa2\x71\x64\x2b\x24\x4b\xcc\x24\x97\xe3\x5f\x49\x3a\x9b\x0a\xc7\xce\xea\xe3\x40\x55\xe7\x71\x51\x36\x41\x0c\x39\xb6\x52\x92\x0a\x2d\x57\xc8\x19\x53\xc3\xd0\xd3\x60\xac\x04\x3d\xc2\x05\xab\xa1\x58\x4f\x88\x0c\xa3\x6d\xb1\x85\x11\x52\xdd\xec\x74\xbc\xba\x57\x16\x34\x60\xa6\xed\x45\xbc\x74\xb9\x4e\xfe\x43\xa6\xde\x2a\xbe\xc8\x07\x32\x6a\x18\x48\x29\x74\x48\x7f\x9c\x7d\x1b\xd3\xc3\x24\xbe\x5c\xf8\x9d\x2a\x96\xd3\x8e\x41\x6b\xd8\x51\xa1\x34\x17\xab\xb4\x6f\xb9\x31\x7b\x9e\x2f\x32\x9d\xf1\x0d\xfb\x36\xa6\x0c\x61\xc4\x19\xb6\xdc\xb2\x9a\x08\x4d\x41\x58\xaa\xed\x9a\xed\xcd\xd2\xe9\xe2\x7e\xed\xd5\xf4\x4b\x2a\xcb\xeb\x74\x8d\xb7\x6e\xef\x19\x1c\xb2\xf8\x12\xbd\x4c\x67\xd8\x46\x38\x93\xda\x55\x72\xe5\x9f\x56\xd7\xaf\x2a\x56\x1f\xb1\x37\xe2\xaf\x43\x54\x5e\x2e\x75\xdf\x95\xee\x90\xb2\x45\x3e\x52\xdb\x36\x7b\xbc\xc4\xb6\x16\x97\xa0\x63\xcd\x38\x65\x87\xac\x1b\xdb\x2c\x51\x65\x75\x5b\xd9\x89\x76\x21\x18\xdc\x34\xbc\x41\x90\xa2\xf7\xb3\xb2\x6a\x65\xdc\xf8\xa1\x9d\x90\x00\xfc\x07\xaf\xdb\x45\x7f\x40\x7f\x40\x4f\xf6\xfc\x27\x6c\x3e\x07\xe3\x70\x02\xce\x97\x60\x9c\x40\x23\xd5\x80\x74\x55\xd3\xdd\xde\x3e\x88\x57\x35\xd7\x4d\x03\x35\x50\x0b\xe7\xa6\x55\xce\xfd\x4e\x5c\x61\x7b\xb1\x74\x4f\xe6\x52\xc5\x94\xf2\xd3\x55\xfc\x25\x6f\x1a\x38\x53\x17\x7f\xfe\x85\xc0\x89\x08\x31\x00\x8a\xff\x88\x04\xab\x57\x90\x44\x14\xd0\xe5\xb9\xfe\x45\xce\xc2\xb3\x15\xc7\xd2\xea\xea\x04\x02\x26\xc8\xea\xdf\x64\xbd\xa7\xc3\xfe\x0d\xd7\xeb\xba\xe2\xd6\x7c\xee\xfb\x80\x2f\xa9\xbc\x9e\x60\x9a\x40\xd1\x64\xf1\x60\xe0\x32\xd6\x10\x51\x5b\x0c\xac\x61\xc2\x2a\x34\x2e\x16\xe0\x94\x53\xac\x26\x56\x49\x65\xff\xd7\xa1\xc1\x1e\x0a\xce\x86\x33\x42\x10\x66\x17\x9c\x94\x00\xf1\xe3\x5a\x48\x9b\x22\x1e\xa7\xcf\x06\xfc\x91\xa8\x51\xfd\x66\x29\x83\x89\x28\x4c\xfd\xad\x3c\x73\x29\x7f\xa3\x6e\x81\xb8\xe0\xec\xe7\x04\xd4\x13\x52\xcb\xd9\xcc\x0e\xfc\xa4\x4f\x90\xbc\x95\x83\x7c\x58\x22\xd0\x46\xef\x33\xf3\xb3\x27\xa1\x16\x35\x86\x44\xe4\xad\xf2\x7b\x5e\xb5\x54\xb5\xee\x12\x2b\xf5\xfc\x80\x73\x41\xcf\xe8\xfd\x39\x1c\x7e\x6e\xdf\xfd\x6e\xb9\x1f\x96\xbe\xfe\x1c\xee\x1e\x94\x46\xa4\x3a\x4b\x66\xca\xc1\x29\x5b\xc3\x96\x31\x94\xd9\xbf\xa5\xcf\xa3\x94\xa5\x87\x38\xfa\x90\x40\xab\x68\x53\x31\x7f\x96\x98\xa5\xb9\x00\x32\x59\xc0\x7c\x18\xde\xcc\xc1\x72\xcb\xae\xba\xac\xc2\x6c\xc1\xf4\xd9\x40\xa8\x85\xc4\x8b\xbc\x02\x7c\x5d\x71\x1c\x52\xdf\xb3\xea\x6d\x85\x53\x45\xd4\x59\x7f\xa0\xa8\x34\xc5\xc5\x13\xc5\xfe\x4d\x59\xfc\x10\xa5\xcc\xb6\x04\x6b\xb2\x35\x55\xf8\x4e\xd0\x45\xdf\x3c\x1a\x5f\xbf\x53\x88\x50\x75\x3d\xd5\xc1\xfb\xfa\x28\x31\xf9\x54\xee\x31\xe0\xdf\x40\x0d\x10\xd6\xb0\x5a\x84\x94\xaf\x96\xa4\xb7\xe7\xe7\x9c\x11\x69\x66\x13\xd3\x43\x76\x52\x23\x18\x15\x86\x53\xdc\xad\x7b\xa6\x30\xc6\x8e\x2c\xb1\xf2\x0d\x9f\xff\x5c\xdd\x90\xb9\xc4\x51\x92\xb2\xea\x16\x72\x1e\x0b\x51\xde\x16\x55\x49\xcd\x96\x9b\x36\x0f\xf5\xaf\x48\x4f\xab\x34\x69\xa9\xa6\xa9\xd5\x1a\x89\xaf\x20\x50\xc9\x4d\x70\xc2\xf7\x78\x95\x84\x79\x55\x53\xfb\x6e\xb7\x54\xc5\xf7\x53\x63\x55\x75\x02\xf2\x2a\x75\x19\xdd\xaf\x5f\xea\x85\x25\x5b\x88\xba\x37\x88\x9b\x5d\x17\x07\x4a\x14\xf6\xfc\x4e\x87\x29\xe6\x57\xdc\x5d\x4d\x0c\x70\xed\x46\x6f\x6f\x99\xf4\xba\xaa\xb4\xaa\x3f\x6b\x2d\x96\xb2\xaa\xbe\x85\xa4\xd3\xdd\x85\x12\x88\x80\xf9\xc6\xe4\x1e\x52\xf2\x59\xc8\x7c\x8c\xad\x65\x61\x41\x19\x4f\x58\x58\x4f\x76\xa0\x65\xb5\x0c\x7c\x80\xe6\x9e\x00\xf7\x93\x16\x9b\xf3\xe6\x3b\x1c\x96\xa0\xd2\x0d\x16\x70\x11\x17\x1f\xba\xc3\x24\xee\xca\xfb\xce\xae\xce\x45\x56\xfa\xa8\x72\x83\xb3\xb4\x59\xa9\xf6\x03\x25\x9e\xbb\xe0\xa6\x18\x26\x31\xb2\x25\x58\xcf\xb3\x36\xcf\x85\xab\x44\xfd\x70\xd3\x49\x3a\x22\x70\x3a\xbe\x87\x68\xb2\x8a\xf3\x52\x7e\x3b\xf3\x27\xfd\x1f\x80\x61\x37\xff\x83\x86\xfd\xc1\x16\xb6\x9c\xd4\xa9\x04\xeb\x0d\xc3\x34\x38\x4e\x23\xa4\x53\x59\xa4\xc1\x09\x1a\xf1\xc9\xb7\x7e\x24\xed\xfe\xf2\x8b\xed\x90\x89\x7f\xf9\xc6\x54\xdf\x84\x61\x9c\x89\x9d\x5e\x0a\x44\xc8\xb7\x08\x8a\xbd\xc1\x69\x84\x7a\xb2\x3c\x88\x62\x79\xdf\xd2\xc3\x80\xca\xef\x7a\xf1\xdc\x07\xf8\x27\xe9\x0e\x8c\x7d\x80\x7f\x86\xc2\x51\x0d\xcb\xcb\x42\x1a\xd0\x94\xb0\x5a\x67\x17\x5d\x5f\x97\x65\x3f\xd5\x35\xe3\x96\x8e\xe4\xcd\x10\xdd\x93\xf0\x1d\x64\xe3\xe0\x22\x49\x53\xe2\xc5\x3b\xfb\x79\xa6\x98\x9f\x77\x0f\xd2\x30\xfe\xaf\xfd\x03\xda\x4f\x06\x59\x45\x3d\x8f\xf6\x93\xee\x5e\xfe\xe0\x49\xe1\xb5\xbf\xb3\xdf\xf3\x52\xe1\x3e\xbb\x0b\x60\xb8\xeb\x83\x1b\xfd\x8a\xf6\x28\x98\xc4\xb8\x27\x7c\x17\xde\xf0\xa3\x78\x77\xf7\x0f\xc4\xdf\xd9\xdb\xdd\x05\x13\x14\xc5\xb0\xf4\x2a\x55\xaf\xe0\x97\xe2\x73\x28\x9e\x2f\xb8\x36\x9e\x0d\x2f\x62\x42\xef\x2d\x8c\xc9\xf0\x83\xc8\xc3\x0c\xf6\xfc\x80\xa5\x9f\xa6\xd3\x2c\x43\x64\xa5\xcc\xde\x82\xcb\xdf\xd9\x34\x82\x0c\x49\x2f\xe8\xae\x32\xb9\xdf\x79\x30\x9e\x52\xc2\xc3\x8c\x5d\x93\x83\xdc\xf7\x8f\xef\xaf\x1e\x51\xd8\xcc\x48\x38\x2e\x89\x38\x0b\xab\x67\x95\xe9\x32\x88\x7d\x5e\xd3\xdc\xf7\x9f\x0b\x6f\x42\xbe\x9c\x99\x79\xd1\x28\xcb\xca\x21\x88\x5b\x98\x4e\x27\xd7\xaf\x18\xd0\x70\x35\x2e\x40\x81\x24\xc4\x21\xf3\xa0\x48\x70\xab\x02\x1c\x3c\x08\xf6\x40\x9f\x0d\x72\xb7\x08\x56\x43\x5b\xe1\xa1\x2e\x3c\x8f\xe9\x0e\x1c\x26\x56\xae\x2c\xdc\xa8\x28\x62\x5d\xb3\xb0\xfa\x9d\x12\xba\x01\xa6\x6c\xc5\x16\xc3\xe1\x8d\x88\xdf\xeb\x7b\xbb\x80\x05\xaa\x3d\xf4\x81\x20\x8a\xf8\xe6\xf2\xb6\x77\x7d\x50\x78\xf5\x56\xba\x59\x78\x37\x7c\x67\xed\xcd\xfd\x01\x38\xbd\x9e\xa2\x5e\xfd\xe7\x73\x03\x51\x07\x2f\xa6\x4f\x2c\xa8\x2e\x9c\xb4\x1f\x15\x95\x4e\x44\x2e\xe8\x75\x69\xf5\x0a\x51\x16\x63\xd1\xef\x75\xab\x3a\x14\xa3\xdc\x1c\xe1\x3f\x5f\x3e\x32\x8a\xff\x82\xae\xd7\xa0\xcf\x92\xa3\x97\x9e\xfa\x8f\x8c\x02\x62\x89\x14\x86\xf9\x97\x94\x4c\x20\xf3\xbd\x1b\x82\x46\xe8\x4b\x6f\xe7\xff\xf6\x61\xf7\xb7\xc3\xee\x3f\x77\xbb\x7f\x1a\x78\xf9\xef\xee\xe0\x66\x17\xfc\xb0\x3f\x37\xde\xfa\x07\xff\x67\x67\xbe\xec\x9a\x98\xa6\x49\x3c\xbc\xfe\x0a\xa9\x72\xd8\xfd\x27\xec\xfe\xb6\xdb\xfd\xd3\xbf\xba\x67\x83\x9b\x3d\xb0\xb7\xff\xc7\xb9\x6d\xfc\x16\x14\x69\x73\x3c\x24\x4d\xbe\xc6\x35\x51\x1e\xfd\xfe\xf7\x3f\x58\x47\xbf\x60\xf6\x99\x48\xeb\x79\x27\xc7\x7f\x06\x57\xa6\x1f\xdc\xd4\x1c\x9d\xd2\x59\x64\xc7\xc8\xb4\xee\x96\xbd\x1c\x18\xb9\x56\x56\xb6\x05\xdf\xb1\x30\x4a\x87\xc2\x26\x10\x88\xbc\x81\x27\x28\x41\x43\x96\x12\xef\xbb\x09\x62\xb0\x8f\xb9\x66\xea\x7e\xf7\x04\x3d\xf9\xce\x1d\x7c\xe7\x0b\x98\x23\xc6\x48\x7c\x3e\x63\xb2\x4b\x42\x1c\xf0\x01\x0e\x6f\x74\x5a\x6b\x23\x55\x77\x84\x86\x69\x84\x3e\x7d\x7c\xf3\x32\x9d\x4c\x53\x8c\x30\x13\xb9\x74\x4a\x3e\x8f\x25\x5a\xe1\x7a\x5a\xe1\x3c\xaa\x21\xf7\x5d\x90\x2e\x0b\xdf\xbd\x4c\x67\x49\xe4\xe0\x94\x39\x22\xd0\x4d\x8e\xd5\xb9\x20\xe9\xc4\xe1\x23\x71\x18\x1c\x39\x57\x31\x1b\x3b\x7c\x48\x8e\x1a\x52\xf0\x9d\x14\xfd\xc8\x0c\xe3\x18\x8f\x4e\x11\x65\xf4\xf6\x96\xa0\x5f\x67\x31\x29\x90\x1c\x4e\xa7\xae\xaf\x27\x46\x7b\xf9\xdc\xf0\xaa\x7a\x79\x29\x17\x5c\x22\x42\xf9\x01\xe4\xee\x07\xfb\xc1\xae\x3b\xf7\xb7\xfe\x5f\x00\x00\x00\xff\xff\xb2\x42\x65\xae\x52\x3c\x0e\x00") -func web_uiAssetsConsulUi8f69a00424bae13b8764ed2197104033JsBytes() ([]byte, error) { +func web_uiAssetsConsulUi791d914f251adffbcdf4d48ff3466279JsBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsConsulUi8f69a00424bae13b8764ed2197104033Js, - "web_ui/assets/consul-ui-8f69a00424bae13b8764ed2197104033.js", + _web_uiAssetsConsulUi791d914f251adffbcdf4d48ff3466279Js, + "web_ui/assets/consul-ui-791d914f251adffbcdf4d48ff3466279.js", ) } -func web_uiAssetsConsulUi8f69a00424bae13b8764ed2197104033Js() (*asset, error) { - bytes, err := web_uiAssetsConsulUi8f69a00424bae13b8764ed2197104033JsBytes() +func web_uiAssetsConsulUi791d914f251adffbcdf4d48ff3466279Js() (*asset, error) { + bytes, err := web_uiAssetsConsulUi791d914f251adffbcdf4d48ff3466279JsBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/consul-ui-8f69a00424bae13b8764ed2197104033.js", size: 857048, mode: os.FileMode(420), modTime: time.Unix(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-ui-791d914f251adffbcdf4d48ff3466279.js", size: 932946, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsConsulUi97ec8a4278cddf4266ff5aa45bf84f69Css = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x7b\x6f\x5b\x39\xb2\x28\x8a\x7f\x15\x22\x8d\x8d\x33\x3d\xdb\xac\xcd\x2a\xbe\x9d\xdd\xc1\xaf\xc7\x7b\x1a\xfe\x01\xce\xbd\xc0\x9d\xb3\xfd\x47\x0f\x1a\x07\xcb\xd2\xb2\xa5\xd3\xcb\x92\x8f\x24\x2b\x89\x1b\xb9\x9f\xfd\xa2\x8a\x4b\xb2\xde\x92\x1f\xe9\xc4\x19\x23\xf1\xd2\x5a\x7c\xb3\x58\xac\x07\x59\x2c\xfe\xff\x3a\xbd\x6a\x34\xae\x27\xea\xcd\x7f\xff\xcf\x5f\x74\x7a\xf3\xf6\x87\x66\x78\xd5\x1f\xe8\xc9\xf0\xea\xaa\xa9\xff\xbd\xdb\x9f\xaa\xcb\xe1\x70\x52\x8f\xd4\xc5\xed\x64\x32\x1c\x1c\x41\x7d\x7d\x33\xf9\xa4\xc7\x93\x6a\x52\xbf\xbb\x6d\xde\x35\xfd\x77\x7f\xdd\x14\x78\x5c\x75\x26\xfd\x69\xbd\x29\xaa\xa9\x2e\xea\xe6\xdd\xf6\xf2\x16\xe3\xe7\xc5\x4c\x3e\xdd\xd4\xba\xdb\xaf\x9a\xe1\xd5\xd2\xc7\x2c\xc1\x3f\x47\xc3\xa6\xfe\xa9\x84\xfd\xf6\xae\xdb\x9f\xf2\x9f\xea\x76\x55\xb5\x23\x6a\x77\xe6\x9b\xad\x79\x6f\xee\xb3\x56\x47\xd7\x55\x7f\x50\x2a\x9a\xbf\xcd\x22\x25\xe0\x66\x16\x73\x9f\xeb\x8f\x49\xfd\x71\xa2\xbb\x75\x67\x38\xaa\x26\xfd\xe1\xe0\x78\x30\x1c\xd4\x9f\x2f\xfb\x75\xd3\x1d\xd7\x93\xa3\xde\xe8\x8f\x8b\xe1\xa8\x5b\x8f\x4a\xf8\xe6\x36\x4c\xaa\x8b\xa6\x56\x9d\xea\x86\x0b\xd8\xd2\xce\x92\x66\xd2\xab\xab\xae\x9a\xf4\x4a\x2b\x96\xf3\x2d\x04\xcd\x93\xb5\x9f\xdd\xd9\x4b\xef\x88\xdf\x7b\xa5\xd1\x55\xd3\xbf\x1a\x1c\x37\xf5\xe5\xe4\x73\x35\x9a\xf4\x3b\x4d\x7d\x54\x8d\xfb\xdd\xfa\xe8\xb2\x7f\x75\x3b\xaa\x8f\x0a\xb6\x1c\x71\x59\xfc\x73\x35\x1a\xde\xde\x1c\xf5\x46\x47\xe3\xba\xc3\x15\xfe\xd1\xed\x8f\x6f\x9a\xea\xd3\xf1\x45\x33\xec\xfc\xfe\x19\xea\xeb\x8b\x7a\xa4\x2f\xaa\x71\xbf\xa3\xbb\xa3\xe1\x4d\x77\xf8\x61\xa0\x27\xa3\xfe\xd5\x55\x3d\xfa\x67\x35\xea\x57\xba\xfe\x78\x53\x0d\xba\x75\xf7\xa7\xc9\xe8\xb6\xfe\x4d\xb5\x39\x6e\x86\x1f\xea\x91\x1e\xd7\x4d\xdd\x99\x08\xf2\xdc\x8e\x75\xbf\x33\x1c\x94\x36\xc3\x87\xfe\xa4\xa7\xbb\xf5\xa4\xea\x37\x63\x35\xe9\x1e\x0f\x07\xcd\x27\xdd\xe9\xf5\x9b\xae\xc0\x46\x30\xec\xf8\xf8\xa2\xbe\x1c\x8e\xea\x3f\xf4\x87\xfa\xe2\xf7\xfe\x44\x4f\x46\xd5\x60\x7c\x39\x1c\x5d\x1f\x8f\x86\x8c\x8e\x7f\xc1\x64\xba\xf5\xd5\x8f\x6f\xb7\x45\x7c\x96\x4e\xfc\x9f\xdb\xe1\xa4\x3e\xba\x18\x76\x3f\x1d\x75\xbb\x47\xdd\xe6\xa8\x3b\x39\x9a\x0f\x65\x0b\x95\x1e\x1e\xf5\xe8\xa8\x67\x8f\x7a\xee\xa8\xe7\x8f\x7a\x81\x41\xd2\x9b\x5c\x37\x47\xfd\xcb\x51\x75\x5d\x1f\x35\xf5\x55\x3d\xe8\x1e\x35\xfd\xa3\x61\x73\x74\x73\x74\x33\xaa\x8f\x18\xdc\xd5\xa8\xae\x8e\x6e\x9b\x3f\xae\xab\xd1\x55\x7f\x70\x6c\xde\xde\x54\xdd\x6e\x7f\x70\x75\x6c\x3e\xaf\x15\xf9\xc7\xe5\x70\x30\xd1\xe3\xfe\x5d\x7d\x8c\xc6\xfc\xdb\x5b\xf9\xfc\x50\xf7\xaf\x7a\x93\x63\x67\x24\xc3\x78\x32\x1a\x0e\xae\xfe\x58\x8c\x89\xc6\x7c\xbe\x6d\xfe\x68\xfa\x63\x86\xe3\xa7\xa6\x2e\x38\x27\x60\x6c\xb1\x50\x77\x86\x4d\x53\xdd\x8c\xeb\xe3\xd9\xcb\xdb\x36\x62\x7c\x53\x75\x4a\x6b\xd6\x70\xe6\x8f\xfb\x96\x56\xb7\xdd\xfe\xf0\x88\xc7\xad\x7b\xd4\xbf\xbe\x3a\x1a\x5e\xfc\xef\xba\x33\x39\x9a\xf6\xbb\xf5\xf0\x8f\x5e\x69\x46\x75\x3b\x19\xbe\xbd\xae\x3e\xea\x0f\xfd\xee\xa4\x27\x1d\xf8\x0c\x9d\xe1\xe0\xb2\x3f\xba\x96\x29\xa2\xab\xa6\x1e\x4d\x36\x52\x1c\x25\xc3\x79\x04\xd7\xf5\xe0\x56\xdf\x54\x83\xba\x51\x65\x3a\x70\x40\x7f\x52\x5f\xff\x76\x04\xd7\xc3\x51\xad\x6f\x86\x37\xc3\x69\x3d\xd2\x1c\xfe\xee\x9f\x4c\x44\x7e\xea\xf4\xea\xce\xef\x17\xc3\x8f\xbf\xfd\xbb\x14\x22\x04\x6f\x2d\xf3\xb0\xdf\xed\xb4\xb8\x36\x27\x83\x8f\x2d\x6b\x96\xaf\x2d\xae\xd0\xba\xbf\xae\x86\x3f\xa4\x44\xc1\xf5\x45\x50\xa9\x96\x3e\xd6\x4d\x3d\xa9\x8f\xaa\xf2\xd5\x19\xd5\x15\xa3\xa9\x34\x1f\x3a\xc3\x9b\x4f\xfa\x62\x32\x98\x7d\x97\x24\xd5\xa0\x53\x37\x6d\x50\x69\xc0\xa8\x1e\xd7\x93\xdf\x96\x82\xc6\xb7\x17\xd7\xfd\xc9\x6f\xed\x0c\x57\x50\xc9\xbc\x1e\xab\xc5\x34\xe5\xfd\xb7\xe3\xc1\x70\xf2\x97\x79\x5d\x3f\x0a\xc2\xc3\xa4\xbe\xbe\x69\xaa\x49\xad\xeb\xd1\x68\x38\x52\x3c\x1d\xab\x23\xe9\x9e\x1a\xdf\x54\x85\x22\xcd\x09\x18\x4f\xba\x4d\x25\x2f\xf5\xf0\xa0\x1c\xd2\x96\x42\x51\x7a\xd5\xf8\x66\x78\x73\x7b\x23\x40\xfc\xed\xc7\x96\x64\xf4\xaa\xb1\x9e\xf5\x65\x32\x7a\x37\xeb\xd7\x03\x46\x62\x13\xe9\x79\x4c\x41\xf7\x04\x69\x78\xdb\xe9\xe9\x4e\xd5\x34\xc3\xdb\x89\xcc\xcb\xb7\xb3\xa8\xdb\xf1\x1c\x57\xda\x88\xeb\xe1\xdd\xa6\xd0\xf1\x7a\xe0\x6a\xc0\xe7\x02\xcd\x51\x3d\xad\xab\x46\xf5\x07\x37\xb7\x93\x63\x69\x66\xdd\xfd\x7f\xeb\xeb\x2d\xad\xe9\xd6\x97\xd5\x6d\x33\xd9\xd8\x20\xa6\x5c\xeb\x0d\x6a\x43\xc7\xeb\x81\xab\x01\x9f\xab\x3f\x3a\xc3\x66\x38\x3a\xfe\x01\x7d\xb0\x97\x97\x9f\x05\x31\x0a\xf1\x6a\x79\x51\x89\xef\x0f\x7a\xf5\xa8\x3f\xf9\xcc\xc4\x77\x9e\xe5\x92\x90\xdc\x67\xc6\xb5\x3f\x2e\xaa\xce\xef\xcc\x81\x06\x5d\xdd\xc6\x5e\x5e\x5e\xbe\x5d\xa0\x93\xe1\xe6\xe3\x5b\x61\x6b\xa3\x7a\xd0\xad\x47\x4c\xaf\x86\x37\x93\xfe\x75\xff\xae\x3e\xab\xaf\xfa\x17\xfd\xa6\x3f\xf9\x34\xef\xa3\xa4\xe4\x8c\xba\xea\xfe\xef\xdb\xf1\xa4\xd0\x59\xe9\xe8\xb6\xa8\xf1\x96\x98\x1d\x45\x0d\xc7\x1f\x75\x69\xe2\xf5\x70\x38\xe9\x71\x9b\xae\x46\xd5\xa7\x71\xa7\x6a\xee\xc7\x7f\x25\x41\x35\x98\xf4\xab\xa6\x5f\x8d\xeb\xee\x5b\x26\x23\x97\xcd\xf0\x83\xfe\x78\xdc\xeb\x77\xbb\xf5\xe0\x3e\xe4\xd3\xf1\xb8\x33\x1a\x36\xcd\xbc\x98\x8b\xe1\x47\x6e\x05\x17\xd1\x92\xf4\x8b\xe1\xc7\xb7\x9b\x43\xaf\xfb\x83\x96\x3a\x5b\x63\x6e\x3e\x7e\x86\xce\xb5\x1e\xf3\x64\xea\xf5\xe1\x64\xd8\xad\xdf\xf7\x79\x42\x1f\x75\x86\xdd\x9a\xf9\xd7\x1f\xdb\x9a\xca\x94\x5e\xc2\x2e\xab\xeb\x7e\xf3\xe9\xf8\x7a\x38\x18\x32\x23\xa9\x3f\xb3\xdc\xb3\x36\x62\xe1\x32\x86\x44\x6f\x5b\x3e\x81\x37\x1f\xdf\xb6\xcc\x10\xc1\x8f\xea\x6b\x65\x3e\x97\x19\xbe\x9e\x55\xd8\xf6\x4d\x35\xaa\x07\x05\x43\x5a\x32\x76\x24\x18\x7e\x54\xf0\x6d\xce\x65\xff\x58\x6c\xd2\xdf\x9a\xfe\xe0\xf7\xf7\x55\xe7\x1f\x9f\xc6\x93\xfa\xfa\x97\xe1\x60\x72\xa4\xab\x9b\x9b\xa6\xd6\x63\x09\x39\x7a\xf3\x8f\xfa\x6a\x58\xab\xff\xfe\xff\xbf\x39\xfa\x7f\x86\x17\xc3\xc9\xf0\xe8\xff\xfe\xf8\xe9\xaa\x1e\x1c\xfd\xf7\xc5\xed\x60\x72\x7b\x74\x52\x0d\xb8\xd4\xa6\x39\x7a\xf3\x4b\x7f\x54\xa9\x7f\x54\x83\xf1\x9b\xa3\x37\xff\x35\x1a\xf6\xbb\xb3\x8f\xd3\xba\x99\xd6\x93\x7e\xa7\x52\xff\x57\x7d\x5b\xbf\x39\x9a\x7f\x1f\xfd\x3c\xea\x57\xcd\xd1\xb8\x1a\x8c\xf5\xb8\x1e\xf5\x2f\x3f\x2f\xf2\xed\xc2\xa4\x67\x98\x7f\x0f\xed\x2d\xa8\xc3\xe0\xfe\xbc\x38\x1c\x73\x64\x28\xa8\xc0\x69\x64\x66\x2f\xe2\x8d\x8c\xd1\x87\x5e\x7f\x52\x0b\x8b\xaf\x8f\x6f\x46\xf5\xdb\x0f\xc3\x51\x57\x7f\x18\x55\x37\xc7\x83\xe1\xe8\xba\x6a\x3e\xff\xf5\xe8\xf8\xb8\xba\x64\x69\x6f\x4d\x94\x5a\xc0\xa0\xb6\xa5\x6f\xd7\x83\xe6\x02\xef\x1f\x0b\x4c\xbf\x2a\xc3\xb3\x42\x2c\x17\x03\x47\x55\xb7\x3f\xfc\xed\x8f\xce\xed\x68\x3c\x1c\x1d\xdf\x0c\xfb\x83\x49\x3d\xfa\x7c\x60\xae\x69\xcd\x42\x6b\xd5\xb4\x72\xec\x45\x35\xae\x9b\x3e\xcb\x3b\x42\x55\x56\x62\x27\xc3\x9b\xcf\x3b\x71\x66\x26\x96\x7d\x2e\x52\xdc\x4c\x6a\x37\x9f\xff\x3a\x13\x9d\x4a\xcf\xcc\x67\xa8\x06\xfd\xeb\xaa\x70\x88\x49\x75\xa1\x07\xd5\x54\xdd\x36\x33\xf8\x6d\x91\x74\xa0\x5b\x0d\xae\xea\xd1\xf0\x76\xcc\x12\xc2\xde\x34\xc7\x97\xc3\xce\xed\xf8\x90\x84\x3d\x1e\xeb\x23\xe8\xf6\xc7\x1d\x7e\x63\xd1\x98\xf5\x00\x18\x0d\x6f\x27\x2c\x07\x8c\xba\xef\x5a\xf6\x7e\xdb\xa8\xa6\xbf\x51\xda\x5a\x0b\x3a\xee\xf6\xc7\xdc\xbf\xee\xa6\xb8\xb6\x69\xeb\x11\xd2\x94\x4d\xca\xe2\x52\x3c\x33\xef\x79\xf9\x3f\x96\xcf\x92\xe7\xc7\x23\xb8\x6c\xaa\x71\x4f\x5f\xd7\xe3\x71\x75\x55\xab\x1b\x10\xc1\x62\x43\xf0\xc7\xfe\x78\x32\x5e\x0f\x1f\xdf\x76\x3a\xf5\x78\x43\xc4\x87\x6a\x34\xe8\x0f\xae\x16\x05\xcb\x22\x7f\xae\xc1\x5c\x1a\xd4\xed\x4f\x7f\xdc\x9d\xf6\xbe\x2f\xfb\xd3\x2e\xa4\x3a\x5c\x74\x3d\xa0\x79\x4f\x29\x6c\xad\xfd\x4f\x29\xec\xbe\x98\xc1\x70\xd2\xef\xd4\xb3\x61\x6b\xbf\xfa\x83\xcb\xe1\xfc\xe3\x66\xd8\xf4\x3b\x9f\xf4\x75\x35\xa8\xae\xea\xeb\x7a\x30\x99\xc7\xcc\xc7\x68\x93\x8c\xbe\x1e\x36\x47\xb4\x0d\x51\x2d\x8a\x6e\x88\x39\x00\x07\x9f\x6b\x7c\x9e\x6b\x68\x9e\x3e\x2a\x87\x29\x2a\x6d\xf8\x1c\xae\x9b\x63\x5b\xd0\x6e\x8e\x7c\x00\x74\xf7\x29\x47\x87\xc3\xf7\xe1\x25\x6d\x83\xf0\xc3\x4b\xba\x2f\x63\xc6\x09\xa0\x14\x52\x77\x55\xb5\x57\x9f\xdb\x13\xbf\x40\x85\xf7\x24\x6c\x07\x65\x4f\xaa\x65\xfa\x7c\x50\xe2\x5d\x43\xb9\x71\x9d\xea\x5d\xbb\x68\xb4\x39\xb2\x5d\x4a\x2a\x91\x93\xea\x42\x08\xe6\x6f\xef\x6e\x16\x16\x75\x56\x94\xdc\xa5\xaf\x7b\x80\x2c\x07\x97\xee\x2f\x87\x2d\x75\x76\x53\xd4\xae\xae\x6d\x55\xa5\x17\x83\x66\x85\x6f\x88\x29\x0d\xda\x10\x71\x68\xd5\x5b\x55\xf6\x12\xb4\x5c\xf5\x52\xcc\x62\xd5\x4b\x11\x0f\xab\x7a\xb6\x34\xb0\x21\xec\x7e\x14\x36\x45\xae\xd7\x3f\x8b\x59\x1a\x91\xed\x09\x76\xb5\xf0\x90\x85\x8a\x92\x76\x6d\xbd\xe2\x80\x9c\xf7\x04\xe6\x81\x19\xf7\x36\xfc\x31\x85\x1e\xbc\xe0\xb2\x35\x66\x06\xeb\xed\x09\xca\x60\x6d\x8f\xdf\x3f\x22\x5f\x68\x89\x67\x33\x19\x7c\x78\xd6\xd2\xc1\x87\xe7\x5b\xc2\xd5\xc7\x66\x7f\x32\xdc\x16\x71\x79\xf3\x7a\xd7\x61\xc5\xdc\x23\xf6\x53\x4a\x39\x0c\xcb\x9f\x52\xc3\x61\xf9\x97\xd9\xc5\x23\x57\xfc\xf6\x8a\x17\xcf\x56\xee\x8a\xb0\xf1\x6c\xe5\xae\x94\xf8\xf0\xb5\xca\x03\x41\xf0\x1c\x05\x6f\x84\xc1\x73\x14\x7c\x5f\x64\x57\xb5\x2b\x2b\xb3\xfd\x0c\x59\x5b\x19\x0f\x9b\x7e\x77\x9f\xc6\xbe\x41\x74\xdb\xb9\x02\xf5\xf6\x7e\x2f\x65\x38\x3a\x9e\x56\xa3\xbf\xe8\xb2\x01\xa8\x2f\x46\xd5\xa0\xab\x83\x31\x47\xed\xba\xc8\x8f\x6f\x17\x13\x4d\x3e\xdd\x0c\x37\xa4\xf9\xfc\xc5\x54\x98\x67\x15\xdd\xbf\xb4\x9c\xf3\x14\xd1\xe5\x1b\x63\xef\x5f\x9b\xe1\x7e\x7d\x8a\xbf\x65\xbd\x7e\x69\xe6\xfc\xe0\xc9\xc7\x80\xed\x14\xf9\xc1\x46\x5b\x39\xda\x34\x19\xb6\x6a\xb0\x87\x6d\x79\x3d\xab\xb4\xf5\x44\x4e\xb6\x09\x2e\xf1\x32\x5d\x56\x2b\xa0\xb9\xa8\x3a\xd8\xe9\xac\x80\x66\xa7\xde\xb4\x95\x45\x3e\xae\xca\x54\xe7\x50\xd9\xcf\xdb\x97\x6d\x1e\xad\xfe\x3d\xae\x3d\xed\x5e\xd0\xe1\x0b\x9d\x0b\x1c\x61\xad\xbe\xfa\xa2\xae\x2f\xe9\xa0\xfa\xb6\xae\x24\x2e\xaf\x5a\x6d\xc6\xf7\x8b\xba\xbb\x52\xc9\x65\xd5\x71\x86\xd6\x8b\x6d\x57\x2e\x37\xb5\xb5\x73\x19\xd7\x8a\xa1\xfa\xc2\xd8\xfc\x76\xe9\xeb\xf3\xe2\x7a\xdb\xa6\xf6\x98\x4b\xbf\x36\x05\xcb\xae\xdc\xac\x20\x53\x51\x37\xba\xcf\xbb\x16\x84\xb7\x28\xe4\xbb\xf4\xc4\x0d\x6d\x49\xd5\x05\xae\xb5\xa5\xa0\xdc\xdb\xa5\xe6\x6e\x6a\xcb\x9e\x05\xe8\x5d\xd4\xf3\xd0\x75\x83\x07\xaa\xc9\x7b\xb5\xde\x1d\xe5\x6d\x80\x8e\x4d\xb1\x5a\x83\x4e\x19\x9b\xb7\xf7\xc8\xb5\x01\x34\x1b\x2d\x04\x96\xda\xb3\xa1\xb6\x16\x05\x1e\x5e\xdb\xfe\x35\x96\xbd\xca\x7e\x6b\x43\xb5\xde\x28\x53\x3b\x53\xd9\xfd\x8d\x3a\x64\xb7\xe5\x4f\x58\x9b\xff\x72\xab\xb5\x8f\x2b\x63\xcf\xc2\xe3\xc3\xb5\xf6\x6f\x59\x6d\x99\x15\x79\x90\xcc\xd1\x89\xd6\x39\xff\x76\xe9\x6b\x9d\x1c\xef\xd9\x77\x5a\xdc\xe6\xd8\x54\x6b\xae\x3b\x75\xbd\xb3\x62\x7f\x81\x89\xcc\xe7\x83\x57\x80\x1f\xbf\x6a\xb2\x89\xa5\xf8\x8a\xaa\x55\x76\xbb\x42\x7d\x0f\x9a\x5c\x0f\xde\xa6\xfc\x62\xdb\x6f\xdf\xec\xc6\xda\xb7\xba\x9b\xf4\x2d\xed\xbf\x3c\xe3\xee\xc6\xb3\xae\x55\x3e\x71\xf9\x70\x57\x5b\x5e\xe6\xb2\xd5\x0b\x5a\x64\xda\x40\xf6\x5a\x0a\xbc\xa2\x83\x0a\x21\x5e\x22\x7b\x0f\xd9\x46\x7b\xda\xd2\xf2\x86\x46\xc6\x4b\x22\xea\xec\x6f\xe4\x06\xdb\xe9\xd6\xd6\xfa\x68\x47\x9c\xd6\xf7\xe6\x19\xdb\xd2\x94\x11\x9a\xad\xa3\x4d\x86\x37\xc7\x78\xf3\x51\xc9\x4a\x9a\xfa\xa1\xba\xe7\x1b\x17\xc3\xc9\x64\x78\xbd\x25\x72\x34\x33\xf1\xda\x10\xd7\xd4\x97\xab\x51\x87\x2e\xd1\x35\x7d\x55\x2d\x1b\x79\xf7\x85\xe7\x74\x6f\x5b\xeb\x7b\x40\x3f\x7e\xbb\x35\x62\x43\xce\x49\xff\xba\x3f\xb8\xd2\x97\xb7\x03\xc1\xb8\xe3\xba\x1a\xd7\x7a\x78\x3b\x79\x7b\x40\x9a\xcf\x3f\xdc\x8e\x9a\xf1\xff\x1a\xd7\xa3\x69\xbf\x53\x8b\xcd\xeb\xbc\xc5\xeb\x7a\x6a\x3d\x1e\x36\x4c\x2f\x59\x55\x55\xdd\xc9\x43\x52\x16\x93\xac\x1d\x49\xc7\x33\xdd\x97\xdb\xd0\x1a\xa1\x4e\x86\xc3\x66\xd2\xbf\xf9\xed\x91\xd9\x76\xb4\x8f\x35\xee\x87\xd6\xb8\x2f\xcf\xf6\xea\xc6\x37\x4d\x7f\x32\x79\x70\x1f\x0f\xc9\xb6\xbd\xd2\x36\xc5\xfe\x6a\x36\x27\x9c\x17\x5c\x7f\xec\x4f\xfa\x83\xab\x65\x49\xf2\xe8\x9f\xdd\x6a\x52\xe9\xd5\xc4\xab\xa1\xed\xa8\xcb\xb9\x8e\x1e\x4a\xfb\x37\x67\xdc\x95\xa2\x2d\x64\xd2\xdb\x08\xb6\xcd\xc1\x6d\xb9\x9b\x26\xda\xcd\x68\x78\x53\x8f\x26\x9f\x8e\x87\x37\x55\xa7\x3f\xf9\xf4\x76\x57\xdc\xee\x89\xba\x6d\x9e\x1e\x34\x4d\x9b\xfe\xa0\xae\x46\xbb\x26\x69\x9b\xa2\x6d\xcb\xb1\x79\xdb\x9a\x17\xea\x7a\x5a\x0f\x26\xe3\x62\x2e\xbd\x34\x81\x67\x62\x6c\x7f\x70\xf5\xd0\xb9\x5c\x98\xda\x83\xd3\xef\x9d\xd7\xf3\x0c\x85\x6b\x1c\x5e\x41\x9b\xfe\x61\x84\xa3\x34\xeb\x91\xe4\x63\x63\xe6\xfd\x2d\x5e\x2e\x43\x9a\xfd\xd8\x06\x6c\xca\xfc\x10\x2a\x76\x70\xf7\x0f\xcb\xf9\xa0\xaa\x0f\xed\xf8\x61\x39\x1f\x48\x4c\x0f\xed\xf8\xe1\x99\x1f\xda\x80\x03\xbb\x7f\x78\xe6\xbd\x94\x1d\x8a\x20\xf4\xee\x50\x02\xbf\x39\xfd\xde\x6a\x0e\x05\xed\xae\xe4\xfb\x2b\x39\x10\x7c\xbb\x92\x6f\x61\x42\x4b\x84\x6d\x73\x5c\x4b\x63\x56\x22\x97\x08\xd6\xe6\xb8\xfd\xfc\x6d\xa9\xf6\xfd\xe9\xf6\x17\xb8\xd4\xaa\xfd\xe9\x96\x99\xe7\xe6\xb1\xdc\x15\x39\xab\x69\x96\x66\xe3\x38\xed\x8a\xdc\xc1\x89\xe7\x1c\xd3\x6c\xe4\xa3\x66\x27\xf7\xbd\x1d\x8c\xeb\xc9\xc6\x7c\x25\x66\x53\xde\xba\xa9\x3e\xad\x54\xd6\x06\x6d\x4d\xbd\x5e\xcd\x42\xf0\x8c\x33\xe3\x2a\x67\x96\x73\x0e\x4b\xdb\x80\xe5\x4c\x59\xd1\xa9\x6e\xaa\xf1\xf8\xc3\x70\xd4\x5d\x39\xcc\xb7\x98\x64\x52\x7f\x9c\x6c\x8c\x9e\x9f\xc3\x2c\x1a\x59\x39\x19\xbd\x5e\xee\x7a\x64\x5b\xe2\x62\xc4\xbc\xac\xcd\xe7\x75\x4b\xda\x59\xa1\x6b\x75\x3c\x20\x53\xa9\xfb\xa0\x0c\x07\xb5\xa9\x85\xc8\x43\x5a\xb4\x94\x65\x7f\x7b\xda\xe4\x07\xb5\x86\x13\x3d\xa8\x2d\x0b\x19\xf6\xb7\x44\x12\xef\x69\x47\x09\x95\x43\x25\x72\xc4\xf9\xb7\x2d\xe8\xf6\x98\xdc\xbb\x5a\xb8\x2d\xe7\xbc\xb9\x72\xd0\xe9\xba\x50\xee\x9d\xc8\xb4\x3d\x4d\xa9\x7f\x53\xfc\xbc\x96\x85\xc8\x2d\x98\xb1\x2d\xc5\x5a\xe1\xab\xe3\xbe\x10\xb5\x71\x98\x37\xc7\xaf\x15\xbb\x3c\x88\x6b\x2b\x2e\x65\xef\xfe\xb2\xdf\x4c\xe4\xf8\xf9\xe8\xc7\x83\x47\xf4\xc9\x45\xdd\x37\xf5\x91\xc5\x2c\x1f\x59\x93\x83\x8c\x90\xa2\x1f\xd5\xd7\x6f\xbf\xe1\x43\x6c\x6f\x59\xb7\xd2\xb3\x63\x7c\xe0\x37\xed\x14\xa8\xd6\xd6\x7b\xe7\xc9\xef\xaf\xb1\xf4\xf1\x88\xc5\x8b\x47\xae\x40\x6c\x5b\x43\xe8\xd5\x55\x33\xe9\xc9\x9a\xa6\x1e\xde\x4e\x6e\x6e\x27\xaa\x3b\xf9\x93\xce\xbc\x17\xcb\x19\x39\x84\xfb\x4c\xe7\xde\x1f\x92\xb3\x5d\xc6\x5b\x66\xa4\x0b\x07\xc6\x17\xc3\x4b\x23\xb7\x2c\x67\x94\x92\x2f\xaa\xc1\xa0\x1e\xfd\xa6\x06\xd5\xf4\xf8\xb2\x3f\x1a\x4f\xf4\xf0\x52\x73\x11\x2d\x86\x2d\xf7\x70\xc9\x57\xc9\x61\x05\x54\x07\xa6\x2b\x9b\xef\x87\xa5\x2d\xdd\x5a\x4b\xda\x54\x4f\x6b\xfe\x86\xfc\x9b\x5a\xbf\x21\xd9\xb6\xc6\x6f\x48\xba\xd0\xf6\xdd\x92\xc8\xfe\x94\x2d\xf2\xec\x4d\xc7\x14\x72\x57\xaa\x2d\x94\x75\x57\x96\x07\xb8\x5b\x99\xd9\x10\xed\x49\xd5\x0e\x74\x31\xc4\xda\xed\xbf\x65\xee\x4f\x64\x76\x18\xe6\xde\xf9\xc7\x92\xcd\xd9\x60\xd8\xad\xef\xbf\xc6\xbd\xe1\x07\x05\xe3\x7a\x3c\x2e\x7b\x3a\xcb\x35\x6e\xe0\xef\xef\xe6\x0e\x18\x36\xc0\x7b\x85\xb7\x2e\x04\xee\x5e\x44\x2c\x49\x0a\x09\xbc\x47\x6f\x69\x83\x1a\x36\x4a\x68\xfa\x1e\xc7\x34\x73\x80\x2e\x05\xae\xf7\x66\x0e\xae\x25\xe6\x2a\xbf\xcd\xbb\xee\xe4\x09\x3c\xb7\xf4\xf6\x5b\x73\x14\x71\x34\xe9\x42\xb7\x1e\x4f\xfa\x03\x61\x94\x5b\x16\x66\xff\x58\x66\xbc\xb4\x9b\xf3\x6e\x38\xe9\xbb\xef\x68\xe5\x26\xf6\xb0\x7a\x6a\x70\x8d\x46\xef\xb3\x36\x79\x25\xd6\xaf\xc4\xfa\x4f\x21\xd6\x4b\x64\xe4\x4b\x39\xcb\x59\xa3\xdf\x85\x78\x7f\xb9\x13\x5d\x5f\x87\x13\xec\x20\xe1\x6b\x35\x1e\x42\x9f\xbf\xb8\xeb\x9f\x27\x73\x84\x25\x02\xbc\xe4\x58\x2b\x18\xb3\xdb\x83\xd5\xab\x1e\xf3\x67\xe8\x31\xdf\x9e\xbe\xb2\x53\x3b\x79\x92\x48\xd9\xfb\x02\xf2\xd8\x66\xe1\xab\xf7\x0d\xca\x42\x9b\x85\x9f\xc5\x29\xe9\x37\x4f\xc9\x83\x56\x1d\xfe\x45\x15\xed\x6d\xc2\xcc\xab\x30\xf6\x2a\x8c\x7d\x69\x61\x6c\x4d\x68\xfa\x06\x24\x9c\x27\x2a\xb2\x8f\x92\x82\xbe\x2f\x2d\x75\x7d\xd5\x7a\xd3\xf9\xac\x7f\x61\x51\xe8\x1b\x16\x1b\xf6\x88\x04\x3b\x38\x70\x3b\xde\x48\x32\xe0\x3f\x7c\x18\x55\x37\x37\xf5\x68\x76\xf2\x6f\x69\xd5\xa1\x85\xed\xf1\x60\xd2\x2b\x13\xe5\x2f\xf4\xe3\x5e\x0f\x64\x37\x07\x3b\xa6\x5e\xf6\x3e\x7d\x3f\xab\x8a\xe3\xcb\xb5\xe3\x1b\x47\x32\x93\x44\xd1\x7a\xd7\xf6\x7a\xe3\xc0\x35\xef\xba\xdd\xa5\x98\xba\xab\x19\x35\x6f\x47\x9d\x5a\x80\xdd\x76\xab\x6a\x17\xad\xd7\xe4\x89\x71\x7d\x53\x8d\xaa\xc9\x70\xf4\xdb\x52\x64\x77\xc9\xb1\x2d\x97\xf4\x18\x79\x63\xa9\xf0\x07\xe4\x96\xda\x1f\x70\xb2\x41\x9a\xb7\xd1\x9f\x57\x51\x55\x6f\x36\xfb\xf7\xe2\x8f\x85\xb8\xed\xee\xbe\xd6\x62\x16\x72\x6d\x39\x64\xc9\x29\x0e\x5b\xc1\xaa\xaf\x9f\x49\x1a\x5b\x84\xf6\x03\x00\xfd\x10\x18\x3f\x93\x1b\xe1\x4d\x2d\xdd\x9b\x75\xb1\xad\x7b\xcf\x71\x48\x6b\x59\xb2\x6c\x1d\x80\xf3\x70\x2c\xaf\x5f\xb4\x49\xd6\xfc\xbb\xb7\x02\x28\x8f\xca\x23\x57\x0f\xf7\x08\x4d\xf5\xf5\xf3\x0a\x57\x7b\xca\x7b\x90\x08\xb6\xa7\xac\xc7\x8a\x69\x5b\x8b\x7d\x84\x5c\xb7\xb0\xdc\xf2\xef\x5b\xcb\xbd\xd9\xc3\xa0\xf6\xf1\xaf\x9b\x97\xe1\xbf\x7a\x93\x80\x59\x5f\x3f\x44\xee\x5c\x4e\xbd\x4b\x18\x5d\x4e\xb9\x22\x9f\xae\x0c\xca\x22\x63\x87\xdf\xfb\x83\xae\xbe\x19\x0d\x3f\x7e\x5a\x92\x65\x25\x4b\x61\x7e\xe5\x9a\x82\x65\x5e\xbf\xc2\xf9\x6f\x5e\xd6\x2a\x5d\x0b\x83\xa7\xc8\xd3\x37\xa3\x5a\x89\x9b\xdd\xa7\x09\xd6\x0b\xa4\xf6\xb1\x05\x75\x9b\x47\x1f\xd5\x62\x1a\xfb\x44\x81\x7e\xad\x03\x8f\x28\x69\xde\x83\x47\x9c\xdd\xea\xf6\xa7\x4b\x5b\x59\x33\x2f\xc2\x87\xc8\x70\xdf\x9e\x48\xb2\xcc\x12\xb7\xcc\xc7\x19\xea\x6d\xd0\x99\x76\x89\xd0\x87\x8b\xbf\xcf\x2c\xc9\x3e\x55\x58\x7d\x94\xb8\xf9\x44\x91\xed\x69\x92\xd7\xf3\x8a\x49\xdb\x64\xa0\xef\x69\x21\xe8\x10\x9e\xff\xec\xb6\x09\x6b\xbc\xef\x70\xee\xf6\x27\xad\xbe\x7c\x2d\xda\xfe\x54\x8a\xbc\x41\xbb\x7f\x16\x6d\x7e\x5d\xeb\xde\xad\x31\x3f\x49\x25\x3e\x5c\x3f\x7c\xb2\x1e\xf8\x8c\x0a\xdb\x56\x35\x6a\x41\x73\xfa\x13\xf4\xa4\xc3\xb4\x9f\xdd\x5a\xcd\x83\xf5\x95\x03\x95\x8f\xef\x44\x79\xd8\xa8\x23\x2c\x29\x03\x9b\xe4\xfe\x97\x27\xaa\x3f\xb3\x84\xfd\x0c\xa2\xee\x22\x7d\x6b\x05\xaf\xed\xc7\xb7\xab\x0f\x63\xe8\x0c\x07\xe3\xdb\x46\xd7\x1f\x27\xf5\x68\x50\x35\xba\xc8\x4d\xf7\xeb\xd7\x0b\x69\x98\x27\xdd\x47\x94\xc0\xbd\xf9\x97\x93\xad\x14\x31\xea\xcb\xf5\x15\x1b\xc4\xba\xc3\x8f\x8d\x36\x70\x59\xf5\x1b\x39\x56\xd4\x9d\x1c\x92\x7c\x54\x77\xfb\x23\xa6\x69\x3b\x93\x2f\x9f\xbe\xdb\x7d\xca\x71\xdd\x31\xdb\xcc\x8d\xe5\x8e\x5e\xac\x1f\x72\x7c\xe0\x71\xc2\x59\xf2\x05\x75\x02\xa6\x55\x73\x5b\xeb\xaa\x69\x86\x1f\xda\x44\xb3\x06\xac\xa7\x9a\x41\x7f\x6f\xc2\x6e\x3d\xf8\xb4\x37\x11\x53\x82\xfb\x33\xc5\xdb\xd3\xcd\x54\x8a\x95\x74\x9b\x5c\x13\xb5\xab\xf6\x3b\x52\x89\xa7\xa2\xbd\xc9\x5a\xb7\x73\x7b\xd3\xcd\x9b\xb6\x9a\x6e\x54\xd7\x72\xff\x51\xe9\xcd\x4a\xd3\x57\x19\xff\x42\xcc\x06\x65\xa5\xab\xea\xeb\x35\xe4\xd8\xa1\xbb\x54\xf3\x49\xf2\x6e\x69\x2f\x6e\x77\x9e\x76\x30\x1e\x92\xa5\xed\xfc\xe1\x59\x0a\x2a\xbe\x83\xc1\x70\xa0\xef\xea\xd1\xf0\xa0\xc4\x87\x26\x2c\xbb\xcb\xd2\x08\x21\xc8\xd5\x8f\x47\xf0\xfb\xed\x45\x3d\x1a\xd4\x93\x7a\x3f\xd1\x5a\x4f\xba\x4c\x78\x06\xc3\xeb\xaa\xbb\xb7\x94\xa5\x54\xab\x05\xdc\x6b\xe4\x6b\xa1\xac\x8a\xaf\x05\xae\xa9\xdd\x6b\x29\xda\x11\xb8\x0f\x5f\x94\xe8\xa0\xba\x9d\xf4\x8c\x96\xa0\x9b\xd1\x70\xda\xef\x2e\x9e\x7c\x5f\x4a\x79\x35\x1c\x5e\x35\xf5\x41\x49\xaf\xfb\x9d\xd1\x70\x3c\xbc\x9c\x1c\x94\x7a\xf8\xfb\xa4\xda\x96\xb0\xc5\xb8\x9d\x94\x7c\xb3\x4f\xde\x79\xf4\xa4\x1e\x8d\x2a\x66\xc1\x7b\x07\x66\x2d\xe5\xf2\xe0\xb4\x80\xdc\xd5\x96\x7f\x5e\x0e\x47\xb2\xe3\x77\x51\x8d\x5a\xf1\xf3\xb7\x7d\x06\x1a\x0a\xba\xc3\xce\x58\x37\xfd\xc1\xef\xaa\x9a\x1f\xfa\xdd\x97\xa7\xa9\xab\xd1\x60\x6f\xa6\x45\x63\x8a\x03\xeb\x59\xce\xb2\xbd\x9a\x55\x21\xb3\xfa\xe7\xa8\x6e\xfe\xfa\x53\xaf\x6e\x16\xce\x43\xef\xd9\x94\x65\x8d\x54\xa6\xee\xce\x84\x23\xb5\x04\x72\x59\x91\xea\x4e\xe6\x04\xec\xb0\x2d\xe0\x2d\x85\xb4\xf8\xf5\xa4\x32\x56\x27\xd8\xc6\x32\x66\x2c\x56\x30\xe4\x7a\xd8\xad\x9a\xff\xd5\x69\x86\xe3\xfa\xb7\xa3\x16\x70\x33\xac\x5c\x76\x4c\xb2\x09\xaa\x6b\x8b\x64\xdb\xd9\xf3\xb6\xa4\x9b\x79\xf4\xb6\xd4\xeb\x8c\x7a\x5b\xca\x8d\xdc\x7a\x5b\xe2\x8d\x2c\x7b\x65\x7f\x7d\x8e\x21\x8b\xe1\x87\x22\xc4\x01\x79\x56\xc7\xff\x80\x2c\xab\xc3\x2d\x6d\x64\x71\xb6\x25\xc5\x83\x61\xb7\xd6\xfd\x6e\x3d\x98\xf4\x27\x9f\xb6\xa6\x6a\x05\xe7\x2d\x09\x5b\xe9\x76\x7f\x89\xcb\x09\x77\x17\xba\xc0\xbd\xf6\x17\xbc\x9e\x78\x77\xe1\x85\xa9\xed\x2f\x77\x29\xdd\xee\x22\xef\xc9\xf1\xfe\x62\xd7\xd2\x6e\x2d\xfa\xe1\x17\x23\x6f\xce\xb2\x9a\x66\x66\x0c\xb2\x2a\x85\x4d\xba\xd0\x1f\x4c\xea\xc1\x64\x36\x3f\x97\xa5\xb9\xfb\xe8\x32\xcb\x56\x62\x7b\x8b\x32\xf9\xa2\xc7\xb3\x51\x7d\x53\x57\x93\xe3\xc1\xb0\x7d\x7b\xbb\x10\x77\x33\x2c\x1e\x03\x8e\x3b\xb5\xdc\x09\xb8\xe7\x2e\xf3\x19\x5d\x59\x59\x4a\x7f\x57\x2d\xca\x6c\xf7\x6c\x70\x71\x81\x0a\xb8\x56\x61\x0f\xef\xee\xbd\x36\x2d\xc6\xcf\x59\xce\x96\xf8\x7b\xfe\xb2\x39\x41\x21\x1b\xf7\x95\x5f\x55\x93\xfa\x43\xf5\x69\x2f\x2b\x5f\x49\xb7\xcc\xc8\xe5\x92\xe7\xce\xb0\x69\xca\xbe\x43\xd9\x11\x28\x2e\x06\x17\x7a\xfc\x23\x2b\x75\x55\xb7\x3b\x62\x19\x7f\xd1\xf4\xea\x01\xd9\x19\x63\x1f\x9b\x57\x56\x69\x1f\x93\x79\x49\xd6\x56\x73\xb2\xa8\xba\x0f\x07\xc1\x4a\x51\x32\x32\xcf\x50\xce\x8c\x4d\x3c\x43\x49\x6b\xbb\x4e\x4f\x2f\x73\xc6\x97\x9e\x5c\x12\xf3\xee\x9f\xae\xeb\xdf\x1e\x57\xd2\xe2\x4a\xf1\x86\x8e\x3e\x53\x89\x4f\x2e\x86\x85\x9d\xa7\x16\xd2\x6d\x16\xb0\xf4\xc9\x3d\xeb\x36\xd0\xad\x26\x55\x21\x7e\xcf\x53\x5e\x8b\xf8\xcf\x51\xd4\x40\x6e\x92\x7d\x9e\xb2\xe6\xf3\xe8\x79\x0a\x9b\xf4\x9e\xa9\xa4\xe1\x68\xf2\x4c\x25\x8d\x86\x93\x61\x67\xf8\x4c\x58\x31\x9f\xd8\x0b\x85\x2d\xec\xa6\x6c\xd2\x8f\x96\xe2\xfb\xe3\xd6\x03\xe8\xbb\x8d\xd1\x9b\x74\xa5\xf5\x0d\x19\x75\xc0\xde\xc9\xbb\xed\xd9\x77\xac\xd9\x6e\x6e\xff\x43\x0a\xd8\xd4\xc1\x87\xe4\x3f\x0c\x02\x4f\xee\xf3\xec\x56\xf6\xd5\x8c\x4f\x81\xd3\x13\x40\xf4\x24\xe8\x3c\x04\x30\x4f\x81\xc9\xde\x7d\xb5\x9d\x50\xd9\x9f\x7b\x07\x5c\xf6\x67\xde\x09\x99\x5d\xd9\x0f\xad\x6c\x2b\x74\x58\xc6\xd2\xf5\xc7\x9b\xe1\xb8\xee\x6a\xa6\x80\xe3\x42\x4e\xb6\xc9\x7e\x3b\x33\xac\x49\x7b\x3b\x53\xaf\xcb\x77\x5b\x93\x1f\x22\xd1\x1d\x9a\x79\x5d\x86\x3b\x34\xe7\x26\xa9\xed\xe0\xbc\x3b\xe5\xb4\x43\x4b\xd9\x24\x99\x1d\x98\x77\xa3\x2c\xb6\x23\xef\xc1\xd2\xd7\x03\xcb\x78\x44\xc6\x65\x09\xeb\xd0\x6c\xdb\x64\xaa\x07\xe4\xdf\x22\x45\x3d\xa0\x84\x75\xb9\xe9\x01\x99\x37\x48\x4a\x0f\xc8\xbd\x49\x36\x7a\x50\xf6\x15\x69\xe8\x21\x79\x57\xe5\x9f\x87\xe4\xdd\x24\xf1\x3c\x20\xff\x26\x19\xa7\x64\xbf\xbd\x19\x4f\x46\x75\x75\x7d\x10\x85\xdb\x90\x78\x0b\x75\xdb\x90\x72\x1b\x65\x5b\x49\x7a\x38\x55\xdb\x9d\x71\x1b\x45\xdb\x9d\x6b\x3b\x35\xdb\x93\xef\x00\x4a\xb6\xbb\x84\xed\x54\x6c\x67\xbe\x1d\x14\x6c\x2d\xdf\x03\xa9\xd7\x41\xf9\x1f\x98\x69\x13\xd5\xda\x9d\x65\x37\xc5\xda\x9b\x77\x27\xb5\xda\x9b\x7b\x1b\xa5\xda\x9b\x71\x2b\x95\xda\x9b\x73\x3b\x85\x3a\x20\xeb\x46\xea\xb4\x3f\xdf\x66\xca\xb4\x3f\xdf\x76\xaa\xb4\x37\xef\x26\x8a\x34\x9e\x54\x93\xdb\xb1\x76\xc6\xee\x5c\xed\x9b\x27\x73\x3b\x93\x4d\xaa\x2b\xcd\x4a\xe1\x52\x15\x62\xcd\x33\xaa\xa7\x75\xd5\x14\x2b\xe2\xb9\x0c\xb8\xbc\xcf\xbe\x98\x6e\x39\x66\xb6\xdf\xb7\xf5\xa4\xfc\xca\x8e\xcf\x6c\x17\x4d\x64\xcc\xb2\xcf\x53\xf5\x07\x7a\x50\x4d\x67\x5b\x81\x5b\x32\x6c\xd8\xde\xbb\xac\xeb\xee\x7c\x6d\xf5\x01\xdb\x82\x05\x1b\xc7\x6a\xc5\xfc\x78\x47\xc5\xcb\xfb\x7d\x5b\xea\x5d\xb1\x18\xdb\xb8\xb5\xb3\xf1\x2c\xf0\x52\x48\xb5\xbc\x66\x3f\x5b\xa3\xdd\xbf\xba\xbf\x92\x72\xcf\xda\xfe\x16\xbb\xa9\x07\x29\xde\x8f\xb5\xc0\xda\xa4\x45\x3d\xba\xac\x75\x9d\xea\xd1\x45\x6d\xd2\xb0\x1e\x51\xd8\xe3\x1a\xb2\x45\xfb\xda\x6d\x9c\xf6\x88\xe1\x7a\x84\x9d\xdb\xf6\xf1\x7a\x4c\x61\xdb\x06\xec\x31\x65\x6d\x1f\xb1\x87\x95\xf6\xc8\xa6\x6c\x1b\xb3\xae\xaa\xb8\x9b\x8b\xb2\xc4\x2c\x06\x2e\x87\xcd\x22\x55\x9c\x74\x99\x32\x2f\x4a\x97\x73\x57\xdc\xd7\xd5\xf8\xf7\xf5\x2d\xac\xcd\xa1\x4b\x79\x56\xb6\xb6\xde\x6e\x0c\x5c\xbb\x18\xa8\x73\x3b\x1a\xd5\x83\xc9\x09\x7f\x1c\xbc\x1b\xb6\xd5\xbe\xf1\xc0\x7d\xb2\xdd\x97\xf2\x54\xb7\x93\x9e\xbe\x1c\x8e\xae\xdf\xdd\x14\xd3\x50\xb1\xf9\xf9\xf1\x3e\xfb\x61\x06\x90\x2b\x3b\x5b\xcf\x67\x76\xb8\xab\xcc\x3f\xd3\x36\x71\x5f\x63\x76\xdb\x30\x2e\xd9\xd7\xf7\xff\xd9\x69\xaa\xf1\xf8\xaf\x3f\xc9\xac\xfa\xed\xdd\xf7\x6c\xe9\xf8\x55\x8d\x0d\xd7\x2c\xb4\x5e\x37\x5c\x5f\x37\x5c\x5f\x37\x5c\x5f\x37\x5c\x5f\x37\x5c\x5f\x37\x5c\xbf\xf8\x86\xeb\x56\x07\x75\xaf\x5b\xb2\x8f\x29\xe1\x50\x20\xee\x03\xdb\xab\x69\xfb\xaa\x69\xfb\x77\xb9\x5b\xbd\x0b\x67\x1e\xb3\xd7\xbd\x7c\x4e\x74\x59\xba\xdf\x63\xf8\xff\x7d\x6f\x7d\x1f\x02\xe8\x03\xb7\xce\x5f\x37\xc1\x5f\x37\xc1\x5f\x37\xc1\x5f\x37\xc1\x5f\x37\xc1\x5f\x37\xc1\x5f\x37\xc1\x5f\x37\xc1\x5f\x37\xc1\xff\x94\x4d\xf0\xcd\xdb\xd6\xc5\x5d\xec\xcc\x91\x54\x77\x69\xf7\xf6\x79\x36\xab\xdb\x55\xf0\x76\x73\xfd\xb7\x5d\x5b\xeb\xcf\xbf\xb1\xfd\x98\xb3\xae\x8f\xdd\x0c\x3f\xec\x8c\xec\x33\xef\xa0\x3f\xe2\x90\xed\xc1\xfd\xfb\xd3\xce\xe6\x6e\x3e\xfa\x38\x87\xc1\xb6\x23\xab\x3b\xcd\x04\xfe\x35\x8f\xb2\x3e\xc2\x38\x62\xff\x19\xd4\x65\xeb\x88\xfd\xf6\x13\xaf\x76\x13\x5f\xd9\x6e\x62\x87\xb2\xfe\x74\x2b\x8c\xe7\x3f\xcb\xfa\x6a\x98\xf1\x27\x18\x66\xec\xc5\x89\xc7\xda\x79\xec\x30\xd1\xd8\x7e\x46\x79\xdd\x76\xe3\x09\xa7\x96\xd7\x0c\x3f\x56\x0f\x32\x77\xfb\xe3\x9b\xa6\xfa\x74\xdc\x1f\x88\x27\xd3\x8b\x66\xd8\xf9\xfd\x6d\x67\x28\x45\x1e\xbf\x79\xf3\x76\xda\x1f\xf7\x2f\xfa\x0d\xd3\x28\x79\x6d\xea\x45\xa3\x0e\x71\x43\xc5\xa9\xab\xfe\xe0\xed\x87\x7e\x77\xd2\x3b\x46\xa0\xfa\xfa\xed\xfd\xe5\x7e\xf5\xf5\xdb\x69\x3d\x12\xc6\xa0\xab\xa6\x7f\x35\x38\x96\xcd\xef\xc9\xf0\x66\x93\x5b\xbe\xcd\xf6\x29\xfd\xeb\xea\xaa\x3e\xbe\x1d\x35\x7f\xf9\x1f\x2c\x56\x1f\xcb\xf7\x7f\x8c\xa7\x57\xff\xfe\xf1\xba\x79\xdb\xe9\x55\xa3\x71\x3d\xf9\xe9\xbf\xff\xe7\x2f\x3a\x1d\xfd\xe7\x78\x7a\xa5\xa6\xfd\xfa\xc3\xdf\x86\x1f\x7f\x7a\x63\x94\x51\xe4\x14\xb9\x37\xea\xb2\xdf\x34\x3f\xbd\x19\x0c\x07\xf5\x1b\xf5\xf1\xba\x19\x8c\x7f\x7a\xd3\x9b\x4c\x6e\x8e\xff\xe3\x3f\x3e\x7c\xf8\x00\x1f\x2c\x0c\x47\x57\xff\x41\xc6\x18\x2e\xf8\xcd\xbb\xff\x14\xa1\x96\x33\xe9\xd1\x6d\x53\xff\xf4\xa6\x9e\xd6\x83\x61\xb7\xfb\x46\x75\x9a\xfe\xcd\x6a\x58\xf7\xa7\x37\xef\x11\x15\xfa\x1e\x4d\xa9\xa7\x69\xaa\xe9\xee\xda\xe8\xd4\xa3\x69\xe8\x69\x3a\x8f\x77\xd7\x90\xb3\xf6\x27\x01\x5c\x54\xa4\x48\x05\x70\x49\x91\x42\x1a\x3b\x0e\x42\xa3\x32\xe4\xac\xd0\x9c\x60\x04\x4f\x8a\xe4\xff\xfc\x1d\xe9\x1f\xed\xbb\x42\xe4\x84\x74\xf7\x1e\x49\x91\xe9\x68\x07\x8e\x94\xd1\x49\x5b\xf0\x49\x27\x9d\xc6\xe5\x45\xc9\x9f\xe2\x0f\xc5\x1f\xe5\x85\xc3\xee\x66\xd0\xf8\x37\xb2\xc6\x98\x37\xff\xf1\xee\x3f\xb9\xd3\xef\xfe\xc7\x8f\x6f\x5f\xe1\xfd\xa7\xc2\xfb\xf3\xc1\x3e\xaa\x1e\xe1\xdb\x69\xdb\xde\xcc\x21\xee\x73\x9e\xc1\xfb\xca\xc3\x3d\x78\x2c\xba\x55\x78\x16\x1c\x3c\x18\xef\x04\x9f\x32\x78\x8b\xa8\x08\x4f\x08\xc1\x44\x4c\x8a\x50\x11\x81\xb1\x36\x2b\xcc\x60\x2d\x5a\x45\x08\x14\x04\x51\x72\x8e\xf9\x0c\x2d\x44\x6b\x92\x72\x90\x53\x0e\xe1\x04\x09\x72\x30\x5e\x59\x08\x3e\x9b\xcc\xc8\x63\x6c\x5e\xf8\x36\x40\x21\xe3\x2c\xfd\x19\x41\xb4\xc9\xb8\x59\x79\x27\x08\x39\x04\xc6\xec\x59\x75\x90\x29\x31\x6e\x72\x16\x17\x52\xca\x8a\xf0\xb4\x6d\xea\xaf\xef\xd1\x2a\x4c\xa7\x88\xe7\x18\x4e\xd1\x9e\x63\x2a\x41\x4e\x82\x8c\x04\xb9\x5f\x17\xb0\xef\xb2\x4a\x97\x36\x2e\x21\xe0\x57\xb0\x14\x39\x7c\x95\xf0\xd9\x17\xe1\x1f\xbd\x40\xf9\xf8\x55\xb3\xfd\x55\x7e\x01\x6e\xf7\x8a\xf9\xfb\x30\xff\x19\x59\xdd\x2b\xb0\xf7\x93\x99\x03\xcd\x27\x1f\xa2\xd7\x3f\x3b\xbb\xf8\xf2\x22\x8b\x00\x54\x11\x76\x10\xbc\xe3\x8a\xc1\x1b\xab\x11\x42\xc8\x0a\x21\x5a\xd4\x16\x8c\xa1\x32\xde\x32\x7c\xb9\xa3\x21\x46\x8d\x60\xad\x26\x08\x19\xcb\xab\x05\x17\x48\x99\x32\xb0\x65\x58\x53\x19\xd5\x32\xa6\x65\x44\xe7\xe3\xa9\x08\x7b\xe8\xc1\x04\x7b\x57\x06\xb3\xc8\x4c\x2c\x3d\xb1\xdc\xe4\xe4\xd3\xf5\x68\xea\x76\xc9\x2a\x07\x2f\x6d\xbe\x48\xf1\xfd\x25\x8f\xcd\x8b\x92\xdb\x5f\x32\xa0\x3f\xef\xd6\xc7\xbf\xae\x04\x6b\x15\xda\x1e\x3a\xa0\x46\x5b\x08\xcc\x0c\xce\xd0\x2b\x4c\x4d\xd0\xe5\x1f\x82\x53\xfc\xd7\xc6\x9e\xda\x29\x2d\x76\x95\xea\x0b\x63\xf3\x1e\xb2\xfd\x80\x15\xe1\xf5\xa4\x2f\x8f\x64\xcf\x60\x8a\xb1\x29\x1a\x9d\x05\x9f\xd7\xc1\x8a\x0c\x57\x3c\xc3\x08\x18\x15\xe2\x2a\x64\x57\x29\xe9\xa3\x8f\x72\x1c\x7a\x0a\xe0\x81\xae\x2f\xb7\x2d\x48\xbd\xbc\xf1\xc2\xcc\xaa\xbe\x8c\x84\xcf\xca\x2b\x24\x16\x86\x7c\x09\x55\x5e\xf9\xf2\x52\xc2\x90\x38\x45\x9c\x47\xa3\x04\xa1\x95\x77\x09\xc6\xf2\xbf\xbc\x97\x70\x52\x6d\x1d\xbb\x06\xf8\x20\xcf\xe7\xcf\xea\x14\xfb\xa0\x93\x23\x07\x7b\x9f\xde\x68\x24\xfa\x2c\xce\x61\x1f\xe1\x3f\xf4\xeb\x52\x55\xaf\xec\x29\xe6\x13\x32\x80\x8a\x05\x73\x65\x81\xa5\x63\xe5\xcf\x39\x14\x95\x44\x94\x87\x60\x10\xe1\xa9\x3f\x69\xd3\x58\xd5\x66\xc3\x7c\xee\x4f\xac\x64\x95\x3f\xe5\x95\xfd\xf5\x3d\x7a\xc1\xab\x78\xc6\x44\xc3\x0b\x61\x69\x71\x8c\x43\x92\xe0\xb1\x24\x89\x67\x33\x3c\x3e\xe3\x50\x15\xcf\x66\xd1\x2d\x1e\x9f\xcd\x0a\x48\x05\x77\xcf\x66\x78\x7c\x36\xab\x63\x51\x3e\xef\x44\xeb\x9c\x7f\x86\x65\x80\xa7\x9d\xb0\x79\xaa\x85\xd8\x93\xcc\x10\x9f\x62\xec\xf1\x68\x4b\xa1\x03\x2a\xfd\xda\x8b\x01\xff\x0a\xe8\xfe\xb5\x74\xff\x7f\x05\xd8\x6e\x92\x19\x1f\x66\x1a\xb0\x31\xf5\xcb\x93\x44\xbc\x62\xc1\xb1\x83\x80\x5c\xa9\xe2\x51\x54\x34\x45\xd7\x31\x0a\x01\x35\x7f\x6b\x52\x74\xea\x3b\x5a\xd2\x68\xd2\x90\x35\x69\x3a\xf7\x1d\xc3\x41\xfc\xc5\x69\xee\xae\xdb\xa1\x71\xf3\xc1\x5d\x90\x45\xca\xe8\xb5\xc1\xf1\x5e\xde\x29\x83\xab\x66\xd1\x33\x79\x67\x56\x40\x3b\xb8\x0b\xf2\x4e\x3b\xb8\x3b\xa4\x9a\x1d\x37\xcd\x1c\x7a\x25\xc7\xf3\xde\x6a\xb1\x7e\x45\xc5\x01\xd7\x14\x3c\x87\x77\xfa\x87\x3b\x34\xff\xca\x7b\x1b\xa4\xe8\xa4\xdd\x02\x5b\xd8\x0b\x3b\x99\xed\x78\x95\x10\x0e\x52\x44\xdb\x76\xc4\x4e\xa8\x4d\x38\xdf\x19\x23\x45\xbf\xbe\x47\xc3\x44\x82\x25\xed\xb3\x7b\xd1\xfa\x8c\x43\x59\x6b\x3a\x9b\x89\xd7\x3e\x9d\x61\x56\x49\x22\x96\x28\xc8\x06\xad\xf3\x2b\x9c\xad\x7d\xa2\xc1\xf6\x53\x8e\x26\x3c\xc1\x12\xf3\xb1\x36\xc4\xfb\xab\xfc\xda\x62\xc8\x8b\xc2\xd8\xaf\xb6\x97\xf0\x92\x80\xb4\x49\x30\x78\x90\x6d\xdf\xa6\xc4\x2f\x4f\x2c\xd8\x32\x66\x63\x27\x43\x60\xe6\xff\x75\x1b\xa0\xd1\xfc\x63\x71\x64\xee\xae\x35\x29\xf4\x8d\xf6\xda\xcb\xa2\x93\x2e\x2b\x4f\xed\xc0\x34\x3c\x2e\x3a\xca\x58\x65\x95\x1a\x9d\x55\xde\xb5\x50\xf1\x7c\xc7\xfb\x9f\x7e\xf4\xe9\xa1\x07\x0e\x5e\xe4\x36\xc3\xb7\x34\xfc\x2f\x6a\xdb\xe0\x5b\x02\xdc\xe7\xbd\xa7\xe3\x9f\x78\xb4\xfc\x19\xb2\x3e\xe6\xbc\xec\xb3\x5b\xfa\x3e\x8b\x8d\xe8\x4b\x9c\xe7\x59\x61\x60\x3e\xe9\x20\x59\x85\xd4\x30\xb6\x51\xd9\x24\xc8\x45\xb5\x57\x51\x02\x5b\x3c\x6c\xd3\x7f\x1f\x73\xf5\xd9\x3b\xff\xf9\xcb\x18\x58\xbf\x40\xe9\x21\x14\xe5\x9d\xc9\x94\x68\xee\x18\x55\x64\xf1\x2c\x89\x38\xa6\xd0\x34\x41\x05\x35\xdb\x95\x92\xc7\x4e\x32\xf6\x50\xef\x11\x8f\x77\x1d\xf0\xfc\x07\x16\x9e\x44\x6b\x5e\x32\x71\x79\x5e\x2c\x78\x49\x94\xe5\xb9\xf1\x7f\xcf\x1d\x5a\x8f\x3c\x39\xf4\x22\x71\xca\x43\x34\x9e\x09\x71\x4a\xbe\xd1\x0e\x7c\xe2\x47\x56\xf3\xb7\x7b\x88\x6a\x81\x31\x83\xfb\x3b\xc3\xae\x2f\x04\x83\x03\x5d\x5d\xbe\x44\xb4\x49\x40\xd9\xab\xc8\x70\x6b\x18\x4a\x4a\xa0\x34\x7f\x53\x73\xdb\x08\xb5\x66\x2d\xf1\x7d\xe0\xcc\x17\x01\xc0\x01\x8c\xf9\x31\x77\xef\x3c\xee\x6e\x9a\x9d\x5e\x83\xbf\xa4\xe7\xe1\xc3\x0a\x79\x89\xb3\x46\x58\x16\x06\xe1\x61\x45\x36\x16\xbe\x86\x41\x61\x62\x7d\xd4\xe7\xa6\x20\x8b\x0a\x67\x6d\xda\xef\x63\xb6\x3c\x6b\xc7\x37\xd9\x51\xb5\x6e\x76\xc5\x94\x4a\x75\x1b\xb8\xac\xfa\x0d\xa7\x50\xdd\xc9\x33\x4a\xfb\x56\x91\x79\xf8\x5a\x2d\x5a\xf0\x29\x34\x56\xdb\x33\x0c\xe0\xd0\x89\x6e\x64\x95\xfc\x13\x9b\xb2\xcc\xa1\x8d\xb6\xfc\x4f\xd9\xb3\xc8\xe9\x15\x26\xce\xa2\x09\xa2\x97\x87\xd0\x0e\x27\x64\xc4\x29\x09\xe0\xc7\xdd\x7b\xb4\x90\x8d\x87\xe4\x43\x87\x20\x9a\x00\x2e\x17\x1a\xc4\x09\xbc\x73\xca\x41\xc2\xa0\x3c\x04\xd7\x00\x59\x07\x26\x70\x4a\x17\x20\x7a\xa7\x2c\xa4\x24\xc5\x65\x65\xc1\x2b\x0f\xc6\x06\x0d\xce\x49\xe6\x4c\x9a\xc0\x24\xab\x1c\xd8\x88\xda\x43\x8a\xa1\xbc\x4f\x35\x75\x3c\x18\x31\xe4\x74\x90\x42\xd2\x9e\x4b\x24\xab\x03\xa0\x27\x20\xc7\x59\x49\xac\x37\x29\x32\x13\x0d\x94\xb4\x05\x0a\x51\x3b\xc8\xd9\x6b\x84\x98\xb2\x2e\xf6\x9c\xd1\x47\xf0\xc1\x31\xf9\x8c\xa4\x08\x30\x70\x3f\x03\x65\x0d\x91\xa2\x26\x08\xc6\x6b\xb0\xce\x6b\x0b\xce\x11\xd8\x40\x1a\x92\x0d\xdc\x5d\x0d\x9e\x22\xe7\xc9\x4e\x03\x11\xb7\x3b\x91\xd5\x08\x26\x65\xc8\xc8\x15\x65\x83\x8a\xc0\x20\x03\x13\x3d\x57\x90\x53\xd4\x80\x06\xc1\x66\xaf\xc1\x64\x26\xcc\x06\xb9\x33\x08\x84\x04\x8e\x92\xd8\x90\x72\x28\xb3\x7a\xee\xb5\x33\x96\xdf\xa6\xd4\xd1\x0e\x10\xa3\x32\xda\x43\x88\xa4\x21\x07\x1d\xc0\xb9\xa4\x09\x52\x74\x1a\x82\x27\x6e\x3e\x02\xda\xc8\x2d\xf6\x51\x21\xa4\x44\xda\x03\x62\xd2\x3c\x28\xdc\x7d\x1e\x0a\x64\x98\x64\x8e\xb7\x19\xb5\x63\xf8\x54\x0e\x12\x8b\x1e\x29\x2b\xa3\x0c\x5a\x08\x0c\xa7\x18\x4f\x32\x10\xb1\x3a\x4d\x81\x27\x51\x30\x16\x9c\x45\x35\x1f\x7e\xbf\x38\x63\xc2\x2f\x31\x24\x7a\xb3\x38\x49\x07\xc3\xc1\x5d\x3d\x1a\x2e\xdb\xab\x95\xeb\x8b\x0f\xf3\x75\xbd\xd1\xe5\xf5\x97\xb8\x2e\xf9\xf9\x66\x2c\x53\x97\x74\xd8\x8c\xbd\x5a\xa2\x82\x1b\x88\xdb\xc2\xa4\x4e\x10\xb2\x55\x68\x20\x9a\x58\x21\xa4\xc0\xc3\xc2\x4f\xa3\x50\xa1\x06\x63\x02\x63\x35\x39\xb5\x1c\xc9\xd1\x1c\xa9\x24\x72\x61\xb8\x72\xc0\xff\xf2\xb2\x6b\xb2\x40\x38\xc0\xda\xa0\x32\xc4\x18\x2a\x48\xde\xf2\x5f\xa9\x40\x19\x46\x1f\x13\x17\x42\x39\x9c\x91\x37\x9a\xc8\xe2\x6c\xb0\x72\x18\xc4\xfb\xb5\xac\x60\x30\x6a\x30\xb1\xa3\xc1\x20\x18\xa2\xf2\xeb\x1c\xff\x46\xe0\xec\x3c\x9f\xad\x4a\x60\x4b\x6e\xc1\xad\x52\x85\x86\x4c\x5e\x66\x74\x5e\x8e\x50\x08\xde\x67\x20\xef\x3b\x60\x88\xa7\x07\x18\x8a\x8c\xaf\x60\x4c\x06\x6b\x6d\x05\x89\x90\xff\x66\x25\x05\x27\x26\xdd\xef\x31\x42\x8e\x91\x5b\xeb\x42\xac\x20\xb9\xcc\x7f\x2d\x24\x11\x42\xd4\x40\x39\x2c\x84\x0b\x10\x73\x22\x0d\x21\x53\x07\x9c\xb5\x60\xa2\x85\xe8\xc0\x05\x16\xe4\x33\xcf\x87\x0a\x88\x90\xff\x24\x83\xe1\xce\x05\x30\x31\x70\x75\x94\x02\xf7\x2e\xa4\x15\xd8\x68\xee\x17\x57\x99\xdc\x0a\x64\x39\x42\x49\x04\x6b\xa2\xc1\xcb\xac\xb3\x11\x57\x0b\x40\x70\x99\x29\x13\xa5\x95\x02\x24\x82\xc3\x39\xbf\x25\xa6\xb3\xc1\xae\x65\x87\x24\xe4\x3d\xf9\xd5\xea\x93\xd8\x6f\x27\xbf\x80\x31\xff\x15\x28\x26\xbb\x84\x31\x09\x92\x2b\x5b\x7c\xd6\x31\x8d\x8a\x39\x29\xa3\x13\x84\xc4\x54\x28\x79\xdf\xbe\x27\x08\x48\x27\x80\xde\x2b\x07\x18\x98\xb6\x19\xe7\xc1\xb2\x36\x9d\x98\xba\x62\x95\x20\x38\xaf\xca\xb3\xb4\xc1\xb7\x30\x88\xb2\x82\x67\x3c\x53\x45\x1b\xa9\x0a\x4c\x4b\x55\x79\x16\x50\x47\x26\x68\x9a\x07\x42\x05\x48\x91\xda\xa7\x69\xff\x31\x5e\xfb\xa0\xd6\xf2\xa9\xfb\x7c\xcd\x7d\x05\x8e\x9b\xc2\xc3\x15\x42\x8b\x38\xf7\x0d\xb9\x5b\x07\xc7\x36\x7a\x77\x75\x4f\xf3\xb6\xf8\x48\x79\x89\xe2\x24\x5a\x48\xa4\xec\x09\x5a\x31\xf0\x67\x2c\x21\xb0\x8c\x4a\xa8\xb0\xa3\x11\xac\x32\x9a\xc0\x31\x5e\x31\xf6\x29\x3a\x75\x73\xab\x23\x55\xec\x8c\xa6\x18\x8a\x65\x52\x31\x54\x52\xb4\x60\xbc\xd4\x1a\x2b\x4d\x75\x06\x63\x35\x64\x3f\xb7\x51\x6a\x4d\x96\x34\xf5\x98\x17\xa6\xbb\xf7\x59\xa1\x3d\x0d\x53\xea\x59\x39\x93\xad\xad\x0a\x3d\x3f\xd5\xc4\x61\x77\xef\x83\xca\x53\xea\x85\xf3\x7c\x1a\xee\xae\xbd\x0e\x1d\x10\xc2\x81\x0a\x9c\xe7\xe6\x8e\xb5\xbc\x68\x99\x43\xfc\xae\xf9\x5d\x7e\x39\xe4\xee\xbd\x53\x84\xe7\xbe\x47\x53\x04\x63\x62\x0f\x8d\x7c\x78\xc8\x99\x7a\x4c\x62\xec\x39\xc6\x53\x4c\x53\x77\xea\xee\xae\xe5\xe4\xb6\xb6\x53\x6d\x4f\x89\x9b\xd3\xd3\x11\x0c\x4e\x59\xfc\x22\x85\xae\xb1\x90\xb3\xfa\x5e\x4e\xd5\xbc\xa2\xc0\x97\x40\x81\xcf\x3b\x1d\x6c\x3c\xa3\x7c\x12\xf8\xff\xf3\x0a\x28\xf7\xa6\x18\x89\x4e\xe8\xef\xb3\xe5\x8a\x98\x95\x6b\x34\x44\x1b\x21\xe2\x19\xa2\x8a\x2c\x1e\x9c\xda\xf3\x04\x3e\xf6\x52\xa3\x09\xb2\x63\x41\x3a\x39\x07\x91\x65\x6b\xc4\x33\x64\x39\xc0\x04\xba\x63\xd8\x8c\xea\xce\x44\x20\xf1\x7b\x2d\xe5\x9f\x14\x1b\xd0\x36\x48\x8b\x23\x90\x9f\xde\x20\xf8\x37\xea\xe3\x4f\x6f\x20\xfa\x37\xea\x53\xfb\x3b\x8b\x73\x1c\x59\xbc\x84\xcc\xbe\x46\x1f\x7f\x7a\x13\x81\xfc\x12\x2b\x63\x55\xc4\x82\x6f\xb2\xca\x6f\x0e\xac\xb2\x0d\x6a\xfa\x83\xba\x53\xdd\xfc\xf4\x66\xfc\x7f\x6e\xab\x51\xbd\x4a\xfd\x0f\xba\x1c\xe4\x60\xe7\x55\xcf\x88\x08\x4e\xe1\x81\x66\x40\x0f\xc6\x03\x46\xed\x56\x0b\x8f\x99\x95\x9f\x4c\x73\x44\x90\x9d\xf0\x00\xde\xc5\x53\x99\x59\x18\x96\x51\xc1\xde\xa3\x02\xa9\x08\x86\xb5\x8c\x0d\xa8\x20\x55\x3c\x00\x0f\x68\x09\x0f\x68\x86\x07\x61\x1d\x0f\x4c\xb0\x4a\x9e\x4d\x64\xe5\x4a\xc9\xf3\xcd\x21\x75\x1f\x88\x10\x07\x5d\x85\xf7\x22\xa5\x83\x27\x5b\x4e\xb0\xfe\xb4\xc1\xf1\x89\xa8\x1f\x89\x25\x58\x0e\xf2\x2c\x18\x67\x56\xea\xcf\x30\x40\x56\x98\xc0\xe2\xcf\x11\xb2\x61\x84\xe1\x67\x2b\x02\x93\x22\x73\x77\x1d\x40\x0e\x7a\xe2\x59\x04\x16\x2a\x43\xde\x9c\xd4\x75\x4a\xb5\x0b\x9e\x55\x44\xbf\x49\x5e\x83\x60\x84\x67\x3d\x24\xb0\x9e\xfc\x6a\xe8\xf2\xbd\x0c\xd7\xe7\xe7\xf1\x5e\xb9\xcf\x1f\xe4\xb7\xb1\xfd\x2f\x63\x9e\x14\x62\x8f\xa6\x19\x7c\xc7\x28\x88\x29\x68\x88\xcc\x0a\x80\xc1\xc5\x43\xe5\x7b\x1a\x5d\x47\x73\x94\x8c\xa3\x97\x04\xba\x4d\x30\xd5\x18\x4f\xac\x22\xc9\x64\xe5\x49\xca\x81\x57\x74\x8a\x76\x4a\xa7\x7e\x8a\xa1\x87\x76\xaa\xf3\xdd\xfb\xc8\x9a\x61\x44\xd7\xcb\x53\xb1\xcb\x48\xa7\x71\x2a\xbf\x77\xd7\x2c\x21\x26\x1f\x7b\xf9\x9c\xc5\x48\xdb\x46\x44\xc9\x43\xb3\xf4\xf9\x34\x9e\x63\x39\x31\xcd\x1a\xf4\x79\xe0\x67\xcf\x4f\xdb\xb2\xee\xde\x23\x73\x0c\x7f\x8e\xbd\x30\x0d\x3d\x6e\xdd\xb9\xe5\x6c\x67\x98\xc4\xea\x43\x23\xa3\x01\xa3\xe0\xe9\x4e\x93\x8f\xe5\xbd\xd9\xf9\xe8\x6d\xbe\x81\xe4\xc9\xd7\x7b\x3c\xe5\x72\x87\xa7\xdd\x5a\xf0\x9c\x0e\x17\x9f\xd5\x57\xdf\x86\x09\xf3\x8d\x70\xbf\xd7\x29\xf3\x4d\x72\xb9\xd7\x61\xd9\x4c\xc9\xb6\x78\xe9\xfd\x36\xd8\xcf\xc3\x8e\xb4\x61\x3e\xf7\x3d\x0f\xd9\xb9\x73\x7b\xea\x2b\x96\x39\xca\x62\x5f\x39\xdb\x76\x1f\xb0\x6d\xf9\xc0\x43\x4e\x3d\x4d\xe7\x98\x4f\xfd\xdd\x75\xd6\x28\x0b\x05\xb2\xef\x97\x21\x59\x25\x8f\x05\x87\x0a\xe5\xa8\xfd\x39\x9a\x1e\x9d\xdb\x9e\xde\xc9\x30\x9e\xe9\x3a\xb8\x27\xde\xa1\xf1\x20\xf7\xf5\xdf\x0a\x45\x7d\x90\x80\xea\x94\x6b\x9c\x72\x53\xa4\xd3\x70\xee\x7a\xe9\xee\x3a\x28\x0c\xe7\x51\x6c\xab\x4f\x43\x47\x23\x90\x2f\xeb\x4a\xd1\x2f\x2e\x2c\x91\x97\xdd\xca\x82\x1b\xd4\x29\xc9\x18\x39\x38\x54\xd6\x8a\x9c\xa6\xd3\x34\xd5\xd4\x4b\xc5\x29\x8b\xdd\xf6\xf5\x3e\xa9\xd4\x73\xe7\xe1\x34\xed\xf2\xb4\xf1\xb5\x29\xe2\x77\x0a\xd6\xc7\x4e\xb5\x27\x5f\xa3\xf2\xf8\xeb\x0d\xd6\x73\xae\xf9\xda\xfd\x56\xe6\x22\x23\x03\x19\x15\x7a\x3a\x35\x9a\xf4\xc2\x42\x2d\x42\xce\x90\x75\x71\x48\x7a\x46\xac\xe6\xad\xac\xd7\x86\x15\x82\x7b\x9e\x56\x16\x69\x45\x3b\xa4\x53\x77\x9e\x7a\x18\xa6\x68\xbe\xdd\xb9\xf3\x8d\x80\xe1\xf3\xfc\xd2\xfb\x7d\x9b\xe3\x2b\xe9\xd6\x77\xc7\x9f\xfd\x9e\xfd\x6f\x05\x63\x1f\x42\xe6\x08\xc1\x18\x71\x74\x68\xd2\x09\x19\x88\x0a\x1d\xd8\xe2\xb2\x8b\x58\xe6\x53\x48\x60\x9c\x57\xb6\xa3\x1d\x98\x90\x94\xd1\x01\xac\xec\x95\x07\x9f\x74\x04\x6f\x93\x8a\x10\x92\xeb\x11\x20\x62\x07\x9c\x58\x97\x38\x24\x85\x60\xa2\xb8\x08\x13\x2b\x99\x24\xbb\xef\xc1\x13\xe4\x5c\xbc\x87\x29\x02\x74\x59\x13\x18\x22\x2e\x8f\xda\x57\x04\x27\x3b\x93\x04\x81\x1c\x84\x5c\x22\xc5\x58\x44\x62\x0d\x0b\xb0\x36\x89\xf9\x86\x89\xca\x82\x15\xeb\x11\xeb\x9c\xf2\xe0\xc1\x4b\xc1\x04\x49\x39\xa0\xe0\x21\xdb\xa0\x3c\xa4\x9c\xc0\x70\x52\xcd\x14\x3a\x78\x0d\xc1\x10\x04\x7f\xea\x21\xba\x50\x95\xaf\xb2\x78\x82\x12\xa7\x21\xf8\x0e\x18\x69\x2b\x06\x2e\x8a\xdb\xe7\x53\x02\xef\x90\x81\x11\xe3\xa9\x85\xe0\xa8\x72\x0e\x30\x64\xd5\xfe\x18\x65\x8c\x06\x1f\x50\x39\x88\x14\x3a\x9a\xa1\xc0\x13\xc2\x64\xd9\xe9\x01\xc3\xd2\x54\xb6\xf2\xd6\xc3\x62\xf8\x83\x0c\x3b\xe9\xb2\x31\x4e\x8b\x69\x0c\xa7\x11\x88\xe0\xdd\xb5\x4e\x80\x9e\xb4\x87\x90\xfd\xa9\x3d\x47\x84\x88\xbd\xcc\x32\xf5\x19\x3f\xb3\x4a\x10\x8d\x6d\x10\x30\x71\x6b\x93\xf2\x60\x64\x3b\xdb\x90\xd3\xf2\x2c\x21\x12\x89\xe5\x29\x4b\xce\x49\xbc\xbb\x2d\x59\x75\xe1\x2f\x84\xe4\xbe\x21\xd2\xf3\x8a\xcf\xaf\xf8\xfc\x9c\xf8\x7c\xb0\xbc\xf4\xf0\x7b\x1b\x0f\xbf\x07\x6d\x25\xe5\x4b\xe4\x1d\xb2\x67\x0b\x39\x62\x55\xb6\xb0\xf9\x51\x8c\x41\xf8\x35\xcb\x33\xfd\xbc\x12\xa7\x90\x54\x06\xcb\xca\xe9\x4a\x84\x64\x2a\xcf\x4d\x99\xa4\xaa\xbb\x6b\x07\x39\x58\xb1\xf4\x73\x27\x18\xc0\x26\x27\xf6\x30\x41\xe6\x79\xeb\x72\x25\x8e\xb5\x93\x18\xe4\x18\x2d\x59\x94\x65\xec\x3a\xb5\x53\x02\x1f\xa9\xe7\xc0\xd8\x78\x12\x21\x60\x50\xe8\x21\x38\x95\x21\x88\x9b\x39\x4a\xa1\x78\x72\xe1\xb7\xb1\x94\xa3\xa5\x1c\x55\xaa\x2e\xe5\x10\x4e\x75\x29\x49\x4b\x51\xdf\xae\xe0\xf6\x3a\xa2\xcf\x3d\xa2\x9f\x7f\xf8\x30\xaa\x6e\x6e\xea\xd1\xbb\x72\x6c\xe4\x5d\xb5\x48\x35\xbe\xc4\x8c\x46\x13\x15\xa2\xbb\xdf\xa8\x35\xe6\xdf\x16\x36\x6a\xe5\xeb\x41\x92\xbc\x73\xe2\xec\xf5\xcc\x28\xe6\x1d\xf9\x3c\x45\x70\xd8\x60\x80\x68\x19\x6c\xe1\xdc\x7a\xb0\xfe\xac\x24\xc3\x0c\xf6\x6e\x69\xff\x37\x10\x58\x52\x66\xea\x32\xa0\x3f\x95\x54\xe7\xd6\x40\xc2\x33\x8a\xcc\xa6\x0c\xb8\x38\x0d\x04\x39\x4a\x99\x32\x14\xe9\x3c\xf0\x18\xf7\x30\x42\x4c\x53\x4c\x40\x54\x2a\xd4\x52\x21\x3f\x36\x55\x82\x68\x01\x5d\x23\x75\xe8\xd2\x58\x56\xb0\x6d\xa3\xa5\x64\xc9\x3c\x0d\x08\x91\x1a\x2d\x95\x63\x00\x53\x76\xc3\x9f\x71\x02\xbe\x0e\xc0\x13\x06\x60\x61\x33\xdf\x7d\x6f\x9b\xf9\xa8\x30\xf5\xc4\x6f\xb1\x16\xc7\xc5\xa8\x31\x3c\xd3\x76\x31\xce\xb6\x8b\xf3\xec\x5a\x93\xbc\x78\xad\x49\x9e\x5d\x6b\x92\xdb\x6b\x4d\xae\x8d\xac\xe4\x13\x10\xe7\x64\x52\x19\xb3\x76\xca\xf5\x68\xd9\x81\xd9\x78\xe6\xfd\xac\xc3\x1a\x39\x4b\x72\xd1\x6b\xab\xbc\xa4\x23\x20\xaf\x58\xc6\xe5\xa7\x2c\x6f\x01\xb1\x7c\xc5\x45\xf1\xbf\xef\x84\xcf\xbd\x0e\xdb\xfd\xe4\x6c\x9d\xcb\xf6\x07\x97\xc3\x6f\xc7\x3d\x5a\xc7\x83\x2f\x07\x3f\x8c\x62\x98\x87\x02\xff\xb1\x9e\x7d\x68\xf9\xfe\x47\x31\xac\x76\xb6\x8c\x43\x90\xc8\xd9\x90\xc8\xa6\x92\x42\x03\x06\x5d\x85\xe0\xc5\xc8\xc2\xb7\xb6\xf1\x46\x83\x73\x56\x43\x4e\xbe\xa3\x59\x30\xd0\x40\x91\x75\x24\xcd\xb9\x38\x5c\xce\xdb\xd8\x5e\xd9\x9b\xea\x68\xb0\x89\x55\x8e\xa4\x21\x24\x0f\x98\xbc\xe4\xe5\x24\x15\xb6\x67\x49\xf8\x79\x5f\x36\x47\xf7\x64\xf3\xea\x9c\xc5\x9a\x0e\x18\xca\x60\x53\x00\xf4\x09\x22\xba\x36\x8d\x6c\x73\x01\x25\x0f\x61\x1e\xc2\xf5\x96\x6a\xb9\x56\x65\x14\xd7\xa9\x25\x63\xe6\x17\x4e\x37\x6b\x72\x69\x6e\x98\xf5\x26\x9c\xca\x16\xdb\x39\xd2\x94\xfb\x7d\xf7\x5e\x4c\x0a\x23\x37\xd2\x3a\x06\x80\x75\xf3\x53\x03\x4e\x63\x87\xdb\x0a\x28\x47\x7a\x9c\xe5\x10\x05\x14\x91\x75\xca\x24\xb0\x90\x74\x63\x89\x44\x4a\x62\x18\xda\x01\xf2\x91\x53\x81\xe3\x7a\xc5\x48\x14\x29\x43\x74\x24\x19\x18\x1e\x56\xb6\x8d\x6c\x6b\x2a\x2f\x26\xa3\x94\x3a\x1c\x6d\xa4\x26\xee\x4c\x14\x8b\x52\x5a\xba\x90\x09\x7d\xb0\x97\x97\x1b\xed\xe7\x1e\x62\x90\xb2\xe7\xb6\xd2\x17\xc9\x6a\x5e\xe2\xac\x90\xf3\xd8\x3e\xbc\xce\x8a\xa7\xcd\x8a\x17\xcc\x69\x5f\xb1\xf6\x15\x6b\xf7\x1d\x0f\x1e\xcf\xae\x42\x58\x72\x62\xbb\xf9\x56\x86\x03\xd3\x8e\x6f\x9a\xfe\x64\xb2\xa5\xe8\xc3\x6f\x83\xde\x7a\x43\xf3\xca\xc5\x9d\x2f\xce\x76\xe4\xb9\xe6\xa5\x58\x93\xa6\xd0\x69\xf3\x18\x9d\x00\x9d\x95\xf5\xed\xd4\xbe\x27\x40\x2c\xe7\x91\x39\x85\x85\xe0\xa3\x9a\xc7\xcc\x9f\x6d\xfe\xf2\xa5\x2d\x84\x59\x4c\x5b\x0a\x8b\xde\x5e\xd6\xdb\x23\x87\x50\xd6\xf3\x58\xca\x3c\x3d\xfc\x8c\x48\x70\x48\xfa\x97\xa6\x11\xe9\xe5\xd2\x88\xdf\x6f\x2f\xea\xd1\xa0\x9e\xd4\xe3\xbd\x1b\xbc\xeb\x49\xd7\xf7\x78\x17\xd2\xec\xdf\xe6\x5d\x4f\xfc\x45\x4e\x42\xb7\x4b\x48\x84\xf7\x0b\x48\x87\xba\x2f\xb8\x5a\x3c\x60\xf1\xcb\x2f\xbf\x2c\x11\x8a\x45\x0d\xca\xb0\x36\x89\x60\x0c\x55\x08\x24\xe6\x5b\xfc\x9c\x21\x6b\x24\x40\x3a\xb3\x40\x59\x39\x20\xc3\x23\x48\xc4\xc8\x42\x34\x9f\x2d\x21\x44\x48\xb6\xd1\x08\x3e\xa3\x0a\x90\x49\xca\x42\x49\x86\x6d\x32\x05\x64\xe5\x38\xbe\xf5\x8d\x03\x17\xac\xf2\xe0\x7d\x47\xfc\x19\x50\x06\x9f\xc1\x05\xc8\x81\xa3\x9a\x08\xe8\xb3\xe6\x36\x75\xc0\x46\xc1\xf2\xc8\x78\x11\x12\xa7\xd0\xe0\x7c\x96\x32\x48\xcf\xcb\xd0\x40\x99\xc0\x12\xcf\xd3\x68\xb9\x2e\xcd\x75\x85\x33\x8c\x90\x29\x8a\x5b\x84\x2d\x6d\xd7\xd2\xf8\x00\xe2\x9c\xc0\x24\x01\x83\x9c\xd2\x77\x33\x1b\x39\xf0\x39\x31\x22\x2f\xa2\xa3\xa5\x70\xf2\xf7\xe5\xb3\x2e\x0c\xcb\xe8\x65\x53\x2e\x32\xe5\x40\xa6\x45\x65\x5e\x67\x2a\x2f\x8e\x29\x10\x62\x07\x8c\xf1\x80\x36\x30\x38\x80\x1c\x18\x4f\x60\x43\x04\x63\x2d\x50\x04\xf1\x01\x41\x60\x9c\x85\x58\x81\x23\x9e\xf1\xf3\x73\xd7\x48\x1e\xa8\x91\x53\xdf\x18\x6c\xe5\x20\x07\xaf\xca\xb3\x34\xd7\x82\xec\x15\x7a\x97\x94\x5c\xa3\x2b\x8f\x59\x66\x9b\x34\x18\xb9\x98\xcb\x44\x30\x12\x52\x4e\x06\x92\xd5\xe5\x34\x39\x32\xb1\x43\x8c\xe2\xda\x41\x3c\x40\x80\xe7\xe9\x1b\x35\x98\xc4\x8f\x2c\x73\x54\xcb\x7e\x1a\x90\x67\xd8\xc7\x33\x0f\x4e\x89\x7d\x61\xc5\x03\xe9\xe6\xe4\x8e\x42\x6e\x1d\x35\x44\xe2\xbf\x59\xb8\x35\x91\x01\xd0\xe1\x06\x58\xc0\x20\x05\x83\x23\x02\x93\x1d\xf8\xd8\x80\x31\x01\x8c\xe1\x21\x01\x13\x7c\x47\x8e\xa4\x27\x20\x04\x24\x1e\x69\xc0\x14\x81\x2c\x02\x3a\x92\x7c\x14\xc0\x47\xf1\xf2\xc0\xf0\x33\xc1\x72\x0f\x31\x7a\x30\x31\x01\x91\x6d\x00\xc9\x02\x62\x25\xee\x2b\x54\x79\xb6\xad\x89\x29\x2a\x0b\x8e\x11\x01\x30\x30\xe4\xe5\x7c\xbd\x23\x30\x9e\x7b\x6a\x2c\xa0\x63\x60\x85\x50\xda\x8a\x99\x5b\x65\x75\x69\x31\x13\xdc\x90\x89\xd9\x17\x8f\x4f\x10\xc0\x12\x0f\xaf\x71\x1a\x6c\x14\x00\x73\xbb\x8c\x6f\xe1\x1e\x4a\xa1\x86\xb8\x46\xe9\xa5\x29\x6e\x07\x04\xeb\x35\x10\xa5\x52\xb5\x8d\x0e\x88\x91\xde\x52\x04\x17\xb9\x65\x40\x26\x30\x96\x58\x8b\xe0\x72\x02\x4a\xd4\xe3\xac\x8c\x55\x5c\x8f\xc1\xb6\x22\x29\x36\xc9\x4b\x03\x28\xc3\xdb\x01\xb4\xfc\x66\x03\x10\xc9\x88\x26\xb0\x2e\x94\x51\x20\x2f\xbe\x34\x08\x9c\x74\x31\x24\x9e\x4b\x6d\x5f\xb9\x8b\x46\x00\x1a\xc1\x78\x5b\x3c\x03\xc4\xd4\x70\x32\x2e\x39\x57\xcc\x03\xad\x2a\xcf\xd6\x94\x14\x88\x82\x22\x88\xa9\x91\x6e\x63\x48\xcc\xeb\x3c\x8f\xa7\x14\x82\xde\x81\x61\x02\x80\x5c\x46\xf4\x80\xd9\x6b\x20\xc3\xec\x06\xac\x17\xd1\x40\x32\x1a\x6e\xa1\xe3\x31\x4f\x5a\xba\x6f\x4d\xe6\x32\x3d\xa0\x71\x1d\xc1\x68\x20\x24\x6e\x08\x4f\x64\x1e\x24\xcf\x13\x00\x30\x63\xe9\x91\x00\xc6\x83\xb7\xc4\x33\x33\x31\xc0\x70\x2a\xc0\xea\xb0\x48\x50\x86\xc7\x86\x32\x3c\x4e\x26\x49\x3b\x02\x32\x9e\x51\x66\x08\xa3\x0f\x72\xcb\x1c\xa0\xe1\x82\x7c\x4b\xaa\x3c\x05\xb0\x8c\x03\xdc\x1f\xce\xec\x82\x00\x3c\x30\x6a\x73\xa1\xa9\x29\x93\x07\x7d\x66\xfc\x4b\x51\xb9\x85\x93\xf3\x16\x3c\x23\x1d\x72\x22\xc6\x34\x06\x53\x08\x60\x18\xd9\x6d\x02\xc3\xd8\x9e\x23\x20\x01\x72\x97\x63\x96\x61\xb0\x19\x65\x97\x3f\x38\x4e\xc2\xc2\x0c\x82\x61\xfe\x4b\x19\x50\x4e\xe9\x3b\x30\x48\x22\x5d\x30\x61\x31\x21\x73\xd7\x04\x58\x68\x88\x09\x14\x58\x87\x60\x11\xc1\xf3\xf0\x63\x06\xcc\x05\x03\x0a\xca\xd9\x28\x9e\x5c\xc0\xbb\x02\x6d\x3d\x03\x77\x10\x3c\x67\xac\x61\x51\x43\x40\x61\xa2\x4c\x6a\x1e\xa7\x50\xa8\x09\x31\x16\x39\x2e\xd1\x32\xff\x0f\x28\x93\x80\x73\x15\xfc\x44\x9e\xa2\x56\x70\x5d\xb7\x63\x20\xae\x2d\x98\xd2\x08\x9c\x4d\x10\xd1\x26\x6c\x41\x2d\xaf\x09\x04\x01\x99\xb8\x77\xc0\x78\x2e\xc6\x4a\xdf\x0b\x62\x13\x0a\xe8\x05\x61\x18\xa7\x30\x31\x26\x09\x83\x60\x9c\x2e\xf6\x1d\xcc\xa2\x64\xb0\xad\x8b\x32\x0b\x0c\x4f\x3d\x21\x3a\x89\x5b\x05\xe2\x64\xa3\x11\xe4\x37\x86\xda\x39\x8a\x1d\x01\xb3\xf1\xcc\x36\xc0\x44\x71\xda\xc3\xd2\x22\x95\xf6\x93\x60\x2c\x77\xdf\xcb\xd4\x65\xfa\xc9\xb4\xa5\xe0\x68\x14\xb2\xe7\xb4\x18\x26\x00\x09\x72\x0a\x9c\xb8\xfb\x42\x74\x25\x95\x06\x97\x5d\x81\x7b\xc8\x42\x94\x39\x61\x92\xf9\x5b\x28\x37\x8f\x02\xb3\xa6\x32\x5f\xa5\x06\x1f\x04\xfd\x84\xca\x09\x96\xe5\xf9\x52\x63\x32\x4e\x5b\x70\xd1\x35\xe2\xd8\x86\xe9\x61\x47\x5c\x9d\x14\xd4\x10\x6e\xc0\x24\x4f\x90\x9d\x81\xe5\x25\x84\xb1\x44\x86\x13\x99\xc0\x6a\x70\xc6\x41\x19\x1e\x9e\xb9\x5a\x60\x2a\xc3\x9a\x62\xe9\x90\x41\x86\x9e\x8c\x64\x4b\x38\x42\x2a\x72\x31\xba\x54\xe8\x8e\x50\x69\xee\x9c\x8f\x42\x7b\x74\x99\x27\xd2\xa3\x44\x1c\x2c\x53\x52\x40\xc4\xa5\x72\x19\xd4\x4e\xcc\xc4\xd4\x3d\x09\x2e\x82\xc9\x85\x50\x61\x64\xe8\x7b\x2f\xa0\x13\x3c\x66\xfc\x75\x09\x2c\x4f\x61\x4f\xe0\x58\x74\x65\x12\x23\x9e\x52\x50\x24\xf6\xcc\x78\xca\x2f\xa1\x11\xb4\xe5\x12\x7f\x66\xca\x94\x55\x79\xb6\x0e\x2f\x0c\xb0\x00\x61\x29\x55\x59\x7c\x7f\x94\x67\xcb\x51\x8d\x34\x21\x32\xd1\x16\xa2\xcb\x4d\x14\xe8\xc8\xe0\x30\x16\x64\xdb\x62\x36\x31\x56\x71\x9c\xb3\xa5\x19\xcc\x09\x52\x4b\x61\x04\x6b\x2c\x93\x45\xcd\xa2\x80\xb0\x05\x06\xae\x08\xe2\x24\xc3\x15\x6d\xab\x82\xd8\x54\x94\x91\xbb\xf7\x19\x62\x56\x01\xac\x47\xc1\x2e\x27\x96\x42\x42\xfb\x79\x40\x5d\x05\xd6\x81\x75\xb3\xb6\x7a\xe6\x25\x73\x86\x23\x3e\x8e\x82\x46\x26\x26\x3f\x5b\xc8\x91\x75\x2e\x7e\x96\x7d\xf7\xfb\xa2\xef\xae\x21\x87\xa4\x4c\xc5\xf4\x44\xc9\x63\xb6\x6d\x6f\x51\x0c\x7c\xd0\xb3\xf8\x17\x58\xb8\x92\x29\x2c\xa3\x6f\xec\x5a\xf5\x8c\x45\x3d\x89\x3a\x63\xa8\x06\x29\xff\xee\x5a\x5b\x48\x99\xf5\xa4\x14\x1b\x04\x2f\x1e\x9b\xac\x97\x82\x78\xc2\xa5\x95\x72\xd0\x3a\xf0\xc9\x37\x33\x5e\xc7\x7d\xc8\xce\x81\x0f\x58\x71\x0f\xbc\x2a\xcf\xd6\xf9\x8a\x0f\x4c\x29\x3c\x86\xbb\xeb\x00\x09\x85\xd7\x72\x57\x88\x85\x00\x43\xf7\xe9\xc4\xee\x80\x21\x89\x90\xb9\xad\x3e\x58\x3d\x63\xcc\x1b\xda\xa0\xb9\x11\xc2\x43\x1c\xb7\xda\x88\x69\x57\xe9\x4d\x14\x1b\x30\x17\x7a\x10\xa8\x01\x9b\x22\xcb\x16\x45\xd6\x12\xfb\x2a\xcf\x64\x9a\x71\x98\x67\x6b\x11\x91\x98\x6d\x04\x43\x9c\x58\x83\x4b\xb2\x92\x95\xc5\x69\x8d\xa7\x0a\xac\xcd\xfc\x37\x77\x41\xc4\x24\xca\x37\x32\x88\x5c\xbf\x58\x54\x81\x75\xdc\xfd\xa4\xe4\xd1\xaa\x57\x10\x4c\x2e\xe6\x63\x0d\x8b\x39\x9a\x95\x70\x3f\xcb\xb7\x3c\x40\x0a\x28\x33\x5e\xc5\xd2\x07\xcb\x93\x65\xa5\xdf\x0a\xac\x49\x85\x82\x30\x37\x35\x4c\xef\x63\x2c\xfe\x91\x02\x57\x9e\x59\x8e\x9a\x91\x9c\x52\xbd\xd3\x3c\x86\x3c\xb0\x99\x67\x02\xf7\xa4\xe0\x9f\xe7\xa2\xfd\xbd\xda\xa9\xc0\x84\x82\x3c\xdc\xf7\x90\x2c\x24\x8c\xdc\xf5\xc4\x7f\xf3\x06\x30\x17\x8c\x99\x19\x78\x6a\x20\x27\x12\x57\x32\x5e\x2a\x97\x8b\xb9\x32\xce\x2d\x51\x5a\x14\x6a\x20\x8b\x5f\xa0\x18\x45\x50\xc2\xd5\x5e\xb3\x50\x81\xac\x6c\x2e\x1f\x42\x07\x5a\xf4\xd7\xc3\x4a\xd4\xca\xd1\xf3\xbd\x9b\x0b\x4d\x5d\x8d\x06\x0f\x3c\xee\xba\x21\xcf\xb7\xb1\x68\xd4\xfa\xb4\x72\x26\x8b\x2f\x21\xdb\x24\xc8\x28\x53\xcd\xa7\x8e\xf8\x8e\x33\x0e\x42\x0c\x10\x12\xf2\xaf\x18\xfe\xf1\xb0\x81\x63\xa2\x4c\x18\x20\xb3\x38\x3c\x8f\x6a\xb4\xc8\x53\x62\xd1\x88\x53\x0b\x31\xc4\x8e\x51\x80\xc2\x51\xc5\x4b\x50\x99\xea\xb6\xac\x70\x44\xb1\x60\x74\xd6\x41\x60\x7e\x11\x9d\x85\xc4\x2c\xdf\xc6\x08\xc4\x7c\x29\x79\x0f\x5e\xa8\x1a\x4f\x33\x31\xdd\x31\xd1\x82\x95\xe9\xef\x02\xa3\x43\xd2\x16\x72\xb0\xf2\x86\x50\xb6\x3f\x53\x16\x5d\x4d\x62\x84\xf3\xf0\xb4\x64\xb9\x86\x19\x91\x78\x95\xd3\xc5\x53\x2c\x33\x27\x2e\x16\x98\xf9\xb2\xf8\x01\x9e\xe9\xb0\x37\xb2\x44\x22\x0d\x48\x15\x04\x4c\xfc\x77\x4f\x27\xac\x2c\x10\x4d\xc5\x24\x8a\xe7\x8d\xac\x21\x39\x7f\xe6\xc1\x2b\x24\xf0\xb2\x80\x04\x9e\xcb\x4b\xe2\x48\xce\x59\x26\x68\x2c\xeb\x10\x37\xa4\x12\x8d\x47\x95\xe7\xdc\x05\x19\x27\xcc\x48\x4a\x98\x73\xfb\x9c\x71\x24\x9b\x99\xcc\xf5\x58\x92\x61\x80\x1a\xe6\x93\xa6\x15\x6c\xc4\x8b\x96\x13\xc1\x86\x95\x4e\x61\xe5\x19\x4c\x8c\x80\xb9\x44\x21\x8b\xcf\x29\x80\xb5\xb6\x28\x1d\x39\x82\x6d\xa5\x71\x91\x13\x33\x3f\xcf\xbc\xf8\xdb\x23\xc3\xcd\x67\x75\x4f\x43\x64\x6e\x47\xe2\x3a\x8f\x61\x16\x99\xb6\xf9\x64\xc1\x1b\x19\x0a\x27\x21\xe2\x13\x8a\xdf\x1a\x11\x24\x34\x4b\xc1\xac\xe5\x8b\x92\x2f\xb2\x4f\x08\x90\x99\x18\x26\x9e\xe8\x2c\x2f\x51\x28\xaa\xa6\x17\x1c\x63\x7d\x9d\x45\x30\x16\x38\x82\x2f\xc3\x63\x2d\xb5\x2c\xd6\xe5\x02\x2f\x54\xe5\x39\x23\x1a\x24\xc7\x0e\x62\xe8\x08\xe1\x66\x2e\x65\xc1\x93\x18\x99\x3a\x66\x1e\xfc\x16\x42\x62\xd2\x9f\x58\x12\x4b\x26\x9d\xb0\x84\x2c\x9e\xfa\xa8\xac\x68\x32\xc3\x0a\xe5\xc5\x3a\x59\x1e\xa3\x58\x64\xcc\x5c\x30\x5f\x17\xb4\x96\x79\xa1\xdb\x79\x41\x41\x04\xb7\x00\x9e\xc1\xc1\x2f\x89\x91\xa3\xa8\x1e\x77\xd7\x8c\xd0\x3c\x88\xd1\xf9\x46\x7b\x31\x13\x80\xe8\x8a\x93\x6c\xc7\xa2\x52\x93\x20\x7a\x46\xdb\x94\xd2\x59\x59\x54\xf5\x8d\x96\x40\xc5\x5c\x53\x31\x90\x20\xdb\x78\x26\xcb\x79\x9e\x69\x5d\x04\x8f\x49\xcc\xe5\xb2\x53\x0e\x6c\x20\xf1\x89\x1c\xa8\x48\x07\x15\xf3\x4c\xab\xca\xb3\xc5\x19\x69\xd4\x59\x14\x0b\x5d\xf1\x8c\x26\x0b\x0c\x72\x6a\x72\x4a\x10\x2a\xf0\x16\xe5\xfa\xef\x39\x02\x26\x91\x63\x99\xb1\x80\x61\x85\xc4\xb0\xe2\xe1\xc0\xfa\x04\x8e\xdf\x9d\x63\xa1\x0c\x82\x38\x0b\x63\xc5\x24\x83\x47\x82\x8c\x51\x84\x06\x62\x79\x95\x43\x5a\xe5\xc7\x23\x8d\x09\x02\xcf\xfd\x12\x64\x35\x87\x31\x61\x11\xa1\x16\x52\x19\x68\x27\x65\x25\x89\x04\x12\x01\x35\x59\xb0\x3c\x5f\x2d\xb1\xb8\x97\x18\xaf\x22\xcf\x43\x08\x0b\xcd\xcd\x22\x49\x4e\x35\x4f\x83\x5e\x01\xfe\x8e\x63\xa2\x40\x5e\x05\x71\xd9\x19\x55\x68\x1e\x71\xec\xfd\x9e\x8a\x6f\x3e\xf7\xbe\x89\x33\x3c\xec\xe0\xfb\xc6\x12\x9e\x25\xf3\xfe\xa3\xef\x9b\xb2\x3f\xfa\xec\xfb\xf6\xc2\x1e\x73\xf8\x7d\x13\xfb\xfc\x46\xf6\xf0\x5f\x19\xe8\x2b\x03\x7d\x65\xa0\xaf\x0c\xf4\x95\x81\x7e\x8b\xb6\x2a\xaf\xd4\xf9\x95\x3a\xbf\x52\xe7\x57\xea\xfc\x4a\x9d\x37\xab\x37\xc3\x7e\xb7\xd3\xaa\x06\x0a\xaa\xdb\x49\xcf\x68\x09\xba\x19\x0d\xa7\xfd\xc5\xc3\x19\xdf\xce\x62\x55\x86\x64\x3c\x63\x4d\x20\xb1\x03\x48\x56\xd9\x9e\xf6\x72\x49\x10\x42\x22\xe5\x39\xaa\xc7\x01\xf1\x8e\x89\xbf\xc9\x49\xd9\xd3\x00\x84\xee\xcc\x81\xcd\xa1\x64\x96\x14\xfe\x6c\x96\xe0\xee\xfd\x42\x5c\x95\x04\xcf\xd2\x0c\xdb\x8c\x51\x4e\x16\x9f\x13\x18\x6f\xdb\x27\x87\x13\x4f\xc3\xb2\xe0\x7c\x96\x99\xde\xcb\x25\x12\x0e\x62\xd0\x16\x9c\x4d\x77\xd7\xe8\xc1\x99\xa0\xcc\x19\x13\x2f\x9b\x38\x1e\x05\x73\xfd\xac\xa2\xb5\x02\x83\xe6\x02\x5d\x07\xbc\x95\x0b\x0b\x02\xbf\x58\xc1\x52\x63\xac\xe6\x96\xb4\xeb\xed\x77\xd7\x9a\xb9\x5b\x70\x8a\x67\x1f\xa0\x22\x6c\xee\x2b\xd7\x2b\xaf\xaa\x34\x69\x01\x1d\xfe\xfe\x37\xef\x56\xce\xc6\x56\x1f\xf6\x9b\xde\x2c\xa4\x59\xb7\xb9\xe1\xc8\xfd\xc6\x36\x0b\xa9\xbe\xfc\x7d\x03\x7f\x9a\x55\x5d\x84\x18\x85\x41\x22\xda\x8e\x6c\xe5\x9b\x04\x21\x7a\xe6\x57\x4c\x03\x48\x18\x97\x2d\x9c\x23\xb8\x5c\x76\xd3\xb2\xec\x8d\x3a\x20\xe6\xd3\x26\x79\x1e\x6e\x20\xe3\x21\x5a\xb1\x15\xe0\x77\x66\x1c\x60\x65\xff\x96\x89\x55\xb2\x85\x4d\xc9\xe6\x21\x91\x2f\xf6\x1d\x8e\x43\xf8\x25\xca\xc1\x76\xb9\x9a\x03\x4c\x66\x11\x80\x09\xb9\x15\xd6\x45\xb3\x8d\x4c\xb1\x7f\xf3\x2c\x9e\x14\xb1\x83\x23\x82\x65\x1e\x27\x77\x76\xe4\xc4\x5c\x52\x88\x15\x57\xe2\xb3\x6c\x00\x27\x66\x99\x59\x73\x53\x2a\x08\xc4\x0c\x76\xbe\x69\x86\x99\xe9\x58\x94\xad\xad\x48\x65\x7f\xdf\x05\x07\x16\x99\x11\xe6\xb6\x1b\x14\xc0\x33\xcf\xc4\xc4\x13\xb0\xfc\xba\xc8\x54\x0f\x52\xf6\x60\x12\x53\x5e\xce\x4f\x3e\x71\xd5\xc5\xa6\x20\x67\xd9\xf3\x65\xee\x9f\xc4\x99\x88\x1c\x20\x17\x59\x49\x5e\x08\xed\x94\x85\x9c\x8a\x49\xb7\x90\xef\x76\x7b\x54\x7a\x2a\x07\x3b\xe5\x16\x93\x36\x54\x9a\x8a\xb2\xb5\xe5\x5c\x6a\x9f\x33\xe3\x96\x28\xbb\x77\xca\x03\xba\xf2\x98\x59\xb7\x48\x84\xf1\x9d\x76\x97\x56\x20\x26\xa9\x65\x7f\x4f\x36\x7c\xa3\xad\xac\x6c\x24\xda\xf9\x76\xa2\x98\x07\xca\x9e\x67\xe8\x30\x5c\x51\x8c\x8f\xc4\x2c\x48\x43\xb2\x2c\xcc\x50\x25\x93\x17\xe6\x26\x5a\x21\xe5\xd6\x7e\x2f\x8a\x77\x00\x7e\xce\xad\xb7\xc4\x1a\x93\x1b\x81\xad\x7d\x04\xc6\x0c\x4e\xf6\x5c\x63\x66\xa4\x61\xf0\x58\xe6\x65\x68\x21\x04\x46\x38\x82\x1c\x64\xf7\x97\x72\x02\x1f\x03\x78\x12\x66\x1a\x18\x3b\x1b\x89\xcc\xa9\x03\x96\x9c\x6c\xfc\x7a\x2f\x76\x03\x21\x24\xd9\xcc\x61\x84\x16\x81\x86\x7b\xcb\x3f\x2e\x58\x31\xfe\x12\xa3\x22\x12\x04\x92\x84\x61\x86\x8d\x8c\x78\x52\x48\xd2\x90\x43\x2c\x2f\x14\xbc\x74\xbd\x18\x25\x05\x0d\x31\xc9\xce\x6f\x65\x21\x14\x0f\x0c\x66\x76\x9d\x40\x41\x32\xb2\xc2\xd2\x65\xff\x48\xcc\x09\x8d\x80\x5d\x0c\x00\xa2\x2d\xbb\xea\x26\x8b\x81\x40\xaa\xc0\xc6\xc0\x7f\xf3\x21\x96\x4d\xf9\x62\x46\x22\xdf\x8c\x3b\x21\x94\x17\x32\x7e\x0a\xd6\x16\x51\x33\xb0\x40\xd6\xee\xd7\xb6\x9b\xc8\x81\x43\x51\xc2\x78\x22\xb2\x68\x89\x91\xc4\xc8\xc2\x59\x49\x13\x03\x71\x87\xee\xde\x47\x88\x94\x58\xbe\xca\x3c\x8a\xcc\x30\x68\x51\x48\x31\x32\xcb\x32\xd3\x6b\x74\xe7\xb2\x63\xde\x11\xb9\xb3\xa0\xbe\x5c\xdb\x81\xba\xf5\xc4\x4a\xad\xb9\x80\x6c\x93\x32\x23\x10\xa1\x5e\x2e\xa5\x69\xe5\x7b\x5b\x60\x18\x4d\x86\x22\xa1\x5a\x5b\x36\xa4\x2d\xf1\xdc\xd1\x72\x01\x8d\xec\x9b\x27\xeb\x79\x50\x2b\x16\x2f\xf9\x6f\x0e\x97\xe4\x19\x7d\x05\x9a\x16\x8c\x6b\xb7\xf4\xa5\x10\xb1\x43\xb2\x34\x65\x44\x28\x6a\x4d\x6b\x9a\xe4\x85\x3e\x19\x01\x0d\x8f\xbc\x29\xa6\x7c\x81\xa7\x03\x83\xb9\x42\x60\x02\x97\xef\xcd\x02\xc5\x5a\x23\x74\xda\xb7\x4c\x62\x6a\xc6\xc2\x6f\x44\x2f\x48\x32\x2e\x68\x63\x52\x80\x58\x4c\x3a\x42\x07\x7c\xa1\x03\x21\x82\xd8\x2f\xc6\x0c\x96\xb5\xaa\xf6\x4f\x6c\x5a\x78\x7a\x8b\x02\x66\xc2\x94\x29\x5e\x95\x20\x67\x66\xa1\xfc\x9c\x59\x7e\x05\xb1\x71\x08\xac\xf4\x89\x17\x0d\x7e\xce\xe2\x64\x97\xd4\xf3\x04\x0a\x89\xc4\x81\x91\xd8\xc8\x44\xd9\x39\x27\x0b\x5e\x64\x72\xe3\x78\x0a\x95\xdd\xdb\xd4\xba\xd0\x60\xad\x2f\x70\x41\xc0\x24\x29\x78\xc8\xde\x81\xcb\x42\xaf\x50\x26\x8f\xc5\xc4\xc4\x97\x27\xa9\x2a\x21\x3c\x5d\xa3\x1c\x7b\x47\xa1\x10\x56\xe6\xb3\x90\xfc\xcc\xe0\x15\x02\x66\x05\xbc\x31\x95\x5e\x66\xee\x9b\xd8\x47\x89\xfd\x02\xb1\xd0\x68\xb3\xf4\x5e\x0c\x88\x02\xa0\x65\x5c\x6c\xc9\x62\xb6\xad\xf4\x30\x33\x44\x29\x3c\xc0\x84\x06\x1c\x16\x0a\xd5\x99\x59\x6c\x84\xd6\x7a\xc1\xd2\xcc\x8c\x41\x18\x85\xd8\x29\x18\x26\xf3\x38\x33\xd5\xf1\x4c\xc8\xbc\x8b\xaa\x3c\x5b\x6c\x16\x72\xe3\x62\xb8\xbb\xd6\x45\x84\x2e\x6c\x82\x6c\xe2\xaf\x42\xee\x11\x45\xe7\xa4\xf2\x62\x4d\x99\xf4\x62\x05\xc3\xf8\x29\xc6\x60\xce\xb7\xb6\x21\x3c\xf2\xe4\xc4\x48\x04\xdb\xb7\x68\x48\xa8\xad\xc5\xc2\x42\x98\xcf\x59\xd6\x34\x65\xca\x61\x2e\x64\xce\x17\xeb\x15\x5f\x2e\x8d\xe2\x17\x32\x42\xf8\x1c\x8a\x12\x10\x48\x14\x45\x12\x53\xa9\xc0\x90\x90\xee\x07\x64\xaa\x38\x15\xa0\x30\x9e\x8a\x59\x05\x2b\x8c\x62\xe1\xc0\xd2\x7d\x94\x79\x50\x2c\xc0\x84\xc2\x8a\x09\x10\x79\x70\xe4\x4a\xd5\xc2\x3c\x78\x40\x04\x3f\x28\x73\x0c\x6b\x2e\xc1\x06\xa6\xe7\x1d\xe1\x1e\xc2\x64\x84\x49\x14\xfd\xb2\xd0\x1e\x61\x14\xcc\x86\x67\x5a\xb6\x30\x12\xf2\xa2\xc4\xb1\xb6\xc5\xc4\x96\x95\x41\x59\x6e\x98\x53\x43\x61\x62\x41\x08\x07\x63\x85\x94\xc2\xf8\x27\x16\x87\xc1\xf7\x20\xb8\xd4\xe1\x11\x95\xb9\x27\x5d\x16\xf6\x29\xe8\xe2\x79\x96\x17\x74\xe1\x61\x17\x93\xc0\xd4\x30\x1c\x58\x72\x2d\x5e\x15\x8c\x75\xc5\xc3\x42\xa7\xb0\x25\x41\xb0\x48\xad\xc5\x90\xd8\x33\x79\x26\x25\x3e\xcc\xad\xde\x51\x71\x93\xa4\x5f\x3d\xf0\x76\xad\x7a\xd6\x73\xef\xab\xc7\x19\xce\xb5\x95\x1b\x71\xbf\xe0\x2c\x4f\x13\x14\x89\xd7\x59\xd6\xcc\x5c\x5b\xb7\x58\xbb\x73\xdd\x62\xda\x27\x75\x5b\x12\xbd\x73\x56\xb7\x50\x20\xae\x3b\x20\x6b\xc8\x65\xf0\x71\x66\x83\x28\xc0\xf1\xac\x02\xb2\xf4\x7c\x0f\x48\x84\x62\x63\x68\x2c\xf3\x91\x0a\xb2\xcb\xfc\x37\x8f\x67\x4a\x18\x42\x31\x7b\x66\xf2\x81\xc2\x41\x5c\x6b\x60\x99\x42\xe1\x64\x68\x33\x90\x17\x2b\x5e\xc7\x7f\xf3\xe9\xe1\x65\xea\xf6\x98\xbf\x0b\x1a\xc8\x1a\x43\x6b\xc3\xa8\x67\xf0\x8a\x73\x3c\x08\x2d\x22\x50\x6b\x55\x44\xc1\xc9\x3d\x3e\xc4\x00\x21\xa1\x48\x86\x8a\xdb\x9f\x96\x5e\x4b\x5a\x26\x1a\x34\xb3\x31\x2a\x85\xfa\x96\x94\x33\xc1\x10\x4c\x6b\xe1\x2f\x4d\x59\x14\xf9\xc9\xd3\x2f\xf6\xef\x73\x13\xe7\x07\x89\xb7\xac\x25\x3b\xf1\xcb\x61\xb1\xc3\x3c\x48\x40\xa2\xa8\x3d\x42\x10\x59\x84\xf1\xbe\x80\x29\xa6\x22\x3c\x5a\x31\x9a\x49\xcc\xee\x7c\xe4\xb4\x2d\xd5\x2f\x06\xa8\x99\x0a\xd9\x8b\xcc\x6b\xc5\xd0\x88\xdb\x9e\x45\x22\x8b\xa2\xf7\x8a\x34\x68\x89\xf5\x1f\x9e\x7f\x24\xf3\x25\xa3\x26\xa0\xc4\x42\x86\x9c\x16\xf1\xac\x4d\x8b\x04\x4a\xb2\x8c\x83\x3e\x17\x86\xe8\x2d\xcf\xdf\xbb\x6b\x1d\x64\x98\x2c\x13\x93\x0e\x41\x94\x55\x29\x96\x3f\x99\x51\x7a\x27\xd7\x69\x04\x59\x71\x73\x45\x1d\x17\xf0\x31\x21\x0c\x81\x27\x3b\x53\x07\x6f\x6c\x25\x42\x91\x5c\x0d\x18\xc2\x4c\xee\x8d\xcc\x31\x14\x32\x9a\x75\xc4\xbd\xbb\x95\xeb\x96\x64\x38\x72\x0a\x3a\x73\x0d\x9a\x20\xe0\x9c\xf2\x71\x14\xcb\x11\x46\x58\x21\x0b\x5f\x72\xaf\x5f\x10\xaf\x4f\xac\xc5\x1b\x2b\xfe\x76\x7d\x50\x19\x92\x4b\xe5\x7d\x71\x18\x7f\xc9\x0f\x73\xd1\x7e\x59\xd7\xdd\xf9\x8d\xca\x87\xdb\xad\x6c\xce\xf6\xad\xec\xbd\x3d\xc6\x91\x7f\x9c\x9d\xf1\xf7\x59\x4e\x31\x01\x79\xdb\x61\xf5\x5e\xdc\x6c\xa5\xc0\x3a\xbe\x8d\x4e\x31\x29\xcf\x8a\xc5\x69\xf0\x62\xbd\x1e\x92\x08\xb7\xb6\xbc\xb8\x2c\x47\x5b\xa8\xdc\xd0\x26\x77\x6f\xc9\x72\x9e\x93\x8b\x0d\xb3\x26\x66\xfa\x10\x04\x6f\x43\x16\x19\x63\xf1\x15\x9c\x2f\xce\xab\xe4\x89\xad\xbf\xe5\xf6\x05\xb2\x29\xaa\x58\xb1\x88\x64\x99\x64\xf6\x22\x0b\x60\x9e\x49\xb3\x20\x9c\x7c\xcb\x52\xd5\xfc\x1d\x52\x96\xb8\x90\x04\x99\x8a\x1d\x9f\x22\xc8\x28\xd7\x97\xf1\x9c\x0d\x41\xfc\x86\x49\x0c\x04\x79\xb3\x51\x66\x14\xb7\x4c\x68\x8f\x97\x55\x4f\x66\x4e\xae\x65\x4b\x26\x44\x91\x95\x90\xc0\x8a\x8f\xb3\xb2\xaa\x55\x6e\xc2\x24\x31\x7c\xd7\x85\x28\x3b\x27\x2b\xa6\x86\xc4\xd9\x58\xf1\x1d\x2d\x42\x61\x92\x43\x05\xe5\x82\x4c\x11\xe0\x3c\xfe\x9c\xc1\x06\xab\xca\x73\xee\x19\x28\x94\x65\x48\x31\x69\x2b\xda\x4f\x00\x44\xee\x90\x37\xbe\xd5\x8b\x18\xc8\x2c\x61\x89\x29\xba\x93\x83\x21\x7e\xe1\x55\xae\xd8\x44\x70\x88\x40\x72\xcf\xa4\xf3\x4e\x16\x7a\xb8\x3d\x16\x82\x83\x88\x72\x72\x85\xc4\x1a\xcf\x52\xfb\x2e\xbd\x11\xe3\xed\x6c\x93\x16\x08\x3a\x48\xc6\xcb\x5a\x64\x28\x16\xa4\xa2\x82\xb3\xa4\x17\x62\x82\xec\x88\x7f\x99\xc6\xe5\x72\xbb\x82\x15\xe9\x8b\xf1\x8d\x25\xa5\xd9\x6b\x12\x28\x00\xb1\xbc\x97\xc0\x67\xc6\xa3\x08\x4e\x9c\xc1\xe5\x28\x4b\xf5\x3e\x0a\xd6\x59\xed\x81\xda\xb7\xcc\x8a\xc2\x09\xb5\xf8\x2a\x2e\x27\xec\xec\xf0\xdd\x37\xbb\xe9\xf2\x3a\x2d\x5f\xa7\xe5\xeb\xb4\xdc\xb7\xda\x7e\x35\x1c\x5e\x35\xf5\xb7\xbe\xdc\x4e\xa8\xc4\x3b\xa3\x65\xdd\x23\x50\x39\xb8\x80\x45\xa3\x41\xb9\x81\x3f\xb1\x90\x99\x20\x84\x29\xcb\x61\xa1\xe7\x20\x87\xca\x81\xd8\x61\x97\x15\x30\x86\x62\xb2\x82\x11\x79\x4a\x40\xd9\xf5\x08\xb2\xcf\x1d\x84\x68\x23\x6b\xdd\x1c\x65\x83\xec\x66\xb6\xaf\x72\x0d\xf2\x22\x2c\x1d\x25\xff\x8b\x5b\xbd\x8b\x55\xfc\x3e\x1a\x9e\xfb\x1d\x12\xa5\x5b\x48\x06\x4b\xc4\x09\x2d\xcb\x51\x29\x88\x2f\x9c\x20\xb7\x67\x79\x46\x1d\xca\xac\xa1\x25\x56\xf4\x83\x18\x4e\x07\x48\x91\x65\x4d\x24\x27\x6f\x24\xfb\x00\xe2\xeb\x87\x42\x59\x80\x67\xb5\xcc\x7b\x6d\x21\xa6\x7c\xca\x88\x11\xa7\x04\x36\xf8\x2a\x03\x8a\x9b\x7c\x7e\x1a\x65\xe4\x58\x8a\xf8\xa6\x5c\x16\xba\xad\xfb\x39\xf9\xe5\x6b\x41\x63\x91\x6d\x2d\x50\xc0\xca\xcb\x1d\xcf\x05\x58\x86\x65\x48\xf4\xe7\x11\x6c\xc2\x1e\xcb\xc0\x52\x0d\x13\x3d\xcc\xed\x66\x44\x62\x39\xb2\xe1\x28\x2d\xed\x58\x92\x0c\xff\xf6\xb7\x13\xb3\x11\x50\xb2\x5e\x21\x47\x48\xe4\x04\x89\x2a\xf7\x18\x97\x95\x40\x1b\x43\x43\xc5\x65\xa9\xec\x4a\x24\x62\xa1\x38\x15\xd5\xc6\xe8\x20\x87\xad\x19\x32\xd2\xd9\xf2\x90\x98\x79\x8f\x03\x4a\x83\x94\x34\xa8\x03\x51\x4e\xf2\xa0\x88\xfc\xb2\x0b\x11\xb3\x2c\xa9\x7a\x57\xde\x97\xb6\x21\x7e\x76\xd6\xfa\xed\x53\xe5\xba\xdf\x19\x0d\xc7\xc3\xcb\xc9\xb7\x3e\x5b\xac\xb2\xbd\x04\x3e\xe2\x54\x9e\xa7\xf6\xdc\x2e\x0d\x8d\xf5\x76\xe5\x2a\x35\xb9\xd5\x3a\x2b\x7b\x4a\x6d\x1e\x9e\x4b\x3e\xe2\x72\xc6\x84\x7f\x3b\x31\x61\xf9\x0e\x36\x55\xb2\x96\xfa\xce\x09\x4f\xed\xb4\x64\x5d\xa2\x40\xfe\xe7\xf0\x8b\xd9\x54\x63\xf9\x39\x25\xce\xda\xd6\xb9\x21\xff\x2f\xbf\xfc\xed\x67\x93\xb6\x8f\xcc\xf0\xf7\x49\xf5\xcd\x0f\x0a\x18\x99\x3d\x9e\x52\x55\xde\xcb\xd3\x28\x34\x46\x74\xad\xa8\x96\xc3\x8d\x60\xbc\xb1\xf1\xee\x3d\x96\xbb\x78\x23\xf8\x0e\x6b\x97\xc2\x2b\x02\x02\x3a\x27\xbf\x64\x53\xd3\x6e\x4c\x7b\x2a\x96\x20\x5e\x1c\x10\x08\x47\xa1\x24\x46\x27\x3d\x04\x2b\x4b\x14\xb2\xed\xc3\xfa\x9e\x1c\xd4\x23\x71\x03\x30\x85\xec\x83\x64\x94\x75\x85\xc4\xc5\xca\xd1\x20\x7e\xe9\x09\xff\xe9\xc8\xf1\x55\x91\x6b\x12\xc8\x86\x4f\x02\xca\x53\xae\xdd\xca\x02\xb6\x9c\x2c\x33\x0e\x8c\x77\xed\xd2\x46\xc2\x0a\xc1\x1b\x11\x41\xca\xa2\xba\x11\x62\x2b\xbc\x17\xc8\xd1\xec\x20\x34\x4a\x61\x48\x8d\xd8\xbd\x20\x18\xc4\x0a\xc8\x33\xe9\x76\x85\x76\x03\x89\x8e\xce\xc0\xa1\xf2\x90\x60\x0b\x4e\x4c\x11\xb2\xc9\xe7\x11\xa2\x15\x06\x81\xde\xcb\xba\x3b\x59\xae\x20\xc9\x4b\x8f\x65\x23\x77\x77\xed\x21\xf8\x72\x92\x29\x75\xc0\xbb\x72\x31\xb6\x71\x99\x61\x29\xf7\x28\x27\xb0\xd9\x4d\xe5\xf0\xdb\xbc\xac\xe2\xde\x38\x14\x8b\x04\xf2\x41\x0a\x0b\x0b\x43\x41\x72\xb2\x97\x7f\xc9\x07\x39\x3a\x53\x64\x85\x29\xc8\x19\x50\x59\xb3\x45\x2e\x48\xfc\x35\x78\xc8\xc9\xb7\x6f\x65\x13\x29\x7a\x40\x79\xca\x3d\x8b\x51\x56\xbd\xad\x2c\xf7\x3a\x0f\x94\x34\xc4\x10\xcb\xaf\x2c\xe2\xc8\xa9\x24\x39\x1c\x4b\xd9\x6a\x2e\x88\x34\x93\xba\x55\xc4\x62\x96\x97\x99\x6d\x58\xa4\xbb\xf7\x72\x59\x67\x8b\x43\x72\x74\xbe\x5d\x9c\xf3\xf2\x2b\x06\x36\x06\x15\x43\x54\xc6\x93\x9c\x07\x16\x4a\x2d\xb8\x10\x99\xb5\x34\x08\xc1\x94\x7d\x80\x4e\x39\x53\x28\x87\xf1\xee\x97\xee\xe5\x30\x5e\x25\xf7\xe3\x3b\x4a\x65\x5c\xe5\xb0\xb7\xc1\x5e\x41\x13\xe6\xd8\xb2\x2d\xc4\x58\x17\x33\xc8\xe9\x73\x6a\xc4\x47\x1c\xc3\x46\x0e\x8f\x53\xb6\x65\xb3\xce\xb6\x67\x6b\x59\x1e\xb3\xb1\xe1\xb2\x00\xc5\xb6\x87\xbc\x2c\x52\x20\x75\x4a\xa0\x1c\x7a\x43\xe1\x94\x62\x4b\xe5\x48\xac\x12\x6c\xc0\x0a\xbc\x61\xc9\x70\xe6\x82\x5a\x8e\x39\x96\xe5\xb4\x38\x3b\x95\x6e\x12\xf7\x45\xf6\x18\xe5\x48\xb3\xe0\x71\xfb\x60\x21\x23\x89\x2c\x29\x67\x8d\x58\x10\x36\xd9\x55\x62\x6b\x43\xe5\xde\x69\xc3\x02\x3b\x43\x28\x4c\x91\x85\x57\x99\x46\xdc\x6d\x99\x5f\xb6\x78\xb5\x20\xf1\xe9\x61\x50\x36\xcc\x7c\x39\xbd\xde\x9e\xe8\x93\x46\x93\x65\xfc\xc5\x5c\x16\x57\x79\xee\x30\xce\x61\x2e\xb1\x98\x19\xe5\xf0\xee\x9a\x65\x6d\x31\x5a\xf2\x36\xf2\xdc\x92\xcb\xd5\x05\x89\xd1\x94\x69\xb1\x18\x58\xd8\xb8\xa1\xbb\x6b\x0c\x90\x18\x06\xcb\x79\x8c\x69\x71\x65\x29\x93\x69\x33\x2d\x89\x90\xf1\xbf\x4e\x70\x89\x00\xf7\xea\xaa\x99\xf4\xc4\x4e\xba\xee\xea\x51\x5d\x76\xe7\xc5\x87\x4d\x71\x76\xf3\x0e\xee\xea\xd1\x70\x8b\x9b\x1b\x31\xc2\x56\x93\xae\xf8\xaf\x29\x09\xc5\xcb\xcd\x7a\xf8\x57\xf6\x02\xc8\x4c\xd1\xaf\x5f\x8a\xec\xf6\x5d\x8a\xbc\x76\x13\xf2\xdd\xb5\x26\x85\xe6\x34\x4e\x35\xf5\xd0\x2c\x5f\xa5\x92\xea\x1c\x2a\xfb\xb8\xdb\x54\x16\xbe\x54\x39\x28\xa0\xba\xf7\xc6\x10\x8f\xbf\x95\xa5\x2d\xea\xb0\x4b\x59\xf6\x34\xe2\x01\xd7\xb9\x6c\xab\x76\xed\x36\x97\x83\xaa\xdc\x7b\x07\xcc\x6a\x75\x5f\x60\x51\xf1\x45\x20\xdc\x33\xae\xd6\xbc\x88\xfe\x7e\x5e\x3f\x11\xa3\x0e\x38\xe2\xf2\xee\xa0\x23\x29\x8f\x28\x69\xdb\x79\x94\x87\x14\xf5\x12\x17\xc4\x83\x42\xb3\x3a\xfa\xe3\xd9\xa8\xcf\x07\x7b\x61\x90\x91\xd4\xc3\x32\xe8\xf0\xb0\x0c\xdf\xc5\x82\xe6\x0b\x02\xeb\xca\xae\x91\x60\xf4\x3f\x2f\x87\xa3\x9f\x58\x20\xd0\x83\x6a\xaa\x27\xc3\xab\xab\xa6\xfe\xed\x85\xfb\x4d\x4d\x2b\x04\x6c\x3c\x87\xcd\x1c\x7e\x6a\x06\xbf\xbb\x6b\xa3\xe8\x41\xc3\x61\x54\xf8\x97\x43\xf2\x17\x03\xd4\xcf\x30\x18\x5e\x57\xdd\xbd\x16\xad\x4b\xa9\xd6\x6d\x5a\x4b\xf4\x7e\xab\xd6\xa5\x74\x5f\xde\xae\x15\x83\xc2\x74\xa8\xeb\xb8\x85\xf1\x1d\x0c\x07\x2c\xe0\x6f\x72\x1f\xb7\x70\x6d\x4e\xce\x21\xce\xfc\xa5\x83\x0f\x59\x05\x48\x11\xa7\x04\x39\xf8\x86\xb5\xb1\x20\xdb\x18\x99\x58\x0f\x66\x75\x31\x65\x37\x8d\x20\x6e\x24\x9c\xa8\xde\x11\x62\xd2\x0e\x5c\x3c\x77\xe0\x52\x4f\x03\x3a\x7f\xb7\x64\x7a\xd0\x9a\x24\xfc\xed\xe7\x84\x6f\xda\x65\x51\xf1\x33\x71\x06\xe4\xc4\x27\x24\x36\x9e\xf5\x57\xd6\x96\xa2\xec\x6c\x04\x51\xcd\x15\x41\x71\xb9\x6d\xe5\x90\x4a\x4e\x0d\x81\x0b\x9e\x5b\x92\xa4\x89\x29\x36\x0e\x2c\x3a\x59\xb3\x14\x9f\x50\x88\x7b\xab\x36\xa4\x32\x78\xc7\xf9\xa3\xac\x18\x5b\x17\xcb\xd2\xc4\x79\x02\xe3\x1b\x39\x76\xe3\x5d\x3a\x03\x12\x5f\x4f\x2e\xcd\x9a\x39\x4d\x90\x29\x34\x11\x12\x21\x07\x84\x38\xd5\x0c\x8a\xbb\x55\xef\x12\x8f\xd7\x0a\x8a\xe0\xf6\xb8\x9b\x1a\xb7\xe4\xdd\x2b\xa3\xaf\xe4\x7b\x91\xf4\x3f\x41\xf2\x96\x71\x31\xc5\x90\xfd\x09\x19\x30\xd9\x39\x15\xc1\x9b\xec\x48\x11\xaa\x00\x36\x18\x17\xf8\xd5\x9f\x10\x96\x83\x49\x58\xac\x3c\x18\xef\x49\x61\x52\x24\x97\xd3\x38\x8b\xfc\xe9\xef\xd3\x78\xe5\x4f\xd0\xab\x00\xe4\x8d\xcd\x0a\x3d\xc4\xe0\x55\x04\x4b\x84\x8a\x95\x7f\x4f\x5c\x59\x8c\x14\xe4\x6e\x7f\x31\x23\x34\x60\x28\xd0\x09\x7a\xc8\x96\x27\xb1\x91\xa5\x09\xf4\x60\xc5\xb4\xd1\x80\x23\x6f\x15\x3a\x6e\xb3\xe5\xef\x94\xf0\x2c\x41\x8e\x5e\x8e\x3e\x04\x44\x7b\x92\x20\x26\xe7\xb8\x2a\xb4\xc9\x44\xee\x10\x79\xb4\x2a\xf0\xbf\x13\xd7\xb6\x2f\x28\xcb\x8d\x91\x77\xab\xf2\x89\x94\x66\x4d\x20\x65\x21\x59\x97\x64\x7b\xc7\x61\xf4\xca\xf3\x5b\xa2\x6c\xcf\x31\x00\x46\x13\x4f\xe6\x29\x02\xf8\x44\x9c\x1f\x23\x84\x6c\x13\xbf\x71\x51\x64\x0a\x80\x66\x95\x11\xa9\xa0\x88\x4e\x22\x07\x27\xf9\xce\xf3\x44\x99\xf3\xe4\x79\x11\x09\x30\x78\xcc\xf3\xc2\xa3\x6a\xab\x3d\x6f\x9b\xc1\xa5\x38\x17\x32\x37\x2b\x18\x74\x9c\x23\x25\x72\xfc\x8d\x3e\xcb\x11\x10\xe7\x49\xc0\xe5\xe5\xa0\x91\x9c\x10\x13\xf3\xfb\x90\x29\x9d\xf0\xb7\xf1\xb2\x4e\x1e\xb9\x46\x74\xfc\x9a\x32\x43\xd4\x29\xb4\x27\x28\xb6\x4c\xd2\x38\x06\x3d\x8f\x2d\x0f\x06\xb7\xe4\x04\x53\x1b\x11\x14\x99\x79\x32\x7e\xb5\x27\xfc\x44\xc8\x18\xe5\xa2\x39\x47\x51\xda\x90\x43\x8e\x0a\x13\xf8\x90\x64\x84\x9d\xa3\xb3\x15\xe4\xfb\xf5\x3d\x26\x25\x65\x7b\x4f\x3c\x52\x98\xc5\x61\x26\x51\x92\xd7\x13\x64\x58\x3a\x27\xce\x77\xda\x44\x8e\x91\xcf\x9d\x60\x94\x70\xfe\x8c\xf7\x69\x22\xe7\x89\xf7\x65\xb4\x89\x98\x2d\xa8\xf0\xeb\xfb\xa8\xf2\x49\x64\x92\x26\xb1\x61\x96\xca\x70\x02\x73\xe2\x67\xa5\x18\xe5\xe7\x89\xbc\xca\x27\x0c\xda\x12\x35\x4b\x92\x54\x50\xe9\x64\x56\x40\x52\x71\x9e\x22\xaa\xfc\xeb\xf7\x21\xd2\xbc\xd2\x89\x57\x3a\xf1\x4a\x27\xbe\x0a\x9d\x78\x8a\x54\x34\x1c\x4d\x1e\x2d\x15\x6d\xce\xbb\x5f\x2a\x5a\xce\xf7\x12\xa5\xa2\x04\x96\x69\x93\x31\xc6\xe0\x89\x7c\x10\x98\x94\xe4\xa6\x30\xfe\x15\x93\x00\x6f\x0c\x8a\x4f\xf8\xf2\x7a\x8a\x8e\xe7\x4a\x46\x5c\x88\xf5\x10\xee\xf3\x96\xaf\xb6\xd8\xf3\xd8\x16\x5f\x42\x23\x67\x64\xac\x6a\x4b\xe0\x79\x23\x25\xb8\xd9\xeb\x29\x12\xf8\x64\xdd\x49\xf9\x0d\x1c\x1e\x0c\x4f\x9a\xfb\xef\x88\x2c\x91\xcb\xb7\x14\x91\x88\xe4\xe4\xa3\xb7\xe5\x7a\x88\x78\x46\xdc\x34\x79\x3d\x21\x84\x68\x4a\x30\x93\x18\x9e\x7b\x19\xe5\x8d\xd3\x9c\x94\x17\x4e\x31\x4b\xc8\x54\x5e\x72\xd3\x29\x46\x26\x37\x81\xe7\x93\xcf\xae\xdc\x1a\x9b\xc4\x13\x7e\x50\xe5\xc8\xa8\x9b\x7f\xa0\x3f\x47\x07\xd6\x9f\x62\x3e\xc1\xdc\x02\xc8\x09\x50\x8d\xb8\x4f\xf4\x02\x9f\xd9\x57\x38\x27\x73\x52\xde\xc9\xb4\xa9\xdb\x5c\x54\xdc\x2d\xe6\xf2\x72\x8a\x5e\x88\x93\xe4\x2d\x31\xb6\x2d\xb5\xe4\x6a\xbf\xce\x99\x0e\xc9\xfb\xac\xa6\x59\xae\xd2\x0a\x66\x19\xa5\x7d\x01\xec\xb9\x34\x58\x98\xd4\x7d\x47\xca\x15\xb8\xf3\x4e\x06\xb0\xc8\xc3\x49\x3c\x24\x06\xe9\x84\xc9\x58\x89\x47\x01\x5a\x16\xeb\x36\xfe\x8c\x72\xd8\x3c\xb9\x9c\xca\x77\x90\xc4\xa9\xa5\xa7\x06\x7d\xb1\x1f\x0a\x62\xd3\x67\x4c\x96\xe4\x91\x98\xb9\xd1\x69\x81\x31\x9e\x30\x8c\x6d\x5b\x02\x37\x60\x11\xc8\xab\x30\xce\x27\x02\x2b\x9a\x77\x6e\x09\xc4\xb8\x00\x62\x5c\x02\xf1\x2c\x57\x01\xe4\x0c\xc2\xfe\xc4\xb5\xf8\x5e\xc2\x97\xe0\xbb\x00\xde\x25\xe8\xce\xb2\x94\x06\xcc\x80\x7b\x0f\xdb\x45\xd0\x0a\x64\x0d\xcd\xbb\x26\xa0\x65\xfe\x4f\xa7\x04\xc1\x9f\x10\x50\x46\x53\x4c\xc7\xe6\xe8\x38\x43\xd0\x39\xca\x4a\x22\x6c\x31\x59\x7a\xc8\xa8\x8e\x62\x19\xbf\xf0\x91\x84\x5f\xb6\x93\xc9\x9c\xcc\xa6\xf2\x6c\xaa\xc9\x3c\x9f\xcd\xc3\xf6\xa3\x4c\xd5\x76\xca\xfe\xfa\x1e\xe5\x96\x62\x4e\x7d\x92\x21\x99\x10\x67\x9f\x2a\x97\x89\xce\x61\xed\xc7\xea\x3c\xcf\x65\x9a\x63\xb6\x96\x53\x48\xee\x78\x4f\x45\xe2\x12\x15\xe1\x54\xf7\xb1\xae\x34\xa6\x64\x9d\x7d\x2d\x35\xed\xa4\x9d\x50\x6d\x03\x66\x25\xd0\x3d\x15\xa1\x79\xc7\x7f\x7d\xef\x0b\x29\x3a\x71\xa5\x15\x85\x02\xb9\x16\x51\x24\xc8\xdd\xe3\x89\x6b\xd1\x44\x0a\x6c\x73\x90\x29\x43\x2b\xbf\x82\x73\xa5\x3a\x09\xce\x2d\x92\x48\x50\xbe\x47\x92\xdc\x22\x89\x94\xd0\xe6\x28\x55\xe7\xf2\x7b\xca\x9c\xbd\xad\xf9\x04\x97\xda\x83\x4b\x4d\xc5\xb6\x03\x2d\x45\x59\x28\x09\x97\x2a\x69\xbf\x0a\xba\x2f\x35\x0b\x97\x5a\x8c\xb9\xed\x49\xa1\x28\x0b\x5d\xc4\xa5\xde\xcf\xbe\xce\x31\x2c\x72\xeb\xf0\x4b\x0c\x89\x5e\xa8\x60\xff\xca\xea\x5e\x59\xdd\x2b\xab\x7b\x65\x75\xaf\xac\xee\x95\xd5\x3d\x82\xd5\x3d\x45\x37\x1d\x0d\x27\xc3\xce\xb0\x79\xb4\x7e\xba\x3d\xff\x7e\x1d\x75\x3d\xef\x4b\xd4\x53\x99\x71\x91\xb0\xaf\x08\xb3\xa5\x0b\xf9\xa5\x42\x47\xca\xd9\xa1\x58\xd6\x94\xee\x53\x95\x5c\x6a\x16\x37\x4f\x23\x79\x4e\xee\x53\xd1\x7d\x1a\x29\xf0\xd7\xf7\x4c\xd1\xd1\xc8\x9d\xdb\x39\xc7\x24\xec\x80\x82\x2c\xe0\x24\xf2\x85\x6e\x07\x2b\xdf\x01\x51\x18\x34\x31\xa3\x60\x8c\x8c\x24\xfc\x5c\xdc\xc3\x25\x48\xb2\x4e\x44\x90\xe4\xc8\x8b\x2c\x63\x45\xe6\x63\x18\x82\x2c\x90\x59\x9b\x24\x7d\x4e\x51\x56\xbb\x2c\x59\xa1\xa5\xc9\x14\x7e\x6b\x85\x0c\x12\x04\x8a\xd2\x6d\xca\x29\x4a\x73\xbc\x0d\xf2\xed\x83\x50\x4f\xe2\xd6\xf3\xb7\xb0\x15\x03\x3e\x53\x6e\xe3\x2d\x33\x86\x14\xb8\xf9\x09\xd0\x5a\x59\xba\x23\x0c\x89\xdb\x6b\x1c\xb7\x83\x59\x81\x6f\xbb\x4b\x52\x7e\x34\xa5\xbb\x39\x3b\x59\x53\x8b\x3e\x85\xf2\x1d\x0a\x03\x5c\x00\xcf\xaf\xef\x73\xf1\xff\x96\x99\xd1\xc5\x93\x0c\xde\x27\x27\x8b\x52\xd9\xa4\xac\x32\x50\x12\x2b\xc7\x04\x88\x99\xc9\x89\xf1\x1e\xe5\x56\x7e\xeb\xdd\x89\xb8\x66\x4b\xf2\xe9\x38\x79\x02\x83\x39\x0b\x74\x5c\x8a\xa8\xc4\x27\x58\x2e\xc3\x9a\xd1\x9f\x44\x88\x16\x31\x71\x71\x26\x12\x93\xdc\x1c\x5d\xf9\xf6\x41\xdc\x28\x91\x37\xa5\xb5\x26\xa4\x7c\x22\xbe\x18\xca\xfd\xe9\x8e\xc5\x3d\x8b\x39\xca\x58\xf9\x60\x93\x5a\x6a\xfa\xaf\xef\x3d\x38\x2f\xcb\x7f\x01\x82\x89\xf1\xc4\x83\x2b\x5d\xe5\x6f\x83\x4a\xfc\xf4\x31\x2b\x0c\x0c\x62\x39\xaf\x41\xce\xf9\xb2\x30\xc9\xf4\xd7\x05\x39\x09\x66\xc1\x26\xa1\xae\x81\x64\xfb\xd0\x40\x70\x5e\x7c\x50\x60\x34\x51\x25\x2e\x86\xdc\x89\x07\x93\xc9\xc9\x12\x5a\x88\x36\x89\x7f\x29\x0c\xb2\x60\x66\xc9\x23\x53\x67\xef\xc4\x1f\x95\xcd\x31\xc6\x13\x07\xd6\x24\xc3\xc4\xd6\x25\xe3\x94\x13\x56\x68\x1c\xf1\x1b\x9d\x38\xae\x37\xa2\x0f\xca\x81\x77\x62\x90\xee\xc1\x1a\xcf\xcd\x5e\xea\x16\xf7\x33\x64\x2b\x37\x49\x9a\x18\x23\x9d\xf0\x77\x40\x27\xdf\xc9\x07\xc5\xdf\x19\x93\x7c\x67\x9b\x95\x87\x68\x88\x24\x7d\x32\x64\x4f\xf8\x9b\x3b\xca\xf1\xa6\xc4\xa3\x21\xe1\x62\xc1\x48\xfe\x88\x4e\x06\xc7\x78\x13\x83\xa4\x8f\x24\x9f\x39\x5a\x29\xce\x60\x49\x9e\x64\xe9\x70\xa9\x39\xbf\xbe\x4f\x90\x43\x12\x1f\x70\x3e\x3b\x8c\x27\x09\xb2\x45\xb9\xa9\x2c\x58\xe7\x18\x40\x29\x16\x16\x97\x5d\x64\xe6\x9e\x4c\x42\x86\x77\x8c\xce\xfb\x13\x96\xa4\xd1\xc9\x4d\x50\xce\x07\x8e\x77\x9e\xe4\xe8\x09\x19\x1f\x04\x47\x30\x8a\x4f\x10\xef\x32\xcb\x63\x29\x1b\x96\x5d\x0c\x05\x2c\x18\x67\x3d\xaa\xc0\xa5\xc8\x62\x39\xc6\x18\xb9\xb3\xce\x99\xb2\x62\x9d\x18\xc3\x22\x78\x97\x44\xb4\x20\xcc\x5e\x44\x37\x97\x13\x8f\x56\x4c\x36\x97\x6b\x3a\x53\xf4\x67\x09\x62\x4e\x8e\x81\x19\x92\x25\xe6\x9b\x98\x50\xae\xf0\x22\xcb\xa3\x9b\x21\x1a\x9f\xe4\x66\x92\xe0\xb3\x60\x8b\xb4\xce\x01\x99\x4c\xfe\x24\x43\xf4\x59\xb6\x94\xad\x09\x58\xf8\x71\x68\x5d\x27\x78\xcb\x33\x66\x09\x58\xbf\x8a\xbf\x33\xef\x18\x9d\x58\x94\x28\xf4\x4b\xb0\x0b\x23\x79\x59\x13\x4f\xc6\x78\xf1\xfb\x10\xa9\xac\x99\x7b\x59\x4d\x0e\x8e\xa2\xcc\x7f\x62\x79\xd0\x83\x33\xc6\x08\x3d\x09\x51\x6e\x1b\xf3\x58\x36\x20\x28\x39\xee\x5e\xb6\x9e\xc9\x05\x23\xb7\xe0\x4e\x8e\xc4\xc8\x2e\xb6\xfe\xa9\x38\x4e\xb3\x22\x0f\xdb\x48\xc4\xdf\x14\x5c\x3e\x11\x47\x42\x28\x6e\xd4\xa2\x8d\x65\x9d\xbd\x78\x73\x33\x29\x05\x99\x3c\xc1\x8a\xfa\x63\x02\xd3\x13\x94\x73\xfd\xe2\xd6\x2e\x1b\x27\x4b\xf6\x29\x1a\x9e\x7b\x4e\x74\x17\x20\x13\xc4\xfd\x1a\x8f\x9e\x94\xee\x7d\x96\x6f\x2c\xc4\x14\x8d\x77\x05\x16\xbe\x08\xa6\x0b\xb0\xf9\xf5\xbd\xb8\x64\x63\x72\x94\xc1\x19\x2f\x3b\x01\x3e\x17\x6a\xe8\x93\x13\x19\x01\x9d\x09\x85\x46\x78\xd1\x49\x02\x57\x5f\x98\x81\x2d\x3b\x07\x51\xa8\x29\x89\xfb\x02\x07\x36\x7a\x59\xdd\x77\x36\x14\x89\x23\xe7\xc2\xb4\x4c\x4e\xac\x1e\x12\x4b\xf3\xb1\x28\x75\x28\x1e\xbe\x8a\x72\x15\x92\x4c\x51\x42\xf1\xdf\x07\x31\x60\x64\xc5\xc5\xc8\x26\x41\x2a\xa6\xe2\x1e\x32\x19\x21\xa6\xe4\xb2\x28\xa4\x31\x51\x90\xda\xbc\xc9\x5c\xba\x77\x51\x78\x4f\xcc\xce\x95\x6d\xa2\x96\x1a\x7a\x27\xd5\x61\x46\xa1\xed\x44\xde\x73\x7a\x24\x5b\xe4\x2c\x01\x8f\x97\x29\x29\xdf\xc1\x17\x1d\x60\x01\x3a\xbf\xbe\x2f\x15\x49\x3b\xa3\x25\x7f\x22\x9b\x1a\x4e\x04\x39\xc7\x53\x5c\x76\x3d\x20\x46\x93\xe4\x95\x64\x03\xc4\x40\xb4\x56\x88\x6e\x34\xe2\xce\xc0\x5b\x4f\x52\x29\xcf\x04\x9e\x9e\x4c\x1e\x4e\x84\x64\x93\xb8\xdf\x23\xd1\xb8\xe4\x08\x67\x12\x77\x7c\x32\x14\x09\x12\x53\xa1\x04\x01\x9d\x4d\x9c\xde\x5b\x2b\x08\xec\xb2\x14\x47\xd1\x08\x02\x65\xef\x85\x23\x04\xf1\xd9\xea\x21\x25\x86\x7c\x02\x1f\xcb\x16\x15\xc6\x20\xf1\x8e\xab\xc7\x00\x4e\x6e\xa6\x49\x60\x63\x96\xbd\xa5\x88\x56\xd2\x3b\x23\xf2\x26\x94\x3d\x16\x47\x91\xca\x57\x20\xb5\x02\x08\x41\xa4\xc8\x43\xe2\x98\x56\xf1\x50\x04\xa0\x60\xa3\xf2\x90\x42\x94\x52\x43\x40\x9e\x45\x91\x89\x13\x7f\xe7\x42\x42\x03\x39\x14\x05\x35\xba\xcc\x44\x23\x64\x17\xca\xde\x60\x48\xb2\x1b\xe4\x93\x0c\x04\x3a\xe1\x76\x2e\x05\xc1\xd2\x94\x44\x72\x89\x91\xb2\xec\x4d\xb9\x2c\x37\x2f\x5a\xd9\x06\x63\x10\x14\xaf\x21\x36\xdb\x82\xd4\xc9\x0a\x09\xc9\x31\xcb\x30\x63\x0a\x28\xf4\x14\x53\xa9\x6d\xa1\xed\xbf\xbe\x97\xbb\xb4\x44\x87\x4a\xc1\xdb\x7c\xc2\xa2\x85\x15\xee\x9c\x53\x0e\x3c\xd9\x93\x8d\x51\xce\x00\x9a\x20\x04\xd9\x45\xe6\x58\x19\xc8\x24\xc3\x5c\x17\x03\x62\xd9\x7f\x93\x62\xd0\x9a\x32\x79\xac\x93\xbb\x5f\x43\x62\xbe\x25\x43\x13\x58\x08\x40\xe3\x0a\xc3\xca\x5e\x68\x8b\xb7\x58\x40\x6f\x5c\xb9\x7a\x32\x64\x9a\x0d\xdd\x89\x87\x1c\xa3\x29\x27\x27\xd1\x67\x15\x00\x9d\x2b\x3b\x69\xd1\x89\x91\xd2\x52\xeb\x59\x42\xc9\x5e\x28\xad\x33\x59\x34\xb7\x60\xcb\x72\x08\xc6\xc4\x04\x35\x58\x8c\xc5\x81\x28\x7a\x29\x06\x33\x0f\x2d\x8f\x41\x11\xb8\x4c\x41\xf1\xc8\x84\x09\xe5\x3c\x31\xb5\x40\x13\xf1\x2f\x12\x95\xce\x18\x14\x82\x65\x28\xc9\xdc\x4c\x32\x57\x85\x80\x49\xe7\x92\xf3\x2d\x81\x2b\xc5\xa7\x68\xb3\x50\x10\xe9\x8d\x03\xe4\x31\x65\x0a\x62\x30\xb5\xa4\x4a\x9a\x95\xc9\x3a\xd9\x76\x43\x4f\x6d\xf9\x0c\x7b\x9f\xf9\x97\x49\x9c\x4d\x12\x1f\x63\xcc\x45\x1e\x94\xb1\xf1\x64\x3d\x8a\xfc\x67\x51\xa4\x86\xec\xad\xd0\x73\x9b\x91\xf8\xdb\x07\x99\x8e\x0b\xc0\xf9\xf5\xbd\xb8\x3b\x26\x81\xbd\x65\x01\x4a\xb6\xb2\xbd\x20\x2c\xf9\x76\xd7\x5a\x9c\x9d\x30\xd4\xcb\x2a\x18\xda\xb2\x39\x6b\x7c\x70\x42\x82\x12\x89\xce\x4a\xb6\x40\x29\x07\x5f\xd6\x43\xca\x12\x9a\x23\x59\xa0\x70\x85\x1d\x04\x30\xc9\x73\x6b\x85\xb3\xf3\x74\xe2\x5f\xa6\x4f\x81\x8a\x94\x98\x22\x7f\x9b\x60\x79\x2c\x52\xbb\x51\x8b\x10\x5a\xba\x19\x65\x6b\xd8\x42\x4c\xc1\x15\x21\xb8\x10\x2e\xe7\xac\x67\x39\x1f\xad\x2d\x83\x27\xc4\x21\x82\x11\x61\x3d\xb0\xa8\x23\xad\x5e\xec\xed\x77\xb3\xe2\xf9\xaa\x34\xbd\x2a\x4d\xaf\x4a\xd3\xab\xd2\xf4\xaa\x34\xbd\x2a\x4d\xaf\x4a\xd3\xab\xd2\xf4\xaa\x34\xbd\x2a\x4d\xaf\x4a\xd3\xab\xd2\xf4\xa7\x2b\x4d\x07\xef\x9d\xa9\x6e\x03\x55\xb7\x3b\xaa\xc7\xe3\xc3\x36\xcb\x76\x67\x58\xd9\x1d\xdb\x9c\xf8\x25\x6e\x87\xcd\xbc\xe5\xcd\x9c\xe5\xb9\xa2\xb5\x8d\x1d\xbf\xa1\x99\xff\xd7\x6d\x80\x46\xf3\x0f\x51\xdc\x66\xce\xc9\xae\xb5\x60\x48\xb6\x1d\xb9\xeb\x45\x83\xcb\x3a\x6a\x0b\xc9\xeb\xa8\x39\x5c\x9c\xcf\x13\x98\x24\x0e\xf1\x80\x50\x3c\x84\x9c\x31\x16\x4f\x71\xf9\x64\xf8\x94\xa5\xa4\xbb\xeb\x00\x59\x13\x78\xd7\x29\xfe\x34\x12\xea\xf6\xde\x21\x04\x71\x05\x97\x7b\x1a\xa7\x5a\xdc\xc3\xc8\x65\x03\x5e\x4b\x8a\xd3\x34\xd5\xd4\xa3\x0e\x78\x5f\x7c\xe7\xb2\xa4\xa2\xf1\x3c\xf6\x68\xe5\x64\xe1\x54\x83\xc3\x0e\x81\xf8\x29\xc1\xac\xe4\x82\xe7\xa0\x58\x1a\x16\x2f\x32\xd2\x5a\x90\x0b\x92\xa3\x26\x60\xe9\xdd\xe6\xef\xe6\x9c\xe5\xeb\x78\x3f\x71\xbc\x3f\x43\xb7\x3f\xee\x0c\xa7\xf5\xe8\x93\xee\xf4\xaa\xfe\x40\xc1\xa8\x1e\x0f\x9b\x69\x3d\xd2\x9d\x6a\xd4\x65\xea\x30\xaa\xbb\xfd\x51\xdd\x99\xa8\xee\xe4\x49\xa7\x33\xdb\x3b\xa6\x19\x37\x7a\x75\xff\xaa\x37\x29\xef\x4f\xf6\xd5\x20\xa2\x60\xb2\xf6\x84\x20\x15\xfe\x88\xac\x0e\x45\x61\x4a\xc5\x58\xca\x05\x96\x03\x93\x3d\x77\x67\xad\xb5\x57\x6c\x74\x62\xf1\x86\x25\xa6\x18\xa6\xda\x41\x72\x2c\x68\x88\x74\x24\xde\xed\x59\xff\x0b\xa2\x9c\x17\x53\x1c\xa9\xe3\x6e\x27\x45\x97\xf3\xe1\x93\xe1\xb0\xb9\xa8\x46\xb3\xe3\xe1\x5f\xd9\x51\x8c\xdc\x49\xe6\x7a\x1a\x62\x6e\xb4\xf8\x6a\xa2\xf8\x73\x90\x3b\x45\x42\x7b\xb3\x48\x7b\x58\x36\x03\x6b\x45\xe5\xcf\x28\x8e\xe0\x10\x0c\x9d\xf6\xda\xa5\xe2\x87\x53\x94\x21\xb2\x1a\xc1\xc7\x06\x28\x02\xa5\x29\x97\x2d\xea\x71\x3e\x23\x23\x2e\xff\x73\xa3\xf9\x53\xfb\x72\x20\xff\xa4\x5c\x43\xe5\xca\xf1\x98\x9c\xcb\x51\x89\x7f\x48\xa8\xbc\x8a\xf1\x94\x9a\xa5\x92\x7a\xcb\x55\xf0\xed\xc7\x92\xb3\x43\xf4\xc1\x5e\x5e\x2e\x21\xf1\xe5\xa8\xae\x27\xf5\xc7\x89\xbe\xec\x37\x93\x7a\x24\x6e\x7a\xbe\x3d\x5f\x6b\xdb\x07\x43\xc6\xe2\x05\x0e\xc5\x2a\x31\x59\xbe\x4f\x57\xcd\xdc\x80\x7c\x4b\x03\xf1\x10\x0e\x63\x8e\xd0\x80\x49\x41\x74\xa6\xb3\xb0\xf2\xc5\x0a\x9d\x0f\x96\x4c\x50\x67\x66\xe5\x6b\x31\xe5\xd2\xd7\xaf\xea\xbd\x3d\x92\x4b\x17\x39\x31\xaa\x33\x7b\x24\x46\x9a\xf7\x69\x97\xbf\x96\x53\xde\x7f\xfd\xaa\xde\x8b\xa8\x6c\xd0\xc6\x78\x64\xd4\xd9\xc2\x17\x42\x48\x88\x14\x1c\x4a\x11\x4b\x5f\xcb\x29\x8d\x94\x63\x21\x85\x4c\x99\xf2\x91\x2c\x31\x9a\xcc\x74\xef\x6c\x21\x98\x75\x14\x9b\x5c\x26\x52\x67\x72\xdf\x9d\x14\x77\x94\x58\x73\x31\x44\x3e\xa9\x33\x4c\x4b\x7d\x2e\x5a\x45\xa4\x1c\x8f\xe4\x5e\xc2\x24\x3a\xc6\x59\x02\xe3\xa3\xac\x1e\x2e\xa5\xce\x40\x2e\x60\xf6\x14\x96\xcb\x24\xc0\x94\x30\x04\x5f\x5a\x90\xad\xa5\xe5\xe0\x2d\xed\x5d\x08\xe6\xfe\xcd\x6b\x3a\x72\x40\xac\x4c\x05\xc3\xe9\xef\x83\x59\x6f\xb4\xd9\x91\x73\x0c\xa2\xe5\xaf\x2d\x59\x16\x82\x9f\xe5\xe8\xd6\x92\xdb\xa8\xd6\x47\xc2\x75\x35\xa8\xae\xea\xeb\x7a\x30\x79\x06\xd7\x59\xeb\x85\x3e\xdc\x83\xd6\xee\x76\x1d\x6a\xbc\xb7\xbf\x25\xbb\x9d\x6a\x1d\xd2\x8a\xdd\x26\x80\x3b\x5a\x30\xe9\xaa\x0a\xfa\xe3\xa5\xa8\x17\xeb\xc5\x08\x65\xa3\x83\xe2\x19\x26\xc0\xa4\x08\x1b\x8d\x10\x9c\x8e\x60\x2c\x0b\x42\x3c\xef\x1a\x1d\x41\xee\xa4\xc1\x33\xb1\x3d\x16\x47\xba\x09\x82\x55\x6d\xbc\x07\x59\x1d\x8e\xf6\xcc\x43\x92\xa3\xbe\xb3\x62\xbf\x1b\x35\xe2\xeb\x00\xe9\x10\x67\x85\xe5\xc6\x09\x41\x5c\x99\xe1\xd5\x8f\x47\x30\x18\x4e\xfa\x9d\x7a\x3b\x0e\x3f\x87\x90\x8e\xe6\x5e\x48\xcf\x2b\x32\x3a\x1a\x95\x0f\x19\x8b\x92\xe4\xf8\x63\xd3\x1f\xfc\xbe\x29\x21\xe6\x9c\xff\x43\x62\xdf\xbc\xfb\xcf\x6e\x7d\x39\x6e\x07\xaf\xdf\xfd\xe9\x4d\x55\xc6\xa6\x18\x83\x87\xb3\x08\x5e\xee\x97\x8c\xbe\xd1\xe2\xcb\x5e\x14\x20\x02\x8a\x5e\x6e\x81\xe5\x6f\xb9\x82\xcf\xbb\x33\xaf\x58\x50\x97\x93\xd9\xca\x82\xcf\x01\x92\x5c\xc8\x9a\x7c\x23\x19\x94\x64\xe0\x52\x14\x97\x52\x9c\x90\x94\xea\x6f\xc7\xf5\xfd\x60\xe5\xbf\x13\x7a\xee\x28\xb7\xf0\xb8\x37\xaa\x2f\x25\xb8\x7a\xb3\x09\xbb\x1e\xb9\xac\x23\xc4\xea\xf0\x45\x9d\x6d\xc9\x37\x2c\xe9\xac\x26\x7d\x89\xe4\x2b\x88\xdc\x89\x67\x56\xa1\x6f\xac\x78\xe6\x9e\x6a\x7b\x8a\x6e\xaa\xe9\x94\x23\xa7\xda\xde\xbd\x27\x54\xb9\x61\x05\x3e\x6b\x37\xb5\xa7\x68\xa6\xd4\x63\xf1\x75\x6a\xcf\x38\xea\xfb\x20\x52\x5f\x18\x14\x9f\x61\x52\x5d\x69\x46\xdc\x45\xec\x9a\x74\x39\xf8\xc5\x2f\x0b\xa2\x5c\x2b\x67\x01\xb3\x6f\xd0\x80\x38\x85\x90\x1f\x9d\xc0\x58\x54\xfc\x3c\xb3\x20\x3b\xf1\x28\x37\x34\xcb\xb5\x0a\xcc\x00\xc4\x4d\x93\x31\xe5\xaa\xa9\x7c\xf7\x1e\x21\xc9\x29\xa4\xe0\x2a\x66\x03\xc5\x77\xaf\x0f\x4e\xcb\x25\x94\x92\x2f\x49\x3e\xfb\xf3\x2c\xde\x81\x5c\xe5\x40\xce\x37\x12\x51\x8a\x9a\x67\xe7\x8c\x1e\x7c\xf0\x67\x44\x50\x96\xff\x8d\xbd\x2f\xdd\x28\x82\x44\xa9\x91\xa6\x4a\x4b\xf1\xbe\x66\x62\x12\x67\xce\xee\x1b\x75\xf7\x3e\xb1\x8a\x26\xee\x74\x15\x16\xe5\xd1\x18\x2d\x0e\xb8\xdb\x6f\x63\x8c\xb2\xdf\xc7\x9c\x78\x1d\xd8\x07\x0c\xec\x67\x98\xd4\xa3\x51\x75\x39\x1c\x5d\xef\xf5\xf7\xb6\x96\x72\xdd\xe7\xdb\x7d\x92\xfd\x7e\xdf\xd6\xd2\x7e\x83\xbe\xdf\x66\x88\xba\x01\xff\x56\xbd\xa2\xf9\x13\xf7\xf7\xbf\xfb\x56\x3e\x01\x8f\x8c\x80\xbe\x71\x90\xe4\xb2\xb7\x44\x38\xf5\x10\x9c\x3b\xf3\xe0\x0d\x0b\x89\x72\x9d\xc3\x9a\x6f\x35\x67\x9c\xf9\x1b\xb5\x88\x6c\x20\x5b\xb9\x81\x22\xb6\x99\xa5\xb8\xc4\x78\x40\xf6\x9c\xcb\xdf\x50\xc2\x62\x3b\xe4\xa6\x39\x23\x79\x49\xf2\x46\x55\xf2\xf2\xf3\xae\x34\x53\xf4\x70\xbb\xd0\x50\x3b\xd5\xa5\x32\x2d\x39\xa4\xb6\x67\x74\xc9\xc6\xc3\xd6\xa9\x07\x93\x7a\xf4\xd8\x23\x5e\x3b\x4b\xd8\x7b\xc8\x6b\x63\xee\x17\xc9\xc0\x48\xc5\x73\x7b\x4a\x53\x4c\x3d\x32\xe7\xf1\x14\xe9\xee\x7d\x50\x98\x4f\x9d\xec\x1a\x4c\xe9\xee\xda\x68\xb7\xfa\x75\x9e\x17\x3f\x7c\xf9\x90\xc3\xbc\x69\x29\xe1\xca\xd7\x62\xb6\x34\xcb\x86\x46\x21\xf5\x74\x9b\x54\x53\x4f\xd3\xc2\xeb\x79\xee\xa5\x29\x9a\xbb\x6b\x4d\x3a\x71\x54\x89\xb9\xbb\x36\xca\x2d\x7c\x7e\x1f\x4c\xe7\x7b\x1f\x8c\xc7\xce\x78\x18\x0d\x9b\xfa\x11\x8b\x41\x9b\xb2\xed\x59\xbd\x59\xcc\xf2\x42\x27\x34\x52\x87\x80\x50\x19\x25\x22\x46\x56\x4e\xbb\xb1\xbc\x69\x57\xfe\xa9\xf2\xa1\xca\x8b\xe2\x17\xd7\xba\x8a\x25\x90\x7b\xcd\x92\x42\xb0\x4e\x27\xe5\xa6\xd4\xc3\x30\xd5\xd4\x31\x1c\x27\x37\x6b\x58\xed\x74\xd2\x3b\x16\xeb\x5f\xd8\xa4\xfb\xfa\x00\xfb\x0c\x93\x4f\x37\xb5\x1e\xd5\xd3\xba\x6a\x54\x7f\x70\x73\x3b\x39\x6e\x97\x6e\xfe\x7d\x69\xbf\xe9\x65\x62\x64\xec\x10\xc8\xfd\xf0\x5e\x84\x5a\xe5\x95\xdc\xc5\x12\xbc\x2e\xf7\xc3\xc8\x35\xea\x41\x21\x24\xdb\x10\x64\x52\xfc\xe8\x20\x78\xd4\x1c\xa9\x08\x44\x82\xc8\xca\x82\xb3\xda\x81\xac\xcc\x44\x7e\xb3\x59\x07\x1d\xc1\x6b\xc4\xf2\x03\x4e\x31\xdc\xa3\x03\xf2\xac\xad\x26\x88\x0d\x01\x72\x19\x18\x4e\xc4\xec\x4a\x1c\xf2\x15\xf7\x07\x8a\x65\x67\x15\xef\xde\x8b\x01\x1a\xa7\xa4\xc4\x4d\x4c\xe0\x02\xb8\xf0\xb3\x18\xa0\xb6\x76\xa8\x6e\xb6\x87\xc6\xf8\xc2\xd5\x8b\x8d\x9a\x12\xeb\x5a\x55\x8c\x71\x59\x5c\xf6\x65\x0f\xcd\x6a\x90\x04\x49\x43\x72\x0d\x38\x02\x47\x67\x98\x39\x1b\xc9\x1a\x1e\x19\x7e\x67\x0d\x42\x59\x55\xaa\xbf\x7b\x1f\xc1\x5b\x95\x21\x35\x52\x10\x3f\x3a\x1a\x8c\x97\x1b\x12\x4d\x2a\x57\xc3\x24\x90\x0b\x70\x11\x42\x10\x9c\x53\x56\xfe\x81\xdc\xac\x0b\x72\xff\xa2\x15\xd0\x9a\xe5\x62\x42\x64\x44\x94\x6b\x88\xbc\xd5\x04\x54\x7e\x78\x5c\xb4\xe7\x6f\xa7\xbd\x2e\x77\xdc\x67\x60\xe5\xc5\xdb\x36\xe1\xdd\xb5\x03\x8b\x1a\x62\x6a\x58\x5e\x14\xa1\x54\xae\x55\xc6\x20\x17\x12\x04\xb9\xdf\xd0\x69\xcb\xff\x1a\x0d\x18\xc1\xe0\x77\x43\x1d\x5e\x91\xf7\x15\x79\x17\x28\xf5\xf1\x68\x38\x9c\xfc\xa1\xf5\x87\x5e\x7f\x52\x1f\xff\x70\x79\x79\xf9\x56\xeb\x6e\xdd\x19\x8e\xf4\xc5\x70\xd4\xad\x47\x1a\x8d\x39\xc6\x9b\x8f\x6a\x3c\x6c\xfa\xdd\x79\xe4\xa8\xea\xf6\x6f\xc7\x9a\x8c\x39\x76\x37\x1f\xdf\x6a\x7d\x35\xaa\x3e\x69\x6f\xcc\xf1\x0f\xe1\x32\x86\x44\xf3\x94\x75\x53\x4f\x2b\x96\x8e\x74\x30\xe6\x98\x05\xb2\x9b\x8f\xca\xdf\x7c\x54\x3a\xde\x7c\x54\xa3\xab\x8b\xea\x2f\xe6\x48\xb5\xff\xc1\xa4\x1f\x8f\x8c\x42\xae\x10\x0d\x27\xb2\x1b\x12\xe1\x8f\x6f\xb5\xbe\x18\x55\x83\xae\x36\xde\x1c\xff\x70\x99\xeb\x8b\x4b\x9a\x87\x71\x3d\x3f\xe4\x9a\xd0\xe7\x79\x58\xe2\x30\x5f\xa1\xb3\xee\xad\xd6\x93\x4f\x37\xc3\xf6\xda\x8f\xd2\xe6\x62\x28\x71\xdf\xe6\xd1\x68\x38\x2a\x31\x9d\x68\x9d\xf3\xb3\x3c\x9d\xe1\x60\x32\xaa\xc6\x13\x9d\x73\x3e\xfe\xc1\x18\x33\x8b\xb8\x6f\xcd\xb4\x1a\xfd\x65\xa1\x75\x3f\x2e\xa7\xe0\xb6\x2d\xa6\x08\x46\x52\xb4\x10\xdf\x95\x64\xfc\xa1\x9a\x74\x7a\x0f\x48\x93\x56\xd2\x24\x63\x7e\xfc\x0c\xf5\xf5\x45\x3d\xd2\x17\xd5\xb8\xdf\xd1\xdd\xd1\xf0\xa6\x3b\xfc\x30\xf8\xe3\x66\x38\xee\x33\x30\x8e\x47\x75\x53\x4d\xfa\xd3\x7a\x73\xba\xa3\x8d\xa1\x02\x94\x7a\x30\xd9\x1d\xab\xfe\x3a\xe7\xf6\x17\xc3\x8f\x7a\xdc\xbf\xeb\x0f\xae\x8e\x5b\x1c\xbb\x18\x7e\x7c\xbb\x31\x74\x73\x3b\xfe\x3f\xf6\xde\xb5\xc7\x71\x5d\x49\x10\xfc\x2b\xda\x3c\x5d\xe8\x72\x56\xca\x47\x96\x1f\xf9\xf0\x2d\xe3\x62\x7b\xb1\xd8\xfd\xd0\x0b\x2c\x76\x67\x30\x40\x21\xa7\xc1\xb4\xe8\xb4\xa6\xf4\x6a\x49\xce\x74\x96\x91\xe7\x67\xcc\xe7\xf9\x6d\xf3\x4b\x06\xe2\x43\xe2\x23\x48\x51\xb2\xb3\x6e\xdd\xbe\x07\xe7\x9e\x73\xd3\x54\x30\x18\x24\x83\xc1\x60\x30\x18\xc1\x71\x76\x74\xa3\xa7\x2a\x4f\x0e\x35\x5e\x93\x4b\x99\x07\x74\xa8\xf3\xf5\x0f\x3f\xce\x22\x7c\x7c\x98\x35\xd3\x24\xd8\x4b\xb6\x79\x92\x97\x84\xd5\xed\xd8\x7d\x3f\xc1\xbb\xfa\xd4\xfc\xe7\x21\xe8\x03\x2d\xe3\xe7\x7d\x7d\x22\xff\x35\x02\xe7\x2f\xb8\x4c\xd0\x5b\x47\xf5\x2e\x3e\xe2\x48\x20\xed\x81\x31\x7a\xf3\xcf\x74\x39\x61\x9d\x99\x05\xc1\xa7\x35\xbd\x61\xa2\x7f\x77\x1d\x5b\xd7\x79\xf1\x10\xac\x29\x89\xeb\x22\x8f\x9b\x33\xbc\xdf\x88\xfc\xba\x7a\x68\xf6\x91\x1e\xb2\x5f\xf3\x32\xdd\xe7\x09\xf6\xf3\x32\x7e\x8e\xb3\x53\x14\x57\x45\x82\xde\x1e\xe2\x2c\x89\xbb\xca\x45\xfe\xda\x3a\xaa\xb4\x38\xce\x9b\x4f\x09\x65\x5d\xc6\xcf\xcf\xb8\xd4\xb9\x70\xcd\x2a\x52\x61\x43\x04\x0d\x38\x8f\xeb\x86\x5a\x9f\x0f\xd1\xf4\x76\xb9\x6e\x86\x7a\x97\xe4\xaf\xfe\xf1\x61\x1f\x47\x11\xce\xd6\xc4\xe7\x89\x17\x3f\xe0\x24\x89\x8b\x2a\xae\xd6\x69\x9c\x89\x15\x71\xba\xf6\xd3\xfc\x87\x7f\xa8\x5a\xf2\xc8\x38\xae\xfd\xb4\xd2\x0b\x75\x28\x36\x22\xda\x07\x4a\x6b\x9c\xed\x71\x19\xd7\xb6\x41\x60\x37\xe8\x6c\x82\x1e\xae\xae\xd6\x7c\x4e\x48\x96\xa1\xf5\x36\xc1\xa8\x7c\x78\xca\xeb\xbd\x0d\x8b\x4f\x84\xdb\x0b\xbe\xb1\xb5\xb4\xcb\xb7\x87\x4a\x9e\xc4\x3d\x8a\xf2\x57\x4a\xb1\xf2\xdb\xc0\x48\x6d\x7b\x4f\x38\xc9\x5f\x2d\xad\x7d\x43\x65\x8c\x9a\x43\x2e\xca\x22\x1c\x7d\xad\xcb\x03\x7e\x34\x08\x8c\x16\x67\x9c\xf9\x45\x82\xb6\x78\x20\xda\x53\xcb\x6e\x75\x9d\xa7\x64\x11\x73\x0e\x0a\xd6\xf2\x37\xb2\x5e\xdb\x8f\x7d\x7d\x44\x4f\xf9\xcb\x58\x62\xea\xbc\x80\x29\x69\x3e\xc0\x64\x48\x4d\x90\x81\xd8\xe7\x49\x44\x98\x83\x30\xfe\xfd\xfd\x7d\xcb\x1c\x4f\x49\xbe\xfd\x0e\x70\x3d\xd9\xd6\xfd\xaa\x40\x5b\xfc\x90\xe5\xaf\x25\x2a\x0c\x0b\x01\x6c\xb4\xaa\x51\x7d\xa8\xfc\x78\x9b\x67\x80\xa8\x95\x85\x85\x4f\x49\xa0\x22\x2b\xe0\xf2\x8a\x4b\x28\x3a\xde\x0f\xc1\x3a\x45\xe5\x73\x9c\x51\x01\xcd\x46\xa0\xaa\xdf\x12\xfc\x40\xd5\x0b\x56\x44\xb1\x34\xfa\xc1\xa2\x38\x7a\xed\x58\xb1\x8e\x23\x84\xbc\xba\x44\x59\x55\xa0\xb2\xd9\x59\x84\xbf\xd7\x54\x02\x2f\x0b\x58\xd2\x90\xd5\xe3\x3f\xd5\x50\x77\xb6\x87\xb2\xca\xcb\x07\x26\x44\x19\xa2\xd0\x84\x89\x33\x45\x7a\x48\xea\xb8\x48\xb0\x4f\x4e\xb9\xa7\x5d\x9e\xd5\xfe\x0e\xa5\x71\xf2\xc6\x57\xfb\x9a\x94\x55\xf1\x0f\xdc\x96\xd0\xee\xd0\x75\x06\x8e\xa2\x28\xcf\x78\x25\xbe\x50\x51\x51\x60\x54\xa2\x8c\xcc\x68\x86\xd7\xf9\xa1\x6e\xc0\x1b\xf9\x8f\xa2\xa8\x11\xb7\xc1\x7a\x97\xe4\xa8\x7e\x68\xf8\x4d\x17\x98\xe2\x68\x11\x5e\x68\x36\x93\xac\x7e\x08\x07\xf5\xf4\x21\x8a\xab\x46\x20\x45\x27\x5d\x22\x63\x0c\x6f\x1d\x06\x4c\x0f\xbc\x67\xe4\xa7\xc4\xe9\x79\x81\xb6\x71\xfd\xf6\x30\x5b\x77\x3c\x3f\x0c\x75\x23\xcc\x2f\x8c\xb1\xfa\x08\x42\x2f\x4b\xe3\x3f\xd0\x80\xb6\xe8\xf2\x82\xa4\xdb\x3b\x75\xab\x80\xc9\x1a\x58\xa0\x2a\xf5\x98\x9c\xee\x4e\x3a\x5e\x73\xa0\x01\x14\x10\x46\xce\x7c\x3e\x07\x74\x11\xbc\x68\xfe\xe9\x16\x62\x23\xbe\xfa\x57\xf8\x6c\xba\x58\x8a\x4b\x96\xd1\xdd\x9c\x93\x02\xaf\xf9\xef\xdc\xb0\x34\xdb\x3e\x94\x38\xcd\x5f\x30\x11\x6c\xb2\x18\x73\xad\x46\x6d\xd6\xfb\x66\x5b\x98\xb4\x63\x3f\x5d\xc2\xbb\x02\x46\xe5\x76\xdf\x8e\xf3\xc2\x40\x1c\x05\x63\x72\x51\x1b\xdd\x46\x88\x2b\xa3\x1b\x88\xfa\xae\x2e\x34\x21\x99\xd8\x0d\xb4\x49\x4e\x8b\x54\x30\x8d\x07\xa6\x65\xa0\x1e\x04\xea\xc4\x7c\xb3\x27\xfa\xb8\xa1\xaf\x74\xc6\xe5\x6f\x9a\xfa\xaa\xb3\x9d\x23\x79\xad\x0a\xc0\x15\x80\x7e\xc5\x93\x13\xdf\x73\xc0\x21\xca\x8f\xa0\xcd\x18\xfa\xc7\x36\x7a\x46\xdb\x79\x7a\xd8\x18\x32\x89\x1e\x0a\xaa\xbd\x8e\x08\xb8\xd2\x29\x76\x55\xef\x8d\xa1\xf7\xe7\x6a\x79\x43\x69\xec\x16\x0c\x88\x8e\x8b\x44\x72\x4d\x45\xd5\x2c\xd2\x15\x2e\x18\x05\x8d\xe1\x23\x4e\x3d\x36\x9a\x68\xca\xc8\x86\xb0\xa7\xfc\xf8\x78\x6a\x35\xd7\x37\xaa\x1a\x72\x94\x6d\x79\xb5\x2d\xf3\x24\x69\x68\xad\xf3\xc3\x76\xbf\x4e\xd1\xb1\x5d\x31\xe1\x34\x5c\xe2\xd4\xd2\x9a\x22\x14\x05\xb1\x71\x67\x10\x1b\x8d\x58\x2f\xa8\x3e\xcf\x15\x1d\xa6\xcf\x0b\xca\x37\xc3\x9a\xe5\xb5\x8f\x92\x24\x7f\xc5\xd1\x30\x5c\x9e\x99\x62\x90\x83\xe9\xa7\x3e\xaa\x00\x2b\x80\x2b\xa5\x62\x03\xb4\xa8\x3b\xc6\x68\x7b\x5d\x14\xf5\x23\xd9\x1e\xca\x46\xcf\x34\xe2\x58\xde\xdd\xdf\xee\x9e\xd6\xba\x45\x46\x1f\x40\x3f\x43\x29\xe6\x13\x19\xe1\x1d\x3a\x24\x4c\xb5\x7e\xa5\x6c\x70\x1b\xc0\x6b\x4a\x3a\x9c\x29\xc3\x36\x58\x77\xed\xb4\x0b\x6f\xb6\x22\xfb\x73\xef\x71\x0d\x9c\x4a\x3e\xba\x7e\x5c\xe3\xf4\x44\xd7\x23\xdd\x36\xac\x1c\x09\x72\x4c\xcf\x17\x3a\x70\x8c\x6e\xda\x46\x68\xda\xb3\xc7\x34\xc2\x96\x98\xd4\xc0\x22\x18\xdc\x00\x84\x66\x2c\x9d\x40\x97\x4d\xc3\xca\xb9\x23\x8a\xcb\xaf\x65\x9d\x3c\x0a\x13\x4c\xbd\xa3\x1c\xeb\x81\xc4\xf4\x71\x81\x13\x12\x90\x55\xa8\x1a\xe1\xda\x29\x10\xaf\xa2\x00\x8f\x27\xd0\x74\x14\x26\x0a\x2d\x21\x74\x3c\x91\xa2\x05\x82\xcc\xe3\xb2\x38\xb2\xa3\x79\x9c\xc5\x75\x8c\x92\xf1\xb8\x3b\x63\x00\x65\x36\x37\xd4\x7c\x37\xb6\xe3\xbe\xd0\x6a\x65\x46\x08\xd3\x32\xf8\x38\x5a\x94\xd5\x48\xe9\x30\xae\xea\x73\xe9\x00\x5b\xfb\xd8\x5e\x43\xe3\xdc\x2c\xa7\xdf\x92\xbc\x59\x5f\xf4\x45\xf2\x97\x28\x7e\xf1\x76\x79\x5e\xe3\xd2\x7b\x3a\xd4\x75\x9e\xd1\x23\xc4\x4d\x1f\x14\x39\x48\x35\x2b\xaa\xa8\xdf\x08\x0f\xe3\xf6\x79\x16\xa9\x0f\x7d\x31\xd6\xa1\x4f\x43\xa5\xf6\xfb\xa0\x18\x2e\xe2\x85\x11\xc5\x28\xc9\x9f\x79\x45\xb1\x88\x42\x51\x4d\x8c\x16\x3d\x6e\xa2\xf8\x85\x3c\xaa\x89\x22\x0f\xb1\x3a\x16\x00\x1b\x86\xa2\x07\x41\xd1\xd6\x4f\x51\x9c\x89\x0d\x76\xbf\x85\xef\x85\xfc\xb9\xad\x7d\x22\x36\x2c\x72\x7f\x46\x6e\x19\x1f\x0e\x59\x84\x4b\x72\x7d\xd1\x33\x4b\xd0\x28\x5e\x83\x53\xd3\x19\xd3\x2f\x3d\x9f\xbd\x33\x69\x6e\xfa\x22\x6c\x21\x33\x04\x6f\xec\x4c\xbe\xb1\x71\x0c\x6b\xe2\x03\x99\xce\xc2\x6e\xd6\xc6\x47\xf0\xab\xc0\xa9\x0c\xb5\x2b\x2b\x77\x4c\x2c\x56\x34\xf2\x38\x53\x4e\xe9\x2d\xf5\xc5\xf8\x5a\x66\x44\x91\x2b\x06\xcf\x6d\x21\x0e\x46\x4b\xbd\x7a\xee\xb2\xd9\xa2\x7b\x25\xaf\x65\x11\x3a\x2e\x12\x88\xbd\xfb\xf9\xb1\x97\x69\xb4\xa9\x57\xa7\x94\xfe\x3e\xb5\x86\xfa\x77\xf2\x85\x3e\x5b\xf4\x32\xf4\x22\xbd\xd9\xcd\x13\x2f\x89\x9b\xa1\xa3\x53\xce\x9c\x29\x54\x21\x47\x8e\xd7\x0e\x68\x20\xfe\xd1\x90\x75\x12\xd3\x05\x23\xf7\xdd\x1b\x41\xd2\x26\x89\x05\x5b\x84\xdf\xcc\x83\x7c\x09\xd2\x19\xae\xa9\xa9\x34\xef\xac\xa7\xd4\x4c\x4c\x8a\x77\x09\x3e\x8a\x9f\x84\xe2\xfe\x1e\x48\x25\x08\x7a\x4f\x21\x8f\xbc\xa4\x70\x9b\xcc\xb9\x0e\xcd\xea\x8f\x1a\x91\x74\xee\x6b\x0e\x1a\xa3\xb0\xb4\x5d\x68\xef\x8c\x7f\xbf\x5a\x5b\xfa\x70\x67\xea\xc3\x74\x9b\x67\xbb\xb8\x4c\xa9\xb3\x0e\x4a\x70\x59\x83\xd2\x83\xc6\xaa\xb8\x99\xa6\x38\x3b\xf8\x05\xca\x70\xe2\xd1\xc5\xd1\x14\x34\x87\x94\xc7\x9b\x69\x9a\x97\xd8\xe7\x21\x2e\x9a\xf2\xcd\xb7\x66\xb6\xbf\x12\x2f\xd0\xa7\xfc\xf8\xf8\x85\x20\x21\xcb\x5c\xab\x9c\xc7\xd1\x96\xc7\xc5\xe0\xd2\x69\x2c\x2e\x30\xcc\xc6\xb5\x5a\x3e\x04\xe3\x6b\x5c\xef\x7d\x71\xa8\x3c\x26\x50\x70\x82\x6b\x7c\x83\xe8\xaf\x6d\x89\x51\x8d\x6f\x28\xf9\xd3\x6d\x5e\xbc\x35\x27\x0d\xfe\x9b\x82\xa0\x6c\x8b\x13\x56\x44\x09\x28\x71\x85\xeb\x47\xa9\xa8\x3a\x3c\xa5\x71\xfd\x78\xc3\xd8\x62\x4a\xbd\x96\x2a\x4f\x84\xa1\x7f\x3f\x12\xee\x68\xdb\x9a\xdc\xec\xeb\x34\x99\xd6\x38\x2d\x12\x54\x63\xea\xd3\xe4\x35\x82\x8b\x0a\xe8\x56\x86\xed\xf2\x32\x85\xd0\x49\xdd\x72\xaa\x41\x08\xa0\x86\x96\x3d\xaa\x8a\xbc\x38\x14\x64\xe4\x1e\x27\x37\xc4\x7b\x61\xba\x47\x95\xcf\x3b\x50\x97\x1b\xde\x99\x01\xc3\x4f\xf1\x90\x39\x88\x70\x8d\xe2\x64\x24\x22\x75\x6b\x32\x5d\x94\xab\x02\xce\xbc\x48\xda\x1b\x51\x60\xb1\x08\xdf\xcc\xab\x46\x04\x1a\xbf\x7c\x04\x2c\xfa\x3a\x12\x3e\x9e\x8d\x1d\x0e\x60\x63\xfa\x3e\xaa\x09\xfb\x52\xeb\x00\xa5\x35\xd7\x15\x2b\x8b\x4f\xfb\x20\xac\x42\xf5\x9b\xb8\x1c\xe1\x6f\x6c\x5d\x76\x1f\x5d\x16\x28\x07\x76\x5e\xa9\x1d\xfa\xc1\x4b\x76\x60\x55\x99\xb6\x0f\x5d\xc4\x1d\x65\x97\x5a\xcd\x9d\x37\x82\x62\x20\x76\xbd\xd5\x53\x59\xa5\x4f\x2d\x78\x87\x36\x44\xdb\xbe\xa5\xee\x3f\x63\x76\x91\x7f\xb8\x5d\xe3\x24\xb9\x03\xcd\x8a\xa3\x72\x31\x1a\xc2\x17\xa3\xe4\x36\xd8\x9b\x15\x47\xcf\x0f\x3b\xef\x61\xe2\x54\x39\x0b\x27\x6b\x67\x48\x95\x2b\x4e\xa2\xb3\xe0\x6d\xe7\x0b\xc0\xd4\x6a\xeb\xe9\x46\x65\x30\x7a\xcc\x53\x4b\x89\xb6\x4e\x95\x3c\xce\xd1\x13\xfa\x93\x9e\x21\x26\xa7\x9e\x26\x7f\xdb\xdd\xee\xee\x76\x48\x6b\x8e\x22\x36\x73\x35\x3b\x59\xaa\xd5\xd8\xc9\x05\xb8\xfc\xd9\xe2\x00\xaf\xde\xdd\xb6\x18\xc3\x0e\x31\x56\x0a\xff\x0a\x82\xd6\x41\x5a\xb6\x27\xb8\x70\x75\x77\x3b\x07\x87\x8a\x1f\x48\xe1\x81\x62\x5f\x81\x61\x92\xbe\x48\x83\xc4\xbe\xb8\x0c\x11\x05\x75\x1f\x20\xe1\x54\xdb\x3f\x3c\x02\x72\xc3\xca\x36\xb0\x54\xeb\x5f\x73\x3b\x47\x8b\x50\x71\xfc\x5b\x86\xcb\xdb\xd5\xcc\x7e\x50\xf9\xb0\x53\xc9\x65\x4e\x20\x83\x55\xdd\x5f\x49\x65\x66\xb2\x62\x17\xce\xc2\x85\xc9\xa3\xde\xac\x1f\x33\x4b\xa2\x19\x80\x99\x27\x2d\x1a\x32\x43\x61\x81\xe0\x38\xce\x50\xa0\x79\x23\x67\xa0\x60\x54\x9c\x47\xc0\x65\xda\x1e\xac\x7e\x2b\xad\x0f\xae\x4f\xdb\xbf\x94\xaa\x48\xa9\xb9\x14\x36\x91\xb6\x0b\x68\x9d\x22\x71\x17\x40\x47\x6d\x75\xc6\x3d\xdd\xa0\x4b\xb2\x08\xae\xf4\xdd\x80\xee\xd6\xac\xa3\x7b\x42\xdb\xd9\x76\xbb\xee\x94\x2a\xea\xa2\x2d\xbe\x30\xd1\x1c\x12\xec\xd1\x4a\x19\x78\x83\xe7\xae\x38\x72\xcc\xab\xe2\xd8\x22\x65\xd7\xe8\x3f\x5d\x65\xfe\x87\x37\xbc\xc0\x4f\xbb\x94\x79\xf0\xa6\x45\x99\x3f\x97\xb8\xaa\xa6\x71\x16\xe1\x1a\x97\x69\x9c\x35\xa3\x08\xcc\x8f\x19\xd6\xc0\x9e\x46\x78\xfb\x7c\x1a\xeb\x49\xf3\x6c\x84\x52\xe6\xbf\x0f\x4e\xe0\x8b\x1e\x50\x91\x5f\x9c\x40\x19\x1f\x19\x61\x87\xf3\x97\x19\x95\x89\xef\x8c\x35\x06\xf3\xe3\x79\x98\xcc\x7c\x6a\xc2\x0b\x48\xb4\x46\xcc\x2c\x83\x4f\xf4\xd5\xdb\x52\x91\x56\xfe\xac\x39\x14\x0a\x02\x89\x14\x00\x3c\xdf\x6a\xf0\x5d\xcb\x5f\xae\xad\x36\x33\x19\xd0\x7e\xb8\x91\x61\x1d\xed\x58\x52\x25\xd8\xa6\x25\x81\x98\xec\x5b\x10\x10\x74\xca\x02\xe0\xc0\x13\x97\x11\x4e\xb5\x81\x49\x80\x67\x1c\xd3\x64\x3c\xbd\x47\x36\x09\x7c\xbc\x9d\x6c\x38\x1a\x87\x53\xa0\x88\xf4\xf4\x12\x57\xf1\x53\x9c\xc4\xf5\x1b\x73\xcf\x86\xf8\x92\x94\x80\x8c\xc8\xbe\xc0\x9c\xc7\x3e\xf6\xb0\x1a\x85\x92\x79\x8b\x96\xa9\xcc\x24\x95\x8a\xdc\x23\x7e\x90\xd8\x45\xff\xc0\xf9\x83\x7e\x71\x61\x08\x02\xe9\x7e\x26\xa5\x88\x87\x4f\xf9\x80\x7a\x02\x49\x86\x0d\x56\xf2\x21\x0a\xfe\xb7\x38\x2d\xf2\xb2\x46\x59\xfb\x3a\x81\x3d\x07\xb8\x2b\x8e\xc2\x37\xe9\x4a\x6e\x09\x4b\x28\xda\x72\x1b\xf0\xc7\xc4\x11\x42\x48\x20\x33\x67\x74\x40\x2e\x1c\xd2\x42\x03\x9c\xd2\x7e\x03\x39\x46\xfd\xaa\x71\x8e\x02\xa0\x73\x10\x08\x20\x71\x52\x0b\x31\x96\xa3\x3a\x04\x76\xce\x6a\xe1\x46\x72\xd8\xb0\xfa\x7d\x9c\xd6\xaa\xdb\xfc\x79\x09\xc4\x33\xc4\x58\x48\x8a\x27\x20\xc7\x48\xdf\x61\x7e\x91\x40\x7a\xb8\x45\x84\x95\x79\x45\xfc\xa2\x72\x0a\xf0\x4d\xe4\x13\xfd\xb3\xc4\x25\xa6\xcf\x9c\x47\xc4\xef\xae\xca\x15\x83\x77\x97\x3c\x62\x23\xc3\xb9\x63\x70\x6d\x8d\x48\x58\x16\x5d\xcc\x8f\x82\x5e\x7e\xa2\x24\x7e\xce\x1e\x68\x64\x40\xc9\xd0\x5e\xa0\xed\xf7\xb6\x3c\xad\x48\x15\xa9\xf0\xbf\x1d\xaa\x3a\xde\xbd\xf1\x27\x2b\x10\x0e\x19\x39\x47\x22\x95\x92\x1f\xc4\xef\xb9\xe2\x45\xdc\x3d\x7b\x8b\x92\xed\xe7\xe9\x12\xa7\x9e\xef\xcd\x8a\xe3\xc4\x23\x05\xe1\x34\x6c\x4b\xc8\xd3\xfe\xf6\x81\x8c\x65\xb5\x74\x71\xc3\x2d\x4b\x46\x02\xb2\xac\x1b\x09\xce\x65\xf1\x88\x15\x80\x15\x24\x7e\x06\x97\x11\x00\xa0\xad\x25\x1d\x46\x5f\x50\x26\x18\x69\x55\x89\x40\xce\x4b\x4b\xa8\x34\x70\x7d\x89\xcd\x8d\x5c\x64\x83\x51\xc0\x34\xc3\xcb\x4d\x73\xc6\x6f\x5b\x50\x07\x47\x38\xf9\xc3\xe3\xd6\xaa\x11\xcd\x99\x85\x32\xf7\xa2\x65\x65\x40\xa7\x60\xcf\xd0\xcc\x90\xda\x5d\x0e\xe1\xfe\xf6\x79\xc3\xd2\xac\x8d\x04\xd2\xf1\xa9\xd1\x4d\x2c\xf2\x5b\xb5\x01\xb5\x7e\x52\x7f\x5a\xe9\xff\x46\x56\x7a\x3e\xc3\xd3\x7b\x9c\x7a\x33\x9c\x02\xa2\x1c\x7c\x91\x3c\x2a\x9a\x0b\x6c\xf3\x39\x49\x0f\xec\x44\xee\xd5\x8d\x51\xbc\x4b\xcc\x61\x9f\x60\x50\x9d\x73\x24\xde\x9a\x05\xc5\x11\x70\xd7\xd1\x30\x55\x05\x52\x03\xda\xb0\x9e\x8a\xf6\x02\x82\xad\xdb\x29\x96\x01\xcc\xb9\x90\x55\xd6\x70\xdb\x11\xc5\x2f\x30\xf4\x13\x8e\x4c\xef\x44\x17\xdd\xd5\xb6\xf6\x52\x94\x3c\x3a\x97\xbd\x1a\xf8\xf0\xce\x4a\x9c\x9e\x7f\xe3\x02\xbd\x82\x7b\xc2\x78\x17\xbe\x4f\x5f\x51\x99\xc5\xd9\x33\x80\x81\xb9\x29\xf2\x3b\x21\x14\x2c\xb7\xe1\xdc\xa1\x82\xe5\x0e\x7a\x87\xb6\x8b\x20\x04\x4e\x46\x00\xb2\x82\x37\x1c\x04\x81\x61\x04\xb4\x57\xaf\xaa\x72\xa4\x6a\x45\xaa\x3a\x44\xf4\x20\xed\xa9\x2c\x11\x6d\xa2\xf8\x92\x17\xa6\x83\xf8\x1a\x28\xe1\x06\x57\xfe\x83\xee\xb2\x28\x8b\x9b\x11\xc9\x9e\xe9\x0e\x46\x30\x4e\xec\x02\xd2\x5d\x7c\x0e\xa9\xe7\x46\x0f\x2c\x78\x87\x08\xe6\x61\x35\xad\x54\x0d\x12\xea\xe3\xb7\x80\x73\xf0\x38\xd0\xef\xba\x99\x9c\xb1\xf7\x9c\x85\xc8\xd6\x85\x56\x72\xdb\xbd\x2e\x4f\x5c\x6c\x7f\xb2\xe9\x1b\x9a\xb3\xa7\xf0\x6c\xbe\x5f\xc4\x31\x81\xc4\x34\xae\x29\x79\x6a\xde\xbf\x08\xd9\x05\xd7\x10\x18\x03\xa3\x52\xa8\x61\xcc\x21\xd6\x71\x9e\x0e\x68\xef\x75\xe8\x2a\x0f\xed\xfb\x87\xb4\xae\xc5\x83\x14\x70\xd9\x47\xef\x9d\x1a\xd5\x04\x95\x18\x01\xdf\x36\x38\x85\x4a\x9b\x5d\xdd\x3e\xaa\x30\x39\xf6\x31\x86\xeb\x90\xc3\x04\x7d\x8f\x22\xfd\x10\xc8\x16\x4a\x09\xc1\xe2\x6f\x42\x2a\xfc\x6c\x84\xc2\x15\xa8\xaa\x5e\xf3\x32\x72\x02\xea\x1a\x75\x81\x6e\x88\x71\x82\xeb\x25\x92\x0e\x98\x03\x88\x1b\x81\x6c\xfc\x7b\xc8\x63\x50\xbd\xc4\x35\x4d\xf6\x02\xb8\x11\xd6\x00\xf5\x91\x45\x60\x2c\x44\xd1\xd2\x46\x6f\xcb\x89\x0e\xfa\xc8\x38\x7f\x10\x74\x1f\xb9\x86\x6a\x66\xda\x4d\x15\x2c\x1d\x11\x0e\xc7\x5f\x70\x4a\x5f\x32\x29\x3c\x0b\x94\x75\x94\x03\x1f\x37\x30\x1e\x4a\x85\xf0\x81\xf1\x9b\x56\x02\x22\xef\xb8\x49\x2f\x54\x11\x13\x5e\x51\x7e\x83\x48\x39\x27\xa8\x45\x1d\x42\x60\x78\xa4\xa1\xa3\xfb\x1a\x4d\xb0\xeb\x3f\xa1\x72\x62\xe4\x8c\xf1\x55\x65\xd2\xc7\xe1\xd8\x9c\x45\x3c\x1d\x90\x41\xfb\x12\x28\x67\x87\xed\x52\x10\x8a\x93\x14\x06\xf1\x1d\xd8\x68\x28\x12\xce\x74\x8f\xd0\x5e\x44\x41\x9a\x51\x05\x3f\x83\x32\x5f\xc7\xab\x7f\x64\x18\xc1\xfd\xc3\x49\xf0\xab\x6d\x0c\xa8\x44\xdb\xbe\xdc\xf6\xc2\x46\x64\x08\x45\x52\x95\x7e\x7a\x86\xec\x25\x64\x05\x0f\xa1\x45\xa8\xd0\x4f\x89\xcb\xd6\x61\x5a\x9b\x6e\x44\xd9\x6b\xdb\x28\x74\x92\x09\x7d\x7c\x64\x86\xa1\x4d\xbb\x4a\x78\x03\x53\x98\x20\x34\xe4\x16\xf9\x0e\xce\x30\xfc\x5d\x43\xab\xcb\xf7\x91\x82\x16\x6a\xff\x2c\x54\x1d\xa9\x67\x8a\xfe\x13\x89\xda\xa5\x06\x04\x35\x05\x0a\x05\x5e\x4a\xc4\x59\x85\x6b\x2f\xf0\xe6\xc5\xd1\x53\x1f\x40\x04\x2b\xe9\xa9\x44\x3f\xa8\xfa\x32\x43\x8d\xb3\xd7\x45\x2a\x75\x90\xd0\x96\x20\x96\x3d\xc2\x7b\x60\x4d\x3e\x96\xc3\xaa\xa9\xca\xfe\x20\xf2\x0d\x7b\x84\x73\x1d\x27\x92\x95\x93\xc9\x98\x9d\xc6\x86\x7f\xe8\x26\x74\x36\x2e\x97\x4e\x5f\xe2\x64\x04\x4b\xb3\xb1\xad\xea\x92\xef\x4c\x4c\xe7\x0e\x83\xdb\xf9\x0b\x92\xbb\x63\x5b\x54\x65\xf4\x59\x78\xce\xed\xbe\xfd\x94\xe7\xb8\x03\x0c\x6f\xdc\x61\x3f\xb8\x1c\xd2\xf1\x63\x34\xf8\x68\xa9\x1c\x84\x2c\x40\xbb\x18\x27\x51\x85\xeb\x4d\xe1\xa2\x9b\xd8\x48\xef\x51\x5b\x86\x56\x75\x19\xad\xfe\xe3\xec\x70\xa9\x61\x55\x8f\x86\x55\x1c\xd8\x05\xf0\xd0\x3c\x74\xc5\x5b\x94\xb0\x21\xd5\x06\x92\x2e\x1d\xcd\x21\x23\x05\xc4\x6b\x97\x51\xfb\xfa\x28\x3c\x5f\x23\xfc\xa0\x16\x5c\x87\x78\xb4\x09\x81\x5f\xc5\xdd\xe1\xfb\x15\x9a\xbb\xe9\x76\x4a\x14\xf1\x7e\x95\xce\xa1\x82\xd0\xd1\x7e\x68\x07\x05\x4e\x43\x62\xd6\xdb\xac\xa0\x36\xba\x2e\xa3\xa5\xa9\x68\x47\x28\x67\xa3\x50\x58\x7a\xf6\xa1\xaa\xd8\x90\xc6\x40\xe1\x3a\x02\xc1\xc8\xbe\x9e\xa5\x6f\x0d\x69\x08\x90\xc2\x83\xab\x8f\xec\xe3\xa5\x94\x2a\xb7\x36\xdd\x24\xe9\x79\xb8\x06\x0f\xc4\xaf\xa4\x39\xa9\x14\xf7\x2b\x4c\x2e\x35\x2c\x43\x72\x86\x7a\x64\x41\xe5\xb4\x70\xad\xca\x50\x2f\xb0\x9b\x0e\x64\x41\xe3\xb0\xe8\x2c\x1a\x4f\x0f\xe8\xdf\x4e\xd1\x81\x08\xbb\x88\x7e\x73\x41\xc4\x3d\xe3\xf8\x73\xb5\x19\x20\x83\x89\x83\x4a\xe3\x58\x4b\xec\xa9\x5b\x15\x17\xe5\x06\xc4\x64\xd1\x70\x7a\xe1\x7b\xc9\xbc\x90\xae\x03\xe1\x1e\xa3\xf0\x8c\xc6\xd3\xd7\xd1\x8f\x55\x7d\x86\xb6\x08\x8b\xd1\x91\x58\xce\xe9\xfa\x79\x9a\xd0\xd0\xd6\x20\xc9\x3c\x0a\xc7\x39\x5d\xbe\x98\x62\xe4\xde\xb0\xa3\x1c\x3e\x1f\xe1\xb8\x71\xf9\xa5\xf4\x24\x88\x6c\x07\x65\xc9\xb5\x5a\xdf\x08\x9d\xa3\x36\xf5\xe0\x73\x5f\xf4\x76\x05\xca\xa9\x86\xa3\x16\xd5\x83\xcb\x75\xc1\xda\xf4\x29\x07\xf8\xbf\xa1\x52\x65\xa2\xee\x32\x9a\xd5\x85\xb1\xbb\x0c\xeb\xcf\xd4\xb1\x86\x68\x56\xce\xfa\xd4\xb9\x5a\x94\x9b\xee\xe4\xa0\x31\x5d\x5e\x4f\x3a\x4f\x3b\x3a\x43\x27\xfa\x59\x9a\xd0\x39\xfa\xcf\x68\xad\xe7\x67\xe8\x3a\xe3\x35\x9c\x91\x7a\xcd\x4f\xd6\x66\x2e\xa4\xc3\x5c\x42\x73\xf9\xbb\xd2\x57\x06\x69\x29\xee\xba\xc9\x65\x34\x92\x01\x7a\x88\xab\xf6\x71\xbe\xce\xe1\xac\x69\xb8\xe9\x17\xbf\xa2\x56\xf1\x11\xba\xc4\xc5\x35\x88\x9f\xa7\x37\x6c\x70\xba\xd9\xe6\x11\x56\x37\x51\x5a\xe8\xb8\x1d\xf5\x03\xb7\x3c\xd8\x0f\xca\xb8\xc3\x06\x68\xee\xaf\xad\x96\xcc\x69\x14\x12\x5e\xbf\xda\x37\x85\x7c\x9d\x97\x85\x72\x53\x33\xa3\xe7\x90\xa0\x38\x69\xde\x62\xef\xc4\x85\x98\xbc\x00\xdf\x10\x6d\xf3\x46\x28\x68\xfd\xdd\xa4\x70\xa0\x2f\xa8\xfc\xec\xd3\x00\xed\x14\xce\x5f\x06\xc1\xcd\x6f\xdb\xdb\xf9\x62\xb1\x14\x5f\x42\xff\xe9\x0f\xfc\xa7\x3f\xf0\x9f\xfe\xc0\x7f\xfa\x03\xff\xc7\xf7\x07\x96\xd3\xbe\xc8\xc1\x93\x69\xd8\x4f\x97\xc3\x36\x8b\x20\x6b\x3f\x65\x1b\x81\xda\x7d\x5f\xcc\x36\x66\x38\x41\x1b\x41\xa4\x36\xc0\x33\xb3\x2d\x0b\x58\x8f\x2a\x3d\xb8\xaa\x48\xcd\xb0\xe3\x70\x7f\x1d\x83\x46\x3d\xb0\xa2\x2b\x85\xaa\x96\xdd\x5f\x03\x54\xad\x07\x55\x73\xa5\x4d\x56\xb7\x6d\xf0\xae\xea\xf1\x78\x1c\xfd\x34\xf7\xaa\xbd\x42\xc2\x37\x27\x7e\xec\x3b\xd3\x99\xa1\xcc\x4d\x5a\x99\xcb\x7e\x4e\x33\xc1\x98\x1b\xb3\x70\x8a\xed\xf4\x05\x43\x00\xcd\x5c\xe8\xcc\x74\x21\x84\x2a\xf1\xe7\x9e\x92\x58\x28\x0e\x49\x64\xf3\x5c\x23\xfd\x22\x9b\x45\xfa\xb0\x8b\x6c\x23\x50\x4b\x84\x98\xec\xd1\x20\xb2\x8d\x20\x52\x1b\xa0\xc8\xb6\x65\x57\xec\x59\x22\x83\xab\x8a\xd4\x0c\x13\xd9\xfd\x75\x0c\xab\x6a\x60\x45\x57\x0a\xd5\x75\xd7\x5f\x03\x5c\x88\x83\xaa\xb9\xd2\x26\x2f\x55\x1b\xbc\xeb\xea\x1c\x8f\xa3\x9f\xe6\xde\x35\x28\xe4\xde\x74\xe2\xc7\x3e\x91\x6d\x86\x32\x37\x69\x65\x2e\xbb\xc8\x36\xc1\x98\x1b\xb3\x70\x8a\x4d\x64\xc3\x10\x40\x33\x17\x12\xd9\x17\x42\xa8\x12\x7f\xae\xc8\x26\x98\x20\x9b\x44\xfd\x56\xe4\xec\x39\x34\xb5\x49\xd0\xf4\x3a\x13\xc8\x62\x45\x03\x5a\x08\xf2\xd2\x3d\x6e\x84\x6b\xf0\x06\xb7\x38\x0a\x23\x02\x1b\x68\x6f\xec\x65\xca\x74\x93\x13\xf4\x26\xbf\x2b\x1c\x69\x53\x22\x81\xbe\xb4\xe1\xdf\xe6\x59\x5d\xa2\xaa\xf6\xef\xef\xef\x6f\xe2\x6c\x8f\xcb\xb8\x86\x26\xc0\x53\x2c\x38\x8e\x46\x18\x27\xbb\x88\x83\xb9\x62\xa8\x25\x01\x3e\xca\x43\xe7\x6f\xfd\xe0\x7c\xd6\xa9\x17\x29\xb1\xd4\xfe\xb4\xbe\xfe\x1d\x5b\x5f\xed\xc9\x97\x84\x55\xf4\x54\xa2\x2c\xf2\x57\x41\xd0\x2e\x21\x43\xee\xd8\xf3\x4d\xac\x16\xa5\xd3\x6c\x46\xfd\xdb\x1b\x4c\x3f\xde\x04\xfa\x51\x66\xcd\x8f\x37\x56\x5e\xd8\xea\x78\xae\x61\x71\x94\xf5\xf0\x97\x32\x12\x5e\x30\xc0\xb3\x16\xce\xb9\xaa\x51\x59\x2b\xd1\x9c\x69\x99\x1a\xcc\x99\x7c\xa7\x9f\x52\x74\xec\x62\x2c\x7f\x12\x02\xab\xf1\xcc\x3f\x5d\xe0\xc4\xd9\x6d\x71\xf4\x66\xf3\xe2\x08\x09\x0b\xf8\x36\x65\xd8\xbd\xc8\x90\x1b\x0b\xf7\xfb\x84\x91\x16\x7f\xab\xe5\xdd\x62\x35\x37\x5a\xbd\x2f\x61\xb9\x6e\xed\xc4\x25\xae\xe2\x1f\xf8\xe1\x05\x97\x75\xbc\x45\x89\x3a\x8d\x52\xe4\x6c\xfa\x93\x4d\xe7\x6d\x50\x1c\xdb\x19\x5d\xb5\x13\x2a\x87\x5e\x05\x83\xbf\xb5\x51\x9e\xeb\xfc\x3b\xce\x84\xa0\xcf\x51\x5c\x7b\xa4\xb3\x51\x22\x87\x5c\x73\x99\x74\x87\xb9\xee\x9d\x62\xd7\x99\x1d\xc6\x01\x36\xc5\x21\xb2\x7e\x25\xf1\x90\x20\xbe\xd1\xd9\x45\xe5\x12\x41\x6b\x88\x12\xe1\x47\x87\xb2\x6d\x8a\xfc\xff\xb8\x00\x54\x67\xb0\xa0\x12\x4c\x71\x36\x5d\xe0\xf4\xcf\x53\xd1\x87\x9d\x8a\x94\xd0\x95\x73\x78\xb0\xd5\xc0\x85\xae\xb1\x03\xdd\x82\xf8\xb9\xc4\xd4\x1b\x1c\xbb\xce\xd5\xff\xca\xd5\xa3\x09\x8a\xf7\x66\xf1\xe9\x19\xad\x7f\x8b\xa9\xf2\x42\x70\x2b\x24\x13\xf7\x05\x8a\x25\x69\xf6\x27\x03\xd8\xac\x0f\x58\x60\xbd\x3e\xd0\x96\x1d\xcd\x80\x36\x26\x34\x4d\x03\xf0\x4d\x21\x0a\x5a\x12\x67\xce\x00\x43\x21\x4e\x83\x3f\x5d\xe2\x74\x0d\x05\x79\xfd\xf3\x80\xfb\xf7\x7a\xc0\xed\xe2\xcf\x2f\x64\xd7\xa2\xaa\x2e\xf3\xec\xf9\xb4\xcb\xb3\x2e\x34\x78\x99\xa2\x64\x4d\x4a\x5e\xa9\x92\xb3\x08\x02\x9e\x86\x98\x3a\x13\xe9\x71\xeb\xe5\xdc\x4e\x61\x00\xb5\xd2\x86\x3a\xa7\xad\x35\x0a\xd7\x6c\xd1\xa8\x4f\xf6\x8c\x76\x72\xfa\x85\x3b\x39\xdc\xf8\xa0\xd8\xe1\xae\xe1\xbc\xdd\x83\x6c\x8f\x0d\x75\x3d\x3a\xc2\xf4\x49\x0d\x22\xe6\xf1\xf4\xa5\xb2\x07\xd9\xc2\x94\x09\x7e\x16\x16\x47\x92\xe4\xdd\xbf\x55\x83\x96\xdd\x4d\x6e\x02\x6f\xd6\x60\x9e\x05\x0d\xc0\x5c\xcd\x00\xaf\xa4\x8a\x3f\x13\x15\x94\x12\x00\xe0\x85\x66\x1e\x76\x49\xfe\xca\x32\xc4\xb5\xbd\x22\xc9\xe4\x29\x6c\xa7\x8f\x7b\xb3\x65\x90\x56\x37\x8d\xfa\x2e\x16\xac\x07\x01\x0b\xea\x7d\x20\x85\xb6\x8f\xa2\x61\xa1\xea\xa3\xc8\x39\x80\x7c\xa4\xa5\x87\xb7\x03\x8f\x0d\xb1\xde\x56\x1d\x11\xdc\x3c\x8a\x4e\xca\x3d\x6c\x37\x36\x34\xb2\xf8\xa0\xe1\xe1\x55\xc6\x41\xf7\x0d\x12\x83\x1f\x39\x4e\x52\xed\xe1\x43\xc5\x62\xb1\x77\x09\x17\xfc\x06\x92\x85\x6e\xd7\x52\xbd\x54\xb8\x40\x25\xaa\xf3\x92\xe5\xda\xd9\xc5\xa5\x90\x33\x49\x18\xe3\x28\x7e\xf9\x72\x18\x26\xf2\xdc\x9a\x18\x30\x69\x9c\x86\x0b\x36\x3f\xb2\xe5\xde\x65\x32\xa4\xed\x5e\x76\x62\xad\x9f\x97\xdd\xc6\x4a\xcb\x58\x56\x95\x28\x1b\x9d\x2f\xc7\x81\xb4\x11\xeb\x80\xd2\x76\xea\x52\xb9\x08\xd1\x2f\x61\x6f\x3c\x73\x26\x91\x3f\xae\xcf\x4a\x14\xf2\xc7\xf5\xd8\x6c\x1e\x7f\x68\xd9\x6d\x07\xd5\xbd\x50\x36\x8c\x16\xd3\xf9\x69\x29\xfe\xb8\x3e\x01\xbb\xa8\x54\x44\xf4\x50\x6d\xef\x74\x00\x71\xff\x74\xe3\x19\xd0\xd9\x98\xa0\x8d\x76\x7d\x1e\x33\x88\x68\x2e\x87\x61\x28\x73\x08\x38\x2e\xc4\x24\x1a\xc6\xf3\x99\xa5\x43\x79\xd2\xe6\x8b\x4e\x69\x82\x6a\xfc\x5f\x3e\x93\xcc\x6b\xfe\x2c\x08\x3e\x79\x3e\xd1\xfa\x26\x93\xb5\x33\xa0\xa0\x72\xcd\x16\x73\x92\xb0\xfa\x28\x15\x00\xdb\xe6\x9f\x19\xd2\x2e\x95\x21\x6d\x54\x22\x28\xed\xbe\x84\xdd\x8a\x28\x37\x26\xbc\x54\xbd\x33\x21\xa9\xca\xfc\x27\x5c\xbf\x62\x9c\xd9\x66\xf7\x01\xed\x6a\x5c\x9e\x35\xc7\x1c\xc5\x65\x6a\x0f\x9d\x6f\x56\xff\x42\xb3\x2e\x61\x3b\x7f\xee\x29\x3a\x39\x5f\x80\x90\x9f\x4e\x38\xa4\xb5\x27\x33\x9a\x33\xcf\x23\xf9\xc8\xc4\x47\x45\xea\x61\xa0\xd9\xfc\xbb\xd6\x86\xad\x52\x03\x86\x8b\x54\x76\x3b\x39\xa8\xd5\xcf\x3a\x48\xc0\xc8\xc6\x9e\x2b\x14\x6c\x27\xd8\x7e\x12\x50\xeb\x09\x91\xb6\x44\xd8\x7e\xa1\xc2\x76\x2d\x27\x92\x12\x17\x5e\x1c\xfd\xd3\xd7\x2b\xff\xea\x51\x54\xfe\x5a\xf1\x7f\x48\xa8\x4d\xe9\xdb\x2e\x2f\x29\xd8\x97\xb1\xb3\x7b\x66\x4b\x3f\xb5\x91\xfe\xd5\x7e\x4e\x33\xa3\x85\xc2\xf9\x8d\x8e\x91\x1d\x67\xb4\xaa\xa6\x24\x11\xaf\xb5\xe9\xfb\x46\xf2\xdf\x6f\x19\x4a\xf1\xd7\x34\x8f\x50\xf2\xa8\x97\x7c\xb9\x3e\x19\xb9\x37\x1a\x78\x30\x8e\xdc\x0f\xb1\xd1\x90\x53\x67\x34\xfe\x90\x18\x9d\x71\x8a\x8b\x12\x2d\xd1\x29\x20\x92\xc9\xd9\x4e\x16\x1f\x03\xcf\xff\x36\x3c\x17\x44\xe1\x28\xa4\x41\x24\xe7\x89\x6a\x0b\xca\xd1\x02\x1b\xc2\x79\x02\x72\xbf\x76\xf3\x45\x4d\xfc\x8d\x04\x1f\x36\x3f\x52\xbd\x33\xaa\xf4\x8d\xbf\x58\x69\xe4\x78\xeb\x28\x86\x8f\xaf\x80\xe3\xc4\x93\x35\x93\x6d\x0f\x1d\xea\xfc\x9d\x7c\x18\x7b\x59\x40\x2a\xbb\x8e\xa1\x02\xdc\x37\x7a\x14\x7c\xe4\xb8\x89\x95\x87\x8f\x18\xa9\x7d\xa2\x17\x2b\x3a\xc3\xa1\xa7\xfc\x05\x8f\xe1\x38\x5e\xf1\x9c\x3a\x6e\x3c\xc7\x6a\x9d\xc5\x74\x12\x8e\xb1\x5c\x47\x91\x9c\xc8\xcd\x35\xb9\x95\x22\x05\xa3\xd9\x8d\xd4\x76\xe6\x37\x05\xba\x97\xe1\x28\xfc\x58\x8e\x13\x6b\x8f\x60\x39\x52\xfd\xc4\xae\x92\x17\xa1\x7c\x9a\xdf\x0c\xb4\x68\x6f\xdc\xad\xcf\x9b\x21\xe6\xe2\xcd\x78\xeb\xee\xe6\x0c\xf3\xeb\xe6\xc0\x7d\x80\xe4\x9c\xca\x5e\xa0\x0f\x92\x7e\xdb\xa2\xee\xef\xc3\xac\x62\x23\x86\x7e\xdc\x25\xcf\xc6\xd9\xcc\x36\x6c\x76\x07\xdf\x1f\x6d\x06\x58\xeb\x86\x72\xcf\x88\xeb\xa9\xcd\x68\xc3\xdf\x79\xdc\x7a\xf6\xcd\xd8\x66\xbc\x7d\xf1\xcc\xc5\x72\xfe\xb5\xdc\xe6\xfa\x24\xe6\x3b\x3e\x7f\x0d\x0d\x65\xf0\xe1\x7c\x78\x2e\xab\x9c\x3d\x63\x74\xd8\x6a\x7c\xac\x7d\x94\xc4\xcf\xd9\x43\xa3\x40\xc0\xc6\x1f\xed\x3e\xe9\xbc\xfb\xca\xd1\x37\x8d\x67\x5c\x14\x5e\xec\x96\xef\x72\x97\x72\x74\xec\x3b\x7b\xfa\xa1\x28\x70\xb9\x45\x15\x5e\x4b\x21\xa0\x5a\x37\x9c\x46\x2b\x99\xce\x97\xf2\x21\xf0\xd2\x97\xc1\x17\xbc\xdd\xbd\xe8\x65\xed\x07\xde\xb6\x7e\xe4\x6d\xa9\x03\x6e\xd1\x4f\xcf\x75\x7a\x71\x5a\xd4\x6f\x17\x99\x58\x8e\xe9\xa2\x48\x46\x4e\x26\x43\x73\xd9\x69\x94\x90\x5e\x6c\x02\x29\xd6\x93\xe4\x21\x37\xc3\x69\xbb\x56\xe9\xc1\x55\x2c\xe1\x5e\x97\xaa\x11\x87\xf8\xa6\x0d\xf4\xd6\x18\xe2\x5f\x31\xcc\x1f\xe2\x1c\x8f\x85\xb3\x5c\x0a\x5a\x4b\xd7\x2c\x28\x8e\xeb\xd7\x7d\x5c\x63\x9f\xdc\x27\x71\xe7\xc5\xee\xf9\x06\xbf\xa5\xda\xc5\x35\xbf\x7a\x12\xbf\xa6\xf9\x0f\xc3\x27\xa1\x54\x5a\x63\xd3\x98\xf6\xb6\x39\x7d\x0d\x59\x51\x62\xbd\x33\xaa\xf4\xae\x16\xa1\xd2\xd8\xb5\xa1\xa1\x18\xb1\x12\x3a\x1c\xba\x9d\xcb\xa0\x37\x74\x55\x36\x0f\x63\x2e\xfd\xa0\xfa\x17\xa8\x3a\x60\xc4\xdb\xca\xe7\x8f\xbc\x82\xea\xac\x19\xe0\xb8\xf4\x67\xae\xf4\x61\x6b\xf5\x8a\xea\xed\x5e\x78\xda\xfa\x5b\x10\x04\x13\x8b\x5b\xae\xe2\x8f\xbb\x66\x02\x2c\x50\x0e\xf6\x51\xfc\xc2\x5d\x7e\x07\x4b\xad\xae\xe2\x39\x75\x5c\xa4\x58\x5b\xeb\x0c\x69\xa6\xe0\x18\x27\xd5\x5a\xf7\x68\x7d\xe0\xe9\x96\xb1\x2c\x8e\x64\x0a\xd8\x95\x5e\x71\xf4\xbe\x78\xcd\x16\x31\x79\x97\x5c\xd6\x15\x07\x76\xd2\xc6\x89\xde\x08\xea\xcf\x11\xc9\xdf\xcc\x1a\xf8\xd7\xea\x50\x34\x0b\xb3\xf2\xb2\xbc\xf6\x3e\x7f\xee\x84\xa1\x07\x88\xd1\x89\x97\x97\x9e\x04\xa3\x08\x53\x0d\x40\xfc\x36\x39\xfd\xb9\xaf\xe9\xfb\x5a\x37\x58\x61\xd0\xac\xa6\x77\x68\x2a\xb5\x55\x4c\x1c\xab\xc3\xe5\xf2\x86\xff\x3b\xbd\x57\x58\x82\xbf\x1e\x38\xc1\x2e\xe1\xab\xe2\xe8\x35\xff\xfa\x84\xa9\x94\x44\xd6\x37\x0c\x80\xfc\xc7\x5f\x28\x00\xa1\xea\x13\x7e\x26\x2e\xd0\x29\xdc\xe4\xf3\x0e\x77\x72\xb3\xcb\xf3\xba\x0b\x1d\x55\xe7\x05\x7f\xbb\x59\x1c\x0d\x35\xf6\x18\x45\x5d\x0d\xaa\x7d\x09\x95\xf6\x75\x9a\x74\x0f\x34\xc9\xdc\x92\xfb\xc8\x93\xe2\x9b\xfe\xae\x5d\x58\xf2\xcb\x51\xe1\xe2\x92\xde\x7f\x4a\x74\x9c\x7e\xf8\x71\x16\xe1\xe3\xc3\x32\x08\x3a\xb1\xbb\x8b\x8f\x38\x02\x39\x40\x13\x10\x7a\xb7\xce\xf7\xe9\xa1\xe7\x7c\xea\xec\xd1\xf9\xf4\x48\xa5\xe4\x87\x1f\xd7\x38\xad\x5a\x40\xd5\x2b\x48\x45\x20\x16\xaa\x3e\x41\xac\x58\x10\x4d\xf0\x7c\xd1\xe7\x9b\x27\x0e\xb7\x0c\x8a\xa3\xa0\x53\x18\xaa\x3c\xe5\xd1\xdb\x49\x74\x2b\x23\x2b\x0c\x04\x9e\xf2\x79\x8d\xb3\xe7\x6e\x8e\xd1\xa1\xce\xfb\x69\x13\xd6\xf0\xdd\x72\x29\xbe\x6e\x69\x9f\xca\xf0\xd9\x9e\x19\xb8\xf1\x5a\x39\x2a\x2c\xbb\x27\xc6\xfc\xac\xb0\x34\xb2\x72\x43\x02\x27\xd9\x7f\xa3\x44\x0b\xbd\xbe\x0b\x5e\xf6\xad\x99\x39\x6c\x96\x68\x38\x37\xe2\xa2\x0b\x09\x7e\x10\xc5\xd7\x8c\x68\x70\x98\x85\x02\xa5\xfc\x45\xab\x71\x94\x5b\x0c\xda\x3d\xa8\x0d\xdc\xfb\xb6\xcb\x4b\xba\xba\xfe\x6d\x9b\xe4\x15\x7e\x3c\x6d\x0f\x65\x95\x97\x0f\x45\x1e\x13\xf6\x31\xbf\x90\xd1\x85\xcb\xed\xee\x6e\x87\x80\x54\xfd\xbb\x24\x47\xf5\x03\x19\xec\x35\xb1\xbc\x34\x33\x96\xd5\x0f\xfe\x7d\x10\x90\x33\x07\x15\xd2\xf3\xe2\xc8\x39\x82\x0c\xe3\x34\xcb\xeb\x78\x8b\xa7\xe4\xd5\xd3\x0d\xff\x15\x67\xbb\xbc\xfd\x51\xe4\x49\xbc\x7d\xf3\x53\x94\xa1\x67\x9c\xe2\xac\x6e\xbf\xbc\xa2\x32\x6b\x18\x4e\xa7\x86\x95\xb4\x02\xc9\xfc\xfc\x4a\x3a\x45\x0a\xfe\x3f\x38\xf5\xbe\x78\xf3\xb0\x38\x4e\x64\x1a\x3b\x95\x49\xa0\x55\x2b\xd4\x68\xd6\x20\x18\xed\xbd\x2a\xcc\x8a\xa9\x30\xcd\x1f\xef\xd3\x28\xae\xb6\x0d\xaf\xbe\xf9\xdb\x3d\x79\x14\x57\xe6\x87\x1a\xfb\x5b\x54\x46\x7c\xb6\x0f\x89\x97\xc4\x37\xd3\x3d\x46\x49\xbd\x27\xc2\xd4\xcf\x0f\x75\x71\xa8\xbd\x28\xf2\x70\x7a\x53\x47\x1e\x7b\xc2\xa6\x0f\xdb\xc7\xc4\x86\x18\x27\x17\xdb\xf9\xa1\x4f\xa6\xf4\x19\x74\x1f\x0d\xf6\x3c\xd0\x3c\x28\x1c\xa0\x1d\x1b\x56\xa0\x6b\x0e\xc4\x9e\x58\xa0\xb2\x39\xfa\xca\xab\x68\x30\x39\x1d\x4b\xf4\x90\xd5\xe9\xca\x0a\x79\x2d\xf3\x70\x2d\xb5\x5b\x5c\xf4\x68\xf1\x8c\x6a\xfc\x8a\xde\xa6\xdb\x3c\xab\x0e\x89\x8f\x8f\x35\x2e\x33\x94\xf8\x55\x7e\x28\xb7\xb8\x23\x40\x81\xfb\x1e\x67\x51\xfb\xb1\x2a\x50\xd6\x02\x30\xbe\xce\xf2\x08\xfb\x71\xb3\xbe\xe3\xfa\xcd\x0a\x59\xe1\xf2\x25\xde\xea\xc0\x40\x00\x21\xfe\x44\xea\xe3\x67\xb5\x7d\xdb\xc9\xa4\xd2\x7d\x37\x6e\xf7\xc4\x93\x9a\x1c\xd6\xe8\xc6\xb1\x68\x64\x5b\xfb\xfa\x32\x78\x37\x8c\xe5\x8d\x38\x76\x74\x24\xa0\xb1\x92\xbe\xa8\x63\x03\x8c\x09\x7e\xc2\x78\x17\xae\xbb\xc7\xa8\x77\x9d\x70\x03\xd6\xad\x1c\x50\x09\xa6\x94\x05\x46\x10\xc8\xa5\x25\x46\x9a\xf5\xcf\x2a\xe1\x34\x52\x80\xf2\x46\x55\x7d\x0e\xab\x4b\x60\x65\xde\xfb\x98\xd4\xc8\x9c\xfd\x4c\xd9\xc7\x8c\x6c\xfd\x2c\x84\xf5\xb3\x50\x19\x21\x84\x65\x90\xe3\x19\xcc\xed\xba\xcb\xf5\x92\x6b\xdc\xd5\xd6\xc8\x0b\xad\xcd\xf5\x49\x95\x74\xae\x9d\x1e\x60\x55\x1a\x66\x46\x3a\xc7\x6e\x74\x96\xa1\xa8\xb5\x0c\x31\x96\x59\x09\x2c\xb3\x02\xf5\x8c\x36\x4e\x83\x36\x68\xf2\xb0\xa8\x1d\xb7\x77\xad\x87\x78\xd0\x55\xce\x6d\xd2\x5c\x26\xcb\x6d\x92\xc6\x4c\xce\xa8\x49\x51\x3d\x65\xff\xc1\x1e\xb8\x33\x56\xbc\x87\xb9\xec\x4f\x3f\x34\x9b\x1f\xda\xfc\x6e\xd4\xa0\xfd\x03\xbb\x8b\x1a\x0f\xd2\x17\x8a\xf2\xa4\x9a\x88\xe4\xc3\x99\xd1\x22\x65\x0c\xa2\x75\x46\xa4\x29\x7a\xa6\x6d\xda\x1d\xd6\xe6\x65\x22\x2f\x89\x27\x6a\xa6\x89\xf0\x8b\xd0\x61\xe4\xd0\x3b\xd5\x04\x75\xf7\xed\xe3\x49\xd3\x70\x9d\x64\x25\x69\x00\x77\x58\x83\x9c\x7d\xd0\xc8\x5e\x38\x1c\x56\x20\x5e\xcc\x89\xef\x33\x48\x0d\x8f\x86\x15\x56\x74\x27\x18\xac\xbd\x70\x92\x74\x7b\xea\x6f\x65\xaa\xc1\x4f\x52\x52\x95\xdb\xe2\xc8\x83\xc0\x30\x93\x8b\xa8\xd5\x86\x9d\x56\x4b\xee\xa2\x9a\xe9\xa2\xf8\x33\xfc\x4c\xf4\x04\xb1\x35\x1e\x3a\x25\xe8\xa5\x1a\x34\x42\x8b\x0d\xcd\x5b\x13\xd0\x5d\x47\xce\x9d\xb5\x75\xd6\x0e\xb1\x10\x7f\x11\x7b\x7c\x63\x82\x6a\x6d\xc7\xf2\xf8\x68\xc4\xd1\x58\xda\x8e\x4d\x83\x48\x21\x12\x7a\x1a\xe5\xcf\xf5\xb5\x8a\x90\xae\x66\xe2\x25\x46\xff\x2e\x9c\x85\x0b\xf0\xd4\x27\x4b\xcb\xf9\xa2\x1d\x61\xd3\xdc\xf5\xf6\x44\x37\x4c\x49\xda\xd6\x9a\x9b\xa2\xaf\xae\xf8\x6d\xe7\xb0\x39\x35\x52\x01\x8d\x3e\x65\x37\x2a\x06\x17\xce\xdc\x03\x21\x31\xf7\x5b\x68\x83\x66\x95\xeb\xcc\x0b\x38\xf2\x4b\xcc\x8e\xd1\x50\x68\x21\xe0\x68\x0e\x4c\xae\x19\xa1\x97\xc4\x60\xe4\x07\x5b\x9d\x1b\x37\x7c\x52\x94\x66\x2b\x0d\x48\x66\xb3\xd1\x6d\x53\x5b\x4d\xcb\x47\xe0\x45\xda\xb2\x38\x7a\x4d\x2f\xfd\x50\x0d\x77\xa4\x5e\x93\xd9\x20\x6d\x24\xf2\x74\x22\x16\x08\x9a\x37\x05\xa4\x6f\x55\x1c\xbd\x3b\xa8\xd5\x60\x39\xb9\x21\xd6\x18\x6f\x01\x5d\xcc\xa9\x81\x9f\xc6\xe3\xb1\x4e\x15\x1d\x62\xfa\x58\x0a\x4d\x84\x6d\x19\x08\x7a\xc5\xe2\x73\xeb\x1b\x0c\x7c\x85\x68\x6d\xf7\x90\x80\x91\x7a\xd6\x9a\x5b\x7e\xe0\x40\xbe\x87\x1c\xd8\xc8\x43\x1b\xf5\x42\xd0\xad\x52\xcf\xf2\xf0\xd0\x46\x1c\x36\x55\xf7\x94\x3d\xa5\x5e\x4b\x54\xd0\xcb\x8d\x16\x0e\x27\x49\x5c\x54\x71\xe5\x44\x4d\xe7\x85\xd5\xb0\x01\xb9\x92\x72\x9f\xdd\x0f\x0a\xdc\x3c\xca\x38\xef\x44\x76\x37\xac\xbc\x07\xfa\x56\x22\xb0\x1e\xb5\x1c\xae\x8a\x23\xf8\x84\x7e\xc9\x6e\x01\x98\x4e\x23\x28\x11\xe4\xef\xd6\xc9\xc3\x6f\x7e\x7a\xbf\x7b\xe1\x44\x70\x01\x91\xec\xb7\x0e\x94\x8b\x6f\x75\x19\xe9\xa2\x32\x2e\x6f\xb1\x81\x62\x01\x12\xb4\x1e\xd2\xb8\xa4\x1f\xf7\xce\x79\x12\xf3\x4b\xda\xf9\xbc\x17\x54\xc8\xa8\x30\xe8\xd2\x9a\x07\x6d\x66\xd3\x4c\x1d\xa5\xf3\xe2\x82\x97\x36\x01\xe1\x6e\x8f\x46\xbc\x73\xbd\x9e\xf6\x6a\x53\x30\x66\xf6\x79\x4f\x23\x3e\xb6\xc0\xe2\xaf\xbd\xec\x8b\x20\xec\x9d\x03\x50\xee\x4f\x50\x88\x25\xcd\xc9\x74\x65\x3c\x81\x81\xa4\x45\xe0\x1e\x2c\x9b\xbf\xf9\x18\x2d\x1b\x76\x52\xe6\x27\x8d\xa3\x28\x31\xdc\xf1\xb6\x6d\xb0\x2b\x8e\x41\x03\xc8\xeb\xc8\x43\xc0\xe9\x0a\x57\x77\xb7\x73\x6b\xab\xa6\x88\xe6\x1c\xbf\xb8\x90\x6e\x64\x97\x90\x2c\x8f\x70\xf7\xab\xda\xe7\xaf\xde\xb4\xc2\x55\x45\xad\x1b\x72\x4d\x81\x3c\x24\x77\x40\x02\xab\xa3\x69\x84\xab\x3a\xce\x50\x23\x31\x14\x25\xc6\x42\xa8\x80\x52\x78\xe6\x22\x04\xdb\x4a\x50\x51\xe1\x07\xfe\xc7\x3b\x35\xa5\x44\x79\xea\x97\x78\xfb\xb6\x4d\xe2\xec\xd9\xab\x4b\x61\x7b\xfa\x15\x04\xf4\x59\xc6\x63\x3a\x0a\x2b\x27\x27\x11\xc6\x35\xbc\x2e\x8b\x4c\x20\x71\x94\xfc\x4d\x8e\x47\xe0\x86\x15\xc6\x27\xbe\xae\x21\xe2\xb5\x6f\x89\x28\xdc\x23\x88\x4f\xc0\xc5\x48\xab\x3e\xcd\x78\x46\xa6\xea\x0f\x90\x30\x10\x62\x40\x77\x23\x66\x9d\xa4\x15\x27\x9b\x87\x3c\x4b\xde\xf4\x35\x60\x83\xd3\x14\x18\x83\xb6\x32\x88\x8e\x6b\x6b\xeb\xd7\x27\x5d\x49\xb2\xe2\xdf\xa2\xa2\xa9\x2a\x22\x65\x45\x6a\xb0\xf1\xbb\x5e\x39\xdb\x2f\x82\x24\x62\x7b\xa4\xa3\x02\xac\x30\x8b\x6d\x14\x64\x06\x95\xbf\x9d\x64\x4f\xa4\xe9\x7d\x5f\xaf\x9e\xf2\xe8\xad\x69\x91\xc7\xaf\xd6\x8a\x65\xb6\x5d\x3b\x87\x22\xe6\x37\xad\x35\x7a\xf2\x33\xf4\x22\x1e\x35\x43\xf5\x08\xab\x6e\xa3\x6b\x78\x0f\x4b\x30\x2a\x1f\x9e\xf2\x7a\xbf\x4e\x70\x5d\xe3\x92\xb0\x01\x09\xa9\x11\x90\x50\xf1\xac\x29\xe3\x89\xe1\x17\x92\x99\x16\x1f\xa1\xa0\x3d\xd9\x74\x3d\xa2\xb6\x1b\xd5\xba\x87\xb2\x38\x45\x54\xbc\x76\x5d\xef\x4c\x0e\xbc\x6e\xa3\xba\xc9\x03\x3d\xef\xce\xfa\x12\x94\xe9\x04\x42\x92\xd6\x93\x9d\x8e\x0e\xa4\x1e\x9e\xd0\x2f\xca\xbc\xc0\x65\xfd\xf6\xa0\x1e\xf0\xd6\x4e\x40\xd2\x84\x4b\x7e\x2f\x92\xe2\x62\xb3\x42\x3d\xcc\xba\x04\x1f\x5d\xaf\xe8\xf2\xa0\x17\x20\x38\x9a\x78\xe8\x81\xbf\xd9\xb0\xc1\xf0\xb4\xa0\x16\x10\x96\x00\xd5\xe0\x45\x01\x4e\x4e\x5b\xbf\x9b\x10\xad\xc3\xa2\x91\xd7\x36\xbf\xd0\xf9\x86\xd9\x89\xbb\x5c\x36\xc2\x9a\xe3\x16\x5a\x72\x70\x61\x0f\x0b\x18\x35\xd4\x73\xed\x26\x98\x78\xd7\xde\xac\x38\x4e\xd6\x96\x40\x82\x9f\xa1\xfa\x24\xe2\x45\x5b\xfd\x26\x00\x23\x0b\x3a\xd6\xb4\xb1\x16\xa5\x53\xa3\x0e\xe4\xb0\x21\xb0\xed\xd7\x1b\x52\xcb\x05\x46\xc7\x4c\x99\xae\xc2\x44\x10\x7b\xec\xff\x4f\x8a\x36\x1f\x2e\x38\x77\x2a\x80\xfa\x55\x87\x41\x34\x7a\xad\x55\x0d\xc0\xb2\xd9\xcf\x79\xb4\x82\x70\xd1\x1e\x89\x24\xd0\x0d\x75\x82\x26\x57\x70\xe4\xda\xe1\xf1\xc6\xfe\x59\x0b\xea\x64\x85\x36\x7a\x54\x43\x5a\x60\x24\x28\x13\x64\x5f\x32\xdf\xca\x47\xdc\xbb\x5e\xb3\x79\x2a\xee\xa5\x5d\x2e\x20\x72\x58\x16\x22\x57\x92\xdf\xbf\xd2\x16\x70\x01\x67\xec\x01\xc3\xca\x64\xda\x80\x0a\x34\x59\xb4\x65\x36\x6c\x28\x45\x1c\xd0\x95\x0d\x71\xed\x1d\x42\xbe\xe5\xc9\x5b\x24\x81\x58\x64\xb2\xee\xed\x87\xab\x3c\x79\x69\xe4\x30\x2a\x23\x2f\x12\x3c\x67\x8d\xa0\x15\xf7\x0b\xac\x0a\x94\xb1\xfb\xbb\x3a\xcf\x93\x3a\x2e\x1e\xa1\x6a\xf9\xa1\xc6\x03\xeb\x54\x45\x12\x37\xfa\xcd\xc0\x6a\xec\x93\x0a\xf8\x2d\x42\x35\xf2\xf9\xcf\xb6\x87\x44\xdb\xdb\xcf\x08\x6e\x03\x48\xbd\x87\x5a\x3e\x89\x4f\x3f\xb4\xa1\x5e\x86\xcb\xdb\xd5\x0c\xb8\x9b\xf8\x45\x4d\xde\x6b\xd1\x4c\x0a\x99\x60\xf9\x82\x43\x75\x5d\x7e\x16\xc7\x69\x22\xb9\x9e\x07\x6b\xe1\x80\xc8\xd6\x2c\x93\xdd\x62\x8c\xc7\x65\xb3\xbf\x76\x32\x2a\x70\xe2\x49\xa6\xd0\x8d\x62\x49\x4b\xed\x3e\xce\x34\x57\x75\x61\x50\x73\x6d\x98\x4f\x39\xbc\xca\x8b\xb4\xd4\xc6\xad\xcc\xc1\x0e\x64\x56\xe3\xa5\xb1\xa8\x63\xca\xa7\x0d\xca\xc1\x1e\x00\x40\x8f\x3d\xd2\x09\x85\xd9\x70\x1a\x06\xbb\xa7\x51\x81\x70\xfa\x44\x54\x2e\xd2\x3e\x20\x8b\x8c\x0b\x44\x62\x44\x21\xc3\x1d\x75\xb5\xfa\x97\x3c\xc2\xff\x1a\x93\x87\x0b\xb2\x71\xab\x4d\x48\x27\x3c\x6d\x99\x91\x47\x37\x0a\x2d\xdf\x8e\x7e\x91\xa0\x2d\x79\x21\xf0\x5f\xbf\xd6\x79\xf1\xe8\xc9\x00\x3e\x2a\xcb\xfc\x55\x7c\x98\x25\x91\xdc\xc7\xaa\x1b\xa6\x14\x58\x18\x95\xc2\xb1\x58\x3c\x36\xd7\x6b\x0b\xaa\x0e\xc8\x84\x87\x73\x67\x1f\x2a\x19\x8e\x61\x23\xd1\x00\xfc\xaa\x46\x35\xde\x18\x42\xe3\x3b\xac\x59\xd7\xc5\xea\xb4\x2c\x5d\x17\xa0\x79\xa9\x29\x8b\xca\xb2\x9a\xf8\x32\xd2\xfd\x04\x3e\x48\x75\x1a\xfb\x0a\xed\x7c\xf5\xcb\x70\x31\x71\x11\x89\xfc\x81\xfa\xc4\xc7\xca\xfc\x9f\xbf\x4f\xfc\xa4\xed\xe5\x42\xfb\xd0\x08\x65\xaa\x7f\x03\xb3\xaa\x5b\x3d\x1b\x9b\x6e\x06\xe8\xde\x2f\xfe\xa9\x5b\xfc\x14\xdd\x42\x70\x4a\xd2\x2d\x27\xd5\x16\x25\xf8\xf3\xec\x66\xba\x14\xad\x22\x62\x29\xd3\x04\x3b\xab\x0d\xb9\xea\x15\x02\x39\x90\xdf\xfe\x3d\x79\x8c\x43\x14\x4a\x9f\x1a\xb9\x2e\x3d\xbb\x43\xa6\x73\xe0\xfc\xf5\x4e\xd8\x85\x66\xa8\xf3\x6c\x54\x34\x6f\xbf\x39\x03\x4c\xfa\xc6\xcc\xaa\x6f\xf4\x69\x10\x2e\x0e\x5a\x4e\xc1\x01\x14\x9f\x37\xa7\xb7\x88\x7d\xbd\xf8\x20\x45\xed\x67\x69\x71\x97\xd5\xf2\x0c\x6e\x6a\xf6\xd1\xe0\x36\xe1\x1e\x28\x6a\x34\xb1\xf5\xd8\x8c\xa8\x03\x31\x61\x91\x3a\x63\x44\x24\x43\xfd\xe2\x1e\x67\x3d\x3c\x48\x85\x88\x9d\x85\x8c\x30\xf2\xdc\xcb\x4f\xe2\xd9\xab\xd5\xff\xf8\x67\x9a\xb6\xc3\x4b\x96\xef\xb1\x77\xe7\x38\x24\x56\x22\xe1\xef\x52\xcb\x83\x9c\xf6\x04\xdf\xd8\x2f\x4a\x6a\x76\x29\xf1\xed\x0c\xa7\xef\x74\x27\xa0\x1b\x4b\x86\x5e\x44\x9f\x0c\x43\xa2\x0d\x9f\xbc\xba\x41\xdf\x4a\x9c\x5c\x7f\xe5\xef\x3d\xdb\xbd\x5b\xdc\x62\xef\x8c\xcf\x09\xa8\xc7\x2e\xc3\xb1\xc7\x09\x3f\x42\xe9\xe5\x27\x29\xde\xa3\x01\x9d\x58\x41\xda\xe2\x80\x0f\xa7\xbc\x40\xdb\xb8\x7e\x7b\x98\x9a\xfc\x4a\xf6\x21\xbf\x2e\x6e\xfe\x72\x72\x45\x69\x00\x4d\x34\xc0\xdf\x84\x07\xb7\xd3\x95\x90\x80\x98\x44\x3a\x0c\xbb\xdf\x64\x20\x9b\x02\xd6\x72\x8d\x9e\x48\x0c\xa1\xc7\x4d\x21\x98\x75\x3d\xa0\x01\xae\x45\xd1\x4b\x86\xa2\xcc\x9f\x4b\x5c\x55\xd3\x46\x97\xad\x71\x99\xc6\x19\xaa\x25\xd3\x6e\x9c\xa2\x67\xfc\x70\x28\x93\xcf\xff\xdc\x68\x04\x0f\xe4\xf7\xef\xd5\xcb\xf3\x97\x63\x9a\xac\xb7\x7b\x54\x56\xb8\xfe\xfa\x9f\xfe\xff\xff\xd3\xbf\xbb\xf9\x4b\xf5\xf2\xec\x1d\xd3\x24\xab\xbe\x5e\xed\xeb\xba\x78\xf8\xfd\xf7\xd7\xd7\xd7\xe9\xeb\x7c\x9a\x97\xcf\xbf\x87\x41\x10\x34\x15\xaf\x28\xc8\xc3\x31\x89\xb3\xef\x10\xe0\xec\xfe\xfe\xfe\x77\xf2\xf5\xca\x23\x5a\xdb\xd7\xab\x70\x71\xe5\x51\xc5\x8d\xfe\xbd\x4d\x50\x55\x7d\xbd\xaa\xea\xf2\xb0\xad\x0f\x25\xf6\xe3\x6d\x9e\xf9\x49\x8e\x1a\x66\xbf\xda\xfc\x85\xac\x87\xcd\x14\xfe\xee\x3f\xa1\x0a\x77\x13\x3e\x7b\x37\xc1\xf1\xd1\x39\xd1\x1b\xc2\x86\xe7\x0d\x90\x3b\x94\x6d\xdf\xfc\xaa\x88\x33\x6f\x5e\x79\x71\xb6\x8b\xb3\xb8\xc6\x5e\x73\x16\x47\xe5\xba\x6d\x2a\x5c\xae\xab\xba\xcc\xbf\x63\x3f\x42\xd5\x1e\x95\x25\x7a\x7b\x08\xbc\xc5\x42\x2c\xcd\x77\xbb\x0a\x37\xfa\x29\x2b\x6b\x70\x6c\x51\xf1\x40\xa6\xa3\xd3\x6d\xfd\xbc\x8c\x9b\x25\xbe\x0c\x3e\x79\xcb\xe0\xd3\xfb\x5f\xbf\xe3\xb7\x5d\x89\x52\x5c\x79\xbd\x34\x9e\x82\x4f\x27\x67\x3a\xde\xc3\x25\x00\x3d\x9f\x7b\xb3\x19\x00\xee\x2f\x82\xf7\xe5\x00\xf4\xfe\x6c\x16\xbc\xdf\x0e\x6a\x61\xb6\x0c\xde\xeb\xdc\xbd\x85\x30\x0c\xde\x1d\x86\xa7\x8a\xd3\x22\xc1\xed\xf8\x74\x87\x88\x32\xaf\x51\x8d\x3f\x07\x11\x7e\x9e\x34\x0d\x6b\x5f\xe6\x2b\xfa\xed\xfd\x2f\xbf\x53\xbe\xfb\x4b\x84\x77\xd5\xe6\x2f\x05\x6a\xd4\x65\x42\xd0\xd7\xab\x4f\xe1\x3c\x08\x82\x2b\xf6\xdb\x67\x7c\x3d\xbf\xf2\x76\x71\x92\x7c\xbd\x6a\x96\xe3\x95\x17\x47\x5f\xaf\xd0\x95\x17\x7d\xbd\xfa\xd7\x59\xe8\x2d\x93\x95\x37\x7f\xb9\x4b\xfc\x95\x37\xf7\x57\xfe\xfc\x3f\xdf\xfd\xb8\xfa\x7d\xf3\x97\xdf\x29\xf6\x43\x85\x3d\xb2\x48\x1e\xf6\x25\xde\x91\x06\x50\xcf\xc2\x20\x8c\xdf\xa0\x18\x53\x97\x2f\x06\x42\x42\xf5\xf2\xbc\xf9\xe7\x89\x25\x31\x96\xf8\xa9\xc4\x05\x46\x8d\xc4\x61\x7f\xe9\xea\xb9\x68\x04\xe6\x2e\xc0\x8b\xce\x33\x98\xdc\xe6\x92\x7d\x6e\x9b\x27\x09\xbb\x13\x25\x9b\x2e\x18\x1f\xb7\xcc\x8f\x6f\x3e\x3e\x16\x79\x85\x23\xbf\x99\x84\xaa\x8d\x4b\x4e\x3e\x1d\x8a\xaa\x2e\x31\x4a\x59\xf1\x49\x34\xab\x3d\x97\x71\xd4\x1e\x0c\xc8\x0f\x5e\xda\xb4\x7d\x48\xb3\x8a\x04\x13\xf2\x88\x4f\x27\x29\x6e\x2d\xc4\xfa\xf7\xb6\x6a\x99\xbf\x56\x7c\xa5\x2a\xb5\x2c\x9f\x50\x89\x51\xf5\x70\xc5\x3d\xcd\xa9\xeb\xd1\x95\x77\x45\x2f\xe4\xda\x02\x29\xda\x31\x89\x17\x02\x04\x1f\x52\x5e\x5c\x36\x87\x24\x50\x71\x30\x1d\xae\xb4\x79\x12\x0d\xf7\xdd\x65\xb9\xe3\x24\x49\xee\xd8\x96\x19\x03\xe1\x94\xe9\x93\x60\x4e\xe2\x90\x3f\xcc\xd4\xc9\x7b\x98\xd1\x21\x6e\x46\xf6\x81\x8e\x6b\x67\xc8\x8c\x6b\x9c\x32\x23\x65\x55\xa3\xb2\x96\xa6\x4f\xfa\x40\xad\x9c\x15\x4e\x76\xac\x80\x29\x03\x41\x10\x0c\x18\x82\xac\xde\xd3\xbf\x3f\x87\x36\xae\x85\x01\xb5\x41\x10\x81\xe4\x51\x08\xad\xa3\x40\x99\x09\x1c\x05\x9c\x45\xd0\x18\x34\xc5\xc2\x08\xe0\x2c\x1a\xd2\x69\xc5\xff\x62\xc0\x28\xb8\xd4\xd4\x87\xc5\x56\xab\x0b\x11\x76\xe4\xb1\xeb\x86\xfb\xd8\x8a\xf7\xe8\x3d\x4e\xb8\x37\xf5\xbe\x73\xe6\x7c\x89\xab\xf8\x29\xc1\xa3\x18\x66\xee\xca\x30\x73\x17\x86\x99\x4f\x8c\xcb\xa6\x99\x75\x62\xf0\xd1\x99\x28\x14\x98\x88\xf5\x4f\x85\x91\xef\x06\xf8\x0d\x03\xe1\x1a\xf5\x16\x41\x60\x3b\xe1\x93\xc2\x79\xd2\x25\x83\x80\x66\x9c\xdc\xd9\x44\xc9\x18\x31\x64\xa8\x66\x93\x4a\x4a\x15\xf9\x79\xf5\x6a\xc0\xe6\x66\xc3\x4a\xae\xc3\x46\x75\x41\xa8\x39\xa0\x17\x5e\xa4\xb8\x7d\x5f\xa6\x13\x91\x10\xbf\x76\x5c\x67\x34\x0c\x83\x3a\xd5\xd6\x16\x8f\x62\xf7\x38\x75\xee\x1e\xcd\x93\x67\x22\x5d\xf8\xaa\x90\xe5\x45\x40\x0a\x9c\x21\xfb\x89\xc4\x94\x63\x6a\x11\xda\x46\x6e\x5f\xa3\xaa\x8d\x6f\x90\xd8\x46\x86\xa9\x0d\x7d\x70\xf6\x79\x1b\xb9\x5d\x0f\x41\x2a\xf4\xc9\xc6\xb1\x2e\x30\x66\x2e\x1b\xa1\x4d\xb8\x22\xf3\x0e\xc9\x25\x9f\xcb\xf0\x9d\xe1\xb5\x44\x05\x77\x12\x52\x0b\xc6\xad\x0e\xef\x7a\x2c\xd7\x5d\x3b\x33\x93\x1d\x12\x46\x6a\x9d\x51\x33\x94\x8c\x0c\x72\x2e\xbf\xf4\x58\x5e\x66\x0d\xb3\xa0\x75\x1f\xb0\x92\x24\xcc\x17\xe1\x6d\x29\x50\x48\xd9\xc6\xdd\x18\x3f\x66\xd3\x2c\x8f\xb0\xe4\xb9\xe0\x3e\x0e\xa6\xba\x7d\x3d\x55\xeb\x89\x56\xdf\xf9\x39\x9d\x19\xd9\x8f\x11\x5d\x00\xa8\xef\x42\x3a\x0a\xdd\x19\x32\x37\xde\x74\x9b\x17\x6f\x3e\x8d\x23\xd9\x06\xa0\x34\xef\xe0\x16\x70\x75\x4b\x07\x40\xbb\x40\x95\x42\x82\x71\xbe\xef\x8b\xaf\x12\xc6\x4d\x86\xd8\xa2\xfb\x5c\x40\xb5\xec\x53\x21\xd6\xb8\xd8\x4c\xc8\x12\xcf\xb9\x2b\x7d\x95\xac\x72\x15\xea\x08\xb1\x91\x0c\x31\x3a\xb9\xd2\xea\x42\x9e\x4c\xd1\xc5\x36\xd4\x36\x16\x67\x46\xb6\x06\xbf\xe9\x99\x59\x85\xad\xdb\xd0\x9c\x2c\xcc\x26\x03\xf7\x0c\x1a\x2f\x7d\xb7\x13\xa1\x1a\xd1\x13\x99\x84\xa2\xcc\x13\xf7\xf6\xea\xfc\x3b\xce\xfa\xa1\xc9\x65\x56\x89\x5f\x30\x4a\xa0\x27\xa8\xe7\x73\x5c\xbf\x20\x70\xae\xeb\xcc\x7f\x5c\x44\xf0\xfb\x82\x21\xda\x3f\xb9\x7e\x3e\xab\x37\x83\x30\x68\x7d\x72\xaa\xdd\xf6\x6c\xf6\x0e\xf3\x57\xd3\x39\xfa\xbc\x00\xb2\xec\x1a\xab\x90\x1b\xfa\x41\x35\x28\xb9\xe6\x1a\x2a\xcf\xf6\x12\xa5\x56\xe8\x23\x49\x85\xef\x23\xa8\x8d\x73\x9b\x55\x35\xca\xb6\xc3\x88\xb3\x55\xee\x23\xd4\x56\xb7\x8f\x68\x6d\x31\xf7\x52\xaa\xd5\xe8\x23\x4f\xab\x60\xa4\x09\x5c\x4a\xd3\x24\xce\xbe\xa3\xa7\x04\x5b\x48\xeb\xa9\x68\xa4\xb0\xa7\x9e\x91\x50\xe3\x1a\x55\x89\x75\x02\x65\xde\x2b\x0e\x90\xcc\x1b\x06\x5c\xe0\xa6\xa6\x8d\x60\x52\xb3\x46\x28\xf6\x6e\xc9\x74\xc7\xc0\xee\x15\xda\x40\x47\xa0\x77\x4d\xc8\xdc\x5e\x6c\x9e\x33\x06\x18\xf5\xa5\xef\xd8\xd3\xe4\xd0\x43\xa1\xfd\xa4\xc7\x7c\x0b\xe2\x6c\x8f\xcb\xb8\x7e\x17\x7d\xe5\x9d\x8f\x5a\x1e\x55\xf6\xd1\x68\x83\x8e\x45\x87\xe1\x98\xcf\xbb\xb2\x50\xf1\xd8\x6f\x34\x94\xd7\xee\x23\x95\x63\xba\x0f\x74\x87\x8e\x91\x68\x1a\xd9\x3d\xfc\xc0\xa3\xb5\xee\x5c\x11\x6a\xaf\x47\x3d\x87\xdb\xea\xa9\x24\xb6\x63\x0c\xe6\x2f\x07\x3f\x3a\xe3\xdc\x68\x4b\xa8\x31\x70\x4c\x2d\x38\x9c\xc6\x09\xa8\x7f\x3a\xa3\x9b\x92\x16\xa4\xb5\x20\x59\xa8\x7f\xea\xd0\x0d\xa0\xeb\x03\x27\x60\x30\x15\xa3\xa7\xd0\x90\xe9\xaf\x4d\xf1\x37\x19\x3d\xa7\xa8\xaa\xe2\xec\xf9\x02\x33\x19\x25\x1d\xb2\x31\x93\x08\x10\x32\xc0\x90\x64\x6e\xba\x67\xd6\x8c\xcd\xf6\xda\xa0\xf4\x26\x01\x49\x13\xe2\xa7\x60\x7e\x3f\x76\x76\x58\x1a\x9e\xcb\xcc\x4e\x8b\x6c\xc4\xec\x40\x84\x0c\x98\x1d\x73\xd3\xf6\xd9\x31\x37\xdb\x3b\x3b\x7a\x93\xd0\xa3\x72\x74\xb7\x9b\xdf\x8e\x3e\x63\x97\x31\x79\x0f\x76\x99\xe9\xe9\xb0\x8d\x98\x1f\x90\x94\x01\x13\x64\x69\xbc\xe7\xcc\x6f\x6e\xb8\x77\x8a\x80\x46\x81\x39\xda\xde\xce\x17\x8b\xe5\xd8\x39\x22\x1a\xe7\x65\x26\x88\xa1\x1a\x31\x3b\x3a\x11\x03\xa6\xc6\xd4\xac\x7d\x5e\x4c\x4d\xf6\x4e\x8a\xda\x9c\x25\x15\xd2\xa8\x19\xf9\x56\xe2\xe4\x6b\x8a\x1f\x47\xdc\x8f\xdb\xea\x5a\x47\x03\xa8\x67\x89\xbb\x3d\xf0\x5c\x22\x1f\x36\x2d\xc7\x0c\xeb\xa9\x54\x06\x3a\x49\x24\x69\x21\x95\x0e\x59\x84\xcb\x24\x1e\x60\x1d\x6c\x66\x16\x45\x51\x89\xab\x4a\x62\xa5\x01\xd5\xb5\xab\x9a\x01\x75\x49\x97\xc7\x54\xd6\xf9\xb3\xb3\xcc\x5e\x06\x1f\x35\x22\x5f\x06\x17\x71\x93\xbd\x0c\xa6\xbc\xac\x2f\x84\xa9\xcc\xeb\x7c\x9b\x3b\x6e\x2b\x26\x3e\xb1\x56\x70\xbf\x00\x84\x79\x61\x80\x30\x34\xcc\xfe\x90\x1b\x47\x7d\xbe\x07\xa9\x99\xca\x0c\x0f\xa9\xab\xce\xe9\x90\xba\xe6\x59\xd4\x9d\x6f\x2c\x33\x08\x00\xbb\x5d\xc1\xda\x66\xae\x77\x4f\xb1\xce\x5a\xff\x5d\xaf\x69\xc6\x1c\x34\x74\x70\xb6\xfa\xeb\xc1\x33\xd5\x5f\x4f\x9f\xa5\xf3\xb7\x4f\x6f\xba\xcd\xd3\xa7\x38\xc3\x91\xcf\xe7\x15\xb8\x8f\xe0\x9b\xcb\x48\x39\x51\xdb\x70\x5a\x2f\x01\xdd\x49\x73\x66\x77\x07\x62\x80\x9b\xc6\xa1\x84\xf4\xcc\xa6\x85\x08\x6b\x6c\x18\xf1\xe2\x5b\xbf\xb3\xd1\x56\x83\x76\x39\x41\xa0\x92\x98\x26\x07\xb0\x79\xf7\x89\x3e\x0f\xb3\xe2\xf8\x6e\x18\x5f\xa8\xbb\x60\x90\x12\x21\x4e\x5c\x77\x23\xa9\xe6\xe2\x35\x25\x03\x11\xef\x2f\xff\xc0\xe9\x89\xb8\x04\xc7\x49\x5c\xbf\xf1\x50\xaf\x5a\x18\x50\xa0\x26\x8f\x05\xa7\x60\x60\xfe\xc5\xdc\xc6\x8d\x0e\x75\x0e\x37\xdb\x2e\x3a\xf9\xd6\x78\x0d\xe1\xe2\x4f\xf0\xff\xe7\x7f\xff\x1f\xde\x80\x7f\xaf\xac\x19\x40\x79\x58\x3d\x1e\xab\xfd\xfa\x66\xba\x2b\x31\x26\xfa\x1b\x4d\xe2\xc3\xe2\xae\x88\xd4\x93\x12\x6b\xc8\xd5\xd2\x93\xb2\x88\xc6\xd9\x2e\xf7\xa2\x68\xfa\x03\x97\xb9\x14\x83\xd5\x06\x57\x47\xd3\x98\x74\xd9\x47\x49\x92\xbf\xf2\xe0\xda\x5d\x71\x84\xb3\x37\x9e\x7b\x57\x9b\x3e\xfb\x64\x69\xe3\xce\xe2\xfe\x29\x9d\x04\xf2\x9c\x4b\x30\x38\x95\xdc\x16\xc2\xb0\x4d\xa1\x22\x20\xd1\x32\x76\xa4\xa8\xfa\x3e\xfc\x6d\xdf\x4b\x8c\x5f\xff\xf7\xfc\xf8\xf5\x2a\xf0\x02\x2f\x5c\x78\xe1\x42\x7e\xbf\xd4\xff\xf6\x8f\xbd\x8a\x6a\x2a\xf9\xe5\x21\xc1\x5f\xaf\xf0\x0b\xce\xf2\x28\xba\xf2\xb6\x49\x5c\xa8\x65\xec\x25\xd4\x62\xba\xfc\x97\xdb\xe6\xbf\x5e\x38\xbd\x9d\x7b\xb7\xd3\xd5\xcc\x9b\x79\xb3\x70\x3b\x6b\x7e\x2e\xa6\xf3\x7b\x6f\xe5\xdd\x4e\x97\xde\x6c\xd6\xfc\x5f\x75\x3f\x0d\x6f\xfd\xf9\x74\x36\xf3\x66\x33\xff\x76\xba\xdc\xfa\x0d\xa0\xdf\x00\xfa\xab\xa6\xc0\xa7\xe5\x3f\x1a\xe4\xb3\xdb\xad\x1f\x4e\x6f\x57\x5e\xe0\x2f\xfd\x70\x1a\x2e\xfc\xa5\xbf\xac\xe8\x1f\xde\xb2\xf9\xd7\x6b\x7e\x78\xcd\x0f\xfa\x47\x53\xf6\x23\x0d\xfc\xbb\x06\xef\xaa\xa9\x38\xf7\x66\xd3\xf9\xc2\x9f\x7b\xf3\xaa\xf9\xc3\x9b\xd3\x7f\x7c\xfa\xc3\xa7\x7f\xf8\xcd\x1f\xf3\x1f\x7c\xc8\xd8\x8b\x30\xe1\x39\xd5\x9f\x93\xf2\x0b\x4e\x8a\x59\x15\x11\x22\x74\x8a\xdb\x8a\xe8\xc5\xd5\x25\xe6\xd6\xae\x13\x2e\x94\xe6\x16\x0c\xd5\x4b\xdf\xcd\x91\xac\xf7\x4a\xf8\xa5\x27\x54\x61\x72\x06\xee\x6d\xbe\x8b\xb7\xf2\xff\x34\xba\xee\xff\xcd\x3f\x7b\x57\xef\x4e\x84\xb5\xd5\xff\x3f\x0a\x21\x61\xf8\x69\x59\x44\xf5\xc7\xea\x5d\xc6\xc3\x3a\x9a\xee\xf2\x44\xcc\x67\x64\xca\xf0\xb5\x96\xb5\x06\xf9\x0a\x8c\xa1\x02\xf6\x09\x08\x2f\x79\x50\x40\x5e\x34\x92\xfe\xf0\x80\xc7\x34\x4b\xc2\x84\x47\x04\x2f\xd5\x20\xd4\x30\xb0\x94\x2c\xa1\xf3\x2c\xb4\xa3\xb6\x45\xaa\xb8\x50\xee\x26\x3a\x55\x4c\x47\x4b\x71\x8d\x48\x30\x19\xa2\xa4\xa9\x1d\x8c\xf0\x0e\x1d\x92\xda\xa5\x8a\x99\x70\xf6\x74\x51\xfa\xfd\xae\xc4\xaa\x69\x1f\x61\xaf\xf8\x17\x79\xdf\x6c\x66\x84\xc5\x1f\xc2\x29\x4b\x97\x10\x92\x67\x9c\x7a\x2c\x76\xd9\xc7\xba\x29\x12\xd6\xfc\x5f\x53\x1c\xc5\xc8\xfb\xdc\xc5\x09\x5c\x84\x41\x71\x9c\x9c\x78\xef\x28\xa7\xc4\x79\xc6\xba\x57\x52\x2d\xba\x7b\xa5\xf6\x39\x9c\xf4\xa7\xd6\xf8\xad\x59\xe9\x7e\x97\x5f\x83\x25\x15\x92\x0e\x2c\x7a\x96\x48\x31\x25\x84\xa4\x77\x0c\x6e\x2f\x12\x73\x2c\x75\xac\xf7\x6e\x0e\x22\x74\x12\x03\x79\xfa\xf7\x41\x10\x8c\xc8\xe3\xc3\xd2\x62\xb1\x49\x6d\x73\x04\x09\xd1\x87\x78\xf8\x26\x22\xfe\x04\x9d\x5d\x78\xdf\xda\xbe\x8c\xbd\xeb\xf4\x78\x2e\xd5\x07\xd0\xc0\x56\xb7\x4c\xc4\x17\x6f\xa1\x12\x41\x24\x33\x4f\x98\x83\xd3\x91\xf9\x8a\xda\xf6\xa8\xd8\x71\x8b\x69\xca\xcf\xe2\x63\x72\x3b\xb5\x0d\xd2\xc8\x58\xb7\x34\xc4\xf5\x33\xe1\xda\x2e\x9a\x5a\xd4\x94\x55\x0e\x27\x77\x5e\x95\x57\x81\x5e\x2a\x5c\xd0\xdd\x95\x37\x27\x0e\x03\x6b\xd9\xd5\x8b\x7c\x0e\x85\x92\xd2\xfa\xe3\x45\x51\x87\x38\xfa\xb0\x27\x30\xca\xa3\x0d\xf2\x53\x7a\xd4\x1d\x48\x24\x01\x4f\x5f\x79\x0c\xaf\x96\x56\x23\x4c\xb7\x79\xdf\x5c\xc9\x9b\xdd\x74\x8e\x53\x85\x58\x89\x9d\xfd\xfc\x50\x37\xc7\x9c\x76\x78\xdb\x18\xbc\xa1\x12\x27\x9c\xfe\xd6\x12\x69\xe9\xd2\x73\xb5\xa4\xd2\xd3\xa9\x95\x66\x45\x8b\xad\xd0\xdf\x62\x2b\x77\xc5\xf1\x1d\x22\xd9\x8b\x48\x1a\x0e\x79\x5b\x02\x64\xbf\x18\x2a\x47\x48\xbd\x4a\x23\xb2\x2c\x95\xd5\xcd\x70\xdf\x40\xed\x15\x5a\x9e\x57\x35\x35\x65\x47\x19\x13\x07\xf9\x8e\x3c\xd5\x57\xa2\xdf\x18\x91\x1b\xc2\x81\xaf\xe5\x6c\x50\x40\xf5\x93\x1c\x76\x97\x6d\xf5\x33\xea\x44\xb7\x96\x33\x96\x82\x39\x44\x80\x48\xbe\xa3\xb2\x9a\xf1\x7d\xa5\x61\x16\x8f\xc4\xda\x27\x7f\xcd\xc8\xa3\x59\xe6\x4a\x60\xa1\xbf\x99\x14\xd5\xa7\x80\x5d\x71\x3b\xd6\xda\xa1\xed\x22\x08\xdf\xdb\x5b\x57\xc7\x6a\xfc\xfa\x15\xe0\x59\x53\xb2\x65\x29\x75\x01\xc4\x04\x09\xad\xc5\x78\x00\x64\x29\x16\x7a\xab\xcb\x78\x05\x62\x62\x50\x4a\x62\x9e\x7b\x98\x75\x9d\xda\x8d\x6a\x35\x89\x32\x84\x8a\xa4\x57\x15\xb5\xb7\x66\x8a\xd9\x6b\x73\xfa\xa7\x37\xf3\xc8\x86\x29\xff\x12\x32\x6a\xb0\x6d\x3e\x5c\x35\x5b\xec\x28\x8e\xea\x17\xaa\x5a\xd8\x5c\xf6\x70\x5d\x89\x9b\xcb\x4b\xd5\xc0\xb9\xf4\x79\xc5\x13\xae\x5f\x31\xce\x0c\x23\x2a\x0a\x2c\x1a\x2a\x0c\x04\x53\xd3\x63\x8a\xe7\xba\xf6\x60\x53\xd5\xa8\x8e\xb7\xda\x56\x00\xcf\x64\xab\x67\xb2\xd9\x6c\x34\x4d\x6a\x44\x63\x69\xb1\x77\x31\x4e\xa2\x0a\xd7\x8c\x87\x96\x06\x16\x8a\x22\x28\xc3\x71\x3f\xf7\xe8\x9c\x32\x9d\x1b\xf8\xae\x91\x60\x52\x6e\xcd\x05\x59\xf9\x21\xfb\x8f\xa4\x83\x17\x25\xf6\xe9\x86\xe8\x44\x54\x51\x62\x6f\x9b\x47\xf8\xf4\x9a\x97\x11\x9d\xf9\xa7\x12\xa3\xef\x7e\xf3\x1b\xac\x21\xbd\xc9\x31\x9d\x29\x1b\xe9\x4f\x62\xa1\x35\x3a\xde\x90\x7d\xac\xeb\x27\x39\x55\xdd\xb3\x44\xa2\xde\xcc\x20\x0b\x60\xe5\xe5\xce\x2c\x38\x80\x69\xef\x13\x12\x91\x98\x16\x9e\x55\x53\x12\xc3\x07\xf0\x3e\x2a\x58\x36\xc5\x53\x94\xf5\xcc\x34\xdc\x90\x5b\xf7\xdb\x70\xeb\x93\x78\xb8\x18\xd1\x84\x1c\x77\xd8\x09\x14\x60\x0e\x41\x31\x11\x94\x92\x31\xf4\xf0\x1d\x6f\x84\xdd\xbb\xad\xfb\x25\x8a\x1c\xba\xd3\xb6\xe4\x0e\xfa\x25\x8a\x4e\xf2\x56\x3b\x86\x4a\xb6\x3b\x8f\xea\x21\xab\xeb\xd8\x43\xde\x92\x3b\xa8\xd0\x43\xe6\x02\x37\x86\x4a\xae\x49\x8c\xea\x22\xaf\xec\xd8\xc7\xb6\xad\x01\xb0\x42\x2f\x99\x16\x33\x94\xd0\xbe\xd6\x2e\xf8\xa8\x71\x28\x69\x4a\xde\x43\x10\x62\x48\x02\x49\xc3\x58\xba\xdd\x31\x51\xb8\x01\xc9\x24\xe1\x9b\x2a\x87\xcb\x2c\xd9\x66\x16\xff\x68\xf6\x1a\xa6\xaf\x90\x51\x37\x14\xab\xf7\x4a\x6b\x39\xeb\x21\xd1\x5c\xfa\x32\xd8\x16\x28\xd3\x87\x43\x28\x3f\x41\x31\xe4\x9a\x16\x3d\x16\xed\x47\xd6\x80\x44\x13\x12\x39\x41\x9a\x8f\x42\x06\x3b\x07\x6d\x75\x78\xb5\x2c\xcf\x7c\xb1\x2a\x3f\x4f\xf4\xa6\x22\x17\x4d\xb4\xc2\x86\x24\x27\x98\xee\xf4\xc1\x95\x43\x8a\x68\x29\xbf\xb9\x38\x4b\x9a\x32\xa9\xd6\x96\xe9\x51\x2c\x3c\xb4\xb6\x72\xf7\xaa\x5e\x66\x3b\x66\xa1\x07\xc3\x70\xd3\x24\xf4\xea\xe5\x2e\x7d\xbf\xcb\x59\x14\x15\x05\x46\x25\xca\xb6\x72\x44\x3a\xd1\x7a\xc7\xd8\xaf\x4b\x14\x02\x5d\x17\x9f\x24\x0b\xbe\xa1\x55\xfd\xa6\x99\xde\xd2\x0a\xa2\xa9\x38\xd4\x34\xa1\xcb\x9e\xdc\x15\xa8\x9c\x33\x10\x6d\x9a\xff\xb8\x24\xb6\xea\xd2\x04\x0e\x40\x44\x2f\x58\xe4\xe5\x29\xe5\x39\x87\xe7\x19\xcc\xc6\x0d\x1c\xf1\xa6\xb7\x38\x9d\x88\x69\xc6\x5b\x63\xc0\x5d\x1b\x60\x19\x9c\x77\xa6\x74\x36\xf5\xa5\xea\x52\xba\x77\xfd\x9c\x00\xe1\x52\x14\x59\xb2\x54\xc5\x65\x0b\x87\x42\x5e\x06\x9f\x0c\xc9\x05\xee\xc4\xec\xcb\x92\x25\x49\xfa\xf2\x3e\xa5\x34\xf8\x4f\x88\x47\x0b\xa6\x31\x20\x77\x79\x99\x9a\x32\x16\xc2\x86\x98\x71\x67\xe4\x0b\x9e\x80\xdb\x59\x5b\xd0\xe0\xe5\x6b\xf8\xa6\x74\x2d\x9f\x0a\x7d\x1a\x5d\xa5\x1b\x06\x7a\x99\x45\x2e\xff\xaa\xbc\xac\x27\xda\xb0\xa8\x00\xca\x30\x49\xf9\x54\x9b\x7e\xe5\x65\xdc\xd0\xba\xcf\xcb\xf8\x47\x9e\xd5\x28\x91\xbe\x46\x71\xc9\x12\x46\x96\xf8\x05\x97\x15\xee\xba\x2e\x7c\xca\x5f\x7d\xfe\xd9\xf2\x49\x18\x00\xa5\x97\xf2\xa4\xb7\x27\xc6\x76\x2f\x58\xdd\xd2\x13\x63\x37\x0c\x74\xd1\xe9\xd7\x3a\xea\x68\x18\xe0\x4e\x06\x01\x0a\x9d\x56\x57\xf7\x1f\xd3\xb6\x96\xcb\x5f\x9c\x66\x96\xfa\x83\x24\xb9\x64\x16\x09\x7a\xf9\xab\x35\x62\x00\x84\x2e\x15\x24\x39\xa6\xbd\xf9\x15\x96\x9a\xf0\x37\x57\x14\x85\x26\xb5\x82\xcd\xb5\x39\xe3\xa2\xc3\xb8\xd9\x5b\x73\x1d\xed\x86\x08\x40\xa2\xc2\xc2\xc4\x9b\xbe\xa0\xe4\x80\x7d\xfe\xcc\x47\xcc\x19\xa2\x11\x60\x86\x55\x5a\x04\xba\xac\xd4\x95\x5c\x9f\xbe\x0c\x69\xd5\x58\x53\xa5\x81\x28\x16\x2d\x01\x5f\xa8\x38\xc8\xf2\x3a\xde\x62\x7d\xd0\xe4\xcf\x92\x4f\x20\x49\x50\x2e\x76\x85\x5b\xc4\x74\x52\x5b\x5b\x99\x66\xd3\x0c\x3a\x9b\x66\x20\xd9\x34\x03\xd9\xa6\x49\x9d\xf2\x80\xc6\xb4\xeb\x3f\xfb\x8a\x73\xaa\x36\xc2\xf4\x6a\x93\xc0\x23\x69\x1d\x87\x66\xcc\x10\x8b\x3b\xaf\x73\x67\xdc\xe9\x15\xaf\xb6\x48\x84\x65\x78\x4a\xd5\xfa\x72\x2c\xbf\xbe\xd6\xe4\xd3\x83\xa4\xe9\x87\xe0\x65\xd9\x7d\xa0\x8a\xed\x8f\x22\x20\xe8\x11\xdc\x0e\x22\x5b\x4b\xe5\xe3\x71\x7d\x10\xb8\x17\xb3\x6e\x12\x96\x04\xc9\x37\x43\x6b\x92\xc8\x15\x23\xea\x11\xef\x94\x2f\x80\x24\x1f\x46\xee\xa8\xea\x9c\xe6\x51\x95\x19\xe1\x1f\xe9\x11\x64\x38\x0a\x3a\xa9\x3c\xa3\x38\x6b\x8c\xde\x7b\x59\x45\xc4\x22\x6d\x99\xa1\xe3\x05\x3f\xcc\xa8\xe2\xf8\x4c\xc2\x2e\xf7\x69\x42\x40\x4a\xf1\x12\xa3\x88\x86\x9f\xce\x23\x9c\x92\xbc\xa5\x9e\x90\xc3\xd4\xa7\xca\x4e\x35\x8a\x2f\x14\xbf\x64\x87\xb1\x71\x80\xa1\x7e\xdb\xae\x83\xe8\x0c\x48\x4f\x7e\xb2\xe1\xce\xce\x43\x3f\xb9\x3f\x1f\xd5\x65\xe1\x80\xeb\x32\x45\xc3\x86\x9f\xf9\x9f\x8b\x79\x8d\x16\x8a\x28\x16\x4f\xc9\x3a\x5e\xe9\x0c\x2d\xdd\x1d\xdd\x17\xc7\x2e\x2d\xca\x42\x3e\x25\x53\x0f\xf6\x3c\xcd\x9f\x4b\x54\xec\xdf\xbc\x69\x27\x3c\x4e\xbb\x38\x49\x3a\x8d\x53\x04\x42\xc7\xb8\xa2\x9f\xc9\x59\x8f\xe6\xd9\x68\x0d\x0c\x5a\xb6\x90\x85\xb7\x50\x1a\x21\x5b\x8e\x11\x83\x0c\x4c\x4e\x0f\x27\x0e\xc1\x4e\x16\x94\xb6\x7b\x1c\xce\x96\xf7\x32\x78\x12\x67\xb8\x22\xd9\x60\xda\x3a\x76\x30\xe6\xea\x08\x77\x82\x29\x1d\xea\x28\xd5\xf1\xf6\xbb\xdc\x06\x44\x39\x81\xaa\xf1\x51\xbc\x1c\x9b\xde\xdd\x2e\x4b\x9c\xb2\xd4\xda\xd9\x76\x9f\x97\x72\x62\x03\x96\xe5\x68\xba\x4b\x50\xb5\xf7\x53\x5c\x55\xe8\x19\x8f\x92\xb1\xba\xe5\xa5\x4d\xa4\x19\x5e\x24\x61\x2d\x0f\xa5\xe9\xcd\x96\x9f\x14\x82\xbd\x42\xf3\x6b\x01\x8c\x96\xc4\x1c\xb3\x80\xad\x3b\x7c\x29\xf0\x1b\x5a\x31\x5f\xf4\x49\xf0\x3a\x9a\x13\xd7\x46\xf6\x83\x5e\xd7\xcb\x29\x39\xc2\x40\xae\xec\x57\xdb\x32\x4f\x12\x3d\x21\x81\x78\x8e\x13\xc0\x93\x38\xab\x2d\xc9\xaf\x77\xf7\xbb\xfb\x1d\x02\x4c\xb5\x68\xd1\xfc\xa3\xf4\x3a\xe0\xd3\x1c\xce\x9a\x7f\xa8\xcf\xd3\x0e\xa5\x71\xf2\xf6\x90\xe6\x59\x4e\x0e\xd3\x82\xa3\xe6\x6c\x2e\xa4\xd1\xbe\x65\x39\xe9\xee\x9b\x0e\x6d\x53\xbf\xf2\xf7\xa8\xda\xc7\xe2\xc0\x74\x37\xcd\x80\x1a\x10\x04\xa2\x15\x88\x5f\x3c\xed\xa2\x30\x9a\x09\xe5\xa2\x11\x58\xf2\xa6\x9c\x2e\xc4\x56\xa5\xbd\xef\xf9\x40\xf2\x63\x72\x33\xe6\xed\xdd\x5d\x78\x1f\x00\x14\x84\x28\xdc\xcd\x57\x62\x13\x46\x94\x74\x3b\x15\x1d\x7e\xa8\x73\x93\x57\xef\xe3\xcc\xfb\x6d\x77\xb7\xbb\xdb\x05\xc6\xda\x0d\xe1\xd9\x21\x7d\xea\x4c\xab\xab\xe8\x0e\xdd\xdd\x19\xc6\xcd\x27\x4a\x1d\x8e\xbc\x28\x7e\x91\x58\x05\x27\x78\x5b\xe3\x48\x98\xf7\x66\xea\x16\xe1\xdd\xdc\xda\x34\xb3\x3e\xd3\xea\x24\xad\x9d\x05\x78\x43\x45\xf7\xd0\x1a\x60\xb5\xe1\x84\x0e\xa2\x71\x38\x79\x67\x50\xf6\x0b\x0c\xa1\x9e\xcb\x74\x36\x91\xa8\x26\x77\x6b\xdb\xd4\xdf\xe6\x69\x8a\xb3\x9a\x33\x5b\x14\xe1\x39\xbe\x05\x21\xab\xba\x8c\xb3\xe7\x1b\xf3\x27\x3f\x6c\x83\x2b\x44\xd1\x13\x9a\x83\x58\x64\xde\x8e\xa2\x05\x5e\xde\x81\x80\x2f\xa8\x8c\xd1\x53\x82\xc1\x06\xf9\xc7\xae\xc9\x7b\x7c\xb7\xd8\x2e\x41\x4c\x11\xde\x39\x10\x96\x17\xb8\x44\x75\xde\x92\x86\xe7\xcd\x3f\x20\xe8\x77\xfc\xf6\x9a\x97\xc2\x3d\x3f\x73\xff\xd3\x21\x51\x9d\xa7\x0e\x7d\x4d\x71\x8d\xc0\x7e\xd6\xe8\xd9\x81\x74\x54\xd7\x65\xfc\x74\xa8\xe1\xb1\xfa\xf7\x03\x4a\xe2\x5d\xdc\x0d\xfa\xfd\x6e\x8b\x96\x2b\x10\x53\x51\x36\xc3\x50\xbf\x39\x8c\xea\xd3\x21\x4e\xea\x38\xb3\x4f\xcf\xdc\xd2\xa6\xc8\xd8\x34\x5e\x24\xbd\xe0\xef\xf4\x38\x71\xe1\xcd\x82\x59\x38\x33\x2f\xbc\x14\xd5\xdb\x7d\x9c\x3d\x3f\x95\x68\xfb\x1d\xd7\x27\x63\x5c\x8f\x75\x77\xb2\x14\xb7\x4d\xf0\x8c\xa4\xf4\x4c\x5d\x23\x2e\x75\xc4\x85\x33\x0c\xbe\x63\x6d\x8c\x9a\x7f\xdc\xdb\x93\x97\x18\x9a\xa3\xed\xd3\xd6\xbd\xb6\xca\x02\xc4\x68\xea\x5a\x59\x5f\x97\xab\xed\xed\xd3\x1d\x89\xe4\x1b\x61\x1f\x47\x71\xb3\xc2\xe4\xeb\x40\xae\x80\x34\xda\x50\x9b\xf8\x88\x3d\x6d\x06\xae\xe0\x04\x44\xde\x14\x37\x3d\xf5\x8b\xfc\x15\xf3\x2d\xcf\xaf\xcb\xf8\xf9\xb9\xf5\x6f\x0d\xe9\xfb\x11\xe1\x56\xaf\x4d\xc9\xae\xbe\xd7\x62\x74\x40\xbb\x7f\x10\x04\x02\xdf\xac\xc5\xad\xdd\x94\x61\x3a\x90\x28\x35\x67\x88\xe7\xbe\xb0\x6b\x41\x01\xe2\xce\xef\x4b\xf0\x7a\x9c\x12\xd3\xa6\x39\x57\xce\xb3\x42\xa3\x9b\x42\x7d\x37\x4c\x3d\x2b\x1a\x55\x81\x18\xef\xb6\x79\xb6\x8b\x4b\x9a\xb4\x72\xca\x7e\xc4\xd9\x33\xa4\x2b\xee\x76\xef\x60\x35\xaf\x90\x6f\x80\xd7\x5a\xfa\x03\x20\xa9\x9c\xe2\x06\x2c\xac\x43\xb0\x8d\x93\x38\x7d\x67\xdf\x55\x6a\xf9\xa3\xc8\xa1\x01\xc8\x1d\x15\xd7\x38\xad\x78\xf2\x28\xee\x93\xb2\xe9\x1d\x3c\x93\xe3\x67\x60\x7e\xf3\x65\xeb\xb5\x90\xa9\xd7\x67\x6e\xa3\xca\x94\x9b\xe6\x45\x1e\xe5\x19\x4e\xdf\x65\x3f\x1c\xea\x67\x23\x9e\x48\x66\x0b\xa2\xa0\xa3\x43\xbd\xf7\xc9\xb5\x51\x41\x2d\xbd\xb8\x59\xef\x13\x2a\x53\xbb\xc4\x96\x87\xa2\xc0\xe5\x16\x55\x98\x1d\x09\xc5\x11\x04\xd6\xad\x01\x2b\x95\xac\x20\xc7\xa9\xce\x5c\x2c\x05\x7b\x67\x69\x10\x90\xb2\xe5\x3e\x17\x1e\x8c\x10\x89\xe2\x85\x32\x1c\xbd\x1d\x57\xbc\x8b\x97\x38\x15\xf7\x82\x0e\x98\xc9\x97\x27\x54\xc5\x5b\x3f\x2a\xf3\x22\xca\x5f\x33\x2e\x61\x6e\x04\x40\xe6\xf4\x2b\xba\xcb\x0a\x58\xda\x14\xb1\xed\xb9\x93\x5e\x00\x18\x86\xa4\x7b\x26\x65\x89\x25\x21\xca\x0b\x9d\xe5\xa8\xf1\xbd\x75\x34\xe0\x32\xcf\x9f\xbd\xff\x96\xe4\x94\x95\x48\x8a\xe7\x28\x7e\xf1\x76\x79\x5e\xe3\x92\x87\xe1\xd0\x52\x0c\xcf\x42\xb1\x85\xf6\x40\x4e\xb3\x40\x17\x47\xda\x94\x3f\x2f\x8e\x46\xd4\xa7\x56\xb2\xf6\x25\xa1\x14\x67\x2f\x20\x0e\xfc\xd6\x34\xa0\x7a\x8b\x1b\xe1\xdf\x93\x82\x3c\x78\x67\x77\x79\x74\x98\x6f\xf8\x2f\xe2\x8d\xc8\x7f\x68\x71\x42\xdb\x2f\xec\xb2\x91\xcf\xe1\x0c\xa7\x5e\xf0\x3e\xcd\xe3\x68\xcb\x76\x1e\xef\x1b\xc9\x8d\xfa\x4f\x5f\x7d\x52\x58\x94\xf9\x4b\x1c\xe1\xf2\x51\x75\x74\x0e\xbb\x53\x3f\xf9\xdb\x7e\x6b\x15\x48\xb7\x56\x81\x74\x6b\x25\x78\xd8\x49\x84\x58\xb6\xc5\x1b\x09\x30\x89\x01\x29\xe1\x8a\x4a\xe2\x76\xfb\x2b\x43\x6b\x0a\xf3\xbe\xfc\xe5\xfa\xf7\x02\xd5\xfb\xd6\x74\x4e\xf8\x81\x30\xa7\x1f\x1d\x98\xb6\x37\x9d\x55\x6b\x53\x39\x50\xaf\x8e\x53\x92\xfb\xf8\x90\x51\xc7\x0c\x96\x91\xb9\x1f\x42\x75\x13\x70\x25\x94\xeb\x58\x0f\xd4\x08\xb7\xb6\x7c\xd2\x4d\x8d\x6c\xa3\x95\xed\x7c\xeb\x17\xbc\xad\xf3\xd2\xc7\xbb\x1d\xde\x92\x5d\xc3\xaf\xb6\x28\x21\x39\x8b\x09\xe0\xfb\x94\xea\xd8\x1a\x8d\xdf\xe2\xe8\xfa\xeb\xd5\xc3\xd5\xa3\x61\x9c\x5b\x03\xec\x72\xcc\x2c\x4b\x6f\x4d\xd1\x50\x3e\x10\xc2\xbf\x40\x75\x7b\xd8\x44\x49\x83\xaf\xa4\x63\x17\x25\x3e\xd4\x71\x1e\x9c\x1e\xfc\x26\x5b\x5e\xb9\xe5\xd3\xd8\x7d\x00\x0d\xed\x1b\xf4\x81\x53\x5d\xe9\x0f\xff\x2c\x7e\x95\xda\x06\x8a\x9f\x30\xde\x85\x6b\xc6\x9b\x3e\x7e\xc1\x59\x5d\x31\xcb\xd5\xe8\x79\xac\x36\xcc\x72\x4f\x63\xed\x8c\x98\xcd\x3e\x0c\xae\x73\x2a\xe1\x39\x29\xbd\x44\x49\x62\x9b\x8d\x4d\x17\x43\xc8\x4e\x24\x08\xa1\x52\xb0\xb9\x36\x6b\x46\xed\xce\x27\xee\xa7\xfc\x41\xfb\x2b\xdd\x04\x16\x81\xed\x95\xb6\xd4\x4f\xee\x10\xe3\x32\xb6\x66\x58\x70\x08\xf9\xc6\xcf\x84\xfa\x34\x14\x1c\x23\xc9\x0f\x21\x34\x82\x23\xb5\x1e\x4e\x9d\x28\x85\xe1\x40\x2a\x3d\x9c\xaa\x83\x4d\x64\xe3\x19\x91\x18\x3e\x72\xeb\xb2\xca\x7e\x36\xa0\x9e\xba\x74\x3d\xd1\x69\x09\xdc\x1a\xdc\x6a\x1a\xa2\xcd\x98\x37\x00\xa2\x83\x36\xe2\x6d\xc2\xe4\x5b\x9b\x88\x07\xbe\x99\x57\x9c\x49\xf9\x93\x77\x9b\x14\xa7\x53\xc9\x82\x8e\xec\x89\xab\x4c\x14\x9d\xd4\x53\x3f\xe0\x9e\x47\x26\xbd\x85\xc3\x49\x12\x17\x55\x5c\x39\x44\x37\xb0\xef\x2a\x4a\x50\x31\x4b\x80\x02\x26\x4e\xf5\x78\x67\xf6\x0e\x4f\x89\x61\xca\xa7\xf8\x2b\x7e\xef\xa9\xc7\xbf\xf9\xbf\x7a\xa2\x9f\x31\x3c\xff\x7e\xc0\xe5\x5b\x81\x4a\x94\x56\x1a\xcd\x2d\xae\xff\x17\xc0\xb5\x8d\xcb\x6d\xc2\x2f\xfd\x5a\xa5\x01\xbc\x9b\x24\x06\x1f\xa5\xbe\xfe\x90\xf3\x6f\xef\x34\xac\x77\xb2\x7a\x01\x8e\xdf\x97\xdf\x96\xdb\x87\x98\xe4\xad\xe9\xa7\x35\x3f\x7a\xda\xd4\x60\xa7\x8d\xd3\x75\x6f\x54\xf7\x3e\xd3\x65\xe9\x6c\xad\x06\xaf\xb1\x10\xe8\x89\x4f\x7c\x8d\x14\xf6\x41\xb5\x24\x4a\x80\x56\x1a\xcf\x66\x24\xe6\xa5\xcd\x83\x58\x19\x7c\xb4\xd9\x5e\x00\xb8\x68\xd3\x3c\xe4\xaa\x77\x36\x2b\x95\x19\x33\x8a\x2b\x66\x6a\x37\xf0\x26\x22\x42\x63\x2d\x79\x5c\xf4\xc9\xa8\xc4\x2e\xa3\xc0\xef\xb2\x6a\x2b\x66\x85\xee\xcc\x46\x56\x89\xc2\x59\x88\xa4\xeb\xbb\x11\xd3\x07\x79\x49\x4c\x4f\xb2\xd7\x5f\xfd\x24\xce\xbe\x3f\x6e\xb8\x6e\x20\x72\xd3\xd2\xca\x4d\x17\xd8\x3a\x95\x88\x07\x01\xdc\x9e\xba\xb5\xd0\x5d\xa5\x19\x90\x71\xce\x5d\xee\x2d\xd4\x5a\x18\x14\xef\x0a\xb4\x58\x39\x4e\x83\x64\xe5\x54\xe2\x87\x38\x45\xc6\xfc\x80\x1e\xcb\xdb\x23\x18\x67\x80\xbe\xe2\x19\xb3\xc7\xb6\xe1\xa0\xbc\xbb\x7e\x5e\xf2\x90\xea\xb8\xd5\xbb\xaa\xc6\xb9\x9e\xf4\x87\x7e\x10\xe6\xc6\x61\x11\x28\x2f\xcc\xd7\x6a\x94\xb7\xbb\xe0\x93\x77\xd7\x3d\x01\x6a\xd3\xfd\xab\xb7\x13\x6c\xcb\x9e\x0b\xc6\x23\xc3\x92\x90\x5a\xcf\x3f\x6c\x18\x48\x38\x64\xa2\x66\x93\x67\xff\x4e\x27\x4b\x2f\xef\x92\x83\x02\x01\x85\x40\x7b\xaf\x39\xca\x50\x73\x2a\x91\x7c\xc2\x68\x98\x88\x73\x84\x0e\x60\xb7\xb6\xa0\xeb\x22\x67\xd9\xd1\xda\xd2\xa4\x74\x6a\x34\x3b\xe6\x53\x17\x18\x7a\x6e\x0c\xbb\x73\x3e\x53\xd1\x74\x53\x6f\xb7\x91\xd2\x61\xf1\x97\xcc\x3f\x49\x78\x58\x46\xe4\xc8\xb2\xe5\xa2\x99\xe0\x78\x34\xeb\xe1\xa2\x38\x4b\x70\x6d\xd3\x87\x18\xc4\x09\x42\x2d\x98\x9e\x67\x40\x23\x2a\x0a\xf0\x3d\x1c\x79\xef\x47\xfe\xe3\xcf\xc3\x4f\xde\xef\x5e\x38\xf1\xbe\x78\xb3\x4f\x9e\xef\xcd\x8b\xe3\xa4\x9f\x76\x16\x0a\x8d\xa0\x68\x30\xf8\xb4\xf2\x2d\xa9\x2c\xa5\xcd\x13\x7e\x10\x03\xf2\x2f\xad\x99\x48\xb4\xb7\x07\x0b\x30\xd4\x63\x6b\x52\x97\xea\x18\xc2\x91\x6a\x36\xf9\xe9\x1d\x4e\xa1\x03\xe0\xd3\xee\x69\xb7\x95\x30\x6e\xae\xf9\x35\xcc\xad\x64\xc8\xa7\xb7\x1d\x92\x8a\x41\xbc\x9f\x25\x00\xf1\x88\xda\xd7\x33\xe5\x1d\x20\xd9\x82\xf4\x3a\xda\x93\x9d\xb5\x7e\xef\x23\xd3\x7f\x18\x2b\x2d\x2f\xf9\x16\x52\xa2\x7a\x89\x53\xe9\xd6\x64\xba\x6a\x26\x03\x78\xcb\xa5\x76\x64\x93\xc4\x9b\xeb\x1b\xa0\x90\x0c\xfd\xe6\xd2\x99\xa3\x2f\x70\xc5\xaa\x2e\xbf\x07\xea\x70\x20\xb1\xf2\xb2\x39\x72\x05\xe4\x61\xaf\x7e\xeb\xd8\xcf\x37\xfa\x73\x4f\xa8\x4e\x2b\xae\xbb\x7d\x3b\x24\xe3\x6e\xb8\x05\x9b\xb7\x1e\x06\x8d\xc0\x82\x2e\x67\xf4\x59\xe8\xb6\x0e\xfb\x0c\x41\x69\xf8\x7d\x2d\xba\x2c\x61\x13\xc1\x55\xf7\x1e\xa7\xef\x50\x24\xdc\x48\x1c\x53\x25\x88\x1d\x37\x55\xf6\x56\x24\x73\xd3\x06\x4b\x74\x00\x6e\xfe\x75\x03\xa4\x62\x01\x76\x3f\x18\x42\x96\xe4\x39\xc4\x2c\xe4\x26\x97\x89\x76\xb7\x02\x9d\x79\xb9\x88\x21\x37\x93\x6d\xf4\x04\xe8\x29\x7a\xd0\xec\x27\xf6\xf0\xc3\x80\x7a\xe1\x3e\x2c\xf0\x08\x6e\x78\x04\x63\xd9\xfe\x2d\x05\xff\x92\xde\x9d\xdf\xf1\xa0\xc2\x4e\x8d\x52\x4b\x84\xa5\x65\xf9\x4d\x45\xe7\x64\x62\xa0\x93\xb2\x6b\x68\xa0\xa1\x14\x12\x45\x34\x3d\x99\x78\x75\x74\x92\x1c\xa4\x8d\x56\x28\x82\xce\xdf\xe2\x24\x79\x9f\x3e\x97\x71\x24\x24\xea\xd0\x32\x77\x70\x94\x4b\xe2\x1b\xe4\x36\x27\x10\x69\x42\x14\x18\x73\xc7\x61\x16\x67\xc2\x61\x36\x60\x20\x36\xf2\x2b\x57\x35\x02\x4d\xef\x72\x17\x6e\x6b\x5d\x08\x1d\xf0\xec\x0e\xce\xb8\x4c\x82\xb0\x2d\x8b\xa3\xe7\xdf\x2a\x4f\xbd\x82\xbb\xc9\x4d\xe0\xcd\x66\x2c\x42\x83\xd7\x08\x50\x6b\x62\xe6\xf3\x50\xe9\x86\x04\x80\x8f\xba\xd8\x26\x5c\x8d\x06\xd7\xf9\x17\xba\xce\x65\xbd\x9a\x4a\x0e\xed\x9a\x6d\x2d\xda\x09\x1d\xc5\x97\x62\x51\x50\x45\xd5\x36\xc1\xa8\x7c\x78\xca\xeb\xbd\x1b\xb3\x11\x2f\x08\x40\x34\x88\xe1\x6b\x57\x2d\x71\x51\x9e\xfa\x25\xde\xbe\x6d\x13\xc9\x8f\x49\x59\x17\x12\x94\x57\x97\xe3\xcc\x0e\x30\xae\xcd\x75\xcf\xfb\xe3\x40\x7a\x7f\xcc\x7e\x29\xd7\x07\x30\xee\xa7\x3c\x7a\xb3\xbd\x9c\x20\xc2\x31\xbc\x97\x62\x6f\x68\x4b\x46\xc6\x19\x45\x27\xf9\x98\xcc\xee\x2a\xd4\x02\x43\xe5\xcd\xb5\x16\x0f\x13\x02\xdc\xa2\xa2\x99\x86\x3f\x68\x0f\xc8\xc1\xee\x56\x0a\x09\xc1\x83\x3a\x01\x01\xc2\xa5\x57\xbc\x8e\x70\x7f\x70\x25\xbe\xe3\xfa\xe6\xcc\x65\x6e\x66\xee\xd8\xcc\xbc\xbf\x99\xb9\xa5\x99\x85\x63\x33\x8b\xfe\x66\x16\x96\x66\x96\x8e\xcd\x2c\xfb\x9b\x59\x4e\xe0\x14\x06\x2e\xf3\x34\xac\x0e\xd0\xbc\xef\xad\x04\x8d\xa4\x07\x1b\x34\x85\xc3\xea\xc8\x14\x2c\x09\x01\x73\x77\x02\xa0\xc9\x1d\x56\x47\x26\x60\x3e\x57\x75\xb2\x1e\x64\xd0\xb4\x0f\xab\x23\x13\x10\x2e\x89\xa1\x61\xd9\x10\x20\x47\xcd\xa7\x1e\x66\xdd\x6f\x1c\xc5\xb5\x07\x38\x66\xb6\xc1\xfa\xc5\x40\x09\x0e\xa8\xa4\x40\x6f\x7d\x18\x9a\x66\x2f\x42\x0a\x80\xa8\x23\x64\x5a\xe7\xdf\xb1\x98\xc8\x40\x46\xc5\x55\x13\x62\xd0\x3c\x63\xb0\x3a\x94\x23\xc6\xc9\x58\x79\xc0\x10\x0d\xc1\x61\x1e\x1d\x21\x6a\x1b\x70\xcc\x58\x34\x3c\x6d\x0d\x08\x74\x1f\x10\xa7\xe2\xde\x5c\x0d\x02\x05\x62\x82\x08\x59\x94\x2c\xa6\xe1\xdd\xf2\xb6\x69\x99\x1c\xbd\xf9\x9a\x1a\x8b\x5c\xca\x04\xc7\x8d\x45\x81\x3e\xef\x03\x31\x0a\x8b\x72\x26\xb3\x13\xe0\x74\x7d\x77\x7f\x7f\xb1\xf1\xa1\x82\x6e\xc6\xc6\x66\xf5\xf7\x35\x36\x17\x20\x74\xee\x90\x83\xa4\x1f\xcb\xe2\x22\x58\x96\x17\xc1\xb2\x9a\xc8\x87\x3a\x28\x99\xa4\xdd\x31\xdb\xfa\x3c\xd7\x90\x44\x52\xcc\x8f\x48\x95\xfa\x1d\xc6\xd1\x13\xda\x7e\x27\xef\x91\xbb\x2c\x21\x44\x4b\x25\xef\xeb\x1d\x30\x15\x5d\x18\x24\x19\x03\x39\xdc\x68\x2f\x67\x99\x1e\x2a\x26\x49\xe8\x3a\xca\x4a\xdb\xa0\xe1\x6f\xe4\x70\x01\x9c\x8f\xe6\xe4\x7c\xd4\x3d\x2a\x20\xa7\xec\xf7\xe9\x21\x13\xeb\x41\x97\xbb\xc2\x77\xda\x99\x93\x1c\x49\x34\x9c\xc3\x0e\xe3\x72\xcd\x3c\xb9\x51\x30\xdd\xc8\x6d\x13\x08\xb9\xe4\x90\x9c\xa0\xdb\x2c\xe9\x14\xf3\x5c\x0a\xe9\x09\xc8\x0f\x62\x66\x68\x86\xd4\x2f\xf3\xd7\x8a\xc6\xda\x11\x9b\xf6\x92\x98\x1a\xf7\x94\xe6\xda\xf2\x13\x37\x54\x1c\xd2\xec\x61\xf6\xbb\x3f\x03\x84\xf9\x2c\x5c\x89\x01\xc1\xcf\xea\x23\x69\xee\x19\x15\x2c\x51\x42\x73\xbe\xe5\x3d\x63\x54\x54\x0f\x4d\xd3\x29\x3a\x7e\x0e\x9b\xcf\x37\xb3\x5d\x39\x99\x7c\x5b\x3c\xd2\xbe\xb6\x4b\x89\x03\x97\xb8\xc0\xa8\xfe\xbc\xb8\xd1\x2b\x41\x82\x77\x16\x2e\xef\x2f\xd5\x17\x27\xc2\xc9\xe4\xec\xe2\x24\xe9\xe9\x40\x0b\x07\x74\x64\xad\x8c\xda\xa7\xf7\xf7\x69\x91\x17\xcd\x22\x6f\xbd\xe8\x89\xbd\xf6\x9a\x9b\x95\xe6\xe4\x56\x18\x84\x11\x33\x12\x01\x71\x0d\xa9\x7d\x71\xa5\x57\x3f\xf1\x5b\xb4\x39\xf0\x9a\x4a\xf2\x35\x81\x9a\x95\x03\xfa\x35\x9c\x2d\x4a\x24\x16\x20\xc0\x2f\x50\x86\x93\xe6\x58\x2a\xda\x51\xf9\xc4\x09\xcd\xc8\x31\x5b\xa5\x1b\x4c\x45\x1e\x2a\xf6\x22\x39\x9c\x60\xfb\x59\x72\x91\x24\x1e\x9d\x65\x5e\xa3\x1a\x7f\xf6\x17\xcb\x08\x3f\x4f\xd6\xc6\x0f\x86\x67\x2f\x24\xe8\x26\x91\x72\x34\x19\x91\xd8\xbf\xf6\xca\xa9\x6f\x04\xc8\x14\xc9\xd7\x52\x9d\x9d\x81\x67\x3a\x15\xbc\x4e\x35\x2c\xb5\x9a\x9c\x4d\x6b\x46\xda\x67\x00\x93\x94\xf6\x58\x46\x8d\x7e\xa9\x37\x4b\xfd\x36\x45\xdc\xcc\x59\x22\xcd\xcb\x46\x0d\xa6\xbc\x91\xe2\xec\xe0\x4d\xc5\x5f\xd6\x64\x7a\x86\x04\x7c\x03\x30\x98\xec\xe1\x2e\x28\x4e\x42\x0c\x89\x91\xfd\xd8\x5c\x9f\xdf\x93\x16\xc7\x39\x7d\x81\x62\x41\x0a\xcf\x99\x00\xcb\x2a\xd7\x02\xbb\xf5\x37\xd7\xf2\xa1\x8d\x1b\x93\x36\xd1\xd3\xd9\x23\x23\x63\x3a\x6b\x7c\x5a\x7d\x45\xbb\x01\x62\x79\x84\xce\x0e\xb1\xcb\xe3\xe8\x6a\x21\x77\x47\x8f\x23\x7d\x56\x73\x89\x71\x94\x30\x9d\x37\x8e\x14\x95\xd1\x8d\x79\x74\x67\xd9\x9b\x98\x91\xb5\x69\x92\xf0\x0b\x8c\x14\x25\xe3\x02\x88\x44\x8a\xce\x1b\x71\x91\xa4\xf3\x30\x19\x12\xa1\xb7\xf1\xac\x22\xbc\x8b\x33\xf6\x2c\xad\x69\x6e\x13\x25\xa0\xdf\x92\x0e\xb6\x89\x6a\x73\xea\x91\x05\x75\x04\x82\x6a\xb5\xf7\xef\x4c\xeb\x30\x83\x5e\x4b\xcf\x89\x75\x8f\x8b\x05\x4e\xe9\xb1\x93\x3e\x2b\x4c\x72\xd4\xa0\xf5\x9e\xf2\xe8\x6d\x53\xbd\x3c\x2b\x1e\x86\xe6\x65\x2d\xf9\x47\xae\xf8\xd5\xac\x1e\x4a\x7b\xc1\x8e\xb9\x7a\x0b\x2c\x84\x0f\x4d\xb6\xd9\xd0\x81\x4b\xee\x24\xdf\x06\x99\xcf\x62\xfa\x98\xfa\x81\x7e\xef\x0a\xbc\xd9\x74\x59\x79\x71\x46\x06\x00\x7b\x18\x55\xd8\x8f\x33\x3f\x3f\xd4\xeb\x51\x95\x34\x1d\xc8\xcf\xcb\xb8\xd1\x53\x96\xc1\x27\xaf\xe9\x95\xf1\x03\x75\xd9\xc7\xbb\xed\x22\xba\x53\xbb\xf3\xac\x1b\x8d\x8d\x5d\xf4\x23\xdc\x8c\xca\x34\xac\xd6\x40\x59\x2f\xe6\x79\x3f\xe6\x39\x80\x79\xde\x8f\x79\xd1\x8f\x79\x01\x60\x5e\xf4\x63\x5e\xf6\x63\x5e\x02\x98\x97\xd5\xfb\x5f\x79\x85\xef\xf8\x6d\x57\xa2\x14\x57\x9e\x3a\xd9\xa7\xe0\xd3\x4d\xa3\x91\x9f\x74\xf5\xb6\xda\xa2\x04\xcf\xff\x8f\xcf\xb3\x9b\xd9\xcd\x4c\x54\x6f\xe5\x0f\xef\xf3\xb9\xad\x76\x70\x13\xc0\xb5\xe9\x87\xf7\xf7\xbf\xfe\xca\xc4\xc9\x73\x73\xbe\xd3\xd5\x28\x8f\xa3\x8b\x84\x92\x93\x72\x0f\x98\x64\x6b\xf3\x91\x9c\xf9\x4c\x8f\xb2\x88\x4c\xe4\xd2\x70\x8a\x8a\xc2\x7f\x89\xf1\x2b\xb1\x67\xd1\xc7\x52\xec\xdb\xc4\x9b\x36\x1f\xd4\x71\x13\xb2\xc2\x3c\xa1\x2c\xc3\xe5\xb8\xd8\xa6\x17\x18\x52\x36\x1c\x8b\x2e\x79\x15\x23\x48\x7f\xa6\x74\x65\x71\x66\xf5\x67\x3c\x84\x41\x3b\x82\x2f\xaf\x22\x72\xdd\x21\xf1\x05\x95\x9f\x7d\xbf\x7a\x25\xef\xa4\x9e\x4a\x94\x45\xfe\x2a\x08\x6e\x7e\x0b\x82\x60\x22\x93\xb2\x51\x7c\xc9\x81\x98\x25\x62\xf8\xb8\x60\xad\x67\x08\x63\x98\xbc\x0c\xbd\xc8\x59\x37\xe5\x2d\xde\x53\xb6\xf8\xd6\x7b\x83\x9f\x29\x7a\xb0\x51\x3b\xd8\x34\xae\x58\x80\xa4\x0d\x1a\x5c\x63\x50\x4b\x1b\x59\x41\x11\x1d\xd1\x1c\x11\x38\x12\xb8\x41\x5c\xdb\x75\x05\x6f\x56\x41\x55\xa0\x6c\xc2\x34\xad\xe1\xf5\xa8\xae\xe7\x56\x8f\x9e\x5e\x07\xc0\x8e\xa4\x4f\xad\x3b\x84\x46\xe2\x9a\xe5\x0e\x3a\x92\x42\xa5\xaa\x89\x40\x29\x7f\xe3\xb9\x6b\x40\x44\xe6\xb4\x04\xac\x15\x86\xb4\x33\x6c\x01\x00\xf5\xdd\xa8\xb3\xb1\x3f\x08\xdd\x3f\x77\x3d\xd5\x5c\xe6\xad\x87\xf7\x4d\xa0\xe3\x88\x73\xe5\x7c\xa0\xaa\x81\xf1\x0d\x90\xe3\xc8\x83\xd8\x5e\x8c\x88\x76\xae\x38\x75\x17\x94\xce\x90\x14\xbd\x2b\x34\x89\x22\xe9\xc8\xad\x03\xbb\x01\xb1\xa2\x2b\xa0\xb9\x13\x86\x49\xda\xf0\xb0\x1e\x71\xb6\xc7\x65\x5c\x2b\x5b\x3d\x4d\x27\x65\xd6\x93\xa8\x85\xfc\xdb\x2e\x2f\xbf\xa6\x28\xce\xfc\x0c\xbd\xb0\x70\x42\x8f\x27\x31\x8d\x9c\x7f\x1f\x04\x81\xaa\xd3\x58\x2a\xf7\x3c\xf9\x11\xc2\x41\x4c\x43\x9c\x3a\xa3\xa5\xee\xb6\xc2\x23\x74\xe6\xf2\x36\x48\x2b\x71\x94\x88\x70\x25\xe5\x52\x6e\x21\xb9\xa2\xfd\x62\x4a\xc6\x90\x5d\xdc\x5d\xa8\xfc\xa4\x2d\x62\x80\x18\xa6\x21\xd4\x24\xe3\x31\x49\xc1\x2e\xe7\xe4\x53\x6c\x2b\x62\xc0\x76\x35\x55\x32\xf3\x5b\xec\xe3\x2a\x42\xe2\x97\x28\x7e\xe9\xe3\xa4\x16\xb0\xbd\xc8\x5a\x04\x01\xd7\xf0\xcb\xce\xbf\x9b\xdc\x6e\xf7\x25\xbc\xba\xa3\x29\x92\xfb\xa7\xb5\x7f\xf0\x64\x88\xd1\x6f\xbe\xde\x75\x34\x17\x7d\x11\x34\x22\x4b\xc4\x07\x4c\x9d\x90\xca\x66\xb5\x1a\x20\x0a\x6d\xd2\xd7\x49\x52\x8d\x90\x53\x8a\x94\x5a\x1a\x3c\x81\x16\xf7\x6e\x9c\xf4\xa7\xd4\xfa\x28\xa9\x25\x5d\x72\x2e\x75\x07\x0f\x52\x26\xbc\xf4\x22\xf3\xf9\xb3\x98\xe8\x52\xef\x3f\x3f\x3e\x7f\xe0\x47\xac\x77\xee\x06\x14\xb0\xeb\xf4\xf9\x9d\x79\xaf\x97\x1f\xa7\xfc\xd1\x55\xa7\x21\x99\x58\x04\xd4\x75\xf7\xe4\x7f\xbe\xe4\xd9\x11\x2c\x78\xbe\x18\xde\x83\x89\x0f\x3c\x16\x13\xc8\x44\x44\x2c\x6e\x42\x10\x4c\xd5\x6e\x63\x91\x56\xca\xae\x69\xb6\x51\x85\x41\xd0\x76\xac\x25\xa1\xbb\x98\xd4\x4d\x60\x2e\xea\xa2\xf9\xca\xa3\x7d\x3a\x25\x5d\x7e\x4c\x57\xaa\xf6\xa8\x6d\x3f\x2c\x67\x73\xeb\xe3\x25\x65\x72\x16\x4a\x5b\xf7\x06\xc3\xeb\xb1\xd6\x07\x25\x60\x63\xda\xbd\x94\x09\x78\x10\x9c\x00\xcc\xc5\xda\xcc\xb3\x17\x78\x81\x4b\xec\xc5\xed\xe1\x29\xde\xfa\x4f\xf8\x47\x8c\xcb\xcf\xd3\xd9\x4d\xf3\xbf\x70\x79\x33\xbd\x9f\xd8\xe2\x31\x5a\x6a\x59\xe3\x44\x86\x86\x38\x91\x21\x18\x27\xb2\x0d\xc0\x45\x3a\xeb\xd1\x50\x1d\x3d\xdf\xf5\xc9\x11\xd3\xe6\xe8\xe1\xa4\x04\x7f\x13\x5b\xf8\x5b\xae\x7e\xdf\x0a\x22\x93\xc8\xd0\x79\xb3\xd5\xfd\x76\x28\x93\xea\xdf\x2a\x5c\xbe\xc4\x5b\x4c\xdf\xf0\xfd\xd6\x68\x74\x05\x2e\x37\x34\x26\xab\xfa\x7b\x83\xb4\x8c\x6f\xe4\x3f\xc4\xdf\x8a\x3d\xa5\x9d\xd6\x71\x9d\x60\xe0\xae\xf1\xd2\x7b\x15\x0d\xb6\x2e\x3d\x4f\x75\x5e\x49\xbf\x9a\xa1\xf3\x1f\x6a\x37\x17\x2d\xf1\xf5\x5b\x91\x33\x3b\x7c\xb0\x04\xed\xf0\xd0\xc6\x9d\x11\xcd\xb7\xf2\xa6\x4d\xc7\xa8\x53\x13\x7d\x8d\x68\xb8\x0e\x97\xfd\xe1\xe6\xba\x5e\xea\xde\x86\x70\x43\x41\x5d\x4e\x96\xab\xb9\x72\x54\x9f\xe1\xd4\x51\x8d\x84\x89\x76\xbf\xa3\xd0\xe9\x16\x5f\x80\xaf\xb4\x8d\x13\xd8\xc8\x63\xe9\xe9\xfb\x10\x25\x5c\xb7\xb9\x9e\xc4\x80\x95\xb7\x41\xf0\x3e\xfa\x5c\xf6\x77\x7e\x41\xe2\x68\xb8\xfd\x7b\x36\x81\x23\xa3\xf7\x10\xc0\xbe\x77\x2d\xfb\xbe\xb7\xdb\x05\x89\xfc\x2d\xa6\x4a\x6d\x4b\xf7\xa1\x69\x53\x91\x23\x33\xb4\x71\x6f\x60\xa4\xde\x3e\x84\x42\x39\xa8\xa8\xf7\xb3\x0d\x6e\xb3\xaf\xac\xc2\xd5\xdd\xed\x5c\x83\x89\xa2\xd6\x80\xd8\x74\x43\x6e\x8f\xfc\x3f\xf1\x7f\x91\xb3\xdc\x5f\xa2\xa7\x52\x06\x76\x8d\x2c\x0a\xfb\x47\x86\x5e\xc4\xb7\x06\xe2\x8d\x71\x53\x43\x14\x09\xc4\x09\xd5\xd0\xe4\xdf\xe8\x2e\x18\x08\xe3\xd9\x05\x2b\x52\xce\x79\xc4\x0a\xaa\x90\x4f\x02\xba\x43\x71\x5f\xba\x1c\xcc\x70\x87\x37\x7a\x6a\x60\xe9\x8a\xf7\x0e\x1a\x2a\x1e\xa3\x41\xcd\x08\x7c\xa9\x8c\x13\x34\x57\x9e\x32\x78\xb4\x50\x1c\x3b\xf2\x91\x16\x0b\xbd\xbd\xb7\x50\xdc\xd7\x5b\xf2\x30\x41\xe3\x7b\x1e\x6f\x4e\x0c\x59\x42\xc6\xf5\x5e\xf3\x34\x26\x0f\x2f\x24\x94\x32\xb3\x51\x7e\x57\xc3\xed\x8b\xe1\xb9\xc4\x80\x3b\xbc\x1a\x8d\xc2\x4f\x62\x83\xb4\x45\x87\x0c\x1d\x6a\x72\x5a\xc6\x91\x18\xc2\x9f\xb8\x8d\x07\xe4\x41\x29\xdb\xbb\x6a\xf4\x44\x36\xee\xc7\x4d\x21\x3c\x7a\x97\xd6\xa0\xf4\xa5\x27\xd8\x11\xe9\x11\x10\x51\x46\x5e\xe9\x6d\xea\xe3\x2e\xb7\xa5\x90\xea\x59\xed\xff\x5c\xeb\x3f\xc0\xe3\xed\x2c\x0a\x07\x6f\xd5\xcf\x5c\x3b\x74\x77\x9d\x37\xaf\x8e\xb0\x19\x6b\xa2\x21\xd7\x79\x9e\x3c\xa1\xb2\x3d\xe0\x0a\x62\xbd\x55\xe5\x03\x6f\x51\x68\x71\x7d\xc4\x30\x7f\xa1\xe0\x72\x4b\xfe\x56\x8e\xc9\x92\xce\xf4\xfe\x9b\xdc\xa6\xac\x7c\x18\xf3\xf9\x82\xd4\xca\x8f\xb1\x8c\xca\x57\xdf\x72\xe6\x8b\x08\xc0\xb0\x5a\x81\x18\xf6\x33\x30\x1e\x9d\xf2\x6a\x2e\xce\xaa\x1a\x65\x5b\xf5\x9d\x99\x50\x99\xd6\x52\x46\xe4\x8b\x12\x3a\x44\xf9\x6c\x8c\xf2\x21\x37\xce\x0e\x78\x4a\xdb\xe6\xa6\x64\xcb\xff\x42\x7b\x02\x08\xe3\x6b\x87\x52\x9e\x0a\xeb\x01\xd2\xc1\x9e\x21\x59\x31\x6e\x71\xca\x42\x70\x18\x92\x1e\xf1\x08\xc5\x82\x32\xbe\xc0\xa9\x4a\x04\xf8\x30\x6f\x0d\xed\xb8\x86\x88\xd6\x97\x89\xfe\x35\xc2\x8d\xac\x0b\x93\xa7\x8e\xeb\xb5\x92\x60\x49\x66\x08\x71\x31\xb1\xe5\xb9\x5a\xdd\x35\xfc\xac\x0e\x8d\x64\x25\x08\x01\x4b\x6b\x28\x2d\x8f\x76\x71\x2e\xc2\x99\x0d\x5d\xf7\x0e\x49\xb6\x4c\x10\x74\x7a\x5f\x5a\x81\x3e\x83\x17\x23\xcb\x88\xa4\x56\x04\xe3\xda\x2d\x15\x37\x7e\xf2\x18\x50\xab\x49\x36\x47\xa1\xba\xf2\xbe\x93\xbc\x08\xa5\xf9\x8d\x69\x5a\x6b\x5c\xe1\xfa\x11\x0a\xc6\xca\x6c\x7d\x82\x34\x7e\xdf\xcf\xc4\x44\x39\xd3\xbb\x12\xa7\xef\xfb\x50\x2a\x9b\x93\xb2\xb9\x58\x56\xb6\x26\x3b\xf6\x84\xbc\xdd\x61\x6c\xe9\x9e\x7b\xb6\x21\x43\xd5\x93\x9c\x08\x35\x04\x93\x78\xf4\xc4\x67\x77\x0b\xa1\x0e\x86\x5a\x97\xc2\x60\x32\xc9\x7a\x23\x9c\xbb\x49\x2d\xed\x35\x01\xec\x19\x4f\x32\x0a\x35\xf0\x23\x40\xe9\x73\x38\x3b\xb0\xa6\x22\xd5\xf6\x17\x06\x76\x6c\xf6\x97\x00\xd6\xba\xda\x61\x5b\x1c\x30\x3a\xcf\x15\x2e\x10\xc9\x56\xf9\x38\x6c\xf8\xf4\xda\x67\x57\xec\x1d\x5a\xad\xea\xd8\x51\x35\x20\x1a\x31\xc6\x2a\x26\x69\xc4\x97\x70\x3e\x0e\x75\x91\xf4\xe5\x16\xb0\x04\xd8\xe6\xa1\x09\xc5\xc7\xda\xfc\x15\x2c\x21\xd7\xcf\x0f\x75\x71\xa8\xbd\x28\x22\xb9\x31\xa4\xf5\xc2\x82\xc3\x0f\x5b\x34\xac\x92\x94\xfb\x89\xd8\x04\xaa\xba\xcc\xb3\xe7\x01\x6b\x8a\x61\x1a\xb0\xb0\x58\x8d\x06\x82\xa9\x24\xbc\x55\x58\x08\x52\xc8\x02\x55\xd5\x6b\x5e\x46\x2e\xb0\x8c\x08\x07\xc8\x46\xc3\xb7\xc3\x19\xe4\xa8\xbd\x12\xb5\xe8\xa3\x6f\x25\x4e\xae\xbf\xee\x71\x52\x3c\x1a\x00\x79\x1a\x41\x71\x43\x6a\xa6\xb8\x37\x70\x81\x10\xae\x40\xab\x4c\xb6\x30\x78\xd4\x84\x4f\xf2\x20\x09\x1f\xc4\x31\xa1\xc9\xf9\x67\x2d\x56\xa0\x63\x62\xdc\x14\x90\x94\x71\x1b\x15\xa7\x60\xbc\xc8\x35\xc7\x2a\x1c\x86\x20\xf2\x38\x29\xd1\x34\xc2\x55\x1d\x67\xf4\xf9\x0e\x4e\x4f\x5a\xda\x1e\x7d\x41\x35\xeb\x55\x64\x75\x9c\xba\xb1\x79\x0f\x1c\x9b\xbd\x1e\x28\x32\x95\x46\x18\xd3\xc8\x1b\x2b\x08\xa9\x0d\xbf\x18\x81\x7e\x1a\x4b\xcb\xc5\xdd\x80\xa8\xac\xcc\x8b\x14\xea\x55\xd6\xfe\x00\x16\xc6\xa9\x89\x67\xc4\x74\x44\xc6\xd0\x1d\xaa\xa2\x2a\x69\xbd\x37\xd3\xa2\xcc\x8f\x6f\x3e\x3e\x16\x79\x85\x23\xbf\x40\xf5\xbe\xe2\xc1\x64\x01\xb8\x43\x51\xd5\x25\x46\x29\x04\x23\x29\xa8\xb3\x70\x59\xf2\xe8\xb1\xe2\x0e\x38\x86\x48\x8f\x7c\xa7\x63\x3e\x71\xa5\x18\xac\x64\x23\x5f\xaa\x20\xf4\x85\x79\x80\x4a\x5d\xe1\x5e\xa1\xdd\xec\xab\x9a\xb8\xe9\x0c\xe2\xa1\x2c\xf2\x3e\xf3\xb3\x5d\x73\x1e\x8a\x70\x73\x3a\xf6\x8b\xf8\x88\x13\x9f\xdc\x14\x3f\x04\x93\x13\xf5\x30\x15\x90\xae\x24\x37\x89\x77\xf6\xd4\x91\xbd\xd3\x17\x00\xa7\xb7\xcd\xc0\xb7\x07\x96\x71\x56\x5a\xf1\xb9\x65\x10\xbc\xec\x7f\x62\x62\x14\xdd\xc5\x80\x9d\x69\x55\x1f\x03\xb1\x58\xb3\xae\x4a\x87\x2b\x12\x28\x9c\x58\xb6\xad\x61\x20\x59\xfc\x47\xfd\x78\xa9\x88\xa8\x6b\xba\x98\xaf\xc7\xb8\x43\xb4\xc8\xb5\x9b\x73\x42\x9f\x74\xfc\xa5\x11\xdf\x16\x2f\xaf\xde\xef\xde\xe7\x59\xb8\x0a\xbc\xdf\xbd\x59\x10\x4c\x26\xca\x99\xd8\x08\x07\x59\xa5\x02\xe9\x20\xac\x9c\xb7\x03\xfd\xbc\x1d\xc0\xc7\x77\x1e\x40\x66\x40\x77\xc2\x85\x86\x9d\x84\x1c\x7a\x27\xa9\x6a\xdb\x4b\x18\x3a\xd6\x2c\xc1\xcf\x07\x25\x99\x18\xe3\x4c\x65\xe6\xe7\x32\x7f\x05\x7c\xa8\xde\xc5\x8e\xb4\xe6\x5c\x51\xd2\xb1\xfb\xb1\x89\x32\x4c\x41\x17\x20\x09\x4e\x05\x4e\x4a\x79\x5e\x34\x4b\x2b\xe2\x25\xdc\x44\x8d\x7a\xa4\x47\xea\x22\xca\x0d\x5f\xd4\x44\x63\xbf\xe9\x03\xf0\xa4\xf0\xa7\xdc\x6b\xbc\x7b\x5e\xd8\xe8\x5b\xec\x5a\x7c\xe2\xf1\xec\x3f\xb4\xc0\x7f\x34\x98\x6f\x55\x13\xac\x4c\x43\xb3\x7d\x50\xdc\x6d\xd1\xf7\x97\x89\xa7\x5e\x5b\xd1\x20\x26\x5c\xd5\xa3\x32\x7d\xba\xcd\x8b\x37\xff\xa9\x96\x00\xfd\xe5\xaa\xe3\xca\x87\xe0\xdd\x60\x41\x29\xb4\xcb\x10\xba\xdb\xeb\xe5\x40\xe6\x5b\xb3\x16\x64\x51\x90\x88\xf2\xa8\x27\xe0\xee\x74\x90\xee\x2f\x03\xa8\x1a\x0d\xab\xd9\x14\x34\x07\x1e\x73\x06\x79\xe2\x9b\x27\x38\xd9\x41\x0e\x4f\xe4\xe9\xf2\x5c\x76\x76\x62\x65\x90\x3d\x9e\xc4\xad\x3c\xf5\x19\x86\xe9\x9e\xaa\xd8\xdb\xe1\x18\xf9\x8b\x3b\xd9\x6f\x2d\x78\xef\x8f\x3e\x27\xe9\x87\x42\x50\x44\xcd\xdc\x8a\xb3\x48\xb1\xb5\x36\x25\xaa\xa1\x95\x7c\xc5\x59\x64\x6d\x98\x04\x61\xec\xa2\x4d\x79\xfb\x50\xcd\x15\x7e\xcb\x23\x18\xd8\x48\xff\x2d\xc5\x35\xf2\x23\x54\xa3\x36\x3a\xa4\xea\xcf\xd4\x8f\x83\x0d\x7a\xc5\x51\x34\x4b\xd8\xab\x1b\x1d\x15\xbe\x98\xb0\x04\x50\x23\x2b\x6d\x25\xc4\x27\xd3\x3b\xa6\xbd\x46\x16\x96\xad\x12\xba\xb2\xc1\xef\x9e\xaf\x1e\x18\x31\x0d\xa3\x78\x62\x82\x4c\xaf\x00\x8d\x75\xe4\xa1\x69\x5c\x09\x99\xba\x8d\xc1\x63\x6c\x5e\x37\x52\x18\x19\xf2\xfc\x40\xd8\xfb\xa8\x4f\x51\x58\x1c\x5d\xd6\x88\x1a\x64\x94\xb0\x12\xb4\x44\x6e\x3a\x18\x12\xf9\xd3\xa1\x8a\x69\x55\x85\x56\x23\xba\x3c\xe8\x68\x9b\x40\x21\x48\xd5\x96\x84\x59\xfc\x65\x52\xa1\x08\x22\x7a\x4c\x9f\x94\x88\x8a\x80\x08\x65\xa2\xf3\x1c\xec\x90\x40\x67\x92\xee\x5b\x86\x52\xfc\xf5\xaa\xd9\x41\xbe\x11\x03\xe0\xe3\xd5\xe3\x0d\x54\xa8\xde\x0a\x42\x30\xc6\xab\x41\xba\x86\xe8\x0e\xa5\x3a\x31\x0b\x4b\xea\xdd\xc8\x7d\x5d\x0f\x85\xf8\x61\x83\x9e\xc1\xfc\xaf\x00\x00\x00\xff\xff\x0a\xbf\x15\xbe\xab\xf3\x03\x00") +var _web_uiAssetsConsulUiAc33675cf2d3f767c0eb03745026ec60Css = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xec\xfd\x7b\x6f\x1b\x49\xb2\x20\x8e\x7e\x95\x84\x07\x07\x3b\x7d\x8e\x2a\x26\x23\xf2\x6d\x9f\x36\x6e\x8f\x66\x1a\xba\x80\x7c\x17\xb8\xb3\xa3\x3f\x7a\xd0\x58\x94\xc9\x92\xc9\xed\x22\xa9\x25\x29\xda\x56\xc3\xbf\xcf\xfe\x43\x44\x56\xf1\xfd\x94\xe4\x6e\xab\x87\xb0\x59\xaa\xca\x77\x46\x46\xc6\x23\x33\x32\xf2\xff\xd3\xe9\x95\xe3\x49\x35\x55\xaf\xfe\xf9\xbf\x7e\x2c\xe2\xab\x37\xb7\xfd\xaa\xee\x4e\xaa\xe9\x45\x6f\xfc\xeb\xfb\xd1\xb8\x5b\x8d\x5f\x0f\x47\xc3\xea\xcb\xbf\xc6\xa3\xba\xfa\xbe\xdb\x2f\xeb\xd1\x87\x9f\xdf\x76\xfb\x33\xfe\xa9\x69\xf9\xbe\xae\x54\xa7\xbc\x9b\xf6\x47\xc3\x8b\x7d\x69\xa6\xbd\xaa\xec\xaa\x69\xef\x62\x50\xf6\x87\x6b\xf9\x96\x82\xe6\xc9\x9a\xcf\x6e\xfb\xd2\xbb\xe0\xf7\xde\xaf\xd3\xea\xd3\xb4\x28\xeb\xfe\x87\xe1\xeb\xba\xba\x9d\x7e\x29\xc7\xd3\x7e\xa7\xae\x2e\xca\x49\xbf\x5b\x5d\xdc\xf6\x3f\xdc\x8f\xab\x8b\xdb\xd1\x68\x5a\x8d\x2f\xb8\x2c\xfe\xf3\x61\x3c\xba\xbf\xbb\xe8\x8d\x2f\x26\x55\x87\x2b\xfc\xb5\xdb\x9f\xdc\xd5\xe5\xe7\xd7\xef\xeb\x51\xe7\x97\x2f\x50\x0d\xde\x57\xe3\xe2\x7d\x39\xe9\x77\x8a\xee\x78\x74\xd7\x1d\x7d\x1c\x16\xd3\x71\xff\xc3\x87\x6a\xfc\xaf\x72\xdc\x2f\x8b\xea\xd3\x5d\x39\xec\x56\xdd\xef\xa7\xe3\xfb\xea\x67\xd5\xe4\xb8\x1b\x7d\xac\xc6\xc5\xa4\xaa\xab\xce\xb4\x98\x4c\xcb\xe9\xfd\xa4\xe8\x77\x46\xc3\xdc\x66\xf8\xd8\x9f\xf6\x8a\x6e\x35\x2d\xfb\xf5\x44\x4d\xbb\xaf\x47\xc3\xfa\x73\xd1\xe9\xf5\xeb\xae\xc0\xa6\x2e\xdf\x57\xf5\xeb\xd7\xef\xab\xdb\xd1\xb8\xfa\xb5\xf8\x58\xbd\xff\xa5\x3f\x2d\xa6\xe3\x72\x38\xb9\x1d\x8d\x07\xaf\xc7\xa3\x69\x39\xad\xfe\x8c\x51\x77\xab\x0f\xdf\xbd\xd9\x15\xf1\xe5\x4f\xf5\xe8\x43\x7f\x58\x4c\x47\x1f\x3e\xd4\xd5\x7f\x31\xc4\x73\xf7\xd5\xfb\xfb\xe9\x74\x34\xbc\x80\x6a\x70\x37\xfd\x2c\xed\xab\xde\xde\xd7\x6f\xeb\xfe\xdb\xff\xdc\x16\xf8\xba\xec\x4c\xfb\xb3\x6a\x5b\x94\x34\xf5\xed\xee\xf2\x96\xe3\xe7\xc5\x4c\x3f\xdf\x55\x45\x46\x86\x95\x8f\x36\xc1\x76\x6c\xe9\x76\x55\xb9\x27\x6a\x7f\xe6\xbb\x9d\x79\xef\x16\x59\xcb\x8c\x6f\x52\xd1\xfc\xad\x8d\x94\x80\xbb\x36\x66\x91\x2b\xe3\x5d\xb7\xea\x8c\xc6\x25\xa3\x50\x9e\x14\x82\x3f\xff\xf7\x7e\x34\xad\x2e\xde\x8f\xba\x9f\x2f\xba\xdd\x8b\x6e\x7d\xd1\x9d\x5e\xcc\x67\x51\x83\x90\x3d\xbc\xe8\xd1\x45\xcf\x5c\xf4\xec\x45\xcf\x5d\xf4\x3c\x63\x63\x6f\x3a\xa8\x2f\xfa\xb7\xe3\x72\x50\x5d\xd4\xd5\x87\x6a\xd8\xbd\xa8\xfb\x17\xa3\xfa\xe2\xee\xe2\x6e\x5c\x5d\x70\x8d\xe5\xb8\x2a\x2f\xee\xeb\x5f\x07\xe5\xf8\x43\x7f\xf8\x5a\xbf\xb9\x2b\xbb\xdd\xfe\xf0\xc3\x6b\xfd\x65\xa3\xc8\x5f\x6f\x47\xc3\x69\x31\xe9\x3f\x54\xaf\x51\xeb\xff\x78\x23\x9f\x1f\xab\xfe\x87\xde\xf4\xb5\xd5\xfa\xcb\x7d\xfd\x6b\xdd\x9f\x30\xa2\x7e\xae\xab\xdc\x7e\xc1\xd3\x66\x9a\x17\x9d\x51\x5d\x97\x77\x93\xea\x75\xfb\xf2\xa6\x89\x98\xdc\x95\x9d\x5c\xe7\xc6\xa4\xfc\x75\xd1\x9e\xf2\xbe\xdb\x1f\x5d\xf0\xc4\xe8\x5e\xf4\x07\x1f\x2e\x46\xef\xff\x4f\xd5\x99\x5e\xcc\xfa\xdd\x6a\xf4\x6b\x2f\x37\xa3\xbc\x9f\x8e\xde\x0c\xca\x4f\xc5\xc7\x7e\x77\xda\x93\x66\x7e\x81\xce\x68\x78\xdb\x1f\x0f\x04\xac\x45\x59\x57\xe3\xe9\x56\x2c\x55\x82\x64\x17\x30\xa8\x86\xf7\xc5\x5d\x39\xac\x6a\x95\x87\x9a\x03\xfa\xd3\x6a\xf0\xf3\x05\x0c\x46\xe3\xaa\xb8\x1b\xdd\x8d\x66\xd5\xb8\xe0\xf0\xb7\xff\x62\xc4\xfb\xbe\xd3\xab\x3a\xbf\xbc\x1f\x7d\xfa\xf9\xbf\xa4\x10\x99\x24\x1b\x99\x47\xfd\x6e\xa7\x99\xcc\xf3\xa9\xf3\xd8\xb2\xda\x7c\x4d\x71\x79\x7e\xfc\x67\x33\x0d\x26\xa3\xf1\x74\x67\x0a\x21\x1a\xcb\x20\x51\xcd\xdc\xa9\xea\x6a\x5a\x5d\x94\xf9\xab\x33\xae\x4a\x46\x3a\x69\x26\x74\x46\x77\x9f\x8b\xf7\xd3\x61\xfb\x9d\x93\x94\xc3\x4e\x55\x37\x41\xb9\xe9\xe3\x6a\x52\x4d\x7f\x5e\x09\x9a\xdc\xbf\x1f\xf4\xa7\x3f\x37\xa4\x52\x41\x29\x04\x72\xa2\x96\xd3\xe4\xf7\x9f\x5f\x0f\x47\xd3\x3f\xcf\xeb\xfa\x4e\xd0\x17\xa6\xd5\xe0\xae\x2e\xa7\x55\x51\x8d\xc7\xa3\xb1\xe2\xe9\x56\x5e\x48\x67\xd4\xe4\xae\xcc\xa4\x7d\x3e\x09\x99\x7a\x6d\x2b\x79\xa5\x87\x99\x76\xf6\xca\x49\xd1\xb6\x65\x3a\x7e\xdb\xb6\xeb\x84\x31\xd8\x46\x83\x1f\x53\xd0\x82\x32\x8f\xee\x3b\xbd\xa2\x53\xd6\xf5\xe8\x7e\x2a\xf3\xe7\x4d\x1b\x75\x3f\x99\x8f\x64\x13\x31\x18\x3d\x6c\x0b\x9d\x6c\x06\xae\x07\x7c\xc9\xd0\x18\x57\xb3\xaa\xac\x55\x7f\x78\x77\x3f\x7d\x2d\xcd\xac\xba\xff\x4f\x35\xd8\xd1\x9a\x6e\x75\x5b\xde\xd7\xd3\xad\x0d\x62\x3a\xb2\xd9\xa0\x26\x74\xb2\x19\xb8\x1e\xf0\xa5\xfc\xb5\x33\xaa\x47\xe3\xd7\x7f\x42\xe7\xcd\xed\xed\x17\x19\xd8\xc9\x74\x3c\x1a\x7e\x68\x98\x72\x8e\xef\x0f\x7b\xd5\xb8\x3f\xfd\xc2\xa4\x70\x9e\xe5\x96\x90\xec\x17\xc6\x95\x5f\xdf\x97\x9d\x5f\x98\x15\x0f\xbb\x45\x13\x7b\x7b\x7b\xfb\x66\x89\x6a\xf9\xbb\x4f\x6f\x84\xce\x8e\xab\x61\xb7\x1a\x33\x5d\x19\xdd\x4d\xfb\x83\xfe\x43\x75\x5d\x7d\xe8\xbf\xef\xd7\xfd\xe9\xe7\x79\x1f\x25\x25\x67\x2c\xca\xee\xff\xb9\x9f\x4c\x33\xd5\x93\x8e\xee\x8a\x9a\xec\x88\xd9\x53\xd4\x68\xf2\xa9\xc8\x4d\x1c\x8c\x46\xd3\x1e\xb7\xe9\xc3\xb8\xfc\x3c\xe9\x94\xf5\x62\xfc\xd7\x12\x94\xc3\x69\xbf\xac\xfb\xe5\xa4\xea\xbe\xe1\x49\x7e\x5b\x8f\x3e\x16\x9f\x5e\xf7\xfa\xdd\x6e\x35\x5c\x84\x7c\x7e\x3d\xe9\x8c\x47\x75\x3d\x2f\xe6\xfd\xe8\x13\xb7\x82\x8b\x68\x48\xef\xfb\xd1\xa7\x37\xdb\x43\x07\xfd\x61\x43\x45\x8d\xd6\x77\x9f\xbe\x40\x67\x50\x4c\x8a\x5e\x39\xe9\xf5\xe1\x72\xd4\xad\xde\xf5\x79\x42\x5e\x74\x46\xdd\x8a\xb9\xc9\xaf\xbb\x9a\xca\x14\x59\xc2\x6e\xcb\x41\xbf\xfe\xfc\x7a\x30\x1a\x8e\x98\xe0\x57\x5f\x58\x00\xdc\x18\x31\x7f\x1b\x7c\xa4\x37\x0d\x3d\xc7\xbb\x4f\x6f\x1a\xd6\x84\xe0\xc6\xd5\x40\xe9\x2f\x79\x4e\x6f\x66\x15\xf9\xe5\xae\x1c\x57\xc3\x8c\x21\x0d\x19\xba\x10\x0c\xbf\xc8\xf8\x36\xe7\x79\xbf\x2e\x37\xe9\xaf\x75\x7f\xf8\xcb\xbb\xb2\xf3\x8f\xcf\x93\x69\x35\xf8\x71\x34\x9c\x5e\x14\xe5\xdd\x5d\x5d\x15\x13\x09\xb9\x78\xf5\x8f\xea\xc3\xa8\x52\xff\xfc\xff\xbe\xba\xf8\xff\x8f\xde\x8f\xa6\xa3\x8b\xff\xf9\xe9\xf3\x87\x6a\x78\xf1\xcf\xf7\xf7\xc3\xe9\xfd\xc5\x65\x39\xe4\x52\xeb\xfa\xe2\xd5\x8f\xfd\x71\xa9\xfe\x51\x0e\x27\xaf\x2e\x5e\xfd\x6d\x3c\xea\x77\xdb\x8f\xab\xaa\x9e\x55\xd3\x7e\xa7\x54\xff\xbf\xea\xbe\x7a\x75\x31\xff\xbe\xf8\x61\xdc\x2f\xeb\x8b\x49\x39\x9c\x14\x93\x6a\xdc\xbf\xfd\x92\x51\xbf\x61\xb7\xc2\x4c\x1b\xcc\x5f\x61\xb9\x41\xeb\x2f\x0b\xe8\xef\x40\x25\x06\xff\x97\xe5\xe1\x99\x23\x47\x46\x0d\x4e\x23\x33\x7d\x19\x8f\x64\xcc\x3e\xf6\xfa\xd3\x4a\x58\x73\xf5\xfa\x6e\x5c\xbd\xf9\x38\x1a\x77\x8b\x8f\xe3\xf2\xee\xf5\x70\x34\x1e\x94\xf5\x97\xff\xbc\x78\xfd\xba\xbc\x65\x31\x78\x43\xc6\x5c\xc2\xa8\xb6\xe5\x9b\x41\x5f\x5a\x19\xe6\xd7\x25\x66\x5d\xe6\xe1\x5a\x23\x9e\xcb\x81\xe3\xb2\xdb\x1f\xfd\xfc\x6b\xe7\x7e\x3c\x19\x8d\x5f\xdf\x8d\xfa\xc3\x69\x35\xfe\x72\x64\xae\x59\xc5\xd2\x7c\x59\x37\x02\xfe\xfb\x72\x52\xd5\x7d\x96\x53\x84\xca\xac\xc5\x4e\x47\x77\x5f\xf6\xe2\x50\x2b\x34\x7d\xc9\x32\x56\xab\xce\xe8\x2f\xff\xd9\x8a\x3c\xb9\x67\xfa\x0b\x94\xc3\xfe\xa0\xcc\x1c\x63\x5a\xbe\x2f\x86\xe5\x4c\xdd\xd7\x2d\xfc\x76\x48\x28\xd0\x2d\x87\x1f\xaa\xf1\xe8\x7e\xc2\x7c\xfb\x60\x9a\xd7\xb7\xa3\xce\xfd\xe4\x98\x84\x3d\x1e\xeb\x0b\xe8\xf6\x27\x1d\x7e\x63\x9d\x81\x85\x51\x18\x8f\xee\xa7\xcc\xd7\xc7\xdd\xb7\x0d\xbb\xbe\xaf\x55\xdd\xdf\x2a\x25\x6d\x04\xbd\xee\xf6\x27\xdc\xbf\xee\xb6\xb8\xa6\x69\x9b\x11\xd2\x94\x6d\x8a\xc1\x4a\x3c\x0b\x06\xf3\xf2\xbf\xcb\x9f\x39\xcf\x77\x17\x70\x5b\x97\x93\x5e\x31\xa8\x26\x93\xf2\x43\xa5\xee\x40\x04\x85\x2d\xc1\x9f\xfa\x93\xe9\x64\x33\x7c\x72\xdf\xe9\x54\x93\x2d\x11\x1f\xcb\xf1\xb0\x3f\xfc\xb0\x2c\x10\x66\xb9\x71\x03\xe6\xd2\xa0\x6e\x7f\xf6\xdd\xfe\xb4\x8b\xbe\x1c\x4e\xbb\x94\xea\x78\x91\xf3\x88\xe6\x3d\xa5\xb0\x8d\xf6\x3f\xa5\xb0\x45\x31\xc3\xd1\xb4\xdf\xa9\xda\x61\x6b\xbe\xfa\xc3\xdb\xd1\xfc\xe3\x6e\x54\xf7\x3b\x9f\x8b\x41\x39\x2c\x3f\x54\x83\x6a\x38\x9d\xc7\xcc\xc7\x68\x9b\x6c\xbd\x19\x36\x47\xb4\x2d\x51\x0d\x8a\x6e\x89\x39\x02\x07\x9f\x6b\x7c\x9e\x6b\x68\x9e\x3e\x2a\x2d\x95\x82\x0c\x8b\x8a\x95\xd9\x43\xba\xc3\x81\xf8\x25\x0a\x71\x20\x61\x33\x16\x07\x52\xad\xd2\x8e\xa3\x12\xef\x1b\xc4\xad\x7a\xfd\xdb\x66\xa5\x67\x7b\x64\xb3\xfe\x93\x23\xa7\xe5\x7b\x99\xcc\x3f\xbf\xbd\x5b\x5a\x89\x59\x53\xa8\x56\xbe\x16\x00\x59\x0d\xce\xdd\x5f\x0d\x5b\xe9\xec\xb6\xa8\x7d\x5d\xdb\xa9\xb6\x2d\x07\xb5\x85\x6f\x89\xc9\x0d\xda\x12\x71\x6c\xd5\x3b\xd5\xc3\x1c\xb4\x5a\xf5\x4a\xcc\x72\xd5\x2b\x11\xa7\x55\xdd\xaa\xa1\x5b\xc2\x16\xa3\xb0\x2d\x72\xb3\xfe\x36\x66\x65\x44\x76\x27\xd8\xd7\xc2\x63\x94\xe2\x9c\x76\x43\x37\x3e\x22\xe7\x82\xb8\x9c\x98\xf1\x60\xc3\x1f\x53\xe8\xd1\xca\xfd\xce\x98\x16\xd6\xbb\x13\xe4\xc1\xda\x1d\x7f\x78\x44\x4e\x5f\x4e\x38\x39\xc7\x02\xdf\x4e\xcf\x9a\x3b\x78\x7a\xbe\x15\x5c\x7d\x6c\xf6\x63\xe1\xb6\x4a\xff\x1e\xb9\xdc\x72\x90\x57\x3e\x5b\xb9\x6b\xbc\xf3\xd9\xca\x5d\x2b\xf1\xf4\x85\xa2\x23\x41\xf0\x1c\x05\x6f\x85\xc1\x73\x14\xbc\x28\xb2\xab\x1a\xb5\xb6\x5d\xf4\x15\xc5\x76\x32\xaa\xfb\xdd\x43\xea\xd1\x16\x59\x64\xaf\xfa\xff\x66\xb1\xe0\x3c\x1a\xbf\x9e\x95\xe3\x3f\x17\x79\x65\xbd\x78\x3f\x2e\x87\xdd\xc2\x6b\x7d\xd1\x28\xa1\xdf\xbd\x59\x4e\x34\xfd\x7c\x37\xda\x92\xe6\xcb\x73\xcb\x8b\x5f\x9b\xc5\x3e\x85\x6b\x7e\x63\x9c\xe5\xeb\xd1\xfa\x1d\xcb\x85\x2b\xb8\xf3\x27\x47\x2e\x78\x6c\x90\xe4\x4f\x26\x98\xd2\xd2\x36\x74\x38\x72\x65\xfc\x39\x19\xe5\xb6\xf6\x87\xdb\x78\x5b\xae\x75\xe1\x7d\xd9\xc1\x4e\x67\xad\x0b\x7b\x45\xd6\x9d\xc4\xfc\x71\x55\xc6\x2a\xf9\xd2\x7c\xd9\xad\xcd\x3d\x5a\xf2\x7e\x5c\x7b\x9a\x25\xe3\xe3\xd7\x3f\x96\x68\xd7\x46\x7d\xd5\xfb\xaa\xba\xa5\xa3\xea\xdb\xb9\xc0\xb0\xaa\xcc\x6e\xc7\xcb\xf7\x55\x77\xad\x92\xdb\xb2\x63\x35\x6d\x16\xdb\x2c\x68\x6c\x6b\x6b\xe7\x36\x6c\x14\x43\xd5\x7b\x6d\xd2\x9b\x95\xaf\x2f\xcb\x6a\xf8\xb6\xf6\xe8\x5b\xb7\x31\x55\xf2\xe2\x7d\x5b\x90\x2e\xa9\x1b\xec\x97\x7d\xeb\x44\x3b\x74\xa1\x7d\x22\xfa\x96\xb6\xc4\xf2\x3d\x6e\xb4\x25\xa3\xdc\x9b\x95\xe6\x6e\x6b\xcb\x81\x75\xa9\x7d\x74\xf2\x58\x95\xed\x44\x0d\xe5\xa0\xc2\x71\x1a\x45\x33\x31\x94\x1b\xd0\xc9\x63\xf3\x66\x81\x5c\x5b\x40\xb3\x75\x23\x70\xa5\x3d\x5b\x6a\x6b\x50\xe0\xf4\xda\x0e\xab\xb7\x07\xf5\xac\x66\x1b\x7d\xb3\x51\xba\xb2\xba\x34\x87\x1b\x75\xcc\x22\xec\x6f\xb0\x64\xf7\x9c\x8b\x38\x07\xd6\x6b\x7e\xb3\xbd\xd3\xdf\x44\x38\x6e\x8b\x3c\x8a\xaf\x77\x82\xb1\xd6\xbd\x59\xf9\xda\x24\xa5\x07\x96\x92\x97\x57\x2e\xb7\xd5\x9a\xaa\x4e\x55\xed\xad\xd8\xbd\xc7\x48\xfa\xcb\xd1\x0b\x67\x8f\x57\x36\xb7\xb1\x03\x57\x52\xb9\xce\x2a\xd7\x28\xe7\x51\x13\xe3\xe4\x9d\x87\xaf\xb6\xa2\xfe\xcd\xae\x95\x7f\x6b\x0b\xc4\xcf\xb8\x00\xfb\xac\xcb\x29\x4f\x5c\xe1\xd8\xd7\x96\x97\xb9\x10\xf1\x82\x96\x0d\xb6\x90\x98\x86\xda\xad\xe9\x54\x42\xf4\x56\x48\xcc\x29\x2b\xfd\x4f\x5b\xfd\xda\xd2\xc8\x70\x4b\x44\x9d\xc3\x8d\xdc\x62\x93\xd9\xd8\x70\x5e\xec\x89\x2b\x8a\xc5\xee\xe6\xae\x34\x79\x84\xda\x95\x91\xe9\xe8\xee\x35\xde\x7d\x52\xb2\x36\xa2\xfe\x54\x2e\x68\xf4\xfb\xd1\x74\x3a\x1a\xec\x88\x1c\xb7\x16\x13\x5b\xe2\xea\xea\x76\x3d\xea\xd8\x45\x97\xba\xaf\xca\x55\xe3\xd1\xbe\xd0\xf7\xee\x7d\x63\xa8\x08\xe8\x26\x6f\x76\x46\x6c\xc9\x39\xed\x0f\xfa\xc3\x0f\xc5\xed\xfd\x50\x30\xee\x75\x55\x4e\xaa\x62\x74\x3f\x7d\x73\x44\x9a\x2f\x7f\xba\x1f\xd7\x93\xff\x3d\xa9\xc6\xb3\x7e\xa7\x12\x13\xb0\x79\x8b\x37\xf5\xb9\x6a\x32\xaa\x99\x5a\xb2\x4a\xa7\xba\xd3\x53\x52\x66\x8b\x86\x3d\x49\x27\xad\x8e\xc8\x6d\x68\x6c\xba\xa6\xa3\x51\x3d\xed\xdf\xfd\xfc\xc8\x6c\x7b\xda\xc7\x9a\xe9\xa9\x35\x1e\xca\xb3\xbb\xba\xc9\x5d\xdd\x9f\x4e\x4f\xee\xe3\x31\xd9\x76\x57\xda\xa4\x38\x5c\xcd\xf6\x84\xf3\x82\xab\x4f\xfd\x69\x7f\xf8\x61\x55\x6a\xbb\x80\x5e\x55\xd6\xd3\x9e\x90\x35\x46\xa4\xbb\xfb\xa9\xea\x76\x55\x35\xf8\x57\xb7\x9c\x96\xc5\x46\x29\xc7\x26\x6f\xf0\x44\xac\x79\x7b\x28\x3d\xde\x5e\xe2\xbe\x14\x4d\x21\xd3\xde\x56\x40\x6f\x0f\x6e\xca\xdd\x36\x35\xef\xc6\xa3\xbb\x6a\x3c\xfd\xfc\x7a\x74\x57\x76\xfa\xd3\xcf\x6f\xf6\xc5\xed\x9f\xda\xbb\x66\xf6\x51\x13\xbb\xee\x0f\xab\x72\xbc\x6f\x5a\x37\x29\x9a\xb6\xbc\xd6\x6f\x1a\x7b\x9e\xa2\x9a\x55\xc3\xe9\x24\xdb\x2b\xae\x4c\xf9\x56\xc8\xec\x0f\x3f\x9c\x3a\xfb\x33\x1b\x3c\x39\xfd\x41\x4a\x30\xcf\x90\xf9\xcc\xf1\x15\x34\xe9\x4f\x23\x35\xb9\x59\x8f\x24\x38\x5b\x33\x1f\x6e\xf1\x6a\x19\xd2\xec\xc7\x36\x60\x5b\xe6\x53\xe8\xde\xd1\xdd\x3f\x2e\xe7\x49\x55\x1f\xdb\xf1\xe3\x72\x9e\x48\x7e\x8f\xed\xf8\xf1\x99\x4f\x6d\xc0\x91\xdd\x3f\x3e\xf3\x41\x5e\x00\x59\x74\x7a\x7b\x2c\x4b\xd8\x9e\xfe\x60\x35\xc7\x82\x76\x5f\xf2\xc3\x95\x1c\x09\xbe\x7d\xc9\x4f\xe5\x4e\xab\x14\xef\xb4\x4c\x2d\x55\x3a\x32\xd7\x2a\xed\x3b\x2d\xd3\x61\x1e\xba\xd2\x91\xc3\xe9\x0e\x17\xb8\xd2\xdc\xc3\xe9\x56\x19\xf4\x76\x7c\xd9\x17\xd9\xd6\xd4\xa6\xd9\x8a\x0b\xfb\x22\xf7\x70\xfb\x39\x57\xd6\x5b\x79\xb5\xde\xcb\xe1\xef\x87\x93\x6a\xba\x35\x5f\x8e\xd9\x96\xb7\xaa\xcb\xcf\x6b\x95\x35\x41\x3b\x53\x6f\x56\xb3\x14\xdc\x72\x7f\x5c\xe7\xfe\x62\xbc\xbc\xb2\xd9\x96\x0f\x7e\x64\x4d\xef\xae\x9c\x4c\x3e\x8e\xc6\xdd\xb5\x93\x35\xcb\x49\xa6\xd5\xa7\xe9\xd6\xe8\xf9\xd1\xa7\xac\x27\xe6\xa3\x6d\x9b\xe5\x6e\x46\x36\x25\x2e\x47\xcc\xcb\xda\x7e\x30\x2c\xa7\x6d\x0b\xdd\xa8\xe3\x84\x4c\xb9\xee\xa3\x32\x1c\xd5\xa6\x06\x22\xa7\xb4\x68\x25\xcb\xe1\xf6\x34\xc9\x8f\x6a\x0d\x27\x3a\xa9\x2d\x4b\x19\x0e\xb7\x44\x12\x1f\x68\x47\x0e\x15\x4b\x71\x39\xd0\xf9\xf3\x0e\x74\x7b\x4c\xee\x7d\x2d\xdc\x95\x73\xde\x5c\x39\xcd\x30\xc8\xdc\x61\x2f\x32\xed\x4e\x93\xeb\xdf\x16\x3f\xaf\x65\x29\x72\x07\x66\xec\x4a\xb1\x51\xf8\xfa\xb8\x2f\x45\x6d\x1d\xe6\xed\xf1\x1b\xc5\xae\x0e\xe2\xc6\x3a\x50\xde\x39\xbf\xed\xd7\x53\x39\x6c\x3b\xfe\xee\xe8\x11\x7d\x72\x51\x8b\xa6\x3e\xb2\x98\xd5\x73\x29\x72\x5a\x09\x62\x70\xe3\x6a\xf0\xe6\x1b\x3e\xa9\xf2\x86\xf5\xb7\xa2\x3d\xab\x03\x6e\xdb\x5e\x81\x6a\x8c\x64\xf7\x1e\xc3\xfc\x3d\x16\x64\x1e\xb1\xa4\xf2\xc8\x75\x91\x5d\x2b\x1b\x27\xae\x31\x6c\x4d\x3f\xfd\x8d\x0e\xac\xe6\xf3\xa3\x72\x32\xef\xd1\x87\x56\x9b\x25\xc5\x55\xf6\xb9\x74\x96\x73\x39\x3c\x57\x95\x8b\x78\x5f\x0e\x87\xd5\xf8\x67\x35\x2c\x67\xaf\x6f\xfb\xe3\xc9\xb4\x18\xdd\x16\x9c\xb6\x41\xa0\xd5\x06\xad\x9c\x25\x3f\xae\x80\xf2\xc8\x74\x79\x67\xfc\xb8\xb4\x3b\xda\x5f\x97\x4f\x6b\xfe\x96\xfc\xdb\x5a\xbf\x25\xd9\xae\xc6\x6f\x49\xba\xd4\xf6\xfd\x82\xc6\xe1\x94\x19\x7d\x0e\xa7\x63\x02\xb8\x2f\xd5\x0e\xc2\xb9\x2f\xcb\x09\xbe\x23\x5a\x03\x9f\x03\xa9\x9a\x81\xce\x56\x52\xfb\x9d\x51\xcc\x4f\xe8\xb7\x87\x04\x16\xc7\xe9\x57\x0c\xba\x86\xa3\x6e\xb5\xf8\x9a\xf4\x46\x1f\x15\x4c\xaa\xc9\x24\x6f\x24\xad\xd6\xb8\x85\x7d\xbf\x9d\x1f\x82\xde\x02\xef\x35\xd6\xb9\x14\xb8\x7f\x1d\x32\x27\xc9\x14\x6e\x81\xde\xd2\x06\x35\xaa\x95\x90\xec\x03\x5e\x36\xe6\x00\x5d\x09\xdc\xec\xcd\x1c\x5c\x2b\xbc\x53\xfe\xd6\x6f\xbb\xd3\x27\xb0\xd4\xdc\xdb\x6f\xed\xb0\xf7\xc5\xb4\x0b\xdd\x6a\x32\xed\x0f\x85\x0f\xee\x58\xdb\xfd\x75\x95\xaf\x92\xfb\xd2\xc3\x5f\xd7\xcf\x7e\xee\xe3\xb5\x5b\x0e\xec\x1d\x3a\x21\xb5\x8d\xc0\x9f\xee\x5d\x60\x83\x82\x1f\xb2\x41\x39\x53\xf8\x33\x85\xff\x4d\x28\xfc\x0a\xed\xf9\x5a\x5e\x2e\x36\x88\x7e\xa6\xf8\x5f\xef\x78\xcc\xef\xc3\x3e\xf6\xd0\xfd\x8d\x1a\x8f\x21\xea\xa7\x1f\xb2\x39\x95\x0d\xac\x50\xdd\x15\x52\xea\xb7\x93\xd2\xb3\x6e\xf2\x6d\xeb\x26\x5f\x4b\x07\x79\x06\x31\xb1\xf7\x15\x64\xac\xed\x02\x55\xef\x1b\x94\x6f\xb6\x0b\x34\xcb\x33\xce\x1d\x10\x5e\xf6\x4d\xc6\x17\xad\xeb\x9e\x75\xda\xb3\xc4\xf3\x7b\x49\x3c\x1b\x92\xc9\x37\x20\x46\x3c\x51\xc5\x7c\x94\xa8\xf1\xc7\xd2\x1f\x37\x97\x8b\xb7\x1d\x6b\x3a\xcb\x2b\x47\xcb\x2b\xdf\x82\x54\x70\x80\xe3\xef\x61\xb0\x0d\x22\x20\x09\x26\xfc\xe9\xe3\xb8\xbc\xbb\xab\xc6\xed\x49\xba\x95\x55\x81\x06\xe8\xaf\x87\xac\x9d\xf3\x0c\xfa\x33\x7d\x77\xd0\xd1\xcf\xdd\xd1\xbe\x3e\x57\x1d\x7a\x2e\xa6\x5b\xf6\x37\xb7\x71\xa4\xe2\x42\xa6\x98\xa8\x39\x6f\x9b\x5e\x6f\x1d\xa1\xfa\x6d\xb7\xbb\x45\x08\x98\x54\x77\xe5\xb8\x9c\x8e\xc6\x3f\xaf\x44\x76\x57\xbc\x39\xf2\x60\x3c\x46\x48\x58\x29\xfc\x84\xdc\x52\xfb\x09\x67\x08\xa4\x79\x5b\x9d\xe1\x64\xf5\xef\x6e\xbb\x73\x1c\xfe\x58\x8a\xdb\xed\x2b\x67\x23\x66\x29\xd7\x8e\xa3\x88\x9c\xe2\xb8\x75\xa3\x6a\xf0\x4c\x22\xd4\x32\xb4\x4f\x00\xf4\x29\x30\xde\xb9\x76\x55\xbe\x2f\x1a\x07\xbe\xdc\xf1\x55\xed\x3b\x67\x9d\x6e\xb8\x9c\x3d\x7a\x35\x8c\x21\xf4\xc8\xd5\xb1\x03\xf2\x4a\x35\x78\x5e\xb9\xe6\x40\x79\x27\x49\x3f\x07\xca\x7a\xac\x84\xb4\xb3\xd8\x47\x88\x54\x4b\x0b\x10\xff\xb5\xb3\xdc\xbb\x03\x2c\xe0\x10\x87\xb8\x7b\x19\x8e\x55\xb7\xc9\x76\xd5\xe0\x14\x91\x6f\x35\xf5\x3e\x39\x70\x35\xe5\x9a\x68\xb8\x36\x28\xcb\xac\x13\x7e\xe9\x0f\xbb\xc5\xdd\x78\xf4\xe9\xf3\x8a\x18\x29\x59\x32\x7b\xc9\xbe\x95\x57\xb9\xe9\x1a\x6f\xbd\xfb\x6d\x57\xa1\x9a\x3e\x3c\x45\x14\xbd\x1b\x57\x4a\xfc\x3d\x3e\x4d\x26\x5d\x22\xb0\x8f\x2d\xa8\x5b\x3f\xfa\xd0\x13\x53\xd1\x27\xca\xc2\x1b\x1d\x78\x44\x49\xf3\x1e\x3c\xe2\x14\x54\xb7\x3f\x5b\xd9\x9f\x69\xdd\x59\x1e\x23\xe5\x7c\x7b\xec\x7d\x95\xe9\xed\x98\x4f\x2d\xea\x6d\x51\x37\xf6\x09\x99\xc7\x0b\x88\x47\xc9\x7a\x4f\x15\xe7\x1e\x25\x90\x3d\x51\xa8\x39\x55\x36\xd9\x14\x30\x36\x97\x8e\x5e\xfc\xf2\xc5\x31\xec\xf2\xd9\xf7\xba\x37\xd8\xc6\xf1\x8c\xe1\x37\x5a\x33\xf8\xbd\xc8\xea\x53\x89\xe1\x16\xd5\xf3\x59\x54\xcd\x4d\x95\x70\xbf\xe2\xf7\x24\xcd\xee\x78\x35\xe7\xc9\xea\xcc\x86\x96\xb0\x4b\xd1\x38\x49\xb7\xf8\x0d\x34\x89\xe3\xf4\x83\xfd\x72\xff\xc9\x12\xfd\x91\xe2\xf9\x1f\x44\xbc\xde\x2a\x45\xaf\x88\xcb\xdb\x24\xe3\xdf\x5e\x98\x7d\x66\x19\xf4\x19\x84\xc1\x65\x32\xd4\x88\x26\xbb\x8f\x0a\x97\x1f\x27\xd0\x19\x0d\x27\xf7\x75\x51\x7d\x9a\x56\xe3\x61\x59\x17\x93\xd1\xfd\xb8\x53\x2d\x56\x08\x97\xd2\x30\xeb\x58\x8d\xa8\x05\x2d\x16\x61\x39\xe1\xc1\x32\x57\x93\xad\x16\xdb\xc4\x6d\x94\x3c\xee\x8b\x53\xf2\x2d\x32\xd2\xf1\x67\x13\x6b\xb8\x2d\xfb\xb5\x9c\x2b\xe9\x4e\x8f\x49\x3e\xae\xba\xfd\x31\xd3\x9b\xbd\xc9\x57\x8f\x78\xed\x3f\x4a\xb7\xe9\x57\xab\xf5\x97\xb7\xa7\x17\x9b\x27\xe9\x4e\x3c\xb3\xd6\x26\x5f\x92\xcd\x61\x56\xd6\xf7\x55\x51\xd6\xf5\xe8\x63\x93\xa8\x6d\xc0\x66\xaa\x16\xfa\x07\x13\x76\xab\xe1\xe7\x83\x89\x78\xd2\x2f\x0e\xae\xee\x4e\xd7\xca\xe7\x6b\xe9\xb6\x79\xa7\x69\x16\x89\xf7\xa4\x12\x67\x35\x07\x93\x35\x5e\xc3\x0e\xa6\x9b\x37\x6d\x3d\xdd\xb8\xaa\xe4\x96\x8b\xdc\x9b\xb5\xa6\xaf\xb3\xf2\xc3\xc7\xcb\x36\x90\xe3\x97\xfb\xf7\xd5\x78\x58\x4d\xab\xc3\x33\x77\x33\xe9\xea\x4c\x5b\x8a\x5f\x9f\x6d\xc3\xd1\xa0\xec\x1e\xac\x60\x25\xd5\x6a\xd9\x39\x6a\xb3\xd8\x85\xa6\xb7\x11\xca\x2a\xde\x46\xe0\x86\x3a\xb7\x91\xa2\x19\x89\x45\xf8\xb2\xb8\x02\xe5\xfd\xb4\xa7\x0b\x09\xba\x1b\x8f\x66\xfd\x95\xe6\xac\xa4\xfc\x30\x1a\x7d\xa8\xab\xa3\x92\x0e\xfa\x9d\xf1\x68\x32\xba\x9d\x1e\x95\x7a\xf4\xcb\xb4\xdc\x95\xb0\x99\x09\x7b\x89\xda\x9a\xe4\xc3\x74\x77\x03\x2b\xd6\xd3\xe4\x31\x39\x98\x6c\x81\x01\x07\x93\xca\x80\x1e\x4c\x35\xad\xc6\xe3\x72\x89\xef\x2e\x52\xce\x63\x0e\x62\xd5\x46\xca\x55\xcc\x5a\x44\xaf\x63\x57\x83\x09\xfb\x80\xf9\xaf\xdb\xd1\x58\x36\x8b\xde\x97\xe3\x46\x6a\xfc\xf9\xd0\xa6\xbf\x82\xee\xa8\x33\x29\xea\xfe\xf0\x17\x55\xb6\x94\xf4\x60\x9e\xba\x2a\xc7\xc3\x83\x99\x96\x37\xe8\x8f\xac\x67\x35\xcb\xee\x6a\xd6\x65\xc3\xf2\x5f\xe3\xaa\xfe\xcf\xef\x7b\x55\xbd\x38\x87\xb9\x35\x65\xcb\x38\x04\x56\x83\x51\xb7\xac\xff\x77\xa7\x1e\x4d\xaa\x9f\x2f\x9a\x22\xda\x91\x5b\xf5\xe9\xb0\xad\xfc\x8d\x75\x94\xdd\x4c\x67\x57\xd2\xed\x9c\x67\x57\xea\x4d\xf6\xb3\x2b\xe5\x56\x1e\xb4\x2b\xf1\x56\x46\x24\xda\x34\x0b\x41\x0d\x8d\x1a\x8e\xba\x55\xd1\xef\x56\xc3\x69\x7f\xfa\x79\x67\xaa\x46\x0e\xdb\x91\xb0\x11\x7e\x0e\x97\xb8\x9a\x70\x7f\xa1\x4b\x74\xfe\x70\xc1\x9b\x89\xf7\x17\x9e\x09\xfd\xe1\x72\x57\xd2\xed\x2f\x72\x31\xc3\x0f\x17\xbb\x91\x76\x67\xd1\xa7\xdf\x15\xb9\x3d\xcb\x7a\x9a\x76\x7f\x7a\x9d\xe2\x4d\xbb\xd0\x1f\x4e\xab\xe1\xb4\xc5\xf6\x55\x8e\xbf\x88\xce\x38\xbb\x16\xdb\x5b\x96\xdb\x96\x9d\x35\x8d\xab\xbb\xaa\x9c\xbe\x1e\x8e\x9a\xb7\x37\x4b\x71\x77\xa3\x7c\xac\xf8\x75\xa7\x92\xdb\x80\x0e\xdc\x58\xd9\xce\xd2\xb5\xb5\xcb\xb7\xe5\xb2\x45\xc9\x82\xbc\x2e\x2f\x4b\x00\xd7\x2a\x64\xe7\xed\xc2\xe1\xcc\x72\xfc\x9c\x94\xed\x88\x5f\xd0\xad\xed\x09\x7a\x6b\xb4\xfd\x43\x39\xad\x3e\x96\x9f\x0f\x32\x8f\xb5\x74\xab\xac\xa3\x8d\x5c\x67\x1c\xf9\xfb\x60\xd9\xab\xc9\x56\x8b\xde\x28\xb2\xcf\x00\x1c\xd5\x75\x5e\x53\xce\xab\xbd\xd9\x11\xdb\x12\x70\xbf\x63\x1d\xa3\xec\x76\xc7\x2c\x72\x2e\x5b\xa4\x9c\x90\x9d\x27\xc7\x63\xf3\xca\x32\xe0\x63\x32\xbf\x5d\xb1\x54\x9a\x2b\x67\xaa\xdb\x7d\x6a\x51\x82\x04\xcf\x50\x4e\x4b\xdf\x9f\xa1\xa4\x8d\x1d\x85\xa7\x97\xd9\x32\x94\x27\x97\xc4\x4c\xf7\xfb\x41\xf5\xf3\xe3\x4a\x5a\x5e\x8a\xdc\xd2\xd1\x67\x2a\xf1\xc9\xc5\xb0\x94\xf2\xd4\x42\xba\x35\xbc\xaf\x7a\xe5\xac\x3f\x1a\x3f\x0e\xe1\xd7\x4b\x13\xf9\xf2\x51\xb3\x76\x4b\x59\xf3\xf9\xf3\x1c\xa5\x75\xcb\x69\x99\x39\xc0\xf3\x94\xd7\x4c\xc9\xe7\x28\xaa\x1e\x75\x7e\xc9\x4e\x2f\x9e\xa7\xbc\xa1\x5c\xcc\xf7\x3c\x65\xcd\x29\xc6\xf3\x14\x36\xed\x3d\x53\x49\xa3\xf1\xf4\x99\x4a\x1a\x8f\xa6\xa3\xce\xe8\x99\xb0\x6c\x3a\x7d\xa6\x82\xe6\xb4\x70\xa9\xb0\xa5\x1d\x8e\x6d\x5a\xd1\x4a\x7c\x7f\xd2\xb8\x96\x7c\xbb\x35\x7a\x9b\x86\xb4\xb9\x49\xa2\x8e\xd8\xcf\x78\xbb\x3b\xfb\x9e\x05\xda\xed\xed\x3f\xa5\x80\x6d\x1d\x3c\x25\xff\x71\x10\x78\x72\x9f\xdb\xdb\x73\xd7\x33\x3e\x05\x4e\x4f\x00\xd1\x93\xa0\x73\x0a\x60\x9e\x02\x93\x76\xdd\x64\x59\x2d\x3e\xb4\xc6\xb2\xa6\x17\x1f\x97\x5c\x94\x8c\xe3\x92\x66\x72\x7f\x5c\xda\x96\x66\x1e\x97\xba\x9d\xe9\x1b\xa9\x59\x0c\x2d\xaa\x4f\x77\xa3\x49\xd5\x2d\x98\x74\x4e\x32\xf9\xd8\x25\x1e\xef\xcd\xb0\x21\x10\xef\x4d\xbd\x29\x02\xef\x4c\x7e\x8c\xd0\x7b\x6c\xe6\x4d\x31\xf7\xd8\x9c\xdb\x04\xdb\xa3\xf3\xee\x15\x65\x8f\x2d\x65\x9b\xf0\x7a\x64\xde\xad\xe2\xea\x9e\xbc\x47\x0b\xa8\x27\x96\xf1\x88\x8c\xab\x42\xe8\xb1\xd9\x76\x89\x9d\x27\xe4\xdf\x22\x68\x9e\x92\x7b\x9b\x68\x79\x42\xfe\x1d\xc2\xe4\x09\x25\x6c\x8a\x8f\x27\x64\xde\x21\x30\x9e\x50\xc2\x16\x11\xf1\x84\xdc\xdb\x84\xc2\x93\xb2\xaf\x89\x81\xa7\xe4\x5d\x17\xfc\x4e\xc9\xbb\x4d\xd4\x3b\x21\xff\xba\x70\x77\x42\xd6\x6d\xe2\x5c\xce\x7e\x7f\x37\x99\x8e\xab\x72\x70\x14\x71\xdf\x92\x78\x07\x61\xdf\x92\x72\x17\x51\x5f\x4b\x7a\x3c\x41\xdf\x9f\x71\x17\x31\xdf\x9f\x6b\x37\x21\x3f\x90\xef\x08\x22\xbe\xbf\x84\xdd\x04\x7c\x6f\xbe\x3d\xc4\x7b\x23\xdf\x89\x84\xfb\xa8\xfc\x27\x66\xda\x46\xb0\xf7\x67\xd9\x4f\xac\x0f\xe6\xdd\x49\xa8\x0f\xe7\xdc\x4d\xa4\x0f\xe6\xdd\x4b\xa0\x0f\xe6\xde\x45\x9c\x0f\x66\xdc\x4b\x98\x0f\xe6\xde\x49\x94\x0f\xe6\xdc\x4d\x90\x8f\xc8\xba\x95\x18\x1f\xce\xb7\x9d\x10\x1f\xce\xb7\x9b\x08\x1f\xcc\xbb\x9d\x00\x1f\xcc\xb6\x8d\xf8\x4e\xa6\xe5\xf4\x7e\x52\x58\x6d\xf6\xae\xb0\xcf\x93\xd9\xbd\xc9\xa6\xe5\x87\x82\x55\xfd\x95\x2a\xc4\xa0\x6a\x5c\xcd\xaa\xb2\xce\xa6\xd2\x73\xbd\x67\xd5\xfe\x61\x39\xdd\x96\x98\xdd\x86\x7e\x9b\x9b\xbc\x3b\x0f\xce\x2f\xf6\x7a\x57\xb6\x4e\xa5\x9c\xbc\xa5\x59\xf6\x87\xc5\xb0\x9c\xb5\xfb\xbf\x3b\x32\x6c\xd9\xd3\xbd\xad\xaa\xee\x7c\xe3\xe3\x84\xbd\xe0\x8c\xed\x13\xb5\x66\xb6\xbd\xa7\xe2\xd5\x4d\xde\x1d\xf5\xae\x59\xf7\x6d\xdd\xc5\xdc\x7a\xa8\x78\x25\xa4\x5c\xdd\x50\x6b\xf7\x48\x0e\x6f\xbd\xad\xa5\xdc\xbf\xa7\xd7\xec\x9d\x1c\x2e\x75\x35\xe1\x81\xdd\xbc\x1d\x86\x77\x27\x2d\xe6\x3c\xd6\x84\x6f\xdb\x7a\xc5\xa3\xcb\xda\x5c\xbf\x78\x74\x51\xdb\xd6\x33\x1e\x51\xd8\xe3\x1a\xb2\x63\xbd\x63\xbf\x75\xe3\x23\x86\xeb\x11\x86\x92\xbb\xc7\xeb\x31\x85\xed\x1a\xb0\xc7\x94\xb5\x7b\xc4\x4e\x2b\xed\x91\x4d\xd9\x35\x66\x5d\x55\x72\x37\x97\x85\xb6\x36\x06\x6e\x47\xf5\x32\xa9\x9d\x76\x99\x2f\x2c\x8b\x3e\x73\x0f\xdd\x83\x72\xf2\xcb\xe6\xa6\xf5\xf6\xd0\x95\x3c\x6b\x9b\xd9\x6f\xb6\x06\x6e\xdc\x62\xd4\xb9\x1f\x8f\xab\xe1\xf4\x92\x3f\x8e\xde\xff\xde\x69\x20\x7b\xe4\xce\xf8\xfe\x1b\x84\xca\xfb\x69\xaf\xb8\x1d\x8d\x07\x6f\xef\xb2\x6d\xb1\x98\xbf\x7d\xb7\xc8\x7e\x9c\xb5\xec\xda\x86\xf3\xf3\x19\xa3\xee\x2b\xf3\xb7\xb4\x58\x3d\xd4\x98\xfd\x96\xad\x2b\xe7\x28\xfa\xff\xea\xd4\xe5\x64\xf2\x9f\xdf\xcb\xac\xfa\xf9\xed\x1f\xd9\xfe\xf5\xb7\x37\x41\xdd\x67\xac\x78\xb6\x83\x38\xdb\x41\x9c\xed\x20\xce\x76\x10\x67\x3b\x88\xb3\x1d\xc4\xd9\x0e\xe2\xdb\xb7\x83\xd8\xe9\x47\xf0\x6c\x29\xf1\x98\x12\x8e\x05\xe2\x21\xb0\x9d\x0f\xca\xac\x1f\x94\xf9\x43\x1a\x91\xec\xc3\x99\xc7\x98\xa0\xbc\xec\x23\x42\x67\xa3\x98\xb3\x51\xcc\xd9\x28\xe6\x71\x06\x2d\x67\xa3\x98\xb3\x51\xcc\xd9\x28\xe6\x6c\x14\x73\x36\x8a\x39\x1b\xc5\x9c\x8d\x62\xce\x46\x31\x67\xa3\x98\xfd\xc4\x77\xbb\x19\x4b\xf6\x22\xdd\xfa\xd9\xeb\xae\x18\x69\xfc\xc6\xc6\x2b\xcd\x06\x56\x63\x95\xf3\xf3\x3e\x9b\x9c\xe7\x37\x74\x79\x8c\xc3\x83\xc7\x1a\xc7\x1c\xe7\x28\xe1\x99\x2d\x6a\x1e\xe1\x69\xe1\xe8\xfe\x3d\xa7\x83\x86\x5d\x1e\x17\xf6\x9a\xfe\xfc\xdb\x79\x62\x78\x92\xc1\xd3\x61\x93\xa4\xb3\x2d\xd2\xef\x6c\x8b\xb4\x67\x99\xec\xe9\x96\x4d\xcf\xef\x11\xe2\x6c\xec\xf4\x1b\x18\x3b\x1d\xc4\x89\xc7\xda\x4e\xed\x31\x7b\xda\xed\xe9\x63\xd3\x1e\xea\x09\xbe\x3f\x36\x8c\xa9\xd6\xdd\x81\x74\xfb\x93\xbb\xba\xfc\xfc\xba\x3f\x14\x07\xcc\xef\x59\xec\x7c\xd3\x19\x49\x91\xaf\x5f\xbd\x7a\x33\xeb\x4f\xfa\xef\xfb\x35\xd3\x28\x79\xad\xab\x65\x43\x29\xf1\x0d\xc8\xa9\xcb\xfe\xf0\xcd\xc7\x7e\x77\xda\x7b\x8d\x40\xd5\xe0\xcd\xe2\xa2\xcd\x6a\xf0\x66\x56\x8d\x85\xda\x17\x65\xdd\xff\x30\x7c\x2d\x06\x25\xd3\xd1\xdd\x36\x97\xa6\x6d\x33\x57\x6d\xbe\xfa\x83\xf2\x43\xf5\xfa\x7e\x5c\xff\xf9\x7f\xb0\x34\xfe\x5a\xbe\xff\x32\x99\x7d\xf8\xaf\x4f\x83\xfa\x4d\xa7\x57\x8e\x27\xd5\xf4\xfb\x7f\xfe\xaf\x1f\x8b\x78\xf1\xdf\x93\xd9\x07\x35\xeb\x57\x1f\xff\x3a\xfa\xf4\xfd\x2b\xad\xb4\x22\xab\xc8\xbe\x52\xb7\xfd\xba\xfe\xfe\xd5\x70\x34\xac\x5e\xa9\x4f\x83\x7a\x38\xf9\xfe\x55\x6f\x3a\xbd\x7b\xfd\x97\xbf\x7c\xfc\xf8\x11\x3e\x1a\x18\x8d\x3f\xfc\x85\xb4\xd6\x5c\xf0\xab\xb7\xff\x2d\xd2\x2c\x67\x2a\xc6\xf7\x75\xf5\xfd\xab\x6a\x56\x0d\x47\xdd\xee\x2b\xd5\xa9\xfb\x77\xeb\x61\xdd\xef\x5f\xbd\x43\x54\xe8\x7a\x34\xa3\x5e\x41\xb3\x82\x1e\x06\xba\x88\x3d\x9a\xf9\x5e\x41\x37\xe1\x61\x00\x29\x15\xee\xd2\x83\x0d\x8a\x14\x29\x0f\x36\x2a\x52\x48\x13\xcb\x41\xa8\x55\x82\x94\x14\xea\x4b\x0c\xe0\x48\x91\xfc\x9f\xbf\x23\xfd\xa3\x79\x57\x88\x9c\x90\x1e\xde\x21\x29\xd2\x9d\xc2\x82\x25\xa5\x8b\x58\x18\x70\xb1\x88\x45\x9c\xe4\x17\x25\x3f\xc5\x1f\x8a\x3f\xf2\x0b\x87\x3d\xb4\xd0\xf8\x0f\x32\x5a\xeb\x57\x7f\x79\xfb\xdf\xdc\xe9\xb7\xff\xe3\xbb\x37\x67\x78\xff\xa6\xf0\xfe\x72\xb4\x37\xc0\x5d\x3b\x6f\x87\x3d\x95\x2d\xbb\xfc\x79\x96\x91\x3d\x7a\x34\x65\x94\x12\x38\x83\xa8\x08\x2f\x09\x41\x07\x8c\x8a\x50\x11\x81\x36\x26\x29\x4c\x60\x0c\x1a\x45\x08\xe4\x05\xfc\x29\x85\x74\x8d\x06\x82\xd1\x51\x59\x48\x31\x79\x7f\x89\x04\xc9\x6b\xa7\x0c\x78\x97\x74\xe2\x21\xd1\x26\x2d\x7d\x6b\x20\x9f\xb0\x4d\x7f\x4d\x10\x4c\xd4\xb6\x2d\xef\x12\x21\x79\xcf\xf8\xd2\x56\x07\x89\x22\x8f\x38\x67\xb1\x3e\xc6\xa4\x08\xaf\x9a\xa6\xfe\xf4\x0e\x8d\xc2\x78\x85\x78\x83\xfe\x0a\xcd\x0d\xc6\x1c\x64\x25\x48\x4b\x90\xfd\x69\x69\x4c\x6f\xcb\x78\x6b\xc2\xca\xb0\xfe\x0e\x36\x4c\xc7\x2f\x14\x3e\xfb\x16\xc4\xa3\xd7\x28\x1f\xbf\x70\x76\xb8\xca\xaf\xc0\x43\xce\x98\x7f\x08\xf3\x9f\x91\x81\x9c\x81\x7d\x98\xcc\x1c\x69\xe8\x7b\x8a\x0a\xfc\xec\xec\xe2\xeb\x0b\x02\x02\x50\x45\xd8\x41\x70\x96\x2b\x06\xa7\x4d\x81\xe0\x7d\x52\x08\xc1\x60\x61\x40\x6b\xca\xe3\x2d\xc3\x97\x3a\x05\x84\x50\x20\x18\x53\x10\xf8\x84\xf9\xd5\x80\xf5\xa4\x74\x1e\xd8\x3c\xac\x31\x8f\x6a\x1e\xd3\x3c\xa2\xf3\xf1\x54\x84\x3d\x74\xa0\xbd\x79\xc8\x83\x99\x25\x11\x96\x49\x58\x1a\xb1\xf2\x69\x7b\x34\xb3\xfb\x24\x80\xd3\xf6\xf2\x8f\x5e\xf7\x7b\x91\x22\xf4\x4b\x1e\xc9\x17\x25\x3b\xbf\x64\x40\x7f\xd9\xaf\x13\xff\xbe\xf2\xae\x51\x68\x7a\x68\x81\xea\xc2\x80\x67\xd6\x71\x8d\x4e\x61\xac\x7d\x91\xff\x21\x58\xc5\xbf\x26\xf6\xca\xcc\x68\xb9\xab\x54\xbd\xd7\x26\x1d\x20\xf2\x27\x2c\xb5\x6e\x26\x7d\x79\x04\xbe\x85\x29\x86\x3a\x6b\x55\x06\x5c\xda\x04\x2b\x32\x5c\xf1\x1a\x03\x60\x50\x88\xeb\x90\x5d\xa7\xbb\x8f\x3e\xa2\x74\xec\xe9\x96\x13\x5d\x22\xef\x5a\x14\x7a\x79\xe3\x85\x89\xd5\x6d\x19\x09\x97\x94\x53\x48\x2c\x3a\xb9\x1c\xaa\x9c\x72\xf9\x25\x87\x21\x71\x8a\x30\x8f\x46\x09\x42\x23\xef\x12\x8c\xf9\x7f\x7e\xcf\xe1\xa4\x9a\x3a\xf6\x0d\xf0\x51\xf7\x3c\x3c\xeb\x15\x00\xbb\x4f\x44\x6d\xb3\xc2\xfd\x7d\x09\x95\x53\xe6\x0a\xd3\x25\x69\x40\xc5\x92\xb1\x32\xc0\xe2\xa9\x72\x37\x1c\x8a\x4a\x22\xf2\x43\x06\x85\xf0\xca\x5d\x36\x69\x8c\x6a\xb2\x61\xba\x71\x97\x46\xb2\xca\x4f\x39\x65\x7e\x7a\x87\x4e\x86\x2a\x5c\xf3\x3c\x74\x32\x57\x9b\x61\xe3\x90\x28\xa8\x21\x49\xc2\x75\x8b\x1a\xd7\x1c\xaa\xc2\x75\x1b\xdd\xa0\xc6\x75\x5b\x40\xcc\xe8\x70\xdd\xa2\xc6\x75\x5b\xc7\xb2\x80\xdc\x09\xc6\x5a\xf7\x0c\x7a\xf8\xd3\x0e\x5f\x3d\xd5\x44\xec\x49\x56\x90\x4f\x31\x7d\x78\xb4\xb5\xce\x11\x95\xfe\xde\xda\xf8\xbf\x03\xba\xff\x5e\xca\xf7\xbf\x03\x6c\xb7\x89\x61\xa7\x6d\x63\x6f\x4d\xfd\xf2\x98\xbb\x53\x2c\x8b\x75\x10\x90\x2b\x55\x3c\x8a\x8a\x66\x68\x3b\x5a\x21\x60\xc1\xdf\x05\x29\xba\x72\x9d\x42\xd2\x14\x54\x40\x2a\xa8\xa0\x1b\xd7\xd1\x1c\xc4\x5f\x9c\xe6\x61\xd0\x0c\x8d\x9d\x0f\xee\x12\x7b\xcf\xa3\xd7\x04\x87\x85\x08\x91\x07\x57\xb5\xd1\xad\x08\xd1\x16\xd0\x0c\xee\x92\x08\xd1\x0c\xee\xe9\x1a\xf8\xd3\x4f\x00\xbc\x44\x15\xfc\x0f\x37\xbc\x2f\x49\x2d\xff\xc3\x01\x7f\xdf\x8d\x71\xc7\xde\x97\x75\xf8\x62\xa3\xdf\x79\x87\x8b\x14\x5d\x36\xdb\x8b\x4b\xfb\x8c\x97\xed\x6e\x62\x0e\xe1\x20\x45\xb4\x6b\xb7\xf1\x92\x9a\x84\xf3\x5d\x47\x52\xf4\xd3\x3b\xd4\xcc\xa9\x58\x83\xba\x5e\xa8\x4c\xd7\x1c\xca\xda\xf0\x75\xab\x36\xb9\x78\x8d\x49\x45\x89\x58\x61\x63\x5b\x56\x13\x7e\x87\xb3\xff\x4f\x34\xfa\x7f\xca\xf1\x9c\x27\x98\xb7\x3e\xd6\x98\xfc\x70\x95\xbf\xb7\x2c\xfc\xa2\x30\xf6\x77\xdb\x51\x7a\x49\x40\xda\x26\x9d\x9e\x64\x0c\xb9\x2d\xf1\xcb\x93\x4d\x77\x8c\xd9\xc4\xca\x10\xe8\xf9\xff\xa2\x09\x28\x50\xff\x63\x79\x64\x1e\x06\x05\x29\x74\x75\xe1\x0a\x27\x8b\x89\x45\x5e\x51\x6c\x06\xa6\xe6\x71\x29\x82\x8c\x55\x52\xb1\x2e\x92\x4a\xfb\xe4\xca\xe7\x73\x3f\xf2\xf4\xf3\xac\x3b\x4f\x92\x3e\xf9\x60\xe1\xa9\x67\x5a\x5e\xa2\x54\xfc\x4d\x21\xd6\x4b\x92\x68\xbf\x29\xc0\x7d\x39\xe8\xe4\xe2\x89\x1e\x22\x1e\x9f\xf5\xd9\x4d\xac\x9f\xc5\x38\xf7\x25\x4e\xd5\xa4\xd0\x33\x13\xb5\x10\x8d\x42\xaa\x19\x61\x28\xef\x0c\xa5\xbc\xf8\xa4\x82\x04\x36\xa8\xd4\xa4\xff\x63\x4c\xb7\x67\xef\xfc\x97\xaf\x63\xd9\xfe\x02\x45\x0b\x9f\x55\x60\xa6\x34\xa2\xff\x62\x50\x81\x65\xb7\x28\xb2\x9a\x42\x5d\x7b\xe5\x55\xbb\x15\x29\x8f\xbd\x94\xe8\x54\x3f\x2e\x5f\xf7\xec\xc7\x93\xa8\xc7\x4b\x26\x17\xcf\x3b\xae\x2f\x89\x56\x3c\x37\x46\x1f\xb8\xd4\xf3\x91\x27\xab\x5e\x24\x4e\x39\x08\xda\x31\x69\x8d\xd1\xd5\x85\x05\x17\xf9\x91\xd4\xfc\x6d\x01\xd1\x42\x60\xcc\xe0\xfe\x83\x61\xd7\x57\x82\xc1\x91\x9e\x78\x5f\x22\xda\x44\xa0\xe4\x54\x60\xb8\xd5\x0c\x25\x25\x50\x9a\xbf\xa9\xb9\x89\x8b\xda\x30\x7a\xf9\x63\xe0\xcc\x57\x01\xc0\x11\xac\xf6\x31\xd7\xcd\xed\x75\x4f\xfe\x35\x5d\x9c\x1f\x57\xc8\x4b\xc4\x7f\x61\x3e\xe8\x85\x1b\x65\xb9\x55\x38\x14\x7a\x85\x91\xd5\x3d\x97\xea\x3c\xec\xca\x5f\x37\x69\xff\x18\x78\xff\xac\x1d\xdf\x66\xd8\xd6\xf8\xf3\x16\xdb\x36\xd5\xad\xe1\xb6\xec\xd7\x9c\x42\x75\xa7\xcf\x28\x89\x1b\x45\xfa\xf4\x45\x56\x34\xe0\xa2\xaf\x4d\x61\xae\xd1\x83\x45\x2b\x7a\x8b\x51\xf2\x4f\x8c\xfc\x12\x87\xd6\x85\xe1\x7f\xca\x5c\x07\x4e\xaf\x30\x72\x96\x82\x20\x38\x79\x08\x15\xb0\x42\x10\xac\x92\x00\x7e\x3c\xbc\x43\x03\x49\x3b\x88\xce\x77\x08\x82\xf6\x60\x53\xa6\x26\x9c\xc0\x59\xab\x2c\x44\xf4\xca\x81\xb7\x35\x90\xb1\xa0\x3d\xa7\xb4\x1e\x82\xb3\xca\x40\x8c\x52\x5c\x52\x06\x9c\x72\xa0\x8d\x2f\xc0\x5a\xc9\x9c\xa8\x20\xd0\xd1\x28\x0b\x26\x60\xe1\x20\x06\x9f\xdf\x67\x05\x75\x1c\x68\xb1\xac\xb5\x10\x7d\x2c\x1c\x97\x48\xa6\xf0\x80\x8e\x80\x2c\x67\x25\x31\xa7\xa5\xc0\xec\xd0\x53\x2c\x0c\x90\x0f\x85\x85\x94\x5c\x81\x10\x62\x2a\xb2\x81\x6d\x70\x01\x9c\xb7\x4c\x08\x03\x29\x02\xf4\xdc\x4f\x4f\xa9\x80\x40\xa1\x20\xf0\xda\x15\x60\xac\x2b\x0c\x58\x4b\x60\x3c\x15\x10\x8d\xe7\xee\x16\xe0\x28\x70\x9e\x64\x0b\x20\xe2\x76\x47\x32\x05\x82\x8e\x09\x12\x72\x45\x49\xa3\x22\xd0\xc8\xc0\x44\xc7\x15\xa4\x18\x0a\x40\x8d\x60\x92\x2b\x40\x27\x26\xb1\x1a\xb9\x33\x08\x84\x04\x96\xa2\x18\xf5\x72\x28\x33\x6d\xee\xb5\xd5\x86\xdf\x66\xd4\x29\x2c\x20\x06\xa5\x0b\x07\x3e\x50\x01\xc9\x17\x1e\xac\x8d\x05\x41\x0c\xb6\x00\xef\x88\x9b\x8f\x80\x26\x70\x8b\x5d\x50\x08\x31\x52\xe1\x00\x31\x16\x3c\x28\xdc\x7d\x1e\x0a\x64\x98\x24\x8e\x37\x09\x0b\xcb\xf0\x29\x2d\x44\x16\x22\x62\x52\x5a\x69\x34\xe0\x19\x4e\x21\x5c\x26\x20\x62\x55\x97\x3c\x4f\x22\xaf\x0d\x58\x83\x6a\x3e\xfc\x6e\x79\xc6\xf8\x1f\x83\x8f\xf4\x6a\x79\x92\x0e\x47\xc3\x87\x6a\x3c\x5a\x35\x20\x14\xbf\x86\x47\x3a\xd5\xdf\xee\x5b\xbf\x89\x5b\xf3\x65\x2e\xbe\x00\x9a\xa8\xc3\x4e\x03\x56\x13\xee\xf2\x1d\xf0\x7c\x13\x99\x89\x4e\x3c\x6e\x22\x7f\x58\x21\x8e\x5b\x68\xde\xd2\x5c\x8f\xe0\x93\x51\xa8\x21\xe8\x50\x22\x44\xcf\xa3\xc5\x4f\xad\x50\x61\x01\x5a\x7b\x46\x76\xb2\x6a\x35\x92\xa3\x39\x52\x49\xe4\xd2\x28\x26\x8f\x7f\x73\xb2\x0b\xb2\x44\x4f\xc0\x18\xaf\x12\x84\xe0\x4b\x88\xce\xf0\x2f\x57\xa0\x34\x63\x95\x0e\x4b\xa1\x1c\xce\x38\x1d\x74\x60\x79\xd5\x1b\x39\xe2\xe3\xdc\x46\x56\xd0\x18\x0a\xd0\xa1\x53\x80\x46\xd0\x44\xf9\xaf\xb5\xfc\x37\x00\x67\xe7\x69\x6e\x54\x04\x93\x73\x0b\xca\xe5\x2a\x0a\x48\xe4\x64\xa2\xa7\xd5\x08\x85\xe0\x5c\x02\x72\xae\x03\x9a\x78\xd6\x80\xa6\xc0\x68\x0c\x5a\x27\x30\xc6\x94\x10\x09\xf9\xd7\x96\xe4\xad\x98\xde\xbf\xc3\x00\x29\x04\x6e\xad\xf5\xa1\x84\x68\x13\xff\x1a\x48\x22\xf8\x50\x00\x25\xbf\x14\x2e\x40\x4c\x91\x0a\xf0\x89\x3a\x60\x8d\x01\x1d\x0c\x04\x0b\xd6\xb3\xa4\x9e\x78\x9a\x94\x40\x84\xfc\x93\x0c\x9a\x3b\xe7\x41\x07\xcf\xd5\x51\xf4\xdc\x3b\x1f\xd7\x60\x53\x70\xbf\xb8\xca\x68\xd7\x20\xcb\x11\x4a\x22\x58\xd5\xf4\x4e\x26\xa3\x09\xb8\x5e\x00\x82\x4d\x4c\xb0\x28\xae\x15\x20\x11\x1c\xce\xf9\x0d\x31\xf9\xf5\x66\x23\x3b\x44\xa1\xfa\xd1\xad\x57\x1f\xc5\xce\x3e\xba\x25\x8c\xf9\x9b\xa7\x10\xcd\x0a\xc6\x44\x88\x36\x6f\xd9\x19\xcb\xa4\x2b\xa4\xa8\x74\x11\xc1\x47\x26\x4e\xd1\xb9\xe6\x3d\x82\x47\xba\x04\x74\x4e\x59\x40\xcf\x24\x4f\x5b\x07\x86\xd5\xe5\xc8\x44\x17\xcb\x08\xde\x3a\x95\x9f\xb9\x0d\xae\x81\x41\x90\x45\x37\xed\x98\x58\x9a\x40\xa5\x67\x12\xab\xf2\x33\x83\x3a\x30\x9d\x2b\x78\x20\x94\x87\x18\xa8\x79\xea\xe6\x1f\xe3\xb5\xf3\x6a\x23\x9f\x5a\xe4\xab\x17\x15\x58\x6e\x0a\x0f\x97\xf7\x0d\xe2\x2c\x1a\xf2\xb0\x09\x8e\x5d\x64\xf0\xc3\x82\x14\xee\x70\x12\xf3\x12\xa5\x4c\x34\x10\x49\x99\x4b\x34\x72\x10\x83\xb1\x84\xc0\x30\x2a\xa1\xc2\x4e\x81\x60\x94\x2e\x08\x2c\xe3\x15\x63\x9f\xa2\x2b\x3b\x37\xb7\x51\xd9\xc0\x66\x86\x3e\x9b\xe4\x64\x0b\x1d\x45\x4b\x56\x3b\x8d\x95\xce\xac\x48\xa0\x4d\x01\xc9\xcd\x8d\x73\x1a\x5b\x9d\x82\x7a\xcc\x22\xe3\xc3\xbb\xa4\xd0\x5c\xf9\x19\xf5\x8c\x9c\x5f\x2f\x8c\xf2\x3d\x37\x2b\x88\xc3\x1e\xde\x79\x95\x66\xd4\xf3\x37\xe9\xca\x3f\x0c\x5c\xe1\x3b\x20\x84\x03\x15\x58\xc7\xcd\x9d\x14\xf2\x52\xc8\x1c\xe2\xf7\x82\xdf\xe5\x2f\x87\x3c\xbc\xb3\x8a\xf0\xc6\xf5\x68\x86\xa0\x75\xe8\xa1\x96\x0f\x07\x29\x51\x8f\x49\x8c\xb9\xc1\x70\x85\x71\x66\xaf\xec\xc3\x40\x4e\xb9\x17\x66\x56\x98\x2b\xe2\xe6\xf4\x8a\x00\x1a\x67\x2c\x95\x91\x42\x5b\x1b\x48\x49\xfd\x51\x4e\x3f\x9d\x51\xe0\x6b\xa0\xc0\x09\x1b\xde\xcf\xef\x86\xf4\x69\xfe\xf2\xb6\xe6\x7e\x91\xd4\x8d\x14\x46\x08\xee\x12\x1d\x2b\x07\x29\x7f\xb5\xcf\xd5\x30\xba\x92\xd3\xd2\xac\x6d\xa6\xa0\xfd\xfc\x2f\x89\x95\x20\xe1\x65\x00\x4d\xc9\xda\x6c\xa6\xdd\xc6\x1a\x85\x74\x69\x54\x1b\xd7\xfe\xe5\x60\x65\x6e\x1c\x90\xbb\x8c\x40\x81\x74\x64\xf6\xe7\xf2\x63\x25\x04\xe9\x32\xff\x6d\x9a\xd3\x46\xb6\xcd\xca\x2f\x3f\xbd\x23\x0d\xc1\x19\x52\x09\x62\x8a\x68\xaf\x31\x82\xf3\x4e\x84\x1e\xc2\x70\x89\x11\x6c\x24\xb1\x5d\xd4\x81\x39\x5f\x64\xde\x1a\x58\xf8\x33\x89\x25\xcd\x08\x64\x22\x7f\x5b\xf4\xd1\x5e\x93\x06\x83\x41\x96\xb7\x9d\x4d\xe1\x92\x34\xd8\xe4\xf9\x3b\x45\x1f\xbc\x22\xcd\xe2\x95\xe3\xf4\xc6\x39\x31\x58\x5f\xae\xfe\xa7\x77\x98\xc0\x07\x9b\x32\xcf\xd5\x74\x8d\x81\x55\x33\xe6\xb3\x36\x58\x6b\xc4\x06\x28\x10\x17\x88\x81\x8c\x1c\x6a\x32\xde\x30\xa8\x62\x74\x5e\x6c\x80\x90\xa5\xd3\x00\x1e\x83\x46\xee\x4f\xb4\x26\x2a\xd6\x09\x6d\xf2\x97\x98\x00\x6d\x72\xca\x83\x43\xca\x7a\x2f\x05\x66\xfa\x31\x59\xd6\xb6\x56\xab\xff\x89\xa5\xb2\x68\x1d\x4b\x19\xe8\x3c\x59\x56\x9f\x4d\x34\x9c\xde\x7b\x1b\x2e\xd1\x03\xa2\xb5\xca\x83\x37\x9e\x47\xdd\x41\xa4\xc0\xe2\x83\x25\x96\x72\xd0\x81\x23\x11\x2a\xc8\x92\x0d\x9c\x3d\x68\x51\x66\xc9\xa1\xf4\x06\x75\x5e\x79\x0b\x64\xa5\x37\x36\x2b\xb8\xd1\x71\xf8\x5a\xed\x62\xaa\x6f\x39\x80\x55\x32\x4a\xf1\x1a\x2d\xb8\x68\x48\x39\x08\x1e\x8d\xbf\x44\xd6\xdf\x34\x67\xf0\x24\x67\x45\x0d\x24\x2e\xd8\x81\xc3\x10\x83\x2c\x04\x84\x68\x95\x63\xf8\xeb\xc0\xf9\x51\x23\x2b\xde\x64\x7d\x34\x9c\xdf\xb1\x68\x65\xc0\xb8\xe0\xc4\xfa\x54\xa3\x31\xac\x98\x6b\x93\x48\xad\xd5\x2f\x0d\xd2\x5e\x27\x85\xac\x49\x72\x07\xf3\x3a\x01\x2b\xc8\xf6\x26\x02\xb9\x2b\x44\x20\x77\x23\xe1\x37\x68\x00\x8d\xbf\x46\xe4\x5a\xb2\xac\xea\xb5\x91\x56\xc4\x24\xb5\x91\x71\xe6\x7a\xad\xd0\x9f\x36\xb5\xca\x17\xca\x13\xcf\x84\xe3\x4c\x38\xce\x84\xe3\xdb\x20\x1c\x5f\xf6\xba\x75\x7b\xc6\x95\x1e\x9e\xbb\xea\x79\x97\x7a\x16\x46\xaa\x91\x2e\xe9\xef\xed\xce\x4e\x48\xca\xd6\x05\x04\x13\x20\xe0\x35\xa2\x0a\xe0\x9c\xbf\x32\x37\x11\x5c\xe8\xc5\xba\x20\x48\x36\x28\x82\x68\x2d\x04\xe3\x21\x20\x5e\xa3\x51\x11\xb4\xa7\x07\x86\xcd\xb8\xea\x4c\x05\x12\xbf\x54\x52\xfe\x65\x3e\xa2\xd5\x04\x15\xe2\x7e\xee\xfb\x57\x08\xee\x95\xfa\xf4\xfd\x2b\x08\xee\x95\xfa\xdc\xfc\x6d\xe3\x2c\x47\x66\xdf\x74\xed\xd7\xf8\xd3\xf7\xaf\x02\x90\x5b\x59\x14\x30\xc0\xd8\xe2\xea\xa4\xd2\xab\x23\xab\x6c\x82\xea\xfe\xb0\xea\x94\x77\xdf\xbf\x9a\xfc\xdf\xfb\x72\x5c\xad\xeb\xd1\x47\x5d\xf3\x78\xb4\x1f\xd4\x67\x44\x04\xab\xf0\x48\x03\xe9\x93\xf1\x80\x95\x84\x66\x9b\x23\x24\x45\xac\x7b\xcc\x11\x41\x2c\xf9\x3c\x38\x1b\xae\x44\x47\x41\xbf\x8a\x0a\x66\x81\x0a\xc4\x1c\xc3\xb9\xad\xa8\x20\x55\x9c\x80\x07\xb4\x82\x07\xd4\xe2\x81\xdf\xc4\x03\xed\x99\x4e\x68\x6f\xea\x00\x31\x30\xd7\x8a\xc1\xbe\x3a\xa6\xee\x23\x11\xe2\xa8\x2b\xd5\x5f\xa8\x26\xf2\x44\xcb\x4f\xad\x30\x6e\x71\xb7\x27\x0b\xb9\xd1\x81\x37\x1c\xe4\x14\x82\x4f\x85\x85\xc4\x7c\x48\x44\x14\x83\x3f\x04\x48\x9a\x11\x86\x9f\xcd\x62\x22\x29\xd2\x0f\x03\x0f\xe2\xda\x04\xaf\x03\x08\x43\x49\xdb\x93\xda\x4e\xae\x76\xc9\x9f\x9f\xac\x14\x47\x57\x80\x60\x84\x73\x05\xd7\xab\x2c\x9c\x0d\x75\xff\x28\xc3\xf5\xe5\x79\x9c\x99\x1f\x72\x0f\xfe\x6d\xd8\x3e\xca\x98\x47\x85\xd8\xa3\x59\x02\xd7\xd1\x0a\x42\xf4\x05\x04\x66\x05\xc0\xe0\xe2\xa1\x72\xbd\x02\x6d\xa7\xe0\x28\x19\x47\x27\x09\x8a\x26\xc1\xac\xc0\x70\x69\x14\x49\x26\x23\x4f\x62\xb1\x4f\xd1\x15\x9a\x19\x5d\xb9\x19\xfa\x1e\x9a\x59\x91\x1e\xde\x05\x96\xfb\x02\xda\x5e\x9a\x89\x51\x6a\xbc\x0a\x33\xf9\xfb\x30\xd0\x05\x41\x74\xa1\x97\x58\x94\xb2\xa6\x89\x08\x92\x87\xda\xf4\xe9\x2a\xdc\x60\xf6\x11\x04\x14\xfd\x8d\xe7\x67\xcf\xcd\x9a\xb2\x1e\xde\x21\x73\x0c\x77\x83\x3d\x3f\xf3\x3d\x6e\xdd\x8d\xe1\x6c\xd7\x18\xc5\xe4\xb5\x60\xf9\xce\x31\x0a\x5e\xed\x3f\x0c\xbc\x62\xc6\x36\x1f\xbd\xed\x17\x21\x3e\xf9\x96\xc1\xa7\xdc\x31\xf7\x9c\x8e\xba\x9f\xd5\xc7\xf3\x16\x94\xff\x46\xf8\xd7\x19\xe9\xbf\x49\x3e\x75\x1e\x96\xed\xb4\x68\xc7\x95\x0d\xdf\x06\x03\x39\xed\x5c\x3b\xa6\x1b\xd7\x73\x90\xac\xbd\x31\x57\xae\x64\xa9\x21\x6f\x7c\xe6\x03\xee\x8b\x80\x5d\x5b\x29\x0e\x52\xec\x15\x74\x83\xe9\xca\x3d\x0c\x52\x81\xb2\x69\x22\xa6\x51\x09\xa2\x51\xf2\x58\x72\x02\x96\xdd\x43\xdd\xa0\xee\xd1\x8d\xe9\x15\x7b\x49\xfe\x33\x5d\xc5\xfd\xc4\x3b\xf2\x4e\xba\xa3\xe9\x5b\xa1\xa8\x27\x89\x98\x56\xd9\xda\x2a\x3b\x43\xba\xf2\x37\xb6\x17\x1f\x06\x5e\xa1\xbf\x09\x72\xba\xeb\xca\x77\x0a\x04\x72\x79\x8f\x2d\xb8\xe5\x4d\x36\x72\x62\xd0\x95\x71\x83\x3a\x39\x19\x23\x07\x87\xca\xbe\x99\x2d\xe8\x2a\xce\x0a\xea\xc5\xec\x48\xd0\xec\xfa\x7a\x17\x55\xec\xd9\x1b\x7f\x15\xf7\x79\x87\xfb\xbd\x29\xe2\x1f\x14\xac\x4f\xd8\x21\x7c\xda\x35\x83\x8f\xbf\x0f\x6b\x33\xe7\xc6\x1d\x0d\xdf\xca\x5c\x64\x64\x20\xad\x7c\xaf\x88\x75\x41\xc5\xd2\xa6\x35\x42\x4a\x90\x8a\xec\xc8\xfe\x9a\x58\x51\x5b\xdb\xbb\xf6\x6b\x04\xf7\x26\xae\x6d\x58\x8b\x7e\x47\x57\xf6\x26\xf6\xd0\xcf\x50\x7f\xbb\x73\xe7\x1b\x01\xc3\x17\xf8\x50\x4e\xab\x8f\xe5\xe7\x83\xf6\x83\x6b\xe9\x56\x0d\x08\xdb\xc8\x6d\x16\x84\x6d\xdc\x61\x13\xc2\xb5\x94\x3b\x6d\x08\xbf\x11\x4c\x3e\x85\xfc\x11\x82\xd6\xe2\xe2\x5b\xc7\x4b\xd2\x10\x14\x5a\x30\xd9\xfd\x2c\x61\xde\x5f\x02\x6d\x9d\x32\x9d\xc2\x82\xf6\x51\xe9\xc2\x83\x11\x7b\x42\xef\x62\x11\xc0\x99\xa8\x02\xf8\x68\x7b\x04\x88\xd8\x01\x2b\x86\xb9\x16\x49\x21\xe8\x20\xee\x6e\xc5\xc0\x38\x8a\x85\xa2\x77\x04\x29\x65\x4f\xb8\x8a\x00\x6d\x2a\x08\x34\x11\x97\x47\xcd\x2b\x82\x15\xeb\x2d\x02\x4f\x16\x7c\xca\x91\x62\x67\x2b\xb1\x9a\x05\x5b\x13\xc5\xf2\x55\x07\xd9\x99\x20\x45\x60\xac\x55\x0e\x1c\x38\x29\x98\x20\x2a\x0b\xe4\x1d\x24\xe3\x95\x83\x98\x22\x68\x4e\x5a\x30\xe5\xf6\xae\x00\xaf\x09\xbc\xbb\x72\x10\xac\x2f\xf3\x57\x5e\x16\x41\x89\x2b\xc0\xbb\x0e\x68\x69\x2b\x7a\x2e\x8a\xdb\xe7\x62\x04\x67\x91\x81\x11\xc2\x95\x01\x6f\xa9\xb4\x16\xd0\x27\xd5\xfc\xd1\x4a\xeb\x02\x9c\x47\x65\x21\x90\xef\x14\x0c\x05\x9e\x28\x3a\x89\x35\x0c\x68\x96\xb2\x92\x91\xb7\x1e\x66\x9b\x69\x64\xd8\x49\x97\xb5\xb6\x85\x58\x15\x73\x1a\x81\x08\x3e\x0c\x8a\x08\xe8\xa8\x70\xe0\x93\xbb\x32\x37\x88\x10\xb0\x97\x58\xd6\xbe\xe6\x67\x52\x11\x82\x36\x35\x02\x46\x6e\x6d\x54\x0e\xb4\x6c\x02\x6a\xb2\x85\x3c\x73\x88\x44\x62\x7e\xca\x62\x72\x14\x4f\xc5\x2b\x06\xf1\xf8\x23\x21\xd9\x6f\x88\x24\x9d\xf1\xf9\x8c\xcf\xcf\x89\xcf\x47\xcb\x51\xa7\xdf\xd7\x7e\xfc\x25\xc0\x6b\x29\x5f\x22\xef\x10\xbb\x36\x48\x01\xcb\x6c\xe6\xc7\x8f\x6c\x30\xcb\xaf\x49\x9e\xf1\x87\xb5\x38\x85\xa4\x12\x18\x56\x5a\xd7\x22\x24\x53\x7e\x6e\xcb\x24\x55\x3d\x0c\x2c\x24\x6f\xe4\x90\x84\xbd\x94\x9d\x77\x2b\x36\xc3\x5e\xe6\x79\xe3\x8f\x2d\x4c\x0a\x2b\x31\xc8\x31\x85\x64\x51\x86\xb1\xeb\xca\xcc\x08\x5c\xa0\x9e\x05\x6d\xc2\x65\x00\x8f\x5e\xa1\x03\x6f\x55\x02\x2f\x2e\x93\x29\xfa\xec\xe6\x8d\xdf\x26\x52\x4e\x21\xe5\xa8\x5c\x75\x2e\x87\x70\x56\xe4\x92\x0a\x29\xea\xdb\x15\xe8\xce\x23\xfa\xdc\x23\xfa\xe5\x4f\x1f\xc7\xe5\xdd\x5d\x35\x7e\x9b\xcf\xce\xbe\x2d\x97\xa9\xc6\xd7\x98\xd1\xa8\x83\x42\xb4\x8b\x2d\x58\xad\xff\x63\x69\x0b\x56\xbe\x4e\x92\xf0\xad\x95\x8b\x0b\xae\xb5\x62\xde\x91\x6e\x62\x00\x8b\x35\x7a\x08\x86\xc1\xe6\x6f\x8c\x03\xe3\xae\x73\x32\x4c\x60\x1e\x56\x76\x76\x3d\x81\x21\xa5\x67\x36\x01\xba\x2b\x49\x75\x63\x34\x44\xbc\xa6\xc0\x6c\x4a\x83\x0d\x33\x4f\x90\x82\x94\x29\x43\x11\x6f\x3c\x8f\x71\x0f\x03\x84\x38\xc3\x08\x44\xb9\xc2\x42\x2a\xe4\xc7\xb6\x4a\x10\x0d\xa0\xad\xa5\x8e\x22\x37\x96\x15\x6f\x53\x17\x52\xb2\x64\x9e\x79\x84\x40\x75\x21\x95\xa3\x07\x9d\xf7\xb9\x9f\x71\x02\x9e\x07\xe0\x09\x03\xf0\x84\x75\x8b\x9d\x97\x96\x1f\xe7\xbd\xfb\xf1\x57\x9e\xaf\xe7\xfc\x56\xf8\xb3\xb8\xa9\x01\xa7\x22\xb8\x5a\x6c\xf2\xc4\xd4\xa6\xf0\x3d\x2b\x26\xe7\xae\x66\x1a\xa6\x2c\xb8\x6b\x4e\xe5\x94\x57\x88\x57\x34\xa3\x9e\xab\x09\x5c\x61\xc1\x7d\xbb\x9c\xea\x6b\xf6\x6d\xc9\x54\xc4\xfe\xd1\x4c\x45\x50\x61\xec\xc9\x3d\x30\x85\x5c\x04\x83\x05\xfa\x67\x32\x46\xc0\xd6\x18\x21\xb5\x57\x35\xa6\xe5\xab\x1a\x53\x7b\x55\x63\x6a\xae\x6a\x1c\x68\xd9\x65\x22\x20\xce\xc9\xec\x3a\xa4\xc2\x2a\xdb\xa3\x55\x0f\xbb\x93\xd6\x3d\x6f\x47\x2b\x2a\x58\x9b\x08\xae\x30\xca\x49\x3a\x02\x72\xca\xc8\x60\x9b\x42\x96\x5e\x81\x58\xc6\xe7\xa2\xf8\xdf\xb7\x8b\xc1\xe7\x61\x7b\xd4\xb0\x3d\x81\x41\x4c\xa7\x47\x5f\x0c\x71\x5c\xd6\x83\xac\x61\x35\xdb\x8b\x24\x18\x46\x99\x32\xa9\xd4\xec\x21\x26\x95\xae\xb0\x36\x10\x13\x4b\xd4\x09\x74\x00\xb4\xd7\x49\x21\x5d\xf9\x8e\x66\xe9\x38\x28\x03\x68\x8a\xa0\x42\x11\x26\xf9\x43\xf1\x47\x7e\xe1\xf0\x4e\x21\x2b\x00\x9c\xda\xc7\x42\x86\x1c\x92\x65\x65\xdf\x2f\xbc\xa8\xd1\x0f\x11\x92\x63\xe9\x3e\xc9\xd9\x7e\x11\xac\x8c\x22\x5c\x34\x46\xe9\x02\xe3\xc3\xa0\x40\xe5\x66\xae\xb6\x40\x51\xfc\x0c\x40\xa0\x02\x19\x9b\x98\x1f\x10\xe8\x78\x13\xaf\xf0\x8f\xb2\x01\xf5\x87\x1f\x8d\x2f\xed\xfd\x3d\xfd\xe1\xed\xe8\xdb\xf1\x3a\xde\x71\xe0\xb2\x5b\x06\xad\x98\xa4\xfa\x4c\x5e\x27\x45\xfb\x51\xc8\xf7\x3f\xf2\xf9\x66\x6b\x32\x99\xf5\x12\xd9\x52\x5c\xb1\x67\x90\xa3\x10\x68\x4b\x04\x27\x16\x7a\xae\x39\xa2\xae\x0b\xb0\xd6\x14\x90\xa2\xeb\x14\xac\x7b\x16\x40\x81\x0a\xf0\x05\xe7\xe2\x70\xf1\x86\x61\x7a\xd9\x2c\xa2\x53\x80\x89\x0e\x34\xc5\x02\x7c\x74\x80\xd1\x49\x5e\x4e\x52\x62\xe3\xe9\x81\x9f\x8b\xb2\x39\xba\x27\x76\x13\x37\xac\x39\x77\x40\x53\x02\x13\x3d\xa0\x8b\x10\xd0\x36\x69\xc4\xc2\x02\x28\x3a\xf0\xf3\x10\xae\x37\x57\xcb\xb5\x2a\xad\xb8\xce\x42\x32\x26\x7e\xe1\x74\x6d\x93\x73\x73\x7d\xdb\x1b\x7f\x25\xd6\x1d\x37\x48\x33\xee\xf7\xc3\x3b\xb1\x47\x0f\xdc\x48\x63\x19\x00\xc6\xce\x0f\xef\xdb\x02\x3b\xdc\x56\x40\x71\xb8\x61\x0d\x87\x28\xa0\x80\x05\x90\x8b\x02\x0b\x49\x37\x91\x48\xa4\x28\xe7\x33\x3b\x40\x2e\x70\x2a\xb0\x5c\xaf\x9c\xd5\x44\x4a\x10\x2c\x49\x06\x86\x87\x11\x8b\x05\xd3\x9c\x58\x97\x93\x9b\x14\x3b\x1c\xad\xa5\x26\xee\x4c\x90\x83\x9d\xb4\x72\x87\x34\x3a\x6f\x6e\x6f\xb7\x1a\x5f\x9f\x62\xcd\x98\xb7\x36\x27\x6a\xc9\xa4\xed\x6d\xb7\x3f\x7b\xd1\x8c\xe1\x25\xce\x0a\xf1\x7b\xe6\xfc\x79\x56\x3c\x6d\x56\xbc\x60\x06\x7a\xc6\xda\x33\xd6\x1e\x72\xde\x35\x69\x6f\x8e\x5c\xb9\x44\x65\xfb\x25\x96\x47\xa6\x9d\xdc\xd5\xfd\xe9\x74\x47\xd1\x5b\x6f\xaf\x54\x8d\x49\x62\xaf\xaa\xef\x7e\x5e\xf1\xec\xb9\x2d\x62\xda\x5b\x2e\xf1\xe5\x99\x2d\x3e\xd7\xbc\x94\xa3\x08\xd1\x77\x9a\x3c\xba\x88\x80\xd6\xc8\x16\x6a\x6c\xde\x23\x20\x66\x6f\x61\x9c\xc2\x80\x77\x41\xcd\x63\xe6\xcf\x26\x7f\xfe\x62\xd9\xb8\x8d\x69\x4a\x61\xcd\xda\xc9\x96\x6e\xe0\x10\x4a\xc5\x3c\x96\x12\x4f\x0f\xd7\x12\x09\x0e\x89\xff\xd6\x34\x22\xbe\x5c\x1a\xf1\xe8\xb5\x86\xf7\x55\xaf\x9c\xf5\x47\xe3\xc7\x2e\x38\xec\xc9\x7f\x70\xd5\x61\x4b\xde\x7f\x67\x09\xf3\x4c\x13\xce\x34\xe1\x2c\xed\x9e\x67\xd0\x79\x06\x7d\x1b\x33\xe8\x0b\xfc\x72\xff\xbe\x1a\x0f\xab\x69\x35\x39\x68\xb1\xbb\x99\x74\xd5\x68\x77\x29\x7e\x9b\xdd\xee\x52\xf4\x61\xd3\xdd\xcd\xc4\x5f\xc5\x03\x68\x63\x16\x40\xb8\x30\x0a\x38\xd6\x9b\xef\x87\xe5\xe3\xf0\x3f\xfe\xf8\xe3\x0a\x0d\x59\x5e\xb2\xd4\x40\xe2\x4a\x56\x53\x89\x40\x72\x54\x87\x9f\x2d\x1e\x07\x02\xa4\x6b\x03\x94\x94\x05\xd2\x3c\xb8\x44\x8c\x47\x44\xf3\x89\xe4\x7d\x80\x68\xea\x02\xc1\x25\x54\x1e\x12\x49\x59\x28\xc9\xb0\x49\xa6\x80\x8c\x78\xa7\x35\xae\xb6\x60\xbd\x51\x0e\x9c\xeb\x88\x7b\x5f\x4a\xe0\x12\x58\x0f\xc9\x73\x54\x1d\x00\x5d\x2a\xb8\x4d\x1d\x30\x41\x26\x40\x60\x94\xf1\x91\x53\x14\x60\x5d\x92\x32\xa8\x98\x97\x51\x00\x25\x02\x43\x3c\x85\x83\xe1\xba\x0a\xae\xcb\x5f\x63\x80\x44\x41\xbc\x04\xef\x68\x7b\x21\x8d\xf7\x20\xbe\x7a\x75\x14\x30\x88\xd3\x5a\xdb\x9e\x87\x02\x97\x22\xe3\xf8\x32\xa6\x1a\xf2\x97\x7f\x5f\xf5\x4c\xc0\xb0\x0c\x8d\x4b\x13\x26\x2a\xc8\x64\x2a\x4f\xf9\x44\xf9\xc5\x32\x71\x42\xec\x80\xd6\x0e\xd0\x78\x06\x07\x90\x05\xed\x08\x8c\x0f\xa0\x8d\x01\x0a\x20\x2e\x91\x09\xb4\x35\x10\x4a\xb0\xc4\xc4\x60\xee\x6f\x14\xc9\x01\xd5\xe2\xed\x14\xbd\x29\x2d\x24\xef\x54\x7e\xe6\xe6\x1a\x10\xfb\x4f\x67\x23\x53\xe7\x90\x1f\x6d\x66\x13\x0b\xd0\x29\x89\xbd\x25\x68\x09\xc9\x1e\xf1\xc8\x14\xd9\x8b\x2a\x32\x1d\x44\x0c\xe2\xe9\x58\x1c\x22\x83\xe3\x99\x1d\x0a\xd0\x91\x1f\x49\xa6\x6f\x21\x36\x92\x40\x8e\x61\x1f\xae\x1d\x58\x25\x67\xc9\x4a\x1e\x48\x3b\xa7\x84\xe4\x53\xe3\xb7\x38\x10\xff\xda\x70\xa3\x03\x03\xa0\xc3\x0d\x30\x80\x5e\x0a\x06\x4b\x04\x3a\x59\x70\xa1\x06\xad\x3d\x68\xcd\x43\x02\xda\xbb\x8e\xb8\x62\x8d\x40\x08\x48\x3c\xd2\x80\x31\x00\x19\x04\xb4\x24\xf9\xc8\x83\x0b\xe2\xf4\x98\xe1\xa7\xbd\x91\x5d\x8e\xe0\x40\x87\x08\x44\xa6\x06\x24\x03\x88\xa5\x78\x73\x56\xf9\xd9\xb4\x26\xc8\xfe\x87\x65\x44\x00\xf4\x0c\x79\xf1\x2b\x6b\x09\xb4\xe3\x9e\x6a\x03\x68\x19\x58\xde\xe7\xb6\x62\xe2\x56\x99\x22\xb7\x98\x69\xb1\x4f\xc4\x9c\x8d\xc7\xc7\x0b\x60\x89\x87\x57\xdb\x02\x4c\x10\x00\x73\xbb\xb4\x6b\xe0\xee\x73\xa1\x9a\xb8\x46\xe9\xa5\xce\xee\x76\x05\xeb\x0b\x20\x8a\xb9\x6a\x13\x2c\x10\x23\xbd\xa1\x00\x36\x70\xcb\x80\xb4\x67\x2c\x31\x06\xc1\xa6\x08\x14\xa9\xc7\x59\x19\xab\xb8\x1e\x8d\x4d\x45\x52\x6c\x94\x97\x1a\x50\x86\xb7\x03\x68\xf8\xcd\x78\x20\x92\x11\x8d\x60\xac\xcf\xa3\x40\x4e\x5c\x4b\x13\x58\xe9\xa2\x8f\x3c\x97\x9a\xbe\x72\x17\xb5\x00\x34\x80\x76\x26\x7b\xc4\x0d\xb1\xe6\x64\x5c\x72\x2a\x99\x3d\x1a\x95\x9f\xcd\xb1\x41\x20\xf2\x8a\x20\xc4\x5a\xba\x8d\x3e\x32\x1b\x74\x3c\x9e\x52\x08\x3a\x0b\x9a\x09\x00\x72\x19\xc1\x01\x26\x57\x00\x69\xe6\x44\x60\x9c\x48\x0d\x92\x51\x73\x0b\x2d\x8f\x79\x2c\xa4\xfb\x46\x27\x2e\xd3\x01\x6a\xdb\x11\x8c\x06\x42\xe2\x86\xf0\x44\xe6\x41\x72\x3c\x01\x00\x13\xe6\x1e\x09\x60\x1c\x38\x43\x3c\x33\x23\x03\x0c\x67\x02\xac\x0e\x4b\x0b\x79\x78\x8c\xcf\xc3\x63\x65\x92\x34\x23\x20\xe3\x19\x64\x86\x30\xfa\x20\xb7\xcc\x02\x6a\x2e\xc8\x35\xa4\xca\x91\x07\xc3\x38\xc0\xfd\xe1\xcc\xd6\x0b\xc0\x3d\xa3\x36\x17\x1a\xeb\x3c\x79\xd0\x25\xc6\xbf\x18\x94\x5d\xf2\x18\x6b\xc0\x31\xd2\x21\x27\x62\x4c\x63\x30\x79\x0f\x9a\x91\xdd\x44\xd0\x8c\xed\x29\x00\x12\x20\x77\x39\x24\x19\x06\x93\x50\x2c\xb7\xbd\xe5\x24\x2c\xe7\x20\x68\x66\xcd\x94\x00\xc5\x3b\xad\x05\x8d\x24\x82\x07\x13\x16\xed\x13\x77\x4d\x80\x85\x9a\x98\x40\x81\xb1\x08\x06\x11\x1c\x0f\x3f\x26\xc0\x94\x31\x20\xa3\x9c\x09\xe2\xd8\x1c\x9c\xcd\xd0\x2e\x5a\x70\x7b\xc1\x73\xc6\x1a\x96\x42\x04\x14\x3a\xc8\xa4\xe6\x71\xf2\x99\x9a\x10\x63\x91\xe5\x12\x0d\x8b\x06\x1e\x65\x12\x70\xae\x8c\x9f\xc8\x53\xd4\x08\xae\x17\xcd\x18\x88\x4b\x67\xa6\x34\x02\x67\xed\x45\xea\xf1\x3b\x50\xcb\x15\x04\x82\x80\x4c\xdc\x3b\xa0\x1d\x17\x63\xa4\xef\x19\xb1\x09\x05\xf4\x82\x30\x8c\x53\x18\x19\x93\x84\x41\x30\x4e\x67\x9b\x7d\x66\x51\x32\xd8\xc6\x8a\x4b\x2f\x16\xf2\x78\xda\x80\xf6\x91\x5b\x05\xe2\x5c\xba\x16\xe4\xd7\x9a\x9a\x39\x8a\x1d\x01\xb3\x76\xcc\x36\x40\x07\xf1\x61\xcf\x82\x24\xe5\xf6\x93\x60\x2c\x77\xdf\xc9\xd4\x65\xfa\xc9\xb4\x25\xe3\x68\x10\xb2\x67\x0b\x31\x36\x07\x12\xe4\x14\x38\x71\xf7\x85\xe8\x4a\xaa\x02\x6c\xb2\x19\xee\x3e\x09\x51\xe6\x84\x51\xe6\x6f\xa6\xdc\x3c\x0a\xcc\x9a\xf2\x7c\x95\x1a\x9c\x17\xf4\x13\x2a\x27\x58\x96\xe6\x7b\x7b\x51\xdb\xc2\x80\x0d\xb6\x16\x3f\xef\x4c\x0f\x3b\xe2\xe2\x3b\xa3\x86\x70\x03\x26\x79\x82\xec\x0c\x2c\x27\x21\x8c\x25\x32\x9c\xc8\x04\xb6\x00\xab\x2d\xe4\xe1\xe1\x99\x5b\x08\x4c\x65\x58\x63\xc8\x1d\xd2\xc8\xd0\x93\x91\x6c\x08\x87\x8f\x59\x64\x46\x1b\x33\xdd\x11\x2a\xcd\x9d\x73\x41\x68\x4f\x91\xe7\x89\xf4\x28\x12\x07\xcb\x94\x14\x10\x71\xa9\x5c\x06\x35\x13\x33\x32\x75\x8f\x82\x8b\xa0\x53\x26\x54\x18\x18\xfa\xce\x09\xe8\x04\x8f\x19\x7f\x6d\x04\xc3\x53\xd8\x11\x58\x96\x6a\x99\xc4\x88\x87\x70\x14\x61\x3e\x31\x9e\xf2\x8b\xaf\x05\x6d\xb9\xc4\x1f\x98\x32\x25\x95\x9f\xcd\xfe\xb5\x06\x16\x20\x0c\xc5\x32\x89\xcf\xeb\xfc\x6c\x38\xaa\x96\x26\x04\x26\xda\x42\x74\xb9\x89\x02\x1d\x19\x1c\xc6\x82\x64\x1a\xcc\x26\xc6\x2a\x8e\xb3\x26\x37\x83\x39\x41\x6c\x28\x8c\x60\x8d\x61\xb2\x58\xb0\x28\x20\x6c\x81\x81\x2b\x32\x3a\xc9\x70\x05\xd3\x68\x27\x26\x66\x3d\xe5\xe1\x5d\x82\x90\x94\x07\xe3\x50\xb0\xcb\xca\xe9\x0f\xa1\xfd\x3c\xa0\xb6\x04\x63\xc1\xd8\xb6\xad\x8e\x79\xc9\x9c\xe1\x88\xcb\x7f\x5f\x20\x13\x93\x1f\x0c\xa4\xc0\xea\x18\x3f\xb3\x2d\xf5\xa2\xe8\x87\x01\x24\x1f\x95\x2e\x99\x9e\x28\x79\xb4\xa6\xd8\x06\xe5\xd0\x06\x3a\x16\xff\x3c\x0b\x57\x32\x85\x65\xf4\xb5\xd9\xa8\x9e\xb1\xa8\x27\x51\xd7\x0c\x55\x2f\xe5\x3f\x0c\x0a\x03\x31\xb1\x0a\x15\x43\x8d\xe0\xe4\x02\x03\xe3\xa4\x20\x9e\x70\x71\xad\x1c\x34\x16\x5c\x74\x75\xcb\xeb\xb8\x0f\xc9\x5a\x70\x1e\x4b\xee\x81\x53\xf9\xd9\x38\x1d\x77\x9e\x29\x85\x43\xff\x30\xf0\x10\x51\x78\x2d\x77\x85\x58\x08\xd0\xb4\x48\x27\xb6\xe4\x0c\x49\x84\xc4\x6d\x75\xde\x14\x2d\x63\xde\xd2\x86\x82\x1b\x21\x3c\xc4\x72\xab\xb5\x1c\xd7\xc9\xbd\x09\x72\xae\xc7\xfa\x1e\x78\xaa\xc1\xc4\xc0\xb2\x45\x96\xb5\xe4\xcc\x8c\x63\x32\xcd\x38\xcc\xb3\x35\x8b\x48\xcc\x36\xbc\x26\x4e\x5c\x80\x8d\xb2\x75\x94\xc4\x59\xbb\xa3\x12\x8c\x49\xfc\x6b\x9b\xca\x88\xa4\x5d\x2d\x83\xc8\xf5\xcb\x29\x19\x30\x96\xbb\x1f\x95\x3c\x1a\xcd\x0b\xbc\x4e\xf9\x48\x50\xcd\x62\x4e\xc1\xfa\xb9\x6b\xf3\xad\x0e\x90\x02\x4a\x8c\x57\x21\xf7\xc1\xf0\x64\x59\xeb\xb7\x02\xa3\x63\xa6\x20\xcc\x4d\x35\xd3\xfb\x10\xf2\xbd\x00\x9e\x2b\x4f\x2c\x47\xb5\x24\x27\x57\x2f\x26\x22\x9a\x07\x36\xf1\x4c\xe0\x9e\x64\xfc\x73\x5c\xb4\x5b\x68\xa4\x0a\xb4\xcf\xc8\xc3\x7d\xf7\xd1\x40\xc4\xc0\x5d\x8f\xfc\x9b\x37\x80\xb9\x60\x48\xcc\xc0\x63\x0d\x29\x92\xb8\x50\x77\x52\x39\xaa\xfc\x6c\x4f\x17\x34\x28\x54\x43\x12\x7f\xf8\x21\x88\xa0\x84\xeb\xbd\x66\xa1\x02\x59\x0f\x5d\x75\x19\x06\xb4\xec\xa7\x9e\x95\xa8\x35\x47\x61\x07\x77\xf3\xeb\xaa\x1c\x0f\x4f\x74\x4e\xb4\x25\xcf\xb7\xb1\x4b\xd3\xdc\xe5\x60\x75\x12\x1f\xfa\xa6\x8e\x90\x50\xa6\x9a\x8b\x1d\xb9\x4a\x45\x5b\xf0\xc1\x83\x8f\xc8\x7f\xe5\x30\x17\x0f\x1b\x58\x26\xca\x84\x1e\x12\x8b\xc3\xf3\xa8\xba\x10\x79\x4a\x4e\xa9\xe1\xcc\x40\xf0\xa1\xa3\x15\xa0\x70\x54\xf1\x8e\x9f\xa7\xba\xc9\x8b\x1f\x41\x4e\xa5\x59\x63\xc1\x33\xbf\x08\xd6\x40\x64\x96\x6f\x42\x00\x62\xbe\x14\x9d\x03\x27\x54\x8d\xa7\x99\x1c\xc7\xd0\xc1\x80\x91\xe9\x6f\x3d\xa3\x43\x2c\x0c\x24\x2f\xbe\x29\xc5\x83\x89\xb8\x16\x49\xa2\xab\x49\x8c\x70\x1e\x9e\x96\x2c\xd7\x30\x23\x92\x4b\x56\x8a\x7c\x05\x1a\x33\x27\x2e\x16\x98\xf9\xb2\xf8\x01\x8e\xe9\xb0\xd3\xb2\x7a\x22\x0d\x88\x25\x78\x8c\xfc\x5b\xd0\x09\x23\x6b\x47\x33\x39\xe6\xc2\xf3\x46\x96\x97\xac\xbb\x76\x20\xfe\x2b\x9d\xac\x2d\x81\xe3\xf2\xa2\xdc\xab\x62\x0d\x13\x34\x96\x75\x88\x1b\x52\x8a\xc6\xa3\xf2\xb3\x9d\x28\x9a\x13\x26\x24\x25\xcc\xb9\x79\xb6\x1c\xc9\x24\x26\x73\x3d\x96\x64\x18\xa0\x9a\xf9\xa4\x6e\x04\x1b\xb9\x3d\xc2\x8a\x60\xc3\x4a\xa7\xb0\xf2\x04\x3a\x04\xc0\x94\xa3\x90\xc5\xe7\xe8\xc1\x18\x93\x95\x8e\x14\xc0\x34\xd2\xb8\xc8\x89\x89\x9f\xd7\x4e\xae\x9f\x21\xcd\xcd\x67\x75\xaf\x80\xc0\xdc\x8e\xe4\x26\x19\x86\x59\x60\xda\xe6\xa2\x01\xa7\x65\x28\xac\x84\xc8\x5d\x08\xfc\x56\x8b\x20\x51\xb0\x14\xcc\x5a\xbe\x28\xf9\x22\xfb\x78\x0f\x89\x89\x61\xe4\x89\xce\xf2\x12\xf9\xac\x6a\x3a\xc1\x31\xd6\xd7\x59\x04\x63\x81\xc3\xbb\x3c\x3c\xc6\x50\xc3\x62\x6d\xca\xf0\x42\x95\x9f\x2d\xd1\x20\x39\x62\x1e\x7c\x47\x08\x37\x73\x29\x03\x8e\xe4\xe0\xa0\x65\xe6\xc1\x6f\xde\x47\x26\xfd\x91\x25\xb1\xa8\xe3\x25\x4b\xc8\x72\x71\x0d\xe5\xc5\x4e\x66\x58\x3e\xbf\x18\x2b\x2b\x67\x14\xb2\x8c\x99\x32\xe6\x17\x19\xad\x65\x5e\x14\xcd\xbc\x20\x2f\x82\x9b\x07\xc7\xe0\xe0\x97\xc8\xc8\x91\x55\x8f\x87\x01\x23\x34\x0f\x62\xb0\xae\x2e\x9c\x98\xdd\x42\xb0\xf9\xf6\x47\xcb\xa2\x52\x1d\x21\x38\x46\xdb\x18\xe3\x75\x5e\x6f\x75\x75\x21\x81\x62\xca\xa7\x18\x48\x90\x4c\xb8\x96\x95\x3e\xc7\xb4\x2e\x80\xc3\x28\x47\xa0\x92\x55\x16\x8c\x27\xb9\xec\xcf\x53\x96\x0e\x4a\xe6\x99\x46\xe5\x67\x83\x33\xd2\xa8\xeb\x20\xa7\x2e\xe5\x46\x10\x59\x60\x10\x0f\x39\x33\x02\x5f\x82\x33\xac\x24\xe0\x02\x01\xa3\xc8\xb1\xcc\x58\x40\xb3\x42\xa2\x59\xf1\xb0\x60\x5c\x04\xcb\xef\xd6\xb2\x50\x06\x5e\x2e\xc9\x60\xc5\x24\x81\x43\x82\x84\x41\x84\x06\x62\x79\x95\x43\x1a\xe5\xc7\x21\x4d\x08\x3c\xcf\xfd\x1c\x64\x0a\x0e\x63\xc2\x22\x42\x2d\xc4\x3c\xd0\x56\xca\x8a\x12\x09\x24\x02\x6a\x34\x60\x78\xbe\x1a\x62\x71\x2f\x32\x5e\x05\x9e\x87\xe0\x97\x9a\x9b\x44\x92\x9c\x15\x3c\x0d\x7a\x19\xf8\x7b\x5c\x02\x01\x39\xe5\xc5\xc1\x6c\x50\xbe\x7e\x84\x93\xb2\x05\x15\xdf\xee\xa5\x6c\x1b\x67\x38\xcd\x4d\xd9\xd6\x12\x9e\x92\xf9\xd1\x8e\xca\x76\x17\xf6\x18\x4f\x65\xdb\xf8\xdf\x37\xb2\x27\x79\xe6\x80\x67\x0e\x78\xe6\x80\x67\x0e\x78\xe6\x80\xdf\xe2\x7e\xf7\x99\x3a\x9f\xa9\xf3\x99\x3a\x9f\xa9\xf3\x99\x3a\x6f\xd7\x4f\x46\xfd\x6e\xa7\x98\x54\x75\xd5\x99\x2a\x28\xef\xa7\x3d\x5d\x48\xd0\xdd\x78\x34\xeb\x2f\x9f\x56\xfe\x76\x56\x9b\x12\x44\x2d\x27\xb7\xbd\x5c\xd0\x92\xa2\x51\xa6\x57\x38\xb9\xbe\x1e\x21\x92\x72\x1c\xd5\xe3\x80\xf0\xc0\xc4\x5f\xa7\xa8\xcc\x95\x07\x42\x7b\x6d\xc1\x24\x9f\x33\x4b\x0a\x77\xdd\x26\x78\x78\xb7\x14\x57\x46\xc1\xb3\xd8\x62\x9b\xd6\xca\xca\xea\x71\x04\xed\x4c\xf3\xe4\x70\xe2\x69\x98\x57\x8c\xaf\x13\xd3\x7b\xb9\x14\xd9\x42\xf0\x85\x01\x6b\xe2\xc3\x00\x1d\x58\xed\x95\x96\x7b\x45\x4c\xe4\x78\x14\xcc\x75\x6d\x45\x1b\x05\xfa\x82\x0b\xb4\x1d\x70\x46\x2e\xe0\xf5\xfc\x62\x04\x4b\xb5\x36\x05\xb7\xa4\x59\x30\x7f\x18\x14\xcc\xdd\xbc\x55\x3c\xfb\x00\x15\x61\xbd\xa8\xbc\x58\x7b\x55\xb9\x49\x4b\xe8\xf0\xf7\xbf\x3a\xbb\xe6\xb0\xa8\xfc\x78\xd8\xac\x66\x29\xcd\xaa\x3d\x0d\x47\xac\x19\xd2\xcc\xd5\xcf\x39\x96\x7d\x9c\xa8\x7c\x4d\xe5\xaa\xfd\x0c\xe7\x3d\x6c\x65\xb3\x94\xea\xeb\x5f\xb0\xfb\x9b\x59\xda\x05\x08\xf9\xe2\x1a\x44\xd3\x91\x3d\x7c\x1d\xc1\x07\xc7\x7c\x8e\x69\x07\x09\xc3\x33\x99\xe3\x78\x9b\xf2\x36\x5a\x92\x4d\x51\x0b\xc4\xfc\x5d\x47\xc7\x68\x02\xa4\x1d\x04\x23\x46\x02\xfc\xce\x0c\x07\x8c\x6c\xdc\x32\x91\x8b\x26\xb3\x37\xd9\x35\x24\x72\xd9\xb0\xc3\x72\x08\xbf\x04\xf1\x52\x26\x57\x54\x83\x4e\x2c\x3a\x30\x03\x30\xc2\xf2\xa8\xdd\xc1\x14\x9b\x38\xc7\x62\x4d\x16\x57\x38\xc2\x1b\xe6\x8d\x72\x77\x75\x8a\xcc\x5d\x85\xc8\x71\x25\x2e\xc9\xce\x6f\x64\x56\x9b\x0a\x6e\x4a\x09\x9e\x98\x31\xcf\x77\xcb\x30\x31\xfd\x0b\xb2\xa7\x15\x28\x6f\xec\x5b\x6f\xc1\x20\x33\xd0\xd4\x74\x83\x3c\x38\xe6\xb5\x18\x79\xe2\xe6\xbf\x36\x30\xb5\x84\x98\x1c\xe8\xc8\x14\x9b\xf3\x93\x8b\x5c\x75\x36\x26\x48\x49\x36\x7b\x59\x6a\x88\xe2\x31\x52\xbc\x81\x89\x8c\x25\x2f\x84\x66\xc6\xc2\x51\xc9\x24\x5f\xc8\x7e\xb3\x2f\x2a\x3d\x15\x2f\x3d\x72\x9b\x77\x13\x2a\x4d\x45\xd9\xd3\xb2\x36\x36\xcf\xd6\xaa\x25\xc8\xb6\x9d\x72\x80\x36\x3f\x5a\xb3\x16\x89\xd0\xae\xd3\x6c\xcf\x0a\xc4\x24\xb5\x6c\xec\xc9\x4e\x6f\x30\xa5\x91\x1d\x44\x33\xdf\x47\x14\x93\x41\xd9\xec\xf4\x1d\x86\x2b\x8a\xd5\x91\xd8\x03\x15\x10\x0d\x0b\x41\x54\xca\xa4\x87\xb9\x6d\x96\x8f\xa9\xb1\xe9\x0b\xe2\xea\x8d\x9f\x73\xb3\x2d\xb1\xd0\xe4\x46\x60\x63\x18\x81\x21\x81\x95\xcd\xd6\x90\x18\x69\x18\x3c\x86\x79\x20\x1a\xf0\x9e\x11\x8e\x20\x79\xd9\xf6\xa5\x14\xc1\x05\x0f\x8e\x84\x09\x7b\xc6\xce\x5a\x22\x53\xec\x80\x21\x2b\x3b\xbe\xce\x89\xc1\x80\xf7\x51\x76\x71\x18\xa1\x45\x10\xe2\xde\xf2\x1f\xeb\x8d\x58\x7d\x89\x35\x11\x09\x02\x49\x42\xdf\x62\x23\x23\x9e\x14\x12\x0b\x48\x3e\xe4\x17\xf2\x4e\xba\x9e\xad\x91\x7c\x01\x21\xca\x96\x6f\x69\xc0\x67\x77\x7a\xba\xbd\x3f\x37\x23\x19\x19\x11\x05\x64\xe3\x48\x4c\x0c\xb5\x80\x5d\x76\xfe\x83\xc9\xdb\xe9\x3a\x89\x65\x40\x2c\xc1\x04\xcf\xbf\xf9\x10\xcb\x6e\x7c\xb6\x1f\x91\x6f\xc6\x1d\xef\xf3\x0b\x69\x37\x03\x63\xb2\x88\xea\x59\x90\x6b\x36\x6a\x9b\xdd\x63\xcf\xa1\x28\x61\x3c\x11\x59\x24\xc5\x40\x62\x5d\x61\x8d\xa4\x09\x9e\xb8\x43\x0f\xef\x02\x04\x8a\x2c\x97\x25\x1e\x45\x66\x34\xb4\x2c\xdc\x68\x99\x65\x89\xe9\x3c\xda\x1b\xd9\x2a\xef\x88\xbc\x9a\x51\x5f\xee\xa9\xc6\xa2\xb9\x30\x83\x1a\x3b\x01\xd9\x1f\x65\x06\x22\xca\x80\x5c\xce\xde\xe8\x05\x26\xc3\x30\xe8\x04\x59\xb2\x35\x26\xef\x44\x1b\xe2\xb9\x53\xc8\x45\xec\xb2\x61\x1e\x8d\xe3\x41\x2d\x59\x2c\xe5\xdf\x1c\x2e\xd1\x31\xfa\x0a\x34\x0d\x68\xdb\xec\xe5\x4b\x21\x62\x80\x64\x68\xc6\x88\x90\xd5\xa1\xc6\x26\xc9\x09\x7d\xd2\x02\x1a\x1e\x79\x9d\x6d\xf8\x3c\x4f\x07\x06\x73\x89\xc0\x04\x2e\x2d\xec\x01\xc5\x4c\xc3\x77\x9a\xb7\x44\x62\x63\xc6\x42\x73\x40\x27\x48\x32\xc9\x68\xa3\xa3\x87\x90\x6d\x39\x7c\x07\x5c\xa6\x03\x3e\x80\x18\x2e\x86\x04\x86\xb5\xb1\xe6\x27\xc6\x2c\x3c\xbd\x45\x71\xd3\x7e\xc6\x14\xaf\x8c\x90\x12\xb3\x5e\x7e\xb6\x26\x5f\x5e\x8c\x1b\x3c\x2b\x8b\xe2\x12\x91\x9f\x6d\x9c\x6c\x8f\x3a\x9e\x40\x3e\x92\x78\xa9\x15\xe3\x18\x39\xa2\xee\xc9\x80\x13\x59\x5e\x5b\x9e\x42\x79\xdb\x36\x36\xfe\x10\x59\x5b\xf4\x5c\x10\x30\x49\xf2\x0e\x92\xb3\x60\x93\xd0\x2b\x94\xc9\x63\x30\x32\xf1\xe5\x49\xaa\x72\x08\x4f\xd7\x20\x3e\xcc\x50\x28\x84\x91\xf9\x2c\x24\x3f\x31\x78\x85\x80\x19\x01\x6f\x88\xb9\x97\x89\xfb\x26\x86\x51\x62\xb8\x40\x2c\x6c\x9a\x24\xbd\x17\xcb\x21\x0f\x68\x18\x17\x1b\xb2\x98\x4c\x23\x75\xb4\x16\x28\x99\x07\x68\x5f\x83\xc5\x4c\xa1\x3a\xad\xa9\x86\x6f\xcc\x16\x0c\xb5\xf6\x0b\xc2\x28\xc4\x40\x41\x33\x99\xc7\xd6\x46\xc7\x31\x21\x73\x36\xa8\xfc\x6c\xb0\x59\xc8\x8d\x0d\xfe\x61\x50\x64\xd1\x3b\xb3\x09\x32\x91\xbf\x32\xb9\x47\x14\x5d\x95\xf2\x8b\xd1\x79\xd2\x8b\xf9\x0b\xe3\xa7\x58\x81\x59\xd7\x18\x85\xf0\xc8\x93\x15\xeb\x10\x6c\xde\x82\x26\xa1\xb6\x06\x33\x0b\x61\x3e\x67\x58\x43\x95\x29\x87\x29\x93\x39\x97\xcd\x56\x1c\xeb\x70\xf9\x85\xb4\x10\x3e\x8b\xa2\x3c\x78\x12\x05\x93\xc4\x46\xca\x33\x24\xa4\xfb\x1e\x99\x2a\xce\x04\x28\x8c\xa7\x62\x4f\xc1\x8a\xa6\x98\x36\xb0\x56\x10\x64\x1e\x64\xd3\x2f\xa1\xb0\x62\xfb\x43\x0e\x2c\xd9\x5c\xb5\x30\x0f\x1e\x10\xc1\x0f\x4a\x1c\xc3\x1a\x8f\x37\x9e\xe9\x79\x47\xb8\x87\x30\x19\x61\x12\x59\x2f\xcd\xb4\x47\x18\x05\xb3\xe1\x56\x3b\x17\x46\x42\x4e\x94\x3f\xd6\xd2\x98\xd8\xb2\x12\x29\xcb\x14\x73\x6a\x28\x4c\xcc\x0b\xe1\x60\xac\x90\x52\x18\xff\xc4\xd4\xd0\xbb\x1e\x78\x1b\x3b\x3c\xa2\x32\xf7\xa4\xcb\xc2\x3e\x05\x5d\x1c\xcf\xf2\x8c\x2e\x3c\xec\x62\x0b\x18\x6b\x86\x03\x4b\xbc\xd9\x45\x9e\x36\x36\xbb\xcb\xeb\x64\xb6\x24\x08\x16\xa8\x31\x15\x12\x43\x26\xc7\xa4\xc4\xf9\xb9\x25\x3c\x2a\x6e\x92\xf4\xab\x07\xce\x6c\x54\xcf\xfa\xf1\xa2\x7a\x6c\x71\xae\xa9\x5c\x8b\x2f\x3d\x6b\x78\x9a\xa0\x48\xca\xd6\xb0\x46\x67\x9b\xba\xc5\x02\x9e\xeb\x16\x9b\x3e\xa9\xdb\x90\xe8\xab\x6d\xdd\x42\x81\xb8\x6e\x8f\xac\x59\xe7\xc1\xc7\xd6\xf8\x50\x80\xe3\x58\x75\x64\xa9\x7b\x01\x48\x84\x6c\x5c\xa8\x0d\xf3\x91\x12\x92\x4d\xfc\x9b\xc7\x33\x25\xf4\x3e\xdb\x3b\x33\xf9\x40\xe1\x20\xb6\xb1\xac\x8c\x3e\x73\x32\x34\x09\xc8\x89\xf9\xae\xe5\xdf\x7c\x7a\x38\x99\xba\x3d\xe6\xef\x82\x06\xb2\x36\xd1\x18\x2f\x16\x2d\xbc\xc2\x1c\x0f\x7c\x83\x08\xd4\x98\x13\x91\xb7\x72\x71\x3d\x31\x40\x48\x28\x92\xa6\xec\xc3\xb5\xa1\xd7\x92\x96\x89\x06\xb5\xc6\x45\xb9\x50\xd7\x90\x72\x26\x18\x82\x69\x0d\xfc\xa5\x29\xcb\xaa\x02\x39\xfa\xd1\xfc\x7d\x6e\xdb\x7c\x92\x78\xcb\xda\xb5\x15\x27\x8b\x06\x3b\xcc\x83\x04\x24\x8a\x9a\x63\x05\x81\x45\x18\xe7\x32\x98\x42\xcc\xc2\xa3\x11\x6b\x99\xc8\xec\xce\x05\x4e\xdb\x50\xfd\x6c\x79\x9a\x28\x93\xbd\xc0\xbc\x56\x2c\x8c\xb8\xed\x49\x24\xb2\x20\xfa\xb2\x48\x83\x86\x58\x6f\xe2\xf9\x47\x32\x5f\x12\x16\x04\x14\x59\xc8\x90\x13\x24\x8e\xb5\x70\x91\x40\x49\x96\x7f\xd0\xa5\xcc\x10\x9d\xe1\xf9\xfb\x30\x28\xbc\x0c\x93\x61\x62\xd2\x21\x08\xb2\x9a\xc5\xf2\x27\x33\x4a\x71\x69\xc2\x40\xa3\x2c\xae\xba\xd8\x80\x8f\x09\xa1\xf7\x3c\xd9\x99\x3a\x38\x6d\x4a\x11\x8a\xe4\xc6\x4f\xef\x5b\xb9\x37\x30\xc7\x50\xc8\x68\xd6\x91\x5b\xb8\x8c\xd2\x45\xc8\xc3\x91\xa2\x2f\x12\xd7\x50\x10\x78\x9c\x53\x3e\x8e\x62\x39\x42\x0b\x2b\x64\xe1\x8b\x21\x97\xbc\xb8\xf0\x65\xed\x5f\x1b\xb9\x54\xc5\x79\x95\x20\xda\x98\xdf\x97\x87\xf1\xc7\xb4\xba\x00\xb0\xae\x9d\x65\xb5\x6e\x4d\x41\x7b\xc6\xfb\x0b\xa3\xc2\xf8\xbc\xf7\x17\xe6\x6b\x2b\x7d\x32\xb2\xd8\xa5\x43\x89\x10\x7d\xb6\x3e\xa2\xec\xff\x33\xdb\x9e\x19\x08\x64\xd5\x6a\x64\xb3\xce\xc2\x32\x64\x58\x68\x7a\xff\x41\x26\x79\xfc\x9b\x4b\xab\x96\xfc\x04\xc6\x30\x5c\x43\xf0\x25\x44\x67\xf8\x97\x2b\x10\x61\x20\xe8\xb0\x14\xca\xe1\x5a\x04\xf0\xf0\x0e\x59\xc0\x95\xf3\xfe\xce\x6d\x64\x6d\xec\x5b\xc5\xb4\x1c\xb3\xb1\x3d\xff\x15\xc1\x9f\x79\x4f\x78\x87\x16\xa2\x67\x41\xc5\xe4\xdc\x8e\x7f\x2d\xe5\x48\x94\x45\xc1\xb4\x1a\x21\xa7\x9a\x98\xd6\xb8\x0e\x68\x16\xce\x45\x4f\xcb\x06\xda\x9a\x05\x7b\x53\x42\x24\x9e\x5f\xf3\x23\x04\xde\x12\xf8\x84\xac\x8c\x26\x96\x42\x34\x58\x1f\x4a\x88\x96\x31\x29\x35\x90\x44\x60\x2a\x44\xc9\x2f\x85\x0b\x10\x53\x24\x31\x48\xed\x80\x65\xe9\x30\x18\x08\x16\x2c\x8b\x6d\x3a\x41\xd2\xae\x04\x22\xe4\xdf\x5c\xbf\x92\x45\x5d\xff\xae\xf1\x9a\x1a\xc1\xf8\xb8\x06\x9b\x42\x96\xd3\x11\x7c\xb4\x6b\x90\x05\xb9\xe4\x98\x23\xde\xa1\x07\xef\xda\x05\xc0\xf5\x02\x10\x6c\xa2\x82\xa9\xc8\x5a\x01\x12\xc1\xe1\x9c\xdf\x88\xbf\x67\x6f\x36\xb2\x83\x28\xb8\x96\x15\xce\xd5\xea\x85\xf7\xd9\xb8\x6c\x0a\xf6\x37\x4f\x21\x9a\x15\x8c\x89\x10\x6d\x3e\x18\xc7\xcc\xdd\x42\x10\xa1\x29\x82\x8f\x41\x3c\xc1\xba\xe6\x3d\x82\x47\xba\x04\x74\x4e\x59\x26\x64\xca\x8a\x0d\xb2\x41\x25\x25\xb0\x76\x1a\xc1\x5b\xa7\xf2\x33\xb7\xc1\x35\x30\x08\x41\x28\xbf\xac\x57\x9a\x40\xa5\x17\x13\x72\xbf\x30\x24\x2f\xe4\x3a\x61\x11\xfd\x95\x87\x18\xa8\x79\xea\xd6\x92\x95\x44\xed\xdd\xc8\xa7\x16\xf9\xea\x45\x05\x96\x9b\xc2\xc3\xe5\x5b\xde\xb8\x68\xc8\xc3\x26\x38\x96\xe7\xed\x70\x34\x7c\xa8\xc6\xa3\x93\x0d\xe6\x6e\xab\xaa\xcb\x04\xe8\x44\x9b\xb9\xed\xd9\xbe\x15\xb3\x81\xc7\x5c\xf9\x18\x5a\x7f\x7d\x2e\xc9\xe1\x4a\x20\x67\x3a\x5a\xd9\xec\xb6\x3d\x7a\x46\x10\x13\x2c\x8f\xaf\x49\x72\x4b\x36\x38\x39\x39\xe3\xa3\xe8\xd7\x26\xbf\xd8\x24\x27\xee\x28\x93\x18\x41\x1e\x21\x3a\x8c\xeb\x49\xa7\x82\x58\xef\x00\x2f\xac\xd3\xa7\xd6\xff\xd6\xfc\x15\xac\xcb\xce\xd0\xe5\x89\xcd\xbd\x5e\xcd\x0b\x24\x9d\x57\x83\xb2\x35\x36\xab\x45\xed\x8b\xac\xdd\x3b\x96\x0e\x85\xe7\xc9\xb7\x20\xd5\xfc\x1d\x62\x92\x38\x1f\x85\x9f\x65\x1b\x62\x45\x90\x50\xe6\x1f\x8b\x0d\xde\x8b\x1f\x7a\x89\x01\x2f\x6f\x26\x08\x53\xe7\x96\x89\xf8\xe3\x64\xc3\x86\xe5\x63\xdb\x48\xc6\xda\x07\xa1\xd0\x8c\xe9\xe2\x33\x3f\x2f\xc8\x1b\xee\x29\x77\x1d\x65\x0b\x87\xe5\x42\x6b\x65\xb3\x47\x93\x38\xaf\xcf\x77\x94\x89\x5e\x1a\xe5\x40\x13\x37\x46\x2e\xa6\x06\xed\xf0\x87\x04\xc6\x1b\x95\x9f\xba\xf5\x34\xed\xf3\x0e\x8a\x98\xd3\xe6\x05\x18\x0f\x88\xe2\xcd\x4c\xbb\x66\x69\x86\x81\xcc\x4a\x9e\x1c\x83\xb1\x72\x28\xcd\x2d\xbd\x82\xb3\x42\x5e\x10\x81\x34\x8b\x46\xd6\x59\x59\xa3\xe6\xf6\x18\xf0\x16\x02\xca\xa9\x39\x12\x1a\x68\xa8\x79\x97\xde\xc8\xc1\x91\x64\x62\x21\x10\xb4\x10\xb5\xb8\x2b\xf5\x3e\x5b\xaf\xcb\x2a\x20\x2b\x9b\x3e\x44\x48\x4c\xf1\x03\x17\x15\x53\xbe\x87\xd3\x88\x02\xc8\xf8\xc6\xca\x5a\xfb\x1a\x05\x0a\x40\xac\x72\x46\x70\x89\xf1\x28\x30\x01\x15\x93\x6a\xd9\x65\x74\x41\xb0\xce\x30\x35\x68\xde\x12\x04\x8a\x97\xd4\xe0\xab\xb8\x8f\x34\xed\x99\xe0\x6f\x76\xbf\xf8\x3c\x2d\xcf\xd3\xf2\x3c\x2d\x0f\x6d\x14\x7e\x18\x8d\x3e\xd4\xd5\xb7\xbe\x53\x48\xa8\xe4\xb6\x0f\xd3\xd1\x8c\xe9\xf9\xd0\x14\xe6\x45\x15\x74\x3c\xd6\x91\xf5\x5c\x16\x65\x66\xac\x0a\xfa\x9e\x85\xe4\x4b\x0b\x72\x06\x24\x2f\xc2\x33\x14\xa3\x11\x8c\x48\x33\x02\x4a\xb6\x47\x90\x5c\xea\x20\x04\x13\x58\x36\xe5\x28\xe3\xc5\x10\xa3\x79\xf5\x10\xdc\x8a\x0b\x5a\x4b\xd1\xfd\x68\xd7\x95\x09\xb9\x47\x44\xf3\xdc\xef\x90\xac\xfb\x09\xc9\x60\xa5\x3c\xa2\x61\x55\x2e\x7a\xf1\x6b\xeb\xe5\x9e\x75\xc7\xa8\x43\xc9\x76\x58\x9a\x35\x20\x93\x29\x46\x96\xe4\xc4\x1d\x27\x59\x79\x23\xd9\xc2\x14\xbf\xbd\xe4\xf3\xde\x61\xe1\x58\xb0\x64\xed\x27\xa6\x2b\x46\x8c\x30\x23\x30\xde\x95\x09\x50\xae\x63\xe4\xa7\x56\x5a\x8e\xc4\xc9\x5d\x27\xab\x7a\xbf\xb1\x3f\x44\xb7\x2a\xd7\x86\xac\x5e\x1b\x20\x8f\xa5\x03\x16\x9e\x33\xb0\x34\xab\xb1\xe8\x6e\x02\x98\x88\x3d\x56\xc3\xa5\x1a\x26\x7a\x98\x9a\x7d\xd4\xc8\xaa\x6c\xcd\x51\x85\xb4\x63\x45\x39\xfd\xeb\x5f\x2f\xf5\x56\x40\xc9\x92\xa9\x1c\x5f\x93\xd3\x6b\x52\x9b\x69\x36\x23\x4c\xf0\x35\xe5\x2b\x70\x64\x43\x35\x12\xeb\xe5\x31\xaf\xae\xe8\xc2\x8b\x0f\x08\x86\x8c\x74\x36\x3f\x24\x66\xde\x63\x8f\xd2\x20\x25\x0d\xea\x40\x90\x53\x84\x28\xab\x0e\xb2\x81\x1a\x92\xec\xea\x38\x9b\xdf\x57\x76\x50\x7f\xb0\xc6\xb8\xbd\x2a\xf5\xc2\x31\xc0\x57\x53\xab\x7f\x2b\x96\x17\x40\x23\x2a\xc2\xbc\xe2\x67\xb4\x07\x93\x02\x04\x97\xf2\x5d\x18\xb2\x9e\xeb\xd1\xd7\x01\x9c\x9c\x31\x46\xdb\x01\x1b\x78\xb8\xe4\x46\x1e\x20\xe1\x29\xb2\x1b\xc8\xc9\x2c\x78\x97\x0a\x1e\xdb\x54\xca\xb5\xdf\xf2\x68\xb6\x02\x8c\x1c\xe1\x32\x49\xf4\x1b\xef\x6d\x11\xc0\x1a\x49\x27\x2b\x43\xfc\x6c\x8f\x30\xfa\xcc\x7a\x6a\x9e\x7a\x32\x17\xcd\x0f\xd8\x2e\xae\x60\x58\xe8\x39\xb2\xc9\xd2\x61\x1e\x2b\x1b\x62\xcd\x59\x5e\x39\xa4\xed\xed\xb5\x05\x17\x18\x97\xad\x38\xa5\xb0\x40\x72\xc1\x22\x77\x2d\x48\x1d\x2a\xd7\x21\x8d\x51\xdc\x98\xd8\xc9\xbb\x58\xc9\xb6\xc7\xa0\x44\x47\x4a\x31\x77\x4c\x90\x36\x3d\x0c\x18\x85\x9d\x15\x5f\x24\xae\x97\x61\x42\x4e\x0e\xa2\x5b\x9e\x74\xc9\xc9\x5f\xeb\x6d\x09\x96\x95\xe6\x30\x5f\x16\x64\x25\x90\xe4\x6c\xad\x78\x37\x01\x1d\x64\x79\x58\x4e\x7c\xa2\x5d\x79\xe4\xe3\xb2\x56\xce\xa7\x2f\x22\x24\x93\x44\xe9\x79\x94\x0e\xed\xc1\x5a\x09\xa3\xd4\x86\xe5\xe3\xd0\xa1\xcc\x7c\x23\x3f\xe7\xeb\x93\x66\xee\x21\x80\x70\x9e\xa1\x35\x60\x92\x43\xef\xb9\x1e\x89\xc5\xb6\x34\xc2\xe6\x5c\xb0\xa6\x98\x77\xb2\x3a\xcd\x11\x60\xd9\x5d\x76\x72\x20\x96\x85\x9f\x90\x8f\x60\x63\x4f\x92\x96\x40\x8e\x29\xf0\x7c\xef\x45\x4e\xa0\xca\x61\x59\x6d\x41\x93\xe9\xc8\xe9\xbb\xbc\x8c\x80\x4d\x47\xb0\x39\x7a\x96\xcf\x91\xd9\xa2\x39\x9c\x2b\xbd\xb5\x72\xd8\xac\x00\xf4\xa9\xdd\x12\x44\x2b\x36\x6b\x72\x92\x2c\x06\xd9\xa8\x16\x3f\x17\x3e\x94\x0e\xac\x33\x2a\x3f\xdb\x23\x6b\xd1\x09\x43\x46\x5f\xe7\x43\xeb\x29\x1b\xa9\xb5\xf5\x61\x53\x9d\xc0\x5d\x1a\x60\x96\x1b\x90\xa3\xea\x66\x69\xc7\x94\x60\x10\xcc\x62\x29\x44\xb6\x0f\xa9\x23\xfb\x08\x24\x36\x6d\x26\x25\x30\x16\xbc\x1c\x32\x96\x0d\x46\x71\xdd\x52\x42\x88\x3e\x5f\xac\x9c\x27\x49\xf6\x46\xe0\x3b\xb9\x8f\x18\xb3\xbd\x9c\x71\x6d\x84\x9c\xfd\xe6\x06\xcb\xd5\x1a\xc8\xac\x40\x16\x0e\x73\x72\x9b\x93\xdb\xec\x55\x42\x8b\x75\x41\x6e\xb4\x91\x96\xe6\x66\xb7\x10\x6d\xfb\xb3\x08\x77\xbe\xd9\x68\xf7\xe2\xaf\x42\x4c\x99\xa8\x04\xf1\xbd\xb0\xd8\xf9\x41\x41\x77\x13\x5c\xe3\xb7\x23\xef\xf9\x07\xa9\xd3\x86\x28\x02\x74\x8b\xf0\x24\xab\xdd\x71\xb2\x0d\xc1\xeb\xbc\x18\xae\x8d\xcb\xc3\xdf\x20\x9a\xa0\x32\x61\xe3\xa8\x42\x1b\x57\x42\x82\xb4\xbc\x03\x82\x82\x38\x22\x00\xc8\x1a\xb2\xb8\x9a\xa1\x30\x2b\xda\x41\x91\x8d\x65\x4f\xa5\x15\x5b\xad\xfc\x9c\x6f\xea\x53\x01\xde\x32\x62\x00\x2d\xed\x85\xe6\x22\xe6\x0d\xc9\xad\xa1\xf9\x43\x84\x34\x71\xe3\x20\xdf\xd2\xd0\x6c\x11\x2a\xae\x85\x6c\xfe\xe2\xde\x33\x73\x66\xf4\x67\x40\x95\x0e\x90\x79\x1d\xe2\x1c\xef\x88\x2c\x0f\x9c\x5a\x62\xb3\x12\xce\x02\x1e\x18\x2f\x07\x77\x93\x30\xf1\xdc\x96\xb6\x29\x98\x0f\x15\xcb\xac\x68\x1a\x92\xcf\xb8\x8a\x45\xa4\xa7\xb8\x30\xbc\xf4\xb2\xd0\x48\x09\x28\x2d\xe6\x1b\xa3\x8c\x98\x0a\x30\x23\x94\xc3\xd1\xb2\xc1\x4c\x9e\xc0\x6b\x19\x0a\xc3\xa2\xbf\xec\x79\x35\x3b\xc9\xe2\xc4\x21\x62\xa7\xa9\xd5\x59\xf1\x9f\x80\x32\x01\x5c\x02\x0c\x8c\xf7\x3a\xf0\x6f\x8e\xf9\x72\xb2\x7c\x52\xb4\xf8\x58\xb4\x48\x59\x32\x6d\xe0\xdf\x02\x33\x58\xdc\x88\x1b\x68\x24\x13\x5a\xac\x1a\x04\x05\x64\xcf\x2d\x39\x01\x4d\x33\x4c\x5e\xbb\x66\xae\x64\x6f\x02\xb6\x45\x99\x38\xc7\xac\x86\x76\xf1\x74\x11\x9a\x16\x6a\xd0\x36\xbb\x6a\xe8\x34\xbe\x1b\x5c\xcc\xfb\x5a\x88\x8d\x43\x0f\x6f\xea\x26\xb5\xf3\x3c\x2d\x59\xc0\x32\x4b\xd3\x52\x22\x66\x0d\x0f\x94\x41\x26\x0b\x14\x29\x53\x75\x6e\x9d\xf7\x54\xae\x82\x5d\x9a\x41\x24\xfb\x75\x0d\xe1\xb0\x45\x4b\x5c\xda\x89\xa0\x17\x8f\xb0\xf2\x40\x5b\x67\x04\xc7\x68\x4a\xc7\x2a\x8e\xca\xcf\x76\x81\x57\x33\xca\x89\x25\xb4\xf3\xa1\x79\xce\xe9\x9b\x95\xad\x06\x2b\xa7\xde\x53\x68\xed\x26\x32\xc7\xc9\x2d\x98\x73\x9d\x45\xcb\x1a\x2a\xb7\xda\x3e\x99\x6d\x79\xd1\xbd\x93\x37\x2d\x33\x78\x93\x6b\x9d\x44\x88\x0d\x86\xb7\xbd\x96\x16\x0b\x45\xe2\x34\xd6\xbb\xcc\xde\x9a\x09\x31\xe7\x19\x62\xb1\xd9\x70\xa9\x7c\x3e\x5e\x7b\xdb\xb2\x9c\x86\xe1\x50\xcb\x6f\x4c\x13\xc1\xda\x5e\x76\x2b\xc5\xfa\x6d\x91\xb9\x6e\x4a\xa5\x18\xd2\x62\x30\x0b\x2c\xe4\xa9\x91\x57\xe0\x6d\xd3\x29\xf1\xf7\x10\x9a\x62\x1b\xca\x38\xc7\xcf\x39\xda\x34\x0c\xb7\x79\x69\xe8\xbf\x90\x44\x7e\x11\x97\x42\x0c\x72\xd9\x71\x0b\x85\xb8\x85\x30\x24\xde\x70\xc4\xb8\x7b\x6e\xe9\xcb\xe8\xe0\xa8\xd3\x56\xe1\x5a\x7e\xee\x5a\x26\xeb\x4a\xf1\xee\x81\x21\xac\xa2\x98\x38\x5f\x59\x74\x06\xd5\x9c\x8d\xd7\x8d\xe7\x12\xed\x44\x64\x52\xcb\x96\xa5\x24\x9b\x92\xe2\xe8\xa1\x91\x16\x32\x3f\x16\x73\x96\xdc\x49\x16\x54\x5c\x27\xcf\x25\xee\xaa\x13\xa3\x33\xe7\x59\x20\xe6\xce\x94\x62\x66\x6d\x68\xde\x1e\x41\x71\x74\x36\xe3\x6e\x6c\xf1\x05\x97\x59\xb0\x29\x5a\x3e\xd2\xa6\xc9\xb2\x48\x9d\x67\xaa\x16\xaf\x1e\x56\x4c\x38\xed\xfc\xfa\x36\xb1\xf6\x31\x10\xd0\x03\x89\xd5\x7c\x58\x74\x55\x0c\x7a\x22\x6b\x68\xa2\xa5\xb5\xa0\x91\xcd\x79\xe3\xc4\x81\x83\x38\x47\x92\x89\x48\xb1\xb3\x90\xa1\x64\x7a\x87\x66\x8f\x15\xc5\xde\xd9\x46\x26\x1b\x8d\xa7\x0d\x39\x91\x6f\x33\xe7\xc8\x86\xda\xa9\xd3\x8a\x3c\x0d\x72\x49\x83\x9b\x91\xd5\xa1\x24\x10\xad\x1c\x17\x9c\x4f\x1c\x57\xd8\x4c\x10\xe7\xf3\xa6\xf1\x85\x21\x0d\x6c\x84\x1d\x34\x91\x7f\x73\x74\x6c\x22\x96\xe7\x1f\xce\x69\xc1\xda\x04\xb4\x73\x0e\xb4\x10\xeb\xc4\xdb\x85\x58\x75\x35\x8d\xc8\xe6\x7c\x2c\x74\x1b\x46\x3e\x58\x1c\xdc\x17\xd3\x04\x27\x8e\x94\x48\x65\xbb\x06\x41\x68\x23\xe6\x0e\x59\x1e\x48\x79\x81\x88\xe5\x67\xf9\xb1\x08\x24\x6c\x45\x10\x36\xe4\x9d\x9c\xd6\x47\x8a\x0d\xe2\x76\x66\x2e\x3d\xc4\xc6\xdb\x4c\x23\x9d\x64\x61\x84\x9a\x5f\x34\x0d\xad\x49\x32\x8b\x1d\xca\xbe\x87\x0e\x08\xda\xa7\xd2\x40\x30\x46\xe5\x67\x33\xb2\x2e\x89\x75\x98\xec\x64\x2d\x30\x8f\xb2\x2c\xb1\x63\x82\x74\xe6\x74\x73\x2e\xec\xce\x27\x89\x1c\x37\xa8\xc5\x5c\x29\x45\xc6\x3d\x62\x9a\x69\xa9\xb5\x54\x30\xe0\x64\xf5\xc7\xc7\x54\x37\x93\x3b\xb6\xd4\x25\x1f\x4c\x10\x66\x9f\xed\x0f\xb4\x09\x8d\x80\x11\x65\x9d\x4a\x8c\xc5\xb3\xf7\xac\x6c\x55\x29\x4b\x37\x0c\x71\x97\xb0\x44\x2b\xa6\xda\xf2\x9c\x1b\x19\x88\xe3\x92\x34\x9b\x53\x3d\x71\x99\x21\xbc\x55\x28\x5c\x6a\x8c\x6d\x74\x28\xc5\x71\x8d\xc5\x05\xd2\x60\xf6\x22\x15\x31\x66\xbb\xf8\xd6\x2e\x21\x0b\x54\x37\x16\x22\x89\x19\x88\x00\x8b\x84\x1b\x09\xe6\x66\x7a\xe4\x88\x7f\x73\xb4\x10\x2b\xa8\x0e\x23\x8f\x58\xc6\x18\x0f\x24\x47\x3c\x58\x4b\x99\xb5\x82\x4f\x86\x9a\xa8\x10\xcd\xfc\xb5\x46\xe4\x67\x70\xda\xf0\x6f\x89\xad\xf1\x3c\x98\xb5\xe2\x16\x63\x93\x13\xde\xc0\x03\x29\xd6\x2d\x8d\x53\x1b\x13\x20\xe8\xc6\x41\x51\x0c\x22\xbc\x32\x31\x4d\xe2\x26\xaa\xce\x98\x96\xa9\x63\x4b\x7f\x1b\x66\xe7\x89\x45\x24\x4f\x0b\x27\x24\x49\xfc\xb5\xb1\xa0\x9e\xdd\x24\xf9\x04\x26\x59\x11\xf7\x5d\x08\xe0\x0c\x53\x1d\x71\xb2\xd1\x9e\x3a\x99\x17\x29\x82\x00\xff\x8d\x36\x0b\xdd\x9b\x08\x27\x90\xed\xcc\xe5\xc0\x4c\xc1\x29\xf9\xe6\x0c\x00\x0f\x90\xf1\x66\xbe\x06\xc9\xe8\x98\x6d\xab\x22\x38\x64\xad\x74\x61\xe5\x2f\x85\x89\xab\xa2\xec\x68\x4a\x8c\xb1\x9a\xe9\x21\x86\x56\xa5\x38\x85\xc3\x25\xfa\xd6\x12\x88\x46\x00\x6e\xc5\xdf\x79\x44\x3d\x47\xd1\x12\x1c\xe5\x75\x92\xe5\xa1\x45\xb3\x46\x04\x1a\x1a\x60\x33\x7a\x27\xd6\x46\xb3\x05\x30\x53\x8c\x4c\x05\x62\xd1\x92\x81\x46\x96\x14\xdc\xd7\x2d\x59\xc7\x06\x59\x71\x9e\xa4\xf1\x68\xd6\x50\x86\xa2\x25\x0d\xa5\xdc\x75\xac\xa8\xb9\xb5\x37\x53\x4a\x71\x89\xd5\x69\x78\xb9\x69\x99\xb9\x6d\x98\x79\xf6\xf8\x83\x5b\xd8\xbc\xd0\x78\x6d\x28\x1b\x6c\x8a\xa8\xec\xb3\xee\xee\x1b\xcf\x29\x56\xbc\x85\xa0\xac\xae\xce\xf1\x31\x00\x31\x36\x52\x12\x0e\x21\xf8\x0c\xc6\xb3\x40\x64\xc0\xcb\x12\x05\x46\x12\xff\x6f\x22\x18\x95\x0e\x9c\xc8\x4b\x0b\xce\x23\x4e\x58\x52\xb4\x75\x86\x98\x0b\x9d\x7d\xaa\x93\x59\x57\x9d\x4a\xa0\x60\xf9\xb7\xc4\x3d\xf3\x18\x08\x01\x0e\x62\x4f\xc2\xe3\x10\xc4\xf0\xae\x59\x35\x98\xe3\x65\x4a\x0d\xab\xce\x9f\xd9\x1b\x22\x5a\x71\x24\x24\xee\xef\x34\xb1\x74\xca\xf4\x48\x67\xdd\x30\xb3\xc5\x98\xdb\x92\x45\x9a\x52\x8e\xba\x60\xa3\x7c\x09\xc1\xcc\x62\x50\x16\x75\x56\x55\x44\xb4\x0f\x83\x82\xa9\xb6\x29\x78\x1a\xd5\xc0\x1c\x93\xf1\x9d\x69\xa2\xe7\x0f\x51\xdd\x9c\x71\xbd\x02\x3c\xc3\xd5\x12\xf1\xa7\xf4\xcc\xb3\xd6\x40\x9c\xfe\x61\x60\x81\x92\x29\x10\xe4\x58\x13\x23\x62\x48\xa2\x99\x26\x56\x54\x05\xac\x96\xa8\x2e\xf2\x9a\x09\xb0\x88\x6c\x22\xf1\x6f\x81\x2c\x21\xcb\xd0\x46\x7e\xf3\x21\x89\x99\x95\xd5\x62\xf4\x5c\xa0\x6c\xba\x67\xfb\xc7\x64\xa5\x35\xd1\x5a\x0e\x54\x08\xc6\x04\xf1\x66\x23\x3a\x4a\x0c\xa6\xce\xf2\x2f\x82\xd1\xe9\x07\x31\xa0\x52\xf9\x39\x5f\x39\x72\x49\x6e\xea\xae\x19\x57\x54\x5e\x88\x5d\x90\x0a\x6a\xec\xcd\x03\xd7\x5f\xae\xa8\x28\x4c\x3d\x93\xe1\xc6\x3d\xbc\x43\xd1\xfd\x55\x80\xe0\xea\xc6\x80\xd0\xd2\xfc\x25\x5b\x7d\x11\x90\x78\xf6\x89\xae\xf1\xf2\x2a\x5d\x36\x91\x09\xcc\x6a\x8f\x33\x7b\xd7\x96\xae\x23\x24\xeb\x55\x84\xa4\x59\x83\x25\x39\x3e\x45\xc9\xce\x29\x21\x13\x69\xd6\xfc\x79\x08\x31\x1f\x76\x01\x9b\xae\x23\x50\x50\x09\x82\x4d\x25\xc3\x85\x54\x7e\x36\x73\x84\xe7\x3d\x41\x70\xa9\xa6\xec\x7c\x4b\x44\x07\x8a\x40\x73\x7c\xc1\x90\xf5\xc3\x95\xfe\x36\xea\xb5\x23\x7c\x78\x17\x20\x26\x85\x72\x2e\xaa\xa6\xbc\xea\x27\xf6\xd6\x11\x96\x3c\xf7\x24\x2b\x78\x64\x35\xf2\x6f\xc1\x0a\x2d\x43\xa6\x2e\xe4\x8a\x6e\x56\x12\xcb\x6c\xf5\x97\x9f\xad\xd6\x12\xf2\x12\x39\x63\x15\xca\x31\xb4\xc4\xf3\x24\x3b\x06\xca\x68\xc9\x20\x16\xbf\xbd\xdc\x52\xed\x1b\x3b\x57\x21\x2d\xa6\x71\xd9\x2b\xbb\x5f\x21\x47\xc8\x96\x1b\x57\x2d\x1a\x8a\xf8\x2f\xd5\x62\x04\x92\x1c\xf3\xb5\x94\xf8\x37\xd7\x92\x85\x7d\x38\x31\xdc\x14\x2f\x89\x5c\x9a\x31\xb1\x59\x55\xb3\xe2\x42\xae\x2e\xb2\x28\x25\x94\xad\x03\xd6\x21\xcf\xdb\x64\x1a\xb7\xa3\xe2\xa4\x92\xdc\xc3\x80\xe5\x1c\xb9\x37\x8b\x87\xc3\x7a\xe9\xe9\x92\x7e\x66\xc4\x4f\xaf\x17\x88\xc4\xc8\xd3\x83\x04\xd5\x12\xff\x5a\x60\x8a\xd4\x27\x6c\xda\x26\xfe\xad\x84\x6b\x2b\xa3\xe0\x0c\x08\x11\x8e\xb2\x39\x39\x37\x37\xb7\x5a\x6e\x43\x5f\xf3\x66\xfa\xb7\xbf\xfb\x57\x7f\x79\xfb\xdf\x83\x72\xf2\x8b\xea\x77\xbf\x7f\x55\xbe\x52\xfc\xfe\xcf\x61\x7f\x3a\xf9\xfe\xd5\xfd\xa4\x1a\xff\xe3\xae\xec\x54\xff\x73\xf8\xcf\x49\xf5\x4a\x7d\xfa\xfe\x15\xbd\x52\x9f\xe5\xd9\xba\xa9\xd5\x2b\x6e\x6a\xcf\x4b\xce\xe7\x25\xe7\xf3\x92\xf3\x79\xc9\xf9\xbc\xe4\x7c\x5e\x72\x3e\x2f\x39\x9f\x97\x9c\xcf\x4b\xce\xe7\x25\xe7\xf3\x92\xf3\x79\xc9\xf9\xbc\xe4\x7c\x5e\x72\x3e\x2f\x39\x9f\x97\x9c\xcf\x4b\xce\xe7\x25\xe7\xf3\x92\xf3\x79\xc9\xf9\xbc\xe4\xfc\xef\xb9\xe4\x7c\x7b\x7b\x2b\xa6\xd4\x83\x72\xf2\xcb\xae\xc3\x07\x83\x7e\x67\x3c\x9a\x8c\x6e\xa7\xdf\xfa\xf9\x03\xa3\x4c\x8f\x39\x3f\xce\xe4\x79\x65\x6e\xcc\x8a\xb1\xbb\x71\x86\xdc\xba\xb1\xbb\xa5\xa4\xcc\x15\x35\x79\x7a\x85\xfc\x59\xcd\x18\xf1\xaf\x97\xda\xaf\x64\x34\x2a\x67\xcd\xf5\xdd\x10\x5e\x99\x59\xce\xba\x72\xa6\xc3\xfd\xe0\x7f\xd4\xdb\x6a\xcc\x7f\xae\x88\xb3\x36\x75\x6e\xc9\xff\xe3\x8f\x7f\xfd\x41\xc7\xbd\xb6\xee\xc3\xd1\xa0\xec\x7e\xbd\xd3\xe3\xfe\xc4\xd3\xe3\x6b\x27\x4f\xb7\xdc\x77\x37\xef\x1c\xfe\x98\x92\x0f\xcd\xc9\x2e\x04\xe7\xf3\x69\x59\x9c\x11\x24\x9e\x03\x3c\x4f\xe4\xec\x53\xa2\x02\xf3\xcd\x8a\x31\xd9\x59\x00\xb9\xf7\x82\xd9\x2e\x31\x9d\x8d\x85\x05\x1b\x6e\x2c\xd8\xd8\x63\x4e\xef\x1e\x56\x5c\x26\x34\xae\x14\xfe\xfa\x43\xc4\x76\x7b\x43\x2e\xc6\xb8\x06\xb2\x72\xbf\x25\xd6\x4e\xb6\x2c\x98\xb6\xcb\x71\x28\x5f\xc8\xa1\x5f\x02\x97\xdd\x6c\x8a\x53\xce\x14\x6b\x12\x81\x09\x39\x0b\x37\x31\x86\xda\x82\x41\x2b\x07\x1d\xe4\x12\x2b\xc4\x83\x55\x6b\x52\x09\x9c\xe5\xfc\x41\x8e\x99\x18\x2b\x95\xc4\x78\x13\x41\xbb\x5a\xdc\x8c\x3a\x1b\xaf\x81\xe4\x72\x2a\x1b\xdb\x66\xce\x22\x24\xf2\x75\x90\x03\xe4\x42\x36\x66\x05\x83\xe2\x61\xfd\x74\xef\xea\xdc\x1d\xfd\x32\x2d\xbf\xf9\x69\xcb\x4a\x11\xc3\x85\x62\x99\xdf\xf3\x53\x2b\xd4\x5a\x5c\x2c\x04\xb5\x1a\xae\xe5\x94\x89\x36\xe1\xe1\x1d\xe6\x03\xdc\x01\x58\xb6\x4d\x59\xbf\xf5\x4c\x7e\xad\xfc\x25\xc3\x82\xb2\xf8\xb1\x74\x94\x1d\xc7\x3a\xb9\x8b\x54\x4e\x71\x51\x14\x1f\xb5\x3d\xa6\xba\x1d\xc0\xbc\x04\x44\xe4\xf3\xc5\x5c\x24\x37\x82\xce\x20\x39\x2f\x19\xc5\x9d\x48\xe4\x62\xe5\x2a\x20\x7e\xe9\x09\xd5\xee\xc8\xea\x82\xac\x24\xb3\x92\x2f\x7f\x28\xcd\xb8\x76\x23\x92\x16\x85\x46\x8c\x76\xed\xd6\x41\xc4\x12\x65\xe9\x13\xdb\x05\x50\x2d\x07\x9c\xe4\xbc\x1b\x10\xcb\x0c\x79\x79\x1d\xa5\x30\xa4\x5a\xdc\xe4\xca\x8a\xef\xca\xce\x89\x38\x99\x05\x0a\xcc\xf0\x35\xe5\x87\x04\x1b\x91\xd6\x08\x92\x4e\x37\x81\xf5\x6b\xd1\x0c\x59\x04\x95\x3d\x3a\xae\x20\xca\x4b\x4f\x36\x57\x1e\x06\x0e\xbc\xcb\x37\x17\xc5\x0e\x38\x9b\xbd\x29\x68\xcb\x92\x5b\x3e\x7c\x1f\x99\x91\xcf\xe4\xb2\xab\x79\x59\x46\x1c\xce\xf8\xec\xc0\x94\x9c\x97\xc2\xfc\xd2\x50\x90\xdc\xe4\xc7\x7f\xc9\x79\xb9\x2a\x27\x9f\xcf\x63\x45\xb1\x23\x9f\x2c\xb6\x80\x5c\x60\x64\x9d\x83\x14\x5d\xf3\x96\x7d\xc7\x05\x07\x28\x4f\x9a\x21\xcf\xd0\x8e\xec\x1a\x8a\xf7\x04\x07\xac\x72\x04\x1f\xf2\xdf\xbc\x08\x2f\x67\x1e\xbd\xac\x10\xb3\x04\x6a\x99\xd9\x07\x72\xeb\x88\x25\xcb\xeb\xbe\x70\x60\x90\x1e\xde\x45\x96\x1a\x1a\x1c\x92\xab\x32\x1b\x9f\x3c\x4e\xfe\x8a\x3f\x5e\x8d\x2c\x51\x91\x8c\x27\xb1\x64\x2a\xba\x9f\xf5\xa2\xc2\xd5\x08\x5e\x67\xf7\x5f\x9d\xac\xe1\xcb\x42\xc8\xc2\x63\x97\x68\x85\x25\x58\x8a\xfc\xcb\xe3\x2a\x97\x3b\x6a\xec\x65\x34\x61\x99\x50\x76\x44\x19\xeb\x42\x12\x5d\x9c\x65\x64\x84\x90\x18\x36\xb2\x2f\x47\xc9\x64\x1f\x7d\xa6\xb9\x4b\xcf\x5b\x46\x9a\x9a\xcb\x62\xb9\x5d\x44\x4b\xf1\x4d\x82\xac\xb8\x72\xa0\x5c\x72\x85\x72\x3a\x4d\x5c\x2f\x5b\x12\x27\xa6\xc6\x23\xab\xf0\xc4\xbf\x06\x8d\xf2\x8e\xa3\x78\xd1\x09\xed\x2d\x94\x3a\xca\x8a\xa0\x5c\x2f\x16\xf3\x62\xda\x7c\x29\x18\x19\x38\x72\x7e\x53\xee\x16\xc2\x42\x2e\x8d\x2c\xc5\x35\x2f\x65\x67\x05\x9a\x05\x24\x86\x90\x9f\x21\x04\x87\x32\x8d\x44\xa4\xe4\xf9\x65\xf2\x05\xb7\x24\xd7\xfb\xea\xbc\x13\xe1\xf2\x6d\x95\xcd\x0d\x5e\xd2\x68\x32\x8c\xbf\x98\xb2\x4f\x25\x93\x25\x30\xc2\x94\x63\x31\x31\xca\xe1\xc3\xa0\x90\x85\x60\x65\xc0\x99\xc0\x73\x4b\x3c\x72\x08\x12\xa3\xce\xd3\x62\x39\x30\x1f\x9d\xd3\xf4\x30\x40\x0f\x91\x61\xb0\x9a\x47\xeb\x06\x57\x56\x32\xe9\x26\xd3\xca\xb1\xcd\xf0\xb7\x4b\xdc\xcb\xa2\xa7\xd5\x78\x5c\xde\x8e\xc6\x83\x6f\x87\x4d\x1f\x76\xf2\x32\xef\xa0\xbb\xb4\x7f\xff\xbb\xcb\x0c\xcc\x31\x1c\x0c\xa0\xab\x2d\x44\xf1\x27\x14\x09\x67\x0e\xbc\xb5\xd7\x0e\x9c\x4e\x2a\xe6\xe3\x7a\x1b\x6c\xd0\x6a\xab\xff\x4a\xaf\xda\x1b\x5a\x93\x91\x13\x86\xa1\xc9\x2c\xc5\x45\xf1\x7d\x6d\x6e\xb8\xfc\x2d\x25\x2c\xb7\x43\x9c\x19\x69\xc9\x4b\x92\x37\xa8\x9c\x97\x9f\x0f\xb9\x99\xb2\x3d\x65\x96\x1a\x6a\x66\x45\xae\xac\x90\x1c\x52\xdb\x26\xf7\xac\xfb\x93\x69\xd1\x19\xd5\x3c\x74\xfd\xd1\x30\xdf\xd9\xff\x7a\x38\x9a\xfe\xb9\xf1\x92\x21\x37\xf7\x7f\xf7\x76\xf9\x4b\xe5\x5b\x47\x54\x77\xc9\x31\xeb\xd1\xe5\x0c\xa7\xbd\xfc\xfe\x67\xfa\x4e\x75\xeb\xb6\xa8\xe9\x92\x3f\xd7\xf1\xe8\xd3\xe7\xa2\xfa\x74\x37\x9a\x54\xdd\x82\xa1\x32\xc9\xc5\x1d\x6c\xc4\x9e\x9c\xc7\x56\x7b\x7f\x37\x99\x8e\xab\x72\x70\x5a\x95\x1b\xb9\x0e\x55\xf7\x15\xbc\x84\x9c\xe8\xe4\x58\x99\x2b\xd7\x61\xe6\xa1\x74\x41\x0a\x52\x41\x8a\x66\xc8\xfc\x06\x01\x21\x89\xc7\x01\xea\xa1\xed\x48\x12\x45\x05\x87\x15\x74\xe3\x3a\x72\xa4\xbe\xe0\x1c\xfc\xef\x61\x50\x90\x42\x7d\x15\x66\x05\xf5\x50\xcf\x56\xa8\x45\xac\x92\x2f\xcd\xd7\x71\xbf\xf0\x22\xfa\xbb\x49\x1d\x67\x65\x7d\x5f\x15\x19\x1f\xd6\xe8\xe3\x4b\xf4\x1c\xf3\xdb\xc0\xf5\x05\xfb\xf0\xf8\x3d\x00\xf4\x65\xf3\x52\x27\x75\xc4\x2d\x4d\x6f\x8f\xba\x94\xe9\x11\x25\xed\xba\x91\xe9\x94\xa2\x5e\xe2\xec\xf0\x0a\xf5\xfa\xd0\x4f\xda\x21\x9f\x8f\xf4\xd2\x08\x23\xa9\xd3\x32\x14\xfe\xb4\x0c\x7f\x88\x39\xf5\x82\xc0\xba\xe6\x7c\x4c\x30\xfa\x5f\xb7\xa3\xf1\xf7\x83\xb2\x3f\x2c\x86\xe5\xac\x98\x8e\x3e\x7c\xa8\xab\x9f\x5f\x34\x13\x20\x15\xd7\xa8\xd7\x64\x0e\x9b\x39\xfc\x54\x0b\xbf\x87\x81\x56\x74\xd2\x70\x68\xe5\xff\xed\x90\xfc\xc5\x00\xf5\x4b\x5e\x93\x3d\x78\xa7\xc3\x4a\xaa\xd5\x5b\x1d\x72\xd4\xda\xbd\x0e\x72\x1b\x43\x8e\x39\x7c\x6b\xc3\x4a\xba\xaf\x7f\x6f\xc3\x79\x9d\xf8\xe5\xad\x13\x3f\x5a\x43\xcd\x4a\xc4\x71\x0a\xea\x91\x79\x0f\xea\x8b\x6b\xf9\x5e\x24\x57\x10\x97\xa8\x8c\x8b\x31\xf8\xe4\x2e\x49\x83\x4e\xd6\xaa\x00\x4e\x27\x4b\x8a\x50\x79\x30\x5e\x5b\xcf\xaf\xee\x92\x30\x5f\xd8\x85\xd9\x8b\x31\xe3\x3d\x29\x8c\x8a\x2e\xd1\x4b\x38\x7f\xba\x45\x1a\xa7\xdc\x25\x3a\xe5\x81\x9c\x36\x49\xa1\x83\xe0\x9d\x0a\x60\x88\x50\xa1\x87\xe8\x88\x2b\x0b\x81\x7c\xba\x46\x9f\xdd\xe4\x6b\xd0\xe4\xe9\x12\x1d\x24\xc3\x93\x58\xcb\x1a\x1c\x3a\x30\xe2\xba\x5f\x83\x25\x67\x14\x5a\x6e\xb3\xf8\xfb\x8d\x11\xaf\x23\xa4\xe0\xe4\x4a\x20\x8f\x68\x2e\x23\x84\x68\x2d\x57\x85\x26\xea\xc0\x1d\x22\x87\x46\x79\xfe\x77\x69\x9b\xf6\x79\x65\xb8\x31\xf2\x6e\x54\xba\x94\xd2\x8c\xf6\xa4\x0c\x44\x63\xa3\xf8\x0e\xb3\x18\x9c\x72\xfc\x16\x29\x99\x1b\xf4\x80\x41\x87\xcb\x79\x0a\x0f\x2e\x12\xe7\xc7\x00\x3e\x99\xc8\x6f\x5c\x14\xe9\x0c\xa0\xb6\x32\x22\xe5\x15\xd1\x65\xe0\xe0\x28\xdf\x69\x9e\x28\x71\x9e\x34\x2f\x22\x02\x7a\x87\x69\x5e\x78\x50\x4d\xb5\x37\x4d\x33\xb8\x14\x6b\x7d\xe2\x66\x79\x8d\x96\x73\xc4\x48\x96\xbf\xd1\x25\xb9\x1a\xc9\x3a\x12\x70\x39\xb9\x80\x4b\xcc\x8f\xe5\x7a\x19\x9f\x28\x5e\x8a\x8d\x88\x93\x2d\xc3\xc0\x35\xa2\xe5\xd7\x98\x18\xa2\x56\xa1\xb9\x44\xf1\xd5\x2d\x8d\x63\xd0\xf3\xd8\xf2\x60\x70\x4b\x2e\x31\x36\x11\x5e\x91\x9e\x27\xe3\x57\x73\xc9\x4f\x84\x84\x81\xbb\x04\x96\x82\xb4\x21\xf9\x14\x14\x46\x70\x3e\xca\x08\x5b\x4b\xd7\x6b\xc8\xf7\xd3\x3b\x8c\x4a\xca\x76\x8e\x78\xa4\x50\x2c\x86\x1d\x51\x94\xd7\x4b\x64\x58\x5a\x2b\xb7\xca\x37\x89\x2c\x23\x9f\xbd\xc4\x20\xe1\xfc\x19\x16\x69\x02\xe7\x09\x8b\x32\x9a\x44\xcc\x16\x94\xff\xe9\x5d\x50\xe9\x32\x30\x49\x93\x58\xdf\xa6\xd2\x9c\x40\x5f\xba\xb6\x14\xad\xdc\x3c\x91\x53\xe9\x92\x41\x9b\xa3\xda\x24\x51\x79\x15\x2f\xdb\x02\xa2\x0a\xf3\x14\x41\xa5\x9f\xfe\x18\x82\xce\x99\x4e\x9c\xe9\xc4\x99\x4e\xfc\x2e\x74\xe2\x29\x52\xd1\x68\x3c\x7d\xb4\x54\xb4\x3d\xef\x61\xa9\x68\x35\xdf\x4b\x94\x8a\x22\x18\xa6\x4d\x5a\x6b\x8d\x97\xf2\x41\xa0\x63\x0c\x56\x25\xf9\x2b\xfe\x26\x9d\xd6\x8c\xb1\xed\xeb\x15\x5a\x9e\x2b\x09\x71\x29\xd6\x81\x5f\xe4\xcd\x5f\x4d\xb1\x37\xa1\x29\x3e\x87\x06\xce\xc8\x58\xd5\x94\xc0\xf3\x46\x4a\xb0\xed\xeb\x15\x12\xb8\x68\xec\x65\xfe\x9b\x9d\xaf\x6b\x9e\x34\x8b\xef\x80\x2c\x91\xcb\xb7\x14\x11\x89\xe4\x46\x40\x67\x48\x2e\x1e\x08\xd7\x94\x0d\xba\x34\x84\x4b\x42\x71\x06\xcf\xef\x4c\x62\x78\xee\x25\x94\x37\x4e\x73\x99\x5f\x38\x45\x9b\x90\x54\x93\x9b\xae\x30\x30\xb9\xf1\x3c\x9f\x5c\x12\x82\xa0\x6d\x14\x27\xf7\x5e\xe5\xab\x14\xed\xfc\x03\xdd\x0d\x5a\x30\xee\x0a\xd3\x25\xa6\x06\x40\x56\x80\xca\x34\x4d\xf6\xc4\x64\xb3\x2c\x7f\xf9\x1b\xd2\x97\xf9\x9d\x74\x93\xba\xc9\x45\x28\x29\x52\x7e\xb9\x42\x27\xc4\x49\xf2\xe6\x18\xd3\x94\x9a\x73\x35\x5f\x37\x4c\x87\xe4\xbd\xad\xa9\xcd\x95\x5b\x81\x4e\x35\xed\xf3\x60\x6e\xa4\xc1\xc2\xa4\x16\x1d\xf1\xf9\x80\x6d\xdb\x49\x0f\x06\x79\x38\xe9\x2a\x9f\x4c\xb8\x64\x32\x96\xe3\x51\x80\x96\xc4\x75\x32\x7f\x06\xb9\x84\x35\xda\x14\xf3\xb7\x97\xc4\xb1\xa1\xa7\x1a\x5d\x76\x4e\xeb\x29\x1f\x12\x4e\x92\x3c\x10\x33\x37\xba\xca\x30\xc6\x4b\x86\xb1\x69\x4a\xe0\x06\x2c\x03\x79\x1d\xc6\xe9\x52\x60\x45\xf3\xce\xad\x80\x18\x97\x40\x8c\x2b\x20\x6e\x73\x65\x40\xb6\x10\x76\x97\xb6\xc1\xf7\x1c\xbe\x02\xdf\x25\xf0\xae\x40\xb7\xcd\x92\x1b\xd0\x02\x77\x01\xdb\x65\xd0\x0a\x64\x35\xcd\xbb\x26\xa0\x65\xfe\x4f\x57\x04\xde\x5d\x12\x50\x42\x9d\xfd\x12\xcf\xd1\xb1\x45\xd0\x39\xca\x4a\x22\x6c\x30\x59\x7a\xc8\xa8\x2e\x16\xc9\xb4\xf4\x11\x85\x5f\x36\x93\x49\x5f\xb6\x53\xb9\x9d\x6a\x32\xcf\xdb\x79\xd8\x7c\xe4\xa9\xda\x4c\xd9\x9f\xde\xa1\x96\xf2\x79\xda\x26\x88\xda\x87\xf6\x53\xa5\x3c\xd1\x39\xac\xf9\x58\x9f\xe7\x29\x4f\x73\x4c\xc6\x70\x0a\xc9\x1d\x16\x54\x24\xac\x50\x11\x4e\xb5\x88\xb5\xb9\x31\x39\x6b\xfb\xb5\xd2\xb4\xcb\x66\x42\x35\x0d\x68\x4b\xa0\x05\x15\xa1\x79\xc7\x7f\x7a\xe7\x32\x29\xba\xb4\xb9\x15\x99\x02\xd9\x06\x51\x24\xc8\x2e\xf0\xc4\x36\x68\x22\x05\x36\x39\x48\xe7\xa1\x95\xbf\x82\x73\xb9\x3a\x09\x4e\x0d\x92\x48\x50\x5a\x20\x49\x6a\x90\x44\x4a\x68\x72\xe4\xaa\x53\xfe\x7b\xc5\x9c\xbd\xa9\xf9\x12\x57\xda\x83\x2b\x4d\xc5\xa6\x03\x0d\x45\x59\x2a\x09\x57\x2a\x69\xbe\x32\xba\xaf\x34\x0b\x57\x5a\x8c\xa9\xe9\x49\xa6\x28\x4b\x5d\xc4\x95\xde\xb7\x5f\x37\xe8\x97\xb9\xb5\xff\x31\xf8\x48\x2f\x54\xb0\x3f\xb3\xba\x33\xab\x3b\xb3\xba\x33\xab\x3b\xb3\xba\x33\xab\x7b\x04\xab\x7b\x8a\x6e\x3a\x1e\x4d\x47\x9d\x51\xfd\x68\xfd\x74\x77\xfe\xc3\x3a\xea\x66\xde\x97\xa8\xa7\x32\xe3\x22\x61\x5f\x01\xda\xa5\x0b\xf9\x4b\x99\x8e\xe4\x8b\x69\x42\x5e\x53\x5a\xa4\xca\xb9\x54\x1b\x37\x4f\x23\x79\x2e\x17\xa9\x68\x91\x46\x0a\xfc\xe9\x1d\x53\x74\xd4\x56\xd8\x54\x0a\x51\xd8\x01\x79\x59\xc0\x89\xe4\x32\xdd\x96\x4b\xee\x12\x78\x44\x61\xd0\xc4\x8c\x82\x31\x32\x90\xf0\x73\x44\x54\x18\x21\xca\x3a\x11\x41\x94\xfb\x54\x64\x19\x2b\x30\x1f\x43\xef\x65\x81\xcc\x98\x28\xe9\x53\x0c\xb2\xda\x65\xc4\x83\x13\xcf\xfa\xcc\x6f\x8d\x90\x41\x02\x4f\x41\xba\x4d\x29\x06\x69\x8e\x33\x5e\xbe\x9d\x17\xea\x49\xdc\x7a\xfe\x16\xb6\xa2\xc1\x25\x4a\x4d\xbc\x61\xc6\x10\x3d\x37\x3f\x02\x1a\x23\x4b\x77\x84\x3e\x72\x7b\xb5\xe5\x76\x30\x2b\x70\x4d\x77\x49\xca\x0f\x3a\x77\x37\x25\x2b\x6b\x6a\xc1\x45\x9f\xbf\x7d\x66\x80\x4b\xe0\xf9\xe9\x5d\x82\x98\x64\x72\x06\xd2\xe1\x32\x81\x73\x72\x17\x5c\x84\xa4\x63\x52\x09\x28\x8a\x39\x6f\x04\xc4\xc4\xe4\x44\x3b\xc7\xe0\x61\x72\x68\x2f\x23\x38\x63\xa2\x7c\x5a\x4e\x1e\x41\x63\x4a\x02\x1d\x1b\x03\xaa\x00\x0e\xe5\x52\x1e\xe6\x9a\xe8\x2e\x03\x04\x83\x72\xb5\x22\xe8\x40\x4c\x72\x53\xb0\xf9\xdb\x79\xc7\xd4\x9f\x9c\xce\xad\xd5\x3e\xa6\x4b\xb9\x6b\x58\x1a\x6b\x2c\x8b\x7b\x06\x53\x90\xb1\x72\xde\x44\xb5\xd2\xf4\x9f\xde\x39\xb0\x4e\x96\xff\x3c\x78\x1d\xc2\xa5\x03\x9b\xbb\xca\xdf\x5a\xdc\xc4\x68\x62\x56\xe8\x19\xc4\xe2\x32\x86\xac\x75\x79\x61\x92\xe9\xaf\xf5\x72\xcd\x90\x01\x13\x85\xba\x7a\x92\xed\x43\x0d\xde\x3a\xb9\x63\x19\x83\x0e\x2a\x72\x31\x64\x2f\x1d\xe8\x44\x72\xd7\x9d\xf5\xc1\x44\x65\x21\x05\xfc\x7f\xd9\x7b\xf7\x1d\xc9\x6d\xa7\x51\xec\x55\x94\xf1\x31\xce\xce\xec\x48\xd6\xfd\x32\xfd\xdb\xc1\xef\xcb\xe6\x0b\x1c\x60\x1d\x20\xf8\x12\x23\xb0\xb1\x39\xd0\xb4\xd8\xd3\xca\xaa\x25\x1d\x49\x73\xdb\xc6\xf8\x31\xf2\x77\x9e\x2d\x4f\x12\xb0\x48\x49\x24\x45\xea\xd6\x3d\xfb\xb3\xfd\x2d\xd6\xde\x6d\x49\xc5\x62\x91\x2c\x16\x8b\xc5\x62\x95\x0f\x06\x33\xc7\xf6\x2c\x2c\x9d\x3d\x37\x82\x84\x81\x51\x10\x04\x1f\x5d\xc3\x31\x43\x13\x0b\x5b\x37\x34\x5d\xcd\x25\x59\x20\x5d\x1b\xff\xb2\x3f\xba\xb8\xde\xc0\xf2\x7c\xcd\x35\x3c\x17\x6e\x5e\x78\x86\x63\x7a\x96\x26\x34\x0b\xb7\xd3\x8f\x1c\x0b\x77\xae\x19\x04\x81\xfd\x11\x3f\xfb\x96\x0b\xcf\xa1\xe7\x6b\xf8\x39\xb2\x42\x78\x8e\x9c\x08\x02\x9d\xd8\x36\xc0\x87\xa6\xed\x7c\x84\xc0\x27\xb6\x03\xdf\x4d\xf2\xdd\x32\x6d\x58\xc5\x7c\x13\xca\x07\x96\x0b\x83\x63\x7a\x66\xe0\x03\x7c\x60\xc3\x63\x14\x38\x80\xce\xb4\x08\x78\x08\xa6\x43\x8e\x9c\xdf\x7e\x09\x8d\xc8\x0f\xe1\xa6\xa5\x17\xb9\x56\xf0\x31\x34\x22\xc7\xb2\x23\xdc\xa1\x8e\xeb\xe2\x0e\x0a\x03\xb2\xc4\x45\x6e\x80\x17\xf7\xd0\x0c\x2d\xdc\xdf\x41\xe0\x7a\xde\x47\xac\x49\x5b\x2e\xfe\x1e\xb9\x9e\x8f\xbf\xbb\x9e\x0d\x79\x4d\x6c\xd3\x83\xf4\x92\xb6\x15\x40\xce\x6b\xcf\x8d\xb0\x3e\x16\x46\x26\xd6\x5d\x4c\xdb\xb7\x08\xc7\x39\x9e\xa5\xf9\x18\x0b\x18\xcb\xad\x20\x08\x70\x63\x5d\xd7\x24\x16\xeb\x10\x73\x58\x60\x78\x6e\x08\xaa\x85\x6d\x45\x1e\xa8\x6e\x6e\x04\xe9\x1d\x83\xd0\x89\x30\x9e\xc0\x09\x03\xef\x53\x68\x04\x51\xe8\x86\x70\xc3\xd5\xb1\xf1\xba\x69\x85\x96\x1b\x6a\xbe\x61\x3b\x78\x74\x23\x23\x30\xbd\x30\x82\xe4\x2c\x5e\x04\xdc\x02\xd4\xb9\x86\x6d\x46\xb6\xf7\x31\x32\x02\x2f\x82\x23\x65\xc7\xf4\x2d\xb2\x1e\xfb\x34\x35\xb0\xe7\xe0\x19\xc3\x75\xd6\x6f\xbf\x60\xf9\xe4\xb9\x98\x9d\xb0\x2a\x41\xe4\x17\x70\x97\x15\xd8\x1e\xd8\xc4\x43\xd3\xf4\x20\xaf\x71\x60\x13\x9b\xb9\x07\xd6\x64\xdf\xb5\x03\x98\xff\x36\xd6\x07\x3d\xc3\x35\x4d\x13\xe4\x89\x1f\xb8\x81\xe6\x63\xb1\x06\x07\x10\x76\xe8\xe2\xe6\x45\x8e\x87\xc5\x05\x66\x6e\xe0\x9d\x28\xb0\x31\xb3\xc3\xa5\x16\xdc\x2d\xa6\x09\xfa\x0d\xe4\x74\xb2\xf1\xb3\xed\xbb\xd1\x47\x48\x94\x6f\x61\xa6\x37\x03\x27\x20\x76\xf6\x10\x8e\x2a\xcc\x30\xf4\x61\xf2\xf8\x0e\x6c\x7f\x4c\x1f\xcb\x13\x0b\xf2\xd6\x62\x01\x1e\x44\xa6\x0b\x26\xfb\x30\x30\x21\x92\x1c\xec\x5d\x0c\xdb\xf4\x6d\x68\x2b\xd6\xad\x41\x25\xf5\x22\x78\xb6\x88\x30\xb5\x4c\xcf\x25\x7d\xe1\x11\xc5\x94\xe9\x9b\xdf\x7e\xc1\x5a\x2e\x1c\xa4\x44\x86\x6b\x7a\x70\x12\xe0\x45\x44\x1a\x7a\xa1\x0b\x3a\x82\xe5\x9a\x3e\x91\x11\x1e\xec\x49\x7c\x5c\x3d\x59\x0c\x1c\x72\x72\x10\x80\x34\xb5\x21\x3d\xaf\x6b\x38\x81\x07\xd6\x7d\xd7\xf1\x89\xc6\x11\x45\x64\xd1\x32\xa3\x10\x6f\x0f\x6d\xac\xcd\x07\x64\x53\x67\x79\x46\xe0\x78\x64\x73\xe5\x87\x30\x45\x6d\x2b\x00\x61\x1e\xf8\x56\x80\x37\x2e\x26\x1c\x12\x84\xe4\x4e\x84\x67\x44\xb6\x09\xc2\xd4\x76\x23\xd8\x90\x06\xa1\xed\x43\x6d\x9e\x19\x61\xec\x9e\x1b\xc0\xda\x13\x44\xae\x4b\x8e\x89\xa8\x34\xf4\x5c\xa8\xce\x8a\x2c\x90\xed\xb6\xed\x79\x18\xde\xb2\x1d\xa2\x67\x41\xf7\x78\x30\x25\xe1\xd9\xf7\xc8\x1e\x80\xe9\x9d\xdf\x7e\x21\x15\x01\x9d\x81\x63\x7b\x1f\xe1\x50\xc3\x05\x45\xce\xc5\x53\x1c\x4e\x3d\x8c\x20\x30\x43\xf8\x69\xc3\x01\x88\x69\x04\x8e\x03\x42\x37\x30\x21\x5d\xaf\xe7\x78\x36\x54\x8a\x67\x02\x9e\x9e\x58\x3c\x7c\x04\x91\x6d\xe3\x91\xf7\x6c\xd8\x71\x41\x7e\x30\xcc\x49\x9e\x0f\x43\x11\x1a\x21\x96\x42\xa1\xe1\x5b\xae\x13\x62\x78\xcf\x71\x80\x81\xdd\x08\xd0\xd9\x81\x09\x0c\x14\x79\x1e\xac\x08\xbe\x8f\x37\x6c\x9e\x11\x86\xb8\xe7\x43\xc3\x0b\xc8\x11\x95\x15\xf8\xf0\xdd\xc5\xd5\x5b\xbe\xe1\x7a\xe0\x46\x63\x38\x41\x04\x67\x4b\x81\xe5\x00\xbc\x6b\x82\xbe\x69\x90\x33\x16\xd7\x0e\x6c\xf2\xe4\xdb\x9a\xd0\x11\xc0\x48\x01\x1e\x12\x17\xcb\x2a\x3c\x14\xbe\x61\xfb\x4e\xa0\x79\x46\xe8\x07\x80\xd5\xf7\x2d\x3c\x8b\x02\x2c\x9c\xf0\x73\x44\x44\xa8\x6f\xbb\x16\x6c\x50\x03\x37\xc2\x42\xc3\x8f\x5c\x9f\x9c\x0d\xfa\x21\x9c\x06\x79\x21\x0c\x84\xe5\xc2\x6a\xe7\x86\x3e\x70\x69\x18\x82\xe6\x12\x04\x76\x04\x67\x53\x6e\x84\xa7\xac\xe7\xc0\x31\x18\xee\x02\x92\x15\xdb\x89\x1c\xc2\xd4\xa1\x03\x22\x24\x0a\x22\x18\x66\x2b\xf4\x2d\x90\xa7\x56\x48\x6a\x63\x68\xff\xed\x17\xdf\xf0\x03\x07\xf6\x50\xa1\xef\x39\xd1\x47\xac\x5a\x38\xb0\x3a\x47\x61\x04\xf1\x19\x43\x27\x08\x20\xc1\x94\xe9\x83\x40\x76\x03\xbc\x62\x45\x86\x6d\x86\x26\x5e\x75\x2d\xdf\xb2\xc8\xf9\x1b\xa0\xb1\x1c\x93\x4c\x1e\xc7\xf5\x02\x30\x65\xe0\x75\x0b\x86\xc6\xc7\x4a\x80\x65\xba\x64\xc1\x8a\x3c\x90\x2d\x9e\x63\x91\xae\x37\x31\x5d\xb8\xaf\x22\xbb\x1d\xba\x8f\x9e\x11\x05\x81\x49\xd2\x72\x59\x5e\xa4\xf9\x86\xe5\xba\xe4\x24\x2d\x70\xc1\x49\x89\xa3\x1e\x6b\x28\x91\x07\x92\xd6\x35\x23\xd8\xb9\xf9\x0e\x31\x87\x58\x41\x88\x05\xaa\xef\x58\x01\xc9\xab\x6b\x79\x80\xc6\x8a\xf0\xd0\xe2\x31\x20\x0a\x97\x49\x58\x3c\xc0\x82\xc9\x82\x64\x75\x36\xed\x34\x50\xff\x02\xdb\x26\x8d\x31\x2d\x10\x58\xa6\x1d\xc2\xdc\x0c\x61\xae\x82\x00\x83\xc6\x85\xae\x47\x05\x1c\x41\x1f\x06\x4e\x04\x12\x04\x5a\x03\x61\x0a\x6d\x90\x20\xa6\x15\x52\x51\x05\x64\x45\xb6\xe3\xc2\xb1\x9b\xe5\xd9\x14\x3f\xee\x7b\x2f\xc2\xff\x62\x11\xe7\x84\xf0\x3d\x08\x82\x88\xe8\x83\x30\x36\x9e\xed\x78\x16\xe8\x7f\x8e\x05\x5a\x43\xe4\x39\x20\xcf\x9d\xc8\xb2\xf1\xb3\xe7\xc3\x74\x64\x3a\xe7\xb7\x5f\x30\x63\xe2\xb5\x1c\x73\x24\x56\xa0\xe0\x28\xdb\x03\x86\xb5\x3d\x7a\x6a\x0d\xc1\x3f\x71\xaf\x13\x2b\x98\xe5\x90\xc3\x59\xd3\xf3\x5d\x10\x41\xa1\x0d\x7b\x56\xdb\x21\xbd\x14\xf9\x1e\xb1\x87\x10\x13\x9a\x6b\x83\x81\xc2\x25\xcb\x81\x6f\x98\xa1\x87\xa9\x85\x95\x1d\x4f\x27\xfc\x2f\x96\x4f\xbe\x4d\xb4\xc4\x30\xc0\xcf\xa6\xef\xe0\xb1\x08\xe9\x41\xad\x65\xf8\x54\x6e\x06\x70\x34\xec\x18\x41\xe8\xbb\x44\x09\x26\x82\xcb\x75\x1d\x0f\xeb\xf9\x96\xe3\x90\xc1\x03\xe1\x10\x18\x26\x28\xeb\x3e\x56\x75\x80\x6a\xb6\xb5\x7f\x1b\x8b\xe7\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\xf7\x4d\xd3\x37\xdf\x34\xcd\x3e\x3b\xd3\x92\xcc\x88\x93\xa4\x42\x75\x3d\xef\xb0\x6c\xbc\x80\x70\x3a\x26\x07\xfe\x2b\x1e\x87\xc1\x4e\xcc\x37\x5c\xd8\x86\x69\xf4\x87\x65\xd7\x2e\xfe\x65\x99\xdd\x7f\x3a\x7d\xa1\x5b\xe6\x7f\xc0\xc6\xad\xcd\x7c\x7f\xd0\x81\x43\x22\x67\xab\x63\x89\xa7\x1b\x6e\xa4\x07\xba\x63\x84\x9e\x1e\xe8\xf8\x3d\x04\x28\xb4\x0d\x33\xd4\xb1\x52\x63\xd8\x10\x0a\x30\xfa\x84\xb9\xf8\xd1\xe2\x2f\x8b\x3f\x62\x2d\xe9\xeb\xc1\x37\x22\xdd\x36\x3c\x92\x7e\x42\x37\x42\x4b\x87\xa0\x7a\x91\x6e\x19\x11\xfc\xd8\xeb\xd6\xa3\x0e\x71\x90\x3c\x0f\x02\x26\x03\xc4\xcf\xe1\xa3\x6e\xef\xed\xad\xe1\x79\x6d\x46\x0e\xcd\xd2\xad\x5f\x83\xbd\x2d\xdc\x37\x7c\xd4\x0d\xd7\xda\xda\x06\x04\xe4\xb1\x22\x0d\x2b\x62\xa6\xaf\x61\x6d\x18\xc2\x25\x01\xb5\x46\xa8\x39\x46\x14\xe8\xb6\x81\xb5\x77\x27\xfa\xdb\xdc\xbe\xfc\x3e\xde\x27\x8e\xf7\xab\x91\xa4\xf5\xb6\x78\x44\xd5\x8b\xbe\xdd\xc7\x69\xae\x19\x15\xaa\x8b\xec\x11\x55\xfa\x36\xae\x12\x2c\x1d\x2a\x94\xa4\x15\xda\x36\x5a\xd2\x9c\x74\x3b\xb3\xcd\x06\xe4\x32\xd9\x80\xdc\x8b\xd3\xe3\x86\x80\x2a\x18\x3a\xce\x47\x9b\xc6\xfd\x74\x2c\xbc\x1d\x0a\x60\x51\x22\xce\x52\xae\x8f\xf5\xc0\xd0\xf9\xd5\xfd\x44\xbd\xbd\x82\x4c\x0f\x21\x2a\x6b\x60\xf8\x81\xff\xa8\xbb\x46\xe8\x62\x45\x03\xb4\x23\x17\x76\xf7\xae\x01\xf7\x46\x7c\x83\xb8\xe2\x40\x1d\x5f\x47\x25\x3a\xdc\x1a\x6f\x8a\x22\xbb\x8b\xab\xf6\xd2\xf8\xd9\x63\xda\x2d\x8b\xa9\xe2\x19\xb8\x3d\x7b\xdd\x08\xa2\x4c\x87\xa0\x64\x76\xf0\x6f\xbe\x81\xb5\x7a\xf2\x37\x0d\x35\x0b\x7a\x34\xde\x94\xc1\xff\xa6\x86\x3f\xe0\x37\x96\xbf\xa5\x11\xfc\x1d\xc3\x8c\x74\x03\x36\x43\xb6\xa3\x5b\x86\x17\x64\x86\x1d\x18\x76\xf8\x88\x71\xc3\xf6\x38\xfa\x64\x9b\x86\x8b\xf7\x03\x99\x8e\x1f\x75\x8f\x5c\xd3\xff\x18\x18\xc4\x37\x07\xcc\x45\x51\x44\xae\x4a\xfc\x07\xbc\x85\x9f\xe0\x3c\xa5\xb5\x50\x50\x2f\xc0\xb5\x0f\x2e\xdb\xef\x96\xe7\x3b\x34\x44\x68\xcb\xc4\xbb\x0a\xa1\x06\x3d\x37\xfa\x2e\xcd\x1a\x54\x69\x75\x19\xbf\x41\x48\xab\x53\x83\x0a\xaa\x07\x03\xc6\xe2\x2f\x38\x14\xa2\x30\x69\x5e\x4a\xa4\xd7\x45\xd5\x88\x21\x75\xda\x30\x21\x7f\x5d\xed\xc2\xbc\xb6\x4c\xc3\x0c\x7d\xd8\x3f\x7d\xf2\x85\x27\xbc\xb9\xf3\x7c\xc7\x36\x7d\xed\x93\x29\x3c\xb1\x90\xdc\xd3\x6f\xda\x2f\xce\xb5\x65\x53\x60\x4b\xfb\xe4\x5c\x83\xc3\x66\x0f\xcb\x3f\xf1\x90\xfd\xd3\x6f\xda\x2f\xa0\x36\x9b\x96\x13\x04\xd7\xa6\xf6\x89\x79\xb2\x0c\x3f\xb4\x2c\xdb\x77\x2d\x40\xc1\x3d\xf1\x90\x26\xe0\x71\x8c\xd0\x8f\xec\xc8\x8e\xae\xc1\xdc\x68\x46\x58\x06\x7e\x62\x5e\xe3\xfd\x8a\x13\xba\x91\x6d\x6b\x9f\x2c\xdf\xa0\xe8\xae\x43\xbc\x8b\x31\x6d\xdb\x0b\xb5\x4f\x56\xc8\xb5\x99\xec\x30\x02\x3b\x0a\xae\x21\x00\x5a\x08\xfb\x8d\x4f\xa1\x61\x7a\x01\x58\x12\x39\xe8\xc8\xb0\x5d\xdf\x8a\x3c\xdb\xe7\x71\xda\x86\x15\x86\x96\xef\x7b\x84\x82\xc8\x71\x6c\xfe\xb5\x82\x5e\xe6\x35\x6e\x5f\x57\xd3\xb5\x6b\xd8\x78\x63\xe5\x9b\x18\xbe\x7f\x8d\xf7\x90\x4e\xe4\xda\xae\x8b\xbb\x88\x7f\x52\x14\x61\x5e\xff\x3d\xae\x7b\x7e\xe7\xf5\xef\xbc\x7e\x0a\xaf\xaf\x0d\x59\x48\x63\x83\x1c\xe2\x3c\xbe\x47\x07\x94\x37\x67\x08\x5f\x38\x44\xba\x3c\x8a\xe1\x38\x5d\x73\x9d\x56\xa7\x29\x19\x0f\x6c\x38\x87\x8a\x71\xd7\xd7\x11\x0a\x9a\x44\x8b\x8d\xb4\xe6\x3e\xfd\x65\x63\x7a\x59\x70\xc0\x67\x07\x9f\xac\xd0\xb0\x42\xcd\x26\xd9\x33\x5d\x3d\x30\x4c\x07\x6f\x00\xf0\xbc\xcb\xf4\xc0\xb0\x22\xdd\xf0\xad\x4f\xe0\x73\x1f\xe1\xdd\x54\x68\xf8\x8e\x46\xbf\x7b\x06\x9c\x8a\x04\xce\x27\xcf\x08\xe1\x8a\x7b\x8b\xf6\x6f\xb3\x7d\xfe\xd7\x74\xd2\x2b\x8d\x22\x34\x19\x8d\x88\x07\xe3\xc3\x11\xc9\x02\x11\x51\xf8\xe9\x48\x44\x3c\xa0\x32\x14\xd1\x39\x39\x1f\xab\xf2\xb6\x7f\xca\xe6\x01\x2e\xdb\x6b\xbe\xe1\x04\x78\x91\x68\xff\xc5\xaf\x35\xeb\x57\xeb\xa3\x15\x19\xbe\x1d\xb8\x9a\xa5\xd9\x5e\xf7\xd5\xc6\xbb\xdf\x5f\x2d\xe7\x23\x39\x1f\x21\x00\xf4\x5f\xf8\xa6\xd9\xde\xaf\x36\xdc\x54\xe9\xe0\x7b\x40\x52\xf6\x37\x8e\xe8\x9f\xd6\x70\x1a\xd9\x45\x07\xae\x4d\x62\x37\x78\x70\xe0\xe4\xe1\x05\xd9\x77\x43\x7a\x28\x16\x91\x8b\xfe\x8e\x03\xd6\x58\x27\xfa\x64\xb9\x86\xef\x44\xb0\x5b\x37\x1d\x5c\xd4\xd1\x02\xc3\xf2\x7d\x1f\xee\xb8\x38\xbe\x19\x76\x9f\xe8\xfb\xb6\xa0\x69\x38\x60\x52\xa6\x68\x23\xc3\x89\x3c\xd3\x6a\x2b\xed\x88\x61\xd7\xaf\x8f\xbe\xfd\x6f\x81\xc5\x67\x45\x70\x34\xdb\xfd\xe8\x1b\x91\xed\x86\x01\xcc\x4a\x38\xf7\x0a\x3c\x08\x5e\xe1\xfc\x6c\x7e\x34\xe1\xbe\x44\x10\xc1\xa9\x8c\x6d\x3a\x9a\xed\x43\x97\xfa\xbf\xda\xee\x6f\xbf\xd8\x10\x1e\xc1\x76\xbb\x52\x5d\x69\x17\xa0\xdc\x5f\x6d\xff\x63\x8b\xc0\xf6\xe1\xbf\xfe\xc9\x72\x7e\xc6\x48\x30\xe0\xc7\xbe\x5a\xdb\xd5\x18\x82\x30\x8c\xff\x11\x52\x87\x91\xea\x69\x71\x13\xe3\x37\x7f\xb5\xa1\xb8\xf9\x91\x7e\xc5\x6c\xd8\xfd\xc4\x45\xc1\x9d\x85\x20\xeb\x90\x02\x65\xbf\x9a\x6c\xd7\xfc\xbb\xf5\xef\xee\xbf\x07\xe7\x16\x72\xdf\xe7\xc3\xf7\xf9\xf0\x37\x99\x0f\xaf\x46\x5e\x34\xe9\x16\xa9\xb5\xab\x73\x98\x4d\x2d\x26\x89\x7a\x24\x58\x4d\x2d\x53\x8b\xe6\x4c\x1f\x02\x72\xf3\x9c\xa5\xf9\x17\x19\xa0\x15\x45\xd1\x4f\xf0\xf5\xe2\xf6\x1f\x09\xda\xd5\x74\xf8\x69\xd6\x77\x08\xb7\x0e\xd7\xf3\xfc\x4f\x01\x24\x2d\x0f\x8d\xc0\xcb\x74\xc3\x0f\x1d\x1d\x4c\xd2\xb6\x61\x07\x1e\x64\x09\xc6\xcf\x91\xaf\x1b\xb6\xe7\x7e\xf2\x34\xcc\xc7\x10\x2b\x47\x73\x0c\x2f\xf2\x8d\xd0\x81\xd0\x39\x5e\x06\x05\x34\x28\x80\xb1\x68\x18\x0b\x09\x0b\x47\xaa\x7f\xa8\x51\xdf\xf3\xd1\xbf\xdb\x96\x87\x1b\x8a\x29\xbc\xd9\x57\x68\x07\xaf\x63\x69\xcc\xf8\x95\x07\x6d\xa0\x46\xcf\x3f\x66\x53\x81\x4b\x0e\xd9\x44\xd0\xbf\xa2\x62\xed\x83\x25\xd0\xfa\xe4\x68\x96\x97\x39\xf8\xc1\x7d\xd4\x9d\x9f\x2d\xf7\x51\xb7\x7f\xc6\x1f\x1f\x75\xe7\xeb\x2f\xb6\xa5\x45\x99\x8e\x3f\xeb\xee\xa3\xf3\xb3\x65\x3e\xda\xfb\xc0\x30\xad\x47\xe7\x13\xfe\xf4\xf7\x50\x9f\xdf\xb8\x2b\x5e\x8d\x26\xbe\xd7\x31\xe3\xb2\xdc\xd5\x24\xf8\xf5\x5f\xfe\xa0\xd6\x32\x1c\xd3\xd5\x1c\xc3\x8a\xbc\xcc\x32\x0d\x08\xd3\x05\xff\xe8\xa1\x61\x3a\x96\x86\xff\xfe\xe4\x18\xe0\x1b\x69\x19\xb6\x1d\x64\x16\xa4\x36\x0b\x68\xe0\x4c\xd3\xb4\x75\x78\xf3\xf5\x17\xcb\x08\xe1\x5e\xb8\xef\xc6\x78\x83\x42\xd2\x86\x78\xbe\xab\x43\x3a\x3e\x28\x17\x42\x39\xe7\xdf\xda\xef\xae\x61\xc2\x55\x6a\xd7\xcb\xe0\x03\x41\xd5\x15\xc7\x05\x3d\xc3\xf3\xbd\x4f\xb6\x6d\x10\x87\x0c\xd3\xe9\xb1\x9b\x90\xb8\x21\xcc\x80\x54\xa0\xd4\xea\x6b\x26\x99\xcd\x3e\xf5\x44\x7d\xfd\x25\x34\x3c\xcd\x82\x4c\x1e\x9a\x45\xcc\xf9\xa6\xa9\x43\xee\x1f\xfa\x6c\x9a\xa6\xe6\xfc\x3d\xe6\xc4\xf7\x81\x5d\x30\xb0\xaf\x7d\x12\x96\xc9\x9d\xf0\x00\x92\xdf\x0c\xf7\x9f\x65\xdb\xe2\xfe\xeb\xf4\xce\x78\x00\xfb\x27\x8c\xd3\xfb\x3d\x51\xcc\xc9\x89\x62\xc4\x0b\xf1\x78\xd8\xb6\x28\x6f\x50\xb5\xf6\x3a\xfe\x28\x86\xc9\x0b\xf9\xd2\xd2\x7f\xc9\xa5\xcd\xd6\x82\x5f\x9d\x9f\xed\x47\x2b\xdc\xdb\xe6\xaf\xc1\xcf\x96\xfd\xf5\x17\x5f\xb3\xa2\x9f\x5d\xf0\xf0\x78\xb4\xbf\x1e\x4c\xdd\x15\x9f\x7e\x8d\xd8\x07\x8f\x3c\x40\xe0\x95\x90\x03\x14\x9e\xd8\x62\x61\x5b\xcc\x32\x35\xcb\xde\xeb\x14\x54\xb7\xf7\xba\xcd\xfc\xfc\x35\xda\x87\x8f\x96\xf9\xf5\xa0\xdb\x7a\x88\x3f\x91\x2f\x5f\x0f\xa6\xe6\x32\x8f\x7f\x8f\xe5\xe8\xef\x3e\x18\x6b\x67\xbc\x51\x15\x19\x5a\x71\x80\x21\x2b\x36\x71\xe2\xc0\x16\xf9\x8b\x4e\x68\xcb\xde\xda\x06\x64\x78\x07\xe5\x23\xd2\x5c\xdd\xad\xe1\x97\xee\x92\x3f\x1a\x79\xd0\xc8\x0f\x0d\xff\x70\x69\xb0\x7f\xdb\xf0\x03\xcd\xd4\x43\xcd\x32\x1c\x57\x0f\x35\xf7\xd1\xde\x5b\xfe\xa3\x6e\x6f\x4d\xfc\x0d\xd2\xfd\x39\xba\xab\x87\xfa\x88\x63\xc5\x5f\x6c\xd2\xfd\xeb\x3b\x8c\x7a\xa2\x54\xe8\x11\xc5\x99\x96\xe6\xe5\x43\x73\x03\x39\x6b\x50\xf2\x9e\xf3\x0d\xfa\x6b\x72\x64\xb0\xb5\x8d\xc0\xd7\x4c\xcd\x03\x75\x57\xf3\x34\x48\x10\xe9\x7b\x3a\x49\x5a\x69\xfb\xba\xe1\xf8\x9a\x65\x84\x4e\x66\x1b\x11\x24\xa8\xb6\xb7\x96\xe1\x59\x3a\xfe\xa8\xd9\x06\x68\x10\x91\xe6\x18\xae\xa3\xbb\x06\xd8\x6c\x02\xfc\xcb\x89\x74\x5f\x0f\x0c\x4f\xb7\x2c\xf2\x8f\xe1\x6a\xb8\xdf\x03\xd7\xb0\x3d\xbc\x8f\x0d\x8d\x20\xb3\x0d\x0b\xe3\xb0\xfc\x8f\xe0\x22\x0f\xc1\x93\x49\xa8\x2a\x0d\x6b\xd5\x5a\xf0\xf5\x17\x92\xc8\x3c\xb3\x0d\x3b\xc4\x24\x86\x86\xeb\x1b\xae\xff\x6f\x70\x59\x88\xde\x19\x6a\x73\xd0\x5b\x98\x5f\x70\xf5\x70\x9f\x40\x83\x9b\x50\x1a\xb9\x38\x85\x15\x69\x8f\xf8\x3b\x39\xba\x01\x00\xa1\x6e\x84\x6e\x66\xb8\xb6\xe1\xda\x9f\xac\x08\x17\xb3\xe1\xdc\xc9\x36\xf1\x6f\xbc\xb7\xd0\x1c\x8d\x54\xff\xf5\x97\xc0\xf0\x1c\x2d\x32\xc2\x0c\x10\xe1\xbf\xb6\x90\x77\x1b\x12\xf9\x87\x24\x5f\x65\x68\xf8\xa0\xbd\x1b\xbe\x0f\x3c\xa7\x39\xf0\xc7\xb0\x21\xf7\xa5\x0b\x19\xbb\xa1\x6b\x4d\x1e\x8d\x1f\x60\x46\x84\xdc\xa8\x9e\xa3\xdb\x86\x4d\xfe\xc1\xe3\xa2\x7b\xf8\xd9\xd5\x3d\x1d\x72\x47\x06\x91\x61\x43\x62\x78\x0a\xf8\xf5\xe0\x1a\x8e\xa5\x1b\x41\x98\x61\x7d\x11\x94\x52\xc3\xb4\x75\xc3\xf2\x21\x9f\x94\xef\xeb\xc0\xfc\x0e\xfe\x93\xe9\x86\x15\x18\xa6\xf5\xb7\x91\x0e\xdf\x99\xf7\x3b\xf3\x32\x92\xfa\xa6\x2a\x8a\xe6\xa8\xeb\x4f\xfb\xb4\x41\x37\x3f\xec\x76\xbb\x8d\xae\x27\x68\x5b\x54\xfa\x5d\x51\x25\xa8\xd2\x2d\xd3\xbc\xb1\xca\x67\xad\x2e\xb2\x34\xe9\x3e\x56\x71\x92\x3e\xd4\xba\x6d\x9a\x37\x6e\xf9\xbc\xd1\xf5\xfb\x2a\x7e\xd1\x3d\xd3\xbc\xf9\xc1\xdf\x05\x7e\x68\x77\x90\x28\x43\x8f\x31\xd6\x8e\x74\xdf\x34\x6f\xb0\x42\x56\x3e\x6b\x5e\xf9\xac\xe9\x41\xf9\xac\x55\xf7\x77\xf1\x3b\xf3\x5a\xa3\xff\x19\x66\x78\x79\x6d\x6a\x16\xae\xd0\x32\x31\x90\x23\x01\xb2\x2e\x37\xba\x7e\x57\xc5\x79\xa2\x9b\x9e\x79\xf3\xc3\x2e\x42\x77\x3b\xbb\x7b\x87\xeb\xf9\x21\x42\xb6\xe5\x45\xdd\xbb\x10\xbf\xf3\x62\xcb\x75\xdc\x8d\xae\x37\x2f\x65\x41\x13\xb7\x11\x9a\x89\x53\x6b\x4f\x73\x55\x15\x15\xf9\xb2\x0d\x1c\xd7\xf5\xda\x32\xdb\x22\x6f\xaa\xb8\x6e\xf4\x28\x8a\x6e\x7e\x30\x4d\xb3\xfd\xd0\x53\xf3\x18\x57\xef\x18\xea\x2e\x79\x08\x4c\x1b\x0b\xe1\x9b\x00\x41\x7b\x7c\x0c\xa4\x7e\x8a\x9b\xed\x7e\x01\x4c\x28\xc0\x84\xa6\x79\xf9\x6a\xa0\xc3\x1d\xaa\xf4\xbb\xb8\x4e\xb7\x7a\x52\x15\x65\x52\x3c\xe5\xc7\xb2\xa8\x53\xdc\x19\x37\x15\xca\xe2\x26\x7d\x44\x72\xb8\x6b\xe9\x5b\xe8\x14\x94\x37\xe3\x5f\xb5\xab\x6e\xb5\xbf\x2b\x9e\xf5\x3a\xfd\x9a\xe6\xf7\x37\x94\xc7\xee\x8a\xe7\x8d\xf4\xad\x9c\x8e\x16\x67\x4f\x77\x7c\x57\x17\xd9\x43\x83\x36\x70\x5c\x73\x13\x3f\x34\xc5\xe6\xab\x9e\xe6\x09\x7a\xbe\xb1\xf0\x30\x31\xf6\x92\x6d\x91\x15\x15\xb0\xfa\x38\x76\x5d\xcf\xd0\xae\x39\xe2\xbf\x6e\xcc\x29\xd0\x2a\xbd\xdf\x37\x47\xf8\x5b\x09\x5c\x3c\xa2\x2a\x8b\x5f\x7a\xaa\x77\xe9\x33\x4a\x18\xd2\x6e\x28\xa3\xe3\x3f\x86\x77\x49\x1b\x63\x99\xe6\x8f\x1b\x72\xf6\x44\x7e\xf7\x0d\xdb\x34\x45\x79\x63\x6e\x08\x89\x9b\xb2\x48\xf1\x1e\x5e\xc7\x22\xbf\xa9\x6f\xf0\x3a\x32\x41\xf6\x53\x51\x1d\xf6\x45\x86\xf4\xa2\x4a\xef\xd3\xfc\x98\xa4\x75\x99\xc5\x2f\x37\x69\x9e\xa5\x7d\xe1\xb2\x78\xea\x5c\x89\x3b\x1c\xa7\x8d\x27\x87\xb2\xa9\xd2\xfb\x7b\x54\x0d\xb9\x70\x43\x0b\x12\x61\x03\x82\x46\x3a\x8e\x1b\x4c\xad\xde\x76\x91\x11\x78\x1b\xdc\xd5\xbb\xac\x78\xd2\x9f\x6f\xf6\x69\x92\xa0\x7c\x03\xfe\xe9\xed\xeb\x1b\x94\x65\x69\x59\xa7\xf5\xe6\x90\xe6\x6c\x41\x74\xd8\xe8\x87\xe2\xab\xfe\x50\x77\xe4\x41\x3f\x6e\xf4\x43\x3d\x7c\x39\x84\xa2\x3d\x32\xf8\x40\x68\x4d\xf3\x3d\xaa\xd2\x66\xac\x13\xa8\xd7\x17\x1d\xa0\x9b\x8b\x8b\x4d\x3b\x26\x90\x27\x72\xb3\xcd\x50\x5c\xdd\xdc\x15\xcd\x7e\x0c\x8b\x0e\xc2\xed\x11\x5d\x8f\xd5\xb4\x2b\xb6\x0f\x35\x3f\x88\xfb\x38\x29\x9e\x08\xc5\xc2\xb3\x82\x91\xba\xfa\xee\x50\x56\x3c\x8d\xd4\xf6\x7b\x5c\xa5\x31\xde\xe4\xc6\x79\x82\x92\x0f\x4d\xf5\x80\x3e\x2b\x04\x46\x87\x33\xcd\xf5\x32\x8b\xb7\x68\x21\xda\x63\xc7\x6e\x4d\x53\x1c\x60\x12\xb7\x1c\x64\x6e\xf8\x6f\x30\x5f\xbb\x8f\x53\x6d\x8c\xef\x8a\xc7\xb5\xc4\x34\x45\x29\xa7\x04\x7f\x90\x93\xc1\x55\x01\x1d\xb1\x2f\xb2\x04\x98\x03\x18\x3f\x8a\xa2\x8e\x39\xee\xb2\x62\xfb\x45\xc2\xf5\xb0\xac\xeb\x75\x19\x6f\xd1\x4d\x5e\x3c\x55\x71\xa9\x98\x08\xd2\x4a\xeb\x26\x6e\x1e\x6a\x3d\xdd\x16\xb9\x44\xd4\xf2\xc2\x42\x27\x24\x10\x91\x65\xb6\xf2\xaa\x95\x50\xa4\xbf\x6f\xcc\xcd\x21\xae\xee\xd3\x9c\x08\x68\xda\x03\x75\xf3\x92\xa1\x1b\xa2\x5e\xd0\x57\x04\x0b\xd6\x0f\xdc\xf2\x59\xeb\xfa\x8a\x36\x3c\x8e\x63\xad\xa9\xe2\xbc\x2e\xe3\x0a\xaf\x2c\xcc\xef\x0d\x91\xc0\x5e\x29\x97\x34\x30\x7b\xf4\xbb\x46\xd6\x9c\xed\x43\x55\x17\xd5\x0d\x15\xa2\x14\x91\xad\xc2\xd4\x32\xc5\xe1\x21\x6b\xd2\x32\x43\x3a\xec\x72\x8f\xbb\x22\x6f\xf4\x5d\x7c\x48\xb3\x97\x76\xb6\x6f\xe0\x5d\x9d\x7e\x45\xdd\x1b\xd2\x1c\x32\xcf\xa4\xbd\xc8\xca\xb3\xb6\x50\x3b\x51\xe3\xb2\x44\x71\x15\xe7\x30\xa2\x39\xda\x14\x0f\x0d\x06\xc7\xf2\x3f\x4e\x12\x2c\x6e\xcd\xcd\x2e\x2b\xe2\xe6\x06\xf3\xdb\x50\x60\xb2\xbd\x05\xbc\x80\x17\x93\xbc\xb9\xb1\x17\xb5\xf4\x26\x49\x6b\x2c\x90\x92\xe3\x50\x22\x23\x24\x5f\x3a\x14\x98\x6e\xda\x96\xc1\x23\xc7\xe9\x45\x19\x6f\xd3\xe6\xe5\xc6\xda\xf4\x3c\xbf\x0c\x35\x16\xe6\x67\xc6\x58\xbf\x05\xa1\xe7\xa5\xf1\x3f\x51\x87\x76\xe8\x8a\x12\x12\x26\x1f\xfb\x59\x40\x65\x8d\x5c\xa0\x0a\xe5\xa8\x9c\xee\x77\x3a\x1a\xde\xd0\x48\x14\x10\x4a\x8e\xe3\x38\x12\x5d\x04\xb9\xf8\x4f\x3f\x11\xb1\xf8\x9a\x9e\xe1\x96\xe1\x7a\xec\x94\xa5\x74\xe3\x7d\x92\xa9\xe1\xbf\x1d\xc5\xd4\xec\xda\x50\xa1\x43\xf1\x88\x40\xb0\xf1\x62\x6c\x6e\x31\x62\xb3\xde\xe3\x65\xe1\xb2\xeb\x7b\xc3\x93\xaf\x0a\x28\xae\xb6\xfb\xae\x9f\x5d\x05\x71\x04\x8c\xca\xc5\x41\xef\x62\x21\x2e\xf4\xae\xc9\xea\xbb\x43\xa1\x29\x93\x89\x7d\x47\xab\xe4\x34\x4b\x05\xd5\x78\xe4\xb4\x2c\xd4\x83\xa4\x3a\x71\xbb\xd8\x83\x3e\xae\x68\x2b\x19\x71\xfe\xdb\x40\x7d\x1d\xb2\xdd\x4c\xf2\x3a\x15\xa0\x55\x00\xa6\x15\xcf\x96\xf8\x89\x0d\x0e\x28\x3f\x8c\x36\xa3\x68\x1f\x5d\xe8\x29\x6d\xa7\xe9\x61\x6b\xc8\x04\x3d\x54\xaa\xf6\xce\x44\xd0\x2a\x9d\x6c\x53\x87\xad\x51\xb4\xfe\x54\x2d\x6f\x29\x8d\xfd\x84\x91\xa2\x6b\x45\x22\x1c\x53\x11\x35\x0b\x9a\xd2\x0a\x46\x46\x63\x78\x8b\x5d\xcf\x18\x4d\x24\xe9\x37\x26\xec\xae\x78\xfe\x7c\xec\x34\xd7\x17\xa2\x1a\xb6\x28\xbb\xf7\xf5\xb6\x2a\xb2\x0c\xd3\xda\x14\x0f\xdb\xfd\xe6\x10\x3f\x77\x33\xc6\x36\x6c\x0f\x1d\x46\x6a\x13\x84\x22\x23\x36\x42\x85\xd8\xc0\x62\xbd\x24\xfa\x7c\xab\xe8\x50\x7d\x9e\x51\xbe\x29\xd6\xbc\x68\xf4\x38\xcb\x8a\x27\x94\x2c\xc3\xa5\xa9\x29\x96\x72\x30\xf9\x34\x45\x95\xc4\x0a\x30\x97\x52\xb6\x02\xf2\xaa\xdf\xc6\x0c\xd6\xba\x24\x99\x46\xb2\x7d\xa8\xb0\x9e\xa9\xc4\xe1\x85\x51\xb0\xbb\xdb\x0c\x2d\x32\xc3\x0e\xd4\xf3\xf8\x80\xda\x81\x4c\xd0\x2e\x7e\xc8\xa8\x6a\xfd\x44\xd8\x20\x30\xe5\x73\x8a\xdb\x9c\x09\xdd\xb6\x58\x77\xed\xb5\x0b\xcd\xf2\x61\x7d\x9e\xdc\xae\x49\x87\xb2\xed\x5d\x3d\x6d\xd0\xe1\x48\xe6\x23\x59\x36\x46\x39\x52\xca\x31\x13\x5f\x48\xc7\x51\xba\x49\x1d\xb6\x6a\xcd\x5e\x53\x09\x9d\x62\x5c\x05\xae\xb9\xb8\x02\x19\x9a\xb5\x74\x4a\x9a\xac\xea\xd6\x96\x3b\x92\xb4\xfa\x50\x35\xd9\x67\x66\x80\x89\x77\xd4\xcc\x72\x52\x62\xa6\xb8\x60\x16\x12\x29\xab\x10\x35\x62\x6e\xa3\xa4\x78\x05\x05\x78\x3d\x81\xaa\xad\x30\x28\xb4\x40\xe8\x7a\x22\x59\x0b\x04\x8c\xa3\x57\x3e\xd3\xad\x79\x9a\xa7\x4d\x1a\x67\xeb\x71\xf7\xc6\x00\xc2\x6c\xf3\x50\xb7\xab\xf1\x38\xee\x33\xcd\x56\x6a\x84\x50\x4d\x83\xb7\xa3\x45\x98\x8d\x84\x0e\xe5\xac\x3e\x95\x0e\x69\x6d\x6f\xdb\x6a\x59\x3f\xe3\xe9\xf4\x43\x56\xe0\xf9\x45\xa2\xc7\xbc\x4f\xd2\x47\x6d\x57\x14\x0d\xaa\xb4\xbb\x87\xa6\x29\x72\xb2\x85\xb8\x9e\x82\x82\x8d\x14\x9e\x51\x65\xf3\x02\x3c\x8c\xba\x2b\xc5\x50\x5e\xf6\x45\x59\x86\x04\xef\xe0\xea\x9f\x82\xa2\xb8\xc0\x0b\x23\x49\xe3\xac\xb8\x6f\x0b\xb2\xaf\x08\x14\xd1\xc4\xc8\xab\xcf\xb7\x49\xfa\x88\xff\xd7\x92\x44\x8b\x69\x99\x11\x80\x31\x0c\xe5\x04\x82\xb2\x2b\x7f\x88\xd3\x9c\xad\xb0\x7f\x66\xbe\x97\xfc\xe7\xae\xf4\x11\x6c\x58\x70\x7e\x06\xa7\x8c\x37\x0f\x79\x82\x2a\x38\xbe\x98\x18\x25\x59\x2f\x5e\x49\x87\xa6\x37\xa6\x9f\x7b\x3c\x27\x47\x52\x5d\xf5\x59\xd8\x82\x67\x88\xb6\xb2\x13\xf9\x66\x8c\x63\x68\x15\x6f\xc8\x74\x23\xec\x36\x5a\xf9\x0a\x7e\x65\x38\x95\xa2\x9e\xcb\xca\x3d\x13\xb3\x05\x95\x3c\x4e\x95\x53\x72\x4a\x7d\x36\xbe\xe6\x19\x91\xe5\x8a\xc5\x63\x5b\xb2\x9d\xd1\x51\x2f\xee\xbb\xc6\x6c\xd1\x93\x92\x77\x64\x12\xce\x9c\x24\x32\xf6\x9e\xe6\xc7\x49\xa6\x19\x0c\xbd\x38\xa4\xe4\xf9\xd8\x19\xea\x5f\xe1\xcb\x1e\xee\x0a\x68\x79\xfc\xc8\xc5\x99\x28\x32\x2d\x4b\x71\xd7\x91\x21\xa7\xce\x14\xa2\x90\x83\xed\xf5\x0c\x34\x32\xfe\x19\x20\xeb\x25\xe6\x1c\x8c\xad\xef\xde\x0a\x92\x6e\xb3\x94\xb1\x45\xe8\x78\x1c\xf8\x43\x90\xde\x70\x4d\x4c\xa5\x45\x6f\x3d\x25\x66\x62\x78\xbd\xcb\xd0\x33\xfb\x89\x79\x3d\xdd\x02\xee\x4d\x2c\xbb\x4f\xc1\xf7\x3c\xa7\x70\xab\xcc\xb9\x33\xaa\x1d\x5e\x77\x8c\xb9\x7d\x1f\xde\x68\xac\xc2\xd2\x35\xa1\x3b\x33\xfe\xe9\x62\x33\xd2\x86\x50\xd5\x06\x63\x5b\xe4\xbb\xb4\x3a\x10\x67\x9d\x38\x43\x55\x23\x95\x1e\x24\x9a\xd8\xb5\x71\x40\xf9\x83\x5e\xc6\x39\xca\x34\x32\x39\xf0\x0b\xbc\x49\xf9\x7c\x6d\x1c\x8a\x0a\xe9\x6d\x10\x32\xfc\xfe\xf6\x77\x3c\xda\x1f\xc0\x0b\xf4\xae\x78\xfe\xfc\x1e\x90\xc0\x34\x1f\x14\x2e\xd2\x64\xdb\x46\x2e\x6b\xa5\xd3\x5a\x5c\xd2\x40\x68\x57\xd7\x53\xa1\xd2\xae\xae\x8d\xa7\xb4\xd9\xeb\x6c\x97\x68\x54\x70\xa0\x0c\x35\xe8\x3a\x26\x4f\xdb\x0a\xc5\x0d\xba\x26\x64\x1a\xdb\xa2\x7c\xc1\x3b\x8a\xf6\x99\x80\xc4\xf9\x16\x65\xf4\x15\x21\xbd\x42\x35\x6a\x3e\x73\xaf\xea\x87\xbb\x43\xda\x7c\xbe\xa6\xc3\x6f\x10\xef\xa4\x5a\x63\x61\xc8\xef\xcf\xc0\x05\x5d\x5d\x97\xd7\xfb\xe6\x90\x19\x0d\x3a\x94\x59\xdc\x20\xe2\xbb\xa4\x61\x01\x45\x04\x71\x27\xab\x76\x45\x75\x90\xa1\xe3\x9a\x05\x5e\x06\xc6\x3e\xae\xf5\x96\x80\xa6\xba\x6d\x89\x59\xd0\xf1\x04\x0f\xf4\x61\x82\x9a\x38\xcd\x56\x22\x12\x97\x10\xd5\x81\xb6\x28\x88\xd4\xcc\xdc\x9d\x5c\x4a\x98\x9a\xf9\xa6\xe6\x6e\x16\x68\x3d\x9b\x33\x58\x86\xfc\xce\x7c\x3c\x19\xbb\x3c\x14\x60\xff\x7d\x9c\xcf\x7b\x40\x8e\xe1\xfb\xd7\x02\xe7\x0f\x3e\x30\x53\x40\xfc\xc6\xce\x05\xf9\x37\x3a\x29\xfa\x8f\x73\x66\x47\x0b\x3c\x7b\x9a\xf4\xe8\x17\xcf\x97\xbe\xe8\x99\x26\x8e\x88\xf0\xf4\x19\xd4\x9f\xd4\x0b\xc6\xd3\xb9\x27\x5e\xe2\x08\x4f\x2d\x99\xaf\xb2\xc5\x42\x26\xd3\xd7\x48\xd8\xbf\x9c\x44\x3d\x72\x2e\x2d\x56\xf9\x2c\x1c\xee\xd9\xf2\xc3\x3d\x38\xd1\xd4\xac\xf2\x59\xd3\xed\xde\x03\x16\x1c\x03\x2d\xfb\x72\x33\x1b\x52\x1c\xbd\x23\xeb\xf0\x16\xf4\xe7\xd9\x54\x35\x1c\xd5\xd0\x45\x46\x20\x5b\x15\xf1\x2d\x68\x9c\x44\x51\x69\x39\xef\x92\x3c\x12\x3d\xf8\xf2\x38\x51\xe5\x0f\xbb\x60\x17\xee\xe2\x41\x75\x04\xb1\x9a\xfb\xe8\xee\x48\x2c\x46\xb5\x6f\xc9\x01\xc6\x16\x99\xc8\x7f\x1d\x15\xbf\x6b\x85\xd8\xdb\xca\xa9\x6e\x73\x60\xfb\x61\xe0\x48\x5b\x40\xf7\x20\x12\xfa\xb9\x2f\x1c\xf5\xf4\xcb\x1c\xda\x09\xe8\x7c\xca\x27\x06\xa1\xf3\xaa\x08\x9c\xd8\xb5\x05\x77\x2f\xcf\xf6\x02\xdf\x1a\x57\x4f\xdf\x4c\x17\x5d\x59\xee\xcf\xa7\x46\xd1\x39\xb2\xb3\x2d\xdb\x55\x79\x43\xab\x75\x26\x6a\x05\x52\x03\x50\xd3\xd2\x88\xd6\x44\x51\x8c\x40\xb4\x38\x4e\x50\xaa\xda\x4a\x4e\x40\x41\xa9\x38\x8d\x80\x93\xea\x3e\x97\x2a\x41\x68\x39\x17\x36\x96\xb6\x33\x68\x25\x2c\x71\x67\x40\x47\xec\x1c\xca\xb5\x64\x76\x68\xec\xa1\x0f\x7a\x53\x94\xb0\xef\xa7\x0b\xb8\x5f\x3e\x77\xce\xf8\x70\x38\x38\x89\x99\x78\x74\x83\x1f\xec\xff\x90\x1e\xca\xa2\x6a\xe2\xbc\x99\xad\x24\x7d\xdf\xc0\x2e\x53\xb7\xa4\x57\x59\x84\x9e\xd6\x8c\xb2\x2a\xee\x2b\x54\xd7\x46\x9a\x27\xa8\x41\xd5\x21\xcd\x71\x2f\x48\x46\x40\x0d\x2b\xef\x77\x35\xfc\xf8\x78\x28\xcb\x71\xe3\xa4\x84\x12\xc6\x6f\x0a\x8e\x19\xd7\x09\x50\x76\xbc\x67\x81\x52\x3e\x50\xc2\x2e\xe7\x0f\x35\x2a\x15\xdf\x28\x4b\x2c\xe6\x27\x15\x26\x89\x03\x39\x9e\xe1\x9e\xf9\x23\xb9\x8d\x83\x7f\xb0\xe6\x3d\xdd\xc2\x8a\x3e\x7d\x83\x21\xe1\x85\x84\x37\x3b\x25\xaf\xaf\xf9\xfd\xd5\xa8\x8d\x80\x07\x1c\xdf\xee\xf3\xb0\x33\xb7\xfe\x5c\x21\xb9\x19\x80\x03\x51\x99\x04\x64\x40\x32\xcd\x5a\x02\x27\xd5\xb2\x95\x70\xa2\xd9\x80\x03\x3c\x41\x35\xe7\xf1\x4c\xaa\xe9\x1c\xf8\x7a\xd3\x02\x8b\xe6\xf8\x98\xd6\xe9\x5d\x9a\xa5\xcd\x0b\xf5\xf0\x94\xb1\x10\xbc\x91\xf2\x0c\xfd\x22\x67\x12\xfa\x71\x82\x2b\x08\x14\xcf\x06\xe4\x9d\x38\xee\xdc\x5b\x76\xa0\xd9\x0f\xdc\xc8\x0e\x3f\xb4\x43\x49\xbe\xcc\x19\x3b\x80\x9c\xbf\x33\x21\x88\x97\x8f\x0e\x94\x13\x1c\x08\x98\xf5\x7d\xc3\x79\x1f\x59\x61\xf9\xcc\x7c\xe3\xec\xf1\x9e\x5c\x0c\x90\x66\x74\xd1\x3e\x54\x63\xc9\xc4\x03\x51\x8f\x69\x0f\x34\x67\x6c\x3b\x68\xc9\x18\x77\xdf\xa4\x63\x2d\x7e\x1d\x8c\xb9\x00\x30\x1c\x7b\x29\x00\xc7\x03\x1d\xc4\x5a\x5e\xe8\x11\x8c\xf3\x44\x07\xb7\x92\x37\x3a\x95\xb2\xf5\x06\x97\x8d\x32\xd8\x45\xe0\xf5\xa5\x74\x8c\xb9\xef\xf2\x11\xe6\x40\x26\xc6\x97\x85\xe5\x47\x97\xfd\x22\x8e\xad\xe4\x1b\x3b\xb2\xc3\xcf\xdc\xb8\xaa\x3e\xb7\xa3\xca\x7e\x9f\xab\x1b\x50\xf8\xf9\xb3\x9c\xad\x64\xf9\x78\x32\xa5\x8f\x67\x3b\xaa\x24\xe7\x16\x71\x96\xde\xe7\x37\x24\xf8\x16\x67\x07\x2c\xe3\xed\x97\xee\xfd\xa1\x86\x22\xdc\xcb\xff\xfb\xa1\x6e\xd2\xdd\x4b\xeb\x15\x2e\xc3\xc1\x23\x6f\x91\x70\x6f\xe1\x01\x5c\x0b\xeb\xf6\x55\xeb\x01\xb9\x8d\xb3\xed\x3b\xc3\x43\x07\x4d\xd7\xac\xf2\xf9\x52\x83\x17\xb6\x61\x77\x6f\xe0\xf6\x6c\xe7\x83\x3e\xc2\xe1\x59\xdc\x1d\x58\xaa\xd9\x9c\x03\x1a\xe1\x75\x0e\x6e\x0e\xc3\xb3\x05\x24\x5c\xcf\x7e\x96\xb2\xbe\x04\x60\xc0\xff\x43\x98\xe1\x24\x50\xc1\x70\x33\x81\x05\x9a\x3d\x1d\x98\x42\x0b\xe7\x04\x5b\xdd\xca\x89\xc1\xa0\x18\xba\xa7\x76\x38\xc5\xb6\x30\x7b\x3b\x79\x33\xbb\xb5\x15\x6b\xcb\x84\x17\xdd\x8e\xf3\x24\x0b\x2d\xbd\x98\xa1\x86\x1c\x58\x86\xb9\x25\x1c\xaf\xc3\xaa\x25\xda\xe4\x14\x77\xbc\x60\x8f\x88\xc8\x4e\xee\x8b\x9e\x03\xdf\x2d\x98\x27\x59\x30\xdb\x71\x32\x22\x74\xd0\x2c\x74\x90\xc8\x4f\xe9\x4d\xbb\x55\x51\x0a\xa6\xac\x2b\x47\x6a\x02\x72\x38\xae\x79\x35\xda\x86\x50\xf7\x53\x80\x16\x8f\xb0\x39\xbe\xb0\xcc\xf2\x59\x72\xa8\x3d\xc0\x54\x97\xb1\x18\x9e\x81\xb6\x8f\xdd\x65\x02\xb6\x5e\x28\x7b\xa6\x9c\xeb\x64\x76\x32\x85\xfd\x37\x49\x1f\xe5\xd0\x77\x28\x51\xdd\x7a\x72\xfb\x43\xae\xc1\xbd\x27\xb8\x42\xc9\x9f\x43\xb6\x03\x6b\x55\xe8\x70\xba\x0d\x5a\x76\xa7\xe3\x0e\xa1\x9d\xfd\x6a\x3c\xc5\x55\x9e\xe6\xf7\x12\x0c\xd4\xe9\xa6\xb5\x92\xc7\xa6\xb7\xb5\x9d\x19\x05\x46\x4e\xa3\x76\xf1\xd6\x35\x6d\x89\xaa\x2f\x41\x56\xb6\x15\x9b\xa6\xa9\xe8\x81\xc1\x1d\x2e\x51\x0f\x11\x15\x10\x51\xf3\x00\x95\x63\x70\xf1\x0b\xc4\x12\x2b\x7a\xf8\xe9\x38\x43\xf4\x2c\x94\x4e\x8b\x0b\xff\x41\x16\xb4\x38\x4f\x71\x8f\xe4\xf7\x64\x81\x03\x8c\x97\xe3\xc2\x6d\xbe\xe8\x5b\x52\x6e\x94\x9e\x45\x42\x73\xbd\x88\x3d\x05\xcf\x0c\xfa\xe7\x0a\xeb\x13\x64\xfb\x49\x88\xc6\x9a\xd0\xc9\xc8\x71\x2f\xa0\x63\x2b\x20\x7f\x1c\x5b\x95\x07\xce\x47\xcc\x75\xcb\x69\x61\x42\xa7\x3e\xd5\x4b\x0c\xb8\xa2\x38\xcd\xee\xf4\x28\x60\x06\xcc\xb2\x61\x67\xcb\xcc\xee\x68\xd9\xfa\x35\xa3\x11\x6d\xb0\xc7\x3f\xb8\xb9\xca\xea\xfd\x92\x03\x0f\x62\x99\xc7\x8b\x7a\x5c\xa1\x58\xf2\xed\x16\x1d\x64\x6f\xf1\xca\x38\xde\x5f\x72\x72\x60\x89\x27\xde\xc6\xdc\x03\x43\x02\xf3\x16\x2a\x67\x9f\xa1\x5a\xb9\x53\x30\x81\x2b\xe3\xba\x7e\x2a\xaa\x64\x16\x50\x5f\xe9\x1c\x68\x4c\xcc\x2c\xb8\x49\x22\x49\x4f\xce\x00\x99\x47\x20\x81\x9d\x22\x8f\x42\x4d\x12\x87\xab\x9c\x04\x98\x47\x18\x06\x9a\x22\x0b\x60\x46\x88\x22\x6f\xb1\x1e\x53\x80\x4e\xf6\x99\x72\xf1\x22\xe8\x29\x72\x15\xc5\xd4\xb4\xab\x0a\x8c\x34\x84\xd9\xda\xbd\x47\x07\xe2\xa7\x2e\xf0\xac\xe4\x5d\x4f\xb9\xe4\xe3\xad\x1c\x0f\xa1\x82\xf9\x40\xf9\x6d\xf0\x46\x8a\xbc\xe7\xa6\xe1\x4b\x11\x31\xf0\x8a\xf0\x2c\x45\xda\x72\x82\xf8\xaa\x47\x28\xe9\x1e\xae\xeb\xc8\xea\x43\x52\x5d\xeb\x77\x71\x75\xa9\xe4\x8c\xf5\x45\x79\xd2\xd7\xe1\xb8\x3d\x89\x78\xd2\x21\x8b\xd6\x18\xa9\x9c\x5d\xb6\xe2\xc8\x50\x1c\xb9\x20\x57\xaf\x92\x45\x83\x20\x69\x99\xee\xb3\x6c\x5d\x21\x20\xb8\x57\xa5\x9f\xa5\x32\x7f\x88\x77\xf8\x91\x62\x94\xae\x1f\xb3\x04\xbf\x58\xc7\x82\x42\xa4\xee\xf3\x2d\x2f\xb4\x47\x96\x50\xc4\x15\x99\xa6\x67\xc9\x5a\x02\x33\x78\x09\x2d\x4c\x81\x69\x4a\xe6\x2c\x1d\xaa\xb9\x39\x8f\xa8\xf1\xd2\x63\x14\xce\x92\x09\x53\x7c\xa4\x86\x21\x55\xcf\x95\xf0\x0a\xa6\x50\x41\x0c\x90\x8f\xc8\x77\xe9\x08\xcb\xbf\x0f\xd0\x0e\xe5\xfb\x4a\x41\x2b\xab\xff\x24\x54\x3d\xa9\x27\x8a\xfe\x23\xc4\x64\x11\xc3\xbd\xa9\xc2\xc0\x49\x7c\x88\xd3\xbc\x46\x8d\x66\x6a\x4e\xf9\xac\x89\xae\xc1\xa6\xcf\x39\x11\x4f\x83\x8a\x3e\xcb\x62\x14\xa5\x3e\x0e\xdd\x0c\x09\x3d\x12\xa2\x6c\x42\x78\x2f\x2c\xd9\xf6\xe5\xb2\x62\xa2\xb2\xbf\x88\x7c\xc5\x1a\x31\xbb\xcc\x2c\x92\x85\x9d\xc9\x9a\x95\x66\x0c\xff\xd2\x45\xe8\x64\x5c\x73\x1a\x7d\x8e\x9d\x91\x5c\x9a\xad\xad\x75\x28\xf9\x4e\xc4\x74\x6a\x37\xcc\xdb\x7f\xc9\xe4\xee\xda\x1a\x45\x19\x7d\x12\x9e\x53\x9b\x3f\xbe\xcb\x9b\xb9\x02\x2c\xaf\x7c\xc6\x7a\x70\x3e\xa4\xeb\xfb\x68\xf1\xd6\x52\xd8\x08\x8d\x00\xed\x52\x94\x25\x35\x6a\x6e\xcb\x39\xba\xc9\x18\xe9\x13\x6a\xcb\xd2\xa2\x73\x7a\x6b\x7a\x3b\xbb\x5c\x6a\x8c\xaa\x47\xcb\x0a\x2e\x6c\x82\x74\xd3\xbc\x74\xc6\x8f\x28\x61\x4b\x8a\x2d\x24\x9d\xdb\x9a\xcb\x8c\x14\x32\x5e\x3b\x8f\xda\x37\x45\xe1\xe9\x1a\xe1\x1b\xd5\x30\xb7\x8b\x57\x9b\x10\xda\xa3\xa9\x10\x45\x7e\xec\xcc\xd3\xed\x84\x18\xb1\xd3\x2a\xdd\x8c\x02\x4c\x43\xa7\xa1\x67\x28\x70\x03\x24\x6a\xbd\x6d\x14\x74\x8c\xae\xf3\x68\x69\x22\xda\x15\xca\xd9\x2a\x14\x23\x2d\x7b\x53\x55\x6c\x49\x65\x52\xe1\xba\x02\xc1\xca\xb6\x9e\xa4\x6f\x2d\xa9\x48\x22\x85\x17\x17\x5f\xd9\xc6\x73\x29\x55\xf3\xea\x9c\x27\x49\x4f\xc3\xb5\xb8\x23\xfe\x4c\x9a\x93\x48\xf1\xb4\xc2\x34\xa7\xc4\x48\x97\x9c\xa0\x1e\x8d\xa0\x9a\x35\x71\x47\x95\xa1\x49\xe0\x79\x3a\xd0\x08\x9a\x19\x93\x6e\x44\xe3\x99\x00\xfd\xd7\x29\x3a\x32\xc2\xce\xa2\xdf\x9c\x11\xf1\x44\x3f\x7e\x5b\x6d\x46\x12\x9f\x7e\x86\x4a\x33\xb3\x14\xdb\xd2\x79\x45\xe6\x28\x37\x52\x4c\x23\x1a\xce\x24\xfc\x24\x99\x67\xd2\x75\x64\xb8\xd7\x28\x3c\xab\xf1\x4c\x35\xf4\x6d\x55\x9f\xa5\x35\xca\xc5\xe8\x4a\x2c\xa7\x34\xfd\x34\x4d\x68\x69\x6d\x32\xc9\xbc\x0a\xc7\x29\x4d\x3e\x9b\x62\x34\xbf\xe2\x99\x72\xf8\x74\x84\xeb\xfa\xe5\x4f\xa5\x27\xc9\xc8\x9e\xa1\x2c\xcd\x2d\x36\xd5\x43\xa7\xa8\x4d\x13\xf8\xe6\x4f\xfa\x71\x05\x6a\x56\x89\x99\x5a\xd4\x04\xae\xb9\x13\x76\x4c\x9f\x9a\x01\xff\x2f\x54\xaa\x54\xd4\x9d\x47\xb3\x3a\x33\xf6\x39\xdd\xfa\x2d\x75\xac\x25\x9a\xd5\x6c\x7d\xea\x54\x2d\x6a\x9e\xee\x34\x43\x63\x3a\xbf\x9e\x74\x9a\x76\x74\x82\x4e\xf4\xad\x34\xa1\x53\xf4\x9f\xd5\x5a\xcf\xb7\xd0\x75\xd6\x6b\x38\x2b\xf5\x9a\x6f\xac\xcd\x9c\x49\x87\x39\x87\xe6\xf2\x97\xd2\x57\x16\x69\x29\xf3\x75\x93\xf3\x68\x24\x0b\xf4\x90\xb9\xda\xc7\xe9\x3a\xc7\x6c\x4d\x63\x9e\x7e\xf1\x67\xd4\x2a\xde\x42\x97\x38\xbb\x06\xf1\xed\xf4\x86\x5b\x74\xb8\xdd\x16\x09\x12\x17\x51\xf2\x72\xe6\x72\x34\x0d\xdc\xf1\xe0\x34\x28\xe5\x8e\x31\x40\x75\x7b\xc7\x4a\xf1\x9c\x46\x20\xe5\xf3\x77\xf0\x4d\x20\x7f\xc8\xcb\xcc\x7b\x55\x35\xab\xc7\x10\x50\x1c\x07\xde\x62\xaf\xe0\x42\x0c\x97\x8f\x6f\x41\xdb\xbc\x66\x5e\x74\xfe\x6e\x5c\xd8\x3f\x92\xb9\x5c\x48\xc7\x7e\x4d\xd3\xb1\xb3\xb7\x7a\xbf\xfb\x03\x7f\xf7\x07\xfe\xee\x0f\xfc\xdd\x1f\xf8\xef\xef\x0f\xcc\x07\xf5\xe7\x83\xa4\xde\xc5\x5b\x6b\xbb\x9d\xb3\xd9\xa6\xf1\x2d\xc7\x77\xd9\x4a\xa0\x6e\xdd\x67\x73\xc9\x28\x76\xd0\x4a\x10\xae\x0e\xe9\x9e\x79\x2c\xc7\xcb\x84\x2a\xbd\xb8\x28\x4b\xcd\xb2\xed\xf0\x74\x19\x85\x46\xbd\xb0\xe0\x5c\x0a\x45\x2d\x7b\xba\x84\x54\xb5\x5e\x54\x6c\x2e\x6d\xbc\xba\x3d\x06\x3f\x57\x3d\x5e\x8f\x63\x9a\xe6\x49\xb5\x97\x49\xe7\x33\x8b\x1f\xa7\xf6\x74\x6a\x28\x75\x95\xa3\xcc\x35\xbe\x4f\x53\xc1\xa8\x2b\x1b\xe1\x94\xb1\xdd\x97\x1c\x42\x52\xcd\x99\xf6\x4c\x67\x42\x28\x12\x7f\xea\x2e\x89\x86\xa6\xe0\x44\x76\x1b\x2d\x7f\x5a\x64\xd3\xc8\x17\xe3\x22\x5b\x09\xd4\x11\xc1\xa6\xf2\x52\x88\x6c\x25\x08\x57\x87\x54\x64\x8f\xe5\xce\x9a\x98\x22\x8b\x8b\xb2\xd4\x2c\x13\xd9\xd3\x65\x14\xb3\x6a\x61\xc1\xb9\x14\x8a\xf3\x6e\xba\x84\x74\x22\x2e\x2a\x36\x97\x36\x7e\xaa\x8e\xc1\xcf\x9d\x9d\xeb\x71\x4c\xd3\x3c\x39\x07\x99\xcc\x6a\xb3\xf8\x71\x4a\x64\xab\xa1\xd4\x55\x8e\x32\xd7\xb8\xc8\x56\xc1\xa8\x2b\x1b\xe1\x94\x31\x91\x2d\x87\x90\x54\x73\x26\x91\x7d\x26\x84\x22\xf1\xa7\x8a\x6c\xc0\x24\xb3\x49\x34\x2f\x65\x41\xaf\x43\x13\x9b\x04\x49\x3c\x71\x29\xb3\x58\x91\xe0\x14\x8c\xbc\x9c\x1f\x37\x62\x6e\xf0\x86\x79\x71\x14\x56\x04\x36\x18\xdc\xb1\xe7\x29\x1b\x9a\x9c\x64\x77\xf2\xfb\x97\x2b\x6d\x4a\x10\xf8\x6a\xd0\xfd\xdb\x22\x6f\xaa\xb8\x6e\xf4\x28\x8a\xae\xd3\x7c\x8f\xaa\xb4\x91\x0d\x80\x26\x58\x70\x66\x1a\x61\x66\xd9\x45\x66\x98\x2b\x96\x5a\x12\xe4\x5b\x79\xd9\xfe\x7b\xb8\x71\x3e\x69\xd7\x1b\x0b\xb1\xc5\xbe\x5b\x5f\xff\xc2\xd6\xd7\xf1\x24\x2b\xcc\x2c\xba\xab\xe2\x3c\xd1\x7d\xd3\xec\xa6\x90\x22\x33\xe0\xe9\x26\xd6\x11\xa5\x53\x6d\x46\xfd\xd7\x1b\x4c\xdf\xde\x04\xfa\x56\x66\xcd\xb7\x37\x56\x9e\xd9\xea\x78\xaa\x61\x71\x95\xf5\xf0\x4f\x65\x24\x3c\x63\x6c\xe1\x41\x24\xe1\xba\x89\xab\x46\x08\x24\x4c\xde\x89\x71\x84\xe1\x3b\xf9\x74\x88\x9f\xfb\xf0\xbe\x3f\x32\xe1\xcf\xda\x0c\x28\x7d\x20\x41\x2b\x28\x9f\x35\xcb\x29\x9f\x65\xc2\x42\x7e\x9a\xb2\xec\x5c\x64\xc9\x89\xc5\xfc\xf3\x84\x95\x16\xff\x51\xcb\xfb\x88\xd5\x5c\x69\xf5\x3e\x87\xe5\xba\xb3\x13\x57\xa8\x4e\xbf\xa2\x9b\x47\x54\x35\xe9\x36\xce\xc4\x61\xe4\x82\x36\x93\x47\x3a\x9c\x81\x59\x3e\x77\x23\xea\x77\x03\xca\x87\x22\x95\x06\x72\xeb\x02\x0c\x37\xc5\x17\x94\x33\xf1\x86\x93\xb4\xd1\xa0\xb1\x49\xc6\x87\x5c\x9b\x33\xe8\x33\xc6\x7a\x72\x88\xe7\x8e\xec\x32\x0e\x18\x53\x1c\x92\xd1\xaf\x10\x0f\x49\xc6\x37\x43\x76\x11\xb9\x84\xd1\x1a\x92\x8c\x79\xe8\x51\x76\x55\xc1\xbf\xeb\x02\x50\x9d\xc0\x82\x42\xc8\x43\xcb\x70\xd1\xe1\xfb\xae\xe8\xcd\x76\x45\x42\x80\x49\x47\xde\xd9\x62\xe0\xc2\xb9\xb1\x03\xe7\x05\xf1\x9b\x13\x53\x6f\x71\xec\xba\xb9\xfe\x57\x73\x3d\x9a\x64\xf1\xde\x46\x7c\x7a\x56\xeb\xdf\x47\x26\x4c\xb8\x2d\x5d\x0a\x61\xe0\xde\xcb\x62\x49\xaa\xfd\xc9\x24\x6c\x36\x05\xcc\xb0\xde\x14\x68\xc7\x8e\x6a\xc0\x31\x26\x54\x0d\x83\xe4\x9b\x40\x94\x6c\x4a\x9c\x38\x02\x14\x05\x3b\x0c\xba\xe1\xa1\xc3\x46\x16\x8a\xf5\xfb\x06\xf7\xaf\xba\xc1\x6d\x35\x14\x53\x73\x79\xd7\xa2\xba\xa9\x8a\xfc\xfe\xb8\x2b\xf2\x3e\x54\x76\x75\x88\xb3\x0d\xbc\x79\x22\x4a\x8e\x6b\x9a\x6d\xba\x51\xe2\x4c\xb4\x19\xe6\xfc\xe3\x92\xf7\xd8\xa6\xac\x96\x2e\xf4\x37\xa9\x0d\x2b\x5c\x96\x8b\xd5\xa7\xf1\xbc\x60\x7c\x2a\x81\x90\x0f\xbf\xbd\x28\x96\xf6\xdc\xf0\xd6\x6b\xc3\x4c\xaf\x8e\xee\x7c\x14\x43\x83\x69\xd4\x3b\x41\x88\x22\xe6\xaa\x32\x1f\x5b\x76\xf9\x0c\x49\x8d\xf5\x40\x0c\x45\x16\x5e\x5e\x9b\x9a\x85\x31\x5b\x26\x06\x70\xc4\x8c\xc7\x42\x6a\xe4\x13\x51\xc9\x02\xdf\x4b\x46\x18\x8f\xc2\x2e\x2b\x9e\x68\x4a\xae\xae\x55\x90\x3c\x99\xc0\xf6\x5a\xb6\x66\x79\xe6\xa1\xbe\xc6\x4a\x39\xfb\x62\xb3\x08\x98\x51\xda\x4d\x2e\x80\x7b\xb2\x30\x2b\x7d\x32\x3f\xc5\x7c\xb2\x3e\xc9\x79\x72\x42\x3a\xf3\x24\x39\x0a\x07\xa6\x7d\x73\x49\xa0\xee\x45\x2d\x6e\x8b\x2c\x82\x5e\xd9\x6e\xae\xf4\xf2\xa6\xd3\x50\xe5\x7d\xe4\x7f\x1d\x43\xd2\xc8\xe6\x83\x7c\x21\x35\x2a\xe3\x2a\x6e\x8a\x8a\xe6\x84\xd9\xa5\x15\x93\x27\x87\xe9\xb3\x24\x7d\x7c\xff\xb0\x4c\xd6\xcc\xab\x62\xc1\x20\xb4\x34\x9c\xb1\xfa\x65\x35\x9f\x96\xde\x64\x94\x92\xb5\xcc\xc2\x51\xb6\x3a\x61\xca\x0c\xd2\x56\x70\x22\xa1\xed\xd8\x67\xf5\x60\x02\x3f\xca\x1d\xd1\xd4\x49\x25\xfe\xb8\x3a\x29\x67\xc4\x1f\x57\x6b\x13\x3b\xfc\x71\x75\xae\x94\x0b\x1d\xa6\xd3\x73\x1f\xfc\x71\x75\x94\x2c\x17\xdc\x2b\x50\xa3\x06\x8b\xc4\x0c\x90\xf9\x9f\xae\x35\x05\xba\xb1\x81\xec\x82\x35\x9f\x36\xa0\x2c\x9a\x93\x31\x9c\x69\x80\x07\x18\x4f\x1f\xe8\x1e\xe5\x71\xd0\xd7\x64\x38\xb2\xb8\x41\xff\xe7\x3b\x48\x60\xa5\x5b\xa6\xf9\xa3\xa6\x83\x6a\x72\x79\xb9\x99\x0d\xc8\xe8\x05\x96\xeb\x40\xc6\xd9\x67\xee\x85\x64\xe1\xf8\x9e\x68\x8a\x43\x34\xb0\xc2\xcf\xca\xac\x33\x30\xb8\x53\xb3\xba\x60\x72\x6f\xdf\x8a\x46\x77\xc8\xfd\xa4\xdf\xa1\xe6\x09\xa1\x7c\x6c\x8c\x48\x36\xf1\xd3\x32\xdc\x53\x14\x27\x95\x3e\x57\x56\x79\x16\xdb\x19\xd2\xc0\x93\x5c\xeb\x5c\xc0\x78\x26\xa9\x1b\xa3\xcf\x77\x4a\x3c\x49\x1d\xa6\x41\x82\x26\xf6\x56\x89\xa8\x64\xe2\x25\xb0\xaf\x6d\xd9\x5c\x51\x60\x38\xa5\xf0\x49\x1a\xa9\x1c\xd9\x5a\x05\x55\xc0\xa6\xc8\x8c\x6d\x92\xfd\x2f\x08\x2d\x90\x59\xef\x89\xcc\xda\xf0\x09\x7b\x58\xce\x4f\x93\xff\xf2\xe1\x42\xbf\xf8\xcc\xea\x30\x9d\x14\x7d\xc8\x88\x55\xe0\xf7\x5d\x51\x11\xb0\xf7\x6b\x87\xe7\xc4\x9a\xbe\x45\x25\xab\xa7\xdb\xe9\x95\xae\x99\x95\x27\xd4\x2a\x66\x7b\x60\x4f\x0c\xc9\xd5\x31\xf8\xfb\xf7\x3c\x3e\xa0\x0f\x87\x22\x89\xb3\xcf\xc3\x37\xef\xaf\x8e\x4a\xb6\x4a\x16\x6e\x7d\x92\xf9\xdb\x94\x64\xfd\xbe\x22\x39\x41\xf1\x4f\xb2\x41\x72\x44\x89\xfc\x82\xed\x00\x3f\x55\x17\x6e\xda\xc6\xf0\x9c\x8e\xe2\x34\x89\x36\x82\x72\xb5\x5c\x93\xe1\x3c\x0e\x8c\x85\x6c\x57\x13\x5b\x26\x16\x74\xcb\xba\x96\x2b\xb7\xbc\xc8\xca\xae\x1b\xa2\x58\xde\x55\x0c\x8e\x63\x9b\x2c\x15\x04\x7d\xfc\xd0\x14\xaf\xf0\x61\xad\x81\x13\x0a\xcf\xed\x0e\x02\xbc\xb2\x23\xd8\xc2\xcb\xbb\x00\x4a\x93\x2c\xdf\xe6\x90\x19\xe2\xbb\xe2\x11\xad\xe1\x86\xb6\xe0\x8a\x32\x27\xf1\x03\x87\x63\x2d\x43\x10\x24\x47\x38\x08\x03\x23\x37\xbc\x58\xcd\x09\x50\x7a\x36\x2b\x10\xe8\xb5\xbc\xc0\x96\x5e\xc1\x0c\x50\xfc\x48\x4f\x9a\x5c\x9b\xdf\x71\xdd\x2e\xb4\xbb\xdd\xce\xb7\x91\xdd\xae\x37\x6a\xdd\x9e\x60\x75\xba\x7d\x68\x4f\xfd\xf9\xac\xa2\x9a\x39\x6c\xf7\xd0\x6c\x2b\xae\x51\xcb\x0c\x09\x2b\x7a\x73\x9d\xb5\xf8\x76\xb6\x65\x62\xd9\x80\x2d\x36\x44\xdf\xae\x36\x70\x9c\xc6\x1e\x27\xdb\xc0\x6f\xd7\xdb\x51\x4e\xe4\xce\xd3\x0d\xf0\xb7\x57\x47\x36\xf1\xe7\xe9\x4c\xbb\x94\xa3\x4e\x1d\xf8\x93\xfb\x9f\x74\x42\xd3\xe7\xdb\xc6\x8b\x9d\x7c\xb3\x3c\xb0\x42\x9f\x76\xce\xb0\xfa\x84\xe0\x6c\x06\xfe\xf3\xd9\xe3\x49\x07\xf6\xa6\xbc\x87\xb2\x44\xd5\x36\xae\xd1\x86\x0b\x7c\xb2\x61\xf3\xde\x1b\x8e\xc7\x2b\xf3\xe7\x3e\x89\x39\xe3\xd1\xca\x1b\x9e\x8d\xbc\xe5\xd9\xc6\x0c\xdc\xac\x43\xc9\xdc\x11\x41\x87\xb2\x79\x39\xcb\x58\xb4\x98\xce\x81\xe4\xbc\xfd\xcf\x21\x3d\x5b\xcf\x13\xac\x47\xce\x07\xc3\x42\x87\x6e\x5e\xd0\xc4\xf9\xcc\x9b\xd6\xaf\x47\xdc\xf8\x82\x97\xc4\xc2\x63\xc9\x25\x07\x89\xa7\x1c\xf5\x9d\x74\x16\xd7\xed\xf7\x21\xe1\xff\xd3\x3e\x6d\x90\x0e\x26\xe4\xd6\xe1\xa5\x77\xf9\x6d\x0d\xd3\xbb\xb4\x69\xad\xcd\xec\xd7\x43\xf1\x55\xf1\x89\x79\xcb\xb1\xbb\x91\x92\xd6\x62\x85\x7c\x09\x73\xb3\xe5\x96\x17\x59\xcb\xb8\x03\x14\x2b\xd8\xb4\xc7\x31\xdc\xfd\x2b\x56\xc1\xbe\xc8\xed\xcd\x1a\x93\xbd\xac\xfc\xfa\xa2\xa7\x77\x9e\x80\xea\xa4\x4e\x6c\x71\x0d\x2f\x2a\x91\xab\x49\xf5\x53\xdc\x6c\xf7\xcc\xe5\xa4\x1f\x4c\xd3\xbc\x1c\x71\xac\x12\x3c\xaa\x36\x54\x40\x98\xc2\xde\x0b\x6f\x4e\xa9\xd3\xd6\x62\xa9\xd0\x17\x5c\x51\xe6\x04\x29\x21\xe0\x58\x27\x2d\x3a\x57\xb5\x61\x17\x12\xe1\xea\x95\xcf\xd0\x99\xd4\x38\x5f\x3e\x6b\xef\x35\x2c\x4c\x2f\x5f\x39\xf7\x41\xc1\x99\x10\xea\x38\x32\xb6\x7d\x53\x72\x43\x04\x74\xe6\x7f\xd6\x0f\x25\x9e\x25\xb5\x96\x17\x8d\xf6\xee\x5d\x2f\x64\x34\x89\x78\xba\xd4\x8a\x4a\xe3\x60\x04\x21\x35\x00\x60\xbf\x5d\x1e\xff\x73\xac\x00\x7d\xf3\x6d\x13\x73\xfa\xab\x6c\x70\x06\x33\x0c\x1c\xdc\x6c\xcf\xbb\x6e\xff\x37\x22\x61\x90\x5b\xdf\xcc\xa3\xdc\x35\xcf\x2f\x9f\x35\xfc\xbf\x0e\x6c\x22\xa4\x09\xbd\xa6\x00\xf0\x97\xee\x0a\x00\xb6\xe8\x9b\x77\x22\x2e\xa9\x73\x9e\xca\xf7\x50\xde\xc8\xdb\x5d\x51\x34\x7d\x60\x8e\xa6\x28\xdb\x9b\x31\xe5\xb3\xa2\xc4\x1e\xc5\x49\x5f\x82\x68\x1e\x4c\xa1\x7d\x73\xc8\xfa\xeb\x2f\x30\xb6\x70\x24\x71\x14\x7c\x04\x5f\xe7\x72\xe5\x1c\x6e\x1c\x1e\x80\xb4\x87\x2d\xef\x57\xed\x1b\x57\x71\xa6\x70\x70\xc3\xf5\xde\xf1\xab\x9e\xe6\x09\x7a\xbe\xf1\x4c\xb3\x17\xe4\xbb\xf4\x19\x25\x52\xbe\x1d\x08\xaa\xe1\x60\x9c\x7e\x4c\x4f\xb6\xb2\xe4\xfc\xb7\x3f\xa6\xe7\xde\xc2\x83\x9e\x36\xe8\x50\x77\x80\xe2\x41\xbf\x88\x80\x7d\x29\x1e\xf3\xd3\xd7\xac\x6c\x94\x3b\x68\xc3\x00\x1c\x5b\x38\xcf\x2c\x9f\x19\x45\x43\x51\xe4\xae\x48\x5e\x8e\xac\xbf\x07\xc8\x05\x29\xb0\xd1\x72\x63\x9a\xdf\xf7\x9c\x19\x3f\x34\xc5\x34\x6d\x8c\xe4\x09\x3d\x8f\xf5\x78\xee\xdc\xa7\xdb\xd1\xb6\x14\x73\xe8\x4a\x50\xee\xbd\xfe\xda\x59\xab\xdd\x7b\xca\x09\x88\x49\x68\x49\xd6\x5f\x08\xd1\x4c\xab\x43\xf3\x71\xdf\x19\x22\x6d\x2c\x58\x6c\x47\x89\x8b\x4c\x7f\xb9\x93\x7c\x3b\xd3\xd9\xed\xb8\x65\x33\x94\xb6\xb7\x9c\x94\xbd\xdc\x61\x18\x1c\x19\x8d\x81\x6b\xbf\xef\x8a\x8a\x4c\xe3\xff\xb6\xcd\x8a\x1a\x7d\x3e\x6e\x1f\xaa\xba\xa8\x6e\xca\x22\x05\xf6\x51\xfb\x57\x0f\x45\x62\xb0\x0b\x77\xb1\x24\x7d\xf3\x2e\x2b\xe2\xe6\x06\x3a\x7b\x03\x76\x09\x3c\x62\x79\x73\xa3\x47\xa6\x09\x7b\x0a\xb2\xb4\x38\xe5\x73\xcb\x11\xd0\x8d\x46\x5e\x34\xe9\x16\x19\xe0\x09\x7f\xdd\x3e\xa5\xf9\xae\xe8\x1e\xca\x22\x4b\xb7\x2f\xfa\x21\xce\xe3\x7b\x74\x40\x79\xd3\x7d\x79\x8a\xab\x1c\x33\x9c\x2a\x99\x74\x2f\x46\xd5\x2e\xf9\xdc\xbe\x8f\xf1\x28\x40\x07\xed\xbd\xe6\xd8\xe5\xf3\x25\x4f\x63\xaf\xb8\x31\xb4\x0e\x5e\x0e\x68\x1e\x40\x50\xda\x27\x55\x29\x9f\xaa\x52\xf8\xc7\xab\x91\xa4\xf5\x16\xf3\xea\x8b\xbe\xdd\xc3\x45\x89\xaa\x78\x68\x90\xbe\x8d\xab\xa4\x1d\xed\x87\x4c\xcb\xd2\x6b\x63\x8f\xe2\xac\xd9\x83\x48\xd5\x8b\x87\xa6\x7c\x68\xb4\x24\xd1\xd0\xe1\xba\x49\x34\x7a\xad\x61\xd8\x6d\x6f\x73\x5f\x78\x9d\x5c\xec\xc6\x87\x38\xdc\x0f\x47\x70\x7e\x6f\xd0\x2b\x23\xea\x4e\x69\x01\xba\xbe\xa1\x2f\x86\xfa\x0e\x58\xdb\xca\xb8\xc2\x5b\x5b\x7e\x16\x2d\x26\xa7\x67\x89\x09\xb2\x7a\x9d\x5d\x20\xaf\x63\x9e\x56\x4d\xee\x27\x17\xd9\xac\xdc\xc7\x0d\x7a\x8a\x5f\x8c\x6d\x91\xd7\x0f\x99\x8e\x9e\x1b\x54\xe5\x71\xa6\xd7\xc5\x43\xb5\x45\x3d\x01\x02\xdc\x97\x34\x4f\x86\x1f\x33\x68\x42\xff\x9e\x3c\x4f\xe2\xe6\xc1\x78\xd4\x02\xca\xba\x8c\xf3\xae\x3a\x3a\x85\xf2\x22\x41\x7a\x8a\x45\x49\xda\xbc\x8c\x42\xd6\xa8\x7a\x4c\xb7\x2a\x60\x4a\xc6\x34\x56\x1e\x50\x85\x54\x12\x14\xa3\xbd\x4d\xf0\xf6\x5c\xd9\xdd\x57\xa2\x52\x35\xea\xc7\x3d\x02\x17\x4d\xd8\xbe\x92\x85\xcf\xc5\xb2\xb9\xbb\x51\x64\xbe\x2a\xc6\xeb\x9a\x1d\xa0\x76\x60\x48\x87\xc8\xba\x8c\xfb\x22\xf6\x91\xa4\x6f\xd0\x1d\x42\x3b\x7b\xd3\x5f\xb4\x0a\x7b\x21\x2d\x91\x3f\x7c\xb0\x10\x39\xc5\xf4\xd2\x2f\x43\x36\x7d\x43\x68\x27\x0f\xca\x06\x0c\x3f\x8b\xad\x20\x57\x62\x85\xcb\x58\xe2\xbd\xaf\xe1\xb2\x22\x30\xc3\xd4\xec\x98\x3d\x2d\xa6\x19\x77\x8a\x63\xa9\x90\x70\x19\x21\xe1\x8a\xdc\x62\xf7\x2f\xa8\x4f\xbe\x4c\xee\xf2\xf4\x1d\x45\x7e\x9b\xbd\x15\x99\x77\x68\xb5\xee\xa8\x6a\xe5\x01\xd5\xed\xd5\x51\x14\xeb\x73\x1b\xb3\xc0\xae\x76\x8a\x21\xed\x24\xcb\x59\x67\x2a\xa3\xcc\xe0\x33\xcc\xe0\xcb\x07\x7b\xd0\x7c\xbe\x81\xe3\x4d\x98\x20\x52\xea\xfc\xf4\x77\xb8\xb1\x48\xbb\x37\xb2\x17\xcc\x86\xbf\x9f\xa7\x8e\x13\xae\x6a\xfe\xdf\xc3\x6d\x4d\xb9\xe1\x3c\x53\x84\x0c\xd1\x00\xc4\x6f\x62\x94\xf6\x26\x65\x00\x92\x13\xa2\x74\x90\xbd\x1f\xae\x77\x59\x9d\xe7\x89\x5a\xc1\xee\x3c\xe9\x52\xd4\x1e\xf1\x2d\x23\x87\x9c\x16\x66\x71\x7f\x04\xbc\x9e\xb4\x01\x2e\x7e\x95\xb4\x17\x70\xc7\x68\x80\x98\x37\xea\xd9\x33\x87\x12\x31\xd9\x53\x2d\xd6\x01\x1b\x4a\x68\x24\x24\xa3\xb0\xec\xca\xc1\xba\xa3\x1e\x4e\x77\x24\x8e\x34\xaa\x12\xad\xc6\xce\x15\x09\xca\x67\xfe\x90\xc1\x66\x15\x23\x41\x0f\xd2\xf1\x70\x11\xfc\x39\xba\x87\x85\x8a\xad\xad\xbd\xa0\x6e\x4e\x52\x2d\x35\x31\xb3\x15\x39\x9d\xa9\x24\xec\xc9\x09\x47\x6b\xa7\xf5\x80\xc9\xf6\x3d\xdb\xe2\x6b\x15\x54\x67\xcc\xe5\xfb\x67\x40\x1c\x89\x43\x3a\xb3\x6a\x29\x52\x19\x09\x13\x95\xb6\xf7\x3d\x07\x05\x65\xca\x82\x8a\x97\x28\xfd\x3b\xdb\xb2\x5d\xe9\xae\x82\x97\x96\x8e\xdb\xf5\xb0\x6a\xec\x26\x5b\x32\x34\xe0\x70\xf6\xeb\x4d\x6b\xb2\xbd\xb8\x68\xcf\x19\x97\x8d\xa9\x92\x0a\x59\xef\x13\x76\x23\x62\xd0\x9d\xcd\x3d\x32\x24\xea\x76\x33\x75\xd8\x4a\x69\x06\xeb\xa9\xd6\xa8\x22\x6f\xd1\xcf\x7b\x12\xde\xa3\x03\x66\x9f\xf6\xfc\xd1\x48\x6f\xa5\x1c\xaf\x71\x2f\x47\xc2\x31\xd9\xc0\xdf\xc3\x57\x2e\x19\x52\xd2\x12\x01\x2b\x17\x16\xb3\x4d\xab\x41\xe7\xb0\x67\x96\xcf\x9b\x36\x82\x1a\x35\x7e\x1d\xd2\x24\xc9\x14\xc6\xdb\xae\x0e\xba\xf7\x5f\xd4\x81\x6d\x19\xbe\x0b\x5a\xba\x6c\x3f\x0c\x9c\xd1\x5a\x55\xe1\xeb\x5a\xfc\xac\x33\xd3\x35\x7f\x42\x85\x37\xa8\xfd\x53\xbd\x2f\x9e\x34\xa3\x46\x75\x4d\xd4\x31\xbe\x24\x43\x5e\xcc\x37\x80\x03\x6b\x12\x23\x41\x75\x93\xe6\x31\x9e\x5f\xfc\xe4\x1e\x6b\x06\x83\x92\x71\xb8\x64\xae\x97\x67\x71\x59\xa3\x9b\xf6\xc7\x2b\xd1\xfd\x92\xe2\xa0\x57\x68\xfb\xb2\xcd\xd2\xfc\x1e\x2b\x7f\x57\x6f\x14\x46\x71\x95\x59\xf4\xf5\xa4\xed\x16\xe9\x05\x7f\xd6\xe9\x0f\xe5\x9a\xb6\x2c\xbd\x2b\xc5\x71\x14\xff\x8d\xbf\x21\x35\x0f\xab\x1c\x1f\xeb\x19\x0a\xfa\xd2\xd4\x14\x11\xb8\x87\x89\x3e\x2c\x39\x3b\x1c\x14\x37\xf2\x36\xfc\x76\xfd\x87\x94\x30\x29\xc4\x82\xe6\x26\x74\x67\x44\x0a\x5e\xde\xde\x14\x79\xf6\x32\x9c\x03\x63\x70\x03\x6d\x1f\xba\xa8\x7b\x89\xb2\x2c\x2d\xeb\xb4\x5e\x46\xc7\xd5\x68\xed\x57\x47\xde\x0f\xec\xa9\x8a\xcb\x51\xfc\xdb\xb8\xc4\x45\x59\xa4\xf4\x95\x18\x59\x2e\x9c\x94\xb3\xd3\x22\x88\x23\x76\x42\x3a\x0a\xc0\x02\xb3\x8c\xf5\x02\xcf\xa0\xfc\xb7\x23\x7f\xc4\x68\x44\x53\xad\xba\x2b\x92\x17\x5c\x63\x1b\xac\x6c\xf0\x9a\x67\xdb\xcd\xec\xb8\x53\xad\xb5\xb1\x89\xef\xf4\x3c\x7e\x64\xc3\x6a\xd8\x62\x58\x0d\x71\x19\xdd\xc8\xd7\xb0\x0c\xc5\xd5\xcd\x5d\xd1\xec\x37\x19\x6a\xb0\xce\x8f\xd9\x00\x6e\x04\x9a\x10\x17\x90\x56\xa5\x3d\x64\xd2\x78\x32\x7f\xae\xa3\x24\xe5\xe1\x5f\x1b\x3d\x0b\x54\x77\xda\x22\xa2\x6c\x8a\xdb\x91\x38\x4f\x0f\x31\x11\xaf\x7d\xd3\x7b\x1d\xa9\x2d\x9b\x6a\xb1\xa0\xaf\x38\x9d\xbe\xc2\x43\x0d\x27\x17\x99\xd3\x90\xa1\x10\x56\x3a\xd2\x91\xc3\x60\x1e\x7a\x59\x15\x25\xaa\x9a\x97\x1b\x51\x7b\xde\xcc\x02\xe2\x06\x9c\x3b\xd0\xe2\x14\x97\x31\xb5\xf9\xc6\xea\xa3\xb9\xf6\xad\x22\xd3\x83\x04\x74\x43\xc9\xa5\x16\xdf\xb4\xfe\x99\x63\x30\x6d\x0e\x98\x11\x10\x9a\xed\x46\x71\xac\x20\x1d\x9c\xae\xbc\x26\xe4\x81\x64\x1a\xcc\xee\x4a\xc7\xc6\x57\xa2\xdb\xb7\x1b\xdb\x3e\x70\x31\x33\xe7\xda\x2d\x25\x9c\x24\x53\x1f\x44\x4a\x0d\x39\x92\xbe\x36\x2f\xb5\x2b\xcd\x2a\x9f\x2f\x37\x23\xa1\x3b\xde\xc9\xca\xc3\xcd\xc2\xae\xf8\xb5\x29\x8d\xe5\x31\xb3\xe4\x18\x6b\x11\x3a\x07\xd4\x49\x39\x6c\x09\x6c\xf7\xf5\x1a\x4a\xcd\x81\x19\x62\x26\x4c\x57\x23\x10\xc4\x1a\xfd\xf7\x28\x68\xf3\xb6\xdb\x72\xa7\x00\x38\xb4\xcd\x28\x44\xa3\x46\xa5\xa1\x14\xcb\xed\xde\x69\x2f\xaa\xd9\x70\x3f\x0d\x62\xc3\x71\xa0\x24\x35\x29\xb1\x19\x82\x9d\xe4\xf3\xf5\xf8\xe7\xc1\x35\xf3\x51\xe8\xde\x27\x4b\x50\x77\x64\x5a\x60\xc2\x28\x13\xb0\x2e\xa9\x1d\xb3\x92\xd6\xd9\x6f\x70\x3e\x27\xf8\x8d\xf4\x81\x9f\x1d\xbc\xbb\x61\x62\xc5\xc0\xf3\x9f\x69\x09\x38\x83\x97\xd5\x82\x6e\xa5\x32\x6d\x41\x01\x92\x19\x6c\x64\x34\xc6\x50\xb2\x38\x64\x36\x26\xf0\xd9\x59\x42\xfe\x88\x83\x7b\xc2\x81\x8c\xc8\xe4\xe1\x31\x38\xaa\x8b\xec\x11\xcb\xe1\xb8\x4a\xb4\x84\x71\x89\x51\x82\xd6\xed\x81\x79\x5d\xc6\x39\x35\x38\x36\x45\x91\x35\x69\xf9\x59\x56\xac\x78\x68\xd0\xc2\x32\x75\x99\xa5\x58\xbf\x59\x58\x8c\x7e\x1a\x00\xaa\xce\xf2\x7f\x4f\xe2\x26\xd6\x5b\xb8\xae\xe9\xa0\x06\xee\x2d\xa8\x54\x01\xd2\xec\x65\x24\x1d\x59\x17\xd5\xc1\x18\x78\xb6\x17\xf8\x96\xe4\x80\x5d\xea\x83\x8b\x97\xf2\xb0\x7c\xd6\x74\x5b\xf4\x9a\xf5\x2e\xaf\xe1\xa8\x5e\x73\x65\x3e\xb3\x62\x6c\xcc\x13\xf0\x74\x6a\x85\x3d\xb8\x7e\x02\x9a\x51\x3b\x13\xe3\xa6\xa9\xde\xb1\xfd\x74\xc9\x39\x9b\x99\x1b\x66\xe7\x48\x27\x33\x15\xea\x6c\x9c\x18\x0f\x2f\xbc\xbd\xf0\x32\x67\x31\x2b\xd5\xf4\x56\xf1\xea\x48\xe9\x29\x96\x55\x17\x9d\xc3\xb9\xea\xd2\x72\x06\xee\xe0\xe7\xf2\x31\x01\x1f\x63\x63\x7a\x58\x2d\xe5\x62\xa5\x5d\x9c\xd5\x4a\xf9\xfd\x09\x61\x6d\x4d\x02\x40\x36\x4a\xdc\x9e\x86\x5a\x7d\x30\xe7\x45\xe4\x0a\x39\x3a\xdc\x81\x92\x06\xf5\xff\xfe\xac\x43\xb2\xf9\x03\xca\x9b\xff\xeb\x43\x53\x94\x9f\x35\x1e\x40\x8f\xab\xaa\x78\x62\xbd\xb9\x39\x2a\x66\xf0\xcd\x5c\x86\x99\xc5\x1a\x73\x99\x40\x3d\xdc\x73\x07\x76\x64\x44\xdb\xa1\x1c\x9a\xe3\xdf\x68\xc1\x5f\xeb\x14\x7d\xba\xd2\x20\x98\x6b\xc9\x75\xdb\xa2\x3c\x8b\xb8\x78\xc3\x55\xf0\x6d\x05\xd2\xb7\x17\x62\xdf\x48\xf6\xbd\xb5\x90\x3c\xa7\x6e\x30\x2d\x76\x47\xb5\x87\x09\x71\x3c\xdc\xee\xf6\x0e\xf8\xdf\x97\xca\x7f\xed\x52\xc9\x1c\x23\x0e\x4d\x07\xf5\x36\xce\xd0\x3b\xeb\xda\xf0\x58\xb3\x00\xfb\x96\x6a\x3c\xbd\xd9\x02\xce\xef\x98\x4b\x8f\xf0\xac\x47\xe0\x9e\x09\x8a\x93\x4e\xac\x3c\xe7\x1e\xf6\x25\xe3\xbc\x70\x60\x27\x47\xf2\xad\x87\xae\x77\x52\x10\x54\x4f\x1d\x2b\xc1\x97\x82\x16\x22\xd9\x43\x29\xf5\x77\x4e\x4f\x66\xd2\x30\x45\xf8\xb9\x9d\xa4\xee\xd4\x68\xa9\x3a\x5d\xf5\xb1\xed\x65\xf8\x3e\x88\xc6\x2f\x21\x73\xd6\x35\x41\xe1\x7c\x7c\x96\x7f\x3f\xdb\x8a\x5b\x6a\x18\x99\x5a\x64\xdb\xb8\x38\x63\x7e\xd9\x23\xa8\x7a\x20\x15\x1e\xae\x7b\x46\x50\xf1\x70\x24\x16\xbb\x2c\x00\xf6\x9a\xe1\x7b\xa3\x8e\xf9\x56\xbd\xf6\x36\xbd\xca\x1d\x69\x4c\xf5\x6a\x6b\x87\x9e\x80\x22\x86\x9a\xb1\x16\xab\x11\xf5\x20\x2a\x2c\x5c\x63\x94\x88\x78\x28\x62\xf6\xf9\x93\xee\xec\x27\x27\x31\x91\xdb\xe3\x2c\xa4\x84\xe1\xc7\x9e\xbf\x5f\x47\xaf\xc0\xfc\x27\x90\x21\x6d\x83\x3d\x9a\x7a\x64\x72\xb1\x7e\xc8\x46\x89\x94\x7f\xe7\x6a\x56\x1e\xfb\x0d\x42\xb7\xf5\x37\x4e\xb0\x94\xd7\xa9\x2b\x88\x8e\x0b\x6b\x40\xbe\x2c\x3e\x10\xa0\xde\x16\x59\x46\x4d\xdf\x4a\xc0\xb2\x2a\x9e\x5f\x74\xf4\x5c\x16\x35\x4a\xf4\x32\x6e\xf6\x75\x17\x06\x0d\x3e\x3d\x94\x75\x53\xa1\xf8\x40\x5f\x1f\xf1\xde\xef\xbe\x4a\x13\xbd\x2a\x9e\x6a\xac\xf7\x68\x58\xf7\x81\x37\x9d\xd3\xca\xc8\xa7\xb8\x42\x71\x7d\x73\x41\x95\x0d\x7a\x10\x7c\xa1\x5d\x10\xf3\x68\xf7\x42\x76\xa5\x93\x0b\xc3\x64\x71\xf6\x71\x4a\x53\xf7\x02\x3f\x70\xee\x68\xef\x85\x94\x89\x5c\x42\x2a\x0b\x1d\x5e\x89\x6a\x42\xa8\xca\xe3\x47\xb6\x97\x14\xe1\x93\x75\x70\xce\x8e\x7f\xaf\x50\x76\xf5\xa1\xbd\x9e\xd2\x69\x99\xac\x32\x18\x2a\x9d\xbb\x88\x37\x18\xc5\xb1\x47\x59\x6b\x37\x18\xbe\x3f\x72\x11\xa9\x14\xe8\xd8\x02\x9c\xce\x25\xf9\x70\x2c\xca\x78\x9b\x36\x2f\x37\x86\xca\x05\x68\x6f\xb7\x27\xfb\xf8\xd7\x2c\xaf\x21\x0c\xa8\xa2\x41\xfe\x8d\xb9\x1f\x64\xf8\x4c\x62\x30\x08\xec\x64\xf7\xcf\xd0\x91\xf8\x05\xad\xb9\x89\xef\x20\x9e\xc4\xe7\xdb\x92\xb1\xc0\x6b\x92\x0a\x5a\x7d\x9f\x9c\x07\x95\x55\x71\x5f\xa1\xba\x36\xb0\xa6\xd7\xa0\xea\x90\xe6\x71\xc3\x59\xe1\xd3\x43\x7c\x8f\x6e\x1e\xaa\xec\xdd\x7f\xc5\x2a\xea\x0d\x3c\xff\x54\x3f\xde\xbf\x7f\x3e\x64\x9b\xed\x3e\xae\x6a\xd4\x7c\xf8\x3f\xfe\xf7\xff\x59\x0f\xaf\xff\x51\x3f\xde\x6b\xcf\x87\x2c\xaf\x3f\x5c\xec\x9b\xa6\xbc\xf9\xe9\xa7\xa7\xa7\x27\xe3\xc9\x31\x8a\xea\xfe\x27\xdb\x34\x4d\x5c\xf0\x82\x80\xdc\x3c\x67\x69\xfe\x45\x06\x68\x45\x51\xf4\x13\x7c\xbd\xd0\x40\x1f\xfd\x70\x61\xbb\x17\x1a\xd9\x62\x90\xdf\xdb\x2c\xae\xeb\x0f\x17\x75\x53\x3d\x6c\x9b\x87\x0a\xe9\xe9\x16\x0b\x81\x22\xc6\x33\xe2\xe2\xf6\x1f\x20\x46\x6e\x0d\xf9\x77\xfd\x2e\xae\x51\x3f\xe0\xd6\xab\x0a\xae\xed\x9d\x23\x39\xcc\xc5\x3c\xaf\x80\xdc\xc5\xf9\xf6\x45\xaf\xcb\x34\xd7\x9c\x5a\x4b\xf3\x5d\x9a\xa7\x0d\xd2\xb2\x34\x47\x71\xb5\xe9\xaa\xb2\xbd\x4d\xdd\x54\xc5\x17\xa4\x27\x71\xbd\x8f\xab\x2a\x7e\xb9\x31\x35\xd7\x65\xdf\x16\xbb\x5d\x8d\xf0\x4e\x8a\xbe\xc3\x38\xb6\x71\x79\x03\xc3\xd1\xef\xc2\xf4\xa2\x4a\xb1\x64\xa4\x72\xe5\xf5\x9f\x5f\xd0\xcb\xae\x8a\x0f\xa8\xd6\x26\x69\x3c\x9a\x3f\x1e\x67\xd3\xf1\x6a\x7b\x12\x68\xc7\xd1\x2c\x4b\x02\xae\xbb\xe6\xab\xb7\x00\xbd\x6e\x59\xe6\x6b\xb0\xa8\x06\xcb\x33\x5f\x9b\x62\x7e\x0d\xb6\x6d\xbe\xce\xe8\x9e\x3a\x3d\x94\x19\xea\xfa\xa7\xdf\xee\x56\x45\x13\x37\xe8\x9d\x99\xa0\xfb\x4b\x5c\xf1\xe0\x8b\xe3\x93\x6f\xaf\xff\xf8\x89\xf0\xdd\x3f\x12\xb4\xab\x6f\xff\x81\x97\x0f\x8d\x10\xf4\xe1\xe2\x47\xdb\x31\x4d\xf3\x82\x3e\xeb\x94\xaf\x9d\x0b\x6d\x97\x66\xd9\x87\x0b\x3c\x1d\x2f\xb4\x34\xf9\x70\x11\x5f\x68\xc9\x87\x8b\x5f\x2c\x5b\xf3\x32\x5f\x73\x1e\xc3\x4c\xf7\x35\x47\xf7\x75\xe7\xd7\xf0\xeb\xc5\x4f\xb7\xff\xf8\x89\x60\x7f\xa8\x91\x06\x93\xe4\x66\x5f\xa1\x1d\x54\x10\x4f\x4c\x0c\x60\x7c\x8c\x62\x4d\xd9\x76\x32\x00\x09\xf5\xe3\xfd\xed\x7f\xbd\x1c\xc9\x57\xc0\x7e\xaa\x50\x89\x62\x2c\x71\xe8\xaf\xe1\x76\x8e\xb5\xbe\xb7\xb7\xf9\xdd\xfe\x92\x3f\x1c\xbc\x7f\x83\x35\x7c\x5b\x64\x0f\x87\xbc\x86\x90\x0d\x1a\x38\xd8\xf2\xab\xf5\xf0\x3b\x7f\x47\x06\x6f\x55\xa5\x5a\x8c\x6a\x8b\x3b\x68\x3d\x7b\x0e\xd1\x7b\x0b\x2c\x55\x78\x86\x2d\xb2\x76\x95\x06\x81\x28\xe4\x0d\xea\x3e\x0b\x41\x2e\xec\x05\x1d\x7f\xcb\xf9\xd8\xaa\x47\x41\x0a\x27\x0c\x09\x07\xc3\xe9\x58\x37\xd6\x46\x68\xdc\x8d\x45\x1a\x85\x55\xa9\x1b\xa2\xb2\xf4\x16\xf9\xb4\x41\x07\x6a\x6d\xef\x13\x8c\xb7\xb8\xb8\x0f\xc4\x5c\x5f\xa3\x6c\x47\x5f\xd0\x05\xde\x34\xcd\x05\x5d\x90\x37\x7b\xf2\xfb\x9d\x3d\xc6\x89\x72\xc0\x41\x27\xb0\x40\x7c\x2f\xd8\xa3\xbd\x40\xb4\x47\x69\x2f\xa0\x3c\x91\xf5\x01\x7e\xcd\xf4\x00\xca\x93\x25\x8d\x16\xdc\x5f\x16\xf4\xc2\x9c\x92\xc3\x6e\x19\x2b\xd5\x87\x5e\x79\xee\x22\x19\xad\x18\x3e\x67\xee\xf0\x39\x73\x86\xcf\xb9\x54\x32\x31\x1e\x03\xb0\xf1\x0d\x87\xd4\x66\x86\x94\xee\x04\x44\x18\xfe\xc8\xa9\x3d\xb8\x82\x31\x14\x0f\xa7\x18\x26\x60\x3e\x09\x7c\xc0\x9d\x5d\x31\x68\xd6\x49\x81\xdb\x24\x5b\x23\x14\x14\xc5\xc6\x64\x84\x50\x84\xbf\x1c\xe7\xf7\x97\xaf\x88\x35\x7a\xb5\x58\x13\xaa\x81\xf3\xd8\x55\x6d\x62\x4a\x2e\x68\x96\x96\x08\x4e\xf1\xe7\x69\x04\x13\x29\x60\x65\x63\x06\x18\x16\x35\x2a\x91\xa4\xaa\x05\xe7\xe7\xb9\xcd\x23\x29\x50\x54\xa4\x33\x5f\x05\xb2\xb4\x44\x12\x1b\x7e\x89\xb8\xe7\xb8\x74\x4d\x29\xa0\x6d\xe5\xea\xb2\xaa\xd8\xfa\x0a\xc1\x8a\xb3\x6c\x55\x9f\x82\x1b\x1f\xb7\x95\xab\xe9\x12\xa4\x4c\x9b\xc6\x38\x76\x0e\x8c\x9a\xcb\x56\x2c\xf6\x73\x91\x69\x0f\xd9\x39\x2f\x13\xb5\x4b\xc5\x53\x15\x97\xad\xa7\x94\xf8\x62\xdd\xec\xd0\xae\xd6\x72\xdd\xd5\x6c\x66\x1a\x87\x94\x23\x1d\x1d\x51\x35\x14\x8f\x4c\xe6\x7a\x7f\xee\xbe\x3c\xcf\x1c\xa6\x11\x6d\xde\x60\x26\x71\x98\xcf\xc2\xdb\xdc\xbd\x6f\xba\x1f\x09\x17\x2d\xdc\x42\xad\x46\x5e\x24\x88\xf3\x90\x99\xdf\x0f\xaa\xb2\x53\x2d\x15\xcb\xb1\x86\x56\xe7\x94\xc6\xac\x6c\xc7\x8a\x26\x48\xa8\xef\x23\x41\x31\xcd\x59\xa2\x54\x69\xc6\xb6\x28\x5f\x74\x12\x7e\xaa\x8b\x5b\xa5\x5e\xc1\x47\xc0\xc5\x25\x5d\x02\xda\xc7\xb7\x62\x52\x2d\xb6\xeb\x3e\x7b\x67\x63\xdd\x60\xb0\x35\xce\x1f\x0b\x59\xa9\xf1\xa1\x60\x4b\x9c\x6d\x24\x78\x89\x37\xbb\x29\x53\x85\x46\xe5\xaa\xac\x21\xa0\x98\x2f\xb1\xf3\xcc\xa5\x75\x0e\x79\x3c\x45\x67\x5b\x50\x3b\xc3\x4d\x4e\xb2\xa7\xe2\x96\xa9\x55\xd8\xa6\x0b\xde\x45\x03\x6f\x51\x70\x4d\xa1\xf1\x92\x5b\x4d\x49\xdc\xc4\x64\x8b\xc6\xa1\xa8\x8a\x6c\x7e\x7d\x4d\xf1\x05\xe5\xd3\xd0\x70\x7e\x54\xa1\x47\x14\x67\xb2\x0b\xba\xa7\x73\xdc\xb4\x20\x98\x5d\x76\x36\xff\xb5\x22\xa2\x35\xd1\x2f\xd1\xfe\xe1\xa0\xfc\xa4\xd6\x2c\xc2\x30\x68\xd3\xac\xd2\x5d\xcb\xac\x57\x39\x7f\xe1\xc6\x91\xcb\x17\x32\x63\xaa\xb2\x08\xf8\x12\x2c\x2a\x41\xc8\x55\x97\x10\x79\x76\x92\x28\xb1\xc0\x14\x49\x22\xfc\x14\x41\x5d\xe4\xbb\xbc\x6e\xe2\x7c\xbb\x8c\xb8\xb1\xc2\x53\x84\x8e\x95\x9d\x22\x7a\x30\x99\x27\x29\x1d\x94\x98\x22\x6f\x50\x40\x49\x93\x74\x2a\x19\x59\x9a\x7f\x89\xef\x32\x34\x42\xda\x44\x41\x25\x85\x13\xe5\x94\x84\x2a\xe7\xa8\x48\xec\x2c\x50\xea\x67\x33\x03\x92\xfa\xed\x48\x27\xb8\xaa\x6a\x25\x18\x57\xad\x12\x8a\xde\xea\x52\x1d\x40\xd0\x43\x87\xf6\x5f\xf9\x0d\x1f\x9b\x3a\xe8\x8c\xf9\xf8\x28\x60\xc4\x7b\xd0\x6b\x77\x93\x4b\x37\x85\xe3\x3b\x3d\x7a\x9c\x9f\xe6\x7b\x54\xa5\xcd\xab\x01\x29\x7e\xf4\xba\x89\x1b\x34\x7b\xab\xa5\x11\x65\x3f\x5e\x6d\xd0\x19\xd1\x61\x5a\xcc\xa7\x9d\x28\x88\x78\xc6\x0f\x1c\x84\x58\x00\x2b\x95\x63\xb2\x0e\x30\xb1\x48\xd7\xa1\xc1\xb2\x7b\xf9\x86\x67\x50\xfb\xec\x82\xb2\xfa\x26\xd4\x73\x79\x5d\x13\x85\xd8\x7a\x94\x31\x80\xf9\x98\xaa\x27\xec\x1b\xc7\xe2\x88\x2f\xec\xd3\x11\x1c\xb3\xfa\x49\x52\xfe\x78\x42\x33\x39\x2d\x68\x50\x03\x67\xa1\xfe\xa6\x5d\xb7\x80\xae\x37\x1c\x80\xc5\x54\xac\x1e\x42\x45\xca\xa4\x2e\x57\xd2\xe5\xea\x31\x8d\xeb\x3a\xcd\xef\xcf\x30\x92\x49\xd6\x23\x5b\x33\x88\x12\x42\x16\x18\x92\xd4\x55\x4f\x8c\x9a\xb2\xda\x49\x1b\xd4\xb0\x4a\x89\xa4\xb1\xd1\x9d\xe9\x44\x6b\x47\x87\x66\x1f\x38\xcf\xe8\x74\xc8\x56\x8c\x8e\x8c\x90\x05\xa3\xa3\xae\x7a\x7c\x74\xd4\xd5\x4e\x8e\xce\xb0\x4a\xd9\x95\xfb\x38\xdc\x39\xc1\xea\x3d\x76\x95\xc2\xbd\xc3\xf3\x0c\x4f\x8f\x6d\xc5\xf8\x48\x49\x59\x30\x40\x23\x95\x4f\xec\xf9\xd5\x15\x4f\x0e\x91\xa4\x52\xc9\x18\x6d\x03\xc7\x75\xbd\xb5\x63\x04\x1a\xe7\x79\x06\x88\xa2\x5a\x31\x3a\x43\x22\x16\x0c\x8d\xaa\xda\xf1\x71\x51\x55\x39\x39\x28\x62\x75\x23\x19\x14\x56\x8d\xc8\xef\x15\xca\x3e\x1c\xd0\xe7\x15\xe7\xe3\x63\x65\x47\x7b\x43\x52\x6e\x24\x8c\xea\xc2\x7d\x09\xbf\xd9\x1c\xd9\x66\x8c\xee\x4a\x79\xa0\x23\x47\xd2\x20\xe0\xd4\x43\x9e\xa0\x2a\x4b\x17\x58\x07\xf1\xc8\xc6\x49\x52\xa1\xba\xe6\x58\x69\x41\xf1\xc1\x51\xcd\x82\xb2\xd0\xe4\x35\x85\x87\xfc\x79\x87\xf6\xf1\x63\x5a\x54\xe7\xc1\x06\xfe\xfa\xab\xba\x64\x88\xab\xb7\x19\x9f\x07\x1f\xf8\x25\x26\x28\x8b\xcf\xd4\x73\xc4\x5c\x7e\x1e\x5c\xe0\x83\x7b\x1e\x4c\x45\xd5\x9c\x09\x53\x55\x34\xc5\xb6\xc8\xce\x83\xad\x69\x66\xae\xc4\xaa\xa9\x35\x5a\x60\xfe\x99\xa9\x7c\xfa\x2c\x58\x3f\xa4\x13\x66\x89\x6a\x30\x9c\x22\x0b\x4a\x2b\x26\xc5\x02\x0c\x8a\x69\xb0\xe4\x90\x79\xc8\xf8\x8b\x76\x16\x02\xab\x2f\x29\x2b\x32\xf7\x92\xb2\x32\x76\x5e\x50\x5e\xce\xc0\x43\x57\xad\x11\xe6\x95\x00\xcf\x3b\xb0\x1f\x63\xda\x49\x0d\x64\x84\x61\xa7\x55\x4a\x15\xb3\x4e\x96\x1c\x65\xd4\xc9\xd2\xa3\x4c\x3a\xed\xcd\xa0\x62\xd0\x19\x7b\x50\x29\x73\x4e\x97\x93\x33\xe6\x74\x39\x35\x53\x4e\x96\xe5\x19\xf2\x74\xbd\x52\x33\xb6\xc5\xe1\x2e\xcd\x51\xa2\xb7\x2c\x2c\x39\xa8\x6b\xb5\xae\x95\x0b\x41\x33\x86\x73\xf4\x74\x7c\x3e\x69\xb3\x27\xf5\x0c\x62\x24\x47\xf0\x4b\x09\x99\x18\xc8\x11\x22\x46\x03\x44\xb1\x1e\x21\xc3\xc3\xcc\xc1\x14\x1c\x9c\xda\x01\x54\x96\x42\x62\xeb\x51\xb7\xd7\x23\x9f\x19\xeb\x55\xd1\xbf\xb2\xe6\x4a\xef\xf9\x33\xe1\x25\xfb\xa3\x7a\x31\x37\xa7\x2a\xe9\x01\x7b\xb0\xff\x07\x3a\x1c\x1f\xd3\x3a\xbd\x4b\xb3\xb4\x79\x69\x23\x44\x0f\xa2\x07\x4b\x4a\xb6\x21\x24\x05\x0c\xf0\x33\x43\xed\xe1\x4f\xfc\xd0\x14\xf2\x6a\xbb\x49\xc7\xbb\x53\x6c\x64\xb8\xda\xc0\x25\xff\xdf\xff\xf3\xff\x6a\x0b\xfe\xbf\x18\xcd\xa8\xd7\x46\xe3\xa4\x97\x5f\x6f\xaf\xae\x8d\x5d\x85\x10\x6c\x6c\x48\xb2\x12\x1a\x11\x8b\xa5\x1e\xde\x34\x89\x91\x02\x45\x7a\x9c\x65\xc5\x53\x1b\x32\xbf\x7f\x9d\xa0\xfc\xa5\x4d\x95\x39\xe8\xdd\xf1\xbe\x1c\x74\x0b\x8d\xe6\x29\xd0\x20\x49\x4b\xcc\xc1\xa0\x03\xe7\x6e\x63\xdb\x5d\x26\x07\x06\x49\x57\x57\x7b\xf2\x77\x88\xeb\x2f\xcb\xaf\x81\x3e\xa6\xe8\xe9\x7f\x2c\x9e\x3f\x5c\x98\x9a\xa9\xd9\xae\x66\xbb\xfc\x55\xb7\xe9\x6b\xa2\xf4\x02\x1d\x2e\xa4\x57\x0f\x19\xfa\x70\x81\x1e\x51\x5e\x24\xc9\x85\xb6\xcd\xd2\x52\x7c\x47\x2f\xcd\xb9\x86\xf7\x31\xc0\x7f\x6b\xb6\x11\x38\x5a\x60\xf8\x96\x66\x69\x96\xbd\xb5\xf0\xa3\x6b\x38\x91\xe6\x6b\x81\xe1\x69\x96\x85\xff\xa9\x23\xc3\x0e\x74\xc7\xb0\x2c\xcd\xb2\xf4\xc0\xf0\xb6\x3a\x06\xd4\x31\xa0\xee\xe3\x17\x3a\x79\xff\x15\x23\xb7\x82\xad\x6e\x1b\x81\xaf\x99\xba\xa7\xdb\x86\xed\xea\x9e\xee\xd5\xe4\x87\xe6\xe1\xff\x35\xfc\xa0\xe1\x07\xf2\x03\xbf\xfb\x7a\x30\xf5\x10\xe3\xf5\x71\x41\x47\xb3\x0c\xc7\xd5\x1d\xcd\xa9\xf1\x0f\xcd\x21\x7f\x74\xf2\xa0\x93\x1f\x3a\xfe\xe1\x7c\x6d\xbb\x8c\x5e\x1e\x64\x6e\xde\x7d\x1f\x94\x3f\xe1\xa0\xa8\x35\x05\x26\xee\x2e\x2b\xf5\x59\xef\xc3\x3e\x8f\xee\xe0\x18\xec\x4c\x09\x1b\xa5\x01\xb8\xc9\x15\x4b\xb8\xfc\x27\x84\xa7\xbb\x8b\x6b\x04\xb6\x9b\xc9\xea\xfb\x20\x52\xff\x2b\xd6\xba\xff\x97\xf6\xb3\x76\xf1\x3a\x8b\xb0\xae\xf8\x7f\x10\x08\x0e\xc3\x49\x09\x2a\xba\x84\x06\x74\xd5\x18\xc7\x76\xce\x64\xf3\xc3\x28\x09\x7d\x1a\xb7\x26\x31\x76\x45\xc6\xa6\xbc\x54\xa5\x2d\x12\x93\x67\x72\xac\x41\x51\x49\x56\x1d\x19\x5e\xb8\x56\x03\x57\x69\xa1\x3d\x6d\x50\x74\x92\x49\xe5\xb2\xcd\x1a\x50\x89\x81\xea\xe5\xc0\x5c\x42\x95\xde\xbf\x76\x1c\xf5\x58\x64\x19\x88\x35\x22\x8b\x08\x63\xd9\x82\x5f\xc9\x18\x24\x1d\x5e\xaa\x90\x1d\x50\x13\x43\x58\x2d\xd0\xc8\xc4\x06\x26\x68\x17\x3f\x64\xcd\x9c\x22\x6a\xc2\xe9\xed\x5e\xee\xf9\xb5\xd9\x4b\xf8\x8e\x8f\xe4\xd5\x45\x04\xf0\xdb\x2f\xfc\xca\x8c\x47\x89\x86\x6d\x43\x07\x9a\x66\xc5\x86\x1b\xc7\xc3\x1c\x0e\xfc\xed\x03\xfc\x8a\x91\x2a\xff\x3c\xa0\x24\x8d\xb5\x77\x7d\x6c\x2f\xd7\x36\xcb\xe7\xcb\x63\xdb\x62\xc2\x3d\xdd\x8d\xe2\xa6\x22\x6a\x74\x7f\xbd\xf2\x9d\x7d\x39\x9d\x92\xe7\x07\xf6\x6e\x72\x4d\xb0\x88\x3b\x96\x61\x3a\x3c\x76\xa6\x72\x9a\xcd\xe2\xfa\x12\x06\x2f\xc3\x8e\xaf\xea\x10\x6b\x47\x59\x52\x79\x2e\xb1\xf1\xec\x50\x9b\x24\x67\x95\x1e\x90\x68\xed\xf7\xd0\x91\x4c\x8e\x6d\xfc\xae\x9e\xb1\x9b\x6c\x8b\xb6\x45\x64\xd7\x4a\xce\xe8\x9b\xdc\x56\xc7\xee\x90\x69\xcd\x73\x5d\xfe\x1d\x59\x68\xb6\x41\x7b\xb4\x24\xe9\x11\x27\x6f\x76\x5f\x49\xb8\x61\x03\x8f\xdc\xf5\x7c\x93\x23\x49\x72\x8d\xb8\x0d\xba\xd7\xd1\xaa\x84\xe9\x57\xac\xeb\x0b\x5e\x26\x1b\x0e\x3a\x08\xc4\xbe\x4a\xc2\x02\xf6\xdd\xdb\x45\x8d\xb6\x85\x90\xf7\xe4\x99\xbb\xfe\x82\x05\xfe\x70\x42\xfb\x1e\x99\xd0\xb3\x6a\xb1\x42\xbe\x16\xf2\xcc\xd6\x12\x96\xcf\xaf\x32\x92\x49\x24\x43\x75\x2e\x6e\x5e\xac\x4a\xe4\x14\x1b\x63\xc8\x16\xae\xe4\x1a\x1e\x3a\xc8\x2a\x95\x86\x54\x2c\x07\xc9\x17\x61\x23\x23\x25\x99\x4a\xa0\x62\x07\xd1\x18\x84\xb0\x41\x4a\xe4\x8a\x90\xf7\x1b\x3e\xe3\x99\xa4\xf8\x91\x0f\x14\x4d\x97\x2a\x8b\xb8\x42\x6e\xf8\x34\x82\xd2\x3c\x39\x92\xd8\xd3\xe2\x84\x11\x67\x8a\x38\x45\x60\x6e\xb4\x32\x10\x73\x91\x06\xf9\x24\xe0\x97\xe5\x83\x9d\x81\x38\x84\x8c\xd0\x8f\x07\x45\xf4\x0c\xa1\x8e\x0a\x33\x4b\xed\xe2\xad\x6b\xda\xaf\xdd\xd9\xf9\xcc\x62\xed\x21\xba\x84\x99\x55\x19\x50\xb9\xf4\x1c\x32\x26\xc8\x48\x29\xca\x03\x52\x96\xa2\xa1\xde\xfa\xac\x6e\x52\x4c\x14\x4a\x48\x3e\x15\xc9\x59\x77\x56\xbd\x49\x23\x66\x36\x95\xa1\xba\x4d\xd2\x47\x4e\xfb\xc0\x43\x4c\x83\x08\x90\x9f\x9a\x45\xe2\x77\xf0\x4f\x4c\xd6\x18\x1a\x2e\xd4\xf6\xcb\xe7\xcb\x75\x1c\x35\x2d\x6d\x07\x41\xb6\x69\x3c\x02\x21\xca\x76\xfb\x56\x0c\xb3\x4d\x2e\xc9\xdc\xa1\xe6\x09\xa1\x5c\xd1\xa3\xac\x24\x23\xa1\xe9\xa4\x60\xb7\x42\x06\x13\x76\x97\xd3\x29\xe6\x75\x13\x37\xe9\x76\xb0\x46\xc8\x47\xb2\xd3\x89\xe8\x68\x62\xad\x88\x84\xde\xa2\xb9\x6a\x77\x29\xca\x92\x1a\x35\x94\x87\x3c\x05\x0b\x25\x89\x2c\xed\xe8\x34\xf7\x0c\x39\xc5\x70\x14\x7c\x87\x25\x18\x1b\xd7\x55\x73\x61\xe6\xdb\xf4\x2f\x4e\x5f\x2c\x2b\xa4\x93\x95\x72\x16\x51\x65\x85\xb4\x6d\x91\xa0\xe3\x53\x51\x25\x64\xe4\xef\x2a\x14\x7f\xd1\xf1\xb3\xb4\x04\x77\xb3\x4a\xb5\x27\xc2\xd2\x1f\x82\xc8\x59\xe8\xb0\x68\x81\xeb\xdb\x09\xbb\x82\x08\xff\x05\xbf\x14\xb2\x40\xae\xd5\x84\x6a\xc1\x21\x19\xf6\x29\x21\x91\xb0\xb9\x9a\x69\x31\x21\x5b\xb3\x39\xb2\xc0\x76\x24\xb2\x4a\xff\xa8\x8a\x2f\x1a\x28\x45\x8b\xaf\x18\x7c\x48\x13\xd6\x9a\xb1\x38\xbb\x3f\xec\x76\xbb\x41\x05\xf4\xf6\x57\x3b\xdd\xe3\xb2\x44\x71\x15\xe7\x5b\x3e\xd8\x11\xf3\xbb\xd5\x5f\xfa\x80\xb4\x32\x9b\xea\x51\x48\xd8\x2b\xad\x75\x68\x8e\x25\xb6\x52\x46\x9d\x2c\x1f\x1a\x92\x86\x61\x0f\x7b\x6c\x71\xcd\x5f\x88\xf6\x50\x7c\x3d\x27\xb6\xfa\xdc\x04\x2e\x40\x44\x0c\x13\xbc\x60\x6c\xf3\x2b\x81\xb7\xb5\x7c\x9c\xa5\x99\x6e\x25\x4b\x8b\x11\xa0\xc3\x65\x97\xf1\xda\x34\x7f\xec\x94\x90\xb0\x0b\x24\x2a\x1d\x77\xca\xe9\xb8\x3c\x57\x9c\x4d\xc4\x2e\x91\x4f\x32\x5c\xc2\xec\xc1\xea\x4e\x87\x12\xff\x96\xc7\xae\xf4\xcc\x1f\x15\x71\xcb\x43\x36\xb3\x29\xa7\xc1\x72\x5f\x5e\x99\x44\xe6\xd7\x6c\xec\xcc\x5d\x51\x1d\x54\xd9\xc0\xe4\x0a\xe0\xba\xb5\xf9\x8c\x2b\x6f\x37\x6a\x2e\x09\xd2\xbb\x91\xdb\x2b\x37\xfc\x6a\xa4\x43\xac\x30\x7e\xdf\x1e\x6f\x99\x07\xd8\x76\x31\xdd\x24\xf4\x0a\x6c\xfb\x3b\xd1\xdf\x2d\xf2\x7e\x40\x44\x7f\x5f\x4e\xa3\x07\x16\x71\x92\x16\xf2\x04\xfb\x6c\xdf\x8f\x42\x1f\x15\xd2\x89\x1d\xcd\xd1\x84\xf6\x5c\x4d\x0a\x40\x51\x1a\x4b\x93\x11\xf1\xd3\xb6\x67\x25\xe6\x77\x9b\x5c\x95\xa9\x72\xf0\xe2\xf6\x4a\x9d\xad\x8b\x6d\x13\xc9\xb8\x35\xe8\xbc\xf1\xda\x54\xa5\x64\x44\x48\x24\x86\x7c\xb2\x68\xc6\x63\x9c\x3d\x20\xbd\x75\x82\x66\xc3\xed\x0f\xc7\x52\x09\x2b\xd4\x28\x69\xb2\x50\x56\x9d\x9e\x7c\xaa\x56\x75\x76\x74\x81\x06\x58\x38\x19\x02\xc8\xef\x5a\x52\x01\xfd\x32\xb0\x8c\xcc\x9a\xfa\xbc\x85\x00\x36\xc2\x92\x5a\x87\x96\x0c\x35\x1d\x43\xd8\x41\x38\x2d\xb6\x8e\xf7\xc4\xdc\x9b\x17\x4d\xba\x45\x43\xb4\xfc\x67\xee\xc8\x1b\xd2\xf6\xb2\xd4\xb6\x3a\xf4\x90\xb6\x4e\xbb\x1e\xec\x82\xcc\x7e\x17\x64\x72\xbb\x20\x93\xdf\x05\xc1\x99\xf3\x12\xf9\xc4\xd6\x54\x54\x29\x96\x93\xfb\xa2\x4a\xbf\x16\x79\x13\x67\x9c\xc4\x4d\xd2\x8a\x26\x82\xac\xd0\x23\xaa\x6a\xd4\x8b\x5d\xe6\x53\xf1\xa4\xb7\x9f\x47\x3e\x31\xc2\x57\x90\xb0\xfc\x82\xb3\xa0\x25\x7d\xe7\x31\xc6\x26\x08\x18\xbd\xae\x67\x3a\x7c\xac\x75\x77\xc8\x33\x2b\x46\x8a\x5d\x7a\x97\x52\xc5\x87\x8c\x64\x31\xc1\xa4\x18\x2e\x2d\x91\x35\x58\x5a\x66\x35\x4c\xcd\x9c\x0b\xfb\x63\x7a\xff\x3e\x9c\xdb\x92\xdd\x51\x64\x46\x42\x3b\x86\x1a\xc8\xe4\xde\xfd\xdc\xd3\x90\xea\x6f\xec\xd3\x80\x9b\xcf\x33\xba\xe6\xeb\x22\xde\x1d\xac\xd2\x83\xf4\x23\x5a\xab\xe2\x0e\x4d\x8c\x27\x55\x24\xcf\x03\x7d\x1a\xca\x91\x14\xae\xd7\xe7\xc6\x0c\xb7\xcb\xdf\x00\x2f\x9c\xad\xbd\xbf\x7a\xcb\x63\x41\xc5\xbe\x56\xa9\x6e\x9e\xc6\x50\x6b\x96\xf1\xb3\xb0\xd6\x88\x84\xa1\xe1\x99\x1f\xd1\x8d\x45\x66\xfe\x3d\x84\x21\x7d\x7d\x35\x2a\x14\x27\x24\x62\x7c\x91\xa0\x43\x5a\x55\x45\xa5\x19\x1f\x8b\x04\xfd\x02\xbf\x75\xc2\xaf\xf5\xb9\x87\x7d\xec\xbc\x6f\x55\xeb\x4f\x24\x90\xa4\x18\x80\xed\x28\x9f\xfb\xf8\x24\xb4\xe7\x20\xea\x7c\x0d\x63\xf6\xd6\xe7\xe8\x71\xea\x72\xc6\x26\x0b\x71\x45\xf5\xb3\x2c\x4a\x3c\xbd\x69\xd2\x70\x89\xce\xc9\x03\xb4\x24\x3a\x1e\xbb\x57\xef\xf2\x41\xb6\x09\xa9\x1c\xc9\x0e\xed\x80\xf2\x87\xb4\x41\x87\xcf\xaa\x9d\x59\x07\x70\x1c\xec\x96\x45\x93\x9a\xb0\x6d\x1e\x7c\x16\xf7\xcf\x12\x93\x5c\x4f\x1e\x6b\x96\x18\xd2\xc6\x19\x2d\xb8\xf5\x3e\x2a\x9f\xfb\xc4\x01\xae\x24\x80\xad\xac\x9f\x71\x23\x45\x87\x94\x6e\x4d\x20\xa3\x46\x83\x0a\xa9\x87\x62\x36\x0e\xe1\xf2\x97\x3a\x75\x73\x53\x1c\x8a\xfb\x2a\x2e\xf7\x2f\x9a\xd1\x43\x1d\x77\x69\x96\xf5\x9b\x35\x16\x28\x7e\x4e\x6b\xf2\x19\xac\x88\x24\x66\x7e\x67\x7b\x1a\x44\xfe\x77\x35\x57\xa8\x04\x96\x6e\x25\x06\x1e\x18\x96\xe2\x63\x0b\x41\x76\xe1\x1b\x42\x5b\x84\x6c\xcb\x8b\x78\xf0\x2c\xcd\x51\x0d\x99\x1d\xba\x32\xe3\x60\xd4\x7b\x44\xde\x08\xaa\x8e\x83\xeb\x00\x53\xba\x49\xb7\x5f\xf8\x3a\x64\x94\x03\x54\x83\x9e\x1b\x36\x70\x6e\x18\x78\x15\x3a\xd0\xc4\xc5\xf9\x76\x5f\x54\x7c\x40\x73\x9a\xb1\xc4\xd8\x65\x71\xbd\xd7\x0f\xa8\xae\xe3\x7b\xb4\x6e\xef\xa9\x9e\xa1\xf6\x59\x32\xae\xb6\x31\xfa\x34\xcb\xfb\x51\x20\x58\x2b\x07\x47\xad\x12\x7b\x36\x58\xea\x5c\xb9\xe1\xaf\x15\x5c\xed\xa1\xc1\x2b\xb3\xea\x1d\x99\x54\x78\x96\x37\xc8\x45\x6f\xf6\x56\x45\x2e\x6a\x7e\x7b\x12\x69\xf2\xd8\xf4\x7a\x5b\x15\x59\x36\x8c\x4c\xce\x4a\x0c\x06\x3c\x4b\xf3\x66\x24\x99\xdf\x2e\xda\x45\xbb\x58\x62\xd6\x8f\x5d\xfc\x47\xe8\x06\xb3\x1d\x77\xdb\xc2\x7f\xc8\xb9\xfc\x2e\x3e\xa4\xd9\xcb\xcd\xa1\xc8\x0b\xb0\x44\x31\x8e\x2f\x96\xc3\xa4\x05\x0c\x68\x9e\xae\x08\x37\x68\x7b\xd0\x6b\x7d\x1f\xd7\xfb\x94\xed\xa9\xfe\x34\x44\x22\x00\x4c\x93\xb5\x18\xb6\x47\xbc\xbb\xc4\x4e\x2c\xe6\x3d\x7b\x60\x00\xde\x1d\xed\x42\x65\xb8\x6c\xad\x9c\x5a\x72\xff\x00\x69\x1a\x5b\x11\x14\x84\xa1\x1d\x99\x12\x0a\xec\xd8\xde\x39\x3e\x5b\x85\x12\x25\xd1\x74\xd8\x43\x69\x72\x00\xaf\x35\xfb\x34\xd7\x7e\xd8\x85\xbb\x70\x67\x2a\x4b\x63\xc2\xf3\x87\xc3\x5d\x6f\x86\xf7\x93\x30\x0e\x43\x45\xbf\xe9\xa0\x4e\xa3\x44\x4b\xd2\x47\x8e\x55\x60\x1d\x44\x09\x33\xee\x78\xe8\x5c\x3b\x74\x46\xab\xa6\x27\x15\xa4\x38\xa4\xfa\x1a\x01\xbe\x25\xab\xce\xd2\x12\xd2\x62\xcb\x09\x5d\x44\xe3\x72\xf2\x4e\xa0\xec\x4f\xd0\x85\xc3\xc4\x96\xd6\x25\x47\x35\x38\xd4\x6e\x0f\xfa\xb6\x38\x1c\x50\xde\xb4\xcc\x96\x24\xc8\x41\x81\x14\xb2\x6e\xaa\x34\xbf\xbf\x56\x7f\xd2\xed\x6e\x25\x4f\x92\xbb\xd8\x91\x62\xe1\x79\x3b\x49\x5c\xe4\x85\x52\xc0\xc7\xb8\x4a\xe3\xbb\x0c\x49\x2b\x6c\x3f\xf6\x55\x46\x28\x74\xb7\x9e\x14\x53\x82\x76\x33\x08\x2b\x4a\x54\xc5\x4d\xd1\x91\x86\x1c\xfc\x47\x0a\xfa\x05\xbd\x3c\x15\x55\x72\x14\x5d\x54\x86\x90\x71\x53\x1c\x66\xb4\xf5\x80\x9a\x58\xda\xce\x26\xbe\x9f\x41\x7a\xdc\x34\x55\x7a\xf7\xd0\xc8\xfb\xea\xbf\x3f\xc4\x59\xba\x4b\xfb\x4e\x8f\x76\xdb\xd8\xf3\xa5\x98\xca\x0a\x77\x43\xf3\x32\xa3\x57\xef\x1e\xd2\xac\x49\xf3\xf1\xe1\x71\x46\xea\x64\x19\x9b\x44\xa6\x23\x0e\x7c\xbd\x62\xc7\x4e\x3c\xcb\xb4\x6c\x4b\x3d\xf1\x0e\x71\xb3\xdd\xa7\xf9\xfd\x5d\x15\x6f\xbf\xa0\xe6\xa8\x8c\x20\xb0\xe9\x37\xee\xec\xb2\x29\xdd\xbe\x0a\x2d\x13\xe7\xc8\x9c\x32\xec\xc4\x59\x06\xdf\xb3\x36\x8a\xf1\x9f\xf9\xf5\xf1\x53\x2c\x76\xe2\xed\xdd\x76\x7e\x69\x91\x05\xe0\x00\x62\x6e\xe1\xe1\xbc\xf4\xb7\xc1\x5d\x08\x31\x43\x13\xa4\xa3\x24\xc5\x33\x8c\x3f\x3a\x6e\x15\x10\xac\x0d\x75\xfe\xce\xf4\xae\x98\xe4\xb8\x96\x41\xa4\xd1\x84\xc5\x65\xf1\xd4\x6d\xfd\xf4\xa6\x4a\xef\xef\x3b\x1f\x2c\x9b\xf8\xe3\x32\x27\xc0\x5d\xca\x70\xd1\x27\x9e\xd2\x21\x5b\xfd\x4d\xd3\x64\xf8\x66\xc3\x2e\xed\xaa\x74\xc3\x26\x47\xa9\x3a\x83\x79\xeb\xaf\xb5\x61\x14\xa0\xd6\x73\xd3\x93\xba\x52\x10\x62\xba\x6c\xdb\xbc\x99\x81\xad\xf4\xb6\x14\x6f\x7a\x81\x8f\x3a\xa8\x0a\x70\x0b\x61\x5b\xe4\xbb\xb4\x22\x19\xe9\x0c\xfa\x90\xe6\xf7\x32\x5d\x71\xb7\x7b\x95\x16\xd3\x4a\xde\x5b\x60\x68\x6b\x96\xe4\xb6\x12\x5c\xd5\x98\x79\x28\xad\xe3\xc8\x0e\xdf\xc9\xe7\xda\x83\xd4\x35\xb0\x8b\x90\xa4\xad\xc1\x9b\xfc\xba\xcd\x5b\x43\x7a\xae\x49\x6e\x27\x3b\x4f\xe5\x9c\x64\xaa\x7d\xe8\xc7\x5a\xcd\x64\x2f\xd5\xa9\x6b\x93\x30\xe4\xaa\x71\xe1\x7b\xd9\x42\x87\x57\x3e\xbd\xa4\x06\x6d\x3a\xb2\x4e\xbc\x2e\x28\xe8\xf1\x43\xb3\xd7\xe1\x08\xb6\x24\x87\x6e\x08\xcf\xf7\x4b\x22\x53\xfb\xac\x75\x0f\x65\x89\xaa\x6d\x5c\x23\xba\x47\x64\x7b\x50\x32\x6f\x15\x58\x89\x64\x95\x72\x9c\xe8\xac\x4d\xf3\x71\xf7\x86\x22\x06\x29\x9d\xee\x0e\xe3\xed\x0c\x12\x45\xb3\x79\x38\x72\x8e\x21\x78\xc0\x79\xe8\xc0\xae\x05\x3d\x30\x95\x2f\x77\x71\x9d\x6e\xf5\xa4\x2a\xca\xa4\x78\xca\x5b\x09\x73\xcd\x00\x52\x43\x06\xeb\xd2\xc5\x60\xe9\xf2\x3f\x76\x1b\x51\x72\x73\x55\xd1\x25\xbd\x8f\xff\xc8\xe5\x5c\x56\x5e\x0c\x59\x8e\x1c\x69\x74\x4e\x29\xad\xcc\xd3\xad\xd7\x1f\xb2\x82\xb0\x12\xe4\x6f\x4d\xd2\x47\x6d\x57\x14\x0d\xaa\xda\x7b\xcd\x83\xfc\xa1\x96\xcd\xd6\xd0\xed\xd0\x49\x8a\xd7\xf2\x99\x54\xa5\x3b\xe5\xb3\x12\xf5\xb1\x93\xac\x83\x54\xb3\x92\x1d\x6f\xbf\x5b\xb7\x7d\x99\xfc\x63\x6e\x58\x0f\x6b\xbc\x65\xfe\x3f\x0a\xc8\xcd\x57\x7a\x7a\x4c\xba\xf9\xba\x7d\x4a\xf3\x5d\xd1\x3d\x0c\x22\x12\x76\x5f\xe8\xc1\x7d\x3b\x86\x16\x3a\x68\xe6\xab\x51\xa4\xc9\x96\xae\x3c\xda\xef\x90\xf8\xf0\xbf\x7c\xd0\xe1\x65\x59\x15\x8f\x69\x82\xaa\xcf\xa2\x27\x9e\xdd\xef\xfa\xe1\xf7\xf8\x19\x98\xc9\x1d\x70\x9a\xb2\x03\x3d\x30\x13\xb0\x84\x8c\x2c\x8b\xd7\x1c\x60\x96\x4a\xa4\xc4\x5c\x54\x1c\xb7\xbf\x61\x62\xff\xe1\xf7\x32\x6e\xf6\x9d\xf5\x15\xf8\x01\x98\x53\x4f\x1e\xa8\xb6\x67\x58\xf5\x46\xf5\x5e\x52\xae\x49\x0f\x90\xd8\xf4\x21\x27\x07\xe9\x34\xdd\xea\x34\x84\x18\x84\x78\x2e\xa1\xad\x8e\x75\x43\xac\x72\x9b\x91\x4f\x43\xdb\x23\x5d\x68\x79\xc3\xdf\xe6\x11\x6d\x9b\xa2\xd2\xd1\x6e\x87\xb6\xb0\x6a\xe8\xf5\x36\xce\x20\x21\x29\x00\xbe\x1a\x44\xc7\x1e\xd0\xf8\x7b\x9a\x5c\x7d\xb8\xb8\xb9\xf8\xac\xe8\xe7\xce\x76\xec\x9d\x9a\xff\x5f\x8b\xd7\xe7\xf4\x97\x96\x5d\x94\xaa\x5f\xcc\xb5\xcc\x4a\x7c\x59\xc3\x55\x59\xee\xe1\x1b\x6f\x8a\x6d\x4d\xa1\xca\xe6\x2b\xb3\xee\x8f\x65\xd1\xaf\x87\x97\x53\x46\x7c\x70\x55\xd7\x69\x28\x6f\xea\xe8\x11\xe5\x4d\x4d\x2d\x57\xab\xc7\xb1\xa6\xc9\xec\x69\xf0\x82\x15\xa3\x39\x85\x61\xee\x98\x72\x78\x8e\x42\x2b\xe3\x2c\x1b\x1b\x8d\xdb\x3e\x28\xc3\x38\x91\x52\x08\x91\x82\xdb\x2b\xb5\x66\xd4\xad\x7c\xec\x7a\xda\x5e\x10\x7c\x22\x8b\x80\x6b\x8e\x5d\x12\xe4\xda\xd9\x3a\x97\xcd\xe9\x5b\x35\xac\xb4\x0b\xdb\x85\x9f\x0a\x75\x48\x12\xde\xd9\x4f\xf1\x03\x73\xd5\x74\x26\xb5\x1a\x3a\xcc\xa2\x54\x0e\x27\xa5\x52\x43\x07\xb1\xb3\x41\x36\x9e\x70\xb3\xf5\x2d\x97\xae\x51\xd9\x4f\x3b\x54\x13\xa7\xae\xc6\x3a\x00\x4a\x97\x86\x79\x25\x15\xf1\x01\xd4\x0b\x00\xe8\xa0\x58\xbc\x5d\x52\xf9\xd6\xa5\xfc\x90\x3b\x3e\x08\x8e\xc7\xed\x7d\xcd\x31\x29\x4e\x86\x92\x5e\xec\xde\x17\x55\x73\xa9\x25\xc9\x51\xdc\xf5\x4b\x7c\x5b\x61\xd0\x3b\x38\x94\x65\x69\x59\xa7\xf5\x8c\xcb\xb5\xe3\xab\x8a\x10\xa5\x65\xe4\x76\x2d\x15\xa7\xc3\x00\x32\xe3\x0d\x36\xc0\x30\xa5\x13\xfc\x75\x7b\x50\x3a\x8c\x58\xf0\xf3\x44\x38\x19\x8a\xe7\xbf\x3f\xa0\xea\xa5\x8c\xab\xf8\x50\x0f\x68\xee\x70\xfd\x6f\x12\x5c\xdb\xb4\xda\x66\xed\x29\x60\xa7\x34\x48\x0f\x2b\xc1\xe0\x33\xa0\xa5\x3d\x47\xea\x76\x02\xbb\xf4\x19\x25\xdd\xce\x62\xa8\x1c\x0c\xef\x27\xfd\xeb\x7d\xd2\x87\xed\xaa\x1f\x25\x3b\xf6\xf3\xaf\xe4\xdd\xfd\x22\xb8\x42\xf5\xe3\xa6\xdd\xad\x8e\x69\xce\xb3\xd6\xda\xb9\xcb\xa9\xb8\x5c\xaa\x0e\x5c\xad\x8d\x18\x3f\x60\x84\x40\x8d\xbd\xb9\xa6\xa4\x70\x0a\xaa\x23\x91\x03\x1c\xa5\xf1\x64\x46\xa2\x8e\xb8\x6d\xa4\x12\x85\x1b\x2e\x5d\x3e\x24\x5e\xb8\x24\x6b\xb2\xe8\x80\x4b\xdf\xf2\x8c\x99\xa4\x35\xb5\xce\x2b\x78\x33\x06\x39\xc3\xde\x58\x99\x16\x6b\xd9\xb8\x58\x93\x7e\xe7\xb5\x61\x36\x65\x6d\x6f\x69\x1a\x15\x42\x2d\x0b\x41\x2e\xb1\x6b\x36\xb7\x89\x96\xa5\x64\xf3\x7b\xf5\x41\xcf\xd2\xfc\xcb\xe7\xdb\x56\x9d\x60\xb9\xc9\x1b\xe5\xa6\x33\xac\xb6\xc2\x45\x5e\x53\x5e\x9f\xb8\x1a\x91\x85\x08\x77\xc8\x2a\x8f\xbb\x05\x35\x34\x83\x6b\xff\xda\x85\xd4\xc8\x35\x73\x18\x38\xc3\xa8\x70\x2d\x7e\x56\x74\xb2\x37\x68\x31\xbf\xa2\x4a\xaf\xcf\x92\x4b\x62\x6b\x96\xe5\x2e\x22\x87\x16\x4e\xf3\x92\x16\x0b\x2e\x78\xd3\xb3\x6a\x9d\xfb\xca\xf4\x8d\x66\x66\x6c\x66\x4c\x02\x2d\x61\x1d\x71\xb8\xf3\x08\x78\x13\x9a\x3f\x6a\x61\xef\x09\x3d\x48\x4e\xde\x1e\x68\xd0\x55\xde\x61\xec\x4d\x8a\x29\xc1\xd5\x5e\xbc\x59\x37\x40\x48\x4a\xd0\xcc\xe1\x36\xeb\xac\xcd\xa8\x56\xf4\x99\x0b\x25\x01\x34\xa4\x26\x62\x75\x54\x0d\xbc\x91\xe1\x3c\xe0\xc8\xed\xe7\x53\x84\x8e\xc4\xd4\x3d\x82\xae\x0f\x22\x3a\x8e\x76\x2c\x87\x43\xaf\x79\x53\xcb\x00\xf1\x9a\x21\x5b\x4d\xbb\x37\x0d\x50\xad\x6e\x68\x1d\xee\x17\x52\xd2\x2d\xba\x47\x7d\x9c\x98\x7b\x8b\x20\x47\xbc\x8e\x8b\x2c\xc6\x57\xc9\x9a\xe0\xa2\x34\xcf\x50\x33\xa6\x0f\x51\x88\xa3\x0c\x35\x63\xad\xb6\x24\x95\x88\x28\xa4\xd7\x2d\xe1\x3a\x29\xfc\xa5\x3b\xf6\x8f\xda\x4f\x9a\x7d\xa9\xbd\xd7\xac\x1f\x35\x5d\x73\xca\xe7\xcb\x69\xda\x8f\xa4\x5f\x00\x05\xc6\xa0\x93\xc2\x01\x14\xe6\x72\x7a\x31\x0f\x60\x73\xfe\x53\x6b\x26\x1c\xed\xdd\x5e\x44\x1a\x81\xab\xb3\xc2\x73\x65\x14\x31\xe7\x06\x66\x7c\x23\x44\x07\xd9\x9e\xf1\x6e\x77\xb7\xdb\x72\x18\x6f\xaf\xda\x93\x9b\x80\xb3\xfd\x93\x03\x12\x4e\xc5\x00\xdf\x74\x0e\x80\xdd\xd5\x4e\xb5\x4c\xb8\x66\x0a\x4b\xd0\xb0\xcc\xe0\x5e\xd9\x66\x78\x54\xc4\xd3\x2f\xc9\x9c\xfe\xed\xaf\xda\x72\x54\x7b\xe8\xc0\x1d\xb4\x18\x3e\x1e\x0c\xc9\x51\xd2\x46\x76\xbf\x52\x6c\xdd\x6d\x96\xde\x5e\x5d\x4b\x5e\xc2\x78\xdc\x9e\x3b\xd7\xed\x19\x8e\x6a\xc5\x39\x79\x43\x1c\x17\x38\xfe\xf6\xf0\x3e\xcc\x84\xcb\xe4\xc3\xd3\xcb\x69\x66\x92\xdc\x39\x96\x94\xe9\x64\x78\xbf\x98\xdb\x30\x18\x8a\xd3\x34\xa7\xf3\x54\xc0\x52\x4c\x76\xc8\x33\x1c\x85\x7e\x3d\x19\x1f\x21\x59\xe2\x70\x7d\x10\x09\x10\x78\x87\xf1\x01\x8e\xd0\xe1\x55\x16\xb5\x30\x61\xfb\x54\x08\xd8\xd4\x9a\x3c\x27\x0b\xc2\xd8\x74\x11\xc3\x66\x00\xe3\xff\xe7\x01\x12\x59\x21\x77\x63\x58\x42\x16\xe7\x81\x44\x2d\xed\x2a\xd7\x8b\x6e\x09\x93\x7a\x09\xb7\x72\x07\x4e\x38\x89\x27\x44\x7f\x73\x92\x0b\x7f\x60\xe2\x45\x66\x22\x1c\xe5\x50\xe7\x98\xdf\x2d\xf2\x1e\xbc\x6d\xa3\x4d\xf2\x76\x74\x2e\xd0\x0d\x17\xeb\x20\x6c\x03\x40\xce\xaa\x94\x86\x36\x56\xd7\xcc\x5f\x99\xe9\x9d\x55\x14\x74\x12\x76\xb5\x15\x34\x54\x4c\x04\x6f\xdc\x92\x4b\xad\x49\x8e\x9c\xa3\xb5\xd2\x34\x05\xe8\xf4\x2d\xca\xb2\xd9\x98\x99\x20\x41\x6a\xba\xe5\x1c\x4a\xe7\xb6\xb5\xa0\x1d\xb7\xfc\xc5\x71\x21\x40\xd1\xf4\x6c\x15\x23\x4a\x32\x7e\x04\xb3\x28\x5f\x70\xcf\x51\x9e\xf3\x15\x02\x08\x79\xe5\xb3\xa6\x07\xc2\x0d\x3b\x33\xbc\xbc\x36\x35\xcb\xa2\x51\x3e\x34\x2c\x10\x47\x53\xc3\x9e\x86\x6a\x68\x2d\x90\xf0\x05\xd9\x25\xc0\x5c\xa5\xba\xb2\x74\xde\xbe\x27\xf3\x96\x57\x9e\x89\x24\x18\x1c\xbf\x6d\x58\x63\xe0\x4c\x71\x24\x98\x0d\x44\xd1\xb3\xcd\x50\x5c\xdd\xdc\x15\xcd\x7e\x1e\xf7\x81\x77\x84\x64\xaa\xb3\x31\x19\xfd\x8e\xb8\xa4\x38\xe8\x15\xda\xbe\x6c\x33\xce\xbf\x49\x90\x3d\x1c\x94\xd6\x54\xeb\x6c\x0b\x72\x5c\xb7\x57\x13\xd7\x9e\x4d\xee\xda\x33\x7d\x12\x8e\x15\xe4\xb8\xef\x8a\xe4\x65\xec\x46\x05\x08\x3b\x3b\xe2\xe2\xb7\x0c\xa6\x0c\x8f\x33\x49\x84\x8b\xd2\xf4\x0c\x43\x7c\xa1\x28\x7c\x7b\x35\x88\xe5\x26\x03\xdc\xc6\x25\x1e\x86\x3f\x48\x0b\x60\xf7\x16\x70\x57\xfb\xa9\xcb\x9a\x2c\x10\x2b\xab\xcc\x5c\xcf\x84\xfb\xa3\xd5\xd4\x7b\xae\xc7\x1b\x2b\x75\x35\xce\xcc\x6a\x9c\xe9\x6a\x9c\x91\x6a\xdc\x99\xd5\xb8\xd3\xd5\xb8\x23\xd5\x78\x33\xab\xf1\xa6\xab\xf1\x2e\xe5\xe1\xa3\xe7\x8c\xd3\xb2\x32\x92\xea\x75\xcd\x67\x34\x8c\x09\x6c\xb2\x21\x5c\x56\x86\xa7\xc0\x03\x02\x9c\xf9\x04\xc8\x06\x77\x59\x19\x9e\x00\xc7\x11\x75\xac\x09\x64\xb2\x61\x5f\x56\x86\x27\xc0\xf6\xc0\x9a\xe0\x61\x02\xf8\xbb\xb3\xc4\xf3\xac\x7f\x46\x49\xda\x68\x12\x87\xcd\x2e\x28\x32\x1b\x4b\x62\x06\x2a\xb8\xa8\x39\x17\x03\xae\xf6\x2c\xa4\x48\x10\xf5\x84\x18\x4d\xf1\x05\xb1\x01\xa3\x79\x54\xad\x7d\x08\xac\x96\x27\x74\x56\x8f\x72\x45\x3f\x29\x0b\x2f\xe8\xa2\x25\x38\xd4\xbd\xc3\x44\xa6\x96\x6c\x1b\x5c\xcc\xd3\xb2\x80\xdd\x7d\xa0\x12\x53\x12\x94\x40\x12\x13\x9b\xa1\x80\x0d\xc4\xcd\x8b\x12\xd7\xb0\x43\x2f\xc0\x35\xc3\x56\xba\x9d\x53\x6b\x91\xf3\x19\xe3\xa9\x45\xc8\x1c\x8e\xfb\x42\x8c\xcc\xa4\xb4\x78\x76\x92\x38\x63\x87\x51\x74\xb6\xfe\x21\x82\xce\xa2\x7d\xe3\xff\xb5\xfa\xe6\x0c\x84\x3a\x33\x62\xbd\x4f\x63\x71\xcf\x82\xc5\x3b\x0b\x16\xff\x92\xdf\xe5\x0d\xb2\x76\xb5\x1b\x4c\xcf\x94\xee\x24\x64\x59\xbe\xc6\x1d\xbc\x47\xaf\xf9\x2a\xb2\x7b\x71\xd9\xd5\x61\x13\xb0\x43\x28\xb9\x8b\xb7\x5f\xe0\xa2\x33\xa8\x93\xa0\x1b\x83\x56\xeb\x8e\xa4\xc6\x67\x31\x95\x7d\x68\x32\x1e\x03\x6c\x86\x06\x37\x70\xa9\xde\xca\x46\x0a\xef\x1b\x4a\xdf\x9a\xaf\x42\xc8\x06\x6a\xdf\xe5\x4e\xc1\x65\x10\xb7\x57\xfc\x29\x20\x53\x3b\x53\x96\x8d\xc1\xa0\x30\xb4\x2a\xc3\x34\x0c\xbf\x8f\x1a\x5f\xd9\x50\x86\x9d\xac\x15\xad\xd3\xd2\x96\xc8\xce\xc8\xfd\x2e\x95\x52\xbc\xdd\xa2\xba\x16\x4b\xf2\xd6\x3c\x9a\x3e\xaa\x2e\x1e\x2a\xf0\x5d\x9f\x01\xda\xc4\xcd\xc3\x04\xd6\xa3\xc4\xf2\x28\x14\xa0\xc1\xec\x48\xae\x10\xb1\x22\x39\x6c\x9b\x3d\x5e\xa8\x4b\x08\x0e\x2e\x2f\xdb\x06\xcd\x93\x97\x6d\x93\x9a\xcb\xcb\x76\x49\xb7\xe7\x91\x09\xd9\xb5\xe4\xf5\xb4\x31\xc5\xe5\x05\x49\x1e\x69\x79\xc9\x36\x24\xe3\xc8\x68\x65\x69\x7b\x89\x44\xf0\x6f\xdc\xc6\x65\xda\xc4\x59\xfa\x15\x4d\x94\x37\xe2\xa7\x5a\x81\xa3\x73\x48\x7d\x6d\xfd\xb8\xf4\x32\xce\x51\x86\x77\x9b\xac\xb9\xb3\x5d\x05\x98\x03\x39\x3e\x9c\x2f\x77\xfa\x28\x88\x2d\xc1\x0c\xc4\x07\xc3\xec\x3e\x73\x1e\x91\x40\x5c\x55\x34\x71\x83\xde\xe9\xae\x97\xa0\xfb\xcb\x8d\xf2\x83\xe2\x96\x0b\xc4\x63\x05\x61\x44\x12\x67\xb0\xed\xeb\x8e\x8b\xd8\xb9\x28\xeb\x01\xd8\x3f\xf3\x93\x76\xa3\xb0\x94\x81\x93\xe9\x00\x4b\x23\x06\xe4\x1a\x54\xc3\x2d\x1f\x12\x4b\xd3\xe0\x6e\x8c\x18\x18\x75\x58\x2d\x71\xd3\x64\x71\x53\x47\x87\x43\x51\x61\xed\xb6\x8f\xc3\x32\x1e\x95\x85\xcb\x4f\xa4\xc8\x69\xb4\x00\x83\xca\x6c\x3d\x07\xc5\x91\x09\x19\xb1\xb2\x1d\xb7\x57\xa7\xb7\xa4\xc3\x71\x4a\x5b\x64\x61\x54\x99\xdb\x4b\x12\x83\x69\xab\xdc\xf5\xf3\xcf\x19\xa4\x93\x59\xd7\x27\x5d\x52\x92\x93\x7b\x86\xc7\x74\x52\xff\x74\x6a\xc5\x30\x35\x3d\x49\x6d\x71\x72\xf4\xe5\x36\xc4\xf2\x20\x1a\xf3\xea\x7e\x24\xb7\x68\xce\xd1\x8f\x1c\xa6\xd3\xfa\x91\xa0\x52\x7a\x2d\xaf\x6e\x2c\xbd\x02\xb3\xb2\x34\x49\xb2\x7a\x86\x9e\x22\x64\x9c\x01\x11\x4b\xd1\x69\x3d\xce\x92\x74\x1a\x26\x45\x22\xd9\x2e\x9e\x55\x82\x76\x69\x4e\x6f\xa1\xe1\xea\x6e\x59\x37\xb5\x43\xad\xdf\x57\x4c\x6e\x17\x78\x68\xdf\xea\xc4\xeb\xa3\xbe\xb1\x20\x73\x03\x68\xed\xf0\xbe\xdb\xfb\xa8\x00\xee\xe3\xf2\xc6\x70\xd1\x41\xeb\xf7\x83\xe4\x1e\x60\x56\xc4\x09\x28\x62\x45\xf2\x72\x5b\x3f\xde\x0b\xfe\x7d\xea\x89\xc9\x79\x27\xfa\xed\x19\xe8\x30\x4e\xba\x4b\xeb\x1b\xd6\x40\x63\xee\x90\x6c\x63\x98\x0e\x54\xb5\x5e\xed\x5d\x06\x81\x3c\x25\xb7\x9f\x6f\xc8\xf7\xfe\x85\x66\x19\x5e\xad\xa5\x39\x74\x25\xd2\x50\x5c\x23\x3d\xcd\xf5\xe2\xa1\xd9\xac\x2a\x34\xd0\x62\xf4\xa2\x4a\xb1\xa6\x81\x37\xfe\xb8\x55\xca\x0f\xc4\xc7\x1e\xed\xb6\x6e\x12\x8a\xcd\xb9\x1f\x5a\x73\x95\x4d\x24\xc9\xb7\x6f\x0c\xbb\xde\x48\xde\x4d\x62\x76\xa6\x31\x3b\x12\xcc\xce\x34\x66\x77\x1a\xb3\x2b\xc1\xec\x4e\x63\xf6\xa6\x31\x7b\x12\xcc\x5e\xfd\xfa\xcf\xb6\xc0\x17\xf4\xb2\xab\xe2\x03\xaa\x35\x71\xb0\x8f\xe6\x8f\xd7\x78\xe7\x78\x1c\x2a\xa8\xf5\x36\xce\x90\xf3\x3f\xbd\xb3\xae\xad\x6b\x8b\x55\x50\xf9\x0f\xaf\x8e\x33\x56\xda\xbc\x36\xe5\xa5\xc9\x87\xd7\xd7\x7f\xfe\x99\x89\xe3\xc7\xe6\x74\x97\xa7\x55\xae\x3d\x67\x09\x06\xc7\x25\x96\x18\xc8\x2b\xe6\x56\x3d\x38\xb9\xa9\x6e\x51\x81\x4c\x6c\xa5\xa1\x11\x97\xa5\xfe\x98\xa2\x27\x30\x34\x91\xdb\x4d\xf4\xdb\xa5\x66\xe0\x0f\x62\xbf\x81\x30\x23\xe6\xe2\xbb\x38\xcf\x51\xb5\x2e\xdc\xeb\x19\xba\x94\x76\x87\x8b\x75\x22\x8e\xa0\xe1\xbd\xa2\x8b\x11\x57\x52\xdd\x6a\x63\x0e\x74\x3d\xf8\xf8\xc4\x22\x1f\xba\x03\x3e\xc6\xd5\x3b\x5d\xaf\x9f\xe0\x62\xd3\x5d\x15\xe7\x89\xee\x9b\xe6\xf5\x0f\xa6\x69\x5e\xf2\xa4\xdc\x0a\x9e\xdc\x92\x20\x23\x6c\xbc\x37\x93\x53\x98\x39\x4c\x5a\x1e\x3f\xf2\xa9\xdc\xf8\x45\x5a\x1b\x8d\x57\x79\x7b\x75\x3d\x81\x8d\x58\xcf\x8c\xb4\xa6\x11\x8d\x6e\xe3\xc5\x25\x16\xd5\x74\xcb\xab\x18\xac\xc7\xd7\x4c\x04\x33\x09\xbc\x8d\x5b\x7d\x75\x2e\x38\x9e\x05\x75\x19\xe7\x97\x54\x57\x5a\x5e\x8e\x68\x6b\xf3\xca\x91\xfd\xe7\x02\xd8\x95\xf4\x89\x65\x97\xd0\x08\x3e\x50\xf3\x41\x57\x52\x28\x14\x55\x11\xc8\x25\x05\x3b\x75\x0e\xb0\xc8\x66\x4d\x81\xd1\x02\x4b\xea\x59\x36\x01\x24\xe5\xe7\x51\x37\xc6\xfe\x52\xe8\xe9\xb1\x9b\x28\x36\x67\xdc\x26\x78\x5f\x05\xba\x8e\xb8\xb9\x9c\x2f\x29\xaa\x60\x7c\x05\xe4\x3a\xf2\x64\x6c\xcf\x86\x30\x3b\x55\x9c\xce\x17\x94\xb3\x21\x09\xfa\xb9\xd0\x10\xf6\x71\x26\xb7\x2e\x6c\x86\x8c\x15\xe7\x02\xaa\x1b\xa1\x18\xa4\xdb\x36\x0e\x47\x9a\xef\x51\x95\x36\xc2\x52\x4f\x72\x85\xa9\xf5\x24\x72\x76\xf2\xfb\xae\xa8\x3e\x1c\xe2\x34\xd7\xf3\xf8\x91\xc6\xff\x91\xa6\x62\x9e\x5d\x78\xe2\xc2\x0d\x13\xbf\xc1\xb0\xd1\x61\x36\x5a\xe2\xd7\xca\xdc\x1a\xa7\xbe\x68\x8b\xb4\x92\x99\x12\x51\x5e\xa8\x0b\x83\xd4\xa5\x5e\x66\xd4\xd8\x3f\x99\x92\xb1\x64\x15\x9f\x2f\x54\xbe\xd1\x12\xb1\x40\x0c\x93\x98\x67\x9c\xf9\x17\xf2\xfa\xf2\x29\xbe\x04\xdb\x0a\x1b\x20\x5f\xcc\xbf\x49\x1d\x0a\xa7\xb8\x0a\x48\x7c\x9f\xa4\x8f\x53\x9c\xd4\x01\x1e\x5b\x05\xdf\x35\xcd\x56\xc3\xaf\x7a\x47\x6a\x38\x46\x0e\x97\xb0\x94\x94\x49\xb9\xd8\x63\x6b\xb8\x9c\x0f\x5e\x06\x54\x49\x93\xf5\x84\x24\x05\xe8\x34\x87\x4d\x8f\x23\x0f\xb1\xfa\xf2\xd7\xeb\x10\xcd\x59\xaf\x06\xad\x48\xe6\xf1\x06\x5c\xc4\x64\x8c\xf2\xfd\x05\x52\x79\x6c\x21\x98\xc5\x5a\x2b\x98\x49\x10\x98\x9e\xc2\x5b\xc8\x8d\xe6\x71\xd2\x77\x01\xfa\x56\x02\x94\x3b\x31\xf5\x86\xd1\x04\xe1\x1d\x73\xbb\x0b\xc6\xf3\x5b\x31\xd1\xb9\x2e\x82\xbe\x7d\xae\xb8\xb7\x98\xef\xad\xeb\x8f\x49\xcf\xe6\x9d\x91\x35\x82\xbf\xd1\xf2\x47\x5f\x9c\x84\x73\xa2\xd1\x53\x37\xbd\xd7\x8f\xe3\xb5\xa9\x16\x46\xf0\xbc\x57\xdc\x01\x63\x2f\x81\xb8\x97\x32\x6b\x15\x18\xff\x98\x00\x9a\xa2\x09\x69\x44\x5a\x09\x0b\xb8\xda\x5c\x66\x9b\x66\xd7\xb0\x8e\x84\xfe\x94\x73\x68\x8d\x9b\xa3\xb9\xaa\x4f\x5f\xba\xeb\x52\xdc\x39\x8c\xe1\x8b\x8a\xec\x60\xf9\xa9\xd3\xaf\xb8\xcf\x3b\xbf\xae\xe7\x8d\xfc\x6d\xe7\x2b\xa1\xb8\x31\xd6\x65\xdc\x31\x69\x9f\xf6\xb7\x69\xcc\x36\x1a\x8e\x29\xcd\xf9\x0b\x79\xb8\x4d\xcd\x9c\x13\xb7\x71\xfb\x70\x97\x6e\xf5\x3b\xf4\x35\x45\xd5\x3b\xc3\xba\xc6\xff\xd9\xde\xb5\x11\x5d\x8e\xc5\x72\x1c\x29\x35\x1a\x63\xd2\x56\xc4\x98\xb4\xa5\x31\x26\xbb\xe0\x5d\xd0\x58\x8d\xc4\xec\x98\xf8\x3e\x1c\x1c\x36\x63\xd2\x30\x14\x15\xe3\xbc\x32\x16\x3a\xb7\xdd\x09\x04\x8c\xc8\x04\x19\xea\xe0\xa5\xee\x87\x87\x2a\xab\xff\x5b\x8d\xaa\xc7\x74\x8b\xc8\xbd\xbd\x1f\xb0\x72\x59\xa2\xea\x96\xc4\x73\x15\x9f\x6f\x63\xce\x47\x1e\xf3\x27\xfc\x05\x57\x8d\xe8\xf5\x59\xa3\x49\x9b\x0c\x49\x2e\x0f\x9d\x7b\xad\x22\x81\xda\xb9\x2b\xa9\xb3\x67\xd2\x9f\xcd\xe6\xfa\x9f\x6a\x35\x67\x0f\x05\x9a\x97\xb2\xa0\x47\x02\xa6\x27\x3d\x12\x90\x2d\xdc\x39\x68\xbe\xb5\x66\xe0\x86\x11\x0f\x29\x72\x63\x51\x71\xb6\xce\x47\x26\x77\x86\x7a\xe9\xfc\x3a\x44\x87\x3f\x9a\xca\x8a\xb5\x1a\x58\xe8\x30\x53\x8d\x94\x13\x3d\xff\xb8\x64\x48\x37\x7b\xeb\xdb\x1f\x2c\x9c\x92\x85\x3c\xe5\xae\xbb\x2f\x51\xc2\x87\xe6\xdf\x23\x1b\xec\x32\x30\xcd\xd7\xd5\xfb\xb2\xbf\xf8\x59\xcd\x4c\x1b\xf2\x5f\xd9\x1a\x1f\x2b\x5d\x91\x24\xec\x1b\x76\xec\xfb\xda\x2d\x17\x24\x6a\x38\x84\xf5\x6c\xde\x31\xa9\xe9\x2e\xf9\x6c\xb2\x1d\xec\xde\x56\x2d\x35\x7c\x8c\x86\x2e\x2c\x8e\x50\x15\x45\xaa\xed\x6d\x59\x50\x07\x11\xf5\xde\xba\x45\x5d\x3e\x17\xdf\xf6\xc3\xc0\x19\xc0\x24\x49\x67\xe1\xc4\x8d\xe3\xeb\x83\x7f\xb3\xdb\x24\x11\x3c\x83\xdf\xae\xfd\x6d\xce\x12\xb8\x53\x30\x20\x96\xc0\xfe\x91\xc7\x8f\xec\x5d\x04\xf6\xa0\x1b\x97\x60\xc5\x07\x78\xbf\x2a\xaa\xfc\x17\x1d\x61\x4b\xc2\x85\xf6\x11\x8e\x84\x3d\x21\x18\x6f\x05\xf2\x21\x70\xbc\x2c\x58\x4c\x9f\x5d\x5c\xde\xe0\xa9\x0c\xe7\xa1\xac\xab\xda\x18\x0e\x62\x92\xea\x73\x65\xb6\x20\x49\xfa\x84\xce\x23\x2f\xd9\xbe\x83\x8f\xe4\x35\xd3\xda\x68\x84\xe2\xa9\xd6\x42\x62\xe9\xc1\x6c\x68\x83\xd4\xb1\x21\x4d\xa0\x5f\xa3\x81\x8b\x33\x44\x2a\xe3\x50\xf2\xcc\x46\xf8\x5d\x0c\xeb\xcf\xc6\xf4\x62\xa3\xf4\xb4\xc5\x48\xb4\x7f\x88\x1d\xd2\xbd\x7a\xc8\xe3\x87\x06\x76\xd6\x28\x61\x53\x05\x80\xbf\xba\x09\x17\x54\xe9\x3a\xd7\xc4\x77\xb0\xc8\x7f\xbe\x2d\x99\x4b\xf4\xdc\x1c\xe4\xbe\x4c\x44\x48\x82\x16\x49\x22\xce\x2c\x98\xff\x83\xf6\x3b\x83\xf6\x4b\x78\xbc\x1b\x45\x66\x93\x2e\x3a\xb8\x0f\x36\xe8\x7d\xe3\xd5\xb3\xc3\xc6\x7d\x0d\xda\x74\x53\x14\xd9\x5d\x5c\x75\x9b\x61\x66\x09\xe8\xd4\x7e\x53\x73\xcb\x41\xdc\x1f\x36\x36\xa0\xcd\xf8\xfa\xc2\x6f\x61\x4b\xcd\xe9\x57\xaf\x3f\xf0\x75\xf2\x8a\x8a\x32\x2d\xb3\x94\x5a\xfe\x72\x97\x52\x51\x9b\x9a\xce\xed\x24\x92\x60\xf0\x7d\x29\x86\xbd\x25\x0d\x62\x27\xdc\xc2\x4b\xf3\xba\x89\xf3\xad\x78\x6f\x8d\x29\x4c\x4a\x09\x3d\xf2\x5e\x88\x4d\x22\x7c\x96\x84\x11\x39\x21\xdb\x34\xdd\x33\x0a\x24\xaa\x29\x5a\x96\x23\x94\x4e\x20\x77\x70\x41\x51\x5e\x6d\x37\x30\xfc\xc0\x8e\x6e\x5d\x67\x58\x52\x38\xfb\x49\x80\x0e\x34\x40\x88\x22\x55\x53\x1b\x57\x99\xd9\x06\xb8\xe8\x20\x12\x21\xbd\x06\xb8\x91\xad\xdf\x8a\x38\xdc\xe7\x09\x40\xb6\xc2\x97\xae\x8f\xd4\x27\xf6\xeb\x95\x90\x16\x8a\xe7\x52\x76\x6a\xd2\xc9\xee\xfb\x21\x9e\x1d\x62\xd7\x70\xf6\x09\x5b\x62\xe3\xb5\xb9\xc9\xd6\x4d\x75\xd7\xb6\xc6\xd0\xf5\xb9\xa8\x78\x9b\x08\xa0\x1b\xb6\xa5\x5b\x1e\x2c\xf9\xd4\xa6\x79\x9c\xc4\x82\xd2\xd0\x7a\x9e\x70\x1b\x01\x5c\xac\x07\x25\x61\xa9\x65\x8a\x0b\xb7\x4f\xe1\xbe\x2a\x49\x4a\x4d\x92\xa1\xa3\x1a\x35\x9f\x65\xf1\x60\xa9\x95\x91\x91\xed\xaf\x7b\x8b\x4d\xef\x63\x84\x15\x3a\xbc\xee\x6d\xee\x9d\x03\xef\x1c\xf6\x5d\xd5\x19\x0b\xe9\x05\xf7\x6e\xbd\x52\x25\x1c\x9f\xb1\xa8\x29\x8a\x1e\xf9\xf4\xad\xb6\x34\xf5\xc8\x44\x54\xf9\x79\x81\xdf\xa5\x01\xe2\xb9\x48\x9c\x54\x4e\x5f\x33\x3b\x7e\x28\x35\xb8\x14\x21\x77\xf0\x87\x3c\x48\x18\x7e\x3e\xe8\x40\x87\x6a\xc6\xef\x3e\x8c\x63\x1b\xbf\xa3\x30\x5a\x76\xb0\x73\x67\xfb\x80\x0c\x5d\x8d\xca\x18\xd2\x66\x7e\x5e\xd6\x23\xc3\xd2\x6b\x0b\xae\xed\x1a\x05\xa2\x15\x1d\x25\x62\xe2\xba\xcd\x93\x67\xf7\x10\x99\x77\x2a\x53\xc1\x48\xec\xed\x36\x40\x21\x7b\x65\xfb\xda\xd8\xa3\x38\x6b\xf6\x40\xae\x5e\x3c\x34\xe5\x43\xa3\x25\x09\x64\xda\xe0\xf8\x98\xc6\x8d\x5f\xc6\xcc\xb4\x10\x97\x49\x0a\xac\x04\x75\x53\x15\xf9\xfd\x02\x5e\xa7\x98\xe0\x5e\x2b\xd1\x0f\x5a\x1c\x72\x51\x43\x20\xcb\xb8\xae\x9f\x8a\x2a\x99\x03\x4b\xe8\x9b\x03\x89\xb5\xf2\x71\x38\x85\xb4\x1a\x2f\x44\x2c\xf6\xf1\xef\x15\xca\xae\x3e\xec\x51\x56\x7e\x56\x00\xb6\x29\x06\x59\xb1\x8f\x07\x6c\x32\x78\x01\x13\xb2\x60\x50\xf8\x40\x92\x37\xc8\x7a\x8d\xf9\xc4\x77\x12\xf3\x81\xed\x13\x92\xe9\xdf\xea\xb0\x4a\x1a\xc6\xc6\x4e\x91\x92\xb2\x6e\x39\x68\x29\x58\x2f\x05\xd5\xf1\x07\x97\x21\x48\xb4\x96\x94\xc4\x48\x50\xdd\xa4\x39\xb9\x29\x84\x0e\xc7\x41\x4a\x9f\xe1\xf4\xc0\xb3\x8f\x65\x75\x74\x98\xc7\xe6\x13\x70\x74\xf4\x26\xa0\x60\x28\x95\x30\xaa\x9e\x57\x16\x60\xd2\x1e\xbe\x57\x02\x7d\x33\x96\xe6\x5f\xf7\x1d\x22\xb2\x72\xfb\x4a\xa0\x5e\x64\xed\x37\x60\x61\x74\x50\xf1\x0c\x9b\xaa\x48\x19\x8e\x43\x54\x07\x39\xdd\xf2\xda\x28\xab\xe2\xf9\x45\x47\xcf\x65\x51\xa3\x44\x2f\xe3\x66\x5f\xb7\x01\x62\x25\x70\x0f\x65\xdd\x54\x28\x3e\xc8\x60\x38\x35\xd0\xb2\xbd\xaa\x8d\x08\xcb\xae\x67\x6b\x88\xd4\xe0\x3b\xe9\xf3\xcb\xb9\x14\x4b\x0b\x8d\x91\xcf\x15\x60\xda\x42\x9d\x4d\xb9\xa6\xb4\x0e\xa8\xfd\xe8\x8b\xfa\xae\x4a\xd3\xd7\xe2\x3c\xd1\xde\xb5\x3b\x28\xbc\xeb\x48\x10\xde\x83\xea\x65\xfa\x8c\x32\x1d\x4e\x82\x6f\xcc\xcb\x23\x71\x66\x65\x90\xfa\x9c\x1b\xc4\x2b\xbd\x55\xd9\xe6\xd6\x61\x22\xef\x06\xb8\xe3\xbb\x6d\xc1\xba\x2d\x33\x9b\xd9\xd5\x34\x1f\xf7\xdf\x30\x03\xca\xd0\x85\x80\xee\x1c\x45\x1f\x02\xf6\xf5\xc0\x22\xca\x6d\x61\x20\x22\x38\x58\xa3\x47\x43\x41\xd2\x18\x90\xc3\x4d\x9c\x20\xa2\xae\xc8\x64\xbe\x5a\xe3\xee\x20\x18\x20\xba\xb8\x5d\xc7\x9e\x4f\x2c\x88\xfd\xd4\x51\x31\x38\x42\x07\x70\x6e\x37\x4a\xc2\xc3\xb9\x8f\x4f\xda\x4f\xda\x3b\xcb\xf6\x4d\xed\x27\xcd\x32\xcd\xcb\x4b\x61\x8b\xaa\x84\x93\x99\x9c\x4c\x6e\x5f\x2a\x6c\x7f\xcd\xe1\xf6\xd7\x94\xef\xa6\x71\x35\x2c\xa2\x19\xcd\xb1\xdd\x01\x76\x88\x37\xf4\x0a\xf9\x6e\xbb\x73\x17\x32\x28\x34\xe5\xcf\x1b\xa5\x9d\x58\xe3\x55\xa5\x66\xfc\xaa\x78\x92\x38\x53\xbd\xb2\x0d\xe9\x6c\xb5\xac\x48\xa4\x07\x65\x97\x42\x37\x99\x7d\x74\x24\x79\x3e\x71\x78\xdb\x26\x57\x1b\xa9\x85\x3d\x8d\xbb\x14\x7c\x18\x25\x61\xbd\x40\x0b\x6a\x67\x3f\x28\xea\xd7\x53\x00\x1a\x17\x2b\xb5\xf5\x64\xef\xaf\x3c\x62\xc5\x8c\x9e\x8f\x5f\x6a\x6d\x3e\x20\xf2\x42\xff\xac\xb0\xcd\x8a\xf6\x55\x9e\x06\xbc\xce\x10\xdc\xdd\xab\x2f\x8f\x97\x9a\x78\x26\x45\x42\xa3\xb4\x3a\x21\x11\xfe\xc6\xb6\x28\x5f\xf4\xbb\x86\x03\xd4\x3d\xbf\xe7\xca\x1b\xf3\x55\x61\xd0\x28\x07\x27\x1d\x44\x2d\x18\xbe\x97\xa4\xcf\x55\xab\x4b\x23\x9a\x14\x68\x99\xc3\x2c\xde\xbd\xb2\xd2\xff\x52\x80\x8a\xc9\x8f\xf0\xea\x31\xf0\xe4\x51\xa7\xa1\x07\x27\x3d\xc6\xdb\x4e\xe6\xf9\x04\xd7\xa9\x1d\xde\xeb\x89\xbe\x93\x19\xdb\x21\xc8\xe5\x71\xca\x4e\x4b\x16\x5f\xc1\x98\x2e\x0f\x90\xef\x86\xbc\x03\x9b\xf9\x3a\x1d\xaa\x8e\x53\x24\x99\x08\x8a\x03\xeb\x27\xca\x13\xc1\xf4\x89\xdf\x88\x76\x4f\xf8\x8a\xf2\x64\xb4\x62\x88\xd8\x68\x3c\xe4\x64\x0b\xfe\xa2\xed\x6d\x31\xe1\x78\x80\x0e\xd3\xa4\xff\x70\x40\x4d\xac\x27\x71\x13\x77\xa1\x24\x45\xc7\xa6\x69\x1c\xb4\xd3\xeb\x16\x05\x9e\xc2\x5a\x83\x95\x59\xf9\xa9\x03\xb5\x1b\xbc\x00\x77\x82\x7a\xc5\x9b\x60\x21\x3e\x99\xb2\x61\x83\x1b\xd2\xcc\xb4\x15\xd6\x4b\x8c\x7f\x7e\xd2\x7b\x49\x8f\x0d\x30\xb2\x5b\x2b\x99\x25\x54\x42\x63\x93\x68\xb1\x91\xd6\x4c\xba\x6f\x65\x48\x9a\x31\xf7\x1b\x2e\x38\x0d\xbd\x7c\x20\x38\x17\xc9\xaf\x23\x0c\xe6\x88\x18\x91\x14\x58\x49\x36\x45\xae\x7b\x18\x08\x13\x3a\xa3\x88\x6a\x56\xd9\xa3\x36\x6d\xbe\xd3\xe3\xad\x4c\xef\x19\xd4\xc4\x8c\xe2\x9f\x26\x39\x0a\x23\xa2\xd7\xb4\x49\x08\xa7\x28\x11\xa1\x54\x74\x9e\x82\x5d\x26\xd0\xa9\xa4\xfb\x3d\x8f\x0f\xe8\xc3\x05\x5e\x41\x7e\x07\xbb\xdf\xe7\x8b\xcf\xd7\xb2\x97\xe2\x91\x9f\x0c\x46\x99\x3e\x80\xcc\x21\xb2\x42\x89\xde\xcc\xcc\x94\x7a\x55\x72\x5f\xdf\x42\x26\x2a\xd9\xa2\x33\xc5\xff\x3f\x00\x00\xff\xff\xb2\xd4\x5e\xb1\xca\x34\x04\x00") -func web_uiAssetsConsulUi97ec8a4278cddf4266ff5aa45bf84f69CssBytes() ([]byte, error) { +func web_uiAssetsConsulUiAc33675cf2d3f767c0eb03745026ec60CssBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsConsulUi97ec8a4278cddf4266ff5aa45bf84f69Css, - "web_ui/assets/consul-ui-97ec8a4278cddf4266ff5aa45bf84f69.css", + _web_uiAssetsConsulUiAc33675cf2d3f767c0eb03745026ec60Css, + "web_ui/assets/consul-ui-ac33675cf2d3f767c0eb03745026ec60.css", ) } -func web_uiAssetsConsulUi97ec8a4278cddf4266ff5aa45bf84f69Css() (*asset, error) { - bytes, err := web_uiAssetsConsulUi97ec8a4278cddf4266ff5aa45bf84f69CssBytes() +func web_uiAssetsConsulUiAc33675cf2d3f767c0eb03745026ec60Css() (*asset, error) { + bytes, err := web_uiAssetsConsulUiAc33675cf2d3f767c0eb03745026ec60CssBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/consul-ui-97ec8a4278cddf4266ff5aa45bf84f69.css", size: 258987, mode: os.FileMode(420), modTime: time.Unix(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/consul-ui-ac33675cf2d3f767c0eb03745026ec60.css", size: 275658, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -462,7 +463,27 @@ 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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/css.escape-851839b3ea1d0b4eb4c7089446df5e9f.js", size: 753, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} + a := &asset{bytes: bytes, info: info} + return a, nil +} + +var _web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xcc\x7c\x7b\x6f\xdb\xb8\xf2\xe8\xff\xfe\x14\x8e\x81\xd5\x8f\xac\x29\xaf\xa8\x97\x65\x37\xac\xb1\x7d\xec\x41\xb7\xbb\xa7\x8b\x3e\xfe\x32\x8c\x40\x91\xe9\x98\x8d\x2c\xf9\xea\x91\x34\x37\xf6\x77\xbf\xe0\x4b\xa2\xfc\x48\x53\x9c\xbd\x3f\x1c\xa0\xa8\xf9\x18\x0e\x67\x86\x33\xc3\xe1\x90\x0a\x58\xd5\x59\x52\xb1\x3c\x03\x19\x7c\x1c\xd4\x25\xed\x97\x55\xc1\x92\x6a\xd0\xd3\x1d\x7d\x0a\x32\x44\x51\x01\x1f\x0b\x5a\xd5\x45\xd6\xa7\x97\x24\xb3\xac\xec\x92\x14\xfb\x41\x9d\x2d\xe9\x8a\x65\x74\x39\xb8\x20\xd5\xc3\x96\xe6\xab\xfe\x26\x5f\xd6\x29\xb5\x2c\xf9\x3b\xa2\xdf\xb7\x79\x51\x95\x96\x75\x91\xcd\x07\x34\x4b\xf2\x25\xcb\x6e\x6c\x96\x2d\xe9\x77\x5a\x0e\x16\x96\x05\x4e\xb6\x93\x82\xfe\x9f\x9a\x15\x14\x0c\x46\xbf\x1e\xf6\xda\xe3\x80\xd2\x18\x87\xd7\x6e\x30\x19\xe3\x70\x79\xed\xaf\x96\x38\x74\x29\x75\x23\x6f\xe9\xc6\x34\x18\x7d\x2b\x07\xf0\x14\x56\xd8\xbb\x8b\x8b\x7e\x41\xfe\x8a\xab\xf5\x68\x95\xe6\x79\xd1\xb2\xc9\xb8\x04\xd8\x0a\xdc\xe5\x6c\xd9\x77\x08\x21\x19\x94\x0c\x3f\xee\x7b\x6c\x05\x32\x42\xc8\xc7\xeb\x6f\x34\xa9\x40\x06\x55\x4f\x3f\xeb\x55\xeb\x22\xbf\xef\x7f\x79\xd8\xd2\x77\x45\x91\x17\x60\xf0\x26\xaf\xd3\x65\x3f\xcb\xab\x7e\x92\x67\x77\xb4\xa8\xfa\x71\x71\x53\x6f\x68\x56\xf5\xab\xbc\xbf\x64\x62\xb2\xb8\x78\x18\xc0\x7d\x33\x35\x47\xa9\xa5\xeb\x68\xe9\x62\x77\xbc\xe7\xd4\xe6\xa4\x6a\x89\x2c\x39\x64\xb5\x66\xe5\xa8\xca\x6f\x69\x56\x92\xf9\x62\x54\xa6\x2c\xa1\xa3\x24\x4e\x53\x90\x41\x64\x74\x8e\x0a\x7a\x47\x8b\x92\x02\xb8\x2f\x47\xdb\x22\xaf\x72\xbe\x44\xe4\x91\x66\xcb\x8f\xab\xcf\x55\x41\xe3\xcd\xb4\x59\x7e\x4d\xc0\x85\x89\x20\xa5\xd9\x4d\xb5\xde\xa3\x82\xc6\xcb\x63\xd0\xfe\x31\xe8\xcc\x6c\xda\xe6\x5b\x00\xa7\x36\xde\xa3\x6d\x41\xb7\x34\x33\x50\x48\x51\xff\x56\x14\xf1\xc3\x88\x95\xe2\x97\x8b\x75\x95\x17\x80\xf3\x4c\x49\xf6\x92\x2a\x94\x2f\x61\x07\x67\x5d\xae\x01\x95\xa8\x61\x8f\xa6\x25\xed\x1f\x75\x67\x70\x8f\x78\xe1\x1f\x98\xae\xce\xca\x35\x5b\x55\x80\x8e\xe4\xef\xa9\x39\x35\x4c\x06\xf7\xfb\x76\xa5\x62\x6e\x35\x62\xda\x0c\x1e\x29\xc9\x5b\x9a\xe4\x4b\x5a\xf4\x29\xaf\x0e\x60\x4f\x5b\xd6\x6e\x17\x06\x81\xe7\xb5\x9a\x51\xcb\xf5\x3e\x18\xfe\x65\x4d\xfb\x1c\x41\x7f\x9b\xb3\xac\xea\x0f\x86\xd9\x70\xd0\x4f\x1a\xc5\xbb\xa6\x7d\xa1\xfa\x74\x39\x32\xb5\x2c\x35\xb4\x2c\x23\x9f\xab\x82\x65\x37\x20\x83\xa3\xaa\x60\x1b\x00\x47\x55\xfe\x67\x7e\x4f\x8b\x37\x31\x57\x18\x24\x55\xbd\xd5\x9a\xd1\x3a\x2e\x3f\xde\x67\x7f\x17\xf9\x96\x16\xd5\x83\x54\xb7\x04\x65\x70\x96\xcc\xb3\xc5\x34\xab\xd3\x54\x68\xeb\x8a\xcc\x1f\xb5\xdd\x95\xd3\xf9\x63\x1a\x5f\xd3\xb4\x9c\xce\x07\x75\xc6\x38\x49\x36\xb6\xb1\x5d\x57\x2b\x3b\x1a\xa0\x81\xf1\x1b\x0d\x16\x28\x8b\x37\x74\x3a\xf8\xfa\xe5\x77\x3b\x1a\xec\x17\x68\x4d\x63\x8e\x65\x2a\xd8\x7d\xa7\x70\x0e\xf6\xe8\x34\xfe\x28\x0c\x07\x68\x90\x6c\xd5\x6f\xc9\xae\x37\xb2\xa8\x0a\x1a\xfd\xfb\xd7\x7f\xf1\xea\x1e\xb5\x43\x93\x92\x95\x79\x1a\x57\x2c\x73\x39\x7c\x99\xdb\x51\x14\x4c\x6c\x5d\x61\x85\x8d\x1d\x2c\x2b\x66\x07\x2f\xab\xe2\x95\xd9\xae\x2a\x53\x3c\x89\xc6\x03\x34\x48\x79\xb3\xc2\xde\x10\xf1\xf9\xa3\x9e\xe3\x34\x21\x9e\x49\x88\x67\x12\x32\x31\x08\xf1\xda\xb2\x67\xce\xdd\xad\x70\x42\xb8\x94\x53\x4f\x13\xe2\x1d\x13\xe2\x9d\x21\xc4\x37\x09\xf1\x0d\x42\xb0\x63\x10\xe2\xb7\x65\xdf\x9c\xbb\x5b\x69\x08\xf1\x35\x21\xfe\x31\x21\xfe\x19\x42\x92\x87\x82\xa5\x29\x4b\xf8\xe2\xb6\xc5\x86\xb4\xc0\x20\xcd\x37\xc8\xd1\x1d\xbc\x1c\x98\xd4\x74\x2b\x92\xb4\x23\x62\x82\x0e\x31\x71\x11\x5f\x8b\x59\xe3\x72\x93\xdb\x63\x27\x92\x8a\x26\x91\x87\xb4\x53\x63\xba\x26\x88\x6f\x46\xd2\x64\x13\xdb\x18\x77\xa4\x1a\x76\x2a\x36\xed\x56\x99\xc1\x98\x3b\x36\x18\x0b\xdb\x72\x68\xf2\xd2\xad\x48\x2d\x3c\x62\xec\x9c\x01\xdc\x14\x94\xde\xb6\x74\x72\x0e\x69\x9a\x57\x57\x13\x97\x17\x75\xaf\xf8\x8d\x4c\x3a\xc7\x26\x95\x06\x65\xb6\x41\xf1\xd8\x24\xac\x5b\xd1\xb6\x52\xd6\xd9\x15\xad\xaf\xe4\x3c\x47\x44\x8f\x8f\x89\xe6\xed\x11\xed\xc8\x7a\x4d\xaf\x0b\x7a\x3f\x40\x83\xa6\xd0\x50\xd9\x21\x39\x6a\x24\xcd\x89\xf6\x22\x83\x68\xa3\x1c\x99\x74\x76\x2b\x5a\x9d\xef\x58\x59\xc7\xe9\x31\xb9\xd1\x19\x72\x59\x97\x0a\x5e\x4d\xf3\x1b\x96\x9c\xc4\x61\xbf\x3f\xb3\x52\x1d\xad\xd1\xc6\x28\x58\x09\x4c\x2d\x31\xcd\x54\x94\xd3\x50\x1b\x5f\x78\x3c\x1d\x76\x3a\xb3\xb5\xf8\x3d\x13\xa5\x51\xc1\x27\x5c\x09\xf6\xce\x20\x31\xcd\xd2\xac\xe0\x13\x6e\x00\x9f\xf3\x03\x93\x0e\xdf\x81\x89\xd2\xa8\xe0\x8e\x79\x8b\x5a\x3a\x39\x31\x4b\x70\x86\xd4\x53\xb2\x39\xb4\x99\xdb\x9c\x45\xc5\x00\x0d\x6e\x73\x26\xff\x8f\xd4\x8f\xad\x5a\xa3\xab\xa2\x41\xf3\xe1\xe3\xfb\xc8\xfe\xd4\xc1\x20\x41\x6b\x3d\xa8\xee\xc2\x7e\x3d\x98\x6d\x13\x27\x2c\xab\xf2\x72\x3d\x40\x83\x4d\x9c\xc8\xff\x9b\x96\xef\xf6\x26\x4e\xec\x22\xdf\xc4\x59\x83\xa6\xed\x37\x31\x2d\xf3\xd2\x8e\xc6\x1d\x07\x84\xcd\xcd\xcd\xac\x88\x72\xc5\x4a\x3b\x74\xb9\xea\xdc\xb3\x6c\x99\xdf\xcb\xe1\x7a\x12\xb3\xad\x43\xf0\x16\xbb\x81\x39\x48\x55\xbf\xdb\xaa\xe7\x10\x81\x68\x3c\xc2\x80\xbb\x18\x70\x8b\x01\x9f\xc2\x80\xbb\xfe\x3a\x2b\xd9\xd5\x77\x6f\xe4\xdb\x78\x12\x46\xc2\x6f\x27\x4c\x38\x66\x8e\xc0\x95\xe1\x02\x9e\x74\xbc\x07\x56\x11\x03\xee\xea\x99\xb9\x03\x9b\x1b\x9f\x29\xac\x8e\xc6\x75\x2a\x4d\x28\x80\xb5\xed\xf1\x42\x5d\xda\x9a\x20\x83\x05\xb7\x65\xd1\x3d\xc5\xa2\x7b\x2c\x24\xaf\x8b\xc1\x6b\x31\x78\xa7\x30\x78\xc7\x18\xfc\x8e\x0c\x02\x93\xf5\x89\xb9\xb1\x9a\x4e\xd2\x08\x44\x26\x26\xb7\xdd\x0a\x67\x9d\xb7\xa4\x81\x66\x3d\xe8\x52\xeb\xb7\xd4\x1e\x6b\x95\x68\x3c\xa2\xf6\x00\x43\xd0\x62\x08\x4e\x61\x08\x8e\x31\x84\x5d\x0c\x61\x8b\x21\x3c\x85\x21\x3c\xc6\x30\xee\x62\x18\xb7\x18\xc6\xa7\x30\x8c\x8f\x31\x44\x5d\x0c\x51\x8b\x21\x3a\x85\xa1\xbb\x9b\x48\x7b\x37\x02\x21\xd9\x50\xdf\x16\x31\xcb\x98\xe1\x04\x0e\x00\xcd\xb0\xfa\x4f\x7a\x13\x27\x0f\xfd\x92\x65\x37\x29\xb5\xaf\x1f\x2a\x75\x6c\xe0\x91\xf5\xd9\x30\x3b\x59\xb3\x8c\x96\x72\xc7\xbd\xb9\x76\x3d\xec\x6a\xd5\x09\x22\x59\x8f\xb8\x7d\x34\x5d\x37\xd7\x57\xdd\x92\xad\xfa\x6f\x5b\xbd\x52\xbc\xf3\x36\x4d\xf6\xbf\x5e\x7f\xe8\xf0\x7b\x73\x8d\x23\xc7\x6b\xbd\x86\xae\x9f\xe0\x67\x53\xa7\x15\x93\xec\xbc\x91\xc4\xf6\x41\xc9\x36\xdb\x94\xad\x18\x5d\xc2\x67\xf0\x78\xcd\x6e\xb8\x4e\xf1\x1f\x7b\x7d\x5b\x26\x25\x67\x31\xb3\x55\x73\x52\xaa\xc2\x77\xfb\xbb\x6c\xd3\x44\xbd\xe6\x95\x67\x52\x54\x15\xf1\x92\x89\x54\x40\xfa\x1c\x92\x92\x92\xd6\xc9\xf6\x76\xb9\xda\x54\xdf\xe2\x6d\xac\x96\x80\xd6\x89\xfd\x6d\x2b\x48\x51\x45\x4d\xca\xbb\xaf\x6f\xec\x3f\xfe\x3e\xde\x42\x5d\xc7\x75\xc5\x08\x2e\x7a\x5e\x31\x07\xf1\xad\x4e\xb4\x1d\x8d\x14\x07\xdc\x6f\x8c\x0b\x62\x53\x4e\x3c\x57\xfc\x5e\xdd\xc6\xd9\x37\xee\xbd\x44\xaf\x2d\xbb\x45\xf9\x4a\x95\xe5\x8f\x56\x62\x0f\x7f\x13\xa4\x8a\x66\x3d\xe7\x67\x01\xff\xc7\xfb\xcf\x3f\x10\xdc\x1f\x8a\xeb\xe7\xca\xea\xb6\x10\x4b\x75\x5b\x26\x41\xe8\x60\xe5\x7f\xb9\x90\x44\x47\xe3\xd0\x26\x62\xf7\x2d\x68\x9c\xf1\x42\x79\x95\x5c\x71\x70\x5b\xc1\x77\x1a\x04\xa8\x44\x27\x4b\x57\xaa\xa8\xf9\x9b\xf8\x93\x8e\xfc\x3f\x7c\xfa\x01\x4f\x1f\xc4\xc4\xcf\xe2\x48\x2d\x9d\x20\x7e\xfd\x7f\xed\x9b\x6b\x5b\x59\x55\xb3\x8e\x49\xd6\xad\xd9\xf4\x7b\x65\xb6\xdc\xb6\xb1\x48\x41\xb7\x69\x9c\xd0\x0d\xcd\xaa\xce\x3a\xf3\xe3\x38\x0e\xaf\x69\xe7\x28\x8e\xc3\xd7\xef\x4e\x40\xa9\xd3\x3b\x0e\xd3\x43\xf0\x3f\xdf\x1d\x78\xaa\xba\xa4\x85\xad\xd3\x84\xad\x5f\xea\x34\x9f\x12\x14\x2b\x13\x9a\xa6\x71\x46\xf3\xba\x34\x85\xb4\x40\x09\x79\xdc\xf7\x56\xa3\x55\x5e\xbc\x8b\x93\x35\xe8\xe4\x30\xb3\x51\x03\x7a\x0e\x40\xd2\x76\xa2\x97\xc2\xc7\x64\x4e\x17\x24\xdb\x43\x28\xff\x89\x7c\xe1\x12\xad\xd1\x0d\x79\xdc\xa3\xad\x98\x57\xe7\x53\xae\x64\x86\x47\xe7\x6e\x2c\x8b\xce\xb3\xc5\x6e\x27\x52\x21\x0d\xd0\xb5\x04\x92\x69\x47\x3a\x12\x99\xc8\x8f\x2b\x90\xe9\x9c\x8f\x8d\x09\x21\xc5\x8c\x0f\x9a\x16\xed\xb0\x7b\x20\x73\x47\x17\xe0\x38\x8b\xc9\xb2\x7e\x06\x55\x4e\x49\x25\x84\xde\xcb\x2e\x2e\x33\xee\xce\x47\xfd\xb7\x6c\xd9\x7f\xc8\xeb\xfe\x2a\x2f\x6e\xa8\xc8\x3c\xb2\x2c\x49\xeb\x65\x6b\x3f\x3f\x93\x4c\xed\xaf\x58\x51\x56\xb3\x36\x51\x75\x32\x65\x3b\xa7\x8b\x96\x81\x4d\x93\xfe\xba\x00\xd5\x9a\x95\x7d\x96\x95\x55\x9c\x25\x22\x43\x0c\x8f\x33\x62\x6f\xe2\x34\xa5\xcb\x7e\x5c\xf6\xe3\xbe\x46\x72\xc4\xc6\xff\x64\xf4\xfe\x7f\x38\x19\x19\x91\x59\xda\x0b\x42\xb2\x59\x93\xc9\x9a\xea\x84\x12\x25\x0c\x50\x95\x0a\xbd\xd2\x84\x12\x2e\x63\xd5\xb6\x94\xf9\x37\xb3\x89\xdd\x64\x79\x41\x5f\x7f\xfc\x8b\x5c\x60\xd5\xf4\xfa\xe3\x5f\x25\xa5\x59\xdb\x20\xd2\x75\x57\x9b\x7c\x49\x49\xc7\x88\x34\xd6\xfc\x2a\xcb\xab\xab\x55\x5a\x97\x6b\x72\x81\x55\xae\x39\xe5\x8b\xcd\x56\x80\xcf\xc5\xd7\x7a\xb7\xeb\x8c\xe5\x4d\x23\x6e\x13\x4a\x26\x9f\xe2\xec\x46\x0b\xe5\x6b\x76\x9b\xe5\xf7\xad\x87\x98\xf6\x07\x43\x89\xec\x62\x3b\x97\xa3\x16\x5d\x45\xd0\x89\xc5\x2c\xaf\xfa\xdb\x82\x96\x34\xab\xfe\xbf\x2b\xc3\x81\x98\x0b\xf4\x3a\xcf\x53\x1a\x67\x80\x8e\x56\x71\x15\xa7\xd0\xb2\xc0\xb1\xfc\x44\xd7\x00\x1a\xc0\xcd\x0a\xb4\x03\x8c\x45\x71\x9a\x9c\xa4\xf4\x19\x3a\x13\xb9\xdb\x49\xd8\x66\xfe\x2e\x39\x42\x48\x07\xb9\x4d\x01\x21\xe6\xd7\x64\x10\x42\x0e\x29\x94\x50\x2d\x01\x07\x04\x49\x2c\xad\xbe\xdf\x01\x71\x45\x72\x52\xdf\xef\xfe\x63\x7d\x2f\x08\x03\xc5\x53\x0a\x2d\xf3\xbd\x1d\x85\x3e\xd0\x46\xd5\x2a\xd9\xd6\x42\x2f\xd4\x0a\xcd\x94\x1c\xba\x7b\x03\x57\xb4\x16\xf2\xdf\x1f\xff\xfd\xf9\xcb\x6f\xff\x7e\xfb\xdb\xa7\xb7\x57\x71\x9a\xe6\xf7\xd2\x4f\xeb\xc4\x2c\x94\x4e\xae\x22\x29\xa0\xad\x75\x52\x6d\x9d\xb4\xb1\x4e\xd3\x18\xaa\x63\x63\xa8\x7e\xc6\x18\xa8\x34\x86\x9b\x79\x75\xca\x18\xde\x65\xff\x8b\xc6\x70\xb0\x36\xd5\xbe\xbd\x27\x68\x5b\x53\xa0\x85\x80\x5a\x11\x59\xd6\x20\xc9\xb3\x32\x4f\xa9\x70\xed\x96\xa5\x6a\xa3\xfb\xb8\xc8\xc0\xe0\x0b\xfd\x5e\x69\x4e\x78\x4f\x55\xd4\x49\x95\x17\xfd\x44\x6a\xd0\x3d\xab\xd6\x0d\xe9\x7d\xb1\xb5\xa1\xfe\xfd\x9a\x25\xeb\x3e\xd7\x42\xa1\xaf\xcb\x51\x6b\xad\xff\x90\x11\x1d\xea\xff\x03\xdf\x5a\xa5\xc3\xcb\xa4\x52\x21\x46\x1c\x54\x11\x07\xe5\xc4\x41\x25\xc1\x6e\x84\x6a\x82\x27\x58\x4a\x6a\x1d\x67\xcb\x94\x16\xa4\xdd\x99\x51\x2a\xcc\x47\x6c\x88\xa9\x65\x71\xd1\xe4\xfa\x9e\x8d\xa3\x88\x41\x21\x56\x5b\x02\x40\xbd\x7d\xf2\x26\x87\x70\x58\x3e\x9a\x82\x14\x39\x08\xbb\xe3\xe6\x8a\x2e\xed\xa9\x66\x3c\xf1\x91\xeb\x7a\x10\xe6\x04\x23\x46\x3c\x6c\xa5\xf2\x2e\x47\xf5\xbb\xae\x8f\x5c\x6f\x02\xa1\xeb\xfa\x92\x04\x50\x12\x1c\x3a\x10\xb9\xde\x58\x35\xd4\x04\x07\x13\x88\x72\xe2\x22\x46\x70\xa0\x30\x08\xab\x17\x28\x7c\x07\xb9\xbe\xdf\xcc\x2d\x48\x76\x7d\xa7\x45\xe7\xfb\x90\x43\xb4\xe8\x7c\x8f\xa3\xf3\x10\x23\x63\x2b\xdd\xeb\xed\x95\x87\x10\x1a\x69\x89\xea\x06\x21\x23\x39\xa9\xba\xe2\x44\xd9\x48\xdd\xae\x81\x14\x36\x42\x32\x01\x18\x61\x97\x97\xe1\x2e\xf4\xac\x14\x81\x6a\x48\x30\x34\x45\xcb\xe7\xea\xc9\x9b\x1b\xd6\x3b\x98\x66\xb5\x6f\x17\xf8\xbb\x8c\x9d\xc4\xd2\x9e\x5d\xc2\xa2\x5d\xc2\xa2\xb3\x42\x39\x28\x1a\x26\x0a\x31\x1d\x43\x55\x8f\x82\x02\x71\x3a\x5d\xc7\x1f\xc3\x19\x60\x04\xa3\x8a\xe0\x89\x0b\xa7\xbc\xc7\x75\xfc\x08\x85\x41\xe0\x05\xa2\xcf\x45\x15\x71\x5d\x5f\xf6\xf1\xe6\x10\x61\x8c\x7d\x8c\x31\xdf\x2f\x18\xf1\x78\xbf\xef\xc0\x9e\xbe\xd5\x2b\xc9\x1c\x14\xaf\x5e\x85\x2f\x18\x1c\x56\x8b\x97\xec\x95\xf3\x52\xaa\x68\x4c\x44\x33\x60\x36\x86\x3d\x75\x67\x88\xdd\x88\x4b\x28\x86\x88\xd9\x04\xeb\x85\x28\x0d\x01\x7c\xec\x46\x72\x4f\x09\x82\x22\xd6\x0a\x82\x75\x04\x51\x01\xd6\xae\x66\x4f\xde\xef\x66\x73\x66\x63\x37\x5a\xf4\x8c\x25\xe1\x1a\x3d\xe3\xab\x39\xcd\x0d\x1a\x6e\x25\x0d\x3f\x9a\xfd\x67\x96\x81\x5c\x83\x02\x65\xf0\x60\x6e\x66\x59\x35\xdf\x71\xd8\x10\xbb\x91\x41\xc0\xbb\xd3\x66\x2e\x4d\xdc\x39\xab\x17\x75\x4b\x50\x6d\x59\x8e\x9c\x40\x58\xad\xfc\x29\x5b\x2a\x39\xf2\x54\xda\xf9\x05\x21\xf5\x6e\x77\x02\x7a\xb7\x03\xc6\xac\x42\xe9\x21\xe2\x0e\xa3\x84\x8f\xa9\xdc\x03\x29\xa8\x91\x1f\xa1\x60\xcc\x95\x23\x25\x07\x37\xc1\xd9\x2b\x6f\xe2\xe3\x89\x65\x65\x97\x38\x9a\x50\x6f\xb7\xcb\x5e\x61\xd7\x1b\x07\xe3\xa0\x63\x17\x6c\x05\xc6\x7e\x30\x36\x1e\x03\xf4\x83\x89\xe7\x05\x82\x4a\x8a\x0a\xe2\x28\x2f\x77\x0f\x74\x4a\xc2\x2e\xf8\x9e\x55\x0e\xa4\x1e\x52\xe2\xbc\xa4\x97\x95\xbe\x5b\x1e\x0e\x95\x06\xe5\xa4\x9a\xd3\x85\xd8\xbc\x40\x3e\x77\x16\x97\x24\x83\xf0\xba\xa0\xf1\x6d\xaf\x20\xbc\x01\x31\x92\xcf\xf1\x42\x2b\x22\x1b\x66\x76\xb1\x07\xd8\x79\x01\xb0\x1b\xbe\x10\x05\xae\x34\x13\x38\xcc\x6d\x3f\x82\xc3\x52\x56\x6a\x5e\x81\xca\x9e\xe7\x39\x77\x1e\x8b\xd6\xaa\x5b\x91\xa9\x65\x4e\x67\xa0\x75\x1f\x2b\xe9\x3e\xe0\x54\xf8\x9e\x8e\xff\xe5\xd2\xc4\xee\x04\xb9\x81\x0f\x67\xa0\x24\xb5\x40\x00\xa7\xc6\xe8\x79\x8e\xea\x05\x6c\xb4\x41\x60\xea\x29\x3c\x4c\xf9\x66\xbd\x24\xad\x5b\x97\x88\x04\xbd\x09\x61\x68\x49\xa4\xd8\x89\x23\x9a\xd6\xa4\xbe\xc4\xee\x78\x16\xfa\xd3\x30\x50\x6c\x08\x34\xa1\x8f\xb0\x1b\xc2\xdd\x4e\x12\x16\x09\xc2\xf8\x4a\x2f\x09\x9e\x38\x2f\x40\x22\xa5\x01\x6a\x7b\x0d\xa1\x66\x16\x48\xd5\x20\x84\x2c\xe5\x79\xeb\x0a\x2c\x51\xbb\x70\x03\xc8\x31\x54\xa0\x86\x96\xd5\xb2\x55\xc3\x56\x56\xc2\x1c\x1b\x27\xcd\x21\x67\xf5\x14\xbb\x11\xd7\xea\x59\xe4\x85\xfe\xb4\x2b\x27\xd6\xc8\x89\x8f\x34\xac\xe8\x9b\x34\xe3\x1f\x79\xd3\xb3\x4e\x24\xef\x38\x11\xb6\x02\x41\x14\x05\x9e\x01\xd6\xaf\x01\x13\xd2\xa7\x96\xc5\x09\x33\xbb\xb0\x1b\xf5\x64\xa4\x76\x0d\x58\x97\x7f\x1d\x99\x5d\x10\x52\x49\x3d\x2d\x49\xf5\x0b\x9e\x38\x4a\xf6\xf3\x02\x54\xbf\xe2\x89\x03\x87\x9c\xc9\x72\x08\xca\xcb\xd0\x93\xab\x03\x17\x5c\x69\x68\x67\xfe\xea\xd0\xec\x84\xed\x98\xc6\xc4\x8d\xeb\x1f\xb6\x25\x7c\x68\x4b\x58\xda\x92\x73\x68\x4b\x4c\x9a\x49\x4c\x04\x53\xce\xaf\xd8\x0d\x7f\xc5\x0e\x44\x29\x29\x00\xa8\x6c\x82\x9d\x17\xf1\x0b\x6e\x6c\xd8\x81\xaa\x1f\xa2\x55\xdb\x99\xf2\x4e\xde\xa3\x7d\xe7\x3c\x16\x62\x49\x87\x7e\x84\x56\xa2\x58\xd9\xd8\x79\xb1\x1a\xfa\xd1\xc2\x58\xfc\xd7\x27\x5d\xe8\x59\x25\xc8\x5b\x25\xc8\x65\x54\xc4\xa0\x61\xd0\x9d\xa8\x48\xf9\xc7\xae\xb2\x28\x03\x94\xab\xc9\x50\xdd\x35\xb1\x94\xe4\xda\xc4\x26\x51\xaf\xbc\x67\x55\xb2\x06\x80\x82\xdc\xb4\xb1\x1c\xe1\x10\x37\x36\xc6\x83\xa0\xf1\x0b\xa0\x3c\x0e\xc8\xed\x14\x42\xee\xe1\x93\xb8\xa4\x7d\x8c\x3d\x6f\xaa\xe4\xe1\x3a\x2e\x1a\x8f\xdd\x45\x4f\xf7\x04\x9d\x9e\xc8\x69\x7a\x42\xbf\xe9\xf1\xfc\xce\x98\x30\xec\xf4\x44\xce\x42\x3d\x33\x51\x56\x59\x6b\x53\xae\xb9\x2a\x8b\x74\x2c\x3c\xdc\xcc\x56\xdc\xac\xf3\x8e\x59\xe7\x8d\x59\xaf\xa4\x59\xaf\x5a\xb3\xce\xe1\x2c\x9f\x0a\xa6\x0d\x4b\xce\x4f\x5b\xf2\xe7\xe7\x44\x45\xb4\x5d\x42\x7a\x60\xc7\xb4\xb1\x63\xaa\xb6\x63\xd3\x64\xe4\xdb\xa4\x35\x59\xef\x76\x0d\x73\xa3\x4d\xbc\x35\x13\x5a\x66\x0a\xea\x32\x70\x5c\x5f\x0a\x24\xdb\xb7\x62\x98\x04\x81\xcb\xad\x6e\xb7\x9b\x04\x61\xd8\x94\x26\xba\x34\x8e\x64\xc9\xc5\x1e\xf6\xda\xa2\xd8\xf6\x66\x74\x94\xc6\x65\xf5\xbe\xc9\x5b\x4d\x65\x46\x6b\x0f\xa8\x79\x90\x33\x1c\x0f\x85\xca\xbd\x14\x80\xfd\x8a\x83\xb1\x70\x16\x22\xf4\xb9\xc4\x21\x3e\x82\x2b\x09\xfb\x05\x07\x63\x6d\x43\x95\xe9\x56\x26\x11\x34\x2d\xe7\xcb\x29\xcb\xb9\xc0\x7c\xbf\x39\x2b\xfb\xb2\x95\x7d\xf9\xa3\x43\x45\xa9\xa2\x8c\xce\x1a\x61\xdf\x95\x96\x45\x41\x29\xcd\x80\x9f\x21\x0c\x14\x61\xe0\xe2\x70\x58\x4a\x58\xef\x00\x36\xf0\x8d\xd8\xfd\x82\x6f\x8d\x25\xd2\x91\x85\x24\x46\x30\x54\x93\xbc\x97\x37\x16\x29\x00\xcc\x9d\x57\x61\xea\xe2\x15\x71\xcd\x15\x98\xf8\x2f\x40\x6d\x73\xc9\x0e\xb9\x49\x86\x18\xa2\x7b\xc0\x66\x83\x6f\xac\x74\x5c\xec\x0e\xa6\xb2\xe4\x44\x7c\x7f\x93\xf2\x32\xb1\xec\x76\xad\x51\x94\x4f\xec\x75\x25\x9c\x95\x53\x29\x8b\x72\xb7\x93\x8c\x96\xdc\x37\xb4\xa8\x66\x40\x73\x77\x64\x26\xef\x9f\x63\x26\xcf\xdf\xee\x70\x18\x98\x3a\x37\x71\x79\x63\xe4\x06\x07\xfb\x5c\x28\x8f\x7e\x0c\x85\x81\x37\x1e\xa3\x30\xf0\xf9\xf1\x4e\x29\x1a\xf6\x5d\xc4\x6c\xd1\x33\xc4\x21\x5e\xf4\xa2\xb1\xeb\xca\x50\x13\x30\x12\x06\xee\xc4\x83\xdd\x7d\xb2\x95\xe3\x81\x7f\xa9\x66\x7c\xbb\x9b\x8a\xdd\x71\xe2\x43\x8e\x0e\x55\xbf\x4c\x7c\x81\xd7\x90\xc2\xd7\x73\x67\x64\x2c\x4e\x94\x25\xf1\x50\x4d\x7c\x94\x92\x00\xad\x48\x88\x64\x40\xc4\xd0\x9a\x38\xe8\x86\x5c\x9c\x3f\x38\x6f\xe1\xa3\x72\xdc\x09\x7c\x5c\xd2\x55\x5c\xa7\xd5\x54\xf8\x4f\xa6\x9c\x67\xdf\xe5\xc6\xbc\x9d\x81\x84\xa4\x6a\x85\x28\xd8\xaa\x93\xb2\x65\x61\xff\x82\x90\xad\x65\xe1\x40\xfe\xba\xe3\x0b\x01\xcd\x67\x45\x5b\x38\x15\x6b\xb2\x9d\xd9\x78\x2a\x9b\x64\x70\x27\x66\xa8\xce\xcf\x30\x71\x49\x8b\x05\x87\x01\x9c\x62\x37\x34\x9a\xf8\x82\x3d\x87\x0e\xcb\x9a\xb8\xaa\xdd\x0d\x9f\x4d\x58\xfe\x34\xeb\x9e\x87\x26\xfc\x5c\x29\x86\x85\x81\xe7\xfb\xc3\xa7\xf1\x95\x3f\xc4\xc7\x77\x4b\x85\x70\x4d\xb6\x28\x69\xa2\xbf\x27\xb0\xd6\x53\xb6\x02\x12\xa3\xd6\x5b\x8e\x57\xbb\x25\x03\x33\x7c\x4c\x48\x29\x14\xf2\x5a\x59\xfd\xda\xf6\x3c\x38\xdc\xda\x9e\xf7\xa4\x76\x5e\x4b\x5b\xbe\xde\x1b\x17\x0e\x82\xfc\xd2\x48\x1d\x6c\x75\xec\x2f\xda\x0d\x02\x53\xcd\xb6\x27\x96\x6e\xb7\x13\xd9\x8c\xed\x0c\x48\x16\x57\xc7\x07\x81\x2d\x14\xda\x8a\x12\xb2\x34\x11\xad\xa6\x9c\xf6\x0d\x59\xf7\xd6\xca\xd1\xdd\x11\xed\x09\x05\xce\x8d\x65\x89\xcd\x69\x6b\x59\xe0\x8e\x30\x88\x74\xeb\xd8\x6f\x5a\x2b\xa3\xd5\x6b\x5a\x73\x88\x3c\xae\x18\x9b\xdd\x2e\x54\x1a\x14\x0a\x45\xd9\xed\xc0\x1d\x51\x5e\xed\x82\x90\x3b\x2e\xc3\x84\xdc\x89\xd9\x1f\xc8\x8d\x16\xd4\x0d\xf7\xcc\x0f\x52\x4c\x22\xf5\xa2\x05\xd8\x1e\x6e\x36\x68\xbb\x38\xe0\x6b\x6f\x58\xf6\x1b\xd3\xbf\xc9\x5d\x9b\x47\xb3\x18\x55\xc2\xae\xe9\x59\xd3\x8d\x5b\x9f\x17\x5b\x56\x79\xd1\x46\x08\xc6\xec\x31\xe4\x38\xd0\xdc\x1d\x23\xdf\x41\x61\xb8\xe8\x99\x63\x8e\xa2\x8a\x0b\x50\xca\xb4\x22\xff\x61\xdc\x59\x5f\x08\x48\x61\x55\xb1\xb2\xaa\x18\xb6\x3b\xb1\x78\x73\xac\xd2\x46\x62\x60\x0e\xda\xee\x58\xb7\x73\xc7\xc8\x3b\x94\x39\xc6\xda\x1c\xe3\xdd\x4e\xf8\xe3\x78\xb7\x93\x2e\x38\x86\x82\xa9\x23\x24\xd2\x6b\xc7\x27\xbd\x76\x6c\x78\xed\xbd\x1a\xfc\x73\xf2\xd0\xe8\x35\x15\x44\x23\x60\x67\x10\x30\x8d\x60\xec\x37\xce\x3f\xb6\x2c\x10\x9b\xce\x3f\x25\xd7\x20\x7e\xd2\xbc\xd2\x59\x0d\x62\x38\xe5\x33\x55\xe6\x69\x5a\xcc\x51\x89\x39\xbc\x90\x13\x29\x36\x88\x54\x6c\x10\x9e\x87\x52\xbe\x3f\x78\x9e\xb9\x3d\xfc\xf6\xdf\x7a\x30\x08\xf9\x7e\x54\x5e\xe2\xd0\x99\x61\x77\x32\xc5\x13\x4f\x08\xfc\xf8\x90\x20\x0e\xe2\xae\x3e\x24\x44\x11\x3f\x24\xac\xe0\x90\x9f\x10\x44\x42\x26\x8a\xbc\x10\x61\x67\x8c\x83\x46\x33\xfc\x28\x70\xa2\x61\xad\x32\x00\x27\x83\xfa\xb3\xa2\x4f\x9e\x8a\xeb\x13\x69\xcf\x89\x19\xd7\xef\x76\xf2\xb4\x9e\xeb\x00\x5f\x85\x73\x33\x19\xc3\xb5\x51\x3f\x0e\x26\x8a\x27\x91\x15\x0e\xdc\xa7\xce\x00\x7f\xfe\xc7\xc1\x8d\xa6\x8b\xfd\xd3\x51\x4e\xdf\x88\x70\x9e\x08\x70\xcc\x33\x87\xca\xb2\x2c\xc9\x52\x1c\x3a\x1a\xe1\x1f\x9d\x3b\x8c\x0f\x82\x40\x81\x22\x77\xec\xf2\xf5\x0d\x60\x7b\xfe\x80\xc6\x75\xf7\x5e\x25\x24\x74\xc8\xd4\x49\x14\x48\x15\x14\xe7\xf0\x28\x82\x28\x26\xd5\x2f\x38\x8a\xf4\x91\x40\x1c\x08\x3c\xac\x75\x0f\xa2\x78\x08\x62\x33\xf1\xd0\x2e\xc5\x5f\xff\x2d\x26\x84\x84\x71\x04\x3a\x50\xaf\x65\x5a\xaa\x3d\x32\x87\x01\x84\x46\xb4\x7f\xa4\xf3\xea\xa5\xca\x91\xca\xd7\x4f\xa9\xfc\x71\xd4\xfe\x33\x47\xd9\xbf\xff\xf1\xa3\xec\x35\xa0\x4f\xf1\xc2\x66\xfc\x10\xc8\xbd\x22\x6b\x93\x4a\xec\x17\x3c\x71\x86\x61\x60\xae\xea\x5b\x33\xf3\x9e\xbd\x7a\x15\x21\x46\xdc\x20\xb0\xb2\xe6\x90\x34\x9b\x17\x88\x2d\xa6\x73\x86\x0a\xe3\x0d\xc2\xef\x52\x4b\x25\x31\xea\xaa\x13\x55\x32\x3f\x9c\xcb\xa5\x3a\xcd\x67\x71\x70\x6c\x6c\x92\x62\xf2\x75\x87\x38\xb7\xb5\x77\x3c\xac\x73\x82\xd4\x0a\xde\x94\xba\xc7\xc9\x43\xfd\xaf\xf4\x81\x50\x1c\x03\x39\x44\x4d\xb2\x19\xa8\x2e\x2f\x23\x38\x2c\xa7\xa0\x14\x85\x4a\x93\xdd\x4c\xff\xa8\x7c\x74\xaf\x39\x89\x36\x69\xef\x20\xf4\x5c\x07\x05\x63\xcf\x17\x9e\x2d\xf0\xc2\x21\x76\x5c\xff\x05\x48\xed\x20\x70\x27\xa1\xc8\x8b\x0a\x20\x38\x05\x45\xa3\x47\x6f\x41\x8d\x32\xc8\xe3\x40\x06\xe1\xde\x38\x7e\x8a\x41\x1c\x2b\x9e\x88\x33\x5e\xdd\x84\xbd\x07\x73\xf1\x91\xd3\xda\x58\xb8\x3f\x94\x9b\x78\x52\xa9\x8a\xf3\xbe\x91\x7b\x35\x47\x5d\x01\x69\x81\xbd\x05\x0c\x65\xda\x71\xbd\x05\x82\xb8\x21\xe0\x7e\x2e\xf0\xc2\x57\xaf\xb0\x03\x51\x06\x51\xce\xbb\x38\x6d\x4d\x97\x85\x1d\xd7\x83\xc6\x4d\x47\x35\x4a\xf2\x2c\x89\xb9\x91\x18\x24\x7f\x78\xa6\x15\x18\xc1\x34\xe5\x91\x7d\x05\x28\x9c\xd1\x69\xe8\x79\xa1\x33\xa4\x76\xf7\xd6\xe4\xd3\x33\xef\xce\x3a\x4f\x82\x6c\x3c\xcd\x41\x01\x67\x85\xbc\xf0\xe2\x88\x51\xe8\xf9\xd1\x18\xce\x0a\x5b\xce\x83\xdd\x68\x5a\x0b\x2b\x3e\x79\xab\x6b\x59\xe0\x64\x3b\xd8\xb4\xdf\x75\xa1\xe6\x21\xcf\x00\x3d\xde\xd0\xea\xdc\x57\x7e\x4f\xdd\x05\xef\xf7\x67\xde\x66\x74\x27\x92\x4f\x0c\xce\xcc\x72\xfe\x21\xc6\x33\xb1\x37\x2f\x33\x7e\xc0\x47\x03\xb7\xdf\x43\x88\x0c\x14\x23\xf9\x28\xe8\x60\x9d\x85\xd3\xe9\x15\x64\x90\x0b\x12\x06\x44\x7f\xe6\x9a\x59\x56\x66\x3e\xf2\x10\x1f\x15\xbe\xae\x57\x2b\x5a\xcc\x32\x7a\xdf\xff\xca\xb2\x2a\xd2\x5f\x1a\x4e\x4f\x0d\x1f\x5c\x0b\x68\x75\xe9\x9f\x8d\x64\xf5\xb9\x38\x15\x38\xca\x46\xd7\x0f\x15\xfd\xb8\x5a\x95\xb4\x52\x95\x3f\x45\x82\x1c\x4e\x0f\x86\x38\xb0\xfb\x30\xca\x7c\x20\xa2\x1f\x00\x34\x2f\xa3\xb6\xf3\x13\xcb\xbe\x00\x8f\x62\x99\xa6\x4f\xac\x16\x3c\x7a\x3c\x75\x6a\x3e\xd2\x3e\xfb\x29\xc5\x87\xa8\xed\xb5\x6d\xc5\x7d\x33\xbd\xef\x97\xa0\xe0\xa1\xc0\x7c\xf1\xf2\x65\x93\x24\x1b\x15\x34\x5e\x82\xd6\xdf\xd6\x2a\xcf\xaf\xeb\xa0\x22\x1d\x36\xb4\x9d\x81\x1c\xd5\x50\x5f\x0a\x68\x67\x6e\x59\x07\x5f\x84\x56\x70\x16\x8b\xdb\xe0\x51\xbc\xdd\xa6\x0f\x20\x46\x15\x9c\xca\x16\x50\x41\x28\x6e\xe4\x8f\x59\x81\x8f\xcb\xfc\xf1\x19\x04\x68\xe2\xff\x73\x3a\xee\xd7\x2c\xa5\xe0\x22\x1f\x19\x1f\xf2\x02\xa8\x9f\xa0\x98\x6f\xdb\xb4\x1b\x3f\x4a\x2a\xa3\xa2\xd9\x3b\xc9\x5c\x7d\x72\x89\xda\x07\x9c\xa8\x7d\xfa\xb9\x40\xc5\xa9\xd7\x20\x48\xba\xbe\x26\xc2\x2b\xe0\x6e\x77\x60\x60\xba\x41\x69\xc2\x6e\x07\x32\x75\x77\xf3\xca\xb1\xac\x30\x70\xc7\x22\x03\x3d\x77\x16\x33\x70\xa0\x33\x0e\xca\x9a\x0f\x6e\xa7\xe6\xa8\x23\x40\x08\x91\xc9\x5c\xfb\x45\xef\x60\x80\x0a\xe2\xbc\x2c\x2e\xb3\xf6\xc2\xa8\x09\x06\xb2\x79\xb1\xe8\xb1\x4b\x22\xb6\x96\x19\x1d\xaa\xaf\x61\x47\xab\x22\xdf\xbc\x59\xc7\xc5\x9b\x7c\x49\xf9\x66\x06\x98\x4d\xe4\x53\x83\x33\x30\x7a\xfb\x91\x1b\x8f\xda\x71\xf8\x4e\x63\x31\x68\xec\xa2\x7b\x1e\x01\xcb\x6f\x66\x39\x03\x28\x86\xfb\xd3\x3e\xcd\xb2\x4e\xbb\xba\xbb\x7f\xde\x63\x1b\x28\xe5\xbb\x9f\x43\xd7\xa7\x1f\x59\x8a\x6b\x80\xc1\x60\xda\xbc\xb3\x7c\x86\x1b\xd1\xef\xd1\x6e\x7e\xca\x8d\x88\xea\x1e\xfe\xa4\xc3\x28\x78\x70\x24\x1c\xc6\x69\x4d\x68\xe9\x2e\x88\xfe\xca\x5b\x25\x5e\xe7\x8b\x97\xec\xb2\x78\xa9\xef\x11\xe9\x28\x51\x0b\xfb\x5b\xa5\xc2\xba\xfc\x52\x2c\xf1\x6e\x97\xbf\x92\x51\x4e\x25\xed\x30\x87\xcd\xe3\x21\xb1\xea\x97\xfc\x80\x90\x5f\x92\x0e\x90\x4a\xac\x34\x80\x1c\x53\x03\x28\xe2\x29\xb6\x02\x8c\xef\xf6\x36\x3e\x31\x46\x9d\x2b\xba\x54\x0d\xb1\xa0\x4b\x4d\x5a\x5a\x56\xa9\x27\x55\x6f\x5b\x84\xf6\xe5\xa8\x96\x85\xb2\x67\xe0\x0d\xf9\xc1\xe9\x12\x3b\x70\x58\x43\xc4\x86\x04\xab\x47\x6a\xe6\xcc\x7b\xd1\xae\x15\x89\x2b\x2e\x8f\xa6\x5a\x2f\x1c\x93\xea\xd0\x0b\xc7\x87\x5e\xb8\xe3\x31\x0c\x27\x58\xa1\xb8\xf1\x7e\x5d\x97\x57\xc0\x59\x6e\xba\xbc\x1c\x15\x70\x2a\x5b\x78\x7c\x73\xce\xf3\xf2\x45\x7e\x29\x1e\x8a\x3c\x31\x67\xd5\x38\xde\x97\xf0\x67\x66\xed\x1d\x3f\xad\x6c\x32\x83\xdd\x9d\x35\x87\x7b\x74\xa3\xdd\xe8\xe2\xc4\x71\x5a\x0c\xf8\x2e\xff\x30\xc1\x0f\xe1\x1e\x04\xdc\xe9\x77\xdf\x96\x75\xe6\xd9\xfb\xd3\x5f\xf3\x70\x13\x1e\xa9\x07\xf6\x3c\xd4\xf8\xc1\x13\x79\xf5\x37\x11\xa4\xa3\x2f\xc8\x3d\x38\x7c\xfc\xd7\xdb\xce\xe9\x59\xfa\x3f\x8a\x07\x45\x5c\x22\xe7\x61\x6e\x25\x8c\x7c\x64\x8f\xb6\xa3\x7f\xbd\xfe\x70\x0e\xf4\x9d\x10\xc7\xcd\x53\x20\xdf\x40\x86\x2e\x1c\x01\xa5\x5e\x0e\x3c\x01\xc9\xd7\xe0\x47\x60\x7a\xce\xd7\xec\x26\x38\x07\xf3\x59\xa1\x7a\x0a\xe6\xb5\xc4\x33\xd7\xdf\xe3\x9c\x95\xc7\x7b\xad\x1b\x3f\x02\xfc\xa2\x31\x9a\x1f\xeb\x9c\x85\x7e\xa3\xd1\x3e\x0b\xfa\xab\xe2\xba\xf9\x26\xe7\x1c\xe0\x9f\x8a\xf5\x1f\x02\xfe\x66\xf2\xff\xe1\xd3\xf9\xa9\xff\x36\xf9\x7f\x0a\xf0\x2f\x8d\xb1\x0d\x50\xce\x81\xfe\x01\x78\x1c\xd1\x9a\xdc\xd3\xd0\xbf\x6b\xe8\x06\xf7\x9f\x4f\xe3\xc6\x5d\xdc\x4f\x41\xff\xae\xa1\x6f\x8e\xbf\x87\x39\x37\xe6\x93\x96\xc8\x73\x07\x7c\x10\x03\xb2\x91\xf1\x5e\x58\x84\x5c\x46\x9d\xdc\x41\x05\xa0\xbe\x13\x68\x00\x54\x9d\x6c\x20\xfa\x99\xbf\xe9\x03\xba\x0d\xe4\xd1\x98\x6c\xda\x99\x1a\x19\xb3\x4c\x3b\x73\x22\xfd\x82\x5c\x7d\xc4\x32\x3d\xf9\x71\xc9\x1e\xee\xa1\x88\x2d\x76\xbb\xc7\x3d\xec\xfd\xbf\x00\x00\x00\xff\xff\x22\xb9\xa8\x37\xb7\x48\x00\x00") + +func web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27JsBytes() ([]byte, error) { + return bindataRead( + _web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27Js, + "web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js", + ) +} + +func web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27Js() (*asset, error) { + bytes, err := web_uiAssetsEncodingCdb50fbdab6d4d3fdf574dd784f77d27JsBytes() + if err != nil { + return nil, err + } + + info := bindataFileInfo{name: "web_ui/assets/encoding-cdb50fbdab6d4d3fdf574dd784f77d27.js", size: 18615, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -482,7 +503,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/encoding-indexes-75eea16b259716db4fd162ee283d2ae5.js", size: 529734, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -502,7 +523,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-128-08e1368e84f412f6ad30279d849b1df9.png", size: 11154, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -522,7 +543,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-16x16-672c31374646b24b235b9511857cdade.png", size: 821, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -542,7 +563,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-196x196-57be5a82d3da06c261f9e4eb972a8a3a.png", size: 37174, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -562,7 +583,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-32x32-646753a205c6a6db7f93d0d1ba30bd93.png", size: 2075, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -582,7 +603,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-672c31374646b24b235b9511857cdade.png", size: 821, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -602,7 +623,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon-96x96-6f8f8393df02b51582417746da41b274.png", size: 10171, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -622,7 +643,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(1596828853, 0)} + info := bindataFileInfo{name: "web_ui/assets/favicon.ico", size: 34494, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -642,7 +663,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(1596828853, 0)} + info := bindataFileInfo{name: "web_ui/assets/loading-cylon-pink.svg", size: 983, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -662,7 +683,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-144x144-ac561ffa84c7e8ce1fe68d70f1c16d1d.png", size: 20027, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -682,7 +703,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-150x150-6b13ab220a09a9e72328a3b05d5b9eec.png", size: 64646, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -702,7 +723,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-310x150-ccc673174b188a92f1e78bc25aa6f3f8.png", size: 112362, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -722,7 +743,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-310x310-49242d1935854126c10457d1cdb1762b.png", size: 201893, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -742,7 +763,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/mstile-70x70-08e1368e84f412f6ad30279d849b1df9.png", size: 11154, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -762,7 +783,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(1596828853, 0)} + info := bindataFileInfo{name: "web_ui/assets/safari-pinned-tab.svg", size: 3798, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -782,32 +803,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/vendor-992465b8b230f89d4adce5f016543c4d.css", size: 10682, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } -var _web_uiAssetsVendorD38f8b642cf98384d0f0a8760e75b259Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\xfd\xd9\x76\xdb\x48\x97\x28\x08\xdf\xeb\x29\x48\x9c\xfa\xf1\x45\x98\x5b\x30\x22\x38\x80\x0c\x29\xc4\xe3\xb4\xe5\x2c\xd7\x97\x69\xbb\x64\x67\x66\x65\xf1\xe3\x61\x41\x64\x90\x42\x9a\x02\x98\x00\x48\x59\x49\xb2\x56\x9e\xbf\xfb\xf4\xb8\x56\x3f\x40\xdf\xf4\xb9\xed\xab\x7e\x87\x7a\x93\x93\xfd\x22\xbd\x62\xc0\x44\x82\xb2\x2b\xbb\x75\x21\x02\x81\x98\x87\x3d\xef\x1d\x0f\x41\x38\x8b\x1e\x9c\xeb\xfb\x5b\x11\x5f\xbf\xfd\x91\xcf\xd7\xe1\x34\x0d\xa2\x10\x09\x48\xf1\x76\x1e\xc5\x68\xe3\xc7\x8d\xb8\x11\x84\x8d\x14\x8b\x51\x3c\xe6\xe9\x28\x1e\x9f\xc5\x22\x5d\xc7\x61\x43\xec\xd1\x41\x05\xbb\xdd\x76\x0f\xdb\xd7\xd7\x2f\x3e\xfe\x70\x73\xfd\x81\x6d\xf7\x70\xfd\x4f\x1f\xaf\xdf\xbe\x9a\xbc\xbf\x79\xf7\xf1\xdd\xc7\x9f\xdf\xcb\xc4\x57\x7e\x2a\x58\x93\xec\x61\xf2\xe2\xfd\xfb\xef\xde\xbc\x7c\xf1\xf1\xcd\xbb\xb7\x93\x8f\xd7\xdf\xbf\xff\xee\xc5\xc7\xeb\xc9\x4f\x37\x2f\xde\xbf\xbf\xbe\x61\x4d\x02\x93\x57\xd7\xaf\x5f\xfc\xf0\xdd\xc7\xc9\x8b\x0f\x3f\xbf\x7d\x39\x79\xf7\xcd\x87\xeb\x9b\x1f\xaf\x6f\x3e\xb0\xa6\x0b\x93\x7f\xf8\xc7\x1f\xae\x6f\x7e\x9e\xbc\x79\xfb\xf1\xfa\xdb\x1b\x55\x87\x2a\x92\xd7\xf3\xee\xed\x77\x3f\x4f\xbe\xfd\xee\xcd\xf7\xdf\x5f\xdf\x4c\x5e\xbe\xfb\xfe\xfd\xbb\xb7\xd7\x6f\x3f\xca\xb2\x7b\x7c\x26\x87\xb5\x8c\xfc\x99\x88\x61\x26\xe6\x41\x28\x20\x16\xbf\xae\x83\x58\x7c\x1f\xcd\xd6\xcb\xfc\x2d\xfb\xfd\x25\x81\x78\x1d\x86\x41\xb8\xf8\x28\x92\x34\xe1\x4d\x72\x81\x8a\xb9\xc2\x5b\x6b\x9d\x88\x46\x92\xc6\xc1\x34\xb5\xce\xb2\x0f\x8d\x14\xe1\xad\x6c\x48\xf0\x77\xb7\xbf\x88\x69\xea\x4c\x63\xe1\xa7\x02\x85\xeb\xe5\x12\xe7\x93\xe8\x4c\x26\x7c\x13\x05\xb3\x86\x0b\x33\xb1\x14\xa9\x50\x49\x20\xf6\x6a\xea\xf9\x56\x77\x93\x55\x7a\xcb\xea\x3a\xcd\x6a\x87\xc0\x8e\x86\xc2\xf2\xa7\xfd\x59\xfe\xc8\xcd\x13\xaf\x54\xc2\xcb\x83\xcc\xb6\x43\xca\x47\x63\x88\xf9\x14\x09\xb0\x90\xc9\x8e\x2d\x48\x31\x84\x3c\x75\x96\x22\x5c\xa4\x77\xe7\xe4\x22\xbc\xe2\xee\x45\x78\x7e\x8e\xd3\x51\x38\x76\xc4\xe7\x55\x14\xa7\x09\xca\xc7\x1d\x3b\xf7\xaa\x89\xec\xcb\x1e\xf4\x08\xf9\x36\x8c\x5e\x46\xe1\x7c\x19\x4c\x53\x96\x37\x9f\xea\x99\x0c\x21\x38\x93\xdd\x08\xf5\x8e\x4c\x9d\x3b\x3f\x79\xf7\x10\xbe\x8f\xa3\x95\x88\xd3\x47\x14\x62\xdb\x8e\xeb\x12\x51\xc0\x65\x37\x40\x8c\x82\x31\x17\xfa\x29\x1c\xf3\x78\x14\x8e\xf1\x1e\xee\xfd\x4f\xe2\x95\x98\xfb\xeb\x65\x7a\xad\x7a\x23\x37\x89\xda\x23\x21\x4f\x11\x86\x80\x23\xf9\xe3\xe2\x62\x6d\x23\x39\x23\xe9\x5d\x1c\x3d\x34\x42\xf1\xd0\xb8\x8e\xe3\x28\x46\x96\x1f\x36\xd6\x61\xb2\x5e\xc9\x3a\xc4\xac\xa1\x47\xd8\x78\xf0\x93\x86\x5e\xb0\x19\x34\xc4\xe7\x95\x98\xca\x8f\xff\xa2\x93\x50\x30\x83\xc6\x4c\xac\x12\x30\xd9\xf1\xbf\x34\x82\x30\x49\x85\x3f\x6b\x2c\xa2\x94\x35\xfe\xc5\x6a\x89\x96\xf5\x2f\x0d\x3f\x5e\xac\xef\x45\x98\x26\x8d\x34\x32\xd5\xfd\x8b\x85\xd5\x2e\xf1\xf9\xc8\x32\x0b\x61\x81\x65\x26\xd4\x02\x4b\x57\x68\x8d\x8b\x6e\x27\xf2\x64\x43\x0c\xa1\xec\x7c\x90\x38\xeb\x75\x30\xe3\x41\xab\x05\xea\x2d\x98\x71\xa1\x9f\x64\x87\x78\x33\x5b\x4d\x39\xa9\xfa\x69\xe8\xb3\x54\xe7\xd0\x75\xf3\xad\x69\x8d\x6d\xf7\x7b\xfd\x61\xea\x2f\x97\xb7\xfe\xf4\x13\x8f\xf5\xfb\x9d\x9f\xe8\x49\x4d\x5e\x24\xaf\xc4\x8a\x37\x89\x69\x2c\x79\xb1\x0c\xfc\x84\x87\xfa\x35\x16\xc1\x3c\x10\x33\x2e\x67\xf3\x45\x1c\xfb\x8f\x28\x6b\x1d\xeb\x0c\x49\xea\xa7\x82\x5b\xa1\x78\xb0\xf6\xf9\x78\xd6\x08\x6f\x8b\xb7\xa5\x5e\x14\x33\x92\x22\x7d\xaa\x47\x5d\x6c\xe1\x80\x87\x23\x31\xde\xed\xc2\x91\x68\x59\xcf\x83\x70\x26\x3e\x5b\xe3\x8b\xc0\xb6\x83\xac\x5b\x17\x58\xe6\x09\x9c\x60\xa6\xb2\xc9\x87\x22\x67\xb6\x87\x83\xdd\xae\x0a\x31\x8f\x36\xc4\xcb\x68\xbd\x9c\x35\xc2\x28\x6d\xcc\x83\x30\xdf\x10\xd9\x92\x06\xf7\x66\xa3\xcc\xe3\xe8\x5e\xa6\xa6\x2d\x4b\xae\xa9\xaa\x0c\x62\xdb\xb6\x56\x22\x9c\x05\xe1\xc2\x6a\x72\x1e\xe8\x19\xb0\x6d\x6b\x1e\x84\xfe\x32\xf8\x4d\xcc\x2a\xc9\x28\x70\x64\x1b\xaf\xc4\x2a\x41\x31\x86\xd8\x59\xad\x93\x3b\x14\x60\x0c\x41\x31\x13\x73\xdd\xcf\x60\x8e\x2c\x47\x96\x16\xce\xf4\xce\x8f\x5f\xa4\xc8\xc5\x38\x03\x48\x67\x39\xdc\xe7\xc2\x49\x56\xcb\x20\x45\xd6\x73\x4b\x9f\xee\xe2\xd5\x49\x96\xc1\x54\x20\x17\xce\x89\x3c\x20\x2e\x44\x3c\xdb\x24\x17\xc1\x65\x74\x11\xb4\x5a\xfa\xcc\xfa\x3c\x1e\x05\xe3\x33\xd5\xa4\x63\x71\xce\x7d\xd5\xbe\xcb\x39\x0f\xb3\x15\x3e\x9e\x37\x3f\x94\x93\xe6\x4f\xa7\x22\x49\x1a\x2b\x3f\x16\x61\x9a\xcd\x5e\x34\x6f\xc4\x51\x94\x5a\xf8\x2c\x74\x56\xd1\x0a\xe1\xbd\x58\x26\xc2\x8c\x49\xd5\x3f\x8d\xc2\x34\x08\xd7\x42\x66\x90\x93\xe0\xe3\xfd\xde\x8c\x2e\x74\x7e\x89\x82\x50\x8d\xa0\x98\x95\x99\xdc\x37\x3a\x43\x13\x35\xe5\xd6\xb0\xed\x66\x65\x6f\xe0\x7d\xe2\xac\xe2\x28\x8d\xd2\xc7\x95\x70\x8e\xe0\x45\x01\x27\x33\x88\x5f\x3a\x23\x19\x84\x3b\x93\x70\x9f\x73\x2e\x76\x3b\x2b\x52\x08\xc1\x6a\x72\x59\x5f\x34\x6f\xa8\x65\x35\x75\x94\x52\x77\x3b\x8d\x19\xd4\x4a\xcd\x74\x8b\xbb\x5d\xd3\xa0\x93\x20\xb9\xfe\x9c\x8a\x30\x09\x6e\x97\x02\x09\xbc\xdb\xa1\x3c\x13\x17\x78\x0f\xe5\x2e\x9b\x3e\x94\x3b\x2a\x27\xac\xd8\x4a\x9c\xf3\xe2\x98\xed\x76\x96\x3c\x8f\x8f\x72\xeb\x55\x3e\x64\x9b\xa4\x6e\x78\x1a\x7e\x3b\x0f\xb1\xbf\xd2\xd8\x23\xb1\x6d\x54\x05\x09\xc7\x59\x90\x39\xae\x55\xd8\x81\x71\x01\x14\x1e\x91\x46\xd7\x66\x4e\xb3\x2c\x8e\xbf\x5a\x2d\x1f\x55\xf1\x0a\x00\xc9\x11\x4c\x39\xd1\xec\x33\xee\x56\x40\x49\x31\xf8\x5a\x48\x65\xdb\x7a\xf2\xf5\x92\xa1\x9a\x21\x73\x81\x0d\xd6\x3a\xde\x12\xb6\xad\x0b\x1c\xa6\x23\x0c\x35\x35\x55\x17\x6b\x1d\x26\x42\x94\x97\xea\x10\x00\x9e\x04\xc1\xd5\x7a\xd4\xf4\x1d\x2e\xb9\x99\x12\x79\xfa\x4b\xeb\x5a\x69\x22\x5f\xfb\xb3\x34\x7e\xdc\x56\xc0\xb3\x7a\x99\x98\x75\x81\xc3\x42\xb2\xde\xbd\x9a\xd6\xe5\xe3\xf6\xc4\x16\xca\x36\x85\x29\x26\xe4\x81\x17\x33\x0b\x1f\x76\x7e\x72\xd4\xfb\x0c\x2e\x99\x9d\x90\xad\xad\x06\x44\x18\x52\xee\x5e\xa4\x97\x22\x03\x42\x69\x06\x80\x62\x2e\x46\xe9\xf8\x4c\xfe\xe3\x71\x36\xe1\xc3\xfc\x89\x1d\x52\x22\x08\xef\x73\x02\xb7\xd2\xa3\x0c\xbc\x56\xa8\x22\x39\xa5\x72\x49\xf8\xe9\xe9\xcc\x80\xf8\x59\x41\x41\xe5\x48\x16\x62\xee\x5e\xc4\x97\x19\xae\xbb\x88\xb3\x5e\x87\x8a\xd4\x86\xa0\x32\x56\x49\x81\xe7\xcb\x6d\x88\x46\xdd\x79\xf3\xb6\x3f\xcb\xd1\xbf\x84\xaf\x43\x54\x8f\x82\x5d\x08\xf2\x3d\x5c\xb3\x1b\x31\xcb\xc9\x09\x55\xcb\x61\x66\xff\x93\xb8\xd1\xdf\x11\x66\x19\x95\x51\x9b\x53\xf7\x2d\xc8\xb6\xea\x14\xcd\x51\x98\xd1\x1a\x38\x7b\x00\x71\xb4\xf8\xa5\x26\x4e\xc0\x56\x09\x32\x78\x99\x3e\xcc\xe8\x4a\xd3\xb1\x39\x4a\x41\x60\xbc\xcf\xc1\x41\x0e\x1a\x53\x48\x4d\x7f\xde\x28\x7a\x47\x4e\x4f\x5d\x4d\xb3\xbc\x0e\x48\xf7\x80\x34\xc9\x55\x61\x91\x24\x49\x51\x90\x13\x67\x81\x6d\xab\xad\x50\x60\xe5\xdd\x0e\xe5\x64\x9b\x59\xe1\x4b\x6a\xdb\xd1\x51\x2a\x06\x45\xf3\x48\xea\x43\xd3\x3e\x12\x9a\xc7\xb2\xab\x7c\x34\xc6\x20\xab\xe7\xb1\xa2\x0b\xfd\x70\x2a\x51\xc3\x72\x28\xb1\x65\x82\x62\x35\x11\x10\x43\xd3\xc5\x4c\x27\x69\x0a\xaf\x49\x30\xde\xe3\x63\xb8\xaf\xf0\xbf\x3e\x16\xba\xd3\x73\xd4\x8c\x77\xbb\x6c\x0f\xc7\x15\x38\x8f\x62\x9e\xd5\x39\x1a\xc3\x1a\x14\xe7\x82\x0f\xa1\x60\x0a\x71\x0d\x48\xd5\x7d\x86\x78\x6f\x78\x16\xc7\x57\xe4\x5e\xb5\x23\x66\xaa\xa9\x44\xdb\x07\x53\x32\x34\xf4\x71\x0a\xb2\x0b\x92\xb4\xd3\x03\x94\x4f\xfb\x82\x9b\x71\x44\x98\xc6\x81\xc8\x19\x98\x5f\x12\x67\x22\xfc\x4f\x93\x44\x88\x90\x87\xa5\x7c\x72\x95\x67\xa5\xf7\x03\x20\x2b\xf0\x56\x73\x34\x2a\x1d\x5b\x72\x02\x75\x1e\x54\x69\x6e\xba\x14\x7e\x5c\xde\x93\x5f\xd9\x13\xc5\x48\xa4\xb2\x2e\x33\x2e\x6b\x1e\x45\x16\xa0\x52\x4d\x7b\x8c\xcb\x1f\x9f\xdf\xfa\xb1\x25\xe7\xfd\xa9\x3c\x7e\x32\x9b\x5b\x30\xca\x0e\x61\x99\xfa\xcf\x8e\x70\xb9\x02\xb3\x69\x15\x8f\x54\x34\x22\xb9\xa6\xd2\xdb\x71\x3f\x7e\x53\xfd\x28\xaf\xa3\xee\xfe\x41\xc6\x5f\xd7\xbf\x59\x4f\xe5\x2a\x27\x82\x29\xf1\xd9\xaa\x1b\xb4\xc9\xe2\xe8\x2a\x2d\x47\xf7\xc1\x72\xcc\x78\x55\x42\x2c\x7f\x9d\xe7\x32\xe7\xd3\x73\x74\xef\x07\xa1\xa9\x53\x15\x3b\x95\x3b\x47\x00\x2a\x67\x3e\x91\xdb\x3d\xce\xd6\xbf\xfa\xe5\x20\x59\x35\x93\xa7\x99\xbd\x53\xcc\xea\xe1\x1e\x42\x18\x32\x32\x90\xe7\x04\x9f\xae\xd9\xb6\x8f\xbe\xe8\xf5\xb5\xed\xea\xd1\xb3\x6d\x74\x70\x16\xb7\x87\x6c\x7f\x45\x60\xb0\xc7\x7b\xac\x50\x02\x86\x9c\xf8\x95\x27\x4c\x31\x84\x79\x4a\x80\x7c\x48\x14\x66\x6b\xc6\x23\x7f\xac\x9f\x52\xf5\x24\x01\xc7\x9a\x17\xa4\x6a\xde\x3f\xd3\x9c\x6d\x9b\x07\x05\x57\x12\xdb\x5e\x67\x14\xe3\x1a\xf9\x12\x46\xc9\xf4\x28\x4b\x8b\x4c\x9a\x92\xc6\xf0\x63\xf2\xbf\xcc\x33\xfd\xc5\x6a\xf9\x2d\xeb\x2f\x16\x3e\xd3\xcc\xc2\xd2\x99\x46\x33\xc1\xad\xef\xdf\xbd\xfa\xe1\xbb\xeb\xc9\xdb\x77\x1f\x27\xaf\xdf\xfd\xf0\xf6\x95\x05\x4b\xc5\x13\x4f\xb9\xec\x7b\x85\x38\x3a\x93\x63\x18\xb9\x63\x45\x43\xa2\x69\x36\x67\x50\x11\xe5\x64\xac\x1d\x52\x99\xc9\x58\xf1\x89\x02\xef\x31\x4c\xa1\x28\x92\x71\xd1\x19\xa5\x20\xdb\xca\x69\xb9\x0c\xcd\x47\x5f\x33\x51\xe0\x73\xf7\xc2\xbf\xcc\x58\xa1\x0b\xbf\xd5\xc2\x01\x0a\xe5\x6c\xe7\x6c\xe6\x1e\x6d\x09\x1b\x9d\x14\x38\x09\x44\xf5\x1c\xa6\x10\x73\x94\x72\x81\x48\x17\x63\xdb\x4e\x9d\xc9\x44\x24\x9a\xd0\x1e\xa6\x6c\x6b\x10\x20\x4b\xf7\x67\x71\x86\x0d\x9d\xc9\xad\x7f\x2b\x96\xef\xa3\xe5\xe3\x3c\x58\x2e\x6d\xdb\x5a\x87\x46\x56\x51\xf0\x21\xd3\x28\x4c\x22\xb9\xfb\xcc\x83\xf3\xe0\xc7\x61\xf5\x0d\x59\xff\x51\x55\xf4\x7c\x65\x6a\x6a\x04\x89\x96\xb0\xc9\x15\x8c\x45\x23\xbd\xf3\xc3\x46\x14\x4e\x45\x23\xd2\xb4\x79\x63\xe5\x2f\x84\xd3\xf8\x28\x1f\xe5\x5b\x1c\xdd\xfa\xb7\xcb\x47\xc5\x2c\xcf\x44\x12\xc4\xfe\xed\x52\x3c\x0f\xc2\x54\x84\xb2\x12\x5f\x6e\x05\xff\xb1\x71\xe7\x6f\x84\xea\x90\xf8\x75\x2d\xc2\xa9\x48\x1a\xc1\xbc\x31\x0b\xe6\x73\xa1\x78\xc4\x8d\x88\x93\x20\x0a\x13\xc9\x25\xa6\x77\xa2\x91\x75\x27\x69\xf8\xb1\x68\x48\x9e\x21\x10\xb3\x86\x2e\x9c\x06\x92\x4e\x75\x1a\x6f\xe6\x8d\xc7\x68\xdd\x98\x45\x8d\x50\x88\x59\x23\x8d\x54\xc7\x2b\xc5\x0f\xc6\x00\x0d\x39\xff\x07\x23\x7e\x5e\x08\xae\x72\x09\x4e\x1a\x35\x6e\x1f\x57\x7e\x92\xa8\xda\xe4\x44\x05\xe1\xc2\x91\xc0\xe0\xc4\x02\xf0\xa6\xbb\x87\x2d\xe9\x32\xd2\x05\xca\xe8\x7e\x0c\xf4\xc9\x95\x6f\x63\x10\xa8\x2b\xff\x75\xe4\x3f\x42\xd4\x7f\x57\xfd\x57\xdf\x08\x55\xff\xd5\x57\x4f\xfe\xeb\xcb\x7f\x3d\xf9\x6f\x20\xff\xb5\xdd\x9e\xfe\xf1\xb0\x6c\xd8\x65\xc4\x05\x42\x18\x21\x40\x28\x23\x14\x48\x9b\x91\x36\x90\x0e\x23\x1d\x68\xb3\x36\xb4\xdd\x1e\x6b\xbb\x3d\x68\xbb\x1e\x6b\xbb\x1e\x74\x58\x07\xba\xac\x0b\x3d\xd6\x03\x8f\x79\xd0\x67\x7d\x18\xb0\xc1\x7e\x0c\xed\x72\xc7\x25\xb2\x17\x88\x7a\xaa\x75\xaa\xbb\x43\x49\x4f\xff\x74\xf5\x8f\xfe\x46\x5d\xfd\x63\x12\x07\xfa\xc7\xd3\x89\xe6\x47\x97\xa3\x54\xff\xb4\xf5\x0f\xd1\x39\xcd\x9b\x6e\x81\x9a\x3a\x55\x2d\xa4\xaf\xe7\xa5\xaf\xa7\xa4\xaf\x0b\xb4\xcd\x8f\x6e\xd6\x35\xb5\x98\x1f\xdd\x82\x6b\x7e\x74\xd5\xae\xae\xda\xed\x62\x79\xf2\xf4\xf4\x51\x57\xf7\xcc\xd5\xed\xb9\xa6\xd7\xa6\x3d\xbd\x34\xfd\xae\xfe\xe9\xe9\x1f\x4f\xff\xf4\xf5\x8f\xee\xe0\x40\x17\x18\xe8\x55\x1c\xe8\x7e\x0e\xf4\x3a\x0e\x74\x2d\x03\x5d\xcb\x40\xd7\x32\xd0\xb5\x0c\x74\x2d\x03\xdd\xac\xab\x87\xd2\xd3\x33\xe8\xe9\x37\x4f\x77\xb0\xa7\x3b\xd8\x33\x59\xf4\x30\x7b\x7a\x0c\x1e\x51\x23\xf2\xf4\x30\xbb\x3a\xb1\xab\xcb\x75\x75\xb9\xae\x6e\xa1\xa7\x27\xa4\xa7\x73\xf6\xf4\x84\xf4\x4c\x0b\x3a\x8b\xa7\xb3\x78\xfa\x9b\x67\xfa\xa2\x7b\xad\xdf\x88\xee\x12\xc9\x12\xf5\x14\xe8\x1d\x42\x74\xd5\x44\x77\x90\xf4\x4c\xa2\x29\xa7\x13\x3d\x93\x45\xcf\x99\x6e\x9d\x74\x4d\x9d\x7a\xea\xba\x6a\x8d\x88\x67\xb2\xe8\x16\x74\xe7\x89\x1e\x34\xe9\xea\x69\xed\x9a\x37\x9d\x45\x8f\x96\xe8\xce\x13\x33\xbe\x8e\x1e\x5f\xc7\xcc\x84\x49\xd4\xa3\xed\xea\xf9\xec\xea\xf9\xec\xea\xb1\x77\xf5\xf4\xb4\xcd\x76\x33\xd3\xaa\x67\x42\xaf\x34\xd5\x2b\x4d\xf5\xd8\xa9\xde\x9f\x54\x6f\x14\xaa\xb7\x06\xed\x9b\x6f\xba\x78\xbf\xa7\xd6\x48\x6f\x29\xaa\x37\x11\x35\x3b\x59\xef\x6b\xda\x36\xcd\xea\x2c\x6d\x5d\x59\x5b\xaf\x66\xdb\x8c\x41\x37\xd4\xd6\x2d\xb4\x75\x0b\x1d\x5d\x4b\x47\xd7\xd2\xd1\xb5\x74\xcc\x30\x75\xf1\x4e\x17\x43\x5a\x48\x3f\x50\x97\x2a\xa0\xd1\xed\x30\xd2\xed\x00\xe9\x4a\xb0\xd5\x05\xd2\xed\x31\xd2\xed\x01\xe9\x7a\x8c\x74\x3d\x20\xdd\x3e\x23\xdd\x3e\x90\xee\x80\x91\xee\x00\x48\xcf\x65\xa4\xe7\x02\xe9\x11\x46\x7a\x04\x48\x8f\x32\xd2\xa3\x40\x7a\x6d\x46\x7a\x6d\x20\xbd\x0e\x23\xbd\x0e\x90\x5e\x97\x91\x5e\x17\x48\xaf\xc7\x48\xaf\x07\xa4\xe7\x31\xd2\xf3\x80\xf4\xfa\x8c\xf4\xfa\x40\x7a\x03\x46\x7a\x03\x20\x9e\xcb\x88\xe7\x02\xf1\x08\x23\x1e\x01\xe2\x51\x46\x3c\x0a\xc4\x6b\x33\xe2\xb5\x81\x78\x1d\x46\xbc\x0e\x10\xaf\xcb\x88\xd7\x05\xe2\xf5\x18\xf1\x7a\x40\x3c\x8f\x11\xcf\x03\xe2\xf5\x19\xf1\xfa\x40\xbc\x01\x23\xde\x00\x48\xdf\x65\xa4\xef\x02\xe9\x13\x46\xfa\x04\x48\x9f\x32\xd2\xa7\x40\xfa\x6d\x46\xfa\x6d\x20\xfd\x0e\x23\xfd\x0e\x90\x7e\x97\x91\x7e\x17\x48\xbf\xc7\x48\xbf\x07\xa4\xef\x31\xd2\xf7\x80\xf4\xfb\x8c\xf4\xfb\x40\xfa\x03\x46\xfa\x03\x20\x03\x97\x91\x81\x0b\x64\x40\x18\x19\x10\x20\x03\xca\xc8\x80\x02\x19\xb4\x19\x19\xb4\x81\x0c\x3a\x8c\x0c\x3a\x40\x06\x5d\x46\x06\x5d\x20\x83\x1e\x23\x83\x1e\x90\x81\xc7\xc8\xc0\x03\x32\xe8\x33\x32\xe8\x03\x19\x0c\x18\x19\x0c\x80\xba\x2e\xa3\xae\x0b\xd4\x25\x8c\xba\x04\xa8\x4b\x19\x75\x29\x50\xb7\xcd\xa8\xdb\x06\xea\x76\x18\x75\x3b\x40\xdd\x2e\xa3\x6e\x17\xa8\xdb\x63\xd4\xed\x01\x75\x3d\x46\x5d\x0f\xa8\xdb\x67\xd4\xed\x03\x75\x07\x8c\xba\x03\xa0\xc4\x65\x94\xb8\x40\x09\x61\x94\x10\xa0\x84\x32\x4a\x28\x50\xd2\x66\x94\xb4\x81\x92\x0e\xa3\xa4\x03\x94\x74\x19\x95\x78\x89\xf4\x18\x25\x3d\xa0\xc4\x63\x94\x78\x40\x49\x9f\x51\xd2\x07\x4a\x06\x8c\x92\x01\x50\xea\x32\x4a\x5d\xa0\x94\x30\x4a\x09\x50\x4a\x19\xa5\x14\x28\x6d\x33\x4a\xdb\x40\x69\x87\x51\xda\x01\x4a\xbb\x8c\xd2\x2e\x50\xda\x63\x94\xf6\x80\x52\x8f\x51\xea\x01\xa5\x7d\x46\x69\x1f\x28\x1d\x30\x4a\x07\x40\xdb\x2e\xa3\x6d\x17\x68\x9b\x30\xda\x26\x40\xdb\x94\xd1\x36\x05\xda\x6e\x33\xda\x6e\x03\x6d\x77\x18\x6d\x77\x80\xb6\xbb\x8c\xb6\xbb\x40\xdb\x3d\x46\xdb\x3d\xa0\x6d\x8f\xd1\xb6\x07\xb4\xdd\x67\xb4\xdd\x07\xda\x1e\x30\xda\x1e\x00\xed\xb8\x8c\x76\x5c\xa0\x1d\xc2\x68\x87\x00\xed\x50\x46\x3b\x14\x68\xa7\xcd\x68\xa7\x0d\xb4\xd3\x61\xb4\xd3\x01\xda\xe9\x32\xda\xe9\x02\xed\xf4\x18\xed\xf4\x80\x76\x3c\x46\x3b\x1e\xd0\x4e\x9f\xd1\x4e\x1f\x68\x67\xc0\x68\x67\x00\xb4\xeb\x32\xda\x75\x81\x76\x09\xa3\x5d\x02\xb4\x4b\x19\xed\x52\xa0\xdd\x36\xa3\xdd\x36\xd0\x6e\x87\xd1\x6e\x07\x68\xb7\xcb\x68\xb7\x0b\xb4\xdb\x63\xb4\xdb\x03\xda\xf5\x18\xed\x7a\x40\xbb\x7d\x46\xbb\x7d\xa0\xdd\x01\xa3\xdd\x01\xd0\x9e\xcb\x68\xcf\x05\xda\x23\x8c\xf6\x08\xd0\x1e\x65\xb4\x47\x81\xf6\xda\x8c\xf6\xda\x40\x7b\x1d\x46\x7b\x1d\xa0\xbd\x2e\xa3\xbd\x2e\xd0\x5e\x8f\xd1\x5e\x0f\x68\xcf\x63\xb4\xe7\x01\xed\xf5\x19\xed\xf5\x81\xf6\x06\x8c\xf6\x06\x40\x3d\x97\x51\xcf\x05\xea\x11\x46\x3d\x02\xd4\xa3\x8c\x7a\x14\xa8\xd7\x66\xd4\x6b\x03\xf5\x3a\x8c\x7a\x1d\xa0\x5e\x97\x51\xaf\x0b\xd4\xeb\x31\xea\xf5\x80\x7a\x1e\xa3\x9e\x07\xd4\xeb\x33\xea\xf5\x81\x7a\x03\x46\xbd\x01\xd0\xbe\xcb\x68\xdf\x05\xda\x27\x8c\xf6\x09\xd0\x3e\x65\xb4\x4f\x81\xf6\xdb\x8c\xf6\xdb\x40\xfb\x1d\x46\xfb\x1d\xa0\xfd\x2e\xa3\xfd\x2e\xd0\x7e\x8f\xd1\x7e\x0f\x68\xdf\x63\xb4\xef\x01\xed\xf7\x19\xed\xf7\x81\xf6\x07\x8c\xf6\x07\x40\x07\x2e\xa3\x03\x17\xe8\x80\x30\x3a\x20\xd0\xa5\xac\x2b\x29\x9f\x4e\x0d\x01\x21\x71\xe2\x01\x04\x72\xb4\xe8\x64\xbe\xf4\xd3\xef\xfd\xd5\x1e\xb6\x74\x40\x19\x1d\xd0\xbc\x9e\x6e\x5d\x3d\xed\x53\xf5\x04\xe1\x74\xb9\x9e\x89\x44\x55\xd4\x66\x74\xd0\xce\x2b\xea\xd5\x55\xd4\x39\xae\xc8\xc8\xe7\x8d\x3c\x40\x55\xd4\x61\x74\xd0\xc9\x2b\xf2\xea\x2a\x3a\x86\xad\x59\x45\x0b\x91\x96\x14\x9a\xaf\x44\x32\x8d\x83\x55\x1a\xc5\xba\xea\x2e\xa3\x83\x6e\x5e\x75\xbf\xae\xea\xde\xc9\xaa\x37\xfe\x72\x6d\xba\xd8\x63\x74\xd0\xcb\xeb\x19\x1c\xd6\x73\xc8\x72\x68\xb4\x46\x25\x05\x72\x58\xf7\xfb\x38\xba\x0f\x12\x25\x30\x95\x14\xb6\xac\x3d\x3b\xb2\x03\x8f\xd1\x81\x97\xb7\x42\xdc\xba\xee\xf6\x8f\xab\xfc\x90\xc6\x92\x72\x5e\xf9\xb3\xeb\x70\xa6\xba\xdb\x67\x74\xd0\x2f\x2a\x22\x75\x15\x0d\x9e\xaa\xe8\x43\xea\xc7\xa9\xaa\x6a\xc0\xe8\x60\x50\x54\x45\x8f\xab\x6a\x4b\xba\xf0\x44\x55\x69\x1c\xdc\xdf\x04\x8b\x3b\x59\x57\xdb\x25\xac\xed\x16\x5b\x98\xd4\x10\xc1\x6d\x49\x9f\x3d\x51\xd7\x77\x62\xae\xab\x72\x59\xdb\x75\x8b\xaa\x6a\x8e\x43\xdb\x3d\x38\x0e\xa4\x4b\xb0\x33\x47\x96\x9f\x3c\x86\xd3\x37\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\x59\x2c\xa3\x5b\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\x57\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\x9f\x6c\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\xbf\x15\x71\xc1\xff\x4f\x26\xc2\xb6\xd1\x64\x22\x78\x8c\xcd\x80\x8e\x8e\x5a\x36\x20\xd2\xab\x1f\x10\xa4\x10\xaa\x41\xc9\x31\x41\xae\xa5\x4a\x0b\x15\x6e\xf2\x10\xa4\xd3\x3b\x14\xe2\xed\xd4\x4f\x44\x83\x30\xf3\x25\xaf\x23\xce\x25\x1d\x42\x8b\x43\x52\x88\xf1\xfe\x4c\xe5\xa6\xc7\xb9\x65\x7b\x47\xf9\x21\xcc\x4a\xb4\xeb\x4a\x40\x50\x5b\x06\x82\x42\x1b\x5b\x11\xa3\x9a\x9c\x46\xaf\x07\xb9\x3c\x58\x29\x07\xb6\x44\xd2\x80\x92\x1d\x3e\x82\x18\xc5\x0c\x35\x25\x58\xc2\x08\x1d\x57\xeb\x35\x33\x1b\x1c\x2d\xdc\xc8\x8d\x43\xb6\x7b\xb0\x7c\x0b\xb6\x0b\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\x59\x34\x55\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\x14\xe6\x30\xe3\xc2\x4e\x9c\xd7\x70\xa7\x7e\xbf\x85\x95\xfa\xfd\x00\xf7\xea\xf7\x3d\x6c\xd4\xef\x37\xf0\xa8\x7e\x7f\x82\x05\xbf\x1b\x86\x2c\x1c\xa5\xe3\xdd\x0e\xc9\x1f\xbe\xdd\x63\xb8\xe5\x8b\x42\xb1\x03\x13\x7e\x37\x8c\xd9\x6a\x18\x8f\xd2\x31\x43\xb1\xca\xbb\xdd\xe3\x22\x87\x52\x92\x2d\x1b\x41\xd8\xb8\xb3\x6d\xb4\xe6\x29\x86\x35\x46\x53\xde\x9c\xd9\xf6\x24\x53\xc9\x36\x39\x9f\x8c\x96\x63\x6c\xdb\x3e\x5a\xc0\x12\xef\x76\x68\xce\xa7\x43\x99\xc6\xd6\xa3\xe5\x18\x16\xa3\xe5\x98\xdf\xd5\x2a\xd5\x65\xa6\xa1\xcc\xc4\x36\xb6\x3d\x1d\x06\x68\x0e\x31\x66\x8f\xb6\x2d\x3f\x70\x3e\x1f\x96\x17\x43\x6b\xeb\x0a\xe5\x90\x96\x94\x06\x73\x25\x44\x2d\xeb\x63\x04\xde\x9a\x33\x77\xa4\xda\xd1\x47\xd0\xcd\x8e\x48\x28\x1e\x1a\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\x8e\xd9\x7d\x79\x92\x72\x28\x35\x1f\x06\xe8\xb5\x49\x55\x67\x17\xe6\x98\xcd\xe1\xde\xb6\x11\x5a\x38\x9b\x20\x4e\xd7\xfe\x72\xb7\x2b\x9e\xe5\x52\x63\x39\x81\x73\x90\x9b\xe1\xc6\xb6\x6f\x6d\xbb\x79\x3b\x5a\x8e\x6d\x3b\x42\xb7\x20\x2b\xc0\x78\x7f\x96\x38\xaf\x39\x81\xc4\xf9\x96\x53\x48\x9c\x0f\xbc\x03\x89\xf3\x9e\xf7\x21\x71\xbe\xe1\xa4\x07\x89\xf3\x13\x6f\xcb\x2f\x3f\xf0\x9e\xfc\x74\xc3\x09\xed\x97\x30\x52\x92\xa3\x21\x22\x79\x21\x30\x47\x41\xd2\xd5\x20\xb9\x08\x05\x21\x8e\x70\x6e\xfd\x41\x4b\xe3\xc7\xcc\xe8\xa3\x29\x10\xde\x4f\x7d\xb9\x7c\xb9\x52\xaa\xe9\xee\x0d\xc6\xa1\x47\x98\xf7\x10\xf0\xd7\x09\x4d\xb5\x69\xa4\x6d\x1b\x13\xc9\xef\xfd\xf4\x8e\x73\xf9\x7f\xa8\x53\x58\x5d\xa1\x44\x2c\xe7\xb6\x2d\xff\x97\x0b\xc8\x77\x96\x2d\x07\xb2\x4a\x06\x0e\x16\x46\xb8\x0e\xc7\x2c\x14\x8e\x59\xe4\x38\x86\x1e\xe1\x7a\x63\x5d\xb8\x3f\xb0\x96\x3b\x81\x6f\x0a\xf5\xaa\x86\xe4\x32\x29\x9b\x9d\x23\x3a\x20\x87\x3f\x03\x0d\x7f\xda\x6e\x19\xd6\x09\x44\x5d\x3c\xac\x40\x9d\xa0\x54\xfd\x5c\xa3\x37\x44\x20\xc0\x78\xcf\x8e\x34\x57\x66\xcf\x2b\x65\x3e\x68\xfc\x2c\xb9\x61\x90\xbc\xe2\x00\xda\x92\x66\x92\x9d\x3a\x22\x12\xaa\x58\xc2\xc5\xb6\xfd\x27\xb0\x85\x40\x94\x60\x64\xcd\x82\x8d\x85\xbf\x1a\x6f\xe8\xee\x49\xd6\x1a\x72\x1c\x72\x44\x4a\x3c\x85\x0b\x8e\xd5\x44\xc3\x70\xbd\x5c\x36\x39\x17\xac\xe6\xec\x66\x84\x12\x3d\xa0\x2b\x32\x6d\xb5\x42\x09\x9e\x46\x09\xd4\xd3\x28\xa1\x4d\x24\x4a\xa8\x1d\xf4\x59\xec\xcc\xcd\xa2\xd5\x7e\x3f\x5a\xa2\x60\x8e\x64\xe7\x21\xe5\x11\x4a\xa1\xe9\x62\x90\xe4\x06\x04\xb8\x38\x70\x0d\xdf\x64\x36\x87\x2e\xc1\xdb\xbd\xa4\x13\x17\x22\xb5\x82\xb0\x11\xef\x76\x56\x62\x1e\x8f\x48\x36\xeb\x85\x32\x0a\x8b\x62\x4d\xb6\xe5\xd6\x96\x05\xd9\x66\x29\xa6\x46\x95\xb6\x6d\x64\xec\x3e\x54\x1a\xd6\x3b\x86\x78\x8c\x78\x60\x16\x46\xf2\xb8\xd0\x26\xac\x4d\xf6\x63\xb9\x7f\xbe\x62\x61\x8a\xf3\xb0\x15\xe1\xfa\x5e\x28\x55\x05\x6b\x22\x62\x0b\x0c\xd3\x28\x9c\x07\x8b\x75\x96\x46\x65\xda\x43\x1c\xa4\xe6\xbd\x23\xdf\x55\x67\x58\x9a\x01\x98\xf6\x53\x24\xc5\xc9\x13\x99\x13\xb5\x39\xd5\x97\x99\xc8\x4a\xfc\x54\x07\xd6\x51\xc8\x85\x93\x46\x9a\xd7\x90\x27\x20\x46\x01\x0f\xcd\x89\xc6\x79\x45\xaa\x82\x13\xa5\x55\xcf\xdf\xcd\xbf\x50\xb8\xf9\xff\xae\xf9\xa3\x25\x7f\xe9\x87\x7f\x49\x1b\xd3\x28\xdc\x88\x38\x35\x64\x7a\x23\x8d\x1a\xab\x38\xb8\x0f\xd2\x60\x23\x1a\x7a\xc9\x71\x99\x5e\x6f\x1f\x68\x4e\x34\x2e\x17\x88\x52\x7c\x96\xa2\xd4\xf9\x16\xb6\x9a\xb5\x61\x8a\x54\xda\xab\xc3\x4a\x19\xa5\x1a\xab\xc8\x1a\xda\xc7\x27\x28\x47\xb0\xa3\xce\x78\x44\x7a\x4a\x9f\xa8\xf1\x6f\x5c\x46\xbe\x05\xc1\xda\x3e\x81\x3d\x04\xea\x3c\xbd\xb8\x19\x58\xaf\x18\x09\xbe\xcd\xd2\x6a\xd9\x99\x34\x3b\x02\x2d\xb5\xcf\x3b\x7d\xd6\x51\x33\x71\x02\xfa\x4b\x7e\x91\x62\x64\xad\xc3\x64\x1a\xad\xe4\x06\x4d\x94\x9d\xa7\x16\x84\x14\x24\x99\x36\x5c\x0c\x47\xf1\xd8\xb6\x05\xf2\x28\x46\x21\xc4\x4a\x2f\x5e\x0f\xb6\x64\xce\x91\x18\x73\x89\x42\x25\xe7\x49\x19\xe9\x52\xf0\x28\xf3\x24\xe3\xd8\x3e\x42\x18\x15\xd1\x42\xde\x35\x3a\xc0\xa8\xe9\x3e\xc5\x01\x65\x88\xb0\x85\xc2\x61\xac\xaa\x32\x34\x17\x23\x6a\x27\x10\x3a\x60\x84\x2a\x5d\xd4\x13\xf8\xa0\xba\xc2\x86\xbe\x6b\x22\x51\x26\xef\x52\x5c\x32\xc5\x0c\x6d\x5b\x19\xa0\x1f\xf3\xb0\x71\xcb\x62\x8d\x20\x9c\x46\x71\x2c\x94\x16\x70\x13\x4d\xfd\x13\x7c\x6c\xbb\xff\xa5\xcd\xe5\x3d\xb1\xb9\x14\x04\xeb\x13\xd6\x57\x50\xeb\x69\x61\x4d\x3e\xa3\x1d\x6a\x18\x82\xb6\x01\xff\xa4\x43\xca\xf3\x3b\x1a\x3b\xd3\x68\xf5\xf8\x53\x90\xde\x05\xe1\xa1\x6d\xb3\xd6\x68\xc7\xc6\x7c\xc0\xe7\x01\x8a\x72\xe3\xa5\x84\xcb\x4c\x3e\x86\x35\x97\x44\xb2\x8f\x61\x79\x64\xcf\x73\x45\x87\xc5\xf0\xe8\x38\x33\x5f\x9b\x2a\x12\xc7\xb9\x0f\x42\x84\x72\x4e\x76\x39\xf4\x59\x88\x96\xe0\x63\x7c\xbe\x06\xff\x3c\xc1\x30\xe7\x44\xb1\x06\xeb\xcb\xc4\xb6\x93\xcb\x75\x6b\x6a\xdb\x68\xce\xcf\x09\xac\x5b\x7c\x7a\x4e\x20\x51\x3f\xf8\x62\x7a\x7e\xde\xb8\x72\x2f\xf0\x5a\x2e\x51\x34\x8c\x46\xc9\x98\x47\xa3\xf5\x98\x19\xef\x0a\x99\x20\x33\xcf\x65\xc1\x79\xb6\x2a\x91\xda\x2f\x6d\x8f\x91\xb6\x07\xa4\x43\x18\xe9\x10\x20\x1d\xca\x48\x47\x89\x22\x8f\xf0\xc2\x9f\x9b\xe1\x7a\x7f\x8a\x6c\x52\x23\x1e\x94\xac\xde\xfd\xa3\x29\x54\xf3\xec\x5f\x91\xd2\x44\x92\x7c\x22\x23\x39\xfb\xfe\x89\x59\x5e\xf2\x7c\x6e\xd7\xc3\x88\x85\x68\x0d\x11\xbe\x58\x5e\x25\x17\x38\x1d\x25\xad\xd6\x98\x8b\x9c\x5d\xf8\xc2\x4c\x9c\xc4\x55\xa4\xe3\x9a\xc1\x77\x88\x19\x7c\xdb\xfb\x02\x97\x5b\xe2\xac\x22\xf0\x75\x5d\x09\xac\xe5\x8c\xc8\x3d\x14\xa2\x75\x3e\x1d\x53\x1e\x20\x1f\x96\xca\x82\x44\xd8\x76\xd4\xe4\x91\x9e\xc3\x8b\xe5\xd5\xf4\x02\x07\x73\x84\x12\xbe\x1e\x4d\x5b\xad\x31\x6e\xf2\x04\xe7\x54\xbc\x58\x26\xa2\x91\x67\x9c\xb6\x5a\x2a\xaf\xd8\xed\xa6\x72\x87\xac\xb1\x6d\xaf\x47\xd3\x31\xe7\x3c\xb7\x4b\x91\xdf\x76\x3b\xd7\xcc\x48\x53\xd8\xf6\x39\xd9\x57\xa7\xc5\x65\xa4\xe3\x66\xd3\x23\xa7\xe5\x24\x17\xde\x35\x5c\xb8\x97\xef\x08\xaa\x69\x2e\x35\x4d\x92\x0f\xef\x74\x4f\xe3\x01\x35\x21\x9c\x70\x2e\x60\xcd\xa9\xfc\x59\xf2\xb6\xfc\x99\xf2\x8e\xfc\x99\xf3\x9e\xfc\x99\xf1\xae\xb2\x52\x9e\xc3\x1d\x4f\x77\x3b\xff\xec\x78\x7e\x7d\x58\x15\x7b\xee\x1e\x36\xf0\x28\x77\x1b\x86\x05\x0f\xd1\xa3\x64\xd3\x63\xe4\xc3\x0a\xda\x18\x26\x3c\x42\x8b\x7c\xde\x1f\xb8\x0b\xd7\x3c\x19\xde\xa1\x14\x26\x98\xad\xd5\x83\x8b\xcd\xce\xba\x98\x5c\x3d\x5c\x3c\x98\x39\x9d\xed\x76\x0f\x72\x4e\x25\x72\x47\x1b\x7e\x8b\xee\xf9\x62\xf4\x30\x86\x07\x78\xc4\x20\xb0\xcc\x93\xe0\xeb\xd1\xc3\x98\x6f\xce\xd4\xaa\x04\x73\xb4\xc1\x86\x6f\x16\x86\x51\xce\x64\x49\x4d\x57\x73\xc3\xdd\x8c\x1b\xbe\xd7\xef\xbd\xec\xfd\x21\xe3\x96\xaf\xb5\x95\xff\xbd\x76\x04\x90\x95\x4e\xb3\xd5\x27\xf9\x44\x0c\xcf\x09\x5b\xee\x76\xd3\xe1\x94\x5d\xeb\xb5\xac\x6e\x6d\xe8\x74\x59\xa7\x0b\xdd\x0e\xeb\x76\xc0\xf3\x98\xe7\xc9\x55\x3d\x62\x25\xb3\x55\x6d\xb7\xb3\xbd\x4e\xf5\xb2\x7a\x5e\xb1\xaa\xa7\x50\x96\x0f\x09\xac\xf1\x56\xe1\x69\x63\xf3\x24\x09\x65\xb9\xb3\x97\x12\xc2\x45\x68\x99\x4f\xfb\x8c\xaf\x87\xf3\x73\xc2\x5c\xb8\xe3\x6b\xd9\x79\x22\x37\xbe\x7f\x49\xb1\xda\xca\x17\x0a\x4b\xcd\xe4\x6c\x4f\xf1\x36\xe1\xd3\xd1\x6c\x0c\xb3\x16\xbf\x3b\xbb\x8d\x85\xff\x49\x52\xd3\xf2\x0d\xd6\xc3\xd9\xa5\xcb\xe6\x97\x7c\x76\x4c\x48\xdf\x88\xd9\x7a\xaa\xfc\x29\xc4\xfd\x2a\x7d\x6c\xf8\x12\xed\x37\x1e\x82\xf4\xae\x11\x46\x8d\x20\x0c\xd2\xc0\x5f\xe6\x94\x95\x6a\x76\x3d\x9c\x5d\x71\x97\xcd\xaf\x66\x17\xb2\x7a\xac\x3b\x60\xdb\x28\xe1\x29\x4a\x40\xf7\x02\x96\x38\xc7\x76\x49\xdd\x54\xb7\xdb\xac\xdd\x2e\x26\xf9\x24\x81\xd4\x27\xe6\xe8\x0c\xcc\xd1\x51\xd4\x4a\xb2\x12\xd3\x40\x52\x2a\x27\x40\x8b\x82\xa9\x59\xfb\x32\xc5\xb6\x6b\x24\xd0\x28\xe5\xc2\x99\x46\x61\x92\xc6\xeb\x69\x1a\xc5\x78\xb7\x4b\x9b\x5c\x93\x3e\xb6\xdd\x0c\x51\x49\x6c\x82\x77\x3b\x94\x1a\x08\x8a\x41\x2e\x9f\x6d\x1b\x67\x0e\x94\xf2\x74\x14\x8c\x65\x1b\x79\x8e\xb2\x48\x76\xa8\x2a\x64\x69\x85\x10\x1a\x30\x6f\x90\x23\xef\xce\x49\xe2\xac\xd3\x39\x0d\x17\x0a\x79\x90\x12\x02\x63\xa4\xf9\xf1\x4e\x87\x75\x24\xe5\xda\xf9\x3a\x1a\x2b\xdb\xc5\x7d\x03\xb0\xbd\x9e\xdc\xc4\xa3\xb1\xb6\xa9\x07\x9f\x6f\xf7\x87\x12\xc2\xd8\x90\x47\x92\xba\x69\xf8\xb8\x00\x29\x21\x1f\x8d\x21\xe0\xee\x45\x70\x99\x2a\xef\x9f\x70\x14\x8c\xb9\xe5\x8f\xac\x56\xd0\xb2\xc6\xd6\x99\x2f\x19\xb1\x42\x8a\xf1\x1a\x7c\x65\xa4\x9a\xcb\xb5\x5e\x23\xab\x95\xb9\xe7\x80\x85\x5b\x16\xb6\x72\x19\x97\x2c\x8b\x84\x12\x51\x17\x33\x92\x0b\xa8\x6e\x83\x70\x56\x26\x57\x32\x5a\xbf\x20\x56\x22\xcd\x65\xe4\xa8\x11\x88\xc4\x96\x07\x96\xe5\x31\xf7\xe5\x8e\x98\xfa\x29\x3a\xcc\x8f\x2b\x6e\x25\x65\xca\x70\x3d\x4c\x50\x0a\x99\xeb\x13\xc4\x98\x05\x4a\x3e\x27\x0a\x01\x5c\x75\x2f\xd9\x36\x5a\x97\x24\x72\xe5\x4f\xb0\x96\x6b\x68\x4e\x47\x8f\x79\xbd\x62\x93\x9c\x54\x7a\x74\x8c\xd0\x59\x9f\x8d\x8c\xbb\xfa\xe8\x2f\x2c\xb9\xa4\xd6\x8b\x6c\x04\x16\xe7\x71\x8d\xa8\x23\x1f\xe1\x1e\xe1\x27\x0f\x94\xc4\xcf\xd9\x80\x0a\xbf\x98\xa1\xf5\x43\x2e\xc4\x62\x99\x7f\xd3\xd0\x7a\xbb\x5e\x2e\x2d\x66\x25\xaa\x2f\x05\xff\x17\x1d\x6c\xe2\x92\x40\x40\x72\xe9\x46\x18\x10\xe3\xed\x7e\x8f\x52\x23\x8d\x90\x00\x32\xc4\x78\x18\xb1\x60\x28\x4f\x1e\xb3\xde\x65\xd2\x10\xe4\x2b\x3a\x01\xd7\x4a\x30\x53\xb5\x82\x42\x0c\x4b\x53\xc0\xfc\xf2\x31\xcc\xb8\xa3\xce\x09\xbd\xce\x76\x9f\x33\xab\x4f\x13\x31\x99\x4c\x2c\xf3\x89\xeb\xc3\x39\xc9\xa4\x63\x9d\xaf\x23\xcd\x07\x03\xec\xcc\xd5\x3a\x0e\x32\x61\x3d\x31\x08\x45\xd2\x0f\x92\x4a\x90\x14\x65\xc2\x05\xea\xf5\xe5\xd6\x15\xa8\xdf\x95\x14\x92\x40\x7d\x4f\x62\x10\xc9\x2f\xb5\x25\x0e\x11\xa8\xdb\x97\xd8\x43\xa0\x41\x07\x3b\x73\x3f\x49\xff\x2a\x1e\xe1\x4e\x61\xa6\x01\x86\x15\x9f\x0f\xad\x49\x22\x17\x27\xf8\x4d\x58\x70\x5f\xe7\x19\x00\x21\x9f\x49\x1c\x25\x99\xd0\xd7\x96\xe4\x78\x70\xe1\xad\x1c\x8c\xc2\xb1\xa2\xc4\x63\x2e\x9c\xc9\xfc\x22\xbe\x88\x79\xec\x84\x12\xb9\xc7\xce\xa7\x92\x16\x2a\x2e\x9f\xd5\xed\x42\xa4\x2f\x0b\x68\x5b\x15\x1a\xad\x61\xa9\x5b\x96\xe3\x28\x1b\xab\x4b\x96\x08\x09\x98\x42\x0a\xd6\x24\xb0\x30\x08\x67\x92\xf2\x54\xfe\x04\x3c\xd4\x8e\xd4\xf2\x65\x9e\x79\x50\x0b\x67\xb2\xcc\x9f\x47\xab\x31\x77\x41\x8b\xca\x62\xdb\x4e\x50\x0c\x6b\x10\xa3\xe5\x58\x1e\xce\xe2\x44\x07\x68\x5a\x92\x8a\x6f\x95\x71\x36\xab\x75\x3b\xba\x33\xee\x66\x18\xd4\xd8\x03\xb9\x60\x72\x0a\xc2\x8b\x90\x87\x4e\x88\x43\x27\xe6\x4d\x17\x42\x67\x65\xdb\x28\x74\x56\x3c\x74\x56\x4e\x98\x23\x0e\xc3\x80\xc4\xa3\xd0\x09\xc6\x67\xaa\xdb\xc7\xfd\xdd\x9b\x6c\xec\xf0\x04\xc6\xa5\xe6\x43\x7e\x8f\x24\x88\x91\x2b\x14\xe6\x3e\x28\x4e\x08\x91\x6c\xf2\x2c\x6b\x48\x2d\x96\x13\x8c\xc1\x74\x2c\xb2\x6d\x14\x39\x21\x0f\x30\x04\xca\x61\x74\xc5\x23\x0c\xb1\xec\x88\x64\x6a\x91\x7a\x0a\x54\xca\x32\x4f\x59\xaa\x3c\xa3\xd5\xf8\xfc\x7c\x9f\x89\xcb\xc3\x3d\xcc\xa3\xf8\xda\x9f\xde\x55\xba\x99\x77\xb0\x70\x21\x85\x90\x47\x92\x35\x3c\x64\x06\xeb\x79\x98\x36\x96\x9b\x69\x18\x3b\x21\xd3\x8e\x66\xf3\x0b\x45\xee\x84\x28\x76\x36\x10\x3b\x9f\x94\xcb\x10\xbe\x88\x6d\x3b\x76\xe2\x0b\x2c\x77\xde\x6a\x0f\x77\x7e\xc2\x8e\xcf\x65\xb3\x79\x8f\x8a\x29\x13\x78\xbf\xc7\x30\xb7\xed\xb8\xb2\xdc\xe6\x18\x9c\x90\xe3\xe6\xc5\x47\xab\xb1\x2c\x3e\x55\xde\x1b\x47\x12\x4f\x23\x77\x83\x88\xdf\xab\x53\x94\x33\x95\xc3\xc8\xd9\xf0\x98\x21\xb5\xcc\x11\xdf\x06\x2c\x90\x27\x4b\x09\x45\x3f\xb1\x14\x36\x2c\x86\x15\x53\xbb\x68\x09\x61\x36\x0b\xb1\x8a\x8e\x20\xf7\x87\x72\xe9\x9c\xcc\xe5\x0a\x84\x6a\x4b\x85\xf2\x51\x6e\x94\x56\x0b\xf4\xd1\x94\x0b\xa9\x4e\x65\x30\xe6\x11\xc6\x20\xf6\xb0\x10\xe9\x75\x98\xc6\x8f\xec\x1e\x12\x91\x7e\x48\xe3\x28\x5c\x1c\xf5\x79\xad\x1e\x0e\x0e\x9b\x9e\xf4\x94\xdf\x69\x0f\x64\xfd\x9a\x7b\x72\xe7\x5b\x75\x8f\x2b\x1e\x14\x07\x7e\x79\x93\x4f\x60\x1c\xdc\x26\xcb\x8b\xd4\xb6\x53\xb9\x52\xa9\x44\x74\x15\xd7\xcc\x49\x9a\x79\x02\x4e\x96\x3c\xe5\xe9\x30\xcd\x57\x3d\x75\x26\x73\x3c\x5c\x22\x17\xac\x4f\xe2\x51\xa2\x2e\x31\x4c\x9d\x4f\x4c\x0b\x76\xb3\xf7\x0d\x1b\xa5\x72\x47\x38\x9b\x31\x66\x28\xeb\x7a\xc6\xf0\x22\xe5\xff\x04\xf1\xd0\x32\x66\x38\x56\x5e\x1c\x9a\xca\x5d\x0a\xa6\x8a\x68\x92\x18\x81\x78\x8c\x10\x0f\x08\x6d\x33\x42\xdb\x40\x3a\x03\x46\x3a\x03\x68\x7b\xac\xed\x19\x96\xa0\xdb\x67\xdd\x3e\xf4\xfa\xac\xd7\x87\x7e\x97\xf5\xbb\xd0\xf7\x58\xdf\x83\x41\x87\x0d\x3a\x30\xe8\xb3\x41\x1f\x06\x03\x36\x18\xec\xc7\xd0\xfd\x4a\x69\x81\x04\xf1\xa1\x81\xd4\x0b\x91\xfe\x24\xfc\x4f\x0a\xf6\xb7\xfb\x1a\xf4\xf7\x49\x3d\xe8\x97\x3c\x87\x04\xfd\x1e\x31\xa0\x5f\x42\xf6\x39\x5f\xa3\xae\xe2\x1b\x50\x0f\xc3\x1d\x77\x25\xac\x3f\x46\x56\x72\xab\xe9\x6d\xa5\x3d\x2e\xee\xf1\xbe\x8c\x04\xcc\x1e\xf0\xf9\x68\xbc\x87\x4d\x3d\xd1\x39\x47\xc2\xf1\x6b\xbd\x26\xc4\xc8\x95\x8c\x74\xba\xc7\x78\x7f\x76\x5f\xa2\x72\xaa\xe7\x2b\x27\xd0\x36\xfa\x7c\x69\x40\x96\x23\x8e\x74\x44\xc6\xa7\x0f\x75\x5e\x66\x2f\x77\x37\xab\xc3\xdc\x45\xb5\xf1\x30\x1e\x91\x31\x4f\xf5\xc6\xf2\x35\xa3\x38\x12\x90\x8e\xf1\x49\x40\x9b\xca\x23\xaa\xb2\x97\xc6\x58\x8c\x3e\xd5\x63\x14\x05\x06\xf9\xd7\xcc\xd9\xd7\x57\xfe\xf1\x53\x81\x52\x49\x5f\x36\x9b\xff\x2a\xc9\xfe\xaf\xc4\x81\x41\xa6\x7b\x9f\xd7\xe3\xc0\x79\x2d\x0e\xbc\x6b\xb5\x2a\x38\xaf\x82\xec\x02\x10\xa3\xf5\x01\xb2\x8b\xd1\xbc\x8c\xec\x6a\xa6\x40\x52\xf7\x51\xa1\x56\x68\x12\xb3\x5f\xe5\xc7\x4c\x22\x22\x69\xbf\x78\xb8\x42\xd3\x0c\x3e\x62\x47\xd7\x84\x04\x66\xb1\x6d\x2f\x51\x06\x32\x02\x6c\xdb\x39\xde\x33\x49\x35\x8b\xfb\x27\x1b\xbd\xf3\x93\x9a\x16\x15\xa0\x3f\x0d\xa9\x23\x1e\x22\x25\xf9\x68\xba\x95\xba\xa3\xe1\x4a\xd1\x70\x22\x55\x2a\x77\x16\x8d\xe4\x14\x6b\x35\x23\xac\xe7\x49\x1a\xc5\x82\xad\x2a\xf0\xa2\x02\x27\xda\x7d\xd6\xee\x43\x87\xb2\x0e\x35\x70\xc2\x23\xcc\x23\x9a\x86\xd7\x70\x42\xc2\x86\x23\xf9\x59\x2d\x6c\xf0\x8c\x2c\xad\x47\x33\x72\xd0\xc0\x04\x05\x34\x7c\x0d\x34\x2a\x40\x41\x02\x89\xa5\x01\x1a\x12\x28\xf4\x3a\x9a\x1c\xec\xf7\x34\x39\x48\x68\x07\x2b\x3a\xd0\x3b\x29\x6e\x82\x15\x28\xc1\x90\x9e\xa7\x05\x8f\x47\x62\x0c\xb7\x7c\x01\x13\xbe\x19\x2a\x8d\x1c\xb3\xfc\xd9\xcc\x82\x07\x7e\x6b\xdb\xb7\xa5\x8d\x74\x2d\x39\xc5\x77\xc7\x5c\x03\x7f\x50\x3e\xa6\xe8\x01\x04\x58\x7a\x1f\x58\x3a\x02\xc2\x9d\xaf\xe1\x78\xcd\x11\x47\x92\x01\x57\x2a\x21\x89\x3c\xb4\xe5\x90\x5c\x71\xcd\x71\xb8\x4c\xe0\x3d\x53\xaa\xc2\xfa\xf2\x8d\xac\xf8\x50\x1f\x0a\x76\xb2\x0e\x39\x96\x13\x75\xd4\x97\x51\x5b\xac\xa2\x94\x8e\x9f\x2e\x01\xb1\x29\x83\xf7\xf5\x4a\xb5\xc6\xad\x6d\xa3\xc7\xdd\xee\xc1\x31\x04\x95\x6d\x37\xa7\x15\x9d\x34\x92\x50\xfa\x16\x67\xd6\xa4\x08\x3b\xa1\xf8\x9c\x22\x79\xa8\xb1\x9e\xe5\x0f\x0a\x90\xdf\xc2\x67\xfe\x61\x34\x19\xa3\xc7\xe1\x76\xcf\xce\x5d\x20\xb8\xc9\x3f\xc0\x0b\x5e\xad\xee\x83\x3a\x34\x44\x39\x79\x7e\xe2\x73\x54\x01\xe3\xaa\x1e\xa4\x00\x06\xbc\xe7\xcd\x47\xdb\xae\x16\x2e\x30\xbd\x6e\x31\xe5\xdd\x8b\xf4\xfc\xfc\x02\x0b\xd9\x70\x5a\x90\x3e\x4d\xa1\x9a\x39\x77\x15\xec\xf9\xb4\xdb\x21\x74\xcb\xd3\x52\x5d\x86\x06\x49\xe1\x56\x82\x69\x2d\x3f\xb8\x53\x43\x5d\x40\x0a\xb7\x39\xbc\xaa\x00\xb4\x0d\x84\xa3\xc9\x18\x42\x0c\xa1\x1c\x7d\x09\xbf\x3c\xc0\x43\x59\x98\xc3\x6f\x31\xa0\x17\xbb\xdd\x7b\xc9\x6d\xbf\x43\xd9\xce\xc3\xf0\x0e\xa9\x8d\x87\x61\x63\xdb\xef\xb4\xbe\x19\x63\x40\xef\x77\xbb\xcf\x58\xa6\x4c\x30\x3c\xda\xf6\x83\xf6\xd0\xcc\x21\x97\x79\xd7\xe2\xc5\x5b\x7e\xef\x54\x01\x39\x4a\x41\xc0\x06\x26\x18\x22\x54\x3e\x14\x2b\x0c\xbe\xf3\xf6\xfa\xfa\x15\x6f\x66\xb2\xe4\xc6\x0c\xc9\x01\xc3\xf5\x48\x8c\xf9\x2d\x84\x28\x74\xbe\x6d\x85\xce\x4f\xad\xd0\x79\xfd\x0c\xdd\x36\xf9\x02\xc3\x35\x86\xc7\xdd\xee\xde\xc9\x69\x37\x59\x04\x36\x18\x6e\x2b\xb0\x87\xf4\x19\x21\x7d\x20\xb4\xc3\x08\xed\x18\x18\xd4\xa3\xac\x47\xa1\xd7\x61\xbd\x4e\x06\x83\x5c\xe6\xb9\xe0\x75\x99\xd7\x35\x90\xa8\xdf\x63\xfd\x5e\x01\x8f\xe8\x97\xd4\x50\xfd\x27\xd4\x50\x7d\x46\x24\x0b\xdd\x3d\x92\x93\x9e\xe2\x72\xb5\xac\xe2\x09\xc3\xc6\x00\x6f\x95\x68\x49\x0c\x0b\x5b\x10\x17\x02\x8c\x99\x52\xe4\x07\x7a\x0e\x7a\x8c\x90\x5e\x41\x6f\x75\xbe\x34\x86\xc1\x13\x63\x50\x86\x44\x4a\xe8\x22\xab\x3a\x92\xc6\xd5\x8e\xa4\xa7\x84\xfa\xaf\xfc\xb4\x64\x50\x25\x77\xc5\xc7\xe0\x5e\x40\x70\xf8\x21\x8d\xde\x7c\x78\xa7\x25\x09\x10\xd5\x12\x65\x57\x83\xa1\x60\x96\x6b\xb5\x44\x99\x69\x8e\x6b\x8c\x53\x2c\xb7\xdd\xef\x9e\xbb\xde\x39\xed\x7e\x74\x3d\xe6\xf6\x58\x7b\xe0\x0c\x06\x83\x7f\xb6\x9a\x3c\xd0\x20\x48\x9e\x22\xd9\x03\x74\xde\x75\x4b\x7f\x8a\x20\xc6\xbb\x5d\xb3\x5a\xed\x61\xa1\xb7\xfe\x5b\x95\x71\x58\xce\x33\x47\xcd\x20\x79\x1d\x84\x41\x2a\x50\x58\x00\x3a\x9c\xa9\xa0\x6f\xfc\x70\x91\x89\x95\xdf\x84\x1b\x7f\x19\xcc\x1a\x69\x70\x9f\xeb\xe5\x4b\x11\x5c\x20\xe5\x6a\xaa\x7e\xf8\xf8\xf2\xf5\x7a\xb9\xfc\x59\xbb\x42\xc7\x79\xe2\xf7\xc1\x72\x19\x24\x62\x1a\x85\xb3\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\x6f\x13\x24\x29\x03\x2d\x89\x09\x86\xe7\x3d\x76\xde\xc1\x2d\xeb\xdc\x6a\x45\x28\x6f\x22\x0a\xd3\x3b\x84\x5b\xe4\xf0\x83\x9a\x00\x8c\x5b\xd6\xc7\x72\xea\xdf\x47\xeb\x38\x51\xc9\xac\x52\x4b\x10\xae\x53\x51\xf3\xe1\x43\xd6\x79\xdc\xb2\x1c\xab\x85\xe2\xab\xc1\x60\x18\xab\xe5\x8d\x50\x2c\x53\xff\xd9\xda\xb3\x60\x0f\x5b\x75\x50\xe5\xae\xfb\x4a\x71\x6d\x26\xeb\xeb\xb4\x9f\xb0\x74\xce\xc4\x6e\x4d\xce\x85\x6d\x17\x56\x04\xea\xcd\x78\x9d\xaa\xd7\x63\x8d\xc0\x9b\x5c\x75\x7d\x17\x84\x69\xa1\xb3\x0e\x51\x26\x4a\x2d\xaa\x13\x5a\xc5\xde\x69\x33\xd2\x69\x6b\xe2\x47\x8e\xe4\xab\x14\xed\xda\x48\x48\x89\x0b\x6b\x7a\x61\xac\x3d\xfc\xe5\xb2\x71\x2f\xd2\xbb\x68\xd6\x88\xc2\x46\xc3\x6a\x89\x23\x1d\x7a\xf7\x4b\x3a\x74\xea\x9e\x3e\xf8\xda\xfe\x27\x5f\x82\x1a\x6b\xa9\x6a\x55\xe4\x89\xaa\x94\x75\x97\x06\xb5\x99\xc8\xb6\xf7\x84\x29\x91\x55\xc2\x55\x50\x35\xc0\x83\x20\x79\x9f\x01\x8e\x77\x73\x58\x99\xe4\x37\xc9\x75\x6e\x69\x04\x69\xf4\x5d\x34\xf5\x97\xc2\x80\x94\x4c\x4a\x09\xc6\x38\xc7\xca\xc2\x74\x81\x65\xcc\xff\x7a\xa7\x95\xb6\xae\xe1\x41\x89\xdb\x31\x94\xa6\x7b\xd2\x8c\x3e\x93\xaa\x0b\xac\x04\x4d\x73\xed\xcc\x9f\x11\x05\x3e\x24\x5c\xd2\xf0\xb0\xe6\x81\x33\x87\x25\x77\x2f\x72\x71\xcf\xf2\x02\xaf\x33\xcb\x41\x9f\x27\xa3\x65\xab\x35\x56\xd4\x9d\x89\xcf\x55\x55\x3e\xbb\x1d\x46\xdc\x0e\x10\xd7\x63\xc4\xf5\x80\xb8\x7d\x46\x5c\xb9\xbb\x7a\x27\xb5\xac\x19\xbd\xdc\xcd\xd4\x71\x99\x92\x55\xd2\xcd\xbe\x11\xa3\x3e\x69\xec\x6c\xcc\x9c\x5f\x1b\x33\xe7\x6f\x8d\x99\xf3\x07\x63\xe6\xfc\xde\x98\x39\x7f\x03\x0b\xbe\x1a\xc6\xec\x7e\xa8\x8d\x97\x95\x0d\x33\xdf\xee\x71\xad\x35\x33\xdc\xf2\x55\x8d\x4d\xf4\x84\x97\xe8\x84\xdd\xae\x4c\x35\xc8\xef\x85\x0d\xf4\xaa\xb0\x81\x9e\x73\x84\xa6\xbc\x79\x67\xdb\x8b\x92\x19\xf4\x62\xb4\x1c\xe3\xe1\x82\xad\xf1\x68\x39\x86\x19\x97\x24\xdb\xd0\xd7\x36\xcd\x9b\x13\xa6\xbd\x7e\x9d\x69\xef\xc2\xb6\x23\xb4\x80\x25\x68\x03\xde\x1f\x30\xdc\x8e\x96\xe3\x26\x9f\xdb\x76\xa0\xec\x77\x67\x8a\x68\x9a\x64\x89\x48\x99\x4b\xcf\xf1\xfe\x2c\x76\xa6\x51\x2c\x78\x08\xff\x5f\xd8\xf6\x1a\xaa\x46\x39\xbd\x64\xca\x58\x4d\xc1\x18\xeb\xa1\xde\x49\x95\xac\xd6\x80\xdc\xfb\xe9\xf4\xee\x69\xdd\x20\x7f\xee\x3c\x57\x91\xad\xac\xe7\xce\x73\x6b\x24\xc6\x28\xcd\x0c\x11\xc3\x8a\x52\x22\x1d\xc5\x63\xde\x24\xd0\x3c\xce\x18\xe0\x6d\xe6\xc5\x50\xb1\x72\x92\x3d\xfc\x12\x35\x42\xdb\x4f\x40\x12\x63\x21\xda\x7b\x9a\x0e\xd1\x7e\xc8\x25\x49\x92\xc1\x0c\x9e\xd9\xfe\x92\x3e\x51\xca\x03\xc3\x2c\xca\xb9\x51\xdc\x22\xa1\xae\xb2\x13\x29\xa9\x51\x61\xc9\x9b\x41\x85\x24\xd0\xc8\x5a\xce\x52\x2e\x34\x12\x9f\xc5\xf4\x38\x12\xd3\xa8\x88\x05\xeb\x2c\xe2\x68\xbd\x4a\xf8\xd6\x67\x96\x67\xed\x25\xcf\x6c\x79\x12\xcd\x58\x96\x13\x8b\xd5\xd2\x9f\x0a\x24\xc0\xfa\xbb\x4b\xff\x4a\x47\x98\xa9\xa9\xee\x39\x1a\x32\xfc\x5c\x11\x08\xb2\xbd\xb3\xe3\x66\x73\x5e\xeb\x84\xc9\xbb\x9e\x10\xcb\xbf\xcd\x60\x60\x81\x33\xa8\x8a\x6e\x94\x05\xb4\xb4\x7c\x15\xed\x68\xe4\x8e\x6d\xdb\xba\xd5\xcf\x64\xbc\x47\x27\xe9\xd2\xb9\xee\xe4\x8c\xfb\x12\xc4\xdd\xd5\x4d\x59\xca\xb7\x85\xd1\xfd\x68\x36\xae\xe9\xb8\xb7\x07\xaf\xc9\xad\x6c\x2f\x61\x0c\x2b\x7e\x37\xac\xad\xab\x49\x20\xe6\xcf\xfd\xe7\x45\xc0\xd4\x53\x93\xa1\x74\x0e\xeb\xe5\x72\x0f\x96\x1a\xb4\x1c\x8d\x50\xc2\xfb\x32\x4b\xb4\xdd\x43\x25\x61\xb4\xae\xeb\x60\xbc\xc7\x10\x8f\x66\x63\x64\x59\x18\x9a\xe9\x1e\x67\x86\x1e\xca\xac\xf3\x6e\xb7\x6b\xae\x54\x70\x40\xb5\xa0\xa6\xa1\xe6\x72\xb7\xab\xb4\xdc\x9c\xea\x41\xdc\xcb\x3d\x34\x9a\x8d\x61\xc3\xe7\x28\x82\x19\xa8\x81\x1f\x86\x23\xaa\x78\x0a\xa5\x7a\x94\x9c\x27\x43\xc9\x0a\x07\xc3\xed\x2c\x0a\x05\x6b\xba\xc6\x66\xf6\xbe\xe2\x7d\xc4\x0e\xbe\x1a\x3f\xa3\x58\x99\x07\xe6\x5f\xc9\x5e\x4e\xf4\x23\xdf\x8c\xdc\x31\x2c\xf8\x66\x44\xc6\x67\x31\xca\x1c\x01\x73\x50\x2d\xe0\x11\x43\x88\x6e\xc4\xe2\xfa\xf3\xaa\x94\x3e\x03\xca\x79\x3a\xac\x15\x85\x2e\x72\x73\x78\x2d\x92\xda\xd7\x88\x2c\xab\x99\xf0\x3e\x93\x39\x67\xfc\x9b\xcb\x08\x75\x21\xd3\x4a\x66\xce\xc5\x5d\x8f\x75\x3d\xc3\xc9\xe5\xb0\xef\xab\xc9\xc4\xba\x5d\x9c\x9d\xb2\x8c\x94\x4b\x79\x41\x46\x0b\xe3\xe5\x67\xdb\x28\x6d\x71\x6b\xa1\xc4\x8c\xc1\x22\x8c\x62\xf1\xd2\x4f\x84\x49\xd6\xd2\xc7\xfb\xf5\x32\x0d\x96\x41\x98\xa5\xde\xab\xd4\x75\x18\x4c\xa3\x59\x96\xb6\x56\x69\x49\x1a\x4c\x3f\x3d\x9a\xa4\x47\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\x97\x4a\x75\xff\x61\x15\x0b\x7f\x26\xc9\xa4\x5a\x24\xa0\xbc\x67\x12\x58\x43\x8e\xf5\x0b\xa9\x86\x92\x7e\xf1\x29\x3c\x72\x17\x16\xbc\xd9\x9c\x49\x94\x38\x83\x3b\x68\xe3\x8b\xc7\xcb\xa5\x36\xb9\x79\xd4\x46\x63\xf2\x71\xc5\x17\xc3\x05\x5a\x8f\x1e\xc7\xf0\x08\x09\x66\xea\xe9\x5e\x1e\xdc\x10\xad\xb0\x6d\xa3\x7b\x9e\xe3\x69\x74\xcf\x57\x23\x7f\x8c\x87\xcd\xe6\x3d\x8b\xd1\x0a\x63\xb8\xb7\xed\xf9\x95\x8b\x37\x5c\x77\x69\x05\x01\x5a\xe5\xe6\x3f\x1b\x98\x9f\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\x63\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\x94\x6f\xf7\x17\xa8\xec\x28\x73\x70\xf2\xe7\x30\xd3\x0d\xdc\x65\xa2\x47\x3e\x1b\x1e\x03\x25\xb1\x67\x6b\x09\x75\x17\x3c\x44\xb2\x50\x3a\xa4\x8c\x60\xb8\xe5\xee\x59\xbd\x77\xe9\xe3\x53\x8e\x9e\x41\xaa\xc9\xe8\xa6\xa5\xa3\x51\xa1\x47\x63\xc5\x72\xc7\x13\x94\x85\x8f\xc4\x17\x77\x57\xb7\x17\xb7\xc6\xb0\x6d\xc3\xd3\xe1\x02\xf9\x68\xc5\xc5\xe8\x76\x8c\x25\x1c\x59\x8d\xc8\x18\xb3\x05\x52\x09\x98\x73\xbe\xdc\xed\x36\x9c\xf3\xcc\xf4\xac\xb1\x29\x0c\x0f\xef\xf9\x63\x66\x22\x70\xd1\x44\x2b\x7e\x6f\x44\x78\xd8\x91\x00\xea\xc2\x34\x11\xa0\x7b\x58\xc0\x4a\x9b\xd8\x43\x7a\xa2\x52\xec\x7c\x73\x73\xfd\xe2\xaf\x7c\x09\xb1\x73\x73\xfd\xf1\x87\x9b\xb7\x7c\x5a\x59\xdd\x36\x23\x5d\xc3\x8f\x65\x6b\xdc\x67\x5e\x1f\xfa\x6d\xd6\x57\x94\xc5\x91\x45\x42\xc5\xe1\x97\xf6\x30\xb2\x42\x3f\x0d\x36\xe2\x3c\xcb\x76\x9e\x46\xe7\x86\xa9\x84\x9c\x74\xcc\x0d\xf9\x95\xa1\x75\x8f\x11\xe5\x7c\xe5\xb9\x5f\x22\x7e\x3a\x4f\x10\x3f\xc6\xee\xde\x23\x5f\xaa\xa4\xfb\x44\x25\x5d\x46\xbb\xb2\x92\x2f\x09\xb6\xe8\x53\xc6\xfb\x46\xc2\xa4\x7c\xca\x8c\xee\x2f\x93\x36\x79\x27\x29\x50\xcf\x2d\x1c\x3f\xcb\x62\x1c\xdb\x8e\xf3\x74\xe3\xcd\xb9\x87\xad\xa2\x6b\x65\x7d\x5f\xa4\x17\x9f\x30\x04\xd7\xee\x2b\xba\x83\xdd\x01\xeb\x0e\x72\x86\xd6\x3b\x69\x57\x96\x99\xd5\x11\x4a\x95\xba\xe3\x09\x51\x9c\xd2\x97\x80\xcf\xd3\x32\xe5\x90\x21\x0d\x5f\xab\x9f\x6b\x78\x0c\xdf\xb6\x51\xc4\xfd\x92\x69\x93\x8a\x89\x99\xbf\xda\x76\x8c\x22\x6c\xdb\xa1\x6d\xcb\xa6\xa2\xcc\x2f\x87\x52\x46\x28\xcd\xc1\x91\xf7\x55\x2e\xe6\x65\x30\x95\x5b\x26\xc5\x99\x0b\x74\x7a\xca\x0d\x73\x28\x10\xce\x09\x06\x7c\xe8\x90\x39\x14\x28\x1d\xb9\x63\x5c\x22\x29\xe4\xeb\xa1\x83\xa6\xc9\x06\xa9\x82\x06\x95\xbc\x3a\xed\xc0\x3f\xba\x52\x00\xd2\x11\xad\x2d\xa5\x3f\xe8\xa2\x9d\xd3\x45\x21\x1d\xb5\x4f\x97\xd7\x5f\x0f\x9d\x44\xe3\xc2\x71\xcf\x7b\xca\xa6\xac\xb4\x27\x8c\x1d\x96\xf5\x9b\xa5\x18\xdb\x23\x71\x04\xca\x3d\xc3\x6a\x88\x1f\xeb\x43\x66\x03\x16\x23\x81\x87\x79\x40\x71\x0b\xb3\xdc\xbe\xab\xec\xaa\xe2\x9d\x30\xc6\x12\xa8\x5f\x31\x74\x0b\xf2\xd8\x06\x10\x1c\xf9\xab\x3c\x69\xad\x55\x44\xd4\x56\x24\xb2\x2a\xab\x43\x3c\x07\xa3\x50\x69\x76\x71\xd9\x4a\xac\xdf\x67\x7d\xd5\xb1\x93\x5e\xfa\xd5\xd9\xaa\xc4\x71\xad\x1a\x25\x9a\x19\x51\x5f\xcc\x84\x94\x87\xde\x3f\x12\x18\x55\x0f\xac\x92\x6f\xce\x97\x51\x14\x3f\x39\x40\xe5\x13\x66\xdb\xb9\xb8\x56\xbe\xc8\xcf\x4a\x67\xbd\x87\x6d\x76\xb8\xfa\x5f\x04\xb2\x4f\x08\xfe\x33\x1f\xab\xfe\x49\x81\x4c\x06\x64\x3a\xfd\xb2\xed\xee\x57\x70\xe7\x85\xa6\x5a\xd9\x4a\x16\x14\x54\xca\xc5\x28\x50\x14\x54\xca\x2c\x4d\xa5\x5b\x5c\x69\x88\xf1\x91\x59\x5f\x0e\x42\xfa\xa7\x2d\xb8\x4f\x7a\x5f\x69\x86\xa4\x24\x07\x08\x86\x29\x8a\x51\xa8\xf0\x7e\xa8\x4e\x7a\x8a\xc2\x4c\x12\xe0\x67\x5a\x65\xe1\xe8\xec\xc6\x7d\x2d\xef\x78\xa4\xa0\x5d\xee\xe6\x06\xfe\xbe\x4c\x05\xf7\x8f\xac\x9f\xeb\x55\x27\xfd\x42\x75\xa2\xe7\x93\x2a\x16\x7f\xbb\x3f\xd3\x1e\x59\x11\xd4\x1c\x8d\x1a\x83\x4f\xad\x8d\xac\xf7\xdc\x82\x14\x7c\xbc\x2d\x69\x2e\x78\x8c\x22\xd8\x4a\x62\x85\x85\x88\x80\x8f\xf7\x18\x02\x99\xaf\x65\x35\x4a\xd1\x45\x4a\x08\x33\x53\x47\x55\x9c\xbe\xb4\x79\x8c\x1c\xec\xd7\x69\x57\xfa\x83\x13\xca\x6f\x8f\x6a\x9a\xb3\x6f\x68\xce\x7e\xc7\x90\x9c\x72\x32\x96\x4a\x78\xd9\x35\x26\x31\x87\x53\x31\xe7\x4d\x34\x1a\x3b\x9f\xc4\x63\xa2\xc2\x34\x7f\x4e\xad\x20\x34\x09\x08\x63\x98\xd5\x71\xd6\x72\xae\x4e\x6d\x92\xbb\x42\x5b\x9e\xa0\x3b\x48\x61\xa5\xe5\x31\x0b\xb8\x85\x09\x3c\x1c\xc5\x1f\x99\xdb\xb6\x90\xbc\xc3\xe7\x8c\x96\xfb\x3c\x12\xe3\xb3\xaa\xf3\x83\x36\x77\x62\xea\xd1\x18\x2b\x1d\x45\xd6\x28\xdb\x7e\x67\x06\x6a\xe2\xa9\x90\x1a\x07\xf9\xe0\x9a\x57\x96\x0f\xde\xf1\xc2\xae\xea\x1e\x3e\x48\xfe\xe5\x73\x25\x50\xc0\x0b\xfe\x79\x34\x1d\xef\x76\x9f\x47\xd6\x7f\xfc\x8f\xf9\x94\x8e\x77\xbb\x7b\xdb\xfe\x3c\xba\x1f\xc3\x27\xfe\x62\xb7\x7b\x40\xf7\x18\xde\xf3\xfb\xe1\xbb\xe1\x03\xca\x8d\xae\x30\xfb\x94\x99\xb5\xdd\xf0\x1c\xf4\xa5\xb6\xfd\x39\x53\x68\xef\x76\x2f\x24\x19\x7e\x63\xdb\x68\xc2\x97\xe8\xa6\x50\x47\x09\x8c\x25\xdd\x60\xbc\x8e\x4b\xc4\xc3\x44\xd1\xcf\xb6\x8d\xd6\x68\x02\xd7\xca\x96\x2b\xde\xed\x6a\xe8\x90\x89\xea\x77\x84\x26\x30\x85\x19\xc6\xf0\xce\xb6\x5f\xd8\x76\x36\xdc\x26\xe7\x2f\x9c\xd0\xbf\x97\x88\xe0\x03\x6f\xba\xf0\xa9\x66\x0f\xbc\x28\x69\xbb\xf6\xea\x52\x8e\xe6\xe3\x6e\x27\x57\xb3\xf9\x41\x0e\x5f\x37\xf0\x19\xa6\xf0\x09\x83\x32\x71\xff\x04\xfe\xe8\x7a\xcc\x67\x70\x2f\x09\xfb\x05\xdf\xea\xe6\xd8\xbb\xe1\x27\xf6\x80\xb2\xc6\x31\xc8\xb5\x66\x1b\x9d\xa8\xd6\x1d\x83\x99\x12\xf6\x7e\x0f\x8f\x4a\xae\x7e\xab\xdd\x69\xd4\xcf\xe7\xdd\x2e\x40\x9f\xe1\x16\x16\x92\xe5\xd0\x0e\x34\x21\x0a\x9d\xf7\x5a\x79\x3c\xdf\xed\x3e\x60\x48\x61\x91\x4b\xbc\x16\x5a\x98\xde\x65\xc4\xed\x1e\xe9\x8b\xb3\x03\xaa\x35\xc6\xfa\x98\xf6\x3b\xac\xdf\xd1\x18\x0f\xfa\x03\xd6\x97\xd4\x6e\xff\xa4\x7b\xff\xd1\x11\x0b\x79\x93\x28\xb9\xaa\xb6\x47\x1d\x79\xe3\x51\x3c\x46\xf8\x2c\x30\x80\xb1\x3c\xbb\xa1\x0a\x74\x6a\x22\x77\xc5\xd1\x3d\x0a\x2a\xc0\x4a\x83\x50\xba\xc7\x19\x94\x8d\xf0\x76\xff\x94\x23\x74\x6a\xdb\xcd\xb0\x6a\x3d\x14\x94\xbb\xe3\xcb\xee\x40\xc2\x7d\xdd\xa5\x44\xed\xa0\xe3\xe5\xd6\x12\xa3\x40\x7b\xae\xca\xbc\x35\x3b\x22\xd9\x83\x40\x7e\xb9\x63\x19\x9a\xa8\xca\x81\xfb\x5f\xe9\x73\x9a\xb7\x6d\xbc\xc2\x41\x4b\xad\x9a\x22\x73\x0f\xef\x3f\x11\x2d\x60\x9b\xe5\x79\x82\xab\x6b\x12\x9d\x67\x70\x82\xc0\x50\x84\x85\xf8\xbc\xba\x27\x25\x58\xd7\x8c\x77\xbb\x18\x11\x17\x5f\x51\xea\xd2\xae\xd3\xe9\x75\xbd\x41\xa7\xef\xf6\x3c\xd2\x37\x5f\x2e\xeb\xbe\x9c\x53\x71\x4e\xbc\x26\x8f\x91\x7e\xc2\x75\xd6\x35\x2e\xe7\x48\xf0\x96\x24\x08\x99\xb8\x3a\x27\xe2\xbc\x67\xdb\xe2\x52\xfe\x0e\x45\x4b\x3c\x13\xcf\x29\xcb\x7a\x85\x04\x3e\x27\x7b\x16\x9b\x31\x9c\xd4\x64\x0d\xda\x39\x91\xb4\x8a\x1e\x20\xe0\x21\xa2\x70\xde\x55\x7a\x20\xf5\x48\xdb\x12\x79\xc8\x47\x42\x3d\xfc\x0c\xd1\xf3\x48\x7b\xae\x52\x38\x97\x6c\x6f\x69\xf0\x9a\xd4\x8a\xa3\x75\xad\x5f\x09\x84\xb0\xe6\xb9\xb6\x59\x48\xcc\x13\x97\x04\xcd\xeb\xcb\x64\xb8\x7c\x86\xd6\xcf\x93\xe7\x51\x8b\x3c\x0f\xce\xc9\xf3\x00\x3f\x4b\x9e\x45\x0c\x85\x92\x8a\x41\xa4\x15\xc9\x94\x35\x3e\x47\xe9\xf9\x1a\xe3\x2b\x7f\xb7\x0b\x9b\x3c\x94\xa5\xc8\x73\x17\xb3\xe5\xb3\x50\x2e\xeb\xa0\xcd\x06\x92\x63\x1f\x1c\x11\x59\x07\x3d\x5d\x46\x0b\xb2\xaa\xa3\x35\xf5\x24\xab\x09\xee\x9b\x09\xee\x0f\xc5\x79\x69\x82\x97\xd1\x02\x91\x96\xc8\x78\x82\xc1\x13\xb1\x53\x54\xfe\x24\x58\x84\x75\x2d\x15\x4b\xba\xdb\x89\x26\x17\x72\x61\x2f\x5d\xe5\xb7\x96\x55\x7d\xd2\xcd\x8b\x74\x3c\x49\x1a\x8a\xd4\xb7\x0e\xdc\x91\x8c\xa4\x4f\x7b\x47\xf8\xdc\x85\x8c\x1b\xa9\xdc\x7d\x53\xea\x4f\x29\x78\x0b\xac\x79\x53\x29\x42\xea\x22\x7c\x24\x28\xc7\x2a\x62\x23\xb9\x72\x5d\x59\x14\x26\x68\xbb\x57\xe6\x0f\xb0\xac\x60\xf0\x08\x09\x88\xc1\x1c\xd1\x6d\xc0\xac\x77\x56\xab\xd1\x6a\xf9\xf0\xa0\x82\x32\xe1\x3d\x4c\xcb\x81\xc0\xfe\x7a\xfd\x33\x8b\xe1\xed\xf5\xf5\x2b\xd6\x24\x60\xbc\x30\xd8\x31\xd8\x0a\x0b\x9b\x47\x2b\x79\xbc\xbf\x8d\x96\xe5\x28\x1f\x82\xa1\x43\x1f\x9a\x86\x18\x5a\x1f\x2c\x66\xbd\xb7\x70\x4b\x07\x59\x0f\x94\x15\x9a\xae\x2e\x29\x55\xf7\xda\xd2\x91\x18\xb2\xf7\x6b\xeb\x4c\x5d\x9d\x90\x9b\xea\xc6\x63\x27\x50\xc6\xe2\x3f\x09\xff\x53\x4d\xdf\x4e\x54\xdc\x74\x2b\xf5\x36\xc9\x71\xb5\x0f\x7b\x88\xc2\xd7\xb1\x10\xbf\x89\x3a\x79\xf8\xda\xb6\xa7\xca\x2e\xca\xb6\x13\x45\xe4\x9b\xa6\x6c\x5b\xd6\x04\xc2\xb8\x67\x7a\x8c\x74\x72\x09\x78\xd9\x92\xd2\xc8\x61\x06\x27\x05\x1c\x99\x32\x98\xb4\x7b\x4a\xc0\x01\x01\x8f\x9d\xef\xd7\xa9\x72\xc5\x7f\x77\x9b\x88\x78\x23\x24\x78\x73\x7e\x12\xb7\x7f\x0d\xd2\xc3\x2f\xea\x2a\xab\x55\x1c\x4d\x45\x92\x80\xcf\xe3\x2c\x9e\x21\x24\xdc\x32\xc9\x16\xd7\xac\x0d\x8a\x9e\x12\xb5\x6b\xd7\x96\x23\x37\x33\x08\x95\x82\x37\x91\xfc\x27\x8f\x9c\x59\x74\xef\x07\xfa\xe6\x3a\xf1\x39\x48\x11\xbe\x10\x17\x12\x41\x0a\x67\x1e\x82\xe0\x42\xa1\x2a\x85\xc8\x42\x54\x52\x3f\x6a\x14\x29\x86\x6b\x84\x59\x6e\xf6\x1e\xec\xf7\xf9\xb3\x12\x3b\x89\x30\x15\x31\xd2\xd6\x87\x09\xae\xb8\xbc\x45\xaa\xe2\x8f\xc1\xf4\x13\x5a\xe2\x7d\xee\x90\xdb\x0c\xe4\xcc\x84\xfe\x26\x58\x48\xbc\x2e\x2b\xc9\x5f\x9c\x24\xf5\xc3\x99\xbf\x8c\x42\x21\x69\x1b\xdf\xb6\x7d\x27\x16\x49\xb4\xdc\x88\xcc\x81\x27\x4f\x30\x9c\x1b\x3e\xab\x34\x3a\x75\xd2\x3b\x11\xca\x06\xb5\x78\xb4\xf2\x31\xcc\x24\x19\x59\x7f\x8c\x41\x74\xd3\x85\x19\xcf\x04\x68\x26\x2a\xda\x47\xf1\x39\x7d\x1b\xcd\x04\xb2\x2c\x7c\x26\xa9\xc5\x00\x2d\xb1\x13\xe9\x25\x44\x33\xd8\x4e\xef\xfc\xd8\x9f\xa6\x22\x7e\xe5\xa7\xbe\xba\xf5\xb1\xea\xf1\x37\x73\x66\x7e\xea\xf3\x39\x6f\xce\x8f\x89\xe7\x5c\xa0\xb4\x9d\x87\x2c\x06\xc5\x01\x65\x37\xec\x28\xbf\x05\x4d\x3f\x84\x18\xc4\x6e\x87\x04\x0f\x61\x2d\x99\x88\x94\x87\xc6\x4f\xbc\xc7\x48\xbb\x67\x78\xd1\x4c\xd0\x37\xf8\x6a\xa7\xcc\xe2\xc2\xbe\x32\xd6\x39\x53\x06\xce\x2b\xbd\x19\xb9\x0e\x05\x76\x60\x29\x1e\xcc\x0b\x86\x39\x2d\x87\xac\x38\xb6\xb2\xf9\xc6\x9f\x35\xcc\xc6\x6e\x94\x84\x7b\x92\x39\xe7\x02\x42\x1e\xef\x8b\x5b\xb8\xd4\x82\x6a\xa7\x7c\x93\x22\x81\xa7\x8a\x6c\x57\x50\x65\xce\xbc\x4e\xdc\x22\xbb\x19\x1a\x49\x47\x66\x64\x37\xf8\x3a\xcd\x4f\x37\xe3\x79\xdd\xcc\x75\xde\x35\x6a\x6d\xe2\x1a\xe5\x83\x72\xbf\x4e\x8c\xfb\xf5\x3a\x43\x0e\x7e\x22\xd1\x54\x99\x98\x59\xef\x76\xc7\xb8\x40\xab\xc3\xb6\x7b\x48\x95\x72\x94\x7f\x50\x00\x18\xc9\x46\x2d\xff\x76\x3a\x13\xf3\xc5\x5d\xf0\xcb\xa7\xe5\x7d\x18\xad\x7e\x8d\x93\xb4\xd0\x96\x49\xc2\xd0\x83\xb0\x10\x66\x65\xd6\xbb\x55\x73\xda\x74\x24\xc6\xca\x51\x00\xbc\x26\x5f\xa3\xed\x1e\x04\x1e\xc5\xe3\xdd\xce\xf4\x53\xf1\x9e\x2a\x3d\xc5\xd8\x78\xbe\x5a\xb8\xc9\xc3\x8a\xf9\x5d\x25\x54\x84\xaf\x0d\x6c\x8e\x22\x43\x2c\x39\x81\xa9\xb2\xbb\x99\xf3\xc8\x99\x5f\xac\xaf\x96\x17\xb9\x65\xce\x0c\xee\x78\x52\x38\xb3\x6a\xeb\x1b\x58\xf1\xe9\x30\x44\x77\x38\xf3\x79\x9d\xa2\x3b\x8c\x99\x4c\x81\x7b\x9e\x69\xa2\x60\xc3\xdd\x8b\xfb\xab\xcd\x05\x9e\xf1\xd5\x68\xd3\x6a\x8d\x15\x0b\x34\xd7\x27\xf5\x0e\x66\xca\x37\x7a\x34\x1b\xf3\xbb\xd1\x6c\x5c\xb2\xe3\x61\xeb\xd3\x96\x3c\xb9\x23\xb8\x71\xaa\xd1\x20\xde\xb8\x83\x0f\x4e\x4a\x00\x73\xf3\x37\xd7\x35\x56\x0e\xae\xd9\x0e\xb4\x8b\x91\xf5\xe6\x5a\x5f\x33\x6b\xc9\xad\x51\x5a\xe6\x8a\x0b\x73\x76\x98\xd4\xfe\x1a\x48\xfe\x65\x1e\xfb\xf7\x42\x11\x1e\x81\x19\xb3\xf6\x6e\x74\x92\xf4\x71\x29\x9c\x59\x90\xac\x96\xfe\x23\xb7\xc2\x28\x14\x16\x08\xe4\xb5\xb1\xe3\xaf\x56\x22\x9c\xbd\xbc\x0b\x96\x33\x7d\xd7\x62\x12\x4f\xb9\xf5\x8b\xbf\xf1\x75\x68\x5e\x66\x01\x4a\xb9\x52\xb7\xa7\x22\x4c\x7f\xd2\x21\xe0\x32\x08\x86\x9d\x68\x25\x42\x84\x21\x75\x1e\xe2\x20\x15\xc8\xba\xd4\xc5\xae\x72\x18\xf7\xda\x6c\xe5\xcb\xbf\x3d\x37\x9f\x2c\x99\x7d\xba\x8c\x12\x81\xe4\x8e\x4f\x9d\xd7\x17\xe1\xf9\xf9\x05\x36\x26\xca\xa5\xcb\xb3\x46\xc1\x28\x1c\xe7\x86\x19\x09\xaa\xf8\x4c\x57\x6e\xa2\xad\x0b\xf1\x12\x54\x2d\xaf\xb9\x18\x22\xbf\x22\x10\x12\x72\xee\xe5\xa9\xf6\xa1\xfc\x41\x66\x87\x60\x14\x8d\xb9\xc0\x2c\xe0\x09\xaa\x78\xc1\x07\x2c\x44\x81\x11\x3d\x13\xd7\x65\xc4\x75\x81\xd0\x2e\x23\xb4\x9b\xa9\xaa\xb4\xf2\xc2\x65\x3d\x17\xbc\x36\xf3\x14\x9c\xf8\xa2\x4d\xde\x53\x76\xbd\xc6\x32\xd1\x04\x86\xd3\x8d\xa8\xfd\xe6\x75\x98\xd7\x51\xc1\x87\x4f\x4a\x5c\x33\x4b\xe5\x76\x26\xbd\x74\xbd\x6a\x0c\xbb\x6e\xbf\x3e\x1c\x9a\xe4\xde\xab\x55\x2a\x17\x96\xfc\x4a\x18\x15\x38\x27\x95\x2b\xe8\x67\x27\x6c\xcd\xdd\x8b\xe4\x6a\x7d\x81\xb5\xc1\x73\xc4\xfd\xd1\x5a\x9e\xb3\x74\x14\x8d\xab\x16\x8f\xd9\x31\x2a\x0f\x26\xa3\x86\x88\x5b\x23\xcf\xcd\xc3\xbd\xb9\xb9\x57\x71\x2f\x0b\x53\xe1\x66\x10\xb4\x6d\x20\xa8\x51\xdf\x7a\x4a\x94\xf6\x85\xc8\xd3\x26\x28\x9c\x9c\x85\xe5\x31\xe9\x28\xb4\x1d\xa0\x84\x56\xda\xd7\x71\x5d\x8e\xfd\x66\xa2\x07\x16\xce\xde\x92\x34\x51\x69\x79\x04\x30\xd4\x0c\x9d\x79\x11\x69\x10\xc4\x28\x1d\x9b\xbd\x63\x00\x48\x26\x6e\xcc\x03\xb1\xe8\xc5\x36\x0b\xac\xa8\xc5\x62\x99\x4f\x0a\xa9\x8b\x90\x35\x6e\x5b\xb2\x18\x41\xd9\xe9\x1b\x22\x7e\x14\x79\xaf\x1a\xd4\xd1\xb6\x6b\xa7\xe9\xad\x7f\x2f\x92\xe1\xe9\x4f\xe6\xd6\x6c\xcc\x46\xe3\xb3\x2f\x60\xcf\xc8\xb6\xad\x91\x89\x77\xa6\xa1\xc8\xd8\xe2\x99\x9d\xb7\xa8\x22\x89\xd2\x14\x2b\x84\x7b\x10\xcf\xb2\x11\x65\x37\x25\xee\xf7\x48\x48\x40\x1f\xe7\xa2\x73\xb7\xcd\x88\xdb\xce\x66\x53\xcd\x59\x4d\xe8\xb3\x62\x37\xf5\x72\xf8\x9b\x21\x0f\x4b\x6f\x66\x0b\xac\x1c\x24\x58\x58\xed\x92\xd3\xf3\x50\xcb\x47\xca\xd6\x02\xd3\xab\x1e\x23\x6e\x4f\xc3\x04\xd5\xa7\x1a\x45\xe9\xc9\x16\x34\x32\x4f\x4c\x88\x65\xf7\x34\xaf\x40\x0e\x02\xb9\x1c\x21\x93\xe8\x48\x02\x79\x0c\x4f\x17\x22\x2d\x59\xed\xd6\x0e\x4c\xe8\x60\x2f\xb1\x1a\xdf\x50\x8c\x82\x71\x6d\xf0\xc6\xb2\xa2\x55\x4b\x8c\x8b\x18\xb3\xe5\x6f\xc3\xca\x5b\xd1\x37\x56\x29\xa2\xbb\x37\x8c\x54\x6c\x06\xad\x62\xd5\x40\x37\xc3\xc0\xea\xa8\xa8\x19\x3a\x29\xe7\x2b\x66\xc8\xa0\xdd\x0e\xc1\xa8\x49\xea\x51\xef\x93\x81\x8c\x7c\x1d\x28\x4c\xc2\x19\x17\x96\x7c\xa4\xe3\x08\xf8\x8d\x20\x6c\x24\xd8\x6f\x6a\x4d\x49\x02\xbe\xe4\x04\x73\xcb\x60\x15\x77\x26\xd3\xe2\x2a\x30\x29\xb3\xf0\x54\x01\x49\x6c\xdb\xe8\x5f\x03\x15\x29\x6c\xb7\xcb\xcb\xe4\x50\xf3\x60\xc8\x1a\x56\x74\x08\xeb\x90\xd2\xc0\x4f\xaa\x41\xd5\x3e\x0f\xf5\x3e\x3f\x5e\x72\x49\xbc\xd5\x2e\xb4\x5c\xe1\xf0\xc4\x0e\xae\xb1\xaf\x91\x3b\x78\xbb\xaf\xd5\xac\x66\x9b\xf7\xa4\xea\xb1\x47\xab\x56\xcf\xbd\x27\x22\xc6\x68\x25\x15\x0a\x4d\xe4\x7f\x65\xa8\xac\x2e\x37\xd3\xef\x23\x31\x56\xf1\x5e\xce\x7c\x49\xb4\xa6\x28\x92\x5b\x35\x76\x3e\xb4\x62\xe7\xf5\xb3\xaa\x7d\x62\x64\xdc\xc7\xb2\x48\x1c\xe0\xab\xd1\x6a\x9b\xdd\x92\x07\x92\x0a\xcb\x7f\x12\xc5\x1e\x53\xf7\x1d\xb7\xa0\xee\x9d\xf9\xd7\x06\x0e\x2b\xa8\x63\xb9\xbd\x14\x72\x5d\xf3\x10\x25\x12\x8b\x65\xd1\xc3\x60\xca\x5d\x98\xf3\xd1\x58\xc7\x0a\xf3\x4d\x9c\x30\x45\xca\x1a\xcd\x5c\xa2\xb6\xd0\x5c\x6f\x21\x31\x1c\xf9\x90\x8c\xfc\xf1\x98\x25\xe5\x9b\xd8\xe6\xfb\x32\x1a\x2e\xa8\x59\xbd\xb1\x14\xf2\x51\x83\x7e\xc2\xdc\xbe\x7d\x60\x6e\x9f\xf9\x7a\x7b\x2e\x76\x6e\xc4\x7c\x29\xa6\x65\x7b\x8c\xc8\xb6\x23\x27\x7a\x08\xff\x7a\xb4\xd9\x8c\x2d\xbe\x33\x47\x81\xd2\x2a\x6a\x83\xfc\x3c\xf0\x40\x9a\x47\xb2\x51\x17\x67\xa6\x15\x30\x6f\xa8\x72\x4d\x46\x64\xdc\x29\x39\xbe\xf7\xa0\x6c\xd7\xb2\xf2\xe3\x44\xbc\x5e\x46\x7e\x6a\x44\x2b\x1d\xac\x6e\x2b\x28\x75\x96\x3c\x8f\x91\xfc\xd2\xc5\x2d\xeb\xdc\x95\x8c\xcc\x39\x79\xee\xd6\xc4\xd3\x0e\x8d\xf1\xa5\x04\x05\x6d\xac\x42\xa4\x17\x41\x13\x24\xc1\x18\xd8\xb6\x75\x2e\x81\x62\x71\x3d\xf9\xf0\xdc\x65\x81\x16\x03\x93\x76\x87\x91\x76\x07\x48\xbb\xcb\x48\xbb\x5b\x1a\xc1\x93\x96\x39\x6a\x04\x6f\xc2\x83\xfe\x9b\x40\x75\x5d\x39\x83\xcf\xff\xd3\xe8\xbc\x35\x1e\xba\xa3\xcf\xff\x34\x7e\x5e\x1a\x58\xbf\xc9\x79\x8c\x82\x96\xe5\xf6\x2d\xbc\xdb\x51\x9a\xbf\x7f\x26\x3d\x0b\x0f\x6b\xa8\xe8\x83\x31\x16\x4a\xed\x00\xd2\xab\xab\x2b\x77\xb7\x43\x91\x93\x8a\x24\x45\x01\x1e\x4a\x62\xc6\xc5\xf8\x4b\xa3\x3b\x12\xa0\x7e\x29\xae\xf5\x56\xb0\x26\x81\x0d\x53\x38\xff\x80\x1c\xd8\x6a\xb3\x59\x15\x84\xd6\xc0\x99\xe3\x0b\x21\x0e\x39\xaf\x4c\x30\x3b\x38\xe9\xbf\x57\x5c\x4b\x10\xaa\x30\x59\x15\xc3\x21\x65\x5c\x91\x71\x88\x67\x1a\x20\x05\x92\xe8\xcd\xe6\x07\xb9\x10\xe5\x02\x25\x79\x92\xa3\x4c\xdc\x91\xab\xcc\x33\x21\x60\x8f\x0d\x7a\xaa\xd3\xbd\x2f\xf0\x08\xed\x27\x5c\x80\xb2\x70\xd1\xe4\xf4\xa5\x12\x84\x3c\x61\x27\x50\xc0\x9e\x40\x22\xb1\x14\x2b\xec\x0e\xe9\x28\x18\x43\x78\x40\xbb\x6b\xfd\x9b\x6a\xec\x24\x87\x9b\x09\x2e\x33\x33\xfe\x4c\x00\xae\x25\xe4\x49\x3c\xb5\x34\xd1\xde\x1b\x48\x9a\x1d\x59\x56\xcb\xc7\x99\x10\x22\x23\x5b\x2d\x7c\xa6\xaf\x14\x09\xc2\x64\x25\xa6\xe9\x87\x68\x1d\x4f\x45\x1d\x0c\xf5\x33\x32\x72\x0f\xe8\x64\xc4\xba\xcc\x49\xa6\xee\x2e\x4b\xff\x6c\x69\xdb\x28\x40\x3e\x58\xa1\x62\xa2\x77\xbb\x30\x7f\x91\xf4\xbc\x22\xdc\x9b\x9c\xfb\xb6\x8d\xb2\xac\x91\xc9\x15\xa9\x8f\x43\xcb\x6a\xc9\x5f\x96\x68\xf9\x87\x39\x34\x29\xc6\xb2\xb4\xf2\xf8\x57\x7e\x9f\x3e\x5b\xab\x87\xec\x2d\xb3\x56\x60\xc8\x30\xc0\x32\x1d\xb2\x54\x8c\xf7\xb8\x70\x72\x29\x45\x7b\xc9\x27\xa9\xc6\x34\xa2\x2e\x88\xd4\x5d\x90\xe8\xd8\x0e\xa3\x68\xbc\xdb\xf9\x15\x5d\x30\x2e\x49\xa9\x0d\xee\x1b\xb0\xde\x20\xf3\x57\xd1\x3c\x88\xb1\xdc\x26\xc7\x97\x7c\xd4\x8a\xbc\x3a\xca\x1b\xeb\xd0\x04\x5d\x7b\x43\x3c\x85\xd8\x83\xcc\x65\xa2\xde\xc9\x3c\xb3\xe4\xcb\x39\x07\x30\xd1\x9d\x0c\x7f\x93\x1b\xce\x46\x46\x4e\x28\xf9\xfb\x4a\xa4\x40\xd9\xa1\x86\x6c\x21\x73\xc9\xd3\x73\x26\x66\x8d\x24\x92\x29\x41\xb8\x68\x44\xe9\x9d\x88\xf5\x25\x99\x7e\x68\x48\xcf\x46\x14\x2b\x49\x42\xe1\x4b\x18\xa9\x48\xdf\xc6\x7e\xa7\xc9\xcb\x81\x8c\x6b\x5b\xfd\x0f\xaa\x55\x15\xcc\x4b\x39\x02\x06\xe1\x34\xba\x5f\xf9\x69\x70\xbb\x14\x8d\x58\x4c\x45\xb0\x11\x71\xc9\x55\xb1\x1a\xa0\xbe\xe3\xb1\x8e\xa7\x2e\xf5\xf9\x8a\x98\x2c\x10\x6a\x2a\x4a\xf1\xc8\xb5\x8b\x00\x3e\x3f\xf4\x1b\xc8\xbc\x5b\x20\xe1\x11\xac\x39\x52\x4e\x1b\x10\xf2\xe7\xb7\xcf\x9e\x2f\x20\xca\x44\xda\x96\x2f\x59\x09\x63\xdc\xa0\xdf\xdc\xa6\xf2\x48\xf1\x93\xf4\x4d\x38\x13\x9f\x77\x3b\x25\xa9\x2d\x12\x70\x1e\xb6\xb5\xc9\xf9\x73\x84\x87\xc3\xe7\xaa\x13\xc8\xb2\xf0\x88\x8c\x2f\xd0\x7a\xb7\x5b\x62\x15\x7c\xf1\x58\x47\x29\x07\x93\xc0\x54\xb9\xdc\xe6\xe4\xb0\xd2\x38\xc8\x59\xd6\x83\x43\xd6\x7f\xb2\x5a\x53\x27\x51\x10\xa2\x65\xfd\x1d\x1a\x36\xff\xf6\xb7\x04\x5b\x60\xb6\xc9\x54\x1e\xc2\xb5\x0a\x6d\x38\x2d\x77\x2b\xcc\xe2\xe9\x4d\x41\xa8\x0c\xa1\x6d\xa3\x52\x0e\x3e\x35\xee\x04\xc3\xd0\x09\x64\x42\x2b\x94\x20\xd8\xc4\x66\x4e\x31\x2c\xb5\xe9\x67\x1e\x0c\xca\xb6\xcd\xd1\x92\xf9\x20\x3e\x8a\x2e\x94\x70\x72\x91\x5c\x1e\x0a\x3d\xcf\xe9\x45\xd2\x6a\xe1\x5c\xcc\x54\x80\xfd\x64\x6c\xdb\x28\x1c\x25\xe3\x2c\xf6\x96\x24\x57\xc3\x4a\xbc\x6a\xc9\x19\xf6\x7a\xac\xa7\x90\xc8\xf1\x9d\x2e\x47\xe4\x7e\x90\x1c\x4a\xcb\x72\xbe\x8e\xf3\x74\xa8\x0c\x0a\x77\x3b\xf2\x5c\x70\x4e\x9e\xa7\x4c\x34\xb9\xb0\xed\xb4\xc9\xd3\x0c\xbb\x9e\xbe\xa7\x25\x33\x95\xd3\xc2\xa6\x23\x6c\xaa\x38\xa6\x66\x11\x75\xb2\xc9\x79\x7a\x1c\xf9\xbb\x65\xb1\xc6\x54\x39\xce\x26\x22\x6d\xf8\xea\x42\x5d\xbd\x41\x9b\x56\x45\x02\xb8\x4d\x44\x6a\x6c\x2f\x9d\xe4\x80\x6d\x45\xd6\x64\xa2\xca\x4d\x26\x56\x10\x6e\xf7\x05\x65\x63\x22\x63\x4b\xda\x02\x19\x6f\x80\x03\x2f\x42\x49\xd3\xaa\xcb\xa7\x0e\xb9\x65\x28\x55\xaa\xd5\x71\x14\x63\x94\xc2\x68\x8c\x21\xe6\x3a\x92\x64\xce\xb0\x2a\x8b\x90\x92\x6d\x45\xcc\x9b\xee\x91\x76\xa6\x3c\xfd\x81\x96\x10\x49\x7e\x38\x6f\x86\xa7\x1a\x3f\x28\x5d\x22\xda\xee\xa1\x49\x32\x37\x26\x0c\xd3\x3b\x31\xfd\xc4\xb4\xad\x86\x4b\x18\x71\x49\xc5\x58\x3e\x33\x1c\x24\xc7\xd7\x88\x3c\x19\xa8\x65\x60\x62\x94\x76\xb3\x38\x2d\x5f\x1f\xab\x54\xc5\x59\x39\x0b\x6c\x3b\xb5\xed\x66\x3a\x8a\xc6\xf2\x68\xcc\x55\x48\xe4\x6d\xf5\x36\x01\x17\xea\xe3\x94\x29\x43\xb5\x7d\xc5\x0c\xd2\x48\xc2\x14\x2e\xca\x65\x84\xa7\x6e\x32\x29\x07\x20\xf4\x48\xd9\x60\xb3\x12\x50\xf2\x14\x1d\x14\xe1\xad\x50\x31\x53\x05\x8f\x86\x82\x95\x6d\xc7\x02\x75\xf5\x91\x24\x8a\x8e\x86\x92\x5d\x82\x50\xe9\xb6\x46\x9b\x45\x87\x4f\x47\xae\x57\x8e\x0a\xc6\x6e\x2a\x34\x34\xd2\x17\xe2\x34\x2a\x76\x17\xc9\x9f\x92\xd9\xa8\x76\x5d\x00\x83\xc9\x55\xa3\x27\x45\x21\x5d\xc3\x6f\x7b\x4a\x12\x12\x8e\xac\xc9\x64\x1a\xc5\xe2\xfc\x97\x64\x92\xdc\xf9\xb1\x98\x4d\x26\x96\x76\xf4\xad\xfd\xc2\xb7\x7b\x7c\x71\x82\xd4\x2a\x36\xb4\xee\xa5\xfc\x29\xa0\x7f\x3a\x4c\xd9\x56\xdd\xde\x6e\x65\x37\x5c\x5b\xf2\x00\x69\x76\x35\xbf\x77\x2c\x76\xcc\x13\xdc\x47\x33\xc1\x94\x25\xe5\xd0\x5a\xad\x63\x61\x31\x4b\x83\x64\x0b\xa6\xd1\xea\x31\x0e\x16\x77\x29\xb3\xfe\xed\xff\x6c\x50\x97\x0c\x1a\xaf\x44\x18\x24\x8d\xf7\xeb\xe4\xee\x93\x1f\x8b\x4d\x03\xfd\xb6\x8c\x82\x38\x9a\x7e\x72\xe2\x35\xb6\xd4\xcd\x08\x9a\xc2\x31\x2e\xee\xc6\x36\x8c\x1c\x5f\xb3\x72\xc8\x31\xb4\xdb\x5f\x1f\xba\x37\x97\x52\x80\xaf\xa8\x82\x3a\x9f\x83\x02\xd8\xef\x76\x3a\x80\x00\x8a\x78\x8c\x7c\xac\x4c\x83\xe5\xb9\x8f\x2a\xfb\x49\x07\x53\xcd\x8c\x6d\xc9\xf1\xc5\x2b\xa7\xc2\x7b\x7c\x21\xf2\x6e\xb3\xa9\x9c\x18\x2a\x36\x6b\x43\x63\x89\xaf\x54\x21\xe5\x2f\x7b\x0c\x24\xb7\xd3\x57\x41\x2b\xf7\x7a\xf3\xe5\x62\x92\xc3\xbb\x5a\x4a\xfb\xbc\x6d\x54\x11\xdd\x7f\x47\x2c\xf5\xc2\x73\x03\x12\x43\xb0\x20\xc9\x8f\x61\x15\x5a\x3d\x90\x84\x45\x86\x44\x0b\xab\x25\x77\xb7\x5b\x5f\xf1\xe5\x50\x0c\x2d\xcb\x40\x4b\x86\x22\x9e\x28\x1e\xfc\x65\x34\x13\x2f\x52\xb4\xc6\xf8\xb2\xdb\xa5\x83\xde\x6e\x17\x5d\x75\x7b\x6d\x32\xd8\xed\xd6\x2d\xa2\x3d\x95\x90\x7f\x90\xb9\x45\x64\xf6\x5e\x9b\xba\xbb\x9d\x7f\xd5\xf5\xda\x9d\xf6\x50\x0c\x93\x8c\xa9\x5f\x63\x16\x31\xf9\xae\xe5\xd2\x6b\x58\xb7\x28\x66\xfe\xb9\x2a\xd1\x42\xd1\xb9\x6a\xe9\xf2\x92\xb8\xb8\xd5\xeb\x76\xdb\x3d\xa3\x5b\x1f\x30\xd2\x1e\x68\x07\x49\x75\xc5\xe2\x69\xbb\x79\xfa\xf4\xd4\x69\x1f\x17\xc5\xb0\xa6\xc7\x97\x69\x18\xd7\x85\xff\xa0\xe2\x17\x37\x66\x91\x48\x24\x76\xf5\xa7\x53\xb1\x4a\x1b\xb1\x58\x88\xcf\xa5\x5b\x1d\xf2\x49\x36\x60\x45\xbb\x6f\xf6\x29\xeb\xeb\x6b\x20\x4f\x4a\x84\x32\x11\x5e\xcf\xc8\x83\xba\x2a\xec\xeb\x73\xeb\xf9\xa2\xac\xc5\xcc\xaf\xa6\xd0\xb6\x8c\xa6\x35\x2d\xf9\x49\xb8\x75\x69\xb5\x32\xbb\x79\x4b\xd1\xd4\x92\x28\x6c\x71\xab\x61\xb5\xe2\xd6\x5f\xb8\xf5\x97\x56\xd6\x3f\x9c\x3b\x63\x47\x60\xd9\xbf\xae\xa3\xf4\xc2\xc2\xad\xbf\x58\x7f\xc1\x90\xb4\xac\x2b\xab\xe5\xb7\xac\xcb\xe7\x56\x2b\x95\x2f\xa7\x6c\x9f\x33\x9e\x63\xbb\x3f\x0b\xb4\xb4\xd0\xd7\xd2\xc2\xf7\x4a\x5a\x18\xd6\x78\x33\x6b\x97\x67\xd9\x4e\xae\x22\x96\x60\xcd\x49\xa3\xef\xa2\x07\x11\xbf\xf4\x13\x81\xf0\x6e\x97\x1a\x6e\x56\x66\xcc\xa8\xc3\xb6\x92\x35\x66\x7c\x5b\x50\x9a\xde\x03\x59\x63\xfb\x09\x3d\x4f\x26\xc3\xce\xe0\xd1\x13\x5b\xa2\xb8\x88\xa0\x3a\xcf\x6b\x5e\xd2\xb6\xe7\x70\x28\x1a\x5a\x0d\x8b\x99\x8c\x11\x86\xa9\x16\x66\x05\x73\x34\xbd\xe4\xeb\xdd\xce\xb2\x38\x5f\x66\x42\x8f\xe4\x4c\x1b\xb4\x4c\xcf\xd7\x30\xcb\xae\xbe\x59\x82\xb2\xac\x9b\x8a\x60\x89\xe6\xcf\xf3\x08\xf0\xf9\x44\xcd\xb2\x89\x98\xdb\x36\x9a\xf1\x99\x39\x2e\x2e\xcc\x31\x06\x7f\x38\x6b\x25\x2c\x69\xcd\xf4\xd1\x68\x33\xd2\x6e\xe7\xb7\x36\x14\x47\xe4\xeb\x68\x99\xaf\x80\x35\x7a\x35\x0b\x90\xa2\x82\x00\x41\xc0\x2d\x0b\x22\x6d\x05\x19\xcc\x51\x24\x61\x49\x24\x09\x61\xb7\x26\x3e\xd0\xcb\x68\x1d\xa6\x86\x56\xbd\x15\x8d\x50\x2c\x94\xb7\xa1\x65\x44\xfd\xd1\x95\x7b\x81\xa2\xab\xab\x2b\x4e\xb0\x76\x1d\x4e\x31\x26\x76\x64\xdb\x28\x90\xcf\x67\x15\x6b\xdb\x23\x60\x70\x92\xc2\xe9\x15\xc0\xa0\x12\x22\x41\xc9\xfe\x7c\x6e\x8d\xac\x56\xd4\xb2\xc6\x16\x24\xbc\xc4\x1d\xf9\xf2\x40\x3c\xb3\xe4\xea\x9b\x54\x9d\xf2\x77\x56\xd5\x42\x50\x4b\x83\xf4\xe9\x54\x16\x07\x41\x8d\xd9\x61\xb3\x19\xc9\x53\x80\x77\x3b\xeb\x8f\xdf\xff\xd7\x7f\xfb\x2f\x56\x93\x9b\x07\x95\xbc\x57\x9b\x4c\xc9\xdf\x93\x61\x8a\xa6\x2a\x04\xe1\xf8\x4c\x32\x57\xfe\x28\x1c\xf3\x75\xf9\x90\x25\xc5\x91\xf0\x95\xf5\xe1\x52\x89\x33\xeb\x69\x0a\xc1\xcb\xf0\x09\x88\xa4\x34\x91\xe0\x39\xef\x8a\x12\xb0\x2c\x8c\x81\x1e\x7d\x58\xeb\x0f\x95\xb0\x54\xea\x2e\x58\x23\x9d\xac\x3f\x88\x47\x54\x5b\x29\xf4\xcd\xdf\xd2\xbf\x85\x7f\xdb\xfc\x6d\xfe\xb7\xb8\xf1\x6f\xff\xf5\xbf\xfd\xef\xbf\xff\xb7\xff\xfa\xbf\xfd\xf1\xfb\xef\x7f\xfc\xfe\x9f\xff\xf8\xfd\xff\xff\xc7\xef\xff\xdd\x1f\xbf\xff\xf7\x7f\xfc\xfe\x5f\xfe\xf8\xfd\x7f\xf8\xe3\xf7\xff\xf1\x8f\xdf\xff\xa7\x3f\x7e\xff\x9f\xff\xf8\xfd\x7f\xf9\xe3\xf7\xff\xeb\x8f\xff\xfc\x7f\xfc\xdf\xbf\xff\xfe\xb7\x35\x75\x69\x5f\xfd\x1f\xfc\x6d\x3d\x17\xf3\xb9\x65\xd8\xab\xe3\x5b\x85\x72\x96\xbe\xe2\x2d\xee\xf5\x8c\xba\xbb\xad\xd5\xdd\xdd\x81\x89\xa5\x2a\x59\x03\xbe\xcc\xed\xfe\xe6\x7c\x29\x79\x95\x37\xf7\xf7\x62\x16\xf8\xa9\x80\x19\x5f\xea\x30\x70\x45\xd2\x1d\x5f\x3a\xdf\x8b\x24\xf1\x17\xe2\xe5\x9d\x1f\x86\x62\x09\x2b\xbe\x74\x5e\x05\xc9\x4a\xf2\x2f\x70\xcf\x5d\xd8\xc8\xed\xf0\x78\xec\x85\xdf\x52\x8c\x79\x30\x47\x9b\x83\x1b\xf8\xe4\x0a\x65\xe1\x51\xe5\xf2\x1b\xf9\x96\x7c\x86\x14\x49\xe8\xb7\xa8\x9c\xc8\xcc\xb5\x58\x99\xb3\xe1\xfd\xd9\xdc\xb6\x67\xea\x3e\xcc\x7a\x03\xa2\xd1\x18\x42\x4e\x2e\x8e\x02\x32\x87\x17\x38\x8b\xc6\x93\xb3\xd1\x61\xab\x55\xe8\x3e\x36\xa3\x56\xeb\xbe\x62\x0f\xef\xd7\x89\x9a\xc4\x50\x14\x57\x15\x0a\x0c\x29\xde\x43\x8c\xee\x31\xdc\xef\xcb\x3e\x36\x02\x6f\x4b\x03\xdb\xc3\x91\x61\xe5\x14\x0f\xe3\x4a\xf6\x69\x61\xae\x18\xa1\x47\x10\x40\x30\xde\xb3\x95\x6d\xaf\x9c\x30\x7a\x38\xc8\xac\xd2\xca\xf9\xee\x86\x28\xe0\x28\x54\xc2\x8f\x3b\xec\xc8\xbd\x48\x21\x54\xbf\xc4\x89\xc2\x7b\xbd\x8a\x7c\x01\x31\x8f\x50\xe0\xac\xa2\x24\x35\x2b\x0b\x81\xac\x81\x2d\x1d\x7f\x36\xbb\xde\x88\x30\xfd\x2e\x48\x52\x11\x8a\xb8\xd6\xf3\xb5\x54\xd0\xb6\x9b\x4b\x27\xb8\x97\x4d\x7c\x50\x66\x13\xc9\x10\x55\x7b\xb9\x2c\xb7\x83\x44\xcb\xb2\x40\xc2\x9a\x3d\x1c\x37\x86\x2c\xd3\x45\x0b\x16\x92\x9d\xc5\x2c\xe6\x56\x14\xc6\xc2\x9f\x3d\x26\xa9\x9f\x8a\xe9\x9d\x04\xb1\x56\x10\x36\xd6\xc8\xd2\x66\x1a\x56\xd5\x3e\x20\xa9\x98\x2d\x95\x72\x61\xe7\xb8\xa2\xf2\x3a\x27\x4e\x2c\xee\xa3\x8d\xd0\x05\x75\xf0\x88\xdc\xa1\x7d\x5f\x0d\x79\x91\xe8\x18\x78\xd1\x3a\xcd\x67\x1f\x5c\x5c\x91\xbc\x28\x01\xc4\x1c\x74\x9c\xf5\x59\xee\x01\x99\xc5\x59\x56\x76\x40\x46\x86\xda\x66\x9e\xb9\x09\x41\x1d\xf1\xd3\x42\x7a\x8d\xb8\xf4\x4d\x52\xfe\x67\x08\xf2\x4b\xa5\xbe\x40\xc6\x23\x6d\xd1\x84\x2f\xdd\x61\x88\x44\x4b\x5d\x6c\x13\xe4\xc2\x43\x83\x5d\x54\xdb\x27\x65\xf6\x39\xd2\x7c\xe2\xaa\xa7\xdc\x2c\xb3\xac\x01\x71\xcf\x4a\xf1\xb4\x02\x1e\x1a\xb2\x41\xd2\x45\x41\x0d\xda\xfc\x29\x8e\xc2\x45\x43\x9f\xd6\x12\xe1\x59\x41\x83\xc5\x7d\x44\xe4\xf8\x4e\xb0\x92\xb3\x87\xa4\x35\xbe\xde\xa3\xb4\x11\x24\x6f\xfd\xb7\xc6\x61\xc3\x65\x48\x5c\xb9\xc3\x90\xc5\x18\xe5\x6e\x03\xe4\xf8\x7e\xac\x5c\x3e\xe2\x7d\x25\xfb\x12\x1f\x12\xcf\x99\x41\x20\x79\xe2\xca\xa9\xf2\xba\x9f\x58\xec\x52\x90\x45\xb9\xc8\x6a\xb6\x8f\x22\x69\x30\xf7\x60\xbd\x9f\xb8\xcf\xe9\x4b\x03\x31\x7e\xcd\x71\x65\x34\xaa\xce\x2f\x5d\x27\xd8\x7e\x22\xc4\x9c\xba\xa1\xb2\x90\x4e\x1d\x5f\x9a\x53\xa1\xe8\x82\x39\x52\xa2\xa8\x12\x2f\x34\x28\x8b\x2e\x0a\xf2\xa7\x47\x33\x3b\xb0\x5e\x16\xc7\xa3\x6b\x30\xa3\xf1\xa9\x6c\x67\x17\x4c\x90\x9e\x8e\x28\xec\x51\x13\x51\x98\x78\x3a\xa2\xb0\x5a\x86\x55\x46\x67\xdf\xab\x94\x3e\x86\x4d\x76\x11\xda\x63\x66\x67\xb6\x30\xf2\xa5\x5b\xa3\xea\x98\x18\xe9\xe7\x43\x66\x80\x73\x6d\x02\x8b\xbc\x33\x2e\xaf\x1f\x32\x9f\xce\xcf\x85\x91\xd6\x8b\x2c\xc6\xc8\x27\x23\xf5\x81\xf7\x59\x84\xab\x1b\x13\x1c\xfd\xa3\xb6\x52\x81\x97\x4a\x50\xe4\x61\xf8\x5e\xdd\xa6\xde\xc1\xf0\x8b\xf1\x1e\x7d\x63\x22\x23\xbf\xca\x6e\xce\x78\x2b\x8b\xb8\x18\xbe\x93\x23\x1e\x60\x78\x6d\x64\x7a\xbf\x71\x2d\xd8\x84\x6f\xf8\x6b\x67\x0e\x3f\xf0\xdf\x9c\x39\xfc\x3d\x0f\x9d\xe2\x6c\xc2\x8f\x3c\x74\x72\xbe\x11\x7e\xe5\xa1\xf3\x43\x10\xa6\x7d\x25\xcb\x84\x9f\x0e\xdd\xd3\xe1\x5b\x9e\x68\xb7\xf3\x6f\xd6\xf3\xb9\x88\xe1\x67\x9e\x38\xaf\xfc\xd4\xff\x31\x10\x0f\xf0\x57\x7e\x83\x5c\x0c\x7f\xc7\x6f\x10\xc5\xf0\x8f\xfc\x06\xb5\x31\xfc\x13\xbf\x41\x1d\x0c\xff\xc0\x6f\x50\x17\xc3\x3f\xf3\x1b\xd4\xc3\x20\x04\xff\x88\x9a\x2e\x86\x54\x3d\x10\x0c\xb1\xe0\xdf\xeb\xf0\x21\x09\x84\xf2\xf9\x93\x78\x4c\x20\x90\x4f\xc6\xb3\x10\x22\xc1\x7f\x2a\x04\xf5\xef\xe6\xe0\xcb\x84\x58\xdd\x04\x05\x49\xf1\x7c\x13\x2c\xee\x52\x58\xcb\x84\x5f\xa2\x20\x84\xa5\x7c\x4a\xa2\x38\x85\xa9\x7a\x52\xf7\x03\xcd\xe5\x63\x6e\x2e\x37\xd3\x6f\x95\xd0\x84\x77\x82\xbf\xaf\xf8\x08\xae\x54\x42\xf5\x9a\x9a\x7b\xc1\x3f\x21\x4b\x4e\xcd\x6c\x52\xb1\x44\x87\x8d\xfa\x32\x13\xf3\x83\xf4\x47\xc1\x7d\xe7\xe5\xbb\xb7\x1f\x3e\xde\xc0\x42\x3e\x7f\xfc\xf9\xfd\xf5\x2b\xb8\x95\x8f\x3f\xbe\xb9\xfe\x09\x26\x82\xdf\x20\x52\x8d\x34\x95\x1f\xd0\xcf\x02\xbd\x44\x02\xc4\x68\x23\xc6\x8a\x40\xc1\x18\x1e\x44\x2d\xc5\xde\x20\x9c\x2b\x9a\xe1\x57\xe5\x91\x2a\x97\x95\xf4\xd4\xda\xa1\x11\x19\x63\xe7\x56\xad\x20\x1e\xb9\x63\x59\xc9\xb5\xe0\xcd\xe6\xaf\xb6\xdd\x6c\xfe\x5a\xd2\x0f\x25\x22\xb5\xed\x6a\xe5\xba\x46\xa2\x83\x8d\x2b\xb9\x1e\x86\x77\xa2\xee\x2a\x16\x7e\x67\x78\xaa\x58\xf2\x54\xf1\xff\x2f\x93\xfc\xff\x7d\x86\x10\xa2\xf9\x3c\x11\x69\x09\x21\xc4\x7b\xf8\x20\x0e\xb1\xcf\x44\xf9\xd9\x2c\x84\xbe\xb6\x32\x03\x88\xc6\x53\xfd\xc7\x72\x74\x1c\xbf\xa1\x16\x42\x5f\x06\xd6\x94\xc4\xc8\xe7\xc3\x8e\x05\x73\xd4\x94\x15\xee\x76\x4d\x74\x6f\xaa\xc4\x59\x55\xd6\x9b\xb4\xb6\xaa\xb2\x8f\x41\xa9\xb7\xd9\xcd\xe7\x7b\x78\x71\xd8\x8c\xc9\xf1\xe9\x70\xb5\xe0\xd3\x61\xce\xfc\xb6\x11\xee\x42\xc8\x33\x5b\x31\x08\xf8\x67\xa1\x6c\xb1\x2e\xc2\xab\xf8\x02\x07\xa3\x78\xcc\xd3\x51\xdc\x6a\x8d\x0b\xe4\x09\xef\xc5\x51\x28\x91\x6f\xd4\xc3\x89\x2b\x41\x74\x90\xf9\xd9\x28\x1e\x2b\xaf\xaf\x1b\x71\x42\xf7\x16\x80\x96\xbe\x3d\x68\x07\xc1\x23\x83\xfd\x29\x5f\x9e\xb8\x04\x65\x5e\x88\x7d\xa7\x30\xe3\x2f\x50\xa2\xef\x79\x51\xaa\x9f\x99\x6d\x37\xaf\xd1\xcc\x44\x2c\xf2\xf9\xcc\x58\x2f\x49\xe0\x3e\x1a\x43\xca\xdd\x8b\xa6\x0a\xbd\x52\x89\x30\x94\xb6\x5a\x38\xd4\xd4\x7d\x64\x6e\x42\x3e\x4b\x78\xa8\xee\x74\x9b\xdb\xf6\xf2\x8a\xda\x36\x9a\xf2\x35\x9a\x42\xf9\xf6\x48\xa0\xca\xa7\xc5\x85\x98\xaf\x50\x7e\x9f\xbd\x9e\x57\xe5\x4f\x1e\xe3\x8b\xf8\x2a\x55\xd5\x07\xa3\x74\xcc\xe7\xc3\x29\x4a\x46\xe9\x18\x52\xcc\xe4\x6f\x69\x9e\x3f\x56\x48\xca\x22\x90\xb8\x0b\xe9\xf1\xe4\xc4\x79\x0b\x29\xbe\x48\xaf\xc4\x05\x56\x42\xfb\xa2\x6f\xa2\xb4\x88\xf1\x1e\x5e\x9a\x83\x57\x3d\x65\x33\x51\xf8\x92\xff\xaa\xef\x03\xc1\xf0\xbd\xa8\x71\xe9\x9d\x65\xe1\x51\x5e\x8a\xe1\xd4\x94\xfa\x20\x8c\x74\x83\x65\x4f\x15\x84\xfc\x8b\xe0\xdb\xe2\xb2\x54\x56\xbb\x75\xbf\xab\xd6\x04\xca\x38\xe1\xab\xae\x45\xc5\x7b\x10\x1b\x11\x3f\xd6\xb9\xcf\xfd\x53\xb9\xc2\xaf\xbb\x58\x07\xef\x61\x1e\x2c\x97\x35\xdb\xf9\xad\x19\x78\xed\x18\xe7\xc1\x32\x15\x71\x5d\x1f\x5e\x98\xe5\xf9\xbb\x3f\xd1\x17\x55\x71\x38\xab\xab\xf6\x1f\xfe\xe4\xd0\xc2\x99\x42\x67\x75\x55\xfe\xf3\x9f\xab\xb2\xe6\x76\xa3\xbf\xfe\xa9\x9a\x02\x8d\x67\xeb\xba\x96\x8a\x3f\x59\xe3\x74\xb9\x9e\x89\xba\xdb\x51\x1a\xe2\xcf\x55\x29\x51\x7c\xcd\xe6\x58\x8b\xa7\x76\x47\x89\x8a\xa8\x29\x1b\x3d\x59\xf6\xde\x5f\xd5\x75\x7f\xf2\xe7\xba\xaf\x49\x96\x9a\x4e\xf8\x4f\x76\xa2\x44\xe9\xd4\x94\x4d\xbe\x50\x76\x23\xe2\x44\xd4\xde\x13\x06\x29\xcf\xca\x14\x00\xad\xe0\xb5\x50\xfa\x5c\x89\x22\xdd\x8b\xf0\x32\xbe\xc0\x3a\x2a\xfa\x28\x1c\x83\xfe\x6d\xb5\xc6\x3a\xe5\xfc\x3c\x35\x69\x69\xf9\x7a\xde\xbb\x20\xd9\x43\x12\xdd\xd7\xba\xd6\xfe\xe3\x9f\x9a\x3f\x49\xd7\xd5\xd5\xb6\x14\x87\x00\x4c\x66\x5e\xdf\x2a\x84\x5e\x7b\xf3\x4e\x9e\x33\xcc\x63\xad\x42\xc0\x37\x0a\x0b\x97\x50\x3e\x7a\x89\x62\x88\x15\x46\xc7\x28\x36\x54\x14\xc4\xce\xed\x63\x2a\xde\x29\x82\xa6\x15\x3c\x8b\x9d\x6f\x7e\xfe\x78\xfd\x61\xf2\xfe\xfa\x66\x72\xfd\xdd\xf5\xf7\xd7\x6f\x3f\xc2\xaa\x74\x49\x74\x3a\x0c\xd9\x06\xa5\x10\x62\x7c\x1e\x28\x56\xeb\xcd\x09\x12\x22\x83\x56\x87\xa0\x1d\x94\xd3\xc9\x1e\x5e\x55\x91\x78\xf6\xd9\xf0\xe7\xef\x04\x2a\x4f\x1b\x48\x42\x5b\xdf\x6f\x65\x06\x18\x6a\x24\x1f\xf0\x15\x0a\x73\x24\x19\xe9\xe0\x84\x41\x2b\xbd\x8a\x0f\x69\xb6\x82\x89\xd7\x12\xef\xcb\xe0\x02\xeb\x85\x6e\x45\x63\x1e\x8e\xa2\x56\x6b\xbc\x87\xb7\x82\x6f\xb3\x80\x20\xc7\xdb\x33\x38\x44\x53\x7b\x1d\x50\xe4\x38\x67\x78\x9c\xd3\x44\x24\x39\xce\x1b\x1f\xe5\xdd\xc3\x77\x27\x66\x55\xd3\x94\x62\xb4\x10\x63\xdb\xce\xbc\xd7\x73\x4b\xb2\xd4\xb6\xf5\x3d\x0e\xb6\x6d\x64\xcf\xad\x14\x73\x9e\xdb\xf7\xed\xe1\xf5\x89\x7a\xbf\x93\x44\x5b\xca\x1f\xb5\xef\x10\x1e\x4e\x11\xd5\x0e\x40\xec\x07\x2d\x99\x81\xdf\x8e\x69\x36\x23\x60\x47\x07\x85\x6d\x7b\x82\x62\x49\xf9\xa2\x18\x2c\x73\x17\x01\xde\xed\xd4\xab\xba\xfc\xc3\x3c\x27\xfa\x59\x79\xec\xe5\x46\x0a\xe6\xdb\x43\x1c\xa4\x3a\x9e\xa8\x6d\x37\x63\x27\x7b\x35\x5f\x45\x6e\xad\x6f\xbe\x17\x09\xc3\x6f\x4c\xef\x18\x52\x56\x8b\xb1\x09\xed\x28\xf0\xfe\xec\x51\xec\x76\xe8\x37\x67\xce\x5f\x0b\x78\xed\xcc\xf9\x6f\x02\x43\x84\x22\xe7\x43\x2b\x72\x5e\x3f\x6b\x3e\x8a\xc2\xba\x7e\x7b\xca\x09\x8b\xbd\x16\x50\x71\x3e\x7b\x64\xbf\x09\x15\xa1\xa9\x62\x3f\x65\x96\x54\xb3\x19\xb6\x8d\xe6\x82\xcf\xea\x88\xa0\xb5\xa8\x98\x37\xaa\xdd\xff\x8d\xe0\x33\xb4\x95\xd4\x0e\x3e\x9b\xa1\x6f\x04\xbc\x15\x18\xe6\xf2\xe1\x4e\x3e\x1b\x66\x13\x83\xfa\xb6\x55\x5c\x21\x7b\x23\xd4\xc5\x5c\xaf\x04\x4c\xeb\x2e\xbb\xc2\xdb\x7d\x1e\xb1\x9e\xcd\x0f\x83\xd9\xb3\xef\xe5\x08\xde\x0b\x59\x9f\xa5\xe1\x82\x05\xd6\xad\x55\xa4\xe5\x20\xc2\x02\x2b\xaa\xa6\x7f\x97\xf9\x20\x2d\x8b\xf4\xdc\x2f\x49\x58\x18\xbe\x91\x49\x2b\xf1\x14\x6d\x2f\xb7\xf3\x7e\x7f\x32\x3e\x56\x92\x19\xc4\x4e\xb9\x68\x21\xb4\xe6\xcd\xe6\x1a\x0f\xad\x97\x4b\xff\x7e\x25\x66\x16\xb3\x2c\xdc\x32\x61\x8e\x60\xc6\xd5\x1e\x6b\x09\xb8\xe3\x6a\x87\xb5\x04\x6c\x78\x38\x9a\x8e\xe1\x91\x6f\x76\xbb\xed\x1e\x16\x7c\x63\xdb\x1f\xd0\x06\xc3\x03\x6f\x6e\x76\xbb\xa6\xef\xbc\xf8\xe6\x47\x7d\x9d\xd2\x0b\xf9\x6d\x53\x92\x1b\x7c\x2a\x77\xc5\xf0\x29\xf1\xa9\xb1\x54\xb3\x1a\xd7\x2d\x67\x32\x2b\xec\x24\x37\xa3\xd9\x18\xc5\xcf\xd2\x56\xe8\x44\xf0\x20\xf0\x3e\xa3\xe9\x0f\x2f\x56\xab\xad\x13\xc2\xc2\xf2\x74\x32\x3b\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\xee\x74\xdb\x81\x13\x41\x58\x6e\x5d\xe1\x98\xe2\x0c\x29\xc7\xfd\xfd\xd9\xc3\x10\x6d\x78\x52\xf5\x76\xd7\x61\xda\x96\x48\xc0\x06\xa6\x60\x4d\x66\xe6\x9a\x91\x48\xdf\xb3\x0d\x33\xee\xc2\x9d\x86\xc2\x12\x08\x98\x7b\x8b\xe3\xb2\xb5\xd9\xb7\xbb\x9d\x55\x92\xc4\x58\x9c\xa3\x35\xbf\x95\x99\x77\x3b\xeb\x83\xb2\xdb\xa9\x7e\x5e\xe7\x3e\x8a\x9a\x97\x8e\x87\x9f\x04\xda\xc8\x23\x7e\x63\x4e\x8f\x7c\x39\x8b\x78\x0c\x77\x12\x71\x84\x60\xae\xfa\x7e\xe4\x1a\xbb\xe9\x2d\x7a\x56\x16\x08\x6b\x13\x84\xc7\x63\xd6\xbe\x40\x13\xc1\x1c\x21\x9f\x3f\x9e\xdf\xe1\x4b\xf7\x64\xae\xfc\xf6\x73\xe4\xf3\x15\x0a\xf0\xb3\x14\xb7\xee\xae\x1e\x4f\xd7\x9a\x70\xff\x79\xaa\x4b\x25\xfc\x1e\xc5\xca\x89\x44\x3c\x34\xbe\x45\x3e\x4f\x9e\x99\x5b\x3c\xe7\x48\xa8\xb9\x85\xed\x2d\x8b\x20\x62\x77\xb0\x64\x3e\x08\x96\xc0\x86\xc9\xcc\x3f\xa3\x08\xef\xf1\xc5\xec\x32\xb9\xc0\x9f\x90\x80\x59\xab\xa5\xf8\xac\x17\xbc\xb4\x75\xf9\x3b\xf4\x8d\x02\x1c\x2f\xa0\x7c\xf5\x85\x05\x1b\x8c\xd9\x41\xf0\x73\xed\x5c\x54\x27\x31\xd9\xa0\x73\xf3\xed\xcd\xf1\xb5\x55\x1b\xd0\x59\xf4\x9d\xb0\xfa\x99\x38\xdd\xec\x51\xe0\xbd\xba\xf0\x6d\xb7\x3b\xb5\x91\xd4\xd6\x39\x2b\xf9\xa8\x6e\x60\x8a\x41\xee\x9c\xe1\x97\xf6\x4c\xf4\xe4\x9e\x89\x86\x39\x3f\x1f\x0c\x65\x6f\x1e\x51\x0c\x66\x6f\x40\x90\x19\x26\x36\x39\x0f\x0f\xbf\x62\x66\x12\x30\x7b\x6a\xbb\x99\x5c\x72\x05\xd5\xd4\xff\x15\x2d\x9a\x9c\x1f\x9b\xbf\x0f\x3f\xa3\xc7\xdc\x61\xf3\x33\x5a\x60\xcc\x64\x4a\xf5\x26\x47\xd5\xce\x66\xb7\x9b\xa3\x0d\x08\x78\x1c\x89\xb1\xaa\xb3\xbc\x98\x2f\x20\xde\xed\xd0\x8b\x8a\x67\xc7\x06\xeb\x7d\xfe\x9e\xbf\x18\xdd\x89\x31\xdc\xf0\x66\xf3\xbd\x6d\xa3\x22\xb4\xdc\x7b\x15\x6a\x2d\xb3\xda\xd2\x6f\x18\x3e\xf2\x1c\x8b\x9c\xc9\x26\xef\x85\x72\x18\x96\x3b\x65\x21\xe4\x02\xc8\xa7\xdb\x22\x71\xa3\x6e\xc2\x42\xeb\xa1\x59\x61\x3c\x5a\x89\x31\xe7\x53\xb6\x52\x1d\x7f\x81\x77\xbb\x6f\xd0\x8b\x27\x60\xfc\x54\x02\xf7\xeb\xd1\x74\xcc\x37\x0a\xe1\x7e\xdb\x8a\x9c\x9f\x14\xd2\x45\x9b\x26\x7f\x54\xd7\x6f\x29\x44\x0c\x53\xd8\x1e\x11\xa0\x2c\xdd\x97\xf1\x74\x75\x8f\x3e\x3a\xd1\x3c\x5b\x15\xed\x21\x37\x85\xed\x3c\x8e\xee\xd9\x8d\x80\x68\xce\x3e\x4a\xd4\x66\x1d\xd5\x69\xc9\x7e\xcb\x09\x7f\x51\xf7\x51\x6e\x12\xd9\xe0\x7b\x98\x4a\x2c\x0c\xaf\xd0\xd4\x24\xa8\x1e\x5c\x0b\xd9\x88\xc6\xb7\xfb\xf2\x87\xe6\x0d\x4c\x15\xb6\x8e\x77\xbb\x17\xb9\x90\x96\xf3\xb9\x50\x6b\x97\x27\xcc\x45\xb9\x54\xdd\xa1\x23\x38\x77\x1c\xd6\x43\xca\xd0\x7c\xa5\x3d\x54\x27\x3e\x1d\x11\xa0\xe3\x03\x99\x30\xc2\x4d\xae\x2b\x56\x5f\xf1\xd1\x67\x7d\x49\x55\xb5\xba\x17\x07\xb9\xf4\x34\xeb\x0a\xf6\x58\x77\xab\x8e\x90\xf8\x45\x2e\xf4\xcd\xf0\x3d\xfb\x28\xe7\xe1\x46\xcf\xf2\x9d\x80\x8f\x59\xfc\x99\xda\xe0\x3d\x65\xdb\xe0\xc2\x69\x2e\x8b\xa3\x67\x3c\xcf\x0f\xef\x8c\xa5\x1e\x23\xd4\x53\x5a\x4a\xd2\xf6\x94\xc6\x90\xb4\xfb\x70\xa0\x9a\xcb\x1d\x6f\x33\x8f\x75\xd2\xe9\x32\xd2\xe9\x02\xe9\xf4\x18\xe9\xe4\x76\xa8\x79\x7c\xbe\x2c\xa0\x37\xe9\x75\x18\xe9\x65\xf7\xbc\xb5\x07\xac\x3d\x80\x8e\xcb\x72\x7f\x56\x7d\xef\xa4\x72\x77\xa8\xde\x58\x5b\xba\x11\xee\xc8\x33\x25\x0b\x0d\x5e\xba\x17\xae\x14\xfd\xef\xe0\x56\x5b\xd9\xd3\x23\xfd\xd5\x91\x1d\x51\x59\xc7\x94\xd9\x42\xf7\x07\x07\x3a\x26\x8f\x9a\xb8\x9d\xc4\x5c\x5a\xd9\xeb\x68\x1d\x53\xdb\xd3\x2a\x26\xa5\x51\x9a\x65\x1a\xa5\xbb\x4c\xa3\xb4\x2a\xb4\x40\xf7\xb9\xd1\xf2\xc6\x68\x6e\x1e\xb3\x40\xa0\x0b\x1e\x56\xf4\x2b\xb7\x3c\x2c\xf4\x2b\x13\x1e\x3a\x92\x46\x81\x87\xaa\x0e\xe7\x9a\x87\xce\x9b\x70\x1e\x84\x41\xfa\x08\xef\xf8\x02\x3e\xf0\x89\xe3\xdf\x26\xf0\x99\x4f\x54\x40\xb9\x17\x7c\xa2\xf9\x77\xf8\xc4\x27\xce\x32\x5a\xc0\x7b\x3e\x71\xbe\x7b\x4b\xe1\x86\x07\x43\x6b\x72\x6b\xb1\x9c\x60\xfd\xa8\x52\x96\x32\xa5\x44\x96\xbe\x54\xa9\x91\x49\x35\x44\x6c\x11\xea\xe7\x7b\x74\x78\x9d\x34\xf8\xea\xa4\x68\x7d\x43\x2c\xa7\xae\xff\x2c\x3e\x4f\xcf\x09\xac\x39\x22\x97\x97\x09\x3e\x27\xb0\xe4\xeb\xab\x2b\x02\x53\x4e\xdb\x8a\x29\xfe\xac\x62\xdd\x75\xf0\xb9\x7a\xf0\x3c\xcc\x5c\x98\x73\x57\xce\xe6\xa5\xbb\xdb\xb9\xfa\x8a\x0e\xf2\x5c\x5c\xba\x43\xc2\x5c\x85\xe4\x91\xe0\x1f\x90\xc0\xb8\xc9\xc5\x6e\x27\x38\xe7\xd7\x43\x14\x70\x15\xc7\x8d\x30\x17\x42\xbe\xc6\x0c\x85\xfc\x05\xfa\x84\x04\x7e\xfe\x1e\x83\x78\x86\x22\xae\x1a\x90\x44\x1e\x91\xc4\xdf\xf9\x39\x44\xcf\x38\xc5\x80\x44\x8b\x87\xad\xe5\x15\x27\xc3\xe9\xf3\x88\x4d\x9f\xc9\x7c\xe4\x7c\x89\xf1\xb3\xe8\x8a\x53\x99\xb7\xd5\x82\xe8\xb9\xcc\xab\xf2\xad\x65\x63\xa6\x15\x53\x10\x05\x1c\x89\x67\xd1\x39\xc1\xaa\x74\x2a\x73\xf2\x25\x66\xb2\x57\x2a\x65\x59\xfe\xc4\x5d\x8c\x2f\xd2\x2b\xde\xbf\xf0\x47\xf3\x56\x6b\xcc\x25\x9d\x19\x40\xf0\x9c\xd3\x6e\x0f\xd2\x73\xde\xc7\x17\xea\x1a\x71\x1e\x5e\x5e\xa6\xbb\x00\x92\x16\x4f\x2f\x92\x2b\xb7\x9c\x3f\x84\x50\xe7\x4f\x54\xfe\x4c\x82\x34\x3a\x3f\x9f\x8f\x77\x9c\xd0\xfe\xb3\x19\xf8\xfb\x7c\xb5\x7e\x39\x58\xad\x7c\x69\x22\xb5\x34\x81\x5c\x1a\x9f\x47\x72\x69\x12\x1e\x9c\x7b\xb0\xe6\xb1\x5a\x2d\x31\x5a\x9f\x9f\x8f\x61\xca\x09\xf5\xec\xa5\xbe\xea\xe9\xea\x8a\x7b\xaa\x3f\x53\xd9\x83\x67\xd3\x96\xba\xb8\x77\x7d\x7e\x6e\x3a\xa3\x3b\x3f\xb5\x65\xcd\xe7\x6a\xd5\xa7\x57\x57\xfc\x3c\x29\x06\x12\xaa\x82\xe1\x61\xc1\x60\x8e\x5c\x75\x7f\xc0\x94\x93\x73\x3f\xbf\x4c\x62\xca\x39\x8f\x32\x4a\x36\x1c\xbe\xf5\xdf\xb2\xe5\xf0\xfc\x9a\x5d\x9f\x85\x2d\x6e\x66\x75\x7a\xce\x7d\xe3\x79\x81\x96\x2a\x90\x1f\x7e\x16\xaa\x29\x9f\x9e\xa7\xb8\x98\x88\x37\x95\xfb\x9f\xdb\xe3\xcb\x4b\xda\xd9\x89\x11\x1d\x5f\x5e\x92\xde\x4e\x8c\xc8\xf8\xf2\xb2\xbf\x13\x23\x77\x5c\x94\x79\x55\x94\x19\xc9\xb9\x17\xa5\x6f\x6f\x0f\xbf\x81\xb8\xba\xea\xdb\xb4\xdb\x2d\x65\xfa\xee\x64\x26\xf9\x40\x7a\xd9\x13\xed\x1c\x14\x7c\x5d\xea\xad\x3c\x70\x5d\x0a\xfd\xd2\x60\x7e\x3b\xf8\x4c\xdb\xd0\x29\x7d\xce\x18\xfa\xed\x3d\x2a\x3b\x39\x3c\xa9\x2c\x32\x9a\xa2\xbc\x8e\x1f\xaa\xc6\xbc\x01\xbf\x43\xad\x18\x67\xb2\x22\x31\xfa\x38\x36\x14\xfb\x43\x46\xb1\x2b\x11\x72\x33\xe3\x6e\xb8\x18\xdd\x8c\x9d\xc9\x2d\xf8\x3c\x68\x89\xd1\xcb\x31\x24\x3c\x0b\xed\xe1\x83\xdf\x2a\x2c\x24\xc3\x61\xc2\x12\xc7\x48\x2a\x51\xa9\x0b\x7f\x8f\xf2\x8b\x77\x20\xca\xac\x16\xf3\x6e\xf8\x5f\xea\x46\x26\xe8\x4c\xf2\xae\xac\xb9\xaf\xbb\xb2\xe4\x21\x6a\x05\x12\x96\xbb\x17\xd3\xcb\xf4\x62\xda\x6a\xe1\x64\xb4\x6e\x4d\xc7\x7c\x39\x8a\x86\x53\x96\x9e\x4f\xcf\xc9\x78\x2f\x9b\x91\x9c\xae\x66\xca\x96\x15\x5c\xbf\xd0\x1c\xc0\x6e\x77\x90\xae\x2e\x87\x35\x2c\xc0\x6e\xb7\xac\xd3\xd6\xea\xfb\x63\x75\xc6\x9c\xf8\x5f\xa8\x2b\x2d\xa1\x42\xb4\x37\xf9\x42\x11\xa0\x92\x76\xc8\x05\xb7\x3f\xc2\xaf\x1c\x2d\xea\x4c\x3a\xcc\x95\xd3\x0b\x5d\xe1\x3b\x74\xa7\x6c\x3b\xca\x17\xd0\xbe\x2b\x6d\x87\x9f\xf8\x0a\xbd\xc3\xf0\x2d\x77\x2f\x7e\xca\x44\xaf\xdf\x5e\x60\xf4\x23\xff\x69\xf4\x6d\xab\x35\xc6\x41\xd8\x58\xec\x76\x09\x5a\xc0\x8f\xf0\x6e\xf4\xe3\x18\x9f\x45\xbb\x1d\xfa\xb5\x42\x50\x2f\xf0\x5e\xf6\xe9\x67\x7d\xd3\xae\xbe\x19\x17\x51\x49\xdd\x97\xef\x8e\x53\x26\x8a\x61\xda\x3f\xfb\x39\x7b\x42\x2e\x50\xd2\xf1\x3a\xfd\x76\xaf\xd3\xc7\x50\xa4\x93\x22\x7d\x80\xa1\xf9\xb3\xb3\xc8\x0a\x60\xdb\x2e\xde\x08\xde\xed\xd6\x95\x6b\x6c\xb7\xa6\x86\x03\x81\xef\x5f\x4b\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\xf6\x96\x6f\x0a\x55\x9f\x46\x97\x29\x06\x57\x47\xab\x1b\x7d\x1c\xf3\x74\x0f\xb7\x47\x32\x43\x53\xfd\x2d\x58\x19\x75\x60\x61\x98\x22\x21\x1b\x2c\x52\x32\xaa\x66\xf4\x71\x0c\x01\x9f\x1b\x2b\xad\x40\xe2\xd2\xe0\x2a\x3c\x3c\x24\x85\x3a\x5e\x1d\x68\x14\x97\xae\xa4\x18\x86\xe7\x01\x9b\x49\x2e\xed\xb8\x5c\xc1\x95\xab\x2e\xdf\x8c\xb9\xbe\x2e\x6a\xf4\x72\xcc\x83\x7c\x18\xf1\x1e\x02\xdb\x46\xdf\xa0\xc5\x81\xc0\x6b\xb2\x54\xd2\xad\xdb\x92\xcc\x6c\x72\x9b\x27\x9d\xc8\x59\x96\xa4\x4d\x22\x0b\x63\x38\x58\xf8\xc5\xd1\xc2\xe7\x27\xe2\x07\x3d\x77\x04\x04\x1e\xb9\xe3\x6c\x2d\x55\x38\xd1\xc3\xb5\x3f\x51\x46\xe5\x7d\x13\xa6\xa4\x57\x73\x03\xbf\xc9\x4a\xcb\x5a\x0c\x75\x9d\x86\x41\x48\xa9\x41\x2b\xea\x52\x0e\x89\x68\x24\xd0\xcf\x5b\xff\x33\x55\x36\xca\x55\x66\x7d\x6b\xd3\xba\x71\xbc\x41\xa6\xae\xce\x61\x5d\x38\xef\xc2\xbf\xbb\xe4\xd5\xd5\x95\xab\x4a\xab\x18\x1b\xf5\xc5\x7f\x39\x59\xdc\x20\xaa\xbc\x7c\xaf\xf3\x64\xf9\xfe\x51\x79\x8d\x07\xa1\xfe\xa8\xff\x7d\xbe\x70\xf0\x4a\x09\xe0\x4f\x9c\xf0\xba\x7c\x87\x2b\x5c\xca\x27\x97\xe2\x6d\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\xf5\x51\xb1\x3d\x3e\x7b\x44\x87\x10\x10\x1e\x51\x15\x6a\x25\x95\x83\x6b\x8c\xa0\x54\x5c\xfc\x32\x27\xc4\x17\x10\xe7\x9c\x10\xbf\x2d\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\x93\x5b\xe4\x95\x8c\xf3\xd4\xa3\x11\xde\xeb\x94\x37\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\xe9\xe5\xe0\x02\xa3\x98\x87\xa3\xb9\x8a\x3b\x34\xc6\x43\x14\xa0\xb8\xbc\x62\x6a\xb1\xaa\x69\x89\xd2\x60\xb1\xa5\x0a\x63\x5f\x58\x4f\xbf\xf8\xe6\x47\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\x99\x01\x6d\xec\xff\x3f\xc4\xfd\xfb\x7e\xdb\x38\x92\x3f\x80\xfe\xaf\xa7\x90\x78\x66\xb9\x40\x04\xd3\xa2\x24\xdf\xe8\x20\xda\xb4\xe3\xf4\x64\x26\xb1\xb3\xb6\xbb\x7b\x7b\x35\x1a\x2f\x2d\x41\x16\x27\x14\xa9\x21\x21\x3b\x6e\x4b\xe7\xd9\xcf\x07\x85\x0b\x41\x8a\xf2\xa5\xa7\xe7\x77\x7a\x77\x62\x11\x04\x71\x2d\x14\x0a\x85\xaa\x6f\x25\x93\x74\xbe\x25\x02\x66\x11\xcf\x47\x82\xa4\x3a\x5a\x8f\x58\xd8\x35\x0f\x1c\x27\x60\xc4\xc1\xd7\x0e\x41\xed\x76\xd6\x4e\xb0\xd1\x32\xa1\xde\x3e\x2e\x6c\x85\x9f\x82\x3f\x29\xb0\x86\xab\x01\xb4\x96\x39\xcb\xde\xdf\xb2\x84\xaf\x56\x8e\x63\x85\xcf\xf2\xfb\x5b\x7d\x27\x0f\xb7\x18\x64\x6b\x23\xb6\x0c\x8c\xd8\x98\x77\xcd\x6b\x7d\xea\x21\x1c\xf6\x06\xd4\x04\x69\x82\x77\x5c\x33\x63\xff\x5c\x46\x19\x9b\x58\xc6\x6c\xa5\xf8\x3a\xfe\xde\x76\x9b\xe8\x4a\xb0\xe2\xc3\x23\xed\x33\xee\x4b\x45\x09\x28\x36\x9e\xf4\xc0\x4a\x3c\x39\x11\xab\x15\xd2\x3f\x69\x34\x78\x5c\x07\x99\x79\xf1\xb8\xc6\x0d\xe7\xda\xa1\x94\x15\x28\x4a\xab\x15\xa8\x49\xf9\x6a\x15\x22\x4e\x98\x06\x34\x4f\x01\x84\x47\x7b\x62\xfb\x81\xbf\xe7\x93\x0d\x87\xdf\x62\x29\xef\xd5\x40\x4d\x4a\x40\x48\x7f\xaf\x8b\x4b\x41\x10\xc4\xaf\x27\x3d\xb8\xef\xbf\xd9\x0e\xdc\x92\x03\x74\xb0\xea\x04\x49\xeb\x60\x67\xa2\x7a\x1f\xea\x5a\x3f\xef\xd4\x75\x95\x43\x75\x3a\x88\x82\x04\x23\x45\xc0\x9e\xd3\x96\x22\x7c\xce\xd3\x8c\xd1\x6c\xd3\x13\xbc\x00\x5e\xda\xdb\x0a\x2b\xd5\x3f\xd8\x1a\x93\x0a\xcc\x8c\xcb\x90\xa1\x5d\x0c\x52\xb6\xca\xf5\x05\x70\x54\xea\x82\xa2\xb7\x0a\x1f\x01\x36\x4c\x46\xab\x15\xab\x06\x5e\x89\x86\x82\x74\x47\xa5\xb0\x47\x52\xf3\x07\x93\xa6\x63\x56\xf9\x7b\x25\x2b\x71\x4d\x3b\x60\xf4\xdd\xe0\x88\x7b\x5f\x89\xbe\xab\xb4\x6d\xd9\xc0\x00\x7a\x8d\x09\x43\xbd\x3d\x8c\x9c\xe2\x0d\x84\x13\xef\xed\x05\xbd\x3d\xa5\x80\x04\xe5\x22\x54\xb4\x57\xae\x68\x43\x2d\xa8\x6a\x05\xdc\xdd\x7e\x17\xa3\xbe\x6a\x40\x9b\x7b\x1f\xdf\xb4\x04\x31\x1c\x62\x34\x1c\x79\x60\xf5\x06\xcc\xd0\xb4\x6c\xab\x21\x5c\xa6\xcf\x12\x25\x51\x06\xcc\x32\x1f\xfd\xee\x61\xe0\x77\x0f\x95\x5a\xb4\x68\xe7\xfe\x8b\x07\x04\x0c\xe6\x40\xb3\x58\x0c\x85\x48\xb3\x06\x41\xee\x7f\x45\xe1\x07\xaf\x1c\x84\xee\x96\x41\x90\x76\x77\xe5\x51\xd8\x6e\x8b\xf7\x7b\x86\xe1\xf0\x95\x2d\x05\x20\x44\xc7\x18\xda\x39\x24\xa2\xad\x4e\x23\x69\x46\xc9\x70\xe4\xba\xf2\xc4\xe5\xe3\x61\x32\x2a\x9d\xca\x23\xda\xf2\x01\x45\xdc\x74\x32\xb2\x3b\xf4\x84\xd5\xde\x66\x9f\x9e\xb1\x61\x32\x73\x94\x58\xd3\x53\xe9\xf4\xd1\x2b\x3b\xbd\x07\x21\x6d\x3a\x0d\xe8\xb7\x53\xee\xaa\x27\xd2\xca\xea\x89\x8d\xce\x26\xe5\xce\xfe\xb1\xfd\x94\x8d\xda\xda\xd9\xfd\xce\x2b\x3b\xab\x81\x70\x35\x09\x4a\x03\x48\x41\x83\x36\x8d\xda\x5d\xaa\x31\x91\xfc\xfd\x14\xb9\xef\xbf\xa0\xbd\x7b\x7d\xd9\x5e\xed\xca\x6b\x30\x5b\xab\x31\x69\xe1\xd6\x00\x78\x6e\xaf\x88\x49\xdb\x28\xf0\x2c\x5b\xe0\xfc\x51\xbe\x44\xb6\x62\x11\x31\x09\x6f\x69\x7a\x9a\xa5\xf3\x8d\x03\x65\xa6\x23\x08\x4b\x44\xd3\x59\xdd\x46\x25\x46\x61\x20\xfe\x09\xa4\x80\xb8\xd8\xb4\x74\x9e\xd3\xc5\x16\x33\xf0\xbb\xc2\x0c\x7c\xae\x42\x12\x2f\xd1\x04\xf4\x0a\x77\x10\x5b\x98\xa3\x39\x59\xd4\x9b\x0f\x83\xe1\xb6\xbc\x68\xbd\x5d\xad\x66\x54\xba\xa0\x40\x84\x7f\x0c\xa8\xf0\xb1\x74\x84\x44\x19\x0d\xd1\xc4\x78\x9c\x1f\x67\xef\x1e\x8e\x1f\xda\x6d\x9c\xa3\x98\x3c\x90\xbb\xc1\x1c\x4d\x20\xba\x31\x0e\xc4\x5f\x15\x73\x0a\xac\x02\xa8\xba\x82\x9b\x08\x19\x1b\xca\x3a\x6e\xa1\x31\x9d\x96\xed\xce\xed\xb2\x22\x34\x25\x73\x32\x1c\x2b\x23\xa8\x87\x91\xa0\xad\x60\xac\xcd\xd1\xf5\xc5\xbb\x6a\x0c\x7d\x20\xb1\x22\x98\xea\xc5\x99\xba\x10\xdb\xeb\x05\xe2\x5f\xb8\xea\x52\x41\xac\x8a\x38\xb7\xf2\x32\x0b\x08\xab\xfb\x9a\x85\xa0\x90\x6d\x13\x3a\x1c\x79\xca\x72\x57\xb0\xba\x56\xe2\xba\xfe\xee\xd0\x37\x89\xc8\x27\x3b\x1d\xfc\xb6\x63\xad\x0d\x14\xad\x56\x9a\x87\x27\x36\xf9\x3c\x61\x01\x1c\x0d\x92\xfa\x48\xf6\xab\x55\x27\x78\xd1\x2a\x82\xbb\xbf\x62\x15\xf5\x9e\xde\xde\x2e\xad\x56\xc9\x08\x95\x01\x04\xd8\x86\x32\xd5\x20\x1e\x05\x07\x20\xe4\xed\xbf\x2c\x30\x61\x6f\x4f\x41\x43\x1e\x18\xa9\xc7\x00\x8c\x97\xc4\x9f\xc3\x3d\x8c\xe4\x32\xd0\x6d\xa8\x78\xe7\x48\x55\x1e\x57\xd8\xe1\xf0\x10\xd1\x8e\xfa\xf5\x8d\xf2\x75\x39\x9e\xa1\x74\x1f\x50\x1f\x11\xae\x7e\x7d\xd3\xb6\x99\xd7\x51\xbb\xad\x88\xaa\xc5\x56\xab\xec\x1d\xd5\xa1\x9d\x07\x48\xd7\xa4\x16\x4b\x82\x7c\x08\x7c\xd0\x21\x12\x4f\x88\x52\x3e\xc8\x82\xc2\x72\x81\x0f\xd8\x30\x1b\x05\xc3\x8c\x88\xbf\x23\x21\x0f\x14\x51\xdc\x22\xef\xbd\x9e\x1e\x1a\xc9\x93\x28\xc9\x0c\x30\x51\x66\xc5\x7b\xcb\xac\xa8\x78\x40\xd7\x12\x35\x56\xb2\xef\xc3\xbd\xe0\x70\x8f\x1c\x1e\x04\x87\x07\x85\xf8\xb6\xff\x1a\xa9\x4a\x61\x99\x0f\x47\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\xee\xef\xbf\xbe\x1f\xea\x0e\xd8\x8a\xf8\x3e\x1c\x95\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\xb7\xad\x50\xe3\xbf\x2b\xc7\x06\xc0\x87\x8d\xfd\xef\x92\xe6\x3b\xbe\xc4\xb7\xde\xd8\xda\x5d\x17\x2d\x8d\xd3\x2a\x5a\x92\x04\x95\x75\x81\x98\x2c\xdf\x76\x20\x53\xde\x5e\xe2\xe3\xe5\x3b\xda\x39\x5e\xee\xec\xe0\x68\x8a\x96\x70\x7c\x73\x5d\x3e\x5c\x8e\x6c\x67\xe2\xa5\x68\x8f\xfc\xbd\xe3\x57\x26\xc5\xe8\x70\x34\x56\xbe\x64\xa8\x05\xd7\x78\xad\xdc\xea\x6f\x91\x5b\xe7\xe1\xa2\x2c\xb4\x6e\x31\xf3\xff\x3d\xf2\xc1\x6b\x24\x56\xb1\xd9\x03\xbb\x83\x06\x6e\x06\x7e\x31\x17\x61\x0c\x99\xe8\x7d\x2d\xc9\x9c\x8c\x09\x0f\xc3\x36\xf2\x7a\x59\x20\x48\xa7\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\xfe\xab\x84\xdd\xde\x96\x09\xb5\x7d\x41\x4b\x13\x5b\xeb\x3a\xf1\x02\xb1\xb6\x34\xe3\x70\xed\x53\x9e\xf4\x5e\xd0\xef\x15\x93\x7e\xf0\x2a\x21\xf6\xe9\x4e\xd4\xb5\xff\x5f\x69\xba\xff\x4c\xd3\x5f\x22\xcf\xea\xa6\x1f\xf4\x2a\xb1\x92\x7b\x07\x7a\x13\x05\x85\xd0\x70\x24\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\x29\xe2\xd4\x72\xb4\xc8\x02\x4e\x4c\xf0\xd6\x1c\x97\xf1\x83\xf5\x85\x5e\x71\x31\xbc\xa4\x32\xa0\x1b\x89\x05\x4b\x14\x3f\xc6\x34\x45\xf1\xce\x12\x93\xa9\x65\xd1\x32\xc6\x64\x42\x3b\xc7\x93\xb7\xe3\xe3\x49\xbb\x8d\xa7\xc3\xc9\x88\x16\xf1\xc2\xe5\xda\x30\x58\x61\xed\x09\x0e\xe0\x1a\x6c\xd9\x9e\x8c\x2c\x3c\x76\x98\x03\x6d\x73\xa5\x38\x9b\xc4\x93\x28\x59\x3e\xa9\x88\x32\xfe\xc1\xab\xc4\xc1\x2e\x46\xdb\xa8\x2a\x4f\xe7\x15\x9a\xda\xe6\x93\xf3\x3b\xb8\xdd\x41\xef\x15\xad\xec\xf5\x2a\xa7\x21\xe9\xda\x0f\x6d\xcc\xb8\x20\x1f\x9f\x74\x49\x6f\x54\x92\x55\x4b\xa4\x13\x42\x4e\x54\x60\xa5\x6e\xd8\xdf\xa9\x1c\x1a\xbb\x6e\xcb\x76\xba\xcd\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\xa0\xa2\xe0\x92\xce\xfc\x48\xb5\x48\x16\x03\xf6\x79\x90\x79\xef\x59\xe9\xf8\x43\xc8\x99\x43\x1e\x93\xf4\x7e\xd3\x9a\x03\x2e\x97\x45\x06\x50\xe3\x5d\x45\x73\x80\x55\x37\x92\x33\xd4\xb0\x5d\xbd\x24\x37\xa6\x3d\x9b\x9a\x90\x28\xcc\xba\xcb\xe7\xe9\xa7\xcb\x73\x49\xff\x2d\x4a\x33\x6c\x9a\x63\xbd\x08\x32\xc9\xf3\xf7\x82\xbd\x3d\x8b\x5e\x5e\xb3\x83\x03\x9d\x24\x0a\x92\xe1\x69\x96\xa2\xb6\x1c\x09\x3a\xab\xbb\x0f\xe6\x14\x1e\x4f\xff\x72\x79\x7e\x86\xf0\x6a\xe5\xb7\x28\xdd\xe8\x89\x78\xa9\xfc\x4e\xec\xd6\x6f\x16\x0e\xc2\x0a\xb6\xfb\x2a\x3e\x0d\x36\x04\x7d\x2d\x65\x71\x38\x6f\x6b\xb0\xbb\x64\x39\xbf\x01\x73\x0e\xbd\xa7\xae\x56\x26\xf0\x3d\xc7\x83\xd2\x98\x22\xac\xa2\xa0\x48\xe9\xbb\x6c\x86\x59\xa5\xab\xc3\xfa\x89\xd4\xa0\xa8\x5f\xb3\x68\x1e\x49\xd4\x32\x92\x55\x7a\xdf\x00\xbf\xa7\x6c\xb5\x92\x81\xd9\x33\xc2\x09\x43\x7b\xfb\x18\xdb\xe8\xac\xfb\xc1\xde\x7e\x71\x37\x73\x70\x54\x57\x5d\xb9\x58\x71\xb0\x29\xc0\x16\x12\xca\x35\x15\x36\x4a\x13\xd3\x76\x9c\x16\x75\x3e\x25\x77\x61\x1c\x4d\x20\xd9\x71\x5d\x09\x63\x8f\xf8\x36\x00\x74\x39\xc4\x89\xe5\xff\xd3\x28\xd0\x8d\xd9\x20\xb3\x5e\x04\xe5\xb2\x15\x0c\x7a\x01\x6e\x7f\xd8\x79\x56\xc3\xaa\x2d\xd3\x1d\xf2\x78\x13\x25\x93\x80\xa1\xfe\xbe\x3c\x82\xf6\xf7\x83\xfe\x7e\x41\xd6\x87\x2f\xd9\x44\x0f\x7d\x45\xd6\x9d\x3d\x5b\x19\x3f\x0b\xf3\x4f\x4a\x80\x03\x7d\xfc\xa6\x39\x3c\xa8\x2f\x9b\x91\x98\x27\xb8\x6f\x41\x11\x49\xf4\x85\x48\xe5\x30\x50\x48\x6f\x2d\x5b\x7a\x5b\xad\x5a\xdc\x0a\x8c\xea\xcb\xc0\xa8\x48\x87\x69\x94\xd5\x18\x8f\x91\x52\x60\x1e\x40\xff\x02\xef\x3f\x89\x40\x74\x2c\x84\xfb\xf2\x87\x96\x78\xdf\xd2\xb2\x7d\x4b\xcb\xf6\xda\x1a\x59\xd1\x53\x39\x32\xaa\x7f\xd8\xad\x9f\x04\x69\x30\x9b\xd5\x0c\x06\x49\xe8\xee\xdf\xff\x96\xbf\x31\xa2\x31\x1a\xfe\xbd\x89\x46\x6f\xf0\x6e\x43\xc2\xf9\x6b\x92\xde\x3b\xc4\xae\xcb\x51\xa6\x51\xfe\x9f\x43\x28\x2e\xa2\x51\x20\xc7\x69\x4b\xa7\xd8\x39\xa0\x3b\x27\x78\xe8\x8f\x14\xd2\x73\x71\xbf\xe8\xac\x95\x54\x5b\x8e\x6e\x76\xf8\x32\x04\xc3\xbe\xc1\x62\x3a\xaa\x5c\xbe\xf8\x18\x39\x5f\xc2\x85\x53\xf6\x76\xa8\x3a\x36\x15\x96\x8c\x95\xf3\x9e\x3e\xbb\x75\x2c\x75\x5b\xa7\xa4\x96\x2d\x9b\x00\x5a\x11\x5a\x6e\x19\x3f\x4d\x78\xf6\xa0\x36\x39\x02\xcd\xc0\xa4\xd0\x79\x89\xe3\x9c\x77\x57\xf5\xba\xb2\x3c\x22\x33\x6f\xc2\xa6\x95\xcf\xe5\x76\xda\x09\x14\x56\x15\xdc\x16\x00\x5f\x3b\x0a\xfc\xfe\x11\xe9\x1f\x05\xfd\x23\xb2\xe7\x07\x7b\x70\x17\x79\xb8\xfd\x22\x08\x16\xcf\x51\xd7\xe0\x28\xe5\xff\xcc\xb8\x06\xd0\x0a\xc7\x69\x3e\xb3\x8e\x52\x2d\x14\xb9\xee\x81\xdf\xa1\xb6\x3b\x73\x84\xce\x80\x0b\x7b\x5f\xde\xff\xcf\xf5\xcf\xef\x3f\xff\x74\x2a\xdd\x77\xfc\xdd\x0e\x96\x18\x90\xa2\xcd\x7c\xe6\x90\x47\x28\xaf\x46\x42\x90\xd8\x52\x6f\x7d\xb0\x44\x65\xef\x8e\xfa\x47\x9d\xfd\xee\xfe\x9e\xb7\xdf\xed\x77\xf7\xfc\xbd\xfd\x81\x89\x55\xcd\x70\x1b\x7e\x7f\x3e\xeb\x06\x19\x62\x3b\x7e\x3b\x11\xff\xe2\x37\x09\x62\x6d\x1f\xdb\x1b\x32\x39\xea\x06\x47\x92\x8f\x6c\xdf\xf8\xb5\x67\x76\x98\x47\x49\xb9\xa7\x99\xeb\xfa\xbb\x19\xea\xe0\x77\x76\x07\x44\xb6\xc0\x3a\x3f\x5a\xb8\xcd\x66\xdf\xa1\x6d\x8e\x5d\xb7\xd3\xa2\x7c\xc0\xdf\x76\x06\x3b\x0c\xed\x70\x5c\x84\xdb\xe6\x6d\x33\xce\x88\xbf\xe1\xa2\xd5\x01\xaf\x08\x12\x87\x4f\x0a\x12\xb2\xc5\x3c\xac\x6f\x31\x68\x3f\xac\x26\x8b\x7c\x75\x52\x99\x1d\x84\xdd\x34\x0e\x82\x81\xef\x22\x7f\x87\x61\xbc\xdb\xad\xb6\xea\xe0\x19\x2a\xea\x19\x41\x4a\x55\x3e\xbe\xa9\x97\x08\x33\x59\xf3\x1b\x1d\xae\x1d\xd9\xe1\xd4\xfd\xdd\x5e\x79\x1e\x55\x1c\x74\xff\x70\xcb\xae\x6c\x09\x70\xba\xde\xf8\xb7\x5a\x13\x2a\xc4\xde\xbd\x7b\x47\x3b\x78\xd0\xf3\x77\x2c\x12\x2e\xc8\xab\xed\xed\xa9\x56\x7d\x3e\xff\xb1\x7b\x8a\x83\xde\xc6\x20\xd4\xee\xd5\xa5\xa9\x61\xdf\x17\xd5\xf6\x6c\xa1\x7b\x35\x0e\xed\x0c\xd5\x0e\xf8\xd1\xf6\xcd\x54\x0e\x78\xc7\x56\x74\xa0\xac\x65\xc5\xf2\x2f\x28\x00\x1e\x95\xe0\xa8\x46\xb4\x13\x1c\xc1\xd5\xf6\x91\xff\xd2\x11\x95\xd1\xf0\x03\x86\x8e\x7c\x5b\x5d\x7c\xe4\x07\x47\xc0\x61\x8e\xb6\x6c\x39\x36\xc5\xde\xe4\x95\x42\x67\x0f\x8b\xb4\xca\xf3\xf4\x21\x52\x02\x77\x76\x54\xd8\xf7\x8d\xd3\xf8\x92\x76\x8e\xc3\xb7\xf9\x31\x5e\xbe\x45\x09\xb5\xb4\x6c\xc3\xb0\xdd\x1e\x61\x3c\x40\x29\x4d\xdf\xa0\x88\x2e\x77\x13\xfc\x26\x6a\xfb\x64\x49\x13\x1c\xa4\x6d\x9a\xbc\xeb\x0c\x50\x44\x93\xdd\x25\x7e\x13\x05\x89\x01\xc0\xa6\xc0\xac\x06\xfe\x6e\x27\x58\xbe\x29\x96\x68\x5a\x15\xf2\x8f\xb6\x2b\xd9\x75\x4f\xa3\xf9\x32\x7e\x52\x03\xa5\x34\x75\x7b\x2d\x9a\xa1\x7e\xf7\xa8\x7f\xb4\x7f\xd0\x3d\xda\x23\x7b\x78\xb5\xea\xb6\x0c\x74\x02\xc8\xc5\x6a\xa8\x44\x91\xb5\x87\xf8\xb6\xd8\xbb\xdb\x82\x65\xef\xef\xed\xf5\xf6\xdc\x8c\xa4\xea\x97\xe9\x5a\x67\x15\xbd\x49\xdb\x08\xa9\x0c\xef\xde\xbd\xf3\xf7\xf1\x9b\xb4\x1d\xbd\x51\x49\x89\x4c\x92\x86\x94\xef\x3a\xa5\xd5\x67\x64\xe2\xa3\x67\x8c\x09\x8a\x69\x8d\xd3\x5b\xbf\x53\xb7\xec\x2d\x36\x6e\x16\x99\xdf\x39\xad\x0e\xf0\xf3\xe7\x34\xab\xa2\x45\x00\xdb\x57\x1d\xdf\x3f\x7a\xe6\xb6\xbf\x54\x50\xad\xc5\xa5\xd5\xe0\x5d\xbd\xef\x54\x5b\xbb\x9d\x29\x56\x2a\xc9\xa3\xdb\x24\x00\x2e\x59\xc7\xdc\x8e\xb6\x33\x37\xbd\xd6\xf5\x16\x6d\xf8\xcb\xd3\xd4\xd5\x65\x3b\xfe\x41\x8b\xb6\x24\x2d\x47\xc9\x0c\xc9\x24\x6c\xd3\x55\x69\x43\xab\xf6\x1c\x18\xb2\xda\x9a\x01\xd0\x70\x47\x33\xaa\x00\xc9\x7d\x77\x27\x41\x3b\xe2\x2f\x7e\x23\x99\xe8\xe9\x6e\x77\x93\x7a\x2c\x7e\xf3\x24\xf3\xac\xef\xa4\x69\xea\xc6\x46\x66\xf0\x33\x45\x13\x21\x8c\xdc\x8e\x25\x55\xa9\xe5\x1c\x44\xf2\xc7\x8e\x1f\x20\xbe\x13\xe1\x5d\xc0\x99\x6c\x27\xd0\x91\x75\x0d\x53\xec\x76\x9e\x39\xc2\x58\x2d\xca\x96\xc9\xb8\x7e\x9b\xe9\x0c\x8a\xfd\x25\x30\xa0\x9b\x12\x33\xd3\xa6\x9f\x6e\xe7\x25\x87\x9c\x83\x8e\xd2\x14\xfa\x65\x4d\xe1\xc1\x9e\x56\x14\xf6\x54\x64\xb0\xbe\x42\x71\x94\x5e\x72\x4b\xaa\xc3\xb2\x80\x9b\x9d\x94\xff\xc7\xa5\xf8\x77\x53\xca\x3d\x29\xc0\x91\x09\x9d\x92\x19\x9d\x5a\xa7\x82\x05\x75\xe4\x3b\x87\x8a\x73\x37\x3a\x3a\xc4\x68\x86\x31\x99\x53\x47\x7c\x2c\x4e\x05\xd5\x78\x48\xe4\xae\xc6\x5c\x2d\x45\x8c\xb4\x7c\x19\x73\x2a\xd7\x1a\x3e\x0b\x29\xc4\x80\x61\xd9\xb0\xcd\x21\x45\x9c\xce\x07\x1c\xda\x89\x70\x30\x46\x9c\xf4\x30\xb6\x43\x0c\x74\xa0\xc8\x7e\x4f\x06\x84\xe8\xef\x89\xbf\x70\x62\x3b\x3c\xa4\x94\xa2\x4c\x45\x10\x54\xb9\xbb\x18\xaf\x56\x7e\x17\x8c\xf1\xf5\xa9\xec\x2c\x3c\x33\x8e\xf3\xfd\x43\xf9\x7d\x7e\x1f\x41\xac\x3c\xfb\x5b\x1f\xe3\xc7\x71\x98\xb3\xe6\xfe\x7e\x00\x7f\x8f\x0e\x83\x84\x76\x49\x44\xfb\x47\x8d\x9b\x8c\x85\xdf\x1a\x90\x7c\x70\x24\x5f\xfb\xbe\x1f\x24\xf4\x90\x44\x74\x6f\x4f\xbd\x9f\xb0\x69\xb8\x8c\x79\x20\x6b\x6e\xf3\xb5\x71\xa4\x21\x4b\xca\x95\x0b\x4f\x17\x93\x18\x0c\x56\x75\xec\xca\xe3\xf8\xed\xf4\x38\x6e\xb7\xc5\x01\x11\xe5\x74\x69\x37\x2a\xc6\xf8\x6d\xff\x70\xb5\xca\xdf\x45\x56\x7f\xf4\x0a\xd0\x01\x0f\xd1\x12\xe2\x91\x9a\x6a\xe1\x98\x3a\x45\x4e\xb3\x93\xfa\x0e\x5e\xad\xc4\xef\xce\x0d\xfc\x9c\x22\xa7\xdd\xf9\xee\x3b\x18\x3f\x4e\x6b\xa6\xb1\xba\x0b\xbf\xf5\xe1\x04\x92\x95\xa2\x4c\x95\xbc\xe5\xa7\xae\x8b\x16\x83\xb0\xc4\x9e\x66\xf2\xce\xff\x7c\x6a\xa9\xab\x03\x4d\x67\x2d\x9a\xa0\x0c\xe3\x41\x04\xea\xb6\x09\xba\x83\xb0\x15\x19\x99\xe2\x40\xfc\x5c\x1b\x25\xf3\x03\xa0\x89\xee\x1d\xe2\x41\x8e\x26\x38\x70\xcc\xe9\x83\x7c\xf9\x74\xa6\x7e\x9d\x85\x67\xe4\xec\xf4\xc7\xf7\x57\x9f\x7e\x3e\xbd\xfe\x74\xf6\xf1\xd3\xd9\xa7\xab\x5f\xc9\xd7\xf3\xcb\x4f\xe5\x94\xd3\xaf\x97\x9f\x3e\x9f\x9f\x11\x2d\xc3\x93\x28\xff\x94\x70\x76\xcb\x32\x02\xd8\xb7\x24\xca\x2f\xc3\x29\xd3\x69\xa2\xaa\xcb\xf7\x1f\x45\x01\x57\xa7\x3f\x9e\x5e\x40\x8d\xa5\x04\x2b\x5a\xa6\x09\x3b\x69\xca\xb4\x6d\x83\xc9\x0d\xed\x1c\xdf\x6a\xf2\xbf\x39\xbe\x69\xb7\x71\x86\x26\xe4\x81\xde\x0e\x6f\x46\x80\x28\x83\xa6\xe4\x01\xbb\x6e\x2c\xfe\x92\xa5\x78\x87\x71\xc3\x5a\xa4\x74\x46\x66\x25\xd7\xa1\x29\x29\xf4\x3d\x6a\x54\xc9\x14\xd7\x3a\x35\x4b\xbd\x0d\x31\x31\x27\x95\x36\x4c\x01\x32\x6f\x1a\x76\x4b\xd7\xe1\xbd\xe0\x60\xaf\xe2\x1c\xdc\xed\x6c\x97\xff\x34\xd3\xd4\x6d\x79\x54\xc3\x1d\x18\xe9\xbf\x4b\x76\xf6\xec\x2d\x1c\x0a\x7c\x52\xcc\x92\x56\xa2\x7a\xbe\x36\x6a\xd0\x2f\x6a\x78\xb3\xd6\x19\x16\x88\xe5\x10\xa1\xa8\xb4\x15\x68\xd3\xcf\x6e\xe7\x79\x99\xc7\xaa\x53\xcd\x6f\xc0\xd0\x61\xc7\xde\xe3\x0f\x3b\xc1\xa1\x2c\xee\x79\xc9\xc6\x2a\x4e\x1c\x86\x6b\x76\x66\xd6\xa2\xac\xba\x87\x3c\xa3\x77\x3e\x2c\xb6\x55\x4b\x08\xb7\xaa\xb2\xa8\x7b\xcb\x71\x0d\xbb\xae\x48\x79\x4b\xab\xd8\xc9\xeb\xda\x8e\x3e\x2f\x14\x99\xda\xab\xab\x29\xd8\xa8\xa1\xdc\xd7\xe7\x0f\x81\x45\xd1\x95\x75\x19\xec\x3c\x53\xf6\x33\xe2\x89\xef\x77\x4b\x07\x2e\xa5\xf8\x28\x56\x7b\x0b\xd4\xf6\xa6\xfe\xe2\x85\x3a\x7e\xf9\x7e\x37\xf0\xfd\xe2\xa6\xa7\xeb\x3f\x73\xc2\xf3\xfd\xde\xd6\x1a\x3f\x25\xb5\xf5\x7d\x4a\x8a\xda\x7a\x81\xef\xf7\xac\xda\x5e\x73\x2b\x69\x80\xcd\x7b\x7d\x7d\x2d\x09\x66\x76\xbe\xe7\xf1\xf4\x63\xf4\x9d\x4d\x48\x68\xe9\x81\x48\x4e\x87\x1d\x62\xfe\x6f\x44\x96\x5a\x76\xd0\xd9\x03\x88\xdd\x98\x65\x6c\xcc\x9b\x51\x72\x97\x8e\x43\xd1\x8e\x96\x53\x09\xa4\x61\xe3\xb9\xee\xf8\x24\xa1\xfc\xb8\xdd\xce\xde\xee\x1f\xe3\xa4\x4d\xd9\x9b\x7c\x98\x8d\x88\xf8\x87\x26\xff\xe1\xb3\x03\x92\xd0\x10\x25\xbb\x3e\x3b\x80\x28\x18\x76\xef\x8a\xa0\x07\xfb\x24\xa3\x9d\xe3\x9d\x1d\xfe\x8e\x76\x8e\x71\xd6\xa6\x00\x52\x0a\xc0\x7a\x21\xca\x76\x99\xe8\x70\xf6\x1f\xec\x8d\xcf\x0e\xd6\x64\x5a\x0f\x54\xba\x4f\x38\x75\x9c\xe3\x9d\x1d\x06\x85\x08\x49\xc6\x69\x51\xca\x95\x4b\xbd\x8c\xde\x98\x0f\xd9\xc8\x60\xe1\xc9\x5b\x07\x48\x6a\x88\x6f\xf5\x55\x6a\x5b\x85\x57\x74\x3a\x0e\x39\xd8\xd1\x87\x3d\xdc\xce\x74\xa0\x3b\x5e\x0e\x95\x60\x23\x9c\x15\x17\xb2\xff\xd1\xa5\xd4\x1f\x4c\xc4\xeb\x1d\x9f\x64\x6f\x18\x0e\x26\x88\xbd\x61\x84\xef\x76\x49\x86\xd7\xf6\x45\x13\x58\xca\x20\xa7\xe3\x75\x3a\x1d\xd1\xe8\x43\xb6\xb3\xa7\x67\x05\xf5\xf0\x6a\xe5\xf8\x22\xd9\x3b\x32\x89\x1d\x48\xf4\xba\x7b\x22\x5d\xfc\x2d\xf2\x77\xe1\x55\xa7\xfc\x9f\xdf\x3d\x14\x39\x51\xe7\xfb\x84\x75\x6e\xf6\x6f\x7a\xe1\xc1\x7e\xbf\xd3\x39\xec\x60\xab\x48\x79\x6f\x58\x3d\xad\xa4\x36\x3e\x99\x4d\xcd\x9a\x6c\x36\xd6\x87\x84\xd6\x25\x33\x75\x5f\x4d\x96\x98\x2c\x24\x8c\xfe\x9c\x3a\x0e\xb9\xa3\x4e\x07\x20\xd0\x17\x6f\x3b\xab\xd5\xe2\x5d\xb7\x26\x0a\xcd\x12\x04\xc7\x59\x8b\xce\x94\xe0\xe4\x9c\x85\x67\xf0\xd1\xec\x2d\xdd\xf1\x59\xd7\x5f\xad\x66\xef\xa8\xf8\xa1\x25\x2b\x35\x9f\x33\xf9\x25\x18\xe8\xcc\xa9\xb3\xe3\x90\x19\xdd\x99\x61\x32\x7b\xe7\xb3\x9d\xae\x2f\x08\x23\x15\x82\x6b\x3d\x25\x76\xc4\xd2\x3a\xce\xde\xd1\x7e\xe7\x68\xff\x18\xf3\x36\xf5\xbb\x24\xdb\x85\x47\x79\x1f\x90\xbd\xa3\x5d\xf9\x42\xa4\x77\xcd\x71\x66\x8d\x66\x6f\x26\xa8\x4b\xf6\x8f\x88\x8f\xf1\xce\xfe\x11\x7e\xdb\x19\xc8\xa4\x1d\x4e\x7c\x1c\xcc\x76\xc5\x6f\xf1\x93\xa4\x6f\x68\x7f\xaf\xd3\xdb\x3b\x3a\xda\xef\x1e\xf4\x0e\x3a\xfd\xa3\x7d\x82\x38\xdd\xeb\xee\x70\xfc\xae\x23\xdb\x13\xa3\x0e\x49\xc5\xa1\x61\x71\x1c\xbe\xa3\x07\xc7\x38\x46\x62\x39\x75\x30\x09\x77\xe8\x81\xc4\x25\x40\x13\xe4\x77\x48\x28\x83\x38\x90\x90\xf2\x1d\x5f\x64\xee\xf6\x8e\xf1\x18\xf9\x6f\xdf\x76\x7b\x90\xbb\xdb\x6b\xc0\x63\x88\x49\x8c\x7c\x91\x7b\x2c\xe4\xd8\x3b\x3a\x45\xca\xaf\x57\x55\x16\x03\x80\x01\x17\x85\xc1\x4b\x7b\x25\x2c\x8a\x48\x23\x74\xf1\xae\x33\x98\xb7\x85\xb8\x7b\xa7\x57\xc7\x5b\xba\x18\x38\x1d\xcf\x29\x7d\xb2\x93\xe3\xf6\x5d\x70\x67\x22\x22\xe5\x3b\x0b\xdc\x76\x3c\xa7\xad\x93\x44\x02\x0e\xe6\xed\x3b\x6d\x28\xa0\x02\x24\x29\x93\xa8\x5e\x3f\xe8\xf5\x2b\x77\x7f\x5d\xff\x35\x26\x02\xe2\xbc\x55\xf0\x48\x60\x8d\x5f\x33\x36\x8e\xf2\x28\x2d\xd9\xe0\x65\x35\x07\x74\xb9\xe8\x54\x7f\x7c\x52\xba\x7e\x2f\xe7\x8f\xb6\x2f\x11\x53\x5b\xcd\xc9\x58\xdf\x18\xc8\xec\xff\x1f\x3b\xf3\x16\x56\x8c\x37\xe2\xec\xb1\x81\xaa\x9c\xe3\x40\xff\x22\x5a\x5a\xaa\x1f\xbf\xe7\x8c\x50\xc5\x88\x58\xf0\x86\x61\xae\x15\x23\x07\x25\xc5\xc8\x41\x70\x74\x00\xe5\x3d\x2f\x83\x99\xb2\xc6\x19\x0b\x39\x0b\xe0\xa0\x6a\x97\x25\x64\x55\x28\xeb\x39\x01\x4c\x9b\x79\xec\x1d\x62\xab\xd8\x12\xca\x62\xc4\xf2\x40\x9c\xaa\x95\x88\xe7\x77\x3a\x81\xdf\xe9\xd8\x70\x3b\x50\xd3\x73\xba\xa7\x17\xd4\xf4\x10\xa8\x23\xbb\x75\x23\xa6\x3a\xa4\xc5\x6e\x7f\x8b\xa0\xa5\x6f\x45\x8f\xfa\xd8\x4b\x93\x8f\x19\x63\xbf\xb1\x86\x68\xf5\x11\x46\xce\x14\x1e\x9f\xb9\x0a\x4b\x0a\x81\xd3\x75\x39\x4a\xf0\x80\xa1\x0c\x25\x18\x07\xc9\x5a\xdd\xfa\x76\x8e\x02\xbf\x73\xa4\x2f\x1f\xfb\xc1\x91\x9c\xff\x6d\x77\xe7\xfd\x8e\xbe\xa9\xf5\xb1\x37\x35\xad\xd9\x06\x6f\x59\x17\xa3\xdb\x86\x20\x4c\x6c\x0b\x1b\x88\x38\x8f\x4d\xc3\xf4\x31\x47\x36\x50\x59\x3e\x42\xe3\x8e\x36\x0c\x46\x6a\x1a\x71\x16\xce\x59\x5e\x5b\xbf\xc8\xdf\x85\x19\x91\x15\x75\x03\xbf\xd3\xd5\x15\x89\x0a\xba\x5b\x04\x3a\xb0\xba\xd0\xf7\xd4\x76\xdf\xad\x00\xbc\xcf\xf4\xb8\xd2\xdf\xa2\xb7\xea\x2e\xd8\xf4\x16\x4c\x1b\xa0\x31\x5b\xd4\xfb\x87\x7e\xd1\x84\x28\x3f\xfd\xce\x59\x92\x47\x37\xf1\x73\x24\x51\xe0\xac\xb6\x38\xc0\xaa\xa2\x16\x5b\xad\x18\xe0\xce\xd5\x90\x04\xb4\x60\xcb\xb1\xb0\xdc\x82\x8f\x59\xfa\x1b\x4b\x5e\x5c\xbb\xa8\x7c\xb5\x82\x10\x9c\xa2\xf2\xad\x75\x6f\x61\x44\xe5\xba\x2f\x59\x18\xb3\xc9\x1f\x5e\xf7\x2b\x98\x56\x04\xfc\xa4\xab\xee\x55\xfc\xae\x1f\xf8\xdd\xc2\x3c\xb7\xdb\xdd\xc2\xb3\x2c\x8a\x3a\x28\x3a\x04\x86\xe7\xbf\x93\x8e\x0e\x02\xbf\x73\x50\x4b\x47\x5b\x98\xd9\x93\x5c\x66\x91\xb1\x3b\x96\x70\x45\x5d\x10\xb1\xf6\xdf\xc3\x70\xba\xbf\x87\x07\xe6\x2c\x8c\xff\x6d\x0d\x7a\xfe\x88\x6a\x26\xbf\x1c\x82\x1b\x08\xa1\x0b\x71\x41\x14\x31\x74\x03\xbf\x6b\x9d\x17\xbb\x2f\xb1\xeb\xed\x1f\x88\x8e\x3f\xae\x1b\xd9\xb0\x36\x8e\xf3\x88\x3a\xbf\x39\x24\x93\xa6\x42\xc3\x54\x06\xea\xff\x6d\x54\x18\x0a\x6d\x86\xf0\xae\xb7\x1b\x52\x72\x8c\x2e\xc2\x69\x4b\xe3\x17\xdc\x76\x46\x8e\xc4\xdb\x2c\x8c\x83\x48\xc9\x53\x55\xf4\xa5\xf7\xec\xd9\x57\x8d\xd7\x8f\x52\x86\xaa\x1c\xb3\x5f\x70\xba\xee\x6d\xbf\xde\x2c\x9f\xae\xed\x1a\xf4\xb1\xfa\xd9\xd3\x74\xef\x59\x41\x91\x14\xf1\x07\x35\x06\xde\x41\x47\x79\xa6\xf5\xa5\x67\x5a\x5f\x23\xe0\x75\x25\x02\x9e\x20\xda\xa9\xb2\xea\x9c\x28\x44\xbc\x99\x78\xaf\xe1\xef\xba\x07\x3a\xc4\xd2\xbe\x8c\xa6\x7e\x27\x48\x7c\x0f\x23\x89\x80\x77\xb4\x2f\xc3\x2c\xf9\x7e\x5f\xc6\x59\xf2\xfb\x87\x32\xd0\x92\xef\xef\x61\x72\x4f\x43\x2b\x54\xd1\x29\x0d\x4d\xc0\xc3\x73\x7a\xea\xba\xa7\x3a\x80\x74\x4e\x2e\xe9\xb9\xeb\x9e\x7b\x77\x87\xab\x95\xe3\x90\xef\x34\xf4\xbe\x66\xe9\x3c\xca\x19\x79\x4f\xad\x68\x7d\x4b\x74\x8a\x6d\x64\x62\xfc\xb8\x26\x5f\x69\x46\x1f\xbc\x29\x80\x80\x56\x4c\x81\xe4\x0c\x7c\xf7\x32\x96\xa7\xf1\x1d\x43\xb0\x44\x11\x2f\xe9\x2f\x1f\xd7\x78\xb8\x11\x31\x7a\x44\xcb\xdb\xf6\x37\xf2\x0d\xaf\x35\x1c\xcc\xfb\xd5\xaa\xc6\xc0\x5e\xb5\xf7\x82\x09\xe2\x8c\xd2\x04\x02\xea\x61\xd7\xe5\x1e\x9f\xb1\x04\x7d\xb3\x2d\xfc\x33\x30\xd8\xa0\x97\xc6\xc1\xcb\xd9\xf7\xf6\x1d\xec\xba\x3b\x3e\xa5\xf4\xa6\x48\x3e\x99\x65\xe9\x9c\xed\xee\xef\x3b\x3a\x4a\x7d\x82\x1f\xd7\x6b\x84\xc9\xd5\xa6\xc2\x5c\x5b\x6d\xa1\xd6\x18\xa0\x06\x36\xed\xc8\x10\xa7\x0c\x9a\x83\x45\xc3\xd6\xe4\xa4\x06\xa6\x80\x79\xd7\x09\x7e\x14\xff\xd2\x56\x47\x9b\x3a\x79\xd7\xe3\xc6\x5d\xd9\xab\x41\x5f\x9c\x8b\x97\x77\xe2\x34\x42\xc5\xaf\x5c\xdd\xa2\x9b\x9c\x26\x34\xa6\x0c\x50\x13\x0d\xb8\x97\x7e\x0b\xb8\x37\x0d\xa3\x18\x2e\x22\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\x9f\x84\xf8\x25\x7e\x52\x5f\xac\x7a\x4a\x69\x3e\xc8\x68\x12\xa0\xb1\xeb\x8e\x3d\x96\x70\x96\x21\x31\xd1\x39\x4a\x30\x19\xbb\x2e\x1a\x7b\xec\x7b\xc4\x91\x58\x12\xad\x0e\x16\xaf\x28\x05\x7e\x23\x26\x6c\x10\xa3\x7b\xe4\xa8\xd9\xdb\x19\xcf\xc2\x28\x69\x8e\x1f\xc6\x31\x73\x30\x0e\x50\x4a\xaf\xe0\x82\x40\xa9\x0d\x32\xb2\x24\x31\x0e\x96\x22\x2d\x88\x51\xa2\x67\x65\x8a\x1f\xc7\xae\xdb\x0a\xa1\x01\xb2\xae\x18\x4d\xf1\x7a\x7d\xac\x15\x2e\xef\xd2\x63\x1c\xa2\x0c\xd0\xf6\x71\x43\x0c\x28\x1d\x8e\x88\x1c\x66\x9f\x70\xd7\x6d\xc9\xce\x7d\x91\xfe\xa0\xeb\x35\xf9\x52\x9a\xe1\xb9\x6c\x40\xb8\x61\x49\xa9\x96\xbd\x9c\x86\x94\xfe\x43\x47\xc5\x75\x5d\xc4\xe9\x6d\x19\xd7\x74\x70\xea\xb1\x79\xc4\x91\xb3\x4c\x66\x61\x32\x89\xd9\xc4\x90\xab\x43\x22\xc2\x70\x80\x32\x1a\x7a\x69\x62\xde\x67\xfa\x3d\x1e\x64\xe8\x51\x0d\x59\xc0\x48\xc6\xc2\x3c\x4d\x82\x68\x0d\x50\x8d\x21\xac\xa8\x34\x06\xbd\xad\xc7\xc4\x6a\x37\x3f\x90\xf3\x93\x2e\xac\xa9\xbe\x6f\x66\x56\xad\x70\x3f\x0c\xb3\xf9\x7e\xb5\x12\xad\x1f\x74\x03\x1f\x52\x42\xed\x32\x97\x8a\x55\xc4\x94\x5a\x85\x7b\x77\xb0\x1d\xfe\xa3\x0e\x8c\xc1\x6f\x69\x22\x11\x64\x81\x44\x21\x00\xb9\x31\xd6\xb1\x31\xd6\xe4\xd3\x0b\x87\xb5\x51\x8c\x96\x69\xee\x9f\x65\x3f\x1c\x18\x29\x0e\x23\x65\xde\xa9\x3e\x82\xbd\xe2\xe6\x40\x89\xd9\x81\xf3\xf4\x9a\x7c\xa8\xb9\xea\x82\x1b\x2d\xee\x5d\x4f\x56\x2b\x24\xfe\xd0\x56\x87\x20\x4e\xb9\x77\x7d\xbf\x5a\x71\xec\x5d\xdf\x51\x46\xb8\x77\x9d\xd3\xae\xf8\x13\xca\x6c\xa1\xc8\x30\xd6\x78\xb9\x98\x9c\xa8\x38\x04\x6b\x72\x56\x17\x27\x8a\xea\x20\xb0\xad\xcc\xbb\x9e\xe0\xc7\x4c\x55\x94\xd1\x0c\xea\xc9\x60\xb5\x45\x53\x94\x81\x31\xa8\xc1\x0c\x53\x6b\xa3\x08\xa2\xac\x96\xec\xa4\x19\xf1\x9c\xc5\x53\x07\x1f\x23\x4e\xaf\x84\x70\x37\xb8\xdb\x88\xc6\x9d\xd0\xc7\xeb\xfb\x20\x23\xd7\x93\xa0\xe5\xaf\xa1\x0a\xae\x9c\x9e\x48\x8e\xce\x48\x42\x7c\x4c\x72\xf4\x01\x7e\xe8\xf5\x14\xe1\xc7\x0f\xca\x56\x1f\x62\x70\x8b\xa5\x98\xc9\x51\xc8\xc4\x28\xf8\xe4\x04\x65\x10\x99\xb4\x60\x8b\xea\x03\xbb\x36\x38\xa4\xad\x1b\x17\xab\x15\xfa\x5e\x8e\x06\x2b\x75\x15\xdf\x89\xee\x9c\x43\x9c\xeb\x99\x83\xc9\x14\xdc\x41\x6d\xd3\x64\xd1\x60\x86\x44\x4b\x25\xdc\x94\x6c\xac\xfa\xad\xab\xcf\x4c\xf5\x1a\xd5\x7e\x4d\x6c\xad\x9c\xf6\x37\x85\x45\x2f\x7f\x1a\xea\x96\x8f\xb9\x71\x3e\x9d\x00\x43\x80\x9f\x77\xe5\x3c\x33\x93\x47\xba\xff\x5b\xb7\x72\x12\xdd\x16\x7d\xb7\x01\xd5\x04\xa3\xaf\x35\xe2\xf9\x8a\x16\xaa\xff\x45\xdc\xef\xcc\x4b\xbf\xd1\x1a\xcb\x63\x71\xe4\x22\x19\xb0\xeb\x5a\xa7\x73\xd7\xe5\x24\x53\xdc\x9a\x8a\x25\x23\x7f\x06\xa5\x86\x8f\x65\x34\xb0\x4c\x7b\xda\x86\xae\xab\x7e\x54\x5e\xe4\xae\x7b\x22\x9b\x06\x11\x06\x35\x8f\x5e\x13\x18\xe6\xda\xb0\x46\xe2\x3b\xd8\x61\x55\x8d\xa0\x2d\x22\xc9\x66\x0c\xe4\x84\xdd\x37\x79\x43\x5b\x3d\x8b\x62\x15\xea\x9d\xde\x82\xa8\x98\x64\x88\x21\xab\x52\xc5\xca\xa6\x62\xb6\x45\xe2\x9a\x3c\x78\x53\xfa\xb5\x36\xd6\x27\xa5\xf4\xbb\x84\xb2\x95\x98\xeb\xe2\x65\x90\x49\x18\xf8\x18\xc5\xde\x8f\xed\xd8\xfb\xa5\x1d\x4b\xa0\xec\x47\x45\x72\xc1\x77\x80\x57\xf0\xbb\x7d\x8c\x2c\x42\x94\x69\x3d\x8c\xac\x94\x48\x01\xba\x68\x99\x48\x94\x79\xa9\xcb\x2b\x48\xf8\x51\x36\xb9\x46\x37\xf7\xb5\x64\x67\x8f\x3a\x44\xef\xb5\x58\xd2\xbb\x1e\x67\xd5\x5e\x59\x36\x4a\x57\xab\xd6\x05\x2e\x57\x00\x23\x55\x1b\x4d\x49\x6c\x39\xa2\x16\x18\x85\xef\x81\x74\x43\xc2\xe5\x22\x5b\xe8\x42\x88\xfd\x1b\x70\x08\xdf\x3d\xe9\x05\xe9\xc9\xe5\xf4\x4d\x69\x1e\x8b\x8a\x43\x3b\x9e\x58\x89\x6d\x12\x41\xcf\x5c\xc6\x00\xd2\xb2\x44\x04\xbf\x41\x96\x48\x2b\x7b\xa0\x5c\x01\xc3\x91\x92\x53\xfc\xc6\x0c\x8c\x45\xca\x67\x33\x30\x93\xa0\x69\xbb\x4d\x96\xb4\xe5\x37\x32\x49\xa5\x4a\x65\x4a\xc2\x76\x9b\x18\xb9\x45\x34\x1a\xc8\xaf\x54\xc0\x72\xb5\x42\x4b\xe0\xad\xc3\x7c\x44\x19\xd9\xd9\x09\x57\xab\x44\x42\xe6\xab\x2d\xcf\x24\xad\x8b\x45\x98\x7a\xcc\x75\x23\x94\x7a\x77\x25\xe2\xcf\xc2\x8a\xf7\xe0\xb6\xde\x43\x8f\xa3\x4a\x8f\xeb\x3a\xb8\xd9\xfc\x62\xf0\x12\xd8\xa6\x8a\x46\x45\xa2\x51\x09\x8a\xca\x8d\x52\x87\x94\x7e\xe0\xfb\x7d\xe2\xfb\x7b\x81\xef\xef\xd5\xc0\x94\x2b\x80\x37\x03\x57\xbe\x1f\xf8\xbd\x7d\x40\xe5\xf2\xfb\xc5\x21\x4d\x7a\x5b\x29\x98\x37\x0b\x5a\xc8\xc6\x5b\xd8\x3f\x0c\xf6\x0f\x35\x42\x94\x0d\x21\x2e\xd1\xa2\xf6\x82\xa3\x3d\x72\xb4\x1f\x1c\xed\xc3\x61\xe9\x99\xeb\x7c\xed\xc5\xd6\x03\xcb\x26\x24\xef\xf7\x2f\xd8\x34\x06\x9f\xf5\xc7\x35\x96\x6e\xd8\x24\x2d\x9c\x17\x20\xa1\xac\x4c\xad\xde\x2d\x95\xbd\xd8\xe4\x28\x12\x47\x15\x2b\x88\x58\x14\x51\xe2\xc8\x24\xd4\xc4\x06\x17\x4a\x4b\x9a\xa0\xb0\x18\xf8\x41\x84\x72\xc2\xc9\xd2\x38\xae\xc9\x27\xa5\x0d\x97\x63\x76\x18\xf4\x6a\x60\xd7\x61\x0c\x9e\xb3\xc2\x3f\x54\x63\xd0\x93\x0c\xa6\xa7\xf1\xd3\xfd\xb2\x71\x57\x7f\x5f\x34\xac\x6e\x8c\xcc\x31\x8a\xc4\x34\x7c\x81\xcf\xf3\xb2\x32\x3e\x44\x48\xc0\x9b\x9e\xcf\x63\xda\x2a\x97\x56\xfd\x0e\xa8\xd3\xba\xa6\x8e\x57\xab\x71\x69\xa0\x4d\xc3\x2a\xdb\x5f\x02\x91\xb3\x90\x8a\x92\x12\x6e\x5a\x18\xf5\x06\x2c\xb0\xfd\xe3\xbb\x23\x10\xa6\x85\x6c\x1f\x1b\xe7\x77\x35\x71\x10\xf6\xb8\x6c\xc1\xa5\x6e\x8f\xa4\xe9\x56\x27\xb0\x70\x82\x99\xb4\xd7\xf2\x4b\x69\x08\x00\x45\xe5\x9b\xee\xe6\x1b\xc2\x01\x31\x14\x5e\xf7\xb6\xbc\x26\x1c\xda\x08\x79\xfa\x4f\xe5\x21\x7c\xd8\x1b\x49\x94\xdf\x29\x1d\x26\xcb\x38\x2e\xfc\x5a\x81\xbd\x29\xe0\x81\x29\x60\x9c\xb3\x7b\x94\xab\x04\x46\xa6\x58\x7e\x37\x91\xe7\x77\x25\x5e\xcc\x68\x86\x52\x34\xc1\x83\x49\x50\x55\xe0\x60\xb2\xa8\xac\x1b\x2d\xf0\xcd\x48\x01\x18\x9d\xa2\x05\x1e\x2c\x82\xd9\x26\x39\x5b\x8e\x59\x25\x83\x20\xa5\xf8\xd2\xd7\x2b\xbd\x2d\xaa\xca\xa3\xa3\x32\x70\x4f\x4f\x3b\x3a\xf7\x4b\xb0\x3c\x9b\xeb\x57\x11\x90\x57\xbe\x16\x41\xdc\x9b\xa2\xc7\x35\xf1\xb5\xbb\x96\xbf\xc6\xc5\x43\x77\x5d\x5d\xe5\x95\x4b\x15\x8b\x02\x33\x92\x2a\x1a\xcc\x68\x84\x24\xe4\x56\x82\x52\x29\x63\x6a\x79\xc6\x9b\xaa\x9c\xa4\xd5\x51\xd2\x65\x68\xf4\xc1\xfe\x5a\x3b\x14\x4a\xd3\xa9\xcd\xe5\x6f\xee\x6a\x7a\xcf\x58\xe9\x28\x43\x4d\x35\x40\x5a\x53\x68\x77\x23\x66\xbc\xb6\x1b\x5c\x63\x89\xcb\x20\xea\xc5\x94\x82\xc3\x4e\x2b\x2a\x85\x35\xc3\xae\x2b\x4b\x6a\xb2\x21\x1f\x69\x7f\x32\x79\x63\x62\xb5\x1e\x5a\xfc\x1a\xbf\xd2\xde\x61\x49\xc8\x63\x05\xa2\x4b\x56\x42\x74\x51\xaa\xb1\x44\x23\xb6\xd0\xe1\x08\x6e\x9b\x65\xb8\x38\x1d\xa7\x96\xe3\x75\x83\xa1\xc3\x3e\x46\x49\xa1\x2d\xdd\xf0\x59\x2c\x70\x5f\x1a\x93\xf4\x51\xbb\xd0\x5d\x47\xef\x4c\x14\x60\xc5\x23\x14\x6d\x28\x89\x74\x92\x26\x10\x59\x6a\x7d\x3f\x8b\x62\x86\x5a\x08\x31\xca\x87\x06\x37\x06\x10\xba\x55\xe3\xcd\xae\xab\x4a\x60\xea\x63\x7f\xad\xc1\xbe\x4a\x73\xa4\x22\x57\xd5\x5a\x9e\x35\xb5\x20\xaa\xd6\x97\x45\x29\x87\xfd\xe0\x10\x54\xc7\xbd\x6d\x97\x67\x1d\x7f\x63\x09\xc9\x95\x63\xd7\xbe\x35\x52\x9c\x4d\xf2\xd8\x26\x6c\x49\xfb\xf8\x69\x2a\x78\xce\x2a\x4a\x7b\x5e\xd6\x52\x6d\xf9\x8a\xab\xde\xba\x2c\xb1\xdc\xbe\xd5\x6d\x56\xa5\x0d\xfd\x6d\xd7\x6a\x9d\xaa\xfb\xe7\x81\xaf\xbc\xe0\xbb\xe5\xcd\x53\x34\x2e\x42\xd1\x46\xe3\x6c\x6f\xae\x88\xe4\xb2\xe8\x25\x89\xc9\xb8\x6e\x33\x8a\x02\x7b\x2b\xd2\x8c\x33\x44\x11\xa6\x94\x8e\x07\xd1\x30\x1f\x05\x68\x49\x39\xb8\x93\xe6\x18\x0f\x12\xb4\x34\x91\x07\x07\x4b\xcf\x26\xc3\x16\xa5\x4b\xef\x96\xf1\x01\xfc\x2b\x19\xf2\x58\xc7\x83\x0a\x52\x14\xd3\x0c\x45\x18\x0f\x18\x8a\x49\x4e\xcc\x9b\xf2\x5c\xd5\x8c\x97\x32\xd3\x34\x77\x51\xfd\xe7\x9d\x7c\x8a\x11\x99\x85\x79\xbd\x13\xa2\x5c\x9e\x15\xc3\xc3\xfe\x93\x5e\x3f\x9a\x27\xa8\xdd\xc8\xbe\x69\xdc\xac\xd8\x7e\xbb\xcd\x06\x91\xb4\x12\x21\xa1\xd7\xac\x20\x68\xcc\xf3\xe8\x57\x45\x75\xe9\x7d\xf2\x57\xf6\x00\x37\x6f\xbe\xbe\x79\xf3\xfd\xc0\xf7\xad\x9b\xb7\xfe\x33\xf2\x5a\xa9\x77\x1b\xd7\x5d\x9b\x75\x6e\x64\x29\xf7\x13\xf0\xec\x8b\x7d\x27\x91\x16\x97\xc5\xa6\xc3\x37\x36\x9d\xea\x00\x3c\xe9\xe7\x28\xaf\x96\x1a\x99\xeb\x6e\x34\x2c\xdf\xb6\x46\x61\xfe\xbd\xf1\x8c\x8d\xbf\xc1\x83\xdd\xbe\x0c\xa2\xd7\x8b\xd4\xa2\x89\xc9\xe6\xbe\x58\xbd\xc1\xea\x6f\xd9\x05\xb5\x8c\x00\x2b\x3a\xd1\x2b\x3a\x52\x2b\x3a\x55\xdd\x00\x74\x3f\x5f\x85\x11\x12\xe3\xbf\x54\x17\xba\x32\x66\x57\xb9\x4f\xf6\xd2\x4e\xc5\x8a\x96\xb5\x4d\xc9\x84\xcc\x36\x17\x77\x7f\x90\x5a\x8b\xbb\x37\x22\x0b\x9a\x79\x53\x94\xa3\x14\x93\x18\x64\xcb\xd6\x02\x14\xf2\x4b\x34\xa1\x42\x48\x28\x3c\xbb\xd1\x04\xd0\x00\x67\xb8\xb1\xa0\x21\xea\xe0\x75\x34\x45\x11\x5a\x14\x21\x47\x41\x8f\xef\x53\x4a\x17\x56\xfc\xd0\xd6\x12\xcd\xca\xce\xe3\x53\xa8\x71\x46\x62\xf9\xc5\x54\xf0\x85\xd5\x6a\x2a\x06\x7a\xb5\x82\xef\xa7\xe6\xfb\xe2\xc3\xa9\xe4\x2a\x74\x4c\xb8\xfc\x9a\x4c\xb1\x8e\x6e\x25\x9f\x43\xd4\x21\x63\xb3\x93\xb5\x3a\xeb\x92\x95\x4f\x4b\x34\x2b\x67\xdc\x75\x11\xfc\x95\x9c\x68\x46\xc6\xd8\x42\xe8\xa9\xb0\x1b\x1d\x06\x6b\x0b\xdb\x29\x84\x9e\xfe\x96\xcb\x59\xe3\xd1\xa2\xd8\xb6\x74\x4d\x89\x0a\xd7\x15\xe0\xdd\x6a\xc6\xf7\x61\xc2\xb9\x77\xc1\x6e\x4f\xbf\x2f\xc8\x92\xe6\x24\xa6\x96\xab\x3c\x19\xd3\xdd\x70\xf7\x96\x4c\xe5\x9f\x09\x68\x96\x72\x34\xc6\x2d\x4a\xc7\x70\x2a\x90\x7e\xeb\xa8\x35\x59\xad\xb6\xe2\x5c\x4c\xcd\xad\x13\x38\xa8\x3b\x78\x44\x5b\x3e\x91\xc5\x8c\x57\xab\x1c\x4d\x31\xa5\xd3\xd5\xca\xd9\x0d\x77\x23\xa7\x45\x73\x34\x26\x4e\xe4\x80\x66\x04\x3f\x56\x01\xa6\xa5\xa6\x55\x48\x11\xb6\x3f\x44\x4e\x22\x09\x70\x37\xb6\xf0\x75\xf4\xbc\x24\xae\x1b\xb9\x2e\x2b\x5d\x86\x51\x9a\xbb\xee\x78\xc0\x82\x0c\x4d\x40\x93\xb5\x04\x91\x6e\x3c\x60\x5e\x9e\x2e\xb3\x31\x03\x0f\xf0\x60\x89\x50\x44\x4b\x08\x03\x39\xb6\xb3\x44\xa2\x90\x50\x43\x5b\x05\xe2\x44\x21\xb1\xa7\x62\x92\x5b\x4e\x15\xb3\xf2\x2d\x9b\x60\xf9\xb9\xe0\xb8\x39\x61\xcf\x7a\xfa\xeb\xc3\xd8\x90\x8d\x2a\xbe\xec\x1c\x3f\x8a\x54\x2a\xbd\x9c\x17\x34\x42\x4b\x4c\xe6\xb4\x73\xbc\xd0\x57\x31\xf3\x63\x3c\x43\x8b\xe1\x1c\xae\x62\xe2\xd2\x00\xe4\xc4\xc6\x44\x88\x2d\xdf\x06\x49\x0d\x8e\xe8\x80\x56\xd0\xa9\x24\x5c\x82\xb6\x57\xd7\xcf\x5a\x03\xa2\x21\x38\x2c\xef\x86\xfd\xfd\x60\x7f\x5f\xfb\x38\x80\x77\xc3\x61\x37\x38\xb4\xcc\xac\xfa\x2f\x81\x1f\xf3\xbb\x1d\xdc\x00\x36\x85\x1e\x79\x98\x89\xe1\x31\x6d\x84\x1e\x88\x41\x9b\xa6\xd9\x98\x4d\x02\xde\xa2\x74\xd7\xdb\xf5\xd8\x77\x36\x5e\x93\x47\xf1\x27\xd0\x57\xfe\x9d\xc0\xef\x76\x2c\x86\xb9\x61\xb2\x04\xb4\xec\xdc\x3a\x2d\x51\xc4\xad\x37\x8d\xc3\xdb\xdc\x75\x35\x8c\x85\xac\xd2\xbe\xbc\x87\x0c\x5b\xa0\x1a\x60\x71\xd9\xf6\x65\x30\x14\xa6\xe3\x7b\x2f\x81\xe0\x12\x7c\x38\xd3\x70\x55\x20\x08\xee\xab\xf3\x9d\x7f\x04\x23\xb2\x67\xd6\x14\x29\xa9\xbd\xe4\x15\xa4\x89\xe4\xb4\x71\x45\x49\x8b\x70\xe2\x12\xcd\x94\xab\x58\x9a\x01\x1f\xa6\xa3\x46\x95\x8b\x25\x03\x0d\x61\xa2\xa3\x62\xca\xb1\x40\x1c\x0f\xd3\x11\x52\x06\xbc\x19\xc6\x6b\x52\x65\x49\x29\xcd\x51\x48\xa4\xf6\x59\xde\xd6\x01\x82\x69\x01\x02\x08\x2c\xb6\x21\xd1\xad\xc0\xda\x2c\x36\xb1\xac\xf5\x27\xad\xa5\x77\x1b\xa7\x37\xa1\xd1\x4b\x44\x68\x29\x76\x8e\x3b\x08\x17\xbc\xf4\x96\x49\x34\x4e\x27\xac\xb1\x2c\xe0\x0a\x69\xc7\x2c\xbd\x29\x99\xd0\xe1\x88\xcc\x68\xe7\x58\x01\xee\xa0\x29\x95\x25\xe0\x63\xd9\xc8\x85\xae\x72\x0a\x5a\x8a\xc9\x70\x36\xa2\x0b\x02\x86\xe5\x0b\xd7\x45\x76\xb9\x09\x8a\x49\x66\xa7\x60\xb1\x01\x90\x59\xbb\xbd\xb6\x0c\xc9\x67\x03\x51\x55\x30\x59\x8f\x34\x8e\xcb\x51\xe0\xfb\x45\xb8\x87\xde\x7e\xd0\x33\x3c\x7e\x2f\xd8\xdf\x03\x92\x78\x89\x13\x41\x41\x12\x06\x6c\xc8\xd7\x5e\x04\x0a\xed\x5e\x10\x49\xa8\x88\x84\xe4\x0a\x0f\x31\xfc\x4e\x0a\x68\x44\x12\xdb\xfe\x05\x63\xba\xfb\xb7\x3f\xa1\xe1\x9f\xdc\xff\xfb\xcf\xd1\xea\x6f\x93\xbf\x4d\x06\xab\xb7\xc3\xbf\xbf\x1b\xbd\x79\x87\x25\xeb\xaf\xbc\xc5\xbb\xb7\x9a\xf6\x32\xb6\x88\xc3\x31\x73\x48\xb7\x44\x7d\x13\x32\x23\x8b\x1a\xea\xb3\x22\x26\x2b\xfa\x8b\x36\xe9\x6f\xb2\x49\x7f\x91\xb1\x95\x25\x89\xa0\xc0\x99\x0a\xa6\x2e\x27\x2d\xc1\x60\xc8\x6f\xd3\x9e\xae\x28\xa6\x0b\x34\x53\xd4\x47\x64\x14\xae\xb8\x44\x7f\xb1\x45\x7f\x63\x49\x7f\xd3\x12\xfd\x91\x49\xdd\x5d\x50\xd6\x98\xac\x56\xc8\xb8\x22\x64\x2a\x48\xeb\x1d\x1d\x2b\x4a\x05\x34\x61\xd9\x86\x07\x3a\x36\x14\x3a\xb6\x29\xd4\xb8\x29\xde\xd2\xe1\xe8\x58\x91\xe2\x0d\x0d\xd1\x98\x4c\xa1\xa9\x72\x68\xe8\x0d\x96\x6e\x8e\xd1\x14\xdd\xca\x33\xfc\x0d\x26\xad\x3b\x95\x0a\x54\xaa\xda\x71\x23\xc8\x17\xac\x00\x8a\x6a\x52\x34\x25\x89\x9d\x82\xc9\x03\xc6\xa6\xee\x6b\x72\x4f\x1d\x87\x9c\xd2\x0e\x39\xa7\x9d\xe3\xf3\xb7\xda\x67\xee\xf8\xbc\xdd\xc6\x8f\x37\xf4\x76\x78\x3e\x32\x6b\xe9\xb2\x54\x13\xf9\x4e\x73\xb4\x44\x11\x52\x66\x1c\x98\x4c\x0d\xe6\x5d\x07\x93\xf7\x62\xd9\x7d\xa3\xfe\xf1\xb7\xb7\x37\xba\xd0\x6f\xed\x36\x7e\x6f\xdf\x31\x50\x4a\xd1\x35\xbd\x19\x7e\x1b\xe1\xc1\x75\xa0\x4a\xbf\x36\x41\x6f\x6f\xbc\xdb\x2c\x5d\x2e\xe0\x2e\x77\x22\x47\xe8\x82\x0e\x2f\x47\x3a\x4a\xc6\x7b\xf2\x5d\x0c\x96\xa1\x94\xaf\xae\x7b\x21\x8b\xff\x2a\x8b\xb8\x32\x73\xa4\x94\x7c\x4a\x53\x71\x81\x95\x28\x77\x45\xe7\xe8\x92\x4c\xc9\x77\xf2\x9e\x7c\x15\x34\xf2\xfd\x1d\x3d\x75\x5d\x74\xdf\xa6\x53\x75\xdf\x7c\x4a\xbe\xe3\xf6\x15\x39\xa5\xdf\xdb\x97\xba\x83\x7a\xb5\xdf\xb7\x4d\x2e\xbc\x1e\x15\x41\x27\xe7\xa0\x3a\x55\xd1\x26\xb5\xe6\x3b\x69\xb3\x02\x66\x21\xd2\x3f\x27\x74\xba\x41\xf1\xa9\xeb\xa2\x94\x66\x42\x44\x9e\xd0\x31\x26\x33\x7d\x79\x3f\xb1\x16\x5a\xa6\x4b\x1e\x37\x94\x5e\x36\x2c\x22\x52\x48\xd5\xac\xf3\x27\x47\xa9\x4a\x9d\x3f\x39\xa0\x3b\x75\x5c\x9d\xa2\x34\xb5\xce\xff\x99\x04\x6e\x0c\xfe\x13\xa9\x68\x75\xfe\x73\xe3\x5d\xae\xde\xbc\x75\x82\x31\x4d\x87\xa1\x4a\xf6\xc9\x8e\x8f\x47\x15\x87\x5c\xa9\x82\x6d\x87\x0d\x15\x2e\x71\xaa\x97\x5d\x06\x42\xf9\x3b\x15\xf2\x7d\x42\x63\x34\xdd\xf5\x3b\x46\x5f\x2a\xf2\x4e\x06\x59\x30\x79\x4b\x97\x83\x22\x9e\xf7\x70\xb2\xe3\x8f\x06\xa6\x8f\x3e\x0e\x64\x52\xdb\x4e\xca\xd6\x63\x1a\x0d\xa7\x3b\xfe\x68\x5d\x35\xb9\x1f\x0f\x1c\x27\x18\xaf\x0b\xc3\x4c\xcd\x95\xb7\x84\x92\xad\xe7\xd2\x2f\xf1\x62\x30\x5c\xba\xab\xcf\x5c\xd6\x86\x9d\xb3\x30\xdb\xdc\xb1\x15\xa1\xfc\x9e\x1d\x3b\x7a\xdd\x8e\x1d\x3d\xbd\x63\x47\x34\x44\xa9\xbd\x63\x47\x25\x8e\x19\x59\x1c\x33\x97\x1c\x73\x59\xe6\x98\xe2\x04\x61\xb8\x4d\x23\x43\x31\x81\xf0\xe0\xb9\xcd\xfb\xf4\xe6\x2d\x24\xe0\x65\x71\x33\x6f\x67\x22\x71\xf5\xab\x58\x63\xaf\xd3\xf1\x60\xc7\x0f\xc6\x92\xeb\x6c\xec\xb1\xca\xce\xb7\x3a\x6f\x2f\x81\x7e\x3c\x2c\x29\x20\x94\x51\x60\xa4\xf6\x54\x0b\x38\xd4\x6c\xae\x52\x38\x85\xc3\xf2\x7e\x1f\xeb\x7d\x55\x6c\xb1\x63\x3a\x1c\x01\x27\x22\x53\xea\xc4\x2a\x4a\xdc\x84\xb6\x96\x15\x3d\x3c\xcc\x8a\x05\x55\xe2\x3c\xc0\xc1\xc7\x10\xcb\x22\x8e\x78\x75\x7f\x5d\xca\xfd\x55\xb4\x7a\xae\xc7\x6e\x4e\x9d\xb1\x43\xa9\x13\xde\xdc\x8c\xb5\x23\xf4\x2e\xba\xc1\x6f\x76\xf1\xd0\x1f\xad\x56\xfd\x16\x75\x38\xcb\x79\xf1\x6e\x10\xe0\x5d\xb1\x6a\x87\xd3\x11\xa0\xa3\x38\xe1\x8d\xfd\x32\x94\xdf\x4e\xd5\xb7\x5e\xf1\xce\x1b\x60\xf1\x3f\xf5\xd2\x7e\x83\x91\x4c\x7d\xe7\xaf\x56\x8e\x49\xf6\x06\x90\x38\xd8\xdc\x9f\x93\x0d\x59\xaf\xf0\x8f\x91\x86\x4d\x1a\x4f\x60\x38\x52\x20\x70\x05\xee\xdb\x4c\x9b\xcd\x88\xe2\xcc\x16\x05\xeb\x88\x2c\xc5\xde\x13\x53\xc4\xbc\xe8\x36\x49\x33\x76\x12\xe6\x6c\xe0\x44\x4e\xe0\x38\xb8\x8d\x98\x37\x5f\xc6\x3c\x8a\xa3\x84\x0d\x9c\xb9\x49\x54\xbb\xf4\xc0\x59\x9a\xa4\x9c\x47\xe3\x6f\x0f\x03\xe7\x01\x52\xc8\x84\x76\xc8\xc2\x8e\x3c\x58\x4c\x5c\x90\xbd\x7b\xf7\xae\x43\xe6\xd4\x5a\x6c\xfa\x9c\x48\xe2\xb6\x73\xeb\xe0\x63\x14\xd1\x5c\x36\x7a\x4e\xc0\x30\xb1\x85\x50\x4a\xe7\xd6\xde\xfc\x6e\x02\xf2\x26\xec\x60\x89\x62\xad\x13\x12\xa9\xfd\x15\x93\x08\x06\xd7\x75\x55\xca\xdb\x64\x38\x1d\xb9\xee\x58\xed\x6d\x4b\x12\x69\x76\x8c\x05\x99\x46\xc3\xce\x68\x38\x1d\x91\x09\x4d\xc9\x52\x7c\x49\x17\x42\xe6\xb5\x2a\x14\x6c\x55\x16\xe5\xba\x56\xb2\x81\x78\x6f\x4e\x28\xa5\xa2\x92\x41\x2b\x14\x39\x04\x05\x21\xc7\xc1\xab\x95\x6a\xa4\xe3\xe0\xa0\xda\x5e\x8c\x65\x6d\x8b\xc1\xd2\x6c\x28\x0b\x1c\x2c\xd7\x81\xd3\xd1\x44\xa1\xb6\xe1\x4e\x95\x30\x78\x0d\xb8\xa9\xa4\x04\x3e\x18\x8e\xb4\xe4\x67\xa0\x71\xd7\xc1\x8c\xbc\x56\xc0\x5c\x3e\x2f\x60\xce\x9f\x15\x30\xb9\xde\xd3\x17\x68\xae\x05\x4c\x4e\xe6\x2d\x4a\xa5\x1f\x63\x5e\x62\x9a\x79\xe9\x98\x93\x49\x3d\x45\x89\x69\x4e\x69\x82\x96\x44\xd2\x0d\x26\x77\xc5\xa9\x86\x3c\x50\xb4\xac\xa5\xe2\x65\x1d\x15\x2f\x37\xa9\x78\x22\xc9\xf7\xd6\x81\x08\xde\xec\xbe\x39\x45\x93\xc1\x32\x70\xfe\x8e\x06\x81\xd3\x5e\x2a\x1a\x6d\x3b\xd8\x21\x0f\x98\xdc\xd8\xf8\xc4\x16\x79\x73\x41\xde\x7a\x23\xbf\x29\xad\x4a\xd8\x5b\xcb\xd7\x42\x4d\xc5\xa8\x43\x74\x4b\xc6\x78\x30\x1c\x8f\x82\x61\x21\x46\x5e\xd3\x0e\xb9\xa7\x1d\x72\x2a\x04\xdf\xfb\xb7\xfa\xdb\x63\xfc\x78\x6b\x91\xe6\x64\x70\x1f\xc8\x4b\xad\x73\x72\x09\x25\x4d\x06\xe3\x40\x1b\x01\xde\x63\x5b\x46\xbe\x5c\xad\xd0\x39\x8d\x51\x8a\xac\x12\x44\xd7\x3b\xc1\x3d\xc6\xc4\xb4\x0e\x53\x4a\xaf\xf1\x3d\x8d\xd0\x98\xdc\x93\x3b\x6c\x22\x37\x9f\x4a\x1a\xd6\xa5\x5f\x13\xf1\xd9\xa9\xc6\x04\x2f\x7a\xdc\x3c\x35\xbd\xf8\x4e\xfd\xe3\xef\x6f\xa9\x16\x09\x77\xfc\xe3\xef\x12\x4d\x44\x95\x75\x39\xfc\x3e\xda\x56\xc6\x3d\xbd\xa6\xe7\x1a\x3a\xa4\x59\xad\x5c\x54\xbd\xb9\xad\x49\xf5\x85\x31\x30\xa9\x3b\x4a\x4a\xa5\x8b\xd8\xf2\xa4\xa2\x05\x36\xbe\xfe\x13\x1b\x1f\x43\xdd\xfe\x11\xde\x90\x5b\xf6\xf7\x55\x20\x35\xb8\x4f\xde\xf5\x76\x0b\x80\xd4\xb4\x64\xf0\xac\x94\x46\x9b\xaa\x91\xc2\xaf\x01\x0c\x35\xd7\x8d\x6d\xda\x41\x67\x37\xdc\xbd\x71\x5a\xda\x5d\xf3\x51\x69\xd6\x9c\xd0\x21\xa0\x5e\x09\x9c\x1b\x07\x2e\x9e\x07\xe9\x86\x75\x13\xa3\xbc\x64\xed\xe5\xec\x9a\xf0\x79\x86\xf5\x3a\xbb\x8e\x56\xd4\x44\x49\x93\x0d\x98\x54\xeb\x04\xad\xc4\x75\x4b\x7a\x3d\xd9\x07\x8d\xc9\xca\x70\x50\xf8\x8d\x06\x45\x77\x44\x43\x93\x70\xce\x5c\x37\xad\x53\x75\x46\x96\x3d\x65\x09\xc2\x15\xd4\x4d\xdd\xfe\x91\x9a\xa9\x0d\x25\x19\xcc\xd4\xde\x1f\x80\xc5\x79\xc9\xf8\xbf\x11\x8b\x33\x9c\xd4\x87\x5b\x2a\x01\x69\x8a\x26\x60\xc2\x68\x01\xa5\xc9\x00\x4a\x73\x3b\x8e\x66\xb7\x1a\x3f\xac\x42\xa4\x7e\x4f\x74\x2d\x4c\xc6\xb3\xb2\xfb\x62\x4d\xef\x78\xb5\x7b\x82\x92\x14\xa6\x2a\x37\x92\x7f\xcf\x0f\xfc\x9e\xac\xf9\xa9\xab\x78\x5d\xf3\x4d\x74\xfb\xca\x41\x95\x9f\x38\xe2\xff\xeb\x2a\x7d\x4a\xed\x69\x2a\x8d\xa3\xe4\xdb\xab\xab\x95\x1f\x6d\xad\xf8\x29\x37\x27\x53\x71\x1a\x3f\xe7\xb7\xb7\x59\xef\xf6\x3a\x5f\x15\x32\xcb\xef\x1e\x41\xa8\x20\x8d\x69\xac\xb9\xc8\xa3\xd8\xd3\xbe\xa6\x51\xc2\xdf\x3f\x19\x19\xc1\x80\x9c\x1f\x05\x7e\xb7\x08\xa4\xd7\x7d\x51\x1c\xac\x02\xc9\x5b\x1f\xdb\x7a\x10\x3c\xd5\x71\x3c\x96\x4c\xf2\x5f\x22\x3e\x2b\xe3\x7a\xf7\x30\x72\xf4\x1b\x07\x5b\xad\xd5\x89\xdb\x9d\xc7\x19\xb1\xbf\x4c\x37\xae\xcd\xb6\x44\xaf\x0a\x69\x66\x05\x43\xc9\x8b\xcd\x3a\x1d\x84\x81\x09\x7d\x02\x8a\x83\xd0\x3a\x99\x31\xdb\xd4\x4e\x8b\x3a\x4b\x92\xe3\xc0\x9c\xeb\x77\x34\x30\x16\xc9\xc5\x2e\xb9\xd4\x9e\xfd\x9d\xc0\xef\x55\x82\x9b\x90\xfd\x5e\xb0\xdf\x83\x61\x7d\xea\x34\xac\xe9\x69\x1a\x7d\x7f\xd6\x11\x74\x83\xa0\x38\x7f\x82\xa2\x9e\x3a\xcb\x99\x5a\xd3\x84\x8f\xd3\xf8\x77\x30\x0c\xf1\xa5\x43\x1c\xf5\x71\x1d\xd3\xd8\x7f\x7a\x4f\x2d\x1a\x90\x47\xcf\xfa\x83\x6f\xad\x5f\x7e\x5b\x5b\xfd\x73\xf7\xd1\x3d\x88\x9f\xa9\x10\xe4\xa6\x59\x3a\x3f\x51\xd8\x66\x24\x2a\xa5\xea\x35\x65\x9b\x18\xb6\x5a\x91\xeb\xfa\x2d\xa3\x9f\xb2\xc9\xba\xf4\x51\x89\xb6\x0d\x12\x07\x89\xa4\xc9\xf1\x66\x98\x0f\xda\x39\x4e\xdf\x85\xc7\x70\x03\xcb\x69\xbb\x0c\x2c\x4a\x32\xc4\x89\xef\xfb\x7d\xdf\xf7\xb1\x15\x35\xd6\x82\x16\xe1\x6d\xa7\x19\xe5\xcd\x24\xe5\xcd\xb0\x29\xa1\xd2\x05\x53\x68\x2e\x44\x63\x1c\xdc\x88\x94\x81\xd3\xdb\xfd\xbd\xbd\xde\xfe\x40\x8c\x6c\x90\xa0\xbd\xbd\xee\xd1\x7e\x1b\x21\xbe\x03\xe8\x9d\xfb\xf8\xdd\x3b\xbf\x83\x09\xff\x0f\xbf\xd3\xed\xb7\xf7\xf6\x7b\xdd\x0e\x36\xda\xbc\x08\x62\x3c\x21\x49\x74\x56\x00\x8c\x82\x8d\xbc\x2a\xe2\x52\xaf\x83\x37\xf9\x45\x94\x8c\xe3\xe5\x04\x22\x57\x15\x03\xab\x13\x6b\x58\x5b\xab\xf5\xff\x35\x91\x2e\xac\x8f\x8d\xe7\xdc\x6b\x62\x1c\x5a\x0b\xba\xba\x90\x5f\xb2\x0d\x46\x3c\x8c\xa3\xf1\x73\xfe\xc6\x1b\xf4\x1c\x3d\xb1\x92\x5f\x76\xff\x27\xf6\x04\xb8\x03\x3c\xdc\xc3\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\xce\x00\xc6\x0e\xea\xcd\xdc\x02\x24\x24\xd0\x8c\x24\xa6\x96\xb6\x89\x86\x46\x36\xec\xda\xb4\x40\xa8\xb6\x26\x88\x4c\x06\x63\xf0\x92\x3d\xf9\x05\xb2\x40\xbd\xe4\x33\xcb\xd8\xb4\x9e\x8b\x54\xa3\x00\x6d\xee\x82\x9d\xe2\x8a\x49\x1b\xdd\x18\x8a\xcd\xc2\xfb\x7a\x06\x20\x8e\xb7\x5e\x16\xde\xc3\xd9\xdb\xda\xab\x6a\x59\xc2\x70\x44\x72\xda\x39\x8e\xde\xe5\xc7\x58\x79\xc8\xe8\x63\xf1\x30\x07\xbc\x61\x92\xbf\x4d\x5d\xb7\xfc\xae\xa0\xee\x7c\x54\x58\xef\x87\xd5\xc5\xbb\x25\x2e\x57\xb7\x1a\x43\xa8\x6a\xcf\x64\x8b\x1d\x19\x5b\xb0\x90\x07\x12\xa4\xab\x84\x75\x53\x14\xf7\x92\x3d\x30\x9f\x87\xf1\x73\x7e\xf1\x1b\xf3\xa7\x3e\xda\xb6\x78\x5e\x15\xcd\xa6\x46\xa6\xc9\x79\x98\xf1\x2d\x52\x4d\xf1\xae\xc4\xa7\x8a\xe4\x27\x25\x9b\xd2\xd7\x29\x55\x40\xe0\x42\x32\x79\xa1\x98\x63\xc8\x06\x93\xf0\x49\x19\x26\x24\x69\x21\xc3\xa4\x24\x6d\x87\xfa\x4b\x4a\x69\xf8\x22\x19\xa6\x1a\xeb\xa6\x7e\xfe\x78\x16\x7d\x7b\x6e\x2b\xdf\x9c\x40\xf5\xd5\xd6\x19\x7c\x2a\x10\xa1\xa9\x7a\x79\xf3\xea\x7a\x97\x4f\xc8\xe3\xd5\x60\x3a\x5b\x2a\x7d\x6d\x48\x07\xf9\xc9\xd6\x4a\x9f\xdb\x5f\xfa\x18\x49\xe8\xdb\xd7\xd5\xda\x2b\xea\x02\xa8\x4d\xa8\xeb\x25\x9b\x4a\x15\xf9\x77\xef\xb0\x6c\xde\xea\xfb\x2a\xe6\xed\x51\x1f\x7b\x7f\x3d\xfd\x15\x94\xfd\xfb\x0a\x5c\xc0\xef\xee\x4b\x74\x01\xbf\xdb\x97\xf0\x02\x10\x64\x5d\x47\x6a\x07\x80\x01\x08\x3a\x3f\x83\x1f\x1d\x09\x31\xb0\xef\x4b\x84\x81\x83\x23\x0c\xe0\x02\xbd\x43\x09\x2d\x70\xe8\x2b\x68\x81\x7e\x57\x43\x0b\x74\x14\xb4\x40\xbf\x87\xc9\xbd\x36\xcd\x3b\x55\xae\x2c\xe7\x54\xa2\xe5\x90\x4b\x6d\xd6\xf7\x1d\x7e\xf4\x31\x79\xaf\x0c\xfe\xbe\x29\xf8\x12\xf2\x95\x5e\x02\x60\xc0\x7b\x6f\x4a\xae\xe8\xb9\x37\x25\x27\x94\xeb\x28\xf0\x5f\x28\xf7\xfe\x72\x79\x7e\x46\xfe\x41\xbf\xb8\xee\x17\x4f\x22\x08\x47\xd3\x07\xf2\x89\x4e\x91\x73\x3d\x8b\x26\x13\x96\x38\x98\x7c\x10\x8f\xe5\xe8\x3c\x67\xf4\x71\xed\x2d\x94\x45\xf4\xa7\xfc\x54\xda\x67\xdf\xc4\x8c\x7c\xa6\x4b\xe4\xe4\x50\xc3\x4e\xc6\x6e\xa3\x9c\x67\x0f\x0e\x26\x1f\x8b\x64\x21\xfb\xfc\x26\x1e\xd3\xc5\x4e\x91\xf2\x03\xdd\x80\xc7\xf8\xa9\xee\xf2\xfd\xc4\x75\x5b\xad\xef\xde\x94\xfc\x99\x72\xef\xbf\xe5\x37\xe4\x67\xda\xfa\xf3\x6a\xd5\xfa\x73\xf1\x71\xf9\x09\xe2\x4a\x9f\xcc\xa2\x78\x42\xfe\x49\x13\xd7\xcd\xeb\xb4\x37\x07\x2d\x7a\x8a\x2e\xd0\xe3\x1a\xb6\xce\xc7\x7a\x3b\xac\x8b\x62\x73\x55\x5b\xfc\xc1\x1a\x7b\x82\xd5\x88\x7f\x31\x2e\x69\xb3\x0b\x85\xf4\x57\xf4\x03\xe1\xb8\x91\x18\x27\x81\x1f\x86\x7c\x44\x2e\x54\x26\x92\xb8\x2e\x6b\x51\xfa\x83\xeb\x5e\x88\x8c\x24\xc1\xeb\xe0\x82\xfc\x52\xe3\x40\xfd\x71\xc8\x46\xf4\x14\x9d\x58\x4e\x28\x06\xcb\xce\xbb\xfe\x46\x19\xe1\x6b\xf2\x23\xfd\xc9\x75\xd5\x68\x5b\x23\xe7\xe9\x60\xf7\x83\xcd\x35\xb6\x91\x9b\xad\x6b\x51\x52\x6d\x9d\xd9\xc9\x9a\xfc\x5a\x06\x54\x4c\x4a\xae\xa2\x3f\xb8\xee\xaf\xe8\x37\x48\x26\x77\x20\x8c\xd1\x6b\xe9\xb9\x4d\xee\x50\x82\x49\x86\x3e\x12\x8e\x07\x28\xf1\x98\xa1\x1f\x00\x44\x27\x9f\xb0\xeb\xb2\xe1\xa7\xd1\x90\x8f\x5c\x17\xa9\x5f\x54\xc6\x10\x3e\x45\x89\x71\x08\xb8\x89\x59\x70\x8f\x3a\x10\x37\x10\x5c\xa7\xe1\xdb\xd5\x4a\x0c\xec\x27\x72\x8f\x7c\xf2\x08\x5e\xf7\xba\x80\x0e\x26\xff\x54\x0d\xc5\xc1\x85\xfa\xb5\x26\x7f\xad\x1a\x19\x8a\xdd\xc6\xc0\x65\x92\x84\x2e\x10\xa7\x37\x00\x99\x1c\xd1\x0e\x49\xa9\x0e\x17\x79\x9c\xbe\x8b\x8e\xf1\xaf\x48\x48\x92\xc9\x30\x12\x27\x19\x3e\xcc\x8a\xb0\x92\x6c\x4d\xfe\x54\x33\x89\x67\xf6\x3d\x06\xbd\x46\x10\xf2\xae\x70\x2e\x51\xce\xa5\x3f\xb8\xae\x18\x21\x26\xe1\x8a\x7f\x23\x0c\x83\xad\x25\xe2\x00\x64\xa7\x14\x1e\xf0\xfb\x23\xfc\x50\x69\x62\xec\x20\xa4\xdf\xa7\xd1\x90\x8d\xf0\x6a\xc5\xf1\x9a\xfc\xf7\x26\x00\x06\xa3\x37\xe5\x39\x01\x0a\x54\xe5\x71\x28\xef\x37\xc2\x71\x41\xc1\xcc\x72\x80\x49\x4a\xf9\x4a\x13\xb6\x5a\x95\x26\x14\x06\x3d\x59\xaf\xc9\xff\xd4\x63\x37\x92\x84\x5e\x21\xd1\x12\xac\xcf\x8e\x9d\xe3\xc4\xc2\x92\x80\x5a\x68\x22\xf1\x24\x56\x2b\x4e\xe9\x27\xf8\x37\x5c\xad\xf4\x91\xaf\x90\x0c\xd6\xe4\x2f\x5b\x6b\x01\x8a\x24\x11\xbd\x42\xc9\xe0\xb7\x40\xd6\x98\x8a\x1a\xc5\xd1\x54\x1f\x77\xc5\x09\x55\x76\x8c\x46\x32\xe4\xc5\x6a\x95\xc0\xf8\xff\x00\x7d\x4d\x65\x95\x1f\x87\xbc\x98\xe4\x74\xdd\xf8\x69\xb5\x42\x29\x42\x27\xb6\x33\xb6\x72\x9b\x29\x2d\x18\x75\xac\x35\x50\x31\xc8\x91\xbc\xb8\x38\xd9\x5a\x36\x9a\x2d\x47\xaa\xe6\x19\x1d\x6f\x0a\x4e\xf5\x5a\x5a\x62\xb9\xe2\x27\xf2\x38\x24\x09\x49\x59\x1f\xff\x46\x60\xd9\x19\x3a\x91\x3f\x87\x9f\x46\x40\x65\xa8\x20\x1b\x58\x6b\xff\xd4\x12\x9d\x58\x48\x09\x36\xc0\x30\xcd\xc4\x75\x7f\x76\xdd\x7f\xa2\x1f\xea\xec\x57\x73\xc6\x03\xbe\xc6\xe4\x17\x70\x0b\x7f\x29\xda\x91\x72\x0c\xfa\x26\x96\xeb\xa5\x37\xa5\xff\x4d\xde\x7b\x53\xfa\x2b\xd1\x86\xcb\x62\xf3\xa2\xff\x03\x8f\x87\xe2\xf1\x4f\xe4\xbb\x37\xa5\x7f\x11\x9c\xb3\x05\x30\x40\xae\x9b\xa2\x1f\x88\x53\xb7\x27\x39\xe4\x4f\x40\xe0\x13\x6f\x5a\xe7\xd5\xfe\x0b\x9a\x82\xa3\x0c\x26\x11\x8a\xbc\x1f\xdb\x91\xf7\x4b\x3b\xf2\x3e\xbe\x69\xfd\x44\x1e\xe5\xf4\x04\x27\xeb\x82\x1f\xfc\x2f\xb5\xa3\xa0\x91\x28\x3f\x81\x3b\x87\xcb\x45\xc6\xc2\x09\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\x26\xf9\x38\x5d\x88\xe2\xf2\x12\xb0\x39\x63\xb4\x73\xfc\xbf\x9a\x0a\x18\x3b\xc6\x53\xf4\xbf\x43\x26\x83\xd9\x1a\x72\x67\xf4\x1b\x9a\x7a\x39\x4f\x33\x86\x49\x26\x3e\xe1\xfa\x64\xfa\x2e\x63\xc7\x78\x86\x38\x1b\x66\xf2\x23\xf0\xde\xd1\x1d\x56\xf4\xe8\x10\xb1\x74\xea\x35\xad\x9f\x09\x6b\x53\xc7\xc1\x83\xcf\x43\x36\x0a\xc4\x3f\xf4\x44\x4c\x35\xf9\xc6\x1e\x3e\x56\x3e\x8a\xa6\xa8\xf5\xa3\x18\xdc\x2a\xdd\x33\x5b\x9b\x23\xb7\x1e\x41\xee\xa6\x03\xcd\x28\x69\x7e\xc6\xd1\x14\x7d\x16\x7c\xdb\x8a\xc8\xcc\xd7\x64\x99\xb3\x4b\xc6\xb9\x8d\xa9\x8d\x1f\x7f\xa6\xad\x8e\x7c\x15\xcd\x17\xb6\xab\x0b\xbc\xf2\xd7\x6a\x76\x8b\x8e\x56\xc1\x2d\x9f\xbe\x85\xe6\x83\x53\xc4\x70\xf0\x57\x74\x2a\x1d\x01\xd7\xa4\xe2\xfd\xf8\x2b\xd9\x40\xb3\xfc\x2b\xd9\xea\x38\xf6\xdf\xa4\x06\x19\x31\xf8\x9f\x4a\xaa\x9c\x8b\x3c\xf8\xcb\x5a\x32\x82\x84\xd1\xb2\xe0\xf2\xdd\x9b\x22\xd8\xf9\xac\x49\x4c\x98\xd5\xb7\xfa\xf2\x6a\xa6\x55\x94\x74\xab\xdc\xc5\xc8\x17\xd7\x2d\xca\x43\xad\x9f\x56\xab\xbc\xe6\xf2\xed\x04\x99\x8b\x37\xe9\x66\xeb\xb4\xe8\x3f\x90\xdc\x72\x9c\xc7\x35\x3c\x3d\x86\x01\x5b\x5b\xcf\xb2\x61\x72\xb5\x61\x4c\x1c\x21\x7e\xc2\xb9\x52\x49\x9e\x5b\x94\x8a\x62\x0b\x1e\xb2\x11\x89\xa8\x7f\xbc\xc1\x09\xa3\x63\xed\xdc\x58\x70\xc4\x48\x52\xf6\x14\x65\x54\xec\x1d\xfe\x88\xa0\x07\x24\xf8\xb7\xb9\xf3\x87\x5d\xf5\x47\xcb\x9e\x64\x0e\xef\x4b\x08\xc3\x6a\xa3\xac\xb3\x00\x05\xd0\xa1\xac\x62\x8e\x80\x49\xeb\x47\x21\x24\x18\x52\xc5\x44\xd4\x4d\x39\xf9\x87\x32\xd1\xf8\x22\xd1\x34\x89\x25\xbe\x0d\x3f\x8c\x74\x4c\x4b\x2b\x95\x7c\xb0\xf3\xe8\xc8\x0e\x98\xc4\xe8\xc4\xac\x51\xf1\x24\x4e\xd6\x3a\x6e\x8a\x60\x71\x31\x52\x32\xbd\x1a\x5a\x85\x15\x67\xdc\x4c\x34\xb0\xa6\x32\xe2\xef\xf4\x03\xbf\xd3\x27\x05\x46\xe1\x61\xe0\x77\x0e\x8d\x1b\x4a\x61\xe4\xaf\xe1\x0d\xf6\x03\xbf\xbb\x6f\xc5\x3c\x2f\x87\xfb\xf4\xfb\x07\x81\xdf\x3f\x20\xfe\x5e\x27\xf0\xf7\x3a\xc4\xdf\xf3\x03\x7f\xcf\x2f\xe0\x0f\xec\xdb\x4f\x3f\xd8\xf7\x6b\x7c\x9f\x55\x30\x84\x6e\x70\xd0\x25\x07\x47\xc1\x81\x86\x01\x54\xf0\x07\xfd\xe0\xa8\x5f\x0d\x92\x50\x8d\xf3\xf9\x8c\x26\x64\x5f\xeb\xb5\xf6\xca\x78\x00\xa0\x37\x0f\xb5\xb2\x24\x57\x47\xb3\xa5\x0a\x8a\x00\xb1\x6f\x7f\x58\x4e\xa7\x2c\x53\x67\xbf\x03\x71\xf6\x4b\x4a\x2f\xa6\x34\xf1\x3e\x84\x3c\xfc\x39\x62\xf7\x64\x42\x33\xef\xfd\x0f\x3f\xbb\xee\xd2\x8b\x72\x48\x99\xd1\xb1\x35\xa9\xa0\xb5\x00\x77\xa8\x9f\x3f\x9d\xfe\x62\x00\xf3\x7e\x91\x8a\xf8\x65\x8b\xd2\x31\x26\x8f\x56\xf1\xc1\x78\xad\x7c\x63\x25\x30\x43\xe6\x9d\x9c\x9f\x5d\x5e\x5d\xa8\x50\xc1\x32\x13\xf8\xfc\x89\xda\xea\x96\xf9\xc4\x75\x27\x00\x99\x96\x43\xe8\x81\x85\x76\x3e\x24\x5a\x03\xf4\xd3\x93\xb1\x8f\x5a\x09\xbb\x6f\x8e\x51\x17\x1b\xb3\x4f\x25\x77\x78\x37\x0f\x9c\x7d\x2e\xa2\x6b\x95\xdb\x53\x17\x2a\xdb\x18\x7b\xb5\x28\x9d\xb9\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\x23\xb5\x56\xc7\x18\xa3\x10\xe5\x3b\x09\xc6\xca\xa9\x69\xaa\x6a\x59\xa8\x27\xe5\x48\x93\xbc\xcd\x8f\x31\x38\x6f\xfd\x14\x25\xfc\x10\xcd\xdb\x6d\x32\xf1\x6e\xf5\x63\xd2\x6e\x17\xfa\xc7\xe5\x7a\x5d\x20\xda\xd8\xfd\xb7\xc2\x25\x5b\xf8\x20\xe5\xd0\xda\x7e\x7f\x2f\xf0\xfb\x7b\xc4\xef\xef\x07\x7e\x7f\x7f\x1b\xda\x45\xe1\x7c\xfa\x5c\x3c\xd8\x82\x90\x5a\x92\xe4\x05\x25\x92\x47\x4d\x9b\x81\x24\x7f\x43\xab\x4a\x63\x5a\x6e\x84\x51\x71\x56\x03\xc6\x8a\x8f\xfb\x18\x39\x00\x12\xd9\xeb\x3a\xa4\xff\x8c\x6a\x5a\x30\xf0\xaa\xea\x46\x26\x6a\xf5\x4d\xbf\x1f\xf8\x7d\x50\xdf\x54\x83\xac\x96\x2a\xdb\xef\x3b\xe4\xf0\x8f\xac\xac\x57\x5f\xd9\xa7\x84\xfb\xfb\x15\xbb\xcb\x7f\xb5\xaa\xcd\x98\xda\xba\xaa\x3f\x7c\x08\xf7\xb6\x56\x75\x58\x31\x3c\xfe\x57\x6b\xda\xaf\xaf\x49\xac\x8f\x3f\x7c\x00\x0f\xb6\xd7\xf5\x87\x8f\xe0\xe1\xf6\xba\xfe\xe8\x21\xdc\x84\xce\xfe\xc3\xaa\x32\xd1\x6b\x4d\x6d\xe5\xd0\x97\xf5\x46\x46\xd2\xdf\xbf\x23\x37\xc7\x7e\x17\xa3\xce\xa6\x4e\x14\xb6\xc7\xa3\x03\xb9\x3d\xee\x75\xa4\x3a\x54\x6c\x97\x63\x65\x9a\x24\xb5\xa1\xe2\xc7\x84\xb6\x12\xef\xfd\x58\x9c\x70\xfe\x47\xca\x7f\xae\xeb\x94\x9e\x9d\x28\x69\x26\x64\x46\x43\xc1\x5a\x7f\x61\xe1\x37\xb2\xa8\x73\x6e\x27\x73\xba\xf4\x96\x53\x38\xd5\x54\xc2\xa1\xfd\x61\x46\x4e\xe4\x81\x6e\x44\x1c\x8e\xa6\x28\x16\x82\xa2\x62\xb2\xb3\xe2\x2a\xa2\x25\xf7\x98\x39\x1a\x2b\xad\xa0\x68\x3c\x04\x12\x86\x60\xf6\xe0\x12\x3a\x30\x08\x18\x23\x83\x34\xb0\x3d\x26\xf1\x12\x4c\xa9\x36\x8a\x23\x2a\x1e\xf1\x2d\xdd\xb0\xf8\xd2\x79\xc8\x1d\x79\x20\x4b\xd2\xea\x88\x49\x6f\x4c\x5d\x77\xe2\xba\x28\x47\x28\x93\x68\x08\x27\x85\x5e\x01\xdd\x95\x1a\x5a\xc8\x9c\x0f\x98\x84\xde\xd9\xe9\xe9\x07\xda\xea\x90\x08\x0d\x1d\xa9\xab\x74\x88\x38\xf0\x3a\xc4\xb9\x65\x60\x98\xc0\xb8\x33\xda\x84\x11\xe3\xf4\xb6\x14\xf7\x9a\x0f\xd9\xa8\x91\x22\x4e\x98\x95\x97\x93\x48\x8d\x27\x17\xf2\xf7\x42\x48\xcb\xea\xd2\x76\x2a\x84\x6f\xf9\x0b\x36\xe1\x4c\x9e\x79\x52\x75\x2f\x3b\x1d\xb2\x11\x7c\xae\xcf\x1c\xa2\x19\x94\x32\xe9\x6e\x9b\xea\x2b\x7c\x2b\xd8\x3a\xe1\x12\x80\x4c\x9c\x34\x6c\xbc\x64\x6d\x82\xd6\x0d\xfa\x5d\xb2\xd7\x09\xf6\x3a\xd2\x10\xad\x8c\xbd\x23\xe5\x4c\x1d\x2c\xa1\x1a\xd0\xb5\x56\xc2\xdc\xd3\x40\xfc\x7d\xf0\xf6\x30\xb3\xf3\xff\x17\x9b\x3c\x00\xf7\x41\x99\x45\x48\xca\x2e\x4f\x3a\x9f\x13\x4e\x5a\x7e\x25\xb8\xb5\x35\x16\xd0\xe7\x57\x05\xec\x38\xd0\x42\x75\x57\x63\x10\x29\x78\x81\x9e\x0a\xa1\xd8\xdf\x33\xd7\xab\x20\x1d\x39\xe4\x71\x1a\x87\xfc\x4b\xb8\xa8\x89\x44\x93\x03\x42\x98\x6d\xdc\xd9\x4c\xa5\xb2\x32\x42\x4b\xcb\xfe\x29\x44\x4b\x22\x46\x1d\xe5\x64\x49\x96\x84\x93\x0e\xf1\x89\x65\x12\x31\xf4\x47\x98\xe4\x52\x32\xeb\xed\x61\xe4\xa8\x2a\xa5\x50\x56\x75\xf8\x91\xc8\x4c\x7b\x41\x6f\x8f\xf4\xf7\x82\xfe\x9e\x16\xc0\x0e\x82\x7d\x49\x05\xaf\xb9\x71\xed\xfb\xd2\x6a\xa1\xd2\xe7\x27\x4c\x3d\x8c\x15\xdb\x2b\x4c\x3a\x74\xbf\x0a\xcb\x90\x35\x79\x54\x5d\xf0\x03\xfb\xda\xfb\x89\x38\xb3\x0a\xb4\xbb\x53\x34\xd8\x86\x52\x67\x09\xcf\xa2\x6d\x0d\x36\x16\x77\x7e\x27\xf0\x7d\xcb\xbd\xfa\xe8\x39\x23\x25\x5f\x5f\x48\xf7\xd5\x4e\x03\x57\x59\x82\x62\xf6\x7a\x9b\x8d\xd8\xa6\x49\xc9\xb7\x68\x0c\x42\x92\xd3\x44\x7a\x27\x45\x10\xa5\x33\x43\xb9\xd8\x9c\x1e\xd7\x64\x4a\x3b\xc7\xb1\x1e\xd8\xe9\x31\x36\xc7\x10\x14\xd2\x25\xca\x09\xa7\xf1\x70\x0a\xc6\x07\xae\x9b\xa2\xb1\x84\x40\x53\x1d\x1e\x57\x60\x1b\x14\xb4\x89\x3e\x0f\xef\xf5\x82\x3d\xcb\x34\xe0\x89\x40\xb9\xd6\x90\xfb\x9b\xbd\x85\xe3\xfe\xab\x47\xfc\x35\xa8\x52\x7b\xca\x7f\x58\x6f\xf3\x70\x9a\x4d\x15\x9c\xb9\xb1\x07\x28\x61\x6e\x4e\xa3\x24\x8c\xe3\x87\x9a\x9b\xff\x48\x81\xc1\x6a\xd8\xce\xd5\x2a\xd1\x3f\xc5\xda\xaf\xd1\x9f\xb0\x86\xad\xf5\x05\x5c\xc6\xb0\xb8\x94\x2a\xb0\x94\x60\xff\x40\x78\x03\x79\xb2\x18\x0f\xc1\xe0\x03\x46\x5e\xf9\xb5\x54\x47\xaa\x8f\xcd\x80\x2a\x6c\x47\x75\x46\x93\xc8\x8c\x95\xc8\x85\xd5\x70\xc2\xcf\x58\x80\x19\x2f\x6d\x69\x49\xff\xb3\x44\x81\xff\xdb\xae\xdf\xf9\x9b\xf7\xb7\x49\x1b\xc1\xbf\x78\x80\x9a\x5f\xd2\x9b\x28\x66\x7f\xdb\xfd\xdb\x7d\x1b\x0f\x9a\x97\xe1\x34\xcc\xa2\xbf\xed\xee\x4a\x8f\x9b\xc4\xb6\x23\x8b\x2c\x7b\x8c\x45\x38\x39\x4d\xea\x4d\xb2\x5f\xc7\x4a\xe0\x02\x4d\x59\x4b\x74\x03\xbf\xd7\x35\xc8\x95\x05\x79\xbd\x4a\xc9\xf2\xff\xa0\xe7\x97\x3c\xdc\x16\x05\xff\x95\x7d\xef\x3c\xd3\xf7\x5e\x35\x74\xf1\x56\xf3\x85\xcf\x6c\xfa\xda\xbd\x1e\x06\x9e\xc0\xd7\xd0\x23\xa7\x6c\xce\xd0\x7b\x32\x90\xb1\x5d\xf7\x45\x74\x3b\x7b\x6d\xe5\xdd\xa2\xf2\xd3\x64\xb2\x51\xf5\xe6\x51\x7c\xaf\x83\x91\x13\xe6\x0f\xc9\xf8\x93\xba\xe4\x90\x1f\x49\x85\x1f\x7c\x54\xd9\x24\x0b\xcb\x30\x86\xfc\xfd\x7e\x11\x5b\x45\x79\xc6\xea\x90\xcb\xea\x90\x71\xa0\xb0\x69\x0e\x0f\x95\x83\xa5\xe0\x54\x4b\x9a\x23\x27\x32\x15\x92\x58\x3c\x97\x62\x6f\x90\x31\x0d\xa5\x26\x8e\x4c\xe9\xe3\xc9\xe5\xe5\xc5\x32\x66\x9f\xa3\x9c\x07\xad\x0e\x39\xb9\xbc\xbc\xe4\x0f\x31\xfb\xc0\xc6\x71\x98\x41\x4c\xae\xa0\xe5\x8b\xe4\x9f\x05\xa3\x95\xd9\x7c\x72\x12\x47\x2c\xe1\x17\x6c\xcc\x75\xca\x87\xf3\x2f\x95\x47\x59\xa5\x95\x70\x95\x7e\x63\x89\xae\xe8\x43\xc8\xc3\xab\x2c\x4c\xf2\x29\xcb\x3e\x71\x36\xd7\xf9\x3e\x46\xb1\xa9\xe5\xcf\x57\x5f\x3e\xbf\x8f\xe3\x93\x34\x8e\x25\x9e\xba\x4e\xdc\x4c\xf9\x98\x66\xf3\xd3\x98\x09\x7a\xd5\x49\x97\x4c\xe4\xb1\x12\xbf\xb0\x49\x14\xea\xfa\xbf\x44\x73\x76\xf5\xb0\x60\x30\x10\xe2\xed\x59\x38\x67\x93\xb3\x74\xc2\x84\x98\x25\x9e\xd3\x89\x19\x95\xaf\x61\x24\x7a\xfb\xcf\x25\xcb\x4d\x0f\xbf\xc6\xcb\xdb\x28\x29\x7e\x99\x82\x2e\x7f\xfe\x51\x2a\xda\x74\xce\xcb\x9f\x7f\x94\xf1\xcf\xac\x84\xaf\x21\x9f\x5d\xb2\x5b\x3b\x25\x8d\x12\x6e\x3d\x97\x87\xef\xf2\xe7\x1f\xe5\x68\xa5\x99\x19\xaa\x4b\xf0\xdb\x91\xaa\x33\x93\x26\x26\xef\x72\xc6\x18\xd7\x6d\xbf\x62\xdf\xf9\x55\x16\x8e\xbf\x9d\x14\xd3\x67\xd2\x4c\x42\xba\x1c\xeb\xf6\xae\xc9\x84\x66\x68\x8a\x01\x08\x64\xf6\x76\xa2\xef\xef\x67\xed\xb6\x02\x01\x21\x73\x3a\x19\xce\x46\xe2\x60\x39\x9c\x8f\xc8\x03\x8d\xc4\x9f\x5b\xfa\xe0\xba\x0f\xc5\xc1\x06\x60\x18\x5c\x17\xdd\x0e\x97\xa3\xd5\x2a\x45\xb7\x64\x49\xc6\x98\xdc\x0e\x63\xf5\x18\x93\x39\x26\xe1\x70\x3e\xa2\x63\x72\x87\xb1\xa0\x7e\xd0\xb2\x72\x7c\x3b\x5c\x8c\x56\xab\x04\xdd\x92\x05\xe1\xc3\xc5\x48\x09\xe2\x45\x80\xa0\x4a\x40\x17\x7f\xbf\x1f\xf8\x85\x5a\x1c\x14\xe2\x87\x87\xc1\xe1\x21\xac\xb2\xe7\xa4\xb9\xde\x7e\xa1\x08\xfc\x01\x60\xbb\x3e\xcd\xe7\x82\x56\x38\x0b\x00\x62\x8c\x8c\x63\x16\x66\x76\x22\x24\x28\x46\x28\xe1\x8b\x0b\x06\xb8\x45\x9a\xd3\x66\x54\xfb\x65\x76\x3f\x1c\x29\xe5\x76\x4a\x77\xbf\x5c\x7e\x3a\x6d\x7a\x7f\xf3\x0c\x47\xb7\x83\x66\xd4\x6b\x34\xb4\xc9\xc1\x06\xff\xee\x92\x94\xb6\x00\xcf\x49\x01\x22\xe8\x0c\xa4\x5b\x98\x5c\xa0\x64\x60\xf1\xbb\xba\xdb\x1b\x3e\xe0\xc1\xc7\xc2\x6e\x56\x61\x20\x4b\x8e\x98\xe2\x35\x68\x8c\xd7\x6b\xc0\x81\xfc\xb1\x9d\x79\x3f\x00\x8a\x6a\x0a\x83\x78\x15\xcd\x59\xba\xe4\x41\x88\xb8\x57\x3c\x62\x71\xa0\xff\x94\x70\x96\xdd\x85\xb1\x7e\xa7\x9f\x95\xdd\xa8\xbd\xa7\x18\x79\xa2\x57\x0e\x31\x4c\xc0\xa7\xae\xd7\xd9\x03\xb9\xbe\xd3\x97\x7f\x7a\x98\x94\x4e\xfd\x5d\x90\xf1\x3b\xbd\xa0\xd7\xe9\x01\x25\xf4\x3a\x7d\x98\xa2\x5e\x67\x4f\x4a\x2d\x50\xf2\x41\xb5\x64\xa9\x3b\x7f\x66\x0f\xdf\x30\xc2\xca\x28\xf7\x66\x61\x6e\x49\xdf\x24\xa9\x13\xe9\xe4\xa5\xd4\x40\x5d\x98\x3f\xae\x49\x44\x13\x63\x70\xb4\x5a\x39\xff\xf5\x5f\x86\x81\x83\x01\x4d\x69\x13\x81\xf7\xe5\x6d\x85\x84\x34\xf1\x2c\x1e\x0f\x59\x6c\x9e\x5f\xa0\x6d\xe4\xd2\x8c\x8a\x24\x1a\xc2\x00\x62\xdf\x9b\x2e\xd8\x16\x18\xe3\x01\x0f\xc6\x24\xd5\xdd\x94\x77\xbf\x28\xb2\x21\x7d\x43\x50\x3f\x9c\xa2\x64\xb5\x1a\x5a\x46\x1e\xde\x75\x94\xdc\xa5\xdf\xd8\x46\x04\x59\x49\xab\x4e\xbe\xcc\x17\x2c\x99\x30\x29\x97\x38\x8d\x2a\x5d\x47\x24\x95\xb7\x89\xec\x3b\x1b\x2f\xb9\x8c\xd5\x4f\x13\x75\x33\x0e\x55\x4a\x8b\x90\x1f\x59\x22\x87\xa0\x19\xe5\xcd\x30\xce\x58\x38\x79\x68\x66\xcb\x24\x11\x9f\xc8\x58\xff\xe3\x74\xbe\x88\x19\x67\x13\x59\x04\x14\x0b\xe5\x88\xe7\x48\x15\x99\xea\x26\x5c\x22\x09\xf8\x92\x79\x73\xc6\x67\xe9\x84\x46\x24\xf3\xc2\xec\x96\xa6\x1a\x76\x26\xa4\x99\x37\x61\x31\xbb\x0d\x39\x70\x38\x03\x59\x72\x83\x42\x05\x9c\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\x5a\xfd\x0d\xb3\x5b\x70\xb9\x6d\x96\x1a\x6c\xf2\x43\x3f\x2a\xe3\x68\x8f\x11\xb5\x3a\x2e\xbb\xd0\xc8\xbc\x49\x94\x2f\x42\x3e\x9e\x9d\x7e\x1f\xb3\x85\x3c\x00\x88\x37\x12\xdf\xc5\x51\xca\x22\xab\x16\xd7\xcd\xbc\xf0\x26\x5b\x2e\x20\xde\x09\xbc\x95\x65\xe1\x46\x42\xad\xc9\xd1\xf8\x52\x6a\x9a\x61\xdc\x93\x34\x9b\x87\xb1\x03\x0e\xcf\x40\x2c\xa2\xc5\x89\x18\xbc\x34\x61\x03\xab\x75\x41\xd1\x8d\x5f\x23\x16\x4f\x1c\x32\x86\x11\xaf\x19\x3d\x65\x45\x08\xef\xa5\xb3\x80\x2c\x6e\xbd\x2e\x46\x48\xd6\xe6\xba\xa8\x3a\x04\x6a\x42\x55\x4e\x35\xad\x63\xd9\xff\xf5\x1a\xf0\x95\x43\x4c\xd2\xb5\x59\x2a\xba\x3b\x8f\x05\xe2\xe4\xa3\x28\x3b\xd0\x7d\x13\x42\x73\xc0\x0a\xf4\x90\x75\x15\x82\x52\x65\x57\x35\x8a\xdc\xc9\x7a\xbd\x66\xde\x7d\x16\x2e\x68\xde\x90\xb8\x4b\x8f\xeb\x62\x75\x8e\x11\x7e\x2c\x1a\x30\x2d\x3d\x4d\xc4\x93\x44\xc8\x7b\x5c\x37\x66\xc3\x68\x44\xeb\x2d\x83\xd6\x0d\x89\xd4\xa5\xd6\x6d\x19\xfd\x96\xcc\xe9\xc2\x75\x17\x68\x81\xce\xd1\x70\x84\x31\x6e\xcc\x5d\x77\xde\xa2\x82\x0f\x64\x1a\x71\x21\xc2\xae\x8b\x66\x74\xae\xb1\x9a\x26\x16\xfc\x9d\x75\x2b\x5b\xe1\x0c\x33\x5c\x74\xe4\x41\xb0\xcc\xa1\x24\x73\xa2\x07\x40\xd3\xd0\xc8\x9b\xa6\xd9\x69\x38\x9e\x59\xe7\x4c\xc1\xcd\x87\x7c\x54\xb7\xdd\x29\x95\x30\x70\x14\x1d\xf9\x15\x17\xe3\x72\x6b\x81\x1d\x36\xec\xbc\xb4\xcc\x4f\xcc\x07\x21\x2a\xc1\x21\x73\xab\x15\x09\x09\xf1\xa3\x79\x6c\xc2\x97\x12\x1f\x4e\xce\xd5\x12\xb1\x61\x34\x22\x8c\xa4\x92\xc8\x65\xc7\x5a\x94\xc6\x8a\xc6\xe5\x42\x88\x81\x40\xa7\x74\xac\xc0\x0c\x34\x7f\x73\x5d\x47\xc6\xa9\x2b\xb6\x82\xa9\x19\xf6\x29\x71\xae\xaf\xc3\xfb\x30\xe2\x0e\x1e\x14\xb1\x18\xa6\x9e\x4a\xad\x0b\x29\x91\x28\x4e\x22\x0e\x70\x24\xc7\x25\xbf\x1d\xf9\x5a\x0d\xbd\x7e\x8f\x03\xab\xe4\xba\x12\x55\x93\x29\x23\x21\x1a\x6f\x14\xa8\x87\x6d\xb3\xdc\x75\x8e\x62\xb9\x96\x30\x0c\x9a\x18\xc9\x75\xe1\x2e\x96\x00\xce\x8e\x54\x5e\x90\x10\x07\x21\xc2\xeb\x62\x0a\x6f\xec\x4d\x97\x99\x9d\x70\xc8\xd5\xa2\x1d\x95\xf0\x4e\x32\x69\x2f\x68\xb8\x30\xe0\x56\x90\x82\x03\x70\x9b\x47\x16\xa5\x79\xb2\x29\xae\x8b\xb8\xe1\x05\x9a\xa9\x71\x60\x06\xea\x8c\x2b\x5b\x53\x57\xa0\xc1\x42\x6b\xf0\x2a\x3b\x91\x25\x08\x7a\xb2\x0c\x16\xaf\x66\xac\xa9\xab\x6f\x4e\x52\x26\x8d\xb8\x16\x59\x7a\x17\x4d\x58\x33\x6c\xfe\x27\x7c\xfc\x9f\x4d\x59\x96\x63\x46\x2b\x5e\xcb\x8d\x72\x89\x32\x52\x74\x40\xd6\x61\x13\x9e\x60\xf8\x92\xf0\x8c\x26\xbb\xbe\x59\x40\x8f\xd5\x11\x8b\x1b\x52\x02\x48\xe4\xee\x50\x38\x8c\x00\x87\x46\x7c\xc8\x04\xa9\x2c\x63\x2e\x4e\x46\x23\xaa\xe0\x8c\x08\xf7\x04\xc9\x51\x06\x7f\x3e\xa7\x63\xb3\xac\x5b\xc5\x48\x95\x06\x59\x52\xa8\x3d\xc4\x78\xb3\x2d\x38\x88\x02\xf4\xb2\x51\x35\x23\x2a\x5b\x67\x6c\xe3\x92\xa6\x5a\x5c\x75\xc5\x17\xc4\x76\x5d\x08\xe5\x82\xb3\x7f\x4e\xc7\x01\x1b\x76\x46\xeb\x86\x0f\x16\x1e\xd0\x74\xe0\xe3\x9f\xd3\x31\x65\xa0\x15\xef\x16\x6f\x94\x66\x4f\xbe\xeb\x8e\x44\x0b\xa7\x9c\x65\xf2\xb9\x37\x52\xee\x6d\x3c\x7b\x38\x95\xaa\x60\x03\x25\x6f\xea\xbf\xb7\x0e\x05\x9e\xda\xa1\xa2\x34\x59\xad\x1e\xd7\x0d\x0e\xb3\x49\xcd\x06\xa3\x0c\xe0\x61\x18\x88\x9d\x9b\xf2\xa2\xc0\x53\xe3\xcd\x57\x54\x4b\x87\xba\x6f\x4e\x96\xa6\xdc\x59\x8f\x08\x33\x5c\xf7\x5a\x22\x56\x99\x38\x47\x8c\x23\x71\xbe\x32\x05\x9e\xab\x9b\xbc\xa2\x9d\xc3\x08\x96\x20\x2f\xe8\x4c\x41\x3f\x34\xea\x6d\xbe\x24\x71\x18\x70\x62\x00\x24\x8a\xf2\xb3\xf0\x0c\x31\xe3\xae\xa4\x84\xc1\x1d\xdf\x02\xca\x68\x72\x15\x45\xf0\xb8\xdd\x4e\xde\x32\x83\x76\x12\x4d\x91\x46\x9b\x20\x49\x61\x34\xa6\x79\xd5\x30\x11\x13\x21\xc8\x16\xc2\x64\x35\x2a\xef\x8d\xa7\x94\xcc\xd1\x21\x7c\x5d\x88\xaa\x40\xcc\xa9\x06\x18\x79\x14\x8f\xc1\xa5\xc5\x9b\x2e\xcd\x6e\xb1\x05\xc0\x5f\x33\x77\x6b\x5f\xbc\x2b\xc1\xc7\x4e\xc8\xa4\xf4\x3c\x25\x93\x61\x38\xa2\x53\x10\xc7\xe2\x10\x0c\x1a\x69\x21\xca\xea\xd3\x96\x23\x96\x7e\xbe\x91\x5c\x63\x22\x5f\x37\x01\x15\x10\x5f\x7d\x09\xdb\xe2\x60\x8d\x27\x41\x84\x37\xab\xa4\x94\x0a\xc6\x5a\xb4\x6b\xb5\xe2\x00\xe2\x81\xf1\x9a\x30\x6f\x1e\x66\xdf\xea\x76\x68\x25\x07\x94\x31\xbc\x07\xb5\xa9\x88\x91\x09\x0e\x10\xf3\xae\xaf\x61\xbc\xae\xaf\xe9\x84\x84\xb0\xbe\x56\x2b\xc4\xc4\xc0\xd4\xb4\x0b\xa2\x01\x6e\x93\x3b\xee\x30\x61\xa2\x75\x21\x88\x55\x9b\xcd\x7b\x54\x1b\x68\xc0\xd6\x6b\xf2\x80\x6e\xed\x03\x8c\xf5\x30\x4c\xb7\x0a\x54\x84\x79\xef\xed\x03\x17\x15\x8b\x11\x8e\x60\xb4\x6c\x5d\x40\x40\xd2\x28\x90\x06\x00\x9b\x50\xab\xf7\x55\x7c\x19\xc1\xcd\x6e\x51\xae\x3f\xc0\x42\x96\xd0\x0b\xa5\x6e\xc2\x51\x86\x07\x61\x10\x02\xa1\xa2\xba\x2d\xdb\x7c\x0c\x7c\x5b\x19\x40\x9a\x0f\xc0\x88\xe2\x41\x0c\xd2\x5d\x79\x70\x1d\x72\xf7\x84\x0c\x49\xee\xcc\x81\x72\x33\x8b\x09\xb7\x6b\x0a\x1b\x39\x62\x90\xbe\xb1\x87\xbc\x86\x3e\x2d\x3c\xa3\x4c\x46\xd8\xe0\x3a\xc4\x5b\xb1\x54\x33\x76\xc7\xb2\x9c\x21\x6c\xb0\xa3\x9a\x99\x66\x06\xbc\x80\x3d\x52\x98\xd6\xde\x22\x5d\x20\x09\x6b\x24\x4b\xd4\xfa\x6c\xb5\xe4\x13\x92\x19\x7e\x90\xad\xcd\x4b\xcd\x00\xb2\xb5\x68\xae\xbc\x3a\xa2\xe7\xe4\xd4\xa2\xad\x47\x6b\xd5\x04\xa7\x04\xd8\x63\xd5\xc4\x41\xc5\x8b\x63\x77\x3a\xf6\x1e\x30\x11\xf5\x1b\xce\x6f\x2a\x72\x9d\xf8\x69\x07\xbd\x33\x2c\x0a\x1e\x4a\x5b\x14\x24\x55\xb6\x4c\x91\x64\x09\x26\xd5\xad\x45\xf3\xf3\x7b\x4c\x5a\x0c\x97\xec\xc1\x81\xc1\x3b\x5c\x4a\x2f\x06\xe9\xd2\xc8\x9a\xf2\xce\x1f\xbb\xae\xe2\xca\x6d\x5e\xa0\xa1\x69\xdf\x06\x3e\xd2\xbb\xf5\x9a\xe4\x3c\x5d\x04\xa5\x3b\x21\xd3\x99\x8e\xf2\xbb\xa8\x34\x6e\xd8\x19\x59\xdb\x55\x59\x66\x61\x52\x66\x91\x27\x55\x66\x4b\x1f\x72\x47\xba\x0b\xe3\x35\xd9\x38\xab\xd6\x4e\x02\x40\x87\xa9\x82\x94\x56\x46\xa4\x37\x2c\x11\xde\x36\xfa\x09\xd5\xfe\xaa\x4f\x64\x30\xba\x46\xa4\xc9\x48\xf2\xac\xe0\xd2\x6a\x25\x06\x11\x36\xaa\x76\xba\xc0\xb7\x8a\xde\xd1\xce\xf1\xce\x4e\xa4\xa1\x9d\xab\xa3\x13\x8d\x48\x48\xd3\xea\x08\xc1\x56\x2d\xf8\x86\x27\x37\x6f\x5c\xc8\xdb\x2c\x99\x38\x0a\x15\x5a\xbe\x7b\x4b\x0d\x15\x9a\x70\x61\x72\x72\x53\xe2\x68\xf9\xc5\xc1\x64\x69\x25\x17\xc2\x8b\x2c\x2b\x77\xdd\x65\x99\xa0\xdf\xa6\x46\xf6\x29\x2a\x2f\xd2\xc0\x5e\xa6\x92\xbf\x28\xd4\xfe\xc2\x4a\x5d\x6b\x35\x46\xfe\xea\xba\xd6\x1a\x74\xac\xb5\xdc\x54\xfe\xf0\xec\xa1\x99\xf3\x90\x83\x7e\xbf\x79\x1f\xf1\x59\xba\xe4\x4d\xf8\xbc\x99\x66\x4d\xd5\x02\xe7\x77\x34\x78\xbd\x5e\x13\xa9\xf7\xa8\x58\x1e\x15\x01\x8e\xb7\xce\x7c\x22\x67\xbe\xd0\xaf\x55\x66\x3e\x19\x49\xa4\xd0\x8d\x59\x34\x8b\x33\x2a\x4f\x94\x0a\x8b\x09\x8d\x8f\xec\x66\x2a\xd2\x8a\x24\x94\xec\x7a\x2d\x76\x1b\x07\x7e\xc3\x22\x5b\xad\x1c\xad\x3e\x81\x67\xec\xba\x16\xed\xb8\x2e\x7f\x4b\xed\x5e\xc3\x56\x25\x38\x91\xde\xa7\xd2\x81\x4d\x9f\xc1\xe3\xba\x51\x5e\x44\x4c\x2d\x1f\x4e\xd2\x01\xda\xc6\xbd\xa4\x74\x65\x55\x23\x24\x7d\x78\xa3\x75\x33\x28\xc4\x6b\xa2\x1f\x36\x0d\x9f\x5f\xc0\x35\xac\x3e\x7b\xd2\x9d\xb5\xdc\x71\x48\x1c\x14\xcd\x81\x6f\x03\x4b\xdd\xa5\x72\x20\xc3\x7d\xa8\xe1\xbc\x4c\x9e\x9c\xec\xde\x99\x33\xa3\x29\x50\x2e\xce\xc0\x52\x79\x31\xa5\x84\xe2\x8a\x99\xca\x7c\x1c\x93\x78\x4d\xa6\x51\x12\xe5\xb3\x2d\x88\x10\x5b\xc9\x8a\x4b\xb2\x32\xa7\xe4\x2a\x59\x71\x20\xab\xcc\x3e\x9f\xd8\x9e\x40\xa5\x11\xcf\xac\x79\x25\x99\x39\xc0\x60\x72\x8f\x32\xd1\xc4\xba\xc8\xaa\x7f\x60\x13\x25\x0d\x42\xf3\xd4\x76\x9e\x6d\xdd\x2a\x12\x4b\xaf\xa2\x4f\xaa\xa2\x95\x06\x86\x66\xbd\xde\xe0\x0b\x51\x2c\xf6\xd5\x58\x71\x82\x90\x73\x36\x5f\xc0\x55\xb1\xde\x70\x41\xcd\x18\x54\x75\xd3\xf6\x50\x99\xad\xf9\x51\x1f\x36\x83\x73\x08\x53\x65\xce\xc3\x01\x27\xea\xfc\x1b\x64\x6b\x62\xf4\xb9\x16\xa5\xe8\xa9\xb7\x77\x0f\x31\xb6\x6c\x8d\x36\xb4\x40\x7c\x60\x6e\x2d\x82\xc7\xb5\x8e\x71\x73\xab\xa5\xab\x8b\x65\xc2\xa3\x39\xa3\x59\xa1\x60\x34\xd2\xa1\x93\x81\x62\xad\x9a\xb7\x49\x9b\x99\x83\x11\x04\x1d\x7e\x5c\x8f\xc4\x3f\x04\xce\xb2\xd6\x2e\xde\xd8\x7d\xd3\x6a\x34\xdf\x34\xff\x2b\xbd\x63\xd9\x5d\xc4\xee\x9b\xcd\xd3\xf9\x0d\xcb\x9a\x3b\xcd\xbf\x84\x77\xe1\x25\xd8\x0d\x35\xdf\x2f\x16\x71\x34\x86\x9b\xe0\xe6\xc7\x2c\x9c\xb3\xfb\x34\xfb\x06\x9f\x8d\xd3\xc5\x43\x16\xdd\xce\x78\xf3\xc4\xfc\xea\x76\x7c\x7f\xa7\xdb\xf1\x8f\x9a\x57\x51\x3c\x61\xcd\x4f\xc9\xd8\x6b\x86\xc9\xa4\x29\x96\x64\x16\xdd\x2c\x79\x9a\xe5\xe2\x6b\xeb\xbf\xaf\x69\x26\x4a\xcf\x4b\xc5\x74\xf6\x45\x31\x7e\xf3\x92\x67\xe9\x8d\x2c\xe7\x45\x9f\x1d\xca\xcf\x44\xab\x55\xed\xef\xe3\xb8\x09\xaf\xf3\xa6\x90\xe6\xb2\x3b\x36\x81\xa2\xfe\x4b\x48\x3c\x49\xce\x9a\xcd\xe6\x67\xf9\x6b\xd2\x5c\x26\x13\x96\x35\xbf\x7c\xba\x6a\xaa\x97\x95\x3a\x2f\x19\x6b\xce\x38\x5f\xe4\xc1\xee\x6e\x16\xde\x7b\xb7\x11\x9f\x2d\x6f\x04\xf9\xee\x32\x31\x74\xff\xc8\xe5\x5f\xef\x1f\xf9\xee\x3c\xcc\x39\xcb\x76\x3f\x7f\x3a\x39\x3d\xbb\x3c\x85\x1a\xef\xa4\x69\x47\xb3\xd9\xec\x79\xfe\xbe\x77\xd8\x68\xbe\xd9\x95\xf2\x93\xa0\xc1\xc6\x3c\x8c\x92\x93\x34\xe1\xc0\x2c\x84\x88\x66\x4d\x16\xac\x14\x12\x15\x92\x4d\x5a\x80\x03\x87\x94\x91\x9c\x26\xc3\x70\xd4\xc8\x57\x2b\x04\x3f\xdb\xd4\xd9\x05\xe0\x23\x67\x84\x15\x9a\x6a\x24\x32\xd8\xce\x24\x4b\x13\xbe\xb2\x21\xdf\xd2\xc7\x35\xc9\x57\xab\x32\x17\x56\x21\xd6\x07\xd6\x12\x3b\x49\x97\xf1\x04\xb4\x2e\xd3\x28\x99\x34\xe7\xe9\x64\x19\xb3\xa6\xd3\x66\x6d\xa7\x99\xb1\x7f\x2e\xa3\x8c\x4d\x9a\x37\x0f\x41\xd3\x69\x73\x09\xaa\xfd\xdc\x87\x18\x34\xf0\x85\xe3\x4a\x4c\xc5\x2a\x5c\xe4\x64\xac\x80\x80\x6f\xc2\xf1\x37\x22\xcd\x5d\xe1\xa6\x1d\xc5\xc6\xb6\x71\x42\x3b\xc7\x93\xb7\xfa\xf9\x78\xd2\x6e\x63\x47\xad\x26\xb1\x26\xe3\xe1\x64\x34\x98\x0e\x27\x23\xba\x14\x5c\x1f\x5a\x57\x4e\xe7\x01\xfc\x49\x91\x48\xb2\x4d\xd8\xec\xdb\xce\x29\x26\xcb\xb5\x23\x08\x64\x1a\x25\x70\x9d\xa4\x16\xef\x7d\x94\x4c\xd2\x7b\xd7\xb5\xde\x99\x48\xd9\x8b\x2c\x1d\xb3\x3c\x77\x5d\x73\x64\x52\x29\x23\xd1\x82\xc7\xb5\x39\x64\xc9\xad\x5f\xbd\xc4\x10\x32\x01\xb8\x07\x2c\x48\xeb\x27\x04\x59\x25\x85\x2e\xd4\x75\x51\x46\xcb\x49\xde\xf5\x75\x9c\x86\x13\x96\x0d\x50\x52\x39\x2a\xc3\xfe\x4e\xa2\xda\xd4\xfa\xdb\xba\x88\x8a\x8d\x7f\x80\x22\x98\x0d\xca\x49\x64\x66\x83\x66\x38\xd0\xe9\xc3\x91\xfd\x82\x63\x92\x0c\xd9\x88\x46\xe5\x80\xe7\xcc\xb2\x36\x63\x00\x50\x8e\xd7\xd8\x53\x10\xf8\x94\x13\xb8\x3c\xad\xcb\xfe\x43\x9a\xc6\x2c\x4c\x50\x22\x3d\x26\xad\xc7\x76\x41\xe4\x6b\xc2\xbd\x6b\x16\x7e\xbb\xce\x19\x4b\xe0\x00\xa8\xc7\x81\xaa\xf0\x9b\x10\x79\x1f\xa6\x3f\xe0\x44\xe3\x6d\x04\xc9\x1a\x07\x88\x59\xc3\xa6\x42\x7d\x12\x6e\xa7\xa9\x0f\xf1\x1a\x61\xc2\x90\xf3\x5f\xb0\xca\x77\x77\xa2\x84\xb3\x2c\x09\xe3\x7c\xf7\x26\x4b\xef\x73\x96\xed\xb0\xe4\x2e\xca\xd2\x44\xc8\xa4\xaa\x69\x64\x68\xa8\xb1\x62\x0b\x5e\xba\x53\x56\x73\x52\x89\x33\xca\x88\x73\x7d\xcd\xf2\x2f\xb0\x50\x0c\x8e\x46\xab\xb3\xc6\x84\x89\xe1\xfa\x70\xfe\x85\x32\x2f\xca\x3f\x46\x19\x9b\xa6\xdf\xe1\xf7\xc9\x2c\x4b\xe7\x8c\x32\x6f\x99\xb3\xec\xfd\xad\x38\x84\x32\x6f\x16\xe5\x3c\xcd\x1e\x28\xf3\xe2\x54\x72\x73\xca\x3c\x49\xba\x6a\x7b\x52\xe7\xa7\x8d\xcd\x29\x67\xf1\xd4\x75\x55\x44\x18\xf9\x20\xfe\xf5\x64\x83\x29\xa5\xc6\x53\xa1\x66\x01\xfc\xa2\x16\x07\x7c\x51\x8e\x2a\xa5\x5f\x6d\x54\x38\x49\xc7\x60\xaa\x60\x2a\x2d\x12\xa0\x18\xfd\x48\xed\x37\x1b\xa5\xe8\x6e\x9a\x52\x8a\x04\x28\xc5\x0c\x83\xfd\x66\xa3\x14\x35\x6c\xa6\x10\xf3\x0c\x65\xe8\x41\xb5\xd2\x37\x4a\x48\xc2\xbb\xe8\x56\xec\xcc\xa6\x0c\x2b\x05\x4a\x31\xcf\xb4\xf4\xce\x91\xae\xbe\x35\x25\x15\x13\xdb\x30\x44\xc0\x15\xea\x2d\x1f\x88\x32\x03\x51\x55\xc3\x4c\x70\xd6\x50\xa7\x96\x41\xa9\xeb\x3a\x97\x19\x8a\x44\x5d\x09\xa8\x7c\xaa\x53\x3a\x9b\xee\x6d\xa4\xbd\x0d\x06\xe5\xe6\x17\xcd\x0a\x9c\xcf\x0f\xc9\xf7\x26\x12\x3b\xd9\x3c\x9d\x30\xec\x34\x6c\x6a\x4c\xd5\x11\x43\xaa\x23\xf5\x72\xce\xbc\x31\x10\x2e\x60\x78\x78\x82\xfe\x43\xdc\xb0\xe8\x39\x54\x91\x14\xe0\xab\x3a\x5a\x03\x9c\x81\x38\xbe\xca\xa2\xdb\x5b\x96\x35\xec\x65\x91\x03\xb4\x49\xdd\xba\x15\x34\x99\xc6\x6c\x73\xad\x12\x9d\x79\xc2\x6e\x96\xb7\xf6\xe3\x22\x63\xe3\x90\xb3\xc9\xce\x94\x85\x7c\x99\xb1\xca\xba\x96\xcc\xf3\x5f\x5d\xdb\x9a\x2d\x5a\x6b\x33\x69\x64\xde\xe7\xf3\x1f\x7f\x3c\xbd\x80\xeb\xed\xc7\x38\xbd\x0d\x2a\x12\x82\xbe\x6b\x44\x8c\xaa\x8e\x61\x2f\x4e\x6f\x4d\xd8\x66\x63\x05\x84\xd7\xe4\x3e\xcc\x92\x97\x7c\x2f\xf2\xd5\x16\xc0\xc4\x9e\xfe\x92\x12\x20\x63\x6d\x11\x51\x32\x4d\x5f\x52\x82\xc8\x57\x5b\x00\x4c\xce\x46\x09\xc5\x1d\x80\x2a\xc1\x83\x7c\x03\xc4\x8b\x22\x21\x45\x6f\xf0\x56\x99\xc1\x8b\xea\x0d\xf3\x9c\x65\xfc\x25\x4d\x97\x39\xeb\x0a\x51\x50\x05\x11\x4d\x1a\xc5\x7c\x47\x4f\x51\x2a\x0f\xa3\x84\x65\x4f\xd0\xaa\x95\x3d\xbd\x4f\x58\x56\xfb\x66\xc9\xa3\x78\x3b\x7d\x2f\xd2\xf8\x61\x1a\xc5\x71\x0d\x55\x83\xbe\xfa\x5f\xa6\xec\x45\x16\xdd\x85\x3c\xfa\x8d\xd5\xa8\x8a\xd9\xb0\x33\x22\x09\xbd\x51\x87\xc5\xc4\x68\x68\x34\x63\xd2\xf8\x1e\x01\xc0\xe5\x45\x22\x7b\x48\xa3\xa1\x6f\x22\x15\x88\x4f\x29\xea\x90\xcc\x93\x1d\xc6\x28\x6d\x3b\x81\xd3\x0e\xdb\xce\x8e\xd3\xbe\x86\x7b\x8c\x8f\xef\x4f\xae\xce\x2f\x7e\xbd\xfe\x78\x7e\x41\x99\x77\xa2\xc7\x95\x32\xef\x42\x49\x05\xf6\xb2\x4b\x6d\x05\xb8\x11\xbf\x99\xba\xb3\x36\xee\xd3\x70\xb1\x22\x24\x31\x75\xad\xa6\x0a\x92\x11\x0f\x3c\x98\x0d\xca\xe5\xdf\xd5\xaa\x50\xf9\x8e\xc3\xf1\x8c\xc9\x06\x4f\x22\x28\x3a\xcc\x1e\x30\xdc\x41\x8e\x67\x4c\xe6\x54\x65\x4e\x43\xb1\x73\x3e\x7c\x09\x93\xf0\x96\x65\x27\xdb\x3e\xac\xc9\x56\x2a\x26\xca\x3f\xb0\x9c\x67\xe9\x03\x9b\x18\x5d\xb4\x49\x8b\x92\x5b\xda\xf2\xd5\xfd\xb3\x75\xe7\x62\xe0\x6c\xbc\x38\x4d\xbf\x2d\x17\x9b\xd0\x0f\xd5\xb2\x37\x15\x76\x27\x61\x02\xa2\xbf\x90\x13\x9b\xff\xa7\x0a\xfa\xbf\x26\xe8\x1f\x9a\x7c\xc6\x9a\x30\x38\xcd\x59\x98\x37\x6f\x18\x4b\x9a\x13\x5d\x94\x53\x78\x8e\x2b\xd5\xb5\x3d\xc4\x9e\xd4\xbb\x44\xbf\x31\x8d\x37\x92\x78\xea\x53\x5a\xd5\x59\x97\xfb\xd9\x21\x13\x05\x40\x4f\x12\xa9\x39\x89\x7e\x63\x1f\x36\x3f\x9d\x21\xeb\xc2\xb4\x34\x7c\x1d\xf1\x25\xdc\x11\x6c\x86\x1d\xb7\x32\xae\x56\x56\xb8\x96\x01\x52\xb5\x12\x55\x2e\xae\x09\xa4\x2e\x88\x11\x28\x40\xac\x04\x1d\x2c\xbd\x6e\x6a\x87\x7c\x44\xc4\x29\xc0\xe4\x19\x9b\x54\x3d\x0a\xae\x6b\x7e\x22\x8c\xd7\xcf\x0d\x21\x86\xe1\x80\xb9\xf8\x94\xfc\x83\x55\x6e\x1d\x37\x18\xdd\xe3\x1a\x0f\xb9\x77\xfe\xcb\xd9\xe9\xc5\x88\x16\xb4\x4e\x18\x0c\xaa\x6c\xf0\xc7\x34\xdb\x24\x98\x6d\x4b\xe7\x35\x34\x54\x94\xff\x42\x3a\xb2\x54\x53\xb5\x9d\x97\xb1\x73\x54\x48\x04\xd7\x6d\xc9\xeb\xcf\x7c\x11\x8e\x59\x71\x28\x33\x5f\xb2\xef\x8b\x30\x99\x7c\x4e\xc7\x61\xfc\x19\xa8\x19\x3a\x57\xd8\x89\x28\x67\x1f\xc2\x30\xe8\x7d\x2c\x03\xa9\xd0\x76\x65\x6d\xf9\x2d\x4a\x59\x51\xec\x2d\xe3\xe7\x0b\x75\xab\xe8\xe4\x51\x72\x1b\x33\x9e\x26\x8e\x75\x45\x9f\xbf\xf8\x73\x69\xd0\xc9\xa3\x90\x33\xbb\x00\x63\xdc\xb6\x79\x94\xd4\xb2\x22\x0c\x45\x56\x0c\x45\x56\x1a\x8a\xc4\xae\x71\x73\x1c\x44\xd9\x3a\xe8\x70\x4b\x1c\x4a\x4d\x37\xf4\xb9\x52\x53\x6a\x52\xd6\x49\x44\x26\x7c\xd6\xba\x6a\x16\x5a\xb1\x5c\x8d\x2d\x73\xc3\x22\xf4\x99\xfa\x1c\xc2\xa6\xd5\x5a\x9f\x8a\x8d\xc1\x0c\x49\xc3\x1a\x41\xab\x8d\xae\x0b\x29\x89\xeb\xca\x79\x72\x5d\x39\xe0\xd2\x4c\x30\xc1\x5a\xf7\x5e\xac\x36\x1a\xe9\xd3\x74\xe9\x36\xb7\xe0\x36\xae\x5b\x73\x4d\x9f\x16\x4b\x34\x2d\x96\x28\x49\xd7\x2f\x6b\x3d\x89\xec\x46\xdb\x7d\x49\x5c\x57\x0e\x7c\xb4\x5a\xc9\x2e\x6c\xf6\x41\x8f\x73\xd1\xf0\x7f\x75\xcc\xac\xf1\x6a\x95\x2b\x2b\xeb\x94\x5e\xd5\x1d\xd9\x8f\x64\xb5\x92\xfd\xd1\x55\x00\x2e\x8b\xe8\x57\x4d\x7f\xe2\x30\xcf\x1b\x9b\xac\xc3\xe8\x9e\x64\x87\x9b\x8a\x79\x38\x50\x44\x22\x23\x17\x15\x2b\x24\x2e\xb7\x74\x1b\xf3\x2d\x11\xef\x86\xbc\x62\xad\x11\x6d\x76\xc7\x71\x85\xde\x1f\xb5\x98\x21\xda\x3a\x87\x00\x77\x59\x01\x1f\xb8\x95\xeb\xd3\x94\xa4\x56\x73\xc7\x9b\x03\xab\x78\x77\xde\x30\xab\x23\x81\x83\x83\xfd\x0e\x16\x7c\x71\xa1\xd9\x39\x8e\xde\x9a\xdb\xf6\x48\x3b\x7c\xa4\x94\x0f\xa3\x11\xc9\x69\x6a\x70\x4c\x49\x4c\x53\x0f\xe0\xd9\xa6\x11\xcb\xc8\x58\x3c\x01\xa3\x68\x24\xc3\x7c\x44\xc7\x03\xc1\x60\x62\xa2\x83\xd4\x8c\xd7\x38\x80\x14\x2c\x04\xb3\xfc\xc3\x43\x12\xce\xa3\xb1\xe0\xa8\xc5\x13\x6d\x85\x90\xc3\x9e\x84\x69\x79\x47\xd4\x83\x49\x92\x92\x24\x38\xec\x8c\x36\x6c\xc8\x4b\xa3\xf1\x58\x74\x58\xdb\xef\x98\x6a\x83\x96\xbf\xde\x08\x73\xc5\x5d\x77\xac\x20\x2f\x89\x49\xcc\x64\x22\xa0\x98\x27\x40\x76\x82\xd5\x5e\x3d\x2c\x98\xd9\x27\x73\xc0\xea\x14\xc9\x56\x12\xb7\xcd\x55\x27\x15\x47\x2f\xc9\x41\x48\xa6\x75\x72\xdf\xd8\x83\xf8\x82\x24\x80\xa9\xa3\x61\xd5\x8f\x13\x3d\x17\x11\xe5\xc3\x6c\x98\x8c\x46\x8d\xa8\x60\x1e\x51\xc1\x3c\xac\xc1\x9b\x81\x23\xda\x36\x09\x53\x69\xfd\x5e\x26\x55\x4a\x65\x9d\x2d\x2b\xa7\xca\xca\x58\x10\xad\x42\x48\x68\x94\x25\xeb\x05\xe4\x98\x6f\x97\x9e\x25\x33\x57\x77\x53\x46\x06\xb7\xe5\x65\xa6\x64\x09\x99\x47\x2c\x6b\xca\x95\x2c\xbc\x8c\x63\x30\x9c\x52\x2f\xcd\x1e\x3e\x81\xd4\x44\xdd\xd9\x85\x13\x76\xa5\xcd\x58\x6c\x2b\x0a\x6b\x01\xa8\x64\x80\x2e\x2a\x44\x23\xbc\xd6\x34\xb7\x21\x02\x67\x4f\x58\xc6\x58\x28\x78\xd5\xfa\xf5\x7d\x50\xa9\x4d\xe5\xce\x17\xcc\x62\x1e\x7e\x33\x99\x50\xd1\xfb\x72\xdf\x31\xde\xec\xe5\x9a\x64\x8a\x9f\xd3\x3a\x7b\x89\xa2\xaa\x97\x49\x59\x92\x51\x8a\x37\xda\x31\x24\x7f\x81\x9c\xd5\x44\x0f\xe9\x52\xdf\xbc\xb1\x49\x93\xa7\xba\x24\xa7\x5d\xea\x41\xdb\xc1\x65\x99\xcc\x62\x5a\x15\x93\x5f\xb9\x90\xab\xdd\xa8\x9b\x7c\x0c\x3e\x33\x56\x49\x19\x4d\x49\x52\xe2\x3a\x55\x1a\x48\xe5\x74\x87\x34\x2b\xf1\x66\xe6\xba\x28\x14\x8b\x21\x12\xa7\xf8\xe8\x36\xc1\xe8\x71\x0d\xe2\x1c\x26\xad\x62\x56\xd4\x80\x6f\x0e\xe3\xc7\x30\x8a\x4b\xdd\x0f\x13\x33\x8e\xcd\x74\xda\xfc\x4f\x35\x1c\xe5\xf6\xb7\x9d\xff\xf4\x9a\x5f\xd2\x9c\x37\xe3\xe8\x1b\x8b\x1f\xe0\xab\xb9\x64\xbc\xf1\x43\x53\xa9\xbd\x9a\x50\x75\x33\xcd\x64\xa1\x32\xca\x87\xba\x4f\x91\x6a\x01\xcf\xc1\x8d\x3a\x8f\xae\xa2\xdd\xd7\x51\x12\xf1\x8f\x72\xfd\x0f\xb6\xa4\xcb\x23\x4a\x50\x1a\x14\xf3\x3b\x5c\xad\x6a\x06\x28\xc4\x98\xa0\x0e\x01\xd3\xbf\x73\x41\x22\x18\x85\xd6\xaa\x56\x21\x8b\x73\xba\x31\x82\xa8\xb8\x7a\x91\xcb\x51\xad\x45\x92\x4b\xf1\x99\xdc\xd1\xdd\xbf\x0f\xff\x1e\x8c\xda\x01\xfc\xfb\xa7\x5d\xf2\xb0\x8d\xbd\x58\x92\xad\x98\x46\x56\x9c\x2f\xa6\xfa\x9a\x82\x99\x9f\xf6\x81\x5c\xed\xd3\x72\xbb\x91\x3f\xcb\xaf\x61\x89\x86\x92\x70\x36\x18\x25\x2b\x67\x28\x1d\xbc\xaf\x79\x69\xab\xd8\xc6\x92\xb5\x0f\xc3\xcb\xf2\xc5\x85\xd0\x2d\x79\x77\xdd\xdd\x8e\xcc\x6a\xc8\xec\x29\x26\xaf\xf2\xaa\xae\xbf\x20\xe7\x34\x8c\xe2\x4b\xc6\x61\x23\xb8\x64\x8a\x3d\x5f\xa7\x8b\x17\xb4\x1d\x4c\x42\x9f\xcc\xb8\xd6\xbb\xe4\x06\x17\xe6\xd6\x9e\x51\xe7\xa2\xc0\xee\x9b\xa9\x89\x74\x45\xb8\x9a\x16\x96\x6d\xde\x72\x6d\x3d\x00\x95\x96\xa6\x38\x1b\x96\x3a\xec\xc9\x13\x37\x4a\x70\x0d\x61\x0c\x93\x11\xad\x0c\x85\x48\xca\x44\x4b\x96\x49\x4d\x5b\xb4\x02\x6c\x5b\xa5\x2f\x9a\x66\x6d\x2e\xbe\xd9\x1c\x3e\x2a\xbd\x2c\x4d\xef\xc6\x4b\xdd\x60\x3e\x22\xb5\x3d\xe6\x6a\x40\xa1\x88\x2a\x1c\xb8\x42\xc5\xba\xb5\xb4\x0c\x15\xfd\x4c\x49\x1c\x55\x57\x22\xa5\x85\x09\x42\xaa\x3e\x6b\xeb\x44\xac\x2b\x54\x9a\xd4\xcc\xd2\xa4\x1a\xae\x91\xac\xc1\xf4\x3f\x1f\x67\xd1\x0d\xab\x25\x0b\xab\x3a\xbd\xba\x95\x81\x95\x7e\x54\x7a\x29\x8d\x9b\x12\xa5\xc9\xe0\x99\xf7\x88\xe1\xa0\xae\x1f\x83\xd2\x93\x69\x97\xc8\xce\x44\x43\xcd\xb8\x7c\xd4\xc2\xcc\xef\x6c\xb1\x29\x68\xb0\x25\xfd\x85\x2d\xdc\x68\xd0\x66\x53\xb7\x3b\x68\x95\xb9\xcb\x90\x8d\x0c\x48\xd5\xc6\x9b\x0a\x95\x5b\xb5\x01\x65\xd9\xc2\x4f\x85\xbc\x5e\x31\x28\x76\x29\x83\xed\xaf\xa0\xdc\x97\x0c\xce\xe6\x47\xcc\x08\x82\x08\xda\x5d\xbe\xbd\x56\x5a\xae\x96\xd2\x69\xfd\x2c\x36\x68\xbb\xa7\xfa\x14\xad\xc5\x1f\xd7\x2d\xd4\x4e\x95\x65\xa3\x5f\x88\x53\x01\xe4\xb3\x14\x31\x4a\x51\xbd\x55\x57\x52\x3d\xd9\xb0\xe2\x20\x6a\x4e\x67\x19\x31\x05\x06\xc9\xba\xa4\x21\x2c\xad\x5d\x80\xca\x23\xdc\x53\x0c\xe2\x63\x9a\x89\xc3\x0f\xad\x9a\x8b\x54\x58\x3b\x4c\xb8\xf8\xcc\xe8\xa5\x6a\xbe\x2c\xf1\xbf\xca\xd7\x8d\x0d\xd9\x7a\x2b\xdf\xe0\xe5\x94\xcd\x2a\x01\xca\x9e\x5b\x9d\xa8\xe3\x5f\x5b\xb9\xb0\xe6\x8c\xd9\x46\x8f\x5e\xc2\xca\x4d\x08\xad\x82\xc1\x6e\x74\x2d\xdb\xda\xb5\x6c\x6b\xd7\xa0\x4f\x59\xa9\x3d\xdb\x7b\x65\x2a\x67\x65\xd5\x45\x66\x89\x75\xd9\x90\x8f\x8c\x45\xbd\x68\xa5\x56\x81\xd4\x1d\xb9\x51\x56\x33\x69\xc9\x08\x57\xca\x1b\x88\x7f\x5e\xb2\xce\x0a\xed\x25\x2c\x32\x85\x03\x48\xa4\x6b\x54\x8d\x42\x5a\x9b\xef\x95\x1b\x77\x8c\xea\x44\x2e\x9b\x2b\x6d\xbc\xa1\xc3\x11\xc6\xd2\x31\xe1\x51\xab\x39\x02\x4e\x8c\x92\x23\x00\xc0\x07\x5e\x9c\x1b\xb6\xb8\xb7\x57\xe6\x5d\x2a\x28\x77\x7c\x30\x0b\xd5\xa1\xe8\x44\x2b\x4b\xc6\x99\xa5\xd6\x28\xcd\x43\xc3\xb2\x20\xb6\xe9\x48\xf7\xad\x10\x11\x87\x51\xd1\xaf\x52\xea\xb3\x7d\x4a\x64\x9f\xbe\x25\xe9\x7d\x52\xb7\x2a\xad\xa8\x10\x24\xdd\x26\xcd\x85\x65\xe5\xc5\x86\xf8\x81\x21\x74\x59\xfe\x56\x47\x9c\x3a\xce\xb5\x36\x63\x49\xc3\x61\x3e\x6a\x2c\xcb\x93\xa7\x64\xf6\x74\xb8\x84\x38\x24\xeb\x1a\xae\xff\xc4\x9a\xb7\xfb\x02\x4b\xe3\x25\xbb\x85\xfd\x11\xc8\x1f\xdb\x5f\x43\x99\xd5\x33\x0f\x27\xa9\x62\x8e\x15\x56\x5f\xb7\x61\xde\x49\x7c\x0f\x29\x98\x96\x74\x45\x5b\x39\x62\x64\x53\xaa\x0e\xe7\x5d\x1d\x8c\xd2\x42\xb7\x17\x94\xa5\x8c\x62\x5a\xfe\x92\x6b\x1e\x71\x5a\x46\x80\xd6\x61\xa1\xb3\xc2\x79\x57\xb3\xba\xb2\xa6\xeb\x49\xe6\xfd\xe9\x5f\x6a\x6e\x45\xa5\xf6\x7b\x9b\xbc\x71\x2b\xf1\xfb\x85\x89\x8d\xa2\x06\xdb\x6e\x25\xd8\xa6\xac\x0e\x17\xd5\x7c\xd4\x48\x57\x2b\x24\x7f\xd6\x49\xef\xc6\x3f\x6c\xb5\xca\x48\x4e\xd3\xaa\xb1\x66\x6e\x42\xe4\x2b\x73\x4e\xf6\x44\xf3\x14\xd8\xad\x71\x73\x1c\x86\x23\xba\xdc\xba\xaf\x6f\x15\x37\x2c\x49\xe3\x45\x32\x52\xfd\x7d\x18\x7c\x59\xbd\x00\xbb\xad\x30\xcd\xb2\xbe\x67\xb5\x7a\xfa\xe6\x69\xeb\x85\x13\x4c\x02\x49\xc5\x34\x94\xce\x38\x95\x5b\xa6\x54\x0f\x66\x0a\xb7\x5c\xac\x38\xe3\xcc\xc2\x1c\x15\x97\x09\xcc\xa2\x08\x14\xd9\x43\xae\xa5\xa8\x04\x5b\xb6\x97\x91\xc9\x55\x3e\x0b\xda\x59\x06\x56\x65\xe1\x64\x82\x12\x21\x48\x56\x1b\x4b\x23\x12\xad\xd7\x96\x3d\xc2\x03\x4c\xfa\xcd\x36\x0e\x7c\x4d\x91\xe3\xb4\x21\x76\x60\x16\x26\x93\x74\x8e\x70\xfb\x43\xc8\x99\x97\xa4\xf7\x08\x8b\xb3\x13\xc4\x55\x41\x8e\x27\xa3\xce\x6d\xb3\x31\x79\xd2\x7a\xf1\x8f\xb4\x88\xb2\x1c\xb4\x2c\x17\x46\xd7\x65\x55\xb3\xc2\x81\xf6\xb8\x5d\xff\x0e\x53\x93\x5b\xc6\xab\x2b\xdf\xf2\x05\x93\x07\xb9\x35\x61\x5e\xbe\x99\x8f\xe1\x47\x9d\x83\x82\x7b\xe9\x2d\xe3\xa7\x67\x3f\xd7\x14\x04\xfe\xa1\xe2\x15\x78\xdc\x72\xe9\x62\x72\x1b\xa7\x37\x61\x6c\x9b\x91\x08\xaa\x4c\x10\x8a\x36\x0d\x2c\x65\x5e\xd7\x95\x7f\xb1\x85\xf0\x1f\x79\x49\x3a\x01\x98\xb2\x41\xa4\x91\x4c\x57\xab\x64\xd3\x81\xa0\x30\xcb\xac\x7f\xaf\x6d\x94\xe5\x5f\xbc\x5a\xd5\xd9\xcf\x59\xe6\xe7\xae\x6b\x3d\xac\x56\x09\xbb\x6f\x5a\x1e\x07\x85\xdc\xe2\x60\x84\x1b\xa6\xb7\xda\xae\xaf\x96\xcd\x5a\x3c\xfb\x31\x9a\x4b\x5f\x07\x46\xb4\xd7\x03\x23\x72\xac\x03\xb6\x0e\xcc\x6b\xee\xa9\x5f\xab\x55\x91\xd3\x78\x4a\x88\x44\xf5\x11\x57\x33\xb5\x5a\xb1\xf5\x1a\xa5\x24\x95\xc6\xd2\xa2\x69\x7a\x4a\xb4\xf5\xe0\xe3\xe9\xd9\xfb\x1f\x3e\x9f\x5e\x9f\x7f\xbd\xfa\x74\x7e\xf6\xfe\xf3\xf5\xc7\xd3\xf7\x57\x3f\x5d\x9c\x5e\x06\x2d\x9f\x9c\xfe\xcf\xd5\xe9\xd9\x87\xeb\xaf\x17\xe7\x57\xe7\x57\xbf\x7e\x3d\xbd\x0c\x1e\x15\xac\x5b\x87\xe8\xfe\x8b\xdf\xf2\xd4\x27\xa8\x8c\x7c\x3e\xff\xf1\xfa\xf2\xea\xfd\xc9\x5f\xaf\x2e\xde\x9f\x9c\x5e\x9f\x9f\x5d\x7f\x38\xfd\x7a\x71\x7a\xf2\x5e\x14\x2f\xf2\x8a\x0c\x3f\x9f\x5e\x5c\xaa\xc7\x8b\xf7\x9f\x2e\x37\xb3\xf9\xe4\xf2\xea\xe2\xa7\x13\xd1\x10\xa8\xfe\xe3\xa7\xcf\xa7\x22\xf5\xfa\xfd\xd7\xaf\x9f\x3f\xc9\x5c\xd7\x57\xa7\x5f\xbe\x7e\x7e\x7f\x75\x7a\xfd\xcb\xc5\xfb\xaf\x5f\x4f\x2f\x44\x71\x45\xe2\xf9\xd9\xe7\x5f\xaf\x7f\xfc\xfc\xe9\xcb\x97\xd3\x8b\xeb\x93\xf3\x2f\x5f\xcf\xcf\x4e\xcf\xae\xa0\x5b\xd7\x1f\x4e\x7f\xf8\xe9\xc7\xeb\x8b\xd3\xb3\x0f\xa7\x17\xd7\x57\x17\xa7\xb2\xec\xbf\xfc\xf7\x4f\xa7\x17\xbf\x5e\x7f\x3a\xbb\x3a\xfd\xf1\xc2\xb4\xf7\xfa\xc3\xe9\xc7\xf7\x3f\x7d\xbe\xba\x7e\x7f\xf9\xeb\xd9\xc9\xf5\xf9\x0f\x97\xa7\x17\xa2\xfd\xf0\xc9\xc5\xa9\x2a\xe4\xf3\xf9\xf9\xd7\xeb\xcf\x9f\xbe\x7c\xba\x0a\x7c\xd6\x23\xa7\x5f\x7e\x80\xc4\xf7\x1f\xae\xff\x7c\x7e\xfe\xd7\xcb\xe0\x71\x4d\xcc\xc0\x3e\xae\xd7\x0d\xb9\x42\xf4\xd6\xa5\xe6\xe7\xf4\xec\xe7\x42\x19\xb4\x74\x5d\x04\x6f\xce\x7e\xb6\xbc\x54\xe4\xdd\xc5\x06\x3d\x33\x73\x4c\xb2\x65\x54\xe9\x0a\x0c\xa8\x1f\x65\x18\x2e\x80\xd0\x76\x36\x66\xd7\x91\x37\x7d\x4e\xb5\xf5\x90\xae\x77\x26\x38\xa6\x01\x7a\x79\x32\xc8\x65\x68\x3d\x51\xad\x38\xcd\xb4\x7c\x75\xa7\x2a\xd3\x41\xd7\x2c\x8e\x4e\x6b\x2d\x0a\x6c\xd4\x58\xb9\xfa\xad\xeb\x5a\x64\xba\x16\xe1\x7c\xb3\x04\x4f\xe9\x45\xe4\x6d\xb8\x7a\x22\x99\xf7\xf1\xa7\xb3\x13\xa0\x12\x93\xf5\x1a\xbe\x15\x74\x77\x29\x9a\x58\x53\x94\xc1\x14\x50\x85\xe9\x67\x4c\xea\x72\xc3\x4a\xd0\x59\xe1\x01\x00\xaa\xd4\x0d\xb1\x4c\x6f\x3c\xd1\xe2\xf4\x5f\x6d\x65\xfa\x54\xbb\x52\x75\x83\xc3\xbc\xea\x6c\x36\xea\x46\x39\x34\xa3\x1c\x1a\xcf\xe9\xa5\xa0\x9f\x50\x4c\x4a\x58\xa5\x9f\x25\xd6\x10\x40\xe1\x70\x39\x6a\x40\x95\x5e\x94\x2b\x4f\x14\x2c\x5b\x5e\xa9\x57\x9c\x5e\x62\x6f\x1a\xc5\x9c\x65\x75\x1e\xfb\x75\xb0\x0d\x00\xc0\x2e\x41\x84\x98\xa7\x17\x50\x6d\x07\xc6\xa6\x03\x63\xd3\x81\xa9\xe8\xc0\x18\x8f\xab\xad\x9f\xca\x06\xea\xf2\x86\x53\x45\xac\xe3\xe1\x74\x84\x1b\x9d\xf5\x1a\x2d\x9f\x10\x09\xb2\x2c\xcd\x76\x66\x61\x32\x89\xa3\xe4\xf6\x75\x3e\x0d\xb0\x2a\x7f\x8f\x8d\xe8\x2d\xe3\xe7\x09\xd4\x5c\x07\x50\xa0\xb6\xec\x8d\x1c\x0c\x3f\x72\xb3\x59\x7f\x50\x0e\xe4\xe7\x77\x2c\xcb\xa2\x09\xab\x29\x28\x53\x05\x6d\xcf\x2a\x26\x4b\x96\x98\x26\x70\xa9\x77\x15\x66\xb7\xac\x64\x95\x9d\x91\x04\xe2\x20\x34\x53\xd9\x1c\xbb\x9d\x82\xef\x95\x3f\x4c\xb6\x8f\xb3\x0c\xde\x90\x26\x3b\xf9\x72\x21\x86\xf6\x65\x66\xbe\x9b\x9f\xc5\xd1\xcd\xee\x24\xe4\xe1\x75\x38\x09\x17\x7c\x8b\x0d\x70\xfd\x67\xe6\x4a\xe5\x1a\x44\x3c\x53\xc2\x1f\x6e\xdf\xbe\xf5\x83\x0f\x21\x0f\xdf\xeb\x76\xdb\xa1\x4b\x5b\x1d\x52\x1f\x65\x96\x6b\xd3\xe9\xf5\x53\xe5\x1a\xc3\x85\x0f\xa2\x63\xaf\xab\x21\xb3\x6a\x78\xc5\xf4\x3d\x35\xa0\x75\x93\xaa\xdc\x3d\xea\x66\x2b\x93\x4e\x9d\xff\xaf\xfc\x0c\x68\xa6\xa4\x70\x0f\x7a\x35\x41\x8f\xfa\xd8\x03\x47\x39\x32\x0e\x93\x93\x90\x87\x71\x7a\xab\x7c\x7b\x7f\x78\x10\x32\x6a\x0d\xc0\xb4\x33\x4f\x27\x2c\x76\xe4\xb5\xb1\xc3\xd9\x7c\x11\x87\x9c\xc1\x33\x78\x19\x3f\x5d\x86\x6c\x0c\x1c\x79\xde\x63\x94\x79\x67\xfa\x14\xe8\x9d\xbd\xff\x72\x7a\xf9\xf5\xfd\xc9\xe9\x25\x26\x91\xc9\x01\x37\xff\xec\xbe\x79\xc1\x6e\x4f\xbf\x2f\x10\xdc\x41\xc3\xfd\x72\x34\x7d\xc0\x88\xe1\xb6\xf3\xa7\xc2\x94\x38\xa9\x41\xa1\xb3\x84\x89\x64\xbb\x30\x91\x48\x57\x7a\x09\xd1\x6a\x3c\x30\xc5\x11\xd3\x81\xda\x00\x46\x47\x34\x49\x42\xde\x60\x14\x62\xd7\x55\x01\x58\xa1\x4d\x93\x30\x9f\xb1\x2c\xfa\x8d\x61\x94\x98\xa3\x59\x2a\x0e\x66\x10\x54\x10\x8b\xb3\x1f\xb6\x7c\x02\x5e\xc3\x34\x36\x57\xff\xab\xdc\x04\xb2\x65\x12\xa7\xe9\xa2\x36\xeb\x9c\xf1\x30\xfe\xd7\xe8\x55\x43\xe4\xfc\x1b\xa8\x36\xa4\x69\x95\x6a\xa3\x24\xe2\x1b\xb0\x25\xd7\xf9\x72\xc1\x32\xdb\xb3\xb3\xb8\x48\xd4\x37\xb9\x31\x0b\x73\xf6\x05\xdc\xb8\xe1\x66\x3a\x05\xea\x5a\x93\x71\x1d\x17\xd1\x16\x65\x21\x97\x0e\xce\xec\x73\x34\x8f\x78\xd0\x23\xe1\x78\xcc\x16\x5c\xf4\x80\x81\x2a\x50\x70\x98\x72\xd9\x81\x29\x5b\xb0\x9e\x8f\x20\x2a\xe4\x9b\x1c\xc8\x6a\xc1\xbd\xd8\xa7\xa0\x44\xb1\x5a\xf2\x5a\xcb\x71\xe8\x94\xd2\x60\xde\x32\x5e\xe4\x46\x6a\xb1\xc8\xc2\x1a\x0c\x25\xde\x3c\x5c\xa0\x8d\xf8\x34\x09\x65\xde\x37\xb0\x37\x4a\x69\x06\x68\x95\xa6\x0c\x94\x10\x26\x11\xa1\x0c\x62\x9c\xc2\xf2\xf1\xd2\x1b\x70\xae\x2e\xb2\xca\x8c\x10\xec\x31\x15\x82\x4d\xe5\x74\xd8\x64\x08\x3f\x46\xf5\xab\x50\x2b\x04\x00\xbf\x88\x64\x95\x29\xf1\x32\x36\x4f\xef\x98\x89\x90\xb9\x2e\xe3\xc7\x94\xf3\x8a\xd6\xa9\x9c\x21\x26\xe1\x9a\x5c\x8b\x56\x5d\xa5\x27\xa2\x83\x55\x50\x99\x0d\x9f\x3b\xa6\x07\x15\x16\xee\xad\x31\x68\x01\xbb\x14\xcb\xfc\x1c\x49\x4e\x17\x38\x6d\x86\x1b\x8c\x66\x80\xe6\x21\x6a\xd0\x1a\x49\xa6\xe6\xee\x82\x8d\xd3\x6c\x92\x57\xe0\x07\x88\x42\x8a\x09\x89\x34\x8b\x21\xcb\x62\x9e\x88\xc2\xa3\xb0\xdb\x8d\x18\x26\x63\x33\xc3\xaa\x4c\x14\x43\xe8\x3f\xcb\x76\x12\x3f\x66\x10\x65\x14\x44\xca\x09\x1d\x6f\x4e\xb7\xf6\xab\x90\x93\x98\xeb\x49\x94\x25\x22\x46\xa6\x58\x08\xdd\x82\x04\x74\x12\xcc\xc8\x8c\x3e\x4e\xa2\xc9\xc9\x2c\x4c\x6e\x4b\xa0\x1d\x19\x49\x49\x58\x30\xd1\x98\x66\xc7\xf1\xdb\xac\x1d\x1e\xc7\x5a\xe3\x3f\x16\x1d\x4b\x3c\x29\xce\xbe\xe7\x58\x1a\x85\x4e\x68\xa9\x92\x31\x6e\x6c\x69\xd1\x18\x5a\xc4\xd1\x70\x32\xc2\xeb\xd4\x75\x23\x94\x91\x54\xac\x8b\x28\x8e\xab\xcd\x29\x23\x5a\x69\x22\x81\xea\xc3\xc9\x04\x64\xf7\x73\x59\x78\x86\xd1\x18\xd6\x3e\x99\x95\x30\xb7\xf1\xe3\xf2\x25\xf4\x09\x45\x4a\x9a\xdc\x28\x15\x8a\xdc\x20\xca\x12\x01\x87\x78\x4d\x38\x9a\xd4\x72\x9f\x4d\xf2\x15\x3d\x55\xa6\x7b\xff\x32\x6f\x7b\x41\xe7\xd6\x64\xc2\x38\x1b\xd7\xc8\x45\x2d\x5f\x30\xc4\x78\x39\x37\x97\xab\x4f\x72\xae\x2a\x7b\xa8\x61\x5d\xf2\xae\x8b\xa4\xf5\xf4\x1e\x6e\xd0\x7b\x5a\xa2\xf7\x5c\x8c\x02\x92\x11\xc4\xca\x3c\x4b\xe4\x53\x8b\x60\xb9\x85\x70\xb9\xf4\x6d\x43\xc9\xbb\xce\x6a\x15\xbd\xeb\x88\x13\x93\xd8\xc2\xf3\xf1\x8c\x89\x0d\xe8\x3c\x19\x33\x8c\x9c\x50\x5e\x49\x48\xf4\x17\x92\xbf\x8c\xf0\x8e\xb7\x90\x9c\x34\x8a\x23\x4b\xbc\x71\x7b\x6f\x0d\xdf\x16\xc2\x0a\x49\x44\x96\x78\xbd\x26\xa5\x9e\x6e\xdd\x0e\xec\x51\xb3\x62\xd3\x3f\x26\x12\xca\x64\x9c\x2e\x13\x1e\x40\x6d\xb7\x8c\x63\x94\x11\x47\xde\xd4\x39\x58\x4f\xb1\x46\xed\xb1\xe7\x5b\xcc\x8a\x5c\xc8\x80\xad\x57\xda\x6b\x6a\x7c\x32\xe5\xec\x16\x0d\x42\x4e\xed\x7e\x5a\x88\x68\x0c\xb0\xab\x6a\x65\x4d\xc5\x6f\x1d\x3c\x10\x59\x9e\x78\x2f\xdb\x7d\x2d\x38\x37\xb4\x34\x3f\x4f\x8c\x18\x29\x36\x44\x66\x18\x2d\xc3\xdb\xd8\xe3\x23\x6c\x86\x01\xdf\x20\x49\x18\x3e\x06\x22\x5b\xa9\x9c\xed\x87\x7e\x38\xae\x70\xd8\xb6\xe4\x16\xab\x19\x88\xfa\x74\x4d\xb6\x34\x75\x63\x3c\xe5\x68\x72\x53\x6d\xba\x45\x3c\xce\xac\x1d\xdf\xb4\xa1\x16\x80\xb9\x24\xfa\x72\x0c\x20\xbb\x35\xa2\x2f\xd3\x3d\xe0\xc3\x64\x64\x5c\x61\xe0\x42\xd4\x16\x6c\x71\x23\x93\x2c\x3c\x95\x32\x6d\x06\x04\xb2\xb1\xfd\xd5\xc9\x38\x66\x23\xa8\x09\xa0\xf4\x68\x08\xce\xb6\x04\x14\x54\xf9\xb3\x84\xf3\x2b\x93\xfb\x89\xf5\x0a\xae\xba\x3c\x19\x5a\xfe\xaf\xec\xe1\x5e\x34\xa4\x92\x5d\x27\xcb\xac\x72\x1a\x6b\xcb\xfd\x68\xbd\x92\x99\xc7\x69\x9c\x56\x17\xdb\x89\x48\x83\xd7\x56\xe7\xed\x26\x6d\x8e\xc3\xe3\xda\xca\xaa\x9b\xf3\xe4\x70\xd5\xb6\xe9\x99\x82\xa1\x61\x35\x0c\x4b\xde\xd4\x95\xb6\xdc\x9a\x5c\x56\xca\xba\x7c\x52\x09\xb7\x9e\x54\x6e\xe3\x68\x3e\xaf\xf7\x5d\x86\xbc\x3b\x37\xe1\x0d\x8b\xeb\xdc\x90\xeb\x0e\x18\x86\x71\x88\xb7\xba\xe8\x74\x31\x4e\x27\x6c\x67\x9c\xce\x17\x51\xbc\x45\xef\xa1\x4f\x26\x2f\xf0\x8b\xb6\x8e\x42\xba\x86\x8c\x4d\x59\xc6\x92\x71\xfd\xf7\x95\xf3\x91\xb9\x25\x33\x5f\x3f\x51\xf7\x76\x6f\xed\xbb\x88\xdd\xd7\x0f\x42\x0d\xe4\x48\x91\x2f\x02\xa8\x0d\x91\x06\xb7\x90\xd6\xb1\x8d\x65\x77\x91\xec\x81\x6e\x98\xe8\x78\xbd\x96\xa8\xae\xe4\xba\xeb\xbe\x9a\x43\xa1\x2e\xfc\x3e\xca\xd8\xce\x34\xcd\xe6\xa1\x28\x23\xcb\xef\x4a\x23\x9a\xa4\x93\xfa\x01\xc9\x52\x19\x5b\xc0\xbc\x13\xd3\x9a\x26\x2c\xe1\xbb\x5a\x8d\xb0\x93\x26\xf1\x43\x91\x01\xb4\x6f\xdb\x8e\x9c\x24\x24\x39\x59\x92\x98\x8c\xc9\x94\x4c\xc8\x8c\x2c\xc8\x1c\xc2\x80\xde\x92\x1b\x72\x4d\xee\xc9\x29\x39\x27\x97\xe4\x3b\x79\x5f\xa3\xc2\xfc\x56\x08\x19\x5f\x0d\xfb\x85\x03\x01\x0f\x6f\x6f\xd9\xe4\x4a\x35\xe8\x33\xa0\x85\xc5\x9f\xd3\x34\x67\x18\x0d\x1d\xd3\xe4\x60\x47\x2d\x10\xa7\x88\x92\xf1\xb5\x46\x21\xc9\xd6\x84\x15\xfe\x3b\x17\xaf\xa9\xcb\x0c\x8a\x26\xff\x60\x1e\x46\x89\x55\xdf\xc5\xb3\xf5\x5d\xfd\xa1\xf5\x5d\x3d\x5b\xdf\xc9\xef\xa9\x2f\x30\x83\x9a\xef\xd6\x8c\xea\xc9\xb3\xb5\x7e\xf9\x5d\xb5\xee\x00\x36\x67\x51\xcf\x97\x67\xeb\xf9\xc7\x1f\x52\xcf\x3f\x9e\xad\xe7\xd3\x1f\x46\x91\x9f\x9e\xad\xeb\xc3\xbf\x61\xc6\x3e\x3c\x5b\xeb\xd9\xbf\xa1\xd6\xb3\x67\x6b\xfd\xfc\x87\xae\x86\xcf\xcf\xd6\xf7\xf1\x99\x9b\xa1\xdf\xa1\x25\xd3\xad\xa2\x3f\x11\xe6\xcd\x58\xbc\x60\x19\xfd\x91\x30\x8f\xe5\xe3\x70\xc1\x4e\xbf\x2f\x32\x96\xe7\x55\x4c\x71\x4b\x0b\xd2\xb2\xb4\x20\xd1\x14\x81\x79\x06\x4f\xff\x7c\xf5\xe5\x73\x61\x1f\x23\x9f\x15\x16\xf3\x32\x8e\x0b\xd4\x49\xc7\x91\xb6\x35\x3a\xaf\x36\x9d\xc6\x0d\x46\xcd\xef\x35\x98\x48\x73\x6d\x10\x57\x40\xc6\x5b\x06\x38\x52\x3f\x9a\x71\x92\x70\x80\xef\x98\xf1\x79\x7c\x19\x4e\x19\x8d\x38\x60\xa4\x43\xb0\x37\xf1\x9c\x8a\xe7\x6b\x80\x63\xb8\x60\xc9\x84\x65\x2c\xcb\xed\x71\xff\x6f\xed\xda\x4a\x3b\xa2\x9c\x0c\xf2\x5c\x32\xce\x63\x36\xb1\xf3\xc9\x7e\xd0\xff\xe5\xae\x8b\xfe\x97\xd3\x53\x2d\xde\x88\xbf\x2c\x43\x20\xaf\x83\x94\x77\xb2\xcc\x32\x96\xf0\x8b\x65\xf2\x39\x4d\x17\x18\xe1\xd5\x2a\xf7\x6e\xc2\xf1\xb7\x9b\x65\x96\xb0\xe2\xf4\x68\x1d\x1c\x41\x81\xfe\x17\x5e\xf8\x2c\xfc\x2f\x84\x5f\x9a\x47\xb9\xbe\xb8\xd2\x34\x56\x9d\x95\x28\xab\x4a\xe3\xc5\x78\x45\xd9\x90\x8d\xd4\x6d\x56\xcd\xf7\x96\x19\x06\xe4\xa4\x70\x85\x36\x0b\xf3\xda\xba\x4c\xce\xcd\xfa\x2a\x4d\xcc\x6b\xa8\x3a\xca\x2a\xed\x28\x5b\x0a\x46\xea\x3e\x2d\x67\x7c\xb9\x38\x4d\x6e\xa3\x84\x19\x23\x27\x3b\x1f\xab\x58\x99\xa3\xe2\xf6\x80\x3c\x5a\x4e\xe3\x41\xcb\x07\x5a\xd7\x3e\x35\xc8\x11\x02\x53\xb0\x93\x2e\x79\xcc\xb8\x43\x7e\x4c\xca\x6f\x0b\x4e\xab\x73\xfc\x02\x39\x8c\x81\x65\xb5\x00\xab\xde\xcd\x8f\x2b\x5f\x2a\xd9\x2a\xd8\x99\xa4\xf3\x9d\x31\x68\x05\x84\x6c\xa4\x51\xca\x20\x22\xb8\xc9\xa1\xd2\x9e\x2a\x82\x67\x4c\xb0\x14\x85\x9a\x26\xc5\xb8\x67\x0b\x33\x7d\x85\xf3\xbc\x41\xdb\xc1\xe8\x04\x61\x4c\x7e\xae\x8c\x87\x29\x43\x49\x64\x65\x69\x72\xc1\x9f\x2c\xf1\x4a\x94\xf8\xe7\xca\xf8\x55\x33\x5d\x88\x4c\x4e\x59\x94\xb4\x6b\x91\xac\x52\x94\x51\x9d\x71\xc9\xb2\x9e\x9b\x6f\x99\x2b\x88\xd3\xb1\x43\xe6\x59\xf9\x9d\xb5\xdf\x71\xf6\x9d\xef\x4c\x65\x84\xa9\x4b\xb6\x35\xdb\x78\xc6\xc6\xdf\x6e\xd2\xef\x0e\x39\xdd\x9a\x29\x8e\x92\x6f\x3b\x3c\x75\xc8\xc5\xd6\x2c\x51\xb2\x58\x8a\xf1\xcb\xb6\x50\x9f\xb5\x3b\xa9\xac\xff\x4c\xb6\x95\x25\x5a\x1e\x66\x2c\x74\xc8\x77\x08\x59\x70\x7a\xf6\xb3\xf7\xac\xdd\xcf\x6a\xf5\xc4\xbc\x7d\x15\x53\x72\x2d\x97\x33\x2c\x44\x0b\xe4\x75\xcb\x6a\xac\x23\xd1\x5a\x92\x71\xc2\xc5\x82\x25\x93\xf3\x05\x53\xf6\x8f\x65\x42\xad\x23\xea\xca\x12\xc8\x14\xef\x76\x80\x6a\xec\xcf\xeb\x2a\xdc\x42\xce\xa2\xa6\x9b\x65\x14\x4f\x80\x80\xa4\xa1\x6d\x49\x9d\x90\xdf\x47\x7c\x3c\x43\xcc\xbb\x49\x53\xed\x49\x21\x36\x0f\x51\xf7\x97\x74\xc2\xf0\xe3\x38\xcc\x99\x28\x30\x02\xb3\x58\x27\x50\x0c\xee\xdc\x33\x69\x3f\xc8\x0a\xbc\x9b\x28\x99\x48\x4b\xcc\x06\x7c\x94\xb1\xd9\xc3\x24\x13\x3c\x43\x7f\x34\xf5\x74\x5a\x94\x26\x35\x9f\xa9\x1d\xa6\xc8\x3e\x86\x08\xab\x9b\x39\xd7\x10\xc9\x7c\x2b\xc7\x30\x5d\x76\xac\x6e\x6d\x5d\x70\xf5\x83\x5e\x94\x51\x5b\xf4\x93\x1c\xe1\x1f\xc0\x11\xb6\x97\x2d\xc4\xdb\x2b\xc3\x50\xab\x5f\x7f\x41\x18\x97\xe7\xf3\xff\x47\xde\x9f\xb6\xb7\x71\x33\xf9\xc2\xf8\x7b\x7e\x0a\xa9\x4f\x2e\xde\x8d\xbf\x20\x86\x72\xee\x33\x33\x7f\x2a\x88\x6e\x59\x8b\xa3\xc4\x96\x1c\x49\x76\x16\x3e\x3c\x9c\x16\x09\x8a\x88\x5a\x68\x06\x0d\xca\x56\xc4\xfe\xee\xcf\x85\xc2\xda\x1b\x29\xdb\xc9\xcc\x99\xeb\xc9\x8b\x58\xec\x6e\xec\x85\x42\xa1\x96\x5f\xd9\xa2\xd0\x85\x08\x73\xd1\xf6\x9a\x71\x2a\x64\x84\x85\x40\x78\x61\x30\x11\x95\xb8\xf2\x7c\xb2\x5d\x2e\xa6\x89\xa4\xed\x64\x6b\xd9\x39\xea\xb4\xd2\x9b\xe3\xf8\x4d\xf4\x66\x23\x59\x2d\xaf\xee\x04\x91\xaa\xb3\xde\xf1\xc5\x1b\xad\x45\xce\x63\xa9\x93\xd5\xb7\x35\xd2\x70\x26\x7c\x62\x73\xb1\x9d\xa0\x03\x68\xf7\x5a\x50\x7a\x14\xd4\x37\xb8\xe8\x9d\x67\x53\xda\xf0\x06\xe9\xbe\x15\x5a\xca\xd2\xbd\x7b\x93\x4c\x44\x56\x3e\xe2\x2f\xb9\x56\xfc\x69\xfe\x02\x92\xf2\x4d\x4a\x4f\x33\x41\xde\x50\x4c\x7b\x93\x64\x91\xdc\xb0\x94\x49\x46\x6b\xd1\x57\x35\x48\x28\xed\x62\xe3\xa0\x17\x48\xf4\x4d\x6f\xef\x1b\xf0\x1f\xf0\x38\xb0\xb2\xa7\xd7\xee\xfb\x2c\xbb\x43\xf8\x09\x12\xb3\xbc\x66\x33\x7a\xf4\x38\x49\xe9\x91\xf1\x4d\xcf\x07\xfe\x73\xf7\xc5\xa4\xf4\x05\xc2\x80\x60\xa0\x53\x7f\xf8\xaf\xfd\x43\x84\x7d\x43\x03\x9d\x43\x24\xa7\xf2\xc8\x32\x6a\x03\xa1\xd1\x14\x7b\xd5\x11\xe4\xa6\xe7\x98\xf3\xf8\xcd\xe1\xf9\xe1\xab\x93\xcb\xf1\xd5\xf5\xe5\xd9\xf9\xab\xf1\xeb\x8b\x8b\x1f\xdf\xbd\x6d\x40\xfc\xa4\x07\xa1\x7e\xd6\xe9\x3b\xb5\xb3\x6b\x70\x44\xec\xde\xeb\xa6\xc1\xfc\x58\x0c\x9c\xf4\x3c\x15\xf1\x93\xb1\x51\x0e\x04\xb6\xca\x95\xc1\xf6\x1e\xd6\x99\x09\x5d\x05\x51\x81\xa5\x15\xee\xd6\x8c\xc7\x92\xd5\x5c\xc4\xde\x00\x2c\x01\x26\xcb\x56\xde\xed\x06\xb5\x42\xfa\x11\x0d\xbf\x6f\x6d\xa5\x2e\xa0\x0b\xe6\xee\x4d\x36\x85\x38\xa4\xe6\xa9\x6b\x18\x05\x6d\x18\xc5\xbd\xa9\x24\x1c\x44\xb5\xe2\x73\x8e\x69\xcf\x7e\x78\x14\x52\xe0\x0f\xa2\xb2\x8c\xeb\xe5\xe7\xdf\xb9\x06\x0a\xc1\x5a\xab\x5b\x9e\x31\x57\xf4\x98\xaf\x71\x71\x72\x5b\xfd\x99\xfe\x47\x21\x77\x58\xeb\xe4\xd4\xb0\x65\x3f\xa5\x89\x6a\xd9\xb5\x6d\xb1\xfc\xca\x9c\x82\xc0\x2e\x4f\x99\xc8\xe5\x39\x28\xf3\x9e\xd9\x60\x5b\x05\x6b\x5b\x6d\x61\x4c\xcf\x6c\xb4\x95\xb1\x69\x86\x7b\x01\x32\xfd\x7b\x46\x3f\x10\xda\x3b\x3b\x7f\x7f\xf1\xe3\x09\xa1\xbd\x77\x6a\xcb\xab\x7a\x2f\xad\xf2\x97\xd0\xde\xe1\x4d\x2e\x45\x32\xa9\xef\x15\xda\x1b\xd3\x8f\x0b\x2a\x18\x68\x5e\x53\xc3\x1d\x69\x0f\x32\x1c\xab\x4b\xe0\x03\xb5\x57\x53\x78\x4a\x85\x0c\x7e\x07\x7f\xaa\x0b\xad\x71\x9c\xa5\xbd\x13\x7f\x52\x11\xda\xfb\x5e\xdf\xe4\x69\xcf\xb5\x4e\x68\xef\x35\xe3\x77\xe1\xef\x6b\xfa\x51\x1e\x0a\x9a\x98\x3f\x4f\x95\xe0\xab\x8a\x18\xf1\x96\x78\xed\x00\xc4\x9c\x1c\x65\x4b\xd5\x43\xd5\xd5\xcb\xe0\x88\x0e\x1d\x6c\xfe\x24\x4f\x00\x25\xf4\x3d\x93\x83\x3e\x86\x3f\xdf\xb0\x3c\x1f\xf4\x8b\x4e\x5b\x65\x7f\x42\xc1\x97\xa4\x7a\xce\xbf\x8e\x51\x60\xb8\x7d\xe7\x19\x0b\x58\x91\x6c\x5d\x06\x81\x04\xe9\xd0\xd9\x00\x68\x08\xd7\xb3\xa0\x71\x02\xa8\x4b\x06\xc1\xcf\x23\x0c\xa0\xa7\x3f\x7b\xae\xab\x3b\x3b\x0e\x96\xcb\xb0\xd0\x97\xa8\xc3\x89\xcf\x6d\x8c\x9f\x40\x0f\x3f\xa0\x05\xc2\x90\xf9\x1b\xf2\xcd\xe9\x04\x36\xa6\x9e\xef\x99\xdc\xd9\xf1\x78\x03\xde\x9b\x6c\x3c\x66\x53\x22\x7b\x6c\x8a\xd5\xdf\xf7\x54\x26\x3a\x1d\x62\x82\x39\x58\x9e\xbf\x27\xef\xe2\x27\x36\x1d\x44\xf3\xdf\xe7\x1f\xdf\x65\x62\x19\xe1\x9b\x34\x9b\xdc\x0d\xfe\xf1\x14\xe5\x90\x09\x3a\x8f\x06\xc3\x11\x8e\x5c\x4e\x1b\xf5\x7b\xb8\x87\x87\x2f\xfe\x03\x07\x3c\x15\x0f\x87\x2f\xbe\xc1\x7d\x3c\x1c\x8d\x46\xa0\x4d\x18\xe1\x59\x92\xe6\x74\x34\xc2\xd1\x3c\xc9\x4f\x1e\x92\x34\x1a\xc0\x93\xe2\x1f\x58\xb5\x3f\x78\xd2\xb0\x30\xe0\x82\x14\x2d\x92\xc9\x5d\x72\x4b\xf3\xaf\xdb\x4d\x34\x29\xbb\x71\x3a\xf6\xfc\x6b\x25\xb1\xf5\xe6\x37\x79\xa4\x2d\x3d\x25\xea\xf8\x1e\xe6\xf3\xbd\x5a\xb6\xa4\xa7\x07\x81\xe2\xe8\xf2\x44\x9d\x74\xef\xae\x4f\xc6\xd7\x87\xaf\x0c\xbe\xcf\x1f\x24\xeb\xb9\xec\x11\x7f\x89\x9b\xd6\xf0\x3d\xe0\xbc\x2e\xcd\xe2\x5d\x27\xb7\x60\x0d\x13\x54\x4d\xd5\x52\xd2\x66\x83\xe9\x3e\xa8\x6e\x7e\xcf\x18\x47\x81\xf1\x33\xb0\xaa\x2d\x7b\x53\x26\xa4\x22\xba\xe1\xfb\x11\x38\x40\xc0\xb0\xcd\x9e\xfb\x03\xff\xd1\x63\xb9\xfe\x61\xc8\x93\x6c\xf7\xb5\xfd\x36\xa7\xd2\x8d\x10\x2c\xc4\x28\xfe\x43\x0f\xfe\xe7\x76\x90\x1a\x63\x55\x87\x1e\x5b\xec\xab\x7a\x03\xce\x89\xc8\xe3\xa0\xd4\x50\x9e\x9c\x9d\xcf\x8e\x3f\xac\xba\xa8\x86\xdf\xbd\xaa\x60\xa5\xfc\xac\xa4\x35\xf7\xf6\x57\xff\x16\x86\x66\x3c\xdd\xd5\x4e\x3c\xd0\x20\x02\x5a\x8f\xe6\xa4\x24\xaa\xbd\x2b\x7e\xac\x50\xc2\xbb\xb7\xc7\x87\xd7\x27\x11\xc2\x5f\x55\x5e\x68\xee\x0a\xb2\xb4\x61\xb4\x5f\xc1\x4c\xfd\x54\xf9\xee\x10\xa2\x05\x22\x84\x7f\x69\x99\x42\xf4\xd4\x34\x37\xb7\xb4\x31\xed\x00\xb5\xb3\xe6\x81\x61\x00\x56\xe8\x87\x72\xc8\xb3\xad\x5d\x18\xca\xb1\xb2\x73\xac\xe1\xda\x4c\xfe\x34\xb4\x5a\x69\x27\xb0\x34\xc9\xe5\x25\x7d\x60\xa0\x49\xd5\x40\x41\xf0\xec\xbd\xce\x44\x07\x0f\x0a\x37\x99\x4a\x52\x9a\x53\xc1\x64\x6e\x94\xc7\x42\x49\x12\x22\xe8\xbc\xce\x60\xd7\x48\xbd\x3d\x99\xdc\x1a\x3f\x8a\x52\xb3\xd6\xa9\xc2\x35\xdb\xa9\xc4\xb6\x82\x37\xcb\xb2\x07\x28\x51\x89\xa4\xc8\x40\x28\xc6\xd5\x72\x24\x24\x9a\xd8\xf8\x0c\x95\x06\x68\xeb\x59\xaa\x4a\xb4\x59\x5f\x14\xf1\x2f\x08\xff\xd6\x36\x89\x3e\xca\xd3\xce\x23\x0f\xe7\x11\x3a\xa2\x67\x92\xf2\x07\x22\x30\xef\x4d\xe6\x2c\x9d\x0a\xda\x9c\xbd\x82\x6f\x9e\xcb\x1a\x00\x5a\x20\xbf\x2d\x68\x4c\xf1\x76\x1f\x24\x45\xb1\x86\x64\x82\x88\x66\xdb\x9d\x16\x28\x8a\xb8\xfe\x19\x1c\x56\x86\xcc\x7a\x8c\x03\x1c\xae\x9e\x4b\xca\x1f\x34\x00\x85\x28\xe2\x65\x0f\x64\x10\x27\x57\x20\x4c\x69\x3b\x25\x3a\x32\x6f\x64\x89\x7a\x0a\xbf\x68\x6a\x60\x65\x59\x0e\x7d\x82\x9d\x1e\x2b\x19\x03\x96\x3a\x06\xe4\x11\x3c\xa3\xb1\x40\x07\x66\x6c\x02\x73\x34\x98\xba\x27\x4b\x1a\x8b\x21\x1f\xa1\x41\x3c\x57\xcf\xf0\xac\xf7\xee\xfc\xf8\xe4\xf4\xec\xfc\xe4\x78\x7c\x79\x72\x7a\x72\x79\x72\x7e\x74\x82\x74\x32\x18\xa1\xc1\xb3\x6d\xf8\xc4\xfa\x85\x08\x98\x94\x08\x36\xae\x28\xe2\x1f\x10\x96\xad\x13\xb6\x81\xea\x1c\xcd\x2d\x12\x41\xb9\x25\x7e\x90\x52\xb4\xb4\xf9\x23\x7d\x04\x5a\xb4\xbf\xaf\x93\xdb\xf0\xb8\x71\x52\xa1\x3e\x77\x30\x57\x5b\x93\x94\x3e\xc7\xbc\x68\x5b\x08\xe7\x66\xdf\x80\xaf\x6d\x0f\x83\x16\xff\xa9\xb0\xc3\x76\xdb\x07\x7d\xc6\xb0\x43\xd3\x9e\x92\x4e\xef\x9a\x8e\x38\x6d\xcf\x4a\xb5\x9f\x17\x40\x9e\x22\xbc\xbd\x87\xbc\x73\x64\x0a\x69\x3a\x96\xf7\xe0\xc3\x83\x61\xc8\xfa\xd6\x8b\xe2\x52\x63\x30\x42\x48\xbd\xca\x87\x3f\x96\x13\xb7\x43\x2d\x39\x34\x50\xed\x71\xad\xbf\x66\x2d\xa9\x99\x14\xf1\x8c\x05\xdd\x5f\xbb\x94\x5e\x4c\xaf\x2d\xa7\x03\x91\x57\x6c\x34\x23\xcf\x5d\x5c\xbf\x36\xd2\x7d\x97\xdd\xdf\x30\x4e\x51\x3c\x64\x38\x1b\xa1\xbf\x78\xa9\xc3\x85\x76\xc3\x71\xeb\x1f\xcc\x7f\xe3\xfa\xfb\x3d\xcb\x5c\xe6\x90\x4e\xc9\xb7\x99\xb0\x6e\xd7\x3a\xf8\x01\xba\xa2\xeb\x91\x7e\x58\x0e\x38\x23\x3e\x22\x91\xaf\x56\xa1\x6d\x92\xd8\xfc\x96\x38\x21\x1c\xe7\x9b\x28\x2f\x0b\x28\x2f\x59\x4f\x79\x79\x95\xf2\x70\x8e\x70\x56\x3c\x97\xd6\xdc\xa4\xb9\xa9\xd8\x44\x77\xbc\x9d\xee\x9c\x0a\xc7\xc2\xdd\x34\xd1\x9e\x2c\x53\x90\xe1\x0a\xa2\x37\x7e\x30\x9c\x45\x7c\x16\x85\xd4\x64\x81\xd0\xd1\x5d\xd7\x5d\x60\x6e\xa6\xa9\xac\xb1\xb7\x50\x0d\xfa\xab\x6e\x37\x0e\x85\x5b\x2b\x4c\x58\x24\x3e\x93\x48\x1b\x99\xc3\xbc\xd3\x78\xed\xe5\x3a\xc5\x2a\xfb\xbc\xa9\x0a\xce\x79\x4d\x5a\x1b\x38\xaa\x68\xda\x6d\x7a\xeb\x0a\x5f\xc3\x08\xb9\xfc\xbe\x9f\x72\xea\x81\x41\xb5\x7a\xe0\x79\xa5\xa9\xa1\x1a\xb0\x5f\x83\x40\xca\xf2\xb7\x22\xfb\xa8\x26\xce\x99\x5c\x67\xbd\xb7\x82\xdd\x33\x7d\xa3\xb7\xe4\x66\x24\x95\x5f\x01\xf3\x37\x3c\xb9\x40\x19\x1a\x1e\x73\x32\x53\xb2\x73\xc3\x49\x57\x6e\x4f\x1d\xc3\x75\x1e\xec\x86\x8f\xf5\x96\x4b\x6e\x4f\x33\x61\xf5\x24\x48\xab\x67\xae\xc5\x52\xce\x1f\x23\x84\xb0\x15\xd2\xfd\xee\x2b\x7f\x80\x06\xcf\x6d\x42\x8b\x7c\xbf\x6a\xa0\x36\x51\xc4\x33\x25\xc1\x4c\x99\x1a\x40\x92\x06\x72\x4c\xf6\x05\x5c\xdc\xf8\x29\x28\xe6\x9d\x88\xdb\xdc\x71\x6d\xc7\x2e\xbf\x80\x59\x03\x4d\x61\x36\xfa\x7c\x29\xb2\x46\x36\x12\x85\x49\xa9\x73\x33\x17\x8a\xf5\x42\xf4\xcb\x14\xce\x19\xcb\x85\x12\xc2\x1c\x6d\x05\xf2\x68\x9c\xe1\xa4\x46\x2f\x35\x09\x75\x93\x60\xa0\x27\xce\x9e\x09\x7e\xb2\x6c\x28\x90\x9a\x4d\xac\xe6\x31\xe8\xa6\xea\x9c\xee\x66\xd0\x35\x00\xfa\xb6\xdd\x74\x31\x1b\x8d\x9c\x9d\x12\x19\x27\x38\xaf\xb1\x72\x4f\x4c\x02\x4f\x40\x48\xd0\xf2\x5a\xf2\x05\x84\x61\x91\x73\xff\x1e\xd2\x90\xc3\xf7\x23\xfc\xe5\xf4\xf1\x85\x6b\x68\xc7\xf8\x5f\xbe\x8a\xee\xce\xf7\x29\xab\x99\x7f\xb1\xf4\x5d\xdb\xec\x46\x90\xd6\x0b\xf1\x8c\x45\x58\x3b\xb5\xbe\xb4\xdf\x1f\xc8\x65\x65\xcd\xdd\x2d\x62\xf9\x5f\x7f\xed\xaa\xdc\x47\xf7\x36\xdc\x46\xfd\xc7\xfe\x4a\x39\xa4\x23\x53\xb0\xe9\x2a\x99\x7e\xa1\x40\x03\x4d\x28\xb9\x05\xd6\xc3\x9c\xbb\x7f\x95\x94\x1b\x4a\x31\xd0\x90\x25\xd4\x42\x47\xa0\xb4\xa2\x8c\xea\x8f\xb5\xa2\xb7\xd0\x20\xd3\x7a\x6a\x8d\xc2\x4d\xe0\xe1\xd3\x1d\x7d\x1c\x7c\xd5\x16\x2c\xee\x67\xef\xab\x51\x51\x80\xf4\x10\xff\x10\xe8\xc5\x26\xb4\x9c\xe9\x5b\x10\x6a\xa0\xf8\x65\x08\xc5\x2f\x8c\xba\x19\x42\x20\x9c\x75\x32\xc8\x5b\x40\xeb\x10\xae\xb4\x21\x39\x60\xe0\xff\x37\xa5\x1b\x1c\x00\xdd\x97\x73\x50\x7b\xb9\x9f\x0b\x5a\x49\x61\x5c\x51\x4e\x6c\xf7\x11\x86\xfe\x1c\xe8\x1c\xae\xbf\x41\xa6\xd5\x81\xb9\xb4\x53\xb8\xc4\x53\x77\x89\xa7\x68\xb0\x4e\xb2\x31\x8a\xbe\x7b\x5a\x51\xd4\x1d\x9f\x5d\x5e\xff\xaa\xf5\xbd\xf8\xa1\xfa\xf2\xf0\xf2\xd5\x55\x84\xf0\x63\xf5\xf9\xd9\xd5\xf8\xf8\xec\xea\xed\xe1\xf5\xd1\xf7\x67\xe7\xaf\xc6\x87\xd7\xd7\x97\xea\xbb\xdb\xea\x77\xdf\x1f\x5e\x8d\x5f\xbe\xbe\x38\xfa\x31\x42\xf8\xa6\xfa\xf2\xe5\xc5\xbb\xf3\x63\x55\x6c\x4c\xc9\xbc\x77\x94\x09\xfa\x9e\xd1\x0f\x56\xb9\x3c\xef\x1d\xcd\x59\x3a\x55\x8f\xf2\x2b\x1d\x22\x8d\xe7\x3d\xf5\xf3\x4a\x26\x92\xfa\x47\x40\x40\x10\x41\x63\x9f\x65\x3d\x8d\xd9\x70\x08\xd3\xec\xbf\xac\xfe\x56\x95\xbd\x61\x1f\x19\xc7\x71\x7c\x47\x9e\x94\x64\x60\x3d\x77\xb6\xfb\xf8\x33\x95\xdb\x8f\x74\x64\x93\x73\x0d\xef\x69\x83\xa6\x5b\xbf\xba\xa1\x23\xa2\x63\x36\x04\xd5\xbe\x10\x61\x5b\x55\x89\x5f\xd5\x64\x25\x7e\xe8\x41\x8c\x8a\x02\x0d\xd3\xde\xdb\xcb\x8b\xb7\x27\x6a\x01\x8f\xcf\x8e\xc7\x47\xdf\x1f\x9e\xbf\x3a\x19\xb5\x40\xd9\xaa\x9e\x85\x91\x65\xc3\x07\x3a\xc2\x9c\x78\x80\xbe\x03\xc5\x98\x06\xd6\x6e\xe4\x32\xa3\x04\x70\xa0\xea\x0e\xd7\xed\xaa\xff\xc7\x2f\x08\x21\x6e\xe8\x66\x83\x1d\x40\x24\x9a\xd5\x50\x68\x7d\x0f\x2a\x0a\x0c\xd0\x80\x87\x52\x36\xe2\x7d\xbb\x98\x32\xc5\x17\xee\x7a\x82\x26\xd3\xe3\x8b\x37\xb5\xaf\x9d\x95\x69\xae\x3e\x56\x2b\x77\x92\x82\xad\xc5\x44\xf4\x62\x38\x8b\x48\x00\x38\xf7\xee\xf2\x8c\x10\x32\xeb\x5d\xbd\x7f\x35\x76\x61\x55\x3a\x8c\x7a\xe6\x31\xf3\xbc\xec\x0d\x0c\x3f\x23\x0c\xcc\xde\x70\x1e\x7b\x74\x7f\xc7\x13\x57\xab\x28\x91\x52\xa8\x2b\x74\x76\x20\xec\xb8\x20\x78\x3c\x4e\xd0\x40\x0c\x93\x91\x1a\xc5\x94\x4d\x2f\xe9\x84\xb2\x07\xaa\x5e\x97\x9c\x2d\xdd\x6b\xb5\xe6\xd5\x17\x1f\x58\x9a\x36\xbf\x99\xb2\x29\x08\x45\xcd\x15\xaa\x72\xef\x2a\x57\xc9\x4a\xb9\xca\x0b\xa4\xae\x8a\xde\xec\x38\xa6\x78\x4c\xd7\xa4\xc7\xa8\xc5\x72\x44\x85\x2a\x20\x68\xb6\xa0\x5c\x47\xd5\x85\xfb\xc7\x18\x40\xd4\x36\xf2\xd2\xce\xdb\x44\x24\xf7\xf9\x60\x38\x2a\x50\xab\xdd\x65\x6c\x4e\xa4\x0f\xd4\x19\xdd\x1e\x64\xfe\xe7\xbf\x5f\x9e\x3e\xcb\xe8\xf6\x37\x59\xd2\xe8\xfd\x42\x3e\x5a\x53\x1a\x3e\xa1\x64\x4c\x9d\x0d\x2c\x4d\x1e\xb3\xa5\x1c\x7c\xa0\x78\xe2\x18\xd1\x60\x68\x42\xa3\x9c\x4f\xe2\x08\xcb\xe4\x56\xb7\x6e\xbc\x06\x1d\xe8\xc0\x4b\xc6\xa7\x8c\xdf\xaa\x42\x8a\xf2\x22\x1c\x41\x29\x3a\x8d\x70\xc4\xf8\x94\x4a\x2a\xee\x19\xd7\x6e\xac\x53\x96\x2b\xa9\x58\xbd\x92\xc9\x8d\x89\xc8\x8a\x14\xc9\x47\x38\x4a\x96\x32\x9b\x65\x93\x65\x0e\x79\xe5\x75\x2e\xef\x08\x47\xb3\x4c\xdc\xab\xf6\xb5\xdf\x88\x73\x92\xb4\x55\x0d\xb6\xf7\x70\xa9\x19\xf5\x60\xca\xa6\x67\x3c\xa7\x42\x9a\x4d\xf6\x19\xf1\xca\x54\x97\xec\x95\xea\x26\xce\x39\x47\x1f\xe7\xc1\x2b\x54\xe0\x49\x2d\x1a\xb7\xac\x23\x0a\x66\xa6\xd4\x84\x79\x6a\x0c\x7e\xce\x50\x7e\x42\xf1\xc9\x27\xd1\xf4\xd7\x6e\x76\x0a\x20\xc2\x0b\x4a\x9c\xc3\x55\x83\x41\x43\x67\xd7\x55\x1f\x5e\x85\x14\x31\x07\xb3\xbd\x3d\x65\xd6\xd3\x47\xe0\xda\xfa\x3c\x0a\xd1\xc8\x14\x66\xb1\x55\xc7\x53\x2a\xed\xda\xe7\xc9\x83\xa6\x11\x61\x56\x3d\xb1\x9e\xc7\xea\x07\xe5\x13\x43\x5e\xea\xd7\x3d\x84\x91\x9b\x1f\x3c\xb3\xe6\x25\xf3\x40\xc2\xf1\x19\xe1\x68\x4e\xd9\xed\x5c\x02\x21\x2e\x96\x90\x10\x38\xc2\x51\x9a\x40\x74\x57\xca\x72\x70\xb2\xd6\x95\xde\x27\x8a\x12\xef\x99\x6a\xee\x7e\x99\x4a\xb6\x48\xa9\x27\xcd\x45\x22\xd5\x0e\x8b\x70\x94\xb3\x3f\xd5\x83\x5c\xd2\x45\x84\x23\x10\x1e\x23\x1c\x7d\x60\x53\x39\x8f\x46\x58\x07\x41\x44\x91\xa6\x56\xa3\x59\x04\x21\x74\x8a\xe2\xa7\x46\xc9\x30\x52\x73\x18\x15\x38\x0f\x5f\x06\x41\xd4\xfa\x7d\x1d\x66\x5d\x1f\x8c\x76\x7d\xad\x6e\xc8\x9b\x45\x3b\x6c\x16\xd3\x2d\xc6\xb7\x2e\x5c\x1c\xc4\x05\x1d\xd2\x91\x49\xb6\x6d\xbd\xf3\x0c\x45\x98\x7d\x12\x9b\xb5\x43\x1d\x29\x1e\x9f\xb4\x07\x15\xa1\xc5\x24\x91\x93\x79\x2c\xbc\xc9\xf3\x42\x83\xe9\xeb\xf7\x84\xd0\x02\x70\xee\x62\x41\xa4\x92\x6b\x0b\x84\xd5\x34\x69\xc8\x1e\x33\x75\xfa\xc7\x3d\xb3\x7f\x24\x1f\x35\x38\xab\xa2\x78\xef\x26\x72\x45\xf1\xd5\xa7\x91\x7c\x40\x81\x9a\xe8\x3f\xae\xa1\xe5\x36\x0a\x06\x1f\xe7\x11\xf6\xa4\xee\x48\xd9\x7b\x40\x37\x51\xb3\xc8\x20\x40\x72\x92\x41\xf4\xa6\xa1\x95\x9c\xa6\xda\xf1\xf3\x84\x4f\xc3\x9f\x57\x32\x11\x0d\x94\xff\x41\x24\x0b\x4f\x94\x9a\xf8\x35\x59\x8d\xb0\xaa\xdf\x00\x1f\x65\x69\x5e\x9e\x30\x70\xb1\xf9\x48\xf1\xc7\xcf\x98\x2f\x18\x91\x9e\xae\x43\x77\x50\xdd\xb2\xeb\xf3\x8f\x3b\xd9\xa2\xf1\xa0\x8a\xba\x2e\x92\xa9\xea\x27\xf2\x4f\x1c\xb1\x19\x38\x87\xfc\x6f\xbc\x67\x3c\x43\xf0\x53\xd5\x99\xe4\x9f\xf0\x2e\x5a\xa8\x33\x54\x31\x4d\x38\xed\x8a\xfa\x77\xd8\xf8\x98\x44\x29\xe3\x77\xd7\x4c\xa6\x34\x1a\x05\x7e\x26\x95\xf2\x7f\x97\xeb\x89\xf1\xb3\x77\x47\xe6\x9d\x4b\x7b\x32\x13\x94\xfe\x49\xe3\x27\x3b\xe7\x0d\x1b\xda\x99\x1f\xa1\xe8\xdb\x5a\xd1\x02\xe1\xcb\xa6\x23\xf8\x30\xa0\xbb\x24\xc2\x22\x5b\x4a\x3a\xb8\xa3\x58\xe3\xbb\xd8\x3f\x72\xf5\xd7\x1f\x4b\x2a\x1e\xd5\x1f\xd1\x44\x07\x02\xed\x7e\x98\x53\x1e\x69\x5a\x91\x6a\xd6\xf4\x9f\x82\xa6\xe6\x99\x39\x6d\xed\x2f\xc5\x1f\xf5\xdf\xda\x35\x4c\x63\xd2\x44\xfa\x47\x84\xd3\x2c\x51\x34\x6e\x9e\x9a\x5f\xfe\xcc\x35\xcf\xfd\x69\x6e\x42\xa5\xd4\xd1\xdb\xb4\x4f\xe6\x82\xce\x14\xab\x85\xe5\x54\x87\x7b\x5a\x16\x00\x0c\xbf\x1e\xf9\x23\xa6\x74\x64\xe8\x3e\xf9\x6e\x94\xc4\x08\x91\x70\x2d\xa0\x31\x7e\x7b\xc6\xab\x4f\x2e\x96\xaa\x5a\xfa\x40\xb9\xd4\x13\x3b\x49\xd9\xe4\x2e\xfa\xf4\xcb\x51\x27\xb0\x8f\xb9\xea\x74\x72\x06\xcd\xaf\x1d\xc0\xf5\x98\xf1\x87\xec\x0e\x00\x15\x4c\x28\xb1\x3a\x08\x1e\x8c\x43\x38\x8a\xa3\x5d\x1b\x61\x8c\xf0\xd8\x2c\xdf\x25\xac\x35\x9c\x17\x49\xca\x92\x1c\xc5\x91\x2d\xdc\x0b\x3f\x51\x8d\x56\x8b\x09\xb8\x4f\xae\x2f\x0c\x9f\xa8\x82\x7a\xa6\x37\x97\xd3\xdf\xb9\x62\xc2\xf7\xcf\x9f\x67\x11\x3c\x8d\x70\xd4\xd0\x9d\x08\xc7\xcd\xb6\x45\x28\xe3\x61\x36\x08\xb9\x33\xb9\x63\xca\x53\x41\x0b\x84\xf0\xd8\x10\x7c\xb5\x5d\x0d\xb0\x81\xf5\xbf\x79\x6b\x53\xf0\xda\xea\x37\xf5\xb7\xae\xe1\x6d\x68\x58\xdd\x17\xa5\xfe\x53\x82\x5c\x8f\xf0\x58\x6f\xad\x6a\x93\xf0\xb4\xb5\x25\x78\x5b\x19\xd4\x5b\x98\x2f\x11\x42\xf5\x6b\x04\x23\x27\xb8\x3e\x4b\x3c\xd8\xde\x6b\x12\x0d\x4a\xc6\x38\x96\x1f\x9b\x2a\x89\xc4\xdb\xdb\xd2\x40\xc8\x97\x36\xab\xe2\x44\x7a\x23\xd5\x86\x16\x30\x00\xb5\x96\x76\xbb\xd5\xcd\xa8\xdb\x3a\xa3\x8c\xf9\xc2\xb4\x12\x94\x86\xe9\x6b\x69\xa4\x91\x44\x34\xb9\xc1\x1f\x76\x29\xa3\xb1\x99\xe9\x60\xb7\x97\x58\x5c\xdb\x12\x34\x34\x60\xf3\xb8\x6e\xdb\xbe\x8e\x59\x7e\x08\xdd\x33\x58\x52\xea\xd6\xf9\x92\x1e\x7e\x52\x8f\x6b\x1b\xe8\x6f\x1f\x06\x76\xe9\x0d\xaa\x4d\x83\x88\x07\x88\xc1\x15\x7a\x30\xa3\x94\x30\x4a\xf7\xbb\x0a\x39\xa6\x5d\xac\x74\xff\xca\x49\x81\x74\x8b\xc3\x72\x97\x01\xc7\x3e\xba\xd1\x02\x66\x90\xd5\xcf\x35\x6e\xf2\x09\xb9\x2b\x12\xea\x48\x22\x0e\x5c\xba\xd4\xad\x08\x0d\x34\x46\x92\x9e\xaf\x91\xcb\xfe\x6a\x0c\x0c\x66\xf6\xb0\x49\x3c\xa2\xa7\xd0\x61\x32\x19\xce\x84\x13\xd2\xdf\x4f\xbc\x4e\x34\xd9\xd9\x41\x6c\x16\x83\xa7\x20\x8c\xf2\x34\x13\x30\x45\x31\xc7\x0c\xcb\x61\x32\xc2\x14\x0b\x97\xf4\xa8\xdf\xf1\xdb\xaa\x72\x74\xd4\x29\xc0\x9d\x3c\x21\xa1\x34\xee\x0c\x97\x77\x33\xfc\xb2\xdb\xad\x6c\x18\x2b\x72\x86\xed\xee\x32\x1e\xa9\x55\xaa\x9e\x5a\x5f\xd2\x1b\x9d\xb8\xb8\xd6\x9f\xd5\xaa\xd4\x1f\xd4\xd2\xa1\x6c\x29\x23\x4d\x37\x70\x8e\x55\xa9\x66\x1b\x74\x58\x2c\xbf\x62\x4a\x84\x3d\x52\xc7\x29\x0a\xb2\x4a\xf5\x03\x02\xea\xdd\x2c\x6f\x6e\x52\x9a\x7b\x6f\x11\x38\x39\x8f\xb5\x24\x69\xed\x4a\xf6\x16\xac\xc9\x1b\x33\xb2\xcd\x57\xab\x68\x9c\xd3\x74\x16\x11\x42\xc0\x83\x44\xa7\x7c\xee\x76\x59\xb7\x4b\x2b\xd5\xc4\x08\x03\x1a\xb6\x54\xaf\x72\x99\x2d\xde\x8a\x6c\x91\xdc\x26\x7a\x4a\x70\x95\x45\x7a\x42\x6f\xdd\x01\xaa\x3d\x56\xde\x10\x21\x11\x52\x8b\x07\x66\xe9\x35\x2f\xd1\xeb\xd2\xe6\xf3\x00\x89\x08\xa7\xe4\x09\x9e\x1b\xe5\x51\xae\xc5\x3a\x90\x45\xb2\x00\x18\xee\xbe\x37\x4b\x21\xce\xff\xcc\xa1\xa7\x20\x75\x19\x33\xbe\xfb\x19\xef\xb9\xd0\x4f\x93\x0e\x72\x7c\x4b\x39\x15\x89\xa4\xd7\x6e\xf5\xe2\xd4\xc2\x8d\x20\x35\x29\x80\xe8\x54\xfd\xa6\x0a\xff\xc7\x2d\x00\x60\x65\x9f\x35\x20\x83\xd1\x9e\x27\x14\x92\x05\x3f\xae\xb3\xd8\x56\x55\x14\x58\x09\x7b\x7f\x01\xff\x37\xa2\x70\x89\x85\x9a\xbf\xbe\x07\x71\x32\x24\x7c\xc5\x99\x92\xc8\x6e\x42\x53\xb4\x8d\xc9\x6d\x85\xcf\x54\x5d\xa1\x6c\x67\x96\x58\x96\x97\x58\x94\x96\x98\x37\x4f\x15\xef\xd9\xe9\x7e\x77\xf9\xda\x58\x46\x00\x80\xca\x34\x55\x9f\x94\xca\xf0\x0f\x05\x7d\x9d\x25\x53\x90\x6b\x43\x09\xbc\xfd\xb4\xd0\xd2\x94\x4b\xf6\x56\xad\x47\x27\x01\xf5\xc0\x08\xa5\x91\xfb\x33\xbb\x52\xaa\xde\xcf\x26\x41\xcb\x32\x6f\x5a\x9e\x29\x49\xfa\xfb\xf2\x5b\xeb\xa6\xbd\x2f\x2d\xfa\xa2\x20\x36\x67\xb9\xee\x92\x70\x1b\xac\xb0\x9c\x23\x98\x2a\xb5\x2a\x83\xe8\x7f\xa9\x1b\x47\x49\x11\xdd\xec\x5a\xef\x44\x9d\x9f\xe7\x94\x77\xc2\x7c\xb1\xf0\x36\xa7\x32\x0e\xae\x0c\x46\x43\xeb\x9d\x1a\x93\x7b\xc8\xf9\x2b\xbb\x5d\x48\xc0\x6d\xba\x8e\x9e\x24\x91\xbd\x3c\x65\x13\xeb\xc5\x35\xbc\xa5\x23\x6d\xa4\xd4\x55\xfa\x1b\x2a\x96\xbd\x7c\xce\x66\x32\x46\x2e\xa7\xf0\xd0\xd6\xb3\xbb\x37\xea\x00\x28\x27\xcb\x7f\xf2\x8c\xe0\xc0\x57\x63\x08\x5e\xf6\x16\xd9\x22\x46\xda\x1e\x99\x1b\xf4\xb8\xf0\x83\x3b\x8a\x30\x9c\x33\xce\x5a\xe1\xbe\x30\x74\x74\x47\xc3\x62\xe6\xa1\xef\x1a\xf6\xef\x8c\x04\x7d\x47\x6b\x0f\xf3\x08\x4b\x1d\x77\xf2\x54\x3f\x9a\x61\xf9\x4c\xf3\xdf\xf5\x2d\x74\x22\x1f\xf2\x60\xac\xeb\xd2\x0a\x74\xbb\xac\x3c\x0d\x36\x35\x35\x0c\xd1\x7a\x10\xe4\x98\xeb\xb9\x40\x85\x01\xf9\x2a\x87\x18\x5d\x52\x7c\xf9\x1c\xa5\x87\xd9\x9e\xfa\x32\x1f\x2a\xfe\x2f\x2b\x8a\xff\x9a\x8a\x5f\xab\x19\xf2\xc8\x44\x81\x5e\x57\x2d\x7f\x27\x87\x47\xdf\x8f\xcf\xce\x23\x84\x8f\xe8\x86\x08\x0b\x6d\xcd\x36\xee\xa7\x32\xb9\x25\x54\xbb\xd2\x2b\x7a\xba\xa6\x23\xb2\xdd\x5f\x97\x69\x76\xad\x17\x5e\xc5\x7e\x2d\x3f\xc1\x7e\x5d\x0e\xc9\x78\x43\x4b\xb7\x8a\x26\x1f\xe8\x35\x86\xe4\x6e\x97\xaa\x91\x14\xd6\x94\xfb\x0e\x6a\x5b\xad\xa2\x7f\xdd\xd1\xc7\x48\x9b\x7b\xbf\x77\xcf\xd8\x94\x72\xc9\xe4\x63\xa4\xcd\xb9\xbf\xb7\xce\x9f\xcb\xe8\x68\x80\x53\xcc\x14\xde\xd1\xc7\xd3\x4c\xd8\x14\xb7\x76\xe5\xc8\xda\x59\x64\xf9\xc9\xfd\x42\x3e\xd6\xe7\x11\xa4\xc0\xde\x3d\xbd\xcf\x4e\xb3\x46\xe3\x9e\x4e\x41\x4a\x3f\xca\x16\x4f\x59\xdd\x37\x7b\x5a\xe8\xbe\x39\x69\xc7\xf4\x4d\x6d\x1a\xf1\x9d\xe7\xc1\x4e\xeb\x6e\xf6\x16\x2c\xe0\x69\x26\x62\x81\xac\xe8\x6b\x7a\xa4\x9e\x64\x44\x82\x24\x2b\x50\x09\x6a\xd8\x56\xbe\xb3\x83\xc1\xed\x20\x33\xaa\x67\x8e\x55\xd9\x01\x33\x61\x37\xf8\x6c\x9d\xa3\x8c\xcb\x1d\x66\xe5\x10\x56\x72\x9b\x54\xef\xad\x53\x46\x02\xa9\x2e\x24\x66\x9b\x3d\x4e\x66\x22\xbb\x6f\xcc\x02\x69\x0f\x05\x3b\x10\xc8\xb7\x75\xf0\x92\x02\x85\xa8\x66\x00\xc6\x57\x3b\x2e\xa9\x4a\x4e\x35\x54\xa4\x62\xdb\x8d\xf5\x0d\x47\x1e\xab\x67\x1d\x9c\xac\x70\x41\xe1\x96\x07\xaa\xda\x63\x51\xf3\x91\xb2\x2b\xd1\xba\x89\x60\x16\x00\xef\x46\x14\xf1\xef\x14\xe1\xe3\xff\xa1\xd3\xfb\xac\x31\x83\x18\xe0\xe1\x92\xfd\x0c\x58\x17\x66\x35\x03\xe7\xeb\x67\xc0\x49\x97\x76\x0e\xb2\xd2\x1c\xa8\xf7\x76\x0e\xee\xe8\x63\x4e\x24\x36\xae\x63\x39\x11\x38\x6b\xf5\xfa\x31\xf3\x70\xc6\xa7\xf4\x63\x2b\x7d\x84\xa9\x21\x21\x83\xad\x08\xbc\xcc\x75\x8c\xa6\xb5\x9a\x50\x77\x17\x65\x64\x38\xc2\x19\xe9\xef\x67\xdf\xf2\xfd\xcc\x4a\x2f\x39\x5e\x12\x31\xcc\x46\x9d\x9c\xd0\xe1\x72\xa4\x3d\x53\x59\x7e\x2d\x92\xc9\x9d\x12\x2c\x63\xa4\xdd\x9c\x03\x47\xf2\x16\xff\x58\x25\x9a\xc7\xe5\x2c\x2e\x39\x5a\xad\x8c\xef\x2d\x24\x27\x32\x11\x6f\x39\xd2\x50\xc0\x9b\xea\xcc\x71\x34\x1c\x45\x08\x21\x6c\x00\xd1\xf3\x92\x43\x27\xac\xbc\xc0\x0c\xf3\x4f\xd8\x5a\x4e\xef\x89\xb9\x9a\x0f\x3b\x29\x38\x21\xdb\x7b\x6b\x37\x9d\xaa\x22\x4e\x48\xb2\x5a\xd9\xc9\xfe\x8e\xbc\x40\xdd\xae\x01\x66\x90\xae\x93\x14\xe1\x6c\x67\x47\xed\xc8\x3e\xf8\x22\xbc\xa4\x83\xe4\xc0\xf5\x57\x23\x27\x4a\x7d\x78\x9c\xd1\x58\xff\x2a\x36\x3a\xac\xaf\xdb\xbc\x9a\xac\x60\xf7\xf2\x75\x3c\xdf\xb2\xf2\x3c\xdc\xe8\xaf\xd7\x9c\x53\x58\xd8\xb3\xde\x00\x4e\xd8\xb3\x4a\xd0\x7c\x99\x4a\x7b\x56\x99\x93\x4b\xd4\x4e\x2e\xba\x66\x4f\x0f\xaf\x40\xe6\xd0\x55\xcb\x4c\x8c\x62\x4d\xc8\xea\x4c\x82\x38\x0b\x33\x70\x3f\x0f\xd3\x8c\x53\x35\x9b\x65\x1a\x63\xa8\xdb\x7d\x01\x79\xdd\x8c\xf0\x18\x90\x06\xb7\x13\x7d\x4a\xcd\xaf\xa2\xf3\xf9\xa7\xe9\x9a\xd3\xd2\xce\x8f\x3d\x2f\xf5\xfc\x54\xcf\x4b\x7b\xbd\xd2\xf3\x05\x92\x39\x0c\xaa\x76\x7e\xb2\xca\xf9\xa9\x16\xc2\xaa\x8b\xec\x09\x0a\xcf\x12\xc2\x81\x82\xda\xcf\xd0\x70\xb9\xa8\x9d\x5c\x38\x58\x13\x73\xb0\x32\x7d\xb0\x66\xf6\x60\x3d\xfd\x52\xcf\xcd\xcf\x0e\xca\x68\x13\x55\x7a\x2e\x28\xa3\x4e\xdc\xa1\xce\x18\x68\xfa\x35\x45\xf8\xcf\xff\x4b\x87\x30\xdc\xdb\xb4\x45\xed\x87\xfd\x91\x1b\xcc\x4b\x4a\x9e\x0c\x65\x36\x28\xd1\xfb\x05\x56\x8b\xda\x86\x3b\x5c\xe0\x77\x9b\xe5\x50\x41\x67\x81\x10\xfa\x36\x91\x73\xbb\xb3\xa1\x33\x1b\x82\x4a\x9c\xfc\x5f\xf1\xfe\xf6\xd7\x01\x57\x8d\x01\x8c\x6f\xdb\x7e\xc0\x09\xda\x1d\xb9\x05\x9d\xd9\x1d\x65\x2b\x54\x3b\x2a\x08\xcd\x2a\x85\x55\xf0\xc0\xdb\x3a\x88\xfe\xe0\x08\x72\x11\x83\x9b\xd3\x18\x32\x19\x72\x69\xbe\xaf\x04\x48\x09\xcc\x74\xa2\x63\x42\x48\x4c\x89\x92\x69\xec\x1d\x61\x3b\xb8\x23\x78\xc7\x52\xff\xb4\xce\xa6\x78\xf3\x51\xc8\xd1\xc1\x39\x2d\x9f\xf8\x31\x0f\xb9\x6a\xbc\xdd\x47\x68\x90\xf4\xbe\x3f\xbc\x1a\x9f\x1f\x5e\x9f\xbd\x3f\x19\x5f\xfd\xfa\xe6\xe5\xc5\xeb\x6e\xf7\x0f\xaa\x8a\xff\xa9\x8b\x57\x4a\x21\x34\x78\x4f\x83\xda\x83\x63\xb1\xfe\xe5\x33\x7a\xa0\xf8\x1f\xcc\xb3\xf3\x5e\x6d\x21\x60\xc5\x6d\x39\x8d\x0d\x1d\x43\x39\x3d\x9f\xef\x4b\xa5\x2b\x3b\x98\x9a\x8f\x62\x19\x94\x53\xdb\xe4\xd9\xcd\xa9\x8f\x83\xd6\xde\x84\x65\xdb\x1b\x73\xa5\xcc\x11\x56\xf2\x6b\xb4\x2e\xbf\xb4\xdb\x8d\x29\xd9\xde\x2b\x69\x57\xcc\x46\xe9\x18\xc8\x33\x69\xa0\xcd\xe0\x66\x68\x11\xc7\xe8\xc1\x2b\x3a\xf8\x89\xc6\xbf\x52\x83\x61\xf6\x2f\x6d\x16\xb6\xef\x7f\xa6\xf6\xb1\xbd\x3a\xda\x37\x3f\xd1\xf8\x47\x5a\x43\x30\xfb\x89\xc6\x5f\x51\x08\x83\x32\xac\xfa\xfb\xff\xf1\x7b\xdb\xef\x6c\x59\xd9\xd9\xa2\x1c\x33\x56\x09\x5d\x6c\x94\x17\x85\x91\x17\xed\xa6\x15\x0d\x1b\x56\x04\x92\x71\x70\x55\xb5\x9b\xc1\xf6\xb8\xbc\x79\x05\x3a\x38\xa3\xf6\x6e\xc5\xd1\xa0\x61\x23\x0b\x74\x70\x1c\x7e\xd2\xb6\x63\x05\x3a\x38\x0d\xbf\x7b\x4f\x83\xda\xc3\x5d\x0a\x6f\x5f\xd2\xff\xaf\x6d\xbc\x12\x5d\x54\x36\x99\xc5\x0f\xfc\x4b\xb6\x11\x75\xdb\xc8\xab\x8b\xde\x6f\x88\x17\xb0\xf7\x02\x1f\x28\xf0\xc7\x86\x12\x35\x29\xd7\x17\xfd\xb9\x1a\x63\x60\x00\x7c\x45\x00\x1a\xf2\x8a\x56\x24\x1c\xf7\xe6\xd7\xf2\x9b\x1f\xc1\x26\xea\xde\xfe\x48\x03\x38\x46\x0f\x38\xac\xd1\x17\x75\xc8\xb2\x63\x52\x7a\xf2\xf8\x52\x11\xb3\x7b\xea\x81\x85\xcb\x93\x07\x94\x7f\xbb\x64\x53\x13\xb9\x58\xf8\x36\xbf\x0a\xe3\x33\xdc\x7a\xca\xea\xf0\xc2\x48\x79\x58\x03\x57\xc1\x4f\x34\x48\x49\x51\xd4\xcc\x34\x25\x8b\x0e\x35\x3f\x71\x42\xa4\xba\xbd\x56\xc3\x34\x92\x83\x58\x3d\x27\x7d\x9c\xa1\x81\xfe\x73\x67\x27\xc1\xd9\x4e\x74\x43\x5f\xfc\xfb\xbf\xff\xfb\xff\xfe\xf7\xdd\x9b\x9b\x1b\xba\xfb\xcf\x7f\x7b\xd1\xdf\xfd\xff\xcf\x26\x37\xbb\x2f\xf6\xbe\xa1\xb3\x7f\x7e\xf3\xcd\x64\x92\xbc\x88\x76\x12\x54\x00\x3b\xfb\x65\x93\x16\x34\x37\x78\x52\xeb\x98\xdf\x1a\x85\x6e\xb4\x13\xd4\xa2\xf6\x83\xc6\x7e\x6e\x53\x8c\xda\x9a\x62\xab\xe9\x2c\x81\x5a\xfd\xa2\x59\xda\x0f\x14\xff\x46\x31\x95\xe4\x29\xea\x46\x83\xa8\x9b\xdc\x2f\xf6\x23\x1c\x7d\xab\xfe\x4e\xa5\xfa\xf3\x3b\xf5\xe7\xad\xfa\xf3\x1f\xd1\x3f\x06\x51\xf7\x8f\x65\x06\xcf\xff\xa1\x9e\xff\xaf\x8f\x2f\xfe\x5d\xfd\xf8\x4f\xfd\xe3\xdf\xfa\xea\x07\xd1\x3f\xbe\x39\xde\x8f\x0a\x2c\x25\xf9\x7a\xd8\xfd\xf6\xbb\xe8\x1f\xff\x49\x46\x5f\x63\x51\xfa\x79\x1b\xe4\x21\x97\xa1\x64\x2b\xd5\xad\xd3\xbd\x63\xb2\xa2\x84\x25\x84\x1e\x50\x12\x45\x83\x3a\x52\x36\x9c\xbf\x8e\x22\x11\x56\xbc\xe7\x17\x5a\x42\xd7\xc9\xaa\xd5\xb5\xeb\x74\x1b\x37\xb6\x9e\x76\x5f\x5f\x12\xd6\xf7\x1b\x5d\xad\xe2\xdf\x68\xab\x67\x69\xa2\xce\x9c\xdf\x68\x6f\xae\x0f\xdb\xdf\x0c\x11\x4c\xb2\xd4\x57\x08\x50\xdc\x86\xb8\xe1\x9e\x67\x08\xa0\x06\x4f\x08\xf1\x45\x3f\xd0\xde\x22\x11\xb9\x1a\xa3\xab\xcb\x1d\x6b\xf2\x20\x1a\x44\x03\xa9\x73\x2f\x49\xd2\xc7\xa9\xdc\xa4\xaa\x9f\x92\xa5\xb4\x97\x41\x13\x97\xbe\x8e\x60\x4b\xea\xf6\x06\x5d\x83\x22\x54\x93\xf5\x8a\x54\x5d\xcd\x1e\x1c\x44\x8f\x26\xe7\x3a\xe9\x6b\x06\x1f\x5d\xd2\xd9\x96\x21\x7f\x36\xf5\xe6\xb3\x40\x0c\x70\xc8\xe5\x3b\xd1\x56\x6c\xda\x9b\xa2\x08\x3c\x78\xfd\xab\x81\xad\x45\x77\x4d\x7b\xf4\xca\x40\xd1\x6d\x84\xa5\x89\x34\x34\x14\xe8\x08\x05\x5d\xd0\x44\xae\x56\x2d\x07\x9c\x3e\xfd\xe9\xce\x1e\x02\x78\x2b\x1d\xcf\x52\x04\xe9\xe0\x64\x89\x09\x4f\xa4\x56\x00\x42\x8c\xaa\x1a\xe5\x54\xfe\xdd\x41\x90\x61\xf0\xbb\x4e\xda\xdc\xb2\x6e\xb9\x4c\x26\x77\x70\xa7\x7c\xec\x5d\xa9\xbf\x11\x9e\xb7\x91\x8d\x63\x6d\xc9\xe4\x0e\x60\x77\xa6\xd2\xea\x11\x66\x79\x09\x34\x4e\x3f\xcd\x32\xa9\x1f\x5f\x51\xf3\x21\xcf\xa6\xb4\xf4\xe5\x3a\x6a\xbb\xa1\xb7\x8c\xd7\xe8\x08\x20\xe7\xb5\xf5\xa7\x31\x2a\xd8\xb7\x63\x40\xe5\xaa\x3e\x69\x12\x3f\xdd\x64\x4b\x3e\xcd\xad\xc3\xe8\x2c\x1f\x98\x4e\x3a\x75\xb9\xc6\x55\x86\x70\xb6\xd8\x5a\x0c\x29\x97\x54\x63\x0b\xc8\x26\x10\x88\xda\x37\xed\xf0\xf0\xae\x8b\xa7\x90\xb1\xc8\xe7\x0e\x90\xaa\x5c\x43\xa8\x51\x63\x29\x3d\x08\x2b\xb5\xd3\x8f\xcc\xcc\x4a\x90\xb4\xae\x8a\xde\xf1\xd8\xa3\x1f\x17\xe0\x92\xe9\x96\xcd\x18\xc8\x70\xf4\xf2\xdd\xab\xc1\xd6\x3d\xcb\x73\xc6\x6f\xb7\x04\x9d\x45\xc8\x6e\x65\x33\xd9\xd9\xfd\x3d\x93\x6b\x97\x23\x59\xc8\xa5\x68\x35\xde\x99\xd7\x97\x74\x96\xc7\x9e\x3e\xa0\x64\x9a\xdd\x5a\x78\x7f\x9d\x27\x00\x28\xac\x51\xf6\xb3\xf7\x01\x20\x42\x4b\xdc\x71\x35\x9d\x58\xb0\xcd\xdd\x94\x81\x6f\xd8\xba\x1c\xe1\x06\x67\x1e\x30\xd7\x14\x25\x76\xbb\xd1\xae\xcc\x16\xbb\x29\x7d\x30\x79\x75\x21\x54\x4d\xd5\x52\x49\x5e\xe6\xf7\x7a\x14\xed\xcc\xc0\xf3\x0b\xbf\xf8\xff\x49\xb4\xe3\x4a\x78\xaa\x06\x5d\x70\xe9\x33\x6b\x7e\x47\x58\x6a\x76\x12\xfd\x3f\x3c\x42\x9a\x97\xe6\x65\x8e\xcb\x66\x71\xdf\x3a\x3a\xe9\x19\xc8\xd9\x9f\x14\x92\x92\xef\x6f\x07\x4f\x8d\x5e\x28\x46\xfb\x28\x78\x0a\x26\x66\x55\x2f\x90\x69\x9d\x7a\xcd\x57\x16\x4f\x58\x02\x51\xd5\x56\xbc\x52\x97\x99\xde\x66\x6b\x4a\x85\xe0\xf4\xb6\x6c\xa4\x38\x48\x4e\x04\x15\x06\x7b\xaf\x0d\x25\x4c\x77\xc1\x38\xd8\x18\xbc\xca\x14\x00\x29\x3d\x5d\xeb\xcd\x2f\x10\x96\x07\xa5\x9d\x23\x91\x7e\x9f\x4c\xa7\xb1\x30\xde\x03\x40\x89\xe6\x49\x40\xc9\x8a\x54\x5b\xba\x80\x37\x19\xe3\xb8\xf3\x15\x80\xf1\xa2\x0e\x3b\x30\x56\x39\x57\xfd\x79\x36\xa5\x16\x56\x7b\x57\x75\x6f\x10\xed\xf0\x1e\x9b\x62\x86\xd0\x80\xf6\xa6\x34\xa5\x92\xc6\x1c\x99\x8c\x6e\xa5\x72\x8d\xba\xf3\xca\x38\x41\x6d\x0e\xa1\x91\xcc\x44\x59\x42\x8e\x59\x40\x35\x48\x88\xf0\x00\x08\x39\x11\x30\x27\xd6\x93\xcb\xb4\x63\xb9\x57\x2c\x5c\x5e\x54\xf3\xe6\x25\xb0\x1e\xf5\x7c\x42\x6a\x7b\x3b\x77\x19\x0f\xd9\x74\x40\x75\x5c\x10\xd7\xe9\xfb\x98\x3a\xc9\xf2\x41\xe6\x55\x73\xa6\x0b\x83\x04\x3b\xb8\xfe\x25\x36\xec\x39\xc5\x16\xe6\x6d\x30\x29\x82\xf1\x37\x26\xd2\xb0\xe7\x88\xad\x26\x40\x4c\x56\xfb\x68\x46\x85\xa0\xa2\xe7\x43\x24\xb4\xa3\x50\x50\xab\x1e\x53\x73\x04\xab\x27\x63\x6a\xd8\x6e\x85\x7a\xf5\x43\x97\x4d\xf1\x49\x43\x23\xd9\x50\x3c\xd9\x2b\xfd\x8e\x11\x9e\x59\x04\xde\x81\xec\xb9\xbf\x63\x84\xd3\xc4\x3d\xb6\x7f\xc6\x4e\xab\xb3\x68\x95\x1a\x5a\xe0\x3c\xb0\x08\x20\x06\xc0\x21\x4e\x7b\xd6\x11\xe3\xe3\xc7\x88\x18\x4e\x7b\x17\x3f\x9f\x9f\x5c\x8e\xbc\xbe\x1a\x60\x59\x09\xc3\xbc\xc7\xf2\x00\x4a\x97\x30\x87\x85\xdd\x00\x70\x5f\xfe\x16\x73\x8d\xe4\x9d\x3d\xd2\xa9\xf3\x62\xc9\xc9\x70\x84\x6b\xd3\xab\x04\x3c\x0f\x22\x1f\x4b\x92\x38\x61\x29\x9a\x65\xd9\x4d\x22\x06\x37\xc9\x9f\x4a\x90\xb6\x3f\xc1\xe9\x0d\x79\x59\xfa\x34\x13\xef\x2e\x5f\x93\x44\x76\x00\x3b\xb6\x84\xa7\x65\x84\xe7\x77\x97\xaf\xd1\x0f\x94\xbc\xbb\x7c\x8d\x6b\xe5\x72\x5d\xee\x29\x84\xb2\x35\xc5\x34\xb5\x84\x38\x5c\xdb\xe5\x57\x3d\x13\xb4\x89\xe4\x5c\x64\x1f\x40\x34\x3c\x11\x22\x13\x71\x74\x94\x2d\xd3\xe9\x16\xcf\xe4\xd6\x8c\xf1\xe9\x16\x44\xeb\xa9\x6e\x6c\x29\xf1\x5d\x51\xcc\x3d\x9d\xcc\x13\xce\xf2\xfb\xad\x59\x26\xe0\xcd\x55\xc2\x99\x34\x08\xcd\x11\xea\xfc\x40\x49\xb9\x91\x38\x5a\x8a\x14\x32\x02\xd4\x46\x50\x14\x3a\xd9\x79\x92\xe7\x54\xc8\xeb\xb9\x5a\x0c\x26\x75\xde\x84\xa9\xd6\x60\x9b\x54\x16\xc7\x27\x2f\xdf\xbd\x1a\x5f\x9e\x9c\x1f\x9f\x5c\x8e\xaf\x2f\x4f\x4e\xba\xdd\x98\xf7\x74\xc6\x7c\x7d\xf6\x5e\x0b\x4a\x81\xa1\xce\xe5\x3a\xac\xb5\xb5\x40\x1b\xde\xfe\xbe\xde\x82\x59\x19\x48\xb3\x3b\x0a\xef\xc9\xac\x09\xfa\xa8\xe9\x73\x16\x82\x27\x28\x0a\x0e\x00\xf1\x1b\x6d\x43\xc6\x11\x48\x7d\x6b\x13\x08\x9d\x29\x9e\x94\xa6\x16\xd5\xdc\x97\x0b\xcc\x9e\x21\xb1\x6b\x07\x5d\x2b\x6e\xb7\xd4\x12\x62\x73\x61\x51\x6a\x4f\x07\x7b\x7f\x61\x73\xe5\x4a\x1a\x5a\x9b\xb2\x69\x93\x50\x48\xed\x46\xd5\x78\x20\x35\x91\xbb\x9d\x6c\xa0\x67\x15\xba\xd1\xe5\xad\x7e\xb8\xc2\x73\xfa\x38\xec\x38\x7c\x19\x60\xa1\xa8\xd6\xeb\x22\x66\x70\xe6\x37\x30\x94\x4e\xdb\x0b\x75\x36\x7b\x54\x91\xfe\xbe\xf0\xde\xf3\x62\x67\x07\xc9\xa1\x18\xf9\x71\xc3\xb5\x91\x96\xd1\x6d\xee\x99\x0c\xfb\x36\x63\x3c\x49\xd3\xc7\xa7\xa6\x61\xed\x15\x9f\x38\x47\xba\xfa\x78\x2d\xa6\x4a\x54\x29\x14\x55\x31\x56\xd8\x2c\x6e\x6b\xb6\x1c\x1a\x51\xa9\xa8\x53\xe7\x54\x09\xff\x87\xdc\x4a\x26\x13\x9a\xe7\x5b\xf0\xf5\x96\x16\x49\xb6\xa4\xa0\x74\x2b\x5b\xca\x9c\x4d\xe9\x56\x36\xdb\x92\x73\xba\xc5\x78\xae\x0e\xc2\x4c\x6c\xc5\xf5\x96\xb7\x66\x69\x72\xbb\xc5\xf2\x2d\xeb\x7a\x8a\x22\x64\x81\x5f\x66\x21\xb0\x3a\xea\x94\x71\xd6\x17\x3a\x92\xe2\xbe\xfd\xe2\xb9\xee\x9e\xb8\x10\x54\x9d\xaf\x87\xe2\xb6\x29\x47\x96\x3d\xe6\xa7\x6c\x7a\x14\xaa\x67\xca\xe8\x0a\xc1\xb5\xeb\x35\xc4\x26\x36\xbc\x3e\xaa\xa1\x40\x37\x5d\x05\xdd\xe7\x7a\x4b\xb6\xd6\xd6\x84\xf1\x50\xd6\x3a\x3f\x04\xba\x26\x97\x8a\x17\xe4\xb8\x9d\x68\x10\xed\xd0\x9e\xbe\xb0\x14\xc5\x1a\x8c\xfc\x7b\x3d\xb3\x8f\x92\x3c\x4d\x1f\x79\x72\xcf\x26\xba\x43\x00\x19\xa0\x1f\x5c\x27\xb7\xea\x57\x30\x8b\xea\xa7\x26\x4b\xf8\xd5\x46\x68\x3e\xf0\x11\x92\x74\x6c\xef\x61\x13\xd8\x60\x7f\x1a\xd2\x4e\xd2\x94\x8a\xa0\xc1\xab\x49\xb6\x80\xcc\x01\x41\x86\x8f\xd6\x36\x74\x1d\x67\x56\x4e\xdc\xee\x17\xf8\xf6\x4b\xb5\x27\x9f\x85\xac\x54\xd7\x35\x04\xfe\x6e\x84\x9b\xc5\xd0\xf1\x4b\x19\x01\x99\xb3\x53\x7a\x4a\x32\xa8\x3f\x21\x4f\x39\x4d\x67\x83\xdf\x1c\x3e\x76\x6f\x92\x71\x29\x32\x35\x4b\x08\x87\xa2\x15\xc5\xc0\x78\xd8\x9f\x10\xab\x75\xdf\x1b\xfb\x44\xb3\x10\x5a\x8d\xec\xed\xa1\x67\x13\xa8\x3d\x48\xf0\x65\x59\xc7\x1d\x9e\x12\xf3\x35\x31\x19\xc9\x2d\x19\x61\x5a\x67\x55\xba\x87\xb6\x04\x7e\xd2\x90\x14\xb6\x35\x28\x6f\x5f\xea\x0b\x06\xc8\xf7\xb3\xde\xc9\x9b\xb7\xd7\xbf\x8e\x0f\x2f\x5f\x5d\x79\x11\x5f\x4b\x57\x5e\xce\x37\xc9\x49\xf4\xac\xe7\x01\x98\xda\x92\xe4\xdd\x6e\x6e\x52\x06\xfa\xbf\xb4\x60\x8a\x53\x0f\xb5\x56\x7a\xa1\x06\xbd\xec\x76\x97\xdb\x84\xa4\x7a\x55\x26\x24\xc5\x53\x32\xe9\xdd\x67\x4b\x2e\xdf\x66\x8c\xcb\x4e\xd2\xa3\x90\x06\x8f\x3c\xf9\x87\x83\xe9\xda\xa1\xeb\x02\x76\xe8\xfa\x97\x19\xfa\x74\xdd\x70\x27\xf5\x91\x16\xed\xcd\xd8\xfa\xc1\x85\x7d\xd7\xa7\xc1\x33\x4b\xe4\xe7\x56\xd8\xfb\x4a\x78\x7b\x0a\x49\xc8\x37\x2b\xdd\x65\xa8\x70\xfe\x71\x89\x41\xfd\xaa\xb2\xa5\x86\x1b\x54\x2f\xc9\xf5\x57\xce\xfa\xf9\x34\x4f\xf8\x34\xd5\xcd\x41\xea\xcd\x18\x61\xed\x21\x7e\x0d\xc9\x40\x64\x2f\xf8\x55\x98\x96\x8e\x1a\x53\x10\xb9\x9d\xfa\x28\xcd\x77\x57\x34\x9d\x35\x7b\xbe\xa8\xed\x62\x3e\xba\x4e\x1a\x8c\x25\x5b\x6d\xb4\x7e\x50\x43\x72\x1a\x2c\x7b\x47\x17\xe7\x57\xd7\x87\xe7\xd7\xe3\xeb\xc3\x57\x46\x30\x6a\xe6\xfb\xc6\x34\x69\xb7\x60\xbc\x56\x86\xa6\xbd\x60\xe3\xd6\x56\xd9\xb5\x01\x95\x62\x6a\x88\x4a\x89\x72\xcf\x2c\x66\xc9\xd0\x94\x7e\x5e\x19\xb3\x6b\x25\x42\x2d\xc0\xb5\x9f\x3d\x20\x63\xaf\xb5\x4d\x3c\x7f\x48\xae\xa0\xfe\x7c\xd3\x68\xec\xe7\xc8\xca\xb0\xcd\x87\x2a\x2c\xd5\xff\xec\xd5\xb9\xa5\xf2\xd8\x25\xbf\x6a\xda\x07\xad\x44\xfe\x64\x24\xd9\x50\x3c\x5c\xdf\x8b\x40\x43\x1c\xd3\xe7\x0f\xb8\x54\xec\x99\x0b\x58\x2e\x63\xa8\xa5\x28\x06\x06\x48\xad\x88\xef\x25\xc2\x37\x12\x2e\x9c\xb7\x12\x8f\xab\x8b\x5a\xc1\xd7\xbb\x91\x36\x7c\x07\x4e\x54\xe3\xc0\x62\x32\x72\x11\x19\x98\x60\x3e\x48\x2b\x35\x9e\xb4\x5a\xc1\x7c\x38\xa0\x51\xde\x07\x99\x7f\x74\xcd\x2e\x86\xc6\xaa\xd9\x0d\x72\xa6\xf6\xa9\x37\x9c\x41\x10\xe3\x17\x35\x4f\xf2\x9f\x45\xb2\x58\xd0\xa9\x95\x31\x99\xa9\x46\x49\xf7\x97\x74\x66\x32\x54\xb4\x3c\x52\x75\x97\x92\x5b\x80\x3b\x7b\x7f\x10\xa6\x81\x10\x01\x92\xb4\xc8\x32\x09\x35\x00\xd0\xa0\xc4\x74\xad\xa7\xcd\xb4\x7a\xfb\x2b\x79\x54\xb8\x81\x5a\xfd\x7a\x30\x19\xda\x21\xb5\x74\x09\xd5\xa1\x91\xec\xf6\x96\x8a\x38\x0a\xd6\xd8\x8c\x1b\xb4\x14\xa5\xf7\x47\x29\x4d\x84\xa6\x8b\xc8\x46\x8c\x35\x42\xc3\x51\xd4\x11\xda\xb3\x7c\xde\x9b\xa8\x42\xe6\x8d\xfa\x08\xc5\x02\x5c\xf1\xcc\x9b\x4a\x39\x54\xc8\xa6\xbb\x60\xa8\xcf\xb6\x2b\x16\x4e\x82\x85\x2c\x75\xab\xe9\xfc\x9b\xfc\xfa\x7e\x90\x55\xd9\xfc\xa2\x6c\xe1\xa3\x1a\xa1\x32\x30\x3c\x5f\x95\x3e\x00\x08\xba\x1c\x34\x57\xc3\xfe\x48\x91\xb2\x8d\x51\xc3\x7b\x41\x80\x1b\x3a\xd0\xf5\x0e\xfb\x23\x34\x30\xf0\x98\xb0\xa6\x1f\x25\x3e\x94\xf8\xae\xf9\xc0\x06\xaf\x97\x8b\x59\x1c\x0d\x22\x70\x89\xda\x85\x2a\xcd\x35\x70\x48\x31\xc5\xdb\xfd\x51\xc7\x86\x4c\xe4\xcb\x1b\x6d\x5b\x56\x03\x47\x80\x61\xef\x1f\xc9\x1d\x87\x45\x3b\x54\x5b\x63\x7b\x6f\x54\xe0\xb7\xb2\x26\xf6\x7a\x87\x0b\x3e\xec\x8f\x70\x42\xf8\x70\x6f\xd4\xe1\xc3\x17\x3a\x64\x9e\x4d\xd5\x50\x13\x13\x49\x50\x4a\x82\x90\xa1\x4e\xc9\xb8\x9f\x77\xbb\x71\x4e\xa4\x8d\x89\x3e\x9b\x22\x9c\x93\x75\xa8\x98\x39\xc2\xc0\x14\x58\x2f\x0f\xa1\xfc\x54\x9b\x38\xc7\xdb\x7d\xac\x53\x77\x82\x11\x9c\x64\x7e\x72\x7a\x11\xfa\x6e\x77\x0f\x4f\xc8\xf2\xe0\x4a\xc6\x02\x67\x36\x4a\xbf\x17\x21\x34\xb8\x80\x47\xa8\x73\xd3\x3b\x79\xf3\x32\x4c\xee\x3a\x3e\xbb\x1a\xbf\x3f\xbb\x3a\x7b\xf9\xfa\x04\x92\x06\x3e\xa6\x14\xc6\x16\x60\x2c\x7e\x54\xbc\x69\x02\xdb\xf0\xa3\x8c\x27\x18\xea\x8a\x58\xfe\x9e\xe5\xec\x26\xa5\x11\x52\x3c\x1e\x57\xfa\x9b\xe0\x09\xde\xde\x33\x9d\xc5\x97\x92\x30\x1d\xb2\xb9\x48\x93\xc7\xc1\x16\xcf\x38\xdd\x8f\x36\x75\x27\xfe\xd8\x7a\x13\xda\x18\x8c\x53\x03\x9f\x65\x3d\xd7\x63\x22\x30\x0b\x58\x1f\xc7\x6c\x1d\x3e\xbc\x04\x64\xf8\x67\xc4\xf1\x6c\x86\x66\xb6\xc0\xcc\x41\x94\x9f\x43\x6b\xb6\x9d\x2b\x01\xc6\xef\x85\x58\x10\x1a\x1d\xc2\x05\x12\xec\x44\x5b\x95\xf9\xb4\x94\x07\x4e\x21\x07\x4c\xc6\x02\x0d\x2c\xa2\xfd\xd6\xa5\x4b\x14\x93\x4c\xe6\x74\xea\xe1\x7d\x11\xde\xb0\x0a\x87\x92\xe8\xac\xc9\x69\x5a\x8b\x35\xb7\xf7\x43\x35\x86\x0e\xaf\x90\xac\xa6\x26\xed\x5c\x7c\x9f\x2c\x50\x5c\xa7\x9c\xa6\xe8\x2e\xa6\x3e\xbe\x52\x65\xc1\x85\x4f\x73\x09\x88\x7f\xb7\xe4\x54\x7a\x3f\xa8\x57\x01\xf0\x01\xf4\xe0\x52\x03\x22\x15\x36\xe8\xb3\xbe\xcf\x6d\xf7\x85\xdd\x2c\x83\x08\x10\x37\xf5\xa6\x67\xc3\xbd\x11\xce\x09\xb3\xdb\x1e\x30\x36\x51\x75\x94\x13\x1d\xd0\xbd\x6e\x4f\x27\xc8\x6d\xdc\x8e\x0b\xc4\x5d\xc2\x55\xaf\xbe\x7f\xd3\x83\x70\xeb\x0e\x86\x23\x3c\x25\xa9\xda\xd3\x12\x4f\x60\x23\x03\x93\x59\x92\xc0\xe7\x4b\x6d\xcd\x23\x19\x4f\x71\x7a\x30\x19\x4e\x7c\xe8\xee\x20\xd3\x61\x20\x6f\xd4\xbb\x04\xe7\x08\xb7\x74\x7e\xe9\x27\xb7\xc0\x47\xeb\x76\xdd\xb3\xa0\xb8\xed\x9e\xe3\xbd\x45\x22\xe7\x0e\x89\x5b\xef\x28\xde\xf4\x7a\x9a\xe4\x6a\x4b\xfd\x49\xa7\xe0\xaa\x0b\x42\xc3\x97\x42\x76\xb7\x6d\x39\xd8\x59\xe0\xe0\x5c\x52\xc0\xaa\xbe\x94\xa2\x49\xca\x7d\x5a\xad\xe2\x86\xa7\x8a\x69\x8c\xfd\x33\x14\x26\x6b\xa0\xab\x15\xb4\x72\xe0\x5c\xb8\xbc\x58\x58\xdf\x86\xf8\xcd\xa7\x30\x3b\xef\xf1\x27\x00\xa5\x4f\xe7\xb3\xf2\xb9\x0a\xc1\xd7\x5f\x3f\xdc\xc8\x17\x25\x24\x6f\x00\xa6\x38\x4b\xd2\xfc\xd1\x31\x44\xbd\x5e\x7f\x35\xe7\xb3\x1c\x4f\x37\x6b\x23\x1b\xa0\xe5\x4e\x39\x1a\x24\x46\x07\x72\x20\x5a\xe6\xcb\xcb\x2a\xbf\xcb\x50\x5a\x00\xb4\x5d\x5c\x4e\x37\xd5\x94\xfb\x8b\x35\x3d\xed\xf0\xe1\x03\x1d\x11\xe6\xb4\xeb\x3a\x6e\xd0\x69\xd7\x5d\xf8\xa0\x76\xbf\xc4\x39\xd1\x92\x51\x82\x20\x9c\x30\x19\x75\x1a\xbc\xec\x96\xdd\xee\x72\xf8\xd3\xe8\x40\xbd\x27\xcb\x41\x0e\x90\xc5\x31\xfc\x52\x9b\xf3\x58\xc6\x1a\xdf\x83\xa9\x27\x39\xe6\xf0\x99\x0b\xf8\xeb\x81\x68\xa5\x36\x09\x9c\xf9\x67\xb2\x96\x21\xf1\x34\x42\xf8\x78\xcd\x25\x40\x8b\xff\xc3\x79\xef\xcd\xbb\xeb\xc3\x97\xaf\x4f\xc6\x47\x27\xaf\x5f\x8f\xc8\xb6\x16\x0c\x87\x67\x72\x64\xaf\x03\x26\xc1\x4c\x53\x1a\xbc\x16\x8f\x20\x55\x7a\xf8\xe3\xc8\x85\xa0\xe3\xf3\xda\x0d\x07\x4e\xab\xa7\xc2\x63\x03\x6d\x31\xbe\x45\x91\x99\x7d\xdf\xc2\x3c\xc9\x2f\x3e\x70\xeb\xd5\x6e\x8d\xa4\x1c\x75\xbb\xd2\x71\x49\x8e\xbe\xed\xc3\xdc\xf1\x11\xa1\x80\x97\x6e\xfc\xe7\xb6\x49\xb3\x87\xa3\x69\xe5\x96\xca\xa0\x6e\xed\x9b\x9c\x5b\xe6\xdf\x87\xae\x39\x2a\x69\xfc\x36\xa6\x68\x9f\x7d\x6b\x51\x11\xf6\xd9\xce\x0e\x0a\x7a\x35\x64\x23\xd7\xb1\x21\x1b\x41\xdf\xd4\xbf\x8e\x15\x08\x6d\x26\x7c\x2d\x6b\xe9\x4b\xcf\x63\x84\xf0\xa9\x24\xc3\xd1\x7e\xdc\xc7\x13\x7d\xc1\x3c\x05\x5c\x41\x14\x9f\x9a\xc4\x66\x7f\xb6\xb0\x06\xfe\x25\x1a\x61\x6e\x35\xc2\x8c\xf0\xfa\x85\x8a\xb5\x68\xd1\xca\x9a\x32\xb5\x6a\xea\x8f\x92\x9a\x8c\x56\xd4\x64\x41\x16\xd6\x6a\xa8\x89\xda\xb3\xb0\x57\x35\x60\x22\x48\xeb\xfa\xcf\xf3\xe4\x9e\xea\xc8\xa6\xa9\x59\x11\x0a\x8e\xd7\xa5\x94\xac\x02\xb9\x5f\xdb\x90\xa0\x55\x6f\x59\x6f\xc9\x77\xba\xc2\x68\x87\xa3\x8e\x24\x99\xce\xbf\x2a\xfd\x27\xaf\x25\x72\xf6\xf1\xed\xd3\xd8\xe1\x4a\x6d\x89\x8e\x24\x4e\x78\x92\x31\x43\x6a\x20\xb7\x54\x1e\x87\x66\x86\xc6\xfb\x8a\xbf\x6b\x1a\xde\x16\x0c\xdf\xba\xad\xb8\x9b\x74\x45\x05\xd9\xaa\x06\xd9\xa4\xbc\x08\xbc\xf1\xb4\x5b\x90\x5d\x22\xde\xa2\xcc\xe4\xb5\x55\xd2\xfa\x47\x35\xf1\xeb\x87\xe5\xb9\x74\x4d\x21\x70\x00\xee\x28\x06\xad\x67\xb5\x8a\xa6\xec\x21\x32\x87\x1e\x6b\x57\x96\x86\xca\xd0\x30\xa3\xbb\x2a\xd4\x68\xfc\xb2\x28\xf2\x26\x2f\x8e\xea\x47\x1c\x8d\x41\x41\x3d\x1e\x47\x41\x16\x1d\xfd\xda\x69\x94\x95\x60\x09\x11\xb6\xf6\x5b\x9c\x91\x73\x19\x73\x3c\xf4\xa5\x47\xde\xc9\xc5\x81\x88\x0c\x4e\x25\x68\xaa\xa7\x35\x00\xc0\x0c\x3b\xbd\xbe\xf1\x9c\x4f\xe0\x50\x70\xf7\x73\x30\x7c\x6a\x6d\x48\xaf\x8a\x4a\xe2\x9d\x7f\x73\x2d\x2a\x84\x69\x7f\xec\x95\x39\x8c\x91\x2d\x65\x5e\x33\x1c\xce\xb0\xb1\xe5\x7e\xbc\x24\x4f\x05\x1a\xe6\xa3\x72\x35\x5e\x9d\x9e\x90\x65\xd9\x59\x34\xc1\x8d\x33\x64\xc0\x62\x00\x19\xac\x1a\xd7\xde\xed\xe6\x1e\x2d\xa6\x16\xbf\x9b\x92\x37\x89\x9c\xf7\xee\x19\x8f\x3d\x92\x46\xc3\x98\x3a\x09\x79\x2a\x9e\xd7\x17\x77\x6c\x4c\x48\x7f\x7f\xf2\x6d\xba\x3f\xb1\x47\xf0\x8c\xe4\xc3\xc9\xa8\x93\x0c\x67\x95\x11\x27\x32\x9e\xa0\xa2\xa8\xaf\xe2\xa3\x33\x64\x5c\x1e\xfe\x6a\x16\x34\x01\xd2\x6f\xb1\x7e\x61\x86\x33\x7b\xde\xf3\xde\x03\xa3\x1f\xb0\xba\xcb\x97\x17\x57\x9d\xfc\xd5\xae\xe3\x94\xfc\x2e\xe3\x25\xda\x8f\xab\xea\xf6\x80\x60\xd9\x34\x42\xa0\x2a\x71\xba\x01\xc8\xf9\x8c\x0a\x25\x57\xa5\x08\xa7\x36\xdb\x21\xa3\x1f\x48\x82\xd3\xe1\x2d\x1d\x91\x0c\xa7\x16\x37\x30\x30\x29\x79\x53\x48\xb7\x1b\xa7\x86\x85\x12\xff\xd4\x66\xed\xc9\xad\xb4\x93\x22\x3c\x23\x1b\x8c\x6e\x41\x9e\xe8\x97\xea\xee\xd1\xd1\x53\x40\x26\x58\x9f\xb8\x09\x80\x19\xcc\x7b\xc9\x74\xea\x12\x63\xa8\x85\x9c\x20\x3c\xf1\xda\xb1\x0a\xde\x93\xd1\x8e\x4d\x49\x14\x6d\x13\x32\xb1\xbc\xa2\x33\x5d\xad\x62\x5a\xf5\x04\x99\x94\x95\x6c\x56\xbf\x86\x27\xbd\x71\x09\xab\x0c\x10\x83\x03\xd5\xdc\xfa\x6a\x4a\x38\xf2\x91\x01\x78\x5a\x80\x2c\x76\x22\x63\x8a\x27\x78\x89\x67\x78\xea\x73\xb1\x84\x8b\xa6\x2f\x4c\x6a\xdd\x16\x5e\xc7\x69\xbf\x50\xa2\xa0\xfd\xa2\xa1\x1f\xd3\xf6\x11\xad\x63\xfb\x2d\x36\xb5\x85\xb5\xa9\x05\xeb\xf4\x3c\x73\xda\xa4\xd9\x86\x86\x17\x86\x4b\xb7\x9b\xaa\x8c\x4a\x56\x7d\xd7\xee\x6f\x60\xa2\xbb\x34\x0f\x0e\x8f\x43\xb8\x88\x98\x39\xc3\x19\x29\x1d\x68\xc0\x35\x4d\xf5\xfb\x40\x56\x79\x45\x73\xca\xb1\x34\xda\xd1\x9c\xca\x92\xd6\x54\x62\xae\x17\x71\x49\xb4\xb8\x5c\x42\x2b\xc6\x29\xe1\x3d\x8f\x13\x8e\x27\xe1\x4f\xfb\x91\xb5\xae\x5a\x0e\x15\x37\x69\x04\xfd\xa5\x60\x38\x02\x46\x60\x2f\xda\xfb\xbb\x7b\xdb\x84\xe4\xfb\x86\x15\x13\x39\xcc\x47\x38\x25\x77\x8a\x05\xa8\x1b\xfd\x70\x6f\xb4\x0f\x5a\x4b\x7f\xdf\x9f\x28\x12\xca\xb4\xf2\x76\x82\xf0\x5b\x70\xe6\xc5\x1c\xa7\x98\x21\x84\xf3\xdd\xdd\xc2\x6a\x3a\x03\x1d\x81\xe2\x18\xba\x8d\x29\x11\x9e\x6d\x1c\x04\x7f\x0f\xca\x91\x6a\x02\x75\x9a\x14\x89\xeb\x94\x15\xd3\x40\xd3\xb2\x5e\x33\xe4\x24\xaf\x43\xd9\xed\x56\xfb\xaa\x95\x3f\xa8\xdb\x3d\x94\x3d\xa3\x3d\x32\x43\x64\x8a\xc3\x49\xbc\xc4\x1c\xe7\x58\x04\x1a\x91\x29\xe1\xc1\xa0\x78\xeb\xa0\x38\xea\x88\xcf\x1f\xd4\x06\x75\x57\x69\x50\x41\xdf\xa5\xe9\xae\x5a\x17\xa3\x1d\xd6\x3c\xe3\x48\xc6\x0c\x04\x15\x97\x10\xb4\xde\x3d\xa3\x66\x59\xf8\x99\x4d\xbb\x5d\x7b\x1c\xaa\xbf\x9a\xd1\x8e\x3e\x5d\xd3\x44\x83\xc5\x43\x08\x4f\x14\xc7\xb1\xad\x4c\x9a\x5b\xb9\x96\xb1\xc4\x39\x60\xaa\x82\x27\xf6\xa7\x37\x6a\x40\x47\xd5\xe1\x10\x05\xf3\x1c\x25\x82\x25\x97\x59\x4a\x23\xc6\xb7\x78\xb7\x5b\xad\x59\xa8\x57\xf8\x42\x5d\x7f\xfd\xa7\x41\x79\xbe\x96\xcb\x67\x55\xee\xca\xd7\x72\x79\xc3\xb2\xd6\x9a\xc2\x1d\xa7\x82\x5c\x48\x12\x3f\xd3\x38\xfe\x29\xd6\x57\x2f\x67\x37\xca\xd8\xe0\xbb\x2e\x9a\x84\x6d\x79\xd0\xac\x9e\x1e\xde\xd3\xd1\x08\x0d\xe0\xdf\x12\x5b\xde\x20\xc3\x97\x3b\x5d\x99\xca\x58\x56\xa7\x9e\xf1\xe3\x8b\x37\x11\x08\x1a\xc1\xc1\x5e\x99\xe3\xca\x5b\x7b\xb8\xc1\xa0\x1b\xf4\x07\x4d\xf7\x25\x33\x05\xdc\xfc\xe1\x92\xd2\xb3\xf2\x69\xb1\xce\x03\xa8\xdb\x65\xed\x76\xf6\x60\x4d\xc5\x27\xc8\x3f\xef\xa4\x3a\x7c\x44\xb7\xbb\x5d\xc9\x7d\x6f\x92\x0b\x22\x7b\xf5\xfc\x5d\x2a\x96\x5b\xee\x3c\x69\x32\x70\xea\xac\x5c\x7d\x1d\x47\x65\x94\x0d\x8c\xe6\x71\xe6\xde\xed\x55\xa6\x33\x48\xb6\xd4\x30\xd5\xa1\x84\x55\xb0\x86\x05\x2d\x6d\x0e\x5d\x57\xb9\x9a\x50\x1e\xb1\xdb\x65\x8d\x3b\xc2\xdf\xb4\x39\x1a\x3c\x07\x3f\x8b\x7e\xeb\x33\xb7\x9e\x3e\xff\x5b\xfd\x13\xbc\x8f\x72\x31\xa0\x05\xe6\xe0\x36\xe0\x15\x9c\x2f\x4b\xf1\xc4\x3d\x4f\xb0\xc7\x54\x26\x2c\xcd\xe3\x27\xa6\xdd\xe1\x75\x1b\x83\xed\x7e\x11\x58\x6a\xdf\x7d\x6a\xe9\xbd\x42\x9b\x17\xbf\xaf\x3b\x55\xf6\x4b\x4e\x95\xfd\xb2\x53\x65\x3f\x74\xaa\xdc\xee\x57\xdd\x27\xfb\x65\xf7\xc9\x7e\xc5\x7d\xb2\xbf\xce\x7d\xd2\x7d\x5d\x72\x94\x7c\xaf\xfd\x2a\xfe\x94\xf8\x8f\x66\x13\xae\x0e\x18\x4a\xee\x9d\x27\x45\xf9\xe6\x66\x9d\x1e\xb4\xa6\xc4\xba\x3d\xb8\x68\x45\x5e\xf6\xbe\x78\x2f\x0d\x70\x34\x57\x67\x8d\x77\x1e\xc3\x09\xc9\x0e\xb2\x50\x9b\x62\x33\xd6\x69\x4f\x0e\xff\x9c\x24\xcd\x2d\x80\xd3\x05\x0b\x1d\x3f\xb4\xeb\x22\xc5\xe5\xfe\x0e\x24\x36\x4a\x9d\xc0\x0b\x8e\xe3\x50\x65\x32\xf8\x5e\x96\xb4\x3c\xea\x7a\xfb\x73\xbb\x61\xe1\x59\xe9\x3b\x43\x27\x91\xcf\x4b\xdb\xd9\xa0\x4a\x2c\xd9\x05\x4a\x0a\xb2\x92\xbb\x06\x6a\xd5\x94\x79\x15\x64\xb3\x7e\xab\xaa\x85\xdc\xe8\xe2\x5a\xf1\x13\xc9\x3e\xed\x7a\xcc\xdc\xf5\x98\x19\x37\x58\xb8\xe0\x32\x77\xc1\x4d\x9a\x2e\xb8\xac\xe5\x3a\xc8\x3e\xed\x82\xcb\x9e\x71\xc1\xcd\xfd\x05\x97\xe9\x8c\x3e\x19\x4e\x9e\xa5\x76\x6c\xb9\x7f\xe6\xcf\xb9\x7f\x36\xfb\x8e\xb2\x96\x0b\x68\x0e\xb6\x9e\x3f\x25\xc2\xaf\x36\x39\x74\xf7\xd7\x38\x74\x87\x39\x6b\xfe\x2e\xde\xf3\xeb\x26\xec\x01\xbf\x6b\xa8\xc1\x4f\x82\xb0\x70\x1f\xc5\xe9\xbc\xba\x8c\xeb\x0a\xef\x9d\x1e\x1e\x5d\x5f\x5c\xfe\x3a\x3e\xbd\xb8\x34\x41\xa4\x9d\x1a\x4f\x10\xbd\xd9\x32\x4d\x15\x45\x19\x24\xeb\xbd\x3e\x2a\x73\x80\x57\xb2\xca\x36\x84\x65\x1b\xda\x1a\xde\x60\xdd\x69\x10\x49\xbd\x46\xd6\x49\xc5\x20\x62\x82\x95\xe7\xc7\x8d\xe6\x26\xbd\x17\x0c\xdb\x0d\xbd\xc4\xe5\x3a\x27\xae\x49\x39\x2a\xb6\x14\x70\x65\xf2\x15\x83\x16\xae\x5a\x6b\x1d\x2c\xb9\x1c\x9b\x1d\x7c\x6a\x42\xd7\x5b\xa0\xf4\x6a\xbd\xc5\xc6\x35\x0a\x7f\xb5\xd1\xcd\x0e\x36\x94\x71\x09\x02\x7f\x08\x8b\x41\x11\x3a\x82\x9d\x4d\x51\x10\x71\xff\x60\x8f\x20\x91\x65\xb2\x02\x32\x69\xfd\xc9\x81\x02\xe6\xd9\x32\x9d\x5e\xd2\x59\xba\xcc\xe7\x36\x99\xab\xf7\x06\x73\x4f\x44\x2d\x53\xa7\x46\x92\x5b\x82\xc9\xc1\x9d\x58\x29\x59\x06\x5c\x73\xa2\x13\x90\xea\xb2\x6f\x12\xc6\x51\xec\x5e\x03\x3b\xbf\x15\xc9\x3d\x56\xf7\xdf\x0c\x27\xb1\xc4\x4f\x66\x2f\x0d\x18\x40\xf0\x5d\xb1\x9b\x94\xf1\x5b\x93\xcb\x0c\xa7\xa8\x33\xcd\x9e\x28\x99\x18\xd0\xc5\xe2\xc3\x5c\x35\xb3\x4d\x35\xe4\xa3\xd1\xfe\x05\xd8\x8c\x1a\xed\xb2\xa9\xef\x66\x51\xa6\x3d\x9b\x90\x36\x7e\x4a\xd2\x0f\xc9\xa3\x92\xac\x8d\x04\xae\xa5\x95\x62\x3d\x56\xf4\x3a\x58\x50\x98\x78\x42\x80\x2c\xd6\xbb\x10\x1a\x6c\x4b\xef\x3f\xe8\xf2\x4d\x04\xeb\xd0\xf7\x2b\x1b\xae\x1f\xb4\xe2\x3d\x21\x1b\x56\xd8\x8c\xde\x3c\x72\x5e\x3e\xdb\xb2\x1c\x8f\xd5\x11\xdd\xae\xb4\x61\x68\x26\xb2\xcb\x4b\x8f\x36\x8e\x0b\x3e\x72\x71\x58\x36\xbe\xf6\x27\x09\x71\x63\x96\x72\x7f\x09\xcc\xe6\x3f\x79\x63\x26\x45\x9d\x9f\x74\x86\x97\x09\x8d\x25\xde\x0b\x24\xc9\x1f\x9c\xcf\xe9\x6f\x06\xcc\x05\xa6\x47\x90\x7e\x27\xef\xdd\x24\x93\xbb\x9b\xa5\xe0\x54\xf4\x32\x1e\x47\xd0\xc5\xb6\xfc\x02\xfd\x7d\xfa\xed\x4f\xce\xa8\x4e\x77\x76\xd0\x4f\x72\x48\x47\xbd\xb1\x0d\xf7\xf3\x0b\x1c\x83\x52\xa2\x56\x3d\xe5\xd3\xe7\x57\xce\x66\xf1\xb6\x69\x80\xe5\xef\x55\xc5\x31\x02\xfb\x11\x15\xdf\x99\x83\xef\xf2\xc4\x1c\x7a\xaf\x2f\x2e\xde\x8e\x5f\x9f\xbd\x39\xbb\x36\x41\xaf\x6a\x78\x58\x97\x76\x13\x8d\x83\xf8\x32\xc6\x67\x4a\x7e\xa6\x26\xaa\x8c\xf1\xdb\x2d\xc6\x4d\xef\x75\x2e\x6e\x49\x27\x92\x4e\x5d\xf0\xf4\x16\x15\x3b\x3b\xe5\x11\x01\x2a\x02\x90\xc7\x0f\x12\x15\xd0\x62\x39\x16\xce\x20\xfb\xfc\x26\x2d\x45\xfe\x06\xe0\x09\x59\xfa\x40\x3b\x66\x2d\xda\x6a\xa4\xa8\x28\x60\x12\xf5\x29\x24\x36\x3b\x0b\x57\xbc\x48\xb6\xf7\x02\xc7\x12\xd6\xed\xc6\x8c\xcc\x7a\x93\x94\x51\x2e\x5f\x2e\x59\x3a\xa5\xc2\xe6\x64\x51\x54\x6f\x78\xd8\x58\x51\xbc\x0b\x64\x97\x31\xd5\x41\x2c\xf6\x4b\xc5\xc4\x2f\xe9\x2d\xcb\xa5\x78\xb4\x72\xf7\x58\x4d\x2f\xe3\x74\x7a\x9a\x89\xe3\x8b\x37\x56\x38\x1e\xd7\xb9\xdc\x58\x23\xaf\x0c\x47\xe6\x67\x9a\xe4\xd2\x5d\xb6\x77\xf7\x5c\x86\x98\x4b\xbb\x22\x97\xf0\xbd\x2f\x4e\xef\xb3\x07\x3a\xbd\x2c\xd7\x72\xa3\x07\x43\x58\x61\x35\xd7\x0d\x92\xac\x06\x6f\xb8\x80\x13\x02\xec\x32\xc1\x31\xe2\x24\xc9\x90\xd7\x78\x45\xc5\xe1\xdb\xb7\xaf\xcf\x8e\x0e\xaf\xcf\x2e\xce\xc7\xd7\x27\x6f\xde\xbe\x3e\xbc\x3e\x19\xff\x7c\x79\xf8\xf6\xed\xc9\xa5\xd5\x96\x57\xcd\x8b\x8f\x12\x3f\x95\xa5\x9e\xb2\x1c\x53\x00\x60\x30\xfd\x10\xff\x8d\x01\x63\xac\x49\xa6\x6f\xb6\x16\x3b\x77\xe0\x29\x7b\x88\xcc\xad\xfa\x79\x91\x38\xeb\x65\xfc\xe7\x06\xe4\xac\xb1\x31\x7b\x51\x62\xa3\xf1\x02\x3d\xc9\x66\x1d\x68\x59\xcf\x59\xfd\x88\x4d\xc1\xd5\xb1\x04\x13\xa7\x51\xd5\x6f\xa5\x07\x48\x51\x9c\x63\xac\xf6\x03\x08\x75\x98\x95\x90\xbd\xfd\x0b\x54\x38\xe9\x6f\xac\x69\xee\x98\x02\x9f\xd1\x7d\x84\x03\x7b\xb2\x14\xe2\x11\xc5\x0c\x61\x0e\x21\x16\xfa\xbb\xeb\xac\xd1\x01\x47\x55\xff\xab\x7c\x76\xa5\x6a\xa7\x42\xa5\xb5\x0f\x5b\xec\x3c\x26\xe5\xbf\x34\x04\xb9\xf5\xa3\xd4\xec\x67\xd6\x73\xc9\x33\xc7\x97\x27\xa7\x8a\xcd\x1e\x9d\x20\x9c\xc1\x47\x5f\xc9\x98\x7a\xde\xd1\xc0\x39\x30\xc7\x02\xb3\xf2\x06\xb5\x23\xd0\xfc\x56\x6d\xe2\x38\x83\xae\x5a\x29\xa1\x86\xe8\xd2\x7c\xac\x40\x09\xc5\x82\xe8\xa6\xbc\xee\x5a\x66\xeb\xd4\x59\xd7\x50\x8e\x08\x44\xf0\x2f\x79\x63\x55\x1a\xe2\x64\xab\xa1\x60\xbd\xfa\x91\xee\x90\xe2\x4c\x95\x08\xf6\xca\x55\xd0\xf0\x43\x9d\x6e\xd2\xc4\x5a\xd0\x84\x2f\x17\x6a\x2a\x34\x76\x52\x23\x43\x55\x57\xb9\x50\xfd\x55\x0d\x69\x80\x2b\x72\xa9\xa6\x2a\x23\xdb\xae\x30\x64\x64\x0f\x5d\x49\x02\xbe\xec\x52\x2b\x69\xd4\x19\x1b\x97\xbe\xbb\xbb\xef\xfc\x32\x86\x62\xd4\xe1\x5a\x30\x8b\x29\xe0\x12\x07\x67\xab\x13\x3e\x04\xde\x03\xac\x4a\xde\x24\x98\x55\xba\x62\xbd\x33\xc7\x75\x59\x6c\x0c\xc1\x14\x87\x69\x0a\xfc\x3e\x76\xe1\x48\xad\x80\x28\x74\x78\x43\x47\x7f\x17\xd2\x09\x2f\x83\xe8\xb5\xca\xa5\x6a\x43\x40\x32\x7f\x7d\xe0\x2c\xa8\x00\x71\x22\x8f\x51\x05\x85\x4f\x03\x41\x04\xbb\xa1\xd1\xc3\x2a\x58\x91\x8e\xcb\x9e\x01\xb1\x19\xc2\xd9\x87\x62\x03\xfd\xf3\x93\xb4\xd0\xfe\x08\x57\xb7\x5a\x1e\xc8\xa2\x71\xb5\xe5\xbc\x7e\xf1\x68\xa6\x0c\xb5\xd9\x5d\xca\xad\xe0\x30\x56\x37\x07\x51\x96\x6e\x9d\x95\x35\xc8\xe7\xd0\xdf\x67\xde\x25\x93\x59\x7f\x90\x8c\xc8\x21\x1b\x75\x32\x2f\x8e\x1f\x98\x1c\x05\x19\x1a\xb0\xef\x08\x5d\xad\x32\x23\x66\xc7\xa8\x68\x90\x1c\x42\x35\xfd\xb2\x77\xf4\xee\xf2\xf2\x44\x87\x51\x06\x82\x75\x20\x55\xeb\x7b\x8d\xed\xc7\x77\x54\xbb\xaa\xec\x3b\x1f\x41\xef\x38\x02\x58\x52\x60\x30\xb6\x42\x76\x82\x3a\x8e\xcc\x73\x25\x63\xbb\x74\x83\xa5\x5d\xd3\xed\xfe\x22\x3d\x7c\x44\xcb\x32\x54\xf0\xb3\xb6\x9b\xa5\x1f\xbb\x63\xea\x52\x51\xdf\x24\x4b\xdb\xde\xd3\x29\xc2\xab\x2b\x1e\x23\x4c\xc9\x76\xdf\xcd\x01\x75\x7b\xed\x99\xb3\x87\x7d\x32\x45\xa0\xea\xd2\x85\xc6\x26\xf2\x54\x2f\xec\xdc\xa2\x76\x09\xae\x80\x2d\x54\xde\xd2\xa4\xf1\x1a\x10\xd2\x5d\x53\x0a\x33\x3a\x94\x81\x44\x5f\xd4\x89\xd1\xa6\x29\xea\x57\x85\x4e\xda\xbc\x3a\xf5\x43\x26\xec\x58\x49\x3a\xb7\x9f\x5e\xf0\x89\x43\xc8\x8a\xc2\x84\xc3\xc2\xd5\xa1\xeb\x36\xd7\x96\x36\xf5\x46\xc8\x07\x9b\x29\x09\x40\xd8\x43\xc3\x55\x69\x89\x1a\xe4\x68\x4b\x71\x4d\x63\xb1\xab\x63\xae\x52\x26\x83\xda\x1a\x2e\x61\x20\x5b\xf5\x6a\x52\x41\xa4\xd0\x3a\x2f\xf1\x77\xc3\x44\x3e\x07\xc2\x47\x5d\xd6\xb1\xf6\x3d\x71\x62\x07\x2d\x1f\xd7\x78\x7b\x0f\xd3\x9e\x95\x3f\xca\xe9\x76\x6e\x9d\x33\x4a\x79\x8a\x2a\x30\x24\x87\x00\x40\xa2\x6e\x87\xff\xa9\x35\x04\xba\xcc\x7f\x6e\xb1\x1c\x60\x94\x92\x34\xcd\x3e\xd0\xe9\x16\xe3\x5b\x3c\xe3\xbb\xcc\xab\x77\xb7\x02\x53\x52\xbe\x15\xe7\xcb\xc9\x7c\x2b\xc9\xb7\x4e\x93\x5c\xbe\xcc\x32\x89\x7a\x91\x96\x32\x25\x18\x1e\xcf\x38\x15\xd2\x4d\xb4\xd0\x13\xcd\xff\xe7\x4c\x74\xff\x93\x26\x3a\xc4\xe2\x6b\x8a\xb5\x2c\x4d\x8c\x9b\x51\x37\x3d\x5c\x4f\x0f\x03\xff\x74\x38\x43\x44\x4d\xbc\x2d\xe9\x6a\x69\xc9\x48\x53\xb3\xce\x98\xb4\xef\xa2\x28\x70\xd2\x3a\xe5\xcf\x33\xba\x68\x94\x32\x89\xc5\xa7\x44\x5f\xac\xbf\x6e\xe9\xde\x7d\x39\xec\x81\x89\x6a\xce\xc5\xa7\x61\xae\x6c\x30\x0f\x6e\x40\x57\xa9\xaa\xe8\xf7\x36\xab\xe8\x97\xa2\xd9\xab\x7e\x29\xf4\xc5\x36\xfd\xd2\x5d\xf1\x99\xa6\xb0\x0d\x17\xd4\x5c\x14\x10\x22\xd0\xe6\xf7\x6c\xb0\x10\x9b\xbc\x65\x1b\x3c\x97\x97\xc2\x38\xba\x3e\x59\x0f\xe7\x81\x8e\xa7\x56\x37\xbc\xc7\x85\xb5\xd6\x18\xdf\x45\xf5\x24\x42\xc5\x3a\x73\x59\x90\x5d\xb6\xea\x08\x9b\x28\x61\x4d\x3b\xf2\xe7\x65\x9f\x48\x5d\x2f\x5e\x92\xcc\x5a\x8f\x9e\x26\x7a\x61\x03\x1f\x56\xd5\x9b\xdc\x65\x3f\x44\x38\x25\x4f\x94\x3f\x58\x88\xc5\xdc\x9b\x8f\x96\xc5\x17\x98\xad\xd2\x36\xb3\x55\xc4\xf8\x62\x29\xa3\x35\x7e\x93\x4b\x6f\xb6\x4a\x54\xff\xda\x90\x3d\xec\x86\x53\xfc\x4e\x10\xea\x80\x28\x43\x1d\xc0\x6f\x26\x5b\xdd\x7f\x0f\xec\xc7\x06\x7f\x8d\x8d\x7e\x1a\x8d\x68\x1b\x10\x06\x9d\x53\x40\x91\x74\xd8\x9b\x7a\xe9\xb1\x46\x9c\x75\xae\xf2\x9b\x1c\x46\xda\x1d\x78\xbe\x04\x27\xe3\xb9\x63\xfb\x1b\x7c\x41\x36\xfb\x80\xd8\x19\x2b\x3b\x83\xb8\xc7\xc0\x76\x13\x81\xf0\x44\x94\x90\xa8\x67\x22\x88\x5b\x7a\x6b\xf9\xcd\xc5\xcc\xeb\xf9\xa7\xa2\x0c\xd6\x0d\x6e\x78\x00\xa7\x80\x83\xbc\x0a\x73\x01\x3c\xd0\x5d\xe8\xe9\xbe\xd6\x39\xcb\x7d\xcb\x71\x26\xc2\x80\x00\x74\xc2\xa0\x1b\x11\xc6\xcb\xcc\x00\x85\x38\x04\x26\x03\x37\x49\x41\xb2\x9e\xe9\x24\xfd\x28\x29\x9f\xc6\x4f\x2c\x3f\x9a\xd3\xc9\xdd\x4d\xf6\xb1\x96\x9b\x58\x13\x4c\x3d\x09\x7a\x34\x31\x25\x7c\x56\xe8\xc7\x05\x2d\x10\x2a\x50\x67\x2a\xe2\xa7\x59\xa2\x96\xeb\xb1\x21\x1c\x18\x36\x5c\xaa\x71\xab\x41\xb0\x52\x8c\x71\xbb\x8f\xab\x7c\xa0\xc0\x0b\x81\xf0\x42\x3c\x23\x13\xad\x2b\xf4\xb5\xe6\x1a\x5a\x7c\xb8\x17\xe4\x55\x63\xc2\xca\x71\x2f\xcd\x26\xe6\x2c\xb1\x5a\x79\x84\xf0\x43\xab\x36\xde\xa3\x4f\x67\xe9\x83\x12\x3c\x36\xc0\xd6\xb7\x06\xd6\x04\xea\x19\x5b\x99\xfd\x43\xd1\x9d\x3a\x48\x8c\x70\x03\x39\xa5\x40\xb2\xf1\x8e\xef\x95\x9a\x63\x6e\x0d\xad\xad\x62\xc6\x27\xb6\xc4\x66\x71\x53\x2b\xbd\x92\x60\xd1\x90\x27\x4e\xf8\x4e\xd8\xac\x4d\xb6\x51\x27\xd6\x18\x69\xa6\x21\x45\x18\x33\x2e\x3f\x45\x49\xce\x61\x15\x39\x47\x9a\x18\xb1\xef\x69\xba\xa8\xa1\x95\x97\x6c\x88\x76\xb8\xe1\xf7\x86\x9b\xd8\x4a\xea\xf8\x97\x9b\xaa\xb1\x25\x2a\x15\xb9\x33\xb7\x45\x25\xbb\xb6\x4e\x57\xf8\x7b\x18\x7f\xa5\xea\xb7\x89\x90\x2c\x49\x9f\x5f\x9d\x29\x60\xaa\x01\x23\xe3\xe3\x27\x4a\x85\x7b\x5f\x24\x15\xae\xc5\xdc\x6b\x94\x0a\x3d\x5f\xbc\x15\xad\x81\x67\xbd\x24\x7f\xe4\x93\xd7\x6c\x46\x8f\x1e\x27\x29\xb4\xa6\x6e\xef\xb9\x67\x97\x37\x6b\x0a\xfb\x2e\xf8\xef\xc7\x6b\xbe\x9f\xba\xb3\x06\x36\xf9\x07\xd1\x6e\xd1\xf9\x5b\x03\x3e\x1b\x05\x3e\xa3\xb3\xc5\x8c\x48\x40\xec\xbe\xd5\xf8\x7f\xa1\x7c\x94\x93\x4c\xcb\x7a\x78\x49\x9e\x0a\x3c\x69\x3a\x31\x2d\x2a\x7a\x4f\x26\xb7\x80\xdf\x57\xca\x13\xf5\xf6\xf2\xe2\x97\x5f\x6d\x54\xd7\x53\x09\x0a\xd4\x86\xfa\x01\xfa\x50\x2c\x91\x3d\x8d\x72\x7b\x18\xb9\xeb\x51\x90\x55\xd5\x38\xd9\xfa\x54\xda\x6c\x16\x4b\x42\x48\xda\x3b\x7a\x77\x75\x7d\xf1\x46\x09\x49\xe3\xd3\x8b\x4b\xcb\x58\x26\x05\x9e\x27\xf9\xa0\x91\xee\x6d\xc3\x05\xce\x3e\xf0\x1f\xe9\x63\xde\xc0\x4f\xb4\x93\x61\x5e\xe0\x72\xec\xf0\x31\xcd\x27\x82\x2d\x64\x26\xea\x65\x9e\x28\x5f\xde\x6b\xf0\x5e\x20\xd4\x8c\xcf\xd8\xed\xd2\xfe\x2e\x8a\xa2\xd3\xc7\x4b\x38\xe9\x21\x7f\x5f\xbc\xc4\x33\x1d\x97\x67\x43\x9a\xa7\x6a\xfb\x53\xdb\x54\xbc\xc4\xd5\xc1\xe1\xa7\x72\xa5\x7b\x38\x6c\x72\xcf\x64\xc1\x9c\x14\x08\x9b\xee\x37\x87\x07\xb4\x35\x47\xf1\xfa\x21\x54\x11\x5d\xf5\xf1\x60\xe9\xa0\x71\xd9\xa4\xf1\x8d\x76\xcb\x56\x80\xdd\x9a\x6b\xd7\xa7\xe9\x60\x89\x83\x8b\x4d\x16\x86\xfc\xd9\x02\xc6\xbb\xc4\xd2\xb2\x63\x77\x71\xf5\xae\xa2\x23\x80\x30\x47\x78\xae\xfd\xe2\x44\xcc\xf0\x14\x67\x98\xe2\xe5\x97\x38\xc5\xcd\x3f\x3b\x28\x6b\xda\xe2\x13\x37\x6f\xf1\x9e\xff\x6c\x09\xba\xe3\xa3\xae\xdd\x86\xae\xc7\x69\xa9\x8e\x76\xa4\x9d\x79\x13\xb7\xa8\x98\x34\x90\x63\xb8\x10\xac\x69\x21\xf0\x8d\x88\x05\xea\x76\x85\x69\xd7\xaf\x04\xf7\x8e\xde\x6b\x02\x15\x5c\xcf\xca\xc1\x10\xb7\x4a\xc0\xec\x76\x03\xb8\x5a\x5f\xb1\x78\x86\xff\x78\x73\xb5\xfb\x4d\x22\xdb\xad\x36\x4d\x01\xa3\x2f\x90\x6f\xf6\x5d\x65\x3c\xc2\xba\x8f\x1f\x65\x5c\xd2\x8f\xcd\xaa\x97\x96\xe1\xc8\xa0\x9c\xaf\x68\xe3\x7d\xb2\x79\xd9\x2c\xd5\x3a\xe0\x55\x11\xd6\xce\x91\x8f\x3e\x69\xb9\xdc\x3c\xf8\x24\x4d\x6c\x16\xab\x13\xcb\xb5\x04\x71\xaa\x84\xb6\xdf\xdb\x9c\x5a\x42\xd1\xcc\xe7\x5e\x82\x84\xa2\x97\xe0\xfa\xe3\xa2\xef\x37\x45\x8f\x57\xa7\xd9\x73\x97\xb2\x37\x85\xc0\x4f\xcf\xc0\xe4\x5d\xad\x64\xeb\x81\xfe\x9c\x00\x1e\xdf\xfa\xb2\xc7\xf2\xa3\x8c\xe7\x52\xd1\x4f\xc3\xb5\x1d\x18\xde\xe6\xc8\xa4\x2f\xbd\xd1\x6e\x0a\xe5\xf8\xf2\xfa\x9f\x87\x15\xd1\x80\xbc\xfa\x5c\xe7\x6d\x50\x39\x22\x7c\xf2\x0c\xf7\x25\xe3\x92\xa7\x29\xe1\x59\x40\x87\x94\x3f\x58\x6f\xa3\x32\x9b\x23\xac\xc9\x59\x76\xbd\x9b\xa0\xdb\x9c\xb2\xe2\x51\xde\x19\x6b\x8e\xe2\x2a\x08\x4e\x27\x2b\x3d\x5f\x54\xf5\xcf\x98\x3f\x3b\x8a\xc1\x0d\x79\x43\x1c\xc3\x07\xe1\x84\xc0\x60\x1d\x82\xf9\xae\xc7\x2d\x3c\x2f\x36\x21\x08\x49\x28\x5d\xab\xb0\xed\x19\x28\xc6\xaf\xbe\xe4\x82\xf0\x37\x41\x75\xef\x7d\x2e\x54\xf7\xc7\x35\xb2\xfa\xdf\xad\x46\xfe\xbf\x06\xe2\xf8\x4a\xb4\xaa\x8b\xcb\x48\x1c\x70\x89\x70\x09\x6c\xd6\x82\x78\x6b\x0d\xf3\x53\x09\x2d\xbc\xf0\xc0\x23\x2d\xd2\x57\xd6\x26\x7d\xf1\x35\x82\x97\x76\xcb\xb5\xb4\xcb\x0a\x84\xb3\x92\x0a\xab\x49\xc9\xeb\xf3\x7d\xf6\xce\xdf\xbd\x7e\xed\x3d\x9b\xfe\x3e\x85\xee\x7f\x5f\x80\x9a\x83\xb3\xfd\x42\xad\xf2\xb3\xa3\x00\x3f\x11\xcb\xf9\x99\x10\xcb\x5f\xac\x39\x7e\x76\xff\x85\x39\xad\x0e\xd7\x9c\x56\x0d\x6c\xdd\xa7\xc9\x2b\x33\xec\x8f\x25\x1b\x60\x29\x9f\x06\xb5\xf9\x34\x80\x35\xd7\xb2\x68\x04\xaa\x1b\xc8\x53\x01\x67\xcc\x5d\x9b\x0e\xaa\x82\xa1\xd2\x0f\x33\x3e\xbe\x15\x21\x7f\xf1\x1f\x82\x5a\x0f\x3e\x06\xa5\x9e\xc1\x7c\x61\xc4\x83\xed\x19\x44\x46\x70\x1e\x3e\xe0\xdf\xed\x1d\xd4\x10\xf3\x54\xf9\x3d\xe4\x6c\x03\x40\x6c\x03\x80\x70\x54\x05\x5e\x34\x17\x78\x51\x2d\xc0\xbc\xb2\xe5\xb2\xa5\xb3\x96\x7f\x40\x8a\xd1\x33\xb8\x15\x42\xd7\x9d\x09\x6a\xaf\x1f\x78\xbb\x5f\x07\x2a\x9b\x92\xee\x99\xd6\x26\xca\xc1\xd5\x45\xbb\xee\xc3\x41\xb4\xab\x04\xef\xdd\x19\xa3\xe9\x34\xf2\xd5\x1e\x6d\x9c\x49\x07\xff\xef\x51\x20\x31\x27\x62\x28\x3c\xb0\x23\x70\xd2\xd2\xb4\x95\xe7\xb9\x3a\x65\x1c\x0d\x98\x76\x0d\x61\x16\x8d\x90\xa1\x41\x14\x74\xeb\x4d\x49\x41\xe5\x9f\xff\x2e\x2a\x71\x72\x38\x03\x18\x22\xfb\x81\x07\x22\x12\xc3\xaf\x46\x88\x11\x81\x33\xa2\xfe\xf4\xb0\x0e\x89\xfb\xa2\xe3\xd1\x8b\x48\x72\x10\x33\x22\x21\x95\x84\x76\x14\xc9\xd5\x05\xcb\xfc\x39\x14\x23\x34\x08\xdb\x00\xb0\x19\x46\x40\xf5\xe4\x2c\x0c\x8d\x7e\x3f\xee\x78\x75\x00\x44\x24\x48\x69\x8a\xb0\xce\x97\x43\x5d\xa2\x1c\x5f\x60\x28\x46\x36\x83\x85\x06\xd8\xb1\xf9\xdc\x24\x4e\x93\x1b\x9a\x0e\xa2\x7f\xdd\xa6\xec\xfe\x9e\x8a\xaf\x27\x69\x96\x2f\x05\xdd\xd5\xdd\x8d\x0a\x2f\xf2\xdf\xf7\x66\x69\x72\x7b\x4b\xa7\x67\x2e\x6e\x10\xc5\x91\x73\xe7\xc8\x78\x4f\x3b\x11\x9b\x92\x38\x69\xb0\x74\x6c\xe5\xe0\xbf\x6f\x84\x06\x13\x12\x32\x64\x38\x1b\xf5\x26\x19\x9f\x24\x32\xe6\xb1\x44\x08\x15\x16\x73\xea\xac\xf1\x40\x68\x32\x84\xe8\x84\xc3\x8d\x29\xbf\xa8\x33\x7b\x14\x31\x45\x07\x51\x34\x70\xb8\x95\x01\x23\x38\x2e\x2b\x32\xeb\x57\x7f\xc8\x1d\x79\x26\x4c\xe6\xd8\x28\x0a\x76\xd4\xb9\x70\xa2\x72\x90\x0a\x78\x4b\xdb\x36\x5e\x0b\xa2\xde\xfb\x96\x4e\x37\x6e\x94\x5a\xaa\xec\x92\xff\x57\x80\xff\x48\x87\xfd\x11\x68\x35\x4c\xc8\x1c\xc2\x59\x9d\x4e\x92\x80\x4e\x32\x84\x73\xd2\xdf\xcf\xbf\xcd\xf6\xf3\x9d\x1d\x94\x0c\xf3\x90\x4e\x72\xeb\x1d\xda\xb2\x0b\x0e\xd4\xff\xcc\xea\x69\xa8\x61\x58\xb4\x44\xb1\x2a\x70\xf5\xb0\x96\x20\x3c\x7c\x2d\xdc\x9a\x32\x9c\x94\xd2\x82\xff\x59\xb6\xdb\xe9\xa5\x93\xab\x15\xc0\xd0\xca\x83\xaa\xe4\x31\xa8\x21\x83\xc9\x10\x39\xd1\xe0\xcb\x1e\x68\xd4\xed\x12\x36\xb4\x03\xf7\x56\x13\xf7\xb2\xdd\x6f\x05\xb7\xa4\xe1\x73\x3e\x2b\x79\xb6\x14\x93\x20\xe5\xbe\x45\x78\xf5\x4f\x04\xe6\xe0\x0e\x1b\x80\xbc\x6a\x50\xd0\x20\xeb\x59\x65\x5c\xee\xb2\x02\xdf\x5d\x3b\x9c\x66\x38\x06\xe1\x30\x57\xa2\xaa\x16\x9b\xbc\x7c\xbc\x1e\xcf\x19\xb3\xd1\xa7\xe6\x7e\xf3\x2b\x51\xbb\xd7\xeb\x85\x0a\x8e\x23\xfa\x61\xcb\x88\x02\x6b\x33\xee\xac\x85\x4a\xb5\xb3\xe4\xf0\xa1\x4b\xb3\x64\x3d\x69\xed\x9c\x58\x6f\xda\xd2\x6c\x57\x8e\x86\x2d\xae\x73\x83\xc7\x92\xfc\x69\xc2\xac\x2b\x0b\x86\x39\xd2\x60\xcd\x5a\x66\x52\x93\x21\x03\x3c\xfe\xca\x42\x19\x29\xc5\x2f\x67\xa8\xb9\xc5\x7c\xf8\xe3\xa8\xc5\x3b\xa0\xa9\x69\xef\x05\xd2\x3a\x0c\x6c\xdc\xb9\x7e\xd0\x17\xa3\x77\xeb\x08\xf5\x99\xd8\xe0\x37\x22\xe1\x93\xf9\x7a\x9a\x5a\x07\x0e\xce\x7c\x0d\x23\xa4\x37\xfa\xb4\x15\x52\xf7\x33\x9c\xe8\xb0\xf4\x41\x45\x61\xea\xbf\x46\x0d\x13\x43\x07\x2c\xc0\xcd\xe5\x86\x0e\x19\x54\x52\x7c\x02\x4a\xaf\x1a\x85\xaf\x68\xee\xa0\x7a\x75\x2e\xd9\x10\xa8\xb7\x44\x2c\xf0\xd6\xcd\x07\xa6\x9a\x72\xa8\x27\x09\xbd\x76\x6e\xa1\xbe\x17\x65\x08\x50\xcf\xe1\xf7\x63\x49\x26\x19\xcf\xb3\x94\xa2\x5e\x9a\xdd\xda\xdb\xb3\x37\xe8\x68\x5e\xf5\x5e\x54\xb0\x70\xdf\xbc\xbb\x8e\x10\xfe\xa3\xfa\xf8\xea\xe2\xdd\xe5\xd1\x49\x14\xb4\xfd\xb3\xd0\xa1\x15\x81\x6c\xf8\x10\xe0\x07\x4f\x43\x4f\x9d\xab\xde\x4f\x4b\x2a\x1e\x35\x64\x63\x5c\xcb\xb6\xed\xba\xa4\xfb\xf4\x4a\x90\x61\x94\xa4\x32\xc2\x11\x64\x40\x88\x70\x74\x4f\x65\x12\xe1\x68\x22\x45\x1a\x8d\xf0\xaf\x82\x7c\xfd\x7f\x26\x29\x9b\xdc\xad\xee\xb3\x65\x4e\x57\x32\x5b\x4e\xe6\x5f\x77\xe6\xbd\x43\xe8\x9b\xc9\x6c\xe6\x62\x53\xe8\x54\x3f\xcf\xa1\x87\x3f\x36\xa9\x6c\xa9\x11\x9b\xce\x5c\xbf\x37\x56\x36\xd4\xa0\xbf\x05\xfe\x6a\x43\x85\x26\x84\xe5\x39\x15\x16\xf8\xa7\x8d\xea\x39\x9c\xe1\x04\xe7\x78\x69\x53\x92\x18\x87\x4e\x73\x03\xb2\xad\x3a\x25\x1d\xfc\x86\x18\x33\x11\x3e\x01\xaf\xb8\xaa\xc6\xce\x6a\xa9\xfc\x9a\x92\xcc\x30\xae\xfb\x45\xca\x26\x4c\x5e\x6b\xd8\x44\x83\xc2\x31\xcd\xee\x89\xf1\xb7\xa6\x0f\x94\x03\xe2\xac\xde\x00\xb7\x54\x9e\xd8\x27\x96\x25\x29\x1e\xb0\xdc\xe0\x84\xe1\x0a\xb5\xf9\x69\xbb\xbe\x6a\xaf\xb8\x8c\x47\x4e\x7e\x5f\xad\x22\x20\x8a\xc8\x38\x58\x1c\xfa\x81\x36\x8a\x37\x5e\x56\xa9\xcc\x8b\x45\xb0\x33\x4e\xef\xcd\x6f\xc1\x05\x9e\x2a\x22\xa8\xbc\x1f\xca\x51\xf5\xd8\xa0\xa6\x47\x66\xf6\x9a\x79\x46\x79\x8a\xed\xa1\xe5\xc6\xeb\xa7\x09\x40\x14\xb5\x78\x1d\xa1\x03\x69\xdc\x03\xcd\x6f\xdb\xf4\x20\xe0\x1a\xd2\xf8\x6a\x34\xd1\xa9\xd4\x99\xaa\x2b\xb4\x62\x0f\x43\xd7\x3a\xb6\x59\xaa\xa3\x9b\xe5\xcd\x4d\x4a\x73\x00\xf9\x37\x8f\x16\x02\x56\xff\x98\xce\x92\x65\x2a\x23\xa4\xe4\x40\xfd\xc6\xb8\x64\xff\x48\x1f\x73\xf0\x5d\xb4\xb4\xa1\xc7\x08\x61\xf4\x90\xa0\x81\x55\xef\x60\x35\xe3\xb5\x91\xdd\xe0\xef\x5f\x45\x4f\xd2\x5c\xc6\xda\x23\xce\x62\xa8\x82\xff\x32\xcb\xaf\xd4\x3c\xd2\x23\x45\x08\x3a\xe4\x8c\x44\x51\xa1\xd3\xd3\x58\x39\x2e\xe1\x8f\x11\xfa\x8e\xf4\x91\xbd\xf0\x55\x32\x81\xbe\x12\x61\x2a\x50\x36\x8b\xe9\xf0\x95\x18\x8a\xd1\x4e\xf4\x23\x7d\x8c\x46\x06\xa8\xcf\x57\x08\x2f\x6d\x37\xb6\xf7\xdc\x3d\xb2\x88\x29\x4e\x1c\x73\x5b\xad\x74\x32\x0a\x97\x9b\x4e\xa7\x69\x0d\xa7\x4e\x4d\xc8\x6a\x45\x7b\xb9\xcc\x16\x6f\x45\xb6\x48\x6e\x13\x4d\x27\x4a\xa6\xd0\x37\x1a\x14\xc7\x75\xf2\x29\x53\x3b\xc8\xeb\x4f\x70\xed\xa2\xd8\x5c\xc3\x96\x46\x89\xb7\x4c\xd3\xa2\xd3\x70\x73\x01\x99\xbb\xe9\xf9\x41\xcc\xb5\x86\x45\xe0\x65\x2f\xa7\x7c\x7a\xf0\x19\x37\x34\x5e\xba\xa1\xe9\x7a\xcc\x89\xb4\xc4\x43\x2f\xbf\x53\xb8\x90\x0d\xbe\xbc\x05\x55\xa7\xad\x1f\xfc\xc4\xfe\x82\x4a\x45\xb9\xc6\xbf\xa0\xc2\xf0\x8a\x03\x75\x16\x08\xe1\x14\xb5\xe0\x28\x7c\x25\x6c\xa4\x0c\xe8\xa0\x7e\x69\x3b\x28\xd6\x67\x42\xdd\xe4\x92\xac\x4e\x16\x9c\x96\x9c\x53\x26\x24\x35\xce\x29\x33\x92\x86\xb7\xc8\x29\x49\x15\x53\xef\xb0\x59\x3c\xb3\x31\x5c\x7b\x6a\xbf\x64\x64\x66\x34\x5a\xf1\x52\xff\xb9\x87\xd0\xf0\xab\x11\xca\xc9\x52\x2b\x35\x96\x21\xd8\x63\x27\x27\x4b\xc7\xad\xec\x56\x9c\x93\xe1\x08\x2f\xc8\x8b\xfd\xc5\xb7\xb6\xf2\xfd\xc5\xce\x0e\x9a\xeb\x80\x34\xa8\x75\x61\x42\xf2\xef\xb5\xb4\xb2\x5c\xb2\xa9\x12\x37\x1f\x80\xb5\xff\xa4\x2e\x10\xf7\x38\xc7\x73\x3c\xc1\x33\x9c\x61\x16\x00\xd2\x3e\x14\xd8\xe1\x52\x36\xdb\x41\xb3\x7b\x10\xa9\xcc\xf1\xaa\xe1\xf4\xec\x89\xfe\xa3\x8e\x10\x2d\x47\x2f\x0b\x1c\x29\xa9\x77\xb7\xbc\xe4\x51\x3d\xcc\xb9\xe9\xc3\xdd\x68\x87\x63\xed\x1a\xb8\x06\xe6\xaf\xac\x34\xdb\x43\x1d\x39\xfc\x6a\x04\xa0\x48\xc1\x31\xef\xc5\x29\x4c\x83\x63\x99\x56\xce\x64\x77\x24\xb5\x60\xd6\x80\x59\x55\x6e\xd6\x99\xd3\x6a\xde\xab\x1f\xca\x97\xee\x4a\x7a\xb6\xa7\x02\xe1\xe8\x9b\xde\xde\x37\x91\xb9\x4a\x51\xa2\x7f\x22\xfc\x64\x72\x02\x1f\x2e\x65\x76\x2d\x92\xc9\x1d\xe3\xb7\x83\x97\x59\x96\xd2\x84\xc7\xb2\xd7\xf0\xd6\xe8\x6e\x7e\x7b\x96\xc9\xcf\x3a\x03\xae\xb5\xf8\x19\xfb\x5c\xe9\xdb\x81\x46\x2e\x1f\xd0\xd0\x0a\x57\xd6\x2f\xf3\x03\xce\x07\x19\x2f\x30\xe5\xeb\xc5\xb7\x66\xa1\xcd\xf5\xc2\xaa\xad\xad\xa7\xa3\x08\x2c\xad\xdc\x4b\x51\xed\x57\xad\x2f\x37\xb6\xda\xb6\x9d\x50\xa0\x64\x0f\x57\x89\xf3\xa8\x2c\xdd\x24\x34\x47\x92\x6d\x63\xff\x0c\x8e\xe4\xad\x5e\xae\x7f\x8c\xc8\xf2\x1a\x56\x7c\xe8\x92\xe0\x63\x53\xa9\xeb\x2d\xc3\xee\xd4\x45\xb5\xf4\x2f\xbc\xe4\xaa\x00\xa1\xd4\xe1\x03\xf2\x83\x88\x0d\x89\x6a\xd4\x12\x0a\x48\x15\x38\xc1\x59\xdb\x26\x7a\xa8\x62\x91\x2a\x2e\x19\xdc\xf7\xfc\x25\xd8\xa8\x07\x46\x68\x13\x3f\xb2\x7c\xa8\x84\xef\x19\xcc\x0d\xf5\x0b\x97\x99\x06\x6d\x8e\x1e\x5e\xf1\x95\x6c\xd8\x47\xa0\x59\x58\x72\xa9\x7e\x97\x25\x0c\xa7\x6b\x61\xe5\x6c\xf5\x70\x29\x0e\x48\x00\xa1\x50\x5b\x0d\xf5\x7d\x49\x6d\x78\x7b\x0f\xed\x97\xee\xc6\x19\x4e\x50\xb1\x81\x3f\xba\xf9\x2e\xb9\xf7\xb8\x89\x61\x95\x89\x11\x7f\xc1\xc4\x58\xef\x2c\x37\x12\x1e\xdc\x67\x4b\xb3\x92\x6d\x9a\x95\x0d\x55\xd5\xa7\x84\x29\x0a\xfc\x14\x26\x8d\xc5\x5f\xb3\x45\x6b\x99\xd3\x5b\xed\xb5\x55\x23\x6c\x03\x91\xaf\xcb\x91\xde\x32\xb0\x4a\xfb\x30\x34\xae\x01\x34\x24\xc7\x99\xfe\x4b\x70\x9c\x70\x50\x88\xe3\xbc\x34\x6c\x29\x1e\x5d\x68\xfd\x34\x9b\x80\xd8\x56\x41\x04\x00\xf4\x15\x30\x74\xf8\x49\x48\xa6\x53\x38\x3e\x5f\xab\x5b\x3b\xa7\x22\x36\xb7\xcd\x26\xeb\x83\xd8\xd9\x29\x10\x7e\xca\x8c\x93\x03\xc2\x0d\x6a\x6e\xa8\xec\x40\x5f\x43\xe1\x6f\x5b\x21\x1a\xc4\xb4\xd6\x31\xfd\x01\xfc\x13\x21\xd4\x63\x9c\xc9\x52\x21\xbc\xdd\xc7\xdb\x7d\x04\x89\xe3\xf3\x45\x22\x27\x73\xfd\x9a\x36\x3e\x02\xd4\x82\x62\xa2\x9e\xc5\xdc\xa7\x7c\x2b\xd4\x44\x2e\xd7\x1c\x61\xe6\xf8\xd2\x58\x6a\xc6\x49\xd0\x01\x76\x55\x14\x11\xea\xcc\x92\xfe\xcc\xd2\x8e\x5a\x6b\x88\x4c\x53\xc0\xa9\xc8\xee\xab\x57\xf6\x12\x0e\x82\xd9\xe3\x36\xe6\xce\x5b\x28\x44\x4f\x4d\x37\x18\x4e\x17\x49\x9e\xb3\x87\x92\x93\x75\x87\x6f\x9b\x90\x17\xf5\x95\x12\x45\xec\xdf\xf6\x60\xad\x0c\x0a\x61\x66\x4b\x98\xea\x6c\x21\xf3\xd3\xb9\xf4\x54\xcb\x65\xb6\x9c\x69\xda\x96\x33\x3f\xad\x4a\xa5\x56\x8e\xaf\x56\x6c\xb5\xca\x0e\xcc\xc1\x9c\x2d\x40\x2b\x44\x34\x15\x71\x6c\x9a\x1d\x30\x6c\x2a\x1a\x64\xc5\xa0\xf4\xa5\xc1\x4c\x35\x06\xc3\x56\x13\x6b\x27\xb1\x1d\x74\xd2\xa1\xed\xa2\x17\x17\x93\xe6\x4e\x1a\x1c\xcc\x6a\xe5\x81\x11\x35\xb7\x95\x2f\x73\x2a\xde\x8a\xec\x81\x4d\xe9\xd4\xba\xff\xdb\x76\x9a\xde\x59\x4d\x52\x63\x93\x4b\x02\xd6\xec\x9c\x77\xbb\x7c\xb5\xda\xde\x73\xc0\x71\xe1\xd7\xea\xea\xb1\x44\x10\x97\x6a\x17\xc0\x54\xed\x88\xc9\xc9\xa5\xdb\x50\x55\xb7\x3b\xe3\xc6\xa5\x08\xa7\x98\x22\xac\xcb\xc4\x09\xb8\xd8\x76\x74\xa6\xa3\x52\x4d\x79\xcb\xed\xcc\xd4\xe3\xce\xe9\xf2\x74\xe2\x52\x25\x38\x5c\x35\x2b\x3d\xa5\x9c\xf4\xf1\x84\x93\xbe\x97\xa4\x67\x81\x38\x3b\xe1\x3b\x3b\x38\xe7\x07\xd4\x00\xdc\x94\x59\x91\xfe\x68\xe0\xf3\x38\x75\xbb\xdc\xd2\xdb\x9a\x22\xdb\x7d\x34\x68\x7d\x1b\x58\x1d\xa7\x41\x47\x52\xd7\x91\x1a\x43\xdc\xd0\x8b\xc6\xef\x75\x17\x9a\x5e\x69\x65\xf0\xbc\x95\x1b\x19\x5e\x74\xf5\xee\xed\xdb\x8b\xcb\xeb\xab\xf1\xc9\xfb\x93\xf3\xeb\xf1\xc5\xdb\xeb\xb3\x8b\xf3\x2b\x92\x9b\x5d\x5d\x82\x79\x35\x31\x60\xa2\x89\x01\x35\xdb\x0e\x44\x00\x08\x52\x4e\x6f\x5c\x0d\xa8\xe2\xa1\x30\x1a\x2a\xbf\x97\x1a\xd8\xac\xc0\x62\xcd\x7d\xcb\xe4\x72\xa6\x07\xe5\x03\x73\x60\xee\x61\xa2\x51\x36\x34\x90\x76\x70\x8b\xaa\xb0\xcf\x18\x61\xb5\x68\x8e\x1c\x83\x9b\x20\xa6\x9e\x10\xa9\xa3\x42\x4c\x2b\x1b\x6f\x0f\x7a\xdc\x20\x6c\x79\x2c\xbd\x16\xf1\xd4\xb7\x64\x6d\x9c\xd0\x96\x92\xbe\x4c\x6b\x9d\x86\xee\x96\xdb\xef\x76\x63\xb5\xa3\x8c\x6a\xe2\x2f\x18\x8b\x99\xfe\x8d\x62\xd2\x1a\x07\xa1\x49\xb6\x54\xeb\x9f\xb7\xf8\x08\x3d\x25\xd3\x69\x3e\x48\x39\xd6\xfb\x29\x1f\x4c\x78\xe1\x5c\x86\xfc\xa6\x5e\x94\x74\x2e\xc1\xf2\x6f\xeb\x44\x94\x76\x6e\x0f\x62\x66\x1d\x0c\x8d\xdd\x84\x22\xcc\x7a\x8c\x3f\x64\x77\xf4\x4a\x26\x92\x4d\x5e\xa6\xd9\xe4\x2e\x16\x0e\x4d\x05\xa1\x41\xf9\x83\x58\x20\x84\xb7\xfb\x40\xf4\xf7\x7c\x03\x14\xf9\x5f\x1a\x55\xf6\x19\x70\xc0\x0f\xfc\xbf\xcf\x11\x74\x73\x46\x3a\x9d\xcb\xbe\x9e\x15\x4f\x75\x86\x4d\x40\x4d\x1b\xa1\x20\xe7\x3d\x78\x58\x54\x5d\x47\xff\x9a\xd4\x74\xbd\x49\xc6\xa5\xc8\xd4\x44\x63\xe9\xb3\xd4\x89\x16\x7f\x54\xf1\x19\xfe\xa8\xf7\xfc\xf9\xfe\xa8\x06\x97\x52\x43\x8e\x40\x16\xab\x13\x98\x03\xbb\xb8\x31\x47\x1d\xd6\xbb\xc9\x32\x35\x0f\x5a\xc7\x08\xf6\x2b\xc2\x7a\x26\xde\xf8\x34\x53\xc2\xb4\x1b\x54\x79\x4e\x01\x76\xe7\xaa\x77\xab\x8e\x05\x88\x1a\xb1\x9f\x9d\xea\xc2\xea\x1a\x14\x95\x4a\xe8\x88\xd8\x20\xe1\xd4\x7d\x36\xa5\x29\x24\x9c\xaa\x60\x2a\x98\x17\x01\x38\x67\x8e\x12\xf2\xa4\xd7\x50\x09\x5a\xbe\x4f\x19\xb1\x1a\x17\x35\xbd\x34\x9d\x19\x0c\x88\x4c\x49\x0d\x15\x1f\x5b\x77\xe5\x4b\x49\xee\x85\xae\x8d\xf5\x3e\x41\x77\x06\x69\x51\x6f\x00\xde\x5c\xd2\xd9\x20\xaf\xb4\x55\x6c\x24\xac\xb8\xd5\xd5\x37\xb1\xae\xbe\xba\x5f\xcf\xf0\xf3\x0d\x40\xc7\xf5\x8c\x15\x3a\xf5\xc2\x7a\x4f\x62\x91\x2d\x25\xdd\xb5\x25\x2d\x54\x44\xb8\x64\x6b\x9a\xcc\xea\x4d\x22\x9c\xb4\xc1\x46\x38\x1e\xa1\x26\xb0\xc9\x91\xd8\xed\xe8\xf2\x39\xeb\xdd\xa2\xed\x4c\xeb\x68\x1d\xf7\x53\x5b\xe2\xd7\xcc\x72\xe0\x47\x00\x9a\x38\xa9\xe3\x7d\x6a\x6e\xc9\x08\xcb\xf5\xae\xc8\x65\x86\xa3\x0f\xd4\x20\xc7\x97\x8e\x57\xb2\xe4\xb3\x89\xaf\x34\x3a\x2e\x8b\xb5\xce\xca\x1c\xe1\xf5\x1f\xe8\x1b\x65\x80\xb0\x20\xbf\xc4\xad\x39\x7e\xb6\x5f\x70\x85\xed\x7d\x8a\x3f\x71\x9b\x43\xf4\x83\xcb\x89\xe2\x6a\x6e\x9a\x6f\x4b\x04\x9d\x50\xb2\x05\xa5\xbe\x65\x21\x98\x3f\x07\x97\x23\xae\x4f\xac\xcf\xaa\xd3\xfe\x2e\xe8\x1e\xfa\x22\x17\xec\xff\xaa\xb9\xb6\xce\xdb\x8f\xbc\x34\xdb\x25\x8d\xf9\x03\x6f\x08\x88\x29\xc2\xd8\xf2\x5a\x76\x89\xe1\x87\xde\xc5\x22\xef\x69\x6c\x00\x1c\xed\xde\x2b\x79\x2c\xc2\x72\xb5\x1a\x8e\xb0\x18\xf9\x03\xdd\x88\x1e\x3e\x38\xc8\x64\x6b\x18\x8e\xf4\xbf\x26\x3d\x96\xc9\x91\x65\xe4\xa3\x9b\xb5\x9a\xfb\xc0\x9e\x70\x49\x67\x56\xc7\x11\xa0\xcf\x87\xc1\x50\x80\x02\x07\xb7\x68\x8f\x57\x0e\xcf\x8e\xe9\x2c\x78\x24\x93\x5b\xad\x90\x5c\xa7\x15\xd1\xf9\xa4\x9b\x55\xf7\x00\xf8\x4a\xc2\x8e\x85\x4a\x7b\xf0\x26\x2f\x9b\xd5\x6b\xfe\x8d\xfc\xa0\xd2\x61\x42\xc2\x47\xc7\x74\x36\xb0\xc7\xfb\x3c\xc9\x0d\xc4\x98\xb6\x49\x9b\x53\x03\xd2\x02\x1f\xc4\xd5\x71\x57\x06\x1d\xe2\xe2\xaa\x63\xed\x91\x03\x9f\x41\xe5\xcf\x8c\x1b\x7a\xdc\x36\x61\x95\x79\xd5\x29\xda\x5a\xb3\x16\x34\xc2\xe6\x9a\xcb\xf6\x78\xd3\xad\x32\x4c\x60\x40\x1b\x0d\x2f\xc6\xde\xb2\xde\x9d\xa5\x0d\xcd\xed\xc4\x68\x1d\x74\xd6\x85\xda\x1a\x87\x0e\x2f\x95\xbc\x0b\x2d\x49\xc4\xc3\xcf\xcc\xdf\x6a\xaf\x31\x4e\xa8\xf6\x47\x9c\x32\x21\x1f\x8d\x87\x99\x3a\xcb\xcc\x44\x7c\xd8\xac\xec\xd3\x70\xad\x50\x73\x40\xfa\xba\x8d\x73\xb3\x1f\x64\x75\x8a\x9c\x81\x03\x08\xdc\x19\x39\x3e\x93\xd0\xcb\x5d\xf0\x8e\x8e\xc4\xc9\x6d\xf4\x40\xff\x39\x70\xa3\xaf\x99\x79\xa4\xfd\x44\x0e\xeb\x23\xb0\x75\x8e\x6a\xf4\xd4\xbe\x70\x30\x81\x27\xcf\x9d\x40\x3b\x71\x77\xf4\x31\x9c\xae\x8d\x0c\xa0\xd4\x19\xd9\x90\xce\xc3\xe0\x8f\x6c\x9e\xbf\x9a\x57\x52\xb7\x4b\x87\xb6\x4f\xa3\xaa\x19\xf7\x62\x23\xff\xd5\x13\xf8\x97\x31\xe0\xab\x4f\x9d\xc9\x80\xfb\x7e\x31\x2b\xad\xcc\x50\x08\xcf\x14\xc8\x09\x1a\x9e\xb3\xf4\xd6\x21\xeb\x48\x2d\x26\x14\x6b\x08\xc8\xcb\xc6\x25\x1a\x82\x4b\xd1\xc7\xcd\xa3\xd7\xf3\x1d\xec\x41\x6d\x16\x76\xec\x71\xea\xd1\x6c\xfc\x43\xc5\x32\x35\x1b\x73\x9a\x2a\x9b\x52\xdd\xce\x19\xd6\xf6\x92\x2b\x2d\x3f\xe8\x8c\xf1\x8f\xbd\x29\x9b\x48\xa4\xa6\x42\x8f\xab\x94\x68\xeb\x49\x26\xb7\x03\x11\x22\x18\x84\x49\x8a\x42\x17\x11\x03\x9c\xa7\xbf\xbf\x4f\x16\x03\x06\x8f\xf2\xc1\xd0\x48\x4e\x23\x2c\xac\x97\x72\x3e\x18\xf2\x11\xd6\xaa\x8c\xc1\x5e\x05\x4e\xc4\x85\x11\xe9\x62\x3a\xdf\x48\x19\xe6\xa4\xe1\x93\x03\x3e\x68\x39\x06\x34\x74\x47\x5d\x89\xa3\xef\x60\xdc\xe3\x67\x14\xbe\x47\x6d\x65\xf4\x20\xbd\xc3\x9c\x63\x50\xc1\x04\x55\xfc\x2a\x83\xfa\x3f\x83\x64\x9b\x64\xd8\x1a\xe9\x92\x80\x38\xc3\xb5\xaf\x51\x31\x09\x20\xc8\x4a\xea\xcc\x30\xce\xd4\x5b\xcb\x4b\x9f\x9e\xc6\x1c\xc0\xc7\x09\x8f\x85\xc9\x4f\xe1\xe2\x64\x85\x92\x1e\xb0\x49\xb9\x04\xca\x02\x4d\xc1\x03\x61\x48\xb9\x94\x81\xcd\x5f\x89\x45\x28\x7d\xea\xf5\x10\x76\x73\xc5\xe5\x9d\x00\xc3\x6d\xf1\x15\x24\x25\x1d\xad\x9a\x0d\x9f\x2c\xde\xcd\x8c\xf3\xd6\xdb\xf2\x21\xbf\xe0\xdb\xe7\x93\x81\x87\xc2\x30\xbc\xf2\x3f\x0b\x8b\xbd\xef\x76\x99\x4b\xe8\x5e\xd9\x91\x9d\xca\x66\x74\x09\xad\x82\x20\x9e\x40\x9d\x2b\x6b\x12\xd3\x58\x3a\x50\x7a\xb5\x05\x2d\xc0\x73\xb0\xe7\xe5\x67\x89\x42\x9e\xe1\x1f\x36\xea\xa3\x41\x22\x1b\xd2\x61\x7f\x04\x51\x49\x0d\x30\x1f\xd1\xbf\xa2\x1d\xaa\x6e\xe5\x74\xb8\x37\x1a\x79\xa3\xc1\x5d\xed\x00\xe1\x3e\x25\x52\x1b\xa8\x56\x29\x9b\x02\xef\x01\x6f\x10\x1e\x90\xcc\xce\x11\xd3\x5e\x1a\xb6\x14\xdc\x22\xd8\x24\x66\x78\x68\xd7\xf7\x60\x38\x1a\x48\x7c\xc8\x63\x81\xfc\x59\x33\x52\x87\x4d\x60\xd7\x78\xdb\x98\xa6\x3e\xfb\xc4\x6e\x66\xad\xdd\x4c\xba\xdd\x78\x93\xea\x7c\xd8\x1f\xa9\x4b\xe7\x70\x6f\x84\x35\xdf\x86\xde\xef\xee\x0d\x02\x87\x55\x93\x0f\xbd\x03\xf9\xac\xd5\xf5\xd3\xce\xa8\x18\xf2\x11\xb8\x33\x80\x1f\x73\x8f\xe5\xda\x9f\x99\x59\x32\x34\xe9\x16\xd9\xb0\x0f\x9f\x65\x84\x10\x7d\x88\xbf\xa2\x72\xb5\xf2\x3f\xdf\x24\x8f\x37\xf4\x75\x36\x49\x52\x3b\x09\x6c\xc8\x82\x58\xc9\x9c\x24\xc3\xc4\xff\xee\xa8\x76\x6b\xf2\x80\x49\xf1\x31\x64\x38\xd7\xe7\xfc\x48\x71\x37\xb5\x00\x59\x7d\xa9\x12\x3c\x74\xcb\x03\xb1\x44\x6a\x61\x54\xd3\x97\x9c\x0c\x47\x1d\xda\x1b\xd3\x8f\x0b\x2a\x98\xba\x71\x26\xe9\x9b\x64\x22\xb2\x9c\x5c\xea\x01\x5d\x73\x7c\xc4\xf1\x1b\x8e\x7f\xe7\x25\x20\xc7\x33\xbe\x09\xc8\xf1\x98\x6f\x82\x68\xfc\x9d\x6f\x84\x68\x3c\xe3\x55\x88\x46\x57\xff\x79\xc0\x92\x01\x0e\xd2\xb1\xf2\x6e\x17\xf2\x50\x69\xe4\xc4\x6e\x37\xb2\x4e\x29\x91\xe6\x36\x8f\x0b\x7a\x20\xad\x3e\xd4\x6a\xba\x5c\xb5\xaf\x43\x2c\x90\x0c\x86\x18\x04\xe8\x0f\xd4\xfe\xf3\x1f\x9f\x96\x42\xad\x9e\x74\x94\x90\x37\xca\xd1\x03\xaf\xbc\x8e\x76\xec\x0b\x7d\x2a\x2f\x92\x09\x1d\xc8\x30\x80\xae\xa2\xf4\x6d\x56\x05\x97\xbb\xe2\x4f\xaf\x40\xbd\xcb\xb1\x40\xab\x15\x4c\x56\x2c\x21\x51\x76\xc7\x6f\x06\x1e\xa4\x0c\x37\x89\xe5\x2d\x81\x1f\xf3\xd8\x3e\x09\x0a\x30\xb3\x1c\x4f\xbe\x61\x6e\x91\xa3\x99\x3e\x50\xb3\xb6\xbe\xba\xc1\xbb\xb2\xf9\xd7\xa5\x5e\x1b\x15\x7f\x43\x8f\xcb\xbc\x91\x77\xbb\xe6\xaf\x4c\x73\xc9\xa6\xde\x64\x45\x71\xd3\x7b\x7b\x78\x79\x7d\x76\xf8\xfa\xaa\xdb\x8d\xaf\xab\x48\x83\x35\x96\x20\xc8\x11\x8f\x25\x7e\xc3\x01\xd3\xd4\x35\x2a\x8a\x02\x1f\xd5\x17\x80\xcd\x62\x5f\xbf\xb6\x55\x5a\x5a\x05\xbe\x40\x91\x87\x51\x3f\x54\xa7\x05\xb8\x99\x47\x47\x19\x97\x09\xe3\x54\x6c\x7d\x48\x34\x78\xfa\x2c\x5b\xf2\xe9\xd6\x87\x39\xe5\x5b\x6a\x02\x18\xbf\xdd\x5a\x2e\xb6\x92\xad\x07\x46\x3f\xe4\x5b\x0e\x0d\x63\xeb\x7a\xce\xf2\x2d\x96\x6f\xdd\x67\xb9\xdc\x4a\xd9\x1d\x4d\x1f\xb7\xa6\x4b\xba\x25\xb3\xad\xfb\x84\x2f\x93\x34\x7d\xdc\xd2\xca\x5b\xc9\x12\xa9\xaa\x49\xf8\xd6\xc9\xfd\x0d\x15\xbd\xf7\x8c\x7e\xe8\x6d\x5d\x51\x3a\xd8\x9a\x4b\xb9\x18\x7c\xfd\xf5\x2d\x93\x3d\x96\x7d\x7d\xf2\xe3\xdb\x05\x3f\x0c\xb2\x7b\xd5\xcd\x2c\xd1\x8e\x44\xab\x55\xe3\x0b\x81\x8a\x02\xbf\xe1\x8d\x42\x91\x89\xd1\xfc\x1a\x7c\x79\xe4\x50\x86\x2c\xcc\xac\x77\xf8\x90\x44\xe3\x68\x47\x60\x69\x02\x6f\xbf\x8e\x50\xa1\xa5\xf3\x97\x9c\x3c\xb1\x59\x05\xdd\xce\xca\x53\xf5\xe8\xf8\x77\xc2\x03\x48\x69\x3f\x68\xa1\xbd\x24\xf4\xbf\x2f\x10\x2a\xb0\xf6\xd8\x6d\xaa\x12\x5b\xe3\xca\x14\x7c\x1e\x03\xa1\xd1\x23\x55\x7b\xa1\x19\x6b\xf6\x8e\x15\xcb\x06\x4e\xcd\x4c\x88\xee\x0b\x84\x27\x24\x09\xfd\xac\xf1\x8c\xf0\x4a\xf4\x08\x2f\x47\x8f\x0c\x32\x3c\x6d\xc2\xca\xc6\xbc\xe3\xb2\x74\xf4\xbb\xdd\xb8\x39\x19\x60\x9b\x84\xb0\xe5\x63\x51\x10\xf2\xbe\xfe\x05\xea\x50\x90\x1d\xc3\xeb\xad\xb5\xcf\x57\xee\xaa\x90\x8e\x2f\xe8\x80\x1c\xf6\x47\xda\x9f\xee\x16\xe2\x21\xe1\x14\x05\xe5\x7a\x58\x84\x1f\x34\x5d\xe3\x63\x01\x81\x06\x03\xb1\x5a\xf1\xd5\xea\x8d\x28\x62\x33\x2b\xd0\x66\x84\xba\x5d\x33\x2b\xe6\x37\xce\x91\x07\x9a\x6f\x70\xe4\x4a\x86\x5f\x8d\x0e\x7e\x17\x71\x82\x13\xac\xfe\xc6\x53\x3c\x81\xf0\x80\x20\xb2\x70\x86\xca\x36\x02\x14\x27\x48\x95\x71\x6e\xa9\xd8\xab\x35\x5c\xc8\x88\xae\xa8\xc9\x55\xbf\xdf\x10\xb7\x6d\x9e\xfc\x5e\x0a\xa5\xf5\x4e\x95\x50\xb0\x1c\x0f\xef\xad\xa7\x45\x11\xf6\x04\x27\xd0\x32\x1a\xfe\x04\xf9\xd5\x4d\x5e\x2a\xa1\x88\x56\x89\x17\xcd\x20\x8f\xcd\x84\x5a\x60\xbd\xdc\xcd\x65\x54\xcd\x39\x8d\x8f\xd5\x96\x73\x45\x50\x81\x67\xd5\x7d\x51\xfe\xfe\xb4\xfa\x7d\x1d\xee\xd2\x14\x78\xe9\x36\x62\xdd\x1d\x0a\xd7\x9d\x98\x10\x80\x58\xce\xdb\x06\x58\x81\x8b\x2f\x70\x9a\xdd\xae\xed\xe8\xf7\xd5\x8e\xde\x2f\xab\x1d\xf5\x3b\xbe\xda\x3f\xc5\xbf\x63\x41\xd4\xfd\x4a\x0c\xdf\x8b\x91\xbb\xcd\x98\x70\x6e\x23\xea\x98\xf1\x71\x47\xf7\x6c\xf8\x87\x18\x11\x8e\xd9\xf0\xab\x11\xe1\xc3\x1f\x47\x98\xa9\xe2\x6a\x25\x59\x81\xa3\x3f\x96\x54\x3c\xee\x2e\xc0\xa5\x20\x5a\xdb\xfb\x9f\xab\xbd\x17\x34\x99\x66\x3c\xad\x12\x80\xde\xb2\x4d\xdb\x5e\xf5\x64\xb5\xa2\x45\xc3\xec\x97\x5c\x64\x52\x4d\x5d\x4b\x7e\xa3\x4e\xa1\xe6\x4e\x2d\x69\xfb\x52\x06\x9e\xe8\x4b\x9e\xd2\xbc\x8a\x43\xfa\xc9\x9c\xfa\x85\xe3\xd8\xa8\x70\x92\xed\xda\xc9\x7a\x5b\x9d\xac\x68\x97\x26\x93\xf9\x2e\xe3\x6b\xca\x1d\x35\x0d\x06\xca\xb2\xf5\xad\x5d\xd6\x5b\x03\x10\xed\x5d\x40\xfe\x5e\x5b\xf4\xba\x5e\x94\x67\xe2\x3e\x49\xd9\x9f\xf4\x39\x03\x3d\xaa\x97\xbf\xa5\x72\xd7\xa8\xfc\x76\x1f\x12\x11\x0d\x66\x81\x4f\xc5\xfb\xc4\xdb\x6a\x1a\x97\x45\x83\x32\x36\xed\x00\xcc\x1c\x94\xa2\x6c\xb0\xe7\xfb\x24\x0a\x95\x8d\xd9\xe9\x63\xa6\x75\x54\x19\xe8\xb7\x9e\xad\xa7\xca\xfe\x76\x5d\x4f\x30\x97\x37\x3c\x86\xd4\x7c\x30\x85\x46\x97\xda\xc2\x1c\x68\x2f\xf4\xa6\x09\x4e\x45\x02\x5a\x9e\xb0\x2d\x3d\x80\x03\xe0\xd9\x3d\x38\x6a\x1c\x0a\x40\x1c\xdd\x27\x8c\x47\x68\xd0\x30\xd3\xea\xfb\x8f\x1c\x34\x0d\x1f\x94\xc8\x1d\x98\x13\xb0\x30\x06\x40\xe8\x68\x92\xe7\x54\xc8\x5d\x1b\xac\xba\xeb\x64\xde\xdd\x39\xdc\x03\x77\xed\xa1\x12\x0d\xee\x44\x81\xdf\x6d\x32\xb4\x68\xe7\x95\x9c\x0c\xf5\x99\x64\x32\x89\x66\x37\xbf\x5f\x67\x1a\x60\xbb\x74\xc3\x83\x97\x37\x4b\x96\xca\x33\xae\xef\x9d\x39\x79\xc9\x2b\xf8\x84\xfe\x72\x7e\x94\x4c\xe6\xba\x02\x57\xb8\xe9\x2b\x45\x9b\x36\x47\x95\x1e\x45\xed\x65\x90\x7f\x9c\xf5\xf4\x6d\xb4\x0c\x79\x6a\x25\x4e\xc6\x53\xc6\xa9\x8e\x42\xb8\x49\xb3\xc9\x5d\xde\x01\xd7\xf1\x38\xb2\xea\xf2\x0b\x40\x79\x80\x47\xc6\x82\x79\x6b\x9f\xbc\x61\x90\xdf\x28\xbe\x03\x23\x3c\x7c\x02\x45\x16\xf6\xb7\xfd\xe0\x2d\x47\x2e\x66\x95\x93\xfe\x3e\xff\xf6\xd2\x25\x4d\xe3\x3b\x3b\x00\x15\x71\xc9\x87\x7c\x84\x74\x8e\x0c\x40\x5f\xf5\x13\xc0\x52\x2a\xcc\x58\x5e\x27\x7f\x02\x8a\xa2\x7a\x04\xcb\xff\x60\xc2\x0c\x4d\x2e\x2d\xd4\xe8\x46\x59\x5a\x08\x1b\xaf\x90\x93\x27\x23\xd4\x3e\x19\x2b\x2f\xb8\xb0\xfc\x22\x30\x18\x79\x0d\x02\x5a\xf5\xf5\x1c\x2e\x3a\xc1\x17\x6b\x15\xa2\xcf\x05\x70\x0f\xf4\xdc\xed\xb0\xed\x95\x0b\x9d\xd0\xd7\x38\x28\x64\x51\xf7\x45\x13\x6c\xbc\x21\xcc\xd6\x16\x0d\x4d\x5b\x54\x1c\x1e\x3e\xb5\xc6\xcd\x35\xfa\xa4\x20\xd5\xa9\xd0\xf7\xcc\xb5\x94\xbb\xb3\x83\xb9\xea\xa4\xe9\x72\xa3\x64\x1e\xf4\x6a\x48\x47\x1b\x70\xf9\x37\x8e\x64\x5c\x03\xe9\x0f\x2f\xf3\xf6\xea\x1e\x0e\x9a\x97\x46\xc4\xcc\x88\x1a\xf7\xda\xce\x8e\xc3\xf9\x70\xe1\x25\xcf\xc6\xff\x6f\x98\xe3\x52\x0e\x80\x8d\x48\xfd\x95\xfb\x74\x30\x15\xe3\x3a\x5e\x7f\xa7\xa1\x69\x81\xaa\x9d\x9f\x57\xa9\x25\xd0\x51\xd7\xdd\x88\x8d\x3d\x3f\x60\x80\x65\xb8\xef\x6a\x3c\x65\x69\x99\x4c\x52\x4a\x9b\xbf\x39\xac\x24\xa7\x52\xcf\x00\x06\x3d\xf1\xf8\x79\xeb\x5f\x66\xb5\x43\x3a\x6a\xd3\x8a\x59\x9f\x40\x30\x01\x60\x8d\x32\x76\xca\x63\x30\x8a\x2d\x53\x0a\xbe\xba\xba\x9c\x46\x07\x08\x3d\xff\x34\x19\x0c\xa2\x1d\x86\x33\xb4\x5a\xb5\xbd\xac\x63\x55\x79\x15\xb4\xd6\x89\xf9\x2b\x19\xd5\xba\x19\xad\x4d\xa7\x5a\x81\xe4\xfe\xe8\xb1\x5c\x0f\xc8\x78\x10\x16\xea\x2e\xd6\x34\x05\x89\xf3\xf8\x6b\x6f\xda\xaf\x87\x8b\x91\x2c\x62\x81\x0e\x32\xea\x05\x4b\x83\x15\x53\x92\x9b\x06\x31\xed\x71\xfa\xc1\x38\x55\x25\x37\x40\x3a\x38\xf1\xa5\x4a\x5f\x23\x8b\x1f\x29\x2b\x74\xd8\xb8\x74\xd7\xf0\xcb\x98\x63\x62\xfb\x47\x28\x70\xb3\x9e\x29\x5f\x62\x3c\x9a\xd9\x8d\xd7\xee\xb6\x3a\x71\x38\xf6\x5f\x22\x0f\x30\x2a\x3d\x55\xc9\xa2\xbc\xb6\x56\x07\x3a\x88\x76\x68\x59\xdf\xea\x12\x64\x9d\xf3\x98\x19\xfd\x5f\xc0\x44\xc0\x33\x52\xed\x68\x86\xb3\x86\xf3\x09\x39\x39\x4b\xc0\x80\x00\xac\x50\x91\xe0\x69\x26\xce\xad\x9e\xb3\x49\x5f\x84\x05\xb1\xea\x50\x38\xca\x8d\xfa\x7d\x30\x70\xba\x29\xad\x7e\x37\xce\x81\x5a\xcf\xc2\x77\xd4\x6d\xc1\xfd\xec\x63\x8e\x10\xd6\x0e\x4d\x32\x50\xab\x8a\x22\x98\xdc\x67\x1f\x60\xe1\xfe\x61\x6e\x22\x33\x42\x71\xd2\xa4\x0b\x14\x06\x14\x6a\xb5\xd2\x16\x37\x68\xda\x2e\x83\x53\xe6\x96\xb8\xb5\x9d\x52\x3b\x65\xfa\x2b\x54\xc4\x6a\x6e\x4f\x79\x2c\xec\xbe\x45\x81\xf9\x2c\xa9\xf1\xad\x1c\x2f\xb5\xb0\x9e\x5b\x23\x46\xe2\x4f\xac\x83\x25\x49\x4c\x5a\xb3\x98\xa1\x41\xf0\xa6\x13\x46\xeb\xb4\x08\x70\xc0\x00\xf3\x32\x81\xa4\xb6\x03\x69\xc7\x34\xb7\x74\x5b\xde\x36\xd5\xed\xc6\xa5\x76\xb5\x2a\x6f\x42\x00\xb8\x61\xcc\x1c\x64\xc3\x95\x4c\x84\x44\x36\x89\xa8\x46\x7c\xaf\xf5\x24\xc2\xaf\x39\xce\x10\x9e\xb9\x2b\x49\xc3\x30\x8d\xeb\x9d\x4b\x4d\x7f\x71\xfe\xfa\xd7\xf1\xab\xd7\x67\x6f\xde\x9c\x5c\x8e\x8f\x2e\xde\xbc\xbd\x38\x3f\x39\xbf\xbe\xea\x76\xe3\x99\x41\x9f\x89\x33\xbc\xd4\x58\x12\x1f\x7b\x2c\xb7\x3e\xde\x17\x3c\xf5\xd0\xd6\x28\x0e\x9a\x30\x7b\xa1\x56\x03\x76\x63\x77\x9f\xea\x65\x9f\x92\x5a\x69\x3c\x27\x73\x11\x4f\x43\x32\x98\x77\xbb\x01\xe0\x2f\x21\x64\xae\xa1\x55\xa0\x8a\x05\x99\xdb\x6d\xdb\x99\x91\xb9\xb3\x62\xc0\x25\x23\x13\xf1\x22\x66\x08\x4f\xf1\x52\xc3\xb6\x5d\xa8\x1e\x05\x6d\x62\x78\x6d\xda\x59\x1e\x2c\x07\xcc\x2a\x71\xd5\x56\xe9\x2d\x04\x7b\x48\x24\x20\x6c\x1e\x2b\x46\xa7\xd6\xa9\x28\xca\x82\xd9\xcc\x0d\xf7\x0f\x59\xae\x7c\xb5\x2a\x39\x91\x57\x6b\x3c\x53\x35\x6a\xf3\x9f\x9a\xa3\x49\x8c\xd6\x5f\x15\xe0\x94\xcc\xf1\x0c\xe1\x99\x71\xef\xf9\x9e\x93\x27\xcd\x91\x07\xcd\x4e\xba\xce\x2d\x32\xe4\x4d\xef\xd4\xc9\x57\x66\x49\x4e\xee\x2e\x0a\xfc\x9e\x93\x77\xf1\x13\x9b\x0e\xa2\xc9\x7c\xf6\xd3\xe4\xfb\xff\xf8\x26\xc2\x70\x57\x18\xfc\xe3\x29\xd2\xce\xfa\x79\x34\x18\x46\x5d\xa3\xaf\x8f\x46\x58\xa3\xd3\x82\xb2\x2e\x1a\x0c\x87\x7b\xff\xc4\x7b\xa3\x11\x8e\xe6\x49\x7e\xf2\x90\xa4\xd1\x60\x96\xa4\x39\x2d\xfe\x81\xef\xa9\x4c\x06\x4f\x9e\x69\x0c\xa2\x45\x32\xb9\x4b\x6e\x69\xfe\xb5\x49\xbb\xb5\x6b\x97\x2f\xff\xda\x42\x71\xa6\xec\xe6\x6b\xab\x50\xcf\x7d\x5e\xae\xde\xfc\x26\x8f\x8a\x02\xe1\x3f\x5c\x7f\xcf\x7f\xfe\xed\xcf\xd7\x57\x67\x67\xcd\xfd\xb5\xf9\xc8\x22\x1c\x5d\xd3\x8f\xf2\x14\x60\x5b\x71\xf4\x2f\x9b\x36\x31\xc2\x51\x37\x91\x52\xe4\xf5\x01\xfd\x13\xeb\x9b\xce\x70\xf8\xe2\x3f\x70\x88\x3d\x3d\x0c\xf0\x60\x8d\x55\x11\x37\x7c\x13\xe0\xc4\x9a\xaf\x8c\xab\xd1\x53\xbd\x21\x36\x83\x76\xbe\xc1\x7d\x3c\x8c\x7c\x16\xb5\x68\xd4\x56\xe6\xdf\xb0\xfa\x7a\x0f\x0f\x47\x23\x3c\x1c\xee\x7d\x83\xff\x09\x7f\x44\xff\x32\x6a\xf3\x70\x88\x23\x5f\xb5\x4e\xcf\x18\xa9\x6f\x5f\x7c\x83\xbf\x51\xc5\xd5\x7f\x38\x02\xe5\x1b\x85\x50\xa2\xc1\x70\x54\xb4\xb4\xf7\xe2\xef\x6a\xaf\xf6\x68\x0f\xbf\x18\x15\x76\xd6\xfe\x16\x9a\x02\xe5\x94\xa3\xa7\x9f\x1d\x3d\xcd\x66\x87\xaf\xff\xed\xfb\xe3\xb4\x91\x9e\xea\x54\x8f\x87\x2f\x5e\x60\x7b\x91\x1e\x61\xe8\xe0\xdf\xd5\x65\xdd\x8a\xeb\xf3\xab\xe7\x01\x7b\x8c\x03\x8e\x60\xaf\xc9\xc2\xe5\x6c\x36\x62\x39\xe4\xa5\xad\xa5\x18\xe8\x04\xd7\x26\x41\x35\xbf\x1b\xf3\xf8\xc9\xf8\x33\xaa\x5b\x33\xe3\xd6\x34\x8c\x75\xa5\x83\x27\xa8\x6c\x20\x30\xe3\x32\xb3\xb6\x5c\xe3\x66\xa3\xd5\x3d\x26\xdc\x62\x57\x66\x8b\xdd\x94\x3e\xd0\x34\x0a\x7d\x6d\x4c\x09\xed\x65\x63\x7e\x78\xaf\x9c\xa2\x40\x9d\xd0\x4b\x5b\xd0\x99\x71\xe0\x2a\x57\x58\x6e\xb0\xd9\xab\xa7\xa1\xa5\xa2\xa0\x26\x9b\xa1\x9f\x5b\xde\x88\xbd\xeb\xe6\x9b\x7d\x79\xba\x65\x86\x21\x90\xae\x1a\xdc\x14\xdc\x24\x0f\xac\x14\xee\xf1\x2e\x71\x15\xb4\x90\xab\xbb\xd4\xa0\xe1\x43\x8e\x0a\xcc\x0a\x00\x4b\xa7\x3d\x41\xb3\x05\xe5\x1a\x71\x26\x1c\x4f\xa9\x36\xef\x0c\xd8\xd4\x29\x2b\x08\x8e\xcb\x51\x09\xd2\x91\x55\x29\x25\x00\xce\x88\x1c\x4e\x7b\x17\x3f\x9f\x9f\x5c\x8e\x3a\x25\x5f\x51\x81\x39\xce\x30\x8b\x33\xe4\x40\x55\x1b\x54\x2c\x00\x99\x4c\xf9\xf4\x3a\xab\x0b\xc8\x1d\x49\x6a\x44\xde\x9b\x27\xf9\xf1\xc5\x9b\x6e\xb7\xe6\x5b\x4e\x0f\x1c\x86\x01\xd8\x1c\xae\x68\x4a\xd5\x49\x1d\x53\x34\xa0\x1a\xd0\xcc\x26\x71\x47\xe5\x0c\xee\x7e\x68\x91\xee\xcc\x05\xd0\xd7\x7b\x46\x3f\xd8\x14\xef\x10\x07\x21\xa8\xfe\xb0\x8c\x1a\xc1\xd5\x29\x7e\x11\xf8\x6f\xd7\x7c\xa5\x05\x9d\x55\x30\xed\xeb\xf1\xdc\x2e\xe3\xba\x6f\x9b\xbc\xe2\xe0\xe6\x14\x47\x75\x1e\xa2\x18\xce\xd7\x70\x61\x50\xc7\x11\xfd\xb8\xc8\x84\xcc\x15\xa3\x6e\xfe\x52\xb1\x1a\xc0\xb4\x1c\xe1\x8a\xfb\x5a\xb4\xcc\xe9\x96\x9a\xca\x89\x8c\x3a\xcd\x89\xc3\x28\x8e\xc6\x63\x9a\xbf\x01\xee\x16\xe1\x27\xad\xaa\x06\x98\x89\xd6\x02\x3e\x76\xb5\x92\x72\xac\x05\xee\xbe\x67\x0b\x14\xeb\x6a\x7d\x03\xb0\x9c\xcf\xac\x51\x7d\xbc\xb6\xb6\xfb\x4f\xa9\xed\x7e\x53\x6d\x0b\x4a\xef\x3e\xa9\x7f\xb6\xc0\xda\x5a\x73\x2a\x3f\xa9\x52\xf3\xfd\xda\x3a\x9d\x6f\xde\xb3\x6b\x75\x25\x74\x7a\xb7\x35\x24\xe9\x08\xad\x44\x95\x1a\x79\xec\x26\xb9\x51\xcc\xbb\xa1\xe8\x52\xb2\x34\xa0\x5e\x08\xf8\x51\x3f\xed\x49\xe9\xbc\x0f\xaa\xf4\x6b\xed\xd3\x5f\x46\xc5\xd4\x4e\x1b\x99\x62\xea\xd6\x85\xcc\x15\x83\x34\x64\x49\x28\x50\x00\xa1\x40\x56\x84\xfa\x29\x09\x51\x30\x32\x9c\x58\x33\xa9\x67\x74\x41\x25\x99\x81\xb3\x00\x76\xec\xb0\x6e\x97\x5c\x77\x75\x1a\xa9\xfd\xef\x2b\xce\x0d\x12\xc5\x1e\x4e\x37\x18\x35\xc6\xa9\xc1\x31\xc8\xdf\x53\x91\xab\xcb\xbd\xd1\xc8\x8d\xcd\x59\x44\xa7\x27\x7c\x4a\xac\x9e\x6e\x3c\x4b\x13\xa9\xbe\x9f\xda\xcf\x8d\x31\x62\x6c\x1c\xde\xed\xc1\x0c\xcf\xa6\x2e\x25\x62\x5e\x7e\x71\xcf\x3e\x32\x5e\x79\x26\x93\xdb\xda\x83\xca\x27\xb3\x54\x3d\x32\xbf\xb4\xfa\xc0\x4a\x2e\x30\x69\x41\x90\x05\xe4\x19\x34\x41\x8b\x3e\xe0\x22\x78\xe8\xa7\x19\x57\x26\xc2\xd4\xb2\x0e\x7f\x21\xa7\xf2\x4c\x5d\xc6\x92\x94\xfd\x59\xc9\x1c\x1c\xf4\x74\x45\xfe\x03\x80\x09\xf8\xf3\x3e\xff\x3f\xfa\x73\x75\x19\x6b\xfe\x36\xd4\xe1\x8e\xe7\x49\x7e\x9a\x26\xb7\xf1\x7f\x20\x5d\xc8\x39\x11\x02\x95\xb5\x69\xd6\xf5\x34\x19\xd8\x13\x3d\x83\x46\xc3\x6d\xa6\x13\x9c\xd5\x45\xd3\x31\x63\x94\x57\xaa\x7a\xa3\x0a\xa4\xd3\xd8\xc8\x30\x76\x17\x04\x2f\x74\xaf\xae\xa0\x56\xf3\xf8\x39\xc3\xd1\x58\x0e\x39\x95\xeb\x4a\x96\xe6\x78\xaf\xa1\x25\x3a\xdd\xd8\xd0\x8b\xc6\x86\xca\x05\x4b\xed\xbc\xd0\xed\x94\x86\xb9\xb1\x95\x7f\xda\x56\x5a\x8b\x95\xda\xf8\xa7\xfa\xda\x16\x6e\x58\xc4\x38\xf8\xba\x4b\x91\x5d\xad\xf1\x2d\x95\x17\x42\xa7\x48\xbc\xf8\xc0\xdf\x24\x8b\x36\x02\x18\xd2\xd1\x6a\x15\x9b\xbf\xaa\x7e\x19\xcb\x34\x05\xdf\x89\x6a\x7d\x57\xcd\x31\x22\xf5\xfa\x20\x36\x83\x4a\x5d\xc7\x8c\xf1\xe9\x99\xe5\x21\xe5\x2e\x29\xe9\xc1\xe3\xd8\xaa\xd2\xfb\x16\x56\x62\xdf\xaa\x00\x45\x55\x85\x1f\xf8\x66\x37\xb8\xbd\x5a\x3f\xcb\x2d\x56\x08\x80\x55\x52\xdc\xa8\xb0\xd3\x79\xc6\x5d\x4f\xca\x83\xf9\xbc\x9e\x74\xbb\xdc\x26\xa8\x35\xbe\xf9\xfd\x4e\xd0\xaa\xf5\xd7\x57\xad\x7f\x10\xcc\x62\x1e\x36\xa1\x17\xe8\xf5\xac\x2d\x5f\x1c\x01\xf7\x8b\x60\x26\x05\x4d\xa6\x1b\xab\x50\x9f\x57\xda\x6b\x89\x1f\x1a\x7b\x84\xbf\xc0\x22\x00\xf0\x96\x9e\x11\xc7\x7d\x77\xef\xa8\xc0\x36\x22\x4c\x2b\x9d\x5a\xd7\xa7\xb0\x4b\x60\xbf\x9d\x27\x8c\xe7\xa7\x8d\x81\xe4\xed\x73\x91\xba\x92\x81\xe7\xe5\x16\xe3\x5b\x52\x11\x5f\x1b\x25\x63\x09\x06\x44\xdf\xd7\xe7\x75\xc0\x37\xd6\x12\x3d\x65\x6a\x05\x1b\xf7\x47\xd6\x10\x38\x5c\xdf\x3e\x71\x64\x8e\xbc\x08\x81\xad\x1c\x92\x1b\x28\x12\xaa\xd7\x50\x65\x23\x65\xd2\xf5\x15\xe9\x04\x09\x36\x8b\xef\x1b\x7d\xa0\x96\x2e\xa2\xd6\x75\x1c\xb7\x12\xb6\x3d\x88\x4b\xd1\xe2\x71\x10\xab\x28\x0f\xcc\x96\x1e\x48\xcc\x1b\x32\x06\x0b\xf4\xa4\x41\xbe\x05\x52\x2b\x01\x63\x13\x4a\xc8\x13\x80\x28\x88\x70\x65\x2f\x2a\x52\xa0\xc7\x81\x54\x50\xde\x89\x71\x4d\x6c\x30\xcc\xa5\x2c\x4a\x18\x2f\x09\x84\x9c\xa9\x10\x12\x1e\x50\x7a\xd7\x5c\x75\x79\x7d\xab\x7c\x29\x8e\xc2\xca\xa3\xc0\x91\x59\x12\x42\x72\x17\x8a\xa9\x29\xe9\x3e\x7b\x68\x19\x80\x59\xfc\xea\x10\x63\x8a\xf3\x70\xa5\xda\x0a\x3f\x6b\xb9\x82\x8e\x7e\xfe\x9a\x81\x06\x08\x56\x8d\xfb\x55\xe3\x08\x8b\x6d\x42\xf2\x6e\x97\x82\x3f\x79\xe3\xf2\x25\xd3\xe9\x75\xf6\xda\xc9\x49\x4d\xe2\xb4\x96\x32\x96\xf9\xdc\xe1\x63\x99\x97\x07\x7b\x83\x3e\x78\x10\xd9\x59\x3c\x15\xd9\x7d\x5b\x5d\xed\xf5\xe8\x63\x3b\x7c\xd1\x0c\x10\x6d\x67\x83\x41\x26\xa9\xed\x3d\x83\xe7\x42\xdc\x1a\x01\x43\xb0\xcd\x03\x26\xeb\x7d\x9c\x61\x6f\x75\x02\xf3\x59\xd2\xed\x26\xdf\xd6\xc5\xe1\x6e\x37\xce\xc0\x61\x7b\x42\xe3\x04\xef\xa1\x06\x89\x79\x77\x17\x27\x64\x77\x0f\x61\x00\x60\x4f\x50\xa6\x2d\xde\x4f\x80\x07\xe5\xc1\xce\x25\xbe\xa7\x72\x9e\x4d\x07\x02\xdf\x31\x3e\x85\x64\x9a\x7c\x32\x60\x45\x80\xc6\x99\x93\x6c\x98\x8c\x3a\x2f\xb4\x83\xc5\x0b\xb5\x4a\x3d\xf5\xf1\x41\xa9\x0f\x83\x58\x3f\x25\x1c\xe7\x3d\x55\x09\x61\xa8\x28\xb1\xdf\xfa\x5c\x57\xb8\x4d\x55\xb6\xdf\x26\x64\x69\xe5\x3b\x10\x92\x1c\xca\xa0\x92\x22\xbb\x5d\x98\xa2\xfa\xd0\x57\xab\xe5\xce\x8e\x1e\x77\xe3\xd4\x35\x5c\x2f\xfa\x35\x19\x7c\x38\x42\xd5\x67\xb0\x89\x6c\x17\x1b\x47\x63\x91\xf6\x6a\x23\xf9\x76\x89\x9e\xf4\x3d\xab\x14\x44\xdb\x69\x04\x08\xab\xb7\x51\x09\xb3\x95\xa8\x14\xb9\x58\xee\x25\xaa\x8e\x44\xfa\x95\x14\xd5\x8f\x3b\xf5\xb9\xd0\x4e\xeb\x76\x65\xfb\x0d\xa4\xd5\x44\x6e\xa4\x5f\xf5\xb2\x92\x25\x27\x2b\xa3\xb0\x1d\xf2\xd1\x3e\x2c\xcc\x3d\xa4\xaa\x02\x62\x84\x94\x37\x90\xc7\x81\xf5\x34\x31\x22\xe8\xc1\x92\x43\x4a\x93\x98\x35\xb5\xb7\xb3\x83\x8a\xa2\x68\xb9\x12\x2e\x8b\x12\x59\x95\x16\xf0\x3e\x91\x93\x39\xe3\xb7\x4d\x3b\xdf\xe7\x87\x81\x82\x1b\xd7\x41\xa0\xf2\x90\x45\xc3\x90\x75\xd8\x99\x1e\xe9\x36\x24\x43\x03\x69\x11\xb6\x4a\xb7\xbb\xe7\xfe\x5e\xad\xe2\x8a\xbb\x0a\x50\xa0\xde\xb5\xb5\x19\x02\x54\x52\x5d\x10\xa1\x20\x71\xb5\xe8\x65\x37\x39\x15\x0f\x54\x00\x46\x60\x3b\x34\xe8\x33\x68\xac\x9c\xe8\x41\x86\x79\x1e\xac\xb3\xc2\x50\x8c\x3a\x3a\x12\xc9\x0f\x87\x9b\xe1\xc0\x32\x73\x3d\xf0\xc0\x3f\x60\x32\x4f\xf8\x2d\x05\xac\xaa\x8a\xf0\xa7\xc6\x4b\xf5\x78\xb9\x1f\xd4\x7a\x9c\x39\xbd\x8d\x6a\x28\x73\xa1\xb4\xe9\x77\x9a\x6f\xcf\xee\xb5\x49\x98\x1d\xca\xe8\xef\xad\x22\x81\xba\x08\xc3\xd5\x4a\x42\x06\x41\x70\x79\x5b\x04\x01\x6d\xd4\x63\xd6\x19\xe5\x4a\x6a\xec\xe6\x8d\xb1\x75\x78\x16\x3a\x68\xfa\x48\xbb\xa9\xb9\x06\x78\x69\xc2\xbd\x9a\x7b\xe1\x61\x66\x9d\x9b\x9a\x85\xc2\x20\x2f\xc7\x24\xa6\x28\x3c\xbd\xc3\x02\xb1\xad\x48\x20\x1f\x7f\xab\xf9\xa9\x01\xd5\x33\xbf\x88\x40\x58\x76\x54\x65\x15\x37\x2d\x6d\xe6\xae\x0b\x37\x73\xd3\x37\xd3\x30\xa4\x83\xf3\x77\x7a\xdf\x4f\xdd\x47\x70\x65\x0f\x5c\xb5\xa6\xe0\x53\x83\x45\x80\x6a\x73\xef\xed\x45\x76\x6c\x8c\x50\x17\x81\xb4\xcf\xbe\x23\xfd\x7d\xb6\xbb\x6b\xfd\x5f\xe8\x90\xe9\xc8\x4d\x4d\x73\x7a\x1f\x65\x66\xe7\x10\x18\x5c\x66\xb6\x4f\x18\x9b\x6d\x3d\xe8\x76\xf7\x0a\xa3\x28\x5b\xac\xd5\x13\xa6\x4d\xba\xeb\x4d\x5a\x42\x93\x94\xe9\xf9\xea\xc3\xda\x87\x81\x1d\xc1\xbf\x17\x4b\x9e\x66\xd9\xa2\x59\xdf\xe8\xbe\x5a\x64\xe9\xe3\x8c\xa5\x61\x3b\x54\x88\x4c\xd8\x7e\x7f\xfd\xa0\xf9\xe6\x33\x74\xf0\x41\x47\x17\x82\x4e\x12\x49\xa7\xbb\x33\x9a\xc8\xa5\xa0\xcd\x2a\x7c\xb0\xb9\x35\xab\x3e\x6d\x72\x26\x9c\x42\xd2\x89\x29\x9e\x7f\xb9\x32\xd4\xb8\x8f\x4d\xc9\x31\xc5\x14\x02\x88\xcc\xef\xe6\x90\x17\x93\x30\xe1\xd8\x3a\x3c\x52\x8d\xf7\x37\x99\x53\x75\x41\x7b\x08\x7e\x4f\xdf\xab\x66\xd4\xd3\x47\xa3\x67\x75\x9f\x8d\x31\xed\x25\x29\x4b\xf2\xa6\x6b\xd4\xcf\xe0\x28\x7c\x0a\xb0\x55\xaf\xb5\xe1\xca\x4d\x9d\x1d\x52\x4d\xf6\x6c\x1b\xb8\xc4\x4f\x93\x8c\xcf\xd8\xed\xd2\xa9\xbd\x43\x25\xf8\x1e\xce\x2b\x20\x0f\xd7\x06\x3e\x03\x72\xa6\xb4\xa8\xc8\xdf\xda\x6f\x50\x51\x40\xff\xd4\xed\x11\x52\xec\x5d\x52\x3d\x01\xe4\xad\xf9\xe3\x67\x26\xe7\x26\xfd\x4e\x4b\xc8\xe8\x5b\xea\x7c\x5c\xeb\x28\x08\x0e\x82\x8d\x17\x5a\x6f\x4d\xae\x55\xc5\x52\x3c\x56\x75\x22\xaa\x42\xf3\xed\xb5\x35\x1b\x6f\xf7\xa1\x77\xda\x7d\xf1\x50\x92\x07\x0a\x46\xc3\x45\x5a\x76\x50\x73\x61\xf4\xae\x79\x88\x9b\xbb\xa7\xa8\x53\x0e\xfc\xa6\xe8\xe0\xd1\x9b\xa4\x07\xae\x2e\x03\xcd\x5b\xf8\xda\xcf\xf8\x79\x22\xd9\x03\x85\x72\xe4\x51\xb5\x9b\x4c\xa7\xf0\xeb\xc2\x9c\xb6\x6d\xbd\xbf\xb5\x2d\x7c\xc0\x80\x12\x6b\x11\x84\x3f\xad\xf0\x89\x1d\x3c\xc4\x94\x1d\x65\x5c\x52\x2e\x7f\x66\x69\x7a\x04\x87\x29\x99\xd3\xca\xbb\x63\x36\x35\xaf\x16\xea\x15\x4d\x26\xf3\xb7\x22\xfb\xf8\x08\xcd\x06\x05\x1b\xa6\x0d\xb8\xec\x3b\xe7\x49\xeb\xf5\x5b\xdd\x2e\xd3\x6d\xf8\xf2\xae\x58\x51\x6b\xc4\xf7\xe0\xb3\xda\x70\xc5\x4b\x4d\x24\x53\x27\xae\x90\x0f\x98\xaa\x2b\x64\xf3\x05\xce\x92\x23\x18\x2b\xac\x51\x04\x05\x07\x54\x40\x96\xdb\x7b\x2e\xe7\x67\x4d\x36\x8c\x65\xc5\x97\xd8\x76\xd2\x86\x57\x02\x45\x96\xdd\x1d\xfe\xc2\xd4\xc0\x3a\xa4\x75\x11\x23\x9c\x11\xe9\x93\x62\x80\xd5\xd6\xf5\x51\xe7\x36\xc0\xcc\x13\x97\x9b\xa3\x13\xd8\x66\x5c\xe3\x45\x93\x0b\xe0\x88\xe7\x19\x6f\xf4\x7b\x37\x4e\xd6\x05\x7c\x74\x72\xbf\x90\x8f\xe4\x7b\xcd\x43\x5f\xa6\x09\xbf\x23\xef\x69\x87\x82\x96\x9f\xe6\xaa\xb2\x7a\x0d\xdb\xef\xa9\xb1\xe4\xdf\xd0\x5b\xc6\x2d\xdb\xd2\xcb\x98\x93\x09\x00\x10\xc3\x0f\xf3\x8a\xd1\x9c\x4c\x81\x3c\xf9\xb4\xfa\xf5\x4c\x3d\xe7\x99\x64\xb3\xc7\xf2\x2b\x92\x52\x60\xa1\x21\x67\x24\x57\xba\xa3\x26\x23\x81\x57\x70\x90\x3f\x55\x2d\xb0\x77\xd5\xc3\x63\x3a\xc9\x44\xa2\x9e\xbf\x84\x3a\xec\x67\xa7\x99\xf0\xaf\xce\xab\xaf\x5c\x2b\xc7\xfa\x44\x51\x12\x28\x0b\xea\x7a\xad\x79\x59\xed\xf9\xa9\x39\x3d\xe6\x09\xe3\xd7\xc9\x6d\x7e\x9a\x89\x1f\xe9\x23\xf9\x60\x78\x69\x30\x09\x4d\xde\xac\x4f\x05\xe6\x9e\x20\x30\x23\x7b\x70\xff\xae\xd2\x54\xb7\x5b\x66\x6a\x00\xa5\xc9\x48\x3f\x2c\x3c\xdc\x1b\xe9\xbb\xd9\x3e\xfb\xd6\x45\xbe\xb0\x9d\x1d\x24\x86\x7c\xc8\x46\x23\xcd\xb4\xd5\x9f\x41\x04\xbd\x1e\x54\x6b\x27\x03\x74\x98\xd5\xca\xba\x94\xbb\x4c\x68\x81\x54\x6a\xc5\x3b\x5a\xca\xe2\xe1\x64\x55\xec\x60\x28\xee\xe8\xa3\xda\x6e\x98\x29\xa1\xae\xd2\x4f\xa2\x3a\x87\xe1\x24\x10\x58\x6d\x15\xb0\xe4\x4a\xe0\x3a\x1f\x17\x89\x23\x1f\xd5\xcf\x0b\x4d\x1f\x15\xeb\x91\x93\x52\x01\x2b\xa6\x85\x23\x28\x41\xbf\xc1\x64\x14\xd7\xd2\xd5\x69\x63\x75\xfd\x3b\x1c\xb6\x77\xd8\xcb\xd9\x9f\x54\xdd\xa6\x0f\x7b\x3a\xad\xa5\x6a\xed\xce\x3d\xbd\xf3\x4f\x0b\xc5\x0e\x74\x12\x51\xef\xe5\x61\xc6\x10\x61\x89\x5f\x51\x40\xfe\xd2\x1c\xd0\x9d\x1a\x6f\xb1\xce\x65\xf5\x90\x48\xea\x1e\x5e\x3b\x2e\xe0\x1e\x5d\x62\xda\x9b\xa5\xcb\x7c\x7e\x98\x3f\xf2\x89\x7d\x5c\xb9\xf7\x96\xaf\x62\x36\x95\x00\xcc\x97\xc1\xe5\x45\x71\xde\x3b\x7a\x77\x79\x79\xa2\x61\x60\x61\xe2\x8e\x02\x78\xa0\xce\x11\x91\xf8\xae\x41\xdf\x17\x64\x95\xad\xf0\x63\x8e\x3a\xa0\x1e\x6b\x9c\xf4\xd5\x8a\xd5\xad\x7d\xe8\xc0\x4d\x1b\x47\x03\xd9\xd8\x9a\xc1\xa1\xb7\x3d\x67\x26\x5f\xac\x01\xd7\x4b\x93\x5c\x5e\xd2\x07\xa6\x04\x5e\x17\x16\x19\x9a\xc3\xc4\xe3\xd3\x05\x44\x1b\x0e\xb9\xba\x7e\x27\x72\x3e\x32\x6e\xdd\x98\xa1\x62\xc6\x78\x92\xa6\x8f\x4f\xd2\x02\xf8\xe5\x1e\xc0\xef\x03\x8d\x6d\x11\x45\x9e\xa5\xa6\x4a\x13\xa9\xd3\x1c\x17\x45\x87\x1e\x54\x57\xdd\x64\xa4\x8f\x70\x86\x06\x59\xac\x44\x32\x48\x76\x87\x69\xef\xbe\xa6\xa9\xf7\xd8\x2c\xb5\xa3\x46\x84\x19\x3b\xbf\xdb\x3b\x90\xbb\x7b\x83\x3e\xc2\x9c\xec\xed\xf3\x6f\x25\xe8\x27\xc4\x90\xef\xee\x85\x87\x0e\x77\x4e\x50\x0f\x52\xdf\xc6\xa8\x16\xb8\xaa\x52\xca\x5f\x7c\xc8\x19\x88\x6b\x73\xd4\x75\x1a\x50\x03\x96\x07\x31\x23\x4b\x9c\x10\x89\x73\xb2\x9d\x59\xd0\xd6\xd3\xc3\x77\xaf\xaf\xc7\x87\x57\xbf\x9e\x1f\x8d\x2f\x5e\x5e\x9d\x5c\xbe\x3f\xb9\xbc\x42\x03\xf5\x6d\x6f\xc6\x71\x42\x96\x4a\xd6\xa6\x7c\x4a\xb9\xfc\x91\x3e\xe6\x38\x27\x4b\xd0\x4c\x7a\x55\x55\x4a\x86\x23\x3c\x69\x3a\x0f\x53\x1b\x21\x54\xe0\x19\xe9\xef\xcf\xbe\xb5\x98\x3e\xfb\x3b\x3b\x33\x74\x41\xe3\x64\x38\x1b\xe1\x09\xaa\x1c\xcb\x6e\x7b\xa9\x63\xf9\x49\x91\x42\x3e\x48\xb5\x4e\x35\x2f\xcc\x29\x0d\xbe\x78\xda\xf0\xf2\x20\xd5\xa1\xc2\x15\x07\xfc\x9b\x97\x56\x4f\x75\x86\x13\xf2\x67\x2c\x10\xce\x49\x62\x0d\x0b\x62\xd8\x1f\xe1\x25\x89\x93\xd5\x4a\x0c\xf7\x46\xb8\xee\x51\x07\xe9\x42\x6f\xa9\xbc\x30\x51\x32\x3e\xa9\x35\x00\x7c\x01\x3a\x8a\xf7\x4d\x30\x2e\xeb\x74\x27\x1a\x44\x3b\x71\xbe\x5a\x49\x84\x2d\xb4\x0e\x0b\xa2\x3c\xb2\x02\x15\xa8\xd3\x37\x61\x0d\xc7\x34\x7e\xd2\xd9\x37\xf3\x1a\x42\xc1\x95\x45\x01\xd4\x3e\xc7\x10\xa4\x69\xdb\x4b\x0e\xd2\x18\x46\x00\x7d\x17\xc3\x17\x23\x34\x48\x0b\x9d\x0f\x3a\x3c\xbd\x19\x75\x3e\x83\xd7\xe5\x37\x19\x75\x5f\xd7\x4f\xb9\x75\xe1\x52\x56\xca\x0c\x2c\x1f\xc0\xe0\xee\xcd\xd1\x32\x00\xad\xd3\x36\x6f\x60\x63\xce\x83\x30\x30\x97\xfa\x8c\x74\x79\x25\x13\x14\xed\xdd\x27\xe2\x4e\x1f\x94\x87\xf9\x31\x53\xbd\x4e\x60\x3c\x19\xcf\x97\xf7\x94\xfc\xd6\xa1\x3a\x59\x16\x9d\x92\xaf\xb0\xf9\x9b\xfc\x80\xa9\xcd\xc7\x45\xa4\x16\x91\x6c\xb2\x2e\x42\xcd\x2d\xa6\x39\xc6\xe7\x2b\x55\x70\x21\xb2\x09\xcd\x73\xea\xbf\xc9\xc9\x76\x1f\xff\x42\xfd\xce\x30\x51\x62\xd7\xd9\x15\x38\x34\x12\xa1\xc8\x79\xc6\x78\x4b\xb5\x3f\xd2\xd5\x4a\x06\x10\xff\x3f\x50\x30\x65\x56\x8a\xe4\xe4\x37\xd5\x39\xd3\xbc\xaf\x89\x4a\xff\xf4\x30\x4d\x83\xef\xa5\x74\xa7\xde\xba\x98\x25\xd8\xa3\xb7\x1a\xc7\x14\x8e\x7e\x93\x6d\xfa\x07\x3a\x94\x23\x35\x2e\xa3\xf3\xfe\xc5\xc7\x33\x51\x04\xd6\x95\x2d\xc6\xb7\x32\xa0\x75\xfa\xd1\x06\x45\x76\xbb\x94\x10\x52\x7d\x3a\x94\x23\x30\xce\xd4\x9e\x1a\x2a\x41\x5a\xc0\x76\xdd\xbc\xa2\x89\x98\xcc\x8f\x75\x3a\xb5\x26\x77\x8e\x1f\xa9\x91\xc5\x36\x16\x81\x09\x26\x56\xa7\xa1\x97\xe7\xfc\xf0\xcd\xc9\xd5\xdb\xc3\xa3\x93\xab\xf1\xcb\x5f\xc7\x67\xc7\x24\x7c\x44\x02\x5d\xc4\x9b\xa5\x04\xac\xe2\xfc\x8c\x1f\x2e\x65\x26\x0d\x9d\x5c\x8b\x84\xe7\xfa\x4c\x22\xb4\x27\x96\x7c\xdd\x6b\x20\x2e\x2a\x08\xed\x1d\xbd\xbb\xba\xbe\x78\xa3\x88\x77\x7c\x7a\x71\x49\x68\x4f\x23\x6c\x9f\x9d\xff\x70\x72\x74\x7d\x76\x71\x3e\x3e\x7d\x77\x7e\xa4\x93\xcf\x18\xdd\xc9\x1b\xad\x97\xa3\x3d\xcd\x17\x69\xaf\xcc\xd5\x09\xed\x1d\xd6\x9e\xbc\x66\x37\x22\x11\x4a\xe8\xa3\xbd\x34\xf8\xfb\xed\xe5\xc5\xdb\x93\xcb\xeb\x5f\xc7\xc7\x67\xc7\xe3\xa3\xef\x0f\xcf\x5f\x9d\xe8\xa7\xbf\xfc\x3a\x3e\xba\x38\xbf\x3e\x39\xbf\x56\x7d\x34\xaa\x21\xc7\x07\x68\x6f\x7c\x9b\x66\x37\x49\xea\xb5\x46\x81\x7f\xdc\xa2\x14\x5c\x7f\xdf\xac\xc9\x7d\xf0\xc4\xb6\x58\x1f\x8b\x6a\x03\xed\x17\xa5\x68\x53\x57\xd1\x63\x78\x17\x58\x34\x69\x7e\x7d\x40\xa9\xf1\x46\xf1\x85\x6f\xcb\x3a\x99\xfb\xf2\x3d\xdb\xa9\x44\x6c\x17\xee\x4d\x17\x38\x42\xfa\x0c\xab\x64\x34\xba\x09\xfb\x72\x5f\xeb\x4b\x08\x89\xd9\x77\x78\x98\xc6\x43\xa6\x3a\x78\x7e\xd0\x1f\x70\x5f\xf5\x38\x38\x70\xed\x28\xfd\xdb\x0f\x30\x0e\xa3\x29\x0c\x64\xd4\xa4\xdb\x8d\x13\x9d\x76\x6c\xb5\x6a\x48\xc4\xcc\x57\xab\x98\x11\x6e\x30\x02\x11\x2e\x31\xe5\x8a\x0d\x39\xd6\x0d\x40\x8e\x43\x48\x9b\xe8\x5a\x3f\xb1\xad\xdb\x6c\xbf\x49\xa7\x76\x18\xf0\x83\x38\x23\x4a\xd2\x60\x68\xa0\xfe\x52\xa7\x53\x42\x78\xb5\xc9\x06\x7b\x73\x2c\x71\xb9\xb9\x0b\x3f\xd8\x40\x63\x4f\x5c\x7c\x67\xe2\x8f\x99\xec\xa0\xa6\xd7\x18\x64\x1d\x0d\x00\xb2\x4d\x48\x72\x90\x34\x6a\x32\x6c\x24\x41\xa9\xf2\xd5\x0a\xfe\xb1\x59\x71\xdc\x45\xc7\x0a\x20\xb9\x7b\xb7\xfb\xcd\x7e\xfe\x1d\xe9\xef\xe7\xbb\xe4\x1b\xdd\xa5\x25\x61\xc3\x7c\x84\x53\xf5\xcf\xce\x9e\x92\xa3\xd4\x1f\x2f\x46\x9d\xb4\xdb\x8d\x27\xdd\xae\x9e\xc1\x25\x4e\x11\x5e\xae\x56\xf1\x92\x50\x84\x6b\xae\xef\xea\xdb\x94\x2c\x87\xe9\x08\xe1\xd4\xa5\x8d\xf6\x06\xa0\xed\x00\xdb\xef\x2a\x04\xcc\xd9\x71\xb6\x24\x30\x49\x7c\xdc\x24\x18\xe2\x43\x4b\xf1\x9d\x1a\x77\x39\x04\xba\xbd\x73\x1f\xb8\x16\xdf\x86\xab\xe2\x17\x40\xb1\x78\xf2\x11\x99\xf4\x71\x57\x8a\xd2\x15\xb1\x26\x9a\x96\xf6\x70\x86\x42\x6f\xd9\xd2\x75\xd3\x2c\x52\xde\xed\xc6\x79\xd5\x6b\x32\xa6\x68\xb5\xca\x2b\x0e\x98\x90\x0e\xfd\x1a\x6a\xcf\x02\x7a\xb9\x7c\x6e\xcf\xf0\x5f\xd7\x8b\x9a\xce\xd7\x31\x00\xc0\x39\xb3\x4e\x0e\x9c\xe8\x94\xa1\x07\x87\x83\x3b\x97\x0c\xbf\x2d\x6a\x99\x59\x56\x91\x69\x5f\xe3\xdd\x5d\xdc\x37\xe7\xea\x92\x4b\xb8\x1d\x9a\x0b\x9f\x44\x58\xd3\xaa\xba\x41\x77\xbb\xdc\xdf\x9f\x51\x51\x98\xf9\xc1\x27\x76\x19\x82\xa9\xba\xde\xd8\xdf\x26\x0d\xcc\xb6\x96\xe8\x0e\x07\x77\x5e\xb4\x9d\x27\x39\xcc\x8e\xb0\x2c\xd3\x38\x02\xe9\x84\x59\xfa\x26\x6f\x83\x86\xad\x83\x9e\xf5\x16\xd4\x03\xda\xd9\xf1\xd6\x78\x46\xa4\x45\xdd\x1b\x44\x48\xc9\xb0\x59\xfd\x46\x49\x31\x43\xa8\x63\xf9\xf2\x13\x54\x32\xd8\xc3\xea\x66\x31\x60\x18\x80\x7b\x70\x78\xd1\x1c\x84\x17\xcd\x0c\xe1\x7c\x99\xc3\x15\x68\x3a\xd8\xde\x2b\x50\x51\xd4\x0f\xd2\x3b\x98\x84\xa3\x30\x9b\xde\x9b\x18\x3d\x1d\x36\x5c\xae\xdb\x55\xab\x12\x75\xe0\x54\x69\xb9\xca\x37\xc9\xc0\x07\x87\x7e\x65\x07\xb4\xb1\x35\x73\x95\xa7\x3d\x37\x8a\x6e\xb7\x7a\xb1\xd7\xb8\xdc\xb4\x72\xb1\x57\xd7\xf8\xa0\x98\x12\x5c\x2f\x40\xb3\x3f\x04\x29\x32\xbc\xd5\x73\x7f\xab\xa7\xcd\xb7\x7a\x5b\x04\xd2\x84\xb7\xde\xea\xa9\x4e\x7c\x53\x6a\x75\xcf\x5e\xe0\xdd\xd4\xfe\x5e\x3e\x9c\x0f\x83\xcd\x51\x71\x30\x55\x9b\xd7\x2a\x48\x7c\x95\xc2\x24\xf2\x3e\x6b\x96\x40\x8e\x35\x5b\xb0\x35\x05\x07\x6f\xfd\xcc\xe0\x0d\x30\xa1\x5b\xac\xea\xc7\x56\x12\x2d\xce\x03\x0e\x7c\x56\x3b\xb0\x5f\x57\xf4\xc9\xdb\xe4\xff\xa5\xee\x5d\xfb\xdb\xc6\xb1\x3c\xe1\xf7\xfa\x14\x36\x67\x7e\x6c\x62\x05\x2b\x72\xcf\x3c\xb3\xbb\x72\x50\x5a\x57\x92\x9a\x4e\x77\x55\x25\x9d\xa4\xfa\xa6\xd6\x6a\x68\x09\xb2\xd0\xa1\x49\x15\x08\xda\x71\x5b\xfc\xee\xcf\x0f\x07\x77\x12\x92\xe5\x54\xd2\x3d\x5b\x2f\x2a\x16\x89\x3b\x81\x83\x73\xfd\x1f\x9a\xa6\xaf\xf5\xa9\xf1\x50\x57\xf5\x3e\x0a\x39\x22\x79\x9f\xbf\x8e\x98\xc0\xff\x9e\xed\x01\x00\xa6\xb3\x5f\x5b\x8d\xc5\xbf\x81\xcb\xbd\xd1\x89\x66\x11\x1d\x82\xa7\xa7\x74\xcf\xac\x2c\x27\x50\x24\x2a\x4b\x52\x89\xfe\x95\x6f\xeb\x94\x69\x9a\x38\xf3\x5b\xc2\x4a\xf9\x2e\xf1\x0d\x74\xf0\x6c\xb7\xf3\x2c\x61\x6e\x5a\xdf\x7a\x96\xfd\x1e\xd3\x4f\x5b\x33\xb1\xef\x00\x8c\x08\xbe\xf8\x4f\x7b\x22\x29\x4c\x9e\x74\x3b\x14\x9b\x66\xd6\x1f\x8b\x7d\xb8\x08\x74\x22\x9d\xb0\x08\x2a\x72\x3f\xfa\x60\x0f\xb2\x50\x4d\x45\xb3\x8d\x18\x76\xca\xbe\xf3\xa1\x8a\xe3\x04\xb0\x0c\x41\x73\xbe\xaa\xee\xfa\xc0\xac\x11\xb7\x46\xb9\xe9\x3a\x98\xdb\xbf\x09\x4c\xb7\xb1\x50\x1f\xa0\xb3\x3a\x40\xd0\x2d\xf4\x1f\xa2\xc8\x7b\x3c\x0c\x3c\x32\xfa\x05\x8e\xec\xca\xff\x6c\x9c\x49\x39\x2c\xc5\xcf\x44\xe1\x84\x2d\xe4\x91\x7b\x4f\x85\x1b\xd8\x1f\x7d\xb2\xe8\x6b\x3d\x7d\xa0\xec\x7f\x8b\x28\xef\x7d\x6d\x81\x90\x2c\x1c\x55\x2b\xab\xeb\xe6\x86\x89\xf0\x23\x9d\xa8\xf7\x9d\x71\x60\x0c\xa6\xc1\xe7\x06\x63\xef\x6f\xb2\x12\x12\xb5\x52\x31\xf9\x03\xfc\x69\x27\x57\x7b\x1b\x0c\xca\x68\x2d\x7c\x1d\x38\xac\x28\x75\xa6\xf9\x8d\x70\x09\x2b\xf1\x9f\xf8\xcf\x83\x47\x64\xc1\xff\xc4\x4f\x13\x2d\xff\x0c\x33\xfd\xdd\xe1\x0d\x0e\xe1\x38\xda\xb5\xd4\x41\xc9\x13\xeb\x94\xb2\x27\x54\x26\x5f\xad\xfa\x4e\xb2\xb2\x2d\xed\x08\xed\x35\x05\x8e\xe5\x9a\xf0\x77\xdc\xfa\xac\xa3\x1d\xd4\x94\x1c\x08\x8a\x2a\x6b\x24\x49\x3d\xdf\x5b\xd6\x76\xa5\x5d\x01\x67\xf3\x00\x17\x09\xca\x47\x54\xda\x5e\x1c\x2f\xa8\x5e\x04\xd8\x3f\xc2\x6b\x4a\xca\xfb\x07\x1c\xa5\xe4\x28\xf6\x24\xe3\x3c\x09\xc7\x1a\xc9\xc3\xf9\xaf\x5f\x50\xe5\x2b\xef\xf3\xbf\xcb\x9b\xcd\xfa\x90\x8d\xe7\x92\x49\x9c\x96\x90\xa8\x1b\xf8\x4d\x17\x02\x5d\xc1\x0b\xe5\xe2\x61\x90\x58\xe3\xbe\x1c\xbf\xcf\x66\xe0\x20\xe1\x37\xc2\x3c\x96\xd5\x16\xac\xe4\x04\xbd\xed\x9f\x23\x9c\xb7\xb6\x11\xff\xe6\xf9\xbd\xdc\x2e\xf2\xce\x19\x98\xeb\xe7\x5c\x5d\x3f\xbf\x96\x23\xe6\x53\xbe\x67\xc4\x9e\x9e\x20\x8f\x81\xe0\x32\x93\xf5\x21\x8c\x60\xec\xba\x76\xc4\x7c\xda\x30\x27\xcc\xa6\xb2\x31\x73\xf8\x0b\xc0\x21\xa5\xe9\x69\xa5\x78\x4e\x49\x70\xa7\x19\x25\xcc\x85\x5a\x23\x5c\x79\x64\x0e\xa1\x09\x25\x95\xa5\x97\x08\x67\x5d\xd7\x08\xc8\x24\x59\x82\x25\xf8\x8a\x72\x78\x2a\xb7\x98\x42\xe6\xad\x6d\x56\x7d\x8e\x99\xe4\x50\x93\xd9\x3c\x51\x71\x19\x5d\x07\x94\xdc\x0e\x36\x1c\x80\x01\x39\xe1\x34\x4d\xb9\xc2\x7b\x74\xfa\xa3\xdf\xc1\x7a\xff\x49\xa1\xc7\xd8\xaf\xf1\x5b\x77\x61\xfe\x49\x2b\xc1\x7f\x37\xf8\x13\xe1\x03\x60\xf5\x32\xc7\xc4\x8d\xf1\x9f\x88\xb0\xa8\x46\xe6\x84\x64\xde\x87\xfd\x8b\x97\x11\xf8\x4f\x69\xfa\x27\x13\x12\xe1\x68\x0e\xcd\xba\xf9\x66\xff\xe4\xde\x82\xcc\x61\x86\x32\xd0\xe3\xec\x8e\x42\x8e\x41\x91\x25\x93\x82\x8b\x2a\x05\xa4\x8d\x9d\x0c\x95\x64\x89\x77\xde\x18\x0d\x80\x8d\xb4\xe2\xd9\x24\x26\xf3\x36\x14\xe1\x3e\x57\x23\xc5\x1a\x9b\x12\x37\xb2\xef\xe8\xac\xa4\xf3\x29\xfc\x1f\xee\x1b\xd5\xcb\xa4\xa3\x6d\xb6\xa3\x50\xef\x3d\xe3\x5d\x97\x99\xb4\x7a\xee\x12\x05\x61\x46\xe0\xaf\xc0\x66\x42\x79\xe3\x19\xda\x57\x69\x99\x54\x91\xad\x58\x64\x8f\x43\xe5\x15\x73\x92\xbb\x81\xe4\xf4\x30\x53\xeb\xc6\x21\xfb\xf5\x23\x83\x32\xcf\xb9\xa4\xd2\x7b\x57\x67\xf7\xaa\x4c\xb2\xf4\xa0\x82\x1c\x7b\x41\x6c\x9d\x66\xda\xcc\xc4\x7c\x62\xd4\x80\x16\x51\x29\x6c\xaa\xf0\x92\xa2\x56\x06\x9f\x9f\x10\x52\xec\x76\xf9\xe8\x2a\x5f\x7e\xbc\x6a\x78\x49\xf9\x88\x96\x75\xc3\x5d\xae\x57\xd4\xf6\x14\xa5\xa5\xca\x75\x52\x77\xb7\x4a\x44\xa3\x09\x01\xb7\x31\x4d\x67\xad\xda\x68\xa8\x2f\xd0\x15\xb4\xa3\xcd\x7a\x4c\x32\xd0\xfb\x08\xf4\x09\x3d\x55\xc0\x6e\x57\x45\x94\x06\x92\x68\xb8\x6a\xfa\xa3\x55\x08\x37\xf4\x39\x19\xa7\xe9\x0f\x90\x0c\xf6\x84\x41\x32\xad\xec\xdf\x63\xfc\x10\x9d\xd5\x72\x6b\x62\x86\x26\xfa\x4f\xe4\x8b\x4e\x72\xcd\x1e\x1a\x3a\x1c\xba\x47\x6b\xf9\xe8\xec\xcc\x75\xe1\x25\x62\x87\x53\x2a\xeb\xf4\xce\xe6\x1a\x28\x8e\x73\xb2\xf5\x90\x49\x7a\xda\xda\x69\x26\xc8\x58\xd2\x1b\x72\x76\x8e\x26\x59\x47\x85\x70\x76\xee\x7d\x7b\xa5\x56\x3d\x3b\x47\x08\xbf\x91\x54\xf1\xff\x28\x08\xf0\x2b\xba\xae\x38\x4d\xf0\x4c\x77\x02\xd7\xab\xed\x7c\x4b\x0f\x28\x72\xa4\x4c\xd4\x1d\x4a\x49\x58\x67\x28\xb6\x5f\xdc\x89\x3a\x91\x43\x71\xa7\xae\xa3\x02\x92\x3d\x64\xec\xf9\x78\xb7\x2b\xe5\xff\xd8\x59\x79\x4a\xc6\x28\x4d\x61\xab\x24\xea\x8b\x24\x38\x47\xb8\x30\x24\x1e\xe7\x9d\x99\x69\xfd\x9b\x9a\x19\xa4\x26\xd1\x1c\xeb\xa2\xab\xee\xa9\x8d\xc6\x50\x79\x85\x4f\xc7\x93\x12\x17\xce\x99\x37\xcb\xe0\x39\x9b\x8e\x27\x0c\x9d\x35\x08\x2f\x89\x78\x3e\x9e\x16\x43\xa1\x6c\x68\xb5\x02\x33\x5e\x33\x5e\x0b\xc5\xa9\x26\x28\x4d\xe5\x44\x97\x66\xc0\xfe\x3b\x39\x6a\x5d\x45\x32\x5b\xa6\x06\x2a\xce\xce\x9f\x2f\x87\x8d\x9d\x63\xee\xd7\x70\x4e\xdd\x72\xa4\x37\xd4\x38\xa6\xac\x39\xa5\x7f\xa7\xd9\x6c\xee\x11\xe8\x5b\x1a\xf0\x1e\x3d\xc7\x42\x2a\xa9\x86\xf3\x55\x0c\xb8\x0a\xcf\xe9\x50\x32\x96\x6e\xf3\x19\x1d\xac\xfd\xeb\x39\xf9\x0f\xfa\xef\xc8\x98\xa5\xb4\x6e\x94\xe2\x99\xc0\x7c\x6e\x52\x03\x94\x48\x07\xea\x58\xeb\x15\xc4\x0f\x39\x87\xe9\x8e\x37\x0d\x34\xa9\x49\x40\xa9\x61\xf8\x18\x66\x43\xf9\x78\x10\xe9\x6a\xc8\xf0\xd8\x76\x56\x21\xd4\xb6\xdb\xde\x80\x3d\xcb\x03\x0d\x62\xa0\xa0\x17\x9e\xa6\x1c\x92\xe2\x2a\x07\xae\xdd\x2e\xe9\x78\x11\x26\x38\x57\x85\x56\xc6\xe9\xcf\x94\xb1\x5e\x80\x09\xae\x09\xb8\xfb\x05\x7e\x93\x36\x6f\x61\x19\x39\x6d\x40\x7a\xca\xc8\x66\x15\xb0\x3b\xd4\x19\x51\xfb\xa0\xd7\x6e\x12\x9c\xd0\xab\xee\x3d\xd8\x3d\x4a\xb8\x32\xaa\x77\x36\x65\xf1\x60\x4f\xa7\x7e\x0f\x8e\x45\x85\x3c\x7f\xc4\x88\x23\x55\x99\xa6\x31\xfb\x86\x0d\xcd\xc8\xc1\x30\x89\xb4\x1d\x13\xa2\xb4\xe4\x66\x38\x31\xef\x1b\xf5\x5e\x27\xd8\xae\x66\xcd\xfc\x22\xe0\xdf\x0a\x1c\xf1\x60\x69\x10\x42\xd8\x36\xd9\xcc\x3d\x4a\xb9\xa0\xdd\x88\xe5\xd9\x1c\x47\xc2\x7d\x54\x80\x9c\xde\x46\x1c\x83\x1a\x53\xcc\xca\xb9\x87\xd6\xeb\x99\x79\x3a\x8d\x02\x29\x94\x0d\xe7\x84\x82\x5f\x88\x16\x33\x0a\x72\x76\x7e\xa1\x83\x11\x97\x36\xa1\x84\x0f\x2f\xe8\xaf\xa0\xa4\x0c\xfe\xda\x91\x25\xba\xe2\x34\x57\xca\xce\x35\x29\x86\xe7\x2a\xc8\x8e\x10\x92\x15\xc4\x8b\x50\x19\x25\x78\x0d\x8c\x6e\x41\x1a\x84\x93\xff\x43\xf3\xe5\x46\x32\x57\x59\x49\x84\x3e\x30\x6b\x5c\xc8\x12\x80\xd2\x87\x1e\xa0\x31\xdc\x6f\x03\x7a\x5a\x11\xe3\x37\x22\xbb\x4b\xca\x46\xf2\xd3\xee\x53\xae\x76\xbb\x4e\x3e\xaa\x1c\xa5\xe9\xa9\x51\x3b\x5d\x8a\x84\x95\x27\x39\xd2\x43\xd7\x72\xe8\x0a\x3d\xe8\x68\x3e\x46\xb3\x5c\x73\xdf\x03\x28\xd2\x96\x8a\xc2\x16\x53\x3b\x56\x34\xf1\x87\x6d\x29\xc3\x86\x8c\x2f\x36\xcf\x57\x17\x1b\x13\xce\xb3\x25\xb7\xb2\xb5\x0d\x1a\x6c\xd3\xd4\xb5\xbf\x05\x5b\xcc\xde\xfe\x80\x56\x12\x78\x5e\x02\xc9\x67\xe4\x25\xfc\x8d\x75\x95\x1b\xff\x56\xda\xed\x8c\x92\xcd\xae\x00\x1b\xe5\x85\xf8\x1d\xbd\x07\x62\x08\xe0\x94\x6e\xb2\x9e\x0d\x2c\x27\xa5\xdc\xcb\x79\xd4\xe0\x97\x8f\x9a\xf2\x63\x59\xdd\x59\xa7\xd3\x69\x3e\x2b\xe7\x93\xde\xe3\xac\xf4\xa2\x1a\x6f\xc9\x95\x1d\x74\x57\xa7\x7c\x83\x6f\xb5\x80\x7a\x4f\x3c\x16\x33\x47\xf1\x58\xf2\xac\x44\xf8\x5a\xee\x8e\xe6\xaa\x16\x3c\x2b\x86\xe7\x08\xdf\x91\xfb\xd9\xf5\xdc\xd9\x5c\xef\xd2\x34\x53\xcf\x0e\x70\xc0\x76\xd5\xee\xcc\xfa\xe6\x64\x21\xbb\x95\xa2\x5a\x89\xda\x16\x4e\x37\x5b\x67\x39\xc9\x21\x01\xa4\x5b\xaf\xd6\x8a\xb7\x72\xd8\xaf\x28\x79\xf6\xd7\x11\xec\xdd\x7f\x7d\xe6\x25\x2a\xa5\x61\x36\x01\xbb\x61\x1f\x12\x34\xe0\xcf\xc7\x53\x91\x39\x3f\xf8\x57\x14\x27\x23\xf8\xd6\x13\x4f\x19\x13\x52\x77\x9c\xe3\x9a\x70\xd7\x4e\x9b\x20\xdc\x90\x31\x2e\x08\xd7\xab\x21\x19\xc6\x72\x78\x8e\x6b\x64\x6c\x1d\x38\x91\xf7\xbb\xff\xbe\x1e\x9e\xa3\x81\x18\x06\xcf\xc6\x72\x0f\xe5\xc4\xa0\xf4\x2b\x07\xd6\xe6\x79\x7e\x81\xb2\x8a\x2c\x83\x91\xa3\xe7\xe3\x29\xcb\x32\x31\x2c\x66\xcd\x70\x38\x1f\x2e\x51\x6c\x0e\xd4\x16\xc0\x4b\x5c\x61\x86\xda\x2c\x49\x30\x78\x94\x7a\x37\xd8\xfb\x43\xec\x58\x20\x6d\x18\xce\xea\xa5\xe5\x73\x9d\xdc\x90\x0f\x9a\x34\xcd\xad\xc6\x53\x97\x50\x9e\x4e\x2a\xd8\x85\x9c\x8e\x2f\x32\x4a\x08\x51\xa7\xdf\xea\xad\xd2\x34\x5b\x91\xd3\x73\x84\xbf\x97\x57\xfb\x34\x5b\x12\x55\xdb\x68\x17\xf6\x63\x23\x09\xbc\x94\xb2\x4b\xa9\x32\x43\x03\x5f\x5f\x10\x86\x9b\xdd\xee\x54\x52\x84\xd5\xf4\xf3\xa2\x4a\x56\xd8\x6c\x79\xf9\x42\x69\x62\x8a\x56\x32\xe8\x62\x0e\x66\xef\x82\x94\x07\xc6\x24\xf9\x93\x98\xb0\xb0\xdb\x65\x6b\x42\xf1\x47\xe0\xd2\xd6\x28\x4d\x3f\xc2\x1e\x5f\xa3\x98\x1d\x08\xed\x33\xcc\xac\x9f\x60\x98\x69\x11\xc2\x97\xb6\xbb\xcb\x7f\x40\x77\x08\xc7\x84\x70\xc9\xe6\xbc\x0c\x16\x2a\x4d\x23\x0f\x61\xf5\x0a\x95\xe7\xef\x93\x4a\xcc\x50\x8e\x20\xe6\x28\x3b\xa7\xff\x86\xe3\xa9\xa3\xbc\x0b\x48\x0e\xc0\x4b\x58\x49\x3d\x04\xf0\x1e\xfa\x9c\x8e\xa4\xfe\x64\x22\x32\xa0\xd3\x8f\x11\x21\xd4\x39\xd0\xf8\xea\x8a\xb7\x3e\x55\xc1\xcc\x36\x8b\x2b\xe2\x29\x27\x58\x47\x19\x46\x18\xae\x49\xb5\xdb\xe5\x86\x25\xb8\xa4\x99\x40\xd3\x7a\xfa\x4e\xeb\x25\xb4\x7b\xa2\xbb\x05\x32\x4e\xe4\xae\x43\x69\x5a\xc9\x3b\x12\xbc\xb2\x28\xf2\xaf\x79\x6f\x95\x3b\xa4\x1f\xa4\xb5\xde\x53\x29\x60\xe2\x3a\x4d\x29\xcd\xe4\x8d\xff\x97\x4c\x6b\x5e\x7a\x1a\x31\x1e\xd7\x88\x71\xc9\x06\x40\x2d\x6e\x94\x60\xba\x14\x44\xc2\xc8\x02\xee\xfd\x52\xc5\xe6\x24\x80\x6b\xe0\x5b\xf2\x7b\x4c\x15\xc5\x25\xe9\x7d\x25\x31\xb5\xd6\xe2\x51\x82\x26\x22\xe6\x29\xef\xfc\xf2\xf9\x6e\xc7\x47\xac\xb6\xf6\x56\xe3\xa4\xcd\xc9\x5b\x80\x37\x9c\xb1\x39\x6a\xfb\xbc\x98\x8d\xb6\x62\xc6\xf2\xea\xb7\x21\x1f\xc1\x57\x32\x3a\x9d\x17\xae\xb8\x05\x11\x83\x05\x50\x6e\x6f\xce\xa0\x83\x60\x8a\xd8\x01\x5e\x1b\xe7\xd3\x7c\x54\x53\xd1\x8b\xb1\xa9\xd3\xf4\x67\x38\xaa\xa0\xc8\x94\x94\x86\x63\x6e\x45\xde\x53\x42\xb2\x4a\x6d\x85\x08\xcf\x4c\x77\x3b\xb5\x33\xa2\xac\x02\x98\x58\x7e\xea\x70\x0b\xa6\x0b\x1d\x02\xab\x53\x5e\xa0\x49\xac\x30\xc8\x57\x10\x2c\x67\x17\xed\x05\xed\xc6\x36\xf9\x5f\x0a\x74\x52\x2a\x8a\x27\x27\xef\x94\x41\xdf\x19\x5e\x2d\x3a\xf8\x07\xc9\x42\x55\xda\x79\xe0\xb4\xf4\x72\x11\x16\x36\x17\xe1\xaf\xcc\x20\x4e\x6a\x2a\x4e\xd6\x39\x2b\xe8\x6a\x72\xa2\x16\x40\x4e\x59\xd2\xa6\x93\xe4\x57\x43\xa6\x93\xf2\x8d\x12\x34\xfc\x55\x72\xb2\xac\x9a\x62\x05\x99\x0b\xaf\xa8\x4a\x5e\x38\xfa\x15\x6a\xbb\x1e\x71\x1f\xa9\x67\xff\xa7\x19\x7a\x00\x2a\xf0\xb7\xd0\x91\xd2\xa9\x28\xad\x77\xf0\x05\x1c\x2c\xa7\x69\x56\x8e\xc1\x68\xb4\xb8\xad\x8a\x5c\xb0\x82\x92\xd3\x73\xcc\x47\x0b\x29\x17\xbd\x29\x8b\x7b\xfd\x73\x93\xd7\x2f\xe0\xd6\xd1\xbf\xaf\xa9\x10\xd4\x62\xca\xf3\xd1\xa2\xf6\x1f\x0c\xb4\x60\xd0\x49\x4c\x28\x59\xea\x88\x7e\x5d\xe5\xa2\x54\xb1\x5a\x3d\x03\x2e\x43\x0f\x61\xf7\x63\x83\xcc\xa1\x1d\xd0\xe3\x8d\x56\xc8\x0d\xb2\x72\x5c\x64\x4e\xaa\x81\x7b\x91\x4b\x02\xba\xdb\xfd\x40\xbd\x09\xc0\x0e\x6f\xdb\x20\x25\x5f\x49\x38\x1a\x2d\x4c\xba\x41\x2d\x27\x95\x9e\x4a\x9f\xb7\xfb\xe0\x58\x4d\x9a\xda\xbe\xa9\xab\xea\xda\x65\x2d\xab\xc6\xd6\x99\x67\x1a\x53\xc5\x3c\x18\x56\x53\x0e\x9f\x3a\xc8\x0c\xbb\x3e\x4e\x59\x70\x4d\x05\xe4\xa3\x90\x07\x36\xd0\xaa\x5a\xcc\x21\x58\x1b\xc3\xef\xeb\x9c\xbe\xea\xa5\x5e\x8b\x98\x9f\x4d\xee\x8f\xa4\x1f\x6e\xe7\x2b\x54\xf9\xb4\xf2\x36\xda\x84\xb7\xa8\x6d\x71\x35\xb2\x1b\xcd\x0f\xe3\x80\x6e\xdd\x16\x1c\xb7\x90\x7b\x58\x6f\xc1\x5e\x41\xb7\x39\xa1\xe0\xb6\x17\x99\x6b\x0a\x76\xbe\x59\x07\x50\x57\xd6\x5d\xc4\x2a\x5b\x73\x9f\x33\x22\xc8\x03\xe4\xec\x79\x21\xd8\x42\x57\x33\x0a\xb6\xb4\x37\x34\xe3\xcf\xc7\xbb\x5d\xf7\xe5\x73\x62\x01\x06\x7d\x4b\x9b\x5c\xcc\x98\xc1\x9f\xca\x41\x5e\xf7\x40\xc8\x6e\x2d\x3c\xc8\xc0\xa2\x98\x98\xe5\x43\x5d\xb0\x30\x41\xb9\xfa\x10\x10\xec\xab\x43\x0b\xc8\x6d\x46\x25\x8d\x63\x2e\x06\x58\x1b\xa4\x8c\xd9\xc8\x09\x58\x39\x56\x5e\xa5\x08\x31\x63\x88\xf2\x44\x33\xc3\x49\x03\x29\x74\x10\x27\x79\x23\xaa\x69\x43\x7e\x1b\x84\x92\x31\xc2\xfb\x43\x6a\x11\x9a\x08\x7a\x54\x39\xb7\x5b\x23\x8b\x65\x34\x27\x21\x27\xa8\xb4\x20\x91\xd2\x68\xd0\x38\xbd\x7a\x33\x2d\x26\x61\xbd\x59\x83\x8b\x39\x6a\x9d\x75\xa1\x63\x4d\xcb\x71\x83\xb0\x72\xde\xf5\xf9\xc9\x1c\x59\xe3\x99\x3c\xa4\x5a\x1d\xc5\xec\xf5\xfd\x97\x2c\xef\xf1\x2b\x2c\xce\xaf\x30\xcb\xaf\x30\xc3\xaf\xb0\x56\x35\x1e\x4b\x91\x11\x9e\x0d\x8d\xd3\xb8\x80\x9b\xe9\x9d\x7e\xf8\x8a\xf3\x4a\xe5\x0b\xc2\xa7\xfe\x51\x0f\xb6\xcc\xb2\xa8\xae\xae\x28\x7f\xaf\x7c\x7b\xf4\x1d\x77\x60\x8b\x99\x87\x5e\x05\xa0\xff\xa0\xc8\x5f\xd2\xcc\x2e\x82\x49\xb2\x54\xdb\x82\x7a\x37\xda\x4d\x78\xe8\xeb\x76\x96\x9f\xe1\x63\x3f\x73\xec\x2b\x31\xd4\xb1\x2f\xb8\x58\xf7\x2a\xb6\x66\x9d\xe3\x17\xbd\xee\x5f\xe4\xa5\xbc\xb5\xe5\x65\x2f\x3f\xc2\x59\x55\x16\xf7\x27\x86\xbc\xc8\x8b\x5e\xc8\xeb\xbd\x2a\x35\x0b\x30\x39\xf9\xd5\x50\x7d\xf4\xb2\xde\xd2\xa5\x00\x29\x55\x76\xef\xd6\x7f\x5f\xa8\xb9\x11\x7b\x9b\xa2\xc0\xf7\x9a\x05\x36\xbc\x20\xc2\xdc\xa7\xb2\x07\x5a\xf1\x37\x80\x3d\x64\x90\x2a\xa7\x82\xc7\x61\x3d\xc3\x2d\x39\xca\x61\xc8\x85\x14\x0c\x0c\x51\x50\xfe\x72\xa7\x63\x65\xc5\x61\x24\xde\x47\x89\x6b\xb7\xfc\xba\xca\x39\x6a\xd9\x3a\xcb\xd3\x14\x94\xbd\xd6\xbf\x4d\x9b\xfd\x02\x59\x3e\xb8\x42\xd5\x31\xd3\x16\xb3\x06\x97\xfa\x8c\xf4\xdd\x97\x9c\x12\xff\xb4\xb3\x99\x35\x1b\xb8\xc8\x44\x37\xba\x5d\x7b\x3c\x72\xc9\x7f\xb9\x1b\xd9\xb4\xdd\xbd\x94\x61\xe5\x24\xd9\xeb\x5f\x44\xf0\x54\xde\x56\xac\xcd\x7e\x42\x83\x48\x3c\xc3\xdf\x94\x21\xf0\xf5\x1e\x0e\x8e\x1f\x0b\x0f\x1f\xe3\x44\xb8\xe1\x44\x4a\xc2\x63\xc0\xe8\xb1\x9b\x56\xbf\xfc\x51\xdd\xde\xb6\x88\x4e\x34\xd2\xe2\x32\x7a\x91\x77\x6a\x99\x22\x5e\xad\xbd\xf7\xad\x09\xcd\xa3\x44\xd7\x46\xa3\xce\xf5\x4d\xbd\xd9\xda\xf6\x6e\xba\xf8\xb5\xca\xd2\xaf\xdb\x30\x73\x1c\xc7\x0c\x98\x42\xb9\xd0\xed\x76\x0f\xed\x24\xd3\x3f\x34\x40\x70\xd4\x3d\x87\x1b\xf7\x1c\x7d\x33\xed\xf3\xd0\x31\xb3\xd7\xc5\xda\x16\xab\x6a\x9e\xfb\x61\xcf\xf5\xc2\xd4\xf1\xfc\x02\x95\x6f\x0f\x6f\x33\x18\xc9\x1d\xcf\xb7\x0a\xd8\xe2\x7d\xb3\xa5\x1c\x65\xdf\xe9\xda\xbe\xe2\xe0\x25\xfd\xb2\xbe\x3f\xbe\xeb\x8f\xc2\x46\xf9\x1b\xd8\xd6\xf0\x6b\x77\x0a\x4b\x95\xa3\x5a\xcc\xce\xe5\xff\x7e\xed\x04\x55\x5b\x41\x40\x79\x10\x50\x7e\xa4\xe4\x25\x1d\x5d\xb1\x72\xa5\x50\x37\x07\x91\x30\x9e\x1f\xd5\x49\xf8\xfe\xff\x9d\x93\x50\x95\xf4\x8f\xf9\xa1\x3a\xaa\x40\x76\xf4\xae\xd5\xa6\x83\xee\xf7\x73\x10\x50\x76\xe3\x0e\xec\xbe\x6d\x8f\xd9\x2a\xf8\xbb\xbd\xab\x6a\xb8\x4a\x97\x11\x3c\x26\x27\x2a\xf5\x3f\x11\x38\x2e\xf3\x3c\xb6\xbe\xfb\x64\x9e\x63\x04\x1e\xb9\x6e\x7b\xc9\xfa\x91\xf4\xb9\xdc\xc7\x4b\x6b\xe6\x04\x3b\x5e\xa4\xc3\x91\x72\x0d\xbc\x60\x0c\x20\x2d\x32\xc2\x9d\xe2\x8d\x5d\x64\xb1\xcf\x39\xab\xc4\x7f\xd9\x41\xce\xe5\xce\x72\x2e\xba\xe9\x7d\x1c\x8b\xe1\xa3\x38\x42\xf8\x2f\x19\x83\x9b\xbe\x8c\x72\x83\x01\x1a\x8f\x6b\x19\x2e\xf7\xf8\x26\x17\x1a\x96\x9b\xfc\x9d\xc6\x77\xb4\x2d\xf0\xad\xda\x69\x3f\x79\x64\xe7\xef\x74\x3f\x5b\x94\x1c\x66\x8b\x7e\x95\x0c\xc5\x30\xf9\x95\xcf\x16\x25\x11\xb6\xc8\x39\x62\xd3\xfd\xbc\x90\xc7\x04\x29\x17\x6c\x1a\xf7\xba\xff\x8d\xe7\x11\xa6\x81\x54\x80\xc5\x75\x38\x18\x9e\xf1\xcf\x53\x52\x7a\xbe\xa1\xa7\xea\xd7\xa0\xe3\xf3\x15\x84\x20\x93\x10\x67\x49\x39\x75\xa2\x68\xdb\x16\xdd\xa6\x6c\xe3\x5d\x1b\x5f\xf9\xc0\x46\xca\xdd\x60\x3c\xa3\x65\xaf\x7f\xa6\xfb\xd7\x4e\x22\xf1\x11\x18\x8e\xeb\x94\x39\x3c\x6a\xe7\x94\xed\xe9\xa3\xd5\xea\x39\xd3\xa0\xaf\x97\x06\x8d\xc4\xb3\xbf\xbe\x7f\x36\x12\xb4\xb6\xaa\xe9\x9f\xe9\x61\x4f\xe1\x05\xa7\xd7\xac\x16\xfc\x9e\xcc\x74\x92\xe4\xc5\xb2\xe2\xf4\x7b\x76\xf5\xba\x5c\xd1\x4f\xe4\xa0\x73\xbb\xbc\x63\x55\x64\xe9\xfd\xb7\xf7\x3f\xe6\x37\x74\x4f\x60\x7e\xd8\x13\xe6\xce\x50\xad\xc1\x20\xc1\x12\x2e\x77\xc1\xac\x9c\x43\x86\xc1\x00\x07\x6f\x56\xce\x55\x26\x5a\x59\x3f\x82\x01\xa5\xbd\x63\x83\x4e\xcc\x47\xb1\x72\x78\x30\x4e\x65\x55\xe1\xa0\x5e\xea\x4f\x7a\x38\x34\x30\x9a\xb6\x35\xed\x30\x52\xe2\xb1\xce\xc1\x48\xb1\x46\x82\x9b\x88\x56\xe5\x7f\x35\xc3\x7b\xa1\x5a\x92\x9d\xf5\x04\x17\xc8\x12\xa3\x8a\x19\x5e\x5d\x56\x5d\xd1\x77\xfd\xb9\x75\x10\x36\x63\x73\x18\x70\x97\xac\xd5\x8d\xd5\x58\x36\xf8\xbe\x59\x08\x0c\x09\xe8\x35\x18\xa3\x0b\x0d\xfe\x59\x1d\xa9\x3f\xaa\x93\xfb\xb3\xa7\xe4\xfc\x4f\xea\x11\xa1\x0e\x08\xbf\xc9\x7e\xa7\x41\x58\xc0\x57\xcf\x85\x18\xff\x91\xe2\x3f\xd2\xd8\xda\x64\x09\x48\xdb\x09\x5e\x1a\x6a\xa5\x48\xfa\x9f\x69\x2f\xb7\x86\x14\x75\xde\x38\xb5\x32\xfe\x1d\xe8\x49\xff\x95\x92\x07\x29\xdc\x4c\xc6\x78\x11\x8d\xc0\x9f\x9c\x9e\x4b\x1e\xf1\x24\xfa\xb2\x8b\xa7\x1b\x2d\x04\x4e\xba\x7b\xea\x5b\x00\xf1\x9a\x8a\xe1\x10\x1f\x68\x45\xf2\x92\xf8\xf7\x30\xe6\x3f\x81\x62\x2b\x08\x2c\xff\x93\x5a\xf4\xdf\xd2\x18\x2e\xba\xfb\x02\x7f\xa1\xca\xb9\x7e\x1f\xdc\x80\xf5\x73\xa1\x58\xf4\x22\xed\x31\x8f\x43\x07\xf1\xc0\x20\xa2\x74\xb4\x5c\x43\x43\x66\x94\xe4\xa3\xe5\x26\xe7\x2f\xaa\x15\xbd\x14\xd9\x18\xa1\x6f\xc8\x7f\xfc\x7f\x69\x4a\x9f\x93\xff\x3d\x46\x1a\xed\x98\x49\x11\x30\x47\x03\xa5\x20\x28\x4d\xf0\x3d\xca\x6a\x9c\xa3\xd6\x53\xfc\x83\xb1\xec\x21\xeb\x58\xc7\x99\x4b\xb6\xaf\x09\x42\x4e\x84\xd3\xc8\xbb\xd0\xda\x13\x06\x10\x08\xf9\x9c\x70\x1c\x76\xc4\x71\x8e\x30\x97\xc4\xe3\xcf\x9a\x65\xe2\xb8\x46\xc6\x87\x8e\xcf\x6a\x98\x8d\x98\x55\x73\x52\xe3\x26\x4d\x9b\x91\x30\x10\x0c\x84\x70\xe1\xa9\x4c\x43\xcc\x83\x06\xa1\xb0\xa3\x06\x7b\x23\x53\x1a\xb8\x13\xb6\xce\xa0\x49\x0f\xa5\x00\xbe\x12\x03\xe9\xbc\x41\x48\x7e\x07\x56\x36\x74\xc0\xc0\x71\xba\x41\x58\x4e\xbc\x91\x0c\x95\x55\x73\x93\xaa\x45\xd9\x8c\xda\x71\x65\x68\x8e\x55\xbc\x24\xe4\x67\x70\x6a\x50\x61\xb5\xa3\xfb\x76\x81\x9c\x2a\x4d\xd3\x4c\xee\x16\xbc\x1f\x99\xe2\x1c\x61\xba\xdb\xfd\x3e\xa0\xd1\x7f\xa2\x38\x82\x5e\x2b\x45\xfc\x19\x9f\xa3\x01\xec\x5f\xef\x7b\x72\x37\x98\x70\xdd\x02\xc9\xcf\x0a\xf4\x74\xb7\xcb\x22\x38\x13\xa0\xb5\xfc\x9d\x5a\x33\x39\x3d\xec\x83\xaf\x76\x31\x28\x50\x17\x18\x95\x0e\x56\x95\xac\x99\xf1\x38\x88\x6c\xc6\x11\x22\x84\x18\x06\xdc\x11\x94\xdd\x8e\x13\xd2\x23\x33\x5d\x67\x9a\x7d\xa3\x78\x10\x24\xc9\xea\xe6\x0a\xf0\x3c\x4e\xaa\xf5\x09\x70\x51\x28\xd1\x6e\x28\xed\xdd\x46\x0a\xdd\xce\x17\xd5\x81\x0e\xef\x76\x49\xa6\xcd\xaa\x28\x69\x4d\x40\x41\xb0\xcb\x4c\xd4\x81\xef\x55\x57\xca\xb5\xfe\x3d\x68\xe6\x9d\x51\x49\xe8\x3b\x85\xdf\x1b\x17\x95\x99\x30\x21\x32\xc6\xb7\x98\x47\x6c\x3a\xdc\xb7\xf5\xb9\xa7\x28\x4d\xb9\xbf\x8d\xd3\x94\xb7\xcb\x5c\x2c\x37\x59\x89\x1e\xda\x36\x02\x8f\xf1\x5b\x45\xb8\x2a\xd1\xf5\xcb\xd0\x2e\x90\x21\x86\xa4\xa3\x64\xb9\xf0\xec\xeb\x11\x73\xb4\xe4\x64\xe4\x8e\x51\x61\xb0\x9b\x6a\x95\xa6\xf4\x94\x18\xb0\x0e\xf5\x43\x7d\x3a\xf5\xf7\x8f\xc0\x4c\xa9\xbf\xa1\x2b\xf5\xe7\xcb\x5c\x50\xf5\x97\x3a\x55\x6e\xe9\xea\x47\x06\xa0\x0c\x53\xd1\x37\x35\x55\xf1\x85\x8d\xc0\x85\x20\x0f\x1e\x02\xef\x52\x04\x6e\xae\xe2\x84\x69\xdf\xf5\x6a\x7d\xb2\x10\x53\x6a\x13\x48\x64\x02\x4d\x0b\x31\xc9\xa8\x4d\x4a\x01\x61\x8b\x46\xdd\xc2\x68\x8d\x26\x1e\xba\xc5\x5a\x74\x0d\xa6\x1c\xf2\xb8\x94\x33\xea\x02\xa2\x66\x74\x0e\x4e\xcc\x6c\x5a\x09\x45\x03\x19\x24\xd4\x40\x13\xf8\x3f\x66\x9e\xab\xb7\x69\x2f\x04\x4f\x38\x25\xa4\x9a\x89\x79\x98\x79\x3d\x57\x91\x09\x5d\x3f\xef\xdc\xa3\x99\x0a\x0e\x16\x40\x26\xc0\xc8\x1c\x73\xe3\xc8\xa7\xb0\xc5\xa5\x60\xac\xc8\xf5\xc4\xb3\xa2\x6f\xbc\xf1\x00\xba\x55\x81\x1e\xbe\xcf\x38\x9a\x66\x72\x3c\xdd\xc0\x49\x03\x6f\xa1\x33\x43\xff\x98\x69\x1b\x70\xd6\xf8\xeb\xfd\x37\xc9\xdd\x39\xe3\x82\x51\x05\xb9\xc9\x05\xfe\x72\x0a\x86\xa6\x26\x3f\x42\x8f\x08\xe1\x7a\xb7\xcb\x6a\x70\xcd\x13\x70\x12\x6d\xd1\x7a\xb7\x3b\xcd\xea\x4e\x4f\xe1\x92\x15\x78\x49\xbc\xd9\xda\xbe\xb1\x35\x06\xc1\x80\x0b\x62\x15\xb3\xd3\xc6\xfe\x15\x56\xac\x6d\x45\x6d\x26\x98\xd8\x3f\x27\xee\xf5\xf2\xd4\x9b\xe1\x6e\x57\xa8\x9f\xba\xc6\x83\x72\xe0\x0c\x19\x8b\xc6\xa5\x9d\xb7\x96\xc8\x25\x5e\x5b\xc3\x63\x81\xff\x98\xad\xf1\xdf\xa8\xe7\xf3\x20\xb7\x13\xe6\x38\xc7\x15\xa6\x08\xe7\x1e\x44\xcf\x24\xab\xd3\xb4\xb6\x2c\xa7\x40\xdf\x90\xf1\x6e\x97\x28\x0a\x40\xcb\xdc\x29\x59\x19\xad\x13\x8d\x81\x78\x43\xf9\x75\xef\xf9\xb4\x97\x1c\xc2\xe1\x1e\xcc\xc4\x7c\xb7\x03\xe4\x21\xed\x33\x71\x93\x7f\xa4\xda\x4e\x53\x21\xe3\x72\xdd\x7d\xc3\x9d\x0b\x6d\xde\xea\x36\x73\x34\x29\xd2\xb4\xf0\x07\x7c\x76\x7e\x54\xd7\xb0\xcf\xaa\xee\x01\xc9\xc6\xb8\xf1\xf3\x77\x56\x08\xcb\xfb\xd5\x81\xa6\x49\xc6\x05\xb8\x13\xde\xe1\x62\xb3\x02\x19\xff\x5c\x3e\x2b\xe6\x83\x5c\x64\x4b\x34\xcd\x00\x37\x2a\x9f\x15\x73\x02\x27\xb5\x00\x07\xbc\x87\x16\xa1\x09\x3c\x5c\x5a\xdc\x2b\x79\xe6\x46\x8b\xba\xd9\x52\x4e\xca\xd1\xbb\x37\x6f\x3e\x20\xec\x4f\x33\x17\xe0\x51\x93\x71\x62\x8f\x7c\x8e\x2b\x84\x70\xe5\x3e\x9f\xfa\x94\xbe\x83\xcd\x56\x74\x57\xc0\xdc\x7f\x1e\x5a\x1b\x47\xe6\x3b\x5c\x07\xe0\xaa\x1c\x75\x3c\xb6\x3d\x64\x94\xe9\xdb\xc9\x3b\xdc\x90\xf1\x45\xf3\xbc\x02\xc7\x30\x6b\xaf\x6d\x86\x43\x54\x67\x14\xeb\xc7\xb3\x46\xa7\x4b\x16\xb8\xd2\x08\x74\x7e\xa3\x39\x72\x78\x74\x6c\x7a\x37\x79\x85\x97\x64\x7c\xb1\x74\x90\x73\xcb\xe1\x10\x15\x19\xc5\xf9\x6c\x39\xb7\x18\x68\x76\x7e\x37\x1e\x39\x8d\x5d\x83\x69\x6a\x57\x40\x72\x49\x91\x22\xa5\x2d\x52\x82\xf8\xe6\x02\x1d\x84\xd3\x68\x69\x62\x46\x1e\x5a\xdc\xc8\xff\x15\xa1\x0d\x05\x2f\x95\x18\x10\x7c\x3e\xdc\xf7\x1c\x0d\xa8\x9d\xc2\xfe\x0e\xa0\xf0\xd1\x83\xf6\x3d\x97\xb7\x81\xf1\x43\x67\x33\x3a\x6f\x43\xd7\x65\xcb\xd2\x6d\x94\x98\x9d\x35\x64\x29\x24\x9f\x4c\xc4\x6c\x33\x47\xe8\x94\x90\x02\x12\x65\x34\x8a\x23\x2c\x14\x88\xd7\x1d\x2b\x8a\x1f\xe4\x59\x85\x6b\x2a\x4d\xbb\x4f\x32\x88\x3e\x59\x8b\x6c\xdf\x79\x97\x8c\xae\xca\x6e\x2f\x0b\xf5\x8e\xbd\x79\xdd\xa0\xa6\x7f\x38\x60\x7f\x83\xc9\xbf\x40\x78\x23\xb2\x0a\x17\xb8\x99\x15\x73\xbd\x32\x4b\xbc\x46\x68\xd0\xab\x97\x18\x26\x3a\x41\x10\x8e\x65\x79\x7d\xc7\xf6\x23\xe5\x19\x5c\x2b\x94\x48\x79\x8e\x68\x66\x7e\x78\xcb\x2e\x09\xef\x1d\x13\x1b\xc8\xf8\xef\xfe\xb6\x4e\x90\x2b\x84\xda\x4c\xe0\x02\x60\xd9\x29\xf6\x80\x12\x15\x06\xe2\xd2\xac\xf9\x5a\xad\x79\xe2\xe5\x33\x4c\x24\x6b\xc9\xc8\x72\xb6\x9e\x23\x29\x3e\x74\x26\xc1\x10\xdc\xcc\x39\xa9\x67\x6c\x8e\x2b\xd2\xc8\x7f\x56\xa3\xcb\xef\x5f\x5f\xbe\x5f\xfc\xf0\xea\xc3\x6f\xde\xbc\x84\x53\x70\x51\xa5\x69\xe5\x5f\x47\xf7\x42\xfb\xfc\x6f\x48\x23\x77\x63\x25\x07\x87\x06\x39\xd9\x00\x4e\x2f\xae\xc8\x46\x69\x34\xdb\xe8\x65\x5e\xd9\x44\x13\xa7\xea\x66\x67\x68\x0a\x07\x86\xa9\x83\x54\xa1\x89\xfe\x49\x61\x60\x08\x83\xfe\x8f\xc1\xc5\x50\xf8\x79\x28\xc2\xc1\xa6\x69\xd6\x74\xd5\xa4\xbe\x49\x53\xe8\x54\x03\x92\xf9\xc4\x52\x02\xad\xe6\xb8\x26\xe5\xac\x9a\xf7\xe4\x88\xdc\x5c\xec\xa7\x70\x1d\x7b\x9c\x3a\x83\x11\x57\x08\x4d\xb3\x1c\xfc\x25\xed\x0d\x65\x60\x1a\x70\x4d\xe8\xac\x92\x37\xfc\x83\x5c\x8d\x49\xae\x5d\x74\xeb\xb6\x55\xaa\x87\x7b\x81\xaf\x05\xbe\x12\x78\x21\xf6\x67\xe5\x36\xe9\x8e\x62\x70\xbf\x21\x43\xd5\x03\xd3\xf3\xbe\xb1\x87\xdf\x80\x94\x31\x28\x14\xd0\x07\x70\x63\xd4\xd5\x0d\xcd\x62\xee\xab\xb5\x80\x54\x6a\xe0\x39\xab\xd9\xc2\x87\xd6\xc5\xf1\x47\x93\x7f\xdd\xba\x3c\x24\xb5\xc8\x4a\x34\x65\x33\x3e\x27\xdf\x66\x25\x9a\xc0\x5f\x74\xc6\xe7\x2d\x78\x39\xb8\xef\x08\xac\xa9\x9c\xae\x4e\x02\x7a\x27\x2c\x0a\x00\x64\x2b\x78\xe1\xf6\x74\x88\x8e\xa1\x4f\x8b\x01\xc8\xe8\xa7\xa0\x46\x0f\x52\xaa\x19\x38\x73\x99\xb2\x14\x3c\x82\xe1\x89\x4c\x04\x8d\xc1\xee\x8c\x83\xb2\x9a\xcc\xd4\x1e\x8e\xe0\x4d\x3f\xe9\x9a\xfd\x38\x9d\x10\xa5\xd2\xc3\x1a\xf0\xe1\x8e\x83\xf4\x6d\x5d\x27\x68\xb7\x1f\x76\xbb\xd2\xa2\x3e\x22\x84\xcb\x76\x70\x40\x83\xaa\x32\x79\xc7\xf0\x62\x7f\xe9\x52\xb0\x75\x06\xd8\x77\xc6\x7a\x65\x9d\x54\x3c\x41\xc3\x60\xe8\xc0\x72\xf9\xdf\xcf\x2b\x33\xe8\x6e\x77\xbf\x9c\x5e\xd5\x19\x9b\x2b\xa2\xea\x3d\x34\xd9\xe0\x4c\x11\x87\x98\xed\x3f\xf6\xfe\x36\x6c\xdc\x1d\x24\x5c\x51\xc6\xba\x16\x0b\x65\x65\x8c\xc1\xce\xc2\x85\x3b\x93\xe5\xe6\xc8\x16\x7c\x9b\x73\xc1\xf2\xe2\x98\xf2\x2b\x2a\x02\x2c\xd9\x10\xc5\xf4\xd4\x43\xc3\x31\xbb\xc0\x61\xbe\xc9\xc5\xf4\x29\xaf\x55\x56\x77\x2f\xf1\x5e\x76\x05\xa3\xd7\x09\x80\xaf\xfc\x76\x4b\xd0\x14\xc9\x83\xe7\xc1\x05\x6a\xcf\x4b\x26\x69\xa5\x4a\x03\xc8\xd6\x99\x07\x44\xd4\xa1\x14\x1e\x0c\x86\xc9\xd1\x60\x99\xe1\xd3\xf3\xd6\x40\xcd\x68\x63\x61\x1f\x9f\x2a\x8c\xe7\x37\x39\x34\xb5\xb4\x6a\x40\x6a\xcc\x19\x8f\x6e\x5e\xb5\xa7\xf4\x6a\x63\xde\xdf\xcc\xa5\xb7\x99\xb9\x55\x48\x82\x26\xb2\x9c\x31\x7f\x33\xb3\xb9\x67\x71\x30\x9d\x96\x58\xc8\x31\x48\x72\x19\x31\xfd\x1e\xf8\x0a\x2a\x18\xd9\x7e\x85\xe3\xbf\x4e\xf8\x6d\xfc\x23\xe2\x22\x48\x03\x22\xee\x17\xc1\x15\x19\x5f\x54\xcf\x0d\x40\xe0\x45\x05\x91\x7f\xb2\x31\x26\xaf\x24\xa5\x4d\x14\x96\x25\x31\x7f\x1d\x46\x38\xe9\x7d\x5a\x29\xaa\x39\x0c\x21\xc3\xfa\xf4\x96\xc7\x2a\xa1\x4e\xa0\x17\x94\x74\xf1\x83\x80\xcc\x1b\x20\xa9\x34\x35\x16\xae\xdd\x6e\x8c\xb9\xe7\x6f\x28\xbe\x19\xa3\x87\x90\x28\x75\x13\x9b\xf9\xe9\xbd\x28\x50\x68\x49\xa8\x58\x47\x3b\xc2\x26\xb2\x8d\x85\xc8\x1c\x78\xb8\x13\x3e\x0d\xce\xe9\x42\xde\xcb\xbe\xa1\xd9\x43\xd2\xed\xf1\x1b\xf7\xa2\x0f\x64\xe3\x98\x0c\x42\x21\x03\x8e\x8f\xa6\x7a\x1d\x69\xa4\x5b\x22\x9a\x0b\x82\xde\x9d\xdc\x83\xb5\x4d\xb6\xb8\x1f\xbb\xf5\x4a\xec\xcd\x94\x04\x37\xe9\x71\x59\xfe\x55\x0a\xa4\x2f\x9c\xdd\x9f\x5a\xbc\xea\xd8\x04\x81\x2d\x50\xb0\xba\xdd\x32\xb2\x6b\xf9\x9a\x40\x7a\x81\x37\x7f\xfc\xf1\xd5\x3b\xdf\x07\x1d\xc0\xb0\x85\x0b\x8a\x81\x02\x80\xc5\xa0\x8a\xf2\xbd\x2b\xc2\xab\x46\xb0\xf2\xfa\xb8\x35\x31\x85\x0b\x76\xf5\x8c\x7e\x12\xcf\x96\x55\x29\x78\x55\x14\x94\x3f\x5a\xbc\xa8\x96\x00\xb7\xf4\x2c\xdf\xb2\xe3\x0b\x97\x55\x49\x17\xe6\xd7\xf1\xd5\x36\x79\xbd\xf9\x9c\x6a\xac\x16\x15\xbf\xff\x8c\x9a\x79\x23\xaa\xe3\xab\xd5\xf7\xb5\xa0\x37\xcf\xae\xa5\x2c\x9f\x0b\xba\x78\xc2\x32\xea\xaa\xae\xc6\x62\x5d\x1d\x5d\x6b\x55\xc7\xd3\x80\x45\x8a\xca\x47\xc7\x0f\x07\x4a\x1f\x5b\xf8\xe7\x86\xf2\xfb\xc5\x36\xe7\xf9\xcd\xe3\xbb\xac\xa6\xfc\x96\x2d\xa9\x7d\xf8\xb4\x0a\x4f\x58\xd0\x7c\xb9\xa1\xc7\x26\x04\xc3\x5b\x7c\xf3\x4b\x29\xc1\xde\x0a\xdf\xdb\x5d\xd4\x01\x62\x8a\xfb\xe0\x71\x63\xd2\x6d\x0f\x35\xfa\x63\x55\xd2\x27\x36\x5c\x1e\xd5\xf0\x6f\xf2\x7a\xf3\xc4\x86\xd9\x71\x0d\xab\xb3\xf8\xc4\xb6\xab\xa3\xda\xbe\x6c\x44\xf5\xc4\x86\xf3\xa3\x1a\x36\x27\xfa\x85\x77\xa0\x8f\x6a\xbe\xfe\xcc\xe6\xbf\xcb\xa5\x3c\x78\x7f\x74\x2f\x7b\x5b\x38\xd8\xaf\xa3\x36\xdf\x55\xc7\xce\xa8\x39\x6a\x46\xef\xe0\x90\xbe\x7c\xff\xfd\x91\xad\x16\x4f\x68\xf5\xc8\x26\x97\xc7\x37\x79\x64\x8b\xeb\xa3\x5a\xfc\xbd\x24\x83\x6f\x35\x15\x3c\xaa\xdd\xd5\xd1\x23\x65\xe5\xf5\x7b\x45\x07\x8f\x6c\x7a\xf3\x84\x75\x7d\x5a\xcb\xdb\xa3\x5a\xfe\xb6\x59\x7e\xd4\x29\x0d\x8f\x6c\xf7\xc6\x6b\xf7\x51\xe6\x26\xc6\xaf\x1c\xe6\x74\x20\xa5\xa6\x7b\xe3\x2a\x42\x5b\xde\xf5\x0b\x6c\xfd\xa3\xb7\x4c\x94\x99\xd4\xaa\xf1\x5f\xc8\x50\xea\x65\x70\x21\x8a\xfa\x81\xd6\x77\x64\x0f\x71\x85\xf1\x64\x96\xfc\xec\xed\xc0\x39\xf6\x7e\x41\xa8\x3e\x5e\xfc\xbc\x7d\x49\x0b\x7a\x9d\x0b\x6a\x1f\x28\xdc\x9b\x95\x9f\x08\x85\xbb\x3c\xec\x2e\xce\x7b\x36\x4f\xa4\x9c\xa9\x61\x95\xf8\x84\x6b\xac\x8f\x31\x2e\xd1\x45\x36\xc6\x74\xe4\xb5\xae\x3d\x45\xc1\xa5\x00\x29\x64\xe9\x16\x0b\x9e\x97\x35\x93\x7d\x7c\xa8\x60\xdf\x4d\x22\xb2\x2f\x25\xae\x1e\x28\xb5\x12\x95\x56\x35\x91\x62\x30\xe4\x1b\x09\xdb\xd8\xed\xc2\x87\x98\xf5\x85\xe5\xca\x13\xb2\x18\xc2\x39\x19\x5f\xe4\xcf\xd9\x45\x3e\x1c\xa2\x6a\x96\xfb\xc2\x72\x3e\xf7\xe0\x3c\xb5\xe3\x3e\xe8\x1f\xb7\x9c\xae\xd9\x27\xe8\x51\x8a\x40\x97\xfc\x5a\x0f\xaf\x92\x33\xd3\x20\x10\x9f\x3b\x29\xbf\xba\x9c\x8f\xfe\xfd\x47\x26\x36\xff\x8c\xe9\xb4\x26\xb4\xc9\x6e\xbc\x81\xdb\x93\xec\xa8\x93\x19\x8a\x06\x91\x73\xa9\xd2\xcf\xce\x43\x74\x81\x2f\x7b\x6e\xb4\xe2\xf0\x41\xe9\x4e\x27\x7d\xdd\x25\xc8\xe6\xec\x66\xab\x92\xf9\xc1\x78\x8d\xbb\x60\xf8\xb4\xf6\xec\xf8\x5c\xeb\x62\x2d\xe4\x90\x1f\x93\xd9\xa9\x36\x79\x68\x5b\x6f\xe9\xf6\xcb\xb0\xc7\x08\x20\x4f\x49\x02\x7c\xc5\xab\xbb\x9a\xf2\xb3\x68\x2a\xdf\xfd\x24\xb1\x97\x4d\x37\x4a\x03\x9b\x52\xb0\x9b\xb8\x68\x70\x74\x8e\xe1\xe8\x84\x65\xed\xc3\xfc\xfa\x17\x91\xd5\x35\x1b\x0a\x89\x67\xd7\xfa\x51\x5e\x6f\xe0\xf7\x2a\xbe\x8b\x8a\xfd\xe1\x1c\xca\x11\x4b\x3b\x0e\x09\x72\x30\xac\x03\x75\xf6\x15\x49\xe4\x37\x4e\xb0\x38\x1c\x8f\x50\xc5\xe2\x11\xaa\x9e\x02\x36\x48\x46\xce\xab\x4a\xfc\xf4\xee\x7b\x2c\x22\x3a\x7b\x3a\x32\x4b\x0e\xd4\xa7\xa9\x29\xbf\xbc\xa6\xa5\xc0\x25\xa1\x23\x2d\x30\x63\x46\xe8\x68\x55\x2d\x61\xfc\x3f\x54\x2b\x8a\x2b\x42\x47\x2a\xdc\x05\xe7\x92\x66\xe9\x0e\x6a\x92\x48\x89\x3e\xc1\x05\x39\x3d\x57\xee\x1b\x8d\x5c\xd2\xef\x9a\xa2\x90\x4b\x8a\xb4\x39\x06\x9e\xd7\xcd\x16\xb6\xb0\xfe\x04\x72\x8e\x26\x35\xde\x86\xac\xb3\x1c\x0b\x34\x58\x12\x42\x36\xd3\x9a\x24\x7a\x24\xc9\x24\x79\xf6\x2f\x09\x21\x64\x69\x50\x8f\xc6\xf8\xd7\x68\x9a\x95\x86\x4c\xbe\x17\xb9\xa0\x19\x64\x40\x9b\x6c\x5a\x9c\x24\x78\x83\xb0\x57\x1f\x90\x63\x4e\xc7\x18\x46\xa0\xeb\xe8\x91\xe1\x0d\x42\x16\xe9\x28\x1c\x61\x5e\x6f\xd4\xcd\xa8\x02\x21\x0c\x72\xd5\xca\x0d\x72\xbb\xdb\x25\xcf\x12\x85\x0c\x98\x3c\xfb\x17\xf8\x73\x0b\x03\xcf\xeb\x4d\x72\xa0\xd3\x2d\x82\x78\xc1\xa2\x97\xec\xb1\x6e\xb3\x07\xf3\x69\x26\x0a\xc1\xd9\x7c\x28\x3d\x19\xf5\xd4\x7c\x23\xfb\xe5\xd4\x63\xf7\x21\xf5\xc7\x99\x50\xec\x7f\x42\x55\x2a\xf8\xa8\xea\x83\xaa\x17\xea\xef\x16\x0d\x54\x70\x7e\x9a\x66\xc6\xb7\xce\x5c\x5a\xcb\xbc\x5c\xd2\xc2\xb0\x8c\xa2\xd9\x26\xf8\x74\x8c\xb0\xd0\x5b\x00\x39\xbd\x15\xeb\x26\x71\x33\xb9\xda\x12\x3b\xbf\x64\x28\x80\x6f\xd0\x3d\x70\x9c\xe8\x51\x27\x98\x3a\xb7\x3e\xdb\x75\x55\x2e\x39\x15\xf4\x75\x70\x80\x12\x1d\xf2\x79\xc7\x8a\xe2\x65\x37\x13\x67\x70\x1e\xe2\xf5\x07\x70\x05\x38\xd7\x6b\xcc\xdb\xac\x1a\x29\xb2\xe2\x29\x74\x97\x9e\x42\x2f\xaa\xae\x3f\xd0\xc5\x17\x52\xde\x43\xf6\x46\xc1\xef\x5f\x97\xb7\xd5\x47\x2a\x77\x11\xc5\xa5\x0f\x0d\xb2\x0e\x02\x82\x30\xb3\x07\xd1\x1c\x42\x95\xf2\xa3\x31\xe4\x0e\x1e\xe5\xf6\x11\x88\x2e\xea\xac\x7a\x29\xc9\x0c\x10\xb0\xda\xdc\x55\x78\x00\x39\xc9\x4a\xf7\xec\xdc\xa2\x6e\xfd\x4b\x82\xd0\xa8\xde\xb0\xb5\xc8\x10\x56\x27\x84\x81\x2b\xf4\xa5\xc8\x6c\x8a\x9f\x73\xe5\x5c\xc3\x5d\x75\x84\xd9\x90\xf0\x61\x6e\xd1\x1e\xd3\x34\x63\x43\x92\xfc\x4b\x32\x2c\xb5\xe7\xb0\x6c\x19\x4d\xd8\x90\xe4\xc3\x2a\xf0\xca\x0b\xb0\xc6\x70\x49\xd4\x62\x98\xb6\x8d\x02\xde\x4e\x27\x51\x56\x99\x2c\x79\x06\x7f\xcd\xc6\x73\xb0\x5e\x24\xcf\x92\x61\x89\x30\xd7\x9d\x22\xcc\x5b\x77\x1b\x14\xb8\xb0\xec\xb7\x39\x5e\xc9\xb3\x04\xb3\x92\x09\xa0\x40\x93\x65\x96\xd8\x1f\x09\x92\x32\x8e\x2c\xb3\xcc\x12\xf5\x57\x02\xf0\xf8\xfa\x51\x6d\x1e\x69\xd2\xa0\x1f\xbb\x5f\x09\xc2\x55\x09\x98\x6d\xe6\x9d\xf7\x33\x41\x78\x5d\xf1\x9b\xdc\xb4\x66\x7f\x24\x08\xdb\xf3\xc5\xfb\xc4\x83\x5b\xca\xa1\xcf\x3d\x1f\xdd\xb1\x72\x55\xdd\x79\x94\x84\x7b\x64\xa4\x77\xde\x55\x66\x97\x27\x71\x31\x1d\xbd\xed\x53\xb8\x98\xfd\xdc\x49\x8f\x07\xe1\x4d\x59\x54\xd5\xf6\xcb\xf0\x1a\x5f\x85\x11\xcd\xe3\x2c\x44\xf9\x8b\x59\x08\xb8\x6d\xf6\xb0\x10\xa5\x61\x21\x72\x52\xf6\x59\x88\x1c\x50\xe5\x7d\x82\x09\xa6\x4c\x8f\xea\xba\xef\xa6\xfc\x12\xcc\xef\xdd\x4e\xed\x1b\xbb\xc5\x4c\xac\x8c\x1c\x8c\x82\x3f\xfd\x4d\x5e\xae\x0a\x8b\xaa\xd3\xe2\xdc\x10\x9e\xbe\x41\x2d\x1b\x2b\x9c\x10\x4d\x96\xfc\x7b\x0f\xe9\x8a\x3f\xbd\xfb\x7e\x0f\x61\xd7\xf5\x32\xe4\x28\x09\x16\xc4\x42\x98\xc3\x09\x17\xea\x84\x0b\x79\xc2\x31\x95\x7f\xa9\x23\x4e\x55\x6e\x67\xc0\xcd\x09\x7a\x30\x36\x2f\x33\x8c\x91\x9c\x17\xa1\xb8\xb7\x3e\x79\x2d\xde\x53\x73\x69\xc9\x96\xdc\x09\x3e\xd0\x9a\xc1\x0c\x54\x63\x38\xa2\x55\xef\xec\xf7\x9b\x5d\xa8\x9c\x26\x90\x7a\xdd\xb8\x13\x66\xfb\x3f\x08\xdc\xce\x57\xac\x5c\xe9\xee\xb2\xce\xba\x0a\xbb\xae\x3f\xbd\xfb\x3e\xd3\x0e\x0c\x6e\x48\xa7\x96\x35\xd8\x3b\x66\x15\xcf\x08\xe8\x5d\x92\x56\xe8\xad\x92\xaf\x56\xe1\x10\x13\x37\xb6\x64\xdf\x68\x61\xf6\x96\xbc\x45\x0c\x6c\xb0\x84\xb2\xd0\x1e\x16\xe0\xc0\x0a\xc9\x5a\xb1\x37\xfd\xea\xbd\x61\xa5\xa9\x9e\x54\xac\xe1\x23\xe7\x55\xb6\x59\x69\x59\x0d\x47\x32\xf2\x27\x92\xd7\x9e\x7d\xeb\x2b\x51\xd8\xcf\x27\xa8\x5f\x85\x9c\x56\xe0\x26\x6c\x83\x22\x9c\x71\xfe\x93\xfe\xef\x0c\xfe\xf7\xef\xf2\x7f\xf7\xe6\xa7\xf9\x2f\xb1\x27\xf0\xd9\xec\xd3\xfd\xfc\xd9\x75\xa8\x86\xf0\xe9\xf1\x89\x20\xe7\xff\xf1\x3f\x7e\xc8\xc5\x66\xc4\xf3\x72\x55\xdd\x64\x68\x37\xc6\x59\xf2\x49\xb2\x35\x74\x2a\x26\xff\x96\x8a\xdd\xff\x42\x2e\xfa\xe8\xfc\x3f\x20\x0b\x97\xf2\xdb\xfd\x5a\x24\x5f\x4b\x36\x58\x18\x31\x0c\x28\xdb\x23\x77\x40\x1d\xbb\x03\xea\x83\x64\x99\xed\x27\xcb\x75\xef\xf2\xd0\xf1\x7c\xcd\x96\xf2\xf8\x74\x74\x2a\x1a\x23\x80\x8c\x40\x3d\xf9\x9e\x16\x74\x29\x2a\x9e\x25\x57\x79\x2d\xf9\x26\x41\x92\x64\x00\x44\x9a\x80\x6c\x7e\x29\x04\x67\x57\x8d\xa0\x59\xb2\xe1\x74\xad\x91\x0f\x03\xe2\x23\x6b\x02\xe5\x11\x11\x62\x1a\x5e\x61\x8f\xde\x60\xdb\x6a\x5b\x4b\x0e\xae\x7b\x7f\xa9\xf9\x02\x73\xb7\xe7\x26\xd2\x5f\xc5\xb6\xac\x7f\x5f\x74\x47\x64\xbf\x1e\x45\xd6\xb7\x0d\xba\x34\x20\x43\x96\xde\x65\x01\x25\x46\x03\x91\xa6\x2a\xe9\x3b\xa8\x60\xf5\x78\x39\xbd\x65\x55\x53\xcb\x4d\x10\x14\x9f\xe8\x78\x59\x4f\x46\x56\xdf\xed\xe0\x75\x6a\x79\x46\x11\xea\x11\xb4\x5e\x4c\xaf\x34\x68\x0a\xe4\x40\xca\xfc\x86\x0e\x04\x11\xee\x40\xfd\xf5\xd9\xbf\x3e\xc3\x09\x28\x36\x79\xff\xa9\x56\x2c\xba\x2b\x50\x0a\x42\xef\xe8\xf5\xab\x4f\xdb\x2c\xf9\xbf\xc9\x90\x0f\x93\x6c\x4a\x9e\xed\xfe\x15\x25\x48\x96\xdf\x57\x4e\xec\x2b\xf7\xec\xaf\xcf\xfe\xfa\xec\xd9\xb5\x94\x3b\x5c\x96\x8f\x21\xc9\xe8\xa8\x86\x64\xc6\xbb\x5d\x92\xa0\x61\xc8\x39\xc8\x45\x89\x70\x00\xde\x65\xa8\x3f\x99\xfa\x4c\x03\xda\xfd\x4c\x14\x61\xff\xd3\x50\x9d\xb1\x7c\xdb\xd4\x1b\xb5\xf0\x14\xfa\xd8\xc3\x1b\xfc\xe2\x7e\x82\x6f\xac\xba\xb2\x5d\x47\x7a\x52\x9a\x12\x8a\x9b\x86\xad\x26\x79\x86\xda\x41\xd0\xb7\x1b\xb5\x46\x69\xa2\xf6\x68\xec\xdb\x6a\xde\xe4\x3e\xb3\xd3\x60\x0a\x4f\xea\x77\x1f\x6b\xe4\x56\x75\xf0\x38\x97\xd4\x3d\xf4\x3e\x4b\x5c\xed\x76\x90\x1f\x43\xe9\xef\xa1\x5f\xc9\x03\x05\xc3\x42\x28\x4d\x69\xe6\x0a\xa0\x76\x3f\xd7\x63\xfa\x4a\xe2\x7d\xc3\xa4\xe2\x1c\x8f\xb7\x51\xe2\xc7\xd2\x97\x6f\xe9\x34\x7b\xc2\xb9\x44\x13\x25\xa8\x73\xe0\x94\xd5\xdf\x9a\x6b\x8e\x97\xc7\x7c\x28\x24\xe3\x55\x7f\x16\xe3\x15\x7f\x13\xc1\x40\x0c\xd7\xe6\x30\xdb\xf5\xf8\xc2\xee\x61\xb9\xea\xa7\xb1\x5c\x1d\x07\xa6\xaf\xc4\x6f\x45\x0c\x24\x5f\xc7\xbc\xa8\x49\xf2\x57\x62\x55\x94\x6e\xf8\x11\xce\x84\xc5\x38\x13\x16\x51\x70\xfb\x7b\xbf\x55\xdc\xc9\xfe\xab\x4c\x52\x9c\xce\x35\xe6\x98\xba\xd8\xc9\xa0\xc7\xde\x36\xb2\xeb\xc8\x85\xd1\xbd\xe8\xe5\x00\x94\x04\xc7\x0e\x4b\x70\x0a\x5d\xe7\x45\x5e\x14\x57\xf9\xf2\x23\xa1\xb2\xc2\x06\x76\xed\xb1\x5d\xe0\x48\x3b\x99\xea\xf9\x58\x5a\x12\x10\x0f\x05\x8c\x11\x3b\xf7\x70\xea\xf7\x1c\x24\x86\x99\xd5\x91\x01\xbd\x4f\x12\xec\xe9\xca\x9e\xaa\x3a\x02\x91\xc2\x3b\x5f\x87\xac\x85\x2e\xcc\xdf\xb7\x73\x58\x16\x65\x9f\x36\x60\x28\x82\x64\xf8\x3c\xc0\x38\x57\x1c\x83\x17\x48\xee\x7b\xc3\xdb\x30\x15\xd0\x0d\xa8\x08\xe5\x8d\x55\x90\xa2\x49\x92\x78\xd1\xe6\xfe\x98\x2a\xce\xae\x59\x39\x70\x41\xed\x99\x0d\x6e\x58\x56\xc5\x30\x79\xf6\x2c\x19\xd2\xd1\xa6\xaa\x85\x1c\x39\xa6\x23\x39\x79\xad\xb3\x98\xc8\x57\xf2\x37\x28\x2e\x3e\xcf\xfc\x05\x76\x2e\xa1\xfe\x06\xad\x2f\xe1\xce\x08\x46\x4a\xf5\xb7\xb1\xde\xc4\x5c\x5a\xe5\x0a\x0f\xe5\x4a\x0d\x4b\xd8\x62\xca\x01\x16\x66\x45\x18\x24\x25\xee\x9a\x50\xe2\x79\x14\x45\x9a\x26\x55\xe9\x09\xcb\x0c\x9e\xb9\xd8\x62\xba\xdb\xd1\x6f\xfe\x27\xf4\xd0\x31\x1c\x75\x1a\x64\xeb\x2c\x3b\xd3\x51\xef\xc6\x5f\xe1\xb2\x5c\x71\xd9\xd0\xaf\x47\x09\xda\xed\xf6\xbd\xfd\xf7\xd1\x38\x91\x97\x77\xf7\xfd\x0f\xd5\x15\x2b\xe8\xc9\xfb\x7c\x9d\x73\x96\x40\x01\x12\x14\x78\xb1\xe1\xd5\x0d\x8d\xbd\xf9\x23\x5c\x51\xf5\xc9\xdb\x0d\xd8\x44\x7a\x46\x1e\x1d\x89\x9f\xc9\xe9\x5b\x5e\x0b\xe6\x0e\x33\xf5\x6c\x45\x5d\x5f\x61\x7b\x1c\xe5\x7e\x1a\x0a\xd4\x1e\x75\x9c\x7a\xde\x93\x4f\xb9\xb0\xf6\x5c\x4b\xf6\xa7\x8a\xf6\x78\xb6\xd4\xf8\x77\xee\x45\x6d\x3c\x8a\x3e\xd7\x8b\xc6\x84\x6f\xc6\x4f\x79\xed\xef\x24\xcd\xae\x4c\xe9\x84\x9a\x03\x68\x01\x51\xac\xee\xff\x73\x4e\x4b\xe4\xa2\x6c\xfe\x09\xc0\x7e\x5d\x41\xdb\x63\x6d\x7d\xe8\x38\x59\x2c\xde\xb7\x01\x32\x82\x0d\x30\xaa\xca\x2c\x81\x3f\xfd\xc4\x58\x01\x65\x15\x23\xc1\xd9\xf5\xb5\x64\xaa\x7a\x05\x55\x58\x56\xbc\x41\x2f\x8b\xd6\xc1\xf6\xbc\x72\xd0\x1c\xa0\xe3\x79\x3e\x3c\xb1\x98\x98\x2f\x80\x08\x09\x36\x34\x4e\x6b\x7a\x73\x55\x50\x60\xdb\x01\xfe\x11\x85\xa0\xd3\x7a\x52\x8b\x55\xf5\xd3\xbb\xef\x3f\xd8\x51\x65\x89\x3f\xc2\x04\x43\x4d\x17\x01\x94\x8f\xe8\x27\xc1\xf3\xa5\x00\x6b\xc9\x25\xbf\xae\x91\x02\x0a\x2a\x47\xdc\x78\xd9\xe0\x8a\x94\xa3\x9b\x6a\x45\x8b\x1a\xd7\xa4\x1c\x79\xee\x59\xb8\x21\xdd\xde\xbd\xae\x19\x84\xa2\x9e\x8e\xad\x44\xdb\x8c\x16\x1f\x29\xdd\xbe\x54\xfb\xd3\xb9\x1d\xfe\x41\xee\x5e\x88\x81\x6f\x14\x58\x9e\xf5\x23\x8a\x44\xf9\x40\x87\xfe\xa4\xe2\x9b\x47\x07\x7e\x58\xe3\x54\x02\x9f\xab\xe1\xc5\x77\x15\x8f\x03\x96\x3d\x6a\xf2\xfc\xe6\x7c\xca\xcf\xce\x27\x63\xb9\x3e\xe7\xbe\xe9\xf3\xec\x3c\x6e\xfc\x14\xc1\xea\x20\xeb\xf3\x6a\x46\x8c\x67\xd4\xcf\x53\xd7\x02\x1c\xf5\xe5\x52\xb0\x5b\xfa\x35\xf6\xd2\x57\xfb\xea\xea\xdf\x1f\xd8\x92\x57\x05\xbb\x02\xcc\x84\xc6\xce\xe4\x35\x24\xf5\x50\xde\x08\xf6\x52\x51\xde\x29\x7e\xe0\x54\x8d\x2c\xfe\xbf\x09\x59\x2b\x4c\x34\xa1\xed\x68\xcb\xe9\x36\xe7\xd4\x73\x58\x75\x9b\x0c\xc3\xc4\xea\x4d\x5e\x14\xd5\xdd\xab\x9f\x9b\xbc\x40\x59\x8d\x1b\xa5\x94\xf0\x87\x8f\x34\x22\xe3\xb2\xba\x2e\xd9\xdf\x63\x52\x7f\x6d\x30\x1c\x35\x17\x18\x06\x31\xee\x99\xb6\x6b\x11\x72\xb3\x7b\x3d\x5c\x96\xab\xef\xab\x7c\xf5\xe5\x3b\xd2\x0d\x43\x7f\xe0\x02\x60\x31\xd5\xdc\x25\xd0\x80\x23\x07\x30\xb7\x7c\x04\xa2\x27\x5d\xe1\x87\x65\xc3\x39\x2d\x85\xf5\xa4\x9b\x80\xd6\xd4\xa0\x54\xa2\x2c\x31\x7d\x77\x0b\x26\x08\xeb\x47\x92\x3b\x7e\xa4\x56\xc7\xb4\xbb\xaf\xb4\x15\x4a\x91\x65\xbb\xf7\x15\x35\xbe\x16\x76\x14\xca\x77\xf1\x98\xd1\x27\xe8\x48\x46\xbe\x1f\xe8\xf1\x28\xeb\xb1\x97\x9f\xd8\x56\xc5\xfd\x9a\x15\xbe\x77\x99\x61\x31\xfe\x91\x46\x87\xaf\x78\xf9\xb3\xd8\xe5\x0f\x48\x68\xb0\xea\x51\x4e\x5c\xed\x78\xf8\x42\xa6\x9c\x96\xfa\xe2\xd7\x69\x37\x79\x8c\x57\x3f\xbc\x71\x34\x16\xbe\x61\x41\xd2\x94\xf5\xaf\x01\xcc\x64\x47\xa5\x14\x2f\x0b\xf6\x77\x9f\x96\xf4\x20\x26\x83\x8e\x22\xb4\xc7\x80\xb7\x33\x4b\xd9\x43\x79\xd5\x01\x55\x06\x83\x86\x28\xde\xee\xa9\x36\xc8\x2b\x5e\x44\xbf\x71\x65\x32\x48\x33\x15\x36\xe0\x8e\xb1\xd1\xeb\x1c\x6a\xc8\x1b\x8d\xfe\xaa\xcc\xbf\x67\x04\x9e\x3d\xf8\x0e\xd6\x55\x3b\x47\xa8\x95\x73\x30\x04\xfb\xbb\x8a\x77\x3f\x5d\x37\x65\x69\xb0\x30\xfb\xa8\x13\xd7\xca\x00\x0e\x19\x00\x01\x3e\xa6\x9a\x55\x2e\x39\x8d\x79\x8d\xeb\x8e\xc4\xe0\xa5\xfa\xe8\xe4\xce\x4c\xd3\x8c\x0f\x89\xc5\x0b\x75\xd7\xa0\x7c\xa2\x9b\x03\x0c\x06\x88\x40\xbd\x70\xf1\xb1\x1c\x57\x76\x5b\x18\xde\xfa\x9b\x1a\xd4\x84\x39\xf2\xae\x5d\x7d\x59\x71\x0c\x38\x9d\x4c\xd1\x55\x16\xa3\xab\x15\xa4\x4b\x51\x4a\x03\xe5\x15\xad\xdc\x69\x40\xd5\xe1\x91\x22\xbd\x4a\x5e\x11\x47\xbc\x0e\xd6\xf0\xcb\x74\xe8\x9d\xa1\xd8\x07\xaa\x45\x08\xb6\x94\xcd\x1e\xa9\x25\x8b\x1c\x4f\x27\xfd\x78\xb5\x23\xf5\x1d\x5f\xca\x3b\xda\xe7\x8e\x5c\xd4\xb7\x3e\xb1\x30\x22\x60\x8c\x7e\xc8\xb7\x87\x90\x6c\x37\x79\xbd\x97\x3e\x41\x23\x10\x0b\x4e\x21\xb0\xba\x16\x81\xb5\xb1\x0f\x42\xab\x2a\xa8\xfc\x70\xb1\x00\xf3\x1f\xf2\x2d\xf6\x0a\xaa\x8c\x1c\x25\x42\xca\x61\x30\x53\x94\xc4\x60\x77\xc6\x92\x8d\xa8\x1c\x0a\x6a\x44\x21\x22\x55\x6c\x04\x56\x0c\x53\xe1\xec\xd3\x52\xe7\x8b\x98\x70\x8b\x01\xfb\x34\x07\xef\x3d\xf1\x9e\x5f\xfd\xbb\x77\x57\xc2\x9d\x62\xed\x9a\xe9\x46\x34\x49\x86\xb0\x8c\x4f\x99\x0f\x44\xa2\xee\xf5\xf4\x8f\x5c\xe4\xbd\x7b\xfb\xab\x6c\xf1\xd2\x4f\x4e\xcf\x0e\x43\x17\xb6\x9d\x4b\xbe\x0f\x5e\xe3\x74\x53\x69\x9a\x51\xa2\x3c\x5d\x60\xcf\xd0\x4f\xdb\x82\x2d\x99\x50\xb8\xcf\xa7\xe7\x1a\x09\x24\x97\xd4\x40\x27\x66\x18\xd1\x12\x12\xba\x56\xf9\x8a\x95\xd7\xef\x9b\x2b\xe0\xa8\x6b\xe2\x69\x84\xc4\x9e\x32\x06\x47\x26\x17\xcb\x0d\xad\x2d\xd8\x74\xb5\x95\x83\xab\x89\x38\x74\x38\x79\x78\x07\x79\x1c\x40\x85\x1b\x98\x02\x2e\x48\xf2\x6c\xd1\x94\x4d\x4d\x57\x8b\x55\x73\x73\x73\xbf\xa0\x9c\x57\x7c\xb1\xcd\xc5\x46\x5d\x4b\x0b\xd0\x82\x3f\x9b\xc0\xf3\x04\x2e\x5e\x05\x33\xa8\x40\xba\x38\x9a\xb0\xac\x84\xdf\x5c\x36\x8a\x26\x15\xe1\xbb\xdd\x43\x7b\x68\xe2\x69\x9a\xd5\x1a\xe2\x7e\x98\x2c\x0a\xf5\x36\xc1\x0f\x52\x44\x17\x16\x4a\x73\x52\x8d\xc2\x07\x2d\xc2\x5e\x35\x35\xa0\x47\x2b\x61\xd0\x47\x17\x72\x43\x37\x06\x38\x2e\x37\xf8\xfa\xdd\xc2\x08\xaf\x35\x02\xc7\x32\x58\x67\x34\xa8\xb3\x35\x4e\xcc\x48\xe5\x38\xd6\x38\x31\x23\x30\x3d\xe0\x46\x81\x48\xae\xdd\x38\x71\x85\xd7\x96\x99\xc8\x8c\xcf\xb9\x7b\x0b\x04\x6b\xdb\x74\xe9\xa2\xcf\x28\x78\x79\xfe\x6c\x4e\x23\x3d\xac\x11\x2d\xaf\x59\x49\x5f\x97\xeb\xca\xc0\x10\x9b\x44\xcc\x7b\x8a\x8d\xd6\x4d\x51\xc8\xe9\xea\x1b\x7c\x78\x8e\x70\xad\x80\x4c\x2c\x1a\x9f\x14\x26\x8a\xef\x74\xb9\x49\xde\xe2\x7d\x5d\x0e\x98\xfc\x90\xa3\x9a\x72\x06\xac\x94\x06\x7c\x60\x28\xac\x91\xaf\x56\x70\x97\x7e\x57\xf1\x57\x50\x39\x13\xb8\x76\xde\xf7\xcc\xcb\x43\xa8\x52\x3d\x25\x90\xa6\x94\x95\xd7\x27\xf9\x09\xec\xc1\x13\xdb\x05\x3f\x91\x6c\x37\x3c\xb3\x20\xfc\x8d\xa8\xd9\x8a\x9e\xe4\xe5\x89\x6a\xfe\x84\xd5\x90\x89\x10\xc4\x58\xba\x92\xeb\x66\x6c\x1b\xca\x0e\x20\xff\x50\x10\x09\x00\xdf\xe9\x31\x54\x46\x5c\xee\x9c\xe9\x71\x78\x0a\x35\x4c\x11\xe4\x17\x6a\xc1\x3a\xac\xbe\xef\x1e\x73\x94\xae\x15\x08\xa6\x41\x07\xc6\x9a\x0f\x5c\xbc\x1e\x99\xde\x55\x60\x3c\xc1\x3e\x88\x49\x98\xc5\x8d\x3a\xd0\x61\xf2\x6f\x48\x64\x74\xc6\xe7\x68\x24\x2a\xf9\xc7\xf0\x7c\x8e\xe5\x3f\xbf\x9e\x23\x00\x04\xba\xa9\x9a\xd2\x87\xed\x81\x3d\x66\xe1\x3c\x01\x08\xf5\xa1\x35\x81\x27\xc1\x17\xe4\xb4\xae\x8a\x5b\x15\xa6\xf6\x43\xbe\xcd\x04\xc2\x0d\x11\x03\x36\xca\xe5\x51\x6e\x88\xfc\xc3\xa6\x1e\x36\xa7\xab\x01\x81\xb2\x7b\xba\x14\x0a\xbc\xc0\x06\xc8\xe4\xf5\x6a\x52\x0e\x87\x18\xc6\xf6\xb6\x62\xa5\x98\x2c\xb1\xd9\xa3\x93\x65\x8b\x57\x84\x81\x31\x67\xd0\xcb\xea\xbd\x82\x3c\xc6\xc9\xb3\x64\xd8\xa8\xbe\x37\xc7\xd0\xb2\x26\xa4\x65\x95\x09\xef\x38\x3d\xc7\x37\x64\xcf\x46\x1f\xdc\xa4\x69\xb6\x05\x4f\x80\x78\x01\xa2\x33\xb1\xdf\x5a\xe2\x11\x9e\x28\x57\x72\xb2\x0e\x8f\x13\x92\x94\xe5\x36\xa4\x2c\xb7\x1d\xca\xb2\x69\x11\x24\xd8\xca\xeb\x5a\xd1\x97\x5b\x84\x0b\x72\xeb\x91\x15\xbc\x35\x59\x10\x23\x63\xbb\x51\x3e\x69\xf7\x07\x4f\x79\x22\xe5\x1c\xa6\x95\x08\x2d\x5e\x3b\x52\xb3\xe7\x5a\x82\x65\xbb\x26\x8d\x4f\xbf\xaf\x88\xdf\x8c\x7b\xbe\x38\xd8\xf5\x15\x74\xa7\x49\xe2\x75\x8f\x9e\x77\x37\x51\xfb\x28\x75\xb9\xc6\x0b\x84\xd5\xd0\xf4\x3a\x76\x06\xa6\x9f\x1e\x31\x2c\x7c\xf4\xb0\xb0\xfd\x54\x47\x8c\xae\x7d\xa4\xcc\x12\xdf\xeb\x76\x80\xd2\xac\xf0\x12\x17\xa8\x0b\x36\x94\x77\xd8\xb9\x88\x8b\xac\xff\x51\xc1\xcc\xa5\xb8\x92\x36\xa3\x28\x4d\x4f\x01\xe6\x6c\x6a\x1e\x0e\x93\x51\x32\x14\x3e\x84\x72\xed\x69\x0d\x42\x14\xa8\x07\x1b\x28\xaa\x07\xd1\x3d\xe8\xfd\xd3\xca\xe1\x14\xcb\xda\xca\x89\x49\x9b\x60\x75\x76\x4a\xf5\x10\x33\x5c\x82\x95\x5b\x13\x7b\xe4\x45\x61\x54\x4f\xe1\x48\xd5\xee\xaf\x13\x3c\x9b\x07\x5e\xce\x4f\x69\x23\x0a\xe8\xf2\xa4\x38\xf3\xc7\x23\x5d\x7d\xdb\xb5\x9f\x33\x7f\xad\x70\x1c\xa4\xd0\xef\xf3\xe6\x57\x79\xcd\x96\x09\x52\xa4\x60\xc0\x09\x1f\xd1\x4f\x82\x96\xab\xec\xc1\x38\xa1\xf6\x63\xeb\x93\xcc\x4c\x64\xa5\xf0\xd6\x4f\x5c\x83\x28\x31\x11\xbf\x25\xe9\xc8\x00\x4e\xd2\xb7\x79\x37\x4a\xcc\xe5\xf7\xf2\xc6\x56\x7e\x96\x6d\x6d\x2f\x6c\x05\xd8\xa6\x23\x32\x0b\x47\x0f\x02\xfe\x89\x0e\x95\x43\xc0\xa2\x96\x64\x4a\x34\x18\x5b\x0d\x9a\x14\x62\x06\xc7\x7e\xee\x10\xc8\xe6\x1f\x25\x8a\xc7\xe6\x7b\x48\xd6\x60\xb5\xaf\x6c\x33\x17\xd2\xad\x32\xfe\xd0\x27\x49\x6d\x70\x21\x9e\xb1\x72\x5d\xfd\xa2\x63\xa2\xd1\x82\x22\x07\xc3\x57\xdc\x7e\xbe\x7b\xd4\xd7\x08\x47\x5e\xd1\x2d\xa7\x4b\x79\x24\xce\xd6\x34\x17\x0d\xa7\x75\x54\x11\x9d\x8b\x03\x71\x46\x9a\xc0\x61\xad\xff\x59\xfc\xed\x71\xfc\xa3\xce\xa8\x9e\x4e\x7f\x8e\x86\x34\xfa\x62\x1b\xf5\xbd\xa1\xc5\xe4\x16\x83\x2e\xe7\x65\xf7\x79\x44\xfb\x43\x1d\x09\x27\x84\xdc\xb6\xde\xbe\xa7\xa3\x77\x6f\x7e\xfa\xf0\xea\xdd\xe2\xd5\x1f\x5e\xfd\xf8\x61\xf1\xf2\xd5\xdb\x77\xaf\x5e\x5c\x2a\xa8\x37\xfd\x6e\xf1\xe2\xcd\x8f\x3f\xbe\xd2\xf0\x6f\x9e\x3c\x7f\x13\xcf\x8b\x75\x6b\x3d\x41\x4e\xad\xf1\xff\xf9\x39\x4a\x53\x6a\xe8\xe9\x43\x2b\x99\x19\x08\x6d\xb5\xa0\x9e\x5a\xa3\x3c\x1b\xcf\x07\x0c\x32\xb9\x4f\xf9\x8c\xcd\x2d\xe2\xac\x42\xae\x98\x3c\x5b\xb0\xd5\xbf\xea\xbc\x50\x0c\xe2\x16\xbb\x85\x12\xb6\x4a\x8c\x54\xc7\xed\x1b\x87\xcc\x81\xfc\x34\x6b\x27\xbc\x6d\x63\x93\xbc\x51\x28\xba\xf8\x3a\x6e\x65\xa8\x9e\xec\x8b\xa7\xb3\xd8\x48\x09\x1d\x1c\xf0\x78\xd7\xf6\x50\xb9\xd0\x80\x2a\x16\x1a\xb0\xa8\xa9\xd3\x7f\xf6\xdd\xd6\xac\x89\xd3\xe8\x37\x24\xc7\xee\xca\xbf\xc9\x62\x81\xc0\x58\x39\x28\x2f\x40\x0d\x08\xac\x42\xdf\x99\x47\x27\x39\x05\xcd\xb4\x9f\x2f\x5a\x3f\x22\x54\xff\x31\xe0\x16\x5a\x31\xe3\x24\xa3\x44\xc8\x0f\xae\x5f\xee\x76\xb3\xb9\x03\x54\x64\xde\xf7\x52\xae\x73\x8b\x9f\xb7\xa3\x9f\xb7\x35\xa4\xcd\xf7\x6c\xd3\x66\x6f\x68\x58\x0d\x9b\xe3\x67\x38\xcc\x15\xba\x06\x05\x8d\x39\xf0\x49\x7c\x96\xcf\x5d\x92\x1d\x32\xbe\xa8\x1d\x44\xe5\x70\x58\x9b\x2c\x3a\x6c\x56\xcf\x07\x09\x98\x80\x13\xc8\xa8\x50\x2f\xab\xad\x24\xea\x8d\x64\xba\x44\x4d\x2a\xd4\xb6\xb0\x28\x39\xe8\xce\x7f\xff\x56\x63\xb2\xc4\x12\x60\x59\x5b\x66\xa7\x6c\x46\x55\xb3\x36\x2b\x2b\xd8\x9e\x85\x5a\x6c\x70\x0c\x64\xe5\x75\xac\xe5\x6e\xbb\xbd\xb2\x19\x1d\x35\xbc\x80\xbc\x81\x18\x34\x5a\xf9\x4d\xdd\xb5\xfd\x1f\x11\xf8\x0d\xed\x4f\x92\x21\x45\x41\x02\x09\x03\xd1\xfa\xd0\xfa\x1a\xd8\x7d\x16\x5b\x35\x69\x67\xa8\x92\xdf\x6e\x5a\xce\x56\xa3\xf7\x1f\x2e\x3f\xbc\x5a\xbc\xff\xf3\x0f\xdf\xbe\xf9\x7e\x3e\x39\xd8\x86\x8a\xb5\xc8\x09\x0f\xf7\xab\x52\x80\x88\x20\x1d\x81\x9e\xed\x2c\x9f\x4b\x51\xf7\x2e\xb0\x7e\xf8\x36\xf7\x06\x8d\x38\x5d\x35\xcb\x00\x6e\xda\x73\x75\xa3\x33\x31\x27\xcd\x4c\xcc\x31\x68\xaf\x74\xc4\x81\x26\x8e\xee\x2e\xff\x1d\x8d\x22\xf5\xd2\x3d\xc5\x0f\x27\x47\x36\xb3\x8f\x54\x04\x36\x4a\x36\xba\xa2\x9f\xdd\x6c\xb4\xaa\x6d\x78\xa1\xa5\x9a\xef\x2a\x1e\x6d\xd8\x8b\x31\x0a\x0e\xa5\x67\x50\x1b\x25\x43\xbb\xf1\x74\x8a\xf1\x03\x05\xb7\xbc\xda\xa2\xdd\xee\xa1\x55\xb1\x08\x35\x15\x8e\xb1\xdc\xe3\xfb\x22\x4b\xd2\x4f\x91\x18\xa6\x15\x85\x6d\xa6\x64\x6a\xed\x25\xa3\xdd\x97\xdc\xab\xc4\xbc\xd2\x09\x3b\xff\xc0\xe8\x5d\xad\x7d\xdb\xcd\x8d\xfe\x8e\x76\x13\x5c\x06\xd4\xcc\x5d\xe9\x03\xee\x83\x27\x45\x49\x95\x12\xb8\x47\xac\x54\x47\xc0\x74\xdf\x99\xaa\x32\xb8\xc1\x28\x68\x29\xc2\xa9\xdf\x28\xf3\x88\x6c\x71\x36\xd7\xd5\xf7\x4e\xd4\x4d\x53\xed\x13\xf3\xdb\x6f\x50\xbe\xd9\xf7\xfc\x51\x77\xae\x2f\x04\x56\x9e\xd1\x8e\x6b\x50\xc4\xa1\x09\xe2\x76\x37\xfb\x31\x8f\x38\xd2\xf1\x6c\x82\xf2\x1b\xba\x62\xb9\xf0\x28\xcc\xd7\x1a\xbe\xbd\x94\x0e\x0e\x0c\x57\x84\xcd\xc6\x73\x9c\x13\xa6\x35\xba\xe7\xe8\xa2\x37\xe7\x7d\x23\xb7\xf3\x9f\x55\xd6\x6c\x9d\x23\x1d\xae\xb3\xe6\x34\x16\xf5\xf7\x98\xc7\x0c\x54\x33\x30\xc9\xf5\x3e\x17\xb3\xaf\xfe\x99\xbd\x7e\x9f\xf6\x95\x3b\x59\x7c\x3d\xd0\x0c\xd6\x3d\x95\xb2\xbe\xaf\x94\xd5\xde\x5c\x9d\x52\x52\x04\x66\xe0\x9c\xc7\xd6\x19\x27\x95\xae\xd1\x97\x6f\x33\x86\xf0\x69\xa7\xb2\x49\x04\x18\x39\xf1\x89\xbc\x72\x5c\xb6\x86\xa9\x2b\x52\xe3\x64\xeb\x5d\xf2\x75\x82\x26\xb3\xf9\x45\xe7\xe6\x11\x71\xf0\x6b\xff\xea\x85\x16\x57\x36\x95\xc2\x77\x15\x37\xbc\x83\xe2\x57\xbd\x6b\x3d\xd7\xd7\xb8\x4b\xbc\xa0\x59\x5a\x8d\xed\x1e\xa4\x45\xf3\xb4\x3d\xd7\x54\x84\x89\x5f\xed\x9b\x9a\x0a\x4d\xd5\x43\x79\x04\x99\xec\xc1\xc5\x68\x45\xb7\xb4\x5c\xd1\x52\xfc\x8e\xde\xbf\x00\x41\x0c\x65\x0f\xd7\x54\x4c\xa0\x5d\x48\x43\x0e\xed\xb4\x08\xb5\xca\xbf\x63\xb5\x32\x79\x76\xa0\x99\x21\xa0\xd6\x61\xaa\xb0\xe9\x34\x3b\x03\xe9\xfa\x11\x6a\x51\xc6\x71\xa3\xc9\x9e\xfb\x20\x84\xb7\xca\x38\x14\xff\x22\x6b\xb2\xd4\x94\x58\xa5\x98\xf0\xa9\xf6\x7a\x04\xa6\x86\x37\xb7\x94\x73\xb6\xa2\xb5\xfc\x0a\xb0\x25\x81\xd5\x85\xbb\x0a\x3e\x17\x0a\x7c\xf1\xb0\xe8\x72\x2f\x6a\xb3\xbd\x2e\xd7\x95\xd6\xa6\x6f\xf5\xde\xbf\x72\x88\x8a\xf8\x86\xc8\x7a\x6f\x2f\xdf\x5d\xfe\xf0\xde\x54\x1c\x2c\x47\xc1\xbe\x88\xec\x00\xeb\x30\xb7\x1c\xdd\xe4\xdb\x19\x9d\x0f\x84\xd1\x1b\xdc\xf8\x24\x69\x99\x17\xcb\xa6\x80\x60\x92\xe5\x86\xca\x2b\x38\xd3\x86\xc4\x0e\xd3\x24\x14\x0b\x8b\x4d\x33\x92\x62\x6d\x0d\xcf\xc7\xe4\x65\x34\x6a\xca\x15\x5d\x56\xa0\x7b\xd2\x62\x23\xb8\xa9\x86\xe0\x3f\x14\x57\x36\x2d\xf5\x2d\xb9\xd3\x96\xb1\xee\xd2\xb8\x3a\xbe\x6c\xc5\xf1\xad\xd6\xa5\xc2\xe1\xee\xdd\x86\xda\x5b\xd9\x03\x43\xb3\x4a\xd7\x7a\x53\x35\xc5\xea\x9d\xdc\x66\x3c\x4d\xf5\x8d\x2a\x7f\x7c\xa0\x37\x5b\x39\x7f\xf0\xcf\x52\x68\x44\xeb\xa2\xa9\x37\x97\xf5\x7d\xb9\xf4\x92\x39\xc9\xcd\x24\xaf\x7c\xbb\xbd\x62\x0e\x07\x9d\x24\xbb\xfe\x77\xdc\xbf\xde\x3c\xba\xde\x5c\xaf\x37\x37\xeb\x3d\x28\xd5\xfe\x52\x8b\x8d\x80\xff\xb9\xa2\xeb\x8a\xd3\x1f\xa4\xc0\xd1\xbb\xaf\xd7\x92\x9c\xc7\xde\x70\xba\x62\xbc\x13\x6f\xd5\xe2\xda\x48\x91\xd6\x67\xbb\xc7\x2e\x69\x97\x17\xd5\xa8\x3d\x4e\xf4\x93\x90\xb5\x6f\xc2\xae\x2c\xb6\xa4\x49\xf1\x14\x63\x75\x6e\xf2\xad\x97\xbc\xb4\x01\xc1\x1c\x81\x64\x1f\xe0\x5b\x4a\x51\x6a\xb7\xab\xd3\x14\x4a\x98\xa4\xa5\x05\x69\x94\xa9\x2d\x7b\xf6\x7f\xb3\xd1\xff\x40\x20\xbb\x2b\x3a\x75\x4a\x48\x01\xf6\xad\x62\x76\x2e\xaf\x54\x3a\x6b\xe6\x72\xbf\x9e\x8e\x5b\xd9\x3a\x83\x6f\x65\x72\x94\x75\x65\x01\xaa\x93\xca\x68\x23\x18\x58\xec\x9e\x9f\x9b\xe4\x06\x46\xb2\x3f\x70\x96\x67\x61\xdd\xb3\xf3\xb9\x5d\x27\xff\xe6\x5d\xb3\x72\x05\x4b\x99\x31\x9c\x77\x99\xf4\x3d\x81\x34\x60\x5e\x84\x3a\x6a\x83\x59\x19\x2d\xeb\x5c\x5e\x14\x69\xe6\xd0\xf6\xd2\x33\x56\xba\x0b\xb7\xfb\x69\x6a\x51\x71\x9a\x20\x04\x95\xed\xa5\xeb\xc3\x1f\xf6\x0e\x60\x37\x82\xc5\x64\x4b\xd2\x20\x22\xf6\xfc\x53\xac\xc5\x63\x3d\xbc\xe0\x76\x8d\x67\x9d\xe9\x2b\x16\x20\x2f\x76\x5f\xd8\xe4\x69\xca\x3b\x97\x3a\xe8\x53\xbb\x0f\x8d\x5e\x59\xc4\xfd\x61\x3c\x4f\x20\x15\x44\xdf\xbd\xde\x8f\x1c\xa6\xc3\xf3\xb2\x30\xba\x80\xe6\x85\xec\x69\x89\x4e\x19\xc7\xa5\x6b\x1c\xca\xcb\x9a\x84\xed\xe1\xde\xa6\x4f\x12\xad\x27\x5a\xe9\x26\x88\xa2\x44\xf9\x55\xe1\x7f\xbf\x72\xfa\x06\x68\xe3\x84\x5a\x8c\xc2\xee\xe2\xeb\x3c\x20\x70\xf2\x4a\xe3\x99\x50\xa5\x69\xe5\x76\xe4\x6e\x27\x54\x62\x10\x7d\x34\xd4\xa6\xac\xbb\x29\xbd\x72\xeb\xa7\xd5\x2d\x39\xcb\xe7\xe6\xf8\x40\xcb\x3e\x31\x52\x54\xcd\xa7\xe6\xfd\x58\x52\x78\x6d\x22\xd8\xe5\xdf\x51\xd6\xb0\x24\x90\xec\xab\xc3\xc8\x0e\xca\xdd\xae\x9f\xf0\x46\xce\x69\xca\x09\x9d\x64\x5a\xcc\x13\xba\xf3\x28\x3b\x29\x08\x45\xc6\x8a\xb6\x50\x07\xad\xc4\x5c\x72\x56\x37\xca\xcf\x0c\x74\x28\x60\x1d\x63\x70\x0f\x2d\x47\x55\xb9\xa4\x1d\x1e\x22\x59\xd4\x54\xbc\x69\x44\x41\x45\xad\x25\x36\x56\x2f\xab\xb2\xa4\x4b\xfd\x38\xb6\xa3\x00\x65\xa3\x9f\x0b\x7f\x2a\xe4\xe0\x21\x54\x11\xaa\x02\x48\xa4\xb2\x0e\x4a\x21\x77\xea\xff\xf0\x23\x44\x9f\x5d\xe3\x64\x94\x20\xbd\x6f\x10\xc2\x42\xa5\xab\xcc\x99\xc5\x8f\xea\x8e\x0a\x9c\xf5\xbc\xa4\x27\x07\x37\xa8\xef\x90\x09\x14\x55\x03\xe7\x95\x7e\x1a\xee\x72\xc6\x34\xd1\xdd\xd3\x1b\xdc\xd6\x07\x56\xc7\xc9\xe8\x57\xe6\xc0\xa6\x29\xe4\x12\x72\x5f\x0d\xa2\x47\xf5\x34\xbd\xd1\x7b\x5f\x2c\x36\x34\xed\xc9\x23\x47\x38\xa8\xf4\xda\x2a\xeb\x4e\x25\x25\xb8\x4a\x83\x2e\x02\x02\xe0\x03\x18\x3c\x26\x95\xca\x13\x86\xe5\xeb\x89\x2a\x85\x55\xc5\x89\x69\x01\x83\x27\x45\x05\x4a\x49\xec\x51\x2c\x93\x67\x4a\x6f\x3e\xf3\x1b\x28\xcc\xc4\x80\x9a\x1c\xb7\x9f\x50\xeb\xa9\x0e\x14\x86\xc8\xa1\xa0\xff\x88\x46\x24\x78\xd4\xf7\x8f\xf1\x16\x6e\xe0\x02\x6b\x5d\xe6\x9c\x6f\xc6\x69\x9a\x75\xd4\x17\xc7\x0e\x5d\xb2\x43\x0d\x2b\x56\x76\xdb\xfc\x40\x45\xbe\xca\x45\x1e\xf2\x39\x55\x14\xf8\xf1\xca\xd1\xf2\x9e\xc3\x6a\x68\x0b\x57\xe2\xdf\xa9\xc9\x71\xd5\x4d\xe4\x63\xf6\x41\xa9\xb2\x19\x82\x9b\xb5\xf2\xcb\x23\xc4\x26\xbf\x12\xb3\x72\xc8\x8d\xc4\xdb\x66\x20\xb6\x1c\xd2\x61\x7a\xcc\x05\x3e\x3b\x77\x21\x2f\x69\xaa\x79\x75\x67\xc4\x5f\x84\xae\xff\x9e\xad\xa8\x7b\xad\x80\x7b\x8e\x4b\x52\x54\x42\x72\xdf\x12\xb6\x5e\x9a\xaa\x7f\x23\x87\x1e\x37\xa4\x34\x1b\x72\x4d\x4a\xef\x6a\xc5\x85\x09\x7f\x92\x85\x1a\x47\x10\xa6\x59\x45\xa8\x47\x09\x73\x42\x3b\xa4\xb2\x42\x93\x9c\x54\x21\xfc\x84\xe9\xcf\x2e\xff\x3a\x4d\xb3\x35\x11\x53\xda\x13\xdc\x97\xf1\x8b\xbc\x42\x93\xbd\x6f\x76\xbb\x7e\x33\xde\x18\x11\xee\x51\xcb\xb5\x5a\xd0\x15\x59\x0f\xa4\x6c\x18\x6d\x77\x85\x5c\xc2\xc8\x62\x5a\x10\x1a\xdc\x52\x93\x35\x6c\x6c\xc3\x00\x15\xda\x8b\x09\x6f\xbd\xe6\xec\x29\x4e\x86\xb9\xfd\xce\x75\x9a\x66\x1b\x22\xb7\x28\x4a\xd3\x9a\x10\xb2\x09\x28\x94\x4d\xe1\x88\x35\x31\x59\x2a\x32\x52\x1b\x0a\xd2\x68\xd2\xe1\x53\x8d\xb5\x26\x10\x45\x97\x70\x9c\x12\xb2\x9d\x6e\xb3\x25\x9a\xd0\xd1\x42\x54\xdb\xef\xe9\x2d\x2d\xe4\x71\xb6\x82\xd2\xd2\x47\x23\xbd\x53\x9c\x3e\xf7\xc3\xc5\x24\x5f\xd3\x7d\xb0\xdb\x69\xbd\x3f\x23\x1d\x49\x47\x71\xdb\x61\xe9\x19\x73\x29\xb6\xfb\xaf\xec\x99\xab\x3a\xf2\x86\xad\x22\x3b\xf0\x2c\xe7\xbb\x5d\xd6\x7b\x46\x1e\x5a\x1c\xb0\xfe\xbd\x12\x38\xe8\x1a\xc9\x43\x1a\xd5\x85\xd7\x46\x82\x53\x07\xb4\xd7\x0e\x42\xfd\x67\x6d\x66\x8f\x3c\x86\x38\x8f\xc8\x34\xe5\x08\xeb\xd0\xfa\xe8\x4c\x59\x2a\x45\x70\xed\x8c\x50\x8d\x91\x8a\x20\x33\xf0\x92\x14\xa0\x22\x80\x04\xb5\x83\x7c\xa6\x7e\xcd\xc9\x72\x5a\x99\xbf\x27\xaf\x32\x9b\x91\x43\xc9\xe9\x86\xbf\xca\xdd\xe7\x7d\xe5\x59\x27\x82\x3c\xf5\x19\x45\x53\x80\x73\xbc\x44\x19\xd5\x1a\x4b\x84\x26\x1e\x25\x7a\x63\xad\x7c\xd4\xb2\x95\xce\xe5\xc5\x39\x00\x0e\x22\xce\x4b\x2a\xd1\xf5\x84\x2b\x27\x25\x2b\x36\xb5\xd7\x3a\x80\xe4\x45\x91\xd7\x75\xf6\xc0\x54\x24\x94\xf6\x27\x51\xa6\xec\x6b\x2f\x50\xba\xf6\xac\xd9\xa6\x6a\x56\x8d\x2e\x61\x80\x1a\x2d\x06\x57\x2e\xc6\xaf\x9b\x79\xf7\x60\x9e\x85\x87\x16\xfb\x54\x4c\xa7\x59\x00\x8b\xa4\xfa\x3b\xa4\x2f\xea\x19\x88\x56\x13\xf8\xa6\x26\xf4\x4d\xab\xba\x7a\x77\x65\x54\xa6\xe8\x30\x95\x3d\xa1\x5a\xdf\x22\xa5\xf1\xcc\xb2\xd8\x58\x0f\x52\x96\x9b\xf8\xbe\xe1\x46\x55\x11\xba\x1f\x29\xaa\x60\x59\x7a\x23\x23\x97\x92\xd4\xcb\x45\x57\x42\x61\xc6\x95\x21\xd3\x1f\x37\xd5\x6a\xb0\xbe\x9e\x0f\xc6\x46\x6d\x92\xe9\x16\xe1\xc5\xcf\xdb\xee\x22\x74\xd1\x29\xa9\x86\x3c\xc2\xf9\x51\xda\xda\x3a\x2e\x35\x35\xa4\x8e\x93\xea\x1c\xa9\x64\xd3\xfb\x6c\x4d\x09\xc2\xcb\x20\xda\xb6\xf0\xa2\x6d\x55\x06\xe8\x5b\xc8\x61\xec\xda\x68\x3a\x0d\x00\xc9\xa3\x11\x95\x48\x29\x4f\x36\x23\x0f\xfe\xe1\x9b\x9c\x8e\xb1\xdc\xb3\xf2\x5f\x30\xef\xca\x3f\xf2\x5a\xee\x69\x47\xee\xac\x82\x84\x76\xe5\x26\x83\x5b\x9e\x93\x87\xf6\x22\x20\x6b\x39\xa6\xb3\x6a\x8e\xf9\xac\x9a\x23\x5c\xce\xaa\x39\xc9\x31\x93\xff\x9c\x8e\x6d\xf6\xeb\x7a\x7f\xf6\xf5\x1a\xa5\xe9\x29\x9b\xd5\x73\x63\xe3\xee\xb6\xdf\x60\x3e\xab\xe7\x98\xca\x22\xb8\x9c\xd5\x73\xd2\xb4\x56\x7e\xce\x40\xe7\x65\x63\xef\x9c\x0c\xed\x93\xc7\x6c\x8d\x70\xa1\x7d\x2a\x96\xe0\x5f\x1c\xca\xcc\x35\xce\x11\xa6\x44\xdf\x97\x2b\x32\x9b\xe3\x1b\xb9\x82\xb7\x64\xe6\xae\x82\xfb\xfd\x6b\x73\x8f\xd2\x34\xd1\x99\x1c\xcd\xc3\xe4\x94\x90\xfb\x34\x4d\x14\x8a\x21\xfc\x32\x2e\xae\x74\x76\x3f\xc7\x57\xe4\x5a\x59\xd9\x25\x1b\xa3\xee\xeb\x85\x61\x96\xbc\x8d\x24\x09\xd5\x55\x9a\x66\x0b\xc8\xdb\x2a\xeb\xdf\x91\xeb\x51\x5e\xeb\xed\x19\xb7\xfc\x66\xf7\x08\xbf\x09\xf6\xcd\x3d\x1a\xbc\x21\xaf\xb2\x37\xaa\x89\xf7\xe4\x7a\x24\xb7\x02\x68\xcd\x2b\xf8\xf3\xcd\x1a\x65\x6f\x10\xfe\x44\xf6\x35\x9b\xbd\xc1\x77\xf8\x3d\xc2\x97\x24\x1f\x26\x93\x64\x78\x8f\x3f\x92\x87\x3d\xfa\xd8\x49\xd8\x35\x0e\xb6\xe1\x1b\x6c\x5b\x0f\x2b\x7d\xf2\x5e\x98\x27\xb0\x61\xdf\x63\x65\xbb\x9d\xdc\x61\x79\xaf\x4c\xee\x71\xdf\x3d\x61\x72\xd9\xa5\x86\x39\x56\xca\x03\x38\x78\xa0\xe9\x9c\x2c\x54\x9e\x69\x4d\x3d\xd5\x21\xb8\x6a\x07\x37\xb3\xfb\x39\xb9\x99\xdd\xc9\xff\x5d\xce\xc9\x47\xbc\x52\x52\xf2\x47\x84\x6f\xd5\x5f\xf7\xe6\xe6\x7a\xf8\x79\x5b\x4f\x56\xf8\x26\xdf\x4e\x6e\x70\xa0\x21\x9f\xdc\x62\xa5\xcd\x9f\x3c\x18\xc3\xea\xa4\x2f\x0a\x96\xe4\x66\x46\xe7\xca\x46\x6b\x7d\x22\xb4\xdb\xff\xa3\x95\x0c\xef\xd1\xab\x8b\x23\x3e\x1c\x25\xe8\xbf\x42\x33\xc2\xe7\xb6\xdd\xf7\xe3\x28\x25\x75\x6e\x11\xc2\x35\xf5\x89\xfe\x17\xc5\xd8\x38\x5e\x1b\xb5\xdb\x9d\x66\x63\x5c\x8f\x58\xfd\x81\xd6\x72\xa0\x28\xd3\xd4\xaa\xbc\xc8\xca\x8e\xb9\x4f\x8e\x58\xab\x1c\x61\x8d\x24\x55\x30\xde\x5b\x16\x6b\x5e\x9b\xe6\x72\x98\x16\xc0\x47\x78\xfa\xdc\x93\x00\xde\x02\x14\xe5\xba\xe0\xc4\x0f\xe3\xb5\x6a\xee\x49\x57\xe0\x3b\xe8\x49\x94\xa0\xd1\x4d\xbe\xc5\x55\x70\x37\x50\x64\x8c\xae\xfe\x53\x8e\x8c\x6f\x51\xe5\xfb\x16\x69\x43\x20\x9b\x55\xb3\x7c\x0e\x23\xaf\xb5\x86\xd4\xf6\x14\xf7\xaa\xc8\x6a\x84\x13\x6d\x97\x05\x81\x22\x41\x9d\x85\xf7\x03\x60\xad\xde\x4b\xd9\x71\xd1\xe0\x8a\xd3\xfc\xa3\xc9\x17\x7b\x3a\x6e\xf1\x9a\x95\x1d\x2a\xb2\x67\x41\xd8\x3a\xeb\xba\x96\xf7\xbd\xc0\x5c\x02\x66\x67\x07\x61\xb8\x22\x87\x34\xe5\xe6\x6e\x37\x9c\x70\x4d\xf2\xd1\x22\xe4\x83\xb3\x4a\x5e\xe2\xf2\xf1\x56\xe1\xaa\xd5\x90\x7f\xe4\x22\x6e\x6f\xcb\x71\xe5\xf4\x34\x4b\x32\xbe\x58\x3e\xaf\x25\xc3\xec\xd6\x7f\x69\xee\x6d\x78\x3e\x5b\xce\xf1\x96\xac\xd5\x90\xf0\x0d\xd9\xfa\xf2\xec\x2d\x59\x6b\xb7\x14\xb8\x5b\xd2\xd4\xfc\xc4\xf7\x26\x61\xd7\xb5\x27\x40\x37\x10\x37\x6a\xca\xa0\x69\x76\xef\xed\x9f\x1b\xbc\x56\x9e\x2b\xf8\x9a\x6c\xa3\x04\xfc\x1e\xdb\xe6\xd7\x40\xf3\x11\x9a\xdc\x4e\x5d\xde\x7e\x79\x31\xdd\xce\x51\x9a\x66\xf7\x64\x1b\xf7\xe7\xc9\xae\x23\x6d\x64\xd7\x64\x3d\x8a\xd3\x74\x7c\x4f\x5e\x65\xeb\x50\x06\x40\xf8\x66\x8f\x87\xca\x76\x9f\x7b\xca\xf5\x29\x09\xba\x50\x0d\x3d\x74\xc5\xba\x37\x65\x71\x9f\xa6\xa7\xe7\xa7\x84\xe8\x60\xb7\x2b\xb2\xdd\xb3\xd3\xd7\x48\x45\x6b\xe8\xae\xaf\xb0\x03\x23\x18\x2c\xa6\x8c\x9c\x8e\x27\x90\xbb\x64\x01\x56\x9e\xd3\x73\x6d\x16\xae\xfd\xa5\x96\x57\x5b\x01\x5c\x4e\x77\x6c\x44\xae\x53\x7c\x49\x08\x21\xd7\x69\x7a\xca\x0f\xc2\xee\xec\x76\x2a\x86\x2f\xd3\x2e\xb4\xd7\xf8\x96\xd5\x4c\x67\xbc\xfb\x48\xef\x27\xb7\xbb\x9d\xf9\x10\x2d\x6a\x4f\x41\x1d\xa0\xcf\xf8\x3e\xdb\x22\x66\x69\xca\x23\xd0\x0b\x6a\xfb\x1e\xb0\xef\x7a\xf2\xa1\xde\xc6\x8a\x4c\x0d\xf4\x4f\x6f\x47\xef\x73\x3d\xc2\x89\xfe\xa8\xe6\x93\xca\xab\xc3\x3f\x72\xa3\x65\x41\x73\x9e\xa9\x5b\x05\x1f\xf2\xe9\xbd\xc7\x4d\xf0\xf6\x3d\xa4\x87\x3e\x50\x9e\x3c\x54\xe5\xa4\xab\x58\x3c\x84\x2d\xdd\xb6\x4e\x94\xbb\xc7\x0f\xce\x04\x36\x89\x9a\xcc\x9c\x19\xea\x29\x26\x11\x65\x40\x71\xd6\x35\x8a\x26\x02\x2e\x54\xe0\xc8\x6a\x2a\xbe\xe3\xf9\x0d\xbd\xab\xf8\x47\x90\x44\x51\x76\x6d\x59\x37\xcf\xc7\xff\xfd\x93\x1d\xeb\x9f\x08\xda\xf6\x45\xdc\xe8\x9f\xe2\x2c\xaf\x23\xa9\x0e\x60\xb5\x3c\x39\x3f\xc7\x31\x29\xa5\x9f\xe4\x48\xff\xd4\x44\xc9\x4f\xcb\xaa\xbc\xd0\xc8\xb3\x5e\x18\xc0\xe7\x27\x1e\xf6\x9c\xda\xd1\xc3\x5b\x2d\xb2\xaa\x8d\xaa\x32\xb2\xbc\x2f\xaa\x3b\xcf\xcf\x8b\xdd\x38\x28\xe3\xb2\x12\x6c\x7d\x6f\x98\x6c\x75\x73\x67\x49\xc3\x0b\xe3\x30\x08\xba\xc6\x00\x12\x43\x7b\xfe\x39\x5c\x0d\xa4\xdc\x6f\x9c\x72\x3d\xf0\x0d\xc4\xc9\x8a\xad\x5c\xef\x09\x72\xba\x9d\x7b\xc3\x1a\x1c\xae\x7f\xc7\x8a\xc2\x6b\x00\x73\xaf\x89\xeb\x8e\x8f\xe6\x67\xc4\x2c\xe8\x7e\x40\x7d\x43\x2e\xe3\xa8\x00\x57\x44\xa9\xad\x3c\xa5\x50\xc1\x96\x14\x2f\xbe\x98\xef\xbd\x05\x6e\x52\x11\xf6\xa2\x87\x27\xd2\x79\x0e\x80\x8f\x91\xa2\xe6\x99\xe4\xf1\x01\x8e\x43\xaf\x88\xca\x42\x98\xe9\xa8\x20\x8f\x2a\x03\xc3\xfe\x9e\x0a\xf9\x50\x21\xb9\xac\x20\x9e\x3a\x78\x61\x02\x43\x55\xf4\x6d\xbd\xaf\x51\x17\x3f\xfa\xed\xbd\x1a\x4d\xbc\xa0\xbf\x9f\xcc\x80\xbd\x0d\x65\xe7\x00\xde\xaa\xbf\x6f\x68\x43\x57\xee\xf6\xa4\x82\x72\xb5\x51\x6b\xb9\x8b\xa3\x28\x49\x8f\x46\x2a\xb0\x92\xa9\xf5\xe2\xbf\x8d\x18\x98\x20\xf8\xe1\x3a\x92\x14\x00\x69\xaf\x3f\x95\x1c\xab\xec\x29\x8a\xe2\x2b\xe3\x81\x40\x96\xde\x2e\x69\xfc\x4c\xdb\x4f\xc5\x81\x6a\x70\xa9\x66\xb8\x24\x4d\x7f\x86\x4b\x39\xb2\x3e\x0e\x94\x46\x7d\xc0\x9c\x54\xb8\x24\x2c\xf2\xc1\x66\x62\x3e\x28\xc1\x42\xc5\x46\x8b\x6b\x2a\x5e\x05\x1f\x3e\x2b\x91\x94\xf0\x46\x41\xcc\xab\xc9\x18\xe4\xec\xf8\xb8\x71\xd6\xfd\x1c\x34\x80\xf5\x8c\x5a\x55\x7c\x63\x1e\x90\xd3\x31\x3e\xb5\x0a\x67\x1e\x28\x10\x55\x5b\x9d\xd0\x45\x17\x55\x98\xe3\xc2\x44\x31\x22\x14\x76\xd7\x02\x13\x1d\x84\xa2\x80\xd7\x68\x9a\x9e\x02\xb7\x1f\x89\x46\x42\x59\x83\x0e\xc2\x09\x2c\x9b\x5a\x54\x37\x0e\x4f\xe0\x44\x71\x58\x27\x55\xe9\xe1\x07\x28\x7c\x01\x8d\x22\xa0\x01\x68\x15\x8e\x80\x99\x78\x8b\xe1\xbb\xd8\x7e\x63\x3e\x20\xd1\x8f\x42\x95\xac\x6c\x0d\x7f\x5d\xf0\x84\xdd\x6e\xd3\x0b\xbd\x92\x9d\x35\x7d\x0c\x69\x11\x50\x5b\x5f\x5d\x4a\x35\x46\x75\x16\x64\xc5\x60\x38\xf1\x40\xe5\xa4\x20\x8c\x90\x6c\x3a\x20\xea\xc1\x3c\xf2\x2e\xeb\xc6\xc2\xc2\xb8\xf3\x1b\x70\x7e\x96\xa3\x90\xca\xf7\xec\xa7\x91\x56\xc3\x1a\xb8\xfb\xc0\xa2\x84\x2d\x43\x12\xdf\x47\x37\x33\x96\x09\x48\x73\x94\x31\x64\xdf\xc8\xba\xf0\x59\x1d\xa2\x69\x30\x55\x76\x18\xf8\xd4\xd4\x8e\xf8\xc2\x41\x65\xff\x6e\xd5\xd9\xc5\xe9\x48\x54\xc1\x7d\xea\x7f\xa1\x6e\x77\x7d\x5c\xd4\xa5\xe7\xcf\xfe\x92\x29\x42\x1e\x77\x02\xa3\xa3\xbb\xbc\xbe\xbc\x82\x3d\x2a\x25\x11\x66\x7e\x4c\xb3\x31\xbe\x19\x15\xd5\x35\xfc\x46\x99\x40\x93\xcc\x01\xb2\x9e\x9e\x5b\x98\x01\x3a\x82\x3f\xb0\xc0\x5a\x46\x40\x98\x8d\x16\xac\x86\x4e\x95\x59\x64\x95\xe9\x42\x68\x0a\xfe\xa0\x1a\x68\xdc\xc4\x22\x04\x73\xc8\x20\xae\x5b\x95\x96\x3d\xe6\xb2\xfb\xcc\x3d\x83\xd9\x2d\xf4\x38\xdc\x42\xbf\xd0\x41\x6b\x7d\xc7\x74\xd6\xad\xf0\x3d\xcd\x43\x7c\x4f\xbf\x60\x2c\xd9\x86\xb5\x3b\xd9\x77\x07\x0e\x8f\x2b\x74\xc4\x01\x02\x2d\x35\x2c\x82\x3d\xa2\x00\x26\xd9\xb4\x99\xcd\x6a\x8e\xf0\x32\x10\x37\x8c\x98\x01\xf7\x72\x83\xd7\xd6\xa0\x51\x0b\xde\x48\xca\x39\x5a\xd5\x85\x01\x73\xaf\x77\xbb\xd9\xf5\x1c\xaf\xac\x0b\x29\x2b\x56\x2f\xdf\x7f\x9f\xa1\xc1\xca\x20\x86\xf8\xba\x18\x87\x1b\x82\x3b\x88\x05\xa7\x63\x5c\x69\xd5\x22\xf8\xc7\xd7\x35\xe5\xe0\xee\x75\x3a\x6e\x83\xf0\x5f\xa7\x14\x1c\x5f\xd0\xe7\x6b\xa3\x2b\xa1\xc3\x21\x5a\x03\x0c\x5e\x5e\x14\x3a\x0e\x00\x21\x0c\xfe\xc4\xd9\x2a\x00\xb9\xc1\xde\x40\xf7\x80\xa2\x2c\x36\xb9\xe6\xe2\xbe\xcd\x6b\xba\x7a\xa7\x7c\xbb\x80\x9b\x55\xf7\x32\x8f\xdf\xcb\x8c\x3c\xc4\x11\x29\x26\x14\x77\x60\x4a\x26\x91\x88\xaa\xc8\xdd\x74\x76\x93\x6f\xc1\xcd\xaf\xc5\x3d\x24\x86\x4e\x6e\xf4\x18\x63\x34\xa3\x80\x1a\x13\x7f\x43\x38\x6a\x2d\x1a\xa1\xfc\xda\x36\xed\x3f\x30\x14\x98\x99\x94\x18\x87\xb9\xa3\x7e\x7e\x8c\x9f\x55\xe1\xb7\xa6\x80\x0a\x7f\xda\xb3\xa8\x51\xb6\xa8\xb7\xb4\xe0\xc6\x42\x43\x80\x59\xe1\x31\x50\x14\xfb\x1b\x6d\xb4\x58\xa8\x3b\x9c\xdf\x2f\x16\xc6\x35\x8f\x8f\x6e\xfa\xbd\xbb\x6b\xd3\xc2\x5d\x29\x8f\x51\x91\x73\x20\x96\xac\xbc\x7e\x9c\x71\x93\x6c\x1e\xcb\x0b\x40\x2e\xb5\xea\x66\x70\x3a\x55\xcc\x1f\xa8\x90\xc3\xb8\xf9\xfd\xbc\x9f\x97\x59\xe9\xd6\xcb\xc1\x63\x12\x2f\x64\xca\xe5\x57\xa1\x72\x01\xc9\x52\x2c\x85\xfe\xd5\x5a\x7f\x57\xd5\x75\x7c\x87\xeb\xe4\x33\x50\xee\x7b\xdd\x73\x86\x7a\xab\xda\x1d\x9a\x41\xee\xf5\x4a\xc4\xd2\xef\x22\x03\xf8\x12\xf0\xbf\xf2\xf4\xf8\x09\x27\xc2\x08\x10\xea\xcd\x10\x88\x17\x3e\x1d\xeb\x90\x5c\xeb\x38\xe5\xcf\xc5\xc6\xe3\xb2\x5a\x7b\x7c\xb1\xf2\x3a\x4d\x3b\xcf\xe8\xca\xd8\x67\x85\x49\x4a\x73\x8c\xff\x9e\xdc\xfe\x5a\x33\xec\xbc\x37\xc6\x17\x95\x8b\xbb\xad\x86\x43\xf4\x40\x09\x9f\x55\x5a\x45\x6c\x15\xb9\x39\xd9\xf4\xa3\xa8\x35\x6a\x1f\x36\xde\x2f\xda\x23\x22\x37\xcd\x35\xc6\x11\xaf\x20\x3f\x64\x0c\x0b\x9c\xcf\x9a\x39\x1a\x30\x52\x8c\x0a\xa6\x89\x46\x2d\x6f\x84\xbb\xf2\xbd\xf2\xb1\x02\xaf\x50\x30\x9d\x03\x76\x8a\xe7\x62\xa3\x3c\x99\x4e\x09\xe9\x17\x57\x2e\x36\xbb\x5d\x56\x7b\x2f\x51\x0b\x5e\xa4\x0e\x82\xb3\x26\x7f\x83\x31\x40\x1e\x4a\x52\xb7\x00\x83\x65\x8d\x28\xa2\xda\x16\xc6\xcb\x06\xf5\x1f\x8d\xec\xe7\x52\x59\x93\x18\x1a\x58\xab\xc8\x32\x4e\x35\xd7\x64\x19\x10\xbe\x5b\x46\xef\x26\x67\x6a\xac\x89\xf6\x22\x08\xfa\x20\x6b\x23\xf8\x18\x05\xc4\xe1\x11\x60\xe7\xb2\x74\xe6\x51\x89\x33\x03\xf3\x34\x81\x15\x43\x92\x5f\x7c\x01\xed\xbe\xab\x2a\xf0\x23\x8d\x4d\xb9\x55\x41\xd1\xf1\x44\x28\x06\xef\x4e\xa1\xa2\x3d\xfb\x97\x6c\x34\x44\xd3\x67\x68\x36\x9e\x87\xc8\xcf\x3d\x14\x77\xdb\x9c\xf1\x35\xef\x16\xd9\x1f\xaf\xd9\xd9\xd0\x33\x3a\xcf\x04\xe4\x00\xb7\xa4\xed\x5d\xc6\xb1\x76\x46\x3f\x2a\x08\xf2\x8b\x60\xda\xaf\x1f\xc7\xb4\x7f\x1a\x96\xfd\xfa\x89\xa8\xe6\x79\x88\x6a\xde\xfd\x00\x1d\x20\xfb\xfc\xc8\x60\xcb\xaf\x83\x28\x7f\xd1\xc1\x92\xb7\xa8\xc1\x8f\x05\x51\x76\x31\xe6\xf1\xdb\x47\x83\x20\x7f\x39\xce\x7e\x1d\x01\x95\xfb\x4a\x48\xfb\x8a\xf4\xee\x5d\x9d\x47\x10\xf7\x83\x6f\x6e\xf3\xdc\xba\xcc\x75\x95\xfa\xe8\x3d\x4c\x7e\x1a\x0d\x3b\xb5\x57\x86\xa9\xa0\xb3\xda\x85\xe0\xc2\x07\xe3\xd4\x7d\x8d\x54\x17\x94\xd8\xc8\x91\x35\x98\x95\xff\x79\x3b\x4e\x8b\x32\x7b\x93\x18\xd4\x8f\x83\x7f\x77\x17\x2c\x40\x01\xd7\xd1\xe1\x91\xac\x6c\x41\xa5\xd0\x5a\xec\x85\xfa\x4a\x71\xf6\x51\x6f\xef\x80\x66\x5b\x76\x24\xb8\x26\x6c\x7e\xfd\xc8\x1d\xe2\xc3\x1a\x1d\xb2\xef\x78\xd1\xee\x99\x49\x24\x6a\xc2\xfa\x02\x55\xa6\x65\x0f\x84\x72\xfd\xb1\x40\x89\xf0\x73\x26\xe6\x08\x24\x3e\xde\x94\x28\x93\x3f\x67\x7c\x8e\x13\x3d\x42\x75\xe4\x8e\x42\xe1\xe8\x70\xde\x92\xc9\x17\x71\xb5\xf9\x62\xcd\x7c\xb0\x73\x47\x5a\x8e\x87\xe6\x70\x16\xb7\x7c\xb5\xd2\x9f\x76\x6f\xb3\x7d\x7f\x7c\x8f\xf4\x64\x01\x64\x79\x74\x2a\xad\xcd\xee\xf2\xa8\xb2\xd6\x70\x8d\x8e\xb5\x7d\x62\x56\x51\xb6\x57\x04\xe9\x87\xa5\xa4\xa9\x05\x43\x65\x96\xcb\xb0\x29\x11\x42\x5c\x91\x53\x42\x2a\xa4\x59\xff\x68\x2e\xd8\xca\x63\x96\x72\xf2\x10\x66\xad\x9b\xd0\x76\x70\xa8\xf2\xd2\x48\x6f\x86\x39\xca\x11\x6a\x5b\x1d\x61\x28\xf9\x42\x1d\x12\xe4\x8f\x3d\x53\xf1\x6e\xdc\xc6\xbb\x99\x04\x0c\x58\x20\x1c\xc3\x22\xd6\xd9\xef\xd2\xd4\xfc\x95\xed\x29\x67\xd3\xd2\xca\xa2\xf6\x87\x91\xbf\x63\x8e\xc9\x7b\x39\x9c\xc1\x07\xe3\x94\x29\x02\xe3\x55\x89\x2b\x1d\x1b\xb9\xa2\x05\x15\xf4\x44\xcc\xe8\x1c\x8b\x59\xa5\xad\xd9\x73\xa2\x43\xba\xa2\x2e\x0c\x25\x36\xe5\xb4\xdb\x9a\x5e\x7b\x3f\x14\xdd\x78\x94\x0e\x04\x88\xcb\x71\xd4\x92\x12\x83\x33\xa7\xf1\x7c\x93\x34\xb2\xdd\x3f\xcd\xb8\x9a\x4c\xc5\xab\xd3\x29\x9d\x24\xb9\x24\xe4\xca\xa7\xf8\xb7\xef\xdf\xfc\x38\x52\x3b\x8e\xad\x25\xe3\x35\x49\x12\x95\xdd\x72\x8f\x6f\x77\xa7\xf1\x3d\xeb\x06\xca\xc8\x32\x4d\xb3\x70\xd9\x4a\xed\x75\xad\xd9\xa9\x3d\x5e\x1b\x5c\x65\xd9\x91\xcb\x56\x6a\xaf\x0d\x33\xdb\xc7\x61\x5b\x62\xf3\xbd\x52\x72\xb7\x9a\x71\x22\x78\x43\x21\x87\xf5\x24\x29\x9b\x9b\x2b\xe5\xb4\x28\xa6\x3f\xc2\xdf\x19\x45\x2a\xbe\xf8\xcd\x3a\x43\xc1\x4a\xc1\x17\xb8\x44\x19\xac\xd8\x36\xe7\xb5\xbc\x6a\xd0\x44\xad\xd5\x96\x37\x25\xdd\x97\x94\x68\x3f\x5b\xdd\x71\xed\xa1\x5e\x4c\xd5\x09\xe4\x45\xd3\x9e\x5e\x1c\x62\xd6\xcb\xf9\x80\xa5\x29\xdb\xef\xa9\x21\x66\xe5\x3c\x4d\xed\x92\x97\xf3\x56\xb3\xf9\x7b\xb5\xd1\x36\x23\x06\xae\x88\xf2\xaf\x5c\x43\xe6\x69\x65\xfe\x07\x3b\x16\x18\x46\xb2\xe8\x3d\x8e\x73\xf2\xa0\xd3\xd9\x2e\xb6\xbc\x5a\xd2\x5a\xb3\x1b\xae\x3f\x3f\x2a\xa0\x92\x42\x27\xe6\xa0\x52\x6c\x3c\x7f\x5c\xee\xa5\xbb\xed\xe6\xc7\x50\x75\x8c\xe2\xa4\x44\xc6\x16\x96\xb1\xbd\xac\x45\x8f\xdd\x64\x3e\x0a\x48\x37\x79\x45\xde\xce\x91\x27\xc5\xd4\x5a\x8a\xa9\xf5\x67\x7d\x6c\x52\x91\xf5\xec\xf8\x02\xee\xf5\xa9\x30\x1f\xf7\xa1\x35\xfe\x7b\x9e\x4f\x57\x1e\xd7\x24\x74\xdb\x98\xdd\x8c\x7e\xff\xd3\xab\x77\x7f\x5e\x74\xf0\x10\x02\x47\xe6\x1c\x55\xe0\x8a\x55\xa3\xdd\x2e\x63\xb3\x7a\x4e\xf2\x59\x3d\x37\x52\xef\xba\x29\x8a\xfb\xf7\xcb\x6a\xdb\xcb\x04\x62\x33\x83\xef\x2f\xc2\x3a\x1f\x93\x63\xa6\x02\xf1\x23\xdf\x72\x6f\x32\x96\x8f\x96\x86\x98\x31\x6d\xee\x57\x90\x0a\xa5\xac\x1b\x29\x4b\xfb\xd7\x70\x9d\x31\xcc\xfd\x0d\x61\x38\xa8\x58\x1c\x0a\x0b\xe2\x50\x10\x2e\xb5\x1f\xf2\xc1\xf3\xda\xad\x05\xd3\xb9\xa6\xe2\xf7\x6f\x7f\xa0\x7e\xf0\x9c\x27\x8b\x2b\xf5\x8c\x8b\x42\x0b\x94\x57\xe0\x7d\xa4\xa0\x12\xc2\x90\xa0\x58\x4b\x16\x28\x86\xce\xc4\xd9\xb9\xca\x51\x62\x43\x9d\xb5\x21\x5c\x0b\xc0\x2e\x20\xd9\x86\x08\x3b\xd0\x37\x29\x6e\x92\xd3\x31\x86\xb0\x9e\x82\xcc\xe6\x58\x79\xff\x09\x70\xf9\x63\x6b\x7b\x7e\xec\xc4\x32\x3a\x5b\xce\x91\x13\x04\xd6\x64\x7c\xb1\x7e\xce\x7c\x6f\xc1\xf5\x70\x88\x24\x0f\xf2\xf3\xb6\x9e\xad\xe7\xb8\x50\x4e\x5f\x15\x60\x53\xb8\x3d\x50\x63\x26\xc9\x95\x36\x0d\xe4\x44\xab\x52\x57\x04\xbc\x91\x0b\xf0\x46\xae\xad\x52\x38\xb7\x9c\xb3\x9b\x1d\x59\x21\xbc\x52\xac\x5e\x6c\xe7\xf5\xc4\x1f\x4b\x34\x71\xb0\x99\xfc\xcf\x58\x91\x31\x40\x09\x19\xdd\xda\xf3\xfc\x62\x38\xac\xe4\x42\x94\xbd\x85\x60\xb3\x6a\x8e\x90\x43\xb7\xb3\xfa\x34\xfd\x47\x41\xc6\x78\x29\x25\x7f\xb7\x32\xc5\xf3\xe5\xc5\x70\x58\xa0\xac\x21\x10\x34\x28\x57\xa8\x98\x23\x1b\x72\xc4\xd3\xb4\x86\x1f\xbb\x5d\x1d\x41\xab\xb3\x45\xfa\xaf\x64\x05\xe7\x74\x09\x85\xb4\x43\x65\x9a\x36\xa7\x84\xc4\xea\x00\x50\x63\xec\xc5\x9c\xf0\x59\x33\xc7\xfa\x86\x90\x7f\xab\x8d\x79\xe8\xbc\xed\xcb\xac\xa3\x9c\x7a\x08\x8d\xb9\xaf\xfa\x38\x1f\x0a\x1d\xb0\xf2\xd1\x01\x01\x2e\xa8\xbb\xea\x95\xa4\x49\x76\xd5\x1b\x22\xd7\x99\xfb\x6b\xdc\x3c\x2f\x20\xac\x0b\xbe\x19\xbc\x91\x73\xd1\x19\x94\x61\x95\x45\x9a\x96\x7a\x95\xcb\x3d\xab\x0c\x45\x62\xab\x5c\x7a\xab\x0c\x85\xf4\x2a\x33\x79\xc0\xe2\x6b\x2c\xf9\x99\xd8\x1a\x8b\x19\xb3\x6b\x2c\xff\xee\xaa\x27\xd7\x31\xd0\x93\x32\x0a\x7a\x52\x6a\xd0\x13\xaa\x7d\xef\xd0\x60\x5f\xa7\x06\xa7\x28\x5b\x62\xb5\x06\x2a\xee\xc8\x0b\x66\x53\xec\xe2\x72\x43\x57\x8d\xb5\x1e\xf5\xed\xc8\x46\xf2\x7a\xd4\xdf\x6a\x51\xf7\xdf\x11\x90\x03\x4d\x1f\x6f\x40\x1e\xd4\x8e\x61\xae\x64\xad\xfc\xae\x70\xa2\x9d\x74\xc2\x3e\x12\x0b\xe3\x16\x7d\xdd\x87\xcc\x7c\xc2\x5d\xab\xe0\xb7\x6c\x24\x8d\x2f\xaa\x86\xf5\xa3\x0f\x63\x97\x6f\x88\xd1\x33\x70\x7e\x66\x7e\xb2\x26\x85\x1b\x6d\xed\xce\x63\x87\x76\xef\x80\x6b\xf6\xaf\x77\x5f\xef\x10\x59\x78\xb8\x72\x8a\x91\x6a\xc4\x70\x6b\x91\x72\x87\xbe\x9d\x64\x98\x61\x28\x37\x39\xff\x08\xa6\xef\xcb\x5a\x1b\xbf\x23\x92\x79\xe0\x60\xe5\x4b\xe7\xa1\xd9\x7c\xbf\xfe\x26\x6c\xc0\x64\x49\x92\x2b\x51\xd0\xdc\x54\xef\x9a\xfd\xe3\xbd\xab\xb3\x66\xea\xf7\x7c\x7d\xa2\x17\x2d\x5c\xac\x1c\xd2\x17\x9b\x44\x0c\x00\xa4\xed\xe2\x30\x2d\x57\xd6\xd5\xb3\x54\x33\x31\xdf\xed\x32\xf9\x4f\xcc\x49\xca\x78\x11\x55\x4a\xc7\x02\x66\xc5\xbc\x0b\x77\xe6\x4b\xfd\x17\x59\x4e\x74\xac\xfe\x8b\x0d\x2b\x56\x1d\x4f\x25\x81\x1f\x4c\xb8\xe8\xe4\x74\xec\x67\x8a\x60\x2d\x42\xa3\xab\xaa\x82\x10\x10\xd5\x1b\xc9\x5d\xd0\x2a\xae\xda\x8c\xf5\x43\xfb\xef\xba\x29\xd2\xa8\xcd\xff\x71\xc1\xbf\x21\xe3\x8b\xb3\x33\x17\x0b\x39\xe3\x73\xa7\xfe\x0e\xb8\x0e\xa6\x11\xf4\x45\xc6\x70\x69\xb4\xee\x2d\x60\x88\xbd\x22\x0f\x77\xac\x28\xb4\x01\x54\xc7\x7a\x77\xee\x6c\xbd\x0f\x23\xe4\x48\x83\x55\x80\xa9\xb1\x57\xcd\xa1\x65\xc8\xaf\x35\x73\x43\x9f\x0f\xe4\xbc\xb2\xd0\x5e\x2d\x2f\x1a\xe7\x5e\x5f\x91\xf7\x19\x35\x4e\x1f\x28\x08\x91\x29\x63\xbb\x1e\x9c\xad\xf6\x6a\xc7\xa5\x68\x82\xf0\xe9\x79\xab\xbe\xf6\x1b\xbf\x69\x6d\xc3\xcc\x77\xbb\xec\x73\x5a\xce\x55\xcb\x60\xa2\x8c\x82\xb2\x60\x46\x66\xf3\x41\xb9\x4f\xe5\xd2\x7f\xa6\x0c\xb7\x1f\x36\xbc\xba\x2b\xa7\xc1\xaf\x09\x1d\x08\x29\x54\x02\x2b\x27\x10\xb8\xcc\x95\xa3\x1b\x5a\xd7\xf9\x35\xb5\x2f\xec\x13\xc8\x35\x26\xf2\xe5\x47\xef\x15\xfc\x8e\x20\x04\x94\xae\x0c\x42\x17\x19\x27\xcb\xaa\xac\xab\x82\x22\xd5\xbf\x96\xce\x40\x64\x90\x7c\x32\x2c\xd1\xc9\xdd\x86\x15\xf4\x44\x0b\x5e\xac\xbc\x56\xce\x68\x93\x93\x64\x68\x32\xe0\x81\x40\xda\x62\x4d\x43\x23\x41\x62\x3a\x4e\xb6\x7c\x64\x7f\x28\xd4\x2b\xb8\xdf\x83\xfd\x61\x53\x91\x04\x3b\x84\x1f\xd8\x08\xdd\x6d\xe0\x5a\x30\x67\x71\x9a\x1d\xa8\x9f\xc3\xc7\x9e\x88\xd1\x96\xdd\x56\xe2\x37\x2e\x07\x61\x8b\x50\xdb\x0e\xba\x01\xe4\xb7\x06\x9a\xb0\x0c\xc1\x2b\x58\x00\x2a\x51\x75\x61\x05\x86\xc9\xc2\xcb\x6b\xf0\x29\xe3\x0e\x64\x03\x33\xf5\x12\x57\x68\x5a\x05\xf9\xfb\xdf\xff\xa2\x2e\x71\x4e\xba\x51\xec\xd5\x54\x4c\x2a\x15\xc5\x1e\x1f\x4a\xb7\x02\x9b\x8a\x09\x53\x15\x70\x8e\xa6\x79\x30\xbc\x4f\xbd\xbc\x9e\xce\x0e\x50\x22\x18\x90\xfc\xad\xfc\x34\x72\x6d\x00\x74\x88\x12\x1c\x60\x2f\x7a\x25\x8c\xf7\xa7\x4b\x03\xca\xd2\xb4\x72\xbd\x5e\x06\xb2\xfe\xa9\x0a\xed\xb1\xf8\x27\xce\xfb\xb2\xb6\x8c\x46\xf2\x22\x2f\x7f\x25\x4e\x34\x0b\x70\xa2\xc2\xef\x4e\x7e\x95\x0c\xf9\x30\xf9\xd5\xc9\x15\x5d\xe6\x4d\x4d\x4f\xee\xab\x86\x9f\xe4\xdb\xed\xc9\x26\xaf\x65\xf1\x35\x2b\x59\xbd\xa1\xab\x13\xa7\xd3\x90\x07\x82\x95\xa2\x3a\x61\xa2\x3e\x59\x33\x5e\x0b\x75\x3e\x46\x27\x1f\x2a\xd7\x7c\x69\x7a\xa8\xca\x93\x15\x84\x18\xc2\xcc\x54\xd1\xfa\x64\xd5\x70\xe5\x0c\xea\xda\xc5\xb2\xf3\x93\x65\x5e\x9e\x2c\xf3\xa2\x38\xf9\x2f\xb0\x0f\x65\xe8\xbf\x64\x0b\x62\x43\x4f\xfe\xcb\x6d\xd8\xff\x3a\x51\xd4\xe5\x64\x9b\xd7\xb5\x1c\x5c\xa5\x4a\x80\x49\xf4\x99\x07\xc0\xf7\xcc\x21\xee\xfd\xd7\xc9\xa6\xaa\x3e\xd6\xa3\x04\xb5\x1d\x09\xf5\x1c\x37\xfe\xfd\xd3\xc8\xfb\xa7\x39\x3b\x93\x4c\x7e\x45\x32\x06\x48\x75\xda\x27\x4f\x52\x13\x1d\xb8\xe8\xfd\x39\xe3\x73\xf5\x19\x40\xf5\x6d\x35\x3e\xf6\x46\x82\x80\x97\x4c\x53\x66\x05\x5a\xc3\x5c\xd8\x4b\x84\x34\x97\x60\x44\x1e\x48\xe9\xb9\x55\xee\x12\xaf\xf4\x2d\x5e\xa0\xc2\x37\xd1\x74\xec\x80\x26\x9d\xd7\x69\x9e\xa6\xa7\x02\x45\xb7\xc1\x8f\x95\xd8\xc8\xa5\xd7\xec\x0b\x2c\x5c\xb8\x19\x46\x27\xaf\xd7\xf0\x2d\x56\x6c\xa5\x8b\x79\xa5\x30\xf0\x4e\x27\x30\x19\xf8\x5a\x57\xf4\x04\xf6\xce\xea\xe4\xea\xfe\x44\x4d\x58\xb6\x2f\x78\x43\x4f\xd6\xbc\xba\xf1\xf6\x82\xce\x6d\x0a\x0a\x21\x2f\x07\x0a\x86\x06\xa0\x92\x1b\x8c\xa8\x4e\xae\x9a\xab\xab\x82\x8e\xfc\x20\x87\x8f\x3d\x79\x9b\xd0\x3e\x93\x2c\x17\x48\x9b\x1b\x65\x61\xc7\x3d\x18\x41\xbc\xd4\xb2\x8c\x8e\x05\x65\xd1\x58\xd0\x7c\x3e\xa8\x47\xac\xd6\x2c\xc4\x6a\x5a\xcd\x6a\x60\xd9\xe6\xc4\x84\x21\x4d\xfc\x47\x56\xfb\x93\x59\x0c\x46\xe4\xa2\xee\xed\x0c\xde\xfa\x1c\xe0\xa3\x5e\x3a\xf2\x9b\x03\x87\xd3\xc9\x9a\xb0\xd0\x55\xdf\xe6\x42\x5e\x99\x92\x4f\x9c\x09\x2f\x29\x6d\xa9\xf0\x17\x54\x1e\xcd\x98\xd7\xd5\x45\x60\x0f\xf1\x13\xa7\x6a\x85\x5a\xef\xa5\xcb\xc5\x8a\xab\x78\x09\xb0\xa8\x68\xd8\xd4\xa6\x4f\xaa\x63\xa0\x0f\x3e\xa5\x45\x83\x26\x4d\xf3\xd1\xe5\xdb\xb7\x8b\x17\x1f\xde\x7d\xbf\xd0\x2e\xca\x6f\xdf\xbd\x79\xfb\x3e\x4d\xb3\x60\x90\xac\x3c\x69\x76\xbb\x78\x7c\x4a\xd3\x99\x4f\x17\xca\xc3\x62\x00\x3a\xa7\xba\x30\x71\x6c\xab\xa7\x17\x0b\xe7\x41\xdd\xe6\x51\x64\x81\x8e\x1b\x9d\xb7\xa0\xc7\x0f\xd1\xcb\x88\x7b\xf4\x38\xbd\x3a\x3e\x4c\xd0\x3b\xff\x62\xed\x48\xa5\x10\x2f\x12\xca\xa3\x34\x22\x6b\x06\x96\xfe\xdd\x4e\xc4\x02\x9c\xa4\xc0\xb7\x4f\x20\xdd\xf2\xea\x86\xd5\x94\xd0\xd1\x12\x50\x43\x83\x58\x4a\xf0\x7d\xeb\xfb\x40\x9b\xe0\x02\x3a\x10\x11\x41\x4d\x4a\x60\x08\x27\xee\xae\x50\x01\x08\x3e\x0d\xf9\xd0\xbd\xb1\x69\xcf\x0a\x22\x50\x08\xf0\xa1\xf9\xf8\x08\xc2\x47\x99\x55\x80\xe3\xa1\x14\x8e\xb3\x6a\xee\xaf\xf0\x0b\x07\xb7\xe3\x4c\xe1\x64\x46\xe7\x17\xdc\x02\x97\x5c\x18\x81\x82\x9b\x50\x7a\x83\xc9\x68\x5d\xdf\x08\x21\xc2\xe9\x57\xd5\x98\x0d\xe0\x57\x1d\x0e\x94\x21\xae\xf1\x0a\x3b\x43\xf9\x41\xab\xd3\xad\xa9\xe5\x41\x75\x30\x29\x35\x22\x55\x3d\x89\x05\xdb\xdc\xe5\xf5\x4f\x35\x5d\x4d\x4e\xcf\x8d\xb6\x34\x63\x1a\x90\x6c\x2a\x67\xa7\xfe\x44\x13\x01\xc8\x43\xc6\x49\xdb\x8c\x0d\x5b\x58\xb2\x0a\x4d\x28\xa9\xf0\x83\x73\xf3\x9b\x50\x6c\x5c\xf3\x26\x95\x37\xd0\xbf\x85\x62\x96\xec\xc4\x03\xff\x73\x38\xa0\xe0\xf0\xab\xfb\x19\xdd\xe4\xac\xb4\x33\x52\xe9\x0d\xb9\xcf\x15\x2a\xcc\x2d\xe5\x32\xd8\xda\x09\x3f\xb4\x2d\x16\xa8\x5d\x84\x00\x46\x37\x71\xaf\x65\x10\x16\x43\x9f\xf0\xac\xf7\xcc\xe6\x86\x0d\x5a\xf4\x4b\x4c\x7a\x75\x5a\x63\x3f\xf0\x1f\xea\xf4\x96\xea\x4d\x8b\x1d\xb1\x9f\x44\xa0\x24\x71\x09\xa8\x2b\x66\x05\x59\x2f\xff\xb8\x9f\xa4\x72\x38\x04\x50\x19\x29\x55\xcb\x7b\x45\xf2\x2e\xd6\xdd\xd8\xe2\x10\x38\x77\xd0\xf3\x8b\xca\xd5\x05\x77\x50\xf9\x4e\x10\x3a\xab\xd4\x2d\xe3\xa5\x46\xc5\x9c\x5c\x29\xcf\xf4\x12\xd9\x1d\x9e\xa6\xa7\x2c\xe3\x58\xa0\x0b\xe4\x76\x78\x09\xf3\x73\x98\x12\x1a\xac\xca\xe6\x7f\x71\x17\xe7\xe8\x6f\x15\x2b\xa1\x75\xc0\x28\x32\x51\xc6\xcc\x01\x44\x05\xe1\x2f\x93\x5b\x1c\xc6\xad\x4c\xee\xb1\x36\xf6\x83\x3f\xbe\x73\x59\xd8\xe4\xf5\x26\xc1\x0d\x2f\x54\x32\xf1\x03\xa0\x47\x87\x3c\x85\x3d\x67\x09\x87\x41\x8a\x6c\x54\x88\xb9\x6d\x01\xf2\x1c\xf7\xa2\x6e\xec\x74\x36\xfb\xc3\xb1\xd5\x75\xfa\x9a\x2c\xbc\x20\xe6\xd7\x4f\x0f\x62\x36\x31\xb2\x8f\x24\x09\x3b\x26\xe6\xf7\x1f\x95\x3a\xda\xf7\xd9\x34\x7b\x9b\x06\xba\x1b\x18\xac\x76\x00\xa7\x5e\x18\x0c\x27\xc2\xff\xf5\xdb\x5a\x05\x42\xf2\xd6\x7e\x18\x17\x7a\xba\xdf\xad\x0d\x8c\x0b\x36\xa7\x6f\xaf\xb9\x81\xf5\xcd\xd6\x9c\x7c\xcf\xd1\xad\xd4\x40\x89\xd8\x22\xe8\x9e\x9e\x83\x40\x9f\xa6\x3e\x26\x09\x73\x28\x56\x9e\x8a\x2e\xc0\xbf\x66\xa1\x8f\x9f\x37\xef\xa8\xc5\x5a\x76\x5d\x1b\x1e\x6d\x03\x88\x36\xaf\x7e\x6e\xf2\x02\x70\x9b\x02\x00\x3d\x0f\x7a\xa4\x93\x4e\xbd\x7c\xca\x1e\x13\x9e\xee\xfc\x73\x12\xd9\xe9\x60\xf2\x27\xa5\x76\xdc\x1f\x59\x7f\x20\x22\xfe\xd1\x08\xf1\x5f\xbe\x97\xbb\xee\xbb\x71\x38\x69\xc9\xf3\x18\x84\xbe\x40\x45\x24\x08\x60\x66\x77\x38\x8d\x10\xc5\x6c\x4a\x47\xdb\x6a\x9b\xa1\x51\x88\x7d\x67\x60\xe5\xec\xc5\x37\xa1\x16\x9e\x47\x79\x0b\x4f\x68\x00\x97\x27\xda\x16\x92\x41\xf6\x9c\x2d\xa2\xea\xea\x1e\x20\x43\xff\xd1\xac\xda\x8b\x2b\x23\xc7\xd2\xc1\x4d\xb5\x7b\xba\x27\xba\xc8\x61\x75\x80\x64\x22\x56\x17\x9d\x6b\xec\xbd\x2c\x48\x57\x5d\xf0\x57\x79\x2d\x46\x84\x22\x16\x11\xbb\x38\x5d\x56\xd7\x25\xfb\x3b\xe5\xda\xe1\x9d\xd7\x2a\xb7\x26\x56\xf1\x10\xc2\x5d\x9e\x8e\x20\x48\xa6\x0f\x20\x83\x54\xc3\xf5\xa0\x76\xb1\x05\x9c\xe4\x80\xd6\xa1\x32\xa6\xc9\x43\xa7\x51\x91\x5d\xe2\x35\x70\x3a\x69\x3b\x73\x20\x70\x10\xfb\xb6\x39\xd2\xf5\x6b\xea\x00\xe0\x86\xc9\xd6\x92\x04\x77\xe2\x38\xec\xb8\x1b\x88\xe5\xc0\x05\x91\x44\xa2\x41\x78\xe9\xa3\xcd\x4a\xbe\xa0\x48\xd3\x42\x32\x92\xa5\xc1\xe4\x19\x43\xd2\x34\x48\x88\xfd\x66\x9d\x15\x68\xda\x8c\xea\xe6\xaa\x16\x3c\x2b\x5c\xfe\xf2\x49\x33\x58\x2a\xa2\x05\xd7\x64\x39\x2b\xe6\x78\x6d\xe0\xe3\xfc\x17\xb8\x41\x03\x36\x24\xc9\x64\x02\x69\xa0\x27\xc9\x70\x69\x89\xf2\x90\x59\xac\xd9\x1c\x27\x67\x09\x92\x4b\x71\x18\xa7\x2e\xee\x3e\x4c\x1e\x5a\x1c\xe1\x7a\x1a\x60\x7a\xbc\x54\x80\x42\x76\xe0\xbb\xef\x93\x02\x64\x92\x6e\x0e\x9b\x88\xf7\x94\xca\x5b\xa8\x02\xd7\x79\xa8\x90\xcc\x49\xe5\x23\x69\x4a\x7a\xef\x41\xb8\xf7\x34\xd4\x4a\x05\x5c\x64\xcc\x0f\x9a\x2e\x9d\xbe\xe6\x2d\xaf\xae\x79\x7e\x73\x93\x0b\xb6\xf4\xb4\x65\xf5\xc9\xd5\xfd\xc9\x4f\xef\xbe\x3f\x59\xe6\x65\x59\x89\x93\x2b\x7a\x02\x3a\x98\x3b\x26\x36\xcc\x0b\xa4\x1e\x9d\xbc\x2d\x68\x5e\xc3\x5b\x50\xaf\xa8\xc0\xea\x52\xd9\xa2\x6b\x41\x73\x08\xaa\x66\x24\x07\x05\x27\x83\x70\x04\xc2\x5a\x7f\x89\xfc\x2b\x64\x1f\x42\x3b\x66\x64\x0c\x5b\x90\xef\x07\xfd\xe3\x48\xc9\x42\x31\xd6\xb3\x1c\x0e\x5b\x5b\x5d\x20\xd1\xaf\x9b\xa6\x6c\x38\xb4\xec\x3f\x21\x84\xb5\xda\xca\xf5\xec\xaf\xa3\x67\xd7\x8e\xff\xad\xfb\xc6\x25\x8f\x47\x2d\xe5\xf1\x50\x00\xe1\x3c\x02\x10\xce\x35\x55\x1e\x63\x36\x3c\x47\x8e\xfb\x74\x8a\x18\x73\x14\x2a\x84\x00\xbe\x6b\x50\x92\x2a\xa2\xe7\x69\xc2\x05\xa2\x81\x9c\x16\xb3\x53\x64\x2a\xa9\xf3\xac\x9c\x93\x87\x5c\x01\xee\xb5\xb8\x24\x1c\x19\x25\x6f\x19\x11\x3f\x35\xcd\x53\xeb\x50\xce\xaa\xf9\xa0\xd7\x74\x9e\xa6\x59\x0e\x4d\xe6\x2d\xe4\x69\x98\x55\xf3\xdd\xce\x74\xa1\x31\xfd\x34\xa0\x62\xab\x9c\x3c\x9d\x2b\x55\x8e\xb0\x2c\x4f\xb8\x27\xa1\x15\x5e\x76\xeb\x88\xa3\x70\x96\x80\x67\x23\xc4\xe6\xc8\x3f\x66\xe3\x39\x3a\x90\x15\x57\x41\xdf\x3c\xd3\x19\xf7\x0f\x73\x00\xa6\xb0\xc7\x79\x68\x33\xd3\x63\xa5\x6f\xd8\x27\x56\xd6\xcf\x6c\xb8\xe4\x96\x57\x9f\xee\x8f\xad\xb5\xac\x4a\x91\xb3\x92\xf2\x23\xab\x2d\xab\xed\x31\x85\x6e\x24\xdb\xf6\x68\x39\x56\x9f\x51\x79\xf0\x8e\x1d\xac\x72\x17\x3d\x7a\x66\x72\x10\x92\x32\x1d\xbb\xde\x0e\xc5\xf6\xc8\x0a\x30\x9e\x23\x17\x2e\xf8\xa6\x4f\xab\xb3\xac\x38\x5d\x3c\x6d\x33\x28\x45\xb3\xb6\xe3\x1f\x04\x66\x0a\x97\x6c\x7b\x7f\xd4\x82\xe9\xf2\xb4\x6c\x6e\xe8\x71\x4b\xac\x6b\x9c\x3d\x69\x73\x56\x00\x59\xf6\x94\xf6\x6f\xd4\x5d\xb4\x78\xfa\xc8\x94\x02\x6f\xa1\x17\x4e\xa3\x72\x1c\xbd\x10\x4a\x60\x3f\xb6\xb8\x56\x0d\x1e\xb9\x0b\xe8\x27\xf1\x8c\xd7\xb7\x7b\x30\xae\xbc\x82\x92\x4e\x9d\x55\xeb\xa3\x1a\xb4\x0e\xff\x4f\x40\x93\xc2\xb7\xf8\x1e\x5f\xe3\x2b\xbc\xc0\x77\xf8\x15\x7e\xf3\x4b\xe5\x89\xbd\x15\xde\xe8\xbd\xfe\xe0\x3e\xe3\xe4\x74\x8c\xa3\x8a\xe4\x13\x61\xf8\x89\xf6\x50\x93\x16\x40\xed\x89\x6d\x77\xea\x1d\xec\x43\x9b\x39\xef\xdf\xca\xcf\xfa\x83\xfc\xd4\x47\x76\xc3\x8f\x9a\xc2\x0b\x43\xaa\x9f\xdc\x7e\x79\x54\xfb\x8a\xb4\x1f\xd5\x20\x3b\xb2\x41\x7d\x0d\x1c\xd5\x66\x75\x54\x9b\xac\x7e\xa5\x6e\x8c\xa3\xda\xcc\x8f\x6a\xf3\x52\x5d\x2b\x47\xb5\x58\x1f\xd5\xe2\x8f\xb9\x94\x1d\x9f\xd6\xae\x57\xe7\xf0\x68\x8f\x6e\xf1\xf2\x60\x3b\x3f\x28\x52\xf9\xb4\x41\xfa\x95\x0e\xb6\xce\xe9\x4d\x75\x4b\x2f\x8f\x3d\x68\xf5\xc8\x54\x38\xd8\x6a\x53\xb2\x9f\xbf\x3d\x7e\xb4\xaa\xf8\x23\xfb\xe9\x69\x0b\xa0\xcb\x3f\x72\x50\x1d\xe7\x71\x54\xb3\xcd\x91\x9b\xca\xb2\x27\x47\xb5\x5a\x1c\xbf\xf9\xdf\xaa\x8b\xe8\xa8\x66\x97\x47\x35\xab\x5e\x3c\xa5\xdd\xf5\x91\x44\x90\xd3\x27\x91\xf0\xd5\x51\xcd\xf6\x20\x36\x8f\x6e\xbd\x57\xf3\xf0\x6a\x43\xfd\xdf\x18\xb6\xec\xa8\x3e\x36\x47\x2e\x8c\xe1\xdd\x8e\x6a\x74\x7b\x54\xa3\xaf\x3c\x36\xea\xa8\x66\x6f\x8e\x6a\x76\xf1\xe4\x1b\xec\xf6\xb8\x76\xc1\x37\xa1\x14\xdf\x55\xc7\xae\xed\xed\xc8\x55\x79\x64\x3f\x3b\x56\xf4\xa8\x96\xef\x8f\x1a\xb1\xa6\xa7\x4f\x5e\xe7\xeb\xa3\x5a\x57\x4a\x4f\xb5\xe7\xde\x1b\x8e\xf6\xa8\xf6\xaf\x8e\xdb\x1e\x86\xed\x3d\xaa\xcd\x85\xd7\xe6\x7e\x66\xf1\xad\xe2\x8d\x9f\xbc\x43\xee\x8e\x1a\xf1\xbb\xf7\x7f\x78\x7b\x64\x83\xaf\x8e\x6a\xb0\x2a\x41\x23\xaf\x63\x9d\x8e\x6e\x3a\xac\x76\xb0\x07\x15\x95\x7a\x64\xcb\x6f\x74\x10\x6b\xdb\xa2\x47\xd5\x12\x81\xa4\x7e\xbc\x72\xe2\x58\x29\xa3\x2f\x86\x7f\x45\xe3\x9a\x67\x44\xab\x70\xae\x62\x8a\x09\x21\xb9\x31\x57\x8e\x07\x9e\xf1\xc9\xc4\xf9\x02\xd4\x7b\xf0\x44\x61\x50\x26\xc6\x67\x3d\x21\x84\xd4\x69\x6a\xd9\x73\x13\x30\x5d\x21\xc8\x08\xe9\x01\xaa\xe9\x75\x74\x29\x01\x22\x2f\x61\x64\xbd\xf6\x9b\x48\xfb\x39\x4a\xd3\xfc\x40\xfb\x67\xe7\xff\x23\xfa\x5a\xe1\xd1\x2b\xaf\x3a\x96\x95\xb3\x7a\x8e\x4b\x85\x42\xa4\x14\x7c\x85\x19\x5f\x31\xa8\xef\x98\x58\x6e\xb2\x1a\x3d\x2c\xf3\x9a\xda\x10\xde\x09\xfc\xd2\x71\xbb\x13\xc3\xed\xab\x91\xc3\x2b\xad\x14\xf3\x5e\x29\x8c\x4f\xfa\xc2\x0c\x01\xe1\xb1\x2e\xab\xd4\x35\x13\x87\x8f\x6f\xa2\x94\xf0\xda\x82\x15\xe1\x15\xf9\x21\x17\x9b\xd1\x0d\x2b\xb3\x25\x5e\x23\xbc\x21\xe3\x8b\xcd\xf3\xd5\xc5\xc6\xe8\x2d\xb7\x84\x66\xd5\x6c\x33\xc7\xf9\x6c\xe3\xa6\xb2\x35\x53\xd9\xb6\x76\x28\xb2\xbe\xea\xd9\x2e\xf0\xa4\x2b\x61\xb9\x4f\x38\xad\x82\x0f\x33\x19\xab\xaa\xab\x5c\xd0\x60\x7a\xd7\x54\x7c\x60\x37\x34\x43\x38\x77\x7f\xa3\x81\x6e\xcf\x94\x1c\xb7\xad\x36\xed\x42\x1a\x14\xb9\x83\x57\x93\x31\xe4\x20\x9a\x9c\x63\xbd\xbc\x93\x5f\x63\xb5\xb4\x93\x7f\xc3\x6a\x21\x27\xff\x8e\x61\x95\x26\xff\x1f\x56\x0a\x9e\xc9\x7f\x60\x8b\x69\xf4\x3f\xad\x77\xfa\xe4\x7f\x61\x40\x36\x9d\xfc\x6f\x2c\xc7\x37\x39\x1f\xb7\x3d\x9f\x08\xad\x0f\x3e\xb3\x50\xc2\xfc\x9b\x31\x3a\xcb\xf8\xf3\xf1\x11\x2a\x4a\xa7\xda\x8b\x10\x82\x0e\x62\xf7\x97\x54\x5a\x5a\x8d\x53\x44\x0d\xf1\xe5\xa9\x83\x35\xaf\xc5\x72\xab\xea\x84\xf3\xce\xc3\x01\x8c\xe0\xdd\x24\x64\x69\x5a\x76\xb7\x12\x45\xce\x29\x42\xce\x27\x73\x56\x18\x8f\x2c\xc9\x29\x31\x0d\x77\xd0\xeb\x5e\xd8\xee\x1d\x74\xab\x52\x7c\x63\x95\x0f\x1e\x30\xbd\x98\xd5\xcf\x0b\x84\xbe\x21\x63\x4b\x6d\x66\xf5\x7c\xc0\xfd\x28\x03\xb6\xce\xc2\x81\x0b\x65\x9e\xc8\x89\x71\x47\x41\x98\x83\xdb\x56\xa5\xea\xe4\x08\x92\x61\x68\x9b\xc1\xd9\x59\xfd\x0d\x19\x5f\xa0\x7c\x56\xcf\x09\xcd\xe4\x3f\x7a\xf4\xad\x71\xc3\xed\xad\x82\x40\x48\xb6\x0e\x0b\xa0\xca\x62\x2e\xa9\xa4\x6e\xde\xfa\xef\x8a\x13\xb3\xbf\xab\xf5\xc9\xcb\x5c\x50\x94\x83\x83\x9e\xfc\x33\x13\xde\x09\xeb\x57\x57\x56\x3e\x30\x36\x40\x66\xee\x1c\x8c\x61\x5e\x29\x2c\x90\xde\x25\xce\x07\x22\xb4\x2b\x68\x70\x49\xdc\xa0\x34\x4d\x16\x8b\xe4\x94\x10\x63\xf3\x63\xe5\x75\x36\xc6\xbf\x46\x69\x9a\xe5\xb3\x66\x4e\xf8\x94\x66\x62\xd6\x98\x99\x4f\x04\x84\x73\xda\xe8\x1f\xd8\xa5\x62\x3a\x9b\x2b\x53\x83\xfd\xeb\xc8\xc3\x16\xe8\xe0\xf0\x2c\x52\xda\xcb\x2a\x7f\x8c\xcb\xc0\x11\xb0\xfa\x8f\x9f\xb1\x72\xf4\xdd\x4f\x3f\x02\xde\xdd\xe2\xed\xbb\x37\x1f\xde\x7c\xf8\xf3\xdb\x57\x8b\x57\x7f\xfa\xf0\xea\xc7\xf7\xaf\xdf\xfc\xf8\x3e\x4d\xe9\xe8\xd5\x8f\x7f\x18\xc1\x93\x97\xae\xc8\xfb\xd1\x77\xba\x5d\xeb\xfd\x11\x1c\x53\x46\xeb\xcc\x94\x70\x9f\x06\x3f\x98\x94\x49\x93\x87\x65\x55\xae\xd9\x75\x63\xb9\x1b\x9f\xd7\x39\xc7\x77\x9c\xd9\xf8\x2c\x75\xc0\x63\xaa\x3a\xe3\xe6\xa4\x5d\xaf\xb4\x7f\x4a\x14\x8e\x5d\x6d\x03\x0f\x22\x4b\x3b\x9a\xcf\xc4\x86\xd5\x73\x84\xda\x16\x2b\xdd\x33\xad\xbf\xcc\xd8\x74\x6b\xfc\x0b\x8d\xad\xfc\x42\xa3\x2a\xbf\xc8\x78\x8e\xe4\x35\x9d\x1e\xdb\xbf\x63\x42\xcd\xf6\xa1\x74\x0e\xc0\x31\x9f\x81\x49\x03\x82\x3b\xc3\x9d\xff\xf8\xe6\xf6\x2f\xcc\x7e\xf2\x5d\x13\x6c\xa2\xad\x8e\x60\xe3\xf5\xe2\xb8\x50\x87\xa2\xfb\xce\x23\x5e\xb1\xbe\x89\x52\x40\x4e\x67\x87\x16\x2e\x1c\x1c\x46\xfc\x46\x13\xf2\x46\xe3\x34\xaf\xab\x72\x71\xc7\xc4\x66\x01\xcd\x2f\xc0\x80\x5e\x2e\x16\xf6\x8e\xa3\xe1\x27\x6f\x01\xe1\x5e\x61\x15\x25\x3f\x95\xd6\xed\x63\xf5\xd3\xbb\xef\x5f\x99\xe8\x0c\x15\x97\xe9\xcd\xd1\x73\x26\xd6\xa8\xce\xfd\x62\xe6\x72\x33\xad\xf7\x02\x96\x5e\xb2\x7a\x9b\x8b\xe5\xc6\x64\x16\x43\xca\xcf\xf7\xd4\xe2\x9a\x0e\xe4\xb4\xdb\xcf\x49\xb9\x10\xca\x49\x84\xf5\xfc\xe9\xb0\x3c\xf7\xea\x24\xd0\x2c\xc9\xeb\xfb\x72\x99\x84\x3b\x01\x3d\xf0\xd1\x55\xbe\xfc\x78\xd5\xf0\x92\x72\x1b\x3d\x9d\x25\x3a\xc2\x25\x51\x89\x22\xa9\x02\x5c\xee\xb4\xb7\x86\x1c\x29\x81\xeb\x76\xbc\x35\x3e\x5a\xc8\x9d\x0c\x2b\x0d\xd0\x56\xba\x55\xdd\x66\x55\x9a\x18\x19\xcc\x90\x86\xc4\x13\x9e\x47\x5a\x75\xd4\x09\x72\xf6\x52\x77\x82\xe6\xe1\xe8\xbe\x1a\xcb\x44\xd3\x34\x8e\x12\xa5\x14\xf2\x8e\x05\xd2\x0f\x34\x1b\x42\xbb\xd7\x7d\x9a\xf6\x39\x00\xdf\xa7\x54\xdd\xfe\x92\x13\x72\xbf\xec\x16\x94\x8f\x8f\xbb\x5f\x3b\xf6\xc6\xc7\xbd\xef\x9e\xe8\x96\xd7\x49\x11\x63\x6f\xdf\xeb\x82\xdd\xdc\x48\x42\x46\xd7\x94\x53\x29\x82\x1c\xe7\x8c\x07\xcc\x5e\xe8\xe7\x61\x7d\xf8\xc3\x58\x09\xa5\xaf\x4a\x10\xce\x89\x07\x73\x35\x05\x39\x56\x8e\x17\x65\x14\x4d\x4a\x34\xe2\x34\x5f\x49\xda\xf0\x21\xbf\x76\x2b\x68\xc3\x8b\x73\x08\x69\xaf\x34\xaa\x38\xca\x72\xe5\x51\x29\xf2\xeb\xef\x2a\x8e\x32\x86\x10\x66\x9f\x73\x60\x9d\x3a\x8d\xd4\x71\xe7\xd7\x86\xf0\x11\x28\x76\x8c\x37\x7e\x96\xe5\xe4\x41\xd7\x53\xcc\x14\x2b\x99\x78\x52\x92\x26\x6c\xd2\x71\x81\xda\xc8\xa0\xbd\x59\x0f\x67\xb3\x30\xea\x31\x1d\x99\xdb\x11\x96\xa6\xc5\x1e\x0a\x61\xaf\x57\x15\xf4\xa1\xd7\x1c\x1f\x89\x29\xd8\x62\x56\x7f\xe0\x8d\xd8\xdc\x77\x1d\xb0\x5d\x53\x59\xff\x42\x36\xa8\x3b\x5d\x9f\x6c\xfb\xc9\x95\xaf\xf5\x8c\x8f\x5e\xfc\xf4\xfe\xc3\x9b\x1f\x16\x1f\x2e\xff\x73\xf1\xdd\x9b\x77\xf3\x88\x4b\xa3\xea\x17\x16\xf8\x03\x7c\xd3\x6e\x7a\x5c\x77\xa8\xc0\x2b\x69\xc3\xea\xa9\x98\xc0\x96\x58\x56\x37\x57\xac\xa4\x28\x9b\x09\x1b\x81\x67\x86\xf4\x62\x93\xb3\xf2\x43\x7e\x5d\x7f\x57\x71\xc0\xd5\x08\x46\x38\x4a\x86\x14\x21\xd4\xe2\x7c\xd4\xc9\x7f\x1a\x19\x61\xed\x30\xf9\x8c\xd0\xe3\xe3\xfa\x00\x5e\x3a\x24\x9a\xd8\xdb\x52\x70\x42\xc2\x6f\xcc\xd6\x19\x1b\xb1\xfa\xb5\x42\xf5\x66\x7f\x97\xcc\x3d\xda\xed\xe4\xb3\xb7\x86\xbd\x01\x58\x14\x28\xee\x77\x7f\x28\x99\x70\x89\x70\xa9\x89\xb7\x1a\xbd\x73\x5e\x76\x11\x22\x95\x2c\x2d\x07\x8f\x7c\x97\xe3\xe6\x29\x54\xab\xeb\xbd\xf1\x24\xdf\xe1\x28\x3b\xf4\x55\xdc\xd8\x39\x11\xe1\x49\x8e\x25\xb4\x36\xb7\xec\xbc\x93\x1c\x94\xfa\x5e\x6c\x5f\x0a\x6b\xd6\xe0\x95\xd8\x38\x56\xff\xd7\x8c\xce\x8d\x27\x1c\xa4\xc8\xeb\xbc\xf3\x8f\x72\xa9\x18\x18\x13\x9d\xae\x83\xcf\x9d\xaf\xa7\xda\xf5\xca\x65\x24\x41\x83\x3c\x4d\x73\x3f\x93\x68\x1e\xe4\x8f\xf3\xb7\x01\x7f\xd2\x36\x50\x96\xc9\xcf\xf5\x1c\xdf\x77\x45\x7d\x61\xcf\x9e\x43\xce\x5e\x8f\xc9\xb0\xff\x2c\x9f\x1f\xa3\xc3\x7e\xc4\xf9\x25\x72\x47\x2f\xf1\xfa\x73\x4e\x8f\xb2\x44\x93\x2d\x38\xe5\x2a\x43\x37\xb9\xc3\xd4\xe8\x67\xc8\x1b\xef\x84\xd1\xc0\xca\x4e\xa8\xef\x19\x40\xe8\xe8\xd2\x3f\x82\x2b\x83\x90\xb2\xe6\x94\xfe\x9d\x66\xb3\x39\xc2\x9b\x18\x28\x0c\xf5\x14\x86\x5b\x9d\x1a\x3c\xf4\xb3\xde\x18\xa0\xee\x77\x19\x44\x15\xeb\x9c\x5e\x15\x89\xb0\x7d\x7c\xca\x23\x71\x64\xee\x7c\xc8\xf6\x2d\x04\x19\x3d\x94\x4e\xb2\x02\xa1\x02\xf0\x69\x04\xe0\xe7\x01\xd6\x0d\xe0\x77\xe8\x30\x31\xe0\xa0\x3d\xe7\xd3\x1b\x3f\xb1\xf9\xaf\x09\xe9\x11\x0f\xeb\x47\x3b\xb5\xdd\xb9\xd4\x3d\x9c\x90\xc0\x67\x9b\xa2\xd6\xcd\x84\xc7\xae\x62\x5d\x94\x63\x1a\x44\x98\xde\x1a\x77\x75\xe7\x9b\x6e\xe1\xe5\x2a\x52\x5e\x54\xcf\x99\x8a\x29\x63\xeb\x8c\xab\x76\x94\xd6\xef\x12\xd6\xa7\x42\xb8\xc2\x4e\x73\x68\xbc\x6c\xcf\xce\xc3\xa4\x77\x5e\x24\x27\x74\xa8\x12\x0f\x95\xa0\x63\x37\x35\x00\xc5\x41\x7d\xcc\x49\xaf\x1f\x16\xa4\xc0\x0b\xf0\xac\xcf\xce\x4f\x09\xb4\x2a\x54\xab\x5c\xb6\xea\x4a\x5f\x75\x30\x61\x4c\x21\xbf\xdf\xdb\x0e\xe6\x87\xd7\xfa\xa9\x4d\xab\x14\x36\xbb\xf0\x22\x54\xc3\x0d\x38\x46\x83\x70\x1d\x6d\x1e\xea\xe7\x63\x59\x60\x48\x18\xc2\xb2\xc7\x32\x4d\xc5\x29\x11\xd3\xd8\x36\x3f\x25\xb4\x8d\x85\x38\x2a\xd1\x21\xc8\x08\x78\x67\xd6\x37\xe0\x8d\x25\x33\x9d\xa6\x59\x49\xce\x81\xab\x14\xc6\x6f\x1f\xa9\xd2\x78\x85\x30\x75\x6d\xbc\x0a\xdb\xe8\x57\x18\xe3\x59\x39\x0f\xf6\xef\x1b\x4f\x75\xa0\xe2\xac\x74\x70\xf1\x6b\x49\xaa\x6e\xad\x28\xa5\xe2\xa9\xba\x6a\xdc\xdd\xee\xd2\xd3\xb8\x9a\x08\xa7\x81\x15\xc8\x0b\x6b\xcb\x52\xf2\x97\x83\x58\xe5\x61\xe9\xd2\xc6\xdd\xeb\x65\x76\x68\xad\xce\x6f\xbb\x84\xc5\x70\x78\x37\x84\xfb\xd8\x25\x16\x89\x79\x8f\xea\xcd\x5d\x82\x8e\x14\x38\x22\x4d\x4e\xcf\xfd\x95\xfc\xd4\x8d\x47\xbd\xc9\xb7\x1e\xc1\xe0\x7d\x22\xc3\x75\x2e\x2b\x39\x88\xcb\x2e\x2b\x62\x3d\xd4\x70\x96\x2d\xc1\xf7\x9c\x8f\x5e\xfd\xf0\xed\xab\x77\x8b\xcb\x77\xef\x2e\xff\x0c\x29\xe5\x96\xfa\xa4\xd4\x97\xa2\xc7\x9f\x6a\xdc\x62\x3b\xee\x70\x34\x21\xc9\x73\xe7\x8d\xdb\xf4\x5a\xb3\x64\x36\x4f\xe6\xe4\x7d\x16\x0f\x7f\x57\x39\x28\x71\xed\xbf\xf3\xd1\x75\x75\xa0\xad\x8a\x18\x19\x2b\x89\xc3\x24\x72\xd0\x81\xb3\x2d\xc2\xcb\x11\x60\x94\xa8\x2b\x80\xbc\xcf\xfa\x32\x45\x67\x7c\xc0\xb7\x8c\xe5\x10\x41\x3c\x7c\x53\x16\xf7\x19\xe4\xd6\xc8\x9f\xdc\x8a\x37\xa4\xb3\xf3\x7e\x8b\xa0\x3a\x0c\x42\x7b\x7a\xf9\x73\xc6\xe1\x85\xe3\x35\x08\x2a\x7e\x0a\xa7\x9e\x12\x36\xa4\x08\x3b\x52\xb1\xdb\xf1\x6f\xd8\x94\x13\x36\xd1\x64\x81\xb0\x21\x47\x17\xf4\x39\xbf\x40\xe5\xac\xd4\x2d\xcc\x49\x6c\xcc\x74\x38\x74\x41\xd6\x2d\x5e\x1a\x7b\x4a\x1c\xe1\x78\xe1\xb0\x97\x4f\xcf\x21\xa9\x98\x5c\xa6\xd7\xfd\x2a\x01\x6e\x96\xb1\xa1\x64\xe1\x90\x49\x89\x60\xb0\xe5\xd9\x39\xc2\x96\xa0\x95\x7e\x68\x13\xbf\x60\xdf\x90\xf1\x05\x53\xf0\x2c\xb1\xf1\x33\xe4\x1b\xa8\x98\xa5\xc4\x72\x6c\xf9\x6a\x05\x34\xc2\xa4\x79\xee\x0c\xd0\xfb\x90\xdd\x92\x56\xc6\x51\x29\xf0\x34\x7f\x72\x5c\x5b\x91\xc2\x9d\xe6\x36\x79\x1d\xbc\xd6\x36\xf8\x12\x78\x9a\x97\xb4\x5e\xbe\xa4\xcb\x8a\xe7\xa2\xe2\x28\x7b\x44\xa9\xbd\x0f\x48\x02\x02\x6a\xbe\x67\xb5\xa0\x25\xa4\xb7\x56\xdc\xf9\xff\x51\x86\xd5\xa5\xca\x7b\x87\x00\x7d\xf9\x60\x49\x85\xad\xa3\x82\xb1\x97\x23\x78\xf6\x42\xc9\xb5\xd1\xa4\x7e\x3d\xba\x1f\xaf\xe1\x96\x43\xa7\x09\xf4\x8b\xc5\xf2\xfd\x1d\x6c\xd7\x56\xe8\x35\xab\x79\xac\x6e\x0c\x93\xd9\x84\x5a\x0d\xdd\x14\x85\xdb\x72\xdc\xdf\xb0\xb8\x24\xe3\x8b\xf2\x39\xbf\x28\x8d\xe1\x5d\x1f\x49\xb3\x07\xb3\x52\x0a\x32\xda\x7e\xc6\x70\xa9\x90\x9c\xdb\x80\x9e\x41\xd6\x4a\x18\xc6\x27\x49\x03\xf4\xdf\xb1\xdd\xa3\x28\x5c\x9f\x31\x0c\xa7\x5e\x6b\x26\x0d\xd8\x08\x98\xe6\x4d\xbe\x3d\x66\x8a\x6a\x7a\xef\xb2\x30\xb6\x38\xd2\x9d\x52\xc5\x19\x46\x63\xc6\xe6\xc4\xce\x51\xbd\x93\xdc\x27\xd7\x3d\x7f\x7b\x0f\xf3\x5a\xb3\x42\xd0\x6e\xb6\xc4\x2f\x31\x8c\x4e\xd7\x69\xca\x0d\xbe\x9b\x1d\x05\xa7\x40\xa5\xa3\x04\x2b\x36\x04\x45\xa7\xd5\x88\x23\x94\xfd\xd4\xe5\x5d\xf1\x44\x56\xb5\xd4\xaa\xd2\xb7\xf7\xfb\x32\xcf\xe8\x46\x6f\xf6\x5d\xfa\xc8\x8d\x77\x7f\x23\xea\xfd\x23\x8d\xac\x59\xd9\x4d\x96\x71\x68\xca\xf7\x0e\xa3\xd8\xd4\x8e\x0e\x40\x97\x3b\xdc\x37\xbd\xa5\xfc\xfe\x09\x9d\x5f\x85\x9d\xb3\xfa\x55\xd8\x80\x73\xb1\x3b\xa6\xf7\xbc\x7c\x4a\xdf\xd7\xdd\xbe\x2f\xcb\x58\xcf\xd7\xc7\xf4\xcc\xe9\xaa\x09\x6f\x70\x07\xff\xf7\xc8\x6e\x06\x2c\x16\x4e\x68\xc6\xb1\xb0\x74\x02\xb9\xfc\x55\xf2\xde\xbd\xad\x3e\xee\x49\x3d\x74\x58\x19\x24\xbe\x39\x9f\x0a\x5f\x19\x24\x1e\x49\x3c\xf4\xf8\xe1\x13\x5e\x08\x02\x1c\x37\xa5\x09\xe7\xf7\xaf\x61\x94\xa0\x8c\xc4\xa5\x92\x43\x2b\xc8\x9c\x5a\x29\x59\x7c\xcf\x96\xde\xc3\x2a\x9e\x50\x7d\xae\x40\x61\xb2\x8c\x25\x22\x8d\x9f\x55\x1a\xe4\x5c\x38\x25\xa6\x1d\x56\x2e\x8b\x66\xd5\x8b\x1e\xf7\x84\x3b\x9f\x83\x19\x43\x9d\xba\xe2\x9d\xc3\x78\x1b\xa6\x0b\x0b\xd6\x4a\x4f\x34\x43\x50\xcf\xe7\xc6\x43\xc1\x77\x7c\xc1\x5c\x38\xb2\x0d\x38\xcd\x09\x9d\xb1\x39\xae\x89\xcf\xb2\xe7\xd6\xe7\x4e\x0b\xe0\x39\xc2\x05\x01\xbd\xb3\xc9\x66\x9a\xd5\x10\x49\xbd\xce\x9c\xbb\x5a\x6b\xbd\xac\xd4\xd4\x9b\x92\xfd\x1c\x59\xbf\xad\xc9\x9c\xb5\x34\x0a\x97\xc8\x22\x6e\x8d\x02\x5c\xe5\x12\x16\x9b\xaa\xe9\xdb\x81\x61\xfa\x66\x81\x3d\x0f\x1f\x10\x0a\xb4\xf0\x46\x08\x9d\x46\x36\x91\x00\x68\xc9\x3d\x32\x28\x6d\x07\x91\x6f\x0d\xc7\x15\x21\xfc\xb1\x2b\xc5\x5c\x62\x1b\x1a\x80\x1f\x00\x0f\x6a\xd2\xfb\x74\x3e\xdf\x6c\x96\x49\x05\xa9\x76\x84\x08\x2a\x65\x57\x75\x4f\xb3\xb2\xa6\x5c\x5c\xee\x11\x3e\x5e\x39\x32\xa2\xcb\x1b\x9d\x55\xbc\xfc\x9d\x4f\x76\xe4\x09\x52\xa2\x44\x6c\x09\x5e\xf5\x84\x07\xf8\x10\xae\x52\xbd\x17\x9f\xc8\x4c\xc4\xaf\x3b\xc6\x16\x46\x68\x5b\x6d\xbb\xdd\xc6\x56\x88\xad\xb3\xb1\xcf\x44\x43\x9e\x48\x2b\x3d\xf7\x25\x86\xb3\xf3\x90\x7c\x98\x95\xc8\xe8\xd9\x39\x3e\x57\xe9\xf8\x36\x6c\x2d\xfa\x7d\xeb\x9e\xbc\xce\x7b\x7d\xd2\x68\x9f\xe3\x3d\x3d\x8e\x11\xa6\x2d\x6e\xca\x68\x7f\xbd\x25\x1e\xc3\xc2\x06\xa5\x1f\x5f\xdb\xb1\xbf\xa2\x5c\x5e\x7d\x35\xed\xd5\x3d\x66\x59\xbd\x73\xd2\xa1\x24\xba\xd5\xac\x3b\x49\xb7\x4b\xed\xae\xab\x69\x74\xe0\xa6\xaf\xce\xaa\x42\x3b\x70\x46\xb2\x20\xed\x6a\x78\x34\xba\x82\xb5\x3f\x5d\xb9\xce\x91\x75\x8d\xb2\xcb\xbb\x1d\x00\x39\x83\x9b\xdc\x43\xec\x2b\x72\xa4\x04\xdd\xf0\x1b\xf2\x0e\xc3\xec\x77\x1a\xce\x12\xda\xbc\xa2\xd7\xac\x0c\xc1\xef\x6a\x94\xf9\x1c\x7c\x17\x5c\x9a\x9f\x9d\x21\xaf\x4b\xd5\x32\xc0\x12\x78\x96\x2a\x31\xa2\xe5\xaa\xdf\xac\x5e\x88\x7c\xb5\xda\xbf\xbb\xba\x84\x51\x53\x19\x77\x80\x1d\xb0\x97\x6d\xa7\xee\x01\x7b\x05\xda\x95\x43\x33\xc5\x7b\x94\xc7\xd6\xad\xd7\x76\x92\x29\x57\x8b\xc7\x66\x07\xd6\x98\x40\xbf\xfe\x11\x36\xcb\xdb\x2e\xe9\xfd\x88\x6b\x47\x7a\xcd\xb7\xdd\xb7\x22\x33\x3a\x97\xdf\x12\x76\xd5\x24\x2e\xca\x75\xd5\x8b\xab\x50\xbd\xf8\xba\xf4\xb4\xfc\x81\x70\xe7\x8d\xdb\x37\x04\xbc\x85\x61\xbf\xc3\x1f\xc8\x2c\x51\x5b\x20\x99\x0f\xde\x2a\xd4\x25\x14\x5f\xb4\x8e\x7b\xd7\x8c\xce\xd3\xf4\x83\x51\xb3\x83\x61\x2a\xec\x81\x64\x6b\xf2\x16\x99\x3b\x52\x73\x8b\x6b\xfc\x41\x16\xbc\x24\xef\x70\xbe\xc7\x19\x10\xaa\x4f\xb3\xb7\xba\x46\xa7\x5b\x5d\x3b\x6a\xa4\xd8\xed\x66\xf3\x16\x4d\x0e\x15\xc8\x28\x99\xcd\x11\xbe\x74\xde\xb7\x53\x3a\x31\x5d\x51\xa4\xbc\xb0\x5f\x90\x4b\xcf\xe8\xf6\xe2\x29\x46\x37\x1f\x36\xe0\x18\xcb\xdb\x3f\xc7\xd0\xaa\x8d\x6e\x0a\x49\xe3\xb3\x0d\x8c\x3d\xf0\x87\xc8\x84\x0f\x79\xe4\x45\x57\xe0\xab\x61\xa6\x3d\x2c\x16\x6e\xc0\x0b\xe5\x29\x02\xe8\x58\xaf\x4b\xd9\x01\xab\xca\x3d\x7a\xd6\x51\x50\x71\x14\xd6\xc9\x00\xeb\xbc\xfa\xd8\x6c\x0f\x68\x62\xc3\x06\x34\xd6\xab\xe2\x77\x56\x7d\xc7\x11\xef\x7a\x0c\x2a\x0e\x28\x38\xdd\x08\x40\x5e\x09\xc1\xf8\xa8\x97\xcb\x52\x69\x3e\xb4\x63\x19\xca\x6c\x0e\x49\x4c\x71\xb2\x66\x65\x5e\xb0\xbf\xd3\x97\x36\xaf\x24\x0a\xfc\x51\xe4\x6c\x5c\x22\xe6\xf8\x8c\x3a\xa2\xe3\x83\xcd\xcb\x18\x4c\xd2\x4b\xe7\xac\xb3\x68\xb0\xae\xe3\x4e\xe9\x6f\x3c\xf6\xb4\x8d\x67\x82\x15\xff\x3b\x1f\xb1\xed\xfd\x2f\x3c\x5f\xbe\x45\xfa\xbf\xed\x44\x3f\x7f\x76\x26\xfa\xef\xbf\xed\xd4\x1e\x7c\x92\x10\x51\xac\xae\x56\x46\x17\x1c\xb9\x71\x71\x55\xee\xbb\xcb\x0f\xd5\x96\x92\xb6\x6e\x40\x03\xc6\x7f\x5d\x9f\x97\x0b\xad\x28\x2d\x57\x10\x8d\xe9\x1c\x96\x50\x8b\xab\xf5\xfa\xd0\x0c\x14\x8b\x78\x68\x09\x36\x79\x4c\x66\xd8\xa7\x48\xa7\xbf\xc4\xd9\x25\xe6\xc5\x71\x7c\x50\xe2\x71\x6e\x2b\xff\xd8\xfb\xaa\x43\x2d\x2d\x4e\xc9\x91\x48\x94\x87\x5d\x63\xfe\x9f\x71\x09\x0b\x8c\x36\x11\x57\x11\xab\x8c\xb9\x06\xef\x4d\xe3\x38\xe6\xdd\x8d\x07\x92\xda\xf3\x30\xa9\xbd\x32\x61\x50\x30\x61\xf0\x59\xe9\x1f\x94\xd2\xa5\xef\x1f\x05\x3d\x85\x4a\x50\x15\xd4\x60\xbc\x1e\x39\xa4\x45\x0d\x6d\xb4\xbc\x6f\xa0\xf0\xec\x5d\x75\x7c\x12\xb4\x5b\xc9\x15\xf2\x56\x20\x26\x03\xed\x31\x78\xed\x13\x97\xd4\xb1\xed\xcb\x3f\x7b\x9a\x39\x24\x06\xc6\x90\xd7\xf7\xcd\x28\x8e\xd2\xae\x27\xe6\x8b\x83\xca\x06\xd8\x21\x4a\x98\x75\x09\x6b\xdf\x96\x08\xa5\x3a\x92\xfa\x31\x8d\x85\x65\xe3\xed\x6d\xf2\xda\x14\x08\x99\xa6\x47\x09\xde\x30\xb1\xf6\x45\xd8\xc0\x7f\x64\x62\xa3\x63\x15\xf6\xef\x99\xb0\x5c\xb0\x7d\x58\xb9\xe4\x90\x2e\xda\x2c\x65\xb4\x95\x93\x8e\xe3\x8c\xf1\x54\xf1\x37\x63\x06\x29\x74\xbf\x2b\x2a\xe5\xbc\x1b\x1e\x36\xb4\xdb\x8d\xd1\x90\x03\xf7\xfa\xc5\x3a\xec\xf5\x22\x3b\x39\x93\x9d\x88\xea\xfa\xba\xa0\x91\x1e\xf6\x1e\xa5\xd3\xfe\x90\x5b\xbc\xcc\x97\x1b\x7a\xe0\x03\x5d\xeb\x94\x88\x2b\x48\xc8\x07\x6e\xec\xbf\xfc\x5a\xea\x40\x75\x3d\x89\xec\xaa\x80\x8f\x7f\xd4\x75\xd3\x25\xbc\x2a\x84\x48\x3b\xd4\xd7\x6f\x69\x09\xe9\x9c\x32\x15\x31\x63\xfd\xd1\x59\xfd\x9e\x0a\x51\x48\x36\x2e\x62\x1d\xec\x7a\xbc\xba\xd2\x5d\x8f\x0f\xfb\x26\xd2\xc3\x3b\xb0\xf1\x01\x3c\x1a\xab\xbf\x6b\x8a\x35\x2b\xf6\x74\xd8\xef\xcf\xd6\x35\x06\xfc\xe0\xad\x6b\xac\x3f\x1e\x53\x73\x72\x7a\x8e\xbd\x92\xf2\xa7\xfe\xa8\xdd\xa1\x76\x5d\x75\x1c\x66\x29\x0f\x30\x4b\x2d\x3e\xc5\xaf\xea\x13\xdd\xd4\xc9\x4d\x53\x03\x50\x69\x4d\x45\x72\xe0\xd2\x38\x39\x74\x93\xf8\x97\x02\xc5\x0f\x9d\x41\x07\x33\x6a\x11\xe6\x23\xb1\xa1\x65\xcc\x45\x0a\x82\x70\xb4\x84\x48\x57\xbb\x9d\xf7\x93\x95\xd7\x7a\x1d\xfb\xfd\x99\x10\x0c\x1e\x2e\x97\xdc\x72\xbc\x45\x38\xe8\x48\xa7\xa9\xf8\xac\x7e\xf4\xc6\xe4\xc1\x8c\x4c\x2f\xc9\x2b\x88\x8f\x3f\xf1\x97\x39\x41\xad\xd1\xa9\xb6\x20\xac\xd2\x72\xc2\xb2\x44\xfe\x9b\x20\x0c\xd9\x35\xe4\x6f\xf8\x23\x41\x18\x64\xe4\xe2\x5e\x3e\xd2\x7f\xca\xdd\xd1\x09\xff\xeb\x7e\x0e\x2f\xa6\x2d\xd8\x63\xfa\xfb\xba\x5c\x63\xdc\xb9\x8a\xf3\xc0\xcd\xfb\x33\x99\xba\x2e\x6c\xe7\x93\xe2\xef\xff\xa9\x0c\xed\xc3\x62\x61\x07\xaf\xd5\x31\x5c\xe5\x13\xf2\xf3\x7d\x1d\xd4\xaa\xb8\xfa\x23\x5d\x55\x6b\x55\xd4\x0b\xca\xe5\x47\x34\x7f\x27\x08\x37\xa5\xff\xc2\xfd\x4a\x10\xee\xa4\x19\x93\xef\x37\x79\x9d\x20\xdb\x14\x5d\xbd\xd9\x9a\x37\xd7\x54\xa8\x1f\xde\x7b\xf5\xa0\x96\xaf\x2b\xf5\x67\xa4\x72\x1d\xd4\xae\xfb\xd5\xbf\xab\xf8\x87\xfb\x2d\xf5\x5a\xd1\x4f\x62\x8d\x79\x85\x5d\x9b\xae\x3c\x03\x1d\x95\x7c\xcb\x8c\xb6\xea\xe8\x9d\x6c\x51\x20\x04\xe9\xad\x35\xf2\xa2\x1d\xbe\xc4\x16\xde\x03\x9d\x79\xf8\xae\xfc\xac\xf0\xf6\x7f\xd6\x4e\x57\x33\x54\x7b\x5c\x4d\xd3\xff\xfb\x85\xca\x88\x15\x79\xa4\xed\x28\xdd\x20\xb0\xa0\x4c\x78\x0f\xc6\xb3\x72\x84\x15\x82\xd4\x1c\x2e\x14\xd3\x78\x21\x76\x2a\xd3\x4e\xf0\x9f\xb5\x40\x78\xe5\x4c\x52\x2f\xad\xda\x94\xfc\x16\x2e\x5b\xcf\x6f\xc1\xe8\x32\x2e\x3b\x7a\x56\xda\xf3\xea\x7c\x68\x8d\x5b\x27\x85\xdc\x64\x3a\xb3\x5a\x45\x4a\x9d\x5f\x12\xe7\xf6\xa9\x9e\x10\x44\x6b\x11\x06\x17\x46\x64\xda\x09\xc2\x15\xa9\x76\xbb\xae\x11\xa9\x0c\x03\x23\x6d\x34\x0e\xc0\xbd\x3f\xc4\x96\x28\x1a\x51\x59\xf6\xd7\x87\xa5\x69\xc6\x0e\xad\x4f\x09\xe1\x91\xd6\x93\x14\x82\xc5\x17\x6a\x00\x2e\x98\x55\x3f\x18\x78\x56\x5f\x75\x8f\x79\xee\xac\x0a\xc0\xfa\xe0\xe7\xd6\x68\x77\xda\xd2\x86\x70\x95\xa6\x3a\xe1\x2a\xc4\xa8\x28\x10\xf6\x9a\x96\x2b\x54\x93\xac\x21\x15\xf2\x23\x91\x1a\x3c\x63\x56\x9c\xcd\x4d\x1a\xbd\x9a\x64\x05\xa9\x90\x7c\xa5\x8a\x15\x78\x16\x94\x62\xeb\xec\xf4\xfc\x94\x90\xda\xfa\x8c\x9b\x64\x1a\xe7\x21\x2f\x7d\x1c\x9d\x88\xc1\x25\xfb\xd4\x01\x2a\x9f\x5d\xe5\x57\x34\x1e\xc9\xb4\x3f\xc6\xe9\x17\x03\xd0\x74\x20\xa5\x9f\x1e\xc7\x8b\xf3\xaf\x42\x83\x6a\x95\xe3\x57\x8b\xdd\xc9\x42\x8e\xb3\xbc\xa6\x2b\xed\x07\x0a\x2a\x0f\xe7\x64\x9a\xe0\x95\x71\x0c\xdd\x53\xd6\x3a\x8e\x26\x2d\x6e\x42\xc7\x2b\x73\x9b\x78\x56\x13\x1a\x8f\x6b\x55\x5b\xb0\x05\x1e\x89\x95\x1b\xca\x99\xa8\xbf\xaf\xaa\x9a\xaa\x48\x1a\x9b\xbe\xcb\xda\xfa\x6c\x82\xcf\x11\x2b\x59\xe0\xf1\x14\xa4\xa9\x29\x99\xd8\x13\xd7\xab\xee\x2e\xed\xa6\xff\x92\x71\x71\x0f\xfe\xd7\x64\x1c\xbe\x21\x0a\x83\x05\x1e\x29\xd5\x10\x94\x25\xa7\xe3\xe0\xa1\xad\xd6\x59\x21\xbf\x7a\xe7\xd5\xeb\xfa\xa7\xed\x2a\x17\xac\xbc\x26\xa7\xe7\xf1\x22\x1f\xf2\xeb\x03\x0d\xbc\xa3\xb7\xac\x66\x55\xa9\xf3\x7f\xb3\x19\x1f\xbd\x7d\xf7\xe6\xed\xab\x77\x1f\xfe\xbc\x78\xf9\xfa\xe5\xe2\xc5\x6f\x2e\x7f\xfc\xcf\x57\xf3\x7e\x1a\x72\x4e\x6f\xf3\x82\xad\x40\x45\xaf\xea\x1d\x8a\xfa\xd5\x31\x1c\xb3\xb9\x01\xa8\xd7\x36\x61\xf9\x6b\x9a\xf5\x5b\x94\x02\x7c\xee\x42\x7d\x1f\x89\xef\xed\xcc\x49\xc7\xf9\x4e\x1e\x0f\x32\x6e\x31\x1b\x79\xe1\xd5\xb1\x59\x1a\x07\xf2\xee\x8e\x35\x2a\x19\x98\xbd\xf5\xae\x30\x5f\x2c\xaa\x03\xe0\x9e\x13\x46\x8f\xa6\x86\x5d\x24\x48\x8f\x4e\xdb\xdf\x49\x97\xaf\xf0\x1d\x45\x74\x1d\x13\xd0\xe4\x6a\xf5\x47\xa3\x12\xd1\xed\x8d\xe0\xb6\xae\x27\xaa\xa0\x3f\xb3\xae\x0f\x5a\xe4\x9b\x19\x8c\x28\x7f\xeb\xa7\x69\x16\x1e\x85\xd9\x1c\x61\xf0\xfe\xdb\x73\x76\xd2\x94\x7e\xb3\xef\x5d\x10\x3d\x7e\x68\xf1\x54\xd4\xb6\x4b\x54\x1a\xb4\xa7\xb5\xb3\x7e\x2b\xd8\xec\x47\x1b\xe9\xd1\xef\xfc\x82\x3d\x2f\xc1\xca\x11\xbc\x9f\xb1\x79\xe8\x87\x6e\x3e\x06\xd3\x97\x59\xb4\xeb\xf1\x60\x1f\xe5\x38\x3b\x6f\x03\x19\xc4\x74\x43\xe7\xf2\x63\x2c\x14\x1e\x42\x6c\x3f\xf6\x9d\x26\x63\x9f\x63\x3a\x9e\xc4\x06\x84\x8f\x58\x53\x5c\x12\x31\x8d\xae\xd9\xc4\x4c\xe7\x98\xd3\xa2\xc8\x50\x3c\x18\x01\xfc\xab\x4a\x43\x56\x59\xe9\xed\xad\x5e\x2d\x7b\x63\x84\x95\x74\xf4\xc8\xe1\xd3\xfa\x58\xa9\xfe\x5a\x3e\xbe\xe3\x68\x9a\x9e\x06\x0a\x87\x34\x55\x87\xbc\x1f\xcf\xa2\xf2\xa5\x61\x7b\x7f\x74\xc9\xbd\x3a\xf9\x47\xac\x66\x9f\x5e\x75\x9a\x02\x83\x3e\xdf\x1f\x06\xd3\xab\x60\x46\xa6\x56\xe9\xe0\xa5\xee\x77\xbe\xb7\x78\x34\x82\x44\x28\x35\xf8\xa1\x8d\xa0\x8a\x58\x24\x9a\x0a\x22\x92\xaa\x61\xe7\x3b\xf4\x87\x6f\xf7\xe4\xb0\x3c\x63\xe8\x22\x83\x30\xd0\x3d\x67\x4d\xfb\x86\xf5\x5f\x7c\x53\xa1\x2e\xd9\xf2\x4e\x68\x85\x0e\xdc\xe4\xf1\x1d\xaa\x66\x03\x8b\xe4\x36\x75\xff\xe3\xed\xe7\x23\xc2\xae\xf4\xee\x88\x35\x04\x79\xb0\x1f\xe1\x14\xa4\x74\x05\x9e\xda\xf1\x82\x1f\xf2\x6b\xd8\x36\xf9\xc8\x74\xb0\x67\xb1\x3f\xe4\xd7\x87\x79\x0a\xb4\xdb\x65\x01\x11\xea\x37\x30\x3d\xf2\xd4\x4e\xe2\x43\xf0\xd9\x1f\xb3\x56\xfb\x49\x64\xb6\xe7\xc0\x05\x4c\xd4\x9e\x32\x92\x8b\xfa\x25\x3c\x49\x82\xf6\x34\x6c\x19\x30\xb3\xe4\xcd\x81\xf5\x06\xf4\x12\xa5\x16\x06\xb6\x06\x10\xbd\x25\x77\x3b\x7b\xf8\x48\xef\x27\x66\xf7\x77\x43\xd1\xe2\xd7\x75\x6f\x6b\x1d\x4f\xec\x02\xae\x95\x4e\x03\x41\xd7\xdd\x0a\xb1\xcd\xdb\xb9\xde\xd4\xbb\xae\x42\xda\x24\xeb\x0b\x42\x16\xcf\xa8\x01\x57\x2d\xd1\x43\x09\x04\x41\x78\xf6\xd5\xb3\x12\x0c\xac\x86\xcb\xdf\xcb\xe2\x0c\x98\x21\xcc\xff\x3f\x77\xff\xda\xdd\x36\x8e\xec\x8b\xc3\xef\xf5\x29\x64\x9e\xde\x1a\x72\x04\x33\x76\xba\xe7\xa6\x84\xed\xe3\xc4\x4e\xb7\x4f\xdb\x71\xb6\xed\x74\x4f\x3f\x6a\x6d\x0f\x2d\x41\x36\x26\x14\xa1\x01\x41\x3b\x6e\x8b\xdf\xfd\x59\x28\x5c\x49\x82\xb2\x9c\xcb\xec\x59\xff\xb5\xb2\x62\x8a\x04\x0a\x77\xa0\xaa\x50\xf5\x2b\xe3\x08\x4d\xc4\x01\xa2\xed\x7a\xeb\xe7\x4e\x54\x55\x15\xf8\x47\x5b\x44\xc9\x1a\x6c\x0a\x2a\x6d\x58\x54\xd7\x6c\x13\x3d\x34\x3a\x4d\x32\xa3\x69\x46\xd2\xc2\x81\xd9\x89\x90\x77\xc3\x18\x35\x19\x36\x87\x85\x5c\xef\x6e\x27\x76\x9a\xad\xdd\x68\x53\xcc\x3b\x5f\x04\x9f\xa7\x48\xbe\xc6\x22\x6b\x93\xd8\x90\xeb\x83\x9d\x36\xe0\x40\x1e\xb3\xeb\xfb\x0c\x41\xfc\x91\x18\x44\x9d\x78\x7d\x16\x7a\xe3\xf3\x45\xea\x16\x2c\x7f\x8d\xbd\xc6\xe3\x9b\x89\x8a\x47\xe8\x91\xbd\xb3\xa4\x54\xfa\x3f\x2b\xa3\xca\x49\x88\xa6\xb0\x20\x48\x7c\xf9\x0b\x4e\x3f\x9c\x63\x8e\xe6\xf0\x42\xfc\x3a\x49\x97\x0a\x92\xc3\x79\x83\x6e\xa4\x6f\x4b\x71\xbf\xb8\xa2\x59\x14\x06\x6f\xce\xf6\x4f\x0e\x7f\x39\x3d\xfb\xe9\xf2\xf5\xf1\xfe\xf9\x79\x10\xd5\x61\x39\x5c\x6c\xbd\xc2\xc0\x79\x89\x75\x69\x90\xbb\x5c\xb6\x1b\x2b\xa5\x0d\xce\x53\xee\xe2\xee\xa0\x34\xc1\x71\x13\x8c\x07\x65\x89\x21\x92\x0f\x06\xb9\x89\xcc\x6a\x22\x25\x4a\x5c\xb0\xd4\x7e\x98\x27\x6e\x30\x57\x1e\xa1\x59\xb2\xf3\x62\xf6\x72\xae\x7d\x7d\x66\xda\xd7\xe7\x26\x99\x8f\x67\x13\xb4\x4c\xf8\xf8\x66\x82\x16\xa2\xfa\x65\x3c\xc3\xc5\x94\x91\x25\xa7\xac\x26\x1a\x62\x74\x83\x58\x84\x6e\x6d\xa1\x0b\x50\x38\xdd\x4a\x52\xf7\x89\x18\x9d\x5e\x26\x6a\xa8\xf1\x6e\x6f\xa2\xef\xb7\x77\x07\x83\x70\x99\xdc\xef\x41\x7f\x2e\xd2\x0f\xda\x54\xfa\xde\x20\x52\x2e\xa3\x51\xf3\xe3\x32\x8a\xd0\x54\x34\xa9\x4d\xa9\x16\x0d\xee\xa1\x42\xf7\x68\x19\x45\xd5\xed\xde\x02\x30\xbf\x44\x25\x97\xd1\xc8\x62\x9f\x58\xa8\x60\x0f\x28\xd5\x6a\x75\x03\xa1\x01\xf7\x60\x62\x2d\x47\xbe\x34\xa1\x20\x58\x49\x6d\x87\xe8\x4a\x16\x97\x39\xa0\x3e\xb8\x10\x55\x30\x83\xae\x13\x66\x00\x43\xc1\xa8\xab\x08\xeb\x53\xe0\xda\x4c\x81\xab\x64\xe7\xc5\xd5\xcb\x6b\x3d\x1e\x57\xc3\x61\x04\x5d\x0f\xc1\x4b\x53\x8e\x5d\x9e\xf8\x7a\x7c\x35\x89\xc1\x68\x4f\x3e\x16\xf7\xf9\x34\x7a\x01\xc9\x1d\xf3\x31\x8c\x02\x51\xc3\x40\xc7\xf7\xad\xff\x61\x12\x6e\x61\xd1\x11\xc0\x58\x1f\x70\x73\x71\x32\xc8\x23\xd1\x81\x29\x8f\x7a\xa6\x05\x78\x30\x08\xe7\xf1\x0c\x67\x98\xe3\x76\x3a\xc4\xe2\x37\xfb\xaf\x2f\x4e\xcf\x7e\xbd\x7c\x73\x7a\x06\xe3\xa1\xcd\x00\x50\x33\xb1\x5c\xa3\x35\x97\x8f\x17\xce\xe2\xe1\x51\xdc\xea\xe4\x0a\x8b\x33\x88\xf0\x37\xd2\xc4\xb5\xae\x0d\x73\x4b\xab\x0c\x20\x89\x47\xa3\x25\x77\x84\x64\x33\x43\x25\x5e\x37\x54\x52\x11\x3c\x5f\x30\x21\xed\x8e\x99\x6b\xa8\xc4\x26\xd6\x2d\xa2\x94\x5a\x31\xd8\x8b\x34\xec\x82\x71\xe1\x6a\xa9\xd4\xc4\xbb\x59\x5b\xcf\x22\x96\x96\x5e\x8e\xe2\x5b\x54\xc3\x3c\xeb\xeb\x0e\x4b\x5d\x93\x63\x03\x8d\xc9\x8d\xb7\x96\xa3\xc5\x59\xa7\xd5\x11\x9f\x38\x3d\x07\xc5\x7b\x5b\xca\xf3\x40\x09\x71\xe9\x1e\x24\x73\x1c\x7e\xe4\x38\x17\xcc\xda\x5e\x30\x0a\x86\xfe\x4f\x61\x34\x0a\x02\x8d\x59\xf2\x32\x18\x86\xb0\xe6\x55\x70\x5f\xd5\xb8\xd5\xaa\x3e\x83\xf4\x6c\xd4\xee\x2a\xee\xfc\xd1\x05\x84\x51\x04\x41\x5b\x25\xb9\x92\xcc\x8c\x05\x49\x34\xc4\xc3\xe0\xfb\xa0\x92\x01\x90\xb1\xeb\x8b\x6c\x26\xbc\x4f\xa1\xca\x36\x55\xa8\x3a\x66\x00\x0d\xb5\x2a\x43\x62\xb6\xa8\x6b\x03\x3d\xf7\x32\xed\xed\x10\x5b\x2c\x3b\x31\x45\x5c\xc5\x29\x84\x19\x96\x3c\xac\x37\xac\xa9\xd4\xc2\x68\xc0\xb4\xf1\x8d\x86\x46\x43\xa9\xb3\x78\x9d\x05\x9b\xee\xd1\x24\x95\xa6\xf3\xa3\xda\x2a\xa6\x06\x06\xd6\x84\x89\x8d\x94\x5d\x1e\x09\x35\x60\xb8\xfa\xdd\x33\x2e\x98\xcc\x5e\x81\xf0\x3d\x3c\xba\xf5\x77\x0f\xb8\xd7\x61\xcf\x4a\x73\x59\x5c\x31\x11\xcf\x24\x8b\x18\xa1\xcc\x21\xb4\xa6\x77\xe4\x12\xc2\x4e\xde\xf6\x90\x02\x09\xbb\xee\x01\xc9\x02\x00\xe0\xc3\xa9\xde\xb8\x70\x84\x66\x12\xba\x4a\x74\xd6\x60\x30\xb3\x9b\x47\xd9\x30\xfe\x6c\xd7\x07\x44\x0d\xdd\xb8\x06\x8b\xe2\x30\xa4\x9e\x3d\xc0\xd3\x10\xe9\x0c\xd3\x54\x21\xfa\x4e\x2f\x8b\x2e\x24\xb6\xab\x17\xf8\x85\x44\x77\x55\x22\xa4\xc5\x08\x82\x20\xde\xe5\x12\x33\x08\x3c\x60\xaf\x7f\x4c\x61\x47\x0a\xc4\xd5\xeb\xa7\xe3\x42\xbc\xea\x3a\x8a\x0d\xd9\x61\x04\x3c\x90\x90\xb6\xcb\x43\x31\x87\xd6\x31\x11\xdc\xb9\xd7\x64\xf1\xa5\xa0\xbd\x5a\x3d\x40\xcc\x6f\x9c\x4e\x6f\x5e\xab\xcb\x56\x1f\x6a\x64\x1b\xac\x41\x5e\xac\xb9\xa5\x2b\x63\xd6\x87\xaa\x76\x96\xd4\x66\x84\x71\xb2\x3a\x30\x35\x2c\xea\x90\x0e\xd0\xb3\xc4\x81\x3c\xd2\xf0\x83\x44\x57\x98\xf5\x1c\xc8\x07\x0a\xd0\xf1\x15\x52\xa7\xcd\xa3\x33\x52\x6c\xec\x7a\x56\x46\x0f\x80\x00\x13\xe2\x9a\xeb\xa3\x1d\xbf\x1e\x1f\x0c\xb8\xe9\xda\xda\xa4\xf5\x4c\x4d\xeb\x4d\x65\xae\x80\x3d\x42\x31\xd6\x42\xb1\xa3\x93\x6b\x49\xc6\x66\x1e\x17\xf1\x12\xe3\x0f\x27\x16\xa3\x33\x26\xc5\x39\x2d\xd9\x14\x9b\xcc\x61\xd3\x70\x2a\x12\x03\xda\x28\x03\xa0\xbf\x3f\xb9\x10\x79\xfe\xb7\x4b\x99\xe8\xb6\xd4\x3b\xa2\x55\x92\x1c\x88\x99\xb3\x43\x36\xef\x8e\xc5\x9e\x18\xe2\xa4\xb1\xfe\xa3\x48\xee\x9d\xaf\xed\xc1\x03\x43\x84\x66\x75\xee\x06\x9b\x06\xdb\xb1\xeb\xa8\x84\xe2\xcc\xa5\x31\xb3\xac\xf3\xe9\xbc\x5e\x29\xbc\x95\x24\x6d\xdc\x7d\xb1\xdf\x42\x6d\x41\xf2\xc6\x55\xe8\xc8\x20\xb7\x35\x36\x46\x9f\x95\x3e\x09\x43\x4d\xb1\x96\x90\xc1\x12\xf7\x78\xc0\x56\x96\xc8\xed\x07\x98\x8c\xe6\x03\x84\x71\x28\x92\x9d\x17\xc5\xcb\x26\xdf\xf4\xa2\x18\x0e\x0d\xaf\x5b\x26\xc5\xcb\x9d\xd5\xaa\x99\xe6\x65\x52\x68\xf4\x3b\xcb\x45\x15\x13\x94\xd5\x64\x17\x88\x07\x2f\x04\x1a\x1d\xd9\xfd\xc5\xf4\xe5\xfc\xc5\x54\xcb\x2f\xb3\x24\x1b\x4f\x27\xe8\x26\x29\xc7\xb3\x89\x8a\xb8\x81\x8d\xd0\x30\x13\x42\x83\x8e\x46\x93\x8a\x14\x37\xc9\xb2\x25\x88\x2c\x8d\x20\x72\xd3\x16\x44\x6e\xa2\x8a\xcc\xc3\x5c\x34\xdc\x43\x75\xa1\xa9\x36\x85\x92\x05\xba\x89\x2a\xf1\x2d\xb9\xb1\xa1\x27\x16\x96\xc3\x2a\x63\x98\x22\x17\xea\x37\x92\xc2\xa6\xe6\x85\x16\xca\x9c\x2e\x76\xa2\xe6\x45\x68\x11\x93\x42\x9e\x37\x5b\x3b\xf0\xe3\x04\xf3\x1b\x3a\x4b\xb6\x76\x7b\x52\xfe\x5a\x38\x0a\x98\xfb\xa7\xa8\x39\x9c\x00\xca\x5f\xe6\x7a\xbf\xa1\xb3\xd8\xe8\xe2\xdf\xab\x58\xf8\x2a\x77\xf4\xd4\xcf\xf6\x91\xcf\xb9\x47\x27\xfa\x1e\x5d\x9c\x12\x2d\xa9\x83\xb6\x98\x7e\x7d\x03\x62\x82\x43\x46\x1a\x03\x83\xae\xe1\xc3\x9b\xca\x3b\x31\x70\xca\xc2\xb6\xf6\x7e\x01\x5d\xf1\x8e\xe1\x39\xf9\x68\x4d\x20\xf1\x6a\x25\x15\x7c\x73\x92\xdb\x82\xc1\x75\xc0\x6c\x83\x21\x36\x7c\xa1\xc3\x97\x47\x60\x22\x24\x3f\xd4\x38\x6c\x03\xe0\x6d\x13\xcb\xfd\x10\x1a\x22\xaa\x07\x33\x16\x17\xad\xb6\x2f\x19\x9d\xe2\xa2\xf0\xb5\xdf\x23\x0c\x39\xb7\x35\xcd\x1c\xc8\x35\x49\x50\x59\xd5\xe1\x2c\x09\x92\xca\xa2\x0a\xba\x3a\x4a\x8a\xa8\x6b\xcc\x60\xab\x22\xd6\x17\x8d\xdf\xee\x9f\x1c\x9e\xbf\xdb\x7f\x7d\x78\x9e\x30\xe7\x47\xed\xcb\xe5\xab\x5f\x2f\x8f\x0e\x6a\xdf\xe5\x2b\x49\x5a\x34\x70\x3f\xcb\x12\xe6\xfc\xb0\xfd\x8e\x68\x7c\x75\x2f\x7e\x26\x8d\x11\x79\xca\xd2\xfd\xea\xca\xc9\x8d\x56\xf5\x93\x0c\x7d\x3e\x21\x2c\xba\x0f\x5c\xf8\x51\x75\xe4\xe7\xef\x1d\x8d\x20\xd2\x89\x1f\x17\x1f\x65\x35\xcd\xe1\xf4\x33\x77\x97\x6e\xa1\x52\xec\x31\x1e\x7e\x8e\x68\x1e\xe8\x12\xba\xc4\x84\x9b\xfe\x09\xdf\x77\xb0\x20\x1d\x42\x76\x2b\xd8\x00\x30\x02\xf3\x52\x4e\x5a\xcd\xe1\xe4\xf1\xe9\x2f\x6f\x0f\xcf\xfc\x94\x33\x87\x9a\xab\xf9\x72\xa2\x73\x49\x3e\x77\xd3\x2a\x00\xcb\x01\x53\xb2\x7d\x17\x92\xd5\x74\x3e\x82\x29\x22\x55\x98\xfa\x96\xfa\x14\xc1\x01\x6d\xf6\xa9\xa9\x3e\x60\xcd\xe1\x6a\x40\x23\xd4\xd8\x4c\xeb\xc0\x07\xcd\x99\x50\xfa\xde\x75\x0d\xbc\xc2\x99\x34\x62\x34\x31\x58\x75\x56\xb5\x61\x36\x52\x25\x8d\x4b\x8f\xaa\xa2\xc0\x8c\x5f\xdc\x38\x80\xf8\x78\x16\x85\x24\x42\xcc\xda\x31\xfe\x27\xce\x94\xe6\x50\xb4\xba\xb7\x74\xba\xb7\x8a\xa2\xde\xd3\xb6\xbb\x4f\xb1\x45\xfc\x6c\x8b\x43\x15\x92\xe4\xab\x06\xbc\x73\xb6\x15\xf2\xd5\x75\x53\xcc\xb7\x52\x08\x22\x4d\xa1\x52\xdd\xe3\xd9\x7b\xbe\x8d\xce\x27\x13\x6e\x74\x73\x67\x60\xcf\xf9\xf0\xc5\x7d\x5f\xa5\xb8\xd5\x54\xb8\x34\x62\x08\x06\xe2\x77\x60\x37\x30\xf7\x93\x89\x12\x19\xa8\x61\x62\xe3\x5c\xae\x66\x1c\x4d\x56\x2b\x8d\xb9\xdc\x73\x55\xa6\x09\xd9\xe3\xed\xe8\x83\x60\xac\x1c\x48\x51\x31\x1a\x39\x60\xcd\x44\x70\x5b\xae\x26\x06\xa2\x13\xed\x91\x44\x85\x22\x1a\xd5\xd5\x34\x9a\xb2\x48\x60\x03\x68\x7a\x02\xf8\x88\xe2\x20\x4c\xa6\x0d\x65\x45\x2a\xad\x31\x09\xc6\xb2\x02\x1a\x42\x7d\x12\x8c\x4c\x74\x51\x64\x3e\xbe\x05\xac\x69\xf1\x4d\xa1\x4e\xdb\x4f\x92\x67\x15\x9f\x94\xf9\xb6\xfd\xa4\x65\x59\xf1\xd1\x74\x8b\xfd\xbc\x5f\xdc\xe7\xd3\xc7\xd2\x08\x71\x4c\x7c\xd3\x86\xbf\xfa\x83\x68\x9a\x78\x0f\x0d\xb3\xaf\xcf\xf0\xf5\xe1\xc7\xa5\xf8\xc0\xf0\x35\xfe\xb8\x74\x3e\xc9\x59\x23\x3e\x99\x0d\xc0\x54\x94\x64\xe0\x57\x0f\x95\x20\x19\xce\x48\xc1\x83\x0a\xe5\x49\x2b\x3c\xa1\xe6\xd1\x3b\xd7\x02\x30\x4b\xcf\x40\x66\xf4\xae\x01\xcf\xa5\xef\x26\xee\xde\xce\x46\x60\xd4\x6f\x0f\x95\x05\x96\x82\xa0\x30\x63\x3c\x49\x76\x11\x8f\x84\x3c\xec\xa2\x7b\x31\x1b\x13\xcc\xb1\x1e\x6e\xe2\x14\x82\x2a\xc4\x4e\x47\x1b\x69\xd3\x17\x47\x2a\xfa\x94\x60\x43\xf2\x56\x35\x99\x43\x20\x85\x23\xd5\x65\xe7\xea\x65\x4b\x2b\x09\x46\x91\x06\xf3\x39\xc4\xa0\x6a\x9b\x11\x48\x95\x32\x9f\x3e\x52\x55\x49\xe9\x70\xac\xc2\x91\xc7\x97\x22\x9f\xb4\xfa\x95\xba\x60\xfd\x0e\x71\x41\xb5\x2c\xc9\x2c\xa1\x08\xc7\xd7\x38\xc7\x2c\xe5\xf8\x07\xf1\x62\xad\x0e\x52\x1e\x3c\x81\xd6\x3c\xf2\x21\x0d\xa3\x5e\x0e\xcb\x3b\x55\x37\x92\xcc\x6a\x3c\x45\x21\x4a\x82\x6a\xd7\x1b\x3c\x20\x42\x1c\x45\x56\x1a\xe3\x09\x04\xaf\x15\x2f\xdd\xd2\x44\x21\x48\x93\xe7\x91\x8d\xd2\xe9\xe6\x2c\x74\x4e\x83\xdd\xa5\xc6\xac\xc7\x13\xeb\x62\x91\xb0\xbd\xa0\xe0\x40\x71\x64\xa1\xe4\xc5\xdb\xbc\x54\x6f\xe5\x70\xe9\xb4\xf7\xea\x6d\x18\x0c\xf1\x30\x88\x02\x54\x98\x7a\x18\x13\x16\xd1\x4c\xb9\x14\x12\x86\x70\x7c\xc7\x5a\xe8\xbf\x64\x1e\x6e\x5d\xb9\x21\x58\x65\xd4\x56\x15\x50\x62\x30\xb8\xb2\x30\xf9\xfd\x0f\x21\x46\x1f\x42\x8e\xae\xed\xbe\xf5\x41\xf9\x9b\x41\xe8\x31\x0b\x51\x7d\x28\x5f\x18\x7f\xef\xe4\xa3\x34\x29\xb0\x29\xee\xe4\x0b\x9b\xe2\x1c\xaa\x5a\x2c\x7d\x6a\xf8\x26\xb2\x3e\x1e\x0c\x7c\x81\x2b\x6a\xe0\x79\xea\xf9\x28\xc4\x68\x07\x2a\x28\x5d\x4f\xac\xb2\x39\x79\x8b\x04\xfb\x97\x4b\x94\xd2\xe4\x58\x1c\x4a\x1a\xb3\xb4\x65\xcd\x4c\xe6\xe1\xb1\x1c\x62\x73\xea\x8f\xb9\xf6\xfe\x00\xdf\x73\xd0\xd0\x6b\x7d\x95\xff\x5c\xd3\xeb\x7f\x6c\xb0\x14\xde\x48\xf8\x2d\x30\x9e\xc5\x5a\xd6\xf7\x5d\x08\xfc\xae\xe6\x50\x25\xbb\xad\x91\x4c\x0c\xa4\x9c\xea\xbf\xdb\x39\x80\x70\x5b\x81\xd1\xc7\x21\xf7\xbb\xf6\x38\x71\x73\xed\x39\xcc\xbb\xcf\x61\xee\x39\x87\xbd\x51\x73\x2d\x60\x4b\x10\x28\x80\x09\xad\xbb\x04\x9c\x89\xfc\x7b\x85\xe5\x1e\xa0\x20\x42\xef\x43\x3e\xce\x27\xd1\x6a\x25\xde\x60\xf9\xc3\x59\xb5\xb5\x3b\x19\x5b\x77\xd3\x50\xd3\x08\xe7\x56\x52\xe7\x7e\xa5\x78\x7d\xe8\x19\x08\x63\xf5\xb1\x3d\x4e\xce\x4a\xf8\x97\xba\x1a\xe8\xb9\x57\x37\x3a\x44\x5a\x2d\xa3\xec\xfa\x7f\xa9\x0b\x04\x49\x1e\xc4\x9a\xf6\x5c\xd0\x93\x67\x30\xc0\xe3\x6f\x26\x8a\xe2\x2f\x84\xdf\x9c\xa4\xf9\x2c\xe5\x94\xdd\x9f\x63\xce\x31\x4b\x70\xcc\x71\xca\x66\xf4\x2e\x6f\x7f\x29\x30\x2f\x97\xed\xd7\x4e\x78\x86\x04\xc7\xe0\xca\x9f\xe0\xf8\xc7\xfd\xf3\xcb\xb7\xfb\x17\x47\x3f\x1f\x5e\xbe\x3b\x3b\xfd\xfb\xaf\xf5\x57\xe7\xbf\x9e\xbc\x3a\x3d\x4e\x70\x7c\x76\x7a\x7a\x21\xc4\xa1\x1b\x3c\xfd\xf0\x63\x5a\x9c\x97\x4b\xa0\xf9\xc3\xfb\xa3\x83\xcb\x9f\x0e\x45\x2e\x79\x43\xa9\x0f\x16\xe7\xd2\x46\x7e\x3b\x10\x87\x26\xcc\xcb\x1a\xf3\xbc\x63\x4f\x4a\x6a\x58\xe6\xe1\x90\xa8\x90\x50\xae\xc0\x5e\xc0\x2f\xf1\x54\x26\x2c\x14\xc7\x96\xdc\x63\x05\x67\x11\xe7\xf4\x2e\x84\x80\x60\xa6\x46\xa5\xb4\x35\x42\xd3\x64\x3c\xb1\x85\xcc\xed\xe9\x03\x34\xc4\xe6\x18\x96\x43\x88\x91\x3e\xcf\x28\x65\x21\x3c\xb2\x34\x9f\xd1\x45\x18\xfd\xd1\x21\x1e\x0d\x45\x7a\x33\x5f\xa6\x3a\x1a\x34\xe2\x95\x52\x71\xf7\x1a\x2d\x9d\xf5\xa4\xed\x8e\x11\xbf\xec\x9d\x82\xbf\xab\xf6\x1e\x4b\xd0\xb6\x31\x14\x5c\x85\xaa\x91\xab\x8f\xc7\x3e\x8c\x42\x16\x3d\x80\x35\xc4\x23\xa5\x84\x0a\x0f\x1e\xf1\xaa\xb7\x6e\x5c\x6f\x7a\x52\x63\xff\xec\xb7\x38\x94\xf0\x68\x2b\xb1\x84\x7e\x03\x49\x67\x05\x7b\x9f\x7c\x8e\x9e\xa1\x85\xe7\xa2\xc4\x2c\x42\x74\x9b\x2c\xe4\xea\xf3\x44\xed\x03\x29\x29\x8a\x0c\x5f\x11\x38\xef\x83\xe8\xfb\xed\x5d\x5f\x9c\x9a\x65\xcc\x71\xc1\xc3\x85\xe6\xf8\xdd\x28\x44\x06\x7d\x61\x47\x34\xaf\x3e\xa3\x6f\x95\x8a\xde\x9d\x77\xd7\x8d\x18\x50\x6e\x1d\x85\x4c\x6c\xe6\xd6\x95\x1d\x94\x7b\xb5\x1f\xb7\xae\xaf\x24\x33\x72\x1b\xe2\x08\xdd\x5b\xbe\x00\xf1\x4a\x2d\xb1\x6b\xf5\xfa\x1a\x6d\xed\x4a\x5e\xe5\xb2\x66\x01\x67\x0a\xbb\x93\xdb\xfa\xa5\xdd\xd0\xcd\xa7\x43\xa7\x23\x2e\xf5\xc1\x20\x48\x9d\xfa\x49\x9d\x4b\x52\x7c\x30\x38\xf5\x50\x73\x03\xc7\x9c\xba\xd4\xf6\x81\x1a\x37\xb6\x7a\x96\xa0\x3c\xf5\xeb\xc2\xb0\x83\xf0\x2a\xe7\x4a\xcf\x79\x4e\xb8\xf6\x69\xf5\xcb\xca\x35\x74\x59\x95\x85\x59\x0f\xda\x7d\xd8\x5a\x59\x84\xee\x42\x86\x0e\xc1\x42\xe2\x3c\x64\xe8\xa3\xb4\x95\xa8\x24\xfe\x68\xa7\x68\x80\xce\xd6\xce\xcd\x8b\xa4\x76\x68\xa1\xd7\xee\xbd\x17\x3a\x49\xfe\xdf\xf9\xe9\xdb\x58\x1e\x97\x64\x7e\x8f\xfe\x99\x3c\xfb\x9f\xf1\x6f\x77\xdf\x4c\x86\xdf\x3c\xb3\x3d\x72\x54\x8f\x35\xb5\xb5\xdb\x2b\xee\x08\x9f\xde\x84\xd6\xb9\x78\x9a\x16\xd8\x39\x2d\x47\xed\xf3\x13\x52\x28\x7e\x7f\xb4\x4e\x1a\xbe\x80\x1b\x6b\x92\x6c\xed\xf4\xae\x18\x4e\x3f\x48\x07\x5a\x73\xda\x27\xc9\xbb\xd5\xca\x4a\xcc\xf6\x74\x84\xc4\x36\x26\x8f\x73\x46\x42\xd1\xe6\x64\x1d\xb5\x92\x24\x49\x72\xb6\x27\xc3\x1a\xef\x05\x63\xdd\x9d\xa3\x60\x28\xdf\x0d\x03\x21\xa9\x8d\x1d\xd9\xb1\x4d\x5d\x71\x1c\x9a\xf6\x89\x58\x3d\xf2\x83\x64\x6b\x47\xf0\x43\x8b\xba\xf2\x97\x62\xfc\x46\x4a\xb2\x6e\xd7\x2b\x84\x6b\x41\xeb\x98\x1d\xe5\xcd\x49\x6b\x03\xee\xab\x9b\x7e\xed\xe9\xf7\x9a\xb0\x69\x99\xa5\x6c\x12\x18\x0f\x63\x75\x82\x23\xb2\xe7\xe1\xff\xf8\xf7\xdf\x99\xbc\x4a\x0a\xee\x59\x4b\xd2\x60\x1c\x20\x1f\x90\xbb\x28\x79\x98\x80\x53\xf4\x5e\xd0\x0f\x46\x01\xea\x07\x88\x7c\x9f\xec\xee\xec\x44\x0f\xf9\x30\x09\xe2\x38\xee\x07\xc3\xd0\xe2\x10\xef\xec\x44\xc3\xa0\xbf\xa0\x0c\xf7\x09\xc7\x8b\x22\x50\x63\x9c\x0f\x93\xa3\x10\x10\xe1\xc1\x89\x4e\xd7\x79\x98\x04\xfd\x49\x50\x89\xf9\x37\xdc\x45\x79\x34\x7a\xa4\xea\x5a\xea\x76\xeb\xfe\x20\xea\xfe\x5a\xb4\x9c\x26\x3b\x2f\xe8\x4b\xa2\x9b\x40\xeb\x4d\xa0\xb6\x09\xb4\xdd\x04\xe2\x6b\x82\x58\x44\xba\x05\xf2\xc8\x27\x63\x3a\xe9\xe5\xc3\xe4\x20\x4c\xa3\x61\x30\xea\x07\x43\xd1\xac\xd4\xd3\xac\xca\x69\x96\xdd\xaf\x0e\x9c\xfd\xea\x9f\xf2\x18\x00\x26\x5a\x4c\x28\x9b\xea\xad\x6b\x0c\x8c\x7b\x33\xaa\x5c\xde\x1f\x3b\x1a\x19\xe2\x75\x8d\xb9\x89\x5c\x9e\xf7\x58\x87\xcd\x00\x8b\xaa\xbb\x1b\x92\x61\xed\xb5\x62\xe5\x4c\xf0\x59\x35\x75\x3a\xae\x41\x78\xa8\x60\x04\xfe\xb0\xd0\x63\x3e\x81\xee\x7a\x53\xdf\x9c\x60\x17\xfd\xbd\x65\x32\xfd\xaa\x7b\xf3\xb3\x5b\xd4\xfb\x86\x82\x21\x49\x30\x14\xf1\xa3\xcf\xaa\x50\x2a\x01\x06\x03\x2b\x73\xd6\x3e\x00\xe8\x65\x9b\x8d\xfc\x11\x6a\xf3\xb3\x8f\x20\x70\xcd\x3d\x0f\x3b\xfa\x33\xe4\xf9\x57\x73\xd9\x8a\x97\xbf\x74\x58\xc9\xba\x1e\xa6\x19\x59\x10\x9e\x60\x15\xa6\xa5\xcc\xa7\x89\x74\x11\x8b\x0b\x4e\x19\x4e\x98\xfa\x41\x7e\xc7\xda\x57\x69\x41\xe0\x1e\x54\xfd\xba\x21\xdc\x3c\xab\x2c\xab\x95\xe2\x43\x2b\x15\xa8\xa0\x7d\x8f\x0c\x53\xc0\xc7\xd8\x5b\x3a\x6a\xbb\x51\xbe\xc3\xa2\x98\xe1\xd0\x29\x46\xeb\x04\x94\xdf\x90\xac\x94\x49\x21\x0f\x69\xdd\xa4\x50\x06\x05\x06\x2c\x20\x7f\x34\x13\xdb\x15\xdf\x9b\xf6\x6a\x0f\x31\xf1\x5c\x2f\xda\x65\x4b\x10\x8f\x97\x25\xbb\x6e\x3b\x7b\xc9\xa4\x0a\x0f\xbe\xdd\x8b\x6e\xbf\xe9\x1e\xad\xa4\x31\x8c\x96\x3d\x7e\x81\x41\xfc\x01\xfd\x8a\x7e\x42\xdf\x24\xf3\x30\x70\x04\x94\x40\x24\x73\x05\x96\x6f\x50\x87\x5c\xf3\x03\xea\x16\x85\x7e\xed\x96\x9f\x7e\xea\x54\x08\xde\x12\x7c\xb7\x4e\x21\xd8\x4a\xea\xa8\xc4\xff\xf9\xaf\x12\xb3\xfb\xcd\xd2\x76\xdf\xd2\xb6\x92\x82\x51\xf9\xe5\x8c\x14\xcb\x94\x4f\x6f\x3a\x6e\x7d\x6d\xae\x29\x5d\x2c\x69\x2e\xb2\x48\x9d\xc6\x23\xc9\x35\xca\x0c\xfe\xc8\x2d\xb8\xcc\xda\x1c\xf2\x09\xf4\xff\xe2\x71\x33\xfa\xa0\x40\xbf\x04\x13\x96\x0d\x8b\xd1\x19\x6f\x48\x36\x83\x82\x9e\x98\x51\xbc\xb8\x2c\x78\xca\xf1\xa7\xe4\x7b\x4a\x8e\x26\x34\xcf\xa3\xc3\x93\xf2\x67\x29\xe7\x6c\xc3\xf1\x57\xe4\x17\x69\x9e\x5e\x63\x0f\xe2\x5d\x3d\xaa\x2e\x9a\xa2\x39\x9a\xa1\x9b\xcf\xbd\x84\xe9\xcc\xf0\xcf\xff\x96\xb3\xfc\xc1\x0d\x1f\xb7\xe3\x37\x1a\xec\xf3\x58\x26\xaf\x1e\xa7\x78\x40\x0a\x41\x6b\xf6\x44\xca\x3a\xdb\xda\x12\xd2\xd9\xec\xb5\x98\x47\x3f\xc3\x7c\xdd\x88\x3e\xd8\xfd\x98\x4c\x6b\xa9\x93\xe2\x9c\x2c\x96\x19\x7e\x9d\x91\xe9\x87\x8d\xc9\xd7\x72\xad\xa5\x7f\x8d\xb9\xa8\xc3\x2b\x5a\xe6\xb3\x62\x63\xfa\xb5\x5c\x9b\xd0\x7f\x9d\x11\x70\xe8\x9c\xf2\x27\x17\xe2\x64\xdd\xb8\x25\x24\xbf\xb6\xd9\x3e\xa9\x55\x35\x0a\x8f\x95\x7b\x46\x29\xe4\x7c\x52\xdb\x4c\xa6\xc7\xa8\x9b\x89\xf2\x24\xf2\x36\xd7\x26\xbd\x76\xb4\xe9\xd2\x30\xbd\x74\xb4\x7e\x55\x5c\x63\x7e\x98\x01\x3e\xe9\x93\xd6\x45\x3d\xdb\x26\x35\x57\xc9\x9f\x5a\x7d\x95\x6d\x6d\x09\xc5\xa7\xb5\xa1\xd8\xbc\x0d\xc5\xa7\xb5\xa1\xd8\xbc\x0d\xc0\x46\x7d\x4a\x2b\x9a\x19\x1f\x2f\xe5\x53\x5a\xd2\xcc\xb8\xbe\x14\x6d\x82\x7d\xce\xef\x33\x7c\x80\x97\x0c\x4f\x01\x32\xf0\x04\x17\x45\x7a\x8d\x37\x2f\xf5\x11\x42\x6b\x6b\x01\xde\x76\x07\x0e\xc7\xb4\x51\xa1\xc6\x76\x62\x2d\xed\xd7\x9a\xbf\x3a\x56\xec\xd5\x46\xb4\xc9\x46\xb4\x2f\xf0\x47\x7e\xae\xd9\x88\x8d\xe8\xd2\x0d\xeb\xcc\xf0\x13\x66\x56\xba\x19\x51\xc1\xd2\x81\x39\xe4\xd3\xaa\x5c\x6c\x46\xdd\xec\x8d\x4f\xa3\x5e\x6e\x44\x5d\x10\x3e\x17\xbc\xe1\xd3\x88\x67\x1b\x13\x57\x0e\x0e\x1b\x51\x9d\x6e\x44\x55\x82\x03\x3e\xad\xbe\xf3\x8d\x28\x9f\xbc\xbf\xd8\x7f\x75\x7c\x78\xf9\xfa\xf0\xf8\x78\x43\xc2\xb3\xd8\xcd\xb4\x41\xbd\x4f\x14\xf7\xba\x19\xf9\x1b\xa7\xde\x8f\x88\x6a\x6d\x9e\x7a\xbd\xd4\x26\x05\xaf\x2f\x6e\xb1\xe4\x76\x47\x1d\xb2\x5f\xe2\xf4\x6a\x0f\xf5\x5a\x5f\x43\xb4\x2c\x37\x63\x37\x78\x76\xab\xb1\xf3\x34\xcb\xae\xd2\xe9\x87\x6d\xf1\x65\x5b\xc3\x8f\xfe\x2f\xb5\xde\x1b\xab\x00\x1a\x6e\x2d\x40\xa2\x50\x46\xed\xdd\x04\x2a\x7c\x9d\x34\xbb\x91\xa5\xda\xbf\x2d\x1c\x83\xa2\x24\x3d\x57\x65\xe4\x28\xa8\x6e\x33\x3e\x90\x0d\x63\x1e\x98\x34\xa3\x60\xe8\xe8\x8c\x9c\x90\x40\x39\xe0\xa0\x65\xe9\x3d\x2d\xd7\x11\xe2\x78\xb1\xcc\x52\x8e\x47\x86\x62\xf1\xac\x46\x52\x85\x52\xca\x25\xb4\xf3\x13\x7b\xbe\x43\xb8\xdd\x64\x7e\x6d\x8c\x38\xfb\x29\xa2\xf2\x4c\xb1\x02\x78\xb6\x3d\xc7\x29\x2f\x19\x6e\x4d\x68\x2d\x13\x7f\x95\x51\x4f\x93\x87\x02\xe7\x33\x6f\xdc\x99\x2f\x1d\x5e\x17\x14\x68\xca\x5d\x5c\xf9\x12\xaa\x5f\x63\x0c\x8e\x54\x54\x07\x83\xdd\x02\x0d\xbc\x7b\x7f\x96\x4b\xa0\xd1\x54\x69\xa8\x2b\x89\x7b\xd9\xf4\x41\x31\xb8\xae\xc5\x60\x50\xb8\xd8\xa6\x45\x0d\xbb\x58\xe2\xa0\x9e\x1f\xbe\x3d\xb8\xdc\x7f\x7d\x71\x74\xfa\x56\x61\xa4\x76\x28\x1c\x07\x03\x3e\x26\xb5\xad\x6d\x22\x5d\x41\x15\x42\x10\xe2\x55\x2f\x85\xd2\xe4\xe9\xe0\xb7\xb2\x6a\x60\xdf\x5a\xc0\x5a\x0f\xdc\x9b\x98\x23\x00\x9c\xd8\x72\xb3\xc1\xda\x6f\x66\x4b\xda\x5b\x69\x4f\x7f\xc7\xfa\x24\x6f\x0f\x1b\x71\x86\x2d\xff\x7e\x77\x2f\x97\xc3\x46\x93\xdd\x17\xf4\x65\x0e\x57\x1f\x64\x4c\xeb\xc3\x46\x27\x3d\x9f\xfd\xc9\x1e\xaf\x47\x41\x21\x91\x04\xb1\xab\x81\xfe\x86\x0f\x0a\xf9\x98\x37\x60\x8f\x49\x15\x55\x55\x25\x3d\xf4\x1a\xc0\xc9\x69\x0d\xcb\x67\xf3\x25\xed\x55\xa9\x3d\x29\xf6\xc2\xe3\x9a\xcd\xff\xad\xb8\x0c\x53\xc3\x36\xca\xf8\x03\x39\x84\x5c\x3c\xc0\xc5\xf4\x00\x4f\x29\x4b\x39\x65\x91\xd8\xa6\xf3\x39\xb9\x2e\x15\x17\xb2\x8b\x5c\x9e\x64\xb7\xd3\xff\xb5\x21\xb3\x6b\x5f\xa8\x2a\x42\xe9\x72\x89\x73\xa9\x2d\x6a\x86\x19\xad\xeb\x91\x3a\x82\x66\x74\x03\xfd\x6e\xa6\x48\xfd\x8f\x8d\x57\x54\xb7\x9d\x18\x4f\x00\x86\xb1\x15\x0a\xce\xe7\x02\x3b\x1a\x4b\xa3\x6b\x10\x30\x02\x64\x7f\xbc\x22\xa0\xf9\x11\x53\x8c\xe4\xa4\x11\x52\xc2\x18\x08\xf8\x2d\x09\x2a\x64\x69\x8e\x18\x6a\xd1\x1c\xb1\x4f\x1d\x96\xba\xfe\xfc\x53\x17\x93\xe6\x5e\xba\x8e\xc9\x8d\xcf\xbe\xaf\xe4\x91\xf9\xb0\xfb\xed\x28\x90\xe1\xad\xdf\xe2\xbb\x8c\xe4\x38\x40\xcf\xff\x32\x0a\xa6\x69\x3e\xc5\x59\x50\xa1\xb4\x39\xba\x2c\xbe\x80\x13\xa6\x26\xbd\xe8\xa2\x82\x00\x89\x8d\x9b\x5c\x95\xdc\x0e\xc1\x38\x48\x4b\x4e\xa7\xe9\x92\x70\x70\xa5\x09\x90\x7c\x41\x19\x93\x66\xe0\xe2\xd7\x9c\x4e\x4b\xd1\xb9\x33\xa3\x34\x0e\xe6\x94\x2d\x02\x14\x2c\xd2\x8f\x1a\x46\x2e\x58\x90\xdc\x3c\x03\x58\xda\x0d\xcd\x66\x70\x81\xc2\x70\x3a\xa3\x79\x76\x0f\x8f\xff\x2a\x09\x03\x12\x05\xce\x64\x20\x80\x03\xc2\xb0\xb6\x6d\x2f\x96\x38\xcb\xc0\x4e\x28\x10\xc7\xe5\x95\xba\x1b\x0a\x38\xe1\x99\xe0\x33\x1d\xc2\x12\xa3\x5e\xd7\x49\x6c\x25\xa6\x36\x2a\x52\xcc\x53\x27\xac\xbc\x42\xa3\x79\x18\x2c\xd3\x82\x63\x17\x32\xe6\x12\x2b\xc5\x8f\xe8\x4a\x0b\xa5\x66\x73\x4c\x4b\xfe\xa4\xf4\x24\x5f\x6e\x94\xa3\x42\x57\xe5\xd5\x55\x86\x0b\x88\x9b\x22\xe6\xee\x92\x61\xfe\x13\xbe\x97\x68\x4a\x1e\x23\x35\x3a\xc6\xf1\x07\x7c\xff\x9a\xce\x24\xd7\xb2\x86\x7a\x18\x21\xee\x5a\xea\x8e\xf9\x04\xac\x26\xfd\xa9\x47\x75\xe7\x53\x37\xcc\x51\x00\x53\x4c\x36\x27\x56\x99\x15\xf7\x51\xa1\x69\x3b\xde\xd6\xba\x3a\x01\xa2\xa9\x3b\xeb\x6b\x39\x8b\x30\xc0\xa2\x17\x54\xd7\xe1\x08\x15\xa1\x5a\x24\xdb\xb9\x5e\x25\xdc\x44\xc5\x87\xa5\xd2\x22\x50\x4c\xd3\x25\xde\x5e\x32\x5c\x14\x4e\x62\x98\xe6\x47\x79\x33\x35\xbc\xde\x26\x79\x33\xe5\x69\xc9\x9f\xd0\x26\x64\x28\x51\x33\xee\x82\xd4\x07\x7c\xff\x4e\xd4\xa3\x59\xea\x07\x7c\xdf\xaa\xe0\x07\x7c\xff\x7e\xd9\x2e\xb3\x3d\x2b\x54\x79\x82\x86\x10\xe2\x5c\x02\x07\xf4\xae\xd5\x42\x91\x6e\x46\xef\x9c\x16\xba\x91\x39\x0a\xd7\x9e\x8a\x3a\x51\x65\x58\x8b\x13\x34\x1f\x70\x84\xd2\x7a\x4a\x39\x41\x80\x4b\x26\x2e\x6b\x3b\x18\xb4\xec\x9f\x69\xf4\xc0\x3a\xf8\x35\xda\xe0\xd7\xc6\x29\xca\x27\x95\x44\xe6\xf1\x70\x83\x74\x30\xa0\x61\x2a\x98\x73\x3a\x18\x6c\xd5\xea\xa3\x56\x55\x10\x0d\x06\x79\x5c\x70\xba\x14\x1b\x75\x7a\x9d\xca\xf9\xed\x84\x0f\x49\x37\x3f\x96\x7c\x97\xa0\xff\xb9\x01\x45\x2f\x39\x4b\xf3\x82\x88\x52\x2f\xa8\x67\x1f\x91\xf3\x79\x5a\x32\x86\x73\x0e\xea\x3b\xc4\x3c\x2f\xb5\x9d\xa1\x78\x06\x41\xc9\xf9\x9d\x60\x04\xce\xaa\xf8\x23\x31\x7f\x95\x87\x3a\x8b\x61\x19\x0f\x06\xea\xc1\xb0\x77\x9f\x26\x38\xd7\xef\x91\xbf\xba\xd8\x7c\xc5\xe8\x5d\x81\xd9\xf6\x63\x91\x5f\x3e\xc7\x12\xa1\x69\xe0\xf0\x04\x51\xdc\xe3\xea\x6d\x96\x73\xd9\x30\xf7\xfd\x32\xd3\x2b\x4b\xba\x39\xcb\x16\xd7\x11\x4c\x50\x8e\x53\x86\x0b\x7e\x3a\x87\xa0\x41\x7e\xe9\x5e\x62\x04\xa5\x4c\xdd\xb7\xa0\x3c\xa9\x39\xf0\x29\xf9\xcc\xda\x07\x72\xc7\x0d\x54\x79\x14\x72\xd7\x18\xd9\xf7\xbd\x86\xd5\x57\xbd\xe0\x2f\x94\xef\x81\xf5\xb4\xe1\x3d\x21\x49\xdb\x6a\x54\x95\xae\xfc\x2f\x84\xdf\x78\x23\x01\x76\x36\x41\xd3\xc7\xe0\x92\xb6\xa6\x04\x86\x19\xce\x67\x6e\x40\xc8\x46\xb8\x29\x77\x05\xc6\x3a\xb5\x46\x77\x50\x67\x90\x84\x91\xfd\x62\x32\x99\x2c\x59\x96\x84\xdd\x8b\xc9\xa6\x64\xe6\xdb\x4d\x8c\x9a\x2c\x21\xf1\x4d\x5a\x1c\x9c\x9e\x78\x36\x7e\xbc\x37\xa3\x53\xe0\xc5\x62\x98\xfb\xe7\xc0\x21\x52\x16\xe2\x68\xa4\x6c\xb0\x4c\xf1\xba\xa8\x06\x94\xa0\x7c\xdd\x55\x79\x93\xc9\x94\x73\x45\x67\xf7\xb6\xc7\x8e\x66\x92\x73\xbc\x23\x59\x76\x04\x3c\x85\x6a\xe2\xa8\x44\x33\x32\x6b\xbe\x82\xa8\x26\x19\x4e\xd9\x99\x1c\xac\xd2\x17\x41\x7d\x43\xae\xb3\x3e\xa2\x3a\x82\xba\x1a\x50\x07\xa0\xb0\x56\xa1\xd6\x3b\x3b\x89\x2c\xd7\x56\x22\x9e\x82\x8f\xc4\x67\x71\xc5\xa6\x87\x56\xab\x20\xd0\x20\xdd\x8a\xf0\x6a\x15\xd6\xd3\xa8\xa3\xbf\x06\x8b\x12\x55\x48\xc2\xe7\x02\x8b\xb2\x2e\x94\x5a\xad\x27\x9c\x3c\x06\xb7\x38\xaa\xaa\x5e\x11\xff\xbf\xff\x7e\x7f\x78\xf6\xeb\xe5\xd1\xdb\x8b\xc3\x1f\xce\xf6\x25\x2f\x11\x66\xf1\x37\xde\xe0\x13\xaa\x6a\xc6\xb5\x6e\x0f\x60\x22\xa5\x51\x8b\x06\xd9\x37\x89\x46\xb5\x8f\xb5\x4f\x2a\x22\xd4\xb4\xa9\x1d\xaa\xa9\xda\xa7\x1b\x9c\x5b\x7e\x73\x23\xe7\xe4\xaa\x6d\xed\x5d\x9b\x39\x0f\xa3\x87\xcf\xd9\xc1\x39\x84\x95\xd5\xa1\xdc\x24\xb3\x55\x24\x0f\xd5\xe6\x0d\x68\xdb\xcb\xad\x3f\x7c\x1f\xc7\x79\x7e\x2c\x44\xe0\x46\xa2\x7c\xb3\xca\x5f\xde\xa6\xb0\x39\x72\x9b\xd3\xbf\x54\x7d\x66\x6f\xd9\x3f\x89\x77\x78\x22\x3f\xa0\xcd\xd5\xbe\x0a\x77\x39\x4b\x1e\x16\xb4\x2c\x30\xb0\x72\xa3\x00\x9e\xe9\xad\xe8\x16\x78\xcc\x70\x7a\x8b\xf5\xeb\x92\x07\x15\xba\x49\x68\xf3\x36\x07\x4b\x81\x56\x6a\xf1\x34\x6c\x18\xa7\xe5\xf4\xa6\xe0\x29\xe3\xa3\x00\x9e\xcf\xc5\x73\x80\xe0\x79\x41\x05\x55\x78\x3c\xa1\xb7\x58\xbd\x15\xfb\xbf\x7c\x79\x98\xcf\xd4\x3b\x25\x07\xca\xd7\xaf\xa5\xfe\x44\x48\x43\x42\xea\x19\x05\x4a\x2c\x82\x37\xe5\x12\x7e\xbf\x5f\xc2\x2f\x90\xc0\xe0\xc5\x3b\x29\x8b\x41\x13\x64\x2e\x78\x94\xf9\xe0\x51\xe4\x84\x07\x91\x57\x05\x59\x5b\xe0\xbc\x1c\x05\xea\xc7\x09\xce\xcb\x00\x4d\x33\x32\xfd\x30\x0a\xa6\xd2\x7c\x6d\x76\x95\xa9\x17\x33\x5a\x5e\x19\xab\x36\x90\x14\x49\x3e\x0a\x94\x4c\xaa\xde\xd0\x92\xab\x57\xa7\x42\x88\x2c\xca\xab\x05\xe1\xa3\x40\xfe\x0d\x10\xe8\x14\x46\x5a\xb5\xa0\xc4\xee\x60\xaa\xc3\x6a\xb1\xf4\x5a\xf5\xa4\x78\x54\x1d\x29\x1e\xe5\x0b\xf9\xac\x46\x50\x3c\x1e\x4a\x39\x5b\x3c\xaa\x01\x14\x8f\xc7\xe2\x51\xbe\x15\x23\x2c\x5f\x9e\xde\xca\x94\x74\x29\x7e\xd3\xa5\xa6\x35\xd3\x94\x66\x41\x85\xe6\xf1\xc9\xe9\xfb\xf3\xc3\xcb\xc3\xb7\x17\x87\x67\x97\xc7\x87\xfb\x3f\x1f\x5e\x9e\x9c\xfe\x7c\x78\x79\xf8\xf3\xe1\xdb\x8b\xf3\xbd\xf6\x14\x52\x35\x68\xcd\x21\x55\x07\x78\x96\x93\x00\x1e\x61\x12\x54\xa3\x87\x2a\x42\x8c\x52\x73\x50\x07\xe2\x90\x0f\xd6\x1d\x7c\x26\xc0\x01\xcc\xc1\x1f\x25\xca\x7b\xd1\xf0\x99\x87\x0b\x55\x40\xdc\x29\x97\x8d\xe3\xcb\x0d\x1c\x04\x71\x5a\xa5\x18\x9e\xd4\xe7\x72\x25\x11\x77\x9c\x8b\x14\x39\xe5\x21\x7e\x53\x4f\xfa\x20\xc8\x28\x2c\xc4\x55\xad\x38\x4d\x09\x10\x57\x88\x6a\x52\xbc\xae\x11\x73\xd3\xc9\xdb\xa8\xb9\xe7\x8c\x5c\xad\x8a\x86\x2d\x67\x14\x52\xe3\xfb\x6e\xb0\x55\xd3\xbd\x74\xd4\xc1\x8c\xa5\x51\x24\x91\xfa\x8e\x49\x01\x11\xce\x43\x05\x34\x23\xb8\x07\xa2\x36\x34\xeb\x7e\x2f\x51\x75\x0b\x73\x9c\x8a\xec\xe9\x6c\x06\xf6\x2c\xde\x9c\x68\x8b\xc6\xa4\x08\x83\xd8\xf3\x2d\xb2\x71\x8c\x85\xe0\x00\x20\x20\x61\xf0\x3e\x17\x0d\xe9\x73\xda\x4f\x67\xb3\xfe\x1f\x5a\xf9\xfe\xd0\x87\xfa\x8a\x04\xa2\x93\xfa\xea\x30\xef\x87\xc1\x10\xe2\x0d\xca\x86\xad\x56\x74\xbc\x33\xd1\x3c\x4d\x34\x0c\xa2\xb8\x7f\x92\x7e\xc0\xfd\xa2\x64\xb8\x7f\x4f\xcb\x7e\x81\x79\xdf\xe9\x65\x41\x8f\xdf\xe0\xbe\x98\x5e\x7d\xca\xfa\x69\x6e\x28\x0b\xf6\x5e\x7d\x89\x83\xc8\xf8\xf7\x94\xe2\x43\x1e\x81\xff\x93\xe3\xf3\x12\x96\x1a\xbb\x14\x26\x97\x9a\x7f\x21\x45\x25\xca\xc7\xe5\x44\x4f\x3a\xf5\xde\xe7\x55\x64\xbc\x5d\x9e\x30\xec\x6a\xd6\xfa\x66\x32\xf0\x3f\x75\xcb\xc3\x08\x9c\xb1\x92\xad\x1d\xe3\x4f\x03\xe0\x29\x79\x8d\x41\x63\xe0\xc9\x40\x2a\x44\xbc\x64\xc1\xd3\x62\x5f\x4b\x83\x61\x30\x4b\x79\xba\xad\x46\x4b\xdf\x36\x92\xc4\xd8\x14\xb5\x39\x93\x71\x0e\x1a\x4d\x60\x40\x8d\x42\x0a\xc7\x46\xc0\x2c\x50\x9a\x50\x75\xa9\xd8\x23\xe0\x8c\xac\x7a\x5e\x61\x72\x02\x08\xe7\x83\x14\x58\x69\x4c\x38\x5e\x84\x45\xd4\xdb\x49\x92\x24\x03\xe7\x39\xeb\xf9\xda\xaa\xdb\x76\x20\xd1\x69\x88\x46\xc6\x5c\x57\xcf\x4c\x2a\x3f\x27\x51\x54\x55\x64\x1e\x12\x2b\x13\x4e\x93\xad\x1d\x34\x4f\x76\x5e\xcc\xad\x6b\xd7\xdc\x42\x77\x92\xf1\x7c\xd2\x9b\x0d\x06\x33\x89\x6e\x0f\xae\xcd\x32\x54\xfd\x34\x99\xa9\xbe\x66\x80\x06\x31\x35\x0e\x5a\x53\x79\x63\xfc\xc8\xf6\x3a\x18\x98\x8b\xd9\xd9\x98\x6b\x8c\x6c\x78\x46\x37\x09\x47\x4d\x34\x0a\xa9\x34\x32\x7b\x80\xdc\x04\xe5\x30\x07\x27\xb0\x39\xdf\xca\x9d\xc6\xda\x58\xe7\x84\xdb\x2f\x21\x46\x5b\xbb\xe2\x1f\x8f\x05\x27\x83\x00\xe5\x27\x25\x19\xe2\x71\x31\x65\x18\xe7\x7f\x37\x4f\xbf\x22\x1e\x4f\xc1\xb6\xf8\xef\xe6\x09\xde\x71\x96\xfd\x84\xef\x11\x8f\xd3\x8c\xcb\x87\xe2\x86\xcc\xd5\xa3\xe0\x06\xe5\xd3\x55\xc9\x39\xcd\x81\x95\xcd\x04\x3f\x24\x2f\x41\xba\xac\xa4\x98\xb9\x87\xd7\x7c\x0d\xd7\xe1\x5c\x6b\xd6\x52\x10\xc5\x1b\x2d\x12\xcf\xc9\x30\xa6\xf5\x88\x85\x56\xe0\xc7\x9a\x14\x4b\x70\xbd\x3a\x2f\xf8\x60\x00\x01\xa6\xe2\x9c\xce\xb0\xd8\xbd\x54\x6c\x25\x31\xbe\xab\x15\x93\xc0\x6e\x5b\xe1\x0e\x9a\xc6\x0a\x8d\xb0\x88\x42\xb1\xc0\xa3\x17\x91\x77\x41\xf2\x68\x2f\x0f\x39\x5a\x86\x37\x08\x47\xd1\x88\x8b\x5d\x65\xfd\xea\x1a\x0c\x88\xcd\x80\xac\xd6\xe1\x2d\x9d\xe1\xaa\x87\xc5\xbe\x0c\x63\xa7\xa1\x40\x42\x8a\x16\x52\xb9\x0a\xd3\xe1\xd6\xdb\x17\x7c\xe2\x81\x9b\xd1\xfd\xd0\x9b\x51\xb1\x3f\x75\xd4\x5f\x62\x9e\x88\x5e\xc9\x01\x05\x5b\xc6\xd2\x04\xf2\x07\x2a\x48\x3d\x60\xe3\x34\xd5\xb3\xd6\xd5\x76\x4b\xba\xd5\x4a\xfe\xee\x15\xe8\x74\xa5\x6b\x6d\xa5\xcf\x1f\x2f\x48\x85\xdb\x53\x83\xc1\x46\x3d\x07\xd5\x24\xb2\x9a\xd2\x79\xb7\xd1\x7f\xd2\xef\xb0\x35\xca\x91\xb7\x63\x39\xba\x8d\x2a\x59\x47\x1c\xd3\x3c\xe4\x43\x75\xde\x05\x48\x1f\x7c\xd2\xdd\x27\x6c\xf7\xad\xbf\x33\x41\xab\x9a\x3b\x1b\x34\x87\xc8\xc8\xbc\xb1\x41\x87\x3b\xc8\xd8\x55\x02\xc0\x7d\x84\xe4\xc5\x6b\xb3\x16\xe3\x56\x2f\x4c\xbc\xb5\xc1\xb1\x92\xd7\xe5\x34\x77\x37\xe3\x5c\xec\xc0\x80\x91\x5a\x2b\xd2\x6c\xca\xd2\x49\x97\xd7\x9c\x74\x95\x29\x8e\xdc\x9b\x09\xf0\x31\x00\x76\x24\x91\x53\xe3\x2c\x2d\xf8\xd1\x9a\x3d\x1a\xed\x44\xda\x48\x67\xdd\xfe\x4c\xd5\xfe\xdc\x83\x18\x31\x8d\xad\x16\xe2\xc0\xd9\x80\x2d\xa9\xd8\xf7\x53\xb3\xf7\xe2\x08\xe5\x12\x8e\x22\x85\x88\x4f\x51\x54\xf9\xd4\x3e\x80\x15\x28\x6d\x67\xd6\x73\x69\xd8\x99\x2b\x7b\xbc\x8b\xe9\xd2\x6b\x65\xc3\xb3\xbd\x8e\x7d\xd5\x5e\xb4\x11\x56\xc8\xb1\xf5\x59\xc9\x7c\x6c\xf0\x98\x4d\x24\x37\x57\x63\xe3\x78\x14\xd3\xf9\x3c\xb4\xf3\xe5\x8f\x7f\x74\x50\x75\x1d\x06\x51\x96\xe3\xe7\xf4\x1e\x37\x21\xa8\x90\xf6\x9e\x6d\xeb\xf4\x82\xb0\x61\x79\x1e\x05\xf5\xfb\x83\x9b\xcd\xd5\x18\x5a\xf2\xff\xbc\x40\xef\x6b\xaf\x05\x36\x94\xd7\x1b\xf2\xb9\x44\xc9\xfc\x04\x29\xbd\x3e\x23\x12\xfd\x42\x49\xed\x26\x41\x42\x94\xb5\xc1\x56\xee\x9d\x5a\x5b\x72\x37\x3b\x7c\xfb\x73\x7c\xd9\xfe\xde\x6b\x95\x43\x91\x8f\xce\x60\xc0\x8c\xda\x37\xb4\x45\x27\x36\x1a\x39\x59\x40\xb7\xab\x4f\x68\x8b\x0e\x06\x64\x8f\xc8\xa5\x29\xb6\x4f\xd1\xe8\xe6\x6f\xb9\x03\x5c\xb0\x34\x2f\xe6\x98\x05\xd1\x68\x1c\x18\x21\x37\x40\x4a\xa8\x0d\x8c\x54\xab\x9e\x33\x29\x3c\x06\x5a\x82\x85\x47\x88\x1e\xa6\x64\xd6\x60\xe2\xc1\x73\xc1\xd1\x83\x2e\x7d\x4e\x3e\xfe\x48\xe9\x87\x62\x8c\x27\xc9\xc3\x92\xd1\x65\x21\x0a\x76\x6b\x32\x11\xdb\xc2\xc8\x6d\x68\xa3\xd7\x6d\x77\x25\x5b\x3b\xd1\x26\x56\xd7\x8f\x6a\x90\x3c\x33\xb7\x5b\x93\xf6\xd8\x44\x7e\xaa\xaa\xe9\xcb\x29\x95\x7c\x08\x4d\x4f\x50\x47\xaa\x8a\x3f\x49\x07\xb9\xae\xdd\x5e\x3c\xe5\x2e\x6d\xac\x1b\xbd\x3a\xd8\x02\xb8\x0f\x29\x4c\x0e\x06\xd8\x2a\xc7\xf7\x9c\x67\xa9\xed\x32\x8a\xf2\x4f\x83\x0e\xac\xf9\x36\x7a\x79\x31\xcd\x35\xaf\x56\x58\xb3\xcd\xe2\x51\x72\xd5\xe2\x49\x73\xda\x82\x6b\xbd\xbb\x21\xd3\x9b\xef\x77\x35\xd6\x96\x60\x4a\x01\xa3\xef\x31\x1f\x21\xcf\xd0\xfd\x41\xdd\xf8\xf5\x0b\x91\xa5\x6f\x59\x83\xfe\x22\xbd\xef\x93\x9c\x33\x3a\x2b\xa7\xb8\x3f\x65\xb4\x28\xb6\x0b\xc2\x71\x5f\xa2\x3f\x88\x3c\xb7\x65\x96\x0b\x66\x9c\x64\x84\x13\x5c\xbc\xe8\x2f\x33\x9c\x0a\x7e\x29\x07\x81\x9c\xdf\xa4\xbc\x0f\xfd\x50\xf4\xaf\xb0\xc8\x70\x45\xcb\x7c\xd6\x4f\x19\xee\x2f\xa1\xdf\xb2\xfb\xbe\xb4\xf4\x98\xc5\xfd\x37\x94\x29\x1c\x8f\x7c\x4e\xd9\x02\xea\x8d\xfa\x24\x9f\x66\x25\x54\xf0\x86\xde\x09\x71\x5e\x59\x13\xc1\x91\xd9\xbf\x4b\x59\x4e\xf2\x6b\xd4\x2f\x30\xee\xdf\x70\xbe\x2c\x46\xcf\x9e\xc1\xc4\xf8\x67\x11\x4f\xe9\xe2\x99\xb3\xfe\x8a\x67\xb7\xbb\xf1\xc7\x67\xff\x87\xd3\xe9\xe5\x95\x6c\xf4\x36\x34\x7a\xdb\x36\x3a\xee\x9f\xcb\x6e\x98\xcf\xf1\x94\xe3\xd9\xa8\x1f\xfc\x61\x88\x87\x7f\x08\xfe\xa0\x10\xe7\x8c\x03\xa4\x77\x10\x95\x7d\x79\x50\xf7\x41\x18\x2d\x52\x22\x8e\x52\x96\x58\x28\xbb\x7a\xa0\x3b\xff\x66\xa6\x54\x56\x63\x3c\xe9\x29\x21\x24\x77\xae\x20\xc5\x7e\x0d\x3c\x4e\x0e\x7b\x13\x53\x15\x94\x6e\x8e\x49\x2e\x7f\x39\xfc\xa7\x6f\xd9\x12\x85\xab\xb0\x5a\xc9\x70\xf1\xb8\xe1\x69\xe8\xcb\x43\x5b\x79\x8a\xae\x72\x00\x31\xb1\x06\xb1\x57\x74\x91\x17\x49\x69\x2d\x69\xd3\x97\xaf\x7e\x67\x64\x63\x22\x99\xb4\x5d\xf5\xa6\xf5\xb4\x35\x93\xd5\xd6\x28\x32\x63\x12\x63\xe2\x4b\xad\x1f\x55\x3d\xa0\xa5\x84\x09\x43\x32\xe2\x9e\x53\x42\x81\x70\xcd\xe2\xd5\x2b\xc3\x6b\xb8\xcc\x9e\x31\xf1\x66\x83\x41\xc8\x12\x80\xe0\xe9\x81\xc9\xac\xbc\xf1\x96\xab\x3c\x13\x2c\xa7\x53\x46\x69\x47\x4e\xba\x37\x27\x99\x7d\x73\x06\xf1\x9a\xa7\xf6\x85\xe3\x9c\xec\x1b\xe0\xa9\x68\xb3\xe8\x25\x9b\x2c\x8c\xaa\x46\x09\x35\x57\xe3\x75\x54\xda\xa9\x25\xb1\x05\xf0\x83\x1d\xf6\xf2\x73\x05\x54\xa6\xa7\x82\x92\xb5\xdb\x60\x9c\x16\xc9\xdb\x0a\xe4\x96\xc1\x55\x6f\x42\x6e\x60\x4e\x1d\x61\x50\x06\xa4\x92\xdd\xcc\x9c\xf7\xd1\x8b\x26\x00\xad\x91\xd7\x24\xa8\x21\xce\x4e\x54\xdd\x6b\xd0\x7d\x2e\x46\x1a\x6d\x61\xce\xa4\x7e\xac\xb1\xc2\xee\x1e\xe2\xfb\x39\x36\xb7\xf0\x16\x26\x15\xf1\xca\xb1\x0c\x71\x26\xcd\x78\x82\x72\x3b\x73\x6a\xd0\x6a\x3a\xe6\xe6\x63\xfb\xca\x56\xbe\x5a\xe5\xb1\x1b\xed\xa8\xf6\x1b\xcf\x56\xab\xc6\x2e\x63\xaa\x92\xb9\xc7\x7f\xcd\xe6\x40\x4e\xc1\x1a\xbe\xd0\xd4\xb6\x33\x93\x11\x09\x1b\x5a\xab\x33\x69\xeb\xd8\x73\xdd\x85\xe1\xfa\xe3\x15\x9e\x53\x86\x43\xc1\xd2\xb1\x42\x0e\x10\x92\xee\xca\xf9\x6c\x7f\x0e\x56\x49\x20\x71\xaa\x2f\xe0\x18\x30\x4f\x1c\x9c\x30\xa3\x2f\x57\x7b\xc3\x9e\xfa\xeb\xa0\xff\xa8\xb9\xb8\x5a\x75\x7e\x3a\x37\x0a\x68\x4f\x12\xfa\xfb\xc9\x06\xa9\x8a\x0d\x12\xd1\x0d\xd2\xdc\xe1\xab\x0f\x84\x37\x12\xaa\x10\x4b\x3d\x77\x76\xce\x37\x60\xc9\x5a\xd0\x25\x9b\x39\x93\x6d\x82\x87\x22\xad\xcd\xfe\x8d\x7e\x0f\x8d\xc0\x06\xfa\xd2\x92\xc7\x20\x82\xe2\x19\xe2\xb1\xd4\x2d\x28\xa9\x19\x3d\x90\x42\xec\x67\xa3\xad\x1d\xa4\x6c\xe3\x46\x06\x5c\xbe\x75\x15\x65\xac\x74\x1f\x37\x13\x91\x76\x75\xc1\x92\x61\x69\x74\x12\x78\xcc\x47\x6a\x26\x79\xb1\x49\x8a\xb6\x6a\x26\x34\xce\x5d\x8a\xba\x47\x79\x9d\xe6\x39\xe5\xca\xc6\x8a\x93\x94\xe3\x7e\xda\x37\xee\x6e\xfd\x3b\xc2\x6f\x68\xc9\xfb\x69\xdf\x2c\xc8\xfe\xbb\x36\x4f\x76\x4f\x4b\x60\xc2\x60\xed\x09\xde\x4a\x46\xbf\x1c\x06\x40\xa0\x9f\x2a\xee\xac\x6f\x42\xae\x3c\xd3\xa7\x5e\x1c\x44\x95\x63\xc2\xa2\xed\x55\x04\xd7\xb9\x00\x95\x20\x4f\x49\x56\xb7\x94\x35\x7b\x84\xc4\xea\x53\x66\x29\x06\x91\xce\xee\xef\x10\xd1\x41\x75\x4c\x2b\xd2\x03\xc2\xa0\xa3\x96\x61\xcc\x70\x85\x94\xf1\xe9\xa6\x5e\x67\xcc\xef\x75\x96\x27\xbb\x2f\xf2\x97\x1c\xa0\x75\xd9\x38\xaf\xbb\x2f\xe5\x93\xde\xa3\x43\xae\x36\x7f\xb0\xcc\x96\xb6\xdc\x1e\x65\x26\x89\x0c\xbf\xe5\x10\x61\x60\x6e\xe3\xeb\xab\x8e\xb8\xa5\x63\x3c\x51\x01\x45\xd5\x95\xa8\xb4\x02\xce\xdd\xa0\x8e\xa1\x9a\xd4\x2a\xd8\x2c\x2c\x19\x7d\x40\xb9\xf1\x12\x36\xde\x1b\xd4\x32\xde\x18\xfa\xc9\xcd\xf5\x6c\xc9\xf0\x25\x53\x6b\x60\xf3\x5c\x37\x69\xa1\x6d\xb4\x9f\x92\x8d\xe4\x97\x33\xba\x78\x4a\x8e\x99\x8d\xf1\xf7\xef\x74\x1a\xa9\xfb\x00\x3d\x98\xc5\x3f\xe2\xce\xee\x73\x70\x7a\x32\x32\xf8\x0b\x62\x9e\xe8\xab\x72\xbb\x45\xd9\xea\x8f\x2c\x9a\x42\x2d\x54\xd4\x13\x47\xf9\x99\xca\xe8\x1d\x6d\x19\xc4\xe1\xdf\x63\x07\xfd\xe0\xf5\x1f\x8b\x1e\xec\x76\x68\xba\x2a\x0c\x7e\xa5\x65\x7f\x9a\xe6\x7f\xe0\x7d\x51\x15\x27\x67\x9f\x96\xbc\x20\x33\xdc\x87\xf5\x83\xd5\x96\x28\xb6\x3b\x15\xd7\x2a\xe8\x32\x78\x73\x30\x71\xbd\x76\x9e\x5e\x75\x72\xe5\x44\x5c\x50\x63\xcb\x9e\xea\x3c\xd5\x35\x3d\x37\x0c\xc5\x20\xc7\xe8\x49\x2b\x40\x0e\xf8\xbf\x2f\x3c\x8c\x8e\x10\xa4\xed\x2d\xec\x1c\x7f\x7c\xd0\x99\x6f\xd0\x85\xa4\x50\x1f\xf5\xbc\x9f\xf6\x45\x2b\x95\xce\x61\x66\xa2\x85\x46\xfe\xd1\xdc\xa4\x00\x9d\x6f\x2d\xf5\x2a\x42\xcd\xd5\x4d\x3e\x6b\x3d\xd6\x76\xc2\xcd\xa6\xc0\x13\x16\xb9\xce\xc2\xca\x3c\xa3\xd4\xc1\xc5\xb3\xe7\xb9\x54\x5c\xfe\x3b\x37\xc7\xe6\xfc\xb0\xdb\xdd\x43\x7b\xec\x70\xf4\xe0\x88\x1e\xc6\xc6\x1a\xfb\xee\x7b\x9a\x69\xe1\xca\x03\xaf\x31\x79\x15\xac\xaa\xda\x06\xb0\x0a\xf0\x00\x1e\x34\x24\x9e\x67\xe9\xf5\x35\x9e\x1d\x99\x6e\x8a\xc2\x00\xba\x5d\x5e\x71\xc5\xc1\x90\x23\x69\x2b\x37\x62\x48\xf4\xfd\x08\x57\xa8\x8d\xe5\x0d\xb1\xb3\xfe\x49\x49\x1e\x85\x18\xc2\x29\x00\x47\x23\x81\x5d\x23\x69\xac\xdd\x98\x4d\xd4\x9d\x4d\x9b\x78\xbd\x78\x0f\xc8\x27\xb9\x5e\x7c\x89\x5d\xc6\x9d\xc6\xff\xe6\xb9\x54\xb3\xed\x22\x76\x2e\x49\x13\xb6\xce\xc9\x21\x2f\x23\xa5\xc6\xe8\x23\xe1\x5d\x09\xcb\xdc\x4d\xfa\xc5\x07\xcc\x65\x9f\x3e\x89\xff\x6a\x2d\x75\x3b\x9a\xff\x2e\xb9\xac\x39\x06\xdc\x46\x57\x23\x8d\xce\xca\xa3\x6e\x0e\xd5\xb9\x94\x7c\x76\x9d\xd1\xab\x34\x2b\xb6\x19\x2e\x68\x76\xdb\xec\x9c\xc7\x22\xaa\x7d\xaa\x6b\x91\x09\x0f\xf5\x34\xb1\xf8\x3a\x23\x8b\x85\xcb\xff\x3e\xd9\x26\xd8\x73\xdb\x98\x7d\xfe\xf0\xa0\x32\xfe\xe1\xf8\xf4\xd5\xfe\xf1\xf9\xe5\xd9\xe1\xf9\xe9\xf1\xcf\x87\x67\x83\x41\x98\x7d\xa5\x18\xb3\x88\x28\x3d\x4f\xe2\x75\xf5\x91\xdf\x6c\x74\x41\xc4\xa3\x4a\xa9\xcd\x3c\x61\x69\xd3\x56\x58\x5a\x29\x14\x2d\x53\x56\x40\x9c\x55\x09\xa8\x0b\x33\xaf\x05\xb7\x53\xa1\x34\xce\x29\x5b\x80\x2b\xb5\xff\x26\x66\x99\x11\x1e\x06\x23\xd0\xd8\xf3\xf1\xce\x04\xe5\x09\x1f\xef\x6a\xd5\xbd\x41\x99\x09\xb6\x92\x84\xed\xb1\x61\x30\x0a\x86\x42\x06\x03\xbf\xe7\xf0\x59\xf8\x5b\xbc\xba\x5c\x6d\x47\xf1\xb3\xeb\xfa\xf5\x9b\x6d\xed\x4d\xca\xf6\x79\xb8\x1b\xc5\x9c\xbe\x5f\x2e\x31\x7b\x9d\x16\x38\x14\x7b\xbe\x38\x27\xd2\x58\xcd\xeb\x76\xe5\xb4\x73\x9f\x69\x28\x58\x3a\x24\x4c\xe7\x90\x91\x95\xc5\x07\x37\x42\xc0\x38\x9f\x98\xb0\xf3\xe3\x7c\x12\x32\x69\x57\xa4\x44\x49\x95\xf5\x94\xdf\x60\x16\x32\xe8\x1e\x43\xbe\x13\xb2\xb9\xd1\xd5\x20\x98\x86\x1d\x5f\x92\xc6\x7b\x08\x3f\x81\x52\xe7\xcd\x86\xa3\x40\x60\x14\x50\x9a\x10\x54\x98\x68\xbf\x6e\x48\x61\x19\x0b\x3a\x42\x65\x92\xd6\x8d\x50\x9e\x05\x11\xca\x12\xb0\x51\x29\xf7\xd2\xb8\xc8\xc8\x14\x87\x3b\xa8\x8c\x40\x7d\x01\x42\x7b\x6d\x50\x07\x03\x99\x56\xd6\x66\x9a\xa4\xba\x36\xcf\x82\xa8\x97\x26\xd3\xf1\xd4\x60\xb7\x4b\x60\x9a\x79\x02\x91\xb0\xad\x8f\x7e\x14\x4e\x4d\x31\xdb\xbb\x11\x9c\xf2\x61\x10\x07\x51\xd4\x53\x75\xaf\x85\xce\x8d\xc2\x79\xa4\xa2\xa6\x04\x70\xad\x20\x01\xf0\x4f\xc4\xa3\x8c\xed\x0d\xc6\x1a\x64\x7e\x1f\x09\x99\x02\x60\x6c\x56\xab\x2d\xe6\xb7\xb5\x3d\xca\x6f\xd3\x8c\xcc\xfa\x3a\xb0\xe5\xa8\xff\x0f\x08\x7a\xf5\x0f\xd4\x5f\x94\x05\xef\x5f\x19\x89\x68\x4e\xd9\xa2\xff\x0f\xb1\xb6\x46\xa2\x03\xff\xd1\x37\xf7\x19\x0f\x26\x33\x46\xf0\x9d\x21\xfd\xe6\x17\xa9\x63\x02\xaf\x40\x82\x66\x84\x89\xac\xa3\x0c\xc1\x9f\x14\xcc\xba\x47\x05\x6a\x4d\xc9\x51\xa0\x5e\x05\xc3\x59\x25\x26\x40\x3d\xc2\x94\x17\xf4\xc6\x37\xe1\x5b\xcb\x30\x49\x12\x06\x01\x12\xf7\xcc\xbb\x7e\xca\xfb\xc1\x90\xc5\x9e\x2a\xdb\x85\xfa\x9b\x58\xa1\x62\x48\x47\x21\x17\x6b\x88\x52\x3e\x0c\xe2\x60\xd8\xec\x6f\xb0\x6a\x8a\x9a\xf9\x82\x08\xe2\x55\xe3\x0c\x66\x0c\x94\x2f\x56\xd9\x30\x69\x65\x87\x68\xa1\x11\x5c\x65\xa4\x10\xf3\xea\xa2\x15\x28\xdb\xdd\x1d\x9c\x58\x0d\x28\x8d\xcb\x02\x9f\xd1\x92\x63\xf6\x36\x5d\x34\xb3\x04\x57\x69\x41\xa6\x01\x58\xd7\x41\xa8\x09\xf9\x27\x09\x82\x91\x7a\x92\x7f\x9a\x55\xbf\x0c\x22\x67\x9b\xb9\x50\x7d\xe6\x5d\x85\x9b\x75\x60\xcf\xf0\xb3\x10\xbc\x4d\x53\x8c\x34\xc7\xdc\x78\x0b\x3d\x34\xc3\xd3\x74\x81\xe5\x5a\xe1\x91\x5b\xa1\xae\xcb\x4a\x98\x09\x8d\xfe\x08\x35\x5e\x43\x6d\x1b\xc3\x2e\xb9\xd7\x34\xe7\x8c\x66\x19\x66\x5f\x90\x28\x24\xff\x82\xf4\x4e\xc4\x4c\xf2\x8c\x40\x63\x32\xc9\xf1\x74\xfa\x5b\xed\x81\x18\x66\xaf\x9a\x62\x8a\xe4\x8f\x38\x5b\xae\x69\x73\x77\x5d\xe0\xd5\xc6\x75\x69\x2e\x17\x19\xab\x74\xb3\x2a\x8a\xfd\x6d\x93\x82\x36\xa0\xf8\x21\xa7\x77\xf9\x1b\xca\xc4\x0c\xed\xb0\xfb\x5d\x77\x64\x90\x56\xa1\x82\x97\x17\xfb\xaa\x8c\xc8\x19\x92\x61\xf0\x4d\x10\xa1\xa2\x83\xab\x40\x65\x52\xbf\xd1\x47\x59\xb2\xf3\x22\x7b\x59\x6a\xc3\xc9\x4c\x1b\x4e\x4e\x93\x72\x9c\x81\xa2\x38\x95\xd1\x38\xa6\x51\x54\x8c\x15\xfe\x55\x9a\x17\x62\x89\x5c\x50\xa3\xf9\x7e\x53\x66\x59\x0e\x1b\x1f\x9a\x46\x93\x64\x6b\x47\x5b\x94\x17\xa2\xd5\xeb\x72\x78\xef\x99\xdb\xad\xcc\x13\xee\x9c\x54\x7f\x64\x3a\x38\xa0\xb1\x13\x04\xfe\x46\x2e\xd9\xb4\x10\x8c\x9d\x58\xb1\xb9\x0c\x50\x9f\x2a\x07\xb1\x48\xbb\x5c\x66\xdd\x2e\x96\x2e\x07\xbf\x51\x38\x81\x86\x09\x90\x9b\x5f\x08\x3a\x59\xfa\xfb\xfd\x65\x46\xd3\x59\x77\x12\xd7\x92\xf1\x2b\x68\xb8\xd6\xa1\x3c\x9f\xca\xca\x6f\x88\xdc\xae\x33\x3c\x86\xbb\xfc\x34\xaa\xc5\x26\x54\x69\x7e\x0c\x7d\xb8\x21\x0a\xb1\x4c\xbe\x96\x22\x2b\x21\x0d\xd8\xdf\x6d\x4c\xd7\xcd\xb4\x96\x3a\x0c\xf9\xc6\xa0\xf8\x2c\x56\xe9\xd7\xd2\x34\x62\xf2\x93\x51\x91\xd7\x4d\x71\x15\xd2\xf8\xe9\x7a\xbb\x6e\x1f\xda\x27\x61\x5a\x38\x0a\x9b\xfc\x9a\xe4\xd8\xa9\xd2\x1a\x39\xb5\x53\x14\xfd\x2a\xfa\x81\x22\x31\x78\xcd\xc6\xc9\xd4\xe9\x45\x79\xbd\x38\x2d\x0b\x4e\x17\x0a\x4c\x09\xde\xb8\xae\x83\x9f\xe3\x31\xef\x14\x15\x5f\xde\xa5\x7c\x7a\x73\xa4\xfa\x48\x19\xeb\xab\xa3\x52\xe9\x78\x02\xd7\x36\x7a\x5b\x77\xa7\x34\x04\x92\xb8\x3c\x0f\xce\xc5\xec\x68\x6b\xb7\x8a\x2a\x74\x79\x45\x29\x3f\xbf\xcf\xa7\xbe\x4b\x51\x59\x4f\x91\x02\xcf\x56\xab\x10\xc3\x91\x53\x1a\x86\x01\x7c\xca\xce\xd4\xd5\x6b\x08\x21\xfd\x9d\xa6\xef\xc9\xda\xd9\x17\x49\xed\xf3\xa8\xf5\xb9\xd5\x66\xe7\x23\x84\x7c\x95\xaf\xc1\xbf\x91\x59\xff\xc6\x98\x01\x33\x83\x02\x9d\x20\x70\x12\x7b\x7a\x92\x95\xb9\xee\xc6\xa3\x9c\x70\x02\x12\x11\x2b\x54\x97\x9a\xe0\xc9\xe9\x94\x93\x5b\xec\x7a\xd5\x35\x6c\xc5\x8d\xcb\xa7\xec\x9f\x64\x6b\x47\x43\x48\xd4\xfa\xa5\x8d\xb6\xe4\x00\x86\x34\xba\x50\xd2\xbb\xd4\xb7\xd9\x97\x97\x80\xb9\x24\xdb\x27\x0d\x3d\xa7\x74\xb1\x2c\x39\x9e\x45\x5d\xc1\x17\x8d\x39\x98\xca\x25\xcd\xc0\xaa\x48\x48\x08\xe9\xec\x34\xcf\xee\xc3\x08\xcd\xc8\xec\xb5\xb4\x6b\x51\xf6\x82\x0d\x0d\x62\x0d\x1a\xc3\x1d\x86\xa8\x42\x60\x1b\x2d\xf8\xc7\x86\x45\xbd\x33\x14\xb1\x9b\xc6\x74\xd3\x8c\xcc\xce\xa1\xb5\x90\x46\xf0\x0a\xaa\xa3\x64\x45\x5b\xcb\xa3\x9e\xde\x48\xf0\x2d\x32\xa8\x56\xb2\xfd\x14\x5a\xc0\x88\xf7\x67\xc7\x9d\xd3\xbb\x96\xa3\x46\xcb\xe4\x05\x06\xd4\x37\x05\x5a\xee\x1a\x49\x6d\x08\x9a\xc8\x06\xda\xd2\x32\x6f\xe0\xa1\xba\xd3\x13\x05\xee\x7e\xa2\x79\xbf\x1a\x78\x6a\x23\x41\xfb\x52\x22\x47\xc4\x71\xa4\x80\x8a\x87\x14\xb5\xc6\x12\xe1\x4a\x9c\x21\xb5\xce\x69\x70\xe1\xb2\x23\x4a\x96\x55\xe8\x96\x14\x0d\x4d\xb3\x05\xa8\xe9\xb5\x7b\xb2\xe7\x7a\x34\x5f\x1a\x13\x8a\xcb\x4b\x6b\xaf\xe8\x1c\x13\xba\x67\xa4\xa9\x82\x5e\xd1\x34\xf1\x1d\x6f\x14\xa4\xf1\x22\x2e\x6e\x68\x99\xcd\xe4\xdd\xb4\x04\xe3\x90\xca\xe8\x73\xcc\x39\x38\x25\x47\x31\xbf\xc1\xb9\x77\xa1\x54\x51\x34\xe2\x15\x72\xf1\x75\x89\xb3\x81\x98\xde\x83\x46\xc9\x19\x80\x88\x33\x21\x40\x64\x14\x0f\x91\x2a\x84\xda\x73\xc9\x84\x65\xe6\x31\x5c\x45\x28\x2d\x88\xfa\x05\xea\x9c\x0b\x83\x9b\xb5\x7f\x45\x19\xc7\xb3\x40\x3a\x7c\x81\xa1\x37\x89\x2f\x65\xfb\x4f\xc8\x94\xd1\x8c\x5c\xc5\x72\x2b\xb2\x99\xac\xbd\xc6\x63\x29\x75\xe5\x70\xd4\x83\x5a\xac\x2b\x79\xcf\xda\xf1\xf0\x78\x21\x2d\xb2\x45\x2f\x45\x75\xf8\x98\xcf\x3d\xc7\xca\xdc\x73\x92\x55\x55\xd4\x2b\xea\x86\x22\x5d\x9b\xa8\x27\x5a\xfc\x43\x15\x21\x1e\x73\x7a\x68\x27\x94\xd8\x2e\xd4\x69\xc5\xc1\x37\xcd\x39\x25\x5b\xf3\xae\x99\x39\x8c\xda\x27\x65\x8d\x44\x81\xd9\x2d\x99\xe2\xd1\xb6\x36\x13\x14\x24\xf4\xb3\x27\x6f\xcd\x2a\x06\xd0\x67\xe4\xfa\x28\xbb\x62\xe2\x39\x4d\x94\x60\xca\x0f\x9a\x8a\xf6\x07\xd1\x6e\x2e\xf0\xb2\x76\x64\x81\x47\x75\x71\x70\x7a\xa2\x8a\x95\xab\x42\x88\xf0\x09\x76\x7f\x21\xc7\x3a\x95\x14\xaf\x24\xef\xb6\xa7\xe8\xa9\x9f\xc9\x2b\x19\xc1\x33\x74\x92\x28\x38\x64\x9b\xa6\x5e\x9e\x79\xaf\x77\x6c\x55\x63\x60\x84\x3c\xb5\xdd\xda\x45\x6a\xd3\x94\x33\x24\x09\x72\x9a\x0b\xa1\xd7\xa9\x5e\x6d\xa9\xcb\xbd\xc6\x79\xe3\x54\xd2\x7d\xad\xea\x59\x4b\xa9\x4f\x0b\xf7\xe5\xc6\xf5\x04\x26\x51\x0d\xb2\xac\x85\xfe\x95\xd8\x0f\xa3\xfa\x07\x9f\xa5\xa7\xa1\x61\xf2\x40\x99\x35\xee\x48\xc7\xfb\xeb\x64\x9f\x6a\xfd\xe3\xb0\x46\xf5\xbe\x74\x19\x21\x27\xbd\x6c\xaa\x4e\xad\x1a\xae\x5f\x47\xf5\x89\x51\x63\x86\x42\x4f\xc7\xb8\x53\xc4\x79\x1f\x19\xef\x72\x5c\x8b\x64\xe9\xac\xb3\xa4\x75\x7c\xb6\x4e\x32\xe7\x1c\x93\x93\x2c\xa9\x4f\xb2\x26\xbf\x96\xb4\x2b\x88\x6a\xb3\x3e\x69\x2e\x0a\x84\xf5\x89\x62\x8c\xf7\x70\x15\x46\x28\x4b\x0a\x47\x5b\x90\x75\x8b\x52\x4d\x51\xfe\x0b\x5d\xf7\x7d\xa6\xa7\x60\xed\x72\xb0\x65\x42\xd1\x2d\xce\x6d\xa0\xc7\xf8\x6c\xd4\x24\x26\x39\x43\x7f\xa1\x6d\x31\x50\xca\x87\x5e\x4a\x86\xaf\xf8\x4a\x97\x9b\x36\x3e\x1f\x5a\xa2\x05\xba\xed\xf2\xdb\xba\xaf\xcf\x60\x0e\x06\x18\x5a\xa5\x7c\x4c\xc4\x5c\xcc\xd4\x7d\xe3\x38\xd8\xbe\x2a\xa7\x1f\x30\xdf\x9e\xa6\xd3\x1b\x25\x9e\x4d\xcc\x3c\xbf\xf7\xf0\x3c\x30\x25\xbf\x8c\x44\x7b\x2d\xf6\xdb\xab\xe4\xa6\x25\xd6\x7a\xe0\x6e\x70\x83\xd9\xed\x90\x76\xd3\x92\x53\x21\x02\x81\xa1\xb2\xba\xfc\x16\x0b\x0b\x7e\x3b\x23\xab\x4f\xfc\xe2\xb3\x64\xe2\x6f\xf4\x76\xfd\x4d\x32\x35\x1b\xd6\x9d\x11\x32\x84\x90\x43\x72\x5c\x14\x07\x78\x8e\x19\x4b\xb3\x22\xd9\x6d\x88\x69\xfa\xb7\xaf\x6a\xda\xcd\x41\xf1\x2d\xaa\x65\x6a\xcf\x70\xda\x66\x36\xbd\x5a\x3a\x5d\x09\x27\xa1\x92\x1f\x2f\x97\x0c\x2f\x53\x86\xdf\x50\xf6\x83\xfd\xa8\x6b\xad\xf3\xab\xc4\x77\x29\xe1\x6f\x28\x3b\x38\x3d\x39\xc3\xe9\xec\x3e\x04\x04\x67\x92\xcd\x74\x2d\x7d\xa2\x8c\x87\x5d\xc0\xf1\x55\x5a\x60\xb5\xa9\xb9\x3c\x98\x7c\x35\x33\x53\x40\xa1\x13\x01\x6c\x73\x8d\x37\xf3\x80\x13\xfb\x3a\x4d\x05\xda\xae\x50\x93\xb7\xeb\x56\x29\x78\xc9\x38\x7e\x50\xfe\xfe\x6a\x4d\x17\x25\x03\x86\xce\x8f\xd5\x6a\xae\x9e\x22\x3d\xb7\x8d\x9c\x2e\x3a\xf1\xc0\x6c\x01\x86\x03\x05\x2d\x88\xff\x5b\x87\x80\x57\x1b\x8e\x30\x52\x76\xd8\x97\xb3\x56\xfe\xcb\x4b\x1d\xcd\xb8\x26\x03\x09\x46\xcc\xfd\x5d\xa1\xc6\x98\xbb\xe5\x6e\xe9\x79\x2f\xff\xc6\xa4\x80\x24\x52\xe4\x29\xa6\x37\x58\x2c\xfd\x28\x54\xe1\x36\x34\xda\x73\x30\xa3\x0b\x48\x17\x28\x3e\xe8\x9b\x50\xaa\x00\xee\x25\x94\xc6\x15\xc9\x67\x5a\xa0\xb4\x49\xa3\x0a\xe9\x1f\xad\xce\xae\xb9\xdd\xd8\x25\x75\x7e\x9f\x4f\x43\xb0\x68\x9b\x63\x76\xa6\x97\x5f\x7b\x65\xb7\x57\xe6\x70\x58\xa1\x74\x76\x2b\xfa\xe9\x49\xf9\xb6\xb7\xd1\x8e\xc6\x8f\xf4\x7c\x06\xfd\x50\x1a\xd3\x7c\x8a\x55\x03\x25\x4b\x46\x66\xaf\xf0\x94\x2e\xa0\xac\x7b\xb1\xa6\xc4\x9e\xe5\x73\xa1\x10\x1f\xde\x31\xba\x20\x05\x8e\x5a\x8a\x30\xf5\xa1\xc7\xd9\xfd\x43\xab\x13\xa6\x62\xf6\x8b\xc9\x5e\x75\xe5\xf3\x2a\xdc\x24\x30\x83\xbb\x4b\xd5\x66\x1b\xbc\x3b\x53\xd6\x44\x49\x16\x9f\x9d\xff\xfc\x2e\x86\xee\x36\x53\xcf\x29\x41\x46\xb8\xae\xd7\x11\x54\x5e\x8e\xaa\x2b\x42\xe1\x0e\x2a\x6b\x5a\x6d\x31\x81\x5c\x26\xc6\x51\x30\x36\xc7\xc8\x34\x94\x6b\xe3\x54\x21\x1b\xfd\x53\xa2\xe5\x22\x5e\x01\xfa\x6c\x51\x57\x4e\xbb\xcd\xf1\xae\x93\xde\x46\xfb\xb7\x6e\xa3\x65\xd2\xeb\x9d\xd3\x78\x2f\xb7\x7b\x89\xc5\x09\x86\x8c\x30\x1d\x5c\x85\x80\xd4\x1b\x94\x60\xe3\x18\x28\xa3\xcc\xe0\xd1\x0d\x03\x3d\xb2\xf6\xcc\x18\x83\xe6\xad\x42\xf5\xb9\x57\x9b\xe3\xec\x5e\xf6\x4d\x4f\x62\xdc\xd0\x98\x14\x17\xb8\x10\xec\x51\x14\x46\xab\x55\x08\xf7\xd3\xca\x20\x7c\x5f\xde\x76\xc3\xad\x60\x11\xc9\x6a\x80\x86\xc2\xbc\x3d\xc7\x29\x9b\xde\x58\x5c\xb6\xad\x9d\xa8\x71\xc6\x44\x21\x6e\x1f\x67\x7b\x6b\x06\x66\xe4\xdb\xf1\x22\x77\xda\x6b\x35\x34\x9c\x55\x00\xb6\xe3\x6a\xff\x7a\xed\x61\xd2\x17\xac\xae\x16\xdb\x6a\x51\x9b\x93\xcb\x9b\xdf\x99\x6d\x88\x35\x3b\xd5\x05\xa7\xfe\x74\xd5\xc5\xe3\x9d\xbb\xdb\xac\xfb\x93\xa7\x6a\xa9\x2f\x80\x6a\xe7\xb3\xdc\xdb\x06\x83\xd0\xff\x59\x9e\xf5\xd1\x1a\x36\xa6\x16\x32\xde\x9f\xc2\xeb\x7a\xe9\x80\x5b\x4b\xf4\x60\xb8\x41\x5a\x43\x45\x45\x94\x8f\xda\xea\x41\x7b\xa9\x0b\x0a\x42\x77\x3f\x14\xdd\xe0\x53\xce\x49\x8d\x21\x6b\x9d\xae\x46\xf3\x07\x19\x79\xb7\x5a\x2f\x8f\xa1\x16\x82\x83\x88\xa2\x58\x4e\xa3\xb0\xce\xc3\x30\x7a\x67\x97\x7c\xee\x2e\x79\x5c\x45\xca\xae\xd9\xb2\xf5\x97\xda\xa0\x56\x2b\x7e\x5c\xa5\x3a\xd2\x8c\x86\xe1\x33\x1a\x7a\x26\x8f\x3f\x36\x7a\x90\xcc\x56\x47\xbc\xa2\xb6\x39\x60\x43\xf1\x04\xe5\x8f\xa4\x61\x8d\x2e\xbf\x9e\xc2\xaf\x73\x46\xd3\xb8\x89\x74\x03\xae\xe0\xff\x94\x61\x53\x1a\x0d\x73\x6c\x0f\x90\x7b\x2a\x68\x2d\xad\x5b\x9e\xd6\x2f\x8c\xc4\x06\x23\xea\xb4\x5f\x72\x7a\x6c\x94\x0e\xde\xa4\x37\x69\x71\x23\x92\xfe\x98\x16\x37\x8f\x25\x25\x05\xa7\xec\x1e\x52\xcb\xc7\x47\x32\x80\xf2\x08\xcd\xe3\xb7\x34\xc7\xde\xa4\xe1\x0e\x5a\xc6\x4b\x46\x6e\x53\x0e\xb6\x02\xf7\x62\xdc\x3a\x87\x05\x8c\xd7\xe6\xf1\x2b\x90\xd8\xc0\x66\xb0\x39\x24\x5a\x17\x28\x7b\xd0\xce\x8a\x73\xf9\xbe\xd1\xcf\xcd\xd4\xc1\xa5\x79\xaa\x5f\xd8\x98\x39\x78\x17\x46\x0f\xd7\xab\x55\x78\x9d\x6c\xed\xa0\x5b\x2f\x32\x8e\x05\x44\xdf\x9a\x36\xe0\x61\x06\x83\x22\xce\xc8\x15\x4b\x19\xc1\xf6\xaa\xf0\x35\x65\xf8\x18\xde\xde\x87\x26\x40\x3c\xe0\xc6\x69\x70\xa6\x28\x96\x38\x31\x51\x54\x5d\xd5\xf5\xb2\xb0\x3a\xdb\x7a\xd9\xfa\x11\xbf\xce\x25\x51\x75\xac\x58\x5b\xa2\xcc\x85\xbc\x37\xd8\xb7\xd3\x4c\x13\x07\x03\x10\xac\x75\xa5\x87\xc9\x95\xa3\x8f\x39\x5c\xaf\x8f\x71\xb4\x16\x5f\x1e\x8f\xe9\x2b\xd8\xa6\x4b\xbb\x05\xaf\x4d\x0c\x01\x80\x8d\x31\x9e\x24\x39\x18\xb2\x8e\x27\x48\x3c\x48\xb7\x77\x1e\x21\x36\x18\xf0\x50\x42\x3b\xb8\xfc\x5c\x1b\x8c\x80\x80\xb5\x2b\x62\xf1\x1d\xc9\x67\xf4\x6e\x30\xf0\xf8\x71\xbe\xb6\xd2\xbd\x06\x52\x13\x0b\xc0\x79\x1d\x62\xf4\x20\x61\x18\x47\x5c\xda\x54\xe2\x2a\xea\x69\xa2\xb1\xde\x78\x64\x5a\x1a\x55\xa2\xae\x83\x01\xd4\x78\xed\x91\x13\x72\xc9\x2a\x61\x7d\xe4\x35\xfd\xa7\x0f\xdf\xfe\x1c\x1f\x9e\xbc\x3a\x3c\xbb\x3c\x3e\xdd\x3f\xb8\xfc\xf1\xf4\xf4\xa7\xf3\xd5\xea\xa1\x42\x24\x79\xa8\x10\x4d\x48\xcf\x66\xa5\x55\x14\xf5\xec\xec\x98\xa6\x62\x4b\x35\x2a\x9f\xcd\xec\x7b\xbc\x33\xe3\xab\x3a\x28\x90\xe2\x30\x97\x98\x4e\x6d\xd8\x0f\x98\x05\xda\xeb\x4f\xe2\x3d\x02\xae\x16\xdb\x63\xa3\xad\x2d\xd5\x3b\x6f\x21\x7c\xe3\xe9\x3b\xb1\x2b\xec\x1f\x5f\xbe\x39\xdc\xbf\x78\x7f\x76\x78\x2e\x3a\x55\xf6\xdc\xd9\xe9\xfb\x8b\xa3\xb7\x3f\x5c\x9e\x9c\x1e\x1c\x1e\x5f\xee\x9f\xfd\x90\xe8\x2f\x3f\x1c\x1f\x9d\x9c\x1c\x9e\x5d\x9e\x1f\x5e\x5c\xbe\x3e\x3d\x79\x77\xfa\xf6\xf0\xed\xc5\xe5\xc5\xe1\xc9\xbb\xe3\xfd\x8b\x43\x93\xec\xf5\xfb\xf3\x8b\xd3\x13\x27\xc5\xfe\xd9\x0f\x97\xef\xce\x4e\xff\xfe\xab\x49\x72\x72\x7a\xf0\xfe\xf8\xf0\xf2\xfd\xdb\xa3\x37\x47\xaf\x61\x83\x32\x9f\x8e\x4e\xde\x9d\x9d\xfe\x7c\x78\x70\x79\xf4\xf6\xfc\xe2\xec\xfd\xc9\xe1\xdb\x8b\x7a\x82\xe3\xa3\x57\x67\xfb\x67\x47\x87\xe7\x97\x47\xe7\x67\x87\x3f\x1c\x9d\x5f\x1c\x9e\x1d\x1e\x24\x38\xd6\x4d\x49\x70\x7c\x70\xf8\x66\xff\xfd\xf1\x85\x69\x5d\x7d\x9e\x3c\xac\x23\x34\xda\xda\x45\xeb\x6b\x62\x53\xb4\x9b\x61\xbf\x75\xf7\xc2\x68\x6b\x07\x6d\xd2\xa1\x36\x5d\x6b\x48\xc4\x6c\xe8\x79\x9a\x99\x5b\x0f\x45\xeb\xb1\x92\x23\x39\xf4\x3a\x95\xc3\xbb\x50\xbb\xba\xb6\xc2\x47\x66\x88\x04\xcb\xd9\x4a\x12\x1c\xad\x56\xb8\x72\xfa\x9b\x28\x3f\x07\x1a\x92\xb5\x63\x14\xf5\x1e\x19\xc3\x54\x1b\xd4\x18\x42\x5d\x63\x60\x49\x75\xce\x97\x42\xdd\x9e\x59\x62\xed\xe1\xb2\x64\x3c\x33\xb2\x54\x21\x67\x2c\x81\xee\x31\xb5\x84\xd6\xcc\xfe\x4c\x59\x18\x5a\x82\xeb\x27\x80\x25\xfa\xc8\xca\x9b\x2a\x0b\x7e\x4b\xb8\x35\x63\x2c\xad\xf6\xfa\x6e\xa0\x6c\x18\x28\x86\xcd\xf6\xc0\x0e\xab\xab\xaf\x66\x99\x68\x62\xf5\x6f\x6c\x44\x68\x72\xb4\xac\xdd\x6c\x53\xb5\xd9\xfd\xb6\x8c\x20\xb8\x59\x80\x8c\x2f\x0b\x40\x07\x3e\xe1\x0a\xe1\x49\x08\xf8\xb2\x42\xa7\x79\x76\x6f\x1a\xe0\x35\xb7\x77\xa3\x15\x71\x91\xd9\x9f\xd5\xd9\x02\xf9\xc6\x57\xca\x8f\x75\x94\x12\xfc\x16\xd0\x56\x70\x84\xc1\xfe\x1b\xbd\xa6\xbb\x40\x5d\xd7\x6b\xf3\xcb\x8b\xb5\x5e\x57\x23\x78\x73\xfc\xb4\x61\xfc\x66\x73\x75\xdd\x55\x54\xe3\x8e\xcb\x21\x2d\xe3\x56\xeb\x9f\x97\x10\x0b\xec\xeb\xb8\x9b\x4b\x21\xc0\xd3\x4b\x4c\x7d\xaa\x47\x1d\x1e\x07\xb6\x5a\xc1\x44\x23\x86\x03\x42\x88\xd3\xf9\x60\x1a\x2d\x1d\xd3\x2c\x87\x2d\xd9\x28\xaf\x7b\x7b\x27\x0c\x8d\xb1\x1a\x8d\x5e\xe8\xc0\x8c\x26\x25\x30\xfe\x51\x48\x54\xe0\x00\xe0\xb4\x3a\x7c\xc6\x1f\xeb\xd9\x2f\x17\x69\xf5\xb1\x20\xf9\x5f\x17\x23\x20\x8f\x8b\xfb\xc5\x15\xcd\xa2\x30\x80\xbd\x16\xcc\xb0\x5a\xa1\x54\x5b\x78\x3e\xd6\xd9\x43\xec\x69\x12\xdf\x5a\xde\x86\x09\xd1\x56\x85\x57\x02\xb7\x1d\x19\x0d\xd9\x5a\xfb\x3d\x74\x07\xd4\x1a\x93\x09\x58\xa7\x75\x07\x44\x1a\x93\x49\x22\x37\xc8\xee\x91\x83\x1b\xe3\xcd\x56\xda\xda\x9b\xe7\x86\xf7\xb5\x24\x2b\xe6\x82\xd1\x2d\xfa\x3e\x72\xa9\xf2\xf4\x7d\xba\x4b\x59\xee\x7b\x3f\x4d\x97\x82\x9b\xdf\x96\x37\xf9\xdb\x9c\x61\xfc\xf5\xac\x83\xbb\xad\xc9\x95\x44\xed\x80\x59\xaa\xf1\xde\xd8\x5c\x5b\x93\x50\xf9\xd6\x9a\x82\x1b\xe5\xf0\x86\xd4\x89\x55\x27\x3f\x66\xbc\xff\x54\xc2\x36\xcb\x7a\x73\x7b\xd5\xba\x5f\x52\xf6\xc4\x9e\xa1\x4f\xea\x19\x35\x1d\xa4\x49\xcf\x85\x98\x0c\x9b\x95\x92\x3a\xe6\xf2\x42\xf8\x14\xd3\xed\x68\xfe\xbe\x20\xf9\xb5\x38\xd7\x96\x4b\x3c\x7b\x23\xe5\xc6\x37\x59\x7a\x5d\xc8\x08\x14\x07\x62\x16\xbe\x51\xb4\x12\x30\xb1\x6c\xbe\x32\xd3\x5d\xbc\x4b\xb0\xbc\x82\x81\x44\xf0\x51\x24\x06\xb7\x72\xfd\xeb\x1c\xa7\x99\x9b\x4d\xbf\x4f\x70\x2c\xaa\x94\x88\x03\x64\x0e\xa1\x2a\x8a\x02\xb3\x86\x95\x7a\x0d\xfb\xa5\x04\xc3\x15\x95\x4c\x33\xba\xe2\x15\x10\xd0\x8c\xaa\x78\x01\x84\x35\x83\x29\xad\x5d\x44\x89\x73\x15\x90\x49\xbe\xd1\xf5\x99\xc1\xdb\x1b\x9b\x0e\x6a\x7c\x03\x6f\x97\xf6\xad\x6a\x95\x84\x15\x5c\xc0\x7b\xa7\xe9\x8b\x9e\x8c\x02\x20\x5e\xb7\x3a\xed\x16\x3e\xde\xc3\xc7\x56\x27\xdf\x2b\xf3\x05\xcf\x08\x1a\x44\xac\x26\xac\xd6\xf6\xee\xa4\xea\x35\x87\xe2\x7a\x93\x51\x96\xbd\xeb\xdb\x21\xbb\xb6\x9e\xfa\x9e\xa9\x18\x67\x38\x9a\xbe\x1e\x28\x51\x9b\x63\x84\x53\x03\x7f\x5c\xe2\x29\x78\xa0\x69\x53\x5b\x63\xaf\xa8\xea\x55\xdb\xba\x23\x14\xbc\x7a\xff\xc3\xa8\x0f\x0e\x4d\x7d\x52\xf4\x17\xa4\x28\x00\x72\x77\x6d\x2e\x39\xdc\x76\xbd\xc5\xaa\x57\xc2\xa8\xea\xea\x37\xe7\x08\xf8\x04\xdd\x4b\xed\x84\x6a\x13\x57\xe8\xfa\x5f\x9c\xab\x57\xbd\x71\x2a\x6d\xc4\xde\xe7\x9c\x64\xce\x66\x9f\x34\x13\x1c\xcd\xd6\x7d\xad\x7f\x6b\xec\x6f\x89\x97\xdf\x50\xa7\x58\x6d\x8d\xf7\xda\x79\x49\xab\xaa\x6e\x59\xbc\xf5\xb5\x5e\x4f\xf6\x78\x43\x73\xc5\xfd\xd5\xf6\x9a\x34\xa1\xdd\x08\x22\x9e\xb1\xf9\x7a\xc2\x17\xc9\x6f\xe9\x07\xec\xed\xd4\x1f\xf7\xdf\x1e\x1c\x1f\x9e\x9d\xd7\xc5\x24\xe8\x45\xf3\x89\x2b\x68\xaf\x47\x7a\x99\xf5\x1a\x21\x8f\x64\x32\x55\x78\xde\xd5\x7e\xc3\xde\x7c\xbd\xe6\xeb\x63\xde\x27\x86\x29\x68\xe3\x56\x0a\x1c\x3d\x70\x6b\xbe\xa9\x30\x2d\x78\xb2\xb5\xdb\xd5\x0e\xc9\x8b\x75\xe1\xc4\xff\x6f\xaf\xcd\xa7\x2c\xcb\xcd\x96\xde\x63\xd3\x41\xcd\x1a\xdf\xfa\xec\xae\x5a\x7b\xad\xd5\x2b\x97\x3f\x2e\x66\x79\xec\x18\xdb\xac\xfb\x17\xee\xeb\x26\x1c\x4b\x82\xe3\x77\xfb\x67\x17\x47\xfb\xc7\xe7\x56\x3d\x6c\xf4\x57\x47\xe7\x97\x3f\x1f\x9d\x1f\xbd\x3a\x3e\x4c\xf0\xfa\xa8\x52\x09\x8e\xdf\xbc\x7f\x0b\x91\xdc\x2f\xdf\x9d\x9d\x5e\x9c\x5e\xfc\xfa\xee\xf0\xf2\xf0\xef\x17\x87\x6f\xcf\x8f\x4e\xdf\x8a\xef\xfb\xef\xde\x5d\xbe\xbe\x38\x3b\x06\xfd\xd6\xe1\x99\x48\xf6\x0e\xde\x1f\x1f\xed\x9f\x5f\x9e\x1c\x5e\xfc\x78\x7a\x90\x60\xcf\xd5\x58\x82\x63\x5b\xa5\x93\xfd\xb7\xfb\x3f\x1c\x9e\x5d\x9e\x5f\x9c\x1d\xbd\xfd\xe1\xf2\xf8\xf4\xf4\xa7\xf7\xef\x12\x1c\x2b\xa2\xa6\x36\x27\x87\x67\x3f\x88\x5a\x1f\x9f\xfe\xf0\x03\x34\x53\xb6\x0d\x6a\x74\x60\xab\x28\x92\x3a\x51\xe8\x13\x03\x71\xeb\xbe\xdc\xda\xe9\x75\xe7\x87\x8f\xaa\x14\x78\x96\x25\xc3\x63\xbd\x52\xf0\xea\xb1\x96\x40\x22\x4f\x1f\xc0\xfb\x5a\x57\xc9\x37\xde\x4e\x85\x4f\xeb\xc7\x43\x56\x75\xed\x90\x3a\xcd\xf6\x4e\x09\xf8\x6e\x66\x0f\xfc\x6a\x4d\xaf\xad\x06\xfb\x65\xbc\x44\x5b\x12\xaa\xd7\xc6\x5a\x25\x17\xbb\x8f\x7c\xdc\x96\xb0\xb0\x9b\x58\x61\x3b\x9a\x97\xa7\xea\x22\x5c\x83\xe4\x59\x7a\xbd\xbd\x48\x97\x9f\x10\x97\x76\x3d\x9c\xd4\x53\xfc\x66\x5b\xa6\xd6\x2e\x97\xf5\x91\xe3\xbc\x20\x34\xdf\x36\x61\xef\x9f\x64\xc6\xfd\xa8\x4f\x6e\xdb\x82\xba\xcb\x7e\xfa\xf6\x8b\xd9\x4f\xdf\x76\xd9\x4f\xff\x47\xdb\x6a\xaf\xf3\xd5\x3f\x84\x61\x7e\xa7\x66\xef\x86\x7e\xe5\x8d\x7c\x8f\x09\xff\x9f\x54\x46\xd1\x2e\xa3\xc3\xe6\x9c\xc6\xc6\x88\x4a\x2b\x1c\x69\xac\xaf\xf9\xdf\x31\xfa\xf1\x1e\x34\x67\xe8\xe1\x13\x8d\xc2\x6b\x36\x09\x60\xcf\x4b\x1c\x73\xc7\xb3\x34\x97\x01\xea\x8b\x92\xd5\x5c\x7e\xdb\x25\x35\xb2\x69\x5b\xf3\xb6\xfd\xa4\x37\x79\xb2\xb5\xf3\x89\xb6\xda\x40\xae\x5d\xc1\xb0\x6e\xc5\x3d\xf7\x99\x6c\x77\xda\x63\xd4\x4c\x50\x1d\x9f\x62\x69\xa2\xe1\x3a\x21\xd7\xbb\x4f\x3a\xe4\x21\xa7\x6d\xeb\x5d\x98\x9d\x84\x50\x21\xd2\x76\xae\x7e\x8c\x40\x2b\x03\x10\x6a\xf4\xba\xdf\xd6\x44\xdb\x8d\xd6\xd2\x86\x81\x3b\x32\x6e\xd0\x39\x09\x9b\xe9\xd4\x59\x1a\x8b\xa9\xc2\xda\x5e\xe1\x1e\x13\xf8\x76\x51\xed\x6c\x1b\x15\xd9\xa0\xd4\xd0\xdf\x9a\x00\x6c\xd2\x5d\x38\x73\xdc\x85\x9d\xce\x03\xf0\x3a\x0f\x48\x8d\x13\xb8\x14\x22\xb8\xe1\x88\x4b\x8b\x11\x66\x76\x2f\x5e\x85\x79\xa4\x62\x41\x14\x06\x7a\x32\x4d\x76\x5e\xa4\x36\xb0\x68\x3a\x1c\x46\x2c\xc9\xc7\x64\x9c\x4e\x26\x88\x82\xa9\xbf\x84\x9c\x42\x0c\xb1\xf8\x0a\xc2\x1f\x20\x16\xa7\x73\x8e\x59\xd4\xa3\x31\xa7\xcb\x82\x32\x1e\xf2\xba\x25\xdd\x95\xad\xda\x83\xb1\x2e\x1b\xe1\x4a\xc3\xe6\xd8\x16\x62\x14\x68\x1b\xc9\x20\x5a\xad\xa6\xe6\x62\x42\x4f\x7a\xee\x18\x47\x5d\x3a\xcb\xca\x76\x78\x3d\xf6\x86\x74\xf8\x13\x5b\x08\x20\xcb\x80\x3d\x4a\xfb\x9d\x32\xba\x1c\xe3\x89\x36\xb9\x78\xa8\x7a\x4c\x7c\xa8\xc7\x70\xd6\x89\xb4\xd1\xab\xb5\x8c\x62\x51\xa5\x3e\x8e\xa5\x43\x2d\x28\xdd\xaf\x1b\xf0\xe7\xee\xdc\xf2\x44\x87\xf6\xad\x9e\xae\x84\x76\xe6\x5c\x36\x27\xbc\xfb\x33\xf0\x12\x95\x79\x7c\x33\xd7\xbc\xee\xd7\x89\x74\x6c\x34\xb5\x08\x21\xa9\xd9\xd5\xc3\x07\xcd\xb0\x8c\xae\x60\xc2\xf7\x5c\xe0\x97\x24\x13\xff\x23\xee\xd8\xd1\xb5\xec\x0c\x11\xf6\x78\xd2\xd6\x71\x0a\x94\xe3\x9e\x02\x56\x0a\x83\xa9\x73\x7f\x2c\xe4\xab\x0c\x73\x9a\x6b\xf7\xdd\x66\x62\x19\x51\xa2\x9d\xce\x56\xc9\xf2\x81\xda\xe4\xd2\x81\x68\xf5\x38\x08\x3b\x76\x7e\x92\x78\x00\x61\x2b\x74\x97\x04\xa8\x23\xf2\x52\xdd\x12\x53\xa1\xb7\x7e\x62\x6e\x5a\xc2\x0d\xcb\x25\xa7\xcb\x63\x7c\x8b\xb3\x9f\x09\xbe\xd3\xcc\x4d\x80\x0c\x04\xdd\x68\x9b\x96\x3c\xc3\xbc\x99\x1f\xe0\x80\xf5\xb7\x0d\x0c\x41\x9d\xac\x35\xae\x59\xc7\xc7\xad\x5b\x35\xae\xc9\xf0\x94\x92\xac\xf1\xe4\x95\xb5\xcb\x0c\xa4\x51\x7e\xc3\xb2\xb3\xab\x7b\xd6\x66\xbc\x5d\x93\xd1\x6f\xae\xe9\xf7\x0e\x37\xcc\xf7\x2c\x56\xe6\xf0\xeb\x8d\x42\x6d\x86\x60\x83\x62\xf4\xfa\xda\x9e\x53\xb6\x0d\xa2\xc5\x35\xc9\xaf\xf5\xda\xd1\x36\xf6\xec\xb1\x99\x6a\x24\x16\x49\x63\x3b\x9d\xa5\x4b\xc7\x14\xd8\x11\x3b\xd6\x15\xd8\x20\x0a\x71\x55\x1b\x94\x4c\x41\xa0\xd8\xdf\x97\x1f\xdd\xf7\xbe\x0a\xb4\x17\x64\x77\x5d\x6f\xe2\xd7\xbe\x22\x9a\x24\xd4\x16\xb1\x2d\x95\xe3\x2a\xef\xd2\x5a\x92\x1c\xc3\xfb\xa8\x0a\xb9\x6b\x9f\x2a\x39\x5d\x6b\x9a\x0a\xbe\x07\xc8\xec\x71\x70\x73\x7b\xe6\xfe\x52\x66\xab\x77\xc9\xb5\xa3\xc7\xb9\xeb\x90\x69\x7d\x60\x4c\x9f\xee\x3a\xdc\x12\x50\x1b\x82\x67\x37\x42\xb6\xc7\x9f\xb6\x53\x90\x5e\x23\xf6\x75\x89\x79\xe5\x53\x44\x2f\x63\x8d\x22\x86\x8c\x64\x7a\x98\xad\xf8\x55\x3e\x2a\xea\x65\x5f\x4c\xd4\xcb\xbe\xae\x5b\xee\x34\xc9\xe3\xa6\x41\x86\x47\x3e\xca\xed\x0c\x77\xa5\x26\x21\x21\x7c\xaa\x53\x6d\x3d\x7c\x24\xf0\xfe\x3d\xd7\xd3\x31\x2d\x70\x0f\x03\xf6\x13\x6f\x22\xd5\x98\x04\x09\x8e\x7a\x16\x0c\xa6\x2e\x6c\x34\xb9\x82\x79\x9a\x65\x57\xe9\xf4\xc3\x08\xd7\xd2\x55\xc6\x89\xd2\x75\x93\xe4\x36\xf6\x4e\xf8\x00\xf7\x53\xe0\x8d\x54\xb5\xfc\x6e\x9a\xde\x7c\x75\x74\x9a\x2e\x67\x3c\x83\x29\x54\xf3\xd7\xc1\x77\xfd\x5c\xfa\xd8\xa9\x57\x8e\xc1\x32\xb3\xe2\x6f\xc8\x1d\x1f\x28\x0c\xbe\x23\x51\xdb\xfd\xe7\x69\x00\x5b\x92\xbb\xcf\xa8\x16\xa9\x0f\xf0\x52\x70\x03\xf9\x94\x60\x23\x74\xb6\x40\xb7\xcc\x30\x3c\x82\x6c\xd5\x70\xb3\x7a\x1c\xac\xaa\x21\xa7\xb6\xc7\x67\x1d\x94\x8f\x2a\xef\xa9\x58\x57\x16\xb2\xde\x23\x79\xd5\xca\x06\x17\x43\xd3\xfe\xb5\x21\xa0\x25\xeb\x0a\xe1\x37\xe4\x36\xee\x91\xce\xfd\xb0\x32\x3d\xeb\xc2\x64\x51\x9d\x80\xc4\x28\x18\x62\x09\x75\xec\xc2\x1c\xd3\x7a\x84\x8e\x94\x8b\x4d\x8c\xe3\x59\x9f\xd3\xfe\x82\x96\x39\x07\x5c\x63\x49\xa1\xff\x07\x80\x3d\xfe\x03\xea\x5f\x95\xbc\x4f\x78\x9f\x14\xfd\x9c\xf2\xbe\x8d\x35\x2e\xc3\x5d\x11\x5e\xf4\xe5\x96\x1b\x07\x1a\x56\xa9\xe9\x24\xc5\x6b\x20\xb7\x0d\xc5\x0c\x98\x09\xcb\xe0\xee\x15\xea\x98\x5d\x7e\xe1\x5a\x46\x1f\x2f\x9a\xda\x24\xb5\x4f\xbc\x18\xd7\xfd\x91\x7c\x7c\xcc\xda\x3b\x64\x9f\x4b\x00\xab\x45\xed\x53\xa7\x36\x03\x49\x41\x42\xdb\xca\xf9\x92\xaa\xc4\x62\xd9\x99\xe8\x89\x6b\xa6\x63\x4f\x89\x6b\x6b\x40\x80\x3c\x9c\x92\xea\xed\x71\xdd\x3d\xaa\xc9\x2e\x66\x61\x14\xf9\x99\x73\x64\xb8\xf9\xd1\x76\x30\x0c\x59\x1d\x98\x64\x2f\x98\xd1\x45\x30\x0a\xc4\x84\x86\x6b\x78\x0f\xac\x50\xb3\xac\x32\x8c\xa2\x49\x8f\x35\x71\x59\x54\x3c\xf9\x6e\xc4\xb1\xa7\xf4\xb4\xea\x46\xe6\x41\x41\x32\xee\x80\x92\xd7\xb3\x72\x4e\xfd\xc6\xde\x07\xed\x55\xcb\x66\xd8\xe9\x47\xf3\x55\x55\xd4\x9b\x6e\x8e\x0c\xc5\x21\x3a\xb8\x47\x10\x7b\xbc\x82\x7e\x7e\x7f\x83\x86\x35\x46\xd5\x5b\xbe\x23\xd5\xd9\x29\x21\x86\xbf\xc5\x8d\x1b\x09\x76\x4d\x1e\x88\x0c\xbe\x61\x21\x7a\x76\x3d\xad\x18\x95\x2b\x32\x50\x55\xf3\x64\xea\xf0\xb1\x73\x2f\x1f\xeb\xb9\x6c\xd9\x24\x98\xcb\x17\xb7\x8f\x69\x6c\x57\x5e\xcb\xea\x31\x9b\xe8\xe0\xc0\xfe\xa4\xa2\x22\x22\x55\xc2\xab\x9e\x13\x7a\xd7\xd8\x7d\x1e\xbe\xfd\xe1\xe8\xed\xe1\xe5\xbb\xfd\xb3\xc3\xb7\x17\x41\xc3\xf8\x1c\x38\xec\xaf\x7e\x25\xeb\xbd\xb2\x06\x04\x37\x67\xa8\x1a\x66\xd5\x8d\xe0\x49\x4f\xf7\x85\xfa\xe2\xa3\x65\x6b\x04\x61\x81\x2f\xed\x6f\x88\xb0\x9a\xcc\xc4\x30\x95\x57\xc5\x94\x91\xab\x26\x6c\xb4\xd6\x71\x12\x44\x6d\x50\x86\x38\x88\x50\x9a\x8c\x27\xa8\x48\x76\x5e\x14\x2f\xa9\xd6\x65\x16\xc3\x61\x14\xfc\x31\x48\x92\x24\x24\x09\x1d\x17\x93\x68\x2f\x55\xfb\xe6\xf8\x7f\x7e\xfb\x2d\x9e\xfc\x31\x88\x46\xea\x0d\xd1\x00\x6d\xa9\x0a\x8e\xf0\xdb\x6f\xe2\xf4\x2d\x87\x49\x10\xfe\xf6\x5b\x1c\xff\x31\xda\x53\xb1\x4e\x92\x87\xa5\x38\xe6\x59\x3e\xc2\x88\xe1\x6b\xfc\x71\xe4\xe0\x72\x07\xff\x13\x0c\x4b\x89\xcd\x2d\xc3\x4b\x8e\x78\x65\x83\xc8\x42\x49\x59\x84\xf2\xe4\xa1\x42\x10\xab\xba\xcc\x7d\x2d\x75\x61\xc2\x77\x10\x49\x76\x5e\x90\x97\x1a\x09\xfb\x05\x81\xd8\x90\x64\xa2\xf8\x34\x9e\x90\xa8\xc7\xa0\x2b\x04\x5f\x80\x76\x25\xf9\x4a\x6a\x04\x70\xdd\x00\x5d\xd1\x48\x76\x4c\x9a\x56\xec\xa8\xc4\xe9\x7c\x56\xd4\xe3\xe0\x8d\x27\xbd\xfa\x57\x6d\x1e\xf3\x20\x97\x8c\x92\x06\x45\x77\xfb\x70\xd0\xb4\x1f\xa2\x72\x1d\x5c\x62\x06\x81\xd5\xf3\x29\x06\xbf\xbe\x90\x26\x24\xce\xe9\xdd\x6a\x45\xe2\x05\xfd\xfd\xad\x7c\x92\xf1\x65\xd5\x8f\x45\xa1\x1e\xe8\x5b\x7a\x17\xed\x51\x40\x35\x09\x49\x34\x3a\x48\x39\x16\x79\x23\x57\xf6\x5c\x17\xc0\xb2\x26\x34\x0a\x69\x16\xc2\x3e\x81\x21\x86\x68\x02\x00\xa2\x37\xac\x0b\x5f\x26\xdf\x0e\x06\x65\xc8\xa3\xbd\x30\x4d\x38\x2a\x92\x3c\x1a\x85\x34\xe1\x28\x4d\x72\x54\x24\x24\x02\x94\x12\x83\x58\x6e\xec\x4d\xc1\x5a\x5f\x49\x59\x59\x42\xa1\xad\x37\xc9\x2c\xc4\x9e\x18\x5c\xfd\x4c\xf0\x37\xea\xf9\x26\x49\x92\xf9\x9e\x21\x30\x9a\x86\x29\xba\x41\x19\x2a\xea\x91\x8c\xb5\xed\x3b\x67\xf7\x4e\x50\x17\x91\x27\xd7\xc0\x1d\x44\x63\x2b\xb0\x18\x7f\x9c\x62\x19\xde\x82\x20\x52\xcd\x49\x9e\x66\xd9\xfd\x03\x0f\xa3\xca\x12\x9d\x87\xd1\x83\xfd\x25\x6a\x4a\x10\x05\x25\xbb\xaf\x85\x73\x1d\x51\x5a\x45\x1c\x4d\x57\xab\x30\xf5\xcf\x66\x44\xc4\x32\xa5\xc9\xce\x0b\x6a\x27\x34\x1d\x0e\xa3\x90\x27\x6c\x4c\x27\x51\x0c\x2b\x4a\x22\xd1\xe3\x68\x30\x20\xca\xed\x55\x05\x6b\xb5\xd8\x00\x63\x3c\x81\x06\x08\x49\x0c\xfa\x3d\xf5\xd6\xaa\x44\x59\x42\x42\x1a\xa1\xa9\xf2\x28\x3d\xbf\x38\x7b\xff\xfa\xe2\xfd\xd9\x21\x58\x66\xbc\x39\x3a\x3e\xec\x4d\x07\x83\xb0\x4c\xf0\x30\x18\xf5\x83\x61\xa6\x4a\x42\x42\x90\xa1\x19\x8e\x39\x59\xe0\xb0\x8c\x22\x73\xbd\x32\x13\x4d\xb8\x49\x84\x7c\xb6\x4c\x76\x5e\x2c\x5f\xea\x92\x5f\x2c\x35\xa8\xfe\x22\x49\xc7\xcb\x49\x6f\x26\x2b\xbf\x50\xb7\x26\x21\x16\xa3\x67\x61\xf2\x5c\xbf\x1d\xb3\xdc\x05\x59\x96\xec\xbc\x60\x96\x2c\xd3\x64\xf3\x24\x1d\xb3\x49\xcf\x33\x9b\x73\x79\x1f\x23\xf8\x42\x78\x80\x49\x91\xa1\xd9\x98\x4d\xa2\x6a\x3a\x18\xb8\x8d\x39\xcc\x67\x61\x19\x55\x95\x6f\xed\xa7\xde\x1d\x21\x4d\x9a\x9e\xaf\x46\x26\x6e\xda\x7e\x2e\xe8\x8c\xcc\xc9\xa6\x2e\x3c\xff\x6e\x77\xb3\x02\xf3\x13\x55\xc1\x93\x34\x4f\xaf\x9f\x06\x5e\xdf\xc8\xfa\x98\x75\x7a\x7a\x45\x32\x4e\xf0\xa6\x98\xf3\x3c\xd6\x7d\xf7\x5a\xe6\x25\x22\x73\xcb\xcb\x4d\xce\x4e\xf0\xe1\x4a\x1f\x65\xb7\xba\x22\x88\x69\x6b\x65\x86\xe7\x98\xe1\x7c\xea\x75\xa4\xf8\x12\xec\x8a\x94\x37\xf9\x4f\x18\xdc\xbe\x52\x9e\x50\xe5\x52\xe3\x14\xc6\xcc\xc6\x9b\x10\xc1\xc9\xb5\x22\xc7\xd3\xc1\x20\x84\x2f\x2d\xf8\x48\x05\x1f\x8c\x52\xa3\xee\x7b\x43\x99\xae\x5b\xa4\xc3\x1a\x4b\xd4\x5f\x1e\x73\x96\x4e\x3f\xd4\x71\xb4\x71\x42\xe5\x4e\x49\x22\xbb\xef\x82\xbb\x4f\xb9\x9c\x41\x70\x98\x14\x49\x9d\x19\x68\xa6\x8a\x72\x81\xa3\xb0\x00\xec\x10\x44\xaa\x9a\xef\xad\xec\x32\x32\x0f\xb7\x64\xd0\x31\x1d\x20\x57\x07\x14\xa2\x2c\x0a\xc7\x90\x6a\x12\x45\x0f\x79\x82\x9b\xe6\xb5\xae\x13\x0f\x11\x34\x50\x1e\x55\x3d\xc7\xcc\xbb\xc0\x1c\x04\x22\x32\x3d\xc0\x53\xca\x52\x20\x49\x23\x44\x2b\x27\x97\xa8\x45\xb5\x2e\x79\xe7\x74\x2a\x39\xf6\xa3\x27\xa8\x34\xd2\xbf\x4b\xa6\x33\x0f\x97\x8b\x74\xca\xe8\x23\x89\x19\x9e\x95\x53\x7c\xd9\xcc\xf3\xc5\x3d\xea\x3b\x33\xe0\xc5\x92\xdf\x6f\xbc\x0e\x21\xf5\xda\xd5\x9d\x53\x7e\xf8\x24\x92\x3a\xc3\x23\x54\xf3\x4d\x9d\x58\x04\xc5\x1c\x3f\x56\xc7\xa7\x54\x6f\x2d\xad\x2b\x4a\xb3\x8d\x89\x89\xc4\x6b\xa9\x2d\x04\x4b\xb2\xf9\xae\x28\x52\xaf\xa5\x87\xff\x55\xa6\x9b\x57\x0f\x52\xaf\xa5\x77\xbd\x79\xc7\x5d\xaf\xef\xb7\x6b\xbe\xf9\x80\x5e\xf3\xf5\xe3\xb9\x71\x3c\x10\x1e\x67\xeb\x6b\x95\x3d\xa1\x56\xd9\x23\xb5\xa2\x39\xfe\x25\xdd\x7c\x1d\xc8\xe4\x8f\xf8\x8f\xc9\xa8\x05\x1b\xd3\xd4\x19\x1e\x09\xa9\xa2\xec\xad\xf3\xeb\xfd\x8c\xa4\x9b\x1f\xca\xcd\x8c\x6b\x4b\x49\xf3\x4d\x03\xc1\xf0\x38\xcd\xd7\x07\x81\xa1\x9b\xf3\x26\xf4\x91\x40\x3d\xe5\x62\x73\x13\xbf\x72\xb1\x7e\xed\x02\xa6\xd5\x66\xb4\x16\x24\x7f\x64\x1f\xf8\xb8\x39\xad\xf4\xe3\x23\xb4\x96\x4f\xa0\xb5\x5c\xdf\x5f\x60\x19\xbb\x69\x87\x51\xf6\xa8\xb1\xe5\x01\x99\xcf\x9f\x62\x64\x29\xd2\x3f\xd6\xda\x57\x9b\x2e\x10\x68\xef\xab\xf5\xab\x63\x4e\x32\xbe\x31\x2f\xcc\x62\x99\x7c\x03\x8a\x4f\xa8\xa4\xce\xb0\x96\x6a\x99\x93\x7f\x6d\x4c\x51\x24\x7e\x94\xda\x13\x6a\x28\x93\x3f\x46\x91\x6e\xbe\x3e\x20\xf5\x7a\xef\x5f\xc1\xc9\x17\x78\xba\xf9\x74\x34\x39\xaa\x2a\xea\x66\xa0\xa6\x34\xcb\x9e\x42\x55\xa5\xef\x12\x46\xba\x65\xbd\x86\x1d\xc2\x26\x71\xa6\xbe\x8a\x24\x22\xe1\x3a\x15\x26\x0d\x81\x2b\xdf\x5f\x70\xfa\xe1\x24\x5d\xd6\x79\x78\xae\x78\x78\x07\x10\xdf\xb9\xd0\xf4\x22\x68\xd5\x52\x48\xa4\x86\xc1\xc0\xf3\x32\x8c\x90\x8c\xdb\x7e\x7a\x97\x9b\x4a\x1b\x1c\xd1\x48\x8b\x40\xba\xae\xe0\xd2\x2b\x9f\x12\xba\xd7\x8c\x5a\x4d\xa3\xd1\x43\x65\xc1\x39\x54\xc2\x31\x9f\x24\x39\x6a\x22\x07\xc8\xdb\x3d\x10\xa0\xf4\x75\x7f\xfd\x9e\x57\xf4\xc6\x49\xba\x44\xe0\xe2\x2d\x85\x26\x1c\xe9\x0b\x7e\x50\xae\x87\x16\x96\xbf\x71\x65\x9a\x4b\x0d\x1c\x57\xa1\x94\x04\x81\x1c\xf1\x48\xa2\xc2\x9a\xae\x4d\x35\x7f\x0f\xdd\xdf\x53\x42\x52\xde\x29\x24\x71\xc4\x84\x90\x44\x94\x90\x94\xfa\x85\x24\x39\x60\xc4\x15\x92\x72\xbf\xd4\x93\x46\x28\xad\xea\xb9\x12\x16\xc3\x0c\x01\x61\xa9\x33\x9b\x77\xba\xaf\x17\x84\x3e\x41\x22\x5f\xaf\xfe\x30\xbd\xc8\x84\x90\xa9\x35\x41\xe3\x89\xfd\x40\x42\x1c\x3d\xa8\x1b\x41\x1c\x55\x5a\x99\xe4\x51\xb3\x3d\xc8\xee\x64\x63\x3a\x79\xa1\x5d\x87\xd3\x7c\xa6\xe6\x23\xc1\x85\x10\x78\x89\xd1\x50\xe5\x76\x08\x45\xcd\xf2\xb6\xe9\xad\x55\x5d\xe1\xa4\xa9\x2f\x45\x72\xa1\x01\x84\x49\x88\x23\xa5\xf6\xc3\x50\x11\x32\xa6\x13\x9b\x61\x4c\x27\x6a\xa0\x59\xb8\x83\x88\x90\xd8\x2d\x16\x46\x1d\x26\x25\xd5\xc8\x28\x63\x7f\x1d\x8c\x27\xb8\xd2\xa2\x61\xab\x3e\x23\x52\x0d\x60\x03\x2b\xa5\x63\x36\x91\x57\xfa\x79\x48\x22\x13\x64\xa7\x72\x64\x6e\x37\x31\x9e\x44\xd5\xc4\x6a\x67\x8b\xea\x53\x6c\x81\x40\xb8\xec\x72\xe4\xb6\xf0\x1f\x78\x18\xa8\x96\x04\x1e\x2d\xb1\xd6\x30\x08\x5a\x10\xbf\xd6\xad\xa8\x34\x4d\xa9\x10\x36\x52\xe7\xe7\x16\xb7\xb5\x71\x79\xb9\x2f\x08\x6d\xb3\xac\xee\x06\xbd\xa5\x39\x5e\xdf\x9e\x4f\x23\xbf\xd5\x22\xa9\x28\x0a\x59\xf5\xd3\x48\xf6\xb5\x1b\x6d\x67\x6d\x41\x70\xad\x29\xba\x36\x22\x2f\x97\x77\x8b\xaa\xbd\x44\x02\xdd\x78\xae\x4b\x01\x71\xf6\xe9\xa5\x78\xa7\x38\x8e\x92\x24\x61\x8a\xf0\x35\xff\x62\x54\xbf\xb7\x34\xf1\x97\x23\x6a\x6a\x9a\x7d\xb9\x9a\xbe\xb4\x34\xbf\x5c\x4d\x5f\x9a\x9a\x4a\xf1\xb7\x6b\xc2\xa5\x42\xbe\x8c\x42\x1c\xa9\x74\xa1\xc4\xf8\x54\xe2\xed\xe3\xb9\x6c\xbc\x3f\x09\x07\x55\x17\x5c\x37\x99\xe6\x7e\xd0\xa1\xf6\xe2\xa9\xa3\x0f\x31\x7b\x30\x68\xc5\xa3\x4e\x8a\xf2\x08\x09\x16\x17\x1a\xcf\x04\x73\x93\xcf\xea\xd8\x4a\x22\x8b\x17\x1f\x14\x10\x3d\x21\x3d\x51\x9a\xd2\x8e\xa4\x5b\x2a\x29\x65\x4d\xaf\xe9\x27\xe8\x22\x37\x60\x5e\x9f\x04\x5b\xf5\x38\x17\xeb\x9e\xde\x92\xef\x34\x5d\xc8\x1a\x3b\xf3\x78\x12\xb4\xb6\x88\x56\x94\x40\xbb\x45\xe4\x65\x96\x25\x49\x42\x56\xab\x40\xf6\x80\xbd\x81\x25\x7b\xf9\x88\xc4\xb2\x0f\x42\x8e\x94\x99\x58\x3d\x58\x64\xd5\xe0\x88\xb5\x76\x5e\x91\x7f\xf6\x7f\x71\x3a\xbd\x79\xa6\xaf\xe8\xf6\x68\x52\x0b\xc1\x0e\x5f\xe3\x3f\x7e\xf3\x0c\x05\x01\x5c\x8f\x62\x84\x87\x09\xb4\x21\x72\x1a\xd6\xc0\x3e\xc3\x06\xf0\x8c\xa3\x71\x8b\x77\x6d\xb4\x94\xd6\x14\xf5\xa4\x00\x06\x43\xac\x80\x3d\x78\xb1\x1f\x85\x44\x2a\xf5\xf5\x86\x3c\xd2\xef\xe1\xfc\xf6\x36\x35\xb5\x08\xbc\x24\x11\x7b\xf7\xd2\x8f\x5a\x2b\x47\xc3\xb9\xa3\xed\x6a\x12\xf1\xf1\x29\x4e\xb5\xf7\xa3\x90\xd7\x6b\xd9\x59\xb7\xa2\x71\xeb\x66\x58\x70\xbf\x40\x22\x18\x73\x96\x70\xc4\x93\xf1\x24\x42\x72\x0c\xfd\xa0\xef\xa2\x95\xcc\x4c\x81\xca\xbd\x39\xff\x3a\x05\x4a\x21\xdf\x5b\x66\xb6\x9e\x95\xe4\x75\x56\x52\x9a\x44\x60\xb0\x85\xe0\x63\xe2\xb2\x92\x44\xc3\xe6\xf6\xd3\xb0\x51\x0f\x6b\x21\x8c\x14\xa8\x9b\x98\x13\xca\x23\xee\xdc\xde\x3c\x61\x3f\x72\xb1\xe4\x50\x9d\xc9\x88\x30\x80\xe7\x39\x73\x30\x8d\x06\x83\xd4\x9f\x9b\x0a\xd9\x2f\xc4\xd1\x6a\x15\x52\x15\x40\x07\x11\xcd\xb3\x47\x12\x8b\x1e\x11\xf1\xf7\x13\xb8\xca\xa2\x5c\xf8\x8c\x9e\x48\xed\x80\x72\x65\x27\x3c\xe4\x55\x84\x76\xa4\x72\x50\xb1\x2b\x1f\x9f\x46\xe2\x24\xe5\x37\x22\x97\x0c\x70\x18\xa1\xed\xdd\x67\x3b\x52\xa9\x27\xe9\x35\x62\xe9\x6f\x48\x8f\xe4\x9a\x9e\x24\x07\x26\x81\x50\xbd\x65\x52\xc8\xbf\xaf\xee\xfd\xf2\x60\x01\x9b\xa5\xdc\x80\x82\xa1\x77\x0e\xda\xc1\x93\x85\x00\x69\x39\x2b\x93\xd2\x3c\x36\x0a\x10\x7b\xb3\x12\x5c\x93\xe7\x49\xd2\x9a\x9c\x7b\x8f\x96\xe3\xb1\x04\xaf\xa7\x48\x92\x24\x37\x76\x42\x65\xa3\x1d\x24\x92\x96\x42\xe4\x5f\x60\x2f\x25\xf5\x50\xde\x2e\xf8\xec\xb3\xa3\x3e\x9b\x89\xda\x51\x65\x89\x51\x48\x10\x77\xf7\xd2\xa8\xc9\x72\x18\xe5\x53\xb2\x99\x7c\xf8\xe5\x17\xb5\x67\xe7\x6e\x35\x78\x4d\x6b\xc9\x68\x3c\x11\xcb\x90\x26\x24\x5e\xd2\x65\x18\xe9\x1d\x2b\xec\xb0\xcd\x7a\xc1\xad\xe7\x2c\x17\x72\xa6\xf1\xc1\x4d\xb6\x76\x51\x9e\x90\x31\xd7\xe6\x2e\xb9\x2b\x87\x93\x79\x98\x0b\x09\x38\x49\xc4\x84\x48\xb6\x76\x7a\x57\x0c\xa7\x1f\x2a\x21\x8b\x02\xca\xb7\x12\x46\xb7\x76\x95\x30\x0a\xe0\x18\xbd\xfa\xf9\x41\xc5\x2a\x71\x74\x84\x91\xb2\x6f\x3c\x20\xf3\xf9\x53\xa6\x07\xdf\x7c\x9a\xc8\xd8\xc3\xee\x3b\xbe\x7e\xea\x98\x17\x34\xda\x23\xde\xde\x94\xb9\xb7\x45\xab\x69\x0c\x9a\xc4\xd3\xb9\x74\x98\x36\x53\x8d\xac\x9d\x75\x4a\x39\xf9\x6f\x9b\x73\x35\x7b\x79\x92\xf0\xc6\x94\xe3\x8e\x08\xe7\xac\xf0\x96\xfe\x2c\xdf\x13\x7c\xda\x28\x6f\x8f\x2b\x81\x71\xd5\x3a\x5a\x39\xaa\x94\xf1\x96\x11\x8e\x51\x52\xb2\xd5\x4a\xe2\xc4\xaa\xde\x0e\xb9\x38\x65\xcc\x91\xdc\xeb\x34\x82\x63\x7b\x73\x45\x6c\x34\x03\x29\x47\x6d\x34\x26\xe6\x8c\xf2\x55\xca\x2c\xb7\x3a\x6f\xf0\x06\x9e\xe3\xbe\xed\x88\xa3\x70\x6b\xc3\x08\x1a\xe2\x8e\xbf\xa3\x53\x62\x8a\x1d\x02\xa9\x41\xc5\x66\x31\xc5\xce\x5c\xfe\xec\x73\xe7\x31\x17\xf3\x38\xf8\xbf\xe2\x39\x10\x4b\x10\xa5\x5e\x8b\x61\xff\x5e\xc2\xad\xdd\xe9\x48\xb0\xb4\x09\x1f\xef\x4c\x50\x9e\xf0\xf1\xae\x9e\x30\x63\x86\xf2\x24\x5f\xad\x82\xb4\x98\x06\x62\x43\xa9\x42\xd0\x69\x51\x08\xbb\x34\xda\x6c\xf3\x2d\xa2\x3d\xd7\xac\xcd\xf0\xb6\x85\xee\xcb\xc8\x8b\xff\xaa\x93\xad\xe9\x72\x62\x17\x88\xdc\x9a\xb8\x47\x45\xc8\xc7\x74\x82\x8a\x24\x15\x8d\x2b\x93\x74\xbc\x3b\x41\x99\xe4\x99\xc0\xf4\x88\x49\x3d\x8d\x99\xe0\xc6\xb1\x4c\x46\xd6\x2e\x22\xd0\xab\x89\xc9\x99\xa9\xad\x2c\x98\xe1\x62\x2a\xba\xbb\xdc\xdb\xde\xfd\x63\x36\xca\xb4\x92\x51\xec\x6c\x51\x15\x16\x28\xed\x5c\xe6\x3d\x67\xff\x9a\x19\x55\xf1\x1b\xca\x1c\x65\x2d\x89\x20\xe4\x55\x28\x98\x28\x3d\x89\xa7\x75\x79\xd0\x5c\x3f\xac\xbd\xb1\x68\x47\x0c\x6d\xdf\x5f\x80\x4c\xb9\xc0\xec\x1a\x77\x7d\x94\xca\xfa\xae\xaf\x77\x38\xfd\x70\x59\xe0\x0e\x9f\xca\xaf\x66\x07\xa3\x2b\xb5\x21\x50\xad\x03\x94\xfa\x08\xc9\x77\xaa\x75\x1b\x93\x96\xd9\xd6\x52\xbe\xfc\x05\xa7\x1f\xce\xf1\xa6\xb7\x54\xa4\x8e\xeb\x0a\x83\xe3\xee\x62\x00\xd7\x7c\x78\xf6\xc3\xe1\x1e\xd3\x29\x47\x06\xc2\x4b\xa6\xa6\x5d\xd3\xc5\x1d\xd0\xcd\x8c\xfb\xcd\xc6\xc5\xeb\x1c\xc3\xee\x0b\xfe\xb2\x79\x26\x49\xce\x41\x72\x0d\xf6\xf8\xe1\x60\x4b\xcb\x22\x9d\x37\xd7\xb8\x14\x1f\xf0\x7d\x11\x32\x7d\x74\xe5\xae\x59\xb8\x8e\xe0\x22\xce\x2e\x2c\xf8\x0b\x36\xa6\x13\x7b\x4f\xf4\x29\x92\x85\x6c\x36\xe0\x49\x7a\xbc\x0f\x98\xae\x94\x4c\xb6\x5a\x71\xc7\x11\x81\xad\xeb\x4e\xb5\x78\x3a\xd5\x2e\x5f\x1d\xaa\x5f\x05\xc9\x51\xca\x12\xee\x51\x96\x70\x7d\x23\x80\x7b\x2e\x36\x8b\x3b\x0c\xdc\x3b\x0c\x80\x9f\x32\x41\xd2\x99\x64\xcc\x0c\x1f\x81\xab\x75\x3d\x62\xf6\x84\x7f\xb3\xff\x88\x87\x2f\x50\x2b\x6f\x4f\xfd\x75\x57\x9b\x99\xd8\xd8\x78\x1b\x0b\xd1\xcc\xb9\x51\xad\xf4\x29\x69\x50\xeb\x2d\x12\x48\x3a\x9b\xf9\x8e\x5a\x43\x07\x2e\x10\x31\xb2\xce\xaa\x5c\x05\x89\x5d\x9f\xcb\x09\x24\xcb\x85\x98\xbd\x3e\xb5\x94\xc3\x4d\x70\x82\x0e\xbf\x19\x15\x42\x7b\xf3\xcb\x6d\xd7\x7d\x86\x31\xca\xb6\x01\x04\xb3\x0b\x8b\x4d\xab\x10\xaf\xd2\xe9\x87\xab\x92\xe5\x5d\xb0\x6a\x5f\xc4\x39\xea\x75\xc9\x18\xce\xf9\x59\x99\x1f\x53\xba\xf4\x78\xb6\x53\x15\x4d\x0a\x04\xcc\x7f\x52\x21\xba\x23\x1c\x5f\xe1\x6b\x52\x83\x3e\x2d\xe5\x2b\xc9\x77\xe3\x7c\x56\xff\x06\x21\xf1\x80\x5b\x55\x71\x32\x3d\x05\x95\xe6\xa3\x52\x97\x95\x35\xbf\x5d\xb8\x20\x3f\x57\x29\x66\x17\x64\x81\x59\xe1\xa5\x72\x93\x16\xf2\xab\x92\x01\xd2\x7c\x8a\xb3\x76\xfa\xb2\xf6\x45\xa6\xcd\x52\x21\xed\xfb\x88\xc2\x97\x8e\x7a\xd1\x7c\x8a\x3f\x4d\xc4\x70\xef\x21\xc5\x6e\xe0\xec\xf1\x76\x6b\xe0\x71\x99\x17\x37\x64\xce\x1d\x93\x00\x64\x3b\xeb\x34\x9f\xda\x0e\xe3\xb5\x4e\x3e\x6d\x54\xac\xd5\xd1\xb5\xbc\xf5\x46\xe5\xf8\xe3\x27\xca\x4d\x1b\x36\x0a\xd4\x5b\xbb\xa2\x25\xf5\xbe\xe5\xce\xa8\xf9\x16\xab\x1e\x37\x15\x41\x65\x86\xaf\x68\xd9\xd5\x4e\xfd\xb1\xa3\x8d\xfc\x86\x51\xce\x3b\x26\xa3\xfe\xd8\x91\xf7\x8a\xe4\xb3\x04\x9b\xc8\xa9\x67\x65\x9e\xe0\xd8\xae\xd8\x04\xc7\xff\x2a\x71\x89\x0b\x91\x86\x15\xb7\x4b\x70\xc5\xfb\x6f\xf1\xaa\xce\x79\x88\x43\x46\x5d\x70\x87\x41\x30\x04\x4d\x17\x4b\xf3\x19\x5d\x84\xd1\x50\xbb\x2e\x85\xc0\xf2\x4a\x45\x7a\x10\x07\x28\x08\xc4\xee\xd4\xa4\xab\xc3\x2a\x8d\x6d\x08\x5a\xe5\xac\x7c\xc1\xd2\xbc\x20\xe6\x1d\x78\x76\x06\x28\x00\x7f\x90\x33\xfd\x4b\x87\xbf\x44\xe9\xa4\x67\x6a\xaf\xa3\x2b\x89\x11\x36\x6c\x54\x58\xa0\x07\xf5\x08\x25\x8f\x6c\x81\x34\x7f\x25\xb6\x81\x9a\x56\x8b\x26\xb8\x42\x34\x3f\xcc\x67\x0d\xb1\x84\x26\x1c\x01\x5b\x3f\xcf\xca\xe2\x66\xbf\xb8\xcf\xa7\xa7\x57\x05\x66\xb7\x98\x15\x82\xd1\x17\x99\x44\xf3\x2e\x64\x70\x0c\x16\xd7\x7e\xeb\xaf\x27\x98\xdf\xd0\xd9\x28\xa0\xb9\xc2\x32\x01\x6a\x8d\xa2\x74\xa3\xb7\xc0\xb2\x05\x6f\x25\x49\xba\x5a\xad\x29\x1b\x81\xd7\x93\xe3\x32\x96\xb9\x73\x83\x95\xb9\x6f\x5a\xd4\x26\x40\xa9\x05\x64\x69\x06\x03\x40\x5d\xae\xac\xec\x90\x13\xbb\xaa\x9f\x9e\x3b\xbd\xa6\x3d\x35\xeb\xbe\xde\xaa\xdc\x8c\x32\xab\x53\xce\x93\x9d\x17\xf9\x4b\xfc\x22\x07\xe7\xc3\xdc\xa5\x9c\x5b\xca\xf5\x2b\x10\xae\xaf\x40\x58\x14\x55\x0d\xd6\x47\x79\xbe\x7f\xa9\x48\x3f\x5f\x23\x38\xdf\x53\xc3\xf7\xa8\x26\x7d\xa9\xd8\x3d\x79\x77\xec\x9e\xa8\x97\x37\x40\xe6\x0a\x85\x33\xf5\x26\x9d\x72\xca\xee\x65\x1b\xba\xe2\xfa\xe4\x91\xbe\x7b\x75\xb8\x1f\xd2\x18\x1f\x08\xf1\xb4\x66\x78\x54\x02\xc1\xb8\xca\x47\x03\xec\xf1\x49\x61\x37\xbf\x62\x48\x9f\x8c\x4e\x93\x3b\x84\xe3\xbb\xe4\x10\x7a\x7a\x9a\x2e\x70\x46\x7e\xc7\xc9\xa9\xf8\x99\x16\x37\x98\x89\x5f\xe7\x70\x20\xa9\x4f\x1f\xc5\x0f\xb0\x07\x9b\xdf\x27\xfb\xa0\x14\x9b\x61\x56\x4c\x29\xc3\xc9\x07\x48\xb8\x24\x3c\x85\xa4\xef\xd6\x48\xb0\xd7\x98\xcb\x58\x59\x9b\xdb\x9b\xdb\x2c\xeb\x85\xe3\xe2\xe9\xa4\x0b\x97\xb4\x9a\x02\xcf\xc6\xfd\xcb\xc9\xb3\x6b\x75\x07\x96\xc7\x00\x90\x16\xee\xe2\x6f\xbd\x37\x78\xa7\xd2\xcc\x40\x9e\x51\x04\x05\xdb\xd2\x0d\x3e\x4d\x9e\x85\xbf\x6d\xaf\x7e\xbb\x5c\xfd\x16\xaf\x7e\x2b\xa2\x61\x18\x47\x7b\xcf\xae\x51\x91\x3c\x0b\xff\x67\xf5\xdb\xb3\x28\x1c\xef\x6f\xff\xff\x26\xd1\xb3\x6b\x54\x6e\x54\x8e\xbd\x51\x4e\xdb\x0b\x5b\x2f\xc3\x3d\x16\x73\xfa\x7e\xb9\xc4\xec\x75\x5a\xe0\x30\x1a\x05\x41\xe5\x1c\xa1\x45\x07\x65\x4e\x8f\xe9\x9d\xce\xa3\xae\xdd\xb2\xe4\xd9\xff\x88\x16\x5c\xaa\xaa\xa3\x69\xf2\x2c\x8c\x23\x6f\xa3\xe6\xaa\x51\xab\xdf\xe2\x28\x1c\xa7\xdb\xbf\x43\xbb\x66\xeb\xdb\x65\x15\x00\x9d\xad\x09\x2e\x83\xa1\xa7\x45\x88\x25\xed\x25\xa1\x87\x74\x18\xe6\x7b\x79\x2b\x4f\x54\xa1\xdc\x2a\x29\x9f\x05\x5e\x19\x55\x48\xa8\x20\xa6\x9a\x0e\xcb\x10\xb7\xbd\x37\x45\xcc\x89\xc3\x2d\x3d\xe2\x9f\x05\xf6\xfb\xbc\xb3\x77\x9d\xba\xa8\xde\xbd\x49\x9e\x41\x47\xfd\x36\x9b\xa8\x99\x30\x14\x5d\xb6\x4c\x9e\x89\xfe\x2d\x86\xcf\xae\xd1\xe2\x89\xd3\xe2\x06\x05\xdf\xec\x5e\x7e\xf3\xdc\xa9\xd1\x12\x05\x97\x41\xd4\x1a\x5e\x74\x6b\x27\xa1\xa8\x43\xb9\xb3\xf3\x7a\x67\xfb\xb7\x72\xe7\xf9\x77\x6f\x60\xe4\xee\x9f\x58\xf4\xed\x13\x5a\x7e\xdd\x6a\xb9\x28\xf1\xea\x89\x25\x5e\xdb\xc6\x36\x5b\x57\x8b\x5c\x6e\x43\x08\xef\xf4\x5a\x44\x9e\xfd\xd7\xff\x0d\xc7\x3b\xdb\x7f\x9b\x0c\x61\x16\x37\x54\xf0\xea\x3c\xd8\x5b\xa6\xac\xc0\x47\x39\x0f\x73\xb4\xbb\x13\x6d\xef\x8e\xd8\x70\x88\x68\x42\x8c\x8a\x78\x8f\x8f\xc9\x44\xeb\xcd\x94\x62\x57\xee\xff\x56\x7b\x40\xf7\xe8\x48\xa9\x55\xe8\x5e\x20\x99\xa2\x60\x64\x2e\x3e\xe8\x5e\x10\x8c\xe4\x46\x24\xdd\x11\xdd\xd0\xd7\xae\xa9\xd5\x56\xfd\x52\x83\x45\xab\x55\x93\x4d\xf9\xfe\x79\x04\xc6\x07\x9b\x1c\xb5\x68\x37\x8a\xd0\x65\x88\x8d\x6d\x9d\xac\x43\x04\x77\xf2\x70\xf9\x61\xea\x71\x58\x1b\x07\xb9\x90\x9e\x89\x99\xea\xa4\x39\x75\xd2\x5c\x81\x91\x34\x76\xbe\x9e\x3b\x5f\x69\xeb\xeb\xc7\x9a\xa8\xd3\xfc\xba\xef\x7c\x9d\xb5\xbe\x7e\x70\xbe\x2e\x5a\x5f\xdf\x39\x5f\xef\xf5\x57\x26\x63\xc1\x36\xe3\x11\xc4\xb2\x03\x06\x03\xdf\x29\x43\x70\x11\xca\xef\xb6\x5b\xd1\xc3\xdd\xe8\x61\x4a\xf3\x39\xb9\x2e\xcd\x69\xe3\x9e\x3d\xbb\xe8\x8e\x11\x8e\xf5\x27\x79\x0c\xb7\x8f\xa2\x43\x05\x39\x5d\xa1\x8c\x4e\x3f\x8f\xe2\x17\xe6\x8d\xef\xf4\x05\x51\x55\x21\xcd\x0c\x7c\x91\x26\x7f\x34\x4d\xb6\x0c\xc8\x17\x21\x7c\x6a\x09\x6b\x56\xe6\x8b\xd0\x3d\x37\x74\x2d\xeb\xf3\x45\x08\x7f\x30\x84\x35\x83\xf5\x45\xc8\xee\x5b\xb2\x86\x37\xfb\x22\x84\xdf\x69\xc2\xe0\xfc\xd2\x6b\xb1\xc8\x5e\x0e\xf8\xab\x69\x70\x2d\x0f\xd7\x88\xea\x83\x2b\xa9\xea\x6b\x7d\xb5\xdc\x42\x2d\x85\x57\x45\x3a\xc6\x93\xca\x44\x4b\xd2\x02\x81\x06\x0b\xc0\xf9\x94\x82\x12\xe1\xab\x35\xee\x48\xb9\xcc\x10\x9a\x1f\xca\xc2\x36\x0c\x74\xab\x62\x02\xcc\xe7\x98\x25\x58\x02\x8f\x89\xfd\xea\x1d\x2d\x92\x1d\x05\xa2\x28\x58\xf5\x9d\x75\xaa\x69\xd9\xbc\xf6\x05\x01\xfe\xfe\xf9\x9f\xfe\xe4\x20\xfe\x81\x3a\x22\x0c\x4e\x97\x22\x79\x5f\xd0\xe8\xd3\x5b\xcc\xfa\x7f\xdd\xbe\x22\xbc\x88\xfb\x3f\x50\xde\x07\x9c\xbf\x58\x83\xd0\xc9\x8a\x29\x53\xaf\x15\x6f\x1d\x62\xdb\xcf\x5f\xbe\xfc\x6b\x54\xaf\xb6\x9b\x51\x7b\x34\xd8\x5b\x88\xe4\xf9\x0b\xd6\xbe\x46\x72\x71\x42\xdc\xbd\x8d\xcc\xc3\x20\x2f\xc5\x9c\x75\x00\x43\x06\x83\xfc\xfb\xef\x9e\xff\xed\xbb\xbf\xfd\xf9\x2f\xcf\xff\xe6\x6d\x1f\x66\x69\x3e\x93\x6d\xfb\xf6\x79\xad\x71\x79\x47\xe3\x72\x09\x88\x2e\x3b\xbb\xdd\x82\x0a\xf1\x78\xd9\x34\x8a\x97\x9d\xbc\xbd\xab\x71\xdb\x65\x8e\x31\x1e\xee\x4e\xda\x95\xba\x60\xf7\x24\xbf\xee\x73\xda\x07\x3a\x7d\xaa\x2a\x49\xf2\xfe\x92\x2e\xcb\x2c\xe5\x78\xd6\x2f\x32\xca\x21\x8c\x32\x4e\x67\x7d\x3a\xef\xa7\x7d\x86\x41\xe7\x23\x3f\x35\x6a\x0e\x25\x25\xdc\xd4\xed\x17\xc2\x6f\x5a\x4c\xfa\x7f\x42\x0d\x51\xfd\xd5\xf3\x49\xc2\xcc\x15\x86\x67\xe1\xf0\xe6\xf2\xcd\xe8\xdd\x76\x86\x6f\x71\xf6\x15\x17\xf0\x39\x4f\xa7\x1f\x12\xf1\x97\xb2\xb4\x7e\xfd\xda\xb5\x7a\xd5\xe2\x4d\xc5\x31\x9d\x8c\x27\xb2\x95\xa0\x97\x5e\xbb\x5a\x9b\x17\x49\x0e\x1a\xad\xc8\x8c\x14\x84\x27\x90\x15\x0b\x80\xbb\xb8\x45\x26\xd9\x70\xd8\xc3\x59\x81\xd5\xa2\x61\x63\x3e\xe9\xd9\xf2\xf3\xca\xbd\x39\x02\x4a\x63\x3e\x11\xfb\x8b\xbc\x96\x62\x78\xde\x79\xcf\x24\x53\xe3\x09\xa4\x64\xee\x95\x0b\x76\x1b\x3c\xc6\x13\xa7\xce\xb6\x68\x1b\x39\x5b\xf7\xa4\x27\x5c\x5d\x7d\x0b\x6c\xf8\xf4\x8d\x75\xc0\x82\x5b\x3c\x4d\xf0\xba\x9e\x04\x7c\x50\xcf\x71\x21\x26\xb5\x8c\x7e\x20\x68\x18\xa3\x13\xd1\x22\x78\x7e\xc3\xa8\x63\x73\xca\xd7\xe7\xe3\x4e\x46\x27\x93\x23\x00\xfb\xb3\x21\x26\x33\x4e\xe9\xb2\x69\xf1\xa8\x93\x8a\x31\x31\xcf\xb2\xc7\xe1\x5c\x3f\x4b\xef\xba\x72\x60\xb5\xe0\xaf\x31\xaf\xa7\xaa\x0f\xa2\x25\xd8\x02\x52\x33\xf5\xd4\x78\x6a\x22\x55\x86\xf3\xae\x98\xe8\x36\xa9\x33\xb2\x62\xad\xb0\xe6\x32\xcd\xe9\x6c\x3d\x2c\xb8\xc1\xee\xe9\xf2\x34\xf8\x12\x4c\x06\x93\x50\xc2\xaf\x4a\x92\xcd\x30\xeb\xc0\xa8\x89\xe7\x94\x29\xd8\x61\x79\xbf\x20\x8d\x5d\x11\x8e\xdf\xd2\x19\x3e\x38\x3d\xb9\x60\x18\xbf\xa6\x76\x6f\xaa\xab\x37\x6b\xfa\x11\x3d\x97\x99\x33\x93\xb0\x63\x1f\xcf\xa3\xd5\x0a\x6e\x84\xa5\xa7\x58\x2e\x38\x5d\x5e\x28\x28\x6f\x86\xb0\xc5\xc9\x6d\x4d\xf1\x5c\xe2\x10\xbf\x2f\x70\x86\x0b\xed\x70\x5a\x8f\x6a\xa9\x43\x78\xb7\x3e\x36\x66\x84\x86\x69\xad\x27\x87\x4b\x2a\x28\x65\x9f\x73\x46\xae\xca\xba\xef\x10\x0c\x09\xae\x7d\x86\x89\x5d\x21\x56\x85\x2c\xf6\xf4\x93\x98\x1e\x5d\x5d\x98\xb7\x00\x94\x9c\xde\xd3\x16\x6f\xda\x92\x3d\x14\x6b\xde\x0b\x91\x2c\x7b\x33\x72\x86\x3a\xa3\xd3\x0f\x07\x78\x09\xe0\x80\xdc\xdb\xcd\xb9\xee\x66\x92\xe4\xed\x6e\x26\xf1\xe5\x25\x5d\xe2\x1c\x08\x35\x91\x9a\xd4\xd6\x8c\x65\x87\xc5\x3c\xbd\x7e\x9b\x2e\x30\x70\x26\x17\x47\x17\xc7\x87\xc1\x16\x38\x14\x07\xe7\xaf\xcf\x8e\xde\x5d\x98\x5f\x17\xbf\xaa\x4f\x5a\xb1\xa1\x00\xb1\x5b\x75\x1e\x0e\x35\x9a\x78\xba\x5c\xe2\x7c\xf6\x9a\x2e\x60\x64\x82\xff\x1a\x5e\x8d\x82\x21\x1b\x06\xff\x15\x44\x95\xb3\xff\xb9\x95\xb5\xd3\x2c\xaa\x90\x68\xc6\x34\xa3\x05\x7e\x62\x3b\xea\xb4\x2d\x05\x87\x38\x7a\x5a\x5b\xb7\xb7\xbb\x5a\xdb\xd5\xd6\x6d\xa7\xad\xb2\x25\x32\xc5\x8f\x17\x27\xc7\x49\xdb\x40\xf5\x91\x21\x49\x12\xb0\x61\x54\xd5\xd4\xbf\xa0\x9a\xe2\x87\x31\x8e\xa9\x35\xdc\x16\x58\x5b\xbc\x6a\xda\x74\xd4\xfb\x3a\x5b\xb0\xff\x0a\x22\x59\xf6\xfe\x2b\x5d\xc0\x83\x36\xdb\xd2\x56\xc1\xc1\x4b\x99\x88\x7e\xbf\xbd\x1b\x05\x5c\xb0\xb3\x89\x3a\x54\x42\x3a\xdc\x45\x74\xf8\x6d\x04\x5e\xe9\xc1\x4b\x7e\x45\x67\xf7\xdf\x07\x43\x3e\x0c\x5e\x3e\x53\x3f\xa2\x2a\x80\x1c\x7b\x1d\xd5\xe8\xff\x57\x10\x8d\x36\x6f\x4e\xfa\x58\x73\x9c\x93\x8d\xc5\xaf\x69\x3e\x65\x98\xe3\x57\xb4\xcc\x67\x12\xa1\x5d\xf7\x3d\x22\x28\x8d\xdc\xf1\xba\xa8\x5d\xcb\xeb\x09\x21\xa3\x2d\x78\x47\x0d\xa5\x49\x98\x27\xa1\x5c\x1f\x91\xa1\xab\x94\x70\x21\x49\x18\xf0\x15\xe7\xe4\x2a\x23\xf9\x75\xb4\x97\xc7\x59\x5a\x70\xc0\x47\x1f\x91\x78\xc9\xf0\x2d\xa1\x65\xa1\x3f\x6b\xbd\x9e\x99\x06\xb4\x36\x0d\xa8\x3b\x0d\xe8\x9e\xaf\xc3\x44\x03\x6a\x1d\x36\xda\xa0\xe7\xc3\x74\x30\xf8\x16\x2c\x5e\xc5\x19\x78\x71\xbf\xc4\x2a\x6c\x53\x3b\xfd\xea\xbf\x00\xdf\x78\x83\x82\xa1\x5f\x61\x35\x7a\x36\x7e\x6d\x5a\xaf\x42\x41\x99\x5e\xcd\x31\x9e\x15\x87\x1f\x39\x4b\x5f\x8b\x9c\x62\x4a\xad\xf9\x9c\x6c\xed\xd6\xea\xe2\x96\xe6\xac\xfe\x68\x93\x44\xa2\xb6\x62\x5f\x6a\x55\xd6\x9c\x8a\x7a\xda\x0f\x06\xc1\xc5\xab\xd3\x83\x5f\x83\xad\xc4\x3b\x25\xc4\xf7\x1f\x0f\xf7\x0f\xd6\x7d\x7f\x73\x7a\x7a\xd1\xfd\x5d\x36\xda\xa9\x4d\x18\xc0\x42\x0a\x9a\x48\xff\x24\xbf\x6e\xf7\x89\x92\xbb\xe1\xe2\x5d\xe7\x07\x4d\x70\xbd\x1f\x1c\xf2\xb5\x71\xab\x94\x6f\xd4\x19\x5e\x50\xcf\xb9\xac\xee\x41\xac\x31\xfd\x60\x10\xe6\x89\xbc\x7e\x77\xb6\x9a\x19\x5d\x80\x2f\x47\xfd\xb8\x0e\xa4\x01\x71\x10\xf5\x68\xfd\x54\x0e\xc4\xca\x0d\x10\x8b\x10\x89\x49\x5e\x60\xc6\x5f\x49\xe0\x4e\x8e\x28\xca\xeb\x15\x6f\x55\xce\xad\xbe\x44\xe1\x43\xb9\x38\xdf\xdf\xe2\x3b\x95\x42\x71\x53\x51\x93\xe5\xa3\xa0\x4a\x30\x51\x4f\xbc\xd7\xad\x2e\x72\x4a\x07\x43\x08\xa1\xe7\x9d\xdf\xb7\x0b\xf7\xd7\x1d\x61\x78\x1b\xe0\x76\xb9\xfb\xda\x28\x75\xec\xab\x25\xa3\xd7\x2c\x5d\x3c\x21\xdc\xcb\x27\xb0\x98\xaa\xb1\xc9\x25\xc2\xb1\x8e\xfb\xa2\x2e\xaf\xdb\x72\x1d\x62\x09\x8e\xc9\x4c\xfa\xf7\x60\x9e\x02\xf6\xf3\x95\x38\x0e\x51\x9a\xb0\xd5\x2a\x98\x66\x04\xe7\x7c\x3b\x18\xfe\x73\x38\x54\xbb\xd7\x03\x99\x8d\x52\x24\x52\x8f\x08\x92\xe3\xef\x5a\x8b\x28\x1c\x8d\x22\x61\xd2\xb0\xde\xc1\x56\x61\x88\x44\x23\x62\x04\xa4\xd5\x2a\xe4\xc9\xff\x3b\x3f\x7d\x1b\xc3\xe5\x48\x48\xa3\x08\x89\x2d\xfd\x28\xc4\x48\x16\x02\x35\x19\x71\x04\x68\x9a\x0c\xb3\x51\x51\x45\x55\xa5\xec\x96\xca\xeb\x16\x2f\x68\x8d\xef\x5b\x3a\xeb\xd4\xd1\x59\xd3\xef\xbf\xdd\xa3\xdb\xdf\x8e\x76\x22\x54\x24\xdf\xbe\x28\x5e\x52\x00\xb4\x4e\xc7\xc5\xf6\xb7\xae\xf6\xba\x98\x68\xf3\x9d\x32\xcb\x00\xcd\xa2\x94\x7a\x09\xe5\xbb\xc5\x70\x3a\xbd\x49\xaf\x32\x1c\x85\xc1\x89\x8a\xf4\xaf\xb4\x57\x27\x98\xa7\xb3\x94\xa7\xfd\x39\x65\xfd\x60\xc8\x34\x46\x31\xe4\x9c\x91\x29\x8f\x42\x1b\x7c\x27\xa6\xcb\xc2\x17\x55\x00\x99\x93\x3a\x1d\xe7\x93\x5e\x71\x47\xf8\xf4\x26\x64\xa0\xca\x8a\x1e\xa6\x69\x81\x03\x4e\x83\x51\x36\x66\x2a\x48\x1e\x1e\x52\xe9\xee\xd4\x83\x8f\xe4\xdb\xe7\xc1\x08\x9e\x24\xd4\xba\xfa\x01\xbd\xea\x66\xab\x65\x92\x01\xc6\xdd\xcf\x26\x60\x84\x8c\xd5\x1d\xd2\xc8\x4d\x5f\x70\x56\x4f\x6c\x14\xa1\x8d\x84\x32\x68\xdc\x76\x23\x3d\xdd\xab\xe7\x80\xfb\xad\x06\xfd\x6d\x10\xe9\x3b\x4a\x51\x43\x5a\x2b\xca\x9f\xde\x97\x12\xf0\x17\x9d\x84\x5b\x5b\xb5\xce\x58\x32\xb2\x20\x9c\xdc\xd6\xfa\xe3\x2e\xa4\x82\x53\x71\x92\xe9\x98\x0f\x6e\x2a\xa2\x22\xf5\x60\x36\xa6\x93\x5a\x83\x14\xdb\x29\x26\x4e\xbb\x4d\xce\xc7\x46\x55\xb3\xf4\xf7\xfb\x6d\x38\x1a\xd2\x9c\xb7\x32\x9e\xf2\x1b\xcc\x42\x2a\x51\x83\xc7\xa5\x8c\x2b\x99\x4d\xcc\x5a\x39\xaf\x2b\x08\x84\x6c\x86\xe3\x8c\x5e\xcb\xf9\xda\x90\x43\x25\x9b\x0c\x2c\xab\xe1\x69\xeb\xc6\xd9\x5d\x7e\xdc\x81\xd4\xd0\x26\xc1\x10\x4e\x10\xd0\x7b\x47\x91\xba\xe6\x16\x9c\xdb\xd0\x68\x7f\x82\x10\x58\xea\x28\x10\x35\x79\x77\xbc\xff\xfa\xf0\xc7\xd3\xe3\x83\xc3\xb3\xcb\x1f\xf7\xdf\x1e\x40\xb0\xf3\x5f\x98\xe0\x3d\x66\x5a\x56\xc6\xf1\xbb\x94\x09\x99\xf8\x40\x6c\x87\x60\x8f\x07\x1a\xb1\x99\x6c\x83\x4d\xd6\xfc\x7d\x98\x5e\x63\xd6\x7c\x79\x9c\xfe\x7e\xdf\x7c\xf7\x1a\xf6\x4e\xd1\xf7\xef\xe4\x56\x5d\x7b\x27\xe5\x16\xd5\x9f\xaf\xd5\x99\x92\xe0\x78\xff\xaa\xe0\x2c\x9d\x72\xe7\x95\x20\xee\xfc\x3c\x01\x28\x04\x91\xf4\xe2\xe2\xec\xfc\xf2\xd5\xf1\xe9\xeb\x9f\x5c\x91\xbd\x44\x59\xcf\xdb\x07\xdb\xbb\x28\xcc\x92\x72\xb5\x0a\xcb\xe4\xa1\x8a\xa2\x71\x16\x9f\x2e\x71\x6e\x02\xac\xe9\xe3\x7b\x67\x92\x04\xbe\x0f\x01\xca\xc6\x59\x7c\x40\x66\xaf\x6b\x52\xf8\xee\x24\x09\x9a\x2f\x4d\x52\xa9\x71\x38\x4e\xef\x69\xc9\x93\xe7\x32\xa5\xfb\x4e\x25\x84\xa0\x75\x98\x25\xdf\x8a\x14\xea\x47\xa0\x8c\xf6\x68\x7c\xba\x2c\x7a\xf5\xe6\x06\x83\x94\x73\x56\xc8\x24\x10\xc5\x7a\x63\x95\x9b\xb2\x59\x8f\xe9\x7c\x5e\x60\xae\xef\x21\x20\xcc\x61\x6d\x43\x55\x8c\x51\x99\x4f\x8b\x64\x3c\xd9\x5c\xc9\x69\x54\x58\x90\x55\xe1\xa2\x47\x4e\x29\x46\x9b\x28\x13\xe8\x6b\x83\x4a\x81\x7c\x90\xac\x63\x01\x8d\x9d\x6a\x83\x27\x9b\xa5\xc8\x24\x4c\x94\x21\x3a\xce\x27\x91\xd6\xf2\x54\xa1\x63\x7e\xb0\x74\x11\xbe\xf2\x04\x8f\x77\x27\xe2\xb8\x1e\x3f\x9f\x88\xc3\x7a\xfc\xed\xa4\xc7\x62\xfc\x71\xc9\x42\x12\x21\xba\x27\xbd\xf7\x60\x0a\x08\xee\x2b\xcc\x91\xd8\xab\x46\xed\xd7\x10\xe3\xcc\x8d\xff\xba\x78\x62\x39\xb3\xfb\x3c\x5d\x90\x69\xbd\x94\xfa\x4b\x5d\x86\x59\x00\x0d\x99\xbf\xd5\x6b\x6d\xf4\xb4\x5b\x07\x53\x4d\xe1\xa2\xe1\xbb\xfe\x7d\x64\xcd\x30\xd2\xd9\x2c\x0c\xc8\x3c\xf0\x9b\xf8\x8b\x43\x1b\xaf\x56\xbb\x00\x38\x67\x94\xd4\x8d\xab\x85\xf3\x5f\xdf\x5e\xec\xff\xbd\x7f\x78\x76\x76\x7a\x36\xea\xff\x1f\x32\xef\x33\xfc\xaf\x92\x30\x5c\xf4\xd3\xbe\x0c\x6a\xda\xd7\x5c\x81\x90\x93\xa5\xe9\xc7\xbd\xd8\x13\x8e\xe6\xe1\x43\xca\xae\x0b\xaf\xdb\x14\x74\x17\x1e\xef\x4c\x04\xdb\xcb\xa9\xc6\x35\x8a\xd0\x6e\x85\xc8\xfc\x82\xd5\x6f\x45\x05\x67\x7c\x4b\x3f\xe0\x73\x9e\x72\x32\x85\xcd\x26\x64\x82\x5d\x9f\xbf\x49\xb3\xa2\x96\x34\x1f\x0c\x7c\xa9\xf3\x48\xe3\x08\xca\x5e\x29\xf3\x0c\x17\xc5\x17\xec\x19\x49\xf0\x7f\xa5\x77\xba\x9b\xec\xeb\xa0\x8e\xbe\xac\xf5\xce\x1d\xa9\x63\x72\x7d\x66\xdf\x40\x80\xb1\xaf\xd0\x33\xb3\x72\x19\x36\x7b\xe8\xf9\xc6\xf3\x07\xed\x7e\xd6\x0c\x12\x0c\xae\xaf\x8f\x68\xf4\x40\x9d\xd6\x74\xb6\x45\x08\xd3\x1f\xf0\x3d\xc8\xd5\xe3\x9d\xc9\x78\x67\xb2\x47\x65\xf3\xf8\x78\x57\xfc\x8c\x46\x14\xf6\xdb\x77\x9a\xd1\x3a\xd3\xc0\xf9\x2a\x36\x33\x75\x7b\xe3\x79\x85\x84\x9c\xec\x16\x24\xb2\xf3\x23\x8e\xc1\x57\x35\x14\xe9\xff\x59\x2e\x96\xef\x61\xa2\x86\xc1\xe1\xf1\xf9\x61\x20\x5e\x8a\x32\xc0\x5a\x17\x92\x88\x3e\xb5\xfc\x59\x3c\x5f\xa2\x5d\xf1\x5a\x56\xfa\x82\x86\xc1\xd1\xc5\xe1\x19\xe4\xc3\x39\xc7\xec\x98\x14\x3c\x0c\x40\x27\x20\xde\x65\x42\x3e\x74\xd2\x40\xf0\x4b\x21\xe4\xbe\x3a\x3b\xdc\xff\xc9\x4d\x62\xb2\xf8\x46\xe6\x39\xd4\x8b\x2e\xc3\xe7\xba\xd6\x61\xf0\xe6\xe8\xed\xfe\xf1\x71\xad\x18\x4b\x14\x7f\x24\x1c\xaa\xa2\x32\xda\xf6\x74\x66\x56\xed\xcf\x07\x03\x5f\x1d\x9a\xa3\x4d\xf2\x6d\xac\x99\x81\x2f\xb7\x9b\x1a\xa2\x9f\xb7\x3a\xec\x15\xbd\xe3\x16\xee\x0b\x78\xe2\x20\x31\xca\x0b\x7a\xab\x9f\x0b\xb6\x92\x24\x1d\x0c\x82\xeb\x92\xcc\xe0\xf9\x29\xb5\x9f\x51\x2c\xa3\x0a\xf2\xf4\x03\xee\xa7\xfd\x7f\x04\x43\x36\xde\x99\x0c\x83\x7f\xf4\xa5\x68\x03\x8d\x80\xd9\x9a\x8f\xe9\xc4\x40\x3d\x7a\xd7\xf3\x77\xfe\x15\xdc\xd2\x7d\x84\x52\x63\xd2\xde\xcb\x10\xe0\x68\x34\xd2\xd6\x87\x73\x5b\x6c\x49\xdb\xea\x48\xde\xbe\x4d\xd9\x9a\xa3\x80\x1b\x9d\xb0\xe8\xdc\x54\xfa\xdc\x13\xcd\xdd\xbc\x4b\x59\xba\x28\xc2\x54\xe3\xea\x1c\x48\x9a\xe7\x53\xba\xc4\x50\xc3\x2b\x92\xcf\x6a\x2f\xe9\xfa\x7a\xd7\x09\x54\x38\x2b\x70\xbf\x63\xcf\xb6\xed\x71\x22\xad\x75\x35\xa3\x65\x31\x29\x7a\x5d\x6c\x75\x05\x10\x35\xec\xf1\x8f\x38\x5b\x62\x39\x26\xc0\xf4\x28\x95\xbb\x72\x2a\xc2\xb2\x0f\xb4\xa3\xff\xae\x18\x57\xd5\x8d\x86\x42\x48\x25\x7b\x93\x22\x8e\xb6\x54\x70\x88\x28\x42\xfc\xf1\xaa\x6a\x9b\x50\x3e\x18\x88\xce\xee\xf9\xaa\x4d\x06\x83\xbc\xa3\xce\x44\xd0\x00\x75\x9f\x56\xb2\xf6\xea\x23\x67\x6b\x6d\xdd\xcd\x3b\x2b\xcf\x44\xe5\xe1\x59\x6e\xb7\x80\x86\x82\x1e\x40\x45\x50\x8c\x30\x22\x79\x46\x72\x5c\x8c\x78\x55\x09\xfe\x5a\x6b\x87\x0a\xa9\x38\x92\x1f\x95\x49\x05\xbc\xd7\xd6\x14\xea\x53\xc2\xa4\xd5\xd3\xed\x7a\x1b\x85\xff\x0c\x56\x3e\x9d\xcd\x94\x16\xa7\x6d\x54\xb0\x50\x1f\x70\x17\xcf\xaf\x95\x78\x06\xe5\xc1\x2d\xd1\xf2\xb0\xe9\x9e\xe6\xfa\x15\xc5\xa8\x96\x79\x54\x97\x09\xd2\x49\x14\xda\x8f\x52\x32\x40\xf7\xff\x9f\xef\xcb\xfa\xb5\x0c\x86\xad\x68\xde\x34\x5a\xa6\x7a\x01\x80\x4e\x97\x05\x48\x6e\xf7\x74\xbc\x33\x49\x92\x64\x1a\xcb\xe5\x12\xb1\x84\x8a\x73\x22\x4f\xa8\x90\x64\x48\x42\x85\x24\x03\xa6\x29\x2a\xf1\x96\x48\xfc\x3e\xff\x90\xd3\xbb\xbc\x4d\xd1\x64\x27\xa0\x04\xac\x5a\x83\x2b\xad\xc0\xec\xf8\xaa\x9b\x15\x3d\xba\x4a\x17\xda\x1a\x74\xd9\x38\x03\x5e\x03\xd0\x44\xc5\x9e\x2d\x78\x54\x54\x2e\x58\x76\x2a\x09\x95\x49\x7b\x7e\xf8\x28\x95\x2e\xa5\xb2\x6a\xb6\x4a\x89\x98\x82\xe2\x75\x97\x10\x6e\x06\x7f\x6a\xd4\x18\xb2\xe4\x4c\x2a\x06\x38\x72\xbf\xce\x64\xef\x78\x2e\x2e\x5b\xe3\x6b\xb0\x01\xf4\xf5\x88\x26\x11\xb9\xf6\x00\xfa\x65\xaf\x5e\xca\xf6\xae\x1b\x51\x5b\x56\x45\xee\x3c\xb0\x5b\xc2\x31\x58\x0f\x52\x6d\xb2\xd6\x1a\x23\x61\xe2\xdc\x06\x45\x95\x84\x59\x91\x0a\x6d\xe5\xcf\x85\xd1\xf8\xe1\x03\xbe\x1f\x29\xfd\xe9\x05\xa8\xec\xba\xbc\x80\x9a\x35\xaa\xaa\x49\xa4\x4d\x52\xda\x8a\xa5\x6b\x68\xc8\xd5\x93\xbb\x1f\x54\xe5\xb3\xff\x88\xee\x97\x55\xb1\x87\x82\x33\x04\x70\x3c\xa8\x10\xd3\x24\xbf\x96\x8a\xa3\x4d\xc7\x45\x9a\x70\x7c\x81\xd1\x90\x15\x6c\x8e\x46\xd3\xb1\xc3\x32\x96\xf5\x4e\x9a\xd7\xe3\xdd\xe1\x64\x0e\xba\x87\x9b\x9e\x64\x47\xa6\xf1\x05\xfe\xc8\x9b\x88\x7b\x3c\xe6\xf8\x23\x0f\xc5\x9e\xe5\xb0\x2e\xd3\x58\xdd\xb0\xb6\x93\x4f\xd5\xd5\x6b\x3b\x87\x73\x8f\xe9\xc9\xe6\x7c\x0d\x6b\xf9\xde\x38\xf7\x82\xed\x7c\xb5\x5b\xc3\x5a\x3e\x1d\x83\xad\x99\x47\xf1\xdc\xb1\xbe\x83\x41\x3e\xdd\x10\xf0\x1d\x66\x10\xd5\x75\x81\xa6\x18\xe6\x88\x81\x75\x81\xba\x35\xf7\x70\xdd\x4a\x57\x2a\x7f\x4a\x3b\x58\x1d\xc3\x3b\xed\xeb\xe8\x6d\xa3\xbe\xdc\xd3\x8b\xfe\x22\xbd\x87\x6f\x57\xb8\x5f\x16\x18\x6c\x40\x21\x18\xb8\xe2\xd4\xe7\x94\x2d\xc0\xd4\xd3\x04\x7e\x0b\x53\x79\x82\x3a\xed\x95\x6c\xe6\x3e\xe7\x1d\x2d\xc6\x72\xdf\xc7\xf2\xd8\x00\x05\x18\x57\x2c\x19\xa8\xb7\x18\x22\x8a\xe7\xd3\x14\x0f\xac\xf2\xab\x49\x72\x11\x62\xb4\xb5\x2b\x81\x11\xdd\x39\x61\x55\x72\xcd\x1c\x4b\x5f\x8e\x0b\x56\x16\x00\x3b\xdc\x55\xc4\x4e\x47\x86\xc7\x8b\x6a\xe6\x3c\xb5\xd7\xc7\xdd\xfd\xd3\x13\xbd\xb3\x5a\x71\x21\x83\x9b\x22\xc0\xbe\x59\xa4\x86\x38\xfb\x70\x0f\x6d\xa4\x7b\x3d\xf3\x98\xaf\xe3\x0c\x85\x35\x03\xd2\x9c\x75\x78\xfc\xdd\x04\x30\xed\xf5\x55\xa7\x10\x52\xf4\x85\x9d\x76\x65\xda\x81\x30\x94\x5c\x31\xa5\x52\xb2\x78\xb0\x9b\xd5\x88\xa0\xa5\x10\x70\x30\xc7\xac\x18\xe5\xf1\xe1\xc9\xbb\x8b\x5f\x2f\xf7\xcf\xce\xf6\x7f\x95\x2c\x7d\x8b\x7d\x66\xa8\x94\x4c\x33\x15\x63\x54\x48\xde\xd9\x3b\xb4\x9f\xd2\x14\xb3\xd2\x4a\xcf\xa2\x92\x5b\xe9\x1b\xca\x2e\xd2\xeb\x90\xa1\x22\x42\x59\x52\xc6\xf2\xd2\x0e\x4d\x93\x32\x9e\x3a\x31\x0e\xd1\x5c\xbc\x30\x67\x8f\xb3\x06\xb3\xd5\x4a\x3d\x4d\x1f\x59\x8d\xa3\xfe\xeb\x34\x17\x8b\x6d\x4e\xf2\x59\xdf\x08\x36\xf6\x52\x73\xe6\xe9\xed\xd9\xa7\xf6\x36\x50\xbc\xa9\x8f\x67\x6f\xbe\x17\x4a\xc0\x0b\xd3\xad\xf6\x06\x28\xcc\x20\x6c\xb8\x23\x39\xda\x61\x9a\xa2\x39\x9a\x39\x03\x75\x33\x18\xdc\x44\xd1\x68\x33\x62\x2e\x99\x36\x11\x77\xb0\xd5\xad\xd4\x26\xdb\x88\x1d\xdc\x1e\xdf\x4c\x1b\xc8\xa5\xf6\x80\xc1\x3c\x04\xd5\x81\x57\xf9\xa7\x6b\xad\xea\x12\x12\xc4\x63\x7c\x9b\x66\xe7\x70\x54\x8a\x95\x98\x0b\x0a\x4b\xba\xd4\x42\x3b\x77\x54\x48\x35\xbd\xc1\x34\xfe\x95\xe0\x6c\xf6\x68\x73\x7a\x3c\xbe\x17\x09\x43\xd6\xd8\x07\xc5\x1e\x73\x2e\x06\x6f\xcd\xc6\x61\xf3\x8e\xeb\xc7\x9e\xbe\x4a\x5a\x9b\x77\xa6\x12\x85\xcd\x46\xb2\xc6\x11\x4a\x70\xce\xcf\xc9\x0c\x66\x46\x7b\x2f\x63\xea\x00\x16\x93\x5d\x82\x34\xba\xad\x00\xb3\xa7\xc7\x7b\x61\x4b\xf0\xe7\xa1\xa1\x73\x04\xb3\x1e\x3c\x1f\x59\x34\x18\xf0\xf8\xba\x4c\xd9\x0c\xcf\x24\xb9\x56\x5f\xc1\xf2\xd8\xf4\x00\x82\xbd\xe2\x3b\xb9\x57\xfc\xa9\xb1\xed\xd1\x08\xb6\x0b\x77\x1b\xcc\x92\x62\x30\x28\xc4\xa6\x30\x18\x94\x3d\x53\x43\xad\x7f\x14\x62\x43\x86\xa6\x51\x65\x22\xd2\x00\x7b\xe3\x28\x0e\xa4\x32\xa3\xf4\x5e\x39\xb6\x59\x8b\xa7\x9e\x01\xa2\x61\x8e\xce\xa4\x6c\x5d\x53\xb6\x8b\x98\x35\x52\xb8\x4a\xdc\x62\xa7\x4e\xac\x3d\x8f\xa2\x87\x46\x69\xee\xad\xa6\xb7\x30\x37\x81\xa7\x2c\x10\xc7\x55\xec\x15\x57\x03\xc9\xec\xa4\x1a\xd3\x89\x03\x51\x2a\xd9\x3d\xc2\xc3\x86\x67\xae\x1d\xf3\xef\xbf\xff\x56\xdb\x79\xfc\x65\xa0\x8c\x3c\xfa\x3b\x23\xed\xcb\x0e\x96\x00\xfd\xdd\x91\x0b\x6a\xf0\x16\x1c\x90\x42\x16\xc9\x8f\xcf\x47\x6d\xc4\x03\xf3\xf1\xdb\x91\x36\x22\x69\x90\xde\xda\xad\x93\xde\xda\x69\x50\x83\x3d\x5e\xd1\x90\xaf\x2a\xf8\xf5\x1d\xd8\x94\xf4\xff\xd4\x51\x25\x8d\x07\xd8\x61\x36\x03\xc1\x92\x9b\x37\xec\x57\x30\x1d\x0f\xbb\x45\x23\x58\xb8\x20\x4e\xa7\x24\x37\x6e\x69\x8a\xd5\xf9\xc1\x5d\x6f\x46\x4e\x4a\x4b\x4e\x68\x59\xd4\x3f\x32\x2b\x31\xb5\xe4\x24\xaf\xdb\x45\xc1\x67\x4d\x90\x64\x43\x41\xd4\x45\x72\xd4\x8f\x26\x2d\xb8\xde\x0e\xb6\x76\x9e\x9c\x63\x37\xaa\x14\xb4\x49\xc1\x9b\xda\x1a\xed\x08\x1a\x5f\x95\x24\x9b\x19\xa7\x01\x2b\x0e\x5e\x63\xae\xda\xee\x2b\x66\xaf\xbb\x23\x47\xdd\xdd\xa8\xd4\x52\xa7\x1b\x8d\x97\xb4\x83\x50\xa2\xac\x12\x85\xd5\x18\x29\x06\x87\x25\x4c\xab\x10\xc1\x01\x82\xfc\x2e\x0e\xa8\x35\x4a\x2b\x9b\xae\xe5\x47\x52\xf0\xd9\x31\xb9\x4a\x0e\xcd\x7a\x54\xa6\xa0\x8d\xdd\xda\xdf\x8b\x4e\x8d\xb5\x3a\xd3\x39\x2c\xb8\x4b\xa6\x61\xd1\x5e\x53\x07\xba\x64\xa4\x8e\xd4\xa5\xe2\x28\xf7\x7c\xea\x37\x55\x95\x4b\xad\xab\xb8\x92\xa6\x2a\x6f\x28\xd3\x8e\x3f\x72\x43\x69\x64\x73\xee\x4a\x9c\x8e\x8e\x6f\x70\xba\x44\x79\xc2\xe2\x45\x9a\x65\x74\x1a\x6a\xf8\x0a\xee\x41\xba\xe4\x63\xe2\x8d\x87\x4e\xf7\xa4\x4b\xe2\xbb\x2c\x9d\xe2\x1b\x2a\x6a\x13\xd2\x68\xa4\xfc\x14\xa9\xb9\xf5\x60\xb1\x60\xaa\x8a\x9b\x13\x59\x54\x8e\x70\x84\x72\xe5\xf1\xd3\xe4\x63\xbd\xc6\x13\xb5\x39\x11\x67\x94\x7e\x28\x97\x3e\x96\xcd\x85\x80\x56\x2c\x2d\xdb\x7b\x90\x0c\x31\x18\x93\x21\x97\x23\x56\x6f\xcc\x8e\x03\xbf\xab\x91\x5b\x98\xa9\x99\x32\x77\x63\x91\xaf\xda\xf2\x63\x97\xa7\x9c\xae\x37\x62\xd2\x3a\xcb\x0d\x3c\x2e\x41\x9f\x60\x3f\x35\x7d\xa5\x24\x0c\x49\x7d\xb5\x0a\x73\x99\x4d\x9d\x3c\x38\x8a\x90\x6e\x11\xae\x37\x87\xd5\xda\x52\x39\x35\xd5\xd2\xf7\x9a\xc9\xdd\xe8\x5d\x23\xaf\xeb\xd9\xad\xcd\xfe\x40\xea\xde\x9c\x8e\xbe\x5c\x41\x8f\x28\xd5\xb4\x2d\x5b\xb1\x5e\x89\xa3\x26\xaf\x49\xed\xea\xd5\x5a\xa6\x57\xa7\xa8\x69\x9f\xe5\x98\x59\x9d\x7f\x49\x65\x67\x4f\x2b\x46\xa4\xb9\xac\x58\x56\x52\x2f\x65\x60\xa4\x11\x49\x72\xeb\x61\xa1\xcc\x9f\x94\x03\x2a\xfc\x80\x6d\x43\x9e\x95\x09\xc0\xb4\x93\x3d\x15\x6b\xce\xa4\x1e\x91\xe1\xae\x3a\x1e\xac\xd2\x2b\x79\xb8\x49\x8b\xc3\xdb\x34\x1b\xb1\x58\x3d\x21\x55\xb6\x98\x03\x5f\x41\x0d\xe8\x68\xfd\x74\x17\x21\xee\x2a\x61\x41\xe1\x57\xdb\x9d\x7a\x2c\x2e\x78\xca\xf8\x71\x7a\x85\x25\x6f\x1e\xcf\xb1\x60\x3d\x5c\x3e\x6a\x37\x92\xc8\xd6\x66\x61\x5f\x48\x1b\xf9\x06\xb3\x85\x58\xbc\x6c\x1b\x08\x88\xd7\x52\x24\x12\x33\x2f\x9d\xb5\x29\xbb\xa6\x00\xea\x2e\xbe\xb3\x16\x9d\xec\x2b\x03\xf6\x55\xe9\x28\xec\xb5\x2c\x7b\x8c\x1b\x45\x4c\xc9\x38\xde\x01\x17\x72\x8f\xa8\x4c\x4d\x1f\x27\x1a\x52\xb3\x1c\x60\x9e\x3b\x51\xef\x3a\x14\x4c\xca\x55\xc8\xd5\xcd\xdd\xc8\x95\xb7\x3d\xda\xd9\x4e\x01\x1c\x35\x75\xb6\x23\x5c\x45\x15\x44\x76\x58\xd3\x75\x35\x8b\x8b\xb7\x07\x32\x1c\x51\x4d\x41\x69\x1b\xa6\xbf\xfb\x07\xac\xe0\x74\xa9\x27\x8c\xba\xd6\x64\x86\x67\xf6\xeb\x8f\xa9\xf1\xfb\x6c\x98\x8b\x9e\x03\x81\x8f\x8f\x62\x1b\x28\xe3\x4f\xdf\xb2\x91\xea\x3e\xff\xf1\xe4\x18\x21\x90\x84\x4b\x4d\x0e\x57\xaa\x50\x87\x70\xcf\xae\x33\xac\x6f\x83\xd2\x6e\xad\x8e\x3a\x73\xb0\x90\xe6\x8a\xba\x2e\x27\x4b\x0a\x57\x97\x93\xed\x85\x69\xa7\x1e\x03\x47\x28\xed\x50\x8a\x94\x48\xde\xf5\x02\xe7\xb1\xb5\x0b\xcc\x47\x34\xda\x8c\x96\x4b\xa5\x45\xa3\x52\x8c\xe0\xfe\xfa\xfb\x49\x98\x07\xbe\x0b\x4a\x0e\xb0\x94\x8f\x5d\x51\x42\x76\xdf\x25\xa5\xa4\x6b\x3c\x90\x25\x35\x5f\x42\x55\x8e\xdc\x68\x1f\x52\x3e\xc2\x48\xbe\x1a\xf1\x2a\xf2\x21\x29\xb8\x20\x63\x2e\x05\xed\x0a\x2f\x4b\x56\x40\x8e\x86\x97\xca\x6d\x70\x4c\x3e\xce\x27\xe0\x2d\x93\x72\x94\x26\x6c\x4c\x14\x85\xc9\x36\xed\x61\x59\x5c\x48\x51\x6a\x7a\xf0\xc3\xba\x73\xaa\x61\x0e\xa9\x6d\x63\x25\x32\x84\x7c\x56\xae\x27\x20\xcf\xa7\x1e\x08\x83\xd0\xf8\xb0\xcb\xaa\x4b\x87\x69\x09\x9d\x05\xcf\xa8\x71\x18\x56\x6a\x6f\x6f\x38\x98\x4b\x4b\x51\x25\x1f\xd9\xb8\x5d\x61\x1e\xc9\x60\x06\x52\xd2\xed\xad\x19\x4d\x31\x06\xb5\x9e\x56\xe2\x69\xd3\x7d\x43\x49\xab\x56\xf0\x75\x9a\xa9\xfe\x86\x18\xed\xb4\x44\x60\x7f\x32\xeb\xad\x3b\xde\x9d\x44\x75\xa9\x76\xa3\x3c\xce\x8f\xe7\x13\x2b\xe4\x7e\x2a\x05\xe7\xc7\xb7\x93\x08\x98\x38\xd1\x31\x27\xe9\xf4\x86\x34\xe2\x7e\x7e\x56\xff\xec\xee\x3c\xff\x6e\xb3\x2e\x12\x29\x3f\xa1\x97\x5a\xd9\x3e\xa5\xa3\xd6\x13\xf1\xf4\x55\x53\x04\x6a\xf0\x8f\xb6\x27\xc3\xe7\xdf\x45\xf5\xa9\xad\x67\xa9\x59\x42\xb5\x05\xa4\x30\x41\x34\x2f\x8c\xd9\x2d\x6e\x5b\x33\x78\x06\x7a\x7b\xd7\xcd\xf2\x0b\xe1\x37\x0a\xf3\xc5\xb7\x1d\x79\xf3\x5b\x06\x5c\x50\xf0\x4d\x84\x35\x7d\xa7\x8a\x07\xe5\x48\x53\x22\x86\x4d\xef\xcf\x7f\x45\x0d\x56\x45\x09\xdc\xa0\x41\x66\x78\x99\x32\x3c\xb3\x7b\xfd\xd6\xae\xd8\xe3\xb7\x76\xa4\x8c\xea\xf1\x7b\x76\x69\x3f\xff\xab\x93\xec\x3c\x9d\xe3\x35\x49\xff\xe6\x24\x3d\x50\x00\x00\x6f\x58\x7a\xdd\xf4\x26\xb5\x59\xbe\x75\x2b\xf1\xb6\xe6\xb8\x52\x4b\xb6\xeb\x24\xbb\x68\x40\x71\x3b\xc9\x9e\x43\x32\x40\x5e\xb7\x1c\x28\x4b\xf3\x42\x45\x35\xf7\xe6\xfa\xdb\xae\x23\x78\x3f\x21\x9b\x2c\xac\x69\x3e\xe7\x4f\xfc\xdd\x77\x32\x71\xdd\x52\xae\x23\xed\x9f\x0c\xe1\x0e\x9f\xce\x5a\xea\x5d\x4d\x79\x93\xc4\xb6\xce\x67\x94\xf2\x46\x25\xec\x1c\x96\xc3\xb9\x83\x30\xe2\x7b\xbb\xa3\x1d\x93\xe9\x67\xc2\x78\x99\x66\xbe\xbc\xb5\x9c\xbb\x08\x9b\x3c\xe0\x3b\xbd\xa6\xb9\xcf\x9f\xeb\x06\xac\x4b\xf4\xad\x4c\x24\xe7\xf2\x3e\x6b\x82\x7a\x99\x84\x7f\xf9\x9b\x2a\x5a\x89\xa8\x7a\x38\xbd\x3c\xdf\xce\x8a\xf7\x6c\xd6\xbf\xee\x22\xa6\x32\x6b\xff\x2f\x87\x7d\xd2\x21\xea\x3b\xca\xfd\xeb\x73\xd3\x64\x9f\xd8\xe1\x6f\xd5\x5f\x65\xab\x5c\x79\xe9\x1c\x67\xf3\xae\x22\xbe\x53\x45\x78\xe4\xab\xae\x2c\x7f\xf2\x64\x51\x9e\x40\x1d\x39\xfe\xac\x72\x00\x12\xc8\x1b\xca\x84\x30\xda\x95\xf6\x2f\x2a\x6d\x83\x99\x5c\x5b\xc0\xdf\x76\x54\xa6\xa6\xb4\xd5\x95\xfe\x5b\x9b\xbe\xe6\xc9\xd4\x91\xfc\x3b\x67\xea\xc1\x6d\x98\xb7\xeb\xf5\x01\xf2\xa7\xbf\xe8\xc9\xb7\x41\xda\xbf\x1a\xc2\xe7\x8b\x34\xcb\x36\xc8\xf1\x37\x33\xb5\x37\xcb\xf0\xe7\x1d\xa7\x3f\xd5\x62\x5b\x9b\xe1\xbb\xbf\x39\x19\xe0\x9a\xcf\x3f\xd3\xfe\x24\x77\x09\xe3\x73\xd0\x71\x8e\x7c\xeb\x50\x6b\x9d\x1b\x1e\x74\x5d\x9f\x57\xb9\x52\x6c\x76\xed\xc1\x5a\x3a\xf0\x98\x1d\xcb\x93\xbc\xbe\x6e\xeb\x32\x38\x28\x1d\x07\x03\x43\x64\xcd\x3a\x6d\x0a\xef\x90\xbe\xb9\xd2\xbc\x89\x7c\x1b\x9d\x37\x61\x81\xf9\xcf\x29\x23\xe0\x30\xe1\xbc\x33\xcb\xa6\xa5\x3f\x50\xb6\x84\x05\xe6\x62\xcd\xce\x74\xe6\xa2\x45\xdd\x26\x04\x15\x41\x3b\x01\xd4\x93\x2e\xc3\xda\x49\xdf\x58\x80\xde\x4c\xeb\x2f\xc1\x0c\x61\xed\x8a\xa0\x7f\xd7\x86\xa8\x65\xef\x6d\x78\xb0\x8e\x03\x34\x5c\xab\xa2\xaf\xb3\x77\x2e\x27\xe7\xde\xbf\xa2\xa6\xaa\xbf\x4b\x47\xdf\xd0\xfc\xd5\x6f\x49\xad\x86\xde\x90\x6b\x0a\xa0\x35\xf1\x53\x69\x39\xb0\x45\x1c\x7b\x47\x65\x36\x47\x17\xd6\x5a\x4c\x8e\x14\xa6\xe0\xfe\xf0\x5d\x7f\x5f\x65\xd3\x0a\x91\xf5\xb9\x20\xa4\xa6\x94\x24\x5d\xce\xd0\x9e\xaa\x25\x63\xc4\xbb\x38\x6b\xa7\xe1\x77\x4d\x1e\xc5\x64\x38\x02\xed\xeb\xb4\xe3\xbc\xfd\x8b\xdc\x09\xda\x8a\xb2\x0e\xc6\x4b\x96\xe3\x2a\xbf\x3a\x12\xca\x3d\xb4\x0b\x66\xc4\x49\xf8\x37\x7d\x9a\x6a\x5f\xa0\x8e\x2d\xeb\xcf\x90\xce\xb8\xf5\xb4\x07\x52\xf1\xdc\xe1\x9f\xbf\xab\xc9\xc8\x4a\x64\x0f\xd5\x8c\x2e\xd4\xb1\xa1\x7d\x72\x3a\x4a\x93\xac\x99\x72\x10\x5a\x53\xd6\x5f\x36\x29\xab\xb5\x0f\x74\xb1\x53\x36\xbd\xdc\x0e\x3a\xd2\x7d\x6b\xd3\x69\x92\x1d\x29\xbf\x6b\x50\xec\x48\xe6\x70\x0f\x8f\x10\xfc\xb3\x4d\xb9\x8e\xe0\x5f\x91\x09\x3c\xb5\x2e\x99\xe1\xe1\x20\x3a\x44\x47\xa2\x5d\xcd\x64\x66\x34\x9d\x75\xa5\xd1\x05\x82\xa2\xb3\x2b\x91\x2e\x6e\x56\x2e\xfd\x97\x22\x0d\x3f\x56\x77\xcf\x5c\x46\xa8\x43\x81\x23\x69\xff\x19\xe9\xcb\x97\x65\x03\xdb\xd0\x4f\x7b\xb7\x96\xfb\x2f\x86\x1f\x95\x8e\x6c\xff\x7f\xf6\xde\xad\xaf\x8d\x1c\x5b\x1c\x7d\xf7\xa7\x00\x9f\x19\xef\xaa\x41\x78\x6c\xc8\xd5\x44\x61\xd3\x09\xe9\x66\x0f\x21\x3d\x40\x7a\x76\x8f\xc7\x87\x29\x6c\x19\xd4\xb1\xab\x3c\x2a\x19\x9a\x0e\xfe\x7f\xf6\xf3\xd3\xd2\x5d\xa5\x2a\x3b\x49\xcf\x7f\xef\x87\xf3\x90\xe0\xaa\xd2\x5d\x4b\x4b\xeb\xbe\x6a\x21\xce\x30\xc4\x4f\x37\x01\xbc\xaa\xec\x3d\x0e\xee\xfd\x27\xaa\x77\x3a\x7d\xf8\xb8\xbf\x57\x53\xe8\xa9\x3d\x81\x75\xd0\xd1\x77\x4e\x57\xcd\xc9\xda\x73\x26\xda\x48\xf2\xec\xc9\x41\xfd\xb2\x9c\x47\x62\x45\x06\xcb\xf1\x74\x6f\x93\xe5\x10\x4d\x9d\x44\xa8\x6e\x7d\x9a\x9f\xee\x6f\xda\x8a\x14\x9a\x37\xb4\xb4\x11\x0e\x12\x2d\x1d\xff\x2b\xc6\x97\x55\x25\x10\xc9\x53\x71\x48\x1b\x1b\x95\xe0\x97\x95\x25\x61\xfc\xa2\x8e\x02\x4d\x9e\x3e\x33\x57\xc5\xf1\x7c\xc1\x1f\x7c\x1e\xcb\xbb\x1b\x24\xcd\x2c\x25\x57\xb5\xaa\x5e\x94\xe3\xe1\x08\x51\xdc\x6b\xf9\x29\x55\x79\xfa\x59\xe9\xc4\x3e\xcf\xc5\xf5\x06\x0a\xd0\xd9\xec\x3a\x83\xc0\x30\x30\x85\x41\xfb\xcd\xe9\xd1\xc7\x8b\xe3\xf6\x0e\xdd\xd9\x59\x59\x83\x0a\x00\xb1\x44\x6f\xa9\x9d\x90\xa5\x06\x25\x9c\x26\xc6\x00\xc3\x55\x57\xe5\x4a\x8d\x07\xe2\x9c\x78\xe2\x79\xa3\xbe\x95\x3b\x90\x90\x2e\x0c\x11\x32\xa1\x5d\x93\x99\x4c\x23\x60\x42\xd2\xe4\xc6\x41\xe6\xa0\x78\x8d\x7b\x07\xc5\xee\xae\x76\x16\xca\x87\x85\x8a\x8f\x2a\xe9\x87\x4c\x35\x60\x09\xb7\xbd\x14\x65\x5d\x3d\xf1\x24\x45\xbd\x6d\x8c\x0b\x45\xf6\x49\xef\x4f\x50\xac\xac\x9c\x46\x94\xaa\x45\x4d\xcd\xea\x55\xd4\xe2\xfc\x0a\xc2\x59\x20\x31\x26\x11\x9b\x10\x2b\xee\x96\x03\x53\x82\x47\x45\x2b\xe5\x5c\x50\x6c\x0f\x40\xcc\x39\x01\x6b\xd2\xcf\x2c\xe9\x7b\x16\x57\xe4\x30\xe1\xc1\xd2\x3b\x22\xa4\x24\x4d\x07\xae\x98\x46\xda\xcf\xb0\xa4\xe7\xb5\x11\xa7\x60\xa4\x09\x63\x03\xa5\x92\x58\x5b\xce\xef\x32\xe6\xb0\x08\xaa\x93\xfd\xa0\x93\xe8\x28\xb5\x04\x4b\x57\x7a\xb2\x49\xa5\x50\x96\xa5\x2b\x3f\xdd\xa4\xf2\x59\x31\x31\x69\x2e\xd4\x3d\x00\xc1\x8d\x9b\xd9\xf0\x97\x1e\x6b\xed\xcd\xb7\x1a\x75\xc1\xee\x6a\x55\xa1\x67\x08\x7f\xdf\x45\xba\x04\x17\x69\x09\x5d\xa1\xe6\xce\xbd\xc1\x7c\x46\xc0\x45\x0e\xe6\xa5\x95\xc9\x44\x5b\x59\x27\x85\xf4\xc1\x2b\x22\xa9\x08\x5b\x25\xc1\x12\xc6\x8c\x06\x6b\xe6\x05\x2b\x5a\xae\x21\x9a\x9f\xbd\xd4\xc4\x87\x3e\x14\x35\x78\xd0\xca\xc5\x80\x98\x69\x12\xe9\x3d\x6f\xb6\x9c\x58\x14\xcd\x36\x13\x5a\x2e\xac\x62\x9e\xaf\x56\x48\xd6\x53\x0c\xc9\x46\x75\x4b\xfa\x1b\x31\x15\xe5\x55\xb1\xc6\xf5\xc9\xb2\x23\x63\x99\x15\xd3\xb5\xd4\xa8\x84\xe9\xf9\x04\x7a\xa1\x1f\x7d\x3d\x9b\xd6\x75\xf1\x84\x1b\x47\x59\x1d\x71\x95\x62\x2f\x6c\x2d\xca\x0f\x73\xad\xd9\x56\x76\x17\x12\xbf\x0e\x7a\x26\x06\x6b\xa8\xcd\xc6\x39\xa2\x36\x12\x0a\x68\xae\x7e\x95\xc9\xb6\xe5\x51\xbc\xbc\xa5\xe5\x89\x31\x27\x9b\xa4\x09\x4d\x53\x24\xfd\xb7\x49\x59\xd2\x22\x37\x56\x25\xbe\x21\x85\xb1\x9a\xd0\x96\x12\x13\xe5\x2a\xe4\x45\x29\x31\x6e\x86\x75\x2e\x36\xc6\xb4\x22\x77\xbd\x00\x28\xe6\x95\x89\x74\xb3\x52\x5b\x9d\x4b\x07\x49\x94\x61\xe6\xdb\xeb\x24\x05\xca\xd3\x96\x52\x3d\x67\x87\xbc\x7b\x2b\x5f\x67\x8e\xbb\xef\x80\x1e\x5a\x7b\xa1\xec\xe1\x9a\x9c\x16\xe3\x6c\x96\x14\x60\x23\x7f\x13\x88\x2b\xc4\x0b\x13\x82\xae\x48\x03\x7f\x07\x41\x79\x87\xf3\xb2\x66\x68\xca\x96\xb9\x77\x90\x5b\x5f\xfd\x7c\x67\x27\xd5\xd6\xed\xc3\x7c\x94\xb6\x6c\x56\x3b\xad\xd5\x72\xbb\x90\xb3\xfa\xd2\xa5\x23\x32\x48\x00\x18\x51\x67\xd2\x8b\x87\x4e\x5d\xff\xec\x6d\x8c\xa9\x89\x58\x17\xac\x20\x15\x2b\x68\x7d\x26\xca\xb5\x9e\x12\x82\x02\x71\x1c\x97\xe4\x8a\x83\x23\x92\x5a\xfc\x12\x81\x9e\xd7\x84\x46\x5f\xe2\x62\xd8\x1b\xa1\x19\x2e\xac\xd7\x36\x87\xe3\xf3\xe0\x6b\xec\x33\xd0\xbf\xb8\xeb\xf1\x3d\x69\x72\x2e\x31\x26\xfa\xee\x2e\x32\x4b\x8e\x44\xf2\x56\xf9\x1b\x9c\x0f\xa9\x6f\x98\x6f\xe1\xa3\xc1\x34\x9f\x4e\x93\x26\x60\x4d\x4d\x3c\xf8\xde\xa8\xc5\x30\x33\x93\x46\x31\x30\xcc\x55\x60\x80\x10\x14\x83\x49\xb0\xfa\x49\xb0\x70\x12\x1f\x73\x19\x4a\xb1\x62\xd7\xef\x69\xa4\x23\xc1\x48\x24\xdb\xe5\x03\xa4\x62\x4a\xab\x96\xe3\x9a\x5d\xad\x3a\xf5\xe9\x3a\x32\xa0\x42\x7d\x4d\x15\x70\xc1\xd6\x5f\x41\x98\x05\x63\x03\x27\x51\x82\xfc\x8d\xa8\xb6\x73\xe5\xea\x07\xa2\x2b\x40\x6a\x41\x94\x69\xae\xa3\x4c\x17\x98\x57\x95\xf1\x32\xd0\x8a\x87\x8e\x7d\x87\x6b\x92\x1e\x2a\xca\x31\xc4\x86\xae\x41\xab\xc0\xbb\x03\x73\x93\x45\x56\x52\xd0\x29\x32\x1e\x4b\xa0\x96\x09\x4c\x3f\xcd\xfc\xba\xa5\x13\xe7\x8f\xa4\x8e\x06\xe6\xf9\x33\xc4\x80\x5d\x91\xed\x81\x3c\xdb\x9a\x91\x47\x29\xa5\x0b\x6b\x45\x97\x90\x4e\x87\xb8\x66\x75\x0e\xd5\x62\x2f\xe8\x24\x7c\xab\x26\xe0\x9f\xd1\x98\xac\x5b\x2e\xb4\xa6\x97\xbd\x03\x61\x9d\x80\xa2\x74\x93\x5a\x4e\x20\x91\xb8\x0a\xf7\x00\xfe\x3b\x96\xde\xeb\x19\x32\x7e\xc1\x12\x77\xe4\xc9\xf3\x3e\x0a\xd7\xcf\x8f\x29\x58\x23\xb5\xad\x90\x82\x77\x3d\xb3\xb2\xce\xaa\x79\xcb\x4a\xa7\x81\xdd\x6b\x4d\xa7\xde\xae\x3d\x79\x01\x31\xc1\xe0\x64\x4b\x82\x50\xc1\x88\x8c\xf8\xb3\x32\xe1\x72\xea\x57\x57\xc6\x4a\x45\x4b\xd9\xf7\x4c\x12\xb4\x46\x32\x52\x76\x3a\x49\xe9\x2a\x17\xfe\x5d\x54\xae\x8a\x76\xb7\xbd\x9d\x64\x8f\x8f\xe5\xe3\x23\x4f\xd1\x14\x43\xd0\x63\xf2\xf8\x48\x5c\x4a\xf7\xf1\x71\x3b\xd9\xce\x1f\x1f\x41\xf7\x31\xec\x8d\xf4\x05\x87\x26\xf8\xf3\x3c\xa3\xf9\x20\x43\x62\x41\x06\x25\x02\x3b\xc1\x01\x5f\xb5\x2a\x90\x20\xe6\x3d\x41\xc5\x37\x92\xd1\x9a\x20\x40\x63\x34\xf5\x48\xe9\xe5\x61\x32\xab\x1c\x91\xa5\x7f\x3e\x64\x01\x45\x46\x2f\xc5\xb3\x67\xbf\x26\xd8\xb9\xd9\x06\x14\xf9\xec\x5b\x28\xf2\x22\x6e\xd7\x16\xc2\x88\x82\x10\x34\x73\xb4\x4e\xb3\x4e\x27\x99\x39\xb1\x8c\xc7\x02\x63\xda\xf9\x89\xdb\x6b\xac\x0d\x6a\x83\x0d\x4c\x63\x7a\x93\x84\xb8\x1d\x21\x9e\xca\xc0\x12\xbf\x27\xcc\xc9\x68\x89\x78\xac\x69\xdc\x16\x51\x2c\x81\x18\x94\x8e\x24\xdd\x88\x40\xc4\xf8\x00\x81\x94\xe9\x06\xba\x36\xa2\x4d\xd1\x01\xf9\x29\x01\x43\x44\xf7\xa6\x87\xa1\x99\x6d\x55\xb2\x59\x1b\xa7\x60\x6f\x69\xab\xcb\x59\x44\xf1\x51\x65\x52\x9b\x2b\xef\x94\x5b\xea\x50\xc9\x54\xd6\x69\xf1\x26\x4a\xbe\x24\x97\x78\xd0\x43\x54\x5e\xc2\x83\xed\xfe\xca\x12\x1b\xb7\xb8\x77\x70\xfb\x6a\xaa\x89\x8d\x5b\x6d\xde\xb7\xc0\xd3\xe1\xad\x09\xce\xbb\xe8\x8e\x6f\x33\x76\xc4\x93\x5e\xaa\x22\xf4\x76\xda\x03\x51\x6c\x6e\x82\x08\xb7\x3b\xca\x0c\xaa\x8d\x31\x5e\xa4\x73\xbc\x6c\xc9\xf8\x47\xe2\x13\xcd\xef\x08\x2b\x89\xfe\x34\x33\xa1\x4a\xb4\x45\xf8\xb6\xf8\x50\xe7\x4d\xd5\x9a\x63\xb6\x9a\x1f\x5a\xa8\xf0\xaf\xc4\x64\x5e\x99\xec\xed\x4e\xdf\x4e\xb7\xb7\x02\xef\xd8\x9a\xca\x12\xa1\xae\xab\xef\x46\xac\xfd\xcf\xf6\x80\x4e\x93\xed\x2c\x95\xef\x64\x20\xa0\x4c\x10\xbc\x0f\x38\x13\x54\xea\x0d\x5e\xb4\x04\x14\xdf\xe0\x85\x21\x05\x53\x15\x18\xe3\xce\x98\xce\xdf\xa4\x07\x90\x23\xea\xda\x84\x8b\x17\x97\xde\xc3\xf0\x7a\xd4\x3c\x9c\xfe\x2a\x4d\x57\x2b\x33\x1d\xab\x9c\xd5\x9b\xb8\xd3\x47\xdb\xdb\xc9\xf2\xf1\x71\xf6\xf8\xc8\x1c\x59\xdd\x15\x9e\x58\x59\xdd\xd5\x6b\xdc\x3b\xb8\xd2\xb2\xba\x7b\x3c\x19\x5e\x8d\xd0\x31\xbe\x57\x27\xb2\x75\xdf\x55\x1d\x4a\xea\x48\xab\x48\x92\x63\x45\x06\xb9\x5a\xdf\x63\x25\xa0\x73\x31\x58\xc2\x6b\x4f\xd3\x37\x2a\x5f\xe3\x67\xf9\xcb\x95\xb1\xf5\xc8\x58\x60\xe3\xd0\x39\x3e\xea\x06\x85\x32\xcd\x63\xf9\x57\x75\xd6\xe9\x24\x99\x7b\x55\x6f\x10\x53\xd0\x12\x3d\xa5\xf5\x88\x0e\xc3\x02\x96\xb1\x30\x80\xc6\x53\x25\x14\x19\x26\x0d\x34\x9a\xa8\xb6\x46\xcc\x58\xbd\x18\xb6\x7b\xde\xdc\x51\xe9\x07\xe4\x5b\xad\xe0\x22\x7b\xf0\x0d\x30\x2a\x6e\x28\x8a\x00\x34\xfc\x3a\xda\xee\x5b\xc3\x04\x4d\x8c\x7a\xce\x73\xf2\xa5\x47\x02\xc0\x29\x6e\x50\xcd\x6b\x17\x70\x54\xf8\xae\xca\x75\x76\x5e\x1e\xb4\x55\xc8\x4f\xa3\x49\xe9\x19\xa7\xc6\x53\x7a\x6d\xfd\x0e\x13\x5e\xa5\x3f\xc3\x3b\xbd\xaa\xa9\x8f\x58\x3d\x2b\xf7\x1b\x8f\x80\xef\x5a\xbf\x06\xf0\xc7\x51\xa1\xdf\x0b\xfc\x3e\xe3\xb7\xdd\x39\xcd\x41\xaa\x04\x4c\x6a\x38\x9b\xc2\x99\xa1\xb5\x40\x4b\x2c\x4e\xc8\x70\xef\x20\x7b\x55\x1c\x64\x82\xc9\x8c\x5c\xe3\xd3\x05\xe2\xbb\x59\xc4\xd2\x83\x0d\xb3\x51\xba\xaa\xf0\x10\xeb\xb6\x4d\x59\x94\x88\xa1\xd9\x93\xdb\xb0\x77\x65\x7d\xee\xc9\x18\x37\xa5\xb8\x18\x19\x2c\x2c\x6e\xea\x3e\x1c\xe9\xcc\xae\x91\x34\x88\x64\xc8\x46\x2d\x48\xf6\x1a\x6f\x3e\x4f\x57\xf1\xee\x21\x34\x7b\x22\x99\x36\x45\xd3\x6c\x30\xe8\x4c\x31\x7f\xc0\x90\x68\x7e\xa1\xaa\xaf\x10\x03\xd6\x37\xb1\x0e\x00\xa8\xae\x61\x95\xa6\x71\x40\xfe\xd8\xc7\xb8\x77\x48\x5e\xef\xf6\x0f\x39\x26\x83\xa4\xc2\xb9\xc8\x92\x32\xb1\xed\x93\x74\x4d\x81\x7e\x18\x0b\x9f\xe6\x37\xed\x81\xaa\x62\x96\x1a\x31\xbc\x17\x46\x9d\x27\x59\x2e\x0a\xf6\x1e\x09\x62\x78\xdf\x0b\x94\x0f\x91\xd6\xc5\xc7\xbd\xf0\xd3\x52\xcb\x2f\xc4\xd7\x7d\xe7\xab\xe7\x67\xed\x4a\xa8\x4e\xf2\xbb\x6c\x46\x27\x5b\x66\xd5\xb6\x16\x59\x59\x92\x09\x24\x52\x74\x39\xf4\xb6\x74\xb2\x55\x41\xaa\x4b\xfa\x1b\x39\x99\xcf\xc9\x84\x66\x9c\x24\xfc\xd5\xab\xfd\x47\xc1\x6a\x3b\x6c\x5c\x7f\x1f\x32\x71\x14\x7e\xd1\xb8\x42\x9c\xbc\xc6\x36\x23\xe6\xe3\x23\x79\xd5\x3b\x8c\xaf\x29\x4f\x45\x4f\x4f\x07\x44\x73\x9e\x55\x01\x42\x84\xaf\x37\x0c\xa4\xc1\x44\x11\x67\x31\xdd\x62\xc4\xc5\xa5\xce\x36\x74\x2f\xe4\xa4\x6f\xb5\x77\x0e\xb4\x56\x73\x99\xd4\xb5\xf6\xb4\x91\x2f\x57\x6d\x46\x63\x3e\x06\x57\xaa\x97\x65\xaa\x31\x3e\x0c\xd1\x58\x46\x5f\x65\x14\xe7\x3a\x56\x4c\x81\x73\xdf\xbf\x28\xc3\x79\x24\x56\xcc\x36\xc6\xb4\xd3\x51\xbf\x8a\x4e\x27\x53\xe1\x42\x35\x9e\x28\x71\xef\xa0\xb4\x5e\x2f\xe5\x0e\xde\x4b\xf9\xb0\x1c\x0d\x7b\x23\xdc\xfe\xcf\xf6\x8e\xfa\xdd\x0a\x4d\xf2\x63\x9e\x46\xd4\xc3\x80\xa1\xe3\x92\x61\x64\x64\x58\x71\xb4\xdd\x47\xac\xd3\x61\x10\xb3\x52\x07\x31\xb0\x57\x89\x92\x38\x36\x2f\x5d\xcd\x4e\x20\xda\x24\x82\xe2\x29\x2a\xc2\xef\x99\xca\xa3\xee\x9c\x8f\x97\x4f\x8d\x67\x77\x51\x15\x6e\xd6\x59\xb2\x3c\x43\x3e\xe6\x80\xda\x3a\xdc\x49\xad\xe9\xf5\xcb\xe7\x15\xd8\xf2\x64\x66\xe1\x57\x8d\x84\xa1\x75\xee\xd9\xc7\xfb\x96\x44\xcf\xe2\xed\xea\x81\xc5\xe2\x7a\xd4\x19\x1b\xed\x37\x37\x35\x8f\xb9\x2b\x9b\xc0\x01\x9b\x89\xc8\xb6\x3d\x5b\x9a\x27\xbd\xfa\xe3\x1b\xbb\x41\x55\x24\xb6\x3a\x97\xee\xc8\xc0\x9d\xdd\xde\x7b\xae\x04\x91\x4e\x04\xfc\x0d\x61\xcf\x5c\x12\x54\xa7\xf1\xaa\x7c\xe4\xe9\xa0\xe7\x74\xb6\xff\x0c\xe5\x08\xe4\x4c\xec\xb0\x2f\xf8\x55\x3d\x7e\x1b\xe3\xeb\xdf\xd7\xf7\xf3\x58\xdf\x36\x2e\xda\xef\xdb\x71\xf5\xa4\x95\x26\xa0\x89\x33\xa6\xa7\x20\x12\x94\x43\xf1\x45\xe8\x55\x68\xdc\x88\x74\x96\x37\x9c\x14\x37\x39\x0a\x85\x3a\xd4\x1e\x3b\xb4\xb7\x71\xd4\xfd\xd5\xe0\x5c\x11\xeb\xd6\x43\x73\xb3\x40\x37\x8c\xd5\x5c\x67\xf3\xa7\x0e\x2c\x90\x88\xf6\xca\xd3\xec\x59\xe4\x98\x90\xae\xe0\xd8\xa4\x27\x78\x31\x79\x50\x76\x23\x9e\x51\x4d\x9d\x64\x47\xc7\x5d\x3f\x3e\x7b\x7b\x72\x76\x72\x79\x72\x74\xda\xd6\x79\x47\x79\xa2\xb6\x5a\x9a\xf3\xe4\x29\x62\x89\x6b\xc0\xe4\xc6\x3d\x57\x3c\x09\xe5\x7e\xcb\x41\x79\xb7\x93\xf8\xd2\xb9\xe6\x32\xfe\xb4\x03\xbb\x2f\x8b\x1f\x60\xda\x30\xff\x1c\x93\xae\x0c\xd0\x05\x69\xb5\x54\xf0\xfd\x56\x9c\xbd\x65\x15\xce\x95\xc7\x38\x57\x98\x42\x25\xcc\x3b\x0f\xc2\xbc\xd3\x4e\x87\x26\x9a\xb9\x74\xc2\xaf\xc5\x08\x6c\xe5\x30\xee\x92\x10\xda\x79\x9c\x54\xbd\xc0\x35\xe8\x79\x6f\x65\x3f\x4e\x00\xae\xb8\xa5\x49\x95\xb5\x86\x6e\xac\x6e\x5c\x49\x5c\x0f\x35\x2f\x27\x83\x74\x68\x94\x66\xc2\x8f\x87\x9a\x87\x6d\xa2\xb5\xee\xbd\x96\xe5\x5a\x7a\x07\xdc\x32\x2c\x5c\x33\x6b\x2a\x02\x3b\x1f\x39\x89\x43\x74\xd6\xe0\xc2\x3d\x7d\xa1\xf4\x82\xa6\x9f\x99\x2b\x66\x0d\x64\x62\x0c\xbc\xec\x1c\xb8\xae\x7c\x27\xb3\x92\x34\x7d\x07\xa9\x5e\x6a\xf4\x72\xce\x7e\x68\x1d\x60\xfa\xea\xd5\x93\x16\xed\x74\x92\xe2\x11\xbf\x00\xaf\x00\xf1\xeb\xb9\x4e\x95\xe9\x39\xf0\xab\x8c\x4d\x19\xb8\xa7\xb7\x2c\x8d\x06\x6e\xea\x4b\xdc\x3b\x58\xbe\x32\x49\xed\x97\xde\xe2\x94\xc3\xa5\xcb\xa6\x02\x26\xca\x14\xf5\xa2\x83\x8a\xc5\xe0\x48\x05\x0d\x72\x83\xfd\x91\x54\x6d\x60\xd5\x82\x85\x6b\x0b\x16\x4d\x92\x36\x9a\x94\x84\x80\xa3\x85\xcc\x75\xa2\x1a\xb0\x37\xe1\xab\xe4\x53\xda\x0a\x93\x40\xfd\x08\xab\x75\x5e\x67\x6d\xe2\x84\x5a\x6a\x48\xea\xdb\xac\x55\xcd\x63\x5a\xd5\xdc\x32\xfd\x5e\xdf\x6a\xd9\xc4\x47\x99\xb9\x8b\x68\xad\x69\xa8\x0d\xcb\xbd\x0b\xaa\xc6\x5e\xe8\x19\x14\xb4\xca\x99\x6f\xed\x2b\x6c\x25\xd2\x99\x4b\xa4\xc7\xaf\x10\xdd\x19\xf2\xea\x56\x65\x45\xe0\x94\x94\xdb\x2a\x75\x76\xd7\x8a\x1d\x2b\x54\xb3\x50\xa9\xa8\x54\x88\x0b\x10\x74\xa5\x95\x80\x8f\x1f\x05\x7c\x54\xf3\x7f\x9d\xc3\x36\x5e\xfe\xaf\x81\x11\x75\xab\x1e\x9a\xf0\x2d\x89\xca\x8e\x17\x6c\x1e\x6f\x84\x92\x0d\x00\xc3\xf2\xcf\xb6\xa7\xaf\x00\x91\x46\xa8\xd0\x24\x82\xe9\xe0\x00\x22\xde\xf0\xc3\x98\xe8\x30\xa9\x22\x04\xa7\xe6\x2a\x75\x2c\x0c\x5c\x81\xa3\xb3\xbb\x91\x94\x6f\x97\xb0\x03\x6f\xea\x0d\xce\x9c\xdc\x0c\xe2\x76\x2c\x55\x16\x37\x05\x42\x09\x13\x7c\x9f\xfc\xa0\x82\x78\x27\xd4\xb9\x4e\xac\x69\x9a\xcc\x86\xa5\xc0\x41\x51\x20\x35\x40\x81\x1c\x70\x70\xc2\xe7\xd4\x5d\xd8\xe7\xb2\x03\x05\xc6\x1f\x34\x18\x1b\xab\xb4\x37\x30\xc5\xf7\xee\xa6\x98\x19\xba\x61\x8e\x04\x4d\x67\xe2\xe6\x69\xe4\xce\x63\x11\x50\x04\xf1\x1b\x72\xd2\xde\xe5\xae\xab\x5b\x23\x1f\x95\x27\xc2\x6c\x97\x4e\x1b\xea\x08\x6a\x07\x9e\xd8\x16\xa9\xd0\x56\x7c\x65\x42\xb9\x54\x13\xfd\xbd\x87\xa9\xfd\x82\x65\x24\xa7\x93\xb5\x53\x8c\xc7\x4d\x3f\xf5\xe2\x39\xa9\xe8\x4e\x52\x9e\xa0\x0a\xc1\x54\xed\x9b\x7b\x19\x53\xe6\xd4\x96\xf4\xe3\x3e\x29\x22\x57\xd1\x3f\x26\x04\x94\xac\xac\x08\x1b\x6c\xa3\x34\x79\xe2\x18\xd7\x52\x4d\x5e\xa2\x10\x36\x77\x12\xa4\x5d\x5d\x69\x49\x77\x05\x71\xb0\x6e\x56\x56\x8f\x61\x35\x1e\xfd\xa1\xf3\x7b\xe0\xcd\x9c\xdc\x6f\xdd\x04\x44\x20\xe4\xa7\x77\x92\xb6\x56\x56\x0f\x7d\x36\x5b\xad\x74\x6c\x60\x3f\x19\x01\x93\x20\x16\xbb\xf8\x7c\xe8\x3e\xfc\xce\x63\xe9\x99\xb1\xfc\xcd\xdb\xb5\x9a\x11\x79\x5b\x7b\x58\x7d\x35\x88\x01\x00\xb9\xdf\xba\xf8\x1d\x16\x4c\x80\x79\x98\xac\x58\x67\x07\xf6\x92\x14\x37\x65\x24\x1e\x85\xf6\x63\xdf\x9a\x3a\x58\xe5\x02\x25\x5d\x9b\xfd\xf2\x7c\x99\x73\x3a\x77\xd2\x61\xfe\x8d\x51\x4e\x3e\xe4\xb3\x07\xfb\xea\x07\x92\x2d\x4c\xce\x4b\x6d\xa0\x46\xba\xee\x6f\xd5\x8c\xfb\xca\x34\xe4\xbd\x3c\x3e\x3d\xbd\xfa\xcb\xd9\x87\xbf\x9d\x5d\x39\x54\xed\xd5\x8f\x1f\x2e\x4e\x2e\x4f\x3e\x9c\xb9\xc1\xdc\x18\xfe\xbc\x6a\xad\xaf\xd1\x53\xf7\xae\x5a\x8e\x29\x23\xe4\x37\x02\x01\x70\x68\x0d\x0e\x31\xb1\x23\x05\x37\x5f\xe2\xe1\x48\xf9\x8f\x30\x96\x3d\x94\x78\x98\xab\x67\x2e\x5d\xf0\xf4\x67\x89\xc3\xec\xb3\xba\x25\x27\xe6\x85\x94\x70\xaf\x0b\x6f\x14\x51\xe3\x38\x32\x28\x35\x26\xa3\x19\x27\x36\x26\x16\xe8\x33\x06\x5e\x29\xa0\x9a\x48\x2a\x13\xb2\x38\x02\xc1\x1a\x7d\x8f\xcd\x8f\x6c\x72\x7b\xc5\x14\x40\x56\xe9\xa3\xe5\x1d\x43\x36\xf2\x63\x73\x59\x1d\x0f\x97\xbf\x43\xd6\x0d\x4c\xa4\x74\x27\x86\x89\x73\x26\x2a\x17\x7b\xcd\x3c\x55\x21\x6f\x9a\xb7\x8d\x61\x19\xd5\x26\xd5\xb7\x9b\x78\x7b\x27\x9b\x66\xa9\xb7\xc3\xb6\x3f\xe5\x12\x69\x45\xc7\x91\x6e\x21\xbd\xb5\x5c\x28\x3a\x7d\x90\xaa\xa0\xe8\x56\x3a\xf1\x93\xc4\x50\x58\x64\x2b\xb9\x9a\xa3\x84\xa4\xba\x39\x2a\x38\x5b\xb3\x76\xba\x94\xb7\x78\xbc\xf8\xb1\x28\x22\x18\xfc\xb3\x1a\x86\x37\x26\x24\x97\xdf\xdd\x0a\x75\x91\xab\x77\xea\x01\xa9\xae\xbc\x7e\x57\x4e\xd0\xb6\x0a\x1a\xa0\x8a\x19\x5e\x77\xc5\x9b\x80\xb1\x04\x79\x27\x96\x9b\x21\xba\x07\x97\xeb\x41\x7a\xc7\x95\x9b\x61\xfa\xa7\xd6\xdb\x71\x3f\xd7\xb1\xf5\xfb\x32\x86\x6a\xfa\x6c\x73\x33\xbf\x86\x23\x6e\xa2\x32\xd7\xb2\x2d\x6a\xf8\x43\x32\x52\x3e\xb2\x67\xd5\x1d\x77\xcb\xab\x4e\x6d\xf9\x8b\xb5\x87\x5d\x8b\x42\x8d\x86\x80\x39\xe7\x9f\x9b\xf3\xdf\x1c\xd3\xac\xc5\x86\xf9\xc8\x34\xa5\x42\x4d\x53\x1b\x02\x56\x8d\xa6\x3a\x8e\x0a\xb2\xd0\x63\xf7\x12\x8d\xd7\x41\xb8\xde\xa4\x21\x91\x06\xe7\x18\x63\x5f\xce\xac\xf6\x4d\x7c\xaf\x56\x09\x02\xcb\xaa\x1f\xae\xc2\x5a\x2f\x62\xdd\xc9\x56\xe5\x9c\xcc\xf5\xc1\xae\xa5\x06\xba\x2b\xf7\x5e\xa1\xa4\x36\x51\x26\x24\x5f\xe7\xf5\x62\x1c\x5b\x0c\xe8\x73\x94\x77\x3a\x09\x35\xb0\x9f\x1b\xd8\xa7\x1a\xf0\x73\x0d\xf8\xd4\x40\x7d\x6e\xa0\x9e\x5a\x90\xa7\x1b\xc1\x3b\x35\xc0\x9e\xeb\x5f\xa9\xb4\x37\xe7\x21\x83\x93\x6b\xae\x97\xe2\xbc\x7a\x10\xe8\x17\x02\x36\xfd\xc2\x83\x43\xff\x57\x1d\x04\xfa\x45\x07\x81\xfe\x6f\x39\x08\xf4\x9b\x0f\x42\xbe\x12\x5c\xb2\x4b\x0d\x66\x2d\x29\x93\x8c\x1e\x01\xa6\xb8\x4b\x9d\x2c\x2a\x01\xb5\x42\xbd\xb8\x25\x95\x92\x1d\x49\x77\x79\x97\xb1\x7c\x15\x05\x4c\x66\xc5\x31\x2c\x26\x8e\x59\x73\xa7\xcb\x49\xba\x5d\xad\x23\xc8\xbc\xb2\xce\x95\x9b\x6f\xb2\xbc\xd5\x26\x00\x46\x72\x93\xf5\xbf\xb6\x92\x5c\x9a\x21\xd9\xed\x8f\xd6\xcb\xca\x64\x61\x3d\xba\x15\x62\xab\x24\xb3\x02\x06\xbd\x79\xa5\xcc\x57\x5f\x77\x37\xab\x9b\xf9\x16\x38\x02\x25\xae\x93\x49\xdb\x7b\x56\x12\xc2\xeb\xd2\x7a\xd1\xdf\x6a\xf3\x79\xf5\x77\x92\xe4\xf9\xb3\x17\x1d\xd3\xbc\x98\xfd\xf5\x43\x36\x99\xb0\xc4\xe9\x26\x4d\x5f\xbf\x7e\x91\x1a\xb7\x45\x5a\x2a\xf1\x50\x6d\xb3\xbd\xbd\x27\x6b\xdb\x34\xcd\x09\x28\xa9\x6b\x69\xef\xe9\xd3\xcd\x1b\x2a\x16\xfd\x46\xc1\x77\x7d\x1b\x3b\x7d\xb7\x95\xbd\xaf\x6d\x65\xcf\x6d\x65\xff\x6b\x5b\xd9\x4f\x23\x59\xd5\x66\xbe\x43\xd5\x23\x79\xf5\x6a\x6f\x65\x78\xcb\xa5\x32\xbc\xaf\x85\x1f\x63\x9c\x67\xe3\xcb\x5b\xa6\x4a\xc3\x92\x4b\xc3\xe9\xa7\x71\xb6\xc8\xc6\x94\x3f\xe0\x7e\xef\xc9\x8b\xa7\xcf\x9f\x21\x47\xe8\x28\xe3\x38\x82\x8a\x0e\xd8\x36\xd0\xd1\xc9\xea\x2d\x0b\xb0\x02\xef\x7f\xa4\x39\xdf\xdf\x33\x86\x1e\x96\xd3\xd3\x59\x09\xd4\x10\xec\xd2\x28\x23\x43\x77\x44\x79\x30\xa2\x9e\xe3\xed\x12\xed\x49\x0d\xd9\xeb\xaf\x99\x4f\x5c\x84\x81\x53\x25\x96\xa0\xbf\x91\x37\xb7\xc4\xea\xb1\x45\x6f\x43\x77\xcb\x76\x46\x32\xed\xa6\x29\x19\x78\xb2\x82\x89\xa5\x3b\x78\x2d\xec\x5b\x24\xa6\x41\xd4\x73\x97\x22\x6d\x58\x41\x62\x0c\xad\xbd\x09\xc2\xba\x95\x84\x43\xc8\xd6\xf8\xee\xad\xbc\xb7\xbb\xbb\x8a\x26\x93\x40\x58\x8b\xc3\x60\xba\x92\x92\x2c\x23\x85\x0d\xe7\xa0\xca\xc9\x48\xc1\x32\x19\x42\x45\xd7\xc1\xa5\x45\x29\x30\x5e\x76\xb6\xa8\x87\x94\xed\x29\x71\xaf\x58\x8f\xfd\x95\xaf\x76\xf0\x3e\x82\xa5\x76\xf3\x20\xc4\x06\x03\x1d\x0d\xc9\x4e\x7f\x84\x67\x09\x47\xd2\x4b\xbc\x0c\xd2\x59\x78\x98\x1a\x46\xa2\x56\xa4\x71\x3d\x54\xd3\x9a\x2d\x88\x30\xc7\xe1\x54\x09\x9a\x25\x3d\xb4\x9f\xea\x59\xf2\x0d\x66\xc9\xf5\x80\x8b\x69\x75\xc8\x4a\xfa\x30\x2e\x16\x24\x2c\x12\x1f\xec\x4e\x7f\xf4\xfa\xf5\x1e\x2c\x1c\x23\xb5\xd7\xaf\x2d\xdc\x0a\x17\x31\x6e\x81\xf8\xc8\x5f\xbd\xda\xef\xad\x12\x8e\xfa\xc6\x0d\xdf\xc9\x61\xd1\x78\x96\xdc\x95\xd0\xe7\xa8\xe5\x9c\xaf\x11\xde\xeb\x3f\x79\xfe\xe4\xc5\xfe\xb3\x27\xca\x14\xc4\xc5\x5e\x72\x61\x87\x1c\x01\x3d\xa4\xc2\x4b\xff\xe8\xa2\x37\x17\x19\x2a\xc2\x54\xa7\xd8\x74\x8a\xa1\x88\x72\xdb\xf8\xde\xf2\x11\x92\x6e\xb5\x88\x62\x36\xd4\xab\x62\x0e\x41\x92\x23\x9a\xa4\x2a\x5c\x6e\xb6\xe0\x4b\x16\xac\xac\x1f\x55\xc8\x3d\xde\x5a\x9e\x19\x0c\xda\xac\x8a\x8f\x18\x48\xaa\x90\xad\x96\xfa\x6b\xd9\xbe\x05\x19\x04\x7b\x35\xb0\xdb\x86\x64\x0d\x57\xfe\x0f\x22\xc5\xb1\x72\x7e\x6a\x90\x03\x04\xe3\x16\xf8\x87\x56\x22\x2c\x89\xb7\xe3\xd0\x06\x4e\x93\x27\x80\xb7\x94\x3e\xe0\xaa\x90\x97\x94\xa8\xb0\xb4\xd3\x4a\x63\x8a\x11\x55\xb4\x0e\x98\x55\x53\xfa\xba\x20\x5e\x07\x55\xe1\x87\x16\xa6\x4e\x95\xeb\xd2\x7a\xed\xc6\x37\x4d\xe3\xf6\x61\xe2\x07\x24\xab\x28\xbf\xc6\x8e\x40\x4a\x06\xf8\x16\xff\x17\x90\xca\x13\x0c\xad\x7e\xf7\xb5\x08\x24\xcd\x13\x95\x09\xb0\x96\x4b\xd8\x48\x19\xeb\xd0\x9c\x11\x1e\x40\xd0\xb8\x53\x87\x74\x59\x68\x23\x2d\x37\xf5\xb2\xca\x02\x9f\x9a\xfe\xa4\xa3\x92\x28\x67\x0c\x2c\xf2\xca\xcd\xc7\xd2\x03\xfe\x8a\xc1\x19\xcd\x05\x82\x10\x27\xd4\xac\xe7\xca\x4a\xd8\x6f\x43\x2d\x00\xd3\x16\xcb\x5f\xad\x07\x10\x13\xf8\x56\x4d\xc0\x3c\xab\x09\x6d\x26\xe6\xf9\x60\x12\x4b\xd1\x52\xe5\x8c\x89\xe7\x93\xda\xc6\xf8\x5a\x14\xbb\xf6\x62\x6f\xa5\x9f\xe9\xce\x8e\x78\x0d\x3d\xe2\x4c\xfe\xa2\x13\x01\x90\xa5\x71\x85\xf2\xd2\x02\x79\xdd\xcf\x92\x1e\x74\x2e\xcb\x7d\x5c\x4c\x32\xc0\x22\x4d\x15\xfa\x6a\xb4\xc0\xc7\x44\x87\xda\xe5\xd9\x0d\xc6\x78\xe2\x94\xf3\x13\x13\xd9\xa2\xba\xd8\xb8\x98\x5f\xd3\x5c\xf4\x7b\x13\xcc\x3f\xf4\xa1\x00\x72\x53\x8b\xd0\x5f\xe5\xd6\x8f\x82\x82\x1f\x85\xe8\xbb\x45\xb7\x31\x9e\x74\x3a\xf2\x62\x72\x64\x07\xf3\x44\x2e\xb5\xea\xed\x42\x00\x5f\xe4\x52\x84\x8e\x88\x38\xe7\x13\xe5\xb4\x72\xa0\x6c\xb6\xd9\x81\x89\xba\x00\x1d\xe5\x5e\x47\x79\x0a\xf5\x72\xf2\x2b\x87\xc0\x43\xac\xae\xe3\x6f\x99\xe0\xda\xc9\xbd\xf9\x78\x7e\x7e\x7c\x76\x79\x75\x79\xf4\x3d\x26\xdd\x9f\x3e\x9c\x1e\x5d\x9e\x9c\x1e\xab\xc7\x37\x1f\xce\x2e\x2e\x8f\xcc\xd7\xe5\x02\x20\x85\x74\x27\x94\xf1\x07\x4c\xba\xef\x8b\xbc\x98\x17\x6c\x71\x4b\xc7\x97\xd9\xcd\xc9\x7c\x31\xc3\xa4\x7b\x74\x7a\xfa\xe1\x6f\x57\x6f\x7e\x7e\x73\x7a\x7c\x01\x6d\xbc\xff\xf1\xe3\xe5\xb1\xd3\x38\x26\x5d\x65\x04\xe8\x74\x21\x5e\xaa\xf0\x91\x17\x0f\xf9\xf8\x96\x15\x39\xfd\x8d\x88\x05\x32\x8e\x04\x26\xbc\xa4\x2e\x4a\x8b\xfc\x88\x71\x3a\xcd\xc6\xa0\xc1\x3a\xa5\x25\x3f\xe1\x64\xae\x15\x60\xd6\x6f\xc1\x69\xe4\x4d\x36\xbe\x15\x2f\xe0\xef\xc4\x16\x71\xd4\x5b\x39\x76\x9c\x3d\xb6\x75\xf6\x2d\x69\x68\x77\x28\xff\x0c\xaa\xd0\xd9\xbe\xba\x6a\xef\x90\x1d\xf0\x77\x9a\xce\x8a\x82\x25\xf0\x93\x65\xf9\xa4\x98\x27\xe9\x9f\xde\x66\x9c\x74\xf3\xe2\x3e\x49\xd3\x1d\x51\x76\xd5\x72\x26\xdf\x6b\xd9\x35\xe9\xb7\x9c\xa5\x7a\xd9\xeb\x3d\xef\xbf\x7c\xb9\xf7\xf4\xc9\xf3\x27\xbd\x97\x2f\xfb\x4a\xa8\xd7\x57\x72\xfa\x3c\x69\x5f\x1e\x7d\x7f\xa5\xd6\xb8\xed\x20\xd4\xcc\x1e\x44\x6a\x33\x1e\x96\x3e\x87\xf8\x1a\x93\x61\x31\x4a\xd2\x95\xdd\xa6\x42\x49\x19\x54\xcb\x97\x3f\xff\x28\x9a\x0d\x76\xd5\x59\xac\xd9\x1a\x79\x04\x23\x77\xb4\xa4\x45\x8e\xfb\x5a\xf1\x5f\x72\xa0\xed\xc8\xc4\x7d\xf5\x13\x20\x24\xf5\x82\x96\x80\x5a\x68\x7e\x83\xb7\x75\x0a\xa6\xe5\x35\xcf\x6e\x4a\xc7\x3c\x40\xbe\xa9\xbc\xf8\x0e\x08\x1a\xb9\xcb\xe6\xdb\x70\x39\x8a\x66\x99\x19\x16\xa3\x80\x09\x0b\xc7\x28\x63\xd4\x54\x46\xd5\xab\x4e\x86\xb6\x38\x7b\x70\xcd\x33\xd4\x90\x75\xb2\x26\xf9\x68\x74\x50\xe1\x60\x51\x8e\xfd\xc5\xd0\xc9\x6c\xf4\x02\x3a\x5e\x21\xdc\x78\x74\xc2\xee\xb5\x4a\x30\x09\xcf\x94\xaf\x5d\xf6\x6b\x92\xa1\x5c\x7b\x13\xd7\xac\x8a\x57\xb8\x4c\xd3\x95\x9b\x2b\x47\xe3\x18\x69\xb5\x48\x5c\xab\x45\x15\xf5\x81\x0c\x97\x23\xd9\xb7\xd3\xd0\x0c\x65\x26\x0a\x9e\xde\xd1\x6c\x35\xa5\x79\x36\x9b\x3d\x54\xd7\xb0\xaf\xd3\x65\x6d\x1b\xce\xd7\x7e\xd6\x86\x9f\xee\x0a\xef\xec\xd0\x34\x80\x18\x81\xc1\x14\x56\xf2\xef\x4c\x45\x9c\x8b\x55\x6d\xe5\xe2\xda\x38\x64\x2e\xc4\x0c\x12\x16\x5b\x19\x98\x12\xb2\x25\x01\x43\x4a\x64\xe7\x19\x6f\x59\xa8\xde\xd9\xa1\x86\x8c\x8a\x60\xc3\x99\x92\xb9\xcc\x64\x2b\x2d\xdd\x9a\xa6\xaf\x67\x6a\xf4\x2d\x3b\x0d\x9d\xd8\x19\x6e\xcf\xfd\xb4\x15\x60\x61\x4d\x9c\xe5\xe4\x3e\xa9\x53\xa2\xaf\x87\x74\x55\x20\xc4\x2e\x72\x2a\x69\x2b\xb8\x08\x6e\x5b\xd2\xdb\xfe\x77\xe9\x93\xea\x4e\x4c\xf5\xb9\x93\x5d\x85\xf8\x59\x55\x4c\xfa\xd5\x49\x90\x7e\x95\x0c\x7b\x23\xe3\x79\x67\x95\xe8\xb3\x64\xcf\xc9\xf8\xaa\x91\x06\x41\x1c\x92\x9d\x3a\x57\xdd\x42\xb9\xc4\x37\xda\x21\x08\x30\x3b\xd7\x3b\x6d\x11\x8d\x85\x6e\xb0\xb5\x6d\x10\x15\x49\x32\xab\xc6\x7a\x2b\xbb\xb1\x79\xdc\x6c\x3f\x36\xb3\x91\xea\xc4\x4d\xb0\xb8\x0d\x7c\x95\x44\xe2\x8f\x8f\x49\x58\xd4\xda\x30\x2f\x39\x49\x9c\xb3\x62\x26\x91\x25\xa9\x20\xbd\x65\xb4\x42\x4d\xf9\x85\xe2\x97\xca\xb4\x0d\x84\x57\x2e\x4d\x58\xc5\x87\x3a\x4e\xc1\x3a\xa1\x68\x95\x42\x1e\x55\xa9\x89\xb3\xc6\x61\x41\xf2\xae\x21\xc2\x31\x47\xb9\x20\x86\x17\x90\x96\x34\x5f\xcb\x4f\x04\x29\xf7\x96\xbc\x6e\xe1\x4d\x0f\x2d\xdb\xe4\x2d\x24\x0a\x15\x7d\xa5\x89\xa2\x8e\x93\x54\x4a\xe2\xef\x24\xb7\x7d\xb3\xe6\x9e\xf3\x81\x22\xb2\xf4\xf6\xb5\xcd\x9a\x3a\x31\xf7\x9b\x58\x02\x22\x61\xc2\x1b\x23\x26\x8d\xa2\x48\x42\x3e\xd5\x89\xaa\x9c\x5e\x0e\xfd\x11\x0e\x82\xef\x89\x8a\xe7\x1b\x03\x08\x3a\x4d\xb6\xc3\xe6\xd2\x78\x37\x89\x27\x9c\x33\x33\xa8\x01\x72\x22\x49\xef\x69\x52\x26\x0c\xf1\x54\xb7\x79\xdd\x8a\x02\x6d\xcb\xd1\xac\xd9\x1b\x92\x62\xb3\x57\x46\xb5\x89\x31\xce\x0f\xaf\x07\x49\xb0\x29\x14\x38\xe7\xba\x8c\xb5\xeb\xc6\x2d\xdb\xa8\x74\x16\x1b\x2a\xcc\x2b\x8d\x6c\x74\x0f\x71\xcb\x70\xfb\xd4\xe8\x8d\x8a\xbb\xd1\xce\x26\xd7\xfb\xd7\xcf\x5f\x90\xdd\xfd\xc9\xde\xde\xee\x13\xf2\xe4\x7a\xf7\xc5\xf3\xe7\xd9\xee\xb3\xfd\xfe\xf3\xf1\xde\xf8\xe9\xb8\xff\xe4\x69\xbb\x25\xe3\x64\x34\x83\x23\xcd\x73\x6b\x9d\x21\x80\x6b\x12\x93\xa4\x54\xf0\x93\xbf\xb3\x39\x61\xf6\xe8\xfb\x14\xf5\x55\x4b\x86\xe4\xf8\xba\x93\x8f\x14\x6a\x34\xed\xbd\x2b\x58\xc2\x52\x47\xc7\xce\x33\x41\x7d\x8b\xe3\x91\x77\x4b\x42\x72\xf9\xeb\x13\x79\xc0\x4c\xfc\x8f\x72\x19\xd9\xfd\x7a\xa6\xf0\x04\x99\x17\x98\xc3\x9f\xa0\x4d\x94\x7f\x95\x1e\xb2\x42\x54\x18\x72\x56\x8f\x4c\x61\x0d\x3d\x0c\x55\xe3\x27\x6f\x5a\x12\x0a\x61\xaa\x26\xf4\x73\x50\xe1\xbd\x3b\x64\x59\x5e\xcc\x02\x0c\x8d\xf3\x6e\x79\x5b\x2c\x67\x93\x73\x32\x2f\xee\x22\xfb\xb4\xed\x0d\x49\x19\x88\x93\xaa\xef\x80\xbb\x9c\x4a\x38\x09\x2b\x0a\xf8\x8d\x01\xdf\x24\x38\x50\x50\x39\x6a\x1e\xea\xbe\x39\x13\xb8\x06\x33\xcd\x92\x59\xec\x36\xcf\x16\x18\x6c\xae\xbd\x0c\x83\x33\x5a\xca\x1b\x5a\x74\x97\x7f\x22\x13\xd1\x51\x14\xf5\x99\x7d\x6d\xc4\x7c\xb4\x84\xe8\xb6\xd5\x35\x49\xfc\x71\xf9\x4b\xae\xb2\x01\x24\x69\xaa\x1b\x48\xe2\x59\x02\x14\x4a\x30\x26\xe6\x58\xc5\xa1\xf4\x1a\x3f\xac\x69\x7c\xe0\x95\x42\x91\x85\x22\x2a\xb2\x7e\x44\xc8\xb1\xbd\xad\x57\xd1\x2a\x0f\x6a\xc5\x7b\xb6\xd4\x7d\x56\x5e\x88\x4d\xad\x91\xd9\xcb\x82\x7a\x3a\x46\xc0\xc6\x3b\x1d\x0e\xc0\x60\x53\x76\x35\xb4\x60\x48\x13\xb1\x75\xb9\xbf\xb4\x90\x88\x93\x88\xa3\x39\x82\x6d\xbe\x97\x26\x28\xd6\x5a\x5a\x86\x20\xa1\x29\xa2\x12\x0d\x97\x84\xf1\xef\xc8\xb4\x60\x71\xca\xdd\xf4\x99\x3b\x7d\xd2\xa0\xcf\x02\x33\xbf\x4f\xea\xf4\x59\x78\x67\x35\xf7\xba\x4c\x0a\xc4\x53\x54\x80\x0a\xca\x3b\x59\xe1\x08\x44\xb7\x2d\xe2\xb5\xc4\xba\x0c\x8e\x23\x18\xac\xf8\xad\xda\xe4\xcd\x41\xab\x9a\x46\xa0\x25\x77\x6a\x4f\xc8\x8c\x70\xe2\xec\x24\x4c\x05\xcc\x0c\x95\x4c\xa8\x76\xe3\xa1\x25\x23\x39\x52\x99\x1a\x48\x36\xa9\x35\x46\x17\xe5\xa5\x84\xca\x60\xf4\x88\x0c\xe5\x18\x0e\xfd\x07\x54\x9b\xad\x39\x76\xec\x5b\x96\xfc\x3e\x36\x9e\xd9\x99\x69\x33\xea\xdb\x90\x07\x89\xe1\x9c\x0b\xd8\xd4\x44\x1c\xd7\x1e\x66\x5e\xb0\xc7\x47\xef\x3c\xe7\x10\xc3\x3c\xc8\x46\xce\x0f\x81\xd9\x23\x1a\xfc\x78\x5a\xbd\x82\x8d\x54\xe9\x02\x79\x3c\xde\x90\x74\x55\x34\x9e\xde\x08\xb7\xe5\xcf\x36\x12\xaf\x7f\x64\xcb\x9c\xe0\xfe\x08\xb7\xe1\x97\x7c\xf9\xb6\xc8\x09\xde\x1b\xe1\xb6\xf8\xd1\x5e\x25\x1f\x1e\x1f\x93\x0f\xf8\xf3\x4a\xf9\x17\x36\xe4\xc2\xd5\x58\x4e\x26\x03\x50\xce\xac\x6a\x0d\xb4\x86\x0d\x12\xaa\x72\x14\x2c\x6d\x88\x5b\x98\x5d\x10\xa5\x72\x91\xc1\xa0\x31\xd3\x7b\xdf\x64\xfe\xfc\x90\x8f\xe3\xea\xb0\x0f\x6a\x21\x0e\x0e\x52\xcd\xa5\x29\xf6\x4c\x7f\x19\xa8\xbd\x13\x9b\xa0\x82\x0d\xb9\xc1\x59\xb6\x3e\xc8\x35\x73\x8b\xc1\x8b\xb0\x94\x58\xbb\x81\x8b\xa4\x4c\x71\xf1\x25\x91\x4a\xb4\x6c\x72\x97\xe5\x63\x72\x59\xfc\x85\x34\x5a\x96\xa9\xc9\x6b\xac\x65\xe1\x2a\xc7\x5c\x4b\x68\xf3\x4e\x07\xa8\x8a\x6d\x8c\xc9\x41\xaa\x49\x8d\x1e\x84\x30\x32\xc7\xcb\xc6\x72\xce\xb5\x58\xc2\x2e\xac\x53\x2a\xd5\x47\x37\x8c\xe2\xe4\xc1\xb7\xbd\x17\xd6\x0e\x93\x68\xa8\xb6\x81\x90\xf3\xd4\x37\xba\xcb\x98\x59\x49\x6d\xee\xf7\x89\x3c\x54\x79\x46\x0e\xb4\x13\xc6\xf4\xd0\x2c\xe9\x39\x20\xb5\x24\x4f\x65\x2a\xf3\x84\xa6\xf6\xdb\xfb\x02\xcc\xd1\x06\xe6\xc5\x09\xe0\xb9\x24\x4f\x91\xde\x73\x3d\x59\xd9\x4c\xdd\xb5\x61\xa7\xc3\xbc\xe9\x1e\x24\x0c\xb3\x54\xd1\x40\x36\x4c\x86\x5a\x56\xee\x4a\xc5\x91\x73\x06\x14\x26\x4e\x00\x55\x22\xa6\x48\x2b\x06\x24\x93\x59\xfe\xf7\x21\xf2\xdd\x10\x28\x6c\x37\xc0\x59\x88\x1e\x0a\x0c\x39\xd2\x65\x7f\x69\xab\x70\x06\xcc\xf4\x9d\xab\x3e\x1e\x26\x0c\x2e\x13\x79\xb7\xe4\xea\xb7\x6c\x45\x8d\xb3\x90\xa4\x1d\x3f\x84\xdd\x00\x87\x42\xed\x4f\xe7\x02\x75\x42\xcd\x54\xe4\xb2\x6f\xbc\xb8\x6a\xf4\xb9\x3f\x57\x8a\x79\x78\x4f\xe5\x69\x4b\xdf\x5d\x09\x85\x31\x52\x35\x46\x2a\xc7\x98\x1f\xe6\x76\x8c\x26\x89\x96\xc4\x7c\x35\x77\x8c\xd9\x3c\x6f\x68\x0a\xf3\x20\x85\x02\xf4\xc4\x2a\x2d\xd5\xdc\x00\xee\xb4\x7c\x08\x72\x0e\x05\xd3\x87\x42\x62\x10\x4d\xd7\xb7\x62\xa3\x23\xee\x89\x0d\x28\xec\x24\x3d\x4c\x88\xbe\xa0\xf3\x14\xf1\xae\xbc\xa2\x13\x58\x8b\x34\x1d\x28\x02\xbb\x3a\x1d\xc0\xfe\x55\x33\x16\x00\xd9\x89\x44\x5d\xfe\xb5\x1b\x68\x39\x7e\xad\xe8\x22\xa5\x4a\x76\x73\x4d\x24\x8a\xea\x31\xed\xcb\xbb\xb9\xfb\x34\x2b\xee\x77\x67\xe4\x8e\x44\x34\x98\x2a\x74\xce\x37\xeb\x31\x19\x84\x4f\x7c\xef\xe3\x06\xb7\x03\x69\x8d\x7d\x6b\x78\x72\xef\xab\xab\x00\x5f\xf0\x24\x03\x49\xac\x6c\xb2\x39\xdc\xa1\x63\x98\x50\x74\x3a\x49\x21\xae\x60\x69\xf8\x8d\x4a\xd1\x19\x01\xaa\x5f\x87\x8a\x96\xa9\xde\x8d\xab\xb2\xb6\xc8\x45\x33\xfc\x36\x59\x22\x2a\x43\xf5\xa3\x31\x9e\x75\xe7\x59\x9e\xdd\x10\x86\xa6\x78\x26\xd3\xf9\x0b\xf8\xdb\xfe\x98\xbc\x4b\xc6\x10\xe5\xd4\x09\xe7\x94\x4c\xd3\x14\x8d\xd3\x48\xc8\xfa\x2c\xcf\x0b\xbe\x25\x1d\x75\xb7\x4c\xd0\x98\x72\xeb\x9e\xf2\xdb\x2d\x15\xbe\x66\x4b\x3a\xe5\x95\x5b\x59\xb9\x95\x6d\xb1\xa2\xe0\xb6\x64\xb7\x9d\xb6\x32\x0c\x1d\xaa\xb8\x94\x53\xb4\xd4\x31\x57\xd5\x1e\x7d\x22\x0f\x65\x52\xa4\x81\x25\xb9\xa1\x1f\x87\x04\x15\x43\x32\x1a\x09\x80\xbb\xc5\xc3\xf6\x3c\xa3\xb9\x00\xad\x59\x29\xc0\x45\x06\x3a\x1d\xa1\x05\x9e\xd4\x35\xd0\xfe\xcf\xf6\x0e\x19\xf6\x44\x03\x2d\x3f\x24\xb3\xbe\x7f\xe7\xb8\x77\x30\x7f\xb5\xff\xa7\x5b\xad\x38\x98\xef\xec\xa4\x70\x59\x99\x24\x7b\x10\x07\x58\x6d\x71\xf5\x0b\x9a\xc4\x93\xfe\x28\xea\x65\xd8\x1f\xb5\xbc\x4a\x1c\x1c\xfa\x4a\x88\x01\x22\xd3\x3a\x26\xea\x3b\x5a\xa0\x5b\xd4\x83\xe0\x8d\x5e\x0d\x59\x36\x78\x99\x05\xcf\xb3\x14\x29\xf0\x2b\x01\xfc\x4a\xc2\xdf\xaa\x70\x50\x6f\x54\x3a\x20\x0f\x33\x7f\x8f\x89\x84\xd2\xc6\x82\xa2\xdc\xdf\x44\xb9\x1b\xc2\x55\x2c\x98\x9f\xb2\xd0\x54\x4e\xfb\x9d\x4e\xfc\x78\xa1\xe0\xc3\x5e\x94\xe0\x96\x9b\xcd\xba\x19\x4f\x7a\xde\x49\x99\xf3\x84\xa1\x5c\x6b\xdc\x83\xac\x3d\x8e\x47\xef\x35\x22\x32\x8a\x7a\xd8\x6d\x60\xbd\xe3\x6e\x93\x68\xff\xca\x31\x3f\xf8\xdb\x2d\xe5\xa4\x5c\x64\xe3\x28\x97\x52\x90\x2e\x27\x25\x07\xd6\x84\x74\xf3\x82\xcd\x41\x0e\x66\xa2\xf9\x7c\x20\x62\x08\xe0\x6a\xab\x9d\xc4\xa3\x46\x0f\x3f\x10\x01\x0a\x2a\x31\x88\x8c\xc8\x6a\xc6\xc0\x88\x34\xa6\xa1\x45\xde\xd8\xc6\x0d\xaf\x6f\x83\x96\xc6\x06\x5c\xd4\x7b\x47\x99\x94\x85\xe0\x3b\x2e\x06\xa8\x4f\xf5\xc3\xbb\x59\x76\x53\xbe\x63\xc5\x1c\xbf\x43\x10\x36\xc5\x1c\xf8\x07\xfc\x1b\x22\xdd\x37\x4b\x56\x82\x66\xfa\x4d\x91\x8f\x19\xe1\xe4\xbb\x62\x99\x4f\x4a\x4c\xba\x17\xc7\xe7\x27\x47\xa7\x27\x7f\x3f\xba\x3c\xf9\x70\x76\xf5\xee\xe4\xfc\xe2\xf2\xea\xec\xc3\xdb\xe3\xab\x8b\xcb\xf3\x93\xb3\xef\x41\x37\xad\x8c\x82\xf4\x2c\x48\xf7\x8c\xdc\xab\x98\x5e\xf6\xdd\xdb\x0f\xef\x2f\x19\x91\x0e\x2d\x6c\x09\xd3\xc4\xa4\x7b\xf2\xf6\xc3\xfb\x37\xb7\x59\x7e\x43\xa0\xb3\x9f\xbe\xbf\x3a\x3b\x7a\x7f\x7c\xf1\xe3\xd1\x9b\x63\x59\xc7\x7e\x6c\x00\x08\xd2\x7d\x7f\x72\x76\xf2\xfe\xe8\xf4\xea\xcd\xd1\x8f\x47\xdf\x9d\x9c\x9e\x5c\x9e\x80\xf6\xfe\xed\xf1\xbb\xa3\x8f\xa7\x97\x95\xd7\x52\xf3\x72\x9c\xdf\x51\x56\xe4\x73\x79\xb1\xfa\x4f\x32\xc0\x11\x31\x21\x52\xbe\x87\x7a\x36\x44\x17\xbd\x5e\x82\x2d\xc1\x05\x9d\x2f\x66\x24\xf2\x41\xee\xd4\x39\x29\x97\x33\xd1\x9e\xd6\x0c\xfe\xf4\x1e\x93\xee\x69\x71\x7f\x2a\xae\x2f\x78\x78\x53\xe4\x13\x75\x24\x5c\x95\x7f\x24\x7e\x21\xe9\x7e\x3c\x7b\x7b\xfc\xee\xe4\xec\xf8\xed\xd5\xf9\xf1\xbb\xe3\xf3\xe3\x33\x58\xa6\xb3\x8f\xa7\xa7\xce\x0b\x47\xbd\x9d\x35\x2a\xbd\xe0\x9a\x27\xe2\xda\xcb\x38\x51\x66\xd6\x20\xfb\x9a\xd2\xd9\xec\x6c\x39\x9b\x95\x69\xf2\xf2\x45\xaa\xec\x96\x1a\xd9\xaf\x6c\x32\xc1\xa1\x29\x91\x39\x8e\xac\xd3\x49\x18\x6e\x97\x0f\xe5\x38\x9b\xcd\x4c\xb4\x25\xaf\xe3\x21\x19\xe1\xcf\xaa\xc4\xc0\x14\x15\x95\x91\x2e\x08\x66\x7e\x5c\xc6\xb4\x0b\x65\x2f\xd6\xe1\x70\x31\x90\xfd\x22\xb8\xe6\xd4\x83\xad\x78\x34\xe5\x95\xd8\x5a\x28\x4f\x3f\xe7\xdd\x72\x21\xe8\x29\x51\x09\x12\x08\xaa\x4e\xab\xb3\xb2\xa2\xfc\x60\x06\x6c\xd4\xca\xbb\x6a\xe4\x87\xb9\xf9\x0a\x87\x75\xe0\x3e\x4b\xd9\x34\xd2\xec\x7c\x8a\x7e\x37\x97\x16\x10\x4c\x48\x61\x66\x77\xc1\xc8\x9d\xfa\xbd\x81\x35\x9b\x0b\x24\x2a\xe6\x84\x96\xfe\x7f\xbf\xa4\x93\x54\xaa\xbc\xc4\x45\xb5\xac\x95\x9a\xbb\x21\x37\xac\xac\x7c\x53\x8b\x3a\x65\x96\x15\x43\xc7\xd6\x58\xf3\x70\x3a\x50\x54\x33\x39\x9c\x0c\x64\xc6\x84\xc3\xdb\xc1\x76\x1f\x7e\x2c\x06\x3a\x5a\x2b\xd6\x76\x2f\xe4\x50\x1a\x25\x92\x74\x20\x35\xac\xe0\xa1\xe2\xc7\xa9\x88\xb0\x04\x53\x10\x2e\xe7\x81\xde\x00\x02\x4c\x54\xcf\xe5\x32\x34\x25\xf9\xb6\x4d\x94\x64\x87\x6d\x7e\xc3\x3d\xac\x9b\x13\x07\x35\x58\x5b\xb6\x2a\x4e\x54\x20\x23\xf4\x7b\x0b\x44\x50\xf2\xe8\xc6\x0a\x6a\x63\x4f\xa3\x6b\xd1\xaa\x6f\x01\x4e\x11\x99\x99\xe0\x25\x5c\xa8\x80\x05\x5e\x0a\xea\xf4\xdf\x03\x4e\xd0\xf8\x54\x8d\x52\x25\xe1\x69\xc5\x31\xa8\x6b\xb4\x30\x56\xd4\x5d\x05\xab\x3a\x96\x0b\x5b\xe3\x64\xbb\x97\xa2\x85\xfe\xdd\x4f\xd1\xfc\x4b\x15\x5a\xa0\x32\xf8\x22\xe5\xbb\x67\xf1\x0e\xe9\xd5\xdd\xc5\xb7\x4a\x5f\x9d\x7c\x3d\x2a\x9d\x27\xae\x46\xac\x7a\xed\xcc\x43\xbb\x82\xca\x96\x00\xe4\x68\x50\x66\x51\x7d\xf8\x22\x63\xbc\xc4\x1c\x81\xd5\x20\x86\x64\x03\x9e\xc5\x63\x9a\x70\x0b\x23\x5f\xab\x11\xb7\xf2\x3d\xe3\x74\xa9\xcc\xdc\x61\x51\x60\x0c\x11\x7b\x77\xfb\x71\xc8\x47\x46\x21\x2a\x05\x4d\x02\xd6\xc9\x90\x8f\xf0\x43\xc2\x52\xc7\xe6\x59\xb6\xf2\xba\x77\x48\xba\xbf\x14\x34\x4f\xda\x6d\x1d\xa6\x4c\xa2\x08\xdf\xaa\xc0\xb1\x0c\x79\x70\xd8\x0e\xfd\xd2\x5a\xe4\x91\x2e\x2f\xa4\xc3\xe7\x61\xbb\x3d\xb8\x30\xc1\xb5\x33\xc8\xf8\xd4\xaf\xcb\x57\x56\x2c\xfa\x20\x5b\x93\x0c\x42\x01\xf1\x72\x02\x06\x50\xfa\x7e\x26\x2c\x4d\x08\xca\x65\x86\x6f\xb1\xe3\xb3\x22\x9b\x80\x82\xcf\x0f\xed\x88\x0a\x40\xeb\xb2\xdb\x67\xeb\xba\x65\x8e\x7e\x52\x1a\x13\x26\x4c\x34\xee\x32\x41\x4e\x7b\x4f\x36\x9a\x86\x1c\xa3\x68\x45\x72\x0a\x10\x69\x52\xb7\x8e\xdc\xf6\x9e\x7e\x41\x7b\x20\x06\x73\x9f\x8b\xe0\x39\xc3\xc5\xe1\x10\xd8\xee\x91\x0c\x8f\xe5\x0f\x40\x05\xda\x43\x99\xd3\xff\xcb\xb5\x0b\x64\x77\xc3\x3a\xf4\x32\x35\x16\xd5\xb8\x0d\x8d\xf4\x3e\x5b\x24\xe9\x30\x1f\xd9\xbc\x06\xb4\xd3\x01\xcf\x6d\x70\xef\x9c\x4d\x65\xe9\x24\x87\x4c\x60\xce\x1a\x53\x67\x4c\x7b\xbd\xe6\x31\x89\xbf\x7b\x2d\x12\xa4\xb2\x60\x68\x7b\xdb\x5d\xd9\xe7\xdf\x32\x31\x7f\x13\x9d\x61\xea\xd1\xdb\x7e\x5e\x6c\x06\xd8\xc1\x7a\xa9\xbd\x48\x5b\xf4\x30\x51\x59\x7d\xe9\x70\x6f\x94\x22\xf3\xd0\x77\x1f\x7a\xa3\x34\x1d\xe8\x82\x92\x29\xaf\x7d\x70\x77\xb7\x79\x6c\xdb\xdb\xf1\x31\xf9\xd0\x7f\x78\x3b\x58\x38\x6d\xf6\xbd\xdd\x49\x3f\xfb\x20\xe8\xaf\x9d\xbe\x0e\xdc\x12\x4c\xca\xbf\x6d\x82\x02\x85\x8f\xfc\x5e\x59\xd8\x6b\x05\x7f\xd8\x94\x8a\x7a\x3a\xd6\x5b\x1d\xb6\x91\x1d\xd0\xd7\xbd\x03\xba\xbb\x9b\x7e\xce\x87\x74\xb7\x3f\xf2\x07\xb2\xf2\x67\x49\xee\xb7\xee\xd4\xc6\x2a\x03\xa3\xf6\x9b\x8f\xe7\xe7\x27\xc7\x6f\xb7\xde\x7c\x78\xff\xe3\x87\xb3\xe3\xb3\xcb\x2d\xb8\x6a\x21\x9a\xce\xd6\x90\x4e\xf0\xb3\x69\xaf\x37\x25\xd7\x2f\x77\xb3\x1e\x99\xee\x3e\x79\xfa\xe4\xf9\xee\xcb\x97\x24\xdb\xcd\xc6\xfb\x7b\x2f\xa6\x2f\x7a\xd9\x98\x64\xa3\xb6\xc5\x9f\xd7\xce\xcd\x95\x6c\x93\xc7\xc7\x6d\x32\xbc\x19\x49\x3e\xa4\xd6\x82\xc4\x78\xba\x78\x57\x6e\xc6\x6e\x4a\xa5\x81\x1a\xde\x8c\xb0\x09\xfc\xed\x91\x28\xcb\xfc\x9e\x65\x8b\x8a\xad\x24\xf8\xdf\x79\xee\xb8\x2d\x5f\x57\x73\x70\x60\x20\x05\x54\x2f\x10\xcc\x95\x62\x26\x87\x00\x92\x5e\x71\xb5\xb8\xb2\x8f\x05\x23\xa0\x67\xca\x9d\x97\x02\x1a\xf2\x6c\x4e\x26\xdd\x39\x61\x37\x24\xc9\xe5\x53\x9a\xa2\xed\xeb\x84\x1a\x1b\x23\xda\xe2\x98\xae\x56\xa8\xc1\x1f\x5a\x0e\xb3\xe2\x9c\xeb\xaa\x71\x24\x07\x82\xcd\xe2\x08\x38\x3b\xf4\xc4\x33\x3a\x27\xaa\x26\x49\xc4\x6e\x1c\xb2\x1d\xed\x8d\x33\x60\x11\x17\xde\x7b\x87\x68\x3f\x16\xe5\xbd\x9b\xcd\x14\x3b\x76\xa3\xd3\x01\xa1\x49\x1e\x1f\x1b\xaf\x48\x5b\xf7\x83\x73\xa9\xaa\x7c\x07\x96\xd8\x37\xf1\xe6\x49\xa7\x63\xdb\xc3\x6e\x7b\x3f\x5c\xbe\x3f\xb5\xad\x5d\x6c\xdc\x5a\x85\xb1\xe8\xe6\xc5\x84\x5c\x3e\x2c\x88\x6d\xed\x57\xa7\x35\x95\xd1\xc1\x96\x5f\x35\x8a\x30\xa4\x45\xd2\x51\x83\x45\x12\x52\xd9\x46\x0b\x4d\x7d\x15\x51\xea\x4b\x8c\x0a\x73\x08\x3d\xac\xa9\x3a\x86\x0a\xcf\x96\xac\x80\xf4\xbe\xb8\xad\xc4\x73\xbb\x9c\xfc\xca\xdb\xe2\x6d\x76\x23\x5d\x3d\x54\x79\x63\x17\x06\x34\x1c\x10\x4b\x69\x52\x48\x0b\xb1\xa2\xd9\x2e\x89\xc6\xec\x92\x68\x84\xab\x6e\xb6\x5e\xe3\xd9\xcd\x81\xee\x1c\x8c\xfb\xd2\x84\x57\x8d\x13\xd3\xc7\xc7\xa4\x6a\xcc\xe6\x0e\x5a\x3b\x23\x6a\xfd\x97\x21\x97\xd3\x15\xa2\x31\x6b\xa9\x3b\x95\x14\xc4\xb7\xa1\x6b\x91\x6d\xc9\x12\x25\x1c\x6b\xf0\x16\x7b\x7e\x48\x2c\x94\xa7\xaa\x88\xd4\x3d\x16\x13\x09\x27\x8e\x81\xab\x63\xef\xaa\x6c\x34\xcb\x14\x7d\xfa\x37\xbb\xab\x35\x30\xd7\x60\xd6\x54\x61\x8b\x6b\x79\x08\xc0\x03\x30\xec\x79\x8a\x7e\xfc\x3a\xb6\x67\x13\x5b\x3e\x00\x0b\x0d\x07\x1e\x8f\xa3\xc1\x29\x32\x36\xb1\x19\x8f\x8f\xc7\xf0\xbf\xc9\x95\x62\x8f\xe0\xe3\x63\xf5\x18\xaf\x12\x9e\x1e\xf6\x07\x89\xd8\x8e\x4e\x47\x5c\x30\x87\xbd\xc1\x07\xf1\x72\x3f\xe2\x26\x03\x08\xa3\xd3\xe9\x83\xbc\xc1\x62\x00\x51\xfc\xc9\xe0\x42\xfc\x79\x3a\x50\x76\xe8\x2d\x45\x9d\xbd\x40\x31\x2d\x80\x7b\xb5\xea\x89\x21\x86\x8f\x45\x13\x16\x69\x72\x41\x5c\x10\x29\x4a\x2d\x93\x54\x67\x89\x97\xe7\x16\xb2\xcb\x33\x97\x10\x7c\xb9\x71\x57\x0a\x11\x7a\x7d\xf2\x2f\xe9\x6b\x7f\x6f\x6d\x5f\xe2\xf8\x98\xa9\x51\x7c\x9c\x30\x77\x6a\x4c\xd2\xe3\x75\x1d\x42\x52\x7f\x9a\xca\xd3\xaf\xfc\xea\xc4\x39\x7e\x7c\xd4\xa6\x87\x7f\xa3\x5c\xd2\x21\x47\x49\x81\x38\xa2\x2e\x21\xb7\xdf\xdb\x78\x25\x1a\x26\x6d\xb2\xf0\x73\xb7\xe9\xfe\xef\xd1\x34\x68\x70\xdd\x66\xf7\x82\xf5\xb4\x47\x24\xc8\x2b\xe5\x54\xd9\xaf\xab\x62\xf2\x3d\x39\x8c\xd8\x93\x86\xf6\xfd\xbc\x6e\x4e\xa5\xa7\xf5\x3d\xd4\xd5\xe9\xef\x35\x10\xd1\x3e\xd1\x1a\xf0\x14\x32\xea\x33\x73\xf7\xb1\xbf\xbf\x29\xb7\xc0\x5e\xbf\xde\xd7\x09\x9c\x9e\x77\x98\x71\xc0\xd0\x2c\x81\x67\xaa\xd3\xd7\xaf\x83\x11\xc8\xa0\x52\x82\xd6\x72\x4b\xef\xd5\x94\x36\xd1\x9a\xbc\xd2\xfb\xaa\xf4\x31\x64\xc3\x9f\xd8\x54\x48\xcc\x2b\xf6\x64\x00\x7f\x9e\xae\x1d\xc9\xca\x59\x8d\x27\x0d\xa0\xd7\x52\x3e\x92\x4b\x85\xea\x13\xae\x38\x7f\x77\x39\x9f\x6e\xd0\x80\xb4\xcb\xb7\x50\xec\xd6\x5f\xc3\xfd\x02\xa7\x09\xac\x1b\xa4\x90\x90\xc2\x06\x96\xee\xe6\x66\xdf\x21\xf7\x99\xdb\x62\x13\xdb\xd9\x72\x4f\x95\x8b\x7c\xfa\x4d\x4c\xa4\x92\x74\xf8\x15\x9a\x38\xbb\x96\x1a\xae\x57\xe3\xc9\x5a\xc8\xf3\xf6\x4b\xf3\x51\x2d\x52\xc9\x92\xe1\xc9\x43\x9e\x35\xc9\x75\x04\xbe\x80\x54\x15\xee\x40\x9e\xed\x85\xfc\xa3\x4c\x53\xe1\x0c\x75\xcd\x6a\xd4\x9f\x38\x37\x80\x94\x7f\xf0\x9e\x3c\xaf\xe1\x5a\x65\x2b\x8a\x0b\x76\x2b\x3c\x6b\x00\x2d\xb8\x09\x24\x8b\xcb\x0e\x15\x98\x31\x2f\x62\x38\xbc\x3b\x5b\xce\x66\xee\xc4\x9e\x36\xa1\x5a\xdb\xa6\xd2\x2b\x4b\x89\x0f\x37\xb2\x1e\xdd\xa3\x35\xb4\xa1\xa9\x87\xf5\x74\xe2\x0e\x90\xbd\xc8\x57\x7a\xc3\xb4\xf2\x0c\x95\x98\xba\xb9\x01\x97\xd8\xb0\xdf\x74\x9a\x2c\x5f\xf7\xd2\xcf\x19\xce\xba\x63\x81\x9f\x1d\x13\x82\x19\xee\x1d\xcc\x5e\x2d\x0f\x66\x3b\x3b\x69\xe6\x0a\xb3\xca\xe1\x6c\x84\x8a\x6e\xc6\x93\x59\x2a\x38\x6a\x77\x18\xee\x08\x32\xc8\xec\x29\x68\x7b\x17\x14\x9e\x36\xc2\x64\x28\x88\xa1\xd3\xc4\xbf\x3c\x69\x9a\x52\x7d\xa8\x3b\x1d\xd2\xbd\x29\x78\x01\x20\x3b\x2b\x89\x4a\x3a\x2e\xae\xd3\x3c\xf0\xef\x10\xb8\xb3\x50\x38\xc1\xa9\x86\x2a\xf7\xf0\x79\x52\x78\xe8\xea\x69\xa3\xf0\xef\x8b\x86\x2b\x6e\xfd\xaf\x18\xae\x53\x6d\x83\xe1\xae\x91\x2d\x6a\x31\x9a\x1a\x34\x74\x80\xc1\xa8\xd2\x74\xe2\x34\xd6\x74\x1c\x54\xe5\x75\xb4\xcd\xb9\xeb\x9d\x14\x9d\x2a\xf7\xb0\xfb\xb3\xfd\x78\x9f\x24\xbf\x03\xb3\x5c\x89\xe5\x99\xc6\xf2\xbc\x88\xa9\x00\x12\xe6\x5c\x1b\x4d\xa9\x2f\x36\xd5\x06\x48\x56\x33\x2b\x4b\xc2\x78\x5b\xe9\x04\xa4\xb7\x1c\xeb\x8e\xc1\x7f\x88\x6f\xa2\x0c\x88\x79\x3e\x99\x39\x6a\x16\xc6\xc6\xd4\x97\x2b\x8c\xb8\xcf\xd4\x44\x94\xba\xbe\x79\xa5\x18\x8f\xde\x16\x1d\xa0\x22\x4d\x5c\xef\xb2\x24\x85\x43\x20\xf3\x28\x1b\xf6\xad\x26\xf5\x83\xe3\x49\xb4\x26\x2c\xa7\xb2\x91\x66\x88\xaa\x05\xfb\x65\x39\x5f\xec\xd2\xe9\x6e\x5e\xf0\x5d\x95\xe1\x6c\xd2\x16\x5f\xc5\xf2\x21\xda\xc8\xea\xc6\x83\x6a\x7e\x39\x6f\x1e\x06\x4e\xba\x09\x0c\x35\x69\xd5\x35\xae\xb5\x4d\xba\xd9\xec\x3e\x7b\x28\xcf\xcd\x92\x75\x3a\x15\x16\x9e\xba\x98\x44\xb0\xe0\x13\x3a\x81\xf5\x7e\x68\x76\xe7\xf4\x26\xaa\x06\x65\x36\xa1\x26\x41\xc3\xc6\x80\xaa\xcd\xd4\x99\x16\x8f\xd0\x89\x5c\xfa\x07\x0d\xb7\xb9\xe7\xcc\xfc\x65\x3a\xac\x98\xe8\xc3\xb3\xb3\xd4\x2b\x60\xa1\xaa\x36\x1d\x83\xa9\x59\x19\x92\x7c\x0f\xc3\x9f\x49\x43\x4b\xb5\x88\xd7\xc4\x4d\x4e\xe0\xd8\x06\x68\x13\x69\xf9\x58\xaf\xfa\x77\x1b\x6a\xf4\x6d\x8a\x4d\x54\x39\xcd\x2c\xc8\xb8\x21\xe1\xc0\x35\x99\xed\xb4\xb7\x86\xed\x1d\x78\xbe\xba\x59\xd2\xc9\x4e\x7b\xd4\xf6\xb9\xe9\x26\x0a\x34\xc6\x6f\x01\x1f\x59\xa7\xbc\x70\x99\xa9\x35\x84\x68\xa5\xe1\x37\x32\xe9\xdf\x26\x6d\xef\x37\xdd\xdb\x7e\xdb\xc5\x82\xe4\xca\x74\x6a\xa3\x96\x9b\x38\x82\x26\x66\xd4\xed\xc7\x65\x43\x9f\xc4\x48\x2e\xc4\x36\x50\xa5\xc5\x3b\x8d\xdd\xea\x1c\x53\x3b\x28\x7d\x99\x97\xb5\x97\x39\xc7\xa5\x46\xe7\x91\x3b\x5c\x05\x7f\xf0\x3b\x29\xd2\x94\xe1\xa2\xda\xc9\x32\xde\x49\x91\xb6\x18\x5e\x36\x74\xb2\x04\x62\xcd\x59\x3e\x50\xa5\x91\x79\xc1\x89\x59\x44\x94\x21\x8f\x7f\xa8\x92\xed\x4e\xf5\x62\xe1\xd7\x76\xb7\xb4\x46\x5e\xe4\x70\x54\x8e\xfa\x96\xf7\x20\xee\x30\xe4\xf6\x91\xa6\x1a\xdd\xe9\x4c\x06\x62\x45\x35\x1a\x5f\xde\x93\x76\xc1\xa2\x80\x33\x26\xa8\xa6\xc7\xe3\x49\x7a\x6a\xa4\x4a\x4e\xdd\xf1\xac\x28\xed\x5c\x5a\xa0\xb0\xaa\x9a\xc0\x5a\xb8\x1f\xf6\x46\x82\xa0\x1a\xf6\x47\xc0\xf2\xdc\x75\xcb\xf1\x2d\x99\x2c\x67\x32\x8d\xfd\x6c\xa6\xae\x5e\x06\x41\xc3\xcc\x9d\x75\x43\xf8\x5b\x22\x8d\x07\x0b\x26\x88\x74\x2a\x2e\x91\x9c\xdc\xc3\xdb\x42\x26\xc7\x03\xe6\xd2\xd9\x86\x46\xdd\x68\xb3\xf6\x1c\x65\xb8\x30\x86\xd3\x25\x96\xb9\x2a\x09\x5a\x06\xa0\x3f\xf3\xd6\x02\xac\xad\xc7\xc6\xc8\x31\xbf\x41\x36\x4c\xc6\x87\x85\x72\x59\x2b\xd1\xa4\x6a\x1d\x7b\x2b\x18\x09\xc9\xba\x8f\x51\x89\x96\x68\x82\xa6\x69\xab\x61\xe3\xc5\x04\xcd\x4a\x65\xe8\x36\x55\x71\x2e\x32\xb1\x52\x97\xd9\x4d\x72\xeb\x93\x98\x97\xd9\x4d\x9a\x2c\x62\x12\xb4\x5f\x92\x05\x12\x0d\x18\x9a\xef\x97\x6f\xd7\x43\x48\x42\xc5\x2c\x20\x28\x21\x4c\xaa\x56\xab\x83\x90\x23\xd1\x24\x0e\x6b\x2b\xd5\x03\x98\x4b\x92\x49\x48\xd9\x14\xdf\x76\xe3\x86\x3e\xa1\x72\x6b\xb5\xbb\xa6\x1a\x82\x26\x6b\x40\x0f\x62\x29\x1c\x35\xa2\x50\x1d\x41\x51\x91\x3e\x3e\x26\x3e\x18\xcb\xb2\x66\x6f\x18\xe2\x4e\x34\x8b\xd8\xd4\xa8\xd1\x04\xa8\x7b\x6e\x7f\x13\x66\x04\xd8\xdd\x62\xb1\x1f\xc0\xb1\xa7\x9e\xcf\x6a\x3e\xe5\xa9\xe0\x6d\x0f\xeb\x44\x5a\xda\x1e\xc2\x39\xe4\xa5\xf8\xac\x93\xb5\x82\x95\x2b\x24\x56\x2e\x5d\x54\xd1\x28\x1f\xa2\x6a\xd4\x85\x1a\x75\xdd\xd0\x98\x18\x9a\x7f\xc6\x04\xdf\xad\x25\xc9\x33\x5c\xd4\x0c\xbb\x90\xc3\x46\x63\x1c\x0e\x3c\xb4\xcf\x4d\x32\xb4\x44\xdb\xdb\x14\xcd\x42\x2e\xac\x8c\x9d\x8f\x93\xa4\x44\x63\x7b\x3a\x4e\xd6\x53\xfb\x07\xb5\xe1\xf7\x6d\x7c\x10\x0a\x29\x1c\xa5\xbd\xb0\x25\xfc\x21\x5e\xe6\xae\x1a\x7e\x5b\x67\x77\x84\x70\x13\x86\x54\x17\x67\xab\x68\x62\x02\x0a\xc1\x04\xfc\x8e\x47\xc5\x0c\x54\x1f\x16\xab\xa9\xa3\xb5\x9a\x3a\xfa\x35\x9a\x3a\x9a\x22\xae\xd5\x74\x46\xe3\x83\xe0\x78\xd9\x33\x62\x96\xfc\xad\xb6\xca\xb5\xc6\x5a\x45\xf1\x69\xb9\x88\xe5\x08\x17\xe5\x80\x6e\x3d\xab\x37\x1d\x90\xb6\xc0\x55\xd5\x95\x93\x35\x41\xe2\x0a\xc2\x33\xed\xbf\x0a\xa6\x05\x79\x34\x18\x40\x5d\x54\x15\x47\xef\xfb\x2d\x31\x78\x3c\x25\xbe\x8d\x2b\xc2\x9c\x50\x1f\x74\x9a\x30\x30\xf9\x0c\x63\x7e\xd8\x21\x28\x7f\x33\x38\xf0\x74\x9a\x5c\x0b\x0a\x33\xc7\x0c\xa8\xa6\x2d\x3a\x4d\x2a\x9a\x6c\xc8\x9d\xfe\x39\xc7\x6f\xbd\x9c\x37\x0c\x31\xbb\x36\xc6\x7a\xce\xf1\xe5\x7b\x48\xf2\x30\xfe\x95\x5e\xc2\x70\x4d\x50\x5e\x09\x1d\xe0\x5a\xe6\xf2\x8a\xf7\x47\xe0\x57\x78\x53\xb6\x74\x88\x89\x4e\xe7\x5a\x2a\x68\xa5\x21\xf0\x95\xb2\xc6\x36\x61\x81\xd0\xe9\xba\xc8\x38\xb4\xe4\xae\x06\x33\x66\xcf\x48\xdc\x30\x11\xb1\x48\x6d\xd5\x6d\xb4\xf6\x8b\xc3\x91\xd9\x42\x5a\x72\x95\x38\x89\xbb\x89\x93\x94\xcd\xf9\x7d\xc2\x87\xcc\x18\x2d\xa6\x2d\x90\x3c\x69\x8b\x3b\xd5\xa7\x9b\x1f\x49\x7b\x8f\x4b\xa3\xc5\xad\xb6\x76\xe2\x33\x93\x7c\xe7\xe8\x74\x7a\xe2\x0e\x53\x14\x89\x4a\x6c\xd6\x1f\xf4\x52\xe7\xed\x65\x76\x73\xb8\xa7\x5e\x2d\x18\x59\x64\x0c\xf2\xde\x1e\x3e\x51\xef\x24\xed\x02\xaf\x5e\xa8\x57\x06\x6d\xfc\x50\x14\x9f\x0e\xfb\xcf\xd4\x6b\x85\xdc\xe0\xe5\xfe\x9e\xdf\x0b\x50\x43\x87\xcf\xfc\x46\xdf\x64\xb3\x19\x61\x87\xfd\x3d\xdd\xb0\x44\x10\xd0\xc0\xde\xd3\x67\x5e\x59\x20\x21\xf3\x31\x39\x7c\xda\x17\x4d\x5b\xe3\x8c\xdf\x5c\xaf\x9a\xed\xed\x84\x74\xb8\x36\xb6\x7c\xd6\xa4\x38\x75\x84\xd7\x4a\x74\xfd\x49\xd3\x69\x1e\x2f\xf6\xbc\x49\xe7\x28\x1b\x01\x06\x43\xb7\x22\xc0\xf1\xc7\xa0\x89\x8d\xad\x3e\x73\xc3\x77\xe9\x5f\x65\xe5\x36\xf5\x85\xfb\x40\xb7\x56\x7d\x05\x1b\xec\x42\xc5\x00\xcf\x92\x02\x2d\x51\x89\x32\x6f\x98\x4d\x2a\xbe\x40\x37\x52\x21\xaa\x29\xce\x0d\xe5\x55\xe0\x77\xd2\x44\xd0\xf3\x3f\x54\x5e\x18\xa2\x3b\xfc\x79\x62\xd0\xc2\x20\x47\xaa\xde\x80\xa2\xb1\x53\x61\x50\x28\x5f\x0f\x40\xb2\x2a\x6c\xb4\x44\xb8\x10\x2f\x1a\x7e\xca\x7b\x41\x1e\x7c\x5f\x27\xe2\x9a\x77\x3e\x8f\x92\x5d\xb9\x22\x59\xfa\x96\xcd\x45\x25\xce\x02\xe5\xfd\xb2\x71\x03\x0a\xc0\xc5\x75\x2c\x59\x5f\xb9\x6a\x56\x70\x6d\x29\x11\x6d\x6c\xe7\x04\x8f\x90\x42\x7e\x00\x08\x73\x75\x2d\x58\x61\x29\x96\xec\x21\xd6\x5d\xe6\x8c\x64\xe3\x5b\xd1\x77\x9a\xa4\xad\x1c\x97\xab\xac\x6a\x9e\xfb\x3c\x26\x32\x16\x97\xa0\xa3\x59\x55\x00\xd6\xba\x4e\x68\x7a\xc8\xb0\x14\x14\x0d\x38\x7e\x97\x24\x0c\x53\xbd\x97\x69\x65\x1b\xa9\xd9\x46\xa5\xe2\x74\xf7\x32\xd8\x41\x6e\xb6\x96\xad\xdf\xcb\x95\x3b\x01\x5f\xc7\x90\x83\xf3\x0a\xef\x4a\x53\x2e\xcd\x2d\x2e\xc5\x9a\x42\xbc\x9c\x54\xeb\x76\xa8\x95\x60\x00\x9b\x57\x91\x5a\x6c\x5f\x27\x59\xc3\x7a\x52\x9c\xa1\xa2\x6a\x8a\xfb\x7c\x63\x05\x69\xcc\x7c\xdb\x4f\x3b\x24\xa9\xf7\xfc\xf5\xeb\x27\xa8\xc4\x2f\x3a\x39\x5a\xe2\xe1\xa8\xf5\xa4\x93\x77\x3a\x4b\xd9\xb3\xf4\x7e\x4d\xd1\x9e\xfb\x0e\x5c\x61\x53\xd4\x77\xdf\x49\xbf\x58\x41\x46\x39\x3e\xa6\x14\x89\xa3\x9d\xa1\xed\xed\x32\x45\x54\x6b\xf6\xc0\xb1\xd4\x99\xd0\xf3\x0d\x34\xc6\xaa\x59\xe9\x9b\xcc\x3d\x63\xdf\xf5\x38\x11\x16\x5e\x45\x96\xb7\xc8\xd1\x15\x40\x3c\x5f\x63\x96\xeb\x9a\x0c\x7b\x7a\x67\x0f\x4f\xd2\xae\x05\xbf\x96\xd8\xdc\x4e\x27\xc9\x6a\xbc\xbb\x88\x53\x16\x73\x65\x17\x5a\x45\x5e\x0a\x51\x59\xad\x83\xe6\x75\xa9\xeb\x7c\x49\x49\x19\x45\x73\x45\x0a\xd1\xbd\x28\xca\x50\xa1\x18\x8b\x12\x67\xc0\xea\xe8\x2e\x66\xb8\x74\xbc\xb5\xc5\xdd\xfe\x5b\x42\xbd\x96\xd1\x93\x54\x0e\x7a\x8c\x0b\x99\x57\x56\x31\x4a\x25\x9a\xda\x37\x79\x36\x27\x25\x9a\xe0\xa5\x7b\x71\x27\x33\x24\x91\xd2\x24\xfd\x5c\x74\xc7\x33\x92\x31\x47\x85\x79\x8b\x7b\x07\xb7\xaf\xc6\x9a\x0c\xb9\xdd\xd9\x49\xd5\x31\x1e\x0f\x6f\x47\xb6\xdc\x02\x4f\x1c\xa3\x51\x34\xc7\x13\x69\xb5\x8a\xee\xb0\xc9\x70\xf2\x80\x7b\x07\x0f\xaf\xee\x0e\x1e\x6c\x23\x8b\xe1\x83\xd3\xc8\x8d\xe7\xfd\x3d\x4f\xd1\x15\xee\x1d\x5c\xbd\xba\xd1\xbd\x5f\xd9\x8a\xf3\xe1\xcd\xf0\x6a\x34\x4a\x5b\x85\x02\xe3\x1c\xdd\xa0\x29\xba\x43\xdb\xbd\x74\xa5\xca\x14\x12\x2d\x6e\xd9\x47\x0b\x90\x8d\x37\xac\xe5\x50\x7d\xb1\x8b\x14\x05\x59\x98\x00\x69\x90\xde\xa4\x25\x2e\xc2\xcd\x2e\x2b\x9b\x9d\x19\x64\x28\xc5\xf0\xad\xdf\x92\x25\x7a\xf6\x44\x00\xe1\xac\x22\x0a\x4a\x55\xd8\xd5\x7e\x87\xa1\xa9\x2d\xfe\x42\x94\x9e\x06\x4a\x44\xed\x3e\x6f\x4a\xf5\xf7\xa0\xdc\xc4\xf5\x21\x48\x95\xef\x52\xa9\x09\x17\xa9\x14\x54\x83\x42\x53\x34\x43\x13\xb4\xbd\x3d\x86\x55\x15\xaf\x4c\xcc\xd4\xd2\xca\x92\xa0\xf5\xbd\xa7\xcf\xd2\x4e\x67\x3b\x22\x56\x12\xc4\x68\xc0\x36\xff\x94\x2c\xd0\x2d\x2a\x91\x67\x63\xff\x62\x2d\xf1\xe0\x9f\xe1\xe8\x91\x83\xf3\xec\xcb\x03\x8b\xb4\x95\x45\xe4\x81\x9e\xf3\x46\x3f\x94\xc9\x5e\x93\x1b\x9a\x83\x10\xf8\x7b\x56\x2c\xa5\x41\x7e\x20\xe6\x95\x0e\xbe\xd2\xd6\xdf\x9d\xc6\x7e\xd8\x56\xad\xb0\x95\xdc\x6f\x7d\xe7\x0a\x49\xd6\x78\x5a\x7c\x83\x90\x64\x8d\x60\xa4\x51\x98\x58\x12\xee\x8a\x47\x4a\xb4\xbd\x9d\x0b\x02\x43\x01\xcf\x77\xcd\xb1\x66\x0d\xa5\x5f\x46\xa2\xe7\x8d\x67\x59\x59\x3a\x19\x6e\xb5\xa4\x6d\x6d\x4a\x5b\x67\x48\x11\x97\x5d\x29\x17\x56\x61\x3b\x38\x02\x24\xb7\xc8\xc6\x64\x90\x23\xce\x96\x25\xa7\xf9\xcd\x80\xad\x5a\x6d\xe8\xbe\x2d\x53\x7d\xb8\xe3\xd1\xd1\x17\x50\x30\x83\x21\x19\x61\x2a\x43\x35\x19\xf9\x6a\xe0\x9a\xef\x4f\x43\xe5\x69\x21\x88\xcb\x3c\x2d\x20\x4a\x8f\xc7\x76\xda\xa2\x3a\x67\x9f\xe9\xce\x73\x4d\x73\x46\xc1\x21\x23\x8b\x8e\xbd\x83\x59\xd7\x4c\x10\x65\x98\x75\xf5\x14\x05\x06\xb7\x53\xe4\xe0\x3e\x24\x40\xee\x34\x71\xe7\x9a\xa6\x48\x26\x21\x73\xe3\x6f\xaf\x95\x92\x71\x64\x34\x35\x70\x4b\x1d\x84\xba\x9c\xa8\xac\x8c\x42\x44\xee\x95\x18\x17\x74\x59\x37\xe5\x65\x38\x65\x90\x80\xa1\x19\x5e\xaa\x49\x8f\xf1\xd2\x99\xf4\x14\x2f\xcd\xa4\x41\x7e\xbe\x66\xf0\x2a\xe9\xda\xcc\xcc\x60\x8a\xc6\xe1\x0c\x66\xf1\x19\xcc\xd0\xc4\x3a\x00\xfa\x7b\x1d\xf2\xd0\x1f\x1d\x1f\x95\x3e\x5c\xd0\x04\xf5\x1d\xae\xf3\x07\x1b\xdd\x45\x89\xcd\xc1\xc4\xfe\x7a\xa6\x13\xd9\xbb\x29\x00\x81\x9d\xbb\x21\x3c\xe1\xe9\xc1\x6e\x7f\x1b\x62\xc0\xd0\x88\x4f\x5a\xb1\xd3\x47\x59\x8a\x98\x92\x76\x75\x3a\x89\xfe\x29\x60\x37\xd3\x6c\xed\xcb\xb5\x36\x6c\x55\x72\xc9\xb9\xe4\x32\x83\x6d\xfd\xeb\xae\x01\x8b\xb4\xca\xee\x84\x4e\xde\xc0\x25\xa3\xf5\x41\x99\x8f\x53\xc9\xaf\x0b\x32\xe6\x6f\x1c\x0d\x49\xd2\x7e\x1b\xd4\x91\x0e\xf5\xff\x8f\x96\x4a\xb6\x53\x89\x88\x34\xea\x5d\xeb\x54\x58\xbd\x41\x9c\x69\xf9\x97\x88\x9a\x56\xc0\x12\x9a\xab\xb3\xf0\xae\xae\xb5\xde\x87\xbf\x4b\xc7\x97\xd9\xcd\x59\x36\x27\x41\xdf\x51\xce\x22\x57\x24\x4b\xbf\x86\x64\x71\xb5\x57\xce\x48\xe2\xa2\x00\xd0\x64\x49\x52\x7a\x6c\xb4\x5d\xd3\x80\xba\x41\x13\x97\x26\xfd\x98\x4c\x51\x96\xa6\xb9\xd4\x39\xa9\xa0\x3e\x13\xb4\x54\x3a\x57\x41\xb5\x56\xed\x87\x15\x21\x0b\xe7\x24\x99\x36\x32\xad\x99\x13\x66\x46\xb5\x3e\x16\xb0\x30\x53\xac\xac\x3a\x43\x97\x50\x03\x99\xb7\x92\x6f\x74\x4d\xa3\x36\xf3\x3a\xac\xf5\x1b\xb5\x24\x48\x86\xdf\x25\x45\x83\xc8\xa2\xac\x11\x59\x14\x3e\xc3\x9b\x45\xd8\x5c\xea\xa7\xb9\xa2\xee\xe4\x42\xf9\x85\x25\x36\x98\xa7\x81\x79\xb1\x31\xaf\x94\x3b\x93\xb3\x3a\x7c\x0f\x80\x5b\x99\xce\x4b\x48\x51\xa6\x92\x0b\x16\x8e\xc9\xc4\x5a\x69\x95\xd7\x9a\x8f\xf5\x2a\xfe\xa8\xb9\xc9\xf8\x07\xa4\xbc\x9d\x51\x94\x5c\xca\x1d\x2b\x42\xa7\x97\x1c\x18\x1a\xaa\xba\xba\xcd\xca\xe3\xbb\x6c\xa6\xf1\x2e\x55\x38\xd2\xa3\x50\x02\x9f\x5f\x51\x5e\x8e\xa7\x70\x6d\x03\x2b\x34\x6b\xd5\x9b\xb2\x7a\xf8\x4d\xcb\xae\xb5\x84\xb4\x31\x10\x67\x53\xba\xfa\x65\xfc\x0c\x98\xb3\x12\x67\x6a\x01\x76\xfb\x07\xe5\x6b\xdc\x3b\x28\x77\x77\xf5\x3d\x99\x0d\xcb\x91\x60\x1c\x6a\x2e\x0e\xf1\x39\x85\x33\x2b\xdb\x14\x37\xc8\x12\x6d\xf7\xd5\x25\x32\x13\x97\x88\x63\x84\x3a\xdb\xe9\xa3\x71\x8a\x72\x7b\x7b\xe8\x9f\xc3\xe5\x08\x8f\xdd\x79\x7f\xe1\x05\x42\x83\x79\x2a\xfe\xb3\xf5\x43\xd2\xee\x48\x19\x84\x8e\xd1\x05\xd1\xce\x48\x8a\xc4\x17\x9a\xdf\x11\x06\xf1\xbb\x64\x18\x2f\xe7\x93\x4a\x91\xd0\x46\x2a\xd0\x97\xfc\xe4\x50\xf4\x6b\x5c\x9f\x43\x80\x56\x2a\xb9\x08\x86\x78\xf9\x15\x97\x4a\x8c\x2d\x09\xed\x3c\x14\xe3\xd0\x02\x13\x37\x19\x13\x48\x21\xb2\x02\x65\x4a\xb1\x65\xef\xcc\xa4\x40\x34\x62\x81\xf2\x2f\x10\xd6\x78\x32\xd8\x97\x15\xfb\x92\x71\x31\x9f\x53\xee\x32\x33\x9a\x76\xff\xa9\x49\x9b\x9f\x7f\xa1\x3e\xdf\x44\x73\x93\x1a\x7d\x25\xf1\xc8\x51\xe1\x31\xb1\x55\x0d\xbf\xa9\xd7\xfe\x56\x2d\xbe\xa7\x03\x33\xcd\xa2\xb8\x56\xdf\x1d\x54\xcb\x68\x16\x09\x62\xc6\xca\xee\x5f\xdf\x6e\xeb\xa0\x57\xa1\xba\x3e\xd7\x32\x8e\x96\xe3\x73\x49\x27\xbb\x6a\x45\x64\xa4\x3c\xed\x78\x19\x18\xf2\xfd\x3b\x2d\x1d\xec\x9a\x29\xf5\x9c\x1c\x65\x0b\x8c\x10\xa5\x79\x82\x82\x51\x08\x32\x68\x60\xf4\xa3\x52\xcb\xea\xe8\x2d\xae\x26\xf6\x6f\xf2\xd0\x08\xaa\xa2\x98\x91\x2e\xcd\xa7\x45\xd2\xfe\x58\x92\xad\x7f\x8e\x8b\x9c\x93\x5f\xf9\x3f\xd1\x56\x96\x4f\xb6\xfe\x29\x90\xd3\xab\x45\xc6\x6f\x5f\xa7\xff\xdc\xe2\xc5\x16\x44\x65\x02\x22\x7b\x8b\x93\xf9\x62\x96\x71\xd2\x6d\xa7\x88\x27\x6d\xf1\xae\x2d\x55\xb6\xdf\xe3\xbf\x01\x24\xff\xdc\xa0\xba\xd5\x8a\xdb\x52\x46\xee\x52\x1a\xb9\x62\x9c\xcd\x7c\x9e\xd4\x48\x9d\x28\xee\x1d\xd0\x57\xfa\xde\x39\xa0\x5a\xd3\x56\xe0\x7c\x48\x47\x28\xc3\x7c\x58\xec\xf6\x47\xc0\x67\x0b\x7a\x50\x62\xcf\x42\x85\x88\x96\x2d\x0f\xb3\x11\x2e\x57\x35\xf1\x6e\xea\x3d\x4a\x61\x8c\x26\x38\x38\xb4\x24\x91\xe7\x62\x46\x79\xd2\x16\x0b\x50\xf8\x8f\x19\x2e\x86\xbd\x91\x34\x43\x82\x70\x5c\x7d\xc1\xf0\x83\x51\x94\xbd\xb3\xb4\x01\xb4\x5c\x3a\x8c\x71\x76\xc8\x65\x19\x29\x07\x1a\xe4\xc3\x6c\x74\xc8\xb1\xf8\x33\x10\x54\x58\x66\xee\x90\xf6\x7f\xb6\xd3\x4e\x67\x29\xbf\x8b\x3f\x83\x84\x3b\x63\xb5\x6d\xa0\x12\xd3\x14\x09\xaa\x71\xb2\x1c\x93\x24\x40\x9a\x66\x21\x24\x17\xb3\x4a\x4d\x94\x2b\x65\xd8\xf2\x72\x23\xe9\x07\x5d\x23\x17\xaf\xc8\xcd\xe5\x97\x1c\x38\x28\x72\xbf\xf5\xb3\xf5\x51\x91\xf1\x38\xbf\x4f\xdc\x90\x1a\x9a\x23\x8c\x39\xb7\x65\x32\x62\xae\x29\xe4\x99\x93\xbd\xfc\x7a\xb3\x9c\x40\x92\x63\xb5\x38\x35\xbe\xa0\x4b\x5c\xc4\xb4\x78\x33\xf5\xda\x59\x8f\x5c\xde\xfd\x66\x15\x68\x8a\xa6\x82\x9a\x80\x2b\x5d\x05\x1a\x49\x4a\xb4\x4c\xd1\x04\x67\x26\x5b\xff\xd4\x8d\x43\x02\xe6\x67\x13\x8f\xe0\x5c\xe0\x89\xa6\x47\xe7\xf8\x56\xd3\x1c\xe8\xce\x21\x6b\x1e\x70\x48\xc4\xcd\xb5\xc8\x77\xbb\x9f\xa2\x1b\x7c\x17\x82\xe7\x03\xd0\x21\x52\x9d\x2b\xdf\xdd\x49\x5a\xda\xbe\x48\x53\xf4\x10\x90\x62\x37\xfa\x15\x6c\xdf\x9d\x2b\xd7\xd4\x67\xf9\x5a\x4b\x90\x95\x80\xf3\x2e\x0c\xb2\xa2\x65\xca\x63\x57\xa6\x0c\xbb\x77\x8f\xc7\xc3\xab\x11\x3a\xc6\xb3\xe1\xbd\x38\xee\x1f\xe4\xb0\xd5\x71\xbf\x4f\x5b\xd7\xc3\xe3\x11\xfe\xb0\xa2\xd3\xe4\xc6\xe4\x16\xbb\xc0\xbd\x83\x8b\x57\x7a\xba\x07\x17\xba\xb1\x5f\xf1\xc5\x4e\x1f\x1d\xe1\x9b\xe1\x7c\x78\x31\xd2\x71\x5d\xb6\x31\x3e\xea\x74\xe4\x1c\x92\x5f\xd1\x51\xba\x92\xbf\x9d\x01\x5e\x6b\x07\x20\xeb\x0e\x04\xf7\xcc\xc2\xdc\xe2\x7f\xd9\xc0\x1a\xdc\xb1\x3d\xb1\x71\xd6\x37\x33\x48\x70\x73\x72\xd8\xf0\xc7\x4e\x9e\x09\xe7\x10\x3f\xdb\xcc\xd9\xcb\x73\xc7\x92\xb7\x88\x4e\x7e\x00\xd9\x4d\xac\x74\x49\x9f\xdb\xbc\x1a\xd8\x1e\x10\xae\x89\x70\xea\xe8\xce\xff\x92\x64\x76\xa0\x9e\x1f\x4c\x13\x29\xa7\x7d\xec\x4e\x69\xe9\x9b\xb9\x3e\x7b\x1a\xf3\xb3\x83\x62\x6e\xa9\xb5\x61\x72\x3c\xfa\xd7\x09\x80\xae\xe5\x95\x36\xec\x7f\xae\x62\x55\x2b\xd3\x27\x3d\xb2\x13\x4e\xe6\x32\x64\x33\xa2\x4a\x91\xe1\x3a\x18\x01\x2c\xfc\x21\x26\x8f\x54\x84\xa7\xbe\xfa\x44\xdf\x17\xf4\x7a\x46\xf3\x1b\xcc\x21\x5d\xa3\x0c\xf2\xf9\x07\x68\xe1\xaf\x4d\x46\x50\xaa\xc1\x45\xc6\x48\x2e\xe3\x89\xaa\x36\xa7\x94\x95\x26\x92\xff\x2c\x2b\x39\x66\x8d\x09\x9e\xa0\x01\x25\xd4\xa9\x33\xfc\xb7\xbd\xc8\x9c\xe7\x3a\x84\x69\x4d\x71\x28\x20\x4a\x8a\xee\x9b\x0a\x8a\xef\x6e\xb4\x33\x37\xae\xe9\x5f\x61\x0d\xfe\x7b\x6d\x0c\x99\xea\x0a\xc8\xf0\x1a\xff\xb7\x27\x9d\xab\x82\xeb\xe6\x9c\xdb\xbc\xc8\x66\x3e\xff\x15\x72\xac\xc4\x1f\x22\x38\x50\x12\x3b\x06\x25\x00\xd1\x5d\x49\x11\x81\x0e\x71\x03\x8c\xab\x05\x2c\xb0\x2f\x8b\xe5\x26\x71\xbd\x2d\xb3\x56\x81\xb3\x95\x15\x89\xfe\xdd\xcf\x76\x50\x1d\x0e\x0b\x86\x93\xfb\xc3\xa1\x98\xe9\xe1\x08\xa6\x3e\x18\x8e\x4e\x51\x02\x3e\xf3\x90\xb1\xc5\xcd\x3b\x50\xb4\x28\x2e\x9c\xb1\x10\xe0\x05\x04\xed\x48\xa7\xc9\xb6\xc9\xd5\x0c\x41\x7b\xb6\x63\x07\x5d\x9b\x19\xa9\xd1\x9e\x5d\x24\x1c\xb5\xcb\xbb\x9b\x76\x0a\x09\x34\xf5\x62\x1c\x4d\x7e\xc9\xc6\x24\xe7\x10\x37\xa1\x7d\x0d\x4b\x03\x19\x38\xda\xaf\xc6\x94\x8d\x67\xe4\xf5\xab\x3f\xab\x1f\xed\x74\x35\xce\xf8\xf8\x56\xa0\x08\x93\x6e\x52\x8d\x43\xb0\xef\x4c\xba\x97\x8a\xc9\x6b\xe7\xd3\xc7\x47\x26\x17\x08\x26\x69\x65\xe4\x1f\xcf\x4f\x44\x05\xb2\x5a\x81\x2d\x84\x9d\x8d\x46\x3d\xde\xd8\x93\xf6\x84\xde\xb5\xa3\xe1\x34\x1c\x2e\xe8\xf7\x0a\x40\x62\xaf\x1e\xb9\x42\x62\x65\xc2\x28\xae\x82\xe3\x2a\x4c\x04\x1d\x41\xc0\x16\x8f\x8f\x3c\x9c\x5f\x7e\x48\x1a\x5a\x73\x63\x45\x42\x73\x83\x1a\xcd\x11\x28\x4e\xde\x7d\x38\x3f\x3e\xf9\xfe\xec\xc3\x77\xff\x75\xfc\xe6\x12\x74\x44\xe2\x06\x3d\xcb\xe6\xa4\xcb\x8b\x8f\x8b\x05\x61\x6f\xb2\x52\x5c\x50\x0a\xdc\xda\xaf\xca\xbb\x9b\xd7\xaf\x44\x47\xf4\x26\x97\x34\xc7\xeb\xf6\x0e\xdb\x69\xbf\xfa\xb3\xff\xf2\xd5\x9f\x45\xc9\x76\x8b\x4b\x33\x4d\x31\x40\x5c\xc0\x8d\xe8\xec\x9c\xfd\xb9\x32\x4e\x2a\x99\xea\x44\xb5\x5a\x6d\x25\x0b\x5a\x59\x55\x36\xd0\xb7\x65\xb0\x25\x11\xc5\x20\x86\x96\x69\x9e\x8b\x9a\x33\xcd\xc3\x03\x0d\xe2\x8e\x02\x89\x53\xec\xc4\x8c\xf9\x6b\xc2\x41\x78\xb0\x4a\x28\x12\xd0\xb6\x4a\xb8\xa0\xb5\x35\x67\xcd\x1c\x25\x88\xe2\xb8\x0d\x24\x75\x3a\x31\xea\x21\x0a\x9c\x70\xa2\xed\xdc\xdb\x30\x99\xb6\xc9\xc1\x54\x7f\xce\x4a\x32\x2e\xf2\x49\x3b\x45\x7b\x18\x63\x5e\x3d\x43\xa9\x56\xda\x68\x53\xd1\xde\x2a\x21\xe9\xe1\xd7\xb8\x10\x9a\xa0\xa4\x69\x77\x59\x92\x19\x29\x4b\xe5\x1c\x86\x4d\x80\x2e\xe5\x2c\xd6\x6e\x7f\x61\xe4\xcb\xe6\xb3\x22\xd1\x16\x1c\x94\x3c\x8d\x10\x79\x6b\xce\x86\xb6\x85\xc2\xdb\x7d\x54\x60\x76\xc8\xc0\x2f\x90\x16\xcb\x52\x81\xc2\x80\xab\x0c\xb6\x74\x36\x69\x15\x9d\x4e\xb1\x45\x95\x75\x65\x31\xdd\xba\x24\xbf\x4a\x6d\xe3\x76\x2f\x48\x89\x25\x35\x8f\xfe\x52\x20\x96\x6a\xaf\xfa\x2f\x1b\xa1\x36\x7a\xef\x74\x7c\xcc\x1e\xe9\x23\x45\x99\x02\xbd\x81\x24\x4b\x18\xc1\xed\x5b\xce\x17\x83\x3f\xff\xf9\xfe\xfe\xbe\x7b\xbf\xdf\x2d\xd8\xcd\x9f\xf7\x7a\xbd\x9e\x38\x56\xed\x56\x18\x71\x9c\xa9\xe4\x1b\x04\x7f\xf6\x0e\xf3\xa0\x8f\x26\xa4\x1c\x0f\xfa\x88\x53\x3e\x23\x83\xfe\x0a\x51\x12\x70\x1c\x60\xc0\x77\x30\x6c\x5f\xb7\x51\xfb\x9a\xde\x88\xff\x67\xc5\xf8\xd3\xbf\x96\x05\x27\xe2\xa1\x98\x3c\x88\x3f\xac\x8d\xda\x63\xa0\xf3\xc4\x8f\x62\x22\xbe\x4d\x04\xbc\x0a\x70\x47\xed\xc9\x4c\xfc\xc7\x21\x5b\x86\x4a\x99\x21\x3e\xde\xf6\xc5\x7f\x7b\xe2\xbf\x7d\xf1\xdf\x13\xf1\xdf\x53\xf1\xdf\x33\xf1\x1f\xc9\xa0\x90\x68\x92\x8a\x7f\x73\xd1\xfd\x8c\xc2\x7f\xa0\x2f\x35\x02\xd4\xf6\x9c\xf0\xac\x8d\xda\x79\x01\x23\x29\x44\x77\x0b\xf1\x8f\x89\x81\xb0\xe5\xb5\x18\x64\x29\xfe\xcd\xb3\x99\xf8\x58\x2e\x32\x51\xad\xe4\xac\x80\x66\x4a\xce\xe8\x27\x51\xb6\x5c\x5e\xc3\xff\xa2\x36\x88\xa5\xc5\x5f\x31\xf0\xa5\xf8\x27\xaa\xde\x65\xac\x3d\x8a\xa7\x42\xd0\x9b\x0a\x61\xbf\xfb\x9a\xaa\x2d\x08\xfe\xf3\xf0\x1f\x7c\xf7\x1f\x6c\xeb\x1f\xbf\x1e\xf5\xfe\xb1\xec\x3f\x7b\x21\xfe\x7f\xd1\x3b\xfe\xc7\x52\xec\xda\x2e\xfc\x39\x12\xff\xef\xbd\x80\xff\x5f\xc2\xff\xef\xc4\xff\x4f\xdf\xfd\x63\xb9\xdf\xeb\xf5\xfe\xb1\x7c\x77\xfc\xee\xdd\xe8\xcf\x28\x23\x6e\x26\x74\x63\x52\x39\x29\xc6\x70\x75\x49\xf3\x68\xfd\x24\xed\xaf\x08\x0a\xac\xb4\xab\x6c\x96\xae\xa0\x09\x42\xb0\x42\xfa\x28\xe1\xd0\xba\xf3\x35\x5b\x35\x84\x15\x2a\x3e\xc1\x4b\xff\xb3\xd7\x71\x14\x4f\xae\x50\xf0\x3e\x96\x91\x01\x41\x16\x6e\x7e\x08\x6e\x82\xee\xa5\x8a\x05\xd1\xf0\xf8\x08\x74\x8c\xb8\x03\x21\x38\xe4\x90\xeb\xab\x70\x94\x0e\x20\x7e\xbb\xfd\x2a\xd8\x7b\xd6\xe9\x6c\x4b\x04\x04\xdb\x58\x9b\x2f\x44\x0e\x6b\x2b\xdb\x6a\xef\x90\x9d\xb6\xc0\x20\x74\x42\xb6\xb2\x7c\xeb\xe2\xa7\xef\xb7\x94\x70\xb0\xed\x27\x25\x8d\x4f\xf5\xec\x22\x61\x04\x11\x5f\x31\x5f\xb3\x2a\x24\x6d\xcc\xd3\x27\x2e\x23\x12\xe0\x2c\xb8\xb8\x78\x03\xc6\x55\xf5\x34\xc6\xf5\x63\xc1\x57\xf0\xbc\xb5\x0a\xf4\xba\xc9\x21\xbd\x12\x5c\x9f\x04\xe5\xe2\xda\xd4\xe6\xa8\x10\x7e\x31\xc0\xbf\xc4\xc1\xbf\x36\x8e\x09\x4f\xc9\xba\xeb\x8f\x59\x22\x5e\xd6\xd6\xde\x1c\xdc\x45\xe1\xa2\x9a\x5a\xb1\xb4\xe9\x46\x05\x33\x29\xd5\x68\x65\x90\x2d\x87\x72\x89\x00\x6f\x2b\x58\x80\x4c\x2c\x40\xb6\x61\x67\x59\xd8\x19\x22\xde\x25\x90\xc9\xe5\x2b\x71\x71\xe8\xd1\x30\x03\x97\xea\x69\x79\x44\x0b\x41\xa5\x4a\xa6\x2b\xb7\xec\x72\x5d\xb2\xc2\x00\xc2\x2e\xfd\xb4\x85\xde\xbe\x6f\xda\x86\xf1\x1d\x57\x62\x95\x83\x8a\x34\x85\x7d\x63\x3c\xc0\xaf\x49\x1a\x1b\x1c\xb6\x78\x36\x92\xe6\xf3\x29\xf3\x92\xe4\x6b\x2d\xb7\x74\xb4\xe3\xbc\xd3\x49\xa4\xeb\x51\x8a\x04\x59\xef\xd6\x3b\xbb\x10\x87\x05\xb1\x74\xe0\xbf\x57\x27\x95\xad\x12\x29\x34\xa9\x64\x15\x61\x26\x83\x56\x8e\x39\x49\x32\x41\x9c\x0a\x1e\x52\xfe\x44\x0c\x5c\xa3\x63\xe9\x48\xf2\x55\x9a\x94\xe4\xf1\x31\x29\x89\x4d\x7d\x38\x23\x5f\x15\x56\xc2\xa1\x09\xcd\x8d\xc1\x91\x63\xc4\x25\x5d\xc2\xd8\x57\xed\x54\xc3\xf2\x42\xa8\xa6\xea\x6a\xe5\xea\xd8\xc4\xab\xc9\x38\xb7\xde\xf7\x44\x6e\xa4\x3a\xa6\x91\xa4\x19\xc6\x4d\xce\xcf\x20\x8a\x98\x7b\x0e\xdd\x7d\x72\x53\xbd\xcc\x24\xa1\x35\x26\xe2\xd7\x98\xa8\x6d\x1a\xab\x59\x4f\x09\x1e\x13\xb5\x5f\x63\x22\x36\xac\xe5\xe5\x82\x99\xca\xda\x13\x82\xcb\xe8\x46\xb6\xe2\xdb\x3b\x91\xd5\x6e\x09\x1e\xb6\x7f\xc9\xee\xb2\x72\xcc\xe8\x82\x0f\x04\xa5\x72\xad\x7f\x8f\xd0\x42\x7c\x3e\x6a\xa3\xf6\x77\x1f\xde\xfe\xdc\x46\xed\xd3\x93\xb3\xbf\xb4\x51\xfb\xe4\xfd\xf7\xe2\xff\x77\xe7\x47\xef\x8f\xc5\xc7\xa3\x0b\xf1\xe7\xdd\x87\xf3\xf7\xed\x11\x9a\x8b\x3a\xc7\xef\xbf\x3b\x7e\xdb\x1e\xa1\x3b\xf1\x70\xcb\xc8\x54\x90\x47\x6c\x2c\x88\xbe\x6c\xfc\xe9\x86\x15\x4b\xe0\x4b\x32\x18\x4c\x7b\x84\x1e\x44\x39\x51\x60\x64\x65\x35\x37\xc4\x3d\x6c\xa0\xbd\x27\x46\x45\xc3\x1d\x8e\xea\xda\x2b\xa8\x2f\x06\xf2\xf8\x78\x43\x92\x85\xb8\x24\xd3\x4e\xe7\x86\x24\x77\x70\x20\x4d\xad\x2b\xaf\xd6\x96\x8d\x6e\x9b\xdc\x90\x64\x2e\xaa\x41\xad\x07\x51\xc8\xa9\x76\xef\x57\x53\x7d\x3f\x3e\xaa\xe6\x9c\xb8\xbe\x24\xb4\xce\xd4\x5e\x85\x72\x80\x86\x49\x01\x42\xe4\x43\x62\x45\x14\xb9\x09\x48\xd9\xa2\x70\x13\x46\xb9\xf0\x81\x49\xd8\x5a\xe0\x7b\x65\xec\x71\x4d\x12\x2a\x98\x8b\xcf\x1e\x73\x31\x2e\x66\xef\x0a\xf6\xf1\xfc\x54\x39\xde\xdc\x90\xe4\x96\xa0\x4c\xf7\xd7\x5e\xe6\x65\x36\x25\x83\xf6\x8e\xd6\xb3\x8a\xb5\x11\xed\x1c\x3a\x9f\x06\x85\x13\x76\x98\x78\x84\x14\x70\xba\x59\x4b\x5d\xa8\x5b\x24\xcd\xc5\xe9\xc6\xed\x05\x2b\x16\x6d\x37\xaa\x05\xef\xf2\xe2\xb4\xb8\xd7\x33\x68\x95\x50\x5c\x90\x60\xb2\x2c\xca\x71\x29\xc9\xab\x8c\x73\x26\x1e\xb9\x26\x70\x64\x01\x95\x84\xa3\x5d\xf2\x87\x19\x01\x4e\xcf\x6f\xf1\xf1\x11\x5c\x8d\xd5\x7a\x09\xee\x1e\x25\x19\xbe\x20\x43\xea\xaf\xdd\x28\xed\x74\xb2\x61\xe1\x57\x1e\x09\x38\x31\x9d\xa7\xe8\xb3\x49\x75\x35\x19\xe4\x48\x20\x9d\x01\x5b\xc1\x15\x7b\x41\xf0\xe7\x93\xb3\x1f\x3f\x5e\x0e\x04\x6b\x34\x1f\x6c\xf7\x50\xb6\x14\xeb\xcc\x98\x60\x90\xb6\x7b\x48\xb0\x1a\x83\xed\xde\x0a\x5d\x1c\x9f\x1e\xbf\xb1\xe5\x56\xe8\xc3\x8f\x97\x27\x1f\xce\x9c\x17\x97\xc7\xff\x7d\x79\x74\x7e\x7c\xe4\xbc\x3a\x3d\xfa\xee\xf8\xd4\x79\x7e\x77\x72\x7c\xfa\xf6\xe2\xd8\x6d\xe6\xf4\xf8\xfb\xe3\xb3\xb7\x6e\xbb\x20\xb5\x71\x5e\x7c\xf7\xf1\xf2\xd2\xed\x68\x65\x4f\xd6\xaf\x24\x14\x8b\xe8\x15\xa3\xf8\xb3\x92\x9c\x0f\x08\x18\x11\x7b\xb6\xc4\x6c\x25\xfd\xb6\x2a\xe4\xb2\x86\xdc\x23\xa0\xe9\x10\x55\x2c\x0c\x56\x80\x02\x26\x3e\x60\xcf\x5a\xe2\xc2\x66\x10\xd3\xc4\x88\x5c\x70\xd0\xd0\x42\x03\x82\x26\x19\x44\x28\x4d\x75\xf4\x52\x87\x84\xb9\x94\x38\x5d\x0c\x2b\x76\x43\x27\x6d\xd8\xa6\xb6\x44\x07\x6d\xbd\xd4\xf0\x9c\x76\x3a\x6d\x50\x36\x80\xa9\xf0\xaa\xd2\xf4\xfb\xe6\xa6\xdb\x72\x23\x95\x29\x75\x5b\x90\x79\x63\x0e\xac\x55\xac\xb1\x5f\x54\x63\xce\xab\x73\x75\x1d\xa9\x09\xdb\xd3\x75\x44\x02\x47\x6e\x35\x6f\xf0\xd9\x7d\x43\x04\x47\x0f\xee\x92\xe2\x17\x80\xe3\xa7\x48\x7e\x6a\xeb\x4d\x4f\x56\xad\x48\xb2\xae\x4f\x12\xff\xff\x58\x7b\xa1\xff\x1b\x69\x2b\x2f\xaf\xbd\x23\x4e\x3e\x11\x17\xad\x46\x90\xdb\x21\x53\x61\xdd\xee\x29\x96\xd1\xe0\xc1\xd6\xc8\xc0\x62\x8b\x74\xaf\xae\xbc\xdb\x9e\x82\xc8\x73\x25\xae\xee\xba\xa8\xd6\xa2\x4f\x92\xa2\xd0\xe0\x1c\x22\xd7\xab\x83\x00\x86\xe7\xa2\x97\x96\xcd\x44\x5d\x21\x10\x68\x3a\xf0\x29\x91\x84\x6a\xc3\x90\x4f\x70\x63\xd7\xa4\x46\xfb\x51\x6e\xc3\x79\x3d\x5d\x65\x4e\xa9\xa6\xac\x72\x8f\xb2\x62\x4e\xac\x73\x7d\xac\xc4\x49\xc6\x1c\xe5\xbf\xd3\xe6\xc8\xdd\xe0\x3a\x8c\xb7\x54\x96\x72\xa4\x96\xdb\x64\x10\x55\x3a\x17\x77\x10\x70\x73\x36\xad\xbe\xbf\xea\x7a\xc5\x5b\xb6\x1f\x75\x23\xf3\x61\xa4\xf5\x11\x76\xc6\x43\x90\x8a\x9d\xaf\xdc\x1a\xc2\x0d\x4a\x9b\xe9\x3e\xcf\x8c\xca\x82\x81\x13\xda\x07\x14\x31\x16\xd8\xd8\x21\x0f\x5b\x13\x2c\x39\x8a\x8c\x33\x1d\x54\x8a\xc6\x16\xcb\x40\x0b\xba\xfc\x1f\x3f\x94\x1e\xd9\x12\xac\x49\x81\x8f\x05\x92\xa6\xf6\x7c\xc8\xc3\x08\x16\x85\x56\x98\x59\xfa\x29\xae\x50\x01\xc9\x2c\xab\xb0\x10\xe6\x91\x73\x8f\xf9\x31\x49\x18\xca\x4d\x47\xea\xd4\x73\xbf\x23\xd9\xa0\xd3\x17\xd5\x2c\xd1\x39\x49\xd1\x9b\xff\x7f\x2d\x7f\x97\xb5\xfc\x91\xa4\xe8\xfd\xff\xf8\x5a\x2a\xf6\xcc\x47\x3c\xea\x16\x47\xf7\xc9\xd7\xa1\x1b\x1b\x9a\x1d\xe5\xf8\x1e\x22\x67\xea\xfc\xf0\x0a\xb9\xe4\x16\x9e\x7e\xf9\xdf\xb1\x06\x06\x27\x6f\xf7\x65\x52\xf8\xca\xa2\x18\x82\x04\x2c\xc8\xbf\x06\x09\x77\x75\x13\x18\x52\xa5\xc9\x05\xb0\x44\x24\xdc\x9c\xae\xb7\x0f\x79\x7c\x34\xf9\x4b\x6c\x92\x42\x9b\xd8\x0b\x44\xcc\x2a\x4b\x61\xbb\x3d\x88\xa5\x24\x91\x65\x6c\x92\x14\x31\xc0\xb7\xb5\x42\x68\x2f\x44\x4d\x39\x2b\x78\xa9\xe5\xd0\x63\x6b\x43\xa5\x0d\x34\x88\xb6\xa0\xd2\x71\x56\x16\xc6\xde\x08\xe7\x2b\xd2\x65\x45\xc1\xc3\x93\xe4\xe7\xec\xec\x59\x0b\x2b\x2f\x5f\xd0\x4e\x3f\x45\xd2\x7c\x12\x33\x30\x9c\xcc\x87\x74\x84\xa7\x2e\xad\x27\x0e\x39\x88\x38\xcc\x7f\x29\x04\x96\x4c\x3e\x97\x64\x36\x1d\xf0\x95\x4c\x4a\x2c\xae\x02\x2f\x57\x61\x90\xc4\xd7\x19\x01\x73\x46\xc0\xc5\x08\x72\xdc\x3b\xc8\x5f\x61\x7e\x90\xef\xec\xa4\x6c\x98\x57\x46\xc0\xc2\x11\xac\x5a\x0d\x82\x79\x31\xba\x08\xac\x08\x5c\x34\x9b\x7a\xf2\x69\x58\xf8\x61\x6f\xa4\x16\x5a\x05\xab\xb9\x20\xb3\x69\x9d\x61\xc6\x0d\xe1\x49\x2f\xd5\x05\xc1\xb4\xac\x56\x58\x28\xed\x0f\x55\x59\xb0\x1f\xaf\x83\x60\x59\xd2\x0c\x0d\x63\x3c\x95\xe0\xc4\x55\x6d\x63\x43\x57\x37\x2e\x03\x22\xaa\x82\xb5\x48\x6b\xb0\x5c\x51\x25\x44\x95\x6b\x9a\x4f\x62\xb6\x48\xa5\x18\x19\x90\x83\xdc\x58\xee\x55\x29\x76\x51\xaa\x87\x88\x2d\x15\x2e\x4c\x6d\x7b\xe1\xb2\xd4\x16\x8c\xac\x00\x71\x32\xdf\xaa\x34\xbf\xba\x74\x6c\xfa\xc4\xda\x02\xe9\x6f\xa6\xbc\x63\xb8\x58\xad\xe0\x9e\x48\xbd\xbe\xd1\x0a\xfe\x02\x3b\xd5\x40\xc0\x7c\x4b\x67\x93\x48\x59\x09\xe1\x16\x1c\x75\x96\xde\x0a\x36\x08\x70\x41\x88\x09\xd2\x4a\xa8\x25\x02\x9c\x27\x79\x8d\x9d\xc6\x95\xce\xdc\xea\x78\xce\xb3\xfc\x86\x28\x45\xcf\x77\x1f\xbf\x1f\x6c\x8d\xa5\xb6\xe7\x86\xf0\xad\x3f\x48\x4d\xcf\x94\x15\xf3\x2d\xb0\x15\x3d\xd8\x92\xf5\xb1\x8a\xed\xea\xb5\x19\x39\x59\x64\x24\x06\x55\xbd\x02\xfe\xaf\x0e\xcb\x1b\x0f\xb6\xa6\x64\x72\xf3\xde\x4a\x2e\xe6\xac\x0e\x53\x1b\x63\x74\x19\x11\x70\xa2\x23\x5b\x4a\x4b\x7c\xeb\x0b\x5d\x29\xe0\xf8\x46\x07\x25\xfc\xa8\x82\xf5\x2d\xf9\xe5\x6c\x01\x29\xac\xb7\xd9\xa7\x2a\x5f\x2a\x4d\xca\xfb\x33\x56\x43\x7d\xa9\xd4\x98\x18\x87\xfc\x75\xce\xdd\xc6\xe7\x25\x76\x8a\x2b\x43\x55\x81\x46\xd2\xe8\x78\x4d\x1a\x7d\xe4\x78\x30\xc4\x9a\xad\xcc\xc7\x6f\x36\x98\x94\xdb\x6c\x4d\x80\xd2\x28\x06\xaa\xdb\x51\xbf\xb3\x3a\xc8\x88\xf5\xea\xef\x68\x63\xa7\xc1\xe6\xd7\xf4\x19\x07\xa5\x60\x1d\x55\x18\x85\x2a\x62\x73\x36\x59\xb7\x0f\x98\x0a\x1c\x90\xe2\x41\xce\xe2\xbb\xaa\x7d\x76\x82\xfd\x54\x31\xd0\x48\x24\x06\x1a\x64\xd9\x86\x30\x68\xd6\x67\x2a\x4f\x57\xd6\xa5\x23\xbe\xcf\x3a\x90\x67\xb0\xc3\x28\xc3\xbd\x83\xec\x15\xd5\x1d\x65\xba\xa3\x12\xd3\x61\x36\x6a\x15\xc3\x6c\xe4\x38\xbe\x94\xb6\x23\xe5\xbb\xee\xac\x04\x52\x49\x1f\x74\x5b\xb3\x9d\x9d\x74\x39\x9c\x8d\x64\x99\xe2\xc1\x71\x3c\x19\xe3\x46\x08\x40\xd3\x9a\xef\x7a\x53\xd1\x04\xf7\x0e\x26\xd6\x94\x7d\xa2\x87\x7d\x8b\xa7\xc3\xc9\xa8\x35\x1e\x4e\x46\x5d\x2a\x2b\x25\xb7\x76\xd0\x0b\xbc\x09\x14\xa0\x79\x63\xb1\x12\xdd\xe1\xde\xc1\xdd\x2b\x1d\xdd\xe5\xe0\x4e\xf7\xfe\x80\xe7\xc3\xbb\x51\x6b\x31\xbc\x1b\x69\x3f\xab\x87\x74\xa5\xc3\xec\x35\xd8\x55\x68\x2c\x21\x03\x6b\x3b\x51\x72\x19\x26\x95\xd0\xb9\x12\x2f\x5f\x71\x96\xe5\x65\xa6\xf4\x76\x26\xb8\x62\xd8\x82\xa6\x84\xc3\x46\x94\xd9\x32\x8b\xa1\x26\x56\x93\x19\xa1\x2e\x77\xda\x5c\xe5\x4e\xbb\x21\xfc\x28\xec\xbe\xe6\x8a\x0f\x87\xa9\xaa\xbf\xfd\xf0\xbe\xae\x46\x38\x01\x51\x03\x14\xe5\x15\xd3\x11\x7f\x65\xc8\xfd\xd6\x99\x60\x64\x9a\xd1\xad\x53\xc5\x39\x57\x92\x8c\x62\xcd\x28\x35\xa8\xfa\x51\xfb\xd7\xc9\xaa\x5f\x80\x36\xdd\x86\xea\xc2\x41\x87\xcd\xae\xc7\x8b\xb1\x56\x83\xe8\xbc\xce\x34\x6b\x31\x5e\x30\x4b\x55\x4e\x6d\x7c\x15\xef\x39\x38\xcf\xa9\x59\x07\xb9\xda\x75\x13\x02\xff\x5b\xae\xf4\x5d\x11\xaa\x5c\x05\xe3\xa7\x80\x22\xaa\x41\xff\x55\x3b\xc2\x35\x26\x07\x75\xfa\xaf\x64\x08\x75\x41\xce\x1d\xa8\x4d\xf5\x49\xba\xc7\xf9\x1d\x65\x45\x0e\x1a\xed\x53\x49\x05\xbd\x6b\xd2\x91\xd3\x69\xb2\x6d\xe4\xdd\xf7\x34\x9f\x14\xf7\x46\x25\xde\xe2\xf8\x73\x78\x18\x40\xd2\x3f\x91\x21\x0b\x03\xa8\x97\x29\xfc\x41\x09\x60\x7d\x5a\xbe\x2a\x37\xfc\xa9\xd4\x29\x4b\xf7\x62\x77\x46\xef\xe4\x8c\x7e\x5b\xc3\x81\x83\x57\xd9\xe7\x20\x6b\xf3\x6e\x5f\x25\x13\x12\xaf\x8a\x4e\x27\x29\xe0\x95\xc4\xa6\x3c\x1b\x7f\xd2\xbc\xfa\x2d\xc9\x16\x1a\x35\x2d\x58\x71\xc3\xb2\xb9\x66\xd1\xc9\xaf\x9c\xb0\xdc\x04\x94\x5d\x8c\xb1\x0a\xa3\xcb\x32\x5c\x28\xea\x67\xc9\x18\x04\xc9\xb8\xa0\xbf\x11\xdc\x6b\xf4\x45\xd0\x0e\x45\x15\x34\xe1\x04\x9d\x50\xcd\xbb\x03\x75\x3e\xc8\xe7\xe9\xc2\xfb\x3c\xd5\x57\x09\x3c\x95\x8b\xdd\xbe\x20\x00\x16\xc5\xa2\xa9\xb3\xd2\xab\x34\x5d\xec\xf6\xcd\xcc\x9c\xf7\x92\x53\xae\xef\x4c\x7c\xef\x03\xbd\x01\xd1\x99\xe6\xd9\x6c\xb6\xf1\x0c\xd5\x20\x1b\x2a\xf9\x63\x81\xb2\x34\x91\x2c\x52\xc1\x8b\x3a\x3e\x7c\x31\xde\x21\xbb\xd5\xbd\x69\xe9\x2d\x04\x76\x5c\xc0\x69\x15\xb3\xe8\x0e\x17\x63\xb3\xe1\x06\x44\xc4\x5c\xb3\xc9\x84\x29\xfa\x4a\xee\xea\xe5\xd7\x8d\x42\xf4\x63\x1b\xa9\xcc\x5b\x77\xcb\x32\x51\x08\x2c\x38\x78\xc6\x2b\xc6\x89\x0e\x62\x13\x03\xc6\x2e\x04\xb7\xe8\x34\xd9\x05\xa1\x58\xea\xd8\x17\xb4\xee\x9c\xbc\xfb\xb2\x60\xb7\x80\xf0\x2e\x09\x49\x41\xfc\x83\x9c\x18\xc1\x16\xac\x99\xc7\x16\x2e\xc6\x3b\xe2\x44\xd8\x9a\x62\x94\xda\xeb\xf9\xc3\x32\xb4\x4e\x71\x18\xfc\x25\x84\x84\xcd\x0d\x9e\xe7\xfe\xdb\x8a\x9c\x95\x96\xef\xb3\xf1\x2d\xcd\xc9\xa1\xd7\x84\x7a\x99\x90\x74\xe0\xbd\xbf\x78\x28\x01\xff\x84\x8d\xab\xf2\xde\x56\xa9\xec\x84\x04\xd4\xc2\x2a\x41\xe1\xd3\xe7\x03\x6f\x9e\xd6\x01\x50\xa6\x09\x7c\xfa\xc2\xff\xae\x4e\x98\xf9\xfc\xb2\x52\xdd\x02\xb7\x2e\xf4\xac\x17\xb6\x51\x2d\xf3\xd4\x2f\x23\xe7\xd4\x2d\x16\x7d\xf5\xfd\xc9\xcb\xea\xf7\xc8\x41\xd1\xad\xed\x79\xa5\xc1\x79\xcd\x6d\x6d\xef\x89\xf7\x5d\xa1\x6b\xfd\xf1\x69\xe4\xe3\xa5\x6e\x60\xe5\xae\xb2\x5a\xfd\x60\x13\x33\xf3\x3d\xe1\x88\x20\xb5\xde\x8a\x0e\xfd\x6e\x9d\x7d\x2f\x38\x78\x45\x5d\x26\x37\xf4\xd2\x82\x6e\x3e\x7e\x7d\x37\x9b\xfb\x78\xa1\x1f\x9a\x6e\x29\x2d\x25\x76\x93\x51\x38\xa4\x72\x61\xa9\x54\xfb\x72\x0c\x2e\x82\x17\x70\x57\x41\x52\xad\x2e\xfc\xf6\xc3\xb6\xd5\x7c\x06\x73\xf7\x9a\x6f\x0b\x27\xb7\x88\x18\x99\xba\xeb\xf2\x3b\x7d\x23\x4e\x8a\xb9\xf4\xb2\x0f\x49\xe8\x24\xad\xa1\xe0\x89\xa2\x98\x21\x33\xfd\xb4\x60\x27\x32\x69\x91\x0c\xb1\x11\xd5\xb5\x8b\x51\x89\xb6\xc4\x3b\xa3\x08\xe1\x9e\xb9\x9a\xe5\x01\x2a\xa1\xff\x10\x5b\x81\xf1\x69\xb9\x9c\x57\x6d\xee\xac\x80\xdc\x74\x50\x71\x6a\xb3\x96\x10\x91\xc6\xe5\x3b\x78\xba\x64\xd9\xf8\x13\x11\xa4\x13\xca\x57\x2d\x6d\xad\x12\x51\x91\x54\x23\x69\xd5\x8a\x14\x9d\x32\x2b\x94\xcb\xad\xaa\x2b\x6c\xf7\x51\xa3\x64\x51\x65\x51\x2c\xea\x8c\xd5\x1d\xa0\x51\xde\xbe\x95\xd7\x6e\x43\xfe\xdc\x6b\xc5\xcc\xe1\x72\x40\x40\x49\x25\xf0\x54\x9b\x27\x55\x5f\xa2\x24\x90\xf4\xd9\xf5\xd7\xb4\xf9\xb7\xba\x36\xa1\xe4\x29\x2d\xeb\xad\x7a\xa3\xed\x7d\xef\xb7\x87\x48\xd0\xa2\x2a\x1b\x42\xa8\xaf\xf5\xd8\xee\xa7\xee\xc5\x59\xdd\x92\x96\x6f\xc2\x07\xda\x9a\x30\xf4\x25\x49\x11\x7f\x7c\x04\xc6\x46\x9e\x2a\xe9\xfc\x9a\x90\x54\xed\xd0\xd5\x55\xb1\x20\xb9\x06\xc1\xb0\x27\x2d\x39\x22\x6a\xfb\x1b\x97\xf6\x5a\x36\xd2\x05\xff\x45\xfa\x1b\x71\x73\x86\x5d\x5d\x41\x7e\xa0\xda\x7e\x04\xc8\x88\x3e\x9c\xe1\xb8\xdd\xc8\x4f\xb6\x89\xf0\x9b\x93\xca\xaa\x8e\x32\x92\x2d\x5b\xdf\x80\x56\xdd\xe1\x10\x44\xb9\x1d\x4a\xac\x55\xdf\x0c\x7a\x1e\xba\x1d\x20\x0f\x96\x44\x53\x6e\x5e\xa5\xba\xf1\x39\x5a\xd9\x70\x44\x8a\x69\xbc\xf2\xd2\x33\x09\x9c\x83\xbe\x18\xb9\x8b\x0d\x35\x52\x1c\x23\x13\x74\x51\x33\x53\x61\xc8\xe5\xec\xa8\x40\xc3\xb9\x93\x12\x0a\x16\xa6\x66\x3e\x86\xe8\x12\x8b\x52\x31\x0a\x96\x17\x97\x67\x17\x9c\x7b\x59\xa3\xea\xe0\xea\x9e\xce\x66\x6f\xbc\xec\x52\x48\x13\x31\xd5\x37\x76\x72\xe6\xc8\x79\x69\xb6\xaa\x68\xdb\xd7\x76\x3a\x93\xbf\xba\xaa\xa6\xf8\x92\x95\xe4\x2a\xac\x6f\xbb\xb2\xb8\x44\xe7\xb2\x92\x17\xc5\xbf\xc4\x01\x6d\xd5\xe0\x11\xad\xc0\x0e\x13\x85\x55\xe9\x76\x13\x61\xaa\xba\x2e\x7a\x0d\x1a\x36\xcb\x43\xdd\x3a\xb0\xc2\x1f\x12\x63\xc5\xe4\x81\x4c\x95\x79\xf1\x28\x02\x2b\x0a\xce\xbd\xcd\xa8\xdb\xda\xa0\xb2\xc6\x02\x02\x5b\x4d\x26\x0e\x1e\xab\x76\xab\x91\x4d\x05\xdf\xe9\xfa\x0e\xb6\xab\x3d\xbc\xba\x91\x2a\x76\x94\x18\xcf\xbc\x6f\x74\x0e\xa9\xb4\xa2\x5c\x43\x4c\x1b\x1f\x36\xc0\x23\xba\x11\x1f\x49\xc9\x26\xc2\x03\x50\x81\x00\x5d\xd9\xcf\xc1\x26\xaa\xda\x04\x88\xf5\x18\xcc\x1b\xb6\x82\x7c\x37\x71\x62\xaa\xe0\xbd\xa6\x2d\x07\x87\x4d\x8a\xb9\xc6\x5f\xc6\xe0\x06\x87\xe7\x1e\xfc\x87\x2a\x7e\x34\xae\x0a\xde\x41\x1c\x0c\x51\x41\x2a\x52\x77\x04\x6b\x3c\x75\xe6\x11\x3f\x54\x73\x11\x57\xb1\x90\x5c\x62\xdd\xb6\x4e\xf7\x1f\xb5\x01\x70\xdc\x89\xe8\x34\xf1\x68\xca\xbf\xfa\xfd\x70\xe4\xf8\x5d\x85\x7e\x6d\x5f\x3a\x40\xe6\x7a\x5c\xff\x77\xd0\x91\xbb\x5d\x8e\xe7\x99\xb7\x65\xe0\x35\xbd\x7e\xc1\xac\xbf\x5b\xa4\x0f\x77\x03\x89\x03\x5a\xca\xb4\xb3\xd2\x85\x03\x15\x10\xb0\x97\x4c\xde\x14\x39\x57\x57\xaf\x0f\x77\xea\xd0\xf1\x6a\xab\x4d\xb0\xb6\xcc\xab\xed\x36\x80\x75\x2a\x2f\x75\xaf\xf9\x86\xcd\xf6\xd6\x55\x97\xfb\x92\xa1\x57\x80\x34\xd2\xae\xc6\x13\x12\x84\xc2\x9d\xad\xe9\x4b\xde\x3e\xfe\xdc\x6b\x37\xd7\x85\x00\x85\x1b\xc3\x75\x5b\x5b\x57\x21\x01\x3b\xc3\xb5\x8e\x6e\xf5\x08\xc5\x3a\xbd\x79\x00\x1a\x6b\xf1\x1b\xd0\x8a\xed\x65\x23\xac\xd2\xe8\x49\x65\xce\x88\xef\x50\x15\xd2\x5d\xc8\x25\x0c\x1c\x83\xb4\xe8\x85\xeb\xd4\x53\x66\x05\x79\x24\xb3\x5e\x7c\x28\x81\xad\xb7\xed\x36\x12\xfe\x3a\xe6\x75\x67\x15\xa4\xde\xf0\x95\x6e\x94\xe4\x77\x9e\xf2\x01\xc2\x3a\xb8\x2e\xf8\x90\x71\x41\xdb\x63\xea\x2a\x29\x2a\x1a\xb5\x0d\x3a\x91\x5d\x93\xa6\x21\xc2\x29\xea\xcd\x5e\xad\x90\x6c\xc7\xd9\xed\x2f\x6e\xcb\xa9\x6b\xda\xbb\xcd\x4a\x20\x9c\xca\xc6\xd6\x1c\x36\xa5\xa4\xbf\x91\xd7\x3d\x57\x11\x72\x46\xee\xd5\x7d\xfb\xdd\x92\xce\x26\x84\xe1\x1f\xa4\xf2\xe0\xa7\x75\xc2\x1f\x29\x1b\xf0\x83\x2a\xf9\x19\xe2\x9c\xc7\x89\x25\x71\x4a\x2f\x67\x33\x78\xf6\x37\xcb\xff\x27\xa1\x42\xcb\x13\xe1\xba\x2d\x83\x97\x4b\xa7\xa3\x75\xee\xa9\x8d\xcf\xd3\x3b\xe0\x56\x15\xcf\x77\x76\x52\x32\xe4\x8e\x56\x7b\x15\xca\x3a\x1a\x0c\xc7\x40\x04\xb0\x69\x8c\x27\x37\x04\xd0\xa6\xf1\x9e\x9c\x30\x41\x2b\x10\x17\xc7\x89\xaf\x08\xaa\xd2\xec\x90\x5a\xd6\x9d\x1d\x10\xd9\x37\x11\x5e\xaa\xe4\xee\xae\x32\x97\xa8\xa1\x16\x81\xa9\x77\xca\x6b\x9f\x02\x98\x9d\x4e\x87\xa8\x40\x80\xdc\x6f\x7d\x47\x2c\x7f\x2e\x01\x81\xdc\x6f\x7d\x24\x12\x6b\xf2\x46\xea\xf6\x0b\x7a\x22\x6e\x0f\x52\x9a\xee\x13\xd3\x35\x46\x1f\x1a\x0c\x2b\x6f\x1e\x1f\x3d\x0b\x20\xf5\xd6\xb5\x0e\xd1\x92\x01\xaf\x65\xed\x5e\x62\x46\x26\x20\xb0\x42\xd0\x28\x69\xe7\xbf\xbe\xd5\x0e\xf9\x0b\xe2\xae\x44\x0e\x0e\xa9\x7e\x76\x42\xc1\xa2\xbf\xcb\xbf\x60\x34\xfc\x13\x49\xd1\xdf\xfe\x2f\x8e\x96\x91\x32\x16\x6d\x34\x7e\xca\x21\x3b\x73\x70\xca\x23\x49\x07\x89\xab\xe8\xe6\x43\x36\xd2\xcc\xab\x9a\x68\xab\x72\x60\xbf\x1e\x85\xa1\xdc\x2c\xdb\xf7\x0d\x22\xed\x28\xf6\x84\xd8\xb5\x20\xa6\xe3\xa8\xf9\xf3\x17\x22\x4a\xbf\xba\x8e\x63\x02\xc8\x22\x16\xcb\x84\x38\x28\x31\xfd\xb7\x60\x45\x3b\x96\x5b\x92\x4d\x40\xd8\xf6\x45\x08\xd2\xd6\xe7\x19\x9d\x25\xe9\x26\xc8\x52\xa6\xee\xaf\xc3\x83\x0d\x98\x2f\xf8\x18\xa2\x2b\xf9\xb9\x0e\xe7\xc8\xaf\x55\x8c\x21\xde\xc3\xe5\x2b\x76\xf2\xe7\x46\x48\xb1\xd6\xf8\x9d\x4e\x42\x00\x8b\x16\x52\x23\xe1\xe8\xe8\xa5\xb0\x75\x38\x52\xd8\xd0\x4b\xf9\xfa\x4b\xa9\x20\xa6\x46\xfa\x0e\xe6\xb6\x76\x04\xae\xf3\xa2\x34\xcd\x6d\xe7\xcb\xf9\x35\x61\xd6\xd4\x9f\x77\x3a\x95\x77\xec\xd0\xf6\xac\x2c\x78\x21\xe4\x41\xac\xb2\x95\x56\x55\x2a\xbd\x63\xc5\x3c\xe1\x4a\x37\x29\xdf\x8f\x67\x45\x6e\xcc\x81\x7f\x29\x9d\xc6\x25\xc9\x28\x1e\x63\x2a\x50\x8b\x12\x86\x23\x94\x63\x72\x90\xbf\x52\x06\xf6\x8e\x2e\xfd\x86\xf0\x24\x4f\xad\xba\x04\xc4\x79\xc5\x22\x4a\xf2\xaa\xe1\x14\x8b\x07\x13\x1e\xe2\x9e\xd1\x8a\x35\x91\xe7\x73\x6a\x10\x98\x72\x92\xb0\x2e\xe4\x5a\xb9\xbc\xdd\x6b\x29\x7d\x2a\x97\xaa\xd4\xf6\x75\x51\xcc\x48\x96\xb7\x07\xf0\x64\x03\xff\x0c\x4c\x05\xf8\xa0\x16\x56\xeb\x18\xc9\x1f\xfb\x18\xf7\x3a\x9d\xed\xe4\x7d\xc6\x6f\xbb\xd9\x75\x99\x90\xf4\xf5\xde\xb3\x17\x4f\xf6\x9f\x3e\x79\xfa\x34\x6d\xa9\x10\xf4\xba\x95\xfe\x6a\x95\xf0\x34\x75\x66\x06\x93\x39\xcf\xee\x13\x82\x22\xda\x5e\x3d\x03\x35\xc8\xa0\x77\xb7\x82\x20\xc0\x5e\xf5\xe0\x6f\x7c\x28\x95\x00\x3b\x79\xc1\xb7\xca\x39\xb5\xb1\x66\x9c\x7a\xaf\x5e\xed\x3f\x3e\x59\x81\xc1\xf4\x97\xb4\x40\x44\x3d\x88\x84\xd6\xf2\x17\x55\x7f\x3f\xec\xf7\x07\xfb\xf2\x9b\x4c\xb2\x68\x3e\xf5\x5f\xb6\xe2\x2b\xbf\xb5\xf7\xdc\xac\x62\x5d\xae\x0f\xb9\xaa\xd6\x71\x5e\xf1\x78\xbf\x68\x73\xec\x96\x7e\xf4\x72\x36\x55\x36\xe0\xff\xe4\xd2\xf7\x55\xbf\xaa\x87\x47\xa7\x92\x84\xc9\x68\xbc\x6e\x27\xcf\xb2\x28\x00\xe5\xed\xcd\xf7\xaa\x77\xa8\x86\x35\xfc\x3f\x7c\x34\x88\xe9\xfa\x95\x9a\x7f\xdf\x80\x8f\xd4\x71\xf7\xfb\x3e\x54\x6e\xf5\x8d\x7e\x1d\x8c\x26\xa4\x22\x5c\xdb\x06\x04\x30\xb8\x15\xe9\xe8\x79\x47\x77\x65\x14\xf9\xe4\xf5\xeb\x7d\xa5\xbc\x57\xaf\x76\x13\xf1\x2e\xdd\x64\x33\x88\xdc\x11\xe9\x40\x5a\x92\x2a\xf5\x2b\xd7\x04\xbe\x39\x48\x46\xd9\xd3\xf7\x1a\x59\x42\x59\xa8\x91\xef\x92\xad\xcf\x48\x2e\x06\xa3\x38\x2e\xf4\x97\x46\x9b\x2c\xd7\xea\xc7\x70\x56\xc6\xca\xaa\x5c\x60\xb6\x22\x32\x45\x65\x8d\x33\x85\x28\x07\xf2\xef\x9f\x09\xea\xa1\xdd\x7e\xaa\xf4\xbd\xdc\x0f\x02\xe5\x86\x2e\x55\xa5\x23\xe6\xca\x5c\x02\x98\x20\xd5\x80\x74\x0a\xfb\xe1\xa8\x87\x88\x49\xf8\xd1\xec\x97\xb4\x08\xb3\x89\xd9\x89\xaa\x5e\x76\x94\xff\xc2\x42\xf9\xd2\x80\xd4\x3f\x1f\x17\x13\x32\x39\x99\xcf\xc9\x84\x86\x5e\x70\x61\x0b\x02\xb0\x63\x8d\x9c\x2d\x5d\xeb\x8a\xc6\x9e\xa5\x7f\x95\xb8\xf3\x97\xbe\xf3\x4c\x70\x13\xab\xf2\x9e\x85\x97\xba\x1c\x4c\x63\xca\x9c\x3c\x7e\x9f\x78\x55\xb8\xb6\xe9\x6a\xea\x52\x29\x53\x79\x68\x46\xa6\x7b\xf3\x3d\x50\x16\xbb\x02\x7c\x8c\xa9\x18\xad\x23\xa7\x2a\xed\xec\xee\xca\xc1\x10\xf2\x29\x26\x1f\x0b\x06\xe5\xdb\xb8\xb9\xcd\x90\x88\x4b\x8e\x13\x7e\x25\xa0\x5e\x14\xa0\x57\x5b\xdb\x91\xed\x84\x5e\x34\x11\xbd\x57\xac\x09\x05\xbe\x3b\x5c\x41\x43\x40\xee\x54\x42\x42\x29\x13\x3f\x20\x32\xf4\xb6\xc0\x13\xf8\xeb\x6d\x56\xd1\xb7\xd3\x52\x39\x61\xeb\x90\x72\xb9\xd8\xe9\x23\x86\xf9\x2e\x69\x35\x36\xc7\x54\x73\x71\x34\x26\x8b\x2b\x34\x26\x8a\xf1\x22\x18\xf0\x9a\xd1\xaa\xb5\x43\x66\x4c\xa9\x43\xa2\xfe\x61\x8d\x7d\x8e\x8a\x91\xd3\xcd\x66\xf7\xd9\x43\x79\x4e\xee\xb2\x19\x9d\x64\xe0\x24\x6d\x02\xc7\xd3\x4e\x87\xca\xdb\x6f\xca\xb2\x39\xa9\x31\xb0\x71\x4c\x69\x4c\x8e\x01\xcc\x9d\xec\x03\x5a\x96\xe9\xd8\xcd\x28\x93\xf9\xa0\x6f\x5c\x34\x51\xbd\xe4\x57\x32\xae\x46\x8f\x72\x4c\x15\xec\x20\xc1\xdd\x81\x4b\x25\x80\x3c\xaa\x07\xdb\xcc\x06\x94\x3f\xf0\xdc\xb6\xa1\x9a\x6f\x77\x98\xa4\x2d\x65\xdd\x90\x1f\xe6\x8e\x49\x97\x60\x3e\x07\x41\x5f\x4a\x7d\x08\xf7\x78\x68\xa7\xe9\xb4\x2f\x0d\xd1\x94\x10\x3d\x8a\x5c\xdc\x26\xb5\x3e\x54\x79\x14\xca\x6a\xe2\xca\xac\x40\x91\x6c\x5d\x66\x4b\x38\xfe\x75\x4c\x16\xf2\x23\x8a\x8f\xb2\xe9\x6e\x84\xc2\x8d\x57\xa3\xd3\x9c\xb6\xaa\x71\x64\x92\x60\x08\x43\xf3\x9b\x9f\xde\xe3\x3f\x48\x61\xe4\x5f\x9b\xe2\x6c\x18\x43\xe6\x8c\x6d\x65\x3a\xda\x46\x16\xcd\x71\x53\xf2\x8c\x09\x1e\x5b\x25\x8d\xc5\x0c\x65\x5d\xb6\xcc\x39\x9d\x13\x9c\xa3\x4c\xa5\xb7\x01\x81\x69\x1b\x65\xb0\x95\x92\xd5\x97\x31\xfc\xf4\x6f\x70\x67\x64\x24\xc7\x05\xca\x6c\x76\x9c\xec\xab\x7c\xc4\x37\x62\xb0\x65\x1f\xa1\x39\x16\x58\x66\x6c\xc4\x70\x97\x3e\x9b\x9d\x6f\xc6\x66\x97\x1e\x73\x9d\xc7\x33\xf4\x10\x38\x19\xf2\xd0\xaa\x65\xd1\xd7\x68\xde\x2c\x91\x28\x5d\xf9\x6b\x1e\x75\x5d\xd0\xf6\xc5\x72\x8b\x74\x0a\x1f\x23\xd0\xb1\x4d\x99\x44\x48\xff\x5d\x03\x29\x54\x66\x42\x82\x0c\x54\xd2\x3b\x4a\x43\x4a\x89\xc3\x80\xbd\xb2\x94\xc9\x19\x05\x30\xc1\xd9\x43\x1b\xc9\xfc\x14\x65\xf7\x4a\xfc\x81\x24\x9c\xf2\x00\x18\xcb\x2d\x48\x23\x9c\xa2\x78\xb4\x00\xaa\x21\xa1\xc0\xb4\x0a\x09\x85\x98\x99\xb2\xff\xa3\xbf\xc9\xd0\x90\x02\xc4\x9c\xb5\x80\x1e\xa5\x0d\x61\xaa\xd4\x52\x3c\xbb\x41\x72\x20\xc5\xfc\x9a\xe6\xe4\x42\x20\xf5\xd4\xdf\x0e\x71\xe8\x8b\xcd\x37\x4f\x49\x00\x8b\x10\x15\xc4\xe5\xef\xc8\x12\x24\x9c\xf8\xa9\x98\x90\xd6\xd3\xe8\x96\x0b\x53\x94\x71\xa4\x4d\xc6\x19\xb9\x43\xa5\x55\x86\x21\xe5\x94\xa6\xb6\xbc\x45\x4d\x52\x6f\x88\x63\x88\x7f\xd0\xe6\x8b\xc9\x12\xd2\x3f\xe7\x9a\xb8\x97\xcf\x69\x8a\xc6\xf8\x96\xeb\x32\x1c\x2d\xd1\x2c\x45\x53\x75\xd7\x9c\xd2\xfc\x13\x01\xe9\x51\x6b\xac\x6f\x81\xa4\x70\x92\x61\xb0\xf4\x33\x53\xd4\xf7\x5f\x0c\xdd\x9c\x70\xf9\x2a\x15\x3c\x86\x42\x4d\x32\xb9\xa7\x83\x63\xa7\xe6\xab\xcc\x78\x46\x1a\x4b\xcb\x74\xfb\x66\x01\x70\x66\x75\xd4\xb8\x5c\x21\xba\x4a\xfe\x4a\x52\xf4\x5f\xeb\xc5\x88\xd2\x96\x5c\xdf\x9a\xf3\x8c\x7d\x82\x0c\x5e\x5c\xe9\x06\x4e\x40\x69\x88\xb7\xfb\xe6\xcd\x5b\x32\x23\x9c\x98\x37\xf3\x6c\x81\x89\xf8\xdf\x31\x50\xa5\xf9\x8d\x38\x12\x6a\xd7\x9a\x04\x8e\x52\x27\xe9\x53\x66\x4e\x8e\x58\xdd\x83\xde\x6b\x39\x58\xbd\xdb\xba\x2f\xb4\x94\x68\x55\xe5\x14\x5f\x62\x08\xcf\x9c\xdf\x58\xb1\x11\x3d\x4c\x66\xb8\x18\xd2\x51\x1a\xc1\x66\x03\x67\xe6\x2a\xe5\x78\xd6\xbd\x9b\xbf\x2b\x98\x9c\xbc\x18\xd7\x32\x55\x29\xc8\x21\x79\x10\xc0\x9f\x03\x00\x13\x07\x00\x68\xfa\xb9\x18\x92\x11\x9e\x62\x6a\x53\x9c\x20\x9e\x22\x5a\xbf\x99\x21\x6c\x99\xc2\x12\x12\xa6\x8d\x95\xa7\xf6\x98\x0a\x90\x08\x62\x51\x4e\x91\x63\xc8\xa6\x37\xb3\xa7\x5c\x20\x32\xdf\x71\x4e\xbc\x9d\x17\x77\x6b\x94\xa6\x62\x3b\x8a\x60\x03\x32\x4c\x87\x64\x84\x4a\x4c\x87\xf9\x48\x06\x03\x69\xfd\x57\x92\xa1\xca\x46\xe4\x87\xb5\x4b\x9f\xa2\x42\x05\x4b\x4a\x32\xf1\x3b\x08\x97\x5b\x4a\xae\x4a\x02\x5f\x0d\x31\x2c\x86\xc6\x30\x1f\x92\x51\xcb\x75\x64\x4b\x52\xf4\xf7\x84\xa5\x3e\x80\xea\xbe\x58\x8a\x64\xa3\x5b\xa2\x5e\x05\xca\x61\xa9\x26\x45\x5e\xf5\x91\x91\xb0\x18\xc7\xb9\x89\xbf\xe2\xf2\x22\xb0\xcd\x6a\x55\xce\xdf\x1b\xae\x1a\xb8\x42\x50\x89\x96\x72\x86\xb3\x03\xc8\x90\xef\x5e\x33\xaa\x44\x70\xcd\xcc\x68\xc9\x77\x15\xfd\x31\x83\xd3\xe9\x65\x22\x9f\xc1\x8d\x2c\xb3\x0a\x91\x09\xce\xbb\x27\x67\x27\x97\x27\x47\xa7\x68\xe6\xa4\x4a\x5a\xaa\x63\x30\x5b\x77\x4f\xe9\x83\x3c\xeb\xda\x72\xf2\x1a\x49\x93\xe1\x12\xb2\x30\x8d\x47\x29\x9a\xfd\x3b\x6e\xb3\x2a\x83\xbb\xdd\x73\xf4\x79\x66\x8a\x30\x2a\x99\x5b\x48\x6e\x8b\x4d\xeb\xc4\xb3\x9b\x14\x89\xba\xbf\xef\xb5\xe8\xb3\x02\xa6\x3b\x7d\x9b\xb9\xa3\x83\x04\x2b\x7a\x84\x54\x0e\x80\xc1\xba\xd1\xd4\x43\x82\xea\x42\xcc\x30\x07\x5b\x90\x12\x67\x91\x58\xdb\x99\x1b\xa8\x36\x29\x2a\xc6\xf7\x25\x2a\x1c\x82\x4c\x2e\xfe\x12\x6e\xb6\xff\x92\x1c\x05\x2a\xd3\x96\x4c\x40\xa5\xf3\x4e\x5d\x3c\xe4\xe3\x5b\x56\xe4\xf4\x37\xc2\x92\xcf\x3c\x63\x82\x26\x5f\x22\x33\xa9\x01\x5b\xa5\xdd\xf2\x21\x1f\x1b\xd3\x4b\xbf\x4f\x2f\x4e\x75\x99\xae\x48\x24\x5f\xa3\xe7\xbb\x28\x96\xd4\x47\xbe\x75\xa7\x5d\x2d\x09\x8b\x90\x0f\xea\xee\x47\x54\xdc\xf6\xa1\x57\x44\x92\xc3\xbd\x6f\xc2\x5d\x56\x9d\x14\xbc\x10\xda\x2b\x03\xe5\x96\x2a\x90\xf9\x42\xcd\x35\xeb\x73\xd4\x35\xd7\xac\x09\x51\x44\x34\x3d\xf4\x03\x90\x47\xe6\xb6\x55\x7c\x0c\x26\x4a\xb1\xd5\x74\x6f\xc6\xd9\x3b\xd3\xc2\xa6\xde\x6b\xaa\x82\x26\xc1\x8a\x45\x69\x24\xe0\x5a\x6d\xae\xdb\x94\x0d\x2a\x23\x01\x30\x19\xe4\x4d\xf4\x5d\x74\xa6\x2a\x42\x5f\xf8\xba\xca\x32\x2a\xfc\xc8\x1b\xd6\xd5\x09\x00\xe5\x70\xfd\xda\x8d\x94\x07\xd4\x08\x73\xd4\xa0\x25\x6e\x24\x49\x18\x61\xa1\xf3\x8c\x06\xbb\xc4\x22\x9c\xc3\xcf\xa1\xc4\x60\xb0\xdd\x5f\x0d\x48\x5a\x95\x62\x30\x2b\xc5\xe0\x9d\x8e\x31\xdc\x12\x30\x48\x3d\x8f\xc0\xf0\x5a\x85\xa3\xf8\x07\x08\x13\x87\xaa\xdd\x89\x83\x67\x29\x50\x45\x73\x6f\xa8\x6e\xad\xe3\x06\x37\x55\xbf\x96\x5f\xa5\x74\x2d\x03\x55\x6b\x23\xf8\xb0\xe2\x1e\xf2\x77\x6e\x95\xb7\xc5\x72\x36\xd9\xca\xc9\x1d\x61\x5b\xb7\x60\x15\xd1\x96\xa4\xc0\x66\x9c\xa1\x32\x49\xb0\x6c\x9e\x92\x11\x48\x64\x70\x4e\xca\xe5\x8c\x63\x2e\x33\x5f\xb0\x3a\x80\xf3\xc4\xea\x8e\x2f\x41\x51\xaa\xf8\x08\x80\x45\xa9\xb6\x14\xcd\xe6\xe2\x6e\x25\xf7\x5b\x19\x77\x1c\x3d\x4a\x78\xb5\xe4\x4d\x41\x17\x02\xd1\xbc\x1b\x7e\x6b\xb1\xd3\xf7\x64\x7c\x32\xcb\x35\x54\x90\xb1\x76\x83\x21\x55\x3e\xc9\x41\x84\xaf\x21\x92\x00\xe1\x9e\xb8\x1a\x99\x94\xc8\xce\xb4\x49\xcb\xb9\x8f\xa0\x73\xb8\x8e\x54\xaa\x4b\x48\xe0\xb9\xd8\xcd\x76\xfa\xad\x42\xb6\x07\x39\x06\x32\x1b\x14\x78\x89\xcb\x5d\xe5\xfd\xef\x0c\x52\x17\x5d\xea\x3c\x3c\x33\xc7\xd9\xa7\x44\x63\xcc\x74\x0f\x53\xbc\xdc\xdd\xff\xd3\xb8\x65\xeb\x4c\xd1\x58\x46\x29\xec\x66\x0d\xee\x49\xb6\xaf\x8c\xab\x58\x05\x8c\x64\xb3\x59\x31\xae\x15\xaa\x82\xe0\x0e\xb4\x86\xbd\x4e\x47\x89\xdf\xfc\x74\xe7\x7e\xcb\xc6\x18\x13\x56\x85\x62\xd6\xbd\xce\x4a\xb2\x43\x50\x61\x86\xbf\x93\xdb\xc4\xe6\xc5\x6b\xdc\x3b\x28\x76\x77\x53\x29\xde\x4f\x8a\x1d\x59\x01\x15\x3b\x34\x6d\xa9\xca\x98\xa0\xdc\xfc\xe2\x62\xfb\x31\x59\x41\xa0\x85\x50\x22\xac\x51\xba\xb1\x7c\x72\xa6\x2c\xfb\x3c\x9c\xf2\x41\xf8\x45\x35\x23\xd0\xac\xad\x29\x61\x4a\x55\x1a\xab\x4a\xf2\xa5\x29\xef\x6a\x71\x72\x25\xaf\x17\x14\x8b\xf1\x70\x51\x56\x35\x30\x56\xc1\x7a\xd7\x5c\x3e\x32\x4d\xa6\x5a\x72\xad\xdf\x74\x16\x1c\xec\xf0\x16\xc5\x02\x14\x70\x4d\x91\x1c\xb2\x3a\x5b\x48\x97\x80\xbb\xcc\x6e\x6e\xc8\x24\x4d\x86\xe1\xd6\xd9\x29\x8e\x52\x63\x17\x29\xd6\x7d\xbd\x49\x64\x09\xfb\x63\x2a\x6d\xa0\xd1\xab\xec\xcc\x4e\x65\xd9\x77\xf6\xff\xe4\xf6\x20\x5f\x5a\xf5\x5f\xbe\xd9\x9d\x08\x69\x50\x2b\x48\xca\xc3\x4f\xcc\xdd\x2d\x9c\x7f\x41\x7a\xd4\xcf\xd0\x80\x0b\x1c\x3a\x5d\xaf\xed\xab\x02\x6f\x3a\x91\xb0\xba\xdb\xe9\x1a\x54\x2b\x56\x16\xf7\xbc\x21\xf6\x50\x14\x09\x03\x8f\xe2\x3c\x32\x1d\xaa\x46\x1a\x59\xc9\xcc\x32\x31\x6c\x4b\x2b\xd8\xd6\xd7\xae\x19\xe3\x29\x31\x14\x1e\x1b\xca\x55\x24\x65\x79\x65\x10\xac\x7b\xfc\xfe\xc7\xcb\x9f\xaf\x8e\xce\xcf\x8f\x7e\x5e\x21\x1a\xc3\xb6\x74\xc3\x7e\x29\x82\x38\x1b\x87\xc9\x57\x76\x9f\x0e\x92\x4d\xd6\x4c\x90\xb6\x21\x4e\x75\x29\x6f\x81\xab\x98\x7b\x70\x35\x02\x94\x98\xd3\x58\x51\xf4\x1e\x1f\xc9\x6b\xcc\x0e\xa7\x83\x5c\x46\x69\x04\x02\x9f\xc6\x50\x98\x83\x54\x0a\x07\xa9\x48\x72\xde\x8c\x0e\x6a\x2f\x18\x59\x10\x2f\xe0\xa2\xbd\x25\x15\x1e\xa1\xd3\x84\xbf\xee\x79\x7c\x18\x0c\x3a\xf7\x06\x4d\xdd\x41\xdb\x25\x67\xbb\xc1\xaa\xe7\x3b\xdc\x44\xad\x2a\x04\xea\x7e\xc5\x0f\x8a\x9d\x9d\x94\xca\x38\x8b\xe2\x5e\x29\x52\xc8\xf9\xd7\xda\x08\x22\xbf\x18\x9d\x39\x58\x53\xb4\x6d\x16\xf8\xf1\x31\x71\x5e\xe3\x18\xbe\x0b\x17\x50\xa0\x11\x8d\xb0\xec\xeb\xc6\x1e\x6d\xb1\x96\x4c\x0f\x5a\xb9\x2b\x51\xed\x1a\xb7\xaa\x8d\x60\x57\x25\x9a\x30\xc4\x76\x72\x93\xcc\x8a\x58\x44\x57\x34\x22\xba\xaa\xf6\x56\x5f\x3b\x28\xc4\x7f\x6e\xcf\xde\xb6\xae\x33\x85\x20\x49\x70\xb6\xbc\xa3\x84\x7a\xcd\xf6\x0a\x0d\x24\x89\x1d\x91\x8a\xf1\x58\x83\x67\xc3\xd2\xdd\x79\xb6\x70\x42\xb1\x7f\x98\x46\xa3\x56\x3a\x9b\x63\xab\xfa\xc7\x15\x92\x7e\xaa\xeb\xca\x0d\x55\xb2\xd4\x69\xfc\x8c\x8f\xe6\x22\x63\x25\x39\x01\xbf\xcd\x7e\xcf\x5e\xfd\xe2\x64\xe7\xf2\x64\xf3\x61\x6e\xe7\xf0\x61\x1a\x9b\x34\x31\xc8\x5f\x6e\x6d\xf6\xd5\xb8\x3f\x3c\x4a\xea\x2d\x44\x67\xf7\x31\x9d\xfa\x92\xf1\xb3\xea\xb7\x7f\xeb\x95\x50\x87\x7a\xbf\x72\xa8\xf1\xfb\x42\x29\x2c\x37\x1a\x58\x0e\x77\x46\xae\xef\x8c\xdf\x77\x7c\xe6\x42\x09\x37\xa6\xd0\xfd\xc9\x06\x69\xd0\x08\xdc\x32\x03\xaf\x88\xb3\x9f\xba\x14\x4d\x01\xe1\xdf\x66\x31\x07\x56\xc8\x0b\x64\x68\x90\xd2\x24\x08\x22\x50\xa7\x6a\x38\x12\x06\x17\xe8\xf9\xc1\x05\x1c\xd4\x25\x71\x1a\xc5\x09\x3f\xb4\xed\x4b\x82\x46\x8d\x2c\x75\x7a\x6b\xe9\xe1\xc0\xcd\xac\xaf\x3a\x19\x3f\x7d\xdd\x55\x57\x86\x57\x1d\x74\x15\xbd\xf5\xe6\x84\xdd\xc4\x24\xdf\x4d\x77\x9e\x6c\xad\xfe\xd2\x83\x84\xf4\x50\xa8\xa5\xd2\x78\xd2\xf2\x1d\x2b\x7e\x23\x79\xc2\xd2\x4e\x07\xb0\xab\xaa\x07\x48\x76\x38\xb2\xe1\x1b\x65\xd0\x48\xee\x46\x8b\x2c\x86\xd9\xe8\x00\xd6\x81\x99\xf5\x29\x53\x08\xcd\xa6\xcc\x66\xcb\x54\xdc\xdf\xe0\x0e\xe1\x62\xc1\x6c\x94\xa6\x2b\x1f\x66\x37\x38\xee\x11\x90\x5a\x89\x95\xe2\xc5\xc5\x43\xce\x6f\x09\xa7\xe3\x33\x2f\xba\x95\x8b\x91\xa4\x8d\x4e\x3f\x95\x15\x8e\x78\x4d\xc9\xf6\x7f\xb6\x77\xc8\xef\xc8\x7e\x54\x76\xd6\x78\x76\x89\x39\x34\x5e\xc3\x72\x9f\x22\x57\xbf\x5c\x0e\x6f\x31\xec\x4d\x11\x2c\x86\x77\xff\xab\xc2\x8d\xbd\xaa\x32\xb1\x7e\xf5\xc2\x3b\xa3\x70\xfb\x95\x6b\xfa\xbb\x13\x1c\xeb\x88\xcf\x08\xc1\x91\xbb\x04\x07\x47\x7c\x87\xc5\x08\x8e\x72\x0d\xc1\x11\xd2\x15\x6a\xd9\x2b\x44\x86\xcf\x57\x19\x01\x89\x1c\xd5\x3c\x5b\x58\xae\xa4\xc6\xba\xe8\xcb\xd1\x5d\xa3\xdd\xae\x44\x02\xac\x42\x11\xe4\x98\xd7\x60\xb1\xfc\x70\x3a\x60\x70\xad\xe7\x55\xd2\x24\x88\x66\xab\x10\x56\xa4\x75\x4f\xef\x24\xc3\xe4\x1b\xe3\x50\x2a\x90\x46\x3e\x24\x43\x3a\x1a\x61\x3e\xa4\x23\x43\x21\xe8\x55\x68\x3c\x73\xf3\x6c\xd1\x08\x40\xf3\x6c\x11\x81\x1c\x0f\x1b\x3a\x30\xe6\xd4\xf2\x06\xdd\xb2\xf1\x74\xc5\xe0\xb9\x37\x78\x32\xe4\x30\xf8\x7c\x48\x47\xab\x08\x34\x2d\xd7\xd0\x38\x34\xe7\x84\xe5\xd9\xec\x27\x31\x6f\x17\xbb\xe9\x0f\x97\x1e\x0f\x51\x7b\x2d\xfb\xd4\x87\xa4\x9c\xbe\x9d\xbe\xa9\xed\xae\x9e\xf0\xf1\xc6\x1d\xe1\x49\x83\x09\x6f\xc4\x15\xc7\x69\x1c\x39\xb8\x62\x43\x26\xf9\x5b\xc6\xa5\x29\x94\xf8\x9e\x44\xb6\xf0\x77\x22\x57\x6a\x11\x9e\xbc\xb5\x73\x17\x9e\x29\xce\xdd\x63\xac\xc3\x0f\xba\x2f\x2b\x91\x08\x0b\x0c\x86\xfc\xc9\xfe\x9f\xa8\x4c\xd2\x66\x1e\x77\xfa\xe2\x45\xe9\xbc\xd8\x43\x3c\x75\xe3\x2c\x61\x8c\x4b\x99\x5e\x61\x58\xa2\x0c\x15\xa3\xf5\x54\xce\x4c\x51\x39\x0e\x71\x03\xc7\xbd\x6c\x16\xec\xc9\x32\x4d\x07\xdd\xdf\x81\xaf\xbf\x2c\xc2\x9d\x0c\xef\x8b\xfd\x3f\x45\x6f\x8c\xd9\x7a\xbd\x9f\x84\x55\xe2\x4e\x3a\x80\x56\x8d\x13\x9b\x74\x52\x5f\x0e\x51\x8d\x6c\x61\x58\xdc\xc5\xfd\x2a\x21\xf8\xd0\x19\xf0\x70\xff\x4f\x7c\x67\x6f\x84\xc2\x57\xfd\xca\xab\xd1\x48\x71\x78\x63\xe9\x15\x50\xf2\x66\x16\xda\x3f\x6c\x68\x2a\x6b\x15\xcd\xb5\x52\x34\x91\xe5\xf2\x4a\xb9\x29\x47\x63\x8e\x7a\x10\x9f\x57\x55\xf8\xfe\x02\x4f\xa4\x72\xe7\xb6\xe9\x7e\x0f\x8c\x8e\x54\xb4\x50\x65\xd8\xe9\xc7\xb3\x92\xb6\xc7\x8a\xa1\x99\xc8\x80\x03\x90\x0d\xa1\xc6\x28\xb9\x6c\xf8\x16\xb1\xea\xa9\x16\x1a\x67\xe3\x5b\xf2\x3d\x2b\x96\x8b\xb2\xfa\x71\x46\x4b\x99\x1d\xa5\xae\xf7\x9e\x83\xb1\xca\xbe\xf3\xc0\xdd\x2f\xdc\xfd\x72\xe7\x7e\x91\x51\x7a\x6f\x9d\xc0\xa5\xe2\x4d\xc5\xc8\xda\x2d\x10\xd8\x5b\xc7\xd6\xcd\x2e\x8a\xef\xcb\x54\x59\x4f\x65\x21\xa5\xcd\xb4\xd9\x8d\x5a\x03\xee\x3a\x2b\x8a\x37\xbf\x91\xe4\x2f\x4a\x9e\xa3\x6d\x11\x60\xa0\xc4\xa8\x57\x3f\x4f\xc8\xf5\xf2\x46\x5a\x14\x0d\x22\x4c\x41\xd6\x75\x0a\x24\x85\x1b\x34\x13\x3e\x80\x59\xc5\xc0\xbf\x3a\x55\x1d\x65\x71\x61\xaa\x20\x9e\xae\x56\x52\x83\x5f\xc4\x8e\x74\xd1\x9d\x12\x3e\xae\xf5\x67\x31\x2e\x86\x43\xda\x3d\x27\x37\xb4\xe4\x84\x0d\xc9\x68\x04\xd6\x11\xb3\x22\x9b\x54\x2a\x06\x05\x5d\x1f\x0f\x65\x6e\xad\xba\xfc\xc9\xa7\xe7\x7c\xc9\x54\xd0\x8a\xee\x2d\xac\xa3\xb1\x5b\xa5\x53\x51\xa1\x3e\xd8\xb2\x74\x67\x72\x82\xbb\x42\xf1\xba\x68\xc9\xaa\xb4\x09\xf5\x2a\x0a\xc7\xcd\x1e\x94\x63\x9a\xb6\x6a\x2f\x6a\x62\x0c\x2b\x0f\x4c\x88\xe9\x0a\xc5\xe4\xc4\x2f\x6b\x5b\xd4\xdf\xbd\xe2\xb5\x2e\x60\xc0\xf1\x81\xb7\x14\x95\xd6\x26\xae\x57\x6c\x6e\xac\xb5\x3e\xab\xbc\x09\x32\xb4\x31\x1c\x83\x92\xfe\x46\x0a\xc1\x29\x23\xa9\x46\x26\xc9\x67\x05\xb2\x03\x8e\x48\x7e\x37\xc8\x57\xe8\xad\xcc\x53\x95\x50\xb4\x4c\xc1\xb8\xd8\x9a\x5e\x2d\xc6\x78\xe6\x07\x4a\x16\x2d\x7d\x89\xb5\xe1\x4c\x8c\x3a\x20\x0c\xb9\x67\x14\x8f\x3f\xc7\x95\x5a\xd3\x15\x2a\xeb\x3e\x80\x99\x54\xe4\x53\xb6\x5a\xa1\x72\xed\x44\xa7\xa8\x97\xa2\x0c\x51\x33\xd1\x28\xb2\xac\x9b\x11\x84\x72\x0e\xc2\x47\x17\x29\x2a\x63\xc1\x4b\xfd\x90\xf2\x3a\x65\x16\x97\x7b\x83\xb8\x87\x92\x20\xaa\x7c\x11\x75\xca\x51\xaa\x31\xb7\xf4\xa0\x82\xd2\x04\x9b\x69\xbf\x94\xfa\x95\x98\xca\xc0\x39\xb2\x5a\xd7\x4a\xd2\x95\xe8\x0e\x52\x1c\xbc\x31\xb7\x40\x05\x04\x9d\x0b\xc2\xf1\x4e\xd6\xcb\x95\xa4\xca\xd3\x5d\x0e\x1d\x82\xec\xc7\x1b\x93\x94\x15\xa4\xc0\x4d\xda\xc7\x67\x6f\xdb\xa9\x66\xec\x6c\x5b\xc6\x26\xdb\xed\x13\xc2\x9d\x16\x98\x1e\x3a\x56\x42\x34\x1d\x68\x17\x7d\xb0\x13\x90\x63\x40\x25\x8e\x98\xd5\xe9\x0d\x2c\x39\xbc\x48\x04\x80\xa7\x48\x9a\xa6\x5d\x26\x25\x22\x69\x2b\x88\x5f\xb4\x44\x45\x8a\xb8\x0a\x92\x01\xf5\xdf\x24\xcb\xd4\x79\x25\xcf\x2c\xc9\x79\xd4\x92\x27\x84\x18\x13\x7d\xdb\x2c\xbc\x9e\xa7\xba\xbc\xca\x24\x8d\x84\x58\x85\x59\x43\xe4\x2a\x15\x10\x49\x03\x9c\x34\x6d\x91\xef\x16\xe3\x14\x29\x79\x96\xb1\x4b\x73\x63\x5b\x1d\xe7\x70\x77\xc0\x78\x95\xc5\x70\xc4\xb1\xc8\x23\x5b\x73\x73\x69\xe6\x3a\xb8\x48\xcb\x8d\x6b\xa4\x66\xb1\x97\x9a\xa8\x46\xcd\xb3\x70\x55\xfa\xeb\xa6\x42\xfd\xa9\x14\xa8\x72\xfa\xcc\xc2\x9f\x70\x32\x8f\xb1\x9a\x86\x66\x49\xd2\xee\x3c\x5b\x40\x04\x28\xe4\x2f\x87\xd3\x4a\x25\xf8\xec\x66\x5b\xd8\xab\xdb\x42\x13\xd1\x56\xac\x5f\xe1\xdd\x94\x84\x88\x21\x59\x8b\x4d\x13\x95\x3e\x1a\x52\x5e\xdb\xa1\x07\x2b\x95\x69\xc8\xfd\x3b\x49\xca\xc8\xce\xa3\x42\xed\xbd\x4f\xba\xc9\x8d\x5c\xa6\xc1\x42\x2c\x61\x21\xf4\x63\xf5\xaa\xf2\x3d\x06\xea\x88\x4a\x2d\x73\xb5\xa6\xe2\x62\x75\x7f\xa5\x55\x57\x40\x77\xb1\x82\xa8\x9a\xd1\x76\x6d\xa4\xe3\x0a\xbe\xa9\xb1\x8d\x36\x7d\xfb\x1b\x6b\x6c\x06\xa9\x71\xa5\x0e\x17\x48\x13\x32\x76\xce\x35\xeb\x21\x47\xe1\x61\x02\xd3\x56\x9d\x9a\x2d\xe8\xcc\xc4\x6a\x2e\xac\x15\x61\x4d\xcd\xd8\xba\x38\xd5\xf5\x8a\xd6\x55\x77\xc9\x63\x51\xbe\x6c\x4a\x8b\xe7\xd0\xcd\x4e\x17\xee\x15\x53\x57\xb3\x4a\x59\x3b\x0d\x08\xf0\x80\x0d\xaa\x34\x11\xa7\xd6\x9d\xdb\x4b\xc2\x94\xba\x5d\xc4\xd7\xb7\x35\x83\x71\x43\x6e\x79\x57\xa2\x6e\xa1\xd5\x3c\x5c\x27\x12\xb3\xec\xe8\xbc\x28\x78\x98\x74\xd0\xfa\x61\xbe\x55\x69\x35\xdd\x50\x05\x9d\x0e\x0b\x13\x16\x7a\x73\x49\xe3\xcc\x09\x83\xb0\xe7\xb2\xd3\x9a\x2c\x87\x61\x15\xa2\x89\xdb\xf5\x0b\xaa\xa1\x7a\x51\x2c\xea\x96\xae\x6e\x45\x74\xd5\x75\x51\xab\x9c\x43\x5d\x09\x2c\xab\x86\xba\x26\x73\xa7\xde\x6c\x55\x2c\x51\x14\xb1\x92\xa1\xbe\x2b\xd8\x9a\x6c\x9e\x6e\x7d\x28\xa9\x2f\xe8\x7a\x4f\x5a\x9b\x37\xe4\xb6\x9a\x09\x04\xf1\x4e\x87\xab\x10\x4c\x9c\x3d\x80\x54\xfa\x60\x5b\x7b\x71\x0b\x22\x24\x49\x53\x70\xdc\x38\x48\x0f\x56\x10\x43\x67\xf6\xf0\xd9\x66\x71\x0d\x96\xe5\x00\xa4\xee\x32\x14\xde\x41\x9a\x3b\xa8\x6f\x65\x4c\x33\x41\xcc\x21\x57\xfb\xd7\xaa\x41\xb5\xa6\x94\x48\x7e\x87\xfc\x44\x1f\xfa\x62\x8a\xa0\x89\xe0\x86\xba\x50\x3a\x39\x87\xaf\x08\x7d\x81\x1d\x41\xdc\x36\xc6\x85\x91\x71\x8a\xb2\x5e\x26\x10\x6d\x13\x8c\x08\xfe\x2c\x96\x61\xb0\xdd\x47\x30\x83\x01\xa8\x1f\xb4\x64\xd3\xf3\xfc\xb6\x65\x7b\xba\x2c\xb9\xdf\xe2\x5c\x92\xc8\x0a\xd7\x53\x67\x71\xd2\x95\x3a\x8e\xe2\x50\xc5\x81\xd7\x8b\x14\x11\xa3\x87\x19\xb6\x11\x20\x0e\xd8\x6b\xdc\x3b\x60\xbb\xbb\x1e\xcd\x63\xc4\x09\x00\x3d\x2a\x45\x30\xc4\x93\x00\xbf\xfe\x24\x47\x21\xb7\x9b\x36\x9b\xd8\x40\xc9\x0d\x22\x6f\x94\x12\x25\x7b\x1c\x8e\xcf\x22\x2a\xb9\xb4\x51\x70\x79\xf4\x41\xbb\xa9\xa6\x9f\xe7\x85\xac\xd6\x8f\xc6\xab\x61\x7a\x5c\x8c\x37\x98\xc8\x62\xdc\x38\x8b\xc5\xd8\x99\x02\xcb\x36\x68\x90\x65\x8d\x0d\xb2\xcc\x69\x70\x5a\xd5\xd5\x54\x63\x09\x4c\x17\x35\x0d\x9a\xe4\x47\xb6\xc1\x72\x93\x06\xcb\xe6\x06\x4b\xb7\x41\x75\x50\x1b\x5b\xd5\x1e\xc4\xaa\xac\xa9\x4b\xf2\xbb\x8d\xea\x91\xfc\xce\xf5\x50\x3f\x2d\xee\x4f\xc9\x1d\x99\xfd\xf4\x1e\xdf\x4a\xf1\xe4\xa2\x56\x3c\xa9\x06\x7e\x37\x8f\x67\x4a\x09\xd1\x91\xdb\xfb\xdd\x5c\xe1\x42\x27\x1c\xc3\x7c\xbd\xd4\x5a\x92\x20\x8e\xba\xe5\x9c\x4c\x31\x77\xcd\x25\xee\x32\x76\xd9\xec\x1a\x26\xc5\x8a\x55\xb7\x30\x0e\xc6\x0e\x6c\xd4\xe8\xdf\xd2\x68\x10\x75\x43\xf8\x4f\x19\x4b\x52\x6b\x55\x54\x95\x76\x47\xcb\x7b\x29\xa5\x7f\x8a\x19\x26\x2b\xec\xe2\xce\x5b\xf7\x62\x78\x61\x58\x1c\x3f\xe9\x74\xd5\x81\x4c\xae\x0f\xe2\xd2\xc7\xcc\xa6\xcd\x7d\x7b\xfc\xee\xe8\xe3\xe9\xe5\xd5\x9b\xa3\x1f\x8f\xbe\x3b\x39\x3d\xb9\x3c\x39\xbe\xc0\x5a\x68\x70\x9a\x3d\x14\x4b\x2e\xb0\xaf\x7a\x71\x99\xdd\x88\xa7\x05\x23\x8b\x8c\x91\x23\x76\x53\x8a\x47\xb9\xde\xfa\xc9\x04\xab\xfd\xa1\x28\x3e\x09\x2c\xaf\x2e\x13\xfd\xe8\x09\x24\x4c\x6d\x49\x01\x89\xef\x72\xd8\xb2\xb4\xfe\x0a\x19\x07\xf3\xb1\x28\xbf\x6a\x91\xee\xfb\x93\xb3\x93\xf7\x47\xa7\xcd\x83\xee\x7b\x83\xee\xfb\x83\xee\x7b\x83\xee\x7f\xe1\xa0\xfb\x8d\x83\xee\x57\x06\xdd\x5f\xd9\x64\xf5\x77\xdc\x31\xe6\xf8\xe3\xce\xf5\xa0\xf7\x47\x30\x79\x83\x04\x42\x20\xd8\x5c\x91\xee\xc5\xf1\xf9\xc9\xd1\xe9\xc9\xdf\x8f\x2e\x4f\x3e\x9c\x5d\xbd\x3b\x39\xbf\xb8\xbc\x3a\xfb\xf0\xf6\xf8\xea\xe2\xf2\xfc\xe4\xec\x7b\xac\x2b\xc2\x09\x78\xe0\x8d\xa1\x24\x94\xb3\xac\x86\x0c\x1a\x06\x07\xf0\x43\x49\xd0\xfc\x06\xee\xd2\xb7\x64\x01\x66\x2f\xb4\x3b\xce\xf2\x89\x0c\x41\x02\x32\x78\xda\xa5\xf9\x2f\x90\x8c\xff\xc3\x9c\x72\x4e\x64\x80\xc1\xed\x3e\xa2\x5d\x93\x27\x44\x55\xde\xed\x23\xba\x41\xd2\xbf\x3f\xa4\xe8\x66\xb3\x29\xd0\x69\x52\x1d\x3f\xca\xcd\x0c\x96\xf9\x3c\xe3\xe3\x5b\x32\x31\xf1\x96\x4b\x3d\xe8\x6b\x3b\xae\x1e\xca\xab\x21\xd7\xce\xc9\xed\xc3\x44\x26\xe7\xd8\xba\xa7\xfc\x76\xcb\xf1\xb9\xdb\x82\x78\x6c\xcb\xc5\xa2\x60\x9c\x4c\xda\xa9\x63\x7b\x4b\xf5\x2d\xf8\x06\x02\x1c\x6b\xc2\xc9\x89\x4b\x7f\xb0\xad\x42\xe4\xe1\xe2\xf1\xf1\x9a\x27\x45\xda\xe9\xdc\x89\x3f\xe9\x41\x5a\xe0\xc2\x8d\x82\x6c\x95\xe2\x76\xcd\x0b\x44\xbf\x2e\x08\x47\x6d\x86\x89\xbb\x20\x81\x0d\x2c\x0a\x92\xd9\x2f\x1e\x64\x3a\x0d\x27\xa4\x61\x6f\xc0\xac\x88\xcd\x9d\x6a\x8b\x76\x3a\xce\x40\x3b\x9d\x24\x77\x86\xed\x46\xe6\xf7\x60\x88\xf8\x81\xf4\x75\xbb\x41\xba\x0b\x95\x88\x84\x64\xec\x3d\x2d\x61\x4f\x63\x86\x66\x26\x31\x8b\x3f\x2e\x19\x93\x70\x1b\x63\x93\x01\x8a\x05\xa0\x09\x65\x5e\x63\x16\x01\x79\x88\xbd\x7a\xc0\x3b\x9d\x64\xfb\x9a\x27\x3c\x7d\x7c\xbc\x12\x7f\xb6\x31\xce\xd3\x83\xd4\x98\x95\x80\xab\x36\x97\x91\xf1\xb6\xa0\x8a\xf6\xca\x89\x14\x62\xee\x9c\x31\x07\x97\x19\xf7\x4c\xad\x1a\xd2\xec\x54\x9d\x23\x2b\xd3\x0c\x34\xcc\x76\x96\xc1\xf3\xce\x4e\x4b\x3b\x7a\x99\xfe\x23\xab\x85\xc4\x09\xd3\x70\xcc\xb3\x9b\xb3\x6c\x4e\x5a\xd7\x1c\x0c\xf0\x12\xb0\x9c\x33\x98\xaa\x0b\x5b\x93\xfc\xf9\xff\xfd\xe3\x3f\x76\xae\x07\xc9\x3f\x26\x3b\xe9\x1f\xff\xf0\xe7\x34\xed\x74\xf2\x61\x7f\x74\x78\x06\x51\x15\x13\xf1\x3b\x05\x2a\x3f\x05\x7d\x6e\xe2\xf4\xef\x2d\x15\x4b\x11\x09\x91\x08\x4f\x07\xed\xcb\x93\xcb\xd3\xe3\xb6\x0c\xba\xd4\xbe\x78\x73\x7e\xf2\xe3\xa5\x79\xba\xfc\xd9\x7c\x92\x8b\xe4\x02\x0d\x64\x24\x6d\x4a\x54\xf4\x25\xab\x1b\x0e\x2d\x5c\xde\xdd\xdd\xc8\xf2\x3a\x89\xa0\xd4\x12\x5e\x89\x3f\x5f\xbc\x0e\xbb\xbb\x2a\x36\x41\x38\xbf\xc8\x92\xe1\x10\x10\x3a\x9d\xda\xae\x82\xe3\x18\xe9\x76\x55\x9f\xe7\xc3\x47\x26\x76\xd2\x9a\x43\x7d\x7c\x74\xc9\x42\xb7\x8d\xc0\xc3\xba\x2e\x2f\x86\xdf\x81\x0c\xcb\xa0\x72\x2e\x80\x61\x89\x73\xc0\x1d\xff\x4f\xf0\x77\xb3\x9e\x9d\x4a\x22\x1e\xa4\x03\xc9\xfd\x44\x05\x10\xb4\x84\x16\xcb\xd2\x2c\x45\xe6\xad\x53\xee\x0b\x83\xd4\x5b\x9a\x22\xb5\xc1\x59\xa7\xf3\x81\x27\x59\x6a\xbc\x94\xa3\xab\x9d\x99\xf2\x7e\xa1\x28\xec\xfa\x45\xd2\x14\x15\x31\x62\xdb\x5d\xb8\xca\xaa\xca\x6e\xa3\x36\xba\xd2\xd5\x56\xac\x10\x30\xbc\x91\x5b\x88\x7b\xae\xf2\x70\x55\xa3\xdc\xdb\x84\xba\x93\xe4\x22\x17\xd2\xe9\x1c\x43\x72\x09\x87\xeb\x06\xc4\xed\x76\x79\xc0\x3a\x9d\xed\x63\x71\x30\x0e\x52\x86\x59\x6c\x34\xd1\x8c\x2e\xd6\x08\x06\xd0\x68\x6d\x4a\x9c\x3a\x40\x95\x20\x44\xa7\xc9\x3e\x98\x08\x0b\xbc\x76\xf9\xb0\x30\xde\x07\x0e\xa6\x93\xbe\xd2\x89\xf3\x06\x6b\x0b\x01\xbb\xd5\xde\xc0\x11\x20\x11\x71\xf0\x23\x6c\xc0\x0b\x43\xf1\x89\xfe\x3a\x9d\xf6\x1f\x1f\x2b\x54\x60\x22\x28\xb3\x0f\x62\x51\x8c\xbd\x54\x63\x7f\x01\x06\x81\x47\x2f\x61\x08\x87\x33\x23\x5b\x74\xc5\x19\xa6\x4e\x2b\x68\x3f\x77\x75\x38\x36\xab\x9a\x49\x11\xc4\xbf\x24\x8d\x8e\x4a\xef\xe1\xcd\x24\xc0\x65\x28\x06\xd8\xa2\x37\x1f\xb0\x1b\x4e\x41\xb5\x70\x53\x4a\x93\x75\xf8\xab\xd3\x01\x9c\x7d\x98\x7c\x23\x20\xa4\x83\x84\xd5\x5c\x4f\xd1\x29\xab\x81\x7a\x13\x49\x1b\xf2\xdf\x35\x81\x77\xa7\x73\x2f\xef\x1d\x9f\x08\x14\x27\x53\x9a\x5d\x2d\xb2\x31\xf9\x78\x7e\x22\x0e\x80\x01\x7c\xa2\xef\x7d\x71\x97\xb4\x62\x2f\xbb\xbc\xf8\xb8\x58\x10\xf6\x26\x2b\x05\xc3\x0b\xe1\x1c\x3d\x28\x8d\x91\xe2\xc3\x91\xb4\x63\x93\x13\x73\x72\xaa\x97\xa9\x3a\x2d\x30\x30\x35\xe0\xf6\xe5\x77\x1f\xde\xfe\xdc\x86\x93\xa9\x7a\xf6\x7a\xa8\xcd\x90\xe7\x53\xe4\x51\x6e\x45\xfb\xc6\x78\x09\x08\xb5\x0a\xb4\x42\x42\x44\x01\xce\xa9\x19\x81\xb8\x78\x02\x9b\x6a\xf0\xa2\xc8\x32\x89\x85\x30\xb6\x5f\x17\x3c\x01\xdd\x2c\x9d\x26\x45\x6a\x6c\x75\xee\x14\x24\x0a\xec\xa2\x9e\x30\x53\x01\xd4\x69\xb7\x5c\x80\xce\x9a\x1a\x83\xba\x22\x45\xfd\x9a\x59\xb8\xe3\xac\xb0\x55\x0d\xa9\x73\x9c\xf4\xaa\x4d\xf3\x30\x93\xbd\x00\xa9\x68\x2a\xe7\x66\xd8\x1c\x77\x1e\x34\x98\x47\xae\xe7\x61\x0d\x47\x69\xe3\x3c\xf4\x20\x03\xee\xb6\x29\x3d\xe2\xe6\xb3\xf0\x2d\xaf\x73\xd7\xf2\xda\x8a\x84\x55\xe6\x1e\x85\x50\x6d\x46\xa0\x7c\x48\x47\x70\xd8\x14\x80\xd5\xb1\xa9\x2b\xe0\x26\xfc\x89\xb9\x03\x8f\xcc\xac\x29\x0f\x9d\xc3\x14\x18\x9c\x10\x67\x99\x34\x51\x12\xa7\x43\x52\xc4\x3a\x9d\xe8\x41\x52\xe5\xbd\xac\x8f\xee\xf0\xc3\xd1\x39\xf1\x2b\x95\x8f\xc0\x7b\x19\xdf\x2d\xc6\xa1\x92\xee\xbf\x96\x84\x3d\x5c\x90\x19\x19\xf3\x82\x25\xff\x51\x8e\x19\x5d\xf0\xe1\xcd\x6c\xce\x70\xfb\x3f\x76\xf8\xce\x7f\xb4\x47\xff\xa1\xe8\x40\x8d\xb2\x5b\x15\xc6\xfe\x4d\x96\x0b\xf6\x7d\x4a\xf3\xc9\x56\x49\x98\xd4\xfd\x4e\xb6\x24\xcf\x29\x58\xb7\xad\x7f\xd2\x7c\x57\xdd\x52\xff\x6c\x6f\x9c\x48\x32\x96\xa4\xb2\xe5\xc0\x92\x99\x1c\xcc\x09\xc0\xc8\x21\xba\xb0\x61\x2c\x62\xbc\x35\x02\xc1\x82\xc1\xe3\x15\x74\x47\x90\x60\xca\x3d\x29\x41\x03\xd5\xa9\xe2\x58\x64\x6b\xf3\x5b\x66\x90\xdf\xb2\x31\x5b\xa3\xbe\x3a\x9c\x9c\x2b\x7e\x51\x0f\x17\x06\xa3\x32\xd7\x94\x43\x9d\x87\x34\x07\x80\x9a\x9b\x19\x4a\xa3\xfc\x98\x02\x85\x69\x05\x8a\xb7\x7a\x5f\x9a\x88\xca\x2a\x4b\xf4\x28\xd6\xb5\x60\xfb\x3a\x8c\xdc\x38\xa6\x19\xa9\xd9\x8a\x4b\xfd\x6b\xaa\x60\x69\xcd\xcd\x56\xc9\x0f\x24\xb5\x42\xc3\x6b\x5e\x4b\x3c\xae\x4c\xa1\x2b\xee\x12\xf8\x31\x26\x7d\xd7\x61\xd2\x1d\x1d\x34\x77\x98\x75\x6e\x98\x75\xdb\xf0\xbd\xdb\x7b\xbf\xa6\xf7\xe3\xfa\x21\x0a\xfa\x56\x9c\xda\x0a\x89\x6b\x2a\x7f\x68\xae\xbc\x55\x5f\xf3\x82\x87\xf9\x31\x2a\x41\xdf\x15\x86\x27\x43\x36\x92\xc7\x30\x57\x44\x8c\x71\x43\x58\xad\x48\x57\x0b\x00\x89\xce\x1a\x76\xc3\x57\x82\xbb\x4e\xda\xff\x79\x33\xa3\xf3\x39\x61\x7f\x5e\x72\x3a\x6b\xa3\x61\x9b\xfc\xba\x28\x18\x2f\xdb\xa8\x4d\xc4\x9a\xed\x5e\x67\xd7\x64\xd6\x1e\x39\x41\x17\x61\x48\xed\x65\x49\xb6\x4a\xce\xe8\x98\xb7\xb5\x3b\xa3\xcc\xc1\xa0\xaf\xaa\x84\xa0\xf6\xd5\x15\x29\xdf\x17\x93\xe5\x8c\xb4\xd1\x67\xa9\xe4\xdc\xee\xad\x04\x1e\xcd\xca\x4a\x2c\x4a\x38\x7d\xdb\xa4\x22\xbe\xe4\x8f\x8f\x6d\x59\x5c\xac\xc9\x34\xa3\xb3\x25\x23\x90\xa1\x49\xb4\x42\x6f\xf2\x1a\xfd\x67\xff\x80\xbf\x32\x19\x8e\xdc\x64\x62\x6a\xcd\xcc\xb7\x21\x1f\x39\x32\x91\xbc\xd3\xd1\x69\x26\x6c\x24\xc5\xd4\xde\x91\x2c\xc9\x05\xdb\xdd\x3b\x28\x5e\x51\xdd\x6a\xa1\x5b\xcd\x30\x1d\x16\xa3\x16\x19\x66\x23\x9c\x0f\x33\xd7\x59\x09\x91\xee\x94\xce\x66\x67\xcb\xd9\xac\xac\x19\xb1\x98\xb3\xf4\x83\x80\x2c\x8d\xb0\xd9\x32\xb4\xff\x90\x8d\x64\xbc\x4d\x8b\x31\x48\x97\xe4\xe5\x92\x91\xef\x97\x74\x82\x0b\x6b\x09\x4b\x7f\x93\xaf\x28\x22\xe0\x5b\x85\x33\x44\xba\xcb\xfc\x9e\x65\x7e\xc0\x7a\x27\xbd\x49\xe5\x5e\x39\x86\x34\xef\x64\xb2\x05\x7b\xb6\xc5\x8b\xad\x6b\xb2\xb5\x60\xa4\x24\x39\x77\x12\x77\xc0\x20\xa0\x68\x75\x23\xeb\xda\xe6\x7e\x75\x27\x0b\x84\xcf\xca\xfb\xd1\x06\xdb\x4e\xb9\xb6\x67\x41\x27\x5b\x85\x28\x8f\xae\xdf\x02\x26\xd6\xc2\x51\xfd\x86\xab\x89\x38\x46\x6c\x58\xd7\xb8\x38\x3d\x79\x73\x8c\x49\xf7\x2d\x1d\xf3\x0b\x22\xde\x4b\xf3\x79\x39\x08\x25\xf9\x52\x40\xfe\x89\x3c\x94\xea\x2a\xec\x59\x1c\x46\x3d\x77\xd7\xab\x1b\xb1\x01\x3b\x3b\xb9\x3d\xca\x45\xb5\xc0\xe3\xa3\xa8\x65\x8b\x64\x16\x17\xab\xbe\x54\x7c\x00\xe9\xeb\x24\xbd\x7e\x1b\xdd\xdc\xe4\x76\x37\x07\xb3\xcb\x26\x93\x98\xe7\x6d\x18\x3b\x94\x1c\x9a\x16\x87\x64\x84\xb5\x75\xad\x78\x14\x53\x19\x29\x7d\x65\x4d\x98\xd0\x48\x73\x3a\xee\xa7\xd3\xea\x40\x2d\x44\xa7\x53\xfd\x28\xbf\x8c\xac\x2a\x4f\x6d\x4d\xa9\xa2\x5b\x35\xae\x83\x34\x14\xd0\xd9\xe1\x74\x50\x3d\xe3\x09\x5a\x13\x0d\x2c\x9e\xf3\xc2\x84\xf9\xf3\xec\x1e\xb4\xd5\x11\xf3\xf3\x40\x54\x43\x2e\x69\x9b\x3d\xf7\x95\x72\x21\x8f\xdc\xbb\x32\x36\x94\x74\x0a\xb2\x15\x86\x7c\xb7\x3f\x42\x4e\x38\x3c\xf8\x4e\x44\xef\x2a\xb4\x7d\x44\x79\x6b\xa2\x4c\xb9\x7d\x36\x1b\x6a\x80\x15\xc5\x5a\x5d\x7f\x10\x23\xa9\xa5\x0f\xcb\xb2\xe5\x1c\xb3\xca\x32\xda\xd8\xec\x92\x3c\x33\xe1\xd9\x95\x02\x57\x70\x47\x64\xa5\x62\x92\x35\x6e\xae\x0a\x30\xdd\xe8\xc1\x45\x5c\xa7\x8d\x20\xcd\xac\xf8\x08\x59\x17\x32\x3a\xab\x2d\x24\x3e\xca\x2c\x64\x41\x48\x2d\xdb\x06\xb6\x25\x25\x68\xc5\x33\x39\x48\x80\x18\x8e\xfc\xdc\x75\xd1\xc4\x6e\xdc\xc1\x10\xca\xe4\x78\xa5\xa3\x3f\x6a\x4b\xef\xb8\x7f\xbd\xf8\x0a\x01\x05\x6d\xbb\x4d\x46\x41\x30\x7e\x47\xa9\x23\xf3\x15\x2b\xb1\xe5\x0a\xf9\xd6\xdf\x01\x6a\x57\x7d\x06\xf1\x1d\xa4\x84\x42\xa7\x56\x94\xb8\xc3\x58\x84\x0e\x12\x0e\x1b\x7e\x28\xff\x48\x58\x50\x18\x45\x2e\x25\x01\xce\x8a\xdc\x61\x59\x02\x29\x3b\x0b\x8e\xe4\xb3\xf8\x0e\x96\x04\xb2\xc9\x3a\x4f\x3b\xd8\x0b\xb3\xce\x87\x09\x57\x3d\x99\xc6\x75\xbb\x32\x1e\x86\xd7\xbf\xb3\x99\x44\x06\x6c\xae\x48\x97\x1d\xde\x9c\xdc\x1d\x12\x77\x2e\xf0\xc7\x6b\x50\x46\x47\x97\x7f\x0e\xe5\x1f\x35\x15\xf8\x33\x70\xfb\x53\x73\x36\xb8\xce\xb9\xa1\x66\x2a\x38\xf0\x3a\x1b\x92\xc8\x34\x1a\x73\x0f\x7e\x23\xa0\xe8\x13\xad\x24\xa5\x10\x5f\xf2\x77\x3b\x73\xff\x43\x87\x48\xe3\x4b\x18\x87\x42\xb1\xea\x40\x98\x7d\xd1\x04\xc5\x18\xb6\x45\xc6\xa9\x1f\xc3\xfd\x2c\x65\x74\x2d\x9f\xa2\x98\x42\xb1\x89\x26\x1d\xa6\x8c\x90\xdf\x48\x32\x1c\xb9\x2e\x93\x82\x56\x99\x84\xc4\xf8\xdd\xdc\x25\xc5\x3d\xe2\x3b\x20\xbd\x61\xb3\xbe\x86\x00\xd7\xbe\x64\x8a\xc8\x71\xdf\x70\x2f\xa9\x1c\x19\x92\xee\x62\x8c\x7b\x23\x0c\xe6\x6f\xe2\x91\x65\xb8\x3f\xc2\x60\xbc\x26\x1e\xa7\x0b\xbc\x37\xc2\x60\x7a\x26\x1e\xcb\x05\xde\x1f\x61\x30\x1c\x83\xc7\x1e\x7e\x22\x1e\x7b\xea\xb1\x8f\x9f\x8a\xc7\xbe\x7c\xe4\x3d\xfc\x6c\x84\xdb\x5c\x7d\xe5\x7d\xfc\x5c\x3c\xaa\xaf\x77\x3d\xfc\x62\x84\xdb\x77\xbd\xf6\x4a\xb0\x01\x89\x3b\x48\xfc\x79\x95\xa6\xe1\xc2\xdd\x53\x46\x76\xa7\x05\x9b\x67\xfc\xcb\x56\xd0\xb1\xca\xb0\x30\x11\x01\x2a\x00\xcd\x2e\x2d\x95\xbb\x72\x2a\x18\xcc\xde\xff\xc7\xdd\xbb\x6e\xb7\x8d\x5c\x09\xa3\xff\xf9\x14\x10\xbf\x84\x01\xc2\x12\x4d\xca\x9e\x9e\x84\x72\x35\x3f\xd9\x92\xba\x35\xb1\x25\x45\x92\xbb\xa7\x87\xe6\x28\x10\x51\x14\xab\x05\xa2\xd8\x85\xa2\x64\x59\xe4\x79\xf6\xb3\x6a\xd7\x1d\x00\x25\x27\x93\xc9\x3a\xeb\xfc\x21\x81\x42\xdd\x2f\xbb\xf6\x7d\x4f\xe4\xad\xbc\xd9\xfc\x03\xab\x40\x4b\xcc\xe1\xaf\x29\x88\xb6\xdb\x9b\xaa\x09\xd1\x73\x21\xbb\xd7\x6b\x9b\xe8\x85\xe1\xf6\x52\xdf\xb3\xc5\x92\x15\xa4\x10\x95\xf4\x2b\xbe\x82\x08\xa8\x5b\x92\xb7\x15\x93\xaf\x97\xcb\x3c\x15\x5e\xda\x47\x96\xd1\x19\x25\x7c\xa3\x46\xa0\xc9\xa9\x6f\x19\x00\xbf\x6d\xe8\x3f\xbf\x55\x15\x7d\x4c\x1f\x6f\xc8\x07\x36\x4d\x25\x68\xa4\xe5\x0f\x80\x90\xd3\xf2\xd8\xe7\x72\x92\xde\xd9\xb2\x74\x5b\x57\xbe\xd4\x77\x2d\xc8\xc9\xe4\xbe\x95\x0f\x6a\x43\x29\x6e\x0e\xec\x5e\xf5\xa8\x92\x8d\xf4\x44\x6e\x63\xfd\xac\x3e\x98\x21\xc2\x8e\x36\x2f\xea\x93\x92\xb7\xcb\xad\xfd\x4e\x39\x80\xd7\x15\xa9\xe9\x83\x4d\x6e\xdf\xd4\x47\x3d\x50\x97\x47\xee\xfc\x6a\xa2\xca\x7a\xe6\x89\x42\xe4\x81\xf0\xde\x55\x86\x60\x36\xe4\x19\xf1\x13\x74\x5f\x7c\xd6\xe9\x9f\x65\x77\xbc\x04\x95\xc5\xed\x27\x3c\x90\x13\xe5\xde\x83\x1e\xab\x0c\x03\xd7\x5b\x97\x23\xd8\x2f\x78\xb0\xe7\x8f\xda\xe5\xb2\xbb\x07\x0f\xe4\x44\xda\x57\xf5\xf5\x17\x4a\xf2\x0c\x0f\xe4\x54\xc2\xa3\x4a\x3d\x4f\x39\x18\x76\x0e\xe4\x4c\xea\x97\xb0\x57\xfc\x16\x0f\xbc\x29\x3c\xe0\xb7\xc1\xa8\xe4\xe7\x7f\x77\x83\x32\x5f\xfd\x03\x80\x07\x72\xea\xfc\x94\x30\x4f\x65\x74\x7f\xf6\x32\x37\x8c\xf2\x90\xdc\xac\x6e\x6f\x09\xc7\x7b\x72\x2e\xcd\x9b\x59\x0c\x4a\x0a\x71\x49\x41\x17\x5d\xbb\x09\xdf\x1b\xc0\xa2\xd4\x3e\xa8\x12\x9f\x8a\xbb\x82\x3d\x14\x78\x4f\xce\xa9\x7e\x51\x5f\xe4\x89\xd8\x93\xf3\xf8\x03\x31\xdb\xd4\x1d\x99\x3d\x39\x8d\xee\x5d\x7d\xff\x51\xab\xdb\xe3\x3d\x39\x99\xe6\x2d\xfc\x76\x9e\xf2\x74\x51\xe2\xbd\xef\xbc\x1c\x2a\xcd\xf4\x47\xc7\xd8\xc4\x7b\xff\x0e\x3d\x32\x21\x37\x55\x2d\x24\x5f\xca\x91\xcb\xf9\x54\xcf\x66\x7f\x14\xd3\x54\xe0\x3d\xd8\x7f\xf0\xdc\x6e\x85\xf3\x71\xf4\x65\xc9\x49\x59\x52\x56\xe0\xd7\xfd\x60\x42\xdc\x17\x0b\xfe\xe1\xa0\x03\xe4\x37\xfa\x61\xb1\x08\xce\x82\xbc\x5a\x2b\xb0\xc2\x48\x7a\x65\xd6\x1f\x88\xce\x21\xe7\x90\x1a\xf7\x1c\xb1\xf0\x66\x50\x7d\xf7\x66\x94\xe9\x4b\xe6\x26\x9d\xde\xdd\xac\x78\x21\x87\xf6\x2f\xe3\x93\xdd\xac\x68\x9e\x9d\xe7\xa9\x90\x97\x1a\xb0\x79\x74\x24\xcd\x90\x39\x51\x12\x71\x45\x17\x84\xad\x04\x0a\xa3\x8c\x54\x58\x14\x74\x16\xb7\x4d\x8a\xa3\xce\xcf\x39\x5b\xd0\xd2\x22\xd3\xfa\xb5\xc7\x49\xc9\xf2\x7b\xcf\x09\x71\x03\xe6\xd6\x13\x73\x52\x80\xe9\x6c\x73\xd5\x1f\x57\x02\xf4\x0e\xcf\x6e\x4a\xc2\xef\x89\x15\x49\xf5\x11\x55\xb6\xaf\x95\xef\x31\x49\x10\xc3\x19\x9b\xae\x94\x4c\x25\x14\xca\xb7\x1d\xef\x87\xf6\x98\x2a\x12\x33\xf4\x34\x9d\xa7\x3c\x9d\x0a\xc2\x0f\x53\x91\xaa\xa9\xab\xf7\xb5\xc0\xdd\x6e\xf1\xfb\x3d\xc4\x7a\x59\x2a\x52\xdc\x6e\x77\x0b\x54\x58\x06\x5d\x3d\x3f\x8f\x09\xea\x27\x9b\x0a\x0f\x47\x73\xea\x74\x37\x9e\xdc\xc4\x0f\x1b\x95\x3c\x45\x10\xa5\x79\x4b\xf4\xf5\x8d\x9b\x4d\xa6\x94\xa2\x1b\x90\x64\x62\x3f\x82\x12\xf6\x26\x8e\x1b\x09\x33\xd7\x21\xe5\x00\x36\x49\x10\x10\xb1\x2f\xf5\xf2\x7f\xbd\x8f\x36\x93\xdf\x1d\xb9\x73\x92\x04\x15\xec\xa1\x81\xe9\x70\x98\x0a\xd2\x2b\xd8\x03\x04\x1c\x93\x04\x96\xdc\xc2\x6a\x34\xa7\x40\x6f\x6d\x36\x8a\xe7\xfa\xea\x73\xd6\x7d\xe5\x76\x7a\xd9\x10\xcc\x59\xb3\xb9\x6c\x88\x6b\x49\xb7\x12\x8c\xc9\x7a\xed\x78\x55\x32\x2d\xed\x09\x52\x8a\x80\x2f\xb7\x0a\x88\x3f\x56\x00\xc7\x71\xbd\xb6\x8f\x57\x10\xa7\xa3\xd3\xa9\x24\x8c\xed\xfb\x47\x22\xe6\x2c\x9b\xb8\x1a\x73\x23\x67\x73\x26\x52\xbb\x03\x44\x71\xdf\x73\x61\xbe\x4f\xdf\xb2\x7d\xda\xc5\x6f\x12\x3a\x8b\xf9\x98\x4e\x14\x2f\x94\x8f\x69\x77\x00\x78\x53\xf2\x54\x60\xda\xba\xe1\x24\xbd\x73\x7e\xbc\x6c\x13\xd3\x2d\x4d\xec\x35\x34\xf1\xdd\xb3\x4d\xec\xee\x6d\x6d\x64\xb6\x45\x5e\xd8\x77\x5a\xc4\x05\x1e\x4f\xea\xfe\xc8\xb0\x30\x3a\x00\x64\x4c\xbb\xaf\xbb\x7c\x82\x52\x6c\x02\x9e\xc8\xa4\xbe\x4c\x5a\xc0\xbc\xc1\xfb\x00\xb2\xf0\xdb\x12\xde\xf6\xe4\x9b\xb2\xe3\xb7\xd1\x1e\x58\xa7\xa3\x4d\x8d\x68\x11\xb1\x11\x53\xdc\xaa\x61\xbb\xbd\x31\x06\xdc\x69\xd2\x30\x84\xac\x22\x61\x41\x85\x5e\x07\xe3\x80\x6c\xf7\x3b\x98\xa6\x84\x7c\x8f\xc5\x98\x63\xda\x8d\x0b\x1c\xb3\x5d\x9a\xbc\xfa\x2e\xd9\x2d\x7e\xff\xdd\x64\x44\x31\xef\x7e\x37\x64\x98\x5b\xc6\xf6\xf7\xe0\x65\x6d\x44\xbb\xdf\x0d\x29\x6c\xd1\xf9\xf3\xce\xee\x2a\xcc\x94\xa7\x8d\x17\x2f\x5e\xcd\xa8\x4c\x52\xd4\xe9\x6f\x2b\xb2\x22\xef\x08\x2d\x6e\xe1\x92\x23\x99\xe5\x73\xaa\xe9\xfb\xab\xfc\xae\x3c\x3e\x7c\x34\x9e\x63\x40\xc7\xc0\xfa\x4c\x85\x1a\x6c\x29\x90\x17\x69\xc6\x01\x83\xd0\x10\xd6\x67\xd2\x6d\xce\x6e\xd2\xfc\x4c\x27\xf2\xe7\xf8\x09\x30\xd9\xc7\x8c\x57\x25\x0c\xe4\xad\xd7\xa6\x71\x1a\x1c\xf0\x6c\xe0\xcb\xf8\xf5\x1f\x49\xf7\x8d\x23\xef\x47\xba\xc6\xa1\xd6\x20\x16\x3d\x50\x15\xa8\x33\x7e\x10\x37\x06\x7f\xba\xef\xe0\xa1\xeb\x06\x18\x57\x88\xe1\xa2\x97\xce\x04\xe1\xad\xda\xfc\x18\x2e\x22\xb2\x6c\xd2\xfa\xc4\x3a\x5f\x9c\xdb\x66\xde\x4b\xaf\xcc\xad\x59\x40\x1d\x4c\x35\x36\x52\xea\x2d\x35\xb5\xe8\x2c\x4e\x75\x7b\xc6\xab\x68\x89\x57\x71\x7d\x19\x92\x16\xc7\xa5\x89\xc5\x7f\xcf\xee\xc0\x30\xfb\x4c\xc1\x99\xa1\x97\x6c\x0f\x60\x8e\xdd\x16\xd8\xcf\xdf\x9a\x56\xf6\x73\x0d\x5a\xdc\xd7\x2e\x7e\x63\x34\x38\x63\x81\xd3\x71\xde\x1d\x4c\x92\x4e\x87\xc7\xe9\x38\x9f\x20\x81\x64\xca\xde\x04\x95\xf0\xf0\x7a\x92\x78\x7b\x6b\xe7\xe5\x49\xac\x0f\xa5\xb7\x58\x95\x02\x10\xfe\xe7\xbf\xc6\x56\xf9\x6a\xb0\xf1\x8f\x3b\x8b\xb7\x9e\x89\x9a\xb7\x3c\xb5\xff\x77\x06\x2a\xd2\x41\x7d\x4f\x7e\xdf\xd7\xa9\xb0\xcf\xe2\x9d\xbe\x8e\x99\x52\xfe\xcc\xf8\x56\x23\xf6\xad\xed\x7e\xdf\xd7\x41\xc8\x2a\x6d\xa8\x10\xc3\xc5\x94\xe4\x8d\x6a\xab\x6a\x83\x82\xca\xaa\x02\x7d\x66\x6f\xeb\x2d\xa6\xb5\x29\x82\x7d\x0c\x61\x97\x93\x56\xb0\xdb\xb4\x44\xc6\xf8\x95\x66\x38\xd7\xca\x59\xd6\x21\xd2\xf7\xbb\x83\x51\x6c\x95\x90\x18\x7a\x93\xa0\x9d\x7e\x32\x8c\x6d\xd6\x6d\xcb\x99\x24\xdf\xef\x0e\x3a\x9d\xb8\x18\x33\x79\x47\x00\xe7\x4b\x4f\x56\x45\x7c\x82\x42\x4f\x2f\xfe\x74\x28\xe9\x89\xce\x80\x9e\x20\x71\xa8\xb4\x2a\xf4\x0d\x60\x40\xbf\xd8\x98\x9a\x3f\x15\xf4\xb7\xd5\x0b\xc1\xf2\x6a\x13\x43\xcc\xc4\x60\x98\x98\x98\x86\x60\x31\xc8\x0f\xce\xe5\x11\x4d\x5c\x94\x34\x3d\xb5\x74\xe6\x22\x11\x59\x0f\x3d\x5b\x87\xb3\xfb\xa6\xa5\x1c\xd5\x0b\x94\x26\xa0\xf3\xa4\x0f\xb3\x57\xa2\x55\x8e\x59\x77\x6f\x82\x39\x92\x0f\xaf\x27\x36\x1c\xc4\xcb\x53\x71\x7d\x4b\x04\x10\x96\x27\xc5\x8c\xd5\x80\xad\x39\x27\x33\x1f\x62\xa1\x37\x89\x62\xe9\x4b\xb0\xf0\x8c\xa6\xcf\x48\x18\x77\x4d\x43\xa1\x51\x40\x02\x8a\x58\xa2\x0e\x69\x6a\xeb\x00\x31\x15\xf8\xe3\x37\x54\x37\x05\x85\x0d\x96\x3c\x15\x31\x43\xd4\x46\xa8\x58\x3e\xc7\xe2\xae\x08\x83\xc7\x06\xf6\xfc\xa6\xee\xba\xa7\x8d\xf7\x7a\x9a\x2e\xc8\x89\x7f\xdf\xd9\xd4\x12\x24\x01\x9c\x64\xab\x29\x09\x90\x67\x0f\x3f\x07\x39\x3b\x79\x88\xe6\x31\x47\x62\xcc\x27\x48\x24\x88\x6c\x82\xe6\x9e\x95\x3c\x95\xd3\x39\x91\x64\x5c\xc3\x04\xa1\x70\xf3\xa8\xca\xc6\x64\x12\x6c\xb0\xb4\x2e\x8b\xff\x85\xad\xa2\x54\x08\xb2\x58\x0a\x92\x45\x82\x45\xa6\x8d\x28\x2d\xa2\x54\xd3\x76\x45\x94\x46\x50\x63\x14\xb7\xbb\xa4\xdb\x4e\x22\x31\x4f\x45\x94\x31\x52\x16\x7f\x10\x11\xf9\x42\x4b\xd1\x4e\x5a\x56\x2e\xcf\xff\x69\xed\xcc\x18\x8f\xd2\x48\x6d\xd2\xe6\x46\x7d\x08\x50\x5b\x22\x3a\x4a\xbd\xf3\xad\xe3\x43\xb3\x64\x98\x6a\xe6\xbd\x7e\x7f\x16\x05\x68\x55\x43\x13\x0e\x7c\xfc\xb3\xb2\x09\xac\x22\x48\xbd\x3b\x6f\x8b\x7d\xc0\x84\xab\x45\xc6\x0d\x79\x27\x68\x67\x80\xe1\xa2\xf4\x57\x93\x4f\x12\x73\x69\xc4\x09\x9c\xc9\x86\xa2\xdd\x2e\x32\x77\x50\xb5\x7d\x77\xd1\x81\xb6\x24\x9d\xc5\xe0\x25\xd2\xdc\x4a\x03\xef\x26\x7c\x19\x18\x38\x61\x0e\x40\xf4\xa7\x8d\xb9\x40\x6a\x93\x61\xd4\x59\xf6\x93\xfa\xd8\xd9\x04\x55\xc7\x88\x0a\x79\x4c\x2a\xed\x03\xe1\xde\xed\xb6\x9c\xda\x91\x12\x9b\xd8\xb3\xbc\x08\xe5\x4b\xca\x1b\x81\xd0\x16\xd3\xfb\x3b\xca\x91\xb9\xf2\x21\xc1\x6d\x88\x1b\x97\x03\x4e\xdd\x7d\xc0\xdb\x40\x8f\x0d\x92\x15\xdb\xde\xad\x73\x16\x01\xe3\xaf\xaa\x02\xc9\xc3\x00\xbe\xfa\x93\x7d\x7f\xb2\x8b\x84\x6b\xc1\xb4\xa7\x20\xd4\x9f\xb4\x2c\x28\x57\x34\x94\xff\x0d\xa5\xde\xeb\x60\x82\x4a\x43\x76\xa6\xad\x0a\x53\x04\x97\xa3\x98\x63\x26\xeb\x56\x7a\x68\x96\x70\x31\x24\x68\xd9\xe9\xa4\x11\x50\x30\x02\xcb\xac\xc9\x38\x9d\x0c\x1b\xf8\x2a\x0c\xae\xb3\x01\xb2\x9d\x65\x09\x2a\xbe\xa7\xc6\xe3\x5d\xb1\x4b\x5b\xc4\xd3\x27\x5a\x25\x1e\x42\xd8\xdf\xcf\xdf\xae\xf6\xf3\x6e\x37\x21\xe3\x7c\xe2\xf5\x3d\xef\x3a\xf7\xca\x63\x8e\x04\x22\x1e\xd1\x7a\x63\xe5\x70\xb7\x1a\x9e\x6b\xf6\xbb\xe3\x11\x20\x81\x89\x9c\x0f\x8e\x89\x9c\x87\x02\x93\xf1\xde\x44\xd3\x53\x16\x43\x29\x46\x46\xc3\x78\xd8\x07\xd5\x6f\x83\xf0\xa6\xb8\x18\xb3\xdd\xc1\xa4\x55\x2a\x5b\x23\xea\xe2\x61\x18\x77\x18\x83\x7e\x62\x88\xb8\xb1\x06\xab\x5e\x0f\xaf\xc3\x15\x47\x60\x53\xbb\x27\xa1\x6a\x65\xe9\x93\x70\x6d\x11\x0d\xd7\x4f\x19\x2e\xba\x15\x67\xdb\x47\xdc\x22\x98\xc9\x1a\x04\x66\x63\x5f\x47\x23\x2e\x30\x1b\xef\x4d\x92\x11\xc5\xfd\x61\x29\x11\x0f\xed\x2b\x63\xbd\x8e\x39\xde\x01\x84\x04\xb9\x54\x33\x26\xed\x1c\xd5\x0d\x9c\xca\x21\x23\x3e\x81\xdd\xff\x80\xfb\xe8\x08\xf7\xd1\x19\xee\xa3\x4b\xdc\x47\x12\x7e\x1e\xe0\x3e\xba\xc3\x7d\x74\x8e\xfb\xe8\x02\xf7\xd1\x15\xee\xa3\xf7\xb8\x8f\x3e\xe2\x3e\xfa\x15\xf7\xd1\x09\xee\xa3\x43\xdc\x47\xa7\xb8\x8f\x3e\xe0\x3e\x3a\xc6\x7d\xf4\x15\xf7\xd1\x3b\xdc\x47\x9f\x70\x1f\xfd\xf8\xec\xbd\x6b\x0d\x2f\x14\x05\x75\x78\xf4\xee\xd3\x0f\x36\x18\xb5\xd6\x59\x31\x96\xe0\x81\xaf\x66\x95\x74\x19\xe8\xe1\x5c\x93\x7b\x52\x88\xf7\x69\x9e\xdf\xa4\xd3\xbb\x12\x3f\x91\x22\x1b\x8e\x27\x08\x1c\xee\x0d\xc7\x93\x8d\x91\x5e\xd3\x05\x31\xfc\xa1\x93\x2c\x88\x3d\x25\xbf\x94\xae\xc2\x74\x25\x18\x5f\x15\xb6\x47\x26\xe1\xb2\x12\xb4\x2a\x40\x01\x42\x4a\x77\xbd\x7e\xda\xd4\x23\x27\xfb\x79\x0c\xc3\x15\xf0\x44\x45\x79\x5d\xfb\x49\x78\x6b\xe6\xe1\xb6\xcc\x1e\x78\xed\x9b\xb1\xb0\xe2\x9d\x9c\x87\xb0\x36\x9d\xb8\x5e\xdf\xdb\x5c\x47\x45\x56\xcd\x73\x54\x64\x2e\x07\x44\x5e\xbc\x58\x15\x47\x5f\x96\x94\x93\xec\x4a\x4d\x99\xfa\xc6\x2b\xc9\xe0\x49\x46\xa9\xac\xfb\xa5\x0f\xd4\x2c\x1e\x15\x81\x40\xff\x6b\xb7\xab\x08\x28\x6e\xe7\x19\x6c\x85\xfc\x55\xe0\x4d\x4b\xc0\x7b\xd7\xa4\xc8\x24\x4d\xa5\x63\xf8\x54\x06\x79\x1d\xf0\xb8\xd7\x6b\xa6\xe3\x3a\x2d\x0d\xd7\x5b\x47\x78\xae\x76\x2e\x79\x4e\x99\x0b\x36\x95\xdf\xfd\x23\x6d\x21\x4c\x5c\xfc\x55\xc5\x30\x08\x8d\x06\xcc\x6e\xd6\x35\xed\x58\xaf\xcf\x66\x60\xa3\x98\xd8\x60\x18\x8a\x96\xd3\x3d\x8a\x93\x64\x18\x7b\x26\xb1\x9f\xba\xdd\x86\xd3\x60\x7c\x5c\x25\xe8\x9d\xc4\x03\x1a\xdb\x06\xb8\xbd\xac\xa0\x0e\xa0\x72\x7e\x69\xea\xbc\x16\x9c\xde\xde\x12\x1e\xb7\x61\xa0\x6d\x24\xb1\xd8\x24\xdc\x4a\x4a\x93\x1e\xd4\xc4\x48\xb8\x94\x67\xb6\x1a\x58\x98\x01\x28\xb2\x05\xb1\x7f\xb5\x12\xa7\xbb\x78\x76\xec\xd1\xf0\x30\xc7\xab\xc7\x25\xb1\x96\x08\xea\x58\x47\x92\x6c\x8f\x6e\x48\x94\x5a\x8e\x7a\x3b\x08\xfd\x52\x81\x02\x55\x04\x98\x6f\xab\x1e\x0c\x1d\x64\xef\x23\xa8\x20\x02\xf4\x33\xba\x21\xd3\x74\x25\x2f\x6f\x85\x76\x82\x33\x03\x8b\x77\x5a\xfd\x0f\x39\xba\xd9\x6c\xbb\xab\x80\xe6\x3e\xed\x90\xf5\xfa\x5b\xfb\x35\x9b\xfd\x1d\x1d\x53\x67\x60\x67\x00\x41\x64\x92\xd0\xfa\x86\xfb\xd6\x37\x9a\x27\x2b\x20\xa8\xcb\x4e\x1f\x71\x6b\xfe\x84\x06\x09\xa2\xbb\xbb\x80\xd1\xef\x14\xdf\xd0\xb7\xa9\x59\x1f\x8b\xa2\xfb\x5d\x82\x30\x9d\xab\xe0\xbc\x7c\x31\xe7\xe5\xef\xbc\xee\x03\x74\x5f\x42\x9c\xd8\xd8\x5b\xf1\xde\xaf\x2c\x3c\x93\x07\xff\x94\x36\x64\xad\x5e\x23\x19\x99\x91\x2a\x81\x9a\x3c\xdd\x75\xbb\x1e\x4d\x50\x45\x08\xb4\x30\x4a\xe1\x4a\xc5\xf7\xaf\x47\xc5\xee\xeb\x61\x3f\x41\x0c\xbf\xde\x67\x6f\x0b\x15\x7f\x6e\xcc\x76\x5f\xfb\xd8\x12\x0b\xfb\x61\xc8\x25\x5f\x7c\x02\x17\x3a\x9f\xf4\xa6\x20\xf9\x8c\x21\xc2\x12\x6f\x22\x12\x93\xa7\x73\xaf\x83\xa2\xde\x41\xee\x75\x50\x7c\x3f\x18\x89\xdd\x81\xec\x60\x81\x07\xfb\xc5\x5b\xb1\x5f\xc0\x6e\x29\x76\x07\x7e\x07\x8b\x89\x96\x7c\x56\x66\x97\x83\xfb\x58\x85\xb8\x52\x85\xb0\x52\x89\xa8\xad\xb0\xbb\xe5\x47\x96\x32\xd4\x2c\xf6\x70\xce\x95\xea\xb9\x01\x58\x71\x62\xc7\x14\x13\x1d\x4a\x7f\x67\x80\x56\xc1\x68\x21\xc8\xf9\x4d\x5e\xd5\x27\xbc\xb0\x9e\x1b\xfe\x29\x8d\xc3\x8d\xb3\x40\x63\x21\x09\x34\x1d\xaf\x16\x76\xc4\x99\x04\xac\xd5\x5d\x71\xf5\x2f\xdb\x15\xb2\xf9\x6f\xdf\x19\x95\xce\x26\x4f\xef\xff\xff\xb6\x3b\xfa\x66\x77\x58\x71\x65\x03\x97\xf5\xa3\xb9\xa7\xf2\x54\x10\xbe\x45\x2e\x89\xb8\xfa\xec\x97\xff\xd5\x02\x96\x9b\xbf\x97\x56\x21\xe3\xd7\x15\xf8\x02\xb5\xc7\x86\xcd\x25\xdb\x93\xe0\x56\x88\x3c\xf0\x99\x75\xe2\xe1\x17\xd7\x5b\x1b\xe5\x58\xc8\x46\x0b\x2c\x64\xa3\x14\x0b\xd9\x28\xc3\x62\xfc\x5a\x4e\xb7\x18\xbf\x91\xd3\xed\xb8\x41\xeb\x75\x8a\x56\x78\x0a\x21\xf0\x7d\x14\xd8\x45\x1e\x59\x25\x26\xa0\x8e\xea\xa6\xcc\x59\x8e\x1e\x87\x14\xb1\x04\x95\x86\xd5\x0d\x20\x52\xf5\x5f\x91\x35\x36\x90\x25\x54\x37\x5e\x75\x07\x13\xad\x7b\xbd\xea\xbe\x69\x05\xdf\xf2\xc9\x0e\xc6\x8f\x56\x0a\x62\x53\x31\xf5\xa2\x74\xc0\x29\x93\xf8\xd9\x34\x98\x94\xc3\x7f\xf6\xa4\x28\x6f\x14\xa9\xd9\x8c\xba\x37\x28\xd7\x73\xb4\x72\x13\x93\xff\x63\x13\xa3\xf4\x3a\x43\x04\x54\xc9\xa0\xbb\x0c\xcd\x71\xde\x7d\xd3\x5a\x8d\xe7\xf2\x56\x7e\x04\x12\xf5\x31\x41\x04\xaf\x40\x56\xa2\x1c\xcb\xe1\x2c\x9e\xe9\x7e\xe4\xdd\xef\x30\xc6\xcb\x64\x25\x67\x6b\x86\xa0\x1c\x75\xcd\x2c\xc2\x35\xc8\xbb\xff\x36\x09\x66\xde\x5c\xf6\x4b\xd4\x47\x33\x89\xe0\x01\x17\x71\x91\xa0\xa6\x4c\x39\xfa\x2e\xd9\xc8\x3d\x93\x9b\xa1\x71\x02\x88\x67\x9e\x5f\x79\xf4\x54\x1c\xae\x99\x42\x60\x35\x8d\xe0\xad\xdb\xa9\x45\x10\xad\xb0\xde\xd5\xb0\x85\x18\xab\x20\xc3\xb2\xfa\x79\x5a\xd6\xeb\x0e\x75\x7e\xd5\x20\xaa\x62\x13\x8d\x6b\xbb\x2e\x56\xb9\x5b\x1f\xba\x5d\x64\x2c\x8c\x0c\xa6\xde\x7a\x51\xe4\x3f\xf2\x7b\xfa\x41\x6e\x0b\xe8\x5e\x4c\x92\xe1\x4e\x6c\x8c\xbe\x24\xc2\xbf\x5e\xef\x10\x85\x7a\xc3\x93\xe2\x6e\x26\x9d\x8e\x4e\xd4\x9d\xd2\x16\x20\x21\xb4\xab\x1b\x0b\x54\xa1\xa1\x2c\xd3\xcc\xb9\xf3\xcd\x47\x5a\x86\x79\x08\x00\x57\x0f\xf2\x49\x4f\xcc\xb0\x4e\xee\xa2\x29\x5b\x15\x82\x70\x1d\x3a\xd1\xbc\x21\x35\xc3\xc3\x59\x70\x7c\xd1\x77\x68\x2f\x41\x01\x61\xa2\x83\xd0\x54\x48\x11\x7b\x41\xd5\x29\x19\xf0\x26\xde\xa8\x78\x2d\x3a\x9d\x1a\x73\x50\x0f\x63\x03\xde\x42\x15\x45\xb8\x4d\x8d\xbf\xd2\x05\xcd\xe2\x72\xbc\x6b\x2c\xea\xcc\x6b\x52\x64\x80\xe2\x92\x0c\x1c\x9c\xb1\x95\xa4\x41\x24\x61\xa4\xb1\x6d\x44\x25\xbe\x2d\xf8\xe3\x53\x61\xd9\xa9\x24\xb1\xae\x6a\x25\x16\x4d\x13\x3a\x8b\xa9\x44\xb3\x15\x1b\xd0\x0b\x50\x13\xf0\x82\xab\x8c\x60\x7d\x66\xcd\x15\x67\x0e\x00\x53\xd2\x9f\xe8\xef\x61\x95\x78\xc2\x48\xc3\x85\xae\x10\x8f\xce\x01\x78\xb5\x4a\xeb\x15\xc5\x52\x86\xa0\xdd\x2a\xd1\x1c\x9f\x77\x00\xea\x48\x6a\x09\x42\x6c\x5c\x63\x44\x9e\xcb\x19\x23\x19\xaf\xb4\x34\x72\x98\xbd\x2a\x33\xf4\xd9\xef\xbe\x00\x28\xae\x4a\x92\x38\x14\xab\xcb\xa0\x00\xfb\xd2\xd2\x6e\x66\xe4\xdc\x66\xff\xc3\x3a\xc6\x09\x2a\x12\xb9\x7c\xce\x8e\xad\x2a\x52\xa2\xc9\x53\x11\x53\xb7\xa6\x50\x58\xd2\xb7\x66\x21\xb6\x94\x6e\xc8\x0f\x3d\x0d\xe0\x59\xfd\x54\x3b\x16\x48\xe5\xb2\xb0\xfa\x49\x16\x52\xbe\xcc\xa6\x52\x73\x53\x41\x63\x9a\x44\x9c\xcd\xd8\x97\xf1\x62\x5c\xbd\xb1\x0a\x94\xe2\x87\x6e\xd7\x70\xba\x1b\x40\x6e\x12\xa4\x01\xbd\x2c\x11\x34\xd5\x34\x35\x03\x68\xbc\x48\x5a\x9e\x70\x33\xd3\x0e\x90\x1d\x7e\xd2\x74\x47\x95\xa8\x8f\x1a\x6a\x7f\xe1\xa2\x4a\xbd\xd5\x70\x30\xfb\x19\x9b\xdf\x86\x61\xee\x0b\xad\xe5\x14\xdc\xb8\x62\xe2\x87\x63\x6e\xea\xb1\xd8\x1d\xa0\xef\x12\x00\x08\xe2\x85\x7b\x15\xed\xf4\x2d\xcf\x08\x7a\xac\xcf\xe1\x96\xdd\xfe\x22\x2f\x04\x9c\xf2\x3d\xe3\x99\xa3\x18\xd3\x89\x3a\xcc\xfa\x58\x85\x0c\xbf\xda\x7e\x7d\x89\xab\xea\xc3\x9e\xe0\xdc\x85\xe0\x2d\x68\xc5\x7c\x85\x53\xa3\x3a\xd2\x98\x2f\xe0\x31\x87\x11\x2d\xcd\x85\x24\x70\xdf\x73\x4e\x6d\x15\x10\x7c\xde\xa9\x11\x5f\x55\x76\xf9\xbe\x78\xcb\xd5\xfa\x82\xd8\x6b\x2c\x26\xdf\xd3\x04\x34\xd6\x5a\x46\xc5\x4c\x74\xdf\xc0\xcc\x32\x89\xc9\x1a\x61\x83\x4c\xde\x93\x98\xa5\x7c\x78\x2d\xe9\x1b\xf9\x60\x70\xb0\x0a\xd0\x73\x14\x4c\x01\xf4\x0b\xd3\xf4\xed\x86\x98\xad\xd2\xb7\x2e\x21\x9a\x8f\x8b\x5a\xa6\xa6\xbd\x53\x5f\xab\xed\x48\xd7\xf6\xaa\x6b\x65\xfc\x6a\x7d\xc7\x6c\x95\x9d\xb0\x05\x80\x99\xca\x9b\x8a\x24\xdb\x19\xf5\xaa\x2f\x2f\x0c\x52\x82\xa3\x9d\x66\x70\xf4\x54\xdf\x1a\x4a\xbc\xd2\xb4\xf2\x88\xe3\x8f\xa9\x98\xf7\x16\xe9\x97\xb8\x8f\xc8\xae\x08\xc0\x8e\xeb\x58\xa5\xac\xa7\x21\xfb\x0c\xcb\xdc\x5e\x93\xdb\xd1\xbb\xfb\x9a\x83\xc5\x0a\xf7\xd8\x5c\xa3\xc4\x4e\x72\x00\xf9\x9f\x83\xe8\xba\xde\xe6\x43\x68\x70\x8c\xba\x30\x21\xd1\x0c\xdf\x6a\xd6\x00\x5c\x1e\x6b\xaa\xac\x3e\xab\xe4\x8b\x30\xfc\x70\xc3\x9d\x07\x5c\xa9\xc5\x47\xca\xd5\xcb\xb0\xe1\x56\xeb\x3f\x6b\x55\x6c\x10\xd1\x2d\x96\xc5\x4f\x4a\xfa\x73\x84\x48\x91\x0d\xcf\x10\x00\xc4\x72\xa8\x53\x2f\x21\xb5\xbf\x41\xba\xad\x72\xf8\xa4\x1a\xc9\x86\xc7\x68\xca\x16\xcb\x9c\xc8\xe7\xaf\x1b\x24\x71\xe2\x2f\x48\x62\x34\xc3\x03\x04\xfc\x9e\xe1\x1d\x32\x73\x30\x3c\x47\x55\x26\xd4\xf0\x02\x59\xae\xd0\xf0\x0a\xf9\x7c\x97\xe1\x7b\xe4\x29\x75\x7f\x44\x70\x2b\x0f\x7f\x45\x86\xe8\x1f\x9e\x20\x43\xea\x0e\x0f\x91\x4f\x41\x0d\x4f\xf5\xeb\xf0\x03\xca\x19\x5b\x96\xc3\x27\xc1\x44\x9a\x0f\xdf\xa1\x82\x94\xb2\xa7\x9f\x36\x1b\xeb\x90\xc5\x07\x6d\xcf\x9a\x5d\x07\x40\xd0\xd9\x5d\xff\xd8\x53\x12\xa5\x39\xfa\xb1\x66\x25\xa0\x53\x24\x16\xa2\xad\x1c\x7e\xc2\x3f\xb6\x9c\xed\xc0\x4f\xda\xa4\x21\x4b\x6f\x77\x21\xbc\xef\xb7\x99\xca\xfd\x03\xf6\x0b\x0d\xd6\x0a\x2f\xc4\xea\xbd\xbe\x27\x5c\xd0\xa9\xd6\x61\xe5\x4d\x2e\xb1\x42\x1f\x06\x06\x4d\x6a\xf6\x1e\xd2\x36\x8c\x86\xe8\x6f\x77\xe4\xf1\x6f\x11\x2d\x23\x4e\x7e\x5b\xc9\x83\xde\x0e\xe2\x38\xd9\x76\xc1\x41\x51\x9a\x65\x3a\xc0\x2b\xf8\x20\xc3\xf2\xa6\xa5\xb3\xb8\x26\x29\xe4\x09\xe4\x3d\xca\x6e\x49\xcc\x90\x2a\xc7\x13\xcf\x77\xee\xbd\x8d\xde\x6e\x59\xfb\x69\xb7\xdb\x54\x0a\x02\xb3\x2b\x97\x5c\x4d\x2d\x15\x5e\x19\x55\xa2\x48\x10\xf3\x5a\x52\xad\x14\xcd\xad\xe8\x12\xb2\x0d\x50\xa7\xa9\x4c\xa7\xcc\x53\x36\xcc\x29\xcc\x0c\xcc\x85\x75\x9b\xe6\x97\x24\x69\x53\x58\x45\x3b\x93\xbd\x87\x34\xbf\xd3\xbe\x39\x5c\x21\xc1\x96\x25\xe3\xa2\x21\x70\x4a\x3a\x55\x5e\x15\xb4\xbd\xad\xd9\x3b\xc6\x17\xfe\xb3\xdb\x26\xd4\xf8\x2c\x6d\x7c\x4e\xcd\x38\x5b\xa6\x62\xee\xbf\x73\x52\xca\xaa\x21\xe5\xe5\x2d\xb6\x75\x73\x2d\x68\x59\xd2\xe2\x36\xba\x23\x8f\x9e\xeb\x6c\x09\x44\xfb\x6b\xaf\x5b\xa8\xc0\xfd\xfd\xe2\x2d\x07\x4e\x2c\x9d\xc5\x5a\x6d\x68\x5c\x4c\x92\xde\x1d\x79\x0c\xd0\xd0\x80\xf9\xa8\x47\xc5\xbb\x8a\x74\x18\xf3\x09\x7e\xa2\xd9\x97\x21\x47\x12\x86\x10\x74\x9f\xe6\x96\x06\x50\x7e\xe1\x67\xb9\xf2\x08\x6f\x54\x2c\x36\x8d\x6b\x5d\x61\xc2\xab\x3b\x6c\x4e\xa6\x77\xf2\x5d\x76\xc9\x0d\x06\x86\xb2\x65\x1c\x62\x5c\x00\x0e\xdd\xa3\xd9\x17\x3d\x80\x96\x08\x3a\x2d\x7b\x0c\x9f\x11\xe9\x49\x34\x40\xde\x16\x81\x17\xb5\x34\xbf\xab\xef\x04\x1d\x22\xc5\x63\x79\xf7\x0d\x62\x5f\xf5\xe3\xa3\xae\xab\xb1\x98\xb4\xb8\x6c\x40\x73\x90\xee\x69\x49\x45\xcc\x51\xbb\x9d\x6c\xdc\xde\xf2\x56\x1e\x55\x77\x25\x8c\xbe\x2e\x01\x25\x7a\x7d\x1a\x78\x0e\xd3\xc7\x69\x4e\xa2\x8c\x08\x70\x95\x33\x8c\xda\x5d\xd1\x6d\x47\x6f\x77\xe5\x03\x9c\x63\x89\xe4\x38\xa5\xf7\xe7\x9c\x38\x69\xca\x64\x4c\xc6\x7c\x32\xf9\x87\x5a\x84\x7e\xba\xe6\x37\x86\xd6\x31\xc1\x66\xbc\x59\x21\x16\x53\x95\x87\xa2\xa2\x75\x5e\xe0\xa6\x56\xb4\xe7\xb9\xca\x4c\xca\xe2\xe1\x6d\x51\x74\xb1\xe9\x0f\x98\xf5\xd8\xae\x17\xe0\xab\xda\x9f\x6f\xe8\x58\x0d\xf5\xf5\x5d\x8c\x98\xb3\xec\xf5\xd2\x24\xa9\x35\xb4\x89\x2d\x47\x54\xf4\x0d\xae\xa8\xa7\x97\xbc\x15\xfb\x44\x3b\x32\x1c\x93\x49\x4f\x1e\x0f\x2c\x29\x34\xbf\x2f\x30\x2f\xdb\xc5\xc3\x41\x1c\x70\x18\x34\xc5\x5e\x37\xa0\x75\x6e\x82\xbe\xc9\x93\xb0\x6f\x41\xbd\xe1\x22\xf5\xd7\x5c\x31\x6f\x94\xc6\x13\xee\xfb\xba\xa0\x63\x36\x51\x06\x00\xb2\x73\xc9\x94\x15\x82\x16\x2b\xe2\x92\xf0\x4e\xdf\x84\x1e\x64\x09\x12\x18\xe3\x14\x8e\xa8\x22\x72\x74\xcb\xff\x0f\x33\x8b\xba\x2a\xe7\x27\xc5\x94\x2d\x68\x71\x1b\x6b\x1d\xe4\xc8\x8b\x27\xa4\x33\x57\x96\xc3\x2f\xf5\x9c\x47\x08\x35\x17\xcf\x86\x11\x02\x5f\x64\x1a\xbc\x41\xff\xd7\x6b\x61\x5d\xdf\x3f\x7b\x7f\x54\x7c\x9d\xa1\x02\xbb\x63\xf2\xb6\x70\xfe\xce\xd4\xf4\xab\xd3\xd2\x12\x31\x95\xb3\x81\xc0\xc7\xa6\xd5\x27\x2e\xbe\xed\xb6\x68\x02\xfd\x8d\x7e\x80\xc6\x5e\xb1\x6e\x77\x82\xfb\x6b\x52\x99\xc0\xd0\x0f\x90\xf1\xc2\x03\xe0\x68\xbc\xbb\xeb\x15\xd7\x4e\x8d\x34\x0a\xe6\x5b\x8f\xfe\xef\xa1\x61\x0f\x3c\x5d\x9e\xa6\x82\xde\x93\xcb\xd5\x92\xd4\xcc\x74\x20\x8c\xbe\x17\xbb\x9e\x1a\xf5\x79\xcf\x2d\x42\xf2\xe4\xa2\x73\xd9\x61\xe3\xd0\x53\x95\x37\x21\xe8\xc9\xba\x0d\x65\x7c\xa8\x7b\xc3\x11\x29\x56\x0b\x8d\x82\xef\x0c\xd0\x03\xa7\x42\x3d\xf7\xd1\x94\x15\x33\x7a\xbb\xd2\xdf\xfa\x9b\x8d\xdc\xad\x4a\x2b\x9f\x27\x48\x40\x50\x08\x39\xe5\x53\x49\x60\xbc\x4f\xf3\xfc\x7d\x08\xb1\x93\xa7\xbe\x8a\x07\xec\x85\x92\xc0\xa1\x96\x77\xbf\x45\xb6\x76\x5d\x93\x6a\x5c\x79\xfe\xe0\x2f\x0c\x84\xbc\xd4\x75\xa7\x08\x24\x34\xf3\x13\x5c\x0c\xdf\x92\xec\x8a\x2c\x24\xc1\x45\x3e\x40\xf8\xd1\xbc\xd6\x4f\x79\x1d\xaf\xd7\xb1\xc0\x44\x39\x14\x8e\xfb\x89\x73\x99\xd6\xe3\xe9\x03\x16\xe0\x2b\xc6\xa7\xb7\x6a\x4c\x26\xd5\xbc\xe8\x74\x58\xb0\x26\x22\xd1\xee\x50\x39\x7c\x41\x3c\x74\xc6\xa6\xbc\xec\x5d\xcd\x69\xe9\x22\x49\x66\xe0\x3f\x6e\xc9\xca\x92\xde\xe4\xe4\xbd\x9b\x8a\x0b\x28\x88\x4b\x79\xb1\xc3\x4c\x42\x98\xbb\xd5\x54\xac\x24\xde\x5a\x73\x4b\xd5\x77\x5d\xae\x6f\xc1\xba\x0d\xae\x42\xa3\x28\xe6\x1a\x0b\xb7\xfc\x78\xae\xf4\xd5\x7a\xde\xa2\xb4\x04\xbe\x20\xb3\x1c\x16\xd3\xa4\xc6\xd4\x49\x18\x91\xe5\xc5\x4b\xc4\xbe\x49\x88\x6c\xc3\x1e\x5b\x47\xc7\xae\xb7\xc7\x8c\x9f\xcd\x80\x6e\x14\x8c\x2b\xd3\xf6\xea\x9a\x19\xf1\x05\xe8\xb3\xb6\x57\xd6\x32\xde\xe2\xee\x2a\x0a\xdf\x7a\xad\x45\x56\x63\xf5\xae\x03\xd0\x32\x3e\x81\x43\x18\xba\x16\x21\xc9\x7a\x1d\x57\x37\x86\xc2\x42\x35\xa2\xd5\x44\x24\x58\x34\x72\xa5\x3c\xb3\x06\xae\xeb\x7c\x14\x5c\x59\xe9\x1a\x13\x0d\xbd\xd3\xfe\x84\x76\x07\x49\xab\x7d\x66\xbc\x1f\xca\x6d\x42\xfc\x99\x06\xb9\x44\x90\xa2\x5d\xff\xca\xbe\x7c\x4c\x97\x50\x66\xbd\x6e\x5f\x12\x55\x3c\x09\xbc\xa6\xcc\x38\x5b\xc4\x5c\x65\x36\xde\x42\x4a\x5d\xe4\xd5\x7f\xc7\xa3\xe1\x27\xba\x3e\x49\x0a\x11\x8f\x86\x7f\x5a\x0f\xbe\x5b\xbf\xde\x4b\xe2\xd1\xf0\x7d\x9e\x2e\x96\x24\x4b\x46\x50\xc9\xef\x5e\x29\x03\x5d\x9e\x84\x23\xdd\x48\xe8\x95\x6c\xb7\x53\xff\xde\x5e\x25\x23\x13\x75\x6f\x33\xac\xc4\xea\x23\x63\xd1\xed\x4e\x36\x9b\x56\xa3\x3a\xd5\x49\x71\x9f\xe6\x34\x33\x36\x12\x91\x60\x91\x0e\x20\x1c\x15\xac\xd8\xa5\x9a\xb3\x10\x19\x89\x4d\xef\xf3\xe7\xe2\xa4\x88\x18\xcf\x08\xd7\x1e\x14\x4d\x1e\x04\x25\x52\x39\x9e\x48\x9d\x9d\x52\xe9\xcd\xcd\xd3\x7b\x12\xa5\x51\x6d\x7f\xc4\x89\xb6\xb0\xe8\xb5\x0d\x5f\x5c\x02\x88\x86\x7c\x89\x72\x35\xa5\x14\x3b\xb5\xbe\xa5\x30\x1b\x40\x39\x92\x56\x7b\xe0\x6c\x86\xec\xc6\xb8\x0d\xd3\x0b\x5c\x73\x80\xa9\xcf\x57\xa7\xd3\xa0\x8a\x5e\x3b\x7b\xc8\xda\x59\xb5\x7c\xdb\xf9\xba\x27\x53\xd1\xe0\xc9\x54\x52\x0c\xad\xa2\xe7\xee\x09\xec\xbf\xac\xd7\x3b\x03\x08\x70\xe6\x00\xae\xc4\x8e\xda\xb0\x80\x6d\x5a\x44\x05\xc4\xea\x31\xc0\x19\xef\xf4\x13\xb4\xed\xba\x2c\x00\x6d\x28\x7c\x0b\xff\xd4\x37\xf5\xde\xf8\x06\xe5\xce\xc2\xbe\x36\x37\xa2\xd3\x31\xfc\xd5\xf5\xba\x61\x7e\xc4\x48\x0c\x49\x60\x4e\x2e\x2b\xd3\x17\x8e\x24\x58\xbe\xb7\x44\x02\x98\xff\xda\x37\x8f\x04\xf3\xd4\x7b\x12\x4d\x84\x59\xb5\x9e\x09\x26\xe3\xc2\xea\xac\xf0\x8d\x8f\x58\xbc\x02\xd3\xc7\xd0\x5f\x85\x66\x7f\xb4\x51\xfb\xff\xaa\x3c\xbb\xb4\x10\x84\x17\x69\x5e\xbe\x22\xc5\x3d\xe5\xac\x50\x5e\x48\xda\x05\xcb\xc8\xee\x42\x23\x14\x0d\xb9\x57\x82\xe6\x65\xe3\x17\x89\xc4\xa6\x14\x5c\x65\x98\xaf\x14\x76\x87\xac\x19\x1c\x3e\x34\x16\x5b\x10\x91\x6e\xfd\x90\xbb\x2f\xd3\xb4\x48\xf9\xe3\xee\x8c\xa4\x62\xc5\x89\xd7\x85\x8c\xdc\xac\x6e\xdb\x28\xf0\xd5\xd1\xdc\xbd\x92\xf9\x83\x92\xfd\xe5\x2c\xcf\xfd\xfc\x2e\xed\x55\x4e\x6f\xbc\xd7\xeb\x05\xfd\x42\xbd\x01\x68\x20\xec\xde\x09\xbf\xa7\x53\xaf\x76\xbd\x63\x2a\xef\xaf\xa6\x6c\xb1\x4c\x9b\x93\x57\x82\x64\x8d\x3d\xd7\x11\x0e\x1b\xbf\x69\x27\x58\xc6\x25\xc9\xab\x7b\xc2\xcb\x6d\x33\x7d\x4f\xc9\x43\xf3\xd2\x71\xb6\x12\xc1\x70\xfc\xed\xf1\x45\x90\x42\xd6\xb9\xab\x23\x86\xb9\x5c\x44\x42\x49\xf7\xca\x57\x45\xce\xd8\xb2\xb9\x16\x99\x75\x17\x02\x78\x6f\x6b\x88\x3d\x04\x4b\x27\x2f\x6d\x3a\xad\xec\x1b\x2f\xf1\x95\x32\x1d\x2e\x77\xb5\xcb\x92\xe6\xa2\xaf\x0c\x68\xf6\x7a\x5d\xdc\xd2\xa2\xf6\xde\x90\x71\xc9\xf2\xc7\x19\xcd\xf3\x60\xaf\x2d\x39\x99\xa6\x82\x64\x0d\x1b\x71\x6a\xdc\x03\xbd\x12\x1a\xdf\xdb\x65\x45\xfe\x58\x75\x10\x63\x4c\x03\x41\xa8\xb4\x42\x39\x9a\xa2\x19\xca\xd0\x1c\x2d\xd1\x02\xdd\xa3\x47\x74\x8b\x6e\xd0\x35\x7a\x40\x47\xe8\x0c\x5d\xa2\x2f\xe8\x00\xdd\xa1\x73\x74\x81\xae\xd0\x7b\xf4\x11\xfd\x8a\x4e\xd0\x21\x3a\x45\x1f\xfe\x57\x18\xb5\xc7\xf5\x7b\x80\x4b\xd0\x2b\xe4\x0d\x43\x17\x00\x4f\x7a\x47\x72\xb8\x9d\xce\x96\x0f\xeb\xf5\xd3\xa6\x75\xdc\xa3\xe5\xa9\x09\xc7\x21\xc1\xf5\xf1\x33\x3e\x44\xda\x50\xae\xbd\xd9\x02\xb6\x8f\x51\xfb\xe8\xf4\xa7\x36\x7a\xba\x25\x62\x08\x7a\x34\x47\xa7\x3f\x85\x54\xc5\x66\x1b\xc8\x3f\x46\xed\x9c\xb1\xbb\xd5\xd2\x2f\xfe\x01\x52\xc0\x8f\x39\x68\x23\xea\xf7\x6a\x8d\xa7\xbd\xa3\x8f\xef\x8e\x2e\xae\x8f\xfe\xf3\xea\xe8\xf4\xf0\xfa\xfc\xe2\xec\xea\xec\xea\x97\xf3\xa3\xcb\x4e\x67\x7b\x47\xab\x79\xdb\xe8\x29\xa4\x7f\x9a\xb9\xfe\xbc\x77\x74\xfa\x53\xaf\x56\x5a\x92\x15\xc7\xb2\xcb\x67\xf2\x70\xe0\x0b\xfb\x88\x8e\x65\xc7\x4d\x6a\xe9\x52\x0f\xdc\xde\xc7\x57\x66\x85\xc3\x74\x2b\xd7\xfa\x68\xbf\x6f\x1d\xcf\x85\x3d\x5c\x4f\xcd\x1d\x7f\x6f\xea\xd8\x3c\xb7\x06\x87\x2a\xcf\x8b\xb5\x1d\xf7\x4c\x16\x35\xf2\x23\x38\x9b\xf8\x57\x6f\x20\x2a\xc9\x8e\xe1\xc4\xfb\xa4\x5d\x83\x1f\xea\x07\x74\xdc\x5b\x10\x7e\x4b\xf0\xa1\xfa\x87\x99\x2c\x00\x7d\x53\xde\xb2\x83\x57\x74\xdc\xfb\xe1\xd3\xc9\xe1\xf5\x5f\x8e\x7e\xc1\xd4\x3e\xca\x32\x2b\x9a\x1d\x33\x2e\xb3\xab\x27\x74\xdc\xa3\x45\x09\x2e\xb0\xa9\x79\x92\x6d\xa5\x77\x44\x79\xb1\xa4\xee\x19\x1d\xf7\xa6\x69\x71\xa2\x0c\xb1\xa9\x7b\x96\xe7\x81\x3f\xda\x74\xfb\x8c\x8e\x81\x6e\xc7\x14\xfe\xd0\x71\x6f\xa5\x7a\xba\x52\x3d\x7c\x6f\xee\x58\xcc\xdc\x33\x3a\xd6\x2e\x12\xf9\x23\x66\xf6\x51\xcd\x07\xe1\x02\x4f\xf5\x83\xac\x3b\xe5\x05\x9e\xc2\x1f\x3a\xee\xc1\xcd\x89\xa7\xea\x1f\xde\x35\x74\x83\x34\xfd\xdc\xf2\xd2\x8f\x57\xc5\xd4\xff\x26\xdf\xd1\x71\x8f\xaf\x8a\x93\xe2\x50\x57\xe6\x5e\xe4\x62\x81\xe5\xf8\x81\xb7\x46\x2a\xdb\x13\xd7\x3e\x1d\x0f\x75\x55\x94\x15\x3f\xca\xcb\x81\xf0\xe1\xb4\xb7\xfd\x23\x32\x9f\x7e\x4e\x79\x43\x01\x2f\x15\xd1\xf2\xbd\xbe\x54\x87\xab\x9e\x7b\xd9\xa8\xd5\xd3\x68\x09\x4e\xbd\x17\x79\xa6\x56\x37\xe5\x94\xd3\x1b\x82\x53\xf7\x8c\x8e\x7b\x27\x21\x22\x83\x9f\x5c\xa9\x61\x50\x85\x2d\x34\xf4\x2b\x58\x15\x7e\xba\xf7\x86\x80\x25\x3a\x4c\x15\x6b\x74\xa3\xe6\x12\xdf\xf5\xae\xf5\xe5\x76\xb1\x2a\x54\x5a\xcf\x61\x37\xf8\xce\x7b\x31\x5f\xc1\xf4\xe9\x4e\xfd\x9b\x34\x5a\x64\x32\x89\x16\x99\x4e\xd1\x7a\x95\x77\xfa\x41\xa7\x5a\x25\xde\x3b\xfb\xa8\xbf\x10\xa8\x80\xd8\xf2\xf3\xb4\xbc\xd4\x52\x53\xa3\xe5\x71\xd7\x90\xa8\x73\x83\xae\xd9\x1d\xfc\xe9\x14\xa5\xec\x74\xa7\xfe\x75\x1a\x38\xd3\xbd\x53\x62\x68\x95\xc2\x54\x5f\x98\xeb\x87\x35\x9e\xb8\xb3\x8f\x95\x2f\x67\xaa\x8c\xff\xaa\x73\x58\xbd\xed\x3b\xfb\x18\xcc\x86\x1d\x87\xff\xba\x0d\x90\xc9\x72\xc8\x04\xe7\xb8\x58\x15\x1f\x00\xdd\x01\x58\x76\x27\x41\xf3\xfb\xe0\x4b\xf5\x42\x81\x0b\xf6\x2b\x5e\xd9\xd5\x35\x7b\x52\x52\xc7\xc7\x3d\x83\x03\xe2\xaf\xe8\xb8\x77\x9d\x11\x15\x1e\x86\x71\xbc\xea\x15\xc0\xc6\x3b\x24\xe5\xf4\x90\x4c\x19\xd0\x7d\x32\x8f\x80\x38\x27\x19\x5e\xf5\xf4\x13\xfa\xda\x4b\x73\x9a\x96\x78\xa5\xfe\x01\xfa\x4c\xe7\xe4\x18\x6a\x91\x1d\x94\x6f\x19\x84\x9c\x50\x80\xcc\x74\xc1\x46\x44\x5a\xd5\x92\xb6\x43\xf5\xeb\x92\x08\x93\xdb\x76\x6c\x2b\x6c\x5f\xc9\x6b\x0a\x58\x57\xd4\x0d\x43\x81\xf9\xeb\x86\x2f\xb8\x31\x3f\xc0\x74\x91\xe2\x12\xfe\xd4\xdd\xa8\x86\xa6\x9e\x7f\xa6\x62\xae\x2f\x1b\x95\xec\x25\xc8\x86\x24\xd9\x9b\x8a\x39\x2c\x82\x7a\x54\x37\xa9\x6a\x4d\x41\xe5\x4b\x78\x55\x0f\xe8\xb8\x77\x7c\x74\x70\xf5\xe9\xe2\xe8\x12\xc7\x7d\x64\xae\x96\x24\x7e\xa2\xe5\x51\x21\x97\x36\x1b\xe6\x3d\xfb\xbc\x41\xb9\xcd\x0f\x03\x83\x09\xc7\xb4\x07\xff\xe8\xb8\xc7\x0a\xbc\xea\x31\x79\x20\xd2\x0c\xdc\x3d\xcb\x1b\x48\x2e\x97\x7b\x93\xdb\x13\x3c\x51\x7b\x9f\xc3\x04\xe8\x72\x91\x1d\xdd\x4b\x08\xb6\x72\xcf\xe8\x58\x9e\x46\x93\x4b\xee\x02\xff\x15\x01\x4e\xc6\x0a\x82\x57\xfa\x01\x52\x14\xd7\x6e\x65\x9e\x20\xed\x5d\x9e\x16\x77\x90\x06\x4f\x90\x76\xae\x42\x41\x40\xaa\x7e\x46\xc7\xbd\x82\x09\x3a\x7b\x34\x9b\xe2\xfd\x3c\x2d\x6e\x65\xfd\x4d\xc9\xe8\x58\x81\xa7\x30\x55\xf6\xb2\x29\x19\x1d\x4b\xc0\x53\xcf\x5b\x4f\x94\x9b\x1c\x9e\x74\x3a\x85\x7c\xd5\x24\x74\xdc\xb3\xc6\xa5\x4f\xe1\x56\x1e\xee\xf4\xd1\x3c\x2d\xcd\xeb\xc1\x74\x4a\xca\x92\xf1\x52\xa2\xc9\x70\x2b\xfa\x99\xf1\xaa\x92\x00\x39\x4a\xc1\x99\xfa\x04\x4f\xe8\xb8\x97\xd3\x1b\x9e\x72\xd5\x17\xfb\xac\xf6\x68\xd0\xcf\xe0\x5d\xed\xc5\xe0\x7b\x59\xf9\x4e\xbe\x2c\x53\x3b\x05\x2a\x4b\x35\x49\x6d\x2e\xe3\x5d\x51\x6d\x2e\xf3\x66\x37\x97\xf7\x39\x4c\x90\xa5\x25\xec\x50\x1e\xec\x0c\x24\x51\x6f\x72\x03\xbb\x72\xcc\x95\x00\xea\x18\xaf\xd4\x3f\x3a\xee\x7d\xd4\xef\xf0\xbf\x1d\x80\xb0\x42\x93\x90\x00\x32\xce\x01\xbb\x55\x49\x80\x9c\x9f\x03\x62\xab\x13\xbe\x19\xdf\x17\xa4\x54\xc4\x2c\x54\x3a\xed\xd1\xf2\x4a\xa5\x40\x9d\x53\xd0\x05\xd3\x09\xd5\x3a\x8f\x7b\xd7\xef\xdc\x3d\x3b\xb3\x68\xcb\x69\xef\xc3\xd9\x0f\x3f\x1c\x5d\x74\x3a\xf1\x71\xef\x03\x03\x1d\xcf\xcc\x7c\x95\xc5\x0e\xf0\x75\xef\x00\x1d\xf7\x34\x85\xf3\x94\xb3\xe9\x70\xd1\xcb\xd9\x14\x3d\x0c\x17\xbd\x07\x94\xa5\xe5\x9c\x70\xfa\x95\x0c\x17\x3d\xfb\x8c\x32\x32\x4d\x17\x24\xd7\xc9\xf6\x05\x79\xa9\x2e\x0d\x00\xe1\xec\x51\xa6\xe9\x47\xb4\x2a\x32\xc2\xcb\x29\xe3\x32\xa7\x7b\x41\xd3\x74\x49\x45\x6a\x6b\x30\x2f\x72\x33\xab\x59\xc3\xd7\xfa\x41\x8e\xd8\x20\x8c\xe7\x9c\x7d\x79\x54\x0b\x77\xdd\xab\x27\x02\x34\x33\x28\x67\x90\xb7\x21\x15\xa9\xeb\x2c\xe5\x04\x5f\x9b\x27\x48\x5b\x3e\x42\xc2\x52\xc1\x99\xa3\xdf\x56\x69\x8e\xaf\xcd\x93\xbe\x09\x8e\x79\xba\x20\x0f\x8c\xdf\x29\x39\xc7\x75\xaf\x96\x06\x38\xdc\xaf\x41\x0c\x9a\xe4\x69\x63\x53\x7b\x9a\x1b\x83\xef\x75\x82\xfb\xe2\x38\x3a\x78\xee\x3e\x2a\xb4\xfd\xba\x67\x50\xf6\xf7\xd0\x63\xe0\x26\x5e\x7b\x2f\x40\x7d\x58\x1e\xe5\xb5\xf7\x62\xea\x80\x19\x30\x15\xc1\x8b\x9d\x73\xf3\xc9\x7b\x93\xa5\xa6\x1e\x76\x2b\x0b\xfa\xef\xd0\x13\x4e\xec\x9a\xb9\x17\x74\xdc\x53\xa2\x3d\xd3\x73\xef\x0d\x4a\x2d\x1f\x6d\xef\xd5\xa3\x3c\x94\x2b\x60\x90\x06\x43\xa8\xa5\xb9\x7c\xa6\x6a\xff\x15\x1d\xf7\x94\xa7\x4b\xd5\xcf\x4b\xc5\x11\xc2\xd7\x4d\xa9\x72\xb6\xe4\xad\x44\x32\x39\x55\xea\x09\x1d\xf7\xb4\xa7\xd9\x60\x07\xd5\xd2\x60\xd6\xe4\x2a\xea\x6e\xba\x17\x79\x45\x03\xcb\x1a\x5f\xeb\x07\xd8\x49\xa6\xb3\xfa\xa9\x71\xa7\xb3\xe2\x03\x4b\x33\x7c\xa5\x1f\x14\x1a\x28\x9f\x7e\x64\xec\xae\xc4\x57\xc1\xab\x26\xb6\xec\x5e\x71\x14\x8c\x4b\x56\xdd\x5f\x7a\xdf\x2e\xed\xc6\x73\x69\xd7\xc1\x50\xaf\x83\x41\x5e\x5c\xfe\x74\x2e\x4f\xdb\xe5\x4f\xe7\xb0\xa4\x86\x61\x72\xed\x9e\x65\x0d\xca\x15\x13\x7e\xec\xa9\x07\x85\x1f\x2e\x49\x91\x91\x42\xfc\x85\x3c\xc2\x0e\x15\xf8\xb6\x57\x4f\x44\x5f\x7b\x04\x2e\xf8\x1b\xf5\x8f\xbe\xca\xbb\xf9\x48\x27\x99\x47\x48\x2d\x08\xa4\x14\x44\xe5\x51\x9f\xd1\xd7\xde\x0d\x63\x39\xbe\x81\x3f\xf4\x55\x05\x5f\xc3\x37\xea\x5f\xd6\x0e\x47\xf8\x46\xfd\xa3\xaf\xbd\x5b\x59\xf0\x56\xc0\x13\x81\x47\x59\x5f\x2e\x53\x73\x01\x4f\x04\x1e\x65\x2a\x2b\xc8\xcf\xa9\xec\x87\x7a\x40\x5f\x7b\x9c\xa4\x59\x59\x4d\x38\x2b\x72\x99\xc9\x3c\xa2\xaf\x96\x00\xa5\xc5\xed\x01\xe0\xbb\x37\xb5\x24\x89\x0a\x17\x19\xbe\x91\xbf\xb2\x29\x2e\x6b\xe5\xe8\x6b\xaf\x5c\x2d\xf0\x8d\xfc\x95\x83\xa1\x85\x1c\x0a\x2d\x60\x60\x5f\x60\x58\x5f\xe0\x79\x09\xcf\x4b\x99\x5f\x6e\xf0\x1b\xf8\x93\x6f\x44\x1c\xd2\xd9\x4c\x26\xa8\x27\x95\xfb\xdd\xa3\xca\xff\x4e\xf6\x6e\x46\x73\x49\xe7\xdc\xe8\x07\x9b\x02\x99\xcc\x23\xfa\xda\x5b\x15\xf4\x37\x7c\x03\x7f\xfa\x0d\x72\xa8\x07\x95\xc2\x0a\x95\xc0\x64\x0f\x81\x55\x5a\xca\x4d\x7d\xe3\x9e\xd1\xd7\xde\x54\x6e\x46\x48\xd5\x4f\xdb\xef\xc6\xcb\xab\x8b\x93\xd3\x1f\x2e\xdb\x20\xe0\xf6\xe4\xd7\x8a\x2d\xb5\x00\xa4\x58\xdd\x61\x25\xdc\x96\x0b\x00\xc8\x3a\xe5\xb9\x4b\xf7\xdd\xd9\xd9\xd5\xd1\x61\x43\xbd\x75\xe6\xd7\xca\x67\x0d\x5e\x92\x94\x4f\xe7\x87\xb4\x04\xf4\x19\xda\x04\x9c\x67\x4b\x06\xb8\xa3\x9d\x33\xfd\x07\xf7\x8c\x1e\xb4\x3f\xf2\xde\x5c\xb9\x25\x7f\xd0\x0f\xe8\xd8\x38\x2a\x37\x39\x64\x15\x73\x32\xbd\xbb\x61\x5f\x64\x0d\xfa\x51\x82\x36\xf2\x45\x1c\x83\x63\xfa\x07\xf7\xac\xd3\x0f\x38\x49\x75\xb2\x7c\x44\xc7\x10\xb2\xc5\xef\x4a\xf0\x6e\x88\x1a\xf3\xfe\x31\x2d\xd2\x5b\xe8\x43\x43\xaa\xcc\x3c\xad\xa4\xbd\x4f\x97\xe9\x0d\xcd\x29\xe0\x78\x0f\xf2\x16\xb7\xaf\xba\x6e\x13\x9a\x20\xa8\xba\x92\x28\xb3\x2e\xc2\xa4\x4a\xc5\xe6\xeb\xfb\x4a\x03\xb7\x5e\x37\x8d\xfa\x02\x7e\xe8\x35\x25\x57\xc7\xea\x65\x6f\x4a\x06\xca\x55\x3f\xcb\xf3\xec\xe6\xf0\x83\x0f\x35\xa7\xe9\x52\xac\x38\xb9\x90\x00\x8d\x5f\x71\x42\xf0\xb4\x57\x4b\x93\x8b\x0b\x77\xe5\x4d\xca\x4b\xfc\x64\xaa\x1d\x3e\xf4\xcc\x23\xfa\x24\x68\x5e\x0e\x9f\x48\x39\x4d\x97\x9e\x7b\xf9\xe1\x43\xaf\x9a\xb4\x91\x18\xc4\x8f\x57\x1f\x3f\xbc\xdb\x56\xd9\x06\x6d\xe1\xd3\x6a\xc4\xaf\xd3\x89\xb5\x90\xdd\xc9\xdd\xe7\x62\x91\x5f\xa6\x33\x52\x67\x7b\xc7\x7d\xf4\x60\x3f\x27\x3a\x8c\x6c\x62\xb1\x48\x57\xd2\xe5\x72\x1f\x69\x29\x7b\xaa\x3f\xbb\x97\xed\x27\xf4\xea\xe8\xe3\xf9\x87\x83\x2b\xe0\x48\xcb\x63\x08\x6b\x69\xd6\x44\x9d\xf6\x07\x85\x1b\x9b\xa4\x67\x8f\x32\x74\xf4\xa7\xa3\x8b\xcb\x93\xb3\x53\x7c\xe4\x61\xca\xff\xf1\xd7\x4f\x47\x17\xbf\x5c\x9f\x9c\x5e\x1d\xfd\x70\x71\x70\x75\x72\x76\xda\xe9\xec\x9c\xf5\x7e\xfd\xeb\x8a\xf0\x47\x73\x8e\x9f\xe1\xa0\xff\x6e\x2b\x03\xc1\x54\xb2\xa9\x2a\xdf\x04\x3d\xeb\xab\x9e\x51\xf2\x00\x2b\x8f\x9f\x68\x79\x49\x17\xcb\x9c\xbc\xcf\xe9\xf4\x6e\x78\xd6\x0b\xde\x25\x44\xd2\x41\x03\x64\x91\xe1\x59\x2f\x4c\x90\xdf\xe5\xbf\x4e\x52\xdf\xbd\x04\xf3\x5d\x05\x8b\x75\x9f\xd5\xbb\xf9\xaa\xe2\x1b\x5c\x90\xa9\xf0\xb2\x78\x89\x41\x2d\xb4\xb8\x75\x9f\x2a\x35\x06\xdf\x64\xa9\x0b\xc6\xe0\xab\xae\xd7\xbe\xca\x6f\xef\xe7\x34\xcf\xbc\x8f\xee\x1d\xd1\xf2\x52\x87\x0e\x06\x7e\xe6\x31\xe5\x2a\x88\xdb\x50\xee\xa5\xe6\x4f\x1b\x0d\x08\x0d\xce\x77\xe6\xbf\xf9\x50\x59\x49\x53\xf0\x59\x35\xc5\xe0\x83\x87\xb4\x5c\x42\xb8\x68\x8e\xcf\xaa\x29\x12\xac\x32\x2d\xbd\xb8\xb4\x8f\x12\x4f\x5e\x09\xe6\x7d\xf1\x5f\x01\x06\x94\x73\xef\xab\xff\x2a\xbf\xd2\x52\x30\xfe\xe8\x67\x08\x53\x24\xea\xc5\x0a\xe2\x65\xf0\x5f\x81\x6e\x31\x28\xdf\x31\xe3\xf8\x32\x7c\xf7\xc4\x0a\x0e\x35\x3c\x4e\xa7\xb2\x05\x7c\xb9\xfd\x5b\x63\xb9\xc6\x02\x12\x51\x64\x2b\x41\xf8\xe1\xe5\x07\x7c\xe9\x9e\x6d\xba\x4d\x34\x29\x26\x01\xc5\x7d\x14\xe2\xb5\x49\xac\xa4\x6d\xbe\x40\xa8\x8d\xae\x7c\x62\xf6\x30\x15\xe9\x41\x96\x2e\x65\xc5\x5f\xfc\x37\x5f\x00\x01\x7c\x7c\x97\xab\x31\x5d\xd9\x08\xcd\x53\xd9\xa8\xd2\x79\xb4\x82\x51\x79\xdd\xd1\x9c\xf0\x76\xd2\xe9\x40\x2e\xd3\xfe\x33\x39\x9b\xaa\x53\xa4\x7e\xa2\x34\x49\xde\xe1\x2d\x55\xe9\x5c\x2d\xb9\x83\x4b\x81\xdf\xc1\x1f\x52\x6f\x3d\x33\x88\x77\x3d\x37\x4c\xf8\xf0\xd7\x4f\x05\x15\xee\xab\xff\xaa\x18\x35\xab\xe5\x31\xe3\x9a\x97\x80\xdf\x55\x53\x36\x5b\xe7\x5e\x1b\xa1\x7c\xc2\xc7\x9e\xc5\xc3\x27\x54\xf4\x4e\x2e\xaf\x4f\xcf\x0e\x8f\x46\x45\x4f\x69\x60\xf4\xb4\x06\x07\x3e\x1e\x3a\x61\xab\x4e\x53\xc2\x56\xdc\x94\x8e\x8f\x03\x7d\x10\xab\x13\xf0\xaf\xb2\xf8\x71\x09\xed\xd7\xbd\xc1\x77\xbd\x3f\xb5\x75\x7f\x3c\xe5\x92\xba\x96\xca\x3f\xb9\x4f\x5a\xe5\x05\x13\x3d\x97\x98\x98\xe9\x0d\x0c\x93\xc0\x4f\x68\x4d\xe6\xad\x8a\x34\xaa\x3e\xe9\x95\xd1\xd5\xb7\x5c\xad\x05\xb2\x4d\x09\xaf\x7d\x8e\x8a\x51\xec\xbe\x60\xf5\xe0\x67\xc0\x61\x95\xc9\xd0\xcf\x0e\x46\xbb\x7e\x66\x65\x72\xa9\xe6\x93\xcb\x33\xbe\xcb\xc9\x94\xdd\x16\xf4\x6b\x18\xa4\xe6\x5f\x61\xd4\x15\xa8\xd3\x86\x8a\xc3\xda\x50\x52\x05\xb2\x75\xba\xac\xd7\xd7\x26\x82\x97\x8e\xff\x2a\x93\x10\xd9\x28\x45\xb0\xaa\x4a\xab\x33\xe3\xd1\x3e\x1c\x17\xfa\xe2\xd0\xd1\x0a\x64\x1d\xb7\x10\x65\x1d\x22\x3e\x78\xba\x8e\xdb\x35\xfb\x4d\x19\x88\xb3\xdf\xe9\x70\x08\xea\x7f\x90\x65\x00\x2f\xc1\x97\x70\x98\x14\xfb\x0d\x1b\x7f\xed\xc4\x38\xde\x33\xe9\x69\x96\x79\x06\x12\x24\xd1\x9a\x9b\x60\x82\xef\xec\xee\x1b\xdc\x2f\x7b\x3a\x80\x45\x64\xed\xd6\x68\x11\x89\x39\xb1\x4a\x8d\xd1\x32\x2d\x4b\xe5\xa1\xf9\x6f\x82\xfd\xad\xad\x8d\x5e\xbd\xc6\xe1\x6e\xf7\x7b\x80\x2a\x53\x94\x6c\x36\xda\xf2\xad\x6e\x79\x23\x87\x59\x62\x6e\xdd\x4c\xc8\xba\x38\x29\x5c\x8a\x1a\x35\x26\x9b\x8a\x72\x9f\xe7\x3d\xc2\xd6\x4a\x51\x6a\x82\x19\x90\x2e\xb8\x63\xdd\x49\x13\x2f\x78\x73\x11\x97\x50\xb0\x95\xc6\x4c\x3f\x56\xd4\xf1\xaa\x41\x4c\xfa\xf5\x60\x22\xdd\xa4\xe8\x62\x32\xa6\x13\xdf\x52\x44\xdb\x7e\x3f\xc9\xa4\xa1\xc0\x02\x04\xb0\x02\x62\x77\xcf\xb5\xa8\x98\x6f\x5a\xc4\x58\x55\x6c\xe8\x33\xe6\x85\xc1\xd4\x8c\xc9\x04\x8b\x0d\xaa\xe4\x87\x29\xdf\xe2\xba\x21\x05\xed\x3d\x1a\x1b\xf3\x64\x33\xa5\xb2\xa6\xb4\xa5\x66\x47\xce\x60\x8a\x8a\xa4\x55\x74\x3a\x85\x81\xe2\x47\x92\xae\x97\xf8\x71\x35\x25\x16\xa8\x4c\x10\x8f\xcb\x64\x53\x89\x7a\x63\xcf\x56\xb9\xcc\xa9\x88\xdb\xaf\xda\xca\x4d\x4b\x9e\x80\xec\x15\x12\x36\xca\x45\xf0\xab\xdf\xaf\x3f\xbf\x7a\x75\xeb\x2a\xc8\x83\x0a\xd4\x34\xbe\x7d\xbd\x5e\xef\xaa\xa8\xf8\x00\xa3\xcf\x66\x71\xfb\xf7\xed\x64\x44\x86\x19\x99\xb2\x8c\x7c\xba\x38\xb1\x98\x5d\x4c\x92\x1e\x27\xcb\x3c\x9d\x92\x78\x85\x48\x51\xfd\xae\x1a\x9e\xe2\x57\xbf\x8f\x47\xc3\xbd\x78\x34\x7c\xb3\xfe\x6e\xfd\x6e\xfd\x3e\x59\xbf\x8e\x47\xc3\x77\xeb\xc3\xf5\x41\xb2\x7e\xd3\x4f\xfc\x3e\xcd\xfc\x3e\xd5\x6a\xf4\x5b\x9c\xa2\x7a\x8f\x54\x8b\x19\x7e\x15\x7f\x7e\xb5\xfe\xdc\x5b\x7f\xfe\xe3\xfa\x73\x77\xfd\x79\xb4\xfe\xbc\x5e\x7f\x8e\xd7\x9f\x93\xf5\xe7\xf1\xfa\xf3\x64\xfd\xf9\x69\xfd\x79\xb3\xfe\xfc\x39\x79\x75\x8b\xe6\x38\xd0\xc3\x46\xcb\xba\xf6\xf4\x3c\x2d\xcf\x1e\xac\x8c\x2a\xf0\x70\x6d\xfc\x66\x5a\x5f\x42\x46\x2f\xdb\xe8\x7e\x37\x45\x5b\xb7\x47\x5f\x9e\x6c\x79\xf4\x55\xe9\x28\x2d\xe1\xe0\x97\x64\xca\x8a\xcc\xc1\x03\x79\xf0\x0d\x5e\xf8\xb7\x9e\xf2\xea\xbe\xb3\xd4\xaa\xdc\x48\x24\xcf\x35\xc0\xd9\x3d\xcd\x48\xb4\x4c\x79\xba\x88\xfe\x06\xf6\x63\x7f\xab\x57\xa8\xfd\xaa\x8e\xc5\x44\xde\x87\x35\x93\xd7\x11\x1f\xb6\xdb\x5d\x6e\x1d\x68\xbf\x0c\xd3\x4c\xbb\x69\xd8\x72\xcf\x0b\xe5\xae\xfd\x7b\x8f\x27\xad\xfb\x71\x7f\xb2\xd5\x28\x48\x80\x51\x10\xdc\x46\xa8\xc1\x2b\x86\x36\x12\x28\x7a\xd3\x79\xca\xdf\xb3\x8c\x1c\x88\x98\x26\x2d\x89\x1a\x2d\x57\x22\x06\xb7\x0d\x3b\x03\xeb\x5b\x84\x6f\xd0\xfd\x78\x50\x6d\xcd\x7a\x89\x91\x45\xde\xfc\x3b\xda\xe9\xab\x18\x17\xf7\xe3\xbd\x67\xb3\xee\x0e\xa0\x7a\x95\xf5\xcd\xb6\xac\x0a\xf4\x3e\xca\x91\x3e\x86\x23\xf5\x4e\x1f\x0c\xd0\xee\xed\x0c\xb5\x3f\x7f\xfe\xdd\xa0\x9d\x6c\xd0\x63\xd0\x5d\xab\x34\x17\x8f\xff\xfb\xd5\xa4\x9b\xb4\x65\x86\xbd\xc6\x0c\x3d\xfd\xf5\x4d\xd3\xd7\xb6\xea\xd4\xad\xec\xd4\xed\xf3\x9d\xda\xa0\xdb\xfa\x8c\xa9\xb5\x59\xc4\x12\xd7\x81\x5c\x76\x5d\xcf\x7b\x47\xa7\xef\xcf\x0e\x8f\xae\x0f\x4e\x0f\xaf\x0f\x8f\xe0\xf1\xfc\xe0\xea\xc7\xeb\xcb\xa3\x1f\x3e\x1e\x9d\x5e\x5d\x8e\x66\x31\x4f\x86\x5c\x56\xbb\x6d\x76\xfd\x7a\x65\xbe\xe7\x86\x70\x53\x71\x09\xff\xb4\x49\xd0\xf5\x73\x6e\xe2\x1f\x2c\x7e\xe1\x79\x40\x79\xf3\xef\x70\x57\x7b\x9b\xa8\xaf\x74\xb3\xed\x3d\x32\x48\x82\x18\x03\x1e\xbc\x45\x14\x5b\xaf\x3c\xc6\xd7\x5d\xdd\x32\x5b\xdd\x8a\x68\x85\x8b\x71\x3a\x41\x53\xdc\x6f\x0d\xf6\x3a\x71\x89\xf7\xde\xbe\x8d\xa7\xb8\xdd\xc6\x18\xaf\x46\x6f\x86\xff\xf6\x27\xf9\x10\x76\x64\x34\x18\xbe\xd9\x6b\x48\xde\x1b\xf6\x13\xd9\xcb\x15\x5e\x69\x7b\x8e\x41\x82\x62\x8a\xe9\x7a\x3d\x9e\x24\xea\xa6\x5b\x25\x28\x66\x98\x79\x29\xfd\x1d\x1c\xbf\xe9\x94\x49\x92\xa0\xc1\x9b\x4e\xd9\xe9\xf0\xf1\x74\xd2\xed\x22\x7d\x35\x3e\xc9\x43\x3f\x9c\x6a\x0b\x89\x3c\x5e\x25\x1b\x73\x7a\x9e\x8a\x74\x41\xca\x21\x5d\xaf\xaf\x51\x39\x67\xab\x1c\xf4\x3e\x32\x52\x0e\xd9\x7a\x7d\xed\x5d\xe3\x47\x15\xf4\x80\x40\xc7\x75\x0c\xb6\x5e\xa1\xb0\x36\xac\x03\x4c\x9d\x35\xc7\x16\xd1\xb6\x87\xc2\xb9\xf0\xa6\x99\xc1\xfc\xa0\x36\xed\x93\x59\xd7\x56\x98\xb7\x2f\xe2\x52\x95\xa2\x23\x31\xf4\xe2\xcf\xa7\x42\x10\x5e\xe0\x76\xdb\x3a\x21\xba\x25\x5f\xcc\x7a\x41\x92\x46\x13\xca\x20\x51\xce\x86\x49\xf1\xee\xde\xcb\x60\xbf\x9a\x31\x8d\xd4\x40\x77\x60\xa0\xbb\x10\x7b\x08\x12\x86\x6e\x02\xec\xed\x2a\x13\xdc\x8c\x7d\xa9\x82\xbd\xb1\x84\xc4\x12\xf7\xb1\x78\x4f\xf1\x96\x82\x01\x80\x8d\xa3\x56\x4c\x5a\x9a\x02\x9c\xa6\x22\x66\x0a\x21\x8c\x45\xe2\x01\xbb\xb3\xc0\xfe\x56\x0e\x78\x9b\xcb\x09\xf8\xba\x5e\xc7\xfe\xe4\x48\xc0\x7e\x41\x6e\x8f\xbe\x2c\x63\x7f\x0e\x93\xc4\x9f\xc2\x0d\xf2\x1b\xb9\x25\xcf\x98\xd5\xba\xc5\x31\xbe\xdd\x76\x30\x06\x2f\x0b\xe0\x20\xdb\xc3\xf9\xf6\x0b\xe7\x3c\xa1\x08\x8d\x40\xf5\xa6\x18\xf3\x71\x31\x01\x2b\xda\xa3\x98\x22\xb8\x05\x8d\x29\xe3\xc6\xf3\xe3\x1f\x94\xd0\xd9\x59\x90\x9d\x6d\xc2\x11\x2c\x57\xa2\xd9\x83\x13\xf4\x59\x55\x08\xb6\x92\x5e\x1d\x45\xab\xd6\x3f\x7b\xcd\xc1\x2c\x9e\xc5\x14\x51\x63\x52\xaf\x2a\x45\x74\x6c\x52\x26\xb8\xd0\xbe\x0d\x2b\xd3\x34\xaa\xee\xe9\xa2\x47\xb3\xa1\x36\xc6\x76\xc9\x49\x35\x9f\x36\xbe\xed\xd1\x4c\x07\xbd\xf7\xaa\x18\x57\x12\x90\xcc\x36\x41\x45\x38\x0b\x4a\xd0\xb7\xc5\x5f\x5f\xb8\x8e\x3b\x42\x4f\xc3\x78\xd2\x32\x7b\xb7\x05\x6b\x2a\xaa\x6b\x2a\x5e\x58\x53\x01\x6b\x7a\x29\x17\x34\x91\xc4\x19\x0c\x83\x26\xdb\x16\x54\xc8\xbc\xcc\xcf\xcb\xbc\xbd\x0f\x9d\x39\xa8\x13\x3c\xa1\x61\xf9\x6f\x2b\xc2\x1f\x75\x24\x5c\xb2\x5e\x3f\x6d\xbc\x43\x7e\x67\xc7\xdd\x22\xd8\x5d\xce\xaf\x3e\x77\x5f\xdd\x2e\x50\xfb\xf7\x7b\x7d\x49\x8b\xf1\xc7\x27\x81\x1b\x91\x63\xed\xa7\x4e\x5e\x35\xb8\xdd\xb6\xf1\x34\x37\x07\xde\x44\x2b\x67\x52\x1a\x05\xad\x26\xa3\x20\x67\x73\xc6\x5a\x3e\xb0\x66\xae\x66\x93\x89\x30\x21\xe7\x35\x0b\x7c\x00\xea\x92\xda\xd3\x0e\x74\xc7\x13\x24\xf4\xa6\x25\xa8\x8f\x24\x8e\xd3\x97\x28\x54\x0b\xe2\x77\x0b\xd4\x00\x99\x39\x63\x6a\x43\x60\xb1\x69\x9d\x3f\x4b\x58\x79\x71\x17\x71\x58\x16\x51\xdc\xfe\xef\x36\x62\x78\xdc\x47\x7d\x04\xde\x88\x9d\x11\x94\x35\x91\x42\xe0\x80\x74\x85\x77\xfa\x28\xc7\x7d\x79\x8f\xee\x4f\x1d\x6d\x38\x95\xfb\xca\x34\x31\xc3\x64\x3c\x9d\xa0\x0c\x3f\xc4\x25\x9a\x29\xca\x98\x25\x68\x8e\x33\x35\x66\xb4\xc4\x59\x2f\xb8\xc7\xf6\xf3\xb7\xa5\x0b\x97\xa7\xb7\xe8\x02\x97\xe3\x7c\xd2\x7a\xb3\x83\xf1\x02\xae\x03\xb8\x71\x77\x06\xa8\xc0\x85\x45\x18\x01\xc9\x44\xb4\x8b\xdb\xaf\xda\xa8\xc0\xf7\x63\x95\x75\x12\x2f\x50\x01\xe9\x8f\x2e\x25\x49\x36\xe9\x78\x3a\xc1\x4f\x86\x2e\x9d\x99\xab\x07\xa9\x0b\x76\x5e\xb9\x5d\x97\x9b\xcd\x0a\x3c\xc2\x37\xb7\x97\xa0\xc2\xdd\x5d\x29\x2a\xec\x5d\x47\xbb\xed\xdf\xb5\x51\xa1\xef\x30\x86\x9e\x33\x64\xeb\x74\x44\x2f\x2d\x95\x1b\xca\x5e\x2a\x89\x4d\xe3\xc2\x0a\xfa\x04\x7e\x48\x4a\x72\x0b\x16\x9c\xc3\xd2\x90\xd4\xe5\x30\xdd\x24\x1b\x74\x1e\xd0\x4a\xea\x4b\x35\x36\xa4\x0f\x3f\xa0\x46\xed\x73\xbf\xc1\xeb\xc5\xd5\x9c\x70\x12\xd1\x32\x2a\x58\x04\x34\x78\x24\x4b\x64\x51\xbb\x4b\xb6\x98\xc8\xd9\x56\xed\x36\x31\x00\xa7\xf2\x21\x80\x3c\xf6\x23\x5c\xa5\xe3\x62\x82\xa9\x47\x27\x84\x83\x2a\x15\x67\xbd\x8e\x26\xef\xec\x04\x63\x0a\xcb\x19\x22\xeb\x99\x3b\x51\x97\x93\x74\x57\x1b\x26\xa4\x21\x52\xd7\x37\x4d\x08\xc5\xbc\x67\x56\xc8\xc4\x77\x32\xa3\x66\x66\xd4\x29\xa6\x63\xa6\x36\x73\x6a\x36\x73\xa1\x77\x6d\x17\xdf\x8e\x53\xbd\x49\x53\xe4\xf0\x88\xf6\xab\xf6\x0e\xd6\x14\x96\x41\x8c\x0b\x59\xa4\x5b\x24\x08\x36\x8e\x07\x44\x55\x7d\xfa\x96\x54\x83\x07\xb1\x9d\x0e\x12\x1c\xe4\x4d\x12\x79\xed\x34\xcd\x97\x57\xa4\x61\x13\x8d\x27\xce\x92\xf5\x8e\x3c\x96\xb1\xa4\x3e\x40\x47\x23\xf6\x71\xf4\x6d\x58\x84\x5c\x69\x04\x81\x68\x27\x0e\x0f\xb1\xb1\xda\x1a\x98\x0e\x34\x51\xf7\x19\x73\xf7\x59\x89\xfb\xfb\xe5\x5b\x66\x6a\x2f\x4d\xed\x2b\x79\xe8\xc6\x13\xdc\xee\x36\xd4\xc3\xc6\xe5\x24\x69\x09\x83\x98\x2b\x13\xf5\xb4\x8b\xdb\x5b\xb2\x27\x3a\x14\x62\x9c\x26\x36\x6a\xb5\xcf\x53\x1c\xb5\xdb\xc3\xf6\xa8\xdd\x15\x9a\xd5\xd3\x69\x57\xce\x22\x44\x15\xda\x36\x97\x5e\x64\x2e\x43\xcc\x74\xda\x09\xe2\xf8\x69\x83\x9e\xb9\xae\xc7\xc5\xc4\x64\xc7\xed\x04\x31\x7c\x17\xd3\x71\x7f\x92\xa0\x14\x9b\xe9\x40\xa5\x04\x8f\x2b\xc3\x2d\x96\xf8\xae\xd9\x89\xa3\x15\x6e\x0b\xbe\x22\xed\x61\x9c\x7e\xbf\xd7\xe9\xb4\xc7\x13\x49\xf9\x30\x4d\xbf\xa4\xbb\x7b\x72\x77\x95\x10\xfb\x62\xcc\x6c\x7a\x1f\xc9\x2f\x93\xf5\x3a\xe6\x63\x36\xc1\xe3\x49\x92\xa0\x15\x38\xab\x1f\xc9\xe6\x07\x93\x64\xd8\x6e\x27\xa8\x1c\xc9\xcf\x66\x7e\x87\x90\x77\xb5\xe5\x48\x5b\xbe\x79\x53\x80\x39\x8d\x25\xd9\xbb\x69\x62\xc2\xa9\xed\x0c\xe4\xce\x71\xac\xb1\xff\xd3\x4e\xf6\x01\xd1\x67\xc0\x3c\x26\x86\x5a\xec\x23\x96\x98\x10\xb0\x5e\xf6\x51\x5b\xfb\x2b\x97\xe7\xcf\xec\x18\x5b\x28\xed\x0e\x90\xb3\x05\x0e\x6a\x4b\x13\xe7\x8e\x26\x5c\x53\xb9\x91\xd4\x09\x25\xc1\x09\x25\x70\x42\x49\xa2\xbd\xbc\x93\xd6\xcb\x84\x39\xc1\xf2\x28\x0d\x63\xe2\xd0\x99\x98\x24\x28\xf7\x5e\x73\x3d\xaa\xa9\xa5\x4b\x5a\xd3\xef\x07\x9d\x4e\xfb\x55\x1b\x7b\x3d\x98\xee\x0e\x92\xea\x84\xc8\x34\x94\xe3\xdc\xa5\xe4\xd6\xa5\x8c\xa4\xa1\x77\xbc\x20\xd2\x33\xdc\xdf\x9f\xd9\x6b\x1d\x6e\xa5\x2f\x31\x47\xc4\x27\x80\x67\x49\x92\x98\x0d\x3a\xeb\x76\x93\x7d\x53\x18\x02\x24\xcf\x71\x7f\x7f\xee\x8e\xff\x1c\x2c\xa7\xe7\x13\x0b\xf2\x3b\x9d\x4c\x47\xe6\x19\xcf\x27\x49\xab\xd1\x3b\x05\x51\x30\x25\x6e\x02\xde\x44\xdd\xaa\xeb\xb5\xc1\x56\x0a\xcc\x55\x64\x31\x3e\x1e\x48\xf0\xc2\xc7\x7b\xe0\xcc\xbe\x9a\xaf\xc4\xa9\xcc\xb7\xc2\xa9\xcc\x97\xe3\x74\xbc\x67\x5d\x95\xe6\x96\x28\xd9\x05\xf7\xd7\x0c\x78\x8b\xc5\x0e\xc6\xa5\xf9\x52\xee\x02\x21\x42\x77\x30\x5e\x59\x87\x08\xbb\xf6\xde\x82\xf4\x11\xdd\x5d\x0d\xa1\xd4\xa8\xdc\x2d\x86\xfd\x4d\x92\x6c\xe2\x2c\x31\xee\xea\xc7\x7d\x6b\x3b\xbe\xec\x74\x96\xde\x94\xc4\x54\xbe\x6b\xf4\xa1\xd3\x01\x1e\xd2\xef\xe4\xc2\xda\x44\x7d\x1e\x77\xff\x4d\x2e\x6f\xae\xd1\x8f\x2d\x04\x13\x76\xc8\x00\xd0\xb1\x40\x2e\x2a\x87\x48\x3b\x74\xbd\x0e\xa2\xd8\xe8\x8b\x0e\xd0\x4a\x88\x53\x43\x9d\x3f\x92\xb6\x89\xd0\x2a\x34\x89\x4b\x25\xb0\x19\x20\xe5\x2f\xf0\x20\xe6\x49\xcb\x62\xf5\x86\xe5\x62\x77\xd2\x0a\xf7\xf7\x57\x8e\x13\xb3\x32\x90\x2c\xc7\xc5\x78\x35\x41\x53\x9c\x6b\x64\x70\x26\x77\xa6\x8f\x76\xa1\x0c\xdf\xa0\xb9\x8e\xda\x33\xdd\xc1\xf8\xba\xd3\x99\xc9\x3f\x7b\x09\x2c\x71\x7f\x7f\xf9\x76\x6a\xea\x5e\xca\xba\xe7\x78\x47\xc9\xc7\x16\x78\x3a\x5e\x4e\xd0\x3d\x04\x2e\x1e\xa7\xdd\xee\xa4\x95\x61\x8c\x6f\x3a\x9d\x38\x83\xe8\xde\x2f\x9e\xc7\x4e\x67\x36\x5e\x4e\x46\xd9\x78\x31\xc1\xf7\x9d\x4e\x03\x89\x71\x9f\x0c\xd5\xd7\x4d\x39\x5e\x79\x08\x65\x6e\x11\x4a\xe0\xbe\x96\xc3\x0c\xd1\xf2\xf0\xb1\x48\x17\x74\x3a\x9c\xdb\xbb\xa4\xdc\xc4\x4b\x94\x23\x20\xe8\x25\x70\x34\x0a\x3d\xed\x7e\xef\x75\xef\x4d\xfb\xe5\x1e\x4a\x30\x7d\xde\x3b\x65\x7c\x01\x2b\xc5\xf1\x53\x61\x9e\x2f\x15\x26\x32\xcc\x91\x4d\x3a\x4f\xc5\x7c\x58\x6a\x39\x81\x7c\x31\x79\x66\x21\x64\x5e\xa4\xcb\x46\x7c\x09\x84\x2a\x2d\x12\xb3\xb8\xdd\x46\xbc\x22\xe0\x4a\x90\xe7\xf3\xc9\x72\x91\xcc\x4a\x31\xcc\xb5\x34\x07\x95\x01\xe6\xc0\xe4\x3d\x22\x77\x48\xd9\xb0\x43\x4a\xb5\x43\x84\xde\xf4\x49\x2b\x8d\xa7\x28\x47\x6c\x9c\x4f\xd4\x96\x9c\x61\xee\x84\x3b\xf9\xa4\x35\x1b\x91\x78\x8a\x66\xd0\xf6\xb0\x50\x0c\x7a\x8a\xa6\xc9\x66\x13\x4b\x9c\x25\x94\xc9\x8a\x91\x72\x47\x8b\x88\x26\xd2\x95\x07\x4a\x1d\x7b\x56\x7b\xf2\xb8\xc0\xe7\x9e\x40\xfd\xc2\x97\xfc\xf2\xeb\x5f\xcb\xd0\xcf\x43\x83\xe5\x7a\xe0\x6c\xaa\xcd\xcb\xfb\xa5\xfc\xab\x0a\x8e\x1b\x6d\xd4\xff\xe7\x52\xe3\x9c\xdd\x1e\xdc\x30\x2e\xf0\x03\x22\xbd\x13\x6d\xea\x0f\x78\x34\x44\x41\x20\xbd\x2b\x9e\x16\x25\x95\xcd\x2a\x53\x51\x3f\x45\xd1\x93\xa4\xa7\x14\xca\xce\x0f\x2e\x0e\x3e\x5e\x5e\x5f\xfe\xf2\xf1\xdd\xd9\x07\x4c\x7a\xd5\xf7\xcb\xab\x83\xab\x23\xf7\x6a\x1a\x73\xd5\xe1\x46\x21\x36\xdb\xe2\x34\xcc\xee\x39\xe8\x97\x5a\x48\xed\x28\xa8\x65\xd1\x76\xdc\x76\xd5\xc3\x38\x49\xa6\x99\x8b\x0b\x52\x96\xe9\x2d\x01\xf7\x20\x0d\x79\x4c\xa5\xa0\xce\x08\x9e\x81\xaf\x78\x3a\x25\xa3\x2d\xe9\xe1\x2e\x51\x8e\x2e\xb9\xfa\x6f\xf0\x66\x56\xf1\x72\xa5\xea\xb4\x5f\x93\xd0\x05\xa2\x73\xeb\x83\x89\x72\xa3\x96\x6e\xe1\x30\x94\xdf\x2e\x15\x5b\x55\x28\x7d\x90\x67\x27\xa5\x9e\x45\xc4\x01\x33\x80\x80\xb2\x63\x3e\x49\x36\xa1\x38\xd2\x20\x60\xa4\xd3\x21\x5e\xdc\x56\xde\xe9\x70\xe7\xb1\x90\x8c\xf9\xee\x00\x6e\xcd\xa6\x5b\xbb\xd3\x29\x8d\x6c\xac\xed\x51\x1b\xed\x64\x13\x17\x96\x65\x27\x70\xe1\x93\x22\x68\x9c\x9a\x32\x7d\xc4\x25\x42\x22\x26\x2e\x46\xa7\x24\x11\xbc\xb0\xa3\xd3\x00\x7d\x96\xc3\x23\x16\x2d\x18\x0b\xe8\x97\x0b\x42\x62\xdd\xc6\xca\x4f\x18\xc4\x68\x26\xfa\x6c\xe8\xff\x29\xe4\x80\x4a\x44\xa2\xca\xf9\x05\x12\x55\xd6\x30\x2e\x26\x1e\xb7\x7d\x66\x02\x00\xcb\x03\xe7\xe3\xf5\xff\xac\xa8\x51\x3a\xa8\x2a\x0f\x7c\x76\x53\x85\xef\x30\xc0\x77\x5a\xd0\x76\xec\x6d\xf6\xe8\xff\xb4\xbb\xb4\xdb\x1e\x46\xed\x2e\xf3\x18\x78\x29\x94\xd2\xd9\x25\x59\xe3\x86\x91\xb9\x35\xac\x7b\xb9\x5a\xaf\x9d\x9f\x25\x36\x8b\x14\xea\xbb\x5e\xd7\xa6\xb9\x9a\xf1\x14\xbe\xbb\x46\xe6\x2f\xf9\x1c\xec\x74\x54\x04\x48\xd8\xa1\x09\xf8\x29\xda\x77\xc5\x97\xde\x7d\x24\x49\x82\x34\xcf\x87\x4f\x1b\xa4\xcc\x0d\x33\xf9\xa8\xcc\xe9\xe4\xe3\xa6\xb5\x8a\x8b\x5e\x9a\xe7\xc6\x2d\x17\x44\x24\x01\xd7\x91\x72\xcb\xc8\x4d\x84\xa6\xb1\x48\x10\x49\xec\x7e\x85\xb3\xe1\x9d\x94\xf5\x5a\x05\x28\x29\xb4\x99\x5e\x06\xde\x55\x65\xcf\x12\x57\x93\x48\xe8\xcc\x2f\xe4\x24\x04\x5c\x85\x53\x52\x8c\xef\x45\xcc\x92\x4e\x67\x11\xa7\x49\x02\x4e\x8e\xd5\x98\x81\x11\xa0\xd7\xb5\xd0\x76\x93\x99\x39\x9c\x80\x95\x87\x9e\x8d\x73\xdc\x47\x33\x4b\xe9\xed\xe7\x6f\x67\xc0\x29\x63\x2a\x6a\x54\x3a\xce\x27\xe0\x8f\xa9\xa9\x22\xed\xb9\x58\x76\x4b\xce\xf0\x98\x3f\x93\xd5\xe2\xb3\xa3\x42\xbb\xbb\xdd\xf8\x52\x77\x7b\xd8\xab\x2e\xd4\x5c\xae\x7b\x6f\x3b\x29\xf5\xc8\x21\x78\x29\x55\xb2\xd8\xf6\xf5\xb5\xba\x32\xae\x77\xf7\xbe\x1b\xfc\xf9\x4f\xdf\xf5\xfb\xfd\xc1\xeb\x37\xff\xf6\xe7\xbd\xfe\xee\xeb\xd7\x7b\x7b\x0f\xaf\xdb\xad\xca\xad\xf2\xa8\x25\xa6\xed\x6b\x73\x1b\x99\xb2\x7b\xaf\xf7\xfe\xfc\xe7\xbd\x3f\xbd\xee\xef\xf5\x5f\xef\xee\xbd\x7e\xbd\x07\x85\xc3\x2b\xea\x56\x0b\x2b\xdb\xd7\xd7\x7f\x3d\x77\x45\x5f\xff\x79\xef\xcf\x7f\xda\x7b\xf3\xa7\x37\x6f\x76\x5f\xef\xe9\x82\x4d\x37\xde\x0d\x14\xbf\xde\x1e\xbb\x17\xf1\x6a\xc0\xf9\x20\xca\x26\x85\xd8\x55\xea\x35\x71\x51\x8b\x25\xd5\xca\x6c\x32\xdc\x2f\x33\xce\x16\x5e\xb0\x08\xc1\x02\x71\x18\x2d\xf5\x2d\x66\x63\x9b\xd0\xf2\x60\x2a\xe8\x3d\xb8\x79\x81\x84\x15\xcf\xb5\xf5\x68\x7b\xb5\xcc\x52\x41\xda\xd6\x85\x2b\xcb\xef\x6b\xa1\xfa\x0d\x04\x06\x3b\x1f\x57\xa9\x77\x73\xef\xd8\xb6\xdf\xa7\xab\x92\x64\xef\x1e\xa1\x0f\xb4\xb8\xf5\x33\x0d\xaa\x99\xb4\x47\xc3\x67\xf3\x98\x8a\x2e\x14\x6b\xbf\x21\xef\xf5\x3d\x05\x3f\x88\x7f\xf5\xe4\x04\x4f\x2a\x70\xf1\xf8\x71\x82\xf9\x7a\x4d\x14\x33\xdc\x44\xf7\x11\xa4\x10\x86\x4b\xae\xf0\x34\xc3\x25\xcf\x52\x91\x2a\x46\xab\x7c\x82\x38\xc4\xfe\xc4\x64\x1f\x59\x46\x72\x57\xfb\xcd\xc4\x3c\xca\x3b\x77\x41\x4b\x12\xac\x04\xd8\xc5\xfa\x29\xe3\x5b\x57\x80\x1b\x24\xcb\x85\xeb\x52\x5a\x5c\xa7\x12\x6f\xf1\xab\x59\xd2\x7b\x26\x8c\x05\xa2\xff\xa1\x24\xbf\xad\x48\x31\x25\x78\x77\x80\x68\x10\x32\xc5\xf4\xa6\x30\x96\x7b\x3d\x4e\x24\x6a\x20\xe9\x32\x59\x43\xec\xf5\x8f\xba\xb0\x3e\xcf\x2f\xdf\x0e\xfb\x86\xf5\xdb\x81\xfd\xfa\x5c\x9e\xf5\xba\xaf\xd8\x49\xba\xf7\xc9\xdf\xb1\xe2\xb2\xf6\xb6\x16\xf2\x28\xa6\x94\xdd\xca\x9d\x4e\xbc\xc3\x9e\x1d\xc1\x7a\xdd\xf4\xbd\xd6\x4a\x62\x14\x1b\xe5\x6a\xf1\x9e\x22\xcf\xec\x7a\xf3\x00\x25\xa9\xae\x24\xf7\x5e\xb4\x16\x99\x9f\x64\xb0\xa5\xd2\x30\xee\xbd\x15\xf7\xf3\x8d\xcb\xdd\xc1\x44\x7b\x71\x0c\xa9\xe4\x72\xbf\xdb\x5d\x19\xe2\x27\x28\xb2\x52\xbc\xfa\xbc\x47\x4b\xed\xa2\x27\xd3\xce\x88\xeb\x9b\x28\x57\x05\x37\xe1\x2e\x22\x26\x62\xc6\xa5\x4e\x31\x01\xe7\xcc\x6e\xe2\xe6\x1c\x78\xfc\x16\x0b\xe6\x53\x07\x78\x46\xb5\x6d\xb7\x33\x40\xf7\x01\xea\x91\xaa\x9c\xd1\x6e\xa4\x72\xb4\x13\x49\x8d\xb9\x52\xaa\x19\x79\xcb\x68\x5a\xab\xa7\x04\x75\x4d\xd8\x64\xad\xb5\x54\x9f\xea\x9e\xb0\x0d\x1e\xd2\x4c\xf1\x2f\x08\x4a\x13\x59\xe9\x7d\xdc\x56\xb3\x11\x41\xa7\xdb\x89\x1f\x1a\xac\xe9\xf8\xa8\x1e\x69\xa0\x92\x78\xc7\x79\x63\x38\xb4\xb5\x88\xd7\xa2\x27\xe6\x64\x6b\x38\x2f\xbf\x25\xc8\xa8\xbf\x6f\x90\x50\x83\xdd\xa2\xab\xe4\x17\x53\x93\x02\xbe\x36\x91\xe8\xe9\xa8\x59\xdf\x50\x4e\xe7\xb4\x25\x61\x39\x6a\x62\x47\xce\x54\x10\x24\x2d\x77\x54\x22\x47\xad\x6f\xab\x66\x58\x5f\x53\xe1\x5f\xe2\x8d\x5f\x4b\x83\xe5\x8d\x25\x3b\x28\x2f\x2e\x3f\xc1\xbb\xab\xfa\x3e\x3c\x56\x7f\x3f\xd3\x3c\x57\x3e\x24\x62\xe3\x1d\xdd\xff\x7c\x48\xb3\xf0\xab\x1c\x89\xe9\x73\x6d\x30\xb6\xa9\xf5\x3a\x9e\x05\x63\x08\x4e\x41\x15\x12\x4b\xfc\xd8\x6d\xa3\xe8\x21\x2d\xcd\xde\x6d\x9b\x4b\xda\x84\xcd\x51\x17\x8b\x93\xd7\xf9\x69\xb1\xf7\xd6\x5b\x72\x52\x25\xa2\xfd\xc1\xc1\x5d\x95\xd4\x2e\xf3\x7e\xf5\x32\x1f\x04\x53\x92\x42\xaa\x07\x2c\xf5\x62\xc0\xa4\x90\x8c\xf2\xc0\x1a\x9f\xd4\x96\xf8\xd9\xe9\x27\xba\x1a\xc1\x1f\x6b\x13\x0b\xd3\x61\x45\xd3\x7e\x2d\x6e\xde\xe4\x35\x20\x87\xee\x4f\x03\x08\xac\xbd\x98\x3c\x66\xca\x3c\x88\x6e\xa2\x3c\xc6\xe1\x07\x88\xa7\x23\xf4\xb7\x26\xae\x70\x05\xc9\x21\x76\x77\x94\x61\x88\x43\xc7\x47\xf1\xc3\xe5\xc5\x72\x6e\x8d\x62\xb5\x0e\xdc\xe7\xb2\xca\x6a\x9a\xc2\x88\x35\xd6\x51\xa7\x92\x94\x37\x51\x04\x9f\x3d\x41\x69\x8d\x0e\x2c\x3c\x3a\x90\x7f\xbf\x37\xe2\xbb\x7b\x92\x0e\xa4\x78\x6f\x9f\xbe\xe5\x26\xda\xd8\xee\x9e\x4f\x07\x52\x1d\x27\xcb\x4e\x3f\xf4\x12\x2c\xb8\x0c\xe0\xf2\x2f\x23\x23\xb7\xa9\xa1\x7e\xdd\x41\x02\x1a\x30\x85\x82\x2a\x2c\xcf\xd9\xc3\x85\xde\x42\xe5\x96\x60\x4b\xaa\xcd\xd6\x76\x20\xd5\x14\x94\x92\xd4\x76\xed\xa8\x9e\x54\xed\x40\x1c\xde\x14\x00\xf1\x05\x04\xb1\x94\x2b\xb3\xdd\x87\xa1\x77\xfb\xc4\xe6\xb4\x47\xed\x6e\x70\xfa\xbb\xed\xa4\x2d\xab\xc9\x59\x45\x10\xf7\x0c\xc0\xb0\xc1\x51\x7c\xf5\x45\xa7\x76\x1f\x13\x53\x8c\xb8\x32\x6d\x13\xc9\x41\x01\x93\x5e\x5b\xc5\x65\x60\x81\x7e\xde\x56\xe7\xb6\xa4\xd3\x09\x28\xe8\x6b\x79\x52\x7c\x7c\x7c\xd3\xc8\x5e\xbb\x6e\x29\x5d\x3e\xd9\xd2\xcf\x24\xbd\x0b\x7c\x01\x5f\xc6\x44\x69\xc7\xeb\x7e\xbb\x98\x91\x20\xda\x79\xda\x78\x24\x49\xa1\x62\xdf\xcb\x5d\x52\x89\x37\xea\xd1\x37\x14\xf0\x17\x54\x62\x6a\x50\xa8\x95\x79\x04\xdb\x71\x94\x63\x6a\x54\xe8\xd1\x14\x53\x35\x4b\x12\x87\x39\x03\xc7\xf7\x34\xe9\x74\xb4\xb2\xfe\x0c\x83\x79\xa4\x44\x5e\x33\xfc\x25\x9e\x55\x3c\xc8\x2b\x76\xcc\xd3\x2d\x11\xd1\x82\x88\x54\x62\xee\x0e\x2d\x39\x88\xc1\xb2\x42\x56\xab\x98\x63\xb4\x3c\xe6\xec\x2b\x29\x62\x49\xba\xf3\x0a\x87\x2c\x6e\x9b\x1a\xda\x96\x0d\x15\xea\xa9\x82\x01\x9b\xf5\x31\xb5\x81\x39\x33\x60\x2c\xf8\x06\x81\x79\xe2\x29\x9a\x25\xc8\xd9\xd7\x9c\x81\xf3\x7c\x8a\xb2\x04\x65\x80\x37\xcc\xf1\xd3\x8c\x16\x99\x33\xa6\x75\xb2\x19\x44\xf1\x78\xd2\x7a\xed\x09\x93\x81\x40\xac\x4e\x39\xf1\xcc\x6f\x55\x80\x80\x4d\xe2\xe9\xc1\x32\xdc\xdf\x37\xcc\x93\xef\x99\x0a\x8f\x3e\x8b\x0b\x3d\xa3\x64\xcc\x24\x2e\xa3\x18\x13\x12\xbe\x31\x44\x9d\xca\xdc\x06\xc9\x39\x95\xcb\xe8\xa1\x79\x2a\xd1\xad\xa3\xe7\x3f\x4c\x7d\x6a\x5a\x03\xbd\xba\x89\x2d\x2c\x41\x92\xd1\x15\x20\x63\xb6\x3b\xb0\xf2\x2e\xbb\xcb\x84\xf2\xfa\xaf\x3a\x2a\x74\x51\x60\xe5\xfb\x25\xbb\xdf\x5a\x32\x67\xd3\x34\x3f\x55\x63\xf1\xe0\x96\x1c\x9d\x11\x96\x7b\xaa\xef\x64\xec\x82\x69\x4c\xbc\x21\x7b\xc3\x2d\x55\xb2\x47\x0e\x78\xde\x42\x37\x1b\x7b\xb5\x75\x3a\xf1\x1c\x7f\x89\xe7\x28\x4f\x12\x64\x36\xc0\x3c\x41\x73\x09\xb2\x02\xed\xd2\x70\x2f\xa7\x42\x70\x7a\xb3\x12\xa4\xb9\xde\xea\x76\x26\x89\xa4\x73\xab\xdb\xd9\x55\xd2\x4e\x46\xcf\xef\x64\x22\x77\xf2\x30\x48\x95\x49\xae\x8b\x07\x3e\xce\x0d\x17\xb6\x8d\x2d\x0b\xa2\x6d\x08\x6f\x66\x65\x07\x1f\xf5\x36\x18\x6d\xfb\x20\xe1\xf8\x2a\xcf\xe1\x18\xdc\x3d\xcb\x35\x31\x31\xaf\xae\x61\x13\x9d\x37\x50\xda\xea\x0b\xf6\x75\x89\x7d\x36\x80\x47\x13\x59\xb4\x09\xc4\x03\xc2\xcb\x7d\xaa\x94\xec\x2a\x6c\x81\xc2\x84\x18\x5d\x72\x36\x25\xa5\xd2\x31\x8a\x8b\xe4\x39\xac\xff\x16\xdc\x3c\xf8\x01\xb2\x1b\x69\x15\x47\x51\x18\x38\x98\x28\x1c\x45\x59\x77\x37\x38\x24\x88\xbc\xb1\x81\x22\x24\x20\x65\x50\xcf\x56\xf5\xa5\xd6\xf3\x2d\xfb\x53\x9a\x28\x32\xa4\xe9\xa6\xe6\x2a\x16\xd3\x31\xe3\x80\x8f\x2a\xc2\x21\xa9\x15\xf0\xf2\xf3\x55\xf1\x8e\xcc\x18\x27\x30\x15\x3f\x32\x76\x17\xbf\x54\xa4\xda\x84\xb1\xa4\x7c\xa6\x88\x99\xea\xe6\xba\xff\xee\xfe\x93\x70\x00\x07\x33\x41\xb8\xd7\x7f\x44\x5e\x2a\x74\x43\xa6\x6c\x41\xcc\x66\x33\x25\xe4\x3a\x85\x5f\x9a\x96\xcb\xa8\x8f\xd8\x0d\x10\x8b\xa4\x65\xc3\x54\x96\x22\x2d\xe7\x17\x3e\x1f\x4a\x05\x8d\x22\x92\x0a\x95\x3f\xc0\xad\x92\x0f\x63\xbb\xbf\x27\xb8\xb0\xe1\xf4\x6c\xe4\x68\xb5\xd5\x5a\x3b\x71\x5b\x3f\xb6\xa9\xda\x58\x49\xa7\x43\xd7\xeb\x98\x63\x61\xa4\xf9\x1a\x82\xca\x6f\x5a\xd5\xf3\xbc\x8e\x08\xc1\x35\x5f\x39\x46\xa8\xf0\x8e\x91\x17\xd1\xc4\x42\x0b\xd6\xe9\x28\x50\x98\x22\x96\xa0\x14\xf6\x3d\x48\xf6\x21\x0e\xc9\x94\x64\xa4\x21\xd2\x9b\xd6\xe6\x33\xc6\xad\xc4\x8c\xa5\x3a\x34\xa7\xf2\x9f\x2e\x88\x21\x2b\xe4\xf3\x7a\x5d\x1d\x73\xa7\xb3\x63\xc2\x93\x55\x41\xe7\x52\x8b\xa4\x3a\x9d\x9d\x86\x80\x1f\x3b\xd8\x2a\x55\x2b\xf5\x03\xbf\x7f\x81\x5c\x8d\x24\x20\xf8\xa9\x54\xcf\x93\x4e\xc7\x63\xb3\xbb\xaa\x4c\x25\x9b\xd8\x3b\xec\x88\xe8\x87\xa4\x8e\x9d\xca\x2e\x81\xb0\x06\xc4\x71\xec\xd6\xa9\x84\x2a\xd9\x8e\x82\x2a\x8a\xcf\xbb\x4d\x43\x32\x22\xbd\x6b\xe3\xe8\x1d\xb8\x51\x95\x95\x55\xe0\x15\xa8\xae\xfa\xb9\xae\x6b\x67\xb9\x15\xd0\x34\x88\xec\x9a\x21\xa5\x76\xfa\xa8\xfd\x40\xf3\x5c\xef\x65\xa8\xa6\x8d\xfc\x86\x7c\x5a\xd4\xbb\x61\x5c\x62\xef\xc6\xf5\x40\x99\x00\x35\x7e\x8a\x49\x92\xa0\xa3\x58\x28\x33\x21\x80\x26\xa8\x01\x0c\x26\x7a\x58\xe1\x69\x6f\x3c\xa1\xd4\x44\xf5\x96\x53\x13\x10\x3b\xdb\x8e\x67\x43\xef\x9b\x87\x94\xda\xd6\x5d\xa0\xf9\xea\x97\x58\x19\x36\x73\x7c\x14\x53\xcc\x13\x85\xe6\xd0\x86\x31\xf1\xed\x30\x93\x54\x98\xd9\x63\x36\xd1\x10\x2a\x80\x90\xcd\x4c\xa4\x7a\x4b\x24\x7e\x06\x3e\x0b\x1d\x74\x49\xdd\x6b\xb5\x19\xaa\x6d\xe2\x0a\x9b\xbd\x9a\xa0\x20\x5c\xb5\xff\x1e\xb4\x13\x40\xaf\x12\x31\x9d\x57\x36\x7a\x03\xa9\xaa\xbc\xb1\x58\xfb\x71\xc5\x6c\x0d\xec\x6d\x82\x1b\x5f\x71\x40\x82\xb4\x46\xad\x44\xff\xca\xad\x5d\xb0\x0d\x0c\x45\x62\xc3\x52\xc5\x02\x93\xa4\xd3\x69\xd2\x00\x6f\x0a\x60\x02\x93\x3e\xaa\x5f\xe2\xb8\x96\xf2\xdc\x7d\xe5\x81\x05\x45\x39\xf8\xe7\x5d\x73\x90\x86\x44\x19\xaf\x84\x79\x8d\xcc\x0f\xc5\x7d\xc4\xb7\xc4\x19\x86\x6a\xb6\xc5\xd1\x0d\xe2\x5f\x43\xce\x91\xf7\xac\x34\x29\xdc\x5a\xc6\xc9\x06\x5c\x20\xd5\x38\x58\xd7\x06\x36\x99\x18\xbe\xfe\xd0\x9f\x8f\xe1\xeb\xe7\xd4\x97\x80\xdf\x20\xaa\xe7\x7a\xb6\x0f\x66\x01\xbc\x78\xc0\x4d\x3a\x35\x77\x55\x23\x0f\xe2\xa1\xbc\x22\xf6\xc2\x4f\x68\x83\x44\x43\x5d\xca\x03\xe1\xa9\xb9\x40\x3e\x96\xa8\x8e\x27\x06\xe3\xa5\x28\xc4\x76\xfb\xc8\xde\x8b\x38\x45\xe5\xc6\x52\xaa\x3c\x8c\xca\x96\x00\x6c\x41\x22\x8c\x06\xd9\x80\x59\x9a\x19\xec\x74\x44\xe5\x24\x4a\x28\xfb\xdc\xe1\xf4\x11\xdd\x26\x38\x0c\x2a\x55\x48\x6c\xe2\xbb\x04\x5d\xbc\x38\x3d\x9a\xcf\x60\x26\x27\xfd\x96\xc9\x79\xda\xa0\xd4\x4d\x54\xfa\xf7\x4c\x46\x1d\xa7\x0f\x0d\x26\x54\xad\x12\x5d\x23\xe3\x9b\x49\xa7\x13\xaf\x62\xe1\x84\x83\xea\xee\x46\x22\xb4\x65\x1a\xdf\x4c\x8c\x5d\xb7\x87\x2d\x19\x19\xb0\x0d\x1e\xd4\xcb\x88\x45\x09\x47\x14\x07\xef\xd0\xd1\x21\xef\x2d\xf4\xc5\x21\x3f\x2f\xbc\xab\x82\x76\x3a\x47\xc0\x4a\xf1\x44\xcb\xf5\xa9\xa7\x76\xde\xaf\x5e\x98\x77\xad\xb8\x60\x66\x9d\xd5\x67\xdd\xce\xb9\xd9\x75\x14\x31\x87\xd2\x72\xcc\x3c\xf8\x7b\x69\x93\x63\x9e\x20\xb6\xd9\xb6\x12\x2d\x63\xd1\x5b\x23\xb6\x8a\x86\x85\x11\x15\x26\x56\x70\xcf\x72\x85\x29\x55\x12\x42\x9c\x49\x4d\x0b\x2d\x6e\x8d\x8d\x7c\x16\xc1\x9c\xb6\x43\xd5\x2c\xd3\x72\xa0\x7b\xb6\x41\x45\x13\x05\xd7\xb0\x59\x14\xa2\xcc\x43\xd4\x95\x40\x80\x39\x6e\x46\xfc\x04\x9c\xab\xcc\x8b\x02\x59\x8c\xc5\xb8\x3f\x99\x48\xca\xd4\x8a\x6d\xdd\xec\x06\x42\x60\x97\xac\x7a\xa8\x3c\xd5\x20\x15\x07\xb7\x11\x2f\xf1\x90\x0e\x5b\x38\xa9\x5d\x66\x1e\x81\x62\x6a\x1b\xf8\x6e\x54\xac\x19\x82\x55\x62\x7e\x75\x4d\x33\x13\x24\x8e\x26\xa3\x62\x4c\x55\x00\xe2\xa1\x7a\x42\xc5\x46\xef\x3f\x18\xf6\xfb\x6d\x7c\x75\x90\xa3\x00\x2b\x52\x6c\x13\xdd\x6f\xd0\xc7\xe7\x83\x8c\x36\x88\xdd\x7f\xab\xeb\x0d\x38\x80\xf1\x1c\x9d\xaf\x19\xdc\x1f\xd2\x9b\x46\xb8\xd0\x6e\x9b\xac\xf3\xb8\xd2\x36\x6a\xb8\x8d\xdb\xed\x1d\x3d\xc4\x2e\x6e\xf7\xda\x09\x12\x5d\xac\x48\x18\xb4\xd3\x97\x37\xf3\x7d\xdc\xfe\x03\xf8\x68\xf8\x03\xa8\xc9\x24\xdf\x42\xfd\x1b\xb8\xf4\x4d\x3d\x88\xf8\x98\x68\x60\x4d\x3c\x2e\x83\x6e\x5e\x54\xd4\x43\x3c\x83\x5a\xc4\xb0\xa5\x5c\x1a\x70\x44\x8f\x2d\xe3\xcd\x58\xdc\xbe\x14\x29\x17\x9e\x74\xad\x6d\x50\xc9\x15\xda\x56\x44\x5f\x6c\xca\xc4\x4a\xe6\x6f\x10\x0b\xab\xd1\x53\x7f\xb0\x29\x0e\x7b\xff\xbd\xd5\x94\x1b\x71\xcb\xe7\x1b\x86\x79\x9a\xc6\x03\xc2\x06\x49\x07\xff\x1a\x13\xe4\xb7\x30\x4e\xb5\x68\x45\x71\x50\xcd\x16\x0d\x3b\xaf\x05\xce\xca\xa5\x7a\xe2\x09\x0c\xd2\xe7\x18\x44\x44\x85\x08\x0e\x6a\x02\x9f\xa8\x11\x9d\x45\x8a\x68\x8e\x4c\x7c\xe2\x2d\x33\x62\x4c\x16\x94\x9e\x5a\x65\x38\xa0\xcf\x5c\x6d\x40\x77\x35\x35\xb2\x71\xdb\xd5\xb2\x79\x86\xc7\xe1\xdc\x4d\x3c\x1c\x04\x6c\x21\xb6\x67\xed\x76\x25\x04\xd8\xf1\x2c\x12\x94\x20\xc0\x02\x28\xf0\xbe\x63\x24\x98\xfe\x73\x6c\x19\x00\x12\xee\x1a\xfe\x74\x1c\xee\xa1\xea\xc0\xaa\x1b\xc8\x8f\x01\xe8\xb9\x0e\x09\xb6\x3a\x0e\x86\x6a\x36\x0e\x1d\x3e\x3b\x01\x66\xf9\x52\x24\x74\x8f\xca\xe6\x1e\x9d\x4b\x92\x82\x64\xb2\x2f\x36\xca\x7e\x55\x3c\xfc\x11\x0e\xdb\xaf\x0d\xce\x8c\x84\x53\xe4\x09\x68\x75\xcd\xd9\x7c\x48\xad\x00\x99\x7b\x66\xc1\xb8\xd8\xb4\xea\xba\xdd\xbf\x42\x2b\x27\x7f\x37\x66\x1a\x55\x74\xd8\xc6\x93\x9a\xfe\x9a\x04\xda\x35\x04\x36\x75\xf8\x59\x5d\x22\xae\xd9\xbb\x9a\x51\xcb\x51\x45\x85\xa5\x70\x78\xad\x42\x7a\x7d\x28\xce\x50\xf9\x0f\xe1\x12\x10\x87\xf6\x8a\xa9\x0e\x34\x81\xd4\x3c\xf6\x30\x5a\xe3\xd6\xc1\xbf\xc0\xcb\x24\x19\x83\xa5\x51\x20\x4d\xb7\x6a\xfc\xbe\xe9\x6d\xcc\xc1\x26\x8f\xe2\x62\x5c\x38\x59\x83\xc9\x11\xd0\x90\xba\x5f\x7a\xec\x65\x4c\x60\x1d\x40\x82\x2e\xf1\x8d\xca\xe7\x66\x01\xb7\x44\xdb\x50\xaa\x2d\x72\x3e\xa2\x3c\xc0\x3b\xac\x30\x38\x01\x63\x0a\xa7\xd4\x2d\xaa\xba\x43\xa0\x00\xcd\x70\x1f\x40\xaa\x31\x5d\x7d\x9b\xee\x77\xbb\x2c\x91\xf9\xc7\xcc\x0e\xc1\xb0\xe5\xfc\xe2\x21\x9b\x29\x79\x9a\x62\xd6\x02\x2d\xa5\x8d\xaa\x57\xb8\x10\xe6\xec\x7b\xdc\xdf\xdf\xdd\x65\x46\x06\x28\xab\x46\x19\x76\x96\xd8\x73\x03\x2b\xd4\x01\x64\x13\xb4\x04\x26\x8f\xec\xf7\x12\xcf\x94\xd1\x90\x75\x20\x33\x62\xdf\xe3\xa9\xa2\x30\x15\xb1\x0a\x7b\x45\x77\x4b\xd6\x10\x67\x48\x97\x41\x39\x9a\x6b\x55\xfe\x5b\x22\xbc\x2c\xc7\x8c\x6b\x13\x1d\x6d\x17\x13\x96\x41\x1c\x31\x5d\xee\x9b\x9a\x90\xeb\xb2\xc4\xcb\x2a\xd3\x18\xa0\xc4\xd2\x92\x4a\xda\x54\x69\xde\xe9\xcc\x2d\x9a\x58\x1d\x9c\xc7\x52\xb2\x99\x3a\x9d\xa5\xc7\x20\x5d\x74\x3a\xf1\xd2\xa0\x35\x50\x97\x21\x4a\x5c\xae\x85\xf6\xf7\x34\xdf\x8f\xe5\x64\xad\xd7\xcb\x2a\x53\x36\x9e\x83\x37\x9b\x29\xfe\x98\x8a\x79\x6f\x41\x8b\x98\xa1\x69\x82\xee\xf1\x32\x41\x45\xa7\xb3\x23\xcf\xff\x3d\xbe\x6f\x1c\xd1\xbd\x1d\x51\x82\x7c\x4c\xa4\xb7\x2a\xca\x39\x9d\x89\xf8\x3e\xd9\xd0\x59\x9c\xdb\x41\xd5\x6d\xcf\x3e\x32\x4e\x22\x5d\x8b\x0d\xd2\xfb\x40\x38\xb1\xfe\xf7\xe6\x29\x38\xe6\xe3\x24\x4a\x39\x89\x32\xb5\x58\x91\xb1\xb9\x8e\x66\x8c\x83\xfb\x2e\xc5\x62\x88\xda\x5d\xc7\x9a\x2e\x34\x07\x80\xaa\x90\xc2\xa9\x20\xef\xb5\xd9\x50\x1c\xe0\x4d\xd3\x04\xad\xe2\xb2\xae\x05\xe8\x25\x48\xa4\x29\x41\xa5\x3c\x9a\xf5\xda\x5e\xf0\xa2\xe5\x85\xd6\xef\x76\xb9\x32\x1a\x18\x73\xff\x3e\x35\xf8\x35\xe8\x8e\x33\x23\x67\x4f\x9d\x9c\xbd\x34\xd7\x55\x45\xe2\xde\x02\x8b\x0e\xf0\x18\x13\x70\xf1\x19\x5a\x49\xc0\x90\x6c\x36\xb2\xc7\x2f\xec\xf8\x06\xe0\xe2\x68\x71\x3a\x8b\xb9\x5b\xbe\x27\x20\x5d\x52\xcc\xc7\x0e\xc7\x9a\x24\x01\x3d\xb1\xe5\x98\x98\xdb\xad\xc5\x7b\x4b\xb6\x8c\xb5\x71\x02\x9d\xc5\x80\x0b\xc0\x85\x80\x31\x71\xae\x5d\xc0\x49\x81\xc2\xb7\xaa\xf7\x48\xe8\xff\xa5\xc4\x5b\xb2\x85\x80\xa4\x95\xe2\x12\x4c\x54\xd4\x56\x33\xb8\x05\x04\x9f\x0e\xa6\x8e\xc0\x2d\x26\xa7\xad\x79\x24\x0d\x17\xb6\xf3\x05\xf0\xb4\x41\x0e\xe0\xa1\x14\x8f\x27\xfb\x6c\x77\x77\xdf\x38\x67\x2c\x3a\x1d\x02\x9e\xdc\xe4\x78\xe5\xb8\x3d\x8c\x7c\x15\x4e\xaa\x84\xe6\xb2\xdb\x59\xbc\x4a\x46\x74\x9c\x2b\x13\x14\x35\x77\xc3\x9a\x64\x23\xd7\x79\xca\x71\x3e\x19\xa6\xca\xc4\x36\x87\xb3\x97\x3e\x73\xf6\x7e\x61\xab\x28\xa3\x59\xf1\x07\xe7\x39\x8e\x14\x6c\x75\x3b\x8f\x94\x8e\xd3\x2b\x70\xf1\x4d\xa7\x4a\x4e\x4e\x04\xe1\x65\x24\x58\x54\xa6\x82\x96\xb3\xc7\x28\xcd\xf3\x88\xcd\xe0\xf0\x35\x9e\x4a\xe5\x33\xa1\xdd\x25\xdd\x76\x2f\xfa\x48\xcb\x12\xc8\x6f\x65\x1a\x19\xb5\xbb\xa9\x3b\xa7\xb5\xfd\x2b\xa7\x56\x73\x30\xde\x27\xe8\xf0\x7f\x66\x2f\xf6\xa9\xb0\xb7\x75\xf6\xe9\xe2\xc3\x91\x0a\x7f\x04\x19\x7c\x93\xb1\x4a\xb6\xff\x6f\x1b\x8c\x9d\x3e\x8b\xd1\x69\x78\x62\x58\x3a\xb4\x82\xa4\x39\x86\xce\x8a\xe7\x98\x03\xfa\xba\x0d\x59\xa3\x7f\x0f\x47\x6d\x0b\xb2\x65\x59\xe9\x5a\x05\xee\x23\xa2\xdb\x90\x29\xfb\x68\xf5\x03\xb5\xe5\xb2\xb7\x7b\x0f\xbd\x6f\x4a\xa8\xb9\x33\x40\xa9\xd5\x34\xac\xb8\xea\x94\xd0\x16\x94\xa9\x8a\x14\x82\x8c\xd1\x9b\x9c\xbc\x7b\xfc\x74\xf1\x21\xa8\xd1\x6d\x46\x02\x68\x8b\xc0\x7d\xc4\xad\xff\x84\x7d\xf1\x96\xef\x77\xbb\xc2\x68\x69\xd3\xb1\x50\x46\xcc\x06\x6f\x99\xe1\x71\xa8\xa8\x17\xe0\x87\x5a\xde\x30\x95\xf7\xec\xec\x5b\xd0\xc8\x69\x32\x16\x4a\x59\xbc\x54\x43\xcc\x1a\x60\xfc\x14\xcd\x50\x6e\xaf\xfc\x39\xce\x34\x95\x35\x1f\x95\xf1\x3c\x19\x66\xa1\x08\x21\x6b\x90\x1f\x94\xc6\x38\x3d\x80\x95\x62\xd2\x62\xeb\x75\x56\xc3\x13\x96\xc9\x28\xd6\xe4\x66\x90\x1b\x67\xc9\xb0\x9a\xb4\x34\x3b\x7e\x15\x87\x06\x7f\x34\xf0\x44\x82\x0a\x7d\xc4\xdd\x9a\x7d\xb0\x02\x59\xe2\x6c\xa5\x2c\x1f\xca\x8a\x54\xb7\x9b\x92\xc1\x1d\xab\xaf\xd8\xed\x92\x58\xdb\xde\xb1\x27\x00\xee\x74\x9c\x00\xb8\xdf\xd2\x49\x62\xbd\x0e\x3e\x0c\x34\x7b\x37\xf4\x84\x82\x8a\x20\x41\xb1\xd0\xb8\x1b\x41\xb1\x75\x04\x14\xf7\x11\x73\x56\x87\xf4\x2d\xdb\xef\x76\x69\x62\xed\xf6\x94\xbb\x14\x32\x4e\xd5\x68\x52\x37\x9a\x8d\x1d\xcd\x3d\x04\xb9\xdc\xa2\x6f\x63\x04\x1a\x79\x5a\x8a\x06\x7b\x1a\x4d\x3d\xfa\xaa\x37\x2c\xcf\x2e\x6b\x89\x5b\x94\x91\xb5\x6b\x40\x1d\x84\xd3\x71\xe2\x02\x55\x1e\x6d\x6c\xe6\xb7\xde\x50\xda\xd8\x28\x18\x33\xa5\x9c\xdd\x5a\x02\xd8\x9e\x13\x65\x8f\x6e\x63\x5f\xe8\xaf\x25\x11\xb1\xd2\xdf\xe1\x4d\x7c\x3d\x5e\xb1\x6e\x37\x8c\x43\x77\xfa\x16\xe9\x32\x26\x28\xde\x8a\xc8\xd9\x8b\x19\x15\x78\xa7\xbf\xcf\xbf\xc7\xfd\x4e\xa7\xd8\xdf\xdd\xe5\x8e\x37\xaa\x71\x37\x43\xed\x11\xe5\xa0\x1a\x3d\xa5\xe5\x90\x6d\xe4\x0e\x51\xee\x3a\x28\xf8\xc4\x5a\xaf\xdb\xc1\x8b\xf2\x56\xe2\x7b\x65\xd9\xfd\x2e\xd9\x80\x18\x97\x3f\xe7\x08\x29\xaa\x8e\xc4\x82\x1b\x02\x45\xbd\xe3\xe6\xad\x5d\x1d\x87\x71\x9c\x3f\x4b\x23\xce\x28\xf7\x0c\xb0\x9c\x6a\x7e\x21\xc1\xfe\x8e\xd0\xbc\xe5\xea\xbe\x08\x90\xc1\xea\x47\x0d\xaf\xe5\x1a\x5e\xab\xdb\xa8\xd9\xcc\x80\xd5\x6d\xd4\xfa\xe1\x60\xb4\xcd\x01\x2d\x80\x6b\xed\xba\x69\xfa\xe8\xe3\xf7\x21\x08\x62\x09\x62\xe3\x9b\x49\xc5\x12\x19\xaa\x13\xec\x42\x07\xbc\x82\x82\x31\x43\x85\xcf\x98\xf6\xb4\xe7\x65\x25\xd6\xa6\x84\x85\x36\x1f\x4d\x7c\x3a\xda\xbb\x56\xb2\xd6\x4f\x17\x1f\x62\x06\x8e\x08\x7b\x19\xcd\xdc\xcc\xc4\xb4\x7e\x88\x64\x26\xc1\x6c\x57\xfc\x21\xed\xf4\x13\xc3\xac\x74\x0b\xc3\x12\x44\xb4\x78\xbe\x62\x9b\x33\x65\x8b\x65\x4e\x80\x3b\x86\x98\xdc\x16\x75\x3d\xfe\xaa\x2b\x6e\xfe\x18\xec\xb0\x5b\x22\xae\xea\xba\xff\xa0\x73\x65\xfd\xed\x79\xe8\x9c\x5e\x5d\x62\xd6\xd7\x98\x95\x24\x1b\xd9\xfa\x33\x5e\x80\x60\x6f\x9c\x1a\x5c\xca\xc8\x52\x8c\x87\xaa\x53\xf2\x00\x90\x49\x03\x58\xed\xeb\xd9\xca\x48\xb8\xe6\x04\x5d\xc6\xbe\x1d\x55\xb8\x71\x1c\xd6\xe9\xf3\x68\x82\x5e\x1d\x14\x19\x44\xad\xfb\xe7\x76\xae\xc6\xa5\x6d\x7f\xba\xf8\xa0\xd0\x63\xb0\x41\x29\x98\x88\x1c\x06\xda\x36\x5a\x5e\xde\x6c\x0a\x37\x8d\x2d\xbb\xaf\x6a\x8a\x1a\x4a\x2d\xa2\x32\x05\x74\x7c\x33\x91\x9b\xa6\x59\x19\x56\x41\x99\xea\x38\x42\x80\xe9\xf6\x43\x88\xe7\xc5\xee\x12\x01\xe6\xd5\x54\xfb\x43\xf5\x75\x02\x36\xaa\xfa\x86\x1d\xf4\x8c\xd2\x1c\xa2\x58\x7b\x79\xab\x42\x11\x09\x66\x47\x8d\x5f\xc6\x8f\x93\xa1\xd7\x9f\x14\x57\xfa\xca\x90\x48\x50\x89\x97\x71\x00\x60\x50\x1a\x6e\x10\x3a\x8b\x3f\x18\x8b\x33\x35\x7d\xcc\x7b\x49\x00\x5b\x28\x8d\x1f\xa9\x2a\xa7\xc0\x3b\xd2\xa5\xe6\xac\x9a\x49\x5f\x35\x41\x35\xeb\x29\xab\x71\x40\xeb\xf5\x56\x58\x29\xa9\x3b\x8b\x91\xbe\x08\x51\x1b\xe1\x5b\x8e\xd2\xc4\x98\x3e\x88\xd5\xf2\xbd\xe6\x1c\xc6\xe9\x16\xa8\x97\x27\xcd\xb8\x80\x75\xf6\x85\x83\xb3\x9f\xa2\xe7\x10\x08\xe7\x3b\xe6\x9f\x82\xf2\x59\xb6\x8a\xd1\x10\x34\xcf\xa1\x4a\xdf\xb1\xca\x64\x4c\x40\xdd\x73\xd2\x80\x57\x3d\xb3\x09\x3a\x9d\x98\x37\x2c\x67\xd2\x7c\x91\x70\x3b\xd1\xd5\x59\xd8\x72\x8b\x3a\x89\x08\xdf\x52\x10\x73\xc4\x3d\x33\xce\x17\x6f\xa0\xc2\x5e\x96\xde\x0e\xe5\xa0\xcc\x6a\x6f\x8c\x4b\x22\x44\x4e\x7c\xe3\x38\x5d\x6d\xf4\x30\x27\x85\x9f\x4e\xcb\xc8\x54\x97\xc9\x4b\x85\x6a\x56\x9b\x0a\x42\x7d\xf4\x85\x42\x38\x1e\xcb\xdd\x4e\x91\x19\xc6\x36\xa4\x22\x85\x50\x0b\x12\x4e\x64\x6c\x2b\xa2\x52\x13\x1c\x07\x62\x09\x65\xd6\xb2\x33\xd0\xf2\x00\x49\x64\x8e\x85\xc7\x51\x61\x5a\xf6\x6e\xf9\xaa\xb4\xd3\xa1\x35\x1d\xd1\xc0\x77\x09\x08\x3a\x84\xe2\xba\x84\x94\x8b\xb3\x0c\x33\xa6\x44\xa8\xfd\x49\xde\xf0\xb4\xb8\x55\x06\x04\x91\xd1\x36\x6d\x39\xef\x00\x0a\x2e\xf9\x16\xc5\x8a\x22\x3e\x51\x35\xa4\xe3\xd4\x13\x1b\x00\x13\x50\x9f\xa0\xf1\x04\x69\x87\x1e\x15\x9f\x6f\xfd\x64\x14\x9b\xf6\x0f\x84\x20\x8b\x25\xf4\x40\x5e\x2d\xde\x72\x09\x06\xe2\x65\x4d\x7f\xdb\x1b\x2c\x19\x36\x95\xdd\x5a\xee\xa4\x72\xa9\x0b\x70\xb7\x17\x00\x98\x3a\x8a\x50\x80\xfd\x2b\x6f\xd8\x7d\x0d\x18\xc7\x16\xd3\x2a\xc3\x27\x05\x96\x13\xe8\x6d\x94\x11\x2b\xa2\x0c\x82\x3e\x41\x38\x2d\xc5\x6c\xda\x37\x9b\x32\x1c\x86\x8b\xb5\x20\xfc\xa9\x0f\x15\x2b\x7c\xf8\x07\x8c\x0d\xe2\x59\x3f\xc7\x8d\x8b\x87\x9b\x69\x9f\xba\x3c\xf6\x21\x26\x89\x9c\x6c\x45\x0d\x39\x44\x50\x69\x7b\xd7\xed\x3f\x9f\xa5\xb5\x6a\x36\x80\x0d\x3d\xd8\xe9\xa3\x76\x80\x5e\xb6\xd1\x58\x5b\x38\x57\xd0\xce\xe6\x0a\x2c\x18\x53\xe0\x8b\x20\x51\x45\x3e\xdd\xfd\xe0\xce\x30\x49\x90\xde\x4e\xfe\xe2\x5d\x5d\x1c\x9c\x5e\x9e\x5c\x9d\x9c\x9d\x46\xef\xcf\x3e\x9e\x7f\x38\xba\x3a\xea\xb5\x13\x14\x70\x3b\x8d\x2d\x91\x42\x1e\x52\x45\x8f\xc7\xa9\x6f\x11\xc7\x12\xc7\x25\x0f\x8c\x1e\x5b\xa1\x1e\xb2\x8e\x6e\x9e\x22\xe2\xf9\xfa\x76\x4d\x20\x62\xac\x5b\x37\x8a\xff\x93\x02\x72\x12\xac\x7f\x33\x52\xe2\x34\x85\x97\x29\x17\x30\x7b\x30\x61\xa5\x8f\x01\x69\xeb\x7e\x75\x47\xb1\x1e\xf9\x42\x05\xc9\xfc\xab\x8a\x77\xbb\x89\x0a\xc3\x14\x53\x9b\x41\xde\x42\xaa\x7b\x56\xfc\xed\x03\x29\x0f\x62\x39\x61\xdb\x85\x24\x7a\x25\x00\x0b\x53\xe4\x1c\xf8\x3a\xca\x14\x9a\x90\xf9\xe4\x7f\x2c\x92\x00\x1c\x59\x4a\xdf\x0d\xa1\xe5\x31\x05\x88\xcf\x61\xaf\xd3\xf8\xac\xb7\x2a\x34\x69\x6f\x9d\xb5\xc1\x29\xf6\x66\x00\x68\xf3\xea\x04\xd8\xde\xc1\x1c\x40\x16\x37\x05\x9e\xe0\xeb\x5b\x86\x3b\x40\x22\x9c\x73\x75\xbc\x32\xbd\x98\xd5\xa6\xdd\xbe\xd5\x41\x7e\xce\xf8\x27\x55\x20\x96\x37\x7c\x58\x58\x92\xf4\xf5\x06\x88\x2a\xf8\x77\xd6\xac\x4b\x41\x95\x7d\x47\x36\xad\x92\x27\xb5\x0f\xbd\x69\x4f\xb7\x31\x55\x02\x74\x64\xb5\xf1\x80\xd2\xb7\x53\xc6\xf2\x70\x06\x84\xaf\x86\xce\x8d\xd7\x72\x15\x44\x1b\xcb\x95\x26\x8e\x8e\x50\x5e\x97\x6a\x20\x8a\x84\xa0\x23\xf0\x0e\x66\x1b\x6a\xa3\xb1\x30\x3e\x89\x90\xae\xc9\x78\x5f\x32\x80\x6b\x3b\x1b\x09\x86\xd0\x38\xf5\xdb\x39\x1d\x5a\x9e\x96\x62\xe1\x44\xb0\x8e\x71\x4c\x01\x04\xf1\x60\x2f\xc2\x0a\xc2\x49\x92\x0f\x71\x01\xf2\xd1\xc2\xdd\x12\x1e\x43\x99\x29\x0d\x19\xa7\xa5\xeb\x55\xa3\x13\xed\xd0\x65\x8d\xd5\xb4\x38\x38\xc1\x00\x9c\x64\x36\x78\x88\x53\xf4\x7c\xd3\x4e\xd8\xb0\x2a\x25\x25\x66\x79\xf8\x9e\x52\xc7\x48\x54\x34\xcc\x1b\xd9\xc3\x43\x39\x11\x68\xa7\x2f\xa7\xb7\x02\xf4\x9e\x81\x91\xa4\xa6\xa6\xe5\x5e\x4b\xfc\x14\x1e\xb1\xe1\x78\x82\x14\x10\x84\x27\xb5\x7c\xf2\xd1\x82\x16\xf9\x02\x20\x62\x38\x9e\x6c\xd0\xca\xb8\xf3\x52\xde\xda\xd2\xc6\x38\x1d\x39\x66\xe3\x62\x82\xa6\x38\x1d\x17\x93\x56\xde\xe9\x68\xef\x28\x18\xe3\xa9\x7a\x02\xa3\x28\x79\x8f\xf1\x51\x5c\xda\x13\x0d\x13\x36\x4d\x50\xde\xe9\x94\x06\x76\x1b\x51\x76\x9e\x24\xc3\xd5\x7a\x9d\x9b\xb5\xda\x91\x75\xe9\xe7\x51\xbc\x52\x6a\xd9\x15\xd8\xa3\xeb\x4b\x86\xa5\x07\x29\x8d\x70\x4e\x0d\xc2\x0c\x00\x51\xe7\xde\xcb\x8c\xa5\xd6\x07\x39\x2a\x8b\x70\x69\xbe\x27\xae\xb5\xaa\x41\x31\xd2\x19\x7a\x9c\xdc\x13\x5e\x42\x8a\x5c\x48\x87\x7f\x34\xea\xc3\x10\xe7\x65\x01\x78\xd8\x7e\x54\xb8\x60\x29\xab\x5a\x2e\x80\xae\x32\x50\xc8\xc6\x2e\x7d\x3f\x55\x3a\x1f\x36\x40\x5d\x31\x4e\x27\xad\x55\xcc\x90\xd3\xa1\x36\x4a\xa8\x35\x11\x0d\x20\xf4\xca\xda\x44\x75\x85\x85\xda\xd6\x4d\x7e\xa2\xd6\xeb\x40\x25\x5b\x3b\x62\xae\x72\x49\x0d\xaf\x03\xcc\xdb\xd1\x14\x93\xe7\xdc\x1b\xa1\x19\xf6\x3d\x14\xf1\x4e\x67\x87\x3c\xeb\x96\x08\x65\x98\x54\x89\xc3\xd0\xcb\x11\x47\xf3\x6a\x9d\x4d\x55\xd6\x3c\x19\xb5\xa6\xeb\xf5\x6c\xbd\xce\xd6\xeb\xf9\x48\x8f\x09\x72\x48\x6c\x32\xd7\xa2\x47\x87\x5f\xe6\xa0\x00\xc0\xb7\x5e\x06\x35\xf2\xca\x2e\xb5\xf2\x70\x27\xaa\xd4\x51\x91\x28\x5f\x28\x92\x00\x1b\x17\x93\x4e\x47\x47\x94\x94\x2f\x9a\x5f\x65\x04\x61\xe1\x1d\x00\x80\x7f\x5b\x37\x24\xf0\x47\x14\xf1\x89\x8a\x7f\xc0\xb7\xb8\xff\xf2\x2d\xe0\x61\x97\xf5\x41\x2f\xc2\x44\x7b\x02\x47\x4a\xd6\xbd\x37\x95\xdb\x8c\x8d\x57\xbd\x3b\xf2\x38\xc1\x2b\x1d\xca\x8c\x6b\x47\x83\xab\x9e\x6e\x61\x5b\x73\x95\x82\x56\x17\x51\x31\x4f\x43\xea\x7e\xbb\xa6\x6e\x8d\xda\x53\x57\x33\x67\x0b\x83\x57\xf3\x67\x31\x6d\x73\xf1\x55\x45\x37\xc1\x0e\x87\x05\x36\x55\x56\xfc\x28\xf8\xd4\x2e\xe9\x74\x7c\x4d\x0e\xcb\x29\x45\x55\xab\xf1\xc6\x36\x13\xe0\x1e\x12\xed\xa8\xce\x3f\xf8\x2a\xe4\xde\x46\x4d\x4c\xbd\x13\xf2\xca\xf5\x7d\xe2\x39\x4f\x13\xcf\xf5\x8c\x36\xf6\x0c\xcc\x2b\x50\x21\xfb\x21\x18\x0e\xd0\x7b\xaf\x17\xcd\x3c\x88\xed\x17\x16\xda\x46\x9b\x57\x20\x34\xc7\x7d\xe5\xab\x32\xa6\x38\x95\x78\x5c\x1c\xde\x75\x63\x3e\x49\xe4\x2d\xad\x95\x59\x98\xe2\x3e\x01\x6e\xc8\x7c\xe5\xd9\xfa\xf1\x48\x91\xb1\xa0\x0c\x28\x36\x31\xd9\xc2\x87\x33\xae\x93\xc2\x12\x71\x8a\x82\xab\x57\x61\x76\xea\x92\xa8\x7a\xf8\x81\xb1\x76\x3a\xf3\x66\xc2\xd6\x5c\x21\xde\xd5\x51\x53\xc7\x16\x56\xad\xb7\x66\x99\xe1\x5b\x43\x6a\xf2\x43\xfd\xc7\x89\x51\x3c\xdf\x2a\x66\xd4\xba\xac\xa0\x25\xf0\xac\x68\x51\xc9\xc5\xe4\xda\x86\x37\x99\xd5\xbd\x7f\xc6\x3b\xbf\x26\x84\x3d\x46\x53\x4c\x12\xe3\x98\x48\x5b\x37\xfa\x32\x92\x2b\xb6\x25\x86\xc3\x3f\xcb\xd7\xeb\x36\xaf\x30\xa3\x58\x87\x58\x6a\xec\xb3\x95\xad\xec\x0c\x12\x0d\xfb\xc3\x31\x69\xd6\x0b\x50\x4c\x0b\x92\xd1\x54\x78\x57\xc9\xbf\x68\x50\x51\x63\xbf\x54\xf8\x46\xb9\x3b\x67\x9c\x94\x5b\x63\x5e\xd5\x38\xff\x1c\x8b\x91\xa8\x70\xf9\x8b\x8a\x8f\xbe\xd0\x67\x53\x31\xee\x5b\xda\xdf\x30\xbb\xc0\x4a\x81\x16\xb7\x51\x1a\xe9\x0e\x04\x26\x0b\x46\xf2\xd2\x84\xde\x78\x7c\x30\x8a\x08\x32\x06\x27\x0d\xb4\xc9\x7a\x1d\xca\x9d\x0c\x98\x69\xe0\x91\x31\xdf\x71\x96\x08\x31\x05\xe1\x7b\xcf\x4a\xad\xf7\x2c\xdf\x75\x56\xaa\x66\x12\x8a\xfc\x4c\xc5\x7c\xab\x98\x78\xcb\x8e\xb7\xcd\x05\x62\xa0\xff\xe5\xdd\xe1\xf4\x1f\x72\xb0\x14\xc3\x74\x0c\xd1\xa7\xe8\x78\x30\xd1\x2a\xcd\x55\x7e\x23\x60\x6a\xe5\x73\xd2\x27\x34\x93\x98\x41\x86\xfb\x68\x6e\x30\x7d\x5f\xc1\x7f\x3f\x7b\x3b\xdf\xef\x76\xb5\xbe\xe5\x32\xc8\x32\xce\x26\x68\x81\x97\x9e\x25\x54\xd2\x5a\xc5\x33\xb4\xb0\x77\xff\x2c\x40\x3e\xd3\xaa\x66\x82\xc3\x29\x09\x9a\xc1\x4c\x42\x47\xb7\xcb\xb9\x9a\x79\xaa\x36\xe4\xc8\x37\x4a\x0a\xc6\x8f\x13\xcd\x7b\x57\xec\x1b\xab\xf2\x10\x4c\x53\xa1\x14\xcb\xb9\xe5\x35\x36\x74\xcb\x23\x8f\xe5\x46\xf7\x6b\x85\x30\x33\xde\x19\x83\x08\xd3\x35\x09\x8d\x42\xf0\x1b\x98\xd8\x75\xfc\xdb\xd7\x76\x2a\x13\x08\xcc\x29\x37\x04\xc5\xb9\x0d\x2a\xf6\x96\x76\x3a\xe9\x78\x6a\x05\x3a\x64\xbf\xdb\x9d\x26\xfb\x74\x16\x4f\x31\xb6\xf9\xc2\xd6\x67\xea\xe6\x68\xcd\x7c\x2e\x6d\x6a\xdd\xa2\x4d\xbb\x26\x18\x8a\x97\xa0\x15\xac\x3e\xc4\xde\x72\x94\x6e\x39\x6a\x9a\xfa\x33\x94\xa3\x52\x07\xab\xf5\xaf\x5b\xbf\x4d\xa5\xb4\xc6\xd7\xeb\x9d\xcc\x88\x7f\xb3\x96\x76\x0e\xb5\x69\xad\xe2\x39\xe2\x46\x09\x3c\x20\x69\xec\xa9\xb8\x97\x08\xf8\x22\x59\x54\x11\xf0\xfb\xa4\xd3\x99\x37\x25\xc6\xf3\xf1\xfd\x04\x2f\xc6\xf7\x8e\x40\xcc\x3a\x9d\x9d\x25\x34\xe5\x2f\xfc\xff\xf2\xb1\x76\x47\x3a\x80\xff\xe1\xb6\x8b\x09\x82\xd3\x0e\x31\x84\xd4\x55\x5b\xf5\xbe\xf7\xbf\xd1\xb7\x6f\x67\x9f\x0f\x90\xba\x3b\xb5\xed\x8e\x89\x61\xf0\xd5\x44\x82\x80\x88\x0e\x7e\x10\x08\x3f\xe2\x43\x18\xd7\x81\x57\x22\x3a\x58\x26\x53\x80\x49\x5d\x6b\x41\xdb\xfb\x54\x39\x6f\x74\xd2\x89\xf5\x3a\x6e\xcc\xa0\x8c\x26\x37\xff\x40\x80\x88\xb4\x4c\x97\xf8\xaf\xf2\x21\xcf\xf1\x7b\xf5\xaf\x24\x7f\x19\xfe\x55\xa2\x90\xe9\x94\xe0\x13\x04\xfe\x4d\xe6\xf8\x54\x3f\x98\x1c\xc7\xe0\xae\x01\xf8\x4d\xf8\x2b\x82\xb9\x21\x1c\xbf\x83\xa7\x82\x65\x84\xce\x1e\xf1\x39\x02\xa5\xd5\x19\xbd\x5d\x71\x82\x25\x5a\xca\x0a\xbc\x24\xf2\x7f\x36\xc3\x0b\xe2\x3c\x3e\xe0\x9f\x90\x91\x92\xe0\xdf\x94\xef\x39\xfc\x23\x22\xbd\x19\xcd\x05\xe1\xf8\x17\xe8\xee\x63\x21\x09\x74\x58\xb1\x2b\x1d\x15\xbf\x67\x2d\xf3\x7b\xd3\xb4\x14\xcd\x71\x26\x28\x7e\x5a\xd0\x2f\xb4\x18\x36\x7a\x47\x61\x1a\xce\xb2\x42\xf7\x4b\xbd\xcd\x66\xc8\x0a\x14\xb0\xbf\x63\x50\xd3\x22\x68\x30\x41\x36\x88\xf9\xcd\x98\xf8\xe4\xd6\xc9\x83\x8d\x50\xee\x07\xde\xbb\x7a\x5c\x12\xad\x8a\x6d\x6a\x54\x71\xbc\x6f\x48\x94\xda\xe8\xfe\x56\x78\x55\x68\xb7\x3d\x14\x73\x08\xe3\x07\x6e\xea\xe5\x23\x88\x41\x77\x55\xc0\x2f\x13\xf4\x4a\x00\x29\xa2\x39\x80\x1b\xc4\x66\xb3\x61\xe3\x15\xa4\xea\x6c\x39\x5d\x02\x55\x25\x68\xb2\xb9\xba\x6c\xb4\x2d\xaa\x63\x64\xc6\x0c\x0d\xb4\x7b\x5d\xdd\x83\x0d\xd2\xf3\x34\xac\xc9\x6c\x15\x36\xa5\x5a\xd2\x01\x08\x69\xe2\x7b\xb3\xab\xc4\xcc\x8b\xfb\x88\x8e\xd9\x24\x01\xcf\x79\x9b\x4d\x2b\x5c\x7b\xaa\x95\xc8\x9e\x28\x68\x45\x43\x2c\x9b\x9d\xc1\xc6\x37\xbd\x34\xf3\xbf\xb7\x83\x6b\xc0\xc3\x06\x7b\x92\x3d\x91\x3f\x58\x6c\x68\x0f\xf6\x49\xcc\x12\x7d\x87\x8d\x27\x95\xc0\x1a\x72\x1c\x72\x82\x75\x90\x57\x88\xc9\x3c\x24\x68\x99\x3e\xe6\x2c\xcd\x86\xe0\xa6\x42\xf4\xae\x6f\x57\x34\xfb\x0b\x79\x44\x34\x93\x6f\x34\x43\x44\x76\xfc\x54\x65\xce\x88\x48\x69\x2e\x3f\x70\x52\xae\x72\x81\xc0\xf3\xdd\x49\x36\xe4\x92\xfe\x95\xb9\x73\x09\x3f\x64\x06\x78\x40\x82\x2e\xc8\xa5\x48\x17\xcb\xe1\xa1\xa4\xcf\x0a\xf6\x10\x27\x08\xe4\x5b\x43\x36\x6e\xbb\xe1\xef\x3e\x50\x31\xdf\x05\x4d\xf3\xf6\x64\xe4\x14\xfc\x4d\x45\xda\x2b\xdb\x26\xe9\x74\x4a\x22\xae\xe8\x82\xb0\x95\x08\x74\x86\xcc\x62\x10\xdc\xdf\x27\x2e\x2a\x0f\x31\x0c\x55\x81\x21\x5a\x22\xc7\xa2\xa7\x87\xdc\xe2\x3d\x39\x58\xcc\x7b\x77\xe4\xb1\xcb\x7b\x34\x43\x3a\x2a\xcf\x0f\x7e\xb2\x1e\x22\xe2\xca\xa0\x11\xd8\x2d\x46\x35\x1e\x52\xd4\x5b\x82\x98\x15\xe2\x09\xed\xa4\xc8\xb4\x94\x6c\x5c\xf4\xd8\x4d\x82\xfe\xad\x1f\x06\x2f\x31\xaa\x23\x0d\x6e\x56\x40\xef\xdb\x57\x9e\x57\xd6\x6b\x66\x07\x90\x96\x43\xc3\x64\x7a\x3c\x45\xc2\x5d\x9e\xa0\x1b\x81\xb8\x1f\x7f\x24\x79\x0a\xc2\x7f\x98\x78\xe6\x61\x0b\x41\x8b\x9d\x0e\x57\xd1\xa7\x82\x54\x0b\xfc\x30\xce\x47\xe1\xa9\x54\x56\xf7\xd7\x80\x74\x8d\x20\xee\x85\xd9\x2d\xc9\x70\xcf\xff\x26\x17\xd7\x18\x79\x82\xfa\xc6\x22\xc8\x9c\x0c\xef\x63\x23\x44\xf4\xae\x23\x08\x8a\x8b\x31\x87\xaa\x79\x32\xcc\x14\x8d\xe8\x93\xf7\x7e\x3c\x78\xed\x52\x6d\x03\x0f\xc3\x06\x97\x35\x7c\x54\x3d\xec\x4c\xc1\xeb\xba\xf9\x36\x38\xf7\xa7\x4d\xe6\xae\xfc\xf1\x89\xd8\x38\x1a\xa8\x30\x92\x31\xea\x94\x27\x37\x9b\x98\x23\x11\x8e\xa3\x58\xaf\x63\x15\xa5\xa0\x3e\xa0\xda\x88\x6c\x66\x35\xa6\x04\xee\x41\x7d\x38\x5a\x3b\x45\xa7\x43\x15\x57\x4a\x65\x50\xd6\xde\x44\x8d\x5b\xd6\xaa\x02\x90\x04\x41\x53\xcc\xb6\x93\x6b\x92\xa8\xef\x36\xc2\x0c\xd5\xd3\x13\x17\x58\x24\x3a\xc6\xb4\xc4\xa7\xcd\x06\x55\x52\x5d\xff\x72\xc0\xd4\xaf\x43\xc1\x66\x10\xa5\xca\x13\x27\xe6\xa4\xd0\x73\xc2\x42\x3f\x18\xb2\xb3\x2c\xd9\x98\xbd\xb8\xd1\x7a\x2f\x41\xe0\x95\xe4\x89\xd8\x9d\x22\xf7\xa1\x79\x8e\x89\xdd\x2c\x28\x8c\xe1\xb1\xac\xfa\x3e\xd6\x7b\x4e\x92\xd3\xa6\x0c\x16\xc8\x24\xe3\x01\x32\xb9\x56\x37\xe5\x94\xd3\x1b\x17\xf8\x75\xc4\x7a\x0e\x4c\x75\x3a\x2b\x79\x23\xe6\x33\x9a\xe7\x24\x6b\x23\x92\x0c\xcd\x6e\x79\x44\xc4\xb7\xdb\x5e\x3c\xdb\x03\xd5\xea\x1e\xf2\x3b\x63\x2a\x9a\x87\x15\xdd\x57\xc5\x7e\x61\x2f\xc1\xc4\x4e\x5b\xc6\x92\xca\x79\xa2\xe3\x74\x82\x85\xfc\xeb\x0e\x26\x98\xc3\xc3\xde\x04\x17\x30\xd8\x14\x66\x52\xf7\xc9\x1f\x84\x6b\xfa\x31\x40\xef\xfc\x46\xb9\x1d\x0f\x44\x1b\xac\xcc\xd0\x00\xb6\xb3\x37\x4f\xc3\xb6\xc2\x8f\xd4\x94\xa1\xbe\xaf\x1c\xe7\x18\xf6\x88\x82\xb6\xa3\xb9\x5a\x54\xa4\x54\xe1\x22\xa5\xe2\xd7\x49\x81\xc5\xb8\x9c\x80\x5a\x54\xd9\xe5\x13\x54\x8c\x6e\x63\xc5\x02\x4d\x93\x21\x8d\x53\x89\xe9\x36\xac\x21\xee\x7b\xe1\x82\x6e\x6b\x84\x22\x4a\x71\x13\x60\x40\x25\x56\x36\x14\x69\x22\xf7\x31\xc5\x3c\x2e\x3c\x99\x77\xa9\x62\x7a\xae\x14\x0a\x41\x71\xd1\xf2\x58\x86\x6a\x72\x00\xbd\xc1\x58\x8c\x16\xb1\x40\x15\x74\xe9\xc0\x28\xa6\x95\xd1\xd4\x60\x4e\xd3\xb4\x50\x2a\xb4\x9a\xea\x48\x45\x54\xa6\x0b\x62\x72\xf6\xda\x49\x32\xdc\x81\x3b\x1c\x6a\x64\xc9\x30\x1d\x65\xb1\x40\x34\x19\xca\x54\x09\x6e\xe1\x65\x4f\xb1\x8e\x16\xf0\xe6\x2d\xe8\x4d\x18\x66\x51\xb1\x7d\xec\x32\x0e\x14\x6b\x7b\x87\xac\xd7\x7b\xfa\x51\x58\x54\xa3\x7a\x08\xa6\xf3\x94\x16\x26\x6e\x99\x0a\x86\x00\xbf\x8a\x42\x09\xf6\xa1\xa7\x05\xac\x88\x15\x77\x8d\xc4\x53\xc4\x2d\x57\x49\x2f\x7c\xd3\x8e\xaa\x34\x47\x7d\xb7\xcf\xc9\xbd\xe3\x65\xf9\xd0\xa7\xc4\x30\xa0\x11\x19\x8a\x56\x1d\xa4\x5b\x28\x74\x1b\xcb\xed\x53\xa2\x14\xae\x09\x0b\xae\xef\x5f\x8c\x9a\x63\xfd\xbf\x1a\x0d\x9f\xf7\x81\x8d\x9b\x52\xb3\x31\x1e\xd6\x20\x44\xc1\xd4\xea\xe2\x5f\x83\x02\xcf\x59\x71\xa1\xc8\x06\xed\x04\xe1\x9a\x96\x9f\x4a\x5a\xdc\x2a\xc2\x58\xd1\x06\x18\xe3\xcb\xda\x57\xcd\x87\x77\xae\xe8\xe4\x35\x6c\x72\x15\x54\x28\x82\x5f\x2b\xe4\x19\xe4\xf1\x59\xe7\xb0\x50\xac\x59\x0a\xa4\xcf\xd0\x7a\xdd\x57\x6b\xab\x8f\x94\xe9\x33\x27\x8b\x94\x16\xb4\xb8\xf5\x52\x00\xa2\x79\x9e\xe2\xcd\xa8\x09\x58\x63\x2a\xfd\x72\x70\x5c\x67\x13\xb6\x90\xcd\x5e\x83\x46\x55\x5d\x4f\x29\x44\x1a\x76\x7a\x93\x16\x92\x19\xe2\x59\x37\x98\x4e\xe7\x47\x85\xe0\x8f\x31\x19\x17\x13\x54\x80\x04\xc8\x70\x3b\xc9\xf4\xee\x78\x95\x03\x8c\x02\xab\x79\xd5\xa5\x5a\xba\xbf\x09\xe8\x2c\xee\x63\xeb\x1d\xce\x8c\x3c\xf0\xe3\x67\x76\xf1\x32\x0e\xba\x4b\x92\xca\xec\x28\x51\x8f\x84\x14\x40\x95\x7e\x4c\x1f\x6f\xc8\xd5\x9c\x14\xe9\x4d\x5e\x17\x6a\xfa\xe7\xb5\x61\xbb\x59\x7b\x97\xfa\x1e\xf1\x81\xdc\x4e\xbf\xa5\x00\x19\xf1\x2f\xe4\x55\xf2\x94\x1a\x50\x06\x37\x3f\x60\x7b\x9e\x07\x65\x35\xb5\x49\xf5\x76\xd1\xd0\x43\xd1\xd4\x07\xc2\x5e\x6b\x48\xb8\x6b\x0d\x71\x87\x52\x34\x50\x92\x34\xa9\x56\x32\x90\xa5\xfd\x52\x5b\x0e\x86\x15\xc5\x93\x87\xa8\x88\xa7\x49\x0b\xc0\x62\x3a\x5a\xc4\xa5\x04\x8b\xf1\x2c\x2e\x91\xc4\x82\x74\x2f\x1f\xa8\xe1\x0f\x1c\x88\x18\xac\x10\x82\xc8\x2a\xe1\x77\x55\x67\x13\x3a\x29\x8c\x37\x42\x89\xa9\x6c\x2d\xee\x7b\x51\x34\xa1\x53\xdc\x4e\xac\xad\xad\xf6\x38\xd8\x88\xfd\x8f\xfc\xf9\x09\xb6\x88\xc1\xeb\x6c\x86\x0b\x98\x70\x6f\x0a\xbd\xcd\x95\x1d\x6c\x65\x93\x06\x87\xca\x09\x1e\xa8\x43\x57\x1a\x00\x56\xa7\x03\x37\xcc\x68\x11\x53\xd9\x87\xb8\xde\x09\xd3\x08\xda\x7a\xd8\x12\xdb\x41\x53\xa8\x36\x33\x95\x63\xb6\xbb\x1b\x1c\xa1\xb1\x98\x60\x0e\x75\xf8\xd3\xff\xcc\xd1\x69\x49\x54\xaa\x46\x4f\xf8\xea\xe5\x0d\x1b\x71\x93\xbc\x9c\x77\xcf\xe6\x6d\x0a\xba\xf0\xad\x63\x51\x37\xf8\x13\x4c\xfb\xd0\x47\x32\x15\xe7\x8b\x6f\x86\xe6\x9b\x43\xa6\x38\x49\x4b\x56\x0c\xb9\x72\x08\x76\x84\x81\xad\x77\xdd\xee\x3a\x62\xbb\xdb\xde\x6d\xa3\x33\xed\x17\xeb\x72\x9b\x15\xba\xeb\x21\xcd\xf0\x99\x89\xb0\xa4\xa8\x0b\x0b\xd7\xeb\x56\x96\x06\x98\x05\x69\x1e\xfa\x85\xc7\x13\x54\xbf\xca\xc1\x5c\x5c\x5f\xe5\x09\x9a\x6a\xff\x62\x4d\x8c\xa6\x4e\x27\x10\xfa\x36\x30\x9d\x7e\x61\x2b\xc5\x6f\x5a\xa6\x65\x09\xb2\x30\x38\x7a\x3c\x72\xac\x94\x12\xcc\xfb\x67\x94\x97\x22\x32\x97\x61\x24\x18\xa4\x1a\xdb\x00\x0f\x25\x69\x27\x1b\xed\x64\xd3\x57\xdd\x25\xa3\xa6\xbb\x71\x67\x00\x00\x55\x54\x80\x85\xd6\xcc\x42\x99\xa5\xd4\x9a\xbf\x5b\x4a\xce\x60\x95\x45\xf2\xb4\x50\xee\xed\x37\xc6\x0b\xc0\xf0\xa5\x19\x38\x4e\x69\x4e\x32\x39\x20\x3b\x88\xe8\x0f\x1a\x4a\xfe\x61\x18\x9d\xe7\x24\x2d\x49\xb4\x02\x58\x45\xa2\x3f\x14\xe4\xe1\x0f\x11\x5b\xca\x4b\x97\x71\x04\xf0\x4b\xfb\x2c\xf1\x27\xc1\x60\xa2\x37\x04\x90\x53\x92\xc9\x69\x74\xfc\xbc\x1e\x4c\xd2\xf3\x08\x85\xb9\x2b\x9a\xc5\xa2\x12\x23\x9b\x09\xc2\x03\x8c\x4c\x78\x54\x9e\x63\xa6\x18\x75\x68\xe0\x0d\x28\x7a\xd7\xb8\x06\x7e\x21\x1e\x15\xa8\x00\x1a\xf6\xe6\xd6\x68\x54\x81\xb4\xd6\x9b\x03\x23\xd1\xae\x53\x06\x1a\x2c\x57\xec\x54\x78\xdd\x51\xd7\xf3\x7e\x88\xf9\xa6\xb2\x37\xbe\xbd\x06\xb5\x13\x54\x05\xfa\x0e\xd0\xb1\xba\xea\x71\x5f\xbe\x54\x2d\x81\x9f\x36\x9e\xf1\x11\xa2\x1e\xa2\x56\x24\x48\xf1\x32\x0b\x15\x92\x63\xcc\x26\x98\x8c\x99\x93\x74\xa6\xb8\xbf\x9f\x3a\x9a\x2c\xed\x76\x93\x27\x3e\x16\xe3\x74\x32\xc1\x8a\xcc\xb4\x76\x54\x95\x08\x0d\x0e\xa7\x23\x8d\x22\x90\xdd\x41\xa3\xf0\x83\x78\x52\x78\xaf\xca\x3b\x7f\xb1\x9f\xe4\xd0\xdd\x39\xf1\xe3\xc5\x84\x4c\x19\x8f\x08\x3c\xf7\x8f\x71\x03\x17\xf1\xa5\xd8\x47\xdd\x41\x82\xa8\xc2\x9a\xe4\x7c\x71\xf0\x34\xa5\x0d\xde\x9d\xc0\x86\x4d\xb4\xe7\x87\x27\x6d\x4c\xb9\x03\x74\x77\xed\x9e\x4f\x13\x70\x73\x12\x72\xe1\x2e\x13\x17\x44\x55\xa1\x6d\xa9\x8f\xb6\xe5\x3e\x0a\x74\x29\x51\x20\xcb\xf3\x2a\x51\x9e\xa0\xd2\xd0\xa5\x3b\x83\x16\xed\x74\x76\x8c\x22\x7e\x8a\xef\x62\x0a\xe1\xe6\x0a\xb9\xbc\xe9\x46\x29\x9b\x55\x6b\x29\xc6\x7c\x52\xd1\xc4\x92\xf7\xfd\x0a\x59\x1f\xcb\x40\xd8\x66\xf1\x4a\x62\x00\x3b\xee\xed\x20\x76\x14\x47\x32\x0c\xc3\xac\x8a\x04\xb2\x7c\x71\x59\x24\xfc\x1b\xaa\x4a\x36\x88\x8e\xae\xe2\x15\x2a\xb4\xd7\xf5\x64\x78\xe1\xbf\x6d\x9c\x58\xf8\xfa\x1a\x00\xce\xf5\x35\x26\x3e\x77\xf3\x22\x64\xc8\x69\xf1\x71\x5c\x38\x4d\x75\xaa\xe0\x2b\xb5\x74\x1e\x71\xa5\xaf\x5c\x69\xfd\xf1\xb2\x07\x7b\xe7\x99\xf8\x0d\xae\xc5\x20\x6a\xca\xfb\x00\x14\xa9\x6a\x00\xfe\x38\x99\xcf\x25\xba\x54\x52\x9f\x1c\xc1\xf7\x66\x28\x56\x0d\x52\x3b\x0a\x6c\x13\x41\x07\xdf\xa0\x6e\x43\x2d\x9e\xb6\xbe\x20\xbd\x2b\xc2\xa8\x44\x83\xe9\x91\x16\xce\x68\xb0\xfe\x40\xc5\x3c\x4a\x8b\x28\x95\x2d\xb4\x13\x00\x92\x97\x4a\x7c\xb6\x4d\xdc\xef\xf8\xcc\x72\x6f\x57\xbb\x98\xd8\x5d\xc8\xab\x1c\x0f\x6b\x51\x94\x4e\xc9\x0b\xfd\x48\x10\x6f\x79\x31\xad\x9b\x09\x3d\x6b\x3f\x29\xe1\xc5\xbd\x76\x2c\x62\xc0\xe6\xb8\xb0\x76\x75\x8d\x08\x5c\x66\x0c\x07\x9b\x3e\x2e\xf4\xc7\xc4\x81\x1e\x39\x2b\x9a\xd6\xce\xe1\xf9\xd7\x30\x72\xdd\xb6\x39\x0a\x6a\x44\x50\x8f\x73\x36\x63\x84\x2d\xf8\x28\x48\x86\xf8\x8c\x2a\x70\xef\xc7\x17\x9c\xe4\x54\xe0\x9c\x31\xb1\xde\x19\x58\x0f\x39\x2f\x3a\xbf\xd9\xc4\xd7\xde\x6d\xf1\xeb\xcb\x1b\xf0\x63\x7c\x09\xd7\xa9\xdd\x7a\x97\x2f\xef\x3b\x2d\x7a\xfd\x86\xed\x67\x7b\x72\x52\x39\x45\xe0\xa0\x08\x8e\xd1\x47\x7f\x0a\x7d\x02\xe2\x01\xe6\xec\xf0\x45\x6f\xd1\x55\x5b\x02\xad\xd0\xd9\x4f\x50\xdd\x5d\x37\x35\xf3\xf8\x8f\xb8\x6e\x6c\x62\xab\x04\x98\xb3\xd5\x55\x0d\x59\x23\xc5\x36\xd6\x88\xf3\x42\x54\x71\xde\x42\xad\xc2\xba\x35\xf1\xd2\x34\x5d\x95\x4d\x43\x83\xdb\xdc\x79\xc4\xb4\x27\x2b\x7d\x4b\xe1\x66\x87\xa0\xf4\xa0\xec\x6e\x34\xc4\x1c\x3b\x85\x23\xf1\x22\x2f\x25\xdc\x58\xa7\xd5\xe5\x34\x27\x15\xd5\x21\x2c\xb1\x17\xa6\xa4\x89\x7c\xa9\x83\xc1\xc0\x9a\x45\xd0\x66\xc3\xcd\xd3\x72\xbe\x6d\xab\xe9\xaa\x02\xcf\x5d\x87\x95\x1d\xbd\xd1\xb8\xed\x87\x7f\xc5\xe9\x3b\xf4\x26\xe9\xf8\x5f\x30\x49\x9e\x26\xc4\xdf\x33\x47\x1f\x60\x8e\xc0\x94\xcc\x9f\x26\xdb\xf5\xaf\xca\x27\x8d\x6c\x70\x8b\x84\x56\x7d\x24\xa0\x80\xe2\xca\xbd\x73\x18\xf8\x93\x1e\xee\xd0\x68\x85\x02\x54\x31\x21\x1d\x6a\x1e\xae\x35\xce\x52\xd1\x54\x71\xde\xa7\x41\x11\x5d\x33\x58\x41\x18\x86\xc4\xe6\xc3\xf3\xa0\xe3\xd3\xb7\x82\x8e\xda\x92\xf7\x11\x75\x8b\xfe\xcf\x01\x15\x81\x93\xd4\xad\x7c\x58\x56\xe3\xc3\xb2\x6d\x7c\x58\x66\xd8\x31\x8b\x74\x79\x5c\x60\xba\x0d\xf4\x6c\xe7\xc9\x68\x4d\xf8\x02\x04\x22\x55\x98\xe0\xd5\x2d\xe1\x43\xa2\x5d\xc1\x5a\xd4\xab\xca\xeb\xdb\x43\x02\x51\xc8\xe2\xb1\xd2\x5e\xe2\xf6\x84\x40\xe5\xc7\x30\x7a\x71\x13\x0f\x61\xb4\xed\x76\x5a\xa4\xcb\x88\x7c\x59\x82\xb7\xce\x34\xe0\x17\xa4\x51\x49\xa6\xac\xc8\x2c\xbb\xa0\x9d\x48\x24\xd7\x3f\x8e\xf5\x50\x36\x3a\x1e\x54\x0d\x1f\x6a\x3c\x83\xb2\xed\xe7\xaf\x42\xff\xe8\x7d\x52\xe0\x49\x36\xda\x74\xf2\x7e\x7a\x06\x68\xb8\x5c\xbf\xd5\x72\x29\x3f\xdb\x32\x93\xdc\x61\x3f\xcb\xbb\xe8\x87\x6d\xfb\x3f\xa9\x78\x4e\xa9\xca\x16\xfe\x27\x1b\xff\x1f\xe0\xb8\x87\xe1\x8c\x8d\x10\xb8\x81\x0d\xaf\xb5\xb0\x1a\xdd\x49\x90\x1d\x8c\x7f\x96\x48\xde\xb7\xb1\xea\xbf\xed\x60\x3c\xd5\x36\x6d\xcb\xa8\xa3\x5a\xf6\x7b\xf5\xa0\x38\x9b\x71\x66\xed\xe7\x2b\xe7\x24\x85\x73\xc2\x4c\xd8\x3f\x77\xe8\x8c\xc3\xe5\x2d\x47\x88\xaf\xd7\x71\xb5\x47\x3f\xab\xcb\xf9\x93\x77\x8e\x7e\xf9\x1f\x9c\x23\x35\xc3\xf6\x28\xfd\x6b\x0f\x92\x6e\xfc\xdb\xcf\xd2\x0f\x8d\x67\x49\x2e\xd1\x5f\xd0\xef\x70\xdf\x4d\xc9\x5f\xd5\x79\x99\x92\xf1\xef\x26\x98\x20\xf9\xdf\x1d\x4c\xb0\x40\x7b\x18\xe3\xf8\x77\x5d\xbc\x97\x74\x3a\x05\xd1\x3e\xdb\xfe\x13\xb7\x57\x85\xd2\x60\xcc\xdc\xa4\x3d\xd0\x22\x63\x0f\x23\xf5\x67\x6e\xb5\xff\xc0\xff\x09\xde\x52\xff\x0b\xff\x47\xef\xe3\x4a\x80\xef\x87\xb3\x9b\x92\xf0\x7b\xc2\xd7\xeb\xff\xe8\xfd\x4c\x6e\xfe\x42\x45\xf5\x0b\x22\xc4\x6f\xc2\xb2\x0e\x4a\x92\xcf\x3a\x9d\xa6\xc6\x75\x50\xa8\x4e\xa7\x3d\xd6\x0c\x3e\x9d\x32\x69\x63\x8c\x9f\x36\x36\x2a\xb1\xba\xca\xf4\xc7\x04\x09\xd2\x38\x96\x4f\xb4\x10\x7f\x7a\x9f\xa7\x8b\x25\xc9\x60\x4d\x9a\x5b\xa5\x8b\x25\xe3\xe2\x72\xca\xe9\x52\x94\xcd\x59\x3e\x2a\x8f\xa5\xef\xe7\x69\x51\x10\xcf\xd7\x25\xf7\x02\xba\xd6\xb9\x65\x1e\x52\x31\x23\x68\x90\x28\x96\x77\x41\x10\x25\x88\x11\x94\x12\x54\x12\xb4\x22\x28\x97\x6b\xe5\x5d\x7a\x03\xf2\xda\xdb\xe8\x33\x52\x53\x15\xfb\xdd\x3e\x91\x8b\xf9\x14\xf7\xe5\x22\x93\x49\x12\xcb\xbf\xee\x60\x92\xa8\x77\xc3\xdd\xd6\xa9\xc6\x76\xe7\x77\xb8\xbf\x21\x64\x14\xaf\x08\xd6\x53\xd7\x2b\xc8\x17\x71\x45\xa7\x77\x28\x77\x69\xf7\x84\x97\x94\x15\x65\xaf\x60\x19\xe9\x2d\xe0\xa0\xbf\xfa\xef\x78\x34\x8c\x3f\x67\xdd\xe4\x73\x2f\x19\x05\xcf\x9f\xff\xb8\x96\xcf\xbf\x7b\x95\xa0\xf0\x00\xe4\x10\x85\xab\x2f\x97\x2e\x27\xe3\xc1\xa4\xd3\x69\x0f\xcc\xdb\x1e\x44\xf6\x21\xb8\x24\xe2\x64\xa1\x8d\x64\x12\x54\x34\x85\xea\x5c\x91\x78\x26\x29\xdb\xe1\x7f\x8d\x62\x46\x70\x1f\xa5\x6a\xae\xfe\x4b\x26\xa3\x92\xe0\x8c\x4d\xe1\xa4\x6a\xaf\xae\x57\xe4\x8b\x38\x65\x19\x89\xdb\xed\x04\xa5\xa4\xc7\xd4\x76\x8c\x4b\x82\x9e\xa6\xf3\x94\xa7\x53\x41\xf8\x61\x2a\x52\xa5\x99\xdb\xd8\x66\x49\x54\x18\x14\x46\x70\xb7\xcb\xc8\xef\xf7\x36\xc9\x50\x90\x51\x1c\x53\x6d\x25\x15\xec\x87\xa4\x27\x37\xd0\xa0\xc7\x0a\xe3\xd9\x76\x46\x9a\xeb\xa5\x04\xb2\xee\xf5\x96\xac\x14\xba\x92\xb8\x2f\x07\x57\x18\x31\x05\xc6\xf8\x3f\x9b\x03\x95\x8d\x7c\xc4\x94\x3f\xea\xab\xe3\xd8\x24\xb6\x3d\x3e\x72\x3b\x01\x33\xb2\xdf\x56\x94\x93\xb8\x7d\x4f\xb8\xf8\xd2\xae\xc7\x8e\x8c\xff\x82\x49\x8f\xaf\x8a\xb3\xe2\x03\x63\xcb\xf5\x5a\xbf\x68\x8b\xe6\xc4\x6f\xef\x2f\xb0\x06\x43\xb9\xdf\x6b\xbe\xc6\x20\x71\x13\x27\xf0\xd5\xe8\x04\xe1\xbf\x22\xcd\x2f\x6f\xb2\x8b\xf1\x4e\x06\x41\xfd\x64\xa3\xac\x01\x08\xfe\xa9\xa5\x35\x8b\x33\xa5\x26\x38\xdf\x12\x34\xcb\x28\x47\x00\x2a\xe0\x8e\xca\x52\x1e\x15\xd6\x63\xda\x93\x7f\xcc\x7c\x55\x02\xa7\xe7\xa4\x73\xcd\x66\x4d\xd9\xc0\x21\x96\x1a\xc2\x9c\xa0\xed\x20\xb2\x81\x27\xaa\x3e\xf4\xae\xaf\xcf\x2f\xce\x3e\x9e\x5c\x1e\x5d\x9f\x9c\x5e\x5e\x5d\x7c\xfa\x78\x74\x7a\x75\x70\x75\x72\x76\x7a\x7d\xad\xee\xfb\x7b\x82\x5f\xce\x6a\x49\xde\x47\x12\xd1\x22\x4a\x63\x4f\xf5\xb4\x0d\xce\x60\xee\x49\x72\x5f\x0b\x87\xf9\x28\x0f\xdd\x92\xc4\x8f\x04\xdd\x93\xf1\x23\x99\x28\x60\x7f\x4b\xf0\x53\x5a\xa6\xcb\xe1\x5f\x91\x9c\xdf\x61\x46\xd0\xb9\x61\x85\x20\x4f\xcf\x77\x48\x51\x9a\xe7\xc3\xf7\xc8\x31\x40\x86\xbf\x22\x9e\x4e\xc9\xf0\x04\x49\x32\x6c\x78\x8a\x3c\x6a\x6c\x78\x8c\xb4\x56\xfa\xf0\x2b\x02\x9d\xf4\xe1\x3b\x64\x35\xd2\x87\xe7\xc8\xea\xa3\x0f\x53\xc4\x8a\xe1\x92\x80\x4e\xf4\x82\x20\x43\x37\xfd\x64\x48\xa6\xdf\xd0\x22\x5d\x0e\x7f\x44\x30\xf5\xc3\x39\x41\xea\x9e\x1c\xfe\xb2\xf1\x4c\x01\x6e\x81\x14\x13\xb1\xd2\xfc\x57\x72\x2f\x7f\x7b\xb5\x5e\xfd\xf1\x8f\x3b\xad\xe8\x8f\xd1\xff\x9d\xd1\x9c\x9c\xdd\x13\x7e\x4f\xc9\x43\xf4\x17\x3a\xbd\x4b\xcb\x32\xca\xe9\x0d\x4f\xf9\x23\x48\x9e\x00\x56\x44\x69\x91\x45\x60\x85\x15\x2d\xd9\x72\x49\x78\x19\x15\x24\x05\xd7\xf6\x94\x47\x5c\x0e\x08\xa2\xdb\x93\x9c\x28\xc6\x3a\xd4\xad\x01\x64\x34\xe8\x0d\xbe\xeb\x0d\x20\x29\xa7\x53\x52\x94\x44\x3e\xbf\x67\xcb\x47\x4e\x6f\xe7\x22\x8a\xa7\x49\xb4\xd7\x1f\x7c\x17\x1d\x93\x8c\x70\x3a\x65\xd1\x7f\xd1\x7b\x96\x33\x68\x75\xca\x0a\x15\x51\x9a\xf1\xb2\x15\xfd\x51\x96\x3c\x27\x7c\x41\xcb\x52\x7b\xfa\x9a\x13\x4e\x6e\x1e\xa3\x5b\x9e\x16\x82\x64\x28\x9a\x71\x42\x22\x36\x8b\x24\x0c\xbb\x25\x48\x0e\x22\x2d\x1e\x23\xd9\x69\x26\xe9\x5f\xa1\x30\xa8\x28\x8d\xa6\x6c\xf9\x28\xeb\x03\x37\xe1\xb4\x8c\x4a\x36\x13\x0f\x29\x57\xa3\x4d\xcb\x92\x4d\x25\xb8\xcd\x22\x03\x38\x95\x2f\x27\x39\x63\x65\x14\x8b\x39\x89\xda\x97\xba\x44\x3b\x81\x76\x32\x92\xe6\xb2\x42\x88\xf5\x4a\x22\xf3\x15\x90\x16\xb6\x12\x11\x27\xca\xce\x82\xb2\x02\x45\xb4\x98\xe6\xab\x4c\xf6\xc4\x7c\xce\xe9\x82\xea\x46\x20\x66\x80\x9c\x1c\x39\x66\x59\xf5\xaa\x24\x08\x3a\x8c\xa2\x05\xcb\xe8\x4c\xfe\x13\x18\xdf\x72\x75\x93\xd3\x72\x8e\xa2\x8c\x96\x3a\xf6\x36\x8a\x4a\x99\x08\x53\x8d\xe4\x68\x5e\x31\x2e\xd1\x09\xe8\xdc\x94\x2d\x29\x29\x8d\x6f\x74\xd3\x47\xc8\x26\x1b\x5a\xca\xc9\x15\x7a\xba\xc0\xa3\xfa\xc3\x9c\x2d\xc2\xf1\x50\xe8\xd5\x6c\xc5\x0b\x5a\xce\x95\x84\x32\x63\x51\xc9\xa0\x5d\xc0\x47\xb4\x10\x76\xc6\xf2\x9c\x3d\xc8\x31\x4a\x5c\x11\x2c\xc2\xca\xa1\x5e\xc5\xab\x39\x84\xfb\xb9\x27\x30\x2c\xb5\x13\x0a\x26\xe8\x54\xcd\x3f\xac\xc8\xd2\xad\xb4\xfe\x54\xce\xd3\x3c\x97\xf8\xa0\x9a\x3e\x92\xc1\xa1\x0f\x47\xc6\x65\x37\x4a\x91\x16\x82\xa6\x79\x24\x2f\x12\xd9\x6e\x75\xc4\x3d\xd3\x8f\x1f\x8f\xa2\xcb\xb3\xe3\xab\x9f\x0f\x2e\x8e\xa2\x93\xcb\xe8\xfc\xe2\xec\xa7\x93\xc3\xa3\xc3\xa8\x7d\x70\x19\x9d\x5c\xb6\x51\xf4\xf3\xc9\xd5\x8f\x67\x9f\xae\xa2\x9f\x0f\x2e\x2e\x0e\x4e\xaf\x7e\x89\xce\x8e\xa3\x83\xd3\x5f\xa2\xbf\x9c\x9c\x1e\xa2\xe8\xe8\x3f\xcf\x2f\x8e\x2e\x2f\xa3\xb3\x0b\x59\xdb\xc9\xc7\xf3\x0f\x27\x47\x87\x28\x3a\x39\x7d\xff\xe1\xd3\xe1\xc9\xe9\x0f\xd1\xbb\x4f\x57\xd1\xe9\xd9\x55\xf4\xe1\xe4\xe3\xc9\xd5\xd1\x61\x74\x75\x06\x6d\xea\xda\x4e\x8e\x2e\x65\x7d\x1f\x8f\x2e\xde\xff\x78\x70\x7a\x75\xf0\xee\xe4\xc3\xc9\xd5\x2f\x48\xd6\x75\x7c\x72\x75\x2a\x6b\x3e\x3e\xbb\x88\x0e\xa2\xf3\x83\x8b\xab\x93\xf7\x9f\x3e\x1c\x5c\x44\xe7\x9f\x2e\xce\xcf\x2e\x8f\xa2\x83\xd3\xc3\xe8\xf4\xec\xf4\xe4\xf4\xf8\xe2\xe4\xf4\x87\x23\x09\x15\x7b\xd1\xc9\x69\x74\x7a\x16\x1d\xfd\x74\x74\x7a\x15\x5d\xfe\x78\xf0\xe1\x83\x6c\x4d\x56\x77\xf0\xe9\xea\xc7\xb3\x0b\xd9\xd1\xe8\xfd\xd9\xf9\x2f\x17\x27\x3f\xfc\x78\x15\xfd\x78\xf6\xe1\xf0\xe8\xe2\x32\x7a\x77\x14\x7d\x38\x39\x78\xf7\xe1\x48\xb5\x76\xfa\x4b\xf4\xfe\xc3\xc1\xc9\x47\x14\x1d\x1e\x7c\x3c\xf8\xe1\x08\x4a\x9d\x5d\xfd\x78\x04\x83\x94\x39\x55\x37\xa3\x9f\x7f\x3c\x92\xa9\xb2\xd5\x83\xd3\xe8\xe0\x3d\x78\xd2\x3a\x3b\x8e\xde\x9f\x9d\x5e\x5d\x1c\xbc\xbf\x42\xd1\xd5\xd9\xc5\x95\x2d\xfd\xf3\xc9\xe5\x11\x8a\x0e\x2e\x4e\x2e\xe5\xcc\x1c\x5f\x9c\x7d\x84\x91\xca\xd9\x3d\x3b\x96\xb9\x4e\x4e\x65\xd1\xd3\x23\x55\x91\x9c\xf9\x70\x81\xce\x2e\xe0\xfd\xd3\xe5\x91\xad\x33\x3a\x3c\x3a\xf8\x70\x72\xfa\xc3\xa5\x2c\xac\xc7\x6a\xf2\xcb\x45\x7e\xd5\xf2\x04\x3c\x60\xf1\x54\x53\xc6\x51\x96\x52\xcd\x38\xed\x02\xcc\x94\x46\xea\xaf\xa7\xb3\x62\x1e\x37\xaa\x9c\x83\x52\x7f\xba\xc8\x46\x24\xe6\xc9\x50\xf4\xce\x01\x5a\xca\xdc\x9b\x44\x11\xd6\x3e\xdb\x2c\x30\xbd\x52\x68\xca\xb3\x17\x69\xc3\x37\x03\x9b\x9a\xbf\x16\xe9\x3d\xbd\x05\x75\x00\xd1\x24\x0a\x15\x78\xdc\x3e\xca\x6e\x49\x1b\xb5\xaf\x38\xcd\xe0\xc6\x6c\x1f\x53\x4e\x66\xec\x4b\x7b\xa2\x5d\x0a\x38\x27\x55\x5d\x3c\x48\x94\x31\x83\xad\xb7\xb7\x2a\x09\x3f\xb8\x95\x58\xa5\xb5\xc7\x19\xf3\x49\xf2\x3d\xee\xff\xbf\xec\xbd\xeb\x96\xdb\x36\xba\x28\xf8\x5f\x4f\x51\xe2\xec\xe6\x21\x2c\x48\x96\x9c\x4e\x9f\xde\xac\x42\x69\x39\x8e\x93\xb8\x3b\xb6\xd3\xb1\xd3\xb9\xc8\x9a\x34\x8b\x82\x4a\x88\x29\x40\x0d\x42\x55\xae\x14\xb5\xd6\xfc\x9f\x97\x98\x67\x99\x47\x99\x27\x99\x85\x0f\x17\x02\x14\x55\x76\xef\xb3\xcf\x9a\x59\x33\xdb\x3f\x5c\x22\xee\xd7\x0f\xdf\xfd\x73\xe2\x22\x1f\xa7\x6d\x7a\xc8\x9c\xb1\x10\x4d\x53\xfb\xb2\xdb\xd7\x75\x7e\x2c\xb4\x6f\x03\xbc\x85\xf8\x1c\x18\x9c\x0d\xa7\x38\xae\xee\xa9\xce\x3e\x81\xba\x26\xbc\x35\xea\x85\x10\x3a\x1c\xf2\x6e\x47\xb2\xbf\x23\xaf\xc9\x71\x82\xe3\x29\x7d\xab\xa0\xe7\x71\xe8\x58\xce\x39\x3e\x44\x40\xa2\x39\x04\xb4\x9f\x46\x0b\x95\xb3\x99\x57\xe0\x9f\x81\x96\x9e\x46\x13\x34\x61\x6c\x57\x74\xb1\x74\xab\x38\x11\xb7\x9c\xca\x2f\x1d\x5e\x6f\x5f\xff\xbf\x33\x7a\x3b\xb9\xa6\xea\x99\xd8\xee\xf6\x8a\xae\xde\xa8\x3b\x50\x2a\x03\xd7\x01\x9e\xd5\x3a\x97\x0b\xb5\xcc\x03\x19\xab\x08\xbc\x13\x7c\xf3\xf6\xe5\xb7\xc6\x91\xa3\xee\xfb\x55\xb1\xa5\x73\x9a\x43\x88\x3e\xca\x81\x68\xd0\x48\xf0\x46\xd4\xaa\xad\x5e\x74\xc3\xa6\xfb\xa3\x39\xb9\x12\xab\xbb\x41\x7d\xcb\x34\x3a\xdc\xb6\x88\xee\xcb\xa2\xa6\xa6\xab\x1c\x7e\x7e\xf1\xfa\xcb\x9f\x93\xbc\x35\x81\x8b\x26\x07\x8d\x40\xb1\xff\xc5\x35\x1c\x94\xd5\xb9\x56\x67\x85\x65\xc6\xf9\xf1\x44\xdc\x50\xb9\xae\xc4\x2d\xe6\xc1\xc7\x4f\xb8\x0e\xbe\x7e\x76\xf1\x22\xb3\x62\xaf\x44\x53\x97\x52\x54\x55\xa3\x73\xab\xe2\x0e\xd9\x00\x92\x72\x54\x8f\x38\x9a\xd3\xbc\xc8\xf4\x1a\x75\x63\xd3\xb5\x5b\xad\x8f\xa1\xc5\x84\xf4\x1a\xcd\x3b\xdf\x39\xb5\x02\x79\x9a\xa6\xc3\x6c\x68\x4f\xf0\xcb\x37\x2f\xf8\x6e\xaf\x8c\xb5\xbc\x25\x29\x9a\x66\xe8\x17\xcf\xfd\x78\x29\x56\x14\xe1\x4a\x57\x7e\xfc\xf2\xcd\x8b\xe7\x67\xb3\xa9\x1d\x5f\xcf\x65\x0c\xc8\xe2\x32\x18\xe3\xcc\x28\xa2\xed\xf3\x19\xd8\x2d\xcc\x2b\xf0\x19\x15\x99\x0d\x9d\xda\x43\xf7\xe3\xb9\xc1\xf0\x06\x2d\x08\x29\xb3\xd9\x14\xcd\xa3\xcd\x06\x8b\x2e\xb0\x24\x10\xeb\x75\x4d\xd5\x77\x70\x6e\x8c\x13\x94\x73\x69\xfc\xa3\x52\xa0\xa9\x6d\x73\x6f\xd8\x55\xc5\xf8\xf5\x39\x92\x24\xa3\xa4\x2f\x0b\x45\x4d\x59\xa6\x23\x98\xa6\xb9\xf3\xe4\x59\x41\x69\x6a\x4e\x92\x09\xe5\x67\x0e\x98\xfe\x3d\x07\x33\xc1\x45\xf2\xf6\x1b\x0d\xef\xbe\xd4\xff\xe9\x07\x2f\x59\x7a\xd0\xd5\x36\xa6\x29\xf2\x5a\xe3\x62\x25\xf8\xc1\xcf\x24\x4e\x76\xc2\x79\x60\x98\xaf\x35\x70\x97\xb9\xde\xe1\xce\x0d\x8c\x57\x29\x3f\xb5\x7c\x91\xb1\x4e\x37\x40\x75\x78\xcf\xe6\xab\x2c\xfc\x44\x39\x8d\xcc\x67\x5c\x70\x08\x13\x44\xc4\xc1\x89\x34\x05\x9f\x26\x1e\x6c\x7c\x74\x33\x1d\x38\x29\xc5\x56\xf7\xe5\xa6\xf3\x9d\x70\x6e\x38\x51\xaa\x7b\x9f\x7c\xf9\xfa\x19\x90\x5e\xbf\x7e\xf7\xda\xf8\xcc\xfc\xf5\xab\xd7\xdf\x7e\xfb\xfa\xc7\x17\xaf\xbe\xc6\x9c\xc8\x39\xcd\x15\x66\x44\xce\x55\x4e\xb1\xe8\xf2\x1b\xbe\x37\xae\xe3\x06\x62\x52\x53\x05\x3e\x2e\x32\x8e\xa7\x08\x82\xf5\xaa\xe7\x7c\x95\x31\x3c\xb5\xee\x1f\x71\x8d\xf7\x44\xe8\xe1\x6c\x05\x7f\xca\x4b\x5a\x2b\x21\xf5\xdd\x28\x18\xa7\xa0\x12\x4d\x87\x84\xec\xd3\x54\xe9\x3f\x4d\xc3\xc1\xd5\x59\xc1\x78\x9d\x31\x37\x5b\x73\x06\x08\x21\x59\x4d\xb2\x82\xec\x51\xbb\xb7\x4d\xe3\x0f\x45\x9d\xa6\xeb\xac\x98\x80\x0a\xa1\x5d\x0d\x88\x9b\x85\x86\x84\x14\xf3\x75\xb6\x47\xf9\xde\x3a\xe9\xd2\x3b\xe5\xce\x58\x05\xc0\x6f\xbe\xc9\xcc\x0f\xac\x50\xae\x77\x63\x95\x29\x04\x09\xb1\xbd\x92\x7b\xd1\xba\x7a\x47\x97\xb3\x40\x19\xbb\x55\x2d\x9a\x2d\xe7\xe1\x47\x9e\x28\xb1\x4b\xb0\x24\xf0\x17\x94\x71\x12\x03\xa8\xde\x8a\x5d\x92\xdb\xdf\xdf\xd2\xb5\x4a\x40\xf9\xcb\xdf\x07\xb6\xce\xfc\x22\x70\x37\x67\x30\xab\xf0\xe6\x46\x0f\x9e\x5e\x70\x96\x17\x97\x30\x7d\x31\x7e\x6d\x8b\x34\x0d\xf3\x41\x11\x16\xd2\x6b\x88\x51\xfd\xbb\xe5\x23\x84\x2a\x14\x47\x6b\xf0\xa4\x77\x0d\x9e\x2c\xd3\x34\xfc\xc2\x9c\xec\x32\x85\x61\x09\x10\x66\xe6\xa3\xd2\x73\x46\x58\x10\x39\x1f\xcf\xf2\x59\xeb\x5a\x50\x89\xdd\x88\xf0\x47\x02\xeb\x87\x41\x29\xb1\x75\x5f\xba\xc6\x88\x30\xf8\x0d\x14\x87\xfd\xe8\xd8\x64\xb9\xc1\x26\x1f\xec\x7a\xc3\xea\xe6\x89\x5e\x70\xcc\x89\xf9\x34\x96\x50\xdf\xeb\x56\x92\x3c\xf9\x02\xfa\xf1\x01\x78\x77\x85\xac\xe9\x57\x95\x28\x54\x46\x17\xc9\x95\x90\x2b\x2a\x93\x91\x1c\x25\x3f\xb2\x95\xda\x24\x4b\x34\xea\x2f\xc1\xdb\x12\x91\xb1\x56\x47\x7f\xc9\x44\xc3\x2b\x3e\x64\x6a\x91\x18\xb8\x98\x8c\xe8\x12\xab\x85\x3d\x0d\xf0\x25\x17\x49\x59\x31\xfd\x4e\xda\xaf\xa0\xa4\x8c\x4a\x1a\x10\x0e\x23\x7a\xc1\x55\x16\x15\xb5\x23\xd5\xe9\x7c\x91\x6c\x0b\x79\xcd\x78\x32\xca\x92\x6f\x28\xcc\x1c\xde\x91\xc4\x9c\x44\x58\x16\xf4\x69\x35\xec\x7a\xe5\x76\x01\xd1\x12\xe5\xa1\xe9\xec\x75\x68\x9f\xa6\x9f\x14\x78\x4d\xba\x07\x94\x9b\xc7\x27\x4d\x8f\xb0\x1d\xef\xe0\xe1\x7e\x03\xbd\xe6\x77\xbe\x7f\xa7\xbe\x7e\xab\xd7\x59\xa7\x9b\x05\x77\xda\x5e\xf0\x46\x5f\x75\xd8\x69\x06\xc6\x86\x5a\xc3\xea\x84\xd4\xe2\x99\xd1\xae\xd5\x38\xdd\x59\x71\x56\x56\xa0\xbb\x5c\x47\x06\xf3\x07\xfc\x80\xf5\x51\xa8\xa7\xd8\xc1\xbe\x47\x5e\xe3\x7d\x21\x97\x03\x3e\xb1\xc2\xdd\xab\x8a\x92\xf0\xa3\x69\x86\x33\xcc\xbd\x87\x03\xc8\x1f\x4e\x71\x02\xba\xe6\x09\x83\x07\x32\xe3\x93\x5b\xc9\x94\xcd\x43\xf8\x94\x9f\x06\x3e\x79\x4f\xef\x60\x55\xba\x18\x72\x7c\x1e\x65\x9a\xd2\x2c\x10\x01\x62\x09\x3e\x40\x69\xa6\xc0\x50\xe0\x70\xc8\x10\xbe\x3d\xd2\xdf\x77\xa8\xa8\x26\xe1\xe9\xfc\xd4\x18\x94\x73\x10\x21\x71\x3b\xc9\x7c\x38\xc5\xe1\x0c\xf5\xb7\x9b\x11\xf0\xab\x73\x0a\x12\x3a\x4c\x0f\xf8\xb9\x53\xa8\x31\xbe\xda\x9a\x26\x12\x84\x7a\x3c\x66\x76\xae\x2e\xba\xd0\xe9\x5c\xb9\x55\x0f\x20\xd7\x42\xb5\x5a\xb3\xe0\x8a\x50\x22\xdb\x41\xab\x80\x10\x73\x1b\x0d\x8a\xaf\x17\x2c\x4d\x41\x7f\x8d\xc8\x05\x5f\x06\xaa\x8a\x2d\xba\xf6\x3a\xc0\x07\x9e\x83\x57\x39\x7c\x0f\x90\x2a\xb7\xd0\x8b\x4e\xe0\xe0\x62\x03\xd8\x72\x03\xec\xe8\xc4\x1c\xf3\x43\x70\x85\xde\x04\xda\x17\x07\x23\x9e\x5c\x67\x70\x5f\x34\x4d\x04\xd1\xe4\xbf\x10\x7b\xbe\x62\xfc\xfa\x19\x80\x89\xef\x69\xa9\x3c\x85\xb6\xcb\xa8\x83\xb6\xdc\x7c\x18\x68\x3b\x50\x06\xba\x4a\xac\x2c\x34\xe5\x58\x79\x28\xab\x53\x2d\x5c\xe5\x56\x6e\x79\xba\x27\xcb\x20\xdf\xa0\xfb\x83\xf5\x99\xa0\x1b\xcc\x4d\xbb\x58\x89\x5d\x0e\x7d\xd9\x8b\x6a\x1b\x1e\xdb\x6c\x7b\xad\x5d\xd7\x63\x28\x7a\xc0\x05\xe9\xa3\x5d\xae\xb3\xce\x43\x86\xf2\xfb\x03\xae\x49\x61\xd6\x52\x13\x33\x06\x52\xfe\x68\x3e\x85\x5d\xe3\x3d\x29\xec\xc2\xb6\x45\xbe\xb1\xdf\xc2\xe6\x68\x94\xdc\xe2\xa6\x50\x7b\x5c\xe3\xb5\x4f\x31\x85\xc7\x7b\xfd\x16\x57\x4d\xb3\x36\x1b\xb2\x02\x1a\x65\x50\x8d\xc9\x4d\xb6\xc2\xc9\x87\x04\xe1\xb5\xfd\x7d\xa7\xdf\x33\xd3\xfb\x98\x54\xd8\x75\x32\x26\x6b\x77\x58\x5e\x67\x22\xd8\xe4\x0f\xff\x39\x6f\x2b\x1c\x0b\x2c\xda\xc5\x53\x7e\xf1\x70\x4d\xf4\x49\xc2\x7b\xf2\x26\x53\x9a\x00\x29\xc0\x93\x3a\x61\xfa\x6b\x45\x82\x67\x6c\x3d\x31\xaf\xd8\x5b\xb1\x83\x95\x40\x78\xd3\x97\xad\x5f\x09\x93\x3f\x90\x69\x2a\xd2\x34\xdb\xeb\xbd\x23\xfe\x4d\x83\x4f\x8d\x19\xee\x61\xab\xc3\x0c\xd8\xfa\x29\x72\x91\xe1\x5e\x67\xf7\xfa\x98\xd4\xba\xc2\x18\xaa\x8d\x57\x18\x0e\x51\x0d\x45\xc7\xa6\xc6\x78\x63\xcf\x50\x6d\xf7\xd5\x1e\x9e\xda\xdf\x1a\x88\xe0\x3b\x31\x4f\xd5\x5b\xb1\x23\x53\xec\xbe\xf4\x68\xc9\x14\x0f\x79\x9a\x5a\x2d\xf0\x9b\x78\x52\xbe\x12\xc2\x77\x7d\x39\xba\x01\x34\xd8\xc1\xe0\xc8\x6a\x7c\x83\x77\xee\xc8\xda\x2f\x18\x21\xd9\x8c\xef\xf0\xce\x1e\x71\xfb\xd1\x0e\xe7\x26\x1e\xce\x9d\x53\x3d\xe3\x69\x3a\x94\x73\xd5\x62\xbf\x15\xca\x15\x21\xa4\x0a\x48\xa0\x2a\xa4\x69\xb2\x1d\xd9\x66\x3b\xac\x10\xc2\xbb\x8e\x16\xff\xbf\x88\xa2\x86\x47\x68\xb6\xc4\x3d\xcc\x88\xa3\xb7\xfa\x83\xf1\x28\xca\xda\x0d\x95\xe1\xb5\x73\x2c\x1d\xc6\x39\x95\xf6\x22\xc2\xa1\x3c\x2a\x6e\x6e\x55\x54\xde\xdd\xca\x29\x98\x1c\xcf\xa7\xf9\x2e\x93\x48\x93\xfa\xe6\xa7\xc7\x15\xf7\x04\x4e\x4c\x31\xe6\x00\xc6\x78\xbb\xc8\xf6\xdc\x8c\xb9\x01\x6b\x3c\x58\x70\x7b\x7a\x98\x3b\x37\xc2\x2b\xac\xbd\xce\xf6\x28\x32\x5d\x68\x91\x96\x5e\x34\x5c\x05\x68\xb8\x8a\x42\xbf\x24\x6b\xf6\x01\x84\xff\x1a\x36\x84\xc4\x66\x1b\xf2\xcf\x5c\x72\xd1\x92\x21\xc3\xa1\x4c\xd3\xf7\x99\x44\x91\xf1\x83\xa5\xe0\x9b\x66\xe8\x28\x47\x8f\xac\x97\xd9\xc7\x69\xc1\xd0\x9a\x23\xaa\x7e\xae\xd2\x34\xe1\x82\x53\x33\x48\x8d\x8c\xcb\x82\xd7\x6b\x21\xb7\x09\x3a\x47\x0a\xbc\xaf\x04\xe5\x03\x1f\x51\x1f\x27\x83\xbf\xef\xda\x2e\x1e\x1d\xc4\x3f\xf6\x1e\xc4\x3f\x46\x07\xf1\x8f\x4b\xb7\xc1\x53\xb3\x9d\xd3\x03\xae\x08\x9b\xeb\x55\x01\x02\xad\x86\x10\x03\x7a\xb9\x6f\x18\xbd\xdd\x09\xa9\x0c\x41\xb4\x27\x4f\xb3\x0a\xb3\xc0\xc4\xbc\x74\xae\x9a\x2c\x9e\x6c\xf8\x0e\x50\x7a\xde\x92\x96\x25\x29\x32\xa1\xdb\x6c\xa9\x4b\x88\x56\xfd\x91\xcb\x80\xf2\x92\x24\xe6\xf8\x9a\x16\x3f\xc6\x47\xe0\xd6\x7f\xdc\x87\xac\xc4\x30\x4e\x3d\x05\x47\xc3\x96\xbe\xef\xa6\x79\x9f\x55\x08\xed\xc9\xba\x9d\xc8\x8a\x1c\xbf\x7e\x78\x47\x56\xee\xf9\xda\x92\x95\x81\x8a\x83\xbd\x79\xd9\xd7\x00\xaa\x02\xc0\x86\xf7\x16\x62\x91\xdd\x08\x32\x2d\x60\xd6\x45\x01\x78\x85\xa0\x0e\xef\x0d\x10\x23\xdb\x91\xc9\x3d\xd8\x18\xdf\x09\xdf\x83\x2c\xd2\xb1\xca\x33\x49\xa4\xbe\xaf\x6d\xf8\x29\xd3\xe6\xcd\x5c\xe6\x12\x7e\x37\xcd\x14\xdb\x31\x99\x44\x25\x76\x26\xcd\x82\x49\x93\x2a\xed\xcd\xf7\xc3\x74\x19\xe6\x0b\x72\x22\x5b\x90\x40\xe1\x0d\x26\xfe\xc8\x63\x4f\xb1\x99\x47\xac\xa4\x79\x74\x20\x3f\xef\x3d\x90\x9f\x87\xc4\xfb\xe7\xcb\x1c\xbc\x4c\x80\xf7\x2b\xea\xd9\x4c\x49\xb1\x57\xc2\xdf\x6c\xeb\xe9\xa7\x20\xdf\x83\xbf\x0b\x81\x99\x06\x5c\x70\x8a\xef\x0d\xe0\x29\xe2\x67\x0b\x50\x9d\x71\x61\x10\x1e\x83\x1b\xfa\x82\x0e\x47\x82\xbf\xae\x82\x43\x62\x0e\x0e\x69\xec\x6f\xb7\x68\x71\x29\xf3\xe3\x60\x2e\xd1\xbd\x43\xc0\x60\xb3\x8b\x08\xff\xf2\x4d\x1f\xf0\x3e\xd2\x5b\xaf\x11\x44\xad\xec\x53\xce\x7b\x9e\x81\x43\x2a\x7a\xc0\xe0\xb6\xe9\xbe\x90\xb4\xc8\xdf\x66\xfa\x03\x1d\xd0\x01\xa1\x49\x2d\xa4\xca\xb2\x7e\xeb\xbf\x89\x2e\x3e\xa6\xf0\xe7\x80\x34\x42\xb2\xef\xd5\x04\x74\x30\xcc\x4c\x91\x13\xb7\xc9\x1e\x2c\x5d\x92\xe8\xf9\x49\x53\xde\xa6\x7c\x63\xf1\x02\x04\x71\x74\x7d\x44\xff\x6a\x31\x5d\xea\xe9\xe5\x7b\xfb\x03\x50\xbd\x7a\x57\x31\x95\x25\xe3\x04\x2d\x66\xde\xa2\xad\x1c\x65\xeb\x79\x32\x4e\x46\xeb\x3c\x49\x02\x00\xfd\x32\x36\x5e\x3e\x3a\x55\x9f\xf5\x9e\xaa\xcf\xc2\x53\xf5\xd9\xd2\xf0\x57\x19\xe1\xf3\xef\x32\x60\x3d\x29\x5c\x67\xb2\xb5\x69\xf9\x90\x49\xd0\x59\x3e\x84\xb6\x1f\xed\x92\xfc\x2b\x52\x03\x84\x65\x88\xd5\xa8\x16\x2c\xe8\xcb\x3b\xea\xc9\xfa\xc2\x5d\x3b\xa0\x1c\x8e\xf3\xbf\x35\x57\xbb\xb7\xee\xf7\xee\x15\x77\xd4\xbb\x39\x7a\x11\x82\x3d\xe2\xee\xf0\xc5\x58\xf6\x48\x1e\x22\x0b\x13\x4f\xfc\xc0\x21\x4e\xa4\x21\xfe\xcd\x7d\x31\xe8\x80\xbb\x0e\x86\xc1\xa6\x2f\x5c\x62\x52\x92\x43\xcb\x4b\xb2\xde\x67\xb3\xc7\x00\x92\x0c\xb0\xb1\x90\x45\x89\xdd\xe3\xeb\x5e\x2b\x23\xb5\xa0\xcb\x48\x91\xf7\x4b\x4f\xf3\x12\x19\x1e\x98\xe9\xd2\xb2\xb2\x7f\x33\x96\x1e\x76\xc2\x3c\xbe\x99\xdc\x5f\x60\x41\x2c\x13\xdb\x4e\xc7\x4c\x24\xe0\x60\x6b\xfc\x47\xcc\x61\x46\x6e\x96\xb5\x4e\xa8\x0c\x07\x0b\x66\xba\xd7\x09\xa6\xc5\x24\x4f\x6e\x0d\xfb\xa3\xd2\x89\xe6\x77\xee\x32\x7d\x1c\x47\xf0\x36\xb4\x28\x96\x23\xb5\xd8\x2f\x1f\x3f\x19\x73\xf8\x83\xd9\xa2\x5e\x12\x09\x4e\x6b\xd4\xa2\x5e\x8e\xf9\xa2\x5a\xe6\x6a\xf1\x22\xab\xd1\x32\x74\xf4\xf4\xaa\xc7\xf2\xa8\xa5\x95\xd7\x8c\xaf\xe6\xe6\x8f\x3e\xcd\xce\xbd\x62\xa6\xf4\xf2\xb4\x8d\x7c\x1b\xb3\x0d\x5a\x9f\xed\x12\x64\x53\xce\x69\x6a\x97\xc9\xc0\xd6\x59\x5f\x87\x2f\xf4\x82\x79\x08\xdc\x26\xf5\xab\x13\x2f\xd4\x52\x77\x74\x40\x4e\xdd\xf9\x55\x1c\x8f\xb7\xb7\xa4\x6f\xdc\x6d\x0e\x07\x9f\x5d\x09\x2f\xb6\x34\xc1\x52\x23\x0d\x6b\x21\x9f\x17\xe5\x26\xee\x94\x4e\xdc\x57\x9a\x96\x82\xd7\xa2\xa2\x93\xdb\x42\xf2\x2c\xf9\x07\xa8\x7e\x30\x2a\x7d\x89\x7f\x9c\xb1\xfa\x6c\x45\x77\x92\x96\x05\x68\xbf\xec\x6b\x7a\x16\x14\xe3\xff\x18\x7a\x0f\x8d\x6d\xbb\x9a\x9a\x5d\xf3\x01\x9d\x18\x87\x13\xab\x34\xe5\x99\xd4\xe4\x81\xb2\x37\xaa\x9e\x18\x35\x1f\xf2\xfa\x28\x09\xe1\x36\xc5\x8b\xb7\xa2\x72\x3e\x15\x61\x45\x24\x28\x89\x1b\xd7\x1a\x61\x5c\x6b\x83\xa5\xb6\x3e\x7c\x27\xac\xfe\x92\xd6\x4a\x8a\x3b\xba\x72\xda\xde\xf7\x8e\xdf\x96\x1b\xb7\xb7\x1a\x22\xd5\x9a\x72\x2f\xa4\x14\xb7\x6f\xda\x4f\x65\xf5\x5e\xe0\x6b\x5d\xb1\xdd\x8e\xae\xf2\xe1\x0c\xdb\x11\xe5\xf7\xe0\xa6\xf1\x78\xd4\x2f\x43\x07\xcd\x46\x51\x1c\xe6\xe8\x9c\x27\xdb\x72\xd6\x21\xfc\x0e\xd4\x48\x26\x0e\x35\xff\x4a\x23\xec\x10\x0a\x5f\xc3\x07\x50\x6e\x7f\x96\xc5\x25\x5d\x06\xee\xe9\xfc\x93\xfb\x73\x9b\x59\x4f\xf4\xcc\x26\x57\x62\xcf\x57\x85\x64\xb4\x76\x94\xd5\x43\xa5\x77\xc5\x6a\xc5\xf8\xb5\x1e\xa6\x90\xec\x9a\xf1\xa2\xfa\xce\x0f\x97\x46\x23\x8c\xe6\x45\x4e\x4f\x39\x98\x8c\x3d\x24\x36\xe4\xbd\x9d\x4b\xdf\x5c\x83\x9e\xd0\x51\x7d\xdf\xfc\x03\x9d\xce\x2d\x7d\x94\x27\xc5\x55\x2d\xaa\xbd\xa2\x09\xa6\xe4\x5b\xd3\xb1\x9f\xb3\xd7\xef\x77\x47\xea\x99\x71\x48\x31\x8f\x1a\x16\xdc\x84\x5f\xd2\x44\x41\xd6\x57\x1c\xfc\xf6\xc5\x35\x4c\x0e\x48\x7f\x23\xbb\xa8\x00\xac\xd1\x49\x2d\xb6\xf4\x18\x09\xd1\x17\x8f\x07\xf2\xc9\xe0\xd6\x81\x28\x34\x7a\x27\xbe\x88\x79\x92\x8b\xe1\x0c\x27\xdb\x3a\xc1\xc9\x8f\xf4\xea\x3d\xd3\x00\xff\xa5\xf8\x3d\xc1\xc9\xeb\xc4\xd0\xdc\x3e\x7e\xc0\x44\x89\x1f\xf4\x62\x3e\x2b\x6a\x9a\xa1\x91\x83\x87\x60\x7a\x3f\x3d\xe7\x2d\x1f\xd9\x87\x21\x62\x10\x24\x05\xa2\xd5\x26\xc9\x88\x8d\x64\x4e\xa3\xf8\x93\x91\x44\x77\x02\x97\x6f\x21\x96\xde\x6b\xd8\x21\x10\x5a\xb6\xe3\xff\x21\x8b\xfd\x34\x1c\xdd\x6d\xbd\xb6\xbf\x77\xb7\x2d\x01\xfd\x52\xb8\xd0\x10\xd5\x32\x38\x4e\x36\xcc\xd6\x53\x77\xc5\xb3\xe4\xc3\xd8\x9f\xa5\x04\x85\xb7\xc8\x8c\xb1\x3d\x4d\x49\xd2\x93\xab\xc4\xae\x3f\x03\x58\x4d\xbd\x39\x86\x9e\xe9\xcd\xb2\x74\x51\x6f\xde\xad\x8f\x88\xd1\x9b\xbf\xf8\x22\x0b\x09\xe8\x25\x49\x12\x1f\x02\xb1\xd6\xe7\x03\xb4\x4d\xbf\x65\xb5\xa2\x9c\xca\x3a\x43\xf1\x91\x34\xcb\xf2\x9a\xdb\x85\xb5\xd6\x23\xee\x42\x79\x81\xb1\x2d\x07\x32\xcd\x70\x59\x4d\x6b\x87\xd0\xda\xea\x04\x7e\xd8\x2a\x8c\x44\xa8\x62\x6e\xc8\xd7\x8e\xa9\x92\x15\x0a\xd8\x20\x3f\xc0\xf4\x25\x1c\xeb\xc6\x27\xc5\x6a\x15\xcd\x28\x4b\x24\xad\xd9\xef\xfa\x25\x0c\x8b\xe3\xfb\x5d\x51\xd7\xec\xc6\x70\xf1\xad\x7f\xb9\x22\x10\xbd\x06\xe2\x92\x0e\x85\xd6\x72\x59\x42\xe6\xa5\x98\xab\xd3\x08\x6f\xae\x06\xf5\xf1\xc8\x74\xab\xd1\x30\xb0\x68\x1a\x9a\x15\x59\x1d\x8a\xe2\x6d\xe7\xd8\xfa\x31\xae\xd1\x21\x63\xd8\x49\xd5\x3a\x93\x92\x93\x90\x8b\x50\x23\x9f\x60\x61\x38\x61\x58\x4e\xc0\x1b\x6f\xfd\xdc\x00\x07\x08\x29\x1f\x9a\x78\x85\xa1\x51\xe2\xa2\xce\x0e\xc8\x38\xf1\xf9\x7b\xf6\xc0\x63\x82\xbb\xef\x5d\x5d\x6e\xe8\x6a\x5f\x51\x03\x11\x43\x48\xf4\xa3\x0b\xd6\x8d\xd5\xe0\x54\xcf\x69\x9a\x95\xfa\x7d\xae\x9e\x72\xb6\x05\xc5\xd5\xaf\x64\xb1\x75\x61\x0f\xe2\xa6\xc3\x00\x2a\x19\x25\xdd\x41\x06\x41\x6e\xcc\x79\x31\x07\xf7\xc4\x91\x51\xe1\xea\x6a\x8c\x24\x5a\xde\x53\x68\x55\x6f\x93\x6e\xc3\xe2\x26\x01\x5f\x89\x8f\x31\x38\x46\x8b\x3b\x22\x8b\xa5\x4f\x72\x3b\x69\xcb\x75\x36\x73\x06\x5a\x62\x7e\x71\xbf\x0e\x74\xad\x12\xe3\x21\x6c\xc8\xea\x57\xc5\xab\x2c\x14\x0b\x23\x94\xa6\xac\xfe\x8a\x71\x06\x4f\xcf\x21\xb6\xe9\x42\xf7\x21\xbd\xad\xfa\x90\x49\x4f\x66\x26\xc9\xb9\xa5\x1b\x2c\xb6\xef\x30\x7c\x23\xe3\xc1\x9e\x9c\xb0\xf4\x4f\x0f\x5d\x91\xa6\x5f\x1b\xd5\x3e\x30\xa8\x4f\x76\x1f\x12\xfd\x92\x1b\x50\x26\x97\x20\x93\x1c\x71\x6f\x70\x05\x6a\x4a\x56\x93\xf0\x31\xfb\x14\x3d\xa5\x7f\x8b\x09\xe3\x93\x08\xb6\x0b\x60\x04\xd4\x39\x23\xc3\x21\x4f\xd3\xbe\xa7\xb7\x5b\x1e\xdc\xcb\xfa\x97\x57\xa3\x43\x2b\x2a\x2f\xb8\xf9\x7b\x30\x5c\xc1\x61\x0b\x4b\xfe\x91\x8c\xd4\x28\xf9\x47\x82\x0b\xf8\x2d\xf5\xef\x41\x84\x8d\x17\xa3\xe4\xcc\x3d\x61\x1a\x0b\xb7\x66\x24\xab\xb3\xab\xbb\xb3\x64\x24\xa2\x5c\x7e\x06\xdd\x80\x36\xb5\x90\xef\xf1\xd9\x15\x3d\xab\xf7\x92\xea\x04\xab\xc8\x7c\xc6\xd4\xd9\x15\x5d\x0b\x49\x4d\xed\x61\xd2\x71\x59\xf9\x37\xb2\x00\xc6\xd1\xb8\x56\x85\xd4\x7b\x05\x5c\x24\xf3\x67\x4c\xf9\xca\xec\xa5\xcf\x35\xfb\xaa\x53\x4c\x9e\xe1\x0c\xb9\x5c\xb7\xdf\x26\xd5\x94\xb0\xdc\x9f\xf0\xa3\x4d\x75\x15\x81\x07\x64\x8a\x18\xea\xd2\xa4\x98\xec\x25\xfe\x89\xfc\xcd\x62\x1e\xa1\x69\xd6\x5f\xfe\x33\x04\x0c\x3f\xf9\xc3\x08\x21\x9f\x7f\xb2\xfd\xc8\xd1\x0c\xe2\xd2\x96\x85\xca\x7e\xf2\x54\x60\xc0\x0c\x51\x73\xde\x46\x8a\xca\x39\xac\xe5\x2f\x24\xd1\xe8\x71\x02\xa6\x77\x65\x25\xca\xf7\xb7\xac\xd6\x70\x45\x7f\x8a\x3d\x57\x54\xb6\xa9\x91\x19\x5b\x87\x4d\xbd\x98\xe2\xe9\xf2\xa3\x54\x39\x47\xe0\xfe\xd6\xd0\xfd\x8f\xb3\x77\xa3\xe6\xdd\x18\x3d\x3e\xcd\x21\x03\x17\xff\x5b\x50\x59\x05\x29\xa5\x6b\xe7\x55\x56\xf4\x5d\x8a\xb1\x51\x13\xad\x69\x21\xcb\x4d\xf6\x18\x37\xef\xea\xc7\xa0\xee\x3a\x28\x16\xf5\x32\x4d\x81\xfd\xa8\x7f\xb6\x1c\x48\xac\xf1\xac\x98\xb8\x7c\x6d\x90\xf2\xb3\x9a\xee\x0a\x09\x76\x0f\x57\x77\x67\xb7\x1b\xa6\xe8\x59\xbd\x2b\x4a\x9a\xd5\xe8\xac\x90\xf4\x88\xda\x2c\xce\x4a\xb1\xdd\x16\x67\x19\x46\xa0\x20\x41\x8b\x95\x0b\x69\xbd\x27\x8f\xdf\xd5\x8f\xf0\xbb\xfa\x51\xf3\xae\x1e\x3d\xc6\x95\x59\xa7\x7a\xbe\x68\xa3\x9e\xd4\x7e\xf7\x16\x30\x44\xb3\x48\x7b\x4d\xfb\x2f\x11\xee\xa4\xcd\x96\x4b\x57\xda\xb5\x50\x8f\x66\x08\x2d\xf3\x45\xe1\x58\x6f\x59\x45\xaa\xee\xca\xb6\x1b\x66\x5c\xe1\xce\x87\x22\x17\xe8\x98\x09\x52\x04\xca\xc0\xfa\xbd\x58\xed\x4b\xda\xcf\x88\x4c\x40\xc4\xbc\xa0\x6d\x30\x19\xbd\xce\x70\x08\x46\x09\x4e\xc6\xc1\xee\x2b\x34\xcf\xa2\x92\x44\x81\xc7\x4e\x4c\x51\x5e\x74\xb2\x46\x26\x6f\xa6\xf3\xa8\x9b\xaa\x42\x07\x84\x17\xcb\xd3\xe7\xe5\xd8\x60\xd9\x29\x78\x59\xab\xc4\x2c\x9b\xe7\xef\xc6\xcd\xbb\x11\x9a\xbf\x5b\x3d\x7a\x37\xd1\xff\xa3\x6c\xf2\x08\x3d\x46\x58\x90\x11\x44\x35\x2a\x08\x5b\x3c\x31\x5e\xad\x44\xcb\x9a\xb6\x46\xda\xed\x19\x4c\xfe\x90\x20\xe7\x9f\xca\x8a\x48\xac\x6a\x6f\x61\x35\x7a\xff\xb0\x4b\xf2\x9a\xc8\xc1\x95\xa4\xc5\x7b\xa3\xb2\xfb\x07\xab\xe1\xfb\x07\x99\xe4\x16\xfd\xca\x6b\xc2\x5b\x99\x76\x8d\x16\x6a\xf9\x78\x36\x9d\x3e\x12\x07\x10\xcf\x6c\xf4\xfa\x16\x4d\x93\xdc\x80\x88\xa4\xf0\x6c\x1f\x97\x35\xf7\x62\xc1\x53\xd2\xa5\x4f\x91\x16\xe6\x9f\xda\xca\x03\x22\x4a\x64\xc7\xed\x29\xa3\x8c\x62\x66\xdc\x83\x02\xe3\xa3\x97\xcd\xa3\x4f\x12\xed\x7b\xb2\xf5\xee\x7d\x6d\xb8\x31\x6c\xa1\x96\x23\x22\x1f\x65\xc9\xd8\x9c\x36\x3e\x9e\x2d\x41\xd5\x0d\xd9\xa6\x31\xb3\xa6\xb2\xe4\xde\x13\x45\x9e\x89\x89\x23\x0a\x3a\xd7\x87\x2a\x44\x4a\x72\x8d\x61\xc6\x54\x04\xf0\x4c\x2c\xad\x1b\x7a\x27\x3c\x60\x47\x33\xc7\xa9\x9e\x82\xcb\xef\x21\x04\x6c\x7e\x0f\xcf\x5c\x3e\x9b\x4e\x31\x6d\x7b\x59\xf3\x23\xad\xfb\x98\xf9\x20\x89\x8a\x99\xa2\xa0\xb2\x1d\xf3\xd5\x8d\x09\xbe\x57\x5c\x34\xc0\x0a\x02\x81\xb4\x58\x64\x41\x98\xe3\x42\xd4\x0e\x24\xfb\x87\x4c\x3f\x88\x11\xa3\x74\x4f\xea\x98\x2f\x5a\xe9\x84\x0e\x0b\x14\x97\xe4\x1e\x1e\xb7\xfc\x36\xbb\x3f\xe0\x3d\x16\x8b\xfd\x12\x61\xca\x57\x61\xc2\x48\x2c\xaa\xe5\xb8\x58\x54\x4b\x14\x72\x9a\x2c\x7f\x04\xf4\x78\x0a\x5c\xc6\x3a\x3f\x07\xcb\x9e\x72\x8b\xf6\xe4\x81\x45\x0b\x7d\x36\x9b\x5a\x20\xd1\x68\x57\xb0\xbb\x26\x76\x15\x8a\x68\x79\x6a\xc2\x3b\xcb\xbc\x77\x57\xd8\x09\xe1\xc8\xd7\xd9\x48\xa2\xf9\x62\x24\xf1\x74\x99\x4b\x9a\x49\x2c\x70\x81\x6b\x64\xdf\x34\xe0\xf5\x66\xc2\x48\xe5\xf6\xba\x09\x61\x15\x18\xf6\x8b\xd9\x12\x39\x36\xfb\xa9\x62\x23\x57\xcc\xaa\xb2\x42\x21\x97\x01\xa5\x40\x4d\xc2\x16\xb2\x5b\x47\x40\x4d\xb7\xa7\xa0\x6d\x0d\x78\x57\xb0\xd0\x02\x42\xdd\x98\x55\x9d\x1e\xf0\x4e\xc2\x81\x7f\x6d\x95\xfd\xdd\x42\x7f\xf6\x89\x0b\x7d\xc4\x69\x6b\x9a\x75\x46\x27\x8e\x29\xe9\x28\xe9\x41\x90\xd4\xb2\x16\x01\xe1\xcc\x24\x59\x83\x5c\xc6\xe0\xb4\x31\xc5\x0f\x7b\xd6\x69\xcc\xe0\xd3\xb0\x83\x4a\xec\x6c\x00\x80\xb5\xc2\x35\x61\x0b\xbe\x1c\x30\xc7\xbe\x60\x9e\x5d\xa1\xd3\x49\x92\xd8\xe7\xf6\xfb\xe3\xf1\xe1\xbe\xe1\x41\xfc\x12\xe0\x0c\x62\xd9\x65\xfd\x21\xdb\x8d\x70\xbd\x14\xa6\x93\x1a\x87\x4b\x42\x9c\x5a\xb4\x9a\xec\x24\x13\x92\xa9\x3b\x08\x54\x1c\x1f\x7d\xbc\x22\xf7\x3b\xc9\xb6\x85\xbc\xeb\x31\xbc\x29\x17\xb4\x95\x97\x2d\xe8\xf2\x62\xbf\xa0\xcb\x34\x1d\xaa\x09\xad\xcb\x62\x07\xd1\x02\xbf\x77\x43\x86\xd5\xf4\xd0\x5a\x17\xc7\xba\x38\x42\xf8\xd6\xa8\xc9\x49\x74\xc0\xc6\x27\x45\x7f\x6f\xed\xd1\xa4\xf1\xb5\xe7\xa4\x5c\xc8\x68\x20\x97\x1f\x19\x08\xb7\x03\x61\x3c\xd3\x55\x61\x20\xe3\x2c\xec\xa0\x34\x02\x9c\xbc\xb4\x92\x1b\xe4\xc6\x69\x74\x4c\x5b\x3d\xf2\x5e\x52\xd5\x40\x48\x0b\xc0\x2c\x9a\x1d\x83\x2f\x8a\xe6\x89\x5d\xd8\x24\x4f\xfc\xb4\x93\x41\x69\xa0\x4d\x89\x57\x0b\xb5\xcc\x2c\xe7\xfd\x08\x22\x95\xfa\xa2\xb8\x7d\xcb\x7d\x1f\x32\xa2\x09\xed\xf5\x5b\x62\x7b\x54\xf2\xcf\xf1\xd1\x95\xc8\x63\xf5\x88\x03\x7e\x4f\xe9\xee\xad\xb8\xa6\x6a\x43\xa5\xbb\x70\x7f\xfc\xa4\xe7\xc0\x81\x2f\x08\xe3\x63\x4e\x0f\xc4\xf4\xf6\x67\x96\x85\x10\xaf\x03\xc8\xac\x96\xd0\xba\x12\x42\x43\x3d\xbb\x74\xf1\x3c\xfc\xe2\x81\x80\xbd\x98\xdb\xe9\xb6\xef\xe5\x5e\x27\xc6\x0f\x42\x71\x52\x26\x26\x17\xf5\xf2\x42\x64\x5c\x3f\x07\x10\xf9\x23\x5e\xe2\xc5\x7e\x49\x6c\xee\x58\xea\x77\x01\xeb\xa4\x4b\x9d\x54\x3f\x58\xa1\x5e\x82\x13\x2d\x2b\xe4\x70\x4b\xf8\xf9\xa7\xc0\x2c\xc0\xdd\xfe\x2d\x04\x01\x21\x8b\x55\x37\x97\xe0\x24\xdc\xa0\xae\x0e\x82\x5e\x6f\x6b\xc2\x0d\x1a\x26\x35\x18\xa8\xb5\xd6\x8d\xdc\x6a\x42\xf3\x1e\xc8\x05\x71\x02\xdf\xd0\x8a\x42\xf0\x07\x8e\xda\xa6\x0f\xce\xe1\xfb\xf0\xb8\x96\xd7\x5c\xe3\xbe\x7c\x4c\x95\xfc\xf8\xf4\xfb\x57\x2f\x5e\x7d\x9d\x9f\xfd\x03\x26\xe0\x86\xf7\x8f\xd6\x2f\xcc\x86\x55\xab\x33\xb1\x3e\x63\xaa\xb6\xc6\xe9\xce\x0c\x7d\x98\x20\x4c\x6d\x3c\xae\xd3\x47\xa7\x08\xce\x9e\x26\xb6\xec\xd9\xdb\x93\x22\x38\x7b\x55\xe7\x36\x9a\xa3\xd3\x1e\x29\x08\xfe\x59\x1d\x13\x14\x6b\x9d\x18\x68\xc7\xe3\x15\xe8\xd7\x7c\x2b\x6e\x1d\xab\x1e\x6f\x74\x91\xf0\xd4\xed\x74\xc2\x95\xd3\x8f\xb7\x77\x72\x4b\x7e\xcb\x38\x5a\x94\xcb\xc1\x7e\xb1\x5b\x8e\xb7\x17\xf5\x62\xb5\xec\x3b\x46\xab\xe5\x98\xe8\xbc\x71\x66\x0a\x22\x84\xf7\x8b\xd5\x72\xb4\xbd\xac\x17\xbb\x13\x35\xf4\x43\xaa\x8b\x8c\x75\x91\x1e\x70\xf1\xfa\xa8\x92\x79\xd2\x6e\x4c\xbd\xfd\xa2\x5c\x3e\x7e\x32\xde\x3e\x7e\x82\xef\x08\xeb\x79\x22\xf1\x75\xa8\x08\x70\xd7\x1a\x05\xac\x97\x08\x5f\x75\xf2\x9c\x29\xc4\xba\x35\x85\xc0\xbf\x92\x9b\x71\xdf\x4c\xaf\xc7\x57\xee\x3e\xfe\xda\x3e\x0e\x1e\x38\xd7\x8b\x72\x39\xde\xe2\x5f\x11\x06\xff\x8f\x70\x82\x3c\x9f\x2e\x98\x26\x64\x90\xec\x36\x03\x0f\xca\x2b\x0c\x0d\x48\x0d\xeb\xb2\x5f\x01\x70\x4b\xbc\xc1\x09\x78\x38\xd2\x80\x93\x3a\xd8\xb7\xf8\x30\x86\xaa\xcb\xc4\x88\x1d\xdd\x6d\xfd\xd3\x47\x6e\x2b\x5b\x67\xbf\x9f\xb8\xa6\x40\x5a\x84\xf7\x12\xfc\x6c\x58\x99\x66\x9a\x86\xd2\x46\x4d\xf3\x1f\x09\xf5\xba\xe1\xc3\xfe\x03\x18\x41\x0f\xe6\x73\x84\x23\xc4\xe8\x67\xe7\x46\x31\xf2\xc2\xf8\x9b\x3e\x51\x64\xb6\x6c\x9a\x44\x13\xdb\x8b\xa5\xa3\x1d\xd5\xe4\x8a\x6e\x8a\x1b\x26\xa4\x21\x22\xcf\x7e\xc9\x0b\xb2\xe0\x98\x2d\x03\x32\xf2\x8c\xd2\xbc\x20\x7f\xc9\x38\x0a\x13\x95\x4d\x04\xa7\x95\x26\xdd\x91\x98\x05\x69\xdb\x75\x88\x77\xd1\xf3\xe4\xd6\x78\x6f\x7c\x7c\x0d\x09\xa9\x9b\xc6\x45\x88\x25\x84\xec\x47\xb3\x76\x45\x3f\x3e\x67\x8b\x13\x1d\xa1\x41\x21\x66\xd4\x2e\xf9\x3a\x7c\xb4\x56\xc4\x63\xd8\x3c\x4d\xd7\x59\x65\xe4\x4e\xe8\x72\x9d\x95\x80\x87\xa1\xa6\x69\x31\x0c\x5b\x04\xd2\x2f\x74\x09\x53\xb8\x69\x1c\x66\x6d\x0b\x18\x30\x62\x1a\x51\x62\xa7\x0b\xb4\x58\xb5\x2d\xa3\xd3\xa1\x0d\x5b\x18\x6f\x48\xd8\xb6\x51\xc6\x43\x78\x47\xa2\x41\x59\xc5\x3b\x84\xb7\x24\x68\x04\x94\xf4\x10\xbe\x21\x71\xe7\xd2\xb7\x7d\x17\x4d\x73\xd3\x99\xd3\x2e\x9a\xc0\xb6\x3b\xda\x1b\x7c\xfd\x91\xa7\x9d\x6b\x78\x32\x1c\x2a\xb8\x31\x7f\x2f\x24\x03\xa9\x84\x26\x1f\xae\x8d\x45\xa7\xd1\xf8\x14\xd0\xb5\x4e\xa2\x7c\x65\x13\x76\x4d\x33\xec\x16\xda\xda\xb4\xb6\xd4\x8d\x06\x46\xc7\x1d\x7c\x71\x07\xa6\xbb\x5c\xf5\xf4\xb4\xeb\xf6\xb4\xe9\xe9\xe9\xe6\xa8\xa7\x2d\xc2\xb7\xe4\xaa\x69\x7e\x3d\xcf\x56\x4d\x73\xd7\x34\xb7\x06\x6d\xb0\xb0\x80\x0c\xa7\x18\x32\x0c\x43\xbe\x58\xec\xc1\xaf\xd5\xad\xa6\x94\xfa\x02\xce\xdb\x86\xe9\xdc\x76\x9b\xb7\xdd\xd3\x39\xe4\xe6\xf4\x90\x09\x14\x6b\x34\xf0\x51\x26\x40\x8d\x4d\xe4\x49\xd2\xf3\x32\x18\x13\x95\xee\x71\xff\xb2\x17\xe8\x3c\xac\x16\x80\x40\x9e\xdf\x0b\x14\x29\x36\xdc\x5a\x8b\xcc\x1e\xb0\xbb\xd3\xb9\xe5\xe2\x3e\x88\xa0\x7a\x4d\x5f\x1c\x6f\x59\x3e\x9c\xe1\x13\x9b\x98\x0f\x67\x07\x0c\x90\xd8\x41\xf4\xff\x1e\x42\xf4\xd9\x7f\x8c\xa3\xd1\xa2\x19\x8c\x70\xb7\x2c\x82\xf0\x88\x81\xf1\x30\x9a\x01\x3a\xed\xc0\xce\x75\x37\xe0\x48\x4e\x13\xe8\x6c\x45\x68\xc5\x92\x88\x85\x5c\x8e\xb3\x7a\x0e\x39\x1d\xac\x76\x99\x4f\xe3\x8d\x7f\x91\xf5\x68\x6a\x90\xd7\x1a\x77\xd6\xc8\xe9\x86\xad\xa8\x5b\x9b\x3f\x3f\x88\xde\x3f\x84\x93\xea\x56\x12\x9c\x74\xe8\xf4\x2e\x56\xaa\x7a\x81\xa7\x24\xaf\xfa\x5b\xed\x61\x90\x1e\xf5\x60\xcc\x83\x8a\x2d\x3d\x20\x14\xbc\x76\x10\x6c\xc9\x82\xaa\x0b\xab\x6f\x6c\xd4\x5e\x2f\xbd\x9e\x31\x68\xdf\x5e\xb6\xda\xc5\x56\xd7\xf6\xc2\x82\x49\x98\xaf\x89\x0a\xa8\x67\xd7\xce\xc4\x7c\x03\xdb\x77\xd2\x2a\x2c\x2d\x92\x0f\x63\xb1\x57\x63\xb1\x1e\xb7\xc3\x48\x34\x45\x0f\x58\x33\xb4\x36\x7b\xa0\xb5\xd9\x27\xb5\x36\x9c\x85\x6c\xa7\xd2\x68\x78\x82\xba\x85\xdf\xc3\xcf\x3f\x8d\x27\xf2\x01\x68\xb2\xbb\x90\xdf\xd4\x9e\xe4\x7f\x61\x43\x02\x85\x8f\x68\x2f\xae\x77\xfb\xa7\x65\x49\x2b\x2a\xe1\x4a\xb6\x71\xf7\x44\x57\x5c\xd1\x12\x06\x9d\x3a\xff\x38\x33\xc2\xee\xb3\xad\xb8\x31\xbe\x89\xfe\x11\xce\xf8\x1f\xad\x58\xae\xe0\xab\xb3\x5b\x56\x55\x67\x36\x1e\x4a\xbd\xdf\x69\x40\x61\x7c\x0a\xad\xf7\x6a\x2f\xe9\x99\x73\xf2\xa7\x29\x0c\xe3\xcc\x65\xf2\x5b\xed\x74\xea\x0a\xd2\x8e\x6f\x2e\x72\xd5\x1d\x3e\xae\x49\x1f\xc7\x08\x6c\xa9\x6a\x84\x2b\x72\xef\xb0\xaa\x9c\x79\x04\xeb\x80\xcb\x5e\xe7\xf3\x2d\xf8\xe0\x44\xba\x45\x67\x44\x06\x77\xc2\x52\xc1\x80\xb9\xe2\x22\xc4\x2e\xea\x3e\xef\x72\xf4\x80\xf7\x44\x64\xcc\xf0\x2a\xf4\x78\x44\xc6\xdd\x47\xf9\x11\x50\x14\xa9\x74\xad\x89\x95\x41\xb5\xe8\x91\x97\x17\x8c\x13\x84\x57\x44\xcd\xcb\xa6\x59\x37\xcd\xfe\x0f\x4f\x08\xa9\xfe\xf0\x64\x2e\xf2\x22\xaf\xf1\x86\xa8\xb9\xc8\x5d\x3c\x71\xa3\xaa\xbb\xca\xa0\xd0\x2c\x4d\x2b\xfb\x77\xb8\x4e\x53\x35\x37\x96\x39\xe3\x59\xce\x2d\x46\xa2\xc4\x2e\xdf\x64\xdc\xa0\x1c\x56\x97\x57\x7f\x3b\x5c\xc3\xe8\xfa\xae\x32\x6e\x51\x95\xc3\x21\xa3\x8e\x85\xbf\xa2\x37\xac\xa4\xdf\xb1\x0f\xb4\xfa\x5e\xef\xd5\xc5\x93\xa6\x19\xfe\x55\x8f\x34\x40\x39\xa4\x53\xa4\x75\x1c\x82\x4d\xc0\x45\xe2\x1e\xbc\x5a\x12\x6d\xd7\x65\xf0\x6d\x9d\x7f\xc9\x1b\xc7\x66\x65\xeb\xec\x26\xec\x60\x35\xf7\xe6\x40\x75\x6b\xae\x38\xae\x23\xd1\xc5\xc8\x61\x66\xf9\x78\x6f\xd9\x49\x6d\x12\xa0\x75\x78\x1b\x8c\x6b\xf3\x70\x9b\x46\x87\xda\x22\x8c\xba\xc5\xdb\x28\xc1\xe0\x9a\xb8\x48\xd3\x1d\xaa\x16\xbb\x25\x31\x33\xaa\x0a\x45\x3f\x5b\x65\xc9\x68\x3b\x4a\x76\x1f\xf0\x59\x32\xba\x31\x3f\xa6\x28\xc1\xd5\x62\xb5\x24\x53\x5c\x2d\x36\xf0\x27\xd2\x7c\x6a\xd7\xa3\x35\x49\xb9\x8b\x97\x60\x3c\xcb\x67\xf8\x3a\x9a\x01\x98\xf3\x43\xb3\x37\x8f\xee\x4c\xc3\xdb\x47\xd7\x71\xd3\xab\x51\xa2\xc7\xb1\xb1\x06\xdb\xf7\x91\x62\x58\x1e\x1c\xc5\x40\x99\xbb\x05\x95\x06\x73\xb9\x8a\xc0\xa7\x57\x68\xb0\xb9\x95\xff\xf6\xd4\xe3\x9b\x20\xbb\x43\x3f\xc6\x45\x00\x4f\xe9\x80\x03\x0d\x59\x3f\xb4\x87\xe9\xce\x9d\x9c\x03\x6e\xc1\xa1\x03\xc8\xff\xfe\x71\x9e\x19\x76\x71\x8c\xce\x7e\xee\xc5\xb7\xdc\xd0\xd5\x31\xb7\x06\x74\x07\xdb\x89\xe3\x50\x93\x44\x9e\x50\x4b\x1e\xea\x1b\x2e\x17\x74\x39\x57\x93\x9a\xaa\x56\x23\x8f\x62\x9d\x8a\x72\x75\xa4\xab\x47\x2d\xf7\x31\x24\xbc\xd3\x34\x0a\x6f\x10\xad\x99\xa5\xbb\xd2\xf4\xe7\x2c\xae\xd4\xb3\xb6\x82\x7f\x2b\x8a\x55\xde\x15\x7d\xb6\xea\x60\x2f\xc1\x81\x32\xc5\xb2\x4b\xba\x16\xe4\x59\x26\x03\x5c\x4d\xd8\x62\x1f\x55\xb4\x3d\x2a\xe2\xb4\x6b\x5b\xff\xf5\xd1\xc2\x44\x27\x12\x17\x08\xff\x9c\x29\xdc\x82\x7c\xf9\x51\x15\xd7\x03\x84\x15\xe9\x9e\x22\xeb\xa5\xf6\x70\xc0\x8c\x9e\x8c\xfa\xd6\x3a\x97\x07\x6f\xde\x9f\x6e\x1b\x3c\x0f\x3f\xf2\xfb\xc3\xe0\xca\x06\xa5\x41\x7d\x1a\x63\x3d\xbe\x5b\x25\xfd\xe7\x9e\xd6\xaa\xa3\x12\x26\xac\x32\x15\xb2\x51\x31\xcc\x17\x91\x59\xf0\x35\xb9\x02\x13\x80\x0d\xab\x51\xac\xed\xe8\xee\xdb\x97\x86\xae\xaf\xf5\x5a\x06\xea\x64\xf7\x81\x7e\xa9\xc6\xce\xbd\x22\xaf\xfe\x88\x14\xb6\xf2\xc5\xf2\xd0\x51\xb6\x26\xe0\x2b\xe7\x37\x60\x5f\xce\xd5\x62\xba\xcc\x55\xa8\xac\x49\x58\x9a\x32\x97\xcd\x74\x36\x3b\xa1\x70\x4d\xee\x0f\xd1\x3d\xea\x8c\x39\x40\x88\x8a\xf6\x77\xaf\x70\x58\x81\xdb\xd5\x6e\xfb\x0b\xb5\xec\xae\x43\x94\x09\x9e\xa7\x83\xa6\xe7\x45\x94\x9d\xdf\x1f\x8c\x56\x5b\xa4\x7a\x1b\xd9\x6c\xf5\xcf\xeb\x41\x43\x2e\x8d\xb7\xe5\xfa\x36\xf6\x8c\x17\xcc\xb9\x1e\x34\xe6\xb2\x5a\x58\x63\xe5\xb5\xb0\x3a\xc3\x3b\xa5\xc9\x17\xd8\x2d\xd0\x89\x81\x04\x08\x94\xba\xe0\x67\x26\x42\x9c\xc8\xe3\xa7\x5e\x09\x52\x27\x9a\xc0\xa7\xbe\x47\x73\x00\xad\xf7\x83\x3a\x56\x44\x8f\xa4\xe6\x83\xda\xaa\xda\x9a\x21\xf4\x2b\xe9\xf6\xa8\x4a\x12\x17\x2f\xe4\xec\xd7\x8c\xe2\x05\x58\xc0\x25\xa6\x57\x17\x06\xf2\xf8\x2a\x7d\xd5\x86\xa2\x40\x87\x03\x36\x95\x56\xe6\xa8\x9f\xae\xf5\x43\x5f\xad\xbe\xe1\x9e\x6e\xe2\x9f\xbd\x1d\xf7\xe9\x25\x9f\x6e\xe3\xc7\xa8\x8d\x25\x32\xb1\xeb\x5a\x07\xcf\x3f\x28\x56\xd5\x24\xfb\xb8\x73\xf5\xeb\x4a\x5c\x15\x15\xb2\xbe\x14\xa1\x1a\x66\xc1\xfb\x5e\x93\xbf\xe9\x6f\x77\x29\x08\x38\x0e\x3f\x20\x74\xc8\xfa\x81\xa3\x33\x2f\xe9\x9a\x05\x81\x3e\x91\x19\x74\xeb\xe7\xb8\xc5\x1d\xf6\x1c\x74\x1c\xb2\x64\xe7\xc8\x00\x8d\xd8\xc2\xd0\x5d\x38\xb2\x7d\x55\x61\xda\x8a\xf8\x27\xc5\x16\xd8\x34\x7a\xe2\xff\xcf\xfa\xdf\xfd\x6c\xf2\xd9\x7f\xb9\xdf\xfd\x2f\xf7\xbb\xff\xe5\x7e\xf7\xbf\xdc\xef\xfe\x7f\xc5\xfd\xae\xf7\xda\x1f\x80\xe3\x8f\xb9\xe4\x5d\x04\x85\x97\x10\x62\x7b\xf2\x56\x88\x4a\xb1\x9d\x46\x44\xed\x03\xd3\xe3\xa9\x97\x76\x5c\xf5\x52\x02\x8d\x76\x5c\xca\x27\x56\xec\x94\xa0\xb9\xf7\xc4\x9e\x3b\x16\xe6\xff\x0f\x1d\x7e\xc9\xff\xf7\xfb\xdd\xc2\x9c\xdc\x97\xce\xaf\xa4\xa6\x16\x56\xb4\x2a\xee\xf2\x29\xde\xa8\x6d\xa5\xbf\x03\xad\x4a\x63\x24\xce\x54\x45\xf3\x24\xc1\x8a\x6e\x77\x55\xa1\x68\xfe\xdf\x2e\x56\xec\xc6\x38\x7a\x23\x89\x32\xa7\x29\x39\x93\xa2\xa2\xed\xe7\x65\x4f\x19\x23\x39\x4e\x2e\x2f\x1e\xaf\xd8\x4d\x6f\x01\x23\x0a\x76\x05\xe0\xff\xff\x86\x6d\xe8\xe4\x3c\xd9\x08\x88\x85\x2d\xca\x7d\x9d\x78\x9d\x37\x6b\x19\x6b\xb5\x30\xf2\x64\x12\x75\x86\xcf\xdc\xf7\xaf\xbf\x5a\x75\x10\xe8\xa3\xa7\x3c\xa4\x87\xe5\xcd\x60\x0e\x98\xf5\x9e\x64\xeb\xb1\x38\xfb\x9f\xe9\x35\xcf\xde\x4a\x86\xb0\x08\x30\x4b\x30\x31\xbe\x3f\x60\x8e\x41\x5e\x61\x08\x35\xbd\xdb\x84\x2e\xa6\x4b\xd4\x25\xf6\x62\x73\x28\xa2\x2c\x1b\xf7\x48\xd3\x45\xb9\x18\xd5\x73\xff\xcb\xc9\x73\xce\x12\xf4\x40\xe8\x29\xcb\x34\x2d\x2b\x56\xbe\x4f\xb0\xd9\xa5\x04\x27\x66\x9f\x42\xfd\xad\x03\x42\xf9\x62\x69\xa3\x2c\xb2\xfa\xf5\x8e\xf2\x36\x42\x94\x01\x53\xaf\xed\x28\x7d\x24\xc9\x9a\xaa\x0e\xc1\x41\x71\x81\x95\x3f\xd0\x2a\x63\x8e\xb4\xf8\xd5\x20\x8e\x47\xe8\x79\x47\x43\xdc\x71\x43\x63\x57\xad\x96\xe1\x91\x25\x2b\x76\x93\xa0\x01\xb3\x5a\xd3\x6f\x5f\x7e\x4b\x94\x35\x4d\xb0\x6a\x35\x6c\x02\xfa\x37\xaf\xc4\x8a\xd6\x8b\xe9\x72\x20\x26\x6c\xe5\x4f\xf0\xaf\xc9\xc8\xf0\xa3\x0b\xbe\x12\xdb\x0c\x79\x97\xd7\xd9\x67\x7f\x42\x13\x40\x12\x64\xf6\x04\xcf\x9c\x13\xd8\x80\x73\x52\x48\x56\x8c\x37\x6c\xb5\xa2\x5c\xaf\x5e\x51\xd5\xd4\xf3\xdc\x59\x47\xd7\x28\x22\xd6\xa2\x03\xdd\x32\x66\x60\xf9\x8a\xd5\xea\xad\xbe\xbf\x56\xca\x97\x51\x60\x18\x15\x08\x0b\x4f\xe3\x74\xcb\x7c\x64\xfd\x06\x33\x6f\x6e\xa8\x4f\x73\xd3\xcc\xe2\x84\xb9\x4c\x53\x08\xb2\x42\xf9\xca\xda\x60\xa2\x3c\x63\x44\xa1\x4f\x76\x0c\xce\xd0\xfc\xd4\xe8\x95\x73\x1d\x0e\x23\xca\xe5\x9c\x87\x1b\x95\xf3\x89\xa2\x1f\x94\x2d\x4e\x54\x3b\xc7\x7a\xa3\xaf\x7e\x67\x62\xca\xc6\x39\x0b\x0f\x64\x9a\x0e\xc3\x4f\xc6\xaf\x51\xb0\xa0\x83\x4e\x69\x6f\x36\xfd\xab\xdd\x7f\x30\x93\x8c\x76\x20\xc8\xb0\x56\xb2\x37\xac\x66\x57\xac\x62\xea\x8e\x24\xf0\xbb\xa2\xc9\x71\x2b\x9f\x72\x3a\x42\xae\xcd\x0b\xc7\xee\x74\x74\x3d\x64\x5a\x6b\x52\x35\xb9\x8e\x5a\x03\x98\x9e\xa0\xa6\xe1\x13\xf8\x69\x2d\xc1\xc2\x99\xb6\xac\xb4\x89\xbd\x58\x7a\xbd\x26\xee\x11\xc0\x0c\xf3\x89\x7e\x32\xd0\xa0\xcb\x02\x84\xa1\xae\x68\x5d\x4a\x76\x45\x57\x57\x77\x09\xd6\x57\xc4\x1d\x65\xd3\xe2\x9a\xf1\x95\xf7\x6e\x9c\x79\x67\xc6\x54\x06\x51\x86\xed\x19\x80\x93\x94\x09\xcf\x00\xeb\x40\x0a\x03\x0a\x27\x51\x22\x0e\x4c\x03\x78\xc0\x15\xef\x6d\x21\xe0\x0c\x41\x5b\x0f\x16\xc1\xf7\x46\x47\xf1\xe3\x25\x5d\x70\xbb\x13\xd9\x96\x81\x7e\xef\x14\xab\xf8\x24\x7a\xc7\x0e\xc8\x3d\x70\xff\xe3\x3d\x59\xed\xf9\x7b\xdb\x20\xb7\x09\x26\xc8\xe1\xff\x60\xab\x9f\x56\xca\xf7\xe8\xfa\x3e\xa0\x03\xc2\xfc\x98\xdf\xec\x0c\xe1\x4f\xb6\xd7\x91\x6a\x93\xfb\x63\xed\x87\x9e\x66\x0f\xbd\x37\x05\xc2\x75\xe9\x53\x2d\xfa\xd6\x17\x1d\x5f\x49\x1b\x8b\xb4\x85\x2a\x46\x98\x7f\x8a\x1b\x14\x02\x8a\x79\xd6\xff\xea\x3d\x0c\x1d\xdc\x7d\xff\xd7\x80\x83\x92\x7b\x07\x1b\x50\x1e\x0f\x78\xc5\xea\x9d\xa8\xfb\xc6\xdc\x06\x9b\x8c\xaf\x9f\xe1\xe8\xf5\x73\x6c\x9d\x84\x5c\xa7\x81\x90\x1c\x0a\x0f\x02\x15\xbb\x5e\xfb\x63\x6e\xcc\x84\x70\xd8\x01\x98\x15\x77\x67\xe9\x4f\x83\x5e\xe7\xac\x1f\xda\x59\xd6\xe0\x89\xdc\x13\xae\x03\x7c\x18\xc9\x70\x49\x1f\xf2\x20\x10\x81\xf7\x9e\x83\x01\x71\x26\x50\xe7\x74\x44\x30\xae\xef\x55\xf5\xaa\x01\x5d\x54\x8c\xce\xe9\x11\x9a\x12\x23\x00\x14\xe5\x46\x49\x02\xf0\x3e\x15\x19\xe9\xd3\xe0\x69\x07\xe0\xd9\xdf\xb7\x8a\x1e\x69\x8a\x82\xc7\xb2\x8b\x73\xf5\xa3\x04\x9e\x54\x03\x1c\x55\xef\xa0\x20\x1a\xbd\xeb\xe7\x60\xbb\x60\x18\xd6\x62\xce\x60\x89\xb9\xf5\x24\x90\x6c\xc5\xbe\xa6\x94\x2b\x2a\xc1\x1b\x6c\x90\x58\xd1\xe2\x46\x23\x42\x81\x69\x9d\xc1\x2c\x7d\x5d\xf3\xd9\x56\xbb\xaa\xf6\x32\xae\x60\x50\x53\x5f\xc1\x7c\xb6\x15\xec\xf7\x01\xac\xcb\x4e\x1f\xf5\x80\x0e\x50\xe8\x7e\x38\x1d\x12\xc2\x03\x3c\x01\x7c\x09\xed\x6b\xba\xfa\xe2\xce\x51\xd8\xc3\x29\xc4\x59\xb5\xe2\xa3\x37\x1b\x71\xab\x11\xb0\x09\x50\x5c\x58\x82\x7d\xfc\x80\xfb\x3b\x06\x83\xb9\x87\x8f\x5c\x01\xef\x34\x67\x07\x90\x25\x76\xbd\x35\x28\xcc\xe0\x06\x89\x7f\x69\xb0\x9d\xd1\x69\x34\xcd\x8f\xed\x1b\x7d\xc3\xe2\xb1\xfd\xc7\x87\x86\xed\x8a\x9a\xa8\x17\x72\x52\x56\xa2\xa6\xaf\xf9\x33\x9d\xf8\x7a\xaf\x6a\xa6\xaf\xb6\x3f\xd8\xc7\x5e\x32\x60\xdf\x57\xe2\x96\x27\x38\x9a\x17\x5b\x67\xe1\x82\x3b\x00\xc4\xbb\xb7\xde\x7c\x0e\x68\xab\x6a\xaf\x26\x0a\x62\xd8\xa1\xa6\x91\xbd\xa9\x2c\x53\x7a\xff\xf1\x70\x0a\x66\x86\xed\x55\x08\xf6\xee\xe3\xb7\x60\xd0\x41\x1d\x89\x75\x61\xca\x8c\xc4\x4d\x23\xa1\x4d\xa3\x7c\xcc\x6b\xc0\x4a\x6d\xa4\x1d\x77\xdf\x4f\xc5\xde\xb1\x9e\x67\x4c\x1d\xf0\x2a\x7b\x40\xfa\x14\x1c\x8d\xf4\x9b\xbe\x37\xa9\x43\x02\xf5\x8f\x75\xe6\x70\x3e\x3d\x56\x0d\x72\xed\x58\xed\xc8\xca\x8a\x16\xd2\x8d\xed\x68\xfc\x08\x3f\x3c\x01\xd0\xea\x1a\x12\xc2\x5a\x44\x3b\xf6\xb6\xd3\x86\xb3\x88\xa1\x2d\x54\x0d\x41\x01\xd1\xd7\x4e\x03\x4a\xc4\xd6\xba\xb0\xee\xb0\x2d\x0f\x47\x29\xe3\x36\x2a\xae\xc5\x68\x07\xcc\xbe\x21\xb0\x6e\x1a\xb7\x0a\x16\xce\xe0\xcb\x0f\x53\x40\x30\x08\x2f\x3b\x3e\x7e\x12\xac\x3a\xe4\xf1\xa3\xf2\xe9\x64\x9b\xc5\xb4\xcd\x22\x07\x34\x4f\xc7\xd9\x95\x46\xb9\x3b\x14\xfe\x29\xdc\x3e\xaa\x07\xa9\xee\xe9\xea\xd2\x55\x1d\xcf\x24\xb4\xaf\xcb\x8e\x33\x1e\x68\x8f\xd0\x07\x29\x10\x63\x05\x13\x2f\x5b\x54\xdf\x3d\xf0\x9d\x46\x83\xcd\x39\x5a\x8f\x53\x97\x50\x3f\x86\xb2\x4b\x95\xb6\x09\x73\x65\x62\x15\xb5\xef\xba\x44\xb9\x9a\xd3\x80\x7a\x4c\x92\x9c\x46\xe4\x63\x92\x80\x0c\x8f\x1d\x32\x84\x05\xe9\xc7\x95\x8c\xec\x73\x23\x6e\x7b\xb4\x02\xa8\xbb\xac\x91\xfa\xaf\x9d\xab\x53\x0a\x00\x9d\xc6\xde\xba\x06\xe9\x39\x78\x07\x49\x1a\x71\xeb\x2f\x69\x33\x7d\x61\x25\xae\xaf\xab\x13\x65\x2d\x3a\x6a\x94\x29\x33\x94\x53\x18\x7d\x16\xeb\x28\x84\x0b\x1e\xbd\x23\x6d\x3b\xc7\x05\x21\xde\x7e\x3f\x4e\xd7\x73\x45\x49\xcc\x65\x0d\x94\x37\x26\x92\x6a\x02\x73\xe5\x17\xcd\x28\xa0\x7a\x83\x54\x5f\xc0\x84\x25\xf5\x8e\xa1\x69\x7c\xf3\x3c\x3c\x11\x46\x87\x3c\xca\x3c\x7e\xb6\x00\xa2\xb4\xcf\xcd\x19\xcf\xac\xef\xf3\x82\x88\x9e\x11\x89\x70\x44\xa2\x33\xa2\x4e\x67\x7d\x38\xb0\xed\x8f\x23\x1c\xbc\x47\x05\x6a\x1a\xda\x79\x93\x25\x66\xf6\x4d\x66\x1a\x6a\x21\xf3\x44\x79\xfd\x2e\xf6\x3f\x51\xe8\x6b\xe7\xf0\x3f\x24\xf5\xd5\xb0\xfb\xb4\xec\xa3\x9b\x63\x24\x1e\xa8\x23\xf8\xa0\x99\x75\x52\x0d\x3e\xc3\x8f\x84\x1d\x66\x64\x69\xea\x46\xb8\x5d\x79\x87\xdf\x90\x92\x2d\x96\x98\xa2\x73\x80\x34\x4d\x63\x5e\x29\x34\x79\x26\x56\xf4\x25\x93\x52\x48\x62\x62\x14\x7f\x24\x48\x61\x8f\x27\x1f\xac\x82\xd4\x5d\x55\xa8\xb5\x90\x5b\x2c\xc9\xe3\x6b\x5a\xbe\x17\xef\x1e\xbf\x5b\x39\x37\x40\xe0\xbd\xc5\x84\x30\x7b\xb7\x7a\xec\xd3\x18\x79\x6c\x63\x10\xbe\x7b\x9c\xcd\xf3\xc5\x7f\x1f\xff\xfb\xb2\x79\xb7\xba\x7f\x82\x0f\xe8\xdd\x64\xf2\x48\xde\x98\x58\xda\x8f\x27\xf4\x03\x2d\x75\x0d\x41\x78\xd3\x30\x5c\x10\x91\xa6\x19\x9f\xf7\x46\x4c\x6b\x9a\x3f\xe5\x0c\x8c\xc4\x6b\xf2\xd8\x84\x5f\x7f\xf7\xb8\xed\x74\x4f\xea\x34\x7d\xfc\x37\xa5\xc7\x37\x7a\x37\x79\xb7\x1a\xb5\x79\x15\x79\xfc\x6c\x23\xc5\x96\x86\x15\x4a\xf2\xf8\xf5\x8e\xca\x22\x4c\x5b\x93\xc7\x4f\x77\xbb\x8a\x9e\x59\xd7\xb9\xf2\x28\x2e\xdb\x0d\xe5\x2b\x21\x11\x5e\x91\xc7\x2f\x8b\xf2\xec\xf5\x9b\xb3\x9f\xce\x66\xef\x56\xef\xbe\xcc\x16\x7f\x36\xd3\x7c\xb7\x42\xef\xbe\x6c\x9b\xdc\x90\xc7\xdf\x6d\x0a\xae\xc4\xf6\x2f\x6f\xda\xd4\x9d\xed\xc8\xcc\xc3\xa7\xa7\xe9\xe3\x97\xe2\x8a\x55\xf4\xdd\xe3\x77\xb7\xc1\x04\xb6\x64\xd7\x34\x8f\x9f\xf2\x95\x14\x6c\xd5\xdc\xd2\xab\xd7\x6f\x9a\x2f\xaa\xa2\x7c\xff\x05\x95\xf2\xae\x81\x79\x9c\xbd\x64\x9c\xb9\x9f\xe2\x8a\x35\x2f\x9e\x9b\xb6\x82\xdd\xba\x81\x76\x5e\x16\xa5\x6d\x5a\x21\x7c\x47\x1e\xbf\xbb\x7a\x26\x5f\xbf\x79\x77\xd5\xf6\x77\x4d\x1e\xdf\x32\xee\x2a\x2a\x84\xaf\x48\xa9\x1f\x1a\xeb\x83\xe4\xef\x46\x1b\xe1\xdd\xe3\x0c\x5c\x90\xbc\x5b\x3d\x42\x8f\xd1\xe0\x2a\x4d\xb3\x2b\xf2\x0a\x7c\x83\x67\x57\x7a\xa7\x10\xbe\x4a\xd3\xab\x4b\x32\xfb\x1c\x5c\xa9\x0f\x67\xb8\x26\x43\x1b\x19\xec\x57\x72\x93\xa6\xd9\xbe\x69\x4a\xbd\xe5\xfb\xaa\x22\xe4\xaa\x69\xae\x2e\x66\x4f\x26\xb3\x19\x42\xf8\x96\xc8\xa6\x11\x69\x5a\x5c\x92\x7f\xc7\xcf\x75\xdd\xd7\x1a\x95\xf3\x70\xe0\x4d\x20\x98\x00\x09\x77\x20\x9b\x78\xe3\xcd\x0e\x38\xbd\xb5\x25\x07\xb1\xb4\x80\xa8\xf9\x73\x91\x99\xe8\x21\xcf\x45\xf6\x17\x89\x15\x1e\xce\x10\x7e\x95\x29\xe7\x64\x55\x4d\xe0\x49\x1e\x1c\x91\xb1\xc6\x1d\x80\x6e\xfa\x8e\x65\x12\xab\xc9\x56\xac\x4c\x4c\x46\xac\x26\x15\xe3\xf4\x8d\xf1\xbb\x23\xa4\xe3\x06\xac\x44\x49\xa4\xb5\xcb\x85\x21\x4d\x18\xdf\xed\x95\xd1\x81\x5c\xa8\xe0\x6b\x69\x65\x21\x06\x99\x85\xf7\xb1\x2a\xee\xa0\xd2\x07\xc3\xe5\x46\x03\x36\xb9\x95\x05\x08\x3f\x83\xdb\x0e\xd4\xea\x4b\x5b\xfb\xad\x93\xa8\xc0\x70\x7e\xd4\xa5\x2d\x25\x17\x34\xea\x5b\x01\x21\xcd\xab\x62\x4b\x47\x24\x39\x6b\x9b\x1c\xeb\xfc\x44\x37\x52\xec\x95\x00\x6a\x34\x4d\x87\xdb\x34\x65\x66\xbc\x13\x48\xca\x10\xfe\xc2\xf5\x16\xe8\xf1\xbd\xa7\x77\x2f\x8b\x5d\x9d\x6b\xea\xd9\xc4\x60\x84\xdf\x7a\xa5\xbe\xa6\x3c\x9f\x42\xea\xad\x64\x8a\x7a\x59\x1d\xe3\xd7\x5f\x54\x7b\x09\x0f\x0a\x58\xe6\xe8\xe6\xad\xe6\xdf\x7e\xb7\x93\xb4\xae\x9f\xaf\x98\x02\x6b\x9f\x5d\x51\x2b\xfa\x82\x97\x62\xcb\xf8\xb5\x4e\x28\xf7\x2a\xfc\xac\x01\xff\x64\xfc\xfa\x2d\xfd\x00\x8d\xad\x64\x71\x7d\x1d\x7c\x6f\xd8\xf5\xa6\x32\x1e\x99\xe9\xed\x59\x29\xf0\x7b\x7a\xf7\x86\xfe\xd3\xb8\xe3\xae\x77\xb4\x64\x45\xf5\x6c\x53\xc8\x1a\x52\x0e\xd6\x29\x03\xe0\x46\x4e\x70\x59\x81\x33\xb0\x34\x2d\x2e\x66\xb3\x34\x3d\x41\x1f\xec\xfd\x6a\x9b\x35\x93\xb4\xa6\x2a\x03\x72\x0c\x3f\x99\xc6\x8f\x8a\xb3\x90\xb1\x35\x06\x3f\xb3\xcc\xb9\xa4\xa3\x12\x87\xe4\xe3\xbf\xa9\x8c\xe2\x4a\x1f\xaf\x4e\x99\xd5\x55\x65\xe5\x55\x76\x60\x73\x28\xda\x25\x37\x87\x4a\xc0\xa5\x70\xa4\xe6\x5e\x9a\x3b\xc2\xd6\x99\x4c\xd3\xe1\xda\x7c\xa6\xe9\xb0\x96\x99\x1f\x0f\x94\xff\x81\xb9\x0b\xc2\x89\xf1\xb5\xfc\xa3\x90\xab\xa7\x2a\x93\x68\xf0\x03\xcd\x20\xb0\x17\xe6\x93\x82\x97\x1b\x21\x31\x9f\x6c\x68\xb1\x42\x87\xc3\x01\xa1\x3c\x1c\x83\xed\xbf\x69\xa0\xbd\x03\x1a\xdc\x36\x4d\x67\x2a\xa5\x09\xa0\xb9\xa5\x7c\xdf\xa1\x97\x9f\x99\xe1\x39\x17\xce\x12\x73\x72\x4f\xf9\x2a\x9f\x06\xc1\x97\x58\x06\x9c\xa0\x52\xb1\x1b\xfa\x56\xec\xcb\x0d\xdc\xd9\x13\x9b\x14\x15\x04\xa6\xd7\x01\xe1\x19\xfd\x0c\xe1\x8c\x93\x28\x13\x4d\x28\x5f\x91\x91\x3e\x33\x5f\x82\xd6\xa1\xef\xb0\xf6\xf0\xc8\x00\x33\x63\x6c\xd4\x0d\xf9\x61\x3d\xef\x1b\x1f\xa5\xc0\x5b\x04\xb7\x6e\xfa\x7f\xef\x8d\xe0\x91\x1c\xf1\x47\xfc\xf2\x8f\xd3\xe9\xa1\xb3\x24\x4a\x0f\xc1\xba\x6f\x6b\xc7\xcf\x82\x2d\x65\x7a\xd3\x3a\x88\xca\x6c\x48\x74\x07\xfb\x72\x43\x9d\x50\xbe\x8d\x57\xe2\xce\x9c\xcd\x5f\x4c\x97\xad\x06\xb4\x2c\x56\x6c\x5f\xff\x74\x41\x66\x9a\x72\x36\x5f\x3f\x5f\x90\xd9\x21\x63\x08\xdd\x47\x74\xb3\x74\x52\x44\xbf\x34\x83\x78\x51\xad\xe7\x1d\x81\xc1\x94\x07\xae\xb0\xa4\x37\xb9\x18\x73\xbd\xa2\x17\xe4\xb3\xe9\x74\xce\xcd\x5d\xc3\x33\x02\x4e\x53\xc2\x01\x03\x13\x2a\x68\xcf\xb8\x33\x61\xc1\xb0\x27\xbb\xe2\x9a\xfe\x84\xe3\x52\x4a\xec\x8e\x0b\xfd\x6c\x38\x62\x7d\x6b\xab\x07\x97\xe0\x93\x47\xe3\x68\x14\x30\x19\x62\x98\x2b\xbd\x0d\x02\x97\xb2\xc7\x8b\x63\xd4\x0c\x38\x44\x32\x97\x4d\xd3\x7c\x69\x6a\xa2\x87\x1a\xdb\x98\x34\x1d\x72\xd3\x4f\x9a\xba\xb5\x1d\xf3\x09\x2c\xe7\xc5\x67\xd3\xa9\xa5\x2f\xc0\xf7\x41\x29\x84\x5c\xd5\x1a\x6c\xc5\xe3\xc4\x89\x9e\x77\x82\x06\x82\x0c\x39\xc8\x1a\x9a\xa6\xce\x38\x36\xbf\xd1\x5c\xb7\xfb\x1b\xcd\x0a\x5c\xa0\xdc\x16\x38\x2a\x65\x8b\x46\x77\xbe\x40\xb9\xad\xba\xa1\x59\x01\x6f\x0d\x9e\x22\xfc\xad\x83\x03\x3e\x75\x34\xc3\x53\x04\xf6\x03\x35\x55\x86\x37\xa0\x97\x43\x38\x38\x21\x0c\x9c\xc0\xd4\xbf\x29\x3f\xb0\x4c\xa2\x03\xcb\x4e\xae\xac\xf1\x56\x9a\x60\x76\x94\xed\xdc\x80\xc6\xdb\xe8\xf2\x23\x7b\x9c\x34\xcd\xb6\x00\x4c\xda\x6c\x1f\x8f\x13\xe1\x9b\xde\x2c\x08\x8d\x32\x9c\x22\xfc\x13\x84\xf7\x71\xbd\x59\xff\x2c\x7d\x30\xfb\x76\x43\x69\xd5\x81\x61\xbf\x7a\x18\xd6\xad\xf2\xe5\xeb\x97\x2f\x75\xad\x37\x47\xd3\xe8\xa9\x66\x9f\xf0\x53\x93\x76\x2f\xbc\x9f\x14\xe9\xa6\x99\xa0\x58\xc6\x47\xaa\x7e\x23\x9d\x04\xbb\xd6\x20\x55\x51\xd9\x0f\xb5\xff\x09\x50\x1b\xde\xf0\xfe\x02\x59\x9f\xd9\x5b\xf0\xca\x0c\xa5\x63\x61\x99\xfb\xd0\xd1\x5a\x70\x0e\x7e\xbf\x92\xc5\x35\xa8\x2f\xa0\x81\xb4\x42\x7e\x7d\x48\xdc\x93\xaa\x07\xfc\x6c\x2f\x6b\x21\x9b\x26\xeb\x4b\x26\xcf\x84\xd1\x7c\x30\xd8\x59\x12\x20\x37\x25\x14\xa8\x43\x7c\x47\xd7\xb3\xc9\x49\xd8\x0d\xa0\x74\xbb\xa2\x04\xdb\x1b\x2a\xd5\x17\xe0\xdb\xb3\xb7\xc3\xa0\x96\x69\xe9\x4b\x76\x83\xd0\xe0\x37\xd1\x5f\xda\x84\x11\x50\x08\xc3\x82\xa2\x03\x36\x50\x32\x5c\xd2\x63\x45\x1c\x4d\x23\x0d\xa9\xd5\x4c\x0f\xf1\x9a\xa6\xf1\xd0\x77\xbc\x92\x17\xb3\xe9\xd4\xe3\xc1\xc0\xac\x82\x4e\x40\xd4\xef\xb6\xa9\xfb\xbc\x3b\xb6\xe2\x3a\x53\x93\x55\xa1\x8a\xb7\x60\xf2\xa5\x0f\x0b\x55\x5f\x16\xaa\xc8\x12\xdd\x4f\x82\x81\x37\xd7\xde\x63\x73\x7a\xc2\xf2\x74\xbd\xa6\xa5\x7a\x5a\x55\xe2\x96\xae\x48\x52\x8a\xdd\xdd\x4b\x80\xad\x3d\xed\xca\xe2\xfa\xc5\xb6\xb8\xa6\xfa\xe5\x72\x47\x45\xef\x1b\xdb\x5e\xdb\x7d\x33\x9b\xe7\xad\x6d\xce\xc0\xba\xe6\xfc\x0c\x4c\x0c\xcf\xa6\xe7\x67\x4a\xec\xf4\xdf\x04\x0d\xe4\xa4\x96\x25\x49\x74\x1f\x39\xd3\x8d\x3e\xbe\x66\xeb\xf3\xab\xa2\xa6\x7f\xfa\x23\xfe\x7e\x5a\x7d\xfd\xfa\xcb\x6a\xf3\xf4\x6f\x4f\xbf\x78\xaa\xff\x3d\xfb\xe6\xf3\x2f\x9e\x3e\xff\xeb\xd3\xa7\xcf\x9f\x7e\x0b\x09\x3a\xfd\xf9\xd3\xa7\x4f\x5f\x3c\x7b\xfb\xf4\xf9\xd3\xd7\xb7\x84\x24\x58\xd3\x27\xd2\x98\xd6\x11\x69\x8d\xf6\xc8\x2c\xd8\x68\x77\xa1\x42\xb1\x93\x44\x58\x4e\x7e\xd5\xcf\x8f\xb4\xa2\x61\x80\x28\x0f\xcc\x3e\x93\x78\xaa\x81\x67\x99\xa6\x27\xbd\x7e\x03\x93\xd7\x00\x00\xbc\x92\x62\x97\x03\x72\xb7\x91\x08\x03\x0b\xb9\xff\x2a\xee\x24\x08\xc1\x1c\x06\x6b\xf1\xd0\x6b\xaa\xbe\x62\xb4\x5a\x65\x48\xa3\x99\x7b\x9c\xbc\xa7\x77\xfb\x5d\x07\xda\xbc\x97\x56\x2d\xa5\x05\x39\xa6\x64\x80\x85\x3e\x95\x61\x06\x60\xe9\x36\xe7\xbb\x36\xc7\xea\xb6\xbd\x16\xd9\xf7\x52\x43\x4a\x9b\x0c\x12\x2d\x9d\xfa\x16\x52\x0f\x96\x8e\x88\xd9\xeb\x3f\x38\x17\x96\x7a\xa0\x86\xcd\x81\xbd\xf7\xe8\x10\xdc\x19\xbc\xcb\x48\x0e\x4f\x20\x7a\x46\xa2\x89\xbf\x10\x59\x01\x82\x06\xb8\x22\x76\x66\xae\x69\x33\xa8\xb0\xd6\x17\x7a\x80\x50\xec\x07\xe1\x44\x1f\xf4\xa0\x1f\x29\x15\x52\x3e\xe5\x5e\xbe\xde\x4d\xd6\x42\x96\xce\xa2\x6a\x38\xc5\xb7\xcc\xe8\xba\xc9\x23\x3a\xaa\x69\xf6\x93\x4d\x51\x7f\x65\x1e\xbc\x79\x30\x62\xb3\x4c\xa6\xe5\x27\x53\x94\xbf\x95\xb6\x9b\x5f\x24\xfa\x45\x76\x75\x55\x2b\x94\xa6\xbf\xc8\x45\x65\x28\x47\xac\x16\xd5\x12\x2b\x8e\x06\x3f\x7a\x1a\x70\xcd\x38\xab\x37\x2f\x38\x03\x09\x48\xfb\x65\x0a\x78\x7a\x66\x45\xa6\xe7\xab\x8b\x82\x3b\xc5\xcd\xd1\x68\x85\x0a\xbe\x58\x59\x92\x74\xf0\x8d\x9b\x6d\xad\x9b\x89\x09\xcb\x44\x13\xd6\x5b\xf6\x3b\xad\xe8\xb5\x15\xf3\x27\x84\x1c\xc5\x20\x62\x50\x4d\xc3\x44\xe0\x48\x7f\x4f\xf9\x8a\x4a\x43\x99\xfa\x2c\xe7\xdd\x3f\xcc\x27\x36\xce\x56\x27\x5a\x66\x9f\xe4\x07\x8e\x37\xe1\x98\xd9\x07\xee\xaa\x90\x5f\x31\xfd\xb2\x3e\xf0\x16\xf8\x92\xe3\x35\x14\x4d\xd0\x71\xf5\x8e\x6a\x42\xb9\x1d\x73\xa1\xc6\xa5\xe3\xde\x3b\xed\x04\x36\xb9\xde\x2b\x45\x3f\xde\xa7\x29\x16\x76\x18\x56\xfc\xe4\xde\xec\xa2\x3d\xf4\xd0\x89\x95\x29\x5a\x3b\x78\x7d\x5c\xbe\x0b\x60\x81\xef\xcb\x6e\xe8\xf9\xd9\xef\x63\xd0\x73\xcc\xcf\x66\xd0\x86\x7f\xd4\x3e\xfe\xb2\x42\xf9\x2d\x2d\xea\xbd\xa4\x0f\x94\xb6\x25\xfc\x64\x5e\xfe\xcb\x35\xe0\x69\x6e\xcb\x2f\x7c\xaf\x71\x8b\x9d\x15\x08\x27\xd3\xae\xe3\xf2\x81\xa5\x10\x7b\xa5\x4b\xe5\x67\x10\x39\x11\x66\xa7\x11\xa0\xa0\xe7\x70\x0c\x7e\x64\xcb\x68\xf0\x3a\xb9\x4e\xd0\xe9\x7e\xcc\x56\xb1\xdf\xa3\x86\x6d\x57\x71\x53\x50\xa8\x2d\x0e\xd6\xe0\x06\xbe\x31\xfb\x4c\x7d\xa5\x61\x51\xf7\x10\x76\x3b\x76\x26\xaa\xe7\x67\x36\x44\xd5\x59\x32\x12\x62\x94\xec\x3e\x9c\x9f\x19\xcf\x87\x67\xb3\xdd\x87\xf3\xe0\x88\xd6\x1f\x3d\xd6\xb5\xdf\x9c\xaf\xe1\xdb\x0d\xcb\x61\xb9\xd1\xd4\x60\xf4\x9d\x31\xb7\x7d\x2d\x7b\x6e\x6a\x70\x3f\x8f\xae\x8a\x2a\xae\x20\xfa\x53\x82\x93\xb1\x39\xb3\xf6\x7d\x8e\xfb\x8c\x2f\x77\xe7\xf6\x05\xad\x47\xdd\x27\xc8\xb0\x55\xfe\x0c\xf0\xca\x0e\xd0\xc2\xab\xdf\xa1\x57\x32\x9e\x45\x43\x33\x61\x4c\x8c\x6d\x31\x44\x44\x23\x53\x84\xeb\xa6\x91\xe0\x90\x28\x0b\x8a\x02\x22\xe7\x95\xfa\xe1\x15\x0b\x31\x8a\x79\xf4\x95\xf9\x59\xa1\x9c\x06\x1f\x7a\xba\x37\x8c\xde\x7e\x25\xc5\x96\x98\x9f\x6f\x05\xd1\x30\x5f\xd6\x0a\xb3\x89\xa4\xc6\x2b\xc6\xdf\xdb\x32\x61\x52\x54\x56\x57\x26\x8b\x25\xd4\xd2\x60\xd8\x14\x71\x3b\x49\x3f\x28\x2a\x79\x51\xd9\xcb\xb5\x72\xe9\xba\x96\x71\x3f\x4e\xa6\xfa\x08\x14\xb5\xd2\xaf\x84\x21\xb7\x48\x9b\x60\x4e\xeb\x74\xc0\xac\x68\xee\x5b\xc6\xa9\x61\x1d\xd7\xae\x29\x0e\xf7\xe1\x8b\xc2\x9e\x6c\x36\xb9\x2a\xa4\x6f\xe7\xca\x25\x4f\x43\x50\x5d\x3f\x73\x1e\x95\x66\xf6\xfc\xbd\xda\x6f\x5d\x75\xfb\xf9\xc2\x7b\x7c\x6e\xd3\x80\xd3\xe7\xfa\x2d\x2a\x76\xcd\x7f\x64\xab\x6b\xaa\x6a\xd3\x50\x59\x94\x1b\xba\xd2\x85\x5c\x3d\x93\xa2\x91\x61\x3f\x22\x93\xf4\x9d\xd9\xeb\x6f\x5c\x63\xdb\xe2\x83\x9e\x5a\xe7\xf3\x5b\xe3\x94\x6c\xda\xa6\x18\x4f\x08\x76\xe0\x40\x30\x7e\xf9\x13\x71\xbf\x7e\x76\xbf\xde\x68\xf2\xe0\xa7\xe8\xeb\x67\x7f\xb7\x36\x6c\xad\x4c\xfd\x9a\x56\x5f\x09\xf9\xcc\x30\xd0\x5e\x52\xbe\xf7\x53\xeb\xb0\xb9\x30\x9f\x30\x8d\x08\x30\xd4\x09\x21\x0c\xf4\x3b\xf0\xb5\xc9\x1b\x8d\x2b\xbe\x14\x2b\x4d\xf0\x78\xb3\x5b\x9f\x6d\xb4\x0a\x11\x7e\x1f\x45\xb5\x78\xdf\xb6\xc1\x8e\xb4\xeb\x2d\xe9\xf2\x74\xad\xa8\x84\x63\xde\x7e\x1a\x85\x33\xef\xf0\xc0\xe6\x82\x9f\x06\xc8\x31\x3e\x08\x74\xb3\x6b\x29\xb8\x62\x54\x12\xfb\x09\x87\x56\x68\xb4\x53\xe3\x74\xd8\x91\x47\x96\xdf\x3c\x1a\x61\x6a\xf0\xb3\x34\xa5\x32\x1a\xea\x77\x2d\xe7\xf5\x4b\xd5\x52\x43\xc8\xc4\x41\xb6\x02\xfc\x10\xd9\xc1\x9c\xc8\x34\xf5\x1e\x0a\x3f\x0f\x28\x81\x0e\x8f\x01\x0e\xcb\xe3\x57\x61\xab\xe3\xcf\x8e\xa2\xdf\x58\xfe\xdd\x37\xdc\x32\x4d\x98\x27\xda\xa6\x96\xa7\x06\xce\x46\xc0\xb5\x8b\x3e\x92\xc8\xe1\x6b\x05\x99\x9e\x17\x17\x3e\xdd\xa1\x6d\xc5\x68\x84\x7c\xe2\xa2\x58\x5a\xb8\x9a\xa6\x99\x18\x91\x9e\x0c\x3f\x20\x39\x17\x23\xe3\x70\xb1\xa4\xac\xca\x18\xa0\x60\xb6\xd5\xc7\x1c\x35\xcd\x0c\x3d\x52\xb9\x18\xa9\x43\x14\xec\x37\xe0\x5b\x8b\x12\x4b\xa2\x17\x74\xa0\x7a\xf6\xdd\x14\x93\x90\x3d\xf4\x41\x3c\xd3\xf4\x03\x73\x04\x46\x27\xb6\xeb\x31\x89\xe5\x25\x15\xe4\x81\xbc\x36\xce\xe3\xbb\xfa\x51\xb9\x1d\xd7\xe3\x77\x6f\x46\x8f\xaf\x71\x92\xa0\x51\xbb\xa5\x6a\x43\xc3\xa2\xd9\xff\xda\xbc\xab\xd1\xbb\xfa\x91\x2e\x78\x06\xb5\x12\x84\xdf\xa8\xe8\xac\x3c\xd3\xa3\x7a\x99\x51\x84\xe1\x10\xe1\x13\x54\xc6\x3f\xc1\x26\x44\xa3\xee\x51\xb0\xd0\x23\x06\xbf\x7b\x41\xa2\xa3\x66\xd3\x06\x2f\x85\x26\xd6\xbd\x91\x14\x44\xfe\x92\x2d\x6a\xee\x31\x5f\x69\x22\x7f\xc5\x5a\x8f\x1f\x7b\x9f\xcf\x92\x11\x43\x68\xd0\x45\x4c\x4c\x5c\xdf\x3a\x21\x84\xc1\xd5\x0b\x19\x20\xf6\x21\x17\x60\x70\x6f\x82\x62\x69\x50\xd8\x29\xe5\xc0\xad\x3e\x2c\x23\x88\x2c\x73\x50\xb6\xbc\x17\x65\xcd\x93\x24\x37\xd1\xa7\xf1\x6f\xd1\xf2\xfe\xf6\xc0\x1a\x85\x61\x43\x07\xc1\x8d\xd3\xb8\x83\xed\x20\x08\xab\xae\xa0\xef\x4e\x0c\x51\x13\xff\xc0\x9d\xbb\xf6\x92\x79\xfb\x35\xd8\x87\xe0\xd0\x63\x4e\xe8\xb9\x22\xaf\x78\xc6\xd1\x39\xba\xe7\x24\x63\xf0\x3e\xf2\x55\x36\xc5\xc3\x29\x42\x1a\x0a\x6d\x0d\xdb\x53\xea\xbb\x05\x9f\xe5\x66\xcc\x26\x4a\x4c\xca\xcd\x41\xb7\x6c\xda\xf8\xd6\xb6\xe1\xcc\x16\xda\x46\x06\x72\x4c\x78\xd8\xeb\xd8\xb7\xa3\x1b\xcd\x38\x30\xb0\xa1\x13\xd4\x29\x66\x3a\x71\xb7\x37\x8a\x50\x7a\xb4\x8e\xd8\x42\xca\x81\xf2\x4f\xd2\x73\x96\x49\x2c\x0d\xe8\xd4\x64\x62\xfc\x36\xbd\xc8\x7c\x4a\x90\xe9\x9f\xa9\x29\x96\x27\xae\xb8\x24\x2f\x20\xc6\xd7\x65\xa7\x45\x60\x9e\xc7\x7d\xc8\xb6\x61\x42\x63\x00\xf0\xaa\x9d\xc3\xb5\xc8\xa8\xbf\x2a\xa7\x8e\x2c\x3a\x1f\xcf\x40\x2d\x93\xba\x73\xa8\x93\xe7\xbe\x22\xf1\xbf\x7c\x8c\x92\x53\x4d\x2d\x51\xae\x2e\xc7\xb3\x34\x1d\x46\x6d\xc1\x8d\x38\x6e\xcd\x06\x3f\xd1\x4f\x8e\x4f\xda\x41\x9a\xc2\xb3\x70\x46\xdf\xf6\xef\x8a\xea\x3b\xe1\x98\x07\xee\xbf\xcc\xbb\xe0\xdc\x45\x55\xe1\x73\xe2\x83\xeb\x86\x4c\xed\xfc\x04\xb3\x1b\x6b\xdc\xcc\x17\x69\xc1\x66\x50\xc2\xd4\xfb\xd1\x06\x89\xee\x30\xbe\xcd\xc8\x82\xa7\xed\xb8\x23\x53\x44\xf7\xe3\x0a\xc4\xdd\x98\xfc\xab\x42\xea\x5b\x9a\xb7\x40\x0f\x18\x7a\x06\xc2\xcc\x65\x3e\xc5\x2b\x51\xda\x81\x72\x3b\x26\xf7\x39\x5a\x6b\x90\x3c\x52\x2d\x32\x88\x63\x3c\x31\x57\x1d\xc4\x11\x9b\xf5\x35\x99\x61\x60\xe1\xaf\x9c\x8e\x9d\xe1\xde\x6c\xbd\x84\x1e\xbe\x6f\xa8\x54\x7d\xa4\x5d\x40\x43\x6d\x19\x1f\xb7\x14\x92\x26\xea\xc2\x23\x75\xe3\xb1\xd2\xc4\x8b\xf3\x37\x42\xb2\xdf\x3f\xd2\xaa\xa3\xc2\x66\xd3\xe9\x1f\xce\xcf\x74\x1f\x3e\xe5\xb8\x93\x4d\xd0\xc9\x80\x66\x1c\x61\x9a\x19\x89\x08\xef\x97\x09\xf0\x8e\xfc\x43\x65\xbc\x95\x0e\xe0\x44\xcf\x9a\x95\x45\x95\x38\xae\x18\xeb\x6f\x86\xc5\xf1\xb6\x95\xa7\x64\x40\x3a\x92\xc0\x3c\x05\x57\xae\x21\xb3\xc2\x1b\x5a\xbe\xa7\xab\x5f\xa8\x14\x06\x8d\x1e\xce\x5a\x72\xaa\x5d\x1e\x07\xcd\x19\xb7\xa8\xb5\xdf\x8e\x36\xc7\xd4\x4f\x66\x7f\x86\x17\xc6\xef\xe8\xef\x19\xba\xef\x04\xe0\xec\x22\x67\x9a\x48\x88\xde\xb6\x36\xd9\x68\x02\x67\xe8\x08\xa1\x83\xcc\x62\xb5\x7a\xa6\x31\x8c\x34\xfd\x36\x64\xe6\x3b\x01\xcc\x83\x75\x50\x7f\x9b\x56\x15\xc4\x27\x68\x24\xbb\x5a\xb4\xb7\xc2\x67\x58\xcd\x90\x88\x37\x7b\x8c\x00\x45\xc2\x09\xd5\xd7\xa3\xa1\x6e\x8d\xe8\x08\xf7\xab\xa3\x7b\xf4\x7c\x62\xd5\x2f\x4e\x6a\x36\xd0\x8e\x66\x83\x95\xdc\x1d\x10\x9e\xda\x98\x7b\x9f\xc4\xc3\x3a\x20\xdc\x75\x2a\x10\x9c\x1e\x42\xe4\xdc\x88\xe1\x50\xbe\x75\xb2\x2f\x4c\x3f\xba\x47\x5f\xfd\xeb\x7b\x14\x46\x3e\x35\x86\x24\x4d\x93\x29\xa2\xc1\x76\x1b\x76\xd9\x35\xe0\xc8\x4f\xf0\x05\x1b\x24\x9a\x23\x3b\xf8\xc6\x08\xba\x1c\x66\xc1\xc8\xf4\x9c\x5d\xfc\x31\x4d\xe5\xb0\xa7\x8d\xa6\xe1\xc3\xbe\x56\xce\xd9\x68\x84\x7a\x6b\x80\x7f\xa4\x1e\xd2\x24\x4d\x7f\xd1\x68\xa9\xee\x1d\x86\x8d\x3f\x7d\xc8\x51\xfc\xd0\xd0\x53\xa5\x7b\xa9\x38\x91\xe1\xb2\x59\x5d\x68\x05\x22\x97\x00\x09\x8b\x78\x1d\x99\x6c\xe9\x74\xe7\xb9\x11\x30\x33\xdc\x5b\xc9\x84\x9b\xb7\xb5\xec\xe5\xf7\x2e\x20\x5d\xbd\x90\x4b\xe4\x43\xb7\xca\x15\x95\xb6\xb6\xab\xa0\xcb\x9f\xd5\xa2\x62\xab\x33\x70\x5c\x68\x44\x2a\x09\xb6\xe3\x48\x53\x57\x70\x9e\xc9\x63\x5e\x6f\x84\xb1\x26\x57\x95\x28\xdf\x27\xf8\x54\xb9\x4d\x3c\x54\x3f\xc3\xde\xc2\xb7\xe1\x6a\x18\x14\x39\xff\xe8\x00\x12\xec\x1a\x0f\xb7\xbe\x14\x37\x54\x9a\x57\xf3\x15\xfd\xa0\xde\x8a\x37\xae\x95\xb0\x54\xf8\xb6\x66\xb2\xc3\x65\x3e\x31\xcf\x9e\x42\x27\x26\xd9\x53\xd2\xcc\xd0\xe1\x35\xc6\x49\xa5\x9b\xe7\x43\xbd\x27\x47\x11\x68\x9d\xb6\x84\x74\x2a\x11\xe0\xc8\xb7\x0d\x17\xa6\x91\x50\x25\x76\xa0\xed\x7d\x24\xbf\x1f\xf0\xc0\x6b\x6a\xc6\xc7\x7b\xe5\x6f\x32\x0b\x5b\xb4\xa7\xc0\xfd\xc8\xf9\x88\xf6\x23\x47\x82\xbc\x67\xc6\x29\x46\x61\x7e\x31\xa7\x30\x25\x27\x94\xd7\x7b\x49\x5d\x30\x35\xf7\x1d\xd0\x07\xfb\x36\xd1\x62\xf3\x83\xfa\x42\xcc\x33\x41\x6a\xd7\xdc\x77\x2c\x7b\xae\xff\xd6\x08\x9d\x18\x02\x72\x41\xce\x18\xcf\xf6\x58\x01\x33\x4d\x23\xcf\x19\x42\x97\xa4\x00\x77\xe1\x51\x4b\x7b\x84\xc6\x27\x5a\xc2\x05\xd9\x3b\x45\xe7\x7b\x3d\xcc\x5c\x60\x25\xda\x18\x6a\x05\x16\xa3\x59\x18\x21\xfb\x9f\xa7\xd0\x57\x8d\xed\x19\x89\x71\xc8\x38\x6b\x9a\x16\xb1\x05\x0a\x03\x08\xd3\x13\xe7\xb2\xf5\x21\xc2\xc9\xcf\x99\x42\xe3\x5e\xa5\x8b\x91\xc1\x83\x03\x3c\x83\x9d\xc0\x9e\x05\xe1\xe6\x7c\x1a\x16\x89\x8c\x58\x23\xeb\x6c\x28\x81\xfb\x01\x76\xa5\xfa\x1d\xeb\x19\x51\x9a\x42\x99\x6b\xfb\x91\x05\x5f\x61\x90\x69\xe1\xbc\xcc\x41\x3e\xcc\xbf\xb8\x32\x66\xe7\x2d\x9f\x66\x4f\xa6\xe7\xfb\x0b\xcf\x9f\xd9\x8f\x46\xa8\x5e\xec\x97\x51\x3b\x87\x13\xa3\xc8\x54\x87\xcd\x0c\xc5\xf9\x88\x59\xe2\x3a\x0c\xf2\x6b\x3d\x74\xc7\x4f\x83\x25\x5e\x8e\x15\xbe\x0c\xb3\xe6\xeb\x80\xa9\x67\x59\xbf\x23\x05\xb0\x79\x3c\x43\xe1\x4b\x01\x27\xdd\x4e\x01\x54\x93\x02\xc6\xa9\x23\x6b\xb9\x13\xbc\xf4\xf3\x22\x5a\x6c\x57\xa2\x63\xa1\x88\xa1\xbe\xce\x8e\x25\x64\xb4\x52\x09\x42\x10\x48\xab\x3d\x48\xd1\x76\x17\x84\x85\xdf\x63\x31\xf0\x66\x65\x2d\xe7\x22\x02\x4e\x00\x50\x8f\xf9\xc1\xfe\xf4\x0b\x1c\x55\x0d\x1b\x2f\xd0\x68\xd6\x56\x76\x6f\xdb\x51\x5b\xa3\x02\xf3\x0e\x77\xf9\xb8\xd0\xdc\xad\x68\x3e\x9e\xe1\x93\x83\x8d\x3b\x33\x07\xfb\x37\xfd\xce\x0f\xa7\x07\xb7\xad\x51\x3c\xe2\xc0\x2d\xa3\x75\xd2\x11\x12\xb2\x5f\x09\xb9\x2d\x74\x27\x99\xbe\x51\xb0\xa4\x2d\xf3\x1d\xc5\xa1\x89\xc3\x88\xf8\xee\x42\x5e\x53\x05\x61\x94\x19\xbf\x7e\x06\x10\xe5\x7b\x5a\xaa\x0c\x39\xc5\x46\xf3\xae\x3f\x54\xa8\xed\xe1\xaf\x31\x98\x6f\x0f\x9b\x41\xf9\xad\xb7\x7f\x62\x4d\xc5\xac\x4f\x09\xf2\xf7\x8c\x1b\x26\xb0\x37\xde\xa2\x2b\xa6\x84\x7c\x51\x7f\x03\x57\x9a\x0c\xb9\x87\x79\xe1\x31\x81\xa2\x36\xc3\x63\x17\xbd\x90\x3e\x2c\xe9\x76\xb8\x8f\x90\x35\x2a\xe5\xd5\xea\x4b\x33\x6c\x53\x74\x05\x1a\xf4\x90\x05\xba\x00\x44\x3a\x53\xa7\x6d\x4d\xc0\x93\xae\x1d\xb4\x33\x26\x6a\xd7\xe3\xdf\x4e\xa1\x5e\x86\x75\x03\x40\x36\x9e\xab\xe3\x62\x49\xe0\x47\x0e\x67\xa0\x5b\xa5\x4c\xc7\x69\xaa\xdc\x9a\xc1\x43\x74\x49\xa4\x17\x0e\x85\x79\x4a\x5c\xd8\x9c\xb7\xc2\xeb\xe2\xcb\x63\xb9\x4c\xd3\xf4\x24\x5e\xfa\xaa\x48\xbf\x83\x91\xa8\xc8\x66\xa5\xe9\x94\x10\xb0\xed\x6e\xa1\xd0\x8f\x60\xec\x90\x99\x61\xab\x60\x6d\xdc\x03\xcd\x2d\x30\xe2\x70\xa0\x9c\x3b\x74\x7d\x37\xe3\x49\x8d\x5b\x70\xe7\xce\xcb\x4b\xe0\x03\x62\xee\x38\x5b\x45\x1b\xe2\x8d\xe1\x70\xda\xa3\x53\x75\x35\x52\xeb\x56\xea\x42\xa4\xa9\x18\x07\xdf\x4f\xa6\xf0\xd0\xfa\xf1\xd8\x7e\x70\x5b\x44\x23\xde\x76\x51\x2e\x0b\xbd\x2a\xe6\xf7\xb8\x30\x75\xa3\xf1\xf8\xd5\x43\xf8\x35\xb4\xfb\x85\x93\x03\x08\x3d\xf2\x1f\xdc\x57\x81\x5c\x1c\x5e\x31\x0c\xf6\xb1\x69\x8a\xa1\xdf\x01\xbd\x41\xb1\xc0\x6d\xd8\xea\xfb\xb9\x40\xa9\x32\x16\xc1\x05\x25\xe0\xfb\x3c\xeb\x37\x03\x6e\xef\xe6\x94\x10\x0e\x1d\x5a\xd8\xd5\x34\xea\xd2\xa6\xc0\x10\x2e\xec\x87\x1e\xde\x3c\x33\xbf\xc9\x2f\xca\x36\x87\xdb\x4c\xa2\x50\x9e\xb5\x9f\x97\x6a\x1e\x17\x6e\xb3\x7c\x5c\x61\x93\x84\xf2\x36\xeb\x42\x81\x47\x34\xa8\x67\x87\x65\x38\x72\xdc\x50\x8b\x28\xee\x11\xbb\x81\x5e\xc8\x79\x5c\xcb\xf6\x00\x7d\xbb\x42\x58\x22\xd7\xd7\x5b\x71\x29\x4f\xf4\x34\xc5\xd0\x97\x44\x08\xa1\x81\x2b\x4d\x24\x68\x6a\x81\x7b\x17\x19\x4a\x45\x0d\x6e\x66\xdf\xdf\xf0\xc8\xb4\x44\x19\xc8\xfa\x9d\x1a\x0c\xa8\x90\xb5\xf5\x01\xfc\xdb\xd8\x44\x70\xa7\xe0\xc6\xef\xe1\x8e\x55\x10\xe7\xd0\xde\xfd\x53\x77\xf1\x3f\x7e\xbf\x63\x1c\xa2\x24\x5f\x8a\xd6\x09\x6c\x75\xf9\x47\x50\x93\x8b\x75\x78\x3c\x6a\x6f\x35\x26\x3e\x72\xb4\x4c\x28\x8a\x63\xe4\x05\x22\xab\xd8\x96\x71\x41\x44\x80\x07\xb4\x0a\xff\xfb\xd0\x73\x07\xa7\x1f\xd4\x1b\x76\x55\x31\x7e\xed\x46\x58\xa7\xe9\x8d\x46\x3f\x03\xf5\x4c\x4d\x10\xfe\xb8\xa1\xb4\x32\xf6\x8d\x84\xa8\x79\x57\x58\x61\x46\x9e\xab\x93\x5e\x34\x10\x96\x07\x6f\x10\x62\xcf\x05\x2e\x83\x2b\x80\xd7\x64\x7a\xbe\xbe\xa8\x1c\xfa\xb7\x76\xee\xf0\x56\xa4\x5a\xac\x21\x18\xee\xca\xe1\xa2\xe7\x2e\xbc\xde\x0a\x0c\x7c\xd3\xd4\xfc\x0d\x3a\x27\x44\x18\x64\xf9\xbc\x18\x12\x93\x7b\x8e\x0a\xb2\xcf\x0a\x03\x1e\x36\x84\x39\xca\x46\xa5\xa9\xba\x20\xa5\x6e\xa4\x5d\xcb\xc1\x6a\x52\x02\x0b\x1f\xe2\x28\x89\xcc\x7f\xe2\xc4\xa0\x5b\x09\x02\xd6\x77\xb6\x21\xc3\x19\xc2\x10\x25\x7d\x85\x4b\x7d\xb8\xf1\x26\x4d\xb3\x97\xba\x4a\xdb\x1c\xc2\xe1\x57\x84\xf6\x75\x34\x7a\xdf\xd2\x0f\x30\x81\x2c\xc4\x38\x4b\x7d\x65\x70\x61\x27\x12\xee\xda\xc1\x47\x18\xd8\x91\xaa\x1d\xc4\x40\xc4\x5c\xae\x1d\x2e\xd0\xa1\x1c\x91\x15\xbc\x12\x07\xb3\x30\x6e\x41\x0e\xe0\xf8\xe1\xe8\x44\xdb\xe7\x06\xe1\x8f\x9c\xd9\x44\x5f\xdc\xe8\x0e\x49\xbb\xbb\x69\xaa\x8f\xfe\x50\xaf\x6d\x69\x31\x0c\xc7\x4e\x2d\xbd\x02\xfb\x4b\x91\xc9\x40\x07\xd8\x7c\x87\x0a\x48\xc8\x53\xcf\x75\x4c\x62\xc7\xbc\x91\x96\x0f\x3a\xc5\x7b\x33\xde\x58\xa7\xa2\x03\xe1\x71\x07\xc0\x77\xe0\xbb\x91\x91\xff\x71\x3a\x85\x47\xea\x84\xee\xc5\x70\xda\xe2\x24\x7f\xeb\x7a\xb6\x54\xfe\xb1\xc4\x9c\x0c\xa7\xe7\x19\x3f\xcd\x8e\x52\x5d\xec\x68\x68\xd0\xa3\xa6\xc9\x62\x9a\x1e\xac\x73\xee\x95\xd8\xb5\x04\xee\x69\xa9\xc7\x78\x03\x28\x96\xa1\xfd\x0f\xa8\x7d\xd3\xc9\xdf\x03\x75\x66\x0b\x62\x11\x1e\x66\x5d\x3c\xa8\x85\x02\xa7\xf0\xa1\xb8\x84\x06\x7e\x28\x4d\x0d\x7a\x76\xce\xf5\xd5\xb8\xff\x45\xc3\x5e\x83\xab\x7c\xab\x7f\x52\x18\xd3\x0f\x60\x83\x83\xff\x02\x7f\x0e\x9a\x92\xba\xe6\x45\x95\x51\xec\x1d\x84\x47\xbc\x4b\xff\x30\x05\x1d\x76\x75\x74\x42\xa0\x65\xdf\x96\x13\xa5\xf5\xf3\x9b\x85\x7d\xba\x8d\x32\x52\xbb\x04\xd3\x9e\xae\xf1\xd1\x54\xf1\xe9\xb1\xf4\xac\xdc\x89\xd2\x6f\xc5\xf1\x1a\xb6\x87\xea\xa7\x10\xd1\xe5\xf4\xd6\x50\x02\xf0\x96\xfd\x9b\x79\x4a\x61\x7d\xf1\xdf\xe0\xc3\x8a\x65\x3a\xcb\xcc\xcd\x32\x83\xa9\xb9\xd1\x69\xcd\x42\x7a\xf8\x2f\x2e\x30\x7b\xaf\xa8\xb8\x15\x2e\x4c\xbc\xac\xc9\x50\x56\x6d\x85\x1e\x4e\xa3\x02\x0b\x8a\x93\x35\x7a\xaf\x73\x58\xbe\x87\xf1\x6a\x05\x5a\xb1\xbc\xfa\x97\xd8\xaf\x6a\xcc\x70\x71\xf0\xca\xeb\x95\x63\xa3\x1d\xa0\x42\xac\xec\x9c\xbb\x77\x86\xe1\xda\xde\x59\x88\x3b\xbd\xce\x86\xb5\xe7\x7d\x18\x6b\x82\xe2\xe2\xcf\xa6\xe8\xde\x86\x99\x69\x9b\x1e\x45\x09\x96\xbb\xcd\xc8\x7e\x2c\xb1\x24\xfb\x16\x4a\x57\xae\xe6\x09\xc2\x6f\xc0\x88\x0b\x22\x38\x86\x08\x83\x07\x83\x43\x18\x80\x61\x97\x6a\xcc\x40\xd1\xe5\xe2\x49\x9a\x66\x8c\x7c\xa9\x32\x85\x10\xce\xca\xcb\xc9\x74\x3a\x6b\x9a\xf2\x62\xac\x7f\x68\xb2\xe1\x03\xcb\x4c\x45\x7d\xd7\x28\xb5\x1f\x08\xd7\x13\x49\x6b\x85\x3c\xe7\xc5\x3c\xbd\x26\x35\x7c\x7f\xa1\x8a\x4e\x5c\xac\x97\xe8\x10\x1c\x1a\x4a\x2d\x17\x85\x1e\x69\xdb\x28\x32\x3d\x57\x17\xb4\xab\x6d\x33\x1a\x29\xe4\x13\x17\xca\x29\xd5\x90\x28\xad\xf3\x88\x47\xab\xd9\x76\x0e\xf4\xcf\x89\x5d\xbf\x07\xff\xb6\x87\x88\xe3\x65\x28\x51\x60\x84\x09\xd2\xc7\x6d\x03\xf6\x97\x38\x17\x44\x84\x4f\x2b\x1e\x8d\x0a\x24\x17\x47\x1a\x27\x8b\x62\xb9\x24\xc2\x8e\x0d\xf8\x6d\x22\xe8\x62\xc4\x30\x3f\x59\x27\xa0\x89\x9d\x40\x1a\xb8\x58\xdf\x89\x3a\xff\x59\xe3\x48\xa6\xf8\x5b\xa1\x0a\x2f\x5c\xee\xe3\xdb\x99\x34\x90\x0d\xcb\x48\x6c\xcb\x71\xf8\x86\xf5\x8b\x95\x83\x6d\x04\xb4\xc5\x7a\x06\x8a\x65\x30\xca\xe1\x3b\x6e\xff\x98\xbb\x26\x7a\x09\x6d\xde\x82\x2d\x07\x89\xa2\x1f\x54\x02\xc1\xc0\x8c\x6f\xe7\xdc\x21\x48\x3a\xad\x6e\x3b\xc8\x13\x50\x3c\x82\xe4\x82\x66\xba\xa0\xd9\xf9\x04\x22\x9d\xed\xa9\x55\x54\x3f\xf8\xe6\x8d\x81\x69\xeb\x91\x83\x46\x7c\x16\x0e\x58\x9e\xd1\x43\x01\x41\x25\x24\x7c\x9a\xba\x36\x58\x2d\x81\x8e\x48\x7b\xd8\xf4\xf3\xd1\x49\x72\x5a\x4f\xd6\x43\x1a\xf4\x60\x2b\xea\x06\xe0\xb4\x46\x3e\xd4\x6c\x96\x17\xd6\xda\x32\x91\xe2\xeb\x13\xe4\xea\xb6\x53\x63\xb4\x97\xa1\x71\xa4\x3c\x3a\x68\x5d\x51\x1b\x74\x8c\x58\x30\x37\xcf\x4e\x57\x22\xd6\xe0\xde\xa9\x98\x4b\xaf\xf6\x2d\x27\x57\x7b\x56\x29\x94\x17\x56\xb3\xcc\x0f\x48\xd0\x38\x06\x1e\x2c\x8c\x57\x1c\xc3\x9c\xd8\x11\x0f\x4c\x96\xf3\xff\x0a\x7c\x58\xd8\x07\xb0\x85\xd4\x18\xc7\x83\x4b\x0a\xa5\x6c\x21\x57\xd8\x54\xc5\x7c\x72\x75\x0d\xf2\x46\x4d\x78\xdb\x9f\xe0\xae\x94\x7e\x50\x3e\xdd\x7f\xcc\x33\x5f\x88\xf8\x9a\x38\x28\x40\x82\x9a\x18\x8e\x1f\xca\x0d\xdb\x38\x9e\x1a\x91\xc1\x2a\x14\x70\xe2\x7a\x74\xf3\xa8\xeb\x62\xee\x7f\x8d\x92\xb3\x64\x64\xf9\x87\xed\x78\x93\x04\xe5\x71\x1a\x30\xa7\x74\xc7\x1d\x1f\x02\xba\xcc\x55\x51\xbe\xbf\x06\x55\x16\x38\xa0\xed\x27\x52\xf3\xf0\x33\x18\xae\xca\xb3\x28\xe7\x04\xf9\x15\x35\x16\x35\x6d\xf4\x45\x07\x8e\xa0\x0a\x90\x0d\xc0\x22\xc2\x92\x1d\xc9\x79\x7c\xd5\x14\x72\x2a\x52\xd0\xa3\x31\xc0\xd2\x5d\xc1\xe4\x35\x18\x32\x0b\x06\xed\x46\xfa\x89\x71\x81\xdc\xdc\x8d\x61\xf7\x66\x07\x55\x12\xeb\x16\x59\xd9\x32\x6e\x27\xfc\xef\x68\x2f\x7c\x6a\xb4\x1b\x3e\x75\x40\xbb\x27\x40\xe9\x82\x81\xbd\x7a\x00\x23\x81\xb1\x78\xdd\x8a\x1c\xf8\x11\x99\x6b\x73\xf5\x61\xbe\x6e\x35\xfa\xdb\xcf\x2f\xfc\x72\x3e\xdc\xc0\x17\xc1\x76\x1d\xa7\xf9\x46\x61\x2e\x26\xd7\x08\xe7\x9d\x84\x01\x24\xce\x3d\x15\x3f\x6a\x67\xd3\xee\xf7\x59\x32\x3a\xee\xc0\x44\x5f\xcd\xcd\xfa\xf6\x49\x4e\xf9\xc4\xbf\x68\x63\x3e\xe9\xbe\x67\x28\x32\x97\x48\x46\xc7\x25\x8c\xbc\x06\xb3\x8e\x96\xc6\xd1\x4c\x1c\xd4\x38\xb8\x37\x29\x18\xe9\xcb\x42\xbe\xa7\xb2\x36\x71\xc4\x7b\xf8\x24\x4d\x23\xd0\xbd\x5b\x24\xeb\x95\xd8\x6d\xd7\x47\x17\xc8\xbe\xa8\xc9\x7f\xc6\x4a\x24\xc8\x8c\x31\x56\x10\xa9\xa9\xfa\x81\xd3\x95\x09\x5d\x90\x15\x47\x8b\x51\x04\x10\xb3\xbb\x3f\x69\x9a\x15\xb1\x9f\x92\xbe\x5d\x44\xb8\x5f\xfa\x05\x8e\x64\xc4\x69\x85\x3f\x20\x9b\xda\xf2\xa4\xe8\x17\x60\x85\xac\x0b\x89\xfe\x35\x09\x56\xbb\xac\x6e\xcd\x34\x9a\x73\x7a\x48\x9d\x03\x75\xa4\x65\x1b\x48\x9a\x60\xc1\x11\xc2\xc2\xe3\xaa\x35\x99\x9e\xd7\x17\x47\xd8\x5a\x8b\xb3\xd6\x0e\xdf\x3f\xc6\xe8\xea\x25\xae\x88\xe8\x1a\x19\xee\x91\x5e\xc0\xfd\x72\x50\xa5\xe9\x89\xd5\x59\x54\xcb\xbe\x73\xf5\xc0\xe4\xf7\xdd\x59\xf2\x50\x67\xc0\x66\x27\x28\xc2\xd0\x2d\x3e\x25\xc1\x33\x83\x93\xb7\x1a\xbf\x0c\xee\xcb\x82\xfe\x56\xa4\x6c\xe1\x51\x0b\xc5\xcf\xf9\x39\x27\xac\x15\x5b\x86\xec\xc2\xee\x8e\x78\x64\x8e\xb7\xe7\x2f\x4d\x7b\x40\x1c\x47\x87\xd2\x0d\xae\x1d\x6f\x45\xbb\x4e\x2a\x1d\x8a\xe1\xdd\x6c\x00\x76\x60\xf1\x0b\x06\x48\x02\x73\xaf\x2a\x4c\xcc\x21\x00\x3e\x55\xdf\x1c\x0f\xe8\xfd\x63\xef\x0a\xf9\xdf\xc8\x20\x04\x38\x80\xf4\xb8\x74\xe8\x28\x56\x1d\x5c\xcd\x8f\x5d\xbf\x06\x6b\xf8\x30\x24\x96\xae\x39\x9c\xea\x0a\x40\x5c\xc5\x1a\xe9\x2a\xa2\xad\x34\xcd\x69\xab\x02\x75\xc5\x97\xa6\xf6\x2c\x58\x90\x35\x0d\xe3\x3b\xc2\xcb\xd3\x25\xb5\x84\x06\x61\x12\x69\xf2\x05\x68\x57\x9b\x7f\x5e\x5c\x04\x47\xb8\xf0\x24\xeb\xa2\xd0\x47\xb6\x3d\x87\x7b\x98\xd9\xb1\x84\xd9\xee\x24\x1a\xec\x27\x9b\x82\xaf\x2a\x0a\x6e\x16\xc0\xdd\x50\xdd\x34\xd5\xb1\xba\x1a\xbb\xe6\x42\xd2\xb1\x11\xd4\xb5\x46\x97\x2b\x9a\xed\x71\xd5\xf5\x45\xd0\x07\xe3\x2a\x84\x59\x9a\xee\x27\x10\x9c\x69\xde\xe1\x5d\x56\x9e\xff\xd7\x34\xd2\x00\xbe\x5c\x44\x57\xab\x42\xf8\x17\xb0\x93\x96\x74\x25\x8b\xdb\x48\xdc\xbf\x8a\x9f\x6f\x8d\x4c\x7c\x63\xd4\x7f\xd0\x7d\x26\xdb\xcb\xd0\x34\xe1\x17\x59\x2c\x11\x32\x5e\x6f\x55\x2b\x69\x0b\x69\xab\x81\x8a\x14\x0d\x3c\xac\x77\xac\x8e\x40\xe7\xa8\x69\x32\x36\x26\xc7\x4f\x00\x56\xb1\x5a\xd7\xb7\xa6\xa5\x13\x2f\xa2\x8a\x64\xdd\x46\xaf\xe1\x10\xf5\x03\x27\x3c\xa2\x35\x3e\x6f\xbb\xb0\x34\x10\x49\x3c\x0d\x84\x83\xb5\x30\xfc\xb0\xae\x75\x40\xcf\xb3\xe5\x20\xcd\x57\xad\x3f\x41\xf2\x5c\x64\xf7\x86\x6b\xd7\x1b\x21\x3e\x50\x8a\xbe\xa4\x51\x44\xde\x19\xe8\xdd\x85\x7a\xcb\xbe\x80\xe5\xf9\xcc\x40\xa6\x1b\xeb\x29\x83\x86\x85\x55\x46\x0e\xb4\x5d\xbb\xca\x59\xdd\x7c\xc3\x54\x21\x6a\x6e\x54\x5e\xf2\x64\x9a\xd8\x8d\xa5\x93\x56\xe1\x7b\x9c\xa9\x39\xcf\xa7\xd6\x0b\x1a\x54\x0f\x94\x29\x22\x7e\x55\xa0\x5d\x15\x4f\x62\xdc\x99\x04\xb3\x5c\x2b\xc0\xb1\x4f\x0e\x3b\x1c\xf1\xa9\x2e\xf5\x98\x0d\x92\x7e\xa4\x06\xdc\x3b\xfd\xb0\x80\x34\x3c\xf3\x60\xfa\xc7\x65\xe0\x2c\x6b\x9c\x1f\xde\x9d\x56\x84\x26\xec\x1a\x19\xcd\x0e\x5f\x60\x9c\xc9\x60\xb1\x4c\x43\x47\x43\x37\xe7\x35\x3a\x06\xe3\xf8\x18\x88\xee\xf2\xf4\xce\x2b\x1a\xee\x89\x5e\xf4\xfa\x58\xe1\x5b\xaf\x26\xb5\xa6\xf1\xc3\xad\xb9\x9c\xa6\x69\x36\x25\x84\xdb\x30\x06\xbf\xbb\x82\xdf\x14\xe5\xfb\xec\xa4\x3a\xf6\x14\xe1\x7b\x13\x3a\x1a\xe6\xef\xe2\x70\xc3\xc9\x39\x1c\x70\x4d\xd5\x1b\xaf\x7b\x15\x5d\x89\x70\x76\xbe\xc4\x90\xd0\x8e\x5e\x77\xeb\x70\xc6\xe9\x40\xd8\x38\x94\xdf\xe8\xfc\x28\x18\xa7\x1f\xd5\x17\x85\x0c\xda\x38\xae\x85\x82\x71\xbd\x15\xbb\xe3\x61\x99\x33\xe9\xf2\x83\x41\xc5\x19\xdd\x21\xfd\x9d\x4a\xf5\x91\x11\xe9\x06\x8e\xea\xa0\x03\x8e\x56\xfb\x38\x16\xc1\x4d\x9a\x0e\x57\xf3\x64\xf6\x04\x8e\x2b\xa8\xb0\x0f\x8e\x8e\xc7\xa6\x5f\xf5\xdd\x1e\xba\xe3\x13\xbe\x13\x8c\x2b\x6a\x7c\xe7\xd5\x47\xd5\xe2\x5c\x6b\x7b\x75\xb4\x94\xc4\x7a\xc2\xeb\x4e\xc9\xa6\x1f\xf0\xf1\x42\x74\x5c\xef\xd3\xfe\xfe\xc0\x77\x83\xd1\x07\xcf\x66\xf4\xb3\xc0\x1b\xad\xcc\x5a\x21\xf0\x29\xce\xb1\x17\x24\xda\x90\x22\x5f\x49\xb1\xfd\x4e\x77\x90\x19\x07\x59\xa0\x8e\x65\x59\xcb\x33\x34\x24\x74\x7e\x62\x18\x4e\x94\xeb\x86\x01\x2e\x3d\x0e\x18\xb4\xfe\xfb\x43\x46\xd8\x25\x6e\x99\x0f\x83\x9e\x18\x0a\x50\x46\x63\x02\x47\x39\x37\x70\x1e\x0e\x38\x78\x54\x10\xfe\xfd\x23\x2f\x8c\x63\x05\xde\xdb\xdb\x37\xb5\xb1\xef\x1f\xb8\x81\xe8\xfe\xd4\x25\xd0\x39\x47\xf3\x3b\x1c\xc2\x41\x20\xdc\xb5\x40\x20\xf7\xe6\x61\xca\xbf\x02\x62\x31\xff\xfd\x80\xff\x1a\xba\xd9\x05\xf1\x12\x89\x77\x9e\x0b\xeb\x31\x30\x50\x6d\x32\x78\x46\xeb\x8a\x37\x6e\xc6\x88\x6c\xa2\x10\x64\x16\xfd\xa3\x64\x7a\x4e\x2f\xc2\x86\x2c\xd2\x47\x47\x23\xf4\x13\x0b\x7d\xf5\x06\x85\x20\x46\xb1\x91\x81\x53\xf2\x66\xf2\x9d\xa8\xc9\x91\xe7\xa4\x63\x4f\xa1\x1b\x1a\xb9\x0a\xdd\xd0\xc0\x57\x28\x30\x22\xa9\x03\x96\x44\x1d\xf0\x4e\xb7\x5c\x6e\x77\xc7\x8d\x7b\xf6\xad\xae\x34\x36\x98\x73\xd3\xd0\x49\xb9\x19\xab\x49\xb9\x09\x1c\x13\x6e\x43\x76\xaf\xee\xcf\x60\xd9\xba\x68\x80\x25\xdf\xd0\xa8\xdd\x9d\xf9\xbc\x98\xce\x55\x1e\xe0\xec\x77\xa7\x4a\xd1\x3c\x90\x2b\x5c\xd3\xc0\xea\xda\x99\x75\x44\x0e\xb3\x62\x77\x9e\xdf\x83\xaa\x96\x89\xc5\x6f\x88\xa9\x76\xf4\xbf\xd2\xe3\xe8\xec\x46\x39\x2d\x10\xb4\x39\x43\x74\xde\x34\x19\x27\x62\x52\xd3\xca\xf1\x23\xdc\x28\x22\xff\x9d\x4d\x93\xc0\x77\x42\x08\xc3\xb5\xae\xb0\xab\x18\x28\x25\xd6\x9a\x7e\x31\xd6\xeb\x1a\x41\x28\xd2\x94\x4f\x64\xc8\xbf\xbf\x9c\x21\xb6\xce\xae\x68\x9a\x5e\x59\x86\xd7\x6f\x82\xf1\x2c\x79\xc7\x13\x44\x88\x8b\xad\x10\x55\xf9\xc3\x55\x64\xe4\x49\xc8\x14\xdd\xef\xc9\xa2\x0d\x48\x58\x91\xe9\x79\x75\x11\x97\x3a\xaf\x46\x23\xb4\x37\x27\x3a\x1a\x9f\x2d\xb6\xa8\x96\x9a\x4e\x85\xb7\xbe\xf6\x2d\x77\x7a\x4e\xd3\x6c\x4f\xae\x44\xd6\x89\x47\x69\x76\x6f\x41\x97\x07\x84\x0c\xd9\x5a\x75\x6b\x8e\x67\xe7\xd5\xa5\x1e\xd6\x78\x6c\x56\xbd\xf4\x25\x34\xd9\xbd\x26\x60\x10\xbf\xcd\x10\x5e\x91\x72\xa2\x44\x86\x06\xe5\x84\x6e\x77\xea\x2e\x03\x35\xbb\x34\x95\x97\xd3\xf9\x9a\x6c\x68\xb6\x36\xe7\x6d\xad\x8f\xa6\x04\xcd\x79\xd8\x10\xef\x8e\x35\x4d\x87\xc5\x7c\xa5\x4b\x1a\xd5\x0e\xec\x05\xf2\xcf\x59\x26\xac\xbe\x47\x64\x89\x8a\x57\x93\x72\x33\xba\x11\x99\x8f\xfa\x8f\x50\x6e\xb7\x04\xd4\x01\x58\x7d\x6a\x7f\xd2\x34\x5b\x93\x55\x30\xac\x29\x42\x4e\x91\xc5\x1a\xec\x5b\x1d\x85\x17\xfa\x88\xe2\x1d\x31\xba\xea\x6b\xac\x44\xbe\xc2\xba\xc1\x7c\x3f\xdf\x2f\xaa\x3f\xec\x6d\xd7\xcb\xbc\xc6\x42\xb2\x6b\xc6\x73\xd6\x34\x59\x31\xb7\x47\xcb\x4f\x34\x70\x14\x3b\x4f\xca\xbd\x4a\xf2\x64\x04\xe7\x3f\x41\x87\xc1\xb7\xd2\x6a\x66\xed\x80\xf4\xa2\x38\x81\xac\xef\x69\xb1\x4a\x30\xc5\x3b\x74\x50\x7a\x7d\xd2\xf4\xb9\xb9\x6a\xf8\x47\x69\xb8\xc1\x47\x43\x25\x1b\x9f\xaa\xee\x76\x26\x66\x06\xee\x3d\xfd\xa4\x67\x64\x24\xd4\xe8\xbd\xed\x48\x51\xca\x8a\xed\xae\x44\x21\x57\x5f\x16\xaa\xb0\xa8\x5f\x9b\xa0\xdf\x51\xe3\xaa\x4d\xaf\xce\xe3\x5d\x55\x30\x6e\xf8\x71\xce\xe5\xde\x19\x75\xe1\xa6\x6c\x9c\x6d\x8d\x11\x4e\x58\xad\x67\xf9\x9a\x57\x77\x19\x6a\x1a\xe5\xf9\x42\x16\x11\x80\x49\x35\xcd\x5f\x55\xa6\x22\x6b\xb1\x5f\x29\x38\xba\x9f\x3a\x99\x14\x2c\xb6\xf5\xe7\xde\x4e\xc1\x2e\xd7\x7d\xc4\xb9\x04\x5d\x18\xc9\x4a\x50\x8f\x0e\x75\x48\xea\x6d\x21\x95\xa6\xf4\x78\xcb\x6e\x70\x8e\x1e\x6a\x5a\x81\x29\x52\xf7\x7a\x70\x7d\x3d\xb8\xbb\x1e\xcc\x97\x70\x32\xef\x8c\x81\x8b\xc9\x49\xb9\xb9\x9c\x4d\xa7\x4d\xc3\x41\x43\xce\x16\x19\xcf\x96\x26\xd7\xc8\x9e\x58\xfb\x81\x5a\x20\x67\xbd\x60\x3c\x55\xb6\x29\x84\x0b\x62\x14\x6e\x45\x3c\x95\xf6\x25\x33\x7c\xb8\x4e\xb6\x83\x28\xb5\x31\x46\x50\x3e\x90\x64\xb7\x5c\xb9\x29\xe4\x53\x95\xd5\x08\x5d\x8e\x67\xe8\xbe\x20\x3f\xcb\x8c\xe2\x60\x70\x38\x81\x95\x72\x31\x81\x2c\xf8\x69\x9b\x81\x3d\x4b\xd3\x4e\x82\xf1\xe9\xed\x75\x10\xc3\xc9\x9a\x1b\xea\xb4\x1a\xfd\x8a\x21\x04\x5a\xab\x27\xbb\x47\x83\x22\x4d\xcd\x75\x89\x7a\xd2\x57\x26\x6c\x3e\xe4\xe3\xbd\xee\x08\xbb\x17\x4b\x2c\xf5\x7f\x86\xad\xe4\xf7\x3a\xde\xe7\x40\xa9\x81\x74\x8b\x2c\x78\xb0\x87\x58\x90\x7b\xe3\x5a\x34\xdf\xd0\x8c\xe1\x29\xc2\x3a\x0f\x3e\xc0\x17\xe9\x61\x20\x2d\x30\xd7\x67\x1f\x7e\xc1\x0e\x7f\xaf\xdb\x3a\xf2\x4b\xea\x0d\x65\x00\xe0\x28\x6c\x7a\x8c\x8c\x89\xdf\xb8\x47\x36\x0e\x60\xb6\x57\xa2\x14\x52\xd2\x52\x25\x38\x11\xeb\x75\x62\x7d\xa0\x76\xcb\x14\x3b\xa6\x8a\x0a\x5c\xda\x9d\x28\x56\xef\x68\x55\x01\xcd\xd6\xc6\x49\x0c\xdc\xa1\x51\x4f\xf0\x94\x5b\x1f\xbe\x44\xd2\x1b\x03\x8c\x1c\x95\xb9\x13\x55\xc5\xf8\xf5\x57\x45\xad\x7c\xac\x36\x9b\x16\x61\xff\x8c\x17\x65\xb9\x97\x85\xa2\xde\xc9\xa3\x2f\xbf\x29\xea\xe3\xc4\x52\x6c\x77\xa2\x86\x66\x22\xe1\xf6\xd3\x36\x5c\xc3\x33\x61\x40\x52\x21\x69\xf1\x51\x57\x54\x96\x75\x04\xde\x1d\x03\x27\x54\xde\x45\xd5\x8c\x6e\x8f\x1d\x72\x85\xf6\xda\xd4\x79\xd8\x12\x36\xa4\x5e\x7e\x66\x94\x5e\xce\xcf\xfa\x7c\x7b\xd9\x3e\x3e\x0b\xfb\x98\x82\xd7\x2b\xaf\x3f\xea\xc9\x0a\x4b\x93\xcf\xa6\xd3\xa9\x26\xe1\xba\x1b\x05\x5e\xd3\xdd\x2e\xee\x5a\x17\x36\xd6\x4c\x91\x24\x33\x6f\x98\x78\x55\x15\x10\xb0\xeb\x8d\xb1\x0a\x08\xfc\xe7\xf4\x6d\x67\x55\xd4\xea\x29\x9c\x4b\xd0\x04\xed\xa4\x59\xf5\x62\x9f\x0a\x7e\x05\xe3\x82\x90\x64\xcb\xb5\xe8\x73\xdf\xfe\x5f\xcb\xa2\xa4\xdf\x51\xc9\xc4\x2a\x7a\x8a\xbe\x8b\x9e\xa2\x1b\xe5\xb9\xc4\xd6\xa9\x6b\xd3\x48\xa7\x5b\xe4\xb0\x6a\x8d\xba\x19\x12\xcf\x83\x1c\x5b\x05\x33\xb2\x53\x99\x46\x25\x5d\x82\x20\xdf\xb3\x0c\xec\xeb\x40\x60\x90\x0c\x04\x00\x9e\xba\xc8\x04\xd6\x68\x34\xfa\xc3\x93\x79\x02\xe4\x50\x92\x9b\x12\xce\xfe\xea\x56\x43\xe5\x6d\xb1\x83\x62\xb8\x68\x77\xcd\xea\x97\x10\x5b\x8d\x10\x7d\x56\xab\xaa\xd8\xd5\x74\xae\x49\xfb\x55\x5e\x1b\x5f\xca\xb8\x0e\xbc\xda\xc4\x78\xb5\x91\xd6\x5e\x15\x2b\xe3\x9a\x2b\xf0\x52\x43\x23\x4d\x66\xe0\x61\x85\xca\x79\xce\xd9\xa1\xa1\x3d\xf8\x71\x4e\x18\x72\x57\x2e\x3d\x29\xa2\xfb\x87\x57\xfd\x3b\x51\x67\x9b\xd0\xd3\xac\xb5\x24\x98\x99\x78\x29\x03\xbb\x8f\x92\x4c\x0d\xec\x37\x0e\x47\xd4\xf9\x39\x27\x3c\x8c\x9d\x07\x03\xe0\x4d\xc3\xfb\x46\x17\xee\x14\xa0\xcb\xa1\xf2\x08\x8f\x94\x8f\x8f\x2b\x9b\x97\x27\x56\xb2\x89\x87\xdb\xa3\x69\x13\x17\x58\xb0\xa5\x79\x45\x8d\xea\x8b\x3f\x3a\xcf\xa8\xde\x76\x88\x6c\xd5\x7a\xe0\xa1\x5d\xdd\x71\x78\xb2\x02\x9d\x27\x46\x9c\x15\x4c\xd3\x0c\x5f\x88\x8c\xb7\x7e\x6d\xf5\xba\x6e\x68\xf6\x94\x59\xa2\x0b\xe9\x77\x41\x2f\xa3\xd9\x37\x0e\x6a\x67\xc3\x29\x56\x84\xc7\x1b\xa3\x17\x18\x0f\x55\x80\x0c\x48\x5a\xab\xf9\x8d\xc8\xcc\x2f\x27\x7e\x1f\x74\xfb\x11\x08\x8b\x10\x55\x86\xd0\x66\x86\x12\xfa\x2c\x0a\x2e\xac\x6c\xe0\x01\xa2\x80\x00\x28\x9a\x66\x36\x04\x85\x24\x37\x0a\x6f\x6c\xf1\xd9\x90\x44\x8c\xd4\x36\x34\x54\x56\x44\x39\xd8\x84\xa9\x28\xa0\xc4\xdf\x8b\x6a\x4f\x3d\x76\x7e\x5e\x07\xbb\x3a\x24\xfc\x1c\xd5\x24\x4c\x1a\x38\xe1\xa0\xd3\xa8\xa9\xc8\x5e\xdf\xae\xba\x25\x04\xcb\xec\x48\xbf\x6a\x3c\x3b\x67\x17\x59\x35\x77\xaa\xee\xf9\x14\xc1\xa6\xb7\x62\x1d\x76\x31\x9d\x43\x43\x79\xb5\x60\x4b\x6b\x9d\x29\x5a\xeb\x4c\xf2\x99\xb3\xa0\x15\x8b\x62\xf4\x04\x8e\x45\x4d\x88\x6a\x9a\x9a\x10\xe9\x28\x9f\xa7\x2c\xd3\x0d\x99\x25\xcf\xcd\x0e\x2c\xd8\x12\xe1\xb5\xae\xb6\x1c\x71\xbb\x0d\x19\xbf\x98\x36\x4d\x3d\x84\x10\xcd\x19\x64\x8e\x32\x3e\x9f\xe5\x53\xb4\xd4\xf8\x40\x56\xe2\xb5\xc6\x49\x8c\xa6\x60\x99\x15\xb8\xc6\x12\x0e\xc3\x3a\x38\x30\x6b\xcc\x42\x17\xa9\x75\xa4\x4a\xb7\x21\xc5\xfc\x78\x81\xc7\x32\x9f\x9e\xaf\xce\x57\x64\x15\x16\x36\x82\x35\x52\x66\x2b\xbc\x0a\xb7\x69\xda\x39\x9e\x21\x81\x06\x07\x66\xb0\x19\x91\x55\x18\xc1\xcb\x76\x73\x30\xea\xf1\xe6\x9d\x67\x62\x5f\x3b\x11\xa6\x1e\xed\x86\xc8\xf3\xdd\xf9\x8e\xec\xba\xb9\x7e\x18\x3b\xbc\x0b\x87\xa1\x61\xca\xa9\x71\x8c\x1e\x1e\x47\xe0\xe5\xca\x02\x4e\x13\x78\xcd\x68\xbb\x79\x64\x84\x6d\x8d\xf4\x26\x78\xe7\x7e\x0b\xcb\x1b\x9c\xcb\x73\x37\x69\xb1\x0a\x8b\xbe\x88\xa9\xa0\x85\x5a\x0e\xe8\xa4\x16\x32\x74\x4a\xd1\x65\x86\x38\xa2\x58\xd9\x1f\xc6\x2f\x05\x38\x14\xd2\x3b\xdd\x8a\x32\x67\x80\x73\xf6\x20\x99\xc6\xb9\x16\x05\x12\x41\x9f\x8c\x9d\x46\x0e\x35\x7d\x8d\x99\x6b\xf3\x92\x4c\x5d\x44\xad\x3b\x9d\x6b\xfb\xf4\xf9\xb8\x26\x37\x41\x2d\xfd\x07\xe1\x3d\x11\x8e\x3e\x9f\xbb\x92\x8e\xf0\xc8\x85\x4f\x30\xf8\xe7\x80\x5f\x68\x52\x79\x3c\x56\x1a\x2b\x34\xce\x85\xc6\x63\x8e\x9f\x60\xeb\x7d\x7f\x3f\xaf\xf3\x02\xef\xe7\x45\x5e\x23\x74\x38\x04\x0c\x2d\xbb\x21\x81\x6f\xa8\xf8\x69\xb3\x65\x16\xb6\x21\x8a\x55\xd3\x50\xb4\xc4\xa1\xeb\xb2\x57\x71\x15\x2f\x1f\xb2\x12\xf5\x96\x41\xa0\x87\x67\xac\xf6\xa8\x33\x21\x0e\xfd\x1f\xb5\x34\xa0\x79\xef\x2f\x6c\x69\x14\x32\xc3\x4c\x93\xd3\xd6\xe3\x46\xdc\x60\x2b\x35\xd7\x2d\x5c\xca\xf9\x86\x66\x12\x6b\xcc\x02\xcb\x88\x29\x81\xf2\x3e\x0f\xf4\x74\x52\x6e\x06\xc1\x7b\x47\x88\x46\x59\x2e\xd5\xbc\x65\xc4\x29\x94\xcb\x8b\x69\x90\x30\x45\x39\x3d\x64\xca\x74\xa2\x8e\xd9\x1f\xc1\x14\xbf\xea\xe0\x0d\x97\x6e\xfc\x69\xaa\x2e\xe2\xa9\x04\x4e\x6b\x68\xd7\xc2\xc2\x93\x41\x91\x60\x5d\x2e\xf8\x92\x98\x45\x5c\xf0\x65\xeb\xb5\x2f\x70\x78\xd3\x95\x09\x97\x60\x3c\x50\x6e\x63\xd6\x5c\xd3\x50\x50\xa6\xe4\xab\xd6\x1f\x99\xb9\x7b\xf0\xfc\xbb\x47\x6e\x07\x41\xda\xd0\xc5\x74\x20\x86\xfa\x83\xc3\xc7\x3c\x63\x44\x62\x49\x38\xca\x4d\xb2\xee\xed\x62\x6a\x22\x22\xa1\xf0\xe8\xfd\xa6\x09\x2f\xd9\x4d\xe2\x4d\x23\x23\x05\x89\x1f\x82\x41\x7f\xad\x7f\xbb\x23\x09\xb3\xa1\x40\xe1\x69\xd8\x51\x48\x08\x86\x0c\xb6\xe3\x53\x84\x79\xd0\xc4\x37\x1e\x29\x68\x6f\xf4\x62\x89\x1d\x32\x72\x4c\x46\xea\x57\x89\x2f\xd8\x92\x04\x7d\x48\xa7\xfa\x8b\xf5\x63\x82\x8d\x0e\x09\x0c\xe8\x05\x05\x83\x63\x37\x10\x00\x62\x28\x9a\xc3\xdf\x8f\x94\x3c\xa2\x5e\x9d\x8b\xb0\x01\x5b\xa8\x25\x91\xd8\xb5\xca\x8e\x5b\x0d\xa7\xf5\xcf\xee\xca\x7c\x09\xbc\x96\xb8\xd0\x8f\x47\x08\xd1\x86\xd5\x4a\xc8\xbb\xc9\x4a\x70\x8a\x19\xb9\x11\x19\x47\x03\x96\xa6\xcc\x0e\x67\x9e\xf1\x05\xf7\x8c\x93\x25\x51\xf8\x67\xd7\x06\xca\xbf\x3e\xd6\x60\xf1\x49\xf7\xbe\x5c\xc7\x90\x2f\x9c\xb6\xed\x1d\x0b\x8d\x4e\xf1\x89\x61\xc5\x0d\x24\xb1\xae\x5f\xdf\xd0\xea\xf5\x0e\xd4\xb1\xda\x6f\x28\x02\xca\xd2\x99\x49\x7c\x29\x56\x6f\xd9\x96\x06\x75\xf4\xa7\xab\xe2\xcb\x37\xcd\xa9\x61\x28\xc7\x3b\x99\xba\x6b\x92\x3c\x4a\x08\x61\x4d\x93\x8c\x8c\x73\xc3\x0e\x03\xa9\x87\x55\x2b\x27\xb5\xd8\x52\xb5\x61\xfc\xda\x90\xbb\x74\xa5\x21\x32\xef\x4b\x0e\x22\xb3\xb4\xeb\x1f\x0c\xfd\x82\xc0\x65\x9c\xc3\x5d\xf4\xe1\x47\x4d\xb9\xe7\x86\x11\x57\x15\x77\xf9\xe7\xd3\x29\x18\xad\x09\x7c\x23\x32\x06\x1b\x88\x34\xf6\x3a\x37\xbf\x17\xe6\x4f\xb8\x75\xf9\x0b\xf0\x43\x62\x8a\x0e\xa2\xe5\x6a\x23\xf1\xe0\xee\x52\x8b\x20\x65\x47\x24\xe6\x69\x0a\x31\x6c\xb9\xf1\x80\xf5\x3d\x5d\x89\x34\x7d\xc9\x32\x36\xd9\x73\x68\xf9\xe0\x6e\x09\x6e\xa7\x61\x78\x9b\x6c\x95\xbf\x2a\x5e\x45\xe7\xc5\x9f\x92\xfb\x0c\xa4\x42\xc9\x15\xe8\xbb\x78\x9e\x81\x35\x46\x82\x98\x90\x1a\x40\xe9\x42\x93\x72\x7b\xb2\x9c\x46\xde\x14\xe9\x37\x1d\xbd\xb7\x9c\x18\x65\x77\x0f\x77\xa5\x69\x1d\x5c\x24\xe0\xf2\x4b\x32\x3d\x97\x2d\x84\x95\xa3\x11\x0a\x4a\x2e\xe4\x92\x58\x88\x65\x41\xae\x5c\x5a\x20\x69\xe2\xdb\x98\x14\xcb\x1d\x72\x1c\x67\xd0\x5f\x37\xbf\x7d\x24\x4b\x13\x25\xa6\x7f\x6e\x98\x1a\x1d\x22\xbd\x0c\xba\xdc\x03\xcb\x00\xa5\x74\x69\x77\x50\x35\x19\x60\x2f\xb4\x06\x50\x6e\x01\x8e\x04\x07\x28\x57\x07\x77\xbd\x07\xde\x9d\x8e\x9c\x5c\xb1\xa2\x6e\x1a\x8d\xd0\xa8\x16\xbe\xc2\x84\xba\x40\xd7\xcc\xf2\x62\x3a\x1f\xcf\xf2\x19\x1a\xfc\x55\xcf\xfe\x6f\x56\x8f\x0c\xdc\x60\x6a\x4a\x63\x68\xe2\xd2\xd6\x56\xed\x66\xa8\x87\xdb\x34\x3f\x4a\x98\x54\x70\x3a\xfe\xea\x30\xbe\x09\xfd\xe7\xbe\xa8\xea\x0c\x3a\x43\x20\x8e\xaa\x69\x45\x94\x5d\x8e\x2c\x38\x64\x21\x5b\x3d\x48\xae\xe3\x25\x32\x4e\x29\xcd\x61\x42\x8e\x7d\x6f\x0c\x30\x9f\x96\x8a\xdd\x30\x75\x67\xa2\xf4\xb4\xee\x16\x80\xcb\xd2\xce\xc7\x1c\x71\x63\x01\x19\xa1\x2e\x7f\xeb\xb3\x27\xc1\x82\x4c\xcf\xc5\x85\xea\xbc\x2d\xc2\x61\x8f\x85\xdf\xa0\x85\x58\x82\x1e\x5b\x07\xe4\xf4\xbc\x4c\xfa\xb9\x0e\x1e\x23\xb1\xc4\x7b\xf2\x17\xdd\x79\xe1\x38\x92\x75\x9a\x3a\x4c\xd9\x68\xa0\x55\xae\x00\x6c\x1d\x64\xc3\x2f\x9d\x79\x9e\xb1\xa6\xd9\x0f\x89\xab\xdd\x34\x95\xfe\x80\xfd\xd4\xd0\xb6\x69\xc0\xa3\x69\xfc\x4c\x61\x81\x10\x66\x0b\xe1\x2f\xc0\x1e\x57\x9e\x03\x7a\xc6\xe6\xf0\x70\xa9\xe0\xd1\x0a\x65\x8d\x3f\xf5\xc8\x07\x43\xc4\xc9\x10\xfa\xdb\x42\xbe\xa7\xab\x37\xbb\x82\x77\xbd\x19\x47\x79\x47\xca\x7e\x35\x89\xf2\x17\x85\x5e\x9f\xda\x24\x01\xf2\x62\x8d\xdb\x6b\x40\xa0\x9b\x26\xdb\x4f\x18\x2f\xab\x7d\xcd\x6e\xe8\xb7\x74\xad\xe6\x26\xe3\x02\x1e\x88\xdc\x7e\x28\xc7\xe1\x76\x75\x95\x88\x6b\x82\x2f\xb3\xb9\x4e\xbf\x74\x15\x95\xb8\x34\xd5\x00\xd1\x62\x69\x9a\xfd\x64\x02\x9a\xc0\xdd\x35\xc1\x7d\x9e\xdb\xa8\xff\xfb\x09\xfd\xa0\x71\x76\xa6\xaa\xbb\x67\x1a\xbe\xd2\x95\xa9\x16\xaf\xc3\xfd\x78\x5c\x0c\x4a\xc1\x15\xe3\x7b\x7a\x30\x6c\x15\x30\xed\x9f\x14\x4a\x6c\x59\x89\x5c\x9e\xd5\x13\x03\x49\x25\x2e\xc9\xde\xf8\x92\xe5\x17\xd3\xf9\x2c\x1f\xcf\x90\x59\x06\x20\xb4\xe3\x19\xe4\x9d\xc5\x40\x10\x93\xf3\x17\xbd\x61\x25\x1e\x73\x0c\xd6\xcc\x91\xf1\x8d\x00\xa6\x04\x42\xc7\x59\x69\x9a\x55\x1a\xf9\x03\xc3\x70\xbd\x74\x17\xd3\x79\x75\x31\xcd\xab\xcb\x96\x9a\xfd\xc9\xb4\xac\xe0\x28\x58\x22\x3b\x18\xac\x01\x26\x2d\xa5\x3e\xef\x0c\x2f\xef\x8e\xdf\x10\xf1\x30\xde\x35\xe6\x78\x7d\x62\xac\xeb\xf9\x4f\xa6\x88\xe9\xd8\x84\x94\x73\xa7\x37\x38\xa9\x7f\xe9\x39\xa9\xbc\x69\x66\xb8\x20\xfe\x10\x0b\xcc\x50\xd3\x0c\x59\x9a\x06\x49\xc3\x29\x6a\x1a\xff\x3d\xee\x29\x33\x16\xc6\xb1\xaf\xe9\xb3\x00\xd8\x56\x16\x5c\x3d\x5f\x31\xa5\x81\x54\x44\xe8\x04\x60\xe6\x97\x00\xcc\x38\xec\x5e\xa3\xd6\x53\x02\xe7\x6e\x6e\x89\x1e\x5b\x77\x0e\xcf\xd0\x86\x5a\x6a\x4a\x13\x5b\x30\xd9\x5c\x5e\x4e\xd3\x54\x57\x20\x44\xa3\xdb\xe1\xf5\x8b\x08\x97\x79\x4c\x86\x79\x1a\x6b\xee\xdb\x04\x51\x89\x69\xd4\x6a\x47\x38\x9d\xe0\x49\xb9\x19\x85\x8f\x3e\x98\xe5\x1e\xb9\x84\xac\x37\xe2\xb6\x8d\x12\xd5\xcd\xdd\x49\xba\x2b\x82\x97\x2e\x0b\xd7\x42\xa9\x2e\x55\x64\x43\x4b\x1a\x2b\x48\x6e\x4d\xeb\xeb\x8f\x47\x0e\x03\xef\x11\xfe\xad\xf8\x84\xf2\xce\x69\xd8\x31\xdd\xe0\xfc\x87\x69\x64\x49\x59\xd7\x2b\x31\x02\xef\x1d\xc0\x05\x50\xbc\xb0\x12\xc8\xda\x92\xf5\x66\x17\x8f\xcc\xa3\x9b\xa6\x06\xe6\x80\xdb\x94\xae\xa1\x35\x6a\x6d\x74\x2d\xe7\xe0\x3c\xdb\x6b\x24\xca\x8b\x4d\x37\xe2\xd6\x80\x9e\x1f\x37\x94\xbf\x71\x11\x50\x51\x9a\x42\xec\x34\xfb\x2e\x30\x84\xf7\x4d\xc3\x21\x05\x8b\x80\x5b\x10\x98\x4f\xaa\x18\xcb\x7a\x6b\xbe\xbb\x06\x88\x81\xad\x45\xcd\xf8\x75\x65\xe1\x9e\x51\x41\xfc\x8e\xca\x6f\x2d\x93\x5f\xf6\xdb\x0b\x24\xff\xe7\xff\x91\xf4\xc4\x8d\x49\x10\x32\xee\xee\x23\x35\xe4\xca\xe9\x6d\x62\x16\x98\x62\x73\xfd\x7f\x9c\x7c\xac\xc4\xea\x95\xc3\xa0\x34\x7a\x14\xf8\x4f\x0c\xc6\x6b\x5a\xe1\x13\xa1\x36\x54\x3a\x78\xf0\xaf\x8d\x3c\xb4\xfc\xa8\x69\x29\xf8\xaa\x90\x77\xed\xa4\xc4\xb1\xe6\xa7\x88\x27\x09\x7d\x07\x53\x15\xd1\x54\x4d\xae\x9f\xb0\x88\x27\x3c\xf9\xf3\xe7\x8f\x32\x57\xc8\x4f\xd8\xd7\xb1\xaa\xba\x81\xd5\xa9\x7a\xc8\x09\x0b\xf8\x1f\xfa\xa4\xab\x52\x46\x31\x13\x6a\x52\x98\xc8\xa6\xfb\xd0\x3f\x52\x1b\x9e\x06\x83\xf7\x87\xb1\x4d\x0a\x6c\x8d\xd1\xb8\x30\x9a\xbc\x2d\x87\xb9\x6a\x81\xa1\x02\x06\x03\xc4\x4e\x51\xa1\x63\x6c\x85\x62\x47\xd9\x1c\x61\xf1\x89\x7e\xf0\x6b\x4b\xbc\x25\xfd\xf2\x47\x67\xaf\x42\x8d\x85\x0a\x04\x98\x4b\x46\xaa\x63\xaf\xe2\x7c\xe9\xcc\xf7\x63\x9a\x4b\x6b\x04\xd6\x46\xd1\xc9\xf8\xd8\xfa\x3b\x0d\x21\x9b\xe7\x9c\xdf\x98\xb8\x9d\xb8\xd4\x18\x12\xc3\x0a\x81\x1e\x4f\x00\xa0\xdb\xb5\x58\x65\xe1\xa3\xf0\xbd\xb2\x80\x1f\xac\x90\x60\x7e\x25\x6e\x99\x2f\xc7\x54\x31\xb8\x05\xf4\x72\x1e\xe8\x3f\xa9\x94\x4c\x42\x0f\xb5\xc3\x99\x45\x68\x69\x8b\x76\x09\x87\xc9\xd2\x85\x58\x9e\x67\x85\x41\x98\x64\x9a\x16\x80\x01\x35\x8d\x22\xc4\x7e\x11\xc3\x65\xe7\x59\xeb\x41\x12\x4a\xeb\x69\x79\x06\xa1\x2e\xa8\xc7\x3c\x23\x70\x4e\x6e\x68\x35\x4f\xa4\xaa\x92\xdc\x8c\x06\x33\x08\xa5\xca\x9a\x26\x1c\xe3\x21\xfb\x9e\x65\x25\xc2\xb2\x69\x8c\x96\x09\x21\x7c\xbe\xce\x39\x8e\x3d\x55\xd9\x47\xbc\xc4\x1b\xbc\xc3\x5b\xb2\xd2\xd8\xbf\x15\x11\xb2\x75\xa6\x11\x05\x54\x92\x2d\xde\x90\x1d\xd9\xc2\x19\xf5\xb1\xf7\x4b\xb2\xca\xd4\x78\x86\xad\x88\x10\x61\x18\x13\x71\x06\x42\x37\x64\x3b\xd8\x92\x12\x97\xe4\xe6\xb0\xb1\x75\xf1\x8e\x94\xe6\xbc\x1e\xec\x11\x80\x57\x9a\x82\xe3\x9c\x1a\xe1\x12\xc2\xfa\x6e\xf5\xff\x97\x9f\x69\x64\x29\xdb\x60\xf8\x32\x07\x71\xeb\x9c\xda\xe2\x0d\xa9\xfd\xd7\x45\x69\x3c\xa1\x98\xc2\x26\xcd\x94\x87\x0c\x84\xdc\xec\xd3\x54\x11\xb2\x4e\xd3\x6c\x47\xf6\x08\x67\x43\xd1\x34\xd0\xf8\x85\xd0\xff\xdb\x0f\x42\x84\x69\xce\x8c\x18\xc4\x2c\x06\xe9\x13\x64\xab\x6b\x15\x4d\x53\xda\x5e\x2e\x0b\xfb\xa3\x4d\xd2\x3b\xe4\x3c\xce\xda\xa9\x5e\xda\x2b\x6a\xb4\x41\x4a\x84\x37\x17\xf5\x68\xe6\xa6\xac\x47\x0d\xe3\xc4\xbb\xb1\xfe\x65\x67\x78\x40\x08\xfb\xd8\xbf\x94\xaf\xf2\xc2\x09\x5c\x54\xab\xb2\xa6\x8c\xca\x1a\x5b\x67\x0e\xab\xb3\x1a\x23\x65\x28\x85\x00\x3d\x33\x63\xd2\x7b\x6f\x54\xc4\xe0\xde\xac\xad\x2c\x6f\x67\x3e\x6d\x4d\xbc\x25\xbf\xf3\x6c\x83\x88\xfe\xb3\x43\xf8\x86\xc4\x6d\x6d\xe7\x9b\xf0\xaa\x8d\x66\x06\x7f\x9c\x50\xbe\xc2\x77\xa4\x74\xca\x6f\xdb\xf9\xd4\x48\xe6\xa0\x6f\x23\x29\x1e\x68\xf2\xf4\x06\x16\xfc\x0e\xf6\xf9\xc9\x3c\xab\xb2\x1b\xb3\x38\xf8\xa6\xdd\xe6\x1b\xbf\xcd\x55\x56\x63\x28\x8b\xef\xcc\xf9\xb9\x73\x59\x28\xef\x56\x35\x25\xc6\x6d\xa2\x2b\xe9\x7f\x9a\x6e\xf5\x41\xa9\x7d\x9a\xe9\xf1\xce\xb8\xc4\x89\xdf\xad\xd0\xf1\x0a\x53\xde\xc1\x45\xa4\x0e\x7a\x1c\x7c\x1c\x58\x41\x2f\x34\x0d\x73\x53\x54\x99\x9a\x5c\x55\x8c\xbf\xa7\xd2\x31\xe6\x87\xd3\x81\x6a\xdd\x1b\xd9\xb7\x08\x3c\xe8\x40\xf0\x3f\xfd\xba\x75\x1f\xda\x2f\x74\x0b\xdf\x17\x8a\x5e\x4e\xe7\xbe\x3d\x52\x53\xe5\x7b\x89\x83\xd7\x3e\xd0\x7a\x26\xc9\x50\x22\x08\x24\x62\xd4\x0d\x92\x03\x3a\xdd\x1f\xca\x4f\x66\x99\x87\xe5\xc1\x89\xd8\x0e\x42\x29\xb4\x50\xde\xb9\x8c\x0d\x83\x64\x4e\xc6\x1b\xbd\xa4\xe0\xaf\x27\x88\x50\x74\xd1\x45\xf4\x80\xc8\x87\xc5\xf7\x41\xe8\x41\x27\x5d\xe1\xd7\x22\x2b\x54\xcc\xa3\x28\x54\x27\xc2\x8e\xf1\x02\xe9\x1b\x57\x4e\xc0\x10\x24\x3a\x31\xb0\x71\x7d\xe4\x52\x8f\x31\x4e\x1f\xfe\xdd\xb3\x0a\x03\x8f\x88\xb7\x42\xbe\x7f\xcb\xc0\x29\xc2\x9e\x67\x0a\x66\x89\x6b\xa3\xf1\xe1\x9a\x44\x1a\x64\x2f\x96\x2e\xda\x4f\x9b\x11\xc8\x84\x22\xa7\xb2\x47\xce\x86\x46\x9f\x4f\xa7\xa1\x03\x78\x61\xe5\x43\xa7\x06\x0d\x88\xb0\x7d\x94\x2c\x06\x54\x83\xca\x70\x70\x97\x2f\xdb\x49\x6c\x8b\x0f\xdf\xb8\x35\x36\x31\x47\xf0\x9e\x50\x06\x3c\xd6\x7a\xde\xce\x8b\xa3\x1c\x58\x59\x0e\x49\xab\xc9\xde\xfe\x70\xae\xf6\xcc\x27\xd8\x55\xd2\x1a\xc8\xee\xd2\xfc\x1e\x94\xf3\x38\x93\x94\x79\xa5\xa1\x6c\x9c\x18\xdb\xa4\xae\x89\x06\xbf\x85\xf7\xa7\xeb\xba\xf5\x52\xfe\x0a\xbc\x8b\x65\xc3\xaa\x69\x86\x65\xd3\x54\xad\xd7\x88\xb2\xf5\xc2\x50\x85\x5e\x23\xca\xd0\xf0\x73\x45\xa6\xe7\xc3\x75\x9a\xae\x2e\x8a\x30\x9a\xe7\x9a\x14\x8b\xd5\xb2\xed\x6e\xb1\x5a\x0e\xd6\x69\xca\xac\x45\x60\xbb\xaf\x80\x5d\xfa\xa0\x5c\xf5\x9c\xe7\xe1\x5a\x39\x3d\xc3\x60\xcd\x2f\xc8\x43\x8b\x9e\xa6\x12\xd6\x1c\x6a\x60\xde\x69\xbe\xed\xf7\x0f\x9f\x13\x32\xed\x6c\x8b\xd5\x4a\x19\x8d\x82\xd3\xe5\xcf\xeb\xa5\xd7\x69\x85\x2b\x19\x9f\x5e\x60\xaa\x83\x1e\x2a\xc4\xc5\x73\x1c\xb6\xbf\xea\x92\x59\x8f\xdd\x81\xf1\xf0\xe3\x0a\x9e\xab\xd1\x08\x29\x50\x79\x5c\xa8\x25\x36\xfe\x60\xc0\x62\x24\xf0\xa1\x70\x8c\x44\x8b\xd2\x20\xd0\xad\xd7\x64\x08\xdf\x1e\x41\x08\xe7\x48\xd1\xc5\xf7\xea\xf2\xb6\xbd\x14\x0b\x33\x6c\xd5\xeb\x71\x41\xe4\x7c\x3c\xcb\xd5\x38\x0b\x80\x0e\xe3\x9c\x82\xcd\xc6\x7c\x46\x3f\xcb\x21\xf0\x59\x4d\xd4\x79\x7d\x59\x9c\x8f\xc7\x35\x5c\xa5\xfa\xc2\xf9\x4b\xf4\x2b\x65\x3e\xad\x8e\x07\x28\x75\xd7\x96\x6f\xb4\x8f\x23\xb3\x0d\x65\xd3\x98\xfa\xfe\xbe\x3b\xb5\x2a\x7b\x2d\xd6\x22\xdb\xdb\x4d\xd5\xcf\x4f\x10\x5d\xab\xb8\x7a\xc3\x7e\xa7\xe8\xdc\xa2\xc8\x1a\xa7\xbb\xac\x80\xe9\x48\xea\xf1\x0c\x73\x52\xb5\x2c\x45\xc7\x9f\xc6\x05\x11\x97\xdc\x01\xb4\xe7\x2c\xe3\x58\x8c\x67\x28\x18\x94\xe7\xa9\x90\x42\x1f\x13\xb3\xb2\xb8\x40\x79\xe5\x3e\x10\xe6\x06\x18\x09\xac\xe2\xc0\xfb\x70\x04\x8d\xa1\x2d\x2e\x9c\xde\x98\xc6\x5b\xc7\xb3\xa6\x11\x70\xf4\x9a\x46\x5c\x12\x16\x38\x85\x13\x17\x2e\x88\xe2\x40\xc6\x37\x22\xea\x1d\x26\x3f\x1a\x89\x83\xe1\x85\x67\xbc\x05\xc5\x02\xe1\x22\xb0\x5e\x57\x91\xaf\x1f\x1f\x23\xb4\x75\xb8\x15\x58\x8e\xc7\x65\x8d\x53\xd0\xd0\x73\xd4\xf8\xb8\x81\xae\x4b\xa9\xb2\x7d\xee\xe3\xf0\x84\xad\x2a\x78\x9c\x6e\x1d\x90\x40\xbc\x72\xa7\xfc\xa3\x89\xa8\x9d\xa4\x09\x4e\x34\x21\x83\x25\x31\x91\x92\x27\xdd\xe8\xbe\xf3\x13\xe9\x99\x42\xb9\x72\xfe\x36\x21\x05\x73\x72\x0f\x14\xd6\xae\x90\x35\x7d\xc1\x55\x26\x43\x63\x61\x64\x4d\x9e\x8e\x73\x0d\x23\xd0\xcb\x56\x58\xfd\xaa\x78\x65\xcd\xc0\x50\xd3\xb8\x4f\x83\xa5\x5a\xb6\x5b\x1c\x94\x11\xe1\x80\xcf\xb1\x0e\x57\x58\x88\x71\xfb\xd4\xc4\x96\xb9\x81\xd5\x75\xbc\x27\x0f\xc5\xfd\x1b\x43\xeb\xe3\xe3\xf8\x1b\x6d\x6b\x9b\x4f\x6a\xcd\x6e\x76\x4f\x73\xdd\xdd\xde\xa9\xc0\x84\x9f\x3a\xfe\xa8\xdd\xea\xfb\x6d\xb1\xcb\xfd\xa6\x82\xae\x24\x2c\x4e\x90\x06\xdf\x87\x4e\xcc\x39\x7a\x64\xe1\x0f\x8d\x5b\xfb\xfe\x87\xda\xaf\x17\x7c\xd9\xdf\x87\xce\x31\xfd\x3c\xd0\x07\xa8\xe9\xd9\x6e\x90\x07\xf4\xff\x6a\x37\xd8\xb0\xe4\xf3\xe1\x34\x80\xdb\x5b\x75\xc4\x68\xbd\xd6\x49\x77\x06\xaf\x83\x8c\xc0\x16\x4b\xb5\x8a\x2b\x27\x7c\x47\x1e\xe1\x78\xe8\x68\x57\x8d\x03\x3e\xe3\x94\x78\x79\x14\x4f\xe6\x01\x8f\x58\xea\x92\x18\xa7\x58\xaf\x74\x47\xf6\xe7\xc8\x38\x09\x9d\xcb\x1c\x22\xfb\x07\xa6\x16\x76\x0e\x16\xb3\x7b\xca\x0c\x93\x04\xe6\x20\xd1\x80\xa7\xe9\xd0\xb8\x8c\x9a\x73\x62\x18\xbb\x69\xca\x03\x9f\xb0\xe0\x3a\x8d\x63\x89\x8d\x37\x6e\x6f\xc4\x12\x87\x35\x47\xd6\xb6\xab\x4f\xc7\x46\x77\xa9\x89\x2e\x85\xa2\x00\x02\x3d\xfe\xbb\xe8\xed\xd9\x5f\x94\xd3\x09\x86\xd1\x99\xc9\xd9\x40\x5c\x8c\x70\xe3\xc8\x8b\x80\x1f\x2f\x8e\x5a\xb7\xfe\xe0\x32\xc3\xf8\xca\xf8\x4d\x74\x42\x10\xb6\xe1\x9e\xc1\x55\x17\x3f\x18\x3f\xd0\xb6\xc9\x9d\xca\xb8\xe9\xcc\x9e\x27\x50\x22\x34\xb1\xd1\x72\x8e\x25\x2d\xad\x2a\xa6\x3e\x67\x2c\xb8\x26\x36\xc0\xab\x3b\x4f\x6c\x62\x7e\xe0\x4d\x51\x9b\x7b\x58\xe7\xc3\x59\x70\xc6\xae\x55\x28\x5f\x50\xb6\x38\xe8\xc9\xe8\xd7\x16\x9e\x1f\xbc\x27\x72\x94\x71\xf0\xe0\xd4\x6a\x36\x41\x3f\xc7\x0e\x58\xe6\x35\xb1\x79\x8b\xfd\x32\xcf\xd4\x44\x8f\x15\x1c\x1c\xe8\x1f\xd6\xc5\xa3\xc1\xc9\x4e\x98\xd2\x22\xac\x26\xed\x70\x9b\xe6\xa4\xab\xef\xde\xb0\xa7\x8c\xf0\x34\x05\x00\x68\x9d\xcc\xbb\xbb\xb6\x71\xed\xf1\x34\x6d\x53\x6f\x8d\xbb\x57\xd6\x7a\xd7\xeb\x94\xd7\x84\x83\xd1\x37\xea\x54\x22\x6c\xd0\x0a\x05\x55\x57\xc1\x17\x9e\x17\x3f\xa9\x3a\xd3\x28\xcf\xf4\xbc\xf6\x88\xee\x78\x06\x96\x35\x96\x57\x5e\x18\x7f\x36\xc5\xa2\x1e\xcd\x96\x03\xa0\x4a\x8a\xab\x3a\xdb\xb7\xbe\x28\x2d\x75\x7d\xf9\x24\x4d\x85\xc1\x83\x7d\xee\x08\x3c\x55\xa2\xc7\x4f\xc6\xd6\xd5\xec\xc1\x96\xf0\x1c\x56\x97\x0e\x54\x11\x38\x07\x36\xbb\x11\xaf\x34\x5c\x98\xac\x26\x27\xd4\x55\x30\xa8\xaf\x2b\x38\x6b\x20\xd2\x75\x6e\x38\x71\x45\x9c\x72\x7a\x49\x40\x59\x1d\xaf\x03\xfd\x75\xbd\x7a\x9f\x11\xb2\xf7\x2a\xc0\x2d\xe6\x68\x42\xf9\xff\xf1\x7c\xa5\x57\x02\xbc\x22\x57\x69\xfa\x56\x58\xf1\x8d\xf5\x0c\x66\xcd\x8b\x8c\xab\x0d\x88\x25\x3c\xaa\x10\x3a\x47\xe3\x71\x05\x1b\x70\x1e\x65\x95\x17\xf6\xf3\x39\x5f\x7d\x52\x5b\xa5\x6e\x6b\x34\x02\x82\x15\x3c\x07\xfe\xbb\x73\x52\x5e\x1a\x2d\x7c\xd3\xd6\x38\xac\x84\x18\xd9\x87\xbe\xde\x4e\xd9\x84\x3b\xb7\x6e\xe2\x94\xeb\x61\x64\x39\x44\xdf\x09\xf0\xd5\x52\xa2\xa3\x63\x33\x60\x64\xe3\x04\x61\x9b\x85\x37\x0f\xe0\xf3\x8d\x3f\x48\xf9\x74\x99\xff\xaa\x0c\xb5\xc3\xe2\xa6\xfa\x46\xd5\x34\xbf\x2a\x23\xba\xd0\xf8\x48\xd3\x30\x83\x88\x34\x8d\x9e\xb5\x51\x94\x1f\x94\xa4\xc2\xd5\x98\xcc\xf0\xda\x59\x24\x1c\x60\x6d\x66\x33\x40\x8d\x8f\x2d\x96\x2d\x4e\x55\x97\x92\x52\xde\x34\x56\x46\x0d\x5f\x93\x4a\x5c\xb3\xb2\xa8\x7e\xfa\xf2\xbb\x17\x4d\x73\x9c\xe6\xcb\xad\xe8\x0d\x2b\xa9\x29\x36\x0c\x2d\x4f\xf5\xf5\x03\x1f\xcc\x3f\xf9\x07\xeb\x27\x11\xa0\x80\x80\xfa\xd5\xbb\x82\xb7\xb8\xdf\x49\xe0\x82\xb9\x5e\x21\x85\xa7\x78\x76\x72\x85\xbc\x4e\x8c\x0d\x9f\xa0\xaf\xa2\x11\x78\x8c\x2d\x12\x77\x39\x3b\xb4\x71\x22\xce\x94\x7d\x27\x8f\xe7\xf6\xf8\x68\x6a\x98\x77\x8a\xfd\x7c\x54\x4c\xa7\x78\xb0\xaf\xd1\x4f\x05\x9d\x3e\x92\x16\xdf\x54\x66\xc3\x1e\x49\xac\xc4\x2e\x57\xfa\x6e\x3f\xe2\xde\x0b\x86\xbd\xf3\x8f\xb8\xbe\xee\xad\xaf\x7e\xf7\xda\x20\x43\x16\xdf\x57\xe0\x7c\x63\x4d\x38\xf1\xfc\xe4\xae\x5b\xfb\xd6\x3f\x76\xb6\x21\xfb\xa3\x93\x89\xbc\x6d\xf3\x43\x07\x73\x7f\x6a\x91\x0f\xc1\x7d\x1b\x56\x9a\x8c\x63\x4d\x33\x34\x87\x32\x4d\x87\xf6\x54\x5a\xde\xcf\xee\xe8\xbe\x45\x43\x59\x4c\x97\x03\x46\x76\x73\x8b\xad\x1b\xde\xa5\x45\xce\x8d\xa0\x2a\x8a\x6e\x0d\xeb\xb6\x03\x2e\xa6\x5d\xb5\x9d\x5d\xb5\x83\xbe\x48\xba\xc3\x2d\x84\xb3\xdd\x8d\x0d\x9c\x84\xa2\x37\x84\x39\x78\x1a\xa4\xde\x91\x6c\x3b\xba\x41\x8f\x9f\xe0\x6b\xf7\xb6\x75\x1e\x10\x00\x52\x06\xd2\x5d\xfb\xa5\x49\xd3\x61\x76\x77\x71\xbd\x58\x2d\x11\x40\xbf\x73\x30\x63\x27\xab\xf9\xf5\x62\x35\x9e\x2d\xf3\x29\xfe\x95\xe8\x5c\x7c\x6b\x49\x90\xcc\xaf\xf0\x7a\x6e\xd7\x26\x37\x8b\x85\xdc\x70\x82\x59\x67\x46\xa6\x60\x0a\x43\x7d\xb7\x9e\x51\x61\xbd\x0e\x57\x6e\x0d\x7e\x3d\x0c\x8e\x40\x42\x76\x3b\xb9\x12\xd7\x7b\x78\x1a\x06\x9f\x20\x47\x85\x1a\x52\x89\x1d\xd9\xe2\xdb\x89\xb4\x3c\xfa\x1b\x7f\xa3\x6e\x0f\xfe\x51\x41\xa6\x65\xc0\x0c\x1c\xba\x40\x6a\x84\xb0\x99\x6f\x1d\x4e\xa7\xb6\x4c\x66\x3d\x5e\x36\xaf\xa1\x07\x50\x6f\xf1\x1b\x08\xa9\xf6\x77\xed\x36\xf3\xf0\x81\x76\xbc\x58\x30\xce\x54\x8f\x97\x24\xb5\x61\xb5\x06\x1a\xc6\x90\x0d\xdb\xd0\xaa\xd6\xdf\x14\x79\x4a\x33\x1f\x19\xd5\x59\x06\xba\xc0\x2f\x9d\xe8\x0e\xb5\x8b\x6e\xa5\x44\x26\x31\x35\x0a\x34\xbd\x2a\x9a\xe8\x8a\x92\x7b\x67\x76\x9e\x0f\x67\xc6\x48\x1c\x22\x12\x79\x4d\x83\x3a\x43\x07\xac\xfa\xac\x1c\x81\x8f\x1a\xdb\x4d\x9e\x32\x86\x64\x93\x9b\xa2\xda\x53\x72\x6c\xd8\x8e\xef\x44\xc6\x10\xf2\x02\xa6\xa1\x8c\xaf\x3f\xab\xe9\x33\xb1\xbb\x7b\xb6\x77\xb4\x93\xd5\xcb\x7b\x4d\x33\x89\x06\xf1\xf8\xa7\x66\xfc\x06\xe5\x3d\x60\xb0\x58\x07\xf7\xc0\x77\x3b\x3a\x97\x93\x3a\x9a\x55\xab\x05\x08\xc6\x44\x02\xe5\xdd\xd9\xb8\x41\xf3\x13\x63\x3e\x44\x1d\x40\xb8\x81\x1e\xe3\xf4\x29\x3a\x1c\x68\x7f\xdc\x51\x8e\xdb\x8c\xc0\x6d\x2a\x18\x42\xb2\x8e\x53\x23\xf0\xff\x65\x62\xcc\x1a\x0b\xfc\x88\x2d\xa7\x61\xd8\x25\xf9\x77\x8d\x53\x86\x26\xa7\xb0\x43\x91\x0d\xaa\x73\x1a\xba\x13\x55\x95\x05\x71\x6b\x8d\x2d\x7a\xec\x6b\xc1\x1e\x9f\xa6\x01\xa3\x7a\x09\x81\x08\x7a\x8d\xf2\xf5\xc2\x4f\xd6\x45\xad\xbe\x83\x56\x83\x66\xf5\x02\xe1\xda\x7f\x89\xdd\x9d\xfb\x6c\x83\x64\xf5\x74\xce\xd1\x7d\x2d\x81\x8c\x69\x1a\x18\x05\xff\x58\xe7\xc6\x1d\x87\xeb\x39\x60\xf6\xe0\xc4\x48\xaf\x01\x35\x0c\xfb\x50\xb6\x0f\x85\x9a\xe6\x07\x4d\xf9\x05\xa3\x36\x06\xba\x70\x4e\xba\xd5\x9c\x85\x2e\x5c\x12\x03\x7c\xb2\x64\x2d\xc5\x36\x41\x03\xd5\x9a\xf6\x82\x52\x91\xfb\x30\x27\xcd\x87\xcc\x0d\x72\x88\x15\xf7\x51\x63\x26\x9d\x4b\x50\x73\x7b\x4b\x3f\x00\x09\x1a\x76\xa1\x44\x82\xf0\xbd\xf7\xaa\x98\x47\x2a\x15\xae\xb9\xe4\x80\x0e\xbd\xd3\xa0\x7c\x15\x4f\x22\x1a\x6a\xe6\xce\x03\xfe\xb4\x41\xc3\x21\x02\x7f\x40\x5d\xb5\xa4\x13\xae\x81\xca\x2d\xee\x09\xaf\xae\x41\x9c\x23\x91\x02\x8e\xb8\xb8\x31\xea\xab\x3f\x32\xb5\x31\xb3\x77\xaa\xea\x6f\xcd\xaa\x1c\x2b\xdc\x1a\xc1\x3e\x02\xd7\xee\xee\x42\x9d\x42\xbd\x8a\x20\x2a\xc0\x29\xd4\x4b\xdf\xf8\xb7\x62\x17\x6a\xc6\x04\x42\x9a\xbe\x30\x68\xe3\xd9\x14\xec\x95\x76\xa3\x02\x9e\x6c\xe1\xa4\xd0\x13\x05\x1a\x7a\x9f\xd4\x94\xe1\x85\x41\x4b\x80\x2f\x18\xfd\x90\xb1\x95\x46\xb7\xd6\x21\x07\x1c\x29\x8b\x9d\x78\x4b\x02\x5b\x96\xc1\x6f\x22\x14\xdc\x19\x46\x45\x2d\x64\x8d\x30\xe4\x84\xa1\x56\x8c\x66\xaf\xf9\x34\x52\x74\xe3\x87\xf9\x2d\x04\x1e\x09\xdf\xa4\x40\xe3\xc6\x16\x30\xda\x36\x3d\x65\xac\x53\x39\xb3\x16\x36\x1c\x23\x96\xb4\xa6\xf1\x43\x08\x8f\x96\x31\x91\xe7\x1a\xe6\xbe\xa4\x7c\xff\x1d\x85\xfd\xb1\x33\xd3\xaf\xb6\x3f\x53\x8c\x70\x27\xe5\xeb\x35\x35\xb0\xfa\xec\x21\x50\xb7\xac\x6c\xd6\x31\x95\xd9\x93\x4c\x91\xbf\x89\x34\xcd\x02\xbd\xb2\x71\xac\x84\x06\xae\x30\x32\x49\x78\xf4\x3c\x86\x28\x28\xfd\x0c\xa1\x79\x32\x4e\x72\xd9\x34\xdd\x52\x83\xe8\xe5\xb6\x2f\xcb\x1e\xf3\x6e\x00\xe9\x3b\x91\x45\x25\x8d\x27\x79\x80\xed\xd9\xb1\x4b\x81\xbd\x95\x2f\x69\x9c\xa7\x33\xd7\xbe\xfe\x92\xe4\xc1\xd6\x8c\x56\xe8\xe0\xa4\x57\x03\x75\x38\xe0\x6b\xaa\xbe\x62\xb4\x5a\x1d\x3b\xe1\x3a\x8b\x7a\x3c\xe0\x7a\xbf\xdb\x09\xa9\xea\xb7\x62\x5f\x6e\x8e\x8b\x0f\x67\x07\x0c\xb3\x0e\xb3\xd8\x3a\x4b\xb8\xb0\x7a\x60\x43\x7f\x8c\x1d\x6c\x90\xd6\xeb\x8a\x46\xd4\xb7\x4d\x63\x22\x0b\xc5\xcb\x85\x94\xbc\xbb\x8f\xe7\xee\x82\x6d\x97\x85\x2a\x37\xd9\xcf\x02\xbc\x7a\x5d\x55\xfb\xc8\xd1\x57\x5c\x45\xe7\x66\xee\x88\x7e\xe7\x74\x9e\xba\xc5\x8f\xef\xc1\xa9\xa3\x3f\xd5\x4d\x95\x94\xdd\xd0\xd5\x57\xdd\x39\x43\x9d\xba\x12\xb7\xe6\xf5\x3c\x60\xf7\xbb\x1f\x98\x0e\x68\xe8\x99\xa2\x69\xfc\xa7\x91\x8b\x77\x56\x4c\xe7\x39\x95\x81\x4e\xe4\x72\x0b\xf2\xc1\x48\xa0\x73\x08\x69\x38\x1e\x0d\xe7\xdd\xe3\x7e\x3c\x24\x8d\x34\x9a\x71\xa9\xd8\x63\xc6\x14\xab\x68\x64\x4f\xa6\x1d\x5f\x76\xee\xd1\x69\x1a\x3a\xcf\xd4\x91\xbb\x8d\x60\x08\x28\xcf\xe8\x71\x83\x7f\x9a\x62\x89\xec\x33\x74\x72\xb5\xcc\xd3\x13\x6d\xae\xc3\xb1\xfd\x55\x01\x2d\x81\x7e\xa8\x03\xc6\x19\x1d\x5f\x60\xff\x26\x32\x85\xd2\x74\x28\xd3\x74\x18\xfb\xf3\xd0\x9b\x11\xbb\x06\xa2\x27\x5c\x03\xb9\x46\xdf\xd3\xbb\x37\xf4\x9f\x71\xb0\x38\xae\x49\x38\x7d\x5d\x01\xae\x81\xba\x94\x1e\x44\x0f\x78\xf3\xd5\x2c\x15\x6b\x30\xc0\xa3\x6b\x4d\x08\x6f\x9a\x9b\x34\x7d\xbc\x78\xb7\x5f\xff\xf7\xe9\x74\xac\xff\xac\xd7\xcb\xc7\xc6\xbb\x0d\x47\xc7\x0c\x78\xa3\x74\x0c\xa7\x3f\x73\xa1\x32\xbd\x13\x99\xd0\xb5\x41\x4d\xab\xaf\x84\x7c\xd6\x2e\x5c\xeb\x28\xba\xdc\x14\xf2\x99\x71\x02\x64\xdc\x06\xfc\xf9\xc9\xf4\xb3\x21\x61\x4d\x23\x01\x8e\x26\xff\xd7\xff\xf6\xbf\x27\x08\xff\xf9\x4f\x7f\xfa\x13\x21\x0c\x85\x40\xc4\x75\xec\x4e\x33\xfd\x40\xcb\x67\x62\xbb\x2d\xf8\x2a\x4b\xf6\x7c\x25\x12\x74\x08\xfc\x06\x79\x0d\x4a\xc6\x7d\xdc\x5d\xec\xcc\xf6\xd0\x79\x7d\xb1\x4f\x53\x19\x8e\xa7\x06\xe3\xb4\x28\xe1\x1c\x8d\x46\x4e\x52\x0b\xc7\xd9\x8e\xe7\x48\x02\x0e\x5e\xdd\xb8\x35\x00\xa9\x11\x76\x1d\x8e\x2d\x25\x51\xb5\xe7\x61\x9e\x3c\x32\xbf\x69\x62\x34\xa6\xfc\xa0\xf4\x5b\xa1\xdf\x08\xe7\xce\x08\xc8\x8a\xcb\xf1\x6c\x6e\xb7\x9e\x54\xff\x37\x6f\x6f\xb6\xdd\xc6\x91\xfc\x0d\xde\xe3\x29\x88\x3a\xfe\xea\xab\x34\x12\x10\x20\xb7\xff\x4b\x91\x49\x1c\xd9\xa2\x6c\xb7\xb5\xb5\x29\xd9\x56\x43\x68\x9d\x22\x90\x20\xca\x2a\x54\xa2\xb3\x12\xa4\x68\x02\xd7\xf3\x0e\x73\x39\x8f\x36\x4f\x32\x27\x23\x72\xab\x05\x94\xba\xff\x33\xa3\x0b\xb1\x90\xfb\x1a\x19\x19\x19\xf1\x8b\xda\xa9\x95\x86\x3f\xcb\xb0\x8a\x38\x4e\x8a\xa3\x3c\x5b\x2b\x86\x71\xcf\x5f\x86\x91\x28\x37\xe5\xff\x0e\xbf\x69\xe1\xab\x28\x3a\xec\xd6\x1b\x96\x2f\x5b\xe4\x2d\xd8\xdc\x66\x85\xe2\xde\xb7\xc7\x50\x7d\xf3\x93\x03\x15\xe5\xcf\xfc\xee\xb5\xe4\x55\x8d\x54\x7e\xf6\xf0\x32\xae\x64\xdd\x55\x44\x17\x14\x2c\xce\x07\x6e\xdd\x78\xe5\x96\x81\x66\xaf\xf2\x14\x63\xc7\x76\x12\xee\x42\xb4\x60\x65\x97\xfb\xf4\x7c\x95\xec\xe2\xb8\xbf\x20\xf7\x32\x38\xac\xc2\x0b\xe7\xab\xb0\x1d\x71\x3c\x9c\x30\x5d\x99\x41\x65\xd2\x84\x27\xcb\xcb\x0a\xa0\xe3\xbf\x52\x89\xa4\x3f\x70\x92\x40\x3c\x7d\xca\x93\x1d\xd1\xf7\xd3\x1e\x2a\xc3\xd8\x8b\xe1\xa2\xaa\xf4\x3c\x82\x46\x60\xfd\xc4\x31\x31\xbd\x23\xe1\xac\x43\x89\x37\x32\x38\x72\x9f\x65\x9f\x43\x75\xf3\x07\xca\xf3\x20\x41\xe3\x50\xcd\x17\x7f\x19\x05\xe1\xc4\xe2\xf0\xbe\x1b\xae\x81\x67\xfe\xd6\x28\x05\x07\x3e\x15\x30\xc1\xef\xc3\x35\x72\xc2\x36\xc5\x9f\x43\xd8\x38\xe9\xc9\x64\x3c\x1e\x9f\x9e\x78\x7f\x15\x90\x4d\x4c\x23\x79\x7d\x95\x25\x8f\xbf\xfd\x96\x9e\xf8\xff\x46\xe3\x6f\x49\x94\x46\x4a\x66\x65\x85\x62\xbc\x88\x0c\xa2\x06\x32\xd2\xe9\x09\x22\x0f\x0d\x4d\xfb\xc7\xad\xf8\x36\x46\x92\xd8\x66\x8b\x5c\xdd\xa5\xba\x86\xd3\x93\x55\x5e\x28\x2e\xd3\x93\xac\xd8\xae\xb3\xc4\xc4\xb1\x6f\xc9\xa9\xbe\xf9\xa2\x18\xd1\xcb\xa9\x45\x51\xbc\x43\xf6\xb5\x0e\x2b\x59\xc5\x71\x2d\xd1\x1b\x81\x18\x9e\x5b\x50\xd9\xa8\x11\xe7\x4e\xc1\xce\x7e\x9f\x58\xe9\x45\x4d\xa8\x71\x12\xe1\x4d\xae\x79\xce\xe9\xd3\xb5\x6c\x13\x73\xbf\x44\x11\x19\xf5\x4d\xbe\xe1\x62\xa7\x92\x72\xb4\xe4\x0a\x2d\x26\xb0\xce\x27\x7a\xef\xb9\xdd\x79\x93\x10\x7a\x4b\xee\xff\x99\x5b\xb7\x7f\x9b\x10\xba\xf4\x6f\x79\x82\x7d\xa3\xd1\x46\xec\x2a\xbe\xdb\x46\x74\x43\x68\xc5\x95\x2d\xfe\x8e\x3e\x1e\x93\x43\xef\x5d\x67\x42\x83\x1b\x19\xa6\xfe\x36\x44\x60\xb8\x49\x02\x59\x7d\xee\xef\x32\xf8\x66\xe2\x6e\xef\x1d\x83\x46\x05\x9e\x49\x83\x84\x4f\xcd\xe8\xa5\x51\x44\x7a\x76\x24\xa3\xff\xfb\xff\xf8\x3f\xbd\x54\x48\xd0\x70\x64\x39\xe8\x57\xea\xdc\xb4\x59\x27\x9b\x84\x41\x17\xe5\x92\x09\x7f\x46\x3d\x30\xe4\xc1\xfb\xe8\x5d\x62\x54\xfd\xba\x66\x4e\xf3\x4a\xdd\x1b\x7d\x49\x9b\x5b\x75\x45\xad\xb4\xbb\xf4\x40\xb6\xd5\x28\x04\xc4\x4d\xba\x08\x1c\x2b\xec\x55\xb0\x3d\xa2\xa0\x53\x8d\xc5\x12\x98\xfb\x9e\x01\xa6\xa5\x55\x38\xed\x5d\x7d\xf5\x9d\x85\xe7\xae\x66\xd9\x71\x5c\x1f\xb8\xf3\x71\x1c\xc3\x18\xb3\x70\x55\x4f\x81\x60\x2e\xac\xdd\x92\x5e\x8a\x89\x24\x29\x1f\x0c\xce\x26\xe3\x69\xd7\x52\x65\xc1\xea\xa9\xe8\xb7\xe3\x31\x49\x1b\xbb\xea\xd0\xfb\x7c\xbe\xc7\xe3\x31\x39\x1c\x34\x63\x8f\xfc\x9e\xb1\xac\xad\x9d\x31\x7c\xbf\x0f\x19\x1a\x80\x1e\xf6\x3e\x0f\xd2\x0f\x82\x96\x9c\x2f\x2b\x83\x11\xe3\x80\xd1\x52\x7d\x39\x0a\xe5\xc6\x84\x7e\xfc\x17\xa5\xc8\x46\x84\x3c\x5a\xe6\x37\xc6\xbf\xd2\xd3\xfc\xc6\xcb\x88\xf3\xff\xf7\x65\xc4\x0d\x69\xa8\xb4\x6e\xbe\xfc\x25\x38\xb2\xb6\x25\x3a\xe5\xbf\x2a\xf2\x55\x0f\x89\x7c\x55\x97\xc8\x17\x0c\xcc\xb7\x5c\x66\x50\x79\xc8\xc3\x35\x65\xc1\xce\x24\x7e\xac\x0f\x5a\xfa\xd9\xa6\x6b\xb6\x07\x15\xc5\xea\xf0\xa2\xfd\x2d\xe9\xc0\x0b\x6d\x82\x8e\x02\x29\x05\xd8\xd1\x76\x5c\xd5\x01\x48\x4a\xdb\x52\xf3\x40\xb3\xbf\xb4\x4f\x03\xb5\xc7\x00\x59\x53\xf3\x40\xb5\xb7\x86\xec\xb9\x2b\x49\x28\x85\x3e\x2e\xb3\x37\xaa\x98\xce\xe4\x29\x5b\xa8\xfc\x86\x5f\x20\xe4\x78\x0f\x84\xe3\x21\x39\xaf\x8f\x7c\xbb\xd2\xba\x63\x18\x2a\xdc\x85\x9d\x00\x65\x3f\x1c\x2e\xb9\x0e\x7f\x97\x27\xe5\x97\x09\xaa\x8d\x08\xb4\x7c\x58\x92\xcb\x03\x4d\xd4\x4c\x65\x3d\x43\x60\xbd\x64\x96\x17\xa9\x3f\xff\x74\x92\xb4\xa4\x50\xca\x53\xf8\x3e\x78\x0c\x0d\xcf\xc9\x79\x91\x92\x40\x11\xf1\xf3\xbc\xe4\x49\x0d\x37\xd4\xf2\xfc\x25\x0d\x64\x82\x0e\x3f\x74\xe8\xee\x2d\xa4\x27\xc0\xbd\xb4\x38\x63\x2e\x16\x15\xf0\x3d\xdf\xce\x0b\xf6\x14\x00\xa8\x42\xa8\x51\x01\x80\x5d\xb5\x90\x81\x2f\xd5\x49\x88\xeb\xc3\x63\x5d\xee\xd6\x07\x36\xa8\x4b\x0f\x80\x19\xaa\xce\x02\x1a\x22\x66\xee\x1d\x07\xba\x32\x7a\x12\xb0\x0a\xa0\x24\x26\x47\x6e\x2c\xf7\xfb\x47\xef\x77\x8f\xc7\xe3\x2b\x73\x23\xc5\x24\x28\xf2\x0f\xaa\x7d\x60\x51\xa1\x8f\x9a\xe5\x7e\xaf\x10\xf1\xfc\x7b\xdf\xae\x44\xd6\x85\xd7\x4c\xd6\x07\xd1\x4a\xb3\xf5\x5a\x0b\x56\x8e\x12\xbb\xc5\xba\x43\xfa\x6f\x7c\xc6\x07\x15\x5c\x94\xcb\x24\xc8\xd8\xf1\x3a\xa3\x42\x11\x41\x5f\xd6\x64\x04\x71\x8c\x52\x0d\x73\x04\x68\xd6\xed\x67\x95\x00\xf9\xae\x89\x6b\x64\x82\x10\xfc\xc1\xd0\x6f\xef\x22\x9a\xbb\x9f\xba\xd2\xfc\xcb\x44\xf2\x4e\x4c\x44\xfb\xce\xac\xfc\xc4\x48\x38\x9c\xcc\xad\x26\xf5\xa0\xfc\xb8\xcc\x19\x8c\x3b\xcc\xad\x2e\x80\x4f\x0a\xe0\x0c\xe3\x38\x49\x4c\x51\xfb\xbd\x03\xbe\xd7\xe5\xbd\xc6\xed\x12\xc8\x49\xa9\x8b\x7b\xb1\x2b\x54\xbe\x2d\x78\x40\xa7\x39\x21\xd8\x8e\x66\xbe\x76\x27\xbd\x7e\x6d\xad\x70\x2f\x19\x6f\x6d\xd8\x92\xbd\xe1\x6e\x60\xb8\x41\x81\x78\x89\xee\x3e\xb3\x00\x36\x54\xd3\xda\x5a\xca\x95\x45\x0f\xb5\xdf\x26\x5d\xcf\x02\x49\x8e\xae\xb2\xe5\x7e\xdf\xcf\xf7\xfb\x1c\x3f\xc7\x80\x06\x75\x87\x38\x51\x1e\x71\xcd\x46\xdc\xb8\x08\x00\x40\xb3\x5a\x61\xaf\x7d\xa5\x2e\x0b\xcd\xea\xc1\x90\x01\xe4\x41\xfb\xbd\x03\x82\xe8\x9a\x1a\xba\x63\x1c\x4f\xbd\xef\xc5\xae\x54\x71\xec\x21\x7d\x9d\xc0\x06\x0d\x4c\xfa\xa6\x9c\x82\x55\x33\x0f\x95\x32\x77\xda\x1c\x0b\x56\x80\x6a\xe9\x14\xff\xcc\xf0\x8f\x4f\x98\x42\x40\x2f\x63\xf7\xa5\x58\xf2\x74\x31\x5b\xf8\x38\x8a\xaa\xd8\x61\xe0\xe3\xf9\x30\xf8\xf5\xcd\xfc\x60\xa1\x9a\x4d\xfe\x6a\x36\x9e\x87\x2a\xad\xb3\xc7\xae\x94\xf1\xa1\xa7\xe4\xdd\x3d\xde\x93\x5f\x0b\x83\x92\x49\xad\x9f\x5e\x9a\xf9\x0f\x1d\x51\x93\x08\xaf\x40\x87\xdf\x2f\xe3\xda\xf2\x9f\xea\xa3\xde\x68\x92\x35\x4b\x25\x74\xe5\xe2\x96\xfb\x3d\x1f\x65\xcb\x25\x22\x23\xaf\x40\x70\x69\x8e\xb7\x27\x45\x01\xa1\x15\x1c\xfa\x61\x1a\xba\x43\xef\xee\x9a\x6d\xf1\x8b\x6e\x1a\x24\xda\x81\x9f\x52\xdc\x18\x9a\x22\xfd\xe0\x11\x67\x41\x51\x11\x39\xcc\x0d\xdf\x5c\x71\x19\xac\x76\xcd\x9c\x36\xd3\x1f\x91\x29\xd7\x6e\x77\x4d\x54\x5b\xd2\xc6\xb9\x3d\x42\x88\x79\x03\x0c\x37\x7c\x4b\x32\xec\xb1\xa6\x78\x06\xda\xa9\x8b\x33\x7b\x18\xb2\x06\x08\x20\x5c\x0e\x69\x37\x85\xa8\x31\xc4\x7f\x88\xa4\xb9\xf2\x8f\x3e\x81\x35\xd2\x1d\x7d\x10\xd3\xec\x7e\x63\xa0\xbf\x90\xf6\xf4\xba\x70\x89\x6b\x64\xa6\x1b\xa4\xb8\x4e\x7c\x68\x07\x66\x71\x48\x81\x3a\xf1\x8b\x6b\x64\x49\xdf\x41\x4c\xa3\x7e\x2a\x2f\x96\xb9\x12\x1d\x0e\x5d\xba\x7b\x00\xa6\xd1\x01\xd1\xa8\xcb\xad\x15\x6b\x90\x10\x7d\xea\x6d\x44\xf9\xa4\x5c\xf0\x4a\xe1\xc5\x2f\xcb\x4b\x6f\x98\xf2\x93\x19\xf7\x65\x7e\x43\x15\xe9\x78\x0d\xfa\xb2\xa7\x20\x5b\x86\x63\x1b\xbb\xdf\x76\x74\x0a\xfb\xac\xf3\xb9\x47\xac\x65\x7e\xf3\xf9\xf7\xab\x87\xde\x74\x82\xad\x85\xdb\xb6\x39\xe4\x09\x99\x3a\xc1\x67\x30\xc4\xe9\xcf\xfe\x6c\xfe\x97\xb6\x45\x0d\x9e\xfa\x5f\x78\x09\x3a\x51\xb6\xf4\xc6\x13\x50\xc2\x9b\x6d\xa3\xf5\x97\x26\x7e\xb4\x70\x65\x5e\x65\x9a\x2d\xfd\xd2\x65\xe6\x18\x12\xbf\x37\xfa\x4d\x04\x6f\x1d\x08\xc4\x36\xd8\x1b\xad\x44\x18\xac\x93\xb9\x0d\xd2\xef\x00\xfd\x76\x09\x5a\xc5\x3c\x0b\xb7\x4d\x6d\x38\x1a\x8f\x96\x8d\x87\x20\xfb\x32\x14\x50\x43\x4b\xbf\x5b\xe4\xf0\x0b\x19\x96\xde\x31\x2a\x6f\xd4\x3e\x35\x47\xf2\x30\xd7\x52\xda\x34\x47\xf9\x15\x19\xc7\x25\xd8\xfc\xd5\xdd\x56\xfc\xc0\x13\x65\x45\xd1\xa0\x73\xad\xef\xc8\x89\x44\x56\x06\x98\x1b\x62\x0d\x83\xbb\xd7\x27\x5a\x02\xd2\x80\xcd\x6d\x2d\x05\xdf\x51\x10\x5e\x58\x29\x3c\x48\x30\x5a\x9c\x1a\xdc\x75\xd1\x1e\x5e\x00\xae\x89\x95\x4b\x03\x1a\x8c\x74\xc6\x26\xfb\xbd\x30\xd0\xa7\x1e\x0b\x3c\x7c\x33\xcb\x8d\xd9\x4f\x98\x63\xcc\x58\xc2\x59\x29\x01\x2a\x10\x71\x80\x08\x6a\xd7\x3f\xc9\x13\x4c\xa8\x19\x10\xb4\x9b\xaf\x98\x0f\x29\xc1\xe5\x95\xe6\x54\xc2\xa4\xbc\x95\x94\x6b\xde\x09\x1c\xa2\x86\x9e\x54\x51\x03\x1f\xaa\x15\x1e\xfd\x6b\x67\xdb\xe6\x11\xea\x90\x13\xf3\x1d\xa2\x0b\x63\xf1\xf2\x34\xbf\x81\x35\x8b\xf7\x7f\x68\x48\x11\x34\x64\x37\x98\x98\xa6\x98\x3c\x3e\x14\x1a\xd3\x85\x8b\x6c\xb1\x07\x60\x06\xbc\x1b\x9f\xa6\x6a\xbe\xc7\x84\x8a\x22\xf0\xf3\x41\x2b\xe3\x71\x02\xee\xf8\xfa\x3a\x92\x01\xc9\xf3\xe2\xa7\x5d\x82\x2a\xdb\x93\x10\xd8\xdb\xdf\x18\xaf\x9b\xde\x45\xd1\xa0\xb4\xe7\xe4\xba\xd6\xc2\x29\x8a\xf0\x3e\x67\xfd\xd3\x5b\xb0\x65\x23\xbf\x49\xec\xbd\xf2\x9a\x46\x11\x21\xf4\x46\xe4\xcb\x44\x0c\x98\xb1\xcc\x2f\xe8\xa2\xab\x32\x84\x48\xc3\xea\x16\xc4\xb0\x93\xe0\x84\x6b\xf9\x22\x93\x1f\x01\x65\xbe\x44\x37\x19\xc6\x43\x06\x4d\xb6\x6c\xb0\xa0\x21\xf3\xe1\x88\x58\xbe\x64\x6c\x7b\x20\x8e\xac\x41\x1b\x56\xfe\x66\x54\xb0\x95\x5e\x3e\x80\xf5\x05\xf8\x60\x62\xc0\x5e\x59\xf4\xff\x02\x71\x41\x8a\x91\x12\x04\x05\x30\x15\x41\xd9\x93\x71\x6b\xc1\xda\x1d\xc0\x21\xb0\x32\xc6\xc8\xbe\xee\xf6\xea\xf6\x0e\x1d\x78\xe9\xa0\x03\xbc\x4b\xc2\x18\x50\x0d\x7e\xf4\x8f\x64\x2b\xf9\x7e\x99\xdf\xec\xb7\xe4\xab\x47\x39\x5e\xd2\x71\xde\x5e\x66\x1b\x8e\x18\x17\x7a\x9b\x5b\x53\x83\x6f\xda\xd3\xba\x36\x21\xbf\xda\x97\xed\xfe\xda\x36\x2c\xc3\x4e\x57\xb0\x76\x08\x15\x03\x66\xe0\xba\xe1\x8d\xf7\x54\xaf\x15\xaa\xfa\x4c\x9e\x12\x70\xfd\x1b\xec\x1a\x6b\x8e\x78\x48\x14\xad\xe8\x82\x66\xb4\x20\x84\x2e\xf5\xf8\x21\xc5\x5a\xf3\x24\x33\x33\x55\xd0\x0b\x1b\x5a\xd4\x31\x89\xc9\xe9\xca\x3d\xcb\xc6\xf1\xd2\x7d\x9f\x92\x7c\x95\xdc\x88\x64\x45\x18\xbb\x11\xc9\x92\x90\xd5\x68\x2b\xb6\x09\xa1\x4b\xf3\xb7\x18\x0e\x9d\x14\x53\xcf\x62\x9f\x2d\x67\xe3\xb9\x31\x5f\x58\x21\x82\x30\x24\xb7\x5f\xd9\x60\xe0\x1e\xae\xd7\x6c\x4c\xb7\x6c\x4c\x37\xb0\x00\xe8\x0d\xe4\xa5\x77\xfe\x29\x7b\x63\x9f\x09\x6e\xdc\x53\xf6\xfa\xec\x2e\x8e\x37\xe1\xcb\xf5\x5a\x37\xae\x1e\x70\x4a\x06\x83\xb5\x9b\xee\x6b\x06\x5d\xa0\x57\xd8\x07\xfa\xc1\x57\xe0\x34\xc1\xf5\x3e\x5c\x39\x03\x8f\x74\x4c\xe8\x55\x18\xb5\x0c\xa3\xc8\xe9\xf6\xec\x43\x1c\x5f\x87\x75\xba\x82\xb6\xc3\x09\x61\xec\x2a\x8c\xbb\x0a\xe3\x74\xd3\xb6\xbd\xd5\x6c\x15\x00\xb3\x5e\x3b\x30\x45\x5f\x0c\xa1\x7a\x4c\x70\x67\x60\xec\x1a\xb7\xec\x2d\x83\x29\x5d\x13\x7a\xc1\x60\x52\x5d\xdb\xa0\x77\xae\x80\xd4\x63\xca\xf9\xc9\xdd\xef\x75\x81\xfb\xfd\x96\x27\xb7\xf4\x82\x4c\x93\x1f\xa5\x59\x11\x2b\x7a\x4b\x2f\xa8\x73\x6e\x45\xfb\x63\x62\x8d\x05\x1f\x7e\xd8\xee\x16\x06\x35\x55\xdb\x1e\x4e\xdc\x11\xdc\xca\xda\x62\x2d\xbc\x60\xce\xc8\xbe\xec\xa3\x78\x4b\xfe\x55\x4f\x4e\x68\x77\x76\xd0\xaf\xa9\xf3\xc9\xb4\xc9\x59\x93\x03\x6d\x96\xde\xf6\x21\xba\xd8\xd4\xe4\x5b\xd3\xaf\x3c\x47\xcb\x25\xb1\xdf\x24\x45\x99\x1e\x00\x80\x64\x2a\xeb\x33\xee\xe5\x81\xf0\x06\x6e\x33\x7d\xe0\x24\x90\xb5\xe8\xb4\x74\x8c\x57\xb2\xd6\x73\x4a\xed\xe5\x65\x64\x08\xe1\x85\x89\x65\x86\x62\x76\xeb\x16\x40\x8e\xb6\xa7\xaf\x8e\x0e\xed\xf7\x47\x1a\x77\xa9\xa4\x1e\x4f\x4d\xb0\xbf\x37\xcb\x3f\xb1\xf7\x7a\xbb\x1f\xa6\xa0\xf2\xa3\xbf\x52\x1f\x48\xe8\x98\x3c\xfc\x8c\xe4\x26\xa2\xd9\x27\xac\xb3\xa6\x33\xc7\x5b\x4a\x0f\x1f\x44\x43\x8f\xed\xf8\xb3\xd3\xf8\x50\x7b\x68\x22\xf4\x12\xdf\xc5\x2e\x11\xe8\xe3\xde\x6a\x44\xa4\x9f\x38\x6d\x1c\x34\xe9\x47\x7e\xa0\x2f\xc2\x57\xaa\x7b\xc3\xb1\x1d\xbb\x65\x19\xc8\xbf\xba\xc7\x83\xf9\x81\x22\xd8\x6d\x53\x31\x94\x33\xe0\x10\x3d\x1e\x04\x3c\xc0\xb8\x7c\x7d\x56\x2f\x47\x33\xf5\x35\x40\x42\x93\xa0\x16\xe6\xb9\xc1\x3a\xae\x45\x3b\x25\x20\x5c\x58\xfe\x24\x6c\xfc\x1c\xec\x76\xdd\x2f\xdd\x2a\x14\xe2\x49\x8b\x3c\x5b\x5a\x2c\x64\x2b\xde\x93\xa8\xb3\x5c\x1a\x44\x64\xa7\x0e\xe9\xef\x95\x4b\xce\xb7\xdf\x8b\x6d\x6d\xe4\xbc\xc7\xcf\xd9\x9c\x3e\xd8\x4c\x3e\x53\x0e\x8f\x76\x63\x84\x83\xae\x81\x0e\x98\xb9\x1d\x83\xcd\xe9\xb5\x3c\x22\xd4\xc6\x55\x6f\xba\xe6\x23\x61\x77\x33\x9d\x63\xd2\x7a\x0b\xb9\xc1\x85\x0c\x2b\xe7\x73\x0b\xd3\xe8\xa7\xd7\x6b\x89\x5a\xed\x98\x86\xcc\x19\xec\x79\x19\x27\x4d\x94\xea\x76\x95\xd2\xce\x5d\xc9\xea\xb0\xd5\xc6\x4b\x85\xa2\x65\xe0\xa0\x22\x8e\xb7\xa8\xe2\x05\xb2\xd4\x33\x36\x26\xce\x7b\x00\x7e\x0c\x27\x87\x03\xfd\xa3\xb6\xd2\xd1\xd1\x62\x6b\x99\xdf\x99\x31\x36\x2b\xc1\xf9\xea\x20\x07\xaa\x44\x47\xfa\x9b\xe3\xe9\x61\x7c\x8e\xed\xa4\xc0\x1f\x5f\x90\xdf\xa0\xcf\xfa\x14\x8b\x75\x3d\x7e\xb1\x3e\xa0\x17\xd8\x2b\x45\x3f\x28\x63\xe3\xe5\x7c\xe8\x82\xa1\x93\x73\x6c\x3d\x0e\xdc\xb2\xde\xaa\x4e\xf4\x15\x9a\x19\xf3\x62\xee\xdd\xf6\x59\x2f\x35\x3b\xc6\xd1\xba\x98\xa3\x75\x71\xbe\x4a\xd4\xd9\x6e\x9a\xe4\x6c\x4c\x05\x9b\x38\x2f\x56\x24\x55\x67\xc5\x54\xb0\x24\x67\x6a\xb8\x23\x83\x49\x9a\x54\x9a\x80\x5a\x71\x30\xc0\xe8\x15\x71\xac\x8b\xf9\x66\x7e\xae\x10\x25\x25\x11\xac\x18\xee\xf4\xcd\x46\x9d\xeb\xd8\x24\x73\x06\x85\x4e\x6f\x01\xb5\x42\xa0\xfe\xc7\x73\xba\x83\x52\x24\x63\xa0\x7a\x53\x71\x09\xc8\x8a\x53\x6c\x44\x6a\x33\x43\x49\x92\x50\x6b\xc8\x86\xc8\x75\x39\x41\x8b\x5f\x68\xc5\xf0\xf1\x9c\xe9\x42\x87\xdf\xcc\xf1\xf7\x64\x1e\x14\x78\x4a\x74\x8d\x8f\x07\x49\x35\x64\xdf\x90\xb9\x77\xd6\xa5\x39\x78\x6b\x4b\x27\xe3\x38\x67\xd0\x01\x2c\xf7\xcc\x77\xd7\x76\x14\xaa\x18\xfc\x65\x1e\xc7\x7d\xfd\xf1\x6d\xbb\x8e\x04\xc6\x5a\x77\xcd\xf5\xdd\x7a\x3a\x34\x56\x9c\x20\x3d\x37\x2f\x98\x69\x0e\xf8\x72\x82\x5a\xc9\x75\x9a\x51\x6f\x59\x9c\xee\xa8\xb5\x38\x4e\x43\x35\x94\x0b\x8f\x90\x62\x04\xf0\x20\x27\xaa\xe1\x48\xb0\xfb\x03\xe5\x2d\xf3\x75\x83\x78\x03\xfe\x9f\x48\x9d\xd6\xd6\xf1\x2c\x80\x7e\x35\x91\x29\xd4\x9c\xdd\x87\xee\x10\x1b\xf8\xb9\x0d\xb0\x04\xac\xec\xc5\x11\xa8\x03\xd2\x6b\x56\xdf\xe5\x7f\x4b\x37\xe3\x42\x35\x7c\x89\xcd\xd4\x3c\xd0\x33\xba\x84\x56\x40\x5b\x02\xa4\x2e\xc4\x50\xd1\xe7\xff\x6f\xc6\xe7\x7d\x3d\xe6\x0d\xff\x64\x2c\x46\x5a\x51\x1e\x78\xa5\x0e\x0f\x14\x5a\xc1\xd6\x3c\x11\x6f\xb2\x4f\xfa\x42\x1e\xc8\x59\x68\xbd\xcb\x2f\x77\xc0\x89\x54\x0d\x3f\x83\x9f\x94\x27\x1f\x46\xea\xb4\xcd\xae\xf9\xef\x56\x5c\x96\xb8\x87\x7d\xfb\x61\x9e\xf6\xf7\x7b\x17\x73\x25\x96\x77\x24\xf0\x52\x1f\x78\x31\xec\x2e\xfd\xdd\xbf\x5b\x7a\x0d\xe7\xe7\xa3\xaa\x01\x75\xaa\xd1\x6d\xbe\xbc\xe6\xca\x23\xa3\xa3\x1f\x13\x17\xee\x01\xbd\x72\x12\xa6\x9f\xe5\xf3\x51\x76\x25\x6e\xb8\x95\x5c\xfc\x50\xd6\x22\x49\x0f\xd1\x63\x99\xa0\x16\xbf\x60\xc0\x04\xdc\xbb\xf5\xc0\x46\x81\xe7\x35\xd9\x43\x78\x8f\xa8\x10\x8b\xac\x88\xac\xf3\xe6\xd7\x79\x82\x2f\x80\x26\x9c\xb1\x72\x9a\x0d\xd8\x2e\x34\x01\x4e\xb3\x61\x03\x22\xc5\x08\xf9\x23\x3d\x62\x11\xe8\x6d\x47\x38\x86\x50\xa3\x79\xce\xe3\x1d\x3a\x14\xc7\xd4\x35\xb3\x01\x80\xb4\x6f\x07\x49\x50\xd0\x74\x9c\xea\x59\x22\x3d\x8b\x91\x0c\xd6\x46\x8d\x14\x9f\x20\x85\x81\xd8\x65\x3b\x2a\xd1\xfc\x75\xc0\x76\xd6\x0e\xc9\x0c\x51\x16\x0c\x51\x46\x03\x17\x3b\xaf\x43\x88\x1d\xb0\xd0\x62\x4e\x70\x63\xcc\xd5\x4b\x66\x8c\x80\x41\xdd\x16\x15\x69\x6d\xe7\x25\x29\x87\x4c\xb7\x82\xe6\x43\xf6\x24\x44\x32\x70\x43\x2a\xf7\xfb\xbe\x6c\x3b\xca\x43\xc0\xdc\xa3\xc6\x5d\x03\x26\x4c\xa5\x03\xc4\xfd\x34\x5e\xe6\xfe\x95\x71\x0d\x2d\xe3\xcb\x61\xe6\x2d\x99\xf3\x21\x18\x80\x05\xe4\xea\x97\x1a\xb8\x89\xe5\xae\x60\xcd\x34\xbd\x3c\x12\x0a\x0b\xbc\xa4\x1b\xfc\x03\x0e\x1a\xf3\xba\xff\x9c\x37\x41\x71\x54\x90\x7b\x8f\x7e\x98\x28\xea\x9e\x7c\x01\x51\x25\xa7\x8a\x66\x0d\x27\x90\x54\x78\xb0\xf5\x29\xce\x3c\x33\x96\xcd\xd6\xc2\xd9\x2c\x08\xdb\x96\xaa\x56\x7d\x15\xc2\xd7\xec\x90\xff\x95\x88\x4f\xfb\xbf\x1e\x3b\xd1\x3d\x63\x3c\x4b\x24\x89\x63\x15\xc7\x26\xf6\x6c\x37\x53\xfa\x70\x44\x28\xdb\x84\x33\x95\x25\xba\x84\xe1\x50\xcd\xc9\x30\x71\x65\x4c\xc7\xe9\x84\xd0\x52\x93\xb3\x54\xf3\x33\xa6\x9c\xb3\x5d\x60\xb6\x1e\x14\x39\xb0\x45\xea\xa3\x08\x6a\x65\xbb\xd9\x60\xa0\xcb\x74\x45\xea\xd2\x74\x99\x71\x0c\xc2\x5e\x25\xe2\x98\x9f\x4b\x60\xf9\xa6\x59\xc2\x87\x13\x92\x66\x60\x6d\x7a\x28\x99\x01\x81\xaf\xfb\xde\x04\xdf\x0f\x00\x16\x54\xba\x5d\x83\xde\x37\x0b\x40\x9b\x07\x79\xd6\xce\x2e\xed\x2c\x31\x2e\xdc\x17\xac\x4a\x0a\x5a\x65\xe8\x15\x22\xf4\xa5\xd5\x67\x7f\x15\x71\x9c\x2c\x10\x74\x1a\x92\xfd\x55\x10\x42\x17\x81\xf7\xc6\x1a\x36\xd1\xb8\xa7\xc0\x9f\x15\xb6\x2b\x34\x83\x6f\x1c\x0f\x92\xd5\x50\x06\xbe\x06\xd7\x0b\xc7\x9d\x8a\xbe\xd6\xbd\x18\xd4\xa8\x52\x6d\x6d\x5b\xb8\x07\x84\x79\xc8\x9d\xa5\xfb\xa0\x34\x67\x7b\xe8\xd0\x4e\x35\x7d\x0b\xad\xd1\x81\x89\x83\x20\x1b\x7d\xfa\x85\x17\xac\x04\xdc\xb7\x7c\x24\x76\xaa\xca\x97\x08\x91\x94\x07\x7e\xee\xba\x80\x02\xc1\x53\x83\x1c\x74\x92\x4b\x72\xe6\x58\xf4\x17\x2a\x29\xad\xb7\x00\xda\x1f\x53\x8b\x1e\x94\xb3\x8f\x79\x52\x52\x89\x0f\x06\x88\xb2\x59\x5a\x37\x69\xf9\x2a\xc9\xcf\x45\xbb\x08\x97\x82\x22\xbc\x5e\xdd\x91\x7b\x7f\x4c\x27\xa4\xe7\xd1\xb6\x03\x1c\x1e\x48\x9e\x93\xd3\x53\xbb\x1b\x7f\xd2\x5d\xca\x60\x3f\x4a\x42\x77\xec\x79\x99\x64\x7a\xed\xec\xe2\xd8\x78\x79\x18\x5b\xdf\x9a\xfd\xdd\x7e\xdf\x4f\xaa\xd1\x62\x7d\x8e\xc2\xdf\xd1\x62\xbd\xdf\x57\xc0\xbb\xbb\x80\x38\xae\x60\x28\x03\x0f\x12\x55\x2f\x67\x4f\xf2\x24\x63\xc5\x48\x09\xeb\x42\xda\x8d\xe9\x4f\xaa\x2d\xac\xcf\x87\x70\x46\x59\x89\xfd\xe3\xaf\xfd\xd8\x76\x98\xa5\xd2\x1d\x33\x68\x59\x21\xea\x78\x59\x33\xcd\x5d\x9b\xf7\x21\x3c\x23\xa9\xa2\x3b\x4f\x6b\x58\x7f\x4c\xc5\xb9\x05\xaf\x30\x80\x10\xc3\x2a\x15\x67\x60\x36\x6b\x02\x06\x55\x9a\x64\x08\x18\x00\x36\xaf\x07\xdc\x46\xbf\x40\x43\x57\x16\xe0\xc8\xba\xd2\x67\x32\xd3\xe1\x6b\x56\xc2\xdf\x2d\x2b\x92\x25\xa1\x1b\x96\xd1\x1b\x56\x24\x6b\x42\xef\x18\xa8\xf5\x95\xe7\x37\xc1\xec\x4a\xba\xa6\x77\x7a\xee\x80\xdb\x3e\x85\xd3\x69\x31\x5d\x33\xb6\xdc\xef\xf5\x20\x6b\x3a\xba\xa4\x13\x92\xae\x87\xcb\x33\x36\xf1\x97\x9c\x6b\x56\x9e\x6d\xf7\xfb\x72\xb8\x3d\x63\x37\xc3\x72\xba\x4c\xd7\xf4\x8a\x95\xc3\xe4\x9a\xb1\xe5\x74\x9b\xde\x90\x53\x80\xfa\x09\x51\x7e\xae\x11\xd8\xc7\x89\xaa\xa1\xfe\x6b\x0a\x39\x36\xe9\x1d\xbd\x3a\x1b\x4e\xa6\xc3\x49\x7a\x75\x3e\x01\x67\x9b\xd0\x61\x23\xa2\x5d\xf0\xbc\x48\x56\x8f\x1e\x13\x7a\xcb\x96\x83\x0f\xe6\x39\xe2\x96\x2d\xdd\x52\xbb\x60\xe3\xd3\x8b\xb3\x0f\xa7\x83\xc1\x05\xb9\xc5\x96\xdf\xd2\x09\x16\xf2\x8a\x15\xc9\x2d\xe9\xbd\x3a\x2f\xa7\xc9\x9a\xdd\xd2\x1b\xf6\x8a\x26\x77\x2c\xd3\x97\x9a\x9b\x01\x9b\xf0\x6f\xf4\x88\x7e\x20\x69\xb2\x64\xb7\x74\xcb\x5e\xc1\xc0\xad\x86\xec\x43\xb8\x70\x9e\xaa\x1a\xf6\x0d\x6f\xb1\xb1\x4d\x70\x44\x1f\x63\x5f\x6b\x18\xbb\x52\xe4\xfe\x0a\x1d\x4e\x6f\x25\x8f\x9a\x2c\xf8\x5f\xfe\xfb\x74\x30\x50\xe4\x4a\xd5\x90\x98\x1b\x80\xfa\xba\xdc\x97\x62\xc9\x13\x04\xd7\x69\x24\xd6\x45\x5f\x81\xe7\x80\x7f\xa5\x94\x43\x0d\xba\xf1\x4a\xd9\xb7\xd4\x2b\x55\x83\x88\x7c\xf4\xed\xd8\x41\xcc\x01\x42\x79\xbb\xaf\xfa\x92\xf8\x22\x28\x0c\x10\xd8\x03\x5f\xd0\x2f\xbb\x87\xd1\xdd\x13\x9a\xa3\xe8\x22\x8c\x66\x45\x88\x2d\xe4\xfe\x45\x84\x4a\x37\xa8\x54\xdf\x4e\x7a\xb5\x0e\x49\xe2\x78\xac\x63\xc6\xf0\x39\xb3\x10\x90\x16\x54\xe8\xd1\xc4\x75\x36\x3f\x7f\x1c\x74\xd6\xdf\x69\x72\x38\x11\x27\x63\x58\x66\xcf\x15\x7d\xa6\xe8\x9f\xc6\xb9\xf2\x77\x8a\x8d\x3d\x7d\x78\x6b\x2e\x6a\xf0\x30\xcc\xee\x17\x9b\x94\x03\x76\x9c\x15\x71\x6a\xba\xa3\xef\x9b\x38\x86\x29\xbe\x19\xe2\xb1\x42\x03\x0c\x3d\x9d\x2e\x70\x6b\x85\x90\x73\xea\x4e\x1f\x78\x3a\x0a\xf1\xf8\x5e\x5d\xfd\x51\x61\x4c\xdd\x8d\xd5\x8f\x20\xde\x96\x9d\x71\xdf\x67\x20\xd3\x1f\xb7\x35\x15\x5c\x8d\x2f\xf0\x8e\x05\x4d\x75\x97\x1d\xe3\x7f\xd8\x5e\x4f\xea\x3f\x5f\x0b\x53\x17\xaa\xb3\x68\x5a\xb6\x4c\x07\x83\xef\xd4\x81\xfe\xa9\xa6\x7f\xaa\x91\xd8\x56\xd6\x89\x3e\x0c\x0c\x49\x2d\x6e\xa0\xb8\x2d\xab\x1f\xa4\xd8\x6d\xd9\x9f\x8a\xdd\x8b\x6d\x95\xce\x4c\xd4\x9c\x2e\x79\x91\xdd\xf1\xa5\x6e\xf2\x55\xb6\xf8\x58\xa5\xb3\x79\xb0\x4d\x7f\xac\x21\x5f\x37\x4a\x03\x61\x0b\xd8\x45\xb7\xd4\x73\xe1\x16\xda\x28\x99\x6a\x6e\x63\x29\x10\x0a\xad\xe9\xf5\x6d\x26\xe7\xa3\x45\x56\x14\x49\x1d\xa3\xd9\x42\x53\x0a\xa7\xf8\x57\xf3\x0c\xab\xc3\x67\xe5\x1c\xdf\xdc\xbb\xe7\x07\x65\x1f\xcd\x58\x9c\xa1\xb3\x63\x99\x6c\x5d\xe4\x58\x82\x59\x77\x81\x83\x41\xd0\x0b\x9a\x83\xd7\xb5\xc3\xed\x3a\x2f\x78\xe2\x3b\x4c\x0e\x24\x51\xe4\xb0\xca\xcb\xac\x28\xee\xee\xcd\x12\x6f\xf9\xc4\x0b\xba\x0c\x23\x04\x7d\xd5\xa3\x64\x14\x76\x20\xd7\x69\x6d\xe4\x3d\xf9\x83\x91\xa1\x1d\xee\xf5\x7e\x55\x89\x1e\x6b\x1c\xe1\x8e\xf8\x7f\x7e\x26\xfe\xb7\xcf\xc4\xff\xf0\x99\xf8\x77\x26\x1e\xc7\x20\xf0\xde\x59\x5f\x68\x35\x6d\x8d\xd3\xee\xe5\x65\x20\x28\xfa\x2a\xb0\x38\xfa\xbe\xc8\xb7\x5b\xbe\x8c\x63\xe5\x8d\x8d\x90\xe4\x02\x89\x01\x75\x92\x3a\xae\x2c\xeb\x4e\x39\x54\x9d\x80\xb2\x54\x19\x3a\xf2\x4c\x93\x11\x59\x77\xff\x02\xe8\xb0\x06\xaa\xc2\xdc\x15\x31\x7e\x93\xc9\xeb\xbc\xfc\x0e\xf1\xa2\x86\xcd\x16\x74\xe5\x40\x63\x41\x40\xda\xc5\x56\xd6\xcb\x6e\xf6\x17\x75\x61\x34\xaf\xc2\x47\x35\xfa\x12\xc7\x4f\x31\x74\xb3\xab\x94\x41\x0e\xe5\xa3\x80\x56\xa2\x8e\x92\x23\x89\x08\x6e\x07\x8f\x66\x96\x0a\x81\x51\xb9\xa7\x41\x40\xb9\x83\xdf\xc8\x3a\xb6\x14\x64\xea\x69\x0c\xe7\x78\xee\xf4\x4b\xc8\x7e\x2f\x1b\x72\x26\x3d\x67\x9d\x98\x97\xb6\x4b\x2c\xec\x05\x7a\xfb\xfc\x19\xf4\x8e\xc2\xd0\x7b\x7d\x9d\x08\x5a\x6f\x5e\x59\xd3\x5a\x7b\x0e\xb4\xd6\xe9\xd0\xdd\xab\x39\x59\xb0\xc6\xe5\x53\xe3\x26\xa8\x5e\xc7\x57\xe8\x24\xd2\xa6\x0a\x1d\xc1\x3e\xb0\x8a\x7b\xcd\x52\xe3\xf8\xef\x38\x37\x57\x99\xb4\x22\xc6\xe7\x3a\xa4\x3d\x32\xfd\xee\xa1\x81\xb9\xc8\x96\x7f\xec\x2a\x5c\x25\x6f\x04\xdb\xa8\x44\xf9\x02\xfc\x57\x4d\x31\x01\x59\xe2\x6f\xa8\xaa\x4b\x36\xac\x64\xb1\x56\x62\xad\x7d\x66\x10\x31\xa1\xb3\x32\x91\xdd\x5b\x45\xb6\x1c\x0c\x0d\x1a\x65\x0f\x56\x2a\x51\x64\xa0\x5a\xf0\xcc\xb0\x62\xb3\x4f\x97\xee\x64\x0c\x61\x6e\x3e\x5f\xee\x70\xa9\xcb\x25\x84\x26\xcd\x31\x87\x85\xd9\x38\x94\x09\x2a\x25\xa2\x79\xc3\xd2\x1b\x7e\xcb\x63\x2e\xd2\x8c\x76\x5b\xe8\x21\xe2\x87\xc6\xc4\xf7\xec\x36\xaa\xb5\x0b\xc8\x4f\x5d\x98\x64\x08\x44\x5e\x76\x0e\x3e\x6e\xf8\xc6\x58\x9c\x19\xc5\x29\x17\x10\xc7\x37\x32\x09\x5d\x80\xb7\x51\xac\x7d\xe2\x66\x69\xa0\x93\x10\xac\x84\xa6\xf0\x77\x12\x78\x01\xd7\xbd\x8e\x63\x6b\xd0\xc1\x9e\x0a\x30\xb4\xef\x3b\x5e\x78\x9d\x55\xcf\xd0\x18\xa3\x15\x94\x10\xd2\xeb\x18\x64\xbd\xe9\x1f\x76\x57\xd7\xca\xa2\x6f\xba\xdd\xf3\xea\x59\xbe\xbe\x51\x2e\x43\xc2\x4c\xe2\xf8\x2d\x10\x0a\xbf\x90\x3d\xa1\xf4\xbb\xf1\xaf\x1d\x69\x9a\x6b\x25\x8e\x73\x05\x6a\x43\x6d\x64\x93\x80\x93\x6c\xf7\x0a\xed\x34\xc1\x7c\x10\x74\x25\x64\x1c\x5f\xf3\xa6\x5b\xd6\x77\x0f\x50\x0f\xab\xb1\x88\xaf\xd3\xcd\xa6\xff\x0d\x9a\x6e\xc8\x91\xf1\x50\x24\x47\xb7\x6b\xce\x0b\x78\x78\xf9\xdd\x82\x96\x06\x94\xd1\x1b\x07\x84\x2b\xa9\x5f\x23\x94\x60\x29\x15\x14\x53\x2b\xf4\x9d\x81\x46\x68\x95\xac\x69\x7b\x87\xa9\x6f\xbd\xf2\xbe\x21\xc1\x97\xc6\x59\xad\x33\x0f\x3e\x86\x8f\xd5\x2a\xd3\x00\x64\xb5\xa8\x0f\x86\xd3\xa0\x36\x02\xd6\xec\x9f\x31\x4b\xd6\xe9\x68\x67\xc3\x6b\x29\xda\x83\xd6\xd1\x5d\x20\x59\xed\x91\xed\xee\xf0\x51\x18\xaf\x56\xb1\xc8\x99\x1c\x21\xb7\x61\x6d\x47\x3b\xac\x23\x6b\x15\x77\x74\xf9\x39\x3a\xc2\x0b\x48\xc6\x3f\x01\x47\xbc\xb6\x32\x2c\x0b\xde\x86\x53\x76\xfe\xb1\x92\x32\x94\x5e\xe1\x03\xca\xb7\xe0\xf6\xdd\x08\x8a\xfa\x13\x9a\x19\xbf\x86\xa0\xc7\x1a\xc7\xb2\xcf\xd4\x14\xd1\xd8\x48\x9a\xd1\x1d\xfb\x55\x26\x3c\x74\x5d\x06\xf2\x63\x14\x23\x37\x5c\x9a\x6d\x29\xbc\x47\x90\x61\x60\xfe\xd8\x99\x1e\xc2\x8d\xbf\x26\x0b\xa6\x49\x06\x20\x72\xe5\x01\x61\xd5\xbc\xc3\xa2\x16\xa2\x87\xc2\x6b\x8a\xee\xc2\xc5\x9c\x6c\x74\x3b\x77\xe1\x3a\x71\xd8\xba\x8d\x42\x87\x05\x39\x9f\x80\x03\x30\xf0\xda\x5c\x2f\x0c\x57\x4a\x72\x13\x96\xf6\xdc\xb7\xbd\x59\x9c\x8e\x1a\x2e\x6a\xe5\xf5\x05\x6a\x09\xda\xb7\x94\xec\x90\x28\xfa\xdc\x38\xcf\x6f\x70\x6d\xa4\x2b\x42\x89\xc6\x4c\x1b\xee\x55\x93\xef\x30\x34\xaf\x10\xd1\x05\x58\xed\x3a\x2d\x6c\x01\x28\x2b\x70\x41\x8e\xb9\x31\xd7\x4f\xa5\x12\xbf\xe6\xfc\xd6\x6b\x91\xde\xd4\xc1\xf8\x41\xfa\xff\xe0\x7b\x0b\xcd\xf1\xde\x04\xef\x3b\x03\xf0\x2b\x79\x36\x9e\xe6\xac\x3f\x76\x30\xc1\x18\x7a\x6e\xd0\x1e\xd0\x53\x0b\x52\x87\xe0\x84\x6a\xbc\x16\xd6\x88\x08\x6a\x01\xf4\x27\x81\x86\x70\x1e\xc7\xfd\xb5\x5d\xc1\xde\x1b\x25\x20\x34\xa0\x25\x77\x17\x6a\x89\x85\x26\x81\xc6\x0e\x65\x20\x64\x1e\xd6\x64\xe4\x6d\xf7\x85\xca\xc3\xf2\xea\x7e\xe2\x3d\x40\x7a\xcf\x13\x0d\x6c\x13\xe5\x5c\x57\x3a\xa8\x94\xc7\xdb\x4f\xa7\x91\x9e\xbe\xf6\x2b\x54\xdd\x43\x19\x15\x66\x86\xed\xec\x24\x79\xf3\xe5\xb7\x6d\x58\x2d\xc8\x41\x2f\x31\xe3\x5d\x58\x00\x12\xd0\xdd\x15\xff\x11\x30\x4c\x5e\x80\xc6\x73\x45\x33\x1b\xfc\xb6\x5c\x87\x11\x68\x0c\x18\x20\x2e\x9d\x56\x67\xc2\xbf\xad\x56\x44\xcc\x2a\xd4\x2e\xf7\x5e\x99\x7e\xcf\x13\x1d\x4a\xa3\x75\xbe\xe4\xa8\x4c\x9d\x41\x11\x75\x08\x7a\xc8\x9e\x35\xb3\x83\x8b\x77\xc0\xa3\x8f\x76\xa5\x29\x40\x3a\xb1\x74\x28\x9c\x03\x0f\x32\xfe\x0c\x38\xca\x53\xc1\x66\xe7\x23\x2f\x2c\x82\x2a\x14\x8d\x8c\x3b\x87\x88\xaa\x5a\xb4\xe7\x3c\x3c\xd3\x30\x5a\xe5\x65\x5e\xad\x93\xd0\x45\xbb\xf7\x77\x61\xc5\x39\xf6\x81\x33\x21\x3d\x10\x80\x81\x4d\xa2\x0f\x74\x02\x05\x90\xd9\x04\x57\xeb\xaf\x4c\x51\x4d\xcf\x94\x9d\x85\xa3\x9a\x67\xc2\x69\x26\xaf\x61\x5b\x54\x5d\xb5\x75\xa4\x6a\x56\x1f\x38\x6e\x0f\x3d\xac\xd4\x6b\x47\x15\xc7\xb0\x01\xdc\x14\x0d\x70\x13\xf5\x36\x80\x96\x5e\xd8\x8c\x23\x69\xc3\x96\x40\x9e\xb0\x31\xbf\x1f\x69\x4c\x0d\xde\x12\x7d\x2b\xec\xf7\xea\xcb\xdb\xf6\x2f\x37\xac\xd6\xaa\xbf\xba\xa7\x29\x34\x11\xca\x4b\xce\x94\xb5\xbf\xac\x14\x6b\xc9\x3f\xa8\xc4\x57\x06\xc5\x9e\xeb\xc0\x53\xc2\xc1\xdf\x5c\xb9\x4c\x26\x9a\x9f\x47\xeb\xfc\x04\xf1\xd0\x66\x73\x42\x8c\x60\xd0\x3d\x9b\xc8\x03\x70\xb1\x60\x39\x94\xff\x69\x20\xed\x74\x55\xd3\x27\x79\x72\x63\xec\xe7\x50\xab\x66\x28\x07\x93\x74\x82\x69\x4b\xb1\xe4\x1e\xf4\x0e\x45\xb3\xa8\x06\x06\xbb\x9a\xfd\x88\x34\x3f\xf0\xa6\xdd\xa5\xd1\xc5\x66\x73\x2a\x98\x3a\x15\x67\xf2\x54\x58\xf5\x83\xac\xee\x8a\xc4\x3d\x29\x6a\xb2\x44\x7a\x25\x13\x83\x0c\xbd\xd7\x19\x47\x69\x59\xe0\xba\xca\x55\xc7\x65\x93\x0f\x01\xa7\x7c\xe6\x18\x37\xfe\xf8\x9c\xb3\xd0\x44\x86\x11\x03\x73\xb2\xe6\x7f\x72\xeb\x59\x65\x6c\x1f\xf9\x6a\xbe\xc4\xca\x38\x96\xce\x25\x95\x73\x59\x9f\x9b\xbd\xfc\x1c\xf5\x63\xae\xb8\xac\xf6\xfb\x8e\x40\xa3\x5a\xd6\x8e\x60\xca\x3b\x7a\x09\x04\x34\xa0\x3f\x6d\x1d\x62\xbd\x11\xe4\x55\x1c\x7f\x57\xba\xf7\xda\xa0\x1d\x52\xea\xf9\xb5\xaa\x0c\xf2\x2c\xf0\xa1\xa5\x33\xbd\xb5\x99\xe4\xa0\x24\xe7\x3e\x6e\x0a\xf9\xd2\xc4\x87\x0c\x58\x49\x6d\xb1\x03\x56\xfa\x32\xd5\x59\xcd\x2f\x97\x0c\x5a\x55\xaf\xbc\x96\x90\xdc\x27\x82\xe5\x7a\x62\xa4\xae\x9b\x4e\x08\x99\x9a\xda\x4c\x2a\xa3\x89\x2f\x10\xc1\x82\x50\x9f\x97\xa1\xdc\xe8\x65\xad\x3d\x29\x54\xe6\x6c\x42\xc2\x66\xe0\xb1\x7c\x6a\x2b\x54\x54\xd1\xe1\xd1\xfa\xc6\xb4\x51\xe3\x1b\x61\xeb\x0b\xeb\x30\xab\x33\x2c\x90\x56\xf5\x0e\xf5\xb2\x38\xae\x8e\x55\x92\x99\x4a\x46\x0b\x51\x2e\x32\x95\xc0\x96\xc8\x4c\xbf\x2a\x53\x9f\x8b\xad\x65\xae\x4c\x56\xd2\xd5\x7f\xd4\x16\xc8\xdb\x5e\x8b\x76\x7a\x65\x9f\xed\xb0\xe4\xa9\xf9\x3b\x60\x65\xaa\x6c\xe0\x60\x07\xcb\x1c\xd6\x61\xdb\x23\x10\x80\xb5\x06\x4e\xe0\xa5\xdd\xc2\xdd\xab\xb3\x77\xd3\xe5\xbb\xfa\x98\x4b\xa5\x7c\x95\xe4\xe0\x4e\x29\xf7\xee\x94\xcc\xe7\x20\xb7\xad\x2a\x8f\xb4\x8a\xf6\x13\x75\x56\x06\x52\x46\x75\xce\xca\xba\x1f\x4d\x61\x02\xbc\x97\x27\xc7\xb9\xa1\x7d\xbd\x77\x5c\x69\x0e\xe8\xfd\x3e\x71\xdf\x9a\x56\x9e\x0e\x27\x8c\x5d\x8b\x24\xa3\x92\xc4\x71\x66\x9c\xcd\xd4\xc8\x35\x4c\xc0\x7d\xdb\x09\x55\xcb\xb9\x67\x48\x5f\x1a\x6e\x37\x35\x11\xec\x52\x3a\x60\x81\x1b\x29\xd3\x87\x4e\xa7\x57\xde\xbd\x95\xf5\xce\x98\xa8\xa6\xd6\x17\x6c\x3f\xaf\xc4\xd0\x78\x66\xa8\xa7\xa5\xf8\xd4\x22\x1b\x0e\xc0\x74\xa1\x72\x56\xce\x91\x2e\x06\x65\x05\xee\x6c\x65\xd3\x97\x8e\x60\xa6\xe5\x34\x6b\xd4\x02\x27\xeb\xab\xfd\x5e\xb2\x63\xa4\xd7\x28\x89\x20\x0e\x9f\xa0\xb0\x32\x52\xe9\x1d\xa2\x21\x2c\x67\xbb\x9f\x9a\x73\x04\xa7\x43\xbb\x01\x38\x1c\x82\xd2\xc0\xd6\xb1\xcf\x70\x08\xcb\xf3\x31\xfc\x15\xe8\xf8\xda\xd8\x3d\xd6\x06\x91\xed\x06\xd9\x4c\x60\xde\xa1\xa2\x62\x30\xb0\x8e\x67\x76\x43\xd5\x53\x03\x96\x53\x39\x60\x39\xda\x8f\x39\x32\x2c\x09\x18\x91\x99\xb2\x93\xf2\x6c\x3c\x1d\xa7\x41\x15\xb5\x3a\xe4\x80\x95\x5f\x67\x33\x31\x84\x74\x93\x74\x4c\xb0\x3a\xaa\xf7\xf6\xe1\x48\xef\x03\xaf\xb7\xb2\xf9\xd0\x53\x9b\x44\xc9\xc6\x66\x22\x55\xc7\x7b\x99\x82\xb7\x32\x73\x58\xeb\xd3\x49\x6f\x08\x70\x47\xe2\xf6\xc2\x60\x20\x9d\x1a\x5e\xe0\x00\x57\x76\xbd\xbc\x28\xb0\x0b\xfd\x4d\x66\x5b\xf3\x58\xcd\xba\x31\xcc\xf5\x15\xd1\xa6\x44\x31\x67\x2b\x21\x04\x7b\x6f\x19\xc1\xa3\xb0\x6a\xbf\x89\xab\x4e\xc5\xd6\xce\x67\x11\x44\x8a\x50\x97\xf9\x9f\x3c\x09\x89\x9a\x41\xe8\xbf\xf7\xbb\xe1\xb7\x3c\x51\xe4\x54\xf6\x99\x73\x9d\x70\x2a\x99\x0c\xfc\xb2\x80\x71\x81\xdc\xef\x01\x60\xd3\xda\x20\xc6\x71\xa4\xe4\x0e\xb4\x0a\xdb\xf6\x9e\xf9\x75\x29\x24\x1f\x82\xed\x4f\x15\xc1\x93\x87\x2f\x0e\xc4\x43\xfa\x7e\x0b\x52\x0f\xe3\x5a\xd2\x59\x29\x04\xde\x2a\x9b\xbb\xab\xe1\xd8\x54\xfa\x26\x40\x17\xda\xcd\x28\x85\x1a\x1a\x9b\x9a\xa8\xbe\x16\x6f\x8c\xf3\xfb\xca\x50\xe3\x87\x55\x13\x35\x83\x2b\x98\x72\xd8\x99\x46\x9b\x2f\x73\x41\xef\x86\x20\x82\x31\xe8\x27\xfe\xc6\x01\x5a\xc2\x70\x5c\xd1\x82\x81\x16\x96\xa0\x19\x31\xac\xd4\x84\xb1\x02\x74\x8e\xe2\x38\xd9\x79\x4d\xb2\xc2\x80\x5a\x69\x3e\xd3\x5a\xdf\xe9\x94\x0b\x73\xf7\x5e\x80\xdb\x53\x6a\x95\xf7\x3a\xbc\x9e\x0e\x6d\x5c\xaf\x00\x8b\x3e\xe4\x89\x9b\x72\x36\x40\xf7\x4c\x12\x31\x5c\x84\xd7\x70\xa3\xb2\x50\xd3\x78\x23\xc3\x85\x87\xca\x0f\xb4\x9e\x0b\xd9\x01\x92\x17\xce\x50\xa2\x44\xa2\x00\x46\x4c\x1a\x44\x33\x40\x7e\x88\x63\xfb\xc0\x50\x03\x84\x48\x08\x21\x08\x99\xb7\xce\x01\xdb\x1e\xfe\xfe\xcc\xef\x68\x85\x50\xb1\x04\xa5\xb2\xee\x1a\xba\x94\xd9\xf5\x35\x18\x6d\xf5\x27\xc7\x81\xac\xba\x92\x8f\x0f\x84\x4e\xc6\x63\xe2\x19\xb7\xfe\x4a\x42\x53\xad\x8a\xdc\x0e\x7f\xf6\xaa\xdb\x5c\x4f\xa9\x91\xa3\x58\x30\xd1\x1f\xf2\x44\x27\x5d\x64\x15\x3f\x99\xa4\x56\x0c\x64\x44\xe6\xe5\xb5\xde\xb1\xd3\xce\x50\xcd\x70\x96\xd3\xba\xe8\x90\xdc\x8b\x69\xd0\xfa\x57\x22\xb9\xe6\x14\x4c\xd8\x52\xef\xfe\x70\xb1\xab\xe0\xd5\xa1\x67\x6f\x12\xce\x09\x71\xef\x99\x8a\xe3\x67\x6a\xa4\xf2\x0d\x3f\xcf\x87\x7f\x19\x8f\xc1\xa4\x62\xcb\x93\x67\x6a\xb4\x15\x15\x95\x64\x5a\xb2\x48\xc9\x7c\x5b\xf0\x28\x7d\xae\xe2\xf8\x79\x57\xea\xe7\x2e\x75\x52\xb2\x68\x29\x76\x57\x05\x8f\xe8\x33\xc5\xee\x75\xda\x34\xa7\x5b\x51\xa5\xf2\x40\x52\x1d\x8d\x9e\x82\x22\xfa\xbc\x15\xdd\xb3\xcb\x9d\x7b\xa0\x53\x76\x33\x55\xa3\x0d\x57\xd9\xcf\xfc\x2e\x55\xa3\x85\x92\xc5\xcf\xfc\x2e\xd0\xb8\xd4\x53\xf3\x54\x8a\x6d\x1c\xff\x53\x80\xbc\xb8\x8e\xe7\x65\xab\x43\xe1\xea\x8e\x05\xf0\xbe\x92\x10\x80\x74\x4b\xb6\x3c\x81\x18\x63\x89\xb4\x9b\x13\x0b\x68\x20\xc9\xd9\x58\xaf\x40\xa3\xde\x87\x69\x77\x60\x8b\x44\x25\x39\x77\x71\x67\x63\x32\x6d\x0b\x75\x1b\x94\x87\xee\xfc\xc8\xd3\x82\x7d\x55\xc7\xb2\x5e\x90\xfb\x0a\x3d\xcd\x74\xad\x51\x10\x2f\xc2\x9a\x80\x50\xb3\x24\xf4\xe2\xfd\x5b\xee\xd4\xaa\x02\x64\xd6\x82\xe8\x88\x3c\x70\xeb\xb2\x94\x02\xc3\x9d\x50\xd4\x13\xa5\x85\xfd\x22\x83\x56\xec\x3b\x17\xfb\x8e\x9c\x4d\xc6\x71\x9c\xbc\xcd\x93\x05\xa1\xfd\x32\x8e\x5d\x77\x86\x8f\xc7\xe3\xb3\x5d\x1c\xbf\xe5\xee\x74\xa7\x15\xe0\x90\xfe\x37\x63\xd9\xf4\xc8\x06\xab\x59\x18\xb8\x0d\x92\xd7\xd1\x77\x11\x62\x28\x6d\x84\x92\x03\x21\xbd\xe3\xe3\x05\xae\xa9\x3a\xc6\xab\xa0\x8d\xf4\xb8\x72\x3a\x02\x13\xd2\x7b\x77\x6c\x64\xdf\x75\x8f\xac\x75\x64\xb5\x20\xe9\x71\x50\x06\xbf\x1a\x32\xa3\x4b\x0b\xee\x6e\xac\x57\x4d\x5a\xb0\xcc\x2c\x7c\xbb\x1e\x7b\x39\x3c\x65\x5b\x8a\x36\x4d\x76\x98\x24\x5c\xc8\xb4\x62\xbb\xf3\xe1\x64\xba\x98\xed\xe6\xa9\x31\x36\x94\x54\x12\x92\x26\x95\x49\x1d\xba\xd7\xf0\x21\x68\x45\xa8\x29\xee\xdd\xd4\xd7\x81\xde\x30\xed\x9e\xcb\x0a\x1d\x46\x4a\x16\x49\xbe\x50\x11\x28\x60\x57\x2c\xac\x85\x4a\x66\x4e\xdc\x3e\xa8\xce\xd2\x1d\x1b\x4e\xbc\x81\x80\x21\x08\xce\x68\xc2\xe2\x37\xfc\x26\xe4\xf2\x89\x4a\x24\xe9\x85\x66\x14\xd0\x88\xfd\x3e\x83\xeb\x4c\xb9\x9c\x7e\xc7\x93\x8c\x56\x74\x65\xed\xf0\x56\x68\x84\x97\xae\xdc\x65\xd6\x12\x28\x57\xc1\xd2\xb6\x6e\xcd\x13\x34\xbc\xa3\x63\x90\xdb\x67\xd4\x85\x00\x54\x04\xf9\xa2\xaa\x97\xb6\xea\xa5\xa9\x7a\x69\x60\x8f\x99\x49\x20\x49\x2f\x9f\xea\x1b\xd0\x4e\xcf\x8e\x85\x4b\xa3\x3f\xe8\xd8\x9f\x78\xb2\xb0\xf7\xd4\x59\x35\x27\x74\x47\xe8\x3d\x2e\x9e\xb4\x3f\xa1\x42\xe6\xd7\x79\x99\x46\x5f\xc3\x02\x8b\x0e\x84\xa4\x8b\x00\xff\x40\x4f\xa8\xb5\xc6\x6c\x10\xb3\xda\x9a\xf0\x55\xd9\x1b\xf4\xce\xdd\x8e\x6d\xd8\x6e\x30\x21\xfa\x68\x78\xb0\x7a\xbb\x00\x49\xfa\xab\x2e\x72\x47\x2b\xba\x13\x24\x4d\x76\x6c\x8c\xfd\x31\x96\xa8\xb3\x6a\xae\x8b\xda\x09\x9f\xc3\xa0\x96\xa3\x0b\xdc\x2d\x13\x9f\x75\xfe\xb3\x09\xd5\x13\x6f\x12\x65\x29\xe6\x60\xb0\xa1\x8b\x60\x45\xe1\xba\xd3\xb3\x8b\x5a\xb7\xce\xaa\x77\x41\xd7\xc4\xdf\xb0\xfd\x49\xe7\xb1\x3f\xf0\x12\x83\xa9\xd7\x54\x01\x97\xb0\x66\x2a\x28\xf2\xde\xbf\xb5\x81\x84\xad\xc5\x13\x51\xe0\x9a\x2e\x72\x7d\xb7\x0d\xf8\x2b\x2a\x47\x8b\x35\x15\x84\xae\x5c\xb4\x0a\xa3\x95\x89\x5e\x7a\x84\x87\x05\x5d\x11\x1a\xbc\xd3\xc2\xef\x4d\xcd\x5b\x82\x5e\xaa\xd6\x1e\xe0\xc6\xc7\x70\xb8\x0a\x00\x7a\x69\xf0\x22\x57\x4f\x4f\x4e\x37\x67\xec\xe6\x74\x63\x6f\x2e\x77\x0c\x1a\xb5\x31\xed\xb9\x66\x6b\x91\xdc\xd1\x25\x15\xa4\xb7\x64\x6c\x3b\x35\x22\x41\xbf\x53\x36\xf4\x1a\xb0\x39\xf4\x5f\x42\xd2\x3b\xbb\x0c\xaf\x35\x81\x3c\x9a\x16\x4a\xdd\x52\x41\x00\x0a\xc5\x3d\x38\xd4\x73\x20\x95\xb0\x8b\xd4\x52\xb6\x8e\xb5\x9a\xe3\xfe\x68\x2c\x4b\xea\x16\xec\xc1\xbf\xb3\xb9\xf7\x16\x15\x88\x9c\xae\x58\x45\x3f\xb0\x2b\xbb\x61\x6f\x19\x3c\x3e\xda\x7d\xd3\x67\xa5\x31\x7f\xf2\x14\x09\x35\xb7\x6b\x04\x49\x19\xde\xee\x22\x20\x23\xaa\x45\x46\x54\x8d\x8c\x6c\x79\x72\x61\x6b\xfd\x40\xce\xc7\xd3\xe4\x96\x5d\xa0\x69\xf9\x07\x76\xc7\x93\x2b\xcb\x52\xd8\x54\x9a\x36\xeb\x24\x36\x0f\xbb\xd1\x89\x80\xb3\xb8\x30\xc6\xdf\x87\x24\x67\xcd\xb1\x22\x64\xb6\x73\xf6\xe4\xd0\x94\x0f\x84\xde\xfa\xb1\xcd\xf5\xf8\xed\xe0\x7d\x69\x61\x9d\x14\xfc\x9a\xe8\xab\xc3\x69\xb2\x30\xfa\x64\xab\x91\x12\xfb\x3d\xfe\x3a\x5b\xe1\xab\x66\x1c\x07\x87\xf4\x57\x4d\x37\x1b\x1b\xc6\xf2\x38\xbe\x31\x7e\xd9\x26\xdf\x8e\x83\x21\x5f\xfa\xab\xcc\x19\x78\xd0\x9c\x0e\x1f\x8f\x53\x17\x76\x6e\x1d\x69\x4e\x1f\x8f\xd3\x71\x6f\xf9\x25\x15\x25\xa2\xe3\xc1\x68\xc0\x96\x54\xb7\x00\x9a\x00\x50\xc4\x8e\x76\x5c\xeb\x7d\xce\xbb\x98\x66\xcd\x21\x6d\xd8\xe4\xd1\x98\xc2\x31\x0b\xc2\xcb\x10\xda\xbf\xcd\x3d\xe9\x2b\x65\x44\xaf\xba\xa2\xf4\xf1\xff\x81\xd0\x6c\xb4\xce\x2b\x25\xe4\x1d\x6c\xca\x4b\x5e\xbc\x82\xd5\xca\xdc\x8d\xed\xaa\xc9\xdb\x71\x72\x0f\x6c\xff\xf4\x46\x33\xf1\xd7\x09\x87\x3e\x7c\xc0\x64\xd7\x9e\x57\xa9\x37\xfd\x03\x6d\x73\x20\xae\x75\xdd\xcc\xc9\x07\xc7\x84\x94\x74\x41\x0e\xfa\x1e\x42\x4b\x92\xfe\xa6\x2b\x07\x90\x5f\x33\xaa\x71\xfc\x16\xdc\x01\x18\xd7\xbe\xfa\x2e\xf2\x38\xad\x40\xd3\x0a\x5b\xa2\x7b\xf6\x22\x5f\x2e\x0b\xfe\x54\xdc\x96\x9e\x6f\x05\xbb\xad\xb7\x16\x82\xac\x7c\x00\x04\xb8\x83\x89\xa3\xad\x4a\xbf\x49\x6f\xa7\xdf\xe3\x75\xa9\x81\xfe\x61\x98\x37\x5e\x64\x77\x79\x79\xfd\x5d\xb1\x93\x17\x37\xbc\x04\x4f\x46\x47\xe1\x2e\x8f\xe4\x41\xe5\xcb\x63\xe5\x4d\xe8\x1b\x09\x50\xb6\x78\xad\x3b\x34\x1e\x99\x16\x81\x24\xc1\xc2\x99\xe6\xfe\x3e\x4f\xfd\xdd\xfe\x5d\xf3\x0a\xdf\x9f\x1c\xc0\x98\x09\xc9\xf8\xaa\x10\x42\x06\xf6\xc2\xd7\x3b\xa5\xb8\xac\x8e\x1d\x8e\xd6\xd7\xad\xc3\xc4\x28\x61\xce\x94\xb5\x68\xf5\x7c\xa4\x66\xf0\x3e\xe7\x42\x2f\x5f\x25\xe2\xdc\xea\x6d\xec\xf7\xfd\x52\x80\xb6\x88\x95\x6b\xfc\x0a\x05\x8b\x21\x5a\xa7\x0e\xb3\x40\xb2\xea\x44\x88\x3b\x36\x3e\xdd\x9d\xf9\xd3\xd1\xb6\xdf\x3d\x1c\xef\x2c\x30\x6d\xe6\xe2\x02\xe8\xaa\x1d\xc8\x94\x8b\x38\x2e\x1e\xee\xf1\xb9\xf5\xbb\xbe\x60\x1f\x83\xd7\xac\x15\x6b\xd5\xac\x8b\xb4\x5e\x99\x73\x78\x57\xe0\x74\x41\x57\x54\x11\x0a\xfd\x09\x67\x71\x25\x6b\xaf\xb9\x66\x52\x23\x2c\xe9\xfb\x22\x5f\x7c\x8c\x34\xdf\x0a\xbb\x77\x29\x43\xb6\x64\xdd\x10\x54\x00\x48\x85\xd4\xa4\xa4\x6f\x24\x14\x71\xdc\xaf\xa4\x57\x1f\x04\x41\x00\x2c\x74\x2a\xe2\x38\x59\xca\x60\xf3\x18\x7d\x0d\x14\x10\x00\xa3\x6c\xf1\xce\xdf\xc8\xac\xac\x56\xe0\x79\xb4\xe0\x50\x09\x38\xb4\xaa\x5d\x66\x09\xca\x7e\x4a\xf7\x2a\x6f\x24\x0b\xcf\xf2\x82\xeb\x54\x7a\x5b\x07\x41\x81\x15\xb6\xcd\x42\x33\xf6\x44\xca\xec\x0e\x20\xe1\x41\x24\x1c\x5c\x54\x4a\x83\x9d\xe8\xc6\x39\x2b\x0a\x71\xab\xef\x42\xba\xb4\x37\x77\x5b\x5e\xed\xf7\xc3\x49\x9f\x5d\x8b\xe4\xa1\x44\x14\xf1\xfe\xfd\xd3\x02\xbf\x3d\xf1\x4d\xec\x89\x91\x28\x0b\x91\x2d\x35\xf1\x53\x1d\xae\x3c\xc5\x48\xf2\x6a\x57\xc0\xb9\xfd\x68\xf6\xfe\xd3\x78\x3c\x7c\xff\x69\xfc\x5f\xef\x3f\x8d\xf9\xf0\xfd\xa7\xc9\x6a\x7e\xff\xf8\x60\x91\xc9\x41\x09\x95\x45\x11\xa1\xd9\xac\x9c\x33\x4e\x07\x83\x8a\xd9\x05\xb4\x33\x40\x20\x92\x3d\xb7\xf4\x4a\x12\xaa\x44\x2a\xad\x97\x82\x06\x92\x5e\x86\x98\x6e\xaa\x0b\x2c\x8f\x10\xc7\x2a\x23\xe6\xfd\xa1\xf7\xdc\xc2\x55\xed\x08\xfd\xad\x06\xca\xf8\x42\x26\x3b\x0b\xed\x2e\x00\x1b\xf5\x49\x65\x24\x38\x87\x03\x2d\xd8\xf8\xb4\x38\xcb\x4f\x07\x83\x82\xec\x92\x72\x56\xcc\x69\xe1\xdd\x2f\xa8\x8e\x6b\x2b\x68\x46\x36\x9d\x13\x49\x72\xee\x05\xf1\x5d\xb9\xf4\x0a\x04\xd4\xac\x23\xf4\xb2\xa9\x6d\x59\x23\xd5\x20\xb7\xcc\x57\x49\xd6\x5c\x9f\xd7\xd6\x25\xc2\x1b\x00\x01\x24\xc7\xdb\xdc\x4f\x6e\xa6\xdc\x5c\x1e\x53\x6e\x25\x37\x88\xdf\xb8\x00\xb7\x9f\x55\xcd\x67\x85\x9e\xf0\x77\xb5\x71\xd4\x3c\xe3\x02\x96\x31\x8e\xd9\xc2\x13\x9b\x82\x38\xb4\xb0\x28\xa2\x8b\x59\x61\xa1\x74\xf0\xdb\xb8\x21\x95\xd9\x35\x38\x82\x6d\x39\x90\xc8\x68\x94\x81\x10\x33\xb2\x3e\x0c\x42\x6d\xde\xfa\x78\x18\xb2\xce\xc9\xfd\x21\x24\x29\xdb\xc6\x73\x96\xae\xcc\x2a\x77\x25\x9f\xd3\xff\xe9\xca\x16\x6a\x0d\xf9\x50\x03\x88\xef\xaa\xdd\x18\x4a\x76\x54\x53\x4e\x91\xb3\xc7\x08\x4c\x11\x06\x33\x45\xe5\x7e\xff\x7b\xc2\x29\xe8\xfa\xab\x43\x58\x5b\x9b\xd7\xea\x33\x55\xeb\x45\x87\x7e\xa7\x6a\x97\xd0\x56\x13\x55\xa0\xb4\xfb\x3b\x10\x43\xcd\xeb\x80\xe0\x34\xf0\x0e\xe4\x5e\x49\x13\x39\x55\xac\xa5\x38\x98\x1e\x57\xe0\xd3\xdd\x24\x80\x39\xe4\x35\xb8\x8f\x77\x09\x75\x40\x3b\xa2\x83\x87\x14\xe8\x4f\xad\x12\xa6\xe8\x3f\xeb\x80\x22\x1d\x4a\x9f\x9f\x19\x2a\x2c\xe7\x73\x63\x05\x1a\xa6\x9a\xb5\x85\x8b\x9b\x64\x63\x7a\x8d\x33\xdf\x13\xd3\x6b\xc9\x86\xa3\x6f\xbf\x49\xa5\xfe\x9a\x7c\x9b\x16\x18\xf2\x9f\xe9\x2a\x8e\x13\xfd\x39\x79\xf4\x0d\x9e\x2c\x57\xb2\xad\xf3\xc2\x38\x2a\x1f\x3f\xe5\x85\xca\x7e\x07\x67\xbf\xfe\xf7\xbb\xd0\x0a\x1e\xd4\x3e\x34\x8b\xa4\xb2\xbc\xd0\x5f\xd9\xa7\x1c\xd0\x7e\x7e\x7c\xf5\xcb\x4f\x7f\x7f\xf5\xf2\xcd\x93\xe7\x1f\x9e\xfc\xfe\xd3\xa5\xd5\x0d\x81\x74\x81\x62\x48\x57\xd6\x5f\x2f\x7e\x79\xf3\xd3\xf7\x26\xe3\x54\xba\x6c\x69\x5d\x9d\xc4\xb7\x88\xd0\xfb\x4f\xa9\xa2\x77\xa9\x3c\x04\x10\x47\x1f\xa4\xb7\xbe\x2f\xd9\x15\x1c\xbf\xfa\x54\xfb\x04\x06\xe4\x77\xe1\x83\x29\x4a\xb7\xac\x6c\xae\x70\x4a\xa2\x30\xc5\xe7\xbb\x9a\xf2\xef\xca\xc5\xe2\x1b\x99\x8b\xf6\x26\xb3\x79\x1c\x17\x20\xc7\x5c\xe1\x4b\x65\x1c\xdf\xc4\x71\x45\x78\xea\xf1\x3b\xd5\x48\x65\xf2\x9a\x2b\xba\x66\xc8\x38\x9d\x2e\xfb\x6c\x77\xba\x64\xcb\xf0\x1d\xcc\xa6\xdf\xb2\xf1\xe9\xf6\x6c\x6d\x29\xd9\x16\x1f\x8c\xd7\xb3\x2d\x22\xbf\x32\xb6\x0c\x89\xca\x62\x27\x75\x09\xbf\xe9\xf1\x79\x03\xb5\xb0\x25\xf2\xcf\x27\xfc\x80\xcd\x03\xcf\x97\x0b\xd4\x4b\xef\xb3\x6b\x07\xe9\xa1\xdb\x1c\xc7\x1b\xaf\x0a\x5c\x57\x93\x0e\xd4\x6e\x07\xe2\xeb\x6b\x49\xeb\x43\x31\xac\x0f\x85\x3e\xff\x6e\x3e\x57\x14\x18\x95\xe4\x61\x59\xb8\xed\x6a\x83\x0e\x06\x26\xc6\x47\xd5\x8a\x18\x9e\x16\xa1\x60\xb3\x9a\xd2\x3c\x9a\x34\xe2\x98\xbb\xbe\xc1\x0a\xd8\x30\x68\xf0\x5d\x4b\xf3\xf8\x9a\xdd\x0d\xb2\xce\xc7\xd4\xde\xe6\x6c\x3c\xbd\x0b\xf5\xc5\xef\x06\x9b\xe1\xb7\x63\x92\x5e\x87\x42\x96\xc0\xe2\xf5\x7a\xb0\x19\x7c\x3b\x26\xd4\x91\xcc\x3b\x8b\xb6\x70\x7d\x20\x87\x3b\x79\xf6\x78\xec\xb4\x98\x6a\x0d\x9f\x36\xfa\x11\x8e\x0e\xcd\x6a\x96\x00\xc1\x1c\xd8\x98\xa7\xbf\xb3\xdc\x7d\xbf\x63\xe2\xd8\x65\xc7\xe9\x67\xd4\x2a\xb3\x3c\x54\x58\xe7\xb0\x96\x82\xaa\xb0\xd6\x5a\xdc\x3b\x2a\x35\x05\x70\x95\xc7\xb1\x7a\xe4\x7e\xec\xf7\xdc\x47\xfd\x1e\xc7\xdc\x45\xfd\xde\xab\xf7\x37\x6b\x19\x3b\x00\xc0\xc4\xb5\x64\xc9\xb5\xfc\xfa\x4e\x0e\x24\x79\x94\xdc\xc9\xc1\x84\xd0\xc1\xe0\x4e\x6a\x2e\x09\x9c\x77\x91\x34\x71\x45\x0e\xc2\x41\x18\x30\x41\xc2\xcb\xfe\xad\x0c\x81\x6c\x2a\xc0\x5c\x8c\x18\xd3\x3c\xa7\x58\x9d\x00\xe3\xa1\xd8\xa2\x9c\xa9\x79\x70\x7b\x6a\x3a\x53\x0d\x61\x44\xed\xcb\x58\x53\x10\x4c\x73\xd6\x9f\x00\x23\xd4\x7c\x54\x72\xf7\xc9\x6a\xb7\xdd\x4a\x5e\x55\x17\xcb\x5c\x55\x00\x9d\x51\x3f\xfd\xf1\x39\xb2\x3f\xd1\xe4\x4a\x33\x64\x7d\x96\x09\xa7\xd0\xd8\x4c\x56\xd2\x23\xc5\x4e\xbc\xd2\xde\x25\x8e\x0a\xdc\x5d\x5f\xe7\x9f\x78\x51\x75\x90\xfc\x2b\x19\x28\x2d\xaa\xd1\xa7\xaf\xd9\xb5\xa4\x6a\x74\x87\x7f\x11\x64\xee\x42\x02\x63\xbe\x10\x9e\xca\xbe\xea\x78\x34\x0f\x1d\xe3\x02\x3d\x84\x51\xdf\x96\x89\xbb\x9a\x46\x06\xb2\x34\xea\x5d\x80\x23\xaf\xe4\xdb\x31\xed\xba\x96\x63\x19\x28\xde\x69\x84\x19\x88\xad\x4e\x77\xb7\x20\x29\x51\x2c\x1f\x44\x27\xd1\x40\x19\x75\xe9\xe6\x23\x68\xd3\xf0\xd9\x95\xfe\x22\xeb\x34\x81\x5e\x23\xb3\x50\x4b\x36\x2b\xe7\xfa\x0a\x89\xd8\xe5\xc4\x0d\xb8\x53\x4e\xb5\x17\x1e\xfe\x49\xc9\xec\x67\x7e\x57\xc5\xb1\x29\xa6\x15\x43\xd1\xff\x55\x23\x1a\xeb\x81\x38\x14\xd2\x94\x76\x8e\xa2\xcd\xae\x50\x79\xc4\x98\x68\x8f\x8d\x22\xd4\x8d\x30\x24\xf8\xbb\xbe\xeb\x46\x1f\xb9\xb1\xaa\x5e\x46\x14\x07\xc1\x27\xeb\xeb\x64\xa6\xcc\x3e\x13\xfb\x7d\xf2\x36\x4f\x24\xa1\xb9\x5e\x81\x84\xea\x33\x43\xc4\xf1\xa3\xf7\xff\xfb\x2b\x73\x8f\x52\x64\x6a\x92\xf4\xc7\x24\xed\xf7\x45\x80\xab\x26\x43\xdc\x9b\x8d\xee\x51\xdf\x81\xf9\xf6\xfb\xe8\xbd\xc9\x3f\x1b\xf5\xeb\xad\x9f\xc2\x92\x8a\x2e\x75\xfc\x30\x1a\x48\x1a\x5e\xf8\xfc\x75\xfc\xd6\x4a\xfa\xf5\x64\xef\xf7\xaf\x50\x4b\xb0\x91\xb6\x73\xb3\x4f\x1f\xfd\xe3\x5a\xcc\x9e\x0c\xff\x3e\x77\x5d\x49\xd5\x68\x23\x74\x26\x52\x2b\x5d\x17\x9d\x76\x97\xdc\x4a\x87\x6c\xd8\x27\xc3\x81\x79\x2c\xb5\x0e\x51\x80\x6a\xbf\x3d\x58\xb9\x00\x3a\xc8\x3d\x9b\x4c\xe2\xf8\xf1\x7f\x6a\x66\xc8\x60\xcd\xc2\x1c\x63\x9d\x00\xbf\x5d\xb3\x16\x34\x69\x7a\xaa\x41\x1b\x26\xff\x01\xf8\x5a\x5e\xb1\xc1\x90\xac\x4b\xa3\x6b\xb0\x88\xe3\x44\x37\x78\x2a\x11\xee\xa0\xdc\xef\xff\xeb\xbf\xfa\x3a\xcb\xdf\xc4\x7e\x8f\x57\x31\xfb\xa2\xe7\xef\x62\xfb\x7d\xc7\xdd\xa8\xee\x5c\x8f\xd0\x09\x96\xf3\xe8\xfd\x55\xe8\x74\x58\x8a\xaa\x5a\x67\xb9\x7c\x6f\xdd\x84\xa9\xda\x95\xe7\x69\x7e\x33\x72\xee\x8a\xc9\x7e\xff\x80\x2d\x7a\xdb\x1d\x22\x8c\xb3\xae\x36\x18\x33\x7b\x93\xdc\xef\x93\xe7\x7a\x7c\xa3\xae\xc6\x44\x0d\xa9\xed\x47\x7e\xb7\xdb\x46\x7a\x73\xb4\x85\xb9\xe2\x86\xcb\x08\x7c\x96\x3f\x7b\xa8\xbc\x77\xdd\xe5\xb5\xc5\xaf\xb6\xbc\x43\xdd\x44\xff\x23\x76\xe6\x3f\xea\x0b\x00\x21\x84\xcd\x95\xde\x1f\x12\x0a\x75\xc8\x69\x68\x1d\xfd\xba\x63\xd5\xf5\x93\x86\xc4\x69\xbf\x77\xea\x32\x6e\x76\x61\x37\xda\x41\xbb\xd1\x23\x68\x16\x00\xb1\xdb\xd9\xb5\x08\xc4\x50\x16\x00\x19\xde\xd8\x00\x8d\xf3\x93\x63\x26\xcd\x5e\x40\x79\x02\x4a\x71\x75\x33\x16\xba\xba\xdb\x75\xbe\x58\xeb\x53\xd7\x7c\x9e\x4d\xc6\x64\xbf\xef\x9b\x95\x49\x92\x26\xb1\x36\x45\x22\x69\xf8\xdf\xd1\x40\x0e\xa2\xff\x1d\x7d\x09\x65\x38\x10\x10\x9b\x1d\x47\x76\x86\xd5\x4f\x60\x55\xd7\xcf\x12\x8f\x31\x5d\x37\xf2\xf8\x45\x3e\x28\x6c\xfe\x8c\xe0\x98\xd0\x1a\xd2\x73\x87\x33\x9c\xa4\xe5\xae\x3e\x01\x51\x65\x04\xbf\x23\xca\xbd\x5a\x87\x49\xc1\xfa\x63\xfa\x2c\x04\xcb\x34\xdc\x6c\x6d\x7d\x9a\xb4\x91\x53\x7d\xd7\xd3\x70\xd4\x07\x3c\xf3\xea\x34\x35\xc0\xca\xba\xe3\xe2\xaa\xf6\x2e\x53\x3f\xc0\xbb\x72\xc0\x94\xd0\xc7\x63\x42\x3a\x4e\xee\xc0\x0f\x4f\x42\xec\xc1\x13\x80\xe6\x3d\x3c\xec\xd0\xca\xa6\x03\x1c\x1c\xb7\xab\x62\x27\xbb\x87\x6d\x42\x9f\x7f\xf1\xb0\x11\xf4\x9f\x6c\x5d\xe4\x04\xd9\xae\x8a\xbc\xfc\xc8\xe5\xd1\x67\x8d\xf6\x7c\x76\xf0\x7a\x07\x7c\x21\x0b\x3a\xfc\xbd\x39\x45\xab\xe0\x01\x80\xaa\x1a\x59\xf4\xd2\xe9\x3e\x4a\xe7\xad\x70\xda\x4f\x64\x44\xe2\xb8\x21\xb9\x0e\x22\xa9\xae\x19\xca\x01\x62\x00\xa9\x8c\x83\xe2\x0d\x64\x0e\x17\x89\xdd\x16\x41\x01\x89\xc1\xf7\x7a\x21\xd9\xa5\xd1\x6c\xbd\x28\x97\xac\xd3\x8b\x86\xce\x33\x5d\xf3\x84\x7b\x1c\x8b\x41\x0d\x2c\x61\x38\xa1\x37\x7a\x3a\x42\x45\xc4\x41\x32\x01\x5f\xb0\x3e\xd5\x94\x5b\x08\xb5\x54\xf3\xff\x7c\xa4\x44\x70\xe9\xff\xc3\xeb\x71\x03\x04\x34\x7a\xd9\x0b\xb4\xa9\x79\xcf\x47\x29\x11\x62\x43\xbf\x90\x89\xf2\x67\x2a\x34\xaf\x06\x56\x36\x04\x93\x42\x88\x18\x2a\xdf\x07\x32\x9c\x18\x4a\xe8\xbd\x1e\x19\x1c\x67\x9b\x5c\xdf\xf9\x06\x0c\xca\x1f\x2d\xd6\x60\x5e\x38\x5a\xac\x89\x05\x5b\x0b\x30\xde\x5a\xba\xb2\xb3\x39\x75\xfc\x29\x2f\x1a\xa0\xd8\x35\x7c\x1e\x1f\x3d\x2b\xe7\x3d\x59\x7b\x49\xff\x43\x26\xb9\x43\xa4\x26\x14\x7e\x82\xb4\x53\xdf\xd1\x2d\xb7\xfa\x93\x6e\x0d\x6f\x28\xf9\x04\x30\x62\xb2\x41\x8b\x7d\x37\xf5\xdf\xa9\xd7\x9a\xe1\xd8\xc9\xc5\x7a\x20\x75\x37\x53\xaf\x3d\x93\x70\x3b\x7c\xa8\xac\xa0\x53\x06\x55\xbc\x94\x75\xd8\xc0\xfb\x45\x56\x2e\x78\x81\x60\x4e\x20\x96\xc7\x71\xa7\x4a\xa4\x7a\x10\x43\xc7\xc1\x56\xd2\xae\x46\xf8\x41\x31\x6f\xdb\x0b\x83\x29\x92\xf5\xc7\x87\x83\xb3\xd1\x02\x4b\x08\x83\x7d\xe2\x4f\x14\xab\x84\xa5\xec\xe1\xab\x2b\x07\x0c\x47\x0a\x76\xdf\x36\x58\x09\x0c\x94\x04\x5e\x3a\x93\xc0\x6c\xcb\x48\xd3\xc7\x7d\xbc\xc3\x40\x0c\x36\x90\xe5\x7a\xcf\x1b\x0a\x05\x0e\x7d\xd1\xd0\x23\x82\xd7\x57\x3d\x34\x1b\xb0\x6f\x04\x78\x82\x66\x0a\x70\x0d\x4d\x68\xe9\xba\x33\xd5\x87\x59\x8a\x6f\x17\xa5\x1b\xa4\xd2\x0d\x52\x59\x1b\xa4\xd2\xb4\x21\x38\xd5\x9e\x87\x17\x64\x40\x4b\xb8\x47\x5f\x71\x16\x04\xc9\x6e\x93\xaf\xd0\x6f\x18\x7d\x2e\x89\xc9\xd1\x33\x39\xba\xee\xa1\x26\xd7\x01\xf8\x0f\x24\x51\xb5\xae\x20\xef\xb1\x89\x63\x1d\xd7\xee\x29\x41\x69\xed\x4b\x77\xa2\x3b\x7d\xd9\x0b\x14\x62\x35\xf9\x04\x8c\xb4\x76\x1a\x7c\x94\x2b\x2e\xad\x1a\x86\x53\xe1\x4a\x9a\x7e\x09\x46\xe0\x2f\x68\x79\xb9\xcd\xca\xaa\x85\x6d\x1d\xc4\xf9\xa7\x04\xe5\xd9\xa1\x20\x7e\xa6\xe6\xf8\x53\xf6\xfa\xd2\x1d\xe9\xfb\x7d\x19\xc7\xe6\x0d\xac\xa4\x52\x77\x09\x8d\xde\xbc\xb9\xa0\xc4\x77\x9f\x7e\xd9\x69\x40\x92\xb3\x19\xce\xac\x82\x97\xa8\xc3\x9c\x0a\x36\x3e\x15\x67\xa5\x6f\x8f\x37\xed\xcd\x58\x39\x13\x73\x78\xe0\x45\x58\x4a\x42\xf1\x15\x36\xef\x78\x75\xcd\xcd\x13\x6b\x5f\x93\xc4\x42\xaf\x96\xca\x12\x4c\xf0\xb1\x62\x9c\x17\x81\xad\xfa\xf9\x98\xd8\x47\xd6\xd9\x8e\x4e\xe6\x74\xc5\xc2\x14\x68\xe6\xbe\x64\xbe\x20\x25\xc8\x69\xb2\xd2\x25\xf5\xb3\x51\x5e\x2e\x8a\x5d\x95\xdf\x70\x03\xd1\xb0\xd2\xe7\x12\x76\x1e\xfb\x56\xb8\x55\x8b\x65\x1d\x08\x4d\x96\xe7\x8d\xcc\xbf\xa0\x91\x43\x7f\xd9\xcc\x5d\xc1\x4a\x17\xa9\xae\xfa\x40\x68\x0e\x4f\x74\x0b\x6b\x1d\x9a\xd3\x05\xa1\xbb\x01\xf3\x6e\x4b\x0f\x5e\x3a\xe2\x4e\x09\x3c\x11\x40\x59\xbe\xe3\x19\x74\x38\x39\xcd\xcf\xd9\xf8\x74\x38\xcc\xc9\x33\xbd\x1e\xcd\x66\x9b\xe5\x73\xbf\xdf\xf4\x0f\xbb\xe5\xf2\xe9\x2c\x8a\xe6\xd6\xaf\xb9\xd1\x0e\x7a\x66\xee\x8b\x7e\xe3\x3d\xf3\x27\xd6\xa4\x5f\x87\xc7\xdc\xef\xa3\xc8\x06\x81\xd7\x1b\x54\x49\x0b\x5b\x6b\x97\xa1\x39\x39\x7a\x7f\xe4\x46\x1c\xa3\x37\xd3\x34\xf0\x39\x98\x2f\xd3\x97\xd9\x4b\x42\xdf\x5a\x79\xcd\x47\xe4\x1f\xac\x18\x6b\x36\xef\x7d\xc8\xeb\xfa\x27\x40\xeb\xdd\xeb\x6d\x49\xb9\x55\x61\xd1\x2b\xf8\x3b\x4d\x99\xcc\x6f\x7d\xa6\x94\x16\x10\xcf\xa6\x71\x55\xc1\x1d\xc0\xd6\x76\xa8\x49\xe5\xfe\x0c\x89\x0e\xd0\x9a\xfd\xbe\x7f\x94\x94\xd4\x0c\x5b\x7d\xe5\x02\x0f\x3f\x9a\xb1\x68\x57\x2e\x85\xbe\xe8\x4f\xf3\xd1\x52\x94\x3c\xcd\x47\x3a\xa4\xe4\xb4\xaa\xc5\x61\x60\x8a\x89\xcc\xee\xc8\xbc\x3b\xaf\x92\x65\xb3\xdd\x9c\xca\x69\xbf\x34\x27\xea\x7e\x5f\x8e\xd0\xa5\x49\x82\x6e\x6b\x52\x1b\x43\x4e\x77\x83\x01\x39\x45\xe3\x27\x5b\x06\xb6\x34\x07\x7d\x18\xa3\xe6\x93\x77\xa8\xfd\x9c\xea\x9a\xd0\x0d\x15\x31\xc5\xa1\x69\xd3\x4f\x79\x52\xd2\x0a\x0e\x98\x7e\xa3\x62\x12\xb8\x20\x3b\xf9\x01\x9c\x5c\xd0\x7b\x60\x4c\x7f\xe1\x4b\x01\xba\x6e\x3d\xc1\xca\x03\x6e\xef\xd9\xbc\xf7\x53\x9e\x08\x5d\x96\x01\x2c\xbc\x37\xe6\x47\x69\x41\xaf\x79\x69\xdc\xb7\xa6\xf9\xc8\xff\x80\xdd\xe3\x7f\xb2\x32\xf8\xb1\xdf\x0f\x06\xf9\x68\x93\x7d\xfa\xc1\x05\x19\x94\xe4\x7f\x83\xb4\x03\x79\xdb\xb1\xd2\x5a\x44\xf9\x7d\xb6\xc3\x7d\xb6\xb3\x8a\xbf\x2e\x89\xa1\x56\x2b\x7b\x84\x2a\xba\x88\xe3\x3e\x9c\x0e\x2b\xcd\xca\x86\xa3\x93\xd8\xd9\x60\x63\xd2\x2b\xb0\xf7\xdf\xeb\x15\xbe\x32\x6b\x7e\xc9\x76\x53\xd8\x36\x2b\x92\xde\x88\x24\x23\xbd\xb7\x58\xd0\x92\xfe\x52\x62\x3a\xda\xdf\xa1\xab\x5b\xe3\xf0\xb6\xa1\x43\x68\x7c\x86\xb8\xed\xff\x42\x26\x2b\x72\xb0\x2a\xad\x5d\x3b\x0a\x7d\x9e\x98\x1d\xb5\x7e\x60\x47\xad\x08\x5d\x1f\xd9\x51\x2b\xdc\x51\xb6\x8d\xb0\xa3\x82\x3d\xf5\x9d\xa7\x27\x63\xfb\xcc\x88\xa6\x7f\x4c\x21\x7b\xc7\x8c\x36\xee\x95\x48\x42\xb6\xb1\x7e\x2c\x06\x2e\x64\x50\x97\x91\x87\x2e\x49\x06\xde\x51\xa5\xe5\x64\xb9\x77\x61\x02\xb1\xc6\x5d\x09\xca\x62\x9b\x6c\x25\x90\x27\x02\x3e\xd1\x0d\xc0\x9b\x35\xdc\x84\xbf\x43\x05\x20\xc5\x81\xfd\xa4\x77\xec\x0b\x70\x25\xce\x14\xb1\x3c\xb3\x38\x77\xc0\x0d\x2b\x53\x5e\x69\x2f\x3b\x51\x48\x6e\xde\xca\x9a\xeb\x01\x9c\xd8\x07\x58\x9c\xb7\x96\xc5\xa1\xa8\x44\xec\x18\xfa\x33\xd3\x4e\x82\x83\x5d\xbf\xc4\x1c\xbb\x27\x04\xb6\x3f\x49\x10\x7e\x1e\xaa\xe9\x5a\xd5\x08\x8f\xf4\x67\x6b\x72\x3a\x64\x8d\xba\xdc\x88\x05\x35\xf5\xa0\x59\x39\xa1\xca\x68\xb3\xe0\xad\x0b\x31\xb5\x41\x9b\x05\x34\x51\x4d\x23\x07\x39\x75\x37\x12\x38\xb8\x66\x37\x16\x02\x99\xcc\x9b\x6c\xf5\xc1\x61\x8f\xf8\x46\xf7\x5c\x51\xe7\x80\xbb\x66\x2a\xf5\xbc\xfa\x9a\x27\x02\x60\x06\x1a\x00\xdc\xb6\x3e\x77\xc2\xb5\xab\x23\x54\x19\x1d\x08\x70\x09\x58\x3f\xaa\x29\xa2\x2e\x98\xb3\x0f\x17\x55\xcb\xd6\xe9\xc6\x23\x90\x87\xf6\xd2\xa0\x83\x07\x45\x65\x70\x51\xa3\x15\xeb\x4f\xe8\xce\x98\xa5\x1f\x07\x67\xdf\xb1\x27\x79\xf2\x67\x99\x20\x9e\xb8\x75\x2f\x4a\x4b\xe4\x34\x77\xc6\xdc\xbc\x8b\xc9\x64\x2c\xb7\x90\x6f\x0e\xf1\x9b\x81\xe9\xc3\x81\x10\xd2\x2b\xeb\x9a\x3a\x61\x3f\xc1\xe0\x48\x8a\x84\x93\xde\x5a\x57\xab\x57\xe4\x6b\x10\xcb\x1f\x6d\xa6\x6b\x8f\xe8\xb8\xc9\xd2\x0e\x94\xcf\x9f\x00\x78\xe4\xdc\x35\xf1\xb9\x3d\x0d\x5d\x08\xe3\xb4\x11\xcb\x94\x0f\x09\x30\x14\x2a\x94\x67\x80\x78\xc8\xa2\x9e\xd4\xb1\x32\x01\x40\xa9\x07\xf7\x94\x52\xe5\x5c\xfa\xe7\x54\x1f\x66\x07\x17\x75\x40\xfe\x32\x36\x08\x11\x45\x63\x0b\x24\x38\xe0\x43\x61\x2f\xe3\x3d\x35\x5a\xed\x8a\x62\xca\x01\x6c\x01\x83\xfb\x46\xdb\x71\xbf\x6f\xb3\x58\x4b\x87\xa8\x4f\x20\x8f\xa9\xd7\x4f\x64\x41\x52\x15\x84\x47\xc6\x91\x69\x78\xee\x59\x00\x1a\x42\x57\xb5\x10\xc4\xcc\x59\xed\xf7\x0b\x6b\x62\x82\x5b\x03\x58\xd5\xac\x76\x7d\x35\x8b\x3c\x75\xcb\xbd\xb5\x15\x7a\x2b\xfb\x8e\xb3\x70\x17\xc5\x25\xd1\x27\xa0\x1b\x64\x8f\x7d\x03\x42\xa6\x66\x60\x70\xe1\x58\x92\xc3\x43\xd2\x3f\xd0\x4a\x46\x22\xa8\x68\x49\xd2\x75\x6e\x1e\x9f\xe8\x3b\xb8\xe8\xd2\x4a\x84\x84\xf5\x47\x19\xda\x2c\x69\x06\x1a\xee\x37\x92\xd0\x2d\x87\x2b\xcf\xd9\xd8\x29\xf6\xf5\x4a\x26\xa9\x64\xe2\xd0\xf5\x0a\x0b\x4a\x22\x81\x76\x9d\xde\xd5\xcf\x3d\xb3\x2d\x81\xc9\x36\xe3\x66\x07\x28\x3f\x04\x22\x84\x5f\xe5\xc3\xd6\x53\x4f\xeb\x6e\x12\x00\xfa\x5f\x5a\xf4\x91\xca\x02\x2f\x5b\xe5\x01\x3b\x84\xee\xed\x7b\xda\x0a\x49\xbb\xb4\xce\xe9\x8e\xad\x41\x95\xae\x60\xf7\x87\x5e\x3e\x94\xe7\x3b\x80\xb7\x92\x83\x9d\x5d\x38\xa1\xde\xc0\xa0\x50\x09\xa8\xab\xca\xb3\x8c\x2e\x59\x7e\xbe\x18\x02\xe8\xbd\x3c\xab\x48\x11\x68\x4f\xad\xa6\xe3\x54\xba\x53\x24\x3f\xaf\xec\x45\x6e\x1d\x98\x83\xd0\x64\x39\x5d\xa4\x39\x19\xee\x48\x6f\xdd\x67\x7a\x0f\x86\x65\xac\x51\x60\xb7\x7d\xb8\xab\xe0\x49\xab\x1d\xd4\xee\x2c\x28\x28\x6c\xd8\x52\xf7\x56\x1f\x46\x96\x1c\xad\xf2\x4f\x7c\xf9\x03\x1c\xc1\x53\xe1\x54\x7b\x03\xd4\xdf\x74\x4c\xe8\x0d\x2b\x87\xea\x7c\xe3\xdc\xea\x02\xef\xad\x06\x1b\x42\xd5\xd9\x64\x3c\x2d\x42\x6d\xa8\x71\xaa\xce\xb6\xf5\xa0\x40\x31\x43\x0d\x93\x9b\xe9\x38\x9d\x8c\x09\x49\xcb\xf3\xcd\x60\x3b\xfc\x26\xe8\x37\xc2\xec\x0d\x6c\x92\xe1\x86\xd0\xc0\xaa\xf8\x9f\xee\x12\xe2\x14\x9a\x8c\xa2\xd1\x7e\xff\x83\x26\x22\x06\x39\x4e\x05\x1b\x2d\x28\xd7\x3b\x88\x6c\x8f\x5f\x43\x31\xad\x9d\x86\x0c\x94\x2d\x5e\xb6\x8a\xd7\xd3\xd5\x59\x3a\x2e\xc4\x9a\x1a\x4b\xda\x4a\x41\x06\xa1\xcf\x97\xdf\x40\x7a\x0e\xdd\x09\x3d\xfd\xa3\xba\x60\x42\xa8\x64\x8a\x96\x4c\x3d\xe4\x94\x44\x8d\x16\xeb\xa9\x37\x6a\xd1\x3f\x87\x13\x92\xea\x7c\xf5\x50\xb0\x18\x6b\xb6\xe7\xb5\xa8\x58\x6d\x13\x23\xd6\x5d\xea\x2b\xc4\x47\x11\x54\x6d\x7b\x01\x91\xd4\x22\xdf\xa5\xfd\x71\x40\x6d\x7e\x90\x6d\xa4\xf4\xa0\x1a\xc4\x4a\xbf\xef\x6a\x80\x33\xc5\x97\x0c\x7d\xb3\x18\xa9\x45\x69\x7f\x6a\xa6\x22\x6f\x40\x21\xa2\xff\x24\x5a\x36\xa1\x10\xc1\x77\x12\xf8\x18\xdc\x92\xa1\x32\xd8\x7d\xa1\x9d\x15\xa8\xa6\x53\x03\xce\x5f\xb3\xc0\x32\x98\x88\xa5\xc3\x44\x54\x1d\xd0\x7f\xce\x5c\x14\xf6\x58\x1e\xcc\x6c\x30\x16\xef\x3a\x10\x41\xd0\x42\x34\x54\x96\x8b\xb2\xe5\x32\x22\x34\xaa\x36\x99\x34\xee\xea\x12\x31\xda\x88\x25\x07\xd8\x9b\x52\x4d\x73\x56\x21\x76\x59\x2a\x59\xb4\x95\xfc\x26\xf2\x36\x03\x4d\xd3\xb6\x8a\x5d\xe8\x4b\xa5\x22\x74\xc7\x56\x22\x41\x51\x27\x5e\x4a\x32\xd2\xab\xf0\xee\xfe\x64\xa5\xb8\xae\x26\xfc\x69\xd4\xb3\x6e\x8c\xdf\x6e\xcc\x38\xda\x80\xa6\xec\xa3\x7f\xbc\xaf\xbe\x7e\x44\x66\x63\x84\x91\xd9\xef\x1f\xbd\xbf\x34\x8f\xc4\x98\x8e\x98\xd7\xfc\xa0\x0b\x49\xc1\x6a\xbd\x48\x72\x6a\xca\x44\xbb\xa7\x85\xe3\x33\x6d\x11\x8c\x65\x62\xbf\x2f\xce\xe1\xa9\x05\x84\x0e\x56\xe2\xd6\xb3\xfd\x3e\x1c\x8c\xe3\xf5\x31\x95\x2c\x2a\x85\x8a\x7a\x18\xc1\x98\x9c\x16\x4c\x9d\x0b\xe4\xa4\xa7\x68\xc0\x27\xa8\x1a\x4e\x48\x6d\x08\xd2\x71\x0a\x03\x8e\x19\x76\x03\x3f\x82\xd8\xcc\xb7\x65\xae\xd2\xa8\xda\x5d\x29\x99\x81\x3d\x21\x24\x1b\x76\x27\x2b\x01\xb2\xca\x1f\x92\x12\xfc\x8d\xef\x06\x52\x1f\x2e\x01\x05\x2c\xac\xdd\x56\x14\xd1\x25\x33\xae\x55\xeb\x05\xfe\x96\xab\xf5\x9b\xec\xca\x4b\x38\xd7\xa1\x91\x49\xf1\x28\x23\xa7\xeb\xd3\xe1\x70\x4d\x96\x03\x96\xd1\xd5\x80\x45\xef\xd1\xcd\xe1\xf2\xac\x88\xe3\x64\x35\x60\x1b\x91\x14\xc3\x25\x21\x74\xd5\x67\x0b\xcb\xc4\xfe\x28\x13\x41\x57\x60\xdc\x66\xfc\x74\x2b\xea\x47\xde\x3b\x64\x6e\xad\x04\xda\x1f\xc3\x1d\x6f\xcd\xc6\xa7\xeb\x33\xd1\xf1\xc0\xb1\xb6\x0f\x1c\x5b\x16\x46\xcf\xd6\xe8\xf6\xb3\xe6\x34\x33\x8e\xb7\xf6\xce\xe9\x74\xbe\xc9\xfd\xaf\xfa\xea\xb1\xa6\xe6\x1a\xbb\x64\x8d\xd6\x2d\x09\xb1\x2e\x16\x03\x40\xc0\x96\x4a\x93\xd2\xb7\x05\xab\x77\xd3\x9c\x11\x35\x15\x00\xa6\x41\x5f\x9a\x87\x81\x14\xdc\xf8\x38\xf8\xb3\x1c\x65\xf3\x49\x99\x08\x9a\x13\x2b\x4f\xb0\x37\xd5\x1c\x3c\x1a\x05\x94\xfa\xab\xd6\x1b\x90\x7b\x89\xb5\x17\xf5\x92\xcd\xe6\x14\x51\x5e\x1d\x88\x10\x80\xbd\xda\x3c\x82\xa9\x44\xce\xf2\x39\x39\xf5\x76\x1f\x5b\x9e\x08\xbc\x53\xdc\x88\xa4\x24\xe6\xf1\xeb\xd4\x41\xc2\xa1\x20\xca\xbc\x8e\x65\x98\x52\xb8\xd7\xb3\x7b\xfc\x64\x18\x61\xc7\xcc\x08\xfd\x04\x39\xfc\xdc\xb4\xc9\xf3\x52\xf4\x40\x80\xaa\xce\xd9\xf8\x54\x0d\x87\xe4\x47\x69\x98\xee\x28\xa2\xe5\x4c\x19\x09\x2a\x7c\x29\x41\xa3\xc1\x92\x17\x5c\x69\xf6\x19\xce\xad\x43\xf8\x2c\xfa\xb7\x0e\x0e\xcf\x1c\x3e\x80\x8f\xb2\xa6\x15\x93\x14\xf1\x4d\xa8\xa8\xb9\x3a\xb2\xca\xc0\xb4\x62\x49\x3e\x2d\xb2\x74\x91\x11\x7d\x65\xa3\xd2\xba\x6e\xc2\x19\xab\xf0\x16\x0e\x3c\xac\x18\x48\x62\x2f\xe1\xfb\x7d\x79\xce\xb8\x03\x52\xaa\xf2\x3f\xf9\x7e\x9f\x08\x56\xd2\xbe\x01\x54\xa1\x25\x21\x81\x02\x61\xc6\xf2\x69\x22\xcf\xc6\xd3\x32\x4b\xa5\xae\x8b\xa4\xfa\xd7\x2e\xbc\x81\xa4\x63\x24\x38\x19\xab\x7a\x0e\x93\x46\x53\xba\xc5\x3a\x93\x60\x6c\x5a\x84\x7e\xf3\x16\xa2\xd8\x6d\x4a\x13\x0e\x90\x05\x36\xe6\x56\xc8\xa5\x71\x38\x78\x2d\xc5\x6e\x0b\x69\xec\x34\x2c\x70\xc7\xad\x98\x8f\xa3\x4b\x16\x88\xb6\xae\xb9\xfa\x91\x17\x5b\x2e\x13\x45\xa1\x28\x70\x3b\x19\x11\xba\x66\xfd\xf1\x69\x5f\xf7\x82\xec\xf7\x45\xd2\x5f\x93\xd3\xb5\xbe\xe0\x99\x7d\xb9\xab\xf9\x4a\xca\xc8\x7e\x1f\xbd\x2f\x23\xba\x61\x4f\x44\xb2\xa5\x4b\x32\x8d\x6e\xa3\x74\x15\xc7\x3a\x94\xb1\xed\x34\x2a\xa3\xb4\xbf\xd2\xe4\xbd\x32\xe4\x7d\x4b\x70\x83\x44\x5b\x20\x36\x3a\x72\xbd\xdf\x6f\xf6\xfb\x64\xc3\x22\xdd\x82\x45\x1c\x2f\xfa\x6c\x43\xee\x2d\xbb\x3e\xa1\x45\xe2\x36\x6e\xbe\x4a\x36\x71\x9c\x2c\xd8\x86\x50\x79\x3e\x8e\xe3\x3e\x34\xd2\x60\xf3\xea\x46\xde\xb0\xbf\x72\x74\x6d\x25\x68\x46\xa8\xa2\x55\xa0\x8e\x76\x02\xce\x83\x6f\xc8\x7e\x9f\xdc\x8c\xd6\xb9\xba\xb4\xee\xcc\x6e\x02\x24\xcb\x63\x87\x2c\xac\xb8\xc2\x80\x15\x3b\x8f\x8f\xd6\x65\x58\xa8\x23\xdc\xe9\x95\xcb\xc0\x67\xff\xfb\x98\xb9\x3d\xe3\x73\x71\x20\xbf\x4e\xaa\x21\xac\xb4\xc9\xe8\xdb\x74\xf4\x2d\xf9\xba\x76\xd1\x41\xc3\x5b\xe7\xf7\x12\xef\x22\xe7\xe3\xa9\x43\xef\xfd\x26\x45\xb8\xdc\x6f\xbc\x4b\x2d\xb4\x86\xfa\xc3\xb8\x3d\x33\x8e\xcd\xac\xc3\x37\x1c\x5d\xbc\xa3\x8c\xa7\xf9\x19\x1b\xa7\xf9\x39\x13\x16\x05\xfe\x7e\x17\x0c\xa5\x9d\xa7\x01\xfb\xf6\x6b\x87\x78\xb5\x3b\x5c\x86\xce\x97\x17\xa2\xac\x94\xdc\x2d\x94\x90\xe9\xa5\x71\xbb\x13\x10\x93\x06\x1a\x8e\xf1\xa5\xde\x65\x77\x43\x2b\xae\x5e\xc1\xa9\xd7\x70\x35\x7d\xe3\xfd\x7e\x9b\x53\x91\x96\x4c\xce\xf8\xbc\xa7\xff\x83\xf3\x23\xd2\xac\x44\xd4\x67\x7a\x53\x43\xa0\xa2\x7f\x97\xa3\x75\x56\xbd\xba\x2d\x5f\x4b\xb1\xe5\x52\xdd\x81\xf9\x98\xf1\x1e\x4f\xff\xae\x53\xa1\xf7\x78\xb8\x1c\x93\x03\xbd\xee\xa8\xbe\xee\xe8\xd9\xd4\x3e\xe3\x73\x48\xfd\x54\x2c\x8e\xb9\x84\x5e\x8a\xc5\x81\x66\xcb\xe5\xcf\xa0\x03\xda\x74\x9d\x0d\x80\xa2\x35\x5d\x54\x35\x8d\x34\x39\x8e\xd2\x68\x57\x82\x5e\x49\x34\x4f\x6e\x4a\xd0\xa2\x31\xe2\x85\x56\x49\x21\x9d\x6e\x97\xd8\xf4\x6a\x33\x18\x48\x70\xc1\x3a\x93\x73\xa6\x47\x09\x5c\x09\x95\xd9\x86\x33\xc6\x03\xa3\x32\x78\x79\x4b\x24\x9d\x10\xda\x1f\x43\x0f\x5e\xdd\x70\x59\x64\x77\xe9\xdf\x42\xc5\x98\x60\x5a\xf8\x48\x89\x8f\xbc\x9c\xf2\xf4\x52\x13\xa2\x17\x62\x69\xbc\x68\xdb\xa9\x42\xd5\x31\x89\x8e\x07\x2e\x75\x1b\x89\x5a\x4b\x71\x0b\xf2\xe9\x0b\x29\x85\x4c\x22\x53\x49\x75\xb2\xc9\xee\x4e\x4a\xa1\x4e\xae\xf8\x09\x74\x67\xb5\x2b\x46\x11\xe9\x05\xfd\x13\x26\xa9\x79\x13\xd1\xf3\x9e\x4a\xaa\xff\x5c\x6e\xf9\x22\xe5\x54\x6c\xb3\x7f\xee\x78\xaa\xd0\x53\x8a\xfe\x3e\x58\x0c\x57\x28\x40\x27\xfd\x81\x97\x83\x01\xd5\x04\x13\x90\x6f\x09\x31\x83\xdc\xdd\xd9\x23\x23\x6d\x5b\xd2\x35\xd4\xd6\xdf\xb9\x1e\x65\xdb\x36\x38\xa4\x60\xf0\x5b\xe2\x13\x1e\xc7\xe5\xc3\xb3\xd1\xd9\x01\x78\x49\x72\xbd\xd0\xdd\x40\x6e\x11\x7c\x66\x35\x27\x4c\xdf\x92\x6d\xc5\xfd\x40\x6e\x63\x99\xa2\x7e\x5d\x96\x63\x2e\xd4\xd3\x70\x2e\x47\xc0\xc1\xff\x84\xd7\x0e\xc3\xce\xa7\xc8\x61\xa7\x6a\x0a\x8c\x73\xc0\x1c\x13\xfa\x8c\x3b\xc5\x47\xb0\x9b\x7d\x27\x8d\xba\x23\xb4\xc6\xb7\xd7\xe9\xa2\x7e\x6e\xe0\x1b\xcc\x94\x64\xa0\xc0\xf3\x30\x90\xdf\x2a\xc9\x9d\x7b\xfb\xdc\xb3\x9d\xe7\x9a\x1b\xb7\x0d\x0a\xc2\x8d\x9d\xae\x64\x61\x58\xc9\xea\xf5\xbb\xd7\x90\x38\xfe\xcd\x0c\xbf\xb1\xe8\x44\xa6\x26\xb7\xe0\x0f\x19\xcb\x11\xe2\xa1\x0a\x1c\xc1\x58\xf1\x68\x2f\x10\x9e\x22\xa2\xb1\xc7\xfc\x30\xa2\xd1\x24\xd3\x37\xf7\x71\x3a\x21\x64\x30\x09\x4c\xb3\xab\xd3\xdd\x99\x04\x6d\x00\xdb\x85\x1d\xe5\x4e\xca\xda\x1e\xaa\xde\x98\x01\x96\x27\x80\x0c\x3a\x98\x38\xcb\x5f\x16\xb3\x72\x6e\x5a\x3c\x5a\xac\xf5\x41\xfc\x6b\x30\x73\xa5\x65\xc1\x05\x85\x84\xe0\x98\x1f\xa5\x88\x7a\x0a\xaf\xb9\x7a\xa3\x29\xc0\x13\x95\x76\x69\xb7\x9d\xfc\xb5\x74\x93\x8e\x44\x56\xf7\x10\x72\x54\x0f\x67\x58\xf3\x84\x13\xa3\x0c\xea\x6a\x79\x73\xb7\xe5\xb5\x9a\xc8\x3d\x07\x7b\x5f\xbf\xce\x50\x48\x42\x25\x53\x39\x16\x74\x91\x07\xd1\xd6\xd5\x6f\xc9\xc6\x34\x67\x89\xf4\x00\x94\x8f\x1e\x03\x6f\x80\xfe\x64\xf5\x78\x11\xc5\xe4\xec\xf1\x1c\xd9\xb4\xf0\x6c\xcd\x58\x39\xc8\xcf\xcf\xc1\x77\x69\x92\x4d\xe5\xec\xf1\xd7\xd9\x70\x32\x4f\xc7\xe4\x9c\x09\x92\xb3\xcc\x59\xf7\xf6\x13\x88\x1c\x4c\xe6\x67\x82\x90\x7b\x28\xf0\xeb\x6c\xf0\x78\x6e\x4e\xd6\x92\x65\x83\x09\x3e\xcc\x54\x7a\xb3\x21\x94\xed\xab\x15\x40\x12\x1a\x02\x73\x12\x91\x74\x38\xb1\x3c\x4f\x75\x36\x9e\xaa\x74\xcc\x58\x85\xac\x97\x72\xa0\x2a\xd5\x70\x82\x03\xa5\x69\x70\x63\x8c\x1a\x7b\x48\x93\x10\x6f\x2f\x02\xdc\x8b\xce\x34\xbd\xf4\xdf\x89\x41\xd6\xf6\xd3\x9b\x70\x82\x14\x88\x40\xfe\x54\x41\x65\xc8\x79\x76\xcf\xa4\x2d\x00\xd3\xa0\xef\xe2\xd9\x78\x1e\xe4\x6b\x2e\x01\xab\x39\x07\x2c\x4b\x55\x36\x4f\x70\x67\x84\x72\x22\x8d\xee\x43\xa5\x2f\x1e\x34\x67\xb6\x2a\xec\xbb\xd1\x57\x6e\xd1\xd9\x7c\xa6\xe6\xa4\x9c\xe9\x3f\xf3\x38\xb6\x8a\x76\xf8\xdb\xb3\xe3\x90\xca\xdf\xc7\xc6\xa7\xe2\x4c\x07\x59\x0a\x23\x2c\x85\xc9\x18\x66\x9d\x89\xf9\xbc\x97\xb9\xf2\x32\x8b\xba\x3c\x5a\x43\x1f\x11\x01\xb3\x9c\x85\xbf\xe7\x53\x5f\x79\x18\x4c\x52\x1d\xa0\x4f\x82\x5a\xfb\x30\x04\x19\x3c\xab\x3f\xf4\xe1\xba\x10\x57\x59\xd1\x6a\x55\xc5\x5c\xdc\x4c\xcc\x7b\xd5\x68\x2b\xf9\x32\xc9\x61\x36\x49\x1c\x1b\xdc\x5e\x49\xab\xd1\x4d\x56\x10\x57\x0b\xfe\xf4\xa8\xa6\x7a\x8e\x2e\xdd\xa5\xff\x38\x47\xb6\x14\x0b\xb7\x34\x0d\x6f\x95\x70\xf6\x12\xd4\x23\x51\xfe\x39\x95\xe6\xda\x25\x8d\x43\xdf\x94\x6b\x6a\x06\xe4\x00\x05\x87\xdf\x0b\x21\x97\xdd\x4b\xa1\x45\x76\x01\xd2\xcc\xd6\xf8\xc6\xd4\xe8\x6b\xd2\x34\x3b\x8d\xc4\xd5\x1f\x08\xf7\x64\xcf\xd7\x69\x9d\x44\xa4\xd0\x28\x20\x78\xa9\x44\x02\xad\xf6\x7b\xbc\x05\xe8\x56\x81\x9a\x79\x47\x9b\x4c\xb5\xbf\x98\x6a\xeb\x85\xd6\x8b\x80\xec\xfa\x22\xd6\x5d\xc4\x1f\x7e\xac\x5e\x2b\x47\x20\x5d\x01\x88\xad\x49\x39\x48\x28\x0f\x80\x70\xfb\xc4\x3a\xea\xec\x2c\xcf\x17\x83\xbe\xdd\x28\xb8\xba\x18\x1f\x82\x32\x41\xe6\xf9\x31\xa4\x85\x83\x1a\x37\x1e\xb8\x74\x3e\x50\xbc\x0d\x3c\x41\x56\xa2\x63\x62\xc0\xa9\x37\xec\xb1\xa6\x4c\x85\xbb\xe3\xd7\x4e\x1d\xce\xbe\x9f\x49\xf4\xfb\xcc\xcf\xea\x09\xa6\xbc\x91\x23\xe5\xe7\x60\x3b\xc6\x72\xf4\x47\x4e\x25\xab\x51\x72\xb3\xcd\x24\x73\xa4\xec\xa3\x19\x02\x89\x83\x30\x3e\x32\x08\x83\xa4\x9c\xba\xaa\xb0\xa3\xc3\xd7\x79\x22\x49\xaa\x4f\x9a\x25\x5f\x65\xbb\x42\x79\x24\xdd\x0e\x1e\xff\xa9\x4a\xc2\xa1\xf3\xb9\x1c\x22\x6f\x47\xa6\x97\xad\x4c\x15\x57\xf8\xce\x82\x8e\x3e\x3a\x59\x36\x93\xf9\x67\x19\xf4\xdc\x69\x48\xb4\x5f\x83\x4b\xc6\xcd\x93\x8d\x71\x1e\x02\xaf\x89\xb5\x10\x76\x7f\xf0\xde\xd0\x67\x6a\xce\x24\xed\xcb\x38\xfe\x28\x92\x12\x4d\x1d\xeb\xa9\x0d\xa6\xf8\xf8\x80\xea\x20\xa0\xb0\x84\xad\x6e\x71\x6b\x37\x0d\x78\x57\xcd\x3c\x30\xb3\xfb\x7b\x12\x9f\xb5\x7d\x06\xdd\xb9\x7a\x5d\x9a\x18\xd5\x02\x66\x9a\x0c\x26\xed\x40\x83\x65\x2c\x13\x15\xaa\x8b\xd0\x8f\xa2\x99\x96\xb4\xb3\x1b\xe8\x76\x3a\x18\x94\xa6\x4b\x7a\x77\xfd\x54\xae\x44\xda\x78\xf6\xef\x5a\xda\xfa\x5c\xaa\xb3\xb5\x2d\xac\x60\xc5\x38\xea\x65\xf2\xc6\x7a\xad\x25\x3d\x58\x16\x01\x69\x57\xa2\xd8\x13\x00\x8a\xad\xa5\xb1\xbe\xe0\xf5\x26\x54\x14\xed\xfd\x52\x8e\x8f\xa8\xdc\xc0\xbc\x85\x7d\x4b\x1b\x93\x07\x29\xbf\x2f\xb2\xaa\x32\xc9\xe1\x9b\x5e\x5d\xdb\x30\xf3\x45\x6f\x65\xb6\xb5\x61\xee\x9b\xde\xe6\xcb\x6b\xae\x20\x0c\xbf\x0e\x70\x2c\xfc\x9a\xf3\xdb\xad\x90\x1d\x1b\xc3\x68\x8f\x34\xa9\xca\x33\xab\xf8\xdd\x8c\x78\x23\x0e\x70\xc9\xfc\x0d\x8a\x3f\x8e\xa2\x49\x33\x0a\x58\x99\x74\x41\x57\x2c\x2c\x85\x2e\x59\xc2\xd9\x9b\x4e\x7a\x4c\x88\x7d\xac\x59\x33\xee\x44\x3d\xca\x38\x13\xb4\xfe\x87\x58\x64\xfd\x0f\x81\xcf\xd0\x87\xd1\xa9\x29\x82\x48\x77\x8a\x31\x2a\xae\xde\x96\x7c\x99\xab\xec\xaa\xe0\xe0\x30\xdd\x78\x66\x0a\xdd\x07\x29\x42\x23\x30\x1c\x63\xac\x24\x4b\xb8\x3c\x6f\xbd\x18\x30\xbb\x12\x37\xdc\xc8\x01\x4b\x6e\x44\x88\x46\x58\xe7\xae\x0f\xab\x6e\x49\x54\x83\xa0\x79\x9c\x41\xc8\x82\x2d\xa9\x61\x21\x04\x48\x25\xa1\xb9\xfe\x69\xad\x19\xdc\x4a\x99\xea\x3e\xb9\xcf\xb7\x20\x0c\x57\x62\x7b\x5e\x8f\x98\x9a\x3e\x0d\xeb\xc1\xe9\x91\x72\xce\xd8\x36\x8e\x13\x9d\xc7\xbc\xa6\xd1\xb5\x4b\x81\x00\x0e\x9b\x38\x4e\xd6\x6c\x33\xac\x85\x92\x83\x9d\x45\x25\xb6\x6c\xe9\x1c\xbe\x42\x50\x01\x00\x1c\xe6\x07\xbc\xdf\xb1\x28\xa2\x11\x7c\x45\x8c\xe5\xd3\x64\xcd\x3a\x06\xa4\x5e\x03\x6d\x14\x30\xde\x7e\x8a\x48\x9a\x44\xba\x70\x28\x64\xcd\xc6\x69\xb4\x01\xc0\xb4\x08\xed\x03\xd6\xac\x6b\x9c\x1b\x0d\x7f\xf4\x98\xd4\x1b\x8a\x7e\x6d\xd1\x20\x41\x20\xe9\xcc\xd8\x9a\x56\x6c\x49\x77\xac\x31\x18\xb4\x60\xcb\xc6\x00\x9a\x07\xe8\x64\xc1\x7e\x95\x89\xdb\x26\x84\x84\x6e\xd7\x36\x3a\x66\xd1\xf4\xce\xd7\x67\x2d\xe7\x98\x3e\x15\x7a\xc7\x3b\x50\x25\xf3\xeb\x6b\x2e\x5f\x95\x3f\xf3\xbb\xa7\xe2\x16\xee\xe7\x4f\x24\xa9\x85\x83\x99\x9d\x8e\x78\xdd\x88\x78\xbb\x4d\x3f\x4a\xca\x3f\xf1\xc5\xf7\x62\xb3\xc9\xca\x65\x93\xbe\x2e\x5a\xfc\xbd\xa7\xa6\x8b\x72\xc6\x43\x2f\xd1\x28\xe2\xb0\xe5\x5f\x14\x7c\xa1\x64\xbe\x68\x9d\x40\x17\xdc\x19\x54\x12\x42\x57\x79\xb9\x7c\x2d\xaa\x1f\x5b\x84\xc5\xb2\x28\x93\x9e\x02\xb9\x74\xce\x86\x13\xaa\xd8\x30\xd0\x5c\x14\x6c\x4c\xb3\xc6\xcd\xf2\x54\x9c\x01\xdc\x40\xc6\xfe\x16\x1c\xc7\x19\xcd\xa1\x4c\x62\x05\xa7\xa0\xd3\x7f\xea\x5c\xcb\xd1\x8d\xb8\xe1\x3f\x1e\x15\xa0\x81\x8d\xa7\x34\x08\xb4\x1e\x1f\xe9\xbb\xbb\x20\x79\xe9\xf8\x00\xd9\xc4\xae\x95\xb0\xe9\x31\x37\xe8\x3a\xa3\xa8\x63\xfa\x37\x99\x48\x3c\x81\xd1\x5c\x08\x7a\xee\x4d\x16\x55\xf1\x42\xdc\xf0\x5f\xf3\x6a\x97\x15\xc5\x1d\x49\xf9\xd9\x78\x5a\x5a\x96\xb8\x04\x96\xf8\x40\x68\x21\x60\x1c\xf1\x49\xe7\xe1\x2e\x38\x04\xef\x32\xb8\x17\x8c\x2a\xb1\xe1\x6a\x9d\x97\xd7\xd8\x31\xbe\x4c\xc8\xb4\x7c\xc0\x04\xd9\xbd\x1e\xa5\x5f\x19\xb9\x46\x8d\x5f\xc0\x59\xfb\x9b\x4c\x4a\x2a\x7d\xb7\xfa\x13\xc7\xcf\xe8\x6e\xe0\x21\x94\x83\xbd\x05\x24\x3a\x18\xe3\x1a\x93\x45\x89\x34\x3f\x98\xa3\xdf\xac\x90\x5f\x8f\xaf\x10\x2a\x58\x79\x7c\x95\x64\x6c\x4c\xab\xe6\x2a\xc9\xce\xd4\xe9\x60\x90\x59\x39\xbc\x3d\x9d\x2a\x0a\x5e\xf0\x82\xc7\x2a\x31\x15\x6c\x07\x74\x20\xc5\x3f\x4c\xd0\xa4\x62\xbf\x3b\x91\x4e\x4e\xa5\x5f\x56\x75\x97\x85\x15\xae\xab\x5f\x1f\x9c\x94\x60\x32\xac\x43\xa9\x7e\x63\x05\xa1\x9e\x3a\x2c\x9f\x38\x46\x45\xc6\x8e\x49\x83\x36\x3f\xbc\x46\x33\x04\xcc\x21\xc1\x4c\x64\x76\x41\x65\xb0\xa0\x8c\xa2\xd6\x1b\x95\x48\x9a\x59\xc8\x2e\x18\x11\x0b\x6d\x72\x2d\xb2\xe2\x7b\x78\x25\x03\xf5\x03\x18\x92\x30\x94\x58\xbf\x56\xc6\x59\x25\x02\xc8\xeb\x01\x93\x14\x25\x4c\xf6\xa5\xd7\x3c\xe8\xa8\x38\xce\x18\x2b\xeb\xb7\xc7\x38\xfe\xa7\x34\xd7\x53\xfa\x8b\x6e\xcc\xce\xb4\x03\x4e\x2e\x74\x90\x49\x77\xb8\xfc\xa9\x35\xbd\x09\x8c\x74\xc6\xa7\xd9\x59\xd9\xf1\xe4\x9d\x0d\x06\x24\x0c\x9f\x65\xf3\xa0\xed\x2c\x9f\x65\x73\xbb\xe6\x10\x78\xb6\x43\x44\xd3\x21\xab\x32\x4a\x86\x20\x9a\xb2\xe6\x8a\xa8\x27\x13\xdc\xb3\xfc\x1b\x20\xaf\xbd\x01\x9e\x26\xdc\x00\xd6\xef\xf7\x25\x18\xfc\x61\x6f\xe2\x58\x4e\x87\x43\x99\x0e\x06\x65\x40\xf2\xdc\x63\xa0\x24\x34\x63\x4f\x04\x3c\x7b\x4f\x3b\x9e\x43\x9e\x08\xd0\x52\x3e\xa4\xfe\x2d\x50\x74\x25\xf4\xd1\x9c\x1c\x3a\xde\x55\xfa\x61\x82\x38\xee\xeb\x72\xc9\xe1\x14\x1e\x03\xb3\xc4\x37\x67\x38\x21\xe4\x94\x0c\x87\xc6\xa1\x9b\x97\xf7\xd6\x92\x95\x3a\x91\xe6\xeb\x3b\x34\xe0\xd1\x8c\xcc\xa8\xbb\xa3\x50\x17\x4e\x38\x71\x7d\x5d\x80\xdc\xff\x56\xe6\x8a\xd7\x9a\x68\xb4\xeb\xe2\x98\xb3\xa6\xdc\x1f\x12\xef\xf7\x49\xd2\x15\xce\xfa\x5d\xa1\x64\xfa\x4c\xd4\x2e\x80\x46\x6b\xea\x69\x7e\x53\xb3\x5a\x76\x19\x22\x92\x3e\xff\x57\x73\xd0\xdf\x8d\xcc\x33\x72\x81\x6f\xa0\x87\x11\xc5\xa7\xae\xae\x86\xe9\xeb\xbe\x71\x40\x7d\xf4\x3d\xab\xc6\xea\x5e\x73\xf5\x2c\xe7\xc5\x32\x21\xe8\xde\xfa\x40\x3d\x5c\x4e\xbb\x84\x7e\xd2\xaf\x3d\x22\x78\x73\xf9\xbe\x3b\x38\x16\x59\xa9\x2e\x96\xb9\xd2\x97\x62\xc3\xa7\x74\x10\x36\x23\xe6\xb1\x4a\x7e\x0a\x94\xfc\x80\x33\xa0\x6e\xae\x02\x6f\x89\xa1\xaa\x5f\x4d\x15\xb0\x95\x04\xf1\xed\x8c\x34\xfb\xd2\x58\x8a\x84\x17\x42\x0b\xb4\x54\x1b\x0c\xab\x4f\xd9\xb3\xd7\x34\x54\x14\x0c\x34\xbf\x9a\x6e\xf6\xd7\x96\x1b\xae\x41\x6f\xad\x8c\x07\xc6\x61\xad\x74\xe7\xbb\x94\xa2\x87\xd2\x9a\x5b\xf9\xe3\x79\x90\x53\x0c\xaf\x06\xe9\xda\xa4\xa5\x01\x5f\x9a\x2e\x9d\xdb\x47\x5a\x37\x8d\xe9\x18\x77\x77\x60\xf1\x69\xc2\x59\x78\xc9\x6b\x0a\xe6\xdc\x09\x0b\xd7\x57\x1a\x7a\x17\xac\xad\x81\xb6\xc2\x20\x21\x6d\x85\x29\x3e\xe5\x81\x15\x84\xb1\x7f\x80\x92\x53\xab\x5b\xb9\x02\x27\x7b\xae\x55\xdc\xa5\x20\x20\x3c\x03\xe9\x87\x12\x26\x21\x3a\xcc\x97\x60\x7e\xb4\xdf\x8f\xed\xa2\x09\xcc\x2f\xdc\x7a\xea\x58\x22\xaf\x45\xc5\xb8\x7f\xe5\x91\x9a\xe5\x86\x4d\x15\x28\x0b\x60\x49\x56\x74\xd7\x54\x3b\x34\xf1\x4a\x6c\x31\x1a\xd4\x0f\x79\x4b\xfd\xd0\x24\x93\xc6\x41\xb7\x12\x2d\x35\x44\x93\xc2\x5c\x6f\x21\x89\x55\x47\xe4\x4e\x1d\x11\xf7\xba\xd5\x48\xac\x69\xfd\xca\x9a\x46\x22\x01\xf8\x83\xcb\xfc\xcf\xf6\xa3\x61\x8d\x49\x75\x4a\x15\x01\x01\x6f\xcf\xd9\x7e\xff\xe8\x1f\xef\x97\x03\x8b\x35\x84\xe8\x1d\x9a\xb3\x9f\x72\xb8\xeb\xa4\xfc\xe0\x37\xab\x6c\xa9\x57\xe0\xdd\x08\x96\x3c\x83\x07\xf0\x60\xdf\x1e\x4b\x8d\xdb\x8a\x01\x48\x55\xc0\xe4\x86\x6a\xb0\x71\xfc\xca\xfa\x46\xc5\x53\x53\xb6\x24\x14\x3d\x64\xa5\x41\x4a\x95\x53\xd9\x10\x54\x74\x58\x1e\x1b\xa1\x48\xcb\xea\xd8\x84\x5b\xb6\x40\x21\xe4\x9f\x0b\x9f\xa9\xf9\xa8\x14\x3f\xe2\xe2\x27\xf7\x4a\xf3\x22\x39\x8d\x30\x36\xb2\xba\x31\x83\x41\x0e\xef\xd2\x0e\x6f\x48\x2e\xf8\x5b\xb4\x72\xef\x8f\x35\x99\x97\x34\x92\x7c\x25\x79\xb5\x8e\xa8\x7b\xc6\xd6\xf7\xa8\xec\x98\x0e\xc3\xcf\xca\x5d\x8e\xa8\xc9\x5a\x9f\xf0\x4e\x2a\xd7\x74\x2c\xd6\xe3\x1d\x7b\xa4\xd1\xbc\x4b\x15\x26\x71\x6b\xd0\xd3\x8c\x80\x44\xd6\xc3\xe0\x7e\xfa\x87\xc9\x6d\xa9\xce\x7e\xef\x71\x41\x87\x4d\xd9\x2b\x39\x1f\x7d\x4b\xe2\xf8\x17\x93\xc7\x1d\x80\xed\xc1\xa9\x6e\xb3\xed\x53\xd1\xbe\x34\xd6\x1f\xc7\xfc\xbb\xd8\x62\x83\x72\xc6\xdb\xdc\x8e\x5b\xa3\x63\xdd\xc8\x2a\xf5\x3e\xd7\xce\x83\xd0\xdb\x7e\x6b\xf8\x70\x41\xe8\xe1\xfb\xbb\xed\x83\x69\xb1\x3d\xbc\x09\x55\xe6\x8c\xfa\x49\xd7\x08\x67\xf0\xbf\x7a\x62\x83\x04\xef\x37\xdc\x3e\x46\x31\xe9\x73\x45\x98\xcd\x76\xf0\x87\xe3\x17\x67\xb5\x47\x24\xe4\x45\xa9\xf1\x17\xe6\x34\x76\x07\x87\x03\xcd\x45\x72\x89\xbb\xf6\xaf\x92\x5d\x8e\x8c\xa4\xbd\x62\xf7\x07\xfa\x77\x1d\x80\xdb\x1d\xd1\xd1\x40\xba\xed\x09\x15\x0f\xee\x73\x3e\x27\xea\x07\xc9\x38\x4e\x40\x0b\x88\x35\x9c\x6c\x95\xe4\xbe\xec\x33\x55\xc6\xb1\x31\x82\x26\x87\x54\xa2\xe9\x85\x2a\xd9\xe5\xe8\xa7\x32\x57\xec\x5e\x09\xa4\x6c\xed\x7e\x04\xac\x19\xa4\x8d\x0e\x87\x1e\x2f\x93\xe8\x26\x2b\x76\x3c\xa2\x51\xd4\x34\x2b\x05\xe7\x7b\x00\x0d\x06\xfe\x16\x40\xff\x40\x67\x00\x9d\x26\xbc\xa6\xb4\x72\xd8\x57\x5c\xd4\x58\x62\x8a\x3e\x01\x65\x4b\x97\xd7\xeb\x21\x47\xf4\x31\x7d\xd2\x08\xb7\xea\xc4\x00\x22\x03\xe1\x81\x66\x47\xe4\x12\x1b\xad\xf1\x88\xfe\xa5\x4e\xfd\x3e\x26\xb8\x15\x38\xa1\x5c\xd6\xeb\xad\xc1\x68\x77\x37\x1e\x68\x61\x00\xb9\xcd\x54\xf8\xf2\x4b\xcb\xd0\xe7\x65\x8f\x7b\x9a\xdc\xa9\x18\x92\xb3\xb1\x7d\x95\x17\x16\x6c\xc6\xbe\xa1\x2b\xa3\xfb\x36\x9c\x30\x26\xac\xda\x1b\x13\x03\x67\x4b\x67\x9e\x3e\xd7\x3c\x29\xa9\x20\xe4\x50\x0e\x06\x07\x42\x02\xec\x06\xd9\x00\x10\xc8\x43\xfd\x57\x45\xe5\x2c\x9f\x03\x12\xcc\x2c\x9f\x9b\x0b\x86\xfe\x5a\xac\x5d\x15\x06\x14\x1c\x46\x78\xcb\x17\x79\x56\xe0\xbd\x8c\x3e\x9a\xbd\xdf\x8d\xc7\xe3\xf1\x50\xff\x99\xac\xf4\xff\xff\x09\xff\x67\xcb\xf7\xbb\xc7\xe3\xf1\xd5\x10\xfe\xac\xf4\xff\x8f\xff\x0b\xfe\xff\xef\xf7\xbb\x15\x5f\xad\xe6\x8f\xae\x69\xeb\x95\xc8\x01\x49\x06\x95\x80\xad\xf0\x2f\xfc\xfa\xe2\xd3\x36\x51\xa3\x4a\xec\xe4\x82\x83\x6f\x7d\x7d\x2c\x47\xef\x55\x44\xa6\x51\x94\x46\x7b\xfd\x45\xa3\xeb\x88\x50\xd9\x37\xcb\x3b\x8e\xf9\xc8\xd0\xcf\x84\x74\x74\xe0\x75\x91\x2d\xf8\x5a\x14\xcb\xce\x37\x28\x05\x1e\xff\xab\x6d\x56\x82\xcb\xff\xff\x2b\xa2\x20\x49\x2f\x6f\xb2\x22\x5f\x82\x6a\x6c\x00\x56\xa9\x72\x55\x70\x16\xbd\x7f\xbf\x8b\x06\x1e\x93\xec\x89\x4a\xc6\xfa\x3a\x6e\xb8\x87\xc9\x7f\x90\x96\x70\x3e\x93\x79\x36\x2c\xb2\x2b\x5e\x44\xd4\x14\x03\xf4\xb1\xde\x9e\x5a\x3f\xdc\x2a\xe5\x46\x7e\x68\x26\xc3\x6f\x8e\xed\x4e\x5d\x6a\x96\x22\xa2\x9b\x69\x64\xdc\x41\x5a\x99\x7e\x94\x82\xfd\x60\x26\x79\x16\xd5\xf4\xa5\x5b\xea\x6c\xbe\x9c\x93\x45\x56\x82\x42\x5b\x72\xc7\x15\x39\xb9\xe2\x27\x68\xd2\xb7\x3c\xc9\xcb\x93\xec\x44\xee\xca\x32\x2f\xaf\x4f\x74\x15\x42\x46\x61\x13\x1b\x12\xba\x88\xf6\xaf\x31\xe2\x76\x2d\x0a\xf0\x88\x8d\xc7\xed\x77\x60\x98\x1f\xec\xd9\x35\xdf\x68\x2a\x63\x88\x5d\x63\x7a\xde\xe8\x3d\xfb\x7d\x7d\xcb\xa2\xc6\xe0\x91\x2c\xa1\x21\xee\x4d\x89\x38\xcc\xc1\x32\xb9\x29\x13\x49\x7a\x79\x1c\xe7\x00\xf4\xbc\x58\xfb\x2f\xd0\xa8\xa6\xe5\x28\x53\x18\x6e\xbf\x12\x4e\xf3\xfd\x1e\x51\xce\xcd\xca\x72\x40\x9a\x48\x30\x3c\x25\xb1\xdc\x9b\xa6\x53\xcd\x79\xed\xe2\xf2\xa6\xc9\x67\xb1\xd4\x74\x58\x54\x83\xe7\x06\x91\x3d\x32\x92\x9b\xbc\x44\x7f\xaa\x51\xd4\x4c\x81\xe1\xd0\xbc\x34\xf9\x2c\xf4\x98\xa9\xe5\x29\x30\xb0\xbf\x38\x42\x69\x88\xe6\x11\xb0\xb1\xb7\x38\x2f\xe0\x95\xc4\x4f\x8f\x39\x08\x23\x3a\x9b\xd7\x87\xe0\xa5\xb7\x12\x69\xcd\x69\x60\xc3\xa7\x97\x46\xc7\xf9\xd1\xf0\x4a\x12\xbe\x9d\x4c\xdf\x05\xfa\xc7\xc8\xb3\x47\x63\x3d\x20\x5d\x5b\x69\x21\x6e\xb8\x79\x0f\x7e\xc9\x3f\xa9\x37\xe2\xd2\xc2\x9d\xb7\x27\xed\x6d\xbd\x91\x0e\x18\xdd\x6c\xb9\xa8\xcc\x54\x7e\xc3\x1b\x4b\xf6\x3b\x3d\x62\x6f\xbb\x60\xd9\xdb\xf0\xf3\xbc\xc9\x49\x7e\x01\x0a\x7b\xd3\xd4\xaf\x79\x9a\x19\xc7\xf3\xed\xde\x3c\x3c\xfe\x12\x55\xf9\x30\x77\x44\x27\xf4\xfb\x8e\x52\x9f\x09\xb9\xc9\x3a\x5e\xf2\xad\x0c\xf5\x40\x82\x6c\xd5\x5a\xdc\xa2\x4d\xdd\x6f\x6b\x5e\x5e\x5a\xd7\x41\xd0\x30\xae\x3c\xe1\xd0\x6c\xa8\x93\xd1\xbe\x2a\xeb\x98\x71\x41\x13\x7e\xcb\x2b\xfe\xbd\xd8\xde\x7d\xbf\x0b\x8e\x7c\x2b\x9c\x69\x76\x57\xaf\x1a\x8f\x7e\xc8\x98\x9a\x26\x80\xea\xd7\x02\x03\xbc\x2a\x76\x32\xa9\xb9\x36\xc8\x2b\x4d\x3d\x97\xac\x0f\x4e\x4a\xdb\xc1\x93\x0e\x40\x41\x6c\x84\x31\x4c\x37\x5e\xa8\x74\xf3\x4c\x2e\x60\x7f\xbb\x9a\xa8\xda\xa0\x77\x86\x2d\x0f\x26\xc7\xba\x7c\x6c\xef\x0c\x0b\x67\xa3\xfa\xac\x9f\xa0\xcf\x61\xa4\x74\x24\x00\x23\x08\x5c\x36\x3c\x33\x79\x2b\x9a\xeb\x6d\x93\xa7\x7f\xcb\x7b\x79\x87\x6f\x00\x74\x4d\x01\x1a\xd0\x11\x2d\x51\x15\x9a\xd0\xe3\x29\xf5\xa9\xa3\xb9\xa7\x11\x7c\x3c\x94\x12\x51\x48\x4b\x90\xe6\x3d\x94\xae\xe0\x99\xde\x59\xe5\x08\x3e\x8e\xa7\xd4\xa3\x52\x8e\xf4\x5f\xe0\x5c\x80\x71\x6d\xbb\x7c\x09\xe9\x34\x2e\x89\xef\x8a\xbc\xfc\xf8\x4b\xa6\x78\x44\xbf\xfd\x66\x1c\xc6\x84\x42\x9e\x88\xd6\xa2\xf0\x42\xa9\x37\x47\xb0\x7e\xd1\x75\xdb\xf7\x41\x82\xd7\x5c\xea\xad\x04\xd3\x15\x24\xbc\x15\xf2\xa3\x26\xa3\x11\x50\x4c\x17\xf4\x94\x17\xd9\x5d\x10\xb6\x2a\xf4\x0e\x2b\x01\xe4\x0b\x8a\xf8\xe8\x4a\xc8\x96\xcb\x17\x62\xc9\x41\xd9\x01\x56\x93\x8f\xda\xa2\x44\x0c\xf0\x22\x83\xc2\x76\xe5\x52\x3c\xe5\x5b\xb5\x8e\xe8\xe3\x71\x17\x59\x15\x0b\xe7\x2c\xcc\xa5\x65\xca\x2e\x5f\x13\x05\xa8\x97\xb6\x9d\x8f\xbf\x35\x65\xdf\x18\xb5\x0a\x3b\x54\x93\xf1\x97\xb0\x32\x9b\xec\xd3\x8f\xf9\xf5\xba\xd0\x03\x85\xd0\x0e\x11\x9d\xf0\xbf\x04\x5d\xd9\x88\x1b\xdc\x30\x9a\xeb\xc7\x71\xed\x3a\x13\x8e\x6d\x9d\xd7\x46\x51\xc2\x33\x82\x2a\xbb\x02\x16\xfb\xe8\xdd\xe4\xc8\xd5\x73\xa4\xb2\x2b\xd0\x9a\x66\x6a\xbf\x8f\x22\x5b\x5c\xb6\x53\xc2\xe0\xa3\x7a\x23\x53\xa9\x6f\x5a\xfa\x82\x03\xf7\xbc\x12\x7e\xe5\x1b\xfe\xc2\x84\xf4\xe0\x36\x97\x97\x10\xc0\xea\x0d\xf0\x17\x3d\x28\x60\xbf\x8f\x74\xb1\x11\xc8\x11\x92\x46\x24\xe3\x84\x66\xf2\x1a\xcc\x74\xac\xc0\xe6\xfc\x31\x80\x5c\x2f\xf9\x96\xeb\xfb\xd0\x22\xe7\x15\x7a\x51\xf2\x56\x2f\xa8\x73\x8b\xcf\xd3\x2e\x3b\x7d\x4c\x08\x95\x25\xdc\x2e\x0f\xd4\x35\xf0\xa7\x17\x17\x8d\x06\x96\x3e\x8d\xe4\x95\x28\x6e\x9a\xbd\xe8\x06\xbf\xe6\x71\x5c\x76\xbd\x98\x73\x06\x05\x3a\x35\x12\x1e\xc7\xed\xbc\xa0\x41\xda\x59\x00\xc4\x10\xcb\xb9\xeb\xa2\x50\xdb\xb4\x77\x04\xe4\xe1\x5e\xc7\x82\x43\x99\x84\xb3\x5b\x03\x7d\x8d\xc6\x0b\x0a\xfe\x78\x37\xad\x1d\x3d\x78\xf4\x8f\xd9\xfb\xdb\xf7\xc3\xf9\xe0\xfd\x23\xfb\x31\xf8\xb4\x29\xbe\x72\x8f\x40\xf6\xfd\xb0\x36\x36\x49\x94\x6d\xb7\x45\xbe\x00\xd1\xd6\xa3\x4f\x9b\xc2\xdd\x20\xda\x75\x4c\xb1\x81\xfc\x90\xf2\xfd\x1e\xbf\x71\x01\x1c\xf4\x80\x1b\x15\xe1\xc6\x8c\x28\x56\xaf\xce\x81\x89\xca\x72\xa6\xcc\x70\x80\x1b\x79\xdf\x3a\x6b\xeb\x62\x50\x45\x1e\x6d\x8b\x2c\x2f\x23\x0b\xc9\x66\x20\xdd\xf2\x55\x22\xda\x4a\xcc\xe1\x88\xe7\x4c\xf8\x2a\xdc\x43\x9c\xbe\x1d\xe4\x24\x6f\xe6\x14\x04\xc0\x2e\x3b\x43\x67\xd1\x87\x68\x20\xe6\x80\x20\x48\xa8\xfe\x9f\xe5\xfa\xf3\x00\x2f\xb7\xc1\xf4\x50\x55\xd3\x4b\xd6\xe5\xb9\x9f\x2c\x8c\xd3\x57\x2e\xbd\x47\x74\x45\x5e\xc8\x09\x6d\x0b\x23\xa0\xaa\x20\x60\x26\x9c\x9b\xb6\x32\xd8\x06\x30\x8b\x30\x0f\xb5\xbb\x93\x79\x3a\x01\x1b\xa2\xa6\x47\xc0\x8f\xf9\xf6\x8d\xb8\x28\x97\x89\xb1\x34\x08\xb7\x54\x12\x8e\x3a\xc5\x82\x71\xf0\x85\xa5\x1c\x17\x9f\x14\x2f\x2b\x7d\x3a\x23\xc1\xc0\xd7\xeb\x8e\xd9\xbf\xd0\x8b\xb8\x3d\x4f\x9c\x4c\x85\xde\x58\x29\xfc\xcf\xee\x0f\xc4\x77\xc7\x95\xdd\xa2\x3d\x8e\x46\x34\xe8\xc0\x53\xb1\x38\x96\xe9\x2e\x3f\x9a\xcb\x88\x77\x38\x62\xb5\x65\x80\xf5\x67\xe3\x34\x5f\xf2\xa3\x10\x1f\x6b\x84\x23\xb3\x60\x7e\x04\xdd\x3e\x54\x7a\x34\x70\x4e\xcd\x30\x48\x7e\x9d\x57\x8a\x4b\x7c\x2e\x6e\xb9\x56\x68\x2b\xdd\x73\xb2\xdf\x27\x15\x8c\xc1\x25\x0c\x84\xd1\x2e\x4f\x67\xf3\x03\xa1\x10\x01\x5a\xa4\x48\xcf\xb0\xf0\x1f\x20\x45\x67\x15\x28\x8b\xab\xb7\xc2\x22\xd4\x40\x61\x4e\xb3\x1d\x2d\xbc\xb6\x92\x2f\x53\x49\x6f\xb2\x22\x2d\x0f\xa6\x57\x3b\xdd\xab\x85\xd8\xde\x81\x86\x3a\x6b\xc9\x97\xfa\x63\xc6\x98\x72\x96\x54\x06\xe5\xd4\xa6\x77\x2a\x0a\x3e\xc8\xef\xf8\xfb\x83\xdb\x86\x25\x2c\xf5\xba\x35\xd1\x49\x5e\x56\x2a\x2b\x17\x9a\xd4\xc0\xa1\x00\x7a\x21\xb9\x73\xf8\x3c\xd7\x67\xc0\xac\x9c\xb3\x3c\x50\xa5\x2f\x74\x73\xbd\xfd\x5b\x6b\xcc\xcd\x3b\x29\x0f\xd2\x00\xf4\xbf\xfb\x95\x80\xbd\x54\x2f\x30\xcf\x68\xf4\x19\x5e\xc5\xb9\x8f\x3e\xf5\xe6\x79\x81\x45\x07\x5a\x82\xca\xfd\x5e\xe2\xe1\xc7\xac\x31\xa8\x62\x12\x05\x48\x94\x33\x8c\x73\xad\xdf\xef\xd1\xc6\x8e\x53\x48\x90\xaa\x03\x4e\xc1\x02\xa7\x00\x14\xbb\x2a\x76\x8f\x9e\x4c\x9f\x14\x45\x73\x13\x07\x77\x91\xc4\x63\x99\x19\x2b\xa7\xb1\x7d\x8f\xf7\x28\x6a\x60\x58\x44\x91\x09\xf4\x76\x61\x0f\x14\x1a\x82\xa1\x44\x88\x6b\x07\xf7\xfb\x20\x74\xcd\xb3\x65\x64\x4a\xfe\x98\x17\x45\x43\xa9\x9d\xdc\x83\xe1\x7e\xd3\xfb\x84\x72\x66\x63\x66\x2c\x2f\x1c\xdc\x94\x37\x0d\xab\x81\xa2\x79\xa9\x96\x41\x33\x00\xac\x8b\x20\xf5\x59\xd8\xd5\xa9\xc5\x5a\xb3\x6f\xa6\x00\xc5\xe2\x91\xf8\x26\x74\x4c\xac\xea\xd2\xb1\x44\x7a\x59\x1c\x6a\xba\xb7\xd6\xf2\xcc\xe0\x2c\x27\xc0\xc6\x1f\x8c\x0a\xd7\x17\x74\x3c\x2c\x6c\x6d\x01\x4b\x13\xe2\xbc\x21\x2b\x91\x3e\xb7\x4e\xff\x0d\x14\x9d\x89\x45\xcf\xc8\xae\x3a\xc4\x1a\x5b\xa9\x87\xea\xe3\xad\xfa\x78\x47\x7d\x36\xcc\x15\x8d\xcf\x17\xcb\x2f\xa9\x21\xb0\x53\xf5\x56\x1d\x66\x04\x03\xad\x9f\xc1\xb7\xbd\xb0\x21\x9a\x32\x58\xfb\x8d\x04\xdf\xf5\xc7\xf0\x98\x2f\x0f\x26\x13\x8e\xef\xf1\x76\xfd\xd2\x30\xd5\xf8\xf7\x1b\x86\x2a\x3f\xcd\xe6\xb4\xbc\x69\x84\x8a\xa2\x83\xc9\xb8\xd1\xdc\xde\xb1\x35\x52\x62\xe3\xf5\x5d\xa5\xb1\xc9\x74\x50\x02\x2f\x85\xad\x28\x1d\x94\x98\x5c\xc7\xf6\x68\x2d\xce\x96\x73\x2c\x71\x2d\x0e\xde\xa8\xc4\x53\xb1\x00\x97\x52\x8d\x94\x0d\x15\xb4\x2e\x92\x62\xb3\x5f\x34\x34\x4e\x8f\x64\x0e\x11\x1c\x75\x4e\xfd\xfd\x05\x35\xd7\x95\xdf\xbc\x21\x4e\x9e\x25\xbc\x46\x20\x0e\x81\x7b\xf3\x81\x71\xe7\x9c\x67\x55\x3a\x39\xd4\xab\xbb\xdc\xfc\xdb\x75\x0a\x5f\xe7\x97\x54\xf7\xd9\x81\x39\x56\x4f\xb7\x1d\x90\x27\x8b\x06\x81\x40\xb2\xe7\x65\x52\x92\x53\x82\xc6\x1f\xe5\x32\x99\xe8\xcb\xa8\x41\x99\xf2\x48\x4e\x39\xfb\x25\x4f\x4a\x42\x05\xcb\xa7\xf9\x6c\x3c\x1f\x15\xfc\x86\x17\xff\xeb\xf1\x54\x66\x49\x49\xd2\x12\xff\xef\x22\xb0\x6b\xeb\x01\x44\x4d\x9f\xe8\x22\x52\x45\x05\x3a\x43\xf8\x82\x81\x1f\x06\x43\xd1\xde\xa6\x9f\x1f\x8c\x7f\x89\x9e\x9c\xfc\xcf\xf7\xae\xd1\xc3\x35\x2d\x6e\x11\xbc\xff\x1f\x1a\xfc\xd9\x06\xfd\x3b\x6b\xf7\x7f\x42\xfd\xba\xa9\xdb\x49\x39\x5a\xac\xcf\xe0\xe4\x87\x0d\x5d\x9a\x13\xba\xe2\x99\x5c\xac\x93\x47\xef\x2f\x1f\x91\x69\xb8\x57\x34\x43\x19\x76\xe5\xed\xb6\xd1\x07\xd0\xb0\x4d\x86\x13\x8a\xf8\x1b\x2e\x21\xe8\xc2\x77\x25\xad\xa5\x7c\x9d\x5d\x3f\x54\xa4\x35\x15\xc4\x84\x0f\x15\xe9\x53\xea\x31\xe8\x58\x01\xa0\x61\x0e\x85\xe2\xf3\x9a\x4d\xda\xb5\xbc\x31\x6d\x3d\x29\x28\xa8\x3e\x5c\x2e\x62\xd7\x04\xc9\x1f\x2e\x3b\x48\xfe\x9b\x90\xcb\x07\xcb\x06\xf4\x1b\x48\xfa\x83\x14\xbb\xed\x83\x05\x23\x04\x8e\x4f\xfc\x60\xc1\x41\x62\xdd\x88\x07\x0b\xb6\x8d\x58\x72\x78\xe1\xc4\x67\xb5\x46\x62\xa3\x07\x5f\x1b\x68\x93\xbe\x69\x25\x1b\x26\xaf\xa7\xd6\x2d\xf9\x6c\xe9\x41\x6b\x40\x55\xf8\xe1\xd2\x83\xd4\x30\x28\x9f\x2d\xde\x0d\x8c\xcd\xf1\x99\x0a\x5c\x7a\x54\x1f\x78\xb2\x53\x4d\x96\xa0\x01\xe4\x60\xc1\xde\x5c\x96\x17\xed\x06\xb5\xb2\x00\xd2\x9d\xcd\xf0\x9c\x57\xd5\x67\xeb\x70\x50\x13\x3a\x57\xc5\xa5\x7a\x93\x5d\xb5\x58\x8b\xa6\xad\xc1\xfb\x20\xfd\xa5\x58\xb5\xf2\x78\x75\xae\xd9\x9c\xa2\x3f\x99\xba\xe3\x6a\xa0\x49\x4d\x64\xbd\x2e\x4c\x2f\xd4\x4a\x90\xd6\xcd\x00\xe0\x41\xac\x44\xe2\x29\x94\xc3\xc9\x05\xd5\x6e\xd2\x53\x78\xe7\xdd\x88\xa4\x1c\x66\xff\xab\x24\xe4\xd0\xee\x40\x95\xa8\xc0\x4a\xb5\xd5\xdf\x2e\x8b\x8b\x63\x63\x9d\x6a\x2a\xed\xcc\x73\x92\xc8\x8d\x61\x04\xa6\x36\x59\x59\x6d\x45\xc5\xe1\x91\xbc\x56\xcb\x03\x88\x61\x1d\xa3\x15\x78\xc2\x39\x86\xd2\x81\x74\x5f\x78\x56\x22\x0f\x2e\x57\x20\x45\x23\x80\xe3\xa1\x6f\x54\xc2\xa3\xfd\xe7\xa0\xe2\xb0\xe6\x09\x26\xa7\x39\xe2\x5a\x12\xf8\x38\x1f\x93\xae\xf8\xc1\x84\x50\x37\xa8\xbf\x64\xe5\xb5\x9e\x05\xa3\x3f\x6e\xf2\x0f\xea\x01\x8f\xe1\x92\x1a\x56\xf1\x98\xd0\x9c\x46\x03\x37\x42\x51\x80\x1d\x60\x81\xc1\x9d\x0a\x8b\xc5\x0a\x68\xf4\xcd\x22\x0f\xf6\x32\x54\xb6\xe8\x6a\xcf\x98\x0c\x78\x97\x73\xfa\x41\xe6\x40\xbb\x3c\x7c\x85\x6f\xe4\x70\x42\x3b\xc3\xe9\x84\xd4\x5b\x7d\xa8\xbb\x1a\xca\x69\x0e\x2b\x2e\xbc\x5e\x57\x09\x00\xb5\x1c\x68\xc9\x6f\xc1\x0a\xbd\x5c\xa2\x96\xd0\xbf\xbf\x20\x9c\xf6\x0d\xc2\xe6\x9c\x4a\xbb\x16\xca\x8e\xc4\x33\x39\xef\x35\x86\xa7\x73\x48\x68\x69\x9d\x24\x19\x7b\x27\x0f\x5e\x68\x57\xbf\xe1\x09\x82\xfb\xe5\x60\x42\x0d\x98\x21\x39\x38\xb4\x3a\x2a\xb6\xbc\x6c\x5d\x94\x3b\x09\x49\x19\xd1\x08\x1f\xf5\x3e\x63\x49\xc0\x47\x8d\x58\x7d\x69\xa4\xab\x92\x5d\x1a\xbc\xa6\x9a\xd6\xda\xb2\x4e\x86\xd0\x12\x16\x7d\x65\x6c\x8b\x5c\x25\x8f\x86\xc9\xb4\xff\x15\x79\xa4\xc9\x49\xc2\x99\x98\x09\x37\xdb\x73\x3a\x26\xa7\xd9\x99\x0f\x00\xa3\x14\x83\x0b\x21\x66\x19\x88\xb1\x1f\xfd\x23\x59\x6c\x96\xfb\x0d\x57\xd9\x7e\x43\xbe\x7a\x94\x1b\xac\x4e\x42\x72\xd6\x1f\xbb\xa5\xfc\xe8\x1f\x59\x52\x28\x32\x0d\x13\xa8\x7a\x82\x64\xb1\x5f\x28\x59\xec\x17\xa2\x54\x52\x14\xb5\xb2\xa4\x4d\x0a\x02\xb9\x47\xff\xa8\x92\x75\xbe\x52\xb5\x24\x2d\xc5\x99\xb7\xa5\xe4\x0b\x71\x5d\xe6\x7f\xf2\xe5\xc9\x46\x2c\xf3\x55\xce\xe5\x09\xc8\xf0\x4f\xa2\x41\x45\x7a\x25\xf8\x7e\xb2\x62\x16\x50\xfc\x8e\x9e\x14\x6a\x18\x0d\xb8\x71\xc5\xcb\xa2\xef\x95\x2c\x30\x20\x37\x01\x9b\x25\xfe\x2e\xf1\xb7\x75\x4f\xca\x09\xe5\x87\x55\x39\xba\xca\xaa\x7c\xc1\xee\x81\x95\x88\x3c\x8f\x15\x51\x64\x18\xa2\x80\x97\x8a\xe8\xdb\xad\x0e\x40\x6e\x31\xa2\xc0\xb5\x45\x9e\x29\x8c\xa8\xbe\x5c\x45\xee\x9e\x15\xd1\x1f\xc5\x86\xdb\x00\x7f\xcf\x8b\xa8\x61\x0e\x23\xcb\x26\x62\x88\x2d\xcf\x7e\x47\xf4\x29\x9c\xc2\x69\x14\xf2\x19\x11\xfd\x2e\x5b\x7c\xac\xb6\xd9\xc2\x47\x58\x3d\x20\xd3\x3b\x97\x20\x6a\xa5\xd0\x67\x46\xe4\xcf\x0f\x97\x45\x7f\xa7\x91\x3f\xe1\x75\x5f\x34\x57\x10\x35\xb7\x7e\x44\x7f\x82\x83\x22\x8d\x1a\xab\x3a\xa2\x17\xd5\x22\x8d\x1a\xc2\xbb\x48\xaf\xf4\xd1\x76\xf1\x14\xab\x64\xf7\x38\x43\x4f\xa2\x34\x72\x52\xc3\x88\x62\xe0\x53\x6c\xae\x11\x55\xd9\xd0\xbf\x03\x2e\xda\x52\xb8\xa6\xba\x50\xc9\x21\x14\x7e\xbf\x6b\xfc\xd6\x23\x1f\xe9\xc1\xb4\xa2\x04\x1b\xa1\xe7\xc5\x84\xc3\x14\x61\xe8\xdb\x6d\x14\xce\xac\x69\x8f\x9e\x83\xfa\x04\x63\x04\x2c\x10\x1d\xe1\xb8\x50\x1b\x83\xeb\xc4\x45\x99\x65\x03\xab\xd4\x65\x72\x8b\xc1\x44\xf8\x3c\x6e\xdd\x60\x61\x8d\x69\x0c\xb8\x3b\xd7\x42\x34\x98\xf4\xd1\x66\x85\x60\xec\xa5\x1e\x64\x78\xf9\xc7\xdf\xcf\xa2\x34\xd2\x37\x72\xfb\xfb\x07\xf3\xfb\x25\xff\xa4\xea\xa3\x6b\x63\x5e\x4b\x7e\x53\x8f\x79\x06\xe3\x0c\xc4\xb0\x1e\xf1\x8b\x8f\x08\xa6\x74\xe6\x16\x95\x66\xe9\x6c\xe8\xdc\x85\xbe\x08\x3a\xf3\xd6\x4c\xb4\x5f\x3b\xb5\x0a\xde\x9a\x19\x0e\xa3\xf5\xf0\x75\x84\xaf\xb2\xa2\xd0\xe4\x65\x77\xbd\x4e\x23\xd8\xe0\xb8\x0c\xf9\x26\x5b\x54\x77\x76\x0d\x3e\x8b\x1a\xbb\xdb\x8c\x7a\x54\xa7\x03\x18\xfa\xba\x63\x7d\xbc\x6c\x2e\x0e\xdd\x1c\x2c\xd5\xdd\x38\x4c\xe8\x77\x2e\x34\x2c\xf4\x49\x6b\x3d\xe0\x12\xed\x5a\x0c\xbf\x46\x75\xd2\x10\x0e\x8d\x8f\x0b\x16\x6f\xd4\x24\x1b\x66\x63\xb4\x69\x02\xb4\xd0\xa4\x77\x17\x0e\xdb\xf0\xfa\x1a\xf4\xf7\x17\x5b\xde\xcf\x51\x1a\x59\xb1\xba\x0d\x7b\x13\xa5\x51\x9d\x83\xb4\x31\xaf\xa2\x34\xb2\x47\x2c\xce\xc9\x26\x0b\x69\xc3\x66\xd9\x26\x0d\x9b\x65\x07\x65\xd8\x2c\x3b\x08\x83\x09\xb4\x74\x60\xb3\xac\x91\x85\xcd\xb2\x9b\x2a\x6c\x96\x76\xfb\x37\x42\xdb\xa4\x42\x37\xc5\x12\x05\x17\x5a\xdb\xdc\x21\x45\xa8\x6f\xee\x1a\x41\xd0\x25\xd5\x08\x82\x5d\x16\x9b\x65\x83\x1e\xd4\x56\xd1\x67\x09\xc2\xb1\x54\xe1\x94\x1e\x27\x1a\x9b\x65\x8d\x66\x6c\x96\x35\x92\xb1\x59\x1e\xa1\x18\x41\x84\x21\x18\x30\x8f\x66\x33\xb4\xa8\x45\x3b\xce\x4f\x74\x9b\x5e\x6c\x96\x1d\xe4\x62\xb3\x6c\x2d\xcc\xfa\xab\x80\x9d\xac\xa0\xab\x4d\xf9\xbc\x9d\xfa\xe3\x54\xc7\xc4\x36\x89\x4e\x78\x60\x34\x4f\x97\xd6\xea\x08\x49\xd1\xcc\xd0\x22\x1a\x21\x21\x8a\xe6\xb0\x03\xcc\x69\xcc\x6e\xa6\xb5\xed\x90\x86\xe7\x26\xbd\x1c\x95\x42\x6e\xb2\x22\xff\xd3\x80\x81\xb2\xb6\xe2\x75\xf0\x7a\x29\x4f\xf2\xf2\x84\xa3\xe5\x51\xe3\x45\x57\x7a\x75\x36\xcd\x5f\x23\x2b\xa7\xb9\xac\x7d\xd0\xd6\x7d\xb2\xe4\xfb\x4c\x11\x95\x2d\xd6\xc4\xea\x67\x48\x42\x34\xaf\x97\x97\x3b\xc0\xb8\x89\x46\xa3\x11\x82\x94\xe0\xd6\x3c\x81\xf2\x6c\x8a\x83\x57\xa4\xbf\x02\x03\x34\xe0\x5e\xa3\x93\x88\xd0\x25\x88\x7d\x01\x59\xad\x0d\xab\x46\xab\x9e\x60\x2c\x77\x3c\xec\x34\xa9\x58\x3e\xfa\x43\xe4\x25\x66\xce\x58\x49\x52\x08\xb3\xd0\x77\x62\x30\x21\xb5\x04\xd0\x30\x6b\x1e\xae\x66\x15\x74\x72\x07\xcf\x7a\xbb\x3e\xcb\xda\x9c\xe7\x4f\xe5\x42\x94\x55\x5e\x29\x5e\xaa\x93\xab\xbc\x5c\xe6\xe5\x75\x75\xb2\x12\x12\xf8\x4e\x54\x69\xd1\xe5\xb0\xec\x10\x74\xd5\xf5\xb0\xc0\xa7\x62\x3e\x2b\xe6\x4c\xcd\x0a\xa7\x01\xc1\xf1\xb1\x74\xad\x39\xfd\x42\x88\x8f\xbb\xed\xcf\xfc\xae\xe3\x41\x1c\x47\x29\x51\xa8\x63\x4d\x40\xb3\x68\xaa\x50\xc1\x88\xd3\x92\xa4\x6a\x66\x54\x50\x26\x8c\xb1\x9c\x58\xe3\x3b\x01\x57\xfd\x28\x98\x0b\x1f\xb9\xd9\x15\x2a\x8f\x2c\xda\x40\x9f\xe5\x71\x2c\x93\xdc\x2a\xd8\x44\x88\x26\xb4\x8c\x10\x14\x27\x98\x78\xd4\x3e\x9a\x21\x86\x1a\x3e\x72\xcf\xa3\x3e\x7b\x05\xbf\x03\x1d\x28\xab\x9d\x8f\xad\xac\x17\x61\x9f\xd8\xd7\x25\xba\x6a\xf0\x51\xe8\x91\xab\x8e\xae\x57\x4b\xd0\x01\xb3\xd7\x2e\x65\x26\xe6\xce\xb5\x57\x46\x1c\xd4\xc6\xe1\x40\xb7\x7a\xa8\xf3\xea\x85\xb9\x3c\xd4\x87\xdb\x6e\x93\x0e\xad\x21\x9e\xfe\x5d\xcc\x9c\x83\x74\x3b\x81\xb0\xa5\x23\x30\x35\xd6\x84\xd3\x7c\x01\x71\x30\xdf\x2f\xc4\x52\x7f\x1d\xe8\xc6\xdc\xe6\x5e\x66\x9b\x0e\x8d\x84\x45\x1c\x7f\xf3\x17\x56\x77\x70\xaf\xef\xf0\x1e\x70\x1c\xe5\xe1\xb5\x46\xd0\x92\xc9\x5e\x80\x07\xd5\x67\xa5\x75\xf2\xfe\x83\xcc\xb6\x6b\x70\xfa\x9e\x58\xa7\xef\x71\x0c\x4d\x44\x77\x24\xa5\xbd\x17\x95\x84\x26\x1f\xa6\xce\x17\x7c\xea\xdc\xc5\x93\x38\xc6\xde\xb9\x0c\xe6\xe2\x64\x73\x98\x74\xa9\xf7\x23\xaf\x73\x6c\x96\x41\x06\xb8\x58\x95\x84\xf6\xc1\x62\x04\xf0\x24\xb0\x21\x38\x42\x2e\xa1\xbd\x71\x95\x84\x96\x24\xb8\xe9\xde\x84\x96\xa4\xed\x39\x59\x81\xfa\x0d\x3f\x5c\xc2\xa5\xfd\x0d\xff\xa4\x9e\x48\x9e\xb5\x07\x37\x51\x4c\x4d\x2f\x44\xa2\x48\x7a\x7f\x20\x23\x30\xb4\x62\x1c\xff\xd2\xbe\x1a\x59\x85\x45\xc0\x2c\x32\x3a\x88\xa0\xe3\x67\x23\x98\x0f\xd7\x9d\x19\x6d\xbd\x7d\x8b\xce\x53\xfb\x99\xd4\xa2\x59\x2d\xd6\xfa\x0d\x50\x23\xa7\xd4\x68\x1f\x3a\x9e\x0a\xf0\xb6\xe6\xc2\x99\x04\x85\x44\x6b\x82\x7c\x5d\xb7\x6d\x71\x2a\x91\x04\x1c\xf3\x3b\x48\xf1\x2b\xb1\xbc\x3b\x04\x76\xb8\xe4\xde\x74\x93\x01\x04\x04\x1a\x91\x81\xce\x17\x1f\xad\x84\xdc\xc4\x71\xf2\x2e\x37\xdf\x34\xaa\x76\x57\x9b\x5c\x45\x14\x66\x0c\x35\x81\x2f\x21\xe8\x05\x57\x6b\xb1\x7c\x52\x88\xd2\xeb\xa5\x99\x4c\x42\x93\x59\x48\xd4\x53\xf2\xce\x6c\x48\x1b\xc4\x02\x91\x4f\x99\x80\xef\x56\x0c\x17\xee\x33\x0c\xcd\x0e\x87\x05\x78\x0c\x79\x27\xc8\xfd\xe1\xa0\x46\xab\xbc\xcc\xab\x35\x18\xd4\x85\x4f\x43\x6a\xa4\xf9\x0f\x56\x52\xd0\x1e\x6d\xcf\x7b\xa0\x20\x0f\x8e\x5f\xba\x52\xd4\xc2\xf3\xea\x65\xf6\x92\x96\xa0\x97\xbe\xcd\x24\x2f\xd5\x4b\xb1\xe4\xc6\x5d\x97\x41\xe6\x1a\xb5\xec\x22\x13\xf4\x7e\x08\x96\x11\xe6\xc5\x0e\x0d\x43\xcc\xc8\xfe\xad\x73\x64\x23\xdb\x88\x50\xfb\x52\xa7\x32\xa3\x80\x5e\x1d\xfd\x6f\x26\x08\x39\x1c\xda\x15\x95\xa2\xe4\x91\x81\x4c\xb9\xac\x3f\x9d\xd5\x3a\x81\x42\x5b\xe4\x01\x13\x45\xf9\xa8\xe4\x9f\xd4\x65\x7e\x55\xe4\xe5\x35\x39\x10\x8f\x89\x72\x52\xe1\x61\x74\xa7\x09\x15\x92\xee\x4b\x25\x79\xb6\x69\x2a\x43\xae\xf3\x6a\xb4\x15\x95\xc3\xbc\x90\x8a\x8d\x2d\x72\x84\xce\xc5\x38\xfe\x32\xa2\x6f\x4d\x06\xff\x8b\x3a\x00\x63\x7c\x1d\x7a\x6d\xf3\xfb\x20\x58\x9c\xb6\xa4\xc2\xde\x78\xd8\xf8\xd0\xbb\x2b\x43\x40\x79\x2e\x8a\x63\xc6\xa1\x5b\x51\x9d\xb3\xa0\x25\xe6\xac\x38\xd0\xea\xc1\x3c\x06\xbe\xc3\xd5\x79\xa0\x5b\xce\x3f\x1e\xcb\x60\x8a\x36\x12\x56\x5b\x06\xd9\xef\xd1\x1d\xf8\x81\xea\x01\x0e\x33\xeb\x03\xd4\xa4\x3a\x6b\x37\x8e\x7c\xbe\xec\xc1\x80\x1c\x28\xcf\x8e\x42\xf6\x1e\x69\x51\x27\xc4\x2d\x27\xc6\x62\x9f\x19\xb0\x02\xfd\x0d\x6b\x4e\x33\x70\x53\xfc\xa3\x29\x25\xd7\x8c\x06\x40\xb3\x9b\x16\x0e\x06\xb6\x64\xaa\xa0\x39\xbf\xad\xf3\x82\x3f\x84\x38\xbf\x15\xd5\x29\x7c\xf0\x4c\x25\x9c\x9c\x3a\xd0\x2b\x37\x59\x58\x10\xa0\xcc\xa5\x1d\xe2\x61\xee\xcb\x79\x34\x7b\x5f\x81\xfd\xe3\x78\x6e\x78\xcd\x87\xba\x0e\x38\x2f\xf6\x57\xaf\x59\x2b\x3f\x50\xa7\x3c\xda\xf2\x22\x1f\xac\xec\xfa\x12\x82\x1c\x9f\x99\x02\x6b\x5a\x6a\x76\x80\x9d\x05\x75\x3e\x9c\x90\xe6\xa2\x53\x00\xa1\x7f\x95\x2d\x3e\x36\x1e\x81\x6d\x8a\x21\xe3\x07\x8a\x2f\xa5\xc7\xd6\x62\x6d\x43\x9d\xf9\x0d\x69\x41\x4c\x9a\xbb\x6b\x25\xc2\x61\xa3\x3e\x43\x6d\xc7\x76\x6c\xd6\x66\x10\x14\x47\x8e\xee\x6a\x63\xc1\xd2\x95\x69\x98\xd4\x37\xdb\xb4\xab\x4d\x2e\xb6\xd6\x2e\x04\x60\xc5\x7b\x5e\x03\xc5\xc0\xeb\xa0\xd4\x4b\x73\xe0\x70\xae\x8c\xff\x71\xfd\xe0\xd4\x2a\xed\x30\x0b\x6a\xa1\xe7\x3b\xcc\xd5\x70\x89\xe0\x9d\xc4\x2d\x0f\xe3\x23\x8b\x7b\x25\x85\x38\x2e\x71\x1d\x9d\x8f\xad\x7b\xa1\x38\xee\x4f\xfa\xcc\x63\xd3\x68\x9a\xc0\x4a\x54\x89\x41\x6f\x47\x25\x1a\xa0\xe7\xac\xc3\x4c\x4c\xea\x5d\x2d\x9e\x8b\x5b\x2e\xbf\xcf\x2a\x9e\x90\x94\x1f\x00\xf7\xbe\xb6\x85\xaa\xdd\x55\xa5\xa4\x2b\x9f\x72\x67\xa2\xcc\x58\xee\x15\xef\x3b\x1a\xe2\x52\xc2\x82\x5e\xec\xa4\x7c\xc0\x7e\xbf\x3d\x0a\xc1\xfa\xd3\x03\x72\xa0\xeb\x7c\xc9\x9f\xe5\xb2\x52\xcd\x97\x45\x77\xfa\xb8\xe9\x19\x30\x0e\x6c\x87\xad\x21\x21\x87\x55\x5e\x66\x45\x71\xd7\x48\xa8\xf7\x92\xd1\x4c\xbd\x2e\xd9\x98\x5e\xe9\x43\x4e\x9f\xff\x88\x84\xda\x75\xc4\xe9\xbc\x15\x9b\xcd\xcd\x12\x00\xf5\x77\x07\x47\x61\xcf\xb8\x7c\xc9\x06\x83\xeb\xf2\xd0\xcb\x45\x72\x55\x12\x7a\x15\x1c\x55\x23\xc0\xc2\x65\xf5\x93\x00\x31\x8d\xf8\xa7\x6d\x91\x2f\x72\x55\xdc\x7d\xaf\xd3\xf0\x65\x1d\x5a\x43\x2c\xc0\x3d\x27\xe3\xe8\xc3\x78\x27\x5f\x6d\x81\x8c\xc4\xf1\x5b\x30\x10\x2d\x85\x01\x80\x80\x1a\x22\x52\x03\xda\x03\x8d\x2a\xd2\x93\xe0\x52\x34\x4c\x46\x11\xd3\x9a\xca\x91\x12\xc4\x5d\x4d\xd1\x61\x39\xcd\xf1\x8f\xb9\x70\xb9\xfe\x7b\xa7\x15\xc2\xde\xb6\x7c\xa4\xbe\x65\x55\xec\x53\x99\x64\xa3\x8d\x1e\xc6\x25\x18\x51\x21\xa0\x46\x8f\x5b\xfc\xa6\x85\x28\x8a\x6c\x5b\xf1\xe5\x14\x7c\xad\x3e\xc9\x93\x8c\x58\x57\xab\x29\x58\x18\x00\x8f\x5b\x8d\x94\x80\x37\x5b\x48\x60\x61\x5d\x2a\x8b\xe0\x53\x9a\x70\x42\x6b\x95\xb1\x27\xcd\xda\x2b\xcb\x64\xdb\xac\xf5\x46\xc4\x71\xff\xc7\x32\x00\x67\x24\x71\xcc\xe3\xf8\x53\x9e\x64\xb4\xe1\x57\x07\x4d\x65\x5a\xb9\xbb\x2d\x8b\x89\x87\x5e\x7f\x60\xf0\x76\xec\xcf\x32\xa9\x8d\x1f\xa1\x05\xfb\x29\xd9\x91\x5e\x71\xee\xd5\xbe\x9a\x7e\x7a\x5b\x31\x6c\x47\x8f\xa4\x66\x45\x3b\xc6\xfb\xef\x25\x07\x77\x4d\xec\xe8\x1a\xe8\xd9\x97\x34\x1f\x58\x7f\x22\x61\x27\x2c\x63\xd6\x5a\xb9\xac\x6f\x62\x32\x25\x36\xf9\xc2\x14\x1b\x82\x76\x59\x62\x11\x86\x81\x59\x67\x1c\x7f\x65\x9e\x6b\x35\x27\x6d\x5d\xe0\xc2\x64\x4a\x53\x7a\x44\x71\xa3\x11\xaa\xe2\xf8\x47\x58\xfc\x48\x29\x80\xc1\x35\x95\xe1\x0f\xdc\x6e\xf0\x72\x5a\xdb\x85\x7a\x3f\xb0\x4e\xd5\xc4\x9e\x03\x0c\x8b\xae\x84\xf8\xa8\x2b\x8e\x0c\x2f\xa8\xd0\xf8\x85\xb3\x49\x88\xf7\x30\x3e\xcd\x3b\xa7\xd7\x7b\x2b\xf3\x73\x9b\xcf\x69\xa6\xf7\x86\xe8\xd8\x1b\x4e\xe6\x92\xd9\xe5\x2d\xc1\x7d\xdd\x54\xa4\x4f\xf2\x44\xe8\x35\x8e\x78\x54\xc3\x09\x63\x3c\x70\x6a\x10\x64\x84\xdd\x52\x36\xb3\x29\x41\x68\x2d\x8f\x03\xbb\x93\x71\x1c\x3a\xe9\x6c\x8e\x92\xc1\x1d\x08\xa9\x55\x40\x91\x80\xa6\x0c\x41\x4d\x93\x7a\x04\x6f\x4f\xab\xf4\x6e\x97\x71\xfc\xb3\x4a\x24\x6d\xe2\x05\xe1\xb3\x7d\xc9\x29\x6c\x6d\x6e\x55\x5a\xd8\x8d\x4e\x8c\x08\x1c\xba\x2b\x17\xe0\x28\xd7\xe2\x19\x55\x56\x9a\x6a\x17\x6f\x37\xd0\x91\xcf\xd0\x74\x42\x4d\x61\x9b\x23\xc2\x29\xb1\x9e\x70\x95\xf3\x62\x65\x48\x99\xf9\xdd\x53\x0e\x23\xca\x2a\x9f\x56\xec\x07\x7d\x97\x1a\x66\xbd\x0a\xc8\x43\x09\x8a\x03\xe0\xd2\xb7\x32\x1a\xdd\xb5\xf1\x43\xf0\x02\xa8\xbc\x61\xa8\xd7\x6f\xad\x98\x70\x8f\x6c\x5a\xce\x37\xac\xcb\xfa\x9e\x1a\x6d\xb2\xbb\x2b\xfe\x63\xbe\x5c\xf2\xd2\x41\xa0\x0f\x27\x7d\x76\x2d\x92\xae\x48\x5c\x5d\xfb\xbd\x8d\x7c\x5b\xae\xc3\xe8\xa3\x11\x81\xf3\x68\x04\x43\x0a\x5a\x6c\xad\x85\xea\xbd\x45\x08\x87\xae\xde\x06\x59\x8d\x7f\xa2\x6b\x11\x04\x52\x4e\xc0\x79\xd4\xbf\x39\x26\xa7\x9d\xfd\xf6\x1d\xfb\xf1\xc1\x6e\x1d\x7a\xfa\xec\xf7\xe2\xa5\x0f\x65\xd3\xb7\x35\x40\x9c\xae\xe1\x40\xee\xd0\x69\xb6\x29\x93\x92\x5d\x88\xa4\x24\xc4\xa4\x65\x46\x3c\x27\xd8\xac\x56\xa4\xa6\x00\x62\x36\xd6\x87\x64\x69\xd0\xbd\x5e\x06\x9e\x55\x3e\xe4\x4d\x63\x87\x0a\xec\xed\x7c\x4a\x56\x8d\x16\x85\x28\xb9\xfe\x4e\xfa\x63\x42\xa8\xc0\xfe\x40\x35\xcf\xd1\x29\x25\xfe\x95\x04\xaa\x24\x81\x13\xa0\xf1\xe9\xee\x0c\xb6\xdb\x47\xbe\xf4\xb4\x6a\x87\x22\x7f\x0c\x9e\xed\xe6\xa3\xbc\x7a\x0d\xf4\xd3\x7a\x4b\xcd\xd8\x8d\x48\x10\xd8\xb7\xe4\xb7\x27\xb7\x25\xf8\xd6\x3b\x04\xfd\x32\xf6\x52\x1b\xe4\x4e\xcc\xd4\xd8\x01\xfb\x4a\xa1\xf7\xcb\x0f\x25\x09\xb3\xe0\xf8\xe8\x02\xaf\x4a\xc0\x06\xa5\x19\xdb\xa2\xe1\x52\x0f\x47\x5e\x0f\x29\x15\x80\x38\x94\x9d\x8f\xf7\xfb\x31\x63\x99\x61\x7c\x05\xd2\xf6\xdf\xd6\xbc\xbc\xd8\x6c\xd5\x9d\xad\x4b\x00\xf1\xb0\xaa\x37\xcb\xdf\x72\x38\x2e\x85\x3f\xd4\x34\x21\x10\xe1\x80\x7a\xe4\x99\x59\x3d\xdf\xbc\x8e\xcf\x61\xc0\xd6\xf4\xa6\x07\x39\xf8\x0b\xb1\xab\x38\xd8\x65\x57\xfb\x7d\x58\xe2\x17\x43\xc2\x97\x46\x12\x83\x70\xda\x49\xad\x0c\x1f\xc3\xcc\x2c\xbb\x1e\xc0\xba\x7c\x86\x02\x6e\x54\x90\xa7\x92\x0a\xb2\xdf\x2b\xe3\xfe\x5e\xc2\xdf\x38\x86\x34\x32\x4c\xd3\xf5\x8a\xa1\xeb\xc9\xcb\xeb\x13\x57\xfe\x09\x1e\xb7\x27\xdb\x4c\xaa\x5c\x33\xce\x27\xe8\x56\x08\xb8\x9a\x93\xac\x3c\xe1\x9f\xf2\x0a\xb2\x88\x92\x47\xa4\xf7\x8a\xf5\xc7\x07\x31\xca\x96\xcb\x37\xe2\x47\x34\x57\x8f\xe3\x3f\x72\xe7\xc7\x5d\x01\xae\xb2\x75\xe0\x0e\x87\xb9\x66\xb3\x23\x90\x60\xf1\x82\xbe\xcc\x5e\x1a\xa0\x5f\xba\xb3\xce\x3d\x0b\xf0\x56\x89\xab\x0a\xa0\x9c\x76\xa6\x23\x83\x06\xa4\x46\x11\xc7\xa2\xc6\x8c\x15\x47\xc0\xfc\xfe\xd4\xc9\x19\x2b\x9a\xac\x50\x1c\x27\x15\x1c\x1b\xb5\x62\x76\x7d\xd3\x12\xa0\xf4\x60\x56\xd4\xb4\x59\x0f\x59\xce\xda\xaf\x69\xed\x97\xb3\xf3\x53\x73\x92\xce\xd4\x9c\x2a\x8c\x95\xc1\xf9\xa0\xa9\xa9\x66\xb4\xf8\xed\xc9\xa5\xde\x5b\x3b\x66\x6a\x9f\xaa\xd1\x62\x0d\xe8\x94\x3a\x0c\x47\x60\x2a\x6d\x18\xb8\xa4\xd8\x1d\x48\xa3\xed\x66\xc4\xcc\x48\x76\x0c\x9b\x22\xf7\x3f\x62\x37\xa0\x77\x8a\x8e\x89\x29\x44\x6f\xa9\x57\x25\x28\xf1\xc4\xf1\xbb\x3c\x11\x34\xba\x02\x31\x21\xda\xc5\x5d\x94\x0d\xe0\x11\x72\x2f\x1c\x8f\x05\x25\x78\xa4\xd6\xe4\x42\xef\xb4\x84\x3b\x70\x83\xa5\x28\xed\xb5\x70\xbf\xe7\x35\xcc\x03\x17\x81\x0e\x73\x75\x81\x66\x21\x25\xcd\xce\x25\xc2\x5e\xb0\xa8\x30\xfc\x25\xcc\x5e\x01\xbb\x02\xfd\xdf\x77\x1f\xff\xf5\x3d\xc4\x65\x52\xd0\xc6\x10\x79\x9d\x4c\xdd\xab\xac\xaa\x5e\x66\x1b\xae\xf7\x36\x40\x45\xe9\x0f\x63\x5f\x79\x87\xbf\x78\xb9\x74\xdf\x8b\xaa\x0a\xdc\xaf\x62\xc1\xa7\x8b\x33\x33\x67\xa7\x8b\xc1\x80\x28\x5d\xe5\xc2\xde\x73\x7a\xc2\xb1\xc7\x5f\xf1\xa4\x00\x96\x97\xfe\x3d\x4f\x0a\xcb\xee\x3e\x59\x2e\x35\xb3\x5b\x50\xe1\x7c\x2c\x09\xb8\xd1\xdf\x82\x34\x16\x8e\x99\x87\xaf\xab\x1b\x73\xe8\x59\xd1\x13\x42\xae\x32\xe5\x1f\x7c\x41\x9f\x92\x87\x6e\x08\xf9\x4c\xce\x0d\xf7\x0c\x67\x6d\xf0\xf4\x72\x51\x03\x9a\x01\x06\x50\xd7\x5d\x05\x16\x55\x00\xd6\x31\x5a\x14\xf9\xf6\xb5\xa8\xda\xc6\x52\xdd\x90\x35\xa6\xba\x9a\xdf\xdf\x57\x0d\xe1\x21\xc2\x64\x06\xf0\x98\xd6\x18\x44\xef\xa8\x92\xcd\xa4\xed\x9d\x1e\xc7\x79\xef\x43\x9e\xd4\x42\xea\x15\x7b\x83\x67\xd2\x64\xe5\xa5\x1d\xb4\x2e\xad\x6c\x1b\x37\xcb\xe7\xa7\xc6\x29\x96\x5e\x85\x7a\xe6\x60\x61\x9a\x61\x83\xed\xea\x0b\x32\x3c\x4f\x3e\x1c\xd2\x09\x21\xa1\xeb\xe9\x4b\x27\x2a\x0a\xa6\xcb\xce\x16\x38\x60\xb6\xc2\x26\xc1\xa4\xcf\xf6\x29\x40\xc5\x23\x0f\x4c\x65\xe3\xc1\xbe\xb4\x15\x78\x33\xe7\x32\x68\xcc\x93\xb2\xe1\x89\xda\x28\x60\x07\x45\x96\x84\xcf\xca\xb9\x01\x56\xdd\xef\x13\x19\xb0\x53\x3a\xc6\x09\xac\x82\xc6\x7e\xf4\x8d\x55\xa3\x95\x26\x5a\x4d\xe7\x37\x92\x3d\xe3\xce\x3b\x3f\x5e\x05\xe2\x18\xdc\x2b\x87\x41\xb5\x2b\x53\x69\xb3\x28\xd1\xc8\x60\x03\xc2\xe4\x68\xc2\x1c\xc7\xce\xfb\xfb\x49\x60\x4f\x66\xea\x58\xac\xa9\x00\xef\xba\xfa\x2b\x63\x63\x06\x9c\x08\x0a\x47\x14\x5c\xa1\xaa\x96\x0d\x76\x6d\xfc\x4b\xa3\xce\xcf\x3b\xae\x80\x1c\x6f\x7e\xe6\xda\x27\x03\x34\x7f\xa8\x60\xbf\x4f\xb2\x51\x5e\x2e\x8a\x5d\x95\xdf\x80\x22\xca\x14\x23\xce\x98\x4a\xcd\x97\x22\x9a\xc8\xc0\x9a\x00\xe7\xb5\xc1\xe5\x34\xb3\x37\xd3\xbe\xdc\xef\xfb\xb6\x92\x80\x81\x20\xce\xcb\x9b\xa9\x14\x40\x8e\x83\x2a\x41\xb3\x65\xaa\xc3\xcf\xa1\x46\x25\xce\x15\x39\x4d\x4a\x70\x89\xed\xa7\xd8\x1c\x4f\x99\x71\x14\x4e\x8d\x3b\x41\x9d\x9e\x38\x9b\xe2\x93\xf2\x00\xe0\xb4\x19\xa1\xbb\xff\x4f\x46\xec\x8b\x1a\xff\x65\x83\xf5\x25\x63\xf5\xe5\x13\xf4\xc0\x80\xb9\x91\xd2\x49\x87\xea\xff\x21\xef\xdf\x96\xdc\x36\xd2\x45\x41\xf8\x9e\x4f\x51\x44\xb4\xf1\x23\x1b\x49\x16\x59\x25\xa9\x54\x60\x65\xf1\x97\x65\xa9\xed\xb6\x2c\xbb\x2d\xb9\xdd\x5e\x2c\xb6\x06\x04\x92\xc5\xb4\x40\x24\x0d\x24\x4a\x2a\x17\x19\xb1\xef\x27\x26\x62\x3f\xc2\xbe\x98\xeb\x79\x88\xf5\x14\x73\xbd\x9e\x64\x22\xbf\x3c\x20\x13\x64\x95\x65\xaf\xde\x3b\x62\xd6\xd4\x05\x8a\x48\xe4\xf9\xf0\xe5\x77\xfe\x70\x3b\x96\x76\x0a\x07\xc2\x9f\x44\x89\xf8\xa6\x08\x17\x64\x2c\x91\x01\xc7\xa2\x11\x67\x12\x1b\x57\x49\x46\x33\x3e\x8e\x8a\x29\x4b\x54\x54\xf3\xf6\x1e\x5a\x92\xd1\x64\x79\xe1\x30\x25\x96\x8e\x63\xee\x28\x27\xf5\x6c\x39\x87\xd0\xf0\xd1\x8a\x7c\x2c\xa3\x06\xe7\x7a\x42\x10\x9a\x16\x61\x18\xe5\x12\xf0\xa8\xdc\x2b\xdb\x57\xf9\x2b\xce\x50\x02\x1f\xd9\x0e\x94\x64\x64\x83\xaa\xb1\xc6\x6b\x4c\x76\x22\xc7\xab\x96\x47\x11\xe5\xa4\xd1\x8d\xea\xfa\x63\x92\x19\xee\x5c\xae\x38\x1c\xaa\x33\xb5\xd3\x99\xed\x36\x52\xdf\x48\x86\x65\xbf\x24\x75\xe7\x92\x72\xb9\x0e\xa5\x7a\xa4\x72\xc5\xf7\x66\xdb\xd5\x80\xed\x7d\x57\x46\x35\x42\xb8\x01\x34\x4f\x26\x35\x32\xa9\x41\x0a\x0b\xdd\x10\xad\xfc\xd3\x2f\xd4\x08\xd6\xf8\xc6\x5f\x81\xc1\x89\xfc\x7c\x73\x39\x0a\xc3\xda\x19\xbb\x37\xd1\x9a\xe1\x38\x5b\xce\xd5\x58\x55\x84\xf3\xbd\xbd\x01\x19\xd4\x38\x95\x60\x42\xe1\x75\xbd\xb6\xd6\x1b\xa8\x6e\xa3\xcd\x7c\x50\x4f\xff\x6a\x2c\x52\xb0\x69\x81\xed\x77\x0f\xdd\x9a\x71\x2c\xdc\x5b\x53\x47\xd0\xa8\x34\xbb\xa9\xd2\xe7\xa5\x82\xee\x02\x89\x65\xae\xb0\x0e\xa5\x05\x7a\x1b\xea\x4e\x13\x70\xa7\xed\xec\x45\xae\x5a\x9a\x52\xe5\x4f\xdd\x76\xeb\x7b\xcf\x31\xf8\x01\xbe\x1b\x11\x33\x20\xc1\xea\x77\x41\x4c\x87\x2c\xef\xb8\xce\x01\x70\xdd\x32\xa7\x47\x10\x98\x04\x6c\x83\x9c\x45\x81\xfb\x49\xc7\xfa\x78\xcd\xa2\x4a\xde\x47\xf6\x42\x62\x3b\x45\x17\x97\x44\xdf\x47\x9d\x06\xe0\xb5\x6c\x99\x6a\x5d\xa4\x60\x1f\x42\x55\x0a\x42\x95\x33\x36\xd7\xec\xaa\x14\xd1\xc4\x94\xab\xc9\x68\x52\x5f\xa4\x6d\xb9\xba\x5d\x96\x86\xa4\xb3\x7a\x8e\x0b\x32\x9a\x14\xd6\xec\x62\x12\xc7\x85\xa4\xc2\xf9\xac\x98\xdb\x7b\xba\x31\x27\xc0\xa8\xc7\x1d\xd1\x1e\xb7\xcb\x0f\x3b\x3e\x95\x57\xf1\x8c\xcd\x49\xea\x04\xe2\xb4\x13\xff\xd6\x91\x49\xd2\xee\x95\xe8\xde\xf5\xfb\xe1\xa8\x55\x1c\x6a\xb5\xfe\x2d\x6b\x27\xa2\xa8\xe7\x53\x3e\xb0\xd2\x6d\x8b\xcf\x9d\xeb\xfe\x93\xeb\xf7\x08\xa1\x4e\xfd\xc2\xa9\xfc\x1b\x1f\x6d\xf4\x21\xf2\x60\x9c\x8c\xda\xac\x3f\xdf\x93\x55\xdd\x16\x5e\xd6\xaf\x3a\xc1\xc9\x5d\x16\xd4\x40\x78\xaf\x10\xe6\xb7\x4f\xaa\x6e\x48\x59\xaa\x25\x2c\x18\xf0\x09\xf5\x93\x4b\x0c\x42\xd9\x0e\x61\x15\xdc\x19\x6d\xb7\x30\x82\xc1\x37\xa5\x76\xac\x62\x42\xdf\x0c\xb8\x72\xd6\xa3\x8a\x08\x8e\x99\x84\xca\xdb\x2d\x8c\x62\xf0\x33\x64\x37\x1a\x6b\x92\xcc\x67\xf9\x40\x1e\x93\x76\x0c\x5f\x74\x0c\xec\xbf\x95\x87\xb4\xb3\xde\xa5\xbd\x17\x18\x36\x11\x61\x1d\x69\x44\xc4\x94\x23\x28\x7b\xe8\x5b\x9a\xcb\xc4\x1b\x9c\xaa\x71\x24\xd0\x3b\x7d\x87\x7e\x55\xca\xeb\xde\x6c\xd4\x8b\x11\x84\x4f\x24\x36\xe1\x00\x46\xf8\xda\x5d\x1a\xe8\x78\x7f\xe4\x60\xfe\xaf\xf6\x3f\x8f\x9d\xcf\x2f\xf7\x43\xfd\x11\x85\xfb\x21\x9c\xca\x71\xf3\xee\xb8\x53\xf4\xd0\xa9\x6c\x4f\x24\xe8\x7b\xee\x8d\x5e\xe5\x28\xec\x59\x54\xcb\x3b\x42\x38\x93\x8b\x55\x68\xf1\x99\x5a\x5a\x7b\x5e\xe5\x0a\x33\x84\x97\x2a\x8b\xe0\xb8\x54\x8b\xd9\x66\xf8\x59\x66\x50\x31\x1f\xb3\x4b\x32\x0a\xc3\xe5\x05\x19\x6d\xb7\xd9\x05\xfc\xbe\x24\x30\x8f\xea\xad\xed\x94\xbf\x8b\xc3\x90\x75\x8e\x80\x69\xad\x42\x97\x64\x94\x38\x6f\x23\xb4\xdd\xaa\x66\x7e\x67\x65\x30\xba\x12\x5d\x98\xea\xcc\xfb\xc8\x46\x9d\xec\x8f\x5c\x8a\xe6\x57\xff\x02\x9a\x08\x02\xab\x3d\x41\xd4\x1c\x8c\x41\xeb\xd8\xa1\xd5\x78\xb5\xe5\x3f\xf7\xce\xa2\x59\xd7\x92\xfc\x0a\x4e\x83\xcd\x5e\x22\xa4\x9c\x8a\x04\xdc\x38\xb4\x45\x7f\x70\x20\xcf\xa5\x47\x76\x5a\x9f\x4e\xae\xfb\x09\x73\x07\x00\x23\xa4\x74\x32\xfd\xa6\x3f\x0a\xd3\x0d\x68\x3f\x1e\xb7\x3d\xf8\xd2\xeb\xfc\xb7\x61\x28\xba\x5b\xb1\xda\x43\x7e\xbd\xab\x85\x2d\xa3\xa8\x84\x9b\x65\xff\x14\x3a\x98\x9b\x02\x2a\x76\xfe\xd5\xdd\x65\x0a\xb4\x2c\xc4\x30\x1c\x99\xbc\x61\x58\xee\x2d\xbb\x62\x3a\xfe\xdd\x38\xb0\x77\x96\xd3\x0e\xe8\xef\x2e\xe2\xae\xda\x06\x41\xb1\x26\x2c\x2b\xef\x48\xc0\x04\x99\xb9\x81\x92\xca\x99\x02\xfe\x58\x6a\xb7\x0a\x1e\x09\x57\x59\xec\x4e\xa2\x90\xd5\x7d\xbb\x52\xb6\xd7\xc1\x7f\xdb\x81\x77\xe1\x99\x37\xdf\x2e\x6c\x93\x13\x2b\x41\xb3\xf3\xf9\x1e\x50\xd7\x67\x87\x26\x92\x79\xc8\x91\x9e\x0a\x06\xa4\x88\x7c\x1a\x2c\x4a\x9e\x59\x76\x70\xa2\xc1\x7f\xd6\xa1\x11\x22\xbb\x04\xcc\x59\x02\xc6\xa3\x0f\x25\xc2\x1f\xfe\xb0\xe6\xc0\xbd\x72\xd9\x5e\xab\x47\x35\x9a\xe8\x78\xca\x1d\x8e\x47\x1c\x53\xe4\xa6\x43\x54\x45\xc5\xe3\xeb\x75\xd4\x07\xd0\x6e\xe7\x77\xf2\x80\x60\xd5\xd3\x71\xd2\x1c\x19\xd8\x30\x10\xdd\x1f\xce\xe4\x2f\x25\x79\x33\x7c\x05\xfe\x85\xe5\x9c\x1f\x22\x1b\x9d\x93\x73\xc4\xca\xa3\x0a\x55\x5d\x0b\x05\x88\x44\x2c\x5b\x99\x95\x73\x02\xd8\x5f\xaf\xab\x99\x51\xf2\x9c\x12\xe1\x70\xb4\x7e\xb4\x4d\x7c\xc7\x22\x81\x2e\x22\xad\x59\x01\x5c\x48\x3f\xd8\x13\xb8\x3a\xf5\x3c\x45\x43\x4c\x38\xaa\xb0\xf6\xca\x01\x44\x7f\x31\x72\x2f\xa3\xa8\xab\x05\x8c\x16\x19\xd1\x02\x46\x83\x96\x69\x71\x29\x2c\xa7\xc9\xa4\x0e\xf5\x57\x3c\xf2\xd4\x78\x31\x85\x21\x58\xdd\x8e\xc0\x44\xa4\x4d\x8e\x2a\x5a\x80\x27\xec\x49\xd0\xa3\x43\xc7\xc1\xb6\xbc\x8d\x63\x12\xa8\x00\x3f\x03\xf0\x84\x72\x34\x08\x62\xb1\xe7\xcd\xdb\xf5\x27\x13\x6c\x3e\x4e\xc0\x0a\xda\xc6\x9c\xd1\xd5\xa8\xb0\x52\x47\x6e\x79\x3f\xb2\xac\x57\xfe\x67\x49\xa5\x5a\x6e\x3b\x4d\xeb\xa6\xa2\xf8\x39\x8f\xc0\x03\x0b\x9e\xa9\xc1\xcc\xcd\x04\x3a\x64\x84\x16\xbc\xaa\x0c\xae\xe2\xaa\x1b\xc7\x54\x1e\x92\x5f\x4a\x84\x7f\x79\xf0\x90\x1c\x52\xa1\xb1\x82\x46\x13\x5e\xc7\x08\xae\x55\x8c\x37\xf2\x8c\x45\x95\x23\x90\x2f\xc3\x50\xf8\xd1\x23\x98\x8b\xca\x32\x24\x24\xfe\x0d\x35\x48\x90\xef\xb1\xfb\x7a\xc2\x72\xbc\x23\x03\x52\x74\x38\x69\x2d\xfe\xfa\x4b\xa9\x63\x0c\x7d\x64\x51\xd5\x86\x6b\x1a\x41\xb4\x4a\x88\xf5\xc5\x95\x26\xc4\x9e\xc1\x3c\x6c\xde\x0a\x0f\x38\xc2\x42\xa9\x69\xd8\x80\x40\x3b\xd0\x0f\xfe\xe5\xd3\x85\xf9\x2b\x1d\x11\xd8\x9b\x29\x67\x56\x7a\x4e\xae\x56\x20\x5e\xda\xde\x0f\x68\xaf\x0c\xc3\x08\xc6\x60\x3a\x1e\x97\xa0\xa1\xf1\xb5\x88\x84\x1f\xfb\xe0\x70\x00\xa0\x1f\xcb\x48\x59\xb6\xec\x10\xd2\x70\xe1\x27\x03\x17\xf6\x20\x82\xe2\x8a\xd2\x8f\x82\x50\xfc\x5c\xf5\x01\x1b\xe5\x42\xdd\xcb\x6a\xaa\x83\x0e\x25\x63\xe7\xc4\x7f\xad\x8d\xeb\x5d\x56\x2d\x50\x49\xed\xf9\xfd\x53\x97\xbd\x3a\x71\x5c\x23\x2a\xd5\xbc\xe3\x68\x9a\xfc\x73\x7b\x55\xc7\x08\x9c\x27\x44\x8b\x34\x7b\x7f\x5d\xf1\xa6\xcc\x07\x68\x1a\x5d\xbd\x89\xd1\xb1\xa1\x30\x95\xb7\x44\x4a\xa8\xb5\x3c\xaa\x94\x2a\x1f\x8a\x4d\x92\x4e\x88\x2b\x47\x7b\xcf\x38\x85\x9d\x8d\xe7\xd3\x40\x87\xdc\xd6\xd1\x24\xd4\x6f\xad\xa8\x22\x66\xe5\x7c\x2a\x14\xc8\x3b\x99\x27\x4e\xfc\x8e\x00\xfa\x58\xa3\x20\x96\x5f\x62\xf9\xfa\x27\xf9\x8a\xb4\xaa\xac\x84\x90\xdb\x2d\xfc\x8f\x49\x70\xa4\xb2\xb5\x87\xb0\x9d\x8f\xbf\xb9\x41\x58\x16\x45\x5a\xbe\x97\x4b\xd2\x82\x33\x9b\xa4\x89\x1a\xc7\x7f\xa4\x99\x37\xc7\x0b\x65\xe4\x84\xdc\x3c\x52\x8e\x23\xdb\x1a\xa6\xdd\x84\x48\x3b\x99\x44\x89\xd6\xa4\x6e\xbb\xf5\x0f\xc7\x16\xca\x3f\x9c\xe3\x91\xe2\xda\x97\xe0\xe4\x76\x34\xef\x34\x5f\x21\x68\xc4\x1c\x40\x3a\x04\x4f\xb2\x56\xec\x2c\x94\x16\xb2\xd6\x57\xb5\x82\x97\x3d\xc1\xa9\xac\xed\x28\x88\x95\xeb\xe3\x38\x38\x5a\xa6\xac\xa0\xf9\x91\xe0\x47\x69\x7e\x93\x96\x19\x3d\xaa\x41\x55\x7e\x18\x38\x7b\xeb\xaf\x6e\xa7\x4d\x22\x73\x9c\x1a\xd6\xca\x8d\x9c\xd6\x80\xa4\x65\x9e\x2c\x41\xf5\xb2\xd6\x91\x83\x86\x5a\x97\x32\x42\x58\x1e\xeb\x84\x2b\x7b\x10\xed\x69\x93\x4e\x1b\xd0\x7d\xe3\x39\xc5\x19\x4a\xb2\x1d\xc8\x8b\x38\x4e\xd5\x35\x83\x6b\xa2\x3e\xf6\x04\x79\x45\xa3\x14\x9b\x70\xa8\xb8\x90\x38\x71\xaa\xe5\x61\x92\xb6\xa9\x45\x2b\x5e\xae\x24\x25\x23\x47\x7e\x5b\x4a\x8a\x82\x7e\x14\x78\xcf\x99\x8d\xe2\x58\x95\xc0\x4b\x9b\xcd\x15\x2f\x74\xa9\xd4\xdb\x87\xd9\x0a\x85\x61\x7f\x39\xa4\xbc\x88\xd0\x04\xe9\xc1\x11\x35\x30\x4e\xfe\x51\x46\x35\x5e\xe2\x0c\x9c\x2d\x34\x8a\xbd\xc1\x40\xb5\xc1\xea\xbf\x4e\x9b\x84\x45\xce\x34\xfe\x9b\x43\x04\x02\x9b\x54\x33\x6d\xab\xa1\xeb\xba\x5d\x1f\x11\xc5\xf3\x6b\x7b\xec\x66\x69\xc7\x3f\xc2\x99\x82\x06\x76\xa8\x87\x46\x89\x73\xa7\x22\xd7\x17\x7c\x18\xce\x64\x69\xe5\x90\x39\x50\x61\x64\xff\x54\x46\x7f\x93\xd4\x71\x89\x30\x47\x93\x76\x02\xe4\x49\x5a\x2a\xad\x73\x5b\xd7\xbe\x4f\xf6\x69\x54\x93\xfe\x18\xa7\x61\x58\x31\x85\xa3\x63\x28\x84\xd4\x3f\x1b\x97\x15\x37\x3a\xc4\x48\x43\xfe\x54\x46\xff\x90\x0d\x2e\x71\x89\x73\xd9\x28\xd6\xe4\xeb\x8a\xe4\x12\xb6\xc8\x9d\xda\x5b\xc1\x1a\x05\xeb\x41\x10\x47\xcd\x74\x15\xcb\xa3\xdf\x24\x2b\x85\x87\xf7\xeb\xed\x36\xeb\x93\x46\xbb\x87\x2d\x2e\xf4\x62\x4d\x10\x8b\x0a\x62\xa3\x12\x9a\xfd\x59\xc4\x8f\xe9\x23\x84\x33\xd4\xcb\x48\xb3\xf3\x16\x76\x67\x2b\xd8\xf0\x7a\xe2\x87\xa4\x87\x1a\xe4\xe2\xab\xf2\x3d\x16\x6d\xe4\xf2\x17\x64\xe3\x9c\x6f\xca\xba\xb6\x8e\x33\x13\xb2\x48\x6e\xe1\xbf\xd0\x72\x8e\x39\xb9\xdb\xf5\xd4\x66\x30\xfb\xd2\x44\xb9\xc2\xd5\x5e\x10\x29\x2d\xa8\xc2\x10\xaf\x83\xbb\x36\x85\x2a\x40\x2f\x75\xc2\x9c\x16\xe9\xad\x83\x10\xdb\x0d\xd6\xcd\x32\x4b\xe7\xb8\x21\x63\xb9\x7f\xbc\x7e\x28\x57\xf1\x07\x5c\xe6\xb7\x1c\xb1\x66\x52\x5c\x18\xa7\xbb\x25\x61\xb3\x66\xde\x2b\x2f\x81\xd6\xd0\x18\x44\x83\xc7\x98\x62\x36\x6b\xe2\xf1\x5c\xee\xa1\x26\x26\x27\xd8\x59\x04\x49\xb6\xee\x80\xcf\xc6\x96\x51\x3d\xe4\x9b\xf4\x97\x86\x22\x5b\xbc\xc2\xcd\xa0\xc2\x14\x02\x29\xe9\xee\x4a\xc4\x0d\xe1\x86\x54\xf1\x89\xe2\x97\x2b\x5a\xf7\xa2\x99\x54\x31\x39\x31\xdc\x14\x36\xab\xe2\xf1\xbc\xa7\xfe\x91\x88\x4f\xb9\xdc\x23\x49\x10\xa0\xb8\x53\xd7\x4e\xce\xa3\xb9\x32\xee\xc0\x18\xa9\x4e\x18\x06\xd1\x39\xad\x13\x3e\xd4\x17\x17\x88\xd0\xcd\xcd\x35\xd5\xd1\x36\xdb\x95\x16\xcc\x0b\xa4\xa1\xac\x9a\xea\xed\xd6\xfc\x9a\x8d\xe6\x7d\xd2\x59\x7b\x33\x6f\x00\xa7\x9e\x31\x08\xe3\xc8\x88\xde\x33\x1e\xb9\xf8\xf0\x21\x6b\xca\xc8\xd9\x33\x25\x4a\xc0\xa5\x16\x34\x05\x06\xee\x60\x51\xa6\xba\x41\x98\xfe\x81\xd9\x50\x0f\x71\xaa\xbf\x3d\x57\xaf\xc4\x7e\x48\xfc\x0f\x60\x02\xe8\xe5\x54\xc1\x30\x2a\x42\x4c\xe8\xb2\x8a\x97\x82\x29\xdb\x41\xf7\x3d\x8e\xad\xeb\x1a\xdd\x7a\x3b\x6f\xd5\xde\x09\x71\x86\xc2\x1f\x02\x63\xb0\xf1\xb5\x36\x03\xe1\x00\x4e\xca\xed\x76\x84\x35\xe0\xfa\x5b\x19\x31\x5c\xa1\x49\x9f\x1b\x90\xf5\x0f\x99\xc2\xe5\x4d\xe0\x95\x92\x38\xf8\x4f\x25\xc2\x3f\xb9\x98\x26\xc4\xaa\xe1\x07\x4c\xef\x9e\x31\xad\x74\xa7\x90\x1b\x46\xee\x76\x98\x31\xcf\x8f\x11\x67\xad\x43\x6e\x15\x16\xb4\xfe\xf3\xbe\xa3\x7f\x47\x74\x2c\x3c\x28\x3c\x65\x2c\x29\x99\xc5\x2e\x66\x74\x2e\xf1\xee\x19\x9d\x13\xeb\x8c\x29\x3a\xbe\x7a\x13\x1f\x5f\xc3\xb1\xf8\x53\x18\xb8\x3a\x07\x29\x73\xf9\x37\xad\x5a\x98\x95\xcb\xe0\x7a\x1a\x6c\xd2\x3c\x67\xe5\xf5\x00\xe2\xab\x26\x47\xc3\xf1\xe6\x63\xa0\x94\x71\x70\x49\xee\x36\x15\x4d\x64\xc1\x4d\x45\x03\x3c\xab\x7c\x0d\x32\xe5\xe6\x11\xeb\x18\x61\x49\x85\x33\x5e\x24\x23\xbc\xe1\x75\x32\xc2\xd9\x3a\xa1\x18\xcc\xdd\xc1\xf4\xa9\x4e\x22\xbe\xdd\xd6\xa0\x0f\x73\x4d\x85\x72\xea\xde\x89\x70\x85\x76\x3d\x61\xe8\x2a\xd7\x8c\x5f\x61\x41\x24\x82\x68\x1c\x62\xaa\xfe\xe9\xd3\x90\x8c\x50\xab\xd2\x90\xe2\x86\x30\xfd\x7d\xc6\x06\xe3\x79\xa2\x6e\xfc\x5e\x09\x5b\x62\x84\x4b\xa5\xd4\xf5\x9e\x96\xa4\x66\xf8\x2f\x6e\x08\x2b\xdd\xae\x24\xba\x53\xf2\x3d\x8b\x1a\xa4\x22\x0d\xd8\x02\x05\x73\xde\x30\xa8\xef\x0f\xd7\xe9\x86\xcc\xe6\x78\xc9\xa2\x06\x97\x18\xce\x7d\x83\x45\xdf\x09\x91\x43\x3f\x0a\x5a\x95\x69\xf1\x8d\xaa\x3e\x0f\xc3\x67\x50\x37\xc2\x4d\xf7\x44\xf9\x09\x06\xd6\x40\x27\xf4\x6f\xf2\x2b\xbf\x27\x17\x2e\x5b\xd8\x14\x04\x7b\xb5\xb7\xd0\x0a\xaa\xb3\x6f\x07\x2a\xb4\xdf\xb0\x93\x4f\x55\x8a\x30\x30\xe0\xd6\xe9\xc6\x2a\xb4\xaa\x37\xb8\x87\x46\x58\xce\xaf\xde\x0c\x43\x49\x44\x97\xb9\xb2\x2b\xfd\xf1\xd0\x3c\xab\xda\xd8\x34\xb2\x4b\x0e\xb3\x09\x15\xe2\x36\x0d\x42\xaf\x92\xbb\x1d\x4a\x22\x3f\xa7\xd6\x88\x75\x12\x5c\x61\xa4\x4c\x40\x38\xea\xd4\xe3\x97\x51\x49\x4e\xa9\xbb\x9d\x42\x1a\x6a\xc3\x23\x6f\x87\x03\x06\x5e\x72\x30\x93\xe8\xf8\x6a\x91\xad\x07\x22\x5d\x5c\x2d\xf4\x41\x2e\x5a\xe5\x2a\xb4\xdd\x16\xc3\x5f\x1a\x5a\xdd\x2a\x5f\x19\xbc\x0a\xc3\x4e\x42\x14\x0c\x55\xf9\x40\xef\x30\xd3\x86\xad\x84\x04\x2a\x03\x84\x50\x1b\xac\xd2\xec\x7d\x60\xe9\x98\x7f\x80\xfd\x40\x45\xcb\xdc\x44\x04\xb2\x68\xad\x84\x59\x14\xa9\x7f\x6d\x65\xfb\x0b\xde\xc9\xb0\xbf\xce\xb8\x6c\x61\x48\xcd\x1c\xcc\xb4\xc6\x8d\x91\x84\xa9\x09\xd2\xee\xd8\xd4\x09\x87\x83\xa7\x61\xd2\xd1\xdd\x29\xde\x1d\x5f\xe3\x86\xa1\x44\xe0\x0c\x94\x1f\x0f\xc4\x67\xc4\x4b\xd2\x1f\x4b\x22\x25\x33\x36\x99\xe8\xee\xba\x35\xf5\xce\x2a\x9a\x0a\xfa\x85\x7e\x7d\x59\xa5\xd7\xca\x26\xd9\x42\x86\x5c\x85\xbe\xcc\x60\x7d\x54\x5c\x9d\x5c\x79\x9b\x20\x19\xf8\x75\x8c\x04\xc2\x1b\xb2\x9a\xae\x14\x49\x3a\xc8\x13\x2b\xf3\xce\x65\xbb\x1b\x2d\x11\xef\xb6\xf9\x96\x7e\x04\x0e\x4d\x54\x68\x9a\x36\xc7\x79\xbc\x41\xa8\xc7\xc3\x30\xbd\x38\x9f\x5e\x7b\x1b\xdc\xd1\xb8\x5d\xcf\x11\x4a\xfc\xaf\x3a\xe6\xb6\x3e\x26\x54\x5b\x9e\x6d\x78\x1d\x6f\x30\x7c\xcb\x78\x11\x93\x8d\x4e\x23\x1b\xc0\x5b\x57\x26\x58\xe7\x32\xca\x63\xb2\x89\xc7\x38\xb8\x12\x01\x21\xab\xd9\x68\xae\xfa\x7c\xa3\x26\xb5\xeb\x84\xf3\x96\xdc\x0c\xa0\xca\xcf\x6e\x26\xd1\x9a\xdc\xd7\xd1\x35\x8f\x6e\x11\x0e\xec\x4e\x44\x1d\x25\xdf\x8a\x43\x38\xba\x4d\x45\x6b\x63\x89\x18\x20\xbc\xde\x57\x05\x16\xca\x09\xce\x95\x72\x33\x08\x43\xb9\x6d\xc3\xdf\x5c\x55\xba\xcf\xdb\x6d\x70\x55\xda\xfe\x3f\xd0\xb1\xb6\xc8\x34\xf8\x8f\xff\xfe\x7f\x04\x49\xf0\x1f\xff\xfd\xff\x3c\x10\x3e\x73\xaf\xc7\xb6\x2f\xd0\x84\xe9\xcb\x18\xfa\x22\x1b\xf4\x66\xeb\x70\x20\xcf\x08\x8a\xfe\x46\xc5\x7f\x74\x07\x98\xee\x1c\xde\x0a\x63\xb5\x15\xc0\x12\x7a\xa7\xfa\xac\x8b\x58\xc7\xdf\x60\xd8\x77\xff\x46\x55\x82\xe6\x03\x55\x5b\xc2\xea\xda\x74\x3e\x0c\xa3\x25\x28\x90\xea\x2d\x67\x72\x80\xe4\x62\xbb\x2d\xb7\x5b\xb6\xdd\x2e\xb7\xdb\x46\xed\xb4\x05\xa9\x24\x60\x00\x8e\xd8\x22\x26\xa5\xf2\x2a\xb8\x88\x89\xd6\x79\x7f\xe7\xaa\x9c\x5f\xcf\xf1\x02\x37\xad\xc1\x7d\x18\x46\xef\x74\x84\xd3\x5a\x4d\xc3\xfe\x05\xf1\x0e\xed\x0e\x7f\xb8\x46\x0e\x5a\xdd\x30\x5f\x19\x24\x38\x0a\xb0\xaf\x25\x38\x38\x51\xa2\xf8\x98\x54\x9f\x9d\x4c\x01\xc9\xff\xf7\xff\x11\x58\xdb\x68\x60\x0b\xb5\xf5\x15\xcc\x63\xe8\x5b\xfc\xce\x52\xe1\x1a\xde\x11\x36\x65\x71\x70\x94\xad\x07\xc0\xe1\x1b\x2c\x78\x95\xd3\x2a\x48\x82\x6e\x8a\x05\x4b\x05\xa9\x60\xfe\x33\x52\xc4\x56\x26\x3d\x69\xfb\xae\x14\x61\x2c\xcf\x75\x69\xf0\x97\x9c\x88\xd9\x12\xe4\xb6\xf9\x50\xf0\xcb\x22\x0c\x73\xad\x96\x55\x28\x70\xb0\x33\x9f\x48\x66\xf9\x55\x9d\xfe\xf6\x20\xc1\x32\xe7\x64\xee\x41\x81\x20\x83\x42\xf9\x70\x83\xb0\xd2\x82\xc2\x25\x31\x19\x4d\xb6\x82\xc8\x5f\xae\x04\x34\xdb\x43\xca\xfb\x65\x18\xba\xe2\xa4\x1e\x53\xc2\xf9\x43\x5b\x0f\x33\x84\x65\x7e\x38\x7c\x7e\x50\xb4\x92\xd2\xbc\x7e\xae\x16\xdd\x9e\xb6\x30\x8c\xd8\x76\x1b\x31\x72\x78\x3f\x74\x36\xbf\x71\x52\xa1\xf6\x1e\x02\xaf\xb7\x7b\x67\x57\x49\x7d\x02\x5c\x0d\x59\x8e\xb4\x43\xcc\xfd\xde\xd4\x54\xfc\x50\x9a\x30\xb7\x11\xbb\x6f\xa7\x32\xd4\x1e\x9a\x76\x8e\x96\xcc\x8f\x12\xeb\x4b\x06\x99\x0e\xca\x8c\x39\x19\xf9\x7a\x0b\xb0\x62\xb8\xc0\x19\x5e\xe2\x1c\xaf\xac\xbf\x27\xbc\x21\x23\xbc\x26\xd1\x47\x32\xc6\x41\x80\xf0\x8d\xba\xe6\xd8\x32\xba\x21\x64\x83\xee\x1a\x52\x90\x8c\x2c\x49\x4d\x82\x00\xe7\x6a\x2d\x6f\xc8\xf8\xb8\x95\x86\xdd\xe2\x6b\x89\x98\x2e\xc8\x68\xb2\x70\xd5\x22\x16\xaa\x8b\xef\x48\x39\x5b\xcc\xf1\x07\xf2\xce\x28\x24\xba\x3a\x85\x1f\xb4\x4e\xe1\x3b\x2d\x25\xdc\x84\xe1\x07\x67\xbd\xa7\xd7\x6a\xa1\x3f\xa0\xe4\x9d\xde\x9e\x1b\x2b\x44\x7c\x07\x42\x44\xf9\xbc\xdc\x6c\xb7\x1f\x5c\x51\xe4\x3b\x10\x7d\x6e\x9c\x7a\xd1\x54\x8b\x24\xde\x81\x1c\xf2\x1d\x88\x1e\x37\x61\x78\x73\xa9\x12\xa2\x1b\xf8\x82\x0b\x22\x67\xe1\x83\x87\xd4\x34\x8a\xc9\xeb\x24\x42\x8e\x5a\x71\xc7\xa2\x7a\x5a\xc7\xc1\x44\x51\xf9\x90\x2c\xbf\xb6\xda\xee\xde\xe0\xa2\xcc\xd4\xd5\x66\x90\xd9\x8d\x3a\xbc\xe9\xfa\x4d\x18\x46\xb7\xdb\x6d\x74\xeb\xe0\x8c\x6d\x2e\xfc\x0e\xd4\x6a\x3f\x28\x60\x17\x86\xfd\x25\x80\xd9\x0f\x26\x2e\xb3\x37\x17\x51\x3f\x07\x55\x13\xa3\x13\x88\x3f\x68\x55\x93\x9c\xbc\x43\x66\x5e\x2f\xf5\x54\x68\xfb\x49\x39\x19\x20\x95\x95\x50\xe0\x16\x36\x91\x5a\xdf\x5b\xb3\xbe\x8b\x98\x9c\xa0\xdb\xd9\x22\x1e\xcf\x55\x6f\x0b\x35\xb0\xdb\xd9\x62\xae\xf8\xf7\xf9\x76\x9b\xdb\xd9\x6f\x6b\xb8\x76\x77\x48\x06\x16\x14\xf8\xda\x14\xca\x41\xb3\x51\xe9\x8d\x8e\x10\x6c\x40\x89\xb1\xc9\x5c\x91\x51\x74\x14\x7c\xba\x8a\xc7\xa0\x43\x89\x06\x1b\xab\xea\xe8\x2b\x42\xe2\x36\xb7\x31\xc4\xca\xcd\x9e\x88\x72\xd2\x1f\xa3\x9d\x1c\xda\xe6\x92\x18\xec\xc7\x6c\xe7\x17\x2d\x97\x68\x85\x6f\x90\x3e\x0c\xda\x86\xee\x5b\xb2\x89\xd7\x8e\x42\x53\x5f\x33\x09\xdf\x90\x6f\x2f\x5f\x4c\xd7\x16\x14\xbe\x18\x6c\x50\xb2\xee\x09\x4b\xc4\x45\x02\xbf\xc1\xe9\x34\x8d\x9b\xa4\xc1\x19\xde\xc4\x6f\x8c\x21\x30\xb9\x99\x16\x49\x10\xe0\x25\xae\x61\xb6\xbf\xbd\x24\x2f\xd0\xdd\x9a\x98\xca\x64\x55\x78\x43\x5e\xf4\x14\x54\xde\x90\x6f\x71\x46\x82\x60\xb7\xb6\x0e\xd9\x38\xe6\xa4\x9a\x7d\x8c\xe3\x39\xc2\x29\xe1\x2c\x52\x2f\x58\x38\x58\x08\x52\x17\xfd\x91\x19\xe5\x47\x32\x9e\x7c\x6c\x35\x28\x3e\xca\xd5\xf4\x7a\xdb\xa9\x5c\x22\x23\xaa\xe2\x71\xa7\x62\x87\x09\x90\xfb\xb7\xdc\x88\xb4\x1a\xe2\xa0\x50\xa1\x75\xc4\xc3\x30\x08\x88\xa3\x87\x2b\xb7\xa8\x04\x93\xdb\xad\x87\x37\x1d\x8c\xbc\xed\xb4\xb6\x62\x0f\xcb\x03\x8e\xaa\x69\x35\xa3\xf3\x8e\x3e\x25\x07\xc1\x1f\x43\x77\xd1\xbe\x5b\x38\x05\x3b\x89\xc0\xd4\xe1\x62\x01\x0c\x77\x99\x5a\x2a\x14\xab\xe6\x28\xe9\xaf\xc0\xe3\xd2\x9c\x0c\x2d\xb9\x86\x7b\x1a\x3e\xc3\x2f\xfd\x15\xe4\x65\x18\x34\xfd\x2a\xa4\xd5\xe8\xcb\xa9\x4c\x4c\xc6\x3d\xd6\x4a\xbc\xb5\xe9\x14\x43\x3b\xa4\x3a\x8c\x4b\xb0\x70\xa1\x10\xdc\xa0\xbc\x56\xc4\x98\xcb\x80\xe9\xf2\x48\x29\xe6\x64\x36\x07\x97\xdf\x12\x51\xe1\xad\xea\xec\x4f\x65\x54\xcc\xaa\x39\x66\x51\x85\x70\xd9\x8a\x0a\x94\x85\x4c\xad\x17\x0d\xec\xc9\x00\x20\x6a\xbe\x6c\xa6\x74\x7f\x6a\x2d\xe7\x58\xaa\xd7\x46\xbf\xe6\x72\x41\x0b\x24\x6f\x96\xa8\x70\xdc\xa1\x6f\x88\xca\x31\xd0\xc2\xd0\xd6\x96\xc1\xd8\xe9\x45\x23\x9c\x46\x23\x5c\x58\x07\x19\xd8\xb8\x8a\xb2\x15\xc9\xe9\x66\xbf\xd2\x81\xcd\x63\x8d\x8d\xf4\x96\x33\xa4\x95\x5b\xd1\x60\x8c\x7a\x3c\x5a\xe2\xa5\xea\xfe\x0a\xe1\x8d\xf2\xfd\x0e\x55\x6b\x89\xf5\x46\x12\x1a\x86\xc3\x60\x7b\xa4\x3f\xae\x91\xa5\x2e\x32\x42\x94\x02\xf8\x98\x10\xdb\x0b\x1e\x65\x38\x53\xfc\x52\x73\xf0\xeb\x61\xb6\x42\x71\x1e\x7b\xc9\x8d\x4c\xc4\xba\xd7\x91\xec\xe5\xd8\xed\x25\xf2\x96\xe6\x70\x59\xb9\x4e\xf8\xde\xf6\x8a\xd9\x48\x2e\xe7\x08\x29\xf7\xeb\xce\x18\x00\xd9\xb7\xa3\xf8\xa4\xce\xcb\xca\xe2\xe5\x7e\x1f\x4c\xfd\xde\x04\xc6\x63\xbc\x51\xe3\xba\xfb\x94\xde\xc9\xf5\xc8\x0f\x55\xbe\x42\xbd\xbd\x79\xe9\x6d\x2e\xc7\x7b\x2b\x26\x1b\x1c\x8c\xef\x19\xe7\x43\x07\x64\xc3\xac\x33\x20\xe5\x8a\x84\xba\xae\x0f\x88\xa7\x27\x2d\xc8\x08\xd0\xfd\x8e\x06\x38\x9d\x09\xcf\xbe\x0b\x57\x31\xa8\x83\x5b\xb3\x77\x57\x84\xde\xb6\xbc\x6e\x5b\xce\x24\x66\x57\xd1\x92\xd0\x6e\x5b\x87\x2c\x86\x0c\x67\x7a\x56\xce\x7b\x22\x26\x6c\x98\xad\x9a\xf2\xbd\x24\xbd\x23\x24\xdb\x66\x46\xf7\x80\x79\x56\x67\xca\x0d\x0c\xb8\x0a\xf3\xa5\xfa\x7b\x03\xde\x6d\x98\xeb\x0a\xcc\x56\x7f\xaf\x7f\x24\x47\x9f\x77\x87\xd5\xba\x7c\x55\x96\x5e\x2c\x93\x2e\x14\x2a\x09\x8d\xc5\xa4\xba\x28\x5b\xbb\x2a\xe6\x3a\x76\xa8\xe6\xee\xbc\x0d\xda\x41\x7d\x0d\x7a\xa0\xff\xc6\x22\x86\xb5\x2b\xe2\xc0\x33\xa5\xd7\xb2\x1a\x58\x65\x6c\xf0\x9d\x4e\x1c\x00\x79\xb0\x24\x52\x5d\xdc\x1a\x1f\x52\x50\xd6\x06\x24\xd9\xef\xbc\xd5\x90\xd0\x8a\x18\x66\xd6\xd4\x9e\x71\x9b\xd7\x7b\x9c\x22\x63\xa5\x2a\xda\x5f\xdd\x6c\xd4\x31\x96\xeb\xc4\xe6\x90\x0b\x0d\x41\x39\xdc\x25\xc4\x4c\xd0\xea\xf5\x5e\xc7\xda\x2a\xe4\x9c\x52\x98\x53\xf0\x39\x5b\xb9\x6e\x50\xe8\xdc\xd5\x48\xc4\xeb\xdf\xb7\xc6\x72\xe3\x3c\xb4\xb6\x36\xd3\x60\xcf\x18\xd2\xdb\xe2\x07\xac\xe9\xbc\xef\x70\x03\x91\xd2\xdd\xd3\xa0\x01\x71\x61\x55\x93\x2d\x1e\x26\x30\x1b\x50\x70\x44\x6b\x4e\x1a\x98\xe4\x39\x7d\x8c\x28\xe6\x9e\x0a\xcb\x80\xa4\x83\xd2\x1e\x0f\x42\xb8\xf1\x9a\x62\xbb\x67\x44\x7d\xa0\x6b\x84\x4b\xf7\x58\x00\xbb\x38\x12\x03\xc2\x91\xd5\x41\x19\x29\x20\x4a\x07\xca\x6e\xa7\x9d\x05\x71\x71\xf2\x78\xaf\x72\x2d\x3e\x1b\x6f\xb7\x7d\xff\xcb\x6c\x34\x77\x42\x9a\x6e\x18\xb2\x46\x53\x33\x7d\x0e\xcc\x4e\x8e\x6a\x3d\x20\x0b\x33\x66\xf2\x86\xd8\xb0\xa8\x46\x73\xdc\xad\xd4\xdb\x3d\xf7\x1c\x07\xdf\xb6\xe5\x9e\xc5\x12\xc8\xaf\x5a\xcc\xdb\x1e\xd1\x4f\x39\x37\x72\x52\x5a\x36\x0f\xf6\xcf\x52\xf7\x10\x1c\xee\x43\xe9\x81\x09\xdb\x15\x10\x5a\xb3\xfd\x0d\x43\x38\xdc\xcc\x6c\xe8\xf4\x4d\x77\x49\x47\x7f\xa9\xc3\x90\x79\xc0\xeb\xf2\xf1\xa8\x9d\x8f\x94\xf8\x1f\x3f\x3b\x79\x1c\x9f\x3c\xc6\x35\x49\x27\xf5\x85\xff\x69\x62\x94\xde\xf5\x52\x30\xef\x94\xd7\xb8\x8e\xc9\xc9\x63\x84\x7a\xcc\x6e\xc3\xc6\xea\x87\x1d\xda\x7d\x71\x5c\xe2\x11\x6e\x10\x6e\xbc\x05\xd4\xd5\x12\xd6\x81\x35\xa9\xde\x12\xe0\x9c\xe3\xcd\x86\x15\x45\x84\x76\x8a\x2e\xa0\x03\xc2\xe5\x61\xb7\x5f\x3a\x2e\x13\xfb\x07\x77\xe8\x05\x19\x8f\x90\xab\xcd\xd6\xcb\xb9\x09\x4d\x4e\x3f\xc0\xcd\xb5\xd7\x67\xda\xad\x64\xf0\x18\x3f\x46\x5a\x7d\x49\x8d\x02\x22\x23\x29\x10\x01\xff\x31\xb5\xf3\x21\x5c\x15\xce\x8a\x5c\x73\x5b\xc8\x56\x8b\xc1\x90\xa5\x93\x68\xcf\x6b\x3c\xc6\x23\x09\xf2\x01\xe7\x50\x5b\x69\xaf\xab\xa8\x67\xcf\xb3\x6c\xdb\x39\x41\x58\xcc\x31\x25\xe5\x4e\xd8\xef\xc6\x82\xfa\xc3\x8a\x15\x07\x06\x77\x39\x1e\x39\xbd\xf1\x26\xfe\xb7\xa1\xf4\xbf\x6e\x8f\x5b\x77\x61\x0e\x50\xe4\x03\x0a\x5f\x19\xf8\x2c\x78\x1d\x51\x9c\xe2\x0a\x79\xba\xed\x1a\x8e\xa5\x87\xe0\x18\x37\x1e\xdc\x6e\x18\x19\xe1\x5b\x46\xde\x0c\xbf\xe0\xd9\x01\x6f\xd9\x76\xf7\xb8\xd1\x98\x6f\x59\x2b\x52\xa6\x1f\x8e\x6e\x5b\x62\x4c\xab\x0e\x81\xfa\x2c\x19\x21\x79\xff\x28\x97\xd5\x12\x63\x32\x30\x6c\xa6\xb1\xdd\x40\x89\x88\xd1\x1c\xcd\xf5\xde\x06\x5b\x78\x73\xeb\x5a\x8d\x61\xe2\xbc\x82\x63\x0f\xed\x25\xcb\x75\x80\xa5\x12\x0a\x9a\x96\x7f\xa1\x25\xad\x40\x90\x40\xc6\xd6\x22\x1c\x74\x02\x48\xa5\x89\xae\x15\x8d\x2a\x3c\xd2\x7a\xce\x35\x2d\xc8\x17\xc0\x8a\x53\xe0\x4a\xf9\x4f\x80\x7d\xf5\x96\x45\xea\x4a\x10\xd6\x3f\xdd\x0d\xd3\xa7\x90\xe7\x26\x62\xb8\x70\xfc\x1c\xd2\x0d\x29\x8d\x73\x2f\x41\xcb\x5c\x76\xed\x50\x6c\xfe\x48\xeb\x8f\x82\x58\x4b\xd2\xb9\xb5\x44\x13\xf0\x4a\xab\x89\x2b\xff\x1f\x0c\x0b\x2e\x1f\xf4\xa3\x48\xe8\x0e\xe1\xbf\x28\x2f\x7f\x58\xf5\xb6\xe6\x68\xd7\x73\xe3\x99\x93\x0f\x3c\x72\xef\x7b\x7c\x97\xf1\xb2\x16\x55\x93\x09\x5e\x25\xb7\x0c\x76\xec\xde\x86\xad\xa6\x6a\x70\x6a\x17\x0d\xda\x65\xc0\x62\x20\xe9\xd4\xc4\xf9\xec\x7e\xb4\x3f\x63\x0b\xf9\x71\x7b\x47\xdc\x8b\x13\x8e\xba\xe1\xc9\xe4\x69\xa8\x62\x13\x9a\xac\x45\xa5\x3d\x78\xee\x75\x0b\x57\xc8\xe0\x28\x87\xd0\x13\x0f\x33\xf0\x0a\xa2\x1d\x36\x8e\x9b\x0f\xf8\x1e\x7d\xa3\xe7\xfe\x37\x06\x69\x28\x66\xf0\x0e\x4f\xa7\x22\x11\xca\x1b\x3e\xdd\x6e\xdd\x6d\x60\x82\x65\xa1\x1d\xae\x4d\x9b\xff\x10\x51\xb4\xdf\xee\x8a\xba\xf3\x3a\x42\xd8\xfa\x1e\xf4\xda\x1d\x8c\x7b\xaf\x2a\x77\x77\x08\x1d\xa2\xba\xc2\x2f\x74\xcf\x2b\x2f\x42\x36\x52\x1b\x67\x7f\x9b\x59\x87\x32\xa6\x63\x01\x96\x34\x79\xd2\x1f\xed\xc0\x29\x99\xb3\xcd\x04\x02\xf7\x24\x6e\x4c\xb0\x64\x1f\x46\x7c\xa9\xfb\x45\x31\xa8\x47\x1a\xa5\xe2\x8a\x54\x53\xf3\x2a\xf7\x11\x2e\xd5\x02\x1c\xaa\xc6\x60\x89\xdf\xea\xa1\x98\x72\x14\xe1\xb6\x46\x6f\xea\xab\x69\x99\x94\x6a\xea\xab\x7b\xa7\x5e\x07\xff\xbb\xcf\xd3\xac\xfe\xfc\x25\xb8\x25\x72\xfc\x86\x8a\x30\x54\x7c\x0f\x5b\x83\xca\x92\x74\x1c\x74\xbd\xb4\xbd\x34\xe0\xd0\x2c\x05\x6d\x1b\x7f\xdd\xac\x17\x9d\x80\x8f\xad\x5e\x8f\x93\x4f\x35\xf1\x77\x56\x37\x69\xb1\x1f\x14\xd9\x44\x21\x80\xca\xba\xa0\xa4\x6d\x15\x61\xb0\x24\xdb\x61\x39\x17\xcf\x79\xf3\x80\xf3\x50\x40\xf5\x6d\x38\xe7\xfb\xb2\x41\x86\x1d\x36\x56\x61\x0f\x66\x73\x37\xeb\x0e\x6b\x67\x26\x87\x06\xde\xae\x2e\x8c\x5e\xf9\xc8\xb9\xd7\x1d\x30\x2d\x8c\xfd\x4b\x84\x5c\x17\xfd\xe0\xd4\x5d\x05\x9c\x87\x93\x08\xc1\xe8\x12\x13\x97\x5e\x25\xa9\x97\x24\xa0\x25\x64\xda\x6e\x03\xc1\xd5\x0f\x73\x7e\x21\xa8\x7a\x1b\x5f\x1c\xfb\x51\xf1\xee\x9d\x3d\x5a\x0c\x2b\xb9\x8f\xeb\x1d\xde\x0b\x03\xf9\x50\xa1\x03\x31\x23\x01\x42\xe8\x39\xf0\x41\x84\x3a\x19\xbf\x50\xff\x4c\xec\x6f\x82\xe9\x0a\x48\xe1\xed\x76\x84\x12\x8a\xac\x65\x0d\x42\xd8\x8d\x2f\xf8\x49\x95\xbb\x07\x6e\xbb\xa5\x48\xd7\xd3\x89\x30\x7c\xb0\xaa\x1f\xf6\xab\x12\x61\xe8\x02\x84\x43\x55\xd5\x7b\x75\xa1\xbb\x2f\x75\x99\x5f\x9d\x9a\x0e\x96\xfd\xfc\xf6\x13\x4a\x2f\x8c\x53\x62\xbb\x66\x70\x50\xc4\xde\x04\xed\x77\xc5\xf8\xde\x30\x20\xf5\xee\x80\x31\x3d\x75\x03\x6d\xb2\x59\x39\x27\x3a\xc6\xa3\x9d\x07\x79\xb5\xa9\x8d\xd8\x4e\x2e\x35\xa1\x38\x91\xc1\x99\xc0\xb7\xa7\xa3\xa5\x6a\x79\x61\xd8\x3b\x06\x2a\x72\x42\x0b\xa5\xbf\xa2\x11\xd3\x93\x2b\xc7\x93\xe6\xbf\xb1\x4a\x0e\x35\xde\x4e\x88\x21\x32\x00\x77\x76\xc2\x54\xde\xb7\x2b\xfc\xf6\x4b\x5c\x3a\x4c\x5f\xb5\xca\xd7\xee\xc6\x3b\x48\x88\x9a\x7b\xce\x59\x16\x85\x1a\x54\x07\x22\x97\x9a\x7b\xa1\x92\xd3\xa6\x03\xbc\xc2\x6f\x79\x7a\x51\x4f\x10\x31\x15\x86\x01\xc3\x50\xc2\x76\xbf\xf7\x92\xbe\xa6\x07\x4f\xfd\x7e\x8c\xda\x7f\x59\x9f\xc1\x55\x04\x08\xa2\x4d\xc4\x9d\xfb\x7a\x87\x30\x18\xaa\x30\xab\xd1\xba\xc3\xdd\x08\x99\x0f\xd0\x21\xb3\x39\x76\xbc\xad\x3a\x6b\xee\x38\x6a\x2a\x67\x6c\x4e\xb4\xb1\xd2\x7e\x10\xdc\x52\x56\xb9\xdd\xda\x30\x9f\xfb\xcd\x1f\x3e\x39\x9d\x3e\x98\xf6\x6d\x34\x22\xbf\x1f\x4e\x10\x1a\xf3\x69\xc6\xe7\xbd\x72\xc6\xe7\x44\x61\x3c\xa9\x99\x45\xc1\x93\x14\x66\xf1\x1e\x14\x07\x9c\x01\x6b\x2c\xa7\xda\x19\xc9\x46\x18\xc2\x35\x00\x6e\x98\x7e\xa3\xab\xbe\x63\x2e\x4e\x18\x56\x9a\xee\x16\x6b\x75\x42\x7d\x0a\xa5\xcb\xfe\x45\x15\xd5\xda\x69\x01\xe6\x08\x17\x32\xe1\x9b\x2a\xaa\x41\x25\x42\x91\x6a\xe0\x97\x19\x73\x52\xe0\x20\x05\xa3\xa7\x80\x10\x7d\x22\x33\x42\x9d\xa5\x91\x35\x82\x0d\x7c\xa6\x02\xac\x66\x06\x7c\x5c\x8c\x7a\xe5\x2c\xb5\x10\x66\x39\x2d\x92\x06\x2f\xa7\x4d\x52\x68\x3e\xbf\xfb\xb5\xc1\xad\xaf\x13\x99\xf4\x8d\x3c\xa9\xb4\x03\x48\x76\x6a\x8f\x96\x58\x68\xe5\x66\xd2\x9e\xe5\x09\xbf\x94\x2b\x35\x18\x20\x83\x79\x82\xa3\x83\x5e\x3d\xfd\x51\x1f\xfe\x5a\x93\x07\xd9\x3a\x0c\x7f\xd4\x7c\xc8\x6c\x0d\x00\xa0\x29\x73\xee\xef\x0a\x74\xf7\xab\xae\x46\x05\x92\xd3\xa8\xe5\x03\xd9\x20\x96\x9c\xad\xed\x1e\xb8\xd6\xad\x16\xbc\x22\xe8\x9a\x7f\xbb\x88\x0a\x57\xa7\x8b\xd4\x54\xbc\x80\x1b\x06\x4c\x86\x1c\x18\xe0\x52\x74\x14\x80\xc5\x81\x7c\xfe\x65\xaf\x72\xef\xb0\xa6\x27\xbb\x5c\xd7\x4e\x58\x06\x9d\x0b\x77\x05\x02\x8e\x8b\x3f\x00\x2d\x2a\x45\x02\x11\xb5\x53\xb6\xdb\x38\x56\x9c\x58\x53\xc2\x73\x0b\xa8\xcb\xa8\x34\xbf\x94\x89\x76\x74\x07\x0b\x25\xd4\x42\x54\x3b\x89\xb7\xb5\x5e\x04\xf7\x22\x3a\x74\xa8\x63\x37\x6d\xb8\x4e\x3f\xb6\xb4\x37\x38\xf7\xaf\xde\x3f\x97\x14\xf9\x5e\x2d\x5d\x3a\x5d\xb3\x41\x64\xdf\xda\xd4\x48\x2e\x0a\xee\xa6\x1e\x42\x27\xa9\x61\xc1\x9a\x9e\x48\x6c\xf5\xdb\x0d\xd9\x4b\x7b\x43\x8b\x43\xc9\xdf\x02\xa4\x20\x0e\xa9\x6f\xbe\x5e\xdb\x76\x77\x98\xd5\x9d\xc1\x50\x7f\xc1\xf7\xcb\x10\x62\x41\x7a\x67\xc4\xea\xc2\x39\x30\xc9\x7a\x4d\xe4\x72\x25\xaf\x3a\xf3\x2b\x13\xd5\x49\x38\xf0\x51\x25\xa3\x1d\x20\x93\x7b\x15\xfb\x18\xf5\xa7\x2f\x62\x4f\x40\xab\xe4\x95\x0a\xa8\x5d\x5a\x63\x4c\x64\xa3\x39\x63\xa1\xdb\x56\x99\xf4\xf6\xdb\xcb\xb6\x93\x98\x09\x78\x50\x2f\xd2\xfa\xf0\x75\xa1\x27\xf3\x6b\x4b\x4d\x06\xca\xc6\x5a\x22\xba\x53\xf3\x3b\x09\x40\x0f\x27\xc0\x7b\x94\x74\x49\x94\x83\x48\xc8\xdd\xda\x7b\x26\x41\x6b\x64\xaa\xbe\xb5\x56\xa1\xfb\xf5\x9b\x2f\x1f\xaa\x74\xa3\xed\x45\x25\xfe\x37\x2b\xe7\x80\x08\xbe\xe6\x51\xa5\xed\x40\x21\xad\x0d\x29\x46\x5b\x73\x50\xcd\x64\x03\xdb\xd2\x9e\x95\xc5\x18\x4a\x7a\xcd\x6f\xe8\xff\x1b\xe7\x01\x6b\x59\x24\x5b\x46\x7d\xd6\x8e\xbb\x75\x70\x01\x3e\x0e\x95\x28\xd5\xb2\x67\x39\x38\xb4\x11\xd9\x4a\xcd\x9c\xd2\x0d\xe2\x7e\x20\xb6\x94\x70\x6d\xc7\xcb\x5b\x3b\x5e\x98\x4f\x37\xea\xa0\xb1\xfd\x8d\xf4\xaf\x30\x4c\xfb\x56\x8f\x6d\x6a\xec\xac\x4c\x81\x14\x29\xf3\xce\x5d\x67\xfa\xf5\x1e\x54\xee\x12\x1e\x9a\xfc\x7d\x26\x87\x56\xd7\xa0\x1f\x8e\x7e\x51\xf6\xe3\x10\x56\x11\x9c\xed\x1a\x15\x8a\x30\x64\x9e\xe5\x3f\xb7\xba\x7f\x69\xc1\xae\xcb\x1f\xb5\x15\xbb\x3c\x34\x5f\x2b\x21\x85\x31\x3c\xf7\x7d\xcc\x1a\x0b\x1d\x6d\xf6\x0e\xc6\x04\xc6\x04\x7e\x36\x47\xed\x9c\x1b\xa9\xc7\x33\x31\xd5\xe1\xe5\x19\x4a\x2a\xc3\x2d\xb7\xa4\x44\xd5\x92\x12\x8e\x9d\x7c\x5b\x18\x21\x3c\xc2\xcc\xc8\x4b\x88\xc0\x5c\x45\x76\x68\x95\x2b\x4a\xa2\xfc\x3c\xd0\x96\x29\xdb\x03\x07\xb8\x86\xa3\x1f\xff\xa5\x04\x9d\xc5\x12\x9c\x3b\x68\x15\x50\x23\x08\x01\x07\xb2\x07\x4c\xd7\xdd\xd5\xc1\x6c\x67\x99\x48\x9a\x84\x68\xcf\x8a\x5e\x2f\x5f\xbc\x6b\xdc\xe7\x62\xe3\x17\x79\x9f\xb5\xa9\x7d\x83\x97\x0f\xf0\x94\x70\x85\x2b\xf0\x96\x72\xbb\xa1\xdb\x6d\x00\xf7\x63\xa0\x48\xf2\xcf\xb5\xa6\x62\x72\xc8\xf1\xda\x9d\xeb\xf0\x3a\x11\x56\x2f\x51\x80\xef\x85\xb7\xb7\x1b\x3a\x35\x8b\x96\x08\x84\x5b\x47\x89\x09\x30\x97\xda\x77\xec\x3b\x89\x4b\xfa\x63\xac\x3c\xa1\xab\x8c\xea\x37\xde\xf3\x9c\xad\xbe\xee\x25\xef\x7a\x9d\x41\x53\xe2\x0c\x5b\x6e\xdb\x56\x01\x13\xed\xb0\x75\x45\xfb\xec\x50\x40\x2c\xa0\x77\x0c\x6f\x29\x72\x6b\x42\x87\x9d\x85\x3a\xce\x46\x7c\xaa\xc8\x11\x79\x48\x0a\x68\x62\xf7\xaf\xd2\xf6\x63\x5a\xbd\x93\x2a\x93\xe7\x3d\x3f\x31\x97\xe6\x8b\xd0\xbb\xdc\xf8\x84\x51\x92\x19\x99\x49\x3b\xc5\x71\x48\x24\x3b\xb6\xbd\x7d\xe1\xcd\x89\xcb\xb2\xec\x39\x24\x00\xf5\x7c\x16\x59\x26\xb8\x0e\xba\xa0\x6d\x61\x3c\xef\xd0\x56\x4c\xf3\xe9\x9e\xb4\x6a\x43\x46\x68\x4f\x5a\x4a\x7f\xac\x01\xa5\x54\x46\x74\x1f\x54\xfc\xca\x4b\x48\x56\x60\x8d\x90\x46\x2b\x6b\x82\xd6\x98\xcc\x64\xc2\x1b\xda\x0f\xc4\xfa\xe1\x56\x49\x97\x44\x0c\xb3\xd5\x76\x5b\x85\x61\xbf\x6a\x1d\x6a\x6d\xb7\x9a\xe2\x6f\xba\x73\x6a\xb3\xec\xe2\x98\x81\x07\x7b\x40\x5a\x9e\x15\x45\x67\x56\x8d\x08\x71\x36\xdf\x9f\xad\x83\x70\xed\xf7\xec\x1a\xed\x6c\xd1\x90\xd0\x10\x22\x52\x76\x17\x52\x4c\x07\x11\xc2\x74\x87\x37\xbc\x7e\x59\x71\x45\xd7\xec\xef\x66\x8f\xad\x8e\x4b\x72\x88\xd2\x36\x97\xcf\x03\xc3\xb0\x0a\x0a\xcc\xe5\xb5\xc7\xe0\x08\x91\x5f\x5a\xef\x0e\x82\x50\xdc\x1f\xf5\xe8\x80\x70\x1c\xc7\x95\xec\xa1\xd9\x66\xc0\xb2\x17\x48\x47\xdf\xfa\x28\xbb\xdc\x65\x93\xaa\xe3\xd7\x39\x71\xd9\xaa\x67\xa2\x0d\x68\xff\x43\x30\x14\x50\x9c\x5c\x5d\x8c\x5a\x0f\x38\x37\x6d\xfc\xa2\x4f\x1d\x9f\x33\x33\x7a\x7f\x7b\x68\x85\x88\xb5\x6a\xb9\x19\x2e\x0c\x48\xec\x70\xc6\x37\x87\xb0\x4c\x2d\x14\xfc\x54\x89\x4a\x57\xa2\xb6\x57\x40\x0f\xa3\xe5\xcf\x1f\x96\x0d\xbe\xe5\x1b\x2c\x5c\x39\xa1\xf0\xe5\x86\xf2\x23\x2d\x5a\x3e\x84\x70\x84\x74\x40\x43\x78\xd8\xf4\x17\x74\x23\x56\x64\x0f\xc9\x86\x64\xa8\xc9\xa0\xd9\x91\x91\x25\xb4\xae\xd7\x61\x72\x54\x58\x88\x2f\x78\xe6\x5f\x5c\xdb\x6d\x04\x86\x86\x3d\x07\x23\x57\x63\x3d\x2c\xf8\xe9\x19\xa5\x52\xb3\xff\xe1\x34\x2b\x6e\x21\x75\x14\x9e\xfb\xe0\x91\x03\xe2\xae\xf2\x0b\x25\x80\x95\x3f\x0d\x50\xeb\xae\x09\xae\xc0\x5c\x8c\xe7\x86\x44\x71\xe7\xff\xf0\xb4\x53\x7d\x1b\xc9\x71\x82\xb9\x9f\x21\x24\xdc\x49\x42\xd8\xaa\x23\xbd\xa7\xb9\xc4\x5d\xda\x37\xd7\x06\x32\xe7\x59\x52\xe2\xb6\xc2\xc4\xad\x7d\x87\x94\x13\x34\x28\x03\x59\xa1\xd3\x26\xbc\x46\xd2\x1f\xdd\x5b\x72\x8e\xef\x15\x3d\xba\xae\x34\x2b\x03\x79\x4b\x22\x8c\x36\x92\x75\x40\xd9\x7a\x62\xd7\x0e\x28\xc1\x11\x48\x9b\x26\x14\x43\x67\x43\x21\x9c\x87\x61\x04\x41\x20\x11\x8e\x53\xb0\x8c\x04\x79\x45\xfb\x0b\xf0\x0b\xd4\x2b\xad\xcf\x30\x98\x84\x1a\xe1\x56\x25\x6f\xb7\xdb\x45\x25\x7e\xa1\x1d\x03\x01\xb8\x6d\x4a\x39\x07\xdd\x1d\x24\xa1\x80\x2b\x8d\x7f\x03\x32\x20\x15\xfb\x09\x3b\xb3\x8d\x0e\xe8\xfc\x74\x23\x98\x08\x2f\xd0\xcc\x7b\x9a\xcf\xc4\x1c\x3c\x7f\x11\x47\x5f\x52\x96\x30\x8e\x6b\x31\xa8\x5f\xda\x8e\xa9\xce\xe2\x6f\xcb\xc8\x76\x5c\xeb\xaa\xab\xc0\xb8\x66\x87\xf8\x5b\x44\xdf\x04\x33\xe5\xb2\x76\x3f\x76\x4b\x65\x2c\x7c\x58\x8e\x76\x08\x2b\x0b\xb2\x83\x82\x79\x3f\x4a\x02\x39\x44\x32\xab\x8d\xee\xd3\xc9\x7b\x19\x55\x32\x30\xd1\x41\x4c\xfe\xca\x9c\x5d\x1f\x30\xbf\xf3\xc5\x7b\xdf\xf0\xfc\x5e\x89\x98\x3c\x4e\x8a\x53\x94\x33\xe1\x4a\xb7\xfc\x6c\xd9\x7a\x87\x5b\xd6\xe5\xbd\xcc\x05\x7d\x14\xa7\xda\x10\x36\xf2\xce\x67\xf2\x35\xb7\x32\x3f\x0b\xed\x1f\x52\xe3\x7c\x43\x37\xca\x4e\x72\xb7\x43\xd8\x55\x21\x18\x52\x13\x8a\xc8\x4b\x95\x33\xa2\xcc\x02\x19\x09\xe4\xcb\x91\xc2\x5f\x8f\x14\x8a\x7e\x24\xaf\x81\x23\x3b\xd4\x23\x47\xed\x20\x70\x22\xd1\x5b\xfd\xaf\x05\x3b\x62\xe5\x91\xdb\x02\xf2\x9a\xeb\x38\xa8\x5b\x30\x14\x86\xd7\x3c\xba\x66\x78\xc1\xd0\xc5\x28\x0c\xa3\x37\x6d\xee\xd9\x82\xcd\x0f\x45\x6a\xdc\x1f\x3e\xd5\xca\xa0\x30\x0d\x10\xb0\xae\xba\x06\x2b\xaf\x1a\xed\x76\x91\xdb\x03\x59\x27\x42\x4e\x70\x23\x6b\x77\x15\xb5\x6e\x56\x22\xb0\x86\x53\x0e\xeb\xba\x27\x4e\x71\x8b\xcb\xbd\xe3\x66\xfd\xa1\x98\x4f\xb3\x14\x28\x6a\xe8\x4f\x9f\x30\x83\x0c\xf2\x30\xac\x1d\xa0\xd6\x93\x48\x5b\x23\x61\xa9\xca\x89\x1b\x84\xa9\xfe\x59\xe2\x06\x82\x23\x20\xe3\x52\xcf\x73\x0a\xfb\x81\x39\x51\x04\xb2\xf5\x7e\x18\x9b\xb7\x2b\x56\x1f\x19\x73\xb7\x23\x56\x1f\xa5\x45\x45\xd3\xfc\x56\xae\x50\x53\xd3\x61\x80\x7a\x00\x59\x88\x00\xcb\x0f\x42\xf1\xf7\x11\x45\xf8\x99\x7c\x1c\x0e\xdf\xb7\xdd\x7e\xe1\x7f\x5c\x83\xf7\x40\xf7\x7e\x91\x68\xb4\xd3\xc9\x17\xcc\x09\x2f\x3e\x20\x9a\xf3\x8e\x2e\x46\xdb\xad\x90\xa8\x3f\x20\x09\x07\x7a\x4e\x2b\x2a\x7b\x5c\xf2\x23\xd9\xfe\x51\x10\x47\x22\x36\x85\xe3\x40\x8e\x40\xac\xa8\x1d\xdc\xd0\xd9\x81\x15\xa1\x93\xbe\x8a\x30\x52\x4f\x3c\xf4\xd3\x23\x55\x7e\x4b\x35\x4b\x5c\x70\x74\x57\x11\xa6\x41\x9e\x18\x10\x6e\x9d\x49\x6b\x7d\x5c\x31\x77\x62\x73\x74\xcc\xf7\x94\x54\xc4\x77\xe9\xfa\x5b\x21\x68\xa8\xf5\xf4\x0f\x08\x59\x8f\x11\x1b\xb5\x28\xe2\x84\x3b\xce\xd2\xb2\x15\xb8\x76\xb1\x64\x80\xf3\x59\xa8\x8f\x1a\xf3\xe7\x08\x5b\x0c\xdf\xf6\xf5\xcd\x5e\x5f\xbb\x5d\xf4\x1d\x05\xb5\xc1\x41\x94\x5d\x4f\xa7\xba\x8f\x9e\x8b\x10\x31\xa0\x8e\x32\xaf\x8b\xff\xd3\x49\x39\x29\x89\x51\xe0\x43\x65\xab\x3d\xea\x04\xdc\x60\x8e\x9f\x48\x62\x95\xf8\x0e\x3a\x3d\x6f\x75\xfc\x70\xa5\x42\xbd\xd9\xd0\x69\x25\x31\x7a\x80\x93\x72\x22\x48\x89\x9d\x76\x5d\x8f\x20\x65\xbb\x0b\xd8\xbc\x4f\x04\xb8\x2e\xac\x62\xe2\xa5\x7b\x3b\xc3\x6c\x81\x58\x68\xf5\x09\xdb\xf5\xf7\xcc\x77\x99\x0d\x9f\x7b\x34\xc9\x79\x47\x71\x70\x4f\x15\xd1\xb3\x09\xd8\xdb\x97\xed\x64\xc2\x96\xa4\x84\xf5\x5a\xd7\xe7\xb0\x2f\x95\xc9\x80\xd3\xcb\xd6\xeb\xb9\x52\x7e\xec\x6b\x07\xde\xc8\x93\x26\x74\x82\x33\x96\x86\xc4\xd5\x5f\x1c\xa5\x2d\x68\x3b\xd5\xaa\x86\x62\x40\x52\xdb\x40\xec\xec\x83\xef\x3a\xb6\xd5\x23\x5c\x49\x3a\x07\x94\x56\x90\x59\x29\x4b\x06\x1e\x6c\x9c\x91\xca\x36\xae\xc4\x6a\x84\x9a\x66\x5b\xb3\x08\x1b\x93\x95\x13\x43\xd2\x4e\xf8\x84\x93\xa8\x22\x1c\xb9\xcb\xac\x1a\xe3\xf7\xcf\xb7\xa4\xe7\x9d\xf9\x06\x7a\x9e\x90\xaa\x6d\x32\x35\x4d\x5a\xde\x83\x1d\xee\xf7\xcc\xf5\x23\x0f\xb6\x60\xbe\x06\x8b\x41\xe3\x95\x99\xd8\x32\x35\xc7\x47\x12\x10\xb6\x96\xb7\xad\x0d\x09\x20\x2f\x26\x8e\xae\xc6\x65\xdc\x57\x45\xb4\x8c\x8f\x47\x6d\xbc\xe8\x6f\x78\xfe\x96\xad\x69\x1b\x22\xfe\x0d\x2d\x20\xc1\xc9\x63\xa4\x22\xad\x90\xa4\x0d\xf6\xec\x48\x48\xbc\x3c\xad\xd0\x04\x6b\x02\xc8\x97\xe7\x78\x92\x04\x42\xb7\x5b\xc7\xe3\xf3\x73\xef\x1c\x28\xe9\xee\xda\xc4\x8d\x01\xf9\xee\x37\x55\x24\xb4\x78\xf7\xdb\x36\xa4\x8d\x0a\x29\x63\x99\x5c\x5f\x30\xe0\xc4\x3a\xe1\x6e\xda\x48\x36\xf1\x18\xe1\x7d\xcc\xf2\x37\x4a\x68\x64\xd3\x01\x36\xdf\xd8\x0d\x3b\xa1\xad\x1e\x38\x5b\x46\xfd\x1b\x89\x74\x69\x81\x9a\xd1\xb0\x1d\x6e\xf8\x26\x72\x7d\x09\xfc\x7c\xc0\xd5\x94\xc6\x39\x7b\xcc\x97\xd5\x11\x45\xb9\x73\x9c\x92\x58\x5e\x73\x5f\xa4\x02\x2c\xe6\x22\x66\x96\x88\x94\xdb\x2d\x73\xd7\x83\x88\xa1\x92\x72\x87\x61\xfb\x2b\x0a\xe2\xa0\xfd\x62\xc2\xb9\x8f\x54\x84\xb0\x35\x28\xc3\xb7\xbb\xe2\x32\x1d\x78\x76\x97\xba\x6f\xc0\x4c\xfc\x82\x16\xe9\xed\x76\x1b\xfc\xf9\x60\x75\xe0\x54\x86\xdf\xe3\xb3\x78\x1a\x7d\x63\x24\x46\x08\xdf\x70\xf3\x13\x25\x9e\x44\x33\x0c\xfb\xed\x37\x3d\x93\xd3\x36\xc5\xcf\x7c\x39\x86\x10\x89\x20\xc8\xf4\x3e\x0c\x4e\x8c\x58\x73\x6a\x84\x54\xb0\x0a\x5e\xbb\xda\x0b\x66\xc4\xb0\x33\x9b\xad\xfd\xc5\x0d\x8f\xb8\x16\x40\xd6\xa8\xb7\x1f\xc4\x08\x2c\x58\xdb\xb4\x5a\xa6\x4d\x21\xbc\x14\xec\xd3\xc4\x16\x56\x77\xa0\xde\xde\x8e\x9e\x7a\x23\x9b\x60\xaa\x37\x00\x60\x9b\x30\x6c\xac\x34\xf6\x2b\x39\x59\x35\x2d\xb0\xce\x81\x39\xb9\xd3\x15\x26\x33\x5d\xd9\x1c\xb7\x07\x2c\x61\xbe\x64\x52\x8f\x5a\x5d\xe6\x13\xe6\x4d\x1b\x6b\xe1\xc2\x04\xe9\x4f\xf5\x8a\x2d\x45\x84\x74\xc1\xd9\xa8\x95\x0b\xfb\x19\x76\x6e\xcd\x60\x50\xe1\x1c\xf2\x38\x66\xfe\x19\xc7\xde\xce\x22\xcc\x03\x36\x69\x3b\xf1\xcc\x05\x33\xd8\xdb\xd0\xac\x03\x5d\xcc\xb6\xc3\xf5\x76\xab\x3c\x12\xe9\x0d\xaa\x62\xbc\x39\x38\xe4\x57\x1e\x44\xb9\xe1\x10\xf9\x21\x0c\x2b\x3d\x32\xf9\x8b\xfe\xd2\xa4\x45\x1d\x51\x08\xf8\x68\x02\x99\xd9\x0a\xbe\xd8\x3b\xa9\xdd\xd8\x2a\xe0\x57\x41\x63\x3f\x56\x8e\x62\xd4\x44\x2a\x84\x1d\xd5\x2d\xc5\xc2\x51\x98\x2b\x2e\xdd\xf0\x6d\x95\xa4\x6e\x1d\x06\x68\x18\x46\xda\x13\x45\xb7\x39\x72\xb7\x43\x68\xc6\xe7\xc4\xcb\x2f\x71\x35\xee\x45\x7c\x7b\x6d\xd0\xa1\x3e\x3d\x8c\x02\xe1\xfb\xa2\xd5\x69\x86\xef\x9e\xbb\xf3\xa9\x90\xa4\x86\xeb\x79\x17\x21\x25\x6f\xd0\x11\xcb\xaa\x36\x62\x99\x98\x1a\x96\xca\x54\x80\xb5\x75\xe2\x78\xc0\x7d\xc5\x0e\x98\x45\xec\xe9\xcd\xd9\x9b\x96\x5b\x09\x23\x37\x70\x55\xfb\x9e\xac\xa6\xdf\x50\x2f\x64\x2e\xdd\x3c\xe7\x9b\x5b\x65\x5b\xc0\x51\xc2\x51\x2b\x73\x54\xf7\xb5\x52\xce\x02\xcb\x2a\x5d\x87\x3d\x51\xf5\xae\x1b\xd9\x35\x75\x43\xba\x2a\x97\x53\x38\x23\xe9\xac\xd1\xc4\x99\x2a\x0f\xb7\x54\xa6\xa1\x02\x4f\xb2\xa1\xe0\xea\x82\x52\x86\xaf\x3b\x84\x5b\xc4\x71\x29\xa9\x8f\x0c\x45\x05\x59\x1a\xd7\xc7\xff\x54\xab\x1b\x5d\xe5\x31\xfa\xd3\x31\x52\x34\xad\xc0\x4a\x3d\x38\x2a\x66\xe3\x39\x42\x97\x83\x71\x18\x46\x37\x3c\xaa\xd1\x6c\x39\x27\xd9\x6c\x39\xc7\xca\xfc\xf1\x48\xfe\x96\x74\x9e\x0d\xcc\x63\x67\xf9\xa5\xb3\x73\x2b\x8d\xb3\x4d\xd5\xbf\x98\x94\x89\xb8\x30\x62\x04\xcd\x3c\x06\x1b\xf7\x6c\x45\x5c\x3a\xf1\x57\x76\x9f\x53\xe0\x07\xa2\x8c\x29\x33\x13\xbb\x56\x77\x7c\x98\xf1\x0d\x03\xa6\x5f\xa4\x32\x11\x6e\xd7\x2a\x42\x48\x7f\x26\xfd\x51\xbb\x00\x4a\x20\xc2\x3b\xba\x60\x75\x1c\xa3\x97\xcc\x56\x3d\xab\x8d\x02\xa5\xee\x23\xee\x7c\x04\x2d\x29\xed\x05\x1b\x36\x82\xac\xde\x54\x6d\x40\xf3\x7e\xf4\x12\xfb\x4d\x47\x31\xa9\x2e\x1a\x27\x72\x9e\xfa\x4d\x56\x34\x72\x52\xe3\x12\x37\xc6\xaf\x01\xc2\x8d\xbc\x02\x20\x83\xc1\x21\x4a\x48\x93\x1f\xad\x99\xba\xb8\x20\xf6\x3b\xba\x4b\x49\x7f\x6c\x58\x64\xe9\x76\x1b\xd9\x98\x50\x23\x15\x2d\x9e\xc9\x75\x71\x30\x88\xcf\x7d\xca\xc9\x41\x5c\x4a\x62\x51\x17\xa0\x23\xdd\x40\x5b\x51\x39\xa8\xd0\x60\xdc\xfb\xd5\x5c\xc3\x3a\xf0\x0b\xfe\xb5\x55\xd2\xd0\x49\x3b\xc6\xa3\x5b\xed\x61\xe9\x07\x46\xde\x0c\xe9\xbb\x4d\x45\x15\x02\xb0\x4c\x9b\x42\x90\x8e\x59\xad\xf7\x71\xda\x4d\x88\xe4\xbd\xad\x36\x29\x18\x17\x90\xfe\x78\x87\xbf\x54\xf5\xd6\x82\x6f\xbe\xab\xf8\x26\xbd\x56\x57\x88\x5f\x71\xe7\xeb\x74\x2f\x05\xaa\xce\xd2\x32\xa3\xc5\xe7\xcd\x62\x51\x80\x0c\xb9\xe5\xd2\xfc\xdd\xf5\xff\x60\x38\xe2\xb9\xea\xd5\x77\xaa\x8f\x34\x9f\xee\x27\x25\x23\x42\xbc\x2e\x83\xc2\xe0\x2f\x6d\x97\xbd\x7e\xfe\x20\x5b\xc1\x5f\x82\xea\xbe\x13\x10\x81\x79\x61\x93\x44\x5a\x5d\x53\x10\xcd\xd4\x55\xa6\xbd\x07\x39\x81\x0e\x3c\xaa\xe0\xc3\x8a\x65\xab\x7d\xaa\x60\x1c\xd2\xe1\xa2\x11\x82\x97\x53\x41\xc6\xc9\x89\xfb\x7a\x9a\x3c\xb2\xaf\x40\x40\x9c\x20\x84\x6f\x00\xc1\x13\x55\xf1\x35\xbd\x0d\xc3\xb1\xa1\x2d\x4e\x25\x29\x21\xdb\xfa\x49\x0e\xc8\x9b\x74\x47\xbf\x39\xcd\x73\xc0\xf9\x5e\xb1\x5a\xc8\x0b\x1d\xed\x27\x01\xc5\xdf\x77\x62\xbd\x9a\x40\xed\x90\x0b\x79\x6f\x51\xc0\xcb\x20\x06\xcf\xe0\x8e\xa9\x1e\x1d\xbe\x53\x02\x6b\x08\x33\xee\xbc\xc9\xab\x6e\x12\x95\x33\x31\xdf\x6e\xe1\x9f\x23\x28\x00\x96\xec\xd7\xf2\xce\x68\x67\xfb\x4f\x7b\x7e\x90\x6c\x55\x72\x12\xec\xcb\x4c\x58\xae\x45\x35\x85\x80\xe4\x1a\x29\x1a\x4d\x8d\x43\x2a\x94\x7c\xcd\x92\x72\xbb\xfd\x9a\xc1\x24\xfd\x0d\x26\x69\xb9\x3c\x3c\x4b\x8a\xdd\xd9\x9d\xa8\x03\xa9\x07\xe6\x4a\xc5\x02\x33\x73\xe5\xbc\x75\xe6\xea\xa8\xbd\x2a\xf5\x30\xfb\x0a\x2a\x4c\x98\xeb\x60\x09\x82\xde\x80\xda\x2e\xa9\xd0\x9d\xb5\x90\x64\x78\x6c\x19\xf0\xf8\x1f\x72\x30\x35\xbb\x2e\xd3\xe2\x60\xf0\x38\x53\xbf\x0a\x7f\x68\xc4\xae\x0e\x37\xe6\x59\x55\xa5\xb7\xce\xbd\x0b\x53\xa6\x2e\x5d\xcb\x3b\xc5\x27\xe8\x50\x48\x9e\x6a\xc6\xe6\x9a\xdf\xaa\x5c\x80\xa1\x1d\xfe\x2b\xd3\x9e\x16\xcc\x3a\xfe\x1b\x3b\xd4\x9d\xb1\xdf\x1d\xb5\xc6\x98\x7d\x6a\x6f\x7a\xbf\x8a\x69\x49\x7e\x15\xc3\x5c\xd2\x2f\x34\x7f\x9e\x16\xc5\x22\xcd\xde\xd7\xc9\x5f\xd9\xb4\x24\x7f\x65\x49\x24\x9f\x92\x6c\xae\xa9\x90\xc8\x29\x6f\x44\x44\x39\x1e\x39\x76\xfa\x4a\x45\xb9\x72\x63\xe1\x68\xfe\x56\x1a\x55\x33\x3e\x47\xbe\xf7\x95\x43\x5c\x67\xea\x0e\x9f\x79\x30\x9d\x72\x2b\x34\xff\x2b\xeb\xd9\x69\xb9\x3f\xfc\x20\x9d\x89\xb9\xeb\xc7\x5d\x70\x5f\xc7\x65\xcf\xc4\x50\x9d\xfd\x3b\x70\x75\x2f\xb0\x0f\xa1\xf7\xd4\x31\xbb\x00\x51\x82\xd5\x1d\xc2\x80\x70\x57\x12\x59\x06\x6b\x42\x88\x28\xf5\x77\x16\x09\xc0\x9f\x33\x9e\xd3\x35\xb8\xe7\xfd\x0a\x62\xb4\x3b\xde\x95\xb9\x0b\xdd\x0e\x1f\xcc\x61\x06\xe6\x2e\xcf\x32\xc1\x6e\x98\xb8\x55\x51\xf5\x1c\xe6\xac\x56\x17\xf2\x73\x7d\xe9\xc2\x8e\x87\x32\x48\xe8\x71\xc8\xcc\x50\x87\x1e\xae\x40\x9d\x1e\x49\x92\x00\x56\x14\xde\xda\xfe\x97\xdc\xa3\x65\xd5\xae\x44\x16\x72\xb4\x19\x19\x37\x17\xa2\xd9\x91\x1d\xe8\x8a\xee\x7e\x62\x56\xa9\x09\xed\xb0\x97\xb5\x03\x63\xd0\xdd\xdf\xdc\xbc\x2a\xfe\x00\x27\xa7\x23\x9c\x72\xf2\x66\xf8\x5d\x5a\xd7\xe4\x4e\xf0\x37\x3a\x9c\x41\x57\xb8\xe1\xb8\x4b\x86\xbc\xc1\x6e\x87\x6b\x4e\xee\x94\xf0\x3b\x91\x77\x70\xc3\xc9\x9d\xb1\xfc\xfb\xf3\x9a\x37\x35\x0d\x76\xb8\x70\x12\x63\x09\xc6\x02\xe7\x52\xcb\xb8\xd9\x21\x4c\x39\x7f\xdb\x65\xdc\x3d\x7f\x9d\x88\x43\xe8\x0e\x54\x99\xcc\x89\xd2\x05\x5b\xe3\x59\xe7\xb4\x09\x4c\xb5\x37\xeb\xa5\x1c\x5d\xc6\x9b\x52\x3c\xe7\x45\xb3\xee\x5e\x4f\x2a\x5a\x9d\xbd\x15\xe5\x0a\x2a\xca\x84\xa6\x95\x44\xaa\x67\xff\xbc\xaa\xaf\x9a\xd1\x28\x1d\xcd\x01\xa5\x86\x8f\xc6\x4f\x50\x7b\x98\xc1\x49\x77\x4a\xd8\x76\x3b\x32\x41\x49\x6a\x42\x95\x26\xe1\xb7\xcb\x28\xb8\x12\x81\x56\xd2\xaf\x2f\x46\xdb\x6d\x7d\xd9\x86\x7a\x4e\xe3\x48\x0c\x38\xea\xa5\x31\xa9\x07\x1c\xa7\x31\xa9\x06\xe9\x67\x15\xe6\xa4\x8e\xc7\xbb\x1d\x5e\xc9\x01\x2c\x59\x99\x1f\xec\x7f\x97\xf2\xb1\xcd\xf3\x6e\xf3\x25\x82\xd0\xd8\x1c\xb8\x2a\xd4\x0b\x67\x92\x12\x3e\x50\x0a\x26\x84\xb4\x91\xe0\x59\x9c\x3a\xdd\x2c\x63\x4b\x7e\xa6\x58\x0c\x54\x8c\x3c\x16\xcb\x92\xb8\x24\x3c\x1e\x63\xf9\x56\x0d\xd8\x67\x15\xba\xf4\x02\x59\xe3\x0d\x27\xb3\x20\x70\xae\xd7\x35\xb7\x3c\xaf\x0d\xb7\xce\x02\xe8\x04\x6d\xb4\x23\xa9\x1b\x1e\x6d\x38\x8a\x41\xa8\xa7\x2b\xda\xf0\x19\x75\x44\x1d\xc0\x1c\xb3\xf8\xd0\xac\x35\x66\x9a\xc3\xce\xbe\xe5\x5d\xdc\x0f\x14\xf5\x23\x17\xa5\xba\xe6\x87\x04\xf8\x1e\x15\x0b\xaa\xb9\xd5\xdc\x09\xcc\x6d\xd8\xab\x03\x87\xd9\xb8\xd8\xab\x68\x36\xef\x7a\xdc\x29\xe3\x18\x55\xb3\x72\x4e\x94\x62\x2f\x2e\x0f\x05\x60\x7c\x27\xcf\x83\x23\x5b\xe3\xce\xed\x65\xb2\x7f\xbb\xf8\x99\x66\xc6\x6f\xe4\xb4\x22\xde\x7b\x44\x51\x12\xbd\x73\xce\x10\xa1\xb8\x02\x81\xf6\x3b\x0e\xc6\x72\x2f\x38\x84\x53\x71\x19\x90\x2f\xf8\xde\x4e\x02\xc9\x16\x90\xe8\x77\x3b\x84\x29\xea\xef\x89\x4c\x4b\xa4\x0d\x1c\x2b\xa5\x25\xb8\xf7\x11\x80\x1e\xf1\x62\x8f\x3b\x08\xea\xb7\x0e\x08\xff\xa4\x5b\x77\x6c\x6b\xb9\x5f\xec\xaa\x38\xc5\x68\xb7\xdb\x4c\xef\x59\x7e\xc6\x4b\x30\x7c\x25\x23\xec\x24\xbd\x28\x73\x42\x87\x37\x12\x31\x37\xde\x87\x12\x79\x4a\x3a\x95\x88\xea\xd6\xdd\x47\x19\x10\xdd\x02\xdd\xed\xb4\xa6\xcd\x1b\x4e\x8e\x67\x12\x54\xe4\xcb\xab\x66\xf4\xf8\xe9\x99\x7c\x9e\x8f\x06\xf2\xdf\xf2\xd1\x55\x33\x7a\x32\x82\x97\x27\xcb\xe5\x55\x73\x3a\x7a\x24\x5f\x4e\x47\xe7\xf0\x92\xaa\x17\xf8\xf2\x08\xb2\x3d\xca\x17\x8f\xaf\x9a\x47\x14\x5e\xce\x97\x59\x76\xd5\xa4\x19\xbc\xe4\x67\xe9\x72\x7e\x8c\x3f\x4a\xb0\xc0\xea\x1f\x79\x95\x3f\x5f\xb9\xa1\xb5\xec\xb1\x38\xbe\xfa\x60\x1d\xf4\x6f\xb7\xf4\x32\xf8\xf7\xff\x16\x00\x8d\x2e\xf8\x0f\x9b\x0d\xad\x9e\xa7\x35\x8d\x90\xd2\xea\x79\xc5\x3f\x98\x84\xed\xf6\x0d\xb7\x7e\xfd\x9d\xe3\xf2\x8c\x77\x58\xb0\xfd\x7e\x24\x86\x35\x6f\xaa\xcc\x85\x34\x57\x1f\x02\xc5\x65\xf8\x28\xd7\x18\xae\x72\x5d\x59\x02\x29\x8e\xac\x8a\x7b\xa2\x1a\xb9\xe9\xc0\xdd\xd0\xde\x66\x13\x28\x0c\x25\x82\xd2\xaa\x75\x5b\xbd\x5e\x59\xf2\x3b\x8e\xbf\xd7\x73\x7f\xaa\xa6\xf8\xf4\x89\x5c\x82\x47\x4f\x4f\x07\xf0\xef\x1c\x56\x62\x0c\x2b\xb1\xc8\xe1\x09\x4b\x94\x8d\xe1\x79\x02\xcf\x47\xf0\x7c\x0c\x4f\xb9\x74\x4f\xc6\x6a\xb5\xc6\xa9\x7c\x3e\x5a\xc0\xcb\x63\x2a\x9f\x67\x23\xf9\xcc\x9f\x40\x52\x9e\xc1\x93\xc2\x0b\x85\x75\xa6\x50\x9e\x3e\x85\x67\xaa\x3e\xc8\x66\xcf\xc6\xb2\xc1\xb3\x53\xa8\xf8\xec\x91\xac\xf8\x2c\x85\x5a\xce\x16\xb2\xca\x33\x0a\xad\x9c\x2d\x4f\xaf\x9a\xd1\xd3\x31\x7c\x79\x3a\x3e\x87\x27\x7c\x79\x7a\x02\x5f\x4e\x1e\xab\x97\x33\x78\x9e\xab\x17\xd9\xc0\xb9\x1a\xfe\xf9\x48\x0e\xe9\xfc\x54\xf6\xec\xfc\x11\x8c\xfb\xfc\xd1\x53\x78\x42\xae\xc7\x2a\xe9\xb1\x1c\xec\xf9\x13\xc8\xfb\x44\x56\x7c\xfe\x54\xf6\xef\x7c\x01\xe5\x16\x72\xa8\xe7\x99\xca\x0a\xb3\x73\x9e\x41\xe9\x5c\x36\x7b\x4e\xa1\x18\x95\xc5\xd2\xd1\x18\x9e\x32\x25\x85\x46\xd3\x47\x90\xf2\x08\x52\x1e\x9d\xc1\xf3\x29\x3c\x61\x18\x29\x74\x23\x7d\x0c\x99\x60\x32\xd3\x33\xf5\x5b\xf6\x28\x85\x5e\xa4\x4f\xa1\x30\xf4\x25\x55\xbd\x48\x61\x75\x52\x58\x9d\x34\x83\xfa\xa0\x47\x29\xf4\x25\x85\xbe\x2c\xa0\x2f\x0b\xe8\xc5\xe2\x94\xc2\x53\xae\xf5\x42\x4d\xc3\xe2\xd1\x23\x78\xca\x62\x8b\xc7\x4f\xe0\x29\xab\x5b\xc0\x2c\x2c\x60\x16\x16\xd0\xf2\x02\xc6\xbf\xc8\x46\xf0\x84\xfc\x30\xf0\xec\x14\x56\x3a\x7b\x34\x82\xe7\x13\xf5\xf2\x14\x9e\xa9\x7a\x91\x99\x33\x98\xdc\x0c\x9a\xc8\xa0\xf2\x0c\x2a\xcf\x60\x40\x19\xec\xbf\x0c\x76\x5e\x96\x41\x9e\x0c\xd2\xa1\xa1\x2c\x87\xb2\x39\xa4\xc3\xd8\x32\x18\x5b\x0e\xe3\xc9\xd5\x48\x72\x18\x49\x0e\x8d\xe5\x30\x86\x1c\x9a\xc9\xa1\x99\x3c\x4b\xe1\x29\x9b\xc9\xf3\x13\x28\x90\x43\x01\xa8\x35\x07\x10\x45\x4f\xc7\xf0\x7c\x34\x80\x7f\xb2\x04\x7d\x74\x06\x2f\x8f\x64\x4b\x74\x01\xdf\x17\xea\xfb\xe2\x1c\x9e\x0b\x78\xca\xce\xd2\xec\x29\x7c\x80\x3e\x2f\xc7\x4f\xe1\x29\x33\x2d\x4f\x1f\xc3\xf3\x0c\x9e\x90\x72\x06\x7d\x5e\x9e\xc9\x6a\x97\x4f\x61\x93\x2e\x9f\x3e\x82\xe7\x13\x78\x42\x5e\x05\x2c\x97\xe7\xea\x05\xf6\xf5\x12\x9a\x5a\xca\x39\x1a\x8f\x4e\xf2\x81\xfc\x77\x3a\x82\xe7\x89\x7a\x39\x83\xe7\x39\x3c\x53\x78\xe6\xf0\xa4\xf2\xf9\xf8\x29\x3c\xe1\xeb\x63\x0a\x05\x9e\x40\x69\xe8\xd0\x78\x74\xf6\x48\x3e\xe5\x82\x8f\x47\x4f\x1f\xc3\x13\x5a\x7a\x0a\x75\x9c\xcb\xe7\xe9\xe3\xe5\x55\x33\x3e\x1b\x43\x73\x67\x63\x59\xe0\x4c\xb5\x7d\x76\x0a\x2f\x8f\x4f\xe0\x79\x2a\x9f\x67\xf0\xfb\x0c\x7e\x2f\xce\x20\x93\x04\x38\xe3\x33\x18\xc0\x59\x76\x0e\x49\x39\x7c\xcf\xe5\x87\xa7\x23\x79\x22\xc6\x4f\x47\xf0\x92\xca\x8e\x9e\x9f\xc8\x69\x18\x9f\x9f\x9c\xc0\xf3\x0c\x9e\x72\x1c\xe7\xa7\x90\x72\x0a\x95\x9c\x9f\x2e\xae\x9a\x71\x3a\x3e\x83\xa7\xfc\x9c\xca\xcd\x36\x4e\x1f\xcb\x55\x19\xa7\x12\x52\x8d\x53\x18\x6c\x2a\x37\xc6\x38\x7d\xf2\x18\x3e\x3c\xc9\xe4\xf3\xec\x14\x5e\xce\xd4\x8b\x1c\xe1\x02\x60\xc7\x78\x31\x92\x9d\x5b\xc0\xd0\x16\xa7\x4f\x20\x09\xe6\x15\xce\xd4\x78\x21\xcf\xf4\x78\xf1\x04\x7a\xbd\x80\x81\x2e\x9e\x8e\xe0\x39\x96\xcf\x14\x66\x66\x91\x3e\x86\xe7\x53\x78\xca\x41\x65\x27\x99\xfc\x90\x9d\x9e\xc2\xf3\x09\x3c\x65\xdf\xb3\x1c\x9a\xcd\xf2\x13\x78\x3e\x82\x17\x3a\x82\xe7\x89\x7a\x79\x0a\x4f\x39\x41\x79\x06\x99\x73\x2a\xcb\xe7\x4b\xd8\x0e\xb9\xbc\x34\x4f\x46\xa3\x0c\x9e\xb9\x7c\x42\x95\x27\xa3\xe5\xe8\xaa\x39\xc9\xe8\x52\xbe\x64\xcb\xf1\x55\x73\x92\x53\xf8\x92\xab\x1b\xf8\x24\x85\x4b\xf7\x04\x5e\xce\xcf\xe1\x99\x5e\x35\xe9\x93\x27\xb2\x48\xfa\x44\x2e\x66\xfa\x44\x4e\x51\xfa\xe4\x2c\x97\x4f\x59\x63\xfa\x44\x56\x95\x3e\x95\xe0\x2e\x7d\x3a\x7a\x02\xcf\x85\x7c\x9e\x3c\x86\x27\xa4\x48\x80\x99\x3e\x85\xe6\xd2\xa7\x50\xe0\xfc\x44\x4e\x66\x7a\x2e\x01\x75\x7a\x0e\xe7\x2c\x3d\x7f\x0c\x5f\xe0\x40\xa4\xe7\x72\x1b\xa6\xe7\x8b\x53\x78\xaa\xcc\xf2\xd0\xa5\x00\x90\xd3\x14\x00\x7d\x9a\x9e\x50\xf9\x94\x47\x37\x4d\xe5\x86\x48\x53\x79\xdc\xd2\x54\xce\x69\x9a\x3e\x3a\x85\x27\x14\x90\x77\x4a\x9a\x2e\x4e\xa0\xd8\xe2\x11\x3c\xcf\xe0\xf9\x14\x9e\x50\x91\x84\x44\x69\x2a\x6f\xc2\x74\x41\x1f\xc3\xf3\x29\x3c\xf3\xab\x26\xd7\x08\xc7\x52\xce\xd7\x72\x31\xa6\x57\xcd\x52\x21\x24\x4b\x3a\x92\x49\xf4\x44\xbd\xc8\x31\x2f\x97\xe7\x14\x9e\xcb\xf9\x71\x8b\x34\xbc\xf5\xd0\x74\x10\xee\x4a\x42\x12\x04\xbc\x97\xe4\xec\xc9\xd3\x30\xfc\xde\x62\x1b\x8e\xf8\x9e\x77\x65\x65\xf7\x38\x4c\x57\x3e\xaa\x2a\x08\xef\xdb\x86\x1d\xa9\xc0\x4e\x28\xd2\x61\xa1\x86\x59\x5d\xbf\xa5\x1f\x05\x29\xd1\xbe\xab\x24\x81\xd8\x43\x8e\xd9\x6d\x54\x02\x81\x1c\x7e\x3b\xf2\xb9\x38\xc2\x8b\x68\xec\x55\x27\xc0\x9e\x79\x5f\xa4\xf2\x8d\x8f\xfb\x18\x8d\x1b\xd9\x94\x95\x23\x88\xcb\xd1\x64\x30\x10\x96\x01\xa8\x6a\xd4\xb2\x3f\x78\x41\x07\x02\x75\xff\xec\xa3\x69\xd0\x90\xdf\x25\xb4\xfb\x8e\x77\xe7\x13\x5c\xe6\x4c\xef\x33\x4a\x3b\x94\xb9\x55\x43\x02\x57\xf5\x2f\xca\x3c\x2a\xb7\x5b\xaa\xdc\xe2\xd5\x54\x00\xa2\xad\xa2\x84\xb3\xdd\x3d\xce\x78\xbc\x18\xba\xce\x8c\x9b\x06\x24\xca\x5d\x0e\xe5\xd8\xdf\x72\xbd\xe2\xf2\x73\xe4\x86\x9e\x35\x98\xf8\x4f\xbc\x65\xcd\x5b\xa3\xf4\xd6\xbb\x60\x7f\x04\x61\x8e\xf8\x0d\x95\x3d\x0d\xe4\x46\x4c\x33\x01\xee\xf4\xcd\x07\xd5\x63\xf7\x93\x40\xb8\x54\x5c\x84\xaf\x14\x17\xa1\x14\x29\x2b\xeb\x0e\x53\x82\x2d\xa3\x53\xd7\x2e\x0b\x98\x04\xc2\xed\xa2\xf6\xc1\x2f\xcb\xb6\xd1\x39\x4d\x4a\x24\x50\x2f\xe7\xe0\xfd\x77\x7c\xa0\x9a\x15\xaf\x05\xc2\x82\x10\xda\xba\xdd\x54\x0a\x55\x9d\x46\x1c\x54\xfd\x0b\xee\x19\x80\xdb\x69\x4e\x33\xc1\x6e\xcc\xd9\x99\x80\xdd\x4f\xc5\xb9\x30\xff\x3b\xdf\x11\x25\x87\xd2\x0f\xec\xb9\xd7\xee\x29\xf7\x22\x9d\xfe\x73\x7b\x75\x55\xa3\x20\xa6\x3a\xcc\xa9\x7c\xbb\xba\xaa\xff\x1c\xa0\x1d\x44\xf0\x18\x8f\xc3\x30\xfa\xc2\x8b\x49\x26\x17\x5d\x57\x75\xb8\xe3\xfb\x0b\xee\xed\x23\x43\x8f\xbd\x92\x4b\x56\xad\x55\xb4\xa0\x43\xdc\x69\x2f\x74\x10\x79\xcd\x23\x81\x54\xa8\x1d\x1d\x63\xb8\xd5\x06\x53\x9c\xfc\x52\x5b\x91\x96\x6e\x34\x58\xea\x82\x1d\x2b\xcf\x2e\xad\x35\x29\x9b\x96\xb3\xf1\x3c\x66\x49\x00\x31\xb9\x5f\xca\x4e\xa5\x79\xfe\x49\xbd\xea\xa9\x3e\x01\x74\xac\x90\xe2\x4a\x9a\x6f\x31\x89\x2a\x6b\x95\x2a\xdc\xc5\xff\x75\x8f\x1b\x41\x1d\x1d\xe9\x43\xee\x44\xaa\x59\x39\x0f\xc3\xfe\x6b\x0e\x46\x4f\x26\x0c\x2d\x30\xbb\x4c\x00\xda\xc3\x64\xfc\xe7\x5c\x6b\x06\xf8\x07\xf9\x9a\x0a\xbd\x54\xf5\xe7\xb7\xcf\x6d\x54\x83\x16\xda\x7d\x4a\xf6\xc8\xe1\x38\x06\x08\x3f\x6c\x5d\x31\x6c\xf3\xf6\xca\x30\xa4\x51\xa9\x39\x9c\x3f\x70\xa2\xad\x80\xbf\xe4\xf8\xef\x1c\xff\xc2\x3b\x81\xda\x55\x1c\x19\xdf\x60\x98\x12\x13\x0b\xdb\x0c\x3a\xc8\xab\xf4\xfa\x3a\x5d\x14\x34\x90\x54\xea\x76\x0b\x09\x5f\x54\x7c\x03\xef\xbb\xc8\xd1\xe5\xfe\x91\x7b\xda\xa3\x5f\x72\xc3\xe8\x70\x42\x03\xfd\xc7\x7f\xfb\xdf\x03\xd4\x03\x50\xed\x44\x9c\x11\xf8\xbe\xdb\x27\xf8\x18\xa0\x39\x42\x78\xd4\x27\x2e\xfc\xf7\xc2\x6e\x87\x61\xf4\x25\x27\xc2\x8d\x17\x7e\x41\xc6\xa0\xb8\xe5\xe4\xba\x3c\x09\xc3\xbe\x1a\xf5\x53\x84\x76\x6a\x83\x7c\xc9\xa7\xdd\xce\x25\x4e\xc2\xbf\xff\x0f\x1d\x6a\x2f\xd0\xe6\xc6\xc9\x11\x2b\xc1\xed\xfa\xa2\xe0\xd9\xfb\xc9\x91\x8e\x3e\x3e\xde\x7c\x9c\x1c\xe9\x80\xe6\x3a\x0a\xdf\x60\xbc\xf9\x18\x38\x51\x85\xef\x8b\xba\x14\x78\x2c\xa9\xbf\x70\x2f\x50\xfb\xdf\x8d\x41\xf7\xd1\xdf\xb9\x36\x6a\x82\xa9\xbb\x77\xb6\x9e\xfd\xdf\xff\xd7\xb3\x00\xc9\x4d\xf3\x1d\x87\x10\x10\x63\x24\x77\xd9\xe7\xbc\x01\x8f\x1a\xcf\x21\x22\xfa\xf7\xc0\xc7\x51\xc1\xa0\xb7\x5b\x79\x20\x96\x82\x90\x6a\x58\x39\x31\xe1\xf5\x86\x28\x55\x3d\x63\x7c\x72\x7f\x3d\xb6\x87\xa4\x54\x55\x0c\x74\x55\x17\xa7\x4a\x3a\xca\xf1\xd7\xf2\xf0\xb7\xb6\x18\xe4\xb4\x4f\x82\xab\xf2\xaa\x5c\x18\x23\x86\xe3\xab\xf2\xd8\x08\x02\xa6\x2e\x43\xc7\xd7\x67\x05\xee\xa2\xe5\x2c\x8a\x0b\x52\x4e\x5a\xe5\xbf\x96\x13\x53\xca\x0b\x0c\x78\xbe\x0c\x9c\x00\xf9\x3c\x5f\x6e\xd5\x6f\x84\x0e\x55\x45\x8d\xee\x1d\x1b\x8c\xd1\x94\x0d\xc6\x09\x83\x90\x0f\x4e\x95\x55\x20\x2b\xec\x93\x74\x1a\x69\xd9\x06\x77\xdc\xc7\x22\x2c\x62\x92\xc6\x63\x94\xd8\xaf\xf2\xe6\x62\xf1\xd8\x51\x06\x3e\xe8\x5f\xc3\x8e\xbf\xba\x2a\xa7\x5b\x39\x0b\x3b\xfc\x27\x4e\x3e\xb0\x32\xe7\x1f\x86\xae\xeb\xa4\x69\x97\x25\xd7\x56\xe1\xb1\xf8\xfa\xc4\xe7\xf0\xed\x5d\x1a\xfd\xf1\xce\xef\x8b\xac\xcc\x2a\xd2\x7e\x28\x69\x65\xc2\xb5\xb5\xf5\xf8\xf8\x8f\x53\xa5\x31\x34\x8f\xfa\x02\x74\xbf\xe0\x56\x36\x38\x2a\xea\x13\x8a\xc2\x70\xd4\x27\x62\x98\xf1\xb5\xfc\xf8\xa2\xcc\xbf\xe3\xac\x14\x75\x14\x40\x6f\xdf\xf2\x17\x65\x1e\x80\x0c\xe7\x6f\x9c\x04\xbc\xcc\xf8\xe6\x36\x60\x65\xf4\x13\x6f\x61\x91\xbc\x01\x7e\xe2\x9d\x23\xa4\xb3\xe2\x40\xf5\x60\x12\x20\x1c\x98\x51\xb5\x58\xee\x4f\x7c\xa8\x32\x22\xfc\x0f\xde\x86\x89\xff\x2b\xc7\xff\x26\xf7\xe4\x7b\x7a\x2b\x41\x6e\x4d\xee\x4e\x93\xe0\x45\x09\xb8\xcf\xd3\x24\xf8\x3c\xcd\xde\xd7\x9b\x34\xa3\x01\x3e\x4f\x82\xb7\xe9\x22\xc0\xe3\x36\xc3\xf8\x49\x12\xbc\x59\xb1\xa5\x08\xf0\xf8\x2c\x09\x9e\x8b\xaa\x08\xf0\xf8\x69\x12\x3c\x2b\x64\xd2\x79\x12\x7c\x97\x36\x35\x0d\xf0\xc9\x28\x09\x9e\xa7\x9b\xfa\x15\xcf\xde\x07\xf8\xe4\x2c\x09\x5e\xd4\x59\x80\x4f\x4f\x92\xe0\x8d\xaa\xfd\xf4\x54\x66\xbe\xa6\x3f\x6c\x02\x7c\xfa\x48\xfd\xfe\x82\x7f\x28\x03\x7c\xfa\x58\xb6\x97\x07\xf8\xf4\x49\x12\x7c\xc9\xd7\x32\xf3\x59\x12\xbc\xa2\xb2\xd9\xd3\xa7\x49\x00\x45\xce\x93\xe0\x7b\x79\xd4\x02\xfc\x68\x94\x04\xaa\xe4\x23\x59\x4f\xc5\x4a\xf1\x26\xab\xe4\xeb\xe3\x24\xf8\x0a\x6c\x8a\x02\xfc\xe8\x49\x12\x7c\xa1\x7c\xbe\xe3\xc7\xe7\x49\x30\x09\xf0\x93\x71\x12\x90\x00\x9f\x8f\x93\xe0\x1b\x9e\x07\xf8\xfc\xc4\xfc\x38\xd5\x3f\xc6\xa3\x27\x49\xf0\x67\xf9\xff\x0c\xb2\x8e\x47\xe7\x49\x30\x08\xf0\x78\x3c\x4a\x82\xa1\xfc\x3f\x4e\x82\xe3\x00\x8f\xe5\x00\x4d\xed\xe3\xb3\x53\x95\xe9\xe9\x13\x68\x66\xfc\x54\x17\x7e\xfa\x34\x09\xb0\xfc\xaf\x2b\x39\xd7\x95\x9c\xeb\x4a\x64\xfb\xff\x5b\x80\x4f\xe4\x34\xce\x02\x7c\x22\xe7\xf0\xea\x4a\xfe\x18\x27\xc1\x5c\xfe\x3f\x49\x82\xff\x5f\x80\x9f\x9c\x9e\xc8\x79\x94\xb3\x20\x7f\x9e\x9a\xd1\xcb\x97\x47\x66\x9e\xe4\xcb\x63\x3b\x45\x4f\x4e\x4f\xce\x4e\xda\x2e\xca\xd7\x53\x33\xb7\xf2\xc5\xcc\xb8\xfc\xfd\xa4\x5d\x17\xf9\x7a\xe6\x2e\xcd\x93\xd3\xd3\xd1\x89\x9d\x54\x07\x01\xa1\xa9\x77\xb4\x0b\x7a\x43\x8b\xcf\x4e\xa6\x74\x28\x78\xa2\xec\x49\x1d\x39\xf3\x7d\x79\x41\x17\x4e\x16\x71\xe4\xbe\x69\x2b\x34\x00\xbd\xf7\x56\x45\x90\xa6\x91\x98\x8d\xe6\x28\x71\xa4\xa7\xe5\xfd\xd9\x45\x1a\x81\x02\x27\x4a\x3c\xab\x63\x47\xf2\x9a\xba\x28\xd9\x0b\xa5\xe3\x94\x01\x3d\x40\x7e\x2d\x25\x82\x58\xf6\xc1\x07\xb1\x20\xcf\x58\x54\x22\x13\x6c\xe5\x7b\xf9\x82\x39\x61\x53\xa6\x90\x44\x35\x9c\x32\x8d\x4a\x94\x54\xf0\x1c\x99\x6e\xac\x24\xe4\xe5\x0e\xd1\xcb\xbd\x46\x55\x17\x74\xfc\x93\xb2\xed\x43\xa5\x93\x74\x63\xca\x5d\xca\x76\x3b\x22\xa4\x6d\xd2\xf7\x71\x0f\xce\x38\x4a\x1d\x15\x43\x8b\x35\xaf\xde\x1c\x23\x09\xdc\x55\x03\xad\x89\x8f\x18\x66\xab\x0b\xc2\xd5\x0f\xa7\xa7\xea\x3b\x4e\xa7\xa3\x84\x3b\xc0\xbc\x55\x51\x48\x3b\x0a\x33\xb6\x2f\x76\xd6\x41\xbb\xbc\xea\x93\x32\x0c\xc5\x85\x53\xb4\xd6\xc3\xfe\x2b\xf7\xb5\x14\xaa\xdf\x0a\x5a\x01\xce\xa9\xc1\xaf\x83\x08\x43\xf0\xe2\xd0\x4a\x1d\xdb\x8f\x84\x08\xe5\xe3\x81\x10\xe1\xe0\x14\x95\x15\xbf\xca\xe6\x99\xea\x2b\x06\xad\x55\x35\x85\x53\x5d\xbe\x0f\x6e\x22\xc2\x30\xfa\x2b\x07\xbe\x02\x4a\x0e\x7c\x28\x11\xae\x50\xaf\x22\xe5\xee\xc0\xdc\x34\xa9\xef\xed\xba\xb4\x36\xfc\x71\x25\x29\x3f\x30\x3e\xd2\x24\xdd\xe5\x28\x0c\xdf\x72\x6d\xa4\x61\xee\x63\x81\xd0\x21\xec\xbb\x48\xbb\x74\xba\xda\xe6\xae\x03\x9d\xa3\xac\xcd\xe4\x88\xab\xeb\x54\xf9\x74\x4c\x09\x9b\xf1\x39\xae\x89\xee\x63\x6a\xb7\xec\xa0\x4a\x64\x19\x1d\xa0\xaa\xbe\x4c\xb5\x75\x78\x7d\x91\xb6\x51\xaf\x8e\xc0\xbd\x42\x4d\x48\xaa\xfd\x6c\xc0\x4f\xe7\xb3\x6c\xa6\x46\x84\xf0\x69\x9d\x54\x97\x23\x42\x22\x68\x31\x26\xd5\x1c\xd9\xa6\x64\x09\xed\x7a\x0f\xfa\xee\xe4\xf1\xf4\x8d\x6b\x02\x55\xb4\x7d\x84\x4e\xcb\xd2\x78\x30\x96\x0b\xa3\xdf\x41\x7f\x56\x26\xb8\xc1\xff\xf6\xe6\x4a\x4e\xbe\x8d\x61\x37\x61\x07\x27\x9e\x21\x34\x41\x2c\xb6\x5e\x96\x8e\xd8\xc5\x68\xbb\x65\x97\x1e\xd4\x98\x82\x52\x32\xdb\xb9\xde\xdf\x5a\xda\x7b\x34\xa1\x17\xe3\xd1\x84\xc6\x31\xfa\x37\x3e\xa3\xf1\xa3\xa7\x73\x02\x3f\xce\x9f\xcc\x89\x52\xb6\x88\xb4\xc6\x3e\x25\x4f\x1e\x4f\xe8\x05\x39\x6f\xb3\x9b\x2c\x30\xa6\xe7\x9a\x79\xd6\xe6\x1f\xcb\xec\xe3\x93\xb6\xf6\xf1\x78\xac\xab\x07\x98\x3f\x27\xc1\xcb\x20\xa6\x3b\x14\x29\x00\xb5\x4c\xc9\x9e\x53\x0d\x90\x9b\xdd\x2b\xa7\x1c\x9d\xa9\x97\xa7\x69\x36\x3f\xc6\x82\x1c\xcf\x6a\xf1\xe1\xf5\xfc\x18\x57\xe4\x78\xf6\xea\xfb\x6a\x7e\x8c\x4b\xf9\x6b\x31\x2e\xe7\xc7\x98\x91\xe3\x99\xfc\xe1\x84\x0d\xf7\xa2\x37\xc0\xc2\x99\xd0\x38\x70\x38\xb5\x23\x00\xc1\x49\xb5\xeb\x0a\x78\x53\xad\x74\xae\xe8\xd1\xd4\xf1\x85\x65\x75\x7b\x71\x43\x8c\x6a\x35\x2e\x24\x5e\x9c\x91\xd1\x24\xbb\x68\x26\x71\x9c\xa1\x42\xeb\x12\x90\xa8\x26\xa9\xcb\x7a\xcc\x10\xba\x20\x27\x8f\xce\xa6\xc1\xc2\xfc\x89\x5a\x7c\xa8\x17\xde\x5f\x5d\xcb\xa1\xbe\xfe\xec\xb3\xcf\x5e\xc3\x1f\x7e\x8d\x5f\x8f\xed\x9f\x4a\x7b\xfd\xea\xde\xbf\x4f\xf9\xae\x1b\x5a\xdc\xfb\x87\x65\xf3\xd0\xbe\xaa\xef\xb3\xcf\xc6\x63\xf8\x39\x7e\xf5\x50\xf5\x0f\x34\xab\xbe\x07\x66\x87\xd7\x28\x19\x3f\x3a\x79\x74\x41\x6a\x79\xb4\xc9\xf8\xf1\xc9\xa3\x69\xf0\x7d\x90\x8c\x1f\x9f\x3e\xb1\x89\x67\x67\xa7\xd3\xa0\x72\xfe\x70\xf5\xfa\xf5\x1a\xfe\xaa\x3f\xf2\xb7\xf6\xfe\x74\x62\x69\xff\x3e\x2b\x4b\x99\xe9\x0f\x55\xfd\x9f\xeb\x0a\xfc\xc1\xc8\xda\x09\x1a\xc8\xa9\x40\xc9\xf8\xec\xcc\xce\xd2\xc9\xc9\xc9\x68\x1a\x54\x41\xf2\x74\x7c\x7e\x62\x12\x9f\x9e\x8c\x4e\xa7\xc1\x87\x20\x79\x7a\x32\x7a\x44\x48\x3d\x0d\x16\x41\x12\xbc\x0a\x50\x2f\x23\x6d\x38\xcb\x25\x09\x5e\x05\x76\x87\xde\x05\xeb\x80\x90\xe8\x86\x14\xb3\x6c\x8e\xa6\xf2\x49\x96\xc9\x92\xdc\xec\xdc\x32\x79\xa7\xcc\xd8\x29\x13\x86\x81\x24\xdd\x72\x55\x36\x28\x83\xa4\x52\xc7\xe5\x46\xc5\x60\xbc\xc1\xf0\x1d\x42\x28\x42\x8e\xef\x21\xb0\x3e\xaf\xa2\x8c\x8c\xf1\x92\x14\xb3\xd1\x5c\x56\x3d\x18\xeb\xca\x63\xbf\x72\xd9\xd6\x52\xff\x2f\x66\x59\x3c\x9e\xeb\x96\xc6\x81\x44\x60\xfb\xe4\x66\xbb\x5d\xf6\xf5\xa7\xed\x36\x18\x07\x7d\xc8\x5f\xca\xff\xdb\xad\x6a\x74\x89\xb0\x1c\x93\x6a\xb5\x3d\x9f\xf2\x74\x07\xd8\x69\x0f\xa9\xaa\x5f\x07\x96\xd3\x1e\x7c\x26\x3b\xdf\xc2\xd3\x15\xc9\xe2\xf1\x64\x75\xd1\x84\x21\x7c\x2a\x66\xab\xf9\x24\x8e\x57\x68\x62\x72\x6c\x48\x16\x86\x41\x5f\x75\x77\x20\xfb\xa4\x72\x8f\x75\xee\x29\xf4\xfc\x75\x80\xd7\x24\x9b\xac\x2f\x24\x56\xb1\x46\xc5\x6c\x3d\x27\x9b\x5e\x46\x56\x83\xf1\xce\xf4\x13\x77\xe6\xfd\x06\x42\x55\xcb\x2e\xf6\x82\x57\x72\xce\x75\xad\x37\x7a\x46\x5e\xed\xcd\x3d\xda\x1b\x32\x58\xc9\xab\x50\xeb\x30\x60\x18\x98\x33\x28\xfb\x71\x35\x47\x6a\x5c\xa0\xcc\x44\xa0\xc1\x28\x9b\xaa\x31\xc1\xb6\xc2\xd7\x3a\x75\x75\xd1\x4c\x65\x01\xb5\xd9\x64\x85\x1b\x72\xbb\xdd\x5e\x4f\x65\x8f\x82\xef\x1f\x18\x29\xb8\x4a\xc0\xef\x40\xf3\xd9\xe9\x28\x28\xfe\x7a\xbd\x94\x19\x3f\x90\x0c\x72\xc5\x71\x26\x73\x85\xa1\x9b\x05\x06\x37\x79\xd7\xba\x76\xe6\xd1\x08\x7f\xc0\x99\x6b\xa1\xf6\x82\x64\xf8\x5b\xf2\xce\xb8\x08\xf2\xea\x0a\x5e\x05\xb0\x89\xe6\xaa\x22\xf9\x6d\x4d\x5e\x4c\xd6\x17\x19\xf4\x86\x99\xa6\xd6\xb2\x37\x2f\x2e\xd6\x61\xf8\xce\x28\x24\x7f\x8b\x47\x58\xb5\x38\xc6\x2f\xf0\x5a\xa3\xe2\x6f\xc8\x5a\xb7\xb0\x96\xb5\x00\x7e\x68\xab\x80\x99\x98\x1c\xa8\xe1\x04\xbf\x91\x35\xe0\x17\x64\x0d\xfd\x8e\xe3\x75\xef\x85\x2c\x7d\x4f\x6b\x72\x7c\xfa\xd6\x1a\x13\xf2\xce\xe2\xbc\x61\x18\x2d\x48\x6a\xed\x72\xae\xea\x58\xe9\x0e\x42\x0e\xb8\xf7\x16\x2d\x0f\x19\xbf\x1b\x36\xa5\xb2\x87\x33\x33\x37\xc2\xce\x77\x84\x10\x1e\x43\x44\xcb\x77\xe8\x50\xf5\x57\x75\xac\xac\x7d\x22\x95\x45\xf0\x41\xa7\x7a\x6f\x55\x9a\x81\xfb\xb1\x91\xb5\x9f\xf8\x7d\xef\xf6\x67\x8c\xe1\xab\xe0\xe6\x3f\x42\xb8\xcd\xdf\xf7\x7b\xe6\xb5\xd6\xe6\xc2\x8d\x6c\x0a\xbf\xdb\xed\x5a\x56\xd9\x9b\xe1\x0d\xad\x6a\xc6\x4b\x12\x3c\x1e\x8e\x1f\x0f\x4f\x02\xfc\x66\x87\x10\x76\x99\x32\x01\x07\xf5\x36\xc7\x15\xfd\xc7\x0d\xaf\x44\x1d\x86\x7b\x5f\xd6\x3c\x6f\x0a\x3a\xa5\x51\x45\x7f\x69\x58\x45\xa3\x60\x38\x3c\x1e\x0e\x8f\x0b\xb6\x38\x6e\x95\x89\x03\x84\x92\x03\x0c\x92\x9c\x2e\x81\xfe\x51\xff\x87\xe9\x3a\x9f\xaa\x9f\xd1\xec\x70\x35\x73\x4c\x51\x42\xa3\x96\xef\x8c\x76\x7e\xec\x8d\xa0\xa9\xe9\x51\x2d\x2a\x96\x89\x40\x33\x2d\x1d\x8e\xf6\xa0\x60\xa5\xd0\x11\x9d\xeb\xa0\xc5\x97\x2a\xad\xf1\x6b\xc5\x3a\xe0\x8f\xcc\xbe\xf9\x92\x40\x57\xa7\x38\x12\x4a\x93\x55\xe1\xf7\xad\x53\xb4\x03\xc2\xb6\x4e\xc8\x69\xc5\xe7\x6e\x49\xdf\x48\x68\x32\xc5\x15\x2e\x59\x0a\x9d\x2f\x5b\x6e\x3f\x0e\x40\xcb\x17\xb4\x7a\x31\x43\xbd\x52\xcb\x5b\x05\xdf\xb8\xa4\xa7\x18\x66\xc0\x28\xfd\x69\x50\x7a\xac\xe8\xc1\x63\x14\x07\x9b\x8f\x01\x36\xe5\x80\x03\x6b\x72\xff\x23\x7e\x0c\x5f\x1d\x59\x9e\x15\xb4\xec\x4d\xa4\xe0\xbc\x10\x6c\x23\xab\x72\x45\x9d\xd5\x30\x2b\x78\x49\x81\x29\xdc\x1f\x21\x84\x7d\xc1\x83\x9b\xb5\x04\x87\x22\xe5\x7d\x63\xc3\x72\x5a\xb4\x17\x2c\xd3\x5d\xbe\x49\x33\x26\x6e\xc1\x51\x95\x97\x42\xc6\x08\x97\x3b\xb9\x22\xce\xbc\xa6\x1a\xe3\x16\x3d\x35\x89\x4c\xb7\xc0\x1b\x11\xe0\x14\x02\xda\x47\x91\x68\x7d\x07\xa8\xc5\xb7\x4e\x1f\x3b\x4d\x2a\xe3\xf5\x4e\xb3\x23\xd7\xde\xc0\x25\x47\x64\xee\x1d\xc2\x4f\x46\x10\x25\x53\xf9\x21\xd6\x4e\xcb\x6b\x2a\xbe\x2a\x05\xad\x6e\xd2\xc2\x2b\xc2\x96\x11\x47\x2d\x19\xc3\x26\x13\x4a\x3c\xb1\x2b\x18\xac\x84\xe1\x78\x4c\x08\x75\x65\x96\x32\x9b\x92\x59\x52\xe2\x0b\x7a\x4c\xa8\x64\x65\x49\x7a\x97\x46\xae\x27\x27\xeb\xb4\xf5\x08\x74\xbc\x6d\x9f\x6a\xd9\xf1\x47\x23\x08\x93\xc5\xcb\xee\xac\x39\x1c\x1b\x8f\xd0\x50\xf6\xac\xd6\x71\x81\x36\x3e\xb7\xd4\x86\x9a\x22\xc7\xb5\xc0\x2a\xad\xff\x02\x6e\x69\x4d\x68\x28\x5e\x82\xcf\xcb\x6f\x6f\xa8\xa3\x59\x29\x3a\x71\x7d\x5b\x9b\x39\x63\x8e\x25\x1c\x73\x2c\x18\xe7\xf1\xd5\xe2\xd0\xa1\x1f\x68\xc5\xcc\xca\x09\xfa\x6d\xa6\xa7\xb5\x8e\xac\xee\x13\x36\x60\x4e\x22\x06\xc7\x25\x66\x5a\x5e\x71\x7c\x82\x53\x02\x9e\xc3\x36\x31\x1b\x2e\xb8\x10\x7c\x2d\x13\x1b\x10\x18\x59\x27\x9c\x11\x1d\x66\x9c\x57\x79\x2d\x89\xc9\xe8\x4e\x56\x91\x70\x2c\xf8\x26\x49\x77\x38\x50\x27\x2f\x40\xc8\x23\xa6\x5a\xfe\x8b\xc6\x82\x96\xa4\x99\x65\xf3\xe1\xbb\x77\x69\x59\x72\x01\x96\x73\xbd\x65\x18\x6a\x7a\x6b\x89\x76\x85\xb5\xbf\xbf\xcf\x55\xda\xe1\x29\xc3\x7b\xaa\x06\x86\x07\xff\xb2\x4a\xaf\x15\x33\x5d\x3b\xf7\xa7\x07\xbc\xfa\xd3\x19\x9f\xf7\x7c\xfd\x8b\x5a\xd2\x8d\x3b\x08\xf2\x88\x25\x88\x06\x05\x61\xa4\xc3\x7a\xc2\x4a\x7f\x48\x99\x60\xe5\xf5\x4b\x5e\x91\x91\x17\xc8\xb9\x15\xc8\x42\x7c\xe6\xa1\x5c\xbc\x5e\xd5\x6e\x15\xb0\x86\x93\x7b\x55\xbd\x46\xa2\x1b\x84\xd3\x98\x55\x7b\x81\xa8\x74\xda\xac\x9c\x1b\xff\xb2\xbd\x4e\x3e\xb7\x1b\x29\xd8\x79\x81\x17\x28\x35\xc4\x07\x81\x38\xae\x49\x6a\x2e\xd7\xf4\x21\x70\xa9\xee\x9d\x41\x10\x57\x98\x49\xb0\x23\xe9\xe3\x07\x94\x60\xfc\x56\x10\xfa\x84\xaa\xd7\x8d\x84\xc7\x05\x0d\x40\x66\x09\x4e\x03\x79\x19\xd5\xe6\xf4\xde\xd0\xaa\xe3\x58\x5a\x69\x86\xd4\xca\x89\xb2\xc3\x1c\x74\x4d\x7d\x6a\x7a\x43\x2b\x26\x6e\x7b\x4a\x37\x3d\xa0\xea\x42\xd7\xfe\x28\x1f\xbe\xdf\xac\x04\xf2\xa1\xbe\xd3\xba\x4e\xaf\xe9\x00\x8c\xe5\x3e\x49\x2b\x88\x0e\x75\x19\xe4\xc9\x2f\x1b\xd7\x19\x69\xbb\x7b\x0c\x1c\xc2\x25\xa9\xcc\xef\xed\xb6\xc2\xfa\xa4\x3f\xb3\xa7\xa9\x96\xc7\xe2\x5a\xde\x93\xc5\x06\x3c\xc2\x7e\xc7\x6b\x89\x16\x22\x1c\xc8\x7a\x02\xd4\x93\xcb\x56\x0d\xd3\xfa\xb6\xcc\xb6\x5b\xa6\x7e\x4c\xdd\x5b\xdf\x61\x74\x39\x3d\xc0\x1c\xbc\x2a\xb4\x7b\xde\xbf\x9f\x38\x19\x8c\x31\xc8\x8b\x23\x1b\xe7\x38\x45\x3b\x21\xd7\xce\x49\xc0\x55\x04\xdd\x03\x5b\xd6\xc8\x73\x3e\x20\x9b\xdd\xab\x00\xbb\x2d\x2a\x0b\x94\x32\x0c\x2b\xd7\xc5\x20\x05\x77\x92\x25\xc2\x05\xa0\x2c\x12\xe8\x97\xf2\x8c\xc2\xc1\x2d\x51\x22\x93\x99\xdf\xaa\xfc\xee\x5a\xc9\x15\x10\xf5\xfc\x8e\x1b\xf6\x98\xb6\xea\x03\x08\xe8\xcc\x40\x41\x1a\xbb\x0e\x19\x39\x2c\x64\x05\xbf\xc4\x7b\xc6\x20\x96\xb5\x6d\xbc\x39\x1a\x43\xe9\x49\x24\x66\x6c\x0e\x36\x0f\xcc\xb5\x2c\x2d\x1d\x6f\xc1\x51\x25\x89\xe0\xd1\x64\x79\x91\xb5\x75\x2e\x55\x9d\x39\xd8\xe1\xcb\xfb\x22\x77\x49\x5d\xb8\x9e\x36\xa4\x71\x41\xce\x6f\x83\xc7\x35\x19\x4d\xd6\x17\x0e\xd0\x59\x1b\xd2\x35\x9f\xad\xe7\xf8\x96\xdc\xb4\xe7\xe8\x76\xbb\x8d\x6e\xed\x39\xc2\x8c\xdc\xe2\x95\x79\x25\x24\x2a\xc9\x0a\x4d\xcb\x84\xe1\x62\xb8\xe4\xd5\x3a\x75\x76\xa8\xa4\x36\xc8\x7e\x72\x74\x83\x10\xf6\x3a\xbc\xe9\x80\x63\x99\xe1\x06\xf8\xe6\x8d\x01\x7b\xda\xab\x97\xf1\xb2\x1d\xdd\x28\x0e\xae\xcc\x85\xef\xec\x71\x4d\x0e\x82\x9a\x41\x10\xdf\x62\xf7\x22\x4a\x6e\x76\x08\xed\x1a\x1f\x4c\xd7\x54\xa8\x97\x6f\x00\x3a\x45\x4b\x2c\x70\x1a\x6d\xf0\x0a\xe7\xd6\xf9\x0b\xb6\xdb\x62\xa8\xb1\xc9\x1a\xa1\xdd\xae\x18\xf2\x52\xf9\x13\x7f\xc5\x4a\xb9\x85\xe5\x3d\xd7\x49\x8a\x2a\x9c\x61\x17\x1b\xcf\x3c\xa8\xd5\xde\x1e\x22\x0c\x23\xdf\x84\xcd\xe0\x22\x12\x99\x33\x68\xc9\x3d\x48\x5c\x23\x11\x7e\x99\xcf\x74\x33\x57\xee\x73\x1e\x4b\xac\x6e\x07\x56\xe7\xac\xd4\x0e\xf0\x22\x05\x27\x70\x7f\xec\x1f\x4e\xac\x78\xaa\x29\x38\xb7\xa7\xc3\xaf\x4a\x26\xbb\xc4\xe5\xe6\x84\x68\x41\xd5\x01\x68\x05\x2f\xdf\x96\xcf\xe1\x38\x87\x61\xe5\x9f\xee\x0c\xf0\xe6\xe5\x32\x02\x10\x06\x2e\xfa\x68\x65\x25\xdf\x1e\xbc\xf7\x2b\x6f\x11\x2c\x84\xbd\x39\xf1\xb2\xd9\xe9\xd1\x4e\x2a\xdc\x8f\xc8\xf5\x25\x51\x2b\x18\x6a\x86\xaf\x82\x0c\xd4\x81\xc4\x64\xfa\x63\x7d\xf2\x6a\xf7\xe4\xd5\xb3\xe5\x5c\x99\xb0\x17\xe0\x2f\x42\x1d\x44\xb7\x7e\xb0\x9b\x62\x51\x85\xa3\x15\x29\x91\x03\xac\x5e\xea\x19\x9d\xde\xf9\x50\x3b\x59\xed\x92\x68\x15\x86\xfd\x51\x9f\x90\xd5\x76\x1b\xad\xc0\x7e\x6a\x85\x70\xa1\xa3\x31\xe5\xf7\x4f\x6a\xe9\xcd\xe9\xa8\xef\xe4\x35\xfb\x51\xdf\xa2\xbf\x3d\xd3\xb9\x3f\xbd\x4d\x54\x29\x74\x7f\x05\x8e\xac\xf5\x4e\x81\x00\x33\x35\xcc\xd6\x86\x56\xf2\x24\xbf\x82\x3d\x13\x75\xad\x77\xdb\x19\x09\xc3\x46\xf9\x60\xd5\xd1\x0e\xfe\x0b\x52\xea\x92\xc4\xbe\x66\xb5\xa0\x95\xbe\x7c\xf5\x49\x0a\x7e\xae\x79\x79\x30\x8c\xc2\x6c\xde\x93\xdf\x60\xbb\x6e\xd2\xaa\xa6\xe0\x3e\xd2\x25\xc1\xdb\xe0\x0e\xc3\x82\x67\xbd\xca\x75\xf7\xa2\xee\x76\xa6\x94\xba\xde\x81\x52\xd5\x18\x9b\xd7\x0c\x2c\x3e\xc1\x5d\x99\xc9\x57\xa4\x6e\x36\x78\x33\xb9\x34\x2a\x92\x88\x1d\xda\x81\xea\xac\xdf\x2d\x49\x03\x2a\x8d\x95\xd2\x2a\xac\x1c\x55\xff\x1f\x5c\xc9\xdb\x74\x5d\xdc\xb7\x92\x6a\xda\x64\x8e\x61\xc1\xd3\xbc\x9d\x33\x66\xae\x7f\x15\x09\xe0\xd0\x22\x96\xda\x6b\xca\x70\x6f\xd9\xf6\xbe\x98\xa5\x62\x06\x7f\xdc\xa1\xff\xc5\x2b\x82\x83\xec\xe7\x3a\xf8\x57\xad\x8b\x37\x99\xa0\x51\x96\xae\x73\x08\xac\xe5\xad\x17\x0e\x36\x45\xca\xca\xc0\x5f\x37\x0c\x11\xbd\xd7\x3c\xa7\x3f\x7c\xff\x0a\xb4\x5c\xf5\x6f\x22\x9b\x93\xbf\x8f\x3f\x7b\x7d\xfc\xd9\xeb\xa1\xec\xb0\x46\xf6\xef\x1c\x7d\x13\x8f\xcb\xa5\x0a\xd7\xe0\x65\x9a\x4a\xc4\x83\x96\x19\xa3\x20\xa7\x6e\x05\xef\x92\xea\x6a\xc9\xec\xd9\x5c\xd3\x94\xa5\xab\xc7\xaf\x2b\xda\xb3\x6d\x9d\xf1\x39\x92\x28\xb7\xc2\xf0\x40\xbd\x1f\x04\xee\x86\x5b\xeb\x34\xa1\x48\xb6\x83\x1c\x83\x03\xd6\xac\x23\x42\x06\x03\x89\xae\x44\x68\xb7\x8b\x2a\xcc\x3c\x33\x73\x13\xd2\xce\xeb\xa1\x5e\xe3\x6f\x24\x29\x02\x82\xfc\x54\x22\x02\x4e\x6a\xdb\xb8\xf1\x24\x6c\x0c\x20\xfa\x66\xb5\x99\x0e\x10\x58\xa6\x6b\x6a\x1c\xb6\xef\x8d\xda\x09\xc7\x1d\x99\x68\x73\xd5\xfd\x99\xc0\x37\x87\x56\x00\xd4\xb3\x60\x17\xd5\x84\xff\x8b\xe4\xa2\x5e\x63\x65\x47\xae\xf7\x05\xa8\x68\xa8\xdb\xfc\x3e\x6a\xae\xce\x2a\xb6\x91\x14\x50\x3d\xac\xab\x8c\xa4\x3d\xe5\x68\xc9\x66\xf7\x94\x89\xdf\xa6\xd7\x4a\x95\xd8\x94\x9a\x8d\xe6\xb8\x20\x15\xa0\xe9\x7c\xde\x33\x44\xa9\x3c\xea\xfe\xc5\x27\x87\x79\xbf\x40\xbf\x68\x97\x81\xa2\x62\x46\xe7\x91\xb9\x11\x1b\x97\x59\xab\x7c\x58\x7f\x4e\x97\xbc\xa2\x51\x8d\x1b\x25\x0c\x81\x83\x47\x88\x98\xda\x23\x9a\x22\xcc\x23\x09\x23\xe5\xa1\x01\x9c\x44\x7f\xf9\xb9\x8e\x66\xe9\x1c\x73\x70\xed\x90\x36\x82\xbf\xe2\x69\xee\xaf\xab\x8a\x37\x72\x78\xd5\x2a\xb4\xdd\xfa\x9b\xa4\xf2\x6f\x77\x89\x18\x1b\x8c\x49\xd6\x10\x60\xe1\x22\x51\x90\x04\xe3\xda\xfd\x17\xbd\x23\x5a\x3d\x34\x6b\xca\xb1\x6f\xeb\x2e\xd0\xbe\x6f\xe8\x1f\x4a\xd5\x8d\xfc\x08\xb0\xa3\xa3\x20\x16\xca\x21\x74\xcd\xd6\x9b\x82\x1e\xa9\xa9\xdb\xb9\x7c\x7d\x5b\xbf\x3e\x25\xc7\xd1\x34\x41\xc7\x1a\x9e\x05\x81\x35\xab\x70\xc9\x62\x65\x47\x31\x8d\xe8\x90\x81\x13\x94\xe7\x69\xad\x28\xe5\x80\x05\x08\x53\x49\x5d\x80\xfd\x35\x4a\x68\xab\x4c\x82\x1d\x0b\x8c\x08\x8c\xf4\xc5\x34\x08\x92\xe0\x9f\x01\x02\x2b\x0c\xb0\xc6\x40\x01\xae\x3c\xf9\x01\x95\x68\x4a\x44\x87\x25\xfd\x08\x7e\xa5\xe4\xf1\x45\x61\x28\x20\xa4\xa3\x97\x88\x75\x14\xcf\x6b\xfa\x91\x54\xe0\xb4\xe8\x9a\x7e\x44\x46\x91\xe3\x3d\xf5\xdd\x6e\xed\xfb\x0d\x74\xa0\x50\xbb\x7d\x5a\x09\x83\x85\x0f\x57\xc3\xe3\x6b\xec\xf9\x75\x3f\x44\x99\x57\x71\x8c\x1c\xbf\x81\x61\x08\x3a\x5c\xfb\x95\x38\x1a\x54\x60\x02\xff\x9e\x96\xba\xcf\x79\x2a\x52\x42\x3b\xac\xe4\x7d\x87\x3b\x46\x7f\xab\x1c\x6e\x54\x60\xc6\x16\xab\xd3\x09\xc6\xab\xa5\x69\x69\x44\x9c\x6f\x86\x23\xda\x96\xd7\xf1\x00\xab\xe1\x86\xd7\xb1\x1f\xee\x05\x33\xd5\xc3\x9d\xf2\xfd\xce\xb3\xb4\x30\x7e\xe0\xe5\xef\x21\x2d\x73\x49\x34\x28\x09\xa0\x93\x88\x8c\x00\xc8\x49\x7b\x2b\x2b\x52\xd1\x7b\xac\x13\x30\xf5\xd5\xe4\x7a\x23\xb7\xb0\x62\x37\x70\x25\x16\xe8\xb5\x35\xc8\x9d\xac\x3a\x23\x67\xc0\x29\x80\x3a\xb5\xc9\xb6\xde\x64\x69\x19\x86\x51\x4d\x3a\x69\xda\xae\x66\x98\x35\x55\x05\xe4\x0a\xc8\x2b\x61\xe4\x8a\xe4\xaa\x44\x5c\x6b\x9b\x19\xcc\x77\xad\xf3\x44\x3a\x2b\x15\xfd\x21\xe1\xf6\x68\x52\xb4\xdc\xe8\xc2\xf0\x7d\x33\xd2\xcc\x8a\x39\x5e\x92\xa8\x9f\xc1\x5a\x0e\x6b\x5e\x6c\xb7\x95\xfc\x17\x21\xd4\xce\x53\xa6\x77\xaa\xdc\x80\x4b\x98\x4e\x9d\x5f\xee\xee\xa9\x6e\x87\x38\x69\x89\xfe\x2d\x37\xd7\x34\x02\x29\x4f\x9a\xbd\xdf\x6e\xcd\x2f\x97\xd5\xa3\x4a\x23\xdc\xa9\x06\x0e\x8c\xad\x87\x6f\xc2\x50\x97\xb5\x3f\xdc\x8d\xa1\x8a\x9a\x0f\xe0\x64\x16\x61\x5d\x78\x0d\xf2\xa0\x14\xe4\x7c\x4e\x12\xce\xcc\x5e\xd6\x89\x72\x12\x25\xa5\x56\xea\x5f\xda\xc9\x99\x7e\xd3\x6e\xee\x62\xa1\xdf\x7f\x28\x99\xb0\x45\x73\xda\x2d\x0a\x6e\x6e\x97\x86\x47\x72\x02\x3e\xd8\xf5\xe6\xd5\x4a\x03\x8a\x6c\x3e\x99\xe4\x17\x26\xdb\x24\x8f\x63\xb4\x9c\xe5\x73\x59\x91\xd9\xfd\x0a\x59\x06\x67\x96\xf2\x13\x86\x3e\x27\xba\xef\xb3\x7c\x30\x9e\xef\x1c\x1e\xed\x22\xcd\xde\xff\xb0\x89\x96\xad\xa0\x7a\x10\x2d\x67\xe3\xf9\x54\x3e\x74\x4a\x32\x82\xb9\x51\x15\x8c\xe6\x06\x7d\xd6\x29\x61\xa8\x7f\x40\xe0\xe3\x69\x9b\xcf\xb4\xd9\x2a\x6a\xc2\x52\x47\x4a\xb8\xb7\xdb\xf9\x9a\x6b\x4a\xca\x45\x5a\xff\x2f\xca\x23\x65\x9f\x6e\xb7\xe6\x9e\xb3\x88\x14\xdd\x6e\xfb\xe2\x40\x7a\xc7\x96\xa4\x72\x34\x7b\xca\xfb\x7d\x5e\x94\x48\x81\xce\x83\xce\x55\xfa\x5c\x39\x91\x11\x7e\x88\xc8\x2a\x8e\x77\xbe\x0f\x17\x74\xa0\x78\x18\x56\x83\x81\x03\xa2\x2a\x5f\xdc\x50\x62\x86\x4d\x14\x09\xa5\x45\xbb\xa1\x55\x0d\x6e\xe7\x5a\xbb\xd7\x06\x00\x9b\x49\x06\x70\x50\x4f\x9a\x30\xec\xd7\x93\x86\x34\x30\xa3\x28\x62\xc3\x7a\x43\xb3\x29\xd7\x3f\x70\x03\xff\x90\x24\x7a\x24\x0a\x43\x1a\xf8\x8f\x00\x5e\x34\x0a\x4f\x2c\x48\x3d\x55\xf1\x1c\x74\x2e\x79\xe9\xe8\x38\x28\x91\xc0\xaa\x22\x84\x33\xc8\x06\xa7\x25\xa1\x0a\x7c\x40\x1f\xa2\x02\xf5\xdc\xfe\xca\x0e\x69\x88\xeb\xf7\x95\xdc\x41\x1b\x05\x96\xf5\x25\xba\x7f\xaa\xbe\x0c\xc3\xd1\xdf\x2f\xa3\x42\x06\xb5\xf0\x32\x33\xaf\xb6\x32\x5a\xe6\x09\xd3\xb0\x39\x82\x1f\x08\x6b\x00\x68\xd2\x81\x0b\xc4\x54\x98\xc2\x17\x4e\x46\xf0\xc1\x67\x80\x75\x92\x86\x61\xaa\x36\x6e\x3a\x4b\x5b\xcf\x46\x49\xba\x73\x25\x23\x07\xc3\x49\x7a\x31\x43\x64\xef\xc0\x29\x61\x0b\xc9\xd5\xc9\x46\x1d\xd0\xed\x7c\x8a\xdc\x41\xda\xd0\xd2\x4a\x0c\x6d\x00\xc3\x76\xab\x33\x49\x30\x9b\xf3\x52\x7c\x05\xc9\x6a\x9e\xee\x17\xfa\xed\x59\xf0\xb1\x65\x24\xc0\xbd\x92\x6b\xdc\x6a\xe0\x20\xde\xaf\x1a\x5d\x0e\xc6\x2d\xa2\xf0\x5d\x5a\xd7\x9a\xba\xb0\x10\xcb\xc6\xa1\xac\x89\xb0\x57\x47\x8f\x26\xa0\xe4\x3b\x69\x3b\xa3\xdc\xf2\x5a\x86\x60\x63\x2e\x93\x82\xd4\xda\x29\x6f\xe1\xc3\x44\x58\x38\x2f\xed\xab\xe5\x2b\x56\x2a\xa3\x61\x73\x11\x15\xea\x86\x51\xb7\x9d\xa2\x6c\xb2\x30\xcc\x66\xa3\x39\xba\x4b\x07\x03\x1c\x15\x1a\x93\x2a\x0c\x7a\x15\xc9\x7e\xfa\xa9\x73\x84\x99\x0d\x4c\x9a\xb9\xb6\xa6\x4e\xc4\x85\xdd\x4e\x89\xce\x8d\xb4\xef\x62\x34\x1d\x25\x66\x16\x66\xe9\x7c\x67\x19\xc2\x6f\x00\x21\x3d\x48\x34\xa8\x0c\xfa\x6c\x79\x24\x7c\x6b\x54\x65\x4b\x47\x3a\x6a\xa6\x24\x45\xea\x03\x75\x56\x72\xdb\x89\x88\xe3\x00\xce\x63\x60\x08\xbf\xbb\x1d\x6e\x08\x1f\xae\xa9\x48\xb7\xdb\xbb\x1d\xf0\x63\x2d\x00\xcc\x24\x94\xe2\x72\x1f\x64\x7d\xd2\x84\x21\xef\x82\xab\x0c\xb5\x1e\x8f\x49\x3a\xcb\xe6\x12\x03\xcc\x09\x9f\x65\x73\xbc\x22\xa3\xc9\xaa\x95\x74\xac\xcc\x1a\x6e\x48\x3e\x5b\xcd\x7b\xcb\x56\x13\xa9\x8c\x36\x98\x23\x84\xa3\x8d\xdd\xc0\x1b\xbd\x8a\xc8\x30\x80\x01\xf1\x59\x93\xbb\x16\x9a\x1c\x08\x9b\xac\x40\x84\x1e\x21\xd6\x97\x1b\x78\xa5\xc6\x70\x1e\x9c\x9f\xaa\x0a\xe5\x9b\x11\xda\x4c\x8a\xe9\x6c\x9e\xa8\x5b\x06\xe2\xda\x75\x1a\x69\xa3\x15\xa8\x56\xb4\xdc\xce\xb6\x22\xcc\x65\xaa\x9b\x12\xea\x08\xde\xd7\x9a\xb0\x98\x80\xf9\x65\x63\x26\xef\x7a\xc2\x39\xe3\x80\x88\x39\x70\x8d\x0e\x6d\xe7\x22\xe1\xc0\x07\xec\x16\x42\x4a\xfb\x04\x10\x19\xc5\xb1\xcf\xde\x13\x9d\x62\xdb\x71\x05\xe2\x62\xff\xbe\x50\x81\x58\xe0\xae\xa8\xee\x83\xd0\xa5\x6a\x1a\xc0\x74\xe9\x82\x69\x83\x2c\x11\xb7\x57\x53\x77\x20\x89\x3b\x10\x5d\x4f\x8b\xa6\x49\x18\xbf\xdf\xea\xae\x75\xca\xa6\x51\x14\x16\xa5\xe0\xd2\xa0\x2c\x69\xe5\x47\xe3\xf2\xec\x96\x14\xa4\x55\x7d\xa6\xee\xa4\x99\x4b\xaa\xed\xd7\x6e\x67\x96\xa8\x8e\x52\xdc\xa0\x9d\x04\x13\x8d\xdd\xe6\x37\x10\x18\x09\x35\xdd\x93\x00\x4a\xa5\xeb\xd9\xcd\x9c\x34\xb3\x9b\xd6\x1a\x7b\xfd\x5f\x95\x34\xa7\x43\xa3\x43\xf0\x91\x95\xd7\x1d\xf8\x65\x8e\xca\xa7\xfa\x8e\xf3\xe8\xdc\xd6\x14\xe7\x80\x37\x90\x3d\x3b\x5a\xf0\x9b\x6b\xae\xcb\x30\x64\x97\x83\xf1\x94\xc5\xe6\xa6\x49\x94\x57\x5f\x4e\x84\x26\x71\xa6\xc6\xaa\xb6\x42\x49\x4b\x22\xf1\xa9\x09\x41\x5d\xc5\x51\x39\x75\xe2\x50\x27\x23\x94\x0c\xc6\xbb\x16\xbe\xdc\x0f\x7c\x78\x23\x68\xe5\xe3\x3b\x42\xef\x4c\x70\x50\x6a\xcf\x7f\x49\xab\x07\xe0\x4c\xb5\x57\xa1\x73\xde\x71\x35\x84\x54\xbf\x5e\x49\x3d\xd8\x37\xdd\x80\x97\x06\xba\x30\xb6\x16\xef\x93\x3a\x06\x3a\x09\xed\xcc\xb9\xda\x63\x4c\x72\xb7\x50\x1b\x18\xc7\x49\xec\x15\xf2\x5a\x84\x15\x03\x24\x3c\x1d\x66\x05\xaf\x69\x18\x32\x4d\xea\x99\xc9\x76\x0b\x99\x2a\x1c\x65\x2f\x45\xcc\x1a\xcc\x26\x5a\x12\x5d\xd1\xb4\x8c\x0a\xac\x7f\x63\x26\x69\x53\x9c\x2a\xd1\xc9\x17\xb4\x60\x6b\x26\x68\x55\xcb\xc5\x42\x12\x83\xdb\xf0\x3a\x0c\xfb\xfb\xdf\xad\x4f\x14\x45\x73\xea\xea\x10\x7e\xa0\x53\x12\xa1\x28\xd8\xfa\x8d\xb8\x2d\x24\x85\xe7\xbc\xc5\xc1\x51\x10\xfb\x09\x03\xa8\x2f\xe8\x2d\x95\x27\x7f\x33\x21\xa4\xb0\x76\xd8\x4b\xad\x02\x5d\x93\xd4\x25\xde\x99\xe9\x42\xeb\x49\xb1\x5b\x05\xc2\x4b\x3b\xb4\xbd\x91\x41\xb8\xf1\xfb\xc6\x80\x70\xaa\xde\xf4\x20\xa2\x5a\x62\xe8\xba\xfb\xed\x87\xc4\x7d\x41\xb8\x76\x08\xfd\xf1\xf1\x08\xb7\xeb\xab\x55\xcf\xaa\x7d\xd5\x33\x9c\x93\x6a\x96\xcd\xf5\xca\xc9\x15\xcb\x87\x7c\x43\x4b\xb5\x60\xc8\xac\x8d\x59\x87\xbc\x3b\x0c\x15\xca\x59\x2e\x8d\x2a\xd7\x5d\x99\xdc\xbc\x13\xef\xa0\xe5\xe6\x0a\x54\xa0\x7b\x6a\x7e\x44\x5c\x9d\x17\x1c\x04\x28\x19\x21\x9c\x7b\x6b\x99\x77\xd7\xd2\x4f\x18\xc8\x0e\x04\x60\x50\xbf\x0c\xc3\xe5\x45\x13\x86\x51\x43\x96\x68\xd7\xf4\xe5\x7c\x1c\x5e\xde\x46\x2f\xef\x0a\x9c\xf3\x9b\x95\x55\x87\xd6\xac\xec\x81\xf2\x08\xaf\xec\xbd\xe3\xb3\xb4\x8c\xae\xa1\x33\x0b\xd3\xfd\x13\x9c\x88\xd6\xdd\x8f\x9e\x03\xf3\x23\x3a\x58\x36\xd1\x90\x04\x97\x28\x51\xb8\xfa\x0e\x2f\x8a\xb4\x7c\x2f\xb1\xe6\xb6\x0b\x8e\x6c\xd4\xad\xa4\x3c\xd4\x01\xa0\x46\x6d\x1d\xf2\xdc\xdb\x97\xe8\x60\xf1\xa4\x34\xd0\xcc\xfb\x8c\x82\x2b\x79\x8f\xf9\x4d\x1a\x60\xe2\xd7\x64\xf2\xa8\x5d\xee\xfb\x4f\x3f\xe0\xc2\x5b\x83\xad\x6a\xc6\xe7\x3d\xdd\x48\x0a\xdb\x6c\xaf\xde\xd4\x74\xc9\xdf\x67\x9a\xa9\xb3\x3f\xc7\xa5\xb7\xcf\x24\x1c\x05\xa7\x04\x15\xcb\x9e\xaf\xd2\xaa\x4e\xc4\xd0\x7b\xff\x2d\x84\x05\x3e\x4f\xef\x0c\x76\x02\xaf\x58\x63\x2f\xdd\x99\xdf\x25\x36\x9f\xea\x83\x5a\x8e\x9d\xfc\xfb\x57\xe2\x1e\x0b\xfe\x81\x56\xef\x32\xbe\xde\xf0\x52\x5e\xdc\x0e\xee\xb0\x2f\xbe\xfc\xa4\x52\x69\x9e\xf3\x52\x49\x10\x15\xc9\xf2\x07\x50\x99\xdf\xd1\x2b\xfc\x3b\x3b\xf3\x7b\x11\x22\x87\x5e\x0b\x56\x62\x5d\x28\x67\xe7\x8b\xb4\xaa\x83\x7b\xc8\xb7\x2e\x0a\x15\xb9\xdc\x94\x40\xd0\x8f\xe2\x58\x56\x14\x20\x7c\x27\x77\x69\x12\xdc\xdd\x05\x18\x0e\x42\x12\xec\x76\x81\xd9\x11\x4e\x19\xa7\x4d\x84\x3b\xb0\x35\xe9\x8f\x76\xc8\x55\x31\xf9\xe6\xab\x6f\x5e\x44\xaa\x99\x8f\x83\xb6\xe4\x40\xd0\xf5\xa6\x48\x05\x0d\x70\x77\x1c\xff\x72\xd1\xf7\xfd\x1b\x67\x38\xd4\x4b\xa2\x6c\xe2\xf5\x3f\xe5\xf0\xfd\x60\x3e\x9a\x33\x71\x0c\x77\xc7\xa2\x4a\xb3\xf7\x54\xd4\x7f\x0c\x33\xde\xdb\x35\x0f\xf6\x04\x3f\xd8\x81\x3f\x62\x86\x42\x87\xef\xe9\xed\x37\xe9\x66\x58\x37\x8b\x82\xad\x29\xb9\x5b\xa6\x45\x21\x56\x15\x6f\xae\x57\x49\xa0\x9d\xf5\x07\x3b\x0c\xce\xa8\xf8\x7a\x9d\x96\x79\x0d\x1e\x67\xbe\xe3\x35\x66\x6d\x79\x9d\x93\xb4\x29\xeb\x34\xd3\x31\x00\xc0\x09\x42\xf0\x7c\x9d\x0f\x02\xe5\x1b\x64\x10\xf4\x7c\xb5\x66\x74\x67\xc2\xa3\x5b\xe7\x2e\xf5\xe7\xb7\x7e\x24\x7c\x23\xb2\x19\x6a\xc7\x43\x4a\xc2\xb2\xdd\x8a\x61\xce\x33\x5d\x5a\xde\xe8\x74\xbd\x11\xb7\x11\xf2\x35\x60\x19\xe0\x95\xec\x62\x04\xc1\xd5\x20\x5e\xa9\xad\xcf\x84\xda\x2e\xb5\x67\x83\xc1\x18\x19\xb7\x38\x20\x02\x85\x3b\x45\xbb\x5a\x80\x7b\xe7\x72\x14\x86\xb2\x8a\x4b\xc2\x3b\x92\xfe\xfd\xca\xe2\xb1\x17\xea\x21\xc5\x35\x31\x2c\x83\x06\xfa\x21\x31\x1d\xe0\xd8\x98\xba\x00\xdf\x69\xfa\xa4\x98\x34\x31\x61\x38\x33\xac\x8c\xa5\x8a\x20\x04\xb6\xe8\x17\xa3\x69\x33\x18\x27\x0d\xc2\x39\x09\xde\x29\x3b\x4b\xea\x78\x80\x8e\x96\x08\xec\x4f\x03\x1e\x80\x88\xed\x83\xb2\x51\x5c\xfa\xee\x9e\xc1\x9c\x33\xca\x49\xf0\x63\x80\x0c\xab\x86\x90\x1a\x05\x3c\xe8\xcb\xec\x51\x4d\x02\x56\x06\x38\x25\x79\xeb\xf0\x30\x00\xd9\x7c\x0d\x5a\x83\xb9\xa2\x9c\x64\xed\x69\x18\x06\x3f\xaa\x56\x60\x96\x9b\xc1\x00\x43\x82\xfc\xa0\x9b\x67\x97\x23\x74\x97\x92\xe0\x43\x60\xd9\x57\x9a\x75\x65\x0d\x7b\x8c\x73\x89\x06\xed\x22\x58\x58\xcc\x54\xbc\xa5\x0a\x25\xd5\xc5\x68\xaa\xdc\x2d\x44\x28\x61\x43\xc1\x95\xa4\xbd\x9a\x89\x59\xf0\xac\x10\x03\x70\x70\x32\x27\xc1\x35\x7f\xd3\x2c\x3e\xf0\x2a\xd7\x09\xee\x11\x48\x23\x8a\x07\x63\xb4\xc3\xb6\x94\xf2\x84\xe2\x16\x33\x29\xdd\x72\xb2\x18\x0b\xc3\x48\xcc\x60\x2f\xb7\xcd\x59\xde\xdf\x9b\x75\xcb\xed\xaa\x61\xcf\xcb\xcd\x2e\x5b\x39\xb0\xf1\x9b\xc8\xc4\x7a\x11\x43\x56\x7f\x4f\xd3\xfc\xdb\xb2\xb8\x6d\x49\x17\xcd\xd4\x14\x12\x67\x50\x31\xef\xa2\xc3\x5a\x08\x62\x58\xb0\xba\xf5\x8a\x54\x47\xc8\x4a\x0e\x95\x3e\xcb\x60\x8c\x55\x8c\x68\x3a\x49\xcd\x6e\xaa\x0f\x14\x9b\xa5\x2a\xb8\x95\xf2\xbc\xa0\x02\x2d\x5f\x10\x8e\x4c\x04\xab\x52\xa7\xc5\x51\x35\x1d\x25\x63\x84\x47\xa8\x27\x8c\x78\x55\x39\x42\x02\x4f\x53\x8d\xf6\x10\x16\x2b\xa5\x07\x39\x3d\x01\xb2\xf8\x32\x1c\xa7\x46\x6b\x41\xe9\x18\xd2\xd8\x84\x4d\x93\xcd\x27\x0d\x56\xf1\xb7\x92\x66\x87\x30\x27\xba\xd1\xf1\x6e\x07\x4a\x0a\x4e\x8f\x19\x5c\x11\x8a\xdc\x7e\xae\x80\x93\xdc\x9f\xb2\x95\x67\x8d\xe0\x81\xa7\x11\xee\xb9\xb5\x57\xf1\x96\x25\x60\x02\xc7\x27\x9d\x53\x3e\x61\x9d\xe3\x94\xba\xee\xb0\xd0\x04\x0d\x06\x0c\x8e\xf4\x84\xdb\x70\x6e\xf7\x95\xe0\x32\x7f\x1c\x73\x8d\x32\x2b\x25\x31\xbb\xcf\x19\x68\x86\xd9\x57\x8e\xb0\xdc\x81\x49\xaa\x51\x7c\x49\x98\xee\x60\x87\xd7\x71\xf0\xc3\x46\x6e\x37\x15\x64\x43\xf6\x16\xde\xdd\x4d\x6a\x40\xfa\x35\x15\x6f\x20\xd7\x57\xe5\x92\x6b\xb7\x66\x74\x58\xf3\x35\x15\x2b\x56\x5e\xab\x09\xa4\x79\x84\x5a\xb3\x16\xd9\xfa\x33\x6d\x8b\x17\x09\xb0\x1c\x32\xc6\x77\x2a\x11\x07\xc0\xb5\x82\x08\xdd\xd7\x54\x3c\x87\x0b\x49\xee\x34\x56\xd2\x4b\x02\x9a\xd5\xde\x2a\xa8\x53\xf1\xc3\x26\x40\x3b\x3a\x54\x7d\x7e\xcb\xb5\x5b\x7e\x59\xfd\xc0\x86\xc6\x7a\x4b\x3f\x9a\x86\x91\x3e\x98\x75\xac\x5c\x17\x79\xc3\xd5\x29\xff\xd3\x06\x6c\x47\x18\x8f\x0f\x8c\xf1\xe2\xde\x31\x42\xbf\xee\x19\x65\xfc\xd0\x28\x95\xc7\xac\x41\x10\xf3\x38\x78\x05\x63\xdd\x14\xac\xdd\xde\x9f\xdf\xc2\xc1\x99\xdf\x63\x97\x40\xf7\x8e\xaf\xf2\x06\xa7\xc2\x23\x59\xd1\x0a\x8b\x63\xc7\x43\xad\x98\xb1\xb9\x86\xa0\x72\xdf\xcb\x37\x09\x46\x71\x4d\x54\x68\xb7\x49\x7d\x41\x52\xf5\x2b\x8e\x6b\xa4\x7e\x5e\x72\xed\x10\x08\x3c\xba\xa8\x9f\xe0\x7b\x25\x5b\x6d\xb7\x46\xf7\x51\x9f\xd8\x9a\xe8\x9a\xa6\x72\x57\xd7\x78\x84\x30\x1c\x69\x5b\x74\x9a\xca\x74\xb4\x93\xfb\xc8\x3f\xcc\x15\x1e\xa1\x1d\xb6\xd3\xf2\x36\x5d\xc8\x39\xd1\x30\x83\xd6\x75\x20\x27\x6d\xf8\xa2\xce\x48\x50\xb3\xf2\xba\xa0\xb6\xec\x5b\x7e\xdf\x49\xd8\x83\x70\xa3\x79\xa7\xdd\x48\xd8\x60\x7f\xea\xa2\x71\xa2\xd8\xe8\x75\xb2\xcb\x03\x65\xfe\x55\x8b\x72\xd7\xae\x48\xaf\x33\x89\x65\xc4\xf5\x22\x29\xa8\x60\x26\x51\xa6\xcb\xe5\x6a\x11\x8b\x1d\xec\x3b\x7f\x1a\xdd\x49\x84\x3b\xe7\x6b\xd9\x79\xa5\x33\x0f\x9d\x37\x83\x52\xbe\xdb\x60\x8e\x0d\x98\x7e\xb6\x54\x49\x07\xe8\xc4\x26\xa2\xb8\x3f\x3e\xb0\x75\x0f\x54\xa3\xd4\xdc\x1e\xa8\x67\xd4\x4e\xed\x17\xed\xd4\xbe\xa6\x1f\xc5\xb7\x99\xd2\x0b\xc9\xbc\xe2\x8e\x09\x55\x7b\x30\x03\x39\x47\x60\xaa\xe2\xa5\x4a\xb8\x8f\xb9\x35\x75\xd2\x88\xed\x4b\x56\xe6\x2f\x9b\xa2\x90\x00\x9a\x10\x85\x33\xd6\x14\x14\x90\x20\x22\x5f\xb6\x06\xb4\x4d\x62\x8a\x86\x72\x57\x57\x86\x66\x2f\x4a\xb0\x6c\xac\x32\xfd\x6b\x28\xd2\x5e\x86\xc0\xd9\x11\xe6\xa4\x3f\x6a\xfd\x1c\xd4\xaa\x6b\xea\x6e\x94\x75\xe3\x86\xf0\xa9\xeb\x15\xf7\xea\x6a\x11\xc4\x75\x0c\xff\x51\x52\xe3\x4c\x95\x78\x03\x68\xbf\x1e\x52\x83\x19\x9a\x44\x19\xd8\x6e\xbe\x06\x05\x85\xed\x36\x3a\x9c\x51\xee\x67\xd0\x17\x87\xeb\x4c\xde\xd0\x08\x39\xe5\x50\x18\x8a\x61\x9a\xb7\x58\x76\x94\x19\x70\x90\xc1\xd6\x02\x57\xbc\xd1\x43\x73\x67\xa7\xce\xf5\x33\x9b\x75\xa0\xb1\x01\x9d\x40\x36\xd4\x59\x5a\xbe\xe4\xd5\xe7\x8a\x4e\x89\x84\x44\xc0\xda\x50\xfc\x13\xc7\x5f\xe5\x5e\xce\xb1\xef\xc1\x4a\x71\x7d\xb2\x15\x21\x41\x84\xee\x76\xb3\xb9\x75\xcd\x62\xdf\x0d\xab\x1e\x50\xfc\x78\xec\x60\x53\xde\x9a\x95\x4a\xe1\x48\x9d\x2f\xf5\x33\x5b\x41\x44\x4c\xe0\xf5\xf6\xc7\x08\xf7\x47\x3d\x41\xca\x88\xb5\xf9\x58\x9b\x4f\x5d\xca\xee\x31\x50\xee\x0b\xed\x5e\x7e\x93\xf1\x4d\xf7\x04\x64\x2a\xf8\x8a\x7f\x89\xa8\xec\xcf\x8a\x22\x38\x70\xb6\xbe\x69\x2b\xfc\x9c\x8a\x0f\x94\x96\x9f\x5b\x6a\xcf\x3b\x1d\x72\x96\xb2\x48\x74\x90\x47\x7b\xc8\xbe\x51\x88\xea\x5b\xae\x8b\x77\x4a\xff\x06\xf1\x55\x39\xe6\x83\xfe\x0a\x55\x0a\x66\xaa\x65\x62\xe0\xd7\xd2\x1e\x25\x35\x93\x2a\x07\x6a\x79\xe1\x1b\x5e\x5b\xe2\xea\x70\x6d\x83\x36\xc0\x0f\x0f\x43\x09\xf4\xec\x0a\xf0\x76\x05\xe4\xd5\x23\xb3\x4b\x12\x40\x39\xb4\x32\x44\xa6\x42\xb4\x13\x17\x04\x3a\x68\x77\xfe\x69\x68\xb7\x45\x14\x01\x94\xec\x41\xf5\x14\x22\xfa\xe9\x98\xaf\x4e\x1c\x59\x13\xeb\x55\xc7\x78\xed\x37\x86\x1c\x6d\x6f\x89\x82\x34\x1e\x74\xcf\x20\x60\xab\x7e\x73\xea\x1b\x8c\xc3\x90\xcf\xea\x78\x3c\x77\xb3\x13\x92\x4d\x50\x46\x9a\x59\x1c\xd7\xf3\xb6\x5c\x4f\xa9\x97\x45\x05\xce\xd0\x6e\x67\x70\xd2\x29\x23\xfd\x51\xa2\x3f\xf9\x80\x41\x80\xbd\x88\x7a\x51\x86\x64\x0f\x13\x19\x56\x31\x3e\x6d\x8d\xad\xc9\x89\xa1\x25\xd2\x19\x9f\xe3\x46\xfe\x8b\xc7\x73\x5c\x10\x7d\xf5\x67\xa4\x8c\x1a\x84\x97\x2e\x14\x2c\x70\x06\x51\x17\xab\xe9\x72\x58\xf3\x4a\x44\x28\xd1\x3f\x0e\xda\xd3\x77\x22\x14\xe9\x38\xb4\x4e\x8a\x95\xd2\x82\x37\xc1\x88\x92\x0a\x83\x77\x7f\x7a\x21\xa6\x83\x71\x42\x09\x11\x92\x58\x51\x84\x82\x47\xab\x2c\xb1\x9c\x2d\x0c\xb8\xbe\x77\xff\x16\xea\xba\xcd\x76\x68\xc7\x24\xc0\xf4\x2f\x58\x0a\xf7\xae\xa2\x3b\x97\x16\x2b\xff\x90\x6e\xf6\x71\x72\xf1\xe9\xfb\xac\x3a\xb4\xcb\x34\xfd\xe6\xad\x1c\x10\x73\x76\xf3\x55\x07\x36\x5f\x35\xab\xe7\xb8\xb3\xcb\x06\x63\x7f\x9f\x99\xfd\xd2\xa2\x1c\x8d\xc6\x83\x4c\x76\xfb\x9e\xad\x2c\xfa\xd1\xc0\x89\x6b\x73\xc0\x5b\xb6\x42\x3b\x30\x52\xd3\xd5\x4b\xac\xd0\x6e\xfb\xed\x76\x30\xc8\x70\x71\xc9\xa7\xac\xdd\xa0\x09\x6b\x15\x1d\xd9\x8c\xb5\x4a\x4d\x24\x93\x17\x68\xb6\xfb\xed\xed\x38\x9a\xd0\xd6\x00\x82\xda\x9d\x58\x11\x36\xa3\x72\xca\xd8\x8c\xca\x9d\x58\xbb\xb4\xdd\x3e\xb1\x1a\xe0\x12\xd0\x4e\xf9\x0f\xf0\x29\x1c\xc4\x66\x25\x25\x12\x71\xe9\x9e\x92\xe9\x01\x52\x37\xae\xe1\xc6\x75\x8f\x92\x26\x7d\xdb\x6a\x92\x4e\x39\x79\xd9\x97\xb2\x65\x0e\x2d\x77\xb3\xef\x11\xb9\x29\xa8\x57\x68\xf2\x46\xf0\xbf\x33\xfa\x41\x31\x3e\xb0\xde\x81\x96\x54\xd2\x75\x74\x09\xa5\x7f\xd9\x2e\x6c\x87\x19\xcb\x4d\x58\xd9\x85\x9b\xa4\x97\x64\x34\x49\x07\x03\x03\x0f\xaa\x59\x2a\xe1\x41\xed\xa1\xab\x05\xa9\xdd\x2d\xd9\x1b\xf5\x4d\x06\xb9\x65\xea\x76\xcb\x34\x83\x01\x6e\x2e\xec\x96\x69\x70\xf1\xc0\x96\x29\xe4\x96\x29\x3e\x61\xcb\xd8\x42\x27\x13\x2a\xbb\x4b\x07\xf7\xed\x9a\xd4\xdf\x35\x15\x21\x0f\xee\x03\xd8\x45\x83\x31\xec\x22\xf4\xe0\xd2\xff\xd6\x86\xeb\x64\x4f\x7f\x7b\xa7\xdc\xb7\x2d\x78\x1c\x1c\xcb\x3d\x21\xf8\xf5\x75\x41\x25\xb2\x41\x8d\xfa\x1c\xcd\x3b\x68\x89\x04\xb1\x4e\xae\xe8\x4e\x8b\x06\x81\x83\x6f\x6a\xfb\xab\xac\xed\x67\xce\x4a\x70\x57\xfe\x2f\x21\x80\x7c\xb2\x14\xbc\x8b\x6b\x5c\xb4\xd6\xc4\x22\x68\x8b\xb5\x77\x63\x5b\x81\xbc\x1b\xc5\x8c\xed\xdd\x8d\xcd\x04\x35\x44\xcc\xe2\x98\xb9\x77\xa3\x21\xaf\x80\xc3\x99\xd4\xa0\x9b\x69\x79\x4c\x7d\x6e\x36\x5e\x18\xa6\x40\x4f\x3d\xbc\x91\x04\x84\xd6\xb4\xd7\x61\xe5\xf9\x1e\x71\xd9\xbc\x95\xba\x13\x6b\x0d\x47\x25\x26\x53\x7b\x30\x56\xe0\xda\x85\xb1\xf2\x78\x40\x0f\x27\xc5\x05\xa9\x87\xb4\xcc\x5d\xbd\xf6\x62\x20\x7a\x05\x51\xe9\x61\x18\xa5\xa4\x8c\x32\x4c\xed\x36\xcd\x0c\xcf\x4f\xa2\xbc\x38\xbb\xa0\xce\x86\x85\x38\x7f\xfe\x3e\x3c\x92\xbb\x2a\x93\xdb\x30\x8b\xc7\xf8\xf8\x9f\x57\xf5\x9f\x8f\x95\xd2\x8a\x53\xa5\xac\xca\x75\x3d\x86\xe3\x58\xa0\x1d\xf3\x2f\x8e\x66\xbb\x4d\xd5\xf5\x90\x1e\x20\x46\x99\xbe\x2b\xf7\x10\x5b\xa0\xfa\xf2\x66\x53\xb0\x2c\xd5\x64\x69\x77\x53\xfe\xd6\x32\xec\x6f\x35\xc3\xf6\xd4\xda\xa5\x6d\x60\x08\x76\x88\x15\x50\xcd\x7b\xad\xb0\xa0\x33\x41\xed\x2c\xb0\xf6\xca\x43\xe6\x38\x3a\x69\x92\xc0\x4a\x0e\x15\x56\x3f\x0d\xbb\x1a\x2b\x76\xb5\xfc\xaf\x12\x5a\x7e\x51\xe7\xf0\xc2\x61\x7b\x0b\x47\xb7\x4a\xcb\x7a\xc3\x6b\x0a\x42\x5c\xc5\xfd\x78\x79\x4e\x02\x89\x2b\x1d\x3a\x84\x79\x87\xb0\x7e\x79\x0e\x97\x82\xc9\xfd\x55\x59\xd3\xb2\x66\x82\xdd\x74\xa7\x3a\x77\x28\xfb\xe1\xcb\x13\x12\x94\xf4\xa3\xf8\x9c\xf3\xf7\xeb\xb4\x7a\x7f\x0f\x63\xc5\xa3\x0f\x4d\xde\xba\x0d\xad\x3c\xb1\x47\xdd\x71\x7e\xa2\x2c\x62\xc0\xe3\x89\x24\x49\x23\x1d\x5a\xc5\xca\x4e\x74\x08\x76\xdc\xa5\xd5\x14\x7d\x5d\x4a\xfa\x7a\xe7\x6d\xa5\x97\x27\x72\x88\x9b\x8a\xde\xfc\x0b\xbb\x2b\xac\xcb\x3b\x6d\xf4\x60\xec\x4c\xc5\xac\x05\x3f\x73\x67\x04\xd5\x3d\x34\x66\xa5\xfa\x5d\xc9\x7e\xf7\x74\x5d\xbb\x76\x79\x4e\x5a\xf8\x7c\x4f\xef\x7f\x03\xac\xde\x37\x2c\x30\x9b\x3d\xfc\xe9\x50\xb0\xea\xd2\x05\x5c\x8c\x88\x59\x69\x59\x84\x5c\xbd\x01\x8b\x30\x75\x9d\x47\x01\x63\x5a\xa3\xa0\xa9\x8b\x82\xb2\x65\x94\xce\xea\x79\xb7\x61\x74\x07\xa9\xc6\xcb\x91\xaf\x79\x5d\xb9\x9a\xd7\xd5\xac\x99\x13\x22\x73\x87\x61\x65\x3c\x2d\x4a\x84\xc0\x86\x9a\x57\xac\x44\x8d\x0c\x54\x7b\x1e\x43\x18\xe6\xf8\xae\xd3\x7c\xd2\x1f\x29\xbf\x12\x3f\xae\x68\xf9\x42\x1e\x79\x60\xef\x75\x76\x13\x00\x26\xb5\x2c\x90\xd9\xce\xda\x1f\xdc\x54\xf7\x28\xba\x43\x8c\x1a\x33\x13\xa2\x75\xf4\xd4\x8a\xa4\x54\x1f\x34\xd9\xff\x87\x3a\x01\x97\xae\xdf\x93\x43\xab\xee\xae\xb8\xde\xce\xd3\x0e\x2f\x52\x01\x2c\x05\xe1\x25\x10\xdb\x49\xa4\x46\x2f\x4b\x39\x18\x48\xf8\x5e\x39\x12\x90\x7b\x58\xba\x72\x54\x7f\x93\x83\xfa\x50\x29\xec\xa5\x0e\xb4\xe2\x12\x8f\x83\xaf\x8f\x1c\xf2\x7c\x63\xc4\xc1\x0f\x83\xff\xf2\x01\x44\x75\x36\xd7\xe2\x2e\x6b\xc3\x0d\x52\xaf\xa8\x21\xe5\x2c\x9d\x23\x0b\xf3\x23\x7d\x95\xa5\x08\xeb\x50\xd3\x41\x80\x50\xa2\x7f\x6b\xbf\x46\x0a\x8e\x1b\x5a\x0a\x2b\x1a\x07\x21\x89\x7c\x69\xa0\xef\x74\x81\xe3\x20\xad\x78\x53\xe6\x01\x0e\xb2\xb4\xa6\x46\x14\x08\x1b\x3e\x6d\x31\xd0\x2e\xc2\x2c\x7b\xc6\x66\xe9\x7c\xae\x25\x6f\xa0\x42\xa9\xb8\x28\x8a\xc8\xc2\x35\xba\x1c\x21\x8b\x0b\x44\x42\x13\x5f\xa8\x57\x13\xc5\xc1\xeb\xe2\x8e\x55\x94\x29\x9e\x25\xd6\xdf\x33\x05\x3e\x77\xae\x9b\xa4\xf5\xc3\x8c\xd5\x72\x9f\xb1\xba\xcf\x2f\x2d\x91\xd9\x47\x0e\xbf\x94\x79\xfc\xd2\x8a\xe8\x5d\x54\x82\x9b\xfc\x9d\x2b\x09\xab\x40\xfe\x85\x7f\x69\x68\x75\x9b\x78\xcc\xd2\x52\xcb\xc2\x98\x63\xe8\x72\xe3\xb2\x06\xd6\x26\xe2\x5f\xab\xb7\x06\xd5\x60\xae\x45\x42\x2e\x6b\x94\x61\x31\x95\x90\x38\x51\x50\x19\x4d\x22\x31\xe5\x0e\x67\x34\x51\x2f\xdf\x55\xf4\x86\xf1\xa6\x8e\x90\xc4\x09\x3c\x70\x6e\xb1\x53\x85\x92\xa2\x24\xba\xaf\x9d\xd2\x04\xe6\xb3\x4c\xd8\x84\x3a\x8a\x01\x2e\x6e\x86\x10\xc2\xff\xf9\x9e\x54\x30\xdd\xdd\xf3\xe7\x5d\x40\x68\xb7\x13\xb3\x95\x84\x70\x6d\x24\x17\x25\x16\x90\x1d\x51\xb1\x41\x24\x00\x82\x2c\x5f\x3b\x9f\x0e\x49\xc3\xff\x08\x72\x86\x81\xb6\x34\xfb\xbf\x92\xfb\xbf\x1a\x0c\x50\x17\x33\x0d\x30\xc0\x47\x2d\x93\x29\xc1\x26\xa8\x45\xe5\x25\xbd\xa4\x24\x19\x20\x88\xbc\x97\xfc\x81\x51\xfc\x20\x47\xd1\x6c\xe4\x41\x7c\xa6\x37\x71\x67\x1c\x9b\x88\xfa\x9e\xe7\xec\x45\xee\xb1\x98\xfc\x6a\x41\x16\x94\xf3\x0f\xe5\x1f\xac\xd8\x09\xaf\xed\x57\xec\x70\x90\xc5\x1b\x05\xd0\xbf\xd9\x47\x0a\x3a\x20\x5f\xe6\x80\x85\xef\x26\x9a\x2b\x06\x1f\xf8\x06\xfe\xf3\xec\xd5\x12\x79\x2c\x7b\xb7\x47\xcf\xda\x7b\xe8\x2d\xbf\xbf\x4b\x07\xef\xa2\xfb\x3b\xa6\xaf\x1a\xb1\xb7\x5f\x7d\xd1\x81\x70\x7b\xf2\x63\x2b\xc3\xba\xb7\x27\x7b\x7e\xf6\xbc\x9e\x1c\x48\xf4\x70\x38\x13\x41\xce\xeb\x03\x23\x10\x18\xc2\x82\xbb\x12\x33\x09\x88\xb5\xec\x8e\xf5\x18\x29\x71\x49\xf8\xae\x53\xf9\xd7\xac\x28\x68\xee\x72\x3d\x4b\x90\xf4\xef\x73\x03\x30\x33\x48\x08\x0c\xf3\x1f\x86\x8f\xf3\x23\x13\xab\xff\x09\x13\xde\x45\x0c\xff\x53\x1b\x45\xe1\xe9\xfa\x55\x78\x1b\xe7\x27\x18\x87\xaa\xe7\xa7\xb4\xec\xf6\x5f\xf9\xce\xa5\x87\x26\x0d\xe2\x4f\x76\x2e\xd6\x6e\xaf\x55\x4e\xcd\x10\xd9\xa4\xb5\x84\x06\x12\xcd\x80\xa6\xff\x72\x00\x7f\x6b\x3b\xf6\x1c\x3a\xb6\xe2\x1f\xbe\x2a\x9f\xd3\x72\x5f\xd8\x69\x66\x56\x29\xdc\x3d\x07\xf7\xa8\x4a\x9e\xef\xe8\x3f\xf8\x82\x7e\xab\x2e\x61\x1d\xad\x0e\xf6\x34\x12\x3c\x55\x8a\xe3\x13\x9f\x20\x96\xc8\x91\xe6\x22\x5b\x09\x73\xfd\xc3\xe6\x43\x5a\xed\x73\x6a\xfe\x10\xdc\x3d\x1c\x2d\x91\x41\xb4\xc4\x9e\x43\xcc\x5e\x7a\xd7\x96\x5c\x09\x4f\x54\xe8\x11\xbe\xe0\x72\xca\xf0\x7f\xc1\x27\xc8\xde\x98\x2c\x5f\xb2\x1d\x95\x4c\xfa\x5f\x3f\xae\x0e\x37\xe4\xa1\x61\xc5\xf7\x0c\x4b\x52\x06\xa7\x72\x30\xf2\x2c\xfd\x50\xe6\xfb\x1b\xc7\xa5\xbe\x3d\x82\xc2\x2f\x66\xae\xf5\x43\xc5\x3d\xbd\xb4\xb6\xdc\xb3\xa2\x38\xd8\x22\x4c\x8c\x41\x82\x3a\x41\x3e\xbb\x68\x89\x50\xa8\x91\xc4\xe9\x80\x1b\x27\xaf\x60\x07\xe7\x98\xa0\xd2\x47\xfb\x2b\x83\x62\x00\xe2\x5f\x69\x65\x3b\x5c\xb9\xec\xb6\x0b\x22\x5a\xbf\x97\x92\x14\xd3\xdf\xb2\x95\xfd\x92\xad\xc2\x90\xc5\xf1\x9e\xae\x87\x86\x7b\xfe\x4c\xcd\x60\xc0\xbc\xc8\x83\xce\x87\x39\x5c\xe4\xa5\xf9\x04\x07\x79\x14\xcc\x89\xfe\xf9\x73\xfb\xf9\x59\x51\x04\x8a\x85\xf2\x95\x99\xbd\xaf\xca\xac\x02\x1f\x40\x69\xd1\xad\xf7\x50\x9e\xef\xe9\x0d\xad\x6a\xaa\x6b\xf9\x52\xe6\xd0\xe0\x28\xc0\x62\xf8\xf2\x54\x15\x78\x0d\x91\x2a\x5b\x3e\x84\x5d\x2b\xb9\xbc\x01\xa6\xc3\x92\x57\xeb\xb4\x60\xbf\xd2\xaf\x41\x19\x16\x7c\x6e\x23\xac\x35\x7f\x03\x57\xe3\x77\x36\xf7\xfc\xf0\x78\x3a\xba\x1a\x51\xd6\x2a\x44\x49\xab\xd9\xbb\x73\x6b\xfb\xff\xd3\xf5\x82\x56\x83\x3c\x15\xe9\x71\x9a\xa7\x1b\x41\xab\xe3\xc1\xa6\x62\x37\xa0\x55\x3d\x0b\xb4\x96\x34\xc4\x05\x04\x3d\xe6\x00\x07\xaa\x08\x2b\x97\x72\x49\x3a\x6e\xbb\xb4\xf3\xec\x3d\x6d\xe1\x92\x58\x7d\x60\x06\x91\xd3\x8c\x6e\x53\x22\x30\x23\xc7\x57\xd5\xf4\xaa\x3c\xd6\xb2\xdd\xe3\xab\xd9\xd5\xfc\x4f\xc7\xae\x9a\xaf\x89\x09\xc6\x59\x7e\x34\xea\x13\x08\x99\xa6\x4c\xc9\xe1\x67\x45\x20\xf0\x27\x39\xa0\x43\x5d\x4d\xab\x08\x25\x15\xa6\x33\xe3\xe9\x65\x4e\x68\x99\x81\x0f\xa9\xaf\x9e\x1b\x05\xfb\x48\xa0\x38\x20\x41\x7c\xe0\x4b\x85\x8c\x8b\x73\x1b\xee\xb0\x21\x2f\xe4\x14\x0c\xbf\x61\x1f\x99\x89\xe5\x18\xdd\x2d\x1a\x56\xe4\x3f\x7c\xff\xaa\x13\xa3\x5a\xb9\xd3\xaf\x3f\x30\xed\x31\x0f\x68\x3b\xb9\xdc\xdf\xd3\x8c\x57\x79\x90\x18\x16\xd6\x8a\xd5\xc3\xa6\x2a\x5e\xf2\xea\xa5\xfd\x1a\x09\x4c\x25\x5d\x64\x0b\xc9\x4d\x7a\x4f\x89\x67\x85\xf2\x5c\xab\x32\xc3\x91\x3d\x94\xf5\x6f\xf2\x43\xc4\x30\x75\x33\xde\xdf\x97\xbf\xb5\x9f\x9d\x42\x8a\x99\x53\x1e\x6c\xe0\xa5\xfe\xb6\xd7\xf7\x2f\xd3\xfa\xa1\x32\xfa\xf3\x5e\xb1\xcf\x69\xc1\xcb\xeb\xfa\x2d\xbf\xaf\xa0\xcd\xe0\x15\xd5\x21\x36\xef\x1d\xd8\x73\xe7\xbb\x33\x6f\x0d\x38\x64\xbd\xbf\xd8\x0f\xce\x77\xaf\x3d\x85\x60\xde\x5f\xf0\x0b\xe7\xbb\x29\x68\xce\x80\x9b\xfb\x9d\xd9\x47\xca\xb9\xf8\x0e\xbf\x3b\xb8\xb1\x34\xbe\x6a\x60\xb2\xda\x90\xd7\x54\x80\x5f\x4d\x1c\xac\x78\x2d\x94\x2a\x93\xee\xc1\x77\x15\x5d\xb2\x8f\xad\xc8\x5b\xb9\x7f\x82\xaf\x9b\x54\xac\x5e\xf2\xea\xed\xed\x86\x46\x14\x21\x70\xb7\xa2\xb9\xa9\xc2\xbe\x1c\x3c\x33\x10\x6d\xa0\xb4\x3c\x4f\x2e\xaf\x08\xe5\x29\x25\x0a\x8e\x03\x84\xfb\x2c\x0c\xcb\x30\x0c\x8e\x83\x3e\x21\xa5\xd1\xb7\x19\x21\x79\x7a\x49\x70\x1c\xc4\x25\xc2\xe5\x0e\x77\x77\x7d\x67\xa0\x87\x67\x47\x60\x8a\xdc\xa2\xcf\x8a\xe2\x90\x89\x52\x77\x4e\x6d\x19\xd8\xd8\x9f\xd6\x92\x5f\xe6\xf7\xf4\xd1\xeb\xa1\xdc\xdd\x7f\xa0\x98\x3e\x17\x7f\x68\x52\xec\xd1\xf8\xdd\xa5\xdd\xe3\xf1\xbb\xe6\xd5\x3d\x20\xbf\xbb\x55\xf7\x90\xfc\xbe\xc2\x6a\x7f\x1f\x3a\x22\xf7\x9d\x8d\x72\xef\x43\x99\xae\xa9\xe2\x6e\x28\xba\xce\xec\xdc\x6a\xbb\xd5\x57\x8c\xf5\xb9\xf6\xcf\xab\xe3\xab\x63\x1d\x7c\x81\xa2\xed\xf6\x78\x25\xc4\x26\xaa\xd1\x34\xf1\x3e\x4c\x69\x12\x1c\x07\xc4\x89\x89\x3c\x42\xd3\x20\x88\xab\x98\x26\x22\x96\x27\x80\xea\x88\x9f\xb3\xb9\x55\x46\x09\x43\x66\x0f\x60\x69\x5f\x4a\x84\x59\x7b\xb4\x76\xd8\x39\xb5\xc9\x3e\x6a\xa7\x86\xa6\x83\xfe\x65\xe9\x9a\x4a\x7c\xc2\x89\x5d\x5a\x0d\x37\x45\x53\x01\x96\x21\xb7\x1b\xa8\xd4\x7e\xae\x27\x15\xae\x35\xd2\x80\xf5\x95\xa0\xd5\x9a\x95\xf4\x73\x9e\xdf\x7e\x57\xf1\x35\xab\x29\x39\xb4\x2c\x11\x28\xdb\x28\xff\x47\xaa\xe9\xef\xdf\xfc\xfd\xbb\x61\x45\x6b\x5e\xdc\xd0\xa8\x42\x43\xe5\xfd\xf4\x20\x5f\x63\x87\x10\x1a\x8a\x15\x2d\x7d\xb5\xb1\xae\x47\x1a\x37\x2e\xa8\x21\xae\xfb\x74\xc8\xdf\x5b\x6f\x91\xe0\x75\x95\x91\xbf\xbe\xf9\xf6\xb5\x76\x55\x5b\x19\xb7\xab\x3a\x06\x60\x94\xba\x5e\xf1\xde\xdc\x96\x22\xfd\x08\x9e\xf8\xac\x52\x43\xda\x4b\x87\x9b\xf4\xb6\xe0\x69\x4e\x24\x74\x4d\xb5\x5d\xbe\x22\x23\x9b\x5a\x4f\x20\x34\xbc\xdd\x9e\x8c\x1e\xf5\xc1\x11\xfd\xc9\xe8\xb1\xfa\x11\x7c\xf9\xe2\xd9\x17\x72\xd3\x88\xe1\x9a\x8a\x15\xcf\xa7\xe5\x76\xcb\x12\x85\xb9\xec\xf4\x20\x76\x46\x2e\xb4\xc3\x74\xb8\xa4\x22\x5b\x75\xa2\xc9\x2b\x22\x97\x58\xf3\xe3\x5a\x71\x1a\xc0\x0b\x53\x14\x40\x89\x00\x99\xc8\x8b\xa5\x4d\x31\x48\x55\xef\xff\xe1\xee\xdd\xfb\xdb\xc6\xad\x45\xd1\xff\xf5\x29\x64\x9e\x73\x54\xe2\x18\xd1\xd8\xd3\xc7\xed\x51\x82\xf1\x2f\x93\x47\x9b\xdd\xc9\x64\xf6\x24\xd3\x9e\x5e\x6d\x1d\x6f\x5a\x84\x6c\x34\x12\xa8\x82\x90\x3d\xde\x16\xbf\xfb\xfd\x61\xe1\x4d\x82\x94\x9c\x49\xda\x9e\xfb\x4f\x62\x91\x20\x1e\x0b\x0b\x0b\xeb\xbd\x6a\xd2\x09\xfb\x1f\xd3\x46\xfb\x96\xb2\x55\xee\xf9\x24\x97\x5d\x0a\x7a\xe8\xe6\x27\x5c\x42\x46\xf4\xb1\xba\x87\xc7\xf2\x86\x8e\xff\x13\xda\xfd\xa7\x89\x91\x1b\x57\x22\x7a\x7a\xbd\xae\xae\x8a\xf5\x74\xfc\x92\x95\xe3\xfb\x6a\x37\xde\xd0\x82\x8f\x65\xa5\x61\xbe\x5e\xeb\xb6\x9a\x7d\x34\x5f\x40\x40\xda\x45\x86\x92\x33\x86\x36\x2e\xbe\xa7\xce\x21\x67\x0c\x6c\xec\x8f\xb4\xde\x56\xbc\xa6\x7f\xa4\x45\x49\x45\x9d\x90\x6d\xde\x41\x50\x9f\x65\xce\x74\xd4\x6d\x94\x42\x50\x8e\x42\x99\x47\xd7\x0d\x67\xd6\xc0\x25\x92\x06\xae\x8a\x88\x39\x07\x03\x01\xae\xc9\xc9\xf9\xd3\xc2\xfb\xef\x15\xda\x7e\xf5\xdb\xdf\x13\x62\x42\xad\x4c\x8d\xc8\x02\xa1\x87\x9a\x9c\x9c\x19\x03\x94\x9a\xc2\x39\xec\xac\xf5\xf6\x9b\xd6\xbb\x2b\x1d\x5c\x0d\xb5\xcf\xa7\x52\x30\x25\x3b\xad\xa3\x37\xc5\xe9\x39\x76\xf1\x62\xa6\x09\x24\x17\x42\x72\xbe\x8b\xf5\x82\x0b\xb2\xc6\x72\xbe\x5b\x90\x75\xe3\xab\x06\x80\xba\x45\x30\x38\xef\x6f\xb8\xac\xfe\x58\xd4\x37\xa4\xcd\xa7\x5a\xfe\x9a\x10\xf0\x86\xe3\xe4\x81\xf1\xe5\x7a\x57\xd2\x37\x25\xf8\x73\x8c\x9c\xab\xad\xed\x4a\xbc\x06\xf1\x70\x53\x95\x74\x0d\xb5\x67\x46\x11\x72\x39\x26\x9c\x75\x47\xb7\x7a\xb0\x87\xc6\xc7\x83\x77\x1a\xe5\x95\x99\x19\xb6\x8a\xff\xb0\x15\xe8\xf9\xa3\xa5\xc1\xfd\xfc\x43\x21\x8a\x4d\x0a\x25\x3c\x89\x75\x92\x05\x0d\x42\xd7\x71\x8d\x77\x5a\x9d\xc7\x56\xb9\x4e\x08\xc2\x6a\xf8\x3f\xe7\x3a\x7b\x10\x83\x8d\x77\x96\x21\xf6\xac\x06\x67\x94\xca\xd4\xe0\x41\x17\xba\xcc\x0a\x9f\xb3\x05\x9a\xd1\x5c\x28\xb1\xf4\x34\xef\xc4\x97\xaa\xf7\x17\x6c\x96\x65\x48\x89\xa7\xba\xb9\x0b\x91\xeb\x12\xc8\x6c\xae\x3b\x18\x6b\x94\x5e\xa8\xeb\xc4\x60\xb7\x4f\x58\x22\x2b\x47\xeb\x95\x18\x80\x1a\x3b\xe7\xdd\x98\xf1\x31\x47\x76\x36\x3b\x33\xe4\xce\x0e\x69\xa6\xec\x27\xf0\x98\x95\x43\x9e\xb7\x39\x5b\x40\xd2\x5f\xfd\xd7\x6d\xb1\xde\xd1\x20\xc0\xdd\x8d\xbf\x33\xa3\xfa\xec\x99\x59\x86\x29\x32\x57\xda\x24\x43\x41\x42\xdf\xaf\xcf\xbe\xba\xc6\xd9\xa9\xba\xe6\xcc\x4a\xb5\xbc\xea\x92\xd8\x50\x9c\x5d\x5e\xd2\xfa\x2d\x50\xa1\x0c\x3f\xc0\xa8\x2e\x6c\x78\x48\xb8\xa5\x46\x72\x0e\x24\xdb\xb0\x59\x2d\x2b\x41\xbd\x04\xdc\x12\x6d\xfb\xb2\xbe\x9a\xac\xac\xee\xf8\x48\xa8\xe8\x9d\x3d\xd7\x63\x8e\x9d\x82\x6a\xbc\x2a\xd8\x9a\x96\x99\x49\x18\xca\x6a\xd3\x42\x67\x7a\x3f\x39\x1b\x85\x0c\x0b\x3c\xd4\xfb\x09\xec\x89\x44\x23\xa8\x14\x6e\x52\xe9\x2f\x3f\x12\x93\x2f\xc9\x64\x1f\xa5\x3a\x39\x31\xab\x38\x11\xe1\x2f\x53\x25\x97\xad\x29\x54\xab\x11\xee\x4f\xfd\x62\xcd\x38\xfd\x7e\xa7\x46\x34\xc5\xbb\xf5\x0f\xfd\xd2\x64\x15\x27\xc2\xfe\xa5\x1f\x73\xdd\x11\x77\x9d\x70\xdb\x81\xfe\xc3\xac\x0f\x60\x5d\x13\xba\xdf\xcf\x1f\x24\x93\x6b\x3a\x73\x20\x79\xa5\xb7\xa1\xa4\xb2\x60\xeb\x99\x6c\x16\xcd\x63\x37\xba\x1f\x33\xf4\xb0\x8a\x7e\x7c\xa8\x00\x8b\x33\xfc\x40\xf9\x6e\x43\x45\x71\xb5\x56\x1f\xe3\x6b\x2a\xbb\x79\x71\xc6\x72\xda\xf9\xb2\x39\x3c\x0e\xb4\xfb\x00\xe4\xea\x91\xe3\x04\x5f\xaa\x71\xe8\xf4\x3d\x15\xb7\x16\x19\xe8\xf4\x45\xc5\x57\x6b\xb6\x94\xf6\xf7\xf7\x95\x7c\x5d\xed\x78\x69\x7f\xbf\xae\xc4\x15\x2b\x4b\xca\xed\x83\x9f\x78\xb1\x93\x37\x95\x60\xff\x45\x5d\xa3\xe7\x57\x95\x70\x3d\x98\xca\x18\xf6\xe7\x1b\x7e\x5b\xac\x99\x6b\x6a\xa3\xb0\x35\x16\x1b\xad\x8d\x08\x0b\xfa\xd1\x2e\x53\xe6\x98\xec\xdc\x23\xff\xc5\x43\x33\x93\xc8\x62\x8c\x73\xc7\x07\x21\xbb\x9b\x18\x53\x7f\x1e\xa7\x12\xa1\x01\xda\x0b\xcc\xf7\x7b\x89\x9a\x80\x73\xb5\x54\xaf\x75\xc9\x53\xff\x06\x61\x61\xc2\x12\x08\x53\x6c\xb4\x68\xfc\xfa\x38\xee\xef\x22\x3c\x79\x51\x67\x9e\xd2\x2a\x31\xd8\x1d\x6d\x83\xc6\xd1\x60\x26\x5f\x5d\x95\x0b\x9c\x7d\xb8\xa1\x63\x43\x79\xc6\x82\xfe\x0d\x22\x09\x81\x0b\x5a\x56\x9b\x0d\x93\xe3\x2b\xba\x2c\x14\x45\x61\x72\x7c\x57\xd4\x63\xa6\x77\x04\x0c\x05\xd1\xee\x14\xb8\xe8\x4c\x21\x6c\x90\x99\xb0\xe1\xce\xa0\x9e\xf4\x48\xb6\xa1\xe5\xb8\xda\x49\xe8\x3d\x42\x85\x1a\xd7\x9d\xde\xc3\x06\x99\xd1\x7a\x0d\xf4\xae\x66\x5f\x28\x5c\xa3\x7a\xf6\x01\xde\xed\xf0\xae\x0b\x3e\xf7\x3a\x33\xf9\x3a\x07\xfa\x66\xf5\x78\x17\xa0\x36\xf4\xdf\xc5\xf5\x35\x5e\x77\x86\xe9\xb4\xd2\xa3\x2d\x0f\x8c\xb6\xb2\x27\x0b\x86\x6a\x9d\xb3\x25\x5e\x76\xc6\x89\x9b\x64\x26\xa4\xa4\x33\xc8\xb2\xda\xad\xcb\x71\xc4\x4f\x2b\x09\x69\x27\x96\xda\x24\x1d\x9f\xf0\x15\x5e\x75\x06\x8a\x5a\x64\xa6\xd6\xcc\xc0\x62\xf4\x7d\x33\x2e\x77\x54\xb1\xe1\xc5\x78\x69\x68\x0a\x0c\x17\x13\x98\x12\x97\x9d\xe1\xa2\x16\xce\xeb\xe6\xf8\xe1\x6a\x20\x68\x63\x5b\x5f\x2d\xa6\x70\x37\xf8\xa6\x33\x60\xf0\x3e\x3b\x74\x93\x43\xb4\x56\xff\x4d\xde\xd1\x66\x0f\xdf\xe5\x9f\xef\xfa\x89\xc4\xe8\xa3\xaf\x84\xe8\x2b\x7d\x1d\x24\x08\xb2\xe5\x0d\xcc\xe0\x9a\xea\xe4\x56\xc9\xff\xde\xf1\xe5\xb3\xec\x89\x55\xb7\x63\xaf\x6b\xd6\x79\xdd\x8c\x1a\x59\xff\xd0\xbe\x33\xfe\xcf\xb0\xe1\x35\xe5\x6a\x63\xe9\x9b\xf2\x75\x25\xc2\x17\x8e\xdf\x4e\xab\x68\x02\x86\x1c\x54\x59\xa1\x26\x56\x77\x10\x2a\x59\xf5\x93\x50\x7b\xaa\x9f\x2c\xab\x62\x4d\xeb\x25\xd5\x6a\xc1\xbf\xef\x68\x2d\x6b\x05\x40\xab\x7a\x36\x73\x14\xd5\x6e\xab\x3f\xab\x0f\xa9\xd9\xe6\x72\xd1\xe0\xfa\x46\x1d\xc2\x1f\xa9\x12\xf0\xdb\x7a\x26\xdb\xf0\xe4\x3c\x6e\x17\xab\x16\x7d\x87\x27\xd6\x80\x68\x9b\x7f\x5b\x2c\x3f\x5e\x83\x13\xd7\x81\x01\xce\xfa\xbe\x88\x86\x0a\x9a\x83\x82\xc6\x22\x84\x38\x74\x34\xfe\x56\x57\xfc\x49\xb1\x65\xf1\xe9\x68\xdb\x6d\x0e\x9c\x97\xf4\x6b\x41\x6b\xd9\xb5\xf8\xa8\x4b\xfb\x97\x1d\xa7\x24\xba\x33\xc2\xed\xe3\x41\x5c\xf7\xeb\xbd\x34\xaf\x5f\x54\x5c\x52\x2e\x41\x3b\x96\x15\x5b\xed\x2b\xce\x2a\xfe\xd5\x2d\x2f\xa7\xc5\x96\x9d\xea\x32\x4c\xc5\xdf\x8a\x9f\x75\x95\x8a\x7a\xd6\x51\x34\x59\x86\x46\x5b\x98\x1e\x8c\x00\xcc\xb5\xd2\xfc\xb2\xde\x41\x49\x45\x1c\xe5\x75\x04\xf3\x2f\x15\xf5\xf4\xf9\x72\x49\xb7\x92\xb4\x1f\xec\xf7\x03\x93\xe1\x4d\x0f\xd2\x9f\x7b\xa4\x4f\xc8\xec\xda\x6c\xad\xe6\xe4\xb5\xa2\x5e\x24\x07\x03\x94\xb7\xd7\x78\xf9\x4b\x7d\xa0\x96\x9f\x33\x9c\xfd\xe1\xd5\x87\x0c\x3f\xa8\x7d\x9e\x3d\xac\xd8\x5a\x52\x31\x7b\x60\xe5\x4c\x18\xe1\x0c\x67\xe0\xfc\x37\xac\x73\x14\xb1\xce\xb1\x2c\xea\x1b\x2a\x22\xa5\x23\x94\x70\x76\x6a\x47\x04\xd1\xe6\xbb\x3e\x6d\xb1\x5f\x5a\x7e\x86\x45\x42\x7f\x60\x1a\x59\x13\x47\x72\xed\x7c\xca\x4a\xb5\xfc\xc8\xa8\x93\x00\x41\x85\xb3\x1f\x9e\x7f\x78\xf1\x47\x0b\x04\xd6\xa0\xf8\xc4\xb1\x43\x27\x0e\x8e\xc5\xa1\xbb\xa8\xe7\x48\x19\x91\xf4\x51\xb7\xd7\xe7\x39\x72\xa0\x60\x33\xf8\x4f\x56\x7d\x67\x30\xdb\xd9\x22\x25\x5e\x5d\xf8\xb7\x7f\x37\xde\x92\xa9\x97\x5c\x01\xb5\x63\xbe\x75\x3b\x6a\xd4\xb4\x74\xaa\xf3\x75\x59\x5d\x9e\xc9\xd7\xbd\xab\xb1\x3b\x35\x5a\x59\xaa\x35\xb8\x95\xbb\x5f\x02\x05\xb3\xd1\x49\x4f\x35\x6f\x9d\x57\xae\xfa\x15\x9b\x4c\x58\x4b\xbe\xbe\xe8\xff\x8e\xa1\x19\x8b\x6a\xc5\xe2\xb0\x0a\xba\x8e\x1c\x87\x5d\xfa\x70\x23\xaa\x3b\x1e\xea\x90\xa1\xeb\xc9\x24\x03\x95\x2f\xaa\x48\xd4\xd0\x27\x3e\x32\xf5\x07\x33\x42\x4c\x81\x8e\xf7\xb0\x54\x54\x41\x71\x40\x11\xf1\xe3\xfe\x2b\xe0\xa8\xdb\xdf\xec\xf7\x67\xf0\xa4\xb6\x3d\x74\x6d\x1e\x50\xbe\x0a\xb4\xcf\x90\x66\x6b\x27\xd6\xe0\xd7\x1a\xcc\x0c\xe2\xd4\x0c\xb8\x6b\x72\x40\x3c\xcf\x33\x43\x8b\x0c\x83\x37\x1b\x67\xa7\x1c\xf2\x50\x32\xf8\x37\xaf\xf6\xfb\x2c\x43\x4e\x77\xa9\xfb\x9d\x15\x8d\x53\xb8\xe9\x45\x7a\xae\x3f\xaf\x51\x03\x8e\x1c\x7a\xad\x0a\x21\xaa\x2e\x42\xd8\x35\x1a\xb7\x1a\x40\x08\xc8\xd2\x15\xac\x83\x07\x1a\xfe\x8a\x14\x76\xff\xab\xb0\x88\x2e\x8d\xf2\x6e\xef\xea\x99\x55\xe6\x63\x0f\xd5\x19\x0d\x40\x8c\xcd\x70\xb3\x65\x4e\xed\xd0\xa1\xe8\xba\x3e\xb6\x4b\xfd\xec\x03\xfd\x59\xba\x2e\xf3\x33\xcc\x93\x4a\x6c\xa4\x5d\xe4\x9e\xaf\xd7\xad\x17\x39\x0a\xc7\x0e\xd2\x25\x78\xdd\x29\x24\xce\x5d\x55\xe2\x55\x11\x1b\x59\x82\xcc\xfe\x90\x20\x9f\x42\x28\xb3\xef\x6c\x65\x2a\xeb\x50\x25\x00\x97\x94\x4b\x56\xac\x6b\x92\xd5\xc5\x86\x3e\xa9\x04\xbb\x56\x0c\x2c\x85\x64\xf5\x48\xe1\xa3\xba\x27\xc0\x98\xa5\x91\x6b\xbf\xd7\xd6\x8e\xe0\x11\xf4\x66\x28\xd1\x47\x7a\x5f\xe7\xe6\x6b\xab\xbb\x76\x4e\x72\x3b\xb1\x76\xf9\x16\xb2\x8b\x0c\x7d\xf3\xe4\xfc\x22\x9b\x64\xb3\xec\x22\x1b\xc1\xdb\x53\x92\x65\xa7\xf2\x14\xc0\x95\x52\xf0\x22\xdb\xb5\x36\x6b\x7c\x8a\x96\x54\x7f\x7f\x41\xa1\xaa\xbc\x36\x1b\x69\x7d\x3b\x5b\xdd\xdb\xb7\x33\xf3\x56\xff\x74\xf0\x6e\xb4\xe8\x25\xdb\xec\x49\x8b\x91\xc7\x49\x76\x45\x5f\x16\x07\x59\x15\xc5\x15\x3c\x1d\x2f\x6f\x14\xae\x48\xb2\x93\xab\x27\xbf\xcf\xf0\xaa\xa8\xe5\x55\x55\xc9\x99\xa6\x66\xcb\x6a\xb3\xdd\x49\x5a\xe6\x0f\x3d\x82\x05\xf0\x2a\xf6\xa3\x8b\xf8\xe7\x2c\xfe\xe9\xed\xa1\xef\xee\x38\x15\xba\x42\xe7\x74\x5d\x55\x1f\x77\xdb\x3c\x53\xb2\x1c\x5b\xd2\x99\x6d\x9d\xa1\x06\xd7\xe1\x98\x5d\x2b\xad\xeb\x58\x2a\x81\x66\x57\xd3\xd7\xea\xbe\x69\xcf\x3c\xf4\x60\xd2\x06\xad\xe4\x3c\x8c\x2d\xf1\x47\xa8\xc5\x68\xfc\xfd\x32\x25\xcf\xb2\xeb\x19\xe5\xb7\x4c\x54\x7c\x03\x45\xe7\xad\x85\xee\x24\x87\x53\x01\x9d\xbd\xfa\xfe\xcf\x93\x09\x94\xb0\xf2\x0f\xa6\x97\xff\xf6\xef\x3f\xbd\xfa\xf1\xaf\x97\x6f\xbe\xff\xf0\xea\x0f\x3f\x3e\xff\xf0\xe6\xdd\xf7\x50\x13\x65\x32\x39\x81\xfb\xbe\xae\x84\x0c\x10\x2e\x61\x65\x8d\x10\x3d\xf4\x52\x07\x3b\xc2\xb3\xaf\x5d\x70\x57\x90\xc0\xfe\xa1\x81\xa4\x33\x3a\x7d\x81\x0d\x04\x85\x08\x50\x3e\x67\xf3\x6a\xb1\x20\x54\xff\xef\x68\xe7\x30\x5b\x98\xe2\x9d\x1e\xc7\x18\x5a\xbe\x28\x62\xa5\xb4\x9b\x10\x3f\xc8\x2f\x56\x8a\x2f\x5c\x75\xfc\x2f\xfa\x26\x61\xbb\x1d\x66\xdb\x94\x64\x67\x26\x07\xc9\x4d\x02\xd3\xb8\xba\x14\x18\x5f\x52\x62\x95\xcc\x96\x81\x0b\xe6\xa4\xd8\x37\x23\xd9\x26\xad\xc7\x07\x87\x06\x9f\x5d\xed\x41\x15\x70\xf7\x5a\xf3\x1e\x23\x85\xf7\xa2\x69\xbd\xc8\x05\x0a\x27\xc8\xa3\x09\x0a\x37\xc1\xe4\xee\x3d\x7e\x9a\x66\x0b\xbf\xdc\x64\xff\x81\x02\x08\x2b\xeb\x99\x68\xec\xa0\x29\xef\x97\x00\x42\x8a\xc1\x57\xc7\xc9\x0d\xe7\x50\xa5\xed\xf9\x64\x2c\x1a\x6e\x8a\x0c\x73\x2c\x71\xe4\x98\x16\x01\x41\xe8\x59\x99\x69\xa4\x1d\x69\x3e\xf7\x44\xbc\xab\x5b\xcf\x54\x96\x69\xaf\x1c\x3f\x93\xa1\x8d\x00\x7c\x11\x38\xf6\x8c\x53\x27\x31\xbe\x63\x63\x09\x4b\xa4\x37\xec\x87\x77\xef\x63\x12\xd0\x2f\xc8\x89\x40\x90\xeb\x1f\x06\x3f\x40\xbe\x46\xa1\xe0\x58\x0c\x2c\xa2\x52\x2b\x38\x24\xcf\x15\x38\xfb\xe1\xa7\x98\x1c\x94\x7d\x9e\x45\x7e\x0f\xd5\xd8\xdd\xbe\x06\xe0\xa9\xa6\x12\xb9\xfd\x21\x9c\xbd\x7c\xf5\xdd\xab\x0f\xaf\xd4\x5e\x5d\x2a\x5e\x62\xfb\xe6\xe5\x6b\x51\x6d\x7a\xbd\xf7\xf0\xd0\x86\x01\x52\x49\x64\x9c\x13\xc0\xa3\xae\x22\x51\x06\x0b\x60\xe3\xfd\xac\x4b\xda\x71\xd2\xab\x10\x21\xa4\xb8\x88\xf3\x5e\x64\xd9\x2c\x17\xa4\xc2\x9c\x64\x17\xac\x24\xd9\x69\x81\x53\x3e\x21\x86\x59\xf2\xfc\x13\xe5\x65\xfd\x17\x26\x6f\x2e\x9e\xe8\x22\xef\x96\x81\xe3\xd8\xe5\xf3\xb0\x36\x62\x34\x13\xae\x79\xce\xa1\x4c\x5f\x3c\x87\xd8\xf1\xc1\x25\x2e\xf2\x65\xaa\x10\x6a\x79\x3c\x6d\x8a\x9f\x7f\xfa\xf1\xbb\xef\x74\xb9\x8b\xaf\xcf\x7e\xf3\xfb\x23\xb5\x7f\x5a\x3b\xa1\x44\x90\xb7\xc5\x16\x6b\xb2\x6a\xe1\x1e\xf6\x39\x92\x09\x16\x5a\xfa\xbc\xf2\xad\x0d\x85\xce\x47\x50\xbd\x36\x67\x90\x52\xaa\xa6\x32\x67\x78\xbe\x40\x58\x7b\x95\x31\x53\xd4\x4f\x3a\x87\x9f\x2a\xf4\xf3\x4a\x8f\x16\xfc\xd0\xb9\x87\xf5\x77\x67\xb8\x48\x4f\x61\x7e\xb6\x40\x4a\x84\x9b\x7b\x8e\x21\xb5\x0e\x1f\x9f\xd2\x75\xe4\xa4\x53\x56\xba\x1c\x10\x6c\x64\xb7\xe0\xb4\x3a\x95\x90\x9e\x33\x57\xc3\xd7\x7a\x2d\xf3\x05\x42\xb8\x3a\x25\xd2\x28\xc3\x6a\xb7\x5f\xa3\x7a\xce\x4d\xb5\x5e\x0a\x66\xf8\xba\x41\xb9\xc4\x0c\x67\x13\x56\xd6\xff\xe3\xb7\xdf\xfe\x8f\xdf\xbe\x24\x99\x73\x62\x49\x4e\xd1\x55\xde\xf0\xdd\xa8\x9e\xaa\x06\xc7\xa2\x61\x4b\x55\x64\x52\x34\x1b\xa3\xfa\xfb\xdd\x72\x49\x6b\x23\xc5\xfb\x82\xc3\x23\xdf\xc2\x98\xce\xda\x2d\x40\x48\x0d\xcd\x6a\x39\x37\xa6\x5a\x97\xd3\x19\x8c\xdd\xd6\x3f\x1f\xda\x38\x69\xd5\xe8\xa3\x0c\xf1\xb2\xca\xf3\xf2\x25\xc8\xd0\xb4\x7c\xab\xcd\xa1\x6e\xc2\x23\xe3\x12\x4e\xb5\x4b\xf8\xf8\x37\x67\xe7\xb3\x68\x22\x1d\xe3\x55\x5e\xe1\x42\x3b\x1b\x8f\x7f\x73\xf6\xeb\xb8\x71\x6c\x81\x8a\x5a\xfe\x26\x6e\x19\x99\x90\xa2\x86\xff\x2b\x6e\x18\x19\x7f\x74\x43\xeb\xaf\xac\x24\xc6\x6f\xc8\x6f\xcf\xce\x62\xd0\x05\xd6\x1b\x68\xdf\x44\x6f\xcd\xc7\xfa\x0d\x76\xdb\x94\xac\x2b\xf0\x0d\xf9\xfa\xec\x6c\x32\xa1\xcf\x7e\x7d\x76\xb6\xdf\xff\xfa\xec\x37\x8a\x73\x57\x1f\x99\xdd\x49\x7d\xf4\x9b\xaf\xbf\xd6\xad\x14\xd9\x4e\x5f\x41\x86\xeb\xc4\xcb\x8e\xeb\xa7\x15\x4e\x32\x84\x57\xe4\x61\x27\xd6\x33\x8a\xb5\x44\x3b\x93\x0d\x2e\x49\x35\x0d\x54\xc5\xad\x8b\x71\x69\xc5\x2a\xd5\x81\x61\xcf\xf3\xb2\xe3\xd2\xe8\x67\xca\x08\xc5\x70\x19\xa6\xfc\x2b\xd5\x7d\xb8\x52\x58\x9f\xf8\x5e\x87\x47\x57\x1f\xf7\x7b\xda\xd1\x41\x19\xdf\xbd\x54\xf0\x81\xc6\xdd\x5d\x2e\xd0\xe8\xeb\xb3\x33\xf0\x50\xd3\x8a\x89\xc9\x44\x76\xfa\xb9\xc8\xab\x50\xc1\x42\x24\x96\x24\x7a\x62\xdd\x23\xd1\xac\xd5\x92\x63\x25\xd8\x83\x6a\x23\x3e\x19\xd2\x17\xcd\xd5\xb0\x83\xd4\xc4\x79\x85\x29\x66\x9a\x2b\x59\xa1\x4e\x21\xf3\x16\x7f\x09\xb3\xb7\x3e\x9a\xee\x10\xd9\x4e\x00\x60\x33\xf0\x5b\xec\x28\xf9\xda\xb9\xe1\xca\x69\xad\x31\x2f\xaa\x63\xe7\x47\xea\x9b\xc1\xba\x77\x06\xea\xaf\x15\x1a\xe9\xa1\xc5\xce\x78\xc0\xc3\xc2\xa8\x6a\x82\x4b\x0d\xa7\xb0\xeb\xa3\x06\x94\x68\x14\x69\xbb\x88\x18\x59\x6f\xd4\x14\x98\x95\x8c\x0c\x7f\x7e\xa0\x3f\xcb\x08\xe4\x55\x00\xad\xde\xb9\x4a\x98\x6b\x35\xbd\x04\xbe\xa7\x44\x8d\x62\x67\xde\xcf\xc6\x3f\xbe\x7a\xff\xc1\x28\x06\xff\x9b\x7a\x65\x8a\x54\xcb\x6a\x9c\x9d\x52\xc5\xe8\xa8\x87\x06\xef\xa3\x83\xa9\x95\xc4\x9a\x8d\x82\x86\xbc\xaf\xa5\x42\xec\xaa\xeb\x7d\x0a\xed\xc7\x65\x45\x6b\xb0\x9a\xd7\x94\x6e\xd4\xb0\x57\x74\x6c\xab\x66\x33\x3e\xbe\xaf\x76\x62\x5c\x6c\xb7\xde\xed\xb4\xba\xa5\x42\xb0\x12\xdc\x2a\x6e\x59\x31\xfe\xcf\xa2\x2c\xdf\x89\x77\xe6\xe9\xfb\x82\x97\x57\xd5\xcf\x7f\x00\x5f\xd5\xfa\x3f\xa1\xbe\xe9\x0d\x1d\x5b\x65\x85\x31\x5a\x5f\x64\x68\xc4\xfd\xcc\xc3\xb3\x9d\x50\x04\xc0\x69\xd6\x2e\xb4\xc6\x53\xd7\xb9\x99\xe6\x5a\xff\x4a\xd1\xe8\x9f\xe6\x5c\x6b\xb6\x28\x9a\x77\x3f\x01\x4c\x51\x33\x8a\x66\xed\x0f\x2c\xbc\xa6\xac\x7e\x5d\xd4\xf2\x5b\x50\x09\x99\x6f\xc3\x7d\x56\xdf\xea\xa7\xf1\xc3\x66\xd0\xf8\x66\xad\x49\x45\x5d\xb3\x6b\x9e\xb7\x28\x32\x56\xdc\xa8\x22\xcc\xc2\xda\xe4\x3a\x3e\xfe\x5a\x75\x9a\xa1\x91\x8b\x19\xe3\x17\xc2\xea\x72\x5b\x9d\x37\x8a\x95\x77\x7a\xde\x99\xfb\x73\xbf\xcf\xfd\x27\x0f\xce\x01\x56\x4c\x97\x5e\x65\xb7\xdf\xeb\xc5\x75\x95\x79\xa3\xc8\x5c\x91\x84\x74\x2e\x40\xab\x38\x99\x80\x7c\x07\x2c\xb5\x5a\x19\x94\x42\x34\xe3\xce\x33\xd3\xe5\x13\xd5\x67\xb6\xb0\xa9\x4b\xe1\x95\x99\xc7\x13\x69\x5e\xe5\xbd\xef\x08\x43\x08\x0b\xb2\x32\xd2\x27\x42\xb3\x81\xb1\x63\xf0\x08\xfc\x10\xac\x77\x06\xaa\x31\xd1\x32\x3a\x68\xed\xa8\x7a\x4f\x32\x6d\xcc\xa4\x1a\x48\x3f\x4b\x22\x8d\x06\xd9\x8f\x44\xed\x48\xfa\x45\x8f\xe6\xd5\x87\x2a\x4d\xaf\x20\x27\xf4\x7b\xca\xcb\x28\x62\x3f\xd6\x33\xdb\xfd\x4b\x70\x96\x81\x16\x5c\x31\xe9\x06\x09\xb5\x7a\x3d\x17\xd8\x7d\x3b\x17\x0b\x53\x9a\xb4\x71\x80\xc2\x42\x9d\x5f\xe2\x51\x58\xf1\xdd\xf0\x0c\x61\x61\x4e\x56\x2c\xde\x01\x39\x3b\xea\xb8\xc4\xd1\x1a\x89\xc6\x42\xcf\x54\x8b\x60\xcb\x6a\x0d\x51\x8e\x07\x5b\xeb\x00\x17\x45\x86\x5a\x71\x2a\x86\x28\x81\x62\x9d\x82\x3b\xfc\x57\xff\xe7\x46\xca\x6d\xdd\x0a\x5b\x41\x52\xdc\x3b\x88\x9d\x66\x5f\x7d\x05\x11\x2b\xc6\xd0\xc2\xd1\x43\x87\x92\xfd\xb5\xda\x8d\x0b\x41\xc7\xbb\x9a\xf1\x6b\x8d\xf1\xe3\x97\x85\x2c\xc6\x77\x4c\xde\x8c\x79\x35\x56\x53\xea\x12\x6d\x7d\xa9\x4c\xc7\x1f\x6e\x58\x3d\xbe\x63\xeb\xf5\xb8\x90\x92\x6e\xb6\x52\xd1\xb5\x5d\x4d\x81\xa6\xc1\xa7\xd5\x0a\xfe\xb6\xa0\x1b\x9b\xa5\xe2\xf1\xdd\x0d\x5b\xde\x8c\x99\xbe\x20\xb4\x3a\x78\x27\x68\x39\x5e\x19\xea\x69\x2a\xc5\x07\xbd\xb0\xda\x7e\x3d\x1d\xff\xb0\xa6\x8a\xf7\xad\xa9\x74\x43\xfd\xe5\x86\x49\xba\x66\xb5\x1c\x6f\x8d\x0d\x15\xfa\xb2\x73\x0e\x54\xcd\xd3\xbf\xd5\x53\x3f\x23\x80\x04\x58\xc6\xac\xe7\x23\x72\x0e\xf8\xb4\xc1\xdd\xfb\x3a\x71\x8d\x50\x30\x8d\xca\x30\x82\x85\x5a\xfb\x96\x40\x0f\x81\x3f\x7f\x5a\x06\xe9\x92\x51\xa7\x37\xed\x78\xa1\x8b\xc9\x44\x18\xe9\xe6\xc2\xfe\x31\x9b\x5b\x73\x56\x96\x9d\x52\x6c\x8c\x82\x1f\x6e\xe8\xf8\xaa\x58\x7e\xa4\xbc\x1c\x6b\x0e\xa3\xa4\xa5\xde\xd9\x82\x1b\xe7\x2e\x6b\x2a\xcc\xb2\x53\xd1\x2c\x1a\xdc\x27\xfe\xf4\xe9\x0f\x21\x5d\x58\x87\x9e\x65\x90\x6f\x6b\x1c\x51\x40\x17\x2e\x40\x82\xba\x53\x04\x62\x6f\x84\x2b\x30\xff\xdb\xb3\x8b\x6c\xfe\x6e\xc3\xa4\xa4\xe5\x58\x4b\xf7\xf7\xe3\x3f\x7e\x78\xfb\xdd\x22\x9b\x09\x3c\xcf\x02\x0c\xb5\xa6\xcd\xec\x34\xe7\xc6\x88\x05\x46\x4d\x0e\x47\xfc\x34\x1b\xeb\xf1\x68\x39\x2e\x14\xbf\x83\xb3\x1f\x34\xfb\x3b\xce\x21\x0e\x1c\x65\x98\x2d\x8c\x96\xe2\x3f\xb8\xba\x6b\xbd\x9e\x3b\xb1\xc3\x0f\x50\xa5\x95\xfa\x0c\xc5\x26\xc4\x42\xbb\x76\xdb\x5f\x44\x20\xbf\xd7\x91\x23\x42\xd9\xe7\x88\x50\xd2\xab\xdd\xf5\x21\x9f\x38\xdd\xa8\xa6\x72\xb7\xfd\xdc\xee\x70\x83\xee\x6a\x0a\xd0\x86\x83\x74\x7e\x3c\xe0\x69\x6f\xb8\x0a\xc6\x61\x34\x63\x62\xca\x33\x78\x97\x21\x7c\x4d\xe5\x6b\x70\x47\xa9\xbb\xa6\xad\xf9\x03\x2f\x36\x74\x96\xb1\xfa\x7b\x7a\xa7\xf0\xaf\x5e\xce\x32\xf5\x67\x83\xdd\x9b\xb7\x55\xc9\x56\x8c\x96\xf6\xb5\xfb\x1d\xb4\x79\xb1\xa6\x05\xb7\x0d\xf4\x0f\x85\xc0\x97\xea\xfd\x87\xea\xc5\xba\x48\x8b\xa8\x6d\x22\x6c\xa6\xac\xb5\x77\xaf\x2b\x01\x1c\xce\x9d\x3a\xb9\x6f\xd5\x13\x85\xba\x11\x97\x13\x29\xf9\x13\x01\xbc\x16\x04\x15\x61\xd3\xcb\x50\x63\xab\x60\x69\xb3\x38\x83\x47\x8d\x3a\x2c\xf5\xdb\x62\xfb\xba\x12\x28\x67\x68\x54\xa7\xf4\x4a\xb8\x42\x0f\x7c\x0a\xf3\x51\x53\x79\xb3\xfa\x89\xd7\x14\x6a\x3e\xd6\x58\x09\x05\x42\x09\xe5\xa0\x70\xeb\x0c\x16\x5d\xb9\xce\xd1\x29\xdd\x95\x9e\x8d\xe9\x0f\x57\xda\xce\xca\xb0\x34\x69\xd6\x77\x24\x88\xbc\x41\x0f\xc5\xa0\x12\x48\xe7\x38\x4a\xce\xa8\xc2\xa9\x45\x02\x16\xd7\xa0\x85\x93\x90\x10\x03\x21\xcc\xa7\x82\x02\x8d\x7f\x0b\x27\xbb\x9e\x0a\xba\xa9\x6e\xa9\x46\x6f\xb5\x47\x91\xc2\xb7\xd5\x76\xbb\xab\x6f\x4c\xcb\x1d\xc2\x3b\xb3\x9f\xe1\xa2\x13\xb1\xfe\xa6\x0c\xed\xc9\x19\xc4\x00\xaa\x0d\x15\xae\x2a\x04\xf5\xe8\x21\x10\xae\x35\x53\x71\x27\x8a\xad\xc3\x11\xa8\x12\x3d\x32\xfa\x2f\x78\x5d\x5d\x81\x40\xe2\x5b\x40\x99\x09\xcc\xf3\x79\xbd\x80\xec\xce\x6a\x04\x48\x1f\xd2\xe0\x65\xb5\xde\x6d\xf8\xf7\x80\xb9\x2f\x15\x42\xf7\x22\xae\xb3\x83\x6f\x99\xd4\x9e\x9a\xd1\xf3\x1d\x57\xec\xd0\xb2\x12\xea\x02\xf2\x81\x39\x97\x5f\x5d\xe3\x6c\x9c\x59\x47\x0f\x64\x47\xac\xfb\x03\x51\xb5\x0f\x3f\x71\xa7\xd5\x9d\xc5\x37\x65\xd6\x2c\x30\x87\x8c\xb8\xaa\x51\x97\x5d\xa6\x38\x2b\xa4\x14\xec\x6a\x27\x69\x9d\x25\x35\x86\x06\xd8\xfc\xf4\xf4\x1b\x36\x75\x8d\xbf\x63\x1b\x66\x05\xb0\x93\x73\xe3\x8f\x2f\xa7\x6d\xe8\xe4\x15\x72\xe9\x7d\x61\x76\x95\x9e\x5a\xa1\xa3\x88\x84\xba\xc5\xa4\xd1\x2e\xb7\x54\xca\x6c\xe5\xeb\x42\x9b\x4b\xe7\xd9\xd7\x9e\xa8\x5f\x02\xa1\x55\xd7\x56\xc1\x38\x15\x7f\xa2\xf7\x51\x9e\x28\x61\x2a\xc7\x42\x11\xc7\xf5\x2c\x9f\xfe\x4f\xf4\x15\x1a\x99\x98\x4f\x0e\xb1\x43\x7c\x7e\xbe\xf0\xfc\x83\xd1\x28\x4a\x47\x19\xa7\x5b\x4a\x3f\x3e\x5f\xaf\xc1\xbf\xd6\xcd\xf2\x05\x2c\xf0\xcf\x8a\x28\xa7\xac\xd5\x66\x2b\xce\x30\x27\x0f\xac\x9c\x45\x80\x66\x65\xe6\xcf\x02\x9d\xd2\x62\x79\xf3\xdc\x82\x33\x2e\xa5\xa7\x16\x72\x7a\xfa\x8d\xec\x05\x37\x9f\xb3\x05\x09\x3b\xd7\x95\xb6\x78\x30\xd1\x3f\xd1\xfb\xbb\x16\x54\x7d\x90\x9e\xe3\x70\x9f\xe7\x73\x35\xaf\x05\x3a\x3c\x2f\x8f\xde\x22\xd4\x40\xa7\x54\xec\xa1\x2c\x00\x4d\xc3\xa9\x0a\xad\x6f\x96\xc1\x5c\xf5\x05\x94\x00\xaa\xf1\xff\x81\xfb\x47\xd7\xb6\xcc\xcd\x65\x84\xb0\xbf\x7a\xec\x9b\x9b\xa2\x7e\xc9\x84\xbc\x7f\x1e\x60\xf4\x64\x72\xd2\xf9\x0e\x6e\xa0\xd9\xc9\xc0\x57\x4d\xbc\xe3\x95\x48\x40\x31\xbb\x5a\x17\xcb\x8f\x99\x07\x5c\x38\xca\x85\x24\xd9\xb5\xa0\x94\x67\xc3\x93\xcb\xa1\x9f\x1d\x24\x17\x6f\xb0\xa1\x43\xc9\xd8\xfc\xf0\xae\x7f\x9e\xfb\xd0\x7a\xb3\x83\xd8\x5e\xd2\xa9\x81\x16\x8a\xbd\x39\xbc\xaf\x3c\xd8\xd7\x91\xb7\x74\x8e\x78\x62\x8b\xb9\x55\x79\x06\x4c\x83\xcc\x19\x50\x5a\x9b\xf0\x03\xa1\xc6\x28\xc1\x8a\xb2\x7c\xa7\xd7\x26\x72\x8a\x39\xae\x20\xde\x47\x0d\x16\x7a\xa6\x18\x85\x99\xb9\x3d\xa2\xe6\xda\x48\xd1\x51\x60\xa2\x87\x14\xfa\xb5\xef\xb7\xe6\x48\xd7\xee\x90\x75\x1b\x8e\x5e\xfc\xfc\x9c\x5d\xc0\x61\x10\xde\xc7\xe9\x29\x69\xf0\x2f\xb4\xf8\xf8\xb6\xd8\x46\x65\xf2\x2d\x4a\x9a\x23\xe6\xe0\xd4\x0a\x96\xb4\xe6\x39\x6d\x45\x53\xd3\x56\x58\x67\x36\xda\x79\x59\x79\x53\x64\x87\x29\x18\x1d\xd5\x2a\x11\x16\xcc\xb5\x83\x91\x37\x9e\xdd\x14\x75\xae\x17\x8d\xf6\x7b\x7d\xc1\xea\x9f\x50\xda\x87\x05\xb1\x69\x8a\x7f\xf0\xe0\x30\x57\x5c\xb4\x6b\x85\x2c\x9e\x38\xef\x5f\xc6\x99\x6c\x07\x4e\xa0\x87\xa6\x37\x21\x13\x5c\x0f\x3d\xe9\x98\x06\x82\x56\x8f\xc0\x89\x4e\x8e\xa6\xd4\x8e\xd1\xf9\x99\x22\xc6\x74\x7e\xae\xee\x69\x3a\xff\xda\x19\x18\x7f\x0d\x8e\x54\xae\xa8\x42\x22\xe2\x5b\xee\xf7\x1d\x89\x53\x4e\x26\xe6\x8e\x93\x68\x32\xc9\xb4\xc2\x27\x12\x48\x13\xb1\xd2\xee\x1b\x3e\x99\x64\x3e\x94\x26\x63\x5c\xbd\xcb\xac\xc4\xef\x9e\xed\xf7\x3e\x88\x3d\xc8\x56\x9b\x0c\x5e\x0c\x93\xc4\xb5\xaf\x73\xac\x31\x5a\x47\x41\x4b\x64\x8b\x10\x40\xd8\xb3\x50\x37\x9c\xfb\x00\x8a\xb0\x19\x22\x95\x0b\x74\x41\x73\x34\x2d\xb6\xdb\xf5\xbd\x09\x89\xc4\x02\xcd\x68\xfb\x49\x63\xd2\x4a\xb0\xb6\xb7\x66\xb7\x4e\xf1\x45\x2e\x08\xc5\xd4\x9c\x36\x34\x13\x44\xec\xf7\x0f\x8d\x51\x7c\x3e\x80\x2a\x94\x62\x56\x3b\xfa\x39\x3b\x39\xc3\x1f\x19\x2f\x67\x9e\x7d\xca\x70\x65\x14\xad\xa2\x89\x19\xad\x1e\x07\x42\x1a\xf9\x20\x5d\x32\x2e\xa9\xe0\xc5\x1a\xb8\xd0\x84\xa9\x26\xbc\x54\x85\x3b\x6c\x5a\x0c\x52\xe7\x49\xcd\x2d\x17\xe0\xf3\x4b\xd1\x05\x07\x3f\x57\x3b\x37\xb8\x5a\x73\x8a\x3a\xca\x8b\x74\x2e\x01\x77\xcc\xe1\x3b\x9f\x00\x3e\x7c\x6a\xa0\x0d\x56\x0d\xb7\x4f\x2e\x7c\x23\x6a\xea\xbd\xec\x6c\xb8\x29\x3d\xec\xd8\x18\x81\x43\x11\x88\xf8\x52\x33\x99\x9b\xd0\x74\x43\x65\x91\x73\x77\x65\x15\xad\xed\x96\x2e\x9b\xc9\x28\xb5\xed\x9c\x50\xcc\xdc\xb6\xe7\x9c\x48\xcc\x08\x85\x6a\xbb\xf1\xc9\x61\x93\x49\xce\x88\xf0\x86\xe9\xb7\xd6\x85\x24\x67\xce\xf1\x40\x23\x0a\xc3\xac\xfe\x91\xae\xc1\x7d\xb2\xbe\x61\x5b\x85\x2b\x16\x35\x38\xe1\x0a\xb1\x0c\xee\x5c\x39\x5f\x24\xac\xe9\x9a\x71\x4e\x1a\xab\x27\x1f\xa9\x8e\xbf\x3a\x1a\x99\x06\xc0\x77\x4d\xa5\xcf\xe0\xf5\xc9\xc0\x0f\xba\xc0\xd2\x38\x4f\x1d\x18\xc8\x6e\x50\xe5\x36\xa8\xee\x6e\x50\x77\x63\xe0\xba\x0a\x0e\x24\x96\x44\x02\xdc\x3a\xfb\x42\x75\x4d\xa9\xd4\xbe\x50\x84\x5a\x07\xd8\xee\x82\x4c\xec\x90\xde\x91\x1b\xe3\xa6\x66\xf6\xe3\x8f\x45\x3d\xd6\xbf\x3f\xf3\x6e\xd8\x44\x6c\xe9\xbd\x30\x69\x72\xfb\xc9\x82\x70\x7b\xe2\x3a\x52\x3b\x22\x5a\x5d\x47\xc7\x03\xdb\x94\x7a\x40\x6f\x7f\x10\xd5\xcf\xf7\xde\xa3\xfa\x25\xdd\x0a\xba\x2c\x24\x2d\x5f\xdd\x42\x0d\x1a\xfc\x70\x29\xc0\x0d\x98\x8a\x3f\x82\x5b\x88\x68\xcb\x67\x7a\x7a\xb6\x11\x2d\x6d\x33\xf2\x70\x45\x97\xc5\x86\x5a\x37\x02\x8a\xf5\xef\x3f\xc3\x2f\xd9\x34\x58\x2b\x42\xbf\xf5\x87\x59\x6d\xd7\x90\xcb\x72\xe0\xe3\xf0\xb6\xd8\x42\xd5\x7a\xe8\xe2\x75\x92\x31\x6f\xab\x79\x92\xc3\x65\x6d\x66\xc4\xf3\x21\xd8\x31\xd9\x4a\xf6\xd7\x1c\x55\x83\x8d\xc2\xb9\x6e\xcd\x73\xba\x29\xb6\xdf\xde\xe7\x56\xad\x9a\xe1\xcc\x34\xcc\x10\x36\xcf\x8e\x58\x99\x1b\x11\xf6\x89\x7f\xe4\xd5\x1d\xb7\x7c\x63\x8f\x94\x39\x75\x20\x30\x19\x46\xb5\x32\xa4\x55\xef\xbc\xc1\xac\xd6\x05\x15\x5a\xd3\xe6\x95\xcc\x33\xdd\x18\xd2\x82\xd8\xc2\x53\xb8\x28\x87\x24\x0f\x0f\x55\xd3\x6f\x86\x46\xc6\x6c\x53\x96\x06\x09\x27\x93\x93\xde\xc6\x93\x49\x1f\xda\xf4\xbf\x99\x46\xf8\x94\x83\xa9\xb5\x33\x49\x03\x94\xcb\x15\xe3\xe5\x3b\x93\x59\xcd\xe8\xc3\xeb\x80\x5c\x81\x20\xa2\x88\x4d\x9d\xcb\x28\x83\x86\xb9\x47\x13\xef\x79\x25\xd9\xea\xde\xee\xc6\x8b\x1b\x5d\x43\x06\x0c\xd6\x89\xb1\x5a\xd3\x0a\x0a\x77\xb5\xc7\x72\x12\xdc\xa6\xf8\x48\x03\x1e\xc8\xb3\x44\xce\xcf\xcf\xb8\xb0\xf3\xa8\x96\x91\xbe\xed\xf8\xbc\x5a\xe0\xda\x54\x6c\x51\x88\x68\xd1\x0f\x17\x68\xc4\xe6\xd5\x82\xd4\xfb\xfd\x83\x63\x52\xc0\xc0\xab\xad\x04\x85\x53\x7d\xb0\x06\x6b\xa1\x6b\xd0\x7a\xed\xf6\x70\xbf\xcf\xed\x56\xa9\x8f\xd4\x52\xbe\xc4\x7e\xff\x59\xef\xb6\x02\x74\x62\x76\x6c\x95\xf7\x63\x59\x74\x4e\x74\xfc\x99\x02\x4d\xc0\xaa\x51\xeb\x9e\xe1\xbf\xb6\x27\x18\x29\x2a\x10\x20\xc1\x91\xe4\x64\xaa\xbd\x54\x15\x34\x86\xd0\x66\xe0\xa5\x3b\x8e\x4d\xa3\xab\xa1\xcc\x3a\xb2\xf1\xd0\x6e\xd8\x34\xe1\x9f\x03\xe0\x9d\xe1\x75\xd0\x08\x68\x03\x8e\x82\xfc\x91\x40\xd3\x75\x50\x92\xbe\x94\xc0\x93\x04\xbe\x9d\x58\xba\x44\xe8\x3d\x5e\x9d\x34\x0d\x56\xfd\x75\xe7\xea\x0b\xd2\x22\xa8\x6e\xbd\xc4\xa9\xc0\x7f\x53\x24\x0d\x12\x5d\x7a\x61\x8c\x61\x67\x4d\x83\xf0\x9a\x1c\x8c\xba\x31\x37\x58\x9f\xdb\x82\x08\x78\x92\xfa\xdb\x7b\x83\x58\xbd\x0e\xb3\x82\x68\x5b\xc0\x88\xc2\x15\x26\xa0\x78\xad\xd6\x55\xcf\x17\x48\x57\x1f\xcb\x45\xe8\x20\x8b\x69\x83\x22\x6a\xbf\x1c\x9a\xb3\xf6\xde\x75\xce\xf6\x61\xe0\xd0\xf3\x3c\x76\x09\xa7\xc5\xf2\xe6\x85\xe9\xc3\x29\x3c\x02\x85\x20\xe6\x5a\x89\x3c\x8d\x19\x2f\xf4\xc0\xa7\x1f\xe9\xbd\xf1\xb9\x62\x66\x3d\x90\x0a\xc1\x37\x7a\xab\x59\x98\x91\x33\xe4\x69\x5f\x60\x53\x14\x94\x41\x16\xf0\xce\xc2\x56\x87\x37\x23\x91\xbe\x0e\x1b\x3a\xdd\x89\x30\x38\x66\x91\xda\x45\xb6\xb5\x42\x88\xa6\x51\x4b\xe4\x98\xe9\x9c\x4e\xea\x8f\x6d\x21\x28\x97\x8e\x55\x25\x02\xd3\x39\x5f\x10\x25\xd8\xf9\x4f\x5f\x8b\x6a\x03\x6b\x67\xc8\xed\x1d\x2e\x87\xd6\xe5\x8b\x29\x5a\x55\x4f\xf7\x24\x46\x38\xa6\x41\x00\xe7\x30\x74\xf4\x90\xe9\x1c\x7d\xb7\x36\x7b\xfb\x9c\x2f\x4c\x9d\x76\xbd\x38\xcc\x90\x37\xc3\xc7\xfb\x70\x63\xe7\x0b\x87\xd1\x40\x8d\x51\x5d\x63\x78\x8b\x37\xf8\xb6\xbd\xa0\xcc\xb8\x13\xbc\x97\xa0\x68\x49\xa9\xf5\xe2\x35\xb5\xd9\xeb\xf0\x7b\x0c\xca\xcc\x70\x42\xf7\x24\x6f\x0f\xa8\x4f\xb4\x59\x6a\x86\xbb\xfc\xd9\x49\xee\xad\x03\x71\x63\xf4\xcd\x59\x7b\x80\x5b\x34\xda\x92\x5b\xbc\x21\xb7\xb0\xc6\xeb\x64\x3a\x91\x24\xc7\xcd\x38\x8b\xe2\x0b\x83\x24\x08\x46\xda\x86\x2d\xf4\xd2\x76\x83\x2f\x35\xc9\xfb\x9e\xca\xbb\x4a\x7c\xd4\x14\xaf\x4e\x13\xee\xa7\xf3\x8c\xd5\x40\xe3\xb3\x45\x9a\xa6\x38\x4d\x76\x3f\x1d\xf5\xfc\xe4\x2d\x66\xf5\x77\x55\x51\x32\x7e\xed\xfe\xa6\xe5\xec\x16\x77\xf5\xcf\x6d\x06\x38\xda\xe1\x29\xd3\xcd\x53\x70\x0f\x8c\x32\xc9\x4f\xb4\xf1\xb2\x7e\x5f\xdc\xda\x59\xe8\xe4\xb6\xe5\x6c\x8b\xb5\xcd\x60\x83\xcd\x9a\x67\xf7\xf8\x72\x53\x88\x8f\x86\x8b\x34\x1e\x09\xcf\x8d\x2d\x20\x54\x15\xe2\x52\xf5\x0d\xa6\x36\xd5\xa3\xf6\x39\x39\x39\xd7\x9f\x1b\x57\x90\xbe\x8f\xf5\x8e\xd1\xa0\x51\x4d\xe6\x0b\x73\x25\xaf\x8b\xda\xe4\x01\xd2\xae\xa0\xda\x8d\x2f\xb1\x7f\x39\x80\x59\x27\x2b\x51\x0b\x3b\x39\xc7\xe1\xf2\x67\x72\xfa\x63\x55\x19\x50\x40\xb1\x2c\x1c\x9f\x00\x93\x41\x06\x8c\xff\xda\x43\x56\x7b\x9e\x1c\xa4\x88\x80\x5e\x92\xec\x2c\x4d\x0c\x64\xa4\x8e\x34\x18\x7d\xae\x68\x01\x2f\xf3\x2c\xe2\xd4\xd5\xf6\xe0\xfe\x56\x7f\xb6\x6d\x10\x96\xad\x23\xc4\x82\xf8\x80\x5a\x03\xa5\x8c\xf7\x48\x49\x00\xf0\xda\xf0\xdd\x1f\x2a\xaf\x9a\x4b\x88\xa9\xc1\xc9\xcd\x90\x97\x55\x2c\xa7\x13\xf6\x54\x77\xf6\xb3\xf5\xb1\xe1\x42\x1a\x5c\x04\x89\x0f\xfa\x93\xf6\x0c\x6a\x02\x34\x9c\xdf\xf3\x62\x5b\xdf\x54\x32\x47\x41\x56\x1f\x25\x61\x28\x90\x98\x24\x3c\x25\x2b\xd5\x09\x73\x3f\x74\x0a\x68\xf7\x53\x0b\x21\xee\xa7\x3e\x06\xfa\x67\x2c\x8d\x07\x8f\x82\x89\x8b\x6a\xbd\xa6\x90\x28\xc7\x2e\x84\x0f\xe6\x86\x6e\xeb\x87\xb8\x85\x27\x14\xc5\x64\xea\xab\x28\x8c\x6f\xf0\xf3\xf0\x1b\x58\x76\x3a\x8e\xcc\x9e\xae\xf8\xe3\xb0\x6d\x0e\xdf\xd6\x52\x54\xdd\x98\xcf\x78\x06\xf1\x57\xfa\x28\xd6\xc5\xad\x86\xfa\x8e\xa7\xf3\x0a\x99\xc0\x96\x97\x7a\x04\x5a\x5a\xb7\xd4\x78\x42\xe1\xd7\xb9\xa7\xd0\xfe\xe6\xeb\x91\xe7\x47\x37\xc9\xab\x5c\x18\xf3\x3d\x75\x37\xf1\x33\x06\xb7\xb1\x20\x8a\x65\xc0\x32\x4d\xac\x85\x26\xd6\xfa\xd6\x2d\x03\x52\xdc\x43\x63\xdb\x78\xd9\xfe\x4e\xad\x44\x21\xc9\x55\xb1\xfc\x98\xee\x2d\xd5\x4d\xf7\x0b\x80\x48\x8c\xf5\xc7\x4e\xa9\x75\x54\x1a\x6c\x33\x0d\xbc\x52\x57\x6a\xcd\x2a\x7e\x5c\x4f\x56\x0e\x8a\xbb\x67\x65\x83\x15\x06\x24\x72\xee\x84\x9e\x13\xd2\x46\x3c\xc4\xcc\xe3\xc3\x56\x3f\x9d\x25\x8f\x87\x46\xac\x76\xac\x89\x37\xa7\x83\x71\x53\x9d\x76\x85\x39\xdd\x09\x98\x70\x3a\x33\x85\x94\xb2\xd4\x98\x6f\xa8\xae\x9d\x03\x54\xc9\x38\x7d\xeb\xb4\x4a\xf1\xb3\x59\xbb\x51\xa3\x84\xab\xc7\xaf\x4b\xcf\x57\x09\x18\x7d\x2b\xe3\x66\x65\x4a\xf0\x8e\xe9\xf7\x55\x22\xd6\x77\x70\xfb\x05\x5d\x51\x41\xf9\x52\x09\x07\x79\xa8\x38\x57\x27\xf6\xa6\x13\xc0\xfc\x88\xbe\x9c\xca\x17\x74\x3a\x60\x03\x7e\xc3\x57\x55\x97\x89\xd2\x9e\x12\x58\x92\x87\xc6\xc8\xad\x56\x28\x48\x99\xd5\x43\x7e\xaa\x15\xa1\xc8\x9d\xab\x4e\x60\xa3\xc7\x5b\x4f\x21\x28\xa6\x3f\x6f\x0b\x0e\x29\xa1\x17\x1d\x11\x24\x14\x2f\x22\x89\xd9\x85\x21\xc9\x39\x9b\x7e\x64\xbc\x5c\x8c\x9c\xa1\xae\x82\x10\x43\xf7\x42\x71\x25\x3c\xf4\xcb\xd1\xcf\xc3\x49\x54\xc1\x24\x90\x2b\xc1\x49\x9d\xe5\x9e\x1a\xe7\xaf\xa0\x93\xec\xf5\xba\xb8\x8e\x97\xa2\x98\x4e\xcd\x1a\xa6\x5d\x13\x70\x66\xf9\x37\xf8\xd3\xf0\x6f\xf0\xb7\x49\x90\xe3\x1c\x1b\x1c\xf7\xda\x20\xfc\x60\x1d\x87\x61\xab\x6c\x12\xed\x77\xf2\x86\x8a\x80\xd2\x9e\x9c\xe9\xf0\xd5\x7a\xc6\xd5\x62\x14\x95\xb8\x0d\x64\x90\x99\x68\x9a\x06\x6b\xfa\xe9\xac\x16\x9a\x80\x46\xa8\x34\xac\x06\x6c\x6f\x49\x8a\xff\x58\x56\xbc\x96\x62\xb7\x94\x95\xe8\x6e\xa1\xbe\x39\x23\xc9\xaf\xa5\xd7\x4e\x8b\x3d\x41\xa7\x7d\xaa\x03\xab\xbc\x66\x1c\xaa\x26\xf5\xf4\xdb\x99\xa2\x6f\x9e\xd3\xa4\x99\x07\x78\x4b\x64\x61\x67\x2c\x0e\xcf\xcb\x92\x96\x8f\x04\xdc\x20\xd7\xd6\x86\x5a\xc7\xf8\x37\xba\x9e\x0a\x5a\x6d\x29\xcf\x1f\xa4\x60\xd7\xd7\x34\x65\x0e\x50\x5d\xcd\xe9\xa2\x27\x6d\x7a\xa4\xa3\xed\x18\xa8\x79\xa0\x8d\x15\x4f\xce\x11\x66\xe4\xfc\x29\x7b\x26\xc0\x44\xcd\xe7\xec\xc9\x79\xcb\x48\x2d\x43\x41\x8d\xa3\x26\x08\x69\xd5\x56\x86\x51\x65\xef\x9f\x21\xb9\xae\x37\xf7\x65\x10\x29\x8e\xb3\xb2\x90\x45\x06\x91\x23\xce\x3e\xaf\x64\x85\xbe\xf4\x97\xb1\xd1\x18\x54\x5d\xd3\x4b\xd5\x87\x1a\x2e\x80\x64\xf5\x6f\xef\xdf\x7d\xdf\x67\x75\x48\x21\x42\x2b\x59\xbd\xcf\x8b\xe9\xf4\x29\x07\xee\xf2\x51\x10\x39\xe2\x13\xcf\x83\x01\x0b\x08\xe6\x15\xe9\x2c\xb2\x4e\x58\xd2\x05\x38\x20\x52\xb1\xa4\x6f\x4a\x05\x6a\x73\x2d\x8a\xf4\x8d\x5f\x53\xf9\xa6\x84\x04\x79\x69\x80\x0d\x2a\x19\x70\x76\x29\x8b\xeb\x2c\x6d\x04\x65\x65\xd3\xf4\xf8\x00\x45\xfb\xc7\xca\x0c\x5f\x79\xd0\x83\x1f\x74\xfe\x00\x7e\x6d\x74\xad\x88\x97\x53\x43\x69\xae\x3c\xa1\x1b\x3b\xca\x54\x33\x44\x1b\x82\xb4\x2f\x32\xf0\x9c\xd5\xae\x39\x8e\x70\xbc\x2d\xb6\x47\x58\xb1\x12\x0a\x35\x10\xd0\x53\xc4\x67\xc0\xb0\xe4\x86\x34\x25\x62\xe6\x74\xe1\xca\x8f\xa8\x83\x1c\x3a\x4d\xe8\xea\x70\x21\xb5\xf2\x2b\x9a\xd3\x05\xe1\x98\x1b\x43\xcd\x9b\xe1\x59\x40\x77\x09\x00\xeb\x2e\xd9\x2a\x3f\x71\x65\xe4\x5d\x8d\x32\xf0\x44\xc6\x85\x75\x32\xde\x50\x38\x59\xde\xdf\x0b\xe1\x1d\xa9\xa7\xc6\xe8\x3c\x32\x25\x47\x08\x21\x3b\x4b\x60\xa3\x1e\xd9\x2a\xf7\x2f\xb8\x6f\x84\x19\xc9\xab\x00\x4a\x83\xc4\x9e\x23\xa4\x2f\xf2\x82\x54\x6e\x64\x28\x49\xa2\x57\x87\xeb\xb6\xee\xd1\xe4\x86\x0e\x9c\xc6\x5b\x31\xcd\x6c\xbf\x87\x8a\xdd\xfd\x33\xd0\xfb\x74\x52\xd8\xe5\x54\xc6\xd0\x5f\xe8\x5d\x0d\x6a\x57\xe0\x1d\x89\x6b\x1f\xd4\xe8\x02\xf2\xe6\x4b\x2a\x52\x89\x14\x44\x17\xa8\xa0\x44\x45\x6e\x6d\x46\x41\x27\x2d\xb4\xbc\xff\x93\x7d\xb2\xdf\x73\x12\xfc\x84\x20\x66\x05\x6f\x33\xd9\xdd\x64\xa2\x59\x1b\x43\x8a\x2b\xbc\x03\x97\x6f\x45\x9d\x97\xea\x44\x4e\x26\x34\x0f\x7f\x03\x74\x2a\x84\xab\xc0\x9b\xc5\x94\xdd\x26\xeb\x96\xfd\xd5\xa1\xca\x92\xac\xbb\xcb\x94\x81\xb3\x72\x6b\x99\x32\xb9\xcc\x31\x25\x84\xf0\x60\x25\xa3\x73\x42\xc8\xd2\x7b\x89\xad\xc9\x12\x61\x4e\xd6\xf3\x33\x53\x2f\x82\xe9\xbf\x0d\x4a\xc0\xdf\xa6\x4b\x5b\xe5\x1b\x5c\x23\x84\xf6\x77\xe0\xda\x0b\x82\x39\x47\x89\xa2\x89\x19\x93\x7a\xb6\x8e\x7e\xab\x4d\x3d\x42\xaf\xf4\x60\x19\xf4\xf9\x22\xe0\xfc\xe7\x8b\xe6\x31\xea\x75\x1d\x6c\xd5\x51\xaf\xd3\xb9\xd0\x2c\x6d\xdb\xcc\xa1\x27\x4a\x4b\x1d\x16\xb2\xc4\x89\x43\x33\x2b\x71\x42\x1d\x3e\x5b\xe1\x15\xa3\xeb\xf2\x88\x85\xb5\xec\x39\x9f\xbc\x0c\x5d\x41\x5c\xbd\x83\xb5\xa0\x99\x6a\xe0\xd8\x1d\x53\x88\x39\x97\x81\xb3\x7e\x96\x34\xe7\x1c\xe0\x45\x3f\xd5\xde\x14\x15\x0c\xc0\x1c\x1b\xed\x82\x1b\x4d\x03\xb9\xd7\xf4\x9d\x1c\xd6\x6c\x4c\x36\x64\x6a\x10\x73\xbe\x18\xb9\x71\xa1\x24\xa9\x4b\xe7\x10\x2e\x33\x31\xba\x0d\x13\xf8\x48\xef\x31\x57\xff\xab\x13\x60\x12\xd2\x04\xec\xad\x08\x2e\x0c\x76\x11\xc8\x95\x90\xfe\x53\x7d\xd4\x7a\xc8\x2f\xb2\x8a\xd3\x0f\xd5\x3b\x4e\xb3\x59\xb6\x29\xf8\xbd\xfd\x3b\xd9\x4c\x17\x63\x34\xed\xcc\x8f\x64\xc3\xef\xab\xa0\x43\xf8\xa1\xc5\xe6\xb4\x06\xfd\xf3\x62\x62\x80\x68\xb9\xae\x38\x02\x01\xc5\x06\x23\x51\x12\xd3\x40\x69\xb7\xaa\xc4\x26\xd2\x2e\x7d\xf2\x34\x93\x12\xb4\x9e\x9f\x8e\x63\xf6\x07\x44\x73\x26\x3d\xc8\xdf\x27\x4f\xb4\x51\xf0\x40\xd0\xcb\x00\xc2\x7f\x48\x2c\xfc\xc0\x60\x49\x58\x3d\x66\x5c\xab\xe9\xea\x72\xa9\x99\x0e\x6f\xc9\x4e\xdb\x63\xba\x3b\x37\x73\x5c\xf4\x65\xd2\x12\x65\xca\xac\xee\xa4\xe2\xac\xe1\x52\xc6\x69\x77\x30\x73\x6a\xde\xd4\xcf\xeb\x7b\xbe\x54\x3c\xb8\x33\xfa\xa8\xbf\x1f\x6b\xbb\xb2\xe5\x79\x74\x17\x24\xfa\xb5\xdf\x9f\x9c\x9b\xca\x39\x40\x13\xc8\x99\xfe\x65\xb4\x51\x81\xfd\x44\xdd\x9b\x9e\xfb\xda\xef\xfd\x1b\x56\xff\x50\xad\xef\x37\x95\xd8\xde\xb0\x25\xe9\x3e\xf2\x63\x84\xb6\x15\x67\xad\x59\xad\x77\xf5\xcd\x8b\x82\x57\x9c\x2d\x8b\xb5\x49\x6a\xa4\x7d\xcb\xb5\x61\xf1\xe4\xdc\x2e\x21\x78\x6a\xfc\x15\x1b\x5c\xf0\xfb\x9f\x40\x11\x4c\x53\xa9\xe9\x4f\x3a\xe3\x26\x79\x20\xa7\x3f\xba\x64\xf5\x4b\xba\x29\xa4\x11\x8e\x18\xbf\xde\xef\x4f\xa8\x03\x17\xb8\x8d\xcd\xcf\x16\xd6\x8d\xc7\x8e\xfc\x26\x32\x0a\x25\xed\xc4\x67\x4f\xe9\xb3\xee\x64\x0c\x25\x3e\x3d\x8d\x65\xbf\xb0\x8d\x91\xa8\x65\x7a\x6e\x32\x98\x1b\x8a\xd2\xbd\x29\x04\x33\xb1\xc6\x7f\x61\xeb\xb5\x55\x07\xe0\x73\x7c\x86\xba\xdb\x01\x69\xd9\x96\xf0\xde\x6a\xe9\xa9\xf7\x5b\x4b\xb4\xb7\x0e\x53\x9d\xc1\x5e\xb2\x32\x1e\xeb\xe4\xac\xb1\xe1\x54\x0d\xd6\x3a\xd5\xe7\xa9\xb4\x23\x7d\x2b\x77\x39\x2f\x7c\x1a\x92\xa9\x8b\x19\xca\x51\x83\x63\x0c\x6a\xc5\xa5\xba\x0e\x5c\xee\xfb\x13\xb5\xfe\xe9\xa5\x9e\xc9\x9b\xfa\xf9\x9a\xdd\x52\x2d\xa4\xfb\xfc\x87\x25\x5b\xad\x8c\xa7\x58\x7b\x56\xd8\xcb\xbb\x5c\x57\x89\xd7\xcb\x7d\xc3\x4b\xfa\xb3\x2d\x69\xd5\x03\xfd\xee\x07\x10\xd3\xa9\x50\xa9\x7c\x51\xed\xb8\xc4\x7c\x5a\x94\xa5\xf9\x91\xda\x88\x16\xe0\xa3\x13\x45\xa7\x35\xec\xe1\xe0\xa6\x3c\x76\x0a\x62\x32\x09\x1f\x7c\x73\x66\x64\xfc\x58\x10\x57\xb7\x29\xc0\x4b\xef\x0a\x28\xa8\x02\x53\xfe\x47\x7a\x9f\x21\x84\x80\xc7\x85\xe8\xcb\x68\x93\x7c\x2e\x75\xa1\xba\xcf\x59\x17\x15\xcc\xca\x28\xa6\xa7\x36\x55\x2a\x74\xec\x35\x2d\xe0\x5b\xa9\x56\xf1\x5a\x54\x1b\x57\x7d\x39\x9e\x01\x66\xd3\x4d\xb1\x4d\x1e\xfd\xae\xa7\x7f\x83\x10\x82\x92\xa5\x3d\xa3\x15\x65\x09\xe5\xae\x92\x03\xf1\xc7\x0d\x84\xad\xbb\x9a\xa0\x52\x30\x7a\x4b\xbf\x2b\x20\x79\x05\x68\x2b\xc3\x27\x69\x87\x83\xc4\xec\x02\xf7\xe4\xf6\x36\x60\x73\xd4\xb4\x46\xe9\xd2\xb7\xfc\xf6\xfe\xdf\xea\x8a\x3f\xdf\xb2\x1f\x4d\x1d\x9f\x9c\xa2\x11\xe4\xc2\x2e\x0c\x14\x00\x15\xd5\x6f\x85\x88\xea\x7f\x94\xa6\xe1\x10\xc1\x9b\x32\xb3\xf4\x86\x80\xea\xb6\x6f\x2d\x1a\x99\x22\x71\xae\x59\x84\x6d\x59\x88\x01\x1a\xde\xe0\xdd\x1d\x19\x95\x22\x4b\xbb\x20\x90\xfb\xc9\x75\xff\xdf\x54\xdb\x71\xf7\x2e\x87\x54\x0d\xde\x5f\x14\x12\x6f\x59\x6f\x35\xc5\xcc\x56\x1f\x69\x9e\xa9\x6f\x33\x84\x07\xac\x31\xb4\x41\x26\x9f\x6d\x62\x54\xd3\xc6\x3d\x0d\xfd\xa3\x8d\x69\x48\x4b\xee\x6d\xcb\x10\x6f\xfa\x73\xa6\xf6\x79\x03\xda\xc0\xfb\xae\x68\xe0\x96\x6a\xd5\x48\x86\x9e\x8a\x20\x65\x27\x8d\x5d\xcf\x82\x08\x72\x28\x75\xdd\x20\x7c\x47\xda\xf6\x2c\x9b\x11\x41\x61\xc7\x10\x97\x6a\xe4\xc6\x94\x1d\xce\x05\xf7\x6a\xd6\xc6\x71\xf1\x9a\xfc\x2a\x21\x1e\x3c\xa1\xa0\x62\x60\x25\x28\x24\x5a\xd5\xf9\xdd\x0b\xc9\xf8\xf5\x9b\x94\x1f\x3f\x33\x18\x16\x94\x57\x57\x63\x54\x98\xe3\x01\x83\xa1\x84\x98\x46\x84\x5f\x91\xd6\xde\xd8\x55\xae\x19\xff\x58\xcf\x6c\x20\xd4\x30\xbe\xc3\xe1\x31\x9b\x99\x05\x18\xec\xdd\x61\x8d\x9d\x8f\x9a\x7c\xb9\xad\xdd\x7e\x97\x77\x92\xdd\x72\xf5\xb0\xe2\xf0\x27\xd5\x7f\x43\x80\xab\x51\xd1\xbf\xcb\x33\xf3\xa7\x6a\xb1\x5a\x41\x8b\xd5\x2a\x43\xe0\x76\xf9\x0e\x2c\x72\x4a\xbc\xf5\x01\x73\xef\xd2\x91\x65\xb0\x2b\xb6\xf0\x49\x17\xcb\xdc\x0a\xd0\x9c\x2e\x2c\x13\x1a\x69\xd9\xa9\x2e\x43\x57\x43\x21\x66\x87\xfa\xe4\x52\xfd\x52\xdb\x44\xae\x31\xb5\x10\x76\x5b\x44\xee\xfc\x43\xff\xcd\x2b\x4c\xa7\x97\x56\x7f\xaa\xab\x3b\x0f\x2a\x3b\x75\xda\x75\xf0\x02\x17\xd3\x55\xb1\x94\x95\xb8\x07\xe5\xf9\x46\x7d\x3b\xcb\x4e\xb5\x2f\xb8\xba\xe6\x40\xeb\x04\x05\x32\xac\x4a\xee\xda\xee\x34\x43\xa3\x2a\xd6\x1e\x5f\x5e\xb2\x1a\x86\x9f\x9d\x9c\xe1\xcb\x4b\xdd\x1b\x6b\x10\x16\x53\xeb\xc1\x93\x3b\xa1\x41\x62\x5f\xcd\xa3\x35\x0b\xdb\x02\x8a\xbf\x2a\x69\x89\x54\x98\x4e\x1d\xd2\x93\x02\x83\xd3\xa9\x02\x00\xa9\x3f\x5b\x05\x51\x1d\x8d\x79\x20\xc3\x4a\x2b\x64\xf3\x1f\x55\x73\xcc\x15\xfb\x3a\xb2\xda\x18\x60\xd0\x60\x71\x4b\x05\xd6\xa3\xbb\x53\x8d\x07\x7b\x0b\x6c\xe2\x47\x76\xe9\xbe\x18\xec\xd7\xd9\xc7\x8f\xec\xd5\xb4\x6f\xfa\x77\x59\xb3\x04\xfa\xef\x4f\x8e\xbc\xfd\xaa\x12\x25\x15\xb4\x7c\x52\xd3\x44\xb1\xac\xc1\xd0\xdb\x40\x39\x4b\x08\xdd\xef\x33\xa8\xae\x71\xa1\x7e\xcf\xba\x01\x66\x17\x74\x96\xd5\xf7\x9b\xab\x6a\x1d\x3d\x74\x85\x2e\x72\x04\x99\x9c\x5a\x71\xb0\x26\xf3\xac\x6d\xaf\x13\xd0\x5a\xdf\x0d\x9b\x04\x96\x42\x5a\x58\x3b\xa4\x79\xfa\x70\x23\xe8\x6a\x46\x5d\x74\x06\x44\x9d\xb5\x62\xed\xed\x95\x84\x45\xb8\xb4\x40\x62\x4c\x8a\xdc\xda\x61\xc9\x1d\x78\x42\x71\x2e\x09\x47\xbd\x95\x3a\xa3\xfa\x9c\x32\x2a\x24\xe8\x0c\xb3\x44\x2a\xa9\xe5\x12\xde\x5d\x5e\x12\x81\xb9\xf9\x3a\x51\x6b\x9c\xd3\xbb\xb1\xbe\x41\x78\xd0\x59\x51\x96\x7f\x61\xf2\x06\x98\xfe\x21\x9a\xb9\x63\xa5\x0b\x9c\x31\xda\x00\x5a\x53\xbe\xa4\xef\xa9\xb4\x9a\xbd\x35\xab\xe5\xc8\x66\x86\xe1\x73\xe1\x0c\x47\xea\x6f\x72\x72\x86\xf5\x9e\xcb\x0b\x66\x7d\x18\x66\xcc\xca\x98\x12\x9f\x39\x86\xb7\x66\xff\x45\x4f\xc9\xb9\xb9\xef\x78\x93\x0b\x25\xa5\x75\x6a\x9d\xdc\x14\xf5\x3b\x1f\xa8\xa5\xd5\x36\xc2\x53\x0a\x74\xe1\x32\xf2\xce\x04\x8a\x8a\x35\xb9\xa2\xfe\x5d\xc6\x7b\xbf\xa7\x68\x7a\x19\xa9\x66\x5b\x75\x93\x1c\x40\x55\x47\xfa\xc2\x43\x51\x2d\x1e\x9c\x2a\xed\x7f\x70\x48\xb6\x51\x80\x60\xf2\xc7\x68\xe8\x9c\xa2\xb9\x58\x44\x75\x79\x62\xed\xee\xd9\x53\xf1\xcc\xc6\x9d\x3d\x15\x56\x79\xcb\x89\x9c\x8b\xc5\x88\x4f\x3d\xd1\x20\xe1\x0f\x50\xbf\xf0\x69\x68\xd6\x55\xfb\x93\x01\x25\x36\x91\xe7\x39\x9f\xde\x09\x26\xcd\xbb\x7e\x12\xc5\xb5\x96\xd7\x04\x7c\x2f\x43\xcc\x0b\xcc\x5a\x41\xb2\xde\x50\x0b\x6c\xf4\x59\x46\x73\xa3\xb7\xff\x23\xe3\x65\xf4\xc0\x03\x2c\x7a\xbc\x01\x4a\x54\x47\xcf\x96\x56\xde\x78\x9b\x78\x09\xb4\x2c\x1e\x8a\xde\x47\xbf\xcd\xac\xfe\xd4\x7e\x9c\x98\x65\xac\xe1\x8a\xa7\x1b\x47\x4f\xf4\x8c\xf0\xba\x12\x6f\xcc\x9e\xb7\x96\xd5\xfa\xe4\xd2\x2a\xff\x3a\x9d\x5d\x4a\xba\xd9\xfa\x38\x86\x68\xad\x50\x7c\xf1\x75\x25\x96\x54\xbb\x32\x13\xab\x70\x0b\xa7\xf7\xa6\x7e\x2f\x8b\x75\xfc\xe5\x4d\x11\xa9\x94\xa8\xb5\xdd\xb6\x1b\x3d\xe7\xf7\x21\xae\x76\xb6\x27\x1e\x07\xdc\xd6\xdb\x5d\xbc\x86\xc4\x79\xdf\x55\x45\xf9\x5c\x67\x45\x74\x93\x04\x1e\x3a\x6a\x7e\xc7\xd6\xeb\xf7\x9d\x4d\x88\xb1\x88\x05\x08\xa4\x6d\x39\x26\x2a\x5d\x58\xbb\xdb\xb4\x50\x0d\x21\x64\xcf\x3e\xd9\xfa\x6d\x1c\xb5\xd1\x8d\xc7\x98\xa6\x48\x68\xd5\x83\x68\xc1\x3b\x8d\x67\xd4\xa3\x18\x08\x27\x91\x7a\xd4\xe3\x99\x4c\xa1\x18\x21\xa4\xd8\xef\x8b\x7e\x4c\x3b\x21\xa4\x9e\x4c\xea\x1e\x84\x13\x43\xb8\x96\xc0\x9c\x53\x3b\xd3\x00\x03\x03\x2f\xf9\x5e\xfc\x4b\xa1\x92\xdd\xc1\x5e\x34\x0a\x1a\xa4\x50\x28\x8d\xa6\x1a\x7d\x4e\xce\x1a\x73\xf1\x62\x8e\x0b\x12\x94\xc3\x76\x69\xab\xa7\x2d\x4d\x79\xf7\x22\x34\xfa\xdf\xb8\x59\x83\xc3\x2f\xdf\xa7\x3f\xcc\x4f\x5a\x60\x35\x3e\xc8\x71\x57\x08\xfa\xba\x29\xea\xf7\xbb\xad\xe2\xa8\x02\xd8\x47\xb4\x9d\x24\x64\x42\xb7\xb9\xb4\xe7\x42\xf0\xde\xa6\x7d\x37\x46\x67\xf0\x47\x0d\x2a\xfa\x06\x13\xed\x41\xfc\x29\x79\xc9\xca\x68\xa7\x49\x5f\x64\x43\x0b\x7a\x23\x69\x34\x48\xab\x4a\x3c\x5f\xdb\x83\x14\x27\xb2\x82\xca\x6d\x03\xeb\x71\xa9\xe7\x38\xa9\xc1\x9c\x08\x2a\x80\x28\x0f\x82\x6c\xdd\xe7\x23\x5d\x39\x51\x4f\xc3\xe7\xcd\x99\x4c\x68\xb0\xa6\x13\x42\x12\x6d\xf6\x7b\x67\xfe\x6f\x2f\x3a\x0f\xbf\x86\xa0\x38\x05\xa4\x68\x65\x11\xec\x7d\x5e\x96\x74\x20\x1c\xdc\xeb\x01\xed\x01\xe6\x2a\x75\xcf\xb7\xdb\xcc\xc5\xc2\x27\x5b\x34\x5c\x1b\x47\x23\x39\x67\x8b\xfd\x3e\x57\xff\xa9\x9b\x9e\xe6\x1c\xa1\xc6\x4e\x42\x07\x38\x27\xe9\x5a\x34\x6e\x10\xf9\xdc\xdf\x58\x87\x44\xc7\x13\x28\xd4\x04\x6a\x3d\x81\xda\x4c\xa0\x00\xdd\x6f\xd1\x07\xd0\x08\x5a\x27\x21\x8d\xdc\xef\xc1\x22\x09\x8e\xa9\x39\xba\xc8\x0d\xb9\xd8\x54\xb7\xc1\x56\xbd\x16\xd5\xe6\xdd\x1d\xcf\xbd\x12\x55\xbd\x77\xea\xc8\xfe\x86\x90\x3d\xb9\x43\x7a\xf2\x93\x33\x64\xb2\x7c\xd7\xa0\x1b\x4d\xd2\xb6\x1c\x54\x9c\xc5\x54\x57\xef\x01\x72\xd9\x71\xc8\x04\xe2\x4a\x55\x2b\x08\x65\x21\x49\xc3\x50\x67\x57\x9f\x52\x17\xec\xfa\x34\xcc\x5e\x34\x4a\x2e\x1e\x38\xd2\x38\xf6\x3d\xb9\x55\x4f\x45\xbb\x57\x4e\x44\xab\xd7\x04\xc8\x72\xae\x77\x4e\x37\x80\x72\x8e\xf6\x55\x6d\xc0\x49\xda\xc6\xc8\x0e\x58\xe1\xb6\xc8\x4f\xac\xdd\xc9\x2e\xd6\xc7\xf7\xf8\xee\x13\x53\xe8\x1d\xa7\xb3\xce\x28\x30\x3b\xd6\x49\x7f\xa7\x76\x30\x1c\x2b\xe8\x3f\x91\x46\x4b\xf5\x30\x4a\x16\xa1\x8c\x14\xf9\xad\xad\xd0\x25\x5e\x70\xa1\x24\xad\x74\xff\xb1\x1b\x5c\xef\x08\x71\x07\x3a\xab\x82\x37\x83\x4d\x26\xf2\xf4\xd4\x8f\x94\x02\x19\xe9\xf3\x10\x51\xb4\x86\x86\xb4\xc5\x77\xab\xd3\xdd\xa7\x3b\xcc\xa9\xa2\x35\xe2\x54\x9a\x83\x31\xd0\x6a\x60\x5a\xdd\x13\xd2\xd9\x42\x9b\x21\x24\x4f\xbf\x86\x78\x32\x7f\x7a\x77\xdb\x37\x96\x6e\x87\x8e\x84\x68\x08\x05\x70\x70\xb2\x13\x4c\x89\x3d\xd7\x7d\xbd\x47\x09\x64\x5d\x11\x1e\x77\xd1\xe9\x7c\x09\x9a\x97\x1a\xb8\xca\xa4\x35\xd6\x8e\xea\x5c\xb6\x39\x38\xd4\x07\xde\x16\xcb\x8a\xa0\x56\x68\xdf\x80\x49\x46\x24\x18\xd8\xfa\xf1\xa6\x79\x0b\xac\xa8\x43\x3f\x67\xb9\x18\xf1\xfd\x3e\x3f\xd0\x06\xf8\x64\x6d\x5a\x35\x9a\x7a\xc7\x7b\x3e\x58\xbf\xb7\x07\x60\xd2\x67\x21\xcd\x6f\x1a\xc8\x97\xc7\x8f\x86\x82\x3f\xd4\x9f\xf7\x28\xf4\x13\xc5\xd6\x69\x18\x6e\x88\x06\xe7\x77\xf4\x99\xb0\xa6\xe5\xa3\x6f\x37\xbf\x29\x07\x96\xa3\x3e\xb4\xb7\x9a\xab\x6f\x71\x04\x2e\xa9\x39\xf5\xf1\xa6\x43\x78\xf1\x69\x5f\x0d\x40\xb9\x8d\x11\x87\x6e\x80\x88\xba\x92\xd8\x0d\x2a\xba\xa1\x14\xe4\xa5\xa3\x46\x1b\x4f\x84\x9c\x1e\x0d\x3e\x0a\x53\x8d\xe8\x8e\xc3\x55\x19\x63\xb8\x6b\x37\x4c\x17\x9c\x79\xdd\x6d\x5e\x1f\x85\x18\x00\xc0\xf1\x7b\x28\x01\xaf\x3e\x61\x3b\x14\x50\x3e\xe1\xb3\x5f\x40\x13\x22\xe1\x19\xd2\x94\x7c\x02\x12\x0d\xc3\x0d\x1d\x7b\x3b\xb4\xaf\xfe\x14\xef\xd7\x7f\x78\x1f\x7b\x66\xff\x2f\x3d\xaa\x43\x80\x4e\x01\x31\x58\x5c\x04\x4f\x7b\xcb\x0e\x1d\x1c\xda\x3d\x38\x96\x97\xab\x6d\x68\x55\xf0\x0a\xe4\xd1\xde\xdd\x18\xb8\x61\x3a\x8d\xfb\x77\xde\xa5\x29\x1a\xa4\xff\xff\xa4\x45\x0f\xdc\x1f\x8f\xbb\x5f\x7b\xc1\xd0\xb9\xc6\x5a\x69\x9b\x0e\xf0\xe7\x2f\xaa\xcd\x56\xb5\x5f\xdf\x27\x21\xd4\x4e\x94\x34\xa8\xad\x89\xd1\xd3\x59\x74\x92\xe2\x38\x27\xad\xf5\x8f\x3a\xca\x8c\x8b\x76\x5c\x41\x5b\x06\xd7\x71\x2c\xc3\xca\x0c\x45\x78\xbd\x63\xda\x9c\x2d\x8c\x02\x24\xd8\x2f\x45\xf8\xa3\x07\x49\xd0\xa8\x2d\xe3\x68\x24\xb4\xb4\xdf\x34\xb3\x23\x66\xd7\x9e\x5a\xff\xdd\x10\x4d\x71\x32\xc9\x77\xad\x39\x85\x70\x1d\x98\x1e\x36\xd3\x43\x4d\x2c\x02\x5a\xf1\xc7\xfa\xba\x75\x90\xa6\xdd\xc0\xe9\x05\x74\x73\x23\x41\xf6\xa1\xcd\x27\x21\x66\xf2\xfc\xc6\xd8\x9a\xc6\xc3\x48\x8a\x1f\xc5\x9a\xec\x93\xf3\x91\x57\x03\x41\x5a\xf8\x0e\xfb\xa9\x78\x45\xab\xe9\x50\x07\x55\xdb\xcd\x14\x03\x39\x8a\x34\xd3\x3d\xb2\x6f\xb5\xbd\xcf\x51\x50\x9a\xfd\xec\x29\xf7\xd6\x22\x7e\x7a\x8a\xda\x3c\x4c\x2e\xe7\x7c\x91\x58\x1c\x1c\xc5\x8e\xb0\x6d\x57\x62\x99\x21\xbf\xb2\xd0\xe2\x32\xbd\xb4\xd5\x8c\x3d\x22\x81\xdb\x8e\x71\xb0\xf4\x1a\x93\xef\x40\xeb\xdf\xd9\x1c\x6d\x0c\xa0\xbe\x5d\x4b\x0f\x60\x0a\xaf\x74\x3f\x1c\xbc\xb2\x0d\x72\x69\x3f\x24\x9b\xfb\x45\x6f\x6c\xfc\x90\x44\xb1\xf3\xc5\x30\x4f\xd7\x6e\xdc\x3b\x85\xee\x6c\x7b\x14\xe2\xd4\x77\x93\x56\xa8\xa7\x3a\x4a\xb7\xb4\x5d\x25\x34\x31\xdd\x5e\x52\xca\xfd\x74\x07\x5a\x39\x7f\xa0\x03\xdd\xc8\x76\xf0\xbe\x63\x9e\xea\x6e\x5e\xa7\x49\x00\x89\xae\xe5\x28\x05\x85\x6e\x2b\xe8\x42\x1d\xa2\xa4\xfe\xe5\xe4\x1c\x73\x75\x2a\x81\xe8\x06\x2e\x8e\x5e\x9f\x97\x5b\x17\xc7\x40\x69\x0e\xb5\xdc\x84\xc3\x79\xdd\x58\x4b\x7a\xf0\x0e\x2b\xe2\xba\xae\xe9\x58\x09\xe5\xe7\x84\x90\x90\x68\x4d\x26\x27\x03\x9b\x8f\x1e\x54\xbf\x26\xbf\xb1\xf3\x05\xb1\x5d\x40\x80\xcc\x7c\xa1\x03\xea\xda\x63\x57\x58\xa2\x06\x16\x02\xc7\x27\xd2\xdb\xc2\x13\x77\x43\x06\x67\xcf\xb5\xc6\xe6\x8f\xa9\x89\x16\xd2\x9f\xd7\x84\xe5\xed\x17\x78\x47\x8a\xc9\xa4\xb0\xbf\x2f\x58\xee\xfe\xd6\xa1\x7e\x78\x4d\x76\x17\xbb\x29\xf8\x55\xc0\x4c\xeb\xc9\xa4\x86\x9f\xf6\xff\x13\x42\xd6\x93\x49\xce\xe1\x2e\x68\xec\xb4\x7a\x36\x3a\x3f\x39\x47\xb6\xb6\xd0\x92\x98\x98\x4e\x0d\xe8\xfd\x3e\x0e\x6f\x34\x5b\x33\x99\x9c\xb9\x26\x86\xf6\x8d\x8e\x25\x0f\x7d\x6a\xcb\xf3\x48\x28\xe8\x51\x06\x9f\x0f\xab\x94\x97\x5a\x57\xa3\xd0\x82\x5b\x59\x60\x40\x4d\x7a\x22\x8d\xa9\x63\xd5\xe5\x46\xe2\xdf\x9a\xec\xfe\x45\x14\xdb\x2d\x15\xe9\x0c\x00\xab\xc0\xa3\x73\x35\x65\x25\x5e\x4d\x97\x6b\x46\xb9\x7c\x53\x3a\xe1\x4b\x5f\xa1\xeb\x6a\x69\xc2\x2b\x3a\x07\x5d\x53\x38\x8f\x73\xed\x37\x26\x1b\x50\xfc\x58\x12\x8a\x73\x41\xe6\x0f\x1f\xe9\xbd\xab\x6d\xd5\xe3\xcd\xd4\x5a\x96\xb9\x07\x9b\x06\xeb\x8f\x43\xbb\x64\xa7\x8f\xd0\xc7\x5f\x33\xcd\x61\x73\x17\x11\x65\x62\x7f\x7b\x38\xe6\x0e\x1d\x53\xdf\xea\x50\x5e\x11\x3a\x4c\xbb\xd0\x6d\x75\xd4\x8f\x8d\x16\x6e\x8f\xd9\x74\xa7\x49\x68\x54\x20\x27\x7a\xd7\x34\x0b\x34\x99\xac\xf3\xc0\x25\x06\x0b\x70\x4e\x87\xe8\x25\x84\x69\x93\xeb\xd0\xa3\xd5\x21\xd7\xa5\xa0\xb0\x13\x50\x09\xeb\xd5\x59\x10\x1a\xd4\x82\xf0\xad\x34\xa7\x85\xba\x06\x32\x6b\x1d\x2e\x3c\x2f\x12\x46\xe6\xe0\x22\xf4\xb8\xd0\x3f\xb4\xfb\x48\x91\xe8\x4b\x27\xb7\x6f\xf7\x64\x9e\x06\x9f\x36\x5f\xc6\x97\xca\x24\xc5\xe4\x5d\x23\x33\xd3\xc7\x34\x29\xe7\x53\xa7\x31\x8f\x6c\x00\xb3\x70\xb3\x43\xa3\x63\x52\xa2\xcf\xd3\xad\x8f\x51\x44\x1c\x4d\xb6\x92\x46\xae\x73\xd4\x60\x58\xdd\x21\xa5\x24\x1d\x36\x0c\x98\xf5\xc6\x5b\x17\x2d\xb6\x57\x65\x17\x7f\x33\x2c\x17\xc2\x54\xdf\xe8\x08\xb0\x83\x33\xb6\x24\x76\xd0\x7e\xb0\x49\x3c\xeb\x62\x66\x62\xa2\xd6\xdd\x63\xc8\x00\xa1\x26\x7c\xc8\x08\x22\x87\x14\xbe\xb2\x6b\x04\xf9\xa5\x90\x6d\xad\x42\x09\x72\x91\x73\x60\xa2\xb7\x90\x24\xfc\x02\x94\x74\x28\x07\x70\x39\x68\x05\x46\x0f\xe1\xcc\x7a\x9a\x87\x53\x1b\x3a\x42\xc9\xac\x43\x1a\xa3\x0e\x8a\x8c\x32\x9e\x49\x4f\xfb\x04\x90\x5a\xa0\x36\x75\x81\x12\x6f\xb4\xd2\xa1\x07\xf7\x82\xcf\x7a\x48\xe6\xd0\x0a\x7b\x97\x98\x50\xa6\x1c\x5a\xa5\xf9\x24\xc8\xdd\xdc\x37\x67\x70\xa2\xc5\x6c\x40\x60\x1e\x24\x8f\x9d\xe7\x5e\x22\x3e\x49\xc0\xef\xa2\x2d\x65\xcf\x7a\xc0\x75\x42\x52\x27\xb9\x1f\xba\x89\xc6\xc3\xc0\x8e\x0e\x53\xbc\xf8\x00\x6a\x96\x2e\x0c\x91\x83\xb4\xf1\xe1\xf3\xdc\x27\x89\x85\xb6\xa9\xc0\xe0\xe1\x3f\x8c\x6a\x03\x9a\xc1\xf4\x02\x0f\x60\x78\x17\x33\x3b\x23\x7c\xd2\x3c\x0f\xba\x32\x74\x07\x4e\x7e\x72\xe4\x91\x38\x48\x8b\x92\xaf\x7a\xf4\x4c\x8f\x13\x07\xda\xc3\xd1\x30\xc2\x4b\xc9\x03\x34\x25\x0f\x78\xda\x71\x84\xce\xf7\xc0\x4d\x36\x40\xfb\x7e\xf1\x9d\x72\x86\x12\x28\xd2\x3f\xe7\x08\x57\x62\x74\x38\xd2\xf5\x24\x89\x17\x03\xdf\x76\x10\x24\x01\x05\x35\x8f\x6b\x2a\xdb\x82\x15\x6c\x39\xa4\x41\x8c\xe2\xf0\x12\xa4\x20\xa7\xa4\x87\x7c\x42\xa4\xb4\x0e\xe7\x7c\x53\x52\x2e\xd9\x8a\x29\x86\x0a\x19\x07\xfd\x9e\xcf\x0c\x71\x49\x6b\x2a\x60\xb8\xe0\xe2\x02\x25\x01\x98\x11\xb5\xf6\xce\x3f\x0c\x75\x27\xd0\x00\x2a\xe4\x7b\x06\x0c\xfa\x92\xad\xdc\x02\x60\xd9\x0b\x45\x29\xe3\x53\xa8\x80\x94\x12\x40\xbd\x52\xc7\x54\x9a\x60\xf5\xf7\x15\xa7\xda\xea\x26\xcc\x44\x7d\x86\xb2\x5c\xb4\x0f\x51\x7c\x68\x5a\x2e\xfb\xa6\x06\xf0\x94\x95\x08\x61\xe3\x18\x30\xc8\x89\xe6\xc2\x3b\x8f\xa5\x5f\x43\x9c\xc3\x52\xcb\x6b\xe5\x97\x92\xd7\xfa\x84\xb2\x28\x62\xdc\x3d\xbd\x54\x57\xa8\xce\x74\xec\x23\xed\xfc\xdb\x2d\xe5\x25\xe3\xd7\xee\x95\x6e\x59\xf7\x88\x7a\xad\xa1\xe7\x8b\xf6\xb0\xf0\x24\x39\xe4\xc9\xf9\xd0\x70\xff\x12\xf2\xe0\x41\xae\xde\x79\x11\xf4\xf3\xf5\xee\x54\x88\x8b\x04\x49\xb0\x71\x32\x02\x9f\x61\x99\x14\xaf\x6c\x06\xa6\x47\x72\xf0\x90\x62\xe6\x18\x06\x5c\x3e\x9a\x03\x8f\xcd\x33\x86\x7c\xe8\xfb\xc7\x6d\xa3\x15\x4d\x07\x99\xa0\x7e\x1f\x8c\xa3\xf8\x14\x2c\x2c\xcd\x21\xd1\x69\xef\xcf\x5d\x91\xca\x82\xa1\x21\x1f\xde\xd9\x26\x44\x3e\xc5\x5b\x1f\x73\x3f\xfa\x0a\xe9\x62\x74\xe0\xa6\xf4\x15\x1f\x41\x4f\x9a\xda\x7d\x08\xdb\x7c\xb7\xca\xc1\x4d\xea\x9b\x27\xe7\x06\xdc\x69\x2c\xe2\xf8\xfc\xd3\xaf\x48\x8b\x31\xff\xbc\x4b\x32\xe9\xdb\x99\x5e\x69\x3b\x2e\x28\xde\xec\x5f\x30\xa5\x2f\x25\x2b\x8e\x52\x4e\xbb\xed\x2d\x7e\xfa\xe4\x3c\x48\xad\xd9\x47\x29\xce\x23\xdf\xe7\x84\x51\x1f\x0d\x0b\x65\x61\x0a\x96\x58\xea\x49\x1d\xa0\xc1\x1c\x3a\x4e\x60\x7b\x72\x6e\xd2\x01\xea\xa5\xe8\x6a\xc7\x12\x52\x87\xf2\x65\x21\x73\x91\x4a\x62\x22\x8f\x13\xa4\x06\xce\xe6\x71\xb2\x88\x3a\x91\x8f\x94\x2d\xb0\xb0\x59\xa5\x85\xb5\x3f\x47\xb5\x32\x5a\x5b\xe6\x14\xfd\x29\x0a\xc3\xdd\x8e\xf5\xd3\x97\xa3\x8d\x8f\xc3\xb0\xe8\xb3\x70\x2a\x7e\xc3\xd2\x1a\x5d\xdc\x71\xbe\xd0\x0b\x6c\x23\x82\x39\x83\x90\x8b\x1b\xf3\x54\xd5\x61\x7a\x37\xae\xc0\x94\x86\x02\xff\x4a\x48\x07\x67\x0d\xdc\xcf\x38\x18\xb9\xa5\x56\xb7\x81\x55\xdb\x25\x59\xc8\x29\x4a\x97\xa6\x42\x0f\xdc\x79\x04\x47\xc9\xb0\x87\x75\x60\x75\x2e\xbc\x25\x9c\x91\x33\x88\x1f\x32\x13\x61\xcf\x0a\xc8\x29\x6c\x8c\x5c\x14\x72\x09\x0f\x6b\xd4\x6a\x5f\xd2\x2e\xf9\x5a\xe7\xcb\x0b\x15\x94\x7d\xce\xe5\x60\x15\x3c\x21\xad\xd4\x9c\xe0\x9c\x35\x99\x68\x0b\xa3\x21\x57\x41\xd0\xc8\xd9\x53\xe9\x1d\x05\xa4\x9d\xba\x20\x74\x2e\x17\x03\x97\x89\x18\xf6\xa2\x16\x09\x2d\xa8\x38\xe4\x59\xad\x6e\x83\xa4\x2a\x31\x39\x8c\xac\xf4\xfa\x34\x74\xd2\xcc\xc0\x61\x09\x97\x1e\x61\xe2\x3a\x5a\xa4\x4d\x1c\x92\x4f\x9c\x41\x7c\xd0\x8e\x9e\x40\x9f\x94\xd7\x96\xf1\xfa\x25\x2f\x2d\x43\x75\x09\x4b\x5f\xc2\x21\xda\x27\x02\x36\xce\xdd\xd1\x0a\x70\x34\x21\xc0\x85\x92\x1a\xed\x48\x6a\x34\x25\xa9\xd1\x23\x24\x35\xb6\xca\x5b\xc2\x1a\x12\xb6\x04\x3b\x78\xb5\x87\x15\xab\xdd\xa9\x68\xb9\xb7\xd0\xd0\xbd\x45\x40\x5d\xaf\x47\x48\x76\x73\xbe\x30\xc2\x9d\xfa\x8b\x95\xa8\xe9\x88\x77\x31\x49\xd1\x9c\xf8\x90\x5b\x4a\x4b\xb8\xbb\xe9\x0b\x90\x76\x5e\x13\x8e\x01\xb6\xd9\xdf\xbb\x71\xcb\x97\xe1\x1a\x5a\x11\xb1\xb6\x02\x7b\x19\x07\xfe\x1d\xd5\x28\xe5\xfc\x96\x18\x50\x4e\x77\xdb\x6b\x51\x94\xf4\x75\x25\x6c\x66\x9d\x3c\x3e\x11\xd1\x77\xa4\xdb\x87\xf9\xd5\xd8\x4c\xa1\x1d\xa1\x4a\x28\x74\x4f\x84\x2b\xba\xf0\xcd\xf4\x12\xe6\x74\xd1\xf8\x12\x85\x3d\x51\x3c\xbd\x5f\x8f\xe2\x3a\x6c\xa9\x1c\x91\xe8\x41\xb1\x56\x12\x7c\xf8\xd5\x95\x0c\x86\xde\xc7\x8e\xa3\x18\x28\x93\xc9\xee\x44\x44\xa1\x7c\x7e\xfb\x6d\x56\x85\x7e\xcc\x0d\x3a\x7c\x49\x57\x30\x56\xc5\x6d\x76\xf9\xf0\x3b\x9f\x02\x1a\x06\xd5\x12\xd0\x9c\x2e\x48\x9c\xb6\xc3\xe5\x5c\xb3\x59\x94\xec\x50\x3e\x65\x6b\x4c\xf9\x03\x02\xc7\x11\xa4\x5c\x4a\x7d\x66\xe2\x62\x87\xbf\xb6\xf5\x55\x02\x1f\x17\x9d\x36\xf6\x42\x1d\xf9\x32\x97\x98\x61\x8a\x05\xae\xd0\x4c\x3d\x58\x05\x0f\x9a\x9c\x85\xc8\x06\xd9\x9b\x7c\x62\x9d\x46\xdb\xc1\xdd\x49\xdb\xfe\xab\x67\x50\xd8\x90\x73\x7c\xdb\x9f\x45\x21\x2a\x73\x56\xb7\x12\x05\x88\xde\x23\x7f\x99\xf6\xd8\x8e\x33\x0f\x24\x33\x09\xd8\x3b\x2b\xa6\x20\xad\x9f\xbe\x2e\x53\x3c\x2a\xf0\xfd\xf1\xa3\xab\x55\xdd\xea\xec\xf2\xd2\x27\x84\xed\x64\x3e\x78\xbd\x66\xd7\x37\xbe\x96\x7e\xbb\x41\xd9\x4e\x3b\x70\x59\x2f\x6f\x68\xb9\x5b\xd3\xd2\x4c\xa9\x3d\x21\x53\xe4\x24\xf9\x98\x55\xfc\x45\xb5\xd9\xb0\xf6\x7b\xe6\xae\xc8\x6e\x42\x89\x98\x0a\x8f\x5a\xb5\x2c\xe6\x67\x8a\x3b\xf6\x3f\xcf\x0d\x7b\x16\xf4\x28\xda\xd0\xd7\x59\x76\x5b\xd0\x17\xd3\x35\x2b\x1d\xf0\xc5\xd4\xfe\x88\xe6\xc0\xd3\x88\x10\xc5\xf2\x27\xd1\x20\xcc\xdc\xea\xb7\xd2\xc6\xe2\x9b\x6d\x0c\x7e\x5a\x20\xba\x47\x7a\x57\x5d\x5e\x80\x9a\xca\x1c\xb9\x60\x7d\x86\xab\x14\x89\xaf\xd2\x5c\x48\x22\x77\x4d\x0b\x64\x8d\xa9\x87\xd3\xcb\x49\xc4\xe5\x87\xd4\xe4\xad\xdc\xd5\x5a\x8a\xe6\xdb\x80\x59\xf2\x56\x3b\xe9\x55\x44\x97\xa6\x16\xd7\x9f\xd4\x85\xa0\x53\x71\x69\x34\x74\x45\x6d\x8b\xba\x66\xd7\xc6\x41\x1e\xb0\x11\x47\xcd\xba\x18\x6e\xeb\x61\x68\x9e\xe1\x45\xb7\xd6\x17\xa6\xd3\x56\x18\xbe\x41\x6c\xc5\x81\xb7\x9d\xfd\x81\xb3\x74\xe6\xb2\x92\xf0\xdc\xa8\xa5\x01\x48\x77\x6c\xbd\xd6\x08\xdd\x11\x0d\x53\x47\x4b\xbf\xf0\x53\xc5\xed\x07\xc6\x30\x51\xa9\xbb\xb9\x33\xf3\x54\xce\x21\x53\x0d\xa0\x0b\x83\xe8\xa2\x6d\xbf\x0e\x2a\xfb\xe2\x6a\x1a\x54\x09\x6c\xf9\xe2\x02\x02\x75\x5f\xe8\xc1\xe7\x0b\xd5\x80\x75\x9d\xd6\xa2\x04\x54\xa9\xb9\xc5\x6f\xba\x70\x6a\xb7\x80\x2a\x2e\xb8\x8a\xea\xda\x25\xe0\xed\x0f\xcd\x59\x2f\xf2\xe9\x29\xdb\x86\x3d\x07\xc1\x77\xa5\x9a\x2b\xce\xb4\xfb\x05\xed\x0e\x4b\x71\x74\x1e\x0c\xc6\x3a\xb2\xc7\x57\x4c\x6c\xa8\x2b\xc8\x37\x3c\x39\x47\x28\x8f\x98\x66\x40\x54\x55\x0f\x40\x1c\xba\xe0\x69\x63\xd9\xc0\x0d\x10\xbe\x2e\x63\x63\x6a\x7c\x2d\x02\xf6\x74\x8f\x4d\x4f\x22\x86\x0e\x39\x3d\xc8\x62\x05\xa5\x35\x1e\x51\xc2\x17\xf2\xea\x83\x67\x6e\xd4\x3f\x84\x7b\x68\x4f\xdf\xee\x1b\x53\xe6\x3f\x7a\x0c\x4e\x84\xcc\x14\x98\xae\x50\xd3\xc0\x72\x7b\xc8\xca\x40\x9e\x81\x44\xb9\x41\x2c\xa3\xe5\x50\x5f\x4a\x28\x20\x0e\xba\x34\xa2\x6c\x97\x46\x74\x55\xd0\xf8\x02\x17\x84\xce\xab\xc5\xa8\x98\x9f\x2d\x08\x21\xc5\xfc\x7c\x31\x99\xe8\x53\x32\x16\xf3\x6a\x01\x33\xee\x0c\x3f\x30\x55\x4d\x60\x65\x77\x2e\xbe\xd2\x51\x1b\x5b\x5c\xe2\x56\x43\xa8\x1f\x1a\x6c\xf2\x84\xa4\x84\x9d\x2a\x5a\x37\x47\xb8\x20\x67\xb8\x26\x95\x5d\x64\xf1\xac\x7e\x5a\xd8\x45\xee\x48\x35\x2f\x16\x23\x36\xdf\x2d\xc8\x9c\xce\x77\x0b\xcc\xe7\xbb\xc5\x22\x28\xec\x5f\x69\xc5\xe7\xc0\x09\xf9\x9e\xde\xc1\xa1\xe8\xd4\x6a\xec\x68\x03\xda\x97\x5a\xfb\x0a\x4e\x91\xe4\x1c\x81\x0e\xaf\x4b\x6c\xbb\x37\x54\xeb\xf8\x39\xdb\x8d\xd1\xdb\x86\xa1\x8a\x81\xf3\x4f\x7c\x1d\x39\xc3\x7c\x82\xd8\xb9\x8b\xd7\x57\x6d\x1a\x3a\xd8\x01\xcd\x1f\xa0\x48\x98\x02\xce\x77\x88\x58\x87\xbc\x1c\x98\x38\x90\xb6\x92\x95\xed\xbb\xb2\x4b\x45\x1d\x1f\xd1\x4b\x38\x53\xbc\x64\x08\x18\x0d\x05\xa3\x53\x05\xff\x63\x50\xb4\x7e\xea\x9d\x1f\x11\x2c\xe7\x97\xfa\xa6\x6c\x51\x28\xad\x81\x8a\x58\x4a\x84\x3b\x4c\x83\x24\x21\xf3\xa2\x33\x56\x45\x16\x89\x88\x1f\xf2\xc5\x3b\xfa\x58\xa1\x5e\x1a\xee\x2c\x69\x07\xd0\xa0\x9f\x49\x7a\x14\x9a\x00\x33\xd4\x79\x91\x60\x26\x8c\x06\x2f\x95\x26\xa9\x8f\x02\xeb\x24\x80\xa0\xf5\x45\xe6\x3e\x86\x32\x8b\xdd\xae\x5a\xf5\xae\x92\x7d\x8d\x84\xb3\x6a\xb5\x32\x7e\xd4\x60\xaf\xa9\xa2\x1c\xe3\x2d\x01\xde\x62\x6b\x72\x92\xed\xce\xb0\x40\xfa\x3a\x6e\x25\x48\x6f\x4d\x78\xa0\xc7\x4e\xd2\x14\x33\xc3\x25\xa0\xfd\x5f\x8a\xfa\x47\xaa\xe8\x4e\x7c\x1c\x6f\xc3\xea\xff\x01\x45\xea\xe2\x81\x09\x98\xb4\xac\x20\x6a\xdd\xd4\x31\xf9\xef\x49\xdc\xa0\x98\xb4\x39\x9d\x8b\xc5\x42\x9d\x17\xfd\x57\xef\x55\xa1\x5f\x9b\xc8\xba\x3e\xc4\x34\x88\xe2\x13\x12\x7f\x06\x54\x49\x75\x76\x00\xf6\x91\x07\xba\x81\xbb\xed\xce\xcd\x38\xd9\x5d\x11\xac\x77\x41\x24\x96\x84\x90\x9c\x8e\x99\xaf\xd6\xda\x5e\xf7\x45\x3f\xc0\x16\x33\x7f\xda\xe7\x74\x81\xdc\xf5\x9e\x18\x0b\x48\xf5\x25\x14\xfe\xeb\x52\x58\x56\x5a\x7f\x20\x43\x93\x28\x32\x90\x56\xc3\xa5\x80\x1c\x4c\xb9\x68\x4f\x35\x1a\x77\xf6\x99\x16\x67\xe4\x9e\x47\xcd\x67\xbf\x1f\x1c\x3c\x7a\x6d\xc5\x88\xb0\x86\x75\xd7\x47\x36\xac\x80\xed\xae\x22\x53\x75\x3b\xba\xd2\x22\x51\xbc\x47\x37\xe2\xba\xe8\x28\x4d\x34\x45\x17\x3b\x3e\x55\x6c\xc9\xd5\x4e\x70\x75\xbd\x98\x56\x79\x66\x86\xd4\x29\xcb\x71\x06\x74\x98\xef\xb6\xef\xc4\xf6\xa6\xe0\x34\x24\x34\x50\xe3\xc1\x4a\x71\xe9\x26\x3d\xd6\x96\xcb\x62\xbd\x36\x05\xae\x42\x1a\x03\x64\x21\xcd\xc1\x47\x56\xb1\xd3\x53\x89\x14\x01\x99\xcb\x05\xd4\xfb\x82\x6b\x91\xff\x54\x53\x57\x14\xe5\xe4\xdc\x16\xb0\x3b\x6b\x72\x8a\xd0\x40\x47\xa1\x79\x4d\xc4\x9b\x20\x6c\x9c\x53\x6e\x23\x78\x3a\xc0\xb4\x74\x23\x11\x10\x95\x3a\xe2\x09\xa3\x67\x58\x03\x3e\x18\x0f\xa1\x84\xd2\x26\xa1\x9c\x9a\x96\xac\x5e\x56\x9c\xd3\xa5\x2d\x91\xd2\xe2\x0e\xcc\xa9\x6b\x31\x08\x9a\x81\x0d\x40\xd7\xc7\xc8\xc6\x6a\xdf\x08\xd8\x47\x0f\x74\x59\x32\x41\x97\x72\x7d\xdf\xdd\xf3\x2e\x82\xcc\xe3\xc2\xcc\x07\x01\x18\x3a\xdb\x44\x21\xd9\x90\x2f\x30\x99\x1c\x6d\x44\x09\xb5\x5e\x09\x1c\x33\x53\xf4\x4a\x4d\x34\x89\x97\x5d\xc7\x09\x88\xe8\x06\xe3\xf8\xe6\xf4\x14\xac\x54\xc6\x5c\x2d\xbd\xb3\x82\xd1\x9b\xf1\x6e\x26\x36\x50\xc2\xdf\xb0\x95\xcc\xd1\xc8\xc4\x7d\x33\x6f\xeb\xaa\x08\x1b\x02\x58\x0e\x82\xcb\xd3\xe2\x59\xe5\x91\xb8\xb0\xe6\x6d\x10\x5a\xea\x31\xe3\xb5\x2c\xf8\xd2\x14\x31\xb7\x53\x79\xc6\xa1\x0c\x19\x8c\x57\x23\xec\x67\x88\x5c\x4a\x6c\xa9\xd1\x42\x51\x31\xb8\x6e\x06\x73\x4a\x26\xe8\xb1\xf3\x67\x72\xaf\x93\xc4\xf7\x11\xb7\x4e\x7a\x1c\xd8\x2b\x25\xb2\x6b\xc0\xbc\x00\x39\xcf\x14\x5d\x4f\x18\x6c\x1e\x9a\xa8\xb0\x50\xe8\xb5\xd0\xc2\x61\xde\x55\x15\x60\x46\x78\xc0\x39\xc7\xba\x02\xa1\xe4\x4a\x3e\xa4\x4d\x10\x6a\xbf\x12\x98\x8c\xeb\xb6\x1c\xbe\x23\x67\x4f\x77\xcf\x6c\x69\xae\xa7\x3b\x2b\x8b\xae\x49\xad\x04\xd0\x25\xa1\xf3\xb5\xae\xb6\xcc\xca\xec\x84\x90\xb5\x8d\x19\xad\xe6\xeb\xc5\x7e\xcf\xe6\xeb\x05\xb6\xba\xed\x91\x49\x93\xee\xd6\xbc\xba\x58\x81\xcd\x05\xe2\x74\x4d\xd2\x74\x5f\xf3\xd0\x79\xb0\xc6\x4c\x46\xbe\xc6\x4b\x34\xba\x12\xb4\xf8\xa8\x13\xaa\xfb\x54\xf8\xf1\x17\x3e\x25\xa7\xfa\x02\xe7\xa5\x29\x51\xba\x46\xe8\x80\xb3\x77\x39\x10\x3d\x14\x8e\x6c\x8d\x47\xf1\xb8\xb6\xe6\xcd\x17\x18\xd5\xe6\x17\x97\xf3\xf5\x82\x2c\x1b\x1d\xcf\x6b\x39\x98\x65\x74\x60\x86\x25\xd0\x21\x0f\x1c\x2f\x32\x1f\x45\xe5\xc4\x50\xb0\x4e\x8e\xf0\x89\xe9\xd9\x09\x1a\xee\x16\x49\x99\x0d\x42\xdf\x9f\xb4\xed\x60\x64\x85\xbc\x7e\xc3\xc2\x31\x56\xd5\xc8\xe8\x76\xdc\x0a\x78\xb0\x02\xa3\x07\xe8\x32\x42\xbf\xec\xb2\xbd\xd7\x25\x4d\x47\x21\x5b\xf2\x39\xa0\x40\x53\x50\x90\xe8\xe1\x1e\xf8\x15\xbb\x20\x7d\x3f\xbe\x64\x86\x76\xa5\x74\xca\xa0\x4d\x30\x6a\x72\x2f\x9a\x27\xc8\xdb\x5c\xeb\x1c\x0d\x27\x83\x7d\xf5\xe4\x0e\x81\x71\xf5\xd7\xd7\x64\x40\xb1\x04\x57\xd1\x7a\x32\xc9\x8b\x0e\xed\xf5\xa5\x85\x8c\x46\xa0\xdf\xad\x60\x58\x4b\x60\xb5\xa8\x3b\x50\x2c\x32\x42\xe7\x15\xa9\xe7\x7c\xb1\xd0\x28\xb0\xb6\xa9\x68\x4e\x08\x29\xe6\xd5\x62\xbf\xb7\xee\x23\xaf\xfe\xbe\x2b\xd6\xb9\x98\x57\x0b\xcc\xd0\x7e\x2f\x9d\x8e\x34\x3c\x91\xb6\x84\x44\x97\xa9\xc9\x9e\x65\xa7\x31\xcd\x3f\xcd\x66\xe6\x11\x2b\x4f\xb3\x6f\xb2\x76\x1c\x7b\xb0\xfa\xbe\x68\xf6\x7e\x7b\x43\xd7\x00\x92\xd2\x4d\x26\x4c\x49\x4d\xa7\x10\x7b\xb7\x27\xea\xc3\xe5\xe3\xb2\xd1\x47\x4d\xb3\xa5\x94\xca\xd3\x74\x82\xde\x8d\x0d\x57\x93\xa6\x24\x7e\x0a\xba\x68\xfe\x31\x23\x97\xda\xb5\x29\x54\xf3\x0f\x01\x45\x0b\x4f\x3d\xe0\xd0\x11\x26\x41\xde\x80\xd4\x21\x4d\x65\x10\x68\x59\x82\x52\x9f\xb5\x34\x1a\xe1\xe4\x46\xad\xd8\xfd\x24\x69\xa0\xb8\x13\xe3\x9f\xcc\xeb\x1d\x24\x3d\x68\x1f\x93\xe3\x00\x9a\xb2\x63\xe5\xfd\x46\x96\x21\x60\x77\x9b\xf7\x82\x3e\xd1\x33\xd5\x99\x0b\xb6\xed\xcc\x05\x0c\x9e\x61\x86\x5a\x1e\x1b\xf7\x10\xbe\x3d\x90\x70\x1c\x4c\xa6\x71\xf6\x76\xad\xf8\x1e\x8a\xd1\x33\x76\xd6\xc3\x3e\xdf\x39\x42\x0d\x9d\x3a\xe6\x25\xce\xfb\x6a\x2a\x57\x45\x0f\x4b\x4c\xa7\x61\x4a\x04\xf8\x19\xbc\x5f\xb6\x0c\xbc\xa0\x91\x7c\x5d\x09\x52\xb7\x2d\xbf\xea\x61\xf1\xd9\xca\x3b\xd5\x16\x5e\x22\x59\xf7\x27\xaa\xe2\xd3\xaa\xe0\x13\x16\x92\x83\xfa\x56\xae\x10\x1d\xaf\xc4\x06\x3a\x9d\xb5\x55\x91\x81\x53\x93\xae\x44\x6b\x5e\xc4\xa7\x82\xfe\x2c\x45\xb1\x94\xaa\xeb\xb2\xb4\x32\x4c\x1d\x84\x70\x6b\x9f\x1e\x8a\x39\x6a\xf0\x47\xc8\x2d\xd6\x5b\x62\xdb\x17\x5e\xc9\xdc\x5a\x33\xe2\xfd\xe4\x6f\x8a\xfa\xbd\x7d\x6e\x06\xd2\xe2\x00\xf8\x12\x67\x25\xed\xfb\xea\xa5\x7f\xd3\xfe\x4e\x4b\x29\x7a\x62\x9e\x25\x56\xf8\x3c\xeb\x2e\x7d\xbf\xa7\xea\xa0\x98\xae\x1c\x4a\xf5\x80\x0e\xaa\x46\xb8\xe4\x24\xbc\x72\x73\xd7\x83\xbf\xdf\xd2\x25\x5b\x31\x5a\xe6\x1c\xa1\x04\x98\xc1\x63\x52\x4b\x92\x9d\xd5\xbf\x71\x2b\x00\xbf\xad\x03\xd0\x01\x33\x58\x50\x7e\x2c\xe7\x28\x28\x88\x66\xdd\x06\xae\xa9\x7c\xab\x64\x21\xc5\x80\xe4\xba\x1c\x9f\x0e\x94\x43\xa3\x5a\x81\x53\x3d\x31\x20\xed\xee\xe3\x64\x92\x9b\x7e\xba\xef\x4c\x67\xba\xa0\x07\x0e\xb6\x16\x21\x5c\x5c\xe8\x8c\xf2\xc5\x94\x95\x38\x59\xd3\xc3\x55\xa9\x34\x5f\x05\xb5\x34\x3e\xdc\x6f\x4d\x61\x1a\x84\x66\xd0\x0d\x28\x6a\x80\x89\xaf\xbc\x05\xc6\x7c\x68\x51\xd4\x8b\x31\xfa\xd3\xa6\xc1\x03\x8d\x7a\xf6\x36\x84\x26\x2c\x0f\x59\x77\xbf\x21\x38\xb2\x63\xe0\xc8\x3e\x05\x8e\xfc\x42\x97\x06\xe0\x1e\x50\xf9\x03\xe3\xcb\xf5\xae\xa4\x6f\x4a\x5d\x9b\x2d\x30\xa4\xd9\x65\xbe\xae\x04\x65\xd7\x5c\xcd\x94\x62\x8e\x05\x56\x9d\xa0\x5f\xba\x11\xcc\x6c\x84\x3f\x2a\x46\x84\xfb\x72\x07\x65\x6c\xbf\xee\x3b\x25\x28\x3c\x4a\xff\x9c\x3d\x02\xc0\xb8\xba\x7f\x39\xc7\x0f\xac\xac\x35\xc5\xf7\x72\xe7\xd0\x29\xbe\xe8\xc1\x68\x2b\x20\x6b\x78\xcc\x52\x70\x78\xce\x4b\xb5\x49\xbe\xaf\xce\xf1\x30\x9d\x3c\xaf\x83\xd6\xf6\x84\xe0\xe1\x66\x43\x57\x47\x9b\xb2\x6a\xf8\x84\x80\xc1\x2c\x00\x8a\x3e\x4b\x23\x39\xe7\x0b\x73\x5d\x3d\xcf\x19\xea\xf3\x83\x7f\x60\xe5\x4c\xdb\x45\xef\xb7\x74\x16\xf8\xeb\xeb\xfa\x1d\xbd\x90\x1a\xbc\xeb\x06\x70\x83\x1f\x83\x1b\xfc\xd3\x70\xc3\x3a\xba\x5f\x5e\x53\x4e\x45\x21\xa9\xdb\xbe\x60\x7f\x61\x2f\x7a\x1b\xb4\x0a\xe9\x7b\xfd\x97\x87\xaf\xd4\xb4\x8a\x3b\xe0\x0a\x28\x94\xe9\xbc\xf2\xb9\x0b\xad\xd3\x35\x45\x78\xa2\x74\x08\xd7\x15\x42\x8a\x7e\x52\x33\x3a\x44\x6a\x0a\x2c\x71\x8d\x30\x9b\x57\x0b\x52\x07\xfe\x16\x7d\x9f\xcc\xba\x8e\xce\x6c\x95\x07\x9a\x2a\xbd\x31\x8c\x97\xf6\x9c\xeb\x2d\x0b\x3c\x9f\x0d\xf4\x3d\x4f\x82\xa2\xa2\xa0\x6c\xca\x8b\x0d\xb5\x5a\x3c\x9d\x15\xcc\x33\x5c\xe0\x31\x14\xb8\x0b\xa5\x76\xb7\xc2\xcc\xec\x6c\xc8\x88\xa0\x51\xe1\x6c\x6a\x7c\x5e\x2c\x9a\xa6\xc1\x37\x45\x6d\x97\xf8\x7c\x7d\x57\xdc\x9b\x53\xd9\x57\x3e\x5d\x09\x83\x9e\x61\x71\xec\xd7\x64\x92\x15\xf0\x35\xe4\x13\x9c\x52\xd3\x23\x74\x9f\x26\x21\x7d\x03\xf4\xcc\x27\x70\x1b\xea\x99\xc2\x7e\x2f\x26\x13\x53\xa3\xba\xd6\x7b\xe0\x56\x1e\xcf\xe3\xcd\xa1\x39\xf4\x2e\x32\xcf\x58\x69\x96\xe8\xfa\xde\xef\x33\x56\xb6\x9e\xa1\xce\x80\x31\xcd\xfb\xb4\x81\x9f\x14\xbc\x7c\xa2\x30\x29\x39\x05\xf7\xb6\x3b\x97\xfe\x5b\xec\x51\x13\x39\xc9\x21\x5b\x50\x38\xae\xdf\x6a\xa4\xd7\xdc\xc7\xdd\xfe\x23\xb6\x3b\x40\xf5\x06\x07\x9f\xf5\x8d\x0d\xc5\x91\xa1\x5d\x16\xc1\x5a\xce\x35\x41\xd2\x1a\x9d\xe9\xb2\xd8\x50\x5d\x95\x09\x2d\xf6\x7b\x39\xa7\x0b\x45\xf8\xd2\xb2\x46\x82\x36\xf8\xab\xde\x47\xa3\xd0\x62\x79\x13\x9d\xd7\x40\x7b\x89\x2b\x25\xa0\x0e\x09\x0a\x42\xc9\xa3\x61\x70\x43\x05\x67\x7d\x32\x61\x1d\x11\xc8\x95\x68\x87\xf4\x0d\x15\xc2\x31\x99\xea\xff\x30\x28\x79\x65\x3e\x05\x51\x90\x77\x57\x9e\xbe\xc6\xfc\xca\xa3\x04\x86\x90\x36\x33\xd6\x99\x66\xa7\xf2\x34\x83\x98\xb3\xcc\x52\x41\x6f\x98\xf2\x97\x01\x73\x97\x81\x36\x46\x31\xe7\x45\xe7\x62\x2d\xf1\x8e\xb0\x79\xb1\xb0\xaa\xc6\x4b\x27\x4e\xfa\x4d\x0a\x73\xa8\x61\x8e\x77\x08\x2f\xc9\x5a\x27\x56\x5d\x91\xf5\xd4\xdc\x1c\xa5\x9a\x87\x70\xbf\x88\xff\x73\xbf\x9f\x2f\xb0\xff\xa9\x55\x81\x4b\x84\x57\x28\xaf\x83\x66\xda\x8f\xd2\x94\x6e\xad\xf1\x0a\x8d\xaa\x79\xb1\x20\x8a\x45\x58\x3a\x16\x61\x09\xb7\x82\x8e\xd3\x28\xc9\x83\x9a\xc4\xac\x6a\x4c\x8a\x91\x7a\x08\x5e\xb8\x04\x41\xa1\x6f\xcb\x3e\xe7\x56\xc0\x36\x38\x7b\xd2\x61\x88\x32\x04\xb7\x31\x40\x74\xa7\x24\xa9\x4f\x82\x68\x8d\xf0\x0e\xe5\x55\x1f\x44\x2b\xbc\xd3\x5a\xf4\xb5\x01\x9b\x02\x6c\xed\x00\x5b\x1b\xc0\x1e\x05\xca\x35\x80\x72\x70\x61\x7d\x1c\x1a\x0c\x33\x92\x69\xf9\x24\xe7\x26\xf4\x02\x8d\x2c\x13\xe0\x12\x7b\xba\x08\xa5\x71\xfb\x5e\xe7\x68\xea\xa6\x92\x33\xb5\x77\xbb\xf5\x1a\x35\x98\xd5\x2d\x42\x63\x0b\x83\x37\xd6\xa3\x4e\xaf\xb5\x55\x23\xdf\x75\xae\x93\xe7\x06\x04\x12\x1e\x34\xba\x66\xb9\x6d\x1d\xbe\x8e\xb9\xb7\x6e\x30\xe5\x64\x02\x5a\x73\x39\x2d\xd6\xeb\xea\xee\x7b\x35\xcb\x40\x51\x68\xbd\xfc\x4c\xc9\x64\x1b\x8f\x75\x55\x55\x6b\x5a\x70\xa0\xd6\x50\x8b\xd9\x16\x68\x26\xe2\xe2\xab\xff\x93\x4b\xb1\xa3\x7b\xb9\x3f\x47\xff\xfd\x2b\x36\x95\xb4\x96\x39\x45\xb3\x8c\xef\xd4\xc8\x46\x89\x72\x4e\x08\x09\xd5\x1e\xb3\xa4\xa1\xe5\xe0\x5c\x75\x81\xe8\x6f\xf5\x74\x72\x0a\x25\xf8\xd9\x41\x48\xb8\xcb\xc3\x2e\x4b\xb1\x7d\x7e\x0d\xde\xb1\xc3\x45\xea\x67\xa7\xee\x66\xb1\x49\x16\xac\x27\xc8\x93\xdf\xc2\xb2\x73\x71\x4a\x7e\x8d\x15\x99\x7b\x59\x48\x9a\xd3\x69\x6d\x32\x4d\x08\x04\x66\x02\xfb\x40\x20\xa4\x83\xd5\x74\x33\x6b\x7c\x08\xa0\x23\x2f\x82\xd7\x33\x53\x11\xfb\xc2\x6c\x74\x12\x62\x91\xb7\x91\xb3\xdf\xbf\x84\xb4\x75\x27\xac\xfe\xbe\xf8\x3e\xa7\x08\xca\x63\xbf\x79\xff\xce\x55\xc8\x86\xfe\xc2\x92\xfe\x55\xd8\x13\xd8\xd2\xe8\x09\x21\xe7\x5f\x9d\xe9\x3f\x9e\x9c\x7f\xa5\x2b\x6d\x16\xc7\x02\xd8\xa2\x0b\xc4\xed\x69\xbf\x51\x57\xd4\xbb\xca\x25\xf9\x1e\xd6\x9c\x53\x84\x2e\xe4\xe0\xf2\x3e\xb1\xb7\x06\x41\x4d\xd7\x43\x73\x4d\x23\x9b\xee\xd8\x40\x4b\x31\x5f\xbf\xe4\xe3\x06\x8d\xe8\xd4\xa0\xe9\x07\x51\xf0\x7a\x55\x89\x0d\xe1\x98\x4e\xd5\x2e\xf9\x27\x0c\xd3\x69\x8a\x40\x40\xb2\x0b\xbd\x40\xdf\xb8\xc0\xd4\xb0\x36\xfe\x59\x8d\xe9\xd4\xff\x12\xd8\x10\xab\x3f\x6a\x0f\x35\x90\x96\xdf\x45\x12\x86\x92\x3c\x80\xa3\x4d\x39\x6c\xf8\x7b\xc6\x94\xc6\x37\xa6\x05\x04\x79\x03\x32\x60\x52\x91\x35\xb0\x99\x66\xe9\xd4\xc6\x41\xfb\xe6\x4b\xe8\xae\xe1\xa0\x1e\xab\xb8\x7e\xec\xf8\x98\xda\x9a\xe1\x61\x3c\x9f\x4c\x93\x6a\x47\xf6\x7f\xa4\xf5\xb6\xe2\xb5\x21\xd9\x2d\x0a\x9e\xd6\x90\x7b\xff\x29\x8d\x31\x76\x54\x79\x04\x04\xfe\x56\x57\xfc\x49\xb1\x65\x71\xd5\x7e\xdd\x96\xf1\xd5\x9a\x2e\x65\x25\xda\x75\xfc\xe3\xcf\x53\x55\xfe\xbb\x75\xfc\x15\x1b\xf2\x05\xc0\xc9\x88\xab\xcc\xee\x60\xe9\xaf\xf3\x97\xd5\x12\x62\x25\xff\x48\xd7\x5b\x2a\x66\xad\x54\x19\xb6\x88\x3f\x21\x66\x4f\x14\xa6\xbd\x5b\xd9\x5c\xef\x28\x4c\x85\x70\x19\x6e\x10\x04\x19\xea\x3e\x6d\x63\xa7\xf9\x4b\xa6\x8d\x0f\x1d\x0b\xc3\xb4\x03\x41\x1a\x79\xe4\x1c\x8f\x83\x87\x61\x0c\xb1\x7e\x31\x17\x8b\x91\x9c\x8b\xc5\x81\x59\x71\xd4\xd8\xd9\x37\x89\x49\x39\xb6\xca\x4f\x2c\xd0\xbc\x18\x7d\x8b\x6f\x96\x50\xbc\xf8\x97\x5a\x03\x33\x3c\x9d\x02\x8d\x4c\xf8\x5e\xad\xa4\x0d\xc3\xe4\x35\xbe\x13\xc2\xac\xe6\x85\x86\xec\x58\xdb\x97\x26\xb1\x8f\x8e\x93\x82\xd4\x6c\xb1\xa5\xfd\xb5\xa8\x36\x3f\x14\xf7\xeb\xaa\x00\x05\x9a\x51\x9d\xe1\xd6\x10\xe1\x4c\x13\xf7\x07\x5b\xe5\xf2\xb8\x7e\xb3\x9e\x06\x19\x3e\x09\x34\x39\x97\x4a\x72\xf3\x39\xde\x53\x7c\xd3\x4d\x32\x19\x7c\xc7\x49\xb2\xad\x14\x0a\x99\x47\x81\x29\x9a\x6a\x43\xb6\x82\xb6\x99\xcc\xac\x3f\x80\xa0\xe7\xcc\xe8\x6a\x3e\xb0\x61\xa0\xf0\xeb\xd2\xa9\xb4\xd5\x6c\x3c\xdc\x2b\xe4\xb1\xb0\xef\xfe\x7d\x47\x85\x4b\x43\xd4\xee\x35\x76\xe3\x05\x65\xbb\x11\x03\xc0\xae\xe7\xa2\xa1\x3d\x4f\xdd\x60\x23\x19\x79\x3b\x71\xef\xba\x31\x0f\x13\xa3\x4c\x43\x4f\x0a\x0a\x62\xba\xd7\x16\xe7\x6d\xd4\x60\x5a\xff\xda\x32\xd6\xb5\x34\x6e\xde\x3b\x31\xe8\x5c\x97\x3a\xe2\xe0\x33\x1f\x3f\xb6\x52\xb6\x59\x41\x8f\x18\x72\x0c\xf5\x6a\xa5\x72\x39\x74\xa6\x1c\xa5\xc2\xff\x34\x02\x96\x9c\x56\x48\xc8\x3a\x1b\x1c\x79\x35\x1c\xbb\xc7\x2d\x37\x14\x3a\xa4\x8d\xa1\xd8\x29\x65\x45\x4a\xcf\x4a\x7b\xf4\xac\xa1\xf3\x67\x6b\xc4\x79\xb5\x70\xf5\x53\x3a\x6f\x46\x80\x13\xc0\x7b\xb6\xd7\x97\xeb\x4a\xe0\xa1\x0a\x46\xf1\x5f\x3d\x8c\xc0\x10\xb9\xd2\x82\x2b\x6a\x70\x4f\x83\x04\x79\xcd\xcf\xb0\x9c\xd6\x8c\x5f\xef\xd6\x85\x60\xff\x45\x51\x9e\x9f\x61\xee\xc9\x8d\xab\xfe\x8f\x74\x6e\xfa\xad\xeb\x4c\x75\xed\xde\xf6\xf5\xbc\x5d\xef\x84\x56\x56\xe6\x34\x24\x0c\xad\xc5\xc5\xe7\xd3\x18\xe8\x4c\xd3\x9f\xd4\xec\x5e\xd2\xe5\xba\x10\xb4\x7c\x5b\x6c\xb7\xc0\x42\x63\x19\xc7\xcf\x27\x03\xe3\x0e\xf7\x11\x7d\x65\x25\xee\x07\x56\x6a\xf3\x96\xd9\x8d\x37\xa5\xae\xa3\x0c\x3a\x88\xc8\x21\xc1\x9a\x24\x11\xf6\x93\x89\x3e\x0d\x7c\xe1\xa0\x59\x34\x5e\xd4\xb2\x15\xbe\x87\x25\x8a\xd3\x3a\x01\x65\x74\x9c\xbc\x6a\x21\x22\x08\x68\x7d\x89\x68\xac\xff\x83\x1b\xb9\x5f\x3a\x31\x6a\xd0\xb2\xa8\x6f\xa8\xd0\x7a\xd0\x03\xde\x13\xc7\x74\x30\x28\x60\x1f\x4b\xea\x65\x70\xe9\xf7\xa0\x5c\x98\x39\xcb\x2e\x5f\x36\xc1\xf8\x29\x08\xc4\x6a\x33\xae\x15\x3d\xae\x60\xe2\xb2\xe0\x4e\x9f\xae\x04\xf3\x08\x2f\x23\x82\xbe\xdf\x3f\x34\x23\x1b\x86\xad\x1e\xe7\xc2\x28\xd6\x8c\x9f\x84\xb4\x3b\xa5\xee\x6f\x86\x02\x2b\x56\x85\xb9\x55\x2c\x69\x84\x2b\x92\x26\x41\x67\x0e\x2c\x4c\x3a\xd2\xa2\xc7\xd4\xd9\xb6\xf1\x85\xd7\x4e\xb1\x20\x55\xf3\xc9\xce\x24\x31\x3c\x9c\x75\x1b\xd2\x74\x74\xdc\x3c\x48\x35\x99\x54\xc6\xfd\x6a\x32\x39\xb1\x7f\x6a\x5d\xbc\x2e\xe0\xe3\x32\x47\x57\xfb\x3d\x53\xc0\x8d\x1d\x04\x5b\xbf\x1d\x88\x93\xf0\xe1\x11\x7c\x78\x1b\x3e\x11\x7d\xe5\xa1\x72\x3c\x06\xd7\x48\xfb\xa6\xd8\x02\x3f\x15\xaa\xc9\x83\x3f\xe6\x7d\x98\x57\x85\x98\xc7\xca\x59\x35\x65\x65\x33\x6a\x13\xfd\x62\x61\x94\x98\x75\xd3\x34\x9f\xe8\xa6\xa0\xcb\x9b\xbd\x6f\x7d\xaa\xdd\x28\x90\xb7\x42\x3a\x6b\x7f\x7c\x41\x3d\x02\xc8\xd5\x30\x90\x2b\x0d\xe4\x7e\x7b\x74\x35\x04\x7d\x6b\xd1\x68\xc1\xde\x32\x1e\x05\x61\xc3\x79\x41\x1d\x56\xd1\x14\x56\xa9\xbb\xb3\x0e\x78\x17\xcf\xb6\xe8\x30\x88\x22\x11\x06\xc1\x74\x18\xc4\xe0\x2e\xaf\x83\x5d\x1e\xd5\xf3\xdd\xc2\xa0\xc6\x52\x6d\xf9\x5a\x6d\x79\xd3\xbd\xe7\xc3\x2d\x37\x2a\xdc\x8a\xb0\x40\x74\xaf\x8e\x14\xdd\x63\xb1\x3d\xdd\x30\x29\x9f\x27\x9e\x05\x9e\x7c\x07\x7d\xfd\x12\xe2\xbd\x62\x95\xbe\x80\x80\x5f\x11\xd9\x11\xf0\xb7\x82\x6d\x0a\x71\xff\x27\xa8\xfa\x55\x66\x78\x43\xc5\x35\x2d\xcd\x10\x8c\xd6\xb3\xb9\xb1\xeb\x2d\x70\xeb\x42\x1c\x62\x12\x7b\xd5\x56\x5e\x5b\xaf\x58\x45\xd7\x59\xe0\xc3\xde\x66\x19\x23\xfe\x6f\x4e\x17\x9e\x89\x6c\x51\x7c\x5c\x10\x6e\xa3\xb5\x21\x8b\x5a\x15\x9a\x31\x73\xf5\x08\x17\xee\x22\x00\x06\x50\x06\x0c\x52\x8f\x10\xa6\x37\xc3\x44\xe4\x30\x13\x7c\xb3\x62\xdc\x28\x07\xb3\x59\xc8\x32\xb8\xce\x5e\xbb\x06\xb6\xdb\x9e\xdb\x17\xba\xfb\xbb\x17\xda\x7a\xfa\x4b\x88\x75\x43\x1d\xaa\xf9\x3d\x5f\xaf\x07\x26\x07\xbe\xb7\xc7\x75\xf4\xad\x8f\x1b\xea\xed\x2e\x70\xc3\x3d\xae\xd3\x3f\xda\x90\xa0\xde\x2e\x4d\x8b\x63\x3b\x3c\xd0\xdb\xb1\x5d\xc1\x56\x0c\x6f\xc2\xe1\x4e\xb4\x13\xee\xe0\x86\xbe\x08\x9a\x1c\xd3\x65\x98\xc3\xa8\xa7\xcb\x97\x41\x93\x63\xba\x0c\x93\x63\xf6\x74\xf9\x53\xd0\x64\xb8\xcb\x26\x38\x49\x5d\xe4\xef\x2b\x22\xe8\x3e\x79\xcf\xf8\xf5\x9a\x1e\x18\xe2\x68\x2d\xc7\xe7\x18\xa2\x75\x48\x0e\x76\x0f\x37\xe1\xa3\x7a\xef\x9c\x99\x2f\xb1\x84\xd6\x29\xfa\x02\xcb\xf8\x82\xdd\x47\x07\xee\x33\xf7\x9d\x3a\x80\x87\x37\xa0\xb8\x3d\x1e\xfc\xa9\xf3\xf8\x79\x47\x48\x1d\xcf\xcf\x3b\x42\xd8\xf8\x73\xa3\x67\xdc\x3c\x79\xed\xa6\xf5\x9f\xf6\x13\xdf\x12\x43\xb5\xf2\x34\x26\xfc\xc2\x8e\xcf\x8f\xd1\xd4\x46\x55\x5f\x0c\x43\x0a\x46\x26\xab\x93\x9f\xcd\x17\x8d\xd5\xec\x1b\xf5\x83\x2e\x5b\xac\x5d\x9d\xd9\x2a\xaf\x95\x40\xa5\x73\x36\xd7\xc8\xf6\xb5\x23\x31\x84\x21\x92\x14\xaf\xc9\x4e\x7b\x85\x2c\xc9\xce\x7b\x85\x68\x4f\x11\xb2\xc6\x4b\xe8\xc9\x59\x03\x4c\x39\x5b\xa7\x74\x5c\x05\x8c\xbb\x70\x8c\x7b\x49\xce\xf0\x0d\x71\x69\xd1\xca\x67\x37\x4f\x4b\xcb\xbc\x6f\xf1\x86\x88\x79\xb9\xc0\xb7\xdd\xe9\x6c\x10\xbe\x27\xb7\x7a\x3a\xd7\xe4\x36\x72\x52\xb9\x46\xf9\x36\xf0\x5b\x89\xfc\x4e\xb6\xf8\x1a\x8d\x56\xf3\x72\x41\xee\x1b\x33\xf3\x95\x55\x4a\x16\xfd\x6a\x2b\xcd\x64\x82\xf0\x18\x7a\x99\x1d\xa5\x7a\x42\xb8\x4f\xcd\x6b\x8a\x21\xa1\xa3\x95\x58\x26\xdf\xf6\x01\xc5\x55\x98\x68\xfc\x4b\x68\xab\xf0\x31\x6a\xaa\x50\x4f\xe5\x26\x99\x66\xdd\xe7\x9e\x6b\x87\x53\x9b\x79\xd9\x20\x43\x36\xb1\x03\x28\x2b\x97\x15\x85\xd4\xa0\x08\x8c\x0f\x47\x99\x08\x4c\x74\x3e\x66\x81\x02\x79\xd0\x2c\x20\x74\xdd\xa0\x41\x93\x00\x0e\x24\x03\xb1\x98\x4c\x72\x06\x76\x00\x93\x04\x1a\xb3\x43\xca\xff\x94\x43\x4e\xcb\x8c\x34\x60\x1d\x90\xa0\xaf\xd2\x29\xbf\xa6\xac\x24\x2d\xd0\x48\xc8\xdd\x35\x60\x87\xa2\x2d\xe5\xdb\x64\x72\x92\x9f\x61\x76\xb4\xbf\x00\xd2\xee\x8b\xf2\x08\x73\x9d\xd1\x53\x2b\x89\xc7\xbb\xd8\xb7\xe7\x6b\xd1\xd6\x63\x4a\x10\x0b\x32\x00\xc1\x90\x98\xa6\xb4\xed\x1a\x59\x3f\xdd\xce\x70\xac\x59\x41\x97\x9c\xfa\x05\xd6\x85\x79\xb1\xb0\xb1\x53\xd0\xd7\x0e\x1e\x8d\x3a\x2e\xe9\xba\x2b\x54\x13\x96\x72\x58\xbb\x70\x36\x87\x1e\xf0\xe5\x4c\x27\x12\xde\xe9\xd0\x51\x8a\x85\xb5\x9b\x16\xf5\xcd\x4c\xe2\x76\x61\xeb\x19\x6b\xd0\x2c\x6d\xc8\xb0\x3d\x79\x9b\x79\xe8\xcc\xca\x8c\x4f\xea\x49\x84\xe0\x3b\x84\xd4\x7d\x13\x5c\x03\x3b\x77\x0d\x24\x17\xe4\x32\x6e\xac\xc9\x19\xdc\x39\xe6\x92\x58\x3f\x5b\x3e\x5d\xdb\x4b\x62\x45\x76\xf3\xf5\x62\x54\xcf\xd7\x81\xd1\xe5\x00\x00\x56\x8f\x00\x80\x8e\xa5\xb1\x33\xd1\xd7\xd5\x2e\x7d\x5d\x91\xdd\xbc\x54\x33\x29\xfb\xcc\x3f\x66\xf8\x2d\x6a\x2a\xaf\x3d\xd2\x39\xbe\x2d\xf2\x7c\xc7\xf8\x47\x87\x34\x80\x26\xd2\x96\x5e\x08\xac\x51\xf0\x64\xbe\x31\x58\x73\x1b\x3c\x79\x9a\x57\xa4\xda\xef\x1f\x1a\x64\xea\x34\x3c\x98\xe2\xfb\xb3\xdb\xa6\xa9\xac\xc5\xb2\xb2\x36\xca\x47\x99\x8f\x44\x8f\xb1\x28\x52\x66\x1c\x38\x65\x86\x1c\x8f\x7a\xf5\x8b\x87\x0f\x1d\x3d\x21\x24\xf7\x54\xfa\x98\xe3\x86\x42\xe8\x69\x8a\x2d\x2d\xc5\xc6\x36\x43\x99\x4b\xe1\x3f\x78\x0f\xa7\x17\x85\x43\xcf\x5c\x7d\x89\x59\xaf\x74\xb0\x15\x38\x77\xe8\x31\xe3\x63\x86\x04\x49\x46\x07\x55\x98\x46\x57\x0b\x57\x13\x1d\xf6\xc4\xaa\x90\x4f\x4e\xdd\xbe\xb5\x2a\x97\x94\xfa\xa0\x83\x56\xb7\x9b\x38\x16\x45\x61\x8b\x29\x8d\xa8\x0d\xbf\x73\x1e\x00\x8e\x2f\x90\x0e\x24\xf2\x6b\xe9\x9a\x84\x5c\x12\x88\x2e\x88\xac\x53\xfd\x64\x22\x74\x3e\xa0\x5c\x12\xf5\x17\xd2\xb1\x51\xb9\x24\x26\xce\xc8\xbb\x6a\x1a\x07\x4e\xa9\xcb\x5a\xea\x54\x4c\x91\x15\x23\x61\x93\x1a\x1e\xfe\x44\xee\xf7\x27\x0a\x2b\xf6\x7b\xa8\xbf\xa3\xfe\x0c\xc3\x4f\x2e\x37\xbb\x5a\x7e\x7a\xf7\x6a\xaa\x12\x56\x77\x62\xb2\x10\x46\xbd\xa7\xd5\xff\xbd\xd1\xa2\x10\x8c\x54\x52\x49\xc5\x86\xf1\xe8\xd4\x81\xa1\x52\x44\x71\x49\x51\xa1\x8c\x78\x19\x50\x35\x2f\x61\x02\x82\x2a\x73\xd9\xa6\xe0\xf7\x1f\x2a\x45\xbc\x15\x55\xe7\xfb\xbd\x79\x62\xe9\x3c\xef\x31\x02\xa6\xee\x54\x45\xc9\x26\x13\x39\x75\x91\x5d\xde\xa6\xc1\x4a\xa8\x41\xc1\x87\xf9\x40\xc2\x5c\xba\x8e\x7e\xfe\x4d\x82\x90\x35\xed\x5a\x06\xc1\x90\x22\x6d\xda\xae\x21\x1a\x03\x5d\xa4\xee\xdd\x8b\xa0\xdf\x30\xe8\x57\x09\x76\xb3\xd4\xf5\x17\xb4\x0f\xcd\x39\xcc\x12\x5f\xf7\xf6\x0d\x97\x15\x5c\x41\x5d\xf3\x65\x94\x37\xc5\xd5\x94\x77\x96\x4b\xcc\x11\x3a\xd2\x10\xda\x6f\xfb\x0c\x4d\xa4\xf8\x1f\x66\xe6\x4c\x91\xac\x47\x18\x3f\xbf\x8c\xc5\x33\xb6\x77\x62\xc5\xad\x82\x59\xe3\x8b\x1a\xcd\xfa\x4c\x96\x38\x62\x9f\x18\xba\x90\xf3\x4a\x87\x42\xcf\xe0\x2f\xf6\x4b\x02\xab\xff\x51\x76\x4a\x1f\x95\xdc\x36\x58\xfe\x93\x8c\x91\x58\xc3\x2e\x32\xd4\xb6\x40\x14\x6a\x9c\x9c\x00\x01\x0c\x61\x1b\x42\x6c\x95\x8b\x80\xb7\x10\xba\xe4\x55\x90\x59\x50\xda\x62\xbc\x63\x9b\xe7\x1c\x1e\x62\xee\x85\x1d\x9d\xae\x38\x09\xfc\x56\xd0\xd9\x64\xe2\x45\x42\x73\x01\xaa\x3b\x73\xaa\x93\xdc\xc3\x0d\x0e\xb2\x95\xfe\x0d\x3c\x36\xa4\x06\xbe\x41\xb9\x6d\xe4\x92\x22\x0f\xa9\x1a\x40\xdb\x23\x0f\xf9\xce\x49\x45\xe8\x0e\xf9\xce\x49\x9d\xc6\xd5\x43\x68\x2e\xd5\x05\x2f\xc0\x47\x6a\x2e\x1d\x13\x21\x4c\x9a\x2b\x33\x6c\x1f\xff\xd7\x1e\xb9\xc5\xfc\xfd\xc2\xc1\x21\x31\xf4\x11\x4e\x35\xf4\x58\xe7\x19\xd7\x50\xb1\xf5\x3d\x0d\x42\xc2\x3a\xc4\x55\xbc\xbb\xe3\x54\xd7\x19\x40\xd3\x75\x55\x7d\xdc\x6d\xf3\xcc\x7d\x3b\xcb\x4e\x03\xa9\x3e\x76\x21\x3f\xc6\x0e\x2d\x68\x2d\x3f\xb7\xfb\xf8\x97\x30\x4f\xe3\xea\x97\x1a\xa8\x7b\x3f\x48\x05\x5f\x64\xf8\xc1\x97\x78\x9a\x9d\x9c\xf5\x24\x56\xaa\x92\x91\x1b\x4d\x9f\x39\xbc\x48\xf8\xbb\x6b\x34\xe9\xa5\x43\xad\x5c\xd2\x29\xe4\x47\xa7\x99\xfa\x26\x0b\xd5\xc6\x40\x02\x06\x03\x5a\xb1\x95\x44\xe7\x8b\x58\x69\x5c\x90\xc8\x73\x19\xd7\xa4\xeb\xab\x1c\xa7\x7b\xdf\x14\x1f\xa9\x51\xef\xf6\x64\xb3\xd3\xc2\xd2\x8e\xb0\x40\xf7\x1d\x89\xea\x90\x8a\x56\xcd\x92\xe3\x02\xd7\x3d\x1a\xe7\xa7\x79\xa5\xdd\x53\xc1\xa3\x79\x8d\xf0\x52\x0b\x2f\x55\x5a\xe3\x2b\xf0\x12\x08\x4b\x15\x02\xa6\x33\x6a\x52\x5b\x6f\x5c\x56\x70\x4d\x38\x94\x66\xcb\xcf\x70\xf5\x08\x2d\x19\x64\xc5\xd0\x37\x59\xa8\x55\x3f\xa0\x2b\x1b\xb5\xdc\xcb\x77\x08\xb8\xa2\x36\xf4\x77\x7a\x4b\x36\xbe\x99\x63\x8f\x8b\x40\x53\x5e\xdb\x8c\x1b\x47\x98\x12\x2a\xec\x72\xc2\xf6\x99\x12\x76\xbd\xa6\x84\xdd\x64\x92\xeb\x8a\x8f\x64\xe7\x1d\x7e\xd6\x51\x3a\x41\x81\xf0\x92\x9c\x41\x98\xae\x51\xa0\x2c\x9f\xad\x9e\x2e\xad\x02\xa5\x24\xeb\xf9\x72\x81\x6f\x48\x89\xb7\xe4\xe4\x7c\x94\x5d\x2a\x6e\xba\x9c\x2e\x6f\x0a\xf1\x5c\xe6\x67\x0a\x10\x5b\x72\x72\xa6\x5a\x4c\xeb\xdd\x55\x2d\x45\x7e\x6e\x34\x9d\x9b\x61\xd8\xde\x98\xe4\xf1\x11\x64\x37\xc8\xea\x4f\x4e\xb6\x86\xc9\x60\xf5\x0f\x5a\xe6\x30\x9c\xd2\x06\x4b\x84\xef\xc1\x0a\x31\x32\xf9\xdf\x4e\x08\xb9\x47\x0a\x1b\x6e\xf7\xfb\xd8\xcf\xfa\xde\xf4\x77\x8d\xaf\xf0\x65\xdb\x37\xda\x78\x5b\xe3\x0d\xbe\xc7\x25\xc2\x77\xe4\x52\x63\xf6\x2b\x72\x19\x19\x2f\x5e\xa1\xfc\x9a\xd4\x69\x54\xbe\xc6\xaf\x60\x1d\x05\xba\x4b\x57\xc2\xd5\x57\xc6\xed\x64\x02\xfa\x5c\xaf\x62\x85\x72\x0e\x8a\x97\x1a\xdd\x4e\x26\x27\x7c\x32\x39\xa9\x61\xf4\xfd\x5e\x5e\xe8\xbf\x08\x9d\xd5\xad\x08\x5e\x5d\x8b\xd9\xea\xf7\x6e\x91\x69\x78\xe7\x1e\xdd\xa1\xfc\xaa\x6f\xaa\x57\xf8\xce\xd8\x7f\xd4\x9c\xde\xe1\xf7\x6d\x78\xa4\xce\xfd\x3d\x2e\xb1\x04\x06\x05\xe1\x9f\xc9\x7b\x0d\xa0\xe7\xe4\xbd\x07\x90\x99\xc3\xcf\xf8\xf9\x64\x92\xbf\xeb\x1b\xfc\x1d\x7e\x8e\x1a\x97\x9f\xb8\x6e\x70\xb4\xad\x3d\xd1\x0e\xbd\xde\xd0\x12\x41\x6a\x02\x9f\x0c\xe6\x60\x34\x46\x92\xa2\xfa\xba\xa4\x90\xe2\x3d\x4a\x20\xd4\x87\xb6\x3c\x85\xb6\x0c\xf9\xba\x40\x1b\xff\x10\x77\x69\x44\xe8\xbd\x38\x6a\x13\x69\x50\xdb\x0c\xa0\x11\x66\x24\x24\x24\x15\xe4\x5c\xc3\x35\x61\x36\x32\x9c\x05\x14\x59\x04\x14\x19\x22\xbf\x41\x6b\xd3\x13\xfb\x2d\xf1\x0e\x14\x6d\x4d\x10\x94\xf2\xe5\xfc\xd8\x13\x0a\x8a\x96\x1d\x76\xc0\x4b\xf9\x38\x21\x9d\xce\x07\xdd\x0b\xc3\x4c\x2f\x26\x66\x22\x16\xe1\x1f\xe3\x6c\x3f\xee\x4b\x6c\x71\x8c\x38\xd3\x95\xeb\x70\x94\x7a\xaa\x2d\x2a\x72\x6c\x6a\x0f\x46\x09\x96\x3a\x5e\xc1\x91\x9c\x5a\x29\x39\x95\x39\x39\x95\xd9\xc4\x4b\xed\x19\x87\xc8\xf9\x28\xc3\x4f\x77\x05\x62\x1a\x2a\xf2\xa1\xf0\x68\x5b\x95\x8f\x0b\x52\xa5\x84\x65\x5c\x0f\xaf\xbf\x23\x53\x28\xf2\x1b\x88\x14\x6c\x5e\x2f\xbc\x58\x76\xe2\xf4\x92\x47\xdd\xf8\xea\x63\xcb\x44\x81\x45\x57\x1b\xc2\x76\x4d\x73\x34\x7e\x36\xd6\xb1\xb9\x08\x38\xfe\x5a\x11\xee\x03\x1c\xbf\x13\x1d\x8e\x71\x3f\xed\xe5\xca\xbf\x88\xbb\xa8\x20\xd2\x47\x32\x07\xcb\x12\xbd\x82\x4c\x4b\xb6\x08\x17\x24\xe8\xdf\x77\x0c\xa4\x91\xb6\x44\xd3\x11\x30\x5a\x8b\x71\xd1\xf1\xe1\xe9\x33\xb1\xe7\xfb\xbd\x0e\x46\xd7\xd1\xde\x1d\xb5\x34\x85\xd4\x08\xf7\x9b\xab\x6a\x1d\x3d\x74\x39\x86\x73\x34\xcb\xb2\x53\xda\xb8\x31\x58\x50\x28\xdf\x7b\x19\x24\x3a\x96\xc4\x97\xc0\x31\xa9\x01\x5c\x82\x05\x87\x7e\x74\xbf\xb7\xc1\xff\xfb\x7d\x2e\x89\x1a\x0b\x61\xd9\x24\x03\xfe\xfb\x23\x3c\x24\x91\xae\x32\xa3\x4b\xcd\x3a\xbd\x29\xea\x77\x77\xdc\xee\xee\x74\x59\xac\xd7\xb9\x54\xc7\x04\x76\x29\x43\x17\xce\xd9\x77\x26\x8d\xbc\x93\xed\xb8\xde\xb7\xd2\xcf\xf1\x3d\x80\xe7\x42\xff\x97\x20\x74\xd9\xe5\x65\x76\x4a\x4f\xdf\x16\xf2\x66\xba\x5a\x57\x95\xc8\xe1\x4f\x51\xf0\xb2\xda\xe4\xe8\x7f\xbe\x2c\x24\x9d\xf2\xea\x2e\x47\xe8\x54\xb5\x6d\xfc\x86\xd5\x41\x2f\x1d\x08\xfa\xfc\x0d\xdf\xe8\xa4\x06\x3b\xb0\x48\xfe\x85\x16\x1f\xdf\x16\x5b\x93\x93\xa4\x13\xba\x98\x5a\xc1\x1d\xe3\x65\x75\x07\x66\xda\xc4\xdb\xd7\x45\x2d\xbf\xad\x2a\x69\xac\xfa\x0f\xd7\x54\xfe\x08\x73\xff\xb3\x42\xff\x3a\x4e\x8e\x2b\xee\xed\x6e\xd8\xcf\xa6\x06\x71\xf3\x6c\x29\xee\xb7\xb2\xca\x90\x59\xfa\x6b\xb6\x5e\x43\x4a\x5b\x8a\x9a\x65\x21\x97\x37\x39\x94\xf2\x11\xd5\xdd\x58\xad\x03\xb4\x49\xf9\xaf\x40\xaf\x33\x0e\x1d\x42\x15\xd7\xa1\x3a\xbf\xaa\x2a\x39\x36\x9d\xd7\xe3\xfb\x6a\x37\x96\xd5\xb8\x28\xcb\xb1\xbc\xa1\x63\x3b\xd8\x78\x5b\x2c\x3f\x16\xd7\x54\xbd\xcb\x56\xe6\xab\x97\x74\x4b\x79\x49\xf9\x92\xd1\x3a\x53\xdd\xdd\x57\x3b\x61\x5b\x4e\xff\x56\x57\xfc\x57\x8a\xed\x02\x96\x25\x20\x91\x1a\x4c\x53\xdd\xb3\xf5\x71\x88\x1e\xf6\x7c\xb1\xa9\x5f\xc0\xeb\xc9\x24\xb3\xc0\xf2\xfb\xd8\x6a\x33\x6d\x81\xb7\x35\x8e\x6d\x36\x6a\x03\x2a\xf3\x64\x64\x36\x7e\x51\x70\x5e\xc9\xf1\x8a\xf1\x72\x5c\x8c\x6f\x8b\x35\x2b\xc7\x77\xc5\xbd\x02\x82\x4d\x92\x37\x5e\x57\xcb\x62\x3d\xf6\xb5\x67\xeb\x0c\x35\xb9\x17\x78\x96\x78\x85\x4b\x7c\x83\xb7\x64\xbe\xc0\x1b\x72\xf6\x74\xf3\xec\xeb\xdf\xfe\xee\xe9\xe9\xe9\x06\x6d\xe7\x9b\x05\xc9\x37\xa7\x5f\xff\xf6\x77\xc8\x13\x82\xf3\xdf\x21\x2f\xcb\x78\x14\xbe\xb5\x98\xa7\x79\x0c\x92\x53\xc0\xd2\x9f\x18\x97\xbf\xd7\xfc\xdb\xf9\xef\x10\x5e\xb7\x97\xad\x58\x1e\x2b\x95\xf3\xf9\xef\x16\xe4\xfc\xb7\x13\xf5\xff\xfe\x77\xbf\xc1\x7c\xfe\xfb\x05\xf9\xdd\xaf\x27\xea\xff\xfd\xf9\xd7\xbf\xc7\xf3\x5c\x90\x2d\x9a\xe7\x92\x70\x34\x3f\x5b\x2c\xb0\x98\xcb\xf9\xb9\xf9\xff\x6b\xf3\xff\xaf\x17\x0b\x9c\x3d\xc9\xe0\xef\xdf\x98\x67\xbf\x0d\x9e\xfd\xce\x3c\xfb\x7f\x82\x67\xbf\x37\xcf\xfe\x57\xf0\xec\xdc\x0d\x60\x47\x38\xb7\x43\x9c\xff\xda\xfe\x61\x07\x38\xff\xed\x62\xb1\x98\xfe\xad\x62\x3c\xcf\x32\xe4\xc9\xd6\xbd\x89\x9b\xad\x73\x3a\x5d\xb3\xd2\x79\xcc\xc0\x2f\x93\x9a\x41\xeb\x8e\xb1\xd0\x86\x25\x2b\x03\xe4\x02\x5d\x84\x77\xc6\x6c\xcd\xca\x27\xd9\x69\x95\x4b\x74\x9a\x3d\xc9\x4e\xc5\xec\xd6\x14\x28\xbe\x8e\xc8\x81\x1b\xfa\xca\x13\xe8\x6b\x57\x9b\x2d\x2c\x6e\x42\x08\x01\x9f\x30\xf8\xfc\x0e\x5f\x43\xd2\x22\x75\x45\x46\x84\xf7\x32\x47\x0f\x30\xcc\x5d\x4f\x49\x6f\x9b\x29\x7b\x59\x2c\x6f\x28\x79\x58\xb3\xb2\x9e\x25\xf3\xe5\x43\xa6\xcc\xc4\x1b\xe3\x9e\xe5\xd2\x3a\xc6\x85\xad\xb5\xf3\x75\xfc\x6c\x55\x89\x6b\x2a\xe3\x67\xba\x2a\x6b\xf4\x08\x22\x34\xe2\x47\x6e\x8c\xd5\x7e\x7f\x1f\x8f\x70\xb3\xdf\x5f\xc6\xfd\x2f\xfd\x13\xdd\x7b\xe9\x1f\xe8\xbe\x2f\x1b\xbb\x85\x9d\xda\xd0\x72\x7a\x79\x69\x8b\xab\xd3\xb7\xd0\x3a\x22\xa0\x41\x2f\x74\xbf\xbf\x6c\xb0\x04\xa3\x82\xad\x7e\xd8\xad\x25\x6d\x7d\xb0\x5a\x9b\x77\x72\x8e\x70\x82\xe9\xde\x81\x95\x9c\x22\xa8\x0b\x65\x91\xce\x30\x2b\xdc\x20\x23\x66\xc4\xe8\x07\xc4\x45\xb0\x87\xea\x5d\x3d\x17\x8b\x99\xe1\x70\x62\x2b\x88\xcd\x55\x69\x2e\xca\xca\x25\x22\xa8\x6d\x15\x46\xd0\x3c\x81\x41\x7a\xbf\x2f\x26\x93\xda\x06\x36\xbd\xca\xc3\x41\x00\x1d\x70\x81\x02\x2d\x85\x80\xc4\xb2\x6b\x35\xfe\x5c\x2c\xac\x63\x01\x21\x84\xe9\x82\xc5\x3a\x93\x03\x34\x61\xa5\xe2\x44\x83\x16\x7a\x90\x65\x2b\x85\xa8\xf6\x21\x00\xbf\xfd\xd6\x40\x4b\xf5\x1f\xea\x10\xd7\xbf\x56\xbb\xb1\x36\x18\x8d\x15\x61\xd5\x15\x29\xe0\xa2\x79\xb6\x66\xe5\x37\xe3\x6a\x35\x2e\xc6\xed\x3d\xca\x74\xa2\x09\x12\xaf\x60\xb9\x30\x85\x3e\xa4\xab\x17\xa4\x97\x92\x33\xf2\x2e\xaf\x71\x81\x97\xae\x08\xa4\x07\x3b\x53\xff\x2d\x08\xc3\xba\x93\xe0\xe7\x65\xb1\x5e\xfb\x31\x6b\x5b\x51\x49\x47\x2e\xaa\xad\xd1\x0e\x76\x00\x1b\xf5\xf7\x82\x30\xaf\x61\x63\x8d\x42\xb0\x2d\xa5\x1f\x07\x10\xac\x25\x65\x26\xb0\x31\xa7\xda\xcf\x57\x82\x7e\x5f\x84\xae\xe1\xbf\xa0\xc7\x33\xe8\x51\x93\x04\xff\xe6\x75\x25\xbe\xa7\x77\xed\x2a\x72\xad\x78\xdd\xd4\x46\x63\x41\xde\x01\x26\xea\xc4\x4b\xc6\x36\x87\xa1\xa4\x71\x0a\x07\xad\xed\x2e\x9a\x6a\x78\x12\xf4\x1e\x08\xcc\x61\x4b\xa4\xfe\x33\xb9\x1d\x02\x0c\x32\x72\x1a\x46\x8c\xf4\x9e\xe5\xc0\xdf\x71\x00\x9a\x39\xd5\x69\xc2\x58\x89\x0b\xc2\xb5\xaf\x24\xae\x93\x0b\x31\xb9\xdf\xf0\x8e\xf4\xeb\x86\xd5\xf7\x4a\x84\x34\xee\x70\xe0\x88\x55\x06\x47\xa3\x98\x4c\x8a\x13\xb0\x61\x9a\x07\xdc\x1f\x5f\x8a\x8d\xc6\x57\xa1\x18\x5f\xc4\xb7\xc9\x09\x94\x33\x59\x37\xfa\x18\x0a\xe3\xa7\x59\xe5\x36\x21\x5d\x3c\x84\x36\x93\x2e\x09\x9c\x68\x00\xb0\xf9\xef\x84\x90\x9d\xf5\x93\x63\x06\xf4\x9d\x81\x56\x93\xc9\xaa\x49\x76\xa8\x0f\x76\xab\x4f\xe2\xfa\x2c\x61\x15\x4b\x58\x40\xd1\xed\xb7\x9c\x4c\x4a\x73\x62\x4e\xce\x9b\x14\x84\xb1\xc4\x45\xe7\xd0\xc2\xe2\x76\x41\xcd\x7d\x20\xeb\xed\x8d\xac\x73\xf5\xfd\x4e\xf5\x80\xdc\x96\xf6\xd8\x50\x15\x23\x00\x3b\x83\xa5\x03\xa4\xd5\xb6\xeb\xb4\xdf\x1e\xdb\x3d\x6d\x86\xec\x1b\x50\x0d\x57\x9d\xfc\x5c\x18\xd5\xa4\xbd\xe1\x10\x66\x27\x84\xe4\x05\x8c\x8c\xdc\x06\x17\x43\xf4\xd9\xee\xde\x5a\x43\x8c\x08\x47\x6d\x5c\x52\x5f\x4d\x70\x5c\xd1\x68\xc0\xff\x1e\x08\xf4\xe2\x65\x15\x02\x4e\x67\xff\x44\xb8\x20\x15\xa4\x98\x13\x33\x19\x9d\x4d\x7d\x3b\x77\xce\x49\xa1\xcb\x0a\xcf\xd9\x82\x54\x78\x60\x2d\xae\x0d\x1c\x67\x52\x01\x98\x2b\x35\xeb\x74\xc7\x7d\xb4\xe7\xc0\x99\x15\x49\x78\xda\x4d\x34\x50\xd4\x4e\xd1\xce\xd0\xae\xa8\x8b\xa2\xdc\x38\xaa\x41\x1a\x90\x22\xc0\x09\x6f\x05\xd6\xf4\x48\x9f\x11\xab\x60\x6a\xd3\x25\x9b\x16\x50\xa2\x51\xf7\x65\xbd\x85\x44\x7f\x1c\xb7\x98\x88\xdd\x54\x0f\x61\x18\x88\x88\x2d\xca\x03\xe4\x53\x50\x1b\xa8\x09\x09\x95\x3b\x9b\x56\x35\x94\x57\x21\xf5\xd3\xf5\x28\x5b\x5c\xa9\x80\xa3\xa4\x38\xc9\x24\x23\xd9\xf3\xb8\xb5\x36\xb0\xfe\x50\xa0\xd6\x8a\x28\xbb\xe1\xdf\x45\x1a\x39\xcc\xf4\x38\x42\xf5\x4a\x4d\x1a\x0d\xe7\x4f\xcd\x09\xc3\x3b\x60\x8b\x39\xce\x58\xfd\x84\x05\x57\x3e\x66\xbe\xcf\xf7\xf1\xf1\xe5\x0a\xd8\x8a\x09\xaa\x41\xf5\x0d\xec\xbf\xb0\x5c\x98\x0e\xd4\xa6\x6a\x3c\x86\x61\xe8\xa6\x2b\xe3\xbd\xfa\x79\x0b\x75\x87\xc7\x94\xc9\x1b\x2a\xc6\xac\x1c\x57\x62\xac\xa4\x3b\x59\x8d\xaf\xa8\x93\xf5\x8c\xae\xc0\x5d\xf3\x20\x35\x24\x46\x98\x85\xcf\xb4\x07\xef\xcf\x36\x03\xba\x92\xcd\x7e\x10\xd5\xcf\xf7\xd6\xb4\xab\x9f\xff\x20\xaa\x0d\xab\x29\xbc\x01\xeb\x30\x7e\xd8\x50\x59\xcc\xf4\xdb\x65\xb5\xd9\xee\x24\x2d\xa7\x82\x16\x65\x9d\x67\xcb\x8a\x4b\xca\x25\x98\xd3\x32\xd4\x20\xfc\x3c\xca\x38\x77\x4c\xff\x01\x8a\x7c\x8c\xdc\xe5\x9f\xbb\x5a\x2d\x5b\xfd\x8d\x99\xc3\x8f\xef\xff\xfc\x83\xed\x06\xf4\xa9\xeb\x5b\x9d\xf1\xa4\x09\x04\xb0\x1f\xa2\xae\x7e\xfe\x25\x5d\xfd\x18\x75\xf5\x51\x31\xbe\x37\x94\xf7\xe4\x05\x70\x84\xc4\x94\xa7\xd3\xa2\xda\x07\xfc\x02\xa4\x2d\x3d\xea\xe5\xb7\xae\x32\x6d\x3e\xcf\xd2\x2e\xc9\x19\xce\xea\x7b\xbe\x6c\x3f\x5b\x31\xce\xea\x1b\x5a\x66\x0b\x84\xdf\x92\xaf\xfe\xcf\x7f\x7c\x75\xa1\x84\xc4\xff\xf8\x2a\x0f\x12\x81\xc4\x19\x64\xfe\xe3\xab\x7c\xfa\x3f\xd1\x57\xf8\x6f\xbe\xf9\x57\x1e\xe4\x6f\xa2\x3a\x92\xad\x4c\x91\x3f\xa8\xa3\xcc\x25\xa4\x35\xa5\x69\x0b\x0c\x58\x7d\xb4\x4a\x5b\xb5\xd1\x7f\x4d\xb7\x15\xe3\x92\x0a\x9f\xa4\x34\x7e\x3e\xdd\x80\x3a\xe8\x2d\x1a\x89\x0b\x41\xc4\xfc\xeb\xc5\x0c\x52\x96\x76\xda\xd5\xb4\x10\xcb\x9b\xfc\x6f\xda\x6e\x9e\x5d\x15\x35\x55\x7c\x9e\x77\xee\x15\x0b\xc8\xe9\xab\xfe\x30\xb6\xc0\x69\x49\x65\xc1\xd6\xfb\x3d\x9d\x4a\x26\xd7\x14\xd9\x40\x76\xb7\xe4\x97\x81\x89\x06\xca\x2f\x49\x2a\x78\xb1\x06\x5b\x86\xfa\xac\xfd\x00\x29\x92\x66\xab\x22\x69\xde\xd2\x77\xf6\x7d\xbb\xe4\xc0\xd9\x53\xf1\x4c\x26\x12\x52\x99\x02\x81\xde\x4b\x83\x84\x3f\xf6\xfb\x93\x73\x88\x35\xd1\x82\x23\xbc\x3f\x39\xc3\x19\x68\xa0\x33\xc6\xc7\x7c\x32\xc9\xf9\xf4\x4e\x30\x69\xde\xf5\x3b\x88\x80\xbf\x39\xe6\xa8\xf1\xb3\xfc\x2e\x42\xe1\x24\xe2\xc6\x70\x08\x97\xdc\x2a\x3c\xd8\x98\x6a\xe0\xb9\x44\x4d\x84\x0a\x74\xba\xa5\xbc\x64\xfc\x9a\x64\xe6\x8f\x0c\xd3\xe9\x6a\xb7\x5e\xb1\xf5\x9a\x96\x24\x73\x7f\x66\x50\x2f\xca\x94\x58\xcf\xec\x5f\x59\x83\xf2\x0f\xfb\x7d\xfe\x81\x3c\xd8\xca\x85\xaf\x7b\x74\x0f\x51\xd1\x78\x50\xaa\x13\xd1\xad\x32\x17\xd6\xe3\xbf\x4a\x95\xc1\x4a\x16\x0b\x6b\x7f\xf0\xa6\x1c\x6a\x76\x63\xc3\x87\x8f\xeb\xd5\x34\x1f\xee\x33\xda\x89\x58\x8f\xb1\x6c\xd7\x33\x8c\x5e\xfb\x7b\x2a\x7a\xec\xac\x3a\xad\xc6\xf1\x4f\x6d\x00\x8d\x9e\x15\x65\xb1\x95\x54\xd8\xd2\xb3\x81\xe5\x83\x93\xd4\x54\x45\xeb\x01\xb8\xfe\xe8\x23\xad\xae\xc6\xd6\x64\x8c\x2c\xc2\xa7\x37\x85\x29\xbc\x6c\x6b\xb3\x04\x05\xf2\xed\x54\xa5\xab\xbd\xdc\x9a\x14\x6d\x3d\x88\x57\xe3\x92\x3e\xb6\x21\xc1\xc3\xb2\xb8\xe1\x0c\xf2\x3e\x40\xbf\xcc\x39\x9a\x76\x1e\xe7\x48\x53\x78\xc3\xd6\xa6\x34\x42\x0c\xdc\x94\x49\x9b\x6a\xa6\xaa\xae\xa3\x48\x16\x6d\x15\x05\x66\x61\xe6\xa7\xae\x89\x38\x72\xc0\x7e\xb0\xca\xb5\xa0\x6f\xd5\x43\x77\x59\x1d\x03\x42\xaa\x1e\xa0\x62\x6a\x7a\xe0\xe2\x95\x4c\x3e\x69\x5f\x54\x36\xb5\xe7\x33\x2c\xc8\x19\xe6\xc4\x93\xca\x67\xdc\x93\x4b\xa6\xc9\x25\x55\x0c\x7b\x4f\x07\x73\xb6\x30\xe9\xaa\x51\x90\xab\x8f\x79\x7b\x6f\x4a\xea\x86\x2d\x3a\xc9\x75\x04\x05\x48\xd4\x55\x0a\x91\x75\x3c\x02\xac\xda\xe8\x6e\x82\xdd\x0a\x09\x43\xbc\x5f\xe1\x9b\x39\x5d\x68\x7d\x58\xff\xf7\x71\x35\xc6\x74\x4f\x51\x1b\xd5\x67\x15\x53\xe3\xb7\x54\x16\xe0\xe2\x76\x13\x17\x7a\x06\xfd\x87\x75\x72\xff\x4e\x1b\x63\x35\xd9\x86\x2a\xc1\x90\x38\x7f\x32\xd1\x71\xc5\xce\x6b\x97\xd4\x17\xd5\xc0\x09\xae\x75\x3e\x6e\x1c\x5a\x95\x75\x0f\x3a\x03\xfd\x64\x72\xa2\x2b\xcc\x2b\x09\xa2\xcc\xd1\x05\xbb\x50\xa2\xcd\x4c\x18\x5c\x7a\xcf\x8b\x6d\x7d\x53\x49\x93\xd7\x1b\x61\x76\x91\x84\x1b\xe1\xb3\x03\x50\x20\x1c\x73\xb5\xd7\x86\x9a\xa6\x77\x3a\xdc\xe7\xda\x57\x29\xf3\x14\x78\x4e\x17\x6e\xfb\x53\x64\xdc\x6e\xe1\x99\xd6\x31\x04\x5b\xe8\xfb\xf0\x6a\x51\xbb\xd9\xc9\x96\xc9\xad\xae\xa2\x18\x84\x04\x02\xe2\x9a\xe4\xc5\x63\xf6\x1b\x27\x76\xda\xe9\xb7\x6a\xbb\x55\x50\xdb\x5d\xff\x1a\x72\xce\x2a\x06\x50\x81\xa2\x91\x0c\xb7\x7a\xbf\xcf\xf9\x85\xb0\x1c\x18\x2b\xd1\xcc\x56\x8c\xef\xec\x3d\xd2\xfe\xcb\xfc\x22\xb1\x1d\x44\xcc\x06\xb7\x83\x08\x2c\xd4\xbe\x47\xfe\xde\xad\xdd\x87\x0e\x4c\x4a\xae\xd8\x2f\x5c\x47\xd9\xb2\x8e\xdb\xf6\x81\x0e\x12\x91\xba\xcc\xbb\xc5\xf4\x2b\x3d\x93\x59\x73\xa3\x6d\x0b\x63\x53\xcc\xbe\xb5\xcb\xf3\x1a\x81\xbb\xc7\x9d\x37\x85\x39\xa1\x00\xe2\x4a\xaf\x0e\x14\xf9\xf5\xea\xb4\x0e\xff\x14\xd3\xa4\xe0\x45\x58\x55\x5a\xcf\x10\xcb\xee\xe7\x43\x95\x65\xbb\x37\x84\xc9\x57\xdc\x57\x8a\xbe\x05\x39\x1b\x1a\x95\xf2\xfa\x0f\xd2\x02\x2b\x21\x21\x0c\x2c\x14\x5a\x28\x73\x80\x81\x6c\xef\x8f\x00\x2e\x4c\xe0\xc5\xba\xa8\x7d\x59\x5b\x9d\xf1\xad\xdd\x47\x47\xb2\x87\x66\x63\x56\x8f\x2b\xbe\xbe\x1f\x17\xb7\x05\x5b\x2b\x46\x7e\x7c\x77\x43\xf9\x78\xb9\xab\x65\xb5\x19\x43\xef\xe3\xa5\xea\x7e\xbc\x5a\xe9\xc6\x19\xd2\x45\x67\xbf\x6f\x17\x9d\xe5\xf0\x0c\xf3\x76\xd1\xd9\xff\x52\x88\xe8\xaf\x62\xe7\x81\x63\x6b\x63\x8b\x20\xac\x59\x7e\x73\x7e\x21\x9f\x9c\xcf\xce\x10\xe6\xe4\xfc\x29\x7f\x26\xa1\x5e\xb5\x98\xf3\x27\xe7\x0b\xff\x69\xa0\xf3\xed\x82\xc9\xa6\x31\x31\x7c\xa3\x08\xc5\x8e\x6f\x23\x95\xcf\x74\xc5\x78\xb1\x5e\xdf\x07\x5b\x85\x1e\x24\x10\x0f\x31\xbd\xac\x77\x57\xf5\x52\xb0\x2b\x2a\xec\x54\xc9\x19\xf8\x75\x3a\xfd\xa2\xeb\xf6\x27\x7f\xd6\x4e\xe2\xa8\x53\x45\x92\x40\x2b\x45\xcb\x4e\xd2\x7f\xf7\x0e\x34\x27\x81\x7c\xff\xc7\x56\x32\xe9\x6f\xf3\x40\x39\xe0\x95\x02\x02\xb5\xe5\xfe\x20\x38\x02\x21\x9c\x78\xfe\x93\x2e\xc2\xee\x87\xfa\x73\x1c\x20\xe0\x40\xd8\x4d\xb0\xe2\x5b\x35\x7a\x36\x62\xc7\xa7\x57\x4e\x6f\xe0\xf7\xfb\xef\xff\xca\x02\xa8\x1a\xf9\x2f\x7d\x32\x9c\x21\xb5\x9e\x27\xa7\x56\xfe\x29\x3f\x54\x5a\xa0\xe8\x97\x91\xe0\xab\x5a\xdd\x64\x56\x83\x2c\x0b\xf0\xb8\x05\xf1\xfc\x20\x47\x7e\x4d\x65\x3f\xe5\x76\xe3\x43\x8c\xad\x2e\xfa\x01\xcc\x46\xe2\x13\x1b\xac\x1a\x7e\xa3\x2f\x08\x99\xba\x57\xa2\x76\x44\x02\x53\x5f\x96\xed\x96\x4e\x0a\xf1\xad\xe5\x82\xd0\x78\xed\xce\xf7\x19\x33\x53\x71\xb0\xd5\x4d\xa4\x4c\x0e\x7b\x0a\x33\x6e\xd8\xce\xac\xba\x98\xa2\xa7\xb6\x7a\x4c\xf4\xde\x68\x8c\x05\x3e\xd7\x72\x44\xc5\x65\xc1\x78\x0a\x22\xf0\x79\x4f\xdf\xf0\xe9\x9a\x16\xa2\x2b\x76\x84\x5f\x8c\x5a\x7b\x1c\x88\x16\x67\x4f\xe5\x33\xeb\x16\xf5\x54\x2a\xec\xa6\x73\xb9\x98\xee\xf8\xba\x2a\x4a\x77\xf1\xa5\x70\xa2\x75\xb3\xea\x2e\x86\x89\xbf\x99\xbf\x6e\xea\x28\xbe\x7e\x7a\xcc\x97\xfe\x13\x33\x93\x03\x1f\x99\x56\xfb\x7d\xde\x5a\x40\xaa\xa6\xb9\xbe\x17\xfe\x9e\xb8\x17\xfe\xee\xef\x05\xfc\x87\x03\xde\x1b\x9b\x62\x9b\xea\x7d\xc8\xbf\x41\x50\x29\x18\xbd\xa5\xbd\xc6\xd9\x4d\xb1\x55\xbc\x73\xda\xe9\x24\x6c\xa2\x1d\x58\x72\x9d\x76\x05\xcb\x2e\x6a\xd8\x7d\xa7\xfe\x33\x1c\x8b\x97\xd4\x66\x82\x8f\x49\x1e\x9d\x2b\x72\xb7\xd0\x3d\x02\x27\x04\xd0\xf8\x6b\xe8\x32\x83\xff\x94\x76\xa0\xf9\xef\x7e\x3d\x7f\x3d\xec\x40\xf3\xef\x6a\x0a\x7f\x8d\x7c\x68\xd4\xb7\xff\xde\x4f\xf5\x3c\xa8\x34\x9e\x6b\xfd\x95\x27\x7e\x94\x4b\x26\xef\xdf\x16\xdb\x58\xf5\xc3\xe9\xdd\xfa\x5e\xdb\x9d\xca\x1e\xad\xcf\x0b\x70\xc5\x19\x7a\x77\xe5\xac\x3a\xad\x37\x1d\xaf\x95\x28\x99\x45\x10\x8b\x45\x47\x8a\xc1\x87\x10\x52\x56\x5e\xe8\xa8\x78\x25\xf6\xa8\x5f\x74\x26\x66\xda\xe2\x05\xef\xb5\x05\x33\xb7\x35\x49\xa1\x95\xfa\x43\xb5\xb3\x79\x68\xd5\x53\x76\x21\x66\x50\x81\x54\xdf\x05\x6f\x8b\x2d\x24\xff\x71\xfe\x25\x05\xec\x02\xd3\xbe\x2b\x3b\xf3\x13\xec\x77\x36\x31\xd8\x6e\x32\xa9\x43\x25\xce\xce\xff\xe8\xfa\x7a\xbc\x2e\xd8\x9a\x82\x45\x45\xdb\x47\xc1\xcd\xe3\x57\xac\xfc\xd5\x78\x55\x09\xf8\xd1\xb6\xeb\x8d\x7f\x95\x9d\xd2\xd3\xec\x57\xea\x9b\x5f\x65\xa7\x6a\xad\xa7\xd9\xaf\xf0\xf8\x8a\x2e\x8b\x1d\x14\x30\x2e\xe4\x98\x95\x8a\x63\x2b\xd6\x82\x16\xe5\xbd\x92\x00\xd5\x9b\xab\x7b\xf5\x81\x38\xcd\x7e\xe5\xf3\x2b\xec\x94\xe0\xad\x29\x76\xbe\xc3\x7a\x1d\x36\x0d\x75\xad\xcd\xb3\x84\x90\x9d\x92\xa9\xa2\x87\x27\xf0\xb0\x86\x98\x98\x70\xad\xf1\x72\x27\x13\x05\x10\x37\x40\x8d\x0d\xdc\xf2\x9a\xec\x90\x42\x2f\x70\x18\xc1\x85\xba\x77\xdc\x5b\x84\x19\x30\xc6\x1d\x0c\x54\x60\xfb\xc3\x10\x31\xd0\x01\x9e\x6d\x09\xdc\x65\x06\xb1\xd1\x4a\x2d\x64\x1b\xb2\xa1\xca\x28\x23\xd4\x63\xbe\xa4\xc8\x24\x6d\x01\x87\x97\x5c\x78\x07\xc3\x8b\x1c\x74\x7c\xef\x97\x37\xb4\xdc\xad\x69\x69\x38\xc1\x1c\x4d\x26\x7c\xba\x2c\xf8\x92\xae\xdd\x23\xcc\x6d\x05\xfc\xab\x1d\x5b\x97\xb9\xb0\xae\x2f\xaa\xd3\x5e\xa6\x21\x81\xb9\x9a\x76\x00\x7c\x8d\xe7\xcc\xb7\xf7\x56\x82\x4e\xd0\xce\xf7\xe6\x3b\xb0\x66\x63\xfd\x5d\x64\xff\x36\xb1\xb4\x90\xd7\x4c\xd1\x1b\xbb\x7e\x92\x8e\x39\x08\x4c\x7f\xa0\x1e\xd0\x16\x41\xab\x07\x79\x0c\x5c\x7d\xa9\x7d\x80\x2b\x73\x4e\x1d\x84\x90\xaa\x7b\xbe\x8c\x73\x6a\x4d\x25\x1c\x26\x56\x8e\xa1\xd6\xe3\xb8\xe2\xf0\x5b\x0b\x8c\x63\x38\x51\x33\x38\x1b\xe3\xa2\x56\x6f\x04\x55\x07\x88\x57\xe3\x7a\xb7\xbc\xb1\xcd\x98\xfe\x48\xdb\xc2\x33\xab\xd1\xaa\xb4\x37\x4b\x10\x99\x11\x4c\xc9\xd8\x68\x4e\xa0\x4a\x9e\x9b\xf6\xb7\xf7\x6f\x14\xbe\x4b\xe7\xb3\xa5\xfd\xa6\x92\xc0\x48\xbb\xf1\xe4\x0c\x07\x30\x95\x0d\xc2\x95\xda\x86\x37\xa5\xda\x12\x8b\x20\x6a\x98\x1e\x7d\x54\x72\xa8\x94\x6b\x56\x1e\x0f\x63\xf3\xca\x09\x62\x94\x26\x11\xae\x69\x34\x03\x9f\x06\xa3\x57\x9b\x4c\x44\x1f\xb2\xe7\xc2\x9a\xed\xc1\x31\x5b\xdd\x9d\x9a\xa9\x06\xef\x0d\xc0\xf7\x7e\xb6\x58\x1f\x07\xe7\xb7\x75\xd9\x6e\xde\xef\xa7\x68\xdd\xe1\x40\x35\x14\xef\x48\x80\xf3\xe6\xdc\xf7\x40\x6a\x24\x88\xee\xe6\x82\x0f\xba\x8c\xe5\x14\xcd\xa8\xa9\xd6\xa5\x90\xf2\x3d\xcd\xfd\x2d\x8b\x45\x7c\xa4\x52\xa7\x56\xd1\x45\x86\x85\xf1\x94\x6c\xa0\x22\x47\x8b\xbb\x8e\xd8\x9d\xb8\x8f\x20\x0b\xbf\x76\xec\xb5\x73\x04\x7f\x2b\xdb\x17\x88\x93\x23\x9b\x23\xc7\x37\x1a\x25\x71\xa4\xc7\xf1\x85\xc3\x36\x04\xc3\x0f\x49\x34\x8e\xa4\x3b\xf6\x0d\xd8\x71\x19\xf3\x15\x20\x21\xd4\x83\x5d\x85\xcd\xdb\x7d\xb5\xf8\x37\x6a\x6f\x02\x08\x40\xe9\xce\xc4\x30\x67\xb3\x14\x52\x5b\xc6\xad\xa5\xdd\xf8\xdf\xa1\xcd\x12\x02\x24\x74\xca\x31\xf3\xc7\xd4\xe4\x10\x83\x1b\xeb\xdf\xfa\x8d\x87\x86\x2e\x44\x9c\x57\x6c\xca\x32\x2e\x54\xde\x0a\x1a\xb1\x55\xc1\xe3\x97\x3a\xd3\xc1\xa0\x43\xb0\xe8\x50\x7d\xf4\x60\x11\x4b\xd2\xb8\xb2\xa1\x5b\xde\xff\xce\x9d\x3b\x8d\x56\xba\x22\x74\x91\xa9\x55\x66\x90\x87\xbe\x31\x59\x36\x3b\x92\x94\x53\xc5\xf9\x0f\x47\xbe\x4b\x88\xf4\x36\x40\xcb\xa9\xcd\xc7\x66\xe1\x86\x29\xa1\x93\x89\x0d\x45\x39\x09\x03\x82\x6e\x04\x5d\xcd\x28\xc2\xd4\x4a\xc4\xda\xe9\xa3\x2b\xc8\x69\xa3\x6b\xef\x1c\x20\xb7\x92\xfa\x32\x91\x23\xc4\xbe\x80\x89\x41\x82\x12\x4c\x0d\x06\xa8\xbe\xff\xdf\xee\x11\xc4\x22\x8c\x7e\x8a\x7d\xcb\x2c\xdd\xac\x08\x35\xb1\x3f\x37\x4c\x47\x99\xeb\x4c\x52\x90\xb4\x8b\x30\x5c\x4d\x93\x86\x06\xc2\x71\xa5\xf9\x56\xde\x09\xd2\x33\x19\x88\xa6\xdb\x42\x50\x2e\x21\x8a\x4f\xa7\x18\x5e\x51\x41\xf9\xd2\xbf\x7a\x13\xdb\x47\x71\xd5\x08\x25\x85\x4a\xc2\x91\xc7\x94\x96\x00\x26\xfc\x1b\x84\xc3\x78\xa6\x65\xc5\x6b\x29\x76\x4b\x59\x09\x85\x9f\xd3\xcb\x4b\x78\x77\x79\x49\x84\x25\x78\x29\x5d\x07\x2b\x3f\x6d\x93\xb4\xb9\x40\xff\xaf\x7d\x8c\xd5\xb6\x98\x5f\xb0\x33\x2c\x8d\xda\x21\xbd\x08\xdc\x08\x14\x03\xe4\x2b\x7d\xdf\xe8\x58\x46\x50\x09\x6c\x77\xf5\x4d\x0f\x79\x8d\x5d\x52\x62\x95\x5c\x47\x21\x67\xbe\x14\xde\xa2\x95\x20\x63\x7f\x32\x32\x5d\x03\x05\x67\x67\xd2\x24\x1d\x35\xda\x14\x75\x0d\xa6\xb0\x41\xdd\xf4\x2f\x0a\x5e\x71\xb6\x2c\xd6\x3f\xba\x45\xe5\x2f\x73\x01\xd9\x58\x10\x2c\x04\xb4\x65\x3d\xba\x8d\x04\x42\x98\x4b\x29\xb1\x0f\x36\x09\x19\xd4\x43\x73\x0a\xd4\x01\xeb\xba\x29\x0c\xa9\xd3\xfc\x88\x29\xab\xbf\xab\x8a\x92\x96\xb9\x0b\x02\x10\x91\x65\x20\x08\x12\x54\xf3\x5e\x57\x45\xff\xc5\x9f\x9a\x78\x72\x2f\xb1\x55\x46\x75\xba\xeb\xee\x67\x6f\xcf\xfa\xeb\x64\xe7\xbd\xfa\x57\xa9\x01\x9f\x9b\xac\x88\x4d\xfe\x6f\x9a\x60\xd0\xc4\xa5\xfd\x79\x28\x46\xc2\x40\xf5\xff\x1b\x7a\xf1\xc8\x33\xed\xca\xfe\x87\x27\x3a\x7d\xb3\x85\xaa\x9c\x2e\xd1\x19\xb8\xcf\x83\x8b\xaf\xce\x54\xff\xac\x4c\x78\x2e\xb4\x3b\xc6\x92\xcc\x17\x3e\x47\xae\x31\x7f\x4a\x53\x1b\x70\xba\x29\xb6\x3d\x4e\x7c\xac\x04\x1b\xa5\xfc\x12\xb4\x89\xd0\x51\xe7\xde\x83\x95\x3b\xeb\xac\x2d\xf2\xea\x72\x73\xf5\xcc\xf3\x65\xde\xa2\x5d\xa1\xb9\x44\xa6\x50\xd4\xba\x6f\xbe\x00\x67\x8a\x5a\x09\x76\x72\xda\x31\x1f\xba\x0d\x4d\x76\x01\x3b\xac\xa9\xdd\xa5\xa5\x32\xe9\xad\x88\xd3\x39\xa6\xfa\xba\x29\xea\xe7\xf1\xa3\x97\xfa\xce\xe9\xfb\x60\x03\x71\x71\xf5\x54\x56\xda\x80\x85\xa6\xf4\x96\x8a\xfb\x38\x79\x8f\x19\x16\xb8\xce\x7e\xaa\x3b\x48\x4c\x81\x54\xea\x5f\x01\xc3\x8d\x50\x40\x57\xfb\x28\x7e\xcc\x77\xbb\xe6\x17\x5d\x1e\x73\x0a\xb9\xe4\xf8\xbd\xb1\xc5\xd9\xe3\x33\x3b\x8a\x28\xf7\xef\xda\x41\x62\xdc\xdf\x8d\x6e\x9c\xec\x49\x13\x55\x47\x39\x8d\x39\xfd\x5f\xd8\xec\x24\x0e\xd2\xfe\xc0\x4c\x8a\x45\xd7\x50\xca\xc3\x32\x00\x08\x33\x72\xf6\x94\x3d\x13\x4f\xd9\xe9\x29\xe2\x73\x16\x9a\x47\x99\x4b\xfd\x2e\xcd\xc5\x61\x6c\xa2\x14\x43\xbe\x8d\x85\x5a\xdf\xb2\x90\x39\x47\xee\x22\xd1\x19\xc9\xa7\x09\xf3\x32\x38\x74\xc8\x2f\x4a\xf7\x71\x85\x0b\x5c\xa7\xa8\x7f\xdd\xe2\x16\x5b\x52\x64\x83\xeb\x41\xa1\x25\xb3\xe2\x5d\xa6\x5a\x7e\x46\xd2\xe9\xa8\x5a\x44\xf0\xe0\x0c\xd6\xc3\x67\x30\x86\xb0\xd3\x93\xf6\x9c\x47\xcb\x20\xd9\x52\xff\xad\x43\xd8\x75\x97\x60\x65\xe4\x25\xa1\xa7\xe7\xab\x5f\xe9\x43\xa4\xe3\xd0\x6c\xfb\xae\xdb\xff\x4f\x1c\x7c\x01\x64\x35\x5e\x51\xe9\x75\x5f\x4a\x22\xba\xdf\xd2\x71\x76\xea\x7a\x39\xcd\xc6\x77\x4c\xde\x54\x3b\x39\x2e\xf8\x98\x41\x28\x46\xdd\x39\xe4\xd1\x85\x68\x58\x23\x77\x0f\x5e\x50\xd3\xde\x4a\xde\xfa\xef\x06\x33\xc2\x71\x5e\x59\xfb\xd8\x25\x1b\x76\x3b\x89\x41\xc7\x4a\x6d\x8e\x92\x34\x67\x81\x3d\xaa\x42\xb8\xd0\x0f\x71\x81\xda\x34\x84\x5b\x51\x7c\xca\xea\x97\x4c\xc8\xfb\x0b\x3a\xad\x29\x2f\xf3\xec\x8a\x2e\xab\x0d\x85\x67\x19\x9a\xd9\xa7\x5b\x73\xd4\xff\xa2\xf6\xb0\xa6\x32\xd3\x42\x37\xa3\xe4\x01\x1c\x45\x8a\xf5\x7b\x59\x48\x3a\xcb\x76\x7c\x59\x6d\x36\x4c\x4a\x5a\x66\xd8\xf4\x3d\x3b\x39\xc3\xc1\xf3\xd9\x43\xc9\xca\xf7\x54\x5a\xf2\x31\xe3\x14\x2b\x38\x30\x7e\xad\xae\xa0\x38\xaf\x66\x7b\xe0\x59\xec\xf5\x7c\x53\xd4\x2f\xba\x6e\xa1\xfb\xbd\x9d\xb7\xa8\xd6\x6b\x5a\x7e\x5b\x2c\x3f\xaa\xdd\x52\xa8\x4b\xcb\x78\x90\x03\xdd\x40\x06\x14\xf0\x84\xf9\x50\xe5\xd9\x1a\x6e\x94\x69\x5d\xdc\x52\xd8\xfe\x00\x58\xf1\xb4\xef\xd8\x7a\xfd\x02\x16\xdc\x1a\x29\xee\x8f\xf1\xd7\x6b\x76\x7d\xa3\xc0\x89\x35\x62\x24\x12\xcd\xb9\xa8\x45\x7b\x4c\xc1\x75\xd3\xa4\xa9\x19\x89\x9c\xda\x4b\x35\xec\x41\xd1\x64\x75\x42\x3d\x00\x06\x27\x12\x2f\x0c\xab\xd7\xec\xfa\x9a\x8a\xef\x0a\x49\x45\x1b\x8c\x57\x74\x59\x6c\xe8\x1b\x0e\xf1\x30\x07\xd6\x07\x6d\x32\x33\x91\xab\xee\x34\xec\xe3\x10\xee\xdd\xe1\x69\x51\xde\x67\xa8\x69\xb0\x05\xd8\xec\x81\xd5\xef\x8b\x5b\xc6\xaf\x15\x72\x75\xf1\xa9\x77\x63\x52\x28\xa0\x9e\x87\x46\xec\xd9\x92\x26\x37\x50\xb5\x2b\x59\x79\xc4\xbe\x7a\x38\x6a\x34\x64\xfc\xb6\xfa\x48\xbf\x63\x2b\xba\xbc\x5f\xae\xe9\x8b\x42\x2f\xba\xce\x34\x65\x2a\xd5\x3c\x3f\xe8\x5a\xcd\x03\x1b\xf6\x59\x77\xe4\xf0\xdc\x5c\xbf\x40\x29\x07\x7b\x0d\x4f\x7d\x77\xfb\x82\x5e\x32\xc5\xd0\xa8\x6d\xd4\x33\x7d\x60\xf5\x9f\xe1\x8f\x93\x73\x1c\x16\x91\x1b\x1c\x4c\x37\x2c\xa7\xd1\xa0\x4d\x1b\x09\xe2\x13\x44\x8d\xf2\x17\x26\xf1\x96\xd6\x75\x71\x0d\x79\x96\xbc\x0f\x9b\x9c\x72\xd0\x1c\x1b\xca\x88\x81\x28\xe8\xac\xbb\xb9\x4d\x7f\xae\x17\x02\x33\x06\xad\x6b\x0f\xd8\x15\x9e\x3c\x1a\x01\x7b\x29\x06\x68\x63\xc3\x79\xdb\x13\xd2\x4b\x48\xfa\x30\xe8\xa8\x9e\x0e\x51\x02\x73\x14\x71\x00\x8b\xe3\x51\x03\x76\x3e\x89\x6d\x83\xc8\x1e\xc1\x59\xa3\x50\x90\xc8\xa7\x6a\xf3\xc3\x3a\x75\x1e\xb5\x51\x4a\xee\xf6\xf5\xbe\x60\x05\x0d\x18\x9b\x8a\xe6\x81\x86\x3a\x30\x1a\x3d\xf8\x74\x7c\x4c\xf7\x29\x88\x9c\xb3\x05\x06\x1e\x34\x99\x68\xf9\x82\xe6\x02\xcd\x9c\x12\x8c\x37\x39\xa3\x48\x4d\x18\xf2\x6f\x51\x52\xd0\xfc\xc1\x9d\xf6\x99\xa9\xc5\x08\x37\xe5\xf7\xf4\x4e\x91\xb2\x9a\xca\xdd\xb6\x05\x8c\xd0\x24\x06\x3c\x71\x9d\x43\x4e\xaf\x9a\x4e\xcd\x41\x9a\xfa\x3d\x27\xc7\x1c\x9d\xe3\xe8\x7c\x4d\xc3\x33\xf6\x45\xc6\x00\x9e\x78\xd7\x81\x8b\x5e\x71\x99\x35\x01\xcb\xb2\xa6\xc7\x8d\x76\x90\xaa\xb9\x1e\x97\x54\x9d\xbc\xd6\x2a\x43\x32\x44\xd6\x14\x07\x40\x4e\xbc\x6a\xc3\xe7\xaa\x0d\x1d\x96\x6e\x93\x4e\xd4\xd6\x39\x8c\xad\xd5\x75\xb6\xc4\x13\x93\xc1\x2d\x31\x67\xda\x40\x75\x3a\x4c\xad\x4b\x56\x2a\xc1\x39\x35\x5a\x8b\x17\x8b\x4d\x2a\x3b\x0f\xa8\x80\x36\x1c\x33\x2f\xb7\x3a\xe8\x42\x13\xb2\xc8\xab\x8c\x2c\xa9\x7a\xd7\xbb\x4d\x9f\x70\x5b\xec\x8e\x38\x3b\x9f\x85\x5e\x76\xb0\x7d\xe5\xc5\xa5\xb1\x8d\xbb\x7f\x08\xe9\x4c\x2e\x49\x45\x73\x71\xd1\x92\x38\xd1\xec\xa1\xc1\x12\x21\xa3\x56\x01\x7e\x9b\x08\xac\xc4\xb2\x42\x52\x1d\x58\x85\x25\x3a\x32\x13\x1b\x43\x93\x49\x16\xf4\x94\xe9\xfc\x02\x99\xeb\xcc\x3e\xe8\xd8\x89\xe6\x4c\x57\xc6\x61\x0b\x42\xe1\x3f\x2c\x31\x3f\xcd\xa6\xd9\x29\x0b\x54\x60\x4d\xfe\xc0\xea\x57\x9b\xad\xe2\xfe\xcf\xb1\xd6\xc5\x00\xb7\x66\x7f\xd0\x52\xff\x6d\x24\x04\xf5\xa7\x65\xe8\xe0\xb1\xde\x36\xfd\x03\x68\xa3\xfa\xc3\x30\x0b\x67\xc9\x3b\xae\xc3\xc6\x1d\x29\x48\x40\xfa\x7e\x98\xa9\x9f\xf2\x59\x5a\x22\x31\xbc\xc4\xe5\x36\x08\xa4\x26\x32\x89\x13\x3a\x46\x1c\x6b\xf4\x48\x88\x1c\x49\x2c\x32\xf7\xc1\x81\x13\xea\xee\xe0\x5e\x79\xe6\x51\x28\xea\x0e\x7c\xff\x40\xbc\x92\xaf\xab\x1d\x8f\x41\xda\x58\x18\x29\xb8\xb9\xfd\x3d\xc3\xf4\xe7\x0e\x0f\x13\x03\x4c\xcb\xf7\xfd\x22\xdf\x3f\x66\x55\x98\x4e\x15\x33\xbf\xa6\x05\xd7\xaa\x80\x03\xfc\xee\x10\x47\x9b\x00\x50\x62\xc6\x80\x64\x20\xc6\xe8\xb9\xcf\x5a\xb2\xb3\x5e\x4a\x70\x3e\x7a\xb0\x50\x01\x09\xda\xce\x1e\x52\xec\x42\x5a\x98\x9d\x4c\x5c\xb4\xe6\x4b\x56\xc2\xa9\xcb\xbb\x5c\x33\xa7\xbd\x0c\x6a\x92\xa3\x4d\x31\x7c\xa9\x5b\xe6\x68\x89\xd8\x7e\xfd\xe5\x25\xe3\x5f\x2a\x6f\xf4\x93\x9a\x84\x8c\xa8\x1e\xf7\x1c\x22\x73\xe6\x67\x35\xc5\x66\xf1\xb3\x1d\xb5\xd3\xeb\xe0\x48\xa4\x5f\x09\x38\x26\xd3\x3c\x0b\x49\xe7\x59\x84\x4a\x81\x32\xe6\x68\x26\x33\x56\xdb\x7c\x8a\x52\xe3\x33\x48\xfd\x8f\xc3\x48\xd8\x80\xe4\xd6\xaa\x37\x9f\x49\x1d\xe2\x28\xc8\xc0\x65\xdf\xa7\xac\xf8\x27\x69\x1a\xbe\x98\x34\xff\x89\xca\x87\x83\x12\x9e\x25\x71\x01\x8b\x90\xc2\x5b\x2d\xd7\x2b\x59\xfe\x0d\xbf\xa5\xa2\x8e\x53\x79\xe4\x9f\x2a\x72\x96\xac\xd4\xe7\x48\x4d\x26\x75\xb9\xe8\xbd\xd1\x10\x78\xc4\x16\x0e\xa8\x00\x7a\xd4\x22\xff\x77\xa8\x35\xfa\x8f\x5c\x1f\x70\xfe\x95\xd5\x14\xcd\x51\x58\x03\x99\xad\xad\x08\x0f\xee\x91\x29\x3c\x81\xf7\x0a\x4f\x66\x89\xb7\xba\x48\xfa\x11\x38\xd6\xe8\x38\xe3\x4c\x54\x95\xcc\x02\xa9\xb8\xfc\x97\x36\x06\xba\x69\xde\xd0\x43\x59\x50\x5e\xe6\x3a\xd9\x4b\x4f\xb6\x13\xb5\x86\x2d\xc5\x1b\x8a\x6f\x29\xbe\xa7\xf8\xda\x59\xe4\xfa\x24\x1d\x7c\x45\xc9\xc9\xf9\xe8\x9e\xb6\x4c\x48\x27\x57\xd4\xda\x68\x5c\xf6\xe4\x30\x4f\x38\x18\x02\x7d\x9e\x70\x34\xda\x52\x42\xa7\xce\x58\x8c\x37\xea\xa7\xc9\x5b\xe4\x5c\x65\xf0\x6d\xf0\xd4\xb7\xdd\xd2\xc9\x64\x43\x27\x93\x5b\x3a\x99\xe4\x57\x00\x35\xeb\xfe\x73\x45\xb5\x38\x78\x99\xcc\xfa\x80\xef\xd2\x8f\x5f\xa5\x73\x44\x38\x38\xbf\x0b\x15\x5b\xaf\x28\x04\xd1\xe5\xf0\x3f\xa1\x10\x47\x26\xf3\x6c\x9a\x99\xbc\x19\xef\xe9\x23\xbd\x34\x7d\x8a\x13\xe9\x4c\x6a\x71\xa0\x8c\x2c\xae\xc9\x60\xe6\x93\xe5\x9a\x51\x2e\xdf\xb4\x3e\xbb\xec\xf1\xf5\xbc\x0c\x82\x4a\xe3\xd8\x1a\x4d\xc3\xe2\xc6\x26\xf3\x4d\xc0\xc3\xbc\x2d\x78\x71\x4d\xc5\xeb\xf5\xae\xbe\xe9\x76\xbc\x51\x07\x0d\x62\xc0\x19\xbf\x6e\x75\xff\x23\x35\xac\x77\xfc\x59\x59\x7d\x5f\x49\x33\xa5\xd6\x17\x3e\xc2\xb5\x35\xab\x50\xf4\x69\xa5\xcf\x05\xed\x45\xf4\xac\x6e\x79\x8e\xb7\xb2\xeb\xba\x18\xe8\x16\xfc\x4a\xba\xa2\x42\xd0\xf2\x83\x26\x21\xed\xd7\x22\x60\xeb\xda\x73\x30\x6e\x50\x9d\xe7\x91\x93\x54\x6b\x1a\x16\xc1\x75\x60\x53\x7f\xa4\xa8\xa0\xb2\x60\x9c\x96\x6f\x8f\xff\xc0\x9f\x7f\x73\x9a\xea\x47\x7e\xf3\xf3\xa1\x41\x96\x3b\xe1\x15\x28\xe1\xba\x68\x88\x52\xf7\xe0\xc4\x64\x91\x5c\x67\x87\xbc\x49\xe5\xd0\x89\xd1\xda\x64\x90\xec\x60\xb5\x4b\x87\x64\xea\x97\xfe\xe1\xa7\x37\x2f\x2f\xff\xf4\xea\xaf\x8b\xe8\x8b\x8e\x98\x1c\x63\x4a\xf0\x24\x3c\x18\x27\xe7\xf1\xa1\xb0\xbf\x0f\x1d\x08\xd7\xae\x7b\x18\xdc\xab\x0e\x3e\xfa\x39\x40\xae\x41\x6b\xb4\xef\x22\x68\x30\xd9\x2e\x7a\x86\x2f\x23\xe4\x8c\x16\xed\x50\xb3\x03\x0a\x8f\x98\x51\xcc\x31\x83\xb2\x23\x1d\xcf\x8a\x6a\xca\xea\x3f\xb2\xb2\xa4\x5c\x31\x47\xa1\x8c\xd3\xf5\x5c\x30\x2e\x53\x46\x13\x04\x11\xf2\x94\xc0\xb5\x3b\x8d\xb5\xb1\xc4\xb8\x21\x84\xe8\xe4\x75\x71\x7d\x90\x35\x2c\x57\x32\x46\xc4\xbc\x0b\xb6\x76\xbf\x37\x89\x64\x68\x83\x2b\xd5\x9b\x9e\xfb\xeb\xdd\x7a\x7d\x6f\xc4\xbc\xc4\x0a\xce\x55\xe3\xff\x8f\xbd\x6f\xff\x6f\xdb\xb8\xf2\xfd\x9d\x7f\x05\x89\xed\x45\x31\x57\x23\x5a\x8a\xbb\x6d\x97\x36\xac\xca\xaf\xc6\x6d\x1c\xfb\x5a\x4e\xd2\x2c\xcb\xab\x0b\x11\x43\x69\x6a\x68\xc0\x02\x43\xc9\x8a\xc8\xff\xfd\x7e\xe6\xcc\x1b\x18\x80\x94\x62\x27\xe9\x36\xbb\xfd\xc4\x22\x30\x2f\xcc\xe3\xcc\x79\x7e\x8f\x2e\xfb\x8a\x7d\x53\xf7\x38\x02\x8a\x22\x8e\x13\xe0\x28\x81\x70\xa4\xa4\x19\xcd\xdf\x7c\xaa\xe2\xf8\xa1\x1f\x98\xa8\x2e\x17\x10\x6f\x76\x54\x59\x59\x4d\x69\x8c\x76\xac\xa8\x4a\xdb\xaa\xa1\x2f\xef\xac\x49\xf2\x8d\x74\x1c\x05\xce\x35\x8c\xc0\xd4\xd9\x44\xbb\x9a\x1c\x85\x14\xe9\x76\x1c\x85\x2c\x2c\x2b\x76\xae\x5c\xb0\xa6\x2a\x2d\xab\x7e\x4d\xae\x77\xac\xf6\x35\xb9\x96\x55\x1a\x6a\xf8\xde\x4a\x50\x56\x54\x33\x9a\x85\x9d\x2a\x9a\xd2\xa2\xaa\xf1\xe4\x69\xa2\x6e\x8d\xdc\x3d\x17\xc7\xa3\x8e\x13\xe2\x05\xf8\xa8\xc8\xa1\xf4\x16\xfe\x98\x70\xec\x7b\x0e\x82\x13\x0d\x76\xc7\x32\x69\x8d\x0e\x52\x4d\x54\x86\x38\xba\x94\x12\x57\x5a\x25\xe6\xbc\x83\x5b\xc0\x22\xfc\xca\xb1\x47\x34\x17\x4c\x30\xb1\x70\xa3\x32\x6a\xca\x22\xf3\xca\xe1\x42\x48\x1a\x95\xec\x55\x99\xf2\x06\x43\xdb\x0b\xab\xe2\xa0\x35\x97\x26\x15\x7c\x86\xeb\x66\xc8\xf5\x2a\x3d\x78\xb4\x7a\xac\x5d\xe5\x1e\xad\x34\x87\x5f\xa4\xf5\x74\x35\xc3\xf3\xb4\x9c\x16\xb3\x81\x19\xff\x1c\x12\x03\xba\x99\xa7\xe7\x32\x51\xf5\x31\x49\xc8\xb4\x98\xa1\xc9\x07\xf5\x07\x16\xff\x4d\x33\xe5\xc3\xb7\xf0\x48\x84\xc4\x22\x14\x83\x97\x6b\x2b\xa5\x1a\x05\xfb\x96\x98\xc4\x61\x0a\x01\xad\xc2\x0b\x9d\x97\xb8\xd6\x39\x49\x2b\xdc\x4c\x52\x8a\x90\x7f\xbb\x71\x75\x7d\xbc\xcc\xe6\xbc\xac\x6e\x42\x98\x3d\xc6\x16\x82\x73\x6f\x78\xf8\xa2\x19\xb7\x86\xff\x0a\x61\xe1\x39\xbe\xd0\xbd\x28\xe9\xea\x79\xe3\x2a\x52\x09\x1d\x72\x7c\xe1\x83\x91\xcb\x86\xc5\x86\x76\xee\xb9\x10\xe0\x6e\xe3\x66\x76\x59\x47\x7d\x8b\x4a\xc6\xc2\x96\xf1\x38\x90\x05\x19\x13\x4d\x15\x73\xe7\x28\xb4\x8c\x5b\x9e\x7f\x6f\xe7\xc5\x1d\xe4\x54\xcd\x75\x5e\xf9\x48\x7b\x0a\x6a\x29\x37\xf1\xb7\x6d\x6c\xa0\x30\x77\xd5\x91\xbb\x93\x74\x95\x9f\xf2\x99\xee\x25\x8e\x77\x29\x95\x20\x8d\xb8\xdc\x57\x7a\x83\x42\x43\xf6\xd9\xd3\xbe\x34\xa3\x29\xe9\xe2\x51\x01\xf4\xa3\xd9\xd4\x94\xcf\x06\x76\x54\xad\x77\x58\xc2\xb0\x9d\x52\xa9\x88\x7a\x55\x1f\xd7\x37\x6c\x1e\xc7\x95\x89\xa8\x43\x8d\x3d\x0f\xc7\xca\xc7\xcf\xe8\xe4\xad\xc2\x0a\xda\xb2\xc3\x12\xaa\xe5\x37\x50\x0a\xba\x45\x22\xa8\x24\x58\x98\x80\x7b\x68\xf4\xfc\x64\x32\x04\xca\xfa\x1f\xa2\x84\xf2\x7e\xc4\x55\xea\xf8\x8a\x02\x2f\xe7\xe4\x75\x75\x7c\x2f\x35\xb3\x78\x92\x5d\x29\x54\xad\x0a\x13\x84\xc1\x59\x56\xf0\xb5\xd0\x33\xcf\x2a\x4e\x72\x7b\x48\x9a\x43\xf6\x0e\x90\xda\xcd\x4e\xc8\xbd\x21\x2b\xde\x16\xc6\x91\x53\x2d\x92\x61\xb2\xe5\x58\x23\xf6\xee\xd8\xd9\xe1\x3d\x3b\x3b\x44\x92\x4c\xb4\xbc\xbd\xd5\xd4\xf8\x1f\xac\x02\xea\xe4\x05\x87\x2b\x77\xce\x65\x13\xc3\x72\xa1\x26\xde\xb8\x91\x18\xf8\x62\x17\x34\xd9\x87\xdd\xe2\xda\xe3\xd1\x31\x75\x44\xf8\x56\x19\x46\x26\x15\x56\x66\x91\x09\xd9\xa0\x0d\xea\x43\x54\xe2\x4d\xbb\x18\xe6\x1b\x17\x62\x89\x68\x88\x2d\x28\x28\xcb\x10\x84\xc9\x06\xe1\xf6\xb7\xcc\xcb\xcb\xa5\xd8\x7c\x58\x03\x3e\x2c\x8a\xec\xbc\x8e\x50\x18\x90\xaa\xbd\x62\xca\xd9\xbf\xf4\xfd\x01\xda\xcb\xe8\xb0\xcc\x89\xb3\xf3\xdd\x5a\x91\x3a\x48\x01\x22\x9b\x18\x10\x88\xb0\xd4\x63\x08\x66\x4b\x1c\x0a\x01\x44\x99\x73\x20\x4e\x1e\x14\x93\x7e\x7e\x38\x3a\x9d\x5f\x90\xf9\x87\x97\x65\xf5\xa6\x5a\x5e\x64\x8c\xe4\x5e\x70\x44\x1d\x21\xf9\xad\x01\xe9\xa0\x53\x50\x69\x0d\x49\x34\xe0\xc1\x2a\xb4\x2f\x2d\xff\x6e\xe8\x56\x89\x8c\x0e\xb1\xfd\x3e\xd9\x66\xc7\x3c\xa0\x3e\x71\x51\x52\x29\x13\xfa\xde\x1e\x4f\xab\x67\xc5\x4e\x35\xd1\x21\x64\xe9\xfe\x39\xd4\xc5\xbc\x2d\xd1\x52\xd1\xa8\x47\xe6\xb2\x01\xf1\xaa\xbf\xe1\x1d\x86\xbd\x93\xd8\xec\x0c\x4c\xf4\xba\x05\x11\xb1\x15\x31\x0f\xc2\x75\x17\x38\x62\x39\x3e\x5d\x50\x66\x23\xf8\x5a\xc9\x1f\xdc\x84\xb2\x01\x02\xee\xd7\x7e\x7a\xf3\x97\xba\x64\xc7\x4b\x6a\xa3\x73\xb0\xa2\xea\xac\x45\x3e\x2c\x86\xdb\x47\x92\x50\x4c\x70\x83\xf9\xc5\x32\x8d\x05\xf2\x48\xc9\xd6\x4a\x30\x6d\x95\xa6\x01\x6e\xe4\x63\x77\x62\x97\xd3\xae\xb8\x57\xc0\x28\x81\x10\xcd\x3c\xe3\xd9\xd1\x99\x03\x4e\x80\x7a\x41\x38\x64\x05\x05\xc1\x4a\x53\x77\xc2\xee\x00\x10\x5a\xba\x22\x4d\x96\x52\x93\x69\x34\x13\x6c\x02\xd6\x0a\x38\x89\xa2\x91\xe1\x55\x0a\xc1\x00\x04\x4b\xd1\xa7\xc4\x65\x45\xcf\x29\xcb\x38\x65\xe7\xaf\xda\x42\x90\xe9\x6f\x42\x41\x2f\x05\x62\x8f\xc9\x03\xa5\x13\xcb\xf4\x82\xcc\x32\xf9\x85\x52\x5e\xf2\xbe\x4c\x50\x24\x09\xdd\x23\xa4\xe9\x63\xce\x05\xc7\x8a\x1a\xfc\x72\x90\x47\x23\x12\xf1\x4c\x27\x89\xf2\xf6\x17\x80\x1b\x51\xdc\x60\x25\x54\xe6\x14\x37\x57\x81\x98\xd4\xc8\x84\x06\x47\x98\x60\x93\x4b\x60\x8e\x55\x1a\x84\x49\x71\xd4\x8e\x22\xc1\x16\xc7\x56\x4a\x87\xab\x8d\x17\x7f\x9b\x8a\x29\x81\xec\x98\xfd\xf3\xe2\xc5\xef\xca\x8d\x68\xd8\xc5\x20\xfe\x8e\x0b\xc1\xe1\x42\xea\xdc\x7d\xd7\xb0\xe0\xa6\xd6\x71\x62\xc4\x82\xeb\x36\xd8\x51\x05\xa0\xeb\x27\x7b\x51\xdd\xdb\x06\xda\x47\x1c\x92\xc0\x8c\x46\xcc\x1f\x64\x1c\x37\x1e\x34\xb9\xdc\x04\x0d\x68\xba\x24\x26\xd7\x83\x92\xd7\xed\x86\x97\x69\x3e\xec\x20\x4c\x52\x6a\x9d\x41\xc9\x7e\xe0\xa4\xf9\xc5\x18\xb2\x60\x30\x80\x25\xc0\x10\x9c\xaa\xf2\xa4\x61\x79\x42\x68\xed\xe4\xe4\x9d\x54\xc1\x14\xbe\x9e\x1b\x45\xa9\xe1\xab\x71\xe3\x33\x26\x19\x0e\x28\x18\xac\x1b\x85\xe0\x84\x3a\xa6\x3b\xa5\x9b\xc6\x81\x08\xca\x15\x64\xe6\x48\x5f\x1d\x25\xda\x42\xd0\x96\x0a\x00\x96\x52\x8e\x21\x82\x09\xbe\xe3\xcb\x00\x3a\x73\x3b\xf9\x0f\xce\xd2\x2d\x6a\x77\x07\x4b\x2e\x5b\xaf\x93\x2c\x6d\x5e\x16\x9d\xfb\x48\xe6\x04\xc0\x1c\xd3\x6e\x4e\x93\x19\x10\x93\xaf\x32\x4e\x6a\x2e\xd8\x30\xe0\xb6\x23\x3d\xe3\xc0\xca\x63\xb6\x41\xad\x46\xb8\x7b\x75\x94\x98\xe0\x06\xc9\xc2\x3c\x70\xdf\x6c\xad\x24\xaf\x69\xb4\x41\x5b\x0d\x12\x62\xc5\x33\x9c\x69\x72\x10\x9a\xf0\xbe\x5b\xc9\x39\xc0\xec\xbe\xa4\x81\xa6\xac\x71\x87\x94\xf6\x0e\xa1\xeb\x35\xd5\xeb\xeb\x05\xbb\x12\x5c\x82\xae\xa9\x04\xc5\xd6\xa7\x26\xf4\x2a\x53\x76\x6b\x27\x26\x04\x33\x5c\xe1\x6c\x57\x6a\xaf\xf5\x55\x2e\xad\xaf\x0d\xad\xcf\x2c\x19\xcf\x80\xeb\x09\xb6\xd2\x01\xce\xd5\xfb\x19\x1c\xc8\x26\x43\x46\x7f\x56\x8d\x55\xa7\x82\x04\xc2\xde\x54\xbf\x23\x6c\x5e\x99\x6d\xab\x46\x1a\x59\x91\x17\x0d\x48\x51\x13\xc5\x75\xb9\x5a\x38\x72\x74\x45\x26\x97\x64\xb0\x65\x34\x29\xb5\x4a\xaf\x26\x7d\xe9\x52\x8a\x18\x61\x74\x97\x4d\xd9\x73\xf0\xc5\xf6\x30\x10\x16\x03\x7f\xf2\xc2\x7b\x79\xd0\xba\x36\x92\xe6\xbd\x51\x43\xf9\xd6\x1e\x4b\x46\x87\x62\x16\x5b\x65\x4f\x20\x31\xe4\xcb\xb2\x9a\x13\x29\x13\x26\xa3\x03\x95\xa0\xe4\xc7\x32\x62\xfe\xa9\x40\xfa\xb0\x84\xb6\x2e\xc5\x0c\x97\xad\xad\xdb\x79\x12\x8e\xee\xbc\xb5\xb3\x0d\x9a\x64\x76\xe1\x76\xe3\x72\x3f\xc1\xd2\xb9\xcc\xf1\xbf\xd4\xe2\xb5\x38\x49\x16\xe0\x24\xef\xb9\x40\x61\x4e\xb3\xdc\xa0\x49\xe9\x88\xb2\xd6\x94\xe8\xc7\x5f\x84\x84\xec\xa3\xa0\x4e\x76\xd2\x96\x41\x03\x89\xdd\x9a\x4a\x5f\xcf\xd3\x60\x74\x10\x54\xd9\x86\xd8\x84\x3e\x95\x6d\x87\x06\xb4\x43\x19\xdb\x51\x5a\x5c\x9a\xbf\xf1\x64\x2a\x05\xb8\x26\x1e\xa1\x90\xdd\xfa\x40\x0b\xc0\x5d\x09\x05\x7a\xa4\xdf\x66\x6e\x81\x72\xac\x38\xb9\x3e\x04\x35\xa7\x0d\x5b\x1a\x7c\xde\x00\x4e\x70\xb5\x6c\x85\xd2\xb8\xd8\xba\xce\xd1\x59\xae\xea\x0b\xc0\x20\x22\x0d\x9d\xa1\xca\xb4\xd3\x4a\xab\xa3\x34\xed\xa7\xac\xe4\x74\x71\xa3\x7c\x94\x28\xa9\x13\xae\x66\xc6\x3a\x05\x1a\x11\xc3\x7c\xe2\xb7\x7e\x90\x7d\x13\x16\xce\x3f\xd2\xa2\x96\xfd\x24\xb0\x5c\x86\xef\x81\xae\x36\x1a\xb5\x12\x82\x8f\x49\xc2\x91\xd7\x62\x17\x81\xda\xd6\xa6\x7b\x62\x3f\xb4\x5a\xed\xda\x06\x74\x91\x98\xad\xaf\xb2\x5e\xb8\xd0\x97\xa0\xa2\x52\xe1\xfc\x8a\x22\x49\x8c\xd9\x9a\xf0\x06\x7c\x2c\x17\x7f\x2a\x30\x4c\x65\xce\xb7\xa0\x98\xb0\x4f\x07\xba\xb3\xd6\x02\x24\x04\x39\xb8\x96\xa1\xaf\xf3\xf7\xe4\xa0\x83\xfb\xa3\xb5\x28\x27\x3d\xf0\x89\xda\x2f\x4a\x4f\xef\xf9\x7a\x46\xf8\x96\x09\x79\x9e\x18\xd7\xed\xca\xb2\x3d\x1c\xd4\x7c\x5e\x7e\x8f\xd0\x06\x11\xf3\xf3\x32\x21\xeb\xb5\x4e\x4a\xe4\x58\xc8\x9c\x93\x2a\x1a\x73\x42\x0d\x02\x4a\x6c\x18\x9f\x53\x44\x3a\xbe\xca\x5a\xcd\x08\xb4\x56\x1d\x59\x40\x5a\x1e\xb4\x17\x7c\x47\x71\xfd\x5a\x16\x0e\xc5\xb7\x79\xc5\x6d\x81\x48\x6b\x4e\x5b\xb1\x0f\x01\xd5\xa9\xde\x4e\x5f\x69\x25\xb3\x36\x47\x3b\x8a\x7d\xe4\x1f\x5d\x58\xba\x70\x68\x05\x2c\xc5\xf6\x5e\x87\x3b\x74\x7a\x74\xbb\x69\x49\xbf\xa1\xc4\x57\xa2\x4b\x65\xba\xfe\xce\xf8\xd7\x76\x59\x27\xa1\x11\xeb\x86\xab\x35\xa4\x72\x06\xed\xf3\xc8\x6d\x55\xc7\x88\x74\xcc\xbb\x87\x12\x21\x8f\x30\x0b\x62\xaf\xb6\x7d\x64\x0c\x40\x1c\x38\x27\xaa\x8b\x98\x5d\x64\x2c\x2f\x48\xfe\xe2\x8a\x30\x9e\x54\x18\x7c\x95\x45\x09\x05\x03\x06\x7d\x18\x91\x5b\x19\xc1\x72\xcf\x09\x44\x6f\xd5\x2e\xd2\x2b\x29\xaf\x22\x6a\x50\x57\x51\x49\xef\x85\x5c\xde\xa6\xeb\x42\x83\xc6\x37\x10\xd7\x9b\x7a\x17\x40\x8f\x6b\x4a\xb6\x1b\xdb\x95\x21\x82\x81\xce\x76\xf8\x84\x46\x75\x7d\x05\xa9\x42\xfa\x18\x48\xfc\xa6\xcb\xf2\x2a\x2b\x9e\x5d\x90\x46\x6c\x63\xef\xf8\xf5\xa2\x74\x6a\x1b\x70\x95\x8e\x0e\x1d\xb8\xc2\x44\x46\xe0\x88\xbb\xfe\x1b\x26\xcf\xbb\xa7\xa0\x4c\x3a\x75\x26\x71\x5c\x6d\xd7\x86\x74\x8d\xd3\xd7\x8d\xb4\x5e\x03\x34\xa0\x99\x73\x4d\x54\xef\x37\xe5\x7e\xed\x84\xb8\x26\xbc\xfb\xcc\x20\x5c\x32\x6e\xf4\x52\xcf\xdc\x0d\x7e\x8e\xb9\x73\x76\x2b\x1c\xda\x1d\xa6\x2d\x21\x71\xac\x32\xf2\x8c\xd2\x94\xa8\x39\x70\x14\xa7\xe1\xb9\x54\x55\x10\x96\xd5\xd5\x05\x7f\xd7\x26\x74\x35\xe4\xb5\x43\x4b\xf6\xcc\x78\xf5\x3b\x2d\x76\x9a\xd2\xb5\xbb\x7e\xbf\xb7\x87\x24\xca\xe0\xf1\xf9\x5c\xd7\x90\x0d\xb4\xe3\x9a\xfa\x3d\xef\xa0\xa5\x50\x30\xd4\xc0\xa6\xcf\x01\x02\x18\x29\x8f\xa5\x48\xdf\x4a\x2d\x13\xad\xa5\xcd\x6e\x14\x52\xc3\xed\x43\xc2\xfc\x81\xe3\xd0\x93\x83\xad\xac\xa9\x24\x8f\x6e\x9c\x44\x08\xd6\x4b\xa6\xca\x09\x31\x1f\xd7\xca\xff\x1c\xfe\x4d\xc1\x35\x7d\x7a\x30\x93\xd9\xad\xb3\xf6\xc5\x00\xd9\x06\x8c\x03\xe5\x5e\xb4\xff\x24\xda\x23\x83\xbc\xbc\xcd\xc6\xe4\x23\xe5\x71\x2c\xff\x55\xe2\x44\x96\x66\x6e\x24\xf4\xe6\xfa\x82\x16\x24\x19\x65\xd3\x72\x26\x4f\xe7\x2a\x3d\x25\xd3\x1a\x8e\xda\x0a\xf1\x74\x25\x19\xfc\x1a\x57\xe9\x6a\x4c\xc4\x11\xab\x71\x26\x9e\xc2\x9d\x04\x4a\x1a\x9e\x4e\x05\x6d\x9b\x4a\x4d\x56\x21\x47\x0c\x10\x10\x2c\x3d\xc0\x34\x2d\xb4\xcf\x15\x7b\x4c\x21\x59\x53\x92\xa5\xd9\xb4\x98\xb2\xd9\x0c\xc9\x26\xe3\x58\xe5\x5e\xcb\x10\xce\x64\x87\xe2\x2e\x50\x8f\x06\x30\xa0\x54\x06\x6d\xd6\x13\x8e\xe5\x30\x26\x15\x86\x41\x4c\xb2\xcd\xc6\x76\x56\x35\x3b\xab\xa6\x6c\x26\x7b\x91\x33\x00\x03\x6b\x4d\x62\x9a\xed\xec\xc4\xe0\x56\x8b\x00\x23\x0a\x3a\xe6\xcd\x8e\xb9\xe8\x18\xc6\xac\xe0\x96\x41\xe1\xe6\xdd\xd8\x1d\x9a\x36\x9f\x1b\x97\x15\x86\x44\x54\x18\xfe\x3f\xe0\xc5\xff\xdf\x30\xd2\x88\x5c\x7b\x69\x54\xb2\x61\xb4\x77\x02\xf8\xc7\xb2\xa7\xbd\x68\x08\xcb\x3a\xa4\x6c\x08\x53\x34\x8c\x30\xdb\x4b\x89\xbb\x4b\xc6\xc3\xc8\x3a\xeb\x09\x8a\x28\x5a\x7a\x96\x89\x23\x00\x70\x5d\xc3\x68\x4f\xa5\x54\x66\xf5\x92\xcc\x79\x52\xa1\xbd\x68\x1c\x21\xdc\x14\x1d\x98\xda\xed\x36\x06\x27\x9c\x0d\xa5\x05\x56\xc7\x1d\xb0\x3a\x93\x12\x85\x40\xe8\x0d\x24\x41\xb3\x60\x75\xd5\x6c\x70\x68\x7c\x0c\x9a\x3e\xd1\x2a\x69\x9f\x3e\xe0\x4a\x33\x22\x49\x95\x7f\x25\xd8\x55\xe8\xf0\x69\x6b\x44\xbc\x84\xb8\x17\xd2\x31\x0a\xec\x0b\xbb\x58\x5c\x4f\xaa\x17\x05\x70\x1b\xe9\xc6\x1d\xd8\x13\xe3\xaf\x28\xb7\x10\x69\x6e\x21\x65\x73\x20\x90\xcd\x4c\x63\x5f\xe0\x12\x6d\x88\xc9\x37\xb6\x91\xda\xaf\xbe\x60\xbe\x0e\x74\x73\x00\x47\x1e\x1d\x06\x3c\xab\xb6\xc4\x06\x4a\xfa\xb6\x94\x2a\xb7\x1e\xc9\x1f\x57\xe9\xed\x66\xe0\xbb\x61\x06\x94\x29\xc6\xb8\xee\xa6\x3e\x63\x68\xc0\x5d\xb5\xc3\xa5\xd4\x6e\x99\x68\x29\x86\x24\xfb\x6f\x86\x75\x94\x54\x1e\x84\x6d\x0d\x29\xda\xbc\x27\xe9\xed\x06\xe1\xc6\xb3\x29\x9b\xa5\x7c\x7c\xba\xd4\xee\x3f\x8e\x6b\x00\xc3\x14\xa1\x49\x52\x39\x29\x6c\xa1\x4d\x27\x5b\xa0\x6c\xd0\xc9\x79\xcb\x66\x29\xf5\xac\x20\x6d\xcd\x47\x25\xb7\x60\xa0\xc7\x4e\x39\x40\x9b\x3a\x7a\xe6\x43\x99\x35\x1c\xef\xfd\xdb\x3c\xe3\xd9\xc4\x55\x9d\x33\xe9\xc0\xca\x3b\xd1\x59\xab\xf1\xe9\xbc\x14\x2b\xce\xdf\xb6\x47\xf7\xbe\xfc\xcb\xc9\x9b\xaf\x13\x82\xe1\x03\x95\xb4\xb5\xb5\x38\x17\xc5\xa5\x97\xc8\x96\xa2\x41\x8d\x88\x86\x75\xb7\xb0\xb3\xeb\x75\xc4\x56\x62\xa3\x38\xcf\x8e\x64\xf2\x09\x8e\x69\x3e\x21\x9b\x89\xfc\x95\xb4\xd1\xa7\x8f\x9a\x0f\x26\x04\x39\xaa\x52\xc8\xfb\x4a\x73\x19\x5f\x06\x3c\x70\x9b\xe1\x69\xcb\x75\x40\x6f\xaa\x56\xa8\x88\x46\x1c\xa6\xb9\xe2\xb6\x0c\xf5\x01\x67\xe7\xc0\x91\x21\x0e\x40\xa3\xf6\x53\xcd\x53\x82\xfd\x7b\x08\x47\xa7\x3c\x3b\x8f\x6c\xdc\xd8\x9e\x38\xc1\x26\xdb\x0e\xd1\xbc\xad\x4e\xe5\x69\x72\x30\x34\x15\xc3\x8d\x08\x9c\xc0\x96\x3d\x3d\x85\xa1\x06\xe4\x79\xf5\x46\x66\xc1\xb2\xd8\xb7\x9e\x24\xd0\xc1\x72\x2a\x0d\x85\xf6\x80\x6b\xb3\xc6\xd2\xe9\x97\x34\x42\x73\xda\x0e\x8d\x1e\x13\x56\x1b\xf5\x8f\x60\xc0\x6e\x55\xb5\xc9\xe8\x00\xbb\x8e\xea\xe0\xc3\xa7\xf8\x55\xc3\x04\xb6\x56\xb4\xe9\x75\xdc\x0c\x0f\xba\xeb\x18\x0e\xfd\x31\x80\x67\x57\x43\x65\xd0\xd4\x43\xe8\xb9\x68\x70\xab\x83\x0e\xad\xaa\x09\x79\x6d\xeb\xc5\xb4\x8a\xa2\xdb\x17\x56\x30\xfe\x5b\x75\xad\x72\xb8\xb9\x1b\x5d\xfc\xbe\xec\x52\x3b\xfa\x3c\xb8\x2b\x87\xe0\x08\x26\xb7\x8e\xd0\xf8\x34\xcb\x73\xa3\x82\xde\x12\x8d\xed\x4d\xcc\x6e\xad\xeb\x9c\x25\x52\xc9\xd4\x8a\x8c\x76\x17\x7d\xb7\x06\x4d\x72\x8f\xd2\x46\x82\x07\x74\x55\x3b\x35\x06\x31\x41\x2a\x99\x1f\x7a\x72\xe0\xef\x05\x15\x3f\x9e\xf1\x80\xa3\xb1\xe4\x5d\x87\x10\x51\x71\xae\xf0\xde\xc5\x1c\xaa\x15\xec\x5e\xa1\x84\x63\x32\xe5\x33\x6f\x77\xf8\xd8\x01\x81\xf3\x2f\x23\xbb\x01\xf8\x47\x5c\xe1\x44\x39\xf1\xc8\xed\x21\x67\xa0\x29\xdf\x2a\x26\x69\x10\x52\xb0\xcb\x1a\x32\x25\x43\xe7\xeb\xa4\xa1\x6d\x45\xeb\xb5\xce\x97\x29\xfb\x55\xe3\x75\xbb\x07\x18\x71\x33\xb0\x40\x81\xf6\xc1\x72\x65\x63\xda\xae\xa0\x55\x5c\x76\x55\x3a\x88\x95\x3b\x93\x4a\xd0\xd4\xd0\x94\xd6\xc3\x77\xd7\x89\xe5\xa5\x64\xe2\x03\x18\xc5\x8f\x15\x9e\xae\x21\xdf\x90\x87\x4a\xcd\xd5\x5e\xf4\x24\x92\xa7\x48\x05\xf7\x35\x6d\xf8\x9e\x4e\xd1\x86\x07\x2a\xa3\xfd\xc8\xc8\x1d\x17\x44\xab\x0d\x81\x99\x68\x65\x04\x10\xec\xc3\xc0\x31\xf3\xc9\x3c\x78\xc0\xc6\xff\xb7\x9b\xb1\x48\xf2\x2c\x98\x23\x8f\xfd\xa0\xa0\xf1\x12\x85\x09\x09\x96\x36\x3e\xfc\xce\x00\xd3\x4a\x6b\xee\xab\x66\x36\xcc\x6d\x60\xbf\x36\x8d\x11\x80\x40\x37\x30\x70\xe9\x22\x71\x2f\x5c\x7d\x09\xdf\x5a\x7f\x2b\xa7\x01\x08\x58\x2d\x68\xde\x7a\x51\xd0\x5c\x32\x1d\x03\xdf\x2b\xb2\x23\x1b\x57\xcb\x94\x80\x76\xb8\xdd\x37\x7e\x16\x4f\xe0\xff\x42\x29\xb1\x9d\x6b\x5f\x3b\x89\xa1\x76\x82\x4f\xa8\x6e\xb3\x75\xda\xb8\xd3\x40\xf5\x56\x06\xeb\xdd\x93\x50\x07\xb2\x4e\x37\x22\x50\xbb\xaa\x7b\x0e\xe5\x8d\x3a\x8d\x00\x1c\x27\x9a\x95\x5c\x0f\xab\xd6\xae\x6a\xf0\xe1\xa6\xb8\x4d\x32\x6e\x0f\x65\x57\x92\x71\x33\x14\xa7\xac\x27\x0a\x2a\x81\x73\xee\x28\xc0\x80\xcf\x6f\x12\xb2\x50\x98\x14\x08\x4f\x04\x13\xdf\x43\xc5\x79\xd9\xde\xb7\xad\x22\x69\xeb\x73\xe4\xcd\xbe\xd3\xfc\x7a\x35\xcc\xec\x36\x42\x8b\x21\x23\x99\xb6\xb7\xfa\x2f\x9d\xc5\xd5\x87\x76\xc7\x75\xd5\xc5\x9d\x25\x35\x61\xcb\xa1\xd4\xb1\xad\xe0\x66\xfb\xd5\x4d\x59\x7c\xb7\x2f\x6f\xd6\xb2\x5f\xdf\x8a\xba\x9e\xce\x50\x57\x44\xb6\x93\x53\xdd\x06\xfe\xf6\x67\x67\x77\xfc\xd8\x75\x65\xc3\x52\x76\x54\x1d\x79\x31\xa0\x12\xb6\x3c\x27\xcd\x34\xba\x54\x3e\xc4\xb4\x99\x5f\xfd\x23\x71\xfd\x18\xe9\x22\xe9\x0c\x11\x73\xbc\x61\xf8\x0c\x57\x1d\xce\x28\x87\x48\xb4\x53\x75\xbb\xb5\x1c\x98\x54\xa9\x7d\x0e\x63\x52\x83\x55\xc6\xb1\x7f\xa5\x54\x70\xcf\xc4\x71\x69\x3d\xc8\xcc\x9f\x9e\x17\x87\x78\xee\x7b\x96\x49\xb4\x02\xe3\x50\xda\x33\xc2\x43\x24\xbf\xce\x95\x43\x5f\xd5\x27\x3c\x2b\x88\xf4\xca\xb1\x18\x2c\xc7\xc4\x4b\xb4\x22\x84\xe7\x0f\xc4\x81\x43\xfd\x40\x74\xa0\x2e\x41\xce\x4e\x13\x57\x2b\x01\xef\x4b\x23\xe0\x09\xb6\x23\x8e\x55\x4c\xb8\x1e\xb4\x25\x0c\x47\xcf\x13\xae\x50\xfc\x1d\x70\x17\xdb\xd1\xdb\x5f\x34\x66\x8d\xe8\xf9\x1d\xf1\xd2\x13\x8b\x47\xef\xb7\x83\xa5\x9c\x9e\x7a\x70\x29\x0e\x52\xc4\xf6\xa4\xe8\x7d\x5e\x30\xae\x1f\xc1\xa9\x22\xd3\x56\x57\xd3\x1f\x54\xec\x6a\xad\xaa\x0e\xad\x95\x4e\xb8\x84\x19\xae\xa6\x6c\xa6\xd3\xab\x6c\x89\x4c\x09\x8d\xea\x0e\xd1\xce\x3f\x72\x60\xef\xab\x8c\xd5\x8b\xb2\xba\x74\xec\xe2\x3f\xfd\x00\x41\x27\x2f\x53\x2d\x07\xc7\xea\x33\x7a\x0b\x4a\x8a\xbc\x4d\xd5\x5d\x75\xec\x1d\x97\xd7\x68\x6b\xef\xfe\x7d\x58\xb2\xb0\x62\x7b\xab\x4d\xb8\x55\xc1\xe9\x2a\xd8\x64\xce\xed\xc8\x8c\x33\x42\xad\x58\xdc\xdd\x9a\xe0\x53\x32\x03\x42\x09\x0d\x54\xe6\x2a\xb1\x33\xf0\x29\x27\xcc\x8d\xa8\x7c\x9d\x2d\x13\x35\x60\xc2\x78\x25\x2d\x5e\xc8\xe1\x04\x9c\xa9\x7c\x7a\x03\x98\xb8\xbb\x8c\xe4\x0e\x5b\x6c\x87\xc1\x88\x1b\xf2\x6d\xeb\x86\x64\xf2\xa1\xc9\x34\xff\x8c\x28\xa5\x33\x58\x63\x48\x6e\xaf\xcc\xd7\xbf\x78\x5a\xfb\x8f\x1e\xc2\x0a\xa6\x24\xad\xe8\xaf\x40\xee\xba\x35\x11\x18\xb5\xf2\x7b\x0a\x22\x17\xc9\xd0\x1c\x1f\x9b\xea\x66\xe9\xe3\xfd\x28\xd3\x83\xfb\x08\xd2\x6a\xba\x0f\x94\xe4\xac\x90\x0e\x7c\xc8\x27\x36\x2f\x56\x79\x03\x1a\xc9\x0e\xaa\x85\x59\x23\x87\x44\xbc\xbe\x89\xaf\x43\x71\x47\x6a\xeb\xc3\xa0\x78\x70\x3c\x55\xe3\x81\x3f\xb2\x4a\xff\x65\xef\x1f\x9b\x92\xcd\xe2\xa6\xd9\x31\x87\x79\x4d\x23\x5e\x9a\x82\x46\xee\xb2\x55\x5b\x5f\x2a\xc4\xbe\x0f\xc6\x39\x2d\x41\xad\x65\x6b\x92\xc7\xad\xb2\x18\xcc\x8b\xe9\x5a\x66\x71\x6a\xf5\x0a\xf3\x09\x4d\x39\x67\xd9\x9c\xb9\xfe\xf6\xdd\x76\x4c\x15\x79\x06\x5f\x87\xce\xe0\x6b\xf7\x0c\xbe\xd2\x67\x10\xea\x03\x87\x38\x26\x1f\x39\x61\x79\xf2\x8c\x60\x80\x71\x9d\xb4\x1c\x0a\xea\xd5\x92\x54\x1d\x60\xf0\x4a\x31\xe3\xf2\x85\x52\xd3\x2d\x7f\xc9\x5c\xb0\x26\xda\x55\x61\xe2\x78\xbf\xe0\xd0\xaa\x27\x80\x34\xe8\xc6\xa8\x4a\x5e\xc5\xfe\x29\xdb\x53\x8b\xb4\x52\xa5\x15\x2b\xad\xc2\x78\x2b\xb2\x2c\xb2\x39\xf1\x3f\xa3\x91\x4f\xe9\x3d\xa4\x19\xaf\x57\x05\x1f\x96\x8b\x61\x36\xac\x49\x75\x45\xaa\xe1\x3f\x57\xa4\xba\x19\x26\x8b\xb2\x1a\x66\x45\x31\x6c\xab\x81\x20\xdd\x52\x8d\x86\xb4\x1e\xd2\xcb\xcb\x15\x50\x91\xf1\xf0\x7d\x39\xbc\x2c\x73\xba\xb8\x19\xaa\xaf\xae\x31\xe4\xf6\x37\x49\xe8\x22\x71\xcb\xde\x2c\xc9\x44\xce\xbd\x4a\xb2\x97\x27\xee\x92\x87\x62\xdc\xbd\xde\x8f\x76\xd0\x19\x28\x7d\x37\x1a\x57\x24\xcb\xdf\xb0\xe2\x26\x41\x58\x62\xa3\x1f\xf3\x67\x2a\x2c\xa5\x6d\x0b\x69\xba\x71\x18\x66\x79\xac\xeb\x26\xc4\xcf\xfc\xea\x45\x1a\x4a\xf5\x4b\xf8\xc6\x11\x7c\x79\xdb\x4b\x44\x2f\x73\x84\x50\x3b\xcc\xc6\x2e\xe8\xc0\x6e\x2e\xa7\x0e\xd6\x02\x8f\x66\x2b\x64\xff\x49\x38\x5a\x9f\x84\xb7\x09\x0e\x62\x45\xb5\x21\xa4\x34\xb0\x54\x7b\x10\x87\x5e\x32\xc5\xe0\x7e\xe4\x98\x6f\xf0\x69\x7b\x7a\xc2\xf9\xc0\x8e\x55\x3a\x51\xc7\x6a\x74\x2b\xcd\x77\x93\xd1\xc1\x06\x6d\xf0\xe9\x72\x55\x5f\xf8\xe1\xde\x93\x6e\x5d\xbd\xbb\x8c\xa2\xa2\xbc\xe7\xa4\x3d\x59\x29\xec\xef\xd5\x96\xac\xea\xb6\x56\x67\x57\x1d\xab\x8f\x15\x58\x87\x63\x03\x71\x21\x3b\x9c\x2f\xf5\xc0\x3b\xd4\xfc\x8d\x75\x82\xd5\xb1\x84\x39\x95\x38\xc2\xe2\xfe\xe9\x0e\xd6\x23\x1b\xa4\x30\x48\x83\xfd\xaa\x52\xce\x73\x2b\x11\x7e\x34\x61\xa1\x3a\x98\xa2\x82\x59\xcf\x69\x5d\x97\x73\x9a\x71\x30\x93\xbc\xb9\x66\xb2\x76\xdd\xb1\xe1\xb5\xc6\xdb\x91\x39\xfb\xb0\x5d\x78\x43\xc7\x33\x90\xa1\xdf\xa0\x32\xd0\x09\xec\x4e\x57\xac\x22\xe7\xb4\xe6\xa4\x12\x43\x50\x36\xcf\x16\x9d\xbe\x54\xb6\x50\x5b\xda\xf9\x4e\x6d\x11\xbd\xa6\x85\xc6\x2a\x68\x13\xfa\x60\x3f\xc6\x31\xb2\x6b\x22\x92\xb6\x5e\xb5\xa1\x23\x68\xbe\x56\x9c\x04\x3e\x30\xd7\x6d\xf7\x0d\xb3\xc1\xa7\xbe\x07\xf9\xa4\xc3\x83\xfc\x1f\x5a\x9f\x6e\x16\x40\xb0\x24\x11\x24\xb6\xc1\xde\x35\x1f\x38\x8b\xdd\xfb\xbd\x3b\x09\xac\x3f\x2c\x89\x01\xb2\x41\xf8\x39\x49\x5f\x11\x7d\xa9\x86\x6f\xd4\xc0\x7d\xe9\xef\x98\xf5\x5a\xdd\xd2\x0e\x47\xb2\xed\x12\x86\xcb\x2b\xb5\x7f\xba\x57\x25\x84\x23\xa7\xf6\x4f\x9d\xa2\xfd\xc7\xdf\x95\xe0\x0e\xd5\xbc\x26\x1b\x17\x64\x84\x82\x64\x50\x1e\x9a\xe6\xcc\x03\x41\x14\x87\xbc\xf5\x06\x7a\xb4\xe7\x95\x8c\x4f\xe1\x49\x93\x68\x4a\x1e\x54\x74\x59\x13\xde\x49\xe2\x8c\x3e\xa4\x71\x54\x6b\xc2\x2d\x6d\x33\xdc\x8d\x6f\x6a\x76\xe1\xea\xf5\x8d\x30\x19\x1d\xca\x00\x70\x0f\x63\xec\x56\x67\xc1\x47\x2a\x22\xbc\xfd\x16\x9e\x23\x2d\x2f\xe8\x33\x7c\x9a\xe9\xb3\xf6\x1d\xe5\x17\xee\x39\x56\xca\x76\x63\x1d\x77\x92\x48\x68\x2f\xba\x6a\xc5\xc6\x25\x9b\xab\xf3\x10\x29\xcf\xa8\x08\x3b\x59\x73\x36\x08\x7f\x4d\x82\xb8\x30\xf8\xab\x4e\x51\xc7\x87\xdb\x75\x54\xff\x8d\x70\xaf\xc3\x16\x86\x88\xc5\x1c\x29\xe8\x95\xef\xe2\xd1\x0d\x99\xaa\x80\x41\x7b\x4a\x28\xb1\xe2\x6d\xb9\x5c\x41\x16\x68\xaf\xe1\xe9\x6c\xa3\x35\x81\x2d\x55\x16\x6f\x3a\x8c\x84\x3c\x44\xec\x9e\x02\xc3\x1d\xd9\x06\x55\x2a\x73\x88\x6c\x41\x33\x3d\xf0\x02\x6e\x54\x69\x70\xb8\x4b\x2a\xb0\xc0\x4d\xf9\x6c\xbd\x9e\xce\x90\x4e\x61\x1a\xc7\x5f\x13\x07\xab\x27\x83\x51\xaa\x9c\x7c\x6a\x1a\x16\xd0\xfb\x46\xec\x26\xf9\xf7\x5b\xd9\xac\xbf\xf9\x5f\x96\xd5\x6b\xa3\xec\xf3\x0f\x82\x95\xbb\xa7\x33\xcc\xd2\x83\x47\xcc\x0a\xdf\xc6\x33\x8e\xa6\x7c\xca\x66\x03\xba\x0b\x62\x2b\xed\xc4\x32\x4d\x90\x71\x3f\xb5\x08\x84\xc1\x9d\x31\x25\xb3\x41\x19\xc7\xbd\x23\x9d\xce\x54\xda\x5d\x33\x5c\x6a\x1d\xf9\x20\xed\x4f\x96\x76\xe3\xaa\x26\x08\xd7\x69\x39\xf6\xef\xdf\x6c\xbd\x2e\x5d\x60\x55\x79\xc8\x08\x02\x6f\x34\x18\x77\x89\x30\x58\xff\xc1\x21\x27\x03\x8d\x82\x7d\x6e\x6e\x6e\xb4\xa9\x1c\x27\x66\xb1\x33\x5a\xdc\x5b\x52\xa1\x01\xf3\x0b\x85\x18\xb3\x84\xa1\x4d\x52\x42\xac\x89\x53\xd8\xdd\xb0\x26\x4d\x71\x7a\xf0\x88\x3f\x36\x8e\x8d\x7c\x6f\x0f\xfd\x40\x12\xf0\x45\xd8\x80\x2b\x9c\xde\x20\x5d\x0e\xdf\x7a\x3f\x9a\x06\x21\xa3\xdc\xd6\xd3\x48\x90\xb3\x11\xb7\x6e\x3e\xed\x1e\x01\xc3\xa9\x6f\xd8\xfc\x2b\x7f\xe5\x7b\x34\xa4\x6a\x10\x53\x2e\x16\x5f\x8a\xc0\xb4\x76\x32\x30\x8f\xd8\x7a\x0d\x5a\x18\xed\xf6\x5a\xa6\x7e\xb0\x27\x1c\xe9\xd7\xd9\x12\x64\x27\x84\x33\xe7\x92\x29\x0d\x5f\x82\xd2\xd4\x73\x8f\x34\xcf\x25\x58\xc9\x7a\x3d\xca\xd0\x2d\x33\x26\xac\x9d\xbf\xba\x6a\x20\x65\xd8\xaf\x41\x66\xc6\xb5\x8e\xe2\x8a\xd6\xf4\xac\x68\xec\x84\xa7\x80\x5f\x2a\x06\xbe\x12\x5b\xbf\x48\x0f\x1e\x15\x16\x64\xb3\xd0\x5b\x7f\x9e\xd6\xd3\x62\x86\x17\xe9\xbc\xb1\xb7\x47\x82\xce\x2c\xd4\x86\x8e\xe3\x64\xa1\xb6\x31\x5e\xc9\x1d\x3c\x47\x68\xb3\x52\xcd\x75\xed\xd9\x95\x22\x34\x26\x2f\xc0\x71\x51\x74\x86\xed\x84\xce\x34\xf7\x9c\xbd\x71\x4b\xaa\x82\x3b\xd1\xab\xd6\x0c\x96\xdd\xd6\x03\xc4\xad\x28\xae\xa9\xbd\xbd\xc4\xf6\x73\x00\x0f\xaa\x1d\x26\x9c\xa0\x81\xea\xcf\x35\x3c\xeb\xfb\xb8\x42\x1d\x77\x1b\x84\xb6\x38\xb1\x90\xbc\xb7\x97\x34\x7c\xa2\xbb\xf7\x2f\x41\xca\xa5\xa0\xc6\xbb\x10\x6e\x58\xfc\x5d\x09\xb3\xe3\x06\xd2\xfe\xe6\xe0\x01\x7d\x65\x61\x75\x2c\xca\x13\x31\x60\x18\x9a\x9f\xe5\x70\xb9\xe1\x16\xf2\x8e\xcb\x55\x29\x26\x08\x5e\x6f\x0c\xbf\xe7\x1f\x77\x8e\xe2\xf8\xa9\x3a\x54\xce\x28\x8f\xbb\x39\x82\x2e\x98\xb1\x70\xfb\x15\x3a\x7a\x4a\x92\x0a\xd3\xf4\x79\xf8\xc3\x80\xf7\x9c\xf0\xd6\x07\x56\x81\x8f\x73\x3f\x08\xdf\x91\x7f\x64\xbd\xfc\x23\x33\xfc\x23\x9a\xdc\x79\xa8\x5b\x46\xba\xd9\x85\xcd\xd2\x3b\x06\x53\xb1\x08\x41\xd1\x73\x07\xde\x2a\xb4\xa1\xc8\x98\xb2\x9c\x7c\x7c\x23\x0e\xb3\x28\xb4\x7f\x38\x4a\x53\xe3\x64\x23\x13\x45\x00\x84\xcf\x21\xc2\xa3\x83\x81\x81\x15\x4f\xb6\x0f\x1a\x13\xe4\xdf\x2b\xad\x93\xcb\x67\x42\x10\x27\x52\xa1\xef\x11\xed\x40\x51\x49\x10\xbb\x38\xf6\xc6\x69\x79\xaa\xb1\x00\xf8\xd8\x91\xc5\x3b\xb0\x14\xda\xb0\x09\xcd\xee\x3b\x94\x0b\x56\x46\x0a\x8c\xd7\x41\x73\x40\x3b\xad\xb1\xee\xe2\x25\x69\xe3\x16\x02\x40\x02\x0f\x61\x42\x04\x24\x83\x03\xbc\x8d\x99\x75\xe6\x04\x6d\x1a\x9e\x15\x2f\x55\x72\x55\x3b\x7c\xf3\xea\x07\xe2\x6e\x2e\xff\xd6\xe3\xe1\x29\xe2\x1d\xdc\x16\x44\x16\x8a\x79\x31\x80\xb8\xa6\x97\xa7\x6d\x3b\x15\x66\x36\x90\xa4\x7a\xcc\xa4\xad\x8a\x4c\xab\x99\x3f\x08\xb8\x68\xb9\x9b\x6c\xe6\x1b\xc7\x4d\x04\x97\x72\xec\x9a\x1d\x39\x4e\xe8\xee\x7a\x87\x52\x72\x29\x48\x02\xf7\xd6\x29\x77\x50\xcb\x04\xa3\x20\xb5\x8b\x00\x92\xc0\x71\x8d\x19\x16\xc4\x44\xea\xe5\xbe\x94\xc1\x4e\x8a\x68\xfe\x87\x2e\x27\xe4\xfc\xdf\x46\x7b\xd5\x5e\xf4\xdb\x48\x9c\x3c\x63\xdc\x5a\xa1\x96\x76\x40\xed\x1b\xd3\x87\x52\xb1\x91\x7c\xb8\x62\xd2\xa6\x96\x63\x38\x39\xc3\xeb\xac\x1e\x5e\x91\xea\x66\x58\xd0\x0f\xa4\xb8\x19\x66\xc3\x4b\x5a\xf3\xec\x03\x31\x22\x7d\xb2\x4a\xbf\x4c\x56\x98\xe3\xa2\x8d\xa4\x45\xb4\x05\xf0\xdb\x84\x8f\x6b\x0d\x8c\x5a\xa9\xaf\x14\x1f\xa6\xd0\x57\x22\x3d\x12\xc7\xd7\x43\x32\x32\x82\x8f\x76\xb5\x83\x2f\x3e\xf2\x2a\x9b\xf3\xe1\x32\xbb\xb1\x88\xb6\x95\xb3\xdc\x5f\x92\xc6\x55\x81\x3b\x90\x24\xfc\xab\x83\xa0\x23\xe9\xb8\xc2\xd1\x44\x2c\xcc\x26\xe1\x00\xcd\x88\x5b\xea\x3f\x0a\x29\x3b\x70\xa9\xb2\x74\x0c\x5a\x89\x87\x74\xef\x64\x4c\x73\x85\x48\x43\x64\x51\xd2\x8a\xbf\x21\xed\xf8\x1b\xe3\x17\xe4\xbd\xc1\x59\xe0\x2a\xec\xec\x5a\xf7\x2a\x2d\xc7\xdf\x55\xd9\x72\x49\x2a\x5c\xa6\x15\xe4\xec\xc2\x99\xde\x6f\xa0\x7b\xa9\x05\x83\x61\x30\x4b\xbc\x00\x9f\x4c\x21\x7a\x29\xb4\xc7\x55\x4a\xc7\x3d\x46\x68\x86\xa6\xf5\x0c\x6e\x3e\xe9\x07\xab\xa2\x6c\x54\xdb\x7f\x25\x37\x93\x1a\x8b\x17\x93\xd5\x66\xb3\x31\x83\xdd\x24\x15\xe6\xe0\x77\x25\x7a\x52\x9e\x83\x75\x9a\x8d\x6d\x3d\xbc\x4a\x65\x93\xb8\x48\xcb\x69\x3d\x8b\x63\xf1\x5f\x58\x9f\x81\xeb\x3f\xbb\x8a\x63\xb3\xed\x8b\xf5\x3a\x11\xa5\xa0\x02\xa0\x54\x98\x3a\xe1\x98\x42\x88\x8c\x84\x85\xad\x9c\xc9\xc9\xd2\x5b\x9a\x4f\xa8\xb4\x04\x95\x1b\xaf\x3b\x7e\x94\xb0\x94\x38\x82\x7f\x86\x26\xf2\xc9\xed\x06\x7b\x97\xbe\x38\xbf\xc8\x49\xdd\x5d\xe0\x15\xe6\x08\x6d\x36\x90\xa5\x97\x60\x86\xb0\xd7\x8d\x20\x65\xb2\x67\x18\x12\x3c\x75\x47\xe5\x2d\xc2\x24\xa1\xe9\xed\x06\xd3\x29\x58\xbf\x67\xe9\x2d\xb0\x24\xdc\xc5\x34\x54\x1a\x2b\x0c\x01\x4f\xe5\x06\x53\xb4\xe9\xe0\xd0\xb4\x5d\x37\x17\xb2\xb3\xfd\x25\x1d\xfc\xcc\x4f\x13\x8a\xca\xed\xc1\xfb\xb6\x79\xf0\x1a\x44\x4d\x1c\x98\x25\x21\x1f\x8e\x8b\x42\xfc\x14\x32\x7e\x43\x49\x9c\x30\x41\x0a\x03\x36\x05\x05\x35\x9d\xf4\x98\x10\xac\x35\x06\x53\x49\x2e\x32\xc7\xd6\x93\xd4\xe9\x97\x49\x8d\x39\xee\xa2\xa0\xc7\x45\x21\x49\x09\xbd\x3b\x15\xa3\x1e\x15\x3b\x2e\x8a\x10\x11\x6b\x4a\x5f\x30\x23\xdb\x28\x9b\x1e\xd9\x6f\x2c\x67\xb8\x89\xa4\x02\xe6\x9f\x24\xcd\x92\xe8\xf9\x8b\xa7\xdf\xfc\x79\x9f\xd7\xfb\x67\x55\xc6\x72\x37\x7b\xdb\x77\x9e\x4b\x9e\x5d\xa5\x3f\xff\xe2\xbd\x36\xbe\x27\xf8\xaf\xdb\xb4\x99\x9e\x3b\xdc\xf4\x9f\x64\xe6\xbb\x4a\x08\x7e\x44\xce\xb4\x81\x2d\xa8\x83\x09\xbd\xcc\x6b\x59\xba\xde\xa1\x99\x66\x0a\xa4\x56\x13\x5a\x85\xd9\xe7\x93\x77\x2a\xa8\x88\x3a\x1b\xdd\xe8\x4b\xca\xed\xc7\x29\x0b\xa6\x3b\x6a\x41\xa0\x1b\x9d\x77\x2a\x61\x04\x65\x4d\xfa\x87\xdd\xfb\xd6\x55\x6e\x62\x2e\x58\x77\xe3\xb9\x11\x9a\x24\xbd\x4a\xe1\x09\x3c\xf0\x50\xe3\xd4\x47\x5a\x5d\xf6\x80\x8d\xff\x51\x52\xff\x94\x33\x87\xff\xac\x6f\xd8\xdc\x8b\xb6\x8d\x70\x85\x2b\x5f\xa3\xd3\x1c\xbf\x34\xf3\x60\xda\x1b\x99\xe3\x05\x98\x9f\xa8\x9f\x98\xa6\x67\x89\x33\xd2\x7e\x38\x67\x86\xac\xf2\x4a\x97\x17\x34\x2f\xa1\x68\x50\xc6\x71\x28\x32\x28\x91\x2b\xda\x37\xfa\x66\x9a\xc1\xc3\x2d\x93\x1f\x50\x0e\x36\x9b\x1c\x6c\xdb\xc3\xfd\x47\x60\xd0\x52\x75\xa8\xaf\xd5\x31\xea\x96\x9e\xa4\x5f\xe8\x29\x15\x0c\xb6\x38\x10\xd3\x6a\xef\x70\x66\xae\x83\x84\x79\x53\xe3\x81\xe5\x24\x54\x26\xcc\x1c\x77\xf8\xe0\x6d\x3d\x3a\x5d\xbe\x7b\xf2\x18\x75\xb3\x32\x5b\x1b\xee\xe1\x82\x64\xdb\x61\x86\xaa\x47\x4b\xda\xf0\x11\x21\xbe\x9b\x42\x6f\x7f\x42\x3a\x3c\xb5\xdc\x92\xbb\x20\xb8\x72\x47\xa3\xa0\x88\x7f\xf2\x41\x69\x24\xe7\xf6\xc0\xb6\x40\xe8\xf8\xfc\x84\x39\x93\xe5\x5d\xce\x24\x15\xbc\x46\xe8\x4c\x96\x68\x90\xc5\x71\x16\x0e\xc3\x65\xce\xf0\xba\x00\x9c\x3e\xcd\xe8\xd4\x51\xec\x20\xe9\x49\x89\xdd\xa1\x74\x03\x3c\xfd\x84\x53\xd5\x84\x89\x72\x07\x18\xc6\xf4\xf9\x09\x07\xe7\x0c\x40\x0d\xcc\x06\x02\x75\x22\xf7\x62\x2a\x88\x1a\x5d\x24\x7c\xbd\xae\xb4\x29\x4a\x0f\x73\xc0\xee\x32\xcc\x12\x6d\x48\x51\x93\x21\x15\xec\x10\x53\xd1\x72\x64\x33\x08\x50\x11\x6f\x60\x00\xa6\x20\x86\xeb\x04\xa4\xb7\x06\xeb\xd6\x76\x03\xd7\xe5\x6b\x38\xe9\xe1\xe4\x7c\x9f\xf9\x6e\xd3\x31\x38\x40\xc8\xbd\x21\xc8\xeb\x2d\xa7\xf5\xbc\x64\x8c\xcc\xdb\x09\xdc\x7e\x82\x4b\x37\x08\xab\x9a\xb4\x9c\xe8\x6d\x24\x1a\xc4\xdf\x74\x39\x74\xfa\x23\x93\x3e\x9c\x7f\x0e\xf9\x70\xfe\xd9\xf1\xe1\xb4\x8c\xf9\x6f\x7e\xd1\x0c\xb8\x19\xe6\xff\xd1\x21\x3b\x16\x0d\xc5\xd1\x23\x99\x38\x41\xa5\x50\x02\x5d\xd1\x45\x56\xb3\xdf\xf2\xe1\x19\x21\x6c\xa8\x30\xf1\x69\x4d\xf2\xe1\xfe\x10\xdc\x60\x12\xe4\x95\x98\x03\x90\x8e\xe3\x19\x02\x5c\xf3\xdf\x08\xfe\x0b\xc1\xff\xdd\xe1\xe5\x40\x78\xaa\x1c\x13\x5f\x7c\xfd\x2d\x6e\x0a\x68\x15\xce\xec\x34\xd7\x89\x0e\x08\x57\x12\x20\x4f\x49\xd8\x11\x47\x22\x77\x21\x97\x05\x4d\x9f\x61\x1e\x00\xac\x80\xb0\x86\xaf\x4c\x0a\x82\xff\x43\x12\x0e\x3e\x20\x0a\x0f\x80\xce\xe1\x36\xd4\x85\xb5\x28\x61\xd4\xb4\x3d\xc9\x63\xc7\xa7\x56\xae\xec\x2f\xe6\xe8\x73\x60\x38\x7f\x25\x09\x8c\x03\xde\x2a\x76\xee\x24\xbb\x22\xc0\xc2\x69\x37\xcb\xdc\x07\xbb\xf1\x5e\x35\x52\xd1\xc8\x77\xaa\xa1\x97\x84\xcf\x2f\x74\x30\x07\xd8\xa1\xc5\x83\xf6\x07\x8a\xbb\xeb\x32\xb3\x1c\xc0\x09\xa9\xae\xa8\x93\xda\x77\x7c\x2a\x44\xdb\x0f\x24\x3f\x96\xcc\xfb\x3f\x57\xa4\x76\x9c\xeb\xc7\x35\x04\xd0\x1d\xd7\x35\xa9\xf8\x6b\xc2\x2f\xca\xfc\x59\x56\x14\xf5\x1b\x66\x14\xd6\x27\x20\xef\x09\xd9\x4b\x15\x7e\x2f\x1a\xf4\x9b\x83\xb7\xe7\x84\x91\x2a\xe3\xe4\x84\x67\xf3\x0f\xa2\x10\xa9\x5f\x96\xd5\x7b\xd9\xbd\x5f\x54\x0e\xca\x6d\xe3\x84\x67\x15\x6f\x8e\xda\x2d\xf0\x82\xe5\xce\xeb\x53\x80\xc6\xff\x2e\xa3\xdc\x99\x8d\x4d\x26\x89\x4a\x8d\x2c\x41\x68\xac\x66\x66\xdf\xa8\x14\x66\xca\x5d\x7e\x5e\xb2\x9a\x57\xab\x39\x2f\xab\x14\x64\x9a\x53\x78\x77\x7a\x9a\x66\x12\x78\x0c\x17\x78\x8e\x17\x69\xdd\x96\x29\x17\xd2\xbd\x57\x7f\x06\x27\x7a\x0d\x1c\x02\xb6\xc1\x0b\xc1\x92\xd5\x3c\x63\x9c\x06\xb1\xe8\x54\x09\xb9\x23\x9e\x07\xd3\xbf\x29\x65\xbe\x7d\x25\x08\xe9\xa2\x93\xd5\xee\x40\xf1\x3d\xd2\x6e\x5c\x27\xe1\xad\x93\xa0\x2e\x9e\x1f\x14\xb4\xf7\xae\x4c\xe4\x60\x77\xe2\xfc\xef\x38\xde\xbe\xe8\x9c\x5d\x86\xbc\x45\xa4\x58\x8c\xb5\x95\xae\xa3\x89\x36\xf4\x42\xe7\xb9\x24\xa2\xb9\xee\xc1\xb4\x76\x44\x00\x44\xbd\x75\x83\x77\xc2\xa3\xb7\x25\x83\x6a\x26\x5a\xbd\xec\xd1\x7f\x84\x24\x92\x77\x44\xd9\x4c\x06\x8d\xb8\x9d\x10\xa9\x7c\x47\x54\x10\x58\xa5\x50\xe1\x19\x38\x69\xe9\xd3\x62\x5a\x80\x4b\x12\x5e\x01\x99\x7b\x2f\x2f\x67\x84\x99\xb4\x48\x62\xb5\x5f\x76\x51\xd7\xf4\x2e\x6e\x5e\x92\xfa\xfd\xcd\x92\xbc\xf8\x48\x6b\xae\xd6\x73\x1e\x04\x84\x6c\x6a\x6e\x54\x17\xff\x4d\xda\x5a\x11\x8b\x49\xe5\x64\x88\x6b\x95\x92\x3c\x77\x29\xa1\x11\x5b\xae\x8c\x1a\x0f\x92\xd6\x5f\x97\x4c\x90\x26\x9a\xa3\x38\x86\x7f\xd3\x6a\x7c\xaa\xc9\xe9\xab\x3c\xa1\x38\x43\x08\xc3\x0b\x26\xcb\xa9\xb4\x1c\xbf\x49\x2a\x34\x3e\x5b\xd1\x22\x4f\x24\xb7\x4b\x31\xcd\x27\xa2\x84\xf5\x03\xa8\x1d\x38\xe7\x04\x5c\xae\x7c\x40\x4c\x78\x66\x03\x14\x40\x77\x0b\x6e\xd4\x0b\x77\x0c\xdd\x92\xaa\xba\x62\x7d\x21\x15\xbc\xb2\x6d\x6d\x10\x7b\x45\xf3\x47\xc1\xa7\x6a\xc1\xb1\x0e\x30\xc6\x8b\x8e\x04\x98\x1d\x14\x30\x9c\x46\x10\x0a\xfb\x79\x38\x45\xe1\x05\x6d\x81\x1a\xbb\x7b\x49\xbc\x56\xc5\xa5\xdd\x79\xe1\x3c\xea\x60\x9e\xd5\x0a\xd3\x84\x23\x5c\xa7\x27\x60\x73\xc0\x2b\xc5\x18\xa3\x71\x51\x96\x1f\x56\xcb\xa4\xb6\xb3\x93\x56\x16\xbc\xdb\x84\xd7\xbf\x2c\xab\x57\x39\xd4\x3d\x7a\xa7\x5d\xa5\xec\x60\x56\x82\xb5\x05\x6d\x35\x5c\xc8\xff\x61\x5f\x0d\xa3\x3d\xb6\x17\x49\x5c\x44\x9a\x4f\x86\xd1\x9e\x26\x7a\x32\x9f\xc2\x8d\x0f\x34\xb8\x02\x71\x65\xe1\x36\x1e\x40\x66\x57\x39\x2b\xfc\x78\x13\x2d\x28\x03\x73\xe2\xc2\xa1\xb7\x8c\xac\xdc\x64\xc0\x71\xb7\x47\x20\x4c\xd2\x66\xd6\x52\x3d\x42\x46\x16\xe0\x33\xde\x39\x49\x2f\xc3\x4f\x55\x3a\x52\x74\xd4\x35\xbc\x49\x02\x5e\x3c\x1c\x38\xd9\xf3\xaa\x5c\x31\x55\x1f\x2c\x2c\xed\x87\x23\xdd\xcb\xd3\xc6\x2b\xd9\xdf\x7a\xdd\xff\x5e\x8f\xc7\xa0\x8c\xb7\x47\x84\x7b\x6c\x2c\x04\xd9\x85\x69\xac\x5a\x78\xc3\x36\xd2\x92\x41\x14\xa5\x86\x3e\x8c\x63\xe2\xa2\x20\x26\xe6\x05\xc2\xee\xee\x02\xbf\x4d\x7f\x83\xc0\x30\xbb\x76\x1a\xf1\xc2\xbb\x9c\x3d\x07\xa9\xb3\xcd\xf0\xdb\xcd\x86\xbf\x80\x58\xd7\xd1\xee\x45\x24\x2e\xbe\xfa\x11\x19\x9f\x2e\x9d\xe4\x1e\x93\xde\x09\xd5\xc7\xf7\xe9\xcd\xab\xbc\xee\xf4\xe2\xb5\x50\x9f\x5a\x18\x14\xdb\xb7\x94\xb8\x85\x2d\x77\xd9\x6a\x4a\x15\x04\xb3\x73\x3c\x19\xe6\x53\x3a\x33\xdb\xfa\x6d\xe2\x0c\x2b\x03\x9b\x93\xb4\x6d\x29\x87\x05\xc7\xf8\x64\x27\x19\x06\x29\x6d\x61\xe2\x40\xeb\x2c\xab\x91\xde\x16\x62\x46\x7a\xee\x2c\xd7\x49\xa8\xc3\x3c\xed\xba\x4e\xd0\x96\x63\x04\x02\x7b\xb4\x35\x75\xae\x7e\x8c\x41\x50\x9f\x08\xe8\x16\x2e\x95\x1e\x2f\x0a\xb5\xbd\xa4\x1f\x45\xbd\x17\xfd\xd6\xee\xac\xdf\xc2\x64\xfc\x36\xc2\xf3\x94\x3a\x88\x35\xbb\xbb\x40\xd0\x80\xf1\xb0\x46\x58\x59\x7f\xa5\xe5\x50\xe7\x92\xb5\x66\xa2\x3c\xe3\xd9\xb8\xa0\x79\x3a\x07\x18\x25\x6d\x4d\xa4\x28\x9c\x35\x97\x9a\x14\x08\x09\x02\x55\x90\xda\xd4\x71\x4c\x9b\xa9\xa0\x4d\x4a\xdd\x80\xd5\x51\x7d\x7d\x84\x94\x57\x96\x43\x3c\x95\xd7\x24\x96\xfe\x0c\x58\x1c\x37\xac\x2f\x28\xff\xd0\x04\xb2\x82\x84\xb6\x3a\x71\xb6\xfa\xc1\x23\x66\x0d\x07\x1a\x97\x38\x0d\x1e\xc8\x29\x9b\x39\x29\x79\x3a\xa2\xd0\xaa\xc0\xb0\xde\x5f\x54\xe5\xea\xfc\xe2\xa5\x2b\xc7\x76\xb2\x5e\x6d\xca\xe6\x5a\xae\x76\x92\x34\x07\xc4\xcd\x7e\x91\x20\xe3\x0f\xd2\xda\x44\x43\x9f\x65\xa0\xf9\x26\xa1\xda\xcf\xcb\x15\xbb\xc7\xfe\x54\x50\xcc\x03\x29\x53\xc1\x53\x4a\xec\x9e\x38\x1e\x35\x0d\xfc\x90\x70\x54\x7c\x90\xdd\x5e\x54\xfc\xd7\xf0\xc9\x6a\x97\xd9\xf9\x65\xad\x56\x18\x3a\x62\x13\xd2\x4c\x80\x27\x77\x21\x71\x77\x21\x71\x77\x61\x93\x11\xc2\x5c\xb3\x78\xde\x37\xb5\x19\x81\x06\xb5\xb5\xee\x84\xde\x63\xc3\x06\xd0\x1c\x1c\xbc\x1c\xd8\xd2\x76\x96\xf1\x08\xba\xa2\xec\x5c\xd2\xb9\xdf\xba\xb7\x08\x68\xa6\x6f\x1b\x30\xa8\x58\xd1\x9c\x6a\x42\x4d\xc2\x6b\xbe\x81\x6c\xab\x6a\x10\x8d\xb5\xce\x10\x3e\x30\x58\x4a\xae\x42\x65\x5c\xd3\x1f\x48\x1c\xff\xf7\x16\xa7\x3a\xb0\x08\x1e\x17\xc5\x5b\xa7\x2a\xa9\x91\x9b\x0b\xcf\x6b\x16\xaf\x52\x19\x18\xc5\xda\x7c\xcd\x2a\x8e\x13\xf0\x3e\x97\x61\x6c\x0c\xaf\x90\xf1\x1f\x2f\x11\xce\xe0\x86\x0a\xf6\xd7\xed\x1b\xd8\x91\xfd\x38\x09\x7c\xb0\x76\xe5\x6b\xbb\xde\xc3\x7b\x71\x6c\x04\x39\xe1\x4e\x36\x27\xaf\xbe\xf2\xe9\x53\x37\x50\x47\xf5\x4e\x6a\xc3\x25\x3e\x70\xe5\x12\x32\xc0\xef\x1b\x8d\x98\x71\x81\x13\xbc\xdd\xbc\xcc\x0a\x52\xcf\xc9\x4b\x20\xc6\xf2\x00\xe3\xd2\xb8\x0a\xe2\xcc\x21\x5c\x70\x4f\x85\x24\xcf\x95\x8b\xef\xa3\xbc\xfd\x4b\xd7\xcd\x9f\x68\x37\x7f\x6f\x83\x0d\xb2\x69\x31\x4b\x17\x18\xc0\xe4\x93\x05\x9e\xeb\xfc\x8b\x08\xd7\xd3\xc5\x98\xe6\xb3\x74\x6e\xb5\xb3\xb9\x75\x9c\xac\xbc\x3b\x39\x21\x7e\xb3\x98\x98\x76\x06\xe6\xda\xac\xcc\xfd\xc9\x1d\xc7\xb9\x8b\xe6\xbc\x85\xbe\x6e\x3b\x0a\x37\xce\xd2\x7a\x5a\x8a\x01\x03\xaa\xb7\xfc\x33\x2d\x71\x86\xb2\x76\xff\x25\xda\xe8\xfe\x74\x70\x04\x9e\x5b\x9c\xf8\xe2\xf1\xdc\xce\xdc\x22\xe5\xd3\x62\x36\xa8\xe4\x6c\xac\xd7\x6a\xfb\x2e\xdc\xe8\x87\x65\xb2\x72\xbe\x68\xb9\x9b\xe3\xa7\x22\xc9\xd3\x6a\x86\xcb\xb4\x9e\x52\x18\x3b\x18\x0e\x9c\xf1\x8a\xa9\x48\xf8\x7a\xed\x78\x51\xbe\xf8\xb8\x04\x68\x4a\x60\x0f\xa8\xca\x04\x75\x46\x86\xcb\x8a\xd4\x84\xa9\x28\x1c\x32\x54\xbb\x6e\xb8\xac\xca\x2b\x9a\x93\x5c\x5f\xb5\x78\x78\xb6\xe2\x43\xca\xc1\xc7\x92\x95\x7c\xb8\x10\x34\x73\x0c\xe0\x12\x74\x91\x50\x3b\xf0\x4b\x7f\xdf\x5d\xa5\x07\x8f\xae\x1e\x97\x8f\xae\xf6\xf6\xd0\xe5\xf4\x6a\x96\x66\xd3\xab\x59\x93\x8f\x5a\x01\x29\xf8\x88\x6c\x90\xca\x4d\xca\xc6\x42\x5a\x58\xaa\x08\xe0\x97\x65\xf5\xd2\xf8\x98\x42\x9e\x67\x84\xcf\xd3\x03\x7c\x96\xde\xe8\x29\x3a\x7f\x7c\xf6\xe8\x5c\x4c\x91\x6e\xe3\x34\xbd\x99\x9e\xcf\xf0\x35\xfc\xa3\x8f\xc5\x0b\x67\x78\xd7\x08\xbf\xf1\x7f\x9e\xa4\x07\x8f\x4e\x1e\x5f\x3f\x3a\xd1\x53\xfd\x31\x3d\x9d\x9e\xcc\x1a\x30\xd3\x83\x37\xd3\x93\x59\xfa\x11\xbf\x80\x7f\xc4\xed\x47\x17\xc9\xf5\x93\x43\xe4\xb1\x39\xdf\x90\x84\xe1\x0a\x73\xfc\x02\x13\xbc\x0a\xdd\x7a\x17\x10\x28\xb2\x41\x68\x3c\xcf\x78\xd3\x79\x58\xe5\x32\x47\x68\x83\x92\x37\x32\x9a\x64\x48\x17\x89\x10\xce\x5e\x68\x3e\xe4\x36\x4f\xea\xe9\x9b\xe9\xc1\x4c\xec\x02\xb4\xd9\x48\x63\x9e\xfe\xfe\xe3\xf4\xe0\xd1\xf1\xe3\xf2\xd1\xf1\xde\x1e\xca\x13\x32\x3d\x9e\x21\xa5\x4a\xb3\x40\x8b\x21\x76\xe2\x24\x91\x7c\x7c\xc2\xad\x1b\x60\x43\x30\xaf\xd0\xb8\x89\xc1\x88\x17\x60\xc7\xea\xe1\xb6\x55\xe6\x71\xaa\xbc\xed\x43\xa2\x7c\x85\x19\xd2\xdc\xf6\x09\xfc\xea\x18\x40\xe6\xe7\xa2\x76\x50\x5a\xb4\x0e\x30\xa4\xde\xc0\xdc\x71\x74\xf5\xd9\xff\x36\xf3\x38\xd8\x22\xc8\x8b\x8e\xfc\xe1\x07\xbf\x5a\x6a\x99\xe4\x8c\xe6\x13\x0a\xe0\xcb\xda\x46\x8b\x9c\x29\x73\xf3\xac\x23\x41\xbd\xe3\xf8\x37\x4e\x21\x7b\x51\x8e\x46\x60\x40\xd6\x41\x1e\x89\x52\xb7\xf6\x8f\xe2\x24\x21\xdb\x16\xd4\x43\xdc\x58\x98\xbb\xe6\x13\xf2\xc5\x5d\xd2\xf3\x1d\x18\x64\x27\xd7\xf2\xee\x2e\xc6\xae\x0c\x57\x05\x65\x38\xc7\xf9\x93\xaa\x3c\xdc\x2b\x08\xf5\x6b\x01\xd6\xb3\x23\x36\x61\xe3\x8b\x8a\x2c\x70\xa1\x1c\xdf\x75\x82\x40\x8e\x33\xbc\xc2\x14\xe1\x79\xa7\xd4\xa6\x8a\x6a\xf7\x77\x57\x33\xf0\xdb\xa1\x24\xcd\xd0\x3d\xf8\xc5\x2b\x79\xad\x48\x9f\x26\x45\xfa\x65\x52\x60\x8e\xe7\x08\xff\x90\x7c\x83\x2b\x74\x27\xc7\x4f\xfd\x49\x4d\x1f\x76\x35\x1a\x2b\xc4\xb1\xf4\x4b\x22\xa1\xdb\xc4\x67\xec\xee\xd4\x1e\xfa\x16\xe5\x7a\xec\x7f\x53\x40\x4a\x23\x1e\x8e\x9b\xd2\x6a\x4a\x5f\x6b\xad\x1a\xe9\x4a\xae\xdd\xe9\xb3\xa1\xbd\x08\x2d\x82\xa3\xb3\xa9\xf4\x75\x3e\x9d\x69\xef\xf5\xd6\xd9\x57\xf3\x95\x35\xf1\x2e\x21\x35\x4f\xd5\x86\x98\x04\x97\xef\x8b\xac\x7e\x4e\x2e\x33\xae\xa7\x3e\x57\xc9\x36\x70\x21\x5f\x1e\xb3\x1b\xd7\xb2\x09\x09\xdd\xe7\xad\xf6\xe0\x7c\xe0\x45\x9a\x29\xb5\x99\x03\xd4\x89\xf3\xb4\xe2\x5a\xd3\x2f\xe1\x28\xc1\x51\x1a\x92\x19\x89\x3f\x64\x53\x24\x8f\xe3\x24\x90\x9d\xa4\x74\x37\xeb\x7a\x6d\x4d\xe5\x46\xc8\x5a\xac\xd7\xab\xf5\xba\x5e\xaf\x47\x79\x1c\x8f\xe6\x3e\x74\x8e\xbf\xd3\x1b\x3d\xc2\xe4\xc3\x6c\x5e\xa4\x85\xa8\x8b\x97\xe9\x6a\xbd\x9e\xc7\x71\x23\x70\x41\xf7\x45\x94\x3c\xa7\x82\x8d\x65\x88\x56\x1c\x8f\xea\x38\x4e\x2e\xd6\xeb\xa5\xba\x05\x2e\xd5\xe8\x3a\x63\x55\x68\xe3\x6a\x06\x05\xb9\x4a\xbd\x4e\x5a\xf8\x39\x26\x4c\xe5\x52\x6c\x2f\xba\x48\x60\xac\xa2\x3b\xe8\xed\xea\xd3\xf6\xd6\xd6\x31\x24\x57\xa2\xdf\xde\x2d\xa9\x8c\x08\x7c\x87\x3d\xdf\xc8\xcd\x32\x35\x06\x23\xa2\xe7\x17\x2c\x4e\x5b\xbe\x89\x6f\xfb\x26\x88\x7e\x54\x3a\xc1\x60\xba\xd3\x9f\x93\xf6\xda\x44\xaa\x3b\x50\x5f\x53\x58\x05\xe2\x78\x8a\x59\x21\x4b\x53\x37\x48\xe6\x33\x12\x5e\x33\x10\x87\xf4\xc2\x2a\x1d\x25\x5d\x24\x58\x03\x6f\x6d\x8d\x2e\xea\xf8\xa8\x7b\x50\x5e\xb1\x6b\xcd\x48\xbf\xa2\xec\x83\xf4\x49\xea\xa4\xbd\xee\xee\x0b\x13\xa6\x23\x73\x0a\xdd\x75\x0b\xd1\x92\xc0\x24\xeb\xe6\x8f\x88\xcb\xaa\x68\x3c\xb2\x49\xe0\x38\x81\x14\x68\xed\x03\xba\xcb\x5d\xee\x91\x6d\x97\x07\x34\x6d\xf4\x63\xb0\x74\xf2\xcc\x77\x9f\x25\x49\xfa\x60\xbc\xb8\x85\xa4\x0c\x11\x26\xa1\x9b\xa5\x4e\xcb\xee\x9b\x65\x25\x5f\x86\x6e\x96\xa2\xd5\x9e\xbc\x59\xe6\x69\x19\xb8\x59\x16\xce\xcd\x82\xf3\xb4\xe7\x62\x99\xc3\x05\x91\xad\xd7\x40\xae\x0b\xb8\x87\x68\x1c\x53\xd7\xe0\x80\x2c\xb9\x74\x55\x5e\x9d\xea\x6f\xea\xf1\x9e\x08\xda\x6c\xd8\xd1\xfa\x37\xa3\x59\x37\x75\x05\xad\xe2\x18\x46\x87\x97\x69\xbd\x5e\x17\x9a\x1c\xe2\xcb\xb4\x71\xeb\x49\x94\x22\xf3\x13\xae\xa1\x79\x1c\x0b\x0e\x5b\x5d\x43\x6a\x14\x97\x47\x5d\x9b\xa0\xc7\x6e\x48\xf5\x88\xae\xd2\xd1\xa5\x4c\xe9\x63\xba\x12\x52\x88\xfe\xfc\x38\xbe\x0a\x35\xef\x4d\x0b\x9a\xd0\x38\x1e\x5d\x06\x4d\x3e\x34\x70\x60\x3a\x27\xb7\xf7\xa0\x48\x84\xa7\xb0\xc9\xf6\x76\x23\x91\xc3\x7c\xa4\x4d\xf0\xdb\xdb\x82\xc6\xa9\x0f\x4a\xd9\xf4\xc9\x56\xf0\x4a\xa0\x16\x16\xc7\x42\x51\x9e\xd0\x28\x1c\x02\xf3\x36\xe9\xbb\x64\xbc\x38\xae\x01\x4d\xe9\x7a\x1d\x72\x8f\xdb\x1e\xcd\x9f\x98\x0d\x75\xef\x30\x2f\x85\x1e\x85\x33\x35\xc4\x1d\x63\xbc\x24\xf0\x95\x0a\x16\xed\xba\x6f\xca\xae\x08\xaf\xcc\x5c\x35\x0a\xce\x0a\xee\xd8\x53\xa5\x3e\x35\x9b\xee\x88\x8e\xdb\xf0\x55\x49\x8d\x4b\x34\xa1\xe9\xfd\x67\x0c\x8b\x16\x30\xdd\x76\x51\xc9\x4f\x84\x60\xd8\xf6\xbd\xd4\xb8\x8d\xec\xce\xdc\xee\x52\x40\x5b\xcc\x3c\x83\xe0\xc4\x8d\xe7\x66\xd1\xda\xc2\xd9\xd6\x2d\x8c\x3f\x04\x76\x9d\xc1\x01\xf2\x62\x07\xb3\x1f\xb5\x5d\x8c\x15\xb0\x84\x1e\x9c\x2d\x93\xa5\x5f\x26\x59\xdf\x96\xb1\x36\xc1\xbe\x8d\xd3\x19\x1a\x58\xfa\x1b\xa7\x69\xe1\xdb\x5d\x1c\x74\x07\x23\x97\x98\x9a\xac\x30\x38\xbb\xfb\xdd\x6e\x24\x7f\x1f\x08\xc6\xd7\x2c\x0d\xda\xf7\x05\x44\x2e\x4a\x15\xbd\x13\xcb\xc9\x1d\xf6\xa6\xd9\x60\x18\x68\xd9\x35\xa4\xf9\xbe\x3b\x74\x21\x93\x12\x3a\x7e\x1f\xdd\xc8\x33\x07\x08\xbf\x4d\xbe\x25\x09\xd3\xdb\x5b\xbb\x7b\x89\xf3\xd6\x8c\x2e\x35\xfa\x27\x08\xa0\xaa\x8c\xab\x47\xe2\x7b\x75\x1c\x17\x45\xd3\xd1\x43\xa3\x7c\x62\x8a\x1c\xf7\x0c\xa7\xf8\x01\xa0\xb4\x28\x95\xcd\x51\x72\xb7\x01\x6b\x07\x91\x2a\xe4\x20\x12\x7a\xd8\xe9\x20\x72\x5c\x14\xdd\xde\x21\xce\x47\x08\xc9\xb4\x77\x8c\x8d\x11\x62\xcf\x93\xa0\x79\xfe\xb8\xda\x4e\xdd\xe8\x42\x2a\x5a\xa8\x45\xfe\xfc\x88\x58\xe9\x28\xa1\xb6\x55\x40\x28\x6b\x6d\xc9\x40\x8b\x6d\x10\xa2\x84\x3b\xde\x59\xe1\x86\x95\xe2\x6e\xd0\xf0\x76\xd7\x66\x27\x17\x76\x08\xc6\xa0\xdf\x54\x68\x23\x8f\x51\xd1\x48\xe9\x2a\x9e\x6a\x7e\x02\x9c\xb1\xc3\xe4\xb5\xe5\xb0\x54\x29\x1d\xc4\xa9\x0e\xa1\x78\xb9\x2a\x8a\x1b\x95\x81\xda\x32\x81\xdc\x92\x3e\x70\xb5\xd1\xd6\xc7\x56\xda\xfe\xa4\x61\x4d\x13\x63\x91\x56\x93\x5b\x8d\x95\x3d\x61\xd6\xb0\xc9\x37\x08\x3b\x56\xc9\x37\x6c\xde\x63\x99\x7c\x6b\x9b\x44\xc6\x7c\xe8\x3c\xdc\x82\x56\x06\x43\xa9\x01\x0c\x06\x0d\x5a\x6f\x84\xe4\xed\xe0\xa3\xe1\xca\x9a\x6d\xf8\xe3\x0a\x30\xd2\x4c\x50\x21\x9f\x41\x2a\x2e\xfd\x41\xb8\x84\xbc\x5c\xf2\x93\xc0\x3c\xeb\x0b\x10\xb8\x6e\x51\x9d\xcc\x95\xda\x56\x8a\xa1\x1d\x44\x55\x59\x72\xe5\xe7\x97\x8f\xeb\xec\x4a\x66\xfa\xce\xbc\xa4\xc8\x36\x5f\xf0\x51\xb2\x4a\xb3\x31\xa4\x1c\x4f\xd0\x51\xe4\x3a\x77\x46\x93\x6c\x6c\x12\x89\x8b\x97\xae\xf3\x60\x34\x89\xdc\x54\x58\x11\x2e\xed\xc1\xe2\x89\x9c\x71\x90\xc2\x11\x9a\xd8\x57\x72\xe7\xe5\x34\x17\xb3\xd5\x77\x87\x0f\x38\x78\xb8\x2a\xb3\xbf\xa2\x8d\x4a\x55\x0e\x32\x93\xe3\x88\xe0\x8f\x4b\x26\x3d\x66\xe0\x3c\x12\xce\xd5\x55\x42\x74\x4b\x2b\x49\x63\xc2\x1c\xfd\xf9\x77\x59\xad\xd2\xcd\xb5\x8c\x06\xa1\x84\x7e\xea\xb4\x9a\xba\xcd\xa4\x72\xcd\x9a\xd2\x14\x27\x2b\xf5\x05\x4e\x69\xdd\x7c\x28\x68\x6a\x31\x3e\x15\xb4\x21\x40\x18\xc0\x6c\xa3\x14\x0e\x34\x01\xe7\x32\xcc\x40\x47\x98\x23\x84\xab\xa6\x6f\x25\xc7\xa0\xe1\x94\x1b\x47\xb9\x02\xc8\x74\x3d\xe1\x2d\x83\xeb\x54\x11\x7e\xef\xbd\xf2\x98\x10\x32\x13\x60\x6f\xac\xd7\x99\x86\xdf\xa8\xdc\xd4\x68\x85\x31\x79\x74\xac\xcf\x0a\x13\x34\x28\x46\xda\xfc\x5f\xb4\x47\xbc\x42\xc8\xcb\x04\xb4\x02\x49\x57\x70\x7d\xb5\x32\xee\xef\x90\xb6\xb5\x52\xea\xac\xa5\x87\x51\xd8\x80\x7c\x53\xc0\x98\x5d\xb8\x60\x3d\x29\x77\x49\x53\xda\xd2\x49\xaa\x8e\xc4\x1f\x13\xde\xb4\xb2\x9c\xf6\x8c\xc3\xe7\x68\xb6\x79\x4d\xeb\x00\x7e\x8d\x7a\x01\x82\x39\x24\xa4\x96\xa6\x64\xda\x34\x25\xf3\x00\xf8\x5e\x42\xa7\xd5\x0c\xe8\x7a\x50\x6f\x8b\x6e\x59\xea\x69\x6e\x95\x02\xdd\x9a\x82\x98\x34\xe1\xca\x38\x31\xd9\x4f\x39\xad\x66\x69\xb0\x33\xd9\x14\xf4\xa8\x3e\xb5\x74\x2d\x79\x46\x56\xd6\x73\xd7\xd9\x84\xf1\xbe\x6e\x15\x68\xf8\x36\x7b\x08\xad\x12\xed\xaa\xcc\x72\x7d\x99\x8b\x3b\x41\x72\xb1\x21\x2e\x13\x33\x09\xfb\x77\xcb\x52\xee\x09\xb4\x2a\x79\x80\xaf\xf9\x53\x81\x95\x2c\x25\x38\x58\x20\xca\x96\xcb\x42\x05\x61\x09\x1e\xdb\xed\x5d\x72\x3e\x9a\x30\x89\x27\x26\xce\xb6\x5b\x2a\xd6\xde\xc0\x5a\x47\x5f\x79\x0d\xec\xa0\xb9\xe5\xcd\xa2\xa6\x89\x4e\xa5\x56\x28\xbc\x40\x1f\xda\x73\xc2\x9f\xde\xb8\x9a\xe4\x50\x43\x01\xe2\xe7\x07\x57\x76\x98\x2b\x99\xa2\xa1\x6a\x46\xc3\xb1\x41\x75\xe0\xb6\x91\x6f\x5c\xc5\xd8\xbb\x60\x96\x4d\x15\x4b\xd2\xcc\x02\xd8\x19\x4f\xd1\x2c\x28\xf5\xab\x8e\xdf\xa1\xf4\x89\xb4\xb1\x98\x2a\x2c\xae\x15\x5b\x11\x88\xfc\xd5\xa2\xa6\xe6\xf6\xbe\x27\x71\x9c\x7c\x4f\x52\x9e\x44\x7f\x22\x82\xd3\xdd\x17\x67\xe0\x81\xa4\x74\xf2\xef\xfd\x65\x45\xaf\x32\x4e\x22\x34\xb6\xcd\x6a\x73\xd7\x99\x5d\xa1\xce\x30\x55\x15\x09\x0c\x39\xb4\x21\x53\x26\xdb\x78\x79\x7a\xbe\x27\x49\x09\x21\xc0\x0b\x2f\x79\x61\x18\x47\x73\x97\x0e\x83\xdc\xb2\x9e\x49\x2e\x61\x3b\x17\x3d\xd1\xd1\xea\x90\x6a\xa1\xe9\x40\x22\x1e\x25\xf6\x12\x71\x63\x3e\xd4\xca\x88\xcf\x52\xd9\x2c\xbc\x80\x8f\xaa\x1d\xf0\x81\x26\xad\xeb\x88\x20\xfc\x5c\x59\xa5\x59\x59\x5d\xc2\x46\xec\xf3\x7b\x08\x10\x81\xca\x28\x2c\x5c\x9d\x95\xb1\x08\x98\x66\x85\xfc\x2c\x3b\x22\xd7\xcf\x54\x82\xef\xce\x48\x38\x03\x0c\xdb\x77\x3a\x7d\x94\x4f\x51\xdf\xb2\x98\x1d\xd2\x8c\xa6\x63\x5e\x84\x28\x56\xa1\x4a\x74\x91\x30\x93\x2d\x4f\x51\x47\x03\x70\xfb\xe6\x9a\xa9\x64\xa9\x8e\xd8\x32\x4a\xd3\x04\x6e\x25\x39\x9b\x1a\xe6\x6d\x12\xed\x09\x11\xad\x25\x4c\x33\x8d\xdb\xae\x1c\xef\x64\x14\x94\xa4\xc9\x6e\x83\x12\xc0\x5e\x11\xd6\xf5\xba\xdd\xbe\x47\x77\x77\xef\xc8\x6b\x17\x3a\x56\xea\x46\x87\x3d\x5f\xaf\xa3\xfd\x7f\xd4\x25\xdb\xcf\x96\x34\xf2\xdd\x1a\xe5\xe0\xb2\xa3\x6a\x9a\xcd\x42\xa3\x8a\xf6\x32\x34\x91\x45\x3d\x91\xbc\x6b\x34\xd3\x0c\xbe\x1e\x20\xbc\xaa\xa9\xd3\x6d\xb0\x75\xfb\xda\xcd\x94\xd0\xd9\xb6\xdb\x1c\xf4\xe2\x11\xdb\x5d\xb6\x48\x23\x40\xb8\x67\x97\xb8\x00\xc9\x3d\xfb\x24\x33\xdf\x64\x9b\xfe\xc4\x5b\x25\xd8\xc5\x27\xdd\x2d\x6d\x61\xae\x19\xd5\x23\x07\x96\x38\x67\x27\xa9\x71\x94\x93\x45\xb6\x2a\xf8\x89\x19\x56\x84\xd0\x51\x35\xa5\xb3\x8e\x41\x47\x7b\xf4\x6e\x9b\x89\xfa\x9b\x49\xf5\x17\x75\xb5\x6f\x0a\xec\xb8\x9b\x4c\x7b\x66\x33\x05\xb0\x3c\x03\x80\xe0\x2e\xa1\xf1\xa1\x5e\xdc\x37\x62\x63\x05\xdc\x1d\x2a\xdd\x89\xcc\x76\x62\xf0\x3c\x55\x37\xcc\x76\xd3\xd8\xac\xae\x13\x49\xeb\xe5\x94\x05\x3b\xa3\xb6\x33\xea\x74\x66\x84\x02\x1b\x35\xad\x5e\xaa\x2c\x89\x32\x8d\xc4\xa2\x0b\xa7\xd5\xad\xe8\x14\x71\x2a\xe3\x2e\xb9\xc7\x0c\x02\xeb\xdb\xd7\x3e\x81\x3a\x46\xc7\xa4\x04\x11\x2d\x96\x59\xce\x08\x04\xbc\x2e\xd9\xe4\xd0\x78\x8b\x87\xa2\xf6\x6d\x6a\x81\xed\xc2\x0b\xf7\x5e\xf7\x42\x67\x71\x03\x2f\xff\x4d\xa0\x53\x23\x05\x74\x96\x08\xed\x37\xd2\xf3\x19\xb8\x43\x9d\x23\xf6\x9c\xd4\x21\x3d\xcb\x58\xc9\xe8\x3c\x2b\x12\x34\xd0\xc5\xd2\x03\x67\x42\xbb\xa5\x91\xd6\x0c\xfa\xa6\x18\x3b\x85\xdb\x7c\xef\xbd\xef\xf5\x1b\x69\xcf\x47\x03\x41\x61\xfb\x84\xf8\x15\x7a\x67\xe4\x54\xe5\x01\x79\xde\x48\xaa\xdc\x98\x9b\x55\x5a\xe3\xa4\xb8\x17\x90\x89\x42\x30\xf9\x0d\x49\x56\x0e\x82\x49\x81\xf0\x5c\x3e\xc4\x73\x84\xeb\x8d\x22\x79\x2a\xa0\x19\x39\x78\x26\x9c\x37\x5d\xc5\x58\x53\xe3\x56\xa6\xcc\x43\xd4\x74\x6c\x3b\xe5\xfd\x11\x1f\xa7\xd5\x4c\xda\x01\x21\xac\x6b\x95\x36\x0d\x30\xa5\x89\xf5\xd2\xf6\x94\x8c\xe5\x43\x09\x12\x34\xcc\xce\xca\x15\x1f\x02\x5c\xae\x0e\x71\x13\x1f\x23\x21\x20\xad\x41\xf1\xa9\x31\x2a\x16\xd2\x5b\x85\x86\xbd\x55\xac\x3d\x67\x9b\x4e\xa1\xc4\x35\x2e\x06\x42\xdc\x48\xca\xf4\x5b\x88\x1a\x03\xeb\xa2\x90\x68\x2a\x84\x8c\xae\x21\x8e\x93\x22\x2d\x2d\x1a\x27\x78\x2d\x80\x60\x8e\xb9\xaf\xf7\x4b\x28\xbe\x05\x5c\xcf\x7a\x83\x2b\x84\x8b\x38\xd6\x66\x25\xf9\x18\xec\x4a\xba\x9d\x49\xb1\x81\xe9\xa2\xcd\x08\x32\xc9\xea\x93\x38\x1e\x49\x53\x3e\xad\x95\x1d\x0c\x34\x6c\x71\x1c\x29\x1d\x1d\xfc\x8c\xa0\xc8\xbc\xcc\xc9\x51\x52\xa5\x01\xe2\xbd\x1a\x13\x39\xe7\x12\xe9\xee\xa8\xf1\x3b\xb1\x1f\x8d\x26\xaf\x12\x32\x26\xf0\x18\x19\xd4\x15\xab\x35\x4c\x28\xae\x30\x41\x68\xc2\x1b\x4a\xc1\x84\x62\x82\x54\x82\x6c\xb2\x41\xb8\x70\x1c\xff\x2b\xee\x0a\x0b\x67\xdd\x7a\x27\x39\xa3\x47\x23\x15\x0b\x55\x91\x7c\x35\x27\xae\xd3\xb8\x2b\xcc\xaf\xd7\x8c\x4b\xd9\x11\xd9\xa8\xa6\x0d\x12\x82\xd4\x44\xb5\xb0\x5e\x8f\x54\x19\xd5\xb4\x53\xd0\x8c\x8e\x71\x5f\x30\xe7\xbd\x52\x5c\xe5\xe6\x4e\xea\x74\x85\x61\x4e\xfb\xb4\xd9\xfe\xb4\x02\x3e\x71\x24\x9d\x70\x12\x16\x8e\x82\x6d\xf0\x8c\x04\x8d\x17\xd9\x9c\x97\x15\x18\x51\x64\xd2\x43\x60\x0f\x37\x12\x55\x61\xbd\x4e\x58\xfa\x37\x22\x7f\xe0\x11\xf3\x12\x7b\x6b\x42\x30\x2f\xb2\x1a\xdc\x46\xe9\x98\x4a\x04\x05\xe4\xc4\x76\xc6\xb1\x0a\x31\xb1\x57\xf2\x45\x56\xbf\xb9\x66\x1a\x9a\x48\xde\xca\x14\x3b\x29\x17\xd1\x7a\x1d\x46\x31\xf2\x4a\xe1\x5b\x80\x41\x9a\x54\x1b\x34\x10\x9f\x9f\x32\xa3\x05\xdb\xc8\xef\x6c\x62\x20\xb9\xf0\x4d\x9a\x3b\x54\x27\x20\xc2\xcd\x0c\x90\x99\x7e\xd1\x3c\xdd\x64\xbb\xf0\xd2\xe6\x57\xc1\x21\xf0\x6f\x24\x90\x22\xf5\x2f\x64\xbd\x4e\xfe\xd2\x52\x4b\xc0\x77\xba\x0a\x89\x53\x4d\x4f\x5f\xd3\x8f\x94\x21\xfc\x17\x0d\x75\xa4\x40\x69\x9c\xc4\x6c\x52\x61\xc1\xdb\x3c\x08\xae\x2c\x4d\xf7\x98\x47\x5c\xa5\xa6\xbe\x0e\xf9\x60\x8e\x7e\xb2\xd2\xf1\xc9\x15\x04\x26\x33\xc1\xfa\x9a\x0a\x53\x3a\x73\x01\x98\xc4\x7a\xaa\xa1\x11\x3c\x15\x53\x31\x1b\xcf\x4b\x36\xcf\x78\xc2\x90\x45\x62\x92\x9f\x23\x77\x5f\x2f\x1c\x52\x13\x67\xa4\xb7\xb0\x87\x09\xd3\x53\x72\x53\xa5\x04\x27\x3c\x65\xdd\x08\x3e\x95\x8b\xe0\xc3\x3b\x10\x7c\x80\xb5\x32\x08\x3e\x95\x39\x14\x01\x3c\xd8\x1e\x50\x9e\x80\x1f\x36\xd8\x6d\x60\xa7\x2a\x61\xb9\xcf\xdd\x14\xd7\xe9\xad\xcd\x18\x81\xfd\xa2\x93\x0c\xbb\xa6\x87\x89\x6f\xdc\x82\xdc\x13\x19\x65\xa4\x92\x4a\x9d\x81\x87\x1e\x52\x5b\x20\x81\x5a\x13\x8d\x1a\x87\x24\x4f\x93\x41\x47\x66\x98\x85\x16\x25\x9e\x91\x1a\xbe\xbb\xde\xf2\xea\xd6\x13\x5d\x3b\xba\x9b\x7a\x75\x56\xcf\x2b\x7a\x26\x68\x4e\x12\x24\x61\x41\xa7\x43\x37\xdf\xb7\xe0\x0f\x51\xe5\xa7\xc4\xf7\x63\x84\xd4\x51\x17\xbb\x03\x74\x47\x98\xa3\x51\xda\x62\x69\xfc\x29\x1e\x3b\xea\x3a\xf1\xe9\xa2\x69\xc8\x75\x52\x85\xb1\x25\x21\x06\xc9\x84\x1f\xf9\xe9\xc0\xdd\x21\x7a\x50\xec\xee\xa5\x64\xbc\x64\xfa\xc7\x35\x88\xce\x8c\x57\x2c\x38\x28\x7c\xa0\x2c\x3f\xea\x1c\xd4\xc4\xc5\x36\x97\x85\xe3\x38\xa1\x3a\x80\x70\x0c\x68\x57\x71\x9c\x74\x36\x80\xc1\x75\x52\xb4\xf0\x8e\x5c\x96\x57\x59\xf1\xec\x82\xcc\x3f\x00\x38\x59\x39\x3e\xbd\xd4\x0a\x77\x2d\x62\xc6\x71\xe8\xe9\xb8\x22\xbc\xa2\xe4\x8a\x7c\x95\x71\x52\xf3\x04\xf9\x93\x25\x39\x05\x39\x4b\x1d\xfc\x66\xff\xe2\x28\x0e\x44\xb0\x04\x63\xea\xf0\x34\x0a\x8e\x37\xd7\x76\x86\x08\xcc\x74\x0a\xe6\xbd\xe3\x93\x23\x30\xf7\x46\x08\x77\xbf\x57\x56\xdf\x08\x21\xcd\x97\x73\x89\x1d\xdf\xb9\x3b\x22\x9a\x47\x48\xc2\xe3\xaf\xa4\xb7\x12\x5e\x6d\x30\x1d\x73\x92\x55\x79\xa9\x13\x78\xb6\xe0\x68\xb4\x80\x8c\x69\x18\x59\xc9\x35\xc6\x35\xcf\x9b\x54\x33\x09\xc6\x11\x2e\xec\x23\xf5\xef\x84\x83\x37\x8e\x18\xa9\xbe\xbd\xb5\xb1\x70\xe0\xe4\x94\x90\x80\x7c\x32\x26\xf2\x6b\xc8\xaa\x4c\x0a\x08\x6a\x84\x80\xc6\xe1\xa2\xac\x86\xbf\x8d\xf6\x20\x86\x45\x72\xe0\x43\x89\x4b\x35\xbc\x00\x87\xab\x1a\xa2\x24\x65\x5e\x6d\x80\x42\x6e\x8c\x6e\x8b\x27\x08\xe5\x4e\x06\xd1\xf6\xcd\x01\x5a\xde\x1e\xc0\xed\x76\x83\x2a\x2f\xf9\x8e\xed\xee\x02\x8d\xe5\xf8\x3a\x05\xa0\x74\xad\x5e\x8a\x61\x9f\x16\x3c\xbd\x91\x2c\x0f\xbc\x94\xf0\x9e\x3b\xc0\xac\xf9\x4b\xdd\xbe\xf4\x54\xb2\x2d\x0b\x6e\xe0\xe9\x81\x9c\x01\x62\xe6\xe8\xcc\x2a\xec\xd2\x51\x34\xe0\xe1\xf0\xe0\x40\xd6\x16\xe2\xa2\x83\x09\x5e\x8c\x38\x09\x6c\x42\xa3\xf3\xd2\x6f\xd1\x1d\xc1\xda\xfc\xaf\x0e\xf2\x05\x3b\x7f\xf8\x80\xfb\x1f\xee\xb5\x26\x3f\x5b\xf0\xa1\x5e\x1a\xfe\x70\x7f\x8d\x4f\xd9\x0d\x72\x0d\x8e\x56\xa4\xce\x48\x2d\xdf\x0f\x69\x3d\x2c\x59\x71\x33\xcc\xae\x32\x5a\x64\x67\x05\x19\x5e\x5f\x10\x36\x9c\xaf\x6a\x5e\x5e\xaa\x33\x07\x87\x76\xb8\x20\x19\x5f\x55\x64\xb8\x28\xb2\x73\x59\x2d\xda\x60\xb6\x49\x08\x77\xa4\xf6\x8c\xff\x4b\xa0\x90\x02\x56\x9a\x87\xe3\x09\x87\x95\x2b\xfe\x67\xbd\x26\xa2\x0e\xc2\xee\xcd\x45\xf4\xcd\xc5\xd3\x6a\x5c\x53\x76\xbe\x2a\xb2\x8a\xfe\xa0\x40\x32\x01\x65\x74\xc5\xb7\xe4\x17\xb8\x24\x3c\xeb\xcc\x2e\x00\xfc\x60\xa4\x52\x00\x9f\x3a\xc0\xdb\xed\x87\x0a\xf8\x5a\x4c\x89\x7a\x71\x91\xd5\xcf\xb2\x62\x2e\x1d\x7d\x55\xd0\x81\xc9\x29\xb0\xcc\x04\xef\x65\x13\x7e\xba\xdd\xaa\x16\x43\xcf\x74\x2f\xee\xab\x66\x53\xa4\xf9\x64\x87\x24\x05\xce\x97\x85\xd8\xad\x91\x55\xb7\x05\x3f\x4b\x6b\x2a\xe7\xfa\x85\x7a\x2e\xb1\x9d\x5a\xb3\x07\x67\xbd\xf1\x45\x9f\xbb\x5b\xd5\x0f\x74\xdd\x2c\xdf\xe1\xb0\xd0\xbb\x8e\x07\xca\x02\x53\xe2\x0c\xd7\x78\x05\x59\xeb\x07\xda\x1e\x49\x78\x86\x93\x32\x35\x0c\x15\x32\xf1\x0b\xa5\x5e\xc9\xf5\x3a\x59\xa5\xdc\x01\x8f\x97\x9e\xdc\xe2\x5c\x10\xc1\x07\x1c\x25\x55\xba\x92\x39\x7c\x98\x0d\xbc\x48\xea\x34\xc9\xd2\x15\xd2\x0d\xc7\x71\xe6\x33\x6d\x68\xbd\xae\xd1\x24\xa9\x64\x16\x7d\x96\x8e\x0e\x03\xf3\x9f\x56\x1d\x9b\x97\x35\x81\x92\x3f\x90\x9b\x2e\x9d\xa2\xf9\x52\x31\xe6\xcd\x06\xab\x0a\x94\xe5\x3b\xd4\xa0\x2c\x37\x55\x80\x1f\xe8\xab\x72\x2a\x09\x40\xe2\x9c\xc9\x9a\x27\xa6\x35\x73\xc5\x88\x37\xa6\x55\x35\x2b\xdb\xc7\xa2\x0a\x9a\x8a\x0c\xb4\x0a\xdb\x6a\x89\x52\x52\x9d\x9a\xf1\x00\x20\xb4\x78\x68\x00\xa1\xc9\xb8\x2f\xed\xe1\x73\x82\xc9\xf8\x39\x59\x56\x64\x2e\x5e\xbd\xb8\x22\x8c\x93\x3c\x7d\x26\x1e\xfb\xfa\xef\x13\xf1\x48\xa9\x4d\x65\xdd\x8f\xf6\x81\x24\xb5\xe9\x31\x26\x63\xb7\xf5\x57\xc4\x7f\xa0\x91\x90\xbe\xb2\xcf\x05\xbb\x7c\xe2\x82\x0d\xff\x15\xde\x95\x25\x57\x36\x0c\xf1\x53\x3b\xae\xa6\x2f\x9d\x1f\x6e\x47\xff\x80\x52\x80\xdd\x5b\x72\x4c\xc6\xa7\x67\x94\xe5\xe9\x0f\xe2\xaf\xf3\x55\x56\xe5\xe9\x53\xf1\x67\x09\xa3\x7c\x55\x1f\x17\xf4\x8a\xa4\xdf\x60\x21\x46\x93\x6a\x4e\x5e\xe5\x29\xc3\x64\x9c\xd3\xc5\x22\x94\x94\xcf\xde\x5d\xc4\xea\x25\xf4\x15\x86\x69\xfa\x3a\xe3\x17\xe3\x4b\xca\xc0\xe9\x06\x97\x72\xf3\x67\xe9\xc1\xa3\xec\x31\x7d\x94\xed\xed\x21\xba\x48\xc8\x34\x9b\x8d\xd2\x94\x4f\xb3\x19\xba\x2d\xd3\x6c\x70\x56\x91\xec\xc3\x46\x9f\xcb\x38\x66\xd2\x0d\x52\x9c\x5b\x1d\xb9\x72\x80\x57\x29\x84\xd7\x2a\x4e\xb1\xb4\x43\x29\x52\xba\x5f\xe2\x79\x7a\xf8\x68\xfe\x38\xa5\x8f\xe6\xba\x93\x6a\x7f\x2e\xbb\x61\xfb\xf3\x19\xba\x2d\xd2\xf9\xfe\xa1\xea\xaa\x4e\xd9\x7e\xb1\x5f\xe2\x55\x5a\x89\x7f\x15\xbf\x70\xbb\xa0\x55\xcd\xa5\x44\xf0\x8a\xe5\xe4\xe3\xa4\xc4\x59\x9e\x93\xfc\x59\xb9\x62\x7c\x52\x63\x99\x05\x4f\xfd\x5c\x6d\x36\x58\x2b\x51\x61\xa6\xde\x97\x5f\x66\xf5\x45\xfa\xca\x3c\x15\x3f\xdf\x97\x5d\x99\x1d\x6d\x9c\xab\x06\x03\x7d\x2b\x31\x4c\xc0\x58\xe2\xe6\x33\x24\xa1\xd4\x85\x95\x9d\x00\xcd\x32\x5e\x66\x1f\x88\xf2\x73\x9b\x56\x33\xad\x21\x62\x81\x84\xcf\x5a\xb1\x3c\x34\x02\x79\x84\xb3\x34\x7a\x00\x9a\x2e\xcb\x1f\x3e\x88\xf6\xaa\x41\x74\x96\xd5\x20\x92\xc9\x15\x31\x55\x9f\x97\x73\x50\x37\xd9\x9a\x11\xa8\x65\x40\x09\xce\x29\x2f\xc8\xa4\xc4\x39\xe1\x19\x2d\x26\x6c\x4a\x67\x58\x4a\x87\x93\xdb\x65\x09\x92\xe3\x24\xdb\x6c\x10\x24\xdd\xe2\x62\x22\x61\x6b\x36\xa0\xa7\xbf\xc4\xae\xab\xec\x33\xa5\x1f\x48\xcf\x30\xb1\x3e\x25\xf6\xb6\x2d\x71\x03\xdd\x3f\x7d\x6e\x9e\x58\xdd\x6e\x87\x43\xc9\x5f\x15\xce\xed\x06\xfb\x39\xe0\x5e\x56\xe5\xa5\x10\x31\x42\x75\x84\x20\xb6\xd2\x95\x6a\xc2\xbd\x4e\xce\x89\x42\xd5\xf6\x6a\xce\x53\xd2\x2a\xfc\x67\x89\x69\x46\x4b\x16\xa8\xb0\x08\x54\x78\x47\xea\x60\xe3\x79\xa0\xac\xca\x23\xd3\x2e\x7c\x21\x0b\x0b\x4a\xd9\x48\x4d\x02\x9f\x5b\xf3\x01\x19\xaf\x96\xe7\x55\x96\x8b\xf7\x9a\xfc\xa5\xdf\x91\x4e\x56\x32\x3a\x3d\x25\x42\xde\x5b\x15\x56\x17\x3c\x3a\x90\xa6\x0f\x59\xd8\xd7\xa8\x82\x82\xec\x01\xa4\x2e\x8d\xf0\x34\x22\x1f\x97\x65\xc5\xeb\x08\x07\x0a\x19\xb5\xeb\xac\xa9\x84\x8a\x56\x35\x19\xd6\xbc\xa2\x73\x1e\x0d\xee\x3a\xb2\xee\x4f\xd1\xa6\x7e\x7c\x6b\xd9\xee\xc9\xe8\xa0\xeb\x32\x92\xe4\x76\xd3\xd7\x62\x7b\xc3\xee\xdc\x78\xbb\x6a\x6f\x4f\xbd\x9b\x6b\xe7\x4e\x7b\x5b\xd9\xbd\x7f\x77\xff\xdd\xaf\x6f\xb7\x85\xdd\xfb\x75\x4f\xe0\xfd\xfa\x75\x5b\xd8\xbd\x5f\xe7\x6c\xde\xaf\x5b\xa7\x81\xde\x5e\x03\x74\x6d\xe7\x0e\x03\x75\x37\xe1\x73\x2a\x0a\x66\xbc\xac\xea\x07\xf3\xf2\x72\x59\x32\xc2\x78\xdf\x89\xb5\xc5\x57\x9c\x16\xa2\x52\x51\x64\xcb\x9a\xec\x03\x57\xd6\x53\xd0\x3c\x68\x9e\x70\x5c\x35\xce\xb8\x63\x2f\x09\x6b\xa1\x41\xff\xdc\xcc\x33\x6a\xd0\x0b\x37\x09\x41\xeb\xb5\x4f\x43\xe8\x22\x89\x4c\x0e\x56\x6b\x4f\x3d\xb9\xb9\x3c\x2b\x8b\xf5\x7a\x94\xc8\xbf\xc6\x94\x13\x18\xe3\x90\xb2\xa1\x5c\x17\xd1\xb2\x6a\x5a\x61\x31\x41\x76\xf1\xd1\x01\xe4\xb6\xc1\xa5\x0e\x6b\xe1\xd5\x8d\xb9\xad\x33\x5c\xa7\x64\xda\x68\x72\x96\xa0\x47\xa3\x84\x09\x91\xa2\x1e\x33\xf2\x91\x27\x08\x8d\xf3\x92\x41\xf2\x79\x95\x6c\x3c\x1b\x03\xe5\x42\x78\xc4\xd7\x6b\x9d\xb7\x5f\x30\x38\xe8\x91\xe8\x12\x3d\xda\x48\xf8\xad\x15\xba\x85\x3c\x38\x65\xba\xda\x2c\x28\xcb\x8a\xe2\xe6\x56\x0c\x80\xe9\x28\xf1\x7a\x2c\x87\xbc\x5e\xeb\xbf\x12\x64\x4a\x82\xbb\xbd\x54\x34\x96\x1b\x9b\xdd\x1c\x66\x6a\xbd\x2e\xd5\xbf\x4d\xcd\x09\xdc\x85\x80\xb5\x2e\x55\x92\x9a\x49\xc8\x38\x27\x97\x4b\x3e\xe4\xe5\x10\xb4\xa5\xab\x39\xa8\x49\x58\xc9\xf6\xe1\xd3\xcf\x0a\x32\x94\x76\x98\x39\x19\xff\x9d\xbd\x62\xc3\xb2\xca\x49\xa5\x40\xdd\x74\x11\x0c\x15\x32\xb1\x96\x43\xc9\xb7\xd6\xc3\xcb\x55\xcd\x87\x17\xd9\x15\x19\x66\xc3\xc0\x6c\x0e\x2f\xe1\x08\x8d\x23\xb4\x71\xcd\xc0\x34\x88\x77\xdf\xbb\x65\x32\x48\x4c\xeb\xef\x9a\xe6\x9e\x19\xf9\x7b\x26\x8e\x7b\x77\x8c\x67\x16\x5f\x54\xe5\xa5\xe9\xa1\xf4\xfb\xd9\x7d\x72\xeb\x65\x45\xb2\xfc\xe7\x9b\xd7\xd2\xc2\x86\xca\xb9\x69\x62\x9e\x10\x67\x3a\x2d\x7a\x78\xcb\x14\xcd\xcb\x13\xa8\x28\x8d\xd0\x04\xa9\x68\xb5\x3f\xe2\xfd\x43\xad\xbb\x8d\x94\x32\x50\x72\xa4\x9e\xf5\x4f\xe1\xc4\x38\x4f\x40\x3a\x44\x38\x7a\x9d\x2d\xa1\xc2\x7a\x1d\x9d\x10\x59\xf7\xc8\x9b\xff\x49\x74\xac\xcd\xa7\xaa\xe0\x83\xff\x9b\x1c\x4d\xbe\xa1\xeb\x57\x88\xf1\xe4\x68\xf2\xc7\xf5\xe1\xef\xd7\x0f\xbf\x40\xc9\xd1\xe4\x59\x91\x5d\x2e\x49\x8e\x64\x0b\xbf\x79\x30\x06\x9b\x49\x85\x8e\xe4\xb7\x29\x97\x45\x47\xa3\x26\x9f\xdf\x26\xf2\xf8\xf1\xf5\x9a\x3f\x31\x58\x63\xa0\x33\x33\xbf\x06\x3e\x6e\xa2\x03\x4f\x8d\x1e\x55\x8f\x39\xe8\x08\x19\xe8\x73\xa7\xd5\xcc\xe6\xb6\xbd\x33\xe3\x43\xc6\x45\x76\x53\xae\x40\xa7\x97\x9d\x2b\x65\x95\x61\xfc\x9f\x52\x08\x0a\xac\xc5\x5c\x16\x59\x5d\x8b\xf7\xa1\x67\xde\x0f\xb7\x01\x4d\xf7\xa4\xec\x96\x1c\xe0\x6a\x6c\x28\xfc\x77\x94\x5f\xbc\xcd\xaa\xec\xb2\x46\xbe\xc2\xda\xda\x5b\x9b\xa6\xef\x27\x0f\x75\x8e\xe1\x51\xea\x98\xb9\x1f\xce\x8e\xdc\x1f\x93\x29\xa8\x9a\x93\x03\x48\xb2\x0e\xfc\x1b\x4a\x04\xb9\x6c\x7a\x38\x38\xd6\x49\xfd\x55\x11\x32\x70\x9a\xed\x69\x18\x84\xa6\xc6\x27\x17\x25\x3a\x2a\x75\x64\xe5\x44\x25\x23\xcd\x52\x3a\x3d\x98\x1d\x45\x91\xb6\xb6\x57\x38\x9a\x44\x48\xff\x12\x2f\xd1\xa4\xb2\x8e\x26\xad\x3e\x4c\xc2\x5f\xa9\xcf\x6d\xe8\x7b\x11\x66\x60\xa4\x73\x66\xbd\x56\x06\xde\x5f\xde\x84\xb7\xb6\x91\x3b\xe1\xad\x97\x83\xd0\xbe\xdb\x69\xc2\x0d\x12\x57\xf7\xb4\x4b\x17\x31\xf1\xc8\x9b\xfd\x56\x87\x3b\xcd\xbe\x39\xe2\x85\xbd\x58\xda\xb3\xff\x8e\xfc\x73\x45\x2b\x92\xb7\x57\x41\xdb\xcb\xfd\x39\xf4\x3c\x1d\x04\x21\x1f\xba\x4f\xd4\xbc\x39\x8f\xa6\x64\x36\x60\xe3\x95\x90\xde\x16\x5c\xb9\x7a\x30\x4c\x93\xd2\x8d\x34\x74\x4b\xa7\x0c\x57\x82\x0a\xa0\x8d\x7b\x80\x57\xb0\x7d\xe6\x69\xe1\xac\x57\x1d\xa1\x81\x77\xe2\xe7\x03\x89\x0b\x5b\x04\x17\x35\xb8\x72\x0b\xa8\x92\x8b\x2a\x81\x83\x17\x3c\x5d\xb9\x42\xc0\xb9\xcb\x5c\x3a\xde\x67\x2c\xe1\xf8\x10\x4d\x0f\x2c\x94\x98\x7b\xc7\x28\x82\x57\x49\x40\x76\xf5\x13\x06\xa2\x5f\x5d\x0c\x0c\x81\x0c\x7a\x96\xb6\x7c\x73\xb8\x0b\x23\x69\x12\xb2\xca\xf8\x44\x41\xae\xed\xb1\xb1\x64\xbb\xe5\x09\x98\xf2\x8e\x11\xab\xa1\x88\x01\x6f\xfa\xb9\x74\xc9\x4d\x6b\x71\xf9\x01\xac\xc5\xfe\x82\x92\x22\xdf\xcf\x49\x3d\xaf\xe8\x52\xf0\xd8\x0e\xef\x3e\xf3\x3d\x12\xc3\xac\x36\x77\x36\x37\x0f\xb9\x1e\x6a\xb6\x27\xaa\xe1\x8f\xe6\x0b\xc3\x40\x1c\x85\xfc\x37\x15\x83\xb0\x99\x84\xe2\x50\xe3\xb8\xa7\x3b\xdf\xf5\x27\x4d\xcd\xf3\x91\xfe\xdb\x4e\xe2\x91\x1e\xdb\xc4\x74\x28\x88\x95\xe3\xbf\xf8\xab\x3c\xf1\xd3\xcb\x13\xad\x89\x33\x68\x65\x83\x5e\x2e\x92\xdd\x9f\x8b\xbc\x07\xff\x08\x63\x09\xb0\x90\x41\x4e\x1e\x0a\xff\x78\x66\xd2\xff\xd2\xd6\x7c\xfd\x8b\xc9\x5d\xec\x73\x73\xc0\xbe\x84\x27\xb5\xe2\xe2\x44\x3f\x44\x98\xa6\x6c\x7a\x30\xc3\x65\xca\xa6\x87\x33\x9c\xa5\x6c\xfa\x85\xa9\xf8\x10\x6c\xd7\x1a\xc9\x3c\x2a\xcd\xd6\xe0\x09\x55\xa6\xc2\x51\x9a\x52\x41\xd9\x1a\x5b\xb1\x8c\xe3\xc4\x2b\x9f\xd9\xf2\x59\x1c\x47\x56\x13\x13\x51\x36\x14\x4f\x5c\x0e\x02\x9e\x39\xe0\xa5\x19\xba\x0f\x0f\x4f\xeb\x97\x82\xb4\x3f\x37\x94\x3d\xa5\xf0\xd4\x79\x10\xa0\xa9\xb4\x25\xcc\x4a\x83\x84\x98\x2e\xef\xd2\x3c\xf4\x27\xa7\x4d\x87\x79\x1c\x47\xe6\xd4\x89\x4f\xe2\x71\x3c\xe2\xe3\xd3\x53\x5a\x3f\x53\x7e\xbb\xcf\xf5\xdd\x24\x08\xe5\x4e\x97\x57\x53\x67\xb4\xdb\x5d\x75\x8f\xd9\x53\xec\x96\x37\x45\x81\x8f\xf4\xe9\x01\x0c\xaa\x41\x36\xe4\xc3\x64\xb7\xcf\xb3\x9a\xae\x9d\x34\x68\xdb\xae\xf2\x4f\xac\x10\x27\x21\xb1\xa1\x37\x59\xa0\x6b\x12\xfc\x24\x2e\xcb\x82\x13\x76\xb7\x30\x4a\x18\x3a\x6a\xf8\x56\x33\x34\x09\x85\xdc\xb5\x07\xe0\x65\x78\x32\x39\x9d\x6c\x32\xa7\xc0\x00\x86\x8d\xbe\x2a\x2d\x39\x4c\xd9\x0c\x41\x6a\x7c\xd2\xc7\x91\xee\x38\x59\xdb\xc7\x2a\x31\xc8\xb9\x05\x1f\xb7\x63\x65\x6d\x1e\xb2\xb7\x65\xd6\x3d\x0b\x5d\xcb\xd0\x9c\x05\x66\x66\xa1\x92\xb3\xd0\xde\xeb\x0f\xe0\x0a\x21\xf9\x7e\x4d\x02\x4a\xe2\x4f\x79\x78\x07\xf2\x3b\x35\x33\xd4\xe1\x57\x84\x6e\x93\x36\x7b\x91\xd8\x7b\x4f\x10\x30\x84\x82\xd7\xe8\xb3\x8c\xb1\x92\x43\xba\xe4\x61\xa6\x5c\xbc\xb2\x7a\x98\x99\xf9\x8e\xd0\x06\x19\xa0\x51\x89\x9c\x20\x71\xab\x6c\xac\xa4\xf4\xd1\x0b\x04\x18\x88\xbe\x44\x15\xb1\x91\x1c\x27\x76\x51\xbf\x95\xf8\x45\xa6\xb5\x98\x93\x13\x12\xf6\xfd\x83\x42\x05\xad\x39\xe4\x10\x86\xc8\x7c\xfa\x03\x49\x0f\xfc\xb6\xb3\xbc\x23\x8b\xe3\x7a\xad\x7c\xee\x56\x34\x37\xfe\x87\xcd\x8e\x75\x6c\xbf\xe8\xc6\xe0\x12\x8c\xd2\x54\xdc\xc2\x42\x34\x16\x97\xb1\xf6\xb5\x82\xde\xa9\x8e\xf9\x93\xe3\xf3\xc7\x22\xbd\xd2\x3f\xd5\x70\xc4\x92\x42\x4a\x51\xb1\x2d\x6f\x95\xc7\xbb\xf8\xa1\x30\x22\xe8\x18\x36\xe2\x9b\x85\xe3\xfb\x59\x3e\xd9\x3f\x8c\x63\x3a\xae\x97\xc0\x15\x96\x58\x3b\xe6\xa8\xc1\xab\x43\x33\x3a\xd8\x68\xdf\x27\xff\x0b\x54\x74\x51\x60\x65\x4d\xea\x21\xd1\x92\x5f\xe9\x22\xf3\x29\x03\x5d\x24\x5e\x69\xa4\xfb\x52\x7b\xbb\x39\x11\x1e\x20\x44\x63\x46\xa6\x7c\xe6\x77\xa6\xbc\x05\x5a\x1d\x8e\xdc\x0e\x5d\xdf\x4d\x3d\x97\x5f\xa4\x69\x8b\x7a\xa0\x1e\x77\x45\x19\x5c\x92\x58\xfa\x71\x38\xc3\x1c\x80\x70\xbc\x0c\x1e\x8a\x94\xb9\xe9\x14\x48\xc2\x05\x3d\xdd\xf8\x03\xe7\x4d\x6f\x09\xdf\xdf\x47\x0c\x53\x2b\x7d\x1a\xa7\xa7\x5c\xde\xb4\xc1\xcf\x18\xb9\x4e\xd4\xc6\x74\xae\x6b\xcb\x62\x42\x8c\x36\xd9\xed\x90\x39\x85\x10\x69\xcc\x7e\x68\x45\x2c\x1d\x85\xe3\x09\x25\xd4\xe7\x41\x8a\x2e\xd8\x6c\x66\x35\xb0\xd8\x2e\x9b\xc4\x65\x4b\x78\x80\xc2\x56\x84\xe5\xa4\xda\xbf\x2c\x73\xb0\xdb\xd5\x0f\xec\x5f\x39\xcd\xf7\x29\xab\x49\xc5\x7f\x8c\x78\x7f\x6f\xb9\xf7\x73\x59\x44\xee\x2b\x20\x56\x56\x40\x64\xf7\x17\x10\x59\x5b\x40\x64\xdb\x04\x44\x66\x05\x44\xb6\xa3\x80\xc8\xee\x2e\x20\x32\xe4\x7f\xe9\xe6\xbe\x96\xa3\x5f\x84\x78\x58\xfd\x02\x0d\x24\xfa\x1c\x3a\xa6\x0c\xed\x68\x75\x5a\x13\xfe\x5a\x9d\x3c\xe5\xc6\x17\x88\x96\xbe\x9d\x67\xcb\xec\x8c\x16\x94\x53\x52\x2b\xb8\xea\xd3\x4b\xbf\xda\x33\xa7\x48\x12\x3d\x1c\x1f\x3e\x8c\xf0\x6d\x4e\x6b\x31\xbd\xc7\x2b\x5e\x42\x66\x43\xca\xce\xe5\xa0\x24\x55\xd2\x3d\xbb\x2c\xf0\x06\xc3\x72\x15\x45\xfb\xa5\xa7\xe8\xe7\x09\x1b\x2f\xcb\x1a\xbc\xe0\xb3\x02\x3d\x4a\x0e\x30\xd8\x21\x92\x0a\x53\x75\x08\x0e\x11\x66\xb0\xab\x73\xb4\xc1\x32\x78\x3e\xdc\xa3\x0a\x7f\x09\xbe\xdc\xb8\xa1\xce\x3f\x21\x2f\x26\x2d\x22\x7a\xe9\xd8\xdd\x49\xa8\xfc\xe0\x5f\x49\xe8\xaf\x24\xf4\x57\x12\xfa\xef\x45\x42\x55\x8f\xa4\x20\x62\x53\xc9\xe0\xdb\x5e\xb2\x0a\xa8\xa8\xaa\x78\xca\xbb\x69\x25\x71\xc1\x87\x55\x79\x21\xc4\x24\x55\x98\x14\x33\x97\x14\x57\x86\x14\xff\x8f\x23\xb7\xd7\xb4\x28\xf6\xd5\x57\xfd\x4a\x70\x7f\x25\xb8\xbf\x12\xdc\x5f\x09\xee\x27\x21\xb8\xbd\xcc\xe9\xa7\xa1\xc6\xbf\x44\x82\x7b\x5e\xd0\xcb\x4b\x52\x39\x9e\xba\xc6\x78\x70\x96\xd5\x64\xdf\x3c\xdf\xbf\x94\x0b\xd9\xb0\x40\xf4\xd4\x37\x8f\x76\x26\xce\xff\x02\x71\xae\x95\x16\x8d\x34\x51\x8a\x63\x9e\x90\x56\x00\x99\xf8\x18\x88\x1f\xfb\x24\x26\x26\xcc\x43\x49\xe6\x1c\xbd\x35\x4d\xf8\x4f\xb3\x99\x28\xc2\x4d\x47\x6b\xa9\x0f\x3b\xea\xfa\x50\x6e\x10\x7e\xb0\xef\x67\xee\xae\x90\xf8\xad\x57\x04\xa6\x61\x42\xa6\x7c\x96\x56\x32\x3f\x0e\x8e\x5c\x02\x13\xc1\xc4\xaa\x90\x7f\xeb\xaa\x94\x50\x99\x97\x45\x45\x3e\x4a\x0a\x12\x61\xd9\x77\x47\x1c\x8e\x68\x23\x81\x7b\x79\xb3\x99\x21\x2c\xda\xf0\xaa\x3f\x33\x3b\xb8\xd5\x8e\x13\x2a\x2f\x5a\x22\x09\x57\x98\x84\xf6\xb4\xab\x80\xc4\x73\xc2\x9f\x95\x8c\x93\x8f\x81\x56\xac\xcb\x0a\x0c\x80\x6e\x9a\xf6\xc0\x9d\x8e\xd7\xce\x27\xb2\xbc\x66\x64\x9b\xf5\xaf\x79\x55\xfd\x32\xcf\xe3\x3d\x8e\x55\x4d\xb8\xcd\x7e\xef\x6b\xb9\x01\xc3\x93\xe0\xd1\x81\x0e\xca\x32\x21\x65\x5e\xb9\xd2\x2f\xa7\xcf\x29\x19\x1f\xbf\xfb\xf3\xc9\xe9\xc9\x8b\xf7\xde\x15\x8a\xa9\x97\x5f\xbe\x74\x7f\x0d\x9c\x3a\x1a\x4c\x37\x6c\x8f\x32\x6a\x18\x08\x53\x7e\xf4\x13\x19\xa7\x74\x6a\x0d\x9c\xd4\x69\x94\x55\xe7\x75\x84\x28\x4b\x24\x86\x11\xea\x38\xea\x62\x80\x6a\xc6\x57\x77\x3a\xea\xd9\xb4\x9e\xa5\x2b\xa9\x30\x17\x7d\xa5\x0c\x83\x3d\x57\x63\x15\xa9\x61\x55\x08\xcb\x85\x82\x5f\xa3\x43\x84\x4b\xef\xe7\x46\xce\x7a\x86\x6b\x9b\xd1\x97\xe0\x24\xd3\xb1\xd0\x0e\x86\x68\xeb\x20\x0a\x69\x48\x1d\x57\xb0\x22\xab\x5d\xd2\x15\x47\x0c\xf8\x10\x1a\x93\xb1\x59\x8f\x74\x06\x50\x97\x6e\xb5\x19\x8a\xe3\x2a\x71\x30\xa6\x70\x86\x70\x0d\xcf\x70\x6d\x22\x8f\xf5\x1e\xcb\x76\xa5\x0a\xd2\x23\xe0\x47\xdc\xda\x5d\xb7\xfe\x7d\xae\xfa\x2d\x91\x38\xc6\x3d\x90\xfd\x4f\x75\x0f\xa4\x9f\xe3\x98\x36\xe3\x27\x7e\x99\x14\xba\x19\xc7\xa0\x96\x3a\xd3\x32\x6a\x4d\xf8\x5b\x3d\x8f\x6f\x16\x4d\xf9\xd7\xd8\xc1\x2c\x2c\x1b\xc7\x30\xbb\xe2\xce\x37\x6d\xd7\xd6\x11\xc9\x39\x6e\x1d\xae\x94\xef\xc8\xa2\x20\x73\xbe\x5e\x8f\xd4\x5f\x76\xa5\xad\x21\x95\x2e\x92\xd6\xdb\x71\x7d\x91\x5d\x7a\x45\x02\xfb\x07\xb2\x7c\xea\x42\xd2\xd9\x52\x7d\xc4\xf3\x8c\x93\x4e\x91\xbc\xd5\x59\x22\x8a\xe3\xe9\xcc\x43\x2c\x04\xe0\xc1\xd1\x81\xf2\xad\x24\x16\x60\x63\x23\xc8\x44\x9b\x31\x54\x10\x18\x69\xa1\xa4\x70\x83\xc0\xa5\x90\x93\xdd\x3d\x3e\xa8\xd2\xf6\x20\x98\x45\x22\xc4\x3a\x9d\x47\x95\x32\xe5\xde\x01\x24\xd7\x42\x15\xea\x01\xac\x34\xa1\x76\x56\x7f\xe5\x01\x82\xf0\xf5\x5a\xbb\xbf\x8d\xd2\x94\x01\xf4\x9a\x9d\x4b\xa3\x4a\xe1\x47\x0d\x7d\x8b\x9b\xec\xcb\x1c\x1b\x93\xbc\x42\x9d\x1d\xd1\xf9\xf0\x22\xab\xd9\x6f\xf9\xf0\x8c\x10\x36\x04\xe0\x9e\xac\xa0\x35\xc9\x87\xfb\xc3\x7a\xb5\x24\x55\x82\xbc\x12\x62\x09\x88\x93\xe6\x0f\xb4\x3d\x13\x6e\x87\xef\x7a\xe8\x17\xe1\xad\xab\xaf\xc3\x73\xef\x69\x90\xf0\xd8\xdd\x6c\xb0\x31\xfd\x5a\x80\x31\x29\xfe\xf3\x69\xc4\xf8\xb9\x16\xe3\x0d\x7d\xee\x95\xc6\x89\xde\x12\xe2\x8e\x06\x38\x92\xaf\xe8\x82\xcc\x6f\xe6\x05\x79\x96\x15\xc5\x59\x36\xff\x50\x4f\x46\x87\x4a\x84\xfe\xb2\x2c\x3f\x4c\x46\x87\x1b\x84\x17\x1e\x97\xd4\x66\x51\x42\x2b\x6c\xdc\x1e\x79\x98\x10\x9e\x88\xd5\x1a\x92\x8f\xcb\x8a\xd4\xb5\x58\x09\xd0\xb7\x10\xca\x2f\x48\x35\x3c\x23\x80\xfd\x35\x2c\x2b\x8f\x32\x0e\x48\x27\x0c\x24\x40\xa6\xd9\xab\xf6\xd6\xd9\xff\x13\x35\x8d\xc4\x65\x4b\x9a\x2c\x8b\x10\xdd\x79\x1c\x4b\x5a\xb6\x41\xc9\x1c\x13\xe5\x50\x84\x19\x5e\xe1\x22\xad\x93\xb9\x13\xd8\x31\x77\x78\x05\x79\x28\xe6\x08\x17\xe1\xd3\x63\x70\xa7\xd2\x39\x4e\x98\xe6\x56\x94\x2a\xa2\x47\x02\x51\x4a\xc2\xb1\xcb\xb0\x68\x62\xa8\xa0\x1d\x08\x64\x88\x1a\xc0\x8e\x3d\x01\x20\x05\x5b\x34\x41\x18\xe2\x24\x3c\xb6\x18\x22\x71\x64\xe5\x6a\xc5\x42\xc8\xdb\x04\x7b\x68\xec\xe1\xd2\x46\x3f\x0b\x9f\x9a\x63\x98\x34\xc9\xf2\x94\x1e\xda\x0a\x43\x78\x05\xcf\xf0\x0a\xe1\xf9\xa6\x11\xd1\xe2\x43\x56\x36\x00\x2b\xf1\xdc\x8d\xa4\xc9\xb5\xa6\xc7\x61\xc3\xd6\xeb\x44\x23\xc8\x4a\xc8\x3d\x40\x00\x6d\x4e\x05\xc9\xdb\x33\x41\x72\x04\x42\xa1\x0c\x27\x59\x38\x7c\xd8\xc5\xae\x7c\x98\x14\xb5\x3e\x9f\x1f\xaa\x9e\x15\xf7\xb8\xeb\x75\xd7\xef\x06\x4e\x31\xbe\x65\xe0\xa1\xf8\xec\xfb\xb0\x99\x9f\x88\x4d\xfc\x54\x6a\xcc\x4a\x3f\x1e\x58\x85\xe6\xb3\x06\x31\x0c\x02\x84\x83\x7a\x40\x57\x06\xb2\xac\x13\x22\xd3\x94\x39\x1b\x82\xba\xf3\x7a\x56\x94\xf3\x0f\xfb\x75\x51\x72\x27\xf4\xbd\x7e\x60\x1f\xfb\x13\xec\x16\xe7\xe4\x72\x59\x64\x9c\x74\x56\xf4\x4a\x5f\xd2\x8f\x94\xd5\x0f\xe0\x47\xe3\x95\x53\xfd\x06\xfc\x7e\xa1\x7a\x6b\xbe\x85\x58\xf9\x19\x66\x5c\x27\xef\x30\x73\x3c\x26\x1f\x39\x61\x79\x72\x2b\xc3\x91\x26\x66\x4e\xb1\x0a\x9b\x9a\x44\x11\x3e\x65\xe2\x8f\x26\x76\xb3\x44\x72\x0a\x00\xca\x83\xa4\x08\x08\x4e\x62\xee\x69\xfe\x0a\x3c\x98\x5e\x28\x95\x70\xcb\xa1\x4b\x6a\x8a\xa4\xdb\x14\x23\x59\x45\x6a\xfe\x66\x21\xae\x9a\xc4\xec\x0e\x60\x92\x46\x5c\xa6\xf3\x3c\xa7\x35\x27\x15\xc9\x15\x60\x15\xd8\x3d\x6c\x42\xcf\x53\x41\x0a\xc5\x6e\x3e\x29\x4a\xee\x16\xc1\x30\x0d\x4e\xb2\x56\xd0\x5c\x89\xd9\xe7\x24\x77\xe8\x38\x37\x79\x6f\xdb\x03\x62\xde\x80\xa8\x06\xb9\xb5\xcd\x9d\xc2\x9a\x9e\xc0\x8e\xa0\x3a\xa7\x95\x85\x40\xa4\x38\x82\xc1\x44\xc8\x20\xaf\x89\x9f\x83\x66\x33\xb4\x7e\x9f\x55\xe7\x84\x8b\x86\xbe\x17\x2d\x82\xb0\x5b\x22\xa5\x8a\xf0\x1b\x84\xdd\x25\xfd\x94\x23\x34\x28\xe3\xb8\x09\x3d\x94\xa1\x38\xce\x02\x68\x43\x70\xac\xc3\x20\xde\x38\x5a\xda\x50\x4b\xd4\x80\xed\x1e\x57\x24\xcb\xdf\xb0\xe2\x26\x71\xbe\x77\xec\x8e\x63\xec\x54\x06\xd8\xd9\xcd\x06\x3b\xb7\x52\x60\x2b\x48\xa7\xb9\xc6\x62\x28\x00\xba\xe6\xe3\xf1\x69\x4e\xba\x56\x79\xb3\x41\x77\x3c\xfd\xce\x29\xbc\xdb\xe9\x77\x2b\x76\x9f\xfe\x9f\x8a\x92\xfe\xd4\xe7\xda\x5d\xee\x56\x13\x4b\xb9\x1b\x3b\x1b\x91\xef\xa1\x19\x09\xa6\xf8\x2d\x25\xd7\xcd\x56\x3a\x47\xd0\x41\x23\x20\x1b\x43\x7d\x2c\x36\x46\xfb\xa3\x9c\x7e\xc6\xa7\xb0\x32\xe3\xe9\x2c\xd2\xc7\x31\x34\x50\x7b\xc8\xd4\xd1\x6e\xb5\x10\x99\x24\x13\x75\xd2\x2a\x2d\x8f\x39\xec\xfd\x4e\xeb\x8e\xbb\x69\x2e\x48\xb1\x24\x95\xbe\x53\xf4\x04\xfe\x08\x03\xba\x1c\xd1\x71\x62\x92\x03\xdf\x4b\x6a\x71\x56\x59\x48\xf8\xa1\xbd\x57\xa9\xbd\xf7\x25\x7c\xc1\x58\x7e\x48\xc2\xdd\xaf\xae\xba\xbe\x3a\xc0\xd6\xec\x7a\x92\x3e\xcb\x39\xaa\x52\x73\x50\x76\x19\xbe\x7f\xcf\x7f\xf6\xa0\xa6\x00\x2f\x09\x79\x0a\xb4\x14\x75\x2b\xf7\xe5\x0e\x07\x49\x6f\x0e\x38\x34\xde\x95\xe9\x49\x30\xad\x5d\xad\xf7\x7d\x96\xe7\xc6\x69\x62\x83\x1b\xf4\x78\xb7\x26\x24\xee\x9e\xdb\x8a\x7b\xb9\x87\xe4\xf3\xce\xa6\xcc\x29\x6c\xd2\x7f\xde\xb5\x70\x5b\xd9\xb9\x9f\x63\x2d\xbf\x7c\xff\xfa\xab\xa7\x59\x55\x8f\xf5\xe8\x92\x5b\x9a\x4f\xa2\x17\x4f\x7f\x7f\xf5\xdd\xf2\x87\x3a\xc2\x30\xc0\xc9\x6f\x6f\x95\x5a\xb3\x8e\x26\xd3\x28\x36\x09\xcc\xb0\x04\x5a\x97\xce\x1c\x93\xe9\xf4\x77\x38\xa2\x8b\x08\x4f\xa7\x5f\xfc\x0e\x4f\xc3\x2c\xc5\x6c\x36\x93\x56\xb9\xdb\x46\xdd\x03\x1c\x0d\x87\xd1\x0c\x4f\x0f\x7f\x87\x0f\x75\x13\xcb\x83\x68\x36\xc3\xea\xef\x43\xe7\xef\x2f\x9c\xbf\x1f\x3a\x7f\xff\xce\xf9\xfb\x3f\x9d\xbf\x7f\xef\xfc\xfd\x07\xe7\xef\x3f\x3a\x7f\xff\x97\x18\xdc\x0c\x8b\x91\xfc\xfd\xef\x4c\xbc\x90\xb7\x0a\xe1\xa4\x12\x43\x9c\x6d\x60\xe4\xe2\xf9\x45\x56\xbf\xb8\xca\x8a\x68\xb2\xc8\x8a\x9a\x6c\x7e\x8b\x85\x60\x3d\xb9\xbd\x84\xf9\x97\x77\xdd\x1d\xd6\x7e\x7c\x71\x56\x47\x3f\x66\x1b\x85\x19\x8a\x9f\x7d\x1b\x3d\xfc\xc3\x7b\x4e\xfe\xb2\x2c\x3a\xb6\x91\x82\xaa\x8d\xf0\x1d\x76\x94\xbc\x6b\x77\xdb\x45\x5f\xf4\xaf\x65\xef\x06\xec\xad\xfa\xa9\x76\x80\x5d\xb6\x6d\x3b\x40\x0a\xd7\x32\x79\xc7\xbe\xbc\xee\xcc\xf5\x2d\x9f\xfe\x14\x9e\x6f\xd5\x4f\x08\x61\xf5\xab\xf3\xdb\x67\x76\x7e\xfb\xb9\xa1\xbe\x3e\xbb\xdf\x9b\x6f\x57\xbc\x72\xd2\x21\x27\x8a\x7f\x44\x2a\x1d\x8e\xd2\xc2\x56\x78\x7a\xbb\x31\x39\x8d\x24\x88\xc6\x7d\x18\x58\xd9\xa8\x84\x3f\xee\xd6\x87\xf8\xbc\x2b\xeb\x94\x21\xe5\xd1\x3f\xcb\x6a\x3a\xdf\xcf\xab\x72\x99\x97\xd7\xcc\xbb\x46\xbc\x37\xfb\xf3\x92\xf1\x1d\x3c\x40\x22\x1c\x6e\x58\xc5\xce\x6b\x74\xf4\x7d\xed\xcb\xd6\x5f\xbe\x9e\x57\x65\x51\x28\xc2\x14\x10\x40\x5b\xaa\x25\x0f\x69\x1d\x17\x78\x8e\x17\x38\xc7\x17\x78\x89\x2f\xf1\x15\xbe\xb1\x54\xea\xdc\xb1\xb6\x9c\xff\x4f\xb5\x09\x9f\xdd\x9d\x14\x9f\xfe\x0b\x90\xe2\xd3\x7f\x1b\x70\x95\xd3\x7f\x6d\x52\x7c\xfa\x93\x91\xe2\x6b\x4b\x0f\x2a\x03\x4e\x1e\x72\x10\x74\xbc\x85\x2a\xc7\x31\xc1\x37\xc2\x55\x9e\x87\x82\x35\xd6\x55\xc6\x33\x41\x99\xc8\xaa\xb1\x36\xfc\xfe\x40\xaa\x23\xef\x97\xdc\x7e\xcc\xa0\x2d\x3a\xd3\xf2\xe2\xb3\xba\x6a\xbc\xf9\x97\x70\xd5\x38\xf1\x5c\x35\x4e\x3e\xa9\xab\xc6\xc7\x5f\x5d\x35\x7a\x5d\x35\xde\x36\x5d\x35\xde\x7e\x4e\x57\x8d\xe3\x80\xab\xc6\x71\x8f\xab\xc6\x79\xb7\xab\xc6\x87\x86\xcb\xc4\x87\x9f\xdc\x67\xc3\x74\xfd\xd6\xe1\x1f\xde\xfe\x84\xde\x1a\x66\x00\xef\xb4\x0a\x5e\xf3\x1c\x9f\xd1\x37\x1a\x3b\x1f\xfe\x5e\x53\x5a\x9b\x70\xf0\x76\xa3\x27\xc8\xcd\x0a\xc1\x42\x59\x21\x08\xba\x2d\x01\xdf\x71\x4a\x66\x1b\x48\x01\xe8\x90\x9f\xd1\xc8\xfd\x89\xcb\x06\xf1\x19\xf9\x0f\x70\x62\x69\x51\xb9\x5e\x97\x2e\xf1\x15\xb7\x4b\xe9\xd3\xa6\x32\xad\xb4\xf6\x78\x5c\x11\x99\xfc\x07\xb5\x93\xfb\xba\x0e\xf7\xda\xca\xb1\x5e\x57\x1b\x84\x4b\x84\xa9\x83\x3a\xea\xf5\x07\xdd\xc1\x68\xfc\xe7\x47\x65\xfb\x4a\xa0\xfa\x4a\xc0\xde\x4b\xc5\xca\x2b\xdb\xde\x41\xda\xee\xa1\x7b\x69\x4b\x9d\xc9\x04\xe1\xf2\x13\xf9\xf3\x3c\x4b\x13\x2d\x50\x9c\xf2\x2a\x9b\x7f\x20\x39\xd6\xe6\xbf\x53\xe9\xa2\x81\xb3\xc6\xef\xba\xf1\x7b\xd5\xf8\x5d\x34\x7e\xcf\x1b\xbf\x17\x8d\xdf\x79\xe3\xf7\x45\xe3\xf7\xb2\xf1\xfb\xe6\xdf\xc6\x39\xe8\x44\x3b\x07\xd5\xd6\x39\x08\xc4\x9e\xf4\x63\x52\x3b\xbe\x2a\xb5\xb6\x4c\x0f\x5e\x48\x2a\x5c\x3b\xe0\x22\x9f\x06\xe1\xe9\x5d\xf2\x21\x21\x69\xe6\x66\xf1\xcd\x1a\x59\x7c\x2b\x71\x4f\x45\xbc\xca\x98\x94\xf9\x28\x3b\x7f\xc5\x9e\x09\x2e\x26\x12\x52\x6d\x75\x5e\x8f\x43\x2f\xd7\xeb\xa0\x68\xb8\xbf\xef\x15\xde\xa7\x2c\x42\x18\x46\xe1\x75\x42\xf2\xee\x3e\xcc\xbb\x1d\xba\x20\x79\x57\x0f\x94\x9d\xbf\x59\xf1\x9e\xef\xd0\x6f\x77\xfc\x90\x72\xc5\x9d\x7e\x68\xfd\xbe\x5c\xcd\x2f\x9e\x93\x2b\x3a\x27\xa6\x7d\xef\xe9\x7a\xfd\xb4\x2c\x0b\x92\xb1\x64\x34\xba\xa6\x2c\x2f\xaf\xe3\x38\x2a\x19\x17\x25\x6a\x9e\x55\x5c\x90\x46\xf9\x02\xd9\x86\x75\xf7\xaf\xf2\x0e\xd9\x5b\x8b\xfa\xfb\xc6\xf2\xad\x3a\xd7\x05\xc6\x2b\x46\xff\xb9\x22\xaf\x72\xa7\x55\x48\xa5\x79\x45\xf2\x08\xdc\xe5\xed\x53\x96\x17\xe4\x5d\x59\xf2\xd7\xe5\xaa\x26\xcf\xcb\x6b\x16\x61\x4d\xe8\x74\x21\x29\xe4\x43\x74\x1e\x9b\x93\x9a\x97\x55\x1d\xe1\xe9\xcc\x16\xb8\x5c\x71\xc8\xed\xf1\xe6\xac\x26\xd5\x15\xa9\x6c\x13\xd7\xaa\x44\xc6\xe8\x25\x14\x51\xab\x71\x85\x3f\x00\xbc\x13\xb1\x1e\x6f\x35\x4e\xa8\xf6\x78\xab\x09\x5f\x2d\x43\x6e\x6e\x16\x72\x08\xb3\x34\x57\x09\x84\xc6\xff\x5c\x91\xea\xe6\x84\x08\x66\x48\x90\x84\x69\x9e\xf1\x6c\x9f\x9c\xe5\xfb\x34\x4f\xcd\x1c\x99\x98\x82\xf6\x34\xe1\x68\x9f\x57\xf4\xfc\x9c\x54\xb3\x08\x21\x99\x2c\x2e\x30\x33\x96\x7a\x55\x40\xae\x14\x61\xaa\xc6\x1c\xac\x1d\x9a\x59\xd3\xbf\x07\x7c\xac\x27\x7d\xbd\x26\x3a\x89\x72\x9d\x50\xb4\x5e\xb3\x38\x66\xfe\x13\x27\xce\xc3\x49\x3f\xfa\x3a\x91\xee\x1f\x2a\xb5\x15\xf3\x51\x9e\xa8\x60\xed\x4c\xb2\x25\x5c\x76\xcf\x48\x56\xd1\x6c\xbf\xbc\x66\xb5\x9d\x0f\x3a\xa6\xb9\xbc\x12\x71\x04\x9f\x6d\xbb\x29\xfd\x6e\xb2\xf4\x75\x52\xba\xef\x33\xff\x7d\x9d\x66\xce\x30\x34\xdd\xc9\xe2\xb8\x36\x5d\x48\x39\x9b\x24\x99\x60\x33\x13\x8a\xf9\xd8\xee\x72\x74\x64\x27\x2a\x1d\x1d\x4e\x78\x63\x95\x94\xbf\xe1\x78\x5e\x94\x35\x49\x2a\x08\xb9\xd9\x60\xf3\xa9\x59\x2e\x13\xad\x7d\x45\x6b\x4e\x74\xf6\x6a\xd9\x44\x55\x96\x1c\xde\x89\xfb\x02\x77\x2d\xab\x68\x10\xcb\x53\xd8\x6e\x2c\xaa\x48\x4d\x7f\x20\x2a\x45\x64\xb5\x62\x45\x59\x2e\x8f\xaf\xb3\x8a\xbc\x23\x5a\x45\xd6\x53\xbb\xac\x28\x61\xf2\x70\xcc\x21\x2d\xd8\x96\x86\x64\x82\x48\x97\x86\xc4\x71\xd2\xfd\xa9\x91\x43\x4a\xb0\x42\x88\x5a\xcd\x2f\x4e\xc4\x83\x2f\xe1\x4b\x61\xba\x7a\x26\x4b\xb6\x40\x58\x1e\xf5\xce\x0f\xc2\x6a\xb3\x0b\xa1\x52\x3a\xca\xb4\x89\x42\x38\x47\x99\x4c\xe9\xa0\x03\x66\xa5\x63\xc3\xd7\x65\x4e\x9c\x5c\x6c\xcc\x40\x84\x51\x09\xd8\x0d\x29\x57\x45\xfb\x6f\xa1\x38\x4a\x18\x7a\x44\xe3\x38\x7a\xfa\xe6\xf9\xf7\x42\x04\xa1\x1a\x68\x7b\xcc\xcb\x6f\x96\x4b\x52\x3d\xcb\x04\xb7\x18\xc7\xd1\x97\xef\x5f\x7f\xd5\x53\xe2\x11\xba\x55\x19\xc6\x8c\xc7\x14\xf5\xc6\x94\xea\x23\x70\x24\x49\xd8\x24\x3c\x9e\x12\x6d\x6c\x8e\xd8\x84\xe9\xbc\x85\x59\x9e\xcb\x72\x30\xf9\x94\x9d\x83\x95\x58\x27\x47\x54\xa9\xa0\x03\x11\x47\x72\x4f\x80\x91\xfa\xcf\x45\x79\x96\x15\xb0\x48\x75\xa2\x9a\x95\x6f\x1a\x2d\x6b\xcc\xb9\xc0\x3a\x4c\x67\x76\xc5\x65\xdd\x4f\x70\x42\xfa\xb7\x66\xa8\x9b\x3b\xef\xce\xee\x46\xb6\x6f\x50\x33\xcd\xf2\xaa\x21\xaf\xda\xf3\xec\xdd\x1f\x92\xca\x9b\x7b\xe9\x05\x13\x53\x98\xc7\xf1\x3f\xbc\x3c\xf5\x62\xbb\xf8\x77\x57\xca\x43\x7c\xca\xa6\x3d\x80\x37\xab\xa0\xa3\xb6\x4a\xe0\x0a\xe2\x7d\x68\x04\xcd\xa3\xa2\xfc\xd7\xdc\xd3\xa2\x8f\xa0\x5c\x41\xc0\xc7\x78\xc5\xde\x16\x19\xac\x08\x4b\x99\x5f\xd3\x1e\x5d\xa4\x6f\x28\x22\x68\x29\x23\x62\xc7\x27\xa3\x03\x34\x10\x57\x41\x1a\x79\x37\x03\x8e\xf6\xf7\xa1\x50\x84\x70\xc2\x53\x2a\x51\xf9\xc5\xaa\x68\x6f\x0a\xad\x54\xc0\x67\x72\x34\x21\x0e\x11\x20\x12\x79\x12\x0d\x23\xc1\x61\x26\x95\xdf\x4e\x96\xe7\xc6\x00\x13\x6a\x44\xb3\x67\x7e\x2b\xa0\xcd\x20\x2c\x7f\x76\x41\x8b\x3c\xa1\xfa\xe4\x35\x16\xc9\x6f\xcc\xac\x13\xfe\x47\x42\xbd\xe5\x65\xea\x6b\x74\x6b\x1b\x89\x4d\x8a\x1d\x3e\xe4\x75\x9b\xbb\xd9\xba\xaf\x9a\x1c\x11\xf0\xed\xcd\x86\x7c\xb1\x5b\xea\x02\x47\x87\x8f\x92\x2a\x4d\x2a\x95\xad\xc2\xea\x9f\x40\x34\x56\x2a\xf3\xe9\xc1\x6c\x0c\x79\x25\xc5\x0a\xd6\x68\x5c\x97\x97\x24\xe4\xb9\x1c\xfd\xc7\xbc\xbc\x84\x14\x8b\xa3\x34\x25\x63\x56\xe6\x60\xa0\x8e\xe3\x51\x12\xfd\x07\x44\x21\xa7\xfe\xf3\xc8\x3e\xf8\x16\xa0\xdd\x37\x08\xa1\xf5\x7a\xdb\x58\x54\x5a\xcb\x9f\x64\x34\x42\x3e\x83\x8d\x5f\x5f\x94\xab\x22\xb7\x97\x27\x98\x07\x3a\xde\x09\x69\xcc\xe7\x2a\x10\xc2\x95\x68\x2a\x7c\x11\x4b\x5f\xa5\xe0\x4a\x8e\x4b\xf9\x47\x22\x84\x43\xb1\x69\xc4\x5e\x16\x82\x60\xbd\x3a\xe3\x15\x51\x19\x0b\x9b\x34\x7f\xeb\x1e\x42\xb7\x46\x71\x11\xec\x56\x9f\xf9\xd6\x70\x72\x5a\xcf\x4b\xc6\xc8\x9c\x27\x1d\x23\xd6\x8a\x0b\x3b\xa8\x26\x15\x0e\x8c\x66\x1b\xc7\x20\x16\xdc\x25\xea\x82\x7b\x73\x68\xba\xdf\x97\xf3\xb2\xeb\xf2\xb3\x0c\xe0\xc1\x2e\xf7\xc1\xae\xdd\x87\x97\x37\x30\x08\x1b\xba\x02\xd9\x5d\x02\xc2\x82\x66\x43\x2b\xcb\xae\xd9\x6e\x5a\x57\x77\xa0\x0b\xc5\x24\x06\x3f\xea\x2e\x5c\x66\xb0\x81\x3b\x32\x9a\xf6\xb2\x6a\x72\x2c\x5d\xc1\x45\x06\x37\x16\x66\x65\x59\x11\xd1\xbf\xac\xda\xd2\xe5\x73\x57\x3c\xe2\x9e\x78\x54\x99\xdf\xc0\x18\x5a\x19\xa8\x42\xeb\xb5\x10\x13\x78\x43\x9a\x4a\x0e\x30\x13\xfc\xd7\xb1\x4e\xa1\xaf\xfa\x4c\x2a\x4c\x10\x2e\xcd\x7b\xf9\xf8\x39\x29\x78\x56\xa3\x84\x23\x9c\xa5\xe5\x38\x17\x3f\xff\x86\x6b\xfd\xe7\xf7\x83\xec\x31\x55\x4f\xbf\x26\xe7\x19\xa7\x57\xe4\x28\xc9\xd2\xe6\x33\xcc\xf5\x17\x3e\x57\x51\x1f\x08\x4d\xb2\x27\xba\xd8\x5b\x98\x46\xbf\xaa\x7e\x16\xac\x5a\xeb\x5e\xbf\xb7\xbd\xd6\x69\xf3\x59\xb8\xaa\xee\xf5\x7b\xdd\x43\x1c\x3b\x75\xfb\xba\xb5\xf1\x53\x6f\xe5\x2b\xc1\xdf\x24\xd9\x7a\x5d\xa3\x38\x86\x79\xcb\x69\xad\xc4\x36\x3d\xab\x19\xae\x71\x05\x79\x7d\x8a\x9a\x0c\xdb\x8d\x6e\x36\x83\x1e\xd2\x70\x7d\x41\x48\x11\x61\x8e\x6f\xe7\xd9\x92\xaf\x2a\xd0\x90\x2d\xb3\xba\xa6\x57\x44\xc6\x07\x76\xf2\xb3\x69\x88\xf8\x04\xb7\x7a\xa8\x13\x41\x72\xe5\x88\x3d\x36\x7c\x3b\x1b\x9d\xb6\xde\xc8\x3a\x8d\xa3\xbd\xe5\x8c\x38\x98\x01\x8d\xbe\x43\x84\xde\x44\xa2\x0c\x3a\xe5\x46\xc9\xd5\xef\x22\x2c\x06\xf8\xff\x50\xf8\x05\x30\xb2\x9d\xdd\x90\x4e\x3a\x81\x9a\x44\xee\xce\x1f\x17\x5c\xc3\xcf\xf2\x7d\xbd\x3d\xed\xf4\x89\x39\xa9\x39\x65\x92\x1d\x97\xdc\x73\x17\x7e\x83\xd9\xa2\xe7\x44\x33\xda\x4f\x6f\x5e\xe5\xee\xc5\x61\xdb\x6a\xca\x06\x96\xdb\xef\x68\x3e\xe2\xa4\x06\x36\xc9\x8f\x73\x54\x56\xc0\x8a\xd4\x65\x71\x45\xa4\x03\xb3\xcc\xaa\x9b\xa8\xe4\x20\x13\xc2\xae\x68\x55\x32\x18\x3a\x1a\x3b\xbf\x2c\x4f\xcb\x6f\x8a\x76\x56\x7c\xb9\x6e\x51\xa4\x83\xa3\xc4\x27\x60\x20\xd6\xe5\x52\x25\x68\x5f\x00\xcc\xd5\xb8\xa2\xe7\x17\x1c\x97\x29\x1f\x5f\xd3\x9c\x5f\xe0\x2c\xe5\xe3\x0b\x02\x0f\x85\x70\x54\xf2\x0b\x52\x9d\x88\x3e\xea\x81\xb1\xfc\x8d\xd2\xb4\x36\x32\xfe\x6a\x48\xd9\xb0\x96\x5d\x16\x69\x3d\x5d\xcd\x06\x64\xcf\x11\x3f\x56\x38\x9a\x0c\x6d\xbe\xb5\x02\x47\x8f\x22\x8b\xed\x13\xc7\x89\x28\xcd\xcb\xe5\x64\xe8\x66\x68\x7b\x14\x21\x99\x69\x4d\xbc\x15\x83\x75\x5e\x33\xf5\x9a\xaa\xd7\xf0\x09\xce\x7b\xaa\xde\x97\xea\x3d\x7c\x98\xf3\xbe\x54\xef\x33\xf5\x5e\x7e\xae\x53\x20\x43\x3a\x6e\x49\x19\x89\x2f\xf8\x65\x71\x92\x2d\x08\xc8\xff\x33\x14\xc7\x6f\xbc\x58\x57\x0a\x7d\xbd\x49\xc0\x32\x54\x6f\x12\x1b\xe8\x8a\xaf\xd2\xf7\x49\x72\x99\xde\x20\xa7\x78\x4b\x7d\x3a\xa5\x33\x30\x4d\x78\x86\x41\xdf\x6c\xe8\xda\x28\x1c\x33\x55\x28\x9d\x6f\x48\x0c\x3d\xea\x94\xe9\x26\x51\xb4\xd9\x20\xfc\x3e\xb9\x74\x47\xa8\x34\xb6\xd3\x72\x86\xad\x7d\xd4\xc9\xe0\x67\xd3\x71\x84\xea\x21\x7c\xe9\x66\xac\x6b\xb4\x6d\x15\x27\xd3\xec\x8e\xcd\x9b\xaa\xfd\x3d\x38\x3a\x83\x69\x7d\xc7\x2e\x6c\xdd\x9d\xfa\x00\xb5\xc0\x74\x75\xbf\x4e\xde\x80\x05\xa2\xaf\x97\x0e\x89\x75\x5a\xdc\x67\x5d\x5a\xed\xec\xb6\x4e\x81\xee\xe7\xf7\x5c\xb7\xbb\x8e\xa0\x2d\xd9\x4c\x17\x77\xed\xba\xd5\xc6\x0e\x7d\x7a\x12\xce\x34\xbf\x4f\x97\x6e\x13\xfd\x3d\x76\x09\x35\xd3\x8b\x3b\xf6\xdb\xd1\xd0\x96\xde\x03\xb2\xce\x74\x79\xd7\x9e\xdb\x8d\x34\x7a\xbd\x74\xac\xa4\xaf\x85\x10\x22\xae\x8f\x47\x82\xf9\x1d\x11\xab\x44\x5a\xaf\xdd\x5f\x56\x9a\xe8\xb5\x9b\x45\x08\x3d\x32\x12\x0a\xa8\x18\x7c\x85\x99\xf6\x2e\x58\x15\xc5\x80\x34\xdf\x6e\xda\xae\x26\xff\x90\x06\x6c\xc3\xef\xfc\x73\x45\x6a\x7e\xac\x09\xea\xcb\x2a\xf3\xf4\x21\x5a\x0e\x52\xc5\xcf\x65\x10\xfa\x8a\x93\x1c\x6e\x4d\xed\xa3\xc8\x4a\x46\x22\xb0\x2e\x19\xd2\xac\xb4\x22\xd5\x8a\x31\xe9\x77\xe9\xbe\x7c\x5b\x64\x37\x27\x3c\xe3\x04\xdd\x92\x00\xa7\x67\xca\x81\x26\x35\x71\x9c\xb1\x45\xf9\x20\xe7\xe4\x57\xa9\x10\xe6\xa0\x16\x51\x7c\xb6\xfa\xdb\xb8\x26\x3c\xfb\x11\xae\xcb\xca\xf8\xb6\xd5\x75\xb9\x3f\x2a\x4f\x79\x4f\x61\xcf\xbd\xd8\x6e\xa2\x85\xe3\x10\xb4\xf8\x9f\xea\x50\x9c\x7f\x56\xcf\xc5\x8b\x7f\x09\xcf\xc5\xa5\xe7\xb9\xb8\xfc\xa4\x9e\x8b\x97\xbf\x7a\x2e\xf6\x7a\x2e\x9e\x37\x3d\x17\xcf\x3f\xa7\xe7\xe2\x55\xc0\x73\xf1\xaa\xc7\x73\x71\xd1\xed\xb9\x78\xd3\xf0\x5c\xbc\xf9\xf9\x3c\x17\xfd\xc8\x87\x9f\xc1\x73\xf1\xec\x67\xf2\x5c\x3c\xfd\xd5\x73\xf1\xdf\xc1\x73\xf1\x3a\xd5\x61\x58\xc6\x31\x90\x35\x7e\xd3\xc6\xef\x4f\xed\xd8\x78\x9a\x24\xf3\x7f\x1b\x5f\xc4\xa5\xf6\x45\x2c\xad\x2f\x22\x1c\xb2\xf4\x32\x29\x1d\x2e\xbb\x34\xbe\x88\x52\x8d\x85\xcb\x4f\xee\x8b\x78\x96\xdc\x24\x24\xa5\xae\x2f\x22\x0d\xfb\x22\x96\xe7\xe7\x05\x79\x55\x3f\x25\x94\x9d\x4b\xa9\x28\x7f\x7a\x03\xbe\x07\x5a\xe6\x18\x1d\x22\x0c\xed\xb5\x9c\xdb\x1c\xa7\xb2\x12\x27\x95\x76\x2a\x93\x9e\x03\xae\x9f\x5b\xcb\xd0\x11\x30\xfb\x28\x5c\xfa\x7c\xbd\x8e\x2e\x45\x55\xd0\x26\x78\xb6\x10\xa2\xfd\x27\xe2\x18\x2e\x8a\xf1\xd9\x8a\xf3\xd2\xb7\xd2\xd7\xbc\x5c\x8a\x03\x93\x9d\x67\xd2\x56\x49\x9a\x8f\xb4\x92\xfa\x54\x3c\x7f\x4f\x3e\x72\xe9\xbd\x45\x4b\xf6\x0d\xe3\xb4\x80\x61\xaf\x96\xba\xd4\xd6\xf9\x39\xda\xad\x18\xf8\x5b\x75\xdb\xba\x64\x7d\x09\x8a\x8d\xdd\x59\x7c\x56\xd0\xf9\x87\xd0\x0c\x86\xa2\xd0\xb4\xae\x54\xcf\x88\x87\xcb\x36\x6a\x77\xbf\x5e\xf7\xae\x83\x6f\x28\x6d\x2e\x41\x34\x87\xa1\x85\x5f\xaf\xd7\x07\x23\xbb\x42\xeb\xf5\xbd\x56\xe8\x27\x9f\xfb\xe6\xe4\xff\x95\xdc\xdc\x6b\x03\x27\x87\x32\x5b\xf5\x07\x72\xf3\xac\xcc\xc9\xd1\x2e\x9d\x4f\x1e\x7e\xe1\xd5\x01\x7c\x7b\xdf\x24\x84\x77\xfa\x88\xc9\x17\x7f\x70\x1b\x52\x70\x4b\x7d\x9e\x7e\xed\x5d\xf7\xde\xa8\x66\x7e\x9c\xc5\xfa\xb4\xa9\x70\x09\x76\xf4\x42\x88\xbd\x41\x63\xe8\xae\xeb\x7b\x80\x47\x09\x11\x3b\xa9\x69\x86\xeb\xdd\xe1\xa8\x61\x12\x0f\x16\x6e\x4d\x30\x6e\x98\xd1\x0f\xef\x68\x46\x6f\xcf\x89\x02\x7a\x20\xda\x5e\xab\xef\x3e\x71\x2b\x2d\xca\xf9\xaa\x4e\x10\xae\x09\x7f\x4f\x2f\x49\xb9\xe2\x9e\x86\x03\x4c\xbb\xca\x8e\x2b\x04\x13\xd9\x92\x19\x90\xbc\xdf\x60\x40\x49\x04\x94\x4d\xeb\x80\x06\x1c\x38\x13\xfb\x2c\x51\xe7\x19\x8b\xc9\x3c\x50\x26\x70\x7c\x60\xfe\x7f\x74\x68\xff\x77\x80\x25\xa3\xa2\xbb\x16\x33\xba\x14\x02\x8c\x6c\x89\x23\x2b\xce\xc0\x3a\xc0\x05\xe6\xf5\xd2\x59\x17\xca\x23\x71\xa1\x1e\x20\xdc\x3e\x02\x9b\xa0\x27\x80\x9a\xc8\x90\x99\x6c\x0b\x99\xfc\xb1\x4b\xb7\x65\xed\x2f\xe5\x65\xa2\xab\xab\x9f\x8e\xff\x84\x3d\x0f\x8d\x97\x7d\xe7\xee\x7e\x5d\xd9\xa1\x9e\x95\xf9\x8d\xa3\xcb\x93\xcd\x75\x68\xf2\x38\xf9\xc8\xf7\x6b\xb8\x21\xf7\xf5\xb9\x89\x9c\x51\x7f\x7e\xb7\x93\x1e\x1a\xd2\x7f\x85\xdf\x8d\x74\xdd\x7f\xfe\xb2\x3c\xbf\xe3\xe4\xcd\x50\x1c\x5f\x78\x76\x2a\x99\xc0\xe4\x22\xe1\x98\x09\xfe\xdf\xb1\x53\x79\xe6\xa9\x16\x67\x35\xad\xb6\xeb\x83\xe7\x7d\x2d\x20\x3c\x77\x95\xc1\xa7\xa1\xd2\x8a\x07\x99\xb2\x7b\xf5\xf5\x4c\x1d\xf8\xed\xfd\x98\xeb\x76\x4a\xef\xd5\x93\xae\xbf\x4b\x5f\xee\x0d\xb7\x8b\x2d\xad\xbf\x89\x9d\x7b\x84\xab\x6e\x17\xe3\x5a\x5f\x03\xfd\xbd\x85\x09\xe3\x2e\xd6\xb6\xed\xcd\xf4\xf7\xdc\x22\x61\xbb\x58\xdf\x7a\x5b\xd8\xd2\x5f\xc0\x22\xb4\x83\xf9\x6d\x4b\x1b\x8d\x3e\xe7\x2e\x6c\xc8\xf5\xfd\x75\xef\x9f\x01\x2e\xa4\x22\xff\x5c\xd1\x8a\x6c\x45\xa3\x54\x99\x51\xba\xc1\x40\xf0\x39\x3e\xc3\xa7\xf8\x1a\xbf\xc0\x6f\xf0\x09\xfe\x88\x8f\xf1\x07\xfc\x76\xe0\x46\xd8\x1a\x45\xd9\xbb\xff\xa9\x1a\xfd\xf7\xff\x4a\xc0\x09\xcf\x7c\xcd\x61\xf2\x2c\x0d\x31\x3a\x4a\xfb\x1b\xc7\x5a\x0d\x7c\x4e\xf8\x91\xf3\xf7\xa4\xb9\x6d\xa4\x51\xc1\x57\xd1\x80\x39\x70\xd4\x02\x17\xb9\xc8\x6a\xe7\x78\x29\x1f\x65\xcc\x91\x51\xdd\x24\x24\x7d\x29\x44\x8b\x47\xe8\x91\x03\xf4\x8f\x55\x98\x95\x56\x5b\x6f\x3b\xac\x4c\x54\x70\x33\xc0\x1c\xc1\x7f\x65\x7f\x15\x9a\x50\xa9\xb2\xdb\x48\x03\x02\xae\xd6\x6b\x77\x4d\x5f\xff\x4b\xd8\x51\xfe\xd1\x54\x03\xc7\xf1\x6b\x2f\xbd\x19\x07\x1f\xea\xd7\x90\x00\xcb\xd5\xe3\xbe\xf2\x0c\x30\xaf\x3e\xa9\x01\xe6\xf9\xaf\x06\x98\x5e\x03\xcc\xcb\xa6\x01\xe6\xe5\xe7\x34\xc0\x7c\x1d\x30\xc0\x7c\xdd\x63\x80\x79\xd7\x6d\x80\xf9\xaa\x61\x80\xf9\xea\xe7\x33\xc0\xbc\x74\xee\x95\x97\x3f\x87\x01\xe6\x87\x9f\xc9\x00\xf3\xf4\x57\x03\xcc\xbf\x83\x01\xe6\x9b\xf4\x76\x83\xbf\x4c\xa7\x11\x2f\x97\x11\x06\x67\x49\xc1\xb6\xd1\xf3\x0b\xf1\x2f\x38\x3f\x46\x58\x39\x39\x46\x33\xfc\x6d\x9a\xb0\x26\xd2\x44\x37\xf4\x84\x7e\x90\x35\x1f\xd4\xcd\x07\xab\xe6\x83\xa2\xf9\x60\xde\x7c\xb0\x68\x3e\xc8\x9b\x0f\xb6\x41\x50\x5c\x36\x7e\x5f\x35\x7e\xbf\xfd\xb7\x31\x0b\xbd\xd2\x66\x21\x66\xcc\x42\xe9\xf3\x84\x21\x2f\x2d\x9b\xe6\xbe\x68\xeb\xca\xf9\x0c\x7e\x26\xf2\x32\x61\x08\xbf\x4f\xbe\x4a\x68\xaa\xb8\x29\x78\x28\x06\x82\x70\x74\xf1\xd6\x88\x19\xe7\xf8\xab\x84\x22\x55\x16\xe1\xe8\xca\xbe\x3a\x6b\xbc\x82\x6d\x7e\xda\x78\x28\x77\xfd\x75\xe3\xa9\x3a\x04\x2f\x1a\x8f\xd5\x99\x78\xd3\x78\xac\x8e\x08\x3e\x69\x3c\x77\x7c\xa0\x23\xfc\xb1\xf1\x92\xd6\x6f\x96\x84\x45\xf8\xb8\xd9\xb5\x1b\xc8\x19\xe1\x0f\xea\xf5\x0f\xea\xf5\xb2\x22\x57\xb4\x5c\xd5\xdf\x92\x8a\xd3\x79\x56\xd8\xcf\xd5\xc4\xa5\x59\xf2\xcb\xb2\xa2\x3f\x94\x8c\xf7\x95\x0d\x39\xbc\x37\xcb\x9c\xae\x68\x1e\xe9\x8c\x3b\x2b\x9a\xbf\x2c\x2b\x78\xe3\x0c\xee\xd4\xc5\xac\xa0\xbe\xaa\xfa\x55\xde\x05\xaf\xd1\x82\xb1\xa0\x63\xd1\x97\xdb\xae\xfe\x96\xe7\x5a\x4d\x85\xbf\x71\xde\x9a\x4c\x44\xb7\xe5\x92\xb0\x09\x1d\x8b\x7f\x30\x58\x0f\x26\x54\x5a\x11\xb0\x54\x90\x4f\xa8\xd2\x94\x63\x1b\xbe\x35\xa1\x4e\x2c\xd7\x06\xe9\x71\x97\xec\x15\xa3\x3c\x8e\xbd\x9f\x09\x1d\x2f\x57\x67\x05\x9d\x1f\xbf\x7d\x65\x4a\x56\x0a\x41\xfc\xf8\xed\x2b\x53\xdc\x79\xd6\xa8\xa3\x8d\x92\xff\x48\x98\xce\x2c\x7b\x11\x58\xa1\x70\xb8\x81\xb5\x00\xb4\xeb\xac\xd7\x51\xb6\xe2\x65\x64\xf4\x8f\x57\xad\x2d\xb2\xad\xd1\x66\x8d\x56\x93\xce\x3e\xd9\xde\x9a\x53\x58\xd9\x2e\x4e\xcf\x65\x3e\x25\xf5\xf4\x55\x9e\x38\x31\x17\x66\x69\x83\x21\x09\xdc\xc9\xd8\x22\x5b\x37\xf6\xac\xd1\xe1\xc0\xed\xbb\xb5\x59\x46\x69\xfa\x8d\xb2\x33\x85\xde\x71\x9d\xbd\xa4\x23\xbd\x95\x17\x05\x2e\xa4\x7a\xb3\x9a\x63\x79\x86\xe3\x38\x21\xea\xcf\x14\xec\xce\x81\x6d\xd1\x7e\x96\x38\x0d\xd9\x30\xd3\xd6\x00\x53\x8e\x6d\xcc\x86\xa9\xd0\x31\xf9\xb7\x1a\xc9\x44\x1a\x14\xc5\x29\xc2\x72\x60\x13\x65\x71\x15\x7f\x63\x3d\x75\xf2\xa1\xfe\x85\xd5\x17\xab\xba\xea\x17\xe4\xe8\xc2\xce\x66\xed\xcf\x99\xfa\x2c\x79\xe9\x26\x30\x05\x9a\xe9\x94\x57\x32\x88\xa6\xe7\xae\xcd\xd0\x9b\xae\xe0\x63\xf0\xd3\xb5\x1b\xa6\x04\xf2\xd9\x61\xfb\xf4\x6c\xcb\xf0\xc4\xae\x9a\xdd\x39\x8d\x17\x72\x7a\x5c\x3b\x5b\xc9\xe4\x02\x8f\x0e\x3d\x53\xbf\x7c\x9c\xf8\xd5\x31\x41\xda\x92\xac\x37\xc3\xc1\xdd\xbe\xcf\x6f\xcf\xb1\xbe\x00\x09\x0b\x24\x9c\x56\x57\x6f\xf3\x8b\xe3\x78\xd4\xf1\xc9\xaa\xe7\xf6\x0e\x1e\x25\xee\xd7\x3d\x13\xfd\x05\xbe\x1a\x9e\x87\x3e\xbb\x3d\xe7\xb2\x94\xb9\xa8\x65\x33\xe6\x72\x06\x4e\x56\x9b\xd1\x97\xf2\xa5\xb8\x89\x55\x18\x9e\xb8\x4e\xe5\x9f\x70\xe3\xca\x3f\xe5\x2d\xab\xb3\x10\xcb\x41\x74\x5c\x86\xa9\xf7\xb6\x7d\x01\x7a\x8d\x98\x93\xfb\xa3\x16\x0b\x73\x84\xb4\x4b\xf7\x3d\x00\x89\xec\x8a\x74\x80\x11\x55\x71\x5c\x8d\x79\x76\xf6\x8a\xe5\xe4\xe3\x93\xfd\x43\xf1\x53\x59\x5f\x37\x4e\x94\xb5\xb8\xdb\x3a\x0f\x45\x73\xd9\xa5\xe5\x5f\x5b\xd9\xe5\xb9\x17\xa7\xca\x45\x2b\xa9\xfa\xa2\xa5\xb5\x0d\xbc\xd9\xb0\x26\xda\xbd\xd1\x71\x0e\xb3\x80\x30\xff\x2c\x93\x46\x17\x09\x89\x63\xae\x3e\xbf\xcd\xe4\xa4\x1d\xcf\xd7\xeb\xde\x91\xbb\x21\x7d\x0a\x68\x5e\xee\xd0\xd6\x46\xc3\x2a\xa5\x57\xf3\x62\xc5\xe5\xb6\x2d\x8a\xb3\xb4\x77\x8b\xe3\xda\x09\xd0\x5b\xa5\x0d\x00\x10\x5c\xa4\x46\x8a\x5d\xc5\xf1\x0a\xcf\xd3\x7a\x7c\x99\xf1\xf9\xc5\x7b\x39\x3d\xdf\x41\xcc\xde\xc2\x96\x9a\xc7\xf1\x1c\xe7\xa9\x43\x06\x8c\x52\xdf\x72\x03\x36\xf1\x51\xc2\xb1\xc2\x89\x69\xcf\x1e\xbe\x6d\x4f\xc4\x84\xe1\xe6\x1c\x4c\x28\xee\xfe\xfc\x49\x89\xbb\xbe\x7c\x92\x61\xef\x5b\x27\x05\x6e\x7d\xd9\x64\x81\xf5\xee\x82\x6d\xbd\x41\x1e\x8b\x00\xca\x2c\x07\xe6\x41\x7c\x4c\xee\x02\x7e\x34\x0a\x84\x48\xaf\x55\x48\xdf\x1a\x2a\x37\xa9\x42\x7b\xe0\xca\x79\xdd\xde\x08\x56\x46\x98\x28\xf9\x4e\xc2\xc7\x27\xb7\x1b\x39\xc1\x4e\x09\xb4\x11\x5b\xba\x1a\x43\xec\x66\x1c\xdb\xa8\x4a\xf5\x48\x10\x53\xd0\xf5\x0a\xa2\x6a\x23\x29\x9d\xb7\x38\x5a\x7e\x8c\x90\xd6\x40\x38\x35\x05\xf5\x3d\x4a\x98\xa4\xc2\xed\xaa\x10\xf6\x09\x75\x31\x53\xf4\x59\xd1\xd0\x56\x4b\xf0\x36\x8e\x13\xef\xb7\x56\x7d\x68\xc5\x48\xa0\xbc\x6e\xb7\xdd\xb9\x0c\x35\xd5\xbd\xc3\x08\x7d\x4d\x8a\xd3\x1a\x5c\x18\x52\xdf\x0d\x57\x47\xbb\x35\x19\xae\xda\x35\x0f\xf2\x96\x81\x06\xd4\x85\xd3\x6e\x41\x85\xb9\x7a\x4d\xe8\x9b\x92\x97\x4b\x83\xaf\x33\x9d\x19\xc7\xc9\x72\x48\xd9\x50\xd5\x47\xcd\x4e\xa7\xe5\x2c\x8e\x93\x88\xad\x04\x1b\x6a\x15\xcb\xf6\xed\x11\x95\x60\x55\x91\x1b\x8a\xea\x06\xc7\xda\xa2\x6a\x54\x93\xdd\x6b\x20\xa4\xd2\xc1\x1e\x6b\xec\xb6\x44\x07\x07\x53\x89\x82\x01\x51\xaf\x1b\xfd\x29\x99\xfb\x29\x5f\xda\x44\x48\x99\x60\x7f\x98\xbb\x5d\xb1\xf7\x6b\x9a\xcd\xcc\x07\x67\x33\xff\x40\x5a\x3e\x81\xd9\xbf\x71\x93\x67\xb0\x7f\x5b\xd6\x01\xf6\x3a\xb6\x0c\x84\xdc\x1f\xd8\xe1\x23\xd4\xbe\xc2\x0e\x3f\xa1\x36\x07\x76\xf9\x0a\xbd\xde\xad\x43\x97\xfa\xdf\xb4\x8d\xb5\x08\x92\x80\x7e\x6e\x25\x40\x16\x98\xf5\x22\x69\xca\x4c\x9d\xd1\xf6\x3f\x2e\x48\x1c\xac\x1b\x10\x6f\x0e\xfe\x79\xce\xbb\x38\x0e\x19\x55\x5e\x66\x35\x7f\x5a\x96\xdc\xda\xcf\xa6\x41\xf1\x3e\x9a\xc5\x71\xe7\x2b\x5f\x46\x0c\xab\x07\xae\xcb\xea\xf2\xa2\x2c\x48\x04\x92\x08\xf3\xa2\xa4\xcf\xd3\xa7\x49\x72\x93\xbe\xf5\xdd\x50\xac\xc0\x3b\x65\x9f\x30\x40\x5a\xf0\xac\x9b\x0d\xc2\x67\xe9\xd3\xe4\xc6\xed\xd0\xd1\x39\x7d\xd2\x88\x6c\xdd\xe1\x69\xb3\x43\xd0\x64\x89\xc3\x7e\xcf\xae\xa0\x61\x84\xaf\x9b\xed\x4a\x65\xd8\x34\xfb\xb1\x0d\xbf\x68\x36\xac\xf4\x69\xd3\xfa\xc7\xb6\xfc\xa6\xd9\xb2\x52\xc9\x4d\x57\x3f\xb6\xe5\x93\x66\xcb\x5a\xab\x37\x2d\x7e\x6c\xd3\x1f\x9b\x4d\x7b\x8a\xc1\xe9\xfc\xd3\x6d\x99\xdb\x8d\xd8\x2f\xc7\xcd\xfe\xb4\xae\x71\xba\xf8\xe4\x78\x01\x00\x76\x2b\xcb\x15\x37\xa2\x17\xa9\x91\x11\xc3\xf8\xd0\xda\x05\xbe\x6a\x73\x9a\x7f\xc2\xd1\x04\xbc\xc1\x1b\x90\x78\x1d\x2f\xc4\x48\x9b\xcb\x23\x27\x6b\x87\x30\xea\x76\x35\x84\x6f\x5c\xf5\x47\xa3\x65\x25\xc8\xef\x12\x27\x1d\xa8\xd7\xdf\xb6\x16\xfe\xa6\x97\x77\x6c\x5c\x55\xec\x6f\xdd\x95\x03\xa7\x57\x77\xec\xa1\x72\x83\xca\xbd\x5e\x6e\x5c\xff\xa5\x6f\xb7\xfa\x2f\x85\xf3\xe8\x6d\x4d\x80\xf4\xb3\x27\xc2\xfb\xe7\x9f\x7f\xf7\xf0\xe3\x0f\x8b\x67\xe1\x44\x78\x46\xe5\xee\xfc\xf5\x27\xd5\x89\x42\xfa\x88\xfe\xd4\x38\x3c\xd1\x9f\x9c\x5b\x27\xfa\xd3\x85\xfb\x23\xa7\x55\x84\xa3\x38\xe3\xbc\x82\xaa\xd6\xc9\xcb\x26\xda\xc3\xd1\x9f\xca\x2b\x52\x15\xd9\x0d\x54\xe7\x97\xc5\xfb\xec\xbc\x2f\xfd\xde\x43\xfc\x5f\x90\x80\x0f\x28\xc9\xf6\xf4\x7b\x7f\xc0\x51\x4e\xaf\x22\xcc\xab\x15\x99\xe1\xe9\xe1\x81\xd8\xc4\xf2\x53\x7a\x8d\x00\xfa\xb6\xdf\x2f\x2b\x7a\x4e\x99\x68\xea\x8f\x4e\x2e\x3e\xec\x8d\xe8\x77\x78\xda\x39\x12\xb7\xdc\xe1\x61\x4f\x41\x18\xb2\xfc\xbf\xfb\x0c\x5c\xcf\xa2\x1a\xe8\x7f\xed\x90\x3f\x12\x3e\xa2\x20\x1c\x46\xf7\x47\x1c\x39\x5e\x76\xf2\xc1\x3e\xd1\xfb\x40\xfe\x2e\x2b\xfd\x21\x5f\x88\x0f\x91\x23\x9c\xe9\x64\x94\xea\x9f\xe9\x34\x52\x58\xb7\x62\x2c\xdb\xeb\xed\x3a\x21\xbf\xc7\xa2\x05\xd9\xc0\x74\x7a\xf8\x05\x8e\x68\x1e\xc1\xb3\x03\x3c\x75\x51\xca\x21\x77\xa6\x78\xaf\xe6\x6b\xfa\x85\xd8\x31\x7d\xab\x3d\xec\xdd\x0a\xfb\xb2\x97\xdf\xcb\xa1\xef\x54\xf6\x3f\x55\x59\x3b\xbe\x06\x64\x0e\x24\xfb\xfc\x63\x73\x0b\x6d\x6d\x9d\xb2\xfd\x25\x9c\x3b\x35\x79\xa6\x8b\x87\xb0\xb1\xf4\x87\x2b\xb1\x49\xf7\x2d\x7f\x9a\xb7\x70\x2c\xc5\xbb\x3f\xc8\xdd\x38\x3d\x7c\x88\xc5\x96\x79\x28\x5e\xe5\xfb\x14\x52\xd6\xab\x61\x41\x75\xc0\xc4\x91\xad\x87\xca\x88\xd9\x35\x56\x0a\x97\xc6\x76\x57\x31\xcd\xb6\x00\x55\xfa\xeb\x58\x70\x1b\x53\xee\x9a\x16\xc5\x7e\xae\x15\xfb\xa6\x64\x27\x62\xcb\xb6\x8a\x0e\xb4\xcd\xae\x7d\x44\x6a\xea\xa7\x33\x58\xc4\xc0\x3e\xfe\xfb\xdf\xd9\x70\xe8\x6e\xe6\xc3\xdf\xe1\xc3\x03\x73\x44\xed\x9b\x40\x8e\xcf\xee\x73\xfc\x85\x93\x08\x76\x5b\x52\x51\x41\x86\x98\x77\x9e\xd5\xb9\x69\x5b\x5c\xe5\xb7\x44\xe7\x60\x67\x8d\x18\xf9\xc8\x4f\xe8\x19\xe0\xcc\xcd\xf0\x34\xfa\x5f\xf3\x55\x55\x97\xd5\xe4\xe0\x7f\x45\xba\xf3\x5f\x49\xde\x67\x25\x79\x87\xbf\x92\xbc\x5f\x49\xde\xaf\x24\x0f\x5e\x1e\xf6\x90\xbc\x8e\xe7\xb2\x35\x39\x86\x2d\x24\x62\x67\x2e\xf2\x70\xcb\x49\xdc\x95\xcb\x84\x9d\x7d\x51\x16\xb9\x58\x25\x59\x4f\x6d\xe4\x28\xa7\xf5\xb2\xc8\x6e\x26\x43\x56\x32\xf2\x68\x37\x1a\xb7\x63\x3e\xe8\x1f\x2b\xd2\xec\x96\x24\xfa\x1e\xed\x07\x80\x97\x7e\x76\x91\xe9\xfa\xdd\x7f\x9d\xbf\xfb\xf6\xfd\x7f\x6e\x13\x99\x5a\x82\x52\xb7\x5c\xd4\x12\xa1\x5c\xc1\x48\x4b\x4b\xae\x84\xd4\x27\x16\xdd\xeb\x32\xfb\xaf\xfb\xdd\x65\x81\x6a\xdb\x25\xb0\xf6\x25\xb6\xfd\x92\xb2\x1b\xc1\xbb\x31\xfe\xb3\xef\xc6\x50\x75\x02\x37\x46\xe8\xda\x51\x13\xc6\xe6\x19\x48\xe8\x5b\x9a\x94\x47\xdd\x11\xf3\x66\xe1\xb6\x1f\xde\xbb\xed\x87\x81\xb6\xf5\x4d\xf7\x85\x77\xd3\x55\x25\xd0\x07\x89\x19\x10\xa9\x87\x3c\x3b\xa3\x2c\x27\x1f\xd5\x8c\xad\x58\x41\x60\x8a\xd5\x2d\x6e\xbd\x9a\xc4\xfc\x1d\xd8\x45\x97\xb7\xa3\xb5\x6c\xab\x55\xd1\xd5\xb4\x3d\x1b\xaa\x99\x55\x31\x43\x31\x69\x7c\x76\xe1\x38\x2c\x4f\xe1\x36\xeb\xb7\x45\x3e\x2e\x33\x96\x93\xe6\x30\xac\xb4\xef\x95\xb6\xae\x5a\xfe\x2a\xb4\x3e\x58\x90\x6d\xf7\x9b\x1f\xe2\x3f\xf4\xde\x72\xc1\xa8\x3e\x73\x35\x82\xea\xc9\x41\xdf\x30\xd7\x40\x33\x6a\xb4\x51\x43\x45\x8e\xfb\xa5\x65\xdc\x67\xa3\xe4\x07\x72\x13\x6a\x59\x47\x6e\x36\x4a\xbb\x69\x4d\xfc\x0a\x4e\xec\x65\xa8\x0e\x00\xe9\x05\x6a\xbc\x60\xf9\xce\xf7\xbb\xba\xd9\xff\xe8\x5c\xec\x3f\xe2\x4a\xff\x9c\x97\x97\xda\xbd\x9f\xeb\xf2\xfa\x45\x5d\x5a\xff\xfd\xfc\xaf\xf3\xfc\xc1\x25\x0b\x5f\x5a\xd9\x92\xfa\x17\x8c\x55\xd1\x79\x09\x78\xc4\x03\x0f\x59\x5f\x3c\x50\xa7\xf9\x99\x13\x91\xf9\x27\x35\xb5\xcf\x1c\x64\xc4\xf6\x45\x75\x4d\xc1\x40\x02\x47\xf5\x22\xab\x2f\xa4\xf8\x28\xee\x1b\x43\x0e\xac\x85\xc0\x71\xc3\x74\x18\xed\xf7\xfa\x5a\x88\x9e\x29\xe5\xea\xcc\x1e\x5a\xc7\x29\xd1\xa3\x5b\xa1\xf7\x86\xa0\x04\xdf\xba\xb4\x23\xf4\x5e\x0f\xc8\x92\xfa\xc6\xbd\x6b\x2e\xcc\x3f\xc8\x0b\xab\xe3\x76\x73\xef\x5c\x87\x05\x70\x79\x85\x26\xab\x60\x99\x0a\x7d\x39\x57\x24\xcb\x4b\x56\xb8\xe4\xcb\x8e\x75\xe6\xdf\x53\x81\xb2\xb6\xb3\xed\x65\xfd\xc1\x6c\x2f\x7f\xd5\x6e\x7b\xb6\x7d\xce\x7e\x1f\x9c\xb3\xb9\x59\xf0\x3b\xcf\x59\x73\x0b\x37\xf7\xb8\xcb\xa8\x79\x8e\xc5\x3b\x05\xa4\xf8\x56\xb4\x5f\xf8\xaa\xfc\xa7\xc3\x65\x60\x7f\xda\x95\x34\x2e\x2f\xa9\x7b\xac\x6c\x67\x59\x77\x4a\xb7\x97\x16\x53\xbe\xbd\x14\x2c\xc9\x0e\x53\x23\x43\x86\xb6\x96\x93\x4b\xba\xc3\xb2\x90\x1d\x1b\xf4\xb6\x84\xb3\xf7\xbb\xd9\x65\x57\x67\xd6\xbd\xaa\x5d\x0a\x23\x57\x46\x85\xab\xd3\x57\x07\x75\x78\x3d\x00\x27\xf4\x50\x49\x96\x87\xbf\x13\x7c\xa6\x61\xd5\x67\xf7\x94\x96\x0d\x47\xd0\x6c\xac\x5f\x6a\xfd\x39\x38\x82\x0e\x4e\x60\xd0\xcb\x09\x74\x03\x0d\x7c\xb6\xeb\xbf\x91\xed\x2f\x90\xd6\xb0\x1b\xbb\x19\x57\x69\x94\x9d\xd5\x65\xb1\xe2\x04\x60\xe2\xc6\x4b\xe3\xda\x93\x3e\x48\xb2\x15\x2f\xd7\x32\x25\x05\x7a\x20\xe3\x8a\xe9\x47\xf0\xae\x71\x4a\xa2\x66\x8e\x89\xb3\x32\xbf\x19\xd8\x14\x89\xe4\x11\x35\x59\x0b\x95\x3c\xfc\x08\xd1\x45\xd2\x3d\x2e\x8a\x70\x32\xaa\xd6\x6b\xd8\x40\x74\x0e\xe8\x68\xb6\xbb\x38\x66\x63\x4e\x6a\x9e\xf0\x71\x79\x45\xaa\x45\x51\x5e\xef\xd9\x3f\xbf\x77\xfe\xfe\x1b\xd2\x63\x33\x01\x61\xde\x20\x37\x0e\xf3\x44\xac\x23\xa9\x3a\x55\xc6\xef\xc9\x79\xf5\x9d\x32\xfb\xe5\x0d\x17\xed\x41\x23\xc6\xdb\x80\x20\xd8\x69\x60\x21\x87\xab\x32\x65\x6d\xa7\xaa\x2c\x65\x01\x27\xd8\x3a\x65\x7d\x7e\xb8\x2b\xe7\x75\xcb\x09\xb7\xd0\x53\xbd\xcc\xce\xc9\xdf\xde\x2c\x16\x35\xe1\x78\xee\x3e\xfc\x5e\x3d\x5c\xa4\xb0\xa1\x9e\x96\x2b\x96\x53\x76\xfe\xac\xa0\x84\xf1\x77\x32\x5d\x57\x9e\x2e\xa4\xd7\xda\x45\xba\x00\x77\xb6\x65\xba\x50\x1e\x6a\x97\xe9\x42\xfb\xa5\x5d\xa5\xbc\xb3\x85\x9b\xf4\x4a\x17\x3b\x4f\xaf\x54\xdd\xb3\xb4\x89\x09\x24\x6a\xc0\x47\xaf\xd7\x6a\x88\x94\x31\x3d\x0f\xa7\xe9\xed\x06\x5f\xa7\x95\x93\x07\x13\xbf\xe8\xdc\x4a\xd7\xc8\x6c\x9c\x47\x51\x45\x0a\xc8\x5c\x04\xa9\x4a\xe2\xd8\xee\x7c\xf5\x5b\xe7\xeb\xbc\xee\xca\xc6\x79\x9d\x5e\xdf\xb9\x5b\x38\x36\xa6\xe7\x34\x4d\x5f\xac\xd7\xde\x99\x7b\x21\x8f\xe9\x9b\xf4\xba\x6b\xde\x06\xf9\x7e\xfa\x46\x4d\xbd\xf8\x8b\x97\x4b\xd8\x70\x27\xe9\xf5\xb8\x84\x75\x93\x47\x7f\x70\x12\xc7\x49\xbe\x9f\x9e\xa8\x34\x34\x5f\xa9\x1a\xfa\xf7\xfb\x72\x89\x36\xe7\x69\x76\xb4\x9c\x9c\x43\x76\x90\x53\xe5\x68\x78\x2e\xfd\xc3\x3f\xa6\xf9\x5e\x01\xe3\x85\x70\xaa\x34\x4d\xa9\x0a\xad\xda\x87\x1b\x55\x3c\x90\x83\x3d\x4e\x5f\x67\xfc\x62\x7c\x49\x59\x72\x86\xf3\xbd\x73\xb4\x2f\x7f\x67\x1f\x93\x03\x9c\x23\xfc\xc1\x7f\xbf\xf4\xdf\xef\x2d\xf7\xcf\xd1\x80\xa6\xe7\x4f\x8e\xe3\xf8\xc3\x93\xe3\x23\x75\x13\x4f\xce\x9f\x7c\x88\xe3\xe3\x27\x1f\x8e\xe4\x0d\x3e\xa9\xd7\x6b\xf9\x97\x0c\xf0\xd7\x23\xdb\x97\xc5\xed\x70\xde\x6e\x19\xce\xbb\x1d\x87\xf3\x2e\x8e\xdf\x3e\x79\xa7\x7b\x3f\x7f\xf2\x36\x8e\xdf\x3d\x79\x6b\x86\x27\x86\x23\xff\xdc\x44\x76\x08\x47\xa7\xca\x83\xf3\x6c\x3f\xf9\xb8\xb7\x44\x93\x53\xe5\x9d\x3c\x27\x8c\x83\xa3\x6c\x4a\x8f\x3e\xee\x25\xa2\x97\x07\x5f\x4c\x3e\xc2\x54\xbf\x4f\x2f\x5a\x1b\xa3\x6b\x33\x79\xc7\x03\xa9\x70\x7c\xb8\x18\x20\xcf\x60\x12\x59\xaf\x95\xf5\x3a\x79\xbf\x97\xce\x11\x8e\xb2\xb3\x52\xb6\x5a\xa2\x53\xf0\x40\x7d\xbf\x7f\x33\x30\xb3\x78\x46\x8a\xf2\xda\x7b\xbb\x77\x09\x6f\x6f\x65\xb2\xfe\xf7\x7b\x97\x7b\x37\x8f\xe7\x7b\xee\xf1\xfb\x52\x1e\xdc\xd7\xe9\xc5\x93\x9b\x41\x99\x3e\x5b\xaf\x5f\x1f\xd9\x86\x56\x71\x3c\x7a\x16\xc7\xaf\x8f\x54\xcf\x13\x3b\x02\xf1\xea\x75\x1c\x3f\xd3\xa5\x27\xab\xf5\x3a\xb1\xbf\x54\x41\x34\x51\x0f\xb0\x1e\x91\x3b\xcc\xa3\xcb\xc9\xfe\x8d\x4e\xab\x13\x72\xdc\xa7\x6d\xc7\xfd\x12\x83\xb2\x7c\x72\xba\xd9\x0c\x7a\x69\x38\x97\x60\xfc\x01\xf2\x0d\xa4\x1b\xa8\x74\x80\x78\x67\x21\xe2\x5d\xa7\xa1\xd1\x29\x21\xa1\x35\x44\xfd\xc9\x72\xa0\xb7\x9b\x8d\x77\xfa\x4a\x39\x80\x55\x37\x4d\x1e\xd0\x6e\x6a\x3b\x90\x19\x8b\xda\x94\x7f\xaf\x45\x54\x07\xa1\xa0\x90\x74\x05\xfb\x78\x8f\x4a\x22\xf1\xa4\x30\xe7\xa0\x79\x26\xed\x46\x57\x23\x9e\x77\x8f\x58\x11\xfd\x45\xf7\xb8\x65\x89\x41\x2d\x7d\xb0\xd3\x5b\xc8\x8e\x94\xcc\xf7\x17\xe8\xc1\x17\x9b\x2e\x42\xa0\x3a\xce\x7b\xae\xaf\x8b\x9e\xa9\x0a\x7e\x7f\x2e\xcf\xf5\x93\x0b\x39\xa2\xd0\xe7\x5b\x32\x50\xc6\x71\x12\x6c\x45\x15\xd1\x8e\xe4\xf6\x58\x64\x47\x49\x3b\xe2\x26\xcd\x30\x15\x54\xb7\xfb\x0e\x35\xf3\xc2\xcb\xe5\x64\x9f\xaa\xfb\x74\x83\x26\x81\xc6\xcc\xf6\xf2\x0e\x40\x93\xbf\xa9\x06\x2d\xc4\x22\x00\xba\x32\x4e\x8b\xa5\xef\x8a\x78\x54\x41\x89\x03\x5c\xa2\x09\x37\x85\x37\x0e\x9f\xcc\xb6\x6a\xcc\x24\x9f\x2c\xaf\xa5\xfd\x0b\x52\x2c\x25\xbe\xda\x67\xe7\x91\x65\xc6\xc5\x00\x8f\x4c\x74\xf6\x45\xcd\xd2\x09\x1e\xf7\xe8\x60\xc2\x31\xd5\xef\xbe\xc7\xa5\x7d\x47\x8f\x0e\x26\x14\x67\xfa\xdd\x6b\xc1\x0f\xd4\xf6\x75\x76\x74\x30\xc9\xc4\x61\x96\xc9\xc4\x6e\xbf\x48\xd3\xb4\x8e\xe3\x84\xfd\xef\xf4\x21\x2e\xff\x77\xfa\x50\x1e\xcf\x55\x5a\x89\x83\xea\xc4\x40\x89\x12\x2b\x51\x62\x65\xa8\x9d\x1c\xd8\x84\x61\x39\x8a\x49\xb9\xd9\xb8\x9f\xf4\x15\x65\x44\xd2\xe6\xb4\x92\xcf\x1b\xc9\x27\x1b\x50\x54\x26\xf1\x48\x7a\xeb\xa7\x91\x9c\x1c\x60\x3f\x39\xa4\x7e\xf0\x7d\xb3\xc4\xf7\xb6\xc4\x06\x38\xfd\x47\x4e\x32\x1b\x08\xb4\x4c\xd3\x94\x3c\x42\xb7\x55\x4a\x14\xef\x01\x74\x66\x9f\xb8\xdc\x1d\x66\xe6\xad\x1c\xbf\x79\xad\xae\x9a\x66\x9e\xcb\xbd\x74\x9f\xb8\xac\x4d\x33\x99\xe5\x5e\x5a\x05\x0b\x7c\x1f\x68\xe0\x7d\xb9\xc4\xcd\xac\x94\x7b\x29\x73\xdf\xab\x8c\xeb\xa1\x2c\xf0\x40\x71\xce\x2a\x92\x7d\x18\x90\xb4\xd4\xb1\xf2\x14\x04\x8a\x46\x92\xca\x3e\xa1\x00\x97\xe6\xed\x90\x24\x0d\x2c\x9b\x26\x84\xf9\x93\xdf\x39\x98\x2f\x16\xae\xfc\x77\xb3\x23\xf7\xc7\x64\x3a\xc3\x59\x7a\xab\x2c\x7b\x13\x86\xed\x74\x4c\x0e\xb0\xf9\xb6\xc9\xc1\x06\x24\x0a\x77\x71\x98\xb7\x38\x2b\xf3\x56\x2d\x0e\xf3\x17\xa7\x68\x6d\x9f\x7d\xe6\xce\x7d\x63\x2b\xd5\x81\xb7\xdf\xb7\xab\x8a\x65\x69\x6c\xb1\x95\xfb\x72\x63\xc5\x96\x16\x9f\xc4\xd0\x20\xba\xa0\x79\x4e\x98\x60\xe2\xe7\x56\x0c\x8c\xe3\x24\x73\x3a\x4f\xdd\x91\xec\x71\xcc\x9f\x14\xcd\x4c\xa9\x7c\x3f\x6d\x3e\x9b\xf0\xc7\x45\x33\x17\xab\x53\xcc\x7c\x0a\x4f\x0f\x3a\xc6\xf1\xbd\x33\x8e\xf7\x10\x13\x64\xfe\xde\xab\x70\xa5\x47\x61\xbe\xfc\xa8\x32\xcd\xdb\xd9\xa8\xf4\x28\x6c\x6e\x56\xa7\x98\x19\x45\x25\x46\x21\x36\xeb\x28\x4d\x69\x1c\x27\x7c\xbd\xae\x8c\x34\xac\xb6\x9a\x2b\xca\x50\x89\x71\x34\xcf\x78\x32\xcd\x66\xc8\x84\x3d\x79\x4f\x37\x66\x0b\xe3\x2c\x3d\x78\x94\x3d\x2e\x35\x08\x5c\xb6\xb7\x87\x12\x9a\x96\xa2\xd4\x58\xed\x3d\x77\xc6\xa9\x7f\x2a\xfd\x12\x62\x2e\xa8\xbb\xc4\x64\xfc\xd5\xab\xaf\x5f\x9c\x9c\xbe\x7d\xf1\xee\xf4\xed\xf1\x9f\x5f\xa4\x64\xfc\xfc\xcd\xeb\xd3\xe7\x2f\xbe\x7a\x7f\xdc\x7e\x20\xca\xfa\x25\x5e\xfd\xed\xc5\x57\x5a\x30\x6f\xbf\xf0\x9f\x41\xed\xc3\x41\xab\x87\x2f\x06\xad\x51\x3c\x54\x52\xbe\x6a\xd9\x4b\x4a\xe5\x42\x7f\xf1\x56\x5c\xb1\x42\x90\x96\x5f\x9d\x44\x74\x51\x65\x97\x04\x50\x73\xea\x6a\x9e\x46\xff\x11\x61\xa2\x62\xf6\x96\xe6\xea\x36\x22\xa2\x79\x77\x45\x6b\x7a\x46\x0b\xca\x6f\x52\xbd\xbf\xcc\x3b\x15\x45\x78\xb0\xfc\x68\x9f\xe9\xc0\x40\xef\xe1\x59\x59\xe5\xa4\x4a\x65\xc2\xae\x06\x1a\xaf\x9b\xa9\x5e\x81\xec\x08\x02\xae\x74\xeb\xdf\xc9\x63\xa7\xab\x0c\x2a\x19\x84\x8d\xb0\x44\x63\x24\x49\xf4\x78\x94\x97\x73\x7e\xb3\x24\xc3\x0b\x7e\x59\x3c\x79\xac\xfe\x4b\xb2\xfc\xc9\xe3\x07\xf2\x1f\xd1\xcf\x93\xc7\xf5\x32\x63\x4f\xfe\xf6\xf8\x01\xfc\xfb\xf8\x81\x7c\xf8\x00\x8a\x47\xa2\x3d\x19\xeb\xad\x83\x96\x2b\xa9\x51\x12\xe7\x76\x41\xab\x5a\x2b\x91\x60\x9c\x4a\xfe\x55\x34\xc9\xff\x1c\x37\x55\x3e\x31\x29\x39\xf9\xa6\xcd\x9c\xc8\x1c\xd4\x35\xe1\xfb\x57\x59\x41\x73\x50\x46\xd7\x0f\x14\x5b\xf2\xc0\xbc\xf5\xd1\x47\x1b\x55\x03\xc5\xfb\x13\x80\x39\xfb\xc7\x85\x14\x6c\x80\xb7\xcb\x64\xf6\xb4\x96\x99\x2b\x88\x3d\xc3\x1b\xb8\x68\xdb\x88\x4f\x81\x18\x38\x89\xe2\xb9\x5e\x8f\x92\x06\x92\xe8\x90\x6a\xa0\x34\x00\xee\x97\x4d\xab\x75\x9f\xce\x30\x40\x43\xd0\x74\x74\x68\x18\x1f\x80\x0d\x34\x11\x96\xb8\x4e\xc9\xb4\xd1\xe4\x2c\x41\x8f\x46\x09\x4b\x93\x2c\xad\xc7\x8c\x7c\xe4\x09\x42\xe3\xbc\x64\x04\x41\xac\x2d\x44\x7b\x66\x12\xa0\x0c\xe1\x91\x20\x4b\x8a\x86\x00\x20\xd5\x23\xd1\x25\x7a\xa4\x70\x04\x57\xe8\x96\x8a\x21\x94\xe9\x6a\xb3\xa0\x2c\x2b\x8a\x9b\x5b\x31\x00\xb6\x5e\xcb\x4b\xb8\x1e\xcb\x21\xaf\xd7\xfa\xaf\x04\x99\x92\x74\x91\x50\x85\xee\x54\x6e\x4c\x42\x56\x89\x9e\x19\x98\xb8\x11\xd1\xdf\x2f\x66\xb1\x06\x08\x44\x3b\x85\x04\xb9\x48\x6c\xfa\x6c\xb4\xf0\x3c\x7d\xec\x44\x82\x14\xce\xdb\x1f\xf1\xfe\x21\x1a\x44\xb2\x38\x64\xc2\x6b\xc0\xae\x8a\xb9\x49\xbd\x27\x63\x96\x5d\xaa\xdc\x7a\xaf\xb3\x25\xd4\x59\xaf\xa3\x13\x22\xab\xeb\xd1\xc8\xdd\xb1\xa8\xca\x4b\x9d\x88\xef\x58\xf3\x02\xaa\xca\x83\xff\x9b\x1c\x4d\xbe\xa1\xeb\x57\x88\xf1\xe4\x68\xf2\xc7\xf5\xe1\xef\xd7\x0f\xbf\x40\xc9\xd1\xe4\x59\x91\x5d\x2e\x49\x8e\x8e\xa0\x91\xdf\x3c\x90\x4a\x55\x7b\x4b\xc8\x2f\x6d\xcd\x17\xba\x0d\x22\x66\xbd\x62\x70\x74\x86\x19\xe7\xe4\x72\xc9\x87\xbc\x1c\x82\xe3\xc4\x6a\xce\x57\x15\x19\xb2\x92\xed\xc3\x16\x39\x2b\x2c\x00\xd7\xf8\xef\xec\x15\x1b\x02\x41\x12\xe5\xcf\xc8\x50\x17\xc1\x50\x21\x13\x03\x1b\x4a\x3c\xc6\x5a\xc2\x90\x5d\x64\x57\x64\x98\x0d\x03\xbb\x6e\x78\x49\xf8\x45\x99\x8f\x23\xb4\x49\x1c\x70\x42\xb5\xc0\xff\x9f\xbd\x77\xff\x6e\x1b\x47\x13\x05\x7f\xf7\x5f\x21\xf1\xec\xa8\x88\x6b\x58\x91\x92\xb9\x7b\xe7\xd2\x61\x69\xf3\x70\xa6\x73\xbb\x2a\xce\xc4\xa9\xae\xd3\xab\xd6\xba\x61\x09\xb2\x30\xa6\x00\x35\x08\xc5\x71\x59\xfc\xdf\xf7\xe0\x49\x90\x84\x6c\x49\x4e\x5c\x95\x94\xce\xc9\x89\x45\x12\xf8\xf0\xfe\x5e\xf8\x1e\x86\x6b\x13\xab\x95\xf8\x11\x9b\x1d\x27\x77\xa4\x64\xfc\xcd\xd3\x81\x17\xe0\x14\xd2\x4a\xba\x98\x63\xfe\x5c\xa8\x40\xa7\x74\xc8\x47\x29\x1e\x72\x97\x22\x86\x96\x2d\x11\x29\x0a\x59\x9f\x6a\x79\xa6\x9f\x02\xc8\x52\x32\xec\x49\x86\x8c\x0c\xfb\xb6\x4e\xdc\x83\xa2\xeb\x90\x04\x88\x87\x0c\xa2\x11\xa4\x60\x97\x70\x79\x0e\x4c\x4a\xc2\x86\x00\x36\xd0\xdd\x5f\x14\x72\xea\x6a\x1c\x15\x13\xff\x52\x83\x6d\x8a\x0f\xad\x05\x91\x87\x03\xcd\x67\x3c\x39\xda\x14\xeb\x7d\x19\xfb\x06\x9e\x8a\x6e\xc6\xd8\xd5\x72\xf1\x37\xdd\x03\xc6\xbd\x11\xf1\x4d\x47\xa4\xa5\xd0\x4b\x2c\x8e\xe6\x38\xcf\xd1\x25\xce\x43\x28\x5e\x7e\xd7\xfe\x7f\x4d\xac\x1f\x00\x57\x82\xda\xa0\xf0\x35\x11\xb3\x23\xd3\xef\xbc\x19\x83\x5a\x6e\xa8\x2f\x35\x7d\x0d\x47\xec\x86\x80\xd1\x0b\x0a\x18\x3d\x5f\xc0\xe8\x8d\x12\x13\x30\xfb\xbf\xf3\x2e\xa6\x82\x13\x9c\x43\x91\xb6\xe3\x06\xb0\x7e\x10\x58\x7f\x04\x56\x2b\xff\x11\xe6\xa9\x0b\xd7\xa1\x22\xc1\xda\x30\x57\x24\x7f\xcf\x71\x2e\xf9\x25\xe4\x50\x12\x32\x42\xb3\x2e\xf1\x22\x26\x92\x6c\x75\xa7\x84\x4e\xaa\x81\x3d\x2d\x8d\x94\x62\x5a\x01\xc0\x41\x1d\xe2\x52\x1e\xfd\x3c\x8d\x7b\x90\x96\xa1\x42\xcc\xb8\xf4\x24\xc6\x4b\x60\xbf\xc0\xbc\x64\x87\x51\x9a\xc3\xbc\x38\xa8\x44\x5d\xbe\xc2\x37\x39\x64\x5e\xfc\x05\xe7\xf8\xdd\xd5\xd7\x90\xef\x39\x9e\x92\xcf\x30\x7a\xe2\x2f\xbf\xdb\x25\x92\x97\xd6\x0e\xb8\xdb\xec\x59\x6d\x8e\x75\x34\x5f\x66\x82\x2c\x32\xec\x97\x78\xe8\x09\xad\xf0\xb5\x0f\xda\x29\xc3\x11\x14\x6e\xad\x30\xe8\x72\xac\x58\x8d\xc0\x52\x45\x17\x8c\x65\x18\xa9\x54\x55\xba\x82\x0b\x36\xdb\xe9\xe0\xa2\x5c\x80\x5e\xea\x65\x99\x8f\x05\x8c\x74\x87\x22\xb0\x5a\x89\x87\xc4\x1b\xf5\x75\x5f\x16\x87\xeb\x20\xd3\x2c\xa5\x5d\x8a\xaf\x95\xaa\x5d\xa9\x7c\x59\x36\xd1\x0f\x52\x7e\x36\x93\xaa\xa4\x65\xc3\x27\xbb\xc0\xa0\x2f\x62\xdc\x9d\xa3\x45\x78\x6b\xc6\x2e\x92\x3c\x28\x80\x8e\x01\x64\x6b\x65\xa0\x8b\xe8\x4d\x2c\xd4\x86\x65\x73\x92\x97\x5c\x9f\x2e\xf2\xe1\xec\x6f\xef\xbb\x92\xc1\xc8\x40\x57\xcc\x30\x8d\xb9\x9b\x1f\x1e\x67\x60\x63\x06\xb7\x8e\xaf\x9a\xa8\xef\x93\xc5\xae\x5e\xb1\xc7\xc1\xef\x7a\xa4\x5e\x8c\x99\x32\x9a\x02\xad\x7e\xe4\xf0\xf6\x22\x43\xf4\x2a\x29\xcf\xdd\x42\x9f\x73\x68\xfe\x7a\x5f\x54\x49\xa8\x63\x55\x28\x1f\x60\xc2\xe8\x1b\xc6\x9b\x51\x2a\x76\xdc\xf2\x51\x74\x50\x59\x2a\xc7\x0e\x2e\x88\x50\x4e\xe1\x71\xe5\xfd\x04\xe5\x33\xcc\xe5\x6b\xc9\x2b\x2e\x32\x22\xe2\x27\xc3\xf3\xa3\xd1\x93\x4b\x60\x62\x9a\xb4\x22\x00\xaa\x46\x08\x01\xe5\xea\x5d\xcb\x2b\xd8\x91\x3c\xff\x9b\x2a\x57\xdd\xe9\x17\x5e\x58\x69\xf1\x9d\xa5\x2b\xf8\x22\x88\xc2\x86\x51\xbb\x57\x08\x70\x31\xbb\xfd\xc8\xb3\xaf\x91\xc0\x65\xb0\xf1\x34\x4d\x85\xc2\x75\xd1\x50\xbf\x51\xdf\x47\x8a\x87\x1f\xe0\xa4\x11\x73\x47\x56\xb5\x25\xdf\xa9\x6f\xa6\xac\xe4\x5a\x65\xd5\x18\x83\xc4\x49\x31\x2e\xf6\x2f\xf6\x1a\xd0\x7d\x1c\xa9\xa4\xdd\xab\x55\x48\x6c\x94\xf3\xcc\x32\xbc\x5a\xc5\xe6\x57\xf7\x1a\x71\x1a\x47\xef\x33\x8c\x72\xdc\x92\xbb\xe6\x9f\x3a\x76\x3c\xe2\x39\xfe\xa7\x64\xe1\xd5\xaf\x96\x6e\x36\xef\x46\x00\x56\x6a\xc6\x2a\x83\x95\x94\x17\x40\x37\x17\x68\x7c\x05\x00\x74\x1d\x7e\x87\xde\x81\x6d\x51\x57\xf9\xe6\x08\x4b\xb0\x5f\x82\x7d\xab\x70\x83\xf7\x25\x05\xf9\xc2\x14\xc7\xa3\x6c\x8e\xfb\x88\x82\x9d\xed\x72\x74\x7d\xba\x14\x8b\xa5\x90\xa4\x4f\x49\xe8\x71\x0f\x7a\x81\xcf\x24\x5b\xc1\xba\x0d\x44\x67\xc4\x44\xda\x35\x43\x74\xc2\x9e\x7d\xa1\xd0\xaf\xa4\x6c\x2a\x24\x82\x24\x6b\xaa\xf7\x30\xb3\x04\xee\xb3\x80\xe3\xf2\x9e\x23\x1b\xdc\x16\x89\xb2\x19\x18\x3b\x90\x6a\x30\xd3\xd4\xbd\x58\x93\x90\x60\x6a\xaf\xec\xa6\x31\x56\x19\x55\xc6\xee\xa4\x4c\x0a\xa7\x7e\x9c\x32\x3e\x47\xe2\x67\x0d\x29\x9e\xc2\x2a\x5d\x98\x94\x83\x4b\x50\x01\xc7\x00\x14\x12\xe6\xcc\x9b\x49\x06\xcb\x04\x00\x64\x10\x8f\x1b\x94\x65\x0c\x6b\x60\x80\x5d\xb1\x25\x94\x5d\x4d\x72\x68\x06\x92\xcc\xa0\x99\x82\x64\x5c\x80\xa4\xde\xb9\xd9\xfd\x9d\xdb\x6e\x7b\x57\x85\x83\xaf\x6f\x40\xfe\xa5\x88\xa0\x24\xd7\xcd\xba\xeb\x04\x82\x81\xff\x90\x94\x11\xfc\x2b\x93\xd9\x60\x07\x00\xc4\x5b\x4f\x27\x47\x8b\xc7\x9c\x45\xad\xc0\xb3\xb2\x47\x5d\x81\x57\xf2\xc5\x07\xb5\x37\x43\x3c\xda\x7c\x68\x1e\x87\xa6\x90\x1c\x9f\xa3\xba\xbd\xe1\x26\x58\x2f\x80\x49\x1b\x2c\xe0\xa3\x60\xc3\x07\x6f\xbd\x46\xe8\x77\x93\xb4\x49\x03\xce\x77\xbd\x56\xbb\x2d\x5c\x06\x80\x72\x17\xe6\x10\x01\x98\x69\xcc\x6b\x05\x2d\x60\xe2\x96\xb9\x85\x20\x10\xc3\x25\xa4\x76\x99\xdb\x0a\x6d\xae\x56\x4a\x0d\xe4\xd0\x35\x85\x92\x6f\xdf\x61\xd1\xeb\xbc\xdd\xc3\x16\x7b\x0b\x6c\xb4\x05\xeb\xf9\x4d\xa8\x35\xca\x9d\x83\x6b\xa4\x14\xc3\x5b\x94\x65\xec\xfa\xa5\x92\x32\xda\x7d\xa8\x26\xed\x8d\xc2\xfd\x49\xf4\xf3\xcf\x3f\xb7\x5e\x33\xd8\xfa\xfb\xdf\xff\xfe\xf7\xa8\x00\xd0\xcb\xdf\x61\x8c\x52\x50\x8a\xbb\x25\x00\x98\xa7\x58\x45\x42\xbd\xc0\x53\xc6\x25\x61\x55\x81\x9a\xf9\x4b\xfd\x38\x4e\xf3\x2e\x9a\x0a\xcc\xe1\xd4\x7c\x78\xa1\x9e\x26\x69\x6e\xe9\x29\x9c\xa5\x91\x9a\x57\x49\x58\x91\x4e\xe7\x90\xa6\xac\xcc\xed\x23\x1b\x5d\xd4\xb4\x1b\xac\x24\x82\xf1\x02\x0c\x96\x9d\x4e\xbc\xac\x15\x59\x02\x38\x49\x27\x92\xb3\x7c\x79\xf2\xe6\xf4\xc3\xc9\xa8\x25\x5b\x69\x91\xbc\xf5\xee\xf4\x63\x4b\x77\xb7\x55\x06\x6a\x04\xb2\x1f\xfa\x6d\x04\x17\x3f\xa6\x4b\x30\xa8\xee\x69\x0e\x6f\x15\xfd\x9c\x99\x48\x80\xcc\x51\xcf\x5b\x5d\x2d\x59\x3a\xca\x3a\x29\x0a\x90\x64\x9d\x4e\x9c\xd5\x3a\x95\xb9\x4e\x9d\xbe\x6b\x9d\x7e\x68\x85\xba\xc6\x68\x8b\xf1\x35\x1d\x2c\xa7\x56\x76\x32\xdb\xa2\x8f\x65\xcd\x24\xab\xf6\x73\xdc\xe9\xc4\xe3\x5a\x3f\xc7\xae\x9f\x2f\xde\x7c\x3c\xf9\x50\xed\xa0\x5a\xd0\x7a\xcf\xd4\xcb\x08\x2e\x9e\xa7\xe3\x2d\x7a\xa5\x6a\x25\xe3\x6a\x87\xda\xf1\xb4\xd3\x89\xa7\xb5\x2e\x4d\x6b\x53\x17\xe8\x98\x9e\xb9\x60\xf7\xdc\xd6\x93\x5d\x9c\x02\x50\xc7\x58\xf7\xcc\x9c\xaa\x9a\x4c\xab\xfd\xbc\x1b\x42\x44\x99\x68\xa1\x96\xc6\x68\x0e\x98\x85\xee\x03\x52\x06\x30\xde\x29\x6c\x5c\xc9\x12\x5f\x9c\xac\x8b\x5d\x9d\x4e\x9b\xe4\xef\xd0\x3b\x29\x09\x56\xc1\xd4\x0f\xf3\xd6\xd8\x18\x7f\x1e\x67\xcb\xfc\xcf\x4d\x7f\x71\x37\x23\xb9\xd0\xd9\x06\x68\xaa\x9f\x9a\x39\xc0\x3c\x43\x97\x3a\xf9\xf4\x26\x51\xd2\x4e\xe5\xd8\x52\x25\x9f\xac\x49\x3e\xd9\x6e\xe4\x53\x73\xf0\x7f\xde\xd5\x82\x34\x6d\x5b\x0e\xf5\x64\xbe\x10\x37\xb1\x9f\x38\x0b\x83\xe6\xc2\x29\xc3\x40\x32\x8d\xdb\xb4\x4a\x70\x50\x63\x1d\xed\xdc\x32\xbb\x88\xa4\xb2\x88\xa8\xbe\x88\x04\xa2\xdd\x16\x51\xc5\xf6\xdd\x9f\xba\x87\x9d\x3a\x6f\x12\xbf\xfa\xa9\x0b\xdc\x24\x6e\xc5\xee\x6e\x5a\x5a\xeb\x7f\xc7\x5b\xd4\x30\xd7\x09\x1b\x97\x37\x8a\xb9\x8d\xcb\xdb\x33\xb1\xc3\xd6\xde\x81\x06\xed\x24\x39\x06\xb8\xf5\x32\xed\xed\x43\xf7\xfe\xda\x0a\x76\x27\xbe\x56\x0b\x7c\x5b\x8d\xaf\xba\x26\x85\x8f\xdd\x89\xc5\x26\x80\xdf\xbb\xbd\xb0\x11\x70\xbe\x15\xf0\x9f\xcc\xb6\xd9\x08\x34\xdd\x0a\xf4\x3b\xb3\xc3\x36\x02\x4d\xb6\x02\xfd\xc6\x6c\xc6\x8d\x40\xb3\xad\x40\xbf\x2d\xf7\xed\x46\xd0\xd1\x56\xd0\x4f\x3e\x6f\x07\x3d\xdf\x0a\xfa\xab\x8a\xf8\xbe\x51\x03\x4b\xaf\x81\x1d\xf0\xa1\xc5\x3a\xbf\x9f\x18\x7f\x17\xbd\xfb\xe6\xa4\xf5\x65\x8e\x5f\x62\x71\x8d\x31\x35\xaa\x59\xdd\x0b\x4f\x32\xf7\xa9\x20\xf5\xa9\xa0\x5d\x09\x47\x02\xf9\xdd\x24\x90\xef\x4a\x02\x2d\xe1\xd8\x2f\xf9\xe6\x4b\x7e\x1c\xaf\x53\xcd\xe8\xcb\x2c\x79\x3e\xd5\xe3\x3b\x46\x71\xd2\xee\x17\x00\x78\x8a\x17\xc5\x1b\xb9\xcf\x69\xbb\xd7\x64\x8f\xee\xd8\x18\x76\xbd\xbe\xfa\xc6\x28\x79\x96\x6f\x94\x97\x35\x17\x40\xf4\xc0\x33\xea\xb0\xf7\x8f\x03\x9c\xde\xda\x01\x26\xb8\x48\xb0\xb7\xf2\xb8\xcb\x68\xa7\x13\x30\xbd\xec\x32\x3a\xa0\xe9\x50\xfe\x1d\x25\x35\x7b\xd8\xae\x72\x08\x8f\xa9\xaa\x2d\xe7\x3a\xc3\x02\xab\x2a\x41\xc9\xc5\x32\x31\x64\x1a\xd3\x4e\xa7\x4d\xbb\x39\x9b\xe3\xa0\x81\x46\x3e\xc4\xa3\xd5\xca\xdd\x73\xc9\xc7\x4e\x67\xa9\x73\x05\x57\x05\x9f\xa6\xfe\xb7\x5c\xc2\xa6\xe8\xd3\x9c\x94\x4c\x39\xba\x57\xc7\x9c\x0d\xb2\xc4\xc2\x51\xb7\xc3\x99\xba\x8f\x1b\xe8\x3f\x69\xa4\xcc\x18\xa2\xc4\xfc\x75\xdf\x3b\x9d\xd8\x96\xb0\x75\x01\xac\x0b\x59\x19\xb8\x7b\x63\x36\x0d\x99\x8f\x2e\xf1\xc6\x71\xca\x7d\xfb\x81\xbd\x55\xf3\xb7\x62\xd5\xcc\x4b\xab\x66\xba\xbb\x55\x33\x6d\x5a\x35\xd3\xfb\xac\x9a\x69\x69\xd5\x4c\x37\xb4\x6a\xa6\xdb\x5b\x35\x53\x50\x1d\xe9\xb7\x6e\xd5\xcc\x1f\xcd\xaa\xd9\x33\x74\x11\xda\xa6\x99\xa6\x7c\xd8\x1b\x41\x92\xf2\xd2\xa6\xb9\x45\xd5\x5d\x3b\x79\x98\x11\xf3\x7f\x62\x91\xd2\xb0\x41\x18\x09\xda\x31\x53\xdf\x2e\x8a\x6c\x87\xd3\x1a\xfe\x1c\x0f\xb2\x94\xdc\xe3\xba\x6f\x06\xd7\xed\x3d\x38\xbe\x2d\x5c\xf7\xa8\x1e\x1c\x36\x59\xa2\xf1\xdf\x20\x29\x95\xb8\x8e\xa5\x54\xe2\x3a\x32\x8d\x15\x33\x45\xf2\x57\xa5\xfb\x06\x71\xd3\x1d\xe0\x22\x49\x37\x57\x26\x48\x18\x14\x0f\xc2\x8c\x67\x5f\xcd\xc3\x63\x4b\x2f\xb7\xcd\xf0\x64\x43\xae\xa8\x2f\xe6\x1e\x53\x7e\x0b\x98\x92\xfc\x69\x30\x25\xf9\x2e\x30\x25\x79\x34\x4c\xc9\x2c\xa6\x24\x29\x0d\x78\xba\xc1\x80\x99\xd5\xc6\xe6\x7f\x64\x1a\x5b\x5b\x16\x25\x58\x57\xb0\x2d\x03\x03\x96\x98\xd7\x7a\x8b\x81\x18\x29\xf3\x09\xee\xb9\x4b\xa8\x62\xda\x35\x22\x20\xdb\x2b\x1c\xee\xc1\xc4\x50\x55\xaf\xf9\x93\x49\xb8\x10\xc1\x1c\x14\xc0\x18\x2e\xf8\xdd\xb8\xbb\x4a\x12\xe8\x8f\xf9\x6d\x33\x5d\xc6\x0c\x6c\xd1\x41\x04\x6f\x8b\xb5\x5d\xb1\x1f\x1f\xe4\x3f\xc8\xc2\xd4\x05\x05\xa9\x0b\xf3\xa9\x0b\xba\x8b\xba\x6c\xe8\x33\xd8\xf4\xa6\xb6\xbe\x29\xfc\x12\x1f\x4d\x30\x5e\xdc\x4b\x62\x14\xdd\x2e\x2f\xaa\x60\x06\xc7\x70\x0a\x27\x70\x06\x17\x25\xf9\x99\x7b\x93\x3c\xff\xce\x9c\x1a\xdc\x20\x3f\x95\x3a\x5c\xde\xe9\xac\xdb\x15\xa2\x72\xb3\xc1\xbb\xe5\x03\xac\x24\x3b\xe4\x5d\xff\xb1\x4c\x75\xa8\xbd\xfe\xd5\x3b\xbd\xa5\x78\xd7\x4b\x7d\x38\xa8\x3c\x69\x12\x41\x6d\x56\xe5\xc2\xeb\xec\x4d\x49\x94\xe2\x8a\xa5\x8e\x00\x20\x88\x7c\x5f\x21\x4a\x99\x68\x49\x88\x2d\xd4\x52\x11\x4c\x5b\x28\x6f\x21\xc7\x4c\x44\x1e\xf4\x4b\x0d\xdd\xc3\x76\x12\xbd\xd9\xa8\x15\x12\xcb\x19\x7e\x4f\x48\x3c\x47\xbd\x49\x48\xfd\x07\x65\x61\x4f\x2b\x13\x21\x69\x75\xa4\x06\x1e\x11\xda\xa2\x3a\x95\xb3\x99\x10\x49\xd7\xd7\x5e\x33\x69\xaf\x32\x0a\x8a\xb2\x97\x17\x76\x43\x9b\x9d\x79\x91\x7a\x9c\x8d\x73\xde\xf8\x80\xa7\x19\x1e\x8b\x4e\xc7\xfc\x90\x12\xf7\xc0\xfb\xbd\x26\xed\x77\x95\xf8\xab\x60\x3d\xed\x06\x2d\x9f\xa1\xdc\xcb\x8f\x68\x28\x3a\x14\x40\x1b\x17\xb6\xd3\x34\xc6\xe9\x99\xe4\x9b\x8e\xcb\x3c\xba\x9a\x5a\x2a\x6f\x02\x4b\x0b\xee\xcb\xb6\x48\x61\x69\x93\x40\x54\xff\xd5\xff\xba\x3d\x0e\x12\xa2\x99\xa5\x42\x6e\x68\x39\x86\xd5\xca\xdf\xd7\xe7\x3e\xef\x18\x9f\xdb\xd6\x72\x15\x0f\x4f\x0f\xe4\x74\x5a\xe7\x76\x6c\x6f\xbb\xe7\xe7\x6a\xb8\xe7\xe7\xa9\x80\x58\x37\xe0\xc1\xbe\x2e\x23\x41\x79\xd4\x7f\x0d\x8f\x69\x26\x7d\xb5\x6a\xdb\xe9\x77\xa7\xd7\xaa\x86\xfb\x72\x5e\x1a\x5f\xbb\xf9\x0c\xcd\x2b\x45\x02\x38\xe1\x3d\x67\x9f\x6f\x4a\x15\xb3\x64\x02\xcd\x20\xb4\xb3\xcd\x1a\x06\xac\xd1\x58\x2c\x8b\xc3\xa1\x8f\x37\xc1\x6d\x01\x00\x80\xed\x9e\x61\x3a\x1d\x7a\x6a\xf7\x8b\x22\x6e\x6a\xcc\x5d\xb0\x28\xb5\xf8\xca\x3d\xd7\x2e\xf5\x99\x49\xdc\xec\xe1\xad\x03\x9e\x36\x3b\x41\xa1\xa3\xef\x90\x00\x1d\xbe\x8d\xa7\x54\xe7\xb6\x57\x30\xca\x02\xa5\x25\xbc\xfe\xc0\xfd\x43\x72\xe2\xaf\xa7\x64\xa6\xad\xef\x54\x3b\x4d\xe7\xb1\xdc\xaa\xe5\x5c\xba\x33\x23\x06\xa7\x31\x06\x89\x28\xc1\x9c\x1a\x59\xc3\x69\xf6\xb1\x87\x66\x3e\xe0\x29\xe6\x98\x8e\x2d\xae\x91\xbd\x68\xcd\x50\x4e\x7f\x10\xad\x0b\x8c\x69\xcb\xe2\xb4\x1c\x4f\x5a\x47\xad\x7c\x29\x89\x21\xa8\x94\x90\x6b\x81\x27\x51\xe9\xf4\x55\x36\x7d\xe6\x11\x9f\xb3\xf0\xee\x1d\x94\x27\xc8\x7b\x1b\xa4\x27\xe5\x86\x5e\xad\x82\xb5\x24\x4d\xa8\x12\x86\xcf\x55\x3c\xd3\x12\x52\x26\xc2\x83\x3b\x28\x84\xc1\xec\xb5\x74\xb7\xf5\x64\xb8\x5e\xfa\xdb\x02\x24\x78\x28\x46\x29\x87\xde\xc0\x5f\x94\x76\x24\xf6\x7a\xad\xbc\xbf\xf5\xed\xcd\x28\xe8\x4e\x19\x3f\x41\xe3\x59\x95\x2d\x62\x43\x3c\x4a\xa9\xbe\x7c\x81\xcc\xc7\xd2\xed\xb6\xff\xa8\x83\x18\x79\x38\xba\x5d\x7d\x01\xe3\x12\x65\xb3\xd5\x8a\xf9\x34\x4a\x72\xc8\xac\x8a\xc2\x59\xca\x8d\x50\x03\xba\x1c\x7f\xc2\x3c\xd7\xbf\x26\xcb\xb1\x7f\x69\xa4\x29\xad\xa7\x72\x81\x1c\xac\x56\xbc\x00\x90\x01\x48\x3c\xb6\xb7\xd2\x9e\x6a\x4e\xf5\xa6\xfa\x7e\xc0\x9a\x94\x93\x58\xca\x09\x2b\x1f\x0d\xa3\xe6\xe5\xf6\xaf\xb7\xb0\x7e\x69\x99\x1c\x9e\x44\xee\x00\xb2\x87\x71\x8e\x1f\x21\x2e\xf9\xd1\x40\x64\xbd\x1d\x25\x81\x2b\xc8\x9b\x55\x9f\x06\xab\x3e\xf5\xab\x3e\x35\x66\x8d\x8d\xba\xcf\x82\x75\x9f\xf9\x75\x9f\xa9\xba\x24\xfd\xe8\x38\x28\x27\xfb\xe0\x6b\x8d\x98\x63\x02\x6f\xeb\xc4\xd6\x3b\x94\xda\x77\xcf\x62\xe6\x18\x80\x02\xe6\x01\xd2\xec\xca\xe7\xb5\xf2\x90\x2b\xf4\x5c\x80\x6a\x6c\x6a\xc5\x84\x97\x93\xec\x31\xe8\x57\x69\xc3\x1a\xa5\xdd\x2b\x4a\x8e\xf7\xbd\x87\x33\x9a\x68\xa4\x1d\xb7\x25\x73\x53\xe5\xbc\x34\xc7\xaf\xf7\x84\x1a\xf3\x6a\x15\xf8\xae\xe4\x45\x4d\xab\xa4\xe0\x0c\x06\xef\xe3\xd2\xe9\x0e\xab\x04\x47\x2a\x23\x03\x00\x09\x56\x4e\x79\x1f\xd2\xd8\x7a\x6e\x9f\x0b\x8e\xc6\x57\x78\x02\x49\xfd\x05\xab\xbf\xb0\x02\xc8\xf9\x04\x2f\x30\x9d\x60\x2a\xfe\x8a\x6f\x5e\xb1\xf9\x02\x09\x98\xdf\xf1\x6d\x79\xc7\xb7\xec\x8e\x6f\x8b\xca\x0e\x8e\x9b\x3a\xa7\x00\x91\x71\x5c\x92\x08\xb3\xac\x67\x92\x4e\xb4\xf0\xe7\x05\xc7\x79\xae\xc4\x10\x29\xde\x63\x22\x66\x98\xb7\x2e\xb0\x4a\xa0\xaf\xec\xf0\x3d\x1e\xf6\xc0\xa3\xf4\x96\x56\xe8\x30\x62\xb1\xe8\x74\x3c\xde\x4d\xe5\x26\xb7\x24\xd8\x9a\xcb\xe3\x4a\x4a\xf2\x1a\xbe\x2e\x0a\x00\x45\xa7\xa3\xd9\xa9\x02\xc4\x08\x9a\x60\x5f\x42\x5b\xfa\xa5\xd7\x31\x02\xe5\x0e\x42\xd6\x70\xe3\xc0\xd2\xeb\x52\x7d\xd0\x3c\xdd\x90\x57\xb4\x09\x90\xa6\xbd\x63\xfa\x5c\x1c\xd3\xc3\x43\xc0\x87\x74\xe4\x1d\x3d\xea\x34\x0b\x9f\xe2\xd3\x58\xa2\x41\x89\xec\x0c\x67\xc0\xe0\x50\x36\x36\xb2\x4e\x09\x5c\x32\x2e\xd1\xb9\x41\x3b\x11\x9c\x42\x49\xc9\x01\x54\x55\xe5\x17\x6b\xf4\x30\xa9\x7f\x70\x89\xb6\x67\xe6\xcb\x67\xf3\x65\x8e\x6e\x2e\xf0\x2f\xf4\x9a\xa3\x85\xda\xc7\x11\x7c\x5f\x7e\x54\x9e\xb3\x78\x11\x41\xb7\xa9\x01\xc4\x2e\x86\x58\x8a\x60\x4c\xd3\xe1\xed\x15\xbe\x49\xa2\x1c\x4d\xf1\x7f\x4a\x21\x56\xcf\x7d\x10\x33\xf8\x47\x43\x80\xa2\x80\x65\xd5\xb3\x70\x55\x0f\x4d\xe8\xca\xb9\xae\xac\xb8\x22\x53\x1d\x4d\x26\x6a\x8b\xdd\xd9\xf4\x45\x7c\x16\x23\x3f\x99\xb9\x57\xcd\xf0\x70\x92\xc6\xa8\xa5\x95\xf5\xcc\x88\x29\x13\x64\x7a\x63\x89\x81\xc6\x3d\xa6\x10\x80\xc2\x75\x61\xb1\xcc\x67\x27\x66\xea\xeb\x9d\x28\x05\x2f\x11\x40\xe6\x15\xbd\x13\xff\xb1\x3f\xe0\x47\xfd\xa4\x07\x20\x49\xfb\xc7\xe4\x39\x3f\x26\x4a\x07\x45\x8e\xfa\xfe\x9e\x21\x23\xa3\xf4\x8e\x45\xda\x1c\x98\xdf\x19\x35\x34\xe0\x6f\x29\xa1\xb7\x14\xc4\x6e\x53\x51\x00\x60\x9e\x1a\x32\x0c\x97\xfa\x97\xb1\xa2\xa9\x7a\x65\xde\x39\x1b\xe6\xd0\xe5\xb0\xac\x9d\x2c\x0b\x37\x45\xe7\x79\x19\xb1\x3b\x34\x49\x36\x00\xad\x94\x0b\x79\x8a\x4d\x6f\x94\x49\x8b\x09\x35\x72\xd0\x1c\x6a\x15\x68\x7d\x1d\x55\xc3\xc2\x0a\xe6\xd0\xc2\x49\x68\x71\xff\xf2\x7a\xdb\xf3\x5c\x97\xfa\x1b\xe1\x62\x89\x32\x53\x98\xe0\xe0\x52\xeb\x51\x48\x08\xc7\x71\x8c\x03\x8b\xb3\x1e\x58\x63\x17\x02\xb0\x5a\x0d\x47\x6b\x98\xc1\x0d\xd6\x05\x4a\xd6\xd7\x1b\x86\x36\x0b\xfa\x2b\xbe\x63\xfa\x77\xe4\x52\xa2\x08\xf2\xd0\x58\xbd\x16\x43\x67\x6c\xd3\xcd\x25\x00\xe4\x6e\x18\xf8\x33\x1e\xab\x80\x90\xb5\x31\x28\xba\x24\x8b\x77\x49\xae\x74\x91\x9d\x8e\x79\x7a\x4d\xb8\xb8\xb1\x66\x77\xea\x9d\xc5\x86\x50\xd8\x67\x8d\x50\x0f\x2a\x5f\x1b\x56\x76\x02\xde\x1a\x2c\x97\x38\x4c\x06\x0d\xf2\x4a\x1c\x7a\x2a\xca\x20\x8b\x33\x92\xbb\x7e\x9b\x5e\x45\x6b\x6c\x67\x9b\xb3\xe7\x2a\xa8\xa9\xf3\xe0\x18\xc5\xfb\x36\x90\x5c\x95\x3a\xac\xf7\x9c\xe4\x82\x50\xbc\x0d\xb0\xb2\x4e\x1d\x9a\x9a\xe9\x6d\x40\x99\x0a\x55\x38\x92\x1b\x21\xf4\xf2\x35\x12\xa8\x01\x6b\x83\x45\x84\xb4\xb6\x70\x55\xbe\x61\x9d\x94\x08\x20\xde\x70\x79\x0f\x3c\xb5\xbc\xe7\x05\xb2\xf1\xee\x28\x46\xa0\xd3\xb9\x8c\x7d\xee\x85\x2a\x11\xe9\x32\x16\x90\x00\x88\x8a\x58\x74\x5f\x2e\xa7\x52\x0a\x9f\x94\x3a\x6e\x38\x4d\x5f\xc4\xf1\x38\x5d\x00\xaf\xa2\xc7\x0b\x0c\xe9\x48\x71\x41\x15\xa1\xb4\x2a\xb2\xfa\xec\x90\x27\x22\x25\x3a\xf2\x16\x9c\xa4\x2f\xe2\x71\x05\xb8\x8b\x27\x42\x1e\x0a\x7b\xd6\x80\xed\x38\x92\x21\x7b\x28\xf0\x1a\x68\x77\x72\x86\x68\x04\xef\xd3\xc6\x05\x6b\x02\x38\xf6\x77\x6a\x03\xbe\x3b\x4f\xc3\x7c\xeb\x16\x6c\xdd\xfb\xda\x28\x8f\xd9\x70\xb9\x75\x23\xae\xf2\x7d\xad\x98\x13\x38\xcc\xb6\x6e\x42\xd7\xac\xc1\x1f\x7b\x2c\xf3\xc7\x6f\x57\xfa\xd5\xd1\x61\xca\xf0\x94\x9e\xfc\xeb\xbd\x2e\xe5\x63\x73\x09\x88\xaf\x5b\x1f\x1a\x42\x33\x29\x1a\x92\xeb\x87\x83\xa6\xc5\x70\x0b\x5b\xb5\x62\x60\xcc\x9b\x4e\x57\x60\xc8\x1b\x4f\x17\x79\xc0\x74\xdd\x58\x96\xc5\xf0\xa5\x1f\x5d\x18\xf7\xa6\xea\x80\x3d\x92\xea\xe0\xae\x0b\xb9\xc6\xbd\xda\x17\xb4\x81\xdb\xd6\xae\x43\x7e\xaf\x9b\x76\xd4\x95\xee\xed\xfa\x55\xd9\x9d\x66\x1d\x21\x53\x81\x35\xc6\x23\x7b\x6b\xb1\x75\xd6\x62\xbb\x59\x40\xe4\x0b\x8e\xd1\xe4\x4f\x63\x26\x66\x38\x21\xf2\xbd\x5e\x22\xb3\xbb\xf5\x86\x6d\xd9\x95\x32\x78\x1d\x31\xe7\xac\xd3\x69\x37\x45\xab\x4d\x03\xe4\xb9\xd0\x74\x1f\xf0\xe5\xc9\xe7\x85\x8a\x68\x27\xbc\x40\x77\x2e\x24\x9e\x28\x2a\x5d\x45\x5e\x57\xab\xde\xeb\x56\xce\x0f\x4c\x65\x90\xe4\xeb\x59\xca\x07\x77\x7d\x94\x60\xa7\x24\x13\x98\x7b\x62\xa9\xa8\xc3\x2d\x07\xbb\x30\xd5\xdf\xe6\x27\x8e\xb1\x2b\x2f\x58\x0b\x00\x92\xe1\x48\x8e\xc7\x1b\x50\xae\xb7\xb2\x77\xf3\xa7\x6f\x6a\xcc\xad\x1d\xf7\x6f\xed\x5c\xa5\x65\x95\x40\xb4\xc3\xb7\xc1\xbc\x6b\x38\x75\xa3\xa2\x75\xe8\x67\x4a\x70\x36\xc9\xcb\x7b\x2b\xea\x6b\x7c\x7f\x46\x8b\x4e\x87\x76\x67\x28\x8f\x85\xcd\x02\xa1\x42\xe8\x9a\x4b\xe2\x76\xbc\xc5\x8d\xf2\x96\x33\xe4\x4f\x4c\xa6\xb2\x0d\x65\xa5\xd7\x68\xf8\xc6\x08\x29\x04\xbf\x54\x76\x33\x19\x50\x0f\x59\xd7\xc8\x23\x36\x3a\x9d\xcf\x7c\x40\xaa\x03\x44\x05\xf6\x90\x08\xc1\xcf\x6d\x5e\x2e\x31\xcc\x47\x07\xcb\xc0\x90\x42\xa3\x5f\x5a\x7b\x01\x30\x60\xc3\x61\xa9\xd8\x8c\x11\x90\xcc\xb4\x0d\xf8\xd9\x8d\xc0\x28\x5d\x76\x4d\x48\x14\xff\x88\x2d\x41\xa7\x83\xe3\xa5\xea\x6d\xa0\xbe\x72\x3c\x65\x45\x4c\x61\x06\x6f\x0b\x38\x1c\x29\x02\xe1\x0f\x66\x0a\x9c\xc7\x1d\x90\x38\x10\xc9\x5d\x55\x86\xe1\x1b\xa2\xd1\x81\x9b\x27\x35\x79\x13\x50\xe8\x8c\x5b\x8a\x60\xca\xd5\x46\x60\xb5\x6a\xb3\x98\x0e\xd1\x08\xb8\x7b\xc7\xbb\xc7\x2d\xcb\xba\xa1\xeb\xc6\x66\xa9\x7c\x69\xb7\xda\xac\xd3\x99\x55\x2c\x3f\xcc\x75\xd2\xa0\xda\x99\x99\xb1\xa4\x4c\x6a\xaf\x41\x51\x7d\x31\x36\x8b\xad\x37\x39\x02\xb0\x7c\xa4\xea\xd1\xc4\xe1\xf3\x2e\x28\xc7\x5e\x66\xa4\xdd\xf9\xc8\x03\x77\xb8\xca\x63\xb6\xce\x1c\x61\x28\x46\x05\xe4\xb6\xdf\xa9\xfb\x55\x2d\xef\xf3\x7b\xea\x56\xb5\x30\x2e\x3a\x55\x8e\x4a\x00\x48\xd2\x3a\x93\x05\x59\x4a\xe5\xb6\x91\x9b\xa0\x6d\x0d\xea\x5a\x42\xdb\x6b\xb8\x27\x0f\xc7\x64\x56\xbb\xac\xb1\x0c\xf2\x49\xbf\x21\xfb\xbf\x50\x45\xd6\x05\x6b\xfd\x53\x71\x90\xaf\x31\x5e\xfc\xb3\x75\x4d\xc4\xac\x75\xc3\x96\xbc\x35\x41\x02\x75\x5b\x2f\x38\x96\x8f\x2d\xc1\x6f\x08\xbd\x94\xa5\x55\xe1\x96\xb8\x66\x2d\xcd\x8e\xca\x72\x96\xdc\x0f\x5a\x26\x9e\xe8\x94\x64\xb8\x85\x68\x8b\xe4\xf9\x12\x6b\xa0\x35\xe6\x55\x92\xfc\x87\xc4\x6e\x1d\x07\x18\xe3\x8c\x1c\xa1\xc5\xe2\xe8\x13\xe6\x39\x61\xf4\x89\x27\x62\x1f\x4d\x91\xc4\x8c\x37\x8f\x1a\x32\xb0\xc4\xd4\xed\x7e\xc0\x1c\x43\xc5\x5d\xe9\x74\x70\xa7\xc3\xab\x31\x43\x2d\x41\xcd\x50\x9e\x93\xa9\x5c\xff\x03\xd1\xe5\xf8\x92\xe4\x92\x50\x11\x29\x1b\xd0\x54\x4a\x07\x85\x49\x62\xa3\xab\x65\xe4\x82\x23\x4e\x70\x7e\xff\xcc\x68\xc1\x81\xe3\x4b\xfc\xf9\xab\x45\x51\x3c\xc0\x5d\xd3\x9c\x66\x01\xd2\x27\xff\x98\x1c\x0e\xbb\x23\xf7\xff\x13\xe8\x4a\x9c\x7c\x16\x98\x4e\xf0\x64\x4d\xc9\xa3\x21\x3a\xfa\x6d\xf4\x3f\x62\xfd\x04\x06\xb2\x66\x3e\x43\xb6\xb4\xfc\xfa\x8f\xc9\xe8\xf6\x3f\x8a\xff\xeb\x49\x78\xec\xd3\x0c\xe5\x33\x3f\x3b\xb4\x7a\x61\x43\xc3\x06\x8d\xe4\x5d\xad\x60\x76\xe9\x6a\xfd\xc7\x8c\xa2\x3d\x36\x69\xb2\xa0\xa4\xff\x88\x4e\x20\x51\x39\x75\x58\xa6\x2c\x1c\x24\xdb\x7e\x4a\xb3\x1b\x88\x52\xa5\x8a\x76\xd7\xaa\x7c\x49\x55\xa0\x3a\x8a\x3f\x0b\x15\xa6\x6e\x2c\x11\x74\x06\x6d\x08\xd5\x57\x76\x6c\x5d\xac\xd6\x22\xbe\xcd\xd0\x0d\x5b\x7a\xe1\xb6\x21\x1a\xab\x6c\x54\xed\xbe\x0d\xdf\xa5\x32\x75\x25\xd1\x05\x63\x22\x17\x2a\x1e\xa7\xda\xb2\xef\xd0\x1c\xe7\xc9\x30\xaa\xcf\x91\xfb\xf8\x92\x28\xcd\xa8\x2c\x83\x32\xcc\x6d\x6e\x7e\x0d\x5f\xae\xc0\x67\x22\xa4\x00\x37\x82\x48\x98\xf4\x6b\x7e\x15\x4e\xd0\x51\x86\x2e\x70\x26\xeb\xc8\x07\x1d\x9b\xf5\x02\x4f\x2e\x6e\x54\xca\xff\x4c\xb6\x96\xcf\xd8\xf5\x7b\xce\x2e\x39\xce\xf3\x84\xc5\xba\x37\x5d\xff\x6d\x04\x20\x65\xe2\x44\x37\x96\xa0\xd8\xb5\x0b\x2a\x95\x5f\x22\x9e\xd0\x38\xaa\xd4\x84\x51\x59\x33\x02\xd0\x54\x2c\x9b\x29\x21\xcd\x50\xfe\x32\x63\xe3\xab\x84\xc4\x91\xdd\x49\x11\x70\xeb\x14\x03\xe8\xa6\x20\xa9\x2e\xb0\x85\x25\xd4\xec\xdc\x06\x35\xc8\x4e\x43\xfb\x2b\x11\xb3\xd7\x7a\x9d\xb4\x0e\xa3\x52\x39\x8a\x00\x14\xa9\x9e\xec\x96\xfa\xff\xc8\x86\x36\x8f\xa6\x6c\x49\xf5\x35\x57\xe4\x87\xe3\x6f\x02\xf4\x17\x5d\x81\x54\x82\x98\x06\x7a\x74\xc1\x3e\xb7\x22\x00\xbd\xbc\x09\x8e\x5f\x57\xa1\x5d\xa1\xea\xce\x57\x1f\x65\x38\x5e\x7b\x89\x47\x65\x4f\x26\x64\xf2\x96\xe6\x98\xdb\xd4\x53\x61\xbd\xbc\xb9\x43\x51\x56\x61\x6b\xec\xdb\x34\xee\x5d\xea\xf7\xbe\x5d\x9e\x7f\xc5\xeb\x76\x75\xbb\x07\xca\xec\x15\x4a\xdd\xa3\x06\x60\x6e\x09\xd4\xbd\xb1\x00\xea\x0a\x41\x7d\x8d\xce\xe7\x6c\x99\xe3\x13\x2a\x30\xff\x8b\xca\x0f\x61\x6e\x78\xbb\xde\x87\xee\x05\xa1\x13\x6d\xbb\xd7\xac\xfa\x13\x46\x9f\x70\xa8\xaa\xfa\xd0\xac\x6a\xf3\xb8\xa1\xc9\xe4\xe4\x13\xa6\xe2\x27\x49\x6e\x28\xe6\x71\xa4\x6a\xe9\xb4\xb0\x8d\x2e\x98\x06\x36\x83\x91\xc9\x96\x9b\x7d\xb1\x30\x0a\x78\x4d\xb2\xec\x35\xce\x05\x67\x37\x81\xd5\xb9\x77\x49\xaa\x9d\xd0\x29\xc3\x1e\x3c\x96\xf5\x60\xee\x1d\xce\xc2\xe0\x8b\xd7\x4b\xae\x2f\x92\xc3\x7b\xbf\x8a\x5a\xea\x67\x40\xb2\x09\x5e\x2c\x71\x6f\xdb\x57\x91\x59\x69\x8a\xba\xe9\xa9\x21\x73\xcc\x96\x22\x82\xbd\xf0\xb9\x99\x89\x79\x76\x86\xa6\x38\x8e\x04\x47\x54\xa7\xb2\x3b\x9a\xd8\xa1\x94\x21\x26\x31\x8c\xe6\xb9\xce\x6c\x00\xc7\x19\x19\x5f\x25\x8d\xb3\x70\x47\x2f\x26\x7a\xb9\x4f\xe9\x2b\x59\x55\x9d\x13\x73\xe5\x79\x6e\x3e\xbd\x91\xe5\x6c\x5c\x6e\x50\x40\x6f\xc5\xee\xc0\x15\x7e\x23\x51\x33\x6b\x8c\xca\x45\xa2\x92\xec\x63\xaa\x30\x79\x09\x59\x2d\xe2\xc3\x20\xb7\x2b\xd6\x53\x8e\x1a\xc8\x26\x55\xd0\x12\xdb\xa0\xb7\xdf\x77\xd8\xe8\xe1\x09\x82\x59\x5c\xef\xaa\x87\x64\x80\x1c\x66\xa0\xde\xf6\x58\x37\x82\xed\x3e\x38\xc0\x72\x4c\x06\x9e\xb7\x46\x48\xc1\xca\x93\x5b\x95\xfd\xaf\x39\xb6\xf0\xd2\x56\x73\x63\xac\xe1\xf0\x35\x57\xa6\xff\x37\x12\xf5\x9d\xfc\x9b\xe6\x75\xed\x99\x7b\x54\x5e\xcd\x40\x33\x1c\x95\x7e\xa7\x10\x09\x9e\xc0\x5b\xb9\x2b\x3e\x92\xb9\xb9\xfe\x73\x3c\x44\xbb\x0f\x49\x2e\xf7\x47\xf3\xa2\x70\x22\x8b\xeb\xd2\xe7\x97\x4b\x32\xd1\xee\x43\xf2\xd7\x1b\xc6\x41\x6c\x29\x74\x95\xbd\x90\xd5\xb7\xdb\x5b\xf5\xdd\x93\x0b\x32\xbe\xba\x51\xf9\xe8\x55\x65\x89\x37\xf8\x47\x94\x5f\xc5\x76\x1f\xe6\x58\xbc\xad\xf6\x52\xdd\x78\x54\xb7\x45\xb3\x13\x9a\x05\x55\x73\x60\xf2\x43\x36\x4f\x99\x9a\x25\x94\x5f\xbd\x35\x2a\x85\x08\x1c\xe0\x41\xec\x78\x5a\xc3\xc6\x4a\x11\x59\xc3\x14\x18\xf1\x09\xbb\xa6\x31\x00\x89\x46\xe3\x76\x9a\x75\x8f\x0b\x35\xd1\x81\x2e\xd5\x1b\x2e\x17\x41\x73\x3a\x01\x58\xba\x49\xc1\xc9\xe5\xa5\xa4\x09\x13\x32\x39\x29\x61\xab\x93\xb6\xe6\x7c\x87\x87\xca\xa8\x29\x1a\xe9\x63\xe5\xa6\xb7\x32\x4f\x81\x77\x81\x49\x82\xf7\x2e\xb3\xa4\x4e\x0e\xf9\x35\x27\x22\x0f\x4d\x84\x3c\xf1\x05\x74\x18\x6c\xe3\x5a\x3d\xd7\xeb\x19\x1e\x5f\xbd\x9d\x9e\xcd\xd8\x32\x9b\x58\x24\xe8\xf6\x53\x98\x13\x73\x69\xa7\xca\x99\xb2\x94\xcb\xf7\x62\xe0\xa5\xa0\xd3\x95\x4c\xb6\xaf\xd1\x05\xb7\xb8\xeb\x2d\x7b\x0c\x0a\x00\x45\x93\x17\x73\x1d\x71\xf3\xa8\xed\xf3\x2a\xcb\xbe\x86\x5d\x0c\x51\x69\x92\x9b\x05\xc5\x93\x08\x34\xa7\xc8\x92\x05\x39\x3f\x15\x41\xde\xdf\xfd\x5a\x2e\xfe\xb8\xc3\x80\xbd\xa3\x10\x1e\x6e\x63\xd7\xc8\xd1\x2a\x9f\x8e\xfa\x51\x2a\x0a\x18\x38\xe3\xcd\x99\x88\x6d\x02\x18\x20\xc7\xa0\xf1\x40\xa3\xd9\x1a\x3e\x8b\x20\x96\x24\xe9\x12\x8b\x93\x0c\x2d\xf2\x26\x68\x73\x39\x13\x00\x7d\xd4\x98\xf0\x1a\x68\x09\xd8\x3b\x28\x5f\x2e\x31\x54\x60\xa7\x34\x16\x0f\x83\x03\x97\xff\xce\xc3\x54\x42\x75\xaa\x7e\x0e\x9a\xc8\xb1\x3a\x21\x31\xf8\x71\xfd\x29\xa8\xf0\x1b\x55\x9c\x6d\x31\x57\x08\x87\x54\x4e\x84\xec\x95\x5d\xf0\x0d\x79\x9f\x33\xcc\x3f\x91\x31\xee\xfe\x6b\x89\x97\xd8\xe0\x2c\xc3\x2d\x9b\x4b\x5c\x25\x5e\xe8\xc6\x0c\x2d\x08\x21\xcd\xd7\x15\x32\x11\xd5\x32\x64\x85\xf2\x3f\x3a\xda\x9e\xeb\x2e\xd4\xf4\x31\xc1\xcc\x41\xeb\x58\x87\x35\xfc\x82\xfe\x7c\x74\x4d\xc4\x4c\xf1\xc8\x6b\x8a\x55\xda\x3d\x62\x2a\x3f\xcc\x57\x0e\xc1\x17\x08\xa4\x63\x57\xc2\xaa\x6e\x4c\xf8\xe7\x9a\xb8\xd1\xc5\xff\x5a\xa2\x2c\x8e\xd4\x7a\x75\x6d\x70\xc4\x5e\x85\x5b\x50\x7c\x45\x5e\xaf\x38\x47\x8b\x97\x37\xa6\x62\x04\x23\x55\xa8\xa6\xc4\xe0\x1c\xd1\x4b\x3c\xf9\x2f\x59\xa4\x5e\x3d\x67\x5c\xb8\xda\xf1\x1a\x8b\x89\x05\x27\x8c\x13\x71\xf3\x5c\xb8\x9f\x83\x7e\x52\xbe\xff\xd1\x7b\x7f\xd4\x4f\x7a\x05\x78\x20\x9b\xe3\x58\x17\xc3\xdb\xe6\x76\x6f\xaa\x8e\xba\xb4\x7f\x0f\xe6\xd2\xc7\x19\x46\xdc\x6c\xee\x5c\xf1\xc6\x93\xc9\x17\xc3\x44\xa5\xeb\x95\xee\x0d\xa6\xaa\xf7\xe6\xd0\x53\x7c\x5d\xe1\xb0\xb1\x91\xf5\x0b\x58\xe9\xd4\xfd\xe7\xdd\x1e\xf1\x92\xca\x91\xfc\x1d\xa3\xd8\x8f\xeb\x71\xa7\x81\x6f\x40\x46\x00\xca\xf3\x48\xf6\x23\xb6\xbd\xb2\x3a\xee\x8f\x37\x8b\x50\xaf\x0c\x37\xb0\xe3\x54\xb9\x05\x75\x33\x16\xe8\x71\xc5\xc9\xd4\xef\x4e\xac\xae\x77\x4d\x3f\x17\x18\x5f\xbd\x21\x3c\x0f\xd9\x87\x06\xa7\x4e\xe7\x3a\x37\x26\x24\x40\x03\xf8\x09\x6d\x51\x3f\x43\x7e\xf5\x4b\x2c\xd4\xba\xea\x37\xa1\x68\xca\x72\xf9\x6d\x23\x4a\xb2\xad\x6d\x85\x2f\xb8\x01\x21\xd5\x0b\x43\xee\x95\x18\x4d\xdb\xaf\x5d\xf0\xd2\xdb\x02\x34\x72\x9d\x11\x38\x8c\x84\x5c\xff\x48\xd2\x73\x39\x3e\xc2\xe8\x1b\x75\x7b\xa3\xec\xcb\x23\xc3\xb6\xbe\x5e\x2e\x32\x32\x46\x02\xe7\xd1\x08\x38\xcf\xa2\x32\x9d\x0f\x83\xb7\x3e\x95\x4a\x68\x51\xda\x8a\xe4\xea\x06\xde\x5e\xfc\xfa\xb2\x7a\x0e\x60\x96\x3a\x02\x7c\xaa\xf0\xf9\x29\xb7\x63\xc9\xe1\xd2\xe7\x67\x10\xcc\x61\x56\x9a\x49\xbb\xbc\x94\xc6\x44\x17\x19\xbe\xa6\x06\xa5\x66\x32\xe6\xb3\x72\x5b\x4e\x1d\xf5\xba\xce\x61\x69\x7a\xe1\x7b\x39\x57\x33\xb0\x0a\x30\xa0\x89\x28\x60\x08\x66\x5d\x39\x15\xaf\xc7\x0a\xa7\xd7\x14\x73\xe3\x33\x6c\x42\x60\x7c\x50\x67\x45\xeb\x86\x4c\xd2\xa4\xcb\x04\xd3\x4f\x84\x33\x3a\xd7\xb1\x2b\x45\x78\x94\xf8\x8e\x21\x96\x36\xca\x5e\x2a\x14\x7d\x12\x7d\xcc\xbd\xbd\xf2\x22\xd8\x98\x73\x70\xf1\xb6\x07\x5f\x73\x27\xa7\xbc\xa1\x22\xd3\xa7\xa8\x74\x6c\xaa\xb3\xbb\x14\xe2\xa1\x18\x81\x42\xed\xa9\x0a\x7e\x8b\xef\xe8\xa3\x81\xfb\x51\x9f\x03\x87\xb9\x14\x97\xe6\x03\x59\xe3\xb4\xa1\x94\xd7\x43\x3c\x2a\xef\x22\xdd\x4d\xe4\xce\xa1\x5c\xdc\xf9\x2e\x8f\x18\xad\xe9\x0d\x4b\x2f\x16\x82\xf3\x98\xc0\x5b\x9b\xe6\x85\xeb\xdc\x7b\x58\xca\x21\x5d\x34\x99\xc4\x44\x89\x14\x33\x94\xbb\x53\x1c\xb2\x90\xaa\xa3\x42\xcd\x9c\x44\xa0\xab\x02\xe9\x4f\x70\x1e\x2b\xd1\xc1\xd0\xbc\xc0\x5c\x54\xb4\x70\x4d\xbc\xa1\x8d\xee\x1a\x31\x5c\xc5\xc0\x33\x7d\xaf\x2e\xc8\xfb\x26\x8c\xc6\x09\x56\x5c\x9c\xe6\x90\x0e\xac\x2f\x47\x65\xa8\xa5\x99\x5e\x71\x17\xce\x8f\x80\x0a\x3a\xe5\xec\x21\xab\x6c\x31\x29\x00\x38\x58\xc7\x16\x6f\x70\x65\xf9\xf5\xef\xc1\x3d\x3e\xd5\xae\xc4\x5f\x3e\xfe\xfc\xd3\x4b\xc4\xf3\xae\xed\x60\x7c\x4b\x26\x49\xf4\xfe\xaf\x8b\xe9\xff\xfb\x6c\x3c\x8f\xe0\x85\xba\x2a\xfb\xe1\xd6\x18\xb4\xe5\x51\x32\x8c\x3a\xf6\x90\x8d\xa4\x58\x83\x04\xd6\x16\x92\xc9\x70\xf8\xef\x30\x22\xd3\x08\x0e\x87\x4f\xff\x27\xec\x8f\x46\x3a\x38\xef\x6d\xad\x50\x0f\x46\xad\x56\x34\x82\xc3\xfe\xbf\xc3\xbe\x2c\xfb\x0c\xf6\xe0\x70\x34\x82\xc3\xa7\xff\x0e\xcd\x25\x65\xa4\x1e\xff\x43\x5f\xd6\xa8\xcc\x23\x65\xb1\x48\x69\x30\x23\x0d\x7d\x24\x0b\xf6\x60\xf4\x8f\x7f\x50\x59\x27\x5a\x20\x8e\xe6\x58\x60\x2e\x9b\x1a\x15\x77\x34\x5e\x69\xce\x5d\xa6\x49\x20\x53\x94\xe5\xd8\x03\x0b\xbd\x71\xc9\x2a\xb5\xbb\xc8\x68\x74\xe7\x48\x75\x73\xff\x0b\x46\x13\xf2\x29\x82\x82\x2f\x25\xe8\x7e\x4f\x0e\x03\xa9\x8b\x4b\x7d\x5f\x67\x6f\x26\x64\xe1\xff\x70\x8d\xb7\x5a\x5b\x03\x50\x3d\x82\xc3\x7e\x5f\x2e\x8e\xba\x19\x1c\x3e\x7d\x2a\x0f\x5b\xf5\xe6\x43\xcd\xb0\x6c\xe8\x7f\x57\x1a\x8b\x2a\x6f\x82\x53\xaa\xa7\xbd\xf1\x5e\xbe\x9a\xa1\xfc\xe4\x13\xca\xa2\x44\x4d\x61\xf1\x03\x9c\x63\x81\x92\x5b\x9d\xa8\xfd\x1d\x9a\xe3\x64\x87\x93\xd1\x9d\x5d\xe4\x51\xf5\xac\x89\xbb\x44\xd0\x9a\x7a\xf9\xeb\x9d\x2b\x34\x99\xf8\xee\xe1\x96\x58\x35\x39\x37\x28\x3c\x33\x58\x0c\xa0\x0e\x94\x83\x95\x29\xac\x18\x72\xdf\x03\x93\x8f\x8c\x0d\x52\x8d\xf6\x87\xef\x61\x15\x72\xe2\xa9\xa8\x25\x42\x6f\x32\x31\x2e\x98\x4c\x99\xeb\xb8\xca\x87\x94\x86\xca\xdc\xcb\x07\x6f\xe9\x1c\x07\xaa\x27\x68\x2c\x42\x11\x1a\x2a\x62\xe3\xa1\x28\x74\x4a\x6d\x6b\xe9\xe8\x0c\x10\x8d\x48\x46\xa1\x50\xee\xf7\x46\x4b\x9e\xae\x25\x33\x6e\xec\x38\x78\x0b\x1d\x52\xef\x34\xa4\x21\x51\x4b\x08\x6a\x1a\xad\x79\x02\x84\x8d\xfa\x37\x52\x2c\x3c\x6e\xc2\xd3\xca\x58\x2c\xd9\x37\x5a\xa7\xe4\x19\x7e\x06\x6b\xea\xc9\xa4\x07\xad\x88\x9e\xf4\x7b\x3d\xa8\x95\x50\x49\xbb\x5f\x35\xc6\x68\xf7\x35\x3b\x10\x11\x3a\x65\x91\xfa\x9d\x27\xc3\x28\x5f\x8e\xc7\xda\xb6\x42\xbf\x8f\xae\x11\xa7\x4a\x3f\x1a\x4d\x10\xbd\x54\x89\x79\x14\xee\x89\x60\x94\xe3\x31\xa3\x13\xc4\x6f\xa2\x11\x6c\x0a\x09\xc9\x30\xe2\x4c\x39\x57\xaa\xc0\x05\x9c\x65\xea\x0a\x3c\xfa\x44\xf0\xb5\x7a\x67\x4e\x7e\x34\x82\x0d\xa6\x20\x69\xf7\x8b\x35\xd9\x68\xc3\x1a\x22\xb3\x53\x1f\x79\x69\xf4\x96\xbc\x2d\x4a\xf3\x77\x8f\x67\xa5\xda\xd8\xbd\x7e\x31\xa9\x82\xeb\x2b\x04\x40\x4b\xa1\x65\xf3\x81\x32\x9a\x3d\xaa\xf9\xdc\xef\x98\xb7\x78\x38\x82\xdc\x9f\x5c\xaa\x27\xf7\xa8\xdf\x4e\x53\xd1\x55\x61\xf0\x4e\xa7\x7a\x3e\x55\x18\x04\x3c\xa4\x23\x87\x82\xf8\xe6\x53\xea\xb4\x8b\x7f\xee\x59\x4d\x1f\x30\xab\x33\x8c\x26\x3e\x2d\x97\xcf\x47\xda\x74\x6d\x9d\x16\x58\x55\x09\x32\x02\x7e\xe5\xaf\x76\x4f\xbc\xce\xde\x4e\xa0\x4b\xcd\xb3\x44\xb0\x61\x7a\x97\xab\x8b\x82\x8f\x18\xf1\xd7\xec\x9a\x9e\xd2\xb7\x94\x88\xa4\xdd\x83\xb2\xc3\xd6\x50\xe6\x0e\xf1\xbd\x2e\x66\xf8\xf2\xbb\x0e\x7b\x19\x47\x46\x95\x9e\x1c\x4d\xd8\x78\xa9\x25\xf6\xae\x04\x2f\xa7\xfd\x0b\xdc\x21\x07\x06\x10\x39\x43\x0f\x61\xde\xff\x05\xa3\x49\x6c\x6f\x22\xec\x8b\xba\x2d\x8c\xae\x42\xf2\x37\x28\x17\x17\x8c\x89\x18\xd8\x3d\x6d\x7b\xde\xfd\xd7\x12\xf3\x9b\x33\x9c\x61\x49\x10\xe2\x1f\x24\x5b\x38\xa4\x68\x8e\xd3\xda\x2e\x38\xca\x05\xe2\x22\x1a\xfd\x00\xa0\xd8\xa1\x36\xa6\x13\x59\x57\xf2\x01\xb8\xd3\xa9\x84\x26\xc4\xca\xd0\xf2\x8c\x5c\x64\x84\x5e\x1e\xf3\x4e\x87\x4b\xd4\x71\x0c\x5c\x23\x12\x80\xb9\x2c\x79\x35\x23\xd9\x24\xe6\x00\xd6\xaa\x1d\xac\x2f\x8c\x01\x5c\xff\x51\x80\x42\x4a\xd7\xe5\x0c\x35\x15\x84\x21\x9f\x3c\x59\xfa\x25\x63\x6b\xb2\x5e\xd9\x73\xe3\x6e\x5c\xd4\x0c\x4c\x94\x73\xfb\x57\xc7\x5e\xe1\x5b\x8e\x3b\xfb\x79\xef\xf9\x7e\xac\x5e\xaf\x91\x79\x0f\xd9\x21\xbb\xfe\x38\x9f\x06\x65\xde\xa0\xa4\x4b\x8f\x8c\x45\x9a\x93\x0c\xbd\xd3\xaf\xa4\xc2\xe1\x30\x52\x7a\x07\x18\x79\xbb\x48\x8a\x58\xd1\xbf\x8d\x97\x3c\x67\x3c\xe9\xfd\x5b\x64\x05\xaa\xb5\xa2\xea\xff\x92\xd2\xa9\x5c\x56\x4f\xf6\x93\xdb\xbf\x81\x43\xed\xe9\x31\xe2\xa1\xf5\x83\x8f\x22\x4f\xd4\xeb\x6b\x71\x50\x15\xb7\x25\x4a\x91\x77\xf3\xa6\xd4\x51\xbb\xab\xa1\x0d\x24\xc8\xad\xc4\xc5\x8d\x36\x91\x95\x15\xc3\xfb\x50\xbb\xa1\x1e\xd9\x98\xec\x47\x0b\x4e\x3e\x21\x81\x9f\x68\xf5\x70\xf5\xf3\xae\x19\x79\xbe\x9e\x87\xe4\x97\x95\x21\x1a\x8a\x48\x15\x9b\x2a\x26\x69\x1f\x6e\xe8\x5f\x8c\x8b\x98\xa6\xfc\x9e\xc8\xf1\xdb\x39\x18\xdf\x7e\xdf\x01\xe3\x0b\x95\x21\xb6\x32\x61\x5c\x4d\x98\xf1\xcb\x5e\xeb\x26\x2d\x54\xc9\x9d\x12\x08\x19\xf2\xb2\x7d\x1a\x21\x18\xca\x21\x34\xa8\xb8\x48\x27\x5f\x20\x73\xd0\x40\x8f\xcd\xc6\x2e\x6e\x4c\xd1\x37\x11\x24\x1e\x0c\x7b\xa3\xa0\xc5\x2e\xc9\x25\xb5\x51\x36\xbb\x4c\x85\xc0\x4c\x59\x57\xaf\x32\x80\x58\x3e\xad\x56\x51\x14\x4e\x18\xd6\xc4\x57\x2e\x97\x04\x5a\x10\xa1\x8c\x6a\xd6\x31\xd4\x5b\x21\xba\xaf\xc6\x57\xe3\x6e\xd9\xd3\xaa\x31\x66\x35\x69\x5a\xf5\x3e\xc7\x55\x01\x07\x15\x00\xbc\xa2\x18\xab\x46\x4c\xe7\xbe\x72\x90\x6e\x35\x99\xb3\xe5\x1c\xd1\xda\x54\xee\x33\xb0\xfd\xe1\x50\xe7\x3e\x03\xdb\x3e\x03\xdb\xef\xcc\x4c\x59\x4c\xb1\x2e\x55\x10\x4d\x9f\x9c\x1f\xae\x8e\x0e\x9f\x5c\x1e\x54\x83\x59\x94\xf9\xdd\xfa\x8a\x50\x90\x69\xbc\x8e\x48\x28\xbf\x7f\x9e\x72\x47\x24\xf4\x04\xd8\x08\x25\x51\x64\xac\xcc\x78\x57\xb0\x9f\xd8\x35\xe6\xaf\x90\x89\x9a\xbc\xc8\xd0\x18\xc7\x14\x46\xad\xc8\x0b\x02\x3f\x9e\x21\xfe\x42\xc4\x3d\xd0\x15\xec\x97\xc5\xc2\x96\x3f\x24\x66\x8b\xf7\x41\xf1\x80\x2c\x47\xeb\xb1\x6a\x26\xfb\x36\x46\xf9\xa6\x14\x4a\x2b\xe1\xbc\x5a\x5f\x88\x98\x7d\xc9\x14\xac\xb8\xeb\xfa\x57\x5d\xf6\xaa\xb9\x4c\x49\xd8\x0e\xfc\x1a\xf4\x21\x89\xf6\xd6\x4f\xb4\x20\x22\xc3\x9b\x73\x02\x7a\x9e\xcb\x4a\x7f\xc8\x69\xb6\xdd\xdb\x78\x96\x5d\x85\xaf\x35\xc9\x7c\x49\xc7\x2a\x73\xfe\x9e\x47\xd8\xf3\x08\x7b\x1e\xe1\x4f\xc2\x23\xf8\xc1\xaf\x7c\x2a\xfe\xac\x96\xa5\xd5\x9d\xa1\x34\x4d\xc9\xa0\xff\xef\xbd\x84\x40\x94\xf2\xe1\xd3\x11\xcc\xcb\x2f\x68\xb5\x42\x70\x99\xe6\x03\x76\xf4\x2c\x61\xf7\x49\x8b\x26\xef\x36\x2d\x19\x81\x4e\x87\xda\xdb\x9d\xe5\x20\x1f\x94\x8e\xdd\xb4\x9b\x2f\x2f\x74\xb1\xb8\x07\x97\x00\x46\xdd\x6e\x37\x02\x49\xfd\x7d\xb2\x13\xd7\x63\x71\xdf\x17\x4e\x1d\xbb\x1e\xd9\x2e\x25\x9b\xb2\x35\xeb\xe0\xd5\xfa\x43\xd2\x34\xd7\xbf\x8d\x89\x5a\x59\xe3\x0b\x53\xb5\x06\xaf\xb5\x3d\x51\x73\x3e\x40\xe2\x3b\x0b\xd0\xf6\x07\xb8\xd0\x8d\x22\x9f\x4c\xb5\x4b\x32\x15\x44\xce\x27\x9f\x17\x78\x2c\xf0\xa4\x85\x5a\xba\x06\x6c\x5d\x32\xd1\x42\xa5\x33\xb8\x66\x00\x5c\xc2\x9c\xaa\xe0\xb0\x99\xe2\xa9\xce\x35\xee\x37\xcc\x9f\x76\xc3\x38\x49\xf3\x49\x3c\x48\xfe\xbf\xd5\x3f\xf2\xd5\xd1\xea\x1f\x4f\xc0\x3f\xce\x9e\x5c\xc2\xb0\x9b\x49\x45\xf0\x2c\xc0\x76\x5b\x8e\x93\xf9\x7e\xbb\xfd\xc9\xb6\x1b\x27\xf3\xed\x10\x53\x90\x63\xd8\x6f\x95\x3f\xc1\x56\xa9\xa0\x96\xc0\x8e\x61\x59\xa6\x2d\x11\xfd\xeb\xe2\xfa\xb7\x20\x9f\xb9\x51\x4d\x77\x1d\x1d\xaa\xa7\xf7\x26\x99\x60\x2a\x88\xb8\x59\x5f\x82\x62\x3c\xc9\x8f\x38\xb6\xc1\xa1\x1f\xd1\x57\xd5\x9d\x03\xec\xc2\x6a\x07\x72\x32\x7d\xc1\xcc\xa1\xa0\x4c\x71\x33\x23\x79\xf7\x0a\xdf\xa4\x42\xff\x9c\x91\xc9\x04\xd3\xb4\xdd\xd7\x8f\x44\xe0\x79\xca\xcd\x6f\x3a\xc1\x9f\x53\x6a\xc2\x29\x89\x9b\x0c\xa7\xc4\x4b\xc1\xc5\x62\x70\x5b\xf8\xc9\x74\x37\x08\x9c\x16\x36\x9f\xba\x50\xa9\x11\xcc\x14\xd9\xf8\x08\x38\xcb\x7e\x52\xd5\xab\xef\x39\xba\x7e\x2b\xf0\x3c\xaf\xbe\x25\xcd\x57\xf9\x98\xb3\x2c\xfb\x09\x4f\x45\xe8\xfd\x47\xb6\xa8\xb5\x97\x11\x4c\xc5\xaf\x64\x22\x66\xa1\x0f\x7f\xc1\xe4\x72\x56\x83\x64\xcc\x2f\xce\x4a\x8d\x99\x71\x73\xd5\xef\x8d\x3d\x4a\x73\x58\x79\xe9\x51\xeb\xbd\xfd\x19\x2d\x6a\x09\xb1\x74\x1a\x3b\xcf\xc2\xcc\x85\x06\x51\xef\x2e\xb1\x78\x21\x04\x8f\x23\x3d\x7d\x11\x38\xa8\xcc\x66\x69\x70\x6e\x4f\xff\x00\x27\xff\xb3\x39\x39\xbd\x55\x15\x9a\xfe\x74\x94\xe1\xa9\x28\x83\x67\xb8\x39\x5b\x53\x5a\xb0\x85\x2b\xec\xcf\x64\xbd\x38\xce\x05\x99\xab\x40\xec\xd7\xf2\x7b\xad\x8e\x99\xe4\xf5\x95\x66\xaa\x40\xad\x5b\x3a\xaa\x6a\x1a\xec\x97\x8e\xb1\x19\x69\xb7\x4f\x3c\xc9\x3f\xb8\xd3\xde\xd8\x85\x5e\x88\x8a\xd5\xaa\xfa\x86\xd0\x4b\x1b\xf1\xe5\x9c\xe4\xff\x99\x91\xf9\x1c\xf3\xa7\x31\x18\x18\x57\x36\x8e\xe9\x44\xae\x4e\x52\xf3\xce\x53\x21\xc5\x0a\x38\x21\x93\x0f\x78\x8c\xc9\x27\x2c\xfb\x96\xaf\x31\x1f\xb4\x9b\x61\xb9\x90\xdd\x53\x7b\xbc\xfa\xea\x4c\x0d\xe9\x3d\xd3\xe1\xa7\xe2\x0d\x63\x84\xa9\x93\x61\xad\x0b\xd5\x83\xb1\x90\x53\x8a\x98\xd3\x8b\x1c\xf3\x4f\x98\xdf\x5b\xc0\xe4\x5f\x92\x2d\xea\xf9\x4e\x98\x1c\x97\xf9\x1d\xd5\x67\x37\x2a\x40\x01\xbd\x91\x04\x22\xde\x94\xe7\xbb\xba\x72\xf2\x83\xb5\x4c\x0b\xef\x77\xd5\x49\xdf\xa5\xcc\xe2\x84\x76\x9a\xe2\xdf\x7d\xdc\x75\x3c\x85\x2b\x7e\x5f\x2f\x54\x08\xd3\x32\x3e\x9d\x1e\x8b\x8a\x77\xd7\xe9\x28\x8f\xc0\x7a\xff\x1a\xef\x76\x58\x0a\xbb\x16\xd5\x2d\x14\x4a\xb5\x54\x39\x53\x95\xec\x3c\x61\x04\x71\xe0\xb8\x11\xdc\xe9\xc4\x38\x5d\x20\x9e\xe3\xb7\x54\xdd\xb9\xf5\x40\x03\xdb\xe8\x72\xde\xf8\xcb\x4f\x11\xc4\xc0\x06\x7f\x59\x8f\x63\xca\xf6\x84\x52\x35\xba\xf6\x44\xa3\xbd\x8f\x6c\xa1\x8b\x35\x9a\xfb\xc8\x16\x72\xca\xcb\x79\x79\x55\x62\xf2\xb5\xb9\x89\xdc\x7e\xed\x7a\x78\x3f\x6e\xa0\xbc\x00\x42\xf3\x3b\x5d\x27\x1c\x92\xe5\x54\xa8\x30\x0d\x7c\xd4\x5f\x64\x11\x8d\xf8\x82\x65\xf4\x27\x83\xb2\xf4\x28\xbd\xcf\x3a\xa6\x8c\xdc\x2b\x1f\x14\x92\x6a\x1c\x44\x33\x01\x92\x2c\x55\xd1\x8d\x37\x27\xb1\x3b\xcc\xaa\x5c\x70\xdf\xa8\x8d\x1c\x0e\x9a\x60\x3e\xc2\xc8\x04\xda\xb0\x84\xca\x9b\x52\x77\x5f\x81\xcb\x30\x2d\xf5\xaf\xa9\x97\xce\xd1\x64\xc3\x4f\x2b\xe4\x13\x66\x41\x02\x3a\x6e\xae\xa0\xe2\x6c\x5e\x88\xb8\xbe\x3d\xeb\xfb\xa7\x49\xd1\x42\xcb\x0b\xa7\xa1\x3d\xb2\xa4\x5f\x0c\xfe\x24\xf5\xa7\x71\x96\xfe\x8c\xc4\xac\x3b\x27\x34\x1e\x43\x9f\xe4\x83\x83\xf1\x51\x3a\x83\xd3\x43\xf9\x5f\x59\x68\x7a\xe8\x17\xf2\xec\xd1\x27\xe5\x8a\x1c\x8d\xf5\xdc\x2e\xd2\xe1\x48\x29\xed\x45\xda\x3b\x16\xcf\xa7\xc7\xe2\xf0\x10\xb0\x74\x7c\x28\x20\xaa\xe9\x4c\x27\x5d\x7d\x8b\xf0\x42\xc4\x0c\x00\xb8\xec\x74\xe2\x3c\x5d\x0e\xd1\x08\xc0\x7c\x10\xd3\xe6\x94\x4c\x19\x9f\x23\x21\x91\xa2\x0a\x9c\x1a\xb3\x0d\x47\x5f\xba\x91\xe7\xce\xb3\x92\xd6\x5e\x6b\x2e\x56\x45\xe5\xaa\x7e\xb8\xc2\x37\x11\x44\xb5\x97\x6a\xf9\x23\xc8\x00\xcc\x86\x68\x94\xe6\x20\x59\xe8\x5b\x34\x06\xbc\xc1\x7b\x0c\x9b\xcd\xac\x2f\x67\x43\x32\xe6\xd9\x30\xce\xbd\x01\xe6\x43\x31\x02\x92\xa9\x1e\xc9\xaf\x0b\x7b\xfb\x71\xcb\xd2\x45\x77\xc1\x16\x86\x6d\x9b\xa7\x95\x29\x3b\xa8\x4f\xe8\x1c\xc0\x47\x9e\xb5\x7b\x26\xa7\xfa\x5a\xe0\x79\x04\xe7\x77\xcc\xbb\x9e\x4b\x1d\x36\x2b\x5c\xa8\x17\xee\x56\xa4\x51\x58\xd2\xea\x1d\xb7\x26\x24\x5f\x64\xe8\x26\x69\x51\x46\xf1\x71\xe4\xaf\xc7\xc2\x5f\x05\x39\xb7\x43\xa1\x7d\x36\x3f\xdd\x33\xb1\x9f\xbe\xe8\xc4\xe6\xea\x1a\x8b\xc4\x08\x7e\x82\x4c\x4e\xa9\x1e\xb7\xcf\xdf\xfb\xde\xea\xb9\x09\x78\xe0\x78\xfc\x4c\x7b\x24\x58\x2e\xb2\xe9\x91\x60\xdc\x3a\x34\x53\xf9\x8e\x4d\xb0\x17\x43\xd2\xa7\xce\xb5\xe8\x19\x4d\xf2\x3d\x68\xbe\x52\x45\x13\xec\x08\x49\x89\x9a\x3a\x1d\x51\x7b\xfb\x91\x2d\x56\xab\xb8\x1e\xb3\xac\x46\xb1\xe1\x9a\xef\x86\xc4\x9a\x59\xa9\xb1\x24\x2a\xc6\x96\x9e\x55\x49\x5e\xee\x18\x8e\x2f\x4b\x94\xac\x43\x55\x5c\x50\x57\x90\xcd\x7e\x7a\x55\xc3\x1d\xf5\x81\xdc\xdd\xd7\xaa\x0f\x34\xda\x55\xdf\xe1\x69\x2d\xfe\x40\x21\x07\x16\xff\xf5\xe1\xd7\xf1\x7f\x21\x12\x0e\x39\x20\x77\x6d\x04\xef\x8e\x3c\xa0\xc7\x49\x91\x20\x9f\xf0\x91\x5e\x7e\x1d\xed\x50\xf9\xe6\x0f\x87\xd6\x4f\xe1\x28\xd7\xa6\x2f\x3e\x03\x09\x7d\xee\xce\x3e\xe8\x0d\x11\xc1\xa8\xbe\x47\xa2\x91\x75\xf8\xa8\xf0\x38\x2e\x84\x81\xbf\x39\xeb\x2f\xe5\x8e\xbc\x2b\xb8\x41\xa5\x69\x13\xe3\xe0\xae\x50\x08\x8d\x9e\xd9\xa8\x08\x77\xb9\x93\xf8\x91\x04\xfe\x43\xc7\x37\xc0\x68\x3c\x8b\xca\x61\x49\xfc\xb1\x3e\xb0\x41\x3d\x18\xc1\x7f\x78\xb1\x06\x9e\xc1\x3e\x1c\x9a\xc7\x91\x0d\x32\xd0\xff\x77\xf8\x54\x77\x5c\x7e\x54\x48\x5c\x4d\x82\x79\x56\xb8\x7e\xa4\x4a\xff\xef\x86\xc3\x48\xdf\x7a\x8c\x7c\x05\xbf\x92\xed\x0e\xcc\x86\x91\x08\xee\x00\x1a\xd8\x9d\x77\x2a\x1f\xed\x35\x08\xa2\xf9\xdd\x7a\x46\x35\xdf\x47\x8b\x32\xed\xef\x57\xbc\xcd\x6e\xde\x60\xab\xd6\x2d\x10\x10\x47\xec\x13\xe6\xd3\x8c\x5d\x6b\x41\x4f\xc7\xdd\x27\x6b\xd5\x73\x61\x6d\x5c\x45\x7f\x13\xd4\xcf\x04\x94\x48\x4d\x45\x91\x79\x83\x28\x99\xab\xb8\x17\x6f\xe4\x96\xa9\xa9\xe2\xb4\xde\x63\x03\x0d\x89\xaf\x6a\xab\xa9\x0b\x7c\xdc\xd2\x14\x38\xef\x92\x5d\x1b\x7d\x5e\x2f\x76\x16\x77\xc6\xca\x0f\x69\xfd\xd4\x3b\x1b\x38\x5d\xc5\x3c\x33\x5f\x94\x67\xa2\x6e\x5a\x39\x8c\x6a\xee\x03\x78\x6f\x2a\x92\x97\xd1\xbe\xde\xd0\xb1\x5e\xd3\x37\x9c\xcd\x55\xff\xec\x17\x81\xb8\x38\x33\xb8\x0b\x8f\xaf\xcc\x74\xfe\xb2\x08\x2a\xb9\xb6\x81\xbf\x91\x7e\x49\x07\xd3\xac\xb4\x7f\x87\x12\xb4\x80\xe5\x90\x7d\x50\x74\x10\x57\xe6\x4b\x6d\xeb\xae\xdd\xcc\xa9\x59\x8a\x08\x36\x0b\x0d\xe9\x28\x8d\x04\x5b\x8e\x67\x91\x8d\x72\xbc\x06\x06\x5a\x0a\x16\x41\xe5\x00\xe1\x8e\x35\xa8\x34\x0b\x7b\xb0\x07\x02\x6d\x74\x17\x46\x61\x92\x46\xe8\x22\x67\x99\x8a\xa7\x10\x28\x96\x79\x27\xa1\xfa\x45\x94\x07\xa2\xfa\xe1\x82\x09\xc1\xe6\xe1\x6f\x5c\x1f\x36\x33\x67\x6b\x54\x14\x81\xb9\x6e\x74\x9a\xe3\x0c\xe9\xcc\x0b\xeb\x4b\x6b\x1d\xc4\x1a\x0d\xc4\x61\xb4\xf8\x7c\x57\x65\xa3\x9d\x58\xa7\x9b\x50\xd5\x0b\xd8\xdc\x63\xcd\x73\x2e\x87\x4a\xf0\xe4\xcc\x57\xe0\x54\x0f\xa9\xd3\x0f\xd4\x8b\xd6\x0b\xd6\x4f\xf7\x8f\x69\xcf\x05\xaf\xb6\xbd\x5f\x57\xd7\x26\x82\xa8\x36\x62\x14\x58\x4d\xce\x39\xd4\xa3\x12\xf9\xac\x93\xff\xe5\x8b\xb5\x9d\x0a\x56\x57\xb9\x53\x6b\xe7\x7d\x4d\x10\x66\xef\xa6\x15\xdc\xe2\x6e\x5e\x39\xa0\xbc\x6a\xcd\x07\x6e\xaf\x09\x9d\xb0\xeb\x2e\xc7\xff\x5a\xe2\x5c\xbc\xa8\xa0\xec\x01\x6e\x20\xf1\x60\xb9\x58\x0a\x16\x8d\xa2\xb9\x8e\x50\xcc\x96\x4a\x43\xf7\x7f\x83\x42\x21\x96\x06\xd6\x08\xec\x84\x0a\x9c\x4e\x27\xbe\xb3\x8f\x1a\x60\xbd\x43\x01\x40\x20\x51\x71\x36\x5d\x9f\x42\x45\xee\xa2\x5c\x72\x05\xee\x9b\x7c\x87\x4f\x44\x8a\xbd\xe5\x54\x4e\xed\xe5\xf6\x54\xa9\xb0\x4a\x99\xab\xb1\x79\x3a\x1d\x1e\xfe\xa8\xe5\x32\x65\x48\xbc\x76\xdf\x85\xbe\xc8\x7d\xce\x6d\x66\x63\xdc\xf5\xe5\x5c\xe6\x9e\x35\x89\x87\x48\x76\x8e\x94\xfa\xc6\xb2\x6c\xa7\xc3\x6a\xaf\xff\x62\x14\x90\x31\x2a\xbb\xe4\xf3\x10\x24\xc4\x43\x30\x00\x63\xba\x5a\x21\xe0\xc7\x85\x56\x99\x02\x45\x3d\x87\x0c\xb5\x1a\x5c\x5f\x8e\x95\x7c\x15\x44\xe6\x4b\x9d\x19\x8f\x09\x64\xc6\xe2\xe5\x1e\x23\xbd\x92\x9b\xd3\x37\x0e\xf9\x93\x4b\x4e\x26\x55\xde\x50\x7f\x39\xba\x20\xf4\x68\x81\xc6\x57\x98\x3f\x99\x92\xcf\x78\x72\xa4\x4b\xde\xcd\x17\x5e\x62\xaa\xed\x14\xee\xe7\x0b\x7d\xa3\x57\x58\x89\xa0\xd0\x3b\xe6\xcf\xad\x12\x54\x99\xcc\x9a\xd0\x36\x62\xc8\x47\x07\xb4\x5b\x26\x56\x4f\xfd\x87\xd5\xaa\xdd\x87\xb4\xeb\xa7\x61\x97\xeb\x63\x32\x16\x12\xda\xa2\x9d\x4e\x4c\xbb\x36\x11\x7b\xda\xee\x01\xb8\x8e\x37\xa5\xdd\x2b\x7c\x03\xe9\xc3\xd2\xd4\x05\x6f\xc0\x63\x70\xeb\x5d\x86\xab\x1b\xf7\xc7\xbc\x08\x37\x9a\x65\xb3\x6d\x2f\x88\xb6\x51\x76\xf7\xd5\xba\xb0\xec\x95\xba\xe8\x26\x90\x41\xe4\x7c\x7c\x52\x0c\x63\x96\x0e\x6f\xaf\xf0\x4d\x12\x55\x54\xee\x7a\xf8\x4d\xe3\x93\x5b\x45\x4d\x13\x0c\x8d\xc2\xcb\x36\x6a\xe8\xa4\x8a\x6c\x58\x40\x0d\xd0\xa8\xa8\x9b\xc0\xac\x61\x82\x1f\xdf\x56\xc2\xf8\x44\x72\x72\x91\xe1\x33\x49\x1f\x08\xbd\x7c\x2b\xeb\x6b\xeb\x02\xe0\x80\x5a\x9e\x20\x0c\xb7\x09\xd3\x96\xd7\x66\xeb\x16\x8a\x1a\x45\x08\x44\x13\x80\x29\xaa\x3b\x83\x4b\x10\x7a\xc0\x9b\xc1\xb0\x65\x1b\x40\x94\x8e\x7d\xf3\x09\xd2\xf7\xe1\x7f\xd3\xd3\xf4\x2b\x11\x33\x89\x6c\x94\xf5\x45\xbb\x57\x02\xad\xa9\x05\x83\xe0\xa9\x4d\x52\xa8\x60\x97\x93\x6a\x3e\x42\xa6\x3f\x98\xc1\xdb\xb7\x48\xbf\xb5\xc3\x31\xaf\xcb\xb8\xae\xdc\xa8\x24\xdf\x93\xcf\x38\x53\x8d\x83\x58\xed\x38\x50\x14\x23\xd0\xe9\xd0\x98\x78\xf9\xfa\x99\x42\x7f\x34\x26\x10\x01\x88\x8b\x78\x7b\x4c\x37\xf7\xb0\xd8\xdd\xf8\x2e\x9f\xe1\x6c\x7a\xa4\x84\x98\x3d\xc2\xfb\xb6\x11\x9e\xc1\x53\xd6\xc4\xa7\x89\xf1\xfe\x2c\xc8\xce\xcb\x41\x1b\x44\x77\x3a\xdf\xc9\x1e\xe1\x7d\x47\x08\x6f\x81\xf9\x18\x53\x81\x2e\xb1\xfc\xba\x9c\xd3\x7c\x8f\xf8\x7e\x47\xc4\xf7\x78\x46\x8f\x07\x74\x93\xd8\xa9\xce\x59\x8d\xa5\xc3\x11\x44\x69\x0f\xe6\x69\xef\x38\x7f\xce\x8f\xf3\xc3\x43\xc0\xf4\x0d\xb1\xc1\x6a\x2a\xf9\xb7\x41\x6c\x04\x9a\x8d\xa5\xde\x16\x00\x1e\x1e\xa2\x1f\x53\xeb\x33\xd6\xe9\xc4\x28\xed\x19\x93\x07\x7b\x72\xf2\x94\xad\xc3\xbf\x0c\xf6\x7b\xbd\xc7\xc1\xc0\xaa\xa1\x2f\x8e\x83\xfb\xbd\xde\x17\xc3\xc2\x12\xd6\xf7\x8a\x87\xd5\x3c\x7d\x49\x4c\xac\x27\xde\xe2\x62\xb7\xd5\x86\x78\xd4\x35\x1b\x34\x80\x91\x4d\xa5\x5c\x9b\x8b\x4c\x33\xc6\x78\x4c\xba\x9f\x9f\xf4\x7b\xbd\xff\x21\x42\xb8\xda\xe1\x50\x83\xb0\x6f\x3f\x27\x39\xbc\x49\x48\xf7\xa6\xf8\x0a\xa8\xbb\x6e\xcb\xbd\x77\x33\xf8\xa2\x6e\x06\xd6\xbb\x16\xd2\x54\x4e\xd5\x01\x4f\x4b\x2f\x6d\xe5\x1c\x5d\x06\xad\xa6\x03\x9b\xcc\xc8\x86\x72\xc6\x77\x47\x24\xbd\xd7\xdc\xfe\x71\xc3\x04\x63\xdf\xa2\xa2\x4b\xf2\xd7\x84\x8b\x1b\x49\x26\xab\x1f\xd8\x35\x35\xbf\xb0\x3e\xb4\xf8\xba\x9b\x8f\x67\x58\x36\xe3\x19\x05\x54\x2a\x41\xec\x05\xb5\x86\x91\xb5\x07\x26\xf4\xb2\xf5\x89\xa0\x56\xdd\x1e\xf3\x1e\x87\x89\x35\x4c\xc5\x76\xd7\x95\x5f\x3c\xb4\x54\x9d\x53\xab\xe4\xf6\x2f\xb1\x92\x43\xf7\x89\xbd\x29\x39\x16\x6c\x91\xf4\x8e\x33\x3c\x15\x49\xef\x38\x72\xe4\xec\x30\xad\x5e\xc5\xbc\x3a\x3b\x03\x31\xee\x7e\x86\xb8\x7b\x03\x20\x39\x4c\x35\xb6\x4f\xa2\x43\x7e\x18\x2d\x3e\x1f\x1b\x1a\x16\x1d\x52\xf5\x18\x15\x65\xa7\xaa\x28\xe9\x71\x7b\xf6\x6f\xcd\x8e\x6d\xbc\xba\xde\xa5\xf1\xd7\x3b\x0b\x95\x1b\xe2\x50\x3c\x42\x12\x63\x9d\xcc\x12\x77\xc7\x79\x7e\x6f\xc9\x1e\x28\x8c\x55\xc9\x30\xba\xc6\x17\x57\x44\x72\xc6\xbf\xda\x1f\x73\xb9\x3b\x7f\x66\xbf\x45\x30\x3a\x8d\x46\x90\xa7\xc3\xe8\x48\x97\x3a\x8a\x60\x74\x34\xcf\xf5\x1f\xf6\x9b\xfa\xcb\x8e\xa2\x11\xa4\x69\x28\x6a\xa1\x8d\xe9\xda\xe9\xb8\xe8\xae\xf6\x87\xb9\x7b\x5a\xff\x45\x8f\xb9\x12\x0b\x48\xf2\x9a\x9a\xb5\x23\x83\x5a\xd4\xb3\x39\xce\xc8\x6f\x38\xc6\x20\xc1\x07\x64\x1a\xb3\x96\x64\x98\x5d\x48\x10\xc7\x14\xa2\x74\x4d\xb4\xb4\x98\x01\xc3\x28\x3a\xce\x3d\xb7\x9c\xfb\x32\x15\xc3\x7c\x74\x88\x24\xe0\x65\x05\x30\x19\x70\xf9\x05\x27\x4b\x15\x83\xae\x9e\xbf\xe4\x0e\x43\x84\x0d\xf0\xc0\x7d\x36\x09\x0f\xdf\x55\xae\x3f\xd6\x96\x3c\x45\xfe\xdb\x8f\xf2\x87\x3c\x9d\x4f\x5f\xa7\x79\xf0\xc3\xb3\xd7\xe9\x32\x04\xe7\xd5\xd9\x59\x9a\xad\x01\x25\xbf\x8d\xd7\x40\x93\xdf\xa6\xfe\x37\xf9\xc2\x7b\x4c\x71\x37\x5f\x2e\xd4\xbc\x3d\x7d\xed\x3d\x3c\x7b\x1d\x08\x90\xe7\x9d\x03\x60\x52\x7e\xcb\x56\x22\x00\xa9\x2e\x50\x37\xbb\xf0\x8b\x90\xb4\xdd\x0e\x16\x5a\x60\x9e\x2f\xb0\xca\x81\x7f\xca\xc9\x25\xa1\x91\xe4\x83\xbc\x8e\x90\x03\xbd\x45\xdb\x6d\x5a\x6e\x5e\x64\xd9\x64\xec\xdf\x32\xeb\x3b\x55\x7b\xbc\xd5\xfd\x32\xd7\xd7\xac\xae\x62\x5e\xab\x38\xa4\xa3\x74\xa2\xee\x4d\xca\x32\xcb\x40\x99\x59\xad\x4c\xe6\x8b\x4a\x91\xc2\x96\x7e\xbe\xf3\xc5\x67\x85\x47\x23\xe0\x7c\x05\xd5\xbb\xc8\x83\x30\xae\x40\x28\x33\x44\xc1\xc8\xab\x36\x51\x85\x60\x54\xa9\x39\xdd\xa4\xe6\x2c\x54\x73\x52\xa9\x39\x47\x82\x93\xcf\x71\x1f\xb6\x7a\xea\x5f\x1f\x56\x72\xb6\xc3\x56\xa5\xfb\xc0\x07\x34\x0b\x00\x7a\x36\x29\x41\x39\x80\xcd\xc7\x3b\x9a\xd0\xa5\x64\x43\x95\x7d\xc9\x8c\x11\x36\x19\x2c\x13\x36\xc8\x13\x74\xe0\x6f\xe1\x85\x31\x23\x26\x83\x69\xc2\x06\xe3\x24\x3b\xa8\xed\xf7\x79\x88\xf4\xcc\x17\x2c\x97\x62\x7f\x20\x18\x47\xc6\xf2\x25\xc7\x47\xa8\xe1\x8d\xf9\x78\x46\x89\xe7\xe7\x19\x43\x13\xcc\x21\x4f\x6f\x5f\xbc\xfa\xf8\xf6\xf4\x9d\xca\xea\x5d\x1c\x98\xfe\xcf\xc4\x3c\xbb\x40\x3c\x7f\x72\x85\x6f\xae\x19\x9f\xe4\xf5\x5e\x13\xda\x12\x26\x9b\x18\xbf\x19\xf0\x54\xa8\x1b\x62\xc2\xdd\x0c\xdc\x0b\x01\x58\xa3\x34\xce\x96\x42\x39\x39\x6f\xd5\xa6\x8a\x1b\xd7\x68\x75\x63\x58\xc0\x06\x3e\xe2\x5d\x3d\xfe\x7b\x02\x6a\xde\xb1\x9e\x97\x58\x1c\xa9\x79\xd7\x51\x7e\x8e\x10\x9d\x1c\x2d\x73\x7c\x34\xc1\x78\x71\xa4\x32\x9e\x1e\x4d\x39\x9b\x1f\x29\xeb\xbd\xc7\xce\xa0\xa2\x3d\x37\x78\x8a\x87\xbd\x91\xbe\xfb\x7e\x9a\xa6\x2e\x52\xd0\x40\xa4\x78\xd8\x1f\x25\x31\x55\x7f\xa1\x7c\x7c\xea\x52\x1e\xdc\x8e\x97\x9c\x63\x2a\xfe\xa6\x1a\xe1\x2a\xc5\xea\x4d\x22\xe0\x32\xc7\xaf\x31\x5e\x9c\xc8\xa1\x25\x34\x18\xcc\xb5\x39\x5d\xf6\x2f\x5a\x2c\x30\xdd\x38\x4b\x51\x48\xa4\xdc\x34\xae\x18\x91\xe2\x9a\x0a\x2d\xc6\xd4\xff\xb4\x1a\x66\x6c\xf3\xe8\x4f\xf9\x82\x63\x34\xf9\x5d\x03\x3f\xed\x18\x53\xed\x81\x03\xff\x43\x84\xbd\x2a\x75\x94\xf7\x45\x8d\x26\x65\x40\x33\xfe\xd0\xa8\xd1\xbc\x19\xd6\x8c\xdf\x19\x35\x9a\x97\x31\xcd\xf8\x9d\x51\xa3\xf9\xf6\x91\xcc\x38\x18\xe8\xb1\xb9\xa8\xd1\x15\x26\xfb\x71\x82\x82\x31\x3b\xff\xbb\x06\x3b\x0f\x05\x7a\x2b\x7c\x86\xcb\x05\x66\x4f\x79\xb9\x3e\x3d\xa7\x0d\xa3\xe9\x70\x64\x89\x79\x99\x5b\x2b\x26\x60\x27\xa5\x8c\xc6\x43\x8a\x7f\x0e\xd0\xc9\x3c\x18\x7c\x0a\xf9\x1a\xb4\x7c\x2b\xb4\x37\x9e\x2d\xe9\xd5\x3e\x9e\xe2\x3e\x9e\xe2\x3e\x9e\xe2\x1f\x85\xb0\xfc\x11\x63\x2e\x2b\x34\x91\xb2\x75\xce\x07\xda\xb9\x14\x7d\x86\x44\xff\x1c\x63\x92\xf9\x91\x41\xbc\x7c\xce\x35\x8f\x70\x96\xd2\x98\xc3\x1e\x80\x28\xed\x95\x01\x99\x2d\xf2\x10\x40\xdd\x97\x59\x4d\x0a\x80\x6d\xb4\x5a\xb1\xe7\x7d\xb3\xe0\xc6\x39\x55\x23\xc6\x1e\x5c\xa6\x47\x7d\x98\x79\xd3\x40\x62\xf4\x84\x01\x70\x9c\x3f\x47\xc7\x20\x1b\x1e\x1e\x2e\x47\xa9\x30\x1b\x3c\x87\xf9\x61\xca\x9c\xce\x3a\xab\x84\x2e\xa9\xa2\xd7\xb8\xa1\x20\x57\xe1\x27\x9f\xba\xca\x2c\x56\x51\x28\xf9\xb0\x3f\x02\x05\xb8\xd7\x39\x6c\x3d\x32\xde\x2e\x63\xde\x1e\x1d\xef\xd1\xf1\x1e\x1d\x7f\xf3\xe8\xd8\x97\x28\x9a\x41\xea\xcd\xae\xac\x9e\x62\x0e\x06\x3c\x19\xf2\x11\xe8\x4e\x49\x26\xea\x28\xaa\x12\xd2\xb6\xcc\x72\x89\x95\x0d\xf4\x2e\xc8\x5f\xa3\xa5\x2f\x1c\x79\xf6\x6e\x34\xb8\xdc\x2d\xca\xf7\x5e\x16\xdf\xcb\xe2\x7b\x59\xfc\xfb\x97\xc5\x95\x24\x0e\x49\x4a\x25\xdf\xc5\x52\xea\xd2\x68\x94\x29\x37\xb4\x24\x6e\x1d\x4c\x63\xb6\x3b\xee\x5b\x0a\xfc\x78\xf2\x38\xa3\x02\x91\xba\x29\xe2\xda\x6a\xc6\x20\x86\x8e\xb3\xe5\xe4\xde\x8b\xbd\x3a\x49\xdb\xf3\x8b\xdf\x02\xbf\x48\x77\xc7\x58\x3b\xe0\x2a\x9f\x5f\xf4\xd1\xd5\x86\xfc\xe2\x4e\x88\xab\x3a\xd2\x6f\x9d\x5f\xa4\x8f\x86\x6d\x89\xce\x5b\xe8\x8c\xf2\x1a\xa9\xdc\x5e\xc4\x1c\x40\x1f\x81\x32\xff\xe0\xb7\xdb\x01\x61\xbb\xfa\x0a\x83\x01\x0e\xd9\xca\x72\xdf\xb0\x8d\xc4\x5c\x2e\x1b\x80\xed\x1e\x48\x34\xad\xd9\x11\xd5\x6a\xd4\xb7\x4e\xcd\xb0\xa1\x70\x2e\x24\x6d\xa8\x08\xe7\x42\x12\x09\xf1\x50\xe1\x7c\x82\xc7\x7b\xc1\xfc\x7b\x46\xb4\x7b\xc1\xfc\xdb\x42\xb4\xbf\x9b\x60\xfe\xb4\x96\x77\xc6\xd7\x5b\x9e\xcc\x17\xe2\x26\x26\xb2\x03\x24\xa5\x90\x5a\x3f\x71\x48\xd2\x77\xca\x78\x36\x26\x00\xb6\x49\xfe\x0e\xbd\x8b\x89\x5b\x10\x97\x9c\x46\xb9\x66\xa4\x7d\x00\xc9\xd1\x8e\x89\x86\xc7\x8f\x26\xa6\x4f\x38\x5b\xec\x31\xe2\x1e\x23\xee\x31\xe2\x1e\x23\xd6\x31\xa2\x95\xc2\x57\xab\x98\xa4\xc3\x11\x80\x36\xd1\x25\xdd\xcd\x53\x81\xb3\xc5\xa3\xe1\x35\x4c\x05\xdf\xc2\x08\x7b\x8f\xda\xf6\xa8\x6d\x8f\xda\xbe\x5b\xd4\xe6\xdf\xc2\xb4\xf8\xc0\x6c\x15\x83\x23\x62\x0e\x12\xbe\x0b\x42\xbb\xc2\x37\xf9\xa3\x21\x34\x7d\x47\x74\x74\x71\xb3\x9d\x52\x31\xd7\x46\xa2\x7b\xa5\xe2\x77\x88\xfe\xf6\x4a\xc5\x6f\x0b\xfd\x3d\xaa\x52\xb1\x62\xef\x08\x9f\x01\xc8\x52\x22\x79\x3b\x94\x92\x61\x7f\x04\xf3\x94\x0c\x9f\xda\xaa\x35\x1d\x62\xee\x02\x78\xd9\x37\x08\xa8\x48\xf0\x08\x22\x27\x0a\x57\x65\x65\x06\x56\xab\xea\x9b\x1c\x0c\x86\xca\xf6\xbb\x7e\x83\x8d\xc0\x20\xe0\x45\x8b\x42\xde\xb8\x28\x2e\x03\xdb\x63\xc8\x00\x08\xb9\xe5\x86\x74\xa6\xb6\x02\x44\xc1\x2a\x56\x69\x6a\x8b\x15\x30\xb7\x77\xf0\x74\x37\xb5\xa7\xae\xfd\xf2\x66\x5d\x3a\xfb\x1d\x73\xc2\xdf\x47\x0e\xf6\xec\xed\xf7\x8c\xdf\xf7\xec\xed\xb7\x85\xdf\xff\x70\x92\x7b\x15\x23\x53\xb0\x5a\xb5\x89\xc4\xca\xa4\xc4\x76\xbb\x23\xbb\x47\xe4\x7c\xe9\xa4\xc6\xf7\xee\x71\xdd\x1e\xd7\xed\x71\xdd\x9f\x12\xd7\x3d\xab\xe1\x3a\xc8\x52\x5e\x72\xb2\x0d\x94\x27\xd1\x9d\xbd\x47\x67\xa0\x2b\x71\xc9\xcb\x9b\x98\x42\xb2\x23\xe6\x93\xd5\x1f\x0f\xf3\x65\x72\xd9\x37\xf6\xe2\xdd\x63\xbe\x3d\xe6\xdb\x63\xbe\xef\x0c\xf3\xd5\xf0\xda\xdd\x26\x3d\x5e\xf8\x3b\x1b\x98\x80\xc6\x02\x80\x02\xc0\xe1\x08\x24\x78\x27\x9c\xa7\x91\xd0\x76\x48\x2f\x64\xca\x4e\x63\xa7\x8a\xad\xd9\xf0\x6c\x89\x15\x39\x9b\x1f\xed\xef\x77\xf6\xa8\x71\x8f\x1a\xff\x6c\xa8\xf1\x4b\xe5\x59\xda\xc2\x41\x30\x7c\x75\x24\x77\xc1\x89\x7f\x7d\x54\xc1\x67\x9b\xc5\xf8\xb0\x7f\x2f\x39\x5b\x2e\xf6\x02\xee\x1e\x97\xed\x71\xd9\x9f\x09\x97\x6d\xaa\xcc\x83\x2c\xbd\x2d\x4a\x8f\x98\x29\xe3\x27\x68\x3c\x0b\x99\x4c\xfb\x97\x1a\x14\x40\x9e\xb2\xa1\x18\x1d\xd4\x9d\x0e\x57\xab\x58\x1d\x52\xf9\x31\xe5\x00\x9a\xb3\xa5\x1c\x0b\x21\xdb\x05\xc5\x2a\x04\xf6\x88\x62\xf1\x0c\xe5\x47\x12\x43\x6c\x78\x13\x6e\xff\xea\x2a\x1b\xdf\x98\xdf\x51\x72\xd7\xe8\x4c\x8d\x20\xe2\x90\xae\xc3\xed\x44\xad\xa1\x89\x73\x89\xec\xd9\x34\x5b\xee\xc7\xa7\x9d\x8e\x4b\x3f\xee\x3e\x0e\x9f\x8e\x3a\x1d\xff\xe9\x80\xaa\x9c\x42\xc3\x11\x30\x77\x50\xea\xaa\x4c\x4e\x03\x90\xd0\x21\x01\x10\xa5\xed\x6a\x5e\x5d\x06\x31\x24\xce\xec\x1e\x95\x17\x81\xf6\xfa\x8e\xed\xa4\x38\x99\xa1\xfc\x1d\xfe\x2c\xb6\xbb\x1e\x0b\x6c\xf1\xb8\x07\x69\xd9\xd9\x32\x5a\x2d\x89\x45\xd7\x0f\x28\x05\x45\x57\xad\x08\x14\x5d\x3f\xa0\x54\x4d\xee\xd8\xee\xca\x4d\x6e\xbb\x05\xc7\x9f\x08\x5b\x6e\xea\xd9\x65\xff\x96\xd5\xfe\xf4\xdb\xcf\x4e\xc5\xef\xb1\x05\xdf\x9b\xb6\xbf\xe9\x6d\x48\xe8\xde\x85\x65\xcf\x29\xee\x39\xc5\x3d\xa7\xf8\x28\x2e\x2c\x87\x3b\x49\xdd\x84\x3e\x9e\x0b\x0b\xa1\x02\xf3\x1c\xef\x16\x72\xe7\xc1\x48\xf1\x2b\xb8\xca\x87\xd1\xee\x1e\x7b\xac\xc3\x1e\x7b\xdc\xb1\x35\xee\x68\x04\x40\x6c\xf1\xee\x1c\x2d\xee\x0c\x41\x53\x5e\x3d\x24\xc3\x51\x01\x40\x77\xc1\x16\x71\x38\x78\x8d\xed\xab\x48\x7b\xc7\xe2\xb9\xa5\xbf\xc7\xe2\xf0\xb0\xfc\x46\x25\xd5\x97\x88\x4b\x48\x11\xb7\x77\xcc\x9e\x13\x5b\x8e\x1d\x1e\x02\x49\x5b\x87\x6c\x94\xa6\x29\x06\xb7\x92\x66\x1f\x5c\x70\x8c\xae\x0a\x79\x12\xfa\xde\x16\x6b\xf7\x0d\xe1\x95\x98\x67\x27\xc6\xd0\xe1\x8f\x47\xc4\x58\x9f\xd8\xd5\xa3\x84\xc6\xd9\xa3\xab\x3d\xba\xfa\x96\xd0\xd5\x4e\xc7\x57\x1e\xa6\x75\x22\x9d\xd5\xf5\x7f\x38\xfb\xdb\xfb\x2e\xca\xb2\x83\xa6\x8d\xb4\x46\x88\x0a\x15\xa9\x38\x34\xdc\xc5\xa1\x81\x28\x65\x1a\xcb\xd5\xcd\x4b\xac\x59\xf4\xc0\x5b\xc9\x4f\x2a\x59\x34\xba\x07\x8f\x0a\x7e\xf3\x56\xf5\x38\xc6\xd0\xa4\x34\x3e\x28\xad\xdc\x7d\x73\xe5\xb5\x15\x91\xae\x58\x7c\x15\xc3\xe2\xff\x66\x64\x6f\x70\xb2\x97\x2f\xbf\x2f\x94\xbb\x97\x2f\xbf\x8e\x43\x70\x15\x1d\xd2\x52\xda\x8c\x60\x04\x20\xd1\xc9\xdf\x77\x33\x32\x96\x55\x1f\x8d\x21\xbb\xc2\x37\x7b\x53\x92\x3d\xd2\xdb\x23\xbd\x3d\xd2\x0b\xdb\x7b\x48\x04\xf1\x6d\xf8\x09\xcf\xd1\xde\x96\x64\x8f\xcc\xf6\xc8\x6c\x8f\xcc\xb6\x70\x0c\x53\xae\xba\x7e\x9c\x97\xbb\x65\x58\x6b\x62\x52\x80\xdd\x34\x6e\x73\xf4\x98\xe6\x22\x73\xb4\x8f\x70\xb5\x47\x87\x7b\x74\xb8\x47\x87\xdb\xa0\x43\x8d\x03\x77\x93\x5d\xe7\xe8\xf1\x02\x5d\x6d\x61\x08\xa7\x2d\x8c\x2e\xb1\x38\x22\x74\x82\x3f\x3f\x8a\x89\xd1\x3a\x04\x6b\x02\xd0\xea\x33\xbb\xab\x81\x11\x37\xb6\x8c\xc0\x4c\x6d\x35\x14\x04\x87\x58\xe7\xce\xb7\xe8\xec\xa8\x2f\x8f\x63\xbb\x7e\x45\xee\xa2\xca\xa7\x69\xca\x5c\x46\xf4\x17\x31\x07\x5d\xbd\xcf\x5f\x88\x98\x1c\xf6\x77\xda\x09\x72\x75\x1e\xe0\x39\xe3\xac\x8d\x78\xc8\xda\x88\xee\x64\x6d\xb4\xe5\xf6\x62\x3b\xc5\x87\x6c\x92\x4e\x70\x5b\xec\x34\x81\x8c\x2d\x52\x11\x9e\x40\x1e\x9c\x40\xe1\x0f\x96\x6f\x35\x58\xbd\xdc\x47\x68\x9f\xbc\x67\xcf\x2f\xec\xf9\x85\x3f\x27\xbf\x60\xb6\x52\x3d\xaa\xba\x3b\xb3\xf5\xdc\x67\x96\x5a\x08\x8f\x5a\xe0\x9d\x68\x85\xad\xfe\x40\x7a\x51\xcf\x6b\x46\xd7\xe6\x35\xdb\x8e\x12\xb0\x85\x6c\x05\x65\x7b\xdc\xb8\xc7\x8d\x7b\xdc\xf8\xa7\xc4\x8d\xeb\xf4\xe4\x81\x78\x6e\x7c\xc0\x03\x81\xd7\x5a\x78\x27\x26\xd0\xa2\x9e\x07\x0a\x55\x07\x1b\xe3\xba\x05\x59\x84\x52\xe8\x6f\xe2\xe9\x41\x16\x78\x23\xc1\xaa\x96\x32\xfe\x3e\xc1\xe9\x4b\x79\xbe\x8a\xae\xec\xe1\x81\x93\x27\xe4\xc9\x1c\xba\xa7\x91\x44\x4f\x5f\x47\x4e\xd5\x13\xb3\x5d\xe8\xd2\x05\x67\x73\x92\xe3\x6d\x82\x97\xae\x49\xa5\xa2\x02\x26\x88\x19\xa6\xea\x12\xa7\x92\x8f\xca\x33\xdd\xa9\x8b\xa1\xbd\xa0\x18\xda\x1b\x0d\xfc\x87\x64\xe8\x4e\x8b\x87\x44\x4a\x0b\xc8\x3a\xd4\xda\xd9\x83\x24\xed\x1d\x93\xe7\xe2\x98\xa8\xf3\x47\x46\x5e\x4b\xc4\x41\x0e\x47\x7b\x80\xc4\x1d\xac\x5e\x9a\xa6\x64\x20\xaa\x09\xb3\xa8\x1a\xab\xce\xeb\x62\xec\xbf\x77\x3a\x7f\xda\xc4\xea\x8d\x69\x39\xe5\x10\xab\x5d\xf4\x68\x3a\x8e\x2d\xbd\xae\xbe\x37\x3d\x07\x0c\x6b\x36\xee\x54\x66\xe8\xfd\xb0\x46\x99\x71\xb4\x9b\x32\xc3\x2e\xc3\x37\xad\xd0\xf8\xd7\x12\x2f\xbf\x3e\x22\xfa\x9a\x28\x85\xdf\x8d\x52\xb8\x45\x29\x7c\x0d\x4a\xd1\x66\x83\xde\x38\xee\xc5\x99\x71\xd3\x26\x91\xd7\x31\x4d\x01\x40\xd2\x7c\x79\x0f\xfe\xe2\x15\xfc\xc5\x03\xf8\x8b\x7d\x09\xfc\xa5\xd6\x5c\xa1\xad\x8d\xa3\x41\xf0\xdd\xe3\x39\x70\x44\x2f\xb7\xdb\x61\x2a\x37\x2b\x27\x79\x93\x0f\xd8\xc7\xe9\xfe\x0e\x64\xaa\x7d\x9c\xee\x6f\x4b\xa6\xfa\x3d\xe2\x74\xdb\x28\xdd\x65\x36\xd4\x61\x7f\x04\x51\x4a\x87\x4f\x47\x07\x28\x8d\x2e\x18\xcb\x30\x92\x02\x96\x41\x57\x72\xef\x9c\x4e\x55\x64\x6e\x64\xb2\x98\x0e\x95\x07\x20\x79\xce\x80\xed\xd6\x32\x45\x03\xd1\xcd\x04\x4e\xe4\xff\x30\x4b\xc9\xf1\x32\xce\x20\x03\xc7\xd9\xe1\x21\xc8\xf5\xd1\xca\xd4\x2e\x20\x3f\x96\xd5\xc6\xaa\xda\xa5\xaa\x76\x29\xe0\x34\x25\xc7\xe3\x78\x2a\xab\x4d\x8f\x8e\x6c\xb5\x69\xe9\xf5\x9c\xa6\x29\xeb\x74\x50\xa7\x63\x3e\x31\x00\xf3\x5d\xf0\xb4\xc2\x9c\x8f\x16\x42\x5b\x53\xa4\xbd\x3a\xeb\x7b\x46\xbd\x7b\x75\xd6\xb7\x85\x7a\xbf\xa5\xb0\xb2\xcc\xf2\xb4\xbb\x46\x93\xd5\xd5\x1f\x4d\x8a\xe6\x58\xdd\x6e\xee\x33\xc8\xec\xd1\xe3\x9e\x33\xfd\x36\xd1\xe3\x77\x95\x41\x26\x5f\xad\xe2\x5c\xd9\x9b\x3e\x24\x49\x4c\x7b\xa3\x24\x31\xed\x5d\xb2\xc4\xdc\x91\x24\x66\x37\x74\x2f\xab\x3c\x62\x8e\x18\x8e\x17\x78\x6f\xcb\xf2\x7d\x63\xf0\x3d\x83\xfb\x6d\x61\xf0\x3f\x9a\xed\x6b\x44\x55\x34\xa0\xa8\x5d\xd3\x2b\x48\x16\x97\x8c\x12\xbd\xa0\x5a\x29\x2b\xbb\x0c\x6f\x75\xef\x12\x5a\x80\x9a\x93\x80\xc3\x18\x64\xc7\x38\x1c\x1a\x5d\x3d\x22\x3b\xfc\x09\xf3\x7c\x2f\xff\xef\xd1\xe3\x1e\x3d\xee\xd1\x63\xc5\xed\xb3\xca\xba\x72\x30\xf0\x6e\x51\x6d\xdc\xa4\xae\xc1\x1f\x31\x48\x86\x7c\xb4\x1b\xbe\x53\x00\x1e\x0d\xe1\xe5\xb3\xe5\x74\x9a\xed\x11\xde\x1e\xe1\xed\x11\xde\x9f\x13\xe1\xc9\x96\x14\x04\x28\xa5\xfa\x18\xa7\xd8\xa1\x33\x60\x9a\x51\xad\x88\xd4\x17\xbe\xab\x8c\xa1\x00\x9d\x8e\x58\xad\x7e\x46\x62\xd6\xe5\x88\x4e\xd8\xfc\x98\xfc\xd8\x3f\x06\x3c\x55\xaf\xa6\x19\x93\x00\x62\xf0\x3f\xc8\xd1\x91\x64\x39\xf1\x90\x8c\xa0\xfc\x4f\xf5\x0b\xca\xff\x52\xea\xcc\x02\x76\xc1\x9b\x06\x8f\x7d\x21\x33\x69\x2f\xee\x93\xe7\x11\xe6\x02\x61\xb2\x4e\x27\x66\x29\x81\xa4\x91\xf8\x56\x4f\x3e\x03\x03\x1a\x33\x48\x40\x32\x64\xa3\x87\xd8\xa5\xa8\x85\x78\x8c\x90\x70\xc4\xc5\x6c\x63\xea\x7f\xba\x6b\x44\xb2\x7c\xc1\x31\x9a\xfc\xae\x47\x67\x47\xaa\xf4\xc0\x81\xff\x21\x10\x47\x49\x19\x4c\x4c\xbf\xb5\x24\x81\xec\xae\xe4\x35\x32\xe2\xf6\xaa\x5e\x18\xd2\xf3\x0e\x2a\xe4\x20\xf9\x02\xda\xdd\x81\x1e\x5b\xa2\xcf\x66\x51\x51\x5f\x3e\x12\x5a\x65\x5f\x25\xa6\xa2\x03\x8f\x6a\x7a\xd8\x92\x01\x85\x2c\x25\xd5\xe0\x74\x6c\xb5\x8a\x99\x52\xa8\xc6\x34\x65\xa6\xa4\x15\xde\xa1\x88\xc9\x6e\x72\xb9\x02\x93\xa2\x30\xb6\xcd\x83\xd8\x16\xf9\x78\x30\xdf\x0e\x0f\x32\x5e\xbf\xa3\xda\x73\xa9\x7b\x2e\x75\xcf\xa5\x7e\xd7\x5c\xea\x57\x49\xec\x85\x3f\x0b\x4c\x27\xf1\xad\xc4\x36\x4b\x81\x93\x26\x0b\x68\xf9\x5f\xa5\x1b\xd5\xc8\x14\x92\x54\xc4\xbc\xa2\x0f\x88\xd7\x73\xc3\x04\xac\x56\x55\x86\x90\x00\x75\x46\x53\x62\x39\xc5\x1c\x8b\x58\xcc\x48\x0e\x23\xb5\x12\x11\xa4\xcd\x2f\x12\xe9\xc9\x51\xe7\x11\xe4\x25\x87\xa9\x8d\x0d\xb8\xbb\x4b\xab\xcd\x8e\xae\x3a\x66\x54\x60\x2a\x22\x28\xf1\x7e\xd0\x11\x67\x93\xca\xba\x8c\x99\xa8\x49\x57\xf6\x27\xb6\xfd\xe5\x00\x24\x0f\x85\xe1\x8d\x10\x00\x28\x2b\x76\x4d\xbd\xa2\xd8\xdd\xd2\x56\xa0\xdd\xa2\x28\xef\x09\xc5\x9e\x50\xec\x09\xc5\x37\x49\x28\xb6\x0d\xed\xe2\x07\xb5\x32\x9c\x33\xdc\xed\xfa\x5e\x22\x9b\x47\xd3\xd5\x0a\x76\x79\x99\xed\xe8\x82\xa8\xeb\xfe\xb1\x9d\x10\x75\x1f\x7f\x07\x37\x44\x3b\x39\xfb\xd0\xfb\x7f\x46\xdc\xba\xc7\xac\xdb\x67\x0a\x69\xda\xc5\x9a\xad\x50\x86\x98\xf0\xe6\x54\xbb\xbd\x95\x96\x53\xc4\x38\x2a\x36\x73\xb8\x59\x67\x40\xd6\x55\x5e\x9a\xa7\x53\xd9\x16\x4f\xab\xbb\x59\x37\x70\xd4\x4f\xf5\x90\x0f\xe5\x0f\x3c\xe8\x25\xe2\xb0\x5f\xc4\xcc\xba\xbf\x89\x5a\x7c\xfe\x5c\x37\x0c\xd9\x90\x8f\x40\x11\xfc\xd4\xc6\xbb\xb9\x92\x69\xfc\xf1\x68\x74\x60\x49\x6b\xf8\x7f\xaf\x15\xde\x6b\x85\xf7\x5a\xe1\xbd\x56\x78\x9d\x56\xd8\xaa\x2c\x54\xde\x4d\xb9\x02\x63\x24\xaa\x2a\xe0\x40\xc2\xa6\x8a\x27\x2e\xf7\xf0\xb1\x44\xbb\x3b\x5a\x73\x29\xcc\xf5\x68\x5a\x63\xd5\xf4\x3e\x84\xff\x5e\x17\xf0\x7d\xf1\xab\x7b\x5d\xc0\xa3\x2b\x8d\xef\xb6\x17\x08\x67\x07\xd0\xd8\x47\xe7\x07\x00\xbb\xab\x33\xaf\x89\x98\xb1\xe5\x76\xd1\x5c\x09\x1d\x67\xcb\x09\x6e\x44\x24\xd9\xbb\x67\x7d\x07\x18\x6f\xef\x9e\xf5\x6d\x61\xbc\x47\x75\xcf\x2a\x59\xb6\x76\xbb\x6e\xb0\xda\xe9\xc4\xf5\xac\x9d\x72\x13\xe8\xc6\x07\xbc\x19\x8c\x45\xa5\x82\x6f\x20\x85\x75\x91\x61\x4a\x73\x58\x28\xa5\x46\x0a\x31\x18\xf0\x84\x1b\x76\x33\xa6\xa0\x00\x70\x38\x02\x7e\xf0\x21\x83\xdb\xe4\xd1\xdf\x05\x6f\x9b\xea\x0f\x4e\xdc\xce\x2b\xa1\x31\x49\x2c\x86\xbd\x11\x14\xcd\xd0\x98\x9b\x39\x5a\x99\xf0\x52\x5b\x69\x67\xd1\x62\x81\xe9\x64\x93\x92\xe3\xd9\x92\x5e\x6d\x54\x90\xcd\x17\x68\x2c\x36\x2d\xba\x14\x77\x2a\x87\xcb\xa2\x54\x20\x42\x37\x1a\xd4\x04\x8f\x37\x2a\xc6\xd9\x62\x93\x72\x5a\x42\x51\x56\x20\x9b\x16\xde\xac\x24\x9d\x6c\x0a\x34\x93\xb8\x85\x6e\x52\xf4\x92\xb3\xe5\x62\x43\xb0\x33\x94\x1f\xe9\x80\xed\x9b\x95\x2d\x03\x9f\x6d\x92\x54\x76\xa3\x35\xf0\xb2\x65\x6f\x9e\xa8\x76\xd3\xb4\x91\x9b\xa7\x27\xda\x30\x6d\xc7\xa6\xf1\xef\xb7\x8a\xed\xbd\x4d\xac\xdb\x2d\x63\x45\x3e\x3c\x40\x64\x33\xe6\xdd\xc6\x31\xcd\x36\x0e\x4d\xb5\x79\x6c\x94\xad\xa2\x0a\x6c\xee\x91\xba\x85\x77\xd6\x16\x7e\x0d\x1b\x1b\xd9\x6e\x61\x85\xb6\xa9\x11\xc2\xd6\x57\x7a\x5f\xe2\x1e\xaf\xa6\x25\xde\x5c\xc2\x68\x5c\xf4\x41\x0a\x09\x64\x10\xc1\x1c\x2e\x61\x06\xc7\x70\x0a\x27\x70\x06\x17\x70\x0e\x3f\xc1\x1b\x78\x09\x2f\xe0\x39\xbc\x86\x27\xf0\x14\x9e\xc1\xcf\xf0\x05\xbc\x82\xef\xe1\x07\xf8\x11\xbe\x82\x3f\xc3\xff\x86\x6f\xe1\x6b\xf8\x0e\xfe\x04\xdf\xc0\xdf\xe0\xcb\x87\x5e\x1a\xae\xad\xf0\x42\x91\x4e\x4d\xe3\x23\x78\x8b\xe9\x72\xae\x39\xb8\xa4\xdd\x83\x97\x58\x04\x52\xe7\x3a\xa6\xa5\xb8\x0b\xf0\x2b\x49\x69\xb7\x82\xcb\x37\x83\xab\x09\xf3\x56\x90\xe9\xc6\x90\x97\x02\x6f\x05\x99\x6c\x08\x59\x93\xfd\xad\x40\xb3\x8d\x40\xbf\xc6\xe3\xad\xa0\xa2\xcd\xa0\x72\xb6\xd8\x0a\x6c\xbe\x11\xd8\x37\x8a\xad\x78\x79\xb3\x15\xe8\xe5\x16\xa0\xb7\x02\x9c\x6d\x08\x98\x4e\xb6\xec\xf1\x78\x33\xc0\x9a\x1d\xda\x0a\xf2\x74\x23\xc8\xff\x29\xb9\xa7\x2d\xfb\x3c\xd9\x08\xf2\x5f\x50\xfe\x0e\x7f\xde\xee\xf0\xcd\x36\x85\xfc\xde\x50\xe7\xad\xa0\x2f\x36\x82\xfe\x96\x6e\x77\x4a\xe6\x1b\x42\x35\x6c\xdf\x56\xb0\x3f\x6d\x08\x5b\x72\x89\x5b\x01\xbe\xd9\x08\xf0\xff\x61\x64\xbb\x3d\x77\xb9\x11\xd8\x9f\xd1\xb6\x3b\xee\x62\x53\xb8\x5b\x41\x3d\xdf\x08\xea\xd6\x9b\xf8\x7a\x23\xb0\xa7\x26\x1a\xf0\x56\xa0\x4f\x36\x03\x6d\xb8\xe7\xad\x40\x9f\x6e\x04\xfa\x3d\x59\xe0\x17\xaa\xe6\x56\xc0\xcf\x36\x06\xbe\x15\xd8\xcf\x9b\x81\xdd\x05\x57\xbc\xd8\x08\xf4\x7f\x49\xc6\x7f\x2b\xb8\x57\x1b\xc1\xfd\x20\xe5\x84\xad\xe0\xbe\xdf\x0c\xae\x12\x2b\xb6\x02\xfc\xc1\x03\xbc\x9e\x97\xfc\x60\x62\xeb\x6c\x05\xfa\xe3\x86\x7d\x96\x32\xcb\x56\x80\x5f\x6d\x08\x58\x89\x38\x5b\x41\xfe\x79\x23\xc8\x67\x5a\x22\xda\x0a\xf2\x7f\x6f\x06\x59\x0a\x50\x5b\xc1\x7d\xbb\x19\x5c\xc6\xb7\x5d\xbd\xd7\x1b\x01\xfe\x88\xb6\xa4\x4c\xef\x36\x03\xab\x64\xb3\x1d\x30\xd1\x4f\x5b\x80\xdf\x0a\xf0\x9b\x8d\x00\xff\x42\xb7\xed\xf0\x6f\x1b\xc1\xfd\x55\x0b\x96\x5b\x41\x7e\xe9\x41\xde\x48\xdd\xda\x08\x96\xbd\xe1\x75\xff\x0e\xfa\xe6\x4c\xe0\xa0\x25\x5a\x0b\x3f\x4f\x45\xa1\x0a\xac\xfb\xae\x3e\x5f\xae\xad\xff\x63\x6a\x0a\xac\xfb\x2e\xa7\x63\xe3\xc9\xf0\x92\x1c\x7c\xf9\x98\x8e\x0f\xb8\x5f\xf5\xef\x10\x20\xd5\xda\x77\x92\xf2\x03\xda\xe9\xc4\xd6\x48\xee\x45\x8c\x41\x77\x4a\xe8\x24\x94\x69\xb8\x16\x8a\x5e\x41\x29\x00\x00\x15\x75\xbf\x82\x60\xad\x55\x48\xe9\x07\xf9\x63\xda\x1b\xb0\x84\x2e\xb3\x6c\x9b\xb9\x74\x57\xa9\x5f\x6f\x5b\x35\xa7\xc7\xcf\x14\x82\xbb\xb6\x0b\xab\x95\xba\x9f\x53\x82\x38\xbc\x2f\xde\xff\x8f\xfd\x01\x3f\xea\x27\x3d\x00\x49\xda\xf7\xe3\xfe\x1f\xf5\xc3\xc9\x44\xac\x41\x90\x4a\xe1\xbc\xcd\x04\xd9\x6d\xf3\x98\x13\xe4\x62\x16\xec\x9e\x25\xd4\xde\xd6\xff\x9f\xb3\xd3\x77\x5d\x7d\xd9\x4a\xa6\x37\xda\xbc\xa9\xf6\x4e\xd8\x4b\x2b\x92\xab\x54\x13\xe6\x42\xb2\xfa\x4e\x40\xbc\xed\xbc\x69\xed\xf3\x23\xef\x2c\x63\xa7\xc7\xdc\x4d\x70\xc5\x75\x0d\x83\xd5\x2a\xb2\xb7\xa3\x81\xaf\x5b\x8e\xd0\xa6\xc8\xd8\x12\x0f\x99\xce\x3d\x02\x22\x5a\x97\xe4\xa2\xd3\x69\x98\x2f\xef\x98\xb5\xe3\xb6\x08\xe4\xc3\xaa\x4d\xab\x4a\xa8\x01\x3a\x9d\xbb\x8a\x28\x83\x04\x65\x8d\xbb\x66\x0d\x96\x02\x4f\x8e\x72\x71\x93\xe1\x27\xd5\xc7\xaf\xb5\xc1\x0e\x34\x82\x32\xd5\xae\xf0\x4d\xde\xb0\x28\x29\x2f\xb4\x6f\x0b\x48\xd3\xde\x31\x7d\x2e\xcc\xf4\x1d\xd3\xc3\x43\xc0\x87\x62\x48\x47\xa3\xd4\x0f\xaa\x29\xdf\x38\xac\xcd\x0b\x6d\x8d\x73\x8b\x28\x99\x23\x09\xfa\xad\xba\x70\x27\x8c\xbe\x62\x4b\x2a\x24\x23\x71\xc1\x3e\xbf\xc9\xf0\x67\xef\xa7\xd2\x1f\x99\xe7\x53\x3e\x21\x14\x65\xee\xd5\x98\x65\xcb\x79\x59\x79\x6a\x6a\x4e\x75\xb5\x6b\xfb\xfb\x3d\xcb\x89\x20\x9f\xb0\x7d\x3e\x9b\x71\x42\xaf\xec\xd3\x3b\x7c\x89\xfc\xaf\xa7\x7c\x82\xb9\x62\x6a\x38\x99\x7c\xd0\x50\xe4\xcf\x57\xaa\x31\x55\x8a\x51\xf1\x2b\x26\x97\x33\xd5\x6a\x46\x28\x56\xd6\x0f\xf6\xe1\x2f\xee\x13\x5b\xa0\x31\x11\x37\xea\xa7\x85\xca\xf8\x62\x86\x68\x2e\x7f\x0a\x74\x71\x46\x7e\x53\x0d\x5f\x93\x09\xbb\x56\x2f\x7f\x7b\x2b\xc9\x9d\xfa\xc5\xd8\x5c\x35\x47\xb2\xec\xb4\x84\x94\x0b\xb6\xa8\x3c\x72\x76\x85\x5f\xa3\x7c\xc6\xa6\xd3\x1c\x8b\xf2\x5d\xa3\xd0\xaf\x64\x22\x66\x72\xb9\x8d\x29\xfb\x30\xfa\x15\x5f\x5c\x11\x11\xc1\x68\x2e\x0f\xf3\xcf\xec\xb7\x08\x46\xa7\xd1\xe8\xa0\x6a\xe6\x6a\xa9\x8a\x24\xc6\xd5\x90\x80\x0e\x75\x37\x0c\x60\xaa\x2e\xae\x2e\xbd\x66\x14\x19\x63\x17\xe1\xae\xe8\xf3\x77\xe8\x5d\x2c\x71\x70\x4f\xfb\x00\xd0\xee\x0c\xe5\xa7\xd7\xb4\xdc\xb5\xa0\xd3\xa1\x43\x3c\x1a\x44\xd1\xa1\x48\x9a\xd6\x34\x42\xd9\xbb\x88\xae\xe0\x64\x1e\x03\x00\xf9\x61\xb4\xf8\x1c\x81\x42\xa2\xf1\xa1\x18\x81\x70\x88\x6f\x0e\x06\x92\x7f\x30\xd4\xc0\x18\xda\x4c\x50\x3e\xc3\x9c\xfc\x86\x63\x01\x0e\xa3\x24\x3a\xe4\x45\xd0\x9e\xb6\x54\xe6\x2f\xb3\xac\x9d\xa6\x58\x16\xfb\x6f\x46\x68\x1c\x1d\x47\xa0\x10\x31\x05\xdd\x29\xe3\x27\x68\x3c\xab\x56\x23\x81\xd7\x02\xdc\xd2\x61\x98\x57\x3c\x14\xdd\xf1\x0c\xf1\x17\x22\xee\x81\xae\x60\xbf\x2c\x16\x98\xbf\x42\x39\x8e\xc1\xa1\xe8\xe6\xcb\x0b\x3d\x15\x71\x5f\x0f\x16\x8c\x52\x39\x4f\x05\x50\xb6\x0e\xca\xa8\xea\x00\x3b\x7f\xdd\x33\x89\x3f\xd2\x18\xa5\x4d\xc3\xb7\xe1\xe8\x40\x2d\x6e\xb0\x6f\xc6\xcc\x8a\xc5\x6a\x32\x1d\x68\x9a\xf2\x72\xc4\xce\x80\xc5\xe2\xd3\x7e\xa7\x13\x1d\x47\xed\x34\xa5\x76\x00\xd4\xe5\xe8\x06\x9d\x4e\x4c\x0f\x53\x59\x0f\x56\x66\x7f\x26\xe6\xd9\x19\x9a\xe2\x98\x82\x02\x7a\x38\xdb\x62\x9e\x26\xde\x86\x22\xb5\xe6\x2f\x06\x25\x61\x85\x8b\x24\xde\xf1\xf0\x38\x1d\x55\x9c\x37\xec\x8c\x84\x62\x5b\x22\xc3\x3a\x29\xd7\xe7\x21\xd7\x7f\x05\xd0\xe6\x23\xee\x9e\x65\x61\xf6\xa6\x29\x4c\x54\x06\xa3\x7b\x51\xf9\x9d\x7c\xfc\x7a\x94\xff\xd5\x48\xa7\xa8\xee\x8d\x50\xff\xa9\xce\xd6\x35\xbe\x39\x9a\xe0\x31\x53\xd6\x51\x41\xab\x98\xff\x47\x57\xf0\x0a\x69\x06\xc0\xbd\xf0\xc6\xea\x60\x86\xde\xf9\x20\x32\x94\x9b\x9c\x6d\xa1\xfb\xcc\x75\x06\x90\xc4\x67\x29\x3d\x82\x66\x6c\xda\xcc\x9b\x4b\x2c\x3c\x1c\xa3\x0d\xc0\x72\x9b\xaa\xe5\xae\x32\x12\x8c\xf2\x66\x4c\x69\x13\x31\x94\x47\x37\x08\xe2\x35\xce\xc7\x9c\x2c\x04\xd3\x24\xb5\x5b\x0a\xd1\x52\xf2\x81\xfa\xa4\x99\x3d\xa5\xe4\x21\x47\x39\xab\x08\xb9\x94\x28\xfa\xc7\xe2\x79\xfd\x50\x1c\x8b\xc3\x43\x3b\x7e\x8d\x9f\xca\x93\x20\x7c\x8e\x46\x28\x8e\x46\xfc\xdb\xd3\x01\x31\xd3\x12\x73\x00\xdb\xbd\x35\x88\x00\xe9\x99\x97\x58\xa0\x00\x20\xb9\x67\x84\xf9\x20\xb4\x33\x09\xce\x63\x0c\xef\xab\x1a\x73\x00\x12\xaf\x4f\x6b\x3a\xb4\x6e\xeb\x8b\xfb\x1a\x88\x39\x14\x0a\x93\x15\xce\xfe\xd5\xf7\xbc\xa8\x78\x4b\x88\x16\xa1\x2d\x1c\x1c\x8c\x6e\xcb\x9c\x2d\x0e\xab\x2a\x91\x31\xa3\x53\x72\xb9\x74\xcf\xd7\x9c\x08\xf3\xbb\x00\x89\xc4\xa5\x29\x87\x5e\xbb\xf9\xde\x6e\xf7\xdb\xb1\xdb\x5d\xfe\x69\xec\x76\x97\xdf\x85\xdd\xee\xf2\xd1\xec\x76\x33\x4f\x0e\xcd\xd2\x40\xb8\x16\xeb\x1c\x16\xe5\xea\x47\xfd\x83\x1b\x4c\x20\x13\x42\xcb\x6e\xc3\x50\x32\x83\x16\xae\xca\x9c\xb5\xe6\x2a\xdb\x2a\x4d\x53\xf7\xbe\x6d\x7f\x97\x1b\x78\x60\xfb\x96\xb8\x06\x41\xc5\x3b\x6d\xec\x29\x1f\x9a\x4d\x7a\x48\x6d\x5a\x1a\xe6\x06\xf4\x16\x81\xaa\x5d\x42\x89\x20\x28\x23\xbf\x61\x3e\xa8\x3c\xe9\xc3\x64\x62\x34\x26\xc1\xba\x97\x58\x0c\xd4\xff\xd5\xb2\x58\x23\x9a\x81\xf9\x6b\xbd\x06\xbd\xb4\xa4\xe3\x58\xd4\x1c\xf9\x1b\x9a\x95\x4c\x8b\x21\x86\xdd\xef\x74\xc6\x31\xee\x2e\x30\x9f\x32\x3e\x97\xcc\x37\x18\xa8\x94\xa7\x02\xe5\x57\x20\x2e\x3d\x13\xdd\x44\x4c\x62\x4f\x3b\xa1\xcb\x29\x29\x16\xf8\xbb\x74\x56\x21\x01\x06\xad\x60\x2a\xb8\xa2\x9a\x20\x98\x61\xd3\x12\xfa\x3c\x16\xeb\x42\x64\xb4\x4d\xaa\xd8\x21\x1d\xc5\x92\xf2\xd0\x51\x4c\x40\x01\xe4\xb1\x76\x4d\x2f\x4a\x61\xa0\xa1\x1b\xe9\x07\x75\x23\x7d\x9f\x93\xe8\x7b\xba\x11\xa3\x7e\x31\x5c\xdc\xaf\x44\xcc\xde\xab\x94\xba\xc0\x27\xde\x90\x42\xa2\x1b\x44\xcd\x06\x9f\x05\x1b\x7c\xe6\x37\xf8\x6c\x94\x0c\x47\x70\x99\xe6\x31\x82\x7d\x00\xb3\x74\x29\x87\x3d\x4e\x89\xbf\x65\xe0\x34\x25\x7a\xcd\xed\x42\x4f\x70\x86\x05\x6e\x55\x4b\xb9\x97\xaa\x28\x94\xa2\x0e\x8b\x6f\x0b\xc8\x01\xcc\x00\xc4\xf6\x91\x00\x78\x5b\xc0\x5b\xaf\x66\x32\x86\x7a\x47\x4d\x25\xfb\x66\x06\xb5\x93\x37\xe5\xda\x0a\x92\x05\x56\x99\x72\x77\x31\x2e\xc3\x5d\x4c\x95\xe5\xe8\x47\xbb\xdd\x52\xdc\xbd\xc2\x78\xf1\x13\x92\x58\xde\x7f\x3b\xe1\x6c\xe1\x3f\x73\x9c\x0b\xc4\x15\xc3\xe2\xbf\x16\xde\x6f\x0f\x76\x03\xac\x07\xb1\x09\xcc\xc0\xf1\xcd\xfb\xe7\xe9\x22\x9e\x82\x03\xf3\x61\xae\xde\x7d\x92\xef\xe0\xad\x57\x59\x6b\xaa\x9a\xf0\x3e\xa9\xf2\x37\xba\xbc\x6c\xd7\x16\x74\x7d\xb8\x51\x25\x2e\x75\x89\xb2\xab\xb6\x5c\xad\xf3\x97\xaa\xf4\x85\x2e\x6d\x86\x69\x8b\xfa\xa3\xbe\x50\xe5\xce\xd3\x45\x3c\xb1\x7d\xd7\x93\x73\xae\x3e\x5c\xcb\x0f\x9b\x0c\x40\x57\xba\x56\x95\x4e\x74\xa5\xd0\x28\x74\xb1\x13\x55\xec\x54\x17\xbb\x6f\x28\xba\xca\xa9\xaa\x72\xa6\xab\xac\x1f\x8f\x2e\x7c\xb6\xb1\x18\xe8\x89\x67\x5b\xca\x82\x7b\x57\xb6\xef\x8f\x25\xde\xbb\xb2\x7d\x5b\x2c\xf1\x57\x77\x65\xfb\x32\xce\xbb\x2e\x33\xbe\xc7\x4f\x7c\xc0\xff\x5a\x12\x8e\x27\x4d\xbe\x42\xca\xe3\x8e\xb3\x60\x29\x8f\x89\x76\xe8\x85\x28\xa5\x3e\xcd\xaf\xf1\x03\x95\x6f\xb5\x30\x87\x71\x14\x59\xb7\x37\x06\xa3\xae\x44\x7a\x67\xcb\xf1\x18\xe7\xf9\x74\x99\x45\x00\xc6\x8d\xcb\xa5\xf2\x02\x44\xc7\x4f\xbc\xb3\xbe\xe3\x41\xf1\xc0\xbf\x38\x89\x34\x5e\x05\x09\x1a\x20\x7d\x66\x24\x2c\xc7\x57\x02\xa0\x87\xba\x49\xa2\x7c\x87\xbb\x9f\x1c\x5d\x2c\xa7\x53\xcc\x8f\x16\x2c\x23\xe3\x9d\x02\xf0\x6e\x8b\x8c\x79\x20\x86\xd5\x3e\x4a\xd6\xef\x1e\x75\xe0\x9b\x0d\xfc\xf3\xc7\xc3\x58\x9c\x2d\x5e\x2e\xc5\x5f\x1d\xd7\xf5\x5e\x9d\x2d\xb9\xf2\x72\x5a\xb2\x53\x7a\xc9\x08\xbd\x94\xec\x55\xee\x3e\xc9\x4a\xca\xb0\x73\x52\x7d\xef\xf1\x62\xf6\x65\x25\x8c\x41\xdd\xa8\xe4\x18\x77\xd1\x58\x90\x4f\xaa\xc6\x5b\xb3\x12\x56\x8a\x7a\x8e\xbb\x73\xf4\xf9\x55\x79\xfc\x8f\xad\x24\x8e\xbb\xff\x72\x8d\x97\xb5\xf2\x19\x99\x8a\x58\x6d\xb9\xb6\x00\x17\x1c\xa3\xab\x83\x30\x7c\xc5\xaa\x08\x50\x14\x15\x9d\x7b\xa9\x87\xa8\xb5\x7b\x14\x6e\xcf\xdc\x06\xdd\x35\x84\x42\x63\xf1\x5b\xae\xf1\x7d\xfe\x0b\xbd\x60\x12\x6f\x4c\x3c\xe8\xea\x76\x73\x3c\xc3\x72\x71\x2a\x5a\x11\xf9\x5f\x21\xa5\xa4\x77\xf8\xb3\x78\xaf\x25\xf5\x33\x81\xc4\x32\x0f\x29\x4f\xe4\x00\x7e\xec\x0d\xa2\x5c\xa2\x66\x3c\x89\x92\xc8\x2c\x46\x54\x14\x07\xc1\x95\x61\xfa\x82\x2d\xbd\xd5\x0b\xfd\x01\xa3\x9c\xd1\x24\x22\xa2\x75\x81\x33\x46\x2f\x73\x79\x0e\x50\xeb\x07\xb9\xd8\x3f\xb4\x64\xcd\x96\x98\x21\xd1\xba\x46\x79\x0b\x65\xf2\x24\xdd\xb4\xf8\x92\x52\x89\x94\xd6\x8f\x00\xe2\x6e\xbe\x90\x18\xa7\x32\x3f\xb1\x8e\xaf\xeb\x35\x0c\x83\x93\x0c\x7b\xe1\xf7\xf6\x9c\x3c\x64\x7e\x94\xab\xaf\x9a\x9c\xf0\x76\xb6\x39\xeb\xef\x9b\x1f\x4f\x16\xaa\x4f\x93\x55\xb0\xc4\x00\x4f\x5a\xe8\x12\x11\xba\x66\xa6\x6c\xac\xe7\xc0\x56\x82\x34\xbc\xdf\x0f\x6a\x97\x2d\x0a\x4f\x42\x7b\x49\x99\x5a\xe6\x43\xa5\x3c\x99\xa3\xcf\x4a\x6b\xe3\xb6\x6c\x75\x83\x4b\x0a\xbc\xd9\x22\x71\xd8\x83\xe4\x41\xb3\xae\xc1\x9d\x3b\xdf\x51\xb5\x00\x6b\x51\x4d\xae\x46\xb1\xbc\x77\x0d\x4a\xa1\xf1\x0f\xba\x53\x8f\xfa\xc0\x6d\xb5\x10\xba\x5d\x4a\x3e\xe8\x0e\xc6\x47\x77\x40\x19\x28\x19\x33\x26\x6b\xa8\x14\xbe\x8e\xf5\xaa\x4a\xa9\xfe\xc8\x59\x51\x85\x8a\x28\xe9\xf6\x6b\x84\x56\x9d\xa1\x7c\x96\xe2\x2e\x47\x63\x2c\x37\x77\x96\x9d\x61\x21\x32\x3c\xd1\x0f\x55\xda\xc0\xf1\x25\xa6\x9a\x82\x7e\x58\x52\x41\xe6\x72\x97\xf2\xab\x98\x01\x48\xd2\xb1\x31\xc7\xf8\x70\xf6\xb7\xf7\xdd\xf7\x7a\x02\x60\x84\xb2\x2c\x82\x19\x08\x1b\x7b\x04\xe0\x5d\xf3\xba\xed\x87\x22\x42\xc7\x20\xbf\x26\x52\x2a\x95\x6c\x13\xfe\x94\x0a\x25\xdd\x82\xdb\x31\xca\x71\xab\x97\x94\x26\x89\x17\x7c\xb9\x10\x71\x64\x54\xab\x10\x83\x03\x55\xa4\x9f\xc8\x3f\x11\xa6\x93\xa8\x2c\x9c\x0b\xb6\x88\x41\x51\x00\xc9\xe3\xea\xe1\xd6\x38\xc8\x5e\x9a\x96\x04\xdf\x92\x1e\x47\xf8\x8d\x31\x80\xbd\x11\x3d\x3c\xa4\x56\xdb\x88\x87\x74\xa4\x88\x1c\x5a\xad\xda\x68\xc8\xbb\x37\x04\x67\x13\xb9\x35\x34\x23\x32\xaa\x04\x4c\xd4\x38\xac\xdd\x87\xcb\x14\xd7\x6c\x5f\xca\xb0\x41\x96\xff\xee\x8e\x39\x46\x02\xc7\xb7\x53\x9a\x30\x88\xf8\x65\x9e\x28\x73\x8c\xee\xb9\x42\x71\x65\x1e\x8f\x7e\x3b\x4d\x79\xf7\x5c\x8a\x18\x19\x96\xc0\x24\x0a\xc0\x2a\x7f\x72\xbb\x07\x20\xf7\x6c\x0d\xf2\x01\x89\x97\x20\x59\x36\x1b\x77\xe4\x56\xed\x99\x02\x80\xc2\x50\x24\x7f\xb5\xd5\x2a\x9b\x6d\xa3\x16\xbb\xb2\x8f\x2c\x8e\x0e\xef\x0f\xb9\xef\x4c\x1d\xb5\x05\x2d\x36\xa9\xc2\x97\x9b\x34\x82\xa1\x9e\x55\xef\xde\x9b\x96\x43\x76\x00\x43\x61\x4d\x56\x42\xb7\x28\xfe\x75\xc2\x38\xc6\x5a\xbc\xab\x4b\x21\xcc\xae\x2e\x91\x1b\xde\x06\x9f\x53\xc3\x99\xe0\x29\xe6\x31\x38\x50\x7a\x6f\x06\x94\x79\x5e\x9c\x77\x39\xce\x59\xf6\x09\xc3\xdc\x64\x6d\x06\x66\x70\xed\x3e\xf4\xb6\x1a\xb8\x5d\xae\x56\xf1\x32\x6d\xf7\x20\x0a\x1b\xf4\xc8\x55\x2b\xd9\x60\x36\x2d\x1d\x92\x07\x16\x31\xc7\xe1\xeb\x8a\x21\xef\x96\x68\xc9\xec\xbd\x4e\x27\xf8\x3a\x56\xd3\x03\x0a\x38\x4e\xf3\xae\x41\x60\x5d\xa3\xce\x89\xb3\xf2\x1a\x23\x54\x37\xcd\xe0\xb8\x28\x0c\x32\x59\xde\x23\x20\x62\x3a\x46\x8b\x7c\x99\x21\x81\x27\x0a\xf3\x6d\x89\x1e\xbf\x9a\xa9\x8a\x87\xeb\xfc\x03\x67\x13\x40\x9c\xcf\xd1\x15\x7e\x6b\x24\x88\xa4\x21\x91\x2b\x22\x64\x98\x09\x27\x6f\xfb\x86\x3e\xaa\x80\x3c\xb0\xa0\x80\xa6\x9c\xb6\x2e\xf7\xa5\x6b\x7e\xcf\xe4\x05\x28\xca\x5e\xae\xde\xcb\xd5\x7b\xb9\x7a\xa7\x58\xfc\xb9\x89\xd7\xf0\x4a\x47\xb0\xaf\x39\x9c\x94\x3a\x3e\x6a\xd5\x7b\x7a\x03\xf5\x6b\xe6\x9e\x7c\x49\xbb\x17\x84\x4e\x74\x72\x6b\x5f\x59\x47\xa6\x31\x0b\x5e\x99\xab\xa0\xd2\x77\x19\x1d\xfa\x23\xc7\x92\xdc\xf4\x8e\xf3\xe7\xf8\x38\x57\xa3\xcf\x7d\xc3\xc3\x5c\xb1\x1a\xa4\xd3\x31\x97\x8b\xba\xd3\xcb\x94\x9a\xbc\x5e\x54\x0b\xd3\xa5\xe6\x6f\x09\x6d\x49\x67\x9b\x24\xbb\x63\x70\x15\x83\x22\x46\xa0\x8c\xc2\xa5\xcc\xc7\x83\x26\xe4\x1e\x5a\xb2\xb6\x8a\x47\x73\x36\x21\x53\x82\x79\x7e\x34\x27\x9f\xc9\x9a\xa4\x03\x5e\x45\xcb\xea\x07\x6d\xf7\xea\xca\xc4\xaf\xc0\xfe\x1a\x12\x7d\x66\xbb\x51\xd9\x02\x3a\x04\x72\xf7\xdc\x5d\xba\xbd\x47\x62\x66\xed\xf7\xca\xf9\xe4\xb0\x51\xa6\xb4\x55\x3d\x77\x23\x2c\x1c\xe3\x59\x67\xe5\xf4\x28\xb5\x98\x91\xe0\xee\xb9\xff\x0c\xab\x72\xa0\xfc\x5c\x7d\x53\x80\x02\x62\x67\x2c\xfa\xb3\x9d\xff\x2a\xe7\x7e\x5b\x81\x99\xf0\x80\xb2\x01\xd6\xe0\x26\xfd\x27\x3d\x58\x1d\x96\x22\x57\xf0\x7c\x86\xf2\x5f\x72\x3c\xb1\x4d\x25\xed\xbe\x7a\x77\x86\xc5\x4b\xbf\x11\xf3\xfa\x84\x4a\x4c\x32\x39\xf9\x24\x37\xab\x7c\xe9\xdf\x55\x36\x2f\x97\x89\x26\x96\x7c\xad\xc0\x29\x87\x6b\xae\x17\xef\xa8\xdd\x1c\x1f\x28\xa0\xba\xf0\xbc\xa3\x52\x50\xc9\x00\x0a\xe8\xdd\x80\xde\x53\x3b\x20\x37\x82\xa2\xbe\x84\x21\xa3\x1b\xc9\x1b\xd4\x27\x56\x72\x84\xfa\x43\x15\x40\x8a\x21\xd3\xaa\x7a\xf5\xb9\x80\x2a\x78\xd8\x7a\xb0\x95\x35\x6c\x54\xc6\x72\x61\xf0\x24\x14\xf6\xc6\x76\xaa\xb2\x84\xb6\x57\x05\x9c\xe0\x8b\xe5\xe5\xda\x7a\xea\xab\x2b\x5c\x34\x6c\x67\x1d\x8b\x14\xd8\x3b\xb2\x1a\x0e\xce\x47\xed\x74\xa4\x02\x32\xad\x17\xa8\xcf\x51\x9a\xf6\x9f\xf4\x24\xdf\xdc\xf8\xd2\x07\xbe\x49\x24\x8b\xc1\x6d\x11\x3a\x3f\xc1\xa8\xab\x61\xcc\xf5\xd5\xfd\xb1\xbc\xb3\x2c\xd2\x5e\xe5\xf2\x1a\xdc\x8a\xc3\xc3\x0a\xcd\x24\x8e\x96\x1e\xf3\xe7\xe4\xf8\xf0\x90\x5b\x32\xa6\x28\x26\xeb\x9e\xe7\x18\x53\xe5\x01\xf2\x5c\x74\x3a\xb1\xff\x22\x15\x50\x0a\x3a\xa0\xa8\x25\x72\xf0\xdd\x0b\xe9\x72\xfe\x41\x6b\x6a\x20\xd7\x8f\xfa\xcc\x40\x5a\x71\xcb\x89\xd4\xae\x8c\xc0\x31\x3d\x06\x65\xd6\x04\x0a\xa3\xb2\x7e\x04\x85\x9f\xc5\x4c\x7f\xd3\xc0\x54\x0a\x33\x1f\x20\x75\x00\x0b\xdf\xcc\xde\x1a\x30\x19\x1e\x3d\x43\xb9\xd5\x78\xe1\x89\x46\x57\xea\x32\x4c\x22\x1c\xff\x85\xe9\x80\x57\xc2\x5d\x97\x95\xef\x5e\x69\xd1\x19\x97\x6f\x14\x7f\xe5\xc3\x79\xa5\x90\x94\xff\xe6\x2d\x1d\x57\xaa\x19\x4e\x5f\xfb\x0f\xf5\xa0\x52\x2e\xff\x05\xd1\x49\x86\xdf\x2c\xb3\x29\xc9\x4c\x7b\xde\x7b\x1d\x85\x40\xbf\x26\x94\x54\x70\x8e\x3e\x5a\xf9\x72\x81\xb9\x2f\x5a\x38\x66\xc0\x64\x45\x0b\xe8\x28\xd3\xe1\x48\x7f\x0b\x28\xc0\xd2\xe1\xa8\x80\x1a\xdf\xbe\xc8\xb2\x86\xd6\x53\x28\xdf\x0d\x59\x37\xa4\x7c\xc3\x6b\x9b\x84\xbd\xb5\x9f\xca\x9c\x1b\xf0\x3e\xc0\x61\x45\xde\xba\x4f\x1e\x60\x1e\x0b\x50\xc0\x00\xe4\xa4\x6e\xe5\x2f\x19\x3d\xbb\xc3\x59\xca\x8f\xd9\x73\x7e\x48\x8f\x0f\x0f\x9d\xc4\x2f\x86\x6c\x74\x80\xa4\x78\x6b\x76\x92\x75\xe6\x94\xdb\x16\x29\x46\xb2\xb2\x77\xf5\xab\xf2\x68\x1c\xf5\x01\x44\x56\x52\xc7\x00\x2a\x66\xcd\x58\x63\x28\x73\xbe\x42\x98\x29\xd0\x26\xf9\x61\x0d\x68\x3d\xdf\x5f\x65\xb3\x47\x10\x37\x33\x02\xfa\x9b\x2f\x82\xbe\x84\xaa\x5e\x1d\xf6\xfd\x2a\xb8\x39\x0e\x5c\x1b\x87\xac\xb0\x76\xe6\xd5\x78\xb0\x29\x70\x3e\xcd\x96\xf9\x4c\xd5\xca\x63\x50\x40\xff\x39\x09\xba\xdd\xc8\xfd\x99\xf6\x8e\xc5\xf3\x7b\xf6\xcc\xf1\xe1\xa1\x00\xd8\x5c\x10\xad\x29\x3a\x14\x23\x3d\xaf\x07\x6b\x8f\x43\xd8\x79\x7a\x38\x82\x5a\xec\xf0\x50\x28\x2d\x51\x28\xd1\x28\xb4\xdd\x4f\xd3\x94\x74\x49\xfe\x86\x50\x92\xcf\xf0\xa4\xd3\x11\xba\x43\xc4\x71\xd4\xa2\x58\xdb\x3b\x33\x45\x3e\x1d\xeb\xda\x05\xd7\xa4\xd9\x53\x31\x6a\x34\x90\xf6\x8e\xc9\x06\x13\xe3\x04\x96\xb5\x13\x43\x24\x01\xf0\xf7\x71\x6c\x50\x8a\x7c\xf6\x8b\xc6\x4c\xe2\x5f\x26\xa9\x90\x76\xcd\x32\x1b\x95\xda\x3c\x92\xd5\x7d\x68\xe0\x05\xf3\x52\x7a\x08\x57\x7e\x77\x83\x43\x69\xef\x18\x3d\xbf\xe7\x24\x1f\x1f\x1e\xa2\xca\x72\x07\x8a\x0e\x91\x5d\x6e\x49\x10\x1b\xed\x57\xbc\x81\xee\x99\x44\xb9\x55\x1b\x73\x11\xc0\x88\x9a\xe7\x33\x56\x86\x07\x65\x8b\xbc\x4a\xc3\xaa\x28\xa0\x5e\xcc\x4d\x0a\xf7\x88\xaa\x3c\x63\xd8\x69\x73\xbb\xe7\x8c\xbe\x21\x54\x59\x8d\x54\x5c\xc9\x36\x82\x75\xd4\xb7\xba\x11\xdc\xd0\x04\x7b\x9d\x16\x7a\x8d\x2c\xbd\x53\xa8\x44\x6e\x71\x3a\x68\x94\xf1\xcc\x4a\x20\x06\x49\xfc\x34\x5c\xcc\x10\x4a\x55\xe6\x99\xd6\xb0\x34\x9b\x33\xb4\xb3\x8e\xb9\xf4\xd7\x92\x8e\xca\xef\xb6\x80\x94\xb4\x99\xdc\x9d\x02\x8a\x0a\x8e\x01\x5a\x48\xdd\xc2\x4e\x45\x29\x15\x35\x4b\x71\x8f\x90\xaa\xef\x5e\xd6\x6b\x26\x73\x39\x9d\x56\xde\xdd\x4a\x3a\xde\xde\xe3\x8c\x4c\xe3\x76\x4d\x17\x0c\x40\x50\x09\xf4\x0a\x51\xca\x44\x6b\x8c\xb2\xac\x85\x5a\xe3\x0c\xe5\x79\x0b\xe5\x2d\xe4\xd4\x7f\xd1\x4e\x31\xb4\x9d\x11\xa7\x2d\x9e\x7a\xef\x2a\xd1\xb4\x21\x0a\xf2\x68\x2e\xe8\x25\xbc\x25\xb9\xab\xa9\x5c\x95\x8d\xba\xae\x29\x52\x44\xcf\xcb\x82\xce\xd2\x49\x23\x2e\x3b\xb7\xef\xd0\x1c\xc3\xe8\xc7\x48\x1e\xe0\xf2\x00\x9c\xf2\x77\xf6\x00\x26\xb5\xcc\xb2\x72\x8e\xfc\x73\xe3\x9d\x5b\x00\x49\x6e\x39\xc4\x5a\xad\x0b\xc6\xb2\x38\x0a\xb7\xa0\xea\x99\xc6\xda\x7d\xb5\x19\xcb\x99\x41\xc1\xb9\x63\xe1\xb7\x8e\x3a\xb5\x70\x0c\x6e\x8d\x84\x89\x41\x01\x95\x9d\x9a\xd6\xc4\xbd\xc8\x73\x72\x49\x41\xcc\x4a\x85\x27\xa4\x4d\x39\x26\xe8\x31\xba\xfe\xea\x71\x93\x93\xf0\xc5\x15\xf0\x97\xd8\xd2\x07\x8b\x71\xd3\xa6\x54\xc9\x87\xee\x72\xbc\x3f\x2a\xa4\x70\x44\x26\x1a\x85\xa8\x3c\x6a\x97\x2c\xcd\xa1\xbe\x3f\x6c\x38\x1f\x8b\x07\xfb\x1b\xb4\x02\x2c\xcb\x7d\x11\x55\x80\x21\xdb\x2e\x92\x4a\x38\x8e\x4a\x5e\x9a\xde\x41\x0a\x95\x92\xb7\xf0\x44\x3f\xdc\x7d\x7f\xf2\xe1\xcd\xe9\x87\x9f\xcf\x3f\xfe\xfd\xfd\xc9\xf9\x4f\x6f\xdf\xfd\xf5\xe4\x75\xfd\xed\x2f\xef\xc2\xef\x5f\x9f\xbc\x79\xf1\xcb\x4f\x1f\xed\xb1\x5c\xf3\x35\x0a\xbd\x8d\xea\xa5\x5d\x1b\x51\xf0\x75\xa3\x7c\xb0\xb4\x2d\xeb\x5c\xc2\xab\x62\xa6\xe7\x65\x24\x4f\x85\x5e\x5e\x64\x34\xa7\x52\xd6\x44\x73\x5c\x04\x0d\x82\x6a\xd7\x31\xce\xf3\xdf\xe9\x30\xce\x96\x17\xf9\x98\x93\x0b\x3c\x49\xdb\x3d\x18\x6b\x0a\xae\x24\xcb\xe8\xdc\x46\x1d\x01\x60\x88\xad\x1a\x54\x78\x42\x55\x61\x8d\x84\xac\x9e\xdb\x28\xc2\x26\x24\x5f\xb0\x1c\xdb\xc7\x1a\x81\x4d\x7a\x50\x1e\x2e\xfd\x51\x5f\xd4\x8e\x60\xb5\x2b\x4a\x47\xc6\x97\xf4\x27\xa6\x2c\xf1\xa1\x56\x9a\xac\xd5\x9c\x55\x2c\x2c\x74\x9b\x86\x9d\x97\x78\x3f\x09\xaf\x23\x3c\xc7\x9f\x17\x78\x2c\xf2\x9f\x08\xbd\xc2\x93\xbf\x13\x9c\xa9\x76\xf5\x09\x54\x50\xb0\xa4\x18\x46\xe0\xcc\x3d\x49\xb8\xdd\x87\x24\x57\xe4\x44\xff\x74\xd2\x6e\x0d\x29\x22\x3a\x89\x23\xfb\x59\x23\xd3\x92\x37\x56\x58\xd1\x7d\x92\x80\x4a\xf6\x53\x83\xb5\x25\xf5\xd3\x1a\xc4\x4b\x99\x88\xab\x50\x15\xd9\x4d\xea\x86\xb4\x24\x7f\xcd\xd9\x62\x21\xd9\x8a\x5a\x97\xca\x66\xab\xfd\x83\x01\x0f\xfd\xba\x79\x6d\x09\x15\x0c\x94\x55\x92\xfc\x99\xa8\x2d\xe4\x35\x32\x30\xa6\x33\xde\x37\xdb\xca\x20\x9a\xda\xf6\xf4\xa7\xb2\x37\x83\xc8\x1a\xbe\x24\xd1\x35\x22\x42\xfe\x92\x48\xdb\xb5\x19\x18\xe3\xba\x71\x05\x86\x52\xef\x64\xa7\xd3\xae\x75\x40\x36\x76\xae\xfc\xed\x93\xbe\xe1\x7e\xd7\x69\xf5\x7c\xc9\xa1\x0e\x78\xb5\x8a\xeb\x9c\xb7\xdf\xb5\x76\xcf\x8a\x86\x56\xd6\x79\xcf\xd9\x18\xe3\x49\x2c\xba\x7f\x7f\x7b\xf2\xd3\xeb\x17\x2f\x7f\x3a\x39\x7f\x75\xfa\xee\xe3\xdb\x77\xbf\x9c\x40\xe3\x58\x67\xaa\x08\x4e\x2e\x2f\x31\x57\x47\x21\x8e\x72\x0b\x53\x09\x4b\x56\x91\x19\x62\x1f\x94\x68\x69\x85\xfc\x34\x8a\x0e\x15\x38\xc5\xb3\x5b\xb2\xa2\xc4\xbd\xa8\x34\x03\x8b\x60\x8c\x53\xe2\x72\xe1\x41\x91\x1e\xf5\xc1\x61\x4c\x57\xab\x28\x02\x87\x36\xd7\xbf\x38\xe4\xc0\xea\x4c\x9a\x77\xc1\x3b\x86\xfe\x89\xdc\x65\xbe\xb2\x8b\xc2\x9f\x17\x19\x19\x13\x91\xdd\x28\x2e\x0e\x4f\x22\x6d\x38\xb9\x66\x41\xcb\xcd\xd6\x54\x15\x54\x76\x8c\x4d\x8b\xcc\x53\x37\x1b\x9d\x8e\xfb\x59\x65\xa9\x56\xab\xe8\xf9\x92\x5e\x51\x76\x4d\x7f\x8c\x0e\x1a\x92\x95\x87\x90\x22\x18\xf9\x32\x53\xeb\x07\xc7\xa8\x71\x18\xfd\xa0\x06\x64\x4f\x47\xeb\x02\x8f\x91\xe4\x19\x22\x77\xcf\x84\x61\xd4\x6d\xbd\x61\xbc\x35\x67\x5c\xb2\xb7\x72\x2d\x14\xe2\x87\xad\x1c\xe3\xa4\x35\x13\x62\x91\x3c\x79\xd2\x60\x49\xe4\xa9\x78\x32\x61\xe3\xfc\x89\x62\x64\xc6\x25\xc5\x50\x57\xe5\x91\xd9\x1d\xfe\x71\x73\x7c\xa3\xdc\x7c\x67\x8c\xd1\xea\x06\x7c\xf1\xee\xd5\xc9\x4f\x50\x22\x43\x90\x18\x55\x86\x95\xbf\x14\x86\x7c\x26\xe9\xf3\xb9\xb2\xf8\xb0\x38\x58\x93\x8f\xfa\x31\x5d\x77\x16\x75\xdd\x80\xf9\x88\x53\xf6\xdf\x5c\xe0\x0f\xfa\x5e\xea\x75\xe5\x8b\x2a\x67\x6d\x33\xd4\xa9\x6d\x94\x6d\x2a\x0b\x55\x25\xb3\xbe\x01\x6b\x20\x95\x14\x37\xf4\x6d\xe0\xb7\x69\xae\xc9\x34\xcf\xad\xef\x0e\x93\xea\x77\x75\xc7\xaf\x5e\x29\x6a\x02\x40\x01\xc5\x0c\xd3\x84\xc4\x91\xfc\x1b\x01\xa8\xdc\x8a\xe4\xb3\xfa\x11\x01\x68\x8c\x4b\xe4\x2b\xf3\x33\x02\xd0\xcd\x76\x12\xf2\x40\x15\x90\xa6\x58\x2b\x75\x34\xc6\x3a\x3c\x84\xcd\xf3\x10\xf3\xf4\x99\xe1\xc5\xb4\x30\xd4\x30\x10\x04\x30\xf6\x6e\x29\xac\x36\xef\xe4\xdd\xdf\xba\xaf\x4f\x5e\xfe\xf2\x9f\xe7\x1f\x5f\x9c\xfd\xf5\x0c\x74\x3a\x63\x46\x73\x96\xe1\x6e\xc6\x2e\x43\x40\xa8\xe2\x48\xd2\x06\xb3\x02\xa9\x3a\x4a\x8e\x9b\xd5\xf7\x2d\xf5\xd3\x53\x9f\x71\xa5\xf3\x6e\x14\xe2\x38\x5f\x66\x42\x29\x56\xfa\x2a\xd3\x69\x03\xcb\xfa\x34\x5b\xe3\xd9\x7a\x09\xe3\x40\x47\x01\x48\x9e\xae\x83\xa1\x66\x2a\x5c\x1d\xeb\x4f\xb2\xfa\x33\xed\x3f\xb5\xb6\x44\xa3\xae\x4f\x68\x4b\x12\x60\x38\x27\xb7\xb3\xf9\xd2\x69\x39\x5e\xa1\x2c\xbb\x40\xe3\xab\x3c\xf6\x0b\xcb\x2d\x63\x4b\x68\x86\x48\x6b\x15\xeb\x95\xcc\x91\x2c\x95\x26\x15\xdd\x4d\xf5\x3c\xbb\x4a\x4e\x0b\xd6\xf8\xa2\x72\xfe\xaf\xf9\x56\x53\x78\x36\x8e\xd6\x5d\x23\x2b\x60\xf0\x43\x52\x35\x1d\xb8\x0f\x1f\x34\xba\xe4\xeb\x53\x25\xe5\x5a\xd7\x73\xa3\x5a\xc3\xcf\xc5\xf1\xe1\x21\x06\x6b\x8a\x0d\xf1\x28\x36\x1a\xd4\xc0\xcc\x28\xd3\x25\xaf\x87\x1f\x67\x9c\x5d\xff\x42\x67\xea\x0e\x43\xe9\xe7\xd4\x8e\xfa\x09\x09\xd9\xe3\x02\xde\x5f\x2a\x6c\x53\x75\x10\x60\xe1\x57\xab\xa7\xed\x35\x68\xcb\x9e\x65\xbe\xa4\xa5\x52\xd5\x33\xd3\x40\xe3\xab\x8b\x25\xa7\x98\x6b\x45\xa2\xa4\x71\xf9\xf0\x9e\xef\xa5\xdc\x59\x61\xb0\x70\xa3\x57\x34\xc6\x06\xfd\xd9\x6e\x28\xfc\x6e\xb0\xa3\xfd\x56\x48\xe4\xb8\x66\x57\xfb\x73\x60\x4d\x5e\x43\xc3\x34\xa6\xaf\xfd\x24\xc8\x1f\x69\x53\x6e\xc7\x21\x1d\x68\x4f\x0b\x55\xe3\x69\xb0\x06\xb6\xfa\xba\xd2\x52\x4d\xf7\xd5\xaf\xfa\x2c\x58\xd5\xb1\xbc\x5e\xdd\x0a\x96\x2c\x0a\x27\x29\x05\xf7\xb7\x95\xa2\x2a\x86\x74\xee\xed\x41\xf5\x51\xeb\xc3\x71\xac\xa0\x92\xfc\x3f\xad\xfd\xf0\x6b\x46\xf1\x1a\x9b\xbc\x73\x67\x64\xac\xf5\x9e\x46\xa5\xf4\xfa\xf4\xdd\x89\x92\x2a\x57\xab\xe8\xe4\xc3\x87\xd3\x0f\x27\xaf\xd5\xa3\x3c\x9a\x38\x5f\xce\xb1\x83\x5d\xa3\x44\x82\xdf\xd8\x78\x65\x7a\x76\xb5\x86\xd5\xb6\x25\xac\x89\x60\x0c\x86\x62\xa4\x22\x39\x55\x7b\xa1\x5c\xed\x53\x6a\x22\x01\x50\xe5\x9f\x3b\x08\xf5\x34\xd5\x7d\x4c\xc2\xdf\xfe\xf2\xe2\xec\xfc\xe7\xd3\x0f\x27\xe7\x7f\x7b\xf1\xd3\x2f\x27\x67\x91\x71\xdb\x25\x16\xcb\xd5\xda\x23\x30\x0c\xc6\x0e\xbd\xf4\xf1\x55\xc5\x9a\x32\x63\xa7\x13\x87\x00\x77\x3a\x41\x09\xdf\x71\x15\xd5\xd2\x5d\x5f\x60\x5d\xad\x2c\x79\xbd\x46\x9c\xc6\xd1\xdf\xd9\xb2\xb5\xb0\xf7\x59\x2d\xd4\xea\x66\xaa\xf5\x18\xb4\x24\x31\x6d\x99\xb4\x43\x2d\x32\x9f\xe3\x09\x41\x02\x67\x37\x2d\x65\x57\x4d\xe8\xe5\x13\xbd\xa8\x84\x5e\xb6\x88\xe8\xb6\x3e\xce\x48\xde\x22\x79\x4b\x73\x89\x92\x81\x5e\xd2\x7c\xb9\x58\x30\xc9\x00\xb6\xe2\x8b\xa5\x68\xcd\xc9\xe5\x4c\xb4\x2e\x70\xab\x7c\x4f\x68\x6b\xba\x54\x0e\xb3\x9f\x30\xcf\x95\x71\xc0\xb4\xd5\xe0\x38\x41\x37\xb2\xf8\xb7\x39\x49\x69\xbb\xaf\x42\x6c\x69\xc3\x72\xe8\x6f\x87\x75\x22\x95\xd5\x29\x58\x22\x64\x9f\x53\x8b\x5b\x4b\xa3\xd3\xd8\x72\xb3\xb6\x8c\xc2\xaa\x61\xa3\x54\xbf\x89\x29\xf5\x2e\x8b\x55\x48\x60\xfc\x59\x54\xec\x51\xcf\xd1\xe4\x93\x3c\xb3\x3a\x2e\x64\xcd\xde\xd3\x63\xb7\xe4\x01\x31\x16\x89\x87\x87\xde\xfb\x02\xfa\x0c\x75\x98\x75\x2b\x71\xb9\xdf\x98\x0f\xdd\xe3\x06\x7e\x62\x6c\x31\x28\xd1\xb2\x0a\x02\xd8\xbc\xfe\xa8\x20\xf9\x48\x27\xc5\xca\x23\xc8\x21\x77\x0c\xbe\xd6\xa8\x01\x90\xe4\x58\x7c\x24\x73\xcc\x96\x22\xc4\x99\x97\x15\xb4\x9d\x25\x80\x7d\x50\x40\xf3\x2a\xa9\x5b\x9d\xad\xa1\x3c\x81\xd1\x61\x60\x19\x81\x8a\xc0\x01\xb9\xba\x68\xaa\x0a\xc2\xf7\x4d\x5b\xa3\x3d\x23\x0b\xda\xf9\xf2\x49\x9f\xd9\xf9\x1f\xcc\x4c\xd6\xca\xb5\xef\x29\xe8\x4f\xc5\x0e\x13\x97\x38\xf0\x9e\xe5\x73\x65\x41\x40\xb9\x61\xea\xd8\x75\xcd\x50\x1d\xbe\x0e\xa1\xb1\x81\xe5\x11\xb4\xfd\x84\x62\x95\x26\x1f\x54\x07\xf1\x44\x21\x1e\x3d\x94\x50\xb1\x57\x8c\x0a\x42\x97\xb8\x2c\x26\x3b\x77\x07\xa8\xa4\x6a\x22\x68\xa8\xb4\xa5\xc8\x21\x65\x46\xd2\xf8\xf2\xe1\xe4\xe3\x2f\x1f\xde\xd5\xe5\x4b\x0e\xfb\x15\x82\xeb\xd7\xf8\xf8\x97\x0f\xa7\xbf\x36\x2b\x3c\x5d\x5b\x41\x0b\xb2\xc9\x7d\x9a\x00\xb8\x5e\xc6\xad\xce\x71\x12\xbd\x3c\x79\x23\xe9\xcd\xab\x0f\x27\x2f\x3e\x9e\x44\xb0\x86\xda\x9d\x71\xe0\xda\xc9\xad\x4d\x9c\xb9\x98\x3c\xa0\x72\x51\x1b\x1d\x77\xc9\x67\xef\xe8\x3a\x4d\x9b\x73\xda\x90\x30\x8c\x93\x9d\x87\x66\xcc\x71\xaa\x51\x79\x65\x79\x01\x03\x47\x98\x80\x4e\x27\x76\x74\xb2\xbd\xc1\x0e\x54\xa4\xc0\x6e\xbc\x86\x16\x21\x44\x17\xe1\x53\x6f\xd7\xf9\xd5\x9b\xca\x2c\xad\xca\x0a\x01\x39\x20\x03\x52\xf5\x12\xf9\x80\xae\xd5\x97\xea\xb1\xfe\x95\x88\xd9\x19\x91\x07\x4c\xf7\xd0\x5a\x03\x27\xb1\x1d\xfd\xe4\xb5\x61\xb7\x62\x32\x14\x4d\x77\x0f\x00\xe5\xeb\xba\x4f\xd3\xc0\x4e\xf1\x27\x76\xa5\xc7\x20\x3f\xc6\x24\xe8\x99\x42\x94\x8f\xcc\x20\x96\x8c\x89\x46\x72\x90\xfa\x6b\x04\x75\x8c\xeb\x9a\x37\x52\xd7\xa2\x1a\x0a\x83\x4a\x43\x2c\xf1\xcf\x46\x55\xd4\x71\x52\xe5\x81\x5d\xa0\x75\xb3\x73\x7f\x81\x12\x99\xd5\xbe\x35\x85\x4f\xdb\x1b\x7f\xa8\xeb\x86\x02\xfd\x95\xa8\x13\xe5\x90\xb7\x8f\x6f\x9c\xb0\x9e\x83\x16\x03\x5f\x47\x14\x03\xc5\x4d\x27\x58\x31\xd4\xd5\xb5\xab\x76\x9f\xdf\x58\x1f\xd8\xc0\xe2\xfb\x88\x5e\xd3\xf2\x83\xe6\x66\xe2\xc0\x30\xa9\x14\xdc\xca\xe6\x7c\x41\x22\xcc\x74\xd4\x6f\x41\x2a\x23\xac\x2b\x2e\x2d\x63\xb3\x89\x5e\xf3\x40\x36\xd1\xe9\xa8\x80\xce\xb2\x0f\x9d\x0e\x2f\x85\x67\xda\xbc\xd9\x23\xde\xcd\x1e\xfd\xb1\x3f\xa0\x3a\x57\x02\x4b\xfb\xc7\xec\x39\x3d\x66\x87\x87\x80\x0c\x59\x35\x57\x02\x1b\x1d\x38\xf8\xee\x56\x69\x18\xf9\x7a\xd1\xc4\xd3\x80\x82\x91\xfd\x49\x00\x28\x8a\xa2\x38\x60\x81\x89\x4e\x43\x48\x54\x31\x09\xa5\xc9\x79\xe3\xba\x8b\xae\x35\x23\xd1\xc8\x91\x36\xad\x43\xfa\x3a\x9e\x9b\xdb\xb0\x3c\xbc\x4d\xa9\xc5\x1d\x4f\xef\x2c\xaf\x8f\x1b\x35\x42\xa5\xd2\x22\x91\x4e\x67\x2d\x74\x4f\x07\x5b\x00\x00\xab\x52\xe3\x9a\xfb\x47\x15\x07\xda\x17\x2f\x02\x85\xed\x9d\x58\xda\x2c\x6b\xad\x5b\xf5\xae\xc1\xf5\x1d\x45\xcd\x07\x5a\xf9\x60\x76\x11\xef\x74\x44\x5b\xe9\xc5\x44\x97\xe4\xaf\x71\x2e\x38\xbb\x51\x9a\xc8\x8a\xfd\xaa\xbb\xdb\x8a\x80\x9d\xf8\xe8\x9f\x6e\x37\xe0\xc0\x2e\x85\xd1\x3f\x23\xb9\xc9\xbc\x62\x74\x5d\xb1\x83\x8a\x30\xf5\x43\x43\x6e\x69\x4d\xb0\xc0\x63\xa1\x24\xab\x05\x13\x98\x0a\x22\xe5\xbd\xd6\x0c\xfd\x86\xf8\x84\x2d\xf3\x56\x94\xe3\x6c\x6a\x54\xe8\xad\x8c\xb1\x45\xd4\xba\xc0\xe2\x1a\x63\xda\x5a\x20\xc9\x24\x6a\x39\xec\x07\xb7\x4d\x61\xd4\x42\x74\xd2\x1a\xcf\x48\x36\xd1\xdf\xca\xed\xcc\x60\xd4\x6d\xbd\x9d\xb6\x6e\xd8\xb2\x75\x8d\xa8\x58\x5b\xca\xb8\x1c\xb9\xbb\x81\xeb\x59\xad\xbd\xb2\xb4\x6c\x90\x94\xd7\x08\xb0\xb5\xc8\xb0\x64\x7b\xc6\x33\x44\x2f\x71\xeb\x9f\xe5\x25\xce\x3f\x25\xd4\x7f\x3a\x01\xd2\xfb\xb0\x79\xa7\xae\x30\x5e\x58\x9f\xf4\x16\x9a\x0a\xcc\x37\xed\x96\xe9\x0f\x11\xba\x17\x4b\x1a\xe8\x47\x24\xcf\x38\x75\x17\x3e\xf2\xb8\x6b\x9b\xb8\x90\xcd\x0c\xf3\xdc\x56\xf3\x9d\xb2\x99\x0c\xfc\x07\xcf\xae\x01\x59\x27\x14\xd3\x20\x52\x56\x25\xf1\xad\xba\xaf\xc6\x70\x4a\x13\x01\xcd\x66\x57\x54\xb0\x80\x1c\x94\xbe\xc6\x85\xf6\x34\x42\x9e\xd9\xd5\x7d\xde\x9f\xea\x9a\xc6\x6e\xde\x2f\xe0\x18\xff\x50\x13\xac\x2d\x0d\xbe\x9a\xce\xab\x6b\xb2\x20\xaf\xb3\xe3\x42\x5f\xc3\x8e\xcb\xdf\x1c\xdb\xba\x79\x2e\xbf\x01\x37\xcf\x3f\x61\x28\xe4\x6f\xd3\xcd\x73\x1f\x03\xf9\x4b\xc4\x40\xde\xd1\x2c\xb3\x66\x91\xe9\x1b\x63\xba\x54\xec\x61\xb7\x99\xf3\xd2\x50\xa9\x62\x51\xa4\xdf\x68\xea\xa5\xab\x54\x9c\x5a\xc2\x86\xfc\x81\xfc\x19\x15\x57\x56\x9e\xf6\x8e\xf9\x73\xac\x56\x58\xc8\x15\x2e\x49\x53\xb9\xd2\xe6\xa6\x41\xb3\x3a\x26\x84\xcd\x0c\x71\x29\x39\x59\x75\x52\xd9\x4f\xf3\xc6\xef\xa7\x0a\xeb\x31\xbf\xc7\x00\x35\x1e\xa7\xb7\x53\x63\x49\x65\x89\x9c\xb9\x3f\xbc\xc8\x31\xff\x84\xed\x75\xa2\xc4\xff\x37\x2f\x24\x49\x6c\xce\x48\x1e\xf6\xd4\x71\x22\xcc\x5d\xce\x3a\x95\xd8\xcf\x46\x55\x0b\x1a\x21\xfe\x4e\xaf\x29\xe6\x15\xdd\x2d\x80\x22\xc5\x03\xdc\x65\xf2\xcb\x5b\x2a\x61\xa8\x56\x55\xaa\x05\x37\x73\xf6\xfa\xf9\x0d\x92\x7b\xf1\x26\x65\xf5\x90\x06\x66\x2a\xa7\x14\x14\x71\x0f\x92\xee\xf9\x38\xc3\x88\x2e\x17\xa7\xd4\xf0\xb0\xa0\xa9\x31\xb6\x46\x1f\x2f\xb2\x2c\x82\xb7\xdc\x44\xfb\x11\x33\x6c\x30\x87\xe4\x7a\x32\xf2\x09\xe7\x2d\x46\x95\xd1\xc7\x44\x83\xc2\x93\x16\xe3\xad\x25\xe5\x98\x4e\x30\xc7\x93\xa8\x90\x02\xae\x9a\xd8\xf0\x36\x32\x8a\xc0\x8c\x51\x75\x4d\xdc\xdc\x56\xbc\x82\x34\x6c\xb6\x28\x93\x26\xaa\x9e\x9a\xa5\xf4\x36\x74\x6b\x99\x0e\x9d\xc0\x95\xdb\x4b\x36\xfb\x6d\xb5\x1a\x8e\x00\xe4\x00\xe2\x02\xea\xc5\x6e\x5e\x2e\x29\x5b\xdc\xa6\xe9\x2a\x30\xf1\xcd\xb0\x47\xce\x0d\xc2\xfe\x3b\x5b\x4a\x2e\xb1\xc5\xa8\x31\xe9\xf1\xae\x38\x24\x39\x51\x57\x1c\x84\xb6\x90\xe2\x30\xbb\x65\xca\x9b\x85\x73\x15\xd6\x27\x55\x2d\x44\xe5\xa4\x8a\x90\xf1\x65\xed\xe8\x62\x39\xe5\x96\x19\x0d\x66\x16\xdf\xb2\x15\x2b\x7b\xe9\xa5\xcc\x6a\x57\x70\x06\xea\xdc\x8f\x58\x63\xf6\x5b\x85\xa5\x74\xdb\xeb\x9c\x71\x72\x49\x4c\x21\xf3\x50\xf7\x40\x2e\x77\xb7\x7b\x57\xea\xd1\xb9\xf9\xec\x9e\x61\x45\x4c\x2a\xd5\x38\xee\x95\xec\xf9\x7d\x66\xe7\x9b\x58\x9c\x07\x8e\x5b\xe2\xfc\xbc\xb7\x44\x97\xbc\x8a\x2e\xfd\x94\x43\x6b\xf7\x75\x05\x25\x1a\x44\x29\x65\xea\x90\xf4\x6b\xe4\x6a\x58\x2d\x9e\x54\x63\x1f\x58\x01\xb5\x76\x2e\x06\x77\x9c\x19\x00\x25\xf7\x09\x12\x0c\x8d\xff\x51\x68\x56\x42\x9b\x41\xc9\x1a\x24\xbc\x27\x14\x86\xab\xbe\xf2\xf6\xa6\x36\x97\x15\xa5\x25\x4f\xc0\x6e\x36\xac\x48\xaa\x6c\xb6\xea\x26\xe7\x45\x2d\xbc\x43\x6e\x51\x30\x83\x77\xe1\x64\x49\xd9\xd2\x34\x78\x10\x3b\x9d\x98\x86\xaf\x0b\xad\x02\xde\x00\xa9\xa9\x0f\x98\x93\x0f\x6b\xa6\x93\xbc\xbc\xf6\x62\x00\xb2\xa2\x50\x61\xe8\xdf\xbe\xfb\xdb\xe9\x5f\x4f\xe0\x24\x60\x3d\xaf\x95\x8f\x7a\x94\x61\x62\x54\xc0\xa9\x64\xe3\xc7\x6b\xb2\xd0\x48\x0e\xc2\xb0\x1c\x93\xad\xb2\xd0\x8c\x87\xd3\x51\x3a\x81\x63\x3f\xf4\xd2\xa7\xaa\xa4\x44\xa6\x31\x07\x55\xaf\x30\xee\xbb\x7f\xdd\xea\x08\x52\x7c\x88\x46\x70\x99\x4a\x2e\x48\x2e\xc3\xb9\x27\x98\x19\xcd\x39\x3f\x77\x67\xf5\xf2\xf0\x10\x1c\x88\xe1\x72\x94\xde\xc4\xba\x19\x88\x63\x01\x73\xb5\xfb\xe1\xd2\xf7\x70\xbe\xa9\x65\xe3\xa9\x61\x7a\xa7\x6e\x57\x7e\xcd\xe0\x80\x0f\x62\xeb\x98\xcc\x97\x14\xb8\x95\x38\x95\x3c\xb6\x9e\x5a\x0a\x87\xe5\x6d\x24\x81\xc2\x1d\x1a\x2d\x3a\x94\xa2\x8b\x92\x54\xb4\xdc\x52\xae\x04\x00\x09\x19\x8a\x91\xcb\xfb\xe5\x1b\xa2\x1b\xd6\x6e\x5e\x67\xf9\x66\x8d\x17\x55\x1f\x12\x54\xf1\x21\x21\x35\x1f\x92\x99\xe7\x43\x72\x9b\x63\x51\x89\x26\xe0\x6e\xe5\x64\x37\xcf\x24\x37\x73\x26\x4b\x18\xd5\x6a\xf5\xe5\x5d\x4e\xc9\x41\x0f\x7d\x7b\x69\xda\x8c\x01\x50\xb7\x0e\xf8\x38\xc3\x2d\x29\x51\xb3\x69\xab\x0a\x28\x06\xce\x34\x00\xb5\xf2\x05\x1e\x4b\xf9\xde\x28\x75\xac\xb4\xdf\x22\x92\x11\x59\x70\x3c\x46\x4a\x03\x46\x27\xad\x6b\x46\x7f\xb8\xcf\x00\x20\x0f\x5a\x00\x74\x5b\xef\xb5\xde\x49\x37\x76\x63\xe8\xb5\xd7\x18\xcd\x05\x46\x13\xd8\xc2\xdd\xcb\x6e\xab\xd4\xdd\x09\x18\x25\xaa\x68\xdc\xed\x76\x81\x8d\x51\x11\x83\x5a\xac\xc7\xb8\x54\x2d\x85\x26\x0e\x46\x4a\x7b\x04\x3f\x99\x0b\x32\x34\x99\xfc\x44\x72\x81\x29\xe6\xd0\xb0\xc2\x2a\xa6\x83\x32\x5d\x82\xc2\x79\x01\x47\xb0\xdd\xbf\xb3\x96\xc6\x35\x27\x95\xba\x1e\xb3\x57\xab\x7d\xaa\x59\x64\x57\xdb\xf1\xcc\xd5\x26\x7b\xa0\x80\xbe\x45\x40\x15\x23\x95\x1d\x4d\x6b\xcf\x92\x03\xab\x0f\xc6\x8f\xa6\x59\x1f\x67\x6d\xb7\x59\xdb\xec\xd3\xb5\x4d\xd7\x47\x9b\x06\xdf\x96\xdd\xa8\x7f\x69\x74\xa6\x31\x7d\x8d\x2e\x39\xa9\xe2\x6b\xcb\x4d\xb6\xa1\x54\x98\x96\x03\x1c\x48\x83\x3b\x7d\x41\x9b\x5b\x5d\x6f\x6c\xcb\xf1\x28\x7e\x9e\x32\xd1\xca\xb1\x90\xec\x3d\x11\xb9\xe5\xfa\x3f\x11\xd4\xfa\xa1\x4a\x32\x7e\xe8\xb6\xce\x30\x76\xc7\x8e\x28\x79\x40\xdb\xe8\x4c\x19\x6f\x4d\xb0\x40\x24\xcb\xbb\x91\x12\xd5\xee\x41\x4a\x21\xc7\x36\x93\x6e\xa3\xb7\x89\xc2\xb1\xa2\x1f\x7c\xdc\x70\x1d\x75\x5f\x99\x8c\xa0\x1c\x5a\xf3\xef\x9f\x65\x8f\x1c\x4f\xb4\xd6\xf9\xe5\x52\x54\x7d\x15\x7b\x9e\xa7\x61\xb8\xa8\xf5\x40\x56\x25\xdf\x4e\xb2\x90\xa3\x4c\xe9\xfa\x68\x81\x85\x1c\x48\xda\x8e\xf6\xf9\x17\x18\xd6\xe9\xc0\xbc\xb7\x0e\x90\x72\x2d\xd6\xf9\xe5\x6c\xd6\x5c\x2b\xd8\x9c\xe7\x23\x13\x6a\x76\x10\x69\xaf\xf0\x28\x89\xc8\x24\xc3\xca\x7d\xa6\xca\xfa\x1b\xb1\x5e\xf3\x7c\xea\x81\x2a\x89\x40\x7b\x7f\xb9\x72\x11\x80\xde\xe6\x49\xaa\xd3\x0e\x54\x80\x0f\x55\xa7\xe4\xc3\x7c\xe7\x77\x50\x89\x2d\xd2\x2c\x57\x05\x54\xc6\x29\x69\x96\x2c\xc3\x3a\x80\x7a\x78\x92\x40\xf3\x7e\xaa\x80\x4a\xe0\x92\x66\x59\xe7\xe3\x0d\x2a\x01\x4d\x9a\x05\xad\x07\x37\xa8\xc6\x39\x09\x40\xb4\xf6\x9f\xa0\x1e\xff\xa4\x59\xd6\x73\xea\x06\xd5\xc8\x28\xd5\xb2\x95\xb8\x15\x00\x96\x6b\x90\xf4\xa0\xdb\xdc\x49\x0f\x96\x81\x6b\x92\xde\x9d\x01\x4c\xf0\x6a\x75\x5b\x40\x9e\x8a\xae\xd6\x58\x28\xd3\x11\x8e\x73\x2c\x8c\x4d\xa8\x52\xf4\x76\x1d\x88\x75\x1e\x38\x12\xeb\x89\x19\x56\x01\x8c\xa3\x06\x4f\x5e\x56\xe7\x00\x52\x67\x01\xee\x9a\x89\x81\x8d\xd5\xb4\xa9\xab\x48\x45\xd0\xf5\xaf\x13\x9b\x96\x7c\xb5\x08\x64\xea\x08\x94\x82\xb1\xde\xff\x65\x57\x1a\x7e\x22\x39\x16\x5e\xfa\x4c\x15\x48\xe7\xae\x70\x39\xf5\x80\x3a\xa1\xa0\x3b\x8f\x13\x52\xa7\xa8\xf9\xfd\xdf\x17\x41\xf3\x1a\x11\x71\x34\x65\xfc\x4b\xf8\x3a\x57\x03\x31\x19\x6d\x34\xff\xce\xb4\xd1\xbe\x8b\xee\x57\xbc\xba\x22\xf5\x0c\xf0\x92\xdb\x71\xc9\xdf\xb9\x4d\x37\x4b\x53\xc9\xfb\x1c\x50\x2f\xaf\x6d\xea\x3f\xac\x56\xed\x3e\xa4\x5d\x5f\x26\x4d\xdb\x3d\xeb\x02\x43\x68\x8b\x2a\x61\xdc\xca\xa8\x4a\x02\x5f\x47\xea\x69\xf7\x0a\xdf\x40\xea\xcb\x8a\xac\x9e\xb9\xb5\xd3\x21\x31\xf6\x38\x15\x01\x20\x57\xef\xb4\xf6\x30\x70\xef\x57\x2e\x57\xdb\xcb\x2e\x6e\xb2\xfe\x89\xf0\x4c\x2a\x09\x4b\xa2\x23\x8e\x73\x65\x99\xac\xae\x67\x30\x11\x33\xcc\xa5\x0c\x23\x6b\xb7\x18\xaf\x4c\xed\x81\xd7\x2d\x7b\x69\x66\x38\x0d\x65\xf9\xe2\x89\x7c\xde\x26\x49\x0c\x4b\x83\x7d\x31\xbe\x2e\xe2\x4b\x8e\x4d\x74\x3a\xfa\x2a\x7a\x4d\x7a\xd9\x38\xb7\x8d\x6a\xd4\xa2\xdb\x3a\x9d\xd6\x6f\x01\x4b\xcd\xec\xb9\xea\xd1\xf9\x79\x2a\xa0\xda\x7a\x15\xd8\xcb\x40\x96\xc7\xb5\x39\xb7\x3e\xe0\x69\x86\xc7\x62\xb5\x6a\x9b\x5f\xe5\x31\x30\x17\x6d\xed\xfe\x01\x99\xc6\x8d\xaf\xdd\x7c\x86\xe6\x95\x22\x81\xc3\xf5\x9e\xb3\xcf\x37\xb6\x90\xce\xca\x65\x06\xf1\x1a\x09\xbc\xf6\x62\xb2\xd1\x58\x2c\x8b\xc3\x61\xd5\xa9\x44\x25\x69\x6e\xf7\x8c\xa1\x94\x3b\xe7\xed\x7e\x51\x94\xb1\xbd\x6b\x1a\x0a\x0e\x69\x3a\x36\x77\x91\xc2\x6a\xee\xc6\xda\x3b\xc1\x47\x00\x07\x3c\x6d\x76\x82\x96\x72\x0a\x24\xa0\xc0\x59\x8e\x5b\x3c\xa5\x61\x49\xde\x76\xc0\xc4\x2b\xe0\xfe\xd1\xc8\xfc\xf5\x6c\x8b\xd5\xca\xde\x6e\xb4\xd3\x94\xc7\x02\xf8\x88\xaa\xdc\xf9\x83\xda\xad\xb3\xe6\x9d\x95\x9d\x79\x79\x12\x3e\xe0\x29\x96\x58\xd9\x1e\x07\xd9\x78\x6b\x86\x72\x2d\xc1\x63\xda\xb2\xa9\x95\x72\x3c\x69\x1d\xb5\xd4\x95\x4b\x0c\x2a\x25\x8c\x07\x6d\x99\x0a\xa9\x88\x31\x48\x44\x30\xdf\x68\x3c\x0e\x6f\xdd\x41\x99\xf2\xd9\x7b\x1b\xc4\xca\xe5\x6e\x5e\xad\x82\xb5\x24\x66\xdd\xf5\xb2\x4f\x92\xb0\x37\x8c\x2b\x36\x28\x90\xf3\x54\x4d\x99\x6a\xa0\x2c\xab\xc4\xd2\x34\x78\xf2\x64\x69\x63\xbc\x5d\x96\x77\x7a\xa4\xba\xe9\xbb\x57\x69\x66\xde\x69\xcb\x95\x69\xa5\x27\x28\x26\x10\xdb\x1b\xfb\x65\x4c\x40\x2d\x8f\x4b\x25\x48\x83\x31\x13\x27\x00\xc6\x22\xe5\x5e\x2a\x2a\x50\x3a\x61\xa5\x18\x8a\xae\x20\x73\xcc\xdf\x4e\xb4\x13\x90\x70\xc1\x6b\x63\x02\x87\xb7\x57\xf8\x26\x69\x98\xcb\xd9\xdc\x99\x15\x9b\x39\x79\x60\xb5\x59\xa0\x01\x17\x70\x26\x50\xdf\x5d\xe3\x35\xb7\xaf\xfb\x6c\xe2\x8c\xdd\x5a\x69\xec\x78\x8f\x59\x1c\x28\x8a\x02\x9a\x01\xd4\x8d\x6d\xeb\x23\xf0\x5d\x1f\x8c\x72\xd8\x1f\x8b\xd1\xb5\xf9\x13\x55\x14\x23\x00\x49\x11\x8b\xae\x33\xec\x04\xbe\x8e\xf8\xde\xd5\xb2\xe6\x46\x2c\xb0\x5e\xac\xb6\x5e\xfa\xc8\xa7\x18\xb2\x52\x39\x93\x0a\xc8\xba\x53\x13\xca\x8c\x75\x27\x64\xa2\x5d\x42\x55\x6e\xc3\xee\x32\xc7\xf9\xeb\xd3\x9f\x6d\x70\x51\xf9\xca\xe6\xe2\x79\xa5\xaf\x23\xd5\xcb\x5d\x17\xdb\x33\x90\x34\xf7\x0d\xe5\xc8\x09\xb8\xa5\x7e\x77\x7a\x90\x86\xcc\x9d\x63\x00\xef\x5d\x73\x02\x0a\x18\x20\x15\xaa\x49\x66\x4c\xab\x26\xfa\xee\xc1\xaa\xdd\x06\x7a\xe1\x6a\xe3\x37\xa1\x0d\xd7\xd4\xa9\xa9\xbd\xdc\xfd\x6d\xd0\xc6\xda\x07\xe4\x7c\xcc\xca\xe7\x75\xb0\x8c\x19\x78\x63\x11\xaa\x3d\x63\x74\x6d\x5f\xb6\xd9\xcc\xa6\x92\x75\x2e\xab\x4c\x46\xa5\xc3\x1c\xcf\xd9\x27\xbc\xd1\x64\x68\x15\x81\x5b\x57\xab\xaa\xa8\x0d\xc8\x68\x9e\xed\x70\xa6\xd3\x75\xe0\xec\x8f\x54\x9f\xeb\xd0\x69\x9a\xed\x72\x9a\x60\x20\x2b\xf1\x66\xe6\x7b\x2f\x19\x93\x63\xd8\xee\x38\x5e\x61\x15\x2d\xb7\xbb\xe0\x78\x42\xc6\x48\x38\x57\xde\x90\xb8\x82\x06\x28\x48\xd6\xd2\x34\x45\x05\x64\x5d\xa3\x60\xe4\x2f\xd9\x92\x4e\xbe\xe8\xf9\xb4\x90\xdf\xd0\xb4\x61\xa6\xec\x59\xd3\x9a\x91\x69\x16\x5d\x31\x3e\xb4\x39\xb2\x98\x94\x19\x5b\xef\x3f\xc0\x92\xeb\x82\xb5\x3e\xc4\xc0\x45\x35\xf1\x54\xde\xb1\xb7\x73\x74\x0d\x25\x27\x28\xa2\x54\xad\x0f\xaa\x2f\xcc\x74\xf5\xb6\x3f\x22\x15\x08\x46\xb3\x50\x36\xe3\x9c\x65\xf4\x29\x79\x70\x3f\xdf\xdc\xb1\xd9\xef\x16\xaf\x4d\x7e\x8a\x27\x7a\x58\x47\x2a\xfd\xcf\x3d\x36\x9e\x36\xa5\xc5\x17\x0f\x2b\xa6\xfb\xa0\x23\xfc\xa7\xbc\xa9\x9f\xad\x4a\xef\xd6\xb7\xa1\xe7\x52\x9a\xf3\xd5\xca\xd3\xe9\xe8\xd8\x6b\x8d\x9c\x01\xc0\x7a\x40\xeb\xb1\xfa\x17\x26\x43\x5e\x35\x90\xf9\xa1\x2c\xf8\x43\x4b\xe0\xf9\x22\x43\x02\xb7\xf4\xf0\x95\xba\x49\xbb\x5f\x4c\xa2\x62\xa4\x2d\x6b\xed\x35\xa3\x6e\xb0\xab\x4b\xfe\xff\xec\xbd\x5b\x7b\x23\xc7\x95\x20\xf8\xce\x5f\x41\xe6\xba\xa1\x4c\x33\x80\x02\x48\x96\x2e\xa8\x4a\x51\xa5\xba\x58\x65\xab\x2e\x5d\x45\xf9\x06\xc3\x74\x12\x08\x10\xe1\x4a\x44\x42\x91\x01\xb2\x28\x02\xdf\xd7\xd3\xe3\xf1\x78\x3c\x9e\x5e\x8f\xdc\xdb\xed\xf5\xda\x5a\xaf\xc7\xeb\xf1\x78\xbd\x1e\xbb\xb7\xa7\x57\xb2\x7b\x3c\x0f\x92\x25\xf5\xcf\x90\x1e\xf5\xb2\x7f\x61\xbf\xb8\x47\xe4\x05\xb7\x2a\xd2\x2a\x09\xf5\x50\x3c\x88\x8c\xcb\x89\xdb\x89\x13\xe7\x9c\x38\xc7\x27\xb6\xb4\x63\x86\x97\x6a\x35\x1d\x5a\x1f\xf3\x58\xe6\xc2\x1e\x38\xc3\x13\x96\x8e\x8f\x6e\xdc\x40\xac\xd8\x32\x9c\xaf\xac\xa0\x7c\x4e\x1f\xef\xb0\x65\xa3\xd3\x9c\x55\xa8\x15\xa4\x2d\x64\x13\xfe\x3f\x7e\x52\xed\x3f\xc9\xe2\x7d\x87\x8f\xa5\xe3\x1f\xa7\x70\xc7\xa8\xa7\x2c\xa8\x4b\x0d\x9a\xd1\xf2\x06\xcd\xd2\x34\x69\x71\xb3\x66\x50\x64\xd3\xbc\xeb\x18\x33\x37\x1f\x83\x25\xf3\xae\xe8\x9b\x8a\x22\x9c\x13\xf0\x9d\x83\x6d\x70\x72\x26\x16\xec\x8f\x47\x21\x18\x15\x12\xa7\x5c\xc4\x37\x1c\x72\x57\xc6\x48\x84\x9e\x49\x0a\x42\xcf\x20\x69\x7a\xa5\xcd\x44\x28\x77\xdc\xef\xc4\x6a\x8e\xa6\x93\x39\xfe\x50\xef\x51\xbd\xdf\x9a\xb7\x1c\x8f\xf2\x80\x43\x3a\xe2\x5d\x34\xae\xe2\x74\x01\xff\xa3\xfa\xe2\x05\x08\x24\x20\x02\xe9\xa3\xb3\x22\xac\x8f\x05\x6e\x49\xe3\xc2\x68\x7b\xe2\x14\xbd\xc1\xae\xa6\xe9\x30\x8e\xb8\x62\x32\x34\xcf\x06\x21\xf0\xd6\x7d\xee\xee\xda\x0b\x00\xe1\x56\x3f\x8e\x55\x9d\x2c\xed\xd8\xd3\x65\xcc\xdd\x32\x36\x95\x53\x0c\x2a\xfd\x3a\x48\x73\x41\x72\x02\x69\x39\x0c\x90\x71\x5e\x9b\x55\xb8\x42\x6d\x9d\x37\xc5\x34\x2f\x6f\x97\x37\x09\xac\xb8\x84\xaa\x2b\x21\x04\x85\xf2\x38\x9f\xca\xfe\xab\x49\x30\x34\x34\x00\x74\x22\xc7\x5d\xf8\xdf\xcd\x99\xef\xc6\x85\x81\x02\xad\x1e\xe9\x41\x9d\x7b\x20\xb3\x61\x80\xe6\x18\x48\x38\x73\x20\xa9\x33\x24\xc5\xe3\x00\xed\x0a\x8a\x06\x03\x4e\x4a\x95\x1c\x1e\x15\xce\x1d\x3c\x70\xea\x9a\xf5\x1d\xc2\x42\x37\x90\x35\x99\x7f\x32\x29\x57\x9c\x78\xbd\x84\xc0\x23\x48\xe6\xae\x53\xe6\x9f\x5a\x27\x89\x8e\xf7\x16\x44\xd5\x14\x99\x5a\xb3\xf6\x24\x3c\x67\xc5\xd8\xf8\x1e\x9e\x5a\x2f\xbf\x11\xcc\x55\x63\x52\x8b\xe2\x99\x75\xe9\x10\x9b\xf3\x57\x29\x8b\x4c\xad\x59\x04\xd7\x9c\xb3\x4e\x96\x79\xc6\x2c\x31\x3a\x3f\x67\x6d\x2c\xf3\xd4\xda\x6c\x49\xf7\x9c\xb5\x46\x8e\x78\x7c\x9e\xda\x39\xe5\x59\xb4\x76\x5e\x68\x9e\xda\xef\xea\xf3\x71\xb1\x06\x54\xb9\xc9\x44\x85\x0d\x15\x8c\xc3\x7e\x0a\xe9\xd5\x38\x4a\x53\xd4\xb9\x06\x3b\x89\xf4\x1d\x64\x7d\x93\x46\x05\xfa\x63\x26\xe2\xa9\xab\x43\x5b\xa7\xdc\xef\x85\x6a\x5d\x0b\x9f\x38\x89\xe1\x46\x9e\x02\x10\xde\x31\x32\x66\x0b\x30\x90\xcc\x87\x28\x66\x1b\xaa\xae\xe9\xf7\x6c\x94\x91\xe2\x59\x7c\x88\xd0\xde\xbc\xc6\xee\x5c\xb9\xcf\x33\x18\x94\x33\x36\xe2\x32\x09\xa7\xdc\x62\xa8\x00\x01\x60\xf0\xb7\x27\x74\x32\xa3\xd7\x92\xb1\x5a\xfe\x76\xe9\xd3\x4f\xaa\xa5\x01\xf9\x04\x2a\xcb\x71\x46\xa1\xed\x28\xe1\x7c\xfc\x58\x95\xe5\x68\xa5\x2c\x9f\xaa\x2c\x8f\xb2\xca\xf2\xe8\x2c\x95\xe5\x49\x81\xb2\x3c\xb1\x25\x67\x1b\xc4\x51\x96\xb3\x5b\x74\xa1\xb2\x9c\xfc\x79\x95\xe5\xc4\xb1\x66\xd1\x4b\x37\x3a\x47\x65\x79\xd6\xd4\xe4\x8c\x6c\x91\x46\x4f\x84\x2d\x52\x9c\xb7\x45\x1a\x15\xd8\x22\x8d\x94\x2d\xd2\x12\x87\x21\x4a\xaf\x8b\xf0\x90\xa2\x6c\x91\xb1\x01\xac\x54\x0a\x9d\x11\xd5\x12\x5c\x7c\x62\xc0\x5a\xd2\xeb\x8d\xc7\x25\x65\x16\x2e\x92\x55\x91\x96\x54\x50\xa0\x3f\xe4\xf6\x0e\xb9\x37\xaf\x39\x8b\x87\xb9\xbd\x02\x6d\xef\xe2\xea\xb6\xf0\x0a\xb4\xed\x78\x05\xda\xce\x78\x05\xe2\xcf\x43\x6b\xc7\x28\x8e\xd5\x3b\x5b\xe3\x04\xc1\xfd\x50\x53\x6f\x9d\xb8\xf6\x2a\x4d\x61\xba\xaf\xde\xd3\x92\x74\x7f\x5f\xc5\xa7\x73\xca\x80\x34\x6c\xb5\xd7\x9c\xa4\xb0\xe0\xc1\x01\x0d\xeb\x80\x84\xda\x17\x30\xbd\x4c\x2e\xd1\xcd\xcd\x20\x6d\xd1\xb6\x1f\xac\x45\x92\xa4\x41\xe7\x85\xd8\x22\xb8\x85\xe9\x64\x91\xec\xc2\xa1\xaa\x4d\xdc\xa9\x89\x49\x4c\x19\xb1\x0d\x38\x02\xf2\xf6\x59\x66\xf6\x72\x22\xcd\x5e\x48\x74\x5c\x96\xe5\xc0\x64\xd9\x9b\x5e\xd9\xbe\xcc\xa9\xf5\x98\x7b\xc9\x5d\x21\x81\x0a\x8f\x01\xd4\xde\xd5\x42\xa8\xee\xaf\x21\x34\x8a\xb2\x10\xd6\xf6\x15\x2f\x6e\xbd\xcc\xcf\x7a\x39\x72\x92\x84\x0b\x3b\x27\x89\x9b\x88\xb8\xe5\xa4\xca\x32\x84\x59\x05\x6b\x08\x73\xea\xc4\x10\xca\x57\x81\x21\x74\x9e\x57\x84\xb0\xa6\x45\xbd\x8e\xa3\x00\x67\xa9\x28\x4a\x03\xb9\xc7\xca\xd3\x54\x3d\x22\x33\xbe\x43\xe5\x0b\x13\xe1\xc2\x3e\xd4\x31\x8e\x19\x69\x12\x5a\x60\x4f\xca\x3c\xbc\x9c\xf6\x57\x6a\x36\x6d\xff\xf4\xae\xb3\x79\x28\xf4\x8f\x90\x9d\xe5\x36\xba\x1d\x69\x6f\xe4\xb8\xac\xc9\xb9\x2f\x11\x62\x66\x38\xfd\x34\x48\xf0\x11\x24\x74\x5d\x73\x45\x8c\x2d\xe4\xec\x21\x4d\xa4\x2e\x80\xb1\x86\xa1\x96\x0c\xaf\x99\xdd\xd3\xb8\x44\x2f\x67\x09\x02\xdf\x41\x59\xd7\x3c\x2d\xca\x77\xbc\xe0\x59\xcd\x3b\x47\x76\x0e\xaf\x93\x20\x27\xfc\xef\x47\xe9\x9d\x63\xac\x85\x38\x9c\x1b\x62\x97\xaf\x4a\xc5\x87\x2d\xdc\x0e\x49\x0b\xb7\x75\x94\x41\x38\x59\xcb\xcc\x6b\x8f\x0f\x4e\x37\xf4\xf6\xa5\x37\xb7\x7d\xc1\x6b\xef\xef\x7b\x6b\x7a\x2d\x74\x75\x3f\xfa\x61\xcb\x7b\x81\xef\xcb\x0b\x55\x84\x29\x24\x38\x8a\xd3\x0b\x87\x31\x1a\x0c\x20\x51\x02\xe2\xf2\x1c\xfa\x42\x56\xf2\x5b\x6b\xd2\xc4\x6b\x48\xfd\xb9\x4f\x07\xf1\x41\x44\xd2\x0b\x0f\xe0\xc9\x71\x42\xba\xe9\x85\x8e\x50\x17\x56\x33\x19\x49\x32\xa2\x08\x1f\x2e\x5c\xa0\x34\x5f\x1b\x0c\xc3\xfa\xa5\xe1\xe5\xbe\x9a\xb2\x21\x23\xd2\x3d\xbf\xdf\x1a\xb6\x91\x7a\xf1\xbb\xbf\x1f\x27\x51\x97\x2f\xc5\x43\x94\x52\x72\x12\x9c\x9a\xb1\x0b\x73\x79\xb8\x5d\x09\xaf\x21\x90\xb9\x84\x53\xce\x49\xc1\x7e\x64\x87\x6d\x67\x5f\x24\x8b\x39\xc9\x6e\x62\x91\x43\xa7\x8a\x4c\x05\xdb\xdf\xc3\xf0\x21\x75\xbf\x09\x62\xe1\xf1\x25\xef\x7e\x91\x94\xc5\x93\xda\xa3\xb5\x02\x42\x24\x55\xd7\x22\x38\x93\x72\x9d\x91\xa5\x60\x6b\x45\x54\x6d\xc0\x8b\x1c\x95\x90\x8e\x1c\xdd\xc8\xf6\x2f\x2c\x4c\x15\x11\xf5\xa9\x8e\x54\x5d\x73\x06\x2e\xcc\x27\x59\x05\x0a\xc8\x10\x0f\x42\x91\x37\xae\xe0\xb2\x60\xc9\xe6\xfa\x30\x3c\x56\x86\x33\x2c\x7b\xd1\x11\x28\xed\x36\xf2\x73\x94\xaf\xda\xcd\xab\x67\xbc\x28\xa3\xa1\x72\xe6\xf8\x38\xe2\x83\x7a\xe2\x9e\x4d\x3e\x56\x96\x45\x34\x44\x3e\x0e\x32\xf1\xb3\x38\xe5\xd1\x81\xc5\x64\x4c\xb1\x00\xf8\x24\xa4\x8e\x59\xd0\x20\x0d\x21\x20\xae\x39\xa5\x45\xbb\xb1\x1a\xb4\x99\xbd\x34\x8f\x83\xf3\xb6\x94\x31\xf7\xfc\x5f\x6c\x39\x49\x81\x58\xbd\x8c\x01\x13\x01\x2e\x82\x89\x9c\xe6\x41\x76\x94\xa7\x8c\xdc\x52\xa6\x90\x78\xe2\x1f\xa9\xc7\x83\x18\x1e\xfb\x73\x0f\xb0\xe6\x0d\xcc\xc8\xd2\x92\xb7\xf4\x4b\x0c\xe5\xa2\x0b\x86\x77\x83\x2d\x19\xc5\x7b\x1c\x72\xb4\x0f\xec\x77\xdf\x34\xb7\xf7\x78\x5d\x21\x65\xc7\x86\x66\x5f\x0e\x78\xc1\xfd\x27\x6d\xa5\x95\xf8\xa5\x7e\xec\x8b\x8c\x5d\x10\x88\x6a\x69\xfe\x05\xa6\xc7\xeb\xd8\x08\x63\x0a\x62\xfe\x90\xf0\xb4\xc0\x11\xb6\x08\x04\xca\xb1\x17\xfa\x7a\x49\xb7\xc3\x90\xec\x52\xcd\x20\xe1\xa0\x49\x55\x70\x09\x1e\x67\x81\xc7\x79\xcd\x8c\xa4\x4f\x40\xdd\xd2\xa8\x49\x15\x6a\x86\x9a\xe2\xf1\x38\x93\x04\x74\xd6\x42\x31\xe6\xf0\xe4\x02\xfb\xaf\x58\x36\x2b\x3f\xb2\xf6\x1f\xbf\x55\x97\x12\xc7\x5a\xb5\x62\x21\xdb\x32\x12\x14\x4b\x30\xb2\x6b\x89\xbc\x9a\xc4\x87\x41\x30\x1e\x0b\xd6\x50\x7b\xb2\x5f\xe7\xde\x60\x37\xb2\x06\x2a\x95\x8a\xf6\xe0\x52\x13\xbe\x33\x6d\xab\x95\x1a\xeb\x21\xdb\x17\x19\x29\xd3\x3a\xf4\xa5\xde\xb8\x1c\x29\x9c\x41\x0a\x5b\x48\x61\xd5\x02\x5e\x13\x5e\x2f\xa4\x6c\x7d\xa4\xb8\x74\xd4\xf3\x51\xa5\xe2\x8f\xc2\xa4\xc6\xd9\xb3\x3b\x3d\x56\xfe\xf9\xb0\xae\x0a\x46\xad\x11\x67\x38\xdd\xfe\xe0\x80\xe3\x93\x6a\x4b\x82\x00\x20\xce\x8b\x8e\xcc\x1d\xb0\x5a\x1d\x3d\x1f\xd6\x2f\x05\x69\x6b\xd4\x0e\xa1\xcf\xfe\xc8\xae\x08\x49\x17\xea\xf9\xb9\x21\xc1\x41\xc0\xea\xe4\xa3\x21\xf2\xae\xa9\xbc\xd8\x96\xcb\x5c\x8b\x28\x64\x39\xe1\x31\x07\x7d\x5c\x3b\x14\xfb\xd7\x0f\x44\x89\xd3\x34\x3c\x15\x2f\x09\x62\x6d\xa0\x97\x10\x3f\x66\x6c\x32\x9e\x8f\x4d\xc6\x20\x0e\x2a\x15\x6f\x7f\x9f\x0d\x77\x5c\x4b\x47\x07\xc2\x00\xc7\xaf\x83\x2d\xc6\x3f\xa7\xad\xb8\x1d\xa2\x5d\xe8\xe3\x56\xac\x7a\xd6\x64\x70\x30\x61\x43\x9a\x88\x3b\x28\x0e\x40\x24\xa0\xd4\xe8\x5d\xd3\x09\x5b\x67\x00\xef\xb6\xda\xf2\xf9\xb0\x82\xe4\xf3\x87\x4f\xd0\xab\xbf\x29\xfb\x9d\x6f\xe9\xb3\x7f\x40\x5f\xf4\x38\x9e\x35\xcf\x07\x7c\x52\x68\x82\x3a\x9c\x6a\xce\xa2\xc9\xd5\x3c\x34\x8a\x5d\x75\x1f\xad\x27\xa5\x05\x04\x12\x73\x6a\xaf\xe5\x68\x4c\x55\x32\x5e\xd5\x93\x32\x57\xa5\xc4\xaa\x34\x3f\x8a\xdd\x88\x46\x17\xaa\x43\x82\x8e\x78\x34\x32\x7b\x20\x5f\xb0\x72\xa4\x34\x21\xc6\x96\x87\x27\x49\x7f\x29\x99\x8c\x83\xa4\x0b\x63\xab\xc2\x7c\x2d\x65\x1f\x09\xec\x24\xa4\x9b\x41\x68\x3e\x4f\xab\x34\xa4\x95\xca\x5c\xe4\x82\x02\x4f\x8e\x86\x17\xec\xea\xe1\x6e\x52\x40\x42\x32\x67\x15\xc4\xae\x42\x0f\x6e\x93\x38\xa6\x5e\xdc\x1b\xc8\x30\xea\x40\xbd\x96\xbf\x78\xfd\xde\xfd\x9b\x77\x6e\x37\x89\xf0\x42\xe0\x5d\xbb\xef\x4d\x02\x19\x5d\x31\x46\x07\x24\x22\x08\xa6\xea\xb9\xb7\x4e\x90\xb7\x51\x48\xae\x26\x04\xbe\xcc\x53\x4f\x7c\x8f\x67\x62\x34\x35\xe2\xf1\xe3\x60\xed\x3e\x1b\xd8\x90\x96\xaf\x19\x2e\x03\x49\xe7\xb6\x75\x10\xd9\xa7\xae\xc2\x5b\x11\x3e\xe1\xc7\xcc\xdc\x95\xea\x12\x53\xeb\x95\xd2\xb6\xc5\xab\xcf\x16\x9c\xda\xca\x95\x6e\x34\xa4\x90\xdc\x4d\x86\xc2\xaf\xef\x3d\xbe\xf8\x16\x69\x10\xd5\xa6\xd4\x31\xb5\xed\x9b\x52\xa2\x72\x8b\x6d\x95\xb9\x5b\x73\x4a\xcd\x33\x82\x8b\x75\xc6\x2e\x34\x4f\xed\xd2\x16\x75\xc1\xea\x45\xa9\xa9\xf5\x2f\x33\x13\xf3\x8e\xbc\x95\xef\x56\x84\xa3\xc3\xb9\xad\x95\x9c\x26\x64\xd1\xe9\x2d\x25\x09\x95\x01\x1e\xe7\x6d\x40\x95\x98\x5a\xef\x7d\x1c\x0d\xd3\x7e\x32\xff\xc0\xab\x02\x73\xd5\xba\xcc\xd8\x17\x94\x9d\xda\x56\x27\x81\xa4\x03\x6f\xce\x6b\xd2\x84\x6a\xaa\xc0\xd4\x5a\x71\x42\x06\xdc\x1a\x83\x6f\x0f\xee\xd6\x65\xde\xfa\xf3\x45\xe7\x58\x43\x82\xf6\xce\x69\xf2\x64\x8a\xcc\xa8\x59\x84\x12\x4d\xfb\x68\xb8\x40\xdd\xa6\xd0\x84\x33\x54\xd7\xee\x87\x51\x79\x23\x25\xec\x4b\x09\x63\x10\x09\x12\x57\xce\x17\xa8\x0c\x8f\xf9\xca\x57\x6e\xb6\x27\x4f\xde\xc5\xf9\xa9\xe9\x3d\x4c\x2f\x40\x79\x42\xce\xe8\xa9\xc8\x77\x6e\xfd\xbd\x72\x90\x10\x2a\xc3\xb4\xce\xd9\x65\x53\x64\x9e\x13\x70\xb1\xba\xe7\x63\x4f\x71\x2f\x46\x9d\x05\xb1\x76\x4a\x4d\xad\xff\x46\x42\x0e\x50\xb7\x0b\xf1\x62\x0d\xb8\xc5\x66\x1c\xd0\xfc\xad\xc9\x62\xf5\xdb\x85\xa6\xd6\x7e\x3b\xa1\x37\x92\x11\x5e\xb0\x7a\xa7\xd4\x74\x62\xce\x9f\xf3\x2d\x56\xbb\x55\x66\x6a\xdd\x52\x24\xb6\x58\xe5\x76\xa1\xa9\xb5\xbf\x82\xa3\x11\xed\x27\x04\xbd\x06\x17\x1c\x9d\x5c\xc9\xa9\xed\x88\xad\xce\x8f\xaa\xbd\xe4\xa5\xf9\x4d\x61\x69\x2d\x57\x72\x8e\x76\x58\xb6\xbd\x64\x91\x43\x55\xb5\x63\x95\x9c\x83\x80\x7d\x33\x4d\x70\x35\x1a\xa2\xd9\x24\x4c\xe7\x7c\xf2\xa9\x36\x81\x29\x9d\xdd\x61\x9e\xeb\xc9\xed\x2c\xa5\x53\x4e\x60\x7e\xe1\xfe\xd8\x76\x8e\xe1\x5e\xde\xb3\x52\xe9\x0d\xc2\xdc\x0a\x8f\x3f\xe8\x29\x62\x37\xa6\x1d\xcd\x33\xd6\xfc\x94\x15\xe2\x7e\xe2\x2f\x58\x0a\x07\x3b\x23\xd4\x80\x44\x1a\x32\x97\x7e\x28\x95\x87\x98\x1c\x0c\xbf\xe9\x5f\x0b\xb0\xb7\x72\x14\x74\xc0\xfa\x4a\x49\x84\x53\xf9\x20\x77\x86\x58\xc7\x42\xd5\x99\x29\x65\xee\x5c\xe5\x65\xaa\x29\x24\x47\xa8\x93\xc9\xc5\xcd\xc6\xab\x9d\x04\xd3\x08\xe1\x3c\x57\x68\xbf\xaf\x02\x23\x10\x03\x1d\xa2\x02\x0c\xc0\x11\x38\xc9\xac\x5a\xd4\xf3\x1f\xd9\x96\x5b\x9a\xaf\x4b\xe1\x4b\x6d\xc0\x8d\x46\x2f\x7c\xbd\xf1\xb5\x9a\xdf\xaa\x57\x9f\x6b\x8f\x1b\xad\x7a\x75\xab\x1d\x7c\xad\x76\xc1\x36\x22\x14\xa5\xa4\xe1\x88\x91\xb6\xac\x2b\x7f\x12\xeb\x11\x5d\x8f\x61\x94\x52\x91\x73\xbd\x51\x6b\x6c\xd7\xea\x60\xfd\x60\x44\x79\xa0\x29\xfe\x8c\xd4\xdb\x74\x1a\xdf\xf4\xb4\x13\xe1\xd1\xf0\x90\x44\x5d\xc8\xb2\x12\x3b\xf0\x30\xcf\x0f\xd6\x69\x1f\x62\x9d\xc7\xb4\x5e\xf3\x82\xb5\x41\xed\xda\x7d\x29\xed\x19\x6a\x5f\xf3\x3c\xd1\xbe\xc0\x87\x03\xe7\xa7\x93\x41\x5a\xf5\x0d\xdc\xdf\x4e\x16\x2d\x42\x31\xb9\x74\x92\xc8\xc8\xaf\x4a\x61\xea\x62\xa0\x6f\xb0\xe1\xc0\xc0\xe2\x13\x23\x03\x61\xca\xff\x88\x04\x21\x60\x0a\x07\x12\x10\x89\x8e\x88\x23\x1c\xb8\xbf\x45\x16\x75\xdb\x0c\x07\x1a\x14\x1f\x24\x3b\x1b\x12\x17\x27\x9b\xcb\x0d\xb1\xfb\xcd\xe6\xd8\x42\xec\xfc\x14\x19\x6c\xc6\x25\xc4\xce\x4f\x59\xbb\x66\xb5\x43\x6c\xfd\x10\x1f\x73\x3c\x49\x88\xf3\x69\x22\xab\xcb\x9b\x86\x38\x93\x20\x32\x39\x1c\x60\x88\xdd\xdf\x22\x8b\xc3\x44\x87\xd8\xfd\x2d\x07\xd0\x70\x7a\x21\xb6\x7f\x89\xcf\x39\xc6\x23\xc4\xf9\x34\x3b\xab\xc5\x0b\xe9\xac\x56\x9a\x6e\x54\x52\xa2\x70\xe4\xce\xc1\x35\x46\x64\xd5\xdc\x45\x99\xf5\x64\x24\x0a\x6c\x45\x99\x5f\xce\xd4\x16\x89\xdf\xc2\xc1\xb4\xaf\x72\x09\x5b\x8b\x3c\xb3\xba\xf3\xb2\x1e\xb7\x7d\x99\x28\x33\x5f\xbf\xbf\xa7\x3a\x90\xb8\x1d\x78\x71\x84\xe2\xee\x2b\xf7\x5e\xe6\x4a\x8d\x90\xb8\xbf\xd7\x74\x69\x6b\x74\xba\x6e\x05\x9f\xbf\x7f\xe7\xb6\xf5\xb5\x93\xff\x7a\xe5\xee\x4d\xd5\x38\x2a\xfc\x6a\x15\xef\xb9\x19\xf6\xd4\x99\x10\xf6\x33\x73\x12\x51\x68\x3e\xc6\xee\x6f\x39\xa1\x5c\xc7\x66\x67\xca\xa4\xc8\x25\x3b\x62\xc4\xcb\xce\x96\x49\x91\xe3\x24\x7c\xdb\xd8\xf9\xb2\x49\x92\x6a\x0c\x0e\x60\xb7\xab\x26\x33\x15\xe3\xda\x2d\x4c\x16\x05\x0e\x60\x9c\xe0\xc3\x74\x2f\x09\x53\x03\x8b\x4f\xfd\x28\x65\xd3\x1e\xa6\x0a\x52\x73\x6f\xe4\x29\x7c\xd6\xcd\x4f\x91\x61\x9f\x1f\x72\x57\xd5\x19\x17\x9e\xb8\x83\xb7\x6f\x4e\x4a\x4e\xa6\xef\x8b\x73\x32\x3c\xd2\xd9\x8a\xcf\x34\x56\x78\x2e\x31\x96\x79\x75\xd2\xc8\xbc\x3a\x69\x48\x3b\x86\x61\x91\x48\x4b\x59\xbf\xb0\x76\xac\x07\x4e\x87\xa5\x9c\x59\xd9\x79\x7f\xe6\x8a\x40\xbb\x4e\x1f\xd6\xe2\x24\x79\x30\x1a\xee\xc2\x26\xd7\x70\x8a\x41\x0f\x64\xaa\xef\x49\xb4\x9a\x82\x91\x09\x0a\xf4\x98\x36\xdf\xf6\x64\xf2\xd0\x33\x2f\x08\xc4\x5a\xa4\x53\x24\x58\xe7\xdb\x4b\xbd\xdd\xe6\xee\xa7\x2e\x31\xeb\xe9\x2a\xdb\xad\x73\xd7\x2a\xf3\x97\x8f\x9e\xcd\xbf\x97\xaa\x3f\x4d\x9e\x27\x62\x95\xac\x4d\xed\xa7\x78\x70\xc9\x28\x66\x55\x28\x5d\xd3\xbc\x9b\xfc\xe9\x17\x8d\x8f\xeb\x20\x14\x9d\x04\xf3\xcc\xfc\x3c\xd2\x93\xa2\xeb\xd8\xc7\x75\x1c\x66\x92\x8c\x6c\xd7\xe7\xee\xf6\x27\xa3\xcb\xd3\xc5\x46\x4f\xca\x6a\x9f\xa3\xcb\xee\x7d\x7c\x86\x79\xc7\x39\xd8\xed\x05\xa7\x39\xb7\x37\x34\x84\x35\xc4\xe3\x19\x8e\xc7\x0a\x42\x09\x5e\x93\x46\xa5\x5c\x65\x88\x29\x49\xe2\x98\x4b\x58\x94\xc8\x22\x73\xf2\x03\x93\x9d\x24\x23\x2e\xbe\x28\xc9\xc9\x5f\x15\x02\x1b\x8b\xfa\x1a\xd4\x76\x16\x77\x86\xfc\x24\xbd\x91\x90\xbd\x93\x21\xe4\x0c\x86\x3e\x1d\x4e\x53\x84\x0f\x63\x48\x13\xdc\xdc\x68\xf0\x0e\x96\x95\xd2\x72\xaa\x7c\x91\x7e\x94\xde\x13\x2f\x0c\xf8\x99\x9d\x63\x61\xd8\x20\xa8\x6a\xb3\x1f\x81\x9e\x73\xee\x3a\xac\x8c\xdb\x91\x99\xcf\x75\xb2\xcf\x6f\x51\x5b\xb2\xac\x39\x36\xb0\xc9\xfd\xc4\x76\x58\x1b\x5a\x9d\x57\x10\x1b\x93\xe0\x6d\xd7\x1a\x4f\xd7\x9e\xf5\xf2\x98\xc1\x18\x0e\x20\xa6\xd2\x2d\x93\x7e\xf3\xa3\xd2\xcf\x0a\xd9\xb5\xcc\x0b\x77\xf5\x22\xb8\xd4\xd3\xdc\x1a\xea\xf9\xf3\xf8\xfd\x72\x6b\x14\xd6\x9d\xad\x36\xc0\xe1\x46\x1d\x20\xee\xed\x54\x8d\x0e\x25\x27\xfa\x41\x65\x04\xd2\x10\x16\x38\x8b\xbb\xb4\xe1\xe3\xd0\x8f\xc2\xb4\x86\xe1\x43\xea\x07\x41\xad\x9b\x60\x18\x54\x2a\x3e\x11\x66\xa6\x91\xb0\xca\x0f\xc0\x06\x1d\x8f\x55\xe0\x3b\xee\xde\xe0\x12\x6b\x32\xb8\x24\xdf\xb7\x8f\x82\x53\xc4\x50\x48\xc2\xd1\xa4\x87\x70\x14\xc7\x27\xdc\x97\xf5\x06\xae\x54\xd2\x9a\xc0\xdd\x40\x7e\xa0\x33\xa1\x9e\x8f\xa4\x40\x33\x99\x28\xe3\x7b\x32\x11\x3e\xe8\x1e\x9b\x87\x3d\x2f\x98\xd8\x9e\x21\x83\xd3\x49\xd6\xa0\x53\xfa\x3c\x53\x51\x87\xb3\x21\x73\xe9\xcc\x78\xb9\xc2\xde\x3e\x3a\xe4\x1e\xb1\x88\x8a\x9c\x38\x18\x26\x58\xb9\x9a\x26\x13\x20\xdd\x93\xe4\xa2\xc0\x90\x90\xfa\x10\x34\x82\x56\x9d\x9b\x47\xf3\x60\x8d\x56\x7d\x6a\xf2\xf3\x95\xda\xb1\xc9\xcd\x5b\x7c\xf5\x04\x9c\xbb\xf6\x54\x38\xae\x0f\xa3\x34\x85\x5d\x36\x5e\x2c\xf9\x1b\x72\x07\x7c\x43\x79\xf9\xe4\x9e\x28\x0e\xe0\x7a\xb4\x2e\xeb\xe3\x2b\x08\x6f\x86\xde\xba\x7f\x92\x8c\x54\xf1\x6f\x78\x9b\x64\xd3\xfb\x46\xe0\xc9\x99\x47\xc1\xe9\x24\x1b\xaf\x0b\xeb\x57\x26\x99\x51\xf1\xaa\xdd\x13\x1c\x0d\x50\x47\xef\x3f\xd5\x53\xa7\x57\xbb\x05\xa3\x97\x2b\x5a\x8d\x62\xea\x35\xe7\xc9\xe9\x15\xd2\xac\x43\x48\xab\x42\x30\x51\xa4\xdf\xe9\x24\x38\x1d\xc5\xd5\x11\xba\x20\xf3\x40\x7c\x84\x48\x82\x79\x7d\x4f\x22\x89\xee\x13\xd8\xab\xd2\x44\x53\x40\xf9\xfb\x3c\x5c\x88\x92\x27\x20\x8c\x3f\x31\x5e\x2f\xf1\xf2\x61\xfc\x71\xde\xdf\x25\x9e\x15\xc6\x1f\x1b\x97\x97\x78\xce\x30\xfe\x78\x71\xe7\x97\x38\x70\x7b\xfa\xc4\x86\xf1\x27\xe7\xe6\xaa\xd3\xf1\x02\x9e\x89\xae\x0b\xf3\xa2\x3d\xf5\xbc\xd7\xb8\x26\xc1\xb5\x43\x88\x59\x7f\xe0\x2b\xf7\x5e\xd6\xe1\x57\x69\xfe\x66\x01\x48\xe8\xc3\x10\xaa\xd7\x2f\x41\x2d\xed\xa3\x1e\xf5\x03\x80\x43\xd8\x52\xfd\xa9\x36\xda\x6b\x94\xad\x30\x5c\xe3\xd1\xe5\xc8\xc9\xdd\x88\x44\x83\x74\x17\xd6\x86\xc9\xd0\x0f\xc4\x49\x9d\x36\x4f\x95\x83\xab\x16\x8f\x7f\xd9\x9e\xf8\x24\x08\x96\x72\x11\xca\x48\xc4\x5e\x12\xe2\x62\x6f\xa1\xa8\xf8\xe4\xcc\x1f\x71\x96\x73\x20\x5a\x1b\x0a\x9c\xa5\x5f\x78\xf5\x3b\x68\x62\x1d\x04\xd6\x89\x98\x85\xa6\x10\xb2\xe5\x09\xd8\x19\xba\x67\x21\x1f\x67\xf7\x2c\x8f\xc7\x4d\x2c\x2e\x79\x4c\x6d\x85\xe6\x5e\x32\x78\x00\xae\xd1\x88\x1c\x42\xba\x46\x33\xde\x1c\x86\xc3\x18\x89\x38\x9d\x2a\x66\xb7\x62\xb1\x78\x4c\x84\x10\x2b\xf6\x8b\x95\x0e\x11\x47\x33\x09\xad\x34\xae\xd2\x45\x07\x23\x0a\x53\xbe\xac\x85\x43\xff\x11\x89\xc3\xa4\x52\x49\xc4\xd6\x99\xc8\x88\xca\xc0\x04\x13\x09\x21\xf0\x51\x28\xdf\x81\x0e\xa2\x93\x03\xf8\x12\x0f\xe6\x5c\xf0\x14\x53\x44\xaa\xeb\x27\xa3\xb8\x2b\xf2\xf8\x81\xf4\x1c\xd1\x97\x3f\xf5\xab\x4e\x3b\x57\x41\x4d\x36\xeb\x84\xd2\x57\xb0\xf4\x06\xdb\x7d\x19\xf6\xe8\xd5\x18\x75\x1e\xe8\x9a\x51\x7a\x3b\xa1\x37\x0f\x71\x42\x60\xd7\x6a\x2e\xbd\x9d\xec\xf1\x5e\xbf\x18\x47\xf8\x81\xfb\xe1\x0a\x6f\x45\xec\x59\xf7\xcb\xb5\xe4\x18\xc7\x49\xd4\x75\x6b\x7f\x19\xe1\x07\x57\x15\x7b\xa5\x3f\x11\xd8\x49\x0e\x31\x7a\x0d\xbe\x42\x62\xab\x63\xfd\xa9\x83\xb3\x7f\x08\xe9\xbd\x64\x44\x59\xc3\x35\x7e\xdf\x45\xec\xf3\x9e\xf0\x41\xc5\x68\xeb\x2b\x24\xfe\x92\x08\x97\x7c\x2f\x49\xd8\x75\xc4\x9a\xe3\xda\x90\xf0\xbf\xd7\xc4\x82\xb4\x5a\x2d\x1c\xa3\xb2\xf7\xf4\x56\x2c\x5f\xe5\x4b\xdf\xd7\x2b\x13\xd6\x8e\xfb\xa8\xd3\xaf\x54\x1a\xe6\xc7\x78\x0c\x6b\x1d\x4a\xe2\x2f\xc0\x13\x06\x0e\x20\x8d\xbe\x00\x4f\xec\x3e\xbb\xc3\x3d\xbd\xe1\xfc\x6a\x94\x2b\x5e\xe2\x02\xc7\x63\x6f\xff\x80\xd7\xc3\x51\x10\x0b\xd3\xf4\xd4\xcc\x77\xe9\xc2\xd9\x28\x6e\xa8\xe5\xb1\x4b\xba\xa2\x9e\x55\xc4\x6b\xf1\xda\x6e\x3f\xec\xd5\xb1\x64\x03\x82\x48\x2b\x8f\x16\x6e\xf5\x6a\x89\x2d\x5a\x75\xad\x2b\x0b\xba\x23\xe1\xac\xcd\xd2\x71\xdf\x68\x00\xea\x0c\x3e\xea\x5a\xfe\xd5\x48\x58\x46\x61\xf4\x01\x5f\x3d\x42\xf0\xb8\xaa\xdc\x6d\x34\x07\x11\xc2\x5e\xd0\xa2\xed\x35\x18\x92\x4a\x85\xd8\x47\x88\x38\x11\x1d\xbc\x26\x6a\x66\x35\xee\xf6\xe6\x99\xbe\x5a\x46\x24\x06\x34\x14\xfe\xeb\xa0\x83\xaf\xbd\x97\x00\xb6\xd3\x12\xca\xf7\x24\x40\x21\x7f\x63\x6c\x3d\xc4\x05\x49\x58\xb6\xd1\x40\x14\x92\xda\x3e\x17\x48\xea\xbf\xb7\x50\x87\x24\x31\x3a\x60\xf7\x7e\xf5\x49\xfc\x59\xa3\x21\xaa\x54\x22\x43\x05\x88\x01\xfd\xc4\xdc\xfd\x74\x8f\x73\x2d\xce\xd3\xed\x7c\x9f\xb4\xcb\x37\xf9\x7c\xd6\xa7\x9a\x35\xb2\x9e\xcc\xeb\x91\x99\x41\x5a\xa7\x4d\xb9\xe2\xe9\x44\x7f\xbd\x6c\xed\x1c\x9f\xe9\x7d\x70\x88\x1d\x0f\x09\x4c\x58\xb1\x7b\x2f\x6b\xf6\xd0\xbb\x20\xb6\x78\xa7\x1f\x91\x2b\xd4\x37\x6c\x1e\x77\xa7\xb3\x19\x7a\x17\xbc\x00\xc0\xc9\xa4\x1d\x54\x2a\x84\x87\x90\x51\xbe\xd3\x50\x00\x12\x9e\x06\x12\xed\x9c\x63\x4a\xf4\x08\x84\xf5\x95\x79\x98\xc4\x27\x3d\x14\xc7\x46\x0e\xc6\x3d\x08\x2c\x2a\x0d\xcb\xf2\x52\x8b\x5d\x07\x61\xc9\x4d\xad\xc8\x01\xa4\xb8\x16\x8c\xc7\x1b\xd3\x85\x63\xea\x8a\xf7\xb1\x97\x87\x61\xf5\x98\x5e\x89\xc2\xc6\xe3\x05\x85\x62\xab\x2b\xee\x02\x57\x5c\x77\xbc\x9e\xb0\x90\x1d\x67\x7e\xd3\x7d\x5c\xd7\x81\x99\x51\x23\x0c\x7a\x5a\xcc\x79\x89\xd4\x7a\x88\xa4\xf4\x6a\x1f\xc5\xdd\x4b\x81\x0a\x0f\xc5\x7f\xfa\xf6\x37\x4d\xf5\x89\x1b\x3f\xa2\x90\xd0\x49\x6b\xec\x39\x0c\xb6\x2f\xc4\xe8\xe0\x42\x7a\x92\x52\x38\x28\xf9\x08\x1f\xd2\x0b\x72\x2f\x9d\x95\xc2\xf1\xde\x28\x86\x29\xbb\xf7\x23\x7c\x38\x8a\x23\x82\x5e\x83\x21\xac\x0d\xe3\x11\xe1\x5a\x21\x65\x1b\x4c\x6b\x37\x15\x66\x6e\x49\xea\xfc\x2c\xb9\x00\x0a\x63\x5d\xef\xa6\x31\x55\x3f\x2d\x96\x1f\x8a\x69\xec\xc2\x21\x81\x9d\x88\x42\x69\x50\x6c\xda\x5e\x47\xe9\xba\xfe\xda\xd5\x46\xc2\x26\x10\x79\x73\x1d\x0d\xd8\x70\xaf\x9b\x22\x6c\x7f\xaf\x3f\x95\x19\xde\xa7\x2e\x79\x60\xa3\x01\x4e\x51\xb7\x99\x1d\xf9\xda\x61\x9c\x1c\x44\x71\xea\x81\x11\xa6\x28\x6e\x7a\xdb\xb5\x7a\xad\xee\x4d\x02\x7b\x10\xd8\x69\x9c\x75\x64\x5c\x76\xfd\x15\x7d\x10\xa4\x0d\x78\xd6\x40\x2f\x3a\x0c\x92\x3a\x5a\x35\xf8\xc1\xfc\x23\x72\xba\x6e\x15\x5c\x9f\x3c\xd6\x71\xb1\x6a\x5e\x7e\x64\xf4\xa2\x5b\x72\x5c\x74\xf9\xc5\x46\x45\x17\x7b\xcc\x63\xa2\xeb\x2d\x1e\x11\x43\x46\xac\x65\x05\xec\xad\x67\x55\x01\xdc\x0d\xea\x0c\x78\x76\x2f\xbb\x3b\x72\x1a\x89\xca\x90\x18\x46\xab\x4a\x29\x54\x21\x1d\x72\xa9\xd0\x25\x7f\x83\xf1\xfb\xf2\x41\xc0\xed\x2f\xd6\xae\x7f\x79\xef\xfa\xed\x6b\xfb\x77\xef\xdd\xd9\xbb\xb3\xf7\x95\xbb\xd7\xef\x2b\x47\xfc\x85\x1f\xe5\x34\xb2\x73\xa5\x78\xb5\xa8\x69\xd6\x4c\xe8\x32\x2b\x26\x5b\xc9\xc7\x6b\xd5\xe4\x3a\xe0\xd7\xed\x25\x11\x48\xff\x7d\x8b\xec\xb1\xfc\xa8\x2d\x45\x81\x72\xe3\xf6\xb1\xa3\x42\xc5\x63\x67\xb5\x36\x75\xf4\x0a\xd4\x55\xee\x36\xd0\xb1\x02\xcd\x9a\x9b\xfe\x18\xab\xa8\x12\x1e\xd4\xe0\xc2\x20\x7a\xa0\x82\x34\xcd\x74\xae\x63\xab\x02\x8a\xaf\x34\x19\x97\xc5\x32\x5d\xf1\x65\x97\xe8\x65\x68\xbb\x5f\x25\x2d\xca\x78\x30\xda\x36\x3c\x4d\xa1\x26\xeb\x11\x18\x33\xbf\x0e\x34\x93\x10\xd8\x5c\x98\x52\x65\x70\xbf\xd0\xfe\x0d\x99\x6e\xad\xa9\x03\x84\xbb\x52\x49\x21\xde\x18\xb4\x18\xe3\xd9\x56\xa1\x9d\x30\xbf\x67\x69\x6e\x6c\x2b\x0c\x43\x24\xfb\x56\xa9\x20\x71\x3b\x3a\x3d\x16\x57\xfc\xab\xc9\x08\xd3\x26\x69\x79\xf2\x77\xb5\xc3\x12\xbc\xb6\x4b\x9a\xdd\x00\x1d\xd8\x47\x7c\x1d\xcc\xbb\x14\x9c\x8d\x74\x1e\x8b\xe1\x2c\x26\xc5\x89\x4f\xe9\xec\x16\xd8\xaa\xb7\xe7\x19\x0e\xc5\xc2\xce\xc7\xea\x5e\x98\x35\x2c\xee\x79\x33\x4f\x55\x28\xc1\xb9\x98\x9c\xd2\x47\xe0\xe3\x65\x92\xcd\xd9\x9c\x65\x98\xf5\x09\x6e\x18\x66\xe5\x09\x4e\x63\xce\x2f\x45\x3a\xdd\xd7\x4f\xac\x58\x43\xa6\xbc\xce\x90\x39\xf3\x49\xe6\xcc\x37\xb8\x10\x87\x4f\x70\x50\xd6\x6d\xcc\x37\x87\xce\x80\x9e\xbd\x0d\xd5\xa9\xc0\x3b\x6d\xb6\x5a\x17\x3e\x73\x01\x78\xac\xa1\xd6\x85\xf4\x33\x17\x90\x82\xbf\xee\x47\x0f\xc7\xec\x66\x1d\x20\x91\xfc\x99\x06\x14\x5f\xfc\xa4\x43\x93\xe1\xf8\x08\x91\x60\xa4\x3e\xa1\xec\x17\xe4\x7e\x88\x62\x14\xa5\xe3\x94\x46\x74\x94\x8e\x0f\x12\x3c\x4a\x83\x4c\xa5\x07\xa3\x40\x55\x96\x9a\xb4\x5e\x2f\x8a\xc7\x34\x19\x44\x34\x48\xe4\xd7\x44\x7d\x6d\x51\xd4\x0e\x46\x03\x99\x1c\x59\x89\x91\x93\x96\xca\x0e\xe8\x6a\x77\x9b\x7e\xeb\xeb\xbd\x76\xd0\x83\x63\xbf\x15\x93\x76\xd0\x53\xc8\x7c\x66\xeb\x48\x65\xea\xa3\x23\xa8\x92\x55\x83\x5f\x8f\x20\x4a\x46\x27\xed\xf1\xab\xa3\xe0\x44\x75\x50\x15\x78\x38\xee\xf4\xc7\x69\x3a\x4e\xfb\xd9\xae\x0d\x22\x4a\xc6\x47\x90\xd0\x31\xc2\xdd\xc0\xdf\x6d\xa2\x87\x63\xf8\x50\xe5\x42\x1d\xa8\x46\x7c\x30\x8e\x83\x64\x94\x42\xf3\xc5\xfa\x80\x3a\xf9\xf4\x44\xd7\x02\xb1\x4e\x82\x58\x25\x8a\xe6\x5f\x1d\xa1\xd7\x54\xca\x6b\xac\xad\x36\x50\xeb\x99\x4d\xbf\x18\x1c\x91\x35\x4d\xdd\xa2\x38\x80\xc7\x7a\xf6\x8f\xd3\x82\x21\x1e\x0d\x44\xa2\x1f\x05\x38\x8a\x4f\xc6\xfe\x41\x10\x8d\xfd\x6e\x80\xa2\x43\x9c\x8c\xfd\x61\x10\x11\x88\x69\x1f\x32\x90\x24\x3c\x2d\x0d\x4e\x70\x32\x1c\xfb\x34\xe8\xc3\xc0\x4f\x51\x3a\x4e\xa1\x6e\x37\x45\xb2\x95\xaf\x47\xac\xbe\xf2\xef\x7c\x06\x8f\xa0\xc2\xae\x07\xad\x69\x4b\x9d\x4e\xd0\x7c\x12\x9f\x75\xab\x70\xc1\xfc\x22\xfd\xf5\x44\x8e\x4d\x00\x89\x49\xe4\xb0\x9c\xde\x20\x39\x32\x1f\x18\x9c\x5b\x10\xd0\x69\x3e\x3b\x9f\x6c\xca\xd5\x82\x4f\x03\x1f\xa6\xc1\xae\x83\x6d\x92\x29\xef\xa7\xfd\x24\xdb\xa3\x0e\x41\xa9\xd8\xae\x3e\x4a\xc7\x66\xbc\x90\xde\xcd\xc1\xc3\x16\x82\x6d\x55\xea\x21\xca\x6d\x66\x7f\x94\x8e\x91\x2a\x37\x4a\x4b\x37\x6e\x0e\x41\xbe\x0e\x21\xb6\xd1\xd1\xab\x9d\xad\x6e\x35\x64\x0f\xcd\x76\xb0\xd3\xd1\x43\x6b\x9d\xbe\x96\xe9\x6a\x37\xa2\xd1\x41\x94\xda\xdd\x6d\x03\x44\x08\xe4\xeb\xf7\x6e\x84\x08\xa3\x61\x1e\x63\x0a\xf8\xd3\xf4\x21\x4c\x86\xdc\x71\x62\xcb\x1b\x44\x2c\x61\x20\x76\x86\xd7\xe9\xa3\xb8\xeb\x01\xf1\x97\xc8\xc4\x94\x3b\x91\x4f\xe1\x43\x31\x97\xde\x20\x39\x82\xac\x4c\x22\xc9\x80\xd7\x49\x8e\x3d\xe0\x3d\x40\x58\x54\xf9\x5a\x32\x38\x40\x2c\x87\x00\xf8\x5e\x1a\x61\xce\xdf\x70\x76\xb6\xe5\xc1\x57\x47\x68\x28\xa4\xe9\x1e\xc2\xbd\x84\x0c\xb8\x8e\xc1\x03\x1e\x11\x0f\xd1\x07\x09\x86\x27\xac\xd1\x21\xec\xb0\x1a\xb8\xe5\xb7\x00\x7a\x28\xed\xb3\xdf\x7d\x08\x87\x1e\xf0\xbe\x09\x23\x76\x16\x78\xc3\x24\xe6\x3b\xbe\xc0\x90\x7a\xd6\x29\x7f\xa6\xe6\xad\x17\xbe\xfe\xb5\xf4\xb3\x9f\xb9\x00\x48\x78\xc1\x6f\x7d\xed\xf8\x42\xb5\xbd\xd9\xda\xbf\xf0\xb5\xb4\xda\x0e\xfc\x56\x54\x7d\xed\x6b\xdd\xf6\xe6\x67\x82\x0b\x00\xcb\xef\xec\xcb\x66\xe0\xb7\xae\x54\xbf\xda\x96\xdf\x3f\xcb\xbe\xa3\xf0\x82\x9b\x76\xc1\xb0\xde\x49\xce\xa0\x02\xe0\xd0\x18\x54\x5c\xc6\x5c\xba\x09\x6b\xd6\x24\xb4\x78\x78\x0e\x9a\xbc\x9c\x1c\x43\x72\x35\x4a\xa1\x1f\xb4\xc3\x8d\xba\x13\x22\xc8\xad\x53\xf1\xa0\x61\x1d\x20\x53\x39\xbe\x8c\x2e\x61\xc6\xb6\x87\xb4\x85\xdb\x00\xd6\xf4\xaa\x6b\x91\x56\x3d\xd7\x02\x69\x35\xb2\x99\x1a\x33\x33\xdd\xc4\x47\x90\xa4\xb0\x24\x6f\xbd\x24\x6f\x51\xe3\xf5\xb6\x13\x82\x28\x38\xf5\x61\x08\xc7\xe3\xd3\x49\x60\x8f\x4d\xe8\x8c\xd4\x78\x3c\xf2\x03\xbb\x09\xbe\x9d\xc2\x6c\x02\xcf\x26\xe7\x5c\xe8\xff\x39\x83\xa3\x59\x08\xc5\x10\xa5\xe3\x71\xcb\x3a\x5a\x0c\x0f\xc5\xd3\x75\x9d\x4d\xd6\x68\xb6\x57\x3c\xd1\xde\x49\x23\x3f\x98\xac\x25\x3e\x63\xc5\xac\xe4\x00\x44\x3c\xc9\x45\x50\x19\x0a\xf0\x70\xad\x57\xa3\x4e\x1f\xfa\xc1\x04\xf5\xfc\x0d\x27\x5c\x5a\xa5\xe2\xfe\xe6\x92\xf5\x20\xe3\x3c\x33\xc8\x1a\xb3\x7a\x7b\x7d\x94\xae\x1f\x90\xe4\x38\x85\x64\xbd\x9b\xc0\x74\x1d\x27\x74\x3d\x1d\x0d\xf9\x9d\xba\xa0\x46\xb0\x3e\x14\x57\x70\xa9\x6e\x5b\x67\xd7\xa0\x75\x98\x5e\xac\xa6\xfd\x68\xd0\x5c\xef\x53\x3a\x6c\x5e\xb8\x70\x88\x68\x0d\x25\x17\x4e\x5e\x7c\x65\x8b\x1c\x7a\x96\x57\xee\x91\x56\x25\x16\x54\x6e\x94\xa0\xfb\x5d\xd4\xa1\xc2\x6d\x79\x17\xc6\x90\x42\x95\x06\xe0\x24\xb5\x42\xc6\x9d\x5a\xc3\x92\x33\xca\x18\x8e\xc8\xa1\x1a\x31\x31\x88\x36\xdf\x9b\xbf\xa9\x08\xdd\xe9\x7e\x87\x95\x78\x25\x85\xdd\x70\xa3\x2e\x43\x20\xa4\xbc\x96\x16\x6c\x8f\xc7\x7e\x26\x45\xaa\x44\x6d\xa9\x05\x0c\x82\x89\x28\x68\x78\xe9\x22\xdb\xf6\x25\x2d\x89\x4e\x27\x6b\x79\x44\xa5\xba\xa2\xc5\x6f\x28\x35\xfb\xae\xaa\x2f\xe4\xa2\xd0\x50\x20\x8e\x4d\x57\x74\x8a\xec\x8a\x11\x5c\x89\xab\x62\x30\x99\x00\x33\x94\x79\xd3\x17\x0b\x8d\x86\x33\x5e\xe1\x48\x8d\xbb\x6c\x83\x25\x4c\x40\x17\xa5\xe5\x73\xa6\x8a\xf2\xa9\x77\xca\x9a\x94\xb9\x66\xd1\x9d\x90\xf2\xf9\xc8\x14\xcb\xde\xe0\xb3\x11\x06\x26\x40\xe4\x28\xf2\x90\x6f\x46\x42\x9a\x12\xe5\x17\x20\x27\x2e\x8a\xa2\x08\xc1\x02\x9b\xb2\x0c\xc5\x0b\x26\x86\xd0\x3c\x4a\x3b\xaa\x92\x69\x0d\xd9\x64\xc9\x1e\xcc\x39\x5a\x92\xc6\x4d\xbc\x2d\xd0\x82\xf9\xba\x0d\x55\x5c\xb8\x17\x91\x53\x37\x43\xbd\xcd\x6a\xd4\xd3\x53\x66\xf9\x30\x73\x02\xc1\x7e\x41\x1d\x8f\x65\x53\x4a\x34\xb4\xbb\x79\x2a\x4c\xfd\x25\xc3\x22\x43\x4e\xbb\x2b\xc0\x4e\xd2\x83\x15\x34\xfd\xc6\x46\x18\x0e\x23\x92\xc2\x1b\x71\x12\x51\xee\x14\xdf\x97\xc7\x93\xaa\x8e\xce\x5d\x5d\x90\x21\x08\xbb\xb4\x09\x37\xbd\x75\x6f\x93\x5a\xeb\xcc\x1d\x8e\x19\x7b\x69\x7f\x9e\x52\x85\xfd\x56\x05\x0b\x31\x95\xa7\x25\x5b\x38\xa2\xac\x3d\x41\xdc\xb3\x3f\x77\xcd\x0f\x46\x40\xb9\xaa\x07\x1d\x05\xf4\x14\xd0\x55\x40\x5f\x01\x43\xcb\x85\x7f\x1a\x6e\xc0\xf1\x98\x0a\xa5\x3a\x0c\xc0\x28\x44\x1a\x4e\x9d\x07\x4b\xbd\x30\xb3\xa0\x81\xdf\x0d\x49\x0d\x3e\x84\x1d\x6e\xe2\x81\x15\xc8\xe6\xa6\x1f\x76\x5b\x5b\x19\xbe\xc5\xd9\x89\x36\x07\xd7\x6b\x8f\xc7\x25\x9f\xfa\x6d\x83\x03\xe3\xe0\x86\xeb\x08\xaf\x47\x01\x43\x47\xfa\x4d\x1a\x6e\x7a\x9f\xf1\xb4\x31\x40\x27\x8c\x5a\xc3\x36\x18\x55\x2a\x51\xab\xdf\xae\x54\xfc\x4e\xe8\x68\xae\x3a\xd1\x10\x51\x41\xcb\x3b\x01\x18\x96\x7e\x1c\x06\xe2\x25\xe5\x30\x8e\x3a\xd0\x17\xd1\x2c\x0f\xaf\x3f\x1c\xfa\x43\xe0\x21\x2f\x00\x1d\xa3\x86\x1f\x84\x89\xe2\x21\x07\xcf\xd7\x2b\x95\x0d\x7f\x18\xfa\x71\x98\xb4\x06\xd5\x46\x3b\x68\xd5\xdb\x81\x1a\xd0\x4b\x83\x6a\x35\xb8\x24\x31\xe5\x99\x62\xc6\x2b\xb1\x3c\xa0\x13\xc6\x82\x59\x54\x6d\x0e\x41\x87\x11\x57\x23\xc3\x99\xa9\x60\xca\x88\xf3\x16\x16\x12\x3e\x76\xc5\xf7\x0c\x4d\x37\x2c\x3e\x7d\x32\x91\x90\x0a\xc4\x7b\x41\x4e\xac\x9c\x8d\x0e\x38\xeb\x40\xcc\xd7\x59\xcb\x6c\xe9\x59\x83\x9d\x17\x29\x9f\xaf\x13\x12\xd4\xf3\x6d\x4b\x8c\xc0\xd1\x26\xb9\xd6\x19\xc2\xe2\x46\x7e\xd9\xbb\xf5\xf2\x8b\x11\x49\x33\xf9\x65\x6a\x8d\xf5\xe7\xc5\x64\x84\xbb\x2f\xe9\xa2\x6e\x46\x6e\xf3\x7b\x50\x9c\xb5\x60\xcc\xe2\x24\xea\x56\x9d\xa8\xda\x05\xc6\x1a\xd2\x7f\xd9\x8c\xf5\x67\x5b\xca\xa8\xa3\xc9\xb7\xa4\xbf\x81\x0f\x81\x08\x88\xc1\xfe\xdb\xa8\xf3\x4e\x6f\x90\x1c\x87\xcf\x28\xbd\x88\xc3\xcc\x11\x58\x8f\x4c\x1c\xda\xd7\x20\xa9\x79\xca\x66\x4a\xcb\xf0\xcd\x03\x0f\x1c\x0d\xe0\x78\xec\x0b\x40\xbf\xe0\x80\xb5\x38\x4a\xe9\x4d\x69\x79\xe9\x5d\xf0\x82\xcd\x46\x10\x00\x5c\x12\x61\xb9\x2a\xcc\x8d\x95\xa5\x26\xbb\xde\x48\x5b\x40\x75\x15\x7d\x24\x95\x90\x3b\x82\x8a\x46\xa1\x90\x6e\x7a\x6e\x78\x73\x0f\x24\x32\x51\x18\x39\x55\x33\x5f\xa3\x90\xdd\xee\xd8\x7f\x23\x75\x33\x79\x00\x4f\x52\x5f\xce\xd6\x37\xd3\xda\x3e\x8c\x1e\xec\xa7\x10\xe2\x00\xc4\x61\xfd\x52\x7c\x79\xa4\xe8\x60\xac\x5e\x3e\x74\xc2\x51\x2b\x6e\xaf\xb1\xc3\xbf\xe3\x0c\x13\x02\xf5\x60\x17\xfb\x1d\xe0\x55\x19\x71\xf4\x82\xf1\x58\xc6\x3a\xe9\x04\xcd\x7c\xf6\x04\xd4\xd9\xa9\xe2\x16\x48\x55\x81\x60\xe2\x17\x77\x1b\x87\xf5\x4b\xd8\x3c\xc8\xc0\x5c\x76\x60\xf5\xd3\x27\x3e\xbb\xec\x07\xfc\xf9\x3d\x88\xec\x07\xf8\x73\x54\x23\xc6\xed\x66\x51\x75\x3e\x04\x69\xd1\x7e\x18\x44\xb4\x5f\xd5\x8f\xf2\x54\x48\xc2\x83\xa5\xa2\xaf\xaf\x6c\x31\x57\xb6\x98\x2b\x5b\xcc\x27\xd2\x16\xd3\x35\x35\xc8\xbe\x09\x97\xd9\x6e\x45\xb4\x5f\x8b\x0e\x52\x9f\x2c\x75\x20\x44\x07\xe9\x9c\x8f\xf9\x24\x9b\x80\x67\x3c\xc5\x2b\xa6\x5d\x9d\x64\x45\xbc\x56\xc4\x6b\x45\xbc\x56\xc4\xab\x80\x78\x75\x92\xa5\xa9\x57\x27\x39\x2f\xf2\xd5\x5f\xd1\xaf\x15\xfd\x5a\xd1\xaf\x15\xfd\x2a\xa4\x5f\xfd\x47\x20\x60\xfd\xf3\xa0\x60\xdd\xee\x23\x79\x75\x81\x35\x02\xbb\xa3\x0e\xf4\xfd\x42\x1f\x0e\xc2\x35\xb2\x0f\x83\x4d\x09\x51\x6e\xa7\xb8\xcc\x80\x74\xbb\x21\x2d\x1e\x0e\x52\x38\x1c\xd4\x1e\x0e\x32\xef\x70\xa4\x68\x6e\x9f\x64\x2b\x7a\xbe\xa2\xe7\x2b\x7a\xfe\x69\xa2\xe7\x29\xc2\xcb\x92\xf3\x14\xe1\xf3\xa0\xe6\x29\xc2\x2b\x7e\x74\x45\xbf\x56\xf4\x6b\x45\xbf\x8a\xe9\xd7\xd2\xfc\x28\x2b\x7b\x1e\x14\x8c\x46\x2b\x06\x6c\x45\xc0\x56\x04\x6c\x45\xc0\x0a\x08\x18\x8d\x96\x66\xc0\x68\xf4\xa8\x0c\xd8\xda\x9c\xe4\x6b\x6b\x45\xbf\x56\xf4\x6b\x45\xbf\x3e\xf5\xf4\x6b\x2b\x00\x58\x3c\xcb\x40\xfc\x25\x47\x8e\x94\x6d\xf9\x18\xa0\xa5\xa9\xd9\xd6\x39\x71\x63\xab\xfb\xe4\x8a\x9c\xad\xc8\xd9\x8a\x9c\x15\xb3\x63\x4b\xdf\x27\x59\xd9\x73\xa0\x60\x9d\x03\xb2\xf2\x54\xb8\x22\x60\x2b\x02\xb6\x22\x60\x79\x02\xc6\x88\xc3\x92\xf4\x8b\x15\x3d\x0f\xf2\x05\x51\xbc\x22\x5f\x2b\xf2\xb5\x22\x5f\x2b\xf2\x95\x27\x5f\x10\xc5\xcb\x92\x2f\x88\xe2\xf3\x20\x5f\xf1\x6b\xdb\x2b\x71\xd8\x8a\x7e\xad\xe8\xd7\x8a\x7e\x15\xd0\x2f\x46\x1d\x96\x25\x60\xac\xec\x79\x50\xb0\xd5\xfb\x84\x15\xfd\x5a\xd1\xaf\x15\xfd\x2a\xa2\x5f\x4b\x3f\x4f\x38\x9f\xd7\x09\xab\xc7\x09\x2b\xe2\xb5\x22\x5e\x2b\xe2\x55\x46\xbc\x96\x95\xdd\x9f\xd3\xd3\x84\x2e\x3a\x3a\x97\xa7\x09\x17\x1e\xf5\x69\x42\x17\x1d\x9d\xc3\xd3\x04\xf8\x70\xb8\x22\xe6\x2b\x62\xbe\x22\xe6\x2b\x62\x9e\x23\xe6\xf0\xe1\x70\x49\x5a\x0e\x1f\x0e\xcf\x81\x94\xc3\x87\xc3\x41\x63\x45\xbd\x56\xd4\x6b\x45\xbd\x56\xd4\xab\x88\x7a\x0d\x1a\xcb\xd3\xaf\x41\xe3\x1c\x28\x58\x2f\x4e\xe6\xf7\x90\xbd\xa2\x60\x2b\x0a\xb6\xa2\x60\x9f\x22\x0a\xc6\xa9\xc3\x92\x14\x8c\x97\x3d\x0f\x0a\x46\x92\x11\x5e\xea\xb1\xff\x8a\x84\xad\x48\xd8\x8a\x84\x7d\xd2\x49\x18\x27\x0f\xcb\xd2\x30\x5e\xf8\x1c\x88\xd8\x61\x67\x45\xc1\x56\x14\x6c\x45\xc1\x56\x14\x6c\x2b\xe0\xcf\xaa\xea\x6d\xbd\x79\xc2\x30\x44\xbb\xf5\x26\x02\x91\x08\x9c\x93\x9a\xf4\x68\xb7\xde\x8c\xc0\x28\xd4\x3e\x31\x93\x00\xc4\xe6\x57\xaa\xdd\x54\xb3\xcc\xa3\xdd\x98\xbb\x10\x8e\x77\x47\x4d\xec\xb7\x62\x30\xfa\x8b\xb8\xbd\x14\x59\x3c\xec\x9c\x07\x4d\xec\x9f\x0c\x93\xa5\xde\x38\x2c\x4a\x13\xb9\x93\xee\x0c\x59\xcc\x12\xc5\x0d\x97\x28\x56\x2a\x53\x49\x62\xd1\x36\x2b\x21\xbc\x2b\xfa\x51\x46\x3f\x96\xa3\x1e\xe9\x90\xc0\xa8\xfb\xa9\x21\x1c\x36\xab\xc3\x37\x8c\xf4\xfc\xcf\x12\x00\x5f\x8b\xcb\x6c\x70\x5e\xd3\x39\x6c\x71\x34\x18\xad\x9e\x01\xac\xf8\x9e\x4f\x16\xdd\x5a\xf1\x3d\x8f\xfd\x55\x39\xa3\x13\x4b\x3f\x2a\x67\x85\xcf\x81\x96\xc5\x9d\xc2\x08\xd4\xa5\xd7\xbd\xf9\xc3\x7a\xac\xa8\xdd\x93\x42\xed\xb0\xa1\x76\x64\x79\x6a\x47\xf2\xd4\x8e\xcc\xa2\x76\xc4\x50\x3b\x32\x27\xb5\x23\x8b\x53\x3b\x12\xb8\x3d\x7d\xd2\xa9\x1d\x3e\x37\x6a\x87\x14\xb5\xc3\x21\x51\xb7\x3c\x5c\x72\xcb\xc3\x45\xb7\x3c\xfb\x26\x97\x8c\xc7\xec\x4f\xba\x5b\x6f\x9a\x9b\xdf\x67\xd3\xe0\x02\x0f\xfc\x73\xd8\xe9\x06\x7e\x2b\x01\xe9\x72\x97\xbb\xb8\x33\x08\x51\x31\xb5\x4c\x0a\xa9\x25\xb2\xa9\x65\x32\x2f\xb5\x4c\x0e\xab\x70\xc5\xfa\x7d\x92\x89\xe1\x8a\xf5\x7b\xb2\x88\xe1\xc7\x48\x68\x1f\x27\x87\x4b\x4a\xec\xe3\xe4\xf0\xfa\x79\x30\x7b\xc9\x61\xa3\xbe\x22\x5f\x2b\xf2\xb5\x22\x5f\x2b\xf2\x55\x44\xbe\x1a\xf5\xe5\x09\x58\xa3\x7e\x4e\x14\x6c\x65\x78\xbf\xa2\x60\x2b\x0a\xb6\xa2\x60\xc5\x14\x6c\x59\xd3\x7b\x5e\xf6\x7c\x28\xd8\xca\x07\xc7\x8a\x80\xad\x08\xd8\x8a\x80\x15\x12\xb0\x65\x5d\x70\xb0\xa2\xe7\x40\xbe\x06\xd1\xc3\x95\x71\xc3\xa7\x76\x9f\xaf\x8c\x1b\x16\x34\x6e\x18\x44\x0f\x1f\x8b\x69\xc3\x20\x7a\x78\x1e\x9b\x7b\xb9\x70\x6b\xab\xcd\xbd\xda\xdc\x9f\xca\xcd\x8d\xf0\xe3\xd9\xdc\xe7\x12\x8d\x6c\x90\x9c\x4f\x6c\xc9\xbf\x78\x54\x07\x0e\x83\xe4\x3c\x62\x4b\x0e\x46\xf1\xa3\x99\x69\xce\x3b\x1e\x9f\x7d\xe4\xf1\x60\xdd\x3a\xfb\x01\x19\x26\xc7\x67\x39\x1e\x7c\xc7\x0c\x93\x63\x41\x6d\x96\x1b\x89\x61\x72\x7c\x0e\x03\x41\x22\xdc\x4d\x06\xab\x3b\xfa\xea\x8e\xfe\x89\x3a\xde\x57\x77\xf4\x45\x4f\x79\x1f\x87\x9e\x4a\xcf\x6e\xc3\x4a\xc5\x4b\x39\x90\xfd\xa0\x3b\xb3\x6b\x93\x00\xd9\x8e\x5a\x86\x93\x66\xc1\x47\x58\xa9\x4c\x69\xce\x59\x56\x61\x18\xea\xf4\x0d\x05\x9b\x05\xbc\xab\x70\x6b\xea\x06\x03\xc6\x11\x2f\x41\x72\x05\x31\x0c\xd3\x32\xf6\x44\x31\x42\x20\x09\xd5\x85\x07\x44\xe1\x69\x17\x76\xd0\x20\x8a\xd3\x66\x7d\x62\x28\x64\x6a\xc4\x1f\x91\x5a\xdf\x72\xda\x9e\x6f\x54\x2a\xa2\xde\x8d\xd0\x7c\x6c\x35\xda\xbb\xf6\x8f\x26\xa3\x55\xa4\xa6\x2a\xe7\x3b\x25\x31\xbb\xd1\x67\xd4\x69\x43\x9c\x03\x79\x52\xab\x4c\x93\x36\xc2\x10\xea\x2a\x76\x0d\xd8\x8c\x34\x08\x36\x79\x5f\x44\xdf\xfd\xa0\x46\x93\x1b\xe8\x21\xec\xfa\x89\x5f\x07\xc8\xdf\xaa\x83\x34\x08\xf8\x3e\x85\x95\x4a\x23\x0c\xcd\xe2\xe3\xbd\x1b\x49\xe1\x0e\x88\xc3\x91\x11\xf0\x6c\xfa\x4e\x9d\x9f\x8d\x4b\xaa\x9d\x88\x6a\xb7\x72\xd5\x76\x94\xc1\x69\x2f\xec\xb4\xea\x6d\xd0\x0d\x3b\xad\x46\x9b\x61\xd1\xbd\xdc\x13\x59\xfa\x61\xab\x0b\x7a\xed\xb5\x5e\xd8\x17\x39\xfa\xad\x46\x7b\xa2\xda\xef\xb9\xbd\xfa\xac\xdf\xad\xf6\x82\x32\x2c\x64\xa1\x39\xc6\x61\x22\xfa\x5c\x74\xfc\xa6\xf6\xf1\x3b\x9a\xf7\xf8\x5d\xfa\x61\x34\xd1\x5b\x49\x1b\xa1\x11\x6e\x73\xb6\x49\x76\x45\x47\xf8\xa3\x4a\x18\x34\x7d\x12\x6e\x12\x20\x88\x49\xe8\xc3\x70\x93\x1d\xc2\x28\xbd\x1d\xdd\xe6\xc7\xb1\x87\x39\xcb\x66\x2e\xa1\x64\x3c\x26\x7f\xd1\xd8\x08\xeb\xbb\xb7\xa3\xdb\x4d\x78\xb9\xbe\x5b\xa5\x7e\x95\xb5\xd8\xf4\x61\x68\x0e\x0c\x3f\xa8\xa5\xc3\x18\x51\xdf\x83\x5e\x00\x20\xab\xda\x6a\x78\xd3\xf3\xd8\x26\xee\x44\xd4\x87\x6c\x7e\x58\x26\x93\xd0\x68\xef\x6e\xb2\xff\xab\xa4\x59\x25\x01\x9f\x98\xa2\x4a\xe7\xab\x64\x93\x34\x59\x1d\x2e\x01\x25\xfc\x84\x94\xff\xeb\xc5\xae\xf6\x87\xac\xaf\x6a\x7d\x59\xe3\x19\xe1\xc3\x61\x26\x8f\x48\x9b\xd8\x9c\x9d\x1c\xda\x56\x7d\x39\xf3\x3d\xf1\x62\x95\x14\x53\x19\x5c\xb8\xb8\x88\xbd\xb8\xf0\x9c\x8b\x2b\x45\x87\xab\x80\xa6\x2b\xce\x6e\xc5\xd9\x7d\x5a\x39\xbb\x69\xda\x17\x46\x1c\x96\xd4\xbe\xb0\xa2\xe7\x20\xc3\x49\x97\x13\xd0\xae\xa8\xd7\x8a\x7a\xad\xa8\xd7\x27\x9e\x7a\x2d\x4f\xbc\xce\x85\x76\xbd\xba\x8a\xfd\xb7\x22\x5e\x2b\xe2\xb5\x22\x5e\x45\xc4\xeb\xd5\xa5\x63\xff\xb1\xa2\xe7\x10\x4b\x3e\x1d\x1d\x9c\x8b\xba\xa8\xfa\xa8\xea\xa2\x74\x74\x70\x0e\x4a\x12\x1a\xad\x38\xd1\x15\x31\x5f\x11\xf3\x15\x31\xcf\x13\x73\x1a\x2d\xcb\x89\xd2\xe8\x3c\x38\xd1\x55\x18\xfd\x15\xf1\x5a\x11\xaf\x15\xf1\x2a\x23\x5e\xcb\x46\xe2\x39\xa7\x20\xfa\x94\x8c\x70\x67\x45\xbf\x56\xf4\x6b\x45\xbf\x56\xf4\x2b\x4f\xbf\x18\x75\x58\x96\x80\xb1\xb2\x8f\x97\x82\x25\x58\xd2\x2f\x4d\xbe\x12\x5c\xed\x26\x1d\xbe\x7c\x8a\x3c\x4f\x15\x15\x58\xc0\xeb\xd4\xa2\x14\x0e\x3f\x01\xb6\xe8\x9f\x42\xff\x4c\x4f\xa6\x2d\xfa\x99\x3b\x66\x5a\x26\x1c\x5e\xd1\x4e\xa6\x2a\xb9\x06\x1f\x52\x88\xbb\xfe\x69\x27\x19\x0c\x47\x14\x36\x0b\x85\x53\xb4\x8f\xd2\xda\x7e\x3a\x62\x1b\xbe\xa5\x36\x6f\x5b\x59\x9d\xb0\x5d\x17\xb0\x69\x9b\x2c\x43\x0b\x8e\x11\xee\xba\x96\xc7\x2b\x4a\xb0\xa2\x04\x2b\x4a\xf0\x04\x50\x02\xb1\x75\x1f\x0f\x1d\x98\x4e\x00\x46\x14\xc5\xe9\x05\x78\x04\x31\xad\xc6\x28\xa5\x10\x43\xb2\x72\x45\xf9\x09\xbc\xf8\x7c\x0a\x09\xdc\x13\x7d\xf1\xf9\x38\xd2\xb9\xfd\xfd\x4e\x32\xc2\x34\x0d\xad\x41\x15\xf5\x9d\x46\xdd\x6e\xda\x44\x80\xc0\x41\x72\x04\xd3\x66\x32\x99\x94\xd1\x45\xb6\x2d\xea\x86\x88\x44\x3e\x04\x04\x60\x80\x82\x53\x58\xa9\x90\x4a\x05\x57\x2a\x7e\xb2\xb9\x09\xb8\xef\x4a\x51\xdf\x75\x46\x9e\x5e\x96\xd4\x29\xd0\x05\x84\x81\x74\xea\xde\x9e\x14\xb1\xe5\x24\x6d\x2f\x22\x87\x90\x36\xd9\x18\x02\x9e\x70\x3b\x1a\xc0\xa6\x40\x07\xb0\xa5\x7e\x10\x75\x1e\xa8\xdf\x3c\xc3\x9d\x21\xc3\x2a\xd5\x79\xf2\x24\x1b\x8b\x5b\x62\xc2\xfd\x76\x6e\x07\x20\x0d\x93\x56\xbd\x0d\x46\x61\xd2\x6a\xb4\x41\x1c\x26\xad\xad\xf6\x5a\xe4\x73\x7a\x6e\x21\x01\x4c\x02\x43\x42\xfc\x54\x28\x58\x1f\x25\x02\x01\xc8\x56\x10\xa6\x6e\x99\xd0\xc2\x89\x8d\x47\xa2\x29\x31\x52\xa3\x17\x75\xbb\x85\x43\x97\x04\x00\x4f\xf2\x18\x8e\x40\x0c\x70\x90\x41\x34\x1c\xe5\x91\x0b\xf1\x04\x1c\xa3\x38\xbe\xc6\x36\x4a\x72\xd2\x74\xf6\x98\x39\xc6\x02\xf0\xe8\xc3\xe0\x1e\x79\xe9\xb4\x23\xaf\xf0\x28\x9b\x53\x98\xb7\xc4\x66\xc8\x0e\xee\x1d\xdc\x81\xdc\xce\x3a\xfb\xc1\x9e\x28\x0c\x10\x9b\x28\x7e\x0a\x85\x68\x8d\xee\xe6\xb3\xfb\x18\x44\x20\x09\x9a\x49\xa5\x92\xd4\x12\xdc\x81\xbb\x84\x17\x8c\xc0\x8b\x49\x12\xc3\x08\xfb\x49\xad\x13\x0d\x19\x75\x0a\x82\x66\x49\x79\x9d\x95\x55\xa2\x73\xb3\x3d\x59\xb0\xa3\xb2\x2b\x09\x05\xa7\x0c\xb1\x82\x9c\xbe\xf8\xdc\x2c\xff\xa8\x1a\x46\x95\x0a\x72\x1b\xbe\xff\xca\xdd\xbb\x77\xee\xed\xdd\xdf\xbf\xfe\xc5\xeb\xb7\xf7\xf6\xef\xdc\xdd\xbb\x79\xe7\xf6\x7d\x9b\x36\x50\x9b\xae\xb0\xf3\x92\x25\x42\x40\x43\x75\x31\xaa\x75\x08\x8c\x28\xbc\x1e\x43\xf6\xcb\xf7\xba\xe8\xc8\x0b\x00\x09\xeb\x8a\xaa\xe5\x97\xbc\xef\x75\x62\xd4\x79\xe0\x59\x73\xaf\xf7\x09\xd9\xdc\x9c\x04\xe0\x94\x8d\xb1\x98\xd4\x82\x47\x42\xbc\xb2\x5d\xc8\xa9\x2a\x87\x55\x85\xfc\x7d\x42\x16\x31\x91\x81\xff\xf1\x82\xa0\x86\x30\xa2\x4e\x21\xb0\x51\x07\x1b\xf5\x00\xd0\x5a\x17\xa5\x43\xc6\x2b\x88\xcf\xb0\x30\xa9\xc1\x4e\x42\xc9\x52\x60\x85\xf5\x46\x63\x32\xf1\x83\x0c\x13\x06\x88\x72\x26\x9c\x7b\xfe\xb3\x5d\xf8\xfc\x67\xbb\x5d\xa9\xd8\xbf\x4c\x7d\xc8\x0f\x4e\x8b\xa7\x97\x02\xc4\xc8\x03\xf1\x83\x49\xc1\xaa\x13\x5f\x27\xa5\xf3\x4c\xf3\x5b\x77\x18\x1d\xc2\x2a\x45\x34\x86\xe6\xa9\xac\x4e\x5a\xce\x24\x44\x1c\x05\x29\xa4\x9c\xf0\x00\x4f\x56\x65\xbf\x23\x59\x2e\xf4\xfd\x4c\x93\x0f\x75\xee\xb0\x1e\xec\xb1\x56\xd9\xc8\x34\xe5\x93\x29\xcc\x1b\x4c\x21\x39\x62\x5c\x55\x00\xfa\x30\xea\x5e\x8b\x68\x54\xf6\x9d\x2d\x9c\x72\xaa\x2a\x0a\x1d\xea\x4e\x3a\x4d\x7a\x81\xe0\x55\x4f\x51\x57\xd6\x7e\x38\x42\xdd\x1b\x09\xe1\x99\x83\x49\x30\x29\x3a\xd4\x48\x70\x4a\x2a\x15\x52\xdb\xef\xc2\x21\x81\x9d\x88\xc2\x4a\x85\x31\x75\x49\x0c\x6b\xc7\x11\xc1\xbe\xf7\x4a\x8a\xf0\xe1\xfa\x37\x4e\x4f\xf9\x90\x4e\x26\xdf\x58\x17\x73\xb6\x8e\xd2\x75\x5d\xa8\x0b\xd6\xd9\xdc\x7c\xe3\xf4\xd4\x4c\x24\xcb\xca\x18\x27\x18\x75\x6b\xeb\xde\xa6\xdd\x46\xe0\x3c\x42\x29\xed\x10\x50\x02\xd2\x28\xe5\x86\xe4\xa7\x13\x40\x74\x24\x23\x54\x43\xdd\xb0\xa0\xa3\x00\xd5\x78\xf3\x21\xac\x7d\x33\x41\xd8\xf7\xbc\x00\x60\x31\x34\x48\x0d\x21\x19\xe1\x5a\xda\xe9\x43\x36\xe3\x8c\x7c\xfb\x5e\xd4\xa3\x90\xdc\x83\xb8\xcb\x8e\x8e\x2c\x5a\x6a\xd6\xbc\x00\x50\xb6\x13\x3c\x6f\x02\xba\xf9\x23\x90\x53\xad\x99\x7d\x22\x45\x48\xaf\xa9\x9d\xe7\x93\xdc\xd8\xdc\x39\xe6\xdb\x8c\x65\xab\xc5\x49\xf2\x60\x34\xf4\x3d\x92\x8c\x28\x24\xcd\x41\x84\x30\x1f\x26\x1f\xd7\xf6\x45\xda\x2d\xd4\x21\x49\x8c\x0e\xc6\x63\x5c\x13\x29\xe3\xf1\xe9\x24\xa8\x45\x1d\x8a\x8e\xe0\x1e\x89\x70\x8a\x18\xbe\x20\xc9\x61\x6a\xba\xb9\x86\x76\x11\xbb\x24\x0c\x50\x0a\x6b\xf2\x7a\xe2\xdb\x84\x34\xa9\xa1\x54\x32\x01\xb0\x3b\x1e\xcf\x35\xaa\x09\xa0\x00\x06\x93\x20\x68\x2e\x92\x7d\x32\xc3\x94\xca\xa2\x25\x72\x1b\xd9\xc4\x84\xf3\x03\x45\x17\xe1\x4e\x32\x3c\x99\x71\xdd\x7d\xbc\xd4\xe2\xbe\x40\x4e\x93\x8b\xec\x4e\x17\x8b\x87\x4d\xc4\x5a\xd1\xa6\xb7\x28\x5b\xf2\x00\xe2\x54\x2d\xd2\x2b\x7e\x90\xcf\x22\x4e\x00\x0f\xd4\x25\x4f\xb7\x2f\xa9\xfa\x43\x94\x52\x84\x0f\xf9\x6a\xdc\x8b\x0e\xfd\x40\x9e\xbe\x85\x4b\x8d\xc0\x34\x89\x8f\xe0\x3d\x78\x88\x52\x4a\x22\x8e\xa6\xd7\x49\x70\x0f\x1d\x36\x21\x3e\x42\x24\xc1\x5c\xe1\x10\xac\xd1\x9a\x5e\xe3\x95\x4a\xcb\x4b\xe1\x30\xe2\x77\x1c\x0f\x78\x43\x02\x87\x10\x77\x3d\xe0\x11\x38\x8c\xa3\x0e\xf4\xda\xb5\x5e\x42\xae\x47\x9d\xbe\xb5\x9e\x88\xa2\xdf\x28\xbd\x4b\x60\xca\x4e\x41\xab\xce\x16\x69\x07\x95\x8a\xe9\x23\x04\x9e\x1c\x67\xfd\x6c\x4f\x0e\xb1\xba\xc9\x0e\x11\x8d\x62\xf4\x1a\xdb\x4c\xec\x7c\x75\x6a\x9a\x30\xa6\x44\x96\xbf\xaf\x30\x6d\x7a\xeb\xe3\x75\x4f\x25\xdf\x15\x48\x37\x37\xea\x2a\xe5\x9e\x40\x5e\xdc\x27\xc4\x04\x08\x98\xfb\x2a\xd9\x63\x09\xd7\x44\xce\xd4\x79\x86\x9c\x19\x5e\x39\x3d\xd9\xd6\x6d\xa2\x90\xcd\x24\x71\x61\x34\xac\x2c\x8b\x44\xce\x0b\xd6\xc4\x95\x11\xd6\xf4\x0c\x54\x2a\xbe\xf5\x2b\xa4\x01\x50\x59\xe4\xc4\x54\x2a\x2c\x61\x23\x14\x39\x65\x62\x48\x4c\x3e\x39\x6d\x2a\x1f\xe6\xf9\x64\x62\x88\x83\x09\x40\xb8\x0f\x09\xa2\x37\x48\x32\xb8\x4b\xe0\x11\x4a\x46\x45\x43\xc0\xeb\xe6\x1f\xd7\x68\xa5\xe2\xcf\x44\xd4\xc0\x05\x28\x5b\x98\x52\x05\xb1\x59\x65\x34\x3e\xd7\x36\xe1\x7b\xaa\x26\x26\x8d\xd1\xb2\xee\x8b\x27\xbe\x87\xba\x8c\x37\x40\x5d\xf1\x1e\x53\xf1\x50\x76\x4e\x84\xbb\xf0\xe1\x1d\xf6\x91\x91\x57\x76\xa9\x62\x24\x23\xf0\xad\x3c\x01\x48\x42\x62\x3a\xa6\xad\x52\x55\x4a\x98\x00\xc8\x25\x4a\x21\xe1\x7f\xc4\x66\x2c\x18\x30\xce\x06\xb2\x6f\xf9\xe5\xc4\x3e\x21\xfe\x58\xb5\x03\x7d\x0c\x1a\x00\x06\x80\x53\x97\x59\x64\x41\xdd\x92\x23\xa7\x57\x42\xba\x53\x15\x3a\xce\x48\x0d\xa5\xc0\x36\x02\x91\xc0\x16\x4e\x43\x74\x1a\xa6\x6b\xe2\x5a\x5e\x32\x5a\x6b\xa9\x38\x85\xe1\x6c\x9a\x96\x4e\x21\x6a\xd9\x5d\x20\xd3\x83\xcd\x46\x30\x91\x62\x88\x45\x16\x01\x8f\x36\x24\xa6\x07\xd9\xb3\xc9\x56\x3a\x36\x83\x83\x02\x80\x2a\x15\x1f\x89\x11\x62\xdc\xb0\xf9\x46\x64\xe2\x28\x8e\x9d\xe8\x18\x57\xfc\x92\x91\x08\xd6\x12\x79\xdc\x4b\x59\x26\x99\x3d\x24\xc9\x12\x43\x52\x65\x43\x72\x84\x52\x74\x10\xc3\x3d\x41\xb5\x44\x56\xc9\x08\x76\x7d\xdd\xcc\xe9\x21\x74\x8e\x23\x25\x5a\xca\xf3\x33\xb2\x44\x00\x68\x08\x77\x95\x2c\xaa\x59\x07\x24\x6c\xb5\x2f\xd1\x6a\xf5\x92\xda\x4d\xb0\x45\xf9\x5b\x7a\xac\xe8\x45\x70\x4a\x6a\x23\x9c\xf6\x51\x8f\xfa\x38\x58\x3b\x20\x30\x7a\x30\xb1\x93\x8c\xcc\x73\x12\x80\x34\x21\x14\x76\x4b\xd0\x76\x3a\x95\xc7\xbe\x18\x73\xb7\x10\x23\xba\x1b\x75\x80\xc3\x56\x5b\xf3\x99\x57\xfc\x16\x6e\xb3\x6d\xdd\x6a\x9b\xed\x9c\x3f\xaf\x84\xa0\x9b\x47\x05\xc6\x34\x48\x74\x0f\x60\xb0\x06\xe3\x14\xae\xf3\x8f\x8a\x30\x9d\x0a\x59\xe9\x46\x43\x36\x25\x36\x01\x0e\xc4\x6e\x89\x78\xf0\x17\xbe\x15\x7d\x68\xef\x1c\x18\x04\x16\x41\x8c\x1c\x82\x68\x35\x38\xe1\x0d\x92\xf1\xd8\xb7\x7a\xa3\x9b\x50\x8c\x2f\x67\xbb\x40\xa2\x8e\x4b\x34\xdd\x70\x1e\xaa\x7c\x34\x98\x04\xa0\xd5\x0e\x18\x17\x06\xd4\x45\x6a\xbe\x55\x62\xcf\x1e\x5f\x2b\xad\x36\x10\x62\x4a\xb5\x64\x2e\x91\xcb\x98\x8b\x28\x4f\x85\x78\x90\x0b\x29\x25\xef\x5e\xa9\x30\x06\x80\xb3\xec\x22\x21\x00\x64\xb3\x71\x19\x57\x2a\x3a\xd9\x8c\x87\x5e\x36\x54\x33\xfc\x13\x50\xc2\xf2\xd8\xc8\xa3\x9e\xbf\x21\xd8\xa3\x7e\x94\xde\x88\x52\x7a\x90\x24\xd4\x0f\x02\xd3\x29\x7d\xcb\x3f\x84\x54\xca\x1e\xd2\x17\x4f\xf6\xa2\xc3\xdb\xd1\x00\xfa\xf2\x8e\xc9\x3a\x57\xbf\x44\x2f\xeb\x7e\x51\xd5\x27\x22\xb6\x00\xa9\x0d\x23\x02\x31\xbd\x9d\x74\x15\x97\x7f\xb5\x8f\x62\x1e\x8a\x7a\x02\xec\xc6\x9b\x39\x51\xc5\xc6\xc6\xd4\x6b\x80\xe4\x78\x9b\x3d\x59\x81\x37\x07\xbf\x9c\x1c\x43\x52\x4d\x61\x0c\x3b\xb4\x7a\x8c\x68\xbf\x2a\x44\x18\x17\xd8\xe6\x4a\x30\xeb\xe2\x05\x27\xcf\x60\x14\x53\x34\x8c\xa1\x9d\xb9\x88\xa3\x5e\xb8\x62\xa7\xbe\x59\x95\x50\x38\x18\xc6\x11\x85\xe9\x5c\xd5\x65\x18\x7b\x76\xcb\x3d\x03\xd6\x1e\x17\xa8\xfa\xe2\xe8\x24\x19\xd1\x26\x51\x1f\x00\xc7\xf1\x3e\x47\xf1\xaa\xc2\x9c\x0b\xa3\xbd\xc2\x51\xf6\x40\xd4\x11\x82\xe8\x53\xf1\xe5\x0e\xb9\xca\xfb\x94\x51\x1e\xca\xf5\x55\xeb\xa1\x98\x42\xe2\xd2\x26\xbd\x8d\xf7\xf7\x51\x7a\x7f\x74\x78\x08\x53\xf6\x69\x7f\x7f\x12\x08\xdb\xa6\x5d\xbe\xec\x13\x2c\x6a\xf6\x49\x6d\x7f\x9f\xf7\x75\x7f\x1f\xd0\xa0\xa9\x3e\xf6\x23\x7c\x08\x85\x4a\xc5\x5d\x55\x05\x9e\x21\x1e\x6d\xf2\x17\x58\x4c\x8b\xad\x83\xa2\xea\xa4\xb8\xf8\x90\x24\xa3\x61\x95\xc3\xe7\xb6\x5c\xc4\x5e\xd6\xcb\x40\x2f\x1a\x2a\x28\x4a\xd3\xf3\x80\x5c\x3f\x7a\x61\x81\x41\x44\x3b\x7d\x48\xcc\x8a\xba\x25\x12\x40\x2a\x26\x16\x76\x85\xc4\x5c\xd7\x9a\x59\x58\xf6\xe0\xe9\x22\xd5\x84\x97\xf1\xe6\x5c\x9d\x1e\x48\x61\x44\x3a\xfd\xeb\x38\x3a\x88\x21\xbf\x18\x4d\x11\x54\x49\x07\x8e\xfc\x1c\xd0\xa2\xc6\x60\x02\x44\x9b\x42\x2f\x9c\x3b\xd0\xe5\xc7\x5a\xab\xed\x4a\x6c\xcd\xb5\x98\x1f\x2e\x2a\x9f\xa7\xc5\x40\x8c\x07\xa1\x7d\x88\xe5\x9f\xc2\x9d\xa0\x0e\x77\x18\xd4\x68\x22\x54\x64\x96\x1c\xc2\x4d\xd7\x89\xfc\xc8\x4c\xfb\xc9\x28\xee\xde\xef\x27\xc7\x62\xaf\x88\xb1\x2e\x54\xe4\x6f\x18\x24\x53\x9d\xff\x4b\x7d\x88\xbd\x60\x3c\x2e\xff\x26\x36\x18\x88\xba\xdd\x29\x2d\xf0\xe2\xc5\xb8\xf0\x0c\x95\x8a\xef\x1d\x24\x94\x26\x03\x2f\x0c\xc3\xa2\xc6\xee\x26\x42\xec\xe3\x05\xbb\xf2\x08\xe5\xb9\x0e\x46\x28\xee\x1a\x12\x71\x23\x21\x7b\x90\x0c\x18\xf3\xd1\xa4\x9a\xcb\x98\x91\x93\x61\x6f\x68\x16\x5b\x27\x57\xb0\xca\x59\x48\xb5\xb8\x90\xc3\x99\x9a\x7b\xf7\xbf\x78\x57\x09\x1c\xfc\xdc\x64\xf3\x99\xf1\x82\x20\x3b\xc1\x98\x9f\xe1\x75\xdb\xad\x93\x52\x72\x4a\x95\x23\x91\xc3\xc0\xb1\x32\x6b\x06\xed\x16\x34\x8b\x38\x8a\xb9\x46\x2c\x43\x0d\xb5\x48\xb8\x16\x96\x9a\x25\xc3\x2e\x03\x99\xf9\xe3\x75\x01\xca\x16\x99\xcf\xee\x17\x92\x4c\xab\xb5\x85\x03\x76\xf1\x28\x2a\x85\x03\x80\x85\x8c\x62\x0a\xf9\x67\x04\x0a\x56\x2a\x79\x02\x9f\x21\xec\xd0\x26\xec\x80\x14\x90\x76\xc0\x79\x10\x81\x5d\xc1\x5c\x61\x80\x9c\xd9\x92\x57\x64\x31\x9e\x37\x10\x8c\xbb\xbb\x85\x1c\x24\xaa\x49\xb2\xe5\x1b\xbe\x10\xb2\x7b\xac\x29\xc8\xcd\x5a\x8a\x2d\x62\x4c\x69\xb1\x37\xfc\x3a\x50\x23\xa8\xb4\x83\x3e\x1c\x8f\x5b\x6d\x2e\x8d\x9d\x80\xe2\xa5\x59\xe0\x0f\xee\x34\x3b\x5e\x8c\x92\xe9\x21\x6a\x42\x40\xe1\x43\xda\x2c\x5a\xee\x2f\x47\x07\x30\x66\x6c\x74\xae\x35\xfe\xa5\xc8\xf7\x5c\x51\x35\xbb\x45\x89\x3e\x0c\x9a\x4f\x5d\xe9\x76\xd7\xbd\xa7\xb4\xd7\x29\xf0\x94\x57\xab\xd5\x9e\x0a\xce\xf4\xe0\x2d\x38\x0f\xce\xea\x24\xce\x37\x75\x9e\xb2\xd7\x85\x4e\xdc\xa5\x19\xe8\x05\x59\x93\x33\xd3\x4f\x17\x0c\x84\x92\x41\xbe\xb4\x77\xeb\xe5\x17\x23\x92\xd6\x14\xae\x5c\x5b\xe4\x6d\x6f\x3e\xf3\xf9\x1b\x57\xbf\x70\xd1\x03\x07\x71\xd2\x79\xd0\x7c\xea\x54\x7a\x3b\x4c\xbd\x66\xcb\xbb\x2f\x79\x00\x4f\x2d\x12\x8f\x42\x32\xf0\x80\x57\x51\x62\x58\xe0\xbd\xc0\x45\xf7\x72\x77\xea\xe1\xe6\x1f\xe2\x38\x39\xbe\x1a\xc3\x88\xf0\x5f\x04\x45\xd7\x60\xda\x21\xe8\x00\x76\x5f\x3c\x51\x49\xd2\x16\x47\xfd\xe4\x7b\xca\xf9\x11\xab\xdc\x62\xef\x70\x8c\x04\x2e\x2f\x74\xa2\xb8\x33\x8a\xed\x23\x8e\x25\xc6\x51\x9a\x0a\x20\x49\xe1\x1d\xac\xfb\xf0\x82\xc4\xf9\x25\x74\xd8\x8f\xd1\x61\x9f\xc2\xae\x48\x65\xd7\xc4\x48\x15\xef\x22\x22\xfe\xa4\x9c\xe1\xe1\x30\x49\x86\xdd\xe4\x18\x5f\x55\x35\xc3\x87\x94\x44\x0c\xe0\x9c\xa4\xd3\xe7\xbe\xaa\xfc\x0e\x7e\x29\x39\x82\xbc\xae\x7e\x42\xd0\x6b\x09\xa6\x51\x6c\xe3\xc9\xd8\x28\x14\xc5\xf1\xc9\x9d\x21\xc4\xa2\xa1\x38\x89\xba\x08\x1f\xde\x82\x69\x1a\x1d\x32\x16\xf6\x05\x4e\x0d\xf7\x08\x3a\x3c\x84\xe4\x4b\xa8\x4b\xfb\x2c\x11\x27\x82\x11\x4c\xad\x8c\x09\x7e\x31\x1e\x11\x01\x5d\x65\x1d\x17\xe0\x8d\xa4\x33\x4a\x05\x78\x13\x0f\x47\x54\x80\x5f\x80\x27\xac\x3f\xe2\x07\x6b\x9e\x43\x05\x33\xc8\x65\x37\xfd\x24\xee\x8a\x8e\x58\x3f\xdd\x6c\x84\x5b\x60\xdc\xef\x90\x24\xe6\x93\x47\xb8\xe6\x00\x92\x2b\x77\x6f\x8a\x9f\xb8\x0b\xc9\x4d\x7c\x97\x0b\xab\x81\xf7\x42\xca\x73\xee\x25\x1c\x36\x07\x83\xf9\x69\xf5\xcc\x49\x70\x9a\x15\x5f\xee\xba\x38\x8a\xfd\x06\xbb\x36\x7c\x93\xc2\x81\x53\x92\x46\x07\x5c\xc8\xcb\x61\x31\xba\x7a\x72\xe5\xef\x9b\x5d\xeb\xc7\xbd\x24\xe6\xb8\xd0\x93\x21\xbc\xd2\x87\x51\x57\x72\xe2\x2c\xed\x08\x12\x8a\x3a\xce\xdc\x56\x22\x4a\x09\xdb\xdc\x5e\x4a\x23\x2a\x84\x07\x5e\xb3\xd5\xda\x01\x5e\x0c\xa9\x07\x5a\xad\xad\x67\x81\xd7\x31\x18\xb5\x5a\x5b\xdb\xa0\x0e\x5a\x5e\x19\x53\xee\xb5\xdb\x6d\x2e\x0d\x97\x7f\xc0\x69\xa6\xea\x3a\xf0\xd6\xd7\xbd\x36\x68\x3d\x0d\x58\x5d\x0d\xd0\x6a\xb7\x41\xab\xd5\xd8\x06\x17\xb7\x39\x74\x8e\xfb\x14\xf6\x12\x02\x8b\x1a\x5a\xed\x60\xb9\x83\x07\x66\xf9\xcc\xdc\xcc\x9c\x61\x7b\x0c\x1b\xfb\xcf\xbf\xc7\x0d\x24\x6f\x93\x1f\xe3\xed\xef\xe6\x7f\x54\x92\xd0\x16\x3b\xfc\xa2\xd8\x95\x5b\xdb\xe0\x69\x0d\x3d\xa3\xa1\x67\x35\xf4\x9c\x86\x1a\x75\x0d\x32\xf2\x50\xb2\xb5\x54\xe6\x86\x29\xb7\x65\xc0\x6d\x03\xee\x18\xd0\xe0\xd2\x30\xc8\x34\x0c\x36\x0d\x83\x4e\xc3\xe0\xb3\x65\xf0\xd9\x32\xad\x6d\x99\xd6\xb6\x4c\x6b\x5b\xa6\xb5\x2d\xd3\xda\xd6\xd3\x4e\x8f\xd4\x4e\x50\x5f\x0d\x02\x5b\x0a\x81\x67\x81\x17\x49\x82\xa1\xe8\x64\x9b\x91\x56\xe7\x92\xe4\x49\xf2\x28\x8a\x1a\x84\xb7\x0d\xc2\xdb\x06\xe1\x6d\x83\xf0\xf6\xb6\x83\x8f\x73\xef\x54\x59\x4c\x47\xb6\x4d\x47\xb6\x4d\x47\xb6\x0d\xd6\xdb\x66\xd8\xb6\x0d\x16\x3b\xf5\x59\x7d\x71\xef\xce\x4e\x6f\x18\x5a\xee\xb6\x51\xb5\x9a\x0e\xed\x98\x0e\xed\x98\x0e\xed\x18\xc4\x77\x0c\xe2\x3b\x06\xf1\x1d\x83\xf8\xce\xb3\xce\x38\xe4\xb6\x81\xca\x66\x3a\x75\xd1\x0c\xed\x45\x83\xc9\x45\x8e\x49\xbb\x5d\x74\x42\x7d\xed\x6b\x7c\x2b\xec\x00\x0f\xf5\xe4\x00\x6c\x81\x96\x97\xbd\x9a\xe9\xc3\xae\xf8\x94\x63\xff\x58\x35\x0d\x50\x7a\x8c\x96\x09\xc8\x78\xcd\xad\x56\x86\x9d\x6d\x6b\x54\xd4\xcc\x89\x2e\xb4\x41\x2f\x8a\x53\xd8\x06\x1a\xf7\x36\xf0\x86\x11\x89\x06\x90\x42\xc2\x10\x6a\x4f\x66\xa0\xb8\x03\x76\x4a\x2a\x9f\x56\xa9\xf8\xc8\xaa\xc8\x7e\xdb\x02\xdb\xea\x73\x61\xd9\x46\x7b\xa2\xd8\x04\xaf\x1f\xa5\xd7\x8f\xa2\xd8\x6b\xf2\x5e\x4c\x9e\x02\x03\x48\xa3\xe6\xe9\x80\xdf\x1c\xc4\x15\xe8\x71\x5e\x6b\x6a\xfd\x83\xd4\x73\x2f\xad\x45\xf6\x7f\x67\x74\xa7\xfc\x38\xdd\xa9\xee\xc6\x0f\x1a\x0f\x5e\xba\x71\xa5\xf0\x4e\x95\x63\x0a\xd9\x32\xde\x01\xce\x9a\x7c\xc8\xb7\x5b\xc1\xe2\x3b\xe7\x29\xcd\x0d\xf3\xe2\x73\x3c\x53\xb7\xe4\x0a\x1e\x5e\x38\x8c\xd1\x60\x00\x89\x29\x36\x43\x5a\xc0\xef\xfa\xc2\xc4\xda\x79\x5f\xa0\xa3\x0e\x44\x9f\xb0\xa8\x03\xba\x93\xa9\x79\x0d\xe4\x9b\x67\x2a\x49\x6f\x9d\x06\x41\xe1\xab\x97\xab\x11\xc6\x09\x5d\xef\x44\x71\xbc\x1e\xad\x73\x26\x7b\x3d\x4a\xd7\x23\xfd\x8a\xcb\xb3\x6a\x1f\x89\xda\xad\x67\x26\x97\xc8\x65\xaa\xf5\xb7\x4a\xcf\x89\x43\xda\x22\xed\x35\x5c\x83\x78\x34\x10\xcf\x61\x42\xfb\xc7\x78\xbc\xd1\x00\xb8\x26\x6c\xc7\x46\xe2\xfb\x46\x1d\x78\x7c\x87\x79\x08\xaf\x0b\x5b\x8b\x63\x82\xa8\xfc\x16\x80\xb2\x3d\x8a\x6b\x0f\xe0\x09\xc0\xc1\xc4\x60\x19\xdb\xc2\x43\x3f\x56\x6f\x9c\x52\x48\xef\xaa\x71\xbc\xd3\xcb\xbe\x9f\xb2\x74\x64\x7c\xb4\xf7\xf7\x43\x0a\xf8\xe8\x02\x6a\x8d\x40\xc7\x98\x30\xb9\x9a\xe3\xa2\x57\x6b\xf7\x60\x8f\xad\xea\xf1\x78\x43\x42\x66\xa6\x03\x65\xc3\xbd\x86\x7a\x7e\xee\x6b\x2d\xed\x47\x03\x27\x4b\xc1\xfa\xb9\x4b\x92\x87\x27\x2a\x93\x78\xd7\x26\x3b\x71\x8d\x11\xde\xb2\x27\x5d\xb9\xc6\x7c\x96\x1d\xb4\xda\x8e\x9a\x65\x12\x04\x01\xd8\xa8\x4b\x9b\x73\x98\xb1\x39\xcf\x3e\xf4\x93\x82\x7c\x80\xc3\xae\x7c\xc5\x45\x95\x16\xbf\x2b\x35\xd4\xd6\x1a\x5f\x23\x61\x1e\x09\x6c\x54\x43\x00\x29\x2b\x86\x10\x17\xeb\x8e\x34\x02\xe2\x03\xb1\x67\xbf\xe7\xea\x60\xc6\x63\x15\xbe\x62\x23\x0c\x23\x9f\x06\xf6\x5e\xd4\x6f\x8d\xe9\x6e\xc6\x96\x43\x47\x37\x80\xd6\xb6\xb9\x07\x7b\x90\x40\xdc\x51\x7b\x87\x35\xbe\xde\x8f\x52\xfc\x14\x5d\x3f\x80\x10\xaf\xcb\xbb\x1f\x4a\x61\x77\xbd\xba\x2e\x0d\x36\x9d\x1c\x6c\x0a\x60\xd7\xd2\x56\x4d\x7c\x18\x34\xa9\x41\xbf\x6b\x51\xa9\x6e\xf1\xd2\xdd\x95\xa9\x87\x4e\x6a\x21\xe1\x31\xab\x79\x3c\x2e\x2c\xc5\x2d\x41\x1c\x0a\xd2\x17\x6a\x00\xf1\xfa\x43\x58\x2f\x9d\x4e\x14\xba\xb2\x8e\x07\xf0\x24\xf5\x71\x50\x6c\x09\x93\xb4\x60\x3b\xc4\x2d\xd8\x16\x26\x26\x16\x0d\xd8\xd8\xb0\x7f\x0a\xf3\x13\x8b\x02\x6c\xb8\x09\xc0\x37\x04\x21\x19\x8f\x93\x9a\x1a\xdd\xd7\x20\x09\x2a\x15\x3f\x71\x09\x44\x12\x12\x69\xcd\x16\xd4\xd8\xad\x94\xa4\x02\xca\xd8\xb5\x10\xa0\x1f\x50\xac\x2b\xdd\xc9\x78\x4c\x26\x01\x48\xb8\x45\x97\x7e\x22\xe1\xb4\xc7\x9b\xe3\xd8\xb8\xe9\xbb\xce\x2f\xb1\xc1\x50\xa0\xde\x8c\x39\x1f\x25\xab\x20\xad\xf5\xd8\xd2\xca\xb6\x50\x46\xe2\x28\x43\x2d\xe1\xe6\x64\x01\x48\x1e\xd3\xa3\x85\x61\xe8\x2b\x69\xf8\xbe\xb8\x7c\x68\x83\x52\xf5\x1b\x65\x7e\xf7\x7d\x3f\x09\xed\x99\xf6\xf3\x6f\x77\x0b\xb6\x96\x32\x15\x0d\x69\xf1\x09\x74\x9f\x6d\x93\x75\xf8\x70\x48\x60\x9a\xb2\x15\xc8\x9f\x49\x42\x44\xfb\x90\xac\x1f\xc0\x75\x56\x7a\x3d\x21\xce\x91\xb4\x66\xd1\x37\xb5\x49\x04\x77\xe2\x53\x6e\x13\xa4\x3e\x82\x53\x8b\xf0\x34\xe5\xa8\x40\xa0\x56\x4e\x73\xa3\x0e\xec\x35\xc7\x06\x6c\x12\x00\x5a\xa9\xc4\x32\x88\x9a\x9f\x00\x69\xc7\x28\x37\x45\xd8\xf1\x13\xeb\xd5\x4d\x62\x5e\x11\xa5\x82\x1a\xb1\x75\x54\xa2\xf2\x56\xcc\x42\x98\x00\x9f\x84\xad\xd3\x07\xf0\xa4\xe9\xf5\x23\xdc\x8d\xa1\x90\xcb\x08\xfc\x72\xc3\x2a\x2c\x2c\xc9\x61\x5a\x13\x02\x9c\x4a\x65\xa3\xa1\xf4\xba\x56\xb2\x50\x58\xea\x63\x83\x7f\xee\x25\x9d\x51\xca\x85\x41\x42\x5b\x65\xb7\x29\xc5\x45\x45\x8d\xda\x55\xf3\x6c\x95\x4a\x2e\x49\xea\x34\x67\xb5\xa2\xc5\x4f\x45\xed\xd8\xba\x31\x59\xb7\xcc\x5f\xd0\x47\xf9\x85\x97\xdc\xf5\x69\x2d\xa5\xc9\x90\x6d\x80\xe8\x50\x58\xa3\x07\x60\xa3\x11\x34\x1b\xdb\xac\x18\xa3\x51\x57\x93\x2e\xd7\x8a\xa2\x94\x8d\x4e\x71\x09\x2b\x60\x51\xdf\x08\x10\x77\x61\x4d\xc9\x89\x2a\x95\x6a\x63\x43\xd8\x26\x8b\x04\x6d\x09\xec\x94\x08\x76\x7d\x58\x93\x6a\xef\x1a\x17\x51\xfa\x54\xe0\x63\xa7\xf7\x13\xf6\xc1\x29\x08\x0a\xb2\x59\xc5\x15\x31\xd1\x83\x2a\xf7\xf2\x8b\x19\xa9\x69\xd1\xe0\x1a\x3e\x8d\x75\x5d\xa2\x3f\x1e\xb7\xda\xea\x55\x77\x3d\x00\x38\xac\x36\x00\x0a\xeb\x97\xd0\x65\xf5\x8e\xfd\x12\xda\xdc\x0c\x50\xcf\x57\x26\xf8\xd7\x5f\x1d\x45\xb1\x4f\x5a\xa8\x0d\x60\x10\x9c\xe2\x10\x29\x53\x4d\x49\x46\x9f\xaf\x36\x76\x89\x65\x93\x1c\x34\x89\xb6\xec\x25\x1a\x71\xb3\x46\xf2\xd8\x0a\xfb\x49\xc5\x59\x69\x33\xbb\x57\x47\x90\x9c\x88\x4e\x32\x4a\xf1\x3f\x15\x5c\x63\xa4\x48\xc2\x58\xa5\x21\xd6\x42\xd5\x04\xf0\xa9\x8d\x30\x7a\x75\x04\x6f\x76\x83\x60\x8d\xd3\x06\x8e\x87\x1f\x4c\x34\x62\xca\xe8\x64\x2f\x3a\xb8\x29\x04\x80\x19\xeb\x51\xd9\x4f\x4d\xb8\xcd\x9a\xcc\x0a\x44\xec\x5d\xe2\x48\x67\x76\xbd\x6a\xc3\x6b\x5a\x05\xa5\xb0\x71\x3c\xf6\xea\xde\x64\xd2\x0e\x2a\x95\x91\x6f\xd3\x2d\x12\x00\xcc\xd3\x00\x66\x44\xdf\xd7\xea\xc8\x20\xb0\x72\x39\xc4\xa3\x45\xda\xc0\x1c\xf2\x77\x8e\xb1\x3a\x1c\x84\xe0\x7e\xc8\xc6\x30\x29\x29\xcc\x4e\x6a\xfd\x25\x00\xfd\xa2\x8c\x92\x5c\xb4\xf0\x52\xcd\x88\xd2\xf3\xb4\xa3\x09\x06\x5b\x71\x4b\xb4\xa4\xca\x67\xda\x4a\xec\x0b\xea\xf0\x11\x2f\xa8\x17\xe4\xcc\x3f\xbe\x8b\x2a\x88\x40\xca\x1f\x5e\x77\xd6\x6c\x5e\x56\x33\x83\xbd\x4f\xea\x95\xb5\xbb\x72\x1e\xf2\xe4\x38\x0f\xe9\x7f\x6a\x9c\x87\xf4\x3f\x11\xce\x43\xfa\xe7\xe6\x35\x71\xa8\xee\x8d\xfc\x81\x43\xf9\x5d\xe6\xd4\xdc\x00\x9b\xc4\xbe\x0e\x3a\x7c\x38\x71\xaf\x82\x9a\x5f\x27\xfa\xd2\x27\x79\x08\xe2\x5c\xc7\x48\xfe\x3a\x86\x35\x07\x65\x0d\xcb\xe0\x4c\xc5\x64\x47\x4f\x84\x98\xec\xc4\x11\x93\x9d\x3c\x56\x31\xd9\xe1\x4a\x4c\x36\x55\x4c\x76\x9c\x15\x93\x1d\x9f\xa5\x98\xec\xa0\x40\x4c\x76\x30\x45\x4c\xd6\x2b\x17\x93\xed\x67\xc4\x55\xfb\xe7\x2e\x2f\xd3\x4d\x1f\x5b\xcc\xd1\xf1\x9f\x43\x52\x76\x5d\x99\xde\x2a\x86\x8a\xf1\x13\x70\x77\x0a\xe9\x93\x24\x0b\x58\x24\x30\x2f\x80\xb0\x85\x13\x93\xa0\x09\x5b\xb4\x1d\x12\x60\x75\xfc\xce\x4a\x42\xf7\x69\x90\xd0\xdd\x0f\x85\xf3\xbf\x4a\x45\xfc\xad\xe1\xe8\x08\x1d\x72\x6e\x3e\x9b\x50\x1b\xa5\x90\x5c\x39\xe4\x8f\x3d\x3c\xf0\x30\xbc\xaf\x65\x14\xde\xad\xfb\x37\xaf\xaf\x7b\xc1\xf3\xd5\xc6\x78\x6c\x25\xef\x11\xd4\x85\x98\x5e\xe0\x5f\xc0\x15\x23\x0c\x74\x3d\x90\xcc\x94\x09\x26\x99\xdf\x51\xe6\x77\x9a\xf9\xdd\xf9\xd4\x08\x10\x4f\x4a\x05\x88\x87\x39\x01\x22\x7f\xd4\xb2\x36\x50\xf2\x43\xcd\x8a\xd1\x9c\x17\x1f\x40\x1c\xce\x0c\xe0\xb0\x7e\x09\x5f\xa6\x97\xf0\xe6\x66\x40\x5a\xb8\x6d\x79\xf6\xc1\x9a\x4b\xbb\xee\xef\xfb\x30\x44\x7c\xf1\xcb\x93\x02\x81\x16\x6b\xcc\x38\x96\x64\x07\x99\xc7\x65\x27\x37\x12\x4c\x3d\xa0\xf6\x02\x2f\x1b\x00\x6f\x3f\x8e\x52\x7a\x33\x15\x92\x06\xa8\x24\x1c\xfc\x74\x12\xe2\xb5\x00\x0c\x65\x56\x0a\x1f\xd2\x5b\x30\x4a\x47\x84\xdd\x8f\x63\xb0\xcf\x5f\x89\xc3\x62\xe9\x67\x32\x84\xd2\x9a\xad\x5b\x2c\xc4\x12\x1c\x54\xd7\xa7\xd2\x11\x37\x97\x0a\x92\x4a\x65\x43\x4b\x62\x2c\xd4\x94\x5b\x88\x02\x57\x22\x1d\x69\xef\x26\x5c\x36\x58\x52\x1a\xde\x07\x25\x7a\x13\x42\x1b\xe0\x79\xca\x53\x86\xa9\x3b\x34\xa2\xac\x94\x26\x04\x72\x51\xd6\x7d\x7a\x12\xc3\x02\x19\xaa\xe2\x7e\xe4\x4e\x3d\x84\xdc\x72\x73\x44\x61\x97\x97\xe0\x92\xb1\x90\xd6\x7a\x09\x16\x55\x00\x2c\x7f\x7d\x31\x22\x28\xc2\x14\x20\xf9\xfb\x4b\x10\x1d\xf6\x29\x48\x54\x66\xf4\x1a\x04\x51\x48\x6b\x31\xc2\xf0\x25\xf1\x2d\x95\xdf\x6e\x44\x03\x14\x9f\xac\xc9\xb7\xfa\x72\x26\x43\x13\xcb\x9a\x00\x6f\xdd\x04\xb2\xc6\xce\x2f\xe4\xfc\x4a\x80\x77\xc1\xfc\x8a\x9c\x6f\xa9\x91\xef\x0a\x71\xe6\x9d\x61\xb1\x04\x92\xef\x67\xb9\x73\x61\x8d\x72\xa7\x6f\xc6\xfd\x83\xf8\xcd\x06\xe6\x0a\xa5\x04\x1d\x8c\x28\xf4\xbd\x6e\x44\xa3\xaa\x12\x54\x56\x85\x35\x9e\xcd\x27\x91\x70\x18\x91\x14\xde\xc4\x94\x2d\x87\x3a\xdb\xc5\x79\x89\xae\xf0\x60\x00\x31\x95\x8e\x08\x7c\xe5\x40\x47\x3e\x55\x11\xb5\xcb\x7b\x7f\x6e\x21\xa8\xef\x80\x04\x6b\xa5\xab\x44\xca\x71\x19\x3b\x9d\x11\x76\x97\xca\x37\x6d\x39\x36\xcf\x54\x20\xdf\x56\x02\x74\xf9\x3c\xac\xa8\xe5\x84\x8b\xf9\xe7\x16\xb1\x17\xcf\x41\x46\xa3\x30\x87\xc0\xdd\xc8\x5d\x0a\x85\xee\x6c\x8a\x9e\xe5\xcf\xae\xa4\xd4\x5d\xbe\x87\xcf\xe7\x55\x32\xe5\x17\xe3\x08\x3f\xf0\xf5\x32\x10\x02\x11\xb5\x3a\x4a\x27\xa5\x55\xfa\x45\x92\xc7\x6a\xa3\xcd\xfd\x89\x4c\xd9\xdf\xb1\x3b\xed\xae\xf5\xb1\x4f\x73\xa4\x81\xbf\xcc\xca\x09\x44\xe8\xee\x0c\x12\xe2\xab\x87\xb3\x53\xb2\x58\x6f\xe4\x41\x56\x6e\x2c\xde\x44\x05\xe5\x94\x4a\xae\x84\x60\xc2\x2f\x01\xbe\x1e\xfa\xe7\xc3\x9d\x67\x2b\x15\xfd\xf3\x72\xf8\x5c\x7d\x3c\xde\xde\x72\x66\x87\x7d\xcf\xcd\x8d\x59\xca\xee\x1e\x99\xa6\xb8\x29\xb8\x6f\xc1\x9a\xb8\x48\x5c\xa1\xbb\x06\x64\xa3\x61\xbf\xfc\xa2\x66\x05\x4b\x41\xea\x2d\x29\x58\x35\x54\x35\x27\x86\xd7\x2a\x89\xa5\xa9\x3b\x81\x43\x69\x7c\x5b\x30\xb0\x46\xe1\xc3\x98\x4b\xd7\x7f\x41\x31\x89\xd0\x7e\x35\xd4\xb3\x54\xe3\x7e\xd0\xa1\xc1\x95\x8a\x2f\x9f\xac\xda\x47\x63\xed\x18\x75\x69\xbf\xa8\x7a\x36\xff\x7b\x96\x7f\x18\x59\x8d\x76\xf8\x21\xef\xa9\x7d\x3a\x88\xef\x47\x3d\xe8\x7b\xbc\xa6\xe6\xba\x51\x7a\x6c\x6e\x5d\x04\xde\xf0\xa1\x67\x7c\x21\x4c\x2f\xd9\xa8\xd7\xff\xe2\x92\x67\x26\x65\x10\x9d\x1c\x40\xc7\x88\x3a\x3f\x17\x1b\x0f\x83\x9c\xf6\xee\xd1\x87\x72\xd7\xb3\xd5\x24\x96\xdd\xf9\x78\xec\x49\x45\xc9\x51\x81\xa2\xe4\xa8\x40\x51\x02\xe2\xf0\x8e\xef\x8f\xc2\x8e\xa3\x31\x71\xb9\x93\x16\x69\x73\x0e\xcf\xb9\x80\xb9\xd7\x33\x9b\xd5\xb3\xae\x03\xdc\xdf\xd3\x24\x00\x77\xfc\x91\x5d\xbd\xc3\xcf\xcc\xa3\x2a\x29\x2d\x1d\x80\x91\xad\xbe\xc8\xb4\x93\x67\x41\xe6\xd1\x96\x4c\xaf\x62\x7a\x8b\xee\x69\xdf\x4a\x16\x6c\xcd\x29\x3e\xbd\x25\xe7\x28\x6d\x45\x0b\x36\x64\x97\x9e\xa7\x1d\xa3\x6e\x4a\x97\x6a\xc9\xa8\x9b\x9c\xb6\x46\xb6\xba\xe9\xca\x72\xea\xa6\x99\xda\xa5\x39\xfd\x19\x18\x27\x77\xb8\x33\x22\x04\xe2\xce\x49\xb5\x0b\x3b\x09\x17\x1e\x17\x7e\xce\xbb\x40\x10\xe2\x86\x9c\xf6\xca\xd2\x5b\x81\x1e\xe8\x82\x3e\x18\x82\x01\x38\x02\x27\xe0\x10\x1c\x80\x7d\x70\x0c\xae\x83\x3b\xe0\x3e\x78\x08\xae\x80\x07\xe0\x2e\xb8\x07\xf6\xc0\x55\x70\x0b\x7c\x13\xdc\x04\xd7\xc0\x6d\xf0\x32\xb8\x01\x5e\x03\x2f\x82\x57\xc0\x4b\xe0\x8b\xe6\x56\xf4\xaa\x25\xdc\x79\xf5\x93\xaa\xf9\xfa\xd2\x4a\xf3\xf5\xe4\x68\xbe\x3e\xf7\xa9\xd1\x7c\x7d\xee\x13\xa1\xf9\xfa\xdc\xb9\x69\xbe\xbe\xf2\x24\x69\xbe\xbe\xf0\x44\xe8\xa6\x3e\xe3\xe8\xa6\x3e\xf3\x58\x75\x53\x7f\xb9\xd2\x4d\x4d\xd5\x4d\x7d\x35\xab\x9b\xfa\xea\x59\xea\xa6\xbe\x5c\xa0\x9b\xfa\xf2\x14\xdd\xd4\xab\xe5\xba\xa9\xcf\x67\x74\x53\x9f\xff\xf3\xe9\xa6\xbe\x6a\xb1\x2f\x5f\xfd\x73\xe8\xa6\x20\xfc\x33\x29\xa7\x28\x5c\x69\xa7\x3e\x0d\xda\x29\x02\xc3\xfc\x52\x2d\x14\x07\xd1\x3e\xc4\x13\x80\xe7\xce\xdf\x61\x1c\x42\x3c\x01\x08\x86\xbe\x56\x2f\x51\x12\x75\x1e\xc0\xae\xd1\x2f\xa9\x84\x34\x9b\x30\xca\x26\xc4\xd9\x84\x4e\x36\xa1\x97\x4d\xe8\x66\x13\xfa\xd9\x84\x61\x36\x61\x90\x51\x74\x1d\x65\x7e\x9f\x64\x7e\x1f\x66\x7e\x1f\x64\x7e\xef\x67\x7e\x1f\x67\x7e\x5f\xcf\xfc\xbe\x93\xf9\x7d\x3f\xf3\xfb\x61\xe6\xf7\x95\xcc\xef\x07\x99\xdf\x77\x33\xbf\xef\x65\x7e\xef\x65\x7e\x5f\xcd\xfc\xfe\xe2\xa7\x46\xd1\xf7\x19\xa5\xe8\x4b\x8d\xa2\x0f\x83\x04\x44\xe1\x5f\xfa\xa9\xa5\xe8\x4b\x2d\x7d\x56\xee\xf8\x3d\x03\x73\x24\x71\xb0\xa6\x01\x80\xd0\xff\xbc\x4f\xc2\x48\x90\x17\x9e\xca\x1f\x0a\x00\x6f\x7f\x38\x3a\x88\x51\xe7\xca\xdd\x9b\x57\x94\x00\x55\x7a\x6c\x6b\x92\xda\xbe\xd4\x85\x69\x5b\x75\x96\xa6\x7f\x48\x77\x64\x22\x1f\x83\x80\x10\xf0\xb0\x04\x01\x01\xe5\xeb\x81\xe7\x91\xf0\x24\x00\x5f\x61\xd8\xb0\xc6\xa5\xa3\x35\xf9\x1c\x3b\xf5\xc0\x37\xc1\xe7\xb9\x87\xf6\x5c\x8e\xfb\xda\x7f\xc3\xcd\x7c\x96\x21\x8c\x28\xc2\x87\x57\xfb\x11\xf1\xc0\xb5\xec\x77\xf8\x70\x88\xf8\x84\xdd\xd7\x62\x55\x0f\xdc\xce\xe6\x12\x5d\xbd\x07\x53\xee\xbd\xe8\xe5\xcc\x67\x94\x5e\xe1\xc1\x12\x3c\x70\x23\xf3\x45\x7a\xf6\xf0\xc0\x6b\x99\x0f\xa9\xd5\xda\x8b\xd9\x42\x51\x4a\x05\x36\xb0\x2b\x72\xbc\x92\xc9\xd1\xb7\x5d\x99\xbc\x24\x3f\x8a\x69\x0c\xa4\xdc\xae\xcb\x3d\x6c\xa8\x33\x41\x7f\xe3\xfa\x4a\x39\xa0\x77\x45\xbc\x86\xb2\x5c\x6a\x50\x67\x66\xe3\x0e\x35\xca\x33\x09\x47\x6c\x62\xec\xd2\xab\x51\xa7\xcf\x8e\x0f\x22\x7e\x36\x5b\x6d\xe5\xe6\x91\x81\x66\x54\x9a\xc4\x92\x73\x4f\x02\x40\x8c\x76\x38\x05\x3e\x3e\x83\xb7\x31\x42\xfb\xa7\x86\xce\x7d\x28\x53\xa9\x50\x7b\xd7\x7d\x01\x9e\x1c\x24\x11\x11\x71\x6d\x2a\x15\xef\x81\x94\xf0\xf1\x77\x25\x8c\x56\x54\x2a\xfe\xf6\xb3\xf6\x2b\x93\xf1\x78\xa7\x6e\xff\x0e\x04\x69\x71\xd5\x90\x3a\xf6\x42\x0a\x6d\x67\x35\x7e\x56\x9b\x27\x1d\xba\xcc\xd1\x5f\x9e\xb3\xa0\xc3\x57\xc5\x03\x92\x29\x3d\x16\x6e\x8e\x15\x12\x92\x45\xce\x22\x32\xed\xb1\x46\xb1\x62\x17\x90\xd0\xd5\xe9\xad\x95\xe9\x3d\x7d\x5a\xa0\xfa\x24\x20\x83\x33\x0c\x94\x32\x34\x47\xaa\x94\x12\xad\x48\x35\xd7\x24\x41\x56\x31\x3b\x45\x45\x2a\xf9\xf4\x8d\x02\xcd\x27\xbb\xe6\x6e\x14\xeb\x44\xf3\x98\xca\xc7\x1f\x22\xee\x4a\x69\xb6\x0c\x5e\xd2\x09\xd0\x74\x0d\xee\x62\xda\xda\x3c\x66\x42\xdb\x77\x73\x30\x80\x5d\x14\x51\xe8\xa8\xfd\x2c\x0f\xe5\x1d\x4a\xe2\x2f\xc0\x93\xf1\x18\xd6\x06\x90\x46\x5f\x80\x27\xf3\x96\x9c\xa6\x7b\x8c\xa0\x0f\xd9\x31\x86\xf4\x73\x99\xbd\x93\x21\xc2\x87\x7b\x51\xfa\xa0\x36\x84\xa4\x97\x70\xb7\xa1\xbc\x36\xd6\xd9\xed\xad\x0d\x5b\x57\x69\xeb\x98\x66\x0c\xad\x5a\xd6\x6a\xc2\xef\x0f\xa3\x4e\x6e\x1b\xc0\xdc\xd2\x28\x79\x06\x27\x75\xf6\x3a\xae\x0d\xc2\x87\xe3\xb1\x2f\xd3\xc4\x81\xc0\x2f\x0e\x73\x3d\x95\x9b\xb5\x0c\x84\x6b\xa7\xa5\x50\x68\xb8\x28\xb0\x9a\x5c\x0c\x58\xca\x14\x04\xf6\x95\x1f\xa6\x92\xd6\x0d\x9d\x66\xf3\xa2\x94\xeb\x26\x55\x85\x87\xb0\x94\xd7\x0a\xc9\xec\x49\xa7\xb2\x16\xd0\xc0\xc0\x42\x68\x34\xec\x6a\x17\xa8\xf9\x89\x71\x42\xe3\xb8\x9b\x43\x3a\x03\x45\x3d\x9f\xc0\x82\x74\xb3\x97\x0a\x8e\x49\x77\x33\xc9\x12\x96\x60\x9c\xe6\x3f\xaf\x95\xd6\x25\x55\xb7\x92\x3d\x08\x37\xea\xa0\x2c\x6b\xd6\xbd\x2c\x09\x4e\x61\x19\x7a\x3c\x3c\x87\xae\xb3\x01\x60\x2d\xcb\x43\xf1\xb0\x83\x45\xa3\x3b\x09\x82\x9a\x10\x04\xd9\x22\xa2\x79\x5b\xe2\x0e\x68\xf9\x6e\x9f\xa9\x80\xe7\xec\x65\xf1\x24\xe7\x66\xd8\xf1\xd8\x96\x9b\x65\x77\xc5\x4a\x2b\x33\x4d\x63\xcb\x0f\x51\x59\xb9\xe1\x19\xe7\x5e\x3f\x4a\x1b\x1d\x14\x4b\xeb\xf2\x19\xf9\xe4\x65\x56\x55\x86\xad\x72\x96\x95\x6e\xa0\x64\x5d\xa9\xef\xca\x23\x4d\x3f\x4a\x2d\x35\xa4\xe4\xdf\x81\xd7\x49\x30\xe5\x91\x96\xd4\x66\x2c\x6a\x58\x9b\xc2\xc9\xb8\x22\x29\x24\x47\x32\x5e\x40\x61\x7e\x53\xad\x3d\x87\xc6\x14\x44\x94\xbf\x2a\x03\x74\x2a\x53\x84\xa8\xdb\x35\x55\x2f\x58\x85\x6d\x62\x97\x1d\x35\x5a\xfe\xad\x7c\xc7\x14\x0c\x3d\x5f\xc8\xb9\x7b\x84\xd8\x26\x86\xfd\x21\x81\x59\xe1\x7a\x7d\xb9\x25\xa4\x48\x26\xcb\x38\x15\xcc\xad\x4d\x58\x8b\x7b\x5e\xb6\xd8\xf3\xad\x96\xcf\x56\x21\x22\xb9\x0a\x2c\x64\x74\xd6\x22\x42\xaf\x57\xcb\xa1\x8c\xa7\xa5\xdc\x24\x06\x8a\x94\x5b\x57\x92\x10\xe6\xfa\x58\xcc\xad\xba\x0f\x88\x33\xfb\x59\x9b\x7e\xb8\xf6\x6e\xb6\x33\xea\x2c\xff\x6a\x5a\x15\x37\xcc\x69\x06\xa3\x65\x16\x5e\xbb\xa5\xa6\x5f\xd9\x06\x83\xa6\xe4\x5e\x0d\xce\x19\x2b\x32\x22\xde\x6e\x3b\x0c\xa2\xe3\x9d\x52\x52\xab\x7c\x05\xea\x85\xb7\x35\x8e\xda\x31\x62\x99\x29\xa9\x5b\x15\xa3\x5c\xea\x9d\x74\xa5\x92\x65\x13\x55\x6d\x05\x16\x3a\xf2\x8b\xd1\x66\xe2\xb2\xf7\xd6\x4f\xb5\x22\x82\xa2\x2a\xdb\xd3\x24\x89\xd3\xb0\xc8\x8b\x94\x7a\x7e\xad\x3d\x55\x53\xfd\xde\x1a\x3c\xe5\xb5\x9f\x0a\xb8\x2a\x01\x2b\x55\x02\xf7\xdc\x2d\x8d\xd0\xc5\xa9\x13\xf8\xb4\x26\x2f\x8b\x40\xe8\x1d\xf8\x73\x7b\x2d\x3b\xc6\x2e\x52\x57\xe2\xd8\xf7\x5a\xdc\x4e\x54\x1c\xc2\xc2\x4a\xb4\xed\x05\x35\x44\xe1\xc0\x47\xbc\x0a\x1d\x58\x37\xa9\x25\xbd\x5e\x0a\xe9\x5e\x32\xac\x62\x03\x83\x34\x8c\x36\xd5\x37\x61\x45\xbb\x96\x3e\x8f\x9d\x84\x4d\xac\xc7\x6a\xb8\x6b\xc1\x61\x5a\x75\x33\x36\xa3\xcb\xd6\x67\xae\xf6\x32\x99\x23\x6e\x22\x6a\xa6\xd9\xf1\x8f\x59\xbe\x7a\xbf\xa4\xcd\x9d\xdd\x59\x0f\x89\xc5\x6b\x59\x75\x2d\x6e\xf7\x6c\x15\x16\x3e\xdf\x25\x82\x92\x21\xbf\x5f\xc2\x13\xba\x1b\x0c\x60\x0b\xd3\xcc\x51\xca\xca\x0b\x49\x1f\xbb\x37\x63\x67\x25\x5a\x3c\x4c\x31\x9f\x88\xb9\x9c\xc1\xd7\xc2\x74\x9b\x0e\x5a\xe2\x08\x36\xd8\xd0\x2f\xf9\xa8\xef\x63\xb9\x2f\x52\xc4\xec\xbb\x07\x90\x95\x41\xc9\xda\x03\x19\x36\x20\xdb\x2f\x1f\x67\x69\xc5\x1a\xaa\x54\x08\xf4\x51\xb0\xeb\x67\x39\xbf\xd9\x9d\x38\x9b\x3e\x20\x80\x8a\x22\x60\x14\x65\x0d\x43\xc4\x8d\x34\x1c\x39\x58\x08\x01\xb1\x67\x8a\x14\x4d\x13\x59\x80\xdb\x9c\xda\xf4\x8c\x86\x58\x95\x41\xb3\xe4\x56\x81\x35\xa7\x61\x61\x8f\xac\x7b\xde\xfe\x9c\x4e\x33\x8c\xca\xcd\xda\xb1\xd6\x95\x73\xaa\x0f\x93\xe9\x12\xa1\xdd\xcc\xdd\xf4\x95\xe1\x35\xe5\xca\x24\xe3\xb1\x24\x9b\xf3\x3a\xa6\x32\xf2\x41\xf3\xb9\x69\xf9\xf6\x22\xf1\xa6\xaf\xb9\xf5\xcc\xd4\xea\xee\x5f\x15\xd9\x32\x7e\x45\x9c\x8a\x8a\x3b\x9a\xf7\x50\x52\x50\xfa\xfa\xfd\xab\x8f\x52\x9a\x75\xb6\x54\xf6\x05\xf5\x2d\xa0\xd8\x6d\x8b\xb1\x52\x9f\xe5\x71\x85\x4e\x91\x6b\x80\x8d\x46\x01\x66\x5c\x98\x50\x8c\x99\xd2\x5a\x48\xc9\x57\xa5\xd2\xf2\xf6\xae\x7f\x79\xef\xca\xbd\xeb\x57\x3c\xe0\xdd\xbc\x7d\xf7\x95\x3d\xaf\x5d\x43\xb8\x13\x8f\xba\x30\xf5\x55\xbe\x1a\x4e\xba\xdc\x3f\x63\xb0\x3b\x0d\x9d\xe6\xac\x5e\xf3\xe0\x68\x53\xba\x53\x20\x89\x9c\x39\x40\x45\x73\x23\x96\xec\xcc\xc9\x09\x4e\x8b\x44\x9f\x79\x7b\x73\xc9\x7c\x64\xb6\x49\xa3\xc9\xfd\xd1\x70\x46\x21\xea\x1e\x31\x22\x27\x36\x2c\xe3\x47\x15\xcb\x00\x0d\xcb\xe0\xe0\x8d\x83\x35\xd3\x33\xc3\x1b\x23\xbb\xc3\x9a\x01\x52\x26\x0a\xd0\x35\xa9\xb7\x97\x65\x96\xb4\x95\xdd\x25\x81\x7d\x89\xcb\xbb\x23\x1f\x8f\x49\x41\xea\x1a\x2c\xb2\x6b\xa4\xbb\xd4\xd7\xd2\x73\x5e\xa9\xea\xaa\xd5\xd1\x66\x96\x25\x07\x8a\x9b\x6e\x4a\xe1\x8c\xf8\x35\x09\x9a\x34\x77\x53\xb0\xb9\x77\x21\xbb\x2f\x3f\xe6\x0b\xc2\xc8\x6f\x15\x86\x91\xdf\x72\xc2\xc8\x6f\xb5\x81\x7d\x68\x4a\x77\xce\xd6\x30\xa8\x98\x55\x49\x98\x40\x1f\x81\x5c\x7a\xf6\xc0\x15\xaf\x21\xa4\xd6\x6c\x5a\xf8\x97\x84\xdb\x11\x29\x8f\x43\x08\x77\xbf\x84\x68\xff\x0e\xe7\xd6\x8a\x7a\x09\x34\x67\xba\x64\xb8\x7c\xd1\x03\x83\xae\x76\xfc\x2d\x30\xbb\x95\xeb\xf9\x5e\xc6\x33\x38\x28\xff\x32\xcf\x20\x60\xd9\x90\xe9\xa6\x33\x16\x00\xe5\x1e\x5a\x18\xe1\xab\x1a\x10\x02\x0f\x21\x16\xe6\x74\xf7\x46\x98\xa2\x01\xac\x0d\x22\xf2\xc0\x9c\xdd\xeb\xd0\xd7\xf1\x7f\xb4\xbd\xaf\x52\x61\x16\x94\x3e\x26\xd1\xd0\xe5\x3a\x7a\x09\xf1\x2f\x5d\x0a\xd2\x63\xc4\x6d\x91\x38\x7d\x08\x45\x2c\xdc\xe0\xb4\x13\xa5\x70\xbd\xde\xd4\x21\x85\x1a\x20\x09\xd5\x75\xd6\x52\xee\xf1\x67\x6f\x92\x4c\x80\x08\x72\x3b\x20\x3f\xaa\x86\x3b\xcf\x06\x60\x14\x4a\xfb\xa8\x1e\x49\x06\x2c\x33\xcb\xe4\x47\x01\xf0\xd3\x70\xa4\xdf\x09\x3a\xd5\xed\x8e\xc4\x5e\x29\xd2\x10\x6e\x8e\x02\xb5\x0c\x1a\xbb\x3e\x0e\xeb\x20\x09\x3d\x2f\x68\x26\xe1\x08\x4c\x13\x4b\x99\x64\xdb\x97\x18\xde\x2c\xbe\xf7\xb8\x25\xa4\x4c\x31\x5b\xbf\x7d\xba\x35\x37\xa6\x36\x2e\x37\xfd\x52\xed\x29\x79\x41\x93\x75\xb6\x74\x5c\xc2\x29\x23\x06\x0a\xc6\x38\x4c\x0c\xf7\xeb\xc7\xa2\xb4\xbb\x29\xcb\xb0\x4a\x01\x06\x1b\xf5\x40\x4b\xb8\xb2\x7d\xde\xcd\x26\xe7\xa9\x7e\x1c\x64\xc7\x32\x77\x04\xc4\x81\x7c\xa4\x55\x7a\xc5\x8f\xb9\xa2\x5c\x46\x6d\x6e\xec\x00\xbf\xce\xb8\x6a\x34\x80\xc9\x88\x06\x7e\x03\x6e\x07\x6b\x7c\xf9\x36\x76\xca\x57\x53\xe8\x79\x85\x83\xe3\x79\xb2\xec\xd3\x4d\xf6\xd7\x83\xb8\xeb\x35\x9d\x77\x76\x3e\x0f\xb4\x2a\x04\x13\x22\x08\x98\xd4\x19\xe4\xa2\x51\xcc\xed\xb1\x2c\x5b\xd4\x96\xbd\x64\xbf\x69\xd2\x51\x1c\xfe\xa1\xb8\x4d\x53\x5d\x51\xa9\xf1\xd8\x09\x24\x78\xc1\x8e\x33\x61\xbd\x3f\x73\xc2\x3d\xcc\xdd\x37\xa7\xdc\xae\xc7\x08\xea\x3a\x4d\xd6\xa5\x7e\xa3\x59\x92\x51\x37\x9b\x0f\xba\x31\x77\xcb\xd9\xa2\xbb\xde\xed\x64\x5d\x1e\xdc\xeb\xbd\x64\xc4\x66\xb6\x3c\xb7\xf5\xec\x2a\x17\x16\x64\x6e\x14\x72\x65\xed\x99\xcd\x7d\x34\x4d\x8e\x52\x7a\xbf\x9f\x1c\xdf\x9f\x63\xcc\x37\xec\xab\x6d\xa5\xa2\xdb\x37\xba\x20\x49\x35\x2b\x95\x8d\x8d\xec\x68\xeb\x34\x67\xf0\xad\x5a\xe4\x70\x5d\x4d\x46\x98\xe6\xd0\xbb\x9d\xc8\x02\xe9\x82\xb8\xd9\xb5\x56\x2a\x7e\x0e\x2d\x39\x4a\xd9\x3b\xa5\x22\xff\x96\x4e\x5c\xd6\x54\xf4\x14\xae\x78\x14\x9e\xaf\x67\xa5\x72\x42\x28\xa2\xdc\x85\xaa\x5b\xbf\x7d\x6d\x95\xe8\x28\xfd\x93\x16\xaa\x14\x58\x59\xa8\x4c\xaa\xa7\xf2\xa7\x92\x18\x14\x14\xb0\x74\x76\xb9\x99\x73\xf5\xac\x05\x85\x65\xf7\xd7\xac\x00\x9c\x32\x9b\x6f\x37\x0f\xb2\xf5\xae\xcd\xa8\x38\xd4\xdc\x2e\xd4\xa6\x22\x4e\x85\x96\xd1\x48\xa6\xee\x89\xe5\x54\xc0\x2a\xa1\x67\x4c\xc7\xb8\x99\x42\xa9\xb2\x1a\xb4\x5d\x3d\x2d\x99\x0f\xf6\x73\xde\x24\x93\xd7\xd1\x19\x36\x5b\xed\xec\x9a\xe1\xab\xaf\x04\x0d\x7e\x54\x77\x58\x06\xcd\xcc\xda\x0b\x37\xc8\xbd\xca\x9d\xaf\x3b\x4a\x03\x90\xef\x8f\xd6\x0d\xe4\xde\x27\xb3\xab\x64\x91\x5d\x5e\xb1\xde\xcb\xed\xbd\xe1\x20\x94\x5c\xa1\x1d\x54\x2a\x5f\x70\x9e\x6a\xe2\x00\x24\x3c\x0d\x24\x01\x48\x9d\xa7\x9a\xdf\x0c\x29\xf4\xfd\x5b\xe1\x17\x9d\xb7\x9a\x79\x13\xb1\x56\xf2\xa8\xef\x35\x6f\xb2\x96\x6e\x15\xb6\x62\x54\x86\xad\xe8\x51\x9b\xb9\x56\xd4\x8c\x63\xaa\xd6\x4a\x97\x6e\x23\x37\xf9\x9e\xc7\x18\x85\xdb\xf9\x36\x0b\xcd\xdf\x5a\xa3\xc7\xdd\xf2\xcb\xf9\x96\x5d\x93\xba\x56\xfc\xa8\x03\x7a\x23\xd7\x84\x31\xcb\x6b\x75\x1e\x5f\x87\x36\x1a\xac\x43\xaf\xe5\x5a\xd3\xa6\x7e\xad\xde\xe3\x6e\xec\xc5\x5c\x63\xb6\xf9\x60\xab\xfb\xb8\x67\xeb\x95\x7c\xe7\x72\x26\x89\xad\xfe\xe3\x6e\xf5\xa5\x5c\xab\x8e\x99\x63\x6b\xf8\xa8\x2b\x24\x57\xbd\xed\x1b\x77\x30\xfb\x6d\x6f\x59\xe1\x00\xdc\xb2\x1f\xf6\x16\x37\x23\x8d\xf6\x5a\x47\x4b\xb5\x23\x4a\xcf\xd5\x90\x7a\x16\x7d\xb2\x54\x43\xea\x59\xf4\x1c\x0d\x99\x77\xd1\x87\x4b\x35\x65\xde\x45\xcf\xd1\x58\xd6\x0c\xae\x75\xb0\x54\x9b\x99\x6a\xe6\x6a\x5a\xb9\x35\xde\x5f\xaa\x45\xe5\xd6\x78\x8e\x86\x84\x8d\x57\xeb\x78\xa9\x76\x78\xe1\x19\xcd\x68\x4b\xae\xd6\xf5\x05\xdb\x50\x25\x67\x35\x90\xb1\xcc\x6a\xdd\x59\xb4\x1d\xb7\x82\xf9\x9a\x73\x04\xb0\xad\xfb\xcb\x35\x69\x57\x32\x5f\xb3\x16\x37\xf0\x70\xb9\x36\x75\x0d\xb3\x1a\xb4\x6c\x33\x5a\x57\x16\x6d\xcb\x14\x9e\xbd\x3c\xa4\x53\x81\x07\x8b\x2f\x0f\x5e\x72\x56\x03\xca\x2c\xa3\x75\x77\xd1\x06\x64\xc9\x99\x3d\xd0\x56\x12\xad\x7b\x0b\xf7\x41\x95\x9d\xd5\x88\xa3\xa3\x6f\xed\x2d\xda\x8e\x5d\x7c\x56\x53\x19\x6d\x7b\xeb\xea\xa2\x8d\xb9\x15\xcc\x68\xae\x40\x02\xdc\xc2\xec\xa2\x41\x23\xc2\x0f\x56\x96\xb6\x20\x06\xf9\x3a\x33\x48\xdc\xb2\x7d\xdd\x65\x5f\x25\x92\x4a\x85\x9b\x69\x19\x2f\x0d\xd4\x7a\x5f\x07\x1d\x0f\x49\x84\x47\xc2\x6f\x5a\x39\x89\x95\x93\xba\x4f\x48\xb9\xd1\xb1\x79\x40\xa9\xed\x93\x9f\x7b\xda\xb1\x4f\x6e\xd4\x2f\x4e\xcc\xf3\x36\x04\xf9\xed\x36\x9d\xff\x69\x9b\x88\xf8\xbf\x0b\x4d\xec\xff\x26\x9c\x2c\xe7\xeb\xe3\x82\x08\xe3\x59\xd5\x97\xd6\x55\x04\xb4\x55\x04\xb4\x55\x04\xb4\x27\xee\xf9\xfc\x2a\x02\xda\x2a\x02\xda\xea\x05\xfb\x13\xf0\x82\x7d\x15\x01\xed\xe3\x12\x01\xad\x13\xc3\x88\x94\x58\x9c\x2a\x2b\xf2\x19\x4f\x4e\x8a\xdc\x3d\x2a\x31\x9a\x07\x3c\x6f\x31\x8f\xa9\xb3\x1d\xa1\x6e\x34\xd6\xb8\xd5\x1e\x34\x71\xc6\xca\xd0\x90\xe6\x6e\x96\xd9\xcd\xf4\x48\x58\xc6\xda\x7b\xcd\x74\x3d\x8e\x28\x24\x8e\x35\xa5\xb0\x3b\x17\x0d\x46\x23\x9a\xf4\xc4\xd3\x33\xa8\xe3\x5b\x05\xa0\x1e\x3c\x42\x64\x29\x67\x52\x16\x0e\x2d\x65\x97\x5e\x2c\xe6\xd3\x72\xd1\xa5\x4a\x62\x3e\x65\xda\xb2\x07\x7e\xe1\xe0\x52\x56\xe1\x33\x88\x2c\x75\xe1\x31\xf3\xfd\xf6\xfe\x34\xe7\x69\xf2\x49\xe5\xfa\xa3\x33\xe5\xfa\xd3\x27\x82\xeb\x1f\x39\x5c\xff\xe8\xb1\x72\xfd\xf1\x8a\xeb\xff\x18\x71\xfd\x9d\x02\xae\xbf\x33\x85\xeb\x4f\xa6\x70\xfd\x19\xee\xbb\xf7\xe7\x73\x9a\xf5\x71\x61\xfc\xcf\xcb\x67\xd6\x63\x62\x63\xc1\x20\xdc\xd8\x50\xa1\x42\xbc\x04\xd3\x64\xd4\xe9\x73\x91\x1e\x23\x29\xe2\xc3\x5a\xd1\x36\xbd\x11\xa5\xf4\xc5\x24\xa1\x95\x4a\x01\xd7\xea\x0f\x55\xec\x82\xeb\x31\xe4\x8f\xc3\xcc\x81\x27\x0d\x7a\xd3\x4a\xc5\x1f\x2a\x38\x1c\xd6\x06\xa9\x34\x6b\x52\x8f\xb5\xc6\xe3\x61\x6d\x90\xbc\x56\x90\x7a\x0c\x0f\x1e\x20\x9a\xf9\x10\x80\x82\x15\x3a\x14\xec\x53\x4a\x79\x63\x12\x0e\xb3\xb6\xa5\x86\x67\xba\xa4\x58\xed\x4a\x85\x33\x71\xdc\xc8\x9e\xd1\xfd\x4b\xc2\x18\x47\xe1\x6b\x79\x54\xa5\x6b\x34\xa4\xb5\x61\x44\x20\xa6\xb7\x93\xae\xb6\x29\x11\x6a\x45\xc1\xfa\x3a\x0e\x6d\xf3\x17\x07\xf4\xa9\xb9\x15\x8c\x4a\x6f\x05\x71\x49\x58\x93\xe8\xac\xc2\x9a\xf4\xfd\xde\x9c\x61\x4d\xd2\x3d\xb6\x27\xae\xc1\x23\xd4\x81\x1e\x18\x30\xbe\xb0\xc7\x43\x95\xf4\xa3\xf4\x56\x72\x04\xbb\x1e\xd8\x68\x94\x86\x28\x89\xba\xdd\x97\x38\x93\x49\xa6\x04\xfa\x10\x04\x39\x84\x99\x88\x16\x24\x89\xa1\x08\x61\xe1\x71\x87\xcc\x8c\x1a\x13\xc5\x2d\x58\xcb\x84\x5f\xca\x8d\x5b\x15\xec\xb8\x55\x41\xfa\xb7\xda\x00\x25\x6f\x20\x59\x3b\xa8\x52\xd9\x40\x56\x3e\xfe\x86\x53\xbd\xe7\x0d\x29\x19\xc1\xb6\x72\x58\x9f\x84\xa8\x28\x00\x87\x5d\xa9\x17\xac\x49\x94\x92\x4a\x05\xfa\xb4\xb6\x2f\xbe\xde\x20\xc9\x80\x07\xcb\xf5\x93\x80\x23\x3f\x99\x4c\xd6\xf8\x23\x90\xa8\x2b\xfc\xe6\xbc\x8c\x52\x0a\x31\x24\xbe\x37\x48\x46\x29\x1c\x0d\x3d\xe0\x17\xd0\x69\xec\xd3\x29\x21\x36\x80\xf3\x11\x30\x8a\x6d\x7b\xbb\xc8\x1a\xac\x32\xa6\xb2\xa4\x7d\x61\x26\xbb\x08\x06\xc6\xd5\x55\x29\x12\xce\xc2\x52\x73\xa5\xb7\x00\xf1\x83\x53\xfe\x86\x9f\x2f\x31\xc6\xe9\xf1\x68\xd4\xe2\x41\x7e\x06\x47\x4e\xb4\x59\xba\xc7\x4e\xf5\xb5\xa2\x6e\x58\x74\x1d\xb8\x4e\x1c\x4a\xf2\x8a\xea\x10\x47\xb7\x34\x13\xc4\xdd\xcc\xb0\x94\x39\xf7\xb1\x5c\xfb\xcc\x5e\x85\xb2\x06\x12\xf0\x35\x51\xf0\x1c\x48\x0d\x4b\x60\x8f\x50\x43\xbb\x94\xd9\x20\xf3\x2d\x61\x1c\x92\xf9\x97\x30\x66\x24\x70\x4a\x3c\x97\x82\xd5\x8d\x03\xe1\x30\x26\x08\x26\xd6\x06\x9e\x72\xd9\xd7\xb6\xe5\xb9\x1c\x7d\xc7\x13\x86\x7e\x82\x93\x69\xb1\x88\xc2\x18\xba\x09\x79\x94\x6d\xea\x7b\x35\x8f\x07\x10\xca\x1a\x1f\xb6\x4c\x7c\x9c\x56\xbd\x0d\x1a\xf5\xa0\x0d\x70\xd8\x60\xb4\x54\xdd\x56\x38\x49\x0d\x49\x51\x09\x2c\x4a\xe8\x97\x1d\x42\x7a\x90\x16\x48\x0f\xd2\xa2\x70\x0b\x47\xa1\x8f\x43\x64\x0b\x11\x4e\x42\x97\x78\x1e\x86\x2d\xd2\x06\x07\xe1\xac\x7b\x37\xb6\xef\xdd\x76\x0d\x01\xd8\x0f\xed\x8f\xc7\xe1\xe9\x04\xd8\x22\xd9\x83\x12\x91\xec\x71\x0b\xb6\xc3\x03\x29\x92\x3d\x76\x45\xb2\xf6\x4f\x70\x9c\x15\xc9\x1e\x97\x8a\x64\x8f\xc7\xe3\xe3\xac\x48\xf6\xd8\xbd\xbd\x1d\x87\x87\xf3\x88\x64\x9d\x50\xf8\x3e\xe3\x35\x60\x30\x1e\xc3\x49\x00\x8e\x03\xb0\x6f\x89\x64\x8f\x33\x02\xd3\x63\x29\x92\x75\xd2\x77\x8f\xf3\x22\xd9\x7d\x2d\x92\x3d\x9e\x2e\x92\xcd\xb6\x50\xcc\xa4\x32\x14\x8f\x59\xf7\x84\x48\x16\xdb\x02\x90\xeb\x4b\x0a\x40\x1e\x6b\x44\x6d\xc3\x88\x20\xeb\x56\x81\x3e\xa9\xe2\x8f\xe4\x4c\xc5\x1f\xd1\x13\x21\xfe\x48\x1d\xf1\x47\xfa\x58\xc5\x1f\xa3\x95\xf8\x63\xaa\xf8\xa3\x93\x15\x7f\x74\xce\x52\xfc\x11\x17\x88\x3f\xe2\x29\xe2\x0f\xf4\xf1\x57\x7a\x76\x2c\x2a\xd5\x39\x47\xd9\xc7\xe3\x91\x41\x38\x81\x5f\x8a\xd4\x6a\x9f\x96\xdb\x71\xaa\x6e\xc7\x71\xf6\x76\x3c\xf2\x63\xeb\x76\x1c\x1b\x9d\x99\xe0\x14\x41\x3c\x87\xce\x2c\xce\xea\xcc\x4a\xd4\x57\x45\x81\xf7\xca\x19\x56\xf1\xd0\x51\x1c\xe4\xf6\x25\x83\x6b\xb7\xb8\xbc\xc7\x10\x01\xc6\x0f\x46\x05\xfc\x60\x24\xf8\xc1\xd8\xe1\x07\x7b\x0e\xab\xd6\x0d\x15\xce\x7d\xce\x05\x0e\x17\xe3\x02\x45\xd9\x00\x0c\x9c\x4a\x8f\xb2\xfc\xdf\xb0\x84\xff\x3b\x62\xfc\xdf\x50\xf2\x7f\x47\x2e\xff\x67\xff\x04\x47\x59\xfe\xef\xa8\x94\xff\x3b\x1a\x8f\x8f\xb2\xfc\xdf\x91\x7b\x7c\x1d\x85\xfd\xc5\xf9\x3f\xb6\x9b\x14\xff\x77\x14\x80\x81\xc5\xff\x1d\x65\xb8\xb3\x23\xc9\xff\x39\xe9\xbb\x47\x79\xfe\x6f\xa0\xf9\xbf\xa3\xe9\xfc\x5f\xb6\x85\x62\x02\xc1\x50\x3c\x62\xdd\x2b\xe0\xff\x4e\x66\xf0\x7f\x7d\x18\x0f\x21\x49\x2f\x14\x78\x93\x42\x69\x55\x5c\xb2\x1c\x1e\x70\xae\x10\x57\xd3\xb9\x42\xeb\x4e\xbe\x0a\xb9\xf4\xc4\x84\x5c\xc2\x9f\x9a\x90\x4b\xf8\x13\x11\x72\x09\x9f\x5b\xc8\x25\xa4\xf8\x71\x1c\xb2\x1d\x2d\x1c\x90\xe9\xf7\x94\xb4\x86\xd2\xcf\x31\xda\x10\xf8\x78\x29\x16\x87\x53\x9c\xbb\x8c\xe0\x08\xdd\xc4\x4d\x51\x5d\x88\x8a\xd9\x1f\x15\xa5\xe2\x25\x4e\xd9\x6a\x82\xc0\xf9\xc8\x26\x8a\xc9\x23\x11\x45\xf3\xf4\xd3\xd0\xc5\xb6\x2b\xb5\x2b\x26\x77\x74\x45\xee\x9e\x1c\x72\x47\x6c\x9f\x8c\x4b\x93\x3b\x9c\x27\x77\x78\x16\xb9\xc3\x86\xdc\xe1\x39\xc9\x1d\x5e\x9c\xdc\xe1\xc0\xed\xe9\x93\x4e\xee\xc8\xb9\x91\x3b\xad\x67\x22\x21\xdb\xd1\x5b\x01\xc0\x21\x69\xd5\xdb\x00\x85\xa4\xd5\x68\x2b\x81\x7b\x18\x22\x47\x7a\xa0\xfc\xaf\x8a\xb6\x50\x60\x44\x38\x49\x58\xbf\x94\x5c\x46\x4a\x84\x93\x6c\x6e\x06\x56\x7e\xe1\xaf\x15\xb5\x92\x36\xd0\x73\xb6\xa1\x62\x1b\x6f\x34\xdc\x90\xc2\x2a\x3b\xf7\x35\xf4\x58\x68\xad\xf6\x7e\x8b\x8b\xc9\x2d\x2a\x24\xb7\x0e\x0f\x8a\x66\x90\x5b\xb6\x90\xe2\x88\xc2\xb4\x4c\x1a\x59\x1d\xc8\x78\xd4\xf3\x92\xdc\xc7\x73\x91\xa6\xaa\x6b\x7b\xb7\x5e\x7e\x31\x22\x69\x4d\x21\xea\x9f\xa2\x6e\xd3\xdb\x89\xd2\x97\x6f\xbe\x7c\xf7\x25\x0f\x1c\xc4\x49\xe7\x41\xf3\xa9\x53\x29\x18\x4c\xbd\x66\x4b\xba\x3b\xf0\x80\xa7\xde\x79\x79\x2f\x48\x99\xea\xbd\x84\xb5\xee\xbd\x10\x11\x14\x89\x0b\xd6\x01\xec\xbe\x78\xa2\x92\xe4\x06\x53\x3f\x5f\x8e\x0e\x60\xec\xfc\x88\x75\xee\x9e\x71\xba\x65\x79\x82\xf1\x5e\x88\xe2\x38\x39\xbe\x2a\xee\x77\xde\x0b\xe2\x29\x4b\x51\xbe\x83\x8c\x07\x46\xef\x85\x4e\x14\x77\x46\xac\x8b\x77\x65\x68\x6e\x9e\x68\x7b\xd1\x65\x09\x79\xf7\x69\x22\x35\xa5\x08\x47\xaa\x94\xf6\x5a\xcc\x60\x92\x0c\xbb\xc9\x31\xbe\x1a\x47\x29\x17\x24\xc3\x87\x94\x44\x5c\xa2\xcc\x8e\x72\x07\xa9\x7e\x42\xd0\x6b\x09\xa6\x51\x6c\xe3\x20\xef\x41\xf1\xc9\x9d\x21\xc4\xa2\x52\xf9\x06\x5c\x7b\x49\xf1\x5e\x90\xae\xcd\x34\xe8\x3a\x6f\xf1\x5e\xc8\xfb\x94\xf1\x5e\x10\x1e\xf9\x05\x24\x9c\x1d\x4b\x58\x3c\x21\x66\xa0\xb4\x51\xf4\x5e\xd0\x56\x81\x1a\x74\x30\xb7\xdd\xe7\xb8\x3f\xdd\x6c\x42\xff\x76\x9f\xeb\xa6\x58\x82\xf3\xc4\x8d\xfd\xc4\x5d\x48\x6e\x62\x1e\xf1\x5b\x24\xbc\x3a\x42\x44\x74\xda\xbc\xb9\xf3\x5e\xd0\x06\xb5\x12\xba\x8e\xf5\x80\x5b\x3e\xca\xcc\x4f\xab\xd7\x22\xe1\xae\x8b\xb0\x61\x6c\x0c\x7c\x93\xc2\x81\x83\x3d\xc7\x9d\x9d\x07\x7c\x45\x23\x2a\xd6\xb2\x5c\xda\x7a\x7e\x69\x74\x20\xd4\x7d\xd6\x37\xbb\x16\x99\x76\x93\xb7\x75\x04\x09\x45\x1d\x67\xbe\x2b\x11\xa5\x3c\x16\x72\x45\xae\x35\xaf\x0d\xbc\x94\x46\x14\x8a\x33\xaf\xd9\x6a\x5d\x04\x5e\x26\x3a\x73\xab\xb1\x0d\x2e\x6e\xb7\xdb\xa0\xd5\x5a\x6d\xb6\x27\x75\xb3\xc9\x07\xe0\xee\xbe\xc3\xda\x22\x99\xfd\x10\x4e\x04\x56\xdb\x71\x81\xed\xb8\xc4\x16\x34\x7b\x98\x6d\xa8\xad\x6d\xb0\x0d\x5a\x6c\x6f\x6d\x6d\x83\x1d\x0d\x5d\xd4\xd0\xd3\x1a\x7a\x46\x43\xcf\x6a\xe8\x39\x09\x3d\x0b\xbc\x84\x78\xa2\xbe\x46\x9d\x27\x32\x5e\x49\xfd\x9f\xc9\xd0\xd0\xe5\xeb\xa0\xe5\x15\xbb\x0d\x6e\xb7\x4d\xe1\x6d\xd0\xd8\xd2\x45\x1a\x06\xdf\x86\x41\xb8\x61\x30\x6e\x18\x94\x1b\x06\xe7\x86\x41\xba\xf1\x9c\x06\xb7\xea\x06\x34\x58\x6d\x99\xd6\xb6\x4c\x6b\x5b\xa6\xb5\x2d\xd3\xda\x96\x69\x6d\xcb\xb4\xb6\xf5\xac\xd3\x45\xdb\x8b\x81\xca\xf1\x5c\x41\x0e\xb5\x1d\x72\x1f\xf8\xd6\x90\xa9\xdb\x06\xe7\x6d\x83\xf3\xb6\xc1\x79\xdb\xe0\xbc\x6d\x70\xde\x36\x38\x6f\x1b\x9c\xb7\x0d\xce\xdb\x06\xe7\x6d\x83\xdc\x8e\x69\x6d\xc7\xb4\xb6\x63\x5a\xdb\xb1\xd6\x8f\x69\x6d\xc7\xb4\xb6\x63\x5a\xdb\x51\xad\x3d\xc7\x18\xbe\xfc\x2d\x5c\xf1\x83\xca\xe3\xfd\xba\x27\x8a\x71\xcc\xd4\x42\xb3\x02\xf3\xb7\xdc\x85\x75\x51\xe0\xea\x15\xd6\xa9\x55\xdf\x72\x5d\xf1\xe3\x24\xbb\x17\x76\x9e\x13\x2d\xc9\x5d\x60\x3a\x7c\x71\xcb\x99\x2e\x86\xc3\x88\xc2\xee\x5e\x74\x20\x0c\x4a\x78\x99\xd3\xcc\x51\x56\x07\xde\xd7\xbe\x86\xd7\xd7\x59\xed\x8d\x1d\x70\x71\x47\xae\x7f\xb3\x4c\x54\xbf\x44\x4e\x8f\x23\x1f\x91\x68\x00\x29\x24\xac\x8a\x06\xd8\x6a\x4f\xdc\xef\xfd\x28\xbd\x7e\x14\xc5\x5e\xb3\x17\xc5\x29\x9c\x3c\x05\x06\x90\x46\xcd\xd3\x01\xe7\x7e\x6f\x47\x03\xd8\x7c\x34\x5e\xbc\xd6\x3f\x48\xbd\xc9\xc4\x66\xf4\xe9\x63\x63\xf4\x8b\xec\x0f\xfe\xec\x0c\xff\x5d\x72\x70\xef\xf6\xe8\xfa\xe7\x4b\x19\x7e\x0f\x78\xa8\xfb\xd0\xd0\x6b\x7e\x70\xa2\x94\x1e\x24\x0f\x05\x99\xb5\xd9\x22\xe7\xa8\x53\xc7\xe2\x30\x7b\x04\xb8\x07\x89\xe6\x86\xec\x53\xbd\xec\x6c\x90\x3c\x54\x8e\x71\x7a\x06\x78\xa3\xd8\x03\x7c\x59\xb0\x05\xb7\xc5\xb0\xf6\xe6\xd8\x6c\xf2\x90\xad\x8a\xcd\xb6\x0d\x5a\x9e\x8a\x2e\xe1\xc9\xbd\xc0\xea\xea\xc8\x43\x67\x8e\x9a\xf8\x7a\x67\x94\xba\x0d\x5a\xdb\xc0\xeb\xa2\x6e\x55\xf8\xea\x90\xfb\x94\xed\xa0\x64\x08\x25\xab\xd0\xd5\x84\x0d\xb4\x3c\xe1\x78\x54\x6c\x27\x56\x96\x1d\x59\x2d\xc7\x2a\x4f\x6f\x41\x6e\x4e\x26\x38\xb2\x6c\x7e\x6e\x8c\x28\x9f\x3a\x95\x67\x7f\xd6\xda\x58\xa0\xb5\x03\x3c\x18\xf1\x67\x58\x0a\x17\x7d\x50\xab\xb3\xa8\x68\x83\xaf\xaf\x8b\xfd\xfd\x0c\xf0\x62\xe4\x01\x6e\x37\x07\x5a\x8d\x86\x1e\xb0\x79\xc7\x9f\xd3\xba\x67\x81\x87\x7a\x9e\x26\x13\x26\x44\x0c\xdb\xf9\xb3\xeb\xa8\x56\x4d\x01\x49\xe5\x0a\x3b\x3a\xc2\x31\xe4\xb8\xa9\xae\x5a\xed\x4c\xef\xaa\xd5\xdd\x74\x18\x61\xd3\xe1\x3a\x10\x66\xb8\xc0\x3b\x18\x51\x9a\xf0\x96\x58\x22\x37\x2b\x8c\x25\xff\x2d\xac\x32\xd7\xa1\x30\x76\x57\x59\xe6\x59\x59\xa2\x64\xf5\x80\x8a\x8a\x1b\x40\x98\x20\xaa\x29\x92\x46\x88\x16\x51\xb5\x7b\xbd\xae\xff\xbd\xfd\xf7\xd6\x4f\x56\xd3\x73\x53\x88\x6f\x7b\xa2\x38\x90\x1d\x7b\x5a\x64\xfd\xf3\x8c\x52\xa3\xe8\xc4\x32\x55\xb4\x18\x11\x14\xbb\x3d\x2b\x56\x68\xe7\x58\x25\xeb\xa8\x57\x67\x94\xda\xea\x53\x3a\x30\x0b\xc1\x1d\xce\xae\x15\xd6\x3f\xad\x5e\xf1\x71\x9e\x41\xe4\x27\x58\x0e\x0d\x33\xa0\xcf\x02\x2f\xc2\x5d\x39\x30\xcf\x1a\x76\x12\x27\x6a\xb4\x9e\x33\xe3\xed\xfe\x29\xef\x5c\xd9\x0a\x9d\xb2\xd2\x6c\x0a\x2d\x17\x4f\xc3\x62\x76\xd5\x50\xcf\xb3\x5e\x0a\x87\xcb\x5e\x42\xcf\xcd\x5e\x41\xb2\x07\x48\x5c\x95\x6c\x9a\x3e\xa5\x0f\x2a\x4e\x90\xde\x35\xa2\xb8\x2c\x18\x8d\x68\xc2\x56\x62\x0c\x19\x21\xf6\x92\x5e\xcf\xfd\x42\x88\x38\xda\xb2\x1f\xa2\x21\xa2\x5c\x53\xed\x7e\x4b\x87\x30\x8e\x3b\x7d\xd8\x79\xb0\xc0\x99\x53\x8c\xe1\x8c\x93\x47\xd8\x02\x00\x43\x96\xb5\xdb\x3e\x9d\xc5\x89\xa1\xe4\x99\xcb\x8c\xc2\x95\x9e\xc4\xd0\x9c\x05\x12\x8b\x5b\x12\x09\x7e\x1f\xbd\xcf\xb3\xe8\x12\xce\x81\xad\xca\x0d\xa2\x93\x03\x68\xdf\xe6\x74\x76\x73\x4f\x2f\xa4\xa8\x3c\x8f\x61\x12\xf4\x0d\x4b\x7d\x11\xf7\x3c\x79\xd1\xb4\x0f\xb2\x9e\x74\x9b\xa6\x2e\x62\xce\x29\x77\x20\x5c\x9d\xa9\xab\x99\xf3\x4d\x2e\x1c\xf7\x16\x21\x2e\xde\x99\x9c\x0f\xf4\xa3\xe0\x92\xab\x48\xdb\x9c\xe2\x08\xa7\x90\x50\xeb\x14\xe7\x2e\xbd\xcd\xf8\xa5\xd6\xc9\x3a\x1f\x65\x7d\xce\x39\x9a\x16\xdc\xb3\x6c\xe7\x8c\xd2\x2a\xea\x88\xe3\xa6\xa0\xd5\xb3\x66\x96\x15\x3f\x7b\x16\x4c\xf3\xc7\x8a\x47\xfe\xd2\x57\x77\xbe\x84\xf7\x4e\x76\x8a\x79\x64\x25\x9a\xf2\x80\xa7\x23\x08\x7b\x8c\x21\x32\x3c\xf2\x15\x4b\xce\xe6\x01\xcf\x40\x79\x81\x7a\xc6\x4b\xb6\xf7\xa2\x2d\x7b\xf3\x80\xb7\xa7\xee\x10\x92\x37\xa7\x90\x0c\x1c\xce\x39\x2f\xd4\xca\x49\xc8\x6c\x8e\xbb\x48\xc8\xe4\x88\x72\x0a\xbe\x58\x42\xa0\x1c\x6f\x5f\x22\xd2\x29\x14\x06\x65\xa4\x8c\x39\x59\x62\x46\xc2\xe4\x8a\x85\x32\xd2\xa0\x47\x96\x85\xda\x12\xb0\x8c\x9c\x35\x2b\x82\xca\xdf\x7b\x6c\x51\xa5\x25\xc1\xb3\xa5\x5d\x45\xe2\xaa\x9c\x54\xb3\x5c\xd2\x5a\x2a\xaa\x2d\x96\x76\x66\x44\xa9\x05\xc2\xcf\x02\x11\x61\x46\x26\x58\x24\x3f\x2b\x12\xef\x96\xdd\xc9\x2e\x02\xef\x20\x4a\x51\xa7\x6a\x76\x88\x10\x67\x37\xa4\x38\x7b\x59\xd4\x0b\x45\xb3\xb9\xfe\x38\x12\x58\x25\x5e\x9d\xab\x93\xf6\x6c\xe6\x3b\xac\xa4\x25\xb3\xe4\x3d\xe2\xd0\xcc\x62\x9a\x93\x18\x4a\xb1\x90\xe4\x22\x8c\xd4\xcf\x9c\x46\xa2\x1b\x53\xc5\x62\x3b\x46\x7c\xb5\xf3\x5c\x91\x7c\x4b\x48\x87\x4a\xc5\x34\xf2\x6a\x14\x43\x2d\x57\x8a\xd2\x14\x1d\x62\xcf\x65\x8f\x9f\xe5\x87\x4a\x5f\x86\xfa\x6b\x59\xb7\xc4\x8c\xab\x5d\xe3\x18\xdd\x38\xb5\xcf\xb8\x2a\x37\xee\x8e\x2d\x37\xcb\x8e\x5b\xe2\x02\x9f\xc1\xda\x25\x4b\xdb\x3a\x86\xcd\x4d\xd5\x8c\x90\x85\x8c\x95\xac\xaf\xe8\x26\x49\xa1\x97\x4f\x12\x78\x5a\xe9\x0a\x61\x2b\x49\x63\x6e\xa5\x39\x2c\x9a\x29\x9c\xed\x8b\x1a\xd0\xec\x40\x9b\x2e\x9a\xc2\xb9\xd0\xf4\x46\x42\xdc\xb6\x65\xc5\xfc\xba\x85\x3b\x91\x38\x3e\xf3\x3c\x83\x2b\xec\x68\x64\x58\xce\x79\xae\x17\x6c\xe0\x9f\xd6\xa5\xd5\x61\xc4\xf7\xb3\xc5\x9f\xcf\x62\x81\xa5\x68\x53\xcb\x8c\xed\x9b\xff\x56\x66\x58\xbd\xf5\x29\xac\x74\x35\x92\xf9\xac\x0b\xbf\x66\x89\xbb\xea\x38\x38\x38\xf1\x2c\xc1\xb4\x9d\x05\xa9\xe3\xc1\x48\xa5\xed\xcf\xf2\xea\x6e\x04\xcf\xb9\x8f\xb1\xa9\x5d\xc8\xa3\xed\x1c\xe6\x48\x31\x42\x6a\xf9\x5d\x88\x0b\x5c\x4a\x20\x45\xd7\x46\x86\xa0\x44\xb5\x9c\x4d\x16\x67\x90\x91\x6b\x3b\x37\x0e\x25\xe1\x2e\xe0\xb6\xad\x3b\xa6\x73\xb3\x14\xc4\xa1\x58\x49\x21\x65\xe4\x5e\xdd\xcb\x5e\x3d\x4b\x99\xe1\x8c\xdf\x5d\x47\xac\xde\x9e\x22\x0a\x9b\xb3\x5c\x59\x7b\xf7\x33\x9b\x7f\xfb\xb9\x39\x1b\x5c\xa2\xa0\xad\x43\xcb\xca\xb0\x4b\x0b\xb9\xee\x53\xcb\xc8\xc4\x3c\x97\x92\x8c\xe7\xe9\x4c\x21\xeb\xb2\x94\x57\xba\x94\xdc\x9c\x4c\x46\x2e\xaa\x95\xb7\xce\x96\xcd\x69\xb5\xb3\x6a\x06\xa9\xf2\xb1\xa4\x8c\x7a\xef\xcd\x7d\xb6\x94\x2b\x31\x76\x0a\x94\x18\x79\xdd\xc5\x5c\x62\x10\x87\x56\x49\x3d\x8e\xe8\xdd\x2c\xb6\x33\xcf\x41\x4f\x61\x6b\x95\x48\x7c\x96\x7a\xb4\x50\x32\x6e\x98\x76\x5b\xa0\x5e\xa6\x24\x9e\x47\xf7\x2b\xcf\xc5\x22\xcd\x9d\xa3\x85\x14\x89\xde\xcb\xa2\xab\xeb\xf2\x60\xa8\xd5\x6a\x9e\xcd\x83\x6c\x65\xb4\x35\x39\x0d\xe2\xc5\x59\x9a\xbe\xdc\x12\xcb\xaa\x31\xb7\x0b\x6a\x50\x57\xf5\xe9\x0a\x42\x4b\x7d\xc9\xf2\x14\x0f\xc7\x34\xcd\x54\x56\x16\xf8\x74\x5e\xec\x98\xd1\x51\x99\x12\x39\x49\x5f\x03\x34\x72\xda\x2a\x37\x47\xdd\x5c\xfc\xf5\x61\x5a\x26\x5c\x94\x6d\xb9\xa7\xed\x55\x19\xfa\x7e\xee\xd3\xd6\xe2\xbb\x17\x3f\x62\x55\xe1\xec\x19\x0b\x3c\xa5\x98\x6c\x48\x51\x2c\x43\xa7\xcd\xc7\x6c\x69\x02\x60\xe4\xa1\xf0\x55\x45\x0a\xd4\x8a\x7b\x46\x1f\x52\xde\x74\x6f\xc6\xba\xd0\xf2\x84\xe2\x39\x9b\x4e\x4c\xd9\xdc\xe5\x76\x1c\xb3\xf5\x5f\x65\x36\x1b\xc5\xc4\x60\x81\x1b\x75\x5b\xcf\x6e\x7e\xa7\x2e\xba\xb9\x16\xda\xce\xf3\xed\xc4\xf2\x9d\x9f\xb3\x3e\x98\x2a\x80\x7f\xae\x58\x35\xc1\xaf\x5b\x85\xa1\xc6\x4a\xc5\xcd\xf3\x9e\x4a\xd2\x7c\xc2\x5d\x7e\x62\xfc\xab\x03\xd5\xc8\x82\x6b\xce\x5e\x75\xcf\xba\xab\x2e\x67\x47\x63\x2b\x45\x0c\xeb\x60\xba\x67\xb3\x22\x53\x06\xee\xd9\x72\x19\xfd\x14\x1d\x85\x3b\xb2\x56\x94\xb4\x69\xc3\xea\x94\xcd\x19\x4d\xcd\xa3\x41\xd2\x5a\x80\x51\x3c\xaf\x44\xd4\x56\xc0\x1a\x8d\x9c\xdc\x4d\x5e\x89\x52\xac\x50\x81\x39\x4f\x3b\x45\x34\x53\x29\x22\x71\x52\x95\x4e\xa0\xac\xf5\x61\x23\x25\xe5\x7e\xa5\x38\x19\x0d\x5a\xe9\x10\x66\x14\x60\xd9\xb2\xcf\x15\x7c\x99\x57\xe7\x37\xdf\xfa\x98\x6f\xeb\x3c\x53\xb0\x75\xcc\x44\x2d\xbf\x67\x24\xe7\xe1\xde\x81\xac\x2b\xd0\x3c\xeb\x44\x6c\xb8\x32\x76\x2f\x23\xcb\xe3\x52\xd4\x9b\xda\xd0\xa1\x40\x12\xa7\x09\x78\x3e\x78\x66\x4e\x08\x9b\xe3\xab\xe7\xe5\xc8\x6c\x86\xcc\x16\x5e\x78\x9e\x3d\x2c\x2e\xa5\x75\x24\x22\x0a\xa7\x3c\x4f\x78\xb1\x60\xaa\x9c\x81\x13\x2f\x27\x67\xf1\xfb\xb9\x55\x6c\x58\xab\x8c\x3d\x5d\x9e\xb1\x2a\xe2\x89\x9e\x06\xcf\x4c\x65\xac\x2e\xe6\xf8\xaa\x12\xce\xaa\x4c\x35\x59\xba\x90\x95\x7d\xd7\x12\x8c\xc4\x8e\x4d\xd2\x33\x56\x2d\x5a\xbf\xbd\x9d\xb5\x85\x9a\xd2\xcb\x9d\xc5\xb8\xc7\xfc\xc7\x2d\xb0\x5d\xb6\xbf\x1b\xe7\x64\x66\x75\x16\x8a\xa2\x29\x41\x2d\xfe\xec\x7a\xa3\x2b\xf7\xef\xa2\x87\xaf\xbc\x48\x8a\xf5\x46\x65\xf6\x54\x85\xaa\x12\x87\xe1\x2c\xe0\x31\x5d\x0e\x35\x27\x8a\xb7\x8f\xe4\x67\x66\x29\xe0\xe5\x81\xd8\x45\x47\x73\xeb\x22\xb5\xf2\xf6\xd9\xdc\xfd\xa5\x58\x91\x7f\x4e\xfa\x78\x79\xdc\x76\x92\xc1\x41\x22\x99\x80\x19\x87\x83\x64\xeb\x1c\xe3\x01\x4b\x07\xdf\x98\x5f\x07\x6f\x8b\xfb\x72\x1a\xf5\xed\xb9\x34\xe0\x96\x22\x7b\x27\xa7\xe5\xb6\x24\x3e\x17\xa7\xa8\xc7\xf3\xaa\xf3\x47\x52\x7a\x5b\x3e\xaa\x75\xc6\x63\x14\xc7\x55\xfe\x60\x2e\x39\xb1\xb2\xda\x1e\xba\x8b\x54\xe3\x0b\x31\x24\x67\x44\x92\x32\xe4\xe3\x4c\x28\xd4\xc7\x91\x34\xbd\xb2\xf7\x97\x5f\x39\xee\x7f\xe9\x5a\x31\x69\xfa\x9c\x70\x91\xe0\x2a\xaa\x3d\xb6\x91\x05\xfb\xa3\xd5\xd6\x16\x0d\x73\xf8\xa3\x42\x9b\xce\x22\x9e\x29\xff\x7a\xc3\x62\xb9\x72\x9c\xd9\x02\xd6\x9f\x79\xee\xbf\x70\x9b\xce\x30\xd5\xd1\x5b\x28\x6f\x9b\xc3\x58\xb6\x29\xfb\xc4\xf6\x29\x57\x62\x88\xa8\x29\xf2\xd3\x8e\x72\x69\x8e\x5b\x55\x63\x7b\x1e\x33\xbc\x33\xb8\xd8\x48\x2c\xe7\xba\xd5\x34\x6c\x36\xf4\xd1\x4c\xc8\xac\xfb\xfe\x14\x66\xad\xd1\xc8\x69\x34\x72\x59\xea\xb3\xf9\x39\xd7\x16\x76\xaa\xc5\xa3\x63\xc9\x37\xdd\xdb\x88\x45\xf4\x17\x17\x5f\xdb\xcc\xa4\xac\xd0\xde\x7a\x62\x87\xe5\x5e\xb4\x18\x6e\xfb\xb9\xa9\xca\xdf\xa2\xeb\xd5\x96\x75\xbd\x92\xb3\xab\xb8\xff\x05\xaf\x57\x39\x73\x88\xf9\x2e\x53\x79\xc2\x90\xed\x65\x56\x9b\xfb\xb4\x79\x5e\xd1\x72\x5e\xec\xc8\x9b\x55\x4d\xcb\xa0\x8c\xb8\xca\x92\xf5\xce\x3b\x46\xfa\x52\xf3\xac\x7c\x77\xe1\x8e\xf7\x7c\x77\x9a\x8b\x19\x41\xef\x12\xfc\xfc\x6c\xfb\xd6\x25\xf6\xbe\xb2\x2f\xe6\x74\xd2\xf2\x09\x21\x06\xb5\x74\x91\x5b\x39\x73\x4b\x30\x6f\x49\x2e\x09\xa8\x6a\xc6\x36\x1f\xb4\xa5\xd4\xdb\x59\x13\x70\xd6\x11\x5b\x2b\xaa\x2a\xe8\x8c\x08\x11\x5b\xdc\xa0\xf9\x6a\x21\x2a\xae\x59\x40\x16\x9b\xbc\x5f\xd7\xd2\xd5\x24\xca\xcc\x2b\xcf\x71\x17\xcc\xf6\xac\x05\x33\x9b\x2b\xca\x25\x6d\x83\x9d\xd2\xcb\x1d\xb7\x41\xd6\x16\x87\x67\xc8\x4a\x9d\x25\x0f\xe5\x32\xd0\x1f\x1f\x3e\xea\xe8\xde\x9d\x2f\x7f\xf9\x73\xc9\x73\xc5\x7c\x94\x7e\xf1\xfb\x82\x6b\x61\x3d\xe5\x68\x9f\x69\x60\xef\x98\x8a\xce\x69\x1b\x9d\xb1\xef\x66\xbc\x8b\x73\x48\x6f\x2d\x73\x46\x9f\xd5\x32\xb2\x90\x3d\x9b\xa5\x94\x17\x69\x7d\x9c\x56\x14\xbe\xd2\xdb\xbb\x78\x7d\xeb\x46\x89\xd0\x40\x1d\xff\xe5\x6f\xc8\x17\x22\xfb\xe6\x50\x9f\x45\x8e\x73\x2f\x72\xb2\xe4\x78\x16\x35\x5c\xc2\xc6\x59\xb8\x5f\xc3\xd1\x00\x66\x98\x4a\xd0\x12\xec\xc8\x6d\xfe\xa9\x68\xe9\x6a\xaa\xbb\xe5\xb0\xdd\x67\x4a\x00\xf3\xb8\x97\x2c\xe0\xb5\x47\x5a\xc0\x19\xcd\xd3\xc7\x69\xf1\x1e\xdf\xb8\xf5\xcc\x95\xa3\x9b\x5f\x29\x95\x78\x39\x8a\xab\x92\x6b\xdc\x19\x68\x7b\xce\xe0\x2a\x94\xd3\xff\xcd\xc3\x0f\x78\xf6\x12\x2e\xd0\xe1\x64\x8f\xfe\x33\x5e\xb0\x6e\x1f\xce\x84\xda\x7e\x1c\xdf\xbc\xde\xbf\xd2\x38\xa8\x3f\x7d\x7d\xab\x64\x95\xce\xa9\xaf\xd7\xb7\x99\x85\x1e\xb0\xda\xd6\x47\x53\x19\x81\xf9\x1e\x61\x66\xc4\x08\xf3\xbc\xac\x2a\x79\x97\xf7\xf4\x7c\xcf\xf2\x9e\x05\x1e\x81\x51\x37\xc1\xb1\x12\xf5\x5d\xcc\xdd\xba\x33\x19\x0a\x7b\x52\x9a\xd5\xe1\xcb\x97\x7f\xe4\xb7\xcc\x8b\x1a\xfd\x9e\x92\xc2\x81\x3e\x70\x76\xc0\x4e\x61\x37\xdc\xd7\x82\x33\xf8\x75\x50\xf6\xe8\xef\x99\xa2\x47\x7f\x85\x8f\x52\xe7\xb7\xcf\x5d\x94\x3b\xe4\x72\x5a\xf5\xba\x74\xea\x33\x62\xb1\x6a\xe7\x78\x9e\x6c\x65\x94\x04\xf0\xed\xbf\x7f\x8c\xda\x67\xcd\x08\x97\xac\x65\xf3\xc4\x74\x98\xb7\x8f\x69\xcc\xff\x82\xf4\x09\x7a\x95\xf5\x08\x8f\xb1\x84\xab\x5b\xe5\xd5\xa1\xda\x8b\xe2\xf8\x20\xea\x3c\xa8\xa2\x5e\xd5\xf8\x63\x3c\x7b\xfa\x5d\xe0\x66\x5c\x50\x71\x85\x99\x7f\x7a\x08\xa9\x1d\xb7\x55\x7b\x93\x04\xa9\xfd\xc1\x0e\xb0\xa6\xbd\x0e\x93\x5d\xd8\x24\x93\x49\x30\x2b\x76\x7e\xde\xef\xef\x12\x1e\x31\xb5\x97\xf8\x0d\x58\xa9\x6c\x6c\x88\x6e\x1c\x42\xca\x06\xc2\xf0\xad\x41\xee\x9b\xe2\x69\x5c\x17\x80\xca\x31\x5f\x3d\xeb\x1e\x7f\x1d\xfa\x32\xa6\x53\xa0\xdc\xee\xa1\xb0\x7e\x09\x5d\x36\x95\x62\xe0\x09\x0f\x7c\x5e\x70\x09\xa9\x30\x0a\x49\x88\x6b\xc2\x31\xe1\x15\xba\x6b\x40\x1f\x05\x4d\xdc\x42\xed\x35\xea\x27\xc1\x2e\xf4\x4d\x2d\x89\x85\x5a\xd0\x24\x9b\x9b\x93\x89\x0f\x03\x40\x5c\xc7\xac\x3a\xea\x54\x11\xa2\x48\xf8\xa9\x54\xee\x03\xab\x8d\x35\xd7\x53\xa0\x69\x0c\x59\x28\x27\x0a\xe5\x28\x44\x06\x65\x03\xfa\x49\xd0\x44\xad\x84\xfb\x27\xa4\x7e\x24\x43\xf6\xa4\xa1\x8d\x7c\x64\x23\xcf\x32\xa6\xcf\x57\x1b\xca\x4f\x64\xca\x03\x02\x30\xd4\x22\xdb\x13\x2f\x5e\xc3\xac\x93\x0a\xd7\x89\x13\x0a\x03\xcd\xec\x2b\x48\x64\x6f\xc7\x63\x72\xb9\x2e\x2b\x3d\x55\x24\xbd\xb9\xd1\x00\x02\x23\xe9\x31\x7b\xa2\xc7\x22\x0a\xeb\x20\x0d\x8b\xc7\x02\x5f\x0e\x49\xa5\x12\x5d\x4e\x2f\x89\xb6\x47\x25\x43\x12\xb1\x21\x89\xe4\x90\x8c\xe4\x90\xc4\xce\x90\x8c\xac\x21\x01\xc9\x78\x6c\x2f\xc3\x91\xf5\xa0\x57\x8c\x57\xac\x46\x25\xd6\x83\x85\xad\xc1\x32\xfd\x9a\x56\x93\xea\xf1\x68\xc2\x87\x36\x12\x6b\x08\x6c\x34\x82\xf1\x78\xca\xc8\xe4\x02\x90\x88\xad\x70\xaa\x77\x51\x13\xd6\x34\x2c\xcb\xa6\x4d\xaa\x83\xa9\xc3\x5a\x3f\x4a\x2d\xe7\xef\xbe\x85\x12\xf7\xe9\xaa\x83\x3e\x41\x0d\x3a\x0b\x3b\x92\xc1\xc1\x8d\xe3\xd8\x90\x6d\x49\x90\x86\xb7\x22\xda\xaf\x0d\x10\xf6\x05\x10\x3d\xf4\x85\x3f\xd6\xcd\x04\xd4\x03\x10\x55\x1b\x01\x18\x85\x6c\xad\xa4\x01\x88\xc3\x91\xae\x1e\x74\xc2\x91\x8c\x8d\x74\xa9\x53\xa9\xc4\x72\x3a\x7b\x22\xef\x66\x98\x04\x6b\x71\xd8\xb3\xb3\xf7\x64\x76\xe5\x16\xb3\xb3\x8c\x17\x4c\xe9\xb0\x38\xa4\x00\xd6\x3a\xc9\x08\x53\xa9\xdc\x0b\x09\xfb\x88\xbb\xf0\xe1\x9d\x9e\x48\xe2\x5e\x31\x45\x8b\x57\x28\x17\xd2\x73\xb7\xc4\x3d\x84\xbb\x22\xc3\x97\x10\xed\xdf\xe9\xf5\x52\x48\x33\x01\xe6\x74\x38\x7b\x10\xe5\x02\xf0\x3d\xbf\x63\x79\x99\x37\xc1\xf6\x76\xda\x95\x8a\xfd\x0b\xa4\x61\x1d\x8c\xc2\x8d\x06\x88\xc3\x1c\xa9\xdf\xd8\x18\x4d\x0a\xf6\x5b\x07\xf4\xcc\xfc\x74\xad\xed\xd3\x31\xdb\x07\xf4\xc3\xfa\xa5\xfe\xe5\xee\xa5\xbe\x22\x29\xc3\xb0\x63\xf6\x8f\x01\xfd\x7e\xd0\xec\xb4\xfa\x6d\x1e\xf4\xd2\x54\x35\xb4\x17\x33\xdb\x15\x1b\xd1\x78\xbc\x31\x10\x21\x1f\xfd\x61\x20\xc2\x22\xf8\x4e\x01\xb3\xc7\x7a\xe3\xf1\x20\x00\xb1\xaf\x7c\x9d\x8a\x30\x24\xd8\x1f\x02\x12\x3c\x1f\xd6\x77\xfd\xf4\x32\xda\x4d\xc6\x63\x3f\x09\x87\x41\x73\x14\x0e\x41\xba\xb9\x19\x34\xd3\xcd\x4d\xbe\x01\x4d\x39\xb5\x69\xc0\x68\x3c\x4e\x26\x7c\x56\x62\xf3\x30\x34\xb4\x06\x45\x4e\x87\x59\xb6\xb9\x09\xd9\x2e\x9c\x90\x6d\x67\x42\xb6\xdb\x9a\x1e\x5d\xf1\xd9\x82\x36\x1d\x24\xd6\xe0\xc6\x61\xfd\x52\x7c\x79\x74\x29\x56\x83\xdb\x09\x89\x19\x5c\x03\xfa\x71\xd0\x24\xad\xb8\xad\x07\xd0\x99\x2b\x8b\xee\xf0\x51\xed\x04\x6a\x6b\xd8\x03\xdb\xb1\x07\x16\x03\x04\xa2\x60\xcd\x7c\xed\x19\xac\x9e\xaf\x57\x2a\xa9\x70\xda\x9c\xf0\x35\x22\xa3\xbf\x20\xbf\x03\x30\x1b\x76\xfd\xb9\xa3\x43\x60\xa4\x13\xc3\x91\x58\xde\x09\xc3\x7c\x38\x46\x58\x93\xd6\x77\x3c\x26\xa3\xa5\x59\x00\x28\x84\x35\x75\x51\x00\x49\x48\xc6\x63\xb4\x66\x47\x7e\x49\xc6\xe3\x6a\x23\x0c\x43\xc6\xa9\x24\xda\x63\x71\xc4\x7e\x81\x86\x0e\xe0\xc2\x67\x37\xea\x1e\x45\xb8\x23\x1f\x2b\xb1\xb1\x91\x3b\x34\x02\xb0\xc6\x18\x8f\xe1\x35\x14\x75\x08\xa2\xa8\x93\x86\x23\x83\xb9\x30\x16\x25\x61\x61\xf8\x87\x91\x0f\x83\x1a\x4d\x5e\x19\x0e\x21\xb9\x1a\xf1\x70\x11\x72\xfb\xfb\x23\x9f\x66\x3e\x05\xd6\x78\xec\x9d\x0c\xe1\x95\x3e\x8c\xba\x8b\x56\xcf\x6f\x07\x29\xa3\x1a\x45\x2d\xec\x36\x9a\xd5\xc6\x64\x4d\x1c\xdc\xa7\xde\x87\xaf\xff\x93\xd7\xf4\xae\x78\xc0\xfb\xff\xfe\xf9\xff\x90\xd0\xdb\x7f\xa5\x80\x7f\xa5\x80\xbf\x96\xc0\x07\xbf\xff\x85\x86\x7e\xae\xa1\x5f\x69\xe8\x97\xaa\xc0\xbf\x96\xc0\x3b\xaa\xae\x77\x4c\x15\xbf\xd5\xd0\x6f\x34\xf4\x8f\x1a\xfa\x07\x09\xbd\xaf\x5a\x7a\xef\xa7\xaa\xd2\x6f\xa9\x94\x37\x74\xee\x9f\xa9\x6f\xff\x46\x7d\xfb\xbd\x02\xfe\x83\xaa\x48\xa1\xf0\xbe\x41\xe1\xa7\x1a\xfa\xb5\x86\xd4\x40\x7c\xf0\xa6\xc6\x59\x35\xf8\xbe\xaa\xf4\xc3\xdf\xfd\x57\x09\x7d\xf4\x63\x8e\x28\x6f\xfb\xdb\x0c\xba\xce\xda\xfc\x67\x0d\xfd\x4c\x41\x1f\xfd\x98\xf7\xed\x0e\x07\x79\x1b\xaf\x70\xf0\x4d\x06\x7e\x91\x83\xbf\x37\x20\xaf\xe0\x2b\xac\xa5\xd7\xff\x5f\xaf\xe9\xbd\xc8\x27\xe6\x67\x12\xfa\xe0\xcd\xbf\xd6\xd0\xb7\x34\xf4\x6d\x09\xfd\xcb\xbf\x96\xc0\xbb\x2a\xd7\xbb\xff\x4a\x02\x1f\xbe\xce\x5a\xbb\xca\x2b\xfb\x4f\x12\x7a\xe7\xdb\x0a\xf8\x8e\x02\xbe\xab\x80\xef\x49\xe0\xed\x7f\x2b\x81\x0f\xde\x54\x99\xde\x55\x49\xef\xff\x41\x02\x1f\xfd\xf8\x8f\x12\xfa\xf0\xf5\xb7\xbc\xa6\x77\x8d\x37\xf3\x73\x09\x7d\xf0\xe6\x77\x25\xf4\xce\xdf\xe8\xa4\xef\x69\xe8\xfb\x1a\x7a\x5d\x43\x2a\xdf\x3b\xea\xe3\xbb\xff\x5e\x01\xaa\xae\x77\xff\x9d\x04\x3e\xfa\x89\x6a\xf2\xbd\xdf\x31\xe0\xab\x0c\xfa\x96\x86\xd8\x1c\x5d\x7b\x8d\x41\xff\x46\x41\x1f\xbe\xce\x86\xfb\x3a\x47\xf2\xff\x94\xd0\xdb\xdf\x51\xc0\xbf\x53\xc0\x77\x25\xf0\xc1\x1f\xfe\x4a\x41\xbf\xff\xa3\x4e\xfb\x96\x86\xfe\x5a\x7f\xfd\x67\x09\xbd\xf3\xba\x4a\x7a\xf3\x6f\x35\xf4\x77\xea\xa3\x4a\x7a\x47\xa5\xbc\xfd\xef\x75\x0d\x0a\xb1\x77\x7e\x24\x81\xf7\x55\x3b\xef\x7f\x5b\x67\x7a\x53\x37\xad\xd2\xde\xff\xa5\x6e\xe6\xc7\xaa\x86\x1f\xea\x24\x03\xa9\x5a\xdf\xfd\xbe\x02\xfe\x46\x02\x1f\xbe\xce\x26\xf3\x06\x1f\x93\x5f\x48\xe8\x83\x37\xdf\x90\xd0\xbb\xff\x51\x02\x1f\xfd\x44\x65\xfb\xf0\x75\xd6\xdb\xcf\xf1\x02\xff\x59\x42\xef\xfd\xa3\x04\xde\xf9\xb1\x04\x3e\x78\xf3\xa7\x2a\xe9\x0d\x05\xa8\x94\xf7\x7e\xa1\x52\x7e\xa6\x52\x7e\x2e\x81\x77\x7f\x20\x81\x8f\xde\x50\xb9\x3f\xfa\xc9\x7f\xd7\xd0\x1f\x25\xf4\xe1\xeb\x2c\xed\x25\x8e\xc3\x2f\x25\xf4\xce\xcf\x25\xf0\xc1\x9b\x3f\xd3\xd0\x2f\x24\xf4\xfe\x1b\x3a\xc9\x64\xfb\xa5\x86\x7e\xa5\xea\x50\xf9\x3f\xfc\xdd\x7f\xd6\xd0\x7f\x93\xd0\x47\x6f\xfc\x07\x95\xf6\x3a\x43\xe4\x26\x6f\xfe\xbf\x48\xe8\xed\xef\x29\xe0\x3f\x28\xe0\x6f\x24\xf0\xce\x2f\x15\xf0\x2b\x05\xfc\x5a\x01\xbf\x55\x99\xff\x67\x09\x7c\xf0\xe6\x6f\x14\xf4\x87\xef\x48\xe8\x3d\xf5\xf1\x7d\x95\xf2\xfe\x77\x75\x26\x05\xbd\xa3\xcb\xbd\xa9\x6a\x7f\xf7\xef\x25\xf0\xe1\xeb\xff\xc3\x6b\x7a\x9f\xe7\x08\xff\x4a\x42\xef\xfc\xa3\x04\xfe\xe5\x3b\x12\xf8\xf0\x07\x6c\xbd\x7f\x81\xe7\xfa\xbf\x24\xf4\xc1\x9b\xbf\x95\xd0\x7b\xbf\xd4\x49\xff\x20\xa1\x77\xfe\x49\x27\xfd\xa3\x84\xde\xfd\xa1\x04\x3e\xfc\xdd\x7f\x91\xd0\x47\x3f\xf9\x2b\x0d\xfd\xb5\x86\xbe\xa5\xa0\x37\x7e\xa6\x4a\xfc\x80\xd1\xac\x97\x79\xf3\xbf\x96\xd0\x3b\xff\x43\x01\x6f\x29\xe0\xbf\x4b\xe0\x83\x37\xff\x49\x43\x6f\xaa\x8f\x7f\xd0\x49\xff\xac\xa1\xdf\x4b\xe8\x4f\xaa\xfa\xf7\x55\x15\x1f\xfe\xee\x67\x1a\xfa\xa9\x84\x3e\xfa\xc9\x77\x34\xf4\x6d\x05\xbd\xf1\x57\x12\x7a\x8f\x91\xc0\x97\xd9\x60\xbd\xc7\xb3\x7d\x93\xe3\xcd\x7a\x75\x8b\xe3\xfd\x7f\x4b\xe8\x83\x37\xff\xa8\xa0\xb7\xfe\x4a\x43\x2a\xdf\x87\xbf\xfb\x8d\x84\xde\xfd\xb1\x4a\xfa\x01\x23\xe1\xb7\x79\x25\xbf\x91\xd0\x7b\x6f\x4a\xe0\x4f\xea\xdb\xdb\xff\x51\x02\x1f\xbc\xf5\x2d\xf5\xed\xdf\xea\xa4\x6f\xab\xa4\x7f\xa3\x93\xbe\xab\xa1\xef\x48\xe8\xfd\x9f\x4a\xe0\xdd\x9f\x48\xe0\xa3\x37\xbe\xaf\xa1\x9f\xab\xa6\x79\x41\xde\x4f\x46\xa3\x6e\x8b\x7e\xb2\x36\xef\x70\x14\xff\xab\x84\xde\x7e\x5d\x01\x3f\x50\xc0\xdf\x4a\xe0\x83\x3f\xbc\xae\xa1\xef\x6b\xe8\xef\x34\xa4\xf2\xbd\xfd\xbf\xa8\xa4\xb7\xbe\x27\xa1\xf7\x7f\xad\x93\xfe\x46\x42\x7f\xfa\x9e\x4e\xd2\x95\xbd\xa5\x1a\xf8\x93\xca\xf5\xfe\x6f\x14\xf0\x5b\x55\xbb\x6a\xf0\xfd\x5f\xe9\x96\x75\x9d\xaa\xa6\xf7\xfe\xa3\xca\xa4\x31\x50\x79\xde\xfd\xa9\x2e\xf6\x63\x0d\xfd\x48\x43\xe6\xeb\x1b\x1a\xfa\x99\x86\x34\xce\x7f\xf8\xa1\x6a\x49\x61\xf1\x9e\xea\xe2\xdb\xfa\xd3\x1f\x55\x93\xdf\x56\xc0\xff\x2e\x81\x8f\x7e\xf2\x5d\x0d\xa9\x3a\xdf\xe5\xcd\xdc\xe4\x69\x1c\x59\x8e\x36\x4f\x7c\x85\x4f\x16\x5b\x04\x77\xf9\x64\xfd\x56\x42\x1f\xbc\xf5\xb7\x1a\xfa\x3b\x09\xbd\xfb\x73\x09\x7c\xf8\xbb\xff\x24\xa1\x8f\x7e\xf2\x7d\x0d\xbd\xae\x21\x55\xf4\xc3\x1f\x30\xf4\xfe\x92\x57\xfc\x3b\x09\x7d\xf4\x93\xbf\xd3\xd0\x0f\x25\xf4\x2f\xdf\x95\xc0\x87\x3f\x60\x2b\xf4\x1e\x2f\xf0\x0f\x12\xfa\xd3\xdf\x4a\xe0\x83\xb7\x7e\xa8\x92\x14\xf0\xfe\xf7\x15\xf0\xba\xce\xf4\x23\x0d\xfd\x58\x65\xff\x3b\x9d\xf4\x86\x84\xfe\xe5\x7b\x12\xf8\xf0\x77\x3f\x97\xd0\x47\x3f\x51\x25\x3f\x7a\xe3\x17\x1a\xfa\x6b\x95\xef\x07\x6c\x53\xdc\xe7\x98\xfd\x3f\x12\xfa\xe0\xf7\x6f\x48\xe8\x4f\x3f\x52\x49\x6f\xfd\x5c\x25\xfd\x58\x27\xfd\x54\x25\xfd\x54\x27\xfd\x42\x43\x3f\xd3\xd0\x2f\x25\xf4\xfe\x0f\x55\x7e\x55\xfd\x87\xbf\xfb\xa3\x84\x3e\x7a\xe3\x97\x1a\xfa\x96\xfa\xfa\x03\xc6\x8d\xec\x71\xd4\xfe\x51\x42\x1f\xbc\xf5\x2b\x09\xfd\xe9\xe7\x3a\xe9\xd7\x12\x7a\xff\x47\xea\xdb\xcf\xf4\xb7\xdf\x6a\xe8\x37\xea\xe3\x2f\x24\xf0\xae\x2a\xf7\xae\xfa\xf4\xfe\x1f\x25\xf0\xd1\x1b\xdf\x56\xd0\x8f\x19\x62\x7b\x5f\xe5\xf8\xb0\xe9\x7c\x85\xe3\xf3\xdf\x24\xf4\xf6\xff\xaa\x80\x1f\x29\xe0\x7f\x93\xc0\x9f\x7e\x29\x81\x0f\xde\x7a\x53\x25\xfd\x4a\x27\xfd\x5e\x25\xfd\x5a\x95\xfb\xb1\x04\xde\x53\x15\xbc\xf7\xff\xb3\xf7\x6e\x7d\x8e\x1d\xd5\xa1\xf8\x7b\x7f\x0a\x69\x07\x34\xbb\xdc\x25\xb5\xda\x26\x24\x51\xcf\x9e\x66\x6c\x8f\x83\x4f\x3c\x1e\x9f\x99\xb1\x09\xd1\x88\x66\xb7\x76\x49\x2a\x66\xab\x4a\xd4\xae\xdd\x17\xb7\xf4\xff\x85\x43\x08\xe1\x10\x4e\x42\x26\x84\x43\x82\xe1\x70\x08\x87\x10\x42\x88\x21\x06\x5f\x20\x3c\xf8\x9e\x07\xe7\x33\xcc\x3c\xfa\x53\xfc\x7f\x75\xdd\xb5\x6f\x6a\xf5\xdc\x6c\xe3\x9e\x87\xe9\xa5\xda\x75\x59\x55\xb5\x6a\xd5\x5a\xab\x56\xad\xfa\xa6\x01\xbe\x61\x00\xd3\xda\xcd\x57\xfe\x9f\x29\xff\xaf\x06\xf8\x37\x93\xe9\x86\x06\xde\xfa\x5b\x03\xfc\x9d\x06\xde\xf8\xa9\x2d\x6f\x31\x79\xc5\xa2\xf9\xca\xbf\x5a\xe8\x5f\x2c\xf4\x6f\x16\xfa\x47\x8b\xfb\xcf\x4c\x93\x3f\xb3\x49\xbf\xb0\xd0\xbf\x6b\xe8\xed\x3f\xd3\xc0\xad\x1b\x82\x7b\x3e\x23\x87\xed\x17\x1a\xba\xf9\xd2\xaf\x2c\xf4\x1f\x1a\x7a\xe3\x67\x1a\x78\xf7\xb9\xef\x68\xe8\xed\x2f\xd9\x24\x41\x62\xcf\x48\xc5\xe0\x86\x20\xf1\x4f\xc9\xea\x7e\xa9\xa1\x9b\x2f\xff\xa9\x85\xfe\x87\x86\x5e\xff\x77\x9b\xf4\xe7\x16\xfa\x33\x0b\xfd\x85\x86\x6e\x3d\xff\x33\x03\xdd\x10\x42\xcb\x1f\xcb\x8a\x5f\xd4\xd0\xcd\x97\xff\xa7\x85\xfe\x52\x43\xb7\x6e\x08\x56\xf3\x69\x99\xef\x25\x0d\xdd\x7c\xe5\x67\x1a\x7a\xf5\x39\x0d\xbc\xfe\x0b\xfb\xed\x45\x0d\xbd\x65\x32\xdd\x7c\xd9\x54\xf1\xfa\x8b\x36\x57\x96\xff\xdf\x35\xf4\xc6\xcf\x35\xf0\xf6\xff\xb2\xdf\xfe\x43\x43\xb7\x6e\x08\x79\xe8\x4f\x24\x16\x2f\x6b\xe8\xf5\x97\x34\x70\xf3\xe5\xbf\x36\x49\xaf\x18\xe0\xd7\xf6\xdb\xdf\x58\xe8\x6f\x35\xf4\xc6\x0b\x1a\x78\xeb\x1f\x35\x70\xeb\xf9\xdf\x58\xe8\xc7\x1a\x7a\xf7\xb9\xff\x6b\xd2\x6e\x88\xfa\x43\xd1\xf8\xaf\xbf\xa0\xa1\x9b\x2f\xff\xbd\x86\x5e\xfd\x3f\x06\xf8\x9e\x01\xfe\xaf\xcd\xf4\x43\x0b\xfd\xc0\x42\x3f\xb6\xd0\x8f\x4c\x81\xef\x6b\xe0\x35\x53\xfd\x6b\x5f\xb4\x99\x9e\xb7\xd0\x4f\x2d\xf4\x82\x85\x7e\xae\xa1\xb7\x4c\x4b\x6f\x5a\x2c\xfe\xd1\xa4\x7c\xd7\xe6\x36\xed\xbc\x6a\xb0\x79\xf3\x15\x03\xfc\x2f\x53\x91\x41\xe1\xad\x0c\x85\xef\x59\xe8\x27\x16\xfa\xa5\x81\x5e\xb4\x38\x7f\x49\x03\xb7\x9e\x37\xd5\xbf\x6d\x06\xee\xdd\x6f\x4b\x44\x65\xdb\x62\x2d\x87\x48\xb4\xf9\x6b\x0b\x7d\xdf\x40\xef\x7e\x5b\xf6\x8d\x4a\x50\xb6\x91\x4a\x50\xcc\x75\xb8\x27\xc1\x57\x32\x50\x56\x70\x28\xa7\x48\xec\xe7\xbb\x72\x8a\xfe\x87\x86\x6e\xbe\xf8\x45\x0b\x7d\xc9\x42\x5f\xd6\xd0\x1b\x7f\x6a\x00\x93\xeb\xed\x1b\x1a\xb8\x75\x43\xd0\xcc\x50\x56\xf6\x45\x0d\xbd\xf6\x65\x03\x7c\xc5\x00\x5f\x35\xc0\xd7\x34\xf0\xea\x0f\x35\x70\xf3\x45\x93\xe9\x8d\xbf\xd0\xc0\x5b\xbf\xd2\xc0\xbb\xdf\xfe\x8d\x86\x6e\xfd\xf9\x9f\x19\xe8\x86\x68\x3a\x92\x0d\xfe\x99\x86\x6e\xbe\xf8\x55\x0d\xbd\xf6\x57\x36\xe9\x6b\x16\xfa\xba\x85\x6e\x58\xc8\xe4\x7b\xcd\x7c\x7c\xe3\x2f\x35\xf0\xf6\xdf\x19\xe0\x9b\x1a\x78\xf7\xb9\x97\x35\xf4\xa6\x98\x99\x48\x6a\xcd\x7f\x6e\xa0\x5b\x37\xc4\x5a\x41\x12\xa1\x2f\x69\xe8\xd5\x7f\x32\xc0\x8f\x0c\xf0\xcf\x1a\xb8\xf9\xca\x17\x0c\xf4\xf2\x6f\x6c\xda\x97\x2c\xf4\x45\xfb\xf5\xd7\x1a\x7a\xed\x86\x49\x7a\xf1\x1b\x16\xfa\xa6\xf9\x68\x92\x5e\x33\x29\xaf\xfe\xd8\xd6\xf0\x8a\xf9\xf6\x0f\x1a\x78\xcb\xb4\xf3\xd6\x97\x6d\xa6\x97\x6c\xd3\x26\xed\xad\x1f\xd9\x66\x9e\x33\x35\x7c\xcb\x26\x65\x90\xa9\xf5\x6d\x53\xf0\x6d\x93\xf2\xa6\x29\x77\xeb\x86\xc0\x6f\x24\x07\xe7\xcf\x35\x74\xf3\xc5\xef\x6a\xe8\x8d\xbf\xd1\xc0\xbb\xcf\xfd\x4a\x43\xb7\x6e\x88\xe1\x1f\xcb\x02\x5f\xd6\xd0\x9b\x2f\x68\xe0\xb5\xe7\x34\x70\xf3\xc5\xef\x99\xa4\xef\x1a\xc0\xa4\xbc\xf9\x43\x93\xf2\x7d\x93\xf2\x03\x0d\xbc\xfd\x7f\x34\xf0\xee\x77\x4c\xee\x9b\x2f\xbc\x64\xd2\x9e\xfb\x8d\x86\x6e\xdd\x10\x63\x39\x91\x38\xfc\x85\x86\x5e\xfb\x81\x06\x6e\xbe\xf8\x7d\x0b\xfd\x50\x43\x6f\x7d\xd7\x26\x65\xd9\x7e\x64\xa1\x1f\x1b\xe8\xe5\xbf\x33\xb5\x99\x92\xb7\x9e\xff\x27\x0b\xfd\x42\x43\x6f\x9b\x3a\xde\x10\x63\x37\xd9\x93\x18\x09\x01\x09\x4b\x8c\xbe\xa2\xa1\x57\xff\xc5\x00\x3f\x31\xc0\xbf\x6a\xe0\xb5\x1f\x19\xe0\xc7\x06\xb0\x79\x7e\xaa\x81\x9b\x2f\x5a\xe8\x15\x53\xe5\x9b\x7f\xad\x81\xb7\x4c\xca\x5b\x5f\xb5\x99\x0c\xf4\x5a\x56\x83\xa9\xf4\xed\x7f\x32\xdf\x9e\xd7\xc0\xad\x1b\x82\x4c\x3e\x27\x11\xfe\x9f\x1a\x7a\xed\x05\x0d\xbc\xf9\x6f\x1a\x78\xfb\x2b\x1a\xb8\x75\x43\xec\x10\xd7\x65\xf6\xaf\x6a\xe8\xe6\x8b\xcf\x6b\xe8\xcd\x1f\xd9\xa4\x9f\x6b\xe8\xb5\x5f\xda\xa4\x17\x34\xf4\xc6\xb7\x34\x70\xeb\xf9\x7f\xd6\xd0\xbb\xcf\x7d\xc1\x42\x5f\xb4\xd0\x97\x0c\xf4\x9d\xef\x9b\x12\x37\x04\xe1\xc6\xb2\xf9\xbf\xd4\xd0\xeb\x7f\xaa\x81\xd7\x5e\x36\xc0\x7f\x68\xe0\xe6\x8b\xbf\xb4\xd0\x4b\xe6\xe3\xaf\x6c\xd2\xaf\x2d\xf4\x8a\xa9\xeb\x37\x06\xf8\x1f\x1a\x78\xe3\xef\x35\xf0\xf6\x8f\x35\x70\xeb\xf9\xef\x69\xe8\xdd\xe7\xbe\x62\xa0\xef\x7c\xc1\xa6\x7d\x59\x43\x6f\xca\x8f\x6a\xd0\x84\x5c\x38\x95\x58\x7f\x4d\x43\x37\x5f\xfc\x8d\x81\x5e\xfa\x82\x85\xbe\xa8\xa1\xb7\x9f\x37\xc0\x4f\x35\x70\xeb\x86\x58\x52\x44\xd6\xf1\xbf\x34\xf4\xe6\x4b\x1a\x78\xfd\xcf\x34\xf0\xea\xf3\x1a\xb8\xf9\xd2\x97\xcc\xb7\xbf\xb0\x49\x5f\x36\x49\x7f\x6e\x93\xbe\x6a\xa1\xaf\x68\xe8\x8d\xef\x68\xe0\xed\x9f\x99\xec\xe6\xd3\xbb\xdf\xf9\xba\x85\x7e\x60\x70\x10\xd3\x40\x54\x2f\x45\x49\x2a\x31\xfc\x2b\x0d\xbd\xfa\x33\x03\xfc\xdc\x00\xff\xae\x81\x9b\xaf\xdc\xb0\xd0\xd7\x2d\xf4\x4d\x0b\x7d\xc3\x14\x78\xc1\x24\xbd\xf4\x35\x0d\xbd\xf5\x13\x9b\x64\x1a\x7a\xfd\x6b\x36\xc9\x56\xf6\x92\x69\xe0\x75\x93\xeb\xad\x9f\x1a\xe0\x79\x53\xfb\x2f\x4c\xca\x8f\x6d\xcb\xb6\x4e\x53\xd3\x9b\x7f\x63\x32\x59\x0c\x4c\x9e\x37\xbe\x67\x8b\x3d\x67\xa1\x7f\xb0\x50\xf6\xf5\xbb\x16\xfa\xbe\x85\x2c\xce\xaf\x7c\xcb\xb4\x64\xb0\x78\xd3\x74\xf1\xd5\x17\x4d\xca\x6f\x34\xf0\xf6\xdf\x6a\xe0\xdd\xe7\xbe\x6a\x21\x53\xd5\xdb\x66\xb4\xde\x90\xcd\x48\xce\x20\x21\x29\x70\x3c\x27\xd1\xa6\x72\xb2\x04\x42\x33\x39\x59\x7f\xad\xa1\x9b\x2f\x7d\xc3\x42\xdf\xd4\xd0\x1b\x3f\x30\x49\x2f\xfc\x5a\x43\xef\x3e\xf7\x75\x0b\xdd\xb0\x90\x29\x7a\xeb\x86\x60\xdd\x9f\x97\x15\x7f\x5d\x43\x6f\x7f\x55\x03\xef\x3e\xf7\x4d\x0b\x7d\x4b\x43\xb7\x6e\x88\x41\x62\xb2\xc0\xdf\x68\xe8\xf5\x6f\x68\xe0\xe6\x4b\xdf\x32\x49\x06\x78\xeb\xeb\x06\xb8\x61\x33\xfd\x83\x85\x9e\x33\xd9\xbf\x69\x93\xbe\xab\xa1\xb7\xbf\x66\x80\x5f\x6b\xe0\xdd\xe7\x4c\xc1\x77\xbf\xf3\x43\x0b\x7d\x51\x43\xb7\x6e\x08\x89\x37\x91\x88\xdd\xd0\xd0\xab\xdf\xd5\xc0\xeb\xff\xa0\x81\x9b\x2f\xfd\xc0\x24\x3d\x67\x93\xbe\x67\x92\xbe\x67\x93\x7e\x68\xa1\xef\x5b\xe8\x47\x1a\x7a\xeb\x5b\x26\xbf\xa9\xfe\xad\xdf\x68\xe0\xdd\xef\xfc\xc8\x42\x5f\x32\x05\x5f\x36\x8d\xdf\xba\x21\x2a\xe3\x12\xc5\xbf\xd5\xd0\xcd\x97\x7e\x6c\xa0\x97\xbf\xa9\xa1\xd7\x7f\x60\x3f\xfe\x44\x43\x6f\xfd\x83\xf9\xf6\x7d\xfb\xed\x79\x0b\xfd\xd4\x7c\xfc\xa1\x06\xde\x30\xe5\xfe\xf3\x2f\x34\x70\xeb\xf9\xff\xa7\xa1\x77\xbf\xf3\x65\x03\x7d\x5b\x60\xcb\x95\xb0\x25\x24\xf5\x54\xa2\xf6\x0d\x0d\xbd\xfa\x92\x01\x5e\x36\xc0\x2b\x1a\x78\xfd\x47\x1a\xb8\xf9\x92\xc9\xf4\xfa\x8f\x6d\x92\xcd\xf5\x13\x53\xee\x57\x1a\x78\xf3\xdb\x06\xf8\xdf\x06\xf8\x3b\x03\xfc\xbd\x29\xff\xca\x0f\x4d\xf9\x9f\x1a\xe0\x79\x93\xe9\x6f\x35\xf0\x96\x41\xf2\xad\x6f\x6a\xe0\x8d\x7f\xb3\xe5\x2d\x26\xaf\x58\x34\x5f\xf9\xa9\x85\x7e\x62\xa1\xe7\x2d\xf4\x03\x8b\xfb\xcf\x4d\x93\x3f\xb7\x49\xbf\xb4\xd0\x0b\x1a\xfa\xcf\xaf\x68\xe0\xd6\x0d\x51\x72\x4f\x0e\xdb\xdf\x69\xe8\xe6\x4b\xbf\xb6\xd0\x6f\x34\xf4\x9f\x5f\xd5\xc0\xbb\xcf\x7d\xd7\x24\xfd\xa5\x4d\x12\x64\xb7\xa7\x34\x08\x31\x49\xfb\xb2\xba\x6f\x6a\xe8\xe6\xcb\x5f\xb0\xd0\x17\x35\xf4\xfa\x0b\x36\xe9\xcb\x16\xfa\x92\x85\xfe\xb7\x85\xbe\xa2\xa1\x5b\xcf\xff\xdc\x40\x37\xc4\xe8\x1e\xc8\x26\xfe\xb7\x86\x6e\xbe\xfc\x55\x0b\x7d\x4d\x43\xb7\x6e\x08\xd9\xe3\x50\xe6\xfb\x96\x86\x6e\xbe\xf2\x73\x0d\xbd\xfa\x6b\x0d\xbc\xfe\x4b\xfb\xed\x25\x0d\xbd\x65\x32\xdd\x7c\xf9\xaf\x4c\xf6\xdf\xd8\x5c\x36\xff\xcb\x59\xad\x2f\x68\xe8\x8d\x7f\xd7\xc0\xdb\x7f\x65\xbf\x99\x92\xb7\x6e\x88\xb9\x7c\x56\xe2\xf3\xf7\x1a\x7a\xfd\x65\x0d\xdc\x7c\xf9\xeb\x26\xe9\x57\x06\xf8\x0f\xfb\xed\x86\x85\xbe\xa1\xa1\x37\x7e\xa1\x81\xb7\x7e\xa0\x81\xb7\xff\x54\x03\xb7\x9e\xff\x17\x0d\xbd\xfb\xdc\xf7\x35\xf4\x8e\xd8\x80\xdf\xf9\xba\x80\xc4\x72\x7a\xe7\x1b\x02\x12\x43\xfb\xce\x37\x05\x24\xe4\xb0\x77\xbe\x25\xa0\x7f\xb6\x90\x98\xdc\x77\xbe\x2b\x20\xb1\xfb\xbf\xf3\x03\x01\xfd\xd8\x42\xa2\x7b\xef\xfc\x48\x40\xa2\xb1\x77\x9e\x17\x90\x20\xcb\x77\x5e\x10\x90\x90\x36\xdf\xf9\xa5\x80\x04\xd1\xbe\xf3\x92\x07\xbd\xff\xfa\x9f\x06\x7a\xe7\xaf\x6d\x9a\x6c\xe3\x37\x02\x12\x93\xf6\x5f\x5f\x12\xd0\x57\x0d\xf4\xce\xbf\xd9\x34\x81\xe9\x7f\x7d\x45\x40\x42\x4a\xfa\xaf\x2f\x7a\x8b\xcc\x97\x31\xcd\x7c\x19\x3d\xaf\xa3\x62\x0b\xfb\x08\x74\x18\x92\x8e\xb5\xfe\x46\xff\x33\xd7\xd2\x6e\xb7\xdb\x6d\x8b\x3f\xbf\x77\x61\xb0\x31\xce\xbb\x48\x1a\xb7\x8a\x3e\x1a\xcc\xe7\x68\x01\xaa\xfc\x2f\x19\x1a\xb5\xa7\x34\xc2\x23\x8c\xd8\x86\x01\x92\x0d\x86\x46\xa7\xaf\x91\x9f\xbe\x46\x7e\xfa\x1a\xf9\x87\xf4\x35\x72\x4d\x85\x24\xf0\x4c\x7a\x71\x19\xb6\x5a\xfa\xde\x4e\xf1\x83\xed\xcc\x76\x05\x2f\x32\x64\xb8\xe8\x55\x7c\x44\xad\xd6\x92\xe6\x72\x64\x15\x04\x81\x4d\x6f\x1a\x38\x23\xe0\x6d\x83\x5b\xcf\x36\x08\x8a\x6e\xc4\x96\xb7\xd2\x8c\x9c\x7d\xb1\xbc\xc5\x10\x37\x83\x00\xb5\x5a\xcd\x22\xd7\xca\x79\xc4\xda\x0a\x4a\x8b\x2c\xe7\xc1\xba\xf4\x69\x77\x5d\x43\xb9\xd7\x64\xfb\x68\xb8\xdb\x23\x8b\xde\x11\x0f\xd9\x18\xf1\x1e\x81\x33\x46\x95\xd7\x2d\x5e\xdc\x8e\x0f\x6a\xc5\x55\x2d\xe3\x5d\xb8\x93\x20\x7e\x51\xf3\xfe\x8b\x21\x09\xc7\x88\xf9\x7e\xc9\x01\xf4\x68\x87\xa5\xe4\x91\x70\x38\x41\x3d\x41\x54\x57\x10\x87\xc3\x70\x16\xee\xe2\x18\x73\x8c\x92\x9e\xae\x6b\x9a\xaf\xe8\x11\x27\xcb\xf6\xf1\x59\x7c\xef\xa1\xce\xe6\x43\x1e\xd0\x3e\xc8\x70\xc8\x50\xc8\x91\x41\xae\x7c\x01\xe1\x48\x3f\xe9\x66\xf2\xdb\x41\x32\xe5\x77\x0d\xa4\xc7\xd1\xf8\x36\x43\xb9\x7a\xe3\xb8\x5c\x35\x82\x3c\x73\x31\x0f\x05\xb3\xd7\xaf\x4f\x84\x31\x80\x49\x40\x3a\xa6\x0d\x98\x06\xa4\xa3\xaa\x85\x71\x40\x3a\xc3\xdd\x9c\xc7\x36\xea\x0c\x77\x83\x18\xca\x06\xf9\x04\x27\x1d\x31\x7e\x8f\x13\x19\x49\xf8\x80\xfb\xb1\xe0\xbf\xd4\x4f\x40\xab\x85\xfd\x54\x2e\x62\x99\x29\x41\x3c\xcb\x94\xc2\x04\x72\x31\x7b\xa6\xcd\x20\x81\x48\xb7\x19\xa4\xf2\x81\x7d\xd5\xff\x80\x2f\xa0\x0a\x80\x5e\xd9\x21\x43\x84\xa1\xcf\x73\xdd\x21\x01\xcb\xba\x93\x04\xcc\x74\x27\x0d\x98\xee\x4e\x9a\xeb\x4e\x5a\xdb\x9d\x34\xc3\x45\x74\x8b\xc8\x6e\x89\xce\xf9\xd4\xcf\xd0\x97\xa9\xa6\x03\xa0\xd5\xca\x7c\x47\x13\x48\x40\x33\x70\x5c\x5c\x4d\x2e\x98\x2b\x5d\x31\x46\x15\x19\xe5\x65\x26\x00\x2b\x32\x27\x90\x38\x88\xba\x03\x4b\xb2\x81\x4d\xc0\x02\xe6\x8a\xd5\x10\x87\x42\x96\xa5\x44\x49\x08\xa2\x39\xe8\x89\x82\xcf\x88\x85\x97\x78\x50\xe5\x5e\xb3\xc3\x25\x57\x4f\x27\x8c\x22\x9f\x88\x26\xdc\x01\xac\x9c\xae\xea\x06\x44\x45\xbb\xb2\xf2\xca\xaa\x99\xae\xfa\x91\xdd\x42\x9d\xc8\xe7\xba\x63\x0a\xbf\x52\xaf\x50\x07\x27\x8f\xaa\x50\x62\x28\x9a\xcf\x9d\x9f\x98\x8c\xe7\x73\x85\x4d\x22\xaf\xcb\x88\xfc\x0b\xa8\xe3\x8e\x55\x90\x5c\xe6\xa9\xab\x27\x87\x05\xee\xf4\x08\x21\x61\xb7\x88\xfc\x88\xb2\x0b\xe1\x70\xe2\x57\x09\xb1\xd9\x48\x0c\xc5\x96\x2b\x84\x12\x21\xcc\x92\xf9\x9c\xfa\x4c\x52\x15\xaf\xa6\x0e\x0e\x99\xa2\x86\xc5\x62\x01\x32\x31\xb6\x81\x7c\x70\xe4\x97\xa5\x27\x3f\xdb\xd6\xe9\xa8\xc1\x01\xa8\x94\x12\x1e\x09\x09\xa1\xbc\x21\xa4\xa3\x46\xd8\x90\x57\xd2\x1a\x61\xd2\x08\xad\xd4\xeb\x81\x05\x50\xd3\x25\xf1\x74\x2e\x84\x25\x55\x32\x38\x89\x10\x6b\x4f\x50\x3c\x13\xb2\xb7\xf9\x9b\x0b\x6d\x75\xdb\xd7\xa0\x7c\xfe\xdb\xba\x87\xb3\x7b\x31\x6b\xb9\x4b\x55\x3c\x73\xe1\x67\x41\x57\x48\x4f\x5a\xc8\x92\x42\x94\x66\x02\x5c\x88\x51\xa4\x83\x48\x3a\x55\x42\x5f\xe0\xfe\x98\xcf\x9b\x9b\x90\x88\x6e\x8f\xf0\x38\x55\xdf\x9b\x5d\x13\xd6\x10\x93\x06\x11\x32\x73\x67\x9f\x61\xae\xbf\x01\x58\xb7\xb9\x93\xce\x75\x74\x08\x09\x58\xe4\xaf\x43\x59\x9d\xcb\xc7\x46\x92\x4f\x10\x7f\xca\x8c\xe3\xa5\x51\x51\x4b\xb0\x0c\x7d\x67\x47\x8e\xf6\xce\x4e\xc0\xa1\x1c\x5d\x21\x28\xe7\x45\x1c\xb5\x8a\x9d\x6d\xb7\x46\x37\xbb\x8c\x46\x31\x1a\xf2\xf9\xbc\xa9\xa1\x6c\xa6\xf5\x06\xd2\xdc\x14\xdb\x49\xe9\x6b\x27\x99\x84\xd3\x5c\x96\x0a\xfa\x79\x8a\xd1\x83\x43\x93\x49\x69\x6f\xba\x13\x8f\x86\x1c\xd5\x2a\x2e\xa5\xc6\x7c\x91\x1d\xf6\xdd\x35\x04\x8e\x16\x00\x00\xd8\xec\x6a\x65\x2d\xbb\x3f\xb8\xb9\x58\xf8\xa0\x78\xe3\xc5\xd7\xac\x19\x92\x20\xd5\xba\x8a\xe6\xd6\x38\x48\xe5\x8a\x07\x2e\x8d\xaf\xb1\xa0\x8c\x04\x81\xf6\x8e\x07\xc4\xfa\x5e\x04\x0b\x48\x27\x9c\xcd\xe2\x43\xc5\x35\x6c\x06\x8b\x40\xa8\x3e\x30\x77\xf6\x43\x75\x19\x4e\xe3\xcb\xe6\x73\x23\xcb\x0a\x25\x54\xb2\xc5\x6c\x2c\x9b\x66\x2c\xd9\x76\xe2\x23\xd0\x73\xae\x59\x25\x5a\x47\xb7\x97\x24\x90\xb3\x7e\x2e\xa3\x11\x62\x88\x0c\xcd\x22\x12\x58\x34\x26\x61\x42\xce\xf0\xc6\x2e\x42\xa4\xa1\xdf\x08\xc3\x09\x8a\x1a\xed\x46\x92\xce\x10\xf3\x41\x2e\x87\x98\x0b\x79\x73\xc7\xea\xfc\x55\x36\x0e\x3f\xad\xa6\xde\x6d\x9d\x3a\xce\xa5\x56\xf2\x9e\x8c\xa0\xe7\xf3\xca\x52\x72\xd7\xc8\x31\x91\xd8\xec\x7d\x86\xb9\x35\x30\x69\xa0\xed\xba\x25\xc8\x8d\x50\xcd\x60\xb6\xc6\x7b\xcd\x2e\x74\x17\xb8\xf8\x6d\x16\xb4\x94\xbe\x7b\xa8\xcf\x07\x01\x83\xe8\x2e\xc9\xed\x43\x77\x41\x96\x37\xb1\x8a\x49\xe7\x56\xad\xe1\xd5\xbc\xf1\x8a\x98\xb7\x06\x3a\x98\x31\x94\x24\x62\x60\xa4\x9a\x8a\x30\x9f\x20\x26\x34\x5a\x51\xba\x41\x59\x8e\x59\xae\x39\x2b\xcf\xcc\x9d\x92\xd7\x7d\xde\x6a\x39\xf6\x04\x78\xe4\x2c\x89\x9e\xee\x1e\x72\xc7\xa8\x38\x7e\x62\xaf\xe6\x52\x56\x14\x2c\x09\xf8\x43\xa8\x83\x4a\xc8\xbd\x51\xd9\x2d\xc4\x6c\x84\x30\x0d\xa8\x3f\x04\xd9\xd6\x37\xd4\x2b\x14\xad\x31\xb5\x62\x86\x99\x46\xcc\x4b\xf7\xb0\x0a\x0a\x32\x54\x57\x78\xb9\xbc\xae\x4b\xfa\x78\xe0\xdc\xcd\xc2\x56\x59\x8e\xfd\xc4\x47\x41\x2a\x79\x8c\x5e\xb4\x29\xec\x8b\xc6\x06\xc6\x4c\x47\x04\x4f\xf1\x22\x1c\x5d\x4e\x89\x27\xef\x8c\x21\x63\xba\x41\xc1\x10\xfa\x3c\xe8\x1f\x5d\x47\x87\x3d\xf3\x9e\xbf\x07\xd5\xa0\x54\x09\x81\xa8\xdf\x1d\x28\x51\x49\xd5\x37\x9f\xfb\xce\x2f\xb1\x9b\x30\x1f\x69\x0b\xcd\x26\x80\x1c\x80\xc5\x62\x20\xf4\x58\xdf\x99\x1f\xa1\x45\x84\x32\x0d\x86\x00\x0e\x05\x67\xcb\x48\x6b\x78\x22\x99\xc4\xbe\xb3\x74\x2a\x93\x9c\xca\x24\xa7\x32\xc9\xa9\x4c\x72\x2a\x93\x9c\xca\x24\xa7\x32\xc9\x87\x5a\x26\xd9\x2e\x88\x20\xbd\xbc\x84\x72\xef\x04\x92\x42\xf8\xfb\x53\x91\xe4\x54\x24\xa9\x13\x49\x32\x8e\xea\xe3\xc0\x91\x17\x9a\x05\x79\xa1\xd5\x32\xdb\xe3\x18\xf1\x6d\x07\xae\xb1\x02\xe7\xd7\x87\x18\x89\xad\x66\xe9\x44\x35\x1f\x09\x45\x9f\xab\x42\x9e\x1d\x37\xf9\x28\x88\x7d\x04\xc0\x16\xd8\x72\x8e\xc6\x21\x97\xdb\x39\x31\xdb\x79\xb6\x83\x38\xb5\xa9\xa7\xd7\x67\x9c\x32\x9f\x88\x02\xba\x3c\x96\xf8\xcb\xff\x55\x7b\x0c\xf4\xb0\x3a\xb2\x5e\x28\xc1\x0a\xb2\xf9\xbc\x70\xa8\xe5\x48\x6e\xf4\xae\x4a\x6e\xe1\xa9\xe4\xb6\x54\x72\x8b\x8b\x92\x5b\x7c\x2f\x25\xb7\xa4\x42\x72\x4b\x6e\x4f\x72\x4b\x0b\x92\x5b\xfa\xde\x49\x6e\xb1\xc3\xcf\xe3\xf7\x42\x72\x1b\x7e\x10\x25\xb7\xd1\x87\x45\x72\xa3\x46\x72\x8b\x6a\x24\xb7\x04\x8e\x82\xd0\x8f\x1c\xc9\x2d\x2a\x4a\x6e\xd1\x5d\x97\xdc\x86\x7e\xea\xa3\x60\xe4\x4a\x6e\xa3\x4a\xc9\x6d\x44\x3c\x75\xfa\xda\x05\x50\x16\x02\xd0\xcb\xce\x72\xcb\xdf\x48\x38\x45\x51\x96\xec\x08\x7b\xd1\xed\x0a\x7b\x23\x12\x30\x75\xaa\x9a\x35\x1c\xb8\x82\x9f\xf8\x24\xdb\x0d\xf8\x62\x01\x55\x0b\x42\x44\x7b\xd4\x48\x68\x85\x56\xc0\x91\xae\x57\x9f\xdd\x65\xd5\xea\x04\x59\x59\xab\xe5\x77\xa1\xce\xa8\x8e\xd5\x9c\x8c\x4e\xa3\x00\x62\x3f\xf6\xa3\x8c\x54\x00\xcc\xb7\xae\x39\xaa\xe0\xe6\x12\xac\x91\x4b\x13\x25\x97\x26\x00\x46\x79\xb9\x74\x74\xac\x5c\x2a\xaa\x48\xbc\x8a\x4d\xa1\x54\x4c\x3e\x4f\xdf\x56\xa1\x27\x37\xcc\x93\x07\x56\x7e\x85\x9e\xce\x91\x97\x64\xc5\xa4\xdc\x8b\x98\x8f\xda\x3b\xa0\x18\xa5\x6a\xb3\x32\x4a\xd5\xe6\x60\xdb\xfd\xd1\xf3\x4c\x0c\x5e\xb9\x7f\x99\xfa\x85\xc8\x93\x39\xfa\x89\x09\x34\x5f\x04\xcf\xec\xb3\x41\xa5\x37\x62\x42\xe3\x3d\xc4\x36\x46\x28\xe4\x29\x5b\x71\x24\x75\x99\x8a\x31\x2c\xe4\x30\x40\xb2\x21\xa5\x5a\x3c\xbc\xdb\x83\x5b\x5b\xc0\x46\x29\x3e\xca\x33\xfa\xea\xa0\x9a\x76\xa4\x16\x0b\xb0\xa4\xc3\x06\xf8\x30\xf6\xd9\x76\x67\x63\x48\x09\x0f\x31\x41\xac\x1d\xa1\xdd\x74\xdc\x0e\xa3\x70\xc6\x4f\x3a\x28\x9a\x78\x96\x0f\x4d\x5e\xa5\xca\x14\x00\xde\x91\x0f\xce\xfa\x4a\xc0\x19\x5f\x38\x98\xf9\xde\x67\x36\xb6\xbd\x75\xb6\xee\x6d\xf8\x9d\x75\xb0\xe1\xad\xa3\x75\xef\x23\x3a\xa4\xa3\xde\x3a\xad\xf3\x23\xe9\x6f\x0e\xee\xd2\x56\x6e\x5c\x52\x1e\x31\x63\xf2\xa8\x18\x92\xf3\x6a\x44\x3a\xe8\x80\x23\x12\xf9\x47\x3b\x8a\xe9\x5c\x46\x63\x9c\x70\x76\xd8\x93\x31\x8d\x85\xe0\x55\xe2\xcb\x3b\x52\x00\xab\x16\x25\xb5\x77\x4d\xbe\x2e\x73\x36\x51\x48\x96\xdb\x22\xef\x5c\xcc\x25\x82\x05\x1c\x86\xe4\x91\x90\x87\x31\x1d\x5f\x20\x9c\x61\x94\x3c\x7c\x28\xa4\x88\x0a\x71\xcc\x9b\xd2\x08\x09\x05\x3c\x40\xf3\xf9\xb1\xb8\x89\x9a\x8f\xa9\x36\xdb\xc5\xab\x10\xee\x64\x21\x81\x13\x1f\x40\xe2\x84\xe1\xc3\x81\xdd\x70\x92\x59\x38\x44\x3a\xeb\x53\x0c\x8d\xf0\x01\xa4\x41\x17\x86\x81\x55\x80\xe9\xd9\x30\x8b\xa3\x9a\x04\x5c\x87\x4b\x6d\x6f\x36\x83\x20\xb1\xa1\xdf\x10\x30\x51\x45\x05\x65\x25\xb0\xd0\xc0\x8c\x46\x17\x9d\x36\xe6\x73\x0c\xd6\xd2\xf9\xdc\x4f\x83\xa4\x93\xcc\x62\xcc\x7d\xb4\xee\x25\x1b\x1e\xe8\xcc\xe8\xcc\x07\x00\x92\x4e\x18\x45\xda\x21\x3a\x05\xd6\x69\x98\xe4\x43\x13\x93\x13\x2d\xb3\xe3\xb9\xab\x0e\x65\x2c\xf2\xb7\x47\xa1\x10\xce\x0e\x4f\xb4\xa0\xde\xaf\x56\x84\x3b\x58\x9a\xa8\x40\xf2\x7a\xad\xc2\x2c\x32\xb2\xda\xe4\x3f\x97\x74\x90\xa2\xd4\x56\xcb\x2f\xa5\x39\xb9\x76\x50\x78\x7d\x27\x41\x88\x18\xd7\x6d\x67\xc5\x3a\xae\x4d\xfc\x7e\xf9\x36\x69\x26\x60\x10\xe5\xf3\x79\x09\xfb\x85\x5c\x65\x90\x40\x6c\x24\x5e\x1e\x20\xe8\x13\x23\x80\x3a\x2b\xad\x42\x3c\xd4\x45\xf4\x1c\x5c\x47\x87\x89\x9f\x6b\x12\x58\x31\x73\x12\x96\xcb\x3b\xda\x9c\xd0\xc4\x72\x25\x6d\xc1\x31\xe2\x4b\x0a\xea\xfe\x08\x35\x4f\x0a\x8b\xcc\x77\x55\x11\x02\x20\x96\x69\x10\x0b\x09\x5b\x0a\x8b\x85\x29\x57\x17\x11\xb0\xe6\x20\xba\x23\x86\x15\xeb\xc5\x73\x49\x28\x46\x25\xef\x39\xa6\x38\xcd\x08\x13\xbd\xfe\xc5\x20\x69\x33\x41\xb6\xf9\xa8\x3e\x1d\x70\x16\x0e\xf9\xa3\x8a\xee\x2e\xc8\x25\xea\x33\xa8\xf2\x5a\x6a\x23\xce\x8c\xeb\xd9\x6e\x5c\x38\x98\xc9\x60\x99\x0d\x4e\x1b\xa2\xa5\x5e\xe3\x4c\x76\xd9\xa4\x33\x4a\xe3\x58\x7a\xec\x79\x67\x1a\xfb\x98\x4f\x30\x69\x9c\xf1\x80\xf9\xce\x44\xf2\x6e\xca\x1b\x63\xca\x1b\x67\xac\x1d\xe7\x4c\xa7\xf1\x28\x8e\x1a\x87\x34\x6d\x8c\x28\x1b\x23\xe9\x45\x7f\x46\xf1\x8d\x86\x5e\x1a\x75\xd5\x6d\x8b\x4d\xd2\xd0\x89\xe8\x5a\x32\xa1\x69\x1c\x7d\x8a\x85\xb3\xc7\xc9\x23\x82\x18\x1f\x53\xac\xc5\x27\x50\xde\xc5\x20\x41\x5e\xb4\x24\x82\xff\x2d\x16\x70\x16\xb2\x44\x85\x74\x77\x87\x55\x2c\x03\x69\x93\xe8\xc8\xef\x91\xf4\x2a\x35\x24\xa2\x9e\xaf\x50\xb1\x74\x85\x56\x23\x59\xab\xf7\x09\x15\x72\xf6\xa1\x20\x08\xb0\xf1\xb1\x17\xf5\x88\x6a\x70\xbf\x3b\xb0\x69\x3c\xf0\x3e\x61\x87\x0e\xf7\x37\x07\x6a\x8d\xd2\x00\xf7\x1f\x1c\x98\xda\x7a\x1e\x58\x63\x01\xed\x77\x07\x90\x04\x54\xec\xfc\xd2\x60\x53\x2e\x0b\x99\xaa\x5d\xe9\x56\x5d\xd8\xde\x14\xdb\x90\xa8\x6a\xcd\x33\x01\xe9\x7b\x59\x3c\x7a\xb1\x33\xaa\xeb\x17\x9e\x13\xa4\xde\xcb\x34\x48\xc8\x02\x5b\xce\x33\xc1\x58\x47\xfe\x83\xb9\x6e\xe9\x68\xdf\xb2\xdd\x0c\x5f\x9d\x2d\x34\xd9\x44\xcf\xc3\xfe\xa6\xe9\xf9\xb6\xcf\x82\x50\x75\xa8\xd8\x09\xd0\xf3\xb9\xcc\x0a\x6d\x16\x35\x30\x32\x96\xb5\xda\x13\x45\x82\xdb\x1a\x97\xed\x43\x16\x24\xaa\x80\x50\x31\x16\x19\xea\xaa\x9f\x02\x05\xde\x89\xc3\x44\xc5\x48\xbe\x34\xf2\x73\xdd\x86\x5d\xb0\x74\x2c\x78\xc0\x8d\xd2\xba\x09\xac\xcd\xcc\x77\x66\xbd\xe7\x01\x90\x21\xbc\xa6\x76\x67\x02\x63\xc7\x41\x59\x79\xe3\xda\x6d\xda\x5a\xa4\x8e\x32\xd2\x12\xe2\xae\x59\x42\x3d\x04\x67\x72\xff\xee\x71\x2d\xc1\xa8\x9f\xfe\x91\xe0\x24\x3d\xb6\x00\x50\x01\xb6\xc4\xa7\x30\x9f\xd0\x54\x86\x7e\xed\xa5\x50\x34\xd4\x23\x90\x51\xca\x7b\x31\xd4\x8c\xe3\xa2\xbc\x2c\xa2\x5e\x2e\xd0\x49\xde\xba\x42\xd1\x98\x2e\xe5\xfe\x3d\x3a\xf4\x99\x60\x95\xb3\x38\x65\x61\x8c\x9f\x45\x91\xa8\x35\x51\xa2\x5f\x95\x38\x38\x0d\xaf\xa3\xab\xda\xfc\xd9\xab\x34\xf8\x2e\x91\x82\xd6\xbd\x4f\x78\xeb\x7c\xdd\xeb\x79\x0b\x58\xb7\x7e\xcb\x4c\xbe\xb9\xb9\x58\x26\x85\xfa\x7a\xb3\x51\x0d\x3d\x1c\x26\x28\xba\xac\x45\x0f\xb1\xc9\x9f\x54\x1a\x25\x66\xef\x22\x94\x4d\xe5\x90\x48\x27\xe4\x82\xe5\xc9\xf1\x23\x2f\x0c\x5d\x50\x95\x68\x0d\x85\xc7\x16\xd7\x42\x8a\xc1\xb0\xfa\xab\xa0\x5f\xf1\xd7\x33\xb8\x46\x68\xc6\xd0\x30\xe4\x28\x7a\x2a\x2f\x13\x06\x62\xf0\x6c\x4f\xaa\xf6\xb1\xaa\xce\xca\x8b\x81\x7e\xcd\x97\xa0\x90\x2e\xa4\xd4\x85\xa1\xbb\xb2\xa7\x37\xd4\xbb\x95\xe5\xbb\x3e\x52\xd7\x0b\x4a\x94\x5a\x7f\xe9\x45\x54\xd0\x27\x03\x79\x9f\x49\xc3\x3e\x13\xfc\x5c\x5d\x7a\xb2\xe9\x1d\x77\xdb\x94\x39\xf8\x02\xee\x54\x77\xdf\xb8\xa1\xe7\xf9\x19\xb7\x16\x0e\xbb\xd5\xf6\xbb\xf6\x3a\x4e\xf6\xa4\x89\xe0\x36\xf3\xb9\xa7\xac\x3b\xe6\x97\xb9\xbe\x62\x7e\x57\xf1\x26\xc1\xd4\x70\x15\x6b\x02\xdb\x4c\x2c\x8c\x75\x99\xc3\x5e\xe5\xdc\xd9\x18\x43\xaf\xed\x81\x9e\xfa\x98\x5b\xc1\x51\x98\x4c\x10\x13\x33\x90\x2f\x73\xad\x23\x0a\x6d\x78\xc0\x06\xd0\x46\xce\x02\xaf\xa5\x81\x02\xa9\x39\x34\x50\xfe\x12\x08\xc5\xc2\x03\x0b\x38\xa3\x91\x5c\x71\x4f\x50\x7a\x3d\x9d\x09\xc6\xa4\xe8\xae\xd2\x5e\xc8\x3b\x15\x1c\xcc\x8c\xad\x3b\x58\xbc\x23\x26\x5e\x88\xbc\x92\x4e\x74\xbf\x3e\x93\x0d\xd7\xb5\x8d\x0d\xe8\x79\x00\x40\xb4\xee\x6d\x28\x7d\xda\x5b\x57\xa5\x32\x9c\x32\xd9\xa8\x62\xe2\x8f\x53\xa5\x96\x70\xb1\x9c\x18\x52\x37\x00\x3e\x87\xc8\x19\x1f\xfb\xda\x54\xf2\x38\xb9\x92\xee\x46\xb8\xea\x4e\xc4\x9d\xe0\x24\x68\x77\x3d\xf0\x9c\x97\x68\x3c\x98\xa7\x57\x24\x87\x67\x3e\x77\xc7\x51\x5f\x8a\x44\x55\x13\x63\x2f\x4a\xae\xd2\x4f\xbd\xf0\x2e\x90\x31\x26\xd5\xeb\xac\xa2\x85\x75\x6f\x03\xc9\x02\xca\x40\x58\xa5\x6e\x4f\xc2\xc4\xe7\x79\x4c\xaa\x65\x5a\x9e\x21\x71\x99\xa6\x1c\x5d\x0c\x67\xab\xa2\x21\x38\xd4\xba\xb7\xc1\x44\xb1\x64\x39\x2a\x0c\xac\x22\x5e\x83\xec\xf6\xa4\x45\xea\xaa\x11\xcd\x6a\xa6\x3d\xc7\xb9\x50\x56\x83\xc3\xe1\xd4\xe2\xbf\x7a\xe1\xe2\x53\x4f\x9c\xbf\x7a\xe1\x4a\xbf\xb2\x33\x03\xc9\xf3\xa6\x21\x26\x35\xe4\x8f\x47\xbe\x27\x3e\x2b\x92\xa8\x9a\x77\x7b\xce\x35\xd3\x9b\xf6\x86\xb7\x8e\xf4\xda\x32\xb1\xec\xab\xeb\xae\x2a\x99\xe7\x20\xbe\xaa\x08\xe8\x4a\x2b\x9a\x5f\x40\x82\x12\x2e\x56\x4c\x4c\x87\xa1\xa8\xd9\xae\x9d\x25\x3d\xaa\xa0\xf4\xca\x7e\x9c\x14\x9b\x75\x4f\x1b\x38\x16\x46\x48\x3b\x76\xd9\xd6\xb2\x0a\x9b\xa5\xaf\x9a\x5d\xf7\x54\x26\x2f\xdb\xd8\x96\xe4\x51\xf3\x6a\x47\x40\xad\xc3\xa7\x42\xce\x11\x23\xe6\x8e\xa5\x7d\x94\xa9\x7c\x49\xb3\x9f\x5b\xc5\xd9\x48\xc2\x5c\x7a\x99\x4d\x69\xd9\x2a\x47\x4f\x2a\xad\x44\x0a\xda\x3c\x75\xfc\xec\x0d\x16\x00\x74\x18\x0a\xa3\x4b\x24\x3e\xf4\x01\xcc\x2b\xb2\xbd\xb2\xdf\x84\x39\x0b\x97\x0d\x08\x11\xdb\xab\x1b\x08\x4f\x1e\xae\x41\x1a\x10\x63\x24\xc2\x67\x69\xf6\xc8\x52\x18\x90\x3e\x1e\x64\x07\x3d\x5a\x11\x0e\x5b\x2d\x3f\x54\xb5\x0f\x27\x94\x26\xc8\x51\xab\x43\x88\x80\xf4\x48\xaa\x65\x0a\xa1\xbc\xfa\x1f\x84\x00\x1a\x01\x7e\x27\xa6\x63\x85\x97\xd0\xb5\x61\x08\xa0\x7d\xc4\x88\x2d\x16\xb0\xd8\x46\x05\x4d\xe5\x36\x7a\xa1\x40\xb3\x64\x48\x99\x51\xf2\x51\x53\xf2\x84\x5a\x8c\xb2\x0b\x91\xd5\xec\xb4\xd2\xbe\x73\x7e\xba\x8b\xc7\x29\x4d\x93\x86\x2a\xd4\x90\xb4\x98\x53\xfb\x85\x5a\x1f\x92\xc8\xd5\xcd\x39\xf4\xce\x68\xfb\xf5\x12\x74\x32\x55\x7a\x45\x46\xaf\x83\x34\x20\x47\xaa\xd9\x68\xfb\xfd\xcf\x6c\x0c\x1e\x00\x1f\xd9\x80\xde\xc6\xce\x47\x36\xbd\xbc\x41\xa0\x9a\x5f\x6f\x33\x73\xb3\x17\xc6\x72\x46\x8c\x53\x0c\xa6\xa4\x6e\x2d\xbb\xa2\x6a\xae\x89\x82\xc5\x85\xc3\x66\x17\x2c\x60\x36\xdb\x25\x47\x20\x3c\xd2\x6f\xa4\x5c\x78\xf2\x99\xce\x13\x97\xfe\x70\xe7\xe2\xa5\x47\x9f\x7e\xe2\xc2\xce\xe5\x0b\x57\x2e\x3d\xf1\xcc\x85\xcb\xf3\x39\xef\x08\xc5\x4d\x7e\x33\x89\x7a\x8b\x81\x38\x40\xdb\x5e\xff\xd6\xb7\x6f\x0c\xbc\x9e\xd7\x6f\x0c\xbc\x35\xe2\x88\x50\x46\x50\xfd\x78\x77\xdb\xeb\x78\xbd\xec\x7c\xf9\xe3\xdd\x76\x29\x17\xe8\x7c\x8e\x62\xe2\x7b\x1d\x0f\x40\x36\x9f\xfb\x5a\x26\x2f\x8d\x88\x98\x02\x38\xa4\x24\xa1\x31\x6a\xb5\x34\xd0\xc1\x64\x44\xf3\xbf\x7c\x0c\xb3\x36\x20\x91\xfe\x22\xf0\x3a\xa1\xfb\xe4\x31\xca\xee\xcc\xa4\xce\x2a\x35\x2d\x12\x74\x21\xce\xcc\xe7\xe4\x2c\xde\x22\xd9\xcb\x69\xbc\x4f\x06\x50\x2f\x60\xce\x42\x92\x88\x9d\xf6\x2a\xb5\xa7\x1d\x8f\xa5\x71\x4c\xe4\x7c\x42\x0a\xd6\xc4\x6a\x67\xfd\x70\x10\x88\xd9\xb3\xcb\x12\x2e\x2b\x58\x2d\xce\x96\x74\x75\xb4\x90\xaa\x8d\xd8\x4e\x20\x0e\xe4\xa6\x02\x69\xc0\xad\xc0\x4f\x80\x3c\x03\x30\x3f\xb1\x5c\x36\xf2\xf5\x99\x56\x2b\x54\x96\x0b\xd9\xbf\xb6\xb1\xbc\xb4\x5a\x56\x21\x31\x0c\x6d\xdd\x5a\x65\xcc\x9a\x52\x6a\x83\xb6\x5b\xd0\x75\x93\x11\x86\x40\x5f\xe6\x67\x95\x5b\x9f\xdc\xf5\x0c\x79\x2b\xbb\x89\x41\x2c\x01\x4e\xc3\xe6\xd0\x77\x3b\xdf\x90\x49\x06\x76\x7d\x55\x4a\x43\x15\x6b\xcc\x5a\x4e\xd5\xa3\x99\xf2\xbf\x66\x37\x5b\x69\xa2\x6d\xbd\xb9\xa8\x8d\xd1\x1a\xf1\x20\x5f\x2c\xc0\x1a\xee\x30\x44\x67\x48\x59\x0d\xfc\xa3\x0a\xbd\x5f\x9a\xdb\x8d\x91\xcd\x39\xd9\xa0\x4b\x4e\x36\xaa\x4e\x29\xde\x8b\xf7\x15\x8f\x14\xdd\x3b\x2f\x27\xda\xa3\xae\xb2\x62\x8c\xb4\xc1\x78\xdb\x00\x3e\x07\x3d\xb4\x58\x54\x1d\xa1\x0b\xf1\xb6\xec\x27\x8b\x93\x76\x38\xe4\x78\x0f\x55\x1e\xe1\xe4\xcb\xa8\x21\x9a\x84\x24\x8a\x51\xfb\xf3\x29\x62\x87\x6d\xf9\x36\xe7\x31\x05\x04\x51\x5c\xd7\xad\xa8\x1c\xc5\xe3\x1f\xc1\x2a\x73\x23\xaa\x19\x20\xa4\x6b\x79\x3f\x41\xed\x33\x10\xfe\xb6\xfa\xe4\x26\x4e\xb3\x05\x11\xb7\x2e\x50\x52\x2a\x2a\x28\xc4\x4a\x2a\xfa\x4f\x36\x8b\x48\x2f\x8d\x93\x54\x15\x7b\xa7\x26\x1a\xd3\x8a\x41\x85\xd2\x2c\xa8\x10\xbb\xfd\xa0\x42\xac\x1c\x54\x88\x1d\x17\x54\x88\x65\x41\x85\xd8\x8a\x41\x85\xd8\xc9\x83\x0a\x31\x90\xef\x69\x61\xb4\x56\x0f\x29\x94\xcc\x84\x58\xfc\xde\x45\x13\x4a\xef\x5b\x34\x21\x7d\x97\x05\x12\x70\xc4\x5a\xad\x25\x8e\x90\x8e\x8f\x08\x73\x8e\x74\xf3\xae\x7c\x2c\x77\xb6\x9b\xb9\xfc\x31\x7b\xa6\xab\x0f\xf2\x58\xc7\x38\x92\x3e\x8b\xd8\x76\xee\x97\x22\x3f\x62\xf7\xb3\xa2\xfb\xe6\x3d\x73\x95\x1f\xbd\x9f\x0f\xb9\x1d\x8f\x47\xd7\x07\x3c\xba\xab\x3e\xe0\x93\x53\x1f\xf0\xa5\x3e\xe0\x7b\x45\x1f\xf0\xbd\x7b\xe9\x03\x3e\xab\xf0\x01\x9f\xb9\xf3\xd9\xe4\x39\x1f\xf0\x50\x86\x58\xa9\x72\x07\xde\x16\x1c\xb6\xc7\xb3\x6a\xa6\xef\x9d\x0f\xf8\x9e\x23\x3f\xec\xdd\x47\x1f\xf0\xbb\xe3\xc0\x75\x08\xc7\x70\x17\xee\xc0\x7d\x78\x01\x5e\x0a\x7c\xe3\x77\x84\x89\xee\x06\xdb\xc3\x43\x04\x0f\x03\x1f\x7f\x58\x9c\xb6\x23\xe3\xb4\x9d\x56\x3a\x6d\xcb\x37\x48\x83\x89\x9f\x02\x37\x70\xa6\x71\xda\x1e\x2a\x12\x4f\x97\x3a\x6d\xb3\xbc\xd3\x36\x09\xba\x5b\xe4\x2c\x97\x7a\x27\xeb\x13\xd7\x69\x9b\x38\xd7\xed\xa6\x3e\x0a\x42\xd7\x69\x3b\x2c\x38\x6d\x33\xe9\xb4\xad\x24\x65\x0f\x52\x28\xd6\x44\xce\x0b\x3b\x75\x9c\x60\x6a\xbd\xb0\xf5\x9e\xb0\xe5\x77\x21\xcb\x9c\x1c\x94\x29\x59\x56\x0d\xb4\x7b\x49\xd1\xc1\x56\x63\xea\x6b\x6b\x9a\xce\x2c\x04\x4b\x29\xa0\x6b\xa4\x09\x4c\x7c\x6c\x02\x06\x8c\x72\x7e\xd0\xca\xb5\x45\x6c\x5a\x18\xc0\x74\xe1\x03\xe0\x7c\x1c\x07\xb6\x67\xbb\x81\xd0\xca\x77\x82\xa3\xe2\xa5\x85\xbc\xd7\xa7\x3b\xd3\xce\x6e\x2c\x4f\x9b\x17\xf0\x42\x70\xb4\x80\xae\x93\xcf\x0e\xa8\x0e\x07\x75\xa1\x8f\x06\xc1\x4e\x5f\xda\x16\xe1\x05\x77\x8f\x6c\x36\xdd\x9f\xf0\x42\x61\x87\x6c\xe6\x13\xa0\x9f\x6d\x98\x17\xe6\xf3\x0b\xae\x84\x20\x44\xa0\x0b\xf9\x0d\xf4\x42\xb0\xab\xc5\x55\xd0\x61\x68\x0f\xb1\x44\x41\x51\x3a\x44\xbe\x5f\x7d\x3e\xee\x8b\xc5\x2c\x04\x44\xb4\x00\xf0\x02\x80\xfb\x8e\x33\x75\xae\x3d\xd9\x9c\xc4\x26\x9f\xbe\x7d\xa1\x2c\xb7\xec\xdb\xc8\x78\xb9\x8f\x81\xf1\xf2\xb7\x1c\xb7\xd8\x42\x35\x7f\x12\x28\x5e\x10\xdd\x53\xe6\x17\x1a\x5c\x80\xd8\xf5\x11\xbc\xb4\xb2\x82\xc9\x28\xe5\xed\x94\xc5\xab\x2a\xd3\xd6\xd7\x66\xcd\xbd\xa5\xe7\xde\xd0\xfb\xed\x54\xfd\xe8\x07\x49\x20\x0e\xef\xa9\x40\x9c\x7c\x20\x04\xe2\x34\x27\x10\xd7\x04\x04\xb8\x4d\x81\x38\x3e\x15\x88\x97\x0a\xc4\x51\x51\x20\x8e\xee\xa5\x40\x3c\xac\x10\x88\x87\x4b\x04\x62\x5c\x2f\x10\x8f\x0a\x02\xf1\xe8\xbd\x13\x88\x23\x87\xab\xd6\xa8\x73\xef\x63\x81\x78\x02\x67\x70\x0a\xf7\xa0\x14\x8c\x03\x7b\x3a\x5e\x10\x88\x27\x81\xcf\x3e\x2c\x02\x71\x7a\x5c\xfc\x09\x06\x71\x10\xd7\xc4\x9f\x08\x57\x89\x3f\x51\x10\x88\x93\xa0\xbb\x95\x9c\xe5\x5b\x89\x14\x88\x13\x57\x20\x4e\xac\x40\x4c\xfd\x91\x8f\x02\xec\x0a\xc4\x78\xa9\x40\x4c\xe0\xa8\x28\x10\xaf\x12\x83\x22\xef\xcb\xa4\x2a\x93\x47\x6b\x4f\x5f\x7e\x42\x49\xb1\x49\xf1\x36\x1f\x93\x69\x90\xa9\x28\x13\xae\x14\x3b\xcb\xa4\xd8\x69\xd0\xe7\x03\xb8\x77\x67\x52\xec\xb8\x28\xc5\xee\xd5\x48\xb1\x63\x21\xc5\xee\x69\x29\x76\x9c\x97\x62\xdd\x9f\x70\x5c\x94\x62\xc7\xb5\x52\xec\x78\x3e\x1f\x17\xa5\xd8\x71\x7e\xd7\x1b\x07\xd3\x93\x4b\xb1\x62\x05\x1a\x29\x76\x0c\xe0\xa1\x23\xc5\x8e\x0b\x32\xe6\x58\x4b\xb1\xb9\xf4\xed\x71\x59\xd8\x38\xb4\x52\xec\x78\xb9\x14\x5b\x6c\xa1\x9a\xa9\x08\x14\xc7\xa2\x7b\xe6\x10\x71\x0c\x99\x2b\xc5\xee\x9e\x40\x8a\x4d\x39\xb2\xa7\x1d\x2b\x9e\x94\xe4\x0a\x2d\xbf\xf1\xa2\x37\x36\x88\xd7\x5c\x81\xd0\x09\xb9\xf0\x5b\x2a\xf5\x86\x1f\x24\xa9\x37\xb9\xa7\x52\x6f\xfa\x81\x90\x7a\xe3\x9c\xd4\x5b\x13\x4c\xe1\x36\xa5\xde\xe1\xa9\xd4\xbb\x54\xea\x9d\x14\xa5\xde\xc9\xbd\x94\x7a\x47\x15\x52\xef\x68\x89\xd4\x4b\xeb\xa5\xde\xa8\x20\xf5\x46\xef\x9d\xd4\xeb\x8c\xb7\x3f\x79\x7f\x4b\xbd\x09\xe2\xd2\x95\xf5\x29\xb9\x81\x48\x6f\x87\x9c\xbf\xc0\x2c\x40\x8b\x6a\xe1\x78\x96\xf9\x4c\xc8\xdf\x56\x50\x86\x3b\x70\x5f\x88\xc4\x95\xc2\xf2\x34\xf0\xc9\x87\x45\x58\x8e\x8d\xb0\x4c\x6b\x85\x65\x12\x0c\x7d\x0a\xdc\xfd\xd8\x08\xcb\x3a\x48\x0e\x3d\x89\xb0\x9c\x06\xdd\xad\xf4\x2c\xdf\x4a\xa5\xb0\x9c\xba\xc2\x72\x3a\xc8\xe2\x26\x46\xbe\xe0\xe6\x8e\xb0\x4c\x96\x0a\xcb\x18\x46\x45\x61\x99\xae\x12\xc3\xc3\x52\xb0\xc0\x71\xe6\x9a\x8d\xa1\xb9\xcf\x98\x56\x88\xcb\xa9\x12\x97\x69\x41\x5c\xde\xcb\xc4\xe5\xc3\xa0\xcf\x06\x42\xde\xbd\x13\x71\x79\xa7\x28\x2e\x8f\x6b\xc4\xe5\x1d\x21\x2e\x8f\xb5\xb8\xbc\x93\x17\x97\xdd\x9f\x70\xa7\x28\x2e\xef\xd4\x8a\xcb\x3b\xf3\xf9\x4e\x51\x5c\xde\xc9\x6f\x97\x3b\xc1\xe1\xc9\xc5\x65\xb1\x06\x8d\xb8\xbc\x03\xe0\xae\x23\x2e\xef\x14\x84\xd9\x1d\x2d\x2e\xe7\xd2\xb7\x77\xca\x52\xca\xae\x15\x97\x77\x96\x8b\xcb\xc5\x16\xaa\xb9\x91\x40\x71\x47\x74\x4f\x89\xcb\x38\xd8\x81\xc4\x15\x97\xf7\x57\x16\x97\xa5\x2f\x9d\x8c\xc3\xd2\xe6\xf4\x8e\x3c\x8b\x4e\xc5\xe6\x1a\xb1\xf9\xa4\x7e\x42\xc9\x07\xc0\x4f\x28\xf9\xd0\xf8\x09\x25\x1f\x6c\x3f\xa1\xe4\xbe\xf9\x09\xa5\x1f\x24\x05\x31\xbe\xa7\x0a\xe2\xf0\x03\xa1\x20\xe6\x54\x04\x7f\x74\x57\x15\xc4\xe8\x54\x41\x5c\xaa\x20\x4e\x8b\x0a\xe2\xf4\x5e\x2a\x88\x93\x0a\x05\x71\x72\x7b\x0a\xe2\xac\xa0\x20\xce\xde\x3b\x05\x71\xea\xc8\x0f\xd3\xf7\xb7\x82\x58\xa1\xf9\x39\x7a\x1e\xbc\x50\xab\xe9\xed\x7d\x88\x34\xbd\x91\xd1\xf4\x92\x4a\x4d\x4f\x48\x8f\x34\x88\xfc\xc4\xd1\xf4\x12\xab\xe9\xe9\x5b\x62\xc9\x5d\xf7\x13\x4a\xfd\x99\x8f\x02\xea\x6a\x7a\xf4\x18\x4d\x6f\x56\xd4\xf4\x12\xe8\xb3\x15\xfd\x84\xd4\x65\x95\x12\xe7\x30\xe1\x83\xd7\xac\x2a\x42\x2a\x65\x58\xd2\x99\x09\x3d\x87\x98\xab\x1d\xad\x56\x31\xc5\x37\xd7\x2d\xea\xdc\x8d\x70\xc0\xac\xaf\x51\xa6\x1d\x5c\xa5\xf6\x4c\x28\xf4\x29\x00\x0b\xa5\x7b\x0e\x73\xba\x27\x03\x90\xc8\x34\x48\x00\x4c\x0a\xba\xe7\x61\xa6\x7b\x8e\xa5\xee\xb9\x7b\x67\xba\xe7\x7e\x51\xf7\xdc\xad\xd1\x3d\xf7\x85\xee\xb9\xab\x75\xcf\xfd\xbc\xee\xe9\xfe\x84\xfb\x45\xdd\x73\xbf\x56\xf7\xdc\x9f\xcf\xf7\x8b\xba\xe7\x7e\x7e\x27\xde\x0f\xc6\x27\xd7\x3d\x05\x57\x30\xba\xe7\x3e\x80\x3b\x8e\xee\xb9\x5f\xd0\x0c\xf7\xb5\xee\x99\x4b\xdf\xde\x2f\x0b\x40\x3b\x56\xf7\xdc\x5f\xae\x7b\x16\x5b\xa8\x66\x74\x02\xc5\x7d\xd1\x3d\xa3\x7b\xee\xe7\x75\xcf\x0b\x2b\xeb\x9e\x29\x8b\xdb\x23\x5a\x1d\xe7\xef\x54\xeb\x3c\xd5\x3a\x4f\xb5\xce\x53\xad\xf3\x54\xeb\x3c\xd5\x3a\x4f\xb5\xce\x53\xad\xf3\x54\xeb\x3c\xd5\x3a\x4f\xb5\xce\x7b\xa6\x75\xc2\x62\x10\xce\x4c\x1f\x64\xf9\xeb\x27\x29\x8b\x1f\xa3\x26\x68\x33\x83\xa1\x4f\xcc\xe5\x93\x53\x5d\xf0\x54\x17\x3c\xb1\x2e\xb8\x24\x52\xc1\x7d\x0d\xe9\xa0\xa3\x8e\xf5\x8d\x60\xda\xde\x1c\xac\x49\x0e\x83\x93\xff\x2e\xb0\x52\xae\x1d\xad\x96\xef\x23\xfb\x5c\x06\x00\x6e\xf6\xe0\xe8\xf3\x59\xc6\x1e\x57\x33\x92\x2c\x9c\x3d\x64\xc5\xc1\xb8\x2d\x0f\xc6\xfb\x11\xeb\xc1\x32\x40\x72\x72\xf5\x12\x7f\x00\xd4\x4b\xfc\xa1\x51\x2f\xf1\x07\x5b\xbd\xc4\xf7\x4d\xbd\xa4\xef\x67\x9d\xea\xee\x88\x84\x61\x5d\x04\x7a\xb1\xfe\xef\x6b\x0c\x7a\xc5\xa7\x02\xae\x7f\x62\x32\x4b\xb9\x62\xa7\xe6\xcd\xa2\x1d\xd7\x20\x6d\x42\xf1\xeb\xc2\x2a\xfc\xd8\xa7\x30\x9f\xe4\x3f\xcc\x18\x1d\xa2\x24\x41\x91\xae\x4a\xab\xe5\x52\x01\x82\x21\xb4\xb6\x76\x1c\x20\xe8\x87\x46\x60\x32\xb7\x6c\xbd\xe2\x63\x27\xfa\x2d\x29\x25\x1b\x95\xaf\xf4\xea\x4e\x00\xe8\xa3\x20\x97\x50\xbc\xb7\x8b\x20\xd1\x25\x14\xb7\x06\x59\x1c\x7c\x79\x07\x73\x59\xb3\xc5\xaa\x73\x32\xd9\x92\x8a\xdd\xd1\xab\x6e\x21\x77\xfa\x60\x85\x81\xf2\xd8\x8b\x55\x56\x9e\x10\x5b\x9b\x89\xbc\x95\xaf\x49\xc5\xc2\xab\x8a\x1a\x5c\x3a\xb5\x28\xa6\xf8\x00\x4a\x2e\xba\xb3\xe4\x64\x82\x41\xe2\x23\xa7\xd7\xa0\x82\x66\xec\x50\x38\xe4\x72\xf2\x91\x70\x0a\xdb\x81\x70\xe9\xaf\x50\x17\x37\xf3\xc6\xdd\x1e\x38\x05\x8c\x1e\x5d\xd3\x01\x27\xa7\xc5\x7f\xc7\xec\xf1\x35\x6f\xf1\x54\x91\xbe\x8d\x14\x5d\x5c\x12\x79\xd1\xbf\xb4\xfa\x00\xa8\x5e\x4a\x4a\xec\xa7\x3e\x76\x24\xfb\x50\xbe\xbd\x45\x7d\x0c\x13\xfb\x9c\x82\x61\x3a\xe1\x8a\x02\x50\x85\x68\x72\x7f\x85\x41\xd4\x19\xa6\x8c\x21\xc2\x9f\xbe\xfc\x04\xb4\x3f\xa4\x8b\xef\x93\xe1\xb4\x4a\x90\x4b\x78\xc8\xc6\x21\x47\x4e\x54\xdf\x0d\x81\x6e\x18\xb7\xc5\x17\xc4\xf3\x82\xdc\x27\xc6\x31\x9e\x4e\x11\xcb\xb2\xaf\x7a\x90\x01\xa9\xe4\x59\xae\xfd\xd3\xb9\xd9\xfa\x5b\x7a\x9c\x71\x1a\x82\xa8\x68\x3e\x7d\x7f\x0a\x24\xae\x21\xf6\x34\x04\xd1\x69\x08\xa2\x0a\x23\x6f\x7a\x1a\x82\x68\x95\x67\x68\x0f\x0d\xc7\x83\xd8\x84\x4e\x3d\x5a\x18\x44\x5d\x43\x17\xa9\x31\x74\xd1\x3e\x1a\x04\x44\x1b\xba\x68\xde\xd0\xe5\xfe\x84\xb4\x68\xe8\xa2\xb5\x86\x2e\x3a\x9f\xd3\xa2\xa1\x8b\xe6\x79\x04\x0d\xd8\x2a\x86\x2e\xc5\xca\xb5\xb6\xa5\x6d\x0d\xf3\x39\x5b\x00\x48\x65\xcc\x1a\x2b\x2f\xd2\x82\x19\x8a\x6a\x43\x57\x2e\x7d\x9b\x96\x59\x33\xb6\x86\x2e\xba\xdc\xd0\x55\x6c\xa1\x7e\x77\xa1\xa2\x7b\x3a\xca\xca\x5d\xd2\xbd\xc6\xda\xfe\xfe\xc9\xab\x17\x9f\x78\x38\x64\x49\xc7\xbc\xad\xe0\x1f\xe1\xa8\xe7\x3d\x35\xfb\xf8\x33\x8f\x3e\xfb\xdf\x22\x0f\xee\xc6\x74\x78\xbd\x77\xe6\x48\xef\x94\x89\xd7\xeb\x7b\xad\x90\x73\x26\xa4\x89\x96\x79\xa7\x71\x00\xbd\x84\x87\x1c\x29\x23\x41\xaf\xdf\xff\x3d\xe8\x45\x78\xcf\x83\xa3\x30\x4e\xd0\x00\xf6\x37\x1f\x82\x9b\x03\xd8\x7f\x48\x24\x47\x6d\x4c\x12\xc4\x84\x64\xd2\x7f\xf0\x21\xd8\x85\x7d\x8f\xc9\x40\xbf\x88\x79\x83\xc1\x40\x65\x2b\x3c\xce\x6f\x32\xa6\xa4\x90\xf5\xf7\x07\xb0\xdf\x85\xde\xb5\x6b\xa4\xd1\xf0\x44\x43\x1f\x83\x0f\x66\xd9\x87\x34\x15\x12\x8e\xcc\xa9\x72\x89\x3c\x7f\x30\x18\x40\x6f\x12\x26\x17\xf6\xc2\xd8\xeb\x49\x14\x17\x67\xe0\x14\xf1\xb0\x77\x94\x45\x1a\xee\xad\x2a\x61\x75\x26\xbb\x89\xb7\x58\x00\xb8\x5b\x77\xae\xe1\x7b\x6d\x55\xc2\xcb\xde\x03\xdc\x09\x25\x45\x42\x5c\xf8\x9d\xbf\xc0\xf5\xdb\x7c\x00\x12\x65\x17\xac\x10\xc8\x3d\xa0\x35\xa9\xb9\x55\x35\xbc\x8d\x5b\x55\x27\x88\xc9\xb5\x42\x08\x02\x35\x8d\x57\xd4\xb4\x7a\x30\x2c\x86\xe6\xe2\x01\x75\x0e\x3f\x2c\xad\xd6\x9c\x7e\xf0\xe0\x68\x9a\xc6\x1c\xcf\x62\xd4\x93\x8a\x4e\xc8\xc6\x49\xc7\x24\x41\x4a\x1e\x99\x84\x64\xec\x7e\x33\x49\x8b\x35\x1d\x94\xdf\x41\xa7\x63\x9a\xbb\x2a\xc9\xd2\xcf\x4a\x91\x70\x8a\xa0\x1c\x6c\xab\xe9\x93\x5a\xdc\xf4\xcb\x49\xf9\xaa\xb3\xfc\x95\x95\x67\x15\xab\x15\xb7\x4c\x39\xcc\x57\x2c\xf6\x23\x99\xf0\x88\x28\x58\xae\x56\x05\x17\xe3\xa5\xf3\x9d\x91\x50\x5a\xe5\x3d\x33\x27\xf6\x73\x18\x1c\xfa\x3e\x0d\x12\xf7\xc4\xa7\x38\x65\x7d\x36\x80\x77\x72\xe4\x03\xe0\xa1\x4f\xdd\xfa\xb3\x81\xec\x93\x01\xcc\xb6\xd9\x4b\xfb\xc4\xb0\x67\x13\x3e\x9d\xb2\x9a\xa2\x62\xa7\x74\x5e\x9e\x2e\xb4\xe0\x4e\x56\x1f\x9f\xb0\x0d\xa7\x70\xa1\x15\x9a\x8b\x73\xa0\x0f\x21\x77\x12\xc4\xed\x7b\x0c\xe6\x45\x12\x7f\x0c\x77\x2b\x5e\xd6\xad\xe7\x8c\x77\x4f\xe9\xfc\xf0\x45\x77\xfe\xe0\x28\x9c\xe9\x3d\x55\x38\xe3\x0f\x84\xc2\x39\x34\x07\x56\x9a\x32\x87\x41\xd5\xb9\x92\xd6\x79\x5a\x2d\xa3\xfc\x8c\x11\xdf\x76\xe0\xd2\xab\x10\x85\x17\x5a\xed\x48\x6c\x35\x4b\xc7\x43\x93\x30\x71\xd8\x80\x3e\x24\x82\x42\xd9\xd1\x42\x81\x8f\xa4\xff\x0d\xd8\x02\x5b\x56\xe1\x50\x07\x4e\x78\x64\xfd\xbb\x83\xe3\x98\x0a\x11\x05\x8c\xc5\x5a\xe2\x2f\xff\x57\xed\x31\xd0\xc3\x4a\x40\x5e\x28\xb5\x19\xb2\xf9\x1c\x95\xad\x07\xa7\xce\x57\xa7\xce\x57\xab\x87\x06\x3e\x75\xbe\xba\x27\xce\x57\x4b\x35\xbf\xe4\x89\xe1\x64\xf7\xf0\xea\x66\x8d\xe6\x57\xab\xf0\x7d\x0c\x7a\x78\x94\xd3\xe8\x48\x84\xd8\xe3\xe4\xa9\x38\x1c\x22\xa1\x81\xa9\x47\x3c\x8e\x0a\xc5\xba\xd0\xb3\x7a\xdb\xa6\xa3\xa4\x0d\xa0\x27\xcf\x19\x10\x47\x4c\x64\x1c\x2c\x4a\x45\x8b\x2d\x6a\x73\x77\x6d\x53\x35\xf9\xa1\x67\xe4\xed\xe5\x45\x49\x1b\xc5\x32\xa5\xaa\x0a\xf3\x49\x2a\x9a\x7d\x6f\x9c\xe2\xc8\x83\xe6\x0f\x41\x07\xfc\x0a\xde\x8d\x31\x19\x8b\x9e\x7a\x1f\x1d\xa6\x2c\xa1\xac\xd7\xfd\xa8\x07\x73\x3f\x44\xdb\x83\x41\xf5\x18\x89\x7f\xab\x8d\x93\xae\x65\xa5\xf1\xcb\x77\xea\xf7\xa1\xd7\x1e\xc6\x28\x64\xab\x76\x55\x37\xb5\x72\x8f\x37\xef\x6b\x8f\x4f\x98\xf5\x2e\x18\x04\xac\x25\xe0\xd2\x2a\x96\x00\xfa\xa1\xd1\xf4\xad\xab\x63\x98\xd7\xf4\x69\x10\xf9\x21\x70\x45\xfc\xfc\x79\x73\x23\xd5\xbb\x0c\x80\x89\xf6\x4b\xac\xdc\x7b\xca\x8a\xb9\xf1\x4a\x54\x73\xc0\x52\xd2\x11\x34\x59\xf1\xe8\x5d\x03\xd5\x28\xd1\x4a\x2b\xf5\x91\xd2\x46\x15\xf9\x4b\x1d\xc8\xd1\xf5\x43\x47\xd7\xdf\xc7\x71\xfc\xa8\xb1\x57\x95\x54\x6a\xe7\x64\x77\xe8\x4f\xfd\xd0\xd5\xc3\xf2\x45\xf5\xd6\x6c\x9e\x9f\xbb\x9d\x2e\x64\x2a\x5f\x5d\x27\xb2\x83\x79\xbd\xac\x97\xe8\xeb\x4e\x51\xfd\x64\x5c\x49\x83\x2f\xd9\x04\x4c\x4b\xd9\xa1\xb7\xbb\x1b\x54\xb7\xd6\xb4\xc7\xdc\xb2\x8a\x5c\x91\xf9\xbc\xa9\x5e\xee\xd2\x68\x78\x98\xc8\x93\x69\x2f\x57\x64\x14\xc6\xf1\x6e\x38\xbc\xae\xac\x06\x71\x85\xd5\x20\x56\x56\x83\x30\x67\x35\x90\x4e\xc7\xb4\xe0\x25\x5a\xa0\xa7\x53\x67\xd1\xdf\x62\x67\xd1\x4b\x4b\x6d\x1f\x17\xe0\xa5\x65\xb6\x0f\xcd\xd8\x93\x8d\x76\x95\xe9\x43\x7a\x14\xa0\xa8\x3d\x0d\x67\x49\x3b\x24\x51\x3b\x41\x45\x4f\x82\x92\xf5\xc3\xb2\x43\xe6\x08\x9d\xec\xb7\xd5\xe2\x51\x7c\xc3\xf3\xfd\xa9\xe6\xe3\x9c\xfe\x8a\xef\xaa\xfe\x4a\x4f\xf5\xd7\xa5\xfa\x6b\x5a\xd4\x5f\xd3\x7b\xa9\xbf\x86\x15\xfa\x6b\xb8\x44\x7f\x65\xf5\xfa\x6b\x52\xd0\x5f\x93\xf7\x4e\x7f\xcd\x7b\xeb\xbc\x07\xe7\xca\x71\xfe\x95\x77\x21\x2e\xa8\x59\x6d\xb2\x6a\x49\x56\x7b\xfd\xa2\xa8\xc1\x69\x63\x8c\x78\x63\xc6\xf0\x5e\xc8\x51\x63\x84\x51\x1c\x35\x04\xe7\xa0\xa4\x6d\x8c\x8e\x59\xa7\x99\xb4\x4d\xb1\xcc\x36\x85\x40\x8f\x69\xdb\xd4\xfd\x74\x95\xc9\x6c\x82\x0d\xde\xc0\xa4\x81\xb6\x97\x58\x73\xb5\x15\xb6\x20\x4d\x14\x65\x0d\x47\xba\x58\x80\x1e\xea\xf3\x41\xc0\x20\xba\x4b\x36\x82\x28\xc8\xbb\xe0\x42\x1b\xf9\x61\x68\xbd\x65\x75\xbc\x4f\x8f\x84\x53\xe4\x41\xb3\x1b\x9b\x54\xab\x34\x16\x3f\x58\x05\xbb\xf4\xc5\x1c\x67\x65\x5f\xec\x13\xd7\xc6\x1b\x57\xd7\x6a\x1c\x71\x4d\x5d\x81\x31\x6e\xe2\x80\xd8\x44\xe0\x08\x1f\xb8\xd5\xc2\xaa\x88\x69\x24\x20\xd9\xf1\x19\x9c\xc8\x53\xc2\x4f\xa1\xf0\xfa\xc5\x70\x06\x67\xb9\x5f\xd3\x0f\xcb\x15\x34\x6c\xf4\xb2\x91\x96\x80\xb4\xbc\x9b\xdd\x41\x0b\x61\x1a\x50\x7f\xe4\xe8\x68\xa3\xe2\x69\xec\xc8\xf5\x75\x2f\x9d\xc6\xba\xae\xef\x4c\xbe\xbc\xbd\x85\xcf\x32\xf9\xdc\x36\xe9\x63\xf7\x34\x16\xdb\xd3\x58\x14\xa4\xee\x49\x6c\x5a\x38\x89\x25\x00\xc0\x89\x60\x5e\xbe\x60\xa8\xf0\xc8\xed\xa7\xea\xbb\x68\x92\x77\xae\x2a\xd9\xeb\x62\x38\x5b\x00\x38\x3b\x69\x01\xe7\x3e\xdb\xc8\x51\xf3\xac\xb6\xb3\x24\x62\xa6\xbe\x9c\x37\x01\x9a\xcd\x59\x35\x28\x7f\xd8\x59\x7b\x2a\xec\xbe\xec\x2f\x48\x9c\x07\xba\xc6\x99\xa9\xd1\x25\x74\xbe\xcd\x7b\x5d\x47\xd3\x72\x8f\x69\xcb\x4d\x28\xc6\x94\x61\x28\x46\x05\x41\xd1\xff\x48\x7f\xac\x3a\x24\xae\xef\x72\x56\x53\x84\x62\xc4\x91\xdb\xdd\xbc\x16\x5a\xdb\x5d\xc8\x02\xff\x04\x5d\x05\xeb\x9b\x6b\x59\x26\x85\xbf\xbe\x35\x99\x3d\xff\xae\x35\x52\x04\xd6\x48\xab\x95\xad\x7b\x17\xf6\x59\x55\x4f\x8f\xc7\xf5\x04\xa8\xae\xb1\x76\x1b\xde\x35\x5c\x85\x52\x4b\x8a\x57\x1d\x43\x99\x06\x43\x00\x47\x79\x9f\xe7\x69\x59\x67\xe1\x28\xe1\xed\xfd\x50\x68\x05\xc9\xc6\x6e\x8a\xe3\x48\xff\xaa\xba\xec\xe5\x66\xae\x4c\xdc\x20\x94\xce\xdc\x94\x63\xaf\x71\xdd\x25\x27\xe9\xae\x5d\x1f\x68\xbf\x61\xaf\x41\x48\xc2\x5b\xde\x65\xf9\x76\xf5\x71\x7d\xdd\x50\x7f\xdb\xd3\x90\x84\x63\x31\x34\x55\x79\xdc\x5e\x57\x66\xc8\x8f\x6e\x5d\x33\xed\x11\x65\xed\x19\xa3\x53\x9c\x54\x5c\x82\x53\x3e\x78\x77\x36\x82\xb5\x05\x32\x8f\x82\xa3\xbc\xd0\x51\x63\x09\xb2\x76\xb1\xc5\xb2\x5a\x5d\x4f\x85\x15\xeb\xcd\x8a\x2c\xad\x79\x8c\xf8\xa7\x0c\x31\xae\x58\x73\x56\x64\x69\xcd\x3b\x0c\x25\x82\xb7\xad\x58\xab\xca\x7e\x1c\xae\x4f\x21\x12\x61\x32\x56\xed\x5f\xe1\x21\x47\x27\x41\xbb\x5c\x7a\x69\x7b\x93\x30\xc9\x95\x58\x7d\x88\x4a\x25\x97\xb6\x73\x15\x25\x7a\x44\x57\x6c\xc0\x2e\xce\xa5\xd5\xca\xb5\x72\xa2\x7a\xc9\x4a\xf5\x8a\x15\xf6\x18\x65\x4f\xe9\xf5\xb5\x5a\xd5\xd8\xa9\xfa\x18\x76\x52\xe2\x7f\x2b\xde\x15\xb1\xa2\x14\x7f\x3f\x9b\x3e\xee\x8e\x56\xc1\xea\xee\xf8\xdd\xdf\x1b\x7e\x4a\xa1\x58\x64\x51\xb9\x0c\x81\x06\xc8\x79\x49\x73\x17\x8d\x31\x39\x9f\x1c\x92\xe1\xf2\xb7\x83\xac\xd8\x80\x48\x54\x97\xdd\xe6\x11\xb4\xf1\x34\xe1\xb8\x2c\x53\x64\x86\x6f\x9b\x39\x42\xbb\xe9\xf8\x71\x32\xa2\xb5\x99\xfb\x03\x47\xbc\x4a\x2a\x64\x32\xd1\xb4\x90\x14\xb8\xcf\x4a\x2f\x72\x72\x9f\x41\x5c\xba\x1d\xc5\x16\x00\xac\x2d\xa1\xf3\x1a\x12\x5f\x65\xf3\x3c\xb9\xa1\x73\xd5\x6b\xdd\xe4\x03\x70\xad\x9b\x7c\x68\xae\x75\x93\x0f\xf6\xb5\x6e\x72\xdf\xae\x75\xe3\xdf\x7e\x96\x4f\x83\x6e\xfe\x44\x57\x8f\x02\x5d\x5f\x97\x0c\x38\x79\xbf\x5c\xfb\xc6\xc9\x65\x2d\x79\xa2\x28\x68\x6e\xea\x44\x8e\xa6\x89\x9c\xd7\x8b\xe1\xac\x6c\x8d\x22\xe8\x80\x5f\xa5\xd7\x11\x11\xeb\x25\x94\xfd\x21\x90\x66\x77\xb9\x89\xd8\x50\xe8\xb1\xfe\xdf\xda\xc7\xda\xc5\x60\x3e\xf7\xe5\x6d\x58\x53\x06\xe8\xe3\xdf\x0a\x54\xbb\x99\xe2\xba\x74\xcb\x52\x87\xce\x45\x93\xcc\xb9\xae\xa3\xa6\x66\xe6\x97\xee\x60\xdb\xfd\xd1\xcb\x77\xd7\x07\xb0\xec\x6a\x7f\x6e\xd3\x29\xb2\x39\xd0\x67\x76\xd2\x54\x2f\x03\xf7\x68\x94\x7d\xe0\x0c\xad\x10\x39\x05\xb7\xcd\x26\x51\x4f\x60\xd6\x13\x6d\xc7\x6e\x8c\x28\x6b\x78\xc6\xe8\x83\xa0\xd7\xd8\x4d\x79\x03\xf3\x06\x4e\x1a\x61\x2c\x18\xc6\x61\x63\xa6\x84\xd7\x8e\x07\x0c\x9b\xb5\x35\xae\xb9\x67\xd8\xaa\x69\xa5\x7f\x1f\x8d\x11\x6f\x24\x3c\x1c\x5e\x77\x05\x55\x99\xb0\x80\x71\xb8\x8b\xe2\x1e\x97\xf6\x9f\x63\x77\x79\xb5\xe1\x34\x57\xe8\x9c\xa9\x62\x85\xae\x49\x2a\x56\xf7\x7e\xe3\x7c\x07\x9d\x76\xca\xb6\x96\xe3\xc5\x8c\xec\x1a\xb9\x1e\x0d\xfc\x2c\x3a\x81\xe0\xd1\x60\xbe\x53\x58\xc5\x98\xf1\x01\x38\x56\x1a\x71\x0a\x49\xdf\x22\x5f\x5b\x32\xb0\x4f\x1c\xf9\x84\xca\xdb\xdb\xd8\x27\x15\xb7\xb7\x93\x63\xe4\x70\x51\x41\xa6\xdc\x97\xce\x9c\x96\x15\x2d\x29\xe1\xc7\xc9\x37\x4b\xcc\x1d\xf7\x34\x3c\xd0\x9a\x35\x7a\xf0\xc5\x9a\xb2\x56\x1a\xbb\x87\xa7\x71\x37\x68\x1d\xa7\xb6\x14\xed\x1b\xb7\xa7\xb4\xdc\xbb\xbd\xf2\x36\x06\xce\x70\x9a\xdc\xc8\x31\xb5\xde\xf5\xe5\x17\xb0\x80\xae\x63\x4c\x21\xa7\x59\x4f\xfa\xd6\x09\x44\x8e\xf1\x20\xa8\x70\xb8\x09\x98\x5d\x01\x70\x45\x81\x95\xbf\x37\x02\x2b\x93\x6d\xe8\x96\x6a\x25\xd5\x9c\x5d\xf2\x64\x92\xaa\xaa\xc1\x91\x57\x49\x59\x5e\x25\x55\xf2\x2a\x34\xc2\x2a\xc9\x84\x55\xb2\x9d\xeb\x4d\x2f\x2f\xa2\x92\x93\x8b\xa8\x04\x6c\xab\xbe\x99\xeb\x0b\x1f\x30\x19\x55\x1d\xc4\x08\x82\x54\x76\xa7\x1c\x31\x5a\x86\xaa\xe8\xb5\x6c\x35\x0a\x08\x44\x65\x1b\x4f\x80\x9d\xbd\xf2\x62\x38\x73\xc3\x6b\x19\xa1\xe1\x48\x6f\x3c\xbd\x2e\xd4\x7c\xa3\x77\xb4\x58\x64\x67\xac\x65\xb7\x25\x2d\xad\xf1\x8e\xdd\x89\x7c\x00\x8e\x50\x47\x57\xb4\xbe\xbe\x66\xce\x7e\xed\x5e\x23\xb9\xbc\xae\xbe\xcf\x25\x55\x0c\x84\x5c\x25\xcf\xa7\xc4\x36\xe0\x88\xcd\xce\xad\x5d\x60\xea\x3c\xd7\x5d\xa8\x63\xab\xab\x28\xe1\xad\x56\x06\x5b\x86\xa0\x7a\x5c\xe1\x33\xd7\xc4\xbe\xf4\x83\xab\x60\x95\x07\xbc\x3d\x45\x61\x92\x32\xc4\x32\xe7\x9e\x5c\xf2\x7d\x08\x0a\xe2\xc8\xd3\xe6\xdd\x6a\xe3\x6f\x87\x0e\x38\x22\x91\x7f\x84\x09\xe6\xa5\x8d\x76\x47\xfa\x05\x54\x7b\x38\x28\x29\x6c\x18\x92\xbd\x30\x09\x22\x3a\x94\xc9\xfa\x44\xf1\x82\x3a\x65\xf5\x3d\xf5\xd9\x33\x99\xf9\x41\xe0\x94\x12\x54\xf6\x08\x25\x62\x30\x7c\xef\xc1\xc8\x03\x0b\xb8\x8f\x23\x3e\xa9\xb8\xd8\x58\x96\x15\x2b\xa5\xce\xcd\x41\x5e\x84\x14\xbb\x8a\xdd\xe9\x4c\x88\x9b\x21\x3f\xe8\x8c\x28\xe1\x01\xcf\xd0\xea\xe8\xc9\xb8\x2a\x70\x41\xa0\x23\xf1\x58\xc0\x18\x13\x94\xf4\xf2\xdb\x72\xf5\xc9\xe4\xb9\x07\x2b\x11\x7a\xd0\x45\xe8\x41\x83\x50\x09\x13\x96\xed\x6e\x82\xb9\x25\xb3\x18\x73\x7f\xe3\x1a\xd9\x00\x10\x07\xc4\x1c\x7e\xd2\xa0\xbb\x45\xcf\x9a\x9f\x5b\xd4\xa8\x77\x61\x40\xfa\x74\x20\x75\x70\x79\x05\x22\x53\x08\x93\x20\xd4\x95\x79\x0d\x4f\x3e\x09\x08\xe3\xa0\xbb\x15\x9f\x4d\x6c\xbc\xbf\xad\xd8\x54\x33\x0c\x2a\x47\x23\xe9\xc7\x83\x75\x51\x5c\x0d\xca\x96\x9f\xae\x07\x43\x70\x4e\x0c\x27\x5e\x5f\x87\x69\x30\x04\x52\x71\x19\xd5\x17\x77\x8b\x8e\xdc\xa2\x23\xb0\x30\xe7\xa2\x78\x01\x47\x98\x5f\x95\xae\xde\xcf\xa2\xbb\x3d\xe6\x50\x9f\x8f\x49\x3c\xd4\x9b\x82\x38\xc8\xcd\x41\x67\x2a\xfd\x88\x36\xae\x45\xeb\x1b\xa0\xdf\xb5\x12\xc4\xc5\x90\x4f\x3a\xa3\x98\x52\xe6\xcf\x42\x96\xa0\xc7\x62\x1a\x72\x1f\x83\x07\xf8\x86\x50\x72\x5d\xc9\x92\x57\xac\x7f\x4a\x63\x8e\x67\x89\xeb\xdc\xad\xbe\xcc\xe8\x8c\xee\xd5\x98\xc0\x6a\x0b\xe9\x2f\xed\xdd\xb0\x7c\xc2\x73\x4f\xb8\x05\xcb\xde\xf5\xb4\x9c\x42\x63\xfe\x49\x1c\xa1\x47\x51\x1c\x1e\xf6\x1e\xfc\xdd\x2e\xdc\xd1\xa8\x3d\x13\x32\x1c\x12\x2e\xdf\x0e\x35\x1e\xee\xb6\xab\x3b\x38\xb9\x48\xd3\x04\x3d\x4e\x12\x1c\xa1\x5e\x73\x13\xaa\x5b\xea\x49\xef\x68\x22\x12\x8a\xec\x47\x48\x5c\x5e\xbe\x90\x07\x9b\x9b\x7a\xd9\x8a\x22\x42\xfc\x87\x61\x14\xa9\x43\xcf\x0b\x7b\x88\xf0\x27\x04\xab\x26\x62\x8b\x29\x56\x27\xf2\x29\x2c\xab\xb2\x1b\xbd\x32\x8c\xa2\xa7\x14\xc2\xd5\xb9\x54\x7b\xaa\x9e\x87\xc3\x04\xd5\x37\x9a\x79\x69\x43\x6e\x8f\x67\xf5\x54\x60\x94\xf8\xd9\x2d\x08\x33\x7a\x1e\x80\x62\xc4\x55\xba\xa0\xd9\x8e\xf9\xb2\x56\xc0\xad\x1a\xf7\x9d\x30\x8a\x72\x5f\x7c\x6f\x18\xe3\xe1\x75\x0f\xe6\x76\x56\xe5\xf7\x66\xdb\xa1\x01\x0e\x02\xd2\x99\xd1\xd9\x0c\xb1\xc7\x8d\x10\xa2\x7e\xc2\x50\x7c\x64\x6b\x52\x24\xf0\x3d\x31\xe6\x97\x88\x07\x5a\x2d\x8f\x50\x82\x04\xbb\x29\x7d\x69\xea\x94\xc2\xc4\x89\x2f\xb4\xd5\x6a\x86\x42\xa0\x93\x19\x70\x72\x65\x42\xf7\x65\x19\x64\x66\x13\x40\xb3\x95\xa8\x81\x5e\x32\x15\x35\x0e\xf1\x75\x03\x31\x15\xb8\x20\x22\xed\x27\xee\x0e\x8e\x6a\xc8\xac\x2b\xb7\xf3\xa5\xb5\xc5\x28\xdc\x43\xab\xd5\xb6\xb9\xb4\xb6\x11\x1d\xa6\x09\x4d\x79\xb1\xae\xca\x71\x9c\xcf\xd5\xd8\x07\xa5\xb1\x9f\xcf\xb3\x71\xcc\x0d\xdf\x09\x69\xd4\x77\x08\xb2\x9a\x2c\xee\xe2\x28\x43\xb7\x4c\x46\x4f\xc9\x84\xee\x9b\x3e\xe5\xa9\x45\xa4\x88\xaf\x92\x5a\xf8\xdd\x9c\x22\xe8\x96\x29\x0f\xef\x31\x84\xbb\x04\x95\xea\xf9\xad\x5f\x28\xe5\x76\xea\x97\x5b\x0e\x83\x05\x2c\x32\xd2\xe2\xca\xd0\x15\xeb\x0b\x22\x42\x7f\x03\xf3\xb9\x9f\xdd\x0a\x19\x8a\x59\x56\x4e\x26\x1a\x3b\x31\xd6\x57\xf1\x14\x31\x2f\x77\x03\x26\x0e\x8b\xb2\xf0\xca\xdd\x11\x33\xb8\x23\x10\xd5\x6c\x54\x22\xbf\x9e\x35\x59\xdc\x61\x3c\x00\x0a\x5b\x2d\x3b\xc9\x56\x9b\xdb\x35\xf3\xfe\xf4\xea\x4b\xe7\x73\x15\x9b\xaf\xb9\xc8\x78\xc2\x6d\x78\x69\xb4\x61\xc7\x8d\x7b\x45\x3d\x1f\xd5\x9c\x19\x55\x39\x73\x2b\xe5\x6f\x3e\x6f\xfa\x4b\x15\x7d\x73\xd8\xa4\xf6\xf7\xfe\x00\x92\xa0\xd9\x85\x38\x68\x6e\x42\x13\x8b\x54\xba\x6a\x1b\x21\x32\x84\x49\x80\x2a\x34\xcb\xad\xa6\x4f\x02\x3f\x0c\x94\x5d\xd7\x07\xa0\x13\x51\x82\x40\xab\xe5\xb3\xce\x2c\x4d\x26\x7e\xa8\xac\x1a\x00\x36\xf9\x7c\xce\xb4\xd0\x26\x9d\x1a\xb7\x44\x93\x60\x4b\xfb\x6e\xa7\xe0\x08\x0b\x14\x68\x90\x2e\x46\x98\x84\x71\x7c\x78\x24\x10\x20\xf3\xb9\x32\x0b\x25\x1d\x85\xf2\x7c\x6e\x20\x1f\xd8\x9c\x78\xe4\x63\x6d\x22\xa5\x56\x9a\x64\xea\x4a\xfa\x69\x0c\xe5\x13\xc4\x50\xce\x8f\xd7\xea\xa6\x0c\x19\x56\x29\x1d\xf2\x94\xa1\xdf\xe2\x50\xca\x77\xeb\x34\xeb\x68\x14\xe3\x59\xef\x08\x11\xd1\xff\x48\x64\x85\x3a\x44\xec\xa5\x3d\xc4\x46\x31\xdd\xef\x1d\xa1\x64\x18\xce\x64\x9c\x54\xeb\xc6\x2f\xbd\x6c\x0b\xd1\x4b\x5c\x6a\x96\xde\x9d\x4a\xc1\x5f\x4b\xf6\xb1\x58\x56\xc4\x37\x9a\xa4\xd7\xf6\x00\xdc\x14\x5a\x0d\x38\x1a\x0a\x9e\xc5\xe9\xcc\xeb\xf1\xc0\xdb\xa5\x9c\xd3\xa9\xb7\xb6\xcb\x50\x78\x7d\x4d\x7e\x62\x78\x3c\xe1\xf2\x63\x8c\x46\x3c\xf7\x49\xe7\x16\xdf\x44\x05\xee\x27\x99\x57\x7c\x50\xc5\xed\x9d\xc6\xc2\x6d\x85\x9c\x3f\x2a\x6a\xb5\xca\xeb\x6f\xdb\xe7\x81\xd4\xb3\x1e\x27\xdc\x47\x70\xb3\x0b\x60\x13\x27\x4f\x86\x4f\xca\x7b\x11\x38\x79\x0c\x13\xcc\x91\x2f\x48\xd5\xe7\x41\x17\x80\x1e\x0f\x10\x54\xbe\x18\xa9\x36\x6d\xd8\x4b\x57\x56\x65\x91\x07\x78\x4f\x86\x53\x94\xf4\xfa\x5e\x25\x0f\x8f\xa4\x26\xd3\x55\x7f\x2f\x99\x48\x49\xcd\x2e\x8c\x52\x16\x8a\x0e\xf4\xba\x10\x8d\x46\x68\xc8\x7b\x5e\x12\x4b\x81\x41\x4e\x5a\xcf\x9b\x28\xdd\x46\xd7\xa7\x15\x1f\x23\x3e\xc1\x90\x31\xba\x9f\x4f\x6c\xcb\x34\x0f\x62\x42\x10\x2b\x7c\x92\x69\xf9\xca\xe4\x5d\x61\xd5\x31\xfd\xfa\x45\xd4\x89\xd0\x8c\xa1\x61\xc8\x31\x19\x9f\x8f\x71\x98\x64\x02\x9b\xab\x7f\x79\x50\xde\xc1\x97\x65\x1d\x85\xa5\x53\x9d\x37\x25\x1c\xc7\x3d\xef\x63\x9d\x6e\xa7\xeb\x2d\x00\xd4\xbb\xb5\xd0\xd2\x38\x3a\xe0\x4a\x8d\x96\x7a\x9b\x9c\x7d\x98\xcc\xc2\x21\x26\xe3\xde\x66\x17\x2a\x3d\xe2\xf1\x48\xe5\x89\xc3\x43\x9a\xf2\x9e\xf5\xd6\x82\xe9\x2c\x0a\x39\x7a\x8c\xaa\x8b\x8b\x50\x49\x90\x97\x66\x4a\xf3\x73\x92\x1e\xa1\x84\x87\x98\x20\x26\x35\x43\x82\xa7\x72\xe0\x1f\x35\x13\xf0\x60\xb7\x0b\x29\xd1\x82\x8b\x2a\x47\x89\x90\x11\x0c\x7c\x59\xde\xf1\x34\xbf\x04\xf6\x0a\xde\x51\xc2\x92\xfa\xa1\xe1\xfc\x80\xfa\x9e\x9c\x4c\x4f\x9e\xe6\xf5\xf2\xd7\xa6\x94\x4c\xa7\x8a\x81\x5c\x58\x62\x95\xa6\x9d\xdb\x5d\xe9\x59\x55\x06\xcc\x42\xe4\x7a\xd5\x29\x4a\xe9\xa1\xc0\x15\x33\xdd\x55\x24\xc5\x44\x99\x61\x37\x4e\x59\x7e\x59\xa2\x30\x3a\x14\x9f\xe4\x3a\x57\x1f\xf4\xf8\xf6\x50\xc0\xad\x77\xf9\x02\x26\x85\xf8\x2f\x85\x58\xca\x0a\xe9\x40\xfa\xba\xed\x28\x21\x5b\x4f\xad\x82\x4f\x3a\x30\xaa\x58\x7e\x60\x54\xda\x6d\x0f\x8c\x52\x05\xee\xa4\x93\x0a\x01\xd5\x49\x45\x9c\xa5\x7e\x19\x9a\xcd\x8b\xe4\x99\xb4\xac\x10\xb6\xb9\xb2\x5b\x50\xdb\xd6\xd6\x29\x34\x52\x65\xe8\x7c\xf8\xf0\xf1\x48\xde\xce\x72\xae\x98\x74\x66\x21\x43\x84\x3f\x49\x23\x24\x84\xd5\x1d\x75\x03\x59\x17\x78\x3c\x2a\x0f\xb4\xf9\xb2\x1c\xa3\x2c\x9b\x83\x92\xe7\x9e\xfe\xb6\x11\x37\xc1\x9a\x81\x0e\x32\x56\x6c\xbe\xd4\x78\x11\xbb\xe5\x38\x94\x72\xaf\x36\x3a\x16\x97\x51\x98\xf0\x5d\x4a\x4b\x68\x54\x5c\x46\x57\x39\x54\x18\x21\xc4\xf4\x4d\xbd\x98\xd2\xeb\xe9\xcc\xf7\xb4\x3d\xbd\x67\xea\x53\x87\x95\x62\xf6\xd3\x38\x52\xdc\x40\xda\x97\xab\x3a\x6c\xca\x74\x70\xf2\x58\x98\xf0\x87\x45\x71\xe8\xed\x84\xfb\x21\x16\x6c\x55\xf3\x4b\xdd\x03\x55\x17\x2a\x0c\x8b\x4b\x72\x6a\x5c\xaa\x2a\x05\xe6\xb6\xb9\xca\x72\x4c\x03\xaa\x07\xcb\x33\x89\x6d\xc9\xf0\x70\xa9\x68\x6a\x2e\x6a\xd2\xf4\x2f\xcd\xa0\x2f\xa3\xcf\xa7\x28\xb1\xdc\x79\xa7\xcc\x58\x8f\x9d\x05\x4f\x88\x8c\x42\xd0\xac\x9c\x0d\x86\x12\x1a\xef\x21\xe5\x52\xa2\xaa\xf4\x3d\xe5\x4b\xd4\x43\x64\x0f\x33\x4a\xe4\x45\x2e\xd0\x71\x7e\xcd\xe7\xaa\x2e\x51\x33\x26\xe3\xed\xae\x8e\x4a\x58\x44\x4e\x0c\xc7\x6d\x1e\x4d\x24\xae\x21\x43\x8d\x93\x07\xfb\x03\xb0\x80\x11\x8e\x1e\x97\x31\x43\xcd\x72\xb8\x8d\x73\x0f\x79\xce\x91\xe9\xaf\xa2\xce\xa7\xe5\x3e\x77\x9e\xf3\x0a\xdb\xe3\xf1\x35\xe6\x55\xe4\x6d\xc5\x5e\x95\x9d\x03\x9a\xdb\x60\x36\x9f\xdd\x52\x85\x7a\xbd\x82\xd9\x46\x67\xda\x51\xe5\x9e\x92\xdf\x7c\xa0\x19\x96\xb6\x1f\x40\x27\x70\xc4\xed\x0c\xcc\x5a\x89\x4d\xe4\xc7\x5e\xe8\xef\xe5\x83\xbe\x3b\xf4\x2b\x3a\x5a\x40\x21\xdb\x0f\x75\xac\x06\x28\xd4\x2b\x6b\x3e\x45\x1d\xb9\xe1\x08\x09\x6a\x8d\x75\x18\x9a\xd2\xbd\xbc\xb9\x56\x86\x21\xcb\x0c\x73\xc3\x18\x85\x24\x9d\x49\x63\x87\xb5\xa9\x16\x07\x36\xc2\xc9\x8c\x26\xc8\x9a\x5c\xc5\x6f\xa1\xc6\x9e\x57\xfd\xf1\xac\x88\xa2\x83\x6f\xdc\x3d\xfb\xf4\xea\x96\x67\x37\xe7\xea\xa6\xd3\xca\xad\x5a\x28\x9b\xc6\xf6\xc4\xdd\xb7\xbd\xf3\x76\x28\x48\x9c\x44\x63\xbb\x5b\x23\x42\x39\xdd\xae\xb1\x8a\x91\x82\x55\x8e\xd3\xf1\x38\x56\xb6\xcb\x5e\xd6\x26\x31\xa4\x7b\x6c\x79\x63\x13\x04\xd0\x16\x66\xb5\x85\x59\xa1\xb0\x35\x9b\x02\xa8\xc5\x30\xf5\xca\x87\x31\xa0\xab\x5f\x4b\xed\x7b\x98\x94\xec\x8c\x16\xa3\x93\x1a\x7e\x1d\x74\xea\x8a\x5e\x47\x87\x91\x60\x15\xb0\x78\x68\xfe\xe0\xef\x05\x41\xc0\x3b\xfb\x13\x3c\x9c\x94\x6d\x6f\xd6\xb0\xa4\xdb\x80\xbc\x93\x70\x3a\x7b\x7c\x3a\x45\x11\x16\xbc\x81\xd1\x59\x38\x56\x5c\x5c\x7c\x2c\xbd\x5f\xd2\xdc\xcc\x19\xe9\x17\x30\xc7\x0a\x6b\x28\x8b\x95\x64\xaa\x02\xc9\xb8\x1a\x8f\x67\x0f\xe7\xe4\xa7\x4c\x85\xf2\x00\x4c\x9c\x0f\x99\x02\x25\xcf\x36\xcb\xab\x35\xa7\xe0\x00\x38\x0c\x32\x39\x49\x1f\x82\x2b\x2b\xce\xbe\x9f\x82\xce\xe7\x28\x26\xbe\xa7\x94\xb3\x86\x07\xa0\x06\x3d\x00\x47\xab\x94\x93\xc8\xa8\x72\x4a\x89\x03\x30\x0a\x58\x87\x63\x1e\x67\xcc\x47\xec\x0d\x78\x37\xe5\xc8\xf7\xe4\x07\x4f\x31\x4d\x75\x7b\x38\xf3\xc1\x62\xf2\x0a\xae\xd6\x85\x72\x66\x51\x57\x4b\xf2\x00\x9c\xf0\x69\x2c\xa4\x01\x19\xbd\x46\x32\x6c\x67\x11\x4a\xe3\x2b\x94\xed\xf4\xbc\xb3\xc9\x2c\x24\xe7\xce\x6e\xc8\x3f\x1e\xe4\x0c\x8f\xc7\x88\xf5\xbc\x69\x48\xd2\x30\xd6\x7a\xea\x15\x14\x23\x79\xe9\xd7\xeb\xd4\x75\x78\x68\x3a\xdc\xf1\xe4\xce\x4c\x10\x5b\xa1\xd4\x28\x57\xca\x58\x56\x7b\x67\xce\x46\x78\xef\x1a\x69\x94\xff\x49\x85\x3d\xf0\xce\xd8\x4b\xba\x50\x9e\x40\xeb\x5f\x29\xf4\x1a\x79\x2d\x5e\xa9\xe6\xed\x2c\x8b\xc3\xc8\xe4\x27\x0f\xc0\x33\x5e\x65\x53\x8c\xc6\x28\xb0\x0a\x7b\x65\x96\x84\x1f\x8a\x3c\xd3\x90\x8d\x31\xe9\x75\xb7\x14\xd0\x3e\x63\x5b\x0b\xfd\xe2\xb8\x03\xe8\xf5\xaa\xb0\xd1\x42\x99\x40\x67\x76\xb0\x55\xd5\xdc\xb9\x4a\x14\xc4\x48\xd9\x51\xb1\xf5\xe2\xdc\xb0\x0c\xe1\x19\xef\xdc\xd9\x8d\x08\xef\x9d\xa4\x8e\x24\x57\xc7\x08\x9e\xf1\x1a\x38\x72\x33\x2c\x93\xfb\x97\xb6\xa8\x3e\x9c\x01\x05\x8d\xff\x68\x4a\x23\x3c\xc2\x62\x1b\x8a\x7d\x0a\x8b\xf4\xad\xb3\x75\x6c\x2e\x31\x98\x94\x3c\x22\xb9\x8c\xcb\x5e\xec\x51\x44\xe1\x10\xa2\x62\x47\x56\x92\xb3\x07\x11\x80\xe6\xf4\xe7\x38\x41\xbf\xb9\x29\xf2\x2e\xdb\x70\x7d\xf7\x34\x24\x19\x4e\x50\x94\xc6\xe8\x12\x19\x22\xdf\x0b\x47\x1c\x31\xdb\x28\x44\x79\xc1\x0b\x40\xe9\x4c\x58\x62\x06\x30\x52\xe7\x76\x94\x28\x49\xb2\x57\x3c\xb4\xba\xa2\x88\xc7\x07\x8b\xc5\x02\xac\xb1\x8e\x9c\x4b\x81\x8f\xc0\xb3\x70\x0e\x62\x55\x40\x7b\xaa\xbd\xec\xd0\x3b\x27\x2b\x7b\x70\x52\x29\x93\xea\xfd\x4f\xef\x6a\x30\xd7\xa7\x92\x30\x73\xcc\x31\xa2\x2a\x2b\xaa\xc9\xfa\xb5\xc2\xb1\x95\xc5\xa4\x59\x77\x98\x65\x1f\xb2\x2a\xaa\x3f\x01\x53\xd0\x79\xa3\x62\x3c\xc6\xc2\x29\xca\xd1\x0e\x1e\xf9\xa8\xa2\xa0\xd4\x9b\xca\x47\x72\x4d\x54\xd5\xbe\xf5\xb1\x5d\xed\x20\x15\xb2\x20\xf4\xa5\xb2\xec\x90\xc3\x41\xdb\x32\x74\x41\xfc\x24\x10\x7b\xf4\x61\x8c\xd6\x48\x47\xb1\x9e\xab\x74\x16\x74\xa1\xf9\x75\x19\x8f\x27\xdc\xf9\xfd\xb0\xb4\xd3\x3a\x09\x4f\xa0\x91\xf8\xae\x6b\xe9\x6b\x46\x56\xcd\xac\x87\xe1\x0c\xf3\x30\xc6\xcf\x22\x9f\x01\x30\x70\xb6\x3e\x54\xe4\x60\xde\xec\xc0\x93\xb7\xa4\x2b\x8e\x1d\xef\xc6\x59\x63\x66\xb0\xb2\x7a\x96\xa0\x97\x09\xdd\x2f\x58\xa2\x6a\x89\xa1\x6c\xba\x88\xd4\x79\x62\x4e\xd4\x35\x26\x5e\x0f\xac\xdd\xc6\x39\x68\x39\xa3\xd0\xa4\x63\xc4\xd1\x27\x05\xe6\xb6\x33\x66\xf5\x20\x6e\xd3\x7d\x0e\x20\xda\x36\xc9\x57\x4c\xfd\xd6\x92\xa4\x9a\xb4\x3a\xa6\x5c\x2b\xb6\x70\xf1\xe2\x00\x0a\x64\x38\x8a\x65\x88\x4d\x5c\x84\xac\x6f\x5d\xf1\x48\x57\xa9\x02\x46\x31\x84\x48\x5f\x15\x48\x0a\x55\xa8\xf8\xff\x2e\xde\x15\x7e\x7b\xa2\xe4\x96\x41\xad\x30\x0b\xc6\xca\xee\x01\x30\x9f\x5b\xb3\x91\x7c\xf9\xd5\x88\x14\xe7\xe3\xd8\x77\xa4\x8a\x02\x87\x13\xa3\xe3\x01\xa0\x15\xc6\x56\xcb\x47\x41\xd7\x1c\xd9\x55\x76\xca\x5d\xeb\xbc\x38\xba\xa0\xd0\xd3\x6c\xba\x21\x13\xdc\xce\xa1\xc3\x13\x39\x50\xc8\x0b\x2c\x4b\x18\x96\x40\xa5\xa4\xac\x57\x33\x0b\x87\xe1\x2b\x79\xb2\x7a\x44\x6a\x86\xa0\xe2\xa8\xbe\xb4\x36\x15\xcd\x14\x58\x64\x05\x4f\x14\x9a\x81\xd6\x1f\x32\x77\x8a\x4f\xe2\x48\xd4\xa3\xb7\xce\xc4\x65\x97\x3a\xad\x62\x6b\xfe\xa4\x3a\x4b\xc9\x9e\x09\xd4\x66\xb2\xa2\x21\xc8\x5e\x59\x49\x6a\xd6\x98\x8c\xb1\x05\xdd\x49\xad\xd9\x4f\x8e\x67\x18\x35\x13\xc9\x8d\x39\x26\xc3\x23\xeb\x5f\xd7\x59\x7a\x2b\x0d\xf5\xf1\x73\x5c\xb1\xa9\xab\x09\xae\x1e\x49\x81\x89\x1e\x49\x31\x12\x4a\x9d\xae\xe3\xc9\xc6\xcc\xe4\x18\x80\x7a\xf9\xdd\xbd\xa8\x71\xd6\x04\x95\x67\xf3\x79\x85\x6a\x87\x1d\xea\xdb\xc5\x24\xd2\x4c\x05\xac\xd5\x5b\x87\x94\xcf\xc0\x91\xb1\xe4\xf4\xb0\xb1\xdc\x13\x68\xad\x38\x3d\xb4\x00\x90\x74\x4a\xca\x30\x82\x58\xa0\x9c\x1f\x93\x1a\x76\xe4\x06\x0b\xe3\xea\x36\x5c\x36\x33\x66\x9d\xda\x34\x14\xb5\x5a\xb9\x1b\x96\xcb\x43\x12\x9d\xdb\xdc\x66\xed\xcd\x5e\x57\x8c\xc0\xa6\x1b\x9a\xa8\xbd\x59\x08\x4e\xc4\xb5\x11\x4d\x47\xa6\x24\x92\x78\x73\x06\xa8\x4a\x59\xf7\xb8\x7d\xa9\x72\x01\x57\x0b\x44\xd2\xa5\xc6\x9e\xcf\xc6\x77\xec\x6c\x7d\xb4\x80\xd6\x55\x42\xc6\x23\x45\x42\x74\x71\x13\xb8\x18\x96\x7e\xf6\x06\x0e\x24\xcb\xe3\x81\xb6\x37\xa5\x13\x96\xbc\x8b\x75\x69\x24\x4f\x80\x91\x22\x13\xb1\x71\x2e\x00\xec\x0f\x00\xa4\x9a\xd4\xc2\x24\xc1\x63\xe2\x1f\x2d\x20\x72\x5e\x16\x28\x1b\x1c\x31\x38\x6a\x6f\x36\x83\x80\xd9\x7a\x31\x68\xb5\x64\x12\x71\x92\xb6\x69\x1f\x0f\xca\x55\xf7\xf1\x00\xf2\x3e\x1e\x80\x5e\xa9\x44\xab\xe5\xcb\x32\xf2\xb3\x7c\xae\x6c\x91\xf9\x00\xa4\xb7\xe1\xb0\xf4\x01\xf4\x0d\x5e\xe6\x06\x6c\x7a\xb5\xb2\x23\xd7\xaa\x1e\x58\xef\xc9\xfd\x89\x9a\x80\xf7\x07\x93\xcd\xcd\x3f\x7e\xf6\xb1\x87\xee\x34\xe0\xfd\x71\xfa\xe9\xf1\x21\xf0\xcd\x9b\x69\x9c\xa5\x28\xf7\xb2\x99\xf8\x58\x6a\xae\xe2\xcc\x6c\x95\xd8\xf7\xbf\x0b\x37\x97\x22\x92\x8f\xbb\x6e\xdb\xcb\x3f\xa1\xb6\x42\x74\xf9\x62\x65\xd0\x06\x92\x47\x07\x02\x51\xfb\x32\x5c\x7d\x9d\xb5\xf1\xdb\x61\x36\x66\x7f\x70\xf2\x37\x03\xaa\x02\xf9\xe7\xed\x24\x85\x30\xfe\xcb\xe2\xf7\x2f\x0b\x60\x7f\x3a\xa7\xf7\x64\x4e\xef\x46\x08\xff\x93\x72\x2c\x13\xd8\x7f\xc5\xbb\x23\xea\x35\xe9\xda\x6b\x23\x27\xb9\x67\xab\xaf\xab\x35\xe5\x65\x28\xb1\xb9\xce\xe7\xcd\x66\x85\xd2\x85\x8c\x56\xe5\xb8\xd8\x09\x31\xcb\x79\xf0\xb2\xe9\x37\xd9\x7c\xde\x24\x62\xdf\x6b\x36\x59\x07\x27\xd2\x53\x55\x80\xf5\xd5\x09\xf9\xca\x47\x90\x80\xdb\x7a\x8b\x04\x27\xc6\xf4\x48\xb4\x63\x7b\xc0\xf3\xc9\xca\xc6\x75\x9e\x44\x4f\x52\x27\x13\x73\x33\x5d\x88\x13\xb4\x3f\x41\x0c\xb9\xef\x21\x39\xef\x93\x4a\x04\xb1\x11\x21\x9a\x4c\x7f\x6d\xb5\x68\x55\x40\x38\x96\xf2\x89\x7d\xf6\xdb\xfc\x0d\x49\x54\xb9\x77\xe7\x32\x9b\x37\xc2\x45\xda\x90\x92\x3d\xc4\x8e\x7b\xc7\x2c\x1f\xe0\x26\xef\xc6\x88\x6c\xd0\x8f\xb3\x44\xba\x30\x0a\xf1\x56\x88\x4f\xf9\x37\xd1\x51\x9f\x0d\xb2\x23\x20\xc7\xc1\x11\xf5\x91\xbd\x12\x36\xb8\x9d\xb9\x09\x49\x24\xc7\xd9\x10\xb4\xde\x25\x65\x67\x3b\xaa\xcf\x3e\xab\xba\x21\x59\x39\x82\xe8\xf3\x69\x3e\xf6\xf9\xaa\x44\x9e\x5d\xaa\xee\x77\x07\x82\xc0\xfb\xb7\xd7\x1d\x89\x80\xa4\xae\x65\x1d\xe2\x2b\x77\x68\xcc\xef\xa1\x98\x32\xe6\x01\x5b\x2b\x84\xfc\x36\xfe\xce\xb5\x8e\xe5\x42\x01\x5a\xe5\x42\x78\xd5\x4d\xbc\xf7\xb1\xd3\x78\x93\xb4\x5a\xc6\x4b\x3c\x83\x56\xf4\x17\x5f\xbb\x6b\x3e\xcf\x1e\x58\xac\xe5\x39\xa7\x0d\xc5\xe3\x23\xf8\xa0\xbc\xd7\xd9\xef\x0e\x20\x0d\x48\x7f\x73\x90\xbb\x09\x3d\x44\x4f\xa6\x82\x92\x5a\x2d\xdf\x23\x12\xca\x6e\xf2\xe3\x56\xcb\xc7\x81\xfa\xee\x63\x79\xd4\x5d\xc8\x41\x85\x1a\x62\x72\x50\x00\x00\xc4\xe7\x5c\x45\xe4\xce\xd6\xe5\x98\xdf\x4b\x71\x7b\xcc\xd1\x29\x21\x9f\x12\x72\x3d\x21\x07\x77\x8f\x92\x71\xa2\xee\x1d\xdc\xde\x26\x93\x3d\x18\xdc\x95\x2e\x47\x7a\xf3\xe5\x67\xd9\x16\x77\x36\x5f\xfd\x66\x93\xa1\xd9\x3e\xb7\x9b\x6f\x73\x73\xcd\x86\xeb\xbb\x2d\x49\x48\x56\x79\x17\x37\x28\x9c\xb4\x05\x4d\xac\x3c\x1e\x27\x45\xfa\x74\x59\xbf\xef\x96\xf5\x72\xd2\xf1\x8b\xe6\x53\x26\x57\xfc\xa6\x7b\x39\xde\xd0\xf7\x05\x41\x39\x6a\xf1\x9d\x84\xde\x4e\x22\xe4\xdd\x9e\xba\x20\xa5\xb8\xd3\x2d\xe5\xfd\x47\x7b\x79\x5d\x26\x23\xaf\x07\x01\x24\x01\x13\x1b\x0a\x0e\x98\xb3\xa1\x58\x4a\x13\x33\xea\x13\xf9\x00\xcb\x5d\xda\x09\xe2\x7b\x29\x9a\xc7\xa7\xa2\xf9\xfb\x9d\xfc\xde\x4b\x89\xe6\xec\xdd\x13\x68\xe2\x7b\x2a\x9a\xc7\xa7\xa2\xf9\x29\x21\x2f\x23\xe4\xbb\x28\x9a\x13\xca\x4f\x26\x1b\xd4\x1a\x80\x9a\xb7\x6f\x00\x22\x94\xcb\xbd\x46\x75\xe2\x2e\x0a\xda\x84\xf2\xf7\x85\x71\xb0\xbb\xd4\x38\x78\x87\xfa\x09\xa1\xfc\x2e\x5a\x03\x69\x75\x98\xa4\xf7\xd7\x88\xdd\x5d\x73\x2a\x65\x77\x71\xfc\x0e\xee\xc7\x00\x6a\x26\x58\x18\x9f\xee\x00\x34\xcb\xa3\xb6\x39\xb8\x2d\xfb\xff\xc1\x5d\x19\x95\xaa\x8e\xde\xfb\x23\xe4\xb2\x33\x0a\x32\x31\x06\xa5\x43\x0a\xf4\x70\x72\x55\xe0\x74\xa8\x2f\xdd\xec\x52\x1a\xa3\xd0\x79\x4d\x91\xdb\x4b\xb6\x45\xa1\xd8\xec\xbb\xdb\xdd\xa6\x73\x47\x4f\xd4\xa9\x68\xd0\x03\xbd\x66\x13\x55\x1c\x5f\xc8\x3d\x47\xec\x9a\xc9\xc6\x90\xc6\x31\x92\x18\x56\x91\x8a\x93\x51\x0d\x9f\x4e\xc0\x94\xb4\x91\xd8\xc1\xee\x47\xf8\xda\x6c\x7f\xcb\xfa\xc8\xa0\xe7\x60\xae\xbc\x7a\xba\x2a\x6c\x68\xb3\x38\x3c\xa0\x8a\x44\xdd\xe2\x50\x86\x2d\x35\xc6\x1b\x62\xe6\xe7\xb8\x1a\x12\x4c\xc6\x69\x1c\x32\x5d\x3e\x7b\x86\x61\xf9\x78\x93\x11\x66\xca\x4b\xe7\x7d\x3c\xe2\xf6\xdd\xbe\xfc\x98\x9b\xb1\xce\x25\x86\x71\x4c\xf7\x1f\x8e\x43\x72\xdd\x03\xd9\xd8\x29\xdb\x80\x1d\xbb\xa6\x8c\xe8\xdd\xcc\xeb\x73\x08\x66\x15\x09\xdd\xae\x76\xaa\xdc\x31\x3b\xc1\x60\x47\x21\xaf\x0c\xc6\x7c\xfc\x20\x9b\x9c\x0c\x7d\x3e\xc5\x0c\xb5\xd5\xe1\xef\xfd\x79\x9b\x4a\x47\xdb\x6d\x92\x72\x04\xf0\x8b\x74\x8a\x08\xff\x6f\x57\x1a\x38\x69\x68\xd4\xe4\xcb\x96\x02\x07\x3e\x41\xf2\x7d\xd5\x86\xed\x5d\x47\xfb\x84\xd2\x6c\x12\x3f\x85\xf9\xe4\x51\x7b\xdd\xc8\x93\x9d\x7d\x8c\x8a\xb1\xf5\xa0\x77\xf1\xe2\xc5\xc6\xa3\x14\x36\x3e\xfd\xe9\x4f\x7f\xda\x03\x30\xcc\x8a\x39\xd1\xeb\x18\xec\x7b\x23\x53\x62\xc6\xd0\x10\x27\x72\x5a\x5c\x32\x18\x00\x98\x04\x61\x47\x65\x83\x69\x10\x76\x6c\x46\x18\x07\x61\x27\xcb\x0a\x87\xb5\x8d\xec\xa2\x11\x65\xc8\x13\x44\x77\x89\x3d\x6c\x7e\xc8\x2b\x16\x3a\xf1\xbc\x84\x07\x00\x8e\x82\x61\x47\x65\x87\x51\x30\xec\x64\x05\xe0\x24\x18\x76\x64\x11\x38\xd3\x1f\x64\x21\x38\x0d\xb2\x30\xf3\xf1\x31\x44\x9b\xc8\xe9\x98\x06\xd8\x47\x30\x91\x1e\x9f\x4d\x09\x82\x0e\x4e\x9e\x11\x63\xed\xd7\xd0\xad\x22\x3f\xcb\x5c\xa6\xc7\xe5\xdf\x67\x94\x8c\x1f\x55\x17\x7c\xe5\xf8\x8a\xa2\xea\xc1\x59\xf9\x84\x81\x44\x01\x9c\xb0\xd9\x51\xab\xe5\x8f\x02\xec\x8f\x60\x02\xa0\xc4\x41\x0d\x8d\x3f\x82\xa9\x5d\x70\x7a\x4b\x49\xd4\x82\x36\x23\x3f\xd2\x33\x28\x64\x7d\x58\x68\xc4\xe4\x31\xcd\x44\xad\x96\x1f\x05\xd8\x8f\x6c\x33\x57\xc2\x29\x32\xf3\xe0\x47\xb5\x8d\xb9\xb3\x1b\x2d\x69\xd0\xcd\x67\x1a\x9d\xb4\x5a\xfe\x24\xc0\xfe\xc4\x36\x2a\x67\xd7\x9f\xd4\xb6\xa6\xc9\x67\xb2\xa4\x21\x9d\xc5\xb4\x31\x6b\xb5\xfc\x59\x80\xfd\x59\xa1\x63\xaa\xa5\xd9\xd2\x7e\x29\x02\x85\xb3\x63\xba\x75\xde\x69\xd1\x32\x36\x88\x3a\x32\x20\x8e\xa0\x07\x1d\x6b\x99\x08\x81\x8a\x39\x85\xa7\x54\xdd\x15\x59\x2b\xc6\x43\x3a\x61\xe0\xd4\x56\xcb\xfd\x65\x82\x71\x13\xba\xef\x29\x5f\x91\xe2\xf2\xd8\x26\x3e\xe8\x99\xc4\x27\x29\x41\x3e\x17\x69\x82\x51\x09\x74\x05\x91\xf6\x0c\x83\x3c\x86\x43\x27\x86\xe1\x96\xb9\x74\x81\xf7\xde\xf6\x0e\x79\x8f\xb8\x34\x87\x14\x86\xb5\x9c\x5a\x8e\x4e\xfb\xd1\x90\x87\xb5\xbc\xfa\x8a\xca\x5b\xe6\xd7\x49\x80\xfd\x10\xc0\x34\x48\x3a\xb3\x90\x4f\x60\x1c\x24\xf2\x75\x15\x87\x57\xfa\x14\xa6\x20\xb7\xa3\xca\x69\x18\x82\x56\x6b\xe8\x3e\x74\x42\x3a\xb2\x8d\xa4\xd5\x1a\xca\x67\x25\x62\x87\x67\xb8\x94\x14\x25\xca\x0b\x0d\x72\x67\x4b\x1e\x76\xe4\x78\x26\x8f\x51\xe6\xc7\x00\x7a\x71\x98\x70\x3d\x76\x53\x94\x24\xa1\xbc\xc3\x91\xa3\x58\xc1\xc5\x43\x3e\x39\x4f\xa2\x3f\x42\x87\x2e\xd5\xba\x24\xaf\xa6\x31\x0a\x79\x58\xa0\xdc\xec\x0e\x95\x8e\x5f\xd5\xd1\x81\x51\x67\x74\x96\xbd\xed\xcd\x95\x31\x47\xed\x5d\x89\x07\xe0\x91\x18\xa4\x1e\xcf\xae\x9a\xc2\xeb\xe8\xb0\xc7\x16\xcb\x29\x0f\x1d\x0c\xe3\x34\x79\x5f\x4b\x61\x15\x32\x18\x81\x1e\x26\x5e\xe6\xfd\x9c\xdf\x36\x09\xec\x7b\x4c\xbd\x84\x5c\xd8\x8e\xc3\x80\x76\xe4\x17\x41\x33\xd4\xd9\x80\x8f\xd9\xfb\xb0\x76\x91\xc6\xd6\xe1\xb9\x4e\x1a\x76\xc6\x53\x60\x2e\x0a\x87\xad\xd6\x83\x41\x10\x84\xc6\xa7\xec\x48\x11\x37\xf3\x43\xf8\xa0\x24\xef\x7e\x77\x20\x88\xbb\xbf\x39\xc8\x84\x4a\xfb\xf4\xb7\x3d\x47\xd5\x29\xa9\x15\x2e\x6b\xb3\xc4\xa0\xd5\x4a\xcf\x0a\x0d\x0b\x9d\x0d\xe2\x95\xf0\x5c\x58\xf2\x2d\xbe\x34\x77\x6a\xe5\x7c\xaf\xad\x9c\x4b\xd7\xaf\x91\x41\xdf\x17\x8b\x97\x21\xa9\x09\x5e\xb0\x2f\x73\x27\x7a\x4a\xab\x17\xb6\x75\x3a\xac\x5a\xc4\x58\x2c\x62\x34\x46\x07\x1e\xf4\x04\x5d\x7b\x62\xc9\xef\x21\x96\xd4\xac\x6a\x91\x15\x26\x01\x95\x8b\x00\xa6\x01\xed\xe8\xec\x30\x0e\xec\x6e\x9f\xb6\x5a\xe9\x49\x96\x7e\xa2\x22\x36\x93\x7e\x32\x68\xb5\xfc\x30\x10\x00\x58\xf3\xd0\x34\xc4\xb1\x10\x0a\x12\x99\x1a\x04\xa4\x23\x93\xe4\xaf\xb2\xa9\x43\x7f\xed\x24\x34\x65\x43\x04\x59\x65\x7f\x11\xec\xab\x6e\x3d\x49\xc9\xd5\x38\xf2\xa0\x37\xc5\x02\x78\x42\xd9\x30\x06\x00\xe2\x80\x75\x9c\x1c\x90\x06\xac\xe3\xe6\x59\xcb\xed\x81\x54\x46\x4a\x2e\x9a\xae\x65\xdc\x40\xde\x61\x48\x5e\xb1\xf5\xbd\x7e\xd8\x7e\xb6\xdb\xfe\x83\x81\xbf\xdd\xd3\x60\x7b\xf0\x80\x49\x04\xdb\x1f\xf1\xa0\xcd\x72\xe4\xad\xd3\x75\x0f\x2e\x6a\xb3\x02\xb0\x86\xa5\x63\xad\x53\xff\x27\xb2\xdc\x75\x6d\x5c\xbb\xd6\x01\x1e\x5c\x31\xe7\x36\xc8\xf6\x5a\xb9\xbc\x2e\xa3\xf1\x85\x83\x99\xcf\xa1\x87\x3d\xb0\x90\x06\xfb\x4c\xfe\xc4\xd0\x90\x50\x08\x94\x98\xc0\x04\x01\xcb\x58\xf7\x1e\x98\xcf\xc3\xd2\xdc\xeb\x38\xf8\x21\x00\xcd\xa0\x86\x75\x26\xf3\xb9\xa0\x44\xb1\x98\x04\xef\xc4\xce\xd6\x9f\xbb\x7a\x38\x0c\xc9\xe3\x64\x8f\x5e\x47\xd2\xa0\x5a\xb1\x34\x8e\x24\x55\xf4\x36\x3e\xa3\x7b\xd8\xfc\x9d\x8f\x7c\xb4\x75\xe6\x81\xf5\x6b\x1b\xc1\xf6\x67\x76\x3e\x7b\x34\x5f\xfc\x7f\xed\xc1\xba\xbf\xdd\xbb\xd6\x59\x9a\x03\x3c\xb0\xca\xd8\x75\xc0\xfa\x71\x93\xbd\x81\xe1\x6c\x42\x09\xea\x6d\x7c\xc6\xef\x5f\x5b\x1f\x6c\x6f\x5e\x4b\x1e\xe8\xb7\xaf\x6d\x5c\xeb\x0c\xb6\xaf\x25\x0f\x80\x6d\xff\x9a\xef\x5f\x8b\x8e\x1e\x5a\x80\x6b\x60\xae\x21\x90\xcf\x64\xbe\x97\x12\x3f\x26\x13\x7d\xbf\x7f\xf0\xc7\x83\x79\x1f\x5d\x18\x08\xa0\xcf\xaf\x0e\xb6\xfb\x22\xd7\x5c\x5e\xa2\x11\x23\x23\xb3\xf5\x7f\xe7\x81\x6b\xd1\x60\x1d\x80\x07\x3e\xb2\x01\x53\x16\xf7\x36\xfc\xed\x9e\xdf\x3f\xdf\xfe\x93\xb0\xfd\xec\x60\x1d\xf4\x04\x32\x1b\x47\x5d\xf8\xd0\x02\x88\x2e\x9c\x6f\xff\x89\xe8\x85\x06\xdb\x02\x7e\xc0\xbf\xd6\xe9\x5f\xdb\x17\x23\xb4\xee\xf7\xaf\xed\x77\xe0\x27\xb6\x3f\x13\x7c\xb4\x15\x4e\x67\x5b\xbd\x6b\x1b\xff\xdf\xfa\xef\xb4\x8f\x16\x83\x07\xfa\xd7\xf6\xb3\x74\x9b\x0c\xb6\xb7\x37\x16\xe5\xb7\x3c\x1d\xa6\x8a\xc9\xa9\xe4\xb4\xa2\xe4\x14\xac\x22\x39\x39\xe3\x79\x9b\x92\x53\xf3\xae\xc8\x4e\x60\x3e\x4f\xcf\xa1\xf9\x1c\x9d\xab\x11\x9d\x0a\x88\x9e\x8a\x4e\x1f\x50\xd1\xa9\xf6\x05\xfb\xe5\xd6\xce\x3b\x5f\xa9\x1a\x07\x54\x12\x15\x58\xb5\x8e\xe8\xe0\xec\xad\x23\xf7\xb1\x9c\xd2\x75\x5c\x1c\x28\x22\x23\xe7\x36\xb7\x89\xba\x8a\x4b\x83\xcd\x2d\x7a\x96\xc8\x07\x73\x70\x9f\xe6\xaf\xe2\x52\xe7\x60\x3c\x77\x23\x17\x1f\x33\x78\xfa\x68\xe5\x7d\xcb\xfa\xca\x87\x25\x05\xbb\xaa\x91\xa4\x0a\xac\x0e\x0a\x5c\x1e\x46\x7c\x1f\x21\x72\x51\x6b\xf7\xd0\xc3\x89\x92\xc7\xc4\xff\xe1\x81\x12\xc6\x88\x15\xc6\x90\x5d\x7f\x82\xd1\xcd\xe7\x18\x86\xe6\xab\xb2\xee\x26\x01\xe9\x94\xaa\x85\x69\x40\x3a\x38\x81\x71\x40\x84\x18\x07\x87\xe2\x6f\x78\x90\xa9\x80\x5a\x90\xcb\x18\x6a\x53\x88\x6f\x45\x5e\x64\x05\x11\x66\x58\x66\x3d\x3f\x56\x0f\x15\x55\x1e\x91\x95\x8d\x28\x82\x59\xa6\xcd\x20\x18\x2d\xb1\xd2\x6a\xe1\xd4\xb6\x9e\x38\xe7\x4e\xb2\x12\xa1\x8a\x96\x6d\x33\xfe\xe8\x6c\x3c\x9f\x8f\xce\x0d\x6b\xb6\x82\x5d\x35\x50\x8e\xd1\xb8\x54\x69\x7c\xae\x06\x2f\x4e\xe9\x95\x09\x65\xbc\xae\xb0\xb4\x0d\x9d\xad\x2f\xfc\x04\x25\xe3\x13\x9d\xae\x68\x1b\x50\x72\x1f\x4e\x51\x8f\x76\xa4\x38\xdb\xdb\xb8\x76\xe4\x5f\xdb\x5f\x07\xd7\x16\x1b\x63\xa8\x3f\x3e\x8a\x92\x21\xc3\x32\x7a\x54\xcf\xbb\x3a\xc1\x49\x63\x84\x91\xd0\x23\xc6\xc8\xfd\xf6\x18\x65\x2b\xbc\x6a\xbb\xea\x95\xf7\xb5\x62\x9c\x5a\xd1\x8f\x28\x6b\x4d\x08\xd9\xd9\x37\x19\x05\xc1\x2b\xe3\xeb\x81\x85\xc0\x52\xaf\x8b\x1c\x86\x77\x7e\x2b\x3f\xf7\x74\xad\xd2\x96\x75\x43\x7e\x01\x33\xa4\x9e\x10\xc9\xe5\xb9\x9b\x98\x40\x16\x20\x8d\x4d\x7e\x85\x33\xa1\xaa\xe9\x58\xf0\x56\x55\x63\x72\x43\x0e\x8a\xa3\x67\x16\x3c\x00\x90\x59\x35\xab\x98\x49\x91\x89\x07\x72\x7c\x96\x95\xa3\x0a\xcb\x67\xa2\xd5\x63\x39\xc3\x21\x9a\x71\x14\xf5\xbc\x23\x67\xfa\x16\xea\x39\x82\x5d\xd4\x30\xdf\x3d\x28\xcf\x05\x6a\xb3\x89\x8f\x8d\x23\xf9\x67\xe1\x41\x75\x3a\x52\x97\x59\x7d\x6d\x1c\xa9\xbf\x22\xbb\x60\x96\xc5\xdc\xc3\x90\x9c\x51\xd9\x15\x7f\xce\x0e\xac\x6b\x91\x68\xb8\x87\xda\xee\xa9\x69\xb1\x44\x44\x51\x22\x6a\x97\x4a\x5f\xe3\x88\x92\x85\x07\x65\xe8\xb1\xda\x9a\x95\x14\xa2\x8f\x96\xa4\xfa\x76\x4c\x56\x99\xa9\x11\x46\x91\x50\xfb\x44\x99\x19\x3f\xac\xed\xa2\xbe\x82\x20\xbd\xbf\xae\xd2\xba\xaa\xe5\x67\x21\x01\x1d\xe1\x64\xa1\x02\xf1\xd7\x66\xdd\x93\x5c\xd4\xd8\xfa\x8a\xd9\xa4\x49\x3e\x41\x6c\x4f\x4c\xec\x58\x86\x98\x63\x57\x27\x61\x6d\x75\x3a\x4b\x83\x4f\x42\xd2\x38\x1a\xf3\x45\xae\xd4\x25\x76\x61\x39\xe2\xb9\xe2\x94\x39\x1d\x19\x73\x31\xff\x56\xb0\xae\xc0\x93\x50\xde\x90\xdf\x23\x14\x09\x19\x99\x4f\x50\x23\xc6\x09\x17\xa5\xe4\x48\x57\x94\xb1\x9b\x63\x8c\x92\x64\x59\xbf\xc4\x77\xdd\xa9\x58\x74\xca\xe4\x3f\xb6\x47\x59\xc1\x5c\x77\x62\xd9\x1d\x42\xf9\x79\xf2\x38\xe1\x68\xbc\x64\xc1\x90\x06\x56\x39\x54\x7e\xe5\x55\x58\x4f\x54\xda\xa0\x03\x69\x54\xbb\x54\x69\x14\x79\xd0\x9e\xa7\xd5\xe6\x92\x28\xeb\xf5\x6a\x73\x2f\x54\xc9\x87\x97\xae\x5b\x55\xd4\xac\xde\x2c\xbf\x28\xcc\x27\xcb\x29\x48\x66\xd0\x43\x2d\xb7\xb8\x85\xa7\x6d\x0e\xc7\xac\x23\x99\xc9\x76\x7f\x46\x13\xcc\xf1\x5e\x6d\x29\xf3\xdd\x83\xd3\x34\xe6\x78\x16\xa3\x4b\xa3\xfa\x16\x4c\x9e\x06\x1d\x35\x8e\xb2\x02\x02\x35\xb1\x3c\x08\xaf\xe5\x60\x8a\x25\x19\x0f\x98\xda\x75\x9d\xe7\x48\x5a\xc8\xa8\x20\x58\x4e\x69\x23\xa6\x64\xdc\xf0\xa7\xe1\x01\x9e\xa6\x53\x91\x78\x34\x0d\x0f\x16\x8d\xe1\x24\x64\xe1\x90\x23\x96\x00\x59\x83\x94\x71\x6a\xaa\x48\xc4\xb7\x86\x3f\xc5\x24\xab\x03\x93\x42\x1d\x5a\xc6\xaa\x67\xce\xf2\xb3\x2e\x19\x92\xa8\x84\x87\x27\xcd\x32\xc7\x4c\x5b\xca\x62\x0f\x16\x0e\xf4\xeb\xca\xe8\x55\xad\xf6\x5f\x39\x17\x0a\x5c\xe8\x1a\x94\xb0\x59\xd5\xe7\x09\x6a\xc8\x1c\x0d\xb5\x23\x37\x7c\x15\xfb\x41\x54\x2a\x78\x64\xae\xe3\xcb\x85\x39\x43\x60\x77\x5f\xad\x29\x04\x12\x28\xdb\xbe\x7d\x26\x24\x90\x30\xc0\xe6\xe0\x19\xcb\xd7\x8d\x50\xab\x15\x36\x83\x80\x6e\x17\x55\x43\xc5\x99\x3c\x88\x21\x03\x3d\x2f\xe6\x26\xf3\xb9\x72\x5e\xc3\xcf\xb2\xcc\xc8\xe6\xae\xcd\x6c\x99\x9f\x29\x35\xb6\x4d\x9c\x2d\x37\xe1\xec\x03\x59\x7e\xdb\xca\xd9\x65\xf9\x4b\x0d\xd9\xd5\x6b\x4a\x77\x8b\xa5\xb3\xf5\xad\x4a\x08\x9e\xa7\x33\x7f\xf4\xc1\x20\x28\xe5\x97\x3c\x51\x65\x95\x5b\xa2\xcd\xdb\x2c\xe7\x55\x7b\xa6\xcc\xdc\xf4\xbd\x8c\x1d\xe8\x42\x4d\xe2\x87\x1b\x14\x80\x92\x2a\xe6\xe4\x94\xa5\xb3\xd0\x11\x24\x73\x10\x35\x16\xf9\xec\xc9\x1f\xe7\x59\x1f\x04\x5a\x2d\xe7\xc1\x55\x69\x9c\x42\x77\xf2\xf4\x52\xd5\x59\x8b\xf6\x5b\x97\xa4\xe6\x46\xa7\xc2\x00\x26\xb5\x07\x31\x39\x05\xb9\xa4\x39\xab\xd8\x99\xf2\x80\x46\x6d\x65\x03\x75\x6a\xef\x68\xc0\xb1\xf9\x29\xd5\xe5\x61\xa6\x2e\xc7\xf3\x79\x0c\x47\xe6\xab\xaa\x09\x46\x41\xd2\xd1\x75\x09\x05\x6e\x98\xe9\xb4\x05\x8d\x58\x9a\x18\xd3\x63\x4c\x90\x35\x1f\x0b\xd3\x97\xed\xbe\xda\xaa\x5f\xf9\x40\x5a\xab\xd5\xac\x51\x1d\xab\xca\x37\x5d\xed\xa1\x9e\x00\xf4\x13\x4f\x08\x2c\x7c\x7a\x02\xec\x22\x49\x8c\xcb\x4a\x18\xe9\x43\x97\x31\x76\xa3\x49\xd0\xdd\x9a\x9c\x35\x56\xd5\xad\x89\x79\x02\x79\x16\x30\x3f\xec\x4f\x06\x10\x43\x9a\xf7\xc2\xb5\x5a\xc9\xcc\x98\x24\x67\x8b\xd5\xb4\x63\xb5\x83\x0e\xef\xd0\xff\xb0\x94\x33\x25\xfb\x2c\x9c\xb5\x67\x8c\x1e\x1c\xde\x27\x47\x97\xb2\x31\xbd\x60\x38\xcf\xba\xea\xe1\x31\xa1\x0c\x59\xe3\x39\x0d\x70\xc7\x7c\x15\x1c\xbe\xe3\x7c\x87\x49\xc1\x9d\x09\x89\xc5\x13\x6e\x1b\xaa\x7d\x4a\x89\x20\x7e\x02\x7a\xcd\x3c\x25\x27\x99\xbf\x2f\x6d\xb5\x9a\x69\x8d\x2d\x45\xad\x5a\x63\x52\x97\xbe\xbd\xb4\xd5\xaa\xc9\xad\x05\x1e\x9d\x7f\xb5\x29\x56\x33\x82\x13\x31\x1b\x53\x7c\x5f\x22\x92\x95\xd7\x55\xd3\x6f\xa2\xf9\x5c\x46\xaf\xf1\xf8\x04\x11\x0f\x80\x45\x2e\x62\x99\x3d\x8e\x5b\xa1\x2f\x39\xea\xba\x83\x5b\x38\x1a\x29\x1f\xb9\xbe\x48\x0a\x1d\xd5\xf9\xa7\x44\x0b\xf3\x79\xc5\x77\x69\xc6\x95\x9f\x6f\x2f\x58\x50\x71\xa4\x1a\xc8\xcf\x0c\x00\xdc\x67\x60\x1b\xf9\x05\x3f\x72\x15\x22\x0b\x80\x1e\x5b\xc8\xeb\xc3\xb2\xf5\xaa\xd0\x4c\x2b\xac\xdb\xfb\x48\x01\x62\xc1\x67\x71\x99\x8e\x04\xa3\xea\x21\xa8\x0a\x71\x38\x54\x2f\xec\xf7\x18\xd4\x76\xba\x1e\xc9\x7b\x44\xe1\xbd\xc3\xf6\x90\x46\x68\x8a\x05\xe6\x6e\xe4\xaa\xfc\x97\xdb\xa3\x83\xaa\xd3\x9f\x42\xf8\x04\x9d\x6e\xce\xb8\xb6\xf8\xd9\x2c\xa0\xc2\xfa\x3a\x60\x7d\x3e\x08\x50\x9f\x67\x86\x7a\x73\x60\x92\x7b\x16\xf3\x4e\x68\xa4\xee\xdd\x40\x1e\x8e\x55\x9c\x2f\x31\x82\x21\x43\xa1\x07\xc5\x78\x5c\x94\xe3\x61\x1c\x1f\x89\x6c\x56\xbf\x45\xe5\x83\xbb\xf1\xba\xd0\x4e\xd6\x8a\x13\x8a\x36\x4b\xf4\x80\xec\xf5\x55\x74\xc0\xcf\x33\xe4\xbe\x3e\xe0\x3c\x0f\x06\x4b\xa9\x36\xa8\x76\x82\x78\x3a\x7b\xc4\x56\x27\x83\xa9\x7e\x32\x24\x51\x2c\x5f\x0c\x57\x51\x99\x61\x16\x07\xda\x04\xb7\x7f\x46\x8c\x9d\x8a\x4d\x1f\xa9\x18\xab\xea\xe1\x23\xfd\xf0\xde\xc9\xfb\xa9\xa2\xc0\x67\x88\xe8\xd8\xff\x7e\xcd\x67\xd9\xbe\x0f\x16\x10\x27\xcf\xe0\x04\xef\xc6\xe8\x51\x1c\xe9\xa7\x1a\xd5\x64\xd0\x5d\x69\xcc\x61\xbe\x67\xb3\xe4\x9f\x56\x51\x88\xed\x87\xe6\x6b\xee\x55\xa5\xac\x8c\x3d\x26\x2d\xc7\xf6\x67\x3a\xac\x7f\x36\x3c\x2a\xd2\xae\x2c\x8a\x63\xcc\x0f\xe5\x0d\xa4\xfa\x31\x2b\x3c\x5c\x97\xb5\x43\x45\xfd\xce\xa8\x23\x12\x95\x4b\x2b\xe7\x4a\x3d\x12\x50\x3e\xdd\x0a\x97\x4c\x67\x4d\xd4\xde\x62\x74\x5e\xc8\x74\x68\x5e\x87\xf2\x3a\x7a\xd3\x57\xd8\x08\xb1\xd3\x2b\xbf\x10\xa5\xc7\xa1\x3c\xc4\x6e\x3d\xa3\x91\xac\x48\xda\x59\xab\x7b\xe5\xd2\x8e\x61\x0e\x65\xab\x7c\xc6\x2b\x00\x24\x41\x77\x8b\x9c\x45\x5b\x44\x72\x08\xe2\x1e\xe9\x91\xc1\x9a\x1d\x40\x55\xbd\x4b\x83\x7d\x6f\xcf\x69\xde\xb3\xd1\x68\xe5\x9b\xb8\xc0\xc4\x4d\xce\x66\xb3\x3a\x8a\x74\x89\x60\xd6\x2a\x28\x0b\xd9\xc7\x08\xb2\xe4\x00\x41\xfb\x1a\x97\x33\x46\x0c\x8d\x18\x4a\x26\x32\xc2\x7d\xf5\xaa\x28\x90\x4d\xa9\x86\x31\xe2\x2a\xa3\x8f\x80\xfb\x5a\x91\x93\x25\xc9\xb2\x48\xba\xa9\x59\x7e\xcb\x7a\x4c\x55\x16\x0f\xac\xa1\x56\x2b\x1f\xec\xb7\x22\xd6\xae\xc1\xb3\xba\x21\x9f\x43\x19\x12\x47\x47\xfe\xae\x40\x48\x12\xca\x32\x74\xe4\x54\x0a\x64\xcc\x3a\x2e\x8c\x88\x5e\x27\xd5\x63\xa1\x3e\xa2\xf9\xdc\xf3\xee\xfc\xf5\xb3\x12\xe3\xee\x70\x6a\xf9\xb3\xcb\x8b\x73\x5c\x3c\x25\x4c\x3e\x9b\x97\x85\x01\xaf\xe6\xe5\x62\xb7\x8e\x11\x47\x8d\x62\x2b\x8b\x05\x58\xb2\x97\xeb\x4d\x29\xd9\x10\x69\xed\xf2\x36\x0e\x3d\x67\x7b\x3f\xc9\x65\xcf\x0f\xd0\xae\x7e\x45\x8d\x81\xdd\xd3\x6f\xf3\x35\xc1\x1d\x23\xa0\x26\xc6\x68\xa0\xde\xbd\x92\x2f\x4e\x83\x05\x74\xf7\xe3\x5e\xe5\xa1\x93\xac\xa6\x34\xdd\x28\xd3\x3e\xf2\x7b\x3a\x13\xac\xc0\x34\x5a\x3c\x12\x74\xab\xcc\x30\xeb\xa3\xc1\x02\x16\x5b\x58\xf6\x4e\xaa\x5b\x32\xe0\x90\x2f\x60\x82\xc7\x24\x8c\x7b\x79\xad\xcf\x4c\x2c\x2e\x73\x64\xaa\xe7\x19\x9f\x7b\x70\x1b\xb7\x1f\xec\x75\x01\x0c\x83\x07\xb7\xc2\xb3\x78\x2b\x5c\x5f\x07\xb4\x1f\xb6\x1f\x74\x79\x73\x38\x58\xcb\xfa\xab\x1a\x33\xa3\x6e\xdf\x0b\xee\x23\x48\xb2\x20\xe1\x32\xc0\xc0\x02\x96\x57\x4a\x6e\x40\x72\xcb\x23\x37\x20\xf9\x05\xa2\x1e\x27\x6e\xef\x62\xd2\x9e\x85\xc3\xeb\x88\x6d\xec\xe2\x82\xff\x5a\x39\x0b\x22\x9c\x1d\x9e\x28\xce\xaa\xc4\x63\x1f\x47\x7c\x12\xf0\xf9\xbc\xab\xdf\x8c\x54\x0a\x46\x80\x16\x55\x37\xa7\x1b\x39\x9a\xac\xf0\x00\xba\x98\x26\xfc\xf1\xe9\x4c\xf3\xa6\x86\xb7\x8e\xc0\xe2\x4e\x96\x07\x87\x48\x39\xb4\xc9\xfa\x83\xe2\xf6\x62\x30\xb8\x6c\xb3\xf8\xde\x53\x26\x48\xae\x35\x59\xef\x63\x3e\xc1\xa4\xd7\xe8\x77\xa5\x89\xdc\x5b\x47\xeb\x1e\x68\xec\xa6\xbc\xb1\x1f\x26\x02\x49\xb1\xcf\xb8\x4f\xe7\xab\x67\xde\xcf\x17\xa3\x88\xd8\x7b\xf3\x7c\x90\xcf\xaf\x0c\x9d\x94\x04\xcc\x18\x3d\x29\xf1\x40\x2e\xcb\x28\x4e\x93\x89\xf8\x2e\x81\xc2\xc7\x09\x92\xaf\xe3\x30\xdf\x53\x50\xe1\x33\x4e\xfe\x90\xe1\x28\x90\x02\xa3\x80\x0a\x9f\x15\x95\x07\xce\xd4\xb8\xeb\x47\x4f\xa8\xce\x95\xc7\x7b\x1a\x1e\xe8\x98\xcb\x97\x46\xa3\x04\x15\xfb\xeb\xbc\xa3\xa8\xf0\xf2\xb3\xa8\xf5\xd2\x02\x3a\x0d\x0f\x7c\xd6\xe6\xb0\x5b\x18\xbf\x3d\x25\x46\x5c\xe1\x21\xe3\x98\x8c\x1f\x27\x11\x3a\x10\xe8\x57\xa5\x17\x3a\xa3\x0c\x6f\x5a\x0e\xf9\x94\x9c\x38\x51\xb2\x22\xb9\x72\x0c\xcf\x73\xd5\x58\x1d\x1f\xd2\xa3\xd1\x47\x03\x5d\x20\x8f\xb8\x5c\x0d\x27\xa8\x43\xe6\x5f\x2c\x5f\xbb\x6a\x61\xbe\x17\xba\xb6\x33\x73\x01\x82\xee\x72\x57\x3f\x2c\xd9\x1e\x1d\xf4\x18\x3c\x2c\xea\xdc\xe5\xae\x8c\xf0\x01\x8a\xda\x63\x41\x82\xc7\x70\x23\xc1\xb0\x4e\x70\xd2\x22\xa5\x7e\xc5\x17\xb5\x40\xf1\x29\x17\x51\x93\xf8\x49\xbd\x4e\xa0\xb3\x1f\x7e\x64\x48\x89\x72\x31\x94\xc6\xf8\x3b\x61\x36\x0c\xb2\x8c\x16\x0a\x3b\x68\xb6\x21\xd8\x1c\xc0\xcd\x5e\x81\x4d\xf6\xf4\x40\x2e\xa3\xe2\x04\xce\x6a\x5d\xe4\x3e\xeb\xc5\x5e\x26\x3e\xdf\x3d\x74\xd8\xc8\x66\x53\x93\xab\xdf\x05\x60\x3e\xdf\x04\xe7\x36\xf3\xf5\x55\xae\xc5\xa2\xc2\x85\x02\xb5\x9e\xb1\x4c\x11\x55\x17\x59\x83\x54\xbf\x80\xbe\x23\xe7\x60\xc2\x6b\x31\xc9\x71\x8a\x1c\xda\xb9\xa5\x2a\x72\x3f\x40\xf2\x38\x57\x31\x81\x32\x79\xab\xdd\x5e\xd6\x58\xd5\x49\xdd\x37\x48\x57\x43\x17\x86\xaa\x2a\xc5\x27\x7d\xfb\x8a\x67\x11\x59\x98\xaa\xfa\x86\x08\xc7\x3e\xdb\x48\xc0\x03\x74\x8d\xb4\x5a\x7e\xba\x1e\x50\x35\x3e\x71\x10\xb6\x71\x89\x4f\xda\x01\x4e\x61\x0c\x24\xc7\x64\xc7\x32\x9e\x82\x24\xe4\x2e\x8d\x7c\xf1\x1a\xe6\x57\x5d\xfe\x93\x9a\xf1\xb1\xaa\x1d\xac\x76\x07\x30\xe3\xb2\xe5\x77\x83\x20\x60\xf3\x39\x3a\xc7\x40\xab\x95\x6d\xce\xf2\x64\x74\x35\x02\x41\x2e\x81\x1c\x1d\xf4\xd0\x47\xc9\x03\x55\xb9\xe6\x5d\x78\xd8\xcb\xd1\x0f\x01\x0f\x54\xcc\x8a\x10\x32\x2a\xc6\x23\xb7\x88\xe4\x1b\xc1\x85\x8b\x36\x08\x54\x0a\x31\xaa\x74\x23\x42\x33\x44\xa2\xa4\x41\xf5\x89\x37\x66\x09\x6f\x18\x29\xb1\x41\x47\x8d\x3d\x43\xa0\x11\x9f\xf8\xaa\x6e\xe0\x99\x20\xa2\xb9\x41\x5b\xc3\x23\x39\x6c\x36\x3c\x8a\x79\x9d\x24\x4f\x1e\xcb\x16\x37\xdc\xcc\xae\xd4\xb0\x80\x9d\xeb\x6e\xb3\xde\x26\xcc\x48\x91\x6f\xb0\xca\xb1\xe9\x82\x63\x98\x7a\x32\x41\xf1\xa8\x2d\x7b\xb7\x0a\x57\x5f\x51\xf6\xac\x38\xe0\x71\x4f\x5a\x33\xeb\x40\x05\x13\x87\xdc\xe8\x33\x86\x2c\x2f\x10\xce\x30\x4a\x82\xfe\x6d\xc5\x29\x32\xfc\x9d\x40\x72\x32\xfe\x4e\x56\xe5\xef\x64\x39\x03\x57\x4f\xa3\xa3\x56\xcb\x9a\x00\xe4\xe4\x1a\xcb\x8b\xdc\x11\xc4\x14\x3b\x5b\xb4\xe3\x40\x5e\xa0\x25\xc8\x82\xee\x16\x3b\xcb\x4d\xc8\x27\xbd\xb6\xc5\x14\x9c\xe7\x3e\x03\x76\x2d\x77\x0e\xce\x75\xb3\x23\x56\x13\x32\x6b\x91\x43\xb6\x62\xa1\xdc\x1e\xb2\xab\x11\xbd\x0d\x60\x05\x49\xd0\x85\x38\xe8\x42\x1a\xf0\xf6\xe6\x16\x3d\x17\x74\x5b\xad\xa6\x8f\xcf\xf9\x9a\xdd\xd8\x0e\x51\xe0\xf4\xe8\x10\x6c\xd1\x76\x1b\x90\xb3\x4c\x63\xde\x6a\xf9\x24\x30\x3f\xd4\xe5\xbb\x2c\xb3\x7d\x61\x69\x9d\xe4\x7b\x5d\xd8\x82\xf3\x4f\x6f\x15\x89\x6e\xcd\xc8\xce\xe7\xa4\xa9\xcc\x88\xdb\x08\xe4\xeb\x5c\x6d\xcf\xe2\x2b\x8f\x29\x57\x63\x7a\xfc\x06\x97\x73\x9d\xdd\xa9\x40\xc3\xc7\xb2\xed\x3c\xba\x66\x7c\x4b\xa3\x40\xcc\xbb\xd6\x96\xde\xa8\x83\xf1\x1a\x3a\x17\xe0\x56\x4b\x9e\x47\x66\xac\x1f\xf8\xd8\xf0\xfe\x10\x26\x30\x85\x31\x1c\x56\x0f\xa6\x51\xc9\x47\x41\x17\x46\x81\x3c\xf8\x47\x67\x87\x20\xd7\x85\x42\x91\x3e\x1a\x48\xba\x11\xa4\x34\xdc\xf6\xc3\xa0\x0b\x93\xa0\x0b\x7a\x7e\x18\x0c\xdb\x9b\x30\x0a\x7c\x52\xdd\x56\x3f\x1c\xb8\x8b\x61\x9d\xa8\x2e\xc0\x51\x40\x34\xc1\x48\x97\xff\x8c\x5e\x60\xb8\xbe\x0e\x60\x1c\x84\x5b\xf1\x59\xb4\xbe\xb9\x15\x9b\x23\xf7\x49\x95\x28\x10\x03\x38\x0b\xca\x9c\x3a\x06\x42\x1c\x98\xad\x47\xe7\xe8\xb6\x9f\xaf\x7f\xdd\xb6\x9b\xaa\xee\xc3\x51\x30\x01\xbd\x34\x88\xe0\xe4\x9c\x0a\x7d\x32\xb1\x2f\x8e\x97\x7a\x13\x0f\xe4\x23\x6e\xf6\x0c\xda\x1f\xc1\x19\x4c\x61\x02\x60\x14\xa4\xeb\xe6\xa4\xbf\x51\x20\xf5\x2a\x82\x28\x89\x7f\x7a\xde\x21\x85\x6a\x74\xf3\xf3\x2f\x90\x8d\x83\xee\x5a\x1c\xa0\x73\xdd\x56\x0b\x9d\x4d\xb6\xf3\x4b\x14\xb9\x2b\xb4\x97\xad\xf2\x61\x80\xb6\x86\x67\x93\xad\xa1\x62\x54\x69\x10\x04\x3e\xce\xa6\xcb\x14\x1f\x3a\x2b\x1c\x74\x0e\xe7\x73\x3f\x0d\x70\xe7\xb0\x1d\x43\xd6\x6a\x35\x55\x1c\x47\x33\x72\x00\xc0\xf4\x2c\x07\xe1\xfa\xfa\x1a\x8a\x13\x24\x03\x5a\x30\xb0\xcb\x50\x78\x7d\x8d\x05\xcd\x4d\xc8\xd7\xb3\x3d\x95\x42\x5b\x6c\x7d\x53\x4c\xae\x19\xa3\x30\x3f\x46\x55\xc2\x4f\x16\xa6\x32\xc7\xd2\xcc\x71\x7c\x10\x04\x44\x88\x40\xf2\x65\x99\xe2\x62\x20\x50\xe8\x06\x2b\xaf\x74\x66\x76\xbb\x8a\xf1\xcc\x23\xba\x92\x2c\x2f\x97\x54\xd0\xcd\x98\xae\x62\xe8\xbc\xd5\x3a\x09\xf3\x81\x2b\xab\x04\xf6\x9e\x93\x61\x1c\xda\x56\x60\x19\x87\x25\xa4\x30\xa0\x30\x09\xf0\xd6\x96\x1a\xdb\x34\x48\x36\x42\xc1\x01\x88\x20\x8c\x30\x6b\x2f\x27\x0b\xa5\x00\xd2\xf6\x66\x16\xb7\x26\xd4\x32\x76\x7e\xc8\x42\x00\x87\x41\x6c\x87\x4d\xd5\x1a\x42\x3f\x09\x86\x9d\xc3\xf5\xd8\x90\xc1\x39\x1d\x44\x71\x2b\x39\x27\x0f\x3e\x44\x9e\xf6\x66\x33\x68\xb7\x43\xb0\x05\x92\xc0\x1f\x06\x7e\xb9\xea\x1c\x79\xda\xca\xec\xfd\xe6\x85\x7c\xd8\x36\x08\x12\x53\xf7\xd9\x00\x6d\x09\x12\x85\xb7\x57\x61\x68\x2e\xdb\xb5\x37\x73\xa2\x1b\xa7\x0c\xe3\x8d\x30\x0a\x67\x5c\x3e\xe0\x33\x9b\xc5\x78\x58\x8a\xcd\x76\x0f\xe2\xe1\xbb\xbe\x10\xd6\x44\x4d\x67\x28\x77\x22\xe6\xdc\xf6\x56\xf9\x2f\x5f\x79\xe6\xa9\xce\x53\xca\xd9\xc4\xf7\x2b\x0d\x87\x5a\xde\xbe\x3a\x41\x8d\xab\xa2\x73\x0d\xdd\x39\x65\xb9\xc3\xc6\x8e\xd8\xf8\xac\x68\xec\xb3\x8d\x11\x65\x8d\xb0\x91\xa8\x9b\xd9\x0d\x4e\xa5\xab\xf2\x0c\x11\x14\x79\xea\xdc\x6e\x84\xf8\x70\x72\xdf\x90\x92\xad\x55\x63\x25\x3f\x59\xb4\x86\x31\x4d\xd0\x7d\x43\x4b\xb6\x56\x8d\x96\xfc\xa4\xb1\xaa\x7f\xd9\x4b\xd1\xd9\x2e\xa5\x3c\xe1\x2c\x9c\x6d\x30\x9a\x72\xe9\x39\xe8\x2a\x07\x2a\x93\xfe\xe4\xd2\x62\x5b\xa4\xa1\xf6\x14\x1f\x48\x65\xa1\x90\x2f\xe5\x13\x44\xb8\xc8\x8a\xa2\xca\x9c\x31\xde\xdd\x18\x52\xc2\x43\x4c\x10\x6b\x4b\xc7\x95\xb2\x62\x21\x24\xa9\x7b\xe3\x3b\x46\x45\x21\x89\x57\x2f\xb7\xbe\x32\xef\xab\xb5\xec\xa0\xa1\xbb\x85\xcf\x12\x73\x5e\x84\x8d\xb0\x10\x06\xa4\x8f\x07\x6b\x4e\x4d\xde\x7a\xe8\xb8\x8e\x2d\x16\x5a\xb0\x13\x7c\x39\x53\x8a\xa8\x8a\xd2\xa4\xeb\x50\xfe\x66\xa4\x13\x53\x7a\x3d\x9d\x01\x75\xe7\x36\xd9\x4e\x3a\x0c\x09\x8a\xf7\xa9\x94\x7f\x9c\x2c\x8f\x85\x42\x25\x39\x04\x59\xab\xbb\x61\x82\x87\x1e\x80\x78\x3e\xf7\x71\x10\x9a\x85\x9b\x21\x22\xc3\x7b\x11\x7b\xda\x23\x1b\x81\x18\x80\x0a\xa6\x93\x11\x83\x26\xa8\x2a\x62\xb0\x07\x79\xf2\x67\xdb\xe4\xbc\xaf\xf7\x48\x3d\x8d\x44\xcf\x5b\x67\x6b\xc8\xf6\xcd\x27\xce\x0c\x42\xa4\xfd\x61\x7c\xa2\x51\xf7\xa0\x2d\xa7\x7e\x3b\x79\xd4\x68\x7a\x92\xe8\x9c\x54\x41\xa3\x8c\xc6\xb1\x7c\xd4\x59\xbe\x8c\xbb\x64\xd0\x74\x23\xe5\x21\x9b\x31\xba\x87\x23\x19\x19\x1d\x93\xeb\x28\x6a\x63\xd2\xa6\x62\x91\x3c\x58\x91\x65\x4c\xe9\x38\x46\x2b\x7e\x6f\xef\xa2\x90\xc9\xe0\x83\xab\x64\x6b\xef\x55\x55\x38\x0a\x87\x68\x97\xd2\xeb\xed\x21\x25\x04\x0d\xf9\xb2\x2c\x05\xac\xaa\x77\xa9\x52\x71\xbe\x8f\x39\x47\x4c\x95\xde\xac\x42\x16\xf3\x49\xba\x5b\xdf\xe7\xf0\xd9\x94\xa1\x76\x18\xd5\xe7\x10\x84\x36\x43\x4b\xba\x80\xa2\x29\x8d\x68\x29\x43\x9e\x9a\xcb\xc9\x33\x3a\x4b\x67\xe5\x64\x3c\x62\xe1\xb4\x22\xf6\x26\xd4\xf2\xb5\x51\x8f\xe0\x08\x46\x70\x02\x67\x70\x7a\x6f\xfc\x2d\x1d\xda\x2f\xd0\x36\x9c\xb8\x2b\x21\xcb\xa5\x56\xad\x19\x97\x5e\x99\x20\xf9\x4a\xe5\x0a\x54\xca\x4e\x5e\xc8\x92\x2e\xb9\xed\xb2\x92\x9e\xf1\x4a\xc5\xcb\x44\x4e\x4f\x56\xce\xf4\x34\x5c\xa9\x98\xa6\x78\x0f\xa6\xab\x75\x2e\x4f\xff\xf1\x4a\x85\x4a\x8b\x62\xb8\x52\xb1\xe2\x4a\x19\xad\x54\xaa\xb8\x7c\xa2\x65\xa5\x34\x5b\xc8\xef\xad\xc9\xb2\x12\x86\x76\xf5\xba\x82\xd3\x55\x32\xeb\xb5\x39\x73\xf6\xdc\x12\x77\x1e\xd2\xe9\x2c\xe4\x1b\x63\xc4\x95\x1c\xc2\xda\x36\x22\xc5\x7b\xe1\x19\xdd\xd0\x4f\xf0\x2b\x5c\x3c\x30\x9f\x23\xbd\xb3\x9b\xb4\xde\x34\xc4\xc4\x5b\xad\x2b\x31\xde\x7d\xaf\x7a\xb1\xa3\x50\xb8\x88\x87\x8c\xc6\x78\x57\xf4\x43\xa5\xd4\x20\xae\xdd\x78\xd5\x04\xaa\x59\x6e\xcb\xfb\xd2\x13\x1a\x47\xab\x3f\x22\x7b\x0f\x1c\x6b\x87\x71\x98\x24\x4f\x86\x53\x94\xf4\xfa\x5e\x2d\x7e\x83\xbc\xef\x86\xe9\x18\x19\xe1\x71\xca\xee\x87\x76\x76\x94\x7b\x60\x23\x3b\xf2\x59\xa0\x8e\x45\x63\x37\x46\xd5\xbe\x0c\xda\xeb\x9e\x4e\x67\x29\x47\x91\x5f\x76\x91\x94\x56\xef\xc0\x81\xe7\xf3\x65\xea\x89\xbe\xd2\x17\xc6\xfb\xe1\x61\xd2\x98\x84\x7b\xa8\xa1\x8a\x79\x60\xe1\x9b\xd3\x21\xcf\x6e\xbe\x1d\x6f\x3d\x73\x25\x23\x62\x81\x83\x75\xaf\xe3\xad\x23\x88\x03\xe6\xe7\xe2\x1f\xf9\x58\xdf\x8d\xb0\x97\x92\xa8\xb4\x75\xd8\x4b\xfd\xc6\xcc\xec\x19\xfc\x9c\xa8\xf4\xdb\xbc\x33\x0c\xe3\x58\x1a\x3c\x40\x8f\xaf\x95\x23\xa0\x1e\xcc\xd0\x90\xa3\xa8\x91\x9b\xb9\x86\x1c\x6c\xe5\x30\xa2\x55\x28\x35\x3b\x91\x54\xaf\x4c\x37\x1a\x02\xf3\xa8\x51\xee\x8b\x89\x3a\xd4\xa0\x52\x0f\xcc\x26\x24\x1f\x54\x86\x07\x48\xc7\x23\x7d\xc4\x6d\x3d\xf7\x8c\xc0\x51\xc5\xf2\x11\xba\x52\x98\x24\xf7\xfb\x6d\x00\x79\x76\x33\x9f\x0f\x29\x49\x68\x8c\x54\xd8\x55\x79\x04\x57\x89\x60\x51\x99\xbb\x77\x98\x4e\xc2\xe4\xb2\xdc\x10\xf4\xf0\x55\x3b\xef\xb4\x5a\xa5\x9c\xdb\xa5\x14\x9f\x83\x9e\xd9\x5e\xd8\xa1\x0c\x46\xcb\xe5\x04\x9a\x1d\xa7\x64\x75\x73\xab\x77\x76\xb7\xed\xdc\xaf\x6c\xc3\x12\x65\xdc\x16\x72\x1f\x44\x43\x39\xad\x6e\x49\x57\x72\xf9\xb6\x0b\xbf\x65\x37\x44\x2e\x86\x12\x1a\xef\xa1\x42\xa7\x2b\x52\x6d\x89\xfa\x3e\xec\xec\xd8\x29\xdd\xd9\xa9\x68\xaf\x63\x3f\x97\x3e\x66\x1d\x3b\xb6\x47\xb6\x2b\xb7\x89\x51\x35\x2a\x1a\x87\x31\xe2\x97\xf6\x49\x6e\x16\xcb\x61\x37\x64\x8e\xed\xfc\x4f\x1f\xe5\x6a\xad\x21\xf9\x98\x86\x42\x70\xc6\x1c\x87\x31\x7e\xf6\xbe\xec\x61\x6e\x9d\xfa\x96\x01\x79\x82\x86\x91\x8e\xed\xdc\x39\xef\x0a\x5c\x79\xdf\xe7\x8e\x83\xa9\x58\xc6\x95\x06\x00\xa7\x5b\x4a\x48\xfa\x40\xf5\x4f\xa1\xfc\xf8\x8a\xfd\x94\x91\xcc\xdb\xf2\x7d\xf8\xb6\xbe\x5a\x7a\xbf\x84\x90\x82\x8d\xb5\xd2\x0d\x58\x5e\xe3\xfa\x23\x74\xa8\x8f\x69\xae\xa3\xc3\x64\x01\x25\xce\xd5\x17\x14\x94\x73\x3b\x8b\xa1\x3e\xdf\xb4\xe5\x21\x0b\x8e\x16\xfa\x8e\x82\x39\xd6\x94\x57\x15\x8c\x67\x4d\x9f\xc8\x77\xb9\xb2\xf8\x9d\x78\xdd\x0b\xfc\xfe\x67\x5a\xbf\x33\x78\x00\x78\xa0\x83\x0e\xd0\xd0\x47\x60\x8d\xb6\x5a\x3e\xeb\xe3\x41\x40\xe5\xa3\x39\xd6\x57\xba\x4a\x32\x92\x03\x2c\xc4\xf3\x36\x8e\x84\xbc\x7e\x8f\x49\xc8\xb1\x71\x1e\xd9\xd6\x2a\xbc\x94\x8d\x56\x23\x30\xeb\x79\xeb\x68\x01\x23\x54\x9d\x1f\x8f\xfc\x26\x32\x87\x11\xd2\x84\x67\xe2\x80\xab\xa0\xa4\x1b\x9f\xf1\xdd\xba\x80\xdf\x79\x00\x6c\x64\x87\xb4\xdb\xbc\xff\xe0\xa0\x27\xca\x2d\x6a\xc8\xef\x76\x08\xaf\xea\x5a\x63\x03\xcd\xe7\xf2\x1e\x69\xde\x95\xb7\xfc\x5c\x8a\xba\xce\xdd\x19\x86\x53\x24\x7a\xeb\xb3\xbc\xdc\x65\xaf\x49\x13\xd5\x79\xee\x53\xd0\x6a\x71\xdf\xcd\xc1\x00\x28\x45\x95\x3f\xf3\x74\x82\x1a\xa6\xd2\xa8\xb1\x87\x98\x0c\xa8\xda\xa0\xa3\x46\xca\xe2\xc6\x2c\x64\xe1\x34\xe9\x34\xfc\x47\x71\x24\xe3\xc6\x8c\x30\x89\x1a\xde\x99\x75\xbc\x7e\xc6\x13\xa2\x95\x9c\x5a\xe9\xa5\x1b\xe1\xc8\x7e\x65\xeb\x67\xbc\xce\x19\x85\x90\x74\x0e\x28\x35\x7b\x11\x27\x09\x26\xe3\xac\x91\x9e\x2d\xd7\xf0\x9f\xa0\xf4\xba\x92\xde\x7a\x59\x1b\x5a\x7c\x53\x4d\x77\xce\x58\x0a\x16\xf5\x6f\x23\x32\xa4\x11\x7a\xfa\xf2\xe3\x56\x41\xf0\x29\xe8\x29\xa9\xf3\xce\x1d\xff\x57\x59\xf0\x74\xf7\x73\x6a\xe5\x1a\x79\x13\x9a\x25\x2d\x5d\x9d\x4d\x3c\x80\xf3\xbe\x76\xde\x57\xd1\xfb\xd5\xb7\x4e\x12\xcb\x0b\x7f\xa0\x93\x12\xfc\x79\x73\xc7\x43\x5d\x90\x09\xe3\xa7\xab\xab\x30\x9f\xd5\xb7\xed\x8a\x34\x53\x6d\xaf\x3f\x38\xa6\xe6\x8a\x0b\x37\x6a\x11\xe5\xfb\xe0\xc4\x1d\x3d\xd7\xde\x2c\xbf\x50\x70\xd9\xbc\x49\x30\x33\xde\xdd\x49\x63\x18\x12\x41\x37\x61\x9c\xe8\x93\x20\xd5\x74\xaf\x71\x46\x0a\xec\x67\x3c\xe7\xd2\x0e\xa7\x8a\xca\x6b\xee\xe9\x58\x3c\xcc\xe9\x7b\xa9\x1f\xe6\x70\x93\xee\x7e\xce\xae\x8e\xf3\x7e\x7f\x60\x57\x36\xaa\xee\xa9\x62\x0e\x4c\x39\x48\x50\x15\xb9\xb3\x8f\xa0\xbc\x51\x04\x20\xa9\x2f\x54\x23\xbf\x2a\x6f\xd9\x66\x17\x2c\x54\x95\xdc\x27\xa0\xd5\xca\x2a\x26\xaa\x62\xda\x99\x86\xb3\x7c\xa5\x16\x4f\xf5\xf4\x40\x20\x8f\x81\xf4\x8f\x96\xb4\x2b\xb8\x81\x74\x33\x7e\xc4\x42\x12\xd1\x69\x3b\x65\x71\x3b\x09\x47\xf7\xdb\x3a\x92\x39\x41\x79\xe7\x1f\x7e\xe4\xd1\x0b\x8f\xfd\xe1\x27\x1f\xff\x6f\x7f\xf4\xc4\xc5\x27\x2f\x3d\xf5\xdf\x2f\x5f\xb9\xfa\xf4\x33\x9f\xfa\xe3\x4f\xff\x49\xb8\x3b\x8c\xd0\x68\x3c\xc1\x9f\xbb\x1e\x4f\x09\x9d\x7d\x9e\x25\x3c\xdd\xdb\x3f\x38\x7c\xb6\xbb\xf9\xe0\x43\x1f\xfb\xdd\x8f\xff\xde\xef\xff\x81\x07\x59\xe0\x79\xf9\x2b\x79\xeb\x01\xef\x0c\x27\x21\x3b\xcf\xdd\x33\x67\x09\xaa\x5e\xfb\xe0\x01\xb3\x33\x3a\xde\x77\x35\x8c\xdb\xac\xbc\xb6\x61\x2c\xf7\x73\xa8\x8e\xd7\xe8\x51\x85\xba\xfe\xa8\x68\x12\xab\xf3\xa7\x51\xc6\x10\x95\xc2\xbb\x7b\xd8\x08\x1b\x49\xba\x2b\xed\x20\xee\xc3\x20\x1d\x6f\x89\xf4\x94\xf0\x90\xa3\xf6\x34\x1c\x4e\x30\xb9\x67\xc4\xa2\xf7\x5c\x75\x0b\x2b\xf3\x8f\x90\x5c\x09\x32\x37\x62\x4a\xce\xeb\x30\x7b\xb3\x43\x4b\xaf\x57\x04\xb2\x6b\x86\x1b\x49\xd4\x93\x00\x69\x00\x36\x9d\xd4\x32\x4b\x92\x65\x2f\xaa\x7e\x36\x08\x42\x51\xd2\x50\x59\x55\x98\xce\xac\x6c\xe0\x54\xd3\xe7\x03\xb7\xda\x8a\x47\xb3\xf4\xee\xa5\x11\x54\x55\x9a\x9b\x9b\xc3\x94\x31\x44\xb8\x6c\xf9\xc9\x70\x8a\xac\x7f\x7c\x92\xee\xda\x60\x4b\x49\x70\xa4\x63\x1c\xab\x33\x87\x00\xe9\xe7\xa6\xae\xb2\x90\x28\xaf\x83\x64\x3e\xef\x0f\x60\x18\x20\xf5\xdc\x54\xe1\x83\x3c\xe1\x54\xfe\x79\xd4\x9e\x6e\x9e\x23\x6a\xc9\x04\x54\x48\x85\xb2\xd5\x62\xad\x99\x89\x05\x32\xc8\x3a\x23\x02\x9c\x9a\xc2\x72\x4d\xa1\xad\xa9\x80\x45\xb9\xa2\x85\x3e\x31\xed\x5c\x79\xea\x89\xf3\x57\x03\xef\x01\xaf\x78\x70\x6a\x4e\x00\x95\x60\x50\x1e\x57\x1d\x65\xae\x91\xb5\xa2\xa6\x89\x81\xa3\x6a\x4e\xeb\xb3\x00\x41\xb1\x90\x32\x7f\xcf\x40\x11\xdc\x36\xeb\xb1\xed\x3e\x1b\xc8\xcd\x8f\xa1\x28\x1d\xba\x67\xf6\xee\x6d\x3a\xd4\x67\x83\x80\x43\xb4\x00\xf0\x48\x13\x2d\x5b\x28\x15\xdf\x78\x2f\x71\xb7\x85\x66\xa0\x49\xb7\x8c\x7f\x42\xa7\x88\x4f\x04\x65\xec\x23\xc2\x55\x20\x2d\x0f\xac\x91\x80\x67\x8e\x5f\x76\x48\xc2\xec\xcc\xc9\x04\x14\x92\x0f\x7f\xca\xe8\xdb\xac\xd5\x22\xad\x16\x05\xe6\xb4\xda\x0e\x0d\xb7\x43\xa3\xa8\xae\xd7\xf0\xd6\x7d\x2a\x36\x97\x22\xdd\x81\x75\xaf\x31\x62\x54\x48\x56\xeb\x4c\x9a\xc6\x04\x44\x4a\x66\xb5\x10\x2c\x44\xbb\x7d\x3e\x08\xf0\x82\x74\xb2\x06\xae\xd2\x2a\xd5\xbb\x28\xf8\xb8\xf9\x95\x8f\xb7\xeb\xbf\x7b\xa4\x56\x54\xef\xa8\x7a\x77\xd7\x72\xfd\xd9\xdc\x32\x75\x3b\xd2\x3b\xa3\x0d\x76\xc5\xde\xad\x7b\x67\x1a\xe7\xbc\x05\x74\x9b\x2f\xaa\x00\x5e\x47\x06\x9a\x32\xbb\x47\x17\xe4\x5c\x48\x8b\x35\x3a\x4f\x04\x69\xc9\xa9\x0b\xdb\x9b\x60\x0d\x05\x5d\xab\x79\x6d\x3b\x6f\x02\xad\xa3\x1e\xea\x88\x35\x2d\x7b\xe5\x6f\x2a\xfa\x67\x39\x46\x82\x06\x46\x56\x29\xb6\xa6\x9e\x50\x28\x93\xd0\xd3\xe4\x3a\xa1\xfb\xa4\xa1\x7a\xdf\xf8\xac\xe4\xf2\x9f\x35\xbc\x65\x1f\xc7\x71\xb6\x38\x94\x0f\x9b\xc3\xc3\xb4\xd0\x59\xe2\x40\xda\x37\x2c\xc2\x51\xa1\xf0\x02\x16\xf9\x43\xe5\xe5\xf0\x6c\x90\xd5\xcd\x7d\x67\x7d\xea\xc0\x01\x05\xe6\x70\x6c\x2d\x39\x54\x4c\x25\x4e\x8e\xea\x68\x03\xee\xd9\x6c\xa0\x6e\xb9\xce\xe7\x18\x8e\x02\xde\xe1\x74\x3e\xc7\x6b\xdd\x20\x08\x46\x56\x4c\xf5\x9a\x1e\xd8\xf6\x49\x30\xd2\xd3\xe4\x6f\x02\x98\x06\xcd\x2e\xe8\x89\x44\x01\x6e\x02\x28\x3d\x56\x0b\x45\x68\x30\x74\x8a\xc4\xaa\x08\x0d\x86\x02\xdc\x04\xf2\x69\x14\x53\x00\x03\x19\xa1\xda\xf9\x99\x48\x37\x69\x9f\x06\xd4\xa1\x8e\x04\x76\x01\x80\xa1\xfa\x44\x02\xe2\x7c\x0a\xe5\x27\x25\xb7\x8a\xee\xfa\xe5\xdb\x1d\x38\xe0\x70\x18\xa0\x35\x5d\xf5\x30\x40\x75\x55\xe3\x80\x97\xaa\xc6\x41\x10\x10\xf5\x62\xcb\x30\x08\x02\xda\x0c\x82\xb8\xd5\x62\x0e\x03\x97\xc3\x0f\xf4\xd5\xf5\x63\x66\x91\x50\x8e\x47\x87\x75\x74\x90\x9b\xd7\xa5\xe5\xab\x29\x40\x7d\x2d\xcd\x7e\x16\xa6\xbd\x62\x2b\xed\xa3\x81\xdc\x2a\x95\xa7\x7a\xe6\xeb\x73\x96\x4a\x7f\x1f\xd2\xc7\x03\xa7\xaf\xca\x76\x5b\x83\x5c\xb1\xde\x65\xcd\x55\x7f\x52\x32\xbe\xe8\x0b\x1d\x8d\x7a\xb5\x17\x75\xca\xe5\x0c\x05\x71\xb0\xc6\xb7\x99\x89\x33\x50\xca\x26\x98\xd4\x10\xf9\x0c\x6e\x82\x5e\x0d\xce\xd2\x6e\x21\xc3\x63\x94\x42\x2e\xbb\xdc\x49\x33\x27\x35\x34\xf6\x5e\x35\xdc\xd4\x3b\x6e\x21\x96\xbd\x1c\x3b\xa2\xd9\x50\x4a\x26\x32\x28\x48\x24\x03\x84\x08\xae\x0f\x39\x3b\xbc\x72\x4f\x5a\x5c\xc8\xa8\xbc\xbc\x62\x28\xb1\xcb\x6a\x61\x12\x1c\x55\xb1\x8f\x52\xa8\xe9\x7e\x77\x00\x93\x5c\x70\x69\x98\x06\x4a\x3c\x49\xc0\x1a\xf3\xd3\x9a\xf0\x13\xaa\x33\x69\x9f\x0f\xd6\x42\xa1\xd5\xa9\xbd\x3b\xbf\xfd\x31\xa0\x64\xee\x35\xdd\x47\x19\x89\x22\x37\x56\x15\x41\xb0\x2d\xcb\x57\x19\x0c\xcb\x57\xe6\x0f\xbd\xfb\x99\xbd\xd3\x07\xa5\xed\x9b\x8b\x2d\xd7\xb9\x3e\x53\x2d\xf0\xa7\x29\x8e\xda\x63\x44\xd4\xcb\x15\xf7\xfa\xb0\x53\x37\x54\x11\x70\xc3\xbe\xe8\x08\x3a\x63\xc4\xaf\xe2\x29\xb2\xfe\xda\xde\x81\xfe\xd7\x96\xff\x7d\x4c\xfc\x77\x68\x7e\x9a\x7f\x9e\x0d\xd4\xbd\xd1\x3f\x38\x1c\x6c\x8c\x61\xc5\x24\xf9\x68\x7d\xf3\xe3\x0f\xe4\x34\x44\xf0\xd1\xcd\x8f\xcf\xbb\xd6\x0c\x10\xe4\xbc\x97\x37\x3f\x0e\xa0\xef\x1d\x08\x61\x81\x6f\xb3\xde\x43\x2d\x36\xff\x7d\x90\x8d\xf9\xe6\xc7\xf5\xac\x2e\x75\xc5\x2c\x9e\x27\x24\x55\xae\x64\xd5\x07\x0f\xab\x99\xef\x75\x2e\xb7\x09\xe7\x47\x3b\xef\x01\xb5\x34\x57\x5b\x10\xe7\x6e\x38\xbc\xbe\x62\x76\xeb\x4e\x68\x73\x97\xf1\x4b\x36\x64\xec\x20\xe5\xdb\x90\x1c\x93\x75\x3f\x8c\xaf\x5b\xe7\x94\x4a\xd7\x51\xe3\x87\x75\x4f\x94\xf0\x7c\xa0\x3e\xc7\x03\x29\xff\x81\xd4\x7d\xa0\xb9\x0f\x4e\xbc\xc1\xa4\xee\x43\xb8\xcc\xc9\x45\xfa\xd6\x26\x1b\xa9\x75\x8d\x31\xde\xb6\xd5\xf4\x53\x5c\xca\xc7\xd9\xec\x8f\x39\x34\xa9\x38\xa6\xae\xf4\x8f\xa8\x99\xa4\x3b\x9f\xa0\x4f\x9d\xbf\xfc\xe4\xe3\x4f\xfe\xe1\xce\x1f\x5d\xf8\x74\x80\x3a\x8f\x3c\x7d\xf9\xf2\x85\x27\xaf\xee\x5c\xbe\xf0\xdf\x9f\xbe\x70\xe5\xaa\x4c\xd5\x0f\xf2\x28\x4d\xa8\x3a\x8b\xb7\xb3\x23\x91\xde\x61\xe8\xf3\x29\x4a\xb8\x07\x93\x20\x5f\xb5\x93\x23\xc2\x0c\x0d\xf9\xce\x7e\xc8\x88\x18\x82\x35\x75\xcf\x41\xd9\x64\x2e\x8a\xa1\x37\xf7\x0d\x6f\x37\xc4\x0b\x43\x53\xca\xd1\xe3\xd1\x1f\x9a\x59\x0a\xaa\x93\xe7\x73\x4b\x55\x0b\x98\xf7\xd5\x17\x43\x9c\x2a\x86\xa6\xae\x26\x98\xcb\x5a\xaa\x12\x38\x32\xa3\xb2\xaa\x9b\x7a\x04\x27\xe0\x68\xd8\x6a\xc5\x1d\xe9\x60\xae\xfd\x3c\x66\x41\x5c\x46\xab\x63\xf8\xb7\x0f\xd6\x46\xa5\xbb\x67\x38\xb0\x84\xdd\x71\xce\x5f\x7c\xd4\xb9\x8e\x0e\xd5\x03\xc7\x41\x10\x58\x9d\xb6\xd2\x40\x6a\x97\x96\x1d\xe9\x94\xc5\x3d\x04\xaf\xa3\xc3\xa4\xc7\x17\x40\x3d\x54\xec\x83\x85\x8f\x3a\x04\xed\xcb\xf8\x4a\x90\x83\xb5\x98\x0e\xc3\xf8\x0a\xa7\x2c\x1c\x23\x89\xf7\x1e\x7a\x9c\xa3\xa9\x6e\x1b\xda\x60\x64\x39\x1f\x99\xc8\xa7\x9a\x81\x0b\x8c\xa6\x0e\xfa\x19\xf2\xb3\x42\xdd\x09\xe2\xb2\xe2\x10\x4e\x01\xac\x6b\x35\x01\x30\xee\x88\x69\xbb\x2c\x47\xd0\x47\x70\x0a\x53\x91\x66\x42\xb6\x3d\x45\xe3\x58\xed\xda\xa2\xe5\xbd\x60\x1f\x93\x88\xee\x77\x28\x51\x5a\x57\x4a\x04\xbb\x17\x23\x56\xf9\xc1\x65\x59\x15\xfe\x32\x7b\xad\xd6\x9e\x2f\x5a\xd3\xf3\xb9\x80\x4d\x33\x97\xf3\xb9\x81\xd4\xc7\xc8\xc8\x56\x75\x3d\x09\x01\x94\xe4\x34\xf1\x1d\x55\x54\xd5\xd0\x18\x4a\x67\x21\x42\xb9\xbc\xc6\xd1\xa0\xac\xb1\x1f\x26\xf6\x96\x02\x58\xb3\x4d\x8d\xe8\x30\x4d\x24\x46\x32\xc4\x5b\x84\xa3\x47\x44\xa6\x7c\xd8\x3c\x3c\xf2\x73\x48\x8c\xf5\x40\x27\x00\x1c\xd5\x8f\xf3\x9a\x96\x1e\xba\x90\x96\x3c\x70\x80\xbc\xee\xee\x38\x92\xfa\x5e\x5f\x5e\xbe\x18\x34\x9e\x96\x56\xba\x90\x34\x2e\x9d\x4f\xf9\xa4\x61\x56\x7e\x83\x4f\x42\xde\x10\x43\x9c\x34\x0e\x69\xca\xd4\xc2\x69\x9c\x9f\xcd\x1a\x38\x69\x44\x68\xc6\x90\xbc\xfb\x20\x03\xd1\x08\x3d\xa7\xb1\x8b\xae\x91\x46\xee\x9f\x42\x4f\xbe\x9f\x10\x36\x46\xa9\x7c\x3a\x8b\xa1\x18\x85\x09\x82\x8d\x30\x69\x44\x54\x34\x9d\x50\x51\x63\xd8\x98\x51\x8e\x88\x32\x15\xa2\x61\xca\x30\x3f\x6c\xec\xa5\xb1\x58\x64\x2a\x34\x5c\xa7\x58\xfd\x27\x71\xa4\x62\x10\x35\x74\xac\xcd\xc6\xee\x61\x23\x41\x9c\x8b\x5a\x3f\x2b\x03\x3c\x3f\x4d\x92\x70\x84\x2e\xeb\x3e\xf5\x1a\x9c\xa5\xe8\xb3\x02\x1f\xd9\x25\x75\xfd\x24\xc7\xc2\x73\x8d\x78\x10\x75\x2a\xaa\x51\x46\x0c\x1e\x54\xce\x51\x08\xd6\x78\xab\xe5\xd7\x4d\x13\xaf\x5f\x29\x21\x10\x64\xc1\xf1\x14\xd1\x94\x3b\x31\x03\xe3\x90\x23\xe6\xc7\x39\x0a\xa9\xa2\xc1\x8c\xe2\x60\x23\x4c\xf9\x84\x32\xfc\xac\x72\xfe\x12\x5f\x22\x44\xb0\xf8\x42\x99\x98\x6b\xe7\xfa\x8a\xc8\x60\xc6\x4f\x3e\x97\xb0\x8f\x13\x24\x49\x99\xa1\x21\xc2\x62\xfe\xf4\xdb\x0b\x32\xee\xbd\x5c\x84\xba\x9d\x8e\x27\x64\x79\xb8\xd9\xed\xca\xa3\x1a\xbd\x40\xc3\x48\x89\xf1\x4f\xe0\x84\x0b\x1e\xe9\x7b\x89\xea\xac\x07\x47\xf2\xa4\x46\x3f\xcb\x96\xe3\x3f\x76\x85\x9a\x5a\xd4\xc0\x2c\xad\xa8\xe2\x3e\x92\xc3\xfd\xcd\xad\x40\x99\x47\x33\x9f\xdc\xd6\x13\xa8\x97\xb7\x95\x7d\x0e\x8f\xc7\xa2\x01\xbb\x1e\x8d\xb5\x61\x18\xa3\x90\x3c\x3d\xf3\x65\x63\x12\x2c\x35\x27\xd2\xd9\x55\x35\x6d\x22\x5f\x81\xb1\x95\xf2\xcf\x54\x7a\x69\x86\x79\x65\x68\x47\x91\x3b\x8f\x7d\x89\x71\x2e\x00\x7c\xe8\x77\x35\x82\x06\x91\xff\x9f\xbd\x7f\xdf\x6f\x23\xb7\x12\xc4\xf1\xff\xf5\x14\xc5\xda\x2c\x0d\x34\xa1\x12\x29\xbb\x9d\x6e\xca\x65\x8d\xdb\x6d\x27\x9e\xf8\xb6\x96\x3a\x99\x2c\xcd\x68\x4a\x2c\x50\x44\x4c\xa2\x38\x28\x50\xb2\x22\xd6\xbf\xfb\x04\xfb\x12\xbf\xd7\xf8\x3d\xca\x3e\xc9\xf7\x83\x83\x4b\xa1\xaa\x40\x49\xee\x38\x99\x64\xa6\xf3\x49\x5b\x2c\xdc\x2f\x07\x07\x07\xe7\xea\xf7\x5a\x77\x34\x53\x64\xa6\x7e\xe3\x5b\x40\x33\x8d\x5a\xb0\x33\xef\x62\x59\xac\xed\xf0\xad\x92\xca\x2e\x64\x15\x6e\xdd\x4c\x12\xb6\xc9\xd7\x5d\xd8\x74\x49\xbb\xda\x80\x61\x7f\x2d\xd8\x65\x26\xe9\xc1\xdf\x5a\xc1\xae\xb8\xa4\x42\xb0\x9c\xbe\x2e\xb2\xfc\x04\xf8\x02\x21\x35\x46\x41\x4b\x2a\x43\x45\x54\x89\xde\x48\xeb\x80\x05\x1b\x60\x73\xe4\x7c\x05\x80\xaf\x29\xfd\xe6\xca\x8b\x19\x90\x40\xe6\x42\x37\x8e\x0f\x51\xac\x59\x13\x31\x26\xbc\x2e\x72\x41\xad\x47\xdb\xf2\x87\xeb\x53\xed\x19\xb7\x2e\x39\x19\x4e\xf7\x44\x52\x8a\x59\x4a\x09\x57\x84\x00\xe5\xf2\x6d\x91\xd3\x84\x81\x2f\x5c\x1d\x20\x05\x81\x39\x8f\x79\x6f\xf6\x46\xb7\xad\x7c\x47\xd1\xfe\x36\x0b\x1f\x63\xa0\x30\x2b\x72\x7a\x5f\x3a\xf8\x6b\xbc\x99\x79\xed\xa6\xc2\xa9\x19\x70\xf0\x17\xdc\x19\xfd\x79\x56\xd2\x9f\xc4\x72\x7c\x8b\x52\xb0\x79\x4f\x2f\xa4\x5c\x97\xe3\x83\x83\x65\x71\xc1\x78\xa2\x71\x4f\x99\x70\x2a\x0f\x7c\x25\x58\x49\x39\xcf\xb4\x6f\xc8\x41\x6c\xe6\x7f\x60\x71\x2c\x8d\xd5\xca\xba\x22\x63\x78\xd5\xf8\x0a\xcb\xd8\x6f\x80\xc4\xb3\x62\xb5\x02\xaf\x6a\x56\x0a\xe9\x44\xf3\xe3\x49\x9c\xad\xd9\xbe\x51\x30\x51\x45\x97\x8c\x72\x79\xc6\xf2\x78\x4a\x3a\x82\xfc\xf1\x24\x2e\x67\x05\x44\xaa\xe6\x85\xf6\x03\x2f\x68\xb9\x2e\x78\x49\xcf\x56\x6a\x6f\xa6\xc4\x7e\xbf\x29\x72\x1a\x1c\x97\x5f\x20\x26\xe0\x5c\xd1\x55\x32\xbd\xdc\xb9\x86\x93\x7a\x9d\x6c\xd5\xd3\xeb\x35\x8d\x31\x89\xb5\xcc\x6f\xaa\xd6\x27\x5b\xb3\xdf\xeb\x79\x8d\xe3\x51\x32\x8c\x89\x5f\xf6\xd6\xb1\x9d\xea\x68\xdc\x00\x6e\x6a\x74\xfa\x12\xfe\x49\xb0\x1d\xb5\x5c\x7e\x13\x4f\x35\x3c\x33\xc0\xeb\x04\x75\xb0\x53\x80\x31\x54\x83\xbd\x02\xaa\x5d\xef\xcd\x80\xc4\xfc\x36\xcd\xe1\xfb\x3e\x1e\xbf\xc6\xb1\x61\x61\x05\x1d\x38\x39\xcd\x27\x3b\xd6\xc1\xcb\x00\xd5\x94\xeb\x6c\x46\xdb\x7b\xaf\x95\xc1\x03\xab\x7a\xab\x1e\xbc\x5a\x53\xad\x42\xd6\x6e\xce\x29\x91\xe7\xfa\x86\x33\xce\x43\xdf\x76\x7a\x71\x94\x6d\xad\xc0\x8a\xb5\x0a\xbc\xd5\x05\x34\xce\x5e\x77\xb7\x87\xb7\xdb\xfa\x41\x25\xda\xd9\xdb\x6d\xac\x4d\x6d\x6a\x25\x18\x6b\xb3\xd2\x34\xc8\x01\x17\x8b\xd8\xae\x54\xb0\xab\x31\x18\xa3\x76\xc0\xb2\x33\x41\xed\xca\xd4\x07\x3f\x76\x1b\xf8\xb5\xcd\x93\xee\x81\xa1\x5b\x96\x93\x7f\x5b\x1c\xed\xfb\xba\xdc\x81\xa7\xdb\x53\xb0\x68\xda\x61\xe1\x6c\xcd\x12\x5d\x48\x41\x89\x9e\x86\x87\x67\xdb\xa8\x69\x12\x67\xb3\x19\x2d\xcb\x33\x59\x7c\xa2\x1c\xf0\xdd\xfd\x91\x03\x26\x80\x3d\x83\xe5\x2c\x5e\x35\x96\xc7\x21\xf5\xcf\xdb\x8c\x4b\x6f\xdb\x1a\x8d\x45\xee\x24\x7d\x7e\x26\x86\x80\x03\xdf\xd0\x28\xc0\x3a\xfa\xb1\x75\x20\x64\xa8\x01\x43\x64\xcf\xcf\x9f\x95\xd7\x7c\xf6\x8a\x33\x09\x51\xe3\xe1\x69\x62\x83\x46\x46\xc6\xcb\xab\x4d\x26\x2c\xbd\x93\x81\xa2\x03\x50\x9b\xd6\x5f\xfe\x50\xd3\x40\x78\xaf\xdb\xa5\x4f\x50\xbd\xfc\x01\x34\x59\x10\xf5\x19\x14\x9a\x40\xc7\x95\x66\x14\xd6\xb4\x16\x46\xf1\xc1\x81\x59\xed\xc4\x2e\xbf\xb9\xb4\xf9\x20\x3e\x28\xf3\x4f\xc9\x9f\x4b\xad\x16\xa6\xde\x39\x8d\x4b\x2b\x30\x0e\x49\xba\x89\xfd\x3e\xea\x26\x82\x75\xc5\x06\xe2\x60\x77\x33\x91\x16\x6c\xf8\xba\x0b\x56\x7c\x71\xb3\x29\xa9\x78\x95\x8f\x69\x02\x3f\x7e\x24\x1a\x6e\x4f\x15\xd8\x8e\x69\xe2\x7d\x11\xfa\x79\xcd\x04\x2d\x5f\xa9\x74\xf7\xbb\xaa\xd1\xd2\x85\xc8\xb8\xa4\xf9\x89\x82\xd0\x12\xdc\x38\x35\x52\xd2\x56\x09\x4c\xe4\x17\xeb\x76\xee\xe9\xb0\xe7\xbb\x4e\x71\x17\xde\xdd\x41\xea\xa0\x3d\x7b\x90\x20\x2c\x25\xdc\xde\x6a\x1a\x7a\x68\x3b\xf0\x64\x5d\x20\x26\xbd\x91\x22\x1c\xd6\x9a\xa8\xea\x94\x85\x9c\x18\x13\x43\x2f\x05\xcb\xd4\xb4\xd4\xe5\x61\x72\x18\x63\xf2\x79\x7e\xbe\x5a\x06\x8b\x42\x8e\xee\x73\xb6\xc8\x38\xa7\x8a\xd4\x0a\x96\xac\xb3\x2d\xcd\xa4\x4f\x48\xb0\xb0\xce\x52\x6b\xc0\xcf\x7e\x3a\x89\x31\xf9\x72\x7e\x69\x61\x74\xb0\x34\x6b\xa3\x04\xb7\xf5\x2d\x4e\x28\xbe\x71\xd6\x64\xea\xe5\x4b\xd3\x9b\xaa\xe1\xca\x0c\xee\x47\xbd\x1b\x98\x88\x94\x26\x0a\xab\x2a\xca\xca\xea\x5e\x18\xfa\xcd\x5b\x7d\xa7\x26\xd8\xed\xbe\x7b\xaa\x02\x91\xe3\x3d\xf5\xa1\x3b\xf1\x06\xe8\xf7\xbc\xfc\x21\x01\x32\xbc\xa9\xea\xa7\x87\xfa\xc1\x60\xfe\xe3\x16\x76\xe0\xa4\x99\x8f\xc7\xad\x02\x8c\x68\x2d\xb8\x4d\xa9\xde\xc9\x37\x1a\x54\xa9\x01\xc4\xb3\x52\x43\xa2\x24\xaa\x8d\x33\x88\xe5\x22\x00\xdb\x57\x48\x12\xae\xa3\xd5\xea\xc9\x66\x3a\xf2\x03\xac\x40\x57\x3b\xe7\x46\x77\x31\xee\x0d\xc9\xac\x28\x3e\x31\x75\x90\x0c\xa8\xd5\xab\xab\x01\xac\x86\xd7\x3a\xc7\x42\xa9\x85\xf6\x3a\xc7\xc2\xb8\x07\x91\x1e\xbd\x53\xc3\xa1\x03\xc1\x3a\xd7\x00\x1e\xae\x9a\x1e\x52\xca\x7b\xdd\x65\xbb\xdf\x81\x2d\x8b\xd0\x5b\x5f\x87\x7f\x43\x1a\x43\xdc\x85\x9d\xda\x6f\x41\x47\x64\x5c\x5d\x5d\xd5\x97\x86\x22\x33\x72\x96\x2d\x8b\x0b\x3d\xf0\x38\xf8\x2a\xcb\x59\xb9\x5e\x66\xd7\xde\x8b\xca\x65\x99\x57\xb0\x79\xe9\xd4\xa8\x50\xde\x85\x0a\x4d\x9b\x63\x43\x78\xb6\x69\x97\x4e\xfd\x2f\x7d\xd8\x90\x1d\x7e\x8d\x1a\xe5\xda\x07\x59\x93\x0b\xfa\x48\x39\xfe\xe1\xf3\x22\xa7\xfd\x7e\x7c\x38\x1c\x6a\x55\xb1\x4e\x66\x40\x43\xab\xa4\x22\xd2\xfc\x20\x9a\x37\xb9\x91\x35\x5e\xa1\x5a\xf7\xf6\x36\x78\x6c\x79\x0d\xf8\xa7\xe2\x4a\xb4\xc6\xde\x81\x43\x9d\x0f\x10\x08\x68\xef\x1e\xe4\x6e\x0b\xd8\xfe\xf3\xde\xc2\x3b\x5d\x55\xfc\x73\xed\xd0\xae\x59\x74\x1f\x26\xb3\x59\xb1\xe1\xb2\x4c\x74\x15\xfd\x3a\xb1\x8c\xa0\x4b\xcd\x0b\x8a\x09\x3c\x43\x7e\xef\x82\x93\x75\xb0\x8e\xae\x9c\xad\xc1\xf5\xfa\xca\xab\x0e\x15\x19\x9f\x17\xf1\xad\x6c\x1e\x23\xb7\x3d\x33\xde\xf3\xce\x32\x58\xa9\xd2\x47\x3b\x3b\x9e\x32\x9a\xd9\x44\x4b\x69\xdc\x27\xea\x40\x3d\xe5\x0e\xa8\x09\x94\x8c\x49\x1c\xe3\x26\xcf\x26\xd6\xaf\xae\x3b\x1e\x65\x44\x17\x83\xbb\x55\x61\x3f\x4d\xd2\x9e\xb1\x2f\x7f\xae\x75\x29\x9e\x16\x79\xa3\xd9\x0d\xc4\x08\x92\xcf\x37\x6c\xa9\x90\x38\xc2\x2d\x12\xc7\x6f\x93\xa5\x5d\xe6\x95\x9e\x47\xec\xbc\xfe\x69\x0e\x60\x67\x6b\xd5\x65\x9d\xfa\x17\x35\xfb\x1d\xbd\x8e\x9b\x4e\x4c\x21\x47\xe3\x77\x0c\x42\x50\x24\x14\x41\x12\x42\xbb\x9a\x43\x3c\x01\xd5\x66\xb6\x43\xbb\xca\x51\x78\x13\x39\xed\xf7\x85\x53\xa3\x83\xe0\xfc\xc6\xb8\x23\xe8\x67\xcd\x4e\x0d\x74\x9d\x41\x8e\xe3\x2c\xfe\x59\x19\xad\x8c\xa6\xbe\x5c\xd0\x92\x3a\xdb\x88\xba\x92\x36\x70\x03\x15\x69\xa3\xd9\x4b\xa2\xb8\xb6\x22\xb9\x93\xb8\x73\xd1\x87\x4b\x78\x40\xfe\xdb\x9b\xd7\xbf\x95\x72\xfd\x41\x83\xd9\x5e\xe9\xb8\xf1\x6f\xd8\x0a\x20\x0b\xa8\x1e\x6b\x04\x7b\xf0\xe7\x12\x08\xa3\x32\x29\x3a\x02\x5f\x2d\x3c\xff\xd7\x93\x77\x6f\x8d\x2c\xbc\x4c\x1c\x84\xd2\xcf\x12\xef\x15\x49\xb6\xc9\x19\xe5\x33\x9a\xa6\x2e\xc6\x65\x5b\xf4\xed\xec\x91\x74\x76\x56\x96\xec\x42\xa1\x9f\x9b\xda\xd5\x4d\x03\x52\x39\x60\x4a\x6b\x39\x97\xa6\x69\xdd\xcb\xed\x3d\x30\xd4\xd0\x61\xa6\xd6\x53\x43\x6b\x77\x14\xa4\x45\x75\x88\xc3\x48\xc7\x58\x4b\x22\xb5\x91\x0f\x6c\x4f\x0f\xa2\x39\xa3\xcb\x3c\x5a\x65\xd7\xd1\x39\xb5\x5b\xa8\x05\x72\x3e\x0d\x7c\xd7\x30\x9e\xc1\x59\x35\x9d\xd6\x31\xec\xa3\x42\x44\x8b\xac\x8c\xce\x29\xe5\x91\xa4\xab\x35\x55\x10\x71\xc5\xe4\x22\x89\xfe\x58\x6c\x6c\xb7\xe5\x06\x10\x72\x24\x8b\x28\x8b\x1e\xa8\xd3\xbb\x29\x69\x1e\xe5\x74\xbd\x91\xd7\x0f\xa2\x4c\xca\x6c\xf6\xc9\x0c\xaa\x82\x2d\xa4\xcd\xe8\x27\x9e\xf8\xe8\xce\xa1\x9e\xb6\x17\xc6\x20\xaa\x68\x9e\xb1\xa5\x19\x5d\xa4\xe9\xf0\xe8\x41\x3c\x28\x0d\xd9\xaf\x20\x61\x10\x3f\x88\x90\x5e\x47\x95\x55\xa8\x6f\x28\xe2\x83\xcb\x20\x7e\x80\xfd\xb1\xaa\xe3\x1a\xff\xe6\xc5\x69\x4c\x8a\x41\x7c\xec\x23\xb5\x34\x1e\x04\x8c\x29\xed\x3b\x5e\x97\xc1\x0a\x64\x4b\x75\xd9\xe8\x9b\xb5\xeb\xd4\xd1\xb3\x64\xab\xfe\xba\x9b\xf7\x1f\x8f\x19\xf8\x33\x2e\xde\x2f\xbd\x75\xf5\x95\xfb\x73\xae\x4b\x12\x2f\x72\xb8\x7d\xbe\xe2\x8d\xb8\x8b\x23\x79\x37\x8f\xb1\x66\x8d\x7c\x01\x31\x07\x4b\x04\x62\xab\x59\xb6\x5c\x14\xa5\x1c\x3f\x3a\x1c\x0e\xcd\xd2\x38\xcd\x45\x4c\x16\x61\x71\xd4\x22\x87\xd1\xff\x4c\xa8\xfb\x67\xa6\xf2\xfe\x9e\x50\x66\x41\x41\x53\x3e\xd9\x5a\xad\x51\xb6\x3c\x5b\x8b\x62\xb5\x96\x5f\x15\x0a\x0d\x03\x71\x97\x24\xad\xce\xde\x01\xb4\xbb\x1e\xb1\x77\x02\xad\x9d\xd4\x7b\x98\x53\xb8\xf3\x46\x11\xb5\x10\x1b\x59\xfc\xf5\xf0\xfe\xdd\xf0\x6f\x09\xef\x5d\x9f\x81\xff\x54\x20\xdf\x1d\x7e\x90\x0b\xa2\x8b\x31\x0e\x20\xbf\xc9\xca\xb6\x64\xdb\xb0\x78\xfe\x71\x9f\xa1\xd6\xdb\xe6\xbd\x05\x2e\xff\xa9\xbb\x62\x47\x6b\x0e\x32\xd0\x33\xbb\xd7\xac\x51\x26\xc6\x04\xde\x33\x1f\x1a\xc9\xcb\x5d\xec\x1d\xf3\x9e\x69\x35\x11\x62\x1a\xdf\xfd\x84\x6a\x75\x89\xee\x7e\xe1\x18\x00\x99\x86\x1f\x3a\x4e\x92\x61\xb7\x48\xdb\x95\xe2\x2f\xa0\x81\xbe\x9c\xf8\x09\x71\x23\xbf\xc6\x66\x8b\xc0\x66\x07\x1f\xc9\x7f\xef\xc7\xeb\x7f\xbb\x67\xe8\x4d\x03\x69\x19\xc9\x1a\xd9\xf9\x84\xeb\x00\x9c\xb8\x07\xc0\x69\xbc\xf7\x33\x91\x0d\xd9\xe9\x19\xe7\xde\x7a\x24\x6d\x07\x16\x7f\x1b\x73\x03\x63\x43\xd0\x05\x6c\x1d\x23\x94\xf2\x4c\xd2\xdc\xb4\xc3\xc0\xa5\x64\x87\x65\x1e\x93\xb8\x43\x32\x19\x5a\xa7\xcd\x5a\x77\x2a\x4b\x86\x4c\xaa\x55\x9e\x88\x03\xf7\xb3\x0d\xd0\x00\xf6\xbe\xd9\x4d\x8d\x4d\xdd\x3d\xd7\x54\x76\x06\xf5\xa3\xdf\xd1\xeb\x1d\x04\x8a\xe6\xdc\xdc\x4d\xf6\x68\x59\x9f\x1e\xe1\x0e\x45\x2f\x9b\xb9\xfb\xa2\x6b\x70\x8b\x20\x76\x39\x58\x31\x07\xbb\x85\x09\xdf\xde\x92\x86\x89\x13\xed\x5c\x41\x35\x77\xe6\xa5\x80\x7b\x26\xe2\x27\xb4\x55\x70\xfc\xd2\x21\x9d\x9b\xba\xa3\x46\xc9\x9a\x87\xbf\xdd\x22\xa3\x73\xee\x56\x7b\xf4\xb8\x0e\x7c\xdf\xee\x81\x62\x0c\xd8\xbe\xc5\x4a\xd4\x27\xab\x45\x68\xb4\xf7\xf0\xaf\xa4\x33\xe2\x83\xb8\x97\xa6\x88\xa6\x13\x23\xbb\x57\xc4\x24\xe8\x7c\x83\x29\xfe\xac\x58\x92\xf8\xe0\x20\x26\xed\x5c\x45\x6e\x76\x12\xd7\x99\x5c\x28\x94\x3d\x35\xa8\x28\xc6\xd8\x5a\x43\xef\x8f\x70\xbf\x8f\xe8\x20\x8d\x0f\x62\x4c\xe8\xc0\x46\x0e\x30\xa3\x4b\x16\x72\xb5\xd4\x9a\x1a\xb0\x10\x80\xea\xff\x97\x42\x08\xb7\x3a\xf6\x71\x57\x7a\xf3\xa0\x35\x15\xa0\xba\x87\xae\xe6\xd2\x75\xac\x49\x6a\xdc\x08\xfe\x29\x1a\xde\x96\xc6\x94\x34\xfd\x24\x81\xc1\x49\x6d\x61\x59\x11\x7b\x43\x75\x49\x10\x4f\x1f\xd0\x9c\xc6\xd8\xc0\x43\x7b\xaa\x08\xdb\xe5\x3b\xfe\xb9\xd4\xc9\x57\x63\xf0\xb6\x54\x17\x7d\xd6\xae\xf1\x5c\x42\xca\x74\x7f\xd4\x4b\x53\x56\x1b\xc2\x97\xcd\xc3\xf0\xdf\xe0\xb2\x65\x73\x54\xf6\xfb\xc6\xb1\x4c\x2f\x4d\xb3\xae\xdb\xb2\x3b\x3a\x5f\x64\x65\x94\xf1\x88\xf1\x59\x21\xc0\xd0\xc4\x46\xf6\x80\x26\xad\xa3\x33\xe3\x7e\xf7\x9c\x46\xf1\x83\x41\x36\x78\x10\x13\x70\xa0\xc6\x4a\xf5\x6d\xba\x1f\x3c\x88\x1f\x84\xaf\xff\xe7\x45\x4e\xc7\x39\xed\xb2\xe8\x26\xc5\x14\x7f\x01\x51\x90\xdd\x46\x14\xb4\xbd\x8c\xff\x63\xbd\x10\xef\xa1\x8e\xd7\x9e\x40\xe7\x8d\x68\x55\xac\x74\xc1\x5d\x2a\x79\x9d\x3b\x7d\xc7\x0d\x0d\x8d\x9c\x2d\x33\x9e\x6b\xaa\x47\xbb\x56\xb6\xec\x90\x2f\x10\xad\xef\xe4\x4a\x08\x9a\xe5\x67\x57\x82\xe9\xd3\x0a\xfd\xbd\xd6\xdd\xed\xb8\x5e\xbd\x12\x86\x91\x02\x63\xba\x8d\x9b\xe1\x15\x88\x49\x3c\xcf\x96\xe5\xdf\x46\x2b\xf9\x36\xc8\x6b\x07\x9b\xb8\x13\xf2\x46\x7f\xbb\xd8\x25\xbb\x80\xcb\x86\x07\x08\xcd\xc4\xae\xc6\xbe\xb6\xfa\x0f\x3e\xe1\x76\x1a\xfc\xfe\xac\xd3\xe3\xfb\xce\x22\x5a\x49\xb1\x87\x68\x64\x2d\xaf\x8b\x79\x24\x71\x38\x84\xea\x73\xed\x9b\x6f\x96\x2d\x97\x51\x16\x69\x0f\x62\x0a\x83\x39\x55\xa7\xd8\x53\xf9\x63\x75\xeb\xbe\x52\xc4\x07\x3a\xa7\x82\xf2\x99\x6d\x13\x6c\xd6\x16\x59\xc9\x1f\x48\x2d\x61\xb1\x86\xdf\x25\xcd\xa3\xfd\xc8\x80\x41\xa3\x84\xea\x9f\xe6\xee\xaa\xe9\xc9\xed\x36\xd6\xc1\xdd\xeb\x20\xb0\xb2\xdf\xaf\x4d\x20\xeb\xd4\x63\x3a\xfe\x72\x1d\x40\x42\x13\xb0\x8e\xb3\x36\x6f\x3a\x6a\xbd\x67\x64\x5c\xa4\xc1\x12\x1e\x68\xbb\x55\xa1\x08\xdf\x70\xe3\x44\xc5\x2a\xa5\x31\x63\xee\x44\x93\xb3\x33\x20\xbf\xce\xce\xb6\x5b\x33\xc8\x0b\x2a\xdf\x5b\xe7\x48\xe0\x48\x11\x87\xf5\xe2\xea\x7b\x37\x51\x30\x97\xc6\xdd\xf1\xc4\xc4\x79\x95\x6a\x82\x3f\x9b\xa3\xd0\x5a\xf5\xfb\x3a\xc6\x5c\x2a\xc3\xd0\x70\xa2\xb6\x26\xa2\x9f\xd7\xc2\x5c\x5a\x10\xb3\x8a\x32\xb9\xa0\x42\x5d\x56\xaa\x36\x98\xd8\xb9\xee\x08\x98\xd2\xc5\x03\xdb\x83\xba\x5e\x76\x86\x6e\xed\xf7\xbd\xa8\xad\xe4\xc6\x73\xa8\x35\x36\x7b\x43\x09\xe5\x9b\x15\x05\xbc\x32\xee\x8d\x88\xc2\x76\xfa\xf7\x90\xf8\x38\x47\x6d\x62\x85\x89\xec\xf7\x91\xe9\xa3\x6c\xac\xea\x71\x30\x15\xd6\x66\xec\xed\x49\x2a\x71\x85\xa8\x51\xc9\xd5\x41\x01\x09\xad\x20\x02\x5e\xd0\xaa\x40\x6c\x3a\x6e\x45\xa8\x8d\xd4\xa7\x08\x68\x5d\xfc\xde\x92\x63\xe7\xf6\x2b\xb3\xca\xc9\x6d\x73\x4b\x19\xb2\x74\x07\x32\xa5\x55\xc1\xb7\xc1\x0c\xd6\x21\x99\x15\x52\xd3\x9a\xcc\xf7\x7c\x8a\xb4\xda\x2b\xdd\x00\x3c\x03\x7a\x12\x4b\xb1\xa1\x10\x74\x69\x87\xa5\x74\x89\x89\x21\x0e\xd3\x34\xad\x43\x58\xdd\x62\x91\x80\x15\xb9\x65\xcd\x97\xe9\xb2\xa4\x46\x2a\x5a\xa0\xf8\x6d\x21\xa3\x2c\x02\x7c\x18\x99\xc2\x36\x22\x5a\x66\xe2\x6b\x3d\x57\x08\x0b\xdd\x68\x44\x1b\x92\x3d\x66\xee\x3d\xe0\xef\xd0\x98\x56\x18\x84\xb2\xaa\x31\x72\x2b\x41\x64\x02\x75\xe4\xe5\x72\x9f\x7e\x06\x32\xe8\xb6\x58\x1e\xb7\x19\xf2\xf9\x31\xfa\x3e\x40\x95\x1f\x4f\x5e\x7b\xe7\x41\xe8\x40\x63\x32\x69\x04\x5f\x83\x92\x69\xc7\x06\x54\xa5\xee\x50\xa7\x35\x44\xb4\xef\xed\x06\x57\xc4\xef\xd7\x06\x27\xbb\x39\x53\x98\x59\xa7\xfd\x6b\x53\xed\x33\xf5\xbc\x1b\xed\xd4\xdc\x35\x53\x42\xc3\x7a\x09\x8d\xdd\x4a\x70\x16\x65\x1a\x76\x35\x7d\x67\x70\xba\xbb\xb4\x34\xff\x66\xb7\x7f\xc8\x1f\x84\xb6\x16\x7e\x53\xe4\x74\xb9\xe3\x35\x47\x1a\x71\x38\x76\x2c\x9d\x55\xcb\x50\x8f\x1e\xb5\x50\xc7\x62\xa7\xd6\xb1\x4c\x66\x0b\x3a\xfb\xf4\x1a\x94\x87\xc1\x21\xfa\xb8\x9d\x44\xea\xcf\x80\xc3\x9d\x21\x91\x21\x93\xf9\xce\xbb\x4e\x9d\x64\xc0\xfb\xde\x41\xc5\x09\xc8\xf5\x11\x4e\x66\xe0\x36\xdb\x1f\xdf\x2e\x05\xc7\x7b\x44\x11\xfc\x6f\xbf\xa5\xfe\xda\xb8\x4d\x6d\x27\x12\x3f\x21\xe0\x57\x6b\xd7\xce\x1a\x8e\x81\xcf\x1e\x10\xa1\xbd\xf5\x59\x04\xa1\x02\x83\x38\x61\xe5\x33\x7f\x17\x81\x77\xe0\x42\xb9\x14\x4e\x87\xfe\xd8\xbb\xe8\x4c\xb8\x0a\x84\xc7\x88\x25\x99\x94\x74\xb5\x96\xd4\xf3\xf4\x96\x52\x92\x1d\x73\xa3\x4e\xf2\x23\x18\xee\x23\x8a\xc7\xec\x16\x48\x73\x5c\x9e\x56\xa5\x0a\x63\xb5\x4a\x5e\xe2\xb8\xa9\x5c\x0f\x2a\x2a\xb1\x5f\x20\x26\x34\x0c\xb5\xed\xd0\x70\x5f\x40\xb5\xff\x4d\x44\x2f\x21\x0a\xc4\x50\x2a\x97\x94\x4b\x9a\xd7\xc6\x8d\xe4\xa6\x76\x41\xd2\x58\x00\xdf\x1f\xc0\x2e\xf3\x6c\x33\xdd\x86\xf3\x00\x63\x7b\xed\xa7\xb0\x3c\x6d\x04\x57\x8a\xf7\x5c\x83\xc0\xef\x3f\xa1\x4b\xaa\x48\x39\x14\x27\x3b\x63\x30\x01\xa5\x4b\x79\xfe\x7c\xc1\x96\x39\xf2\x5a\xb7\xce\x0e\xda\x53\x68\xcc\xc0\x10\x39\x08\x57\xa4\x76\x1b\xe0\x97\x55\xf7\x67\x9a\xa6\xbb\xc6\xf5\x3f\x1a\xc3\xc7\xc6\xbf\x5e\xc0\x39\xc2\x9d\xa2\x93\x76\x70\xc1\x7f\x7a\x48\xf1\x1c\x6c\x06\xc2\xed\x1b\x57\xc3\xd0\x59\xc4\x78\x44\x31\x10\xa0\x8b\xac\x7c\x77\xc5\xdd\x30\x05\xb6\xae\x7d\xcb\x2b\xa6\x0e\x30\x9d\x88\x29\xbe\x99\x65\x25\xed\x0d\xc7\x3c\x8d\x47\xf1\x9e\x0e\x00\x0e\x49\x23\x95\x34\xb4\x49\x66\x78\x63\x0e\x0e\x70\x2b\xa9\x69\x18\x31\x88\xd3\x78\xc0\x6b\x47\xff\x96\x59\x17\xe3\x2a\xe0\xbd\x9d\xea\xa8\xd8\xdb\xed\xb7\xc3\x21\x58\x01\xe9\x78\xcd\xf0\xbd\xd7\x70\xbb\xbd\xa2\xe2\x82\xa2\x9b\x25\x9d\xcb\x71\x39\x13\x94\x9a\x98\xf3\x07\x87\xfb\xf2\xe0\x90\xc8\x62\x6d\x93\x75\x13\x07\x87\xfb\xe2\xe0\x90\x40\x99\xb1\x24\x3a\x71\x2c\x2a\x85\x4b\x90\xd8\x6e\xd5\x55\xb8\xe7\x1f\x36\xeb\xcd\x47\x91\x59\x6a\x75\xf9\x6e\x08\xdf\x05\xcd\x0d\x67\x1f\xfe\x31\xd0\xde\x49\xbe\x06\xf8\xb6\x7c\xbb\x85\x42\xc5\x42\x56\xdb\x59\xf8\x2d\xc6\xdf\x5f\xca\xaa\xd0\x10\xdc\xb6\x47\xb6\xf1\x07\xe3\x81\xac\xef\xd5\xed\x16\xed\x2e\xe9\x47\x2a\xc4\x98\x88\xbf\x3e\xe4\x83\xb9\x07\x9b\x07\xea\xec\xbd\x28\x3e\x5f\x03\xf9\x40\xb4\x63\x63\x2d\x84\x2a\x3d\xef\xc5\x77\xfb\x14\x68\x1a\xa6\x03\xc5\x0c\xa2\x32\x2a\x37\x6b\x90\x24\x41\x2f\x9e\x6f\x12\x45\xa7\xdf\x2e\xbf\xf2\x07\xe0\xc4\x26\x7b\x34\x09\x78\xda\x6d\x38\x61\xd1\x52\xac\x99\x8e\x17\x1f\x1b\x6b\x32\x8a\x89\xcd\x68\xf9\x11\x56\x25\x3a\x5e\xa6\xb5\x06\xa8\x1a\xbe\xf1\x63\x69\x97\xbb\x09\xe6\x1d\xef\x66\xd6\x99\x58\xd0\xf2\xbd\x08\x26\xbb\xdd\x6f\xc7\x01\xee\x48\x34\xdc\x5a\xdc\xfb\x39\x4e\xf1\x4d\x66\x08\x86\x52\x66\x42\xbe\x5b\x53\xae\x1e\xbb\x28\x6c\x69\x6b\x49\x1f\x77\xc8\x43\xc5\x3c\x7f\x67\x10\x07\x42\x17\x0e\x16\xf5\x1f\xad\x7a\x14\x73\xc6\x59\xb9\x80\x61\x10\xaa\x05\x8b\x1d\xda\x28\x50\x2b\x63\x4b\x57\xa7\x41\x96\x41\x44\x64\x1a\xd6\xd6\xbd\x73\x37\xbe\xc6\xf2\x16\xfe\xf2\xbe\x54\x23\xb8\x7b\x7d\xcd\xba\x69\xda\x70\xd7\xc2\x15\x8d\x15\xd3\x2d\x13\x98\xe9\x2d\x0b\x56\x78\x0b\xe6\xaa\xec\x5e\xb1\x96\x37\xa6\xff\x84\x15\x33\xf8\xfd\x9e\x2b\xa6\x99\x2a\xc1\x15\x6b\x2f\x98\xbd\x38\xee\xbd\x5c\xc6\x51\xd2\x2d\xcb\x75\x2b\x85\x6d\x1c\x95\x86\x9d\x8d\xdc\x71\xa3\xec\xba\x4f\x44\xc3\xa3\x7f\x97\xc7\xb6\xc3\x0d\x61\xfb\x3e\x71\xd2\x33\x70\x85\x81\xec\x0b\xab\xb1\xb5\x3a\xbe\x65\xaf\xe8\x4a\x26\x5d\x78\xca\xac\x1d\x74\xf2\x01\xd8\xee\x3f\x88\x08\x44\x49\xba\x2e\x36\xd1\xbc\x10\x17\x14\x8c\x0b\x6c\x50\xc1\x88\xc9\xe3\xd8\xb4\x3d\xa1\x53\x60\xe3\x06\xfc\xc3\xbb\x4e\x5c\x17\xb6\x71\x59\x98\xb8\x97\x20\x93\x34\xe1\x75\xa2\x15\x95\x8b\x22\x4f\x6a\xc0\xeb\x02\x9d\x7b\xb3\xdd\x54\x8e\xd8\xba\x8f\x37\x04\x89\xd4\x40\x11\x33\x8c\xb9\xaf\x7d\xe7\x02\xb1\x3a\x16\x28\x2e\x00\x9f\xf5\x86\xd8\xe0\x2d\x81\xe2\xb9\x41\x1f\xfa\x58\x0a\x14\xcf\x2c\x10\x77\xc3\xe3\xec\x20\x63\xc2\xf0\xd7\x2c\xf4\x77\x88\x8a\x6f\xe1\x53\x2d\xb8\x23\x0b\xb4\xe3\x51\x1b\xfa\x64\x1c\x6f\x78\x83\x9b\x12\x13\x1b\x55\xa1\x95\x31\xbe\x01\x1b\x94\x37\xda\xe5\x9d\x26\x4e\x5a\x6f\xf8\x71\x6f\x44\xdc\x05\x37\x66\x7a\x75\x6d\x10\x33\xaf\x72\x3c\xc5\xa4\xc6\xd4\xaa\x20\xac\x79\xb8\x64\x93\x57\x91\x8f\x6f\x0c\x95\xf0\x53\x49\xc5\x8e\x51\x0c\x49\x8d\xd5\xec\x06\xaa\xc6\x8d\xae\x04\xe3\x17\xe3\x1b\x56\xfe\xa1\x10\x9f\xd4\xcf\xde\x90\xb0\xf2\x9d\x49\xef\x0d\x49\x7d\x39\x36\x5e\xbc\xb0\x4b\xb5\x4f\xf0\x26\x1b\xd2\x7a\x83\xf3\x1d\x76\xc7\xcd\x75\x55\x57\xa3\xb9\x40\xbb\x2f\x69\xd3\x66\x6b\xc9\x13\x7f\x29\xec\xab\xb9\xd9\x47\x7b\xf7\x70\x65\x6e\xe0\xd0\x24\x5f\xda\x0c\x37\xcb\x97\x1d\xd3\x9a\xaf\x34\xcd\x6e\xc3\x5f\x7f\x9e\x66\x5b\x3b\xd3\x7c\x6e\xd2\xe1\xa3\x03\x1a\xde\xc5\xd4\x79\x14\xdd\xd5\x27\x71\x57\xd4\xdf\x76\x6a\xea\xa1\xe5\x5d\x8e\x80\x63\x52\x4a\x8a\xaa\xa3\x3c\xeb\x37\xd5\x79\x02\xb5\xde\xd6\x81\x87\x75\xbf\x8f\xe4\x44\x4c\xe1\x6d\xdc\x95\xc7\x76\xa3\xb2\xb8\x16\x8f\x44\x1d\x31\x52\x0c\x06\x58\xcd\x6b\xa2\x9a\x9a\x1a\x61\x43\x30\x7c\x4b\xe3\xe6\x16\xd9\xec\x13\xcd\xf7\x57\xd9\xba\xdc\xcf\x78\xbe\x5f\x52\xe9\xf9\xf3\x59\x65\x6d\xf6\xc7\xed\xe5\xd5\x95\xfe\x05\x37\xba\x17\xe4\x27\xe0\xfe\xf6\xe4\x7a\x75\x5e\x2c\xfb\xfd\xb8\x84\x1f\xed\x8c\x84\x49\xed\xcc\xf8\x38\x40\xcd\x98\x92\xb4\x0a\x5a\xac\xf9\xa2\xe6\x4e\x77\xb4\x15\x6c\xc8\xa5\xf7\xec\xef\x5a\xaa\x73\x6c\xc7\x36\x76\x1d\x62\xb5\xc6\x7f\x5f\x89\xbd\x83\x87\x74\xd8\x86\x08\xc3\xf4\x51\x30\xb1\xc7\x93\x5a\xfa\x9a\xfa\x1f\xdb\x6d\x6f\xd4\x72\xfd\x92\xf6\x86\x24\x86\x8b\x2d\x66\x3c\xe2\xfd\x3e\xe2\x89\x95\xd6\xa6\xea\xa2\xde\x75\x35\xf2\xe4\x13\xbd\x26\x1c\x57\xf5\x28\x8b\x96\x3f\x15\xd9\xef\x33\xe4\xc9\x91\x89\xc4\x44\x40\x1a\x01\x01\xad\xab\x98\x35\x2b\xa2\x2c\x8d\x37\xdc\x44\xfe\xae\xc5\xde\x1f\xe8\x7c\x49\x67\xb2\xdf\x37\x3f\x14\x3d\x77\xec\xfd\xbe\x93\x0f\x66\x97\xf0\xa8\x67\x26\x55\x47\x32\x6b\x1e\x55\x1d\xf2\x41\x95\x77\x92\x76\x44\xd3\x35\xa2\x18\x1f\xe1\x23\x67\x0e\x09\x25\x14\x99\xe7\x02\x7c\xd6\xaa\x01\x5e\x6b\x3f\x52\xed\x0f\xb3\x10\x88\x93\x9a\x0f\xc2\x60\xfc\xf0\xaf\xee\x4f\xe0\x31\x4b\x60\x2b\x2a\x05\x5c\x6a\x0e\xdb\xad\x0f\x63\xe5\xdf\x59\x29\x20\xfe\xab\xb5\x00\xee\x96\xfb\x2f\xf4\x8b\xdb\xcd\x71\x53\xb3\x01\xf3\x5a\xb4\xd5\x62\x98\x08\xc2\x61\x37\x20\xee\x9b\x5d\xfb\xb5\xe1\x2c\x78\x03\xd9\x13\xa9\x85\x0f\x97\x8a\x78\x2d\xeb\x21\xcc\xc8\xaa\x45\xca\x6f\x17\x06\xd9\xf0\x68\x3e\xb8\x2f\x7d\xb4\xdd\x54\x75\x49\x05\x52\xb0\x13\xd4\x73\xf1\xf1\x94\x1f\x5e\xff\x6f\xab\x8a\x03\xe0\x8a\xc7\xb2\x1e\xfe\xcc\x8b\x5b\xd2\x45\x92\x6f\xb2\xf5\xb1\x1a\xc9\x9b\x6c\x3d\x6e\xb8\xa7\x47\xb3\xb6\x0f\x59\xc3\xae\xa7\x9a\xaf\x47\xf6\x47\x69\x9a\xbe\x34\x45\x9c\x6a\x82\x05\xf1\x5a\x2b\x75\xc2\x33\xc9\x2e\x69\x34\x2b\x72\x3a\x8d\x31\xb6\x5e\xd8\xa8\xbe\x75\xf7\xc2\x60\x4e\xbf\x22\x70\xbb\xd5\x87\x43\xa3\xa3\xc3\x2d\xb2\x52\x1d\x73\xc7\xa8\x06\x79\x2a\xde\xd3\x6c\x34\xaa\xf0\x9d\x87\xf2\xeb\x3b\x1b\x51\x0f\xaa\x02\x90\x58\xbf\xc6\x76\x1e\x28\x7a\xc7\x69\xe2\x5f\xa6\x53\xb3\xd0\x51\xc1\x9a\xb7\xd4\xbc\x66\x5d\xce\xd5\xf9\x3a\xee\x1c\x8f\x1d\x48\x74\xa2\x16\x50\xdd\x2c\xeb\x4d\xb9\x30\x47\x05\x90\x99\x09\x14\x48\xaf\x90\xdb\xf2\x73\xc6\x73\x53\x44\x2d\x98\x2f\x50\x5d\x20\x46\x44\x3d\x4f\x4c\x58\x65\xb5\xa6\xe0\x6d\x51\x1f\xbc\x7a\xcc\xb9\x76\x35\xef\xdd\x08\x69\xeb\x46\xd8\x6e\x7b\x9d\x79\x98\x1d\xec\x8d\xd4\x2e\x77\x72\x93\x72\x91\xad\x1a\x45\x02\x47\x00\x98\xb7\xb6\xd0\x70\x4f\x8a\x6b\xbb\xdd\x3f\x66\xd2\xdb\xad\x16\x8c\x77\x31\x8e\x2a\x4e\x26\x53\xd2\x92\xb9\x63\xd2\x1b\x56\x9a\x4f\xe3\x48\x96\xde\xc8\x43\x30\x8b\x46\x7c\xc4\x45\x1a\x54\x86\xda\x6e\x77\xf0\x43\x3c\xed\x28\x42\xf5\x85\xe2\xad\xea\xda\x23\xca\xd6\xe1\x96\x8f\x83\x8a\x6e\x41\x3a\xeb\x3e\xea\x71\x1a\x14\x7f\x8e\x86\x9f\x26\x45\xff\x40\xb3\x4f\x6f\xb2\x75\xea\x12\xd4\x87\xa7\xea\xb7\x6a\xe0\xa5\x52\x87\xeb\x35\xa1\x9e\x10\xc3\x7b\x1e\x31\xe5\xb1\xd8\xb4\x7c\x1d\x93\x1d\xca\x00\x95\x73\x2e\xc7\xc8\xe4\xe6\x13\xbd\x1e\xc7\x17\x54\xc6\x44\x0f\xb0\xbb\x14\xd6\x25\x56\xb9\x59\xd1\xdf\xd1\x6b\x6c\xf5\x09\x49\x86\xd6\x88\xf9\x90\xaf\xdb\x31\x88\xa2\x0e\xdf\xa6\x5e\x5a\xba\x9f\x45\x56\x7e\x95\x7e\xa0\x9d\x5b\xfa\xa1\x5c\x0a\x46\xbb\x7d\x85\xba\x7a\x5e\x2c\x15\x6c\x83\x76\x82\xe6\xa1\x75\xfb\x73\xed\xb5\xfa\xac\x7b\xfc\x44\xaf\xbf\x5e\x77\xba\xb1\x9d\x7d\x41\x2f\x5f\xaf\x37\xdb\xdc\xce\xfe\x8c\x79\x44\x68\xe7\xbe\xb4\x2f\xd7\xd4\x2d\x9b\x57\x86\x80\xd1\xa3\xa4\x41\x40\xc5\x84\xbc\x6e\x00\x49\x9d\x7c\x9f\x71\x94\x41\x40\x05\x5a\xc8\x8c\x42\xbb\x60\xbd\x03\x5a\xff\xda\x61\xd8\x4e\x6e\x59\x0d\x08\x2d\x10\xd8\xeb\x5a\xc8\x66\xef\xa2\x2f\x58\x6d\xdf\x43\x10\xdf\x31\x23\x20\x0c\xf0\x97\xce\xc8\x0c\x77\x27\x2c\x95\x60\xba\xd0\x78\xd9\xfc\x5c\xb8\xd5\x4d\x99\xe6\xa7\xea\xde\x45\x33\xf4\x26\x5b\x63\xa3\x84\xea\xa1\xd4\x15\x71\x44\x51\xf0\xd2\xd5\x4f\xe3\x63\x2f\x6b\x2c\x90\x4e\xc4\x46\x75\xe0\x32\x5d\xd5\xbd\x4f\x5a\xaf\xf8\xe9\x0e\x6e\xab\x57\x85\xb4\xaa\x90\x9b\x9f\xb1\x08\x97\x55\xa5\x43\xa0\x5c\xff\x72\x31\xfc\xac\x8b\xe1\xe7\xe1\x96\xbf\x23\xfe\xf8\x32\x1c\x61\xa1\xde\xd0\x11\x58\x3d\x6e\x5b\xa4\xc5\xf5\x17\x70\xcc\x60\x56\xbf\x70\xcc\x7e\xe1\x98\xfd\xc2\x31\xfb\x85\x63\xf6\x0b\xc7\xec\x17\x8e\xd9\x2f\x1c\xb3\x5f\x38\x66\xbf\x70\xcc\x7e\xe1\x98\xfd\x63\x71\xcc\x4e\xa8\xac\x39\x66\xea\xe3\x3f\x81\x63\xf6\x0b\x27\xeb\x17\x4e\xd6\x9d\x9c\xac\x2c\xcf\xff\xc6\x0c\x24\xe8\xe1\x96\x11\xfc\xc2\xc5\xfa\xa7\xe4\x62\x9d\x50\xd9\xe2\x62\x29\x34\xf7\x0b\x17\xeb\x1f\x1c\x59\xff\x9c\xf3\xfe\x77\x3b\xd3\x3f\x9f\xb3\xa4\xa1\xb1\x73\x05\x7f\x09\x67\x09\x38\x45\xf7\x8c\x2a\xeb\x76\x5d\xfe\x53\xf0\x3b\xfe\x2b\x33\xb6\x7e\x06\x9d\xa6\xdf\x31\xa7\xd9\x45\xda\xc1\x0a\xf0\x5c\x63\x15\xa1\xde\x71\x4b\x73\x42\x1d\xb0\xa6\x0b\xfb\x51\x23\x8d\x94\x76\x11\x49\x6a\x4a\xa9\x5e\x5c\xb6\xfa\xf0\x08\xc1\x26\xcb\x87\xd4\xba\xf6\x24\x4b\x1d\xb2\x30\xb0\x44\xca\x34\x7b\xf2\xf0\x58\x8e\xcd\x23\x96\x1d\xdf\xcd\xc4\x91\x84\xe3\x31\x83\x47\x83\x79\xf0\xa7\x3b\xd0\xb2\x79\x0a\xb4\xf0\xb2\x49\xc5\x38\xb8\x89\xf6\xf9\x90\xd3\x59\x21\x32\x49\x71\x99\xb6\x93\xdc\xb4\xf6\x80\x79\x61\x4f\xc9\x26\xa5\x66\x56\xfb\xa3\xa3\xcd\xd3\x74\x78\xb4\xd9\xdf\xc7\xa8\x48\xe9\x64\x33\xc5\xfd\x3e\x2a\x53\xa4\x26\x5b\xa0\x12\x8f\xb3\xa7\xea\x87\x6a\xa6\xc4\x63\xf8\x81\xf1\x76\x5b\x33\x3c\xb2\xa7\x0f\xfb\xfd\xb2\xdf\x0f\xc3\x81\xae\x47\xca\x8a\xb0\x9d\xde\x67\x5a\xbc\xe1\xaf\xcb\x19\x75\xc8\xad\x32\xfc\x20\xc2\xdc\x33\x33\xa5\x84\xa5\x06\xff\xd7\x10\x12\xc2\x9a\xea\xdd\x22\xb3\x8b\x33\xc8\x39\x3b\xab\xf1\xac\x01\xb1\x7b\xd4\x31\x80\x57\x55\x53\x82\x38\xa8\xaf\xe2\x7e\x5f\x22\xef\x91\x4b\x38\x26\x0c\xd2\xd4\xd5\x45\x2b\x84\xf7\x38\x9a\x18\xc3\x3d\x83\x3c\xa7\xc4\xc3\xcf\xea\x8c\x79\x3d\xc4\xe6\xee\xc7\xc6\x05\x10\xf3\xc0\x7e\xaf\x71\x06\x0a\xe3\x45\x94\xb9\x33\xb2\xe7\x1d\x97\xcc\x84\x18\xbc\xa9\xc8\xa6\x71\xfb\xe6\x88\x92\x12\x57\x7b\xa1\xe3\xb6\x81\x4a\xcb\x46\xf9\x85\x2b\xdf\x3e\xb0\xcb\x9a\x4c\x81\xf9\xf5\xfb\x28\xd8\x68\x1a\x40\x69\x7a\x41\x80\xdd\x42\xe2\xc9\x34\xc6\x55\x00\x23\x2c\x77\xd7\xe4\x85\x64\xf3\x6b\x0b\xa1\xcf\x17\x19\xbf\xa0\xae\x29\xbd\x76\x33\x30\x66\x30\xe2\x91\x3d\x8f\x29\xe2\xd9\x7c\xce\x2c\xc7\xc7\xf1\xe5\xd4\x2c\x44\x6a\x78\x61\x64\x66\x18\x41\x02\x5b\xcf\xd3\x7a\xd0\x35\x5f\xd7\x55\x84\xcb\x05\x2a\x32\x22\xa0\x1a\x9c\x32\xc2\x7d\xde\x06\x74\x5d\x20\x3d\x06\xdc\x79\xfb\x67\x2e\xe7\xee\x2b\x17\x38\x6b\x5f\x24\xc5\x01\x3d\xe9\xfb\x88\x86\xbe\xba\xa3\xbc\x9d\x15\x6a\xd1\x6d\x4c\x6e\x7c\x86\xd7\x30\x4c\x74\x47\xd2\x93\xf6\x56\xf7\x68\xd9\x6c\xff\x97\xb6\x6e\xaa\xdd\xa7\x87\x13\x2a\xef\xd9\xba\xf0\x68\xfc\xfb\x8e\xfd\x67\xb4\x6e\xaa\x69\xeb\x37\x80\xda\xb3\x33\xaa\x0e\xcd\x59\xb6\x91\xc5\x19\x5b\x29\x70\x39\x3b\x6b\x9c\x2d\x8f\x14\xf3\x08\x31\x4e\x32\x52\xa6\x72\x32\x9c\x92\x4d\x2a\x27\xa3\x29\x59\xa6\x72\x72\x38\x25\xf3\x74\x48\xf2\x74\x32\x3d\x9a\x3f\xb1\x57\xeb\xd1\x7c\x30\xc0\x59\x5a\x4e\xe6\x53\xc2\x26\xd9\xb4\xdf\xcf\xb5\xfd\xbc\xfa\x98\x0c\x15\x99\x39\xc9\xa6\xe9\x10\xac\xf8\x79\xc4\x78\xb4\xc1\xf7\x92\xcb\x6c\x08\x07\x67\xaf\x13\x3e\x4d\x37\x13\x3e\xc5\xd0\xc2\xac\xdf\x9f\x21\x89\x8f\x72\xdb\x3d\xce\x93\x72\xc1\xe6\x12\x79\x4e\x65\x0a\x9f\x7f\x59\x90\xe5\x76\x3b\x99\x62\x22\x10\xf6\x89\xba\x7a\xba\x94\xc8\x74\x78\x24\x9f\x14\xb6\x4d\xa9\x28\xcf\x9a\x2a\x2d\x26\x72\x4a\x20\x32\x6d\x99\x8e\x8e\xca\x27\xd6\x39\xe8\x51\x69\x29\xd4\x4d\x2a\x26\xe5\x74\x4f\x61\x44\x36\xd9\x4c\x01\x23\xf4\x46\xb8\x52\xb8\xa1\x48\xca\xf5\x92\xcd\x28\x92\xfb\xfb\x64\x84\x09\x4d\x33\x94\x25\x65\x2a\xd4\xe2\xb8\xc7\x0c\xad\x34\x9a\xb9\x51\x77\xed\xcd\x70\x3c\xac\x48\x01\xbe\x0f\x6a\xe1\x99\xbe\x5d\xf9\x44\x4e\x2d\xdf\x5a\xfd\x4e\x0c\x1a\x30\xcf\x2a\x95\x94\xde\xb0\xb1\x24\xcb\x71\x6f\x44\x4c\xe6\xf8\xa6\xaa\xe3\xdc\xaa\x4a\x9a\x4d\x6f\xeb\x12\x41\xea\xdf\x19\x78\x3f\x55\xb3\x75\x69\x55\x96\xac\x52\x4a\xb2\x64\x96\x72\x92\x25\x79\xda\xc6\x12\x59\x02\x42\x41\xec\xd8\x82\x1d\xd8\x96\x21\x60\x16\x15\xae\x48\x96\x88\xb4\xf9\x54\xe8\xca\x04\x2d\x69\x6b\xc8\x5a\xcb\x89\x3d\xcd\x2e\x76\x91\x2e\xee\x21\xeb\x95\xb5\xa8\x29\x36\xa8\xea\xb6\xa3\xb8\x03\xa3\xa9\xe1\xca\xb4\x43\xf2\x8c\xfa\x12\x22\xc3\x66\x88\x62\x4c\xbe\xeb\xcb\x5a\xca\xc1\xe6\xe8\x91\xca\xad\x89\x48\x4b\x81\xf7\xfb\xea\xff\x49\xdd\x53\x4b\x34\xd2\x12\x1c\x00\xd1\xa1\x9a\xcb\x12\x81\xc4\xae\xa1\x0b\xf5\xea\x03\xbb\x9f\x0e\xfa\x30\xd2\xba\x0a\x93\x43\x18\x90\xf1\x91\xee\xc9\x5c\xdc\xf9\xd7\xc6\x40\x59\x92\x23\x45\x73\xb9\xe9\x7a\x7c\xe7\x89\x9c\x56\x20\x02\x30\xb1\x62\x3d\xfe\xbf\x5a\xa3\x90\x27\x8f\xd6\x6c\x8f\xbb\xa8\xcc\x19\x28\x56\x01\x3c\x47\x1d\x04\xab\x71\x49\x12\x67\x31\x91\x98\x48\xd5\xdd\x0e\xfb\xda\x7b\xcb\x7f\x55\x1b\xeb\x34\x8e\x0d\xed\x64\x1c\x68\x5c\xd1\xf3\x75\x36\xfb\xf4\xaf\x65\xc1\xd7\x01\x4c\x7a\xcf\x62\x0a\xf9\x90\x4d\x5a\x6a\x9c\x04\x4b\x56\xe2\x3d\xfd\x99\x4a\x52\xa6\x65\x52\x02\x7e\xc0\xce\xd1\xc9\x32\x1d\x1e\x2d\x6b\x0c\xbb\x1c\x0c\xb0\x44\xe5\x64\x39\xb5\x04\xce\xa6\x89\xe9\xd0\xe4\xf0\x3b\x72\x68\x50\x1c\xba\x39\xfc\xae\x23\xde\x11\xe8\x3b\xf5\x76\x33\xe7\x39\x15\xe8\xf0\x7b\x5c\x91\xc3\xef\xc3\x72\x20\xc2\x48\xb1\x17\x3a\x87\xd6\xbb\x8d\xa2\x95\x92\x75\x8a\xf8\x0e\x7f\x37\xcf\x96\x4b\x14\xeb\x97\x54\x8c\xf1\x84\xbb\x07\xcb\x34\x29\xc5\x2c\x11\x14\x1c\xf3\xa0\x83\x8f\x07\x93\x3f\x1d\x4c\xbf\xf9\xd5\x01\x89\x0f\x62\xec\x8f\x10\xb1\xf4\x8c\x66\xec\x2c\x27\x85\xfe\x21\xac\x9f\x70\x58\xe1\x67\x1b\x59\xbc\x82\xf5\xfd\xf1\x9a\x67\x2b\x36\x0b\x51\x8c\x05\x8a\x75\x1b\xd7\xfc\x2c\x1e\x50\x5c\x11\x86\xe2\x7f\xb9\x58\xb2\xd5\x8a\x8a\x03\xa0\x87\xb4\x3d\xe9\x34\xe4\x37\x56\xa0\x5f\xff\x1a\x38\x8b\xaa\xd2\x67\x30\xdd\x3b\x98\x97\xab\xdd\xc5\x1f\x0e\x6d\xf1\xf3\xac\xa4\x8f\x1f\xed\xff\xb9\xbc\xa5\xf0\xc8\x16\x9e\x2d\xd9\xfa\xbc\xc8\x44\x7e\x4b\xe1\x43\x5b\x78\xbe\xcc\xe4\x2d\xe5\x1e\xda\x72\x2b\x4e\x57\x05\x67\xa5\x3c\x58\x6d\x96\x92\xed\x6b\x53\xb9\x5d\xd5\xbe\xb5\xd5\xf8\x85\xc8\xd6\x8b\x04\xfe\xbd\xa5\xfc\x77\xb6\xbc\x89\x18\x47\xf3\xfd\x19\x50\xe2\x5a\xbf\x68\x47\xb5\x47\x7a\x7d\x80\x70\x66\x28\xbe\xce\xf2\x3c\xdb\x5d\x7a\xf4\xd0\x38\xd8\xfa\xce\xc7\x05\x06\x06\x34\x44\xa4\xc6\x41\x32\xf1\x53\xf3\x54\x43\x6d\x55\xe1\x23\xf4\xd5\x0f\x32\x36\xe7\x4d\x11\x43\x93\x5b\x69\x65\xf3\x6a\x40\x87\x78\xaf\x86\xea\x1d\xa4\x57\x8d\x22\x8f\x27\xd3\x44\xc7\x82\x40\x14\x8f\x27\xd3\xda\x0d\x2b\xe3\x67\x99\x10\xd9\x75\xca\xc1\x07\x8a\x7a\x9c\x0b\xc0\x7f\x09\xcd\x66\x0b\x2f\xb5\xa8\x53\xcf\xb2\xf2\x9a\xcf\xbc\xbc\x4c\xe7\xcd\xf4\x53\xcb\xcb\x28\x1b\x19\x9d\x7a\x1b\x9d\xad\xa0\x4f\x52\xee\x65\x30\x9d\xc1\xf8\x9f\x9b\xed\x2d\x75\xba\x5a\xac\xb3\x6c\xb9\xf4\x72\x66\xa6\x29\xd6\x48\x9d\xdb\x54\x9e\xb7\xca\xe7\x75\x8e\x97\xba\xd0\xa9\xcb\xac\xf4\x7b\x5d\xeb\x54\x9e\x7d\xa2\x7e\xe1\x95\xbe\x27\x7c\x86\x5e\x97\xed\x48\x7d\xb6\x23\x9b\x83\x03\xa9\x34\x4d\x9d\x84\x79\xd8\x50\xd3\xd2\x8c\x8e\x2e\xce\x89\x27\xfa\x9a\x8f\x9e\xa9\xbd\x9a\xc6\x69\x9a\x76\x2e\xa1\xa6\x1c\x99\xe2\xaa\xd6\x44\x98\x50\x70\x58\x0f\x7a\x22\xd6\x03\x7d\x8b\x28\x60\x88\x02\x55\xcd\xd5\x2f\x73\x73\x8c\x3c\x7f\xbd\x48\x58\x00\xe2\xfe\x43\xb3\x68\xcd\x99\xf0\x74\x78\xc4\xeb\x59\xf3\xc1\x00\x8b\x54\x02\xb9\x4d\xb8\x77\x99\x77\xb5\xb7\xd8\x1c\x89\x54\x6c\xb7\x3c\xe1\x45\xb1\x26\xbd\xf6\x48\x05\xb2\xfa\x02\xc3\xbd\x5e\x43\x8d\x42\x35\xcf\xa6\x84\x79\x27\x5e\x92\xa2\x7e\x85\x1d\x0b\x24\xf1\x78\x30\x60\x4f\xdd\xf4\x8f\x85\x26\x30\x0a\x13\x14\x94\x6b\x1f\xde\xa8\xa5\x2f\x25\xbc\xc7\x4b\x2a\x11\x26\x2c\x1d\x1e\xb1\x7a\x7a\x6c\x30\xc0\xdc\xf8\xf5\x32\x83\xf0\xa2\xac\x36\xf4\x92\x08\xc8\x9a\xf4\x04\x24\xc2\x7b\x6a\xde\xcd\x67\x31\x57\xf7\xa9\xfa\xd1\x09\xee\xed\x08\x73\xd0\x5a\x72\xe0\x8f\x00\x1a\x3c\x10\xd0\x2f\x02\x0d\x00\xb5\x42\xc9\x08\x63\x62\xe6\x87\xef\x68\xdb\x46\xe0\x87\xc2\x4d\x55\xa5\xd6\x5a\x04\x57\x22\x15\x88\x13\xb5\x0c\xa1\x35\x98\x69\x50\x91\xa9\xf4\xb0\x91\x04\x6c\x74\x0b\xa7\x9e\x9a\xf0\x09\x13\x31\xf5\x94\x91\x9a\xdc\x97\xe6\xd0\x14\xfc\x09\x00\x3c\x5b\x37\x54\x31\xbf\xe7\xee\xba\x6d\xed\xf7\xcd\x46\xef\x9a\xdf\xe2\x1e\x47\x81\xcd\x91\x3b\x0b\xf8\x46\xa4\xea\xa7\xf6\x16\x57\x75\x4f\xc6\xda\x67\xd9\x4f\x6a\xee\xec\xb4\x2e\xb2\xaa\x8b\xf8\x18\xde\xf9\x96\x03\xd3\x77\x72\xaf\x0b\x65\xf4\xad\x9a\xbf\x40\xc3\xf0\xc5\x52\xf3\xb8\x40\xe8\x0a\x46\xf6\xac\x3c\x5b\x66\xfc\x62\x93\x5d\x80\x60\x04\xd2\x96\xec\x5c\x64\xe2\x3a\x44\x37\x09\xed\x61\x99\x95\xf4\xcc\x94\x02\xaf\xc8\xaa\x08\xae\x4c\xed\x56\x81\x50\x33\x0c\xc9\xe4\xac\x94\x74\x5d\x62\xb8\x8d\x9a\xde\x5b\xd4\x0b\xa2\xae\x05\x1c\x07\xb2\xf1\xa3\xd3\x76\x2a\xf1\x5a\xcc\x90\x16\xa8\x1e\x24\x92\x98\x70\xe3\xdd\x84\x71\xea\xda\xaa\x0c\x3b\x8d\x56\x7b\x21\x1f\x3c\xe6\xbd\x0c\x6a\x78\x17\x2f\x3e\xaf\x51\xfc\xa7\x83\xed\xc1\xaf\x62\x12\x5f\xc4\x0a\xbd\x7a\x39\x07\x7f\x42\xc7\xe3\x8f\x7f\xc2\xc7\x07\x9e\x5f\xf4\xda\x7f\xb5\xa3\x67\x05\x89\xe3\xfa\x8b\x93\x18\xea\x7d\x2c\xf1\x37\xe0\x0d\xe7\xe3\xc7\x72\x10\xe3\x6a\xaf\xb1\x82\xf5\xa8\x44\x53\x51\x10\x4e\x52\x27\x02\xc8\xef\xe8\xf5\x55\x21\xf2\x28\x7e\x30\x10\x83\x07\x31\x84\xfc\xe0\x85\x51\x06\x04\x67\x0a\x4b\x45\x8f\x45\x8c\xcb\x22\x7a\xa0\x7a\xf5\x7c\xef\xa8\x26\xab\x06\x9c\xb5\x60\x2c\x00\x50\x56\x84\xdf\x41\x61\x0a\x83\xf9\xa2\x3c\x7c\xe3\xdf\xb0\x32\xe4\x0f\xc9\x8a\xf3\x3a\x98\xaf\x2d\xaf\xd9\x1f\xe1\xc9\x70\x4a\x58\xb7\xe4\xb0\x5b\xf6\x10\xef\x39\x49\x31\x61\x98\xf0\x7e\x1f\x9c\x6b\xeb\xde\x6f\xd4\x25\x35\x96\x84\x17\x99\xb8\x28\x43\x52\xb6\xc0\x53\x53\x55\x27\x40\x04\x9d\x41\x75\x73\x09\x49\xac\x13\x17\xa2\xe0\xec\x2f\x74\x2c\x08\x2b\xcf\x6c\xf5\x5d\x02\x3c\x4b\x11\x58\xc5\x39\x20\x0a\x6e\xaa\x2e\x19\x40\x80\x5e\x19\x7b\x57\xa3\xd8\xb9\x60\x87\x21\x9d\x59\x77\x7c\xed\x62\x70\x87\x69\x5a\xf5\x15\x61\x5d\x11\xc6\x2f\x8b\x4f\x5d\x4f\x9c\xee\x31\x6e\x9b\x11\xb8\xaa\xd4\x8d\x4b\x9a\x02\x92\x10\x51\xeb\xea\x1a\x5a\xfa\x7d\xb1\xbc\x56\xa4\xde\x76\x8b\xd4\xf9\x5c\x0b\x3a\xcb\x9a\x2e\xc5\x2b\x42\x21\xe2\x53\x99\x4e\xa6\x84\x26\xb3\x05\x5b\xe6\x82\x72\xa8\x60\x3f\xd2\xc9\xf4\x16\x56\xcd\xb2\xc8\x72\x9a\xdf\x93\x5b\x4a\x93\xe5\xad\x2c\x58\x76\xff\x86\x98\xf6\xdf\xde\x9a\x69\x3a\x52\x18\xe7\x76\x5c\x7e\xe4\xd3\x3f\x40\x6e\x04\x0f\x5e\x43\xce\xd6\x10\x3b\xf4\x40\x5e\x51\x6b\xb5\x7a\xbf\x79\x15\x50\xaa\x08\xbd\xe5\xf5\xa3\xc7\xa7\x10\x6f\x2b\xbd\x5e\x64\x5c\x16\x2b\x7b\xa8\x2e\xa8\x3c\x73\xbe\xd2\x02\xab\xc3\x10\x3e\xd6\x1d\x8c\x0b\x84\x8f\x4d\xed\x31\x45\xf8\x58\x1a\x45\xe3\x4a\x1d\x1e\x5e\xe4\x74\x4c\xd5\xaf\x73\x51\x5c\x95\x54\x8c\x99\xfa\xb0\xe5\x0b\xf5\xf1\x29\x13\xab\xac\xdb\xc7\xee\x39\x79\xab\x61\x5f\x86\xba\x91\xb3\x33\xf0\x9b\xe3\x69\x42\x08\x74\x38\xc4\x44\xa0\xd1\x10\x03\x0b\xe2\x8b\x70\x63\x44\xc1\x0d\x99\xc2\xe6\xeb\xd3\x97\x3f\xfd\x76\x21\x7f\xfd\xf0\xe1\xe2\xcd\xe3\xab\x39\x17\x9b\xdf\xbc\xbe\x78\xb6\x79\xfc\xd3\x7f\x5c\x5e\xff\xfa\xcd\xef\xd7\xee\xda\x5d\xbb\xe0\x7e\xe9\x8d\xb9\x4b\xc1\x1f\x6c\x1a\x60\xb2\x69\xdd\xfb\x3b\x5a\x3e\xae\xdb\x40\xd2\x6b\x1e\x8f\xd5\xad\x41\x51\xab\x57\x9c\x9c\x99\xb2\xf6\x2a\x3f\x6b\xf5\x4f\x6b\xd2\x48\x6a\x3e\x60\xab\x09\x75\x71\xab\xdb\xdb\x77\xe1\xde\x68\x4b\xb5\x7d\xff\x03\xe0\xf1\x9c\x40\xec\x20\xd0\x23\x9f\xb2\x41\xac\xab\x67\x70\x33\x2f\xc7\x02\xfd\x1a\x13\x85\x38\xc6\x02\x8d\x46\x10\x79\x6a\x46\xcb\x72\x2c\xab\x8a\x14\xbb\xaa\x3c\xfa\xce\xd5\x79\xf4\x7d\x5d\x47\xa0\x6f\x87\x80\xf1\x77\xd5\x3b\x1c\xb9\x7a\x87\x87\x8d\x7a\x23\x55\xcf\xc8\xff\x4a\x9c\xd4\xb0\x8b\xf0\x71\x81\xf0\x98\x27\x35\x6c\x23\xa0\x4d\x2d\x44\x23\x7c\x9c\xd9\x02\xea\x18\x20\x7c\xcc\x10\x1e\xdf\x54\xb8\x05\xa1\xa3\x21\xf6\xe1\x52\xa1\xcc\xfb\x51\x8a\x43\x4d\x28\x1e\x62\xa2\xfd\xbb\x75\xee\x74\x8e\x8c\xe3\xe0\x92\xf2\x06\x53\xdf\x53\xb7\x8b\x46\x69\xda\xd1\xa7\x38\x76\xb5\x10\x25\x37\x15\x1e\x1f\x06\x0a\xf5\xfb\x2c\xf1\xee\x47\x24\x70\xab\x1a\x11\x78\x8c\xb4\x94\xd5\x5c\xda\x46\x4d\x4e\x03\x53\xe1\x31\x91\x9b\x17\x13\x90\xf7\x37\xeb\x4c\x4a\x2a\xf8\x58\x12\x1b\xa5\x7a\x2c\x2a\xdd\x44\x65\xa2\x43\xb4\xb8\xc2\x88\x76\x88\x4a\xe0\x8d\xea\xb8\x4a\x94\xe4\x99\xcc\xc6\xb2\xd2\x2e\x37\x45\xe8\x48\x52\xc7\xa2\x08\xba\xa9\xf4\x68\x46\xb8\xd5\xd4\xf8\x70\x22\x69\x29\x8d\x2f\x4c\xc3\x60\xd9\x11\xb6\xd7\xce\x03\x28\x57\xef\x0c\xdc\x58\x75\x8a\x00\xa6\x2d\x2a\xf2\xee\xed\xd9\xc9\xf3\x17\x6f\x9f\x7d\x78\xf5\x6e\x1c\x9f\x9d\x79\x9f\x67\x67\x31\xe4\x9e\xbe\x78\x6f\x73\x4e\x5f\xbc\x37\xa9\x2f\xfe\xed\xc5\xf3\x9f\x4e\x5f\x98\x0c\xf3\x65\xf2\x7e\x7c\xf1\xf2\xd5\x5b\x9b\xa5\x3f\xce\xce\xe2\x16\xe9\x08\x6b\xac\x60\x25\xf5\x86\x5a\x35\x95\xfa\x3a\x0e\x24\x4b\x2a\x4f\xd9\x8a\x16\x1b\xd9\xa4\x5d\x2d\x2e\xc7\xcd\x1b\xa9\x53\x1f\x34\x37\xef\xdb\x42\x66\x1e\xcf\x32\x4d\xd3\xba\x63\xfb\x92\xae\x53\x10\x25\x43\x90\xad\x40\x49\xb6\xdd\xf6\x24\xee\xf7\xbb\x35\xa4\xd7\x0a\x69\x57\xf7\x2c\x07\x74\x8a\xd1\xfa\x17\xf8\xc6\xcf\xd2\x67\x1b\xe8\xc9\x66\xa1\x66\x01\x63\x70\xaa\xf0\x52\xd5\xf3\xb6\x5d\x35\x15\x34\xe5\xa9\x87\x73\x5c\xff\x1c\xb3\xda\xf4\x40\xa6\xac\x82\x81\x84\x6a\xfb\xcb\x7a\xec\x7f\x8c\x0b\xcf\x78\x21\x2d\x14\x21\xa8\xa5\x24\x64\xa3\x28\xb6\x65\xda\x1b\x91\x59\xba\x3f\xf2\x15\x2d\xf0\xcd\x12\xb4\x8a\x10\xe4\x3a\xa4\xb1\x49\x4b\x4b\x90\x6e\xf0\x58\x55\x22\x1b\x87\x2b\x72\x84\xbb\xd6\x20\xbd\xa5\x45\x55\x19\x9a\xe3\xbd\x65\xda\x1b\x3a\x1e\x84\x4c\x37\x4e\x5e\x7b\xa4\xef\xac\x32\xdd\xc0\xa8\x8e\x06\x83\xd9\x13\x79\x84\xcb\x7e\xbf\x9c\xcc\xa6\x3a\xda\xce\x1e\x74\x58\xd7\xaa\x4a\xd0\xe3\xd1\x33\x68\x31\x5b\x44\x9a\xa6\xfe\x22\xd8\xfd\xf7\xd3\x8c\x61\x1a\x94\x2d\xb6\xdb\x9e\xc0\xfd\x7e\xa8\x8e\x68\xb4\x44\xda\x4d\xc0\x8e\x28\xf2\x5f\xaf\xb2\x6c\x00\x8b\xf0\x81\xc5\x2b\xd2\xcc\x76\x3a\x9d\x15\xb0\x11\xda\x8c\x0e\x40\xa6\xf3\x0d\xb7\xae\x05\x35\x1b\x59\xfa\xfc\x0b\x7c\x53\xf1\x84\xd3\xcf\xf2\x94\xcd\x3e\x05\x44\x77\xea\xfc\xc1\x03\x10\x05\x5e\x6a\x20\x93\x6c\x25\x3f\x1d\xe1\x9a\x57\x34\x3a\x12\x4f\xda\x05\xb4\x47\xc0\x89\xd8\x1f\x4d\xeb\x8b\x63\x22\xa6\x7b\x1b\x8d\xdd\x55\x8f\x7a\xfc\x98\x8c\x7a\xa9\xdb\xb5\xed\x76\xb9\xdd\x66\x28\xc7\x15\x59\x78\xaf\x51\xb1\xe1\x9d\x38\x45\xf3\x0d\xf7\x8d\x8e\xea\xb9\xe3\x8a\xf0\x44\x32\xb9\xa4\x69\x6c\xae\xe6\x98\xf0\xc4\xfc\x54\xa4\x1a\x4f\x28\xbf\x54\x04\x1a\x4f\x32\x71\x71\xa9\x00\x9d\x27\x97\x54\x80\x93\xc5\x38\xae\x3f\x4a\x5d\xa8\xe0\xe9\x5a\x95\xcd\xf3\xd7\xac\x94\x94\x53\x01\xdf\x05\x9f\x51\xfd\x63\x3e\x87\xbf\x3a\x88\x44\xa3\x8c\x4e\x7a\xb6\x5c\xda\xd4\x12\x92\xe9\x8a\x49\xf8\xb1\x16\x74\x4d\x79\xb3\x5d\x93\xf6\x8e\xcf\x9a\x6d\x2d\x5d\x13\x9d\x7b\x62\x32\x55\xe3\x3c\x67\x10\x90\xb1\xb9\x54\x2d\x04\x6b\x88\x1b\x5b\x36\x62\x1a\xc5\x96\x9b\xb5\xc2\xf0\xda\xc7\x25\x4f\x66\x57\x79\xb7\x93\xf8\x20\x86\xbc\x45\xce\xc4\xbd\xfa\x80\x92\x3b\x7a\xd8\xac\xb2\xf2\x53\x40\xc7\x74\x18\xa0\x2d\x51\x50\xb0\xd2\xe5\xf3\xc3\x55\xe5\x94\x27\xf9\xd3\x74\x78\xc4\xf7\xf7\x2d\xb7\x17\x98\x7c\x71\x12\x83\x82\xa8\x65\xd2\x22\x4e\x46\x78\x1c\x27\x26\x19\x35\xd2\x89\x82\xe2\xb1\x56\x80\x6b\x24\xef\xef\xe3\x0a\xac\x56\xc1\x10\x59\xec\xef\x1f\x09\x4c\x93\x0d\xd7\xaa\x2a\xaa\xb5\x10\xaf\xb3\x56\x28\x50\x74\xc6\x52\x52\x81\x3d\xba\x43\x7d\x23\x89\x3d\x26\xac\x02\xcb\x2e\xef\xd2\x32\x2e\x09\xc5\x2e\xaa\x2d\x05\x05\x1a\xc7\xba\x94\xd6\xe7\x72\xe3\xb9\xe9\x10\x6b\x1c\x13\xa6\xb0\x62\xd1\xa1\xe9\xf6\x47\x47\xc5\xd3\x74\x7f\xd4\xef\xf7\xd8\x51\x61\x97\x2e\x4b\x8b\xa7\xe9\xf0\xb8\x3e\xc7\xc5\x74\x4c\x15\x88\x20\x40\x0e\x1d\x4d\x83\x2c\xac\x11\xfa\xcc\xd6\x8f\x64\x11\x29\x72\xdb\x8e\x52\x9b\x79\x9e\x6b\x0a\x97\x5f\x94\x31\xde\xcb\xfa\x7d\x24\xd3\x6c\x10\x1f\xc4\x03\x49\x58\x1a\x1f\xa8\xfd\xc9\x92\xd9\x22\x13\xcf\x24\x1a\x3a\xcd\x1a\xc4\x8e\xe3\x83\x78\x1c\xc7\x78\x80\x64\x2a\x10\x47\x12\xb6\x4a\x22\x88\x21\x1d\x20\xc4\x7a\x3d\x08\x1e\xdd\x63\xd8\x44\xfc\x38\x88\x31\xde\x6e\xe3\x24\xae\x88\x4c\x78\x21\x56\xd9\x92\xfd\x85\x06\x9c\x28\xcb\x84\x95\xcf\xce\xcb\x62\xb9\x81\x10\x4a\x24\x33\xc3\x62\x88\x12\x85\x28\xcd\x88\x28\x0c\x83\xde\x73\x18\x45\x73\x18\x05\x44\x05\x8f\x93\x18\x13\xda\xef\x67\x5e\x38\x6c\x54\xb8\x99\x52\x35\xd2\x7a\x2c\x01\x16\x8d\x1e\x18\xad\xd7\x4b\xd5\x50\xfd\xdc\x93\xf3\xd7\xe1\xcb\xf9\x11\x23\xed\x12\xa9\x59\x76\x04\x19\x01\xbd\x93\x7b\x42\x83\x1a\x5e\x00\x14\xdc\x39\xc2\xfe\x4a\xa9\xf9\x08\xba\x04\xe3\xe3\xc6\xd3\xc6\x43\x10\xcd\xc7\x2e\xe8\x80\x51\x47\x90\xc4\xb1\x09\x0d\x0d\xea\x60\x47\xf5\xa9\xf3\x30\x88\x78\x9a\x0e\x5d\x49\x31\x55\x07\xdd\x39\x0e\x90\x4f\xc5\xf1\x44\x9d\x03\x2d\xa3\x93\x44\xec\xcb\xc1\x08\x57\x34\x75\xa7\x4f\xbd\x47\x4c\x64\xf3\x11\xc4\xde\x76\x19\xc2\xcb\x70\x07\x9e\xa5\x4d\xa8\x81\x77\x1d\x12\x8d\x94\x2c\x7d\xa3\x96\x6a\xc5\x38\x62\x56\xf9\xdd\xea\xb5\x61\x52\xa6\x19\xd9\xa4\xc3\xa3\xcd\x93\xec\x68\xa3\xc5\x1c\x6c\xb2\x99\xf6\xd2\xb4\x98\x6c\xa6\xf8\xa6\x4c\x37\x46\xca\xa1\xd5\x50\x8c\xc8\x67\x93\x96\x47\x9b\x27\xb6\x3d\xa8\xb9\xd4\x78\xc5\xc7\x64\x68\x99\x2e\x2d\x7d\x57\x98\x59\x97\xd8\xdf\x94\x0a\x22\x7b\xac\x15\xb8\x42\x0c\x92\x25\x5b\x31\x49\x45\x1a\x8f\x63\x6d\xd1\x02\xb1\x46\xef\x84\x17\x03\xf3\x31\x26\x01\x41\x69\x9c\xc4\x1e\x89\xa8\x01\xfc\x79\x91\x53\x00\x72\x22\xd2\x47\xbf\x4e\xd3\x54\x12\xae\x88\x41\xa6\xee\xfa\xc2\xdf\xd0\xe2\x69\x3a\x3a\xda\xdf\x2f\xd4\xca\x40\x49\xd4\x6a\xa3\xc0\x58\x53\xa6\x0c\xdf\xf0\xb4\x30\xab\x65\x82\x47\xa6\xbd\x91\x59\x0b\xb0\x8e\xe7\xc7\x42\x9f\xc8\x24\x56\x77\x84\x4e\x52\x09\x16\x26\x86\x10\x9a\x47\x26\xe7\x59\x49\x5b\x53\xaf\x25\x14\x0d\x86\xd4\xee\xb5\xd8\x33\xaf\x31\xb8\xe4\xcc\xdc\x60\x21\xa4\x3f\x3f\xa9\xae\xbc\xfd\x7d\xe9\xe6\xd7\x98\x9c\xac\xe7\x26\x52\x39\x18\xf9\xb3\xd3\x33\xea\xf7\x11\xdc\x0c\x5c\x65\xe3\xe6\x64\xe3\x7a\x62\x42\x4d\x4c\x51\xb7\x35\x27\x4b\xd4\x31\xfc\xbf\xb1\x82\x43\x9c\x02\xef\x12\x89\xd4\xe5\x0e\x5d\xe8\xf5\x7d\x57\x0a\x13\xa1\x56\x89\x7e\x96\x1d\xf8\xb8\x6d\x41\x6a\x28\xd8\x1f\x35\xd7\x85\x14\xe9\x90\x64\xfe\xba\x64\x7a\x5d\xbc\x38\xa5\xde\xb2\x64\x70\x8b\x3d\xfa\x75\x2f\x4d\x4b\xdc\x5e\x87\x6c\x30\xc2\xe4\xd1\x63\xf5\xc0\x3c\x86\x3c\x79\x2c\xd3\x6c\xac\x68\xd6\xa2\xdf\x47\x45\x3a\xc2\x63\x88\x6d\x2f\xe1\x4b\x5d\x03\x1a\x58\xec\x3a\x67\xf5\x3a\x7b\xcb\x29\xb7\x5b\xdd\xd3\x76\x3b\xd4\x0f\x0c\xf5\x55\xf4\xfb\xea\x81\xca\xd5\x05\xac\x7e\x88\xc1\xc8\x5f\x76\x08\xf5\x64\x64\xef\xf1\xb9\xc2\x4a\x71\x76\x1e\xd7\x0b\x8f\x8f\x77\xf2\xfa\x4d\x19\x60\xf6\xef\x92\x08\xc8\x27\x43\xb8\x75\xed\xba\x0d\x24\x26\xcd\x9a\xb7\x73\xae\x42\xbc\x2a\x8f\x73\xf0\x7c\xc1\x38\x05\x6f\xfc\xdf\x1e\x62\xf2\x82\x5f\x2c\x59\x09\x1c\xb7\x87\x98\xbc\x14\x94\x43\xe8\x85\x6f\x1f\x62\xf2\x1b\x2a\x56\x19\x57\x1f\x8f\x30\xf9\x71\xa3\x63\x32\x7c\xfb\x2d\x26\x6f\x0b\x71\x45\x2f\x98\xce\x7b\x8c\xc9\x7b\x26\x32\x09\x0d\xfe\x1a\x93\x9f\x3e\x89\x8c\x71\x93\xf9\x1d\x26\xef\x0b\xd3\xfe\xb7\xdf\x63\x72\xb2\xce\xb8\xfe\x7a\x3c\xc4\xe4\xc3\xa6\x2c\x75\xc1\xc7\x23\x55\x50\xc8\xcd\xc5\x46\x0f\xed\xf1\x21\xe8\xe7\x43\xbc\x30\x3d\xb4\xd7\x46\xb2\x3a\x56\xb8\xfa\x7e\x42\xdc\x9b\x3f\x66\x79\x9e\x8d\x05\x7a\x34\xc2\x04\xc2\xa4\xfd\xb0\x29\xc7\x02\x7d\x8f\xc9\x2b\x2e\xa9\x58\x0b\x2a\xa9\x50\x0d\x3e\xc2\xe4\x79\xc1\x25\xfd\xac\x7a\xfb\x16\x93\xd7\x5a\xdc\x3a\xd6\x62\xe0\x1f\x19\xf4\x64\x12\x7e\x8d\xc9\x4b\x9a\xc9\x8d\xa0\x2f\xd9\x92\x9e\xd0\x4c\xc0\xc2\x3c\x52\xe9\x7e\xc2\xe8\x7b\x4c\xde\x2f\x33\x39\x2f\xc4\x4a\xe5\x63\x62\x64\x91\x10\xc0\x4a\x15\x38\xc4\x64\x56\xf0\x4b\x2a\x24\x15\x6a\x5c\x8f\x1f\x62\xb2\xce\x44\x69\xbe\xbe\xc7\x64\xbd\xdc\x5c\x30\x0e\x5c\xd8\x11\x26\xe5\x82\xad\x20\x07\x13\xad\xac\xfa\x6a\x37\xbf\x8a\x27\x30\x79\xff\x65\x76\x4f\x02\xa3\xc9\x13\xe3\xf7\x14\x97\x3f\x3a\xd4\x5c\xd0\x6f\xd5\x6d\x09\x4b\x9c\x69\xd6\x68\x79\x9b\x72\x96\x56\xe5\x75\x38\xb5\x48\x2c\x07\x0e\x61\xb2\xd1\x92\x75\x5f\xeb\xc2\xd1\x6c\x34\x01\x95\xb8\x96\xfb\x95\xfa\x94\x49\xba\x1e\x20\x53\x48\x9d\xdc\x38\x7a\xb2\xbf\x1f\xc5\x03\x9a\x08\x9a\x95\x05\xc7\x95\xd4\xc1\xd6\x40\xb1\xad\x0c\xb3\x20\x9d\x5a\x89\x34\xdc\x4e\xfd\xb6\xb5\xca\x78\x1d\xc2\x54\xc0\x64\xc2\xbc\x47\x63\x8c\x9b\x88\x8c\x7f\x3a\x5b\x65\x33\x51\x94\xaa\xac\x6d\xcb\x0b\xd4\x9a\x8a\xe4\x8a\x71\x4e\x05\x11\x95\xb6\x5d\x16\xc0\x0c\x45\x4b\xdc\x0d\x13\x73\x32\xa3\x3c\x13\xac\x88\x66\xda\xca\xeb\x9c\x46\xcc\x41\x76\xfe\x91\xc7\x03\xe1\xc6\x33\xb3\x14\xc2\x47\x1e\x3b\x05\x03\x57\x3a\x6d\xab\xde\xc8\x14\x98\x03\x0c\x5b\xa1\x07\x06\xb3\x1b\x9e\xa3\x22\xf1\x58\x9f\xe4\xa6\x34\x63\x18\x53\x32\x93\x9f\xc7\xbe\x70\xc4\x58\x0a\x95\xe9\x1c\x70\xe6\x5e\x66\x39\xc3\x5a\xf3\x0d\x95\x0e\x91\xce\x6f\xbf\x93\x8d\xf8\x6e\x53\x8f\x17\x34\x1e\x90\x24\x60\x97\xbe\x57\x6b\x36\x8d\xcb\xc4\x97\x1d\x6b\xc8\x17\x56\x1b\xa0\x59\xdd\xef\x93\xd7\xc1\xb3\x9b\xf3\xe6\x78\xaf\x31\xef\xd3\x17\xef\xc9\x8d\xaa\x6d\xe6\x5b\x76\xe7\xab\x21\xb7\xbd\xd7\xc0\x91\x3a\xd3\x7b\x8b\xf0\x9e\x4c\x37\xc4\x9b\x0f\xa2\xa4\xdc\x6e\x6f\x2a\x92\xd9\xad\xf1\xaa\x87\x64\xbf\x46\x55\x84\xe4\xea\x05\x24\xcd\x32\xe6\x61\x48\xd6\x7a\x83\x68\xd2\x34\x3c\xf2\xef\x25\x43\x4f\x6a\x50\x3b\xd3\x81\xaf\xd9\xf9\x92\xda\xf1\x4b\x13\xfd\xe7\xbe\xd8\xe0\xb1\xc6\x06\x0a\x59\x16\xbb\x95\x68\x14\x02\xa0\xdb\x2d\xac\xb7\x11\x25\x14\x08\x13\x5f\xa7\x46\x73\x9b\x5b\x96\x10\x9e\xd8\xa4\x08\x08\x1b\x28\xbe\xc9\x5c\x41\xf5\xb8\xab\x65\x15\x9e\xe8\xc9\x08\xc2\x34\x23\x32\xb9\xa0\x52\xcf\x15\xb1\xc0\x39\xfb\x71\xa3\x23\x0f\xd2\x08\xca\x8c\xa3\x49\x3c\x60\x83\x78\x1a\xe3\x3d\x59\x33\xd2\x20\x28\x97\x9a\x66\xc6\x73\xc4\x30\xb4\x2f\x48\x89\x2d\xf4\xb9\x3e\x42\xfb\xa9\x75\x2f\x83\x61\xe5\xd4\x1b\xf3\x8c\xe5\x94\x4b\x36\x67\x34\x3f\x3b\xbf\xb6\xf1\xca\x34\x03\x2e\xb8\x65\xbb\xfb\x68\x89\x55\x64\x83\x25\xce\xcf\x3c\x90\xfc\xa2\x3d\xdf\xb9\xc7\x7a\x63\x0f\xd0\x9f\xb6\x93\x3f\x7d\xfc\xf8\xf1\xe3\x14\x7f\x44\xc9\x37\xc7\x1f\xf1\xc1\x05\x11\xcd\xf4\x89\x4a\x9f\x1e\x5c\x10\xd6\x4c\xbf\x51\xe9\xd5\xc1\x05\x29\x9a\xe9\x1f\x93\x83\x0b\x92\xa5\x07\x93\x3f\x7d\xbc\xfa\x58\xaa\x8a\xa5\xaf\x50\x44\x8d\xdc\x4d\xd2\xb2\x1b\x8c\x49\xa6\x3a\xc3\xa7\x9f\xf5\xa5\x50\x52\x89\xc0\xe2\x41\xef\x9a\x28\x36\xeb\x32\x2c\xb8\x4d\x39\x80\x6b\x99\xd0\xcf\x54\x5d\x41\x47\xe2\xc8\x72\xb9\x84\x55\x1a\x75\x94\xb6\x83\x15\xa6\xeb\x5c\x2c\x8b\xf3\x6c\xd9\xef\xbb\xda\x55\x70\x18\x56\x1d\x18\x39\xc4\xa0\x72\x02\x1c\xbb\x12\xf4\x74\x5f\xf1\x9c\x7e\x4e\x87\xfe\x8d\x75\xc5\xe4\xa2\xd8\xc8\xb3\xda\xa1\x57\x80\x73\x19\x95\x49\x59\x6c\xc4\x8c\x3a\xc5\x2a\x49\xe2\x5f\x8d\xe2\x86\xda\x55\xe3\x9b\xb5\xbe\x8b\xd6\x77\x46\xe2\xd8\x8e\x99\xfe\xc7\x26\x5b\x86\x61\x12\x36\xc8\x29\x79\xc1\x5b\xa9\xfe\x34\xd5\x6d\x42\x90\x17\x3a\xb0\x23\x1f\xc4\x07\xf1\x17\x80\xab\xc6\x50\x8f\x35\x86\x1a\x7d\x17\x02\x5f\xa3\x7a\xa0\x9e\x09\xf1\xaf\x62\xa3\x1a\xac\x90\xb4\x36\x44\x45\xbe\x5a\x1b\x3a\x1e\xfb\x90\x19\x0f\xe4\x20\x46\x1f\x3f\x5e\x0d\xb0\xd6\x75\xc3\x4d\xd8\x54\x79\x50\x46\x17\x09\xd2\x3b\x1e\x8a\x9e\x05\xf0\x1c\x37\xb8\xcb\xea\xac\x23\x1e\x40\x5d\xcf\x99\x98\x6d\x96\x99\x88\x7e\x54\x98\x14\x42\x00\x01\xfa\x12\x36\xce\x6e\x14\x63\x8d\xc9\x34\xdc\xce\x11\x27\xa2\xe6\xf6\xa4\x1e\x3c\x0c\x78\x5b\x13\x76\xd6\x88\x4d\xa9\x4f\x4a\xcb\x45\x9a\xbb\xce\x79\x2a\x26\x74\x7a\xac\xfe\xb1\x32\xdb\x71\x8c\x92\x01\x8e\x6d\x67\x6b\xc4\xf1\xf1\xc6\x22\x50\xae\xdd\x89\x68\x0d\x4e\xec\xaa\x34\xed\x7d\xbd\x2b\x2c\xa0\x28\x78\xf0\xa7\x8f\x07\xdb\x8f\x07\xbf\x3a\xb8\x00\x50\xf4\x25\x36\x35\xfb\x4f\x0d\x28\xac\x64\x9a\x59\xfc\x10\x54\x30\x8d\x6a\x2e\x51\x89\xb1\xbd\x63\x15\x42\x68\xd9\xea\x77\x09\xca\x35\x92\x38\xe4\xa5\x02\x36\xf9\xce\x86\x16\xaa\xb6\xd7\x9a\x00\x4b\x43\xf7\x90\xc0\x63\x2f\x6f\x85\x14\xe9\x35\x99\x62\x7d\x7f\x23\x89\xc7\x97\xf6\x32\x77\x93\xba\x6c\x4c\x0a\x83\xd1\x00\x2a\xc8\x35\x28\xa2\xba\x52\xd7\x3b\x04\xf0\x83\x78\x1b\x63\x8d\xc2\xe2\x18\xbb\xb7\x7e\xb5\xf3\xfa\x66\x00\xb6\x6a\x0f\x6e\xbb\x68\x25\x15\x2b\x00\x54\xaa\xa1\x93\xcd\x11\xeb\xf7\xd5\xca\x05\xa3\x25\x66\x3c\xcf\xce\x97\xba\x5a\x69\xc9\x61\x75\xee\xbd\x17\x56\xa7\xb5\x5e\x70\x7d\x43\xc4\x96\xb7\x31\xc3\x5d\xfb\x3b\x90\xf5\xe4\x31\xf0\x65\xd2\x34\xbd\x46\x12\x57\x88\x91\xd0\xb0\xff\x20\x0a\x7e\x11\xf1\xcd\xea\x9c\x8a\xa8\x98\x7b\x43\x8d\xe6\x85\xf0\x87\xeb\x0e\x88\xc4\xdb\x2d\xdb\x6e\x11\x4b\x61\x1b\x89\x02\xde\xd4\xa9\x68\xe4\x8a\x4a\xf7\x26\xcc\x11\x33\x18\x34\xac\x03\x65\xac\x0c\x92\xb3\xb5\xa0\x73\xf6\x19\xe1\x5e\xaa\x49\x57\x97\x10\xc0\x27\x7a\x69\xa1\xa5\x28\xb7\x2f\x63\x46\xcb\x48\x5d\x33\x51\xce\xe6\xe0\x6c\x53\x46\xba\x09\x5a\x36\x83\xa1\x2a\x84\xea\xf4\x97\xc0\x5f\x8e\xf9\x10\xb7\x28\x4a\xb9\x13\xd4\x26\xf4\xd4\xf2\x6f\xac\x42\x32\x25\xd2\x29\x83\x38\xaa\x8f\xf8\xf3\x09\xdc\x7a\xf6\x96\x07\xeb\x9e\x9d\xca\x59\x02\x03\x67\x79\x22\xa7\xee\x42\x03\x90\x0b\xbe\x5a\x72\x8f\xa2\x58\x23\x81\x8f\xdd\xfe\x2c\x91\x20\x1c\xf6\xcd\xdb\xa4\x95\x9a\xfa\xd8\x95\x11\x9d\xbc\x2f\x55\x25\xf6\x81\x52\x3a\xa1\xf6\x3d\xaf\x45\x20\xdc\x39\xa8\x8a\x92\x22\xe5\xc9\xbc\x34\x0f\xf9\x9d\x3d\xc1\xed\x78\x90\x7c\x73\xb0\x63\x21\x8d\x1a\x7c\x29\x15\x66\xd1\x2e\xc8\x40\x0d\xd7\xa5\x07\x76\x25\xf3\xce\x5b\x76\x0b\x46\xb5\xcf\x16\x05\x54\x8e\xb4\x9d\x6b\xf4\xb6\xd7\xe5\xeb\xba\xd6\xb9\x7e\xa8\x43\x65\xf0\x50\x8a\x2b\xc2\x43\x45\x37\xaa\xa0\x6b\x79\x89\x2b\x12\x24\x62\x9a\xc5\x66\x5f\x3a\x76\x4d\xcc\x07\x1d\x79\x14\x09\xfd\xcc\x4a\x59\x9e\xa8\xf7\x32\xc5\xc7\x19\x2a\x12\x41\xb3\x3c\x67\xc2\x24\x85\x38\x0e\x75\x3f\x4c\x5f\xf3\x26\x74\xf5\x38\x53\x24\x55\xc8\xef\x47\x6f\xa6\x75\xa3\xc3\x63\x28\x65\x26\x4d\x77\x09\x2b\x7f\x64\x02\xcc\x4f\xaf\x41\x59\x39\xbc\xc2\x66\x43\xc2\x61\xb2\xeb\xdb\x43\x62\x77\xc7\xb6\x9f\x1a\x6d\xd3\x3d\x23\xfd\x08\x2a\xe5\xfc\x13\xbb\x86\xd2\xee\x79\x45\x08\x35\x29\xfc\x85\x8c\xea\x0a\x58\x82\xd1\x2b\xa7\xde\x8e\x62\xaf\x54\x8c\x11\xae\xd5\x87\xee\xf2\xa3\xa4\x95\x75\x1b\x6e\x94\xa4\x31\xe1\xc4\x18\xc4\x04\xe6\xa3\xf2\x2c\x99\xbb\xe8\x23\xa8\x4b\xdd\xc1\x29\x34\x05\x5d\x4e\xdf\x82\xc1\x3f\x04\x4e\x42\xe7\x49\x33\x9d\xe0\xf8\xe3\xc7\xd8\x17\x35\xe2\xaa\xe5\x8f\xca\xe0\x16\x1d\x5a\x59\x5c\x1b\xe7\x30\x90\xe6\x70\x28\x24\x16\x28\x3e\x38\xcf\x4a\x7a\x10\x83\xf6\xb1\x7d\x46\x65\xb9\xc9\xcf\x50\xb3\x12\x36\x43\x37\xea\xeb\x9f\xe8\x75\x89\xda\x2a\xce\x8a\x4a\xa2\xa5\x79\x60\xba\x9a\x09\xf0\x6f\x7f\x12\x0c\x58\x3e\x16\xdd\x35\x86\x99\x64\x79\xfe\x92\x2d\x29\x69\xa4\xe2\x6a\xcf\x77\x66\xdc\x70\x59\xcc\xc9\x95\x0e\xaa\xea\x0e\xde\x38\x3e\x88\x49\x8d\x18\x42\x90\xdb\xec\x53\x97\x85\x23\xee\x61\x8f\xbb\xeb\x5d\x50\x09\x8c\x71\x0e\x47\x94\x58\x3c\x10\xa8\x78\xe3\xe1\x85\x90\xeb\x97\x46\xb3\x3e\x0e\xa1\xd8\x78\x38\xb0\xae\x21\xd5\x00\x81\x93\xde\xec\xc8\x3a\x6b\xdf\xc8\xf9\x77\x71\xcb\x31\xbb\xa1\x4d\x4e\x17\xac\x8c\xe6\x7a\x6b\x6d\x0b\x08\x47\xe5\x82\xad\xa2\xbc\xa0\x0d\xfd\x97\xa8\x00\x6f\xd6\x72\x91\xf1\x48\x35\x19\x51\x3e\x2b\x72\xc6\x2f\x12\x13\x9e\xbb\x3d\x62\xd5\x60\x90\x66\x55\x19\x75\xf3\xb0\xd2\xe3\x28\x1e\x74\xd8\x0a\x0a\xdc\xdc\xd0\x40\x85\xcc\x3e\xb9\x5a\x00\xad\xed\x34\x6e\xaa\x6a\x8f\xed\x02\x09\x46\x0c\x14\x8d\x7d\x62\x4e\xa4\x12\x09\x03\xde\xd0\xc8\x44\x4c\x53\x96\x9c\xfe\xf1\xfd\x8b\xb3\x97\xaf\x5e\xbf\xd8\xb3\x66\x2e\x46\x06\x8c\x84\x81\xdf\x2c\xcf\xeb\x0d\xe1\xb8\x22\x7e\xc2\xbd\xbb\xf8\xf1\xd5\x87\x17\xcf\x4f\xdf\x7d\xf8\x63\xa8\x1f\xae\x8d\x29\xc2\xdd\xe9\xd5\x0d\x22\xe0\x54\x02\x83\x53\xd3\x5c\x06\x88\x4d\x33\xba\x7f\x3a\x4d\x53\x7f\x92\xaa\xb5\xc0\xd8\x7f\x6e\x93\x6e\x52\x95\x39\x70\x77\x35\x09\x4d\xb4\xe3\xfb\xaa\xc3\x53\x9f\xa5\x71\x8b\x02\xef\x19\xf3\xc1\x7a\x51\x44\x00\xce\xde\x16\x32\xca\xa2\xdc\x4d\x2d\x8a\x07\xf5\x43\xdd\xec\x8b\x8f\xb1\xea\xd1\x60\xab\xd6\x14\xe4\xfa\xe9\x8d\xa9\x37\x4b\xaa\x77\x8b\x55\xf1\xc6\xc9\x2a\x5b\x07\xeb\x51\x27\x4f\xd7\x4a\xd7\x55\x45\xbc\x5d\x48\x87\xa4\xbd\x80\xe9\x28\x68\x20\xa8\x59\x54\x2d\x04\x97\x4a\x12\x4c\x7f\xaf\xa9\xe4\xd4\xce\x4d\x7d\xbc\x14\xc5\xea\x87\x4c\x1b\x28\x42\xba\x1a\xd7\x4f\x82\x59\x45\x4c\xf3\x79\x6b\x55\x8a\xab\xbd\x62\xd7\x61\x2b\x48\xab\xf8\x38\x44\xf6\xc7\x7f\xd2\xf2\x25\xc3\x7a\x98\xec\x7f\x3c\xf8\xf8\xf1\x4f\xbf\xfa\x66\x70\x9c\x20\xbc\x9d\x7c\x9c\xde\x54\xd3\x83\x0b\x12\x7f\xfc\xf8\xab\x7e\xf3\x4d\x64\x68\x21\x01\x1e\x52\xdc\x05\x12\x76\x0d\xde\xd9\xc8\x16\xe6\x6e\x4e\xb6\x26\xae\x82\x9b\x49\x1b\x37\xb1\xe1\xf2\x74\x5b\x09\x6f\x85\x6b\xb4\x22\xe7\x1b\xb6\xcc\x7f\x12\x6c\xdc\xd2\x29\x31\xc7\xa2\x77\xdb\x56\xda\x21\x76\xe1\xfd\x7d\x26\x17\x56\x69\x91\xf1\xc8\xd4\x6f\x1e\x80\x1a\xc9\xb6\x66\xb0\xa3\xb7\x06\x44\x58\x0c\x9c\x75\xdf\x2b\x35\xfd\xe0\xfb\xc3\xd9\x01\x1f\x99\xbb\xb2\xc6\x5d\x26\x73\x8b\x3e\xb0\x4b\xa5\xd6\x45\x13\x1f\xff\xf6\xe6\xf5\x6f\xa5\x5c\x7f\xa0\xff\xb1\xa1\xa5\x74\xe7\x39\x29\xd6\x94\x23\x13\xf0\x89\xf4\x46\x4e\xfc\xa6\x7e\x08\x5a\xae\x0b\x5e\xd2\x53\xfa\x59\x56\x15\x01\xe1\x43\xcb\x74\xf0\xcb\x88\xb4\x9b\x0a\xc8\x4c\x45\xad\x8d\x46\x1e\x2d\x19\xb8\x62\x69\x44\xf9\x25\x13\x05\x5f\xa9\x57\x7e\xe7\x5a\x95\x0b\x0a\x6a\x64\xd1\x0a\xdc\x0f\x91\x88\xc9\x07\x65\xb4\x16\xc5\x79\x76\xbe\xbc\x8e\x34\x5b\x46\xed\xa3\xd1\x03\x66\xf3\xeb\x24\x06\x2d\xce\x50\x7c\x8a\x9a\x2c\xdc\x6e\x83\xf9\x06\x69\x85\x68\x81\xc6\x38\x22\xba\xda\x2c\x33\xcd\x36\xb4\x43\x36\x96\x75\x11\x5b\xad\x97\x54\xcd\x06\xf2\xcb\xa8\x98\x47\x46\x32\x9c\x3b\x66\x50\xd9\x50\x25\x0d\x2d\x75\xd8\x8a\xdc\x7f\x37\x6b\x19\x51\x6c\x54\x2e\x62\x72\x33\xd7\x7a\x04\xe3\x78\xf2\x72\x3e\xd5\xbf\x63\xe2\xe4\xa9\x31\x3a\x1e\x4f\x4e\xca\xa9\xf9\xde\x7a\xbf\xa3\xc9\xbb\x62\xba\x91\x4b\xc6\x29\x56\x84\x60\xa6\x66\x50\xea\x1a\x2f\xe8\xd4\x7c\x6f\x27\x7f\xb8\x9a\x2e\xa8\x50\x65\xd6\x14\xd4\x8c\x75\x91\xf7\xeb\xa9\xfe\xdc\x4e\x4e\xe5\xb4\xc8\x0b\x1c\x93\x82\x2f\xaf\x75\xee\xbb\x62\xca\x97\xd7\x38\x26\xe7\xd9\xec\xd3\x85\x28\x36\x3c\x1f\xc7\x93\x1f\xce\xa7\xee\x33\x26\x17\xec\x92\x72\x5d\xfc\x37\x17\x53\xf5\x01\x9d\x31\xb9\xd8\x4e\x9e\x65\x53\x9e\x6f\x55\x85\x8d\xdc\xc2\x70\x66\x74\x2d\x71\x4c\xae\x16\xb6\x0e\x8c\x8b\x6f\x27\xaf\xd8\x74\xde\xac\x80\x63\x22\x5d\xb1\x53\xa9\x8b\xa9\x36\xd6\x74\x26\x3b\x45\xb5\xdd\xfb\x78\x12\xc3\x78\x62\x12\xab\x2e\x62\x12\xab\x26\xe2\x69\x75\x3f\x3b\xc3\x1b\x29\xd8\x2a\x8c\x6d\x3d\x46\x72\x39\xd8\x7e\x2c\x07\x96\x95\x4c\xc4\x3d\x2a\xf9\xe5\x59\xf9\xc3\x32\xe3\x9f\x02\x35\x54\xdb\xdf\xfc\xea\xe0\xc2\xe1\x6a\xc2\xca\xb7\x85\xdc\x55\xdc\xd2\x0a\x90\xaf\x8b\xf3\xdc\xc2\x6e\x00\xff\x1c\xfc\x09\x7d\x2c\xbf\xc1\x07\x56\xc8\xe4\xe9\x8a\xc9\xc9\x70\xea\xf4\xfd\x87\x5f\x2a\x39\x39\xd4\x82\x93\xc3\x47\x5a\xd5\x63\xb4\x53\xc9\xc3\xda\x2f\x95\xe9\x8d\x75\x8f\x30\xce\xac\x0b\x32\xb2\xa4\x73\xf9\x5e\xad\xd7\xa2\x58\xe6\x54\x3c\x5f\x64\x62\x1c\x4f\x62\x22\xd8\xc5\xa2\x9b\x31\x8d\x2b\xb2\x49\x11\xd5\x5e\xce\x3c\x87\x0b\xc7\x75\xdb\xb4\x1a\xd3\xed\xb6\xc4\x89\x4d\xd9\x6e\x4b\xf7\x9b\x2c\x41\xaf\xaa\xd3\x27\x94\xe9\x26\x93\x59\x4a\x93\xd0\x50\x54\xf9\x50\x3a\x99\x37\x7d\x1d\x7c\xfc\x58\x7e\x13\x0f\x36\xb5\x17\x85\xd8\x1c\xfa\x18\x0f\xe2\xb1\xca\x45\xc9\x37\x38\x26\x31\x8b\x31\xc9\xef\xaa\x6b\x71\x43\xa8\xf2\xe2\xae\xca\xf5\x71\x0e\x55\x5f\xdf\x55\xdd\x62\x19\xa8\x6c\x2a\xad\x9a\x95\x54\x73\xbf\x32\x59\x97\xdd\xf6\xfe\x47\x8c\xc9\x75\x20\xf9\xe6\x21\xa9\x62\x4c\x2e\x5a\x8d\xa9\x3c\xfc\xab\x18\x93\xf3\xa6\xdc\x0c\x2a\x4d\x3e\x7e\xdc\xfe\xbf\xff\xfb\x7f\xa6\xc7\xfb\xaa\x36\x8e\x31\x39\xeb\xb6\xfc\x2f\x68\xf2\xa7\x74\xaa\x1b\xb9\xda\x9d\x9d\xea\x71\x7b\x4c\x8a\x17\x10\xef\x40\x4b\x72\x49\x96\xf2\xc1\x08\xae\x47\x36\x47\x2c\xbd\x76\x14\x8b\x23\xbd\x7b\x10\x5f\xc9\x5a\x11\x80\x70\x21\xbd\x6c\x15\xd3\xa9\x67\xf6\x18\xd6\x31\x91\x16\x19\xcf\x97\x14\xc5\xcf\x38\x2f\xf4\x29\x8e\xb5\xe3\xe4\x22\x51\x38\x06\xb1\xc9\x68\x8a\x89\xf3\x8d\x48\xb4\x9a\x24\x4b\xaf\xfe\xba\xa6\x5c\xd2\xe1\x14\xd7\x8d\xce\x77\x37\xfa\xd2\x5e\x50\xaa\x15\x57\x21\xdf\x5d\xc1\x2a\x27\xb5\x6a\x2c\x76\xd7\xf8\xc1\xbb\x61\x1a\x75\xd6\xbb\xeb\xbc\xb0\x60\xe9\x0a\x5f\xdc\xd2\x81\x42\x9a\xaa\xed\x61\xdd\xf6\xf9\xee\xe2\x3f\x66\xea\x9a\x6e\x8c\x64\xb5\xbb\xb4\x22\xc6\x5c\x69\xcf\xce\x0c\x28\x13\x99\xac\x68\x59\x66\x17\x34\x8d\x81\x40\x89\x14\x9d\xaf\xc8\x20\x75\x87\x47\xf1\x20\x1b\x3c\x20\x51\xfc\x60\x40\x07\x0f\xe2\xe4\x23\x7f\x27\xd8\x05\xe3\xd9\x32\xa2\x50\xf8\x2a\x2b\xc7\xd1\x83\x81\x6b\x84\xc8\xaa\x32\xef\x18\x51\x36\xc4\x6b\xac\x7e\x0e\x00\xc0\x9f\x10\xd1\x36\xbc\xeb\x88\x2f\x0f\x3e\x8a\x8f\x7c\xfb\x91\x1f\x68\xa9\x95\x96\xb2\xbc\x00\x3f\xdb\x0c\x49\x83\xd3\x11\xc6\xdb\x6d\xfd\xa1\x29\xe7\x77\x5d\x65\x9e\x9b\xca\x67\x6c\x51\xd1\x32\x2e\x06\x7f\x34\xc2\x94\xd9\xf0\x6e\x29\x7c\xc3\xbb\x7e\x9c\x02\x9a\x8a\x38\xe4\xed\x46\x47\x62\xd0\x6e\x33\x1b\xfa\x31\x0d\xbd\x28\xf5\xe2\xa6\x13\x99\xc8\xe2\x75\x71\x45\xc5\x73\xf5\x00\xc4\x5d\x27\x30\x72\x10\xab\xe7\xc7\x86\x53\x20\x3e\x68\x1e\x65\x12\x1e\x59\x91\x64\x2b\xea\xc8\xc1\x1b\xbd\xff\xe3\x6e\x8b\xea\x46\x3d\xe9\x18\x7a\x10\xfd\x26\x30\xd4\xff\x67\xe3\x02\xe7\x1d\xba\x01\xf5\x53\xa6\xbd\x7d\x9d\xc3\xed\x6f\x3e\x32\x77\x9c\x5b\x0f\x4f\xee\xad\x60\x13\xbf\xab\xc7\x82\xcc\xca\x05\x02\x5e\x00\x91\x3a\x12\xa2\xa2\x87\x0c\xc9\xe9\xed\x0a\xf7\xd8\x18\x60\x81\x88\x38\x11\xf0\xa6\xf8\x8c\xab\x9a\x1c\x2d\x7c\x7a\x30\xab\x3c\x6c\xa9\x3d\xdf\x3b\xc8\x43\x75\x33\x7a\x86\x02\xe3\x44\xf7\x44\x98\x66\xe2\x66\x69\xa1\x19\x4f\x7a\xed\x3a\x36\xf1\x32\x95\x89\xfb\x0a\xd8\xa9\x37\x15\xa6\xb9\x16\x35\x50\x6c\x8f\xa2\xce\xde\x6e\x3d\x09\xa0\x86\x5b\x7f\x33\x00\x0a\xba\xef\x86\x67\x91\x59\x22\x6d\x02\x63\xdf\x08\x05\xa7\x51\x21\xa2\x55\x21\x68\x64\x97\xc4\xb7\x8a\xa9\x0f\x46\x45\x3e\x77\x8d\x7b\x6e\x8c\x0a\x18\x6c\x4a\xeb\x48\xb0\xb9\x22\x15\x0f\xac\xfd\x7a\x77\x48\xaf\x38\xe8\x89\x46\x1e\x1c\x44\xf1\x40\xe2\xbd\x2e\xc8\xb9\xa3\xd5\x9d\xaf\x7b\xbc\x54\xe4\x59\x67\x25\xf5\xa6\x4c\xa6\x04\xfc\xc3\x6c\x60\x03\xdf\x93\x65\x03\x34\x9b\xb0\x97\x69\x5d\x26\x73\x8d\x48\x75\xda\xee\x07\xb4\xcb\x5d\x40\x4b\x62\xd5\xcd\x2d\xb0\xeb\x40\xb1\xcb\x7e\x31\x7e\xa4\xc0\x87\xa2\x20\x33\xb7\x2f\xa5\xd1\xce\xc3\xf5\x71\xab\x7c\x38\x0e\xca\xe6\xf4\xf4\x3f\x21\x49\x66\x75\xbd\x4d\x55\x61\x32\xf3\x34\x13\x77\xc3\xe3\xf2\x67\xc1\x63\x5b\xfb\x00\x00\x63\x98\xa6\xa9\x35\x0a\x0c\x70\x9e\x0d\xa4\x5a\x3d\xe6\x5d\x50\x5a\x21\x4c\x6e\xc0\x12\x77\x4c\xbd\x8d\x29\xc7\x35\x3e\x27\xb9\x09\xc9\xa1\x36\x2c\x73\x4b\x5d\x8e\x39\x2a\xef\xf2\xa7\xe0\x40\x1f\xe3\x5a\x59\x4d\xbb\x87\x44\x20\xd4\xfb\x14\x94\x93\x83\x59\xe5\x64\x4a\xb2\x74\x68\x54\xa3\x2c\xa4\x6d\x76\x82\xd2\x65\x0d\x04\xd7\x3e\x0a\xda\xe8\x86\xeb\x6b\x07\xc5\x39\x5c\xde\x4b\x05\x4e\x6d\x48\x6d\xe8\x58\x41\x35\x1f\x24\x75\xc5\x38\xf3\x88\x28\x8f\xf0\x26\x7e\x1f\x00\xb0\x0a\x4a\xfc\xc4\x73\x4d\x64\xe4\xea\x5d\x54\x24\xde\xeb\x0c\x49\xdc\x71\xff\xd7\x1d\xf1\x3a\xd4\xc5\x7c\x57\x17\x7e\xaa\x3f\xe2\xcb\x66\x96\x1b\x3f\xb9\xc6\x64\x85\x24\x01\x2d\xf0\x8e\x9e\xd6\x02\x05\x73\x73\x7b\xdd\x18\xff\x81\xbe\x26\x95\x4a\xb6\xb6\x7c\x68\x85\xb8\xa7\x64\xae\x9b\x81\x4d\xc6\x4d\x33\xf8\xc0\x82\x87\x66\xbd\x09\xce\x5a\x43\x05\x26\x0b\xd4\x54\xcc\x32\x02\xa2\x22\xa9\xdf\xcf\xc0\xd8\x6f\xee\x01\xc5\x4f\xb2\x10\x8a\x75\x25\x34\xc9\xa5\x50\xfb\x44\xd4\x3e\x06\xd3\xc6\xd7\x40\x0e\x8a\x04\x58\x00\xc8\x59\xe6\x64\x2d\x95\xaa\x86\x9a\xf2\x05\x68\x72\xd6\x57\x9a\xaf\x55\x75\xbf\x82\x17\x35\x42\x10\x3b\x11\x42\x4d\x40\xef\xc0\x09\x92\xae\x15\x3e\xb8\x03\x81\x95\x7f\x0d\x02\x53\x33\xb8\xd1\x7c\x19\xa1\x0e\xff\xfb\xee\x6d\x08\x67\xbd\x8b\x45\x9b\x9a\xdd\xda\x07\x0c\x92\x6e\x10\x3a\xfb\x5e\x83\x30\xfd\x4f\x80\x04\xfb\x10\xd0\x1e\x87\xfb\xce\x5e\x76\xe0\x5f\x63\x32\x25\xb3\x74\x68\x9e\xef\x16\x11\x2d\x76\x22\xa2\xab\x1a\x11\x5d\xd5\x0c\xb8\x17\x95\x7a\xc4\x37\xf5\x38\xad\x1f\xcc\xd0\x41\xdf\xec\x46\x4d\x6b\x5b\xed\xde\xa8\x89\x78\x4f\x74\x32\xef\x1c\xa6\x55\x33\xd1\x1c\xa6\x6b\x75\xa9\xed\xc6\x52\xab\x5d\x83\x3f\x0f\x75\x71\xb9\xab\x8b\xf9\x0e\x2c\x75\xd5\xcc\xaa\xa7\xd2\xca\x70\x13\x23\x2f\x30\x39\xeb\x22\xa8\x4b\x3d\x4c\x05\x7a\x81\xdc\x6b\x4b\x78\x74\xd0\x97\x3a\x54\xcb\x1a\x7d\x9d\xa1\x65\x17\x7d\x2d\x9b\xe8\xeb\x1c\x05\x37\x25\xb4\x1c\x8b\xe0\x72\x58\xf4\x75\xe1\xa3\xaf\xb3\x2f\x40\x5f\xb3\xfb\xa1\xaf\xcd\x64\xe3\xa1\xaf\xc6\x57\x08\x7d\xcd\x7c\xe0\xbb\x6a\x21\x84\x13\x84\xc1\xcf\x86\x49\xae\x3c\x46\x49\xa3\x8c\xd6\x8b\x3e\x45\xb9\x57\xe4\xa4\x46\x5c\x9b\x9d\x88\xcb\x19\x32\xfd\x35\x68\x6b\xfe\xb3\xd0\xd6\x09\xb2\xb1\x87\x82\x24\x92\x08\x93\x48\x25\xd1\x28\xa6\xa6\xa0\xc0\xea\xcc\xf3\xbc\x53\xcb\x8d\x8e\x33\xa7\xd3\x8c\xc7\xbc\xaa\xc8\x69\xc0\x18\x61\x32\x55\xa4\xa6\x5b\xc3\xcf\x35\x49\xd4\x40\x41\x0a\xd8\x7c\xf5\x8a\xe6\x4d\x6a\x40\xcc\x80\x64\x45\xda\x74\xbb\x68\x12\x1c\xfe\x51\xdc\xdc\x83\xec\xd0\x47\x3f\xb7\xeb\x35\xda\x93\xe9\x39\x12\xb7\x98\xbc\xc9\x54\xe3\x51\x83\xe0\x28\x06\x76\xef\x98\x37\x78\xd6\x6d\x00\x77\x0b\xc7\x07\xb5\x0d\xec\x88\x48\x45\x5e\x3a\xa2\x32\x44\xfb\xed\x5e\x09\x92\x85\x9f\x14\x4d\xfa\x47\x5d\x0c\xdd\xe9\x5e\x06\x89\x90\x4b\x47\x57\xde\xf8\xd0\x92\x91\x39\xa3\xcb\xbc\x1c\x5f\x20\x49\xc0\xc7\x1c\xb9\x56\xaf\x0f\xb3\xa9\x4d\xcf\x4b\xdd\xf5\x5e\x84\xd6\x7b\xd5\x0e\x64\xd5\x1e\xa7\xae\xbb\x0e\xd7\xfd\xeb\x07\xdf\xb9\x93\x54\xb6\x00\x63\x13\x50\x16\x57\x55\x1a\x57\xc6\x8e\x99\x75\xd6\xe0\xb2\x03\xbf\xba\x6c\x88\x20\x6c\x21\xcf\x5d\x50\x7c\xb6\x8b\xec\x3d\x6b\x6b\xb2\x5b\x2b\x9d\xc6\x34\xf6\xd4\xed\x17\xe0\x2b\x31\xf5\xd0\xa6\x9f\xe5\x20\xd6\x11\xf7\xe3\x69\xea\xc8\xc1\x29\xf1\x72\x4b\x99\x09\x99\x2c\x19\xa7\xaa\x08\x0d\xe4\xcd\x8a\xe5\x66\xc5\x55\xae\x04\x81\xc3\x40\xfa\xe0\x3f\x6d\x28\xe6\x5f\x34\x4c\x40\xce\x41\xc3\xd9\x60\xd0\xae\x2a\x74\xed\x4d\x7d\xc2\xa7\xd0\x27\xc9\xf4\x6f\xaf\x7d\x52\xa6\x21\xc2\x75\xef\xeb\xd2\xcd\x6c\x9a\x22\xf5\xaf\x0e\xe5\x60\xf5\x6c\x41\x29\x5b\xf8\x37\xa9\xf7\x18\xa4\x7a\x61\xdf\xcd\x51\xfc\xff\xfe\xef\xff\x89\xf1\xd3\x74\x78\x0c\xbf\xc6\xf1\x36\x26\xbe\x4b\x0e\xa1\x87\xeb\x7b\x65\x95\xbd\x34\x65\x3b\xef\x96\x57\x7c\x56\x08\x41\x67\xd2\x53\xb5\xd7\xdb\x0d\x7e\x37\x35\x69\x11\x41\xcc\xd2\x24\x7a\x61\x79\x7d\x60\x9b\x13\x9d\x6f\x64\x34\x07\x7a\x3a\x1e\xb8\x1e\x2c\x7e\x62\xfe\xfd\xdd\x24\x5e\xaf\x10\x26\x34\x71\x34\xad\x7f\xb3\xba\xdb\x50\xee\x1c\xb1\xe5\x69\xeb\x41\x85\xef\xc4\x05\xcd\x72\xe3\x99\xe5\xce\x67\xc1\x7d\xda\x13\xc5\x55\x19\xb7\x6e\x76\xc7\xbb\x72\x2c\xe3\x9f\xcd\x99\x75\x7e\x5d\xd4\x9a\x4b\x0c\x61\x1f\xc0\x4f\x36\x78\x0e\xf7\x88\x05\x9f\x11\x03\xa7\xf1\x36\xed\xe6\x67\x56\xb1\xd9\x5d\x0c\xae\xa5\x67\x2d\xaf\x54\xc6\xc7\x2a\x38\x7f\x31\x8e\xc3\x3d\x79\xd0\xc7\x8f\xf1\x60\x09\xae\xc3\xbf\x89\x07\x42\xff\x50\x69\x33\xed\xa6\xdc\x9d\x99\x89\x98\xfa\x56\xd4\xb5\x34\xf5\x2b\x3d\xa9\x9a\x36\x05\x0d\x70\x12\xb7\xad\x84\x21\x5d\x9e\x21\x69\x30\x19\xa1\xda\xf5\x1a\x6e\x10\x33\x2f\x90\x4c\xbc\xef\x9a\xb4\xa1\x7e\x72\x93\xd2\x39\x41\x12\x9c\xbe\xbb\x14\x6c\x48\x9f\x13\xbf\x33\xed\x80\xbe\x6a\xdc\xd1\x77\x09\x94\x6f\x33\x17\x15\xe8\x31\x4e\xe6\xa5\xe6\x8e\x23\x81\x0e\xbf\xc5\xd8\xd9\x73\x76\xa4\x1e\xc2\xe1\xbe\xa6\xee\x27\x25\x5a\x5d\x14\x5c\xf8\xe8\x6a\x88\xd5\x3a\x73\xfd\xbe\x40\x05\xde\x6e\x8b\x7b\xcb\xbe\x47\xc6\xcd\xc1\x23\x23\xfc\x7e\x8c\x3b\xe6\x11\x26\x90\xd8\x0e\xf7\x7e\x8c\x80\x67\x23\x27\x99\xe6\x4e\x10\x5e\xa6\x54\x8f\xd0\x68\x7a\x17\x48\x60\xb2\xd1\x71\x79\xb5\x03\xe8\xed\x16\xe2\xe8\xd6\x1e\xa1\x11\xde\x6b\xb3\xb2\xb2\xb0\x3d\xf4\x0c\x19\x78\x20\xe6\xc0\xb4\x18\x51\xce\x07\xfa\x11\xca\x11\x4f\x1b\x50\x42\x62\xa3\x3c\x12\xe3\xe3\x4d\xf2\x59\x43\xc2\x39\x1d\xe7\x88\x93\xb8\xe0\xcb\x6b\x48\xb7\xc9\x89\x4a\xd9\x6e\x37\xc9\xdc\xa6\xa8\x8f\xdc\xd5\xaa\x4b\xe2\x86\xd7\x2a\x7c\x23\x50\x6b\x64\x73\xef\x04\xe4\x6a\x2f\x1b\xe3\x60\x72\x0c\x89\x6e\x04\x4c\xd6\x7d\x33\xa9\xfe\x30\x26\xc7\x2a\xbd\xc3\xc9\xf2\x58\xc6\x56\x20\x1c\x0f\x1a\xa1\x0e\x06\xb1\x11\x64\xd7\x6e\xa1\x34\x06\x61\x73\x64\x74\xd6\x18\xae\x83\xd6\x98\x53\x38\xaf\x1d\x83\x94\x6d\x7e\x79\x78\x63\x96\xc8\x80\xb3\x31\xe3\xc7\xb5\x8c\xa6\x1c\x2f\x89\x5b\xb6\x19\x61\x26\x5e\x50\xc7\x6d\xcc\xbc\x79\xa8\x71\xdb\x19\x98\xd0\x7e\x62\x24\x31\x46\xe3\x4c\x9e\x7d\x79\x3b\x75\x33\xc6\x52\xa3\x22\x77\xb8\x47\x76\x6b\xee\x87\x54\xe7\xff\xc5\xac\x37\xf6\x0e\xbe\xe9\x45\xdf\x7c\xcd\xff\xed\x3d\x2f\xd6\xd7\xa0\x59\x12\xa1\x19\x8e\xde\xb0\x99\x28\xca\x62\x2e\xa3\xe7\x85\x58\x17\x02\xf6\x26\x89\x9e\x2d\x97\x11\x14\x2a\x23\x41\x4b\x2a\x2e\x69\x9e\xec\xbd\x66\x33\xca\x4b\x9a\x47\x1b\x9e\x83\x6a\x3b\x8d\x9e\xad\xb3\xd9\x82\x46\x26\x87\x44\xbf\xd7\xfe\x34\xa3\xc3\x64\x18\x21\x55\x20\x36\x59\x31\x3e\x8a\xae\x8b\x4d\xb4\xca\xac\x8e\x1e\x05\x5c\x1b\xcd\xd9\x92\x46\x14\x54\xb8\xd4\x01\x98\x15\xab\xf5\x92\x65\x7c\x46\xb5\xbd\x9f\xac\x5b\x4f\xa2\x3f\x9a\x06\x8a\x73\x90\x99\x65\xd1\xac\x58\x5f\x2b\x72\x4b\x2e\xa8\x1d\x5d\x94\xc9\x68\x21\xe5\x7a\x7c\x70\x70\x75\x75\x95\x64\x30\xc0\xa4\x10\x17\x07\x4b\x5d\xa0\x3c\x78\xfd\xea\xf9\x8b\xb7\x27\x2f\xf6\x0f\x93\xe1\xde\xde\xe9\x6f\x5f\x9d\x44\xcf\xdf\xfd\xf8\x22\x7a\x75\x12\xbd\xff\xf0\xee\xf7\xaf\x7e\x7c\xf1\x63\xf4\xee\x6d\xf4\xec\x6d\xf4\xcd\xb3\x93\xe8\xd5\xc9\x37\xd1\x0f\xcf\x4e\x5e\x9d\x90\xe8\x0f\xaf\x4e\x7f\xfb\xee\xa7\xd3\xe8\x0f\xcf\x3e\x7c\x78\xf6\xf6\xf4\xd5\x8b\x93\xe8\xdd\x87\xe8\xf9\xbb\xb7\x3f\xbe\x3a\x7d\xf5\xee\xed\x49\xf4\xee\x65\xf4\xec\xed\x1f\xf7\x7e\xf7\xea\xed\x8f\x24\x7a\xf1\xea\xf4\xb7\x2f\x3e\x44\x2f\xfe\xed\xfd\x87\x17\x27\x50\xf2\xd5\x9b\xf7\xaf\x5f\xbd\xf8\x91\x44\xaf\xde\x3e\x7f\xfd\xd3\x8f\xaf\xde\xfe\xc6\x35\xf9\xfa\xd5\x9b\x57\xa7\xcf\x54\x2b\xaa\x05\x5b\x72\xef\xb6\x9e\x4e\x5f\x9d\xbe\x7e\x41\xa2\x97\xaf\x4e\xdf\xaa\xf6\x5f\xbe\xfb\x10\x3d\x8b\xde\x3f\xfb\x70\xfa\xea\xf9\x4f\xaf\x9f\x7d\x88\xde\xff\xf4\xe1\xfd\xbb\x93\x17\x64\xef\xcd\x8b\x0f\xcf\x7f\xfb\xec\xed\xe9\xb3\x1f\x5e\xbf\x3a\xfd\xa3\x6a\xe8\xed\xbb\xb7\xfb\xaf\xde\xbe\xfc\xf0\xea\xed\x6f\x5e\xbc\x79\xf1\xf6\x34\xd9\xdb\x3b\xa1\xd4\xdf\x50\x7f\x1f\xed\xc2\xce\x0b\x11\x95\x6b\x3a\x63\x73\x36\x8b\xec\x0d\x13\x5d\x14\x97\x54\x70\xc6\x2f\xa2\x35\x15\x2b\xa6\xcd\xff\xf7\x32\x9e\x47\xe0\x16\xce\xa8\x3c\xd6\x10\x63\x37\x73\xef\xab\x42\x75\xf4\xcd\x01\xe0\xd0\x3d\x91\x08\xed\x4a\x06\x62\x4b\x7a\x6e\x98\x4e\x64\x26\x37\x65\x1c\x8a\x52\xc7\xe0\xe1\x60\xa2\x51\x96\x25\xbb\xe0\xc1\x62\xa5\x57\x4c\xdf\xc1\x6f\xb2\xd9\x42\x3d\xc5\x42\xa5\x73\xaf\xb4\x73\x79\x11\x2c\xb9\x56\x25\x1b\x7a\x0e\x13\x9a\xbc\x2d\xe4\x89\x7a\xcf\xd1\x3c\x1d\x4e\xd3\xb8\xfe\x8c\x89\xca\xfe\xb0\xe1\x6a\xcd\xd3\xd1\x34\x8d\xcd\x6f\x9d\x71\x22\x8b\xf5\x9a\xe6\xe9\xe1\x34\x8d\xcd\xef\xb8\x42\xda\xa4\xf7\xc6\x06\x14\x2e\xd2\x1b\x85\x66\xc6\xb1\x8e\x87\x98\x30\xce\x64\x5c\xf9\x41\x6a\x69\x2b\x52\x45\x9a\x42\x50\xbb\x71\x23\xea\x91\x2b\x5f\x7a\x66\x3a\x8d\x86\xed\x6a\xea\xbf\x8a\x7a\x1f\xd3\xaa\x6a\x73\x56\x8c\xa7\x05\xe3\x03\xce\xe2\x51\x44\xd3\x76\x92\x42\xb8\xa0\x57\x48\xa7\xc7\xea\x9f\x31\xc5\xc7\xba\x43\x5a\x8d\x03\x98\x98\xda\xdc\x84\x67\x2b\x4a\xe8\x67\x3a\x03\xed\xbd\x86\x80\xae\x2b\x19\xf5\x6c\x10\xd4\x33\xaa\x0a\xfa\x23\xe8\x8e\xad\x1e\x4a\x3b\x60\x96\x5b\x1c\x13\xbb\x95\xcc\x8c\x33\x30\x49\xb2\x99\xa6\x9c\x27\x53\xa2\x63\x2f\xe6\xe3\xde\x88\xac\x32\x39\x5b\xa8\x0b\xba\xe9\x09\xda\x52\x17\x2e\xb6\x10\xf8\x71\xbb\x31\x6e\x81\x04\x68\x8d\xcf\xd9\xc5\x98\x92\xb3\x62\xad\xdb\x95\x04\x9c\x32\x64\x4b\x05\xff\x74\x6c\x47\x90\x98\x54\xd7\x7f\xa6\xde\xbf\xaa\x48\x39\x71\x99\xd3\x84\x72\x29\xae\x77\x6b\xf5\xc3\xfe\x25\xa6\x09\x78\x7e\xdb\x89\x69\xaa\x92\x7e\x96\xfe\x54\x6c\xbb\xb8\x22\x10\xe2\x48\x3b\x8b\xf0\xc4\x33\xcc\x78\x60\x25\x25\xc9\xbb\x9b\x2f\x8f\xcd\xe8\x65\xb7\x9b\x6a\x2c\xc9\x22\xcd\x35\xdf\x8d\xac\xd3\xbc\xee\x3f\x9d\x21\x86\xc9\x65\xea\xe6\xb7\x80\xe0\x7c\x97\x49\x61\x38\x1a\xd7\x69\x06\x5f\x93\x55\xa2\x7a\x9a\x62\x72\xd1\x56\xe7\xa9\x57\x1c\x37\x76\x72\x8e\x16\x64\x6d\x74\x95\x78\x70\xc4\x32\x13\x17\x54\x8e\x61\x80\x2c\xe5\x89\xfe\x26\x45\xea\x9a\x64\xc7\x8b\x31\x28\x01\xda\x85\x24\x65\x9d\x99\xa9\x43\x97\x11\x08\xe2\x58\xf0\x9c\xe4\xe9\x1a\xbc\x95\xbb\x02\xb3\x6e\xfc\xdd\xde\xb0\x1a\xcf\x30\x5a\x93\x15\xb6\x13\x74\x73\x2f\xa6\xe4\x22\xed\x8d\xc8\x79\x5a\x9f\xe4\xcb\x84\x7e\x66\x92\x94\xe4\xda\xee\xf7\x2d\x46\x20\xe0\x9e\xf5\x36\x78\x10\x89\x85\x3d\x1f\x30\x82\x4d\xb2\x39\x6a\x21\x0a\xed\x9d\xe5\x7a\x4d\xf1\xcd\x45\xda\x1b\x1a\x9f\x4d\xc6\xe8\x48\x97\x41\x37\x15\xc9\xed\x13\x2b\x74\xe6\x93\x1a\xd9\x1c\xcb\xd4\xff\x44\x39\x59\xe1\xb1\x6f\xc2\xe4\xe7\xd6\xe6\x94\x8d\xb0\x12\x72\x22\xa6\x21\xa2\xd2\xaf\x3a\x11\xd3\xe3\xd6\xb7\xee\xab\x95\xa8\x4e\x48\x9e\x4a\xd2\x1b\x55\x6e\xab\xdc\x1b\xdf\x80\x94\xf9\x53\x38\x18\xcf\xdd\x19\x3d\x77\x28\xa2\xe8\xa5\xe9\x62\xbb\x3d\xb7\x6e\xda\x87\xdb\xed\x85\x77\xd2\x0a\x20\xa0\x41\xa5\xd4\xbe\x2e\xce\x03\xef\xc5\xdb\x68\xd7\x49\x8b\x36\x9e\x12\x91\x0e\x6b\x3f\x68\xd2\x86\xbb\x1a\xdf\xf0\x86\x0c\xc0\xa7\x8d\x45\x1d\xff\x11\xc2\x6a\x6b\xa0\xc5\x36\x10\x37\x55\xdd\x88\xc1\x60\x4a\xf2\x82\xd3\x71\x8f\xaa\x41\xa3\x6b\x4c\xce\xd2\x73\xf0\x62\x8f\xf0\x51\xef\x2c\x51\x99\x47\x75\x92\x1e\xfc\x55\x7a\x81\xce\x0c\x97\x1d\x7c\x53\x3b\x9b\x64\x8e\xae\x9c\xee\xe4\x95\x2e\x51\xd5\xf6\x26\x45\x7a\x03\x6c\x44\xb8\x86\x18\xcf\x96\xcb\x6b\x70\xd4\x7f\xd6\xef\x9b\xae\xfa\x7d\x54\xa6\xe7\x89\x6e\x01\xf7\xfb\xa5\x9e\xe9\x39\x76\xe5\xd9\x1c\x15\x86\x07\x56\x24\xd0\x5a\x65\x7d\x7e\x46\x06\x21\x54\xb5\x8f\x6e\x35\xda\x45\xd8\x79\x02\xb5\x27\x24\x0c\x79\x86\x27\x00\x0a\xa1\x8e\x43\xd6\xef\x73\x54\x23\x57\xfd\x58\xda\xf3\x19\xe8\x2e\x06\x6d\xe2\x23\x7e\x22\x52\xe6\xd1\x14\x46\x29\xf0\x84\x4a\x92\xa5\x37\x67\x2b\x4d\xc7\x8c\x29\x29\xa9\xaf\xb4\x54\xe0\x1b\x01\x96\x8a\x86\xc4\x30\x6e\x43\x6b\xe4\x0d\x71\x3f\xc9\x02\x49\x32\x43\x05\xc6\x84\x07\x66\xe2\xe1\x0e\xfd\x00\xc7\x15\x29\x37\xe7\xe6\xdd\x19\x28\x06\x0e\xf8\xd5\x73\x15\x2c\xee\x6e\x36\x3c\x50\xda\x2b\xac\x75\x32\xe1\xa2\x04\x03\x62\x11\x82\x46\x51\x4f\x02\x86\x5b\x60\x92\xa9\xd2\xc5\x7a\x47\x61\x43\x3b\x11\xae\xfd\xea\x21\x28\x7f\x41\x65\x04\xf8\xaa\xe1\xdf\xc3\xa6\x6e\x4a\xaf\x89\x1a\x04\xb2\x16\xef\xa7\xf5\x8c\x95\xc9\xf9\xb5\xa4\xaf\xe1\x94\x04\xce\xe8\x46\x1b\x72\xc9\xc9\x70\x4a\x78\x2a\x27\x23\x17\xaf\xe9\xe1\x37\x48\x0c\x38\x3e\x78\xb4\xcf\x2b\x22\x13\x59\xfc\x70\x2d\x29\xf0\x4f\x83\xd6\x11\x85\x6e\x2a\x4b\x0b\xd5\x54\x99\x16\x93\xd1\xd4\x28\xe0\x31\xb4\x83\xa9\xf8\xf0\x1b\x24\x07\x42\x75\x21\x2a\x34\x04\x6f\x76\xd8\x68\x31\x94\x4f\x87\xc7\xd9\xfe\xa3\x71\x06\xfc\x0b\x1d\x48\x74\x7e\x24\x06\xe9\x23\x2c\x53\x3e\x69\x38\xde\x15\x78\xfa\xe4\xc9\xe8\xbb\x6d\x3b\x79\x30\x82\x8c\xc3\x6e\xc6\xa1\xca\x78\xdc\x4d\x7f\x88\xa7\x64\x39\x99\x0d\x06\xd3\x54\x3e\x7d\x3a\x7a\xdc\x3f\xfc\xf6\x5b\x2f\xe1\x3b\xff\xfb\xf0\xdb\x6f\xfb\xce\xdc\xed\x30\x4d\xd3\x12\xc0\x37\x34\xb6\xc0\x08\x46\x78\xfa\xf4\xe9\xa3\x46\x5b\x98\x8c\x6e\x6d\x65\x34\xdc\x31\xc3\x47\xc1\x09\x3e\x7d\x7a\x78\xeb\xd0\x31\x59\xaa\x7d\x9d\x8b\x62\x15\xde\x59\xe7\x41\xc6\x0b\x87\xa0\x68\x8c\xff\xf9\x90\x14\x9e\xde\xdb\x3e\x3b\xca\x9e\x94\x47\xd9\x20\x1d\x3d\x7e\xf8\xdd\x43\x6c\x62\xcd\x2f\x11\x25\x19\xc9\x06\x90\xf8\xb4\x3c\x2e\xc7\xe6\x77\xcd\x74\x1e\xe9\x50\x09\x32\xa5\x13\xbe\x3f\x9a\x12\x53\x53\x4c\xe4\xd3\xa7\x87\xd3\x81\x98\xc8\x27\x4f\x1e\xf5\x1f\x3f\x9c\x0e\xe2\x34\x8d\xb1\x0e\x1f\xc5\x60\x7d\x90\xaa\x72\x38\x7d\xf2\xe4\x3b\x3c\x08\xd4\x1e\x0d\xa1\xfa\xd3\xa7\xba\x3a\xb4\x74\x68\x5a\x02\x87\xe8\x86\x09\x1e\x2b\xe4\xd6\x8c\x93\x30\x99\x12\x96\x86\x82\xc6\xfd\xc4\xb8\xfc\x0e\x56\xe9\xb8\xfe\x39\x86\x7f\x49\x91\xc6\xcf\x7e\x78\xfe\xe3\x8b\x97\xbf\xf9\xed\xab\x7f\xfd\xdd\xeb\x37\x6f\xdf\xbd\xff\x5f\x1f\x4e\x4e\x7f\xfa\xfd\x1f\xfe\xed\x8f\xff\x3b\x3b\x9f\xe5\x74\x7e\xb1\x60\x7f\xfe\xb4\x5c\xf1\x62\xfd\x1f\xa2\x94\x9b\xcb\xab\xcf\xd7\x7f\x19\x8e\x0e\x1f\x3e\xfa\xf6\xf1\xaf\xbf\xfb\x7e\x70\x10\x9b\xf5\xb4\x5e\xd8\x61\x51\x07\x83\x0c\x8b\x49\x36\x4d\x8b\x49\x36\x25\x7c\x52\x34\xfd\x4d\x4f\xd3\xac\x21\x46\xae\x71\xb3\x6e\x43\xdd\x5c\xf2\x7f\x3e\x7a\x3a\xdc\xad\x93\xab\x49\xca\x24\xd2\x08\xc2\xb9\xcd\xcf\x22\x08\x08\xbf\x5e\xd2\xa8\x98\x47\x8f\x62\xfb\x02\xf0\xc4\x5c\x69\xdc\x70\xec\x2d\xc0\xf3\x86\xc4\x64\x22\x88\x00\xff\xd6\xc3\xf1\xa3\x7d\xf1\x3f\x1f\x4d\xdb\x81\x87\x79\x0d\x5a\xe0\xc3\x52\xab\xed\xca\xa3\xf2\x09\x3f\x2a\x07\xe9\x43\xcc\xd4\xf6\x96\x0a\xe2\x1f\xf7\x47\x8f\x7f\x3d\x1a\x3d\xfe\x6e\x88\x07\x2a\x6d\x30\x52\x5b\xde\x7f\xfc\xed\x21\xa4\x28\x38\x56\xa9\x87\x53\x4c\x32\xbb\xfd\xa8\x48\x19\x7e\xfa\x74\xf4\x9d\xd9\xfa\xe2\xe9\xd3\xd1\x61\xfd\xfb\xb1\xf9\xf9\xf8\x61\xbf\xa8\x63\x5d\x64\x35\x40\xf0\x49\xbc\x1f\x37\xfd\xc1\x4f\xd3\xc7\x87\x84\x4f\xe2\xb3\x6e\xfa\xc3\x3b\xa2\x8c\x98\xd0\xc1\x84\x91\x22\xf8\xfe\x45\xd9\x7f\x41\x8e\xe2\x5e\xf4\x4d\x34\x5b\xb2\xf5\x79\x91\x89\x3c\xf9\x73\x19\x5d\x1e\x26\xc3\xe4\xb1\x4a\x5e\x48\xb9\x2e\xc7\x07\x07\x2e\xfb\xcf\x65\x32\x2b\x56\x07\x2a\x4f\xfd\xe7\x78\x80\x6f\x5e\x9d\x46\xff\xff\xff\x5f\xf4\xbf\x29\x2f\xa2\x0f\xc5\x6c\x91\xed\x45\xdf\x1c\x04\x22\xf6\x45\x01\x9d\x0d\x8f\x62\x11\xc6\xcb\xa0\x9c\xf0\xa9\x33\x79\x99\xf0\xa9\x95\x76\xec\xd5\x32\xe7\xf4\x86\x8d\x39\x59\xaa\xf7\xb1\xc9\x1c\xdf\xd4\xd7\x2c\x55\x95\x80\x54\x63\xb6\x2e\x61\xa4\xfe\x2d\x30\x61\xc9\x32\xed\x0d\xeb\x34\x17\x03\x3a\x59\xa5\xea\xe1\x32\x4b\x25\x11\x49\xde\x71\x55\x2c\x12\x1d\x76\x7d\xbb\xdd\x15\x6f\x54\x86\x82\x8d\xf2\x0a\x57\x44\x24\x2d\xd7\xff\x01\xcc\x65\xb7\xd1\x6c\xa1\x75\x34\x78\x9a\x5d\xf4\xfb\xbb\x7a\xec\x96\xb5\x64\x75\xfc\x06\x0c\x92\xe3\xdb\xc2\xa3\x9e\x9d\xd1\xd2\x14\xb3\xd5\xd4\x53\x44\x0d\xb7\x1d\x6d\x8f\xcd\xd1\xa8\x2f\x81\x7e\x17\x88\x62\x4c\xbe\xeb\xcb\x3a\x98\x3d\x9b\xa3\x47\x2a\xd7\xf3\x09\x94\x81\x70\x1f\xec\x27\xeb\x6e\x9a\xe1\xef\xb9\x7d\xd2\x69\x36\x1a\xf8\x10\x33\xae\xa8\x15\x3c\xec\x18\x37\x27\xb1\x91\x65\x75\x62\xbb\x9a\x07\x45\x85\xc9\x21\x8c\xa6\x1b\x9b\xa4\x25\x65\x11\x49\x8e\xd4\xa1\x0f\xf1\x7c\x26\x72\x6a\x3c\xc6\x98\xe0\xec\x5e\xf4\x71\x22\x12\x1e\xa0\xd2\x5a\xb3\xed\xbe\xc9\x23\x6a\xe5\x70\x55\xe8\xad\x54\xbf\x17\x0c\x17\x32\x26\x12\x3c\xc4\x8a\xa4\xed\xce\xc2\x14\x34\x4b\x54\x4b\xca\x9b\x0e\x41\xcc\xf3\x0c\x3c\x3e\x88\x64\x9d\xc6\x31\x11\x48\x24\x65\xfa\x18\x57\x68\xd2\x60\x36\xee\x16\x92\xc2\xc3\xea\xe4\xc5\xeb\x17\xcf\x4f\xf5\xcb\x9c\x17\x39\x7d\x9b\xad\x28\xa6\xc9\xbc\x98\x29\x7a\x97\xa8\xcb\x0c\x56\xdf\x85\x43\x88\x5f\xbd\x7d\xff\x53\xab\xc2\x76\x1b\x9f\xbe\xf8\xb7\xd3\x67\x1f\x5e\x3c\x6b\xb5\xe4\xd4\x33\x16\x59\xf9\x4c\x4a\xc1\xce\x37\x92\xa2\x58\xd0\x2c\xd7\x82\xb7\x3d\xb1\xdd\xd2\xa4\xa4\x32\x94\x4b\xe2\x18\x62\x17\x50\x90\x5b\xeb\x9f\xf2\x04\xbe\x58\xc1\x3f\xa8\xc7\x32\x1a\x12\x33\x42\x17\x3e\x05\x5a\x34\x01\xbb\x42\x5d\xd6\x93\x82\x90\x19\x37\xed\xc1\xcd\xb4\x97\x15\x9a\x33\xd0\x77\x88\x15\xb8\xdb\x05\x31\xf0\x6d\xbc\x39\x5d\x78\xa3\x81\x78\xf7\x79\x31\x03\x25\x06\x03\xf9\x7a\x84\x78\x8f\x99\x29\xbc\x2d\x72\x6a\x7c\xb8\x94\x8a\x5a\xf7\xe2\x8a\x41\xd1\x12\xf4\x24\xb3\x3c\xd7\x15\x99\x1a\x2a\xf7\xdd\xd9\xba\x57\xc9\x4e\x4f\x67\xf8\xa6\x92\xbe\xa3\x89\x96\xfd\x4c\x1d\xac\x5a\xab\x0c\x6c\xb7\xda\xdf\x05\x05\x36\xa3\x95\xb2\x4d\xe8\x74\xbb\x85\x3f\xe9\x64\x8a\xb1\xd1\xf5\x9a\x43\x10\x4f\xf9\xb9\x8e\xdf\x49\x8a\x46\xf4\x80\x4e\xfb\xcd\x20\x93\x10\x60\x0d\x6c\x0c\x89\x34\x81\x05\x44\x1d\x27\xdc\x4d\x8e\x25\x67\xd6\x7d\x8b\x36\x49\x24\x02\x57\x84\xae\x98\x1c\x07\xc9\xe3\x74\x32\x0d\xc7\x22\x80\x60\x3d\x08\x05\x26\x8a\x61\x82\x93\x29\x36\x4e\x96\x31\xe1\xe9\x90\x30\xa7\x02\x73\xc4\x9f\x30\x08\xd2\x25\xd4\xad\x33\xb7\x01\xea\xe0\x6b\x26\x3f\x13\x89\x9b\x51\x75\x8b\xf9\x3c\xe8\xd3\x25\xd0\x35\xd1\x7e\x6c\x09\x4b\x27\xc0\xa7\xe4\xfd\xbe\x74\xd8\x4b\x07\x3c\xb1\x06\x11\x47\xc5\x93\xec\xa8\x18\x0c\x30\x9f\x14\x6a\x14\x5a\x59\xc9\x7c\x24\x67\xfa\x93\x19\x0b\xa5\x89\x47\x4d\x59\x4d\x23\x70\x96\x9b\xb2\xb1\x31\x6b\x84\x7e\x61\xc0\x15\xa9\xd1\x82\xac\x7f\x27\xa7\x8c\x5f\xbf\x58\x31\x29\xa9\x48\x65\x97\xb2\xb2\x5a\x0c\x0f\xad\x12\xc3\x0e\xa7\x8e\xc6\x2a\xad\x47\xfb\xfd\x9e\xec\xf7\x7b\xa2\x4b\xff\xbe\x61\x25\x98\xaf\x3a\x47\x19\x6e\xdb\x8c\xfb\x2c\x9e\x68\x24\xdf\xb4\x68\xf3\x02\x4f\x9d\xd0\x59\xc1\xeb\x7a\x1e\xe9\xac\x4f\x8b\x6b\x67\xce\x9b\xee\x90\xbc\x36\x4e\x17\x4c\x04\x9b\xb0\x6e\xf2\x74\x23\x1c\xf0\x99\x67\xb4\xbb\xe3\x3d\x4d\xd5\xd1\x85\x40\x21\x36\xde\x1f\x58\xe8\x91\x9b\x9c\x96\x52\x14\x0d\xbf\x66\x16\x43\x75\x8b\x43\x80\x48\x68\xb7\xee\x5b\x15\xb8\xbb\xff\xb6\x76\x95\x61\xd6\xd8\xcb\x02\x35\xef\x85\xe0\x58\x2b\x1c\x1e\xee\x97\x35\xbd\x73\x6a\xb8\x33\x3b\xb3\xcb\x77\xce\x8d\x21\x87\x5b\xcf\x8b\xfc\x9a\x18\x4d\x72\xdb\x56\x70\x7b\x5f\x32\x51\xca\xdd\x10\x42\xa2\xdf\x9e\xbe\x79\xfd\x42\xfb\x6e\xd1\x1f\xcf\xb5\x8a\x14\x2b\x38\x89\x0a\x11\xbd\x35\x4b\x1f\xb7\xfd\x9f\xe2\x1b\x09\xfb\x12\x52\xb6\x72\x9a\x85\x8a\x6a\x88\x6c\x44\x92\x62\xee\xf7\xa6\xc3\x4c\xe9\x7b\x52\x0d\x58\x87\xac\xd3\x9d\x05\x02\x83\x74\xa8\x01\x7b\x25\x58\x36\xed\x5e\xa0\x6f\x14\x4f\x34\xd5\xe6\xa6\x31\x55\x97\xb3\xd8\x6e\x5d\x46\x73\xca\x3a\x1b\xf7\xfb\xb1\x46\x1f\x31\x83\x07\x0b\xf2\xc3\x77\x6d\xb7\xd2\x1c\x86\xc9\x70\xaa\xc3\xb7\x95\x2d\xd7\xea\xb7\x88\xd0\xb6\xdb\xc6\x82\xe8\x39\x00\x17\x24\xe4\x3d\xd5\x0d\xd3\x9e\x46\x18\xe0\x9d\x6b\x11\xd0\xc5\xb2\x88\xeb\x5b\xec\xdf\x48\xc6\x9a\xc7\x8a\xa5\xb2\xb4\x30\x78\x1e\x14\x55\xea\x8b\x69\x6f\xf7\xf1\x16\x24\x53\xd7\xd9\xfd\x0f\xb8\xae\x50\x55\x7e\xf8\x64\x3d\x0e\xd6\x7d\x51\x29\xe8\x07\xfe\xe7\x45\x26\xe9\x29\x48\x96\x20\x92\x9c\x11\x32\x69\x39\x78\x23\x5b\xdd\x07\xe6\x48\x2a\x44\xb2\x0b\x3d\x13\x4e\x0a\xb7\xca\x41\xd9\x47\x6b\xa2\xc7\xcc\x8f\x04\x54\x2f\x4d\x48\x2a\xab\x0a\xd7\xe4\xb5\x3d\xb5\x78\x47\x03\x28\x24\x04\x46\xb4\xa6\xa4\xfe\x63\x43\xc5\xb5\xa6\xb2\x0a\xf1\x0c\x76\x18\x77\x62\x11\xad\xb2\x75\x10\x15\x39\xe4\x51\x4f\x1b\x38\xd4\x55\x3b\x94\x70\xe8\xdd\xe6\xce\x6a\xcf\xfc\x6a\x74\x08\xc2\x18\xfb\x40\xe8\x14\xd8\x93\xb6\x48\xea\x7e\xd9\x49\xa8\x33\xb4\x2a\xfe\xf2\x26\x90\x5a\x06\x12\x8b\x40\xda\x15\x3d\xff\xc4\x64\x2b\x63\xc7\x76\x6b\x52\xe9\x88\xf6\xfb\xdf\xf7\x7c\x9c\x73\xa4\x27\x1e\xda\x7e\x33\x60\x45\xf7\x9a\x9f\xea\x1a\x76\x6f\x3c\xaa\x55\x0d\x29\x07\x82\xf6\x4e\xe5\x47\xad\xb3\xd1\xf2\xff\x93\x70\xf5\x12\x2c\xee\xc7\x7d\x49\x33\xd4\xe2\xbc\x04\xfd\xdf\xab\xa7\xe9\xdf\x8d\xed\x92\x69\x8f\xa6\x8d\xd0\xac\xf6\x4c\xd3\x4e\x48\xdb\x23\xf1\x44\xfa\x31\x95\x2d\x91\x3c\x11\xd3\x3d\x9e\xd4\xaf\xdd\xd4\xff\xd8\x6e\x7b\x23\x02\x92\xe1\x39\xbb\xd8\xe8\xfc\xde\x90\xc4\xf0\x76\x51\xd8\x99\xf7\xfb\x88\x27\x57\x42\x3f\x54\xd2\xde\x70\x37\x4f\x80\x83\xe5\x0a\xc7\xb5\x28\xab\x96\xcb\xfb\x9a\xe7\xa2\xdf\xa7\xc8\x03\x64\x13\xf5\x5f\x47\xad\x23\xb2\xaa\x20\xb4\x56\x78\xd2\x12\xdf\xf4\x3a\xdc\x85\x1e\x6a\xe0\xfc\x5d\xe4\x9c\xf1\x0b\xaf\x0e\x71\x94\x45\xb3\x65\x56\x96\x51\x56\x46\x99\x1b\x67\x8c\x2b\x1b\x42\xdb\xc5\x31\x29\x96\x97\xf4\x9d\x96\x46\x3b\xef\x8d\x8c\x33\xff\x51\x66\xa7\x5b\x22\x4a\x26\xe0\xcc\x26\x6e\x56\x8c\x0d\x77\xc1\x9b\x92\xd6\x5b\xef\x04\xcb\x1e\xf6\xfb\xee\x7e\xad\x83\xe8\x0e\xa7\xc7\xfe\xc7\xd8\xba\x6a\xd0\xb2\xbf\xd4\x0a\x01\x9d\x5f\x61\xad\x7a\xeb\xeb\xe5\x1a\xed\x6d\x43\x77\x53\xfb\xcb\x84\x2e\xd1\x68\x9f\x3a\xa4\xaf\x03\xd2\x7c\x86\x24\x90\x11\x42\x82\x60\x17\x17\x50\xd9\xfc\xd2\xc9\xfa\xd5\x49\xf3\x53\x55\x3e\x8e\xab\x4a\xbb\xf3\x89\x1b\x6b\x14\x58\x00\xd7\xc9\xb1\xd7\xcc\xcb\xec\x13\x45\x78\xec\x8d\xca\x38\x3d\xd5\xd9\xfa\x02\x02\x07\x16\xba\x93\xba\xd6\xce\x25\xd6\x1a\xa1\x69\x2c\xa4\x3a\xe5\x0e\xe5\xdb\x1f\x16\xab\x5e\x34\xb8\x03\x39\x13\xb1\x51\xe4\xd6\x37\xac\x1e\x98\x71\xd6\x92\x7d\xa2\xbf\x05\x0d\x79\xf1\x3c\x5b\x2e\xcf\xb3\x59\x28\x38\x35\x6d\xd4\xac\x3a\x55\xd3\xe6\x66\x75\xef\xfd\x78\xb6\x64\xb3\x4f\xf1\xce\x3e\xf1\x76\xdb\x1b\xd6\xb9\x6a\x22\x6d\xde\x80\x99\x9c\x36\x5a\xca\x04\xcd\x62\xdc\xac\x90\x94\xf2\x7a\xa9\x28\x6d\x2e\x4f\xd8\x5f\x68\x1a\x8f\x0e\xd7\x32\x0e\x96\x39\x2f\x44\x4e\x45\x1a\x0f\xc3\xd9\xeb\x2c\x87\x78\xe2\xbb\xf2\x57\x99\xb8\x60\x7c\x77\xf5\x42\x4b\x83\xd3\x38\x33\x91\x8a\x83\xe5\x26\xf2\x38\x06\x9d\xd2\x78\x1c\x2f\xe9\x5c\xc6\xd3\x34\xde\xff\xfe\xfb\xef\xbf\x5f\x7f\xb6\xa1\x6f\x0c\xdb\x64\x9d\x5d\xd0\x3f\xbe\x9b\xcf\x4b\x2a\xb7\xdb\x9d\xbb\x5e\xce\x44\xb1\x5c\x9e\x16\xeb\xbd\xd0\xa0\x64\xb1\x4e\xc5\x20\x5e\x7f\xee\x8c\xe5\x16\x56\x52\xb3\x24\x00\x65\xea\x60\x9d\xb4\x37\x7d\xbd\xa6\x3c\x7f\xbe\x60\x4b\xed\x5b\xda\x55\xc4\x81\xc3\xc5\x10\x0e\x16\x9a\x15\xeb\xeb\x53\x50\x6c\x70\xe7\xa2\x06\xbd\x5d\x27\xcf\x03\xa8\x7e\x1f\xb5\x86\x15\xa2\x2a\xef\x04\xc7\x2e\x84\xd7\xc1\xf6\x43\x47\x06\x38\xb6\xcd\xe5\xda\x35\x92\xdd\x0b\xe4\x20\x1f\x5a\x6b\xe1\x05\x8d\x2e\x76\xad\x40\x78\x6d\x35\xd6\xd9\xbd\xb2\x36\x69\x27\xbe\xd1\xe8\xdb\xb8\x2a\x75\x80\x47\x3f\xd3\xd9\xf3\x62\xb5\xca\x8c\x13\x71\x83\xb1\x3d\x1f\x5c\x34\xed\x99\x80\x34\xda\xfa\xe6\x03\x2d\x37\x4b\xa9\xdf\x1a\xba\x6b\x3f\xbd\xd3\xbd\xf5\x0a\x6b\x10\x3b\xfc\x45\x8a\x94\xd8\xcc\x66\xb4\x2c\xe3\x71\xac\x6d\xdf\xc8\x8d\xee\x79\xec\x8d\x42\xdb\xe0\x76\x16\x85\x18\x3c\x3f\xf6\xd1\x3f\x01\x5d\x06\x87\xd8\x75\x5e\x33\xcd\x77\x95\xee\x2d\x5c\xa3\xcc\xce\x0b\x41\xf7\x62\xb0\xbe\xf9\x72\x9c\x62\xb7\x9c\x6a\xdc\x97\x16\xbd\x25\xe7\xcb\x8d\x40\x98\x04\x19\xa6\x5d\xee\xa7\x1b\x91\x79\x50\xed\x1a\x4a\x03\x7d\xdb\x3a\x99\x19\x7d\x49\xe5\x57\xbb\xcd\x01\xa6\x62\x10\xe4\x42\x20\x18\x7b\xab\x13\x9d\xe1\x02\xde\xe8\xf4\x7e\x3f\x9e\x6d\x64\x3b\xb5\xc3\xfd\x7a\x60\xa5\xbf\x76\xc8\x91\xd6\x6b\x84\x80\x43\x94\x81\x63\x79\xdd\x7e\x54\xa8\x5f\x1b\x19\x3f\xd0\x0e\xc0\x77\x79\xc6\x37\x3d\xb9\xa5\x90\xe6\x74\x35\x96\x82\x7a\xba\x8e\xea\x25\x60\x98\x74\xdb\xad\x95\xee\xf4\xd2\x14\x79\xfa\xc0\x7e\x84\x87\x42\x3d\xbb\xb6\xdb\x51\xe3\x05\x71\xcb\xc4\xcc\x00\xfc\x89\x65\x91\xce\x33\x90\xf1\x40\x2b\x76\xc1\x34\x53\xb3\x60\x76\x15\xdb\x1c\xf9\x9c\x95\x8a\xc0\xcd\xe3\xae\x77\xab\x6e\x97\x99\xad\x97\x44\xef\x97\x34\x2b\x29\xf4\x5e\xdf\x04\x40\x8d\xd2\x2c\x8f\x8a\x79\x54\xb7\x5c\x57\xb3\x03\xdb\xc8\xce\xb8\xd0\x6e\x39\xc6\x76\x7b\xcb\xa0\xbf\x6c\xd4\x7f\x2c\x36\xd1\x2c\xe3\x1f\x1f\xc8\x68\xb6\x91\x91\x42\x00\xd1\x5c\x14\xab\x88\xea\x95\x33\xa1\x92\xbc\x19\x29\x28\x09\xcc\xa4\x7c\x60\xe8\xa4\x33\x4b\x45\x56\xb7\x43\x91\x2e\x56\x55\x53\x4c\xa8\x22\xf4\x97\xe0\x82\x98\xcc\xe0\xb9\xb6\xc4\x64\xae\xfd\xb6\xe6\xf0\x3d\xc7\x64\xf1\xcf\xfe\x7c\x5b\xff\x77\x7c\xbe\xad\xd2\x1d\xb2\x23\x30\x84\xfc\x3b\xbc\xe0\x1c\x33\xa0\xdb\x95\x8f\x53\x3e\x50\x08\x05\x36\xb3\x1d\x80\x3d\xd1\x22\x2b\xf9\x03\x19\x9d\x53\xca\x23\xa3\x01\xc9\x4a\x9a\x47\xfb\x51\xb9\x59\x53\x81\x70\xa3\x84\x1a\x8c\x3a\x81\x86\x85\xd7\x93\x0d\x64\x97\x21\x89\x7d\xd0\xea\xd5\x8a\xdd\x74\x2c\xcd\x60\x91\x4c\xce\xce\x60\x3d\xcf\xce\x9c\x86\xc0\x05\x95\xef\xed\x12\xbf\x9b\x23\x89\xbd\x88\xea\x9e\x3c\xb9\xfd\x46\x55\x9b\x01\x31\xab\x28\x7f\xae\x28\x36\x90\x01\x76\x76\xd4\x85\x2a\x09\x0c\xac\xdf\x57\xc4\x54\x2b\x7c\x89\x2f\x15\x51\x8b\x10\xd5\x91\x3a\x35\xd3\xdb\xdc\x29\xe7\x34\x52\xb5\x15\xba\xa8\x77\x85\x80\xbd\x56\x3c\x50\x8b\x81\xf7\xa8\x27\x3b\x6c\x0a\xf1\xd5\x6b\xcf\x83\xab\x86\x07\x7b\x67\xf8\xe0\x8b\xed\x47\xc4\x42\xf6\xb8\x37\x24\xfe\x29\x18\xf7\x86\x55\x85\x89\xec\xf7\x91\xe9\xa3\x6c\xac\xe7\x71\x30\x15\xd6\x65\x4c\xeb\xdd\x48\xa5\x02\x28\x42\x31\x59\x23\xf9\x9f\xf2\xb8\x0f\xf3\x4e\x21\xe5\xd8\xfe\xd0\x54\x98\xd1\x0e\x78\xe6\xf1\x02\x0c\x4e\x0e\xb6\xa1\xf3\x8e\xed\x8f\x46\x1b\xa7\x6d\x46\x40\xb8\x05\xf5\x7a\xd7\x7f\x9a\xb5\xbb\x2f\x9d\xd4\xd3\xee\x58\x20\x8f\x31\x81\x8f\xbd\x8f\x71\x43\xfe\xe2\x28\x0d\x0f\x9a\x43\x74\x6f\x1d\xc4\x40\x2f\xdc\xd2\x3c\x59\xd2\x1c\x61\xa4\xa8\x28\x5d\x31\x18\x8f\x22\x29\xdc\x29\xd1\xf1\x41\x74\x8f\xc5\x5d\xbd\xd1\x16\x53\x5c\x5d\xcd\xb3\x8d\x10\x94\x9b\xb5\x33\x41\x97\xac\x0a\xd4\x33\x7b\xbb\x87\x92\xfd\xa7\x50\x27\x8b\x5e\x45\x1b\x14\x20\xda\x81\x19\xe5\xed\x9c\xfe\x0d\xa9\x6e\x3f\xd4\x2f\x13\x6f\xd1\x2c\x70\x73\x57\x6a\x0a\x9f\x98\x77\x03\x14\xa8\x7c\x1a\xd9\x83\xa9\xd0\x72\x58\xa1\x10\x72\xa4\x31\xed\xd4\xde\xf1\x0e\x73\x8b\x79\x89\x1c\x31\xa9\x55\xf1\x9d\x76\x50\x98\x43\x8f\x64\xb7\x8b\xd0\x93\xac\x31\x3c\xed\xb7\x85\xde\x9b\xfc\xb7\x50\x94\x98\x72\x28\xbc\x41\x3b\xb6\xf4\x8e\x5a\xf6\xb9\x3a\xb5\x28\x85\x95\x27\x3a\x38\x05\xcd\xbf\x36\x3e\x99\x68\xfa\x97\x00\xb5\x39\x25\x32\x60\x12\x77\x0c\x86\x70\x44\xa4\xbd\x5e\x73\xc5\xcd\x93\xd5\x8d\xcd\xa9\x24\xec\x50\xd2\x4f\x45\xbf\x7f\x57\x1b\xfa\xa8\x11\x01\x24\xa0\xac\xd0\x2c\xc9\x3c\x91\xd9\x65\x23\x5e\x4d\x9e\xc9\x6c\xdf\xad\xdd\x7e\x3c\x00\x75\x31\xd9\xa4\x82\x85\xe7\xe8\xba\xc1\xc6\x13\xb8\x92\x16\x27\xa5\xab\x6a\x8a\x9d\x02\x15\x69\x28\x9b\xc1\x0d\xdd\xd4\x3e\x3b\xae\xe5\x1c\x05\xc2\x63\x04\x4a\xc3\xee\xdd\x82\x58\x00\x21\x22\x91\x16\xf8\x58\x58\xf9\x1e\xe1\x78\x2c\xf0\x76\x8b\xea\x96\x18\xc6\x95\x77\x89\x13\x81\x1e\x62\x08\x60\xbb\x5b\x0b\xe2\x51\x53\x9a\xe8\xa9\x7b\x35\x85\x7b\x76\xc5\x10\x84\xba\xbc\xa9\xd4\x54\xc1\x78\x96\x8a\xed\x36\x4e\x62\x52\x80\x8c\xe8\xf3\x8f\x74\x2d\x17\x24\x4b\xa5\xb6\xc0\x98\x17\x62\xf5\x3b\x7a\xbd\xdd\x32\x52\x7a\x4e\x54\x3c\x2a\x95\x91\x0d\x59\xe2\x9b\x65\xba\xdc\x6e\x47\x8d\xd8\x4d\x2c\x64\xed\x34\xd3\x03\x99\xa7\x6c\x32\x9b\x92\x3c\x95\x49\x99\xcd\x69\xbf\xaf\x85\x69\xac\x84\xbf\x9a\xac\xbf\x43\xc8\x3a\x07\x7f\xff\xea\xcf\x2a\x75\x52\x5a\x5d\x07\x64\xb4\x0b\x4f\xc6\x0c\xad\xea\x54\x72\x99\x6e\x8e\x37\x03\x31\xc8\xd0\x0c\x8f\xd5\x3f\xa0\xa2\x91\xf7\xfb\xbd\x75\xbf\xbf\x72\xda\x90\x30\x85\x39\xae\x6d\x8b\x7a\xf5\xfa\x6c\xb7\xcb\x27\x45\x2d\x8b\x42\x73\x72\x49\x96\x83\x11\xde\x2b\x27\x97\xd3\x74\x6e\x22\xe7\x92\xd2\x13\x86\x15\xa4\xb0\x7e\x65\xe1\xf7\x86\xdb\x2f\x5f\x76\x51\xbb\x31\x46\x10\x2d\x31\xb0\x4f\x65\x2a\x92\xe2\x92\x0a\x45\xd7\x68\xea\x7e\x93\x8a\xce\x66\x2d\xd5\x66\xb1\x39\xe2\x10\x6d\xb7\xb3\x3c\xbd\x3b\x45\xd8\xb5\xa8\x4d\xd6\x00\x36\xab\x51\xf2\x5b\x70\x43\xe4\x49\xfd\x59\xf9\x36\x7b\x0b\xbd\xed\xeb\x07\xba\x53\x12\x4f\xd4\xc3\x54\x24\x7a\x08\x40\xd4\xda\x96\x1b\xc1\x09\x25\x4e\x04\xcd\x37\x33\x1a\xf6\x08\x75\xd7\x78\x27\xdc\xe9\x1e\x85\xa6\xcb\xfa\xfd\x36\x34\xa8\xd4\xed\xb6\x7b\xdb\xdc\x29\xdc\x27\x22\x08\x70\xd6\x10\xa4\x47\xb7\x5b\x14\x00\x3d\x79\xdc\xb3\x1a\x0c\x63\x71\xdc\x6b\xd8\x08\x5a\x38\x1b\x1b\xfb\xb5\x4a\x4f\xe8\x18\xd1\x09\x9f\x82\x66\x32\xa1\xb8\xa3\xe4\xd6\xd4\xd3\x84\x96\x44\x60\x15\x7d\xf7\xe8\x72\x42\x07\xd9\x80\x4f\x53\xa1\xda\x94\x15\x38\xec\x40\x9c\x50\x52\x40\x97\x44\x28\x1c\x44\x6e\xaa\x56\x1c\xb6\xd0\x59\xf6\x95\xf8\x53\x6e\x5c\x5b\x65\xda\x74\x73\x83\x49\x91\xce\x10\x4b\xca\x05\x9b\x4b\x84\xd5\xbb\x7d\x86\xd8\x64\x38\x55\x4f\xf7\xe5\x91\xbb\x97\xe6\x47\x7a\xdd\xef\x3c\xef\xf9\xa4\x98\xaa\x23\xff\x05\x67\x1d\x4e\x76\xa9\x4f\xb6\xeb\x10\xda\xd1\xab\x71\x84\x20\x73\xbb\x55\x85\xd4\x8d\x6b\x72\xfb\x7d\xe8\x2d\x8d\xb5\xb3\xad\xfa\xe9\x33\xf7\x00\xf9\xa6\x1a\x4f\x60\x32\xaa\x28\x61\xde\x9d\x8b\x76\xcd\x1c\x57\xd0\x2c\xb5\x2b\xad\xae\xb9\x65\x4b\x0f\xc0\xea\xce\xff\x48\x25\x15\x2b\xc6\x69\xc4\xe6\x51\xc6\x23\x33\x3b\xa6\x1e\xb3\x3f\x6c\xe6\x73\x2a\xf6\xa2\x6f\x54\xc1\x7f\xc9\x36\x72\x51\x88\x28\x8a\x5e\x52\x51\x94\x65\xf4\xec\xbc\xd8\x7c\x5a\x64\x39\xfb\x33\x5d\x44\x4f\xac\xb2\xfd\x1c\x32\x93\x42\x5c\x3c\x85\x5a\xc6\x53\x45\x14\xbd\x79\x75\xba\x17\x7d\x73\xb0\xc3\x93\x91\x7d\x45\xc2\x83\x8f\xda\x97\x5f\x83\xdd\x11\x64\x8c\x34\x4a\x24\xac\xd4\x43\x6e\x31\x4a\x5c\xfa\xed\x1a\x33\x0f\x1f\x6b\x5d\xbf\x87\xbf\x6e\x38\xec\xb7\x1c\xed\xe7\xb5\x3c\x73\xbb\xd5\xb6\x38\x5a\x08\x2b\xe9\x4a\x3b\xa0\x7c\x93\xad\x49\xcd\x87\x46\xbb\x38\x1c\x75\x2d\x12\x7b\xa3\x74\xea\xeb\x45\xf3\x69\x59\xe1\xca\x0b\xb7\xa7\xdb\xee\xc4\xc1\x2c\xd9\x5f\x68\x6a\xa4\x70\x39\x5b\x51\xae\x1e\xc4\x36\x01\xfa\xb2\x83\xaa\x88\xdf\x5a\x49\xdb\x4a\xf2\xc6\x8a\x24\xf5\x6a\x2a\x7a\xbe\xc6\xc0\xdc\xea\x78\xba\x7e\x06\x03\x63\x84\xd9\x5c\x27\xbf\xf3\x52\x35\x41\xb8\x09\x35\xee\xad\x65\x9a\x9e\x50\x79\x8c\x84\x3a\xd8\xec\x2f\x54\xab\x04\x83\xdb\x8b\x27\x3a\xc5\x0a\x5e\xd9\x5f\xe8\x60\xa0\x28\x20\xeb\x9a\x96\xf8\xe9\x56\x47\xd7\x9b\x9a\xd6\x04\x0d\x68\xb8\xef\x9a\x59\xaf\x27\x2d\x15\xad\x5a\xdd\x4f\x83\x43\x95\x90\x39\xb6\x2c\xb2\xd6\x92\xef\xef\xfb\xb3\x76\xf6\x9c\xa4\x37\x6c\x2d\xbc\xe6\xea\x87\xd7\x9e\xb0\x5b\xc6\xc8\xec\x18\x3b\x6b\x88\x44\xca\x6c\x97\x12\x63\x6f\xe1\xf6\xf7\x09\x98\xe7\x9b\x05\x45\xc1\x21\xb6\x27\x82\x89\xc0\x63\xb8\x64\x11\x4f\x99\xbb\x67\xa1\x65\xe4\x37\x0d\xb6\x75\x56\x0d\xf7\x7e\x6d\xab\xf5\x18\x2b\xdc\xb5\x06\x9d\x64\x4e\x46\xb0\x44\xb8\xb5\x48\x8b\x2c\x88\x25\xbc\x2e\x16\x99\x8e\xd4\xeb\xd7\xba\xa0\xf2\x8e\x5a\x7a\x49\x9b\xb5\x8c\x11\x1a\x9b\x31\x19\xb0\x3a\xdd\x7d\x1c\x6a\x7f\x0a\xc7\xc3\xf1\x7d\x20\xa6\xd9\xed\xac\xd8\x70\x99\xee\x1a\x48\xa3\xa8\xb9\x19\x43\x30\xe3\x7b\x90\xe2\xf8\xc6\xa8\x87\x4b\xc2\x15\xf6\x97\xdd\x17\xdb\xe8\x58\xbf\xcc\x7d\x60\x0d\xbc\xa4\xc0\x48\x03\xb4\xa6\x6d\x26\xd7\x7e\xb1\x02\xc3\x7a\x56\x96\xc5\x8c\x81\x8f\x9c\x4e\xd4\xfb\x2f\xea\x5f\x5b\x7a\xf8\x3d\x28\xd2\x60\x47\xd0\x6f\x53\x17\x88\x87\x56\x2d\x40\xa6\x65\x20\xa6\x0c\x11\x84\xa9\x77\x48\x5d\x5d\x17\x05\x87\xc2\xbd\x51\x23\x14\x71\x7b\x2f\x75\x5c\x42\xb7\x44\x91\x30\xd1\x51\x32\xf8\x83\xd4\x4e\x1a\xdb\x7e\xb0\xc0\xb7\x2e\x36\xb4\x57\x80\x61\xb5\x97\xa5\xbd\x21\xa1\xa9\xf1\xaa\xeb\x3a\x36\xa4\x2a\x98\xa4\xfb\xf5\x8f\x91\x1a\x11\x11\x08\xe3\xb1\x69\x64\x64\x9e\xe5\xd2\x3a\x04\xc0\x78\xdc\x1e\x15\xff\xab\x46\x45\x04\x18\x08\x58\x22\xd2\x99\x96\x3d\x4d\x99\x19\x0f\x0f\x8c\x47\xfb\x3f\xa8\x3a\xe0\x41\xb9\x14\xec\x96\x7d\x50\x8f\xc0\x7a\x27\x4c\x69\x84\x49\xf9\xa5\x5b\x61\x27\x5d\xda\x49\x67\xb7\x4f\xba\x54\x93\x16\x76\xd2\x93\xe1\xb4\x5e\x81\xc9\x68\x7a\x8f\xad\x29\x77\x2d\xc5\x44\x58\xb7\xc9\xd3\x5b\xb7\xe7\xeb\x8c\x94\xb0\x74\x48\x8a\xce\x76\xb1\xa7\x69\x71\xfb\x18\xe9\x84\x0d\x06\xd3\xc0\x96\x39\xbe\xdc\x1d\xa7\xce\x2d\x51\xa3\x76\x56\x23\x82\x3b\xea\xbb\xcd\xae\xc8\x6d\xb6\x84\xc8\x6b\xbd\xe3\xcb\x23\x0d\xc0\x1a\x6e\x8c\x87\xf1\x72\x4d\x67\xa1\xf0\x0b\xf5\x50\xbe\x7c\x00\xea\x45\x12\xf3\x22\xa7\x7f\x2e\x93\x8d\x64\x4b\xdb\x4d\x32\xdb\x94\xb2\x58\xc5\xb8\x39\x32\x93\xdb\x1c\x99\x2c\xfe\xf5\xe4\xdd\xdb\x3b\x06\x56\x80\xd9\x7c\x30\x2a\x8c\x76\x7d\x59\x1b\xe8\xb0\xa6\x4a\x30\x60\x6f\xa0\xbc\x8c\x3f\x43\x22\x7c\x63\x98\x62\xa7\x5d\x55\x6d\x31\x7c\xab\x63\x95\x7f\x42\x8b\x61\x0f\x6f\x53\x7c\xb3\x9b\x3c\x27\xf1\x19\x07\x3e\xed\x4d\x2d\xd7\x19\xb5\x24\x3e\xb5\xa1\xa6\xa6\x6e\x0a\x0e\xaa\x33\xc2\xdb\x60\xd5\x46\x2b\x8e\x96\x2b\xdb\x39\xe5\xb5\x9a\x60\x72\xa6\xd1\x41\xad\x8c\x6f\xbc\xb9\x78\x1d\x0d\x31\xa1\x77\x40\xad\xb8\xed\xd8\x84\x81\xae\xc2\x44\x24\xc5\xbc\x1b\x86\xa4\xb6\x34\xab\x4d\xfe\x09\xaf\xdd\xe8\x28\x50\xf4\x5d\x22\xd5\x2f\xba\xa7\xa9\x3c\x76\x93\xec\x5e\x1a\xdc\x5d\x1a\x22\xa1\xab\xb5\x4f\x7b\xf9\x21\x50\x84\x31\xac\x6d\xac\x08\xdc\x5a\xaa\x22\x0b\x92\x89\x0d\x49\xae\xa8\xa5\xa1\x8a\x56\x03\xc3\x5e\x23\x5e\x0c\x83\x9d\xde\x3d\xff\xc0\x88\xe6\x81\x31\x8e\x87\x02\x3b\x00\x8f\x43\xfd\xe2\x24\x22\x58\x42\x6f\x47\xc3\xef\x67\x1d\x44\xb3\x20\x19\x29\xc9\x66\x6f\x47\xd4\xb5\xe2\x7c\x69\xb7\xf1\xc0\xd0\x4c\xe3\x88\x19\x1d\x0b\xc8\x39\x5f\xd2\x44\x5b\x73\x05\xc4\xaa\x5d\x15\x9d\x70\x8b\x3a\x92\x1f\xe3\x17\x51\x06\xa2\xe5\xf3\x6c\xf6\xc9\xb4\xda\x64\xa2\x52\xbc\xdd\x4a\xc3\x59\xd5\x93\x4e\x58\xf9\x7b\x46\xaf\x20\x27\x64\x18\xe3\xf1\x50\x0c\x54\x4d\x8d\xbb\x2c\x67\xfd\x09\x66\x82\xda\x4b\x05\xf5\xbd\x54\x64\x83\x01\xe6\x88\x4e\x32\x08\x33\xe9\xec\x74\xbb\xd3\x74\x74\x29\x66\x73\x24\x9c\x41\xba\x9d\x67\xc4\x5a\xe8\xa6\xd7\xdc\x77\xb0\xcb\xe8\x1e\x1b\x84\x31\xd9\x59\x07\xc6\x5c\x68\xa3\xec\xb6\x11\x33\x2a\x30\xb8\x3b\x9a\x14\x53\x52\x98\x81\xab\xe2\x2c\xa5\x24\x4b\x87\x47\xbd\xa1\x7a\x67\x6d\x52\xd6\xa0\x04\x8e\x30\x47\x1b\x43\x94\x65\x98\x64\x83\x81\xae\xd9\xa0\xc7\x9d\xa3\xa2\x3f\x30\xb9\x78\xbb\x59\x2e\x7f\xd7\x20\x97\xff\x2a\xc0\xf2\x9b\xfc\xfa\x40\xd6\x6c\xfd\x1f\x1e\xe0\x34\x06\xb2\x30\xd7\xb4\xee\xa2\x12\xd3\xb0\x2c\x0a\x76\x00\xa4\x6c\xf8\xbf\x17\xc0\x6a\x61\x72\x18\x66\x3d\xac\xca\xef\x15\x89\xdf\x59\x2e\xb1\xff\xd8\xd0\xd7\x8c\x7f\x7a\x95\xc7\x8c\x23\x13\x46\x15\xf7\xfb\x48\x11\x07\xc5\x92\x26\x57\x99\xe0\x28\xe6\x17\x22\x5b\x2f\x12\xf8\x77\x1c\x81\xab\x30\x05\x59\xa0\x5a\x76\x69\x1c\xc2\x0e\x93\xd1\xa3\xe8\xdf\xfd\x26\xff\x3d\x62\x65\x94\xd3\xb5\xa0\xb3\x4c\xd2\x3c\xf9\xc8\x7f\x2a\x69\xf4\xef\xf0\x22\x87\xa6\xfe\x3d\xd2\x0e\x01\xad\x5e\xdd\x47\x1e\x43\xe8\x23\x12\xbf\x2d\x24\x1d\x47\x72\x41\x05\x05\xe6\xe9\xb2\x2c\x22\xed\xe2\x4e\xad\xaf\x91\xf7\x45\xe7\x74\x91\x5d\xb2\x42\x8c\xa3\x97\x6a\x24\xbc\xb8\x8a\x0a\x1e\xd1\x6c\xb6\x88\xa0\xfd\x8f\x9c\x95\x91\x9a\x09\xcb\xa9\xa0\x79\x24\x0b\x50\x64\x29\xa4\xf5\x92\x03\xa5\xa2\xf3\x6b\xd7\x22\x82\xca\x34\xbf\xa0\x3a\x00\xab\x9a\x0c\x4e\xc0\x95\x40\x5d\x21\xa5\x89\x3f\x4d\x5c\x4b\x10\xfd\x52\xa0\xf3\xe7\x55\xea\x8d\x82\xb0\xf3\x26\x5b\x77\x4f\xb7\xbf\xde\x75\xd0\x84\x7f\x7f\x93\xad\xff\xdd\x4c\xc2\xdc\x81\x4e\x51\x71\x5d\x2c\xaf\xe7\x6c\xb9\x8c\x98\x5a\x96\x79\x21\x68\xb4\x01\x33\x69\xdd\x94\x71\x03\x24\x1d\x63\x55\xe8\xd8\x63\x37\x95\xf1\xda\xe5\x0f\xf5\x38\xcc\xd2\xd5\x3e\x59\x09\x4b\x97\x6d\xe0\xe6\x3a\x44\xf1\x76\xab\x43\x1f\xe0\x1b\xb6\xdd\xa2\xe5\x84\x4f\xd3\xa1\x75\x2b\x1b\xff\x4b\x3c\x88\x06\x03\x95\xb8\x07\x4d\x0d\x0a\x22\x07\x85\x33\xb2\x51\xe3\x2a\x5d\x94\xb4\x6a\x97\xd0\xc4\x2f\xa6\xc7\x83\x2b\x92\xab\xb9\x2c\xd2\x4f\x64\x9d\x7e\x22\xab\xf4\x13\xb9\x4c\x3f\x91\xeb\xf4\x26\xcb\xf3\xb7\x45\x4e\xc7\x67\x24\xcb\x73\xb5\x57\xcd\x56\x39\xbe\x59\x19\xb7\x0c\x2c\xd5\xd8\xee\x0c\x51\x4c\x8a\xf4\x0a\x24\x62\x67\x48\xaa\x77\xb3\x0d\xd0\x53\x3b\xe2\x00\x8e\x69\x89\x49\x86\x18\x29\x31\xa1\xda\x9c\x3e\x43\x85\xfa\x5a\xa0\x92\xc4\x59\x9e\xc7\x98\x5c\xaa\x77\x77\x45\x34\x6f\x12\xfa\xff\x6c\x3e\x60\x58\x2f\xc8\x05\x05\x33\xb8\xf1\x95\xfd\xf5\xbc\xd8\x70\x39\x7e\xa7\x3e\x55\x79\xfd\x79\x62\x3f\x4b\xef\x5b\x95\x2e\x5b\xc5\xcb\x80\x12\xc6\x95\x1f\x78\xff\x18\x02\xc4\x7c\x2a\xc7\x0a\x99\x54\xc4\x60\x10\x18\xc2\xa9\xfd\x52\x0d\x51\xbd\x6e\xde\x6a\x89\x5a\xa4\x07\x2d\xaa\xed\xee\xf7\x99\x6e\x2e\x48\xf0\xd9\x98\xe4\x11\x3f\x6e\xb7\x53\x8b\x9f\x86\x47\xec\x89\xbb\x1f\x06\x03\xeb\xe5\x35\xa5\x13\x36\xd5\x91\x61\x14\x8a\x79\x95\x6b\x2f\x55\x1c\x81\x26\x00\x2a\x12\x59\xa8\x63\x57\x78\x6e\xf0\x2b\x64\x06\x43\x28\x11\xb8\x33\xf4\xfb\x75\x09\x61\x33\xeb\x1e\x8f\x75\x47\x63\x9b\x66\x44\xb3\x30\x86\xec\xb6\xee\x2b\x7f\x31\xbb\x9b\x42\xf8\xde\x0e\xf3\x49\xb8\x42\x64\x3a\x24\xbc\x76\x28\x21\x9f\xf0\xa3\xc1\x40\x62\x8a\xc4\x44\x4e\x71\x45\xce\xe9\x05\xe3\x3f\xad\xf3\x4c\xd2\xf1\x8a\x50\x9e\x9b\xdf\x97\x5a\x89\xdf\xd7\x30\x59\x21\x4c\x4e\x9b\x17\xe8\x0b\x44\x13\x96\xc3\xfb\xf5\x12\xe1\x8a\x2c\xb2\x12\x46\xf9\x4c\xfd\xaa\xa1\x51\xa7\x79\xf1\x57\xae\x3d\x4f\xd4\xf6\x29\x71\x9d\x14\x7c\xef\xba\x11\x7b\xc4\x9d\xd4\xeb\xc4\x1b\x67\xba\x4a\xdf\x83\x13\x59\x33\xd6\xf4\x32\xfd\x40\x16\xe9\x05\x59\xa7\xe7\x04\x1a\xa0\x84\x1a\x15\x8b\x6b\xdf\xb1\x47\x85\x30\xb9\xae\x09\xfb\x0b\xfd\x0c\xcf\x8d\x5b\x11\xb5\xe2\x63\x6a\x7c\x9f\x9e\x5e\xaf\xe9\x58\x56\xb8\x13\xe6\xc7\x96\xe6\x6a\x72\xbb\x4b\x9f\x69\x25\x56\xdf\xa7\x6f\x80\xaa\xb3\xda\xd7\xaa\xb1\x88\xe5\x94\x4b\x36\x67\x54\xc4\x78\x6f\x55\xbb\x78\xf1\xc5\x3b\xc7\x88\x27\x79\x26\xb3\x54\x90\x35\xe2\x24\xde\xc0\x02\xc4\x18\xb4\x4f\x34\xcb\x01\x54\x6d\x21\x13\xf0\x06\x26\xd2\x09\x78\x00\x87\xf0\x46\x78\x3c\x4f\xcb\xcd\x30\xde\x5d\xee\x8b\xda\xee\xdf\x9e\xd2\x9e\x3d\x87\xbd\x91\x37\x42\xa1\x81\x15\x00\x1a\xdf\x98\x2f\xd0\x5e\xda\x6b\x9e\x14\xee\x9f\x94\xcf\x88\x4f\xd8\xb4\x76\x25\xe3\x49\x24\xd6\x48\x10\x63\x9e\x64\x10\x5f\x6f\x58\x8f\xeb\x9d\xf7\x2c\x06\xee\x7d\x33\x46\x9f\x43\xac\x86\xe5\xe6\x32\x3f\x23\x6b\x69\x50\x4f\x42\xa3\x35\x06\x8b\x06\x5a\x43\x4f\x86\x8d\x19\x12\x61\xc5\x20\x92\x8c\xbc\x1d\x31\x67\x58\xa3\x77\xaa\x31\x88\xe7\x3b\x15\xe9\x36\xb9\x5e\x0a\x8c\x9f\xa6\xc3\x7e\xdf\x7c\xf9\x0d\x92\xc2\x95\x2d\x1a\x65\x8b\x40\xd9\x05\xa2\xb7\xac\xca\xb3\xa6\x84\xd0\xed\x18\xdf\x6e\x7b\x76\x1c\x9e\x20\xd7\x73\xa7\x69\xc7\xe5\xf6\xc6\x45\xa1\xf9\xff\xd8\xfb\xba\x2e\x39\x6e\xeb\xc0\xf7\xf9\x15\x3d\x7d\x74\xda\x40\x06\x6c\xf5\x50\x5f\x51\x53\xe5\x3e\x12\x49\xd1\xfa\x22\x29\x0d\x29\x59\x29\x55\xe6\x60\xaa\xd1\x3d\xe0\xd4\xa0\x5a\x28\xd4\x0c\x87\x53\x75\x8e\x45\xaf\xed\x38\xf6\x6e\xbc\x9b\xac\x37\x1b\x3b\xf1\x26\xb1\x93\xf5\x39\x9b\x44\x71\xac\xac\x2c\x59\xcc\x03\xa3\xf7\x9e\xff\x20\x2a\xde\xb7\xfd\x09\x7b\xf0\x55\x05\x54\x57\xcf\x8c\x48\xea\x6c\x36\xcb\x97\xee\xfa\x40\x01\x17\xc0\xc5\xc5\xbd\x17\xf7\xc3\xbc\x09\xb9\x22\x9f\xb4\x26\x66\x44\x52\x6b\xd9\x69\x27\x54\x75\x87\x96\x4e\xfd\x35\x60\x3b\x00\x1e\xd6\x77\x57\x01\x3c\x8c\xd7\x82\xf5\xfa\xc9\x1b\x00\x1e\x0e\x82\x00\xc4\x67\x82\x75\xd8\xeb\x8d\xdd\x43\xf4\x83\xfe\x84\x72\x02\xba\x26\x1e\xb1\xca\x14\x6c\x0b\x04\x03\x07\x57\xaf\x59\x26\xb4\x85\x9d\x6e\xc9\x37\x5d\x59\x4b\x65\x9d\x2a\x29\xbe\x48\xb5\xec\x24\x48\x27\xdd\x23\x5c\xf3\x7c\x6a\x65\x66\xda\x15\x62\x86\xb3\x4c\x25\xd4\x22\xd0\x09\x16\x29\xea\x03\x0a\xb9\x12\x6c\x3c\x61\x66\x58\x6e\x09\x14\x01\xcc\x84\x10\xae\x48\xfc\x4a\x5d\xb6\x2c\xcb\xca\x25\xfd\x89\x67\x9b\x81\x21\x34\xc6\xda\x31\x3e\xb3\xae\x4d\xdb\xcc\x79\x5f\x6d\xd2\x66\x0f\x00\x89\x09\xd0\x88\x58\x95\x96\xcb\x9d\xe9\x73\x7c\x2d\x58\x87\x2a\x0c\x1e\x8f\x14\x49\xb2\xab\xa5\x0a\xe1\xb8\x60\x33\xa6\xf5\x9d\xe3\x80\x20\x63\xf2\x68\x17\xb7\x51\xad\x49\x6a\xe4\x64\xa6\xc1\xfa\x2b\xa2\x0b\x8e\xcc\xbf\x3d\x17\x1e\x9a\xfb\x20\x14\x91\x17\xd7\xdf\x26\xb4\xd5\x0e\x7b\x1a\xcf\x4c\x8b\x0a\xcf\x84\xd3\x9a\x3d\xbc\x1e\x07\x6c\x49\x8c\xff\x8e\x2b\x3d\xae\x75\xff\xf7\x4f\xfe\xe3\x77\x3b\xdd\x35\xe1\x46\xb0\xf2\xf5\x45\xed\x52\xcd\x6a\x43\xc4\x69\x13\xcc\x95\x03\x24\x9d\x1c\x74\x62\xed\x76\x90\x4b\x59\x0c\x27\xd9\x81\xb5\xd6\xc0\x59\x87\xec\x29\x6f\x99\x2c\xd7\x3a\xae\x1a\x7d\x44\x10\x76\x55\xf2\x5b\x89\xe6\x5d\xd4\x4d\x27\x93\xae\x8a\x80\xed\xfa\x79\xc8\x05\x29\xb1\xa8\xc9\x27\xcb\x39\x6c\xc9\xb2\xbf\xa1\x5b\xb1\xf0\x6c\x11\xdd\xbc\xdc\x58\xc6\xa8\x93\x51\x16\x13\xc9\xd6\xe3\x84\x13\x3c\x3e\xe8\x6c\xe3\xac\x33\x33\x55\x76\xbe\xd2\x5d\x93\xb5\xae\x75\xbf\xd2\x55\xe6\x6b\x86\x3e\x2e\xb5\x8f\xf2\xe2\xea\x19\x9d\xa9\x1b\xe8\xcb\x44\x35\x39\xb5\x1e\xc2\xaa\x16\x9a\x0b\x53\x05\xcb\xa9\x6a\xb0\x52\x80\xf2\x7a\x31\x13\x9e\x16\x05\xd0\x4f\x82\x30\x82\x36\x08\xec\xa1\xad\x70\xc8\x54\xc0\x30\x5a\x2a\xcd\xac\x17\x26\x4b\xa1\x9d\xbb\x4f\x57\xbc\x66\x6b\x37\x91\xb6\x2e\x95\x63\xbf\xac\x5b\x26\xcc\x95\x02\xaf\x92\xcd\x6d\x7c\x49\x1e\xa1\x34\x18\x9c\x4b\x9f\xa3\xf5\xfc\xa6\x90\x86\xa9\x8e\x2a\xa9\xbc\x5e\x83\x80\x49\x02\x6b\x88\x7f\x2a\x77\x9e\xca\xa4\x13\x49\x54\x71\xa0\x37\xf2\x14\xd2\x75\x2b\x92\x4f\xeb\x08\x19\x8b\x87\xbb\xbd\x1e\x60\xc1\x42\xfa\xbb\x59\x7b\xdc\xb2\x1a\x53\x5b\x60\x36\x56\x8a\x12\xf4\x15\x5c\x01\x6f\xf8\x2e\xac\xe2\x93\xb1\x6a\x7b\x27\x2a\xde\x92\xa3\x23\x4e\x25\x85\x4a\x19\x22\xfd\x74\x32\x91\x97\x93\x09\x22\x8a\xdc\x07\x42\xfd\x21\x72\x52\x3c\x0f\x57\x43\xfb\x6f\x36\x33\x93\x9f\x68\x46\xab\xd4\xc8\xf8\xbc\xda\x10\xb3\x25\x99\x5e\x38\x71\x92\xc2\x9c\xff\xda\xf3\x97\x2f\x5d\xdc\xb8\x78\xad\xb5\xe8\x8e\x5b\x52\x55\x7a\x62\xea\x9a\xe3\xdb\x4e\xdd\xb6\x2f\x72\xde\x5a\x08\x3b\x65\xde\x94\x1c\x30\x16\x27\xf5\x89\xba\xf5\xc6\xc7\x16\x65\x6e\xd1\x29\x11\x17\x08\x99\x9d\x98\x3b\x67\x4a\xc4\x2b\xe4\xe0\x4d\xb5\x97\xb7\x16\x4e\xdc\x44\x3b\xd9\xf1\xc0\x5e\xf5\xca\x6a\x2a\xd2\x3e\x5a\x5e\xc1\xab\x3c\xdd\xa5\x59\xfb\x0c\xc4\x4e\xc9\x1d\x72\xf0\x12\x3b\xa6\xd6\x37\x9c\xb2\x49\x9a\xee\xe4\x33\x33\xc8\x69\xfb\x74\x6c\x3b\xe5\x77\x09\x9f\x92\xa5\x23\x76\xa9\x59\xf2\x32\xc9\x94\x3b\x42\x4b\xd9\x0b\x4e\x59\x96\xf2\x5d\x9c\xd0\x5b\xe4\x18\xa8\xf7\x9d\xf2\x7a\xef\x7c\x8b\x8a\xed\x34\x6f\x2f\xfd\x82\x53\x7a\x96\x73\xf2\xfc\xf2\x84\x4a\x57\x9c\xa2\xd9\x31\xe8\x70\xc3\x29\x27\x54\x58\x84\x96\x42\xd7\x6d\x72\x23\xea\x6d\x8b\x8a\x23\xd1\x81\x1c\x48\xd9\xb0\x50\x34\x4c\x1f\xd0\xd6\xa5\x81\xef\xe8\xcc\x94\xaa\xc8\x53\x58\x5f\xc0\xc2\x5a\x31\x3a\x7a\x75\x58\x6a\x7a\xdb\xb0\xdf\x71\xda\x45\xf6\x46\x4e\x35\x95\x04\xd6\x8b\x0b\xe4\xfa\x4c\x1c\x43\xb3\x16\xd4\xd4\x9e\xe0\x67\x23\xeb\x2a\x2b\x1d\x5e\x59\x43\xe3\x20\x8c\xaa\x3c\x20\xe7\x9c\x3c\x36\x45\x21\xce\x9c\xe9\x7c\x75\x00\x7b\xbd\x55\xc0\x1a\xb6\x2e\xe7\xa0\x89\xd6\x6d\xf9\xe3\x3a\x81\x06\x5d\x92\x40\x83\xf5\x7a\x86\xb7\x56\x71\xc6\xd3\x3a\x81\x86\x01\x26\xf5\x12\x68\x50\xc3\x63\x50\x9b\x40\xa3\x22\x40\x8d\xe0\x41\x66\x9b\x23\x41\x18\x21\x11\x0c\xce\x89\xe7\x9a\x5b\xe7\x39\xb1\xb6\x06\x89\x36\x7b\x55\x79\x80\xeb\x9d\x32\x14\x11\x74\xb6\xe8\x85\x64\x96\x8d\x44\x4a\x61\x64\xc3\xa8\x87\x51\xb5\xc1\x32\xa3\xea\x0f\x59\xd4\xeb\xa5\xca\xe6\x1b\xd6\x7e\x89\x27\xc4\xdf\x0d\x59\x64\xdd\x79\xe1\xc8\xa6\xc4\xde\x21\x07\xc3\x1c\x08\x24\x6b\x32\x61\xcd\xfb\x52\x70\xb4\x87\xbb\xc6\x8c\xa6\x84\x43\xf3\xe9\xaa\xe2\x3b\xf4\xe7\x55\x5c\xd4\x1c\x98\xfa\x6d\x55\xd0\x49\x17\xcb\x5b\x53\x56\x29\xac\xef\xf5\x16\xb7\xcb\xd5\x55\xa0\x22\x18\x8b\x6d\xa2\x9c\xeb\xd5\x6c\xab\xa0\xb6\x7a\xc6\x96\x9c\xf5\xea\xe2\xed\x06\xc6\xba\x86\xd6\x77\xa6\x52\xc5\xc8\xb6\x27\xe3\xf4\xb9\x0b\xc7\x42\x5e\xe5\x6a\x2d\x0a\xc0\x03\x43\x92\x21\x74\xf4\x5e\x14\xa5\x8e\x49\x86\x0a\xe2\x2e\x51\x33\x07\x4c\x63\xb7\x5c\xab\x75\x26\x18\x3f\xb5\x56\xe6\x96\x56\xb8\x79\x6c\xf1\x3a\x98\xff\x8a\x3e\x56\x1f\x51\x60\x2c\xd3\xe0\x10\x54\xf1\x83\x91\xf0\x8e\xd3\x47\x62\xd8\x3c\xf3\x97\x32\x8e\x49\x8b\xa2\xc6\x13\x60\x94\xc1\x32\x07\x80\x05\x36\xaa\x2c\x41\x42\xc5\xa2\x85\x76\x8d\x2a\x1f\x16\x65\x71\xa1\x11\xd8\xfe\x81\x86\xea\x4e\x20\xde\x74\x0a\x6a\x98\xcc\x2a\x4b\xb2\xc3\x04\x6f\x91\x64\x38\x40\x19\x61\x9e\xeb\xbf\x0a\xfd\xad\x8c\xe3\xcd\x62\x75\xb2\x8f\xc8\xeb\x12\x09\x7e\xa0\x52\x97\xa5\x33\xf9\x57\xe9\x11\xd3\x40\x67\x05\xca\xc0\x00\x22\xf5\xed\x30\x03\xeb\x10\xe9\xd7\xc3\x0c\x9c\x85\x25\x3a\x86\xd6\x81\xf4\x0b\xd8\x5e\x38\x71\xfb\x33\x90\x2e\xe2\x50\xb6\xf8\x28\x55\x7d\xe3\xed\x1e\xd2\x97\x08\xb3\xa7\x87\x59\x25\x8d\x91\x9b\x24\xce\x05\x65\xd3\xbe\x91\x12\xcf\xe1\x73\x50\xa2\x8b\xac\x27\x58\x47\xac\xd7\x03\x34\x38\xdb\x4b\xc3\x41\x34\x62\x86\xf8\x0d\xcd\x9d\x6a\xa6\x28\x00\xa0\x01\xab\xe9\xa2\x09\xc4\xc8\x20\x1a\xc0\xa1\xc6\x50\x45\x8c\x69\x60\xdf\xa0\x34\x5c\x8f\x7c\xfb\xb6\x0e\x5d\xc9\xf6\xa9\xc4\x49\x15\x90\x58\xf9\x33\x84\xba\x59\x44\x8d\xf9\x1c\x44\xf2\x16\x1e\xc6\x38\x23\x9d\xc1\x50\xfd\xad\x0f\x69\x90\xae\x6c\x71\x82\x77\x56\xd4\x83\x27\x87\x96\xe2\xf6\xd5\xf4\xaf\xad\x55\x96\xf4\xe1\xba\xcd\xc8\xb4\x5e\xea\xc2\x4f\x0d\xeb\x52\x4c\x67\x8e\x49\x83\x70\x10\xad\xc4\x29\x13\x94\xe5\x44\x17\x7b\x66\x98\x06\xb8\x9f\xce\xb2\xfe\x2c\x9d\x01\x88\x70\x5f\xe2\x87\xbe\xa9\x8b\x9a\x43\xb8\xa1\x0a\x1c\x00\x68\x00\x68\xa0\x0b\x42\x47\xc3\x44\x43\x2b\xd2\x9c\x59\x8f\x60\x51\x3c\xbd\x1a\xa8\xc4\x35\xbd\xde\x59\x73\x05\xe1\x21\x0e\x06\x55\xb5\x25\x9d\x80\x27\x02\x5b\x08\xac\xd2\xa2\x90\x70\x7e\x95\xaa\x7b\x79\xf9\x1c\x0d\x9f\x50\x5f\xe9\xae\xa8\x6e\xe8\x11\x91\xdf\x3e\x5d\x7d\x6b\xde\x3f\x27\x31\xbc\x2e\x4d\xb5\xd1\x60\x5a\x7f\x41\xdd\xa2\x67\xbd\xa2\x67\x23\x64\xc6\x41\x12\xfc\x14\xda\x8f\xc2\xb3\xaa\xfe\x13\x46\xa8\x4c\x03\x9b\x5e\x0b\x61\x97\x04\x05\xe1\xd3\x88\x44\x88\x05\x83\x6a\x2b\xe5\x01\x0d\x06\x12\x9a\xa7\x14\x0e\xd8\xb4\x54\xf5\x42\xad\x26\x75\x10\x8d\xe4\x63\xe3\xc4\x84\xac\x71\x51\x09\xc2\x14\x65\x91\x0a\xbb\xab\xc3\x19\x54\xab\x84\xc1\x43\x8b\x6b\xba\x67\x15\x4a\x59\x6a\x6c\xa0\x97\x9d\x0c\x07\xe8\x2c\x42\x4f\x44\x10\x85\x4f\x22\x43\x9c\xfb\x9a\x09\x89\x56\x0c\x0a\x56\xe2\x3b\xeb\x4b\x52\x03\x20\x0a\xcf\x2a\x1b\x7b\xc0\x95\x6c\xb9\x2c\xe9\x5c\x77\x2b\x4d\x13\x82\x5d\xdd\x61\xaf\x47\x14\xc9\xb4\x41\x67\xb9\x69\xe4\xac\x69\x24\x3c\x8b\x6c\x23\xe6\xcd\x13\xd5\x1b\x6d\x3a\xe5\x26\x82\x1e\xbb\x3c\x98\xd2\x23\xa8\x94\x29\xc2\xf3\x93\xab\x54\x72\xa1\x70\xb8\x83\xb6\xa4\x7f\xc2\xb8\x5b\xc9\xaf\x54\xda\x3f\x4f\xc7\x4e\xd7\xd6\x14\xf9\xd1\x5c\xa7\xe5\xdf\x56\x78\xc0\x43\x16\xd2\x28\x2a\x17\xf7\xf0\xed\x25\x59\x2a\xad\xa6\x53\x85\xfe\x08\x44\x9f\x91\x7d\x25\x28\x21\x2a\x05\xf7\x64\xac\x6f\xb0\x44\x27\x2d\x16\xa1\x4c\x5e\xeb\x00\xf3\x28\x0f\xc6\x40\x59\x02\x18\x1d\xfb\x6a\x5e\x14\x29\xc8\x1d\x65\xe8\x82\x15\x49\x0e\x7b\xbd\xbc\x9f\xa5\xbb\xa4\x75\x9e\x5a\x94\xbc\x72\x96\x8e\xab\xaf\x2d\xaa\xf3\x69\x3b\x96\x3a\x1d\xc3\x4e\xc7\x32\xa3\x47\x99\xf0\x74\x17\x90\xa5\xd9\x0a\x09\xa8\xf6\x40\xb5\xff\xda\xdd\x2b\xd3\x1d\x8c\xe1\xc8\xc5\xe3\xcc\xec\xcf\x13\xd8\x1a\x51\xe0\x3e\xb0\xd7\xb6\xa7\x18\xd0\x3a\x7c\x72\x09\x32\x58\x82\x5c\x3b\xba\x73\x64\xbb\x3e\x64\xc8\x76\x7c\x48\xcd\xf1\x56\x36\xc4\xc8\x74\x7a\x98\x99\x2c\xa0\x49\x90\x9b\x7e\x49\x4e\xc2\xb6\x11\x83\x04\x8e\x12\xdd\x83\x65\x69\x1d\x87\x49\xa9\x44\x99\xd9\x23\xd1\x64\x89\x68\xb2\xfb\x80\xa2\xc9\x6c\xa9\x68\x82\xf6\x96\x04\x1a\x6a\x04\x34\xc8\x82\xb0\x22\x10\xc4\xb5\x1f\x1f\x8f\x6d\xb0\xbf\x25\x7e\x38\x9e\x5b\x40\x55\x9d\x1e\x4b\xe2\x9d\xfa\x56\x87\x17\xd6\xa4\xc1\x04\x11\x54\x7e\x80\x64\xc1\x1d\xab\xb5\xdd\x5a\x91\x2e\xc7\xa5\xd1\xa6\x33\x38\xd6\xb8\xb7\x7a\x19\x0a\xef\xfc\x43\x61\x45\xe3\x73\xe7\xec\xcd\x87\xc7\x06\x39\xbd\x9f\x49\x92\xed\xba\x93\xb3\xd2\x68\x74\xd1\x4c\x4d\x38\x23\xa5\x19\x75\xb3\xb5\xee\x2a\xc9\x01\x4a\xe0\x4a\xe0\x9c\x1b\x1d\x34\x84\x4e\xd2\xdf\x54\x27\x00\x64\x7c\x39\xd5\xe7\xcb\x99\xb2\x26\x5a\x78\xea\x64\xf8\x6d\x79\x2b\x81\xb5\x5b\x86\x12\x8d\xda\xcb\xa8\x53\xe8\x3d\x88\x74\x46\xca\x29\xfa\x82\x09\x41\x1b\x2b\x1c\x71\x29\x33\xcb\x51\x53\x06\xcd\x8a\x9b\xae\x0e\x78\x6d\xcc\x79\x3a\x91\x62\xa5\x75\xd4\x75\x24\x40\x93\x88\xc5\x70\x28\xcb\x13\x88\xb2\x53\x24\x10\x65\x7e\x02\xd1\xd6\x40\xff\x62\xd4\xbd\x52\xb9\xe8\xb2\x54\x38\xc6\x98\xc3\xee\x82\xcd\xa0\x2e\x62\x4d\xaf\xba\xb0\x44\x9b\x8b\xd2\x07\xd8\xf4\xd3\xd2\xfa\xce\xea\x75\x6a\x3e\x25\x1c\x2c\xf8\x72\x99\x33\xbf\x35\x3f\x2d\x91\xe3\xf3\x15\xf2\x08\x9e\x4a\xc5\x20\x10\x85\x72\x6c\x42\x1a\x05\x22\xa4\x91\x43\x53\x60\x7b\xb4\x7a\x47\x0d\xb2\x0f\xea\x18\x7f\xab\xa9\x93\x63\x41\xf1\x40\x9e\xee\xab\x3e\xbb\x30\xe9\x7e\x34\xc6\x6c\x82\xc3\x12\xb9\xe7\xae\xaa\x1f\x7e\xf8\xb3\x5e\x2f\x05\xec\xd4\x3a\x13\x56\x29\x4c\x7a\x3d\xe6\x41\x30\x52\xa7\x48\x86\xee\x0f\xd5\xcd\x3e\x60\xd0\x49\x7a\xe3\x9b\x48\x54\x93\xa0\x35\x38\xea\xc4\x37\x14\x51\x4b\xa7\x34\x6b\x92\xaa\xd7\xd0\x6e\x78\x17\xf5\xad\x8f\xdb\x76\x37\x58\x5d\xf7\xed\x1e\xee\x9f\xce\x54\xc3\xda\x12\x60\x61\x21\xdd\x93\xe7\x75\x41\x49\x06\x08\x52\x09\x50\x74\x54\x80\x72\x1a\x54\x9e\xf4\x75\x1c\x32\x67\x84\x2f\x90\x2c\xe6\x74\x26\x52\x9e\x8d\x4e\x2a\xd0\xc2\xe5\xd4\x31\x46\x1a\xf1\x11\x96\x27\x4e\x3e\xa1\x15\x9d\x86\x00\x42\x24\xf4\x59\xfb\xc6\x23\xd6\x63\x09\xeb\x71\xf3\x01\x59\x8f\x8d\x53\x68\x45\x9f\x77\x19\xc2\x91\xc3\x84\xf8\x69\x30\x50\xb6\x52\x27\x2f\x57\x7a\x8f\x30\x82\x5e\xb2\xe9\xfc\xd1\xde\x72\xda\xbd\x05\x30\x88\x92\x20\xaf\xec\x53\x12\x8d\x6a\xf5\x23\x3d\x7e\x71\x90\x18\x8d\xe2\x24\x10\x61\x1c\xad\xa4\x60\x02\x47\x04\x4c\x10\x47\x7e\x50\x1c\x74\x13\x50\x14\xc6\x11\x84\xc3\x36\xe3\xc3\x49\xf3\x00\x63\x02\x7b\xbd\x49\x9f\xec\x11\x7e\x70\xbc\x4c\x17\x78\x32\x9d\xc4\xe7\xd0\x36\x55\x6b\xb1\xa3\x60\x02\x9d\x74\xdb\x78\xc9\xba\x48\x7a\x3d\xd3\x53\x95\x6e\x3b\x5f\x48\xb7\x9d\x7b\xeb\x02\x9b\x75\x81\x1b\xeb\x82\x97\x80\xa0\xc3\x12\xf9\xe4\x08\x0e\x0f\xb5\x20\xb3\x13\x74\x37\x37\xab\x63\xd6\xcd\x4d\xe7\x64\xfa\xaa\x7f\x56\x4c\xfa\x9b\x9b\xd5\xd9\xe5\xe6\x66\x10\x04\x3b\xae\x21\x94\x43\x8b\x1e\xd1\xa7\x56\xfa\x04\x5c\x9d\x87\x8a\x08\x12\x0e\x22\xd5\x27\x9d\x40\x6d\x5d\x6b\x18\x68\x51\xac\x02\x93\x82\xb1\xb6\xe7\x93\x6f\x52\x7f\xe1\xae\xae\x2a\xe3\x60\x7d\xb2\xa6\x2e\x1d\x1b\xb6\xd5\x20\xc0\x5e\xd0\x2f\x06\x30\xec\xf5\xde\x50\x5c\x50\x95\x3b\x58\x02\xa2\xd0\xe0\x5a\x0b\xf7\x76\xed\xdf\x00\xf7\x76\xfe\x11\x5e\x9e\x0a\x2f\x15\x02\x9e\x59\x87\x68\x1d\xea\x2c\xea\x4d\xee\x65\xa9\xea\xa6\x43\x56\x83\x80\x97\xb0\x35\x6e\x13\x77\xe2\x36\xf1\x28\x20\x21\xd7\x31\x9b\x5a\x6c\x93\xaa\x69\xbd\x26\xd9\x65\xe6\x68\x1e\x5f\x73\x28\x6d\x15\xb7\xb4\x6b\xfc\x2b\xdd\x38\x37\xe6\x51\x85\x4e\xea\x41\x5d\xcf\x8d\xfa\xa8\xac\x9a\x15\x15\x3d\x38\x38\xcc\xf0\x84\x6c\x10\x61\x14\xbf\x46\x92\xc4\xad\xbe\x9f\xce\x1a\x2e\x55\x58\x29\x3d\x32\xaf\x41\x94\x69\xb5\x28\xeb\x9b\xda\x82\xea\xca\x5d\x3a\x7e\xb2\x3b\xc9\xea\xf2\x52\x45\x3a\xc1\xfe\xea\xee\x54\x5f\x9b\x6f\x10\x59\xa9\x79\x87\xc1\xb9\xfc\x39\xfb\xc1\xb9\xdc\x06\x53\x4e\x02\x1c\xe6\x11\x8a\x03\xc9\xa6\x27\x9a\x2f\x8f\x15\x53\x1f\x4b\x74\x4e\x7c\xbe\xfe\xd0\xf0\xf3\x49\x64\x2d\x3c\x4d\x68\xbb\xf3\xce\x43\x84\x55\xa8\x6a\x5f\xc8\xe0\x46\xbe\xe0\x2b\xb2\xa0\xc9\x8f\x7f\x03\x4c\x10\xb6\xa4\x0c\x55\xbd\x71\x4e\x6f\xc7\x88\x41\xab\xe7\x77\x7b\x97\x28\xc6\x5c\xe5\x11\xed\x2c\x3c\x97\x7d\xc8\x9d\xe1\x39\xb3\x0e\x0f\xfd\x42\xdc\xd6\x49\x02\x09\x4e\x95\xac\x46\x11\xb6\x97\x5c\x4c\xae\xe9\xc2\x85\x07\x92\x47\x34\xe9\xa8\x59\xfd\x25\x1e\x7a\xe6\xed\x4b\xed\xec\x7f\x2d\xb8\xdc\x00\x1c\x09\xa4\x24\x29\xad\x75\x37\x0a\x88\x16\x0f\x7e\x70\xf9\xff\x59\xa2\x8c\x5e\x0d\x0e\xbd\xb8\xe9\x4e\x94\x19\x75\xce\xe5\xc4\x3a\xd7\x61\xff\x88\xd5\x5c\x37\x40\x50\xc7\xef\xad\x6f\x54\xa4\xcb\x3a\x8a\x25\x0f\x88\xc2\x94\x4b\x12\x53\x2a\x35\xb8\x80\x10\xea\xc3\xcd\x56\xe1\xdd\x20\xb7\x96\x76\x39\xb4\xa6\x82\xf2\x7b\x9a\x8c\x39\x61\x12\x03\x5c\x9b\x4b\x6c\x8c\xe5\x04\x61\xa6\x43\x99\xdf\xae\x51\xb9\x0b\xb8\xd2\xa8\x46\xad\x9c\x5b\x80\xa3\x0c\x55\x1f\xc0\x52\x31\x73\xd5\xc9\xe3\x8c\xa7\x37\x0f\x4a\x37\xe7\x40\xcd\xe9\x2b\x0e\xdf\x6f\x3a\x0f\xaa\x07\xfa\xad\x85\x23\x47\x4e\xf6\x31\xef\x69\xb9\x9c\x8b\x0d\x45\x64\x62\xf2\xfb\x83\x3c\x92\x6f\x2c\xb5\x2c\x51\xba\xcf\x94\xab\x6d\x0b\xf2\xbf\x41\x26\x89\x44\x27\x53\xa4\x9e\x06\x9d\x8b\xa1\x55\xe2\x1d\xb6\x8a\xf7\xb6\xa6\xe5\x72\xb2\x33\xc3\xca\x9b\xe7\xf8\x7a\x54\x84\x27\xef\x93\xac\x81\x9d\xee\xf6\xd5\xcf\x04\xe6\x22\x7b\x8b\x8a\x6d\xd0\xdd\xec\xc2\x91\xad\x26\xab\x08\xf4\xd0\x7b\x54\xd7\x8c\x34\x7d\xe4\x10\x96\x0e\x67\xf2\xa2\x6f\xf3\x1d\x8a\x48\xad\xf9\x5b\xcb\x83\xe9\x2b\xff\xc3\x4a\x31\xaa\x04\xb2\xc3\xd2\x71\xb9\xd4\x06\x3a\xde\x23\xae\x58\x83\x17\x6d\x48\x33\x3d\xe9\xd6\x06\xdd\x00\x68\x6d\xaf\x0c\xd6\x58\x6b\x75\x85\x77\x0a\x41\xaf\xca\x2b\xbd\x9c\x5f\xb5\xd1\x7e\x0d\x0e\xb7\x19\x19\xb7\xa9\xde\x73\xb6\xcf\xf1\x6c\x31\x02\x83\x0b\x87\x51\x2f\x41\x78\x48\xb4\x07\x88\x13\x1f\xcb\xc1\xe8\xd4\xcd\xa2\xa7\x0a\xa2\xcb\xe0\xb2\xe4\x19\x04\x44\xc4\xb1\xd9\x6d\x68\x96\x5f\x68\xe6\x3b\x96\x34\xf2\x1c\x5f\x24\xf9\x92\x3e\x8a\x90\x9f\x59\x8f\x3c\xba\xb8\xe2\xa8\xfc\x8f\xe1\x73\x1a\xb1\x2c\x17\xf8\xa6\x6a\xca\xcf\xe8\xe4\xa5\x75\xf4\xb3\xa2\x58\xe5\x8b\x2b\x4d\x32\x56\xc7\x6d\x2e\x22\x24\x91\x4a\x86\xac\x35\x44\x5a\xc7\x55\x75\xfa\x7a\x53\x9d\xbe\x0c\x6b\x6a\xb3\xae\xc3\xb2\x69\xd6\xa5\x42\xb5\xd5\xe7\xbc\x4c\xcb\xb5\x4c\xb2\x73\x75\xcc\xd2\x8e\xde\xb2\xbe\xf6\x88\xc9\x5e\xa2\x9c\x7a\xf3\x01\x95\x53\x5f\x3b\x85\x72\xea\x5d\x63\x57\xc9\x0f\x2a\xf4\x50\x53\x58\xf7\xb3\xd2\xcc\xd6\x38\xf2\x56\x83\xd4\xb5\x20\x59\x43\x18\x30\x10\x2d\x2f\xe8\x93\x68\x3d\xc1\x4b\xb4\xa9\xe6\x65\xab\x8c\xe1\xba\xc4\x58\x37\x8f\x97\xb2\x8b\x55\xb0\x1c\xbd\x3c\x86\x61\x54\xaa\xd3\xa4\xf6\x20\xaf\xda\x8e\xa9\x75\x27\xd0\xc3\x25\x31\xc5\x80\xd6\x6a\x9f\xa8\x8a\xd4\x4c\xd1\x02\x14\x75\x31\x95\x49\x39\x35\xbc\x85\x65\x51\x2d\xff\xd0\x50\x15\xa6\x08\xb7\x0e\x6f\x6b\x1f\x32\xbb\xb7\x8b\x30\x8b\x56\xf2\x5e\x2f\x6f\x12\x8a\xfa\x3c\x20\xf7\x59\xf5\x34\x7c\x13\x60\x14\x66\xbe\x02\xca\x84\x52\x18\x7a\xfa\x81\x1c\xf6\x7a\x04\xe4\x0a\x38\xfb\x91\xe2\x46\xd3\x52\x81\x7c\x58\xa2\x50\xcb\x14\x2e\xc0\xb8\x36\x49\xaa\xc3\x3e\x60\xcb\x07\xe1\x30\x8d\x56\xb8\xc3\xae\xa7\x28\x83\xa5\xe6\xf5\xd5\xa9\xca\xbb\x6a\xc8\x8a\x62\xb5\x05\x9b\xda\x8c\x30\x49\x43\xa9\x41\x94\x89\x64\xaf\xb7\xba\xa8\x4d\x3d\x6d\xc2\xe7\x2a\x88\xc7\x1b\x64\x7a\xf1\xe6\x4c\xc7\x3a\x76\x62\x7b\x5c\xc0\x82\xe8\x87\xca\x1a\x13\x88\x30\x8d\x60\x51\xc8\x3f\x5f\x9e\xb2\x73\x94\x56\x9b\x45\xbe\x30\x1f\xfe\x58\xe4\xd6\x1c\xd2\x7f\xbc\x0f\x72\x08\x4b\xff\xd9\x25\x83\x52\x97\xf4\xbd\xf2\xee\x34\xb7\x42\xdd\x4a\xf6\x02\x42\xe4\x08\xbc\x97\x16\xb8\x06\xcd\x0f\x1c\x9a\x0f\xad\x9d\x53\x53\xfa\xad\xab\x0e\xaa\x2b\x5f\x84\xf5\xf9\x16\x54\x41\x1a\xf0\xd3\x8a\xbc\xc6\x6d\xd0\xd7\xb3\xd6\x11\xc7\x58\x10\x04\x4d\x23\xf2\x11\x1b\x89\xa1\xa5\x56\x43\xa1\xf6\x9b\xb7\x1f\xed\x37\x4b\xf6\x9b\x57\x1e\x70\xbf\x79\x7b\xb9\x1d\xc6\x63\xae\x4c\x8d\x5e\x0f\xba\x9b\x86\x3f\xeb\xa2\xaf\xcb\x1b\xcd\xcf\x75\xd1\xcb\x41\x77\x53\xc1\x95\x75\xd1\xef\x2c\xca\xb2\xab\x83\x12\x11\x12\x1c\x66\x3b\xd4\xfa\x78\x68\x7b\xca\x0a\x81\x95\x47\x75\x6d\x7e\xa3\x26\x97\x1c\xc7\x20\x7b\xba\x1d\xcd\xd9\xfc\xce\x02\x3b\xec\xb1\x3f\x46\x01\x64\x83\xad\x19\x07\x04\xf2\x22\xb3\x7c\x70\xed\x92\xf0\x1a\x9e\x59\xd6\xd9\xd7\x84\xef\x98\x87\x2d\x36\x09\xfa\xcd\x2e\x3e\xd8\x22\xd7\x15\x0f\xac\x98\xe9\x40\x10\x9b\xfe\x52\x79\x74\x04\x37\xf4\xad\xf1\xf7\x09\xc6\xea\x36\x7c\x3d\x32\xbc\x79\xf8\xf5\xc8\xd6\x15\xbe\x5c\x5d\xf6\x37\xf7\xac\x67\x8c\x05\x76\x53\x47\x91\xc9\x82\x2b\x80\x28\xa7\x79\xfd\x94\xe7\x8c\x51\x36\x7d\xb3\xea\x8a\x04\xad\x8d\x4f\x5f\x08\xb1\x6a\xca\x1c\xd8\xac\xc1\xae\x11\x8d\xdc\x7e\x3d\xdb\x92\x74\x32\x39\xe9\xf3\x86\xb9\x4c\xb3\x86\x05\xeb\x94\x07\xe4\xd9\x35\x91\xa9\x9a\x5f\x61\xbd\x1e\xab\x92\x2e\x9a\x5c\xea\xe8\x15\x75\x3a\xec\xc1\x61\xc9\xdf\x31\x34\xaf\x59\x7c\xa3\x51\xbc\x45\xcb\xb7\x24\x2f\x99\x93\x10\xaa\xbb\xb9\x85\x39\x39\x6f\x17\xd0\xe1\xb4\x2d\x0b\xa3\xc1\x08\xbb\x20\x1f\x03\xe4\xb4\xba\x57\x6b\x70\xbf\x44\x03\x5b\x36\x02\x11\x36\xd3\x4d\x2d\xcd\xac\xe6\xf6\x20\x5e\x06\xbc\x01\x46\xa7\x06\x09\xbf\x1e\x3d\x9c\xe6\x2c\x7d\x59\xd2\x9a\xcf\x75\x2d\xec\x84\x56\xec\x61\xae\x37\x8b\x56\x8a\x41\x11\x52\xe5\xcd\xa2\xd4\x5b\xa7\xb5\xcc\x90\x85\x1d\xe3\x0c\x79\xeb\x6c\xff\x78\xc4\x3c\xff\x16\x8e\x64\xdd\xbe\x7f\x8b\x59\xa1\x43\xf9\xa9\x43\x7c\x6c\x70\x5e\xf3\xb4\xe1\xfa\x42\x25\x5e\x3b\xae\x2f\x0c\xe5\x80\x68\x60\x6c\x2b\xae\xeb\x0b\xd3\x76\xcc\xe1\xcb\x0f\x69\x12\x62\xe3\x7c\x79\x2a\x7c\xbd\x58\x21\xc0\x48\x4a\xef\xc3\xc3\xf2\xe1\x21\xc2\x52\x3c\x30\xdd\x7d\x28\x2d\x8d\xb1\xc0\xc7\x37\xf4\xfa\xc3\x69\x88\x66\x8a\x62\x2f\x6d\x4b\xe2\x71\x52\xcd\x64\x15\x05\xfc\xa1\xb4\x7c\x95\xd3\x4c\x50\xb6\x74\x52\x3d\x99\xc5\xcc\x27\x32\xda\x1a\xbb\x0b\xf5\xab\x4d\xf2\x15\x72\x50\x19\x57\x36\x59\xbe\x5e\x4f\xb8\x36\x06\xc7\x99\x09\xab\x60\x11\x71\x92\x8f\x49\xa6\x93\x2c\x41\xa4\x8d\x04\xad\x61\xf0\xea\xc5\x87\x4b\x5d\x68\x66\xa2\xdc\x2c\x9b\x83\x55\x1d\xcd\x41\x4f\xd4\x43\x6a\xf2\x02\xe5\xe2\xe0\xa4\x06\xed\xfc\x9c\xdc\x26\xf1\xb3\x32\x5c\x67\x3b\x2c\xad\xc9\x56\x2b\xff\xec\xcf\xa2\xcb\x9f\x99\xfc\x0d\xe1\xeb\x91\xcd\x25\x60\x85\x10\x66\x52\x9b\xd5\x11\x08\x54\x25\x3a\xfd\xa0\xee\xa7\xa2\x7a\xc4\x52\x32\xc7\x54\xdb\x32\x64\xfa\x13\x9d\x06\xba\x66\x56\xc0\xea\x00\xf9\x9f\x96\x36\x25\xeb\x69\x6b\xf7\xd8\x25\xf2\x0a\x39\x30\xc1\xe0\x49\x8b\x74\xb8\xc8\xa8\xd6\x2e\xdb\xc3\xee\xda\x15\x60\x07\xe0\xb0\x84\x6e\x50\x0e\xaf\xb2\x19\x27\x33\xcc\xdb\x92\x44\x10\x93\x04\xd9\xd9\xe8\xa1\xd5\x6b\x22\xa5\xdc\x34\x93\xf0\xd8\x92\x8c\x42\x2e\x5f\xc1\xed\xe1\x9b\x8a\xe9\x80\x88\xd6\xff\xad\x58\x9e\x91\x97\xce\x5c\xf8\x00\x6a\x67\x2d\xd2\x16\x44\xd8\x60\xb3\x49\xf3\x60\xf0\xd1\x23\xe6\xaf\x47\x66\xa9\x4b\xb2\x6e\x59\xd5\x4b\x7a\x4c\xdd\xd9\x37\x9c\x16\xe8\x9a\xd6\x4c\xf6\x78\x87\x9d\x6d\xf2\x51\x7b\xa4\xed\xd0\xd5\xe7\xab\x1e\xf9\x3a\xde\xbf\xaf\x23\x62\x88\x3e\xf2\x77\x7c\xe4\xef\xf8\xc8\xdf\xf1\x91\xbf\xe3\xfd\xf8\x3b\xa6\x95\xbf\x63\xda\xee\xef\x28\xaa\x1d\xa2\xa2\xc9\x36\x81\xb3\x4e\xec\xac\xf7\x62\xb3\x21\x00\xd8\xb6\xe4\x85\xda\x08\x46\x3c\xd0\x17\x52\x48\x68\x2b\xe5\x72\x1f\x02\x75\x65\x51\x29\x73\x01\x93\x62\xaa\xa9\x74\x91\xdb\xa9\xaa\x4e\x1b\x66\x06\x4c\xb9\x61\xf2\xa6\xe7\x25\x0d\x52\xeb\x79\xa9\xaa\xe1\xa9\x8e\x0d\xa4\x3d\x31\x69\xe5\x18\xe9\x6d\x5c\x2a\x9c\xc8\x12\xa7\xa2\xf0\x75\xa5\x62\xbc\x0a\x08\x44\x44\x6d\x9d\x3e\x07\xd7\xeb\x11\xe7\xce\xe5\x9e\x56\x6a\x6e\x2c\xfc\xba\x9c\x63\x22\xff\x34\xdf\x15\xbe\x2c\xd7\x1b\x91\x7f\x58\xf3\x00\x52\xc2\x6d\xa8\x85\x20\xca\x82\x17\xc0\x63\x92\x9e\x50\x88\x72\x75\xad\x54\xc5\x28\x09\x2e\x80\x0c\xa5\x10\xc5\xc1\x05\x90\x3b\x31\x5d\x71\xf8\x72\x14\x24\x08\xcb\x3d\x3a\x46\xb8\xbf\xc9\x52\x41\x27\x07\x6f\x52\x2e\x72\x9c\x38\x56\xf5\x10\xe1\x86\xa7\x93\x19\xa8\x25\xa7\xbc\x9b\xf6\xbd\x32\x03\x80\xae\xab\xd5\x32\xf5\xd6\xb2\xa6\x6d\xde\xa7\x8a\xbd\xc0\x13\x41\xf8\x1b\xa6\xfe\x2e\x6c\xe1\x2c\x6c\xe3\x86\x9d\x5f\x32\x55\x48\x71\x5d\x46\x9e\xaa\x14\x9e\x26\xf5\xd4\x52\x70\x42\x49\x5e\x2d\xf0\xba\xa8\x8e\xa2\x25\xf9\xcc\x97\x11\x81\x88\x3b\x31\xee\xbe\x7a\x66\xdd\x24\x5c\x90\xdd\x6e\x16\xff\x3a\x22\x10\x4a\x8e\xe1\xd8\x16\xa1\x3b\x56\xbc\xfd\x7c\x58\xa8\xea\x9b\x75\x2b\x99\x69\xf9\xf0\xb4\x48\x05\xbe\x64\xbb\x04\xe4\xe3\xbb\xbf\xd8\x9e\xe5\xc4\xdb\x75\xd4\x6a\x2a\x8c\xba\x6f\x70\x8c\xba\xaf\xa1\xec\xa3\x13\x20\xa5\x41\x3d\x83\xbe\xde\xb6\x4e\x83\xba\x2a\x1a\x66\x76\x4d\x22\xa5\xe3\xc1\x69\xa5\x10\x10\x95\xd3\xe9\x57\x07\x23\x31\x7c\x0c\x3c\xdf\x56\x39\x84\x0d\xff\xd9\xda\x4f\x5a\x1b\xe8\x7b\x86\x46\xb7\x46\xdc\xd8\x43\x00\x38\xe4\xb5\x09\x99\x27\x9e\x08\xa4\x12\x62\xad\x34\x80\xd4\xcc\x81\x3f\x96\x78\x3c\x56\x5c\x4a\x6b\xfa\x2e\xef\xe8\xb3\x11\xe3\x64\xb5\x79\xc0\x52\x4a\xe9\xa3\x79\x0a\x5a\x1d\x2d\x16\x85\x4d\xe3\xd4\x5a\xc4\x8c\x47\x17\x22\x9d\x3f\x06\x83\xba\x78\xfd\x5a\x07\x7c\xb7\xae\x4f\x12\x69\x48\xb4\x62\x3f\x60\x52\x7e\x30\xb1\xe6\x34\x3e\xad\xf8\xea\x9b\xc0\x55\x9a\x03\x8a\x08\xe2\xa8\xb2\xdd\xac\xf6\x83\x0d\xa2\xd2\x82\x36\x04\xb2\x3c\xdb\x56\xc3\x94\x3d\x64\xe5\xb2\x25\xc6\x46\x1c\x36\x2a\x7c\x25\x0e\x17\x85\xe9\x57\x9e\x24\x48\x45\xf6\x0b\xa8\xab\xd2\xcb\xaa\x11\x68\x4c\x45\x0a\x7b\xbd\x17\xb4\x47\xb4\xba\x06\xee\x67\x41\x98\x1a\xad\x65\xee\x55\xb7\x92\x06\xaf\x28\x7b\x2e\xe3\xe2\xac\xdb\x96\x44\xfe\xd8\x51\x64\x48\x19\x5a\x2e\x19\x45\xc3\x2a\x64\xae\x66\x32\x6d\xb8\xb8\x66\x0c\xcf\xb2\xed\x54\xb4\x13\x7e\xb9\x65\x89\xc6\x7c\x1e\x5a\xd7\xec\xfb\xd3\x5d\x1f\x96\x10\x69\xbd\xef\xf0\x18\x21\xd9\x71\xaf\x73\xe5\x65\xd3\x23\x73\x24\xe7\xf6\x8b\x39\x83\x59\x5a\x59\x7a\xc1\x9d\x37\x13\x69\xbb\x5c\x5f\x19\x7c\xf1\x80\xe8\xe3\xb8\x0c\xb1\x07\x90\xe2\x51\x1a\x3c\xd6\x9a\x0e\xb7\x5a\xde\x2c\xe0\xae\x77\x9c\x35\x28\xc4\xf6\xbc\x11\xb9\x3d\xaa\xb5\x03\x0d\x7a\xce\x2a\xe2\x9d\x9e\xb0\xef\xb6\x51\xf2\x18\x67\x8d\x18\x9b\xbe\xad\x91\xd5\xb0\xd7\xfa\x82\x96\xb4\x1b\xbd\x9e\xab\xc6\x6b\x61\x81\xae\x03\x81\x1e\x73\xac\xad\xdb\x6d\x44\x2a\xdd\xa0\xf0\x62\x15\x54\xda\x90\x16\xf0\x8d\xae\x03\x0b\x4f\xf1\xe3\x27\x67\x6c\x39\x3e\xd3\x8c\x82\xc3\x22\x70\x57\x31\x39\xe4\xd5\xa6\xe1\xb7\xe6\x92\xf8\xa5\x8a\xb7\x45\x15\x9b\x4b\x53\x6c\x7e\xc1\xaa\x2a\xa5\x13\xa1\x3a\x00\xb4\xc7\x14\xe9\xdc\x07\x35\xd0\x5d\xf9\x75\x0c\xea\xbc\xdf\x95\x0a\xed\x25\x67\x10\x00\x41\xab\x03\x88\xd2\x66\x18\x04\xe6\x04\xa7\x6e\xfb\x46\x4a\xf2\x2d\xaa\x3b\xb6\xa0\xb9\x2b\xad\x62\xa3\x6d\x0e\x79\x83\xa7\x6b\x40\x2f\x6c\xfc\x3a\x93\xda\x6f\xb1\xbd\x74\x51\x53\xd8\xaa\x90\x6a\xab\xbd\xc1\xcf\x2e\x54\xde\x3e\x63\x55\xfc\x8d\x3d\x13\x7c\x63\x75\xa0\xe3\xe4\x2d\x22\xf9\xba\x83\xe4\xbd\x9e\x2e\x27\x25\xe6\x36\xf2\xec\xf1\x50\x1c\x22\x3a\x62\x9a\x36\xdb\xed\x1e\x70\x4b\x9c\x99\x4b\xc4\x48\x09\x97\xe0\xdc\xc2\xe9\x64\xbd\x7f\x39\x22\x83\x15\x2f\xb4\xd0\xd2\x22\x76\x31\x9b\x26\x80\x59\x8d\x6b\x15\x7d\xc3\x51\xba\xf2\x2a\xfa\x86\x63\xe2\x59\xc5\xe1\xa0\xd5\xb4\x2c\x06\xfe\x48\x7b\xbd\xd5\x7a\xef\x2b\x8a\xb4\x74\xac\x05\xdc\x7e\x39\xba\xdf\x56\x72\x2c\xe7\x85\x57\x8a\x37\x16\x10\x2f\x28\x4a\x4d\x8c\x98\x32\xa9\x3e\x74\xd0\xca\x6e\x8d\xa9\x63\xbb\xbb\x6c\x87\xac\x74\xad\x58\xfb\x2f\xbc\x21\xbf\x82\xc7\x72\xf8\x0b\xa7\xcd\xcd\xf5\x74\x8c\x4e\xbe\x85\x14\x31\x65\xfe\x59\x14\x83\x15\x51\x14\xeb\xab\x41\xc0\x46\x5e\x2f\x38\x22\x48\x8c\xd8\xda\xfa\x90\x9d\x59\x87\x43\x13\xe0\x57\x99\x8c\xfa\x50\x2c\x21\xfb\xad\x5e\x30\x45\x01\xda\xe5\x3a\x15\xa3\xd8\xab\xd6\x7d\x7f\x7a\x16\xa1\xf3\x0a\x90\x43\xbf\x41\x04\x78\x05\x48\x36\x41\xd1\x7f\xb8\x30\x74\xd5\xc0\x36\x07\xcd\xb7\x02\xe9\x76\xa1\x2b\x4d\x2b\x8d\x89\xeb\x8e\x27\x11\x41\x2e\x4f\x56\x2d\xcf\x16\x5b\x5c\x58\x8d\x9d\x88\xaa\x8c\x4b\x3c\x64\xe1\x20\x8a\x6a\x97\x8a\xe0\x6d\x29\x6f\xe3\x80\x86\x83\x08\x65\x01\xad\xbc\xfb\x50\x1e\x70\x94\x04\x3c\xc4\x11\x8a\x03\x7c\x2e\x05\x09\xec\xf5\xe2\x73\xd6\xed\x26\x39\x57\xdb\xf8\x4f\x34\xda\x16\xc5\xc4\xdd\xc2\x7b\x3d\x03\x41\x1e\xc6\x11\xca\x83\x04\x81\x38\xc8\xaa\x44\xed\xbd\x1e\x48\x82\x24\x8c\xeb\xc4\x04\xdc\x1f\xad\x66\x02\x63\xbd\x54\xde\x06\xc4\x73\x4c\xe4\x81\xd0\x3e\x60\xa2\x06\x1d\x57\x13\x95\xb9\xf4\xe1\x54\x67\xe2\x18\x59\x2f\x8a\xdc\xdf\xcf\xb0\x39\x32\x5a\x4d\x95\xed\x61\xd5\xf9\xdc\xee\x50\x79\xf9\x45\xda\xe8\xf5\x2e\x02\x0c\x6b\x4f\x28\x2e\x87\x79\x1f\x24\xe6\x78\x25\xae\xfc\x9b\x96\xa8\x87\x5c\xd0\x62\xc4\x1c\x17\x49\xe8\xf9\x7b\x4c\xdc\xf0\x90\x0e\x29\x45\xe9\xd2\x88\x10\x26\x5b\x03\xf6\x70\x4e\x39\x8c\xf9\x2e\xe1\x5b\x00\x7f\x31\x57\x67\xd9\x22\x0e\x6b\xdf\xa8\x68\x35\x08\xe2\x5e\x8f\x83\x0c\xc5\xb0\x3d\x8a\x43\x16\xe8\xb7\x8e\x0b\x32\x3b\x8d\x0b\x72\xea\xba\x20\xa7\x6d\x2e\xc8\x55\x50\x74\xdf\x1a\x6d\x75\xbd\x94\x53\xed\xf9\x20\xf8\x16\x9b\xee\x20\xaa\x0c\xca\xee\x28\xe1\xc6\x28\x65\xc1\x16\x48\xe5\x62\xca\xaa\x51\xca\xf5\x28\xd5\x8f\x2c\x12\xe4\xf5\x28\xad\xe2\xa2\x58\x3d\x25\x2e\x25\x8e\xe3\x2d\x0e\xb8\x7a\x72\x8a\xe1\xca\x7b\x3d\x03\x8a\xd2\xfc\x67\x0b\x7a\xfd\xec\x54\xc3\x35\x68\x1d\x2e\x0f\x3d\x33\x54\xf9\x06\x6b\xe4\x9e\x68\xab\xe3\x49\xab\x47\xd3\xc4\x09\x47\x32\xf6\x4f\x6d\x33\xc9\x5b\x6c\xfb\xcb\x72\xec\xe1\xbe\x9b\x88\xf3\x16\x98\xa0\x6d\x1f\xb0\x16\xff\xa4\x2a\xb5\xc3\x44\x3e\x4e\x3c\x90\x34\xa7\xcf\x1a\x9c\xbe\x41\xe6\xd2\xf8\x64\x29\x4e\x48\xc7\x15\x56\x97\x1e\xc3\x6a\xa1\x14\xc6\xa4\x6b\x4f\x45\xe3\x3a\xc5\x92\x56\x63\xa6\x47\x6b\x66\x10\x64\xb7\x85\x1e\x99\xb6\x76\x8b\x02\x34\x5e\x7b\xbb\xaa\x9c\x21\x25\x87\x42\x88\xf4\xd0\xec\xa2\x59\xeb\xd0\x98\x0a\x67\x65\xf3\x24\xbe\x2d\x1a\x72\x63\xcf\x21\xb0\x28\xde\xb0\x5d\x1d\x99\xad\x2b\xb0\x3c\xc8\xc2\x61\xbe\x3d\xd5\xf6\x1c\x5f\x18\x69\x3b\x36\xed\xf0\xfa\xb1\xd6\xb9\x34\x19\xc4\x3a\xcf\x95\x53\x83\x8b\x0d\x7a\x8c\x29\x6a\xf1\xea\xab\x44\xb2\x29\x11\xc0\x4d\x5d\x71\xbc\x97\x15\xd1\x49\x85\x9d\xf2\x12\x3d\x57\x07\x65\xe9\xfa\x74\xa7\xe4\x5f\x25\x80\x27\x04\xfc\x37\x02\x3b\x58\x7f\x52\xb9\xfe\x83\xa7\xa4\x28\xc7\xc1\x59\xb8\xb2\x98\xbf\xc3\x5a\xab\xa9\xe3\x30\x39\xd7\xee\x1a\xaa\x23\x10\xc9\x3e\xea\x92\xda\x1c\x82\x32\x41\xf8\x8c\x13\x41\xb4\x46\x4d\x4a\x56\xe6\x10\xc3\x24\xce\x5b\xa6\xd7\x75\x3f\xad\x0a\x83\x4a\x75\xab\x8a\x1c\xe0\xf1\xd8\x8f\xe0\xed\x60\x94\xf2\x83\x6c\x28\xce\x14\xbe\x0e\xcf\xb6\xbc\x91\xfb\x07\xcd\x36\x1d\x01\x70\x54\x37\xa1\xc3\x55\x08\xab\x04\x77\x21\xab\x65\x5e\xd7\x60\xc4\x2d\x51\x5d\x03\x82\x14\x03\x49\xa1\x3e\x9c\x01\xdc\x5e\x08\x88\x98\x9c\x66\x3d\x30\xb9\x91\x80\x54\xd3\x36\x67\xcb\x52\x43\x90\xb7\x65\xa9\xce\xd9\xfe\x7a\x7f\xd0\x39\x9f\xce\x0e\x38\x9d\x6e\x8b\xce\xd9\xc1\xfa\xa0\xb3\x21\xc8\x6c\x9b\xb0\xce\x79\x4e\xb2\x6c\x9f\x24\x49\xe7\xf1\xce\x45\x46\xf8\x94\xde\x22\xe3\xce\x5b\x29\xdf\xe9\xbc\x2a\xc6\xdd\xf2\xb4\x78\xf2\xe4\x13\x1a\x4f\x9e\x7c\x52\x23\xca\x93\x4f\xc9\xad\x90\x83\x41\x1b\xc2\xb8\x5b\x68\xa6\x6c\x19\x6b\xc3\x04\x6f\x8e\xb2\x85\xcc\x52\x49\x5d\xc0\x4d\xb4\x91\x85\x83\xa8\x9f\xc5\x29\x27\x7d\xf2\x6e\x8e\x93\x0c\x64\xe1\xba\x79\x02\xdd\xc8\xd9\xce\xd7\x13\xca\xc6\x9b\x72\x9f\x1b\xc3\x7e\x9c\x26\x09\x89\x05\xa8\x1c\xc0\x51\xa7\xeb\x47\xb2\x46\x6e\x70\x38\xdd\x52\x9c\xee\xce\xb0\x24\x4c\x0b\xed\x8c\x7d\x17\x7c\x1f\xae\xc1\x22\x5c\xdb\x5e\xf9\x5d\x1c\xf3\xd4\xb5\xd5\x71\x95\xf8\xa4\xc5\x8c\x20\x07\x70\x74\x98\x09\x32\x1b\x1a\x0d\xe1\x70\x75\x1d\x71\x82\xb3\x94\x0d\xbb\xd7\x6d\xda\x65\x35\xe7\xdd\x72\x98\x1c\x57\xfa\xf9\xdd\x2d\x3a\xcd\xd3\x3c\x53\xa5\x3b\xe0\x2a\x16\x82\x70\x96\x75\xc2\xee\x5a\x0c\xe0\x5a\x37\xea\x60\x4e\x3a\x38\x49\x3a\xaa\x43\xc9\x41\x67\x9a\xa6\xe3\x4e\x8c\xd9\x58\x81\x97\xc1\x6e\x39\x6c\x54\x3f\x40\xfb\x94\x31\xc2\xf5\x46\xa0\xaf\x55\x5e\x20\x2d\x6d\x27\x04\xf3\x4d\xfd\xb4\x61\xe0\x93\x83\x96\xac\x3b\x7e\x87\x86\x12\x32\xb2\xd6\x8d\xb4\x54\x94\xb4\x7d\xe1\x77\xaa\xfa\xa2\xdf\x69\xe9\xdd\xae\x64\x9b\xaa\xbe\xc9\x95\x21\xe5\x2d\x97\xf8\x54\xf0\x23\xe7\xb6\x65\x56\xd4\x4c\xab\xb9\xf4\xd7\x10\x3c\xd4\x21\x5b\x35\xc6\xb5\xe8\x95\x0e\xd5\x47\x43\x81\x14\x9a\x0c\x75\xae\xb9\x50\x93\x48\x82\x44\x3f\x21\x7b\x84\x65\xdb\x82\x50\xb6\x99\xd1\x29\xc3\x22\xe7\x04\x98\x9d\x9d\x2a\x0a\x1b\x29\xef\x9a\x7e\x96\x72\x01\x26\xca\xd1\x0b\x2b\xb3\x71\x3f\x15\x93\xb7\x92\xdb\x97\xa9\x3d\x99\x11\x55\xf2\x03\x43\x75\x0e\x66\x24\xe8\xbe\x5a\x43\x72\x81\x6a\x92\xbf\x21\x61\xee\x3a\xa7\x0d\xfa\x53\xb3\x56\xda\x63\x54\xa8\x7a\xcf\xd4\x4d\x98\x91\xd5\x2b\xa6\xe5\x13\xe5\x57\x55\x83\xa1\x32\x18\x1f\xcc\xec\x33\x9d\xa2\x21\xb0\xba\x94\xb2\x99\xfe\x90\xd5\x99\xdb\x69\x9d\xba\x4b\xef\x41\x5a\xfb\xc5\xd6\xd6\x9b\xe9\x78\x02\x76\x2e\x5d\x5b\x83\x3c\x4c\x23\xa7\x20\xb5\x05\xbd\x42\xf6\x4b\x1c\x0c\xce\xe1\xe7\x02\xaa\x92\x27\xcb\x2f\x43\x1c\x05\x83\xc5\xf2\xea\xd5\x20\x0a\xd2\x15\x93\x7c\xd9\xfd\x6a\xa0\xbe\xc2\x25\xf0\x02\x7a\x4a\xc9\xcd\x4d\x08\x67\x54\xe8\xa6\xf6\xbd\x2a\x0d\xa0\x70\x43\x14\xfb\x3d\xaa\x72\x69\xa6\x3a\x68\x27\x91\x5d\x0b\x74\x78\x04\x1e\xa6\x6b\xeb\x51\x48\xd7\xd6\xa3\x40\x41\x47\xa3\xfa\x24\x0c\x9b\x47\x6b\xeb\xd1\xda\x3a\xca\x02\x5b\x58\xde\xe5\xb6\xf8\xda\xfa\x8a\x5b\xc9\x6b\x58\x6c\xf7\x77\x29\x03\xb9\x8a\x61\x5b\x5a\x78\x79\x68\xc1\x88\x42\x0b\x6b\x54\x2e\xe4\x0c\x3b\x15\xa2\x3a\x93\x4f\xe4\x7e\x9d\xd1\xad\x44\xd2\x4f\x01\x47\xeb\xc3\x81\x8b\xb6\x1b\x78\x97\xbc\x4a\xb7\x38\xe6\x07\x1a\x5d\xd1\x49\x38\x5a\xd7\x7d\x86\x7c\x19\x38\x7a\xda\x6d\x76\xc9\x76\x6a\x3a\xaf\xe8\x45\xa6\xdc\x0c\xdd\xee\xbe\x96\x27\x82\x9e\xd4\xd1\x96\xf0\xae\xba\x3a\xd7\xe1\xca\x55\xee\xe9\xb7\xa1\x88\x9a\xfb\x60\xd6\x12\x63\xd1\xee\xe9\xf7\x3d\x6a\x4a\x37\xe6\xc0\xae\xec\x19\x4f\x39\x68\x67\x35\x6b\x32\xd0\x9c\x89\x61\x4c\xd6\x9f\x86\x12\x77\xc1\xb3\xcb\x19\x14\x94\xa3\x04\xc5\xf0\x90\x04\x33\xeb\xe0\x3f\xa9\x0e\x8b\x67\x7a\xeb\x80\x68\x1c\x00\x1e\xf0\xa2\x60\x7d\x9c\x1d\xb0\x78\x93\xa5\xe9\x0c\x49\x36\x4f\xd3\x43\x00\x1d\xe1\xc6\xdd\xe7\xe3\xfe\x6e\x3a\x56\xb9\xa8\x58\xdc\x0d\x82\x40\xdf\x0f\xf9\xaa\x14\x38\xeb\xaa\x7a\x3d\x7b\x3c\xb3\x5a\xab\xe3\xd7\x9c\x58\x95\x33\xa7\x4e\x09\x9c\x76\x0b\x05\xc4\xb3\xf6\x8d\x83\x58\x85\x05\x17\x3a\x04\xae\x42\xfd\x20\xb1\xb6\x3d\x9b\x55\x3e\xd4\xf1\xe6\x96\xa3\x9a\x74\x24\x8f\x20\x08\x66\xca\xff\x49\x4f\x02\x66\x9b\x15\xef\xda\x6a\x02\xdb\x17\x24\x53\x39\x4e\x91\xcf\xf4\xba\x43\x8c\x51\xa2\x31\x6a\x66\xf2\xa9\x1a\xb6\xa1\xb4\xbc\x6f\x6e\x2f\x30\x5c\x59\x6d\x3b\x2e\x1d\xac\x50\xa0\x82\x84\xef\x11\x2e\x08\xcf\xe0\x71\xdb\x6a\x6d\x3c\xc9\xe1\xa1\x0d\xf0\xab\x0e\xbb\x89\xd1\x1c\x32\xc4\xd6\xaa\x1d\xe1\xcc\x7a\xe5\x3a\x6e\x9c\x55\x6d\xe5\x9b\x6a\x76\xfc\x23\x4e\x95\xaf\x1d\x70\x58\x4a\x11\xab\x04\x93\xfe\x94\xa7\xf9\x4c\x09\x25\xee\x49\xb1\x0e\x63\x54\x91\xed\x04\x98\xf3\xef\x74\x65\xdc\xcf\x08\x1b\x83\xac\x7f\xe5\xf2\xe6\xc5\xaf\x5f\x3c\x7f\xfd\xda\x45\x64\xd9\xa8\x58\xdc\x1c\xce\xac\x37\x37\x25\x19\x32\xc8\x37\x9c\xb8\xa2\x1d\xe6\xd3\x4c\x9d\x55\x08\x7e\x70\x98\x06\xac\x4f\xd9\x5e\xba\x43\x00\x47\xde\xb7\xdb\x80\xc2\x11\x1d\x52\xdb\xb9\xa4\xb2\x13\xd6\x19\x30\x13\x0f\x38\xcd\x4b\x89\x72\xc1\x08\x77\x01\x8f\x67\x26\xa3\x56\x8d\xca\x55\x02\x9a\x12\xa4\x70\x64\xce\xe8\x58\x9f\xa5\x12\x52\xd9\xae\xce\x29\x03\x12\x38\x54\x40\x25\xbd\x5e\x02\x60\xe5\xd7\x5b\xe1\x4e\x45\xca\x5b\xb9\x07\xd9\x88\x61\x08\x37\x29\x03\x89\xfd\xac\x7e\xd6\xf6\x99\xca\x0e\x65\xd7\x43\x1b\x3f\xd5\xc2\xd0\x4d\xfa\xfb\x3a\x4b\xd6\x26\xb9\x39\x93\x72\x13\x4d\x59\x56\xf1\x81\xcb\xe5\xb0\x0e\x29\x91\x3b\xbd\x17\x2e\xbe\xf8\xd2\x65\x39\xbb\xb6\xad\x21\x69\x9d\xd1\x2f\x20\xa5\x3f\x2b\x49\xdc\xc2\x7e\xe0\x44\x1b\x03\x04\x3d\xde\xff\xad\x77\xfa\x60\x34\x9c\x10\xd5\x68\x91\xcd\x48\xac\x7e\xe8\x84\xc6\x5a\x63\xff\xd8\xe3\xb0\x5c\xa1\xb5\xde\x47\xcb\xe5\xa8\x26\x90\xf4\x78\x80\xce\xf9\x96\xe1\x8b\x74\x55\x73\x2e\xfd\x38\xa1\x84\xd9\x55\x70\x58\x9a\x23\x77\x0e\x9e\xa9\x39\xed\x3e\xb9\x49\x33\x91\x6d\x1c\xb0\x38\x70\x6f\x8a\xc2\xde\x21\xd1\xe7\x04\x8f\xc7\x94\x9b\x42\xce\x9d\x1f\x68\xaa\xaa\x33\xa1\x8a\x28\x1d\x17\xda\xbf\x6f\xe3\xb2\xf5\xf5\x95\xc6\xc3\x7e\x26\xb0\x30\xcd\xd8\xcb\xb6\x36\x0e\x95\xff\x01\x91\x23\x7e\xd0\xe6\x6e\xd5\x77\xde\x9b\x2d\x4c\x48\x76\x07\x1a\x7f\x3c\x65\xd5\x07\x9e\x80\xca\x7a\xff\x4b\x1e\x6a\xc4\x82\xc3\x52\x11\x0b\x85\x42\xeb\x8e\x9d\x6e\x95\x5e\x58\x49\xc3\x81\xfe\x73\xfa\x5b\x75\xa8\x99\xdd\x52\x96\x6b\xe6\xb6\x14\xfd\x8c\xcc\xb0\xb2\x47\x87\x25\x62\x7d\x4e\x12\x2c\xe8\x1e\x09\xea\x4b\xcf\xfd\xde\xd1\x5f\xad\x39\xdf\xae\xf1\x12\xb1\xff\x8b\x63\x55\x29\x8c\xd9\x88\x0d\xeb\x60\x6a\xac\x1f\xef\x8f\xdb\x4c\xfb\xfb\xfb\x29\xdf\xa1\x6c\x5a\xcd\xf7\x17\x02\xbf\x15\xc8\x85\xb5\x4f\x24\x77\x53\xa5\x2c\x3d\x8c\xf7\xc7\x6d\x91\x71\x17\x21\x29\x25\x20\xa7\x24\x2d\x2e\x7f\xa4\x65\xd0\xee\xf9\x6d\xca\x48\x46\xba\xe8\xd0\xd0\x92\x61\x37\x7c\x71\x12\x19\xba\x72\xef\xf7\x7f\xf2\x9b\x6f\x7e\xd2\x45\x59\x4c\x18\xe6\x34\x1d\x76\xc1\x68\x18\x6e\x64\x91\xb9\x2f\x9c\xeb\x4e\x78\x25\x8d\x72\x91\x50\x46\x8a\x7b\x3f\xfe\xe8\xf3\xff\xfa\x77\xc5\xbd\xef\xfe\xf5\xe7\x3f\xfe\x1f\x05\x18\x0d\xbd\x07\x70\x74\xef\xa7\x7f\xfd\x2f\x1f\xfd\x02\x76\x11\xb9\x89\x77\x67\x09\xc9\x74\xc5\x17\x49\x64\xee\x8b\xf0\xad\xfd\x68\x9b\x70\x52\x7c\x76\xe7\x7b\xf7\xfe\xe6\x07\xc5\xbf\xfc\xf4\xa3\xcf\xee\x7c\xaf\xf8\xec\xc3\x3b\xf2\xef\xf3\xff\xf6\x3f\x3f\xbb\xf3\x3d\xd8\x45\x33\xc2\xc6\x94\x4d\xf5\xe7\x57\x67\x91\xbe\x2d\xc2\x6b\x22\x4a\xc7\x69\x71\xef\xce\xb7\xee\xfd\xed\x9f\xa8\xbf\xf7\xf4\xdf\xef\xff\x59\xf1\xf9\x9f\xdc\xbe\xf7\xde\x8f\xe5\xdf\xbf\xfc\xfa\x0f\x61\x17\xa5\x2c\x39\xd0\x15\x5c\x49\x23\x96\x1c\x14\x9f\x7d\xfc\xad\xcf\x3e\xfe\xd6\x08\x76\xd1\x16\x8e\x77\xe4\xee\xcf\xc6\xc3\x6e\xf8\xc2\x56\x54\xdd\x16\xbf\xf9\xe6\xf7\x75\x87\xfe\xfd\xe7\x7f\xf0\x83\x2e\x9a\xd2\x3d\xc2\x74\x25\x97\xa6\x91\xbc\x51\x3d\xa0\x62\xbb\x08\x9f\xc7\x11\x1b\x17\xf2\xf3\x5c\x14\xaa\x8f\x31\x99\x89\xe2\xde\x7b\xdf\xb9\xf7\x57\xb7\xe5\xdf\x6f\xfe\xf6\x8e\xba\x93\x90\xfe\xea\x1f\x3f\xfb\xf0\x8f\x8a\xdf\x7c\xe3\xfb\xf2\xef\xde\x0f\xbe\xff\xf9\x7f\xf9\xc7\xe2\xb3\x4f\xbe\xfd\xf9\x1f\xff\x1d\xec\xa2\xfd\x6d\xdb\x88\x1a\x1d\x56\x84\x2f\xd1\x68\xd2\x68\xe1\xde\x27\x7f\x58\xdc\xfb\xab\xdb\x9f\xff\xd9\x8f\x4f\xa8\x4d\x54\xb5\x5d\x13\xba\x36\x09\xdb\x8c\xc4\xa2\x51\xe3\xff\xba\xfd\x97\x9f\xfd\xea\xf7\x8a\xcf\x7f\xfc\x93\xcf\x7f\xfc\xa3\x13\x2a\xdd\x94\x7c\x4e\x36\x0c\xbb\x6a\x44\xba\xa8\x2b\x61\xee\xa2\xae\x6c\xac\x1b\x95\x0f\x82\xaa\x2f\x72\xc2\xe2\x6d\x17\x53\x25\xec\x2f\x4e\xa2\x54\x57\xc8\x70\x42\xc5\xdd\x9f\xc3\x36\x74\xbd\xfb\x73\x83\xaf\x57\x67\x51\x82\x59\x27\xbc\x30\x8e\xf2\x8e\xfb\xaa\x15\x19\x89\x41\xc6\xea\xba\x90\x38\x12\xe6\x77\x7f\x15\x35\x91\xef\x22\x89\x58\x47\xee\xfc\x4c\x90\x42\xdf\xc5\x69\xce\x33\x8b\x8b\x1e\xa2\x6d\x64\x11\xc9\x13\x22\x89\x6a\xd4\x40\x33\xf9\xfa\x7c\x1c\xa5\x4c\x90\x9b\x82\x40\x0f\xb5\x36\xb2\x28\xa5\xa2\x08\xef\x7e\xf7\xee\xcf\x2f\x92\x48\x60\x26\x3a\xe3\x94\xb1\xbb\x3f\x97\x40\xb6\x3c\x6d\x7b\xd8\x5a\x52\xcd\xf8\x1e\x89\x15\xe4\xa2\x08\x5f\xdb\x8d\x30\xcd\xd4\x53\xd9\xa5\x31\x27\x1e\xfa\xbd\xfe\x6e\x94\x63\x89\x20\xaf\x26\x51\xca\xb3\x77\xf3\xaf\xd4\x97\x44\x11\x05\xea\xd7\xe4\xa1\xdb\xf3\x38\x4a\x52\xee\xd5\xbe\x50\xfa\x58\x3c\x42\xdd\x2c\xa5\xa2\x8b\xba\x44\x76\x41\xf6\x80\x90\xcc\xbf\xf5\xee\xba\xa8\xfb\xae\x84\xb7\x8b\xba\x89\x86\xb1\x8b\xba\x58\x5e\x76\x23\x34\x25\xa2\x23\xab\xf3\x5d\xb9\xfa\xaa\x5d\x15\x29\xb0\xe3\xb6\x72\xaa\x52\xa7\x29\xb4\xbc\x8c\x02\xb5\xf1\x5a\xf6\x5e\xbf\x35\x1d\x58\xfa\x5e\x75\xab\xf1\x56\x31\xee\x0f\xb4\xf6\x2e\x11\xbe\x8b\x59\xcb\xda\xcb\xd9\x8e\xac\x50\x2d\xbd\x9f\x8a\xc2\xd9\x3b\xe4\xec\x66\x33\xb2\x23\x8a\xf0\x7a\x1e\x65\x24\xc6\x99\x7e\xc8\xf6\x09\x1b\xe7\x6c\x9a\x4d\x70\x92\xb4\xad\xd6\x5b\xce\xe6\x62\xae\x41\x67\x5a\x5c\x82\x3c\x67\x63\x4e\xb3\xac\x90\x44\x96\x64\xf1\x36\xd9\x66\x0a\x5b\xfc\x95\xfb\xc2\x56\x44\x68\x36\xa3\x24\x21\xa3\xe6\x32\x35\x1b\x83\x5c\xc6\x93\x09\x61\xde\xaa\xbc\xcc\xa2\x9c\x2b\x4c\xa4\xec\x16\x9d\xb6\x2c\xcc\x4b\xd3\x48\xc2\x90\xe0\x29\x29\xc2\xaf\x6d\x47\x4a\x16\x9e\xca\x47\x0a\x58\x22\xf2\x59\x11\xbe\xb9\x17\xa5\x1c\xe7\x99\xf2\xdb\xbd\x25\xfc\x25\x2c\xfb\x3f\x25\x2c\xdd\xdd\x95\x04\x57\x76\x63\x4a\xb6\x08\x03\x9d\x8c\x50\x40\x18\x1c\xc1\x91\x5a\x05\x54\x0f\x9b\xac\xf8\x79\x1c\x6d\x11\xae\xfe\xf3\xbb\x3f\x21\xbc\xb9\x11\x10\xc6\xd4\xb8\xe3\x24\xc9\x1a\x1f\x79\xcb\xee\xc2\x38\xc2\xa6\x68\x9a\x4c\x13\x1a\x6f\xd7\x75\x2e\x7e\xf7\x25\x12\xf2\x0b\xb9\x68\xa5\xe3\x16\x71\x14\x5a\xc5\x16\xad\x08\xd5\xbb\x26\x9d\x12\x96\xc5\xdb\x78\xd6\x4a\xe0\x2d\xca\x5c\x9a\x16\x64\x0f\x27\x0b\x38\x21\x27\x25\xe5\x5b\x84\x24\x63\xc2\x96\x62\xc5\x6b\xbb\x51\x4a\x44\x87\xa5\x53\x0f\x31\x24\xc1\x4a\x88\xc2\x96\x26\x46\x3c\x8f\xa3\x78\x5b\x21\x41\xca\xc6\x0b\xd4\x5a\x90\xc4\x4e\xf2\x1e\x61\x60\x34\x7c\xe7\x9d\x6c\x8c\x85\x9c\x63\xb9\x43\x68\x7a\x87\xfd\x19\x95\x8d\x69\xfe\x07\x4b\x5a\xc2\x17\x8a\x36\x66\x54\x21\x1c\xe1\x7b\x69\x22\x07\x68\xa1\xf4\x97\x38\x8f\x97\x53\xbe\x4f\xa6\xd4\xa7\x0b\xb2\x7d\x09\xc8\x0e\x9e\xb9\xf3\xe4\x4c\x92\x3b\x35\xb2\xf4\x4e\xa6\xb6\x56\xee\xcc\x89\xda\x8d\x54\x4c\x23\x6e\xe7\x41\xb1\x5f\x9c\xb4\xf0\x64\x3b\x72\x01\xb2\x05\x1e\x4c\xe8\xed\x84\x8c\xd5\x62\x9f\xea\x1b\xa6\x11\x9d\x09\x2c\x84\x37\xea\x97\x59\x74\xf7\x67\xdc\x2b\xea\x0d\xf5\x46\x16\xdd\xfd\x99\x42\xcd\x49\xca\x25\x64\xcd\xa2\x27\x6c\x58\x53\x2a\xe4\x86\xc5\xee\xfe\x8c\xcb\xed\xeb\xee\xcf\xcc\xce\x23\x9f\x2f\xdd\x0a\x74\xf1\x65\xa4\x5e\xd5\xf2\xd0\x29\xfd\x55\xca\xb1\x20\xcd\xd5\x79\x4d\x44\x58\x72\x3f\x6f\x1f\x44\x98\xb3\x85\x15\xf8\x3c\x8e\xc6\x72\x50\xd4\xf2\x95\x5c\x0a\x17\x94\x78\x6b\xd0\xf2\xf3\x99\x70\xa7\xf9\x85\xad\x88\xd3\xa9\x3b\xc5\x09\x8e\x77\x14\x5f\x36\x4b\x45\x63\xae\x9f\xc7\xd1\x44\xe8\xbb\x16\x86\x5b\x72\xda\xc7\x73\xdc\x2d\x0c\x74\x4c\xda\x58\xe8\x16\xde\x38\x26\xcb\xb8\xe3\xd3\x4c\xbd\x84\xce\x3c\x8e\x89\x79\x11\x93\x0a\x03\xe4\xeb\xe5\xec\x80\xfe\x6a\xe9\x7e\x2f\xda\x5e\x3f\x38\x1a\x5c\xdf\xe1\x98\x32\xba\xb8\xe7\xcf\x7f\x7a\xf4\xef\xa2\xa3\x6f\xce\x3f\x99\x7f\x74\xf4\xed\xa3\x1f\x1e\xfd\x41\xd1\x7c\x34\xbf\x33\xff\x64\xfe\xfe\xfc\xe3\x22\x9c\xff\x64\xfe\x4f\xd1\xfc\xce\xd1\xed\xa3\x6f\xcc\x3f\x98\xff\xfd\xfc\xfd\x22\x9c\xff\x60\xfe\x7e\x74\xf4\xde\xfc\x9f\xe6\x1f\xcc\x3f\x3a\xba\x5d\x84\xf3\x3f\x9b\xdf\x91\x0f\xee\xcc\xff\x7e\xfe\xf1\xfc\xc3\xf9\x2f\x8e\x7e\x78\xf4\xde\xd1\xed\xa3\xef\x17\xe1\xfc\x3f\xcd\x7f\x11\xcd\x3f\x9e\xbf\x2f\x1f\xb8\xaf\x16\xf0\x6f\xfe\xe7\x47\xef\x45\x47\xdf\x9e\x7f\x20\x5b\x3e\xfa\xc6\xd1\x0f\xe7\xbf\x2a\xc2\xf9\x7f\x3f\xfa\xbd\x68\xfe\xbe\xaa\xf7\xce\xfc\x13\x1f\x1d\x15\x68\x47\xdf\x98\x7f\x38\xff\x48\xb6\x30\xff\xe5\xfc\xc3\xc6\x9e\x30\xff\xd3\xf9\x27\xd1\xfc\x03\x09\xa9\x02\x5f\xb6\xfe\x0d\xd5\xc2\x87\xaa\xf6\xbf\x3e\xfa\x8e\x7c\xfd\xd1\xfc\xfd\xa3\xff\x70\xf4\x1d\xfd\x70\x41\x02\xad\xb6\x91\x70\xfe\x17\x47\xb7\xa3\xa3\x1f\xce\x3f\x3e\xfa\xfe\xfc\x23\xd9\x98\x87\xdb\xf3\x3f\x99\x7f\x14\x49\x28\x8f\x6e\xab\x81\x79\xef\xe8\xb6\x87\xe3\xf3\x3f\x9a\xff\x52\xf6\xe5\x93\xf9\x9d\xa2\x86\xbd\xb0\x40\x1e\x7d\x6b\xfe\xbe\x02\xea\xdb\x47\x3f\x8c\x0a\xdd\x56\x35\xda\xf3\x8f\xe7\x1f\x78\xb8\x3f\xff\xbb\xa3\x3f\x88\xe6\x1f\x1d\x7d\x57\x55\xa6\x6a\xfe\xa0\xa8\x40\xf8\x58\xd5\x7b\x4c\x45\xf5\xda\xd0\xaf\xef\xcc\x7f\x79\xf4\xc3\xe3\x3f\xf9\x12\x37\xa1\xab\x69\x42\xb3\x05\x6e\xe2\xad\xfd\xe8\xd3\xdb\xf8\xd3\x1f\xc5\x74\x3f\xfd\xf4\x47\xff\xfc\x1d\xc3\x54\xec\xc4\x37\xb0\xcb\x98\x5e\x9d\x45\xa9\xe0\xb7\xc8\x16\xee\xc8\xd5\x4c\x6f\x31\x92\xa5\xfb\x78\x39\x87\x91\x67\xb7\x34\x5b\x8a\xb7\x92\x94\x75\xbc\x17\xd8\xc7\xb0\xab\xb3\x88\xdf\x3a\xd8\xf9\xf4\x36\x1e\x1f\x34\x50\xeb\x4a\x1a\xc5\xb7\xc8\x4e\x7e\xe3\x9f\xbf\x15\x1f\x14\x72\xef\xa1\xe4\xd6\x3e\xe1\x07\x13\xba\x93\xee\x63\x76\xb0\x88\x3e\xd7\x44\x74\x90\xec\xa4\x0d\xb4\xf9\x9d\x5b\x11\xfe\xf4\x76\xfa\xe9\xaf\x09\xa3\xd8\x43\x18\xf9\x46\xb5\x8d\x65\x23\x9a\x1f\xd0\x57\x57\xd2\x88\xe3\x5b\x8a\xee\xa9\xa1\x48\x7c\xd1\xee\xe5\x1b\x11\xf9\xf4\xd7\x24\xa1\x85\xbe\xfc\x91\xbc\xba\x34\x8d\xc6\x07\x45\xf8\xca\x4e\x44\x89\xbc\x68\xad\x43\xb8\xc4\x55\x2c\x2f\x77\x02\xb9\xbc\x85\x77\x12\x09\x36\x8e\xbb\xa8\xbb\x6b\xfe\x6f\x90\x5b\x24\xa1\xea\x22\x53\xff\x53\x39\xa8\xdd\x1d\x09\x8e\xac\x41\x36\x67\xe8\x69\xfd\xfd\x72\x9a\xba\x7b\xfc\x6b\xdd\xda\x52\x92\xab\x60\x58\xfa\x76\x3a\x3e\x58\xfa\x4e\xc1\xbb\xf4\xad\xea\xc5\x43\xa7\xe4\x1b\x33\xcc\x5a\x56\x88\x66\xb2\x35\x8f\x3d\xc6\xe3\x22\x3c\x1f\x47\x98\xe3\x58\x10\x7e\xf7\x6f\x32\x41\xe3\xc5\x55\x70\x91\x44\x59\xc5\x68\xcb\xe2\x59\xab\xd6\xe4\x86\x64\xe7\x52\xcd\x89\xea\x6b\x97\xdd\xb6\x34\x52\x32\x77\x15\x76\x6f\x44\x77\xff\x21\x69\x22\xb7\xd2\xec\x8c\xd3\x26\x4f\x4d\xb0\x96\xb5\x24\xe7\x2b\x19\x60\xc9\xb7\xab\x7f\x6c\xef\x33\xfb\x20\xf3\x30\xfb\x7c\xac\x94\x16\xa9\xd5\x4f\xbc\xfe\x6e\x94\xfb\x78\x2b\x59\x67\x91\xb2\x98\x9c\x46\x03\x41\xb0\xfe\x95\x37\x63\x2c\xe1\x94\x7f\xd8\xdc\x65\xe6\x56\xfe\xc7\xaa\x59\x59\x5a\x62\x2e\x31\x4d\x58\xd5\x03\xc1\xcb\x11\x51\x56\xbf\xfc\xad\x6c\xe7\xd8\xb7\xc7\xd4\xac\x60\x3c\xfe\xe3\x63\x5e\xeb\x1e\x2d\x45\xe4\x6c\xf9\xea\xb0\xbd\x7f\xe8\x68\xfe\x46\x9e\x65\x27\xb1\x2b\xf3\x0f\x17\xd8\x95\xf9\x87\x0e\xbb\x22\xb9\x88\xf9\x2f\xe6\x77\xe6\xbf\x52\x1c\xc7\x2f\xe6\x77\xbc\x35\x30\xff\xf3\x9a\xc5\x90\xfb\xbd\x8b\xfb\xf3\x9f\xa8\x67\xbf\x96\xcc\xc2\xd1\xf7\x46\x0d\x82\x2f\x19\xd3\xd9\x02\x51\x9f\xff\x85\xdc\x6e\x15\x3f\x70\x67\x51\xb2\xb4\xbb\xfc\x07\xf3\x5f\x1e\x7d\x4f\xc1\x73\x47\x36\xa1\x7a\xb0\xc8\x2d\xc0\x16\x76\xe1\xce\xfc\x9f\x8e\xbe\x69\x78\xa7\x5f\x17\x6d\x3c\xc4\x37\x2b\x56\xeb\x8f\xe7\x1f\xca\xcd\xfb\x4f\xa3\xf9\x1d\xa8\xe5\x54\xcd\x26\xc0\x91\xc7\x39\xfc\xe7\xf9\x07\x92\x59\xd3\x3c\x82\x81\xe2\x1f\xe6\xbf\x54\xfb\xfd\x71\x55\x2c\xf0\x0c\x45\xc5\x3c\x9c\xe6\xf3\x2f\x95\x7f\xe0\x22\x9f\xe6\x8d\x33\x90\x16\x0a\x49\x5c\x12\x19\xde\xfd\x1b\x1a\xb5\x53\xc9\xf3\x71\x44\x58\x88\xef\xfe\x79\x74\x02\x9d\xbc\xe9\xd0\xc9\x9b\xcb\xe8\x64\x83\x4c\x86\x77\xff\x21\x8d\x16\xe9\x64\xde\x46\x27\x6f\x18\x42\x79\x03\xef\x9e\x4c\x29\x15\x14\x9a\x4d\xc8\xda\x54\xbd\x9a\x6a\x12\x43\x35\x1b\xa5\x1b\x14\x34\xc4\x77\xff\x32\x4a\x1b\x65\x4e\x24\xa7\x37\xb0\xf9\xdb\x3d\x91\xa0\xbe\x5b\x11\x54\xa2\x09\x2a\x4e\x2b\x6a\x7a\xe3\x58\x72\x7a\x03\xef\xfe\x6b\xa4\xa7\xef\x9e\x40\x4f\x97\x8b\x7f\xaa\xf3\xf7\x45\x4c\xeb\x95\x70\xa8\xe2\x5f\x73\xf0\xf4\x93\x10\x51\x26\xc8\x94\x70\x79\xf7\x14\x44\x93\x24\xc5\x42\x5e\x3f\x0d\x51\x42\x33\x75\xf9\x0c\x44\x42\xc5\x78\xe4\xe0\xe9\xdf\x86\x68\x86\xb3\x6c\x53\x6c\xf3\x34\x9f\x6e\x0f\x39\x58\xff\xed\xfb\xb7\x4c\x0d\x2e\x60\x41\xfa\x33\xcc\x33\x52\xc7\xc8\xef\xd0\xec\x32\xbe\x0c\x38\x1c\x09\xe0\xd8\x01\x9f\xc7\x8c\xa5\xa2\x63\xec\x85\xac\x19\x70\x47\xa4\x1d\xdc\x91\xdd\xe9\x42\x38\x14\xda\x24\x48\x7e\x25\x6b\xd6\xb6\x3f\xf7\x0b\x9b\x02\xeb\x25\x26\x1e\x04\x32\xd6\x31\xc3\xeb\x40\xc7\x1f\x14\xa6\x17\xe5\x1c\x3d\xd0\x78\xa9\x59\x7e\x60\x90\x2c\x06\x56\x76\x58\xca\x91\xee\xf1\x77\xd8\xe3\xf0\xd4\xc6\x2f\x03\x6d\xde\x77\x56\x79\x1e\x3c\x1e\xbe\x53\xbc\x93\x9f\x7d\x6a\xf0\x74\xf4\x38\xc2\xc1\xe3\xbf\x5b\xdf\x17\xf5\xe5\x63\x8f\x4f\x51\xa6\x5e\x56\x8f\x46\x67\x0e\x9f\x40\xe5\xe3\xc7\x0f\x1e\xca\x03\x0f\x46\x94\x04\x80\x07\xb9\x75\x69\x45\x0c\xf0\x3e\x27\xb3\x04\xc7\x04\x60\xd4\xed\x42\x53\x38\x85\x6d\x96\x69\xb5\xd5\x88\x20\x37\xc5\x90\xf6\x05\xa7\xbb\x80\xc8\xf5\x24\x49\xb8\xf6\x90\xa7\x7d\xe7\x4e\x99\x8c\x40\xd8\x67\x78\x87\x8c\x01\x84\x28\x0e\xc6\x20\x0f\x07\x11\x1c\xb9\xb5\xd2\x09\x18\x3b\xa9\xbf\xb7\x01\x5c\x99\xc9\x4f\x87\x6d\x85\x16\xac\xe5\x2f\xe0\x6c\x9b\x64\xca\xcc\x3f\x67\x44\x69\xaf\xc8\xb8\x83\x85\xa2\x13\x1d\x41\x77\x49\x17\xae\x6c\x03\x88\x54\x9d\x68\x12\x30\xa0\x6d\xce\x18\xc8\x61\x9f\xe0\x78\x1b\xc4\x10\x99\x29\x6d\xb5\xf7\x6e\x1d\x8a\x3d\x9b\x90\xda\x4b\x3c\x4e\x60\x1d\x52\x45\x7b\x66\xbc\xc3\x1c\x7b\x7c\x67\x30\x4a\x30\x71\x23\x5e\x2a\xe3\xc3\x56\x87\x8c\xac\xb2\x4d\x74\xec\x32\xe1\xe1\xc4\xc4\xba\x76\x13\x12\xcd\x6a\xc0\x26\xfd\x04\x67\x02\xc0\x15\x06\xc8\xd2\x39\x26\x8d\xb8\x56\xb5\xa5\x62\x22\x3b\x20\xa7\x19\xa5\xfa\xda\x99\x55\x84\x03\xda\xe7\x7a\xf2\xfb\x59\xbe\x95\x09\x2e\x6b\x5b\xa1\x13\x40\xfb\x34\xbb\x9c\x8a\x17\x12\xcc\x76\x54\x50\x86\x26\x3a\x3c\x97\x2e\x4e\xe0\x4b\x75\x89\x8e\x8e\x33\x0d\x57\x44\xc8\xa2\x00\xc8\x5f\x15\x8c\xd3\x1a\xff\x61\x15\x1c\xee\xa4\x95\xe6\x50\xfd\x0d\x41\x66\x57\x25\x05\x91\xd4\xfe\x99\x01\x44\x2f\x6a\xee\xa7\x7a\x76\xf6\xa9\xea\xd9\x8b\x34\x71\x9e\x3f\xfd\x05\x16\x74\xdb\x2a\xb4\x2e\xf8\x8f\x87\xbf\xfb\x4e\x16\x3d\xae\xdd\x0a\x14\x31\x73\x57\x6a\xe5\x64\x67\xec\xbc\x8c\x8b\x0f\xaf\x3d\xed\x7a\x3d\x06\x28\x2c\x0a\x6a\xed\x7b\x5a\x50\x94\x81\x06\x29\x42\xbc\xcd\x2a\x56\x28\x03\x47\x89\x4c\xe2\x0b\x0d\x62\x8c\xb3\x99\x1e\xc0\xb3\x10\xed\xa6\xf1\x36\x1e\x1e\x6e\x18\x7e\xf0\x55\xb2\x47\x92\xab\x49\x3e\xa5\x4c\x16\x78\x02\x22\x39\xe4\x8d\xa7\x4f\x42\xa3\x54\xc0\xd9\x2e\x5d\x38\x16\x56\x35\x9e\x04\xcf\xb9\x46\x84\x1e\x3a\x01\xab\x95\x05\x94\x8d\xd7\x03\x9e\x86\xfd\x49\xb6\xa2\x5c\x90\x63\x92\x65\x41\x75\x55\x14\x4b\xac\x8d\x58\x9b\xb5\xd1\x71\x44\x55\xf1\xd8\x4f\xc0\xfe\xc5\x3d\xc2\xc4\x0b\x79\xb6\x42\xda\x5d\xe4\x14\x2f\xe8\x7e\xcf\x6d\xfa\xf2\xd4\xf8\x99\x34\x03\xb5\xc0\x43\xa1\x66\xa7\x4f\xd9\x24\x95\x74\x95\x39\x56\xd9\xda\x1e\x93\xf5\xaf\x5c\xde\xdc\xb8\x76\xf1\xaa\x67\x6b\xcb\x4b\x88\xd2\x3e\xc7\x6c\x67\x53\xb9\xe2\xe8\x34\x52\x8e\x9b\x12\x80\x9e\xeb\x9e\x84\xc4\xd8\x09\x36\xdc\x0e\xad\x5f\x64\x1d\xdf\xc1\x0b\x17\x44\xfa\x3c\xd7\x85\xca\xb2\xcd\x30\x0c\x71\x70\x76\x70\x92\x75\x5b\x73\x23\x34\x1e\x78\x67\x9f\x71\x96\x51\x9f\x32\xea\x63\x3a\x09\x48\x51\x54\x36\x6e\xca\x73\x48\xc5\x1f\x89\x53\x26\x30\x65\x84\x17\x85\x4a\x7e\xb5\x59\x3d\x00\x10\xe1\x20\xb5\x39\x18\x24\xef\xd0\x9f\xd4\x0b\x3d\x0b\xbc\xdb\x00\x7b\x2f\x51\xf5\xd2\x29\x57\x97\x91\xef\xad\x40\x24\x0b\xd8\xeb\x06\xba\x48\xc0\x17\x68\x2c\x3c\x54\xa1\x30\xac\xd9\xf6\x08\xf7\xa9\xd8\xcc\x0e\x58\x3c\x54\x57\xca\x56\x1b\x02\xd2\x17\x54\x24\x04\x11\xe4\x91\x67\x49\x2f\x04\xe0\x3a\x7c\xdd\x69\x48\xe1\xff\xef\x63\x8d\xfb\x63\x95\xc2\x72\x8b\x38\x43\x2a\x34\xf6\xf3\xbe\x12\xd7\x5a\xb9\xce\xd5\xf5\xda\x0b\x82\xea\x17\xf5\xf4\x80\xe6\xbc\x30\x63\x28\xcf\x9d\x14\xa0\x3b\x74\x36\xd2\x7f\x00\x0e\x29\x80\x2b\x3c\x58\x1d\x20\xd1\xdf\xa2\x4c\xee\xee\x80\x21\xd0\x60\x6f\x6c\x74\x52\x40\xfb\x13\x4c\x93\xa2\xa0\x50\x0d\x65\xb0\xba\x8e\x28\xb0\x33\x5e\x81\x95\x3a\x60\xb5\x43\xd5\x06\x93\xdc\x02\x34\x50\x0b\x00\x41\x24\x9b\x92\x6d\x9c\x0a\x71\xd3\xa1\x84\xcf\x0c\x66\x59\x22\x74\x3c\x26\x56\x70\x3b\x04\xdc\x0f\xe7\x21\x60\x7b\x78\x68\xcb\xd6\xe3\x24\xe9\xe0\x4e\x9c\xe0\x2c\xeb\xe0\x4c\xf2\xf4\xa6\x4a\xd7\xf5\xd5\x4c\x56\xc5\x94\xa9\x10\x97\xc2\x0d\x36\xe8\x86\xae\x63\xfd\x3a\xbe\x7f\xe0\xde\x14\xc5\xea\x3a\x62\x7d\x37\xde\xbf\x1c\x2d\x13\xad\x91\xaa\x7d\x19\xb0\xfe\x3e\xa7\xc2\xbc\x5b\x9a\x7e\x00\x31\x1d\xc4\xca\x0d\x68\x9e\x36\x13\xa0\xf6\x7a\xd4\x4b\x54\x20\x20\xe2\xea\x99\x4a\x4d\x5d\xf2\x3e\xb7\xae\x17\x38\xe8\xe6\xd6\xa3\xb4\x8e\xeb\xa4\x83\x77\x8f\xf4\x5f\x4b\xa6\xd8\xee\xe6\x66\xd7\x32\x51\x75\x8e\x41\xe5\xe6\x36\x49\xd2\x94\xeb\x4b\x2e\x25\xf4\x5d\x00\x7f\x4b\x09\xa9\x2c\xdd\x97\x3c\xbb\xfc\x14\x96\x28\x0b\xd6\x51\x1e\x60\xd0\xbd\xf6\xfc\xa5\xcd\xf3\x57\x5e\xbb\x7a\xfd\xda\xc5\xae\x94\x28\xcc\xa3\x6b\x6f\x5f\x95\xf7\xf1\x92\x04\x52\x6a\x89\x9a\x50\x0b\xd6\x6b\x7e\x8f\x66\x34\x65\xc1\xba\x71\x6b\xc0\x99\x38\xbf\x4d\xe2\x1d\x32\x76\x1f\xa9\x98\x52\xf6\x01\xcd\xae\xcf\x4c\x14\xa7\x55\xf3\x28\xcb\xb7\x04\x9e\x06\x8a\x7b\x77\x1e\x64\xf5\x93\x30\x89\x82\xca\x23\x44\x8e\x7c\xa8\x13\xc4\x98\x28\x66\xbe\x55\x75\x13\x94\xd5\x20\xc8\x8c\x7b\x82\xdb\xf8\x60\x11\xe6\x4c\x09\x15\x4e\x4c\x5e\x03\x88\xcd\xdb\xa1\x6f\x91\x71\x47\xb3\xbd\x57\x31\xb2\xf2\x24\x59\xd5\xb1\x94\xb8\x71\x3d\xc4\x37\x01\x47\x22\xcc\x23\x00\x21\x44\xa6\x00\xa9\x5c\x22\x59\x30\x38\xc7\x6a\x97\x48\x66\xd1\x9a\xaa\xac\xa1\xea\xb3\x15\xa7\x2a\x2a\x77\xec\xc6\x88\xf2\x3a\xb8\xca\xc2\xc8\xd6\xc1\x52\xac\x1b\x5b\xfd\xda\x04\xdf\xf2\xba\xbe\xb6\x66\x23\x4f\x57\xf5\x97\x65\x64\xc6\xb9\x9b\xcf\x94\xb2\xa2\x39\xdc\x0e\xb5\x25\x2b\x22\x08\x82\xd9\x88\xbb\xb3\x39\x04\xd5\xad\x40\xdc\x6b\xaf\x72\xcf\xf4\x1e\x23\xe1\xde\x41\xf3\x8d\xee\x6d\x3d\xaa\xf5\x43\x53\xfe\x4d\x9d\x9d\xbd\x2c\x75\x70\xbb\xee\x58\x27\x08\x69\x42\x0b\x0f\x49\x8d\xb2\x6b\x6b\x59\x59\xaa\x60\x92\x00\xa2\x49\x10\xf7\xd5\x47\x68\x1c\xc4\x7d\xdd\xdb\x15\x4f\x56\x73\xdc\xdd\x62\xb0\xae\x23\x82\x68\x27\xb2\x18\x3c\xe1\xf8\xdb\xed\xba\x62\xa7\x1c\x91\x9a\x62\xec\xd5\xaf\xc0\xde\x71\x29\xf8\xea\x3c\xdf\xde\x8b\x2a\xae\xff\xa8\xcd\xd3\xc4\x24\xa4\x2e\xdb\x72\x4c\x93\x5e\xef\xb8\x8c\x7f\xae\xd7\x4e\x10\x04\xd5\xf3\x55\x7b\x5d\x53\xb5\x91\x85\x6d\x58\x35\x28\x77\xb8\x92\x91\x7d\xd0\x4e\x35\x1c\xa2\x71\xaa\x05\x6c\xca\x3c\x3b\x18\x3c\xb3\xfe\xec\xb3\x67\x9f\x7a\xf2\x99\x27\x07\xcf\x3e\xbb\x5e\xcd\x95\xf2\x39\x7f\xb8\x6d\xd5\x88\xa0\xe9\xb3\xce\xea\xfc\x16\xc1\x3b\xaf\xe1\x59\x3d\xb5\x53\x87\x16\xd7\x19\x36\xf7\x94\x90\x6c\x97\x77\x3d\xdb\x5b\xd5\x1e\x39\x55\x39\x9b\xf5\x32\x39\x50\xf1\x54\x88\x1f\x2f\x8b\x43\xed\x0a\xfe\x1a\x9e\xa1\x03\x93\x2f\x9b\xc3\x3a\x80\x9a\xca\xc4\x5d\x27\x75\xe6\x3a\x26\x8b\x8d\xc1\xbc\x5d\xc7\x0a\xe7\x3a\xfa\x0a\x62\x10\xb1\x3a\xac\x8e\x2c\xb6\x69\x50\x75\xe0\xa0\xea\xbe\xbb\x7e\x9d\x1e\x23\xd6\x86\x9c\xc2\xba\x7c\x4c\x89\x10\xc4\x49\x41\x6e\x45\x22\x0b\xc4\x16\xa0\x72\x83\x60\xbd\x9e\x4e\xd7\x0c\x28\x1c\x81\x34\x10\x40\xa5\xcd\x24\x42\x65\x1d\x81\xc3\x34\xd0\xfd\xa0\x10\xa5\x2a\xa4\x8c\x57\xa9\x0a\x9d\x32\x01\x9b\x10\x2d\xca\x8c\xd3\x56\x1d\xd2\x0b\xd7\x2f\x0d\x3b\xe7\x31\xfb\x8a\xe8\xe8\xf5\xdb\xc1\x1d\x81\xa7\x9d\x49\xca\x3b\xb8\x33\xe3\x74\x97\x0a\xba\x47\xaa\x30\x77\x7a\x7e\x1a\xf3\xb0\x10\x72\xcb\x9b\x3e\xe6\x7c\xb4\x0b\xd8\x29\x81\x50\x8b\x0b\x33\x21\xa1\xa9\xf5\x48\x63\xc0\x24\x5f\xc0\xca\xfb\xef\x48\xa9\x80\xdc\x96\x58\x6b\xb3\xc5\xee\x02\x7e\x7f\x50\x49\x26\xb3\x2c\x81\xd0\xc1\xd8\x2d\x16\x95\xa5\x42\x9e\x8b\xed\x51\xc8\x9b\x41\x6b\x90\x70\xe2\x14\xc8\x7a\x14\xe3\x46\x96\x04\x23\xb7\x2c\xdc\x40\x45\x71\xd5\xd9\x31\x44\x78\x56\x45\xcd\x4b\x2d\xaa\x5f\x01\x2a\xde\x19\x5c\x69\x67\xcc\xe4\x4b\x55\x04\xba\xe1\x8f\xae\xf8\xf1\x3b\xf7\xa5\xb4\xdb\xeb\x71\x25\x24\x51\x9c\xd0\x5b\x84\x4b\x51\x8a\xf5\x35\x26\xa3\x34\x60\x7d\x8d\x7f\x16\xc5\xdd\x8c\x51\x83\x66\xc6\x28\xd4\x9e\x6b\x8c\xea\xec\x0d\xcd\xe8\x48\xf0\x30\xad\x78\xa6\x0d\x60\x47\x74\xc3\x1d\x51\x07\xf4\x9b\xf2\x83\x8d\x40\x72\x8b\x63\x20\x50\x57\x70\x2c\x37\xc2\xae\x97\xa9\xc6\x34\x78\xb1\x84\x72\xae\x54\x39\x27\xd4\xe7\x05\x3a\x3e\x6f\xb2\xcd\xb5\x7c\x74\x53\x72\xfa\x51\x04\x57\xfe\x4f\x00\x00\x00\xff\xff\x68\xae\xe5\x9c\xa8\x16\x18\x00") +var _web_uiAssetsVendorE5bd98ddbd577554f3a4bea67986a1d2Js = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\xfd\xd9\x76\xdb\x48\x97\x28\x08\xdf\xeb\x29\x48\x9c\xfa\xf1\x45\x98\x5b\x30\x22\x38\x80\x0c\x29\xc4\xe3\xb4\xe5\x2c\xd7\x97\x69\xbb\x64\x67\x66\x65\xf1\xe3\x61\x41\x64\x90\x42\x9a\x02\x98\x00\x48\x59\x49\xb2\x56\x9e\xbf\xfb\xf4\xb8\x56\x3f\x40\xdf\xf4\xb9\xed\xab\x7e\x87\x7a\x93\x93\xfd\x22\xbd\x62\xc0\x44\x82\xb2\x2b\xbb\x75\x21\x02\x81\x98\x87\x3d\xef\x1d\x0f\x41\x38\x8b\x1e\x9c\xeb\xfb\x5b\x11\x5f\xbf\xfd\x91\xcf\xd7\xe1\x34\x0d\xa2\x10\x09\x48\xf1\x76\x1e\xc5\x68\xe3\xc7\x8d\xb8\x11\x84\x8d\x14\x8b\x51\x3c\xe6\xe9\x28\x1e\x9f\xc5\x22\x5d\xc7\x61\x43\xec\xd1\x41\x05\xbb\xdd\x76\x0f\xdb\xd7\xd7\x2f\x3e\xfe\x70\x73\xfd\x81\x6d\xf7\x70\xfd\x4f\x1f\xaf\xdf\xbe\x9a\xbc\xbf\x79\xf7\xf1\xdd\xc7\x9f\xdf\xcb\xc4\x57\x7e\x2a\x58\x93\xec\x61\xf2\xe2\xfd\xfb\xef\xde\xbc\x7c\xf1\xf1\xcd\xbb\xb7\x93\x8f\xd7\xdf\xbf\xff\xee\xc5\xc7\xeb\xc9\x4f\x37\x2f\xde\xbf\xbf\xbe\x61\x4d\x02\x93\x57\xd7\xaf\x5f\xfc\xf0\xdd\xc7\xc9\x8b\x0f\x3f\xbf\x7d\x39\x79\xf7\xcd\x87\xeb\x9b\x1f\xaf\x6f\x3e\xb0\xa6\x0b\x93\x7f\xf8\xc7\x1f\xae\x6f\x7e\x9e\xbc\x79\xfb\xf1\xfa\xdb\x1b\x55\x87\x2a\x92\xd7\xf3\xee\xed\x77\x3f\x4f\xbe\xfd\xee\xcd\xf7\xdf\x5f\xdf\x4c\x5e\xbe\xfb\xfe\xfd\xbb\xb7\xd7\x6f\x3f\xca\xb2\x7b\x7c\x26\x87\xb5\x8c\xfc\x99\x88\x61\x26\xe6\x41\x28\x20\x16\xbf\xae\x83\x58\x7c\x1f\xcd\xd6\xcb\xfc\x2d\xfb\xfd\x25\x81\x78\x1d\x86\x41\xb8\xf8\x28\x92\x34\xe1\x4d\x72\x81\x8a\xb9\xc2\x5b\x6b\x9d\x88\x46\x92\xc6\xc1\x34\xb5\xce\xb2\x0f\x8d\x14\xe1\xad\x6c\x48\xf0\x77\xb7\xbf\x88\x69\xea\x4c\x63\xe1\xa7\x02\x85\xeb\xe5\x12\xe7\x93\xe8\x4c\x26\x7c\x13\x05\xb3\x86\x0b\x33\xb1\x14\xa9\x50\x49\x20\xf6\x6a\xea\xf9\x56\x77\x93\x55\x7a\xcb\xea\x3a\xcd\x6a\x87\xc0\x8e\x86\xc2\xf2\xa7\xfd\x59\xfe\xc8\xcd\x13\xaf\x54\xc2\xcb\x83\xcc\xb6\x43\xca\x47\x63\x88\xf9\x14\x09\xb0\x90\xc9\x8e\x2d\x48\x31\x84\x3c\x75\x96\x22\x5c\xa4\x77\xe7\xe4\x22\xbc\xe2\xee\x45\x78\x7e\x8e\xd3\x51\x38\x76\xc4\xe7\x55\x14\xa7\x09\xca\xc7\x1d\x3b\xf7\xaa\x89\xec\xcb\x1e\xf4\x08\xf9\x36\x8c\x5e\x46\xe1\x7c\x19\x4c\x53\x96\x37\x9f\xea\x99\x0c\x21\x38\x93\xdd\x08\xf5\x8e\x4c\x9d\x3b\x3f\x79\xf7\x10\xbe\x8f\xa3\x95\x88\xd3\x47\x14\x62\xdb\x8e\xeb\x12\x51\xc0\x65\x37\x40\x8c\x82\x31\x17\xfa\x29\x1c\xf3\x78\x14\x8e\xf1\x1e\xee\xfd\x4f\xe2\x95\x98\xfb\xeb\x65\x7a\xad\x7a\x23\x37\x89\xda\x23\x21\x4f\x11\x86\x80\x23\xf9\xe3\xe2\x62\x6d\x23\x39\x23\xe9\x5d\x1c\x3d\x34\x42\xf1\xd0\xb8\x8e\xe3\x28\x46\x96\x1f\x36\xd6\x61\xb2\x5e\xc9\x3a\xc4\xac\xa1\x47\xd8\x78\xf0\x93\x86\x5e\xb0\x19\x34\xc4\xe7\x95\x98\xca\x8f\xff\xa2\x93\x50\x30\x83\xc6\x4c\xac\x12\x30\xd9\xf1\xbf\x34\x82\x30\x49\x85\x3f\x6b\x2c\xa2\x94\x35\xfe\xc5\x6a\x89\x96\xf5\x2f\x0d\x3f\x5e\xac\xef\x45\x98\x26\x8d\x34\x32\xd5\xfd\x8b\x85\xd5\x2e\xf1\xf9\xc8\x32\x0b\x61\x81\x65\x26\xd4\x02\x4b\x57\x68\x8d\x8b\x6e\x27\xf2\x64\x43\x0c\xa1\xec\x7c\x90\x38\xeb\x75\x30\xe3\x41\xab\x05\xea\x2d\x98\x71\xa1\x9f\x64\x87\x78\x33\x5b\x4d\x39\xa9\xfa\x69\xe8\xb3\x54\xe7\xd0\x75\xf3\xad\x69\x8d\x6d\xf7\x7b\xfd\x61\xea\x2f\x97\xb7\xfe\xf4\x13\x8f\xf5\xfb\x9d\x9f\xe8\x49\x4d\x5e\x24\xaf\xc4\x8a\x37\x89\x69\x2c\x79\xb1\x0c\xfc\x84\x87\xfa\x35\x16\xc1\x3c\x10\x33\x2e\x67\xf3\x45\x1c\xfb\x8f\x28\x6b\x1d\xeb\x0c\x49\xea\xa7\x82\x5b\xa1\x78\xb0\xf6\xf9\x78\xd6\x08\x6f\x8b\xb7\xa5\x5e\x14\x33\x92\x22\x7d\xaa\x47\x5d\x6c\xe1\x80\x87\x23\x31\xde\xed\xc2\x91\x68\x59\xcf\x83\x70\x26\x3e\x5b\xe3\x8b\xc0\xb6\x83\xac\x5b\x17\x58\xe6\x09\x9c\x60\xa6\xb2\xc9\x87\x22\x67\xb6\x87\x83\xdd\xae\x0a\x31\x8f\x36\xc4\xcb\x68\xbd\x9c\x35\xc2\x28\x6d\xcc\x83\x30\xdf\x10\xd9\x92\x06\xf7\x66\xa3\xcc\xe3\xe8\x5e\xa6\xa6\x2d\x4b\xae\xa9\xaa\x0c\x62\xdb\xb6\x56\x22\x9c\x05\xe1\xc2\x6a\x72\x1e\xe8\x19\xb0\x6d\x6b\x1e\x84\xfe\x32\xf8\x4d\xcc\x2a\xc9\x28\x70\x64\x1b\xaf\xc4\x2a\x41\x31\x86\xd8\x59\xad\x93\x3b\x14\x60\x0c\x41\x31\x13\x73\xdd\xcf\x60\x8e\x2c\x47\x96\x16\xce\xf4\xce\x8f\x5f\xa4\xc8\xc5\x38\x03\x48\x67\x39\xdc\xe7\xc2\x49\x56\xcb\x20\x45\xd6\x73\x4b\x9f\xee\xe2\xd5\x49\x96\xc1\x54\x20\x17\xce\x89\x3c\x20\x2e\x44\x3c\xdb\x24\x17\xc1\x65\x74\x11\xb4\x5a\xfa\xcc\xfa\x3c\x1e\x05\xe3\x33\xd5\xa4\x63\x71\xce\x7d\xd5\xbe\xcb\x39\x0f\xb3\x15\x3e\x9e\x37\x3f\x94\x93\xe6\x4f\xa7\x22\x49\x1a\x2b\x3f\x16\x61\x9a\xcd\x5e\x34\x6f\xc4\x51\x94\x5a\xf8\x2c\x74\x56\xd1\x0a\xe1\xbd\x58\x26\xc2\x8c\x49\xd5\x3f\x8d\xc2\x34\x08\xd7\x42\x66\x90\x93\xe0\xe3\xfd\xde\x8c\x2e\x74\x7e\x89\x82\x50\x8d\xa0\x98\x95\x99\xdc\x37\x3a\x43\x13\x35\xe5\xd6\xb0\xed\x66\x65\x6f\xe0\x7d\xe2\xac\xe2\x28\x8d\xd2\xc7\x95\x70\x8e\xe0\x45\x01\x27\x33\x88\x5f\x3a\x23\x19\x84\x3b\x93\x70\x9f\x73\x2e\x76\x3b\x2b\x52\x08\xc1\x6a\x72\x59\x5f\x34\x6f\xa8\x65\x35\x75\x94\x52\x77\x3b\x8d\x19\xd4\x4a\xcd\x74\x8b\xbb\x5d\xd3\xa0\x93\x20\xb9\xfe\x9c\x8a\x30\x09\x6e\x97\x02\x09\xbc\xdb\xa1\x3c\x13\x17\x78\x0f\xe5\x2e\x9b\x3e\x94\x3b\x2a\x27\xac\xd8\x4a\x9c\xf3\xe2\x98\xed\x76\x96\x3c\x8f\x8f\x72\xeb\x55\x3e\x64\x9b\xa4\x6e\x78\x1a\x7e\x3b\x0f\xb1\xbf\xd2\xd8\x23\xb1\x6d\x54\x05\x09\xc7\x59\x90\x39\xae\x55\xd8\x81\x71\x01\x14\x1e\x91\x46\xd7\x66\x4e\xb3\x2c\x8e\xbf\x5a\x2d\x1f\x55\xf1\x0a\x00\xc9\x11\x4c\x39\xd1\xec\x33\xee\x56\x40\x49\x31\xf8\x5a\x48\x65\xdb\x7a\xf2\xf5\x92\xa1\x9a\x21\x73\x81\x0d\xd6\x3a\xde\x12\xb6\xad\x0b\x1c\xa6\x23\x0c\x35\x35\x55\x17\x6b\x1d\x26\x42\x94\x97\xea\x10\x00\x9e\x04\xc1\xd5\x7a\xd4\xf4\x1d\x2e\xb9\x99\x12\x79\xfa\x4b\xeb\x5a\x69\x22\x5f\xfb\xb3\x34\x7e\xdc\x56\xc0\xb3\x7a\x99\x98\x75\x81\xc3\x42\xb2\xde\xbd\x9a\xd6\xe5\xe3\xf6\xc4\x16\xca\x36\x85\x29\x26\xe4\x81\x17\x33\x0b\x1f\x76\x7e\x72\xd4\xfb\x0c\x2e\x99\x9d\x90\xad\xad\x06\x44\x18\x52\xee\x5e\xa4\x97\x22\x03\x42\x69\x06\x80\x62\x2e\x46\xe9\xf8\x4c\xfe\xe3\x71\x36\xe1\xc3\xfc\x89\x1d\x52\x22\x08\xef\x73\x02\xb7\xd2\xa3\x0c\xbc\x56\xa8\x22\x39\xa5\x72\x49\xf8\xe9\xe9\xcc\x80\xf8\x59\x41\x41\xe5\x48\x16\x62\xee\x5e\xc4\x97\x19\xae\xbb\x88\xb3\x5e\x87\x8a\xd4\x86\xa0\x32\x56\x49\x81\xe7\xcb\x6d\x88\x46\xdd\x79\xf3\xb6\x3f\xcb\xd1\xbf\x84\xaf\x43\x54\x8f\x82\x5d\x08\xf2\x3d\x5c\xb3\x1b\x31\xcb\xc9\x09\x55\xcb\x61\x66\xff\x93\xb8\xd1\xdf\x11\x66\x19\x95\x51\x9b\x53\xf7\x2d\xc8\xb6\xea\x14\xcd\x51\x98\xd1\x1a\x38\x7b\x00\x71\xb4\xf8\xa5\x26\x4e\xc0\x56\x09\x32\x78\x99\x3e\xcc\xe8\x4a\xd3\xb1\x39\x4a\x41\x60\xbc\xcf\xc1\x41\x0e\x1a\x53\x48\x4d\x7f\xde\x28\x7a\x47\x4e\x4f\x5d\x4d\xb3\xbc\x0e\x48\xf7\x80\x34\xc9\x55\x61\x91\x24\x49\x51\x90\x13\x67\x81\x6d\xab\xad\x50\x60\xe5\xdd\x0e\xe5\x64\x9b\x59\xe1\x4b\x6a\xdb\xd1\x51\x2a\x06\x45\xf3\x48\xea\x43\xd3\x3e\x12\x9a\xc7\xb2\xab\x7c\x34\xc6\x20\xab\xe7\xb1\xa2\x0b\xfd\x70\x2a\x51\xc3\x72\x28\xb1\x65\x82\x62\x35\x11\x10\x43\xd3\xc5\x4c\x27\x69\x0a\xaf\x49\x30\xde\xe3\x63\xb8\xaf\xf0\xbf\x3e\x16\xba\xd3\x73\xd4\x8c\x77\xbb\x6c\x0f\xc7\x15\x38\x8f\x62\x9e\xd5\x39\x1a\xc3\x1a\x14\xe7\x82\x0f\xa1\x60\x0a\x71\x0d\x48\xd5\x7d\x86\x78\x6f\x78\x16\xc7\x57\xe4\x5e\xb5\x23\x66\xaa\xa9\x44\xdb\x07\x53\x32\x34\xf4\x71\x0a\xb2\x0b\x92\xb4\xd3\x03\x94\x4f\xfb\x82\x9b\x71\x44\x98\xc6\x81\xc8\x19\x98\x5f\x12\x67\x22\xfc\x4f\x93\x44\x88\x90\x87\xa5\x7c\x72\x95\x67\xa5\xf7\x03\x20\x2b\xf0\x56\x73\x34\x2a\x1d\x5b\x72\x02\x75\x1e\x54\x69\x6e\xba\x14\x7e\x5c\xde\x93\x5f\xd9\x13\xc5\x48\xa4\xb2\x2e\x33\x2e\x6b\x1e\x45\x16\xa0\x52\x4d\x7b\x8c\xcb\x1f\x9f\xdf\xfa\xb1\x25\xe7\xfd\xa9\x3c\x7e\x32\x9b\x5b\x30\xca\x0e\x61\x99\xfa\xcf\x8e\x70\xb9\x02\xb3\x69\x15\x8f\x54\x34\x22\xb9\xa6\xd2\xdb\x71\x3f\x7e\x53\xfd\x28\xaf\xa3\xee\xfe\x41\xc6\x5f\xd7\xbf\x59\x4f\xe5\x2a\x27\x82\x29\xf1\xd9\xaa\x1b\xb4\xc9\xe2\xe8\x2a\x2d\x47\xf7\xc1\x72\xcc\x78\x55\x42\x2c\x7f\x9d\xe7\x32\xe7\xd3\x73\x74\xef\x07\xa1\xa9\x53\x15\x3b\x95\x3b\x47\x00\x2a\x67\x3e\x91\xdb\x3d\xce\xd6\xbf\xfa\xe5\x20\x59\x35\x93\xa7\x99\xbd\x53\xcc\xea\xe1\x1e\x42\x18\x32\x32\x90\xe7\x04\x9f\xae\xd9\xb6\x8f\xbe\xe8\xf5\xb5\xed\xea\xd1\xb3\x6d\x74\x70\x16\xb7\x87\x6c\x7f\x45\x60\xb0\xc7\x7b\xac\x50\x02\x86\x9c\xf8\x95\x27\x4c\x31\x84\x79\x4a\x80\x7c\x48\x14\x66\x6b\xc6\x23\x7f\xac\x9f\x52\xf5\x24\x01\xc7\x9a\x17\xa4\x6a\xde\x3f\xd3\x9c\x6d\x9b\x07\x05\x57\x12\xdb\x5e\x67\x14\xe3\x1a\xf9\x12\x46\xc9\xf4\x28\x4b\x8b\x4c\x9a\x92\xc6\xf0\x63\xf2\xbf\xcc\x33\xfd\xc5\x6a\xf9\x2d\xeb\x2f\x16\x3e\xd3\xcc\xc2\xd2\x99\x46\x33\xc1\xad\xef\xdf\xbd\xfa\xe1\xbb\xeb\xc9\xdb\x77\x1f\x27\xaf\xdf\xfd\xf0\xf6\x95\x05\x4b\xc5\x13\x4f\xb9\xec\x7b\x85\x38\x3a\x93\x63\x18\xb9\x63\x45\x43\xa2\x69\x36\x67\x50\x11\xe5\x64\xac\x1d\x52\x99\xc9\x58\xf1\x89\x02\xef\x31\x4c\xa1\x28\x92\x71\xd1\x19\xa5\x20\xdb\xca\x69\xb9\x0c\xcd\x47\x5f\x33\x51\xe0\x73\xf7\xc2\xbf\xcc\x58\xa1\x0b\xbf\xd5\xc2\x01\x0a\xe5\x6c\xe7\x6c\xe6\x1e\x6d\x09\x1b\x9d\x14\x38\x09\x44\xf5\x1c\xa6\x10\x73\x94\x72\x81\x48\x17\x63\xdb\x4e\x9d\xc9\x44\x24\x9a\xd0\x1e\xa6\x6c\x6b\x10\x20\x4b\xf7\x67\x71\x86\x0d\x9d\xc9\xad\x7f\x2b\x96\xef\xa3\xe5\xe3\x3c\x58\x2e\x6d\xdb\x5a\x87\x46\x56\x51\xf0\x21\xd3\x28\x4c\x22\xb9\xfb\xcc\x83\xf3\xe0\xc7\x61\xf5\x0d\x59\xff\x51\x55\xf4\x7c\x65\x6a\x6a\x04\x89\x96\xb0\xc9\x15\x8c\x45\x23\xbd\xf3\xc3\x46\x14\x4e\x45\x23\xd2\xb4\x79\x63\xe5\x2f\x84\xd3\xf8\x28\x1f\xe5\x5b\x1c\xdd\xfa\xb7\xcb\x47\xc5\x2c\xcf\x44\x12\xc4\xfe\xed\x52\x3c\x0f\xc2\x54\x84\xb2\x12\x5f\x6e\x05\xff\xb1\x71\xe7\x6f\x84\xea\x90\xf8\x75\x2d\xc2\xa9\x48\x1a\xc1\xbc\x31\x0b\xe6\x73\xa1\x78\xc4\x8d\x88\x93\x20\x0a\x13\xc9\x25\xa6\x77\xa2\x91\x75\x27\x69\xf8\xb1\x68\x48\x9e\x21\x10\xb3\x86\x2e\x9c\x06\x92\x4e\x75\x1a\x6f\xe6\x8d\xc7\x68\xdd\x98\x45\x8d\x50\x88\x59\x23\x8d\x54\xc7\x2b\xc5\x0f\xc6\x00\x0d\x39\xff\x07\x23\x7e\x5e\x08\xae\x72\x09\x4e\x1a\x35\x6e\x1f\x57\x7e\x92\xa8\xda\xe4\x44\x05\xe1\xc2\x91\xc0\xe0\xc4\x02\xf0\xa6\xbb\x87\x2d\xe9\x32\xd2\x05\xca\xe8\x7e\x0c\xf4\xc9\x95\x6f\x63\x10\xa8\x2b\xff\x75\xe4\x3f\x42\xd4\x7f\x57\xfd\x57\xdf\x08\x55\xff\xd5\x57\x4f\xfe\xeb\xcb\x7f\x3d\xf9\x6f\x20\xff\xb5\xdd\x9e\xfe\xf1\xb0\x6c\xd8\x65\xc4\x05\x42\x18\x21\x40\x28\x23\x14\x48\x9b\x91\x36\x90\x0e\x23\x1d\x68\xb3\x36\xb4\xdd\x1e\x6b\xbb\x3d\x68\xbb\x1e\x6b\xbb\x1e\x74\x58\x07\xba\xac\x0b\x3d\xd6\x03\x8f\x79\xd0\x67\x7d\x18\xb0\xc1\x7e\x0c\xed\x72\xc7\x25\xb2\x17\x88\x7a\xaa\x75\xaa\xbb\x43\x49\x4f\xff\x74\xf5\x8f\xfe\x46\x5d\xfd\x63\x12\x07\xfa\xc7\xd3\x89\xe6\x47\x97\xa3\x54\xff\xb4\xf5\x0f\xd1\x39\xcd\x9b\x6e\x81\x9a\x3a\x55\x2d\xa4\xaf\xe7\xa5\xaf\xa7\xa4\xaf\x0b\xb4\xcd\x8f\x6e\xd6\x35\xb5\x98\x1f\xdd\x82\x6b\x7e\x74\xd5\xae\xae\xda\xed\x62\x79\xf2\xf4\xf4\x51\x57\xf7\xcc\xd5\xed\xb9\xa6\xd7\xa6\x3d\xbd\x34\xfd\xae\xfe\xe9\xe9\x1f\x4f\xff\xf4\xf5\x8f\xee\xe0\x40\x17\x18\xe8\x55\x1c\xe8\x7e\x0e\xf4\x3a\x0e\x74\x2d\x03\x5d\xcb\x40\xd7\x32\xd0\xb5\x0c\x74\x2d\x03\xdd\xac\xab\x87\xd2\xd3\x33\xe8\xe9\x37\x4f\x77\xb0\xa7\x3b\xd8\x33\x59\xf4\x30\x7b\x7a\x0c\x1e\x51\x23\xf2\xf4\x30\xbb\x3a\xb1\xab\xcb\x75\x75\xb9\xae\x6e\xa1\xa7\x27\xa4\xa7\x73\xf6\xf4\x84\xf4\x4c\x0b\x3a\x8b\xa7\xb3\x78\xfa\x9b\x67\xfa\xa2\x7b\xad\xdf\x88\xee\x12\xc9\x12\xf5\x14\xe8\x1d\x42\x74\xd5\x44\x77\x90\xf4\x4c\xa2\x29\xa7\x13\x3d\x93\x45\xcf\x99\x6e\x9d\x74\x4d\x9d\x7a\xea\xba\x6a\x8d\x88\x67\xb2\xe8\x16\x74\xe7\x89\x1e\x34\xe9\xea\x69\xed\x9a\x37\x9d\x45\x8f\x96\xe8\xce\x13\x33\xbe\x8e\x1e\x5f\xc7\xcc\x84\x49\xd4\xa3\xed\xea\xf9\xec\xea\xf9\xec\xea\xb1\x77\xf5\xf4\xb4\xcd\x76\x33\xd3\xaa\x67\x42\xaf\x34\xd5\x2b\x4d\xf5\xd8\xa9\xde\x9f\x54\x6f\x14\xaa\xb7\x06\xed\x9b\x6f\xba\x78\xbf\xa7\xd6\x48\x6f\x29\xaa\x37\x11\x35\x3b\x59\xef\x6b\xda\x36\xcd\xea\x2c\x6d\x5d\x59\x5b\xaf\x66\xdb\x8c\x41\x37\xd4\xd6\x2d\xb4\x75\x0b\x1d\x5d\x4b\x47\xd7\xd2\xd1\xb5\x74\xcc\x30\x75\xf1\x4e\x17\x43\x5a\x48\x3f\x50\x97\x2a\xa0\xd1\xed\x30\xd2\xed\x00\xe9\x4a\xb0\xd5\x05\xd2\xed\x31\xd2\xed\x01\xe9\x7a\x8c\x74\x3d\x20\xdd\x3e\x23\xdd\x3e\x90\xee\x80\x91\xee\x00\x48\xcf\x65\xa4\xe7\x02\xe9\x11\x46\x7a\x04\x48\x8f\x32\xd2\xa3\x40\x7a\x6d\x46\x7a\x6d\x20\xbd\x0e\x23\xbd\x0e\x90\x5e\x97\x91\x5e\x17\x48\xaf\xc7\x48\xaf\x07\xa4\xe7\x31\xd2\xf3\x80\xf4\xfa\x8c\xf4\xfa\x40\x7a\x03\x46\x7a\x03\x20\x9e\xcb\x88\xe7\x02\xf1\x08\x23\x1e\x01\xe2\x51\x46\x3c\x0a\xc4\x6b\x33\xe2\xb5\x81\x78\x1d\x46\xbc\x0e\x10\xaf\xcb\x88\xd7\x05\xe2\xf5\x18\xf1\x7a\x40\x3c\x8f\x11\xcf\x03\xe2\xf5\x19\xf1\xfa\x40\xbc\x01\x23\xde\x00\x48\xdf\x65\xa4\xef\x02\xe9\x13\x46\xfa\x04\x48\x9f\x32\xd2\xa7\x40\xfa\x6d\x46\xfa\x6d\x20\xfd\x0e\x23\xfd\x0e\x90\x7e\x97\x91\x7e\x17\x48\xbf\xc7\x48\xbf\x07\xa4\xef\x31\xd2\xf7\x80\xf4\xfb\x8c\xf4\xfb\x40\xfa\x03\x46\xfa\x03\x20\x03\x97\x91\x81\x0b\x64\x40\x18\x19\x10\x20\x03\xca\xc8\x80\x02\x19\xb4\x19\x19\xb4\x81\x0c\x3a\x8c\x0c\x3a\x40\x06\x5d\x46\x06\x5d\x20\x83\x1e\x23\x83\x1e\x90\x81\xc7\xc8\xc0\x03\x32\xe8\x33\x32\xe8\x03\x19\x0c\x18\x19\x0c\x80\xba\x2e\xa3\xae\x0b\xd4\x25\x8c\xba\x04\xa8\x4b\x19\x75\x29\x50\xb7\xcd\xa8\xdb\x06\xea\x76\x18\x75\x3b\x40\xdd\x2e\xa3\x6e\x17\xa8\xdb\x63\xd4\xed\x01\x75\x3d\x46\x5d\x0f\xa8\xdb\x67\xd4\xed\x03\x75\x07\x8c\xba\x03\xa0\xc4\x65\x94\xb8\x40\x09\x61\x94\x10\xa0\x84\x32\x4a\x28\x50\xd2\x66\x94\xb4\x81\x92\x0e\xa3\xa4\x03\x94\x74\x19\x95\x78\x89\xf4\x18\x25\x3d\xa0\xc4\x63\x94\x78\x40\x49\x9f\x51\xd2\x07\x4a\x06\x8c\x92\x01\x50\xea\x32\x4a\x5d\xa0\x94\x30\x4a\x09\x50\x4a\x19\xa5\x14\x28\x6d\x33\x4a\xdb\x40\x69\x87\x51\xda\x01\x4a\xbb\x8c\xd2\x2e\x50\xda\x63\x94\xf6\x80\x52\x8f\x51\xea\x01\xa5\x7d\x46\x69\x1f\x28\x1d\x30\x4a\x07\x40\xdb\x2e\xa3\x6d\x17\x68\x9b\x30\xda\x26\x40\xdb\x94\xd1\x36\x05\xda\x6e\x33\xda\x6e\x03\x6d\x77\x18\x6d\x77\x80\xb6\xbb\x8c\xb6\xbb\x40\xdb\x3d\x46\xdb\x3d\xa0\x6d\x8f\xd1\xb6\x07\xb4\xdd\x67\xb4\xdd\x07\xda\x1e\x30\xda\x1e\x00\xed\xb8\x8c\x76\x5c\xa0\x1d\xc2\x68\x87\x00\xed\x50\x46\x3b\x14\x68\xa7\xcd\x68\xa7\x0d\xb4\xd3\x61\xb4\xd3\x01\xda\xe9\x32\xda\xe9\x02\xed\xf4\x18\xed\xf4\x80\x76\x3c\x46\x3b\x1e\xd0\x4e\x9f\xd1\x4e\x1f\x68\x67\xc0\x68\x67\x00\xb4\xeb\x32\xda\x75\x81\x76\x09\xa3\x5d\x02\xb4\x4b\x19\xed\x52\xa0\xdd\x36\xa3\xdd\x36\xd0\x6e\x87\xd1\x6e\x07\x68\xb7\xcb\x68\xb7\x0b\xb4\xdb\x63\xb4\xdb\x03\xda\xf5\x18\xed\x7a\x40\xbb\x7d\x46\xbb\x7d\xa0\xdd\x01\xa3\xdd\x01\xd0\x9e\xcb\x68\xcf\x05\xda\x23\x8c\xf6\x08\xd0\x1e\x65\xb4\x47\x81\xf6\xda\x8c\xf6\xda\x40\x7b\x1d\x46\x7b\x1d\xa0\xbd\x2e\xa3\xbd\x2e\xd0\x5e\x8f\xd1\x5e\x0f\x68\xcf\x63\xb4\xe7\x01\xed\xf5\x19\xed\xf5\x81\xf6\x06\x8c\xf6\x06\x40\x3d\x97\x51\xcf\x05\xea\x11\x46\x3d\x02\xd4\xa3\x8c\x7a\x14\xa8\xd7\x66\xd4\x6b\x03\xf5\x3a\x8c\x7a\x1d\xa0\x5e\x97\x51\xaf\x0b\xd4\xeb\x31\xea\xf5\x80\x7a\x1e\xa3\x9e\x07\xd4\xeb\x33\xea\xf5\x81\x7a\x03\x46\xbd\x01\xd0\xbe\xcb\x68\xdf\x05\xda\x27\x8c\xf6\x09\xd0\x3e\x65\xb4\x4f\x81\xf6\xdb\x8c\xf6\xdb\x40\xfb\x1d\x46\xfb\x1d\xa0\xfd\x2e\xa3\xfd\x2e\xd0\x7e\x8f\xd1\x7e\x0f\x68\xdf\x63\xb4\xef\x01\xed\xf7\x19\xed\xf7\x81\xf6\x07\x8c\xf6\x07\x40\x07\x2e\xa3\x03\x17\xe8\x80\x30\x3a\x20\xd0\xa5\xac\x2b\x29\x9f\x4e\x0d\x01\x21\x71\xe2\x01\x04\x72\xb4\xe8\x64\xbe\xf4\xd3\xef\xfd\xd5\x1e\xb6\x74\x40\x19\x1d\xd0\xbc\x9e\x6e\x5d\x3d\xed\x53\xf5\x04\xe1\x74\xb9\x9e\x89\x44\x55\xd4\x66\x74\xd0\xce\x2b\xea\xd5\x55\xd4\x39\xae\xc8\xc8\xe7\x8d\x3c\x40\x55\xd4\x61\x74\xd0\xc9\x2b\xf2\xea\x2a\x3a\x86\xad\x59\x45\x0b\x91\x96\x14\x9a\xaf\x44\x32\x8d\x83\x55\x1a\xc5\xba\xea\x2e\xa3\x83\x6e\x5e\x75\xbf\xae\xea\xde\xc9\xaa\x37\xfe\x72\x6d\xba\xd8\x63\x74\xd0\xcb\xeb\x19\x1c\xd6\x73\xc8\x72\x68\xb4\x46\x25\x05\x72\x58\xf7\xfb\x38\xba\x0f\x12\x25\x30\x95\x14\xb6\xac\x3d\x3b\xb2\x03\x8f\xd1\x81\x97\xb7\x42\xdc\xba\xee\xf6\x8f\xab\xfc\x90\xc6\x92\x72\x5e\xf9\xb3\xeb\x70\xa6\xba\xdb\x67\x74\xd0\x2f\x2a\x22\x75\x15\x0d\x9e\xaa\xe8\x43\xea\xc7\xa9\xaa\x6a\xc0\xe8\x60\x50\x54\x45\x8f\xab\x6a\x4b\xba\xf0\x44\x55\x69\x1c\xdc\xdf\x04\x8b\x3b\x59\x57\xdb\x25\xac\xed\x16\x5b\x98\xd4\x10\xc1\x6d\x49\x9f\x3d\x51\xd7\x77\x62\xae\xab\x72\x59\xdb\x75\x8b\xaa\x6a\x8e\x43\xdb\x3d\x38\x0e\xa4\x4b\xb0\x33\x47\x96\x9f\x3c\x86\xd3\x37\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\x59\x2c\xa3\x5b\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\x57\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\x9f\x6c\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\xbf\x15\x71\xc1\xff\x4f\x26\xc2\xb6\xd1\x64\x22\x78\x8c\xcd\x80\x8e\x8e\x5a\x36\x20\xd2\xab\x1f\x10\xa4\x10\xaa\x41\xc9\x31\x41\xae\xa5\x4a\x0b\x15\x6e\xf2\x10\xa4\xd3\x3b\x14\xe2\xed\xd4\x4f\x44\x83\x30\xf3\x25\xaf\x23\xce\x25\x1d\x42\x8b\x43\x52\x88\xf1\xfe\x4c\xe5\xa6\xc7\xb9\x65\x7b\x47\xf9\x21\xcc\x4a\xb4\xeb\x4a\x40\x50\x5b\x06\x82\x42\x1b\x5b\x11\xa3\x9a\x9c\x46\xaf\x07\xb9\x3c\x58\x29\x07\xb6\x44\xd2\x80\x92\x1d\x3e\x82\x18\xc5\x0c\x35\x25\x58\xc2\x08\x1d\x57\xeb\x35\x33\x1b\x1c\x2d\xdc\xc8\x8d\x43\xb6\x7b\xb0\x7c\x0b\xb6\x0b\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\x59\x34\x55\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\x14\xe6\x30\xe3\xc2\x4e\x9c\xd7\x70\xa7\x7e\xbf\x85\x95\xfa\xfd\x00\xf7\xea\xf7\x3d\x6c\xd4\xef\x37\xf0\xa8\x7e\x7f\x82\x05\xbf\x1b\x86\x2c\x1c\xa5\xe3\xdd\x0e\xc9\x1f\xbe\xdd\x63\xb8\xe5\x8b\x42\xb1\x03\x13\x7e\x37\x8c\xd9\x6a\x18\x8f\xd2\x31\x43\xb1\xca\xbb\xdd\xe3\x22\x87\x52\x92\x2d\x1b\x41\xd8\xb8\xb3\x6d\xb4\xe6\x29\x86\x35\x46\x53\xde\x9c\xd9\xf6\x24\x53\xc9\x36\x39\x9f\x8c\x96\x63\x6c\xdb\x3e\x5a\xc0\x12\xef\x76\x68\xce\xa7\x43\x99\xc6\xd6\xa3\xe5\x18\x16\xa3\xe5\x98\xdf\xd5\x2a\xd5\x65\xa6\xa1\xcc\xc4\x36\xb6\x3d\x1d\x06\x68\x0e\x31\x66\x8f\xb6\x2d\x3f\x70\x3e\x1f\x96\x17\x43\x6b\xeb\x0a\xe5\x90\x96\x94\x06\x73\x25\x44\x2d\xeb\x63\x04\xde\x9a\x33\x77\xa4\xda\xd1\x47\xd0\xcd\x8e\x48\x28\x1e\x1a\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\x8e\xd9\x7d\x79\x92\x72\x28\x35\x1f\x06\xe8\xb5\x49\x55\x67\x17\xe6\x98\xcd\xe1\xde\xb6\x11\x5a\x38\x9b\x20\x4e\xd7\xfe\x72\xb7\x2b\x9e\xe5\x52\x63\x39\x81\x73\x90\x9b\xe1\xc6\xb6\x6f\x6d\xbb\x79\x3b\x5a\x8e\x6d\x3b\x42\xb7\x20\x2b\xc0\x78\x7f\x96\x38\xaf\x39\x81\xc4\xf9\x96\x53\x48\x9c\x0f\xbc\x03\x89\xf3\x9e\xf7\x21\x71\xbe\xe1\xa4\x07\x89\xf3\x13\x6f\xcb\x2f\x3f\xf0\x9e\xfc\x74\xc3\x09\xed\x97\x30\x52\x92\xa3\x21\x22\x79\x21\x30\x47\x41\xd2\xd5\x20\xb9\x08\x05\x21\x8e\x70\x6e\xfd\x41\x4b\xe3\xc7\xcc\xe8\xa3\x29\x10\xde\x4f\x7d\xb9\x7c\xb9\x52\xaa\xe9\xee\x0d\xc6\xa1\x47\x98\xf7\x10\xf0\xd7\x09\x4d\xb5\x69\xa4\x6d\x1b\x13\xc9\xef\xfd\xf4\x8e\x73\xf9\x7f\xa8\x53\x58\x5d\xa1\x44\x2c\xe7\xb6\x2d\xff\x97\x0b\xc8\x77\x96\x2d\x07\xb2\x4a\x06\x0e\x16\x46\xb8\x0e\xc7\x2c\x14\x8e\x59\xe4\x38\x86\x1e\xe1\x7a\x63\x5d\xb8\x3f\xb0\x96\x3b\x81\x6f\x0a\xf5\xaa\x86\xe4\x32\x29\x9b\x9d\x23\x3a\x20\x87\x3f\x03\x0d\x7f\xda\x6e\x19\xd6\x09\x44\x5d\x3c\xac\x40\x9d\xa0\x54\xfd\x5c\xa3\x37\x44\x20\xc0\x78\xcf\x8e\x34\x57\x66\xcf\x2b\x65\x3e\x68\xfc\x2c\xb9\x61\x90\xbc\xe2\x00\xda\x92\x66\x92\x9d\x3a\x22\x12\xaa\x58\xc2\xc5\xb6\xfd\x27\xb0\x85\x40\x94\x60\x64\xcd\x82\x8d\x85\xbf\x1a\x6f\xe8\xee\x49\xd6\x1a\x72\x1c\x72\x44\x4a\x3c\x85\x0b\x8e\xd5\x44\xc3\x70\xbd\x5c\x36\x39\x17\xac\xe6\xec\x66\x84\x12\x3d\xa0\x2b\x32\x6d\xb5\x42\x09\x9e\x46\x09\xd4\xd3\x28\xa1\x4d\x24\x4a\xa8\x1d\xf4\x59\xec\xcc\xcd\xa2\xd5\x7e\x3f\x5a\xa2\x60\x8e\x64\xe7\x21\xe5\x11\x4a\xa1\xe9\x62\x90\xe4\x06\x04\xb8\x38\x70\x0d\xdf\x64\x36\x87\x2e\xc1\xdb\xbd\xa4\x13\x17\x22\xb5\x82\xb0\x11\xef\x76\x56\x62\x1e\x8f\x48\x36\xeb\x85\x32\x0a\x8b\x62\x4d\xb6\xe5\xd6\x96\x05\xd9\x66\x29\xa6\x46\x95\xb6\x6d\x64\xec\x3e\x54\x1a\xd6\x3b\x86\x78\x8c\x78\x60\x16\x46\xf2\xb8\xd0\x26\xac\x4d\xf6\x63\xb9\x7f\xbe\x62\x61\x8a\xf3\xb0\x15\xe1\xfa\x5e\x28\x55\x05\x6b\x22\x62\x0b\x0c\xd3\x28\x9c\x07\x8b\x75\x96\x46\x65\xda\x43\x1c\xa4\xe6\xbd\x23\xdf\x55\x67\x58\x9a\x01\x98\xf6\x53\x24\xc5\xc9\x13\x99\x13\xb5\x39\xd5\x97\x99\xc8\x4a\xfc\x54\x07\xd6\x51\xc8\x85\x93\x46\x9a\xd7\x90\x27\x20\x46\x01\x0f\xcd\x89\xc6\x79\x45\xaa\x82\x13\xa5\x55\xcf\xdf\xcd\xbf\x50\xb8\xf9\xff\xae\xf9\xa3\x25\x7f\xe9\x87\x7f\x49\x1b\xd3\x28\xdc\x88\x38\x35\x64\x7a\x23\x8d\x1a\xab\x38\xb8\x0f\xd2\x60\x23\x1a\x7a\xc9\x71\x99\x5e\x6f\x1f\x68\x4e\x34\x2e\x17\x88\x52\x7c\x96\xa2\xd4\xf9\x16\xb6\x9a\xb5\x61\x8a\x54\xda\xab\xc3\x4a\x19\xa5\x1a\xab\xc8\x1a\xda\xc7\x27\x28\x47\xb0\xa3\xce\x78\x44\x7a\x4a\x9f\xa8\xf1\x6f\x5c\x46\xbe\x05\xc1\xda\x3e\x81\x3d\x04\xea\x3c\xbd\xb8\x19\x58\xaf\x18\x09\xbe\xcd\xd2\x6a\xd9\x99\x34\x3b\x02\x2d\xb5\xcf\x3b\x7d\xd6\x51\x33\x71\x02\xfa\x4b\x7e\x91\x62\x64\xad\xc3\x64\x1a\xad\xe4\x06\x4d\x94\x9d\xa7\x16\x84\x14\x24\x99\x36\x5c\x0c\x47\xf1\xd8\xb6\x05\xf2\x28\x46\x21\xc4\x4a\x2f\x5e\x0f\xb6\x64\xce\x91\x18\x73\x89\x42\x25\xe7\x49\x19\xe9\x52\xf0\x28\xf3\x24\xe3\xd8\x3e\x42\x18\x15\xd1\x42\xde\x35\x3a\xc0\xa8\xe9\x3e\xc5\x01\x65\x88\xb0\x85\xc2\x61\xac\xaa\x32\x34\x17\x23\x6a\x27\x10\x3a\x60\x84\x2a\x5d\xd4\x13\xf8\xa0\xba\xc2\x86\xbe\x6b\x22\x51\x26\xef\x52\x5c\x32\xc5\x0c\x6d\x5b\x19\xa0\x1f\xf3\xb0\x71\xcb\x62\x8d\x20\x9c\x46\x71\x2c\x94\x16\x70\x13\x4d\xfd\x13\x7c\x6c\xbb\xff\xa5\xcd\xe5\x3d\xb1\xb9\x14\x04\xeb\x13\xd6\x57\x50\xeb\x69\x61\x4d\x3e\xa3\x1d\x6a\x18\x82\xb6\x01\xff\xa4\x43\xca\xf3\x3b\x1a\x3b\xd3\x68\xf5\xf8\x53\x90\xde\x05\xe1\xa1\x6d\xb3\xd6\x68\xc7\xc6\x7c\xc0\xe7\x01\x8a\x72\xe3\xa5\x84\xcb\x4c\x3e\x86\x35\x97\x44\xb2\x8f\x61\x79\x64\xcf\x73\x45\x87\xc5\xf0\xe8\x38\x33\x5f\x9b\x2a\x12\xc7\xb9\x0f\x42\x84\x72\x4e\x76\x39\xf4\x59\x88\x96\xe0\x63\x7c\xbe\x06\xff\x3c\xc1\x30\xe7\x44\xb1\x06\xeb\xcb\xc4\xb6\x93\xcb\x75\x6b\x6a\xdb\x68\xce\xcf\x09\xac\x5b\x7c\x7a\x4e\x20\x51\x3f\xf8\x62\x7a\x7e\xde\xb8\x72\x2f\xf0\x5a\x2e\x51\x34\x8c\x46\xc9\x98\x47\xa3\xf5\x98\x19\xef\x0a\x99\x20\x33\xcf\x65\xc1\x79\xb6\x2a\x91\xda\x2f\x6d\x8f\x91\xb6\x07\xa4\x43\x18\xe9\x10\x20\x1d\xca\x48\x47\x89\x22\x8f\xf0\xc2\x9f\x9b\xe1\x7a\x7f\x8a\x6c\x52\x23\x1e\x94\xac\xde\xfd\xa3\x29\x54\xf3\xec\x5f\x91\xd2\x44\x92\x7c\x22\x23\x39\xfb\xfe\x89\x59\x5e\xf2\x7c\x6e\xd7\xc3\x88\x85\x68\x0d\x11\xbe\x58\x5e\x25\x17\x38\x1d\x25\xad\xd6\x98\x8b\x9c\x5d\xf8\xc2\x4c\x9c\xc4\x55\xa4\xe3\x9a\xc1\x77\x88\x19\x7c\xdb\xfb\x02\x97\x5b\xe2\xac\x22\xf0\x75\x5d\x09\xac\xe5\x8c\xc8\x3d\x14\xa2\x75\x3e\x1d\x53\x1e\x20\x1f\x96\xca\x82\x44\xd8\x76\xd4\xe4\x91\x9e\xc3\x8b\xe5\xd5\xf4\x02\x07\x73\x84\x12\xbe\x1e\x4d\x5b\xad\x31\x6e\xf2\x04\xe7\x54\xbc\x58\x26\xa2\x91\x67\x9c\xb6\x5a\x2a\xaf\xd8\xed\xa6\x72\x87\xac\xb1\x6d\xaf\x47\xd3\x31\xe7\x3c\xb7\x4b\x91\xdf\x76\x3b\xd7\xcc\x48\x53\xd8\xf6\x39\xd9\x57\xa7\xc5\x65\xa4\xe3\x66\xd3\x23\xa7\xe5\x24\x17\xde\x35\x5c\xb8\x97\xef\x08\xaa\x69\x2e\x35\x4d\x92\x0f\xef\x74\x4f\xe3\x01\x35\x21\x9c\x70\x2e\x60\xcd\xa9\xfc\x59\xf2\xb6\xfc\x99\xf2\x8e\xfc\x99\xf3\x9e\xfc\x99\xf1\xae\xb2\x52\x9e\xc3\x1d\x4f\x77\x3b\xff\xec\x78\x7e\x7d\x58\x15\x7b\xee\x1e\x36\xf0\x28\x77\x1b\x86\x05\x0f\xd1\xa3\x64\xd3\x63\xe4\xc3\x0a\xda\x18\x26\x3c\x42\x8b\x7c\xde\x1f\xb8\x0b\xd7\x3c\x19\xde\xa1\x14\x26\x98\xad\xd5\x83\x8b\xcd\xce\xba\x98\x5c\x3d\x5c\x3c\x98\x39\x9d\xed\x76\x0f\x72\x4e\x25\x72\x47\x1b\x7e\x8b\xee\xf9\x62\xf4\x30\x86\x07\x78\xc4\x20\xb0\xcc\x93\xe0\xeb\xd1\xc3\x98\x6f\xce\xd4\xaa\x04\x73\xb4\xc1\x86\x6f\x16\x86\x51\xce\x64\x49\x4d\x57\x73\xc3\xdd\x8c\x1b\xbe\xd7\xef\xbd\xec\xfd\x21\xe3\x96\xaf\xb5\x95\xff\xbd\x76\x04\x90\x95\x4e\xb3\xd5\x27\xf9\x44\x0c\xcf\x09\x5b\xee\x76\xd3\xe1\x94\x5d\xeb\xb5\xac\x6e\x6d\xe8\x74\x59\xa7\x0b\xdd\x0e\xeb\x76\xc0\xf3\x98\xe7\xc9\x55\x3d\x62\x25\xb3\x55\x6d\xb7\xb3\xbd\x4e\xf5\xb2\x7a\x5e\xb1\xaa\xa7\x50\x96\x0f\x09\xac\xf1\x56\xe1\x69\x63\xf3\x24\x09\x65\xb9\xb3\x97\x12\xc2\x45\x68\x99\x4f\xfb\x8c\xaf\x87\xf3\x73\xc2\x5c\xb8\xe3\x6b\xd9\x79\x22\x37\xbe\x7f\x49\xb1\xda\xca\x17\x0a\x4b\xcd\xe4\x6c\x4f\xf1\x36\xe1\xd3\xd1\x6c\x0c\xb3\x16\xbf\x3b\xbb\x8d\x85\xff\x49\x52\xd3\xf2\x0d\xd6\xc3\xd9\xa5\xcb\xe6\x97\x7c\x76\x4c\x48\xdf\x88\xd9\x7a\xaa\xfc\x29\xc4\xfd\x2a\x7d\x6c\xf8\x12\xed\x37\x1e\x82\xf4\xae\x11\x46\x8d\x20\x0c\xd2\xc0\x5f\xe6\x94\x95\x6a\x76\x3d\x9c\x5d\x71\x97\xcd\xaf\x66\x17\xb2\x7a\xac\x3b\x60\xdb\x28\xe1\x29\x4a\x40\xf7\x02\x96\x38\xc7\x76\x49\xdd\x54\xb7\xdb\xac\xdd\x2e\x26\xf9\x24\x81\xd4\x27\xe6\xe8\x0c\xcc\xd1\x51\xd4\x4a\xb2\x12\xd3\x40\x52\x2a\x27\x40\x8b\x82\xa9\x59\xfb\x32\xc5\xb6\x6b\x24\xd0\x28\xe5\xc2\x99\x46\x61\x92\xc6\xeb\x69\x1a\xc5\x78\xb7\x4b\x9b\x5c\x93\x3e\xb6\xdd\x0c\x51\x49\x6c\x82\x77\x3b\x94\x1a\x08\x8a\x41\x2e\x9f\x6d\x1b\x67\x0e\x94\xf2\x74\x14\x8c\x65\x1b\x79\x8e\xb2\x48\x76\xa8\x2a\x64\x69\x85\x10\x1a\x30\x6f\x90\x23\xef\xce\x49\xe2\xac\xd3\x39\x0d\x17\x0a\x79\x90\x12\x02\x63\xa4\xf9\xf1\x4e\x87\x75\x24\xe5\xda\xf9\x3a\x1a\x2b\xdb\xc5\x7d\x03\xb0\xbd\x9e\xdc\xc4\xa3\xb1\xb6\xa9\x07\x9f\x6f\xf7\x87\x12\xc2\xd8\x90\x47\x92\xba\x69\xf8\xb8\x00\x29\x21\x1f\x8d\x21\xe0\xee\x45\x70\x99\x2a\xef\x9f\x70\x14\x8c\xb9\xe5\x8f\xac\x56\xd0\xb2\xc6\xd6\x99\x2f\x19\xb1\x42\x8a\xf1\x1a\x7c\x65\xa4\x9a\xcb\xb5\x5e\x23\xab\x95\xb9\xe7\x80\x85\x5b\x16\xb6\x72\x19\x97\x2c\x8b\x84\x12\x51\x17\x33\x92\x0b\xa8\x6e\x83\x70\x56\x26\x57\x32\x5a\xbf\x20\x56\x22\xcd\x65\xe4\xa8\x11\x88\xc4\x96\x07\x96\xe5\x31\xf7\xe5\x8e\x98\xfa\x29\x3a\xcc\x8f\x2b\x6e\x25\x65\xca\x70\x3d\x4c\x50\x0a\x99\xeb\x13\xc4\x98\x05\x4a\x3e\x27\x0a\x01\x5c\x75\x2f\xd9\x36\x5a\x97\x24\x72\xe5\x4f\xb0\x96\x6b\x68\x4e\x47\x8f\x79\xbd\x62\x93\x9c\x54\x7a\x74\x8c\xd0\x59\x9f\x8d\x8c\xbb\xfa\xe8\x2f\x2c\xb9\xa4\xd6\x8b\x6c\x04\x16\xe7\x71\x8d\xa8\x23\x1f\xe1\x1e\xe1\x27\x0f\x94\xc4\xcf\xd9\x80\x0a\xbf\x98\xa1\xf5\x43\x2e\xc4\x62\x99\x7f\xd3\xd0\x7a\xbb\x5e\x2e\x2d\x66\x25\xaa\x2f\x05\xff\x17\x1d\x6c\xe2\x92\x40\x40\x72\xe9\x46\x18\x10\xe3\xed\x7e\x8f\x52\x23\x8d\x90\x00\x32\xc4\x78\x18\xb1\x60\x28\x4f\x1e\xb3\xde\x65\xd2\x10\xe4\x2b\x3a\x01\xd7\x4a\x30\x53\xb5\x82\x42\x0c\x4b\x53\xc0\xfc\xf2\x31\xcc\xb8\xa3\xce\x09\xbd\xce\x76\x9f\x33\xab\x4f\x13\x31\x99\x4c\x2c\xf3\x89\xeb\xc3\x39\xc9\xa4\x63\x9d\xaf\x23\xcd\x07\x03\xec\xcc\xd5\x3a\x0e\x32\x61\x3d\x31\x08\x45\xd2\x0f\x92\x4a\x90\x14\x65\xc2\x05\xea\xf5\xe5\xd6\x15\xa8\xdf\x95\x14\x92\x40\x7d\x4f\x62\x10\xc9\x2f\xb5\x25\x0e\x11\xa8\xdb\x97\xd8\x43\xa0\x41\x07\x3b\x73\x3f\x49\xff\x2a\x1e\xe1\x4e\x61\xa6\x01\x86\x15\x9f\x0f\xad\x49\x22\x17\x27\xf8\x4d\x58\x70\x5f\xe7\x19\x00\x21\x9f\x49\x1c\x25\x99\xd0\xd7\x96\xe4\x78\x70\xe1\xad\x1c\x8c\xc2\xb1\xa2\xc4\x63\x2e\x9c\xc9\xfc\x22\xbe\x88\x79\xec\x84\x12\xb9\xc7\xce\xa7\x92\x16\x2a\x2e\x9f\xd5\xed\x42\xa4\x2f\x0b\x68\x5b\x15\x1a\xad\x61\xa9\x5b\x96\xe3\x28\x1b\xab\x4b\x96\x08\x09\x98\x42\x0a\xd6\x24\xb0\x30\x08\x67\x92\xf2\x54\xfe\x04\x3c\xd4\x8e\xd4\xf2\x65\x9e\x79\x50\x0b\x67\xb2\xcc\x9f\x47\xab\x31\x77\x41\x8b\xca\x62\xdb\x4e\x50\x0c\x6b\x10\xa3\xe5\x58\x1e\xce\xe2\x44\x07\x68\x5a\x92\x8a\x6f\x95\x71\x36\xab\x75\x3b\xba\x33\xee\x66\x18\xd4\xd8\x03\xb9\x60\x72\x0a\xc2\x8b\x90\x87\x4e\x88\x43\x27\xe6\x4d\x17\x42\x67\x65\xdb\x28\x74\x56\x3c\x74\x56\x4e\x98\x23\x0e\xc3\x80\xc4\xa3\xd0\x09\xc6\x67\xaa\xdb\xc7\xfd\xdd\x9b\x6c\xec\xf0\x04\xc6\xa5\xe6\x43\x7e\x8f\x24\x88\x91\x2b\x14\xe6\x3e\x28\x4e\x08\x91\x6c\xf2\x2c\x6b\x48\x2d\x96\x13\x8c\xc1\x74\x2c\xb2\x6d\x14\x39\x21\x0f\x30\x04\xca\x61\x74\xc5\x23\x0c\xb1\xec\x88\x64\x6a\x91\x7a\x0a\x54\xca\x32\x4f\x59\xaa\x3c\xa3\xd5\xf8\xfc\x7c\x9f\x89\xcb\xc3\x3d\xcc\xa3\xf8\xda\x9f\xde\x55\xba\x99\x77\xb0\x70\x21\x85\x90\x47\x92\x35\x3c\x64\x06\xeb\x79\x98\x36\x96\x9b\x69\x18\x3b\x21\xd3\x8e\x66\xf3\x0b\x45\xee\x84\x28\x76\x36\x10\x3b\x9f\x94\xcb\x10\xbe\x88\x6d\x3b\x76\xe2\x0b\x2c\x77\xde\x6a\x0f\x77\x7e\xc2\x8e\xcf\x65\xb3\x79\x8f\x8a\x29\x13\x78\xbf\xc7\x30\xb7\xed\xb8\xb2\xdc\xe6\x18\x9c\x90\xe3\xe6\xc5\x47\xab\xb1\x2c\x3e\x55\xde\x1b\x47\x12\x4f\x23\x77\x83\x88\xdf\xab\x53\x94\x33\x95\xc3\xc8\xd9\xf0\x98\x21\xb5\xcc\x11\xdf\x06\x2c\x90\x27\x4b\x09\x45\x3f\xb1\x14\x36\x2c\x86\x15\x53\xbb\x68\x09\x61\x36\x0b\xb1\x8a\x8e\x20\xf7\x87\x72\xe9\x9c\xcc\xe5\x0a\x84\x6a\x4b\x85\xf2\x51\x6e\x94\x56\x0b\xf4\xd1\x94\x0b\xa9\x4e\x65\x30\xe6\x11\xc6\x20\xf6\xb0\x10\xe9\x75\x98\xc6\x8f\xec\x1e\x12\x91\x7e\x48\xe3\x28\x5c\x1c\xf5\x79\xad\x1e\x0e\x0e\x9b\x9e\xf4\x94\xdf\x69\x0f\x64\xfd\x9a\x7b\x72\xe7\x5b\x75\x8f\x2b\x1e\x14\x07\x7e\x79\x93\x4f\x60\x1c\xdc\x26\xcb\x8b\xd4\xb6\x53\xb9\x52\xa9\x44\x74\x15\xd7\xcc\x49\x9a\x79\x02\x4e\x96\x3c\xe5\xe9\x30\xcd\x57\x3d\x75\x26\x73\x3c\x5c\x22\x17\xac\x4f\xe2\x51\xa2\x2e\x31\x4c\x9d\x4f\x4c\x0b\x76\xb3\xf7\x0d\x1b\xa5\x72\x47\x38\x9b\x31\x66\x28\xeb\x7a\xc6\xf0\x22\xe5\xff\x04\xf1\xd0\x32\x66\x38\x56\x5e\x1c\x9a\xca\x5d\x0a\xa6\x8a\x68\x92\x18\x81\x78\x8c\x10\x0f\x08\x6d\x33\x42\xdb\x40\x3a\x03\x46\x3a\x03\x68\x7b\xac\xed\x19\x96\xa0\xdb\x67\xdd\x3e\xf4\xfa\xac\xd7\x87\x7e\x97\xf5\xbb\xd0\xf7\x58\xdf\x83\x41\x87\x0d\x3a\x30\xe8\xb3\x41\x1f\x06\x03\x36\x18\xec\xc7\xd0\xfd\x4a\x69\x81\x04\xf1\xa1\x81\xd4\x0b\x91\xfe\x24\xfc\x4f\x0a\xf6\xb7\xfb\x1a\xf4\xf7\x49\x3d\xe8\x97\x3c\x87\x04\xfd\x1e\x31\xa0\x5f\x42\xf6\x39\x5f\xa3\xae\xe2\x1b\x50\x0f\xc3\x1d\x77\x25\xac\x3f\x46\x56\x72\xab\xe9\x6d\xa5\x3d\x2e\xee\xf1\xbe\x8c\x04\xcc\x1e\xf0\xf9\x68\xbc\x87\x4d\x3d\xd1\x39\x47\xc2\xf1\x6b\xbd\x26\xc4\xc8\x95\x8c\x74\xba\xc7\x78\x7f\x76\x5f\xa2\x72\xaa\xe7\x2b\x27\xd0\x36\xfa\x7c\x69\x40\x96\x23\x8e\x74\x44\xc6\xa7\x0f\x75\x5e\x66\x2f\x77\x37\xab\xc3\xdc\x45\xb5\xf1\x30\x1e\x91\x31\x4f\xf5\xc6\xf2\x35\xa3\x38\x12\x90\x8e\xf1\x49\x40\x9b\xca\x23\xaa\xb2\x97\xc6\x58\x8c\x3e\xd5\x63\x14\x05\x06\xf9\xd7\xcc\xd9\xd7\x57\xfe\xf1\x53\x81\x52\x49\x5f\x36\x9b\xff\x2a\xc9\xfe\xaf\xc4\x81\x41\xa6\x7b\x9f\xd7\xe3\xc0\x79\x2d\x0e\xbc\x6b\xb5\x2a\x38\xaf\x82\xec\x02\x10\xa3\xf5\x01\xb2\x8b\xd1\xbc\x8c\xec\x6a\xa6\x40\x52\xf7\x51\xa1\x56\x68\x12\xb3\x5f\xe5\xc7\x4c\x22\x22\x69\xbf\x78\xb8\x42\xd3\x0c\x3e\x62\x47\xd7\x84\x04\x66\xb1\x6d\x2f\x51\x06\x32\x02\x6c\xdb\x39\xde\x33\x49\x35\x8b\xfb\x27\x1b\xbd\xf3\x93\x9a\x16\x15\xa0\x3f\x0d\xa9\x23\x1e\x22\x25\xf9\x68\xba\x95\xba\xa3\xe1\x4a\xd1\x70\x22\x55\x2a\x77\x16\x8d\xe4\x14\x6b\x35\x23\xac\xe7\x49\x1a\xc5\x82\xad\x2a\xf0\xa2\x02\x27\xda\x7d\xd6\xee\x43\x87\xb2\x0e\x35\x70\xc2\x23\xcc\x23\x9a\x86\xd7\x70\x42\xc2\x86\x23\xf9\x59\x2d\x6c\xf0\x8c\x2c\xad\x47\x33\x72\xd0\xc0\x04\x05\x34\x7c\x0d\x34\x2a\x40\x41\x02\x89\xa5\x01\x1a\x12\x28\xf4\x3a\x9a\x1c\xec\xf7\x34\x39\x48\x68\x07\x2b\x3a\xd0\x3b\x29\x6e\x82\x15\x28\xc1\x90\x9e\xa7\x05\x8f\x47\x62\x0c\xb7\x7c\x01\x13\xbe\x19\x2a\x8d\x1c\xb3\xfc\xd9\xcc\x82\x07\x7e\x6b\xdb\xb7\xa5\x8d\x74\x2d\x39\xc5\x0f\xc7\x5c\x03\x7f\x50\x3e\xa6\xe8\x01\x04\x58\x7a\x1f\x58\x3a\x02\xc2\x9d\xaf\xe1\x78\xcd\x11\x47\x92\x01\x57\x2a\x21\x89\x3c\xb4\xe5\x90\x5c\x71\xcd\x71\xb8\x4c\xe0\x3d\x53\xaa\xc2\xfa\xf2\x8d\xac\xf8\x50\x1f\x0a\x76\xb2\x0e\x39\x96\x13\x75\xd4\x97\x51\x5b\xac\xa2\x94\x8e\x9f\x2e\x01\xb1\x29\x83\xf7\xf5\x4a\xb5\xc6\xad\x6d\xa3\xc7\xdd\xee\xc1\x31\x04\x95\x6d\x37\xa7\x15\x9d\x34\x92\x50\xfa\x16\x67\xd6\xa4\x08\x3b\xa1\xf8\x9c\x22\x79\xa8\xb1\x9e\xe5\x77\x0a\x90\xdf\xc2\x67\xfe\x6e\x34\x19\xa3\xc7\xe1\x76\xcf\xce\x5d\x20\xb8\xc9\xdf\xc1\x0b\x5e\xad\xee\x9d\x3a\x34\x44\x39\x79\x7e\xe2\x73\x54\x01\xe3\xaa\x1e\xa4\x00\x06\xbc\xe7\xcd\x47\xdb\xae\x16\x2e\x30\xbd\x6e\x31\xe5\xdd\x8b\xf4\xfc\xfc\x02\x0b\xd9\x70\x5a\x90\x3e\x4d\xa1\x9a\x39\x77\x15\xec\xf9\xb4\xdb\x21\x74\xcb\xd3\x52\x5d\x86\x06\x49\xe1\x56\x82\x69\x2d\x3f\xb8\x53\x43\x5d\x40\x0a\xb7\x39\xbc\xaa\x00\xb4\x0d\x84\xa3\xc9\x18\x42\x0c\xa1\x1c\x7d\x09\xbf\x3c\xc0\x43\x59\x98\xc3\x6f\x31\xa0\x17\xbb\xdd\x7b\xc9\x6d\x7f\x40\xd9\xce\xc3\xf0\x01\xa9\x8d\x87\x61\x63\xdb\x1f\xb4\xbe\x19\x63\x40\xef\x77\xbb\xcf\x58\xa6\x4c\x30\x3c\xda\xf6\x83\xf6\xd0\xcc\x21\x97\x79\xd7\xe2\xc5\x5b\x7e\xef\x54\x01\x39\x4a\x41\xc0\x06\x26\x18\x22\x54\x3e\x14\x2b\x0c\xbe\xf3\xf6\xfa\xfa\x15\x6f\x66\xb2\xe4\xc6\x0c\xc9\x01\xc3\xf5\x48\x8c\xf9\x2d\x84\x28\x74\xbe\x6d\x85\xce\x4f\xad\xd0\x79\xfd\x0c\xdd\x36\xf9\x02\xc3\x35\x86\xc7\xdd\xee\xde\xc9\x69\x37\x59\x04\x36\x18\x6e\x2b\xb0\x87\xf4\x19\x21\x7d\x20\xb4\xc3\x08\xed\x18\x18\xd4\xa3\xac\x47\xa1\xd7\x61\xbd\x4e\x06\x83\x5c\xe6\xb9\xe0\x75\x99\xd7\x35\x90\xa8\xdf\x63\xfd\x5e\x01\x8f\xe8\x97\xd4\x50\xfd\x27\xd4\x50\x7d\x46\x24\x0b\xdd\x3d\x92\x93\x9e\xe2\x72\xb5\xac\xe2\x09\xc3\xc6\x00\x6f\x95\x68\x49\x0c\x0b\x5b\x10\x17\x02\x8c\x99\x52\xe4\x07\x7a\x0e\x7a\x8c\x90\x5e\x41\x6f\x75\xbe\x34\x86\xc1\x13\x63\x50\x86\x44\x4a\xe8\x22\xab\x3a\x92\xc6\xd5\x8e\xa4\xa7\x84\xfa\xaf\xfc\xb4\x64\x50\x25\x77\xc5\xc7\xe0\x5e\x40\x70\xf8\x21\x8d\xde\x7c\x78\xa7\x25\x09\x10\xd5\x12\x65\x57\x83\xa1\x60\x96\x6b\xb5\x44\x99\x69\x8e\x6b\x8c\x53\x2c\xb7\xdd\xef\x9e\xbb\xde\x39\xed\x7e\x74\x3d\xe6\xf6\x58\x7b\xe0\x0c\x06\x83\x7f\xb6\x9a\x3c\xd0\x20\x48\x9e\x22\xd9\x03\x74\xde\x75\x4b\x7f\x8a\x20\xc6\xbb\x5d\xb3\x5a\xed\x61\xa1\xb7\xfe\x5b\x95\x71\x58\xce\x33\x47\xcd\x20\x79\x1d\x84\x41\x2a\x50\x58\x00\x3a\x9c\xa9\xa0\x6f\xfc\x70\x91\x89\x95\xdf\x84\x1b\x7f\x19\xcc\x1a\x69\x70\x9f\xeb\xe5\x4b\x11\x5c\x20\xe5\x6a\xaa\x7e\xf8\xf8\xf2\xf5\x7a\xb9\xfc\x59\xbb\x42\xc7\x79\xe2\xf7\xc1\x72\x19\x24\x62\x1a\x85\xb3\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\x6f\x13\x24\x29\x03\x2d\x89\x09\x86\xe7\x3d\x76\xde\xc1\x2d\xeb\xdc\x6a\x45\x28\x6f\x22\x0a\xd3\x3b\x84\x5b\xe4\xf0\x83\x9a\x00\x8c\x5b\xd6\xc7\x72\xea\xdf\x47\xeb\x38\x51\xc9\xac\x52\x4b\x10\xae\x53\x51\xf3\xe1\x43\xd6\x79\xdc\xb2\x1c\xab\x85\xe2\xab\xc1\x60\x18\xab\xe5\x8d\x50\x2c\x53\xff\xd9\xda\xb3\x60\x0f\x5b\x75\x50\xe5\xae\xfb\x4a\x71\x6d\x26\xeb\xeb\xb4\x9f\xb0\x74\xce\xc4\x6e\x4d\xce\x85\x6d\x17\x56\x04\xea\xcd\x78\x9d\xaa\xd7\x63\x8d\xc0\x9b\x5c\x75\x7d\x17\x84\x69\xa1\xb3\x0e\x51\x26\x4a\x2d\xaa\x13\x5a\xc5\xde\x69\x33\xd2\x69\x6b\xe2\x47\x8e\xe4\xab\x14\xed\xda\x48\x48\x89\x0b\x6b\x7a\x61\xac\x3d\xfc\xe5\xb2\x71\x2f\xd2\xbb\x68\xd6\x88\xc2\x46\xc3\x6a\x89\x23\x1d\x7a\xf7\x4b\x3a\x74\xea\x9e\x3e\xf8\xda\xfe\x27\x5f\x82\x1a\x6b\xa9\x6a\x55\xe4\x89\xaa\x94\x75\x97\x06\xb5\x99\xc8\xb6\xf7\x84\x29\x91\x55\xc2\x55\x50\x35\xc0\x83\x20\x79\x9f\x01\x8e\x77\x73\x58\x99\xe4\x37\xc9\x75\x6e\x69\x04\x69\xf4\x5d\x34\xf5\x97\xc2\x80\x94\x4c\x4a\x09\xc6\x38\xc7\xca\xc2\x74\x81\x65\xcc\xff\x7a\xa7\x95\xb6\xae\xe1\x41\x89\xdb\x31\x94\xa6\x7b\xd2\x8c\x3e\x93\xaa\x0b\xac\x04\x4d\x73\xed\xcc\x9f\x11\x05\x3e\x24\x5c\xd2\xf0\xb0\xe6\x81\x33\x87\x25\x77\x2f\x72\x71\xcf\xf2\x02\xaf\x33\xcb\x41\x9f\x27\xa3\x65\xab\x35\x56\xd4\x9d\x89\xcf\x55\x55\x3e\xbb\x1d\x46\xdc\x0e\x10\xd7\x63\xc4\xf5\x80\xb8\x7d\x46\x5c\xb9\xbb\x7a\x27\xb5\xac\x19\xbd\xdc\xcd\xd4\x71\x99\x92\x55\xd2\xcd\xbe\x11\xa3\x3e\x69\xec\x6c\xcc\x9c\x5f\x1b\x33\xe7\x6f\x8d\x99\xf3\x07\x63\xe6\xfc\xde\x98\x39\x7f\x03\x0b\xbe\x1a\xc6\xec\x7e\xa8\x8d\x97\x95\x0d\x33\xdf\xee\x71\xad\x35\x33\xdc\xf2\x55\x8d\x4d\xf4\x84\x97\xe8\x84\xdd\xae\x4c\x35\xc8\xef\x85\x0d\xf4\xaa\xb0\x81\x9e\x73\x84\xa6\xbc\x79\x67\xdb\x8b\x92\x19\xf4\x62\xb4\x1c\xe3\xe1\x82\xad\xf1\x68\x39\x86\x19\x97\x24\xdb\xd0\xd7\x36\xcd\x9b\x13\xa6\xbd\x7e\x9d\x69\xef\xc2\xb6\x23\xb4\x80\x25\x68\x03\xde\x1f\x30\xdc\x8e\x96\xe3\x26\x9f\xdb\x76\xa0\xec\x77\x67\x8a\x68\x9a\x64\x89\x48\x99\x4b\xcf\xf1\xfe\x2c\x76\xa6\x51\x2c\x78\x08\xff\x5f\xd8\xf6\x1a\xaa\x46\x39\xbd\x64\xca\x58\x4d\xc1\x18\xeb\xa1\xde\x49\x95\xac\xd6\x80\xdc\xfb\xe9\xf4\xee\x69\xdd\x20\x7f\xee\x3c\x57\x91\xad\xac\xe7\xce\x73\x6b\x24\xc6\x28\xcd\x0c\x11\xc3\x8a\x52\x22\x1d\xc5\x63\xde\x24\xd0\x3c\xce\x18\xe0\x6d\xe6\xc5\x50\xb1\x72\x92\x3d\xfc\x12\x35\x42\xdb\x4f\x40\x12\x63\x21\xda\x7b\x9a\x0e\xd1\x7e\xc8\x25\x49\x92\xc1\x0c\x9e\xd9\xfe\x92\x3e\x51\xca\x03\xc3\x2c\xca\xb9\x51\xdc\x22\xa1\xae\xb2\x13\x29\xa9\x51\x61\xc9\x9b\x41\x85\x24\xd0\xc8\x5a\xce\x52\x2e\x34\x12\x9f\xc5\xf4\x38\x12\xd3\xa8\x88\x05\xeb\x2c\xe2\x68\xbd\x4a\xf8\xd6\x67\x96\x67\xed\x25\xcf\x6c\x79\x12\xcd\x58\x96\x13\x8b\xd5\xd2\x9f\x0a\x24\xc0\xfa\xbb\x4b\xff\x4a\x47\x98\xa9\xa9\xee\x39\x1a\x32\xfc\x5c\x11\x08\xb2\xbd\xb3\xe3\x66\x73\x5e\xeb\x84\xc9\xbb\x9e\x10\xcb\xbf\xcd\x60\x60\x81\x33\xa8\x8a\x6e\x94\x05\xb4\xb4\x7c\x15\xed\x68\xe4\x8e\x6d\xdb\xba\xd5\xcf\x64\xbc\x47\x27\xe9\xd2\xb9\xee\xe4\x8c\xfb\x12\xc4\xdd\xd5\x4d\x59\xca\xb7\x85\xd1\xfd\x68\x36\xae\xe9\xb8\xb7\x07\xaf\xc9\xad\x6c\x2f\x61\x0c\x2b\x7e\x37\xac\xad\xab\x49\x20\xe6\xcf\xfd\xe7\x45\xc0\xd4\x53\x93\xa1\x74\x0e\xeb\xe5\x72\x0f\x96\x1a\xb4\x1c\x8d\x50\xc2\xfb\x32\x4b\xb4\xdd\x43\x25\x61\xb4\xae\xeb\x60\xbc\xc7\x10\x8f\x66\x63\x64\x59\x18\x9a\xe9\x1e\x67\x86\x1e\xca\xac\xf3\x6e\xb7\x6b\xae\x54\x70\x40\xb5\xa0\xa6\xa1\xe6\x72\xb7\xab\xb4\xdc\x9c\xea\x41\xdc\xcb\x3d\x34\x9a\x8d\x61\xc3\xe7\x28\x82\x19\xa8\x81\x1f\x86\x23\xaa\x78\x0a\xa5\x7a\x94\x9c\x27\x43\xc9\x0a\x07\xc3\xed\x2c\x0a\x05\x6b\xba\xc6\x66\xf6\xbe\xe2\x7d\xc4\x0e\xbe\x1a\x3f\xa3\x58\x99\x07\xe6\x5f\xc9\x5e\x4e\xf4\x23\xdf\x8c\xdc\x31\x2c\xf8\x66\x44\xc6\x67\x31\xca\x1c\x01\x73\x50\x2d\xe0\x11\x43\x88\x6e\xc4\xe2\xfa\xf3\xaa\x94\x3e\x03\xca\x79\x3a\xac\x15\x85\x2e\x72\x73\x78\x2d\x92\xda\xd7\x88\x2c\xab\x99\xf0\x3e\x93\x39\x67\xfc\x9b\xcb\x08\x75\x21\xd3\x4a\x66\xce\xc5\x5d\x8f\x75\x3d\xc3\xc9\xe5\xb0\xef\xab\xc9\xc4\xba\x5d\x9c\x9d\xb2\x8c\x94\x4b\x79\x41\x46\x0b\xe3\xe5\x67\xdb\x28\x6d\x71\x6b\xa1\xc4\x8c\xc1\x22\x8c\x62\xf1\xd2\x4f\x84\x49\xd6\xd2\xc7\xfb\xf5\x32\x0d\x96\x41\x98\xa5\xde\xab\xd4\x75\x18\x4c\xa3\x59\x96\xb6\x56\x69\x49\x1a\x4c\x3f\x3d\x9a\xa4\x47\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\x97\x4a\x75\xff\x61\x15\x0b\x7f\x26\xc9\xa4\x5a\x24\xa0\xbc\x67\x12\x58\x43\x8e\xf5\x0b\xa9\x86\x92\x7e\xf1\x29\x3c\x72\x17\x16\xbc\xd9\x9c\x49\x94\x38\x83\x3b\x68\xe3\x8b\xc7\xcb\xa5\x36\xb9\x79\xd4\x46\x63\xf2\x71\xc5\x17\xc3\x05\x5a\x8f\x1e\xc7\xf0\x08\x09\x66\xea\xe9\x5e\x1e\xdc\x10\xad\xb0\x6d\xa3\x7b\x9e\xe3\x69\x74\xcf\x57\x23\x7f\x8c\x87\xcd\xe6\x3d\x8b\xd1\x0a\x63\xb8\xb7\xed\xf9\x95\x8b\x37\x5c\x77\x69\x05\x01\x5a\xe5\xe6\x3f\x1b\x98\x9f\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\x63\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\x94\x6f\xf7\x17\xa8\xec\x28\x73\x70\xf2\xe7\x30\xd3\x0d\xdc\x65\xa2\x47\x3e\x1b\x1e\x03\x25\xb1\x67\x6b\x09\x75\x17\x3c\x44\xb2\x50\x3a\xa4\x8c\x60\xb8\xe5\xee\x59\xbd\x77\xe9\xe3\x53\x8e\x9e\x41\xaa\xc9\xe8\xa6\xa5\xa3\x51\xa1\x47\x63\xc5\x72\xc7\x13\x94\x85\x8f\xc4\x17\x77\x57\xb7\x17\xb7\xc6\xb0\x6d\xc3\xd3\xe1\x02\xf9\x68\xc5\xc5\xe8\x76\x8c\x25\x1c\x59\x8d\xc8\x18\xb3\x05\x52\x09\x98\x73\xbe\xdc\xed\x36\x9c\xf3\xcc\xf4\xac\xb1\x29\x0c\x0f\xef\xf9\x63\x66\x22\x70\xd1\x44\x2b\x7e\x6f\x44\x78\xd8\x91\x00\xea\xc2\x34\x11\xa0\x7b\x58\xc0\x4a\x9b\xd8\x43\x7a\xa2\x52\xec\x7c\x73\x73\xfd\xe2\xaf\x7c\x09\xb1\x73\x73\xfd\xf1\x87\x9b\xb7\x7c\x5a\x59\xdd\x36\x23\x5d\xc3\x8f\x65\x6b\xdc\x67\x5e\x1f\xfa\x6d\xd6\x57\x94\xc5\x91\x45\x42\xc5\xe1\x97\xf6\x30\xb2\x42\x3f\x0d\x36\xe2\x3c\xcb\x76\x9e\x46\xe7\x86\xa9\x84\x9c\x74\xcc\x0d\xf9\x95\xa1\x75\x8f\x11\xe5\x7c\xe5\xb9\x5f\x22\x7e\x3a\x4f\x10\x3f\xc6\xee\xde\x23\x5f\xaa\xa4\xfb\x44\x25\x5d\x46\xbb\xb2\x92\x2f\x09\xb6\xe8\x53\xc6\xfb\x46\xc2\xa4\x7c\xca\x8c\xee\x2f\x93\x36\x79\x27\x29\x50\xcf\x2d\x1c\x3f\xcb\x62\x1c\xdb\x8e\xf3\x74\xe3\xcd\xb9\x87\xad\xa2\x6b\x65\x7d\x5f\xa4\x17\x9f\x30\x04\xd7\xee\x2b\xba\x83\xdd\x01\xeb\x0e\x72\x86\xd6\x3b\x69\x57\x96\x99\xd5\x11\x4a\x95\xba\xe3\x09\x51\x9c\xd2\x97\x80\xcf\xd3\x32\xe5\x90\x21\x0d\x5f\xab\x9f\x6b\x78\x0c\xdf\xb6\x51\xc4\xfd\x92\x69\x93\x8a\x89\x99\xbf\xda\x76\x8c\x22\x6c\xdb\xa1\x6d\xcb\xa6\xa2\xcc\x2f\x87\x52\x46\x28\xcd\xc1\x91\xf7\x55\x2e\xe6\x65\x30\x95\x5b\x26\xc5\x99\x0b\x74\x7a\xca\x0d\x73\x28\x10\xce\x09\x06\x7c\xe8\x90\x39\x14\x28\x1d\xb9\x63\x5c\x22\x29\xe4\xeb\xa1\x83\xa6\xc9\x06\xa9\x82\x06\x95\xbc\x3a\xed\xc0\x3f\xba\x52\x00\xd2\x11\xad\x2d\xa5\x3f\xe8\xa2\x9d\xd3\x45\x21\x1d\xb5\x4f\x97\xd7\x5f\x0f\x9d\x44\xe3\xc2\x71\xcf\x7b\xca\xa6\xac\xb4\x27\x8c\x1d\x96\xf5\x9b\xa5\x18\xdb\x23\x71\x04\xca\x3d\xc3\x6a\x88\x1f\xeb\x43\x66\x03\x16\x23\x81\x87\x79\x40\x71\x0b\xb3\xdc\xbe\xab\xec\xaa\xe2\x9d\x30\xc6\x12\xa8\x5f\x31\x74\x0b\xf2\xd8\x06\x10\x1c\xf9\xab\x3c\x69\xad\x55\x44\xd4\x56\x24\xb2\x2a\xab\x43\x3c\x07\xa3\x50\x69\x76\x71\xd9\x4a\xac\xdf\x67\x7d\xd5\xb1\x93\x5e\xfa\xd5\xd9\xaa\xc4\x71\xad\x1a\x25\x9a\x19\x51\x5f\xcc\x84\x94\x87\xde\x3f\x12\x18\x55\x0f\xac\x92\x6f\xce\x97\x51\x14\x3f\x39\x40\xe5\x13\x66\xdb\xb9\xb8\x56\xbe\xc8\xcf\x4a\x67\xbd\x87\x6d\x76\xb8\xfa\x5f\x04\xb2\x4f\x08\xfe\x33\x1f\xab\xfe\x49\x81\x4c\x06\x64\x3a\xfd\xb2\xed\xee\x57\x70\xe7\x85\xa6\x5a\xd9\x4a\x16\x14\x54\xca\xc5\x28\x50\x14\x54\xca\x2c\x4d\xa5\x5b\x5c\x69\x88\xf1\x91\x59\x5f\x0e\x42\xfa\xa7\x2d\xb8\x4f\x7a\x5f\x69\x86\xa4\x24\x07\x08\x86\x29\x8a\x51\xa8\xf0\x7e\xa8\x4e\x7a\x8a\xc2\x4c\x12\xe0\x67\x5a\x65\xe1\xe8\xec\xc6\x7d\x2d\xef\x78\xa4\xa0\x5d\xee\xe6\x06\xfe\xbe\x4c\x05\xf7\x8f\xac\x9f\xeb\x55\x27\xfd\x42\x75\xa2\xe7\x93\x2a\x16\x7f\xbb\x3f\xd3\x1e\x59\x11\xd4\x1c\x8d\x1a\x83\x4f\xad\x8d\xac\xf7\xdc\x82\x14\x7c\xbc\x2d\x69\x2e\x78\x8c\x22\xd8\x4a\x62\x85\x85\x88\x80\x8f\xf7\x18\x02\x99\xaf\x65\x35\x4a\xd1\x45\x4a\x08\x33\x53\x47\x55\x9c\xbe\xb4\x79\x8c\x1c\xec\xd7\x69\x57\xfa\x83\x13\xca\x6f\x8f\x6a\x9a\xb3\x6f\x68\xce\x7e\xc7\x90\x9c\x72\x32\x96\x4a\x78\xd9\x35\x26\x31\x87\x53\x31\xe7\x4d\x34\x1a\x3b\x9f\xc4\x63\xa2\xc2\x34\x7f\x4e\xad\x20\x34\x09\x08\x63\x98\xd5\x71\xd6\x72\xae\x4e\x6d\x92\xbb\x42\x5b\x9e\xa0\x3b\x48\x61\xa5\xe5\x31\x0b\xb8\x85\x09\x3c\x1c\xc5\x1f\x99\xdb\xb6\x90\xbc\xc3\xe7\x8c\x96\xfb\x3c\x12\xe3\xb3\xaa\xf3\x83\x36\x77\x62\xea\xd1\x18\x2b\x1d\x45\xd6\x28\xdb\x7e\x67\x06\x6a\xe2\xa9\x90\x1a\x07\xf9\xe0\x9a\x57\x96\x0f\x3e\xf0\xc2\xae\xea\x1e\xde\x49\xfe\xe5\x73\x25\x50\xc0\x0b\xfe\x79\x34\x1d\xef\x76\x9f\x47\xd6\x7f\xfc\x8f\xf9\x94\x8e\x77\xbb\x7b\xdb\xfe\x3c\xba\x1f\xc3\x27\xfe\x62\xb7\x7b\x40\xf7\x18\xde\xf3\xfb\xe1\x87\xe1\x03\xca\x8d\xae\x30\xfb\x94\x99\xb5\xdd\xf0\x1c\xf4\xa5\xb6\xfd\x39\x53\x68\xef\x76\x2f\x24\x19\x7e\x63\xdb\x68\xc2\x97\xe8\xa6\x50\x47\x09\x8c\x25\xdd\x60\xbc\x8e\x4b\xc4\xc3\x44\xd1\xcf\xb6\x8d\xd6\x68\x02\xd7\xca\x96\x2b\xde\xed\x6a\xe8\x90\x89\xea\x77\x84\x26\x30\x85\x19\xc6\xf0\xc1\xb6\x5f\xd8\x76\x36\xdc\x26\xe7\x2f\x9c\xd0\xbf\x97\x88\xe0\x1d\x6f\xba\xf0\xa9\x66\x0f\xbc\x28\x69\xbb\xf6\xea\x52\x8e\xe6\xe3\x6e\x27\x57\xb3\xf9\x4e\x0e\x5f\x37\xf0\x19\xa6\xf0\x09\x83\x32\x71\xff\x04\xfe\xe8\x7a\xcc\x67\x70\x2f\x09\xfb\x05\xdf\xea\xe6\xd8\x87\xe1\x27\xf6\x80\xb2\xc6\x31\xc8\xb5\x66\x1b\x9d\xa8\xd6\x1d\x83\x99\x12\xf6\x7e\x0f\x8f\x4a\xae\x7e\xab\xdd\x69\xd4\xcf\xe7\xdd\x2e\x40\x9f\xe1\x16\x16\x92\xe5\xd0\x0e\x34\x21\x0a\x9d\xf7\x5a\x79\x3c\xdf\xed\xde\x61\x48\x61\x91\x4b\xbc\x16\x5a\x98\xde\x65\xc4\xed\x1e\xe9\x8b\xb3\x03\xaa\x35\xc6\xfa\x98\xf6\x3b\xac\xdf\xd1\x18\x0f\xfa\x03\xd6\x97\xd4\x6e\xff\xa4\x7b\xff\xd1\x11\x0b\x79\x93\x28\xb9\xaa\xb6\x47\x1d\x79\xe3\x51\x3c\x46\xf8\x2c\x30\x80\xb1\x3c\xbb\xa1\x0a\x74\x6a\x22\x77\xc5\xd1\x3d\x0a\x2a\xc0\x4a\x83\x50\xba\xc7\x19\x94\x8d\xf0\x76\xff\x94\x23\x74\x6a\xdb\xcd\xb0\x6a\x3d\x14\x94\xbb\xe3\xcb\xee\x40\xc2\x7d\xdd\xa5\x44\xed\xa0\xe3\xe5\xd6\x12\xa3\x40\x7b\xae\xca\xbc\x35\x3b\x22\xd9\x83\x40\x7e\xb9\x63\x19\x9a\xa8\xca\x81\xfb\x5f\xe9\x73\x9a\xb7\x6d\xbc\xc2\x41\x4b\xad\x9a\x22\x73\x0f\xef\x3f\x11\x2d\x60\x9b\xe5\x79\x82\xab\x6b\x12\x9d\x67\x70\x82\xc0\x50\x84\x85\xf8\xbc\xba\x27\x25\x58\xd7\x8c\x77\xbb\x18\x11\x17\x5f\x51\xea\xd2\xae\xd3\xe9\x75\xbd\x41\xa7\xef\xf6\x3c\xd2\x37\x5f\x2e\xeb\xbe\x9c\x53\x71\x4e\xbc\x26\x8f\x91\x7e\xc2\x75\xd6\x35\x2e\xe7\x48\xf0\x96\x24\x08\x99\xb8\x3a\x27\xe2\xbc\x67\xdb\xe2\x52\xfe\x0e\x45\x4b\x3c\x13\xcf\x29\xcb\x7a\x85\x04\x3e\x27\x7b\x16\x9b\x31\x9c\xd4\x64\x0d\xda\x39\x91\xb4\x8a\x1e\x20\xe0\x21\xa2\x70\xde\x55\x7a\x20\xf5\x48\xdb\x12\x79\xc8\x47\x42\x3d\xfc\x0c\xd1\xf3\x48\x7b\xae\x52\x38\x97\x6c\x6f\x69\xf0\x9a\xd4\x8a\xa3\x75\xad\x5f\x09\x84\xb0\xe6\xb9\xb6\x59\x48\xcc\x13\x97\x04\xcd\xeb\xcb\x64\xb8\x7c\x86\xd6\xcf\x93\xe7\x51\x8b\x3c\x0f\xce\xc9\xf3\x00\x3f\x4b\x9e\x45\x0c\x85\x92\x8a\x41\xa4\x15\xc9\x94\x35\x3e\x47\xe9\xf9\x1a\xe3\x2b\x7f\xb7\x0b\x9b\x3c\x94\xa5\xc8\x73\x17\xb3\xe5\xb3\x50\x2e\xeb\xa0\xcd\x06\x92\x63\x1f\x1c\x11\x59\x07\x3d\x5d\x46\x0b\xb2\xaa\xa3\x35\xf5\x24\xab\x09\xee\x9b\x09\xee\x0f\xc5\x79\x69\x82\x97\xd1\x02\x91\x96\xc8\x78\x82\xc1\x13\xb1\x53\x54\xfe\x24\x58\x84\x75\x2d\x15\x4b\xba\xdb\x89\x26\x17\x72\x61\x2f\x5d\xe5\xb7\x96\x55\x7d\xd2\xcd\x8b\x74\x3c\x49\x1a\x8a\xd4\xb7\x0e\xdc\x91\x8c\xa4\x4f\x7b\x47\xf8\xdc\x85\x8c\x1b\xa9\xdc\x7d\x53\xea\x4f\x29\x78\x0b\xac\x79\x53\x29\x42\xea\x22\x7c\x24\x28\xc7\x2a\x62\x23\xb9\x72\x5d\x59\x14\x26\x68\xbb\x57\xe6\x0f\xb0\xac\x60\xf0\x08\x09\x88\xc1\x1c\xd1\x6d\xc0\xac\x77\x56\xab\xd1\x6a\xf9\xf0\xa0\x82\x32\xe1\x3d\x4c\xcb\x81\xc0\xfe\x7a\xfd\x33\x8b\xe1\xed\xf5\xf5\x2b\xd6\x24\x60\xbc\x30\xd8\x31\xd8\x0a\x0b\x9b\x47\x2b\x79\xbc\xbf\x8d\x96\xe5\x28\x1f\x82\xa1\x43\x1f\x9a\x86\x18\x5a\x1f\x2c\x66\xbd\xb7\x70\x4b\x07\x59\x0f\x94\x15\x9a\xae\x2e\x29\x55\xf7\xda\xd2\x91\x18\xb2\xf7\x6b\xeb\x4c\x5d\x9d\x90\x9b\xea\xc6\x63\x27\x50\xc6\xe2\x3f\x09\xff\x53\x4d\xdf\x4e\x54\xdc\x74\x2b\xf5\x36\xc9\x71\xb5\x0f\x7b\x88\xc2\xd7\xb1\x10\xbf\x89\x3a\x79\xf8\xda\xb6\xa7\xca\x2e\xca\xb6\x13\x45\xe4\x9b\xa6\x6c\x5b\xd6\x04\xc2\xb8\x67\x7a\x8c\x74\x72\x09\x78\xd9\x92\xd2\xc8\x61\x06\x27\x05\x1c\x99\x32\x98\xb4\x7b\x4a\xc0\x01\x01\x8f\x9d\xef\xd7\xa9\x72\xc5\x7f\x77\x9b\x88\x78\x23\x24\x78\x73\x7e\x12\xb7\x7f\x0d\xd2\xc3\x2f\xea\x2a\xab\x55\x1c\x4d\x45\x92\x80\xcf\xe3\x2c\x9e\x21\x24\xdc\x32\xc9\x16\xd7\xac\x0d\x8a\x9e\x12\xb5\x6b\xd7\x96\x23\x37\x33\x08\x95\x82\x37\x91\xfc\x27\x8f\x9c\x59\x74\xef\x07\xfa\xe6\x3a\xf1\x39\x48\x11\xbe\x10\x17\x12\x41\x0a\x67\x1e\x82\xe0\x42\xa1\x2a\x85\xc8\x42\x54\x52\x3f\x6a\x14\x29\x86\x6b\x84\x59\x6e\xf6\x1e\xec\xf7\xf9\xb3\x12\x3b\x89\x30\x15\x31\xd2\xd6\x87\x09\xae\xb8\xbc\x45\xaa\xe2\x8f\xc1\xf4\x13\x5a\xe2\x7d\xee\x90\xdb\x0c\xe4\xcc\x84\xfe\x26\x58\x48\xbc\x2e\x2b\xc9\x5f\x9c\x24\xf5\xc3\x99\xbf\x8c\x42\x21\x69\x1b\xdf\xb6\x7d\x27\x16\x49\xb4\xdc\x88\xcc\x81\x27\x4f\x30\x9c\x1b\x3e\xab\x34\x3a\x75\xd2\x3b\x11\xca\x06\xb5\x78\xb4\xf2\x31\xcc\x24\x19\x59\x7f\x8c\x41\x74\xd3\x85\x19\xcf\x04\x68\x26\x2a\xda\x47\xf1\x39\x7d\x1b\xcd\x04\xb2\x2c\x7c\x26\xa9\xc5\x00\x2d\xb1\x13\xe9\x25\x44\x33\xd8\x4e\xef\xfc\xd8\x9f\xa6\x22\x7e\xe5\xa7\xbe\xba\xf5\xb1\xea\xf1\x37\x73\x66\x7e\xea\xf3\x39\x6f\xce\x8f\x89\xe7\x5c\xa0\xb4\x9d\x87\x2c\x06\xc5\x01\x65\x37\xec\x28\xbf\x05\x4d\x3f\x84\x18\xc4\x6e\x87\x04\x0f\x61\x2d\x99\x88\x94\x87\xc6\x4f\xbc\xc7\x48\xbb\x67\x78\xd1\x4c\xd0\x37\xf8\x6a\xa7\xcc\xe2\xc2\xbe\x32\xd6\x39\x53\x06\xce\x2b\xbd\x19\xb9\x0e\x05\x76\x60\x29\x1e\xcc\x0b\x86\x39\x2d\x87\xac\x38\xb6\xb2\xf9\xc6\x9f\x35\xcc\xc6\x6e\x94\x84\x7b\x92\x39\xe7\x02\x42\x1e\xef\x8b\x5b\xb8\xd4\x82\x6a\xa7\x7c\x93\x22\x81\xa7\x8a\x6c\x57\x50\x65\xce\xbc\x4e\xdc\x22\xbb\x19\x1a\x49\x47\x66\x64\x37\xf8\x3a\xcd\x4f\x37\xe3\x79\xdd\xcc\x75\xde\x35\x6a\x6d\xe2\x1a\xe5\x83\x72\xbf\x4e\x8c\xfb\xf5\x3a\x43\x0e\x7e\x22\xd1\x54\x99\x98\x59\xef\x76\xc7\xb8\x40\xab\xc3\xb6\x7b\x48\x95\x72\x94\x7f\x50\x00\x18\xc9\x46\x2d\xff\x76\x3a\x13\xf3\xc5\x5d\xf0\xcb\xa7\xe5\x7d\x18\xad\x7e\x8d\x93\xb4\xd0\x96\x49\xc2\xd0\x83\xb0\x10\x66\x65\xd6\xbb\x55\x73\xda\x74\x24\xc6\xca\x51\x00\xbc\x26\x5f\xa3\xed\x1e\x04\x1e\xc5\xe3\xdd\xce\xf4\x53\xf1\x9e\x2a\x3d\xc5\xd8\x78\xbe\x5a\xb8\xc9\xc3\x8a\xf9\x5d\x25\x54\x84\xaf\x0d\x6c\x8e\x22\x43\x2c\x39\x81\xa9\xb2\xbb\x99\xf3\xc8\x99\x5f\xac\xaf\x96\x17\xb9\x65\xce\x0c\xee\x78\x52\x38\xb3\x6a\xeb\x1b\x58\xf1\xe9\x30\x44\x77\x38\xf3\x79\x9d\xa2\x3b\x8c\x99\x4c\x81\x7b\x9e\x69\xa2\x60\xc3\xdd\x8b\xfb\xab\xcd\x05\x9e\xf1\xd5\x68\xd3\x6a\x8d\x15\x0b\x34\xd7\x27\xf5\x0e\x66\xca\x37\x7a\x34\x1b\xf3\xbb\xd1\x6c\x5c\xb2\xe3\x61\xeb\xd3\x96\x3c\xb9\x23\xb8\x71\xaa\xd1\x20\xde\xb8\x83\x0f\x4e\x4a\x00\x73\xf3\x37\xd7\x35\x56\x0e\xae\xd9\x0e\xb4\x8b\x91\xf5\xe6\x5a\x5f\x33\x6b\xc9\xad\x51\x5a\xe6\x8a\x0b\x73\x76\x98\xd4\xfe\x1a\x48\xfe\x65\x1e\xfb\xf7\x42\x11\x1e\x81\x19\xb3\xf6\x6e\x74\x92\xf4\x71\x29\x9c\x59\x90\xac\x96\xfe\x23\xb7\xc2\x28\x14\x16\x08\xe4\xb5\xb1\xe3\xaf\x56\x22\x9c\xbd\xbc\x0b\x96\x33\x7d\xd7\x62\x12\x4f\xb9\xf5\x8b\xbf\xf1\x75\x68\x5e\x66\x01\x4a\xb9\x52\xb7\xa7\x22\x4c\x7f\xd2\x21\xe0\x32\x08\x86\x9d\x68\x25\x42\x84\x21\x75\x1e\xe2\x20\x15\xc8\xba\xd4\xc5\xae\x72\x18\xf7\xda\x6c\xe5\xcb\xbf\x3d\x37\x9f\x2c\x99\x7d\xba\x8c\x12\x81\xe4\x8e\x4f\x9d\xd7\x17\xe1\xf9\xf9\x05\x36\x26\xca\xa5\xcb\xb3\x46\xc1\x28\x1c\xe7\x86\x19\x09\xaa\xf8\x4c\x57\x6e\xa2\xad\x0b\xf1\x12\x54\x2d\xaf\xb9\x18\x22\xbf\x22\x10\x12\x72\xee\xe5\xa9\xf6\xa1\xfc\x41\x66\x87\x60\x14\x8d\xb9\xc0\x2c\xe0\x09\xaa\x78\xc1\x07\x2c\x44\x81\x11\x3d\x13\xd7\x65\xc4\x75\x81\xd0\x2e\x23\xb4\x9b\xa9\xaa\xb4\xf2\xc2\x65\x3d\x17\xbc\x36\xf3\x14\x9c\xf8\xa2\x4d\xde\x53\x76\xbd\xc6\x32\xd1\x04\x86\xd3\x8d\xa8\xfd\xe6\x75\x98\xd7\x51\xc1\x87\x4f\x4a\x5c\x33\x4b\xe5\x76\x26\xbd\x74\xbd\x6a\x0c\xbb\x6e\xbf\x3e\x1c\x9a\xe4\xde\xab\x55\x2a\x17\x96\xfc\x4a\x18\x15\x38\x27\x95\x2b\xe8\x67\x27\x6c\xcd\xdd\x8b\xe4\x6a\x7d\x81\xb5\xc1\x73\xc4\xfd\xd1\x5a\x9e\xb3\x74\x14\x8d\xab\x16\x8f\xd9\x31\x2a\x0f\x26\xa3\x86\x88\x5b\x23\xcf\xcd\xc3\xbd\xb9\xb9\x57\x71\x2f\x0b\x53\xe1\x66\x10\xb4\x6d\x20\xa8\x51\xdf\x7a\x4a\x94\xf6\x85\xc8\xd3\x26\x28\x9c\x9c\x85\xe5\x31\xe9\x28\xb4\x1d\xa0\x84\x56\xda\xd7\x71\x5d\x8e\xfd\x66\xa2\x07\x16\xce\xde\x92\x34\x51\x69\x79\x04\x30\xd4\x0c\x9d\x79\x11\x69\x10\xc4\x28\x1d\x9b\xbd\x63\x00\x48\x26\x6e\xcc\x03\xb1\xe8\xc5\x36\x0b\xac\xa8\xc5\x62\x99\x4f\x0a\xa9\x8b\x90\x35\x6e\x5b\xb2\x18\x41\xd9\xe9\x1b\x22\x7e\x14\x79\xaf\x1a\xd4\xd1\xb6\x6b\xa7\xe9\xad\x7f\x2f\x92\xe1\xe9\x4f\xe6\xd6\x6c\xcc\x46\xe3\xb3\x2f\x60\xcf\xc8\xb6\xad\x91\x89\x77\xa6\xa1\xc8\xd8\xe2\x99\x9d\xb7\xa8\x22\x89\xd2\x14\x2b\x84\x7b\x10\xcf\xb2\x11\x65\x37\x25\xee\xf7\x48\x48\x40\x1f\xe7\xa2\x73\xb7\xcd\x88\xdb\xce\x66\x53\xcd\x59\x4d\xe8\xb3\x62\x37\xf5\x72\xf8\x9b\x21\x0f\x4b\x6f\x66\x0b\xac\x1c\x24\x58\x58\xed\x92\xd3\xf3\x50\xcb\x47\xca\xd6\x02\xd3\xab\x1e\x23\x6e\x4f\xc3\x04\xd5\xa7\x1a\x45\xe9\xc9\x16\x34\x32\x4f\x4c\x88\x65\xf7\x34\xaf\x40\x0e\x02\xb9\x1c\x21\x93\xe8\x48\x02\x79\x0c\x4f\x17\x22\x2d\x59\xed\xd6\x0e\x4c\xe8\x60\x2f\xb1\x1a\xdf\x50\x8c\x82\x71\x6d\xf0\xc6\xb2\xa2\x55\x4b\x8c\x8b\x18\xb3\xe5\x6f\xc3\xca\x5b\xd1\x37\x56\x29\xa2\xbb\x37\x8c\x54\x6c\x06\xad\x62\xd5\x40\x37\xc3\xc0\xea\xa8\xa8\x19\x3a\x29\xe7\x2b\x66\xc8\xa0\xdd\x0e\xc1\xa8\x49\xea\x51\xef\x93\x81\x8c\x7c\x1d\x28\x4c\xc2\x19\x17\x96\x7c\xa4\xe3\x08\xf8\x8d\x20\x6c\x24\xd8\x6f\x6a\x4d\x49\x02\xbe\xe4\x04\x73\xcb\x60\x15\x77\x26\xd3\xe2\x2a\x30\x29\xb3\xf0\x54\x01\x49\x6c\xdb\xe8\x5f\x03\x15\x29\x6c\xb7\xcb\xcb\xe4\x50\xf3\x60\xc8\x1a\x56\x74\x08\xeb\x90\xd2\xc0\x4f\xaa\x41\xd5\x3e\x0f\xf5\x3e\x3f\x5e\x72\x49\xbc\xd5\x2e\xb4\x5c\xe1\xf0\xc4\x0e\xae\xb1\xaf\x91\x3b\x78\xbb\xaf\xd5\xac\x66\x9b\xf7\xa4\xea\xb1\x47\xab\x56\xcf\xbd\x27\x22\xc6\x68\x25\x15\x0a\x4d\xe4\x7f\x65\xa8\xac\x2e\x37\xd3\xef\x23\x31\x56\xf1\x5e\xce\x7c\x49\xb4\xa6\x28\x92\x5b\x35\x76\x3e\xb4\x62\xe7\xf5\xb3\xaa\x7d\x62\x64\xdc\xc7\xb2\x48\x1c\xe0\xab\xd1\x6a\x9b\xdd\x92\x07\x92\x0a\xcb\x7f\x12\xc5\x1e\x53\xf7\x1d\xb7\xa0\xee\x9d\xf9\xd7\x06\x0e\x2b\xa8\x63\xb9\xbd\x14\x72\x5d\xf3\x10\x25\x12\x8b\x65\xd1\xc3\x60\xca\x5d\x98\xf3\xd1\x58\xc7\x0a\xf3\x4d\x9c\x30\x45\xca\x1a\xcd\x5c\xa2\xb6\xd0\x5c\x6f\x21\x31\x1c\xf9\x90\x8c\xfc\xf1\x98\x25\xe5\x9b\xd8\xe6\xfb\x32\x1a\x2e\xa8\x59\xbd\xb1\x14\xf2\x51\x83\x7e\xc2\xdc\xbe\x7d\x60\x6e\x9f\xf9\x7a\x7b\x2e\x76\x6e\xc4\x7c\x29\xa6\x65\x7b\x8c\xc8\xb6\x23\x27\x7a\x08\xff\x7a\xb4\xd9\x8c\x2d\xbe\x33\x47\x81\xd2\x2a\x6a\x83\xfc\x3c\xf0\x40\x9a\x47\xb2\x51\x17\x67\xa6\x15\x30\x6f\xa8\x72\x4d\x46\x64\xdc\x29\x39\xbe\xf7\xa0\x6c\xd7\xb2\xf2\xe3\x44\xbc\x5e\x46\x7e\x6a\x44\x2b\x1d\xac\x6e\x2b\x28\x75\x96\x3c\x8f\x91\xfc\xd2\xc5\x2d\xeb\xdc\x95\x8c\xcc\x39\x79\xee\xd6\xc4\xd3\x0e\x8d\xf1\xa5\x04\x05\x6d\xac\x42\xa4\x17\x41\x13\x24\xc1\x18\xd8\xb6\x75\x2e\x81\x62\x71\x3d\xf9\xf0\xdc\x65\x81\x16\x03\x93\x76\x87\x91\x76\x07\x48\xbb\xcb\x48\xbb\x5b\x1a\xc1\x93\x96\x39\x6a\x04\x6f\xc2\x83\xfe\x9b\x40\x75\x5d\x39\x83\xcf\xff\xd3\xe8\xbc\x35\x1e\xba\xa3\xcf\xff\x34\x7e\x5e\x1a\x58\xbf\xc9\x79\x8c\x82\x96\xe5\xf6\x2d\xbc\xdb\x51\x9a\xbf\x7f\x26\x3d\x0b\x0f\x6b\xa8\xe8\x83\x31\x16\x4a\xed\x00\xd2\xab\xab\x2b\x77\xb7\x43\x91\x93\x8a\x24\x45\x01\x1e\x4a\x62\xc6\xc5\xf8\x4b\xa3\x3b\x12\xa0\x7e\x29\xae\xf5\x56\xb0\x26\x81\x0d\x53\x38\xff\x80\x1c\xd8\x6a\xb3\x59\x15\x84\xd6\xc0\x99\xe3\x0b\x21\x0e\x39\xaf\x4c\x30\x3b\x38\xe9\xbf\x57\x5c\x4b\x10\xaa\x30\x59\x15\xc3\x21\x65\x5c\x91\x71\x88\x67\x1a\x20\x05\x92\xe8\xcd\xe6\x07\xb9\x10\xe5\x02\x25\x79\x92\xa3\x4c\xdc\x91\xab\xcc\x33\x21\x60\x8f\x0d\x7a\xaa\xd3\xbd\x2f\xf0\x08\xed\x27\x5c\x80\xb2\x70\xd1\xe4\xf4\xa5\x12\x84\x3c\x61\x27\x50\xc0\x9e\x40\x22\xb1\x14\x2b\xec\x0e\xe9\x28\x18\x43\x78\x40\xbb\x6b\xfd\x9b\x6a\xec\x24\x87\x9b\x09\x2e\x33\x33\xfe\x4c\x00\xae\x25\xe4\x49\x3c\xb5\x34\xd1\xde\x1b\x48\x9a\x1d\x59\x56\xcb\xc7\x99\x10\x22\x23\x5b\x2d\x7c\xa6\xaf\x14\x09\xc2\x64\x25\xa6\xe9\x87\x68\x1d\x4f\x45\x1d\x0c\xf5\x33\x32\x72\x0f\xe8\x64\xc4\xba\xcc\x49\xa6\xee\x2e\x4b\xff\x6c\x69\xdb\x28\x40\x3e\x58\xa1\x62\xa2\x77\xbb\x30\x7f\x91\xf4\xbc\x22\xdc\x9b\x9c\xfb\xb6\x8d\xb2\xac\x91\xc9\x15\xa9\x8f\x43\xcb\x6a\xc9\x5f\x96\x68\xf9\x87\x39\x34\x29\xc6\xb2\xb4\xf2\xf8\x57\x7e\x9f\x3e\x5b\xab\x87\xec\x2d\xb3\x56\x60\xc8\x30\xc0\x32\x1d\xb2\x54\x8c\xf7\xb8\x70\x72\x29\x45\x7b\xc9\x27\xa9\xc6\x34\xa2\x2e\x88\xd4\x5d\x90\xe8\xd8\x0e\xa3\x68\xbc\xdb\xf9\x15\x5d\x30\x2e\x49\xa9\x0d\xee\x1b\xb0\xde\x20\xf3\x57\xd1\x3c\x88\xb1\xdc\x26\xc7\x97\x7c\xd4\x8a\xbc\x3a\xca\x1b\xeb\xd0\x04\x5d\x7b\x43\x3c\x85\xd8\x83\xcc\x65\xa2\xde\xc9\x3c\xb3\xe4\xcb\x39\x07\x30\xd1\x9d\x0c\x7f\x93\x1b\xce\x46\x46\x4e\x28\xf9\xfb\x4a\xa4\x40\xd9\xa1\x86\x6c\x21\x73\xc9\xd3\x73\x26\x66\x8d\x24\x92\x29\x41\xb8\x68\x44\xe9\x9d\x88\xf5\x25\x99\x7e\x68\x48\xcf\x46\x14\x2b\x49\x42\xe1\x4b\x18\xa9\x48\xdf\xc6\x7e\xa7\xc9\xcb\x81\x8c\x6b\x5b\xfd\x0f\xaa\x55\x15\xcc\x4b\x39\x02\x06\xe1\x34\xba\x5f\xf9\x69\x70\xbb\x14\x8d\x58\x4c\x45\xb0\x11\x71\xc9\x55\xb1\x1a\xa0\xbe\xe3\xb1\x8e\xa7\x2e\xf5\xf9\x8a\x98\x2c\x10\x6a\x2a\x4a\xf1\xc8\xb5\x8b\x00\x3e\x3f\xf4\x1b\xc8\xbc\x5b\x20\xe1\x11\xac\x39\x52\x4e\x1b\x10\xf2\xe7\xb7\xcf\x9e\x2f\x20\xca\x44\xda\x96\x2f\x59\x09\x63\xdc\xa0\xdf\xdc\xa6\xf2\x48\xf1\x93\xf4\x4d\x38\x13\x9f\x77\x3b\x25\xa9\x2d\x12\x70\x1e\xb6\xb5\xc9\xf9\x73\x84\x87\xc3\xe7\xaa\x13\xc8\xb2\xf0\x88\x8c\x2f\xd0\x7a\xb7\x5b\x62\x15\x7c\xf1\x58\x47\x29\x07\x93\xc0\x54\xb9\xdc\xe6\xe4\xb0\xd2\x38\xc8\x59\xd6\x83\x43\xd6\x7f\xb2\x5a\x53\x27\x51\x10\xa2\x65\xfd\x1d\x1a\x36\xff\xf6\xb7\x04\x5b\x60\xb6\xc9\x54\x1e\xc2\xb5\x0a\x6d\x38\x2d\x77\x2b\xcc\xe2\xe9\x4d\x41\xa8\x0c\xa1\x6d\xa3\x52\x0e\x3e\x35\xee\x04\xc3\xd0\x09\x64\x42\x2b\x94\x20\xd8\xc4\x66\x4e\x31\x2c\xb5\xe9\x67\x1e\x0c\xca\xb6\xcd\xd1\x92\xf9\x20\x3e\x8a\x2e\x94\x70\x72\x91\x5c\x1e\x0a\x3d\xcf\xe9\x45\xd2\x6a\xe1\x5c\xcc\x54\x80\xfd\x64\x6c\xdb\x28\x1c\x25\xe3\x2c\xf6\x96\x24\x57\xc3\x4a\xbc\x6a\xc9\x19\xf6\x7a\xac\xa7\x90\xc8\xf1\x9d\x2e\x47\xe4\x7e\x90\x1c\x4a\xcb\x72\xbe\x8e\xf3\x74\xa8\x0c\x0a\x77\x3b\xf2\x5c\x70\x4e\x9e\xa7\x4c\x34\xb9\xb0\xed\xb4\xc9\xd3\x0c\xbb\x9e\xbe\xa7\x25\x33\x95\xd3\xc2\xa6\x23\x6c\xaa\x38\xa6\x66\x11\x75\xb2\xc9\x79\x7a\x1c\xf9\xbb\x65\xb1\xc6\x54\x39\xce\x26\x22\x6d\xf8\xea\x42\x5d\xbd\x41\x9b\x56\x45\x02\xb8\x4d\x44\x6a\x6c\x2f\x9d\xe4\x80\x6d\x45\xd6\x64\xa2\xca\x4d\x26\x56\x10\x6e\xf7\x05\x65\x63\x22\x63\x4b\xda\x02\x19\x6f\x80\x03\x2f\x42\x49\xd3\xaa\xcb\xa7\x0e\xb9\x65\x28\x55\xaa\xd5\x71\x14\x63\x94\xc2\x68\x8c\x21\xe6\x3a\x92\x64\xce\xb0\x2a\x8b\x90\x92\x6d\x45\xcc\x9b\xee\x91\x76\xa6\x3c\xfd\x81\x96\x10\x49\x7e\x38\x6f\x86\xa7\x1a\x3f\x28\x5d\x22\xda\xee\xa1\x49\x32\x37\x26\x0c\xd3\x3b\x31\xfd\xc4\xb4\xad\x86\x4b\x18\x71\x49\xc5\x58\x3e\x33\x1c\x24\xc7\xd7\x88\x3c\x19\xa8\x65\x60\x62\x94\x76\xb3\x38\x2d\x5f\x1f\xab\x54\xc5\x59\x39\x0b\x6c\x3b\xb5\xed\x66\x3a\x8a\xc6\xf2\x68\xcc\x55\x48\xe4\x6d\xf5\x36\x01\x17\xea\xe3\x94\x29\x43\xb5\x7d\xc5\x0c\xd2\x48\xc2\x14\x2e\xca\x65\x84\xa7\x6e\x32\x29\x07\x20\xf4\x48\xd9\x60\xb3\x12\x50\xf2\x14\x1d\x14\xe1\xad\x50\x31\x53\x05\x8f\x86\x82\x95\x6d\xc7\x02\x75\xf5\x91\x24\x8a\x8e\x86\x92\x5d\x82\x50\xe9\xb6\x46\x9b\x45\x87\x4f\x47\xae\x57\x8e\x0a\xc6\x6e\x2a\x34\x34\xd2\x17\xe2\x34\x2a\x76\x17\xc9\x9f\x92\xd9\xa8\x76\x5d\x00\x83\xc9\x55\xa3\x27\x45\x21\x5d\xc3\x6f\x7b\x4a\x12\x12\x8e\xac\xc9\x64\x1a\xc5\xe2\xfc\x97\x64\x92\xdc\xf9\xb1\x98\x4d\x26\x96\x76\xf4\xad\xfd\xc2\xb7\x7b\x7c\x71\x82\xd4\x2a\x36\xb4\xee\xa5\xfc\x29\xa0\x7f\x3a\x4c\xd9\x56\xdd\xde\x6e\x65\x37\x5c\x5b\xf2\x00\x69\x76\x35\xbf\x77\x2c\x76\xcc\x13\xdc\x47\x33\xc1\x94\x25\xe5\xd0\x5a\xad\x63\x61\x31\x4b\x83\x64\x0b\xa6\xd1\xea\x31\x0e\x16\x77\x29\xb3\xfe\xed\xff\x6c\x50\x97\x0c\x1a\xaf\x44\x18\x24\x8d\xf7\xeb\xe4\xee\x93\x1f\x8b\x4d\x03\xfd\xb6\x8c\x82\x38\x9a\x7e\x72\xe2\x35\xb6\xd4\xcd\x08\x9a\xc2\x31\x2e\xee\xc6\x36\x8c\x1c\x5f\xb3\x72\xc8\x31\xb4\xdb\x5f\x1f\xba\x37\x97\x52\x80\xaf\xa8\x82\x3a\x9f\x83\x02\xd8\xef\x76\x3a\x80\x00\x8a\x78\x8c\x7c\xac\x4c\x83\xe5\xb9\x8f\x2a\xfb\x49\x07\x53\xcd\x8c\x6d\xc9\xf1\xc5\x2b\xa7\xc2\x7b\x7c\x21\xf2\x6e\xb3\xa9\x9c\x18\x2a\x36\x6b\x43\x63\x89\xaf\x54\x21\xe5\x2f\x7b\x0c\x24\xb7\xd3\x57\x41\x2b\xf7\x7a\xf3\xe5\x62\x92\xc3\xbb\x5a\x4a\xfb\xbc\x6d\x54\x11\xdd\x7f\x47\x2c\xf5\xc2\x73\x03\x12\x43\xb0\x20\xc9\x8f\x61\x15\x5a\x3d\x90\x84\x45\x86\x44\x0b\xab\x25\x77\xb7\x5b\x5f\xf1\xe5\x50\x0c\x2d\xcb\x40\x4b\x86\x22\x9e\x28\x1e\xfc\x65\x34\x13\x2f\x52\xb4\xc6\xf8\xb2\xdb\xa5\x83\xde\x6e\x17\x5d\x75\x7b\x6d\x32\xd8\xed\xd6\x2d\xa2\x3d\x95\x90\x7f\x90\xb9\x45\x64\xf6\x5e\x9b\xba\xbb\x9d\x7f\xd5\xf5\xda\x9d\xf6\x50\x0c\x93\x8c\xa9\x5f\x63\x16\x31\xf9\xae\xe5\xd2\x6b\x58\xb7\x28\x66\xfe\xb9\x2a\xd1\x42\xd1\xb9\x6a\xe9\xf2\x92\xb8\xb8\xd5\xeb\x76\xdb\x3d\xa3\x5b\x1f\x30\xd2\x1e\x68\x07\x49\x75\xc5\xe2\x69\xbb\x79\xfa\xf4\xd4\x69\x1f\x17\xc5\xb0\xa6\xc7\x97\x69\x18\xd7\x85\xff\xa0\xe2\x17\x37\x66\x91\x48\x24\x76\xf5\xa7\x53\xb1\x4a\x1b\xb1\x58\x88\xcf\xa5\x5b\x1d\xf2\x49\x36\x60\x45\xbb\x6f\xf6\x29\xeb\xeb\x6b\x20\x4f\x4a\x84\x32\x11\x5e\xcf\xc8\x83\xba\x2a\xec\xeb\x73\xeb\xf9\xa2\xac\xc5\xcc\xaf\xa6\xd0\xb6\x8c\xa6\x35\x2d\xf9\x49\xb8\x75\x69\xb5\x32\xbb\x79\x4b\xd1\xd4\x92\x28\x6c\x71\xab\x61\xb5\xe2\xd6\x5f\xb8\xf5\x97\x56\xd6\x3f\x9c\x3b\x63\x47\x60\xd9\xbf\xae\xa3\xf4\xc2\xc2\xad\xbf\x58\x7f\xc1\x90\xb4\xac\x2b\xab\xe5\xb7\xac\xcb\xe7\x56\x2b\x95\x2f\xa7\x6c\x9f\x33\x9e\x63\xbb\x3f\x0b\xb4\xb4\xd0\xd7\xd2\xc2\xf7\x4a\x5a\x18\xd6\x78\x33\x6b\x97\x67\xd9\x4e\xae\x22\x96\x60\xcd\x49\xa3\xef\xa2\x07\x11\xbf\xf4\x13\x81\xf0\x6e\x97\x1a\x6e\x56\x66\xcc\xa8\xc3\xb6\x92\x35\x66\x7c\x5b\x50\x9a\xde\x03\x59\x63\xfb\x09\x3d\x4f\x26\xc3\xce\xe0\xd1\x13\x5b\xa2\xb8\x88\xa0\x3a\xcf\x6b\x5e\xd2\xb6\xe7\x70\x28\x1a\x5a\x0d\x8b\x99\x8c\x11\x86\xa9\x16\x66\x05\x73\x34\xbd\xe4\xeb\xdd\xce\xb2\x38\x5f\x66\x42\x8f\xe4\x4c\x1b\xb4\x4c\xcf\xd7\x30\xcb\xae\xbe\x59\x82\xb2\xac\x9b\x8a\x60\x89\xe6\xcf\xf3\x08\xf0\xf9\x44\xcd\xb2\x89\x98\xdb\x36\x9a\xf1\x99\x39\x2e\x2e\xcc\x31\x06\x7f\x38\x6b\x25\x2c\x69\xcd\xf4\xd1\x68\x33\xd2\x6e\xe7\xb7\x36\x14\x47\xe4\xeb\x68\x99\xaf\x80\x35\x7a\x35\x0b\x90\xa2\x82\x00\x41\xc0\x2d\x0b\x22\x6d\x05\x19\xcc\x51\x24\x61\x49\x24\x09\x61\xb7\x26\x3e\xd0\xcb\x68\x1d\xa6\x86\x56\xbd\x15\x8d\x50\x2c\x94\xb7\xa1\x65\x44\xfd\xd1\x95\x7b\x81\xa2\xab\xab\x2b\x4e\xb0\x76\x1d\x4e\x31\x26\x76\x64\xdb\x28\x90\xcf\x67\x15\x6b\xdb\x23\x60\x70\x92\xc2\xe9\x15\xc0\xa0\x12\x22\x41\xc9\xfe\x7c\x6e\x8d\xac\x56\xd4\xb2\xc6\x16\x24\xbc\xc4\x1d\xf9\xf2\x40\x3c\xb3\xe4\xea\x9b\x54\x9d\xf2\x77\x56\xd5\x42\x50\x4b\x83\xf4\xe9\x54\x16\x07\x41\x8d\xd9\x61\xb3\x19\xc9\x53\x80\x77\x3b\xeb\x8f\xdf\xff\xd7\x7f\xfb\x2f\x56\x93\x9b\x07\x95\xbc\x57\x9b\x4c\xc9\xdf\x93\x61\x8a\xa6\x2a\x04\xe1\xf8\x4c\x32\x57\xfe\x28\x1c\xf3\x75\xf9\x90\x25\xc5\x91\xf0\x95\xf5\xe1\x52\x89\x33\xeb\x69\x0a\xc1\xcb\xf0\x09\x88\xa4\x34\x91\xe0\x39\xef\x8a\x12\xb0\x2c\x8c\x81\x1e\x7d\x58\xeb\x0f\x95\xb0\x54\xea\x2e\x58\x23\x9d\xac\x3f\x88\x47\x54\x5b\x29\xf4\xcd\xdf\xd2\xbf\x85\x7f\xdb\xfc\x6d\xfe\xb7\xb8\xf1\x6f\xff\xf5\xbf\xfd\xef\xbf\xff\xb7\xff\xfa\xbf\xfd\xf1\xfb\xef\x7f\xfc\xfe\x9f\xff\xf8\xfd\xff\xff\xc7\xef\xff\xdd\x1f\xbf\xff\xf7\x7f\xfc\xfe\x5f\xfe\xf8\xfd\x7f\xf8\xe3\xf7\xff\xf1\x8f\xdf\xff\xa7\x3f\x7e\xff\x9f\xff\xf8\xfd\x7f\xf9\xe3\xf7\xff\xeb\x8f\xff\xfc\x7f\xfc\xdf\xbf\xff\xfe\xb7\x35\x75\x69\x5f\xfd\x1f\xfc\x6d\x3d\x17\xf3\xb9\x65\xd8\xab\xe3\x5b\x85\x72\x96\xbe\xe2\x2d\xee\xf5\x8c\xba\xbb\xad\xd5\xdd\xdd\x81\x89\xa5\x2a\x59\x03\xbe\xcc\xed\xfe\xe6\x7c\x29\x79\x95\x37\xf7\xf7\x62\x16\xf8\xa9\x80\x19\x5f\xea\x30\x70\x45\xd2\x1d\x5f\x3a\xdf\x8b\x24\xf1\x17\xe2\xe5\x9d\x1f\x86\x62\x09\x2b\xbe\x74\x5e\x05\xc9\x4a\xf2\x2f\x70\xcf\x5d\xd8\xc8\xed\xf0\x78\xec\x85\xdf\x52\x8c\x79\x30\x47\x9b\x83\x1b\xf8\xe4\x0a\x65\xe1\x51\xe5\xf2\x1b\xf9\x96\x7c\x86\x14\x49\xe8\xb7\xa8\x9c\xc8\xcc\xb5\x58\x99\xb3\xe1\xfd\xd9\xdc\xb6\x67\xea\x3e\xcc\x7a\x03\xa2\xd1\x18\x42\x4e\x2e\x8e\x02\x32\x87\x17\x38\x8b\xc6\x93\xb3\xd1\x61\xab\x55\xe8\x3e\x36\xa3\x56\xeb\xbe\x62\x0f\xef\xd7\x89\x9a\xc4\x50\x14\x57\x15\x0a\x0c\x29\xde\x43\x8c\xee\x31\xdc\xef\xcb\x3e\x36\x02\x6f\x4b\x03\xdb\xc3\x91\x61\xe5\x14\x0f\xe3\x4a\xf6\x69\x61\xae\x18\xa1\x47\x10\x40\x30\xde\xb3\x95\x6d\xaf\x9c\x30\x7a\x38\xc8\xac\xd2\xca\xf9\xee\x86\x28\xe0\x28\x54\xc2\x8f\x3b\xec\xc8\xbd\x48\x21\x54\xbf\xc4\x89\xc2\x7b\xbd\x8a\x7c\x01\x31\x8f\x50\xe0\xac\xa2\x24\x35\x2b\x0b\x81\xac\x81\x2d\x1d\x7f\x36\xbb\xde\x88\x30\xfd\x2e\x48\x52\x11\x8a\xb8\xd6\xf3\xb5\x54\xd0\xb6\x9b\x4b\x27\xb8\x97\x4d\x7c\x50\x66\x13\xc9\x10\x55\x7b\xb9\x2c\xb7\x83\x44\xcb\xb2\x40\xc2\x9a\x3d\x1c\x37\x86\x2c\xd3\x45\x0b\x16\x92\x9d\xc5\x2c\xe6\x56\x14\xc6\xc2\x9f\x3d\x26\xa9\x9f\x8a\xe9\x9d\x04\xb1\x56\x10\x36\xd6\xc8\xd2\x66\x1a\x56\xd5\x3e\x20\xa9\x98\x2d\x95\x72\x61\xe7\xb8\xa2\xf2\x3a\x27\x4e\x2c\xee\xa3\x8d\xd0\x05\x75\xf0\x88\xdc\xa1\x7d\x5f\x0d\x79\x91\xe8\x18\x78\xd1\x3a\xcd\x67\x1f\x5c\x5c\x91\xbc\x28\x01\xc4\x1c\x74\x9c\xf5\x59\xee\x01\x99\xc5\x59\x56\x76\x40\x46\x86\xda\x66\x9e\xb9\x09\x41\x1d\xf1\xd3\x42\x7a\x8d\xb8\xf4\x4d\x52\xfe\x67\x08\xf2\x4b\xa5\xbe\x40\xc6\x23\x6d\xd1\x84\x2f\xdd\x61\x88\x44\x4b\x5d\x6c\x13\xe4\xc2\x43\x83\x5d\x54\xdb\x27\x65\xf6\x39\xd2\x7c\xe2\xaa\xa7\xdc\x2c\xb3\xac\x01\x71\xcf\x4a\xf1\xb4\x02\x1e\x1a\xb2\x41\xd2\x45\x41\x0d\xda\xfc\x29\x8e\xc2\x45\x43\x9f\xd6\x12\xe1\x59\x41\x83\xc5\x7d\x44\xe4\xf8\x4e\xb0\x92\xb3\x87\xa4\x35\xbe\xde\xa3\xb4\x11\x24\x6f\xfd\xb7\xc6\x61\xc3\x65\x48\x5c\xb9\xc3\x90\xc5\x18\xe5\x6e\x03\xe4\xf8\x7e\xac\x5c\x3e\xe2\x7d\x25\xfb\x12\x1f\x12\xcf\x99\x41\x20\x79\xe2\xca\xa9\xf2\xba\x9f\x58\xec\x52\x90\x45\xb9\xc8\x6a\xb6\x8f\x22\x69\x30\xf7\x60\xbd\x9f\xb8\xcf\xe9\x4b\x03\x31\x7e\xcd\x71\x65\x34\xaa\xce\x2f\x5d\x27\xd8\x7e\x22\xc4\x9c\xba\xa1\xb2\x90\x4e\x1d\x5f\x9a\x53\xa1\xe8\x82\x39\x52\xa2\xa8\x12\x2f\x34\x28\x8b\x2e\x0a\xf2\xa7\x47\x33\x3b\xb0\x5e\x16\xc7\xa3\x6b\x30\xa3\xf1\xa9\x6c\x67\x17\x4c\x90\x9e\x8e\x28\xec\x51\x13\x51\x98\x78\x3a\xa2\xb0\x5a\x86\x55\x46\x67\xdf\xab\x94\x3e\x86\x4d\x76\x11\xda\x63\x66\x67\xb6\x30\xf2\xa5\x5b\xa3\xea\x98\x18\xe9\xe7\x43\x66\x80\x73\x6d\x02\x8b\x7c\x30\x2e\xaf\xef\x32\x9f\xce\xcf\x85\x91\xd6\x8b\x2c\xc6\xc8\x27\x23\xf5\x81\xf7\x59\x84\xab\x1b\x13\x1c\xfd\xa3\xb6\x52\x81\x97\x4a\x50\xe4\x61\xf8\x45\xdd\xa6\xde\xc1\xf0\xbd\xf1\x1e\x7d\x63\x22\x23\xbf\xca\x6e\xce\x78\x2b\x8b\xb8\x18\xbe\x93\x23\x1e\x60\x78\x6d\x64\x7a\xbf\x71\x2d\xd8\x84\x6f\xf8\x6b\x67\x0e\x3f\xf0\xdf\x9c\x39\xfc\x3d\x0f\x9d\xe2\x6c\xc2\x8f\x3c\x74\x72\xbe\x11\x7e\xe5\xa1\xf3\x43\x10\xa6\x7d\x25\xcb\x84\x9f\x0e\xdd\xd3\xe1\x5b\x9e\x68\xb7\xf3\x6f\xd6\xf3\xb9\x88\xe1\x67\x9e\x38\xaf\xfc\xd4\xff\x31\x10\x0f\xf0\x57\x7e\x83\x5c\x0c\x7f\xc7\x6f\x10\xc5\xf0\x8f\xfc\x06\xb5\x31\xfc\x13\xbf\x41\x1d\x0c\xff\xc0\x6f\x50\x17\xc3\x3f\xf3\x1b\xd4\xc3\x20\x04\xff\x88\x9a\x2e\x86\x54\x3d\x10\x0c\xb1\xe0\xbf\xe8\xf0\x21\x09\x84\xf2\xf9\x93\x78\x4c\x20\x90\x4f\xc6\xb3\x10\x22\xc1\x7f\x2a\x04\xf5\xef\xe6\xe0\xcb\x84\x58\xdd\x04\x05\x49\xf1\x7c\x13\x2c\xee\x52\x58\xcb\x84\x5f\xa2\x20\x84\xa5\x7c\x4a\xa2\x38\x85\xa9\x7a\x52\xf7\x03\xcd\xe5\x63\x6e\x2e\x37\xd3\x6f\x95\xd0\x84\x77\x82\xbf\xaf\xf8\x08\xae\x54\x42\xf5\x9a\x9a\x7b\xc1\x3f\x21\x4b\x4e\xcd\x6c\x52\xb1\x44\x87\x8d\xfa\x32\x13\xf3\x83\xf4\x47\xc1\x7d\xe7\xe5\xbb\xb7\x1f\x3e\xde\xc0\x42\x3e\x7f\xfc\xf9\xfd\xf5\x2b\xb8\x95\x8f\x3f\xbe\xb9\xfe\x09\x26\x82\xdf\x20\x52\x8d\x34\x95\x1f\xd0\xcf\x02\xbd\x44\x02\xc4\x68\x23\xc6\x8a\x40\xc1\x18\x1e\x44\x2d\xc5\xde\x20\x9c\x2b\x9a\xe1\x57\xe5\x91\x2a\x97\x95\xf4\xd4\xda\xa1\x11\x19\x63\xe7\x56\xad\x20\x1e\xb9\x63\x59\xc9\xb5\xe0\xcd\xe6\xaf\xb6\xdd\x6c\xfe\x5a\xd2\x0f\x25\x22\xb5\xed\x6a\xe5\xba\x46\xa2\x83\x8d\x2b\xb9\x1e\x86\x0f\xa2\xee\x2a\x16\x7e\x67\x78\xaa\x58\xf2\x54\xf1\xff\x2f\x93\xfc\xff\x7d\x86\x10\xa2\xf9\x3c\x11\x69\x09\x21\xc4\x7b\x78\x27\x0e\xb1\xcf\x44\xf9\xd9\x2c\x84\xbe\xb6\x32\x03\x88\xc6\x53\xfd\xc7\x72\x74\x1c\xbf\xa1\x16\x42\x5f\x06\xd6\x94\xc4\xc8\xe7\xc3\x8e\x05\x73\xd4\x94\x15\xee\x76\x4d\x74\x6f\xaa\xc4\x59\x55\xd6\x9b\xb4\xb6\xaa\xb2\x8f\x41\xa9\xb7\xd9\xcd\xe7\x7b\x78\x71\xd8\x8c\xc9\xf1\xe9\x70\xb5\xe0\xd3\x61\xce\xfc\xb6\x11\xee\x42\xc8\x33\x5b\x31\x08\xf8\x67\xa1\x6c\xb1\x2e\xc2\xab\xf8\x02\x07\xa3\x78\xcc\xd3\x51\xdc\x6a\x8d\x0b\xe4\x09\xef\xc5\x51\x28\x91\x6f\xd4\xc3\x89\x2b\x41\x74\x90\xf9\xd9\x28\x1e\x2b\xaf\xaf\x1b\x71\x42\xf7\x16\x80\x96\xbe\x3d\x68\x07\xc1\x23\x83\xfd\x29\x5f\x9e\xb8\x04\x65\x5e\x88\x7d\xa7\x30\xe3\x2f\x50\xa2\xef\x79\x51\xaa\x9f\x99\x6d\x37\xaf\xd1\xcc\x44\x2c\xf2\xf9\xcc\x58\x2f\x49\xe0\x3e\x1a\x43\xca\xdd\x8b\xa6\x0a\xbd\x52\x89\x30\x94\xb6\x5a\x38\xd4\xd4\x7d\x64\x6e\x42\x3e\x4b\x78\xa8\xee\x74\x9b\xdb\xf6\xf2\x8a\xda\x36\x9a\xf2\x35\x9a\x42\xf9\xf6\x48\xa0\xca\xa7\xc5\x85\x98\xaf\x50\x7e\x9f\xbd\x9e\x57\xe5\x4f\x1e\xe3\x8b\xf8\x2a\x55\xd5\x07\xa3\x74\xcc\xe7\xc3\x29\x4a\x46\xe9\x18\x52\xcc\xe4\x6f\x69\x9e\x3f\x56\x48\xca\x22\x90\xb8\x0b\xe9\xf1\xe4\xc4\x79\x0b\x29\xbe\x48\xaf\xc4\x05\x56\x42\xfb\xa2\x6f\xa2\xb4\x88\xf1\x1e\x5e\x9a\x83\x57\x3d\x65\x33\x51\xf8\x92\xff\xaa\xef\x03\xc1\xf0\x8b\xa8\x71\xe9\x9d\x65\xe1\x51\x5e\x8a\xe1\xd4\x94\x7a\x27\x8c\x74\x83\x65\x4f\x15\x84\xfc\xbd\xe0\xdb\xe2\xb2\x54\x56\xbb\x75\xbf\xab\xd6\x04\xca\x38\xe1\xab\xae\x45\xc5\x7b\x10\x1b\x11\x3f\xd6\xb9\xcf\xfd\x53\xb9\xc2\xaf\xbb\x58\x07\xef\x61\x1e\x2c\x97\x35\xdb\xf9\xad\x19\x78\xed\x18\xe7\xc1\x32\x15\x71\x5d\x1f\x5e\x98\xe5\xf9\xbb\x3f\xd1\x17\x55\x71\x38\xab\xab\xf6\x1f\xfe\xe4\xd0\xc2\x99\x42\x67\x75\x55\xfe\xf3\x9f\xab\xb2\xe6\x76\xa3\xbf\xfe\xa9\x9a\x02\x8d\x67\xeb\xba\x96\x8a\x3f\x59\xe3\x74\xb9\x9e\x89\xba\xdb\x51\x1a\xe2\xcf\x55\x29\x51\x7c\xcd\xe6\x58\x8b\xa7\x76\x47\x89\x8a\xa8\x29\x1b\x3d\x59\xf6\xde\x5f\xd5\x75\x7f\xf2\xe7\xba\xaf\x49\x96\x9a\x4e\xf8\x4f\x76\xa2\x44\xe9\xd4\x94\x4d\xbe\x50\x76\x23\xe2\x44\xd4\xde\x13\x06\x29\xcf\xca\x14\x00\xad\xe0\xb5\x50\xfa\x5c\x89\x22\xdd\x8b\xf0\x32\xbe\xc0\x3a\x2a\xfa\x28\x1c\x83\xfe\x6d\xb5\xc6\x3a\xe5\xfc\x3c\x35\x69\x69\xf9\x7a\xde\xbb\x20\xd9\x43\x12\xdd\xd7\xba\xd6\xfe\xe3\x9f\x9a\x3f\x49\xd7\xd5\xd5\xb6\x14\x87\x00\x4c\x66\x5e\xdf\x2a\x84\x5e\x7b\xf3\x4e\x9e\x33\xcc\x63\xad\x42\xc0\x37\x0a\x0b\x97\x50\x3e\x7a\x89\x62\x88\x15\x46\xc7\x28\x36\x54\x14\xc4\xce\xed\x63\x2a\xde\x29\x82\xa6\x15\x3c\x8b\x9d\x6f\x7e\xfe\x78\xfd\x61\xf2\xfe\xfa\x66\x72\xfd\xdd\xf5\xf7\xd7\x6f\x3f\xc2\xaa\x74\x49\x74\x3a\x0c\xd9\x06\xa5\x10\x62\x7c\x1e\x28\x56\xeb\xcd\x09\x12\x22\x83\x56\x87\xa0\x1d\x94\xd3\xc9\x1e\x5e\x55\x91\x78\xf6\xd9\xf0\xe7\x1f\x04\x2a\x4f\x1b\x48\x42\x5b\xdf\x6f\x65\x06\x18\x6a\x24\x1f\xf0\x15\x0a\x73\x24\x19\xe9\xe0\x84\x41\x2b\xbd\x8a\x0f\x69\xb6\x82\x89\xd7\x12\xef\xcb\xe0\x02\xeb\x85\x6e\x45\x63\x1e\x8e\xa2\x56\x6b\xbc\x87\xb7\x82\x6f\xb3\x80\x20\xc7\xdb\x33\x38\x44\x53\x7b\x1d\x50\xe4\x38\x67\x78\x9c\xd3\x44\x24\x39\xce\x1b\x1f\xe5\xdd\xc3\x77\x27\x66\x55\xd3\x94\x62\xb4\x10\x63\xdb\xce\xbc\xd7\x73\x4b\xb2\xd4\xb6\xf5\x3d\x0e\xb6\x6d\x64\xcf\xad\x14\x73\x9e\xdb\xf7\xed\xe1\xf5\x89\x7a\xbf\x93\x44\x5b\xca\x1f\xb5\xef\x10\x1e\x4e\x11\xd5\x0e\x40\xec\x07\x2d\x99\x81\xdf\x8e\x69\x36\x23\x60\x47\x07\x85\x6d\x7b\x82\x62\x49\xf9\xa2\x18\x2c\x73\x17\x01\xde\xed\xd4\xab\xba\xfc\xc3\x3c\x27\xfa\x59\x79\xec\xe5\x46\x0a\xe6\xdb\x43\x1c\xa4\x3a\x9e\xa8\x6d\x37\x63\x27\x7b\x35\x5f\x45\x6e\xad\x6f\xbe\x17\x09\xc3\x6f\x4c\xef\x18\x52\x56\x8b\xb1\x09\xed\x28\xf0\xfe\xec\x51\xec\x76\xe8\x37\x67\xce\x5f\x0b\x78\xed\xcc\xf9\x6f\x02\x43\x84\x22\xe7\x43\x2b\x72\x5e\x3f\x6b\x3e\x8a\xc2\xba\x7e\x7b\xca\x09\x8b\xbd\x16\x50\x71\x3e\x7b\x64\xbf\x09\x15\xa1\xa9\x62\x3f\x65\x96\x54\xb3\x19\xb6\x8d\xe6\x82\xcf\xea\x88\xa0\xb5\xa8\x98\x37\xaa\xdd\xff\x8d\xe0\x33\xb4\x95\xd4\x0e\x3e\x9b\xa1\x6f\x04\xbc\x15\x18\xe6\xf2\xe1\x4e\x3e\x1b\x66\x13\x83\xfa\xb6\x55\x5c\x21\x7b\x23\xd4\xc5\x5c\xaf\x04\x4c\xeb\x2e\xbb\xc2\xdb\x7d\x1e\xb1\x9e\xcd\x0f\x83\xd9\xb3\x5f\xe4\x08\xde\x0b\x59\x9f\xa5\xe1\x82\x05\xd6\xad\x55\xa4\xe5\x20\xc2\x02\x2b\xaa\xa6\x7f\x97\xf9\x20\x2d\x8b\xf4\xdc\x2f\x49\x58\x18\xbe\x91\x49\x2b\xf1\x14\x6d\x2f\xb7\xf3\x7e\x7f\x32\x3e\x56\x92\x19\xc4\x4e\xb9\x68\x21\xb4\xe6\xcd\xe6\x1a\x0f\xad\x97\x4b\xff\x7e\x25\x66\x16\xb3\x2c\xdc\x32\x61\x8e\x60\xc6\xd5\x1e\x6b\x09\xb8\xe3\x6a\x87\xb5\x04\x6c\x78\x38\x9a\x8e\xe1\x91\x6f\x76\xbb\xed\x1e\x16\x7c\x63\xdb\xef\xd0\x06\xc3\x03\x6f\x6e\x76\xbb\xa6\xef\xbc\xf8\xe6\x47\x7d\x9d\xd2\x0b\xf9\x6d\x53\x92\x1b\x7c\x2a\x77\xc5\xf0\x29\xf1\xa9\xb1\x54\xb3\x1a\xd7\x2d\x67\x32\x2b\xec\x24\x37\xa3\xd9\x18\xc5\xcf\xd2\x56\xe8\x44\xf0\x20\xf0\x3e\xa3\xe9\x0f\x2f\x56\xab\xad\x13\xc2\xc2\xf2\x74\x32\x3b\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\xee\x74\xdb\x81\x13\x41\x58\x6e\x5d\xe1\x98\xe2\x0c\x29\xc7\xfd\xfd\xd9\xc3\x10\x6d\x78\x52\xf5\x76\xd7\x61\xda\x96\x48\xc0\x06\xa6\x60\x4d\x66\xe6\x9a\x91\x48\xdf\xb3\x0d\x33\xee\xc2\x9d\x86\xc2\x12\x08\x98\x7b\x8b\xe3\xb2\xb5\xd9\xb7\xbb\x9d\x55\x92\xc4\x58\x9c\xa3\x35\xbf\x95\x99\x77\x3b\xeb\x83\xb2\xdb\xa9\x7e\x5e\xe7\x3e\x8a\x9a\x97\x8e\x87\x9f\x04\xda\xc8\x23\x7e\x63\x4e\x8f\x7c\x39\x8b\x78\x0c\x77\x12\x71\x84\x60\xae\xfa\x7e\xe4\x1a\xbb\xe9\x2d\x7a\x56\x16\x08\x6b\x13\x84\xc7\x63\xd6\xbe\x40\x13\xc1\x1c\x21\x9f\x3f\x9e\xdf\xe1\x4b\xf7\x64\xae\xfc\xf6\x73\xe4\xf3\x15\x0a\xf0\xb3\x14\xb7\xee\xae\x1e\x4f\xd7\x9a\x70\xff\x79\xaa\x4b\x25\xfc\x1e\xc5\xca\x89\x44\x3c\x34\xbe\x45\x3e\x4f\x9e\x99\x5b\x3c\xe7\x48\xa8\xb9\x85\xed\x2d\x8b\x20\x62\x77\xb0\x64\x3e\x08\x96\xc0\x86\xc9\xcc\x3f\xa3\x08\xef\xf1\xc5\xec\x32\xb9\xc0\x9f\x90\x80\x59\xab\xa5\xf8\xac\x17\xbc\xb4\x75\xf9\x07\xf4\x8d\x02\x1c\x2f\xa0\x7c\xf5\x85\x05\x1b\x8c\xd9\x41\xf0\x73\xed\x5c\x54\x27\x31\xd9\xa0\x73\xf3\xed\xcd\xf1\xb5\x55\x1b\xd0\x59\xf4\x9d\xb0\xfa\x99\x38\xdd\xec\x51\xe0\xbd\xba\xf0\x6d\xb7\x3b\xb5\x91\xd4\xd6\x39\x2b\xf9\xa8\x6e\x60\x8a\x41\xee\x9c\xe1\x97\xf6\x4c\xf4\xe4\x9e\x89\x86\x39\x3f\x1f\x0c\x65\x6f\x1e\x51\x0c\x66\x6f\x40\x90\x19\x26\x36\x39\x0f\x0f\xbf\x62\x66\x12\x30\x7b\x6a\xbb\x99\x5c\x72\x05\xd5\xd4\xff\x15\x2d\x9a\x9c\x1f\x9b\xbf\x0f\x3f\xa3\xc7\xdc\x61\xf3\x33\x5a\x60\xcc\x64\x4a\xf5\x26\x47\xd5\xce\x66\xb7\x9b\xa3\x0d\x08\x78\x1c\x89\xb1\xaa\xb3\xbc\x98\x2f\x20\xde\xed\xd0\x8b\x8a\x67\xc7\x06\xeb\x7d\xfe\x9e\xbf\x18\xdd\x89\x31\xdc\xf0\x66\xf3\xbd\x6d\xa3\x22\xb4\xdc\x7b\x15\x6a\x2d\xb3\xda\xd2\x6f\x18\x3e\xf2\x1c\x8b\x9c\xc9\x26\xef\x85\x72\x18\x96\x3b\x65\x21\xe4\x02\xc8\xa7\xdb\x22\x71\xa3\x6e\xc2\x42\xeb\xa1\x59\x61\x3c\x5a\x89\x31\xe7\x53\xb6\x52\x1d\x7f\x81\x77\xbb\x6f\xd0\x8b\x27\x60\xfc\x54\x02\xf7\xeb\xd1\x74\xcc\x37\x0a\xe1\x7e\xdb\x8a\x9c\x9f\x14\xd2\x45\x9b\x26\x7f\x54\xd7\x6f\x29\x44\x0c\x53\xd8\x1e\x11\xa0\x2c\xdd\x97\xf1\x74\x75\x8f\x3e\x3a\xd1\x3c\x5b\x15\xed\x21\x37\x85\xed\x3c\x8e\xee\xd9\x8d\x80\x68\xce\x3e\x4a\xd4\x66\x1d\xd5\x69\xc9\x7e\xcb\x09\x7f\x51\xf7\x51\x6e\x12\xd9\xe0\x7b\x98\x4a\x2c\x0c\xaf\xd0\xd4\x24\xa8\x1e\x5c\x0b\xd9\x88\xc6\xb7\xfb\xf2\x87\xe6\x0d\x4c\x15\xb6\x8e\x77\xbb\x17\xb9\x90\x96\xf3\xb9\x50\x6b\x97\x27\xcc\x45\xb9\x54\xdd\xa1\x23\x38\x77\x1c\xd6\x43\xca\xd0\x7c\xa5\x3d\x54\x27\x3e\x1d\x11\xa0\xe3\x03\x99\x30\xc2\x4d\xae\x2b\x56\x5f\xf1\xd1\x67\x7d\x49\x55\xb5\xba\x17\x07\xb9\xf4\x34\xeb\x0a\xf6\x58\x77\xab\x8e\x90\xf8\x5e\x2e\xf4\xcd\xf0\x3d\xfb\x28\xe7\xe1\x46\xcf\xf2\x9d\x80\x8f\x59\xfc\x99\xda\xe0\x3d\x65\xdb\xe0\xc2\x69\x2e\x8b\xa3\x67\x3c\xcf\x0f\xef\x8c\xa5\x1e\x23\xd4\x53\x5a\x4a\xd2\xf6\x94\xc6\x90\xb4\xfb\x70\xa0\x9a\xcb\x1d\x6f\x33\x8f\x75\xd2\xe9\x32\xd2\xe9\x02\xe9\xf4\x18\xe9\xe4\x76\xa8\x79\x7c\xbe\x2c\xa0\x37\xe9\x75\x18\xe9\x65\xf7\xbc\xb5\x07\xac\x3d\x80\x8e\xcb\x72\x7f\x56\x7d\xef\xa4\x72\x77\xa8\xde\x58\x5b\xba\x11\xee\xc8\x33\x25\x0b\x0d\x5e\xba\x17\xae\x14\xfd\xef\xe0\x56\x5b\xd9\xd3\x23\xfd\xd5\x91\x1d\x51\x59\xc7\x94\xd9\x42\xf7\x07\x07\x3a\x26\x8f\x9a\xb8\x9d\xc4\x5c\x5a\xd9\xeb\x68\x1d\x53\xdb\xd3\x2a\x26\xa5\x51\x9a\x65\x1a\xa5\xbb\x4c\xa3\xb4\x2a\xb4\x40\xf7\xb9\xd1\xf2\xc6\x68\x6e\x1e\xb3\x40\xa0\x0b\x1e\x56\xf4\x2b\xb7\x3c\x2c\xf4\x2b\x13\x1e\x3a\x92\x46\x81\x87\xaa\x0e\xe7\x9a\x87\xce\x9b\x70\x1e\x84\x41\xfa\x08\x1f\xf8\x02\xde\xf1\x89\xe3\xdf\x26\xf0\x99\x4f\x54\x40\xb9\x17\x7c\xa2\xf9\x77\xf8\xc4\x27\xce\x32\x5a\xc0\x7b\x3e\x71\xbe\x7b\x4b\xe1\x86\x07\x43\x6b\x72\x6b\xb1\x9c\x60\xfd\xa8\x52\x96\x32\xa5\x44\x96\xbe\x54\xa9\x91\x49\x35\x44\x6c\x11\xea\xe7\x17\x74\x78\x9d\x34\xf8\xea\xa4\x68\x7d\x43\x2c\xa7\xae\xff\x2c\x3e\x4f\xcf\x09\xac\x39\x22\x97\x97\x09\x3e\x27\xb0\xe4\xeb\xab\x2b\x02\x53\x4e\xdb\x8a\x29\xfe\xac\x62\xdd\x75\xf0\xb9\x7a\xf0\x3c\xcc\x5c\x98\x73\x57\xce\xe6\xa5\xbb\xdb\xb9\xfa\x8a\x0e\xf2\x5c\x5c\xba\x43\xc2\x5c\x85\xe4\x91\xe0\xef\x90\xc0\xb8\xc9\xc5\x6e\x27\x38\xe7\xd7\x43\x14\x70\x15\xc7\x8d\x30\x17\x42\xbe\xc6\x0c\x85\xfc\x05\xfa\x84\x04\x7e\xfe\x1e\x83\x78\x86\x22\xae\x1a\x90\x44\x1e\x91\xc4\xdf\xf9\x39\x44\xcf\x38\xc5\x80\x44\x8b\x87\xad\xe5\x15\x27\xc3\xe9\xf3\x88\x4d\x9f\xc9\x7c\xe4\x7c\x89\xf1\xb3\xe8\x8a\x53\x99\xb7\xd5\x82\xe8\xb9\xcc\xab\xf2\xad\x65\x63\xa6\x15\x53\x10\x05\x1c\x89\x67\xd1\x39\xc1\xaa\x74\x2a\x73\xf2\x25\x66\xb2\x57\x2a\x65\x59\xfe\xc4\x5d\x8c\x2f\xd2\x2b\xde\xbf\xf0\x47\xf3\x56\x6b\xcc\x25\x9d\x19\x40\xf0\x9c\xd3\x6e\x0f\xd2\x73\xde\xc7\x17\xea\x1a\x71\x1e\x5e\x5e\xa6\xbb\x00\x92\x16\x4f\x2f\x92\x2b\xb7\x9c\x3f\x84\x50\xe7\x4f\x54\xfe\x4c\x82\x34\x3a\x3f\x9f\x8f\x77\x9c\xd0\xfe\xb3\x19\xf8\xfb\x7c\xb5\xbe\x3f\x58\xad\x7c\x69\x22\xb5\x34\x81\x5c\x1a\x9f\x47\x72\x69\x12\x1e\x9c\x7b\xb0\xe6\xb1\x5a\x2d\x31\x5a\x9f\x9f\x8f\x61\xca\x09\xf5\xec\xa5\xbe\xea\xe9\xea\x8a\x7b\xaa\x3f\x53\xd9\x83\x67\xd3\x96\xba\xb8\x77\x7d\x7e\x6e\x3a\xa3\x3b\x3f\xb5\x65\xcd\xe7\x6a\xd5\xa7\x57\x57\xfc\x3c\x29\x06\x12\xaa\x82\xe1\x61\xc1\x60\x8e\x5c\x75\x7f\xc0\x94\x93\x73\x3f\xbf\x4c\x62\xca\x39\x8f\x32\x4a\x36\x1c\xbe\xf5\xdf\xb2\xe5\xf0\xfc\x9a\x5d\x9f\x85\x2d\x6e\x66\x75\x7a\xce\x7d\xe3\x79\x81\x96\x2a\x90\x1f\x7e\x16\xaa\x29\x9f\x9e\xa7\xb8\x98\x88\x37\x95\xfb\x9f\xdb\xe3\xcb\x4b\xda\xd9\x89\x11\x1d\x5f\x5e\x92\xde\x4e\x8c\xc8\xf8\xf2\xb2\xbf\x13\x23\x77\x5c\x94\x79\x55\x94\x19\xc9\xb9\x17\xa5\x6f\x6f\x0f\xbf\x81\xb8\xba\xea\xdb\xb4\xdb\x2d\x65\xfa\xee\x64\x26\xf9\x40\x7a\xd9\x13\xed\x1c\x14\x7c\x5d\xea\xad\x3c\x70\x5d\x0a\xfd\xd2\x60\x7e\x3b\xf8\x4c\xdb\xd0\x29\x7d\xce\x18\xfa\xed\x3d\x2a\x3b\x39\x3c\xa9\x2c\x32\x9a\xa2\xbc\x8e\x1f\xaa\xc6\xbc\x01\xbf\x43\xad\x18\x67\xb2\x22\x31\xfa\x38\x36\x14\xfb\x43\x46\xb1\x2b\x11\x72\x33\xe3\x6e\xb8\x18\xdd\x8c\x9d\xc9\x2d\xf8\x3c\x68\x89\xd1\xcb\x31\x24\x3c\x0b\xed\xe1\x83\xdf\x2a\x2c\x24\xc3\x61\xc2\x12\xc7\x48\x2a\x51\xa9\x0b\x7f\x8f\xf2\x8b\x77\x20\xca\xac\x16\xf3\x6e\xf8\x5f\xea\x46\x26\xe8\x4c\xf2\xae\xac\xb9\xaf\xbb\xb2\xe4\x21\x6a\x05\x12\x96\xbb\x17\xd3\xcb\xf4\x62\xda\x6a\xe1\x64\xb4\x6e\x4d\xc7\x7c\x39\x8a\x86\x53\x96\x9e\x4f\xcf\xc9\x78\x2f\x9b\x91\x9c\xae\x66\xca\x96\x15\x5c\xbf\xd0\x1c\xc0\x6e\x77\x90\xae\x2e\x87\x35\x2c\xc0\x6e\xb7\xac\xd3\xd6\xea\xfb\x63\x75\xc6\x9c\xf8\x5f\xa8\x2b\x2d\xa1\x42\xb4\x37\xf9\x42\x11\xa0\x92\x76\xc8\x05\xb7\x3f\xc2\xaf\x1c\x2d\xea\x4c\x3a\xcc\x95\xd3\x0b\x5d\xe1\x07\x74\xa7\x6c\x3b\xca\x17\xd0\x7e\x28\x6d\x87\x9f\xf8\x0a\x7d\xc0\xf0\x2d\x77\x2f\x7e\xca\x44\xaf\xdf\x5e\x60\xf4\x23\xff\x69\xf4\x6d\xab\x35\xc6\x41\xd8\x58\xec\x76\x09\x5a\xc0\x8f\xf0\x61\xf4\xe3\x18\x9f\x45\xbb\x1d\xfa\xb5\x42\x50\x2f\xf0\x5e\xf6\xe9\x67\x7d\xd3\xae\xbe\x19\x17\x51\x49\xdd\x97\xef\x8e\x53\x26\x8a\x61\xda\x3f\xfb\x39\x7b\x42\x2e\x50\xd2\xf1\x3a\xfd\x76\xaf\xd3\xc7\x50\xa4\x93\x22\x7d\x80\xa1\xf9\xb3\xb3\xc8\x0a\x60\xdb\x2e\xde\x08\xde\xed\xd6\x95\x6b\x6c\xb7\xa6\x86\x03\x81\xef\x5f\x4b\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\xf6\x96\x6f\x0a\x55\x9f\x46\x97\x29\x06\x57\x47\xab\x1b\x7d\x1c\xf3\x74\x0f\xb7\x47\x32\x43\x53\xfd\x2d\x58\x19\x75\x60\x61\x98\x22\x21\x1b\x2c\x52\x32\xaa\x66\xf4\x71\x0c\x01\x9f\x1b\x2b\xad\x40\xe2\xd2\xe0\x2a\x3c\x3c\x24\x85\x3a\x5e\x1d\x68\x14\x97\xae\xa4\x18\x86\xe7\x01\x9b\x49\x2e\xed\xb8\x5c\xc1\x95\xab\x2e\xdf\x8c\xb9\xbe\x2e\x6a\xf4\x72\xcc\x83\x7c\x18\xf1\x1e\x02\xdb\x46\xdf\xa0\xc5\x81\xc0\x6b\xb2\x54\xd2\xad\xdb\x92\xcc\x6c\x72\x9b\x27\x9d\xc8\x59\x96\xa4\x4d\x22\x0b\x63\x38\x58\xf8\xc5\xd1\xc2\xe7\x27\xe2\x07\x3d\x77\x04\x04\x1e\xb9\xe3\x6c\x2d\x55\x38\xd1\xc3\xb5\x3f\x51\x46\xe5\x7d\x13\xa6\xa4\x57\x73\x03\xbf\xc9\x4a\xcb\x5a\x0c\x75\x9d\x86\x41\x48\xa9\x41\x2b\xea\x52\x0e\x89\x68\x24\xd0\xcf\x5b\xff\x33\x55\x36\xca\x55\x66\x7d\x6b\xd3\xba\x71\xbc\x41\xa6\xae\xce\x61\x5d\x38\xef\xc2\xbf\xbb\xe4\xd5\xd5\x95\xab\x4a\xab\x18\x1b\xf5\xc5\xbf\x3f\x59\xdc\x20\xaa\xbc\x7c\xaf\xf3\x64\xf9\xfe\x51\x79\x8d\x07\xa1\xfe\xa8\xff\x7d\xbe\x70\xf0\x4a\x09\xe0\x4f\x9c\xf0\xba\x7c\x87\x2b\x5c\xca\x27\x97\xe2\x6d\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\xf5\x51\xb1\x3d\x3e\x7b\x44\x87\x10\x10\x1e\x51\x15\x6a\x25\x95\x83\x6b\x8c\xa0\x54\x5c\xfc\x32\x27\xc4\x17\x10\xe7\x9c\x10\xbf\x2d\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\x93\x5b\xe4\x95\x8c\xf3\xd4\xa3\x11\xde\xeb\x94\x37\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\xe9\xe5\xe0\x02\xa3\x98\x87\xa3\xb9\x8a\x3b\x34\xc6\x43\x14\xa0\xb8\xbc\x62\x6a\xb1\xaa\x69\x89\xd2\x60\xb1\xa5\x0a\x63\x5f\x58\x4f\xbf\xf8\xe6\x47\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\x99\x01\x6d\xec\xff\x3f\xc4\xfd\xfb\x7e\xdb\x38\x92\x3f\x80\xfe\xaf\xa7\x90\x78\x66\xb9\x40\x04\xd3\xa2\x24\xdf\xe8\x20\xda\xb4\xe3\xf4\x64\x26\xb1\xb3\xb6\xbb\x7b\x7b\x35\x5a\x2f\x2d\x41\x16\x3b\x14\xa9\x21\x21\x3b\x6e\x4b\xe7\xd9\xcf\x07\x85\x0b\x41\x8a\xf2\xa5\xa7\xf7\x77\x7a\x77\x62\x11\x04\x71\x2d\x14\x0a\x85\xaa\x6f\x25\x93\x74\xbe\x25\x02\x66\x11\xcf\x47\x82\xa4\x3a\x5a\x8f\x58\xd8\x35\x0f\x1c\x27\x60\xc4\xc1\xd7\x0e\x41\xed\x76\xd6\x4e\xb0\xd1\x32\xa1\xde\x3e\x2e\x6c\x85\x9f\x82\x3f\x29\xb0\x86\xab\x01\xb4\x96\x39\xcb\xde\xdf\xb2\x84\xaf\x56\x8e\x63\x85\xcf\xf2\xfb\x5b\x7d\x27\x0f\xb7\x18\x64\x6b\x23\xb6\x0c\x8c\xd8\x98\x77\xcd\x6b\x7d\xea\x21\x1c\xf6\x06\xd4\x04\x69\x82\x77\x5c\x33\x63\xff\x5c\x46\x19\x9b\x58\xc6\x6c\xa5\xf8\x3a\xfe\xde\x76\x9b\xe8\x4a\xb0\xe2\xc3\x23\xed\x33\xee\x4b\x45\x09\x28\x36\x9e\xf4\xc0\x4a\x3c\x39\x11\xab\x15\xd2\x3f\x69\x34\x78\x5c\x07\x99\x79\xf1\xb8\xc6\x0d\xe7\xda\xa1\x94\x15\x28\x4a\xab\x15\xa8\x49\xf9\x6a\x15\x22\x4e\x98\x06\x34\x4f\x01\x84\x47\x7b\x62\xfb\x81\xbf\xe7\x93\x0d\x87\xdf\x62\x29\xef\xd5\x40\x4d\x4a\x40\x48\x7f\xaf\x8b\x4b\x41\x10\xc4\xaf\x27\x3d\xb8\xef\xbf\xd9\x0e\xdc\x92\x03\x74\xb0\xea\x04\x49\xeb\x60\x67\xa2\x7a\x1f\xea\x5a\x3f\xef\xd4\x75\x95\x43\x75\x3a\x88\x82\x04\x23\x45\xc0\x9e\xd3\x96\x22\x7c\xce\xd3\x8c\xd1\x6c\xd3\x13\xbc\x00\x5e\xda\xdb\x0a\x2b\xd5\x3f\xd8\x1a\x93\x0a\xcc\x8c\xcb\x90\xa1\x5d\x0c\x52\xb6\xca\xf5\x05\x70\x54\xea\x82\xa2\xb7\x0a\x1f\x01\x36\x4c\x46\xab\x15\xab\x06\x5e\x89\x86\x82\x74\x47\xa5\xb0\x47\x52\xf3\x07\x93\xa6\x63\x56\xf9\x7b\x25\x2b\x71\x4d\x3b\x60\xf4\xdd\xe0\x88\x7b\x5f\x89\xbe\xab\xb4\x6d\xd9\xc0\x00\x7a\x8d\x09\x43\xbd\x3d\x8c\x9c\xe2\x0d\x84\x13\xef\xed\x05\xbd\x3d\xa5\x80\x04\xe5\x22\x54\xb4\x57\xae\x68\x43\x2d\xa8\x6a\x05\xdc\xdd\x7e\x17\xa3\xbe\x6a\x40\x9b\x7b\x1f\xdf\xb4\x04\x31\x1c\x62\x34\x1c\x79\x60\xf5\x06\xcc\xd0\xb4\x6c\xab\x21\x5c\xa6\xcf\x12\x25\x51\x06\xcc\x32\x1f\xfd\xee\x61\xe0\x77\x0f\x95\x5a\xb4\x68\xe7\xfe\x8b\x07\x04\x0c\xe6\x40\xb3\x58\x0c\x85\x48\xb3\x06\x41\xee\x7f\x45\xe1\x07\xaf\x1c\x84\xee\x96\x41\x90\x76\x77\xe5\x51\xd8\x6e\x8b\xf7\x47\x86\xe1\xf0\x95\x2d\x05\x20\x44\xc7\x18\xda\x39\x24\xa2\xad\x4e\x23\x69\x46\xc9\x70\xe4\xba\xf2\xc4\xe5\xe3\x61\x32\x2a\x9d\xca\x23\xda\xf2\x01\x45\xdc\x74\x32\xb2\x3b\xf4\x84\xd5\xde\x66\x9f\x9e\xb1\x61\x32\x73\x94\x58\xd3\x53\xe9\xf4\xd1\x2b\x3b\xbd\x07\x21\x6d\x3a\x0d\xe8\xb7\x53\xee\xaa\x27\xd2\xca\xea\x89\x8d\xce\x26\xe5\xce\xfe\xb9\xfd\x94\x8d\xda\xda\xd9\xfd\xce\x2b\x3b\xab\x81\x70\x35\x09\x4a\x03\x48\x41\x83\x36\x8d\xda\x5d\xaa\x31\x91\xfc\xe3\x14\xb9\xef\xbf\xa0\xbd\x7b\x7d\xd9\x5e\xed\xca\x6b\x30\x5b\xab\x31\x69\xe1\xd6\x00\x78\x6e\xaf\x88\x49\xdb\x28\xf0\x2c\x5b\xe0\xfc\x51\xbe\x44\xb6\x62\x11\x31\x09\x6f\x69\x7a\x9a\xa5\xf3\x8d\x03\x65\xa6\x23\x08\x4b\x44\xd3\x59\xdd\x46\x25\x46\x61\x20\xfe\x09\xa4\x80\xb8\xd8\xb4\x74\x9e\xd3\xc5\x16\x33\xf0\xbb\xc2\x0c\x7c\xae\x42\x12\x2f\xd1\x04\xf4\x0a\x77\x10\x5b\x98\xa3\x39\x59\xd4\x9b\x0f\x83\xe1\xb6\xbc\x68\xbd\x5d\xad\x66\x54\xba\xa0\x40\x84\x7f\x0c\xa8\xf0\xb1\x74\x84\x44\x19\x0d\xd1\xc4\x78\x9c\x1f\x67\xef\x1e\x8e\x1f\xda\x6d\x9c\xa3\x98\x3c\x90\xbb\xc1\x1c\x4d\x20\xba\x31\x0e\xc4\x5f\x15\x73\x0a\xac\x02\xa8\xba\x82\x9b\x08\x19\x1b\xca\x3a\x6e\xa1\x31\x9d\x96\xed\xce\xed\xb2\x22\x34\x25\x73\x32\x1c\x2b\x23\xa8\x87\x91\xa0\xad\x60\xac\xcd\xd1\xf5\xc5\xbb\x6a\x0c\x7d\x20\xb1\x22\x98\xea\xc5\x99\xba\x10\xdb\xeb\x05\xe2\x5f\xb8\xea\x52\x41\xac\x8a\x38\xb7\xf2\x32\x0b\x08\xab\xfb\x9a\x85\xa0\x90\x6d\x13\x3a\x1c\x79\xca\x72\x57\xb0\xba\x56\xe2\xba\xfe\xee\xd0\x37\x89\xc8\x27\x3b\x1d\xfc\xb6\x63\xad\x0d\x14\xad\x56\x9a\x87\x27\x36\xf9\x3c\x61\x01\x1c\x0d\x92\xfa\x48\xf6\xab\x55\x27\x78\xd1\x2a\x82\xbb\xbf\x62\x15\xf5\x9e\xde\xde\x2e\xad\x56\xc9\x08\x95\x01\x04\xd8\x86\x32\xd5\x20\x1e\x05\x07\x20\xe4\xed\xbf\x2c\x30\x61\x6f\x4f\x41\x43\x1e\x18\xa9\xc7\x00\x8c\x97\xc4\x9f\xc3\x3d\x8c\xe4\x32\xd0\x6d\xa8\x78\xe7\x48\x55\x1e\x57\xd8\xe1\xf0\x10\xd1\x8e\xfa\xf5\x8d\xf2\x75\x39\x9e\xa1\x74\x1f\x50\x1f\x11\xae\x7e\x7d\xd3\xb6\x99\xd7\x51\xbb\xad\x88\xaa\xc5\x56\xab\xec\x1d\xd5\xa1\x9d\x07\x48\xd7\xa4\x16\x4b\x82\x7c\x08\x7c\xd0\x21\x12\x4f\x88\x52\x3e\xc8\x82\xc2\x72\x81\x0f\xd8\x30\x1b\x05\xc3\x8c\x88\xbf\x23\x21\x0f\x14\x51\xdc\x22\xef\xbd\x9e\x1e\x1a\xc9\x93\x28\xc9\x0c\x30\x51\x66\xc5\x7b\xcb\xac\xa8\x78\x40\xd7\x12\x35\x56\xb2\xef\xc3\xbd\xe0\x70\x8f\x1c\x1e\x04\x87\x07\x85\xf8\xb6\xff\x1a\xa9\x4a\x61\x99\x0f\x47\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\xee\xef\xbf\xbe\x1f\xea\x0e\xd8\x8a\xf8\x3e\x1c\x95\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\xb7\xad\x50\xe3\xbf\x2b\xc7\x06\xc0\x87\x8d\xfd\xef\x92\xe6\x3b\xbe\xc4\xb7\xde\xd8\xda\x5d\x17\x2d\x8d\xd3\x2a\x5a\x92\x04\x95\x75\x81\x98\x2c\xdf\x76\x20\x53\xde\x5e\xe2\xe3\xe5\x3b\xda\x39\x5e\xee\xec\xe0\x68\x8a\x96\x70\x7c\x73\x5d\x3e\x5c\x8e\x6c\x67\xe2\xa5\x68\x8f\xfc\xbd\xe3\x57\x26\xc5\xe8\x70\x34\x56\xbe\x64\xa8\x05\xd7\x78\xad\xdc\xea\x6f\x91\x5b\xe7\xe1\xa2\x2c\xb4\x6e\x31\xf3\xff\x23\xf2\xc1\x6b\x24\x56\xb1\xd9\x03\xbb\x83\x06\x6e\x06\x7e\x31\x17\x61\x0c\x99\xe8\x7d\x2d\xc9\x9c\x8c\x09\x0f\xc3\x36\xf2\x7a\x59\x20\x48\xa7\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\xfe\xab\x84\xdd\xde\x96\x09\xb5\x7d\x41\x4b\x13\x5b\xeb\x3a\xf1\x02\xb1\xb6\x34\xe3\x70\xed\x53\x9e\xf4\x5e\xd0\xef\x15\x93\x7e\xf0\x2a\x21\xf6\xe9\x4e\xd4\xb5\xff\x5f\x69\xba\xff\x4c\xd3\x5f\x22\xcf\xea\xa6\x1f\xf4\x2a\xb1\x92\x7b\x07\x7a\x13\x05\x85\xd0\x70\x24\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\x29\xe2\xd4\x72\xb4\xc8\x02\x4e\x4c\xf0\xd6\x1c\x97\xf1\x83\xf5\x85\x5e\x71\x31\xbc\xa4\x32\xa0\x1b\x89\x05\x4b\x14\x3f\xc6\x34\x45\xf1\xce\x12\x93\xa9\x65\xd1\x32\xc6\x64\x42\x3b\xc7\x93\xb7\xe3\xe3\x49\xbb\x8d\xa7\xc3\xc9\x88\x16\xf1\xc2\xe5\xda\x30\x58\x61\xed\x09\x0e\xe0\x1a\x6c\xd9\x9e\x8c\x2c\x3c\x76\x98\x03\x6d\x73\xa5\x38\x9b\xc4\x93\x28\x59\x3e\xa9\x88\x32\xfe\xc1\xab\xc4\xc1\x2e\x46\xdb\xa8\x2a\x4f\xe7\x15\x9a\xda\xe6\x93\xf3\x07\xb8\xdd\x41\xef\x15\xad\xec\xf5\x2a\xa7\x21\xe9\xda\x0f\x6d\xcc\xb8\x20\x1f\x9f\x74\x49\x6f\x54\x92\x55\x4b\xa4\x13\x42\x4e\x54\x60\xa5\x6e\xd8\xdf\xa9\x1c\x1a\xbb\x6e\xcb\x76\xba\xcd\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\xa0\xa2\xe0\x92\xce\xfc\x48\xb5\x48\x16\x03\xf6\x79\x90\x79\xef\x59\xe9\xf8\x43\xc8\x99\x43\x1e\x93\xf4\x7e\xd3\x9a\x03\x2e\x97\x45\x06\x50\xe3\x5d\x45\x73\x80\x55\x37\x92\x33\xd4\xb0\x5d\xbd\x24\x37\xa6\x3d\x9b\x9a\x90\x28\xcc\xba\xcb\xe7\xe9\xa7\xcb\x73\x49\xff\x2d\x4a\x33\x6c\x9a\x63\xbd\x08\x32\xc9\xf3\xf7\x82\xbd\x3d\x8b\x5e\x5e\xb3\x83\x03\x9d\x24\x0a\x92\xe1\x69\x96\xa2\xb6\x1c\x09\x3a\xab\xbb\x0f\xe6\x14\x1e\x4f\xff\x76\x79\x7e\x86\xf0\x6a\xe5\xb7\x28\xdd\xe8\x89\x78\xa9\xfc\x4e\xec\xd6\x6f\x16\x0e\xc2\x0a\xb6\xfb\x2a\x3e\x0d\x36\x04\x7d\x2d\x65\x71\x38\x6f\x6b\xb0\xbb\x64\x39\xbf\x01\x73\x0e\xbd\xa7\xae\x56\x26\xf0\x3d\xc7\x83\xd2\x98\x22\xac\xa2\xa0\x48\xe9\xbb\x6c\x86\x59\xa5\xab\xc3\xfa\x89\xd4\xa0\xa8\x5f\xb3\x68\x1e\x49\xd4\x32\x92\x55\x7a\xdf\x00\xbf\xa7\x6c\xb5\x92\x81\xd9\x33\xc2\x09\x43\x7b\xfb\x18\xdb\xe8\xac\xfb\xc1\xde\x7e\x71\x37\x73\x70\x54\x57\x5d\xb9\x58\x71\xb0\x29\xc0\x16\x12\xca\x35\x15\x36\x4a\x13\xd3\x76\x9c\x16\x75\x3e\x25\x77\x61\x1c\x4d\x20\xd9\x71\x5d\x09\x63\x8f\xf8\x36\x00\x74\x39\xc4\x89\xe5\xff\xd3\x28\xd0\x8d\xd9\x20\xb3\x5e\x04\xe5\xb2\x15\x0c\x7a\x01\x6e\x7f\xd8\x79\x56\xc3\xaa\x2d\xd3\x1d\xf2\x78\x13\x25\x93\x80\xa1\xfe\xbe\x3c\x82\xf6\xf7\x83\xfe\x7e\x41\xd6\x87\x2f\xd9\x44\x0f\x7d\x45\xd6\x9d\x3d\x5b\x19\x3f\x0b\xf3\x4f\x4a\x80\x03\x7d\xfc\xa6\x39\x3c\xa8\x2f\x9b\x91\x98\x27\xb8\x6f\x41\x11\x49\xf4\x85\x48\xe5\x30\x50\x48\x6f\x2d\x5b\x7a\x5b\xad\x5a\xdc\x0a\x8c\xea\xcb\xc0\xa8\x48\x87\x69\x94\xd5\x18\x8f\x91\x52\x60\x1e\x40\xff\x02\xef\x3f\x89\x40\x74\x2c\x84\xfb\xf2\x87\x96\x78\xdf\xd2\xb2\x7d\x4b\xcb\xf6\xda\x1a\x59\xd1\x53\x39\x32\xaa\x7f\xd8\xad\x9f\x04\x69\x30\x9b\xd5\x0c\x06\x49\xe8\xee\xff\xfc\x23\x7f\x63\x44\x63\x34\xfc\x9f\x26\x1a\xbd\xc1\xbb\x0d\x09\xe7\xaf\x49\x7a\xef\x10\xbb\x2e\x47\x99\x46\xf9\x7f\x0e\xa1\xb8\x88\x46\x81\x1c\xa7\x2d\x9d\x62\xe7\x80\xee\x9c\xe0\xa1\x3f\x52\x48\xcf\xc5\xfd\xa2\xb3\x56\x52\x6d\x39\xba\xd9\xe1\xcb\x10\x0c\xfb\x06\x8b\xe9\xa8\x72\xf9\xe2\x63\xe4\x7c\x09\x17\x4e\xd9\xdb\xa1\xea\xd8\x54\x58\x32\x56\xce\x7b\xfa\xec\xd6\xb1\xd4\x6d\x9d\x92\x5a\xb6\x6c\x02\x68\x45\x68\xb9\x65\xfc\x34\xe1\xd9\x83\xda\xe4\x08\x34\x03\x93\x42\xe7\x25\x8e\x73\xde\x5d\xd5\xeb\xca\xf2\x88\xcc\xbc\x09\x9b\x56\x3e\x97\xdb\x69\x27\x50\x58\x55\x70\x5b\x00\x7c\xed\x28\xf0\xfb\x47\xa4\x7f\x14\xf4\x8f\xc8\x9e\x1f\xec\xc1\x5d\xe4\xe1\xf6\x8b\x20\x58\x3c\x47\x5d\x83\xa3\x94\xff\x33\xe3\x1a\x40\x2b\x1c\xa7\xf9\xcc\x3a\x4a\xb5\x50\xe4\xba\x07\x7e\x87\xda\xee\xcc\x11\x3a\x03\x2e\xec\x7d\x79\xff\x5f\xd7\x3f\xbf\xff\xfc\xd3\xa9\x74\xdf\xf1\x77\x3b\x58\x62\x40\x8a\x36\xf3\x99\x43\x1e\xa1\xbc\x1a\x09\x41\x62\x4b\xbd\xf5\xc1\x12\x95\xbd\x3b\xea\x1f\x75\xf6\xbb\xfb\x7b\xde\x7e\xb7\xdf\xdd\xf3\xf7\xf6\x07\x26\x56\x35\xc3\x6d\xf8\xfd\xf9\xac\x1b\x64\x88\xed\xf8\xed\x44\xfc\x8b\xdf\x24\x88\xb5\x7d\x6c\x6f\xc8\xe4\xa8\x1b\x1c\x49\x3e\xb2\x7d\xe3\xd7\x9e\xd9\x61\x1e\x25\xe5\x9e\x66\xae\xeb\xef\x66\xa8\x83\xdf\xd9\x1d\x10\xd9\x02\xeb\xfc\x68\xe1\x36\x9b\x7d\x87\xb6\x39\x76\xdd\x4e\x8b\xf2\x01\x7f\xdb\x19\xec\x30\xb4\xc3\x71\x11\x6e\x9b\xb7\xcd\x38\x23\xfe\x86\x8b\x56\x07\xbc\x22\x48\x1c\x3e\x29\x48\xc8\x16\xf3\xb0\xbe\xc5\xa0\xfd\xb0\x9a\x2c\xf2\xd5\x49\x65\x76\x10\x76\xd3\x38\x08\x06\xbe\x8b\xfc\x1d\x86\xf1\x6e\xb7\xda\xaa\x83\x67\xa8\xa8\x67\x04\x29\x55\xf9\xf8\xa6\x5e\x22\xcc\x64\xcd\x6f\x74\xb8\x76\x64\x87\x53\xf7\x77\x7b\xe5\x79\x54\x71\xd0\xfd\xc3\x2d\xbb\xb2\x25\xc0\xe9\x7a\xe3\xdf\x6b\x4d\xa8\x10\x7b\xf7\xee\x1d\xed\xe0\x41\xcf\xdf\xb1\x48\xb8\x20\xaf\xb6\xb7\xa7\x5a\xf5\xf9\xfc\xc7\xee\x29\x0e\x7a\x1b\x83\x50\xbb\x57\x97\xa6\x86\x7d\x5f\x54\xdb\xb3\x85\xee\xd5\x38\xb4\x33\x54\x3b\xe0\x47\xdb\x37\x53\x39\xe0\x1d\x5b\xd1\x81\xb2\x96\x15\xcb\xbf\xa0\x00\x78\x54\x82\xa3\x1a\xd1\x4e\x70\x04\x57\xdb\x47\xfe\x4b\x47\x54\x46\xc3\x0f\x18\x3a\xf2\x6d\x75\xf1\x91\x1f\x1c\x01\x87\x39\xda\xb2\xe5\xd8\x14\x7b\x93\x57\x0a\x9d\x3d\x2c\xd2\x2a\xcf\xd3\x87\x48\x09\xdc\xd9\x51\x61\xdf\x37\x4e\xe3\x4b\xda\x39\x0e\xdf\xe6\xc7\x78\xf9\x16\x25\xd4\xd2\xb2\x0d\xc3\x76\x7b\x84\xf1\x00\xa5\x34\x7d\x83\x22\xba\xdc\x4d\xf0\x9b\xa8\xed\x93\x25\x4d\x70\x90\xb6\x69\xf2\xae\x33\x40\x11\x4d\x76\x97\xf8\x4d\x14\x24\x06\x00\x9b\x02\xb3\x1a\xf8\xbb\x9d\x60\xf9\xa6\x58\xa2\x69\x55\xc8\x3f\xda\xae\x64\xd7\x3d\x8d\xe6\xcb\xf8\x49\x0d\x94\xd2\xd4\xed\xb5\x68\x86\xfa\xdd\xa3\xfe\xd1\xfe\x41\xf7\x68\x8f\xec\xe1\xd5\xaa\xdb\x32\xd0\x09\x20\x17\xab\xa1\x12\x45\xd6\x1e\xe2\xdb\x62\xef\x6e\x0b\x96\xbd\xbf\xb7\xd7\xdb\x73\x33\x92\xaa\x5f\xa6\x6b\x9d\x55\xf4\x26\x6d\x23\xa4\x32\xbc\x7b\xf7\xce\xdf\xc7\x6f\xd2\x76\xf4\x46\x25\x25\x32\x49\x1a\x52\xbe\xeb\x94\x56\x9f\x91\x89\x8f\x9e\x31\x26\x28\xa6\x35\x4e\x6f\xfd\x4e\xad\x01\x62\xc1\xc6\xcd\x22\xf3\x3b\xa7\xd5\x01\x7e\xfe\x9c\x66\x55\xb4\x08\x60\xfb\xaa\xe3\xfb\x47\xcf\xdc\xf6\x97\x0a\xaa\xb7\xb8\x2c\x1a\xbc\xab\xf7\x9d\x6a\x6b\xb7\x33\xc5\x4a\x25\x79\x74\x9b\x04\xc0\x25\xeb\x98\xdb\xd1\x76\xe6\xa6\xd7\xba\xde\xa2\x0d\x7f\x79\x9a\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\x00\x1a\xee\x68\x46\x15\x20\xb9\xef\xee\x24\x68\x47\xfc\xc5\x6f\x24\x13\x3d\xdd\xed\x6e\x52\x8f\xc5\x6f\x9e\x64\x9e\xf5\x9d\x34\x4d\xdd\xd8\xc8\x0c\x7e\xa6\x68\x22\x84\x91\xdb\xb1\xa4\x2a\xb5\x9c\x83\x48\xfe\xd8\xf1\x03\xc4\x77\x22\xbc\x0b\x38\x93\xed\x04\x3a\xb2\xae\x61\x8a\xdd\xce\x33\x47\x18\xab\x45\xd9\x32\x19\xd7\x6f\x33\x9d\x41\xb1\xbf\x04\x06\x74\x53\x62\x66\xda\xf4\xd3\xed\xbc\xe4\x90\x73\xd0\x51\x9a\x42\xbf\xac\x29\x3c\xd8\xd3\x8a\xc2\x9e\x8a\x0c\xd6\x57\x28\x8e\xd2\x4b\x6e\x49\x75\x58\x16\x70\xb3\x93\xf2\xff\xb8\x14\xff\x6e\x4a\xb9\x27\x05\x38\x32\xa1\x53\x32\xa3\x53\xeb\x54\xb0\xa0\x8e\x7c\xe7\x50\x71\xee\x46\x47\x87\x18\xcd\x30\x26\x73\xea\x88\x8f\xc5\xa9\xa0\x1a\x0f\x89\xdc\xd5\x98\xab\xa5\x88\x91\x96\x2f\x63\x4e\xe5\x5a\xc3\x67\x21\x85\x18\x30\x2c\x1b\xb6\x39\xa4\x88\xd3\xf9\x80\x43\x3b\x11\x0e\xc6\x88\x93\x1e\xc6\x76\x88\x81\x0e\x14\xd9\xef\xc9\x80\x10\xfd\x3d\xf1\x17\x4e\x6c\x87\x87\x94\x52\x94\xa9\x08\x82\x2a\x77\x17\xe3\xd5\xca\xef\x82\x31\xbe\x3e\x95\x9d\x85\x67\xc6\x71\xbe\x7f\x28\xbf\xcf\xef\x23\x88\x95\x67\x7f\xeb\x63\xfc\x38\x0e\x73\xd6\xdc\xdf\x0f\xe0\xef\xd1\x61\x90\xd0\x2e\x89\x68\xff\xa8\x71\x93\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\x8e\x34\x64\x49\xb9\x72\xe1\xe9\x62\x12\x83\xc1\xaa\x8e\x5d\x79\x1c\xbf\x9d\x1e\xc7\xed\xb6\x38\x20\xa2\x9c\x2e\xed\x46\xc5\x18\xbf\xed\x1f\xae\x56\xf9\xbb\xc8\xea\x8f\x5e\x01\x3a\xe0\x21\x5a\x42\x3c\x52\x53\x2d\x1c\x53\xa7\xc8\x69\x76\x52\xdf\xc1\xab\x95\xf8\xdd\xb9\x81\x9f\x53\xe4\xb4\x3b\xdf\x7d\x07\xe3\xc7\x69\xcd\x34\x56\x77\xe1\xb7\x3e\x9c\x40\xb2\x52\x94\xa9\x92\xb7\xfc\xd4\x75\xd1\x62\x10\x96\xd8\xd3\x4c\xde\xf9\x9f\x4f\x2d\x75\x75\xa0\xe9\xac\x45\x13\x94\x61\x3c\x88\x40\xdd\x36\x41\x77\x10\xb6\x22\x23\x53\x1c\x88\x9f\x6b\xa3\x64\x7e\x00\x34\xd1\xbd\x43\x3c\xc8\xd1\x04\x07\x8e\x39\x7d\x90\x2f\x9f\xce\xd4\xaf\xb3\xf0\x8c\x9c\x9d\xfe\xf8\xfe\xea\xd3\xcf\xa7\xd7\x9f\xce\x3e\x7e\x3a\xfb\x74\xf5\x2b\xf9\x7a\x7e\xf9\xa9\x9c\x72\xfa\xf5\xf2\xd3\xe7\xf3\x33\xa2\x65\x78\x12\xe5\x9f\x12\xce\x6e\x59\x46\x00\xfb\x96\x44\xf9\x65\x38\x65\x3a\x4d\x54\x75\xf9\xfe\xa3\x28\xe0\xea\xf4\xc7\xd3\x0b\xa8\xb1\x94\x60\x45\xcb\x34\x61\x27\x4d\x99\xb6\x6d\x30\xb9\xa1\x9d\xe3\x5b\x4d\xfe\x37\xc7\x37\xed\x36\xce\xd0\x84\x3c\xd0\xdb\xe1\xcd\x08\x10\x65\xd0\x94\x3c\x60\xd7\x8d\xc5\x5f\xb2\x14\xef\x30\x6e\x58\x8b\x94\xce\xc8\xac\xe4\x3a\x34\x25\x85\xbe\x47\x8d\x2a\x99\xe2\x5a\xa7\x66\xa9\xb7\x21\x26\xe6\xa4\xd2\x86\x29\x40\xe6\x4d\xc3\x6e\xe9\x3a\xbc\x17\x1c\xec\x55\x9c\x83\xbb\x9d\xed\xf2\x9f\x66\x9a\xba\x2d\x8f\x6a\xb8\x03\x23\xfd\x77\xc9\xce\x9e\xbd\x85\x43\x81\x4f\x8a\x59\xd2\x4a\x54\xcf\xd7\x46\x0d\xfa\x45\x0d\x6f\xd6\x3a\xc3\x02\xb1\x1c\x22\x14\x95\xb6\x02\x6d\xfa\xd9\xed\x3c\x2f\xf3\x58\x75\xaa\xf9\x0d\x18\x3a\xec\xd8\x7b\xfc\x61\x27\x38\x94\xc5\x3d\x2f\xd9\x58\xc5\x89\xc3\x70\xcd\xce\xcc\x5a\x94\x55\xf7\x90\x67\xf4\xce\x87\xc5\xb6\x6a\x09\xe1\x56\x55\x16\x75\x6f\x39\xae\x61\xd7\x15\x29\x6f\x69\x15\x3b\x79\x5d\xdb\xd1\xe7\x85\x22\x53\x7b\x75\x35\x05\x1b\x35\x94\xfb\xfa\xfc\x21\xb0\x28\xba\xb2\x2e\x83\x9d\x67\xca\x7e\x46\x3c\xf1\xfd\x6e\xe9\xc0\xa5\x14\x1f\xc5\x6a\x6f\x81\xda\xde\xd4\x5f\xbc\x50\xc7\x2f\xdf\xef\x06\xbe\x5f\xdc\xf4\x74\xfd\x67\x4e\x78\xbe\xdf\xdb\x5a\xe3\xa7\xa4\xb6\xbe\x4f\x49\x51\x5b\x2f\xf0\xfd\x9e\x55\xdb\x6b\x6e\x25\x0d\xb0\x79\xaf\xaf\xaf\x25\xc1\xcc\xce\xf7\x3c\x9e\x7e\x8c\xbe\xb3\x09\x09\x2d\x3d\x10\xc9\xe9\xb0\x43\xcc\xff\x8d\xc8\x52\xcb\x0e\x3a\x7b\x00\xb1\x1b\xb3\x8c\x8d\x79\x33\x4a\xee\xd2\x71\x28\xda\xd1\x72\x2a\x81\x34\x6c\x3c\xd7\x1d\x9f\x24\x94\x1f\xb7\xdb\xd9\xdb\xfd\x63\x9c\xb4\x29\x7b\x93\x0f\xb3\x11\x11\xff\xd0\xe4\xdf\x7c\x76\x40\x12\x1a\xa2\x64\xd7\x67\x07\x10\x05\xc3\xee\x5d\x11\xf4\x60\x9f\x64\xb4\x73\xbc\xb3\xc3\xdf\xd1\xce\x31\xce\xda\x14\x40\x4a\x01\x58\x2f\x44\xd9\x2e\x13\x1d\xce\xfe\x8d\xbd\xf1\xd9\xc1\x9a\x4c\xeb\x81\x4a\xf7\x09\xa7\x8e\x73\xbc\xb3\xc3\xa0\x10\x21\xc9\x38\x2d\x4a\xb9\x72\xa9\x97\xd1\x1b\xf3\x21\x1b\xe9\x83\x99\xba\x75\x80\xa4\x86\xf8\x56\x5f\xa5\xb6\x55\x78\x45\xa7\xe3\x90\x83\x1d\x7d\xd8\xc3\xed\x4c\x07\xba\xe3\xe5\x50\x09\x36\xc2\x59\x71\x21\xfb\x6f\x5d\x4a\xfd\xc1\x44\xbc\xde\xf1\x49\xf6\x86\xe1\x60\x82\xd8\x1b\x46\xf8\x6e\x97\x64\x78\x6d\x5f\x34\x81\xa5\x0c\x72\x3a\x5e\xa7\xd3\x11\x8d\x3e\x64\x3b\x7b\x7a\x56\x50\x0f\xaf\x56\x8e\x2f\x92\xbd\x23\x93\xd8\x81\x44\xaf\xbb\x27\xd2\xc5\xdf\x22\x7f\x17\x5e\x75\xca\xff\xf9\xdd\x43\x91\x13\x75\xbe\x4f\x58\xe7\x66\xff\xa6\x17\x1e\xec\xf7\x3b\x9d\xc3\x0e\xb6\x8a\x94\xf7\x86\xd5\xd3\x4a\x6a\xe3\x93\xd9\xd4\xac\xc9\x66\x63\x7d\x48\x68\x5d\x32\x53\xf7\xd5\x64\x89\xc9\x42\xc2\xe8\xcf\xa9\xe3\x90\x3b\xea\x74\x00\x02\x7d\xf1\xb6\xb3\x5a\x2d\xde\x75\x6b\xa2\xd0\x2c\x41\x70\x9c\xb5\xe8\x4c\x09\x4e\xce\x59\x78\x06\x1f\xcd\xde\xd2\x1d\x9f\x75\xfd\xd5\x6a\xf6\x8e\x8a\x1f\x5a\xb2\x52\xf3\x39\x93\x5f\x82\x81\xce\x9c\x3a\x3b\x0e\x99\xd1\x9d\x19\x26\xb3\x77\x3e\xdb\xe9\xfa\x82\x30\x52\x21\xb8\xd6\x53\x62\x47\x2c\xad\xe3\xec\x1d\xed\x77\x8e\xf6\x8f\x31\x6f\x53\xbf\x4b\xb2\x5d\x78\x94\xf7\x01\xd9\x3b\xda\x95\x2f\x44\x7a\xd7\x1c\x67\xd6\x68\xf6\x66\x82\xba\x64\xff\x88\xf8\x18\xef\xec\x1f\xe1\xb7\x9d\x81\x4c\xda\xe1\xc4\xc7\xc1\x6c\x57\xfc\x16\x3f\x49\xfa\x86\xf6\xf7\x3a\xbd\xbd\xa3\xa3\xfd\xee\x41\xef\xa0\xd3\x3f\xda\x27\x88\xd3\xbd\xee\x0e\xc7\xef\x3a\xb2\x3d\x31\xea\x90\x54\x1c\x1a\x16\xc7\xe1\x3b\x7a\x70\x8c\x63\x24\x96\x53\x07\x93\x70\x87\x1e\x48\x5c\x02\x34\x41\x7e\x87\x84\x32\x88\x03\x09\x29\xdf\xf1\x45\xe6\x6e\xef\x18\x8f\x91\xff\xf6\x6d\xb7\x07\xb9\xbb\xbd\x06\x3c\x86\x98\xc4\xc8\x17\xb9\xc7\x42\x8e\xbd\xa3\x53\xa4\xfc\x7a\x55\x65\x31\x00\x18\x70\x51\x18\xbc\xb4\x57\xc2\xa2\x88\x34\x42\x17\xef\x3a\x83\x79\x5b\x88\xbb\x77\x7a\x75\xbc\xa5\x8b\x81\xd3\xf1\x9c\xd2\x27\x3b\x39\x6e\xdf\x05\x77\x26\x22\x52\xbe\xb3\xc0\x6d\xc7\x73\xda\x3a\x49\x24\xe0\x60\xde\xbe\xd3\x86\x02\x2a\x40\x92\x32\x89\xea\xf5\x83\x5e\xbf\x72\xf7\xd7\xf5\x5f\x63\x22\x20\xce\x5b\x05\x8f\x04\xd6\xf8\x35\x63\xe3\x28\x8f\xd2\x92\x0d\x5e\x56\x73\x40\x97\x8b\x4e\xf5\xc7\x27\xa5\xeb\xf7\x72\xfe\x68\xfb\x12\x31\xb5\xd5\x9c\x8c\xf5\x8d\x81\xcc\xfe\xff\xb1\x33\x6f\x61\xc5\x78\x23\xce\x1e\x1b\xa8\xca\x39\x0e\xf4\x2f\xa2\xa5\xa5\xfa\xf1\x7b\xce\x08\x55\x8c\x88\x05\x6f\x18\xe6\x5a\x31\x72\x50\x52\x8c\x1c\x04\x47\x07\x50\xde\xf3\x32\x98\x29\x6b\x9c\xb1\x90\xb3\x00\x0e\xaa\x76\x59\x42\x56\x85\xb2\x9e\x13\xc0\xb4\x99\xc7\xde\x21\xb6\x8a\x2d\xa1\x2c\x46\x2c\x0f\xc4\xa9\x5a\x89\x78\x7e\xa7\x13\xf8\x9d\x8e\x0d\xb7\x03\x35\x3d\xa7\x7b\x7a\x41\x4d\x0f\x81\x3a\xb2\x5b\x37\x62\xaa\x43\x5a\xec\xf6\xb7\x08\x5a\xfa\x56\xf4\xa8\x8f\xbd\x34\xf9\x98\x31\xf6\x3b\x6b\x88\x56\x1f\x61\xe4\x4c\xe1\xf1\x99\xab\xb0\xa4\x10\x38\x5d\x97\xa3\x04\x0f\x18\xca\x50\x82\x71\x90\xac\xd5\xad\x6f\xe7\x28\xf0\x3b\x47\xfa\xf2\xb1\x1f\x1c\xc9\xf9\xdf\x76\x77\xde\xef\xe8\x9b\x5a\x1f\x7b\x53\xd3\x9a\x6d\xf0\x96\x75\x31\xba\x6d\x08\xc2\xc4\xb6\xb0\x81\x88\xf3\xd8\x34\x4c\x1f\x73\x64\x03\x95\xe5\x23\x34\xee\x68\xc3\x60\xa4\xa6\x11\x67\xe1\x9c\xe5\xb5\xf5\x8b\xfc\x5d\x98\x11\x59\x51\x37\xf0\x3b\x5d\x5d\x91\xa8\xa0\xbb\x45\xa0\x03\xab\x0b\x7d\x4f\x6d\xf7\xdd\x0a\xc0\xfb\x4c\x8f\x2b\xfd\x2d\x7a\xab\xee\x82\x4d\x6f\xc1\xb4\x01\x1a\xb3\x45\xbd\x7f\xe8\x17\x4d\x88\xf2\xd3\xef\x9c\x25\x79\x74\x13\x3f\x47\x12\x05\xce\x6a\x8b\x03\xac\x2a\x6a\xb1\xd5\x8a\x01\xee\x5c\x0d\x49\x40\x0b\xb6\x1c\x0b\xcb\x2d\xf8\x98\xa5\xbf\xb3\xe4\xc5\xb5\x8b\xca\x57\x2b\x08\xc1\x29\x2a\xdf\x5a\xf7\x16\x46\x54\xae\xfb\x92\x85\x31\x9b\xfc\xe9\x75\xbf\x82\x69\x45\xc0\x4f\xba\xea\x5e\xc5\xef\xfa\x81\xdf\x2d\xcc\x73\xbb\xdd\x2d\x3c\xcb\xa2\xa8\x83\xa2\x43\x60\x78\xfe\x07\xe9\xe8\x20\xf0\x3b\x07\xb5\x74\xb4\x85\x99\x3d\xc9\x65\x16\x19\xbb\x63\x09\x57\xd4\x05\x11\x6b\xff\x6f\x18\x4e\xf7\x8f\xf0\xc0\x9c\x85\xf1\xff\x59\x83\x9e\x3f\xa2\x9a\xc9\x2f\x87\xe0\x06\x42\xe8\x42\x5c\x10\x45\x0c\xdd\xc0\xef\x5a\xe7\xc5\xee\x4b\xec\x7a\xfb\x07\xa2\xe3\x8f\xeb\x46\x36\xac\x8d\xe3\x3c\xa2\xce\xef\x0e\xc9\xa4\xa9\xd0\x30\x95\x81\xfa\x7f\x1f\x15\x86\x42\x9b\x21\xbc\xeb\xed\x86\x94\x1c\xa3\x8b\x70\xda\xd2\xf8\x05\xb7\x9d\x91\x23\xf1\x36\x0b\xe3\x20\x52\xf2\x54\x15\x7d\xe9\x3d\x7b\xf6\x55\xe3\xf5\xa3\x94\xa1\x2a\xc7\xec\x17\x9c\xae\x7b\xdb\xaf\x37\xcb\xa7\x6b\xbb\x06\x7d\xac\x7e\xf6\x34\xdd\x7b\x56\x50\x24\x45\xfc\x41\x8d\x81\x77\xd0\x51\x9e\x69\x7d\xe9\x99\xd6\xd7\x08\x78\x5d\x89\x80\x27\x88\x76\xaa\xac\x3a\x27\x0a\x11\x6f\x26\xde\x6b\xf8\xbb\xee\x81\x0e\xb1\xb4\x2f\xa3\xa9\xdf\x09\x12\xdf\xc3\x48\x22\xe0\x1d\xed\xcb\x30\x4b\xbe\xdf\x97\x71\x96\xfc\xfe\xa1\x0c\xb4\xe4\xfb\x7b\x98\xdc\xd3\xd0\x0a\x55\x74\x4a\x43\x13\xf0\xf0\x92\x9e\xba\xee\xa9\x0e\x20\x9d\x93\x73\x7a\xe9\xba\x97\xde\xdd\xe1\x6a\xe5\x38\xe4\x3b\x0d\xbd\xaf\x59\x3a\x8f\x72\x46\xde\x53\x2b\x5a\xdf\x12\x9d\x62\x1b\x99\x18\x3f\xae\xc9\x57\x9a\xd1\x07\x6f\x0a\x20\xa0\x15\x53\x20\x39\x03\xdf\xbd\x8c\xe5\x69\x7c\xc7\x10\x2c\x51\xc4\x4b\xfa\xcb\xc7\x35\x1e\x6e\x44\x8c\x1e\xd1\xf2\xb6\xfd\x8d\x7c\xc3\x6b\x0d\x07\xf3\x7e\xb5\xaa\x31\xb0\x57\xed\xbd\x60\x82\x38\xa3\x34\x81\x80\x7a\xd8\x75\xb9\xc7\x67\x2c\x41\xdf\x6c\x0b\xff\x0c\x0c\x36\xe8\xb9\x71\xf0\x72\xf6\xbd\x7d\x07\xbb\xee\x8e\x4f\x29\xbd\x29\x92\x4f\x66\x59\x3a\x67\xbb\xfb\xfb\x8e\x8e\x52\x9f\xe0\xc7\xf5\x1a\x61\x72\xb5\xa9\x30\xd7\x56\x5b\xa8\x35\x06\xa8\x81\x4d\x3b\x32\xc4\x29\x83\xe6\x60\xd1\xb0\x35\x39\xa9\x81\x29\x60\xde\x75\x82\x1f\xc5\xbf\xb4\xd5\xd1\xa6\x4e\xde\xf5\xb8\x71\x57\xf6\x6a\xd0\x17\xe7\xe2\xe5\x9d\x38\x8d\x50\xf1\x2b\x57\xb7\xe8\x26\xa7\x09\x8d\x29\x03\xd4\x44\x03\xee\xa5\xdf\x02\xee\x4d\xc3\x28\x86\x8b\x08\x35\x37\x24\x86\xdf\x62\xf0\xc8\x98\x72\x6f\x92\xce\xc3\x28\x69\x88\x59\xcc\x07\x28\x5a\xad\x50\x17\x2a\x98\xb9\xee\x27\x21\x7e\x89\x9f\xd4\x17\xab\x9e\x52\x9a\x0f\x32\x9a\x04\x68\xec\xba\x63\x8f\x25\x9c\x65\x48\x4c\x74\x8e\x12\x4c\xc6\xae\x8b\xc6\x1e\xfb\x1e\x71\x24\x96\x44\xab\x83\xc5\x2b\x4a\x81\xdf\x88\x09\x1b\xc4\xe8\x1e\x39\x6a\xf6\x76\xc6\xb3\x30\x4a\x9a\xe3\x87\x71\xcc\x1c\x8c\x03\x94\xd2\x2b\xb8\x20\x50\x6a\x83\x8c\x2c\x49\x8c\x83\xa5\x48\x0b\x62\x94\xe8\x59\x99\xe2\xc7\xb1\xeb\xb6\x42\x68\x80\xac\x2b\x46\x53\xbc\x5e\x1f\x6b\x85\xcb\xbb\xf4\x18\x87\x28\x03\xb4\x7d\xdc\x10\x03\x4a\x87\x23\x22\x87\xd9\x27\xdc\x75\x5b\xb2\x73\xbf\x49\x7f\xd0\xf5\x9a\xfc\x56\x9a\xe1\xb9\x6c\x40\xb8\x61\x49\xa9\x96\xbd\x9c\x86\x94\x7e\xd1\x51\x71\x5d\x17\x71\x7a\x5b\xc6\x35\x1d\x9c\x7a\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\x54\x43\x16\x30\x92\xb1\x30\x4f\x93\x20\x5a\x03\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\x5f\xad\x44\xeb\x07\xdd\xc0\x87\x94\x50\xbb\xcc\xa5\x62\x15\x31\xa5\x56\xe1\xde\x1d\x6c\x87\x5f\xea\xc0\x18\xfc\x96\x26\x12\x41\x16\x48\x14\x02\x90\x1b\x63\x1d\x1b\x63\x4d\x3e\xbd\x70\x58\x1b\xc5\x68\x99\xe6\xfe\x55\xf6\xc3\x81\x91\xe2\x30\x52\xe6\x9d\xea\x23\xd8\x2b\x6e\x0e\x94\x98\x1d\x38\x4f\xaf\xc9\x87\x9a\xab\x2e\xb8\xd1\xe2\xde\xf5\x64\xb5\x42\xe2\x0f\x6d\x75\x08\xe2\x94\x7b\xd7\xf7\xab\x15\xc7\xde\xf5\x1d\x65\x84\x7b\xd7\x39\xed\x8a\x3f\xa1\xcc\x16\x8a\x0c\x63\x8d\x97\x8b\xc9\x89\x8a\x43\xb0\x26\x67\x75\x71\xa2\xa8\x0e\x02\xdb\xca\xbc\xeb\x09\x7e\xcc\x54\x45\x19\xcd\xa0\x9e\x0c\x56\x5b\x34\x45\x19\x18\x83\x1a\xcc\x30\xb5\x36\x8a\x20\xca\x6a\xc9\x4e\x9a\x11\xcf\x59\x3c\x75\xf0\x31\xe2\xf4\x4a\x08\x77\x83\xbb\x8d\x68\xdc\x09\x7d\xbc\xbe\x0f\x32\x72\x3d\x09\x5a\xfe\x1a\xaa\xe0\xca\xe9\x89\xe4\xe8\x8c\x24\xc4\xc7\x24\x47\x1f\xe0\x87\x5e\x4f\x11\x7e\xfc\xa0\x6c\xf5\x21\x06\xb7\x58\x8a\x99\x1c\x85\x4c\x8c\x82\x4f\x4e\x50\x06\x91\x49\x0b\xb6\xa8\x3e\xb0\x6b\x83\x43\xda\xba\x71\xb1\x5a\xa1\xef\xe5\x68\xb0\x52\x57\xf1\x9d\xe8\xce\x39\xc4\xb9\x9e\x39\x98\x4c\xc1\x1d\xd4\x36\x4d\x16\x0d\x66\x48\xb4\x54\xc2\x4d\xc9\xc6\xaa\xdf\xba\xfa\xcc\x54\xaf\x51\xed\xd7\xc4\xd6\xca\x69\x7f\x53\x58\xf4\xf2\xa7\xa1\x6e\xf9\x98\x1b\xe7\xd3\x09\x30\x04\xf8\x79\x57\xce\x33\x33\x79\xa4\xfb\xbf\x75\x2b\x27\xd1\x6d\xd1\x77\x1b\x50\x4d\x30\xfa\x5a\x23\x9e\xaf\x68\xa1\xfa\x5f\xc4\xfd\xce\xbc\xf4\x1b\xad\xb1\x3c\x16\x47\x2e\x92\x01\xbb\xae\x75\x3a\x77\x5d\x4e\x32\xc5\xad\xa9\x58\x32\xf2\x67\x50\x6a\xf8\x58\x46\x03\xcb\xb4\xa7\x6d\xe8\xba\xea\x47\xe5\x45\xee\xba\x27\xb2\x69\x10\x61\x50\xf3\xe8\x35\x81\x61\xae\x0d\x6b\x24\xbe\x83\x1d\x56\xd5\x08\xda\x22\x92\x6c\xc6\x40\x4e\xd8\x7d\x93\x37\xb4\xd5\xb3\x28\x56\xa1\xde\xe9\x2d\x88\x8a\x49\x86\x18\xb2\x2a\x55\xac\x6c\x2a\x66\x5b\x24\xae\xc9\x83\x37\xa5\x5f\x6b\x63\x7d\x52\x4a\xbf\x4b\x28\x5b\x89\xb9\x2e\x5e\x06\x99\x84\x81\x8f\x51\xec\xfd\xd8\x8e\xbd\x5f\xda\xb1\x04\xca\x7e\x54\x24\x17\x7c\x07\x78\x05\xbf\xdb\xc7\xc8\x22\x44\x99\xd6\xc3\xc8\x4a\x89\x14\xa0\x8b\x96\x89\x44\x99\x97\xba\xbc\x82\x84\x1f\x65\x93\x6b\x74\x73\x5f\x4b\x76\xf6\xa8\x43\xf4\x5e\x8b\x25\xbd\xeb\x71\x56\xed\x95\x65\xa3\x74\xb5\x6a\x5d\xe0\x72\x05\x30\x52\xb5\xd1\x94\xc4\x96\x23\x6a\x81\x51\xf8\x1e\x48\x37\x24\x5c\x2e\xb2\x85\x2e\x84\xd8\xbf\x01\x87\xf0\xdd\x93\x5e\x90\x9e\x5c\x4e\xdf\x94\xe6\xb1\xa8\x38\xb4\xe3\x89\x95\xd8\x26\x11\xf4\xcc\x65\x0c\x20\x2d\x4b\x44\xf0\x1b\x64\x89\xb4\xb2\x07\xca\x15\x30\x1c\x29\x39\xc5\x6f\xcc\xc0\x58\xa4\x7c\x36\x03\x33\x09\x9a\xb6\xdb\x64\x49\x5b\x7e\x23\x93\x54\xaa\x54\xa6\x24\x6c\xb7\x89\x91\x5b\x44\xa3\x81\xfc\x4a\x05\x2c\x57\x2b\xb4\x04\xde\x3a\xcc\x47\x94\x91\x9d\x9d\x70\xb5\x4a\x24\x64\xbe\xda\xf2\x4c\xd2\xba\x58\x84\xa9\xc7\x5c\x37\x42\xa9\x77\x57\x22\xfe\x2c\xac\x78\x0f\x6e\xeb\x3d\xf4\x38\xaa\xf4\xb8\xae\x83\x9b\xcd\x2f\x06\x2f\x81\x6d\xaa\x68\x54\x24\x1a\x95\xa0\xa8\xdc\x28\x75\x48\xe9\x07\xbe\xdf\x27\xbe\xbf\x17\xf8\xfe\x5e\x0d\x4c\xb9\x02\x78\x33\x70\xe5\xfb\x81\xdf\xdb\x07\x54\x2e\xbf\x5f\x1c\xd2\xa4\xb7\x95\x82\x79\xb3\xa0\x85\x6c\xbc\x85\xfd\xc3\x60\xff\x50\x23\x44\xd9\x10\xe2\x12\x2d\x6a\x2f\x38\xda\x23\x47\xfb\xc1\xd1\x3e\x1c\x96\x9e\xb9\xce\xd7\x5e\x6c\x3d\xb0\x6c\x42\xf2\x7e\xff\x82\x4d\x63\xf0\x59\x7f\x5c\x63\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\xa4\x09\x0a\x8b\x81\x1f\x44\x28\x27\x9c\x2c\x8d\xe3\x9a\x7c\x52\xda\x70\x39\x66\x87\x41\xaf\x06\x76\x1d\xc6\xe0\x39\x2b\xfc\x43\x35\x06\x3d\xc9\x60\x7a\x1a\x3f\xdd\x2f\x1b\x77\xf5\xf7\x45\xc3\xea\xc6\xc8\x1c\xa3\x48\x4c\xc3\x17\xf8\x3c\x2f\x2b\xe3\x43\x84\x04\xbc\xe9\xf9\x3c\xa6\xad\x72\x69\xd5\xef\x80\x3a\xad\x6b\xea\x78\xb5\x1a\x97\x06\xda\x34\xac\xb2\xfd\x25\x10\x39\x0b\xa9\x28\x29\xe1\xa6\x85\x51\x6f\xc0\x02\xdb\x3f\xbe\x3b\x02\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\xbe\x21\x1c\x10\x43\xe1\x75\x6f\xcb\x6b\xc2\xa1\x8d\x90\xa7\xff\x54\x1e\xc2\x87\xbd\x91\x44\xf9\x9d\xd2\x61\xb2\x8c\xe3\xc2\xaf\x15\xd8\x9b\x02\x1e\x98\x02\xc6\x39\xbb\x47\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\x80\xd1\x29\x5a\xe0\xc1\x22\x98\x6d\x92\xb3\xe5\x98\x55\x32\x08\x52\x8a\x2f\x7d\xbd\xd2\xdb\xa2\xaa\x3c\x3a\x2a\x03\xf7\xf4\xb4\xa3\x73\xbf\x04\xcb\xb3\xb9\x7e\x15\x01\x79\xe5\x6b\x11\xc4\xbd\x29\x7a\x5c\x13\x5f\xbb\x6b\xf9\x6b\x5c\x3c\x74\xd7\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\xa9\xca\x49\x5a\x1d\x25\x5d\x86\x46\x1f\xec\xaf\xb5\x43\xa1\x34\x9d\xda\x5c\xfe\xe6\xae\xa6\xf7\x8c\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\xf2\x91\xf6\x27\x93\x37\x26\x56\xeb\xa1\xc5\xaf\xf1\x2b\xed\x1d\x96\x84\x3c\x56\x20\xba\x64\x25\x44\x17\xa5\x1a\x4b\x34\x62\x0b\x1d\x8e\xe0\xb6\x59\x86\x8b\xd3\x71\x6a\x39\x5e\x37\x18\x3a\xec\x63\x94\x14\xda\xd2\x0d\x9f\xc5\x02\xf7\xa5\x31\x49\x1f\xb5\x0b\xdd\x75\xf4\xce\x44\x01\x56\x3c\x42\xd1\x86\x92\x48\x27\x69\x02\x91\xa5\xd6\xf7\xb3\x28\x66\xa8\x85\x10\xa3\x7c\x68\x70\x63\x00\xa1\x5b\x35\xde\xec\xba\xaa\x04\xa6\x3e\xf6\xd7\x1a\xec\xab\x34\x47\x2a\x72\x55\xad\xe5\x59\x53\x0b\xa2\x6a\x7d\x59\x94\x72\xd8\x0f\x0e\x41\x75\xdc\xdb\x76\x79\xd6\xf1\x37\x96\x90\x5c\x39\x76\xed\x5b\x23\xc5\xd9\x24\x8f\x6d\xc2\x96\xb4\x8f\x9f\xa6\x82\xe7\xac\xa2\xb4\xe7\x65\x2d\xd5\x96\xaf\xb8\xea\xad\xcb\x12\xcb\xed\x5b\xdd\x66\x55\xda\xd0\xdf\x76\xad\xd6\xa9\xba\x7f\x1e\xf8\xca\x0b\xbe\x5b\xde\x3c\x45\xe3\x22\x14\x6d\x34\xce\xf6\xe6\x8a\x48\x2e\x8b\x5e\x92\x98\x8c\xeb\x36\xa3\x28\xb0\xb7\x22\xcd\x38\x43\x14\x61\x4a\xe9\x78\x10\x0d\xf3\x51\x80\x96\x94\x83\x3b\x69\x8e\xf1\x20\x41\x4b\x13\x79\x70\xb0\xf4\x6c\x32\x6c\x51\xba\xf4\x6e\x19\x1f\xc0\xbf\x92\x21\x8f\x75\x3c\xa8\x20\x45\x31\xcd\x50\x84\xf1\x80\xa1\x98\xe4\xc4\xbc\x29\xcf\x55\xcd\x78\x29\x33\x4d\x73\x17\xd5\x7f\xde\xc9\xa7\x18\x91\x59\x98\xd7\x3b\x21\xca\xe5\x59\x31\x3c\xec\x3f\xe9\xf5\xa3\x79\x82\xda\x8d\xec\x9b\xc6\xcd\x8a\xed\xb7\xdb\x6c\x10\x49\x2b\x11\x12\x7a\xcd\x0a\x82\xc6\x3c\x8f\x7e\x55\x54\x97\xde\x27\x7f\x67\x0f\x70\xf3\xe6\xeb\x9b\x37\xdf\x0f\x7c\xdf\xba\x79\xeb\x3f\x23\xaf\x95\x7a\xb7\x71\xdd\xb5\x59\xe7\x46\x96\x72\x3f\x01\xcf\xbe\xd8\x77\x12\x69\x71\x59\x6c\x3a\x7c\x63\xd3\xa9\x0e\xc0\x93\x7e\x8e\xf2\x6a\xa9\x91\xb9\xee\x46\xc3\xf2\x6d\x6b\x14\xe6\xdf\x1b\xcf\xd8\xf8\x1b\x3c\xd8\xed\xcb\x20\x7a\xbd\x48\x2d\x9a\x98\x6c\xee\x8b\xd5\x1b\xac\xfe\x96\x5d\x50\xcb\x08\xb0\xa2\x13\xbd\xa2\x23\xb5\xa2\x53\xd5\x0d\x40\xf7\xf3\x55\x18\x21\x31\xfe\x4b\x75\xa1\x2b\x63\x76\x95\xfb\x64\x2f\xed\x54\xac\x68\x59\xdb\x94\x4c\xc8\x6c\x73\x71\xf7\x07\xa9\xb5\xb8\x7b\x23\xb2\xa0\x99\x37\x45\x39\x4a\x31\x89\x41\xb6\x6c\x2d\x40\x21\xbf\x44\x13\x2a\x84\x84\xc2\xb3\x1b\x4d\x00\x0d\x70\x86\x1b\x0b\x1a\xa2\x0e\x5e\x47\x53\x14\xa1\x45\x11\x72\x14\xf4\xf8\x3e\xa5\x74\x61\xc5\x0f\x6d\x2d\xd1\xac\xec\x3c\x3e\x85\x1a\x67\x24\x96\x5f\x4c\x05\x5f\x58\xad\xa6\x62\xa0\x57\x2b\xf8\x7e\x6a\xbe\x2f\x3e\x9c\x4a\xae\x42\xc7\x84\xcb\xaf\xc9\x14\xeb\xe8\x56\xf2\x39\x44\x1d\x32\x36\x3b\x59\xab\xb3\x2e\x59\xf9\xb4\x44\xb3\x72\xc6\x5d\x17\xc1\x5f\xc9\x89\x66\x64\x8c\x2d\x84\x9e\x0a\xbb\xd1\x61\xb0\xb6\xb0\x9d\x42\xe8\xe9\x6f\xb9\x9c\x35\x1e\x2d\x8a\x6d\x4b\xd7\x94\xa8\x70\x5d\x01\xde\xad\x66\x7c\x1f\x26\x9c\x7b\x17\xec\xf6\xf4\xfb\x82\x2c\x69\x4e\x62\x6a\xb9\xca\x93\x31\xdd\x0d\x77\x6f\xc9\x54\xfe\x99\x80\x66\x29\x47\x63\xdc\xa2\x74\x0c\xa7\x02\xe9\xb7\x8e\x5a\x93\xd5\x6a\x2b\xce\xc5\xd4\xdc\x3a\x81\x83\xba\x83\x47\xb4\xe5\x13\x59\xcc\x78\xb5\xca\xd1\x14\x53\x3a\x5d\xad\x9c\xdd\x70\x37\x72\x5a\x34\x47\x63\xe2\x44\x0e\x68\x46\xf0\x63\x15\x60\x5a\x6a\x5a\x85\x14\x61\xfb\x43\xe4\x24\x92\x00\x77\x63\x0b\x5f\x47\xcf\x4b\xe2\xba\x91\xeb\xb2\xd2\x65\x18\xa5\xb9\xeb\x8e\x07\x2c\xc8\xd0\x04\x34\x59\x4b\x10\xe9\xc6\x03\xe6\xe5\xe9\x32\x1b\x33\xf0\x00\x0f\x96\x08\x45\xb4\x84\x30\x90\x63\x3b\x4b\x24\x0a\x09\x35\xb4\x55\x20\x4e\x14\x12\x7b\x2a\x26\xb9\xe5\x54\x31\x2b\xdf\xb2\x09\x96\x9f\x0b\x8e\x9b\x13\xf6\xac\xa7\xbf\x3e\x8c\x0d\xd9\xa8\xe2\xcb\xce\xf1\xa3\x48\xa5\xd2\xcb\x79\x41\x23\xb4\xc4\x64\x4e\x3b\xc7\x0b\x7d\x15\x33\x3f\xc6\x33\xb4\x18\xce\xe1\x2a\x26\x2e\x0d\x40\x4e\x6c\x4c\x84\xd8\xf2\x6d\x90\xd4\xe0\x88\x0e\x68\x05\x9d\x4a\xc2\x25\x68\x7b\x75\xfd\xac\x35\x20\x1a\x82\xc3\xf2\x6e\xd8\xdf\x0f\xf6\xf7\xb5\x8f\x03\x78\x37\x1c\x76\x83\x43\xcb\xcc\xaa\xff\x12\xf8\x31\xbf\xdb\xc1\x0d\x60\x53\xe8\x91\x87\x99\x18\x1e\xd3\x46\xe8\x81\x18\xb4\x69\x9a\x8d\xd9\x24\xe0\x2d\x4a\x77\xbd\x5d\x8f\x7d\x67\xe3\x35\x79\x14\x7f\x02\x7d\xe5\xdf\x09\xfc\x6e\xc7\x62\x98\x1b\x26\x4b\x40\xcb\xce\xad\xd3\x12\x45\xdc\x7a\xd3\x38\xbc\xcd\x5d\x57\xc3\x58\xc8\x2a\xed\xcb\x7b\xc8\xb0\x05\xaa\x01\x16\x97\x6d\x5f\x06\x43\x61\x3a\xbe\xf7\x12\x08\x2e\xc1\x87\x33\x0d\x57\x05\x82\xe0\xbe\x3a\xdf\xf9\x47\x30\x22\x7b\x66\x4d\x91\x92\xda\x4b\x5e\x41\x9a\x48\x4e\x1b\x57\x94\xb4\x08\x27\x2e\xd1\x4c\xb9\x8a\xa5\x19\xf0\x61\x3a\x6a\x54\xb9\x58\x32\xd0\x10\x26\x3a\x2a\xa6\x1c\x0b\xc4\xf1\x30\x1d\x21\x65\xc0\x9b\x61\xbc\x26\x55\x96\x94\xd2\x1c\x85\x44\x6a\x9f\xe5\x6d\x1d\x20\x98\x16\x20\x80\xc0\x62\x1b\x12\xdd\x0a\xac\xcd\x62\x13\xcb\x5a\x7f\xd2\x5a\x7a\xb7\x71\x7a\x13\x1a\xbd\x44\x84\x96\x62\xe7\xb8\x83\x70\xc1\x4b\x6f\x99\x44\xe3\x74\xc2\x1a\xcb\x02\xae\x90\x76\xcc\xd2\x9b\x92\x09\x1d\x8e\xc8\x8c\x76\x8e\x15\xe0\x0e\x9a\x52\x59\x02\x3e\x96\x8d\x5c\xe8\x2a\xa7\xa0\xa5\x98\x0c\x67\x23\xba\x20\x60\x58\xbe\x70\x5d\x64\x97\x9b\xa0\x98\x64\x76\x0a\x16\x1b\x00\x99\xb5\xdb\x6b\xcb\x90\x7c\x36\x10\x55\x05\x93\xf5\x48\xe3\xb8\x1c\x05\xbe\x5f\x84\x7b\xe8\xed\x07\x3d\xc3\xe3\xf7\x82\xfd\x3d\x20\x89\x97\x38\x11\x14\x24\x61\xc0\x86\x7c\xed\x45\xa0\xd0\xee\x05\x91\x84\x8a\x48\x48\xae\xf0\x10\xc3\xef\xa4\x80\x46\x24\xb1\xed\x5f\x30\xa6\xbb\xff\xf8\x0b\x1a\xfe\xc5\xfd\xdf\x7f\x1f\xad\xfe\x31\xf9\xc7\x64\xb0\x7a\x3b\xfc\x9f\x77\xa3\x37\xef\xb0\x64\xfd\x95\xb7\x78\xf7\x56\xd3\x5e\xc6\x16\x71\x38\x66\x0e\xe9\x96\xa8\x6f\x42\x66\x64\x51\x43\x7d\x56\xc4\x64\x45\x7f\xd1\x26\xfd\x4d\x36\xe9\x2f\x32\xb6\xb2\x24\x11\x14\x38\x93\x4f\x6a\xd2\x12\x0c\x86\xfc\x36\xed\xe9\x8a\x62\xba\x40\x33\x45\x7d\x44\x46\xe1\x8a\x4b\xf4\x17\x5b\xf4\x37\x96\xf4\x37\x2d\xd1\x1f\x99\xd4\xdd\x05\x65\x8d\xc9\x6a\x85\x8c\x2b\x42\xa6\x82\xb4\xde\xd1\xb1\xa2\x54\x40\x13\x96\x6d\x78\xa0\x63\x43\xa1\x63\x9b\x42\x8d\x9b\xe2\x2d\x1d\x8e\x8e\x15\x29\xde\xd0\x10\x8d\xc9\x14\x9a\x2a\x87\x86\xde\x60\xe9\xe6\x18\x4d\xd1\xad\x3c\xc3\xdf\x60\xd2\xba\x53\xa9\x40\xa5\xaa\x1d\x37\x82\x7c\xc1\x0a\xa0\xa8\x26\x45\x53\x92\xd8\x29\x98\x3c\x60\x6c\xea\xbe\x26\xf7\xd4\x71\xc8\x29\xed\x90\x4b\xda\x39\xbe\x7c\xab\x7d\xe6\x8e\x2f\xdb\x6d\xfc\x78\x43\x6f\x87\x97\x23\xb3\x96\xce\x4b\x35\x91\xef\x34\x47\x4b\x14\x21\x65\xc6\x81\xc9\xd4\x60\xde\x75\x30\x79\x2f\x96\xdd\x37\xea\x1f\x7f\x7b\x7b\xa3\x0b\xfd\xd6\x6e\xe3\xf7\xf6\x1d\x03\xa5\x14\x5d\xd3\x9b\xe1\xb7\x11\x1e\x5c\x07\xaa\xf4\x6b\x13\xf4\xf6\xc6\xbb\xcd\xd2\xe5\x02\xee\x72\x27\x72\x84\x2e\xe8\xf0\x7c\xa4\xa3\x64\xbc\x27\xdf\xc5\x60\x19\x4a\xf9\xea\xba\x17\xb2\xf8\xaf\xb2\x88\x2b\x33\x47\x4a\xc9\xa7\x34\x15\x17\x58\x89\x72\x57\x74\x8e\xce\xc9\x94\x7c\x27\xef\xc9\x57\x41\x23\xdf\xdf\xd1\x53\xd7\x45\xf7\x6d\x3a\x55\xf7\xcd\xa7\xe4\x3b\x6e\x5f\x91\x53\xfa\xbd\x7d\xae\x3b\xa8\x57\xfb\x7d\xdb\xe4\xc2\xeb\x51\x11\x74\x72\x0e\xaa\x53\x15\x6d\x52\x6b\xbe\x93\x36\x2b\x60\x16\x22\xfd\x73\x42\xa7\x1b\x14\x9f\xba\x2e\x4a\x69\x26\x44\xe4\x09\x1d\x63\x32\xd3\x97\xf7\x13\x6b\xa1\x65\xba\xe4\x71\x43\xe9\x65\xc3\x22\x22\x85\x54\xcd\x3a\x7f\x71\x94\xaa\xd4\xf9\x8b\x03\xba\x53\xc7\xd5\x29\x4a\x53\xeb\xfc\xaf\x49\xe0\xc6\xe0\x3f\x91\x8a\x56\xe7\xdf\x37\xde\xe5\xea\xcd\x5b\x27\x18\xd3\x74\x18\xaa\x64\x9f\xec\xf8\x78\x54\x71\xc8\x95\x2a\xd8\x76\xd8\x50\xe1\x12\xa7\x7a\xd9\x65\x20\x94\xbf\x53\x21\xdf\x27\x34\x46\xd3\x5d\xbf\x63\xf4\xa5\x22\xef\x64\x90\x05\x93\xb7\x74\x39\x28\xe2\x79\x0f\x27\x3b\xfe\x68\x60\xfa\xe8\xe3\x40\x26\xb5\xed\xa4\x6c\x3d\xa6\xd1\x70\xba\xe3\x8f\xd6\x55\x93\xfb\xf1\xc0\x71\x82\xf1\xba\x30\xcc\xd4\x5c\x79\x4b\x28\xd9\x7a\x2e\xfd\x12\x2f\x06\xc3\xa5\xbb\xfa\xcc\x65\x6d\xd8\x39\x0b\xb3\xcd\x1d\x5b\x11\xca\x1f\xd9\xb1\xa3\xd7\xed\xd8\xd1\xd3\x3b\x76\x44\x43\x94\xda\x3b\x76\x54\xe2\x98\x91\xc5\x31\x73\xc9\x31\x97\x65\x8e\x29\x4e\x10\x86\xdb\x34\x32\x14\x13\x08\x0f\x9e\xdb\xbc\x4f\x6f\xde\x42\x02\x5e\x16\x37\xf3\x76\x26\x12\x57\xbf\x8a\x35\xf6\x3a\x1d\x0f\x76\xfc\x60\x2c\xb9\xce\xc6\x1e\xab\xec\x7c\xab\xf3\xf6\x12\xe8\xc7\xc3\x92\x02\x42\x19\x05\x46\x6a\x4f\xb5\x80\x43\xcd\xe6\x2a\x85\x53\x38\x2c\xef\xf7\xb1\xde\x57\xc5\x16\x3b\xa6\xc3\x11\x70\x22\x32\xa5\x4e\xac\xa2\xc4\x4d\x68\x6b\x59\xd1\xc3\xc3\xac\x58\x50\x25\xce\x03\x1c\x7c\x0c\xb1\x2c\xe2\x88\x57\xf7\xd7\xa5\xdc\x5f\x45\xab\xe7\x7a\xec\xe6\xd4\x19\x3b\x94\x3a\xe1\xcd\xcd\x58\x3b\x42\xef\xa2\x1b\xfc\x66\x17\x0f\xfd\xd1\x6a\xd5\x6f\x51\x87\xb3\x9c\x17\xef\x06\x01\xde\x15\xab\x76\x38\x1d\x01\x3a\x8a\x13\xde\xd8\x2f\x43\xf9\xed\x54\x7d\xeb\x15\xef\xbc\x01\x16\xff\x53\x2f\xed\x37\x18\xc9\xd4\x77\xfe\x6a\xe5\x98\x64\x6f\x00\x89\x83\xcd\xfd\x39\xd9\x90\xf5\x0a\xff\x18\x69\xd8\xa4\xf1\x04\x86\x23\x05\x02\x57\xe0\xbe\xcd\xb4\xd9\x8c\x28\xce\x6c\x51\xb0\x8e\xc8\x52\xec\x3d\x31\x45\xcc\x8b\x6e\x93\x34\x63\x27\x61\xce\x06\x4e\xe4\x04\x8e\x83\xdb\x88\x79\xf3\x65\xcc\xa3\x38\x4a\xd8\xc0\x99\x9b\x44\xb5\x4b\x0f\x9c\xa5\x49\xca\x79\x34\xfe\xf6\x30\x70\x1e\x20\x85\x4c\x68\x87\x2c\xec\xc8\x83\xc5\xc4\x05\xd9\xbb\x77\xef\x3a\x64\x4e\xad\xc5\xa6\xcf\x89\x24\x6e\x3b\xb7\x0e\x3e\x46\x11\xcd\x65\xa3\xe7\x04\x0c\x13\x5b\x08\xa5\x74\x6e\xed\xcd\xef\x26\x20\x6f\xc2\x0e\x96\x28\xd6\x3a\x21\x91\xda\x5f\x31\x89\x60\x70\x5d\x57\xa5\xbc\x4d\x86\xd3\x91\xeb\x8e\xd5\xde\xb6\x24\x91\x66\xc7\x58\x90\x69\x34\xec\x8c\x86\xd3\x11\x99\xd0\x94\x2c\xc5\x97\x74\x21\x64\x5e\xab\x42\xc1\x56\x65\x51\xae\x6b\x25\x1b\x88\xf7\xe6\x84\x52\x2a\x2a\x19\xb4\x42\x91\x43\x50\x10\x72\x1c\xbc\x5a\xa9\x46\x3a\x0e\x0e\xaa\xed\xc5\x58\xd6\xb6\x18\x2c\xcd\x86\xb2\xc0\xc1\x72\x1d\x38\x1d\x4d\x14\x6a\x1b\xee\x54\x09\x83\xd7\x80\x9b\x4a\x4a\xe0\x83\xe1\x48\x4b\x7e\x06\x1a\x77\x1d\xcc\xc8\x6b\x05\xcc\xe5\xf3\x02\xe6\xfc\x59\x01\x93\xeb\x3d\x7d\x81\xe6\x5a\xc0\xe4\x64\xde\xa2\x54\xfa\x31\xe6\x25\xa6\x99\x97\x8e\x39\x99\xd4\x53\x94\x98\xe6\x94\x26\x68\x49\x24\xdd\x60\x72\x57\x9c\x6a\xc8\x03\x45\xcb\x5a\x2a\x5e\xd6\x51\xf1\x72\x93\x8a\x27\x92\x7c\x6f\x1d\x88\xe0\xcd\xee\x9b\x53\x34\x19\x2c\x03\xe7\x7f\xd0\x20\x70\xda\x4b\x45\xa3\x6d\x07\x3b\xe4\x01\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\x6e\xc9\x18\x0f\x86\xe3\x51\x30\x2c\xc4\xc8\x6b\xda\x21\xf7\xb4\x43\x4e\x85\xe0\x7b\xff\x56\x7f\x7b\x8c\x1f\x6f\x2d\xd2\x9c\x0c\xee\x03\x79\xa9\x75\x49\xce\xa1\xa4\xc9\x60\x1c\x68\x23\xc0\x7b\x6c\xcb\xc8\xe7\xab\x15\xba\xa4\x31\x4a\x91\x55\x82\xe8\x7a\x27\xb8\xc7\x98\x98\xd6\x61\x4a\xe9\x35\xbe\xa7\x11\x1a\x93\x7b\x72\x87\x4d\xe4\xe6\x53\x49\xc3\xba\xf4\x6b\x22\x3e\x3b\xd5\x98\xe0\x45\x8f\x9b\xa7\xa6\x17\xdf\xa9\x7f\xfc\xfd\x2d\xd5\x22\xe1\x8e\x7f\xfc\x5d\xa2\x89\xa8\xb2\xce\x87\xdf\x47\xdb\xca\xb8\xa7\xd7\xf4\x52\x43\x87\x34\xab\x95\x8b\xaa\x37\xb7\x35\xa9\xbe\x30\x06\x26\x75\x47\x49\xa9\x74\x11\x5b\x9e\x54\xb4\xc0\xc6\xd7\x7f\x62\xe3\x63\xa8\xdb\x3f\xc2\x1b\x72\xcb\xfe\xbe\x0a\xa4\x06\xf7\xc9\xbb\xde\x6e\x01\x90\x9a\x96\x0c\x9e\x95\xd2\x68\x53\x35\x52\xf8\x35\x80\xa1\xe6\xba\xb1\x4d\x3b\xe8\xec\x86\xbb\x37\x4e\x4b\xbb\x6b\x3e\x2a\xcd\x9a\x13\x3a\x04\xd4\x2b\x81\x73\xe3\xc0\xc5\xf3\x20\xdd\xb0\x6e\x62\x94\x97\xac\xbd\x9c\x5d\x13\x3e\xcf\xb0\x5e\x67\xd7\xd1\x8a\x9a\x28\x69\xb2\x01\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\xce\x99\xeb\xa6\x75\xaa\xce\xc8\xb2\xa7\x2c\x41\xb8\x82\xba\xa9\xdb\x3f\x52\x33\xb5\xa1\x24\x83\x99\xda\xfb\x13\xb0\x38\x2f\x19\xff\x3f\xc4\xe2\x0c\x27\xf5\xe1\x96\x4a\x40\x9a\xa2\x09\x98\x30\x5a\x40\x69\x32\x80\xd2\xdc\x8e\xa3\xd9\xad\xc6\x0f\xab\x10\xa9\xdf\x13\x5d\x0b\x93\xf1\xac\xec\xbe\x58\xd3\x3b\x5e\xed\x9e\xa0\x24\x85\xa9\xca\x8d\xe4\xdf\xf3\x03\xbf\x27\x6b\x7e\xea\x2a\x5e\xd7\x7c\x13\xdd\xbe\x72\x50\xe5\x27\x8e\xf8\xff\xba\x4a\x9f\x52\x7b\x9a\x4a\xe3\x28\xf9\xf6\xea\x6a\xe5\x47\x5b\x2b\x7e\xca\xcd\xc9\x54\x9c\xc6\xcf\xf9\xed\x6d\xd6\xbb\xbd\xce\x57\x85\xcc\xf2\xbb\x47\x10\x2a\x48\x63\x1a\x6b\x2e\xf2\x28\xf6\xb4\xaf\x69\x94\xf0\xf7\x4f\x46\x46\x30\x20\xe7\x47\x81\xdf\x2d\x02\xe9\x75\x5f\x14\x07\xab\x40\xf2\xd6\xc7\xb6\x1e\x04\x4f\x75\x1c\x8f\x25\x93\xfc\x97\x88\xcf\xca\xb8\xde\x3d\x8c\x1c\xfd\xc6\xc1\x56\x6b\x75\xe2\x76\xe7\x71\x46\xec\x2f\xd3\x8d\x6b\xb3\x2d\xd1\xab\x42\x9a\x59\xc1\x50\xf2\x62\xb3\x4e\x07\x61\x60\x42\x9f\x80\xe2\x20\xb4\x4e\x66\xcc\x36\xb5\xd3\xa2\xce\x92\xe4\x38\x30\xe7\xfa\x1d\x0d\x8c\x45\x72\xb1\x4b\x2e\xb5\x67\x7f\x27\xf0\x7b\x95\xe0\x26\x64\xbf\x17\xec\xf7\x60\x58\x9f\x3a\x0d\x6b\x7a\x9a\x46\xdf\x9f\x75\x04\xdd\x20\x28\xce\x9f\xa0\xa8\xa7\xce\x72\xa6\xd6\x34\xe1\xe3\x34\xfe\x03\x0c\x43\x7c\xe9\x10\x47\x7d\x5c\xc7\x34\xf6\x9f\xde\x53\x8b\x06\xe4\xd1\xb3\xfe\xe0\x5b\xeb\x97\xdf\xd6\x56\xff\xdc\x7d\x74\x0f\xe2\x67\x2a\x04\xb9\x69\x96\xce\x4f\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\x19\xe6\x83\x76\x8e\xd3\x77\xe1\x31\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\x0b\xd1\x18\x07\x37\x22\x65\xe0\xf4\x76\x7f\x6f\xaf\xb7\x3f\x10\x23\x1b\x24\x68\x6f\xaf\x7b\xb4\xdf\x46\x88\xef\x00\x7a\xe7\x3e\x7e\xf7\xce\xef\x60\xc2\xff\xcd\xef\x74\xfb\xed\xbd\xfd\x5e\xb7\x83\x8d\x36\x2f\x82\x18\x4f\x48\x12\x9d\x15\x00\xa3\x60\x23\xaf\x8a\xb8\xd4\xeb\xe0\x4d\x7e\x11\x25\xe3\x78\x39\x81\xc8\x55\xc5\xc0\xea\xc4\x1a\xd6\xd6\x6a\xfd\x7f\x4d\xa4\x0b\xeb\x63\xe3\x39\xf7\x9a\x18\x87\xd6\x82\xae\x2e\xe4\x97\x6c\x83\x11\x0f\xe3\x68\xfc\x9c\xbf\xf1\x06\x3d\x47\x4f\xac\xe4\x97\xdd\xff\x89\x3d\x01\xee\x00\x0f\xf7\xb0\x3a\x95\x15\x83\x87\xea\x4c\xe3\x0c\xdf\x2b\xec\xe3\xea\xe2\x9c\x99\xa8\x66\x85\xdd\x5c\x64\x22\x02\xbd\x33\x80\xb1\x83\x7a\x33\xb7\x00\x09\x09\x34\x23\x89\xa9\xa5\x6d\xa2\xa1\x91\x0d\xbb\x36\x2d\x10\xaa\xad\x09\x22\x93\xc1\x18\xbc\x64\x4f\x7e\x81\x2c\x50\x2f\xf9\xcc\x32\x36\xad\xe7\x22\xd5\x28\x40\x9b\xbb\x60\xa7\xb8\x62\xd2\x46\x37\x86\x62\xb3\xf0\xbe\x9e\x01\x88\xe3\xad\x97\x85\xf7\x70\xf6\xb6\xf6\xaa\x5a\x96\x30\x1c\x91\x9c\x76\x8e\xa3\x77\xf9\x31\x56\x1e\x32\xfa\x58\x3c\xcc\x01\x6f\x98\xe4\x6f\x53\xd7\x2d\xbf\x2b\xa8\x3b\x1f\x15\xd6\xfb\x61\x75\xf1\x6e\x89\xcb\xd5\xad\xc6\x10\xaa\xda\x33\xd9\x62\x47\xc6\x16\x2c\xe4\x81\x04\xe9\x2a\x61\xdd\x14\xc5\xbd\x64\x0f\xcc\xe7\x61\xfc\x9c\x5f\xfc\xc6\xfc\xa9\x8f\xb6\x2d\x9e\x57\x45\xb3\xa9\x91\x69\x72\x1e\x66\x7c\x8b\x54\x53\xbc\x2b\xf1\xa9\x22\xf9\x49\xc9\xa6\xf4\x75\x4a\x15\x10\xb8\x90\x4c\x5e\x28\xe6\x18\xb2\xc1\x24\x7c\x52\x86\x09\x49\x5a\xc8\x30\x29\x49\xdb\xa1\xfe\x92\x52\x1a\xbe\x48\x86\xa9\xc6\xba\xa9\x9f\x3f\x9e\x45\xdf\x9e\xdb\xca\x37\x27\x50\x7d\xb5\x75\x06\x9f\x0a\x44\x68\xaa\x5e\xde\xbc\xba\xde\xe5\x13\xf2\x78\x35\x98\xce\x96\x4a\x5f\x1b\xd2\x41\x7e\xb2\xb5\xd2\xe7\xf6\x97\x3e\x46\x12\xfa\xf6\x75\xb5\xf6\x8a\xba\x00\x6a\x13\xea\x7a\xc9\xa6\x52\x45\xfe\xdd\x3b\x2c\x9b\xb7\xfa\xbe\x8a\x79\x7b\xd4\xc7\xde\xdf\x4f\x7f\x05\x65\xff\xbe\x02\x17\xf0\xbb\xfb\x12\x5d\xc0\xef\xf6\x25\xbc\x00\x04\x59\xd7\x91\xda\x01\x60\x00\x82\xce\xcf\xe0\x47\x47\x42\x0c\xec\xfb\x12\x61\xe0\xe0\x08\x03\xb8\x40\xef\x50\x42\x0b\x1c\xfa\x0a\x5a\xa0\xdf\xd5\xd0\x02\x1d\x05\x2d\xd0\xef\x61\x72\xaf\x4d\xf3\x4e\x95\x2b\xcb\x25\x95\x68\x39\xe4\x5c\x9b\xf5\x7d\x87\x1f\x7d\x4c\xde\x2b\x83\xbf\x6f\x0a\xbe\x84\x7c\xa5\xe7\x00\x18\xf0\xde\x9b\x92\x2b\x7a\xe9\x4d\xc9\x09\xe5\x3a\x0a\xfc\x6f\x94\x7b\x7f\xbb\x3c\x3f\x23\x5f\xe8\x6f\xae\xfb\x9b\x27\x11\x84\xa3\xe9\x03\xf9\x44\xa7\xc8\xb9\x9e\x45\x93\x09\x4b\x1c\x4c\x3e\x88\xc7\x72\x74\x9e\x33\xfa\xb8\xf6\x16\xca\x22\xfa\x53\x7e\x2a\xed\xb3\x6f\x62\x46\x3e\xd3\x25\x72\x72\xa8\x61\x27\x63\xb7\x51\xce\xb3\x07\x07\x93\x8f\x45\xb2\x90\x7d\x7e\x17\x8f\xe9\x62\xa7\x48\xf9\x81\x6e\xc0\x63\xfc\x54\x77\xf9\x7e\xe2\xba\xad\xd6\x77\x6f\x4a\xfe\x4a\xb9\xf7\x9f\xf2\x1b\xf2\x33\x6d\xfd\x75\xb5\x6a\xfd\xb5\xf8\xb8\xfc\x04\x71\xa5\x4f\x66\x51\x3c\x21\xff\xa4\x89\xeb\xe6\x75\xda\x9b\x83\x16\x3d\x45\x17\xe8\x71\x0d\x5b\xe7\x63\xbd\x1d\xd6\x45\xb1\xb9\xaa\x2d\xfe\x60\x8d\x3d\xc1\x6a\xc4\xbf\x18\x97\xb4\xd9\x85\x42\xfa\x2b\xfa\x81\x70\xdc\x48\x8c\x93\xc0\x0f\x43\x3e\x22\x17\x2a\x13\x49\x5c\x97\xb5\x28\xfd\xc1\x75\x2f\x44\x46\x92\xe0\x75\x70\x41\x7e\xa9\x71\xa0\xfe\x38\x64\x23\x7a\x8a\x4e\x2c\x27\x14\x83\x65\xe7\x5d\x7f\xa3\x8c\xf0\x35\xf9\x91\xfe\xe4\xba\x6a\xb4\xad\x91\xf3\x74\xb0\xfb\xc1\xe6\x1a\xdb\xc8\xcd\xd6\xb5\x28\xa9\xb6\xce\xec\x64\x4d\x7e\x2d\x03\x2a\x26\x25\x57\xd1\x1f\x5c\xf7\x57\xf4\x3b\x24\x93\x3b\x10\xc6\xe8\xb5\xf4\xdc\x26\x77\x28\xc1\x24\x43\x1f\x09\xc7\x03\x94\x78\xcc\xd0\x0f\x00\xa2\x93\x4f\xd8\x75\xd9\xf0\xd3\x68\xc8\x47\xae\x8b\xd4\x2f\x2a\x63\x08\x9f\xa2\xc4\x38\x04\xdc\xc4\x2c\xb8\x47\x1d\x88\x1b\x08\xae\xd3\xf0\xed\x6a\x25\x06\xf6\x13\xb9\x47\x3e\x79\x04\xaf\x7b\x5d\x40\x07\x93\x7f\xaa\x86\xe2\xe0\x42\xfd\x5a\x93\xbf\x57\x8d\x0c\xc5\x6e\x63\xe0\x32\x49\x42\x17\x88\xd3\x1b\x80\x4c\x8e\x68\x87\xa4\x54\x87\x8b\x3c\x4e\xdf\x45\xc7\xf8\x57\x24\x24\xc9\x64\x18\x89\x93\x0c\x1f\x66\x45\x58\x49\xb6\x26\x7f\xa9\x99\xc4\x33\xfb\x1e\x83\x5e\x23\x08\x79\x57\x38\x97\x28\xe7\xd2\x1f\x5c\x57\x8c\x10\x93\x70\xc5\xbf\x13\x86\xc1\xd6\x12\x71\x00\xb2\x53\x0a\x0f\xf8\xfd\x11\x7e\xa8\x34\x31\x76\x10\xd2\xef\xd3\x68\xc8\x46\x78\xb5\xe2\x78\x4d\xfe\x73\x13\x00\x83\xd1\x9b\xf2\x9c\x00\x05\xaa\xf2\x38\x94\xf7\x3b\xe1\xb8\xa0\x60\x66\x39\xc0\x24\xa5\x7c\xa5\x09\x5b\xad\x4a\x13\x0a\x83\x9e\xac\xd7\xe4\xbf\xea\xb1\x1b\x49\x42\xaf\x90\x68\x09\xd6\x67\xc7\xce\x71\x62\x61\x49\x40\x2d\x34\x91\x78\x12\xab\x15\xa7\xf4\x13\xfc\x1b\xae\x56\xfa\xc8\x57\x48\x06\x6b\xf2\xb7\xad\xb5\x00\x45\x92\x88\x5e\xa1\x64\xf0\x7b\x20\x6b\x4c\x45\x8d\xe2\x68\xaa\x8f\xbb\xe2\x84\x2a\x3b\x46\x23\x19\xf2\x62\xb5\x4a\x60\xfc\x7f\x80\xbe\xa6\xb2\xca\x8f\x43\x5e\x4c\x72\xba\x6e\xfc\xb4\x5a\xa1\x14\xa1\x13\xdb\x19\x5b\xb9\xcd\x94\x16\x8c\x3a\xd6\x1a\xa8\x18\xe4\x48\x5e\x5c\x9c\x6c\x2d\x1b\xcd\x96\x23\x55\xf3\x8c\x8e\x37\x05\xa7\x7a\x2d\x2d\xb1\x5c\xf1\x13\x79\x1c\x92\x84\xa4\xac\x8f\x7f\x27\xb0\xec\x0c\x9d\xc8\x9f\xc3\x4f\x23\xa0\x32\x54\x90\x0d\xac\xb5\x7f\x6a\x89\x4e\x2c\xa4\x04\x1b\x60\x98\x66\xe2\xba\x3f\xbb\xee\x3f\xd1\x0f\x75\xf6\xab\x39\xe3\x01\x5f\x63\xf2\x0b\xb8\x85\xbf\x14\xed\x48\x39\x06\x7d\x13\xcb\xf5\xdc\x9b\xd2\xff\x24\xef\xbd\x29\xfd\x95\x68\xc3\x65\xb1\x79\xd1\xff\x82\xc7\x43\xf1\xf8\x17\xf2\xdd\x9b\xd2\xbf\x09\xce\xd9\x02\x18\x20\xd7\x4d\xd1\x0f\xc4\xa9\xdb\x93\x1c\xf2\x17\x20\xf0\x89\x37\xad\xf3\x6a\xff\x05\x4d\xc1\x51\x06\x93\x08\x45\xde\x8f\xed\xc8\xfb\xa5\x1d\x79\x1f\xdf\xb4\x7e\x22\x8f\x72\x7a\x82\x93\x75\xc1\x0f\xfe\x9b\xda\x51\xd0\x48\x94\x9f\xc0\x9d\xc3\xe5\x22\x63\xe1\x04\xb6\x40\xcd\x66\x09\x18\x67\x12\x65\x26\x47\xa4\xe5\x07\x51\xd8\x3b\x04\x6e\x42\x89\xb5\xad\x12\x0b\x4d\x8a\x2c\x93\x7c\x9c\x2e\x44\x71\x79\x09\xd8\x9c\x31\xda\x39\xfe\x6f\x4d\x05\x8c\x1d\xe3\x29\xfa\xef\x21\x93\xc1\x6c\x0d\xb9\x33\xfa\x0d\x4d\xbd\x9c\xa7\x19\xc3\x24\x13\x9f\x70\x7d\x32\x7d\x97\xb1\x63\x3c\x43\x9c\x0d\x33\xf9\x11\x78\xef\xe8\x0e\x2b\x7a\x74\x88\x58\x3a\xf5\x9a\xd6\xcf\x84\xb5\xa9\xe3\xe0\xc1\xe7\x21\x1b\x05\xe2\x1f\x7a\x22\xa6\x9a\x7c\x63\x0f\x1f\x2b\x1f\x45\x53\xd4\xfa\x51\x0c\x6e\x95\xee\x99\xad\xcd\x91\x5b\x8f\x20\x77\xd3\x81\x66\x94\x34\x3f\xe3\x68\x8a\x3e\x0b\xbe\x6d\x45\x64\xe6\x6b\xb2\xcc\xd9\x25\xe3\xdc\xc6\xd4\xc6\x8f\x3f\xd3\x56\x47\xbe\x8a\xe6\x0b\xdb\xd5\x05\x5e\xf9\x6b\x35\xbb\x45\x47\xab\xe0\x96\x4f\xdf\x42\xf3\xc1\x29\x62\x38\xf8\x3b\x3a\x95\x8e\x80\x6b\x52\xf1\x7e\xfc\x95\x6c\xa0\x59\xfe\x9d\x6c\x75\x1c\xfb\x4f\x52\x83\x8c\x18\xfc\x57\x25\x55\xce\x45\x1e\xfc\x6d\x2d\x19\x41\xc2\x68\x59\x70\xf9\xee\x4d\x11\xec\x7c\xd6\x24\x26\xcc\xea\x5b\x7d\x79\x35\xd3\x2a\x4a\xba\x55\xee\x62\xe4\x37\xd7\x2d\xca\x43\xad\x9f\x56\xab\xbc\xe6\xf2\xed\x04\x99\x8b\x37\xe9\x66\xeb\xb4\xe8\x17\x24\xb7\x1c\xe7\x71\x0d\x4f\x8f\x61\xc0\xd6\xd6\xb3\x6c\x98\x5c\x6d\x18\x13\x47\x88\x9f\x70\xae\x54\x92\xe7\x16\xa5\xa2\xd8\x82\x87\x6c\x44\x22\xea\x1f\x6f\x70\xc2\xe8\x58\x3b\x37\x16\x1c\x31\x92\x94\x3d\x45\x19\x15\x7b\x87\x3f\x22\xe8\x01\x09\xfe\x6d\xee\xfc\x61\x57\xfd\xd1\xb2\x27\x99\xc3\xfb\x12\xc2\xb0\xda\x28\xeb\x2c\x40\x01\x74\x28\xab\x98\x23\x60\xd2\xfa\x51\x08\x09\x86\x54\x31\x11\x75\x53\x4e\xbe\x28\x13\x8d\xdf\x24\x9a\x26\xb1\xc4\xb7\xe1\x87\x91\x8e\x69\x69\xa5\x92\x0f\x76\x1e\x1d\xd9\x01\x93\x18\x9d\x98\x35\x2a\x9e\xc4\xc9\x5a\xc7\x4d\x11\x2c\x2e\x46\x4a\xa6\x57\x43\xab\xb0\xe2\x8c\x9b\x89\x06\xd6\x54\x46\xfc\x9d\x7e\xe0\x77\xfa\xa4\xc0\x28\x3c\x0c\xfc\xce\xa1\x71\x43\x29\x8c\xfc\x35\xbc\xc1\x7e\xe0\x77\xf7\xad\x98\xe7\xe5\x70\x9f\x7e\xff\x20\xf0\xfb\x07\xc4\xdf\xeb\x04\xfe\x5e\x87\xf8\x7b\x7e\xe0\xef\xf9\x05\xfc\x81\x7d\xfb\xe9\x07\xfb\x7e\x8d\xef\xb3\x0a\x86\xd0\x0d\x0e\xba\xe4\xe0\x28\x38\xd0\x30\x80\x0a\xfe\xa0\x1f\x1c\xf5\xab\x41\x12\xaa\x71\x3e\x9f\xd1\x84\xec\x6b\xbd\xd6\x5e\x19\x0f\x00\xf4\xe6\xa1\x56\x96\xe4\xea\x68\xb6\x54\x41\x11\x20\xf6\xed\x0f\xcb\xe9\x94\x65\xea\xec\x77\x20\xce\x7e\x49\xe9\xc5\x94\x26\xde\x87\x90\x87\x3f\x47\xec\x9e\x4c\x68\xe6\xbd\xff\xe1\x67\xd7\x5d\x7a\x51\x0e\x29\x33\x3a\xb6\x26\x15\xb4\x16\xe0\x0e\xf5\xf3\xa7\xd3\x5f\x0c\x60\xde\x2f\x52\x11\xbf\x6c\x51\x3a\xc6\xe4\xd1\x2a\x3e\x18\xaf\x95\x6f\xac\x04\x66\xc8\xbc\x93\xf3\xb3\xcb\xab\x0b\x15\x2a\x58\x66\x02\x9f\x3f\x51\x5b\xdd\x32\x9f\xb8\xee\x04\x20\xd3\x72\x08\x3d\xb0\xd0\xce\x87\x44\x6b\x80\x7e\x7a\x32\xf6\x51\x2b\x61\xf7\xcd\x31\xea\x62\x63\xf6\xa9\xe4\x0e\xef\xe6\x81\xb3\xcf\x45\x74\xad\x72\x7b\xea\x42\x65\x1b\x63\xaf\x16\xa5\x33\xd7\x2d\x18\x6d\xc5\xbe\x2b\x52\x16\x32\xb6\x40\x4e\x55\xa2\x55\x2b\x49\x20\x18\x4e\x26\xe6\x2d\x45\x95\x18\xdb\x19\x00\x4e\xb0\x7b\xa4\xd6\xea\x18\x63\x14\xa2\x7c\x27\xc1\x58\x39\x35\x4d\x55\x2d\x0b\xf5\xa4\x1c\x69\x92\xb7\xf9\x31\x06\xe7\xad\x9f\xa2\x84\x1f\xa2\x79\xbb\x4d\x26\xde\xad\x7e\x4c\xda\xed\x42\xff\xb8\x5c\xaf\x0b\x44\x1b\xbb\xff\x56\xb8\x64\x0b\x1f\xa4\x1c\x5a\xdb\xef\xef\x05\x7e\x7f\x8f\xf8\xfd\xfd\xc0\xef\xef\x6f\x43\xbb\x28\x9c\x4f\x9f\x8b\x07\x5b\x10\x52\x4b\x92\xbc\xa0\x44\xf2\xa8\x69\x33\x90\xe4\x6f\x68\x55\x69\x4c\xcb\x8d\x30\x2a\xce\x6a\xc0\x58\xf1\x71\x1f\x23\x07\x40\x22\x7b\x5d\x87\xf4\x9f\x51\x4d\x0b\x06\x5e\x55\xdd\xc8\x44\xad\xbe\xe9\xf7\x03\xbf\x0f\xea\x9b\x6a\x90\xd5\x52\x65\xfb\x7d\x87\x1c\xfe\x99\x95\xf5\xea\x2b\xfb\x94\x70\x7f\xbf\x62\x77\xf9\xaf\x56\xb5\x19\x53\x5b\x57\xf5\xa7\x0f\xe1\xde\xd6\xaa\x0e\x2b\x86\xc7\xff\x6a\x4d\xfb\xf5\x35\x89\xf5\xf1\xa7\x0f\xe0\xc1\xf6\xba\xfe\xf4\x11\x3c\xdc\x5e\xd7\x9f\x3d\x84\x9b\xd0\xd9\x7f\x5a\x55\x26\x7a\xad\xa9\xad\x1c\xfa\xb2\xde\xc8\x48\xfa\xfb\x77\xe4\xe6\xd8\xef\x62\xd4\xd9\xd4\x89\xc2\xf6\x78\x74\x20\xb7\xc7\xbd\x8e\x54\x87\x8a\xed\x72\xac\x4c\x93\xa4\x36\x54\xfc\x98\xd0\x56\xe2\xbd\x1f\x8b\x13\xce\x7f\x49\xf9\xcf\x75\x9d\xd2\xb3\x13\x25\xcd\x84\xcc\x68\x28\x58\xeb\x2f\x2c\xfc\x46\x16\x75\xce\xed\x64\x4e\x97\xde\x72\x0a\xa7\x9a\x4a\x38\xb4\x3f\xcd\xc8\x89\x3c\xd0\x8d\x88\xc3\xd1\x14\xc5\x42\x50\x54\x4c\x76\x56\x5c\x45\xb4\xe4\x1e\x33\x47\x63\xa5\x15\x14\x8d\x87\x40\xc2\x10\xcc\x1e\x5c\x42\x07\x06\x01\x63\x64\x90\x06\xb6\xc7\x24\x5e\x82\x29\xd5\x46\x71\x44\xc5\x23\xbe\xa5\x1b\x16\x5f\x3a\x0f\xb9\x23\x0f\x64\x49\x5a\x1d\x31\xe9\x8d\xa9\xeb\x4e\x5c\x17\xe5\x08\x65\x12\x0d\xe1\xa4\xd0\x2b\xa0\xbb\x52\x43\x0b\x99\xf3\x01\x93\xd0\x3b\x3b\x3d\xfd\x40\x5b\x1d\x12\xa1\xa1\x23\x75\x95\x0e\x11\x07\x5e\x87\x38\xb7\x0c\x0c\x13\x18\x77\x46\x9b\x30\x62\x9c\xde\x96\xe2\x5e\xf3\x21\x1b\x35\x52\xc4\x09\xb3\xf2\x72\x12\xa9\xf1\xe4\x42\xfe\x5e\x08\x69\x59\x5d\xda\x4e\x85\xf0\x2d\x7f\xc1\x26\x9c\xc9\x33\x4f\xaa\xee\x65\xa7\x43\x36\x82\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\xf6\x3a\xc1\x5e\x47\x1a\xa2\x95\xb1\x77\xa4\x9c\xa9\x83\x25\x54\x03\xba\xd6\x4a\x98\x7b\x1a\x88\xbf\x0f\xde\x1e\x66\x76\xfe\xff\x62\x93\x07\xe0\x3e\x28\xb3\x08\x49\xd9\xe5\x49\xe7\x73\xc2\x49\xcb\xaf\x04\xb7\xb6\xc6\x02\xfa\xfc\xaa\x80\x1d\x07\x5a\xa8\xee\x6a\x0c\x22\x05\x2f\xd0\x53\x21\x14\xfb\x7b\xe6\x7a\x15\xa4\x23\x87\x3c\x4e\xe3\x90\x7f\x09\x17\x35\x91\x68\x72\x40\x08\xb3\x8d\x3b\x9b\xa9\x54\x56\x46\x68\x69\xd9\x3f\x85\x68\x49\xc4\xa8\xa3\x9c\x2c\xc9\x92\x70\xd2\x21\x3e\xb1\x4c\x22\x86\xfe\x08\x93\x5c\x4a\x66\xbd\x3d\x8c\x1c\x55\xa5\x14\xca\xaa\x0e\x3f\x12\x99\x69\x2f\xe8\xed\x91\xfe\x5e\xd0\xdf\xd3\x02\xd8\x41\xb0\x2f\xa9\xe0\x35\x37\xae\x7d\x5f\x5a\x2d\x54\xfa\xfc\x84\xa9\x87\xb1\x62\x7b\x85\x49\x87\xee\x57\x61\x19\xb2\x26\x8f\xaa\x0b\x7e\x60\x5f\x7b\x3f\x11\x67\x56\x81\x76\x77\x8a\x06\xdb\x50\xea\x2c\xe1\x59\xb4\xad\xc1\xc6\xe2\xce\xef\x04\xbe\x6f\xb9\x57\x1f\x3d\x67\xa4\xe4\xeb\x0b\xe9\xbe\xda\x69\xe0\x2a\x4b\x50\xcc\x5e\x6f\xb3\x11\xdb\x34\x29\xf9\x16\x8d\x41\x48\x72\x9a\x48\xef\xa4\x08\xa2\x74\x66\x28\x17\x9b\xd3\xe3\x9a\x4c\x69\xe7\x38\xd6\x03\x3b\x3d\xc6\xe6\x18\x82\x42\xba\x44\x39\xe1\x34\x1e\x4e\xc1\xf8\xc0\x75\x53\x34\x96\x10\x68\xaa\xc3\xe3\x0a\x6c\x83\x82\x36\xd1\xe7\xe1\xbd\x5e\xb0\x67\x99\x06\x3c\x11\x28\xd7\x1a\x72\x7f\xb3\xb7\x70\xdc\x7f\xf5\x88\xbf\x06\x55\x6a\x4f\xf9\x0f\xeb\x6d\x1e\x4e\xb3\xa9\x82\x33\x37\xf6\x00\x25\xcc\xcd\x69\x94\x84\x71\xfc\x50\x73\xf3\x1f\x29\x30\x58\x0d\xdb\xb9\x5a\x25\xfa\xa7\x58\xfb\x35\xfa\x13\xd6\xb0\xb5\xbe\x80\xcb\x18\x16\x97\x52\x05\x96\x12\xec\x1f\x08\x6f\x20\x4f\x16\xe3\x21\x18\x7c\xc0\xc8\x2b\xbf\x96\xea\x48\xf5\xb1\x19\x50\x85\xed\xa8\xce\x68\x12\x99\xb1\x12\xb9\xb0\x1a\x4e\xf8\x19\x0b\x30\xe3\xa5\x2d\x2d\xe9\x7f\x96\x28\xf0\xff\xd8\xf5\x3b\xff\xf0\xfe\x31\x69\x23\xf8\x17\x0f\x50\xf3\x4b\x7a\x13\xc5\xec\x1f\xbb\xff\xb8\x6f\xe3\x41\xf3\x32\x9c\x86\x59\xf4\x8f\xdd\x5d\xe9\x71\x93\xd8\x76\x64\x91\x65\x8f\xb1\x08\x27\xa7\x49\xbd\x49\xf6\xeb\x58\x09\x5c\xa0\x29\x6b\x89\x6e\xe0\xf7\xba\x06\xb9\xb2\x20\xaf\x57\x29\x59\xfe\x1f\xf4\xfc\x92\x87\xdb\xa2\xe0\xbf\xb2\xef\x9d\x67\xfa\xde\xab\x86\x2e\xde\x6a\xbe\xf0\x99\x4d\x5f\xbb\xd7\xc3\xc0\x13\xf8\x1a\x7a\xe4\x94\xcd\x19\x7a\x4f\x06\x32\xb6\xeb\xbe\x88\x6e\x67\xaf\xad\xbc\x5b\x54\x7e\x9a\x4c\x36\xaa\xde\x3c\x8a\xef\x75\x30\x72\xc2\xfc\x21\x19\x7f\x52\x97\x1c\xf2\x23\xa9\xf0\x83\x8f\x2a\x9b\x64\x61\x19\xc6\x90\xbf\xdf\x2f\x62\xab\x28\xcf\x58\x1d\x72\x59\x1d\x32\x0e\x14\x36\xcd\xe1\xa1\x72\xb0\x14\x9c\x6a\x49\x73\xe4\x44\xa6\x42\x12\x8b\xe7\x52\xec\x0d\x32\xa6\xa1\xd4\xc4\x91\x29\x7d\x3c\xb9\xbc\xbc\x58\xc6\xec\x73\x94\xf3\xa0\xd5\x21\x27\x97\x97\x97\xfc\x21\x66\x1f\xd8\x38\x0e\x33\x88\xc9\x15\xb4\x7c\x91\xfc\xb3\x60\xb4\x32\x9b\x4f\x4e\xe2\x88\x25\xfc\x82\x8d\xb9\x4e\xf9\x70\xfe\xa5\xf2\x28\xab\xb4\x12\xae\xd2\x6f\x2c\xd1\x15\x7d\x08\x79\x78\x95\x85\x49\x3e\x65\xd9\x27\xce\xe6\x3a\xdf\xc7\x28\x36\xb5\xfc\xf5\xea\xcb\xe7\xf7\x71\x7c\x92\xc6\xb1\xc4\x53\xd7\x89\x9b\x29\x1f\xd3\x6c\x7e\x1a\x33\x41\xaf\x3a\xe9\x92\x89\x3c\x56\xe2\x17\x36\x89\x42\x5d\xff\x97\x68\xce\xae\x1e\x16\x0c\x06\x42\xbc\x3d\x0b\xe7\x6c\x72\x96\x4e\x98\x10\xb3\xc4\x73\x3a\x31\xa3\xf2\x35\x8c\x44\x6f\xff\xb9\x64\xb9\xe9\xe1\xd7\x78\x79\x1b\x25\xc5\x2f\x53\xd0\xe5\xcf\x3f\x4a\x45\x9b\xce\x79\xf9\xf3\x8f\x32\xfe\x99\x95\xf0\x35\xe4\xb3\x4b\x76\x6b\xa7\xa4\x51\xc2\xad\xe7\xf2\xf0\x5d\xfe\xfc\xa3\x1c\xad\x34\x33\x43\x75\x09\x7e\x3b\x52\x75\x66\xd2\xc4\xe4\x5d\xce\x18\xe3\xba\xed\x57\xec\x3b\xbf\xca\xc2\xf1\xb7\x93\x62\xfa\x4c\x9a\x49\x48\x97\x63\xdd\xde\x35\x99\xd0\x0c\x4d\x31\x00\x81\xcc\xde\x4e\xf4\xfd\xfd\xac\xdd\x56\x20\x20\x64\x4e\x27\xc3\xd9\x48\x1c\x2c\x87\xf3\x11\x79\xa0\x91\xf8\x73\x4b\x1f\x5c\xf7\xa1\x38\xd8\x00\x0c\x83\xeb\xa2\xdb\xe1\x72\xb4\x5a\xa5\xe8\x96\x2c\xc9\x18\x93\xdb\x61\xac\x1e\x63\x32\xc7\x24\x1c\xce\x47\x74\x4c\xee\x30\x16\xd4\x0f\x5a\x56\x8e\x6f\x87\x8b\xd1\x6a\x95\xa0\x5b\xb2\x20\x7c\xb8\x18\x29\x41\xbc\x08\x10\x54\x09\xe8\xe2\xef\xf7\x03\xbf\x50\x8b\x83\x42\xfc\xf0\x30\x38\x3c\x84\x55\xf6\x9c\x34\xd7\xdb\x2f\x14\x81\x3f\x00\x6c\xd7\xa7\xf9\x5c\xd0\x0a\x67\x01\x40\x8c\x91\x71\xcc\xc2\xcc\x4e\x84\x04\xc5\x08\x25\x7c\x71\xc1\x00\xb7\x48\x73\xda\x8c\x6a\xbf\xcc\xee\x87\x23\xa5\xdc\x4e\xe9\xee\x97\xcb\x4f\xa7\x4d\xef\x1f\x9e\xe1\xe8\x76\xd0\x8c\x7a\x8d\x86\x36\x39\xd8\xe0\xdf\x5d\x92\xd2\x16\xe0\x39\x29\x40\x04\x9d\x81\x74\x0b\x93\x0b\x94\x0c\x2c\x7e\x57\x77\x7b\xc3\x07\x3c\xf8\x58\xd8\xcd\x2a\x0c\x64\xc9\x11\x53\xbc\x06\x8d\xf1\x7a\x0d\x38\x90\x3f\xb6\x33\xef\x07\x40\x51\x4d\x61\x10\xaf\xa2\x39\x4b\x97\x3c\x08\x11\xf7\x8a\x47\x2c\x0e\xf4\x9f\x12\xce\xb2\xbb\x30\xd6\xef\xf4\xb3\xb2\x1b\xb5\xf7\x14\x23\x4f\xf4\xca\x21\x86\x09\xf8\xd4\xf5\x3a\x7b\x20\xd7\x77\xfa\xf2\x4f\x0f\x93\xd2\xa9\xbf\x0b\x32\x7e\xa7\x17\xf4\x3a\x3d\xa0\x84\x5e\xa7\x0f\x53\xd4\xeb\xec\x49\xa9\x05\x4a\x3e\xa8\x96\x2c\x75\xe7\xcf\xec\xe1\x1b\x46\x58\x19\xe5\xde\x2c\xcc\x2d\xe9\x9b\x24\x75\x22\x9d\xbc\x94\x1a\xa8\x0b\xf3\xc7\x35\x89\x68\x62\x0c\x8e\x56\x2b\xe7\x3f\xfe\xc3\x30\x70\x30\xa0\x29\x6d\x22\xf0\xbe\xbc\xad\x90\x90\x26\x9e\xc5\xe3\x21\x8b\xcd\xf3\x0b\xb4\x8d\x5c\x9a\x51\x91\x44\x43\x18\x40\xec\x7b\xd3\x05\xdb\x02\x63\x3c\xe0\xc1\x98\xa4\xba\x9b\xf2\xee\x17\x45\x36\xa4\x6f\x08\xea\x87\x53\x94\xac\x56\x43\xcb\xc8\xc3\xbb\x8e\x92\xbb\xf4\x1b\xdb\x88\x20\x2b\x69\xd5\xc9\x97\xf9\x82\x25\x13\x26\xe5\x12\xa7\x51\xa5\xeb\x88\xa4\xf2\x36\x91\x7d\x67\xe3\x25\x97\xb1\xfa\x69\xa2\x6e\xc6\xa1\x4a\x69\x11\xf2\x23\x4b\xe4\x10\x34\xa3\xbc\x19\xc6\x19\x0b\x27\x0f\xcd\x6c\x99\x24\xe2\x13\x19\xeb\x7f\x9c\xce\x17\x31\xe3\x6c\x22\x8b\x80\x62\xa1\x1c\xf1\x1c\xa9\x22\x53\xdd\x84\x73\x24\x01\x5f\x32\x6f\xce\xf8\x2c\x9d\xd0\x88\x64\x5e\x98\xdd\xd2\x54\xc3\xce\x84\x34\xf3\x26\x2c\x66\xb7\x21\x07\x0e\x67\x20\x4b\x6e\x50\xa8\x80\x73\x72\xa8\x25\xa7\x94\xc6\x78\x9c\x26\x3c\x4a\x96\x46\x88\xcf\xd7\x6b\xd1\x82\x84\x7d\xe7\xa2\x01\xba\x1e\x2c\xf8\x4c\xc2\x69\xe6\x5d\xab\xbf\x61\x76\x0b\x2e\xb7\xcd\x52\x83\x4d\x7e\xe8\x47\x65\x1c\xed\x31\xa2\x56\xc7\x65\x17\x1a\x99\x37\x89\xf2\x45\xc8\xc7\xb3\xd3\xef\x63\xb6\x90\x07\x00\xf1\x46\xe2\xbb\x38\x4a\x59\x64\xd5\xe2\xba\x99\x17\xde\x64\xcb\x05\xc4\x3b\x81\xb7\xb2\x2c\xdc\x48\xa8\x35\x39\x1a\x5f\x4a\x4d\x33\x8c\x7b\x92\x66\xf3\x30\x76\xc0\xe1\x19\x88\x45\xb4\x38\x11\x83\x97\x26\x6c\x60\xb5\x2e\x28\xba\xf1\x6b\xc4\xe2\x89\x43\xc6\x30\xe2\x35\xa3\xa7\xac\x08\xe1\xbd\x74\x16\x90\xc5\xad\xd7\xc5\x08\xc9\xda\x5c\x17\x55\x87\x40\x4d\xa8\xca\xa9\xa6\x75\x2c\xfb\xbf\x5e\x03\xbe\x72\x88\x49\xba\x36\x4b\x45\x77\xe7\xb1\x40\x9c\x7c\x14\x65\x07\xba\x6f\x42\x68\x0e\x58\x81\x1e\xb2\xae\x42\x50\xaa\xec\xaa\x46\x91\x3b\x59\xaf\xd7\xcc\xbb\xcf\xc2\x05\xcd\x1b\x12\x77\xe9\x71\x5d\xac\xce\x31\xc2\x8f\x45\x03\xa6\xa5\xa7\x89\x78\x92\x08\x79\x8f\xeb\xc6\x6c\x18\x8d\x68\xbd\x65\xd0\xba\x21\x91\xba\xd4\xba\x2d\xa3\xdf\x92\x39\x5d\xb8\xee\x02\x2d\xd0\x25\x1a\x8e\x30\xc6\x8d\xb9\xeb\xce\x5b\x54\xf0\x81\x4c\x23\x2e\x44\xd8\x75\xd1\x8c\xce\x35\x56\xd3\xc4\x82\xbf\xb3\x6e\x65\x2b\x9c\x61\x86\x8b\x8e\x3c\x08\x96\x39\x94\x64\x4e\xf4\x00\x68\x1a\x1a\x79\xd3\x34\x3b\x0d\xc7\x33\xeb\x9c\x29\xb8\xf9\x90\x8f\xea\xb6\x3b\xa5\x12\x06\x8e\xa2\x23\xbf\xe2\x62\x5c\x6e\x2d\xb0\xc3\x86\x9d\x97\x96\xf9\x89\xf9\x20\x44\x25\x38\x64\x6e\xb5\x22\x21\x21\x7e\x34\x8f\x4d\xf8\x52\xe2\xc3\xc9\xb9\x5a\x22\x36\x8c\x46\x84\x91\x54\x12\xb9\xec\x58\x8b\xd2\x58\xd1\xb8\x5c\x08\x31\x10\xe8\x94\x8e\x15\x98\x81\xe6\x6f\xae\xeb\xc8\x38\x75\xc5\x56\x30\x35\xc3\x3e\x25\xce\xf5\x75\x78\x1f\x46\xdc\xc1\x83\x22\x16\xc3\xd4\x53\xa9\x75\x21\x25\x12\xc5\x49\xc4\x01\x8e\xe4\xb8\xe4\xb7\x23\x5f\xab\xa1\xd7\xef\x71\x60\x95\x5c\x57\xa2\x6a\x32\x65\x24\x44\xe3\x8d\x02\xf5\xb0\x6d\x96\xbb\xce\x51\x2c\xd7\x12\x86\x41\x13\x23\xb9\x2e\xdc\xc5\x12\xc0\xd9\x91\xca\x0b\x12\xe2\x20\x44\x78\x5d\x4c\xe1\x8d\xbd\xe9\x32\xb3\x13\x0e\xb9\x5a\xb4\xa3\x12\xde\x49\x26\xed\x05\x0d\x17\x06\xdc\x0a\x52\x70\x00\x6e\xf3\xc8\xa2\x34\x4f\x36\xc5\x75\x11\x37\xbc\x40\x33\x35\x0e\xcc\x40\x9d\x71\x65\x6b\xea\x0a\x34\x58\x68\x0d\x5e\x65\x27\xb2\x04\x41\x4f\x96\xc1\xe2\xd5\x8c\x35\x75\xf5\xcd\x49\xca\xa4\x11\xd7\x22\x4b\xef\xa2\x09\x6b\x86\xcd\x7f\x87\x8f\xff\xbd\x29\xcb\x72\xcc\x68\xc5\x6b\xb9\x51\x2e\x51\x46\x8a\x0e\xc8\x3a\x6c\xc2\x13\x0c\x5f\x12\x9e\xd1\x64\xd7\x37\x0b\xe8\xb1\x3a\x62\x71\x43\x4a\x00\x89\xdc\x1d\x0a\x87\x11\xe0\xd0\x88\x0f\x99\x20\x95\x65\xcc\xc5\xc9\x68\x44\x15\x9c\x11\xe1\x9e\x20\x39\xca\xe0\xcf\xe7\x74\x6c\x96\x75\xab\x18\xa9\xd2\x20\x4b\x0a\xb5\x87\x18\x6f\xb6\x05\x07\x51\x80\x5e\x36\xaa\x66\x44\x65\xeb\x8c\x6d\x5c\xd2\x54\x8b\xab\xae\xf8\x82\xd8\xae\x0b\xa1\x5c\x70\xf6\xcf\xe9\x38\x60\xc3\xce\x68\xdd\xf0\xc1\xc2\x03\x9a\x0e\x7c\xfc\x73\x3a\xa6\x0c\xb4\xe2\xdd\xe2\x8d\xd2\xec\xc9\x77\xdd\x91\x68\xe1\x94\xb3\x4c\x3e\xf7\x46\xca\xbd\x8d\x67\x0f\xa7\x52\x15\x6c\xa0\xe4\x4d\xfd\xf7\xd6\xa1\xc0\x53\x3b\x54\x94\x26\xab\xd5\xe3\xba\xc1\x61\x36\xa9\xd9\x60\x94\x01\x3c\x0c\x03\xb1\x73\x53\x5e\x14\x78\x6a\xbc\xf9\x8a\x6a\xe9\x50\xf7\xcd\xc9\xd2\x94\x3b\xeb\x11\x61\x86\xeb\x5e\x4b\xc4\x2a\x13\xe7\x88\x71\x24\xce\x57\xa6\xc0\x4b\x75\x93\x57\xb4\x73\x18\xc1\x12\xe4\x05\x9d\x29\xe8\x87\x46\xbd\xcd\x97\x24\x0e\x03\x4e\x0c\x80\x44\x51\x7e\x16\x9e\x21\x66\xdc\x95\x94\x30\xb8\xe3\x5b\x40\x19\x4d\xae\xa2\x08\x1e\xb7\xdb\xc9\x5b\x66\xd0\x4e\xa2\x29\xd2\x68\x13\x24\x29\x8c\xc6\x34\xaf\x1a\x26\x62\x22\x04\xd9\x42\x98\xac\x46\xe5\xbd\xf1\x94\x92\x39\x3a\x84\xaf\x0b\x51\x15\x88\x39\xd5\x00\x23\x8f\xe2\x31\x38\xb7\x78\xd3\xb9\xd9\x2d\xb6\x00\xf8\x6b\xe6\x6e\xed\x8b\x77\x25\xf8\xd8\x09\x99\x94\x9e\xa7\x64\x32\x0c\x47\x74\x0a\xe2\x58\x1c\x82\x41\x23\x2d\x44\x59\x7d\xda\x72\xc4\xd2\xcf\x37\x92\x6b\x4c\xe4\xeb\x26\xa0\x02\xe2\xab\x2f\x61\x5b\x1c\xac\xf1\x24\x88\xf0\x66\x95\x94\x52\xc1\x58\x8b\x76\xad\x56\x1c\x40\x3c\x30\x5e\x13\xe6\xcd\xc3\xec\x5b\xdd\x0e\xad\xe4\x80\x32\x86\xf7\xa0\x36\x15\x31\x32\xc1\x01\x62\xde\xf5\x35\x8c\xd7\xf5\x35\x9d\x90\x10\xd6\xd7\x6a\x85\x98\x18\x98\x9a\x76\x41\x34\xc0\x6d\x72\xc7\x1d\x26\x4c\xb4\x2e\x04\xb1\x6a\xb3\x79\x8f\x6a\x03\x0d\xd8\x7a\x4d\x1e\xd0\xad\x7d\x80\xb1\x1e\x86\xe9\x56\x81\x8a\x30\xef\xbd\x7d\xe0\xa2\x62\x31\xc2\x11\x8c\x96\xad\x0b\x08\x48\x1a\x05\xd2\x00\x60\x13\x6a\xf5\xbe\x8a\x2f\x23\xb8\xd9\x2d\xca\xf5\x07\x58\xc8\x12\x7a\xa1\xd4\x4d\x38\xca\xf0\x20\x0c\x42\x20\x54\x54\xb7\x65\x9b\x8f\x81\x6f\x2b\x03\x48\xf3\x01\x18\x51\x3c\x88\x41\xba\x2b\x0f\xae\x43\xee\x9e\x90\x21\xc9\x9d\x39\x50\x6e\x66\x31\xe1\x76\x4d\x61\x23\x47\x0c\xd2\x37\xf6\x90\xd7\xd0\xa7\x85\x67\x94\xc9\x08\x1b\x5c\x87\x78\x2b\x96\x6a\xc6\xee\x58\x96\x33\x84\x0d\x76\x54\x33\xd3\xcc\x80\x17\xb0\x47\x0a\xd3\xda\x5b\xa4\x0b\x24\x61\x8d\x64\x89\x5a\x9f\xad\x96\x7c\x42\x32\xc3\x0f\xb2\xb5\x79\xa9\x19\x40\xb6\x16\xcd\x95\x57\x47\xf4\x92\x9c\x5a\xb4\xf5\x68\xad\x9a\xe0\x94\x00\x7b\xac\x9a\x38\xa8\x78\x71\xec\x4e\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\x8f\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\x47\x7a\xb7\x5e\x93\x9c\xa7\x8b\xa0\x74\x27\x64\x3a\xd3\x51\x7e\x17\x95\xc6\x0d\x3b\x23\x6b\xbb\x2a\xcb\x2c\x4c\xca\x2c\xf2\xa4\xca\x6c\xe9\x43\xee\x48\x77\x61\xbc\x26\x1b\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\x15\x5c\x5a\xad\xc4\x20\xc2\x46\xd5\x4e\x17\xf8\x56\xd1\x3b\xda\x39\xde\xd9\x89\x34\xb4\x73\x75\x74\xa2\x11\x09\x69\x5a\x1d\x21\xd8\xaa\x05\xdf\xf0\xe4\xe6\x8d\x0b\x79\x9b\x25\x13\x47\xa1\x42\xcb\x77\x6f\xa9\xa1\x42\x13\x2e\x4c\x4e\x6e\x4a\x1c\x2d\xbf\x38\x98\x2c\xad\xe4\x42\x78\x91\x65\xe5\xae\xbb\x2c\x13\xf4\xdb\xd4\xc8\x3e\x45\xe5\x45\x1a\xd8\xcb\x54\xf2\x17\x85\xda\x5f\x58\xa9\x6b\xad\xc6\xc8\x5f\x5d\xd7\x5a\x83\x8e\xb5\x96\x9b\xca\x1f\x9e\x3d\x34\x73\x1e\x72\xd0\xef\x37\xef\x23\x3e\x4b\x97\xbc\x09\x9f\x37\xd3\xac\xa9\x5a\xe0\xfc\x81\x06\xaf\xd7\x6b\x22\xf5\x1e\x15\xcb\xa3\x22\xc0\xf1\xd6\x99\x4f\xe4\xcc\x17\xfa\xb5\xca\xcc\x27\x23\x89\x14\xba\x31\x8b\x66\x71\x46\xe5\x89\x52\x61\x31\xa1\xf1\x91\xdd\x4c\x45\x5a\x91\x84\x92\x5d\xaf\xc5\x6e\xe3\xc0\x6f\x58\x64\xab\x95\xa3\xd5\x27\xf0\x8c\x5d\xd7\xa2\x1d\xd7\xe5\x6f\xa9\xdd\x6b\xd8\xaa\x04\x27\xd2\xfb\x54\x3a\xb0\xe9\x33\x78\x5c\x37\xca\x8b\x88\xa9\xe5\xc3\x49\x3a\x40\xdb\xb8\x97\x94\xae\xac\x6a\x84\xa4\x0f\x6f\xb4\x6e\x06\x85\x78\x4d\xf4\xc3\xa6\xe1\xf3\x0b\xb8\x86\xd5\x67\x4f\xba\xb3\x96\x3b\x0e\x89\x83\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\xaf\xc9\x34\x4a\xa2\x7c\xb6\x05\x11\x62\x2b\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\x51\x26\x9a\x58\x17\x59\xf5\x4f\x6c\xa2\xa4\x41\x68\x9e\xda\xce\xb3\xad\x5b\x45\x62\xe9\x55\xf4\x49\x55\xb4\xd2\xc0\xd0\xac\xd7\x1b\x7c\x21\x8a\xc5\xbe\x1a\x2b\x4e\x10\x72\xce\xe6\x0b\xb8\x2a\xd6\x1b\x2e\xa8\x19\x83\xaa\x6e\xda\x1e\x2a\xb3\x35\x3f\xea\xc3\x66\x70\x09\x61\xaa\xcc\x79\x38\xe0\x44\x9d\x7f\x83\x6c\x4d\x8c\x3e\xd7\xa2\x14\x3d\xf5\xf6\xee\x21\xc6\x96\xad\xd1\x86\x16\x88\x0f\xcc\xad\x45\xf0\xb8\xd6\x31\x6e\x6e\xb5\x74\x75\xb1\x4c\x78\x34\x67\x34\x2b\x14\x8c\x46\x3a\x74\x32\x50\xac\x55\xf3\x36\x69\x33\x73\x30\x82\xa0\xc3\x8f\xeb\x91\xf8\x87\xc0\x59\xd6\xda\xc5\x1b\xbb\x6f\x5a\x8d\xe6\x9b\xe6\x7f\xa4\x77\x2c\xbb\x8b\xd8\x7d\xb3\x79\x3a\xbf\x61\x59\x73\xa7\xf9\xb7\xf0\x2e\xbc\x04\xbb\xa1\xe6\xfb\xc5\x22\x8e\xc6\x70\x13\xdc\xfc\x98\x85\x73\x76\x9f\x66\xdf\xe0\xb3\x71\xba\x78\xc8\xa2\xdb\x19\x6f\x9e\x98\x5f\xdd\x8e\xef\xef\x74\x3b\xfe\x51\xf3\x2a\x8a\x27\xac\xf9\x29\x19\x7b\xcd\x30\x99\x34\xc5\x92\xcc\xa2\x9b\x25\x4f\xb3\x5c\x7c\x6d\xfd\xf7\x35\xcd\x44\xe9\x79\xa9\x98\xce\xbe\x28\xc6\x6f\x5e\xf2\x2c\xbd\x91\xe5\xbc\xe8\xb3\x43\xf9\x99\x68\xb5\xaa\xfd\x7d\x1c\x37\xe1\x75\xde\x14\xd2\x5c\x76\xc7\x26\x50\xd4\x7f\x08\x89\x27\xc9\x59\xb3\xd9\xfc\x2c\x7f\x4d\x9a\xcb\x64\xc2\xb2\xe6\x97\x4f\x57\x4d\xf5\xb2\x52\xe7\x25\x63\xcd\x19\xe7\x8b\x3c\xd8\xdd\xcd\xc2\x7b\xef\x36\xe2\xb3\xe5\x8d\x20\xdf\x5d\x26\x86\xee\xb7\x5c\xfe\xf5\x7e\xcb\x77\xe7\x61\xce\x59\xb6\xfb\xf9\xd3\xc9\xe9\xd9\xe5\x29\xd4\x78\x27\x4d\x3b\x9a\xcd\x66\xcf\xf3\xf7\xbd\xc3\x46\xf3\xcd\xae\x94\x9f\x04\x0d\x36\xe6\x61\x94\x9c\xa4\x09\x07\x66\x21\x44\x34\x6b\xb2\x60\xa5\x90\xa8\x90\x6c\xd2\x02\x1c\x38\xa4\x8c\xe4\x34\x19\x86\xa3\x46\xbe\x5a\x21\xf8\xd9\xa6\xce\x2e\x00\x1f\x39\x23\xac\xd0\x54\x23\x91\xc1\x76\x26\x59\x9a\xf0\x95\x0d\xf9\x96\x3e\xae\x49\xbe\x5a\x95\xb9\xb0\x0a\xb1\x3e\xb0\x96\xd8\x49\xba\x8c\x27\xa0\x75\x99\x46\xc9\xa4\x39\x4f\x27\xcb\x98\x35\x9d\x36\x6b\x3b\xcd\x8c\xfd\x73\x19\x65\x6c\xd2\xbc\x79\x08\x9a\x4e\x9b\x4b\x50\xed\xe7\x3e\xc4\xa0\x81\x2f\x1c\x57\x62\x2a\x56\xe1\x22\x27\x63\x05\x04\x7c\x13\x8e\xbf\x11\x69\xee\x0a\x37\xed\x28\x36\xb6\x8d\x13\xda\x39\x9e\xbc\xd5\xcf\xc7\x93\x76\x1b\x3b\x6a\x35\x89\x35\x19\x0f\x27\xa3\xc1\x74\x38\x19\xd1\xa5\xe0\xfa\xd0\xba\x72\x3a\x0f\xe0\x4f\x8a\x44\x92\x6d\xc2\x66\xdf\x76\x4e\x31\x59\xae\x1d\x41\x20\xd3\x28\x81\xeb\x24\xb5\x78\xef\xa3\x64\x92\xde\xbb\xae\xf5\xce\x44\xca\x5e\x64\xe9\x98\xe5\xb9\xeb\x9a\x23\x93\x4a\x19\x89\x16\x3c\xae\xcd\x21\x4b\x6e\xfd\xea\x25\x86\x90\x09\xc0\x3d\x60\x41\x5a\x3f\x21\xc8\x2a\x29\x74\xa1\xae\x8b\x32\x5a\x4e\xf2\xae\xaf\xe3\x34\x9c\xb0\x6c\x80\x92\xca\x51\x19\xf6\x77\x12\xd5\xa6\xd6\xdf\xd6\x45\x54\x6c\xfc\x03\x14\xc1\x6c\x50\x4e\x22\x33\x1b\x34\xc3\x81\x4e\x1f\x8e\xec\x17\x1c\x93\x64\xc8\x46\x34\x2a\x07\x3c\x67\x96\xb5\x19\x03\x80\x72\xbc\xc6\x9e\x82\xc0\xa7\x9c\xc0\xe5\x69\x5d\xf6\x1f\xd2\x34\x66\x61\x82\x12\xe9\x31\x69\x3d\xb6\x0b\x22\x5f\x13\xee\x5d\xb3\xf0\xdb\x75\xce\x58\x02\x07\x40\x3d\x0e\x54\x85\xdf\x84\xc8\xfb\x30\xfd\x01\x27\x1a\x6f\x23\x48\xd6\x38\x40\xcc\x1a\x36\x15\xea\x93\x70\x3b\x4d\x7d\x88\xd7\x08\x13\x86\x9c\xff\x80\x55\xbe\xbb\x13\x25\x9c\x65\x49\x18\xe7\xbb\x37\x59\x7a\x9f\xb3\x6c\x87\x25\x77\x51\x96\x26\x42\x26\x55\x4d\x23\x43\x43\x8d\x15\x5b\xf0\xd2\x9d\xb2\x9a\x93\x4a\x9c\x51\x46\x9c\xeb\x6b\x96\x7f\x81\x85\x62\x70\x34\x5a\x9d\x35\x26\x4c\x0c\xd7\x87\xf3\x2f\x94\x79\x51\xfe\x31\xca\xd8\x34\xfd\x0e\xbf\x4f\x66\x59\x3a\x67\x94\x79\xcb\x9c\x65\xef\x6f\xc5\x21\x94\x79\xb3\x28\xe7\x69\xf6\x40\x99\x17\xa7\x92\x9b\x53\xe6\x49\xd2\x55\xdb\x93\x3a\x3f\x6d\x6c\x4e\x39\x8b\xa7\xae\xab\x22\xc2\xc8\x07\xf1\xaf\x27\x1b\x4c\x29\x35\x9e\x0a\x35\x0b\xe0\x17\xb5\x38\xe0\x8b\x72\x54\x29\xfd\x6a\xa3\xc2\x49\x3a\x06\x53\x05\x53\x69\x91\x00\xc5\xe8\x47\x6a\xbf\xd9\x28\x45\x77\xd3\x94\x52\x24\x40\x29\x66\x18\xec\x37\x1b\xa5\xa8\x61\x33\x85\x98\x67\x28\x43\x0f\xaa\x95\xbe\x51\x42\x12\xde\x45\xb7\x62\x67\x36\x65\x58\x29\x50\x8a\x79\xa6\xa5\x77\x8e\x74\xf5\xad\x29\xa9\x98\xd8\x86\x21\x02\xae\x50\x6f\xf9\x40\x94\x19\x88\xaa\x1a\x66\x82\xb3\x86\x3a\xb5\x0c\x4a\x5d\xd7\xb9\xcc\x50\x24\xea\x4a\x40\xe5\x53\x9d\xd2\xd9\x74\x6f\x23\xed\x6d\x30\x28\x37\xbf\x68\x56\xe0\x7c\x7e\x48\xbe\x37\x91\xd8\xc9\xe6\xe9\x84\x61\xa7\x61\x53\x63\xaa\x8e\x18\x52\x1d\xa9\x97\x73\xe6\x8d\x81\x70\x01\xc3\xc3\x13\xf4\x1f\xe2\x86\x45\xcf\xa1\x8a\xa4\x00\x5f\xd5\xd1\x1a\xe0\x0c\xc4\xf1\x55\x16\xdd\xde\xb2\xac\x61\x2f\x8b\x1c\xa0\x4d\xea\xd6\xad\xa0\xc9\x34\x66\x9b\x6b\x95\xe8\xcc\x13\x76\xb3\xbc\xb5\x1f\x17\x19\x1b\x87\x9c\x4d\x76\xa6\x2c\xe4\xcb\x8c\x55\xd6\xb5\x64\x9e\xff\xea\xda\xd6\x6c\xd1\x5a\x9b\x49\x23\xf3\x3e\x9f\xff\xf8\xe3\xe9\x05\x5c\x6f\x3f\xc6\xe9\x6d\x50\x91\x10\xf4\x5d\x23\x62\x54\x75\x0c\x7b\x71\x7a\x6b\xc2\x36\x1b\x2b\x20\xbc\x26\xf7\x61\x96\xbc\xe4\x7b\x91\xaf\xb6\x00\x26\xf6\xf4\x97\x94\x00\x19\x6b\x8b\x88\x92\x69\xfa\x92\x12\x44\xbe\xda\x02\x60\x72\x36\x4a\x28\xee\x00\x54\x09\x1e\xe4\x1b\x20\x5e\x14\x09\x29\x7a\x83\xb7\xca\x0c\x5e\x54\x6f\x98\xe7\x2c\xe3\x2f\x69\xba\xcc\x59\x57\x88\x82\x2a\x88\x68\xd2\x28\xe6\x3b\x7a\x8a\x52\x79\x18\x25\x2c\x7b\x82\x56\xad\xec\xe9\x7d\xc2\xb2\xda\x37\x4b\x1e\xc5\xdb\xe9\x7b\x91\xc6\x0f\xd3\x28\x8e\x6b\xa8\x1a\xf4\xd5\xff\x32\x65\x2f\xb2\xe8\x2e\xe4\xd1\xef\xac\x46\x55\xcc\x86\x9d\x11\x49\xe8\x8d\x3a\x2c\x26\x46\x43\xa3\x19\x93\xc6\xf7\x08\x00\x2e\x2f\x12\xd9\x43\x1a\x0d\x7d\x13\xa9\x40\x7c\x4a\x51\x87\x64\x9e\xec\x30\x46\x69\xdb\x09\x9c\x76\xd8\x76\x76\x9c\xf6\x35\xdc\x63\x7c\x7c\x7f\x72\x75\x7e\xf1\xeb\xf5\xc7\xf3\x0b\xca\xbc\x13\x3d\xae\x94\x79\x17\x4a\x2a\xb0\x97\x5d\x6a\x2b\xc0\x8d\xf8\xcd\xd4\x9d\xb5\x71\x9f\x86\x8b\x15\x21\x89\xa9\x6b\x35\x55\x90\x8c\x78\xe0\xc1\x6c\x50\x2e\xff\xae\x56\x85\xca\x77\x1c\x8e\x67\x4c\x36\x78\x12\x41\xd1\x61\xf6\x80\xe1\x0e\x72\x3c\x63\x32\xa7\x2a\x73\x1a\x8a\x9d\xf3\xe1\x4b\x98\x84\xb7\x2c\x3b\xd9\xf6\x61\x4d\xb6\x52\x31\x51\xfe\x81\xe5\x3c\x4b\x1f\xd8\xc4\xe8\xa2\x4d\x5a\x94\xdc\xd2\x96\xaf\xee\x9f\xad\x3b\x17\x03\x67\xe3\xc5\x69\xfa\x6d\xb9\xd8\x84\x7e\xa8\x96\xbd\xa9\xb0\x3b\x09\x13\x10\xfd\x85\x9c\xd8\xfc\x5f\x55\xd0\xff\x36\x41\xff\xd0\xe4\x33\xd6\x84\xc1\x69\xce\xc2\xbc\x79\xc3\x58\xd2\x9c\xe8\xa2\x9c\xc2\x73\x5c\xa9\xae\xed\x21\xf6\xa4\xde\x25\xfa\x9d\x69\xbc\x91\xc4\x53\x9f\xd2\xaa\xce\xba\xdc\xcf\x0e\x99\x28\x00\x7a\x92\x48\xcd\x49\xf4\x3b\xfb\xb0\xf9\xe9\x0c\x59\x17\xa6\xa5\xe1\xeb\x88\x2f\xe1\x8e\x60\x33\xec\xb8\x95\x71\xb5\xb2\xc2\xb5\x0c\x90\xaa\x95\xa8\x72\x71\x4d\x20\x75\x41\x8c\x40\x01\x62\x25\xe8\x60\xe9\x75\x53\x3b\xe4\x23\x22\x4e\x01\x26\xcf\xd8\xa4\xea\x51\x70\x5d\xf3\x13\x61\xbc\x7e\x6e\x08\x31\x0c\x07\xcc\xc5\xa7\xe4\x37\x56\xb9\x75\xdc\x60\x74\x8f\x6b\x3c\xe4\xde\xf9\x2f\x67\xa7\x17\x23\x5a\xd0\x3a\x61\x30\xa8\xb2\xc1\x1f\xd3\x6c\x93\x60\xb6\x2d\x9d\xd7\xd0\x50\x51\xfe\x0b\xe9\xc8\x52\x4d\xd5\x76\x5e\xc6\xce\x51\x21\x11\x5c\xb7\x25\xaf\x3f\xf3\x45\x38\x66\xc5\xa1\xcc\x7c\xc9\xbe\x2f\xc2\x64\xf2\x39\x1d\x87\xf1\x67\xa0\x66\xe8\x5c\x61\x27\xa2\x9c\x7d\x08\xc3\xa0\xf7\xb1\x0c\xa4\x42\xdb\x95\xb5\xe5\xb7\x28\x65\x45\xb1\xb7\x8c\x9f\x2f\xd4\xad\xa2\x93\x47\xc9\x6d\xcc\x78\x9a\x38\xd6\x15\x7d\xfe\xe2\xcf\xa5\x41\x27\x8f\x42\xce\xec\x02\x8c\x71\xdb\xe6\x51\x52\xcb\x8a\x30\x14\x59\x31\x14\x59\x69\x28\x12\xbb\xc6\xcd\x71\x10\x65\xeb\xa0\xc3\x2d\x71\x28\x35\xdd\xd0\xe7\x4a\x4d\xa9\x49\x59\x27\x11\x99\xf0\x59\xeb\xaa\x59\x68\xc5\x72\x35\xb6\xcc\x0d\x8b\xd0\x67\xea\x73\x08\x9b\x56\x6b\x7d\x2a\x36\x06\x33\x24\x0d\x6b\x04\xad\x36\xba\x2e\xa4\x24\xae\x2b\xe7\xc9\x75\xe5\x80\x4b\x33\xc1\x04\x6b\xdd\x7b\xb1\xda\x68\xa4\x4f\xd3\xa5\xdb\xdc\x82\xdb\xb8\x6e\xcd\x35\x7d\x5a\x2c\xd1\xb4\x58\xa2\x24\x5d\xbf\xac\xf5\x24\xb2\x1b\x6d\xf7\x25\x71\x5d\x39\xf0\xd1\x6a\x25\xbb\xb0\xd9\x07\x3d\xce\x45\xc3\xff\xd5\x31\xb3\xc6\xab\x55\xae\xac\xac\x53\x7a\x55\x77\x64\x3f\x92\xd5\x4a\xf6\x47\x57\x01\xb8\x2c\xa2\x5f\x35\xfd\x89\xc3\x3c\x6f\x6c\xb2\x0e\xa3\x7b\x92\x1d\x6e\x2a\xe6\xe1\x40\x11\x89\x8c\x5c\x54\xac\x90\xb8\xdc\xd2\x6d\xcc\xb7\x44\xbc\x1b\xf2\x8a\xb5\x46\xb4\xd9\x1d\xc7\x15\x7a\x7f\xd4\x62\x86\x68\xeb\x1c\x02\xdc\x65\x05\x7c\xe0\x56\xae\x4f\x53\x92\x5a\xcd\x1d\x6f\x0e\xac\xe2\xdd\x79\xc3\xac\x8e\x04\x0e\x0e\xf6\x3b\x58\xf0\xc5\x85\x66\xe7\x38\x7a\x6b\x6e\xdb\x23\xed\xf0\x91\x52\x3e\x8c\x46\x24\xa7\xa9\xc1\x31\x25\x31\x4d\x3d\x80\x67\x9b\x46\x2c\x23\x63\xf1\x04\x8c\xa2\x91\x0c\xf3\x11\x1d\x0f\x04\x83\x89\x89\x0e\x52\x33\x5e\xe3\x00\x52\xb0\x10\xcc\xf2\x0f\x0f\x49\x38\x8f\xc6\x82\xa3\x16\x4f\xb4\x15\x42\x0e\x7b\x12\xa6\xe5\x1d\x51\x0f\x26\x49\x4a\x92\xe0\xb0\x33\xda\xb0\x21\x2f\x8d\xc6\x63\xd1\x61\x6d\xbf\x63\xaa\x0d\x5a\xfe\x7a\x23\xcc\x15\x77\xdd\xb1\x82\xbc\x24\x26\x31\x93\x89\x80\x62\x9e\x00\xd9\x09\x56\x7b\xf5\xb0\x60\x66\x9f\xcc\x01\xab\x53\x24\x5b\x49\xdc\x36\x57\x9d\x54\x1c\xbd\x24\x07\x21\x99\xd6\xc9\x7d\x63\x0f\xe2\x0b\x92\x00\xa6\x8e\x86\x55\x3f\x4e\xf4\x5c\x44\x94\x0f\xb3\x61\x32\x1a\x35\xa2\x82\x79\x44\x05\xf3\xb0\x06\x6f\x06\x8e\x68\xdb\x24\x4c\xa5\xf5\x7b\x99\x54\x29\x95\x75\xb6\xac\x9c\x2a\x2b\x63\x41\xb4\x0a\x21\xa1\x51\x96\xac\x17\x90\x63\xbe\x5d\x7a\x96\xcc\x5c\xdd\x4d\x19\x19\xdc\x96\x97\x99\x92\x25\x64\x1e\xb1\xac\x29\x57\xb2\xf0\x32\x8e\xc1\x70\x4a\xbd\x34\x7b\xf8\x04\x52\x13\x75\x67\x17\x4e\xd8\x95\x36\x63\xb1\xad\x28\xac\x05\xa0\x92\x01\xba\xa8\x10\x8d\xf0\x5a\xd3\xdc\x86\x08\x9c\x3d\x61\x19\x63\xa1\xe0\x55\xeb\xd7\xf7\x41\xa5\x36\x95\x3b\x5f\x30\x8b\x79\xf8\xcd\x64\x42\x45\xef\xcb\x7d\xc7\x78\xb3\x97\x6b\x92\x29\x7e\x4e\xeb\xec\x25\x8a\xaa\x5e\x26\x65\x49\x46\x29\xde\x68\xc7\x90\xfc\x05\x72\x56\x13\x3d\xa4\x4b\x7d\xf3\xc6\x26\x4d\x9e\xea\x92\x9c\x76\xa9\x07\x6d\x07\x97\x65\x32\x8b\x69\x55\x4c\x7e\xe5\x42\xae\x76\xa3\x6e\xf2\x31\xf8\xcc\x58\x25\x65\x34\x25\x49\x89\xeb\x54\x69\x20\x95\xd3\x1d\xd2\xac\xc4\x9b\x99\xeb\xa2\x50\x2c\x86\x48\x9c\xe2\xa3\xdb\x04\xa3\xc7\x35\x88\x73\x98\xb4\x8a\x59\x51\x03\xbe\x39\x8c\x1f\xc3\x28\x2e\x75\x3f\x4c\xcc\x38\x36\xd3\x69\xf3\xdf\xd5\x70\x94\xdb\xdf\x76\xfe\xdd\x6b\x7e\x49\x73\xde\x8c\xa3\x6f\x2c\x7e\x80\xaf\xe6\x92\xf1\xc6\x0f\x4d\xa5\xf6\x6a\x42\xd5\xcd\x34\x93\x85\xca\x28\x1f\xea\x3e\x45\xaa\x05\x3c\x07\x37\xea\x3c\xba\x8a\x76\x5f\x47\x49\xc4\x3f\xca\xf5\x3f\xd8\x92\x2e\x8f\x28\x41\x69\x50\xcc\xef\x70\xb5\xaa\x19\xa0\x10\x63\x82\x3a\x04\x4c\xff\xce\x05\x89\x60\x14\x5a\xab\x5a\x85\x2c\xce\xe9\xc6\x08\xa2\xe2\xea\x45\x2e\x47\xb5\x16\x49\x2e\xc5\x67\x72\x47\x77\xff\x67\xf8\x3f\xc1\xa8\x1d\xc0\xbf\x7f\xd9\x25\x0f\xdb\xd8\x8b\x25\xd9\x8a\x69\x64\xc5\xf9\x62\xaa\xaf\x29\x98\xf9\x69\x1f\xc8\xd5\x3e\x2d\xb7\x1b\xf9\xb3\xfc\x1a\x96\x68\x28\x09\x67\x83\x51\xb2\x72\x86\xd2\xc1\xfb\x9a\x97\xb6\x8a\x6d\x2c\x59\xfb\x30\xbc\x2c\x5f\x5c\x08\xdd\x92\x77\xd7\xdd\xed\xc8\xac\x86\xcc\x9e\x62\xf2\x2a\xaf\xea\xfa\x0b\x72\x4e\xc3\x28\xbe\x64\x1c\x36\x82\x4b\xa6\xd8\xf3\x75\xba\x78\x41\xdb\xc1\x24\xf4\xc9\x8c\x6b\xbd\x4b\x6e\x70\x61\x6e\xed\x19\x75\x2e\x0a\xec\xbe\x99\x9a\x48\x57\x84\xab\x69\x61\xd9\xe6\x2d\xd7\xd6\x03\x50\x69\x69\x8a\xb3\x61\xa9\xc3\x9e\x3c\x71\xa3\x04\xd7\x10\xc6\x30\x19\xd1\xca\x50\x88\xa4\x4c\xb4\x64\x99\xd4\xb4\x45\x2b\xc0\xb6\x55\xfa\xa2\x69\xd6\xe6\xe2\x9b\xcd\xe1\xa3\xd2\xcb\xd2\xf4\x6e\xbc\xd4\x0d\xe6\x23\x52\xdb\x63\xae\x06\x14\x8a\xa8\xc2\x81\x2b\x54\xac\x5b\x4b\xcb\x50\xd1\xcf\x94\xc4\x51\x75\x25\x52\x5a\x98\x20\xa4\xea\xb3\xb6\x4e\xc4\xba\x42\xa5\x49\xcd\x2c\x4d\xaa\xe1\x1a\xc9\x1a\x4c\xff\xf3\x71\x16\xdd\xb0\x5a\xb2\xb0\xaa\xd3\xab\x5b\x19\x58\xe9\x47\xa5\x97\xd2\xb8\x29\x51\x9a\x0c\x9e\x79\x8f\x18\x0e\xea\xfa\x31\x28\x3d\x99\x76\x89\xec\x4c\x34\xd4\x8c\xcb\x47\x2d\xcc\xfc\xc1\x16\x9b\x82\x06\x5b\xd2\x5f\xd8\xc2\x8d\x06\x6d\x36\x75\xbb\x83\x56\x99\xbb\x0c\xd9\xc8\x80\x54\x6d\xbc\xa9\x50\xb9\x55\x1b\x50\x96\x2d\xfc\x54\xc8\xeb\x15\x83\x62\x97\x32\xd8\xfe\x0a\xca\x7d\xc9\xe0\x6c\x7e\xc4\x8c\x20\x88\xa0\xdd\xe5\xdb\x6b\xa5\xe5\x6a\x29\x9d\xd6\xcf\x62\x83\xb6\x7b\xaa\x4f\xd1\x5a\xfc\x71\xdd\x42\xed\x54\x59\x36\xfa\x85\x38\x15\x40\x3e\x4b\x11\xa3\x14\xd5\x5b\x75\x25\xd5\x93\x0d\x2b\x0e\xa2\xe6\x74\x96\x11\x53\x60\x90\xac\x4b\x1a\xc2\xd2\xda\x05\xa8\x3c\xc2\x3d\xc5\x20\x3e\xa6\x99\x38\xfc\xd0\xaa\xb9\x48\x85\xb5\xc3\x84\x8b\xcf\x8c\x5e\xaa\xe6\xcb\x12\xff\xab\x7c\xdd\xd8\x90\xad\xb7\xf2\x0d\x5e\x4e\xd9\xac\x12\xa0\xec\xb9\xd5\x89\x3a\xfe\xb5\x95\x0b\x6b\xce\x98\x6d\xf4\xe8\x25\xac\xdc\x84\xd0\x2a\x18\xec\x46\xd7\xb2\xad\x5d\xcb\xb6\x76\x0d\xfa\x94\x95\xda\xb3\xbd\x57\xa6\x72\x56\x56\x5d\x64\x96\x58\x97\x0d\xf9\xc8\x58\xd4\x8b\x56\x6a\x15\x48\xdd\x91\x1b\x65\x35\x93\x96\x8c\x70\xa5\xbc\x81\xf8\xe7\x25\xeb\xac\xd0\x5e\xc2\x22\x53\x38\x80\x44\xba\x46\xd5\x28\xa4\xb5\xf9\x5e\xb9\x71\xc7\xa8\x4e\xe4\xb2\xb9\xd2\xc6\x1b\x3a\x1c\x61\x2c\x1d\x13\x1e\xb5\x9a\x23\xe0\xc4\x28\x39\x02\x00\x7c\xe0\xc5\xb9\x61\x8b\x7b\x7b\x65\xde\xa5\x82\x72\xc7\x07\xb3\x50\x1d\x8a\x4e\xb4\xb2\x64\x9c\x59\x6a\x8d\xd2\x3c\x34\x2c\x0b\x62\x9b\x8e\x74\xdf\x0a\x11\x71\x18\x15\xfd\x2a\xa5\x3e\xdb\xa7\x44\xf6\xe9\x5b\x92\xde\x27\x75\xab\xd2\x8a\x0a\x41\xd2\x6d\xd2\x5c\x58\x56\x5e\x6c\x88\x1f\x18\x42\x97\xe5\x6f\x75\xc4\xa9\xe3\x5c\x6b\x33\x96\x34\x1c\xe6\xa3\xc6\xb2\x3c\x79\x4a\x66\x4f\x87\x4b\x88\x43\xb2\xae\xe1\xfa\x4f\xac\x79\xbb\x2f\xb0\x34\x5e\xb2\x5b\xd8\x1f\x81\xfc\xb1\xfd\x35\x94\x59\x3d\xf3\x70\x92\x2a\xe6\x58\x61\xf5\x75\x1b\xe6\x9d\xc4\xf7\x90\x82\x69\x49\x57\xb4\x95\x23\x46\x36\xa5\xea\x70\xde\xd5\xc1\x28\x2d\x74\x7b\x41\x59\xca\x28\xa6\xe5\x2f\xb9\xe6\x11\xa7\x65\x04\x68\x1d\x16\x3a\x2b\x9c\x77\x35\xab\x2b\x6b\xba\x9e\x64\xde\x9f\xfe\xa5\xe6\x56\x54\x6a\x7f\xb4\xc9\x1b\xb7\x12\x7f\x5c\x98\xd8\x28\x6a\xb0\xed\x56\x82\x6d\xca\xea\x70\x51\xcd\x47\x8d\x74\xb5\x42\xf2\x67\x9d\xf4\x6e\xfc\xc3\x56\xab\x8c\xe4\x34\xad\x1a\x6b\xe6\x26\x44\xbe\x32\xe7\x64\x4f\x34\x4f\x81\xdd\x1a\x37\xc7\x61\x38\xa2\xcb\xad\xfb\xfa\x56\x71\xc3\x92\x34\x5e\x24\x23\xd5\xdf\x87\xc1\x97\xd5\x0b\xb0\xdb\x0a\xd3\x2c\xeb\x7b\x56\xab\xa7\x6f\x9e\xb6\x5e\x38\xc1\x24\x90\x54\x4c\x43\xe9\x8c\x53\xb9\x65\x4a\xf5\x60\xa6\x70\xcb\xc5\x8a\x33\xce\x2c\xcc\x51\x71\x99\xc0\x2c\x8a\x40\x91\x3d\xe4\x5a\x8a\x4a\xb0\x65\x7b\x19\x99\x5c\xe5\xb3\xa0\x9d\x65\x60\x55\x16\x4e\x26\x28\x11\x82\x64\xb5\xb1\x34\x22\xd1\x7a\x6d\xd9\x23\x3c\xc0\xa4\xdf\x6c\xe3\xc0\xd7\x14\x39\x4e\x1b\x62\x07\x66\x61\x32\x49\xe7\x08\xb7\x3f\x84\x9c\x79\x49\x7a\x8f\xb0\x38\x3b\x41\x5c\x15\xe4\x78\x32\xea\xdc\x36\x1b\x93\x27\xad\x17\xff\x4c\x8b\x28\xcb\x41\xcb\x72\x61\x74\x5d\x56\x35\x2b\x1c\x68\x8f\xdb\xf5\x1f\x30\x35\xb9\x65\xbc\xba\xf2\x2d\x5f\x30\x79\x90\x5b\x13\xe6\xe5\x9b\xf9\x18\x7e\xd4\x39\x28\xb8\x97\xde\x32\x7e\x7a\xf6\x73\x4d\x41\xe0\x1f\x2a\x5e\x81\xc7\x2d\x97\x2e\x26\xb7\x71\x7a\x13\xc6\xb6\x19\x89\xa0\xca\x04\xa1\x68\xd3\xc0\x52\xe6\x75\x5d\xf9\x17\x5b\x08\xff\x91\x97\xa4\x13\x80\x29\x1b\x44\x1a\xc9\x74\xb5\x4a\x36\x1d\x08\x0a\xb3\xcc\xfa\xf7\xda\x46\x59\xfe\xc5\xab\x55\x9d\xfd\x9c\x65\x7e\xee\xba\xd6\xc3\x6a\x95\xb0\xfb\xa6\xe5\x71\x50\xc8\x2d\x0e\x46\xb8\x61\x7a\xab\xed\xfa\x6a\xd9\xac\xc5\xb3\x1f\xa3\xb9\xf4\x75\x60\x44\x7b\x3d\x30\x22\xc7\x3a\x60\xeb\xc0\xbc\xe6\x9e\xfa\xb5\x5a\x15\x39\x8d\xa7\x84\x48\x54\x1f\x71\x35\x53\xab\x15\x5b\xaf\x51\x4a\x52\x69\x2c\x2d\x9a\xa6\xa7\x44\x5b\x0f\x3e\x9e\x9e\xbd\xff\xe1\xf3\xe9\xf5\xf9\xd7\xab\x4f\xe7\x67\xef\x3f\x5f\x7f\x3c\x7d\x7f\xf5\xd3\xc5\xe9\x65\xd0\xf2\xc9\xe9\x7f\x5d\x9d\x9e\x7d\xb8\xfe\x7a\x71\x7e\x75\x7e\xf5\xeb\xd7\xd3\xcb\xe0\x51\xc1\xba\x75\x88\xee\xbf\xf8\x2d\x4f\x7d\x82\xca\xc8\xe7\xf3\x1f\xaf\x2f\xaf\xde\x9f\xfc\xfd\xea\xe2\xfd\xc9\xe9\xf5\xf9\xd9\xf5\x87\xd3\xaf\x17\xa7\x27\xef\x45\xf1\x22\xaf\xc8\xf0\xf3\xe9\xc5\xa5\x7a\xbc\x78\xff\xe9\x72\x33\x9b\x4f\x2e\xaf\x2e\x7e\x3a\x11\x0d\x81\xea\x3f\x7e\xfa\x7c\x2a\x52\xaf\xdf\x7f\xfd\xfa\xf9\x93\xcc\x75\x7d\x75\xfa\xe5\xeb\xe7\xf7\x57\xa7\xd7\xbf\x5c\xbc\xff\xfa\xf5\xf4\x42\x14\x57\x24\x9e\x9f\x7d\xfe\xf5\xfa\xc7\xcf\x9f\xbe\x7c\x39\xbd\xb8\x3e\x39\xff\xf2\xf5\xfc\xec\xf4\xec\x0a\xba\x75\xfd\xe1\xf4\x87\x9f\x7e\xbc\xbe\x38\x3d\xfb\x70\x7a\x71\x7d\x75\x71\x2a\xcb\xfe\xdb\x7f\xfe\x74\x7a\xf1\xeb\xf5\xa7\xb3\xab\xd3\x1f\x2f\x4c\x7b\xaf\x3f\x9c\x7e\x7c\xff\xd3\xe7\xab\xeb\xf7\x97\xbf\x9e\x9d\x5c\x9f\xff\x70\x79\x7a\x21\xda\x0f\x9f\x5c\x9c\xaa\x42\x3e\x9f\x9f\x7f\xbd\xfe\xfc\xe9\xcb\xa7\xab\xc0\x67\x3d\x72\xfa\xe5\x07\x48\x7c\xff\xe1\xfa\xaf\xe7\xe7\x7f\xbf\x0c\x1e\xd7\xc4\x0c\xec\xe3\x7a\xdd\x90\x2b\x44\x6f\x5d\x6a\x7e\x4e\xcf\x7e\x2e\x94\x41\x4b\xd7\x45\xf0\xe6\xec\x67\xcb\x4b\x45\xde\x5d\x6c\xd0\x33\x33\xc7\x24\x5b\x46\x95\xae\xc0\x80\xfa\x51\x86\xe1\x02\x08\x6d\x67\x63\x76\x1d\x79\xd3\xe7\x54\x5b\x0f\xe9\x7a\x67\x82\x63\x1a\xa0\x97\x27\x83\x5c\x86\xd6\x13\xd5\x8a\xd3\x4c\xcb\x57\x77\xaa\x32\x1d\x74\xcd\xe2\xe8\xb4\xd6\xa2\xc0\x46\x8d\x95\xab\xdf\xba\xae\x45\xa6\x6b\x11\xce\x37\x4b\xf0\x94\x5e\x44\xde\x86\xab\x27\x92\x79\x1f\x7f\x3a\x3b\x01\x2a\x31\x59\xaf\xe1\x5b\x41\x77\x97\xa2\x89\x35\x45\x19\x4c\x01\x55\x98\x7e\xc6\xa4\x2e\x37\xac\x04\x9d\x15\x1e\x00\xa0\x4a\xdd\x10\xcb\xf4\xc6\x13\x2d\x4e\xff\xd5\x56\xa6\x4f\xb5\x2b\x55\x37\x38\xcc\xab\xce\x66\xa3\x6e\x94\x43\x33\xca\xa1\xf1\x9c\x5e\x0a\xfa\x09\xc5\xa4\x84\x55\xfa\x59\x62\x0d\x01\x14\x0e\x97\xa3\x06\x54\xe9\x45\xb9\xf2\x44\xc1\xb2\xe5\x95\x7a\xc5\xe9\x25\xf6\xa6\x51\xcc\x59\x56\xe7\xb1\x5f\x07\xdb\x00\x00\xec\x12\x44\x88\x79\x7a\x01\xd5\x76\x60\x6c\x3a\x30\x36\x1d\x98\x8a\x0e\x8c\xf1\xb8\xda\xfa\xa9\x6c\xa0\x2e\x6f\x38\x55\xc4\x3a\x1e\x4e\x47\xb8\xd1\x59\xaf\xd1\xf2\x09\x91\x20\xcb\xd2\x6c\x67\x16\x26\x93\x38\x4a\x6e\x5f\xe7\xd3\x00\xab\xf2\x8f\xd8\x88\xde\x32\x7e\x9e\x40\xcd\x75\x00\x05\x6a\xcb\xde\xc8\xc1\xf0\x23\x37\x9b\xf5\x07\xe5\x40\x7e\x7e\xc7\xb2\x2c\x9a\xb0\x9a\x82\x32\x55\xd0\xf6\xac\x62\xb2\x64\x89\x69\x02\x97\x7a\x57\x61\x76\xcb\x4a\x56\xd9\x19\x49\x20\x0e\x42\x33\x95\xcd\xb1\xdb\x29\xf8\x5e\xf9\xc3\x64\xfb\x38\xcb\xe0\x0d\x69\xb2\x93\x2f\x17\x62\x68\x5f\x66\xe6\xbb\xf9\x59\x1c\xdd\xec\x4e\x42\x1e\x5e\x87\x93\x70\xc1\xb7\xd8\x00\xd7\x7f\x66\xae\x54\xae\x41\xc4\x33\x25\xfc\xe9\xf6\xed\x5b\x3f\xf8\x10\xf2\xf0\xbd\x6e\xb7\x1d\xba\xb4\xd5\x21\xf5\x51\x66\xb9\x36\x9d\x5e\x3f\x55\xae\x31\x5c\xf8\x20\x3a\xf6\xba\x1a\x32\xab\x86\x57\x4c\xdf\x53\x03\x5a\x37\xa9\xca\xdd\xa3\x6e\xb6\x32\xe9\xd4\xf9\xff\xca\xcf\x80\x66\x4a\x0a\xf7\xa0\x57\x13\xf4\xa8\x8f\x3d\x70\x94\x23\xe3\x30\x39\x09\x79\x18\xa7\xb7\xca\xb7\xf7\x87\x07\x21\xa3\xd6\x00\x4c\x3b\xf3\x74\xc2\x62\x47\x5e\x1b\x3b\x9c\xcd\x17\x71\xc8\x19\x3c\x83\x97\xf1\xd3\x65\xc8\xc6\xc0\x91\xe7\x3d\x46\x99\x77\xa6\x4f\x81\xde\xd9\xfb\x2f\xa7\x97\x5f\xdf\x9f\x9c\x5e\x62\x12\x99\x1c\x70\xf3\xcf\xee\x9b\x17\xec\xf6\xf4\xfb\x02\xc1\x1d\x34\xdc\x2f\x47\xd3\x07\x8c\x18\x6e\x3b\x7f\x29\x4c\x89\x93\x1a\x14\x3a\x4b\x98\x48\xb6\x0b\x13\x89\x74\xa5\x97\x10\xad\xc6\x03\x53\x1c\x31\x1d\xa8\x0d\x60\x74\x44\x93\x24\xe4\x0d\x46\x21\x76\x5d\x15\x80\x15\xda\x34\x09\xf3\x19\xcb\xa2\xdf\x19\x46\x89\x39\x9a\xa5\xe2\x60\x06\x41\x05\xb1\x38\xfb\x61\xcb\x27\xe0\x35\x4c\x63\x73\xf5\xbf\xca\x4d\x20\x5b\x26\x71\x9a\x2e\x6a\xb3\xce\x19\x0f\xe3\x7f\x8d\x5e\x35\x44\xce\xff\x01\xd5\x86\x34\xad\x52\x6d\x94\x44\x7c\x03\xb6\xe4\x3a\x5f\x2e\x58\x66\x7b\x76\x16\x17\x89\xfa\x26\x37\x66\x61\xce\xbe\x80\x1b\x37\xdc\x4c\xa7\x40\x5d\x6b\x32\xae\xe3\x22\xda\xa2\x2c\xe4\xd2\xc1\x99\x7d\x8e\xe6\x11\x0f\x7a\x24\x1c\x8f\xd9\x82\x8b\x1e\x30\x50\x05\x0a\x0e\x53\x2e\x3b\x30\x65\x0b\xd6\xf3\x11\x44\x85\x7c\x93\x03\x59\x2d\xb8\x17\xfb\x14\x94\x28\x56\x4b\x5e\x6b\x39\x0e\x9d\x52\x1a\xcc\x5b\xc6\x8b\xdc\x48\x2d\x16\x59\x58\x83\xa1\xc4\x9b\x87\x0b\xb4\x11\x9f\x26\xa1\xcc\xfb\x06\xf6\x46\x29\xcd\x00\xad\xd2\x94\x81\x12\xc2\x24\x22\x94\x41\x8c\x53\x58\x3e\x5e\x7a\x03\xce\xd5\x45\x56\x99\x11\x82\x3d\xa6\x42\xb0\xa9\x9c\x0e\x9b\x0c\xe1\xc7\xa8\x7e\x15\x6a\x85\x00\xe0\x17\x91\xac\x32\x25\x5e\xc6\xe6\xe9\x1d\x33\x11\x32\xd7\x65\xfc\x98\x72\x5e\xd1\x3a\x95\x33\xc4\x24\x5c\x93\x6b\xd1\xaa\xab\xf4\x44\x74\xb0\x0a\x2a\xb3\xe1\x73\xc7\xf4\xa0\xc2\xc2\xbd\x35\x06\x2d\x60\x97\x62\x99\x9f\x23\xc9\xe9\x02\xa7\xcd\x70\x83\xd1\x0c\xd0\x3c\x44\x0d\x5a\x23\xc9\xd4\xdc\x5d\xb0\x71\x9a\x4d\xf2\x0a\xfc\x00\x51\x48\x31\x21\x91\x66\x31\x64\x59\xcc\x13\x51\x78\x14\x76\xbb\x11\xc3\x64\x6c\x66\x58\x95\x89\x62\x08\xfd\x67\xd9\x4e\xe2\xc7\x0c\xa2\x8c\x82\x48\x39\xa1\xe3\xcd\xe9\xd6\x7e\x15\x72\x12\x73\x3d\x89\xb2\x44\xc4\xc8\x14\x0b\xa1\x5b\x90\x80\x4e\x82\x19\x99\xd1\xc7\x49\x34\x39\x99\x85\xc9\x6d\x09\xb4\x23\x23\x29\x09\x0b\x26\x1a\xd3\xec\x38\x7e\x9b\xb5\xc3\xe3\x58\x6b\xfc\xc7\xa2\x63\x89\x27\xc5\xd9\xf7\x1c\x4b\xa3\xd0\x09\x2d\x55\x32\xc6\x8d\x2d\x2d\x1a\x43\x8b\x38\x1a\x4e\x46\x78\x9d\xba\x6e\x84\x32\x92\x8a\x75\x11\xc5\x71\xb5\x39\x65\x44\x2b\x4d\x24\x50\x7d\x38\x99\x80\xec\x7e\x2e\x0b\xcf\x30\x1a\xc3\xda\x27\xb3\x12\xe6\x36\x7e\x5c\xbe\x84\x3e\xa1\x48\x49\x93\x1b\xa5\x42\x91\x1b\x44\x59\x22\xe0\x10\xaf\x09\x47\x93\x5a\xee\xb3\x49\xbe\xa2\xa7\xca\x74\xef\x5f\xe6\x6d\x2f\xe8\xdc\x9a\x4c\x18\x67\xe3\x1a\xb9\xa8\xe5\x0b\x86\x18\x2f\xe7\xe6\x72\xf5\x49\xce\x55\x65\x0f\x35\xac\x4b\xde\x75\x91\xb4\x9e\xde\xc3\x0d\x7a\x4f\x4b\xf4\x9e\x8b\x51\x40\x32\x82\x58\x99\x67\x89\x7c\x6a\x11\x2c\xb7\x10\x2e\x97\xbe\x6d\x28\x79\xd7\x59\xad\xa2\x77\x1d\x71\x62\x12\x5b\x78\x3e\x9e\x31\xb1\x01\x9d\x27\x63\x86\x91\x13\xca\x2b\x09\x89\xfe\x42\xf2\x97\x11\xde\xf1\x16\x92\x93\x46\x71\x64\x89\x37\x6e\xef\xad\xe1\xdb\x42\x58\x21\x89\xc8\x12\xaf\xd7\xa4\xd4\xd3\xad\xdb\x81\x3d\x6a\x56\x6c\xfa\xc7\x44\x42\x99\x8c\xd3\x65\xc2\x03\xa8\xed\x96\x71\x8c\x32\xe2\xc8\x9b\x3a\x07\xeb\x29\xd6\xa8\x3d\xf6\x7c\x8b\x59\x91\x0b\x19\xb0\xf5\x4a\x7b\x4d\x8d\x4f\xa6\x9c\xdd\xa2\x41\xc8\xa9\xdd\x4f\x0b\x11\x8d\x01\x76\x55\xad\xac\xa9\xf8\xad\x83\x07\x22\xcb\x13\xef\x65\xbb\xaf\x05\xe7\x86\x96\xe6\xe7\x89\x11\x23\xc5\x86\xc8\x0c\xa3\x65\x78\x1b\x7b\x7c\x84\xcd\x30\xe0\x1b\x24\x09\xc3\xc7\x40\x64\x2b\x95\xb3\xfd\xd0\x0f\xc7\x15\x0e\xdb\x96\xdc\x62\x35\x03\x51\x9f\xae\xc9\x96\xa6\x6e\x8c\xa7\x1c\x4d\x6e\xaa\x4d\xb7\x88\xc7\x99\xb5\xe3\x9b\x36\xd4\x02\x30\x97\x44\x5f\x8e\x01\x64\xb7\x46\xf4\x65\xba\x07\x7c\x98\x8c\x8c\x2b\x0c\x5c\x88\xda\x82\x2d\x6e\x64\x92\x85\xa7\x52\xa6\xcd\x80\x40\x36\xb6\xbf\x3a\x19\xc7\x6c\x04\x35\x01\x94\x1e\x0d\xc1\xd9\x96\x80\x82\x2a\x7f\x96\x70\x7e\x65\x72\x3f\xb1\x5e\xc1\x55\x97\x27\x43\xcb\xff\x9d\x3d\xdc\x8b\x86\x54\xb2\xeb\x64\x99\x55\x4e\x63\x6d\xb9\x1f\xad\x57\x32\xf3\x38\x8d\xd3\xea\x62\x3b\x11\x69\xf0\xda\xea\xbc\xdd\xa4\xcd\x71\x78\x5c\x5b\x59\x75\x73\x9e\x1c\xae\xda\x36\x3d\x53\x30\x34\xac\x86\x61\xc9\x9b\xba\xd2\x96\x5b\x93\xcb\x4a\x59\x97\x4f\x2a\xe1\xd6\x93\xca\x6d\x1c\xcd\xe7\xf5\xbe\xcb\x90\x77\xe7\x26\xbc\x61\x71\x9d\x1b\x72\xdd\x01\xc3\x30\x0e\xf1\x56\x17\x9d\x2e\xc6\xe9\x84\xed\x8c\xd3\xf9\x22\x8a\xb7\xe8\x3d\xf4\xc9\xe4\x05\x7e\xd1\xd6\x51\x48\xd7\x90\xb1\x29\xcb\x58\x32\xae\xff\xbe\x72\x3e\x32\xb7\x64\xe6\xeb\x27\xea\xde\xee\xad\x7d\x17\xb1\xfb\xfa\x41\xa8\x81\x1c\x29\xf2\x45\x00\xb5\x21\xd2\xe0\x16\xd2\x3a\xb6\xb1\xec\x2e\x92\x3d\xd0\x0d\x13\x1d\xaf\xd7\x12\xd5\x95\x5c\x77\xdd\x57\x73\x28\xd4\x85\xdf\x47\x19\xdb\x99\xa6\xd9\x3c\x14\x65\x64\xf9\x5d\x69\x44\x93\x74\x52\x3f\x20\x59\x2a\x63\x0b\x98\x77\x62\x5a\xd3\x84\x25\x7c\x57\xab\x11\x76\xd2\x24\x7e\x28\x32\x80\xf6\x6d\xdb\x91\x93\x84\x24\x27\x4b\x12\x93\x31\x99\x92\x09\x99\x91\x05\x99\x43\x18\xd0\x5b\x72\x43\xae\xc9\x3d\x39\x25\x97\xe4\x9c\x7c\x27\xef\x6b\x54\x98\xdf\x0a\x21\xe3\xab\x61\xbf\x70\x20\xe0\xe1\xed\x2d\x9b\x5c\xa9\x06\x7d\x06\xb4\xb0\xf8\x73\x9a\xe6\x0c\xa3\xa1\x63\x9a\x1c\xec\xa8\x05\xe2\x14\x51\x32\xbe\xd6\x28\x24\xd9\x9a\xb0\xc2\x7f\xe7\xe2\x35\x75\x99\x41\xd1\xe4\x1f\xcc\xc3\x28\xb1\xea\xbb\x78\xb6\xbe\xab\x3f\xb5\xbe\xab\x67\xeb\x3b\xf9\x23\xf5\x05\x66\x50\xf3\xdd\x9a\x51\x3d\x79\xb6\xd6\xdf\xfe\x50\xad\x3b\x80\xcd\x59\xd4\xf3\xdb\xb3\xf5\x7c\xf9\x53\xea\xf9\xf2\x6c\x3d\x9f\xfe\x34\x8a\xfc\xf4\x6c\x5d\x1f\xfe\x0f\x66\xec\xc3\xb3\xb5\x9e\xfd\x1f\xd4\x7a\xf6\x6c\xad\x9f\xff\xd4\xd5\xf0\xf9\xd9\xfa\x3e\x3e\x73\x33\xf4\x07\xb4\x64\xba\x55\xf4\x27\xc2\xbc\x19\x8b\x17\x2c\xa3\x3f\x12\xe6\xb1\x7c\x1c\x2e\xd8\xe9\xf7\x45\xc6\xf2\xbc\x8a\x29\x6e\x69\x41\x5a\x96\x16\x24\x9a\x22\x30\xcf\xe0\xe9\x5f\xaf\xbe\x7c\x2e\xec\x63\xe4\xb3\xc2\x62\x5e\xc6\x71\x81\x3a\xe9\x38\xd2\xb6\x46\xe7\xd5\xa6\xd3\xb8\xc1\xa8\xf9\xbd\x06\x13\x69\xae\x0d\xe2\x0a\xc8\x78\xcb\x00\x47\xea\x47\x33\x4e\x12\x0e\xf0\x1d\x33\x3e\x8f\x2f\xc3\x29\xa3\x11\x07\x8c\x74\x08\xf6\x26\x9e\x53\xf1\x7c\x0d\x70\x0c\x17\x2c\x99\xb0\x8c\x65\xb9\x3d\xee\xff\xa9\x5d\x5b\x69\x47\x94\x93\x41\x9e\x4b\xc6\x79\xcc\x26\x76\x3e\xd9\x0f\xfa\xdf\xdc\x75\xd1\x7f\x73\x7a\xaa\xc5\x1b\xf1\x97\x65\x08\xe4\x75\x90\xf2\x4e\x96\x59\xc6\x12\x7e\xb1\x4c\x3e\xa7\xe9\x02\x23\xbc\x5a\xe5\xde\x4d\x38\xfe\x76\xb3\xcc\x12\x56\x9c\x1e\xad\x83\x23\x28\xd0\xff\xc6\x0b\x9f\x85\xff\x86\xf0\x4b\xf3\x28\xd7\x17\x57\x9a\xc6\xaa\xb3\x12\x65\x55\x69\xbc\x18\xaf\x28\x1b\xb2\x91\xba\xcd\xaa\xf9\xde\x32\xc3\x80\x9c\x14\xae\xd0\x66\x61\x5e\x5b\x97\xc9\xb9\x59\x5f\xa5\x89\x79\x0d\x55\x47\x59\xa5\x1d\x65\x4b\xc1\x48\xdd\xa7\xe5\x8c\x2f\x17\xa7\xc9\x6d\x94\x30\x63\xe4\x64\xe7\x63\x15\x2b\x73\x54\xdc\x1e\x90\x47\xcb\x69\x3c\x68\xf9\x40\xeb\xda\xa7\x06\x39\x42\x60\x0a\x76\xd2\x25\x8f\x19\x77\xc8\x8f\x49\xf9\x6d\xc1\x69\x75\x8e\x5f\x20\x87\x31\xb0\xac\x16\x60\xd5\xbb\xf9\x71\xe5\x4b\x25\x5b\x05\x3b\x93\x74\xbe\x33\x06\xad\x80\x90\x8d\x34\x4a\x19\x44\x04\x37\x39\x54\xda\x53\x45\xf0\x8c\x09\x96\xa2\x50\xd3\xa4\x18\xf7\x6c\x61\xa6\xaf\x70\x9e\x37\x68\x3b\x18\x9d\x20\x8c\xc9\xcf\x95\xf1\x30\x65\x28\x89\xac\x2c\x4d\x2e\xf8\x93\x25\x5e\x89\x12\xff\x5a\x19\xbf\x6a\xa6\x0b\x91\xc9\x29\x8b\x92\x76\x2d\x92\x55\x8a\x32\xaa\x33\x2e\x59\xd6\x73\xf3\x2d\x73\x05\x71\x3a\x76\xc8\x3c\x2b\xbf\xb3\xf6\x3b\xce\xbe\xf3\x9d\xa9\x8c\x30\x75\xce\xb6\x66\x1b\xcf\xd8\xf8\xdb\x4d\xfa\xdd\x21\xa7\x5b\x33\xc5\x51\xf2\x6d\x87\xa7\x0e\xb9\xd8\x9a\x25\x4a\x16\x4b\x31\x7e\xd9\x16\xea\xb3\x76\x27\x95\xf5\x9f\xc9\xb6\xb2\x44\xcb\xc3\x8c\x85\x0e\xf9\x0e\x21\x0b\x4e\xcf\x7e\xf6\x9e\xb5\xfb\x59\xad\x9e\x98\xb7\xaf\x62\x4a\xae\xe5\x72\x86\x85\x68\x81\xbc\x6e\x59\x8d\x75\x24\x5a\x4b\x32\x4e\xb8\x58\xb0\x64\x72\xbe\x60\xca\xfe\xb1\x4c\xa8\x75\x44\x5d\x59\x02\x99\xe2\xdd\x0e\x50\x8d\xfd\x79\x5d\x85\x5b\xc8\x59\xd4\x74\xb3\x8c\xe2\x09\x10\x90\x34\xb4\x2d\xa9\x13\xf2\xfb\x88\x8f\x67\x88\x79\x37\x69\xaa\x3d\x29\xc4\xe6\x21\xea\xfe\x92\x4e\x18\x7e\x1c\x87\x39\x13\x05\x46\x60\x16\xeb\x04\x7a\x1f\xf3\x4c\xda\x0f\xb2\x02\xef\x26\x4a\x26\xd2\x12\xb3\x01\x1f\x65\x6c\xf6\x30\xc9\x04\xcf\xd0\x1f\x4d\x3d\x9d\x16\xa5\x49\xcd\x67\x6a\x87\x29\xb2\x8f\x21\xc2\xea\x66\xce\x35\x44\x32\xdf\xca\x31\x4c\x97\x1d\xab\x5b\x5b\x17\x5c\xfd\xa0\x17\x65\xd4\x16\xfd\x24\x47\xf8\x02\x1c\x61\x7b\xd9\x42\xbc\xbd\x32\x0c\xb5\xfa\xf5\x6f\x08\xe3\xf2\x7c\xea\x4f\xff\x7f\xe4\xfd\x69\x7b\x1b\x37\x93\x2f\x8c\xbf\xe7\xa7\x90\xfa\xe4\xe2\xdd\xf8\x0b\x62\x28\xe7\x3e\x33\xf3\xa7\x82\xe8\x96\xb5\x38\x4a\x6c\xc9\x91\x64\x67\xe1\xc3\xc3\x69\x91\xa0\x88\xa8\x85\x66\xd0\xa0\x6c\x45\xec\xef\xfe\x5c\x28\xac\xbd\x91\xb2\x9d\xcc\x9c\xb9\x9e\xbc\x88\xc5\xee\xc6\x5e\x28\x14\x6a\xf9\x15\x74\x21\xc2\x5c\xb4\xbd\x66\x9c\x0a\x19\x61\x21\x10\x5e\x18\x4c\x44\x25\xae\x3c\x9f\x6c\x97\x8b\x69\x22\x69\x3b\xd9\x5a\x76\x8e\x3a\xad\xf4\xe6\x38\x7e\x13\xbd\xd9\x48\x56\xcb\xab\x3b\x41\xa4\xea\xac\x77\x7c\xf1\x46\x6b\x91\xf3\x58\xea\x64\xf5\x6d\x8d\x34\x9c\x09\x9f\xd8\x5c\x6c\x27\xe8\x00\xda\xbd\x16\x94\x1e\x05\xf5\x0d\xae\x7a\xe7\xd9\x94\x36\xbc\x41\xba\x6f\x85\x96\xb2\x74\xef\xde\x24\x13\x91\x95\x8f\xf8\x4b\xae\x15\x7f\x9a\xbf\x80\xa4\x7c\x93\xd2\xd3\x4c\x90\xdf\x29\xa6\xbd\x49\xb2\x48\x6e\x58\xca\x24\xa3\xb5\xe8\xab\x1a\x24\x94\x76\xb1\x71\xd0\x0b\x24\xfa\xa6\xb7\xf7\x0d\xf8\x0f\x78\x1c\x58\xd9\xd3\x6b\xf7\x7d\x96\xdd\x21\xfc\x04\x89\x59\x5e\xb3\x19\x3d\x7a\x9c\xa4\xf4\xc8\xf8\xa6\xe7\x03\xff\xb9\xfb\x62\x52\xfa\x02\x61\x40\x30\xd0\xa9\x3f\xfc\xd7\xfe\x21\xc2\xbe\xa1\x81\xce\x21\x92\x53\x79\x64\x19\xb5\x81\xd0\x68\x8a\xbd\xea\x08\x72\xd3\x73\xcc\x79\xfc\xe6\xf0\xfc\xf0\xd5\xc9\xe5\xf8\xea\xfa\xf2\xec\xfc\xd5\xf8\xf5\xc5\xc5\x8f\xef\xde\x36\x20\x7e\xd2\x83\x50\x3f\xeb\xf4\x9d\xda\xd9\x35\x38\x22\x76\xef\x75\xd3\x60\x7e\x2c\x06\x4e\x7a\x9e\x8a\xf8\xc9\xd8\x28\x07\x02\x5b\xe5\xca\x60\x7b\x0f\xeb\xcc\x84\xae\x82\xa8\xc0\xd2\x0a\x77\x6b\xc6\x63\xc9\x6a\x2e\x62\x6f\x00\x96\x00\x93\x65\x2b\xef\x76\x83\x5a\x21\xfd\x88\x86\xdf\xb7\xb6\x52\x17\xd0\x05\x73\xf7\x26\x9b\x42\x1c\x52\xf3\xd4\x35\x8c\x82\x36\x8c\xe2\xde\x54\x12\x0e\xa2\x5a\xf1\x39\xc7\xb4\x67\x3f\x3c\x0a\x29\xf0\x07\x51\x59\xc6\xf5\xf2\xf3\x1b\xae\x81\x42\xb0\xd6\xea\x96\x67\xcc\x15\x3d\xe6\x6b\x5c\x9c\xdc\x56\x7f\xa6\xff\x51\xc8\x1d\xd6\x3a\x39\x35\x6c\xd9\x4f\x69\xa2\x5a\x76\x6d\x5b\x2c\xbf\x32\xa7\x20\xb0\xcb\x53\x26\x72\x79\x0e\xca\xbc\x67\x36\xd8\x56\xc1\xda\x56\x5b\x18\xd3\x33\x1b\x6d\x65\x6c\x9a\xe1\x5e\x80\x4c\xff\x9e\xd1\x0f\x84\xf6\xce\xce\xdf\x5f\xfc\x78\x42\x68\xef\x9d\xda\xf2\xaa\xde\x4b\xab\xfc\x25\xb4\x77\x78\x93\x4b\x91\x4c\xea\x7b\x85\xf6\xc6\xf4\xe3\x82\x0a\x06\x9a\xd7\xd4\x70\x47\xda\x83\x0c\xc7\xea\x12\xf8\x40\xed\xd5\x14\x9e\x52\x21\x83\xdf\xc1\x9f\xea\x42\x6b\x1c\x67\x69\xef\xc4\x9f\x54\x84\xf6\xbe\xd7\x37\x79\xda\x73\xad\x13\xda\x7b\xcd\xf8\x5d\xf8\xfb\x9a\x7e\x94\x87\x82\x26\xe6\xcf\x53\x25\xf8\xaa\x22\x46\xbc\x25\x5e\x3b\x00\x31\x27\x47\xd9\x52\xf5\x50\x75\xf5\x32\x38\xa2\x43\x07\x9b\x3f\xc9\x13\x40\x09\x7d\xcf\xe4\xa0\x8f\xe1\xcf\x37\x2c\xcf\x07\xfd\xa2\xd3\x56\xd9\x9f\x50\xf0\x25\xa9\x9e\xf3\xaf\x63\x14\x18\x6e\xdf\x79\xc6\x02\x56\x24\x5b\x97\x41\x20\x41\x3a\x74\x36\x00\x1a\xc2\xf5\x2c\x68\x9c\x00\xea\x92\x41\xf0\xf3\x08\x03\xe8\xe9\xcf\x9e\xeb\xea\xce\x8e\x83\xe5\x32\x2c\xf4\x25\xea\x70\xe2\x73\x1b\xe3\x27\xd0\xc3\x0f\x68\x81\x30\x64\xfe\x86\x7c\x73\x3a\x81\x8d\xa9\xe7\x7b\x26\x77\x76\x3c\xde\x80\xf7\x26\x1b\x8f\xd9\x94\xc8\x1e\x9b\x62\xf5\xf7\x3d\x95\x89\x4e\x87\x98\x60\x0e\x96\xe7\xef\xc9\xbb\xf8\x89\x4d\x07\xd1\xfc\xf7\xf9\xc7\x77\x99\x58\x46\xf8\x26\xcd\x26\x77\x83\x7f\x3c\x45\x39\x64\x82\xce\xa3\xc1\x70\x84\x23\x97\xd3\x46\xfd\x1e\xee\xe1\xe1\x8b\xff\xc0\x01\x4f\xc5\xc3\xe1\x8b\x6f\x70\x1f\x0f\x47\xa3\x11\x68\x13\x46\x78\x96\xa4\x39\x1d\x8d\x70\x34\x4f\xf2\x93\x87\x24\x8d\x06\xf0\xa4\xf8\x07\x56\xed\x0f\x9e\x34\x2c\x0c\xb8\x20\x45\x8b\x64\x72\x97\xdc\xd2\xfc\xeb\x76\x13\x4d\xca\x6e\x9c\x8e\x3d\xff\x5a\x49\x6c\xbd\xf9\x4d\x1e\x69\x4b\x4f\x89\x3a\xbe\x87\xf9\x7c\xaf\x96\x2d\xe9\xe9\x41\xa0\x38\xba\x3c\x51\x27\xdd\xbb\xeb\x93\xf1\xf5\xe1\x2b\x83\xef\xf3\x07\xc9\x7a\x2e\x7b\xc4\x5f\xe2\xa6\x35\x7c\x0f\x38\xaf\x4b\xb3\x78\xd7\xc9\x2d\x58\xc3\x04\x55\x53\xb5\x94\xb4\xd9\x60\xba\x0f\xaa\x9b\xdf\x33\xc6\x51\x60\xfc\x0c\xac\x6a\xcb\xde\x94\x09\xa9\x88\x6e\xf8\x7e\x04\x0e\x10\x30\x6c\xb3\xe7\xfe\xc0\x7f\xf4\x58\xae\x7f\x18\xf2\x24\xdb\x7d\x6d\xbf\xcd\xa9\x74\x23\x04\x0b\x31\x8a\xff\xd0\x83\xff\xb9\x1d\xa4\xc6\x58\xd5\xa1\xc7\x16\xfb\xaa\xde\x80\x73\x22\xf2\x38\x28\x35\x94\x27\x67\xe7\xb3\xe3\x0f\xab\x2e\xaa\xe1\x77\xaf\x2a\x58\x29\x3f\x2b\x69\xcd\xbd\xfd\xd5\xbf\x85\xa1\x19\x4f\x77\xb5\x13\x0f\x34\x88\x80\xd6\xa3\x39\x29\x89\x6a\xef\x8a\x1f\x2b\x94\xf0\xee\xed\xf1\xe1\xf5\x49\x84\xf0\x57\x95\x17\x9a\xbb\x82\x2c\x6d\x18\xed\x57\x30\x53\x3f\x55\xbe\x3b\x84\x68\x81\x08\xe1\x5f\x5a\xa6\x10\x3d\x35\xcd\xcd\x2d\x6d\x4c\x3b\x40\xed\xac\x79\x60\x18\x80\x15\xfa\xa1\x1c\xf2\x6c\x6b\x17\x86\x72\xac\xec\x1c\x6b\xb8\x36\x93\x3f\x0d\xad\x56\xda\x09\x2c\x4d\x72\x79\x49\x1f\x18\x68\x52\x35\x50\x10\x3c\x7b\xaf\x33\xd1\xc1\x83\xc2\x4d\xa6\x92\x94\xe6\x54\x30\x99\x1b\xe5\xb1\x50\x92\x84\x08\x3a\xaf\x33\xd8\x35\x52\x6f\x4f\x26\xb7\xc6\x8f\xa2\xd4\xac\x75\xaa\x70\xcd\x76\x2a\xb1\xad\xe0\xcd\xb2\xec\x01\x4a\x54\x22\x29\x32\x10\x8a\x71\xb5\x1c\x09\x89\x26\x36\x3e\x43\xa5\x01\xda\x7a\x96\xaa\x12\x6d\xd6\x17\x45\xfc\x0b\xc2\xbf\xb5\x4d\xa2\x8f\xf2\xb4\xf3\xc8\xc3\x79\x84\x8e\xe8\x99\xa4\xfc\x81\x08\xcc\x7b\x93\x39\x4b\xa7\x82\x36\x67\xaf\xe0\x9b\xe7\xb2\x06\x80\x16\xc8\x6f\x0b\x1a\x53\xbc\xdd\x07\x49\x51\xac\x21\x99\x20\xa2\xd9\x76\xa7\x05\x8a\x22\xae\x7f\x06\x87\x95\x21\xb3\x1e\xe3\x00\x87\xab\xe7\x92\xf2\x07\x0d\x40\x21\x8a\x78\xd9\x03\x19\xc4\xc9\x15\x08\x53\xda\x4e\x89\x8e\xcc\x1b\x59\xa2\x9e\xc2\x2f\x9a\x1a\x58\x59\x96\x43\x9f\x60\xa7\xc7\x4a\xc6\x80\xa5\x8e\x01\x79\x04\xcf\x68\x2c\xd0\x81\x19\x9b\xc0\x1c\x0d\xa6\xee\xc9\x92\xc6\x62\xc8\x47\x68\x10\xcf\xd5\x33\x3c\xeb\xbd\x3b\x3f\x3e\x39\x3d\x3b\x3f\x39\x1e\x5f\x9e\x9c\x9e\x5c\x9e\x9c\x1f\x9d\x20\x9d\x0c\x46\x68\xf0\x6c\x1b\x3e\xb1\x7e\x21\x02\x26\x25\x82\x8d\x2b\x8a\xf8\x07\x84\x65\xeb\x84\x6d\xa0\x3a\x47\x73\x8b\x44\x50\x6e\x89\x1f\xa4\x14\x2d\x6d\xfe\x48\x1f\x81\x16\xed\xef\xeb\xe4\x36\x3c\x6e\x9c\x54\xa8\xcf\x1d\xcc\xd5\xd6\x24\xa5\xcf\x31\x2f\xda\x16\xc2\xb9\xd9\x37\xe0\x6b\xdb\xc3\xa0\xc5\x7f\x2a\xec\xb0\xdd\xf6\x41\x9f\x31\xec\xd0\xb4\xa7\xa4\xd3\xbb\xa6\x23\x4e\xdb\xb3\x52\xed\xe7\x05\x90\xa7\x08\x6f\xef\x21\xef\x1c\x99\x42\x9a\x8e\xe5\x3d\xf8\xf0\x60\x18\xb2\xbe\xf5\xa2\xb8\xd4\x18\x8c\x10\x52\xaf\xf2\xe1\x8f\xe5\xc4\xed\x50\x4b\x0e\x0d\x54\x7b\x5c\xeb\xaf\x59\x4b\x6a\x26\x45\x3c\x63\x41\xf7\xd7\x2e\xa5\x17\xd3\x6b\xcb\xe9\x40\xe4\x15\x1b\xcd\xc8\x73\x17\xd7\xaf\x8d\x74\xdf\x65\xf7\x37\x8c\x53\x14\x0f\x19\xce\x46\xe8\x2f\x5e\xea\x70\xa1\xdd\x70\xdc\xfa\x07\xf3\xdf\xb8\xfe\x7e\xcf\x32\x97\x39\xa4\x53\xf2\x6d\x26\xac\xdb\xb5\x0e\x7e\x80\xae\xe8\x7a\xa4\x1f\x96\x03\xce\x88\x8f\x48\xe4\xab\x55\x68\x9b\x24\x36\xbf\x25\x4e\x08\xc7\xf9\x26\xca\xcb\x02\xca\x4b\xd6\x53\x5e\x5e\xa5\x3c\x9c\x23\x9c\x15\xcf\xa5\x35\x37\x69\x6e\x2a\x36\xd1\x1d\x6f\xa7\x3b\xa7\xc2\xb1\x70\x37\x4d\xb4\x27\xcb\x14\x64\xb8\x82\xe8\x8d\x1f\x0c\x67\x11\x9f\x45\x21\x35\x59\x20\x74\x74\xd7\x75\x17\x98\x9b\x69\x2a\x6b\xec\x2d\x54\x83\xfe\xaa\xdb\x8d\x43\xe1\xd6\x0a\x13\x16\x89\xcf\x24\xd2\x46\xe6\x30\xef\x34\x5e\x7b\xb9\x4e\xb1\xca\x3e\x6f\xaa\x82\x73\x5e\x93\xd6\x06\x8e\x2a\x9a\x76\x9b\xde\xba\xc2\xd7\x30\x42\x2e\xbf\xef\xa7\x9c\x7a\x60\x50\xad\x1e\x78\x5e\x69\x6a\xa8\x06\xec\xd7\x20\x90\xb2\xfc\xad\xc8\x3e\xaa\x89\x73\x26\xd7\x59\xef\xad\x60\xf7\x4c\xdf\xe8\x2d\xb9\x19\x49\xe5\x57\xc0\xfc\x0d\x4f\x2e\x50\x86\x86\xc7\x9c\xcc\x94\xec\xdc\x70\xd2\x95\xdb\x53\xc7\x70\x9d\x07\xbb\xe1\x63\xbd\xe5\x92\xdb\xd3\x4c\x58\x3d\x09\xd2\xea\x99\x6b\xb1\x94\xf3\xc7\x08\x21\x6c\x85\x74\xbf\xfb\xca\x1f\xa0\xc1\x73\x9b\xd0\x22\xdf\xaf\x1a\xa8\x4d\x14\xf1\x4c\x49\x30\x53\xa6\x06\x90\xa4\x81\x1c\x93\x7d\x01\x17\x37\x7e\x0a\x8a\x79\x27\xe2\x36\x77\x5c\xdb\xb1\xcb\x2f\x60\xd6\x40\x53\x98\x8d\x3e\x5f\x8a\xac\x91\x8d\x44\x61\x52\xea\xdc\xcc\x85\x62\xbd\x10\xfd\x32\x85\x73\xc6\x72\xa1\x84\x30\x47\x5b\x81\x3c\x1a\x67\x38\xa9\xd1\x4b\x4d\x42\xdd\x24\x18\xe8\x89\xb3\x67\x82\x9f\x2c\x1b\x0a\xa4\x66\x13\xab\x79\x0c\xba\xa9\x3a\xa7\xbb\x19\x74\x0d\x80\xbe\x6d\x37\x5d\xcc\x46\x23\x67\xa7\x44\xc6\x09\xce\x6b\xac\xdc\x13\x93\xc0\x13\x10\x12\xb4\xbc\x96\x7c\x01\x61\x58\xe4\xdc\xbf\x87\x34\xe4\xf0\xfd\x08\x7f\x39\x7d\x7c\xe1\x1a\xda\x31\xfe\x97\xaf\xa2\xbb\xf3\x7d\xca\x6a\xe6\x5f\x2c\x7d\xd7\x36\xbb\x11\xa4\xf5\x42\x3c\x63\x11\xd6\x4e\xad\x2f\xed\xf7\x07\x72\x59\x59\x73\x77\x8b\x58\xfe\xd7\x5f\xbb\x2a\xf7\xd1\xbd\x0d\xb7\x51\xff\xb1\xbf\x52\x0e\xe9\xc8\x14\x6c\xba\x4a\xa6\x5f\x28\xd0\x40\x13\x4a\x6e\x81\xf5\x30\xe7\xee\x5f\x25\xe5\x86\x52\x0c\x34\x64\x09\xb5\xd0\x11\x28\xad\x28\xa3\xfa\x63\xad\xe8\x2d\x34\xc8\xb4\x9e\x5a\xa3\x70\x13\x78\xf8\x74\x47\x1f\x07\x5f\xb5\x05\x8b\xfb\xd9\xfb\x6a\x54\x14\x20\x3d\xc4\x3f\x04\x7a\xb1\x09\x2d\x67\xfa\x16\x84\x1a\x28\x7e\x19\x42\xf1\x0b\xa3\x6e\x86\x10\x08\x67\x9d\x0c\xf2\x16\xd0\x3a\x84\x2b\x6d\x48\x0e\x18\xf8\xff\x4d\xe9\x06\x07\x40\xf7\xe5\x1c\xd4\x5e\xee\xe7\x82\x56\x52\x18\x57\x94\x13\xdb\x7d\x84\xa1\x3f\x07\x3a\x87\xeb\x6f\x90\x69\x75\x60\x2e\xed\x14\x2e\xf1\xd4\x5d\xe2\x29\x1a\xac\x93\x6c\x8c\xa2\xef\x9e\x56\x14\x75\xc7\x67\x97\xd7\xbf\x6a\x7d\x2f\x7e\xa8\xbe\x3c\xbc\x7c\x75\x15\x21\xfc\x58\x7d\x7e\x76\x35\x3e\x3e\xbb\x7a\x7b\x78\x7d\xf4\xfd\xd9\xf9\xab\xf1\xe1\xf5\xf5\xa5\xfa\xee\xb6\xfa\xdd\xf7\x87\x57\xe3\x97\xaf\x2f\x8e\x7e\x8c\x10\xbe\xa9\xbe\x7c\x79\xf1\xee\xfc\x58\x15\x1b\x53\x32\xef\x1d\x65\x82\xbe\x67\xf4\x83\x55\x2e\xcf\x7b\x47\x73\x96\x4e\xd5\xa3\xfc\x4a\x87\x48\xe3\x79\x4f\xfd\xbc\x92\x89\xa4\xfe\x11\x10\x10\x44\xd0\xd8\x67\x59\x4f\x63\x36\x1c\xc2\x34\xfb\x2f\xab\xbf\x55\x65\x6f\xd8\x47\xc6\x71\x1c\xdf\x91\x27\x25\x19\x58\xcf\x9d\xed\x3e\xfe\x4c\xe5\xf6\x23\x1d\xd9\xe4\x5c\xc3\x7b\xda\xa0\xe9\xd6\xaf\x6e\xe8\x88\xe8\x98\x0d\x41\xb5\x2f\x44\xd8\x56\x55\xe2\x57\x35\x59\x89\x1f\x7a\x10\xa3\xa2\x40\xc3\xb4\xf7\xf6\xf2\xe2\xed\x89\x5a\xc0\xe3\xb3\xe3\xf1\xd1\xf7\x87\xe7\xaf\x4e\x46\x2d\x50\xb6\xaa\x67\x61\x64\xd9\xf0\x81\x8e\x30\x27\x1e\xa0\xef\x40\x31\xa6\x81\xb5\x1b\xb9\xcc\x28\x01\x1c\xa8\xba\xc3\x75\xbb\xea\xff\xf1\x0b\x42\x88\x1b\xba\xd9\x60\x07\x10\x89\x66\x35\x14\x5a\xdf\x83\x8a\x02\x03\x34\xe0\xa1\x94\x8d\x78\xdf\x2e\xa6\x4c\xf1\x85\xbb\x9e\xa0\xc9\xf4\xf8\xe2\x4d\xed\x6b\x67\x65\x9a\xab\x8f\xd5\xca\x9d\xa4\x60\x6b\x31\x11\xbd\x18\xce\x22\x12\x00\xce\xbd\xbb\x3c\x23\x84\xcc\x7a\x57\xef\x5f\x8d\x5d\x58\x95\x0e\xa3\x9e\x79\xcc\x3c\x2f\x7b\x03\xc3\xcf\x08\x03\xb3\x37\x9c\xc7\x1e\xdd\xdf\xf1\xc4\xd5\x2a\x4a\xa4\x14\xea\x0a\x9d\x1d\x08\x3b\x2e\x08\x1e\x8f\x13\x34\x10\xc3\x64\xa4\x46\x31\x65\xd3\x4b\x3a\xa1\xec\x81\xaa\xd7\x25\x67\x4b\xf7\x5a\xad\x79\xf5\xc5\x07\x96\xa6\xcd\x6f\xa6\x6c\x0a\x42\x51\x73\x85\xaa\xdc\xbb\xca\x55\xb2\x52\xae\xf2\x02\xa9\xab\xa2\x37\x3b\x8e\x29\x1e\xd3\x35\xe9\x31\x6a\xb1\x1c\x51\xa1\x0a\x08\x9a\x2d\x28\xd7\x51\x75\xe1\xfe\x31\x06\x10\xb5\x8d\xbc\xb4\xf3\x36\x11\xc9\x7d\x3e\x18\x8e\x0a\xd4\x6a\x77\x19\x9b\x13\xe9\x03\x75\x46\xb7\x07\x99\xff\xf9\xef\x97\xa7\xcf\x32\xba\xfd\x4d\x96\x34\x7a\xbf\x90\x8f\xd6\x94\x86\x4f\x28\x19\x53\x67\x03\x4b\x93\xc7\x6c\x29\x07\x1f\x28\x9e\x38\x46\x34\x18\x9a\xd0\x28\xe7\x93\x38\xc2\x32\xb9\xd5\xad\x1b\xaf\x41\x07\x3a\xf0\x92\xf1\x29\xe3\xb7\xaa\x90\xa2\xbc\x08\x47\x50\x8a\x4e\x23\x1c\x31\x3e\xa5\x92\x8a\x7b\xc6\xb5\x1b\xeb\x94\xe5\x4a\x2a\x56\xaf\x64\x72\x63\x22\xb2\x22\x45\xf2\x11\x8e\x92\xa5\xcc\x66\xd9\x64\x99\x43\x5e\x79\x9d\xcb\x3b\xc2\xd1\x2c\x13\xf7\xaa\x7d\xed\x37\xe2\x9c\x24\x6d\x55\x83\xed\x3d\x5c\x6a\x46\x3d\x98\xb2\xe9\x19\xcf\xa9\x90\x66\x93\x7d\x46\xbc\x32\xd5\x25\x7b\xa5\xba\x89\x73\xce\xd1\xc7\x79\xf0\x0a\x15\x78\x52\x8b\xc6\x2d\xeb\x88\x82\x99\x29\x35\x61\x9e\x1a\x83\x9f\x33\x94\x9f\x50\x7c\xf2\x49\x34\xfd\xb5\x9b\x9d\x02\x88\xf0\x8a\x12\xe7\x70\xd5\x60\xd0\xd0\xd9\x75\xd5\x87\x17\x21\x45\xcc\xc1\x6c\x6f\x4f\x99\xf5\xf4\x11\xb8\xb6\x3e\x8f\x42\x34\x32\x85\x59\x6c\xd5\xf1\x94\x4a\xbb\xf6\x79\xf2\xa0\x69\x44\x98\x55\x4f\xac\xe7\xb1\xfa\x41\xf9\xc4\x90\x97\xfa\x75\x0f\x61\xe4\xe6\x07\xcf\xac\x79\xc9\x3c\x90\x70\x7c\x46\x38\x9a\x53\x76\x3b\x97\x40\x88\x8b\x25\x24\x04\x8e\x70\x94\x26\x10\xdd\x95\xb2\x1c\x9c\xac\x75\xa5\xf7\x89\xa2\xc4\x7b\xa6\x9a\xbb\x5f\xa6\x92\x2d\x52\xea\x49\x73\x91\x48\xb5\xc3\x22\x1c\xe5\xec\x4f\xf5\x20\x97\x74\x11\xe1\x08\x84\xc7\x08\x47\x1f\xd8\x54\xce\xa3\x11\xd6\x41\x10\x51\xa4\xa9\xd5\x68\x16\x41\x08\x9d\xa2\xf8\xa9\x51\x32\x8c\xd4\x1c\x46\x05\xce\xc3\x97\x41\x10\xb5\x7e\x5f\x87\x59\xd7\x07\xa3\x5d\x5f\xab\x1b\xf2\x66\xd1\x0e\x9b\xc5\x74\x8b\xf1\xad\x2b\x1f\x07\x41\x87\x74\x64\x92\x6d\x5b\xef\x3c\x43\x11\x66\x9f\xc4\x66\xed\x50\x47\x8a\xc7\x27\xed\x41\x45\x68\x31\x49\xe4\x64\x1e\x0b\x6f\xf2\xbc\xd2\x60\xfa\xfa\x3d\x21\xb4\x00\x9c\xbb\x58\x10\xa9\xe4\xda\x02\x61\x35\x4d\x1a\xb2\xc7\x4c\x9d\xfe\x71\xcf\xec\x1f\xc9\x47\x0d\xce\xaa\x28\xde\xbb\x89\x5c\x50\x7c\xf1\x69\x24\x1f\x50\xa0\x26\xfa\x8f\x6b\x68\xb9\x8d\x82\xc1\xc7\x79\x84\x3d\xa9\x3b\x52\xf6\x1e\xd0\x4d\xd4\x2c\x32\x08\x90\x9c\x64\x10\xbd\x69\x68\x25\xa7\xa9\x76\xfc\x3c\xe1\xd3\xf0\xe7\x95\x4c\x44\x03\xe5\x7f\x10\xc9\xc2\x13\xa5\x26\x7e\x4d\x56\x23\xac\xea\x37\xc0\x47\x59\x9a\x97\x27\x0c\x5c\x6c\x3e\x52\xfc\xf1\x33\xe6\x0b\x46\xa4\xa7\xeb\xd0\x1d\x54\xb7\xec\xfa\xfc\xe3\x4e\xb6\x68\x3c\xa8\xa2\xae\x8b\x64\xaa\xfa\x89\xfc\x13\x47\x6c\x06\xce\x21\xff\x1b\xef\x19\xcf\x10\xfc\x54\x75\x26\xf9\x27\xbc\x8b\x16\xea\x0c\x55\x4c\x13\x4e\xbb\xa2\xfe\x1d\x36\x3e\x26\x51\xca\xf8\xdd\x35\x93\x29\x8d\x46\x81\x9f\x49\xa5\xfc\xdf\xe5\x7a\x62\xfc\xec\xdd\x91\x79\xe7\xd2\x9e\xcc\x04\xa5\x7f\xd2\xf8\xc9\xce\x79\xc3\x86\x76\xe6\x47\x28\xfa\xb6\x56\xb4\x40\xf8\xb2\xe9\x08\x3e\x0c\xe8\x2e\x89\xb0\xc8\x96\x92\x0e\xee\x28\xd6\xf8\x2e\xf6\x8f\x5c\xfd\xf5\xc7\x92\x8a\x47\xf5\x47\x34\xd1\x81\x40\xbb\x1f\xe6\x94\x47\x9a\x56\xa4\x9a\x35\xfd\xa7\xa0\xa9\x79\x66\x4e\x5b\xfb\x4b\xf1\x47\xfd\xb7\x76\x0d\xd3\x98\x34\x91\xfe\x11\xe1\x34\x4b\x14\x8d\x9b\xa7\xe6\x97\x3f\x73\xcd\x73\x7f\x9a\x9b\x50\x29\x75\xf4\x36\xed\x93\xb9\xa0\x33\xc5\x6a\x61\x39\xd5\xe1\x9e\x96\x05\x00\xc3\xaf\x47\xfe\x88\x29\x1d\x19\xba\x4f\xbe\x1b\x25\x31\x42\x24\x5c\x0b\x68\x8c\xdf\x9e\xf1\xea\x93\x8b\xa5\xaa\x96\x3e\x50\x2e\xf5\xc4\x4e\x52\x36\xb9\x8b\x3e\xfd\x72\xd4\x09\xec\x63\xae\x3a\x9d\x9c\x41\xf3\x6b\x07\x70\x3d\x66\xfc\x21\xbb\x03\x40\x05\x13\x4a\xac\x0e\x82\x07\xe3\x10\x8e\xe2\x68\xd7\x46\x18\x23\x3c\x36\xcb\x77\x09\x6b\x0d\xe7\x45\x92\xb2\x24\x47\x71\x64\x0b\xf7\xc2\x4f\x54\xa3\xd5\x62\x02\xee\x93\xeb\x0b\xc3\x27\xaa\xa0\x9e\xe9\xcd\xe5\xf4\x77\xae\x98\xf0\xfd\xf3\xe7\x59\x04\x4f\x23\x1c\x35\x74\x27\xc2\x71\xb3\x6d\x11\xca\x78\x98\x0d\x42\xee\x4c\xee\x98\xf2\x54\xd0\x02\x21\x3c\x36\x04\x5f\x6d\x57\x03\x6c\x60\xfd\x6f\xde\xda\x14\xbc\xb6\xfa\x4d\xfd\xad\x6b\x78\x1b\x1a\x56\xf7\x45\xa9\xff\x94\x20\xd7\x23\x3c\xd6\x5b\xab\xda\x24\x3c\x6d\x6d\x09\xde\x56\x06\xf5\x16\xe6\x4b\x84\x50\xfd\x1a\xc1\xc8\x09\xae\xcf\x12\x0f\xb6\xf7\x9a\x44\x83\x92\x31\x8e\xe5\xc7\xa6\x4a\x22\xf1\xf6\xb6\x34\x10\xf2\xa5\xcd\xaa\x38\x91\xde\x48\xb5\xa1\x05\x0c\x40\xad\xa5\xdd\x6e\x75\x33\xea\xb6\xce\x28\x63\xbe\x30\xad\x04\xa5\x61\xfa\x5a\x1a\x69\x24\x11\x4d\x6e\xf0\x87\x5d\xca\x68\x6c\x66\x3a\xd8\xed\x25\x16\xd7\xb6\x04\x0d\x0d\xd8\x3c\xae\xdb\xb6\xaf\x63\x96\x1f\x42\xf7\x0c\x96\x94\xba\x75\xbe\xa4\x87\x9f\xd4\xe3\xda\x06\xfa\xdb\x87\x81\x5d\x7a\x83\x6a\xd3\x20\xe2\x01\x62\x70\x85\x1e\xcc\x28\x25\x8c\xd2\xfd\xae\x42\x8e\x69\x17\x2b\xdd\xbf\x72\x52\x20\xdd\xe2\xb0\xdc\x65\xc0\xb1\x8f\x6e\xb4\x80\x19\x64\xf5\x73\x8d\x9b\x7c\x42\xee\x8a\x84\x3a\x92\x88\x03\x97\x2e\x75\x2b\x42\x03\x8d\x91\xa4\xe7\x6b\xe4\xb2\xbf\x1a\x03\x83\x99\x3d\x6c\x12\x8f\xe8\x29\x74\x98\x4c\x86\x33\xe1\x84\xf4\xf7\x13\xaf\x13\x4d\x76\x76\x10\x9b\xc5\xe0\x29\x08\xa3\x3c\xcd\x04\x4c\x51\xcc\x31\xc3\x72\x98\x8c\x30\xc5\xc2\x25\x3d\xea\x77\xfc\xb6\xaa\x1c\x1d\x75\x0a\x70\x27\x4f\x48\x28\x8d\x3b\xc3\xe5\xdd\x0c\xbf\xec\x76\x2b\x1b\xc6\x8a\x9c\x61\xbb\xbb\x8c\x47\x6a\x95\xaa\xa7\xd6\x97\xf4\x46\x27\x2e\xae\xf5\x67\xb5\x2a\xf5\x07\xb5\x74\x28\x5b\xca\x48\xd3\x0d\x9c\x63\x55\xaa\xd9\x06\x1d\x16\xcb\xaf\x98\x12\x61\x8f\xd4\x71\x8a\x82\xac\x52\xfd\x80\x80\x7a\x37\xcb\x9b\x9b\x94\xe6\xde\x5b\x04\x4e\xce\x63\x2d\x49\x5a\xbb\x92\xbd\x05\x6b\xf2\xc6\x8c\x6c\xf3\xd5\x2a\x1a\xe7\x34\x9d\x45\x84\x10\xf0\x20\xd1\x29\x9f\xbb\x5d\xd6\xed\xd2\x4a\x35\x31\xc2\x80\x86\x2d\xd5\xab\x5c\x66\x8b\xb7\x22\x5b\x24\xb7\x89\x9e\x12\x5c\x65\x91\x9e\xd0\x5b\x77\x80\x6a\x8f\x95\x37\x44\x48\x84\xd4\xe2\x81\x59\x7a\xcd\x4b\xf4\xba\xb4\xf9\x3c\x40\x22\xc2\x29\x79\x82\xe7\x46\x79\x94\x6b\xb1\x0e\x64\x91\x2c\x00\x86\xbb\xef\xcd\x52\x88\xf3\x3f\x73\xe8\x29\x48\x5d\xc6\x8c\xef\x7e\xc6\x7b\x2e\xf4\xd3\xa4\x83\x1c\xdf\x52\x4e\x45\x22\xe9\xb5\x5b\xbd\x38\xb5\x70\x23\x48\x4d\x0a\x20\x3a\x55\xbf\xa9\xc2\xff\x71\x0b\x00\x58\xd9\x67\x0d\xc8\x60\xb4\xe7\x09\x85\x64\xc1\x8f\xeb\x2c\xb6\x55\x15\x05\x56\xc2\xde\x5f\xc0\xff\x8d\x28\x5c\x62\xa1\xe6\xaf\xef\x41\x9c\x0c\x09\x5f\x71\xa6\x24\xb2\x9b\xd0\x14\x6d\x63\x72\x5b\xe1\x33\x55\x57\x28\xdb\x99\x25\x96\xe5\x25\x16\xa5\x25\xe6\xcd\x53\xc5\x7b\x76\xba\xdf\x5d\xbe\x36\x96\x11\x00\xa0\x32\x4d\xd5\x27\xa5\x32\xfc\x43\x41\x5f\x67\xc9\x14\xe4\xda\x50\x02\x6f\x3f\x2d\xb4\x34\xe5\x92\xbd\x55\xeb\xd1\x49\x40\x3d\x30\x42\x69\xe4\xfe\xcc\xae\x94\xaa\xf7\xb3\x49\xd0\xb2\xcc\x9b\x96\x67\x4a\x92\xfe\xbe\xfc\xd6\xba\x69\xef\x4b\x8b\xbe\x28\x88\xcd\x59\xae\xbb\x24\xdc\x06\x2b\x2c\xe7\x08\xa6\x4a\xad\xca\x20\xfa\x5f\xea\xc6\x51\x52\x44\x37\xbb\xd6\x3b\x51\xe7\xe7\x39\xe5\x9d\x30\x5f\x2c\xbc\xcd\xa9\x8c\x83\x2b\x83\xd1\xd0\x7a\xa7\xc6\xe4\x1e\x72\xfe\xca\x6e\x17\x12\x70\x9b\xae\xa3\x27\x49\x64\x2f\x4f\xd9\xc4\x7a\x71\x0d\x6f\xe9\x48\x1b\x29\x75\x95\xfe\x86\x8a\x65\x2f\x9f\xb3\x99\x8c\x91\xcb\x29\x3c\xb4\xf5\xec\xee\x8d\x3a\x00\xca\xc9\xf2\x9f\x3c\x23\x38\xf0\xd5\x18\x82\x97\xbd\x45\xb6\x88\x91\xb6\x47\xe6\x06\x3d\x2e\xfc\xe0\x8e\x22\x0c\xe7\x8c\xb3\x56\xb8\x2f\x0c\x1d\xdd\xd1\xb0\x98\x79\xe8\xbb\x86\xfd\x3b\x23\x41\xdf\xd1\xda\xc3\x3c\xc2\x52\xc7\x9d\x3c\xd5\x8f\x66\x58\x3e\xd3\xfc\x77\x7d\x0b\x9d\xc8\x87\x3c\x18\xeb\xba\xb4\x02\xdd\x2e\x2b\x4f\x83\x4d\x4d\x0d\x43\xb4\x1e\x04\x39\xe6\x7a\x2e\x50\x61\x40\xbe\xca\x21\x46\x97\x14\x5f\x3e\x47\xe9\x61\xb6\xa7\xbe\xcc\x87\x8a\xff\xcb\x8a\xe2\xbf\xa6\xe2\xd7\x6a\x86\x3c\x32\x51\xa0\xd7\x55\xcb\xdf\xc9\xe1\xd1\xf7\xe3\xb3\xf3\x08\xe1\x23\xba\x21\xc2\x42\x5b\xb3\x8d\xfb\xa9\x4c\x6e\x09\xd5\xae\xf4\x8a\x9e\xae\xe9\x88\x6c\xf7\xd7\x65\x9a\x5d\xeb\x85\x57\xb1\x5f\xcb\x4f\xb0\x5f\x97\x43\x32\x7e\xa7\xa5\x5b\x45\x93\x0f\xf4\x1a\x43\x72\xb7\x4b\xd5\x48\x0a\x6b\xca\x7d\x07\xb5\xad\x56\xd1\xbf\xee\xe8\x63\xa4\xcd\xbd\xdf\xbb\x67\x6c\x4a\xb9\x64\xf2\x31\xd2\xe6\xdc\x37\xad\xf3\xe7\x32\x3a\x1a\xe0\x14\x33\x85\x77\xf4\xf1\x34\x13\x36\xc5\xad\x5d\x39\xb2\x76\x16\x59\x7e\x72\xbf\x90\x8f\xf5\x79\x04\x29\xb0\x77\x4f\xef\xb3\xd3\xac\xd1\xb8\xa7\x53\x90\xd2\x8f\xb2\xc5\x53\x56\xf7\xcd\x9e\x16\xba\x6f\x4e\xda\x31\x7d\x53\x9b\x46\x7c\xe7\x79\xb0\xd3\xba\x9b\xbd\x05\x0b\x78\x9a\x89\x58\x20\x2b\xfa\x9a\x1e\xa9\x27\x19\x91\x20\xc9\x0a\x54\x82\x1a\xb6\x95\xef\xec\x60\x70\x3b\xc8\x8c\xea\x99\x63\x55\x76\xc0\x4c\xd8\x0d\x3e\x5b\xe7\x28\xe3\x72\x87\x59\x39\x84\x95\xdc\x26\xd5\x7b\xeb\x94\x91\x40\xaa\x0b\x89\xd9\x66\x8f\x93\x99\xc8\xee\x1b\xb3\x40\xda\x43\xc1\x0e\x04\xf2\x6d\x1d\xbc\xa4\x40\x21\xaa\x19\x80\xf1\xd5\x8e\x4b\xaa\x92\x53\x0d\x15\xa9\xd8\x76\x63\x7d\xc3\x91\xc7\xea\x59\x07\x27\x2b\x5c\x50\xb8\xe5\x81\xaa\xf6\x58\xd4\x7c\xa4\xec\x4a\xb4\x6e\x22\x98\x05\xc0\xbb\x11\x45\xfc\x86\x22\x7c\xfc\x3f\x74\x7a\x9f\x35\x66\x10\x03\x3c\x5c\xb2\x9f\x01\xeb\xc2\xac\x66\xe0\x7c\xfd\x0c\x38\xe9\xd2\xce\x41\x56\x9a\x03\xf5\xde\xce\xc1\x1d\x7d\xcc\x89\xc4\xc6\x75\x2c\x27\x02\x67\xad\x5e\x3f\x66\x1e\xce\xf8\x94\x7e\x6c\xa5\x8f\x30\x35\x24\x64\xb0\x15\x81\x97\xb9\x8e\xd1\xb4\x56\x13\xea\xee\xa2\x8c\x0c\x47\x38\x23\xfd\xfd\xec\x5b\xbe\x9f\x59\xe9\x25\xc7\x4b\x22\x86\xd9\xa8\x93\x13\x3a\x5c\x8e\xb4\x67\x2a\xcb\xaf\x45\x32\xb9\x53\x82\x65\x8c\xb4\x9b\x73\xe0\x48\xde\xe2\x1f\xab\x44\xf3\xb8\x9c\xc5\x25\x47\xab\x95\xf1\xbd\x85\xe4\x44\x26\xe2\x2d\x47\x1a\x0a\x78\x53\x9d\x39\x8e\x86\xa3\x08\x21\x84\x0d\x20\x7a\x5e\x72\xe8\x84\x95\x17\x98\x61\xfe\x09\x5b\xcb\xe9\x3d\x31\x57\xf3\x61\x27\x05\x27\x64\x7b\x6f\xed\xa6\x53\x55\xc4\x09\x49\x56\x2b\x3b\xd9\xdf\x91\x17\xa8\xdb\x35\xc0\x0c\xd2\x75\x92\x22\x9c\xed\xec\xa8\x1d\xd9\x07\x5f\x84\x97\x74\x90\x1c\xb8\xfe\x6a\xe4\x44\xa9\x0f\x8f\x33\x1a\xeb\x5f\xc5\x46\x87\xf5\x75\x9b\x57\x93\x15\xec\x5e\xbe\x8e\xe7\x5b\x56\x9e\x87\x1b\xfd\xf5\x9a\x73\x0a\x0b\x7b\xd6\x1b\xc0\x09\x7b\x56\x09\x9a\x2f\x53\x69\xcf\x2a\x73\x72\x89\xda\xc9\x45\xd7\xec\xe9\xe1\x15\xc8\x1c\xba\x6a\x99\x89\x51\xac\x09\x59\x9d\x49\x10\x67\x61\x06\xee\xe7\x61\x9a\x71\xaa\x66\xb3\x4c\x63\x0c\x75\xbb\x2f\x20\xaf\x9b\x11\x1e\x03\xd2\xe0\x76\xa2\x4f\xa9\xf9\x55\x74\x3e\xff\x34\x5d\x73\x5a\xda\xf9\xb1\xe7\xa5\x9e\x9f\xea\x79\x69\xaf\x57\x7a\xbe\x40\x32\x87\x41\xd5\xce\x4f\x56\x39\x3f\xd5\x42\x58\x75\x91\x3d\x41\xe1\x59\x42\x38\x50\x50\xfb\x19\x1a\x2e\x17\xb5\x93\x0b\x07\x6b\x62\x0e\x56\xa6\x0f\xd6\xcc\x1e\xac\xa7\x5f\xea\xb9\xf9\xd9\x41\x19\x6d\xa2\x4a\xcf\x05\x65\xd4\x89\x3b\xd4\x19\x03\x4d\xbf\xa6\x08\xff\xf9\x7f\xe9\x10\x86\x7b\x9b\xb6\xa8\xfd\xb0\x3f\x72\x83\x79\x49\xc9\x93\xa1\xcc\x06\x25\x7a\xbf\xc0\x6a\x51\xdb\x70\x87\x0b\xfc\x6e\xb3\x1c\x2a\xe8\x2c\x10\x42\xdf\x26\x72\x6e\x77\x36\x74\x66\x43\x50\x89\x93\xff\x2b\xde\xdf\xfe\x3a\xe0\xaa\x31\x80\xf1\x6d\xdb\x0f\x38\x41\xbb\x23\xb7\xa0\x33\xbb\xa3\x6c\x85\x6a\x47\x05\xa1\x59\xa5\xb0\x0a\x1e\x78\x5b\x07\xd1\x1f\x1c\x41\x2e\x62\x70\x73\x1a\x43\x26\x43\x2e\xcd\xf7\x95\x00\x29\x81\x99\x4e\x74\x4c\x08\x89\x29\x51\x32\x8d\xbd\x23\x6c\x07\x77\x04\xef\x58\xea\x9f\xd6\xd9\x14\x6f\x3e\x0a\x39\x3a\x38\xa7\xe5\x13\x3f\xe6\x21\x57\x8d\xb7\xfb\x08\x0d\x92\xde\xf7\x87\x57\xe3\xf3\xc3\xeb\xb3\xf7\x27\xe3\xab\x5f\xdf\xbc\xbc\x78\xdd\xed\xfe\x41\x55\xf1\x3f\x75\xf1\x4a\x29\x84\x06\xef\x69\x50\x7b\x70\x2c\xd6\xbf\x7c\x46\x0f\x14\xff\x83\x79\x76\xde\xab\x2d\x04\xac\xb8\x2d\xa7\xb1\xa1\x63\x28\xa7\xe7\xf3\x7d\xa9\x74\x65\x07\x53\xf3\x51\x2c\x83\x72\x6a\x9b\x3c\xbb\x39\xf5\x71\xd0\xda\x9b\xb0\x6c\x7b\x63\xae\x94\x39\xc2\x4a\x7e\x8d\xd6\xe5\x97\x76\xbb\x31\x25\xdb\x7b\x25\xed\x8a\xd9\x28\x1d\x03\x79\x26\x0d\xb4\x19\xdc\x0c\x2d\xe2\x18\x3d\x78\x45\x07\x3f\xd1\xf8\x57\x6a\x30\xcc\xfe\xa5\xcd\xc2\xf6\xfd\xcf\xd4\x3e\xb6\x57\x47\xfb\xe6\x27\x1a\xff\x48\x6b\x08\x66\x3f\xd1\xf8\x2b\x0a\x61\x50\x86\x55\x7f\xff\x3f\x7e\x6f\xfb\x9d\x2d\x2b\x3b\x5b\x94\x63\xc6\x2a\xa1\x8b\x8d\xf2\xa2\x30\xf2\xa2\xdd\xb4\xa2\x61\xc3\x8a\x40\x32\x0e\xae\xaa\x76\x33\xd8\x1e\x97\x37\xaf\x40\x07\x67\xd4\xde\xad\x38\x1a\x34\x6c\x64\x81\x0e\x8e\xc3\x4f\xda\x76\xac\x40\x07\xa7\xe1\x77\xef\x69\x50\x7b\xb8\x4b\xe1\xed\x4b\xfa\xff\xb5\x8d\x57\xa2\x8b\xca\x26\xb3\xf8\x81\x7f\xc9\x36\xa2\x6e\x1b\x79\x75\xd1\xfb\x0d\xf1\x02\xf6\x5e\xe0\x03\x05\xfe\xd8\x50\xa2\x26\xe5\xfa\xa2\x3f\x57\x63\x0c\x0c\x80\xaf\x08\x40\x43\x5e\xd1\x8a\x84\xe3\xde\xfc\x5a\x7e\xf3\x23\xd8\x44\xdd\xdb\x1f\x69\x00\xc7\xe8\x01\x87\x35\xfa\xa2\x0e\x59\x76\x4c\x4a\x4f\x1e\x5f\x2a\x62\xf6\x80\x8c\x0e\x58\xb8\x3c\x79\x40\xf9\xb7\x4b\x36\x35\x91\x8b\x85\x6f\xf3\xab\x30\x3e\xc3\xad\xa7\xac\x0e\x2f\x8c\x94\x87\x35\x70\x15\xfc\x44\x83\x94\x14\x45\xcd\x4c\x53\xb2\xe8\x50\xf3\x13\x27\x44\xaa\xdb\x6b\x35\x4c\x23\x39\x88\xd5\x73\xd2\xc7\x19\x1a\xe8\x3f\x77\x76\x12\x9c\xed\x44\x37\xf4\xc5\xbf\xff\xfb\xbf\xff\xef\x7f\xdf\xbd\xb9\xb9\xa1\xbb\xff\xfc\xb7\x17\xfd\xdd\xff\xff\x6c\x72\xb3\xfb\x62\xef\x1b\x3a\xfb\xe7\x37\xdf\x4c\x26\xc9\x8b\x68\x27\x41\x05\xb0\xb3\x5f\x36\x69\x41\x73\x83\x27\xb5\x8e\xf9\xad\x51\xe8\x46\x3b\x41\x2d\x6a\x3f\x68\xec\xe7\x36\xc5\xa8\xad\x29\xb6\x9a\xce\x12\xa8\xd5\x2f\x9a\xa5\xfd\x40\xf1\x6f\x14\x53\x49\x9e\xa2\x6e\x34\x88\xba\xc9\xfd\x62\x3f\xc2\xd1\xb7\xea\xef\x54\xaa\x3f\xbf\x53\x7f\xde\xaa\x3f\xff\x11\xfd\x63\x10\x75\xff\x58\x66\xf0\xfc\x1f\xea\xf9\xff\xfa\xf8\xe2\xdf\xd5\x8f\xff\xd4\x3f\xfe\xad\xaf\x7e\x10\xfd\xe3\x9b\xe3\xfd\xa8\xc0\x52\x92\xaf\x87\xdd\x6f\xbf\x8b\xfe\xf1\x9f\x64\xf4\x35\x16\xa5\x9f\xb7\x41\x1e\x72\x19\x4a\xb6\x52\xdd\x3a\xdd\x3b\x26\x2b\x4a\x58\x42\xe8\x01\x25\x51\x34\xa8\x23\x65\xc3\xf9\xeb\x28\x12\x61\xc5\x7b\x7e\xa1\x25\x74\x9d\xac\x5a\x5d\xbb\x4e\xb7\x71\x63\xeb\x69\xf7\xf5\x25\x61\x7d\xbf\xd1\xd5\x2a\xfe\x8d\xb6\x7a\x96\x26\xea\xcc\xf9\x8d\xf6\xe6\xfa\xb0\xfd\xcd\x10\xc1\x24\x4b\x7d\x85\x00\xc5\x6d\x88\x1b\xee\x79\x86\x00\x6a\xf0\x84\x10\x5f\xf4\x03\xed\x2d\x12\x91\xab\x31\xba\xba\xdc\xb1\x26\x0f\xa2\x41\x34\x90\x3a\xf7\x92\x24\x7d\x9c\xca\x4d\xaa\xfa\x29\x59\x4a\x7b\x19\x34\x71\xe9\xeb\x08\xb6\xa4\x6e\x6f\xd0\x35\x28\x42\x35\x59\xaf\x48\xd5\xd5\xec\xc1\x41\xf4\x68\x72\xae\x93\xbe\x66\xf0\xd1\x25\x9d\x6d\x19\xf2\x67\x53\x6f\x3e\x0b\xc4\x00\x87\x5c\xbe\x13\x6d\xc5\xa6\xbd\x29\x8a\xc0\x83\xd7\xbf\x1a\xd8\x5a\x74\xd7\xb4\x47\xaf\x0c\x14\xdd\x46\x58\x9a\x48\x43\x43\x81\x8e\x50\xd0\x05\x4d\xe4\x6a\xd5\x72\xc0\xe9\xd3\x9f\xee\xec\x21\x80\xb7\xd2\xf1\x2c\x45\x90\x0e\x4e\x96\x98\xf0\x44\x6a\x05\x20\xc4\xa8\xaa\x51\x4e\xe5\xdf\x1d\x04\x19\x06\xbf\xeb\xa4\xcd\x2d\xeb\x96\xcb\x64\x72\x07\x77\xca\xc7\xde\x95\xfa\x1b\xe1\x79\x1b\xd9\x38\xd6\x96\x4c\xee\x00\x76\x67\x2a\xad\x1e\x61\x96\x97\x40\xe3\xf4\xd3\x2c\x93\xfa\xf1\x15\x35\x1f\xf2\x6c\x4a\x4b\x5f\xae\xa3\xb6\x1b\x7a\xcb\x78\x8d\x8e\x00\x72\x5e\x5b\x7f\x1a\xa3\x82\x7d\x3b\x06\x54\xae\xea\x93\x26\xf1\xd3\x4d\xb6\xe4\xd3\xdc\x3a\x8c\xce\xf2\x81\xe9\xa4\x53\x97\x6b\x5c\x65\x08\x67\x8b\xad\xc5\x90\x72\x49\x35\xb6\x80\x6c\x02\x81\xa8\x7d\xd3\x0e\x0f\xef\xba\x78\x0a\x19\x8b\x7c\xee\x00\xa9\xca\x35\x84\x1a\x35\x96\xd2\x83\xb0\x52\x3b\xfd\xc8\xcc\xac\x04\x49\xeb\xaa\xe8\x1d\x8f\x3d\xfa\x71\x01\x2e\x99\x6e\xd9\x8c\x81\x0c\x47\x2f\xdf\xbd\x1a\x6c\xdd\xb3\x3c\x67\xfc\x76\x4b\xd0\x59\x84\xec\x56\x36\x93\x9d\xdd\xdf\x33\xb9\x76\x39\x92\x85\x5c\x8a\x56\xe3\x9d\x79\x7d\x49\x67\x79\xec\xe9\x03\x4a\xa6\xd9\xad\x85\xf7\xd7\x79\x02\x80\xc2\x1a\x65\x3f\x7b\x1f\x00\x22\xb4\xc4\x1d\x57\xd3\x89\x05\xdb\xdc\x4d\x19\xf8\x86\xad\xcb\x11\x6e\x70\xe6\x01\x73\x4d\x51\x62\xb7\x1b\xed\xca\x6c\xb1\x9b\xd2\x07\x93\x57\x17\x42\xd5\x54\x2d\x95\xe4\x65\x7e\xaf\x47\xd1\xce\x0c\x3c\xbf\xf0\x8b\xff\x9f\x44\x3b\xae\x84\xa7\x6a\xd0\x05\x97\x3e\xb3\xe6\x77\x84\xa5\x66\x27\xd1\xff\xc3\x23\xa4\x79\x69\x5e\xe6\xb8\x6c\x16\xf7\xad\xa3\x93\x9e\x81\x9c\xfd\x49\x21\x29\xf9\xfe\x76\xf0\xd4\xe8\x85\x62\xb4\x8f\x82\xa7\x60\x62\x56\xf5\x02\x99\xd6\xa9\xd7\x7c\x65\xf1\x84\x25\x10\x55\x6d\xc5\x2b\x75\x99\xe9\x6d\xb6\xa6\x54\x08\x4e\x6f\xcb\x46\x8a\x83\xe4\x44\x50\x61\xb0\xf7\xda\x50\xc2\x74\x17\x8c\x83\x8d\xc1\xab\x4c\x01\x90\xd2\xd3\xb5\xde\xfc\x02\x61\x79\x50\xda\x39\x12\xe9\xf7\xc9\x74\x1a\x0b\xe3\x3d\x00\x94\x68\x9e\x04\x94\xac\x48\xb5\xa5\x0b\x78\x93\x31\x8e\x3b\x5f\x01\x18\x2f\xea\xb0\x03\x63\x95\x73\xd5\x9f\x67\x53\x6a\x61\xb5\x77\x55\xf7\x06\xd1\x0e\xef\xb1\x29\x66\x08\x0d\x68\x6f\x4a\x53\x2a\x69\xcc\x91\xc9\xe8\x56\x2a\xd7\xa8\x3b\xaf\x8c\x13\xd4\xe6\x10\x1a\xc9\x4c\x94\x25\xe4\x98\x05\x54\x83\x84\x08\x0f\x80\x90\x13\x01\x73\x62\x3d\xb9\x4c\x3b\x96\x7b\xc5\xc2\xe5\x45\x35\x6f\x5e\x02\xeb\x51\xcf\x27\xa4\xb6\xb7\x73\x97\xf1\x90\x4d\x07\x54\xc7\x05\x71\x9d\xbe\x8f\xa9\x93\x2c\x1f\x64\x5e\x35\x67\xba\x30\x48\xb0\x83\xeb\x5f\x62\xc3\x9e\x53\x6c\x61\xde\x06\x93\x22\x18\x7f\x63\x22\x0d\x7b\x8e\xd8\x6a\x02\xc4\x64\xb5\x8f\x66\x54\x08\x2a\x7a\x3e\x44\x42\x3b\x0a\x05\xb5\xea\x31\x35\x47\xb0\x7a\x32\xa6\x86\xed\x56\xa8\x57\x3f\x74\xd9\x14\x9f\x34\x34\x92\x0d\xc5\x93\xbd\xd2\xef\x18\xe1\x99\x45\xe0\x1d\xc8\x9e\xfb\x3b\x46\x38\x4d\xdc\x63\xfb\x67\xec\xb4\x3a\x8b\x56\xa9\xa1\x05\xce\x03\x8b\x00\x62\x00\x1c\xe2\xb4\x67\x1d\x31\x3e\x7e\x8c\x88\xe1\xb4\x77\xf1\xf3\xf9\xc9\xe5\xc8\xeb\xab\x01\x96\x95\x30\xcc\x7b\x2c\x0f\xa0\x74\x09\x73\x58\xd8\x0d\x00\xf7\xe5\x6f\x31\xd7\x48\xde\xd9\x23\x9d\x3a\x2f\x96\x9c\x0c\x47\xb8\x36\xbd\x4a\xc0\xf3\x20\xf2\xb1\x24\x89\x13\x96\xa2\x59\x96\xdd\x24\x62\x70\x93\xfc\xa9\x04\x69\xfb\x13\x9c\xde\x90\x97\xa5\x4f\x33\xf1\xee\xf2\x35\x49\x64\x07\xb0\x63\x4b\x78\x5a\x46\x78\x7e\x77\xf9\x1a\xfd\x40\xc9\xbb\xcb\xd7\xb8\x56\x2e\xd7\xe5\x9e\x42\x28\x5b\x53\x4c\x53\x4b\x88\xc3\xb5\x5d\x7e\xd5\x33\x41\x9b\x48\xce\x45\xf6\x01\x44\xc3\x13\x21\x32\x11\x47\x47\xd9\x32\x9d\x6e\xf1\x4c\x6e\xcd\x18\x9f\x6e\x41\xb4\x9e\xea\xc6\x96\x12\xdf\x15\xc5\xdc\xd3\xc9\x3c\xe1\x2c\xbf\xdf\x9a\x65\x02\xde\x5c\x25\x9c\x49\x83\xd0\x1c\xa1\xce\x0f\x94\x94\x1b\x89\xa3\xa5\x48\x21\x23\x40\x6d\x04\x45\xa1\x93\x9d\x27\x79\x4e\x85\xbc\x9e\xab\xc5\x60\x52\xe7\x4d\x98\x6a\x0d\xb6\x49\x65\x71\x7c\xf2\xf2\xdd\xab\xf1\xe5\xc9\xf9\xf1\xc9\xe5\xf8\xfa\xf2\xe4\xa4\xdb\x8d\x79\x4f\x67\xcc\xd7\x67\xef\xb5\xa0\x14\x18\xea\x5c\xae\xc3\x5a\x5b\x0b\xb4\xe1\xed\xef\xeb\x2d\x98\x95\x81\x34\xbb\xa3\xf0\x9e\xcc\x9a\xa0\x8f\x9a\x3e\x67\x21\x78\x82\xa2\xe0\x00\x10\xbf\xd1\x36\x64\x1c\x81\xd4\xb7\x36\x81\xd0\x99\xe2\x49\x69\x6a\x51\xcd\x7d\xb9\xc0\xec\x19\x12\xbb\x76\xd0\xb5\xe2\x76\x4b\x2d\x21\x36\x17\x16\xa5\xf6\x74\xb0\xf7\x17\x36\x57\xae\xa4\xa1\xb5\x29\x9b\x36\x09\x85\xd4\x6e\x54\x8d\x07\x52\x13\xb9\xdb\xc9\x06\x7a\x56\xa1\x1b\x5d\xde\xea\x87\x2b\x3c\xa7\x8f\xc3\x8e\xc3\x97\x01\x16\x8a\x6a\xbd\x2e\x62\x06\x67\x7e\x03\x43\xe9\xb4\xbd\x50\x67\xb3\x47\x15\xe9\xef\x0b\xef\x3d\x2f\x76\x76\x90\x1c\x8a\x91\x1f\x37\x5c\x1b\x69\x19\xdd\xe6\x9e\xc9\xb0\x6f\x33\xc6\x93\x34\x7d\x7c\x6a\x1a\xd6\x5e\xf1\x89\x73\xa4\xab\x8f\xd7\x62\xaa\x44\x95\x42\x51\x15\x63\x85\xcd\xe2\xb6\x66\xcb\xa1\x11\x95\x8a\x3a\x75\x4e\x95\xf0\x7f\xc8\xad\x64\x32\xa1\x79\xbe\x05\x5f\x6f\x69\x91\x64\x4b\x0a\x4a\xb7\xb2\xa5\xcc\xd9\x94\x6e\x65\xb3\x2d\x39\xa7\x5b\x8c\xe7\xea\x20\xcc\xc4\x56\x5c\x6f\x79\x6b\x96\x26\xb7\x5b\x2c\xdf\xb2\xae\xa7\x28\x42\x16\xf8\x65\x16\x02\xab\xa3\x4e\x19\x67\x7d\xa1\x23\x29\xee\xdb\x2f\x9e\xeb\xee\x89\x0b\x41\xd5\xf9\x7a\x28\x6e\x9b\x72\x64\xd9\x63\x7e\xca\xa6\x47\xa1\x7a\xa6\x8c\xae\x10\x5c\xbb\x5e\x43\x6c\x62\xc3\xeb\xa3\x1a\x0a\x74\xd3\x55\xd0\x7d\xae\xb7\x64\x6b\x6d\x4d\x18\x0f\x65\xad\xf3\x43\xa0\x6b\x72\xa9\x78\x41\x8e\xdb\x89\x06\xd1\x0e\xed\xe9\x0b\x4b\x51\xac\xc1\xc8\xbf\xd7\x33\xfb\x28\xc9\xd3\xf4\x91\x27\xf7\x6c\xa2\x3b\x04\x90\x01\xfa\xc1\x75\x72\xab\x7e\x05\xb3\xa8\x7e\x6a\xb2\x84\x5f\x6d\x84\xe6\x03\x1f\x21\x49\xc7\xf6\x1e\x36\x81\x0d\xf6\xa7\x21\xed\x24\x4d\xa9\x08\x1a\xbc\x9a\x64\x0b\xc8\x1c\x10\x64\xf8\x68\x6d\x43\xd7\x71\x66\xe5\xc4\xed\x7e\x81\x6f\xbf\x54\x7b\xf2\x59\xc8\x4a\x75\x5d\x43\xe0\xef\x46\xb8\x59\x0c\x1d\xbf\x94\x11\x90\x39\x3b\xa5\xa7\x24\x83\xfa\x13\xf2\x94\xd3\x74\x36\xf8\xcd\xe1\x63\xf7\x26\x19\x97\x22\x53\xb3\x84\x70\x28\x5a\x51\x0c\x8c\x87\xfd\x09\xb1\x5a\xf7\xbd\xb1\x4f\x34\x0b\xa1\xd5\xc8\xde\x1e\x7a\x36\x81\xda\x83\x04\x5f\x96\x75\xdc\xe1\x29\x31\x5f\x13\x93\x91\xdc\x92\x11\xa6\x75\x56\xa5\x7b\x68\x4b\xe0\x27\x0d\x49\x61\x5b\x83\xf2\xf6\xa5\xbe\x60\x80\x7c\x3f\xeb\x9d\xbc\x79\x7b\xfd\xeb\xf8\xf0\xf2\xd5\x95\x17\xf1\xb5\x74\xe5\xe5\x7c\x93\x9c\x44\xcf\x7a\x1e\x80\xa9\x2d\x49\xde\xed\xe6\x26\x65\xa0\xff\x4b\x0b\xa6\x38\xf5\x50\x6b\xa5\x17\x6a\xd0\xcb\x6e\x77\xb9\x4d\x48\xaa\x57\x65\x42\x52\x3c\x25\x93\xde\x7d\xb6\xe4\xf2\x6d\xc6\xb8\xec\x24\x3d\x0a\x69\xf0\xc8\x93\x7f\x38\x98\xae\x1d\xba\x2e\x60\x87\xae\x7f\x99\xa1\x4f\xd7\x0d\x77\x52\x1f\x69\xd1\xde\x8c\xad\x1f\x5c\xd8\x77\x7d\x1a\x3c\xb3\x44\x7e\x6e\x85\xbd\xaf\x84\xb7\xa7\x90\x84\x7c\xb3\xd2\x5d\x86\x0a\xe7\x1f\x97\x18\xd4\xaf\x2a\x5b\x6a\xb8\x41\xf5\x92\x5c\x7f\xe5\xac\x9f\x4f\xf3\x84\x4f\x53\xdd\x1c\xa4\xde\x8c\x11\xd6\x1e\xe2\xd7\x90\x0c\x44\xf6\x82\x5f\x85\x69\xe9\xa8\x31\x05\x91\xdb\xa9\x8f\xd2\x7c\x77\x45\xd3\x59\xb3\xe7\x8b\xda\x2e\xe6\xa3\xeb\xa4\xc1\x58\xb2\xd5\x46\xeb\x07\x35\x24\xa7\xc1\xb2\x77\x74\x71\x7e\x75\x7d\x78\x7e\x3d\xbe\x3e\x7c\x65\x04\xa3\x66\xbe\x6f\x4c\x93\x76\x0b\xc6\x6b\x65\x68\xda\x0b\x36\x6e\x6d\x95\x5d\x1b\x50\x29\xa6\x86\xa8\x94\x28\xf7\xcc\x62\x96\x0c\x4d\xe9\xe7\x95\x31\xbb\x56\x22\xd4\x02\x5c\xfb\xd9\x03\x32\xf6\x5a\xdb\xc4\xf3\x87\xe4\x0a\xea\xcf\x37\x8d\xc6\x7e\x8e\xac\x0c\xdb\x7c\xa8\xc2\x52\xfd\xcf\x5e\x9d\x5b\x2a\x8f\x5d\xf2\xab\xa6\x7d\xd0\x4a\xe4\x4f\x46\x92\x0d\xc5\xc3\xf5\xbd\x08\x34\xc4\x31\x7d\xfe\x80\x4b\xc5\x9e\xb9\x80\xe5\x32\x86\x5a\x8a\x62\x60\x80\xd4\x8a\xf8\x5e\x22\x7c\x23\xe1\xc2\x79\x2b\xf1\xb8\xba\xa8\x15\x7c\xbd\x1b\x69\xc3\x77\xe0\x44\x35\x0e\x2c\x26\x23\x17\x91\x81\x09\xe6\x83\xb4\x52\xe3\x49\xab\x15\xcc\x87\x03\x1a\xe5\x7d\x90\xf9\x47\xd7\xec\x62\x68\xac\x9a\xdd\x20\x67\x6a\x9f\x7a\xc3\x19\x04\x31\x7e\x51\xf3\x24\xff\x59\x24\x8b\x05\x9d\x5a\x19\x93\x99\x6a\x94\x74\x7f\x49\x67\x26\x43\x45\xcb\x23\x55\x77\x29\xb9\x05\xb8\xb3\xf7\x07\x61\x1a\x08\x11\x20\x49\x8b\x2c\x93\x50\x03\x00\x0d\x4a\x4c\xd7\x7a\xda\x4c\xab\xb7\xbf\x92\x47\x85\x1b\xa8\xd5\xaf\x07\x93\xa1\x1d\x52\x4b\x97\x50\x1d\x1a\xc9\x6e\x6f\xa9\x88\xa3\x60\x8d\xcd\xb8\x41\x4b\x51\x7a\x7f\x94\xd2\x44\x68\xba\x88\x6c\xc4\x58\x23\x34\x1c\x45\x1d\xa1\x3d\xcb\xe7\xbd\x89\x2a\x64\xde\xa8\x8f\x50\x2c\xc0\x15\xcf\xbc\xa9\x94\x43\x85\x6c\xba\x0b\x86\xfa\x6c\xbb\x62\xe1\x24\x58\xc8\x52\xb7\x9a\xce\xbf\xc9\xaf\xef\x07\x59\x95\xcd\xaf\xca\x16\x3e\xaa\x11\x2a\x03\xc3\xf3\x45\xe9\x03\x80\xa0\xcb\x41\x73\x35\xec\x8f\x14\x29\xdb\x18\x35\xbc\x17\x04\xb8\xa1\x03\x5d\xef\xb0\x3f\x42\x03\x03\x8f\x09\x6b\xfa\x51\xe2\x43\x89\xef\x9a\x0f\x6c\xf0\x7a\xb9\x98\xc5\xd1\x20\x02\x97\xa8\x5d\xa8\xd2\x5c\x03\x87\x14\x53\xbc\xdd\x1f\x75\x6c\xc8\x44\xbe\xbc\xd1\xb6\x65\x35\x70\x04\x18\xf6\xfe\x91\xdc\x71\x58\xb4\x43\xb5\x35\xb6\xf7\x46\x05\x7e\x2b\x6b\x62\xaf\x77\xb8\xe0\xc3\xfe\x08\x27\x84\x0f\xf7\x46\x1d\x3e\x7c\xa1\x43\xe6\xd9\x54\x0d\x35\x31\x91\x04\xa5\x24\x08\x19\xea\x94\x8c\xfb\x79\xb7\x1b\xe7\x44\xda\x98\xe8\xb3\x29\xc2\x39\x59\x87\x8a\x99\x23\x0c\x4c\x81\xf5\xf2\x10\xca\x4f\xb5\x89\x73\xbc\xdd\xc7\x3a\x75\x27\x18\xc1\x49\xe6\x27\xa7\x17\xa1\xef\x76\xf7\xf0\x84\x2c\x0f\x2e\x64\x2c\x70\x66\xa3\xf4\x7b\x11\x42\x83\x2b\x78\x84\x3a\x37\xbd\x93\x37\x2f\xc3\xe4\xae\xe3\xb3\xab\xf1\xfb\xb3\xab\xb3\x97\xaf\x4f\x20\x69\xe0\x63\x4a\x61\x6c\x01\xc6\xe2\x47\xc5\x9b\x26\xb0\x0d\x3f\xca\x78\x82\xa1\xae\x88\xe5\xef\x59\xce\x6e\x52\x1a\x21\xc5\xe3\x71\xa5\xbf\x09\x9e\xe0\xed\x3d\xd3\x59\x7c\x29\x09\xd3\x21\x9b\x8b\x34\x79\x1c\x6c\xf1\x8c\xd3\xfd\x68\x53\x77\xe2\x8f\xad\x37\xa1\x8d\xc1\x38\x35\xf0\x59\xd6\x73\x3d\x26\x02\xb3\x80\xf5\x71\xcc\xd6\xe1\xc3\x4b\x40\x86\x7f\x46\x1c\xcf\x66\x68\x66\x0b\xcc\x1c\x44\xf9\x39\xb4\x66\xdb\xb9\x12\x60\xfc\x5e\x88\x05\xa1\xd1\x21\x5c\x20\xc1\x4e\xb4\x55\x99\x4f\x4b\x79\xe0\x14\x72\xc0\x64\x2c\xd0\xc0\x22\xda\x6f\x5d\xba\x44\x31\xc9\x64\x4e\xa7\x1e\xde\x17\xe1\x0d\xab\x70\x28\x89\xce\x9a\x9c\xa6\xb5\x58\x73\x7b\x3f\x54\x63\xe8\xf0\x0a\xc9\x6a\x6a\xd2\xce\xc5\xf7\xc9\x02\xc5\x75\xca\x69\x8a\xee\x62\xea\xe3\x2b\x55\x16\x5c\xf8\x34\x97\x80\xf8\x77\x4b\x4e\xa5\xf7\x83\x7a\x15\x00\x1f\x40\x0f\x2e\x35\x20\x52\x61\x83\x3e\xeb\xfb\xdc\x76\x5f\xd8\xcd\x32\x88\x00\x71\x53\x6f\x7a\x36\xdc\x1b\xe1\x9c\x30\xbb\xed\x01\x63\x13\x55\x47\x39\xd1\x01\xdd\xeb\xf6\x74\x82\xdc\xc6\xed\xb8\x40\xdc\x25\x5c\xf5\xea\xfb\x37\x3d\x08\xb7\xee\x60\x38\xc2\x53\x92\xaa\x3d\x2d\xf1\x04\x36\x32\x30\x99\x25\x09\x7c\xbe\xd4\xd6\x3c\x92\xf1\x14\xa7\x07\x93\xe1\xc4\x87\xee\x0e\x32\x1d\x06\xf2\xbb\x7a\x97\xe0\x1c\xe1\x96\xce\x2f\xfd\xe4\x16\xf8\x68\xdd\xae\x7b\x16\x14\xb7\xdd\x73\xbc\xb7\x48\xe4\xdc\x21\x71\xeb\x1d\xc5\x9b\x5e\x4f\x93\x5c\x6d\xa9\x3f\xe9\x14\x5c\x75\x41\x68\xf8\x52\xc8\xee\xb6\x2d\x07\x3b\x0b\x1c\x9c\x4b\x0a\x58\xd5\x97\x52\x34\x49\xb9\x4f\xab\x55\xdc\xf0\x54\x31\x8d\xb1\x7f\x86\xc2\x64\x0d\x74\xb5\x82\x56\x0e\x9c\x0b\x97\x17\x0b\xeb\xdb\x10\xff\xfe\x29\xcc\xce\x7b\xfc\x09\x40\xe9\xd3\xf9\xac\x7c\xae\x42\xf0\xf5\xd7\x0f\x37\xf2\x45\x09\xc9\x1b\x80\x29\xce\x92\x34\x7f\x74\x0c\x51\xaf\xd7\x5f\xcd\xf9\x2c\xc7\xd3\xcd\xda\xc8\x06\x68\xb9\x53\x8e\x06\x89\xd1\x81\x1c\x88\x96\xf9\xf2\xb2\xca\x1b\x19\x4a\x0b\x80\xb6\x8b\xcb\xe9\xa6\x9a\x72\x7f\xb1\xa6\xa7\x1d\x3e\x7c\xa0\x23\xc2\x9c\x76\x5d\xc7\x0d\x3a\xed\xba\x0b\x1f\xd4\xee\x97\x38\x27\x5a\x32\x4a\x10\x84\x13\x26\xa3\x4e\x83\x97\xdd\xb2\xdb\x5d\x0e\x7f\x1a\x1d\xa8\xf7\x64\x39\xc8\x01\xb2\x38\x86\x5f\x6a\x73\x1e\xcb\x58\xe3\x7b\x30\xf5\x24\xc7\x1c\x3e\x73\x01\x7f\x3d\x10\xad\xd4\x26\x81\x33\xff\x4c\xd6\x32\x24\x9e\x46\x08\x1f\xaf\xb9\x04\x68\xf1\x7f\x38\xef\xbd\x79\x77\x7d\xf8\xf2\xf5\xc9\xf8\xe8\xe4\xf5\xeb\x11\xd9\xd6\x82\xe1\xf0\x4c\x8e\xec\x75\xc0\x24\x98\x69\x4a\x83\xd7\xe2\x11\xa4\x4a\x0f\x7f\x1c\xb9\x10\x74\x7c\x5e\xbb\xe1\xc0\x69\xf5\x54\x78\x6c\xa0\x2d\xc6\xb7\x28\x32\xb3\xef\x5b\x98\x27\xf9\xc5\x07\x6e\xbd\xda\xad\x91\x94\xa3\x6e\x57\x3a\x2e\xc9\xd1\xb7\x7d\x98\x3b\x3e\x22\x14\xf0\xd2\x8d\xff\xdc\x36\x69\xf6\x70\x34\xad\xdc\x52\x19\xd4\xad\x7d\x93\x73\xcb\xfc\xfb\xd0\x35\x47\x25\x8d\xdf\xc6\x14\xed\xb3\x6f\x2d\x2a\xc2\x3e\xdb\xd9\x41\x41\xaf\x86\x6c\xe4\x3a\x36\x64\x23\xe8\x9b\xfa\xd7\xb1\x02\xa1\xcd\x84\xaf\x65\x2d\x7d\xe9\x79\x8c\x10\x3e\x95\x64\x38\xda\x8f\xfb\x78\xa2\x2f\x98\xa7\x80\x2b\x88\xe2\x53\x93\xd8\xec\xcf\x16\xd6\xc0\xbf\x44\x23\xcc\xad\x46\x98\x11\x5e\xbf\x50\xb1\x16\x2d\x5a\x59\x53\xa6\x56\x4d\xfd\x51\x52\x93\xd1\x8a\x9a\x2c\xc8\xc2\x5a\x0d\x35\x51\x7b\x16\xf6\xaa\x06\x4c\x04\x69\x5d\xff\x79\x9e\xdc\x53\x1d\xd9\x34\x35\x2b\x42\xc1\xf1\xba\x94\x92\x55\x20\xf7\x6b\x1b\x12\xb4\xea\x2d\xeb\x2d\xf9\x4e\x57\x18\xed\x70\xd4\x91\x24\xd3\xf9\x57\xa5\xff\xe4\xb5\x44\xce\x3e\xbe\x7d\x1a\x3b\x5c\xa9\x2d\xd1\x91\xc4\x09\x4f\x32\x66\x48\x0d\xe4\x96\xca\xe3\xd0\xcc\xd0\x78\x5f\xf1\x77\x4d\xc3\xdb\x82\xe1\x5b\xb7\x15\x77\x93\xae\xa8\x20\x5b\xd5\x20\x9b\x94\x17\x81\x37\x9e\x76\x0b\xb2\x4b\xc4\x5b\x94\x99\xbc\xb6\x4a\x5a\xff\xa8\x26\x7e\xfd\xb0\x3c\x97\xae\x29\x04\x0e\xc0\x1d\xc5\xa0\xf5\xac\x56\xd1\x94\x3d\x44\xe6\xd0\x63\xed\xca\xd2\x50\x19\x1a\x66\x74\x57\x85\x1a\x8d\x5f\x16\x45\xde\xe4\xc5\x51\xfd\x88\xa3\x31\x28\xa8\xc7\xe3\x28\xc8\xa2\xa3\x5f\x3b\x8d\xb2\x12\x2c\x21\xc2\xd6\x7e\x8b\x33\x72\x2e\x63\x8e\x87\xbe\xf4\xc8\x3b\xb9\x38\x10\x91\xc1\xa9\x04\x4d\xf5\xb4\x06\x00\x98\x61\xa7\xd7\x37\x9e\xf3\x09\x1c\x0a\xee\x7e\x0e\x86\x4f\xad\x0d\xe9\x55\x51\x49\xbc\xf3\x6f\xae\x45\x85\x30\xed\x8f\xbd\x32\x87\x31\xb2\xa5\xcc\x6b\x86\xc3\x19\x36\xb6\xdc\x8f\x97\xe4\xa9\x40\xc3\x7c\x54\xae\xc6\xab\xd3\x13\xb2\x2c\x3b\x8b\x26\xb8\x71\x86\x0c\x58\x0c\x20\x83\x55\xe3\xda\xbb\xdd\xdc\xa3\xc5\xd4\xe2\x77\x53\xf2\x26\x91\xf3\xde\x3d\xe3\xb1\x47\xd2\x68\x18\x53\x27\x21\x4f\xc5\xf3\xfa\xe2\x8e\x8d\x09\xe9\xef\x4f\xbe\x4d\xf7\x27\xf6\x08\x9e\x91\x7c\x38\x19\x75\x92\xe1\xac\x32\xe2\x44\xc6\x13\x54\x14\xf5\x55\x7c\x74\x86\x8c\xcb\xc3\x5f\xcd\x82\x26\x40\xfa\x2d\xd6\x2f\xcc\x70\x66\xcf\x7b\xde\x7b\x60\xf4\x03\x56\x77\xf9\xf2\xe2\xaa\x93\xbf\xda\x75\x9c\x92\x37\x32\x5e\xa2\xfd\xb8\xaa\x6e\x0f\x08\x96\x4d\x23\x04\xaa\x12\xa7\x1b\x80\x9c\xcf\xa8\x50\x72\x55\x8a\x70\x6a\xb3\x1d\x32\xfa\x81\x24\x38\x1d\xde\xd2\x11\xc9\x70\x6a\x71\x03\x03\x93\x92\x37\x85\x74\xbb\x71\x6a\x58\x28\xf1\x4f\x6d\xd6\x9e\xdc\x4a\x3b\x29\xc2\x33\xb2\xc1\xe8\x16\xe4\x89\x7e\xa9\xee\x1e\x1d\x3d\x05\x64\x82\xf5\x89\x9b\x00\x98\xc1\xbc\x97\x4c\xa7\x2e\x31\x86\x5a\xc8\x09\xc2\x13\xaf\x1d\xab\xe0\x3d\x19\xed\xd8\x94\x44\xd1\x36\x21\x13\xcb\x2b\x3a\xd3\xd5\x2a\xa6\x55\x4f\x90\x49\x59\xc9\x66\xf5\x6b\x78\xd2\x1b\x97\xb0\xca\x00\x31\x38\x50\xcd\xad\xaf\xa6\x84\x23\x1f\x19\x80\xa7\x05\xc8\x62\x27\x32\xa6\x78\x82\x97\x78\x86\xa7\x3e\x17\x4b\xb8\x68\xfa\xc2\xa4\xd6\x6d\xe1\x75\x9c\xf6\x0b\x25\x0a\xda\x2f\x1a\xfa\x31\x6d\x1f\xd1\x3a\xb6\xdf\x62\x53\x5b\x58\x9b\x5a\xb0\x4e\xcf\x33\xa7\x4d\x9a\x6d\x68\x78\x61\xb8\x74\xbb\xa9\xca\xa8\x64\xd5\x77\xed\xfe\x06\x26\xba\x4b\xf3\xe0\xf0\x38\x84\x8b\x88\x99\x33\x9c\x91\xd2\x81\x06\x5c\xd3\x54\xbf\x0f\x64\x95\x57\x34\xa7\x1c\x4b\xa3\x1d\xcd\xa9\x2c\x69\x4d\x25\xe6\x7a\x11\x97\x44\x8b\xcb\x25\xb4\x62\x9c\x12\xde\xf3\x38\xe1\x78\x12\xfe\xb4\x1f\x59\xeb\xaa\xe5\x50\x71\x93\x46\xd0\x5f\x0a\x86\x23\x60\x04\xf6\xa2\xbd\xbf\xbb\xb7\x4d\x48\xbe\x6f\x58\x31\x91\xc3\x7c\x84\x53\x72\xa7\x58\x80\xba\xd1\x0f\xf7\x46\xfb\xa0\xb5\xf4\xf7\xfd\x89\x22\xa1\x4c\x2b\x6f\x27\x08\xbf\x05\x67\x5e\xcc\x71\x8a\x19\x42\x38\xdf\xdd\x2d\xac\xa6\x33\xd0\x11\x28\x8e\xa1\xdb\x98\x12\xe1\xd9\xc6\x41\xf0\xf7\xa0\x1c\xa9\x26\x50\xa7\x49\x91\xb8\x4e\x59\x31\x0d\x34\x2d\xeb\x35\x43\x4e\xf2\x3a\x94\xdd\x6e\xb5\xaf\x5a\xf9\x83\xba\xdd\x43\xd9\x33\xda\x23\x33\x44\xa6\x38\x9c\xc4\x4b\xcc\x71\x8e\x45\xa0\x11\x99\x12\x1e\x0c\x8a\xb7\x0e\x8a\xa3\x8e\xf8\xfc\x41\x6d\x50\x77\x95\x06\x15\xf4\x5d\x9a\xee\xaa\x75\x31\xda\x61\xcd\x33\x8e\x64\xcc\x40\x50\x71\x09\x41\xeb\xdd\x33\x6a\x96\x85\x9f\xd9\xb4\xdb\xb5\xc7\xa1\xfa\xab\x19\xed\xe8\xd3\x35\x4d\x34\x58\x3c\x84\xf0\x44\x71\x1c\xdb\xca\xa4\xb9\x95\x6b\x19\x4b\x9c\x03\xa6\x2a\x78\x62\x7f\x7a\xa3\x06\x74\x54\x1d\x0e\x51\x30\xcf\x51\x22\x58\x72\x99\xa5\x34\x62\x7c\x8b\x77\xbb\xd5\x9a\x85\x7a\x85\xaf\xd4\xf5\xd7\x7f\x1a\x94\xe7\x6b\xb9\x7c\x56\xe5\xae\x7c\x2d\x97\x37\x2c\x6b\xad\x29\xdc\x71\x2a\xc8\x85\x24\xf1\x33\x8d\xe3\x9f\x62\x7d\xf5\x72\x76\xa3\x8c\x0d\xbe\xeb\xa2\x49\xd8\x96\x07\xcd\xea\xe9\xe1\x3d\x1d\x8d\xd0\x00\xfe\x2d\xb1\xe5\x0d\x32\x7c\xb9\xd3\x95\xa9\x8c\x65\x75\xea\x19\x3f\xbe\x78\x13\x81\xa0\x11\x1c\xec\x95\x39\xae\xbc\xb5\x87\x1b\x0c\xba\x41\x7f\xd0\x74\x5f\x32\x53\xc0\xcd\x1f\x2e\x29\x3d\x2b\x9f\x16\xeb\x3c\x80\xba\x5d\xd6\x6e\x67\x0f\xd6\x54\x7c\x82\xfc\xf3\x4e\xaa\xc3\x47\x74\xbb\xdb\x95\xdc\xf7\x26\xb9\x20\xb2\x57\xcf\x37\x52\xb1\xdc\x72\xe7\x49\x93\x81\x53\x67\xe5\xea\xeb\x38\x2a\xa3\x6c\x60\x34\x8f\x33\xf7\x6e\xaf\x32\x9d\x41\xb2\xa5\x86\xa9\x0e\x25\xac\x82\x35\x2c\x68\x69\x73\xe8\xba\xca\xd5\x84\xf2\x88\xdd\x2e\x6b\xdc\x11\xfe\xa6\xcd\xd1\xe0\x39\xf8\x59\xf4\x5b\x9f\xb9\xf5\xf4\xf9\xdf\xea\x9f\xe0\x7d\x94\x8b\x01\x2d\x30\x07\xb7\x01\xaf\xe0\x7c\x59\x8a\x27\xee\x79\x82\x3d\xa6\x32\x61\x69\x1e\x3f\x31\xed\x0e\xaf\xdb\x18\x6c\xf7\x8b\xc0\x52\xfb\xee\x53\x4b\xef\x15\xda\xbc\xf8\x7d\xdd\xa9\xb2\x5f\x72\xaa\xec\x97\x9d\x2a\xfb\xa1\x53\xe5\x76\xbf\xea\x3e\xd9\x2f\xbb\x4f\xf6\x2b\xee\x93\xfd\x75\xee\x93\xee\xeb\x92\xa3\xe4\x7b\xed\x57\xf1\xa7\xc4\x7f\x34\x9b\x70\x75\xc0\x50\x72\xef\x3c\x29\xca\x37\x37\xeb\xf4\xa0\x35\x25\xd6\xed\xc1\x45\x2b\xf2\xb2\xf7\xc5\x7b\x69\x80\xa3\xb9\x3a\x6b\xbc\xf3\x18\x4e\x48\x76\x90\x85\xda\x14\x9b\xb1\x4e\x7b\x72\xf8\xe7\x24\x69\x6e\x01\x9c\x2e\x58\xe8\xf8\xa1\x5d\x17\x29\x2e\xf7\x77\x20\xb1\x51\xea\x04\x5e\x70\x1c\x87\x2a\x93\xc1\xf7\xb2\xa4\xe5\x51\xd7\xdb\x9f\xdb\x0d\x0b\xcf\x4a\xdf\x19\x3a\x89\x7c\x5e\xda\xce\x06\x55\x62\xc9\x2e\x50\x52\x90\x95\xdc\x35\x50\xab\xa6\xcc\xab\x20\x9b\xf5\x5b\x55\x2d\xe4\x46\x17\xd7\x8a\x9f\x48\xf6\x69\xd7\x63\xe6\xae\xc7\xcc\xb8\xc1\xc2\x05\x97\xb9\x0b\x6e\xd2\x74\xc1\x65\x2d\xd7\x41\xf6\x69\x17\x5c\xf6\x8c\x0b\x6e\xee\x2f\xb8\x4c\x67\xf4\xc9\x70\xf2\x2c\xb5\x63\xcb\xfd\x33\x7f\xce\xfd\xb3\xd9\x77\x94\xb5\x5c\x40\x73\xb0\xf5\xfc\x29\x11\x7e\xb5\xc9\xa1\xbb\xbf\xc6\xa1\x3b\xcc\x59\xf3\x77\xf1\x9e\x5f\x37\x61\x0f\xf8\x5d\x43\x0d\x7e\x12\x84\x85\xfb\x28\x4e\xe7\xd5\x65\x5c\x57\x78\xef\xf4\xf0\xe8\xfa\xe2\xf2\xd7\xf1\xe9\xc5\xa5\x09\x22\xed\xd4\x78\x82\xe8\xcd\x96\x69\xaa\x28\xca\x20\x59\xef\xf5\x51\x99\x03\xbc\x92\x55\xb6\x21\x2c\xdb\xd0\xd6\xf0\x06\xeb\x4e\x83\x48\xea\x35\xb2\x4e\x2a\x06\x11\x13\xac\x3c\x3f\x6e\x34\x37\xe9\xbd\x60\xd8\x6e\xe8\x25\x2e\xd7\x39\x71\x4d\xca\x51\xb1\xa5\x80\x2b\x93\xaf\x18\xb4\x70\xd5\x5a\xeb\x60\xc9\xe5\xd8\xec\xe0\x53\x13\xba\xde\x02\xa5\x57\xeb\x2d\x36\xae\x51\xf8\xab\x8d\x6e\x76\xb0\xa1\x8c\x4b\x10\xf8\x43\x58\x0c\x8a\xd0\x11\xec\x6c\x8a\x82\x88\xfb\x07\x7b\x04\x89\x2c\x93\x15\x90\x49\xeb\x4f\x0e\x14\x30\xcf\x96\xe9\xf4\x92\xce\xd2\x65\x3e\xb7\xc9\x5c\xbd\x37\x98\x7b\x22\x6a\x99\x3a\x35\x92\xdc\x12\x4c\x0e\xee\xc4\x4a\xc9\x32\xe0\x9a\x13\x9d\x80\x54\x97\x7d\x93\x30\x8e\x62\xf7\x1a\xd8\xf9\xad\x48\xee\xb1\xba\xff\x66\x38\x89\x25\x7e\x32\x7b\x69\xc0\x00\x82\xef\x8a\xdd\xa4\x8c\xdf\x9a\x5c\x66\x38\x45\x9d\x69\xf6\x44\xc9\xc4\x80\x2e\x16\x1f\xe6\xaa\x99\x6d\xaa\x21\x1f\x8d\xf6\x2f\xc0\x66\xd4\x68\x97\x4d\x7d\x37\x8b\x32\xed\xd9\x84\xb4\xf1\x53\x92\x7e\x48\x1e\x95\x64\x6d\x24\x70\x2d\xad\x14\xeb\xb1\xa2\xd7\xc1\x82\xc2\xc4\x13\x02\x64\xb1\xde\x85\xd0\x60\x5b\x7a\xff\x41\x97\x6f\x22\x58\x87\xbe\x5f\xd9\x70\xfd\xa0\x15\xef\x09\xd9\xb0\xc2\x66\xf4\xe6\x91\xf3\xf2\xd9\x96\xe5\x78\xac\x8e\xe8\x76\xa5\x0d\x43\x33\x91\x5d\x5e\x7a\xb4\x71\x5c\xf0\x91\x8b\xc3\xb2\xf1\xb5\x3f\x49\x88\x1b\xb3\x94\xfb\x4b\x60\x36\xff\xc9\x1b\x33\x29\xea\xfc\xa4\x33\xbc\x4c\x68\x2c\xf1\x5e\x20\x49\xfe\xe0\x7c\x4e\x7f\x33\x60\x2e\x30\x3d\x82\xf4\x3b\x79\xef\x26\x99\xdc\xdd\x2c\x05\xa7\xa2\x97\xf1\x38\x82\x2e\xb6\xe5\x17\xe8\xef\xd3\x6f\x7f\x72\x46\x75\xba\xb3\x83\x7e\x92\x43\x3a\xea\x8d\x6d\xb8\x9f\x5f\xe0\x18\x94\x12\xb5\xea\x29\x9f\x3e\xbf\x72\x36\x8b\xb7\x4d\x03\x2c\x7f\xaf\x2a\x8e\x11\xd8\x8f\xa8\xf8\xce\x1c\x7c\x97\x27\xe6\xd0\x7b\x7d\x71\xf1\x76\xfc\xfa\xec\xcd\xd9\xb5\x09\x7a\x55\xc3\xc3\xba\xb4\x9b\x68\x1c\xc4\x97\x31\x3e\x53\xf2\x33\x35\x51\x65\x8c\xdf\x6e\x31\x6e\x7a\xaf\x73\x71\x4b\x3a\x91\x74\xea\x82\xa7\xb7\xa8\xd8\xd9\x29\x8f\x08\x50\x11\x80\x3c\x7e\x90\xa8\x80\x16\xcb\xb1\x70\x06\xd9\xe7\x37\x69\x29\xf2\x37\x00\x4f\xc8\xd2\x07\xda\x31\x6b\xd1\x56\x23\x45\x45\x01\x93\xa8\x4f\x21\xb1\xd9\x59\xb8\xe2\x45\xb2\xbd\x17\x38\x96\xb0\x6e\x37\x66\x64\xd6\x9b\xa4\x8c\x72\xf9\x72\xc9\xd2\x29\x15\x36\x27\x8b\xa2\x7a\xc3\xc3\xc6\x8a\xe2\x5d\x20\xbb\x8c\xa9\x0e\x62\xb1\x5f\x2a\x26\x7e\x49\x6f\x59\x2e\xc5\xa3\x95\xbb\xc7\x6a\x7a\x19\xa7\xd3\xd3\x4c\x1c\x5f\xbc\xb1\xc2\xf1\xb8\xce\xe5\xc6\x1a\x79\x65\x38\x32\x3f\xd3\x24\x97\xee\xb2\xbd\xbb\xe7\x32\xc4\x5c\xda\x15\xb9\x84\xef\x7d\x71\x7a\x9f\x3d\xd0\xe9\x65\xb9\x96\x1b\x3d\x18\xc2\x0a\xab\xb9\x6e\x90\x64\x35\x78\xc3\x05\x9c\x10\x60\x97\x09\x8e\x11\x27\x49\x86\xbc\xc6\x2b\x2a\x0e\xdf\xbe\x7d\x7d\x76\x74\x78\x7d\x76\x71\x3e\xbe\x3e\x79\xf3\xf6\xf5\xe1\xf5\xc9\xf8\xe7\xcb\xc3\xb7\x6f\x4f\x2e\xad\xb6\xbc\x6a\x5e\x7c\x94\xf8\xa9\x2c\xf5\x94\xe5\x98\x02\x00\x83\xe9\x87\xf8\x6f\x0c\x18\x63\x4d\x32\x7d\xb3\xb5\xd8\xb9\x03\x4f\xd9\x43\x64\x6e\xd5\xcf\x8b\xc4\x59\x2f\xe3\x3f\x37\x20\x67\x8d\x8d\xd9\x8b\x12\x1b\x8d\x17\xe8\x49\x36\xeb\x40\xcb\x7a\xce\xea\x47\x6c\x0a\xae\x8e\x25\x98\x38\x8d\xaa\x7e\x2b\x3d\x40\x8a\xe2\x1c\x63\xb5\x1f\x40\xa8\xc3\xac\x84\xec\xed\x5f\xa0\xc2\x49\x7f\x63\x4d\x73\xc7\x14\xf8\x8c\xee\x23\x1c\xd8\x93\xa5\x10\x8f\x28\x66\x08\x73\x08\xb1\xd0\xdf\x5d\x67\x8d\x0e\x38\xaa\xfa\x5f\xe5\xb3\x2b\x55\x3b\x15\x2a\xad\x7d\xd8\x62\xe7\x31\x29\xff\xa5\x21\xc8\xad\x1f\xa5\x66\x3f\xb3\x9e\x4b\x9e\x39\xbe\x3c\x39\x55\x6c\xf6\xe8\x04\xe1\x0c\x3e\xfa\x4a\xc6\xd4\xf3\x8e\x06\xce\x81\x39\x16\x98\x95\x37\xa8\x1d\x81\xe6\xb7\x6a\x13\xc7\x19\x74\xd5\x4a\x09\x35\x44\x97\xe6\x63\x05\x4a\x28\x16\x44\x37\xe5\x75\xd7\x32\x5b\xa7\xce\xba\x86\x72\x44\x20\x82\x7f\xc9\x1b\xab\xd2\x10\x27\x5b\x0d\x05\xeb\xd5\x8f\x74\x87\x14\x67\xaa\x44\xb0\x57\xae\x82\x86\x1f\xea\x74\x93\x26\xd6\x82\x26\x7c\xb9\x50\x53\xa1\xb1\x93\x1a\x19\xaa\xba\xca\x85\xea\xaf\x6a\x48\x03\x5c\x91\x4b\x35\x55\x19\xd9\x76\x85\x21\x23\x7b\xe8\x4a\x12\xf0\x65\x97\x5a\x49\xa3\xce\xd8\xb8\xf4\xdd\xdd\x7d\xe7\x97\x31\x14\xa3\x0e\xd7\x82\x59\x4c\x01\x97\x38\x38\x5b\x9d\xf0\x21\xf0\x1e\x60\x55\xf2\x26\xc1\xac\xd2\x15\xeb\x9d\x39\xae\xcb\x62\x63\x08\xa6\x38\x4c\x53\xe0\xf7\xb1\x0b\x47\x6a\x05\x44\xa1\xc3\x1b\x3a\xfa\xbb\x90\x4e\x78\x19\x44\xaf\x55\x2e\x55\x1b\x02\x92\xf9\xeb\x03\x67\x41\x05\x88\x13\x79\x8c\x2a\x28\x7c\x1a\x08\x22\xd8\x0d\x8d\x1e\x56\xc1\x8a\x74\x5c\xf6\x0c\x88\xcd\x10\xce\x3e\x14\x1b\xe8\x9f\x9f\xa4\x85\xf6\x47\xb8\xba\xd5\xf2\x40\x16\x8d\xab\x2d\xe7\xf5\x8b\x47\x33\x65\xa8\xcd\xee\x52\x6e\x05\x87\xb1\xba\x39\x88\xb2\x74\xeb\xac\xac\x41\x3e\x87\xfe\x3e\xf3\x2e\x99\xcc\xfa\x83\x64\x44\x0e\xd9\xa8\x93\x79\x71\xfc\xc0\xe4\x28\xc8\xd0\x80\x7d\x47\xe8\x6a\x95\x19\x31\x3b\x46\x45\x83\xe4\x10\xaa\xe9\x97\xbd\xa3\x77\x97\x97\x27\x3a\x8c\x32\x10\xac\x03\xa9\x5a\xdf\x6b\x6c\x3f\xbe\xa3\xda\x55\x65\xdf\xf9\x08\x7a\xc7\x11\xc0\x92\x02\x83\xb1\x15\xb2\x13\xd4\x71\x64\x9e\x2b\x19\xdb\xa5\x1b\x2c\xed\x9a\x6e\xf7\x17\xe9\xe1\x23\x5a\x96\xa1\x82\x9f\xb5\xdd\x2c\xfd\xd8\x1d\x53\x97\x8a\xfa\x26\x59\xda\xf6\x9e\x4e\x11\x5e\x5d\xf1\x18\x61\x4a\xb6\xfb\x6e\x0e\xa8\xdb\x6b\xcf\x9c\x3d\xec\x93\x29\x02\x55\x97\x2e\x34\x36\x91\xa7\x7a\x61\xe7\x16\xb5\x4b\x70\x05\x6c\xa1\xf2\x96\x26\x8d\xd7\x80\x90\xee\x9a\x52\x98\xd1\xa1\x0c\x24\xfa\xa2\x4e\x8c\x36\x4d\x51\xbf\x2a\x74\xd2\xe6\xd5\xa9\x1f\x32\x61\xc7\x4a\xd2\xb9\xfd\xf4\x82\x4f\x1c\x42\x56\x14\x26\x1c\x16\xae\x0e\x5d\xb7\xb9\xb6\xb4\xa9\x37\x42\x3e\xd8\x4c\x49\x00\xc2\x1e\x1a\xae\x4a\x4b\xd4\x20\x47\x5b\x8a\x6b\x1a\x8b\x5d\x1d\x73\x95\x32\x19\xd4\xd6\x70\x09\x03\xd9\xaa\x57\x93\x0a\x22\x85\xd6\x79\x89\xbf\x1b\x26\xf2\x39\x10\x3e\xea\xb2\x8e\xb5\xef\x89\x13\x3b\x68\xf9\xb8\xc6\xdb\x7b\x98\xf6\xac\xfc\x51\x4e\xb7\x73\xeb\x9c\x51\xca\x53\x54\x81\x21\x39\x04\x00\x12\x75\x3b\xfc\x4f\xad\x21\xd0\x65\xfe\x73\x8b\xe5\x00\xa3\x94\xa4\x69\xf6\x81\x4e\xb7\x18\xdf\xe2\x19\xdf\x65\x5e\xbd\xbb\x15\x98\x92\xf2\xad\x38\x5f\x4e\xe6\x5b\x49\xbe\x75\x9a\xe4\xf2\x65\x96\x49\xd4\x8b\xb4\x94\x29\xc1\xf0\x78\xc6\xa9\x90\x6e\xa2\x85\x9e\x68\xfe\x3f\x67\xa2\xfb\x9f\x34\xd1\x21\x16\x5f\x53\xac\x65\x69\x62\xdc\x8c\xba\xe9\xe1\x7a\x7a\x18\xf8\xa7\xc3\x19\x22\x6a\xe2\x6d\x49\x57\x4b\x4b\x46\x9a\x9a\x75\xc6\xa4\x7d\x17\x45\x81\x93\xd6\x29\x7f\x9e\xd1\x45\xa3\x94\x49\x2c\x3e\x25\xfa\x62\xfd\x75\x4b\xf7\xee\xcb\x61\x0f\x4c\x54\x73\x2e\x3e\x0d\x73\x65\x83\x79\x70\x03\xba\x4a\x55\x45\xbf\xb7\x59\x45\xbf\x14\xcd\x5e\xf5\x4b\xa1\x2f\xb6\xe9\x97\xee\x8a\xcf\x34\x85\x6d\xb8\xa0\xe6\xa2\x80\x10\x81\x36\xbf\x67\x83\x85\xd8\xe4\x2d\xdb\xe0\xb9\xbc\x14\xc6\xd1\xf5\xc9\x7a\x38\x0f\x74\x3c\xb5\xba\xe1\x3d\x2e\xac\xb5\xc6\xf8\x2e\xaa\x27\x11\x2a\xd6\x99\xcb\x82\xec\xb2\x55\x47\xd8\x44\x09\x6b\xda\x91\x3f\x2f\xfb\x44\xea\x7a\xf1\x92\x64\xd6\x7a\xf4\x34\xd1\x0b\x1b\xf8\xb0\xaa\xde\xe4\x2e\xfb\x21\xc2\x29\x79\xa2\xfc\xc1\x42\x2c\xe6\xde\x7c\xb4\x2c\xbe\xc0\x6c\x95\xb6\x99\xad\x22\xc6\x17\x4b\x19\xad\xf1\x9b\x5c\x7a\xb3\x55\xa2\xfa\xd7\x86\xec\x61\x37\x9c\xe2\x77\x82\x50\x07\x44\x19\xea\x00\x7e\x33\xd9\xea\xfe\x7b\x60\x3f\x36\xf8\x6b\x6c\xf4\xd3\x68\x44\xdb\x80\x30\xe8\x9c\x02\x8a\xa4\xc3\xde\xd4\x4b\x8f\x35\xe2\xac\x73\x95\xdf\xe4\x30\xd2\xee\xc0\xf3\x25\x38\x19\xcf\x1d\xdb\xdf\xe0\x0b\xb2\xd9\x07\xc4\xce\x58\xd9\x19\xc4\x3d\x06\xb6\x9b\x08\x84\x27\xa2\x84\x44\x3d\x13\x41\xdc\xd2\x5b\xcb\x6f\x2e\x66\x5e\xcf\x3f\x15\x65\xb0\x6e\x70\xc3\x03\x38\x05\x1c\xe4\x55\x98\x0b\xe0\x81\xee\x42\x4f\xf7\xb5\xce\x59\xee\x5b\x8e\x33\x11\x06\x04\xa0\x13\x06\xdd\x88\x30\x5e\x66\x06\x28\xc4\x21\x30\x19\xb8\x49\x0a\x92\xf5\x4c\x27\xe9\x47\x49\xf9\x34\x7e\x62\xf9\xd1\x9c\x4e\xee\x6e\xb2\x8f\xb5\xdc\xc4\x9a\x60\xea\x49\xd0\xa3\x89\x29\xe1\xb3\x42\x3f\x2e\x68\x81\x50\x81\x3a\x53\x11\x3f\xcd\x12\xb5\x5c\x8f\x0d\xe1\xc0\xb0\xe1\x52\x8d\x5b\x0d\x82\x95\x62\x8c\xdb\x7d\x5c\xe5\x03\x05\x5e\x08\x84\x17\xe2\x19\x99\x68\x5d\xa1\xaf\x35\xd7\xd0\xe2\xc3\xbd\x20\xaf\x1a\x13\x56\x8e\x7b\x69\x36\x31\x67\x89\xd5\xca\x23\x84\x1f\x5a\xb5\xf1\x1e\x7d\x3a\x4b\x1f\x94\xe0\xb1\x01\xb6\xbe\x35\xb0\x26\x50\xcf\xd8\xca\xec\x1f\x8a\xee\xd4\x41\x62\x84\x1b\xc8\x29\x05\x92\x8d\x77\x7c\xaf\xd4\x1c\x73\x6b\x68\x6d\x15\x33\x3e\xb1\x25\x36\x8b\x9b\x5a\xe9\x95\x04\x8b\x86\x3c\x71\xc2\x77\xc2\x66\x6d\xb2\x8d\x3a\xb1\xc6\x48\x33\x0d\x29\xc2\x98\x71\xf9\x29\x4a\x72\x0e\xab\xc8\x39\xd2\xc4\x88\x7d\x4f\xd3\x45\x0d\xad\xbc\x64\x43\xb4\xc3\x0d\xbf\x37\xdc\xc4\x56\x52\xc7\xbf\xdc\x54\x8d\x2d\x51\xa9\xc8\x9d\xb9\x2d\x2a\xd9\xb5\x75\xba\xc2\xdf\xc3\xf8\x2b\x55\xbf\x4d\x84\x64\x49\xfa\xfc\xea\x4c\x01\x53\x0d\x18\x19\x1f\x3f\x51\x2a\xdc\xfb\x22\xa9\x70\x2d\xe6\x5e\xa3\x54\xe8\xf9\xe2\xad\x68\x0d\x3c\xeb\x25\xf9\x23\x9f\xbc\x66\x33\x7a\xf4\x38\x49\xa1\x35\x75\x7b\xcf\x3d\xbb\xbc\x59\x53\xd8\x77\xc1\x7f\x3f\x5e\xf3\xfd\xd4\x9d\x35\xb0\xc9\x3f\x88\x76\x8b\xce\xdf\x1a\xf0\xd9\x28\xf0\x19\x9d\x2d\x66\x44\x02\x62\xf7\xad\xc6\xff\x0b\xe5\xa3\x9c\x64\x5a\xd6\xc3\x4b\xf2\x54\xe0\x49\xd3\x89\x69\x51\xd1\x7b\x32\xb9\x05\xfc\xbe\x52\x9e\xa8\xb7\x97\x17\xbf\xfc\x6a\xa3\xba\x9e\x4a\x50\xa0\x36\xd4\x0f\xd0\x87\x62\x89\xec\x69\x94\xdb\xc3\xc8\x5d\x8f\x82\xac\xaa\xc6\xc9\xd6\xa7\xd2\x66\xb3\x58\x12\x42\xd2\xde\xd1\xbb\xab\xeb\x8b\x37\x4a\x48\x1a\x9f\x5e\x5c\x5a\xc6\x32\x29\xf0\x3c\xc9\x07\x8d\x74\x6f\x1b\x2e\x70\xf6\x81\xff\x48\x1f\xf3\x06\x7e\xa2\x9d\x0c\xf3\x02\x97\x63\x87\x8f\x69\x3e\x11\x6c\x21\x33\x51\x2f\xf3\x44\xf9\xf2\x5e\x83\xf7\x02\xa1\x66\x7c\xc6\x6e\x97\xf6\x77\x51\x14\x9d\x3e\x5e\xc2\x49\x0f\xf9\xfb\xe2\x25\x9e\xe9\xb8\x3c\x1b\xd2\x3c\x55\xdb\x9f\xda\xa6\xe2\x25\xae\x0e\x0e\x3f\x95\x2b\xdd\xc3\x61\x93\x7b\x26\x0b\xe6\xa4\x40\xd8\x74\xbf\x39\x3c\xa0\xad\x39\x8a\xd7\x0f\xa1\x8a\xe8\xaa\x8f\x07\x4b\x07\x8d\xcb\x26\x8d\x6f\xb4\x5b\xb6\x02\xec\xd6\x5c\xbb\x3e\x4d\x07\x4b\x1c\x5c\x6c\xb2\x30\xe4\xcf\x16\x30\xde\x25\x96\x96\x1d\xbb\x8b\xab\x77\x15\x1d\x01\x84\x39\xc2\x73\xed\x17\x27\x62\x86\xa7\x38\xc3\x14\x2f\xbf\xc4\x29\x6e\xfe\xd9\x41\x59\xd3\x16\x9f\xb8\x79\x8b\xf7\xfc\x67\x4b\xd0\x1d\x1f\x75\xed\x36\x74\x3d\x4e\x4b\x75\xb4\x23\xed\xcc\x9b\xb8\x45\xc5\xa4\x81\x1c\xc3\x85\x60\x4d\x0b\x81\x6f\x44\x2c\x50\xb7\x2b\x4c\xbb\x7e\x25\xb8\x77\xf4\x5e\x13\xa8\xe0\x7a\x56\x0e\x86\xb8\x55\x02\x66\xb7\x1b\xc0\xd5\xfa\x8a\xc5\x33\xfc\xc7\x9b\xab\xdd\x6f\x12\xd9\x6e\xb5\x69\x0a\x18\x7d\x81\x7c\xb3\xef\x2a\xe3\x11\xd6\x7d\xfc\x28\xe3\x92\x7e\x6c\x56\xbd\xb4\x0c\x47\x06\xe5\x7c\x45\x1b\xef\x93\xcd\xcb\x66\xa9\xd6\x01\xaf\x8a\xb0\x76\x8e\x7c\xf4\x49\xcb\xe5\xe6\xc1\x27\x69\x62\xb3\x58\x9d\x58\xae\x25\x88\x53\x25\xb4\xfd\xde\xe6\xd4\x12\x8a\x66\x3e\xf7\x12\x24\x14\xbd\x04\xd7\x1f\x17\x7d\xbf\x29\x7a\xbc\x3a\xcd\x9e\xbb\x94\xbd\x29\x04\x7e\x7a\x06\x26\xef\x6a\x25\x5b\x0f\xf4\xe7\x04\xf0\xf8\xd6\x97\x3d\x96\x1f\x65\x3c\x97\x8a\x7e\x1a\xae\xed\xc0\xf0\x36\x47\x26\x7d\xe9\x8d\x76\x53\x28\xc7\x97\xd7\xff\x3c\xac\x88\x06\xe4\xd5\xe7\x3a\x6f\x83\xca\x11\xe1\x93\x67\xb8\x2f\x19\x97\x3c\x4d\x09\xcf\x02\x3a\xa4\xfc\xc1\x7a\x1b\x95\xd9\x1c\x61\x4d\xce\xb2\xeb\xdd\x04\xdd\xe6\x94\x15\x8f\xf2\xce\x58\x73\x14\x57\x41\x70\x3a\x59\xe9\xf9\xaa\xaa\x7f\xc6\xfc\xd9\x51\x0c\x6e\xc8\x1b\xe2\x18\x3e\x08\x27\x04\x06\xeb\x10\xcc\x77\x3d\x6e\xe1\x79\xb1\x09\x41\x48\x42\xe9\x5a\x85\x6d\xcf\x40\x31\x7e\xf1\x25\x17\x84\xbf\x09\xaa\x7b\xef\x73\xa1\xba\x3f\xae\x91\xd5\xff\x6e\x35\xf2\xff\x35\x10\xc7\x17\xa2\x55\x5d\x5c\x46\xe2\x80\x4b\x84\x4b\x60\xb3\x16\xc4\x5b\x6b\x98\x9f\x4a\x68\xe1\x85\x07\x1e\x69\x91\xbe\xb2\x36\xe9\x8b\xaf\x11\xbc\xb4\x5b\xae\xa5\x5d\x56\x20\x9c\x95\x54\x58\x4d\x4a\x5e\x9f\xef\xb3\x77\xfe\xee\xf5\x6b\xef\xd9\xf4\xf7\x29\x74\xff\xfb\x02\xd4\x1c\x9c\xed\x17\x6a\x95\x9f\x1d\x05\xf8\x89\x58\xce\xcf\x84\x58\xfe\x62\xcd\xf1\xb3\xfb\x2f\xcc\x69\x75\xb8\xe6\xb4\x6a\x60\xeb\x3e\x4d\x5e\x99\x61\x7f\x2c\xd9\x00\x4b\xf9\x34\xa8\xcd\xa7\x01\xac\xb9\x96\x45\x23\x50\xdd\x40\x9e\x0a\x38\x63\xee\xda\x74\x50\x15\x0c\x95\x7e\x98\xf1\xf1\xad\x08\xf9\x8b\xff\x10\xd4\x7a\xf0\x31\x28\xf5\x0c\xe6\x0b\x23\x1e\x6c\xcf\x20\x32\x82\xf3\xf0\x01\xff\x6e\xef\xa0\x86\x98\xa7\xca\xef\x21\x67\x1b\x00\x62\x1b\x00\x84\xa3\x2a\xf0\xa2\xb9\xc0\x8b\x6a\x01\xe6\x95\x2d\x97\x2d\x9d\xb5\xfc\x03\x52\x8c\x9e\xc1\xad\x10\xba\xee\x4c\x50\x7b\xfd\xc0\xdb\xfd\x3a\x50\xd9\x94\x74\xcf\xb4\x36\x51\x0e\xae\x2e\xda\x75\x1f\x0e\xa2\x5d\x25\x78\xef\xce\x18\x4d\xa7\x91\xaf\xf6\x68\xe3\x4c\x3a\xf8\x7f\x8f\x02\x89\x39\x11\x43\xe1\x81\x1d\x81\x93\x96\xa6\xad\x3c\xcf\xd5\x29\xe3\x68\xc0\xb4\x6b\x08\xb3\x68\x84\x0c\x0d\xa2\xa0\x5b\xbf\x97\x14\x54\xfe\xf9\x1b\x51\x89\x93\xc3\x19\xc0\x10\xd9\x0f\x3c\x10\x91\x18\x7e\x35\x42\x8c\x08\x9c\x11\xf5\xa7\x87\x75\x48\xdc\x17\x1d\x8f\x5e\x44\x92\x83\x98\x11\x09\xa9\x24\xb4\xa3\x48\xae\x2e\x58\xe6\xcf\xa1\x18\xa1\x41\xd8\x06\x80\xcd\x30\x02\xaa\x27\x67\x61\x68\xf4\xfb\x71\xc7\xab\x03\x20\x22\x41\x4a\x53\x84\x75\xbe\x1c\xea\x12\xe5\xf8\x02\x43\x31\xb2\x19\x2c\x34\xc0\x8e\xcd\xe7\x26\x71\x9a\xdc\xd0\x74\x10\xfd\xeb\x36\x65\xf7\xf7\x54\x7c\x3d\x49\xb3\x7c\x29\xe8\xae\xee\x6e\x54\x78\x91\xff\xbe\x37\x4b\x93\xdb\x5b\x3a\x3d\x73\x71\x83\x28\x8e\x9c\x3b\x47\xc6\x7b\xda\x89\xd8\x94\xc4\x49\x83\xa5\x63\x2b\x07\xff\x7d\x23\x34\x98\x90\x90\x21\xc3\xd9\xa8\x37\xc9\xf8\x24\x91\x31\x8f\x25\x42\xa8\xb0\x98\x53\x67\x8d\x07\x42\x93\x21\x44\x27\x1c\x6e\x4c\xf9\x45\x9d\xd9\xa3\x88\x29\x3a\x88\xa2\x81\xc3\xad\x0c\x18\xc1\x71\x59\x91\x59\xbf\xfa\x43\xee\xc8\x33\x61\x32\xc7\x46\x51\xb0\xa3\xce\x85\x13\x95\x83\x54\xc0\x5b\xda\xb6\xf1\x5a\x10\xf5\xde\xb7\x74\xba\x71\xa3\xd4\x52\x65\x97\xfc\xbf\x02\xfc\x47\x3a\xec\x8f\x40\xab\x61\x42\xe6\x10\xce\xea\x74\x92\x04\x74\x92\x21\x9c\x93\xfe\x7e\xfe\x6d\xb6\x9f\xef\xec\xa0\x64\x98\x87\x74\x92\x5b\xef\xd0\x96\x5d\x70\xa0\xfe\x67\x56\x4f\x43\x0d\xc3\xa2\x25\x8a\x55\x81\xab\x87\xb5\x04\xe1\xe1\x6b\xe1\xd6\x94\xe1\xa4\x94\x16\xfc\xcf\xb2\xdd\x4e\x2f\x9d\x5c\xad\x00\x86\x56\x1e\x54\x25\x8f\x41\x0d\x19\x4c\x86\xc8\x89\x06\x5f\xf6\x40\xa3\x6e\x97\xb0\xa1\x1d\xb8\xb7\x9a\xb8\x97\xed\x7e\x2b\xb8\x25\x0d\x9f\xf3\x59\xc9\xb3\xa5\x98\x04\x29\xf7\x2d\xc2\xab\x7f\x22\x30\x07\x77\xd8\x00\xe4\x55\x83\x82\x06\x59\xcf\x2a\xe3\x72\x97\x15\xf8\xee\xda\xe1\x34\xc3\x31\x08\x87\xb9\x12\x55\xb5\xd8\xe4\xe5\xe3\xf5\x78\xce\x98\x8d\x3e\x35\xf7\x9b\x5f\x89\xda\xbd\x5e\x2f\x54\x70\x1c\xd1\x0f\x5b\x46\x14\x58\x9b\x71\x67\x2d\x54\xaa\x9d\x25\x87\x0f\x5d\x9a\x25\xeb\x49\x6b\xe7\xc4\x7a\xd3\x96\x66\xbb\x72\x34\x6c\x71\x9d\x1b\x3c\x96\xe4\x4f\x13\x66\x5d\x59\x30\xcc\x91\x06\x6b\xd6\x32\x93\x9a\x0c\x19\xe0\xf1\x57\x16\xca\x48\x29\x7e\x39\x43\xcd\x2d\xe6\xc3\x1f\x47\x2d\xde\x01\x4d\x4d\x7b\x2f\x90\xd6\x61\x60\xe3\xce\xf5\x83\xbe\x18\xbd\x5b\x47\xa8\xcf\xc4\x06\xbf\x11\x09\x9f\xcc\xd7\xd3\xd4\x3a\x70\x70\xe6\x6b\x18\x21\xbd\xd1\xa7\xad\x90\xba\x9f\xe1\x44\x87\xa5\x0f\x2a\x0a\x53\xff\x35\x6a\x98\x18\x3a\x60\x01\x6e\x2e\x37\x74\xc8\xa0\x92\xe2\x13\x50\x7a\xd5\x28\x7c\x45\x73\x07\xd5\xab\x73\xc9\x86\x40\xbd\x25\x62\x81\xb7\x6e\x3e\x30\xd5\x94\x43\x3d\x49\xe8\xb5\x73\x0b\xf5\xbd\x28\x43\x80\x7a\x0e\xbf\x1f\x4b\x32\xc9\x78\x9e\xa5\x14\xf5\xd2\xec\xd6\xde\x9e\xbd\x41\x47\xf3\xaa\xf7\xa2\x82\x85\xfb\xe6\xdd\x75\x84\xf0\x1f\xd5\xc7\x57\x17\xef\x2e\x8f\x4e\xa2\xa0\xed\x9f\x85\x0e\xad\x08\x64\xc3\x87\x00\x3f\x78\x1a\x7a\xea\x5c\xf4\x7e\x5a\x52\xf1\xa8\x21\x1b\xe3\x5a\xb6\x6d\xd7\x25\xdd\xa7\x57\x82\x0c\xa3\x24\x95\x11\x8e\x20\x03\x42\x84\xa3\x7b\x2a\x93\x08\x47\x13\x29\xd2\x68\x84\x7f\x15\xe4\xeb\xff\x33\x49\xd9\xe4\x6e\x75\x9f\x2d\x73\xba\x92\xd9\x72\x32\xff\xba\x33\xef\x1d\x42\xdf\x4c\x66\x33\x17\x9b\x42\xa7\xfa\x79\x0e\x3d\xfc\xb1\x49\x65\x4b\x8d\xd8\x74\xe6\xfa\xbd\xb1\xb2\xa1\x06\xfd\x2d\xf0\x57\x1b\x2a\x34\x21\x2c\xcf\xa9\xb0\xc0\x3f\x6d\x54\xcf\xe1\x0c\x27\x38\xc7\x4b\x9b\x92\xc4\x38\x74\x9a\x1b\x90\x6d\xd5\x29\xe9\xe0\x37\xc4\x98\x89\xf0\x09\x78\xc5\x55\x35\x76\x56\x4b\xe5\xd7\x94\x64\x86\x71\xdd\x2f\x52\x36\x61\xf2\x5a\xc3\x26\x1a\x14\x8e\x69\x76\x4f\x8c\xbf\x35\x7d\xa0\x1c\x10\x67\xf5\x06\xb8\xa5\xf2\xc4\x3e\xb1\x2c\x49\xf1\x80\xe5\x06\x27\x0c\x57\xa8\xcd\x4f\xdb\xf5\x55\x7b\xc5\x65\x3c\x72\xf2\xfb\x6a\x15\x01\x51\x44\xc6\xc1\xe2\xd0\x0f\xb4\x51\xbc\xf1\xb2\x4a\x65\x5e\x2c\x82\x9d\x71\x7a\x6f\x7e\x0b\x2e\xf0\x54\x11\x41\xe5\xfd\x50\x8e\xaa\xc7\x06\x35\x3d\x32\xb3\xd7\xcc\x33\xca\x53\x6c\x0f\x2d\x37\x5e\x3f\x4d\x00\xa2\xa8\xc5\xeb\x08\x1d\x48\xe3\x1e\x68\x7e\xdb\xa6\x07\x01\xd7\x90\xc6\x57\xa3\x89\x4e\xa5\xce\x54\x5d\xa1\x15\x7b\x18\xba\xd6\xb1\xcd\x52\x1d\xdd\x2c\x6f\x6e\x52\x9a\x03\xc8\xbf\x79\xb4\x10\xb0\xfa\xc7\x74\x96\x2c\x53\x19\x21\x25\x07\xea\x37\xc6\x25\xfb\x47\xfa\x98\x83\xef\xa2\xa5\x0d\x3d\x46\x08\xa3\x87\x04\x0d\xac\x7a\x07\xab\x19\xaf\x8d\xec\x06\x7f\xff\x2a\x7a\x92\xe6\x32\xd6\x1e\x71\x16\x43\x15\xfc\x97\x59\x7e\xa5\xe6\x91\x1e\x29\x42\xd0\x21\x67\x24\x8a\x0a\x9d\x9e\xc6\xca\x71\x09\x7f\x8c\xd0\x77\xa4\x8f\xec\x85\xaf\x92\x09\xf4\x95\x08\x53\x81\xb2\x59\x4c\x87\xaf\xc4\x50\x8c\x76\xa2\x1f\xe9\x63\x34\x32\x40\x7d\xbe\x42\x78\x69\xbb\xb1\xbd\xe7\xee\x91\x45\x4c\x71\xe2\x98\xdb\x6a\xa5\x93\x51\xb8\xdc\x74\x3a\x4d\x6b\x38\x75\x6a\x42\x56\x2b\xda\xcb\x65\xb6\x78\x2b\xb2\x45\x72\x9b\x68\x3a\x51\x32\x85\xbe\xd1\xa0\x38\xae\x93\x4f\x99\xda\x41\x5e\x7f\x82\x6b\x17\xc5\xe6\x1a\xb6\x34\x4a\xbc\x65\x9a\x16\x9d\x86\x9b\x0b\xc8\xdc\x4d\xcf\x0f\x62\xae\x35\x2c\x02\x2f\x7b\x39\xe5\xd3\x83\xcf\xb8\xa1\xf1\xd2\x0d\x4d\xd7\x63\x4e\xa4\x25\x1e\x7a\xf9\x9d\xc2\x85\x6c\xf0\xe5\x2d\xa8\x3a\x6d\xfd\xe0\x27\xf6\x17\x54\x2a\xca\x35\xfe\x05\x15\x86\x57\x1c\xa8\xb3\x40\x08\xa7\xa8\x05\x47\xe1\x2b\x61\x23\x65\x40\x07\xf5\x4b\xdb\x41\xb1\x3e\x13\xea\x26\x97\x64\x75\xb2\xe0\xb4\xe4\x9c\x32\x21\xa9\x71\x4e\x99\x91\x34\xbc\x45\x4e\x49\xaa\x98\x7a\x87\xcd\xe2\x99\x8d\xe1\xda\x53\xfb\x25\x23\x33\xa3\xd1\x8a\x97\xfa\xcf\x3d\x84\x86\x5f\x8d\x50\x4e\x96\x5a\xa9\xb1\x0c\xc1\x1e\x3b\x39\x59\x3a\x6e\x65\xb7\xe2\x9c\x0c\x47\x78\x41\x5e\xec\x2f\xbe\xb5\x95\xef\x2f\x76\x76\xd0\x5c\x07\xa4\x41\xad\x0b\x13\x92\x7f\xaf\xa5\x95\xe5\x92\x4d\x95\xb8\xf9\x00\xac\xfd\x27\x75\x81\xb8\xc7\x39\x9e\xe3\x09\x9e\xe1\x0c\xb3\x00\x90\xf6\xa1\xc0\x0e\x97\xb2\xd9\x0e\x9a\xdd\x83\x48\x65\x8e\x57\x0d\xa7\x67\x4f\xf4\x1f\x75\x84\x68\x39\x7a\x59\xe0\x48\x49\xbd\xbb\xe5\x25\x8f\xea\x61\xce\x4d\x1f\xee\x46\x3b\x1c\x6b\xd7\xc0\x35\x30\x7f\x65\xa5\xd9\x1e\xea\xc8\xe1\x57\x23\x00\x45\x0a\x8e\x79\x2f\x4e\x61\x1a\x1c\xcb\xb4\x72\x26\xbb\x23\xa9\x05\xb3\x06\xcc\xaa\x72\xb3\xce\x9c\x56\xf3\x5e\xfd\x50\xbe\x74\x57\xd2\xb3\x3d\x15\x08\x47\xdf\xf4\xf6\xbe\x89\xcc\x55\x8a\x12\xfd\x13\xe1\x27\x93\x13\xf8\x70\x29\xb3\x6b\x91\x4c\xee\x18\xbf\x1d\xbc\xcc\xb2\x94\x26\x3c\x96\xbd\x86\xb7\x46\x77\xf3\xdb\xb3\x4c\x7e\xd6\x19\x70\xad\xc5\xcf\xd8\xe7\x4a\xdf\x0e\x34\x72\xf9\x80\x86\x56\xb8\xb2\x7e\x99\x1f\x70\x3e\xc8\x78\x81\x29\x5f\x2f\xbe\x35\x0b\x6d\xae\x17\x56\x6d\x6d\x3d\x1d\x45\x60\x69\xe5\x5e\x8a\x6a\xbf\x6a\x7d\xb9\xb1\xd5\xb6\xed\x84\x02\x25\x7b\xb8\x4a\x9c\x47\x65\xe9\x26\xa1\x39\x92\x6c\x1b\xfb\x67\x70\x24\x6f\xf5\x72\xfd\x63\x44\x96\xd7\xb0\xe2\x43\x97\x04\x1f\x9b\x4a\x5d\x6f\x19\x76\xa7\x2e\xaa\xa5\x7f\xe1\x25\x57\x05\x08\xa5\x0e\x1f\x90\x1f\x44\x6c\x48\x54\xa3\x96\x50\x40\xaa\xc0\x09\xce\xda\x36\xd1\x43\x15\x8b\x54\x71\xc9\xe0\xbe\xe7\x2f\xc1\x46\x3d\x30\x42\x9b\xf8\x91\xe5\x43\x25\x7c\xcf\x60\x6e\xa8\x5f\xb8\xcc\x34\x68\x73\xf4\xf0\x8a\xaf\x64\xc3\x3e\x02\xcd\xc2\x92\x4b\xf5\xbb\x2c\x61\x38\x5d\x0b\x2b\x67\xab\x87\x4b\x71\x40\x02\x08\x85\xda\x6a\xa8\xef\x4b\x6a\xc3\xdb\x7b\x68\xbf\x74\x37\xce\x70\x82\x8a\x0d\xfc\xd1\xcd\x77\xc9\xbd\xc7\x4d\x0c\xab\x4c\x8c\xf8\x0b\x26\xc6\x7a\x67\xb9\x91\xf0\xe0\x3e\x5b\x9a\x95\x6c\xd3\xac\x6c\xa8\xaa\x3e\x25\x4c\x51\xe0\xa7\x30\x69\x2c\xfe\x9a\x2d\x5a\xcb\x9c\xde\x6a\xaf\xad\x1a\x61\x1b\x88\x7c\x5d\x8e\xf4\x96\x81\x55\xda\x87\xa1\x71\x0d\xa0\x21\x39\xce\xf4\x5f\x82\xe3\x84\x83\x42\x1c\xe7\xa5\x61\x4b\xf1\xe8\x42\xeb\xa7\xd9\x04\xc4\xb6\x0a\x22\x00\xa0\xaf\x80\xa1\xc3\x4f\x42\x32\x9d\xc2\xf1\xf9\x5a\xdd\xda\x39\x15\xb1\xb9\x6d\x36\x59\x1f\xc4\xce\x4e\x81\xf0\x53\x66\x9c\x1c\x10\x6e\x50\x73\x43\x65\x07\xfa\x1a\x0a\x7f\xdb\x0a\xd1\x20\xa6\xb5\x8e\xe9\x0f\xe0\x9f\x08\xa1\x1e\xe3\x4c\x96\x0a\xe1\xed\x3e\xde\xee\x23\x48\x1c\x9f\x2f\x12\x39\x99\xeb\xd7\xb4\xf1\x11\xa0\x16\x14\x13\xf5\x2c\xe6\x3e\xe5\x5b\xa1\x26\x72\xb9\xe6\x08\x33\xc7\x97\xc6\x52\x33\x4e\x82\x0e\xb0\xab\xa2\x88\x50\x67\x96\xf4\x67\x96\x76\xd4\x5a\x43\x64\x9a\x02\x4e\x45\x76\x5f\xbd\xb2\x97\x70\x10\xcc\x1e\xb7\x31\x77\xde\x42\x21\x7a\x6a\xba\xc1\x70\xba\x48\xf2\x9c\x3d\x94\x9c\xac\x3b\x7c\xdb\x84\xbc\xa8\xaf\x94\x28\x62\xff\xb6\x07\x6b\x65\x50\x08\x33\x5b\xc2\x54\x67\x0b\x99\x9f\xce\xa5\xa7\x5a\x2e\xb3\xe5\x4c\xd3\xb6\x9c\xf9\x69\x55\x2a\xb5\x72\x7c\xb5\x62\xab\x55\x76\x60\x0e\xe6\x6c\x01\x5a\x21\xa2\xa9\x88\x63\xd3\xec\x80\x61\x53\xd1\x20\x2b\x06\xa5\x2f\x0d\x66\xaa\x31\x18\xb6\x9a\x58\x3b\x89\xed\xa0\x93\x0e\x6d\x17\xbd\xb8\x98\x34\x77\xd2\xe0\x60\x56\x2b\x0f\x8c\xa8\xb9\xad\x7c\x99\x53\xf1\x56\x64\x0f\x6c\x4a\xa7\xd6\xfd\xdf\xb6\xd3\xf4\xce\x6a\x92\x1a\x9b\x5c\x12\xb0\x66\xe7\xbc\xdb\xe5\xab\xd5\xf6\x9e\x03\x8e\x0b\xbf\x56\x57\x8f\x25\x82\xb8\x54\xbb\x00\xa6\x6a\x47\x4c\x4e\x2e\xdd\x86\xaa\xba\xdd\x19\x37\x2e\x45\x38\xc5\x14\x61\x5d\x26\x4e\xc0\xc5\xb6\xa3\x33\x1d\x95\x6a\xca\x5b\x6e\x67\xa6\x1e\x77\x4e\x97\xa7\x13\x97\x2a\xc1\xe1\xaa\x59\xe9\x29\xe5\xa4\x8f\x27\x9c\xf4\xbd\x24\x3d\x0b\xc4\xd9\x09\xdf\xd9\xc1\x39\x3f\xa0\x06\xe0\xa6\xcc\x8a\xf4\x47\x03\x9f\xc7\xa9\xdb\xe5\x96\xde\xd6\x14\xd9\xee\xa3\x41\xeb\xdb\xc0\xea\x38\x0d\x3a\x92\xba\x8e\xd4\x18\xe2\x86\x5e\x34\x7e\xaf\xbb\xd0\xf4\x4a\x2b\x83\xe7\xad\xdc\xc8\xf0\xa2\xab\x77\x6f\xdf\x5e\x5c\x5e\x5f\x8d\x4f\xde\x9f\x9c\x5f\x8f\x2f\xde\x5e\x9f\x5d\x9c\x5f\x91\xdc\xec\xea\x12\xcc\xab\x89\x01\x13\x4d\x0c\xa8\xd9\x76\x20\x02\x40\x90\x72\x7a\xe3\x6a\x40\x15\x0f\x85\xd1\x50\xf9\xbd\xd4\xc0\x66\x05\x16\x6b\xee\x5b\x26\x97\x33\x3d\x28\x1f\x98\x03\x73\x0f\x13\x8d\xb2\xa1\x81\xb4\x83\x5b\x54\x85\x7d\xc6\x08\xab\x45\x73\xe4\x18\xdc\x04\x31\xf5\x84\x48\x1d\x15\x62\x5a\xd9\x78\x7b\xd0\xe3\x06\x61\xcb\x63\xe9\xb5\x88\xa7\xbe\x25\x6b\xe3\x84\xb6\x94\xf4\x65\x5a\xeb\x34\x74\xb7\xdc\x7e\xb7\x1b\xab\x1d\x65\x54\x13\x7f\xc1\x58\xcc\xf4\x6f\x14\x93\xd6\x38\x08\x4d\xb2\xa5\x5a\xff\xbc\xc5\x47\xe8\x29\x99\x4e\xf3\x41\xca\xb1\xde\x4f\xf9\x60\xc2\x0b\xe7\x32\xe4\x37\xf5\xa2\xa4\x73\x09\x96\x7f\x5b\x27\xa2\xb4\x73\x7b\x10\x33\xeb\x60\x68\xec\x26\x14\x61\xd6\x63\xfc\x21\xbb\xa3\x57\x32\x91\x6c\xf2\x32\xcd\x26\x77\xb1\x70\x68\x2a\x08\x0d\xca\x1f\xc4\x02\x21\xbc\xdd\x07\xa2\xbf\xe7\x1b\xa0\xc8\xff\xd2\xa8\xb2\xcf\x80\x03\x7e\xe0\xff\x7d\x8e\xa0\x9b\x33\xd2\xe9\x5c\xf6\xf5\xac\x78\xaa\x33\x6c\x02\x6a\xda\x08\x05\x39\xef\xc1\xc3\xa2\xea\x3a\xfa\xd7\xa4\xa6\xeb\x4d\x32\x2e\x45\xa6\x26\x1a\x4b\x9f\xa5\x4e\xb4\xf8\xa3\x8a\xcf\xf0\x47\xbd\xe7\xcf\xf7\x47\x35\xb8\x94\x1a\x72\x04\xb2\x58\x9d\xc0\x1c\xd8\xc5\x8d\x39\xea\xb0\xde\x4d\x96\xa9\x79\xd0\x3a\x46\xb0\x5f\x11\xd6\x33\xf1\xc6\xa7\x99\x12\xa6\xdd\xa0\xca\x73\x0a\xb0\x3b\x17\xbd\x5b\x75\x2c\x40\xd4\x88\xfd\xec\x54\x17\x56\xd7\xa0\xa8\x54\x42\x47\xc4\x06\x09\xa7\xee\xb3\x29\x4d\x21\xe1\x54\x05\x53\xc1\xbc\x08\xc0\x39\x73\x94\x90\x27\xbd\x86\x4a\xd0\xf2\x7d\xca\x88\xd5\xb8\xa8\xe9\xa5\xe9\xcc\x60\x40\x64\x4a\x6a\xa8\xf8\xd8\xba\x2b\x5f\x4a\x72\x2f\x74\x6d\xac\xf7\x09\xba\x33\x48\x8b\x7a\x03\xf0\xe6\x92\xce\x06\x79\xa5\xad\x62\x23\x61\xc5\xad\xae\xbe\x89\x75\xf5\xd5\xfd\x7a\x86\x9f\x6f\x00\x3a\xae\x67\xac\xd0\xa9\x17\xd6\x7b\x12\x8b\x6c\x29\xe9\xae\x2d\x69\xa1\x22\xc2\x25\x5b\xd3\x64\x56\x6f\x12\xe1\xa4\x0d\x36\xc2\xf1\x08\x35\x81\x4d\x8e\xc4\x6e\x47\x97\xcf\x59\xef\x16\x6d\x67\x5a\x47\xeb\xb8\x9f\xda\x12\xbf\x66\x96\x03\x3f\x02\xd0\xc4\x49\x1d\xef\x53\x73\x4b\x46\x58\xae\x77\x45\x2e\x33\x1c\x7d\xa0\x06\x39\xbe\x74\xbc\x92\x25\x9f\x4d\x7c\xa5\xd1\x71\x59\xac\x75\x56\xe6\x08\xaf\xff\x40\xdf\x28\x03\x84\x05\xf9\x25\x6e\xcd\xf1\xb3\xfd\x82\x2b\x6c\xef\x53\xfc\x89\xdb\x1c\xa2\x1f\x5c\x4e\x14\x57\x73\xd3\x7c\x5b\x22\xe8\x84\x92\x2d\x28\xf5\x2d\x0b\xc1\xfc\x39\xb8\x1c\x71\x7d\x62\x7d\x56\x9d\xf6\x77\x41\xf7\xd0\x17\xb9\x60\xff\x57\xcd\xb5\x75\xde\x7e\xe4\xa5\xd9\x2e\x69\xcc\x1f\x78\x43\x40\x4c\x11\xc6\x96\xd7\xb2\x4b\x0c\x3f\xf4\x2e\x16\x79\x4f\x63\x03\xe0\x68\xf7\x5e\xc9\x63\x11\x96\xab\xd5\x70\x84\xc5\xc8\x1f\xe8\x46\xf4\xf0\xc1\x41\x26\x5b\xc3\x70\xa4\xff\x35\xe9\xb1\x4c\x8e\x2c\x23\x1f\xdd\xac\xd5\xdc\x07\xf6\x84\x4b\x3a\xb3\x3a\x8e\x00\x7d\x3e\x0c\x86\x02\x14\x38\xb8\x45\x7b\xbc\x72\x78\x76\x4c\x67\xc1\x23\x99\xdc\x6a\x85\xe4\x3a\xad\x88\xce\x27\xdd\xac\xba\x07\xc0\x57\x12\x76\x2c\x54\xda\x83\x37\x79\xd9\xac\x5e\xf3\x6f\xe4\x07\x95\x0e\x13\x12\x3e\x3a\xa6\xb3\x81\x3d\xde\xe7\x49\x6e\x20\xc6\xb4\x4d\xda\x9c\x1a\x90\x16\xf8\x20\xae\x8e\xbb\x32\xe8\x10\x17\x57\x1d\x6b\x8f\x1c\xf8\x0c\x2a\x7f\x66\xdc\xd0\xe3\xb6\x09\xab\xcc\xab\x4e\xd1\xd6\x9a\xb5\xa0\x11\x36\xd7\x5c\xb6\xc7\x9b\x6e\x95\x61\x02\x03\xda\x68\x78\x31\xf6\x96\xf5\xee\x2c\x6d\x68\x6e\x27\x46\xeb\xa0\xb3\x2e\xd4\xd6\x38\x74\x78\xa9\xe4\x5d\x68\x49\x22\x1e\x7e\x66\xfe\x56\x7b\x8d\x71\x42\xb5\x3f\xe2\x94\x09\xf9\x68\x3c\xcc\xd4\x59\x66\x26\xe2\xc3\x66\x65\x9f\x86\x6b\x85\x9a\x03\xd2\xd7\x6d\x9c\x9b\xfd\x20\xab\x53\xe4\x0c\x1c\x40\xe0\xce\xc8\xf1\x99\x84\x5e\xee\x82\x77\x74\x24\x4e\x6e\xa3\x07\xfa\xcf\x81\x1b\x7d\xcd\xcc\x23\xed\x27\x72\x58\x1f\x81\xad\x73\x54\xa3\xa7\xf6\x85\x83\x09\x3c\x79\xee\x04\xda\x89\xbb\xa3\x8f\xe1\x74\x6d\x64\x00\xa5\xce\xc8\x86\x74\x1e\x06\x7f\x64\xf3\xfc\xd5\xbc\x92\xba\x5d\x3a\xb4\x7d\x1a\x55\xcd\xb8\x57\x1b\xf9\xaf\x9e\xc0\xbf\x8c\x01\x5f\x7c\xea\x4c\x06\xdc\xf7\x8b\x59\x69\x65\x86\x42\x78\xa6\x40\x4e\xd0\xf0\x9c\xa5\xb7\x0e\x59\x47\x6a\x31\xa1\x58\x43\x40\x5e\x36\x2e\xd1\x10\x5c\x8a\x3e\x6e\x1e\xbd\x9e\xef\x60\x0f\x6a\xb3\xb0\x63\x8f\x53\x8f\x66\xe3\x1f\x2a\x96\xa9\xd9\x98\xd3\x54\xd9\x94\xea\x76\xce\xb0\xb6\x97\x5c\x68\xf9\x41\x67\x8c\x7f\xec\x4d\xd9\x44\x22\x35\x15\x7a\x5c\xa5\x44\x5b\x4f\x32\xb9\x1d\x88\x10\xc1\x20\x4c\x52\x14\xba\x88\x18\xe0\x3c\xfd\xfd\x7d\xb2\x18\x30\x78\x94\x0f\x86\x46\x72\x1a\x61\x61\xbd\x94\xf3\xc1\x90\x8f\xb0\x56\x65\x0c\xf6\x2a\x70\x22\x2e\x8c\x48\x17\xd3\xf9\x46\xca\x30\x27\x0d\x9f\x1c\xf0\x41\xcb\x31\xa0\xa1\x3b\xea\x4a\x1c\x7d\x07\xe3\x1e\x3f\xa3\xf0\x3d\x6a\x2b\xa3\x07\xe9\x1d\xe6\x1c\x83\x0a\x26\xa8\xe2\x57\x19\xd4\xff\x19\x24\xdb\x24\xc3\xd6\x48\x97\x04\xc4\x19\xae\x7d\x8d\x8a\x49\x00\x41\x56\x52\x67\x86\x71\xa6\xde\x5a\x5e\xfa\xf4\x34\xe6\x00\x3e\x4e\x78\x2c\x4c\x7e\x0a\x17\x27\x2b\x94\xf4\x80\x4d\xca\x25\x50\x16\x68\x0a\x1e\x08\x43\xca\xa5\x0c\x6c\xfe\x4a\x2c\x42\xe9\x53\xaf\x87\xb0\x9b\x2b\x2e\xef\x04\x18\x6e\x8b\xaf\x20\x29\xe9\x68\xd5\x6c\xf8\x64\xf1\x6e\x66\x9c\xb7\xde\x96\x0f\xf9\x05\xdf\x3e\x9f\x0c\x3c\x14\x86\xe1\x95\xff\x59\x58\xec\x7d\xb7\xcb\x5c\x42\xf7\xca\x8e\xec\x54\x36\xa3\x4b\x68\x15\x04\xf1\x04\xea\x5c\x59\x93\x98\xc6\xd2\x81\xd2\xab\x2d\x68\x01\x9e\x83\x3d\x2f\x3f\x4b\x14\xf2\x0c\xff\xb0\x51\x1f\x0d\x12\xd9\x90\x0e\xfb\x23\x88\x4a\x6a\x80\xf9\x88\xfe\x15\xed\x50\x75\x2b\xa7\xc3\xbd\xd1\xc8\x1b\x0d\xee\x6a\x07\x08\xf7\x29\x91\xda\x40\xb5\x4a\xd9\x14\x78\x0f\x78\x83\xf0\x80\x64\x76\x8e\x98\xf6\xd2\xb0\xa5\xe0\x16\xc1\x26\x31\xc3\x43\xbb\xbe\x07\xc3\xd1\x40\xe2\x43\x1e\x0b\xe4\xcf\x9a\x91\x3a\x6c\x02\xbb\xc6\xdb\xc6\x34\xf5\xd9\x27\x76\x33\x6b\xed\x66\xd2\xed\xc6\x9b\x54\xe7\xc3\xfe\x48\x5d\x3a\x87\x7b\x23\xac\xf9\x36\xf4\x7e\x77\x6f\x10\x38\xac\x9a\x7c\xe8\x1d\xc8\x67\xad\xae\x9f\x76\x46\xc5\x90\x8f\xc0\x9d\x01\xfc\x98\x7b\x2c\xd7\xfe\xcc\xcc\x92\xa1\x49\xb7\xc8\x86\x7d\xf8\x2c\x23\x84\xe8\x43\xfc\x15\x95\xab\x95\xff\xf9\x26\x79\xbc\xa1\xaf\xb3\x49\x92\xda\x49\x60\x43\x16\xc4\x4a\xe6\x24\x19\x26\xfe\x77\x47\xb5\x5b\x93\x07\x4c\x8a\x8f\x21\xc3\xb9\x3e\xe7\x47\x8a\xbb\xa9\x05\xc8\xea\x4b\x95\xe0\xa1\x5b\x1e\x88\x25\x52\x0b\xa3\x9a\xbe\xe4\x64\x38\xea\xd0\xde\x98\x7e\x5c\x50\xc1\xd4\x8d\x33\x49\xdf\x24\x13\x91\xe5\xe4\x52\x0f\xe8\x9a\xe3\x23\x8e\x7f\xe7\xf8\x0d\x2f\x01\x39\x9e\xf1\x4d\x40\x8e\xc7\x7c\x13\x44\xe3\x1b\xbe\x11\xa2\xf1\x8c\x57\x21\x1a\x5d\xfd\xe7\x01\x4b\x06\x38\x48\xc7\xca\xbb\x5d\xc8\x43\xa5\x91\x13\xbb\xdd\xc8\x3a\xa5\x44\x9a\xdb\x3c\x2e\xe8\x81\xb4\xfa\x50\xab\xe9\x72\xd5\xbe\x0e\xb1\x40\x32\x18\x62\x10\xa0\x3f\x50\xfb\xcf\x7f\x7c\x5a\x0a\xb5\x7a\xd2\x51\x42\xde\x28\x47\x0f\xbc\xf2\x3a\xda\xb1\x2f\xf4\xa9\xbc\x48\x26\x74\x20\xc3\x00\xba\x8a\xd2\xb7\x59\x15\x5c\xee\x8a\x3f\xbd\x02\xf5\x2e\xc7\x02\xad\x56\x30\x59\xb1\x84\x44\xd9\x1d\xbf\x19\x78\x90\x32\xdc\x24\x96\xb7\x04\x7e\xcc\x63\xfb\x24\x28\xc0\xcc\x72\x3c\xf9\x86\xb9\x45\x8e\x66\xfa\x40\xcd\xda\xfa\xea\x06\xef\xca\xe6\x5f\x97\x7a\x6d\x54\xfc\x0d\x3d\x2e\xf3\x46\xde\xed\x9a\xbf\x32\xcd\x25\x9b\x7a\x93\x15\xc5\x4d\xef\xed\xe1\xe5\xf5\xd9\xe1\xeb\xab\x6e\x37\xbe\xae\x22\x0d\xd6\x58\x82\x20\x47\x3c\x96\xf8\x77\x0e\x98\xa6\xae\x51\x51\x14\xf8\xa8\xbe\x00\x6c\x16\xfb\xfa\xb5\xad\xd2\xd2\x2a\xf0\x05\x8a\x3c\x8c\xfa\xa1\x3a\x2d\xc0\xcd\x3c\x3a\xca\xb8\x4c\x18\xa7\x62\xeb\x43\xa2\xc1\xd3\x67\xd9\x92\x4f\xb7\x3e\xcc\x29\xdf\x52\x13\xc0\xf8\xed\xd6\x72\xb1\x95\x6c\x3d\x30\xfa\x21\xdf\x72\x68\x18\x5b\xd7\x73\x96\x6f\xb1\x7c\xeb\x3e\xcb\xe5\x56\xca\xee\x68\xfa\xb8\x35\x5d\xd2\x2d\x99\x6d\xdd\x27\x7c\x99\xa4\xe9\xe3\x96\x56\xde\x4a\x96\x48\x55\x4d\xc2\xb7\x4e\xee\x6f\xa8\xe8\xbd\x67\xf4\x43\x6f\xeb\x8a\xd2\xc1\xd6\x5c\xca\xc5\xe0\xeb\xaf\x6f\x99\xec\xb1\xec\xeb\x93\x1f\xdf\x2e\xf8\x61\x90\xdd\xab\x6e\x66\x89\x76\x24\x5a\xad\x1a\x5f\x08\x54\x14\xf8\x77\xde\x28\x14\x99\x18\xcd\xaf\xc1\x97\x47\x0e\x65\xc8\xc2\xcc\x7a\x87\x0f\x49\x34\x8e\x76\x04\x96\x26\xf0\xf6\xeb\x08\x15\x5a\x3a\x7f\xc9\xc9\x13\x9b\x55\xd0\xed\xac\x3c\x55\x8f\x8e\x7f\x27\x3c\x80\x94\xf6\x83\x16\xda\x4b\x42\xff\xfb\x02\xa1\x02\x6b\x8f\xdd\xa6\x2a\xb1\x35\xae\x4c\xc1\xe7\x31\x10\x1a\x3d\x52\xb5\x17\x9a\xb1\x66\xef\x58\xb1\x6c\xe0\xd4\xcc\x84\xe8\xbe\x40\x78\x42\x92\xd0\xcf\x1a\xcf\x08\xaf\x44\x8f\xf0\x72\xf4\xc8\x20\xc3\xd3\x26\xac\x6c\xcc\x3b\x2e\x4b\x47\xbf\xdb\x8d\x9b\x93\x01\xb6\x49\x08\x5b\x3e\x16\x05\x21\xef\xeb\x5f\xa0\x0e\x05\xd9\x31\xbc\xde\x5a\xfb\x7c\xe5\xae\x0a\xe9\xf8\x82\x0e\xc8\x61\x7f\xa4\xfd\xe9\x6e\x21\x1e\x12\x4e\x51\x50\xae\x87\x45\xf8\x41\xd3\x35\x3e\x16\x10\x68\x30\x10\xab\x15\x5f\xad\x7e\x17\x45\x6c\x66\x05\xda\x8c\x50\xb7\x6b\x66\xc5\xfc\xc6\x39\xf2\x40\xf3\x0d\x8e\x5c\xc9\xf0\xab\xd1\xc1\x1b\x11\x27\x38\xc1\xea\x6f\x3c\xc5\x13\x08\x0f\x08\x22\x0b\x67\xa8\x6c\x23\x40\x71\x82\x54\x19\xe7\x96\x8a\xbd\x5a\xc3\x85\x8c\xe8\x8a\x9a\x5c\xf5\xfb\x0d\x71\xdb\xe6\xc9\x9b\x52\x28\xad\x77\xaa\x84\x82\xe5\x78\x78\x6f\x3d\x2d\x8a\xb0\x27\x38\x81\x96\xd1\xf0\x27\xc8\xaf\x6e\xf2\x52\x09\x45\xb4\x4a\xbc\x68\x06\x79\x6c\x26\xd4\x02\xeb\xe5\x6e\x2e\xa3\x6a\xce\x69\x7c\xac\xb6\x9c\x2b\x82\x0a\x3c\xab\xee\x8b\xf2\xf7\xa7\xd5\xef\xeb\x70\x97\xa6\xc0\x4b\xb7\x11\xeb\xee\x50\xb8\xee\xc4\x84\x00\xc4\x72\xde\x36\xc0\x0a\x5c\x7c\x81\xd3\xec\x76\x6d\x47\xbf\xaf\x76\xf4\x7e\x59\xed\xa8\xdf\xf1\xd5\xfe\x29\xfe\x1d\x0b\xa2\xee\x57\x62\xf8\x5e\x8c\xdc\x6d\xc6\x84\x73\x1b\x51\xc7\x8c\x8f\x3b\xba\x67\xc3\x3f\xc4\x88\x70\xcc\x86\x5f\x8d\x08\x1f\xfe\x38\xc2\x4c\x15\x57\x2b\xc9\x0a\x1c\xfd\xb1\xa4\xe2\x71\x77\x01\x2e\x05\xd1\xda\xde\xff\x5c\xed\xbd\xa0\xc9\x34\xe3\x69\x95\x00\xf4\x96\x6d\xda\xf6\xaa\x27\xab\x15\x2d\x1a\x66\xbf\xe4\x22\x93\x6a\xea\x5a\xf2\x1b\x75\x0a\x35\x77\x6a\x49\xdb\x97\x32\xf0\x44\x5f\xf2\x94\xe6\x55\x1c\xd2\x4f\xe6\xd4\x2f\x1c\xc7\x46\x85\x93\x6c\xd7\x4e\xd6\xdb\xea\x64\x45\xbb\x34\x99\xcc\x77\x19\x5f\x53\xee\xa8\x69\x30\x50\x96\xad\x6f\xed\xb2\xde\x1a\x80\x68\xef\x02\xf2\xf7\xda\xa2\xd7\xf5\xa2\x3c\x13\xf7\x49\xca\xfe\xa4\xcf\x19\xe8\x51\xbd\xfc\x2d\x95\xbb\x46\xe5\xb7\xfb\x90\x88\x68\x30\x0b\x7c\x2a\xde\x27\xde\x56\xd3\xb8\x2c\x1a\x94\xb1\x69\x07\x60\xe6\xa0\x14\x65\x83\x3d\xdf\x27\x51\xa8\x6c\xcc\x4e\x1f\x33\xad\xa3\xca\x40\xbf\xf5\x6c\x3d\x55\xf6\xb7\xeb\x7a\x82\xb9\xbc\xe1\x31\xa4\xe6\x83\x29\x34\xba\xd4\x16\xe6\x40\x7b\xa1\x37\x4d\x70\x2a\x12\xd0\xf2\x84\x6d\xe9\x01\x1c\x00\xcf\xee\xc1\x51\xe3\x50\x00\xe2\xe8\x3e\x61\x3c\x42\x83\x86\x99\x56\xdf\x7f\xe4\xa0\x69\xf8\xa0\x44\xee\xc0\x9c\x80\x85\x31\x00\x42\x47\x93\x3c\xa7\x42\xee\xda\x60\xd5\x5d\x27\xf3\xee\xce\xe1\x1e\xb8\x6b\x0f\x95\x68\x70\x27\x0a\xfc\x6e\x93\xa1\x45\x3b\xaf\xe4\x64\xa8\xcf\x24\x93\x49\x34\xbb\xf9\xfd\x3a\xd3\x00\xdb\xa5\x1b\x1e\xbc\xbc\x59\xb2\x54\x9e\x71\x7d\xef\xcc\xc9\x4b\x5e\xc1\x27\xf4\x97\xf3\xa3\x64\x32\xd7\x15\xb8\xc2\x4d\x5f\x29\xda\xb4\x39\xaa\xf4\x28\x6a\x2f\x83\xfc\xe3\xac\xa7\x6f\xa3\x65\xc8\x53\x2b\x71\x32\x9e\x32\x4e\x75\x14\xc2\x4d\x9a\x4d\xee\xf2\x0e\xb8\x8e\xc7\x91\x55\x97\x5f\x01\xca\x03\x3c\x32\x16\xcc\x5b\xfb\xe4\x0d\x83\xfc\x46\xf1\x1d\x18\xe1\xe1\x13\x28\xb2\xb0\xbf\xed\x07\x6f\x39\x72\x31\xab\x9c\xf4\xf7\xf9\xb7\x97\x2e\x69\x1a\xdf\xd9\x01\xa8\x88\x4b\x3e\xe4\x23\xa4\x73\x64\x00\xfa\xaa\x9f\x00\x96\x52\x61\xc6\xf2\x3a\xf9\x13\x50\x14\xd5\x23\x58\xfe\x07\x13\x66\x68\x72\x69\xa1\x46\x37\xca\xd2\x42\xd8\x78\x85\x9c\x3c\x19\xa1\xf6\xc9\x58\x79\xc1\x85\xe5\x17\x81\xc1\xc8\x6b\x10\xd0\xaa\xaf\xe7\x70\xd1\x09\xbe\x58\xab\x10\x7d\x2e\x80\x7b\xa0\xe7\x6e\x87\x6d\xaf\x5c\xe8\x84\xbe\xc6\x41\x21\x8b\xba\x2f\x9a\x60\xe3\x0d\x61\xb6\xb6\x68\x68\xda\xa2\xe2\xf0\xf0\xa9\x35\x6e\xae\xd1\x27\x05\xa9\x4e\x85\xbe\x67\xae\xa5\xdc\x9d\x1d\xcc\x55\x27\x4d\x97\x1b\x25\xf3\xa0\x57\x43\x3a\xda\x80\xcb\xbf\x71\x24\xe3\x1a\x48\x7f\x78\x99\xb7\x57\xf7\x70\xd0\xbc\x34\x22\x66\x46\xd4\xb8\xd7\x76\x76\x1c\xce\x87\x0b\x2f\x79\x36\xfe\x7f\xc3\x1c\x97\x72\x00\x6c\x44\xea\xaf\xdc\xa7\x83\xa9\x18\xd7\xf1\xfa\x3b\x0d\x4d\x0b\x54\xed\xfc\xbc\x4a\x2d\x81\x8e\xba\xee\x46\x6c\xec\xf9\x01\x03\x2c\xc3\x7d\x57\xe3\x29\x4b\xcb\x64\x92\x52\xda\xfc\xcd\x61\x25\x39\x95\x7a\x06\x30\xe8\x89\xc7\xcf\x5b\xff\x32\xab\x1d\xd2\x51\x9b\x56\xcc\xfa\x04\x82\x09\x00\x6b\x94\xb1\x53\x1e\x83\x51\x6c\x99\x52\xf0\xd5\xd5\xe5\x34\x3a\x40\xe8\xf9\xa7\xc9\x60\x10\xed\x30\x9c\xa1\xd5\xaa\xed\x65\x1d\xab\xca\xab\xa0\xb5\x4e\xcc\x5f\xc9\xa8\xd6\xcd\x68\x6d\x3a\xd5\x0a\x24\xf7\x47\x8f\xe5\x7a\x40\xc6\x83\xb0\x50\x77\xb1\xa6\x29\x48\x9c\xc7\x5f\x7b\xd3\x7e\x3d\x5c\x8c\x64\x11\x0b\x74\x90\x51\x2f\x58\x1a\xac\x98\x92\xdc\x34\x88\x69\x8f\xd3\x0f\xc6\xa9\x2a\xb9\x01\xd2\xc1\x89\x2f\x55\xfa\x1a\x59\xfc\x48\x59\xa1\xc3\xc6\xa5\xbb\x86\x5f\xc6\x1c\x13\xdb\x3f\x42\x81\x9b\xf5\x4c\xf9\x12\xe3\xd1\xcc\x6e\xbc\x76\xb7\xd5\x89\xc3\xb1\xff\x12\x79\x80\x51\xe9\xa9\x4a\x16\xe5\xb5\xb5\x3a\xd0\x41\xb4\x43\xcb\xfa\x56\x97\x20\xeb\x9c\xc7\xcc\xe8\xff\x02\x26\x02\x9e\x91\x6a\x47\x33\x9c\x35\x9c\x4f\xc8\xc9\x59\x02\x06\x04\x60\x85\x8a\x04\x4f\x33\x71\x6e\xf5\x9c\x4d\xfa\x22\x2c\x88\x55\x87\xc2\x51\x6e\xd4\xef\x83\x81\xd3\x4d\x69\xf5\xbb\x71\x0e\xd4\x7a\x16\xbe\xa3\x6e\x0b\xee\x67\x1f\x73\x84\xb0\x76\x68\x92\x81\x5a\x55\x14\xc1\xe4\x3e\xfb\x00\x0b\xf7\x0f\x73\x13\x99\x11\x8a\x93\x26\x5d\xa0\x30\xa0\x50\xab\x95\xb6\xb8\x41\xd3\x76\x19\x9c\x32\xb7\xc4\xad\xed\x94\xda\x29\xd3\x5f\xa1\x22\x56\x73\x7b\xca\x63\x61\xf7\x2d\x0a\xcc\x67\x49\x8d\x6f\xe5\x78\xa9\x85\xf5\xdc\x1a\x31\x12\x7f\x62\x1d\x2c\x49\x62\xd2\x9a\xc5\x0c\x0d\x82\x37\x9d\x30\x5a\xa7\x45\x80\x03\x06\x98\x97\x09\x24\xb5\x1d\x48\x3b\xa6\xb9\xa5\xdb\xf2\xb6\xa9\x6e\x37\x2e\xb5\xab\x55\x79\x13\x02\xc0\x0d\x63\xe6\x20\x1b\xae\x64\x22\x24\xb2\x49\x44\x35\xe2\x7b\xad\x27\x11\x7e\xcd\x71\x86\xf0\xcc\x5d\x49\x1a\x86\x69\x5c\xef\x5c\x6a\xfa\x8b\xf3\xd7\xbf\x8e\x5f\xbd\x3e\x7b\xf3\xe6\xe4\x72\x7c\x74\xf1\xe6\xed\xc5\xf9\xc9\xf9\xf5\x55\xb7\x1b\xcf\x0c\xfa\x4c\x9c\xe1\xa5\xc6\x92\xf8\xd8\x63\xb9\xf5\xf1\xbe\xe0\xa9\x87\xb6\x46\x71\xd0\x84\xd9\x0b\xb5\x1a\xb0\x1b\xbb\xfb\x54\x2f\xfb\x94\xd4\x4a\xe3\x39\x99\x8b\x78\x1a\x92\xc1\xbc\xdb\x0d\x00\x7f\x09\x21\x73\x0d\xad\x02\x55\x2c\xc8\xdc\x6e\xdb\xce\x8c\xcc\x9d\x15\x03\x2e\x19\x99\x88\x17\x31\x43\x78\x8a\x97\x1a\xb6\xed\x4a\xf5\x28\x68\x13\xc3\x6b\xd3\xce\xf2\x60\x39\x60\x56\x89\xab\xb6\x4a\x6f\x21\xd8\x43\x22\x01\x61\xf3\x58\x31\x3a\xb5\x4e\x45\x51\x16\xcc\x66\x6e\xb8\x7f\xc8\x72\xe5\xab\x55\xc9\x89\xbc\x5a\xe3\x99\xaa\x51\x9b\xff\xd4\x1c\x4d\x62\xb4\xfe\xaa\x00\xa7\x64\x8e\x67\x08\xcf\x8c\x7b\xcf\xf7\x9c\x3c\x69\x8e\x3c\x68\x76\xd2\x75\x6e\x91\x21\x6f\x7a\xa7\x4e\xbe\x32\x4b\x72\x72\x77\x51\xe0\xf7\x9c\xbc\x8b\x9f\xd8\x74\x10\x4d\xe6\xb3\x9f\x26\xdf\xff\xc7\x37\x11\x86\xbb\xc2\xe0\x1f\x4f\x91\x76\xd6\xcf\xa3\xc1\x30\xea\x1a\x7d\x7d\x34\xc2\x1a\x9d\x16\x94\x75\xd1\x60\x38\xdc\xfb\x27\xde\x1b\x8d\x70\x34\x4f\xf2\x93\x87\x24\x8d\x06\xb3\x24\xcd\x69\xf1\x0f\x7c\x4f\x65\x32\x78\xf2\x4c\x63\x10\x2d\x92\xc9\x5d\x72\x4b\xf3\xaf\x4d\xda\xad\x5d\xbb\x7c\xf9\xd7\x16\x8a\x33\x65\x37\x5f\x5b\x85\x7a\xee\xf3\x72\xf5\xe6\x37\x79\x54\x14\x08\xff\xe1\xfa\x7b\xfe\xf3\x6f\x7f\xbe\xbe\x3a\x3b\x6b\xee\xaf\xcd\x47\x16\xe1\xe8\x9a\x7e\x94\xa7\x00\xdb\x8a\xa3\x7f\xd9\xb4\x89\x11\x8e\xba\x89\x94\x22\xaf\x0f\xe8\x9f\x58\xdf\x74\x86\xc3\x17\xff\x81\x43\xec\xe9\x61\x80\x07\x6b\xac\x8a\xb8\xe1\x9b\x00\x27\xd6\x7c\x65\x5c\x8d\x9e\xea\x0d\xb1\x19\xb4\xf3\x0d\xee\xe3\x61\xe4\xb3\xa8\x45\xa3\xb6\x32\xff\x86\xd5\xd7\x7b\x78\x38\x1a\xe1\xe1\x70\xef\x1b\xfc\x4f\xf8\x23\xfa\x97\x51\x9b\x87\x43\x1c\xf9\xaa\x75\x7a\xc6\x48\x7d\xfb\xe2\x1b\xfc\x8d\x2a\xae\xfe\xc3\x11\x28\xdf\x28\x84\x12\x0d\x86\xa3\xa2\xa5\xbd\x17\x7f\x57\x7b\xb5\x47\x7b\xf8\xc5\xa8\xb0\xb3\xf6\xb7\xd0\x14\x28\xa7\x1c\x3d\xfd\xec\xe8\x69\x36\x3b\x7c\xfd\x6f\xdf\x1f\xa7\x8d\xf4\x54\xa7\x7a\x3c\x7c\xf1\x02\xdb\x8b\xf4\x08\x43\x07\xff\xae\x2e\xeb\x56\x5c\x9f\x5f\x3d\x0f\xd8\x63\x1c\x70\x04\x7b\x4d\x16\x2e\x67\xb3\x11\xcb\x21\x2f\x6d\x2d\xc5\x40\x27\xb8\x36\x09\xaa\xf9\xdd\x98\xc7\x4f\xc6\x9f\x51\xdd\x9a\x19\xb7\xa6\x61\xac\x2b\x1d\x3c\x41\x65\x03\x81\x19\x97\x99\xb5\xe5\x1a\x37\x1b\xad\xee\x31\xe1\x16\xbb\x32\x5b\xec\xa6\xf4\x81\xa6\x51\xe8\x6b\x63\x4a\x68\x2f\x1b\xf3\xc3\x7b\xe5\x14\x05\xea\x84\x5e\xda\x82\xce\x8c\x03\x57\xb9\xc2\x72\x83\xcd\x5e\x3d\x0d\x2d\x15\x05\x35\xd9\x0c\xfd\xdc\xf2\x46\xec\x5d\x37\xdf\xec\xcb\xd3\x2d\x33\x0c\x81\x74\xd5\xe0\xa6\xe0\x26\x79\x60\xa5\x70\x8f\x77\x89\xab\xa0\x85\x5c\xdd\xa5\x06\x0d\x1f\x72\x54\x60\x56\x00\x58\x3a\xed\x09\x9a\x2d\x28\xd7\x88\x33\xe1\x78\x4a\xb5\x79\x67\xc0\xa6\x4e\x59\x41\x70\x5c\x8e\x4a\x90\x8e\xac\x4a\x29\x01\x70\x46\xe4\x70\xda\xbb\xf8\xf9\xfc\xe4\x72\xd4\x29\xf9\x8a\x0a\xcc\x71\x86\x59\x9c\x21\x07\xaa\xda\xa0\x62\x01\xc8\x64\xca\xa7\xd7\x59\x5d\x40\xee\x48\x52\x23\xf2\xde\x3c\xc9\x8f\x2f\xde\x74\xbb\x35\xdf\x72\x7a\xe0\x30\x0c\xc0\xe6\x70\x45\x53\xaa\x4e\xea\x98\xa2\x01\xd5\x80\x66\x36\x89\x3b\x2a\x67\x70\xf7\x43\x8b\x74\x67\x2e\x80\xbe\xde\x33\xfa\xc1\xa6\x78\x87\x38\x08\x41\xf5\x87\x65\xd4\x08\xae\x4e\xf1\x8b\xc0\x7f\xbb\xe6\x2b\x2d\xe8\xac\x82\x69\x5f\x8f\xe7\x76\x19\xd7\x7d\xdb\xe4\x15\x07\x37\xa7\x38\xaa\xf3\x10\xc5\x70\xbe\x86\x0b\x83\x3a\x8e\xe8\xc7\x45\x26\x64\xae\x18\x75\xf3\x97\x8a\xd5\x00\xa6\xe5\x08\x57\xdc\xd7\xa2\x65\x4e\xb7\xd4\x54\x4e\x64\xd4\x69\x4e\x1c\x46\x71\x34\x1e\xd3\xfc\x0d\x70\xb7\x08\x3f\x69\x55\x35\xc0\x4c\xb4\x16\xf0\xb1\xab\x95\x94\x63\x2d\x70\xf7\x3d\x5b\xa0\x58\x57\xeb\x1b\x80\xe5\x7c\x66\x8d\xea\xe3\xb5\xb5\xdd\x7f\x4a\x6d\xf7\x9b\x6a\x5b\x50\x7a\xf7\x49\xfd\xb3\x05\xd6\xd6\x9a\x53\xf9\x49\x95\x9a\xef\xd7\xd6\xe9\x7c\xf3\x9e\x5d\xab\x2b\xa1\xd3\xbb\xad\x21\x49\x47\x68\x25\xaa\xd4\xc8\x63\x37\xc9\x8d\x62\xde\x0d\x45\x97\x92\xa5\x01\xf5\x42\xc0\x8f\xfa\x69\x4f\x4a\xe7\x7d\x50\xa5\x5f\x6b\x9f\xfe\x32\x2a\xa6\x76\xda\xc8\x14\x53\xb7\x2e\x64\xae\x18\xa4\x21\x4b\x42\x81\x02\x08\x05\xb2\x22\xd4\x4f\x49\x88\x82\x91\xe1\xc4\x9a\x49\x3d\xa3\x0b\x2a\xc9\x0c\x9c\x05\xb0\x63\x87\x75\xbb\xe4\xba\xab\xd3\x48\xed\x7f\x5f\x71\x6e\x90\x28\xf6\x70\xba\xc1\xa8\x31\x4e\x0d\x8e\x41\xfe\x9e\x8a\x5c\x5d\xee\x8d\x46\x6e\x6c\xce\x22\x3a\x3d\xe1\x53\x62\xf5\x74\xe3\x59\x9a\x48\xf5\xfd\xd4\x7e\x6e\x8c\x11\x63\xe3\xf0\x6e\x0f\x66\x78\x36\x75\x29\x11\xf3\xf2\x8b\x7b\xf6\x91\xf1\xca\x33\x99\xdc\xd6\x1e\x54\x3e\x99\xa5\xea\x91\xf9\xa5\xd5\x07\x56\x72\x81\x49\x0b\x82\x2c\x20\xcf\xa0\x09\x5a\xf4\x01\x17\xc1\x43\x3f\xcd\xb8\x32\x11\xa6\x96\x75\xf8\x0b\x39\x95\x67\xea\x32\x96\xa4\xec\xcf\x4a\xe6\xe0\xa0\xa7\x2b\xf2\x1f\x00\x4c\xc0\x9f\xf7\xf9\xff\xd1\x9f\xab\xcb\x58\xf3\xb7\xa1\x0e\x77\x3c\x4f\xf2\xd3\x34\xb9\x8d\xff\x03\xe9\x42\xce\x89\x10\xa8\xac\x4d\xb3\xae\xa7\xc9\xc0\x9e\xe8\x19\x34\x1a\x6e\x33\x9d\xe0\xac\x2e\x9a\x8e\x19\xa3\xbc\x52\xd5\x1b\x55\x20\x9d\xc6\x46\x86\xb1\xbb\x20\x78\xa1\x7b\x75\x05\xb5\x9a\xc7\xcf\x19\x8e\xc6\x72\xc8\xa9\x5c\x57\xb2\x34\xc7\x7b\x0d\x2d\xd1\xe9\xc6\x86\x5e\x34\x36\x54\x2e\x58\x6a\xe7\x85\x6e\xa7\x34\xcc\x8d\xad\xfc\xd3\xb6\xd2\x5a\xac\xd4\xc6\x3f\xd5\xd7\xb6\x70\xc3\x22\xc6\xc1\xd7\x5d\x8a\xec\x6a\x8d\x6f\xa9\xbc\x10\x3a\x45\xe2\xc5\x07\xfe\x26\x59\xb4\x11\xc0\x90\x8e\x56\xab\xd8\xfc\x55\xf5\xcb\x58\xa6\x29\xf8\x4e\x54\xeb\xbb\x6a\x8e\x11\xa9\xd7\x07\x4a\x15\x2a\x75\x1d\x33\xc6\xa7\x67\x96\x87\x94\xbb\xa4\xa4\x07\x8f\x63\xab\x4a\xef\x5b\x58\x89\x7d\xab\x02\x14\x55\x15\x7e\xe0\x9b\xdd\xe0\xf6\x6a\xfd\x2c\xb7\x58\x21\x00\x56\x49\x71\xa3\xc2\x4e\xe7\x19\x77\x3d\x29\x0f\xe6\xf3\x7a\xd2\xed\x72\x9b\xa0\xd6\xf8\xe6\xf7\x3b\x41\xab\xd6\x5f\x5f\xb5\xfe\x41\x30\x8b\x79\xd8\x84\x5e\xa0\xd7\xb3\xb6\x7c\x71\x04\xdc\x2f\x82\x99\x14\x34\x99\x6e\xac\x42\x7d\x5e\x69\xaf\x25\x7e\x68\xec\x11\xfe\x02\x8b\x00\xc0\x5b\x7a\x46\x1c\xf7\xdd\xbd\xa3\x02\xdb\x88\x30\xad\x74\x6a\x5d\x9f\xc2\x2e\x81\xfd\x76\x9e\x30\x9e\x9f\x36\x06\x92\xb7\xcf\x45\xea\x4a\x06\x9e\x97\x5b\x8c\x6f\x49\x45\x7c\x6d\x94\x8c\x25\x18\x10\x7d\x5f\x9f\xd7\x01\xdf\x58\x4b\xf4\x94\xa9\x15\x6c\xdc\x1f\x59\x43\xe0\x70\x7d\xfb\xc4\x91\x39\xf2\x22\x04\xb6\x72\x48\x6e\xa0\x48\xa8\x5e\x43\x95\x8d\x94\x49\xd7\x57\xa4\x13\x24\xd8\x2c\xbe\x6f\xf4\x81\x5a\xba\x88\x5a\xd7\x71\xdc\x4a\xd8\xf6\x20\x2e\x45\x8b\xc7\x41\xac\xa2\x3c\x30\x5b\x7a\x20\x31\x6f\xc8\x18\x2c\xd0\x93\x06\xf9\x16\x48\xad\x04\x8c\x4d\x28\x21\x4f\x00\xa2\x20\xc2\x95\xbd\xa8\x48\x81\x1e\x07\x52\x41\x79\x27\xc6\x35\xb1\xc1\x30\x97\xb2\x28\x61\xbc\x24\x10\x72\xa6\x42\x48\x78\x40\xe9\x5d\x73\xd5\xe5\xf5\xad\xf2\xa5\x38\x0a\x2b\x8f\x02\x47\x66\x49\x08\xc9\x5d\x28\xa6\xa6\xa4\xfb\xec\xa1\x65\x00\x66\xf1\xab\x43\x8c\x29\xce\xc3\x95\x6a\x2b\xfc\xac\xe5\x0a\x3a\xfa\xf9\x6b\x06\x1a\x20\x58\x35\xee\x57\x8d\x23\x2c\xb6\x09\xc9\xbb\x5d\x0a\xfe\xe4\x8d\xcb\x97\x4c\xa7\xd7\xd9\x6b\x27\x27\x35\x89\xd3\x5a\xca\x58\xe6\x73\x87\x8f\x65\x5e\x1e\xec\x0d\xfa\xe0\x41\x64\x67\xf1\x54\x64\xf7\x6d\x75\xb5\xd7\xa3\x8f\xed\xf0\x45\x33\x40\xb4\x9d\x0d\x06\x99\xa4\xb6\xf7\x0c\x9e\x0b\x71\x6b\x04\x0c\xc1\x36\x0f\x98\xac\xf7\x71\x86\xbd\xd5\x09\xcc\x67\x49\xb7\x9b\x7c\x5b\x17\x87\xbb\xdd\x38\x03\x87\xed\x09\x8d\x13\xbc\x87\x1a\x24\xe6\xdd\x5d\x9c\x90\xdd\x3d\x84\x01\x80\x3d\x41\x99\xb6\x78\x3f\x01\x1e\x94\x07\x3b\x97\xf8\x9e\xca\x79\x36\x1d\x08\x7c\xc7\xf8\x14\x92\x69\xf2\xc9\x80\x15\x01\x1a\x67\x4e\xb2\x61\x32\xea\xbc\xd0\x0e\x16\x2f\xd4\x2a\xf5\xd4\xc7\x07\xa5\x3e\x0c\x62\xfd\x94\x70\x9c\xf7\x54\x25\x84\xa1\xa2\xc4\x7e\xeb\x73\x5d\xe1\x36\x55\xd9\x7e\x9b\x90\xa5\x95\xef\x40\x48\x72\x28\x83\x4a\x8a\xec\x76\x61\x8a\xea\x43\x5f\xad\x96\x3b\x3b\x7a\xdc\x8d\x53\xd7\x70\xbd\xe8\xd7\x64\xf0\xe1\x08\x55\x9f\xc1\x26\xb2\x5d\x6c\x1c\x8d\x45\xda\xab\x8d\xe4\xdb\x25\x7a\xd2\xf7\xac\x52\x10\x6d\xa7\x11\x20\xac\xde\x46\x25\xcc\x56\xa2\x52\xe4\x62\xb9\x97\xa8\x3a\x12\xe9\x57\x52\x54\x3f\xee\xd4\xe7\x42\x3b\xad\xdb\x95\xed\x37\x90\x56\x13\xb9\x91\x7e\xd5\xcb\x4a\x96\x9c\xac\x8c\xc2\x76\xc8\x47\xfb\xb0\x30\xf7\x90\xaa\x0a\x88\x11\x52\xde\x40\x1e\x07\xd6\xd3\xc4\x88\xa0\x07\x4b\x0e\x29\x4d\x62\xd6\xd4\xde\xce\x0e\x2a\x8a\xa2\xe5\x4a\xb8\x2c\x4a\x64\x55\x5a\xc0\xfb\x44\x4e\xe6\x8c\xdf\x36\xed\x7c\x9f\x1f\x06\x0a\x6e\x5c\x07\x81\xca\x43\x16\x0d\x43\xd6\x61\x67\x7a\xa4\xdb\x90\x0c\x0d\xa4\x45\xd8\x2a\xdd\xee\x9e\xfb\x7b\xb5\x8a\x2b\xee\x2a\x40\x81\x7a\xd7\xd6\x66\x08\x50\x49\x75\x41\x84\x82\xc4\xd5\xa2\x97\xdd\xe4\x54\x3c\x50\x01\x18\x81\xed\xd0\xa0\xcf\xa0\xb1\x72\xa2\x07\x19\xe6\x79\xb0\xce\x0a\x43\x31\xea\xe8\x48\x24\x3f\x1c\x6e\x86\x03\xcb\xcc\xf5\xc0\x03\xff\x80\xc9\x3c\xe1\xb7\x14\xb0\xaa\x2a\xc2\x9f\x1a\x2f\xd5\xe3\xe5\x7e\x50\xeb\x71\xe6\xf4\x36\xaa\xa1\xcc\x85\xd2\xa6\xdf\x69\xbe\x3d\xbb\xd7\x26\x61\x76\x28\xa3\xbf\xb7\x8a\x04\xea\x22\x0c\x57\x2b\x09\x19\x04\xc1\xe5\x6d\x11\x04\xb4\x51\x8f\x59\x67\x94\x2b\xa9\xb1\x9b\x37\xc6\xd6\xe1\x59\xe8\xa0\xe9\x23\xed\xa6\xe6\x1a\xe0\xa5\x09\xf7\x6a\xee\x85\x87\x99\x75\x6e\x6a\x16\x0a\x83\xbc\x1c\x93\x98\xa2\xf0\xf4\x0e\x0b\xc4\xb6\x22\x81\x7c\xfc\xad\xe6\xa7\x06\x54\xcf\xfc\x22\x02\x61\xd9\x51\x95\x55\xdc\xb4\xb4\x99\xbb\x2e\xdc\xcc\x4d\xdf\x4c\xc3\x90\x0e\xce\xdf\xe9\x7d\x3f\x75\x1f\xc1\x95\x3d\x70\xd5\x9a\x82\x4f\x0d\x16\x01\xaa\xcd\xbd\xb7\x17\xd9\xb1\x31\x42\x5d\x04\xd2\x3e\xfb\x8e\xf4\xf7\xd9\xee\xae\xf5\x7f\xa1\x43\xa6\x23\x37\x35\xcd\xe9\x7d\x94\x99\x9d\x43\x60\x70\x99\xd9\x3e\x61\x6c\xb6\xf5\xa0\xdb\xdd\x2b\x8c\xa2\x6c\xb1\x56\x4f\x98\x36\xe9\xae\x37\x69\x09\x4d\x52\xa6\xe7\xab\x0f\x6b\x1f\x06\x76\x04\xff\x5e\x2c\x79\x9a\x65\x8b\x66\x7d\xa3\xfb\x6a\x91\xa5\x8f\x33\x96\x86\xed\x50\x21\x32\x61\xfb\xfd\xf5\x83\xe6\x9b\xcf\xd0\xc1\x07\x1d\x5d\x08\x3a\x49\x24\x9d\xee\xce\x68\x22\x97\x82\x36\xab\xf0\xc1\xe6\xd6\xac\xfa\xb4\xc9\x99\x70\x0a\x49\x27\xa6\x78\xfe\xe5\xca\x50\xe3\x3e\x36\x25\xc7\x14\x53\x08\x20\x32\xbf\x9b\x43\x5e\x4c\xc2\x84\x63\xeb\xf0\x48\x35\xde\xdf\x64\x4e\xd5\x05\xed\x21\xf8\x3d\x7d\xaf\x9a\x51\x4f\x1f\x8d\x9e\xd5\x7d\x36\xc6\xb4\x97\xa4\x2c\xc9\x9b\xae\x51\x3f\x83\xa3\xf0\x29\xc0\x56\xbd\xd6\x86\x2b\x37\x75\x76\x48\x35\xd9\xb3\x6d\xe0\x12\x3f\x4d\x32\x3e\x63\xb7\x4b\xa7\xf6\x0e\x95\xe0\x7b\x38\xaf\x80\x3c\x5c\x1b\xf8\x0c\xc8\x99\xd2\xa2\x22\x7f\x6b\xbf\x41\x45\x01\xfd\x53\xb7\x47\x48\xb1\x77\x49\xf5\x04\x90\xb7\xe6\x8f\x9f\x99\x9c\x9b\xf4\x3b\x2d\x21\xa3\x6f\xa9\xf3\x71\xad\xa3\x20\x38\x08\x36\x5e\x68\xbd\x35\xb9\x56\x15\x4b\xf1\x58\xd5\x89\xa8\x0a\xcd\xb7\xd7\xd6\x6c\xbc\xdd\x87\xde\x69\xf7\xc5\x43\x49\x1e\x28\x18\x0d\x17\x69\xd9\x41\xcd\x85\xd1\xbb\xe6\x21\x6e\xee\x9e\xa2\x4e\x39\xf0\x9b\xa2\x83\x47\x6f\x92\x1e\xb8\xba\x0c\x34\x6f\xe1\x6b\x3f\xe3\xe7\x89\x64\x0f\x14\xca\x91\x47\xd5\x6e\x32\x9d\xc2\xaf\x0b\x73\xda\xb6\xf5\xfe\xd6\xb6\xf0\x01\x03\x4a\xac\x45\x10\xfe\xb4\xc2\x27\x76\xf0\x10\x53\x76\x94\x71\x49\xb9\xfc\x99\xa5\xe9\x11\x1c\xa6\x64\x4e\x2b\xef\x8e\xd9\xd4\xbc\x5a\xa8\x57\x34\x99\xcc\xdf\x8a\xec\xe3\x23\x34\x1b\x14\x6c\x98\x36\xe0\xb2\xef\x9c\x27\xad\xd7\x6f\x75\xbb\x4c\xb7\xe1\xcb\xbb\x62\x45\xad\x11\xdf\x83\xcf\x6a\xc3\x15\x2f\x35\x91\x4c\x9d\xb8\x42\x3e\x60\xaa\xae\x90\xcd\x17\x38\x4b\x8e\x60\xac\xb0\x46\x11\x14\x1c\x50\x01\x59\x6e\xef\xb9\x9c\x9f\x35\xd9\x30\x96\x15\x5f\x62\xdb\x49\x1b\x5e\x09\x14\x59\x76\x77\xf8\x0b\x53\x03\xeb\x90\xd6\x45\x8c\x70\x46\xa4\x4f\x8a\x01\x56\x5b\xd7\x47\x9d\xdb\x00\x33\x4f\x5c\x6e\x8e\x4e\x60\x9b\x71\x8d\x17\x4d\xae\x80\x23\x9e\x67\xbc\xd1\xef\xdd\x38\x59\x17\xf0\xd1\xc9\xfd\x42\x3e\x92\xef\x35\x0f\x7d\x99\x26\xfc\x8e\xbc\xa7\x1d\x0a\x5a\x7e\x9a\xab\xca\xea\x35\x6c\xbf\xa7\xc6\x92\x7f\x43\x6f\x19\xb7\x6c\x4b\x2f\x63\x4e\x26\x00\x40\x0c\x3f\xcc\x2b\x46\x73\x32\x05\xf2\xe4\xd3\xea\xd7\x33\xf5\x9c\x67\x92\xcd\x1e\xcb\xaf\x48\x4a\x81\x85\x86\x9c\x91\x5c\xe8\x8e\x9a\x8c\x04\x5e\xc1\x41\xfe\x54\xb5\xc0\xde\x55\x0f\x8f\xe9\x24\x13\x89\x7a\xfe\x12\xea\xb0\x9f\x9d\x66\xc2\xbf\x3a\xaf\xbe\x72\xad\x1c\xeb\x13\x45\x49\xa0\x2c\xa8\xeb\xb5\xe6\x65\xb5\xe7\xa7\xe6\xf4\x98\x27\x8c\x5f\x27\xb7\xf9\x69\x26\x7e\xa4\x8f\xe4\x83\xe1\xa5\xc1\x24\x34\x79\xb3\x3e\x15\x98\x7b\x82\xc0\x8c\xec\xc1\xfd\xbb\x4a\x53\xdd\x6e\x99\xa9\x01\x94\x26\x23\xfd\xb0\xf0\x70\x6f\xa4\xef\x66\xfb\xec\x5b\x17\xf9\xc2\x76\x76\x90\x18\xf2\x21\x1b\x8d\x34\xd3\x56\x7f\x06\x11\xf4\x7a\x50\xad\x9d\x0c\xd0\x61\x56\x2b\xeb\x52\xee\x32\xa1\x05\x52\xa9\x15\xef\x68\x29\x8b\x87\x93\x55\xb1\x83\xa1\xb8\xa3\x8f\x6a\xbb\x61\xa6\x84\xba\x4a\x3f\x89\xea\x1c\x86\x93\x40\x60\xb5\x55\xc0\x92\x2b\x81\xeb\x7c\x5c\x24\x8e\x7c\x54\x3f\xaf\x34\x7d\x54\xac\x47\x4e\x4a\x05\xac\x98\x16\x8e\xa0\x04\xfd\x06\x93\x51\x5c\x4b\x57\xa7\x8d\xd5\xf5\xef\x70\xd8\xde\x61\x2f\x67\x7f\x52\x75\x9b\x3e\xec\xe9\xb4\x96\xaa\xb5\x3b\xf7\xf4\xce\x3f\x2d\x14\x3b\xd0\x49\x44\xbd\x97\x87\x19\x43\x84\x25\x7e\x45\x01\xf9\x4b\x73\x40\x77\x6a\xbc\xc5\x3a\x97\xd5\x43\x22\xa9\x7b\x78\xed\xb8\x80\x7b\x74\x89\x69\x6f\x96\x2e\xf3\xf9\x61\xfe\xc8\x27\xf6\x71\xe5\xde\x5b\xbe\x8a\xd9\x54\x02\x30\x5f\x06\x97\x17\xc5\x79\xef\xe8\xdd\xe5\xe5\x89\x86\x81\x85\x89\x3b\x0a\xe0\x81\x3a\x47\x44\xe2\xbb\x06\x7d\x5f\x90\x55\xb6\xc2\x8f\x39\xea\x80\x7a\xac\x71\xd2\x57\x2b\x56\xb7\xf6\xa1\x03\x37\x6d\x1c\x0d\x64\x63\x6b\x06\x87\xde\xf6\x9c\x99\x7c\xb1\x06\x5c\x2f\x4d\x72\x79\x49\x1f\x98\x12\x78\x5d\x58\x64\x68\x0e\x13\x8f\x4f\x57\x10\x6d\x38\xe4\xea\xfa\x9d\xc8\xf9\xc8\xb8\x75\x63\x86\x8a\x19\xe3\x49\x9a\x3e\x3e\x49\x0b\xe0\x97\x7b\x00\xbf\x0f\x34\xb6\x45\x14\x79\x96\x9a\x2a\x4d\xa4\x4e\x73\x5c\x14\x1d\x7a\x50\x5d\x75\x93\x91\x3e\xc2\x19\x1a\x64\xb1\x12\xc9\x20\xd9\x1d\xa6\xbd\xfb\x9a\xa6\xde\x63\xb3\xd4\x8e\x1a\x11\x66\xec\xfc\x6e\xef\x40\xee\xee\x0d\xfa\x08\x73\xb2\xb7\xcf\xbf\x95\xa0\x9f\x10\x43\xbe\xbb\x17\x1e\x3a\xdc\x39\x41\x3d\x48\x7d\x1b\xa3\x5a\xe0\xaa\x4a\x29\x7f\xf1\x21\x67\x20\xae\xcd\x51\xd7\x69\x40\x0d\x58\x1e\xc4\x8c\x2c\x71\x42\x24\xce\xc9\x76\x66\x41\x5b\x4f\x0f\xdf\xbd\xbe\x1e\x1f\x5e\xfd\x7a\x7e\x34\xbe\x78\x79\x75\x72\xf9\xfe\xe4\xf2\x0a\x0d\xd4\xb7\xbd\x19\xc7\x09\x59\x2a\x59\x9b\xf2\x29\xe5\xf2\x47\xfa\x98\xe3\x9c\x2c\x41\x33\xe9\x55\x55\x29\x19\x8e\xf0\xa4\xe9\x3c\x4c\x6d\x84\x50\x81\x67\xa4\xbf\x3f\xfb\xd6\x62\xfa\xec\xef\xec\xcc\xd0\x15\x8d\x93\xe1\x6c\x84\x27\xa8\x72\x2c\xbb\xed\xa5\x8e\xe5\x27\x45\x0a\xf9\x20\xd5\x3a\xd5\xbc\x30\xa7\x34\xf8\xe2\x69\xc3\xcb\x83\x54\x87\x0a\x57\x1c\xf0\x6f\x5e\x5a\x3d\xd5\x19\x4e\xc8\x9f\xb1\x40\x38\x27\x89\x35\x2c\x88\x61\x7f\x84\x97\x24\x4e\x56\x2b\x31\xdc\x1b\xe1\xba\x47\x1d\xa4\x0b\xbd\xa5\xf2\xc2\x44\xc9\xf8\xa4\xd6\x00\xf0\x05\xe8\x28\xde\x37\xc1\xb8\xac\xd3\x9d\x68\x10\xed\xc4\xf9\x6a\x25\x11\xb6\xd0\x3a\x2c\x88\xf2\xc8\x0a\x54\xa0\x4e\xdf\x84\x35\x1c\xd3\xf8\x49\x67\xdf\xcc\x6b\x08\x05\x17\x16\x05\x50\xfb\x1c\x43\x90\xa6\x6d\x2f\x39\x48\x63\x18\x01\xf4\x5d\x0c\x5f\x8c\xd0\x20\x2d\x74\x3e\xe8\xf0\xf4\x66\xd4\xf9\x0c\x5e\x97\xdf\x64\xd4\x7d\x5d\x3f\xe5\xd6\x85\x4b\x59\x29\x33\xb0\x7c\x00\x83\xbb\x37\x47\xcb\x00\xb4\x4e\xdb\xbc\x81\x8d\x39\x0f\xc2\xc0\x5c\xea\x33\xd2\xe5\x95\x4c\x50\xb4\x77\x9f\x88\x3b\x7d\x50\x1e\xe6\xc7\x4c\xf5\x3a\x81\xf1\x64\x3c\x5f\xde\x53\xf2\x5b\x87\xea\x64\x59\x74\x4a\xbe\xc2\xe6\x6f\xf2\x03\xa6\x36\x1f\x17\x91\x5a\x44\xb2\xc9\xba\x08\x35\xb7\x98\xe6\x18\x9f\xaf\x54\xc1\x85\xc8\x26\x34\xcf\xa9\xff\x26\x27\xdb\x7d\xfc\x0b\xf5\x3b\xc3\x44\x89\x5d\x67\x57\xe0\xd0\x48\x84\x22\xe7\x19\xe3\x2d\xd5\xfe\x48\x57\x2b\x19\x40\xfc\xff\x40\xc1\x94\x59\x29\x92\x93\xdf\x54\xe7\x4c\xf3\xbe\x26\x2a\xfd\xd3\xc3\x34\x0d\xbe\x97\xd2\x9d\x7a\xeb\x62\x96\x60\x8f\xde\x6a\x1c\x53\x38\xfa\x4d\xb6\xe9\x1f\xe8\x50\x8e\xd4\xb8\x8c\xce\xfb\x17\x1f\xcf\x44\x11\x58\x57\xb6\x18\xdf\xca\x80\xd6\xe9\x47\x1b\x14\xd9\xed\x52\x42\x48\xf5\xe9\x50\x8e\xc0\x38\x53\x7b\x6a\xa8\x04\x69\x01\xdb\x75\xf3\x8a\x26\x62\x32\x3f\xd6\xe9\xd4\x9a\xdc\x39\x7e\xa4\x46\x16\xdb\x58\x04\x26\x98\x58\x9d\x86\x5e\x9e\xf3\xc3\x37\x27\x57\x6f\x0f\x8f\x4e\xae\xc6\x2f\x7f\x1d\x9f\x1d\x93\xf0\x11\x09\x74\x11\x6f\x96\x12\xb0\x8a\xf3\x33\x7e\xb8\x94\x99\x34\x74\x72\x2d\x12\x9e\xeb\x33\x89\xd0\x9e\x58\xf2\x75\xaf\x81\xb8\xa8\x20\xb4\x77\xf4\xee\xea\xfa\xe2\x8d\x22\xde\xf1\xe9\xc5\x25\xa1\x3d\x8d\xb0\x7d\x76\xfe\xc3\xc9\xd1\xf5\xd9\xc5\xf9\xf8\xf4\xdd\xf9\x91\x4e\x3e\x63\x74\x27\x6f\xb4\x5e\x8e\xf6\x34\x5f\xa4\xbd\x32\x57\x27\xb4\x77\x58\x7b\xf2\x9a\xdd\x88\x44\x28\xa1\x8f\xf6\xd2\xe0\xef\xb7\x97\x17\x6f\x4f\x2e\xaf\x7f\x1d\x1f\x9f\x1d\x8f\x8f\xbe\x3f\x3c\x7f\x75\xa2\x9f\xfe\xf2\xeb\xf8\xe8\xe2\xfc\xfa\xe4\xfc\x5a\xf5\xd1\xa8\x86\x1c\x1f\xa0\xbd\xf1\x6d\x9a\xdd\x24\xa9\xd7\x1a\x05\xfe\x71\x8b\x52\x70\xfd\x7d\xb3\x26\xf7\xc1\x13\xdb\x62\x7d\x2c\xaa\x0d\xb4\x5f\x94\xa2\x4d\x5d\x45\x8f\xe1\x5d\x60\xd1\xa4\xf9\xf5\x01\xa5\xc6\x1b\xc5\x17\xbe\x2d\xeb\x64\xee\xcb\xf7\x6c\xa7\x12\xb1\x5d\xb8\x37\x5d\xe0\x08\xe9\x33\xac\x92\xd1\xe8\x26\xec\xcb\x7d\xad\x2f\x21\x24\x66\xdf\xe1\x61\x1a\x0f\x99\xea\xe0\xf9\x41\x7f\xc0\x7d\xd5\xe3\xe0\xc0\xb5\xa3\xf4\x6f\x3f\xc0\x38\x8c\xa6\x30\x90\x51\x93\x6e\x37\x4e\x74\xda\xb1\xd5\xaa\x21\x11\x33\x5f\xad\x62\x46\xb8\xc1\x08\x44\xb8\xc4\x94\x2b\x36\xe4\x58\x37\x00\x39\x0e\x21\x6d\xa2\x6b\xfd\xc4\xb6\x6e\xb3\xfd\x26\x9d\xda\x61\xc0\x0f\xe2\x8c\x28\x49\x83\xa1\x81\xfa\x4b\x9d\x4e\x09\xe1\xd5\x26\x1b\xec\xcd\xb1\xc4\xe5\xe6\xae\xfc\x60\x03\x8d\x3d\x71\xf1\x9d\x89\x3f\x66\xb2\x83\x9a\x5e\x63\x90\x75\x34\x00\xc8\x36\x21\xc9\x41\xd2\xa8\xc9\xb0\x91\x04\xa5\xca\x57\x2b\xf8\xc7\x66\xc5\x71\x17\x1d\x2b\x80\xe4\xee\xdd\xee\x37\xfb\xf9\x77\xa4\xbf\x9f\xef\x92\x6f\x74\x97\x96\x84\x0d\xf3\x11\x4e\xd5\x3f\x3b\x7b\x4a\x8e\x52\x7f\xbc\x18\x75\xd2\x6e\x37\x9e\x74\xbb\x7a\x06\x97\x38\x45\x78\xb9\x5a\xc5\x4b\x42\x11\xae\xb9\xbe\xab\x6f\x53\xb2\x1c\xa6\x23\x84\x53\x97\x36\xda\x1b\x80\xb6\x03\x6c\xbf\x8b\x10\x30\x67\xc7\xd9\x92\xc0\x24\xf1\x71\x93\x60\x88\x0f\x2d\xc5\x77\x6a\xdc\xe5\x10\xe8\xf6\xce\x7d\xe0\x5a\x7c\x1b\xae\x8a\x5f\x00\xc5\xe2\xc9\x47\x64\xd2\xc7\x5d\x28\x4a\x57\xc4\x9a\x68\x5a\xda\xc3\x19\x0a\xbd\x65\x4b\xd7\x4d\xb3\x48\x79\xb7\x1b\xe7\x55\xaf\xc9\x98\xa2\xd5\x2a\xaf\x38\x60\x42\x3a\xf4\x6b\xa8\x3d\x0b\xe8\xe5\xf2\xb9\x3d\xc3\x7f\x5d\x2f\x6a\x3a\x5f\xc7\x00\x00\xe7\xcc\x3a\x39\x70\xa2\x53\x86\x1e\x1c\x0e\xee\x5c\x32\xfc\xb6\xa8\x65\x66\x59\x45\xa6\x7d\x8d\x77\x77\x71\xdf\x9c\xab\x4b\x2e\xe1\x76\x68\x2e\x7c\x12\x61\x4d\xab\xea\x06\xdd\xed\x72\x7f\x7f\x46\x45\x61\xe6\x07\x9f\xd8\x65\x08\xa6\xea\x7a\x63\x7f\x9b\x34\x30\xdb\x5a\xa2\x3b\x1c\xdc\x79\xd1\x76\x9e\xe4\x30\x3b\xc2\xb2\x4c\xe3\x08\xa4\x13\x66\xe9\x9b\xbc\x0d\x1a\xb6\x0e\x7a\xd6\x5b\x50\x0f\x68\x67\xc7\x5b\xe3\x19\x91\x16\x75\x6f\x10\x21\x25\xc3\x66\xf5\x1b\x25\xc5\x0c\xa1\x8e\xe5\xcb\x4f\x50\xc9\x60\x0f\xab\x9b\xc5\x80\x61\x00\xee\xc1\xe1\x45\x73\x10\x5e\x34\x33\x84\xf3\x65\x0e\x57\xa0\xe9\x60\x7b\xaf\x40\x45\x51\x3f\x48\xef\x60\x12\x8e\xc2\x6c\x7a\xbf\xc7\xe8\xe9\xb0\xe1\x72\xdd\xae\x5a\x95\xa8\x03\xa7\x4a\xcb\x55\xbe\x49\x06\x3e\x38\xf4\x2b\x3b\xa0\x8d\xad\x99\xab\x3c\xed\xb9\x51\x74\xbb\xd5\x8b\xbd\xc6\xe5\xa6\x95\x8b\xbd\xba\xc6\x07\xc5\x94\xe0\x7a\x05\x9a\xfd\x21\x48\x91\xe1\xad\x9e\xfb\x5b\x3d\x6d\xbe\xd5\xdb\x22\x90\x26\xbc\xf5\x56\x4f\x75\xe2\x9b\x52\xab\x7b\xf6\x02\xef\xa6\xf6\x4d\xf9\x70\x3e\x0c\x36\x47\xc5\xc1\x54\x6d\x5e\xab\x20\xf1\x55\x0a\x93\xc8\xfb\xac\x59\x02\x39\xd6\x6c\xc1\xd6\x14\x1c\xbc\xf5\x33\x83\x37\xc0\x84\x6e\xb1\xaa\x1f\x5b\x49\xb4\x38\x0f\x38\xf0\x59\xed\xc0\x7e\x5d\xd1\x27\x6f\x13\xda\xfd\x7f\xa9\x7b\xd7\xfe\xb6\x71\x2c\x4f\xf8\xbd\x3e\x85\xcd\x99\x1f\x9b\x58\xc1\x8a\xdc\x33\xcf\xec\xae\x1c\x94\xd6\x95\xa4\xa6\xd3\x5d\xa9\xa4\xe3\x54\x5f\x46\xa3\xd5\xd0\x12\x64\x61\x42\x93\x2a\x10\xb4\xcb\x6d\xf1\xbb\x3f\x3f\x1c\xdc\x49\x48\x96\x53\xa9\xe9\xd9\x7a\x51\xb1\x48\xdc\x09\x1c\x9c\xeb\xff\xa4\x6f\xf5\xa9\xf1\x50\x57\xf5\x3e\x0a\x39\x22\x79\x9f\xbf\x8d\x98\xc0\xff\x96\xed\x01\x00\xa6\xb3\xdf\x5a\x8d\xc5\x3f\x81\xcb\xbd\xd1\x89\x66\x11\x1d\x82\xa7\xa7\x74\xcf\xac\x2c\x27\x50\x24\x2a\x4b\x52\x89\xfe\x95\x6f\xeb\x94\x69\x9a\x38\xf3\x5b\xc2\x4a\xf9\x2e\xf1\x0d\x74\xf0\x6c\xb7\xf3\x2c\x61\x6e\x5a\xdf\x7a\x96\xfd\x1e\xd3\x4f\x5b\x33\xb1\xef\x00\x8c\x08\xbe\xf8\x8f\x7b\x22\x29\x4c\x9e\x74\x3b\x14\x9b\x66\xd6\x1f\x8b\x7d\xb8\x08\x74\x22\x9d\xb0\x08\x2a\x72\x3f\xfa\x60\x0f\xb2\x50\x4d\x45\xb3\x8d\x18\x76\xca\xbe\xf3\xa1\x8a\xe3\x04\xb0\x0c\x41\x73\xbe\xaa\xee\xfb\xc0\xac\x11\xb7\x46\xb9\xe9\x3a\x98\xdb\xbf\x0b\x4c\xb7\xb1\x50\x1f\xa0\xb3\x3a\x40\xd0\x2d\xf4\x9f\xa2\xc8\x7b\x3c\x0c\x3c\x32\xfa\x05\x8e\xec\xca\xff\x64\x9c\x49\x39\x2c\xc5\x4f\x44\xe1\x84\x2d\xe4\x91\xbb\xa2\xc2\x0d\xec\xcf\x3e\x59\xf4\xb5\x9e\x3e\x50\xf6\x3f\x45\x94\xf7\xbe\xb6\x40\x48\x16\x8e\xaa\x95\xd5\x75\x73\xc3\x44\xf8\x91\x4e\xd4\xfb\xce\x38\x30\x06\xd3\xe0\x73\x83\xb1\xf7\x77\x59\x09\x89\x5a\xa9\x98\xfc\x09\xfe\xb4\x93\xab\xbd\x0d\x06\x65\xb4\x16\xbe\x0e\x1c\x56\x94\x3a\xd3\xfc\x46\xb8\x84\x95\xf8\x57\xfc\xd7\xc1\x13\xb2\xe0\xbf\xe2\xe7\x89\x96\x7f\x85\x99\xfe\xe1\xf0\x06\x87\x70\x1c\xed\x5a\xea\xa0\xe4\x89\x75\x4a\xd9\x13\x2a\x93\xaf\x56\x7d\x27\x59\xd9\x96\x76\x84\xf6\x9a\x02\xc7\x72\x4d\xf8\x3b\x6e\x7d\xd6\xd1\x0e\x6a\x4a\x0e\x04\x45\x95\x35\x92\xa4\x9e\xef\x2d\x6b\xbb\xd2\xae\x80\xb3\x79\x80\x8b\x04\xe5\x23\x2a\x6d\x2f\x8e\x17\x54\x2f\x02\xec\x1f\xe1\x35\x25\xe5\xfd\x03\x8e\x52\x72\x14\x7b\x92\x71\x9e\x84\x63\x8d\xe4\xe1\xfc\xc7\xaf\xa8\xf2\x95\xf7\xf9\xdf\xe4\xcd\x66\x7d\xc8\xc6\x73\xc9\x24\x4e\x4b\x48\xd4\x0d\xfc\xa6\x0b\x81\xae\xe0\x85\x72\xf1\x30\x48\xac\x71\x5f\x8e\x3f\x66\x33\x70\x90\xf0\x1b\x61\x1e\xcb\x6a\x0b\x56\x72\x82\xde\xf6\xcf\x11\xce\x5b\xdb\x88\x7f\xf3\xfc\x51\x6e\x17\x79\xe7\x0c\xcc\xf5\x73\xae\xae\x9f\xdf\xca\x11\xf3\x29\xdf\x33\x62\x4f\x4f\x90\xc7\x40\x70\x99\xc9\xfa\x10\x46\x30\x76\x5d\x3b\x62\x3e\x6d\x98\x13\x66\x53\xd9\x98\x39\xfc\x1b\xc0\x21\xa5\xe9\x69\xa5\x78\x4e\x49\x70\xa7\x19\x25\xcc\x85\x5a\x23\x5c\x79\x64\x0e\xa1\x09\x25\x95\xa5\x97\x08\x67\x5d\xd7\x08\xc8\x24\x59\x82\x25\xf8\x9a\x72\x78\x2a\xb7\x98\x42\xe6\xad\x6d\x56\x7d\x8e\x99\xe4\x50\x93\xd9\x3c\x51\x71\x19\x5d\x07\x94\xdc\x0e\x36\x1c\x80\x01\x39\xe1\x34\x4d\xb9\xc2\x7b\x74\xfa\xa3\x3f\xc0\x7a\xff\x45\xa1\xc7\xd8\xaf\xf1\x7b\x77\x61\xfe\x45\x2b\xc1\xff\x30\xf8\x0b\xe1\x03\x60\xf5\x32\xc7\xc4\x8d\xf1\x5f\x88\xb0\xa8\x46\xe6\x84\x64\xde\x87\xfd\x37\x2f\x23\xf0\x5f\xd2\xf4\x2f\x26\x24\xc2\xd1\x1c\x9a\x75\xf3\xcd\xfe\xc5\xbd\x05\x99\xc3\x0c\x65\xa0\xc7\xd9\x1d\x85\x1c\x83\x22\x4b\x26\x05\x17\x55\x0a\x48\x1b\x3b\x19\x2a\xc9\x12\xef\xbc\x31\x1a\x00\x1b\x69\xc5\xb3\x49\x4c\xe6\x6d\x28\xc2\x7d\xae\x46\x8a\x35\x36\x25\x6e\x64\xdf\xd1\x59\x49\xe7\x53\xf8\x3f\xdc\x37\xaa\x97\x49\x47\xdb\x6c\x47\xa1\xde\x7b\xc6\xbb\x2e\x33\x69\xf5\xdc\x25\x0a\xc2\x8c\xc0\x5f\x81\xcd\x84\xf2\xc6\x33\xb4\xaf\xd2\x32\xa9\x22\x5b\xb1\xc8\x1e\x87\xca\x2b\xe6\x24\x77\x03\xc9\xe9\x61\xa6\xd6\x8d\x43\xf6\xeb\x47\x06\x65\x9e\x73\x49\xa5\xf7\xae\xce\xee\x55\x99\x64\xe9\x41\x05\x39\xf6\x82\xd8\x3a\xcd\xb4\x99\x89\xf9\xc4\xa8\x01\x2d\xa2\x52\xd8\x54\xe1\x25\x45\xad\x0c\x3e\x3f\x21\xa4\xd8\xed\xf2\xd1\x75\xbe\xfc\x7c\xdd\xf0\x92\xf2\x11\x2d\xeb\x86\xbb\x5c\xaf\xa8\xed\x29\x4a\x4b\x95\xeb\xa4\xee\x6e\x95\x88\x46\x13\x02\x6e\x63\x9a\xce\x5a\xb5\xd1\x50\x5f\xa0\x2b\x68\x47\x9b\xf5\x94\x64\xa0\xf7\x11\xe8\x13\x7a\xaa\x80\xdd\xae\x8a\x28\x0d\x24\xd1\x70\xd5\xf4\x47\xab\x10\x6e\xe8\x4b\x32\x4e\xd3\xff\x84\x64\xb0\x27\x0c\x92\x69\x65\xff\x1c\xe3\x87\xe8\xac\x96\x5b\x13\x33\x34\xd1\x7f\x22\x5f\x74\x92\x6b\xf6\xd8\xd0\xe1\xd0\x3d\x5a\xcb\x47\x67\x67\xae\x0b\x2f\x11\x3b\x9c\x52\x59\xa7\x77\x36\xd7\x40\x71\x9c\x93\xad\x87\x4c\xd2\xd3\xd6\x4e\x33\x41\xc6\x92\xde\x90\xb3\x73\x34\xc9\x3a\x2a\x84\xb3\x73\xef\xdb\x2b\xb5\xea\xd9\x39\x42\xf8\x4a\x52\xc5\xff\xa3\x20\xc0\xaf\xe9\xba\xe2\x34\xc1\x33\xdd\x09\x5c\xaf\xb6\xf3\x2d\x3d\xa0\xc8\x91\x32\x51\x77\x28\x25\x61\x9d\xa1\xd8\x7e\x71\x27\xea\x44\x0e\xc5\x9d\xba\x8e\x0a\x48\xf6\x90\xb1\x97\xe3\xdd\xae\x94\xff\x63\x67\xe5\x29\x19\xa3\x34\x85\xad\x92\xa8\x2f\x92\xe0\x1c\xe1\xc2\x90\x78\x9c\x77\x66\xa6\xf5\x6f\x6a\x66\x90\x9a\x44\x73\xac\x8b\xae\xba\xa7\x36\x1a\x43\xe5\x15\x3e\x1d\x4f\x4a\x5c\x38\x67\xde\x2c\x83\xe7\x6c\x3a\x9e\x30\x74\xd6\x20\xbc\x24\xe2\xe5\x78\x5a\x0c\x85\xb2\xa1\xd5\x0a\xcc\x78\xcd\x78\x2d\x14\xa7\x9a\xa0\x34\x95\x13\x5d\x9a\x01\xfb\xef\xe4\xa8\x75\x15\xc9\x6c\x99\x1a\xa8\x38\x3b\x7f\xb9\x1c\x36\x76\x8e\xb9\x5f\xc3\x39\x75\xcb\x91\xde\x52\xe3\x98\xb2\xe6\x94\xfe\x8d\x66\xb3\xb9\x47\xa0\xef\x68\xc0\x7b\xf4\x1c\x0b\xa9\xa4\x1a\xce\x57\x31\xe0\x2a\x3c\xa7\x43\xc9\x58\xba\xcd\x67\x74\xb0\xf6\xaf\x97\xe4\x5f\xe8\x3f\x23\x63\x96\xd2\xba\x51\x8a\x67\x02\xf3\xb9\x49\x0d\x50\x22\x1d\xa8\x63\xad\x57\x10\x3f\xe4\x1c\xa6\x3b\xde\x34\xd0\xa4\x26\x01\xa5\x86\xe1\x63\x98\x0d\xe5\xe3\x41\xa4\xab\x21\xc3\x63\xdb\x59\x85\x50\xdb\x6e\x7b\x03\xf6\x2c\x0f\x34\x88\x81\x82\x5e\x78\x9a\x72\x48\x8a\xab\x1c\xb8\x76\xbb\xa4\xe3\x45\x98\xe0\x5c\x15\x5a\x19\xa7\x3f\x53\xc6\x7a\x01\x26\xb8\x26\xe0\xee\x17\xf8\x4d\xda\xbc\x85\x65\xe4\xb4\x01\xe9\x29\x23\x9b\x55\xc0\xee\x50\x67\x44\xed\x83\x5e\xbb\x49\x70\x42\xaf\xbb\xf7\x60\xf7\x28\xe1\xca\xa8\xde\xd9\x94\xc5\x83\x3d\x9d\xfa\x3d\x38\x16\x15\xf2\xfc\x11\x23\x8e\x54\x65\x9a\xc6\xec\x1b\x36\x34\x23\x07\xc3\x24\xd2\x76\x4c\x88\xd2\x92\x9b\xe1\xc4\xbc\x6f\xd4\x7b\x9d\x60\xbb\x9a\x35\xf3\x8b\x80\x7f\x2b\x70\xc4\x83\xa5\x41\x08\x61\xdb\x64\x33\xf7\x28\xe5\x82\x76\x23\x96\x67\x73\x1c\x09\xf7\x51\x01\x72\x7a\x1b\x71\x0c\x6a\x4c\x31\x2b\xe7\x1e\x5a\xaf\x67\xe6\xe9\x34\x0a\xa4\x50\x36\x9c\x13\x0a\x7e\x21\x5a\xcc\x28\xc8\xd9\xf9\x85\x0e\x46\x5c\xda\x84\x12\x3e\xbc\xa0\xbf\x82\x92\x32\xf8\x6b\x47\x96\xe8\x9a\xd3\x5c\x29\x3b\xd7\xa4\x18\x9e\xab\x20\x3b\x42\x48\x56\x10\x2f\x42\x65\x94\xe0\x35\x30\xba\x05\x69\x10\x4e\xfe\x0f\xcd\x97\x1b\xc9\x5c\x65\x25\x11\xfa\xc0\xac\x71\x21\x4b\x00\x4a\x1f\x7a\x84\xc6\x70\xbf\x0d\xe8\x69\x45\x8c\xdf\x88\xec\x2e\x29\x1b\xc9\x4f\xbb\x4f\xb9\xda\xed\x3a\xf9\xa8\x72\x94\xa6\xa7\x46\xed\x74\x29\x12\x56\x9e\xe4\x48\x0f\x5d\xcb\xa1\x2b\xf4\xa8\xa3\xf9\x18\xcd\x72\xcd\x7d\x0f\xa0\x48\x5b\x2a\x0a\x5b\x4c\xed\x58\xd1\xc4\x1f\xb6\xa5\x0c\x1b\x32\xbe\xd8\xbc\x5c\x5d\x6c\x4c\x38\xcf\x96\xdc\xc9\xd6\x36\x68\xb0\x4d\x53\xd7\xfe\x16\x6c\x31\x7b\xfb\x03\x5a\x49\xe0\x79\x09\x24\x9f\x91\xd7\xf0\x37\xd6\x55\x6e\xfd\x5b\x69\xb7\x33\x4a\x36\xbb\x02\x6c\x94\x17\xe2\x0f\xf4\x01\x88\x21\x80\x53\xba\xc9\x7a\x36\xb0\x9c\x94\x72\x2f\xe7\x51\x83\x5f\x3e\x6a\xca\xcf\x65\x75\x6f\x9d\x4e\xa7\xf9\xac\x9c\x4f\x7a\x8f\xb3\xd2\x8b\x6a\xbc\x23\xd7\x76\xd0\x5d\x9d\xf2\x2d\xbe\xd3\x02\xea\x03\xf1\x58\xcc\x1c\xc5\x63\xc9\xb3\x12\xe1\x1b\xb9\x3b\x9a\xeb\x5a\xf0\xac\x18\x9e\x23\x7c\x4f\x1e\x66\x37\x73\x67\x73\xbd\x4f\xd3\x4c\x3d\x3b\xc0\x01\xdb\x55\xbb\x37\xeb\x9b\x93\x85\xec\x56\x8a\x6a\x25\x6a\x5b\x38\xdd\x6c\x9d\xe5\x24\x87\x04\x90\x6e\xbd\x5a\x2b\xde\xca\x61\xbf\xa1\xe4\xc5\xbf\x8f\x60\xef\xfe\xe3\x0b\x2f\x51\x29\x0d\xb3\x09\xd8\x0d\xfb\x98\xa0\x01\x7f\x39\x9e\x8a\xcc\xf9\xc1\xbf\xa1\x38\x19\xc1\xb7\x9e\x78\xca\x98\x90\xba\xe3\x1c\xd7\x84\xbb\x76\xda\x04\xe1\x86\x8c\x71\x41\xb8\x5e\x0d\xc9\x30\x96\xc3\x73\x5c\x23\x63\xeb\xc0\x89\xbc\xdf\xfd\xf7\xf5\xf0\x1c\x0d\xc4\x30\x78\x36\x96\x7b\x28\x27\x06\xa5\x5f\x39\xb0\x36\x2f\xf3\x0b\x94\x55\x64\x19\x8c\x1c\xbd\x1c\x4f\x59\x96\x89\x61\x31\x6b\x86\xc3\xf9\x70\x89\x62\x73\xa0\xb6\x00\x5e\xe2\x0a\x33\xd4\x66\x49\x82\xc1\xa3\xd4\xbb\xc1\xde\x1f\x62\xc7\x02\x69\xc3\x70\x56\xaf\x2d\x9f\xeb\xe4\x86\x7c\xd0\xa4\x69\x6e\x35\x9e\xba\x84\xf2\x74\x52\xc1\x2e\xe4\x74\x7c\x91\x51\x42\x88\x3a\xfd\x56\x6f\x95\xa6\xd9\x8a\x9c\x9e\x23\xfc\xbd\xbc\xda\xa7\xd9\x92\xa8\xda\x46\xbb\xb0\x1f\x1b\x49\xe0\xa5\x94\x5d\x4a\x95\x19\x1a\xf8\xfa\x82\x30\xdc\xec\x76\xa7\x92\x22\xac\xa6\x5f\x16\x55\xb2\xc2\x66\xcb\xcb\x17\x4a\x13\x53\xb4\x92\x41\x17\x73\x30\x7b\x17\xa4\x3c\x30\x26\xc9\x9f\xc4\x84\x85\xdd\x2e\x5b\x13\x8a\x3f\x03\x97\xb6\x46\x69\xfa\x19\xf6\xf8\x1a\xc5\xec\x40\x68\x9f\x61\x66\xfd\x0c\xc3\x4c\x8b\x10\xbe\xb4\xdd\x5d\xfe\x17\x74\x87\x70\x4c\x08\x97\x6c\xce\xeb\x60\xa1\xd2\x34\xf2\x10\x56\xaf\x50\x79\xfe\x7e\x56\x89\x19\xca\x11\xc4\x1c\x65\xe7\xf4\x9f\x70\x3c\x75\x94\x77\x01\xc9\x01\x78\x09\x2b\xa9\x87\x00\xde\x43\x9f\xd3\x91\xd4\x3f\x9b\x88\x0c\xe8\xf4\x73\x44\x08\x75\x0e\x34\xbe\xba\xe2\x83\x4f\x55\x30\xb3\xcd\xe2\x8a\x78\xca\x09\xd6\x51\x86\x11\x86\x6b\x52\xed\x76\xb9\x61\x09\x2e\x69\x26\xd0\xb4\x9e\x7e\xd4\x7a\x09\xed\x9e\xe8\x6e\x81\x8c\x13\xb9\xeb\x50\x9a\x56\xf2\x8e\x04\xaf\x2c\x8a\xfc\x6b\xde\x5b\xe5\x0e\xe9\x07\x69\xad\xf7\x54\x0a\x98\xb8\x4e\x53\x4a\x33\x79\xe3\xff\x5b\xa6\x35\x2f\x3d\x8d\x18\x8f\x6b\xc4\xb8\x64\x03\xa0\x16\x37\x4a\x30\x5d\x0a\x22\x61\x64\x01\xf7\x7e\xa9\x62\x73\x12\xc0\x35\xf0\x2d\xf9\x3d\xa6\x8a\xe2\x92\xf4\xbe\x92\x98\x5a\x6b\xf1\x28\x41\x13\x11\xf3\x94\x77\x7e\xf9\x7c\xb7\xe3\x23\x56\x5b\x7b\xab\x71\xd2\xe6\xe4\x03\xc0\x1b\xce\xd8\x1c\xb5\x7d\x5e\xcc\x46\x5b\x31\x63\x79\xf5\xdb\x90\x8f\xe0\x2b\x19\x9d\xce\x2b\x57\xdc\x82\x88\xc1\x02\x28\xb7\x37\x67\xd0\x41\x30\x45\xec\x00\xaf\x8d\xf3\x69\x3e\xaa\xa9\xe8\xc5\xd8\xd4\x69\xfa\x13\x1c\x55\x50\x64\x4a\x4a\xc3\x31\xb7\x22\xef\x29\x21\x59\xa5\xb6\x42\x84\x67\xa6\xbb\x9d\xda\x19\x51\x56\x01\x4c\x2c\x3f\x76\xb8\x05\xd3\x85\x0e\x81\xd5\x29\x2f\xd0\x24\x56\x18\xe4\x2b\x08\x96\xb3\x8b\xf6\x8a\x76\x63\x9b\xfc\x2f\x05\x3a\x29\x15\xc5\x93\x93\x8f\xca\xa0\xef\x0c\xaf\x16\x1d\xfc\x93\x64\xa1\x2a\xed\x3c\x70\x5a\x7a\xb9\x08\x0b\x9b\x8b\xf0\x37\x66\x10\x27\x35\x15\x27\xeb\x9c\x15\x74\x35\x39\x51\x0b\x20\xa7\x2c\x69\xd3\x49\xf2\x9b\x21\xd3\x49\xf9\x46\x09\x1a\xfe\x26\x39\x59\x56\x4d\xb1\x82\xcc\x85\xd7\x54\x25\x2f\x1c\xfd\x06\xb5\x5d\x8f\xb8\xcf\xd4\xb3\xff\xd3\x0c\x3d\x02\x15\x78\x17\x3a\x52\x3a\x15\xa5\xf5\x0e\xbe\x80\x83\xe5\x34\xcd\xca\x31\x18\x8d\x16\x77\x55\x91\x0b\x56\x50\x72\x7a\x8e\xf9\x68\x21\xe5\xa2\xf7\x65\xf1\xa0\x7f\x6e\xf2\xfa\x15\xdc\x3a\xfa\xf7\x0d\x15\x82\x5a\x4c\x79\x3e\x5a\xd4\xfe\x83\x81\x16\x0c\x3a\x89\x09\x25\x4b\x1d\xd1\xaf\xab\x5c\x94\x2a\x56\xab\x67\xc0\x65\xe8\x31\xec\x7e\x6c\x90\x39\xb4\x03\x7a\xbc\xd1\x0a\xb9\x41\x56\x8e\x8b\xcc\x49\x35\x70\x2f\x72\x49\x40\x77\xbb\xff\xa4\xde\x04\x60\x87\xb7\x6d\x90\x92\xaf\x24\x1c\x8d\x16\x26\xdd\xa0\x96\x93\x4a\x4f\xa5\xcf\xdb\x7d\x70\xac\x26\x4d\x6d\xdf\xd4\x55\x75\xed\xb2\x96\x55\x63\xeb\xcc\x33\x8d\xa9\x62\x1e\x0c\xab\x29\x87\x4f\x1d\x64\x86\x5d\x1f\xa7\x2c\xb8\xa1\x02\xf2\x51\xc8\x03\x1b\x68\x55\x2d\xe6\x10\xac\x8d\xe1\xf7\x75\x4e\x5f\xf5\x52\xaf\x45\xcc\xcf\x26\xf7\x47\xd2\x0f\xb7\xf3\x15\xaa\x7c\x5a\x79\x1b\x6d\xc2\x5b\xd4\xb6\xb8\x1a\xd9\x8d\xe6\x87\x71\x40\xb7\x6e\x0b\x8e\x5b\xc8\x3d\xac\xb7\x60\xaf\xa0\xdb\x9c\x50\x70\xdb\x8b\xcc\x35\x05\x3b\xdf\xac\x03\xa8\x2b\xeb\x2e\x62\x95\xad\xb9\xcf\x19\x11\xe4\x01\x72\xf6\xbc\x10\x6c\xa1\xab\x19\x05\x5b\xda\x15\xcd\xf8\xcb\xf1\x6e\xd7\x7d\xf9\x92\x58\x80\x41\xdf\xd2\x26\x17\x33\x66\xf0\xa7\x72\x90\x37\x3d\x10\xb2\x3b\x0b\x0f\x32\xb0\x28\x26\x66\xf9\x50\x17\x2c\x4c\x50\xae\x3e\x04\x04\xfb\xea\xd0\x02\x72\x97\x51\x49\xe3\x98\x8b\x01\xd6\x06\x29\x63\x36\x72\x02\x56\x8e\x95\x57\x29\x42\xcc\x18\xa2\x3c\xd1\xcc\x70\xd2\x40\x0a\x1d\xc4\x49\xde\x88\x6a\xda\x90\xdf\x07\xa1\x64\x8c\xf0\xfe\x90\x5a\x84\x26\x82\x1e\x55\xce\xed\xd6\xc8\x62\x19\xcd\x49\xc8\x09\x2a\x2d\x48\xa4\x34\x1a\x34\x4e\xaf\xde\x4c\x8b\x49\x58\x6f\xd6\xe0\x62\x8e\x5a\x67\x5d\xe8\x58\xd3\x72\xdc\x20\xac\x9c\x77\x7d\x7e\x32\x47\xd6\x78\x26\x0f\xa9\x56\x47\x31\x7b\x7d\xff\x5b\x96\xf7\xf8\x15\x16\xe7\x57\x98\xe5\x57\x98\xe1\x57\x58\xab\x1a\x8f\xa5\xc8\x08\xcf\x86\xc6\x69\x5c\xc0\xcd\xf4\x51\x3f\x7c\xc3\x79\xa5\xf2\x05\xe1\x53\xff\xa8\x07\x5b\x66\x59\x54\xd7\xd7\x94\x5f\x29\xdf\x1e\x7d\xc7\x1d\xd8\x62\xe6\xa1\x57\x01\xe8\x3f\x28\xf2\x97\x34\xb3\x8b\x60\x92\x2c\xd5\xb6\xa0\xde\x8d\x76\x13\x1e\xfa\xba\x9d\xe5\x67\xf8\xd8\xcf\x1c\xfb\x4a\x0c\x75\xec\x0b\x2e\xd6\xbd\x8a\xad\x59\xe7\xf8\x45\xaf\xfb\x57\x79\x29\x6f\x6d\x79\xd9\xcb\x8f\x70\x56\x95\xc5\xc3\x89\x21\x2f\xf2\xa2\x17\xf2\x7a\xaf\x4a\xcd\x02\x4c\x4e\x7e\x33\x54\x1f\xbd\xac\xb7\x74\x29\x40\x4a\x95\xdd\xbb\xf5\xdf\x17\x6a\x6e\xc4\xde\xa6\x28\xf0\x83\x66\x81\x0d\x2f\x88\x30\xf7\xa9\xec\x81\x56\xfc\x0d\x60\x0f\x19\xa4\xca\xa9\xe0\x71\x58\xcf\x70\x4b\x8e\x72\x18\x72\x21\x05\x03\x43\x14\x94\xbf\xdc\xe9\x58\x59\x71\x18\x89\xf7\x51\xe2\xda\x2d\xbf\xae\x72\x8e\x5a\xb6\xce\xf2\x34\x05\x65\xaf\xf5\x6f\xd3\x66\xbf\x40\x96\x0f\xae\x50\x75\xcc\xb4\xc5\xac\xc1\xa5\x3e\x23\x7d\xf7\x25\xa7\xc4\x3f\xed\x6c\x66\xcd\x06\x2e\x32\xd1\x8d\x6e\xd7\x1e\x8f\x5c\xf2\x5f\xee\x46\x36\x6d\x77\x2f\x65\x58\x39\x49\xf6\xfa\x17\x11\x3c\x95\xb7\x15\x6b\xb3\x1f\xd1\x20\x12\xcf\xf0\x4e\x19\x02\xdf\xee\xe1\xe0\xf8\xb1\xf0\xf0\x31\x4e\x84\x1b\x4e\xa4\x24\x3c\x06\x8c\x1e\xbb\x69\xf5\xcb\x1f\xd4\xed\x6d\x8b\xe8\x44\x23\x2d\x2e\xa3\x17\x79\xa7\x96\x29\xe2\xd5\xda\x7b\xdf\x9a\xd0\x3c\x4a\x74\x6d\x34\xea\x5c\xdf\xd4\x9b\xad\x6d\xef\xb6\x8b\x5f\xab\x2c\xfd\xba\x0d\x33\xc7\x71\xcc\x80\x29\x94\x0b\xdd\x6e\xf7\xd8\x4e\x32\xfd\x43\x03\x04\x47\xdd\x73\xb8\x71\xcf\xd1\x37\xd3\x3e\x0f\x1d\x33\x7b\x5d\xac\x6d\xb1\xaa\xe6\xb9\x1f\xf6\x5c\x2f\x4c\x1d\xcf\x2f\x50\xf9\xf6\xf0\x36\x83\x91\xdc\xf3\x7c\xab\x80\x2d\xae\x9a\x2d\xe5\x28\xfb\x4e\xd7\xf6\x15\x07\xaf\xe9\xd7\xf5\xfd\xf1\x5d\x7f\x14\x36\xca\x3b\xb0\xad\xe1\xb7\xee\x14\x96\x2a\x47\xb5\x98\x9d\xcb\xff\xfd\xd6\x09\xaa\xb6\x82\x80\xf2\x20\xa0\xfc\x40\xc9\x6b\x3a\xba\x66\xe5\x4a\xa1\x6e\x0e\x22\x61\x3c\x3f\xa8\x93\xf0\xfd\xff\x3b\x27\xa1\x2a\xe9\x9f\xf3\x43\x75\x54\x81\xec\xe8\x5d\xab\x4d\x07\xdd\xef\xe7\x20\xa0\xec\xc6\x1d\xd8\x7d\xdb\x1e\xb3\x55\xf0\x77\x7b\x57\xd5\x70\x95\x2e\x23\x78\x4c\x4e\x54\xea\x7f\x22\x70\x5c\xe6\x79\x6a\x7d\xf7\xc9\x3c\xc7\x08\x3c\x72\xdd\xf6\x92\xf5\x23\xe9\x73\xb9\x8f\x97\xd6\xcc\x09\x76\xbc\x48\x87\x23\xe5\x1a\x78\xc1\x18\x40\x5a\x64\x84\x3b\xc5\x1b\xbb\xc8\x62\x9f\x73\x56\x89\xff\xb2\x83\x9c\xcb\xbd\xe5\x5c\x74\xd3\xfb\x38\x16\xc3\x47\x71\x84\xf0\xbf\x65\x0c\x6e\xfa\x32\xca\x0d\x06\x68\x3c\xae\x65\xb8\xdc\xe3\x9b\x5c\x68\x58\x6e\xf2\x37\x1a\xdf\xd1\xb6\xc0\xb7\x6a\xa7\xfd\xe8\x91\x9d\xbf\xd1\xfd\x6c\x51\x72\x98\x2d\xfa\x4d\x32\x14\xc3\xe4\x37\x3e\x5b\x94\x44\xd8\x22\xe7\x88\x4d\xf7\xf3\x42\x1e\x13\xa4\x5c\xb0\x69\xdc\xeb\xfe\x77\x9e\x47\x98\x06\x52\x01\x16\xd7\xe1\x60\x78\xc6\x3f\x4f\x49\xe9\xf9\x86\x9e\xaa\x5f\x83\x8e\xcf\x57\x10\x82\x4c\x42\x9c\x25\xe5\xd4\x89\xa2\x6d\x5b\x74\x9b\xb2\x8d\x77\x6d\x7c\xe5\x03\x1b\x29\x77\x83\xf1\x8c\x96\xbd\xfe\x99\xee\x5f\x3b\x89\xc4\x47\x60\x38\xae\x53\xe6\xf0\xa8\x9d\x53\xb6\xa7\x8f\x56\xab\xe7\x4c\x83\xbe\x5e\x1a\x34\x12\x2f\xfe\xfd\xea\xc5\x48\xd0\xda\xaa\xa6\x7f\xa2\x87\x3d\x85\x17\x9c\xde\xb0\x5a\xf0\x07\x32\xd3\x49\x92\x17\xcb\x8a\xd3\xef\xd9\xf5\xdb\x72\x45\x7f\x26\x07\x9d\xdb\xe5\x1d\xab\x22\x4b\x1f\xbe\x7d\xf8\x21\xbf\xa5\x7b\x02\xf3\xc3\x9e\x30\x77\x86\x6a\x0d\x06\x09\x96\x70\xb9\x0b\x66\xe5\x1c\x32\x0c\x06\x38\x78\xb3\x72\xae\x32\xd1\xca\xfa\x11\x0c\x28\xed\x1d\x1b\x74\x62\x3e\x8a\x95\xc3\x83\x71\x2a\xab\x0a\x07\xf5\x52\x7f\xd2\xc3\xa1\x81\xd1\xb4\xad\x69\x87\x91\x12\x8f\x75\x0e\x46\x8a\x35\x12\xdc\x44\xb4\x2a\xff\xab\x19\xde\x2b\xd5\x92\xec\xac\x27\xb8\x40\x96\x18\x55\xcc\xf0\xea\xb2\xea\x8a\x7e\xec\xcf\xad\x83\xb0\x19\x9b\xc3\x80\xbb\x64\xad\x6e\xac\xc6\xb2\xc1\xf7\xcd\x42\x60\x48\x40\xaf\xc1\x18\x5d\x68\xf0\x4f\xea\x48\xfd\x59\x9d\xdc\x9f\x3c\x25\xe7\xbf\x52\x8f\x08\x75\x40\xf8\x4d\xf6\x3b\x0d\xc2\x02\xbe\x7a\x2e\xc4\xf8\xcf\x14\xff\x99\xc6\xd6\x26\x4b\x40\xda\x4e\xf0\xd2\x50\x2b\x45\xd2\xff\x4a\x7b\xb9\x35\xa4\xa8\xf3\xde\xa9\x95\xf1\x1f\x40\x4f\xfa\x8f\x94\x3c\x4a\xe1\x66\x32\xc6\x8b\x68\x04\xfe\xe4\xf4\x5c\xf2\x88\x27\xd1\x97\x5d\x3c\xdd\x68\x21\x70\xd2\xdd\x53\xdf\x02\x88\xd7\x54\x0c\x87\xf8\x40\x2b\x92\x97\xc4\x7f\x84\x31\xff\x05\x14\x5b\x41\x60\xf9\x5f\xd4\xa2\xff\x9e\xc6\x70\xd1\xdd\x17\xf8\x37\xaa\x9c\xeb\xf7\xc1\x0d\x58\x3f\x17\x8a\x45\x2f\xd2\x1e\xf3\x38\x74\x10\x0f\x0c\x22\x4a\x47\xcb\x35\x34\x64\x46\x49\x3e\x5a\x6e\x72\xfe\xaa\x5a\xd1\x4b\x91\x8d\x11\xfa\x86\xfc\xcb\xff\x97\xa6\xf4\x25\xf9\xdf\x63\xa4\xd1\x8e\x99\x14\x01\x73\x34\x50\x0a\x82\xd2\x04\xdf\xa3\xac\xc6\x39\x6a\x3d\xc5\x3f\x18\xcb\x1e\xb3\x8e\x75\x9c\xb9\x64\xfb\x9a\x20\xe4\x44\x38\x8d\xbc\x0b\xad\x3d\x61\x00\x81\x90\xcf\x09\xc7\x61\x47\x1c\xe7\x08\x73\x49\x3c\xfe\xaa\x59\x26\x8e\x6b\x64\x7c\xe8\xf8\xac\x86\xd9\x88\x59\x35\x27\x35\x6e\xd2\xb4\x19\x09\x03\xc1\x40\x08\x17\x9e\xca\x34\xc4\x3c\x68\x10\x0a\x3b\x6a\xb0\x37\x32\xa5\x81\x3b\x61\xeb\x0c\x9a\xf4\x50\x0a\xe0\x2b\x31\x90\xce\x1b\x84\xe4\x77\x60\x65\x43\x07\x0c\x1c\xa7\x1b\x84\xe5\xc4\x1b\xc9\x50\x59\x35\x37\xa9\x5a\x94\xcd\xa8\x1d\x57\x86\xe6\x58\xc5\x4b\x42\x7e\x06\xa7\x06\x15\x56\x3b\xba\x6f\x17\xc8\xa9\xd2\x34\xcd\xe4\x6e\xc1\xfb\x91\x29\xce\x11\xa6\xbb\xdd\x1f\x03\x1a\xfd\x17\x8a\x23\xe8\xb5\x52\xc4\x9f\xf1\x39\x1a\xc0\xfe\xf5\xbe\x27\x77\x83\x09\xd7\x2d\x90\xfc\xac\x40\x4f\x77\xbb\x2c\x82\x33\x01\x5a\xcb\x3f\xa8\x35\x93\xd3\xc3\x3e\xf8\x6a\x17\x83\x02\x75\x81\x51\xe9\x60\x55\xc9\x9a\x19\x8f\x83\xc8\x66\x1c\x21\x42\x88\x61\xc0\x1d\x41\xd9\xed\x38\x21\x3d\x32\xd3\x75\xa6\xd9\x37\x8a\x47\x41\x92\xac\x6e\xae\x01\xcf\xe3\xa4\x5a\x9f\x00\x17\x85\x12\xed\x86\xd2\xde\x6f\xa4\xd0\xed\x7c\x51\x1d\xe8\xf0\x6e\x97\x64\xda\xac\x8a\x92\xd6\x04\x14\x04\xbb\xcc\x44\x1d\xf8\x5e\x75\xa5\x5c\xeb\x3f\x82\x66\xde\x19\x95\x84\xbe\x53\xf8\x83\x71\x51\x99\x09\x13\x22\x63\x7c\x8b\x79\xc4\xa6\xc3\x7d\x5b\x9f\x7b\x8a\xd2\x94\xfb\xdb\x38\x4d\x79\xbb\xcc\xc5\x72\x93\x95\xe8\xb1\x6d\x23\xf0\x18\xbf\x57\x84\xab\x12\x5d\xbf\x0c\xed\x02\x19\x62\x48\x3a\x4a\x96\x0b\xcf\xbe\x1e\x31\x47\x4b\x4e\x46\xee\x18\x15\x06\xbb\xa9\x56\x69\x4a\x4f\x89\x01\xeb\x50\x3f\xd4\xa7\x53\x7f\xff\x00\xcc\x94\xfa\x1b\xba\x52\x7f\xbe\xce\x05\x55\x7f\xa9\x53\xe5\x96\xae\x7e\x62\x00\xca\x30\x15\x7d\x53\x53\x15\x5f\xd8\x08\x5c\x08\xf2\xe8\x21\xf0\x2e\x45\xe0\xe6\x2a\x4e\x98\xf6\x5d\xaf\xd6\x27\x0b\x31\xa5\x36\x81\x44\x26\xd0\xb4\x10\x93\x8c\xda\xa4\x14\x10\xb6\x68\xd4\x2d\x8c\xd6\x68\xe2\xa1\x5b\xac\x45\xd7\x60\xca\x21\x8f\x4b\x39\xa3\x2e\x20\x6a\x46\xe7\xe0\xc4\xcc\xa6\x95\x50\x34\x90\x41\x42\x0d\x34\x81\xff\x63\xe6\xb9\x7a\x9b\xf6\x42\xf0\x84\x53\x42\xaa\x99\x98\x87\x99\xd7\x73\x15\x99\xd0\xf5\xf3\xce\x3d\x9a\xa9\xe0\x60\x01\x64\x02\x8c\xcc\x31\x37\x8e\x7c\x0a\x5b\x5c\x0a\xc6\x8a\x5c\x4f\x3c\x2b\xfa\xc6\x1b\x0f\xa0\x5b\x15\xe8\xf1\xfb\x8c\xa3\x69\x26\xc7\xd3\x0d\x9c\x34\xf0\x16\x3a\x33\xf4\x0f\x99\xb6\x01\x67\x8d\xbf\xde\xef\x24\x77\xe7\x8c\x0b\x46\x15\xe4\x26\x17\xf8\xcb\x29\x18\x9a\x9a\xfc\x00\x3d\x22\x84\xeb\xdd\x2e\xab\xc1\x35\x4f\xc0\x49\xb4\x45\xeb\xdd\xee\x34\xab\x3b\x3d\x85\x4b\x56\xe0\x25\xf1\x66\x6b\xfb\xc6\xd6\x18\x04\x03\x2e\x88\x55\xcc\x4e\x1b\xfb\x57\x58\xb1\xb6\x15\xb5\x99\x60\x62\xff\x9c\xb8\xd7\xcb\x53\x6f\x86\xbb\x5d\xa1\x7e\xea\x1a\x8f\xca\x81\x33\x64\x2c\x1a\x97\x76\xde\x5a\x22\x97\x78\x6d\x0d\x8f\x05\xfe\x73\xb6\xc6\xef\xa8\xe7\xf3\x20\xb7\x13\xe6\x38\xc7\x15\xa6\x08\xe7\x1e\x44\xcf\x24\xab\xd3\xb4\xb6\x2c\xa7\x40\xdf\x90\xf1\x6e\x97\x28\x0a\x40\xcb\xdc\x29\x59\x19\xad\x13\x8d\x81\x78\x4b\xf9\x4d\xef\xf9\xb4\x97\x1c\xc2\xe1\x1e\xcc\xc4\x7c\xb7\x03\xe4\x21\xed\x33\x71\x9b\x7f\xa6\xda\x4e\x53\x21\xe3\x72\xdd\x7d\xc3\x9d\x0b\x6d\xde\xea\x36\x73\x34\x29\xd2\xb4\xf0\x07\x7c\x76\x7e\x54\xd7\xb0\xcf\xaa\xee\x01\xc9\xc6\xb8\xf1\xf3\x77\x56\x08\xcb\xfb\xd5\x81\xa6\x49\xc6\x05\xb8\x13\xde\xe1\x62\xb3\x02\x19\xff\x5c\x3e\x2b\xe6\x83\x5c\x64\x4b\x34\xcd\x00\x37\x2a\x9f\x15\x73\x02\x27\xb5\x00\x07\xbc\xc7\x16\xa1\x09\x3c\x5c\x5a\xdc\x2b\x79\xe6\x46\x8b\xba\xd9\x52\x4e\xca\xd1\xc7\xf7\xef\x3f\x21\xec\x4f\x33\x17\xe0\x51\x93\x71\x62\x8f\x7c\x8e\x2b\x84\x70\xe5\x3e\x9f\xfa\x94\xbe\x83\xcd\x56\x74\x57\xc0\xdc\x7f\x1e\x5a\x1b\x47\xe6\x3b\xdc\x04\xe0\xaa\x1c\x75\x3c\xb6\x3d\x64\x94\xe9\x87\xc9\x47\xdc\x90\xf1\x45\xf3\xb2\x02\xc7\x30\x6b\xaf\x6d\x86\x43\x54\x67\x14\xeb\xc7\xb3\x46\xa7\x4b\x16\xb8\xd2\x08\x74\x7e\xa3\x39\x72\x78\x74\x6c\x7a\x3f\x79\x83\x97\x64\x7c\xb1\x74\x90\x73\xcb\xe1\x10\x15\x19\xc5\xf9\x6c\x39\xb7\x18\x68\x76\x7e\xb7\x1e\x39\x8d\x5d\x83\x69\x6a\x57\x40\x72\x49\x91\x22\xa5\x2d\x52\x82\xf8\xe6\x02\x1d\x84\xd3\x68\x69\x62\x46\x1e\x5b\xdc\xc8\xff\x15\xa1\x0d\x05\x2f\x95\x18\x10\x7c\x3e\xdc\xf7\x1c\x0d\xa8\x9d\xc2\xfe\x0e\xa0\xf0\xd1\xa3\xf6\x3d\x97\xb7\x81\xf1\x43\x67\x33\x3a\x6f\x43\xd7\x65\xcb\xd2\x6d\x94\x98\x9d\x35\x64\x29\x24\x9f\x4c\xc4\x6c\x33\x47\xe8\x94\x90\x02\x12\x65\x34\x8a\x23\x2c\x14\x88\xd7\x3d\x2b\x8a\x77\xf2\xac\xc2\x35\x95\xa6\xdd\x27\x19\x44\x9f\xac\x45\xb6\xef\xbc\x4b\x46\x57\x65\xb7\x97\x85\x7a\xc7\xde\xbc\x6e\x50\xd3\x3f\x1c\xb0\xbf\xc1\xe4\x5f\x20\xbc\x11\x59\x85\x0b\xdc\xcc\x8a\xb9\x5e\x99\x25\x5e\x23\x34\xe8\xd5\x4b\x0c\x13\x9d\x20\x08\xc7\xb2\xbc\xbe\x63\xfb\x91\xf2\x0c\xae\x15\x4a\xa4\x3c\x47\x34\x33\x3f\xbc\x65\x97\x84\xf7\x9e\x89\x0d\x64\xfc\x77\x7f\x5b\x27\xc8\x15\x42\x6d\x26\x70\x01\xb0\xec\x14\x7b\x40\x89\x0a\x03\x71\x69\xd6\x7c\xad\xd6\x3c\xf1\xf2\x19\x26\x92\xb5\x64\x64\x39\x5b\xcf\x91\x14\x1f\x3a\x93\x60\x08\x6e\xe6\x9c\xd4\x33\x36\xc7\x15\x69\xe4\x3f\xab\xd1\xe5\xf7\x6f\x2f\xaf\x16\xef\xde\x7c\xfa\xdd\xfb\xd7\x70\x0a\x2e\xaa\x34\xad\xfc\xeb\xe8\x41\x68\x9f\xff\x0d\x69\xe4\x6e\xac\xe4\xe0\xd0\x20\x27\x1b\xc0\xe9\xc5\x15\xd9\x28\x8d\x66\x1b\xbd\xcc\x2b\x9b\x68\xe2\x54\xdd\xec\x0c\x4d\xe1\xc0\x30\x75\x90\x2a\x34\xd1\x3f\x29\x0c\x0c\x61\xd0\xff\x31\xb8\x18\x0a\x3f\x0f\x45\x38\xd8\x34\xcd\x9a\xae\x9a\xd4\x37\x69\x0a\x9d\x6a\x40\x32\x9f\x58\x4a\xa0\xd5\x1c\xd7\xa4\x9c\x55\xf3\x9e\x1c\x91\x9b\x8b\xfd\x14\xae\x63\x8f\x53\x67\x30\xe2\x0a\xa1\x69\x96\x83\xbf\xa4\xbd\xa1\x0c\x4c\x03\xae\x09\x9d\x55\xf2\x86\x7f\x94\xab\x31\xc9\xb5\x8b\x6e\xdd\xb6\x4a\xf5\xf0\x20\xf0\x8d\xc0\xd7\x02\x2f\xc4\xfe\xac\xdc\x26\xdd\x51\x0c\xee\x37\x64\xa8\x7a\x60\x7a\xde\x37\xf6\xf0\x1b\x90\x32\x06\x85\x02\xfa\x00\x6e\x8c\xba\xba\xa5\x59\xcc\x7d\xb5\x16\x90\x4a\x0d\x3c\x67\x35\x5b\xf8\xd8\xba\x38\xfe\x68\xf2\xaf\x3b\x97\x87\xa4\x16\x59\x89\xa6\x6c\xc6\xe7\xe4\xdb\xac\x44\x13\xf8\x8b\xce\xf8\xbc\x05\x2f\x07\xf7\x1d\x81\x35\x95\xd3\xd5\x49\x40\xef\x85\x45\x01\x80\x6c\x05\xaf\xdc\x9e\x0e\xd1\x31\xf4\x69\x31\x00\x19\xfd\x14\xd4\xe8\x51\x4a\x35\x03\x67\x2e\x53\x96\x82\x27\x30\x3c\x91\x89\xa0\x31\xd8\x9d\x71\x50\x56\x93\x99\xda\xc3\x11\xbc\xed\x27\x5d\xb3\x1f\xa7\x13\xa2\x54\x7a\x58\x03\x3e\xdc\x71\x90\xbe\xad\xeb\x04\xed\xf6\xc3\x6e\x57\x5a\xd4\x47\x84\x70\xd9\x0e\x0e\x68\x50\x55\x26\xef\x18\x5e\xec\x2f\x5d\x0a\xb6\xce\x00\xfb\xce\x58\xaf\xac\x93\x8a\x27\x68\x18\x0c\x1d\x58\x2e\xff\xfb\x79\x65\x06\xdd\xed\xee\x97\xd3\xab\x3a\x63\x73\x45\x54\xbd\x87\x26\x1b\x9c\x29\xe2\x10\xb3\xfd\xc7\xde\xdf\x86\x8d\xbb\x87\x84\x2b\xca\x58\xd7\x62\xa1\xac\x8c\x31\xd8\x59\xb8\x70\x67\xb2\xdc\x1c\xd9\x82\x1f\x72\x2e\x58\x5e\x1c\x53\x7e\x45\x45\x80\x25\x1b\xa2\x98\x9e\x7a\x68\x38\x66\x17\x38\xcc\x37\xb9\x98\x3e\xe5\xb5\xca\xea\xee\x25\xde\xcb\xae\x60\xf4\x3a\x01\xf0\x95\xdf\x6e\x09\x9a\x22\x79\xf0\x3c\xb8\x40\xed\x79\xc9\x24\xad\x54\x69\x00\xd9\x3a\xf3\x80\x88\x3a\x94\xc2\x83\xc1\x30\x39\x1a\x2c\x33\x7c\x7a\xde\x1a\xa8\x19\x6d\x2c\xec\xe3\x53\x85\xf1\xfc\x26\x87\xa6\x96\x56\x0d\x48\x8d\x39\xe3\xd1\xcd\xab\xf6\x94\x5e\x6d\xcc\xfb\x9b\xb9\xf4\x36\x33\xb7\x0a\x49\xd0\x44\x96\x33\xe6\x6f\x66\x36\xf7\x2c\x0e\xa6\xd3\x12\x0b\x39\x06\x49\x2e\x23\xa6\xdf\x03\x5f\x41\x05\x23\xdb\xaf\x70\xfc\xd7\x09\xbf\x8d\x7f\x44\x5c\x04\x69\x40\xc4\xfd\x22\xb8\x22\xe3\x8b\xea\xa5\x01\x08\xbc\xa8\x20\xf2\x4f\x36\xc6\xe4\x95\xa4\xb4\x89\xc2\xb2\x24\xe6\xaf\xc3\x08\x27\xbd\x4f\x2b\x45\x35\x87\x21\x64\x58\x9f\xde\xf2\x58\x25\xd4\x09\xf4\x82\x92\x2e\x7e\x10\x90\x79\x03\x24\x95\xa6\xc6\xc2\xb5\xdb\x8d\x31\xf7\xfc\x0d\xc5\x37\x63\xf4\x18\x12\xa5\x6e\x62\x33\x3f\xbd\x17\x05\x0a\x2d\x09\x15\xeb\x68\x47\xd8\x44\xb6\xb1\x10\x99\x03\x0f\x77\xc2\xa7\xc1\x39\x5d\xc8\x7b\xd9\x37\x34\x7b\x48\xba\x3d\x7e\xe3\x41\xf4\x81\x6c\x1c\x93\x41\x28\x64\xc0\xf1\xd1\x54\x6f\x22\x8d\x74\x4b\x44\x73\x41\xd0\xfb\x93\x07\xb0\xb6\xc9\x16\xf7\x63\xb7\x5e\x8b\xbd\x99\x92\xe0\x26\x3d\x2e\xcb\xbf\x4a\x81\xf4\x95\xb3\xfb\x53\x8b\x57\x1d\x9b\x20\xb0\x05\x0a\x56\xb7\x5b\x46\x76\x2d\x5f\x13\x48\x2f\xf0\xfe\xcf\x3f\xbc\xf9\xe8\xfb\xa0\x03\x18\xb6\x70\x41\x31\x50\x00\xb0\x18\x54\x51\xbe\x77\x45\x78\xd5\x08\x56\xde\x1c\xb7\x26\xa6\x70\xc1\xae\x5f\xd0\x9f\xc5\x8b\x65\x55\x0a\x5e\x15\x05\xe5\x4f\x16\x2f\xaa\x25\xc0\x2d\xbd\xc8\xb7\xec\xf8\xc2\x65\x55\xd2\x85\xf9\x75\x7c\xb5\x4d\x5e\x6f\xbe\xa4\x1a\xab\x45\xc5\x1f\xbe\xa0\x66\xde\x88\xea\xf8\x6a\xf5\x43\x2d\xe8\xed\x8b\x1b\x29\xcb\xe7\x82\x2e\x9e\xb1\x8c\xba\xaa\xab\xb1\x58\x57\x47\xd7\x5a\xd5\xf1\x34\x60\x91\xa2\xf2\xd1\xf1\xc3\x81\xd2\xc7\x16\xfe\xa9\xa1\xfc\x61\xb1\xcd\x79\x7e\xfb\xf4\x2e\xab\x29\xbf\x63\x4b\x6a\x1f\x3e\xaf\xc2\x33\x16\x34\x5f\x6e\xe8\xb1\x09\xc1\xf0\x16\xdf\xfe\x52\x4a\xb0\xb7\xc2\xf7\x76\x17\x75\x80\x98\xe2\x3e\x78\xdc\x98\x74\xdb\x43\x8d\xfe\x50\x95\xf4\x99\x0d\x97\x47\x35\xfc\xbb\xbc\xde\x3c\xb3\x61\x76\x5c\xc3\xea\x2c\x3e\xb3\xed\xea\xa8\xb6\x2f\x1b\x51\x3d\xb3\xe1\xfc\xa8\x86\xcd\x89\x7e\xe5\x1d\xe8\xa3\x9a\xaf\xbf\xb0\xf9\xef\x72\x29\x0f\x3e\x1c\xdd\xcb\xde\x16\x0e\xf6\xeb\xa8\xcd\x77\xd5\xb1\x33\x6a\x8e\x9a\xd1\x47\x38\xa4\xaf\xaf\xbe\x3f\xb2\xd5\xe2\x19\xad\x1e\xd9\xe4\xf2\xf8\x26\x8f\x6c\x71\x7d\x54\x8b\x7f\x94\x64\xf0\x83\xa6\x82\x47\xb5\xbb\x3a\x7a\xa4\xac\xbc\xb9\x52\x74\xf0\xc8\xa6\x37\xcf\x58\xd7\xe7\xb5\xbc\x3d\xaa\xe5\x6f\x9b\xe5\x67\x9d\xd2\xf0\xc8\x76\x6f\xbd\x76\x9f\x64\x6e\x62\xfc\xca\x61\x4e\x07\x52\x6a\xba\x37\xae\x22\xb4\xe5\x5d\xbf\xc0\xd6\x3f\x79\xcb\x44\x99\x49\xad\x1a\xff\x85\x0c\xa5\x5e\x06\x17\xa2\xa8\x1f\x68\x7d\x47\xf6\x18\x57\x18\x4f\x66\xc9\x4f\xde\x0e\x9c\x63\xef\x17\x84\xea\xe3\xc5\x4f\xdb\xd7\xb4\xa0\x37\xb9\xa0\xf6\x81\xc2\xbd\x59\xf9\x89\x50\xb8\xcb\xc3\xee\xe2\xbc\x67\xf3\x44\xca\x99\x1a\x56\x89\x4f\xb8\xc6\xfa\x18\xe3\x12\x5d\x64\x63\x4c\x47\x5e\xeb\xda\x53\x14\x5c\x0a\x90\x42\x96\x6e\xb1\xe0\x79\x59\x33\xd9\xc7\xa7\x0a\xf6\xdd\x24\x22\xfb\x52\xe2\xea\x81\x52\x2b\x51\x69\x55\x13\x29\x06\x43\xbe\x91\xb0\x8d\xdd\x2e\x7c\x88\x59\x5f\x58\xae\x3c\x21\x8b\x21\x9c\x93\xf1\x45\xfe\x92\x5d\xe4\xc3\x21\xaa\x66\xb9\x2f\x2c\xe7\x73\x0f\xce\x53\x3b\xee\x83\xfe\x71\xcb\xe9\x9a\xfd\x0c\x3d\x4a\x11\xe8\x92\xdf\xe8\xe1\x55\x72\x66\x1a\x04\xe2\x4b\x27\xe5\x57\x97\xf3\xd1\xbf\xff\xcc\xc4\xe6\xef\x31\x9d\xd6\x84\x36\xd9\x8d\x37\x70\x7b\x92\x1d\x75\x32\x43\xd1\x20\x72\x2e\x55\xfa\xd9\x79\x88\x2e\xf0\x75\xcf\x8d\x56\x1c\x3e\x2a\xdd\xe9\xa4\xaf\xbb\x04\xd9\x9c\xdd\x6e\x55\x32\x3f\x18\xaf\x71\x17\x0c\x9f\xd6\x9e\x1d\x9f\x6b\x5d\xac\x85\x1c\xf2\x63\x32\x3b\xd5\x26\x8f\x6d\xeb\x2d\xdd\x7e\x19\xf6\x18\x01\xe4\x39\x49\x80\xaf\x79\x75\x5f\x53\x7e\x16\x4d\xe5\xbb\x9f\x24\xf6\xb2\xe9\x46\x69\x60\x53\x0a\x76\x1b\x17\x0d\x8e\xce\x31\x1c\x9d\xb0\xac\x7d\x98\x5f\xff\x2a\xb2\xba\x66\x43\x21\xf1\xec\x5a\x3f\xca\xeb\x0d\xfc\x5e\xc5\x77\x51\xb1\x3f\x9c\x43\x39\x62\x69\xc7\x21\x41\x0e\x86\x75\xa0\xce\xbe\x22\x89\xfc\xc6\x09\x16\x87\xe3\x11\xaa\x58\x3c\x42\xd5\x53\xc0\x06\xc9\xc8\x79\x55\x89\x1f\x3f\x7e\x8f\x45\x44\x67\x4f\x47\x66\xc9\x81\xfa\x34\x35\xe5\x97\x37\xb4\x14\xb8\x24\x74\xa4\x05\x66\xcc\x08\x1d\xad\xaa\x25\x8c\xff\x5d\xb5\xa2\xb8\x22\x74\xa4\xc2\x5d\x70\x2e\x69\x96\xee\xa0\x26\x89\x94\xe8\x13\x5c\x90\xd3\x73\xe5\xbe\xd1\xc8\x25\xfd\xae\x29\x0a\xb9\xa4\x48\x9b\x63\xe0\x79\xdd\x6c\x61\x0b\xeb\x4f\x20\xe7\x68\x52\xe3\x6d\xc8\x3a\xcb\xb1\x40\x83\x25\x21\x64\x33\xad\x49\xa2\x47\x92\x4c\x92\x17\xff\x90\x10\x42\x96\x06\xf5\x68\x8c\x7f\x8b\xa6\x59\x69\xc8\xe4\x95\xc8\x05\xcd\x20\x03\xda\x64\xd3\xe2\x24\xc1\x1b\x84\xbd\xfa\x80\x1c\x73\x3a\xc6\x30\x02\x5d\x47\x8f\x0c\x6f\x10\xb2\x48\x47\xe1\x08\xf3\x7a\xa3\x6e\x46\x15\x08\x61\x90\xab\x56\x6e\x90\xdb\xdd\x2e\x79\x91\x28\x64\xc0\xe4\xc5\x3f\xc0\x9f\x5b\x18\x78\x5e\x6f\x92\x03\x9d\x6e\x11\xc4\x0b\x16\xbd\x64\x8f\x75\x9b\x3d\x9a\x4f\x33\x51\x08\xce\xe6\x43\xe9\xc9\xa8\xa7\xe6\x1b\xd9\x2f\xa7\x1e\xbb\x0f\xa9\x3f\xce\x84\x62\xff\x13\xaa\x52\xc1\x47\x55\x1f\x54\xbd\x50\x7f\xb7\x68\xa0\x82\xf3\xd3\x34\x33\xbe\x75\xe6\xd2\x5a\xe6\xe5\x92\x16\x86\x65\x14\xcd\x36\xc1\xa7\x63\x84\x85\xde\x02\xc8\xe9\xad\x58\x37\x89\x9b\xc9\xd5\x96\xd8\xf9\x25\x43\x01\x7c\x83\xee\x81\xe3\x44\x8f\x3a\xc1\xd4\xb9\xf5\xd9\xae\xab\x72\xc9\xa9\xa0\x6f\x83\x03\x94\xe8\x90\xcf\x7b\x56\x14\xaf\xbb\x99\x38\x83\xf3\x10\xaf\x3f\x80\x2b\xc0\xb9\x5e\x63\xde\x66\xd5\x48\x91\x15\x4f\xa1\xbb\xf4\x14\x7a\x51\x75\xfd\x81\x2e\xbe\x92\xf2\x1e\xb2\x37\x0a\xfe\xf0\xb6\xbc\xab\x3e\x53\xb9\x8b\x28\x2e\x7d\x68\x90\x75\x10\x10\x84\x99\x3d\x88\xe6\x10\xaa\x94\x1f\x8d\x21\x77\xf0\x28\xb7\x8f\x40\x74\x51\x67\xd5\x4b\x49\x66\x80\x80\xd5\xe6\xae\xc2\x03\xc8\x49\x56\xba\x67\xe7\x16\x75\xeb\x1f\x12\x84\x46\xf5\x86\xad\x45\x86\xb0\x3a\x21\x0c\x5c\xa1\x2f\x45\x66\x53\xfc\x9c\x2b\xe7\x1a\xee\xaa\x23\xcc\x86\x84\x0f\x73\x8b\xf6\x98\xa6\x19\x1b\x92\xe4\x1f\x92\x61\xa9\x3d\x87\x65\xcb\x68\xc2\x86\x24\x1f\x56\x81\x57\x5e\x80\x35\x86\x4b\xa2\x16\xc3\xb4\x6d\x14\xf0\x76\x3a\x89\xb2\xca\x64\xc9\x0b\xf8\x6b\x36\x9e\x83\xf5\x22\x79\x91\x0c\x4b\x84\xb9\xee\x14\x61\xde\xba\xdb\xa0\xc0\x85\x65\xbf\xcd\xf1\x4a\x5e\x24\x98\x95\x4c\x00\x05\x9a\x2c\xb3\xc4\xfe\x48\x90\x94\x71\x64\x99\x65\x96\xa8\xbf\x12\x80\xc7\xd7\x8f\x6a\xf3\x48\x93\x06\xfd\xd8\xfd\x4a\x10\xae\x4a\xc0\x6c\x33\xef\xbc\x9f\x09\xc2\xeb\x8a\xdf\xe6\xa6\x35\xfb\x23\x41\xd8\x9e\x2f\xde\x27\x1e\xdc\x52\x0e\x7d\xee\xf9\xe8\x9e\x95\xab\xea\xde\xa3\x24\xdc\x23\x23\xbd\xf3\xae\x32\xbb\x3c\x8b\x8b\xe9\xe8\x6d\x9f\xc3\xc5\xec\xe7\x4e\x7a\x3c\x08\x6f\xca\xa2\xaa\xb6\x5f\x87\xd7\xf8\x55\x18\xd1\x3c\xce\x42\x94\xbf\x98\x85\x80\xdb\x66\x0f\x0b\x51\x1a\x16\x22\x27\x65\x9f\x85\xc8\x01\x55\xde\x27\x98\x60\xca\xf4\xa8\xae\xfb\x6e\xca\x2f\xc1\xfc\xde\xed\xd4\xbe\xb1\x5b\xcc\xc4\xca\xc8\xc1\x28\xf8\xd3\xdf\xe5\xe5\xaa\xb0\xa8\x3a\x2d\xce\x0d\xe1\xe9\x1b\xd4\xb2\xb1\xc2\x09\xd1\x64\xc9\xbf\xf7\x90\xae\xf8\xe3\xc7\xef\xf7\x10\x76\x5d\x2f\x43\x8e\x92\x60\x41\x2c\x84\x39\x9c\x70\xa1\x4e\xb8\x90\x27\x1c\x53\xf9\x97\x3a\xe2\x54\xe5\x76\x06\xdc\x9c\xa0\x07\x63\xf3\x32\xc3\x18\xc9\x79\x11\x8a\x7b\xeb\x93\xd7\xe2\x8a\x9a\x4b\x4b\xb6\xe4\x4e\xf0\x81\xd6\x0c\x66\xa0\x1a\xc3\x11\xad\x7a\x67\xbf\xdf\xec\x42\xe5\x34\x81\xd4\xeb\xc6\x9d\x30\xdb\xff\x41\xe0\x76\xbe\x66\xe5\x4a\x77\x97\x75\xd6\x55\xd8\x75\xfd\xf1\xe3\xf7\x99\x76\x60\x70\x43\x3a\xb5\xac\xc1\xde\x31\xab\x78\x46\x40\xef\x92\xb4\x42\x6f\x95\x7c\xb5\x0a\x87\x98\xb8\xb1\x25\xfb\x46\x0b\xb3\xb7\xe4\x2d\x62\x60\x83\x25\x94\x85\xf6\xb0\x00\x07\x56\x48\xd6\x8a\xbd\xe9\x57\xef\x0d\x2b\x4d\xf5\xa4\x62\x0d\x1f\x39\xaf\xb2\xcd\x4a\xcb\x6a\x38\x92\x91\x3f\x93\xbc\xf6\xec\x5b\xbf\x12\x85\xfd\x72\x82\xfa\xab\x90\xd3\x0a\xdc\x84\x6d\x50\x84\x33\xce\xff\xac\xff\x3b\x83\xff\xfd\xb3\xfc\xdf\x83\xf9\x69\xfe\x4b\xec\x09\x7c\x31\xfb\xf9\x61\xfe\xe2\x26\x54\x43\xf8\xf4\xf8\x44\x90\xf3\x7f\xf9\x1f\xef\x72\xb1\x19\xf1\xbc\x5c\x55\xb7\x19\xda\x8d\x71\x96\xfc\x2c\xd9\x1a\x3a\x15\x93\x7f\x4a\xc5\xee\x7f\x21\x17\x7d\x74\xfe\x2f\x90\x85\x4b\xf9\xed\xfe\x5a\x24\x5f\x4b\x36\x58\x18\x31\x0c\x28\xdb\x13\x77\x40\x1d\xbb\x03\xea\x83\x64\x99\xed\x27\xcb\x75\xef\xf2\xd0\xf1\x7c\xcd\x96\xf2\xf8\x74\x74\x2a\x1a\x23\x80\x8c\x40\x3d\x79\x45\x0b\xba\x14\x15\xcf\x92\xeb\xbc\x96\x7c\x93\x20\x49\x32\x00\x22\x4d\x40\x36\xbf\x14\x82\xb3\xeb\x46\xd0\x2c\xd9\x70\xba\xd6\xc8\x87\x01\xf1\x91\x35\x81\xf2\x88\x08\x31\x0d\xaf\xb0\x27\x6f\xb0\x6d\xb5\xad\x25\x07\xd7\xbd\xbf\xd4\x7c\x81\xb9\xdb\x73\x13\xe9\xaf\x62\x5b\xd6\xbf\x2f\xba\x23\xb2\x5f\x8f\x22\xeb\xdb\x06\x5d\x1a\x90\x21\x4b\xef\xb2\x80\x12\xa3\x81\x48\x53\x95\xf4\x1d\x54\xb0\x7a\xbc\x9c\xde\xb1\xaa\xa9\xe5\x26\x08\x8a\x4f\x74\xbc\xac\x27\x23\xab\xef\x76\xf0\x3a\xb5\x3c\xa3\x08\xf5\x08\x5a\x2f\xa6\x57\x1a\x34\x05\x72\x20\x65\x7e\x4b\x07\x82\x08\x77\xa0\xfe\xfd\xc5\x3f\xbe\xc0\x09\x28\x36\x79\xff\xa9\x56\x2c\xba\x2b\x50\x0a\x42\x1f\xe9\xcd\x9b\x9f\xb7\x59\xf2\x7f\x93\x21\x1f\x26\xd9\x94\xbc\xd8\xfd\x23\x4a\x90\x2c\xbf\xaf\x9c\xd8\x57\xee\xc5\xbf\xbf\xf8\xf7\x17\x2f\x6e\xa4\xdc\xe1\xb2\x7c\x0c\x49\x46\x47\x35\x24\x33\xde\xed\x92\x04\x0d\x43\xce\x41\x2e\x4a\x84\x03\xf0\x2e\x43\xfd\xc9\xd4\x67\x1a\xd0\xee\x67\xa2\x08\xfb\x9f\x86\xea\x8c\xe5\xdb\xa6\xde\xa8\x85\xa7\xd0\xc7\x1e\xde\xe0\x17\xf7\x13\x7c\x63\xd5\x95\xed\x3a\xd2\x93\xd2\x94\x50\xdc\x34\x6c\x35\xc9\x33\xd4\x0e\x82\xbe\xdd\xa8\x35\x4a\x13\xb5\x47\x63\xdf\x56\xf3\x26\xf7\x85\x9d\x06\x53\x78\x56\xbf\xfb\x58\x23\xb7\xaa\x83\xa7\xb9\xa4\xee\xa1\xf7\x59\xe2\x6a\xb7\x83\xfc\x18\x4a\x7f\x0f\xfd\x4a\x1e\x28\x18\x16\x42\x69\x4a\x33\x57\x00\xb5\xfb\xb9\x1e\xd3\x57\x12\xef\x1b\x26\x15\xe7\x78\xbc\x8d\x12\x3f\x96\xbe\x7c\x4b\xa7\xd9\x33\xce\x25\x9a\x28\x41\x9d\x03\xa7\xac\xfe\xd6\x5c\x73\xbc\x3c\xe6\x43\x21\x19\xaf\xfa\x8b\x18\xaf\xf8\x9b\x08\x06\x62\xb8\x36\x87\xd9\xae\xa7\x17\x76\x0f\xcb\x55\x3f\x8f\xe5\xea\x38\x30\xfd\x4a\xfc\x56\xc4\x40\xf2\xeb\x98\x17\x35\x49\xfe\x95\x58\x15\xa5\x1b\x7e\x82\x33\x61\x31\xce\x84\x45\x14\xdc\xfe\xde\x6f\x15\x77\xb2\xff\x2a\x93\x14\xa7\x73\x8d\x39\xa6\x2e\x76\x32\xe8\xb1\xb7\x8d\xec\x3a\x72\x61\x74\x2f\x7a\x39\x00\x25\xc1\xb1\xc3\x12\x9c\x42\xd7\x79\x95\x17\xc5\x75\xbe\xfc\x4c\xa8\xac\xb0\x81\x5d\x7b\x6c\x17\x38\xd2\x4e\xa6\x7a\x3e\x96\x96\x04\xc4\x43\x01\x63\xc4\xce\x3d\x9c\xfa\x3d\x07\x89\x61\x66\x75\x64\x40\xef\x93\x04\x7b\xba\xb2\xe7\xaa\x8e\x40\xa4\xf0\xce\xd7\x21\x6b\xa1\x0b\xf3\xf7\xed\x1c\x96\x45\xd9\xa7\x0d\x18\x8a\x20\x19\x3e\x0f\x30\xce\x15\xc7\xe0\x05\x92\xfb\xde\xf0\x36\x4c\x05\x74\x03\x2a\x42\x79\x63\x15\xa4\x68\x92\x24\x5e\xb4\xb9\x3f\xa6\x8a\xb3\x1b\x56\x0e\x5c\x50\x7b\x66\x83\x1b\x96\x55\x31\x4c\x5e\xbc\x48\x86\x74\xb4\xa9\x6a\x21\x47\x8e\xe9\x48\x4e\x5e\xeb\x2c\x26\xf2\x95\xfc\x0d\x8a\x8b\x2f\x33\x7f\x81\x9d\x4b\xa8\xbf\x41\xeb\x4b\xb8\x33\x82\x91\x52\xfd\x6d\xac\x37\x31\x97\x56\xb9\xc2\x43\xb9\x52\xc3\x12\xb6\x98\x72\x80\x85\x59\x11\x06\x49\x89\xbb\x26\x94\x78\x1e\x45\x91\xa6\x49\x55\x7a\xc2\x32\x83\x67\x2e\xb6\x98\xee\x76\xf4\x9b\xff\x09\x3d\x74\x0c\x47\x9d\x06\xd9\x3a\xcb\xce\x74\xd4\xbb\xf1\x57\xb8\x2c\x57\x5c\x36\xf4\xdb\x51\x82\x76\xbb\x7d\x6f\xff\x79\x34\x4e\xe4\xe5\xdd\x7d\xff\xae\xba\x66\x05\x3d\xb9\xca\xd7\x39\x67\x09\x14\x20\x41\x81\x57\x1b\x5e\xdd\xd2\xd8\x9b\x3f\xc3\x15\x55\x9f\x7c\xd8\x80\x4d\xa4\x67\xe4\xd1\x91\xf8\x99\x9c\xbe\xe5\xb5\x60\xee\x30\x53\xcf\x56\xd4\xf5\x15\xb6\xc7\x51\xee\xa7\xa1\x40\xed\x51\xc7\xa9\xe7\x3d\xf9\x9c\x0b\x6b\xcf\xb5\x64\x7f\xaa\x68\x8f\x17\x4b\x8d\x7f\xe7\x5e\xd4\xc6\xa3\xe8\x4b\xbd\x68\x4c\xf8\x66\xfc\x94\xd7\xfe\x4e\xd2\xec\xca\x94\x4e\xa8\x39\x80\x16\x10\xc5\xea\xfe\xbf\xe4\xb4\x44\x2e\xca\xe6\xef\x00\xec\xd7\x15\xb4\x3d\xd6\xd6\x87\x8e\x93\xc5\xe2\x7d\x1b\x20\x23\xd8\x00\xa3\xaa\xcc\x12\xf8\xd3\x4f\x8c\x15\x50\x56\x31\x12\x9c\xdd\xdc\x48\xa6\xaa\x57\x50\x85\x65\xc5\x1b\xf4\xb2\x68\x1d\x6c\xcf\x2b\x07\xcd\x01\x3a\x9e\xe7\xc3\x13\x8b\x89\xf9\x0a\x88\x90\x60\x43\xe3\xb4\xa6\xb7\xd7\x05\x05\xb6\x1d\xe0\x1f\x51\x08\x3a\xad\x27\xb5\x58\x55\x3f\x7e\xfc\xfe\x93\x1d\x55\x96\xf8\x23\x4c\x30\xd4\x74\x11\x40\xf9\x88\xfe\x2c\x78\xbe\x14\x60\x2d\xb9\xe4\x37\x35\x52\x40\x41\xe5\x88\x1b\x2f\x1b\x5c\x91\x72\x74\x5b\xad\x68\x51\xe3\x9a\x94\x23\xcf\x3d\x0b\x37\xa4\xdb\xbb\xd7\x35\x83\x50\xd4\xd3\xb1\x95\x68\x9b\xd1\xe2\x33\xa5\xdb\xd7\x6a\x7f\x3a\xb7\xc3\x3f\xc9\xdd\x0b\x31\xf0\x8d\x02\xcb\xb3\x7e\x44\x91\x28\x1f\xe8\xd0\x9f\x54\x7c\xf3\xe8\xc0\x0f\x6b\x9c\x4a\xe0\x73\x35\xbc\xf8\xae\xe2\x71\xc0\xb2\x27\x4d\x9e\xdf\x9c\x4f\xf9\xd9\xf9\x64\x2c\xd7\xe7\xdc\x37\x7d\x9e\x9d\xc7\x8d\x9f\x22\x58\x1d\x64\x7d\x5e\xcd\x88\xf1\x8c\xfa\x79\xea\x5a\x80\xa3\xbe\x5c\x0a\x76\x47\x7f\x8d\xbd\xf4\xab\x7d\x75\xf5\xef\x3b\xb6\xe4\x55\xc1\xae\x01\x33\xa1\xb1\x33\x79\x0b\x49\x3d\x94\x37\x82\xbd\x54\x94\x77\x8a\x1f\x38\x55\x23\x8b\xff\x6f\x42\xd6\x0a\x13\x4d\x68\x3b\xda\x72\xba\xcd\x39\xf5\x1c\x56\xdd\x26\xc3\x30\xb1\x7a\x93\x17\x45\x75\xff\xe6\xa7\x26\x2f\x50\x56\xe3\x46\x29\x25\xfc\xe1\x23\x8d\xc8\xb8\xac\x6e\x4a\xf6\xb7\x98\xd4\x5f\x1b\x0c\x47\xcd\x05\x86\x41\x8c\x7b\xa6\xed\x5a\x84\xdc\xec\x5e\x0f\x97\xe5\xea\xfb\x2a\x5f\x7d\xfd\x8e\x74\xc3\xd0\x1f\xb8\x00\x58\x4c\x35\x77\x09\x34\xe0\xc8\x01\xcc\x2d\x1f\x81\xe8\x49\x57\xf8\x71\xd9\x70\x4e\x4b\x61\x3d\xe9\x26\xa0\x35\x35\x28\x95\x28\x4b\x4c\xdf\xdd\x82\x09\xc2\xfa\x91\xe4\x8e\x9f\xa8\xd5\x31\xed\xee\x2b\x6d\x85\x52\x64\xd9\xee\x7d\x45\x8d\xaf\x85\x1d\x85\xf2\x5d\x3c\x66\xf4\x09\x3a\x92\x91\xef\x07\x7a\x3c\xc9\x7a\xec\xe5\x27\xb6\x55\xf1\xb0\x66\x85\xef\x5d\x66\x58\x8c\xff\x4a\xa3\xc3\xaf\x78\xf9\xb3\xd8\xe5\x0f\x48\x68\xb0\xea\x51\x4e\x5c\xed\x78\xf8\x42\xa6\x9c\x96\xfa\xe2\xd7\x69\x37\x79\x8c\x57\x3f\xbc\x71\x34\x16\xbe\x61\x41\xd2\x94\xf5\xaf\x01\xcc\x64\x47\xa5\x14\x2f\x0b\xf6\x37\x9f\x96\xf4\x20\x26\x83\x8e\x22\xb4\xc7\x80\xb7\x33\x4b\xd9\x43\x79\xd5\x01\x55\x06\x83\x86\x28\xde\xee\xa9\x36\xc8\x2b\x5e\x44\xbf\x71\x65\x32\x48\x33\x15\x36\xe0\x8e\xb1\xd1\xeb\x1c\x6a\xc8\x1b\x8d\xfe\xaa\xcc\xbf\x67\x04\x9e\x3d\xfa\x0e\xd6\x55\x3b\x47\xa8\x95\x73\x30\x04\xfb\xbb\x8a\x77\x3f\x5d\x37\x65\x69\xb0\x30\xfb\xa8\x13\xd7\xca\x00\x0e\x19\x00\x01\x3e\xa6\x9a\x55\x2e\x39\x8d\x79\x8d\xeb\x8e\xc4\xe0\xa5\xfa\xe8\xe4\xce\x4c\xd3\x8c\x0f\x89\xc5\x0b\x75\xd7\xa0\x7c\xa2\x9b\x03\x0c\x06\x88\x40\xbd\x70\xf1\xb1\x1c\x57\x76\x5b\x18\xde\xfa\x9b\x1a\xd4\x84\x39\xf2\xae\x5d\x7d\x59\x71\x0c\x38\x9d\x4c\xd1\x55\x16\xa3\xab\x15\xa4\x4b\x51\x4a\x03\xe5\x15\xad\xdc\x69\x40\xd5\xe1\x91\x22\xbd\x4a\x5e\x11\x47\xbc\x0e\xd6\xf0\xcb\x74\xe8\x9d\xa1\xd8\x07\xaa\x45\x08\xb6\x94\xcd\x9e\xa8\x25\x8b\x1c\x4f\x27\xfd\x78\xb5\x23\xf5\x1d\x5f\xcb\x3b\xda\xe7\x8e\x5c\xd4\xb7\x3e\xb1\x30\x22\x60\x8c\xde\xe5\xdb\x43\x48\xb6\x9b\xbc\xde\x4b\x9f\xa0\x11\x88\x05\xa7\x10\x58\x5d\x8b\xc0\xda\xd8\x07\xa1\x55\x15\x54\x7e\xb8\x58\x80\xf9\xbb\x7c\x8b\xbd\x82\x2a\x23\x47\x89\x90\x72\x18\xcc\x14\x25\x31\xd8\x9d\xb1\x64\x23\x2a\x87\x82\x1a\x51\x88\x48\x15\x1b\x81\x15\xc3\x54\x38\xfb\xb4\xd4\xf9\x22\x26\xdc\x62\xc0\x3e\xcf\xc1\x7b\x4f\xbc\xe7\xaf\xfe\xdd\xbb\x2b\xe1\x4e\xb1\x76\xcd\x74\x23\x9a\x24\x43\x58\xc6\xe7\xcc\x07\x22\x51\xf7\x7a\xfa\x47\x2e\xf2\xde\xbd\xfd\xab\x6c\xf1\xd2\x4f\x4e\xcf\x0e\x43\x17\xb6\x9d\x4b\xbe\x0f\x5e\xe3\x74\x53\x69\x9a\x51\xa2\x3c\x5d\x60\xcf\xd0\x9f\xb7\x05\x5b\x32\xa1\x70\x9f\x4f\xcf\x35\x12\x48\x2e\xa9\x81\x4e\xcc\x30\xa2\x25\x24\x74\xad\xf2\x15\x2b\x6f\xae\x9a\x6b\xe0\xa8\x6b\xe2\x69\x84\xc4\x9e\x32\x06\x47\x26\x17\xcb\x0d\xad\x2d\xd8\x74\xb5\x95\x83\xab\x89\x38\x74\x38\x79\x78\x07\x79\x1c\x40\x85\x1b\x98\x02\x2e\x48\xf2\x62\xd1\x94\x4d\x4d\x57\x8b\x55\x73\x7b\xfb\xb0\xa0\x9c\x57\x7c\xb1\xcd\xc5\x46\x5d\x4b\x0b\xd0\x82\xbf\x98\xc0\xf3\x04\x2e\x5e\x05\x33\xa8\x40\xba\x38\x9a\xb0\xac\x84\xdf\x5c\x36\x8a\x26\x15\xe1\xbb\xdd\x63\x7b\x68\xe2\x69\x9a\xd5\x1a\xe2\x7e\x98\x2c\x0a\xf5\x36\xc1\x8f\x52\x44\x17\x16\x4a\x73\x52\x8d\xc2\x07\x2d\xc2\x5e\x35\x35\xa0\x27\x2b\x61\xd0\x47\x17\x72\x43\x37\x06\x38\x2e\x37\xf8\xfa\xdd\xc2\x08\xaf\x35\x02\xc7\x32\x58\x67\x34\xa8\xb3\x35\x4e\xcc\x48\xe5\x38\xd6\x38\x31\x23\x30\x3d\xe0\x46\x81\x48\xae\xdd\x38\x71\x85\xd7\x96\x99\xc8\x8c\xcf\xb9\x7b\x0b\x04\x6b\xdb\x74\xe9\xa2\xcf\x28\x78\x79\xfe\x6c\x4e\x23\x3d\xac\x11\x2d\x6f\x58\x49\xdf\x96\xeb\xca\xc0\x10\x9b\x44\xcc\x7b\x8a\x8d\xd6\x4d\x51\xc8\xe9\xea\x1b\x7c\x78\x8e\x70\xad\x80\x4c\x2c\x1a\x9f\x14\x26\x8a\xef\x74\xb9\x49\xde\xe2\x7d\x5d\x0e\x98\xfc\x90\xa3\x9a\x72\x06\xac\x94\x06\x7c\x60\x28\xac\x91\xaf\x56\x70\x97\x7e\x57\xf1\x37\x50\x39\x13\xb8\x76\xde\xf7\xcc\xcb\x43\xa8\x52\x3d\x25\x90\xa6\x94\x95\x37\x27\xf9\x09\xec\xc1\x13\xdb\x05\x3f\x91\x6c\x37\x3c\xb3\x20\xfc\x8d\xa8\xd9\x8a\x9e\xe4\xe5\x89\x6a\xfe\x84\xd5\x90\x89\x10\xc4\x58\xba\x92\xeb\x66\x6c\x1b\xca\x0e\x20\xff\x50\x10\x09\x00\xdf\xe9\x31\x54\x46\x5c\xee\x9c\xe9\x71\x78\x0a\x35\x4c\x11\xe4\x17\x6a\xc1\x3a\xac\xbe\xef\x1e\x73\x94\xae\x15\x08\xa6\x41\x07\xc6\x9a\x0f\x5c\xbc\x1e\x99\xde\x55\x60\x3c\xc1\x3e\x88\x49\x98\xc5\x8d\x3a\xd0\x61\xf2\x4f\x48\x64\x74\xc6\xe7\x68\x24\x2a\xf9\xc7\xf0\x7c\x8e\xe5\x3f\xbf\x9d\x23\x00\x04\xba\xad\x9a\xd2\x87\xed\x81\x3d\x66\xe1\x3c\x01\x08\xf5\xb1\x35\x81\x27\xc1\x17\xe4\xb4\xae\x8a\x3b\x15\xa6\xf6\x2e\xdf\x66\x02\xe1\x86\x88\x01\x1b\xe5\xf2\x28\x37\x44\xfe\x61\x53\x0f\x9b\xd3\xd5\x80\x40\xd9\x3d\x5d\x0a\x05\x5e\x60\x03\x64\xf2\x76\x35\x29\x87\x43\x0c\x63\xfb\x50\xb1\x52\x4c\x96\xd8\xec\xd1\xc9\xb2\xc5\x2b\xc2\xc0\x98\x33\xe8\x65\xf5\x5e\x41\x1e\xe3\xe4\x45\x32\x6c\x54\xdf\x9b\x63\x68\x59\x13\xd2\xb2\xca\x84\x77\x9c\x9e\xe3\x5b\xb2\x67\xa3\x0f\x6e\xd3\x34\xdb\x82\x27\x40\xbc\x00\xd1\x99\xd8\xef\x2c\xf1\x08\x4f\x94\x2b\x39\x59\x87\xc7\x09\x49\xca\x72\x17\x52\x96\xbb\x0e\x65\xd9\xb4\x08\x12\x6c\xe5\x75\xad\xe8\xcb\x1d\xc2\x05\xb9\xf3\xc8\x0a\xde\x9a\x2c\x88\x91\xb1\xdd\x2a\x9f\xb4\x87\x83\xa7\x3c\x91\x72\x0e\xd3\x4a\x84\x16\xaf\x1d\xa9\xd9\x73\x2d\xc1\xb2\xdd\x90\xc6\xa7\xdf\xd7\xc4\x6f\xc6\x3d\x5f\x1c\xec\xfa\x1a\xba\xd3\x24\xf1\xa6\x47\xcf\xbb\x9b\xa8\x7d\x92\xba\xdc\xe0\x05\xc2\x6a\x68\x7a\x1d\x3b\x03\xd3\x4f\x8f\x18\x16\x3e\x7a\x58\xd8\x7e\xaa\x23\x46\xd7\x3e\x51\x66\x89\x1f\x74\x3b\x40\x69\x56\x78\x89\x0b\xd4\x05\x1b\xca\x3b\xec\x5c\xc4\x45\xd6\xff\xa8\x60\xe6\x52\x5c\x49\x9b\x51\x94\xa6\xa7\x00\x73\x36\x35\x0f\x87\xc9\x28\x19\x0a\x1f\x42\xb9\xf6\xb4\x06\x21\x0a\xd4\xa3\x0d\x14\xd5\x83\xe8\x1e\xf4\xfe\x69\xe5\x70\x8a\x65\x6d\xe5\xc4\xa4\x4d\xb0\x3a\x3b\xa5\x7a\x88\x19\x2e\xc1\xca\xad\x89\x3d\xf2\xa2\x30\xaa\xe7\x70\xa4\x6a\xf7\xd7\x09\x9e\xcd\x03\x2f\xe7\xe7\xb4\x11\x05\x74\x79\x56\x9c\xf9\xd3\x91\xae\xbe\xed\xda\xcf\x99\xbf\x56\x38\x0e\x52\xe8\xf7\x79\xf3\xeb\xbc\x66\xcb\x04\x29\x52\x30\xe0\x84\x8f\xe8\xcf\x82\x96\xab\xec\xd1\x38\xa1\xf6\x63\xeb\x93\xcc\x4c\x64\xa5\xf0\xd6\x4f\x5c\x83\x28\x31\x11\xbf\x25\xe9\xc8\x00\x4e\xd2\xb7\x79\x37\x4a\xcc\xe5\xf7\xf2\xc6\x56\x7e\x91\x6d\x6d\x2f\x6c\x05\xd8\xa6\x23\x32\x0b\x47\x8f\x02\xfe\x89\x0e\x95\x43\xc0\xa2\x96\x64\x4a\x34\x18\x5b\x0d\x9a\x14\x62\x06\xc7\x7e\xee\x10\xc8\xe6\xbf\x4a\x14\x8f\xcd\xf7\x90\xac\xc1\x6a\x5f\xd9\x66\x2e\xa4\x3b\x65\xfc\xa1\xcf\x92\xda\xe0\x42\x3c\x63\xe5\xba\xfa\x45\xc7\x44\xa3\x05\x45\x0e\x86\xaf\xb8\xfd\x72\xf7\xa8\x5f\x23\x1c\x79\x45\xb7\x9c\x2e\xe5\x91\x38\x5b\xd3\x5c\x34\x9c\xd6\x51\x45\x74\x2e\x0e\xc4\x19\x69\x02\x87\xb5\xfe\x67\xf1\x9f\x4f\xe3\x1f\x75\x46\xf5\x7c\xfa\x73\x34\xa4\xd1\x57\xdb\xa8\x57\x86\x16\x93\x3b\x0c\xba\x9c\xd7\xdd\xe7\x11\xed\x0f\x75\x24\x9c\x10\x72\xd7\x7a\xfb\x9e\x8e\x3e\xbe\xff\xf1\xd3\x9b\x8f\x8b\x37\x7f\x7a\xf3\xc3\xa7\xc5\xeb\x37\x1f\x3e\xbe\x79\x75\xa9\xa0\xde\xf4\xbb\xc5\xab\xf7\x3f\xfc\xf0\x46\xc3\xbf\x79\xf2\xfc\x6d\x3c\x2f\xd6\x9d\xf5\x04\x39\xb5\xc6\xff\x97\xe7\x28\x4d\xa9\xa1\xa7\x8f\xad\x64\x66\x20\xb4\xd5\x82\x7a\x6a\x8d\xf2\x6c\x3c\x1f\x30\xc8\xe4\x3e\xe5\x33\x36\xb7\x88\xb3\x0a\xb9\x62\xf2\x62\xc1\x56\xff\xa8\xf3\x42\x31\x88\x5b\xec\x16\x4a\xd8\x2a\x31\x52\x1d\xb7\x6f\x1c\x32\x07\xf2\xd3\xac\x9d\xf0\xb6\x8d\x4d\xf2\x56\xa1\xe8\xe2\x9b\xb8\x95\xa1\x7a\xb6\x2f\x9e\xce\x62\x23\x25\x74\x70\xc0\xe3\x5d\xdb\x43\xe5\x42\x03\xaa\x58\x68\xc0\xa2\xa6\x4e\xff\xd9\x77\x5b\xb3\x26\x4e\xa3\xdf\x90\x1c\xbb\x2b\x7f\x95\xc5\x02\x81\xb1\x72\x50\x5e\x80\x1a\x10\x58\x85\xbe\x33\x8f\x4e\x72\x0a\x9a\x69\x3f\x5f\xb4\x7e\x44\xa8\xfe\x63\xc0\x2d\xb4\x62\xc6\x49\x46\x89\x90\x1f\x5c\xbf\xdc\xed\x66\x73\x07\xa8\xc8\xbc\xef\xa5\x5c\xe7\x16\x3f\x6d\x47\x3f\x6d\x6b\x48\x9b\xef\xd9\xa6\xcd\xde\xd0\xb0\x1a\x36\xc7\xcf\x70\x98\x2b\x74\x0d\x0a\x1a\x73\xe0\x93\xf8\x2c\x9f\xbb\x24\x3b\x64\x7c\x51\x3b\x88\xca\xe1\xb0\x36\x59\x74\xd8\xac\x9e\x0f\x12\x30\x01\x27\x90\x51\xa1\x5e\x56\x5b\x49\xd4\x1b\xc9\x74\x89\x9a\x54\xa8\x6d\x61\x51\x72\xd0\x9d\xff\xf1\x83\xc6\x64\x89\x25\xc0\xb2\xb6\xcc\x4e\xd9\x8c\xaa\x66\x6d\x56\x56\xb0\x3d\x0b\xb5\xd8\xe0\x18\xc8\xca\x9b\x58\xcb\xdd\x76\x7b\x65\x33\x3a\x6a\x78\x01\x79\x03\x31\x68\xb4\xf2\xdb\xba\x6b\xfb\x3f\x22\xf0\x1b\xda\x9f\x24\x43\x8a\x82\x04\x12\x06\xa2\xf5\xb1\xf5\x35\xb0\xfb\x2c\xb6\x6a\xd2\xce\x50\x25\xbf\xdd\xb4\x9c\xad\x46\x57\x9f\x2e\x3f\xbd\x59\x5c\xfd\xf5\xdd\xb7\xef\xbf\x9f\x4f\x0e\xb6\xa1\x62\x2d\x72\xc2\xc3\xfd\xaa\x14\x20\x22\x48\x47\xa0\x67\x3b\xcb\xe7\x52\xd4\xbd\x0f\xac\x1f\xbe\xcd\xbd\x41\x23\x4e\x57\xcd\x32\x80\x9b\xf6\x5c\xdd\xe8\x4c\xcc\x49\x33\x13\x73\x0c\xda\x2b\x1d\x71\xa0\x89\xa3\xbb\xcb\xff\x40\xa3\x48\xbd\x74\x4f\xf1\xc3\xc9\x91\xcd\xec\x23\x15\x81\x8d\x92\x8d\xae\xe8\x17\x37\x1b\xad\x6a\x1b\x5e\x68\xa9\xe6\xbb\x8a\x47\x1b\xf6\x62\x8c\x82\x43\xe9\x19\xd4\x46\xc9\xd0\x6e\x3c\x9d\x62\xfc\x40\xc1\x2d\xaf\xb6\x68\xb7\x7b\x6c\x55\x2c\x42\x4d\x85\x63\x2c\xf7\xf8\xbe\xc8\x92\xf4\xe7\x48\x0c\xd3\x8a\xc2\x36\x53\x32\xb5\xf6\x92\xd1\xee\x4b\xee\x55\x62\x5e\xe9\x84\x9d\x7f\x62\xf4\xbe\xd6\xbe\xed\xe6\x46\xff\x48\xbb\x09\x2e\x03\x6a\xe6\xae\xf4\x01\xf7\xc1\x93\xa2\xa4\x4a\x09\xdc\x23\x56\xaa\x23\x60\xba\xef\x4c\x55\x19\xdc\x60\x14\xb4\x14\xe1\xd4\x6f\x95\x79\x44\xb6\x38\x9b\xeb\xea\x7b\x27\xea\xa6\xa9\xf6\x89\xf9\xed\x37\x28\xdf\xec\x7b\xfe\xa4\x3b\xd7\x57\x02\x2b\xcf\x68\xc7\x35\x28\xe2\xd0\x04\x71\xbb\x9b\xfd\x98\x47\x1c\xe9\x78\x36\x41\xf9\x2d\x5d\xb1\x5c\x78\x14\xe6\xd7\x1a\xbe\xbd\x94\x0e\x0e\x0c\x57\x84\xcd\xc6\x73\x9c\x13\xa6\x35\xba\xe7\xe8\xa2\x37\xe7\x7d\x23\xb7\xf3\x9f\x55\xd6\x6c\x9d\x23\x1d\xae\xb3\xe6\x34\x16\xf5\xf7\x94\xc7\x0c\x54\x33\x30\xc9\xf5\x3e\x17\xb3\x5f\xfd\x33\x7b\xfd\x3e\xef\x2b\x77\xb2\xf8\x7a\xa0\x19\xac\x7b\x2a\x65\x7d\x5f\x29\xab\xbd\xb9\x3a\xa5\xa4\x08\xcc\xc0\x39\x8f\xad\x33\x4e\x2a\x5d\xa3\x2f\xdf\x66\x0c\xe1\xd3\x4e\x65\x93\x08\x30\x72\xe2\x13\x79\xe5\xb8\x6c\x0d\x53\x57\xa4\xc6\xc9\xd6\xbb\xe4\xeb\x04\x4d\x66\xf3\x8b\xce\xcd\x23\xe2\xe0\xd7\xfe\xd5\x0b\x2d\xae\x6c\x2a\x85\xef\x2a\x6e\x78\x07\xc5\xaf\x7a\xd7\x7a\xae\xaf\x71\x97\x78\x41\xb3\xb4\x1a\xdb\x3d\x48\x8b\xe6\x69\x7b\x6e\xa8\x08\x13\xbf\xda\x37\x35\x15\x9a\xaa\x87\xf2\x08\x32\xd9\x83\x8b\xd1\x8a\x6e\x69\xb9\xa2\xa5\xf8\x03\x7d\x78\x05\x82\x18\xca\x1e\x6f\xa8\x98\x40\xbb\x90\x86\x1c\xda\x69\x11\x6a\x95\x7f\xc7\x6a\x65\xf2\xec\x40\x33\x43\x40\xad\xc3\x54\x61\xd3\x69\x76\x06\xd2\xf5\x23\xd4\xa2\x8c\xe3\x46\x93\x3d\xf7\x41\x08\x6f\x95\x71\x28\xfe\x45\xd6\x64\xa9\x29\xb1\x4a\x31\xe1\x53\xed\xf5\x08\x4c\x0d\xef\xef\x28\xe7\x6c\x45\x6b\xf9\x15\x60\x4b\x02\xab\x0b\x77\x15\x7c\x2e\x14\xf8\xe2\x61\xd1\xe5\x5e\xd4\x66\x7b\x5b\xae\x2b\xad\x4d\xdf\xea\xbd\x7f\xed\x10\x15\xf1\x2d\x91\xf5\x3e\x5c\x7e\xbc\x7c\x77\x65\x2a\x0e\x96\xa3\x60\x5f\x44\x76\x80\x75\x98\x5b\x8e\x6e\xf3\xed\x8c\xce\x07\xc2\xe8\x0d\x6e\x7d\x92\xb4\xcc\x8b\x65\x53\x40\x30\xc9\x72\x43\xe5\x15\x9c\x69\x43\x62\x87\x69\x12\x8a\x85\xc5\xa6\x19\x49\xb1\xb6\x86\xe7\x63\xf2\x32\x1a\x35\xe5\x8a\x2e\x2b\xd0\x3d\x69\xb1\x11\xdc\x54\x43\xf0\x1f\x8a\x2b\x9b\x96\xfa\x8e\xdc\x6b\xcb\x58\x77\x69\x5c\x1d\x5f\xb6\xe2\xf8\x4e\xeb\x52\xe1\x70\xf7\x6e\x43\xed\xad\xec\x81\xa1\x59\xa5\x6b\xbd\xa9\x9a\x62\xf5\x51\x6e\x33\x9e\xa6\xfa\x46\x95\x3f\x3e\xd1\xdb\xad\x9c\x3f\xf8\x67\x29\x34\xa2\x75\xd1\xd4\x9b\xcb\xfa\xa1\x5c\x7a\xc9\x9c\xe4\x66\x92\x57\xbe\xdd\x5e\x31\x87\x83\x4e\x92\x5d\xff\x3b\xee\x5f\x6f\x1e\x5d\x6f\xae\xd7\x9b\x9b\xf5\x1e\x94\x6a\x7f\xa9\xc5\x46\xc0\xff\x5c\xd3\x75\xc5\xe9\x3b\x29\x70\xf4\xee\xeb\xb5\x24\xe7\xb1\x37\x9c\xae\x18\xef\xc4\x5b\xb5\xb8\x36\x52\xa4\xf5\xd9\xee\xb1\x4b\xda\xe5\x45\x35\x6a\x8f\x13\xfd\x59\xc8\xda\xb7\x61\x57\x16\x5b\xd2\xa4\x78\x8a\xb1\x3a\xb7\xf9\xd6\x4b\x5e\xda\x80\x60\x8e\x40\xb2\x0f\xf0\x2d\xa5\x28\xb5\xdb\xd5\x69\x0a\x25\x4c\xd2\xd2\x82\x34\xca\xd4\x96\xbd\xf8\xbf\xd9\xe8\x7f\x20\x90\xdd\x15\x9d\x3a\x25\xa4\x00\xfb\x56\x31\x3b\x97\x57\x2a\x9d\x35\x73\xb9\x5f\x4f\xc7\xad\x6c\x9d\xc1\xb7\x32\x39\xca\xba\xb2\x00\xd5\x49\x65\xb4\x11\x0c\x2c\x76\x2f\xcf\x4d\x72\x03\x23\xd9\x1f\x38\xcb\xb3\xb0\xee\xd9\xf9\xdc\xae\x93\x7f\xf3\xae\x59\xb9\x82\xa5\xcc\x18\xce\xbb\x4c\xfa\x9e\x40\x1a\x30\x2f\x42\x1d\xb5\xc1\xac\x8c\x96\x75\x2e\x2f\x8a\x34\x73\x68\x7b\xe9\x19\x2b\xdd\x85\xdb\xfd\x34\xb5\xa8\x38\x4d\x10\x82\xca\xf6\xd2\xf5\xe1\x0f\x7b\x07\xb0\x1b\xc1\x62\xb2\x25\x69\x10\x11\x7b\xfe\x29\xd6\xe2\xb1\x1e\x5e\x70\xbb\xc6\xb3\xce\xf4\x15\x0b\x90\x17\xbb\x2f\x6c\xf2\x34\xe5\x9d\x4b\x1d\xf4\xa9\xdd\x87\x46\xaf\x2c\xe2\xfe\x30\x9e\x27\x90\x0a\xa2\xef\x5e\xef\x47\x0e\xd3\xe1\x79\x59\x18\x5d\x40\xf3\x42\xf6\xb4\x44\xa7\x8c\xe3\xd2\x35\x0e\xe5\x65\x4d\xc2\xf6\x70\x6f\xd3\x67\x89\xd6\x13\xad\x74\x13\x44\x51\xa2\xfc\xba\xf0\xbf\x5f\x39\xbd\x02\xda\x38\xa1\x16\xa3\xb0\xbb\xf8\x3a\x0f\x08\x9c\xbc\xd2\x78\x26\x54\x69\x5a\xb9\x1d\xb9\xdb\x09\x95\x18\x44\x1f\x0d\xb5\x29\xeb\x6e\x4a\xaf\xdc\xfa\x69\x75\x4b\xce\xf2\xb9\x39\x3e\xd0\xb2\x4f\x8c\x14\x55\xf3\xa9\x79\x3f\x96\x14\x5e\x9b\x08\x76\xf9\x77\x94\x35\x2c\x09\x24\xfb\xea\x30\xb2\x83\x72\xb7\xeb\x27\xbc\x91\x73\x9a\x72\x42\x27\x99\x16\xf3\x84\xee\x3c\xca\x4e\x0a\x42\x91\xb1\xa2\x2d\xd4\x41\x2b\x31\x97\x9c\xd5\xad\xf2\x33\x03\x1d\x0a\x58\xc7\x18\xdc\x43\xcb\x51\x55\x2e\x69\x87\x87\x48\x16\x35\x15\xef\x1b\x51\x50\x51\x6b\x89\x8d\xd5\xcb\xaa\x2c\xe9\x52\x3f\x8e\xed\x28\x40\xd9\xe8\xe7\xc2\x9f\x0a\x39\x78\x08\x55\x84\xaa\x00\x12\xa9\xac\x83\x52\xc8\x9d\xfa\x3f\xfc\x08\xd1\x17\x37\x38\x19\x25\x48\xef\x1b\x84\xb0\x50\xe9\x2a\x73\x66\xf1\xa3\xba\xa3\x02\x67\x3d\x2f\xe9\xc9\xc1\x0d\xea\x3b\x64\x02\x45\xd5\xc0\x79\xa5\x9f\x86\xbb\x9c\x31\x4d\x74\xf7\xf4\x06\xb7\xf5\x81\xd5\x71\x32\xfa\xb5\x39\xb0\x69\x0a\xb9\x84\xdc\x57\x83\xe8\x51\x3d\x4d\x6f\xf4\xde\x17\x8b\x0d\x4d\x7b\xf2\xc8\x11\x0e\x2a\xbd\xb6\xca\xba\x53\x49\x09\xae\xd2\xa0\x8b\x80\x00\xf8\x08\x06\x8f\x49\xa5\xf2\x84\x61\xf9\x7a\xa2\x4a\x61\x55\x71\x62\x5a\xc0\xe0\x49\x51\x81\x52\x12\x7b\x14\xcb\xe4\x99\xd2\x9b\xcf\xfc\x06\x0a\x33\x31\xa0\x26\xc7\xed\x27\xd4\x7a\xaa\x03\x85\x21\x72\x28\xe8\x3f\xa2\x11\x09\x1e\xf5\xfd\x63\xbc\x85\x1b\xb8\xc0\x5a\x97\x39\xe7\x9b\x71\x9a\x66\x1d\xf5\xc5\xb1\x43\x97\xec\x50\xc3\x8a\x95\xdd\x36\xef\xa8\xc8\x57\xb9\xc8\x43\x3e\xa7\x8a\x02\x3f\x5e\x3b\x5a\xde\x73\x58\x0d\x6d\xe1\x4a\xfc\x3b\x35\x39\xae\xba\x89\x7c\xcc\x3e\x28\x55\x36\x43\x70\xb3\x56\x7e\x79\x84\xd8\xe4\x57\x62\x56\x0e\xb9\x91\x78\xdb\x0c\xc4\x96\x43\x3a\x4c\x8f\xb9\xc0\x67\xe7\x2e\xe4\x25\x4d\x35\xaf\xee\x8c\xf8\x8b\xd0\xf5\xdf\xb3\x15\x75\xaf\x15\x70\xcf\x71\x49\x8a\x4a\x48\xee\x5b\xc2\xd6\x4b\x53\xf5\x6f\xe4\xd0\xe3\x86\x94\x66\x43\xae\x49\xe9\x5d\xad\xb8\x30\xe1\x4f\xb2\x50\xe3\x08\xc2\x34\xab\x08\xf5\x28\x61\x4e\x68\x87\x54\x56\x68\x92\x93\x2a\x84\x9f\x30\xfd\xd9\xe5\x5f\xa7\x69\xb6\x26\x62\x4a\x7b\x82\xfb\x32\x7e\x91\x57\x68\xb2\xf7\xcd\x6e\xd7\x6f\xc6\x1b\x23\xc2\x3d\x6a\xb9\x56\x0b\xba\x22\xeb\x81\x94\x0d\xa3\xed\xae\x90\x4b\x18\x59\x4c\x0b\x42\x83\x5b\x6a\xb2\x86\x8d\x6d\x18\xa0\x42\x7b\x31\xe1\xad\xd7\x9c\x3d\xc5\xc9\x30\xb7\xdf\xb9\x4e\xd3\x6c\x43\xe4\x16\x45\x69\x5a\x13\x42\x36\x01\x85\xb2\x29\x1c\xb1\x26\x26\x4b\x45\x46\x6a\x43\x41\x1a\x4d\x3a\x7c\xaa\xb1\xd6\x04\xa2\xe8\x12\x8e\x53\x42\xb6\xd3\x6d\xb6\x44\x13\x3a\x5a\x88\x6a\xfb\x3d\xbd\xa3\x85\x3c\xce\x56\x50\x5a\xfa\x68\xa4\xf7\x8a\xd3\xe7\x7e\xb8\x98\xe4\x6b\xba\x0f\x76\x3b\xad\xf7\x67\xa4\x23\xe9\x28\x6e\x3b\x2c\x3d\x63\x2e\xc5\x76\xff\x95\x3d\x73\x55\x47\xde\xb0\x55\x64\x07\x9e\xe5\x7c\xb7\xcb\x7a\xcf\xc8\x63\x8b\x03\xd6\xbf\x57\x02\x07\x5d\x23\x79\x48\xa3\xba\xf0\xda\x48\x70\xea\x80\xf6\xda\x41\xa8\xff\xac\xcd\xec\x91\xc7\x10\xe7\x11\x99\xa6\x1c\x61\x1d\x5a\x1f\x9d\x29\x4b\xa5\x08\xae\x9d\x11\xaa\x31\x52\x11\x64\x06\x5e\x92\x02\x54\x04\x90\xa0\x76\x90\xcf\xd4\xaf\x39\x59\x4e\x2b\xf3\xf7\xe4\x4d\x66\x33\x72\x28\x39\xdd\xf0\x57\xb9\xfb\xbc\x6f\x3c\xeb\x44\x90\xa7\x3e\xa3\x68\x0a\x70\x8e\x97\x28\xa3\x5a\x63\x89\xd0\xc4\xa3\x44\x57\xd6\xca\x47\x2d\x5b\xe9\x5c\x5e\x9c\x03\xe0\x20\xe2\xbc\xa4\x12\x5d\x4f\xb8\x72\x52\xb2\x62\x53\x7b\xa3\x03\x48\x5e\x15\x79\x5d\x67\x8f\x4c\x45\x42\x69\x7f\x12\x65\xca\xbe\xf1\x02\xa5\x6b\xcf\x9a\x6d\xaa\x66\xd5\xe8\x12\x06\xa8\xd1\x62\x70\xe5\x62\xfc\xba\x99\x77\x0f\xe6\x59\x78\x6c\xb1\x4f\xc5\x74\x9a\x05\xb0\x48\xaa\xbf\x43\xfa\xa2\x9e\x81\x68\x35\x81\x6f\x6a\x42\xdf\xb4\xaa\xab\x77\x57\x46\x65\x8a\x0e\x53\xd9\x13\xaa\xf5\x2d\x52\x1a\xcf\x2c\x8b\x8d\xf5\x28\x65\xb9\x89\xef\x1b\x6e\x54\x15\xa1\xfb\x91\xa2\x0a\x96\xa5\x37\x32\x72\x29\x49\xbd\x5c\x74\x25\x14\x66\x5c\x19\x32\xfd\x71\x53\xad\x06\xeb\xeb\xf9\x60\x6c\xd4\x26\x99\x6e\x11\x5e\xfc\xb4\xed\x2e\x42\x17\x9d\x92\x6a\xc8\x23\x9c\x1f\xa5\xad\xad\xe3\x52\x53\x43\xea\x38\xa9\xce\x91\x4a\x36\xbd\xcf\xd6\x94\x20\xbc\x0c\xa2\x6d\x0b\x2f\xda\x56\x65\x80\xbe\x83\x1c\xc6\xae\x8d\xa6\xd3\x00\x90\x3c\x1a\x51\x89\x94\xf2\x64\x33\xf2\xe8\x1f\xbe\xc9\xe9\x18\xcb\x3d\x2b\xff\x05\xf3\xae\xfc\x23\xaf\xe5\x9e\x76\xe4\xce\x2a\x48\x68\x57\x6e\x32\xb8\xe5\x39\x79\x6c\x2f\x02\xb2\x96\x63\x3a\xab\xe6\x98\xcf\xaa\x39\xc2\xe5\xac\x9a\x93\x1c\x33\xf9\xcf\xe9\xd8\x66\xbf\xae\xf7\x67\x5f\xaf\x51\x9a\x9e\xb2\x59\x3d\x37\x36\xee\x6e\xfb\x0d\xe6\xb3\x7a\x8e\xa9\x2c\x82\xcb\x59\x3d\x27\x4d\x6b\xe5\xe7\x0c\x74\x5e\x36\xf6\xce\xc9\xd0\x3e\x79\xcc\xd6\x08\x17\xda\xa7\x62\x09\xfe\xc5\xa1\xcc\x5c\xe3\x1c\x61\x4a\xf4\x7d\xb9\x22\xb3\x39\xbe\x95\x2b\x78\x47\x66\xee\x2a\x78\xd8\xbf\x36\x0f\x28\x4d\x13\x9d\xc9\xd1\x3c\x4c\x4e\x09\x79\x48\xd3\x44\xa1\x18\xc2\x2f\xe3\xe2\x4a\x67\x0f\x73\x7c\x4d\x6e\x94\x95\x5d\xb2\x31\xea\xbe\x5e\x18\x66\xc9\xdb\x48\x92\x50\x5d\xa7\x69\xb6\x80\xbc\xad\xb2\xfe\x3d\xb9\x19\xe5\xb5\xde\x9e\x71\xcb\x6f\xf6\x80\xf0\x55\xb0\x6f\x1e\xd0\xe0\x8a\xbc\xc9\xae\x54\x13\xef\xc9\xcd\x48\x6e\x05\xd0\x9a\x57\xf0\xe7\xfb\x35\xca\xae\x10\xfe\x99\xec\x6b\x36\xbb\xc2\xf7\xf8\x3d\xc2\x97\x24\x1f\x26\x93\x64\xf8\x80\x3f\x93\xc7\x3d\xfa\xd8\x49\xd8\x35\x0e\xb6\xe1\x15\xb6\xad\x87\x95\x7e\xf6\x5e\x98\x27\xb0\x61\xdf\x63\x65\xbb\x9d\xdc\x63\x79\xaf\x4c\x1e\x70\xdf\x3d\x61\x72\xd9\xa5\x86\x39\x56\xca\x03\x38\x78\xa0\xe9\x9c\x2c\x54\x9e\x69\x4d\x3d\xd5\x21\xb8\x6e\x07\xb7\xb3\x87\x39\xb9\x9d\xdd\xcb\xff\x5d\xce\xc9\x67\xbc\x52\x52\xf2\x67\x84\xef\xd4\x5f\x0f\xe6\xe6\x7a\xfc\x69\x5b\x4f\x56\xf8\x36\xdf\x4e\x6e\x71\xa0\x21\x9f\xdc\x61\xa5\xcd\x9f\x3c\x1a\xc3\xea\xa4\x2f\x0a\x96\xe4\x76\x46\xe7\xca\x46\x6b\x7d\x22\xb4\xdb\xff\x93\x95\x0c\xef\xd1\xab\x8b\x23\x3e\x1c\x25\xe8\xbf\x42\x33\xc2\x97\xb6\xdd\xf7\xe3\x28\x25\x75\x6e\x11\xc2\x35\xf5\x89\xfe\x57\xc5\xd8\x38\x5e\x1b\xb5\xdb\x9d\x66\x63\x5c\x8f\x58\xfd\x89\xd6\x72\xa0\x28\xd3\xd4\xaa\xbc\xc8\xca\x8e\xb9\x4f\x8e\x58\xab\x1c\x61\x8d\x24\x55\x30\xde\x5b\x16\x6b\x5e\x9b\xe6\x72\x98\x16\xc0\x47\x78\xfa\xdc\x93\x00\xde\x02\x14\xe5\xba\xe0\xc4\x0f\xe3\xb5\x6a\xee\x49\x57\xe0\x3b\xe8\x49\x94\xa0\xd1\x6d\xbe\xc5\x55\x70\x37\x50\x64\x8c\xae\xfe\x53\x8e\x8c\x6f\x51\xe5\xfb\x16\x69\x43\x20\x9b\x55\xb3\x7c\x0e\x23\xaf\xb5\x86\xd4\xf6\x14\xf7\xaa\xc8\x6a\x84\x13\x6d\x97\x05\x81\x22\x41\x9d\x85\xf7\x03\x60\xad\xde\x4b\xd9\x71\xd1\xe0\x9a\xd3\xfc\xb3\xc9\x17\x7b\x3a\x6e\xf1\x9a\x95\x1d\x2a\xb2\x67\x41\xd8\x3a\xeb\xba\x96\xf7\xbd\xc0\x5c\x02\x66\x67\x07\x61\xb8\x22\x87\x34\xe5\xe6\x6e\x37\x9c\x70\x4d\xf2\xd1\x22\xe4\x83\xb3\x4a\x5e\xe2\xf2\xf1\x56\xe1\xaa\xd5\x90\x7f\xe4\x22\x6e\x6f\xcb\x71\xe5\xf4\x34\x4b\x32\xbe\x58\xbe\xac\x25\xc3\xec\xd6\x7f\x69\xee\x6d\x78\x3e\x5b\xce\xf1\x96\xac\xd5\x90\xf0\x2d\xd9\xfa\xf2\xec\x1d\x59\x6b\xb7\x14\xb8\x5b\xd2\xd4\xfc\xc4\x0f\x26\x61\xd7\x8d\x27\x40\x37\x10\x37\x6a\xca\xa0\x69\xf6\xe0\xed\x9f\x5b\xbc\x56\x9e\x2b\xf8\x86\x6c\xa3\x04\xfc\x01\xdb\xe6\xd7\x40\xf3\x11\x9a\xdc\x4d\x5d\xde\x7e\x79\x31\xdd\xcd\x51\x9a\x66\x0f\x64\x1b\xf7\xe7\xc9\x6e\x22\x6d\x64\x37\x64\x3d\x8a\xd3\x74\xfc\x40\xde\x64\xeb\x50\x06\x40\xf8\x76\x8f\x87\xca\x76\x9f\x7b\xca\xcd\x29\x09\xba\x50\x0d\x3d\x76\xc5\xba\xf7\x65\xf1\x90\xa6\xa7\xe7\xa7\x84\xe8\x60\xb7\x6b\xb2\xdd\xb3\xd3\xd7\x48\x45\x6b\xe8\xae\xaf\xb1\x03\x23\x18\x2c\xa6\x8c\x9c\x8e\x27\x90\xbb\x64\x01\x56\x9e\xd3\x73\x6d\x16\xae\xfd\xa5\x96\x57\x5b\x01\x5c\x4e\x77\x6c\x44\xae\x53\x7c\x49\x08\x21\x37\x69\x7a\xca\x0f\xc2\xee\xec\x76\x2a\x86\x2f\xd3\x2e\xb4\x37\xf8\x8e\xd5\x4c\x67\xbc\xfb\x4c\x1f\x26\x77\xbb\x9d\xf9\x10\x2d\x6a\x4f\x41\x1d\xa0\xcf\xf8\x3e\xdb\x22\x66\x69\xca\x23\xd0\x0b\x6a\xfb\x1e\xb0\xef\x7a\xf2\xa1\xde\xc6\x8a\x4c\x0d\xf4\x4f\x6f\x47\xef\x73\x3d\xc2\x89\xfe\xa8\xe6\x93\xca\xab\xc3\x3f\x72\xa3\x65\x41\x73\x9e\xa9\x5b\x05\x1f\xf2\xe9\x7d\xc0\x4d\xf0\xf6\x0a\xd2\x43\x1f\x28\x4f\x1e\xab\x72\xd2\x55\x2c\x1e\xc2\x96\x6e\x5b\x27\xca\x3d\xe0\x47\x67\x02\x9b\x44\x4d\x66\xce\x0c\xf5\x1c\x93\x88\x32\xa0\x38\xeb\x1a\x45\x13\x01\x17\x2a\x70\x64\x35\x15\xdf\xf1\xfc\x96\xde\x57\xfc\x33\x48\xa2\x28\xbb\xb1\xac\x9b\xe7\xe3\xff\xfe\xd9\x8e\xf5\xcf\x04\x6d\xfb\x2a\x6e\xf4\xcf\x71\x96\xd7\x91\x54\x07\xb0\x5a\x9e\x9d\x9f\xe3\x98\x94\xd2\xcf\x72\xa4\x7f\x6e\xa2\xe4\xe7\x65\x55\x5e\x68\xe4\x59\x2f\x0c\xe0\xcb\x13\x0f\x7b\x4e\xed\xe8\xf1\x83\x16\x59\xd5\x46\x55\x19\x59\xae\x8a\xea\xde\xf3\xf3\x62\xb7\x0e\xca\xb8\xac\x04\x5b\x3f\x18\x26\x5b\xdd\xdc\x59\xd2\xf0\xc2\x38\x0c\x82\xae\x31\x80\xc4\xd0\x9e\x7f\x0e\x57\x03\x29\xf7\x1b\xa7\x5c\x0f\x7c\x03\x71\xb2\x62\x2b\xd7\x7b\x82\x9c\x6e\xe7\xc1\xb0\x06\x87\xeb\xdf\xb3\xa2\xf0\x1a\xc0\xdc\x6b\xe2\xa6\xe3\xa3\xf9\x05\x31\x0b\xba\x1f\x50\xdf\x90\xcb\x38\x2a\xc0\x35\x51\x6a\x2b\x4f\x29\x54\xb0\x25\xc5\x8b\xaf\xe6\x7b\x6f\x81\x9b\x54\x84\xbd\xe8\xe1\x89\x74\x9e\x03\xe0\x63\xa4\xa8\x79\x26\x79\x7c\x80\xe3\xd0\x2b\xa2\xb2\x10\x66\x3a\x2a\xc8\xa3\xca\xc0\xb0\x5f\x51\x21\x1f\x2a\x24\x97\x15\xc4\x53\x07\x2f\x4c\x60\xa8\x8a\xbe\xad\xf7\x35\xea\xe2\x47\xbf\x7d\x50\xa3\x89\x17\xf4\xf7\x93\x19\xb0\xb7\xa1\xec\x1c\xc0\x5b\xf5\x8f\x0d\x6d\xe8\xca\xdd\x9e\x54\x50\xae\x36\x6a\x2d\x77\x71\x14\x25\xe9\xc9\x48\x05\x56\x32\xb5\x5e\xfc\xf7\x11\x03\x13\x04\x3f\xdc\x44\x92\x02\x20\xed\xf5\xa7\x92\x63\x95\x3d\x45\x51\x7c\x65\x3c\x10\xc8\xd2\xdb\x25\x8d\x9f\x69\xfb\xb9\x38\x50\x0d\x2e\xd5\x0c\x97\xa4\xe9\xcf\x70\x29\x47\xd6\xc7\x81\xd2\xa8\x0f\x98\x93\x0a\x97\x84\x45\x3e\xd8\x4c\xcc\x07\x25\x58\xa8\xd8\x68\x71\x43\xc5\x9b\xe0\xc3\x67\x25\x92\x12\xde\x28\x88\x79\x35\x19\x83\x9c\x1d\x1f\x37\xce\xba\x9f\x83\x06\xb0\x9e\x51\xab\x8a\x6f\xcc\x03\x72\x3a\xc6\xa7\x56\xe1\xcc\x03\x05\xa2\x6a\xab\x13\xba\xe8\xa2\x0a\x73\x5c\x98\x28\x46\x84\xc2\xee\x5a\x60\xa2\x83\x50\x14\xf0\x1a\x4d\xd3\x53\xe0\xf6\x23\xd1\x48\x28\x6b\xd0\x41\x38\x81\x65\x53\x8b\xea\xd6\xe1\x09\x9c\x28\x0e\xeb\xa4\x2a\x3d\xfc\x00\x85\x2f\xa0\x51\x04\x34\x00\xad\xc2\x11\x30\x13\x6f\x31\x7c\x17\xdb\x6f\xcc\x07\x24\xfa\x51\xa8\x92\x95\xad\xe1\xaf\x0b\x9e\xb0\xdb\x6d\x7a\xa1\x57\xb2\xb3\xa6\x8f\x21\x2d\x02\x6a\xeb\xab\x4b\xa9\xc6\xa8\xce\x82\xac\x18\x0c\x27\x1e\xa8\x9c\x14\x84\x11\x92\x4d\x07\x44\x3d\x98\x47\xde\x65\xdd\x58\x58\x18\x77\x7e\x03\xce\xcf\x72\x14\x52\xf9\x9e\xfd\x34\xd2\x6a\x58\x03\x77\x1f\x58\x94\xb0\x65\x48\xe2\xfb\xe8\x66\xc6\x32\x01\x69\x8e\x32\x86\xec\x1b\x59\x17\x3e\xab\x43\x34\x0d\xa6\xca\x0e\x03\x9f\x9a\xda\x11\x5f\x38\xa8\xec\xdf\xad\x3a\xbb\x38\x1d\x89\x2a\xb8\x4f\xfd\x2f\xd4\xed\xae\x8f\x8b\xba\xf4\xfc\xd9\x5f\x33\x45\xc8\xe3\x4e\x60\x74\x74\x9f\xd7\x97\xd7\xb0\x47\xa5\x24\xc2\xcc\x8f\x69\x36\xc6\xb7\xa3\xa2\xba\x81\xdf\x28\x13\x68\x92\x39\x40\xd6\xd3\x73\x0b\x33\x40\x47\xf0\x07\x16\x58\xcb\x08\x08\xb3\xd1\x82\xd5\xd0\xa9\x32\x8b\xac\x32\x5d\x08\x4d\xc1\x1f\x54\x03\x8d\x9b\x58\x84\x60\x0e\x19\xc4\x75\xab\xd2\xb2\xc7\x5c\x76\x9f\xb9\x67\x30\xbb\x85\x1e\x87\x5b\xe8\x57\x3a\x68\xad\xef\x98\xce\xba\x15\xbe\xa7\x79\x88\xef\xe9\x17\x8c\x25\xdb\xb0\x76\x27\xfb\xee\xc0\xe1\x71\x85\x8e\x38\x40\xa0\xa5\x86\x45\xb0\x47\x14\xc0\x24\x9b\x36\xb3\x59\xcd\x11\x5e\x06\xe2\x86\x11\x33\xe0\x5e\x6e\xf0\xda\x1a\x34\x6a\xc1\x1b\x49\x39\x47\xab\xba\x30\x60\xee\xf5\x6e\x37\xbb\x99\xe3\x95\x75\x21\x65\xc5\xea\xf5\xd5\xf7\x19\x1a\xac\x0c\x62\x88\xaf\x8b\x71\xb8\x21\xb8\x83\x58\x70\x3a\xc6\x95\x56\x2d\x82\x7f\x7c\x5d\x53\x0e\xee\x5e\xa7\xe3\x36\x08\xff\x75\x4a\xc1\xf1\x05\x7d\xb9\x36\xba\x12\x3a\x1c\xa2\x35\xc0\xe0\xe5\x45\xa1\xe3\x00\x10\xc2\xe0\x4f\x9c\xad\x02\x90\x1b\xec\x0d\x74\x0f\x28\xca\x62\x93\x6b\x2e\xee\xdb\xbc\xa6\xab\x8f\xca\xb7\x0b\xb8\x59\x75\x2f\xf3\xf8\xbd\xcc\xc8\x63\x1c\x91\x62\x42\x71\x07\xa6\x64\x12\x89\xa8\x8a\xdc\x4d\x67\xb7\xf9\x16\xdc\xfc\x5a\xdc\x43\x62\xe8\xe4\x46\x8f\x31\x46\x33\x0a\xa8\x31\xf1\x37\x84\xa3\xd6\xa2\x11\xca\xaf\x6d\xd3\xfe\x03\x43\x81\x99\x49\x89\x71\x98\x3b\xea\xe7\xc7\xf8\x49\x15\xfe\x60\x0a\xa8\xf0\xa7\x3d\x8b\x1a\x65\x8b\x7a\x4b\x0b\x6e\x2c\x34\x04\x98\x15\x1e\x03\x45\xb1\xbf\xd1\x46\x8b\x85\xba\xc3\xf9\xc3\x62\x61\x5c\xf3\xf8\xe8\xb6\xdf\xbb\xbb\x36\x2d\xdc\x95\xf2\x18\x15\x39\x07\x62\xc9\xca\x9b\xa7\x19\x37\xc9\xe6\xb1\xbc\x00\xe4\x52\xab\x6e\x06\xa7\x53\xc5\xfc\x81\x0a\x39\x8c\x9b\xdf\xcf\xfb\x79\x99\x95\xee\xbc\x1c\x3c\x26\xf1\x42\xa6\x5c\x7e\x15\x2a\x17\x90\x2c\xc5\x52\xe8\x5f\xad\xf5\x77\x55\x5d\xc7\x77\xb8\x4e\x3e\x03\xe5\xbe\xd7\x3d\x67\xa8\xb7\xaa\xdd\xa1\x19\xe4\x5e\xaf\x44\x2c\xfd\x2e\x32\x80\x2f\x01\xff\x2b\x4f\x8f\x9f\x70\x22\x8c\x00\xa1\xde\x0c\x81\x78\xe1\xd3\xb1\x0e\xc9\xb5\x8e\x53\xfe\x5c\x6c\x3c\x2e\xab\xb5\xc7\x17\x2b\x6f\xd2\xb4\xf3\x8c\xae\x8c\x7d\x56\x98\xa4\x34\xc7\xf8\xef\xc9\xed\xaf\x35\xc3\xce\x7b\x63\x7c\x51\xb9\xb8\xdb\x6a\x38\x44\x8f\x94\xf0\x59\xa5\x55\xc4\x56\x91\x9b\x93\x4d\x3f\x8a\x5a\xa3\xf6\x61\xe3\xfd\xa2\x3d\x22\x72\xd3\x5c\x63\x1c\xf1\x0a\xf2\x9f\x19\xc3\x02\xe7\xb3\x66\x8e\x06\x8c\x14\xa3\x82\x69\xa2\x51\xcb\x1b\xe1\xbe\xbc\x52\x3e\x56\xe0\x15\x0a\xa6\x73\xc0\x4e\xf1\x5c\x6c\x94\x27\xd3\x29\x21\xfd\xe2\xca\xc5\x66\xb7\xcb\x6a\xef\x25\x6a\xc1\x8b\xd4\x41\x70\xd6\xe4\x1d\x8c\x01\xf2\x50\x92\xba\x05\x18\x2c\x6b\x44\x11\xd5\xb6\x30\x5e\x36\xa8\xff\x68\x64\x3f\x97\xca\x9a\xc4\xd0\xc0\x5a\x45\x96\x71\xaa\xb9\x26\xcb\x80\xf0\xdd\x31\x7a\x3f\x39\x53\x63\x4d\xb4\x17\x41\xd0\x07\x59\x1b\xc1\xc7\x28\x20\x0e\x8f\x00\x3b\x97\xa5\x33\x8f\x4a\x9c\x19\x98\xa7\x09\xac\x18\x92\xfc\xe2\x2b\x68\xf7\x63\x55\x81\x1f\x69\x6c\xca\xad\x0a\x8a\x8e\x27\x42\x31\x78\x77\x0a\x15\xed\xc5\x3f\x64\xa3\x21\x9a\xbe\x40\xb3\xf1\x3c\x44\x7e\xee\xa1\xb8\xdb\xe6\x8c\xaf\x79\xb7\xc8\xfe\x78\xcd\xce\x86\x9e\xd1\x79\x26\x20\x07\xb8\x25\x6d\x1f\x33\x8e\xb5\x33\xfa\x51\x41\x90\x5f\x05\xd3\x7e\xfd\x34\xa6\xfd\xf3\xb0\xec\xd7\xcf\x44\x35\xcf\x43\x54\xf3\xee\x07\xe8\x00\xd9\xe7\x47\x06\x5b\xfe\x3a\x88\xf2\x17\x1d\x2c\x79\x8b\x1a\xfc\x54\x10\x65\x17\x63\x1e\x7f\x78\x32\x08\xf2\x97\xe3\xec\xd7\x11\x50\xb9\x5f\x09\x69\x5f\x91\xde\xbd\xab\xf3\x04\xe2\x7e\xf0\xcd\x6d\x9e\x5b\x97\xb9\xae\x52\x1f\xbd\x87\xc9\x4f\xa3\x61\xa7\xf6\xca\x30\x15\x74\x56\xbb\x10\x5c\xf8\x60\x9c\xba\xaf\x91\xea\x82\x12\x1b\x39\xb2\x06\xb3\xf2\xdf\x6f\xc7\x69\x51\x66\x6f\x12\x83\xfa\x69\xf0\xef\xee\x82\x05\x28\xe0\x3a\x3a\x3c\x92\x95\x2d\xa8\x14\x5a\x8b\xbd\x50\x5f\x29\xce\x3e\xe9\xed\x1d\xd0\x6c\xcb\x8e\x04\xd7\x84\xcd\xaf\x1f\xb9\x43\x7c\x58\xa3\x43\xf6\x1d\x2f\xda\x3d\x33\x89\x44\x4d\x58\x5f\xa0\xca\xb4\xec\x81\x50\xae\x3f\x16\x28\x11\x7e\xce\xc4\x1c\x81\xc4\xc7\x9b\x12\x65\xf2\xe7\x8c\xcf\x71\xa2\x47\xa8\x8e\xdc\x51\x28\x1c\x1d\xce\x5b\x32\xf9\x22\xae\x36\x5f\xac\x99\x0f\x76\xee\x48\xcb\xf1\xd0\x1c\xce\xe2\x96\xaf\x56\xfa\xd3\xee\x6d\xb6\xef\x8f\xef\x91\x9e\x2c\x80\x2c\x8f\x4e\xa5\xb5\xd9\x5d\x9e\x54\xd6\x1a\xae\xd1\xb1\xb6\xcf\xcc\x2a\xca\xf6\x8a\x20\xfd\xb0\x94\x34\xb5\x60\xa8\xcc\x72\x19\x36\x25\x42\x88\x2b\x72\x4a\x48\x85\x34\xeb\x1f\xcd\x05\x5b\x79\xcc\x52\x4e\x1e\xc3\xac\x75\x13\xda\x0e\x0e\x55\x5e\x1a\xe9\xcd\x30\x47\x39\x42\x6d\xab\x23\x0c\x25\x5f\xa8\x43\x82\xfc\xb1\x67\x2a\xde\x8d\xdb\x78\x37\x93\x80\x01\x0b\x84\x63\x58\xc4\x3a\xfb\x5d\x9a\x9a\xbf\xb2\x3d\xe5\x6c\x5a\x5a\x59\xd4\xfe\x30\xf2\x77\xcc\x31\x79\x2f\x87\x33\xf8\x64\x9c\x32\x45\x60\xbc\x2a\x71\xa5\x63\x23\x57\xb4\xa0\x82\x9e\x88\x19\x9d\x63\x31\xab\xb4\x35\x7b\x4e\x74\x48\x57\xd4\x85\xa1\xc4\xa6\x9c\x76\x5b\xd3\x6b\xef\x87\xa2\x1b\x8f\xd2\x81\x00\x71\x39\x8e\x5a\x52\x62\x70\xe6\x34\x9e\x6f\x92\x46\xb6\xfb\xa7\x19\x57\x93\xa9\x78\x75\x3a\xa5\x93\x24\x97\x84\x5c\xf9\x14\xff\xfe\xea\xfd\x0f\x23\xb5\xe3\xd8\x5a\x32\x5e\x93\x24\x51\xd9\x2d\xf7\xf8\x76\x77\x1a\xdf\xb3\x6e\xa0\x8c\x2c\xd3\x34\x0b\x97\xad\xd4\x5e\xd7\x9a\x9d\xda\xe3\xb5\xc1\x55\x96\x1d\xb9\x6c\xa5\xf6\xda\x30\xb3\x7d\x1a\xb6\x25\x36\xdf\x6b\x25\x77\xab\x19\x27\x82\x37\x14\x72\x58\x4f\x92\xb2\xb9\xbd\x56\x4e\x8b\x62\xfa\x03\xfc\x9d\x51\xa4\xe2\x8b\xdf\xaf\x33\x14\xac\x14\x7c\x81\x4b\x94\xc1\x8a\x6d\x73\x5e\xcb\xab\x06\x4d\xd4\x5a\x6d\x79\x53\xd2\x7d\x49\x89\xf6\xb3\xd5\x1d\xd7\x1e\xea\xc5\x54\x9d\x40\x5e\x34\xed\xe9\xc5\x21\x66\xbd\x9c\x0f\x58\x9a\xb2\xfd\x9e\x1a\x62\x56\xce\xd3\xd4\x2e\x79\x39\x6f\x35\x9b\xbf\x57\x1b\x6d\x33\x62\xe0\x8a\x28\xff\xca\x35\x64\x9e\x56\xe6\x7f\xb0\x63\x81\x61\x24\x8b\xde\xe3\x38\x27\x8f\x3a\x9d\xed\x62\xcb\xab\x25\xad\x35\xbb\xe1\xfa\xf3\xa3\x02\x2a\x29\x74\x62\x0e\x2a\xc5\xc6\xf3\xc7\xe5\x5e\xba\xdb\x6e\x7e\x0c\x55\xc7\x28\x4e\x4a\x64\x6c\x61\x19\xdb\xcb\x5a\xf4\xd8\x4d\xe6\xa3\x80\x74\x93\x57\xe4\xed\x1c\x79\x52\x4c\xad\xa5\x98\x5a\x7f\xd6\xa7\x26\x15\x59\xcf\x8e\x2f\xe0\x5e\x9f\x0a\xf3\x71\x1f\x5b\xe3\xbf\xe7\xf9\x74\xe5\x71\x4d\x42\xb7\x8d\xd9\xed\xe8\x8f\x3f\xbe\xf9\xf8\xd7\x45\x07\x0f\x21\x70\x64\xce\x51\x05\xae\x58\x35\xda\xed\x32\x36\xab\xe7\x24\x9f\xd5\x73\x23\xf5\xae\x9b\xa2\x78\xb8\x5a\x56\xdb\x5e\x26\x10\x9b\x19\x7c\x7f\x11\xd6\xf9\x98\x1c\x33\x15\x88\x1f\xf9\x96\x7b\x93\xb1\x7c\xb6\x34\xc4\x8c\x69\xf3\xb0\x82\x54\x28\x65\xdd\x48\x59\xda\xbf\x86\xeb\x8c\x61\xee\x6f\x08\xc3\x41\xc5\xe2\x50\x58\x10\x87\x82\x70\xa9\xfd\x90\x0f\x9e\xd7\x6e\x2d\x98\xce\x0d\x15\x7f\xfc\xf0\x8e\xfa\xc1\x73\x9e\x2c\xae\xd4\x33\x2e\x0a\x2d\x50\x5e\x81\xf7\x91\x82\x4a\x08\x43\x82\x62\x2d\x59\xa0\x18\x3a\x13\x67\xe7\x2a\x47\x89\x0d\x75\xd6\x86\x70\x2d\x00\xbb\x80\x64\x1b\x22\xec\x40\xdf\xa4\xb8\x49\x4e\xc7\x18\xc2\x7a\x0a\x32\x9b\x63\xe5\xfd\x27\xc0\xe5\x8f\xad\xed\xf9\xb1\x13\xcb\xe8\x6c\x39\x47\x4e\x10\x58\x93\xf1\xc5\xfa\x25\xf3\xbd\x05\xd7\xc3\x21\x92\x3c\xc8\x4f\xdb\x7a\xb6\x9e\xe3\x42\x39\x7d\x55\x80\x4d\xe1\xf6\x40\x8d\x99\x24\x57\xda\x34\x90\x13\xad\x4a\x5d\x11\xf0\x46\x2e\xc0\x1b\xb9\xb6\x4a\xe1\xdc\x72\xce\x6e\x76\x64\x85\xf0\x4a\xb1\x7a\xb1\x9d\xd7\x13\x7f\x2c\xd1\xc4\xc1\x66\xf2\x3f\x63\x45\xc6\x00\x25\x64\x74\x6b\x2f\xf3\x8b\xe1\xb0\x92\x0b\x51\xf6\x16\x82\xcd\xaa\x39\x42\x0e\xdd\xce\xea\xd3\xf4\x1f\x05\x19\xe3\xa5\x94\xfc\xdd\xca\x14\x2f\x97\x17\xc3\x61\x81\xb2\x86\x40\xd0\xa0\x5c\xa1\x62\x8e\x6c\xc8\x11\x4f\xd3\x1a\x7e\xec\x76\x75\x04\xad\xce\x16\xe9\xbf\x92\x15\x9c\xd3\x25\x14\xd2\x0e\x95\x69\xda\x9c\x12\x12\xab\x03\x40\x8d\xb1\x17\x73\xc2\x67\xcd\x1c\xeb\x1b\x42\xfe\xad\x36\xe6\xa1\xf3\xb6\x2f\xb3\x8e\x72\xea\x21\x34\xe6\xbe\xea\xe3\x7c\x28\x74\xc0\xca\x47\x07\x04\xb8\xa0\xee\xaa\x57\x92\x26\xd9\x55\x6f\x88\x5c\x67\xee\xaf\x71\xf3\xb2\x80\xb0\x2e\xf8\x66\xf0\x46\xce\x45\x67\x50\x86\x55\x16\x69\x5a\xea\x55\x2e\xf7\xac\x32\x14\x89\xad\x72\xe9\xad\x32\x14\xd2\xab\xcc\xe4\x01\x8b\xaf\xb1\xe4\x67\x62\x6b\x2c\x66\xcc\xae\xb1\xfc\xbb\xab\x9e\x5c\xc7\x40\x4f\xca\x28\xe8\x49\xa9\x41\x4f\xa8\xf6\xbd\x43\x83\x7d\x9d\x1a\x9c\xa2\x6c\x89\xd5\x1a\xa8\xb8\x23\x2f\x98\x4d\xb1\x8b\xcb\x0d\x5d\x35\xd6\x7a\xd4\xb7\x23\x1b\xc9\xeb\x49\x7f\xab\x45\xdd\x7f\x47\x40\x0e\x34\x7d\xbc\x07\x79\x50\x3b\x86\xb9\x92\xb5\xf2\xbb\xc2\x89\x76\xd2\x09\xfb\x48\x2c\x8c\x5b\xf4\x75\x1f\x32\xf3\x19\x77\xad\x82\xdf\xb2\x91\x34\xbe\xa8\x1a\xd6\x8f\x3e\x8c\x5d\xbe\x21\x46\xcf\xc0\xf9\x99\xf9\xc9\x9a\x14\x6e\xb4\xb5\x3b\x8f\x1d\xda\xbd\x03\xae\xd9\xbf\xde\x7d\xbd\x43\x64\xe1\xe1\xca\x29\x46\xaa\x11\xc3\xad\x45\xca\x1d\xfa\x76\x92\x61\x86\xa1\xdc\xe6\xfc\x33\x98\xbe\x2f\x6b\x6d\xfc\x8e\x48\xe6\x81\x83\x95\x2f\x9d\x87\x66\xf3\xfd\xfa\x9b\xb0\x01\x93\x25\x49\xae\x44\x41\x73\x53\xbd\x6b\xf6\x8f\xf7\xae\xce\x9a\xa9\xdf\xf3\xf5\x89\x5e\xb4\x70\xb1\x72\x48\x5f\x6c\x12\x31\x00\x90\xb6\x8b\xc3\xb4\x5c\x59\x57\xcf\x52\xcd\xc4\x7c\xb7\xcb\xe4\x3f\x31\x27\x29\xe3\x45\x54\x29\x1d\x0b\x98\x15\xf3\x2e\xdc\x99\x2f\xf5\x5f\x64\x39\xd1\xb1\xfa\xaf\x36\xac\x58\x75\x3c\x95\x04\x7e\x34\xe1\xa2\x93\xd3\xb1\x9f\x29\x82\xb5\x08\x8d\xae\xab\x0a\x42\x40\x54\x6f\x24\x77\x41\xab\xb8\x6a\x33\xd6\x0f\xed\xbf\xef\xa6\x48\xa3\x36\xff\xc7\x05\xff\x86\x8c\x2f\xce\xce\x5c\x2c\xe4\x8c\xcf\x9d\xfa\x3b\xe0\x3a\x98\x46\xd0\x17\x19\xc3\xa5\xd1\xba\xb7\x80\x21\xf6\x86\x3c\xde\xb3\xa2\xd0\x06\x50\x1d\xeb\xdd\xb9\xb3\xf5\x3e\x8c\x90\x23\x0d\x56\x01\xa6\xc6\x5e\x35\x87\x96\x21\xbf\xd6\xcc\x0d\x7d\x3e\x90\xf3\xca\x42\x7b\xb5\xbc\x68\x9c\x7b\x7d\x45\xde\x67\xd4\x38\x7d\xa0\x20\x44\xa6\x8c\xed\x7a\x70\xb6\xda\xab\x1d\x97\xa2\x09\xc2\xa7\xe7\xad\xfa\xda\x57\x7e\xd3\xda\x86\x99\xef\x76\xd9\x97\xb4\x9c\xab\x96\xc1\x44\x19\x05\x65\xc1\x8c\xcc\xe6\x83\x72\x9f\xca\xa5\xff\x4c\x19\x6e\x3f\x6d\x78\x75\x5f\x4e\x83\x5f\x13\x3a\x10\x52\xa8\x04\x56\x4e\x20\x70\x99\x2b\x47\xb7\xb4\xae\xf3\x1b\x6a\x5f\xd8\x27\x90\x6b\x4c\xe4\xcb\xcf\xde\x2b\xf8\x1d\x41\x08\x28\x5d\x19\x84\x2e\x32\x4e\x96\x55\x59\x57\x05\x45\xaa\x7f\x2d\x9d\x81\xc8\x20\xf9\x64\x58\xa2\x93\xfb\x0d\x2b\xe8\x89\x16\xbc\x58\x79\xa3\x9c\xd1\x26\x27\xc9\xd0\x64\xc0\x03\x81\xb4\xc5\x9a\x86\x46\x82\xc4\x74\x9c\x6c\xf9\xc4\xfe\x50\xa8\x57\x70\xbf\x07\xfb\xc3\xa6\x22\x09\x76\x08\x3f\xb0\x11\xba\xdb\xc0\xb5\x60\xce\xe2\x34\x3b\x50\x3f\x87\x8f\x3d\x11\xa3\x2d\xbb\xab\xc4\xef\x5c\x0e\xc2\x16\xa1\xb6\x1d\x74\x03\xc8\xef\x0c\x34\x61\x19\x82\x57\xb0\x00\x54\xa2\xea\xc2\x0a\x0c\x93\x85\x97\xd7\xe0\xe7\x8c\x3b\x90\x0d\xcc\xd4\x4b\x5c\xa1\x69\x15\xe4\xef\x7f\xff\x8b\xba\xc4\x39\xe9\x46\xb1\x57\x53\x31\xa9\x54\x14\x7b\x7c\x28\xdd\x0a\x6c\x2a\x26\x4c\x55\xc0\x39\x9a\xe6\xc1\xf0\x7e\xee\xe5\xf5\x74\x76\x80\x12\xc1\x80\xe4\x6f\xe5\xa7\x91\x6b\x03\xa0\x43\x94\xe0\x00\x7b\xd1\x2b\x61\xbc\x3f\x5d\x1a\x50\x96\xa6\x95\xeb\xf5\x32\x90\xf5\x4f\x55\x68\x8f\xc5\x3f\x71\xde\x97\xb5\x65\x34\x92\x57\x79\xf9\x1b\x71\xa2\x59\x80\x13\x15\x7e\x77\xf2\x9b\x64\xc8\x87\xc9\x6f\x4e\xae\xe9\x32\x6f\x6a\x7a\xf2\x50\x35\xfc\x24\xdf\x6e\x4f\x36\x79\x2d\x8b\xaf\x59\xc9\xea\x0d\x5d\x9d\x38\x9d\x86\x3c\x10\xac\x14\xd5\x09\x13\xf5\xc9\x9a\xf1\x5a\xa8\xf3\x31\x3a\xf9\x54\xb9\xe6\x4b\xd3\x43\x55\x9e\xac\x20\xc4\x10\x66\xa6\x8a\xd6\x27\xab\x86\x2b\x67\x50\xd7\x2e\x96\x9d\x9f\x2c\xf3\xf2\x64\x99\x17\xc5\xc9\x7f\x80\x7d\x28\x43\xff\x21\x5b\x10\x1b\x7a\xf2\x1f\x6e\xc3\xfe\xc7\x89\xa2\x2e\x27\xdb\xbc\xae\xe5\xe0\x2a\x55\x02\x4c\xa2\x2f\x3c\x00\xbe\x17\x0e\x71\xef\x3f\x4e\x36\x55\xf5\xb9\x1e\x25\xa8\xed\x48\xa8\xe7\xb8\xf1\xef\x9f\x46\xde\x3f\xcd\xd9\x99\x64\xf2\x2b\x92\x31\x40\xaa\xd3\x3e\x79\x92\x9a\xe8\xc0\x45\xef\xcf\x19\x9f\xab\xcf\x00\xaa\x6f\xab\xf1\xb1\x37\x12\x04\xbc\x64\x9a\x32\x2b\xd0\x1a\xe6\xc2\x5e\x22\xa4\xb9\x04\x23\xf2\x40\x4a\xcf\xad\x72\x97\x78\xa3\x6f\xf1\x02\x15\xbe\x89\xa6\x63\x07\x34\xe9\xbc\x4e\xf3\x34\x3d\x15\x28\xba\x0d\x7e\xa8\xc4\x46\x2e\xbd\x66\x5f\x60\xe1\xc2\xcd\x30\x3a\x79\xbb\x86\x6f\xb1\x62\x2b\x5d\xcc\x2b\x85\x81\x77\x3a\x81\xc9\xc0\xd7\xba\xa6\x27\xb0\x77\x56\x27\xd7\x0f\x27\x6a\xc2\xb2\x7d\xc1\x1b\x7a\xb2\xe6\xd5\xad\xb7\x17\x74\x6e\x53\x50\x08\x79\x39\x50\x30\x34\x00\x95\xdc\x60\x44\x75\x72\xdd\x5c\x5f\x17\x74\xe4\x07\x39\x7c\xee\xc9\xdb\x84\xf6\x99\x64\xb9\x40\xda\xdc\x28\x0b\x3b\xee\xc1\x08\xe2\xa5\x96\x65\x74\x2c\x28\x8b\xc6\x82\xe6\xf3\x41\x3d\x62\xb5\x66\x21\x56\xd3\x6a\x56\x03\xcb\x36\x27\x26\x0c\x69\xe2\x3f\xb2\xda\x9f\xcc\x62\x30\x22\x17\x75\x6f\x67\xf0\xc1\xe7\x00\x9f\xf4\xd2\x91\xdf\x1c\x38\x9c\x4e\xd6\x84\x85\xae\xfa\x21\x17\xf2\xca\x94\x7c\xe2\x4c\x78\x49\x69\x4b\x85\xbf\xa0\xf2\x68\xc6\xbc\xae\x2e\x02\x7b\x88\x9f\x38\x55\x2b\xd4\x7a\x2f\x5d\x2e\x56\x5c\xc5\x4b\x80\x45\x45\xc3\xa6\x36\x7d\x52\x1d\x03\x7d\xf0\x29\x2d\x1a\x34\x69\x9a\x8f\x2e\x3f\x7c\x58\xbc\xfa\xf4\xf1\xfb\x85\x76\x51\xfe\xf0\xf1\xfd\x87\xab\x34\xcd\x82\x41\xb2\xf2\xa4\xd9\xed\xe2\xf1\x29\x4d\x67\x3e\x5d\x28\x0f\x8b\x01\xe8\x9c\xea\xc2\xc4\xb1\xad\x9e\x5e\x2c\x9c\x07\x75\x9b\x47\x91\x05\x3a\x6e\x74\xde\x82\x1e\x3f\x44\x2f\x23\xee\xd1\xe3\xf4\xea\xf8\x30\x41\x1f\xfd\x8b\xb5\x23\x95\x42\xbc\x48\x28\x8f\xd2\x88\xac\x19\x58\xfa\x77\x3b\x11\x0b\x70\x92\x02\xdf\x3e\x81\x74\xcb\xab\x5b\x56\x53\x42\x47\x4b\x40\x0d\x0d\x62\x29\xc1\xf7\xad\xef\x03\x6d\x82\x0b\xe8\x40\x44\x04\x35\x29\x81\x21\x9c\xb8\xbb\x42\x05\x20\xf8\x34\xe4\x53\xf7\xc6\xa6\x3d\x2b\x88\x40\x21\xc0\x87\xe6\xe3\x23\x08\x1f\x65\x56\x01\x8e\x87\x52\x38\xce\xaa\xb9\xbf\xc2\xaf\x1c\xdc\x8e\x33\x85\x93\x19\x9d\x5f\x70\x0b\x5c\x72\x61\x04\x0a\x6e\x42\xe9\x0d\x26\xa3\x75\x7d\x23\x84\x08\xa7\x5f\x55\x63\x36\x80\x5f\x75\x38\x50\x86\xb8\xc6\x2b\xec\x0c\xe5\x3f\xb5\x3a\xdd\x9a\x5a\x1e\x55\x07\x93\x52\x23\x52\xd5\x93\x58\xb0\xcd\x7d\x5e\xff\x58\xd3\xd5\xe4\xf4\xdc\x68\x4b\x33\xa6\x01\xc9\xa6\x72\x76\xea\x4f\x34\x11\x80\x3c\x64\x9c\xb4\xcd\xd8\xb0\x85\x25\xab\xd0\x84\x92\x0a\x3f\x3a\x37\xbf\x09\xc5\xc6\x35\x6f\x52\x79\x03\x7d\x17\x8a\x59\xb2\x13\x0f\xfc\xcf\xe1\x80\x82\xc3\xaf\xee\x67\x74\x9b\xb3\xd2\xce\x48\xa5\x37\xe4\x3e\x57\xa8\x30\xb7\x94\xcb\x60\x6b\x27\xfc\xd8\xb6\x58\xa0\x76\x11\x02\x18\xdd\xc6\xbd\x96\x41\x58\x0c\x7d\xc2\xb3\xde\x33\x9b\x1b\x36\x68\xd1\x2f\x31\xe9\xd5\x69\x8d\xfd\xc0\x7f\xa8\xd3\x5b\xaa\x37\x2d\x76\xc4\x7e\x12\x81\x92\xc4\x25\xa0\xae\x98\x15\x64\xbd\xfc\xe3\x7e\x92\xca\xe1\x10\x40\x65\xa4\x54\x2d\xef\x15\xc9\xbb\x58\x77\x63\x8b\x43\xe0\xdc\x41\xcf\x2f\x2a\x57\x17\xdc\x41\xe5\x3b\x41\xe8\xac\x52\xb7\x8c\x97\x1a\x15\x73\x72\xad\x3c\xd3\x4b\x64\x77\x78\x9a\x9e\xb2\x8c\x63\x81\x2e\x90\xdb\xe1\x25\xcc\xcf\x61\x4a\x68\xb0\x2a\x9b\xff\xc5\x5d\x9c\xa3\xff\xac\x58\x09\xad\x03\x46\x91\x89\x32\x66\x0e\x20\x2a\x08\x7f\x99\xdc\xe1\x30\x6e\x65\xf2\x80\xb5\xb1\x1f\xfc\xf1\x9d\xcb\xc2\x26\xaf\x37\x09\x6e\x78\xa1\x92\x89\x1f\x00\x3d\x3a\xe4\x29\xec\x39\x4b\x38\x0c\x52\x64\xa3\x42\xcc\x6d\x0b\x90\xe7\xb8\x17\x75\x63\xa7\xb3\xd9\x1f\x8e\xad\xae\xd3\xb7\x64\xe1\x05\x31\xbf\x7d\x7e\x10\xb3\x89\x91\x7d\x22\x49\xd8\x31\x31\xbf\xff\x55\xa9\xa3\x7d\x9f\x4d\xb3\xb7\x69\xa0\xbb\x81\xc1\x6a\x07\x70\xea\x85\xc1\x70\x22\xfc\x5f\xbf\xaf\x55\x20\x24\x6f\xed\x87\x71\xa1\xa7\xfb\xdd\xda\xc0\xb8\x60\x73\xfa\xf6\x9a\x1b\x58\xdf\x6c\xcd\xc9\xf7\x1c\xdd\x4a\x0d\x94\x88\x2d\x82\xee\xe9\x39\x08\xf4\x69\xea\x63\x92\x30\x87\x62\xe5\xa9\xe8\x02\xfc\x6b\x16\xfa\xf8\x79\xf3\x8e\x5a\xac\x65\xd7\xb5\xe1\xd1\x36\x80\x68\xf3\xe6\xa7\x26\x2f\x00\xb7\x29\x00\xd0\xf3\xa0\x47\x3a\xe9\xd4\xcb\xe7\xec\x31\xe1\xe9\xce\xbf\x24\x91\x9d\x0e\x26\x7f\x56\x6a\xc7\xfd\x91\xf5\x07\x22\xe2\x9f\x8c\x10\xff\xe5\x7b\xb9\xeb\xbe\x1b\x87\x93\x96\x3c\x8f\x41\xe8\x0b\x54\x44\x82\x00\x66\x76\x87\xd3\x08\x51\xcc\xa6\x74\xb4\xad\xb6\x19\x1a\x85\xd8\x77\x06\x56\xce\x5e\x7c\x13\x6a\xe1\x79\x94\xb7\xf0\x84\x06\x70\x79\xa2\x6d\x21\x19\x64\xcf\xd9\x22\xaa\xae\xee\x01\x32\xf4\x1f\xcd\xaa\xbd\xb8\x32\x72\x2c\x1d\xdc\x54\xbb\xa7\x7b\xa2\x8b\x1c\x56\x07\x48\x26\x62\x75\xd1\xb9\xc6\xae\x64\x41\xba\xea\x82\xbf\xca\x6b\x31\x22\x14\xb1\x88\xd8\xc5\xe9\xb2\xba\x29\xd9\xdf\x28\xd7\x0e\xef\xbc\x56\xb9\x35\xb1\x8a\x87\x10\xee\xf2\x74\x04\x41\x32\x7d\x00\x19\xa4\x1a\xae\x07\xb5\x8b\x2d\xe0\x24\x07\xb4\x0e\x95\x31\x4d\x1e\x3a\x8d\x8a\xec\x12\xaf\x81\xd3\x49\xdb\x99\x03\x81\x83\xd8\xb7\xcd\x91\xae\x5f\x53\x07\x00\x37\x4c\xb6\x96\x24\xb8\x13\xc7\x61\xc7\xdd\x40\x2c\x07\x2e\x88\x24\x12\x0d\xc2\x4b\x1f\x6d\x56\xf2\x05\x45\x9a\x16\x92\x91\x2c\x0d\x26\xcf\x18\x92\xa6\x41\x42\xec\xf7\xeb\xac\x40\xd3\x66\x54\x37\xd7\xb5\xe0\x59\xe1\xf2\x97\x4f\x9a\xc1\x52\x11\x2d\xb8\x26\xcb\x59\x31\xc7\x6b\x03\x1f\xe7\xbf\xc0\x0d\x1a\xb0\x21\x49\x26\x13\x48\x03\x3d\x49\x86\x4b\x4b\x94\x87\xcc\x62\xcd\xe6\x38\x39\x4b\x90\x5c\x8a\xc3\x38\x75\x71\xf7\x61\xf2\xd8\xe2\x08\xd7\xd3\x00\xd3\xe3\xa5\x02\x14\xb2\x03\xdf\x7d\x9f\x14\x20\x93\x74\x73\xd8\x44\xbc\xa7\x54\xde\x42\x15\xb8\xce\x43\x85\x64\x4e\x2a\x1f\x49\x53\xd2\x7b\x0f\xc2\xbd\xa7\xa1\x56\x2a\xe0\x22\x63\x7e\xd0\x74\xe9\xf4\x35\x1f\x78\x75\xc3\xf3\xdb\xdb\x5c\xb0\xa5\xa7\x2d\xab\x4f\xae\x1f\x4e\x7e\xfc\xf8\xfd\xc9\x32\x2f\xcb\x4a\x9c\x5c\xd3\x13\xd0\xc1\xdc\x33\xb1\x61\x5e\x20\xf5\xe8\xe4\x43\x41\xf3\x1a\xde\x82\x7a\x45\x05\x56\x97\xca\x16\x5d\x0b\x9a\x43\x50\x35\x23\x39\x28\x38\x19\x84\x23\x10\xd6\xfa\x4b\xe4\x5f\x21\xfb\x10\xda\x31\x23\x63\xd8\x82\x7c\x3f\xe8\x1f\x47\x4a\x16\x8a\xb1\x9e\xe5\x70\xd8\xda\xea\x02\x89\x7e\xdd\x34\x65\xc3\xa1\x65\xff\x09\x21\xac\xd5\x56\xae\x17\xff\x3e\x7a\x71\xe3\xf8\xdf\xba\x6f\x5c\xf2\x78\xd4\x52\x1e\x0f\x05\x10\xce\x23\x00\xe1\x5c\x53\xe5\x31\x66\xc3\x73\xe4\xb8\x4f\xa7\x88\x31\x47\xa1\x42\x08\xe0\xbb\x06\x25\xa9\x22\x7a\x9e\x26\x5c\x20\x1a\xc8\x69\x31\x3b\x45\xa6\x92\x3a\xcf\xca\x39\x79\xcc\x15\xe0\x5e\x8b\x4b\xc2\x91\x51\xf2\x96\x11\xf1\x53\xd3\x3c\xb5\x0e\xe5\xac\x9a\x0f\x7a\x4d\xe7\x69\x9a\xe5\xd0\x64\xde\x42\x9e\x86\x59\x35\xdf\xed\x4c\x17\x1a\xd3\x4f\x03\x2a\xb6\xca\xc9\xd3\xb9\x52\xe5\x08\xcb\xf2\x84\x7b\x12\x5a\xe1\x65\xb7\x8e\x38\x0a\x67\x09\x78\x36\x42\x6c\x8e\xfc\x63\x36\x9e\xa3\x03\x59\x71\x15\xf4\xcd\x0b\x9d\x71\xff\x30\x07\x60\x0a\x7b\x9c\x87\x36\x33\x3d\x55\xfa\x96\xfd\xcc\xca\xfa\x85\x0d\x97\xdc\xf2\xea\xe7\x87\x63\x6b\x2d\xab\x52\xe4\xac\xa4\xfc\xc8\x6a\xcb\x6a\x7b\x4c\xa1\x5b\xc9\xb6\x3d\x59\x8e\xd5\x67\x54\x1e\xbc\x63\x07\xab\xdc\x45\x8f\x9e\x99\x1c\x84\xa4\x4c\xc7\xae\xb7\x43\xb1\x3d\xb2\x02\x8c\xe7\xc8\x85\x0b\xbe\xe9\xf3\xea\x2c\x2b\x4e\x17\xcf\xdb\x0c\x4a\xd1\xac\xed\xf8\x07\x81\x99\xc2\x25\xdb\x3e\x1c\xb5\x60\xba\x3c\x2d\x9b\x5b\x7a\xdc\x12\xeb\x1a\x67\xcf\xda\x9c\x15\x40\x96\x3d\xa7\xfd\x5b\x75\x17\x2d\x9e\x3f\x32\xa5\xc0\x5b\xe8\x85\xd3\xa8\x1c\x47\x2f\x84\x12\xd8\x8f\x2d\xae\x55\x83\x47\xee\x02\xfa\xb3\x78\xc1\xeb\xbb\x3d\x18\x57\x5e\x41\x49\xa7\xce\xaa\xf5\x51\x0d\x5a\x87\xff\x67\xa0\x49\xe1\x3b\xfc\x80\x6f\xf0\x35\x5e\xe0\x7b\xfc\x06\x5f\xfd\x52\x79\x62\x6f\x85\xf7\x7a\xaf\x3f\xba\xcf\x38\x39\x1d\xe3\xa8\x22\xf9\x44\x18\x7e\xa2\x3d\xd4\xa4\x05\x50\x7b\x66\xdb\x9d\x7a\x07\xfb\xd0\x66\xce\x87\x0f\xf2\xb3\xbe\x93\x9f\xfa\xc8\x6e\xf8\x51\x53\x78\x65\x48\xf5\xb3\xdb\x2f\x8f\x6a\x5f\x91\xf6\xa3\x1a\x64\x47\x36\xa8\xaf\x81\xa3\xda\xac\x8e\x6a\x93\xd5\x6f\xd4\x8d\x71\x54\x9b\xf9\x51\x6d\x5e\xaa\x6b\xe5\xa8\x16\xeb\xa3\x5a\xfc\x21\x97\xb2\xe3\xf3\xda\xf5\xea\x1c\x1e\xed\xd1\x2d\x5e\x1e\x6c\xe7\x9d\x22\x95\xcf\x1b\xa4\x5f\xe9\x60\xeb\x9c\xde\x56\x77\xf4\xf2\xd8\x83\x56\x8f\x4c\x85\x83\xad\x36\x25\xfb\xe9\xdb\xe3\x47\xab\x8a\x3f\xb1\x9f\x9e\xb7\x00\xba\xfc\x13\x07\xd5\x71\x1e\x47\x35\xdb\x1c\xb9\xa9\x2c\x7b\x72\x54\xab\xc5\xf1\x9b\xff\x83\xba\x88\x8e\x6a\x76\x79\x54\xb3\xea\xc5\x73\xda\x5d\x1f\x49\x04\x39\x7d\x16\x09\x5f\x1d\xd5\x6c\x0f\x62\xf3\xe8\xd6\x7b\x35\x0f\xaf\x36\xd4\xff\x9d\x61\xcb\x8e\xea\x63\x73\xe4\xc2\x18\xde\xed\xa8\x46\xb7\x47\x35\xfa\xc6\x63\xa3\x8e\x6a\xf6\xf6\xa8\x66\x17\xcf\xbe\xc1\xee\x8e\x6b\x17\x7c\x13\x4a\xf1\x5d\x75\xec\xda\xde\x8d\x5c\x95\x27\xf6\xb3\x63\x45\x8f\x6a\xf9\xe1\xa8\x11\x6b\x7a\xfa\xec\x75\xbe\x39\xaa\x75\xa5\xf4\x54\x7b\xee\xca\x70\xb4\x47\xb5\x7f\x7d\xdc\xf6\x30\x6c\xef\x51\x6d\x2e\xbc\x36\xf7\x33\x8b\x1f\x14\x6f\xfc\xec\x1d\x72\x7f\xd4\x88\x3f\x5e\xfd\xe9\xc3\x91\x0d\xbe\x39\xaa\xc1\xaa\x04\x8d\xbc\x8e\x75\x3a\xba\xe9\xb0\xda\xc1\x1e\x54\x54\xea\x91\x2d\x5f\xe9\x20\xd6\xb6\x45\x4f\xaa\x25\x02\x49\xfd\x78\xe5\xc4\xb1\x52\x46\x5f\x0c\xff\x15\x8d\x6b\x9e\x11\xad\xc2\xb9\x8a\x29\x26\x84\xe4\xc6\x5c\x39\x1e\x78\xc6\x27\x13\xe7\x0b\x50\xef\xc1\x13\x85\x41\x99\x18\x9f\xf5\x84\x10\x52\xa7\xa9\x65\xcf\x4d\xc0\x74\x85\x20\x23\xa4\x07\xa8\xa6\xd7\xd1\xa5\x04\x88\xbc\x84\x91\xf5\xda\x6f\x22\xed\xe7\x28\x4d\xf3\x03\xed\x9f\x9d\xff\x8f\xe8\x6b\x85\x47\xaf\xbc\xea\x58\x56\xce\xea\x39\x2e\x15\x0a\x91\x52\xf0\x15\x66\x7c\xc5\xa0\xbe\x67\x62\xb9\xc9\x6a\xf4\xb8\xcc\x6b\x6a\x43\x78\x27\xf0\x4b\xc7\xed\x4e\x0c\xb7\xaf\x46\x0e\xaf\xb4\x52\xcc\x7b\xa5\x30\x3e\xe9\x2b\x33\x04\x84\xc7\xba\xac\x52\xd7\x4c\x1c\x3e\xbe\x89\x52\xc2\x6b\x0b\x56\x84\x57\xe4\x5d\x2e\x36\xa3\x5b\x56\x66\x4b\xbc\x46\x78\x43\xc6\x17\x9b\x97\xab\x8b\x8d\xd1\x5b\x6e\x09\xcd\xaa\xd9\x66\x8e\xf3\xd9\xc6\x4d\x65\x6b\xa6\xb2\x6d\xed\x50\x64\x7d\xd5\xb3\x5d\xe0\x49\x57\xc2\x72\x9f\x70\x5a\x05\x1f\x66\x32\x56\x55\x57\xb9\xa0\xc1\xf4\x6e\xa8\xf8\xc4\x6e\x69\x86\x70\xee\xfe\x46\x03\xdd\x9e\x29\x39\x6e\x5b\x6d\xda\x85\x34\x28\x72\x07\xaf\x26\x63\xc8\x41\x34\x39\xc7\x7a\x79\x27\xbf\xc5\x6a\x69\x27\xff\x84\xd5\x42\x4e\xfe\x19\xc3\x2a\x4d\xfe\x3f\xac\x14\x3c\x93\x7f\xc1\x16\xd3\xe8\x7f\x5a\xef\xf4\xc9\xff\xc2\x80\x6c\x3a\xf9\xdf\x58\x8e\x6f\x72\x3e\x6e\x7b\x3e\x11\x5a\x1f\x7c\x66\xa1\x84\xf9\x37\x63\x74\x96\xf1\x97\xe3\x23\x54\x94\x4e\xb5\x17\x21\x04\x1d\xc4\xee\xaf\xa9\xb4\xb4\x1a\xa7\x88\x1a\xe2\xeb\x53\x07\x6b\x5e\x8b\xe5\x56\xd5\x09\xe7\x9d\x87\x03\x18\xc1\xbb\x49\xc8\xd2\xb4\xec\x6e\x25\x8a\x9c\x53\x84\x9c\x4f\xe6\xac\x30\x1e\x59\x92\x53\x62\x1a\xee\xa0\xd7\xbd\xb0\xdd\x3b\xe8\x56\xa5\xf8\xc6\x2a\x1f\x3c\x60\x7a\x31\xab\x9f\x17\x08\x7d\x43\xc6\x96\xda\xcc\xea\xf9\x80\xfb\x51\x06\x6c\x9d\x85\x03\x17\xca\x3c\x91\x13\xe3\x8e\x82\x30\x07\xb7\xad\x4a\xd5\xc9\x11\x24\xc3\xd0\x36\x83\xb3\xb3\xfa\x1b\x32\xbe\x40\xf9\xac\x9e\x13\x9a\xc9\x7f\xf4\xe8\x5b\xe3\x86\xdb\x5b\x05\x81\x90\x6c\x1d\x16\x40\x95\xc5\x5c\x52\x49\xdd\xbc\xf5\xdf\x15\x27\x66\x7f\x57\xeb\x93\xd7\xb9\xa0\x28\x07\x07\x3d\xf9\x67\x26\xbc\x13\xd6\xaf\xae\xac\x7c\x60\x6c\x80\xcc\xdc\x39\x18\xc3\xbc\x52\x58\x20\xbd\x4b\x9c\x0f\x44\x68\x57\xd0\xe0\x92\xb8\x41\x69\x9a\x2c\x16\xc9\x29\x21\xc6\xe6\xc7\xca\x9b\x6c\x8c\x7f\x8b\xd2\x34\xcb\x67\xcd\x9c\xf0\x29\xcd\xc4\xac\x31\x33\x9f\x08\x08\xe7\xb4\xd1\x3f\xb0\x4b\xc5\x74\x36\x57\xa6\x06\xfb\xd7\x91\x87\x2d\xd0\xc1\xe1\x59\xa4\xb4\x97\x55\xfe\x18\x97\x81\x23\x60\xf5\x9f\x3e\x63\xe5\xe8\xbb\x1f\x7f\x00\xbc\xbb\xc5\x87\x8f\xef\x3f\xbd\xff\xf4\xd7\x0f\x6f\x16\x6f\xfe\xf2\xe9\xcd\x0f\x57\x6f\xdf\xff\x70\x95\xa6\x74\xf4\xe6\x87\x3f\x8d\xe0\xc9\x6b\x57\xe4\x6a\xf4\x9d\x6e\xd7\x7a\x7f\x04\xc7\x94\xd1\x3a\x33\x25\xdc\xa7\xc1\x8f\x26\x65\xd2\xe4\x71\x59\x95\x6b\x76\xd3\x58\xee\xc6\xe7\x75\xce\xf1\x3d\x67\x36\x3e\x4b\x1d\xf0\x98\xaa\xce\xb8\x39\x69\xd7\x2b\xed\x9f\x12\x85\x63\x57\xdb\xc0\x83\xc8\xd2\x8e\xe6\x33\xb1\x61\xf5\x1c\xa1\xb6\xc5\x4a\xf7\x4c\xeb\xaf\x33\x36\xdd\x1a\xff\x4a\x63\x2b\xbf\xd2\xa8\xca\xaf\x32\x9e\x23\x79\x4d\xa7\xc7\xf6\xef\x98\x50\xb3\x7d\x28\x9d\x03\x70\xcc\x67\x60\xd2\x80\xe0\xce\x70\xe7\x3f\xbd\xb9\xfd\x0b\xb3\x9f\x7c\xd7\x04\x9b\x68\xab\x23\xd8\x78\xbd\x38\x2e\xd4\xa1\xe8\xbe\xf3\x88\x57\xac\x6f\xa2\x14\x90\xd3\xd9\xa1\x85\x0b\x07\x87\x11\xbf\xd1\x84\xbc\xd1\x38\xcd\xeb\xaa\x5c\xdc\x33\xb1\x59\x40\xf3\x0b\x30\xa0\x97\x8b\x85\xbd\xe3\x68\xf8\xc9\x5b\x40\xb8\x57\x58\x45\xc9\x8f\xa5\x75\xfb\x58\xfd\xf8\xf1\xfb\x37\x26\x3a\x43\xc5\x65\x7a\x73\xf4\x9c\x89\x35\xaa\x73\xbf\x98\xb9\xdc\x4c\xeb\xbd\x80\xa5\xd7\xac\xde\xe6\x62\xb9\x31\x99\xc5\x90\xf2\xf3\x3d\xb5\xb8\xa6\x03\x39\xed\xf6\x4b\x52\x2e\x84\x72\x12\x61\x3d\x7f\x3a\x2c\xcf\xbd\x3a\x09\x34\x4b\xf2\xfa\xa1\x5c\x26\xe1\x4e\x40\x8f\x7c\x74\x9d\x2f\x3f\x5f\x37\xbc\xa4\xdc\x46\x4f\x67\x89\x8e\x70\x49\x54\xa2\x48\xaa\x00\x97\x3b\xed\xad\x21\x47\x4a\xe0\xba\x1d\x6f\x8d\x8f\x16\x72\x27\xc3\x4a\x03\xb4\x95\x6e\x55\xb7\x59\x95\x26\x46\x06\x33\xa4\x21\xf1\x84\xe7\x91\x56\x1d\x75\x82\x9c\xbd\xd4\x9d\xa0\x79\x38\xba\x5f\x8d\x65\xa2\x69\x1a\x47\x89\x52\x0a\x79\xc7\x02\xe9\x07\x9a\x0d\xa1\xdd\xeb\x3e\x4d\xfb\x1c\x80\xef\x53\xaa\x6e\x7f\xc9\x09\xb9\x5f\x76\x0b\xca\xc7\xc7\xdd\xaf\x1d\x7b\xe3\xd3\xde\x77\xcf\x74\xcb\xeb\xa4\x88\xb1\xb7\xef\x4d\xc1\x6e\x6f\x25\x21\xa3\x6b\xca\xa9\x14\x41\x8e\x73\xc6\x03\x66\x2f\xf4\xf3\xb0\x3e\xfc\x61\xac\x84\xd2\x57\x25\x08\xe7\xc4\x83\xb9\x9a\x82\x1c\x2b\xc7\x8b\x32\x8a\x26\x25\x1a\x71\x9a\xaf\x24\x6d\xf8\x94\xdf\xb8\x15\xb4\xe1\xc5\x39\x84\xb4\x57\x1a\x55\x1c\x65\xb9\xf2\xa8\x14\xf9\xcd\x77\x15\x47\x19\x43\x08\xb3\x2f\x39\xb0\x4e\x9d\x46\xea\xb8\xf3\x6b\x43\xf8\x08\x14\x3b\xc6\x1b\x3f\xcb\x72\xf2\xa8\xeb\x29\x66\x8a\x95\x4c\x3c\x2b\x49\x13\x36\xe9\xb8\x40\x6d\x64\xd0\xde\xac\x87\xb3\x59\x18\xf5\x98\x8e\xcc\xed\x08\x4b\xd3\x62\x0f\x85\xb0\xd7\xab\x0a\xfa\xd0\x6b\x8e\x8f\xc4\x14\x6c\x31\xab\x3f\xf1\x46\x6c\x1e\xba\x0e\xd8\xae\xa9\xac\x7f\x21\x1b\xd4\x9d\xae\x4f\xb6\xfd\xe4\xca\xd7\x7a\xc6\x47\xaf\x7e\xbc\xfa\xf4\xfe\xdd\xe2\xd3\xe5\xbf\x2e\xbe\x7b\xff\x71\x1e\x71\x69\x54\xfd\xc2\x02\x7f\x82\x6f\xda\x4d\x8f\xeb\x0e\x15\x78\x25\x6d\x58\x3d\x15\x13\xd8\x12\xcb\xea\xf6\x9a\x95\x14\x65\x33\x61\x23\xf0\xcc\x90\x5e\x6d\x72\x56\x7e\xca\x6f\xea\xef\x2a\x0e\xb8\x1a\xc1\x08\x47\xc9\x90\x22\x84\x5a\x9c\x8f\x3a\xf9\x4f\x23\x23\xac\x1d\x26\x9f\x11\x7a\x7c\x5c\x1f\xc0\x4b\x87\x44\x13\x7b\x5b\x0a\x4e\x48\xf8\x8d\xd9\x3a\x63\x23\x56\xbf\x55\xa8\xde\xec\x6f\x92\xb9\x47\xbb\x9d\x7c\xf6\xc1\xb0\x37\x00\x8b\x02\xc5\xfd\xee\x0f\x25\x13\x2e\x11\x2e\x35\xf1\x56\xa3\x77\xce\xcb\x2e\x42\xa4\x92\xa5\xe5\xe0\x91\xef\x72\xdc\x3c\x87\x6a\x75\xbd\x37\x9e\xe5\x3b\x1c\x65\x87\x7e\x15\x37\x76\x4e\x44\x78\x92\x63\x09\xad\xcd\x2d\x3b\xef\x24\x07\xa5\xbe\x17\xdb\xd7\xc2\x9a\x35\x78\x25\x36\x8e\xd5\xff\x35\xa3\x73\xe3\x09\x07\x29\xf2\x3a\xef\xfc\xa3\x5c\x2a\x06\xc6\x44\xa7\xeb\xe0\x73\xe7\xeb\xa9\x76\xbd\x72\x19\x49\xd0\x20\x4f\xd3\xdc\xcf\x24\x9a\x07\xf9\xe3\xfc\x6d\xc0\x9f\xb5\x0d\x94\x65\xf2\x4b\x3d\xc7\xf7\x5d\x51\x5f\xd9\xb3\xe7\x90\xb3\xd7\x53\x32\xec\xdf\xcb\xe7\xc7\xe8\xb0\x9f\x70\x7e\x89\xdc\xd1\x4b\xbc\xfe\x92\xd3\xa3\x2c\xd1\x64\x0b\x4e\xb9\xca\xd0\x4d\xee\x31\x35\xfa\x19\x72\xe5\x9d\x30\x1a\x58\xd9\x09\xf5\x3d\x03\x08\x1d\x5d\xfa\x47\x70\x65\x10\x52\xd6\x9c\xd2\xbf\xd1\x6c\x36\x47\x78\x13\x03\x85\xa1\x9e\xc2\x70\xab\x53\x83\x87\x7e\xd6\x1b\x03\xd4\xfd\x31\x83\xa8\x62\x9d\xd3\xab\x22\x11\xb6\x8f\x4f\x79\x24\x8e\xcc\x9d\x0f\xd9\xbe\x85\x20\xa3\x87\xd2\x49\x56\x20\x54\x00\x3e\x8d\x00\xfc\x3c\xc0\xba\x01\xfc\x0e\x1d\x26\x06\x1c\xb4\xe7\x7c\x7a\xeb\x27\x36\xff\x2d\x21\x3d\xe2\x61\xfd\x68\xa7\xb6\x3b\x97\xba\x87\x13\x12\xf8\x6c\x53\xd4\xba\x99\xf0\xd8\x55\xac\x8b\x72\x4c\x83\x08\xd3\x3b\xe3\xae\xee\x7c\xd3\x2d\xbc\x5c\x45\xca\x8b\xea\x25\x53\x31\x65\x6c\x9d\x71\xd5\x8e\xd2\xfa\x5d\xc2\xfa\x54\x08\x57\xd8\x69\x0e\x8d\x97\xed\xd9\x79\x98\xf4\xce\x8b\xe4\x84\x0e\x55\xe2\xa1\x12\x74\xec\xa6\x06\xa0\x38\xa8\x8f\x39\xe9\xf5\xc3\x82\x14\x78\x01\x9e\xf5\xd9\xf9\x29\x81\x56\x85\x6a\x95\xcb\x56\x5d\xe9\xeb\x0e\x26\x8c\x29\xe4\xf7\x7b\xd7\xc1\xfc\xf0\x5a\x3f\xb5\x69\x95\xc2\x66\x17\x5e\x84\x6a\xb8\x01\xc7\x68\x10\xae\xa3\xcd\x43\xfd\x72\x2c\x0b\x0c\x09\x43\x58\xf6\x58\xa6\xa9\x38\x25\x62\x1a\xdb\xe6\xa7\x84\xb6\xb1\x10\x47\x25\x3a\x04\x19\x01\xef\xcd\xfa\x06\xbc\xb1\x64\xa6\xd3\x34\x2b\xc9\x39\x70\x95\xc2\xf8\xed\x23\x55\x1a\xaf\x10\xa6\xae\x8d\x37\x61\x1b\xfd\x0a\x63\x3c\x2b\xe7\xc1\xfe\xbd\xf2\x54\x07\x2a\xce\x4a\x07\x17\xbf\x95\xa4\xea\xce\x8a\x52\x2a\x9e\xaa\xab\xc6\xdd\xed\x2e\x3d\x8d\xab\x89\x70\x1a\x58\x81\xbc\xb0\xb6\x2c\x25\x7f\x39\x88\x55\x1e\x96\x2e\x6d\xdc\xbd\x5e\x66\x87\xd6\xea\xfc\xb6\x4b\x58\x0c\x87\x77\x43\xb8\x8f\x5d\x62\x91\x98\xf7\xa8\xde\xdc\x25\xe8\x48\x81\x23\xd2\xe4\xf4\xdc\x5f\xc9\x9f\xbb\xf1\xa8\xb7\xf9\xd6\x23\x18\xbc\x4f\x64\xb8\xce\x65\x25\x07\x71\xd9\x65\x45\xac\x87\x1a\xce\xb2\x25\xf8\x9e\xf3\xd1\x9b\x77\xdf\xbe\xf9\xb8\xb8\xfc\xf8\xf1\xf2\xaf\x90\x52\x6e\xa9\x4f\x4a\x7d\x29\x7a\xfc\xa9\xc6\x2d\xb6\xe3\x0e\x47\x13\x92\x3c\x77\xde\xb8\x4d\xaf\x35\x4b\x66\xf3\x64\x4e\xde\x67\xf1\xf0\x77\x95\x83\x12\xd7\xfe\x3b\x1f\x5d\x57\x07\xda\xaa\x88\x91\xb1\x92\x38\x4c\x22\x07\x1d\x38\xdb\x22\xbc\x1c\x01\x46\x89\xba\x02\xc8\xfb\xac\x2f\x53\x74\xc6\x07\x7c\xcb\x58\x0e\x11\xc4\xc3\xf7\x65\xf1\x90\x41\x6e\x8d\xfc\xd9\xad\x78\x43\x3a\x3b\xef\xb7\x08\xaa\xc3\x20\xb4\xa7\x97\x3f\x67\x1c\x5e\x38\x5e\x83\xa0\xe2\xa7\x70\xea\x29\x61\x43\x8a\xb0\x23\x15\xbb\x1d\xff\x86\x4d\x39\x61\x13\x4d\x16\x08\x1b\x72\x74\x41\x5f\xf2\x0b\x54\xce\x4a\xdd\xc2\x9c\xc4\xc6\x4c\x87\x43\x17\x64\xdd\xe2\xa5\xb1\xa7\xc4\x11\x8e\x17\x0e\x7b\xf9\xf4\x1c\x92\x8a\xc9\x65\x7a\xdb\xaf\x12\xe0\x66\x19\x1b\x4a\x16\x0e\x99\x94\x08\x06\x5b\x9e\x9d\x23\x6c\x09\x5a\xe9\x87\x36\xf1\x0b\xf6\x0d\x19\x5f\x30\x05\xcf\x12\x1b\x3f\x43\xbe\x81\x8a\x59\x4a\x2c\xc7\x96\xaf\x56\x40\x23\x4c\x9a\xe7\xce\x00\xbd\x0f\xd9\x2d\x69\x65\x1c\x95\x02\x4f\xf3\x27\xc7\xb5\x15\x29\xdc\x69\x6e\x93\xd7\xc1\x6b\x6d\x83\x2f\x81\xa7\x79\x4d\xeb\xe5\x6b\xba\xac\x78\x2e\x2a\x8e\xb2\x27\x94\xda\xfb\x80\x24\x20\xa0\xe6\x7b\x56\x0b\x5a\x42\x7a\x6b\xc5\x9d\xff\x1f\x65\x58\x5d\xaa\xbc\x77\x08\xd0\x97\x0f\x96\x54\xd8\x3a\x2a\x18\x7b\x39\x82\x67\xaf\x94\x5c\x1b\x4d\xea\xd7\xa3\xfb\xf1\x1a\x6e\x39\x74\x9a\x40\xbf\x58\x2c\xdf\xdf\xc1\x76\x6d\x85\x5e\xb3\x9a\xc7\xea\xc6\x30\x99\x4d\xa8\xd5\xd0\x4d\x51\xb8\x2d\xc7\xfd\x0d\x8b\x4b\x32\xbe\x28\x5f\xf2\x8b\xd2\x18\xde\xf5\x91\x34\x7b\x30\x2b\xa5\x20\xa3\xed\x67\x0c\x97\x0a\xc9\xb9\x0d\xe8\x19\x64\xad\x84\x61\xfc\x2c\x69\x80\xfe\x3b\xb6\x7b\x14\x85\xeb\x33\x86\xe1\xd4\x6b\xcd\xa4\x01\x1b\x01\xd3\xbc\xcd\xb7\xc7\x4c\x51\x4d\xef\x63\x16\xc6\x16\x47\xba\x53\xaa\x38\xc3\x68\xcc\xd8\x9c\xd8\x39\xaa\x77\x92\xfb\xe4\xba\xe7\x6f\x1f\x60\x5e\x6b\x56\x08\xda\xcd\x96\xf8\x35\x86\xd1\xe9\x3a\x4d\xb9\xc1\x77\xb3\xa3\xe0\x14\xa8\x74\x94\x60\xc5\x86\xa0\xe8\xb4\x1a\x71\x84\xb2\x9f\xba\xbc\x2b\x9e\xc8\xaa\x96\x5a\x55\xfa\xf6\x61\x5f\xe6\x19\xdd\xe8\xed\xbe\x4b\x1f\xb9\xf1\xee\x6f\x44\xbd\x7f\xa2\x91\x35\x2b\xbb\xc9\x32\x0e\x4d\xf9\xc1\x61\x14\x9b\xda\xd1\x01\xe8\x72\x87\xfb\xa6\x77\x94\x3f\x3c\xa3\xf3\xeb\xb0\x73\x56\xbf\x09\x1b\x70\x2e\x76\xc7\xf4\x9e\x97\xcf\xe9\xfb\xa6\xdb\xf7\x65\x19\xeb\xf9\xe6\x98\x9e\x39\x5d\x35\xe1\x0d\xee\xe0\xff\x9e\xd8\xcd\x80\xc5\xc2\x09\xcd\x38\x16\x96\x4e\x20\x97\xbf\x4a\xde\xbb\x77\xd5\xe7\x3d\xa9\x87\x0e\x2b\x83\xc4\x37\xe7\x53\xe1\x2b\x83\xc4\x13\x89\x87\x9e\x3e\x7c\xc2\x0b\x41\x80\xe3\xa6\x34\xe1\xfc\xe1\x2d\x8c\x12\x94\x91\xb8\x54\x72\x68\x05\x99\x53\x2b\x25\x8b\xef\xd9\xd2\x7b\x58\xc5\x13\xaa\xcf\x15\x28\x4c\x96\xb1\x44\xa4\xf1\xb3\x4a\x83\x9c\x0b\xa7\xc4\xb4\xc3\xca\x65\xd1\xac\x7a\xd1\xe3\x9e\x70\xe7\x73\x30\x63\xa8\x53\x57\xbc\x73\x18\xef\xc2\x74\x61\xc1\x5a\xe9\x89\x66\x08\xea\xf9\xdc\x78\x28\xf8\x8e\x2f\x98\x0b\x47\xb6\x01\xa7\x39\xa1\x33\x36\xc7\x35\xf1\x59\xf6\xdc\xfa\xdc\x69\x01\x3c\x47\xb8\x20\xa0\x77\x36\xd9\x4c\xb3\x1a\x22\xa9\xd7\x99\x73\x57\x6b\xad\x97\x95\x9a\x7a\x53\xb2\x9f\x22\xeb\xb7\x35\x99\xb3\x96\x46\xe1\x12\x59\xc4\xad\x51\x80\xab\x5c\xc2\x62\x53\x35\x7d\x3b\x30\x4c\xdf\x2c\xb0\xe7\xe1\x03\x42\x81\x16\xde\x08\xa1\xd3\xc8\x26\x12\x00\x2d\xb9\x47\x06\xa5\xed\x20\xf2\xad\xe1\xb8\x22\x84\x3f\x77\xa5\x98\x4b\x6c\x43\x03\xf0\x23\xe0\x41\x4d\x7a\x9f\xce\xe7\x9b\xcd\x32\xa9\x20\xd5\x8e\x10\x41\xa5\xec\xaa\xee\x69\x56\xd6\x94\x8b\xcb\x3d\xc2\xc7\x1b\x47\x46\x74\x79\xa3\xb3\x8a\x97\xbf\xf7\xc9\x8e\x3c\x41\x4a\x94\x88\x2d\xc1\x9b\x9e\xf0\x00\x1f\xc2\x55\xaa\xf7\xe2\x13\x99\x89\xf8\x75\xc7\xd8\xc2\x08\x6d\xab\x6d\xb7\xdb\xd8\x0a\xb1\x75\x36\xf6\x99\x68\xc8\x13\x69\xa5\xe7\xbe\xc4\x70\x76\x1e\x92\x0f\xb3\x12\x19\x3d\x3b\xc7\xe7\x2a\x1d\xdf\x86\xad\x45\xbf\x6f\xdd\x93\xd7\x79\xaf\x4f\x1a\xed\x73\xbc\xa7\xc7\x31\xc2\xb4\xc5\x4d\x19\xed\xaf\xb7\xc4\x63\x58\xd8\xa0\xf4\xd3\x6b\x3b\xf6\x57\x94\xcb\xab\xaf\xa6\xbd\xba\xc7\x2c\xab\x77\x4e\x3a\x94\x44\xb7\x9a\x75\x27\xe9\x76\xa9\xdd\x75\x35\x8d\x0e\xdc\xf4\xd5\x59\x55\x68\x07\xce\x48\x16\xa4\x5d\x0d\x8f\x46\x57\xb0\xf6\xa7\x2b\xd7\x39\xb2\xae\x51\x76\x79\xb7\x03\x20\x67\x70\x93\x7b\x8c\x7d\x45\x8e\x94\xa0\x1b\x7e\x43\xde\x61\x98\xfd\x4e\xc3\x59\x42\x9b\xd7\xf4\x86\x95\x21\xf8\x5d\x8d\x32\x9f\x83\xef\x82\x4b\xf3\xb3\x33\xe4\x75\xa9\x5a\x06\x58\x02\xcf\x52\x25\x46\xb4\x5c\xf5\x9b\xd5\x0b\x91\xaf\x56\xfb\x77\x57\x97\x30\x6a\x2a\xe3\x0e\xb0\x03\xf6\xb2\xed\xd4\x3d\x60\xaf\x40\xbb\x72\x68\xa6\x78\x8f\xf2\xd8\xba\xf5\xda\x4e\x32\xe5\x6a\xf1\xd4\xec\xc0\x1a\x13\xe8\xd7\x3f\xc3\x66\xf9\xd0\x25\xbd\x9f\x71\xed\x48\xaf\xf9\xb6\xfb\x56\x64\x46\xe7\xf2\x5b\xc2\xae\x9a\xc4\x45\xb9\xae\x7a\x71\x15\xaa\x17\xdf\x96\x9e\x96\x3f\x10\xee\xbc\x71\xfb\x86\x80\x0f\x30\xec\x8f\xf8\x13\x99\x25\x6a\x0b\x24\xf3\xc1\x07\x85\xba\x84\xe2\x8b\xd6\x71\xef\x9a\xd1\x79\x9a\x7e\x32\x6a\x76\x30\x4c\x85\x3d\x90\x6c\x4d\x3e\x20\x73\x47\x6a\x6e\x71\x8d\x3f\xc9\x82\x97\xe4\x23\xce\xf7\x38\x03\x42\xf5\x69\xf6\x41\xd7\xe8\x74\xab\x6b\x47\x8d\x14\xbb\xdd\x6c\xde\xa2\xc9\xa1\x02\x19\x25\xb3\x39\xc2\x97\xce\xfb\x76\x4a\x27\xa6\x2b\x8a\x94\x17\xf6\x2b\x72\xe9\x19\xdd\x5e\x3d\xc7\xe8\xe6\xc3\x06\x1c\x63\x79\xfb\xfb\x18\x5a\xb5\xd1\x4d\x21\x69\x7c\xb1\x81\xb1\x07\xfe\x10\x99\xf0\x21\x8f\xbc\xe8\x0a\xfc\x6a\x98\x69\x8f\x8b\x85\x1b\xf0\x42\x79\x8a\x00\x3a\xd6\xdb\x52\x76\xc0\xaa\x72\x8f\x9e\x75\x14\x54\x1c\x85\x75\x32\xc0\x3a\xaf\x3e\x37\xdb\x03\x9a\xd8\xb0\x01\x8d\xf5\xaa\xf8\x9d\x55\xdf\x71\xc4\xbb\x1e\x83\x8a\x03\x0a\x4e\x37\x02\x90\x57\x42\x30\x3e\xea\xe5\xb2\x54\x9a\x0f\xed\x58\x86\x32\x9b\x43\x12\x53\x9c\xac\x59\x99\x17\xec\x6f\xf4\xb5\xcd\x2b\x89\x02\x7f\x14\x39\x1b\x97\x88\x39\x3e\xa3\x8e\xe8\xf8\x68\xf3\x32\x06\x93\xf4\xd2\x39\xeb\x2c\x1a\xac\xeb\xb8\x53\xfa\x1b\x8f\x3d\x6f\xe3\x99\x60\xc5\xff\xce\x47\x6c\xfb\xf0\x0b\xcf\x97\x6f\x91\xfe\x6f\x3b\xd1\x2f\x9f\x9d\x89\xfe\xfb\x6f\x3b\xb5\x47\x9f\x24\x44\x14\xab\xab\x95\xd1\x05\x47\x6e\x5c\x5c\x95\xfb\xee\xf2\x43\xb5\xa5\xa4\xad\x1b\xd0\x80\xf1\xbf\xae\xcf\xcb\x85\x56\x94\x96\x2b\x88\xc6\x74\x0e\x4b\xa8\xc5\xd5\x7a\x7d\x68\x06\x8a\x45\x3c\xb4\x04\x9b\x3c\x26\x33\xec\x53\xa4\xd3\x5f\xe2\xec\x12\xf3\xe2\x38\x3e\x28\xf1\x38\xb7\x95\xff\xda\xfb\xaa\x43\x2d\x2d\x4e\xc9\x91\x48\x94\x87\x5d\x63\xfe\x9f\x71\x09\x0b\x8c\x36\x11\x57\x11\xab\x8c\xb9\x01\xef\x4d\xe3\x38\xe6\xdd\x8d\x07\x92\xda\xf3\x30\xa9\xbd\x32\x61\x50\x30\x61\xf0\x59\xe9\x1f\x94\xd2\xa5\xef\x1f\x05\x3d\x85\x4a\x50\x15\xd4\x60\xbc\x1e\x39\xa4\x45\x0d\x6d\xb4\xbc\x6f\xa0\xf0\xec\x5d\x75\x7c\x12\xb4\x5b\xc9\x15\xf2\x56\x20\x26\x03\xed\x31\x78\xed\x13\x97\xd4\xb1\xed\xcb\x3f\x7b\x9a\x39\x24\x06\xc6\x90\xd7\xf7\xcd\x28\x8e\xd2\xae\x27\xe6\x8b\x83\xca\x06\xd8\x21\x4a\x98\x75\x09\x6b\xdf\x96\x08\xa5\x3a\x92\xfa\x31\x8d\x85\x65\xe3\xed\x6d\xf2\xda\x14\x08\x99\xa6\x27\x09\xde\x30\xb1\xf6\x45\xd8\xc0\x7f\x66\x62\xa3\x63\x15\xf6\xef\x99\xb0\x5c\xb0\x7d\x58\xb9\xe4\x90\x2e\xda\x2c\x65\xb4\x95\x93\x8e\xe3\x8c\xf1\x54\xf1\x37\x63\x06\x29\x74\xbf\x2b\x2a\xe5\xbc\x1b\x1e\x36\xb4\xdb\x8d\xd1\x90\x03\xf7\xfa\xd5\x3a\xec\xf5\x22\x3b\x39\x93\x9d\x88\xea\xe6\xa6\xa0\x91\x1e\xf6\x1e\xa5\xd3\xfe\x90\x5b\xbc\xcc\x97\x1b\x7a\xe0\x03\xdd\xe8\x94\x88\x2b\x48\xc8\x07\x6e\xec\xbf\xfc\x5a\xea\x40\x75\x3d\x8b\xec\xaa\x80\x8f\xff\xaa\xeb\xa6\x4b\x78\x55\x08\x91\x76\xa8\xaf\x3f\xd0\x12\xd2\x39\x65\x2a\x62\xc6\xfa\xa3\xb3\xfa\x8a\x0a\x51\x48\x36\x2e\x62\x1d\xec\x7a\xbc\xba\xd2\x5d\x8f\x0f\xfb\x26\xd2\xc3\x47\xb0\xf1\x01\x3c\x1a\xab\xbf\x6b\x8a\x35\x2b\xf6\x74\xd8\xef\xcf\xd6\x35\x06\xfc\xe0\xad\x6b\xac\x3f\x1e\x53\x73\x72\x7a\x8e\xbd\x92\xf2\xa7\xfe\xa8\xdd\xa1\x76\x5d\x75\x1c\x66\x29\x0f\x30\x4b\x2d\x3e\xc5\x6f\xea\x13\xdd\xd4\xc9\x6d\x53\x03\x50\x69\x4d\x45\x72\xe0\xd2\x38\x39\x74\x93\xf8\x97\x02\xc5\x8f\x9d\x41\x07\x33\x6a\x11\xe6\x23\xb1\xa1\x65\xcc\x45\x0a\x82\x70\xb4\x84\x48\x57\xbb\x9d\xf7\x93\x95\x37\x7a\x1d\xfb\xfd\x99\x10\x0c\x1e\x2e\x97\xdc\x72\xbc\x45\x38\xe8\x48\xa7\xa9\xf8\xa2\x7e\xf4\xc6\xe4\xc1\x8c\x4c\x2f\xc9\x1b\x88\x8f\x3f\xf1\x97\x39\x41\xad\xd1\xa9\xb6\x20\xac\xd2\x72\xc2\xb2\x44\xfe\x9b\x20\x0c\xd9\x35\xe4\x6f\xf8\x23\x41\x18\x64\xe4\xe2\x41\x3e\xd2\x7f\xca\xdd\xd1\x09\xff\xeb\x7e\x0e\x2f\xa6\x2d\xd8\x63\xfa\xfb\xba\x5c\x63\xdc\xb9\x8a\xf3\xc0\xcd\xfb\x0b\x99\xba\x2e\x6c\xe7\xb3\xe2\xef\xff\xae\x0c\xed\xe3\x62\x61\x07\xaf\xd5\x31\x5c\xe5\x13\xf2\xf3\x7d\x1d\xd4\xaa\xb8\xfa\x23\x5d\x55\x6b\x55\xd4\x0b\xca\xe5\x47\x34\x7f\x27\x08\x37\xa5\xff\xc2\xfd\x4a\x10\xee\xa4\x19\x93\xef\x37\x79\x9d\x20\xdb\x14\x5d\xbd\xdf\x9a\x37\x37\x54\xa8\x1f\xde\x7b\xf5\xa0\x96\xaf\x2b\xf5\x67\xa4\x72\x1d\xd4\xae\xfb\xd5\xbf\xab\xf8\xa7\x87\x2d\xf5\x5a\xd1\x4f\x62\x8d\x79\x85\x5d\x9b\xae\x3c\x03\x1d\x95\x7c\xcb\x8c\xb6\xea\xe8\x9d\x6c\x51\x20\x04\xe9\xad\x35\xf2\xa2\x1d\xbe\xc6\x16\xde\x03\x9d\x79\xf8\xae\xfc\xa2\xf0\xf6\xbf\xd7\x4e\x57\x33\x54\x7b\x5c\x4d\xd3\xff\xfb\x95\xca\x88\x15\x79\xa4\xed\x28\xdd\x20\xb0\xa0\x4c\x78\x0f\xc6\xb3\x72\x84\x15\x82\xd4\x1c\x2e\x14\xd3\x78\x21\x76\x2a\xd3\x4e\xf0\x9f\xb5\x40\x78\xe5\x4c\x52\x2f\xad\xda\x94\xfc\x16\x2e\x5b\xcf\x6f\xc1\xe8\x32\x2e\x3b\x7a\x56\xda\xf3\xea\x7c\x6c\x8d\x5b\x27\x85\xdc\x64\x3a\xb3\x5a\x45\x4a\x9d\x5f\x12\xe7\xf6\xa9\x9e\x10\x44\x6b\x11\x06\x17\x46\x64\xda\x09\xc2\x15\xa9\x76\xbb\xae\x11\xa9\x0c\x03\x23\x6d\x34\x0e\xc0\xbd\x3f\xc6\x96\x28\x1a\x51\x59\xf6\xd7\x87\xa5\x69\xc6\x0e\xad\x4f\x09\xe1\x91\xd6\x93\x14\x82\xc5\x17\x6a\x00\x2e\x98\x55\x3f\x18\x78\x56\x5f\x75\x8f\x79\xee\xac\x0a\xc0\xfa\xe0\xe7\xd6\x68\x77\xda\xd2\x86\x70\x95\xa6\x3a\xe1\x2a\xc4\xa8\x28\x10\xf6\x9a\x96\x2b\x54\x93\xac\x21\x15\xf2\x23\x91\x1a\x3c\x63\x56\x9c\xcd\x4d\x1a\xbd\x9a\x64\x05\xa9\x90\x7c\xa5\x8a\x15\x78\x16\x94\x62\xeb\xec\xf4\xfc\x94\x90\xda\xfa\x8c\x9b\x64\x1a\xe7\x21\x2f\x7d\x1c\x9d\x88\xc1\x25\xfb\xd4\x01\x2a\x9f\x5d\xe7\xd7\x34\x1e\xc9\xb4\x3f\xc6\xe9\x17\x03\xd0\x74\x20\xa5\x9f\x1f\xc7\x8b\xf3\x5f\x85\x06\xd5\x2a\xc7\xaf\x16\xbb\x93\x85\x1c\x67\x79\x43\x57\xda\x0f\x14\x54\x1e\xce\xc9\x34\xc1\x2b\xe3\x18\xba\xa7\xac\x75\x1c\x4d\x5a\xdc\x84\x8e\x57\xe6\x36\xf1\xac\x26\x34\x1e\xd7\xaa\xb6\x60\x0b\x3c\x12\x2b\x37\x94\x33\x51\x7f\x5f\x55\x35\x55\x91\x34\x36\x7d\x97\xb5\xf5\xd9\x04\x9f\x23\x56\xb2\xc0\xe3\x29\x48\x53\x53\x32\xb1\x27\xae\x57\xdd\x5d\xda\x4d\xff\x35\xe3\xe2\x01\xfc\xaf\xc9\x38\x7c\x43\x14\x06\x0b\x3c\x52\xaa\x21\x28\x4b\x4e\xc7\xc1\x43\x5b\xad\xb3\x42\x7e\xf5\xce\xab\xb7\xf5\x8f\xdb\x55\x2e\x58\x79\x43\x4e\xcf\xe3\x45\x3e\xe5\x37\x07\x1a\xf8\x48\xef\x58\xcd\xaa\x52\xe7\xff\x66\x33\x3e\xfa\xf0\xf1\xfd\x87\x37\x1f\x3f\xfd\x75\xf1\xfa\xed\xeb\xc5\xab\xdf\x5d\xfe\xf0\xaf\x6f\xe6\xfd\x34\xe4\x9c\xde\xe5\x05\x5b\x81\x8a\x5e\xd5\x3b\x14\xf5\xab\x63\x38\x66\x73\x03\x50\xaf\x6d\xc2\xf2\xd7\x34\xeb\xb7\x28\x05\xf8\xdc\x85\xfa\x3e\x11\xdf\xdb\x99\x93\x8e\xf3\x9d\x3c\x1d\x64\xdc\x62\x36\xf2\xc2\xab\x63\xb3\x34\x0e\xe4\xdd\x1d\x6b\x54\x32\x30\x7b\xeb\x5d\x61\xbe\x58\x54\x07\xc0\x3d\x27\x8c\x1e\x4d\x0d\xbb\x48\x90\x1e\x9d\xb6\xbf\x93\x2e\x5f\xe1\x3b\x8a\xe8\x3a\x26\xa0\xc9\xd5\xea\x8f\x46\x25\xa2\xdb\x1b\xc1\x6d\x5d\x4f\x54\x41\x7f\x66\x5d\x1f\xb4\xc8\x37\x33\x18\x51\xfe\xd6\x4f\xd3\x2c\x3c\x0a\xb3\x39\xc2\xe0\xfd\xb7\xe7\xec\xa4\x29\xfd\x66\xdf\xbb\x20\x7a\xfc\xd0\xe2\xa9\xa8\x6d\x97\xa8\x34\x68\x4f\x6b\x67\xfd\x56\xb0\xd9\x8f\x36\xd2\xa3\xdf\xf9\x05\x7b\x59\x82\x95\x23\x78\x3f\x63\xf3\xd0\x0f\xdd\x7c\x0c\xa6\x2f\xb3\x68\xd7\xe3\xc1\x3e\xca\x71\x76\xde\x06\x32\x88\xe9\x86\xce\xe5\xc7\x58\x28\x3c\x84\xd8\x7e\xec\x3b\x4d\xc6\x3e\xc7\x74\x3c\x89\x0d\x08\x1f\xb1\xa6\xb8\x24\x62\x1a\x5d\xb3\x89\x99\xce\x31\xa7\x45\x91\xa1\x78\x30\x02\xf8\x57\x95\x86\xac\xb2\xd2\xdb\x5b\xbd\x5a\xf6\xc6\x08\x2b\xe9\xe8\x91\xc3\xa7\xf5\xa9\x52\xfd\xb5\x7c\x7a\xc7\xd1\x34\x3d\x0d\x14\x0e\x69\xaa\x0e\x79\x3f\x9e\x45\xe5\x4b\xc3\xf6\xfe\xe8\x92\x7b\x75\xf2\x8f\x58\xcd\x3e\xbd\xea\x34\x05\x06\x7d\xbe\x3f\x0c\xa6\x57\xc1\x8c\x4c\xad\xd2\xc1\x4b\xdd\xef\x7c\x6f\xf1\x68\x04\x89\x50\x6a\xf0\x43\x1b\x41\x15\xb1\x48\x34\x15\x44\x24\x55\xc3\xce\x77\xe8\x0f\xdf\xee\xc9\x61\x79\xc6\xd0\x45\x06\x61\xa0\x7b\xce\x9a\xf6\x0d\xeb\xbf\xf8\xa6\x42\x5d\xb2\xe5\x9d\xd0\x0a\x1d\xb8\xc9\xe3\x3b\x54\xcd\x06\x16\xc9\x6d\xea\xfe\xc7\xdb\xcf\x47\x84\x5d\xe9\xdd\x11\x6b\x08\xf2\x60\x3f\xc1\x29\x48\xe9\x0a\x3c\xb5\xe3\x05\x3f\xe5\x37\xb0\x6d\xf2\x91\xe9\x60\xcf\x62\x7f\xca\x6f\x0e\xf3\x14\x68\xb7\xcb\x02\x22\xd4\x6f\x60\x7a\xe4\xa9\x9d\xc4\x87\xe0\xb3\x3f\x66\xad\xf6\x93\xc8\x6c\xcf\x81\x0b\x98\xa8\x3d\x65\x24\x17\xf5\x4b\x78\x92\x04\xed\x69\xd8\x32\x60\x66\xc9\x9b\x03\xeb\x0d\xe8\x25\x4a\x2d\x0c\x6c\x0d\x20\x7a\x4b\xee\x76\xf6\xf8\x99\x3e\x4c\xcc\xee\xef\x86\xa2\xc5\xaf\xeb\xde\xd6\x3a\x9e\xd8\x05\x5c\x2b\x9d\x06\x82\xae\xbb\x15\x62\x9b\xb7\x73\xbd\xa9\x77\x5d\x85\xb4\x49\xd6\x17\x84\x2c\x9e\x51\x03\xae\x5a\xa2\xc7\x12\x08\x82\xf0\xec\xab\x67\x25\x18\x58\x0d\x97\xbf\x97\xc5\x19\x30\x43\x98\x6d\x20\x34\xfb\xff\xb9\xfb\xd7\xee\xb6\x71\x64\x5f\x1c\x7e\xaf\x4f\x21\xf3\xf4\xd6\x90\x23\x98\xb1\xd3\x3d\x37\x25\x6c\x1f\x27\x76\xba\x7d\xda\x8e\xb3\x6d\xa7\x7b\xfa\x51\x6b\x7b\x68\x09\xb2\x31\xa1\x08\x0d\x08\xda\x71\x5b\xfc\xee\xcf\x42\xe1\x4a\x12\x94\xe5\x5c\x66\xcf\xfa\xaf\x95\x15\x53\x24\x50\xb8\x03\x55\x85\xaa\x5f\x89\x03\x44\xdb\xf5\xd6\xcf\x9d\xa8\xaa\x2a\xf0\x8f\xb6\x88\x92\x35\xd8\x14\x54\xda\xb0\xa8\xae\xd9\x26\x7a\x68\x74\x9a\x64\x46\xd3\x8c\xa4\x85\x03\xb3\x13\x21\xef\x86\x31\x6a\x32\x6c\x0e\x0b\xb9\xde\xdd\x4e\xec\x34\x5b\xbb\xd1\xa6\x98\x77\xbe\x08\x3e\x4f\x91\x7c\x8d\x45\xd6\x26\xb1\x21\xd7\x07\x3b\x6d\xc0\x81\x3c\x66\xd7\xf7\x19\x82\xf8\x23\x31\x88\x3a\xf1\xfa\x2c\xf4\xc6\xe7\x8b\xd4\x2d\x58\xfe\x1a\x7b\x8d\xc7\x37\x13\x15\x8f\xd0\x23\x7b\x67\x49\xa9\xf4\x7f\x56\x46\x95\x93\x10\x4d\x61\x41\x90\xf8\xf2\x17\x9c\x7e\x38\xc7\x1c\xcd\xe1\x85\xf8\x75\x92\x2e\x15\x24\x87\xf3\x06\xdd\x48\xdf\x96\xe2\x7e\x71\x45\xb3\x28\x0c\xde\x9c\xed\x9f\x1c\xfe\x72\x7a\xf6\xd3\xe5\xeb\xe3\xfd\xf3\xf3\x20\xaa\xc3\x72\xb8\xd8\x7a\x85\x81\xf3\x12\xeb\xd2\x20\x77\xb9\x6c\x37\x56\x4a\x1b\x9c\xa7\xdc\xc5\xdd\x41\x69\x82\xe3\x26\x18\x0f\xca\x12\x43\x24\x1f\x0c\x72\x13\x99\xd5\x44\x4a\x94\xb8\x60\xa9\xfd\x30\x4f\xdc\x60\xae\x3c\x42\xb3\x64\xe7\xc5\xec\xe5\x5c\xfb\xfa\xcc\xb4\xaf\xcf\x4d\x32\x1f\xcf\x26\x68\x99\xf0\xf1\xcd\x04\x2d\x44\xf5\xcb\x78\x86\x8b\x29\x23\x4b\x4e\x59\x4d\x34\xc4\xe8\x06\xb1\x08\xdd\xda\x42\x17\xa0\x70\xba\x95\xa4\xee\x13\x31\x3a\xbd\x4c\xd4\x50\xe3\xdd\xde\x44\xdf\x6f\xef\x0e\x06\xe1\x32\xb9\xdf\x83\xfe\x5c\xa4\x1f\xb4\xa9\xf4\xbd\x41\xa4\x5c\x46\xa3\xe6\xc7\x65\x14\xa1\xa9\x68\x52\x9b\x52\x2d\x1a\xdc\x43\x85\xee\xd1\x32\x8a\xaa\xdb\xbd\x05\x60\x7e\x89\x4a\x2e\xa3\x91\xc5\x3e\xb1\x50\xc1\x1e\x50\xaa\xd5\xea\x06\x42\x03\xee\xc1\xc4\x5a\x8e\x7c\x69\x42\x41\xb0\x92\xda\x0e\xd1\x95\x2c\x2e\x73\x40\x7d\x70\x21\xaa\x60\x06\x5d\x27\xcc\x00\x86\x82\x51\x57\x11\xd6\xa7\xc0\xb5\x99\x02\x57\xc9\xce\x8b\xab\x97\xd7\x7a\x3c\xae\x86\xc3\x08\xba\x1e\x82\x97\xa6\x1c\xbb\x3c\xf1\xf5\xf8\x6a\x12\x83\xd1\x9e\x7c\x2c\xee\xf3\x69\xf4\x02\x92\x3b\xe6\x63\x18\x05\xa2\x86\x81\x8e\xef\x5b\xff\xc3\x24\xdc\xc2\xa2\x23\x80\xb1\x3e\xe0\xe6\xe2\x64\x90\x47\xa2\x03\x53\x1e\xf5\x4c\x0b\xf0\x60\x10\xce\xe3\x19\xce\x30\xc7\xed\x74\x88\xc5\x6f\xf6\x5f\x5f\x9c\x9e\xfd\x7a\xf9\xe6\xf4\x0c\xc6\x43\x9b\x01\xa0\x66\x62\xb9\x46\x6b\x2e\x1f\x2f\x9c\xc5\xc3\xa3\xb8\xd5\xc9\x15\x16\x67\x10\xe1\x6f\xa4\x89\x6b\x5d\x1b\xe6\x96\x56\x19\x40\x12\x8f\x46\x4b\xee\x08\xc9\x66\x86\x4a\xbc\x6e\xa8\xa4\x22\x78\xbe\x60\x42\xda\x1d\x33\xd7\x50\x89\x4d\xac\x5b\x44\x29\xb5\x62\xb0\x17\x69\xd8\x05\xe3\xc2\xd5\x52\xa9\x89\x77\xb3\xb6\x9e\x45\x2c\x2d\xbd\x1c\xc5\xb7\xa8\x86\x79\xd6\xd7\x1d\x96\xba\x26\xc7\x06\x1a\x93\x1b\x6f\x2d\x47\x8b\xb3\x4e\xab\x23\x3e\x71\x7a\x0e\x8a\xf7\xb6\x94\xe7\x81\x12\xe2\xd2\x3d\x48\xe6\x38\xfc\xc8\x71\x2e\x98\xb5\xbd\x60\x14\x0c\xfd\x9f\xc2\x68\x14\x04\x1a\xb3\xe4\x65\x30\x0c\x61\xcd\xab\xe0\xbe\xaa\x71\xab\x55\x7d\x06\xe9\xd9\xa8\xdd\x55\xdc\xf9\xa3\x0b\x08\xa3\x08\x82\xb6\x4a\x72\x25\x99\x19\x0b\x92\x68\x88\x87\xc1\xf7\x41\x25\x03\x20\x63\xd7\x17\xd9\x4c\x78\x9f\x42\x95\x6d\xaa\x50\x75\xcc\x00\x1a\x6a\x55\x86\xc4\x6c\x51\xd7\x06\x7a\xee\x65\xda\xdb\x21\xb6\x58\x76\x62\x8a\xb8\x8a\x53\x08\x33\x2c\x79\x58\x6f\x58\x53\xa9\x85\xd1\x80\x69\xe3\x1b\x0d\x8d\x86\x52\x67\xf1\x3a\x0b\x36\xdd\xa3\x49\x2a\x4d\xe7\x47\xb5\x55\x4c\x0d\x0c\xac\x09\x13\x1b\x29\xbb\x3c\x12\x6a\xc0\x70\xf5\xbb\x67\x5c\x30\x99\xbd\x02\xe1\x7b\x78\x74\xeb\xef\x1e\x70\xaf\xc3\x9e\x95\xe6\xb2\xb8\x62\x22\x9e\x49\x16\x31\x42\x99\x43\x68\x4d\xef\xc8\x25\x84\x9d\xbc\xed\x21\x05\x12\x76\xdd\x03\x92\x05\x00\xc0\x87\x53\xbd\x71\xe1\x08\xcd\x24\x74\x95\xe8\xac\xc1\x60\x66\x37\x8f\xb2\x61\xfc\xd9\xae\x0f\x88\x1a\xba\x71\x0d\x16\xc5\x61\x48\x3d\x7b\x80\xa7\x21\xd2\x19\xa6\xa9\x42\xf4\x9d\x5e\x16\x5d\x48\x6c\x57\x2f\xf0\x0b\x89\xee\xaa\x44\x48\x8b\x11\x04\x41\xbc\xcb\x25\x66\x10\x78\xc0\x5e\xff\x98\xc2\x8e\x14\x88\xab\xd7\x4f\xc7\x85\x78\xd5\x75\x14\x1b\xb2\xc3\x08\x78\x20\x21\x6d\x97\x87\x62\x0e\xad\x63\x22\xb8\x73\xaf\xc9\xe2\x4b\x41\x7b\xb5\x7a\x80\x98\xdf\x38\x9d\xde\xbc\x56\x97\xad\x3e\xd4\xc8\x36\x58\x83\xbc\x58\x73\x4b\x57\xc6\xac\x0f\x55\xed\x2c\xa9\xcd\x08\xe3\x64\x75\x60\x6a\x58\xd4\x21\x1d\xa0\x67\x89\x03\x79\xa4\xe1\x07\x89\xae\x30\xeb\x39\x90\x0f\x14\xa0\xe3\x2b\xa4\x4e\x9b\x47\x67\xa4\xd8\xd8\xf5\xac\x8c\x1e\x00\x01\x26\xc4\x35\xd7\x47\x3b\x7e\x3d\x3e\x18\x70\xd3\xb5\xb5\x49\xeb\x99\x9a\xd6\x9b\xca\x5c\x01\x7b\x84\x62\xac\x85\x62\x47\x27\xd7\x92\x8c\xcd\x3c\x2e\xe2\x25\xc6\x1f\x4e\x2c\x46\x67\x4c\x8a\x73\x5a\xb2\x29\x36\x99\xc3\xa6\xe1\x54\x24\x06\xb4\x51\x06\x40\x7f\x7f\x72\x21\xf2\xfc\x6f\x97\x32\xd1\x6d\xa9\x77\x44\xab\x24\x39\x10\x33\x67\x87\x6c\xde\x1d\x8b\x3d\x31\xc4\x49\x63\xfd\x47\x91\xdc\x3b\x5f\xdb\x83\x07\x86\x08\xcd\xea\xdc\x0d\x36\x0d\xb6\x63\xd7\x51\x09\xc5\x99\x4b\x63\x66\x59\xe7\xd3\x79\xbd\x52\x78\x2b\x49\xda\xb8\xfb\x62\xbf\x85\xda\x82\xe4\x8d\xab\xd0\x91\x41\x6e\x6b\x6c\x8c\x3e\x2b\x7d\x12\x86\x9a\x62\x2d\x21\x83\x25\xee\xf1\x80\xad\x2c\x91\xdb\x0f\x30\x19\xcd\x07\x08\xe3\x50\x24\x3b\x2f\x8a\x97\x4d\xbe\xe9\x45\x31\x1c\x1a\x5e\xb7\x4c\x8a\x97\x3b\xab\x55\x33\xcd\xcb\xa4\xd0\xe8\x77\x96\x8b\x2a\x26\x28\xab\xc9\x2e\x10\x0f\x5e\x08\x34\x3a\xb2\xfb\x8b\xe9\xcb\xf9\x8b\xa9\x96\x5f\x66\x49\x36\x9e\x4e\xd0\x4d\x52\x8e\x67\x13\x15\x71\x03\x1b\xa1\x61\x26\x84\x06\x1d\x8d\x26\x15\x29\x6e\x92\x65\x4b\x10\x59\x1a\x41\xe4\xa6\x2d\x88\xdc\x44\x15\x99\x87\xb9\x68\xb8\x87\xea\x42\x53\x6d\x0a\x25\x0b\x74\x13\x55\xe2\x5b\x72\x63\x43\x4f\x2c\x2c\x87\x55\xc6\x30\x45\x2e\xd4\x6f\x24\x85\x4d\xcd\x0b\x2d\x94\x39\x5d\xec\x44\xcd\x8b\xd0\x22\x26\x85\x3c\x6f\xb6\x76\xe0\xc7\x09\xe6\x37\x74\x96\x6c\xed\xf6\xa4\xfc\xb5\x70\x14\x30\xf7\x4f\x51\x73\x38\x01\x94\xbf\xcc\xf5\x7e\x43\x67\xb1\xd1\xc5\xbf\x57\xb1\xf0\x55\xee\xe8\xa9\x9f\xed\x23\x9f\x73\x8f\x4e\xf4\x3d\xba\x38\x25\x5a\x52\x07\x6d\x31\xfd\xfa\x06\xc4\x04\x87\x8c\x34\x06\x06\x5d\xc3\x87\x37\x95\x77\x62\xe0\x94\x85\x6d\xed\xfd\x02\xba\xe2\x1d\xc3\x73\xf2\xd1\x9a\x40\xe2\xd5\x4a\x2a\xf8\xe6\x24\xb7\x05\x83\xeb\x80\xd9\x06\x43\x6c\xf8\x42\x87\x2f\x8f\xc0\x44\x48\x7e\xa8\x71\xd8\x06\xc0\xdb\x26\x96\xfb\x21\x34\x44\x54\x0f\x66\x2c\x2e\x5a\x6d\x5f\x32\x3a\xc5\x45\xe1\x6b\xbf\x47\x18\x72\x6e\x6b\x9a\x39\x90\x6b\x92\xa0\xb2\xaa\xc3\x59\x12\x24\x95\x45\x15\x74\x75\x94\x14\x51\xd7\x98\xc1\x56\x45\xac\x2f\x1a\xbf\xdd\x3f\x39\x3c\x7f\xb7\xff\xfa\xf0\x3c\x61\xce\x8f\xda\x97\xcb\x57\xbf\x5e\x1e\x1d\xd4\xbe\xcb\x57\x92\xb4\x68\xe0\x7e\x96\x25\xcc\xf9\x61\xfb\x1d\xd1\xf8\xea\x5e\xfc\x4c\x1a\x23\xf2\x94\xa5\xfb\xd5\x95\x93\x1b\xad\xea\x27\x19\xfa\x7c\x42\x58\x74\x1f\xb8\xf0\xa3\xea\xc8\xcf\xdf\x3b\x1a\x41\xa4\x13\x3f\x2e\x3e\xca\x6a\x9a\xc3\xe9\x67\xee\x2e\xdd\x42\xa5\xd8\x63\x3c\xfc\x1c\xd1\x3c\xd0\x25\x74\x89\x09\x37\xfd\x13\xbe\xef\x60\x41\x3a\x84\xec\x56\xb0\x01\x60\x04\xe6\xa5\x9c\xb4\x9a\xc3\xc9\xe3\xd3\x5f\xde\x1e\x9e\xf9\x29\x67\x0e\x35\x57\xf3\xe5\x44\xe7\x92\x7c\xee\xa6\x55\x00\x96\x03\xa6\x64\xfb\x2e\x24\xab\xe9\x7c\x04\x53\x44\xaa\x30\xf5\x2d\xf5\x29\x82\x03\xda\xec\x53\x53\x7d\xc0\x9a\xc3\xd5\x80\x46\xa8\xb1\x99\xd6\x81\x0f\x9a\x33\xa1\xf4\xbd\xeb\x1a\x78\x85\x33\x69\xc4\x68\x62\xb0\xea\xac\x6a\xc3\x6c\xa4\x4a\x1a\x97\x1e\x55\x45\x81\x19\xbf\xb8\x71\x00\xf1\xf1\x2c\x0a\x49\x84\x98\xb5\x63\xfc\x4f\x9c\x29\xcd\xa1\x68\x75\x6f\xe9\x74\x6f\x15\x45\xbd\xa7\x6d\x77\x9f\x62\x8b\xf8\xd9\x16\x87\x2a\x24\xc9\x57\x0d\x78\xe7\x6c\x2b\xe4\xab\xeb\xa6\x98\x6f\xa5\x10\x44\x9a\x42\xa5\xba\xc7\xb3\xf7\x7c\x1b\x9d\x4f\x26\xdc\xe8\xe6\xce\xc0\x9e\xf3\xe1\x8b\xfb\xbe\x4a\x71\xab\xa9\x70\x69\xc4\x10\x0c\xc4\xef\xc0\x6e\x60\xee\x27\x13\x25\x32\x50\xc3\xc4\xc6\xb9\x5c\xcd\x38\x9a\xac\x56\x1a\x73\xb9\xe7\xaa\x4c\x13\xb2\xc7\xdb\xd1\x07\xc1\x58\x39\x90\xa2\x62\x34\x72\xc0\x9a\x89\xe0\xb6\x5c\x4d\x0c\x44\x27\xda\x23\x89\x0a\x45\x34\xaa\xab\x69\x34\x65\x91\xc0\x06\xd0\xf4\x04\xf0\x11\xc5\x41\x98\x4c\x1b\xca\x8a\x54\x5a\x63\x12\x8c\x65\x05\x34\x84\xfa\x24\x18\x99\xe8\xa2\xc8\x7c\x7c\x0b\x58\xd3\xe2\x9b\x42\x9d\xb6\x9f\x24\xcf\x2a\x3e\x29\xf3\x6d\xfb\x49\xcb\xb2\xe2\xa3\xe9\x16\xfb\x79\xbf\xb8\xcf\xa7\x8f\xa5\x11\xe2\x98\xf8\xa6\x0d\x7f\xf5\x07\xd1\x34\xf1\x1e\x1a\x66\x5f\x9f\xe1\xeb\xc3\x8f\x4b\xf1\x81\xe1\x6b\xfc\x71\xe9\x7c\x92\xb3\x46\x7c\x32\x1b\x80\xa9\x28\xc9\xc0\xaf\x1e\x2a\x41\x32\x9c\x91\x82\x07\x15\xca\x93\x56\x78\x42\xcd\xa3\x77\xae\x05\x60\x96\x9e\x81\xcc\xe8\x5d\x03\x9e\x4b\xdf\x4d\xdc\xbd\x9d\x8d\xc0\xa8\xdf\x1e\x2a\x0b\x2c\x05\x41\x61\xc6\x78\x92\xec\x22\x1e\x09\x79\xd8\x45\xf7\x62\x36\x26\x98\x63\x3d\xdc\xc4\x29\x04\x55\x88\x9d\x8e\x36\xd2\xa6\x2f\x8e\x54\xf4\x29\xc1\x86\xe4\xad\x6a\x32\x87\x40\x0a\x47\xaa\xcb\xce\xd5\xcb\x96\x56\x12\x8c\x22\x0d\xe6\x73\x88\x41\xd5\x36\x23\x90\x2a\x65\x3e\x7d\xa4\xaa\x92\xd2\xe1\x58\x85\x23\x8f\x2f\x45\x3e\x69\xf5\x2b\x75\xc1\xfa\x1d\xe2\x82\x6a\x59\x92\x59\x42\x11\x8e\xaf\x71\x8e\x59\xca\xf1\x0f\xe2\xc5\x5a\x1d\xa4\x3c\x78\x02\xad\x79\xe4\x43\x1a\x46\xbd\x1c\x96\x77\xaa\x6e\x24\x99\xd5\x78\x8a\x42\x94\x04\xd5\xae\x37\x78\x40\x84\x38\x8a\xac\x34\xc6\x13\x08\x5e\x2b\x5e\xba\xa5\x89\x42\x90\x26\xcf\x23\x1b\xa5\xd3\xcd\x59\xe8\x9c\x06\xbb\x4b\x8d\x59\x8f\x27\xd6\xc5\x22\x61\x7b\x41\xc1\x81\xe2\xc8\x42\xc9\x8b\xb7\x79\xa9\xde\xca\xe1\xd2\x69\xef\xd5\xdb\x30\x18\xe2\x61\x10\x05\xa8\x30\xf5\x30\x26\x2c\xa2\x99\x72\x29\x24\x0c\xe1\xf8\x8e\xb5\xd0\x7f\xc9\x3c\xdc\xba\x72\x43\xb0\xca\xa8\xad\x2a\xa0\xc4\x60\x70\x65\x61\xf2\xfb\x1f\x42\x8c\x3e\x84\x1c\x5d\xdb\x7d\xeb\x83\xf2\x37\x83\xd0\x63\x16\xa2\xfa\x50\xbe\x30\xfe\xde\xc9\x47\x69\x52\x60\x53\xdc\xc9\x17\x36\xc5\x29\x54\xb5\x58\xfa\xd4\xf0\x4d\x64\x7d\x3c\x18\xf8\x02\x57\xd4\xc0\xf3\xd4\xf3\x51\x88\xd1\x0e\x54\x50\xba\x9e\x58\x65\x73\xf2\x16\x09\xf6\x2f\x97\x28\xa5\xc9\xb1\x38\x94\x34\x66\x69\xcb\x9a\x99\xcc\xc3\x63\x39\xc4\xe6\xd4\x1f\x73\xed\xfd\x01\xbe\xe7\xa0\xa1\xd7\xfa\x2a\xff\xb9\xa6\xd7\xff\xd8\x60\x29\xbc\x91\xf0\x5b\x60\x3c\x8b\xb5\xac\xef\xbb\x10\xf8\x5d\xcd\xa1\x4a\x76\x5b\x23\x99\x18\x48\x39\xd5\x7f\xb7\x73\x00\xe1\xb6\x02\xa3\x8f\x43\xee\x77\xed\x71\xe2\xe6\xda\x73\x98\x77\x9f\xc3\xdc\x73\x0e\x7b\xa3\xe6\x5a\xc0\x96\x20\x50\x00\x13\x5a\x77\x09\x38\x13\xf9\xf7\x0a\xcb\x3d\x40\x41\x84\xde\x87\x7c\x9c\x4f\xa2\xd5\x4a\xbc\xc1\xf2\x87\xb3\x6a\x6b\x77\x32\xb6\xee\xa6\xa1\xa6\x11\xce\xad\xa4\xce\xfd\x4a\xf1\xfa\xd0\x33\x10\xc6\xea\x63\x7b\x9c\x9c\x95\xf0\x2f\x75\x35\xd0\x73\xaf\x6e\x74\x88\xb4\x5a\x46\xd9\xf5\xff\x52\x17\x08\x92\x3c\x88\x35\xed\xb9\xa0\x27\xcf\x60\x80\xc7\xdf\x4c\x14\xc5\x5f\x08\xbf\x39\x49\xf3\x59\xca\x29\xbb\x3f\xc7\x9c\x63\x96\xe0\x98\xe3\x94\xcd\xe8\x5d\xde\xfe\x52\x60\x5e\x2e\xdb\xaf\x9d\xf0\x0c\x09\x8e\xc1\x95\x3f\xc1\xf1\x8f\xfb\xe7\x97\x6f\xf7\x2f\x8e\x7e\x3e\xbc\x7c\x77\x76\xfa\xf7\x5f\xeb\xaf\xce\x7f\x3d\x79\x75\x7a\x9c\xe0\xf8\xec\xf4\xf4\x42\x88\x43\x37\x78\xfa\xe1\xc7\xb4\x38\x2f\x97\x40\xf3\x87\xf7\x47\x07\x97\x3f\x1d\x8a\x5c\xf2\x86\x52\x1f\x2c\xce\xa5\x8d\xfc\x76\x20\x0e\x4d\x98\x97\x35\xe6\x79\xc7\x9e\x94\xd4\xb0\xcc\xc3\x21\x51\x21\xa1\x5c\x81\xbd\x80\x5f\xe2\xa9\x4c\x58\x28\x8e\x2d\xb9\xc7\x0a\xce\x22\xce\xe9\x5d\x08\x01\xc1\x4c\x8d\x4a\x69\x6b\x84\xa6\xc9\x78\x62\x0b\x99\xdb\xd3\x07\x68\x88\xcd\x31\x2c\x87\x10\x23\x7d\x9e\x51\xca\x42\x78\x64\x69\x3e\xa3\x8b\x30\xfa\xa3\x43\x3c\x1a\x8a\xf4\x66\xbe\x4c\x75\x34\x68\xc4\x2b\xa5\xe2\xee\x35\x5a\x3a\xeb\x49\xdb\x1d\x23\x7e\xd9\x3b\x05\x7f\x57\xed\x3d\x96\xa0\x6d\x63\x28\xb8\x0a\x55\x23\x57\x1f\x8f\x7d\x18\x85\x2c\x7a\x00\x6b\x88\x47\x4a\x09\x15\x1e\x3c\xe2\x55\x6f\xdd\xb8\xde\xf4\xa4\xc6\xfe\xd9\x6f\x71\x28\xe1\xd1\x56\x62\x09\xfd\x06\x92\xce\x0a\xf6\x3e\xf9\x1c\x3d\x43\x0b\xcf\x45\x89\x59\x84\xe8\x36\x59\xc8\xd5\xe7\x89\xda\x07\x52\x52\x14\x19\xbe\x22\x70\xde\x07\xd1\xf7\xdb\xbb\xbe\x38\x35\xcb\x98\xe3\x82\x87\x0b\xcd\xf1\xbb\x51\x88\x0c\xfa\xc2\x8e\x68\x5e\x7d\x46\xdf\x2a\x15\xbd\x3b\xef\xae\x1b\x31\xa0\xdc\x3a\x0a\x99\xd8\xcc\xad\x2b\x3b\x28\xf7\x6a\x3f\x6e\x5d\x5f\x49\x66\xe4\x36\xc4\x11\xba\xb7\x7c\x01\xe2\x95\x5a\x62\xd7\xea\xf5\x35\xda\xda\x95\xbc\xca\x65\xcd\x02\xce\x14\x76\x27\xb7\xf5\x4b\xbb\xa1\x9b\x4f\x87\x4e\x47\x5c\xea\x83\x41\x90\x3a\xf7\x93\x3a\x95\xa4\xf8\x60\x70\xee\xa1\xe6\x06\x8e\x39\x77\xa9\xed\x03\x35\x6e\x6c\xf5\x2c\x41\x79\xea\xd7\x85\x61\x07\xe1\x55\xce\x95\x9e\xf3\x9c\x70\xed\xd3\xea\x97\x95\x6b\xe8\xb2\x2a\x0b\xb3\x1e\xb4\xfb\xb0\xb5\xb2\x08\xdd\x85\x0c\x1d\x82\x85\xc4\x69\xc8\xd0\x47\x69\x2b\x51\x49\xfc\xd1\x4e\xd1\x00\x9d\xad\x9d\x9b\x17\x49\xed\xd0\x42\xaf\xdd\x7b\x2f\xf4\xcf\xe4\xff\x9d\x9f\xbe\x8d\xe5\x71\x49\xe6\xf7\xe8\x24\x79\xf6\x3f\xe3\xdf\xee\xbe\x99\x0c\xbf\x79\x66\x7b\xe4\xa8\x1e\x6b\x6a\x6b\xb7\x57\xdc\x11\x3e\xbd\x09\xad\x73\xf1\x34\x2d\xb0\x73\x5a\x8e\xda\xe7\x27\xa4\x50\xfc\xfe\x68\x9d\x34\x7c\x01\x37\xd6\x24\xd9\xda\xe9\x5d\x31\x9c\x7e\x90\x0e\xb4\xe6\xb4\x4f\x92\x77\xab\x95\x95\x98\xed\xe9\x08\x89\x6d\x4c\x1e\xe7\x8c\x84\xa2\xcd\xc9\x3a\x6a\x25\x49\x92\xe4\x6c\x4f\x86\x35\xde\x0b\xc6\xba\x3b\x47\xc1\x50\xbe\x1b\x06\x42\x52\x1b\x3b\xb2\x63\x9b\xba\xe2\x38\x34\xed\x7f\x8a\xd5\x23\x3f\x48\xb6\x76\x04\x3f\xb4\xa8\x2b\x7f\x29\xc6\x6f\xa4\x24\xeb\x76\xbd\x42\xb8\x16\xb4\x8e\xd9\x51\xde\x9c\xb4\x36\xe0\xbe\xba\xe9\xd7\x9e\x7e\xaf\x09\x9b\x96\x59\xca\x26\x81\xf1\x30\x56\x27\x38\x22\x7b\x1e\xfe\x8f\x7f\xff\x9d\xc9\xab\xa4\xe0\x9e\xb5\x24\x0d\xc6\x01\xf2\x01\xb9\x8b\x92\x87\x09\x38\x45\xef\x05\xfd\x60\x14\xa0\x7e\x80\xc8\xf7\xc9\xee\xce\x4e\xf4\x90\x0f\x93\x20\x8e\xe3\x7e\x30\x0c\x2d\x0e\xf1\xce\x4e\x34\x0c\xfa\x0b\xca\x70\x9f\x70\xbc\x28\x02\x35\xc6\xf9\x30\x39\x0a\x01\x11\x1e\x9c\xe8\x74\x9d\x87\x49\xd0\x9f\x04\x95\x98\x7f\xc3\x5d\x94\x47\xa3\x47\xaa\xae\xa5\x6e\xb7\xee\x0f\xa2\xee\xaf\x45\xcb\x69\xb2\xf3\x82\xbe\x24\xba\x09\xb4\xde\x04\x6a\x9b\x40\xdb\x4d\x20\xbe\x26\x88\x45\xa4\x5b\x20\x8f\x7c\x32\xa6\x93\x5e\x3e\x4c\x0e\xc2\x34\x1a\x06\xa3\x7e\x30\x14\xcd\x4a\x3d\xcd\xaa\x9c\x66\xd9\xfd\xea\xc0\xd9\xaf\x4e\xe4\x31\x00\x4c\xb4\x98\x50\x36\xd5\x5b\xd7\x18\x18\xf7\x66\x54\xb9\xbc\x3f\x76\x34\x32\xc4\xeb\x1a\x73\x13\xb9\x3c\xef\xb1\x0e\x9b\x01\x16\x55\x77\x37\x24\xc3\xda\x6b\xc5\xca\x99\xe0\xb3\x6a\xea\x74\x5c\x83\xf0\x50\xc1\x08\xfc\x61\xa1\xc7\x7c\x02\xdd\xf5\xa6\xbe\x39\xc1\x2e\xfa\x7b\xcb\x64\xfa\x55\xf7\xe6\x67\xb7\xa8\xf7\x0d\x05\x43\x92\x60\x28\xe2\x47\x9f\x55\xa1\x54\x02\x0c\x06\x56\xe6\xac\x7d\x00\xd0\xcb\x36\x1b\xf9\x23\xd4\xe6\x67\x1f\x41\xe0\x9a\x7b\x1e\x76\xf4\x67\xc8\xf3\xaf\xe6\xb2\x15\x2f\x7f\xe9\xb0\x92\x75\x3d\x4c\x33\xb2\x20\x3c\xc1\x2a\x4c\x4b\x99\x4f\x13\xe9\x22\x16\x17\x9c\x32\x9c\x30\xf5\x83\xfc\x8e\xb5\xaf\xd2\x82\xc0\x3d\xa8\xfa\x75\x43\xb8\x79\x56\x59\x56\x2b\xc5\x87\x56\x2a\x50\x41\xfb\x1e\x19\xa6\x80\x8f\xb1\xb7\x74\xd4\x76\xa3\x7c\x87\x45\x31\xc3\xa1\x53\x8c\xd6\x09\x28\xbf\x21\x59\x29\x93\x42\x1e\xd2\xba\x49\xa1\x0c\x0a\x0c\x58\x40\xfe\x68\x26\xb6\x2b\xbe\x37\xed\xd5\x1e\x62\xe2\xb9\x5e\xb4\xcb\x96\x20\x1e\x2f\x4b\x76\xdd\x76\xf6\x92\x49\x15\x1e\x7c\xbb\x17\xdd\x7e\xd3\x3d\x5a\x49\x63\x18\x2d\x7b\xfc\x02\x83\xf8\x03\xfa\x15\xfd\x84\xbe\x49\xe6\x61\xe0\x08\x28\x81\x48\xe6\x0a\x2c\xdf\xa0\x0e\xb9\xe6\x07\xd4\x2d\x0a\xfd\xda\x2d\x3f\xfd\xd4\xa9\x10\xbc\x25\xf8\x6e\x9d\x42\xb0\x95\xd4\x51\x89\xff\xf3\x5f\x25\x66\xf7\x9b\xa5\xed\xbe\xa5\x6d\x25\x05\xa3\xf2\xcb\x19\x29\x96\x29\x9f\xde\x74\xdc\xfa\xda\x5c\x53\xba\x58\xd2\x5c\x64\x91\x3a\x8d\x47\x92\x6b\x94\x19\xfc\x91\x5b\x70\x99\xb5\x39\xe4\x13\xe8\xff\xc5\xe3\x66\xf4\x41\x81\x7e\x09\x26\x2c\x1b\x16\xa3\x33\xde\x90\x6c\x06\x05\x3d\x31\xa3\x78\x71\x59\xf0\x94\xe3\x4f\xc9\xf7\x94\x1c\x4d\x68\x9e\x47\x87\x27\xe5\xcf\x52\xce\xd9\x86\xe3\xaf\xc8\x2f\xd2\x3c\xbd\xc6\x1e\xc4\xbb\x7a\x54\x5d\x34\x45\x73\x34\x43\x37\x9f\x7b\x09\xd3\x99\xe1\x9f\xff\x2d\x67\xf9\x83\x1b\x3e\x6e\xc7\x6f\x34\xd8\xe7\xb1\x4c\x5e\x3d\x4e\xf1\x80\x14\x82\xd6\xec\x89\x94\x75\xb6\xb5\x25\xa4\xb3\xd9\x6b\x31\x8f\x7e\x86\xf9\xba\x11\x7d\xb0\xfb\x31\x99\xd6\x52\x27\xc5\x39\x59\x2c\x33\xfc\x3a\x23\xd3\x0f\x1b\x93\xaf\xe5\x5a\x4b\xff\x1a\x73\x51\x87\x57\xb4\xcc\x67\xc5\xc6\xf4\x6b\xb9\x36\xa1\xff\x3a\x23\xe0\xd0\x39\xe5\x4f\x2e\xc4\xc9\xba\x71\x4b\x48\x7e\x6d\xb3\x7d\x52\xab\x6a\x14\x1e\x2b\xf7\x8c\x52\xc8\xf9\xa4\xb6\x99\x4c\x8f\x51\x37\x13\xe5\x49\xe4\x6d\xae\x4d\x7a\xed\x68\xd3\xa5\x61\x7a\xe9\x68\xfd\xaa\xb8\xc6\xfc\x30\x03\x7c\xd2\x27\xad\x8b\x7a\xb6\x4d\x6a\xae\x92\x3f\xb5\xfa\x2a\xdb\xda\x12\x8a\x4f\x6b\x43\xb1\x79\x1b\x8a\x4f\x6b\x43\xb1\x79\x1b\x80\x8d\xfa\x94\x56\x34\x33\x3e\x5e\xca\xa7\xb4\xa4\x99\x71\x7d\x29\xda\x04\xfb\x9c\xdf\x67\xf8\x00\x2f\x19\x9e\x02\x64\xe0\x09\x2e\x8a\xf4\x1a\x6f\x5e\xea\x23\x84\xd6\xd6\x02\xbc\xed\x0e\x1c\x8e\x69\xa3\x42\x8d\xed\xc4\x5a\xda\xaf\x35\x7f\x75\xac\xd8\xab\x8d\x68\x93\x8d\x68\x5f\xe0\x8f\xfc\x5c\xb3\x11\x1b\xd1\xa5\x1b\xd6\x99\xe1\x27\xcc\xac\x74\x33\xa2\x82\xa5\x03\x73\xc8\xa7\x55\xb9\xd8\x8c\xba\xd9\x1b\x9f\x46\xbd\xdc\x88\xba\x20\x7c\x2e\x78\xc3\xa7\x11\xcf\x36\x26\xae\x1c\x1c\x36\xa2\x3a\xdd\x88\xaa\x04\x07\x7c\x5a\x7d\xe7\x1b\x51\x3e\x79\x7f\xb1\xff\xea\xf8\xf0\xf2\xf5\xe1\xf1\xf1\x86\x84\x67\xb1\x9b\x69\x83\x7a\x9f\x28\xee\x75\x33\xf2\x37\x4e\xbd\x1f\x11\xd5\xda\x3c\xf5\x7a\xa9\x4d\x0a\x5e\x5f\xdc\x62\xc9\xed\x8e\x3a\x64\xbf\xc4\xe9\xd5\x1e\xea\xb5\xbe\x86\x68\x59\x6e\xc6\x6e\xf0\xec\x56\x63\xe7\x69\x96\x5d\xa5\xd3\x0f\xdb\xe2\xcb\xb6\x86\x1f\xfd\x5f\x6a\xbd\x37\x56\x01\x34\xdc\x5a\x80\x44\xa1\x8c\xda\xbb\x09\x54\xf8\x3a\x69\x76\x23\x4b\xb5\x7f\x5b\x38\x06\x45\x49\x7a\xae\xca\xc8\x51\x50\xdd\x66\x7c\x20\x1b\xc6\x3c\x30\x69\x46\xc1\xd0\xd1\x19\x39\x21\x81\x72\xc0\x41\xcb\xd2\x7b\x5a\xae\x23\xc4\xf1\x62\x99\xa5\x1c\x8f\x0c\xc5\xe2\x59\x8d\xa4\x0a\xa5\x94\x4b\x68\xe7\x27\xf6\x7c\x87\x70\xbb\xc9\xfc\xda\x18\x71\xf6\x53\x44\xe5\x99\x62\x05\xf0\x6c\x7b\x8e\x53\x5e\x32\xdc\x9a\xd0\x5a\x26\xfe\x2a\xa3\x9e\x26\x0f\x05\xce\x67\xde\xb8\x33\x5f\x3a\xbc\x2e\x28\xd0\x94\xbb\xb8\xf2\x25\x54\xbf\xc6\x18\x1c\xa9\xa8\x0e\x06\xbb\x05\x1a\x78\xf7\xfe\x2c\x97\x40\xa3\xa9\xd2\x50\x57\x12\xf7\xb2\xe9\x83\x62\x70\x5d\x8b\xc1\xa0\x70\xb1\x4d\x8b\x1a\x76\xb1\xc4\x41\x3d\x3f\x7c\x7b\x70\xb9\xff\xfa\xe2\xe8\xf4\xad\xc2\x48\xed\x50\x38\x0e\x06\x7c\x4c\x6a\x5b\xdb\x44\xba\x82\x2a\x84\x20\xc4\xab\x5e\x0a\xa5\xc9\xd3\xc1\x6f\x65\xd5\xc0\xbe\xb5\x80\xb5\x1e\xb8\x37\x31\x47\x00\x38\xb1\xe5\x66\x83\xb5\xdf\xcc\x96\xb4\xb7\xd2\x9e\xfe\x8e\xf5\x49\xde\x1e\x36\xe2\x0c\x5b\xfe\xfd\xee\x5e\x2e\x87\x8d\x26\xbb\x2f\xe8\xcb\x1c\xae\x3e\xc8\x98\xd6\x87\x8d\x4e\x7a\x3e\xfb\x93\x3d\x5e\x8f\x82\x42\x22\x09\x62\x57\x03\xfd\x0d\x1f\x14\xf2\x31\x6f\xc0\x1e\x93\x2a\xaa\xaa\x4a\x7a\xe8\x35\x80\x93\xd3\x1a\x96\xcf\xe6\x4b\xda\xab\x52\x7b\x52\xec\x85\xc7\x35\x9b\xff\x5b\x71\x19\xa6\x86\x6d\x94\xf1\x07\x72\x08\xb9\x78\x80\x8b\xe9\x01\x9e\x52\x96\x72\xca\x22\xb1\x4d\xe7\x73\x72\x5d\x2a\x2e\x64\x17\xb9\x3c\xc9\x6e\xa7\xff\x6b\x43\x66\xd7\xbe\x50\x55\x84\xd2\xe5\x12\xe7\x52\x5b\xd4\x0c\x33\x5a\xd7\x23\x75\x04\xcd\xe8\x06\xfa\xdd\x4c\x91\xfa\x1f\x1b\xaf\xa8\x6e\x3b\x31\x9e\x00\x0c\x63\x2b\x14\x9c\xcf\x05\x76\x34\x96\x46\xd7\x20\x60\x04\xc8\xfe\x78\x45\x40\xf3\x23\xa6\x18\xc9\x49\x23\xa4\x84\x31\x10\xf0\x5b\x12\x54\xc8\xd2\x1c\x31\xd4\xa2\x39\x62\x9f\x3a\x2c\x75\xfd\xf9\xa7\x2e\x26\xcd\xbd\x74\x1d\x93\x1b\x9f\x7d\x5f\xc9\x23\xf3\x61\xf7\xdb\x51\x20\xc3\x5b\xbf\xc5\x77\x19\xc9\x71\x80\x9e\xff\x65\x14\x4c\xd3\x7c\x8a\xb3\xa0\x42\x69\x73\x74\x59\x7c\x01\x27\x4c\x4d\x7a\xd1\x45\x05\x01\x12\x1b\x37\xb9\x2a\xb9\x1d\x82\x71\x90\x96\x9c\x4e\xd3\x25\xe1\xe0\x4a\x13\x20\xf9\x82\x32\x26\xcd\xc0\xc5\xaf\x39\x9d\x96\xa2\x73\x67\x46\x69\x1c\xcc\x29\x5b\x04\x28\x58\xa4\x1f\x35\x8c\x5c\xb0\x20\xb9\x79\x06\xb0\xb4\x1b\x9a\xcd\xe0\x02\x85\xe1\x74\x46\xf3\xec\x1e\x1e\xff\x55\x12\x06\x24\x0a\x9c\xc9\x40\x00\x07\x84\x61\x6d\xdb\x5e\x2c\x71\x96\x81\x9d\x50\x20\x8e\xcb\x2b\x75\x37\x14\x70\xc2\x33\xc1\x67\x3a\x84\x25\x46\xbd\xae\x93\xd8\x4a\x4c\x6d\x54\xa4\x98\xa7\x4e\x58\x79\x85\x46\xf3\x30\x58\xa6\x05\xc7\x2e\x64\xcc\x25\x56\x8a\x1f\xd1\x95\x16\x4a\xcd\xe6\x98\x96\xfc\x49\xe9\x49\xbe\xdc\x28\x47\x85\xae\xca\xab\xab\x0c\x17\x10\x37\x45\xcc\xdd\x25\xc3\xfc\x27\x7c\x2f\xd1\x94\x3c\x46\x6a\x74\x8c\xe3\x0f\xf8\xfe\x35\x9d\x49\xae\x65\x0d\xf5\x30\x42\xdc\xb5\xd4\x1d\xf3\x09\x58\x4d\xfa\x53\x8f\xea\xce\xa7\x6e\x98\xa3\x00\xa6\x98\x6c\x4e\xac\x32\x2b\xee\xa3\x42\xd3\x76\xbc\xad\x75\x75\x02\x44\x53\x77\xd6\xd7\x72\x16\x61\x80\x45\x2f\xa8\xae\xc3\x11\x2a\x42\xb5\x48\xb6\x73\xbd\x4a\xb8\x89\x8a\x0f\x4b\xa5\x45\xa0\x98\xa6\x4b\xbc\xbd\x64\xb8\x28\x9c\xc4\x30\xcd\x8f\xf2\x66\x6a\x78\xbd\x4d\xf2\x66\xca\xd3\x92\x3f\xa1\x4d\xc8\x50\xa2\x66\xdc\x05\xa9\x0f\xf8\xfe\x9d\xa8\x47\xb3\xd4\x0f\xf8\xbe\x55\xc1\x0f\xf8\xfe\xfd\xb2\x5d\x66\x7b\x56\xa8\xf2\x04\x0d\x21\xc4\xb9\x04\x0e\xe8\x5d\xab\x85\x22\xdd\x8c\xde\x39\x2d\x74\x23\x73\x14\xae\x3d\x15\x75\xa2\xca\xb0\x16\x27\x68\x3e\xe0\x08\xa5\xf5\x94\x72\x82\x00\x97\x4c\x5c\xd6\x76\x30\x68\xd9\x3f\xd3\xe8\x81\x75\xf0\x6b\xb4\xc1\xaf\x8d\x53\x94\x4f\x2a\x89\xcc\xe3\xe1\x06\xe9\x60\x40\xc3\x54\x30\xe7\x74\x30\xd8\xaa\xd5\x47\xad\xaa\x20\x1a\x0c\xf2\xb8\xe0\x74\x29\x36\xea\xf4\x3a\x95\xf3\xdb\x09\x1f\x92\x6e\x7e\x2c\xf9\x2e\x41\xff\x73\x03\x8a\x5e\x72\x96\xe6\x05\x11\xa5\x5e\x50\xcf\x3e\x22\xe7\xf3\xb4\x64\x0c\xe7\x1c\xd4\x77\x88\x79\x5e\x6a\x3b\x43\xf1\x0c\x82\x92\xf3\x3b\xc1\x08\x9c\x55\xf1\x47\x62\xfe\x2a\x0f\x75\x16\xc3\x32\x1e\x0c\xd4\x83\x61\xef\x3e\x4d\x70\xae\xdf\x23\x7f\x75\xb1\xf9\x8a\xd1\xbb\x02\xb3\xed\xc7\x22\xbf\x7c\x8e\x25\x42\xd3\xc0\xe1\x09\xa2\xb8\xc7\xd5\xdb\x2c\xe7\xb2\x61\xee\xfb\x65\xa6\x57\x96\x74\x73\x96\x2d\xae\x23\x98\xa0\x1c\xa7\x0c\x17\xfc\x74\x0e\x41\x83\xfc\xd2\xbd\xc4\x08\x4a\x99\xba\x6f\x41\x79\x52\x73\xe0\x53\xf2\x99\xb5\x0f\xe4\x8e\x1b\xa8\xf2\x28\xe4\xae\x31\xb2\xef\x7b\x0d\xab\xaf\x7a\xc1\x5f\x28\xdf\x03\xeb\x69\xc3\x7b\x42\x92\xb6\xd5\xa8\x2a\x5d\xf9\x5f\x08\xbf\xf1\x46\x02\xec\x6c\x82\xa6\x8f\xc1\x25\x6d\x4d\x09\x0c\x33\x9c\xcf\xdc\x80\x90\x8d\x70\x53\xee\x0a\x8c\x75\x6a\x8d\xee\xa0\xce\x20\x09\x23\xfb\xc5\x64\x32\x59\xb2\x2c\x09\xbb\x17\x93\x4d\xc9\xcc\xb7\x9b\x18\x35\x59\x42\xe2\x9b\xb4\x38\x38\x3d\xf1\x6c\xfc\x78\x6f\x46\xa7\xc0\x8b\xc5\x30\xf7\xcf\x81\x43\xa4\x2c\xc4\xd1\x48\xd9\x60\x99\xe2\x75\x51\x0d\x28\x41\xf9\xba\xab\xf2\x26\x93\x29\xe7\x8a\xce\xee\x6d\x8f\x1d\xcd\x24\xe7\x78\x47\xb2\xec\x08\x78\x0a\xd5\xc4\x51\x89\x66\x64\xd6\x7c\x05\x51\x4d\x32\x9c\xb2\x33\x39\x58\xa5\x2f\x82\xfa\x86\x5c\x67\x7d\x44\x75\x04\x75\x35\xa0\x0e\x40\x61\xad\x42\xad\x77\x76\x12\x59\xae\xad\x44\x3c\x05\x1f\x89\xcf\xe2\x8a\x4d\x0f\xad\x56\x41\xa0\x41\xba\x15\xe1\xd5\x2a\xac\xa7\x51\x47\x7f\x0d\x16\x25\xaa\x90\x84\xcf\x05\x16\x65\x5d\x28\xb5\x5a\x4f\x38\x79\x0c\x6e\x71\x54\x55\xbd\x22\xfe\x7f\xff\xfd\xfe\xf0\xec\xd7\xcb\xa3\xb7\x17\x87\x3f\x9c\xed\x4b\x5e\x22\xcc\xe2\x6f\xbc\xc1\x27\x54\xd5\x8c\x6b\xdd\x1e\xc0\x44\x4a\xa3\x16\x0d\xb2\x6f\x12\x8d\x6a\x1f\x6b\x9f\x54\x44\xa8\x69\x53\x3b\x54\x53\xb5\x4f\x37\x38\xb7\xfc\xe6\x46\xce\xc9\x55\xdb\xda\xbb\x36\x73\x1e\x46\x0f\x9f\xb3\x83\x73\x08\x2b\xab\x43\xb9\x49\x66\xab\x48\x1e\xaa\xcd\x1b\xd0\xb6\x97\x5b\x7f\xf8\x3e\x8e\xf3\xfc\x58\x88\xc0\x8d\x44\xf9\x66\x95\xbf\xbc\x4d\x61\x73\xe4\x36\xa7\x7f\xa9\xfa\xcc\xde\xb2\x7f\x12\xef\xf0\x44\x7e\x40\x9b\xab\x7d\x15\xee\x72\x96\x3c\x2c\x68\x59\x60\x60\xe5\x46\x01\x3c\xd3\x5b\xd1\x2d\xf0\x98\xe1\xf4\x16\xeb\xd7\x25\x0f\x2a\x74\x93\xd0\xe6\x6d\x0e\x96\x02\xad\xd4\xe2\x69\xd8\x30\x4e\xcb\xe9\x4d\xc1\x53\xc6\x47\x01\x3c\x9f\x8b\xe7\x00\xc1\xf3\x82\x0a\xaa\xf0\x78\x42\x6f\xb1\x7a\x2b\xf6\x7f\xf9\xf2\x30\x9f\xa9\x77\x4a\x0e\x94\xaf\x5f\x4b\xfd\x89\x90\x86\x84\xd4\x33\x0a\x94\x58\x04\x6f\xca\x25\xfc\x7e\xbf\x84\x5f\x20\x81\xc1\x8b\x77\x52\x16\x83\x26\xc8\x5c\xf0\x28\xf3\xc1\xa3\xc8\x09\x0f\x22\xaf\x0a\xb2\xb6\xc0\x79\x39\x0a\xd4\x8f\x13\x9c\x97\x01\x9a\x66\x64\xfa\x61\x14\x4c\xa5\xf9\xda\xec\x2a\x53\x2f\x66\xb4\xbc\x32\x56\x6d\x20\x29\x92\x7c\x14\x28\x99\x54\xbd\xa1\x25\x57\xaf\x4e\x85\x10\x59\x94\x57\x0b\xc2\x47\x81\xfc\x1b\x20\xd0\x29\x8c\xb4\x6a\x41\x89\xdd\xc1\x54\x87\xd5\x62\xe9\xb5\xea\x49\xf1\xa8\x3a\x52\x3c\xca\x17\xf2\x59\x8d\xa0\x78\x3c\x94\x72\xb6\x78\x54\x03\x28\x1e\x8f\xc5\xa3\x7c\x2b\x46\x58\xbe\x3c\xbd\x95\x29\xe9\x52\xfc\xa6\x4b\x4d\x6b\xa6\x29\xcd\x82\x0a\xcd\xe3\x93\xd3\xf7\xe7\x87\x97\x87\x6f\x2f\x0e\xcf\x2e\x8f\x0f\xf7\x7f\x3e\xbc\x3c\x39\xfd\xf9\xf0\xf2\xf0\xe7\xc3\xb7\x17\xe7\x7b\xed\x29\xa4\x6a\xd0\x9a\x43\xaa\x0e\xf0\x2c\x27\x01\x3c\xc2\x24\xa8\x46\x0f\x55\x84\x18\xa5\xe6\xa0\x0e\xc4\x21\x1f\xac\x3b\xf8\x4c\x80\x03\x98\x83\x3f\x4a\x94\xf7\xa2\xe1\x33\x0f\x17\xaa\x80\xb8\x53\x2e\x1b\xc7\x97\x1b\x38\x08\xe2\xb4\x4a\x31\x3c\xa9\xcf\xe5\x4a\x22\xee\x38\x17\x29\x72\xca\x43\xfc\xa6\x9e\xf4\x41\x90\x51\x58\x88\xab\x5a\x71\x9a\x12\x20\xae\x10\xd5\xa4\x78\x5d\x23\xe6\xa6\x93\xb7\x51\x73\xcf\x19\xb9\x5a\x15\x0d\x5b\xce\x28\xa4\xc6\xf7\xdd\x60\xab\xa6\x7b\xe9\xa8\x83\x19\x4b\xa3\x48\x22\xf5\x1d\x93\x02\x22\x9c\x87\x0a\x68\x46\x70\x0f\x44\x6d\x68\xd6\xfd\x5e\xa2\xea\x16\xe6\x38\x15\xd9\xd3\xd9\x0c\xec\x59\xbc\x39\xd1\x16\x8d\x49\x11\x06\xb1\xe7\x5b\x64\xe3\x18\x0b\xc1\x01\x40\x40\xc2\xe0\x7d\x2e\x1a\xd2\xe7\xb4\x9f\xce\x66\xfd\x3f\xb4\xf2\xfd\xa1\x0f\xf5\x15\x09\x44\x27\xf5\xd5\x61\xde\x0f\x83\x21\xc4\x1b\x94\x0d\x5b\xad\xe8\x78\x67\xa2\x79\x9a\x68\x18\x44\x71\xff\x24\xfd\x80\xfb\x45\xc9\x70\xff\x9e\x96\xfd\x02\xf3\xbe\xd3\xcb\x82\x1e\xbf\xc1\x7d\x31\xbd\xfa\x94\xf5\xd3\xdc\x50\x16\xec\xbd\xfa\x12\x07\x91\xf1\xef\x29\xc5\x87\x3c\x02\xff\x27\xc7\xe7\x25\x2c\x35\x76\x29\x4c\x2e\x35\xff\x42\x8a\x4a\x94\x8f\xcb\x89\x9e\x74\xea\xbd\xcf\xab\xc8\x78\xbb\x3c\x61\xd8\xd5\xac\xf5\xcd\x64\xe0\x7f\xea\x96\x87\x11\x38\x63\x25\x5b\x3b\xc6\x9f\x06\xc0\x53\xf2\x1a\x83\xc6\xc0\x93\x81\x54\x88\x78\xc9\x82\xa7\xc5\xbe\x96\x06\xc3\x60\x96\xf2\x74\x5b\x8d\x96\xbe\x6d\x24\x89\xb1\x29\x6a\x73\x26\xe3\x1c\x34\x9a\xc0\x80\x1a\x85\x14\x8e\x8d\x80\x59\xa0\x34\xa1\xea\x52\xb1\x47\xc0\x19\x59\xf5\xbc\xc2\xe4\x04\x10\xce\x07\x29\xb0\xd2\x98\x70\xbc\x08\x8b\xa8\xb7\x93\x24\x49\x06\xce\x73\xd6\xf3\xb5\x55\xb7\xed\x40\xa2\xd3\x10\x8d\x8c\xb9\xae\x9e\x99\x54\x7e\x4e\xa2\xa8\xaa\xc8\x3c\x24\x56\x26\x9c\x26\x5b\x3b\x68\x9e\xec\xbc\x98\x5b\xd7\xae\xb9\x85\xee\x24\xe3\xf9\xa4\x37\x1b\x0c\x66\x12\xdd\x1e\x5c\x9b\x65\xa8\xfa\x69\x32\x53\x7d\xcd\x00\x0d\x62\x6a\x1c\xb4\xa6\xf2\xc6\xf8\x91\xed\x75\x30\x30\x17\xb3\xb3\x31\xd7\x18\xd9\xf0\x8c\x6e\x12\x8e\x9a\x68\x14\x52\x69\x64\xf6\x00\xb9\x09\xca\x61\x0e\x4e\x60\x73\xbe\x95\x3b\x8d\xb5\xb1\xce\x09\xb7\x5f\x42\x8c\xb6\x76\xc5\x3f\x1e\x0b\x4e\x06\x01\xca\x4f\x4a\x32\xc4\xe3\x62\xca\x30\xce\xff\x6e\x9e\x7e\x45\x3c\x9e\x82\x6d\xf1\xdf\xcd\x13\xbc\xe3\x2c\xfb\x09\xdf\x23\x1e\xa7\x19\x97\x0f\xc5\x0d\x99\xab\x47\xc1\x0d\xca\xa7\xab\x92\x73\x9a\x03\x2b\x9b\x09\x7e\x48\x5e\x82\x74\x59\x49\x31\x73\x0f\xaf\xf9\x1a\xae\xc3\xb9\xd6\xac\xa5\x20\x8a\x37\x5a\x24\x9e\x93\x61\x4c\xeb\x11\x0b\xad\xc0\x8f\x35\x29\x96\xe0\x7a\x75\x5e\xf0\xc1\x00\x02\x4c\xc5\x39\x9d\x61\xb1\x7b\xa9\xd8\x4a\x62\x7c\x57\x2b\x26\x81\xdd\xb6\xc2\x1d\x34\x8d\x15\x1a\x61\x11\x85\x62\x81\x47\x2f\x22\xef\x82\xe4\xd1\x5e\x1e\x72\xb4\x0c\x6f\x10\x8e\xa2\x11\x17\xbb\xca\xfa\xd5\x35\x18\x10\x9b\x01\x59\xad\xc3\x5b\x3a\xc3\x55\x0f\x8b\x7d\x19\xc6\x4e\x43\x81\x84\x14\x2d\xa4\x72\x15\xa6\xc3\xad\xb7\x2f\xf8\xc4\x03\x37\xa3\xfb\xa1\x37\xa3\x62\x7f\xea\xa8\xbf\xc4\x3c\x11\xbd\x92\x03\x0a\xb6\x8c\xa5\x09\xe4\x0f\x54\x90\x7a\xc0\xc6\x69\xaa\x67\xad\xab\xed\x96\x74\xab\x95\xfc\xdd\x2b\xd0\xe9\x4a\xd7\xda\x4a\x9f\x3f\x5e\x90\x0a\xb7\xa7\x06\x83\x8d\x7a\x0e\xaa\x49\x64\x35\xa5\xf3\x6e\xa3\xff\xa4\xdf\x61\x6b\x94\x23\x6f\xc7\x72\x74\x1b\x55\xb2\x8e\x38\xa6\x79\xc8\x87\xea\xbc\x0b\x90\x3e\xf8\xa4\xbb\x4f\xd8\xee\x5b\x7f\x67\x82\x56\x35\x77\x36\x68\x0e\x91\x91\x79\x63\x83\x0e\x77\x90\xb1\xab\x04\x80\xfb\x08\xc9\x8b\xd7\x66\x2d\xc6\xad\x5e\x98\x78\x6b\x83\x63\x25\xaf\xcb\x69\xee\x6e\xc6\xb9\xd8\x81\x01\x23\xb5\x56\xa4\xd9\x94\xa5\x93\x2e\xaf\x39\xe9\x2a\x53\x1c\xb9\x37\x13\xe0\x63\x00\xec\x48\x22\xa7\xc6\x59\x5a\xf0\xa3\x35\x7b\x34\xda\x89\xb4\x91\xce\xba\xfd\x99\xaa\xfd\xb9\x07\x31\x62\x1a\x5b\x2d\xc4\x81\xb3\x01\x5b\x52\xb1\xef\xa7\x66\xef\xc5\x11\xca\x25\x1c\x45\x0a\x11\x9f\xa2\xa8\xf2\xa9\x7d\x00\x2b\x50\xda\xce\xac\xe7\xd2\xb0\x33\x57\xf6\x78\x17\xd3\xa5\xd7\xca\x86\x67\x7b\x1d\xfb\xaa\xbd\x68\x23\xac\x90\x63\xeb\xb3\x92\xf9\xd8\xe0\x31\x9b\x48\x6e\xae\xc6\xc6\xf1\x28\xa6\xf3\x79\x68\xe7\xcb\x1f\xff\xe8\xa0\xea\x3a\x0c\xa2\x2c\xc7\xcf\xe9\x3d\x6e\x42\x50\x21\xed\x3d\xdb\xd6\xe9\x05\x61\xc3\xf2\x3c\x0a\xea\xf7\x07\x37\x9b\xab\x31\xb4\xe4\xff\x79\x81\xde\xd7\x5e\x0b\x6c\x28\xaf\x37\xe4\x73\x89\x92\xf9\x09\x52\x7a\x7d\x46\x24\xfa\x85\x92\xda\x4d\x82\x84\x28\x6b\x83\xad\xdc\x3b\xb5\xb6\xe4\x6e\x76\xf8\xf6\xe7\xf8\xb2\xfd\xbd\xd7\x2a\x87\x22\x1f\x9d\xc1\x80\x19\xb5\x6f\x68\x8b\x4e\x6c\x34\x72\xb2\x80\x6e\x57\x9f\xd0\x16\x1d\x0c\xc8\x1e\x91\x4b\x53\x6c\x9f\xa2\xd1\xcd\xdf\x72\x07\xb8\x60\x69\x5e\xcc\x31\x0b\xa2\xd1\x38\x30\x42\x6e\x80\x94\x50\x1b\x18\xa9\x56\x3d\x67\x52\x78\x0c\xb4\x04\x0b\x8f\x10\x3d\x4c\xc9\xac\xc1\xc4\x83\xe7\x82\xa3\x07\x5d\xfa\x9c\x7c\xfc\x91\xd2\x0f\xc5\x18\x4f\x92\x87\x25\xa3\xcb\x42\x14\xec\xd6\x64\x22\xb6\x85\x91\xdb\xd0\x46\xaf\xdb\xee\x4a\xb6\x76\xa2\x4d\xac\xae\x1f\xd5\x20\x79\x66\x6e\xb7\x26\xed\xb1\x89\xfc\x54\x55\xd3\x97\x53\x2a\xf9\x10\x9a\x9e\xa0\x8e\x54\x15\x7f\x92\x0e\x72\x5d\xbb\xbd\x78\xca\x5d\xda\x58\x37\x7a\x75\xb0\x05\x70\x1f\x52\x98\x1c\x0c\xb0\x55\x8e\xef\x39\xcf\x52\xdb\x65\x14\xe5\x9f\x06\x1d\x58\xf3\x6d\xf4\xf2\x62\x9a\x6b\x5e\xad\xb0\x66\x9b\xc5\xa3\xe4\xaa\xc5\x93\xe6\xb4\x05\xd7\x7a\x77\x43\xa6\x37\xdf\xef\x6a\xac\x2d\xc1\x94\x02\x46\xdf\x63\x3e\x42\x9e\xa1\xfb\x83\xba\xf1\xeb\x17\x22\x4b\xdf\xb2\x06\xfd\x45\x7a\xdf\x27\x39\x67\x74\x56\x4e\x71\x7f\xca\x68\x51\x6c\x17\x84\xe3\xbe\x44\x7f\x10\x79\x6e\xcb\x2c\x17\xcc\x38\xc9\x08\x27\xb8\x78\xd1\x5f\x66\x38\x15\xfc\x52\x0e\x02\x39\xbf\x49\x79\x1f\xfa\xa1\xe8\x5f\x61\x91\xe1\x8a\x96\xf9\xac\x9f\x32\xdc\x5f\x42\xbf\x65\xf7\x7d\x69\xe9\x31\x8b\xfb\x6f\x28\x53\x38\x1e\xf9\x9c\xb2\x05\xd4\x1b\xf5\x49\x3e\xcd\x4a\xa8\xe0\x0d\xbd\x13\xe2\xbc\xb2\x26\x82\x23\xb3\x7f\x97\xb2\x9c\xe4\xd7\xa8\x5f\x60\xdc\xbf\xe1\x7c\x59\x8c\x9e\x3d\x83\x89\xf1\xcf\x22\x9e\xd2\xc5\x33\x67\xfd\x15\xcf\x6e\x77\xe3\x8f\xcf\xfe\x0f\xa7\xd3\xcb\x2b\xd9\xe8\x6d\x68\xf4\xb6\x6d\x74\xdc\x3f\x97\xdd\x30\x9f\xe3\x29\xc7\xb3\x51\x3f\xf8\xc3\x10\x0f\xff\x10\xfc\x41\x21\xce\x19\x07\x48\xef\x20\x2a\xfb\xf2\xa0\xee\x83\x30\x5a\xa4\x44\x1c\xa5\x2c\xb1\x50\x76\xf5\x40\x77\xfe\xcd\x4c\xa9\xac\xc6\x78\xd2\x53\x42\x48\xee\x5c\x41\x8a\xfd\x1a\x78\x9c\x1c\xf6\x26\xa6\x2a\x28\xdd\x1c\x93\x5c\xfe\x72\xf8\x4f\xdf\xb2\x25\x0a\x57\x61\xb5\x92\xe1\xe2\x71\xc3\xd3\xd0\x97\x87\xb6\xf2\x14\x5d\xe5\x00\x62\x62\x0d\x62\xaf\xe8\x22\x2f\x92\xd2\x5a\xd2\xa6\x2f\x5f\xfd\xce\xc8\xc6\x44\x32\x69\xbb\xea\x4d\xeb\x69\x6b\x26\xab\xad\x51\x64\xc6\x24\xc6\xc4\x97\x5a\x3f\xaa\x7a\x40\x4b\x09\x13\x86\x64\xc4\x3d\xa7\x84\x02\xe1\x9a\xc5\xab\x57\x86\xd7\x70\x99\x3d\x63\xe2\xcd\x06\x83\x90\x25\x00\xc1\xd3\x03\x93\x59\x79\xe3\x2d\x57\x79\x26\x58\x4e\xa7\x8c\xd2\x8e\x9c\x74\x6f\x4e\x32\xfb\xe6\x0c\xe2\x35\x4f\xed\x0b\xc7\x39\xd9\x37\xc0\x53\xd1\x66\xd1\x4b\x36\x59\x18\x55\x8d\x12\x6a\xae\xc6\xeb\xa8\xb4\x53\x4b\x62\x0b\xe0\x07\x3b\xec\xe5\xe7\x0a\xa8\x4c\x4f\x05\x25\x6b\xb7\xc1\x38\x2d\x92\xb7\x15\xc8\x2d\x83\xab\xde\x84\xdc\xc0\x9c\x3a\xc2\xa0\x0c\x48\x25\xbb\x99\x39\xef\xa3\x17\x4d\x00\x5a\x23\xaf\x49\x50\x43\x9c\x9d\xa8\xba\xd7\xa0\xfb\x5c\x8c\x34\xda\xc2\x9c\x49\xfd\x58\x63\x85\xdd\x3d\xc4\xf7\x73\x6c\x6e\xe1\x2d\x4c\x2a\xe2\x95\x63\x19\xe2\x4c\x9a\xf1\x04\xe5\x76\xe6\xd4\xa0\xd5\x74\xcc\xcd\xc7\xf6\x95\xad\x7c\xb5\xca\x63\x37\xda\x51\xed\x37\x9e\xad\x56\x8d\x5d\xc6\x54\x25\x73\x8f\xff\x9a\xcd\x81\x9c\x82\x35\x7c\xa1\xa9\x6d\x67\x26\x23\x12\x36\xb4\x56\x67\xd2\xd6\xb1\xe7\xba\x0b\xc3\xf5\xc7\x2b\x3c\xa7\x0c\x87\x82\xa5\x63\x85\x1c\x20\x24\xdd\x95\xf3\xd9\xfe\x1c\xac\x92\x40\xe2\x54\x5f\xc0\x31\x60\x9e\x38\x38\x61\x46\x5f\xae\xf6\x86\x3d\xf5\xd7\x41\xff\x51\x73\x71\xb5\xea\xfc\x74\x6e\x14\xd0\x9e\x24\xf4\xf7\x93\x0d\x52\x15\x1b\x24\xa2\x1b\xa4\xb9\xc3\x57\x1f\x08\x6f\x24\x54\x21\x96\x7a\xee\xec\x9c\x6f\xc0\x92\xb5\xa0\x4b\x36\x73\x26\xdb\x04\x0f\x45\x5a\x9b\xfd\x1b\xfd\x1e\x1a\x81\x0d\xf4\xa5\x25\x8f\x41\x04\xc5\x33\xc4\x63\xa9\x5b\x50\x52\x33\x7a\x20\x85\xd8\xcf\x46\x5b\x3b\x48\xd9\xc6\x8d\x0c\xb8\x7c\xeb\x2a\xca\x58\xe9\x3e\x6e\x26\x22\xed\xea\x82\x25\xc3\xd2\xe8\x24\xf0\x98\x8f\xd4\x4c\xf2\x62\x93\x14\x6d\xd5\x4c\x68\x9c\xbb\x14\x75\x8f\xf2\x3a\xcd\x73\xca\x95\x8d\x15\x27\x29\xc7\xfd\xb4\x6f\xdc\xdd\xfa\x77\x84\xdf\xd0\x92\xf7\xd3\xbe\x59\x90\xfd\x77\x6d\x9e\xec\x9e\x96\xc0\x84\xc1\xda\x13\xbc\x95\x8c\x7e\x39\x0c\x80\x40\x3f\x55\xdc\x59\xdf\x84\x5c\x79\xa6\x4f\xbd\x38\x88\x2a\xc7\x84\x45\xdb\xab\x08\xae\x73\x01\x2a\x41\x9e\x92\xac\x6e\x29\x6b\xf6\x08\x89\xd5\xa7\xcc\x52\x0c\x22\x9d\xdd\xdf\x21\xa2\x83\xea\x98\x56\xa4\x07\x84\x41\x47\x2d\xc3\x98\xe1\x0a\x29\xe3\xd3\x4d\xbd\xce\x98\xdf\xeb\x2c\x4f\x76\x5f\xe4\x2f\x39\x40\xeb\xb2\x71\x5e\x77\x5f\xca\x27\xbd\x47\x87\x5c\x6d\xfe\x60\x99\x2d\x6d\xb9\x3d\xca\x4c\x12\x19\x7e\xcb\x21\xc2\xc0\xdc\xc6\xd7\x57\x1d\x71\x4b\xc7\x78\xa2\x02\x8a\xaa\x2b\x51\x69\x05\x9c\xbb\x41\x1d\x43\x35\xa9\x55\xb0\x59\x58\x32\xfa\x80\x72\xe3\x25\x6c\xbc\x37\xa8\x65\xbc\x31\xf4\x93\x9b\xeb\xd9\x92\xe1\x4b\xa6\xd6\xc0\xe6\xb9\x6e\xd2\x42\xdb\x68\x3f\x25\x1b\xc9\x2f\x67\x74\xf1\x94\x1c\x33\x1b\xe3\xef\xdf\xe9\x34\x52\xf7\x01\x7a\x30\x8b\x7f\xc4\x9d\xdd\xe7\xe0\xf4\x64\x64\xf0\x17\xc4\x3c\xd1\x57\xe5\x76\x8b\xb2\xd5\x1f\x59\x34\x85\x5a\xa8\xa8\x27\x8e\xf2\x33\x95\xd1\x3b\xda\x32\x88\xc3\xbf\xc7\x0e\xfa\xc1\xeb\x3f\x16\x3d\xd8\xed\xd0\x74\x55\x18\xfc\x4a\xcb\xfe\x34\xcd\xff\xc0\xfb\xa2\x2a\x4e\xce\x3e\x2d\x79\x41\x66\xb8\x0f\xeb\x07\xab\x2d\x51\x6c\x77\x2a\xae\x55\xd0\x65\xf0\xe6\x60\xe2\x7a\xed\x3c\xbd\xea\xe4\xca\x89\xb8\xa0\xc6\x96\x3d\xd5\x79\xaa\x6b\x7a\x6e\x18\x8a\x41\x8e\xd1\x93\x56\x80\x1c\xf0\x7f\x5f\x78\x18\x1d\x21\x48\xdb\x5b\xd8\x39\xfe\xf8\xa0\x33\xdf\xa0\x0b\x49\xa1\x3e\xea\x79\x3f\xed\x8b\x56\x2a\x9d\xc3\xcc\x44\x0b\x8d\xfc\xa3\xb9\x49\x01\x3a\xdf\x5a\xea\x55\x84\x9a\xab\x9b\x7c\xd6\x7a\xac\xed\x84\x9b\x4d\x81\x27\x2c\x72\x9d\x85\x95\x79\x46\xa9\x83\x8b\x67\xcf\x73\xa9\xb8\xfc\x77\x6e\x8e\xcd\xf9\x61\xb7\xbb\x87\xf6\xd8\xe1\xe8\xc1\x11\x3d\x8c\x8d\x35\xf6\xdd\xf7\x34\xd3\xc2\x95\x07\x5e\x63\xf2\x2a\x58\x55\xb5\x0d\x60\x15\xe0\x01\x3c\x68\x48\x3c\xcf\xd2\xeb\x6b\x3c\x3b\x32\xdd\x14\x85\x01\x74\xbb\xbc\xe2\x8a\x83\x21\x47\xd2\x56\x6e\xc4\x90\xe8\xfb\x11\xae\x50\x1b\xcb\x1b\x62\x67\xfd\x93\x92\x3c\x0a\x31\x84\x53\x00\x8e\x46\x02\xbb\x46\xd2\x58\xbb\x31\x9b\xa8\x3b\x9b\x36\xf1\x7a\xf1\x1e\x90\x4f\x72\xbd\xf8\x12\xbb\x8c\x3b\x8d\xff\xcd\x73\xa9\x66\xdb\x45\xec\x5c\x92\x26\x6c\x9d\x93\x43\x5e\x46\x4a\x8d\xd1\x47\xc2\xbb\x12\x96\xb9\x9b\xf4\x8b\x0f\x98\xcb\x3e\x7d\x12\xff\xd5\x5a\xea\x76\x34\xff\x5d\x72\x59\x73\x0c\xb8\x8d\xae\x46\x1a\x9d\x95\x47\xdd\x1c\xaa\x73\x29\xf9\xec\x3a\xa3\x57\x69\x56\x6c\x33\x5c\xd0\xec\xb6\xd9\x39\x8f\x45\x54\xfb\x54\xd7\x22\x13\x1e\xea\x69\x62\xf1\x75\x46\x16\x0b\x97\xff\x7d\xb2\x4d\xb0\xe7\xb6\x31\xfb\xfc\xe1\x41\x65\xfc\xc3\xf1\xe9\xab\xfd\xe3\xf3\xcb\xb3\xc3\xf3\xd3\xe3\x9f\x0f\xcf\x06\x83\x30\xfb\x4a\x31\x66\x11\x51\x7a\x9e\xc4\xeb\xea\x23\xbf\xd9\xe8\x82\x88\x47\x95\x52\x9b\x79\xc2\xd2\xa6\xad\xb0\xb4\x52\x28\x5a\xa6\xac\x80\x38\xab\x12\x50\x17\x66\x5e\x0b\x6e\xa7\x42\x69\x9c\x53\xb6\x00\x57\x6a\xff\x4d\xcc\x32\x23\x3c\x0c\x46\xa0\xb1\xe7\xe3\x9d\x09\xca\x13\x3e\xde\xd5\xaa\x7b\x83\x32\x13\x6c\x25\x09\xdb\x63\xc3\x60\x14\x0c\x85\x0c\x06\x7e\xcf\xe1\xb3\xf0\xb7\x78\x75\xb9\xda\x8e\xe2\x67\xd7\xf5\xeb\x37\xdb\xda\x9b\x94\xed\xf3\x70\x37\x8a\x39\x7d\xbf\x5c\x62\xf6\x3a\x2d\x70\x28\xf6\x7c\x71\x4e\xa4\xb1\x9a\xd7\xed\xca\x69\xe7\x3e\xd3\x50\xb0\x74\x48\x98\xce\x21\x23\x2b\x8b\x0f\x6e\x84\x80\x71\x3e\x31\x61\xe7\xc7\xf9\x24\x64\xd2\xae\x48\x89\x92\x2a\xeb\x29\xbf\xc1\x2c\x64\xd0\x3d\x86\x7c\x27\x64\x73\xa3\xab\x41\x30\x0d\x3b\xbe\x24\x8d\xf7\x10\x7e\x02\xa5\xce\x9b\x0d\x47\x81\xc0\x28\xa0\x34\x21\xa8\x30\xd1\x7e\xdd\x90\xc2\x32\x16\x74\x84\xca\x24\xad\x1b\xa1\x3c\x0b\x22\x94\x25\x60\xa3\x52\xee\xa5\x71\x91\x91\x29\x0e\x77\x50\x19\x81\xfa\x02\x84\xf6\xda\xa0\x0e\x06\x32\xad\xac\xcd\x34\x49\x75\x6d\x9e\x05\x51\x2f\x4d\xa6\xe3\xa9\xc1\x6e\x97\xc0\x34\xf3\x04\x22\x61\x5b\x1f\xfd\x28\x9c\x9a\x62\xb6\x77\x23\x38\xe5\xc3\x20\x0e\xa2\xa8\xa7\xea\x5e\x0b\x9d\x1b\x85\xf3\x48\x45\x4d\x09\xe0\x5a\x41\x02\xe0\x9f\x88\x47\x19\xdb\x1b\x8c\x35\xc8\xfc\x3e\x12\x32\x05\xc0\xd8\xac\x56\x5b\xcc\x6f\x6b\x7b\x94\xdf\xa6\x19\x99\xf5\x75\x60\xcb\x51\xff\x1f\x10\xf4\xea\x1f\xa8\xbf\x28\x0b\xde\xbf\x32\x12\xd1\x9c\xb2\x45\xff\x1f\x62\x6d\x8d\x44\x07\xfe\xa3\x6f\xee\x33\x1e\x4c\x66\x8c\xe0\x3b\x43\xfa\xcd\x2f\x52\xc7\x04\x5e\x81\x04\xcd\x08\x13\x59\x47\x19\x82\x3f\x29\x98\x75\x8f\x0a\xd4\x9a\x92\xa3\x40\xbd\x0a\x86\xb3\x4a\x4c\x80\x7a\x84\x29\x2f\xe8\x8d\x6f\xc2\xb7\x96\x61\x92\x24\x0c\x02\x24\xee\x99\x77\xfd\x94\xf7\x83\x21\x8b\x3d\x55\xb6\x0b\xf5\x37\xb1\x42\xc5\x90\x8e\x42\x2e\xd6\x10\xa5\x7c\x18\xc4\xc1\xb0\xd9\xdf\x60\xd5\x14\x35\xf3\x05\x11\xc4\xab\xc6\x19\xcc\x18\x28\x5f\xac\xb2\x61\xd2\xca\x0e\xd1\x42\x23\xb8\xca\x48\x21\xe6\xd5\x45\x2b\x50\xb6\xbb\x3b\x38\xb1\x1a\x50\x1a\x97\x05\x3e\xa3\x25\xc7\xec\x6d\xba\x68\x66\x09\xae\xd2\x82\x4c\x03\xb0\xae\x83\x50\x13\xf2\x4f\x12\x04\x23\xf5\x24\xff\x34\xab\x7e\x19\x44\xce\x36\x73\xa1\xfa\xcc\xbb\x0a\x37\xeb\xc0\x9e\xe1\x67\x21\x78\x9b\xa6\x18\x69\x8e\xb9\xf1\x16\x7a\x68\x86\xa7\xe9\x02\xcb\xb5\xc2\x23\xb7\x42\x5d\x97\x95\x30\x13\x1a\xfd\x11\x6a\xbc\x86\xda\x36\x86\x5d\x72\xaf\x69\xce\x19\xcd\x32\xcc\xbe\x20\x51\x48\xfe\x05\xe9\x9d\x88\x99\xe4\x19\x81\xc6\x64\x92\xe3\xe9\xf4\xb7\xda\x03\x31\xcc\x5e\x35\xc5\x14\xc9\x1f\x71\xb6\x5c\xd3\xe6\xee\xba\xc0\xab\x8d\xeb\xd2\x5c\x2e\x32\x56\xe9\x66\x55\x14\xfb\xdb\x26\x05\x6d\x40\xf1\x43\x4e\xef\xf2\x37\x94\x89\x19\xda\x61\xf7\xbb\xee\xc8\x20\xad\x42\x05\x2f\x2f\xf6\x55\x19\x91\x33\x24\xc3\xe0\x9b\x20\x42\x45\x07\x57\x81\xca\xa4\x7e\xa3\x8f\xb2\x64\xe7\x45\xf6\xb2\xd4\x86\x93\x99\x36\x9c\x9c\x26\xe5\x38\x03\x45\x71\x2a\xa3\x71\x4c\xa3\xa8\x18\x2b\xfc\xab\x34\x2f\xc4\x12\xb9\xa0\x46\xf3\xfd\xa6\xcc\xb2\x1c\x36\x3e\x34\x8d\x26\xc9\xd6\x8e\xb6\x28\x2f\x44\xab\xd7\xe5\xf0\xde\x33\xb7\x5b\x99\x27\xdc\x39\xa9\xfe\xc8\x74\x70\x40\x63\x27\x08\xfc\x8d\x5c\xb2\x69\x21\x18\x3b\xb1\x62\x73\x19\xa0\x3e\x55\x0e\x62\x91\x76\xb9\xcc\xba\x5d\x2c\x5d\x0e\x7e\xa3\x70\x02\x0d\x13\x20\x37\xbf\x10\x74\xb2\xf4\xf7\xfb\xcb\x8c\xa6\xb3\xee\x24\xae\x25\xe3\x57\xd0\x70\xad\x43\x79\x3e\x95\x95\xdf\x10\xb9\x5d\x67\x78\x0c\x77\xf9\x69\x54\x8b\x4d\xa8\xd2\xfc\x18\xfa\x70\x43\x14\x62\x99\x7c\x2d\x45\x56\x42\x1a\xb0\xbf\xdb\x98\xae\x9b\x69\x2d\x75\x18\xf2\x8d\x41\xf1\x59\xac\xd2\xaf\xa5\x69\xc4\xe4\x27\xa3\x22\xaf\x9b\xe2\x2a\xa4\xf1\xd3\xf5\x76\xdd\x3e\xb4\x4f\xc2\xb4\x70\x14\x36\xf9\x35\xc9\xb1\x53\xa5\x35\x72\x6a\xa7\x28\xfa\x55\xf4\x03\x45\x62\xf0\x9a\x8d\x93\xa9\xd3\x8b\xf2\x7a\x71\x5a\x16\x9c\x2e\x14\x98\x12\xbc\x71\x5d\x07\x3f\xc7\x63\xde\x29\x2a\xbe\xbc\x4b\xf9\xf4\xe6\x48\xf5\x91\x32\xd6\x57\x47\xa5\xd2\xf1\x04\xae\x6d\xf4\xb6\xee\x4e\x69\x08\x24\x71\x79\x1e\x9c\x8b\xd9\xd1\xd6\x6e\x15\x55\xe8\xf2\x8a\x52\x7e\x7e\x9f\x4f\x7d\x97\xa2\xb2\x9e\x22\x05\x9e\xad\x56\x21\x86\x23\xa7\x34\x0c\x03\xf8\x94\x9d\xa9\xab\xd7\x10\x42\xfa\x3b\x4d\xdf\x93\xb5\xb3\x2f\x92\xda\xe7\x51\xeb\x73\xab\xcd\xce\x47\x08\xf9\x2a\x5f\x83\x7f\x23\xb3\xfe\x8d\x31\x03\x66\x06\x05\x3a\x41\xe0\x24\xf6\xf4\x24\x2b\x73\xdd\x8d\x47\x39\xe1\x04\x24\x22\x56\xa8\x2e\x35\xc1\x93\xd3\x29\x27\xb7\xd8\xf5\xaa\x6b\xd8\x8a\x1b\x97\x4f\xd9\x3f\xc9\xd6\x8e\x86\x90\xa8\xf5\x4b\x1b\x6d\xc9\x01\x0c\x69\x74\xa1\xa4\x77\xa9\x6f\xb3\x2f\x2f\x01\x73\x49\xb6\x4f\x1a\x7a\x4e\xe9\x62\x59\x72\x3c\x8b\xba\x82\x2f\x1a\x73\x30\x95\x4b\x9a\x81\x55\x91\x90\x10\xd2\xd9\x69\x9e\xdd\x87\x11\x9a\x91\xd9\x6b\x69\xd7\xa2\xec\x05\x1b\x1a\xc4\x1a\x34\x86\x3b\x0c\x51\x85\xc0\x36\x5a\xf0\x8f\x0d\x8b\x7a\x67\x28\x62\x37\x8d\xe9\xa6\x19\x99\x9d\x43\x6b\x21\x8d\xe0\x15\x54\x47\xc9\x8a\xb6\x96\x47\x3d\xbd\x91\xe0\x5b\x64\x50\xad\x64\xfb\x29\xb4\x80\x11\xef\xcf\x8e\x3b\xa7\x77\x2d\x47\x8d\x96\xc9\x0b\x0c\xa8\x6f\x0a\xb4\xdc\x35\x92\xda\x10\x34\x91\x0d\xb4\xa5\x65\xde\xc0\x43\x75\xa7\x27\x0a\xdc\xfd\x44\xf3\x7e\x35\xf0\xd4\x46\x82\xf6\xa5\x44\x8e\x88\xe3\x48\x01\x15\x0f\x29\x6a\x8d\x25\xc2\x95\x38\x43\x6a\x9d\xd3\xe0\xc2\x65\x47\x94\x2c\xab\xd0\x2d\x29\x1a\x9a\x66\x0b\x50\xd3\x6b\xf7\x64\xcf\xf5\x68\xbe\x34\x26\x14\x97\x97\xd6\x5e\xd1\x39\x26\x74\xcf\x48\x53\x05\xbd\xa2\x69\xe2\x3b\xde\x28\x48\xe3\x45\x5c\xdc\xd0\x32\x9b\xc9\xbb\x69\x09\xc6\x21\x95\xd1\xe7\x98\x73\x70\x4a\x8e\x62\x7e\x83\x73\xef\x42\xa9\xa2\x68\xc4\x2b\xe4\xe2\xeb\x12\x67\x03\x31\xbd\x07\x8d\x92\x33\x00\x11\x67\x42\x80\xc8\x28\x1e\x22\x55\x08\xb5\xe7\x92\x09\xcb\xcc\x63\xb8\x8a\x50\x5a\x10\xf5\x0b\xd4\x39\x17\x06\x37\x6b\xff\x8a\x32\x8e\x67\x81\x74\xf8\x02\x43\x6f\x12\x5f\xca\xf6\x9f\x90\x29\xa3\x19\xb9\x8a\xe5\x56\x64\x33\x59\x7b\x8d\xc7\x52\xea\xca\xe1\xa8\x07\xb5\x58\x57\xf2\x9e\xb5\xe3\xe1\xf1\x42\x5a\x64\x8b\x5e\x8a\xea\xf0\x31\x9f\x7b\x8e\x95\xb9\xe7\x24\xab\xaa\xa8\x57\xd4\x0d\x45\xba\x36\x51\x4f\xb4\xf8\x87\x2a\x42\x3c\xe6\xf4\xd0\x4e\x28\xb1\x5d\xa8\xd3\x8a\x83\x6f\x9a\x73\x4a\xb6\xe6\x5d\x33\x73\x18\xb5\x4f\xca\x1a\x89\x02\xb3\x5b\x32\xc5\xa3\x6d\x6d\x26\x28\x48\xe8\x67\x4f\xde\x9a\x55\x0c\xa0\xcf\xc8\xf5\x51\x76\xc5\xc4\x73\x9a\x28\xc1\x94\x1f\x34\x15\xed\x0f\xa2\xdd\x5c\xe0\x65\xed\xc8\x02\x8f\xea\xe2\xe0\xf4\x44\x15\x2b\x57\x85\x10\xe1\x13\xec\xfe\x42\x8e\x75\x2a\x29\x5e\x49\xde\x6d\x4f\xd1\x53\x3f\x93\x57\x32\x82\x67\xe8\x24\x51\x70\xc8\x36\x4d\xbd\x3c\xf3\x5e\xef\xd8\xaa\xc6\xc0\x08\x79\x6a\xbb\xb5\x8b\xd4\xa6\x29\x67\x48\x12\xe4\x34\x17\x42\xaf\x53\xbd\xda\x52\x97\x7b\x8d\xf3\xc6\xa9\xa4\xfb\x5a\xd5\xb3\x96\x52\x9f\x16\xee\xcb\x8d\xeb\x09\x4c\xa2\x1a\x64\x59\x0b\xfd\x2b\xb1\x1f\x46\xf5\x0f\x3e\x4b\x4f\x43\xc3\xe4\x81\x32\x6b\xdc\x91\x8e\xf7\xd7\xc9\x3e\xd5\xfa\xc7\x61\x8d\xea\x7d\xe9\x32\x42\x4e\x7a\xd9\x54\x9d\x5a\x35\x5c\xbf\x8e\xea\x13\xa3\xc6\x0c\x85\x9e\x8e\x71\xa7\x88\xf3\x3e\x32\xde\xe5\xb8\x16\xc9\xd2\x59\x67\x49\xeb\xf8\x6c\x9d\x64\xce\x39\x26\x27\x59\x52\x9f\x64\x4d\x7e\x2d\x69\x57\x10\xd5\x66\x7d\xd2\x5c\x14\x08\xeb\x13\xc5\x18\xef\xe1\x2a\x8c\x50\x96\x14\x8e\xb6\x20\xeb\x16\xa5\x9a\xa2\xfc\x17\xba\xee\xfb\x4c\x4f\xc1\xda\xe5\x60\xcb\x84\xa2\x5b\x9c\xdb\x40\x8f\xf1\xd9\xa8\x49\x4c\x72\x86\xfe\x42\xdb\x62\xa0\x94\x0f\xbd\x94\x0c\x5f\xf1\x95\x2e\x37\x6d\x7c\x3e\xb4\x44\x0b\x74\xdb\xe5\xb7\x75\x5f\x9f\xc1\x1c\x0c\x30\xb4\x4a\xf9\x98\x88\xb9\x98\xa9\xfb\xc6\x71\xb0\x7d\x55\x4e\x3f\x60\xbe\x3d\x4d\xa7\x37\x4a\x3c\x9b\x98\x79\x7e\xef\xe1\x79\x60\x4a\x7e\x19\x89\xf6\x5a\xec\xb7\x57\xc9\x4d\x4b\xac\xf5\xc0\xdd\xe0\x06\xb3\xdb\x21\xed\xa6\x25\xa7\x42\x04\x02\x43\x65\x75\xf9\x2d\x16\x16\xfc\x76\x46\x56\x9f\xf8\xc5\x67\xc9\xc4\xdf\xe8\xed\xfa\x9b\x64\x6a\x36\xac\x3b\x23\x64\x08\x21\x87\xe4\xb8\x28\x0e\xf0\x1c\x33\x96\x66\x45\xb2\xdb\x10\xd3\xf4\x6f\x5f\xd5\xb4\x9b\x83\xe2\x5b\x54\xcb\xd4\x9e\xe1\xb4\xcd\x6c\x7a\xb5\x74\xba\x12\x4e\x42\x25\x3f\x5e\x2e\x19\x5e\xa6\x0c\xbf\xa1\xec\x07\xfb\x51\xd7\x5a\xe7\x57\x89\xef\x52\xc2\xdf\x50\x76\x70\x7a\x72\x86\xd3\xd9\x7d\x08\x08\xce\x24\x9b\xe9\x5a\xfa\x44\x19\x0f\xbb\x80\xe3\xab\xb4\xc0\x6a\x53\x73\x79\x30\xf9\x6a\x66\xa6\x80\x42\x27\x02\xd8\xe6\x1a\x6f\xe6\x01\x27\xf6\x75\x9a\x0a\xb4\x5d\xa1\x26\x6f\xd7\xad\x52\xf0\x92\x71\xfc\xa0\xfc\xfd\xd5\x9a\x2e\x4a\x06\x0c\x9d\x1f\xab\xd5\x5c\x3d\x45\x7a\x6e\x1b\x39\x5d\x74\xe2\x81\xd9\x02\x0c\x07\x0a\x5a\x10\xff\xb7\x0e\x01\xaf\x36\x1c\x61\xa4\xec\xb0\x2f\x67\xad\xfc\x97\x97\x3a\x9a\x71\x4d\x06\x12\x8c\x98\xfb\xbb\x42\x8d\x31\x77\xcb\xdd\xd2\xf3\x5e\xfe\x8d\x49\x01\x49\xa4\xc8\x53\x4c\x6f\xb0\x58\xfa\x51\xa8\xc2\x6d\x68\xb4\xe7\x60\x46\x17\x90\x2e\x50\x7c\xd0\x37\xa1\x54\x01\xdc\x4b\x28\x8d\x2b\x92\xcf\xb4\x40\x69\x93\x46\x15\xd2\x3f\x5a\x9d\x5d\x73\xbb\xb1\x4b\xea\xfc\x3e\x9f\x86\x60\xd1\x36\xc7\xec\x4c\x2f\xbf\xf6\xca\x6e\xaf\xcc\xe1\xb0\x42\xe9\xec\x56\xf4\xd3\x93\xf2\x6d\x6f\xa3\x1d\x8d\x1f\xe9\xf9\x0c\xfa\xa1\x34\xa6\xf9\x14\xab\x06\x4a\x96\x8c\xcc\x5e\xe1\x29\x5d\x40\x59\xf7\x62\x4d\x89\x3d\xcb\xe7\x42\x21\x3e\xbc\x63\x74\x41\x0a\x1c\xb5\x14\x61\xea\x43\x8f\xb3\xfb\x87\x56\x27\x4c\xc5\xec\x17\x93\xbd\xea\xca\xe7\x55\xb8\x49\x60\x06\x77\x97\xaa\xcd\x36\x78\x77\xa6\xac\x89\x92\x2c\x3e\x3b\xff\xf9\x5d\x0c\xdd\x6d\xa6\x9e\x53\x82\x8c\x70\x5d\xaf\x23\xa8\xbc\x1c\x55\x57\x84\xc2\x1d\x54\xd6\xb4\xda\x62\x02\xb9\x4c\x8c\xa3\x60\x6c\x8e\x91\x69\x28\xd7\xc6\xa9\x42\x36\xfa\xa7\x44\xcb\x45\xbc\x02\xf4\xd9\xa2\xae\x9c\x76\x9b\xe3\x5d\x27\xbd\x8d\xf6\x6f\xdd\x46\xcb\xa4\xd7\x3b\xa7\xf1\x5e\x6e\xf7\x12\x8b\x13\x0c\x19\x61\x3a\xb8\x0a\x01\xa9\x37\x28\xc1\xc6\x31\x50\x46\x99\xc1\xa3\x1b\x06\x7a\x64\xed\x99\x31\x06\xcd\x5b\x85\xea\x73\xaf\x36\xc7\xd9\xbd\xec\x9b\x9e\xc4\xb8\xa1\x31\x29\x2e\x70\x21\xd8\xa3\x28\x8c\x56\xab\x10\xee\xa7\x95\x41\xf8\xbe\xbc\xed\x86\x5b\xc1\x22\x92\xd5\x00\x0d\x85\x79\x7b\x8e\x53\x36\xbd\xb1\xb8\x6c\x5b\x3b\x51\xe3\x8c\x89\x42\xdc\x3e\xce\xf6\xd6\x0c\xcc\xc8\xb7\xe3\x45\xee\xb4\xd7\x6a\x68\x38\xab\x00\x6c\xc7\xd5\xfe\xf5\xda\xc3\xa4\x2f\x58\x5d\x2d\xb6\xd5\xa2\x36\x27\x97\x37\xbf\x33\xdb\x10\x6b\x76\xaa\x0b\x4e\xfd\xe9\xaa\x8b\xc7\x3b\x77\xb7\x59\xf7\x27\x4f\xd5\x52\x5f\x00\xd5\xce\x67\xb9\xb7\x0d\x06\xa1\xff\xb3\x3c\xeb\xa3\x35\x6c\x4c\x2d\x64\xbc\x3f\x85\xd7\xf5\xd2\x01\xb7\x96\xe8\xc1\x70\x83\xb4\x86\x8a\x8a\x28\x1f\xb5\xd5\x83\xf6\x52\x17\x14\x84\xee\x7e\x28\xba\xc1\xa7\x9c\x93\x1a\x43\xd6\x3a\x5d\x8d\xe6\x0f\x32\xf2\x6e\xb5\x5e\x1e\x43\x2d\x04\x07\x11\x45\xb1\x9c\x46\x61\x9d\x87\x61\xf4\xce\x2e\xf9\xdc\x5d\xf2\xb8\x8a\x94\x5d\xb3\x65\xeb\x2f\xb5\x41\xad\x56\xfc\xb8\x4a\x75\xa4\x19\x0d\xc3\x67\x34\xf4\x4c\x1e\x7f\x6c\xf4\x20\x99\xad\x8e\x78\x45\x6d\x73\xc0\x86\xe2\x09\xca\x1f\x49\xc3\x1a\x5d\x7e\x3d\x85\x5f\xe7\x8c\xa6\x71\x13\xe9\x06\x5c\xc1\xff\x29\xc3\xa6\x34\x1a\xe6\xd8\x1e\x20\xf7\x54\xd0\x5a\x5a\xb7\x3c\xad\x5f\x18\x89\x0d\x46\xd4\x69\xbf\xe4\xf4\xd8\x28\x1d\xbc\x49\x6f\xd2\xe2\x46\x24\xfd\x31\x2d\x6e\x1e\x4b\x4a\x0a\x4e\xd9\x3d\xa4\x96\x8f\x8f\x64\x00\xe5\x11\x9a\xc7\x6f\x69\x8e\xbd\x49\xc3\x1d\xb4\x8c\x97\x8c\xdc\xa6\x1c\x6c\x05\xee\xc5\xb8\x75\x0e\x0b\x18\xaf\xcd\xe3\x57\x20\xb1\x81\xcd\x60\x73\x48\xb4\x2e\x50\xf6\xa0\x9d\x15\xe7\xf2\x7d\xa3\x9f\x9b\xa9\x83\x4b\xf3\x54\xbf\xb0\x31\x73\xf0\x2e\x8c\x1e\xae\x57\xab\xf0\x3a\xd9\xda\x41\xb7\x5e\x64\x1c\x0b\x88\xbe\x35\x6d\xc0\xc3\x0c\x06\x45\x9c\x91\x2b\x96\x32\x82\xed\x55\xe1\x6b\xca\xf0\x31\xbc\xbd\x0f\x4d\x80\x78\xc0\x8d\xd3\xe0\x4c\x51\x2c\x71\x62\xa2\xa8\xba\xaa\xeb\x65\x61\x75\xb6\xf5\xb2\xf5\x23\x7e\x9d\x4b\xa2\xea\x58\xb1\xb6\x44\x99\x0b\x79\x6f\xb0\x6f\xa7\x99\x26\x0e\x06\x20\x58\xeb\x4a\x0f\x93\x2b\x47\x1f\x73\xb8\x5e\x1f\xe3\x68\x2d\xbe\x3c\x1e\xd3\x57\xb0\x4d\x97\x76\x0b\x5e\x9b\x18\x02\x00\x1b\x63\x3c\x49\x72\x30\x64\x1d\x4f\x90\x78\x90\x6e\xef\x3c\x42\x6c\x30\xe0\xa1\x84\x76\x70\xf9\xb9\x36\x18\x01\x01\x6b\x57\xc4\xe2\x3b\x92\xcf\xe8\xdd\x60\xe0\xf1\xe3\x7c\x6d\xa5\x7b\x0d\xa4\x26\x16\x80\xf3\x3a\xc4\xe8\x41\xc2\x30\x8e\xb8\xb4\xa9\xc4\x55\xd4\xd3\x44\x63\xbd\xf1\xc8\xb4\x34\xaa\x44\x5d\x07\x03\xa8\xf1\xda\x23\x27\xe4\x92\x55\xc2\xfa\xc8\x6b\xfa\x4f\x1f\xbe\xfd\x39\x3e\x3c\x79\x75\x78\x76\x79\x7c\xba\x7f\x70\xf9\xe3\xe9\xe9\x4f\xe7\xab\xd5\x43\x85\x48\xf2\x50\x21\x9a\x90\x9e\xcd\x4a\xab\x28\xea\xd9\xd9\x31\x4d\xc5\x96\x6a\x54\x3e\x9b\xd9\xf7\x78\x67\xc6\x57\x75\x50\x20\xc5\x61\x2e\x31\x9d\xda\xb0\x1f\x30\x0b\xb4\xd7\x9f\xc4\x7b\x04\x5c\x2d\xb6\xc7\x46\x5b\x5b\xaa\x77\xde\x42\xf8\xc6\xd3\x77\x62\x57\xd8\x3f\xbe\x7c\x73\xb8\x7f\xf1\xfe\xec\xf0\x5c\x74\xaa\xec\xb9\xb3\xd3\xf7\x17\x47\x6f\x7f\xb8\x3c\x39\x3d\x38\x3c\xbe\xdc\x3f\xfb\x21\xd1\x5f\x7e\x38\x3e\x3a\x39\x39\x3c\xbb\x3c\x3f\xbc\xb8\x7c\x7d\x7a\xf2\xee\xf4\xed\xe1\xdb\x8b\xcb\x8b\xc3\x93\x77\xc7\xfb\x17\x87\x26\xd9\xeb\xf7\xe7\x17\xa7\x27\x4e\x8a\xfd\xb3\x1f\x2e\xdf\x9d\x9d\xfe\xfd\x57\x93\xe4\xe4\xf4\xe0\xfd\xf1\xe1\xe5\xfb\xb7\x47\x6f\x8e\x5e\xc3\x06\x65\x3e\x1d\x9d\xbc\x3b\x3b\xfd\xf9\xf0\xe0\xf2\xe8\xed\xf9\xc5\xd9\xfb\x93\xc3\xb7\x17\xf5\x04\xc7\x47\xaf\xce\xf6\xcf\x8e\x0e\xcf\x2f\x8f\xce\xcf\x0e\x7f\x38\x3a\xbf\x38\x3c\x3b\x3c\x48\x70\xac\x9b\x92\xe0\xf8\xe0\xf0\xcd\xfe\xfb\xe3\x0b\xd3\xba\xfa\x3c\x79\x58\x47\x68\xb4\xb5\x8b\xd6\xd7\xc4\xa6\x68\x37\xc3\x7e\xeb\xee\x85\xd1\xd6\x0e\xda\xa4\x43\x6d\xba\xd6\x90\x88\xd9\xd0\xf3\x34\x33\xb7\x1e\x8a\xd6\x63\x25\x47\x72\xe8\x75\x2a\x87\x77\xa1\x76\x75\x6d\x85\x8f\xcc\x10\x09\x96\xb3\x95\x24\x38\x5a\xad\x70\xe5\xf4\x37\x51\x7e\x0e\x34\x24\x6b\xc7\x28\xea\x3d\x32\x86\xa9\x36\xa8\x31\x84\xba\xc6\xc0\x92\xea\x9c\x2f\x85\xba\x3d\xb3\xc4\xda\xc3\x65\xc9\x78\x66\x64\xa9\x42\xce\x58\x02\xdd\x63\x6a\x09\xad\x99\xfd\x99\xb2\x30\xb4\x04\xd7\x4f\x00\x4b\xf4\x91\x95\x37\x55\x16\xfc\x96\x70\x6b\xc6\x58\x5a\xed\xf5\xdd\x40\xd9\x30\x50\x0c\x9b\xed\x81\x1d\x56\x57\x5f\xcd\x32\xd1\xc4\xea\xdf\xd8\x88\xd0\xe4\x68\x59\xbb\xd9\xa6\x6a\xb3\xfb\x6d\x19\x41\x70\xb3\x00\x19\x5f\x16\x80\x0e\x7c\xc2\x15\xc2\x93\x10\xf0\x65\x85\x4e\xf3\xec\xde\x34\xc0\x6b\x6e\xef\x46\x2b\xe2\x22\xb3\x3f\xab\xb3\x05\xf2\x8d\xaf\x94\x1f\xeb\x28\x25\xf8\x2d\xa0\xad\xe0\x08\x83\xfd\x37\x7a\x4d\x77\x81\xba\xae\xd7\xe6\x97\x17\x6b\xbd\xae\x46\xf0\xe6\xf8\x69\xc3\xf8\xcd\xe6\xea\xba\xab\xa8\xc6\x1d\x97\x43\x5a\xc6\xad\xd6\x3f\x2f\x21\x16\xd8\xd7\x71\x37\x97\x42\x80\xa7\x97\x98\xfa\x54\x8f\x3a\x3c\x0e\x6c\xb5\x82\x89\x46\x0c\x07\x84\x10\xa7\xf3\xc1\x34\x5a\x3a\xa6\x59\x0e\x5b\xb2\x51\x5e\xf7\xf6\x4e\x18\x1a\x63\x35\x1a\xbd\xd0\x81\x19\x4d\x4a\x60\xfc\xa3\x90\xa8\xc0\x01\xc0\x69\x75\xf8\x8c\x3f\xd6\xb3\x5f\x2e\xd2\xea\x63\x41\xf2\xbf\x2e\x46\x40\x1e\x17\xf7\x8b\x2b\x9a\x45\x61\x00\x7b\x2d\x98\x61\xb5\x42\xa9\xb6\xf0\x7c\xac\xb3\x87\xd8\xd3\x24\xbe\xb5\xbc\x0d\x13\xa2\xad\x0a\xaf\x04\x6e\x3b\x32\x1a\xb2\xb5\xf6\x7b\xe8\x0e\xa8\x35\x26\x13\xb0\x4e\xeb\x0e\x88\x34\x26\x93\x44\x6e\x90\xdd\x23\x07\x37\xc6\x9b\xad\xb4\xb5\x37\xcf\x0d\xef\x6b\x49\x56\xcc\x05\xa3\x5b\xf4\x7d\xe4\x52\xe5\xe9\xfb\x74\x97\xb2\xdc\xf7\x7e\x9a\x2e\x05\x37\xbf\x2d\x6f\xf2\xb7\x39\xc3\xf8\xeb\x59\x07\x77\x5b\x93\x2b\x89\xda\x01\xb3\x54\xe3\xbd\xb1\xb9\xb6\x26\xa1\xf2\xad\x35\x05\x37\xca\xe1\x0d\xa9\x13\xab\x4e\x7e\xcc\x78\xff\xa9\x84\x6d\x96\xf5\xe6\xf6\xaa\x75\xbf\xa4\xec\x89\x3d\x43\x9f\xd4\x33\x6a\x3a\x48\x93\x9e\x0b\x31\x19\x36\x2b\x25\x75\xcc\xe5\x85\xf0\x29\xa6\xdb\xd1\xfc\x7d\x41\xf2\x6b\x71\xae\x2d\x97\x78\xf6\x46\xca\x8d\x6f\xb2\xf4\xba\x90\x11\x28\x0e\xc4\x2c\x7c\xa3\x68\x25\x60\x62\xd9\x7c\x65\xa6\xbb\x78\x97\x60\x79\x05\x03\x89\xe0\xa3\x48\x0c\x6e\xe5\xfa\xd7\x39\x4e\x33\x37\x9b\x7e\x9f\xe0\x58\x54\x29\x11\x07\xc8\x1c\x42\x55\x14\x05\x66\x0d\x2b\xf5\x1a\xf6\x4b\x09\x86\x2b\x2a\x99\x66\x74\xc5\x2b\x20\xa0\x19\x55\xf1\x02\x08\x6b\x06\x53\x5a\xbb\x88\x12\xe7\x2a\x20\x93\x7c\xa3\xeb\x33\x83\xb7\x37\x36\x1d\xd4\xf8\x06\xde\x2e\xed\x5b\xd5\x2a\x09\x2b\xb8\x80\xf7\x4e\xd3\x17\x3d\x19\x05\x40\xbc\x6e\x75\xda\x2d\x7c\xbc\x87\x8f\xad\x4e\xbe\x57\xe6\x0b\x9e\x11\x34\x88\x58\x4d\x58\xad\xed\xdd\x49\xd5\x6b\x0e\xc5\xf5\x26\xa3\x2c\x7b\xd7\xb7\x43\x76\x6d\x3d\xf5\x3d\x53\x31\xce\x70\x34\x7d\x3d\x50\xa2\x36\xc7\x08\xa7\x06\xfe\xb8\xc4\x53\xf0\x40\xd3\xa6\xb6\xc6\x5e\x51\xd5\xab\xb6\x75\x47\x28\x78\xf5\xfe\x87\x51\x1f\x1c\x9a\xfa\xa4\xe8\x2f\x48\x51\x00\xe4\xee\xda\x5c\x72\xb8\xed\x7a\x8b\x55\xaf\x84\x51\xd5\xd5\x6f\xce\x11\xf0\x09\xba\x97\xda\x09\xd5\x26\xae\xd0\xf5\xbf\x38\x57\xaf\x7a\xe3\x54\xda\x88\xbd\xcf\x39\xc9\x9c\xcd\x3e\x69\x26\x38\x9a\xad\xfb\x5a\xff\xd6\xd8\xdf\x12\x2f\xbf\xa1\x4e\xb1\xda\x1a\xef\xb5\xf3\x92\x56\x55\xdd\xb2\x78\xeb\x6b\xbd\x9e\xec\xf1\x86\xe6\x8a\xfb\xab\xed\x35\x69\x42\xbb\x11\x44\x3c\x63\xf3\xf5\x84\x2f\x92\xdf\xd2\x0f\xd8\xdb\xa9\x3f\xee\xbf\x3d\x38\x3e\x3c\x3b\xaf\x8b\x49\xd0\x8b\xe6\x13\x57\xd0\x5e\x8f\xf4\x32\xeb\x35\x42\x1e\xc9\x64\xaa\xf0\xbc\xab\xfd\x86\xbd\xf9\x7a\xcd\xd7\xc7\xbc\x4f\x0c\x53\xd0\xc6\xad\x14\x38\x7a\xe0\xd6\x7c\x53\x61\x5a\xf0\x64\x6b\xb7\xab\x1d\x92\x17\xeb\xc2\x89\xff\xdf\x5e\x9b\x4f\x59\x96\x9b\x2d\xbd\xc7\xa6\x83\x9a\x35\xbe\xf5\xd9\x5d\xb5\xf6\x5a\xab\x57\x2e\x7f\x5c\xcc\xf2\xd8\x31\xb6\x59\xf7\x2f\xdc\xd7\x4d\x38\x96\x04\xc7\xef\xf6\xcf\x2e\x8e\xf6\x8f\xcf\xad\x7a\xd8\xe8\xaf\x8e\xce\x2f\x7f\x3e\x3a\x3f\x7a\x75\x7c\x98\xe0\xf5\x51\xa5\x12\x1c\xbf\x79\xff\x16\x22\xb9\x5f\xbe\x3b\x3b\xbd\x38\xbd\xf8\xf5\xdd\xe1\xe5\xe1\xdf\x2f\x0e\xdf\x9e\x1f\x9d\xbe\x15\xdf\xf7\xdf\xbd\xbb\x7c\x7d\x71\x76\x0c\xfa\xad\xc3\x33\x91\xec\x1d\xbc\x3f\x3e\xda\x3f\xbf\x3c\x39\xbc\xf8\xf1\xf4\x20\xc1\x9e\xab\xb1\x04\xc7\xb6\x4a\x27\xfb\x6f\xf7\x7f\x38\x3c\xbb\x3c\xbf\x38\x3b\x7a\xfb\xc3\xe5\xf1\xe9\xe9\x4f\xef\xdf\x25\x38\x56\x44\x4d\x6d\x4e\x0e\xcf\x7e\x10\xb5\x3e\x3e\xfd\xe1\x07\x68\xa6\x6c\x1b\xd4\xe8\xc0\x56\x51\x24\x75\xa2\xd0\x27\x06\xe2\xd6\x7d\xb9\xb5\xd3\xeb\xce\x0f\x1f\x55\x29\xf0\x2c\x4b\x86\xc7\x7a\xa5\xe0\xd5\x63\x2d\x81\x44\x9e\x3e\x80\xf7\xb5\xae\x92\x6f\xbc\x9d\x0a\x9f\xd6\x8f\x87\xac\xea\xda\x21\x75\x9a\xed\x9d\x12\xf0\xdd\xcc\x1e\xf8\xd5\x9a\x5e\x5b\x0d\xf6\xcb\x78\x89\xb6\x24\x54\xaf\x8d\xb5\x4a\x2e\x76\x1f\xf9\xb8\x2d\x61\x61\x37\xb1\xc2\x76\x34\x2f\x4f\xd5\x45\xb8\x06\xc9\xb3\xf4\x7a\x7b\x91\x2e\x3f\x21\x2e\xed\x7a\x38\xa9\xa7\xf8\xcd\xb6\x4c\xad\x5d\x2e\xeb\x23\xc7\x79\x41\x68\xbe\x6d\xc2\xde\x3f\xc9\x8c\xfb\x51\x9f\xdc\xb6\x05\x75\x97\xfd\xf4\xed\x17\xb3\x9f\xbe\xed\xb2\x9f\xfe\x8f\xb6\xd5\x5e\xe7\xab\x7f\x08\xc3\xfc\x4e\xcd\xde\x0d\xfd\xca\x1b\xf9\x1e\x13\xfe\x3f\xa9\x8c\xa2\x5d\x46\x87\xcd\x39\x8d\x8d\x11\x95\x56\x38\xd2\x58\x5f\xf3\xbf\x63\xf4\xe3\x3d\x68\xce\xd0\xc3\x27\x1a\x85\xd7\x6c\x12\xc0\x9e\x97\x38\xe6\x8e\x67\x69\x2e\x03\xd4\x17\x25\xab\xb9\xfc\xb6\x4b\x6a\x64\xd3\xb6\xe6\x6d\xfb\x49\x6f\xf2\x64\x6b\xe7\x13\x6d\xb5\x81\x5c\xbb\x82\x61\xdd\x8a\x7b\xee\x33\xd9\xee\xb4\xc7\xa8\x99\xa0\x3a\x3e\xc5\xd2\x44\xc3\x75\x42\xae\x77\x9f\x74\xc8\x43\x4e\xdb\xd6\xbb\x30\x3b\x09\xa1\x42\xa4\xed\x5c\xfd\x18\x81\x56\x06\x20\xd4\xe8\x75\xbf\xad\x89\xb6\x1b\xad\xa5\x0d\x03\x77\x64\xdc\xa0\x73\x12\x36\xd3\xa9\xb3\x34\x16\x53\x85\xb5\xbd\xc2\x3d\x26\xf0\xed\xa2\xda\xd9\x36\x2a\xb2\x41\xa9\xa1\xbf\x35\x01\xd8\xa4\xbb\x70\xe6\xb8\x0b\x3b\x9d\x07\xe0\x75\x1e\x90\x1a\x27\x70\x29\x44\x70\xc3\x11\x97\x16\x23\xcc\xec\x5e\xbc\x0a\xf3\x48\xc5\x82\x28\x0c\xf4\x64\x9a\xec\xbc\x48\x6d\x60\xd1\x74\x38\x8c\x58\x92\x8f\xc9\x38\x9d\x4c\x10\x05\x53\x7f\x09\x39\x85\x18\x62\xf1\x15\x84\x3f\x40\x2c\x4e\xe7\x1c\xb3\xa8\x47\x63\x4e\x97\x05\x65\x3c\xe4\x75\x4b\xba\x2b\x5b\xb5\x07\x63\x5d\x36\xc2\x95\x86\xcd\xb1\x2d\xc4\x28\xd0\x36\x92\x41\xb4\x5a\x4d\xcd\xc5\x84\x9e\xf4\xdc\x31\x8e\xba\x74\x96\x95\xed\xf0\x7a\xec\x0d\xe9\xf0\x27\xb6\x10\x40\x96\x01\x7b\x94\xf6\x3b\x65\x74\x39\xc6\x13\x6d\x72\xf1\x50\xf5\x98\xf8\x50\x8f\xe1\xac\x13\x69\xa3\x57\x6b\x19\xc5\xa2\x4a\x7d\x1c\x4b\x87\x5a\x50\xba\x5f\x37\xe0\xcf\xdd\xb9\xe5\x89\x0e\xed\x5b\x3d\x5d\x09\xed\xcc\xb9\x6c\x4e\x78\xf7\x67\xe0\x25\x2a\xf3\xf8\x66\xae\x79\xdd\xaf\x13\xe9\xd8\x68\x6a\x11\x42\x52\xb3\xab\x87\x0f\x9a\x61\x19\x5d\xc1\x84\xef\xb9\xc0\x2f\x49\x26\xfe\x47\xdc\xb1\xa3\x6b\xd9\x19\x22\xec\xf1\xa4\xad\xe3\x14\x28\xc7\x3d\x05\xac\x14\x06\x53\xe7\xfe\x58\xc8\x57\x19\xe6\x34\xd7\xee\xbb\xcd\xc4\x32\xa2\x44\x3b\x9d\xad\x92\xe5\x03\xb5\xc9\xa5\x03\xd1\xea\x71\x10\x76\xec\xfc\x24\xf1\x00\xc2\x56\xe8\x2e\x09\x50\x47\xe4\xa5\xba\x25\xa6\x42\x6f\xfd\xc4\xdc\xb4\x84\x1b\x96\x4b\x4e\x97\xc7\xf8\x16\x67\x3f\x13\x7c\xa7\x99\x9b\x00\x19\x08\xba\xd1\x36\x2d\x79\x86\x79\x33\x3f\xc0\x01\xeb\x6f\x1b\x18\x82\x3a\x59\x6b\x5c\xb3\x8e\x8f\x5b\xb7\x6a\x5c\x93\xe1\x29\x25\x59\xe3\xc9\x2b\x6b\x97\x19\x48\xa3\xfc\x86\x65\x67\x57\xf7\xac\xcd\x78\xbb\x26\xa3\xdf\x5c\xd3\xef\x1d\x6e\x98\xef\x59\xac\xcc\xe1\xd7\x1b\x85\xda\x0c\xc1\x06\xc5\xe8\xf5\xb5\x3d\xa7\x6c\x1b\x44\x8b\x6b\x92\x5f\xeb\xb5\xa3\x6d\xec\xd9\x63\x33\xd5\x48\x2c\x92\xc6\x76\x3a\x4b\x97\x8e\x29\xb0\x23\x76\xac\x2b\xb0\x41\x14\xe2\xaa\x36\x28\x99\x82\x40\xb1\xbf\x2f\x3f\xba\xef\x7d\x15\x68\x2f\xc8\xee\xba\xde\xc4\xaf\x7d\x45\x34\x49\xa8\x2d\x62\x5b\x2a\xc7\x55\xde\xa5\xb5\x24\x39\x86\xf7\x51\x15\x72\xd7\x3e\x55\x72\xba\xd6\x34\x15\x7c\x0f\x90\xd9\xe3\xe0\xe6\xf6\xcc\xfd\xa5\xcc\x56\xef\x92\x6b\x47\x8f\x73\xd7\x21\xd3\xfa\xc0\x98\x3e\xdd\x75\xb8\x25\xa0\x36\x04\xcf\x6e\x84\x6c\x8f\x3f\x6d\xa7\x20\xbd\x46\xec\xeb\x12\xf3\xca\xa7\x88\x5e\xc6\x1a\x45\x0c\x19\xc9\xf4\x30\x5b\xf1\xab\x7c\x54\xd4\xcb\xbe\x98\xa8\x97\x7d\x5d\xb7\xdc\x69\x92\xc7\x4d\x83\x0c\x8f\x7c\x94\xdb\x19\xee\x4a\x4d\x42\x42\xf8\x54\xa7\xda\x7a\xf8\x48\xe0\xfd\x7b\xae\xa7\x63\x5a\xe0\x1e\x06\xec\x27\xde\x44\xaa\x31\x09\x12\x1c\xf5\x2c\x18\x4c\x5d\xd8\x68\x72\x05\xf3\x34\xcb\xae\xd2\xe9\x87\x11\xae\xa5\xab\x8c\x13\xa5\xeb\x26\xc9\x6d\xec\x9d\xf0\x01\xee\xa7\xc0\x1b\xa9\x6a\xf9\xdd\x34\xbd\xf9\xea\xe8\x34\x5d\xce\x78\x06\x53\xa8\xe6\xaf\x83\xef\xfa\xb9\xf4\xb1\x53\xaf\x1c\x83\x65\x66\xc5\xdf\x90\x3b\x3e\x50\x18\x7c\x47\xa2\xb6\xfb\xcf\xd3\x00\xb6\x24\x77\x9f\x51\x2d\x52\x1f\xe0\xa5\xe0\x06\xf2\x29\xc1\x46\xe8\x6c\x81\x6e\x99\x61\x78\x04\xd9\xaa\xe1\x66\xf5\x38\x58\x55\x43\x4e\x6d\x8f\xcf\x3a\x28\x1f\x55\xde\x53\xb1\xae\x2c\x64\xbd\x47\xf2\xaa\x95\x0d\x2e\x86\xa6\xfd\x6b\x43\x40\x4b\xd6\x15\xc2\x6f\xc8\x6d\xdc\x23\x9d\xfb\x61\x65\x7a\xd6\x85\xc9\xa2\x3a\x01\x89\x51\x30\xc4\x12\xea\xd8\x85\x39\xa6\xf5\x08\x1d\x29\x17\x9b\x18\xc7\xb3\x3e\xa7\xfd\x05\x2d\x73\x0e\xb8\xc6\x92\x42\xff\x0f\x00\x7b\xfc\x07\xd4\xbf\x2a\x79\x9f\xf0\x3e\x29\xfa\x39\xe5\x7d\x1b\x6b\x5c\x86\xbb\x22\xbc\xe8\xcb\x2d\x37\x0e\x34\xac\x52\xd3\x49\x8a\xd7\x40\x6e\x1b\x8a\x19\x30\x13\x96\xc1\xdd\x2b\xd4\x31\xbb\xfc\xc2\xb5\x8c\x3e\x5e\x34\xb5\x49\x6a\x9f\x78\x31\xae\xfb\x23\xf9\xf8\x98\xb5\x77\xc8\x3e\x97\x00\x56\x8b\xda\xa7\x4e\x6d\x06\x92\x82\x84\xb6\x95\xf3\x25\x55\x89\xc5\xb2\x33\xd1\x13\xd7\x4c\xc7\x9e\x12\xd7\xd6\x80\x00\x79\x38\x25\xd5\xdb\xe3\xba\x7b\x54\x93\x5d\xcc\xc2\x28\xf2\x33\xe7\xc8\x70\xf3\xa3\xed\x60\x18\xb2\x3a\x30\xc9\x5e\x30\xa3\x8b\x60\x14\x88\x09\x0d\xd7\xf0\x1e\x58\xa1\x66\x59\x65\x18\x45\x93\x1e\x6b\xe2\xb2\xa8\x78\xf2\xdd\x88\x63\x4f\xe9\x69\xd5\x8d\xcc\x83\x82\x64\xdc\x01\x25\xaf\x67\xe5\x9c\xfa\x8d\xbd\x0f\xda\xab\x96\xcd\xb0\xd3\x8f\xe6\xab\xaa\xa8\x37\xdd\x1c\x19\x8a\x43\x74\x70\x8f\x20\xf6\x78\x05\xfd\xfc\xfe\x06\x0d\x6b\x8c\xaa\xb7\x7c\x47\xaa\xb3\x53\x42\x0c\x7f\x8b\x1b\x37\x12\xec\x9a\x3c\x10\x19\x7c\xc3\x42\xf4\xec\x7a\x5a\x31\x2a\x57\x64\xa0\xaa\xe6\xc9\xd4\xe1\x63\xe7\x5e\x3e\xd6\x73\xd9\xb2\x49\x30\x97\x2f\x6e\x1f\xd3\xd8\xae\xbc\x96\xd5\x63\x36\xd1\xc1\x81\xfd\x49\x45\x45\x44\xaa\x84\x57\x3d\x27\xf4\xae\xb1\xfb\x3c\x7c\xfb\xc3\xd1\xdb\xc3\xcb\x77\xfb\x67\x87\x6f\x2f\x82\x86\xf1\x39\x70\xd8\x5f\xfd\x4a\xd6\x7b\x65\x0d\x08\x6e\xce\x50\x35\xcc\xaa\x1b\xc1\x93\x9e\xee\x0b\xf5\xc5\x47\xcb\xd6\x08\xc2\x02\x5f\xda\xdf\x10\x61\x35\x99\x89\x61\x2a\xaf\x8a\x29\x23\x57\x4d\xd8\x68\xad\xe3\x24\x88\xda\xa0\x0c\x71\x10\xa1\x34\x19\x4f\x50\x91\xec\xbc\x28\x5e\x52\xad\xcb\x2c\x86\xc3\x28\xf8\x63\x90\x24\x49\x48\x12\x3a\x2e\x26\xd1\x5e\xaa\xf6\xcd\xf1\xff\xfc\xf6\x5b\x3c\xf9\x63\x10\x8d\xd4\x1b\xa2\x01\xda\x52\x15\x1c\xe1\xb7\xdf\xc4\xe9\x5b\x0e\x93\x20\xfc\xed\xb7\x38\xfe\x63\xb4\xa7\x62\x9d\x24\x0f\x4b\x71\xcc\xb3\x7c\x84\x11\xc3\xd7\xf8\xe3\xc8\xc1\xe5\x0e\xfe\x27\x18\x96\x12\x9b\x5b\x86\x97\x1c\xf1\xca\x06\x91\x85\x92\xb2\x08\xe5\xc9\x43\x85\x20\x56\x75\x99\xfb\x5a\xea\xc2\x84\xef\x20\x92\xec\xbc\x20\x2f\x35\x12\xf6\x0b\x02\xb1\x21\xc9\x44\xf1\x69\x3c\x21\x51\x8f\x41\x57\x08\xbe\x00\xed\x4a\xf2\x95\xd4\x08\xe0\xba\x01\xba\xa2\x91\xec\x98\x34\xad\xd8\x51\x89\xd3\xf9\xac\xa8\xc7\xc1\x1b\x4f\x7a\xf5\xaf\xda\x3c\xe6\x41\x2e\x19\x25\x0d\x8a\xee\xf6\xe1\xa0\x69\x3f\x44\xe5\x3a\xb8\xc4\x0c\x02\xab\xe7\x53\x0c\x7e\x7d\x21\x4d\x48\x9c\xd3\xbb\xd5\x8a\xc4\x0b\xfa\xfb\x5b\xf9\x24\xe3\xcb\xaa\x1f\x8b\x42\x3d\xd0\xb7\xf4\x2e\xda\xa3\x80\x6a\x12\x92\x68\x74\x90\x72\x2c\xf2\x46\xae\xec\xb9\x2e\x80\x65\x4d\x68\x14\xd2\x2c\x84\x7d\x02\x43\x0c\xd1\x04\x00\x44\x6f\x58\x17\xbe\x4c\xbe\x1d\x0c\xca\x90\x47\x7b\x61\x9a\x70\x54\x24\x79\x34\x0a\x69\xc2\x51\x9a\xe4\xa8\x48\x48\x04\x28\x25\x06\xb1\xdc\xd8\x9b\x82\xb5\xbe\x92\xb2\xb2\x84\x42\x5b\x6f\x92\x59\x88\x3d\x31\xb8\xfa\x99\xe0\x6f\xd4\xf3\x4d\x92\x24\xf3\x3d\x43\x60\x34\x0d\x53\x74\x83\x32\x54\xd4\x23\x19\x6b\xdb\x77\xce\xee\x9d\xa0\x2e\x22\x4f\xae\x81\x3b\x88\xc6\x56\x60\x31\xfe\x38\xc5\x32\xbc\x05\x41\xa4\x9a\x93\x3c\xcd\xb2\xfb\x07\x1e\x46\x95\x25\x3a\x0f\xa3\x07\xfb\x4b\xd4\x94\x20\x0a\x4a\x76\x5f\x0b\xe7\x3a\xa2\xb4\x8a\x38\x9a\xae\x56\x61\xea\x9f\xcd\x88\x88\x65\x4a\x93\x9d\x17\xd4\x4e\x68\x3a\x1c\x46\x21\x4f\xd8\x98\x4e\xa2\x18\x56\x94\x44\xa2\xc7\xd1\x60\x40\x94\xdb\xab\x0a\xd6\x6a\xb1\x01\xc6\x78\x02\x0d\x10\x92\x18\xf4\x7b\xea\xad\x55\x89\xb2\x84\x84\x34\x42\x53\xe5\x51\x7a\x7e\x71\xf6\xfe\xf5\xc5\xfb\xb3\x43\xb0\xcc\x78\x73\x74\x7c\xd8\x9b\x0e\x06\x61\x99\xe0\x61\x30\xea\x07\xc3\x4c\x95\x84\x84\x20\x43\x33\x1c\x73\xb2\xc0\x61\x19\x45\xe6\x7a\x65\x26\x9a\x70\x93\x08\xf9\x6c\x99\xec\xbc\x58\xbe\xd4\x25\xbf\x58\x6a\x50\xfd\x45\x92\x8e\x97\x93\xde\x4c\x56\x7e\xa1\x6e\x4d\x42\x2c\x46\xcf\xc2\xe4\xb9\x7e\x3b\x66\xb9\x0b\xb2\x2c\xd9\x79\xc1\x2c\x59\xa6\xc9\xe6\x49\x3a\x66\x93\x9e\x67\x36\xe7\xf2\x3e\x46\xf0\x85\xf0\x00\x93\x22\x43\xb3\x31\x9b\x44\xd5\x74\x30\x70\x1b\x73\x98\xcf\xc2\x32\xaa\x2a\xdf\xda\x4f\xbd\x3b\x42\x9a\x34\x3d\x5f\x8d\x4c\xdc\xb4\xfd\x5c\xd0\x19\x99\x93\x4d\x5d\x78\xfe\xdd\xee\x66\x05\xe6\x27\xaa\x82\x27\x69\x9e\x5e\x3f\x0d\xbc\xbe\x91\xf5\x31\xeb\xf4\xf4\x8a\x64\x9c\xe0\x4d\x31\xe7\x79\xac\xfb\xee\xb5\xcc\x4b\x44\xe6\x96\x97\x9b\x9c\x9d\xe0\xc3\x95\x3e\xca\x6e\x75\x45\x10\xd3\xd6\xca\x0c\xcf\x31\xc3\xf9\xd4\xeb\x48\xf1\x25\xd8\x15\x29\x6f\xf2\x9f\x30\xb8\x7d\xa5\x3c\xa1\xca\xa5\xc6\x29\x8c\x99\x8d\x37\x21\x82\x93\x6b\x45\x8e\xa7\x83\x41\x08\x5f\x5a\xf0\x91\x0a\x3e\x18\xa5\x46\xdd\xf7\x86\x32\x5d\xb7\x48\x87\x35\x96\xa8\xbf\x3c\xe6\x2c\x9d\x7e\xa8\xe3\x68\xe3\x84\xca\x9d\x92\x44\x76\xdf\x05\x77\x9f\x72\x39\x83\xe0\x30\x29\x92\x3a\x33\xd0\x4c\x15\xe5\x02\x47\x61\x01\xd8\x21\x88\x54\x35\xdf\x5b\xd9\x65\x64\x1e\x6e\xc9\xa0\x63\x3a\x40\xae\x0e\x28\x44\x59\x14\x8e\x21\xd5\x24\x8a\x1e\xf2\x04\x37\xcd\x6b\x5d\x27\x1e\x22\x68\xa0\x3c\xaa\x7a\x8e\x99\x77\x81\x39\x08\x44\x64\x7a\x80\xa7\x94\xa5\x40\x92\x46\x88\x56\x4e\x2e\x51\x8b\x6a\x5d\xf2\xce\xe9\x54\x72\xec\x47\x4f\x50\x69\xa4\x7f\x97\x4c\x67\x1e\x2e\x17\xe9\x94\xd1\x47\x12\x33\x3c\x2b\xa7\xf8\xb2\x99\xe7\x8b\x7b\xd4\x77\x66\xc0\x8b\x25\xbf\xdf\x78\x1d\x42\xea\xb5\xab\x3b\xa7\xfc\xf0\x49\x24\x75\x86\x47\xa8\xe6\x9b\x3a\xb1\x08\x8a\x39\x7e\xac\x8e\x4f\xa9\xde\x5a\x5a\x57\x94\x66\x1b\x13\x13\x89\xd7\x52\x5b\x08\x96\x64\xf3\x5d\x51\xa4\x5e\x4b\x0f\xff\xab\x4c\x37\xaf\x1e\xa4\x5e\x4b\xef\x7a\xf3\x8e\xbb\x5e\xdf\x6f\xd7\x7c\xf3\x01\xbd\xe6\xeb\xc7\x73\xe3\x78\x20\x3c\xce\xd6\xd7\x2a\x7b\x42\xad\xb2\x47\x6a\x45\x73\xfc\x4b\xba\xf9\x3a\x90\xc9\x1f\xf1\x1f\x93\x51\x0b\x36\xa6\xa9\x33\x3c\x12\x52\x45\xd9\x5b\xe7\xd7\xfb\x19\x49\x37\x3f\x94\x9b\x19\xd7\x96\x92\xe6\x9b\x06\x82\xe1\x71\x9a\xaf\x0f\x02\x43\x37\xe7\x4d\xe8\x23\x81\x7a\xca\xc5\xe6\x26\x7e\xe5\x62\xfd\xda\x05\x4c\xab\xcd\x68\x2d\x48\xfe\xc8\x3e\xf0\x71\x73\x5a\xe9\xc7\x47\x68\x2d\x9f\x40\x6b\xb9\xbe\xbf\xc0\x32\x76\xd3\x0e\xa3\xec\x51\x63\xcb\x03\x32\x9f\x3f\xc5\xc8\x52\xa4\x7f\xac\xb5\xaf\x36\x5d\x20\xd0\xde\x57\xeb\x57\xc7\x9c\x64\x7c\x63\x5e\x98\xc5\x32\xf9\x06\x14\x9f\x50\x49\x9d\x61\x2d\xd5\x32\x27\xff\xda\x98\xa2\x48\xfc\x28\xb5\x27\xd4\x50\x26\x7f\x8c\x22\xdd\x7c\x7d\x40\xea\xf5\xde\xbf\x82\x93\x2f\xf0\x74\xf3\xe9\x68\x72\x54\x55\xd4\xcd\x40\x4d\x69\x96\x3d\x85\xaa\x4a\xdf\x25\x8c\x74\xcb\x7a\x0d\x3b\x84\x4d\xe2\x4c\x7d\x15\x49\x44\xc2\x75\x2a\x4c\x1a\x02\x57\xbe\xbf\xe0\xf4\xc3\x49\xba\xac\xf3\xf0\x5c\xf1\xf0\x0e\x20\xbe\x73\xa1\xe9\x45\xd0\xaa\xa5\x90\x48\x0d\x83\x81\xe7\x65\x18\x21\x19\xb7\xfd\xf4\x2e\x37\x95\x36\x38\xa2\x91\x16\x81\x74\x5d\xc1\xa5\x57\x3e\x25\x74\xaf\x19\xb5\x9a\x46\xa3\x87\xca\x82\x73\xa8\x84\x63\x3e\x49\x72\xd4\x44\x0e\x90\xb7\x7b\x20\x40\xe9\xeb\xfe\xfa\x3d\xaf\xe8\x8d\x93\x74\x89\xc0\xc5\x5b\x0a\x4d\x38\xd2\x17\xfc\xa0\x5c\x0f\x2d\x2c\x7f\xe3\xca\x34\x97\x1a\x38\xae\x42\x29\x09\x02\x39\xe2\x91\x44\x85\x35\x5d\x9b\x6a\xfe\x1e\xba\xbf\xa7\x84\xa4\xbc\x53\x48\xe2\x88\x09\x21\x89\x28\x21\x29\xf5\x0b\x49\x72\xc0\x88\x2b\x24\xe5\x7e\xa9\x27\x8d\x50\x5a\xd5\x73\x25\x2c\x86\x19\x02\xc2\x52\x67\x36\xef\x74\x5f\x2f\x08\x7d\x82\x44\xbe\x5e\xfd\x61\x7a\x91\x09\x21\x53\x6b\x82\xc6\x13\xfb\x81\x84\x38\x7a\x50\x37\x82\x38\xaa\xb4\x32\xc9\xa3\x66\x7b\x90\xdd\xc9\xc6\x74\xf2\x42\xbb\x0e\xa7\xf9\x4c\xcd\x47\x82\x0b\x21\xf0\x12\xa3\xa1\xca\xed\x10\x8a\x9a\xe5\x6d\xd3\x5b\xab\xba\xc2\x49\x53\x5f\x8a\xe4\x42\x03\x08\x93\x10\x47\x4a\xed\x87\xa1\x22\x64\x4c\x27\x36\xc3\x98\x4e\xd4\x40\xb3\x70\x07\x11\x21\xb1\x5b\x2c\x8c\x3a\x4c\x4a\xaa\x91\x51\xc6\xfe\x3a\x18\x4f\x70\xa5\x45\xc3\x56\x7d\x46\xa4\x1a\xc0\x06\x56\x4a\xc7\x6c\x22\xaf\xf4\xf3\x90\x44\x26\xc8\x4e\xe5\xc8\xdc\x6e\x62\x3c\x89\xaa\x89\xd5\xce\x16\xd5\xa7\xd8\x02\x81\x70\xd9\xe5\xc8\x6d\xe1\x3f\xf0\x30\x50\x2d\x09\x3c\x5a\x62\xad\x61\x10\xb4\x20\x7e\xad\x5b\x51\x69\x9a\x52\x21\x6c\xa4\xce\xcf\x2d\x6e\x6b\xe3\xf2\x72\x5f\x10\xda\x66\x59\xdd\x0d\x7a\x4b\x73\xbc\xbe\x3d\x9f\x46\x7e\xab\x45\x52\x51\x14\xb2\xea\xa7\x91\xec\x6b\x37\xda\xce\xda\x82\xe0\x5a\x53\x74\x6d\x44\x5e\x2e\xef\x16\x55\x7b\x89\x04\xba\xf1\x5c\x97\x02\xe2\xec\xd3\x4b\xf1\x4e\x71\x1c\x25\x49\xc2\x14\xe1\x6b\xfe\xc5\xa8\x7e\x6f\x69\xe2\x2f\x47\xd4\xd4\x34\xfb\x72\x35\x7d\x69\x69\x7e\xb9\x9a\xbe\x34\x35\x95\xe2\x6f\xd7\x84\x4b\x85\x7c\x19\x85\x38\x52\xe9\x42\x89\xf1\xa9\xc4\xdb\xc7\x73\xd9\x78\x7f\x12\x0e\xaa\x2e\xb8\x6e\x32\xcd\xfd\xa0\x43\xed\xc5\x53\x47\x1f\x62\xf6\x60\xd0\x8a\x47\x9d\x14\xe5\x11\x12\x2c\x2e\x34\x9e\x09\xe6\x26\x9f\xd5\xb1\x95\x44\x16\x2f\x3e\x28\x20\x7a\x42\x7a\xa2\x34\xa5\x1d\x49\xb7\x54\x52\xca\x9a\x5e\xd3\x4f\xd0\x45\x6e\xc0\xbc\x3e\x09\xb6\xea\x71\x2e\xd6\x3d\xbd\x25\xdf\x69\xba\x90\x35\x76\xe6\xf1\x24\x68\x6d\x11\xad\x28\x81\x76\x8b\xc8\xcb\x2c\x4b\x92\x84\xac\x56\x81\xec\x01\x7b\x03\x4b\xf6\xf2\x11\x89\x65\x1f\x84\x1c\x29\x33\xb1\x7a\xb0\xc8\xaa\xc1\x11\x6b\xed\xbc\x22\xff\xec\xff\xe2\x74\x7a\xf3\x4c\x5f\xd1\xed\xd1\xa4\x16\x82\x1d\xbe\xc6\x7f\xfc\xe6\x19\x0a\x02\xb8\x1e\xc5\x08\x0f\x13\x68\x43\xe4\x34\xac\x81\x7d\x86\x0d\xe0\x19\x47\xe3\x16\xef\xda\x68\x29\xad\x29\xea\x49\x01\x0c\x86\x58\x01\x7b\xf0\x62\x3f\x0a\x89\x54\xea\xeb\x0d\x79\xa4\xdf\xc3\xf9\xed\x6d\x6a\x6a\x11\x78\x49\x22\xf6\xee\xa5\x1f\xb5\x56\x8e\x86\x73\x47\xdb\xd5\x24\xe2\xe3\x53\x9c\x6a\xef\x47\x21\xaf\xd7\xb2\xb3\x6e\x45\xe3\xd6\xcd\xb0\xe0\x7e\x81\x44\x30\xe6\x2c\xe1\x88\x27\xe3\x49\x84\xe4\x18\xfa\x41\xdf\x45\x2b\x99\x99\x02\x95\x7b\x73\xfe\x75\x0a\x94\x42\xbe\xb7\xcc\x6c\x3d\x2b\xc9\xeb\xac\xa4\x34\x89\xc0\x60\x0b\xc1\xc7\xc4\x65\x25\x89\x86\xcd\xed\xa7\x61\xa3\x1e\xd6\x42\x18\x29\x50\x37\x31\x27\x94\x47\xdc\xb9\xbd\x79\xc2\x7e\xe4\x62\xc9\xa1\x3a\x93\x11\x61\x00\xcf\x73\xe6\x60\x1a\x0d\x06\xa9\x3f\x37\x15\xb2\x5f\x88\xa3\xd5\x2a\xa4\x2a\x80\x0e\x22\x9a\x67\x8f\x24\x16\x3d\x22\xe2\xef\x27\x70\x95\x45\xb9\xf0\x19\x3d\x91\xda\x01\xe5\xca\x4e\x78\xc8\xab\x08\xed\x48\xe5\xa0\x62\x57\x3e\x3e\x8d\xc4\x49\xca\x6f\x44\x2e\x19\xe0\x30\x42\xdb\xbb\xcf\x76\xa4\x52\x4f\xd2\x6b\xc4\xd2\xdf\x90\x1e\xc9\x35\x3d\x49\x0e\x4c\x02\xa1\x7a\xcb\xa4\x90\x7f\x5f\xdd\xfb\xe5\xc1\x02\x36\x4b\xb9\x01\x05\x43\xef\x1c\xb4\x83\x27\x0b\x01\xd2\x72\x56\x26\xa5\x79\x6c\x14\x20\xf6\x66\x25\xb8\x26\xcf\x93\xa4\x35\x39\xf7\x1e\x2d\xc7\x63\x09\x5e\x4f\x91\x24\x49\x6e\xec\x84\xca\x46\x3b\x48\x24\x2d\x85\xc8\xbf\xc0\x5e\x4a\xea\xa1\xbc\x5d\xf0\xd9\x67\x47\x7d\x36\x13\xb5\xa3\xca\x12\xa3\x90\x20\xee\xee\xa5\x51\x93\xe5\x30\xca\xa7\x64\x33\xf9\xf0\xcb\x2f\x6a\xcf\xce\xdd\x6a\xf0\x9a\xd6\x92\xd1\x78\x22\x96\x21\x4d\x48\xbc\xa4\xcb\x30\xd2\x3b\x56\xd8\x61\x9b\xf5\x82\x5b\xcf\x59\x2e\xe4\x4c\xe3\x83\x9b\x6c\xed\xa2\x3c\x21\x63\xae\xcd\x5d\x72\x57\x0e\x27\xf3\x30\x17\x12\x70\x92\x88\x09\x91\x6c\xed\xf4\xae\x18\x4e\x3f\x54\x42\x16\x05\x94\x6f\x25\x8c\x6e\xed\x2a\x61\x14\xc0\x31\x7a\xf5\xf3\x83\x8a\x55\xe2\xe8\x08\x23\x65\xdf\x78\x40\xe6\xf3\xa7\x4c\x0f\xbe\xf9\x34\x91\xb1\x87\xdd\x77\x7c\xfd\xd4\x31\x2f\x68\xb4\x47\xbc\xbd\x29\x73\x6f\x8b\x56\xd3\x18\x34\x89\xa7\x73\xe9\x30\x6d\xa6\x1a\x59\x3b\xeb\x94\x72\xf2\xdf\x36\xe7\x6a\xf6\xf2\x24\xe1\x8d\x29\xc7\x1d\x11\xce\x59\xe1\x2d\xfd\x59\xbe\x27\xf8\xb4\x51\xde\x1e\x57\x02\xe3\xaa\x75\xb4\x72\x54\x29\xe3\x2d\x23\x1c\xa3\xa4\x64\xab\x95\xc4\x89\x55\xbd\x1d\x72\x71\xca\x98\x23\xb9\xd7\x69\x04\xc7\xf6\xe6\x8a\xd8\x68\x06\x52\x8e\xda\x68\x4c\xcc\x19\xe5\xab\x94\x59\x6e\x75\xde\xe0\x0d\x3c\xc7\x7d\xdb\x11\x47\xe1\xd6\x86\x11\x34\xc4\x1d\x7f\x47\xa7\xc4\x14\x3b\x04\x52\x83\x8a\xcd\x62\x8a\x9d\xb9\xfc\xd9\xe7\xce\x63\x2e\xe6\x71\xf0\x7f\xc5\x73\x20\x96\x20\x4a\xbd\x16\xc3\xfe\xbd\x84\x5b\xbb\xd3\x91\x60\x69\x13\x3e\xde\x99\xa0\x3c\xe1\xe3\x5d\x3d\x61\xc6\x0c\xe5\x49\xbe\x5a\x05\x69\x31\x0d\xc4\x86\x52\x85\xa0\xd3\xa2\x10\x76\x69\xb4\xd9\xe6\x5b\x44\x7b\xae\x59\x9b\xe1\x6d\x0b\xdd\x97\x91\x17\xff\x55\x27\x5b\xd3\xe5\xc4\x2e\x10\xb9\x35\x71\x8f\x8a\x90\x8f\xe9\x04\x15\x49\x2a\x1a\x57\x26\xe9\x78\x77\x82\x32\xc9\x33\x81\xe9\x11\x93\x7a\x1a\x33\xc1\x8d\x63\x99\x8c\xac\x5d\x44\xa0\x57\x13\x93\x33\x53\x5b\x59\x30\xc3\xc5\x54\x74\x77\xb9\xb7\xbd\xfb\xc7\x6c\x94\x69\x25\xa3\xd8\xd9\xa2\x2a\x2c\x50\xda\xb9\xcc\x7b\xce\xfe\x35\x33\xaa\xe2\x37\x94\x39\xca\x5a\x12\x41\xc8\xab\x50\x30\x51\x7a\x12\x4f\xeb\xf2\xa0\xb9\x7e\x58\x7b\x63\xd1\x8e\x18\xda\xbe\xbf\x00\x99\x72\x81\xd9\x35\xee\xfa\x28\x95\xf5\x5d\x5f\xef\x70\xfa\xe1\xb2\xc0\x1d\x3e\x95\x5f\xcd\x0e\x46\x57\x6a\x43\xa0\x5a\x07\x28\xf5\x11\x92\xef\x54\xeb\x36\x26\x2d\xb3\xad\xa5\x7c\xf9\x0b\x4e\x3f\x9c\xe3\x4d\x6f\xa9\x48\x1d\xd7\x15\x06\xc7\xdd\xc5\x00\xae\xf9\xf0\xec\x87\xc3\x3d\xa6\x53\x8e\x0c\x84\x97\x4c\x4d\xbb\xa6\x8b\x3b\xa0\x9b\x19\xf7\x9b\x8d\x8b\xd7\x39\x86\xdd\x17\xfc\x65\xf3\x4c\x92\x9c\x83\xe4\x1a\xec\xf1\xc3\xc1\x96\x96\x45\x3a\x6f\xae\x71\x29\x3e\xe0\xfb\x22\x64\xfa\xe8\xca\x5d\xb3\x70\x1d\xc1\x45\x9c\x5d\x58\xf0\x17\x6c\x4c\x27\xf6\x9e\xe8\x53\x24\x0b\xd9\x6c\xc0\x93\xf4\x78\x1f\x30\x5d\x29\x99\x6c\xb5\xe2\x8e\x23\x02\x5b\xd7\x9d\x6a\xf1\x74\xaa\x5d\xbe\x3a\x54\xbf\x0a\x92\xa3\x94\x25\xdc\xa3\x2c\xe1\xfa\x46\x00\xf7\x5c\x6c\x16\x77\x18\xb8\x77\x18\x00\x3f\x65\x82\xa4\x33\xc9\x98\x19\x3e\x02\x57\xeb\x7a\xc4\xec\x09\xff\x66\xff\x11\x0f\x5f\xa0\x56\xde\x9e\xfa\xeb\xae\x36\x33\xb1\xb1\xf1\x36\x16\xa2\x99\x73\xa3\x5a\xe9\x53\xd2\xa0\xd6\x5b\x24\x90\x74\x36\xf3\x1d\xb5\x86\x0e\x5c\x20\x62\x64\x9d\x55\xb9\x0a\x12\xbb\x3e\x97\x13\x48\x96\x0b\x31\x7b\x7d\x6a\x29\x87\x9b\xe0\x04\x1d\x7e\x33\x2a\x84\xf6\xe6\x97\xdb\xae\xfb\x0c\x63\x94\x6d\x03\x08\x66\x17\x16\x9b\x56\x21\x5e\xa5\xd3\x0f\x57\x25\xcb\xbb\x60\xd5\xbe\x88\x73\xd4\xeb\x92\x31\x9c\xf3\xb3\x32\x3f\xa6\x74\xe9\xf1\x6c\xa7\x2a\x9a\x14\x08\x98\xff\xa4\x42\x74\x47\x38\xbe\xc2\xd7\xa4\x06\x7d\x5a\xca\x57\x92\xef\xc6\xf9\xac\xfe\x0d\x42\xe2\x01\xb7\xaa\xe2\x64\x7a\x0a\x2a\xcd\x47\xa5\x2e\x2b\x6b\x7e\xbb\x70\x41\x7e\xae\x52\xcc\x2e\xc8\x02\xb3\xc2\x4b\xe5\x26\x2d\xe4\x57\x25\x03\xa4\xf9\x14\x67\xed\xf4\x65\xed\x8b\x4c\x9b\xa5\x42\xda\xf7\x11\x85\x2f\x1d\xf5\xa2\xf9\x14\x7f\x9a\x88\xe1\xde\x43\x8a\xdd\xc0\xd9\xe3\xed\xd6\xc0\xe3\x32\x2f\x6e\xc8\x9c\x3b\x26\x01\xc8\x76\xd6\x69\x3e\xb5\x1d\xc6\x6b\x9d\x7c\xda\xa8\x58\xab\xa3\x6b\x79\xeb\x8d\xca\xf1\xc7\x4f\x94\x9b\x36\x6c\x14\xa8\xb7\x76\x45\x4b\xea\x7d\xcb\x9d\x51\xf3\x2d\x56\x3d\x6e\x2a\x82\xca\x0c\x5f\xd1\xb2\xab\x9d\xfa\x63\x47\x1b\xf9\x0d\xa3\x9c\x77\x4c\x46\xfd\xb1\x23\xef\x15\xc9\x67\x09\x36\x91\x53\xcf\xca\x3c\xc1\xb1\x5d\xb1\x09\x8e\xff\x55\xe2\x12\x17\x22\x0d\x2b\x6e\x97\xe0\x8a\xf7\xdf\xe2\x55\x9d\xf3\x10\x87\x8c\xba\xe0\x0e\x83\x60\x08\x9a\x2e\x96\xe6\x33\xba\x08\xa3\xa1\x76\x5d\x0a\x81\xe5\x95\x8a\xf4\x20\x0e\x50\x10\x88\xdd\xa9\x49\x57\x87\x55\x1a\xdb\x10\xb4\xca\x59\xf9\x82\xa5\x79\x41\xcc\x3b\xf0\xec\x0c\x50\x00\xfe\x20\x67\xfa\x97\x0e\x7f\x89\xd2\x49\xcf\xd4\x5e\x47\x57\x12\x23\x6c\xd8\xa8\xb0\x40\x0f\xea\x11\x4a\x1e\xd9\x02\x69\xfe\x4a\x6c\x03\x35\xad\x16\x4d\x70\x85\x68\x7e\x98\xcf\x1a\x62\x09\x4d\x38\x02\xb6\x7e\x9e\x95\xc5\xcd\x7e\x71\x9f\x4f\x4f\xaf\x0a\xcc\x6e\x31\x2b\x04\xa3\x2f\x32\x89\xe6\x5d\xc8\xe0\x18\x2c\xae\xfd\xd6\x5f\x4f\x30\xbf\xa1\xb3\x51\x40\x73\x85\x65\x02\xd4\x1a\x45\xe9\x46\x6f\x81\x65\x0b\xde\x4a\x92\x74\xb5\x5a\x53\x36\x02\xaf\x27\xc7\x65\x2c\x73\xe7\x06\x2b\x73\xdf\xb4\xa8\x4d\x80\x52\x0b\xc8\xd2\x0c\x06\x80\xba\x5c\x59\xd9\x21\x27\x76\x55\x3f\x3d\x77\x7a\x4d\x7b\x6a\xd6\x7d\xbd\x55\xb9\x19\x65\x56\xa7\x9c\x27\x3b\x2f\xf2\x97\xf8\x45\x0e\xce\x87\xb9\x4b\x39\xb7\x94\xeb\x57\x20\x5c\x5f\x81\xb0\x28\xaa\x1a\xac\x8f\xf2\x7c\xff\x52\x91\x7e\xbe\x46\x70\xbe\xa7\x86\xef\x51\x4d\xfa\x52\xb1\x7b\xf2\xee\xd8\x3d\x51\x2f\x6f\x80\xcc\x15\x0a\x67\xea\x4d\x3a\xe5\x94\xdd\xcb\x36\x74\xc5\xf5\xc9\x23\x7d\xf7\xea\x70\x3f\xa4\x31\x3e\x10\xe2\x69\xcd\xf0\xa8\x04\x82\x71\x95\x8f\x06\xd8\xe3\x93\xc2\x6e\x7e\xc5\x90\x3e\x19\x9d\x26\x77\x08\xc7\x77\xc9\x21\xf4\xf4\x34\x5d\xe0\x8c\xfc\x8e\x93\x73\xf1\x33\x2d\x6e\x30\x13\xbf\x4e\xe1\x40\x52\x9f\x3e\x8a\x1f\x60\x0f\x36\xbf\x4f\xf6\x41\x29\x36\xc3\xac\x98\x52\x86\x93\x0f\x90\x70\x49\x78\x0a\x49\xdf\xad\x91\x60\xaf\x31\x97\xb1\xb2\x36\xb7\x37\xb7\x59\xd6\x0b\xc7\xc5\xd3\x49\x17\x2e\x69\x35\x05\x9e\x8d\xfb\x97\x93\x67\xd7\xea\x0e\x2c\x8f\x01\x20\x2d\xdc\xc5\xdf\x7a\x6f\xf0\xce\xa5\x99\x81\x3c\xa3\x08\x0a\xb6\xa5\x1b\x7c\x9a\x3c\x0b\x7f\xdb\x5e\xfd\x76\xb9\xfa\x2d\x5e\xfd\x56\x44\xc3\x30\x8e\xf6\x9e\x5d\xa3\x22\x79\x16\xfe\xcf\xea\xb7\x67\x51\x38\xde\xdf\xfe\xff\x4d\xa2\x67\xd7\xa8\xdc\xa8\x1c\x7b\xa3\x9c\xb6\x17\xb6\x5e\x86\x7b\x2c\xe6\xf4\xfd\x72\x89\xd9\xeb\xb4\xc0\x61\x34\x0a\x82\xca\x39\x42\x8b\x0e\xca\x9c\x1e\xd3\x3b\x9d\x47\x5d\xbb\x65\xc9\xb3\xff\x11\x2d\xb8\x54\x55\x47\xd3\xe4\x59\x18\x47\xde\x46\xcd\x55\xa3\x56\xbf\xc5\x51\x38\x4e\xb7\x7f\x87\x76\xcd\xd6\xb7\xcb\x2a\x00\x3a\x5b\x13\x5c\x06\x43\x4f\x8b\x10\x4b\xda\x4b\x42\x0f\xe9\x30\xcc\xf7\xf2\x56\x9e\xa8\x42\xb9\x55\x52\x3e\x0b\xbc\x32\xaa\x90\x50\x41\x4c\x35\x1d\x96\x21\x6e\x7b\x6f\x8a\x98\x13\x87\x5b\x7a\xc4\x3f\x0b\xec\xf7\x79\x67\xef\x3a\x75\x51\xbd\x7b\x93\x3c\x83\x8e\xfa\x6d\x36\x51\x33\x61\x28\xba\x6c\x99\x3c\x13\xfd\x5b\x0c\x9f\x5d\xa3\xc5\x13\xa7\xc5\x0d\x0a\xbe\xd9\xbd\xfc\xe6\xb9\x53\xa3\x25\x0a\x2e\x83\xa8\x35\xbc\xe8\xd6\x4e\x42\x51\x87\x72\x67\xe7\xf5\xce\xf6\x6f\xe5\xce\xf3\xef\xde\xc0\xc8\xdd\x3f\xb1\xe8\xdb\x27\xb4\xfc\xba\xd5\x72\x51\xe2\xd5\x13\x4b\xbc\xb6\x8d\x6d\xb6\xae\x16\xb9\xdc\x86\x10\xde\xe9\xb5\x88\x3c\xfb\xaf\xff\x1b\x8e\x77\xb6\xff\x36\x19\xc2\x2c\x6e\xa8\xe0\xd5\x79\xb0\xb7\x4c\x59\x81\x8f\x72\x1e\xe6\x68\x77\x27\xda\xde\x1d\xb1\xe1\x10\xd1\x84\x18\x15\xf1\x1e\x1f\x93\x89\xd6\x9b\x29\xc5\xae\xdc\xff\xad\xf6\x80\xee\xd1\x91\x52\xab\xd0\xbd\x40\x32\x45\xc1\xc8\x5c\x7c\xd0\xbd\x20\x18\xc9\x8d\x48\xba\x23\xba\xa1\xaf\x5d\x53\xab\xad\xfa\xa5\x06\x8b\x56\xab\x26\x9b\xf2\xfd\xf3\x08\x8c\x0f\x36\x39\x6a\xd1\x6e\x14\xa1\xcb\x10\x1b\xdb\x3a\x59\x87\x08\xee\xe4\xe1\xf2\xc3\xd4\xe3\xb0\x36\x0e\x72\x21\x3d\x13\x33\xd5\x49\x73\xee\xa4\xb9\x02\x23\x69\xec\x7c\x3d\x75\xbe\xd2\xd6\xd7\x8f\x35\x51\xa7\xf9\x75\xdf\xf9\x3a\x6b\x7d\xfd\xe0\x7c\x5d\xb4\xbe\xbe\x73\xbe\xde\xeb\xaf\x4c\xc6\x82\x6d\xc6\x23\x88\x65\x07\x0c\x06\xbe\x53\x86\xe0\x22\x94\xdf\x6d\xb7\xa2\x87\xbb\xd1\xc3\x94\xe6\x73\x72\x5d\x9a\xd3\xc6\x3d\x7b\x76\xd1\x1d\x23\x1c\xeb\x4f\xf2\x18\x6e\x1f\x45\x87\x0a\x72\xba\x42\x19\x9d\x7e\x1e\xc5\x2f\xcc\x1b\xdf\xe9\x0b\xa2\xaa\x42\x9a\x19\xf8\x22\x4d\xfe\x68\x9a\x6c\x19\x90\x2f\x42\xf8\xdc\x12\xd6\xac\xcc\x17\xa1\x7b\x6a\xe8\x5a\xd6\xe7\x8b\x10\xfe\x60\x08\x6b\x06\xeb\x8b\x90\xdd\xb7\x64\x0d\x6f\xf6\x45\x08\xbf\xd3\x84\xc1\xf9\xa5\xd7\x62\x91\xbd\x1c\xf0\x57\xd3\xe0\x5a\x1e\xae\x11\xd5\x07\x57\x52\xd5\xd7\xfa\x6a\xb9\x85\x5a\x0a\xaf\x8a\x74\x8c\x27\x95\x89\x96\xa4\x05\x02\x0d\x16\x80\xf3\x29\x05\x25\xc2\x57\x6b\xdc\x91\x72\x99\x21\x34\x3f\x94\x85\x6d\x18\xe8\x56\xc5\x04\x98\xcf\x31\x4b\xb0\x04\x1e\x13\xfb\xd5\x3b\x5a\x24\x3b\x0a\x44\x51\xb0\xea\x3b\xeb\x54\xd3\xb2\x79\xed\x0b\x02\xfc\xfd\xf3\x3f\xfd\xc9\x41\xfc\x03\x75\x44\x18\x9c\x2e\x45\xf2\xbe\xa0\xd1\xa7\xb7\x98\xf5\xff\xba\x7d\x45\x78\x11\xf7\x7f\xa0\xbc\x0f\x38\x7f\xb1\x06\xa1\x93\x15\x53\xa6\x5e\x2b\xde\x3a\xc4\xb6\x9f\xbf\x7c\xf9\xd7\xa8\x5e\x6d\x37\xa3\xf6\x68\xb0\xb7\x10\xc9\xf3\x17\xac\x7d\x8d\xe4\xe2\x84\xb8\x7b\x1b\x99\x87\x41\x5e\x8a\x39\xeb\x00\x86\x0c\x06\xf9\xf7\xdf\x3d\xff\xdb\x77\x7f\xfb\xf3\x5f\x9e\xff\xcd\xdb\x3e\xcc\xd2\x7c\x26\xdb\xf6\xed\xf3\x5a\xe3\xf2\x8e\xc6\xe5\x12\x10\x5d\x76\x76\xbb\x05\x15\xe2\xf1\xb2\x69\x14\x2f\x3b\x79\x7b\x57\xe3\xb6\xcb\x1c\x63\x3c\xdc\x9d\xb4\x2b\x75\xc1\xee\x49\x7e\xdd\xe7\xb4\x0f\x74\xfa\x54\x55\x92\xe4\xfd\x25\x5d\x96\x59\xca\xf1\xac\x5f\x64\x94\x43\x18\x65\x9c\xce\xfa\x74\xde\x4f\xfb\x0c\x83\xce\x47\x7e\x6a\xd4\x1c\x4a\x4a\xb8\xa9\xdb\x2f\x84\xdf\xb4\x98\xf4\xff\x84\x1a\xa2\xfa\xab\xe7\x93\x84\x99\x2b\x0c\xcf\xc2\xe1\xcd\xe5\x9b\xd1\xbb\xed\x0c\xdf\xe2\xec\x2b\x2e\xe0\x73\x9e\x4e\x3f\x24\xe2\x2f\x65\x69\xfd\xfa\xb5\x6b\xf5\xaa\xc5\x9b\x8a\x63\x3a\x19\x4f\x64\x2b\x41\x2f\xbd\x76\xb5\x36\x2f\x92\x1c\x34\x5a\x91\x19\x29\x08\x4f\x20\x2b\x16\x00\x77\x71\x8b\x4c\xb2\xe1\xb0\x87\xb3\x02\xab\x45\xc3\xc6\x7c\xd2\xb3\xe5\xe7\x95\x7b\x73\x04\x94\xc6\x7c\x22\xf6\x17\x79\x2d\xc5\xf0\xbc\xf3\x9e\x49\xa6\xc6\x13\x48\xc9\xdc\x2b\x17\xec\x36\x78\x8c\x27\x4e\x9d\x6d\xd1\x36\x72\xb6\xee\x49\x4f\xb8\xba\xfa\x16\xd8\xf0\xe9\x1b\xeb\x80\x05\xb7\x78\x9a\xe0\x75\x3d\x09\xf8\xa0\x9e\xe3\x42\x4c\x6a\x19\xfd\x40\xd0\x30\x46\x27\xa2\x45\xf0\xfc\x86\x51\xc7\xe6\x94\xaf\xcf\xc7\x9d\x8c\x4e\x26\x47\x00\xf6\x67\x43\x4c\x66\x9c\xd2\x65\xd3\xe2\x51\x27\x15\x63\x62\x9e\x65\x8f\xc3\xb9\x7e\x96\xde\x75\xe5\xc0\x6a\xc1\x5f\x63\x5e\x4f\x55\x1f\x44\x4b\xb0\x05\xa4\x66\xea\xa9\xf1\xd4\x44\xaa\x0c\xe7\x5d\x31\xd1\x6d\x52\x67\x64\xc5\x5a\x61\xcd\x65\x9a\xd3\xd9\x7a\x58\x70\x83\xdd\xd3\xe5\x69\xf0\x25\x98\x0c\x26\xa1\x84\x5f\x95\x24\x9b\x61\xd6\x81\x51\x13\xcf\x29\x53\xb0\xc3\xf2\x7e\x41\x1a\xbb\x22\x1c\xbf\xa5\x33\x7c\x70\x7a\x72\xc1\x30\x7e\x4d\xed\xde\x54\x57\x6f\xd6\xf4\x23\x7a\x2e\x33\x67\x26\x61\xc7\x3e\x9e\x47\xab\x15\xdc\x08\x4b\x4f\xb1\x5c\x70\xba\xbc\x50\x50\xde\x0c\x61\x8b\x93\xdb\x9a\xe2\xb9\xc4\x21\x7e\x5f\xe0\x0c\x17\xda\xe1\xb4\x1e\xd5\x52\x87\xf0\x6e\x7d\x6c\xcc\x08\x0d\xd3\x5a\x4f\x0e\x97\x54\x50\xca\x3e\xe7\x8c\x5c\x95\x75\xdf\x21\x18\x12\x5c\xfb\x0c\x13\xbb\x42\xac\x0a\x59\xec\xe9\x27\x31\x3d\xba\xba\x30\x6f\x01\x28\x39\xbd\xa7\x2d\xde\xb4\x25\x7b\x28\xd6\xbc\x17\x22\x59\xf6\x66\xe4\x0c\x75\x46\xa7\x1f\x0e\xf0\x12\xc0\x01\xb9\xb7\x9b\x73\xdd\xcd\x24\xc9\xdb\xdd\x4c\xe2\xcb\x4b\xba\xc4\x39\x10\x6a\x22\x35\xa9\xad\x19\xcb\x0e\x8b\x79\x7a\xfd\x36\x5d\x60\xe0\x4c\x2e\x8e\x2e\x8e\x0f\x83\x2d\x70\x28\x0e\xce\x5f\x9f\x1d\xbd\xbb\x30\xbf\x2e\x7e\x55\x9f\xb4\x62\x43\x01\x62\xb7\xea\x3c\x1c\x6a\x34\xf1\x74\xb9\xc4\xf9\xec\x35\x5d\xc0\xc8\x04\xff\x35\xbc\x1a\x05\x43\x36\x0c\xfe\x2b\x88\x2a\x67\xff\x73\x2b\x6b\xa7\x59\x54\x21\xd1\x8c\x69\x46\x0b\xfc\xc4\x76\xd4\x69\x5b\x0a\x0e\x71\xf4\xb4\xb6\x6e\x6f\x77\xb5\xb6\xab\xad\xdb\x4e\x5b\x65\x4b\x64\x8a\x1f\x2f\x4e\x8e\x93\xb6\x81\xea\x23\x43\x92\x24\x60\xc3\xa8\xaa\xa9\x7f\x41\x35\xc5\x0f\x63\x1c\x53\x6b\xb8\x2d\xb0\xb6\x78\xd5\xb4\xe9\xa8\xf7\x75\xb6\x60\xff\x15\x44\xb2\xec\xfd\x57\xba\x80\x07\x6d\xb6\xa5\xad\x82\x83\x97\x32\x11\xfd\x7e\x7b\x37\x0a\xb8\x60\x67\x13\x75\xa8\x84\x74\xb8\x8b\xe8\xf0\xdb\x08\xbc\xd2\x83\x97\xfc\x8a\xce\xee\xbf\x0f\x86\x7c\x18\xbc\x7c\xa6\x7e\x44\x55\x00\x39\xf6\x3a\xaa\xd1\xff\xaf\x20\x1a\x6d\xde\x9c\xf4\xb1\xe6\x38\x27\x1b\x8b\x5f\xd3\x7c\xca\x30\xc7\xaf\x68\x99\xcf\x24\x42\xbb\xee\x7b\x44\x50\x1a\xb9\xe3\x75\x51\xbb\x96\xd7\x13\x42\x46\x5b\xf0\x8e\x1a\x4a\x93\x30\x4f\x42\xb9\x3e\x22\x43\x57\x29\xe1\x42\x92\x30\xe0\x2b\xce\xc9\x55\x46\xf2\xeb\x68\x2f\x8f\xb3\xb4\xe0\x80\x8f\x3e\x22\xf1\x92\xe1\x5b\x42\xcb\x42\x7f\xd6\x7a\x3d\x33\x0d\x68\x6d\x1a\x50\x77\x1a\xd0\x3d\x5f\x87\x89\x06\xd4\x3a\x6c\xb4\x41\xcf\x87\xe9\x60\xf0\x2d\x58\xbc\x8a\x33\xf0\xe2\x7e\x89\x55\xd8\xa6\x76\xfa\xd5\x7f\x01\xbe\xf1\x06\x05\x43\xbf\xc2\x6a\xf4\x6c\xfc\xda\xb4\x5e\x85\x82\x32\xbd\x9a\x63\x3c\x2b\x0e\x3f\x72\x96\xbe\x16\x39\xc5\x94\x5a\xf3\x39\xd9\xda\xad\xd5\xc5\x2d\xcd\x59\xfd\xd1\x26\x89\x44\x6d\xc5\xbe\xd4\xaa\xac\x39\x15\xf5\xb4\x1f\x0c\x82\x8b\x57\xa7\x07\xbf\x06\x5b\x89\x77\x4a\x88\xef\x3f\x1e\xee\x1f\xac\xfb\xfe\xe6\xf4\xf4\xa2\xfb\xbb\x6c\xb4\x53\x9b\x30\x80\x85\x14\x34\x91\xfe\x49\x7e\xdd\xee\x13\x25\x77\xc3\xc5\xbb\xce\x0f\x9a\xe0\x7a\x3f\x38\xe4\x6b\xe3\x56\x29\xdf\xa8\x33\xbc\xa0\x9e\x73\x59\xdd\x83\x58\x63\xfa\xc1\x20\xcc\x13\x79\xfd\xee\x6c\x35\x33\xba\x00\x5f\x8e\xfa\x71\x1d\x48\x03\xe2\x20\xea\xd1\xfa\xa9\x1c\x88\x95\x1b\x20\x16\x21\x12\x93\xbc\xc0\x8c\xbf\x92\xc0\x9d\x1c\x51\x94\xd7\x2b\xde\xaa\x9c\x5b\x7d\x89\xc2\x87\x72\x71\xbe\xbf\xc5\x77\x2a\x85\xe2\xa6\xa2\x26\xcb\x47\x41\x95\x60\xa2\x9e\x78\xaf\x5b\x5d\xe4\x94\x0e\x86\x10\x42\xcf\x3b\xbf\x6f\x17\xee\xaf\x3b\xc2\xf0\x36\xc0\xed\x72\xf7\xb5\x51\xea\xd8\x57\x4b\x46\xaf\x59\xba\x78\x42\xb8\x97\x4f\x60\x31\x55\x63\x93\x4b\x84\x63\x1d\xf7\x45\x5d\x5e\xb7\xe5\x3a\xc4\x12\x1c\x93\x99\xf4\xef\xc1\x3c\x05\xec\xe7\x2b\x71\x1c\xa2\x34\x61\xab\x55\x30\xcd\x08\xce\xf9\x76\x30\x3c\x19\x0e\xd5\xee\xf5\x40\x66\xa3\x14\x89\xd4\x23\x82\xe4\xf8\xbb\xd6\x22\x0a\x47\xa3\x48\x98\x34\xac\x77\xb0\x55\x18\x22\xd1\x88\x18\x01\x69\xb5\x0a\x79\xf2\xff\xce\x4f\xdf\xc6\x70\x39\x12\xd2\x28\x42\x62\x4b\x3f\x0a\x31\x92\x85\x40\x4d\x46\x1c\x01\x9a\x26\xc3\x6c\x54\x54\x51\x55\x29\xbb\xa5\xf2\xba\xc5\x0b\x5a\xe3\xfb\x96\xce\x3a\x75\x74\xd6\xf4\xfb\x6f\xf7\xe8\xf6\xb7\xa3\x9d\x08\x15\xc9\xb7\x2f\x8a\x97\x14\x00\xad\xd3\x71\xb1\xfd\xad\xab\xbd\x2e\x26\xda\x7c\xa7\xcc\x32\x40\xb3\x28\xa5\x5e\x42\xf9\x6e\x31\x9c\x4e\x6f\xd2\xab\x0c\x47\x61\x70\xa2\x22\xfd\x2b\xed\xd5\x09\xe6\xe9\x2c\xe5\x69\x7f\x4e\x59\x3f\x18\x32\x8d\x51\x0c\x39\x67\x64\xca\xa3\xd0\x06\xdf\x89\xe9\xb2\xf0\x45\x15\x40\xe6\xa4\x4e\xc7\xf9\xa4\x57\xdc\x11\x3e\xbd\x09\x19\xa8\xb2\xa2\x87\x69\x5a\xe0\x80\xd3\x60\x94\x8d\x99\x0a\x92\x87\x87\x54\xba\x3b\xf5\xe0\x23\xf9\xf6\x79\x30\x82\x27\x09\xb5\xae\x7e\x40\xaf\xba\xd9\x6a\x99\x64\x80\x71\xf7\xb3\x09\x18\x21\x63\x75\x87\x34\x72\xd3\x17\x9c\xd5\x13\x1b\x45\x68\x23\xa1\x0c\x1a\xb7\xdd\x48\x4f\xf7\xea\x39\xe0\x7e\xab\x41\x7f\x1b\x44\xfa\x8e\x52\xd4\x90\xd6\x8a\xf2\xa7\xf7\xa5\x04\xfc\x45\x27\xe1\xd6\x56\xad\x33\x96\x8c\x2c\x08\x27\xb7\xb5\xfe\xb8\x0b\xa9\xe0\x54\x9c\x64\x3a\xe6\x83\x9b\x8a\xa8\x48\x3d\x98\x8d\xe9\xa4\xd6\x20\xc5\x76\x8a\x89\xd3\x6e\x93\xf3\xb1\x51\xd5\x2c\xfd\xfd\x7e\x1b\x8e\x86\x34\xe7\xad\x8c\xa7\xfc\x06\xb3\x90\x4a\xd4\xe0\x71\x29\xe3\x4a\x66\x13\xb3\x56\xce\xeb\x0a\x02\x21\x9b\xe1\x38\xa3\xd7\x72\xbe\x36\xe4\x50\xc9\x26\x03\xcb\x6a\x78\xda\xba\x71\x76\x97\x1f\x77\x20\x35\xb4\x49\x30\x84\x13\x04\xf4\xde\x51\xa4\xae\xb9\x05\xe7\x36\x34\xda\x9f\x20\x04\x96\x3a\x0a\x44\x4d\xde\x1d\xef\xbf\x3e\xfc\xf1\xf4\xf8\xe0\xf0\xec\xf2\xc7\xfd\xb7\x07\x10\xec\xfc\x17\x26\x78\x8f\x99\x96\x95\x71\xfc\x2e\x65\x42\x26\x3e\x10\xdb\x21\xd8\xe3\x81\x46\x6c\x26\xdb\x60\x93\x35\x7f\x1f\xa6\xd7\x98\x35\x5f\x1e\xa7\xbf\xdf\x37\xdf\xbd\x86\xbd\x53\xf4\xfd\x3b\xb9\x55\xd7\xde\x49\xb9\x45\xf5\xe7\x6b\x75\xa6\x24\x38\xde\xbf\x2a\x38\x4b\xa7\xdc\x79\x25\x88\x3b\x3f\x4f\x00\x0a\x41\x24\xbd\xb8\x38\x3b\xbf\x7c\x75\x7c\xfa\xfa\x27\x57\x64\x2f\x51\xd6\xf3\xf6\xc1\xf6\x2e\x0a\xb3\xa4\x5c\xad\xc2\x32\x79\xa8\xa2\x68\x9c\xc5\xa7\x4b\x9c\x9b\x00\x6b\xfa\xf8\xde\x99\x24\x81\xef\x43\x80\xb2\x71\x16\x1f\x90\xd9\xeb\x9a\x14\xbe\x3b\x49\x82\xe6\x4b\x93\x54\x6a\x1c\x8e\xd3\x7b\x5a\xf2\xe4\xb9\x4c\xe9\xbe\x53\x09\x21\x68\x1d\x66\xc9\xb7\x22\x85\xfa\x11\x28\xa3\x3d\x1a\x9f\x2e\x8b\x5e\xbd\xb9\xc1\x20\xe5\x9c\x15\x32\x09\x44\xb1\xde\x58\xe5\xa6\x6c\xd6\x63\x3a\x9f\x17\x98\xeb\x7b\x08\x08\x73\x58\xdb\x50\x15\x63\x54\xe6\xd3\x22\x19\x4f\x36\x57\x72\x1a\x15\x16\x64\x55\xb8\xe8\x91\x53\x8a\xd1\x26\xca\x04\xfa\xda\xa0\x52\x20\x1f\x24\xeb\x58\x40\x63\xa7\xda\xe0\xc9\x66\x29\x32\x09\x13\x65\x88\x8e\xf3\x49\xa4\xb5\x3c\x55\xe8\x98\x1f\x2c\x5d\x84\xaf\x3c\xc1\xe3\xdd\x89\x38\xae\xc7\xcf\x27\xe2\xb0\x1e\x7f\x3b\xe9\xb1\x18\x7f\x5c\xb2\x90\x44\x88\xee\x49\xef\x3d\x98\x02\x82\xfb\x0a\x73\x24\xf6\xaa\x51\xfb\x35\xc4\x38\x73\xe3\xbf\x2e\x9e\x58\xce\xec\x3e\x4f\x17\x64\x5a\x2f\xa5\xfe\x52\x97\x61\x16\x40\x43\xe6\x6f\xf5\x5a\x1b\x3d\xed\xd6\xc1\x54\x53\xb8\x68\xf8\xae\x7f\x1f\x59\x33\x8c\x74\x36\x0b\x03\x32\x0f\xfc\x26\xfe\xe2\xd0\xc6\xab\xd5\x2e\x00\xce\x19\x25\x75\xe3\x6a\xe1\xfc\xd7\xb7\x17\xfb\x7f\xef\x1f\x9e\x9d\x9d\x9e\x8d\xfa\xff\x87\xcc\xfb\x0c\xff\xab\x24\x0c\x17\xfd\xb4\x2f\x83\x9a\xf6\x35\x57\x20\xe4\x64\x69\xfa\x71\x2f\xf6\x84\xa3\x79\xf8\x90\xb2\xeb\xc2\xeb\x36\x05\xdd\x85\xc7\x3b\x13\xc1\xf6\x72\xaa\x71\x8d\x22\xb4\x5b\x21\x32\xbf\x60\xf5\x5b\x51\xc1\x19\xdf\xd2\x0f\xf8\x9c\xa7\x9c\x4c\x61\xb3\x09\x99\x60\xd7\xe7\x6f\xd2\xac\xa8\x25\xcd\x07\x03\x5f\xea\x3c\xd2\x38\x82\xb2\x57\xca\x3c\xc3\x45\xf1\x05\x7b\x46\x12\xfc\x5f\xe9\x9d\xee\x26\xfb\x3a\xa8\xa3\x2f\x6b\xbd\x73\x47\xea\x98\x5c\x9f\xd9\x37\x10\x60\xec\x2b\xf4\xcc\xac\x5c\x86\xcd\x1e\x7a\xbe\xf1\xfc\x41\xbb\x9f\x35\x83\x04\x83\xeb\xeb\x23\x1a\x3d\x50\xa7\x35\x9d\x6d\x11\xc2\xf4\x07\x7c\x0f\x72\xf5\x78\x67\x32\xde\x99\xec\x51\xd9\x3c\x3e\xde\x15\x3f\xa3\x11\x85\xfd\xf6\x9d\x66\xb4\xce\x34\x70\xbe\x8a\xcd\x4c\xdd\xde\x78\x5e\x21\x21\x27\xbb\x05\x89\xec\xfc\x88\x63\xf0\x55\x0d\x45\xfa\x7f\x96\x8b\xe5\x7b\x98\xa8\x61\x70\x78\x7c\x7e\x18\x88\x97\xa2\x0c\xb0\xd6\x85\x24\xa2\x4f\x2d\x7f\x16\xcf\x97\x68\x57\xbc\x96\x95\xbe\xa0\x61\x70\x74\x71\x78\x06\xf9\x70\xce\x31\x3b\x26\x05\x0f\x03\xd0\x09\x88\x77\x99\x90\x0f\x9d\x34\x10\xfc\x52\x08\xb9\xaf\xce\x0e\xf7\x7f\x72\x93\x98\x2c\xbe\x91\x79\x0e\xf5\xa2\xcb\xf0\xb9\xae\x75\x18\xbc\x39\x7a\xbb\x7f\x7c\x5c\x2b\xc6\x12\xc5\x1f\x09\x87\xaa\xa8\x8c\xb6\x3d\x9d\x99\x55\xfb\xf3\xc1\xc0\x57\x87\xe6\x68\x93\x7c\x1b\x6b\x66\xe0\xcb\xed\xa6\x86\xe8\xe7\xad\x0e\x7b\x45\xef\xb8\x85\xfb\x02\x9e\x38\x48\x8c\xf2\x82\xde\xea\xe7\x82\xad\x24\x49\x07\x83\xe0\xba\x24\x33\x78\x7e\x4a\xed\x67\x14\xcb\xa8\x82\x3c\xfd\x80\xfb\x69\xff\x1f\xc1\x90\x8d\x77\x26\xc3\xe0\x1f\x7d\x29\xda\x40\x23\x60\xb6\xe6\x63\x3a\x31\x50\x8f\xde\xf5\xfc\x9d\x7f\x05\xb7\x74\x1f\xa1\xd4\x98\xb4\xf7\x32\x04\x38\x1a\x8d\xb4\xf5\xe1\xdc\x16\x5b\xd2\xb6\x3a\x92\xb7\x6f\x53\xb6\xe6\x28\xe0\x46\x27\x2c\x3a\x37\x95\x3e\xf7\x44\x73\x37\xef\x52\x96\x2e\x8a\x30\xd5\xb8\x3a\x07\x92\xe6\xf9\x94\x2e\x31\xd4\xf0\x8a\xe4\xb3\xda\x4b\xba\xbe\xde\x75\x02\x15\xce\x0a\xdc\xef\xd8\xb3\x6d\x7b\x9c\x48\x6b\x5d\xcd\x68\x59\x4c\x8a\x5e\x17\x5b\x5d\x01\x44\x0d\x7b\xfc\x23\xce\x96\x58\x8e\x09\x30\x3d\x4a\xe5\xae\x9c\x8a\xb0\xec\x03\xed\xe8\xbf\x2b\xc6\x55\x75\xa3\xa1\x10\x52\xc9\xde\xa4\x88\xa3\x2d\x15\x1c\x22\x8a\x10\x7f\xbc\xaa\xda\x26\x94\x0f\x06\xa2\xb3\x7b\xbe\x6a\x93\xc1\x20\xef\xa8\x33\x11\x34\x40\xdd\xa7\x95\xac\xbd\xfa\xc8\xd9\x5a\x5b\x77\xf3\xce\xca\x33\x51\x79\x78\x96\xdb\x2d\xa0\xa1\xa0\x07\x50\x11\x14\x23\x8c\x48\x9e\x91\x1c\x17\x23\x5e\x55\x82\xbf\xd6\xda\xa1\x42\x2a\x8e\xe4\x47\x65\x52\x01\xef\xb5\x35\x85\xfa\x94\x30\x69\xf5\x74\xbb\xde\x46\xe1\x3f\x83\x95\x4f\x67\x33\xa5\xc5\x69\x1b\x15\x2c\xd4\x07\xdc\xc5\xf3\x6b\x25\x9e\x41\x79\x70\x4b\xb4\x3c\x6c\xba\xa7\xb9\x7e\x45\x31\xaa\x65\x1e\xd5\x65\x82\x74\x12\x85\xf6\xa3\x94\x0c\xd0\xfd\xff\xe7\xfb\xb2\x7e\x2d\x83\x61\x2b\x9a\x37\x8d\x96\xa9\x5e\x00\xa0\xd3\x65\x01\x92\xdb\x3d\x1d\xef\x4c\x92\x24\x99\xc6\x72\xb9\x44\x2c\xa1\xe2\x9c\xc8\x13\x2a\x24\x19\x92\x50\x21\xc9\x80\x69\x8a\x4a\xbc\x25\x12\xbf\xcf\x3f\xe4\xf4\x2e\x6f\x53\x34\xd9\x09\x28\x01\xab\xd6\xe0\x4a\x2b\x30\x3b\xbe\xea\x66\x45\x8f\xae\xd2\x85\xb6\x06\x5d\x36\xce\x80\xd7\x00\x34\x51\xb1\x67\x0b\x1e\x15\x95\x0b\x96\x9d\x4a\x42\x65\xd2\x9e\x1f\x3e\x4a\xa5\x4b\xa9\xac\x9a\xad\x52\x22\xa6\xa0\x78\xdd\x25\x84\x9b\xc1\x9f\x1a\x35\x86\x2c\x39\x93\x8a\x01\x8e\xdc\xaf\x33\xd9\x3b\x9e\x8b\xcb\xd6\xf8\x1a\x6c\x00\x7d\x3d\xa2\x49\x44\xae\x3d\x80\x7e\xd9\xab\x97\xb2\xbd\xeb\x46\xd4\x96\x55\x91\x3b\x0f\xec\x96\x70\x0c\xd6\x83\x54\x9b\xac\xb5\xc6\x48\x98\x38\xb7\x41\x51\x25\x61\x56\xa4\x42\x5b\xf9\x73\x61\x34\x7e\xf8\x80\xef\x47\x4a\x7f\x7a\x01\x2a\xbb\x2e\x2f\xa0\x66\x8d\xaa\x6a\x12\x69\x93\x94\xb6\x62\xe9\x1a\x1a\x72\xf5\xe4\xee\x07\x55\xf9\xec\x3f\xa2\xfb\x65\x55\xec\xa1\xe0\x0c\x01\x1c\x0f\x2a\xc4\x34\xc9\xaf\xa5\xe2\x68\xd3\x71\x91\x26\x1c\x5f\x60\x34\x64\x05\x9b\xa3\xd1\x74\xec\xb0\x8c\x65\xbd\x93\xe6\xf5\x78\x77\x38\x99\x83\xee\xe1\xa6\x27\xd9\x91\x69\x7c\x81\x3f\xf2\x26\xe2\x1e\x8f\x39\xfe\xc8\x43\xb1\x67\x39\xac\xcb\x34\x56\x37\xac\xed\xe4\x53\x75\xf5\xda\xce\xe1\xdc\x63\x7a\xb2\x39\x5f\xc3\x5a\xbe\x37\xce\xbd\x60\x3b\x5f\xed\xd6\xb0\x96\x4f\xc7\x60\x6b\xe6\x51\x3c\x77\xac\xef\x60\x90\x4f\x37\x04\x7c\x87\x19\x44\x75\x5d\xa0\x29\x86\x39\x62\x60\x5d\xa0\x6e\xcd\x3d\x5c\xb7\xd2\x95\xca\x9f\xd2\x0e\x56\xc7\xf0\x4e\xfb\x3a\x7a\xdb\xa8\x2f\xf7\xf4\xa2\xbf\x48\xef\xe1\xdb\x15\xee\x97\x05\x06\x1b\x50\x08\x06\xae\x38\xf5\x39\x65\x0b\x30\xf5\x34\x81\xdf\xc2\x54\x9e\xa0\x4e\x7b\x25\x9b\xb9\xcf\x79\x47\x8b\xb1\xdc\xf7\xb1\x3c\x36\x40\x01\xc6\x15\x4b\x06\xea\x2d\x86\x88\xe2\xf9\x34\xc5\x03\xab\xfc\x6a\x92\x5c\x84\x18\x6d\xed\x4a\x60\x44\x77\x4e\x58\x95\x5c\x33\xc7\xd2\x97\xe3\x82\x95\x05\xc0\x0e\x77\x15\xb1\xd3\x91\xe1\xf1\xa2\x9a\x39\x4f\xed\xf5\x71\x77\xff\xf4\x44\xef\xac\x56\x5c\xc8\xe0\xa6\x08\xb0\x6f\x16\xa9\x21\xce\x3e\xdc\x43\x1b\xe9\x5e\xcf\x3c\xe6\xeb\x38\x43\x61\xcd\x80\x34\x67\x1d\x1e\x7f\x37\x01\x4c\x7b\x7d\xd5\x29\x84\x14\x7d\x61\xa7\x5d\x99\x76\x20\x0c\x25\x57\x4c\xa9\x94\x2c\x1e\xec\x66\x35\x22\x68\x29\x04\x1c\xcc\x31\x2b\x46\x79\x7c\x78\xf2\xee\xe2\xd7\xcb\xfd\xb3\xb3\xfd\x5f\x25\x4b\xdf\x62\x9f\x19\x2a\x25\xd3\x4c\xc5\x18\x15\x92\x77\xf6\x0e\xed\xa7\x34\xc5\xac\xb4\xd2\xb3\xa8\xe4\x56\xfa\x86\xb2\x8b\xf4\x3a\x64\xa8\x88\x50\x96\x94\xb1\xbc\xb4\x43\xd3\xa4\x8c\xa7\x4e\x8c\x43\x34\x17\x2f\xcc\xd9\xe3\xac\xc1\x6c\xb5\x52\x4f\xd3\x47\x56\xe3\xa8\xff\x3a\xcd\xc5\x62\x9b\x93\x7c\xd6\x37\x82\x8d\xbd\xd4\x9c\x79\x7a\x7b\xf6\xa9\xbd\x0d\x14\x6f\xea\xe3\xd9\x9b\xef\x85\x12\xf0\xc2\x74\xab\xbd\x01\x0a\x33\x08\x1b\xee\x48\x8e\x76\x98\xa6\x68\x8e\x66\xce\x40\xdd\x0c\x06\x37\x51\x34\xda\x8c\x98\x4b\xa6\x4d\xc4\x1d\x6c\x75\x2b\xb5\xc9\x36\x62\x07\xb7\xc7\x37\xd3\x06\x72\xa9\x3d\x60\x30\x0f\x41\x75\xe0\x55\xfe\xe9\x5a\xab\xba\x84\x04\xf1\x18\xdf\xa6\xd9\x39\x1c\x95\x62\x25\xe6\x82\xc2\x92\x2e\xb5\xd0\xce\x1d\x15\x52\x4d\x6f\x30\x8d\x7f\x25\x38\x9b\x3d\xda\x9c\x1e\x8f\xef\x45\xc2\x90\x35\xf6\x41\xb1\xc7\x9c\x8b\xc1\x5b\xb3\x71\xd8\xbc\xe3\xfa\xb1\xa7\xaf\x92\xd6\xe6\x9d\xa9\x44\x61\xb3\x91\xac\x71\x84\x12\x9c\xf3\x73\x32\x83\x99\xd1\xde\xcb\x98\x3a\x80\xc5\x64\x97\x20\x8d\x6e\x2b\xc0\xec\xe9\xf1\x5e\xd8\x12\xfc\x79\x68\xe8\x1c\xc1\xac\x07\xcf\x47\x16\x0d\x06\x3c\xbe\x2e\x53\x36\xc3\x33\x49\xae\xd5\x57\xb0\x3c\x36\x3d\x80\x60\xaf\xf8\x4e\xee\x15\x7f\x6a\x6c\x7b\x34\x82\xed\xc2\xdd\x06\xb3\xa4\x18\x0c\x0a\xb1\x29\x0c\x06\x65\xcf\xd4\x50\xeb\x1f\x85\xd8\x90\xa1\x69\x54\x99\x88\x34\xc0\xde\x38\x8a\x03\xa9\xcc\x28\xbd\x57\x8e\x6d\xd6\xe2\xa9\x67\x80\x68\x98\xa3\x33\x29\x5b\xd7\x94\xed\x22\x66\x8d\x14\xae\x12\xb7\xd8\xa9\x13\x6b\xcf\xa3\xe8\xa1\x51\x9a\x7b\xab\xe9\x2d\xcc\x4d\xe0\x29\x0b\xc4\x71\x15\x7b\xc5\xd5\x40\x32\x3b\xa9\xc6\x74\xe2\x40\x94\x4a\x76\x8f\xf0\xb0\xe1\x99\x6b\xc7\xfc\xfb\xef\xbf\xd5\x76\x1e\x7f\x19\x28\x23\x8f\xfe\xce\x48\xfb\xb2\x83\x25\x40\x7f\x77\xe4\x82\x1a\xbc\x05\x07\xa4\x90\x45\xf2\xe3\xf3\x51\x1b\xf1\xc0\x7c\xfc\x76\xa4\x8d\x48\x1a\xa4\xb7\x76\xeb\xa4\xb7\x76\x1a\xd4\x60\x8f\x57\x34\xe4\xab\x0a\x7e\x7d\x07\x36\x25\xfd\x3f\x75\x54\x49\xe3\x01\x76\x98\xcd\x40\xb0\xe4\xe6\x0d\xfb\x15\x4c\xc7\xc3\x6e\xd1\x08\x16\x2e\x88\xd3\x29\xc9\x8d\x5b\x9a\x62\x75\x7e\x70\xd7\x9b\x91\x93\xd2\x92\x13\x5a\x16\xf5\x8f\xcc\x4a\x4c\x2d\x39\xc9\xeb\x76\x51\xf0\x59\x13\x24\xd9\x50\x10\x75\x91\x1c\xf5\xa3\x49\x0b\xae\xb7\x83\xad\x9d\x27\xe7\xd8\x8d\x2a\x05\x6d\x52\xf0\xa6\xb6\x46\x3b\x82\xc6\x57\x25\xc9\x66\xc6\x69\xc0\x8a\x83\xd7\x98\xab\xb6\xfb\x8a\xd9\xeb\xee\xc8\x51\x77\x37\x2a\xb5\xd4\xf9\x46\xe3\x25\xed\x20\x94\x28\xab\x44\x61\x35\x46\x8a\xc1\x61\x09\xd3\x2a\x44\x70\x80\x20\xbf\x8b\x03\x6a\x8d\xd2\xca\xa6\x6b\xf9\x91\x14\x7c\x76\x4c\xae\x92\x43\xb3\x1e\x95\x29\x68\x63\xb7\xf6\xf7\xa2\x53\x63\xad\xce\x74\x0e\x0b\xee\x92\x69\x58\xb4\xd7\xd4\x81\x2e\x19\xa9\x23\x75\xa9\x38\xca\x3d\x9f\xfa\x4d\x55\xe5\x52\xeb\x2a\xae\xa4\xa9\xca\x1b\xca\xb4\xe3\x8f\xdc\x50\x1a\xd9\x9c\xbb\x12\xa7\xa3\xe3\x1b\x9c\x2e\x51\x9e\xb0\x78\x91\x66\x19\x9d\x86\x1a\xbe\x82\x7b\x90\x2e\xf9\x98\x78\xe3\xa1\xd3\x3d\xe9\x92\xf8\x2e\x4b\xa7\xf8\x86\x8a\xda\x84\x34\x1a\x29\x3f\x45\x6a\x6e\x3d\x58\x2c\x98\xaa\xe2\xe6\x44\x16\x95\x23\x1c\xa1\x5c\x79\xfc\x34\xf9\x58\xaf\xf1\x44\x6d\x4e\xc4\x19\xa5\x1f\xca\xa5\x8f\x65\x73\x21\xa0\x15\x4b\xcb\xf6\x1e\x24\x43\x0c\xc6\x64\xc8\xe5\x88\xd5\x1b\xb3\xe3\xc0\xef\x6a\xe4\x16\x66\x6a\xa6\xcc\xdd\x58\xe4\xab\xb6\xfc\xd8\xe5\x29\xa7\xeb\x8d\x98\xb4\xce\x72\x03\x8f\x4b\xd0\x27\xd8\x4f\x4d\x5f\x29\x09\x43\x52\x5f\xad\xc2\x5c\x66\x53\x27\x0f\x8e\x22\xa4\x5b\x84\xeb\xcd\x61\xb5\xb6\x54\x4e\x4d\xb5\xf4\xbd\x66\x72\x37\x7a\xd7\xc8\xeb\x7a\x76\x6b\xb3\x3f\x90\xba\x37\xa7\xa3\x2f\x57\xd0\x23\x4a\x35\x6d\xcb\x56\xac\x57\xe2\xa8\xc9\x6b\x52\xbb\x7a\xb5\x96\xe9\xd5\x39\x6a\xda\x67\x39\x66\x56\xa7\x5f\x52\xd9\xd9\xd3\x8a\x11\x69\x2e\x2b\x96\x95\xd4\x4b\x19\x18\x69\x44\x92\xdc\x7a\x58\x28\xf3\x27\xe5\x80\x0a\x3f\x60\xdb\x90\x67\x65\x02\x30\xed\x64\x4f\xc5\x9a\x33\xa9\x47\x64\xb8\xab\x8e\x07\xab\xf4\x4a\x1e\x6e\xd2\xe2\xf0\x36\xcd\x46\x2c\x56\x4f\x48\x95\x2d\xe6\xc0\x57\x50\x03\x3a\x5a\x3f\xdd\x45\x88\xbb\x4a\x58\x50\xf8\xd5\x76\xa7\x1e\x8b\x0b\x9e\x32\x7e\x9c\x5e\x61\xc9\x9b\xc7\x73\x2c\x58\x0f\x97\x8f\xda\x8d\x24\xb2\xb5\x59\xd8\x17\xd2\x46\xbe\xc1\x6c\x21\x16\x2f\xdb\x06\x02\xe2\xb5\x14\x89\xc4\xcc\x4b\x67\x6d\xca\xae\x29\x80\xba\x8b\xef\xac\x45\x27\xfb\xca\x80\x7d\x55\x3a\x0a\x7b\x2d\xcb\x1e\xe3\x46\x11\x53\x32\x8e\x77\xc0\x85\xdc\x23\x2a\x53\xd3\xc7\x89\x86\xd4\x2c\x07\x98\xe7\x4e\xd4\xbb\x0e\x05\x93\x72\x15\x72\x75\x73\x37\x72\xe5\x6d\x8f\x76\xb6\x53\x00\x47\x4d\x9d\xed\x08\x57\x51\x05\x91\x1d\xd6\x74\x5d\xcd\xe2\xe2\xed\x81\x0c\x47\x54\x53\x50\xda\x86\xe9\xef\xfe\x01\x2b\x38\x5d\xea\x09\xa3\xae\x35\x99\xe1\x99\xfd\xfa\x63\x6a\xfc\x3e\x1b\xe6\xa2\xa7\x40\xe0\xe3\xa3\xd8\x06\xca\xf8\xd3\xb7\x6c\xa4\xba\xcf\x7f\x3c\x39\x46\x08\x24\xe1\x52\x93\xc3\x95\x2a\xd4\x21\xdc\xb3\xeb\x0c\xeb\xdb\xa0\xb4\x5b\xab\xa3\xce\x1c\x2c\xa4\xb9\xa2\xae\xcb\xc9\x92\xc2\xd5\xe5\x64\x7b\x61\xda\xa9\xc7\xc0\x11\x4a\x3b\x94\x22\x25\x92\x77\xbd\xc0\x79\x6c\xed\x02\xf3\x11\x8d\x36\xa3\xe5\x52\x69\xd1\xa8\x14\x23\xb8\xbf\xfe\x7e\x12\xe6\x81\xef\x82\x92\x03\x2c\xe5\x63\x57\x94\x90\xdd\x77\x49\x29\xe9\x1a\x0f\x64\x49\xcd\x97\x50\x95\x23\x37\xda\x87\x94\x8f\x30\x92\xaf\x46\xbc\x8a\x7c\x48\x0a\x2e\xc8\x98\x4b\x41\xbb\xc2\xcb\x92\x15\x90\xa3\xe1\xa5\x72\x1b\x1c\x93\x8f\xf3\x09\x78\xcb\xa4\x1c\xa5\x09\x1b\x13\x45\x61\xb2\x4d\x7b\x58\x16\x17\x52\x94\x9a\x1e\xfc\xb0\xee\x9c\x6a\x98\x43\x6a\xdb\x58\x89\x0c\x21\x9f\x95\xeb\x09\xc8\xf3\xa9\x07\xc2\x20\x34\x3e\xec\xb2\xea\xd2\x61\x5a\x42\x67\xc1\x33\x6a\x1c\x86\x95\xda\xdb\x1b\x0e\xe6\xd2\x52\x54\xc9\x47\x36\x6e\x57\x98\x47\x32\x98\x81\x94\x74\x7b\x6b\x46\x53\x8c\x41\xad\xa7\x95\x78\xda\x74\xdf\x50\xd2\xaa\x15\x7c\x9d\x66\xaa\xbf\x21\x46\x3b\x2d\x11\xd8\x9f\xcc\x7a\xeb\x8e\x77\x27\x51\x5d\xaa\xdd\x28\x8f\xf3\xe3\xf9\xc4\x0a\xb9\x9f\x4a\xc1\xf9\xf1\xed\x24\x02\x26\x4e\x74\xcc\x49\x3a\xbd\x21\x8d\xb8\x9f\x9f\xd5\x3f\xbb\x3b\xcf\xbf\xdb\xac\x8b\x44\xca\x4f\xe8\xa5\x56\xb6\x4f\xe9\xa8\xf5\x44\x3c\x7d\xd5\x14\x81\x1a\xfc\xa3\xed\xc9\xf0\xf9\x77\x51\x7d\x6a\xeb\x59\x6a\x96\x50\x6d\x01\x29\x4c\x10\xcd\x0b\x63\x76\x8b\xdb\xd6\x0c\x9e\x81\xde\xde\x75\xb3\xfc\x42\xf8\x8d\xc2\x7c\xf1\x6d\x47\xde\xfc\x96\x01\x17\x14\x7c\x13\x61\x4d\xdf\xa9\xe2\x41\x39\xd2\x94\x88\x61\xd3\xfb\xf3\x5f\x51\x83\x55\x51\x02\x37\x68\x90\x19\x5e\xa6\x0c\xcf\xec\x5e\xbf\xb5\x2b\xf6\xf8\xad\x1d\x29\xa3\x7a\xfc\x9e\x5d\xda\xcf\xff\xea\x24\x3b\x4f\xe7\x78\x4d\xd2\xbf\x39\x49\x0f\x14\x00\xc0\x1b\x96\x5e\x37\xbd\x49\x6d\x96\x6f\xdd\x4a\xbc\xad\x39\xae\xd4\x92\xed\x3a\xc9\x2e\x1a\x50\xdc\x4e\xb2\xe7\x90\x0c\x90\xd7\x2d\x07\xca\xd2\xbc\x50\x51\xcd\xbd\xb9\xfe\xb6\xeb\x08\xde\x4f\xc8\x26\x0b\x6b\x9a\xcf\xf9\x13\x7f\xf7\x9d\x4c\x5c\xb7\x94\xeb\x48\xfb\x27\x43\xb8\xc3\xa7\xb3\x96\x7a\x57\x53\xde\x24\xb1\xad\xf3\x19\xa5\xbc\x51\x09\x3b\x87\xe5\x70\xee\x20\x8c\xf8\xde\xee\x68\xc7\x64\xfa\x99\x30\x5e\xa6\x99\x2f\x6f\x2d\xe7\x2e\xc2\x26\x0f\xf8\x4e\xaf\x69\xee\xf3\xe7\xba\x01\xeb\x12\x7d\x2b\x13\xc9\xb9\xbc\xcf\x9a\xa0\x5e\x26\xe1\x5f\xfe\xa6\x8a\x56\x22\xaa\x1e\x4e\x2f\xcf\xb7\xb3\xe2\x3d\x9b\xf5\xaf\xbb\x88\xa9\xcc\xda\xff\xcb\x61\x9f\x74\x88\xfa\x8e\x72\xff\xfa\xdc\x34\xd9\x27\x76\xf8\x5b\xf5\x57\xd9\x2a\x57\x5e\x3a\xc7\xd9\xbc\xab\x88\xef\x54\x11\x1e\xf9\xaa\x2b\xcb\x9f\x3c\x59\x94\x27\x50\x47\x8e\x3f\xab\x1c\x80\x04\xf2\x86\x32\x21\x8c\x76\xa5\xfd\x8b\x4a\xdb\x60\x26\xd7\x16\xf0\xb7\x1d\x95\xa9\x29\x6d\x75\xa5\xff\xd6\xa6\xaf\x79\x32\x75\x24\xff\xce\x99\x7a\x70\x1b\xe6\xed\x7a\x7d\x80\xfc\xe9\x2f\x7a\xf2\x6d\x90\xf6\xaf\x86\xf0\xf9\x22\xcd\xb2\x0d\x72\xfc\xcd\x4c\xed\xcd\x32\xfc\x79\xc7\xe9\x4f\xb5\xd8\xd6\x66\xf8\xee\x6f\x4e\x06\xb8\xe6\xf3\xcf\xb4\x3f\xc9\x5d\xc2\xf8\x1c\x74\x9c\x23\xdf\x3a\xd4\x5a\xe7\x86\x07\x5d\xd7\xe7\x55\xae\x14\x9b\x5d\x7b\xb0\x96\x0e\x3c\x66\xc7\xf2\x24\xaf\xaf\xdb\xba\x0c\x0e\x4a\xc7\xc1\xc0\x10\x59\xb3\x4e\x9b\xc2\x3b\xa4\x6f\xae\x34\x6f\x22\xdf\x46\xe7\x4d\x58\x60\xfe\x73\xca\x08\x38\x4c\x38\xef\xcc\xb2\x69\xe9\x0f\x94\x2d\x61\x81\xb9\x58\xb3\x33\x9d\xb9\x68\x51\xb7\x09\x41\x45\xd0\x4e\x00\xf5\xa4\xcb\xb0\x76\xd2\x37\x16\xa0\x37\xd3\xfa\x4b\x30\x43\x58\xbb\x22\xe8\xdf\xb5\x21\x6a\xd9\x7b\x1b\x1e\xac\xe3\x00\x0d\xd7\xaa\xe8\xeb\xec\x9d\xcb\xc9\xb9\xf7\xaf\xa8\xa9\xea\xef\xd2\xd1\x37\x34\x7f\xf5\x5b\x52\xab\xa1\x37\xe4\x9a\x02\x68\x4d\xfc\x54\x5a\x0e\x6c\x11\xc7\xde\x51\x99\xcd\xd1\x85\xb5\x16\x93\x23\x85\x29\xb8\x3f\x7c\xd7\xdf\x57\xd9\xb4\x42\x64\x7d\x2e\x08\xa9\x29\x25\x49\x97\x33\xb4\xa7\x6a\xc9\x18\xf1\x2e\xce\xda\x69\xf8\x5d\x93\x47\x31\x19\x8e\x40\xfb\x3a\xed\x38\x6f\xff\x22\x77\x82\xb6\xa2\xac\x83\xf1\x92\xe5\xb8\xca\xaf\x8e\x84\x72\x0f\xed\x82\x19\x71\x12\xfe\x4d\x9f\xa6\xda\x17\xa8\x63\xcb\xfa\x33\xa4\x33\x6e\x3d\xed\x81\x54\x3c\x77\xf8\xe7\xef\x6a\x32\xb2\x12\xd9\x43\x35\xa3\x0b\x75\x6c\x68\x9f\x9c\x8e\xd2\x24\x6b\xa6\x1c\x84\xd6\x94\xf5\x97\x4d\xca\x6a\xed\x03\x5d\xec\x94\x4d\x2f\xb7\x83\x8e\x74\xdf\xda\x74\x9a\x64\x47\xca\xef\x1a\x14\x3b\x92\x39\xdc\xc3\x23\x04\xff\x6c\x53\xae\x23\xf8\x57\x64\x02\x4f\xad\x4b\x66\x78\x38\x88\x0e\xd1\x91\x68\x57\x33\x99\x19\x4d\x67\x5d\x69\x74\x81\xa0\xe8\xec\x4a\xa4\x8b\x9b\x95\x4b\xff\xa5\x48\xc3\x8f\xd5\xdd\x33\x97\x11\xea\x50\xe0\x48\xda\x7f\x46\xfa\xf2\x65\xd9\xc0\x36\xf4\xd3\xde\xad\xe5\xfe\x8b\xe1\x47\xa5\x23\x5b\xe7\x8c\x33\x02\xf1\xff\x9f\xbd\x77\xeb\x6b\x23\xc7\x16\x47\xdf\xfd\x29\xc0\x67\xc6\xbb\x6a\x10\x1e\x1b\x72\x35\x51\xd8\x74\x42\xba\xd9\x43\x48\x0f\x90\x9e\xdd\xe3\xf1\x61\x0a\x5b\x06\x75\xec\x2a\x8f\x4a\x86\xa6\x83\xff\x9f\xfd\xfc\xb4\x74\x57\xa9\xca\x4e\xd2\xf3\xdf\xfb\xe1\x3c\x24\xb8\xaa\x74\xd7\xd2\xd2\xba\xaf\xa7\x9b\x00\x5e\x55\xf6\x1e\x07\xf7\xfe\x13\xd5\x3b\x9d\x3e\x7c\xdc\xdf\xab\x29\xf4\xd4\x9e\xc0\x3a\xe8\xe8\x3b\xa7\xab\xe6\x64\xed\x39\x13\x6d\x24\x79\xf6\xe4\xa0\x7e\x59\xce\x23\xb1\x22\x83\xe5\x78\xba\xb7\xc9\x72\x88\xa6\x4e\x22\x54\xb7\x3e\xcd\x4f\xf7\x37\x6d\x45\x0a\xcd\x1b\x5a\xda\x08\x07\x89\x96\x8e\xff\x15\xe3\xcb\xaa\x12\x88\xe4\xa9\x38\xa4\x8d\x8d\x4a\xf0\xcb\xca\x92\x30\x7e\x51\x47\x81\x26\x4f\x9f\x99\xab\xe2\x78\xbe\xe0\x0f\x3e\x8f\xe5\xdd\x0d\x92\x66\x96\x92\xab\x5a\x55\x2f\xca\xf1\x70\x84\x28\xee\xb5\xfc\x94\xaa\x3c\xfd\xac\x74\x62\x9f\xe7\xe2\x7a\x03\x05\xe8\x6c\x76\x9d\x41\x60\x18\x98\xc2\xa0\xfd\xe6\xf4\xe8\xe3\xc5\x71\x7b\x87\xee\xec\xac\xac\x41\x05\x80\x58\xa2\xb7\xd4\x4e\xc8\x52\x83\x12\x4e\x13\x63\x80\xe1\xaa\xab\x72\xa5\xc6\x03\x71\x4e\x3c\xf1\xbc\x51\xdf\xca\x1d\x48\x48\x17\x86\x08\x99\xd0\xae\xc9\x4c\xa6\x11\x30\x21\x69\x72\xe3\x20\x73\x50\xbc\xc6\xbd\x83\x62\x77\x57\x3b\x0b\xe5\xc3\x42\xc5\x47\x95\xf4\x43\xa6\x1a\xb0\x84\xdb\x5e\x8a\xb2\xae\x9e\x78\x92\xa2\xde\x36\xc6\x85\x22\xfb\xa4\xf7\x27\x28\x56\x56\x4e\x23\x4a\xd5\xa2\xa6\x66\xf5\x2a\x6a\x71\x7e\x05\xe1\x2c\x90\x18\x93\x88\x4d\x88\x15\x77\xcb\x81\x29\xc1\xa3\xa2\x95\x72\x2e\x28\xb6\x07\x20\xe6\x9c\x80\x35\xe9\x67\x96\xf4\x3d\x8b\x2b\x72\x98\xf0\x60\xe9\x1d\x11\x52\x92\xa6\x03\x57\x4c\x23\xed\x67\x58\xd2\xf3\xda\x88\x53\x30\xd2\x84\xb1\x81\x52\x49\xac\x2d\xe7\x77\x19\x73\x58\x04\xd5\xc9\x7e\xd0\x49\x74\x94\x5a\x82\xa5\x2b\x3d\xd9\xa4\x52\x28\xcb\xd2\x95\x9f\x6e\x52\xf9\xac\x98\x98\x34\x17\xea\x1e\x80\xe0\xc6\xcd\x6c\xf8\x4b\x8f\xb5\xf6\xe6\x5b\x8d\xba\x60\x77\xb5\xaa\xd0\x33\x84\xbf\xef\x22\x5d\x82\x8b\xb4\x84\xae\x50\x73\xe7\xde\x60\x3e\x23\xe0\x22\x07\xf3\xd2\xca\x64\xa2\xad\xac\x93\x42\xfa\xe0\x15\x91\x54\x84\xad\x92\x60\x09\x63\x46\x83\x35\xf3\x82\x15\x2d\xd7\x10\xcd\xcf\x5e\x6a\xe2\x43\x1f\x8a\x1a\x3c\x68\xe5\x62\x40\xcc\x34\x89\xf4\x9e\x37\x5b\x4e\x2c\x8a\x66\x9b\x09\x2d\x17\x56\x31\xcf\x57\x2b\x24\xeb\x29\x86\x64\xa3\xba\x25\xfd\x8d\x98\x8a\xf2\xaa\x58\xe3\xfa\x64\xd9\x91\xb1\xcc\x8a\xe9\x5a\x6a\x54\xc2\xf4\x7c\x02\xbd\xd0\x8f\xbe\x9e\x4d\xeb\xba\x78\xc2\x8d\xa3\xac\x8e\xb8\x4a\xb1\x17\xb6\x16\xe5\x87\xb9\xd6\x6c\x2b\xbb\x0b\x89\x5f\x07\x3d\x13\x83\x35\xd4\x66\xe3\x1c\x51\x1b\x09\x05\x34\x57\xbf\xca\x64\xdb\xf2\x28\x5e\xde\xd2\xf2\xc4\x98\x93\x4d\xd2\x84\xa6\x29\x92\xfe\xdb\xa4\x2c\x69\x91\x1b\xab\x12\xdf\x90\xc2\x58\x4d\x68\x4b\x89\x89\x72\x15\xf2\xa2\x94\x18\x37\xc3\x3a\x17\x1b\x63\x5a\x91\xbb\x5e\x00\x14\xf3\xca\x44\xba\x59\xa9\xad\xce\xa5\x83\x24\xca\x30\xf3\xed\x75\x92\x02\xe5\x69\x4b\xa9\x9e\xb3\x43\xde\xbd\x95\xaf\x33\xc7\xdd\x77\x40\x0f\xad\xbd\x50\xf6\x70\x4d\x4e\x8b\x71\x36\x4b\x0a\xb0\x91\xbf\x09\xc4\x15\xe2\x85\x09\x41\x57\xa4\x81\xbf\x83\xa0\xbc\xc3\x79\x59\x33\x34\x65\xcb\xdc\x3b\xc8\xad\xaf\x7e\xbe\xb3\x93\x6a\xeb\xf6\x61\x3e\x4a\x5b\x36\xab\x9d\xd6\x6a\xb9\x5d\xc8\x59\x7d\xe9\xd2\x11\x19\x24\x00\x8c\xa8\x33\xe9\xc5\x43\xa7\xae\x7f\xf6\x36\xc6\xd4\x44\xac\x0b\x56\x90\x8a\x15\xb4\x3e\x13\xe5\x5a\x4f\x09\x41\x81\x38\x8e\x4b\x72\xc5\xc1\x11\x49\x2d\x7e\x89\x40\xcf\x6b\x42\xa3\x2f\x71\x31\xec\x8d\xd0\x0c\x17\xd6\x6b\x9b\xc3\xf1\x79\xf0\x35\xf6\x19\xe8\x5f\xdc\xf5\xf8\x9e\x34\x39\x97\x18\x13\x7d\x77\x17\x99\x25\x47\x22\x79\xab\xfc\x0d\xce\x87\xd4\x37\xcc\xb7\xf0\xd1\x60\x9a\x4f\xa7\x49\x13\xb0\xa6\x26\x1e\x7c\x6f\xd4\x62\x98\x99\x49\xa3\x18\x18\xe6\x2a\x30\x40\x08\x8a\xc1\x24\x58\xfd\x24\x58\x38\x89\x8f\xb9\x0c\xa5\x58\xb1\xeb\xf7\x34\xd2\x91\x60\x24\x92\xed\xf2\x01\x52\x31\xa5\x55\xcb\x71\xcd\xae\x56\x9d\xfa\x74\x1d\x19\x50\xa1\xbe\xa6\x0a\xb8\x60\xeb\xaf\x20\xcc\x82\xb1\x81\x93\x28\x41\xfe\x46\x54\xdb\xb9\x72\xf5\x03\xd1\x15\x20\xb5\x20\xca\x34\xd7\x51\xa6\x0b\xcc\xab\xca\x78\x19\x68\xc5\x43\xc7\xbe\xc3\x35\x49\x0f\x15\xe5\x18\x62\x43\xd7\xa0\x55\xe0\xdd\x81\xb9\xc9\x22\x2b\x29\xe8\x14\x19\x8f\x25\x50\xcb\x04\xa6\x9f\x66\x7e\xdd\xd2\x89\xf3\x47\x52\x47\x03\xf3\xfc\x19\x62\xc0\xae\xc8\xf6\x40\x9e\x6d\xcd\xc8\xa3\x94\xd2\x85\xb5\xa2\x4b\x48\xa7\x43\x5c\xb3\x3a\x87\x6a\xb1\x17\x74\x12\xbe\x55\x13\xf0\xcf\x68\x4c\xd6\x2d\x17\x5a\xd3\xcb\xde\x81\xb0\x4e\x40\x51\xba\x49\x2d\x27\x90\x48\x5c\x85\x7b\x00\xff\x1d\x4b\xef\xf5\x0c\x19\xbf\x60\x89\x3b\xf2\xe4\x79\x1f\x85\xeb\xe7\xc7\x14\xac\x91\xda\x56\x48\xc1\xbb\x9e\x59\x59\x67\xd5\xbc\x65\xa5\xd3\xc0\xee\xb5\xa6\x53\x6f\xd7\x9e\xbc\x80\x98\x60\x70\xb2\x25\x41\xa8\x60\x44\x46\xfc\x59\x99\x70\x39\xf5\xab\x2b\x63\xa5\xa2\xa5\xec\x7b\x26\x09\x5a\x23\x19\x29\x3b\x9d\xa4\x74\x95\x0b\xff\x2e\x2a\x57\x45\xbb\xdb\xde\x4e\xb2\xc7\xc7\xf2\xf1\x91\xa7\x68\x8a\x21\xe8\x31\x79\x7c\x24\x2e\xa5\xfb\xf8\xb8\x9d\x6c\xe7\x8f\x8f\xa0\xfb\x18\xf6\x46\xfa\x82\x43\x13\xfc\x79\x9e\xd1\x7c\x90\x21\xb1\x20\x83\x12\x81\x9d\xe0\x80\xaf\x5a\x15\x48\x10\xf3\x9e\xa0\xe2\x1b\xc9\x68\x4d\x10\xa0\x31\x9a\x7a\xa4\xf4\xf2\x30\x99\x55\x8e\xc8\xd2\x3f\x1f\xb2\x80\x22\xa3\x97\xe2\xd9\xb3\x5f\x13\xec\xdc\x6c\x03\x8a\x7c\xf6\x2d\x14\x79\x11\xb7\x6b\x0b\x61\x44\x41\x08\x9a\x39\x5a\xa7\x59\xa7\x93\xcc\x9c\x58\xc6\x63\x81\x31\xed\xfc\xc4\xed\x35\xd6\x06\xb5\xc1\x06\xa6\x31\xbd\x49\x42\xdc\x8e\x10\x4f\x65\x60\x89\xdf\x13\xe6\x64\xb4\x44\x3c\xd6\x34\x6e\x8b\x28\x96\x40\x0c\x4a\x47\x92\x6e\x44\x20\x62\x7c\x80\x40\xca\x74\x03\x5d\x1b\xd1\xa6\xe8\x80\xfc\x94\x80\x21\xa2\x7b\xd3\xc3\xd0\xcc\xb6\x2a\xd9\xac\x8d\x53\xb0\xb7\xb4\xd5\xe5\x2c\xa2\xf8\xa8\x32\xa9\xcd\x95\x77\xca\x2d\x75\xa8\x64\x2a\xeb\xb4\x78\x13\x25\x5f\x92\x4b\x3c\xe8\x21\x2a\x2f\xe1\xc1\x76\x7f\x65\x89\x8d\x5b\xdc\x3b\xb8\x7d\x35\xd5\xc4\xc6\xad\x36\xef\x5b\xe0\xe9\xf0\xd6\x04\xe7\x5d\x74\xc7\xb7\x19\x3b\xe2\x49\x2f\x55\x11\x7a\x3b\xed\x81\x28\x36\x37\x41\x84\xdb\x1d\x65\x06\xd5\xc6\x18\x2f\xd2\x39\x5e\xb6\x64\xfc\x23\xf1\x89\xe6\x77\x84\x95\x44\x7f\x9a\x99\x50\x25\xda\x22\x7c\x5b\x7c\xa8\xf3\xa6\x6a\xcd\x31\x5b\xcd\x0f\x2d\x54\xf8\x57\x62\x32\xaf\x4c\xf6\x76\xa7\x6f\xa7\xdb\x5b\x81\x77\x6c\x4d\x65\x89\x50\xd7\xd5\x77\x23\xd6\xfe\x67\x7b\x40\xa7\xc9\x76\x96\xca\x77\x32\x10\x50\x26\x08\xde\x07\x9c\x09\x2a\xf5\x06\x2f\x5a\x02\x8a\x6f\xf0\xc2\x90\x82\xa9\x0a\x8c\x71\x67\x4c\xe7\x6f\xd2\x03\xc8\x11\x75\x6d\xc2\xc5\x8b\x4b\xef\x61\x78\x3d\x6a\x1e\x4e\x7f\x95\xa6\xab\x95\x99\x8e\x55\xce\xea\x4d\xdc\xe9\xa3\xed\xed\x64\xf9\xf8\x38\x7b\x7c\x64\x8e\xac\xee\x0a\x4f\xac\xac\xee\xea\x35\xee\x1d\x5c\x69\x59\xdd\x3d\x9e\x0c\xaf\x46\xe8\x18\xdf\xab\x13\xd9\xba\xef\xaa\x0e\x25\x75\xa4\x55\x24\xc9\xb1\x22\x83\x5c\xad\xef\xb1\x12\xd0\xb9\x18\x2c\xe1\xb5\xa7\xe9\x1b\x95\xaf\xf1\xb3\xfc\xe5\xca\xd8\x7a\x64\x2c\xb0\x71\xe8\x1c\x1f\x75\x83\x42\x99\xe6\xb1\xfc\xab\x3a\xeb\x74\x92\xcc\xbd\xaa\x37\x88\x29\x68\x89\x9e\xd2\x7a\x44\x87\x61\x01\xcb\x58\x18\x40\xe3\xa9\x12\x8a\x0c\x93\x06\x1a\x4d\x54\x5b\x23\x66\xac\x5e\x0c\xdb\x3d\x6f\xee\xa8\xf4\x03\xf2\xad\x56\x70\x91\x3d\xf8\x06\x18\x15\x37\x14\x45\x00\x1a\x7e\x1d\x6d\xf7\xad\x61\x82\x26\x46\x3d\xe7\x39\xf9\xd2\x23\x01\xe0\x14\x37\xa8\xe6\xb5\x0b\x38\x2a\x7c\x57\xe5\x3a\x3b\x2f\x0f\xda\x2a\xe4\xa7\xd1\xa4\xf4\x8c\x53\xe3\x29\xbd\xb6\x7e\x87\x09\xaf\xd2\x9f\xe1\x9d\x5e\xd5\xd4\x47\xac\x9e\x95\xfb\x8d\x47\xc0\x77\xad\x5f\x03\xf8\xe3\xa8\xd0\xef\x05\x7e\x9f\xf1\xdb\xee\x9c\xe6\x20\x55\x02\x26\x35\x9c\x4d\xe1\xcc\xd0\x5a\xa0\x25\x16\x27\x64\xb8\x77\x90\xbd\x2a\x0e\x32\xc1\x64\x46\xae\xf1\xe9\x02\xf1\xdd\x2c\x62\xe9\xc1\x86\xd9\x28\x5d\x55\x78\x88\x75\xdb\xa6\x2c\x4a\xc4\xd0\xec\xc9\x6d\xd8\xbb\xb2\x3e\xf7\x64\x8c\x9b\x52\x5c\x8c\x0c\x16\x16\x37\x75\x1f\x8e\x74\x66\xd7\x48\x1a\x44\x32\x64\xa3\x16\x24\x7b\x8d\x37\x9f\xa7\xab\x78\xf7\x10\x9a\x3d\x91\x4c\x9b\xa2\x69\x36\x18\x74\xa6\x98\x3f\x60\x48\x34\xbf\x50\xd5\x57\x88\x01\xeb\x9b\x58\x07\x00\x54\xd7\xb0\x4a\xd3\x38\x20\x7f\xec\x63\xdc\x3b\x24\xaf\x77\xfb\x87\x1c\x93\x41\x52\xe1\x5c\x64\x49\x99\xd8\xf6\x49\xba\xa6\x40\x3f\x8c\x85\x4f\xf3\x9b\xf6\x40\x55\x31\x4b\x8d\x18\xde\x0b\xa3\xce\x93\x2c\x17\x05\x7b\x8f\x04\x31\xbc\xef\x05\xca\x87\x48\xeb\xe2\xe3\x5e\xf8\x69\xa9\xe5\x17\xe2\xeb\xbe\xf3\xd5\xf3\xb3\x76\x25\x54\x27\xf9\x5d\x36\xa3\x93\x2d\xb3\x6a\x5b\x8b\xac\x2c\xc9\x04\x12\x29\xba\x1c\x7a\x5b\x3a\xd9\xaa\x20\xd5\x25\xfd\x8d\x9c\xcc\xe7\x64\x42\x33\x4e\x12\xfe\xea\xd5\xfe\xa3\x60\xb5\x1d\x36\xae\xbf\x0f\x99\x38\x0a\xbf\x68\x5c\x21\x4e\x5e\x63\x9b\x11\xf3\xf1\x91\xbc\xea\x1d\xc6\xd7\x94\xa7\xa2\xa7\xa7\x03\xa2\x39\xcf\xaa\x00\x21\xc2\xd7\x1b\x06\xd2\x60\xa2\x88\xb3\x98\x6e\x31\xe2\xe2\x52\x67\x1b\xba\x17\x72\xd2\xb7\xda\x3b\x07\x5a\xab\xb9\x4c\xea\x5a\x7b\xda\xc8\x97\xab\x36\xa3\x31\x1f\x83\x2b\xd5\xcb\x32\xd5\x18\x1f\x86\x68\x2c\xa3\xaf\x32\x8a\x73\x1d\x2b\xa6\xc0\xb9\xef\x5f\x94\xe1\x3c\x12\x2b\x66\x1b\x63\xda\xe9\xa8\x5f\x45\xa7\x93\xa9\x70\xa1\x1a\x4f\x94\xb8\x77\x50\x5a\xaf\x97\x72\x07\xef\xa5\x7c\x58\x8e\x86\xbd\x11\x6e\xff\x67\x7b\x47\xfd\x6e\x85\x26\xf9\x31\x4f\x23\xea\x61\xc0\xd0\x71\xc9\x30\x32\x32\xac\x38\xda\xee\x23\xd6\xe9\x30\x88\x59\xa9\x83\x18\xd8\xab\x44\x49\x1c\x9b\x97\xae\x66\x27\x10\x6d\x12\x41\xf1\x14\x15\xe1\xf7\x4c\xe5\x51\x77\xce\xc7\xcb\xa7\xc6\xb3\xbb\xa8\x0a\x37\xeb\x2c\x59\x9e\x21\x1f\x73\x40\x6d\x1d\xee\xa4\xd6\xf4\xfa\xe5\xf3\x0a\x6c\x79\x32\xb3\xf0\xab\x46\xc2\xd0\x3a\xf7\xec\xe3\x7d\x4b\xa2\x67\xf1\x76\xf5\xc0\x62\x71\x3d\xea\x8c\x8d\xf6\x9b\x9b\x9a\xc7\xdc\x95\x4d\xe0\x80\xcd\x44\x64\xdb\x9e\x2d\xcd\x93\x5e\xfd\xf1\x8d\xdd\xa0\x2a\x12\x5b\x9d\x4b\x77\x64\xe0\xce\x6e\xef\x3d\x57\x82\x48\x27\x02\xfe\x86\xb0\x67\x2e\x09\xaa\xd3\x78\x55\x3e\xf2\x74\xd0\x73\x3a\xdb\x7f\x86\x72\x04\x72\x26\x76\xd8\x17\xfc\xaa\x1e\xbf\x8d\xf1\xf5\xef\xeb\xfb\x79\xac\x6f\x1b\x17\xed\xf7\xed\xb8\x7a\xd2\x4a\x13\xd0\xc4\x19\xd3\x53\x10\x09\xca\xa1\xf8\x22\xf4\x2a\x34\x6e\x44\x3a\xcb\x1b\x4e\x8a\x9b\x1c\x85\x42\x1d\x6a\x8f\x1d\xda\xdb\x38\xea\xfe\x6a\x70\xae\x88\x75\xeb\xa1\xb9\x59\xa0\x1b\xc6\x6a\xae\xb3\xf9\x53\x07\x16\x48\x44\x7b\xe5\x69\xf6\x2c\x72\x4c\x48\x57\x70\x6c\xd2\x13\xbc\x98\x3c\x28\xbb\x11\xcf\xa8\xa6\x4e\xb2\xa3\xe3\xae\x1f\x9f\xbd\x3d\x39\x3b\xb9\x3c\x39\x3a\x6d\xeb\xbc\xa3\x3c\x51\x5b\x2d\xcd\x79\xf2\x14\xb1\xc4\x35\x60\x72\xe3\x9e\x2b\x9e\x84\x72\xbf\xe5\xa0\xbc\xdb\x49\x7c\xe9\x5c\x73\x19\x7f\xda\x81\xdd\x97\xc5\x0f\x30\x6d\x98\x7f\x8e\x49\x57\x06\xe8\x82\xb4\x5a\x2a\xf8\x7e\x2b\xce\xde\xb2\x0a\xe7\xca\x63\x9c\x2b\x4c\xa1\x12\xe6\x9d\x07\x61\xde\x69\xa7\x43\x13\xcd\x5c\x3a\xe1\xd7\x62\x04\xb6\x72\x18\x77\x49\x08\xed\x3c\x4e\xaa\x5e\xe0\x1a\xf4\xbc\xb7\xb2\x1f\x27\x00\x57\xdc\xd2\xa4\xca\x5a\x43\x37\x56\x37\xae\x24\xae\x87\x9a\x97\x93\x41\x3a\x34\x4a\x33\xe1\xc7\x43\xcd\xc3\x36\xd1\x5a\xf7\x5e\xcb\x72\x2d\xbd\x03\x6e\x19\x16\xae\x99\x35\x15\x81\x9d\x8f\x9c\xc4\x21\x3a\x6b\x70\xe1\x9e\xbe\x50\x7a\x41\xd3\xcf\xcc\x15\xb3\x06\x32\x31\x06\x5e\x76\x0e\x5c\x57\xbe\x93\x59\x49\x9a\xbe\x83\x54\x2f\x35\x7a\x39\x67\x3f\xb4\x0e\x30\x7d\xf5\xea\x49\x8b\x76\x3a\x49\xf1\x88\x5f\x80\x57\x80\xf8\xf5\x5c\xa7\xca\xf4\x1c\xf8\x55\xc6\xa6\x0c\xdc\xd3\x5b\x96\x46\x03\x37\xf5\x25\xee\x1d\x2c\x5f\x99\xa4\xf6\x4b\x6f\x71\xca\xe1\xd2\x65\x53\x01\x13\x65\x8a\x7a\xd1\x41\xc5\x62\x70\xa4\x82\x06\xb9\xc1\xfe\x48\xaa\x36\xb0\x6a\xc1\xc2\xb5\x05\x8b\x26\x49\x1b\x4d\x4a\x42\xc0\xd1\x42\xe6\x3a\x51\x0d\xd8\x9b\xf0\x55\xf2\x29\x6d\x85\x49\xa0\x7e\x84\xd5\x3a\xaf\xb3\x36\x71\x42\x2d\x35\x24\xf5\x6d\xd6\xaa\xe6\x31\xad\x6a\x6e\x99\x7e\xaf\x6f\xb5\x6c\xe2\xa3\xcc\xdc\x45\xb4\xd6\x34\xd4\x86\xe5\xde\x05\x55\x63\x2f\xf4\x0c\x0a\x5a\xe5\xcc\xb7\xf6\x15\xb6\x12\xe9\xcc\x25\xd2\xe3\x57\x88\xee\x0c\x79\x75\xab\xb2\x22\x70\x4a\xca\x6d\x95\x3a\xbb\x6b\xc5\x8e\x15\xaa\x59\xa8\x54\x54\x2a\xc4\x05\x08\xba\xd2\x4a\xc0\xc7\x8f\x02\x3e\xaa\xf9\xbf\xce\x61\x1b\x2f\xff\xd7\xc0\x88\xba\x55\x0f\x4d\xf8\x96\x44\x65\xc7\x0b\x36\x8f\x37\x42\xc9\x06\x80\x61\xf9\x67\xdb\xd3\x57\x80\x48\x23\x54\x68\x12\xc1\x74\x70\x00\x11\x6f\xf8\x61\x4c\x74\x98\x54\x11\x82\x53\x73\x95\x3a\x16\x06\xae\xc0\xd1\xd9\xdd\x48\xca\xb7\x4b\xd8\x81\x37\xf5\x06\x67\x4e\x6e\x06\x71\x3b\x96\x2a\x8b\x9b\x02\xa1\x84\x09\xbe\x4f\x7e\x50\x41\xbc\x13\xea\x5c\x27\xd6\x34\x4d\x66\xc3\x52\xe0\xa0\x28\x90\x1a\xa0\x40\x0e\x38\x38\xe1\x73\xea\x2e\xec\x73\xd9\x81\x02\xe3\x0b\x0d\xc6\xc6\x2a\xed\x0d\x4c\xf1\x17\x77\x53\xcc\x0c\xdd\x30\x47\x82\xa6\x33\x71\xf3\x34\x72\xe7\xb1\x08\x28\x82\xf8\x0d\x39\x69\xef\x72\xd7\xd5\xad\x91\x8f\xca\x13\x61\xb6\x4b\xa7\x0d\x75\x04\xb5\x03\x4f\x6c\x8b\x54\x68\x2b\xbe\x32\xa1\x5c\xaa\x89\xfe\x7e\x81\xa9\xbd\xc7\x32\x92\xd3\xc9\xda\x29\xc6\xe3\xa6\x9f\x7a\xf1\x9c\x54\x74\x27\x29\x4f\x50\x85\x60\xaa\xf6\xcd\xbd\x8c\x29\x73\x6a\x4b\xfa\x71\x9f\x14\x91\xab\xe8\x1f\x13\x02\x4a\x56\x56\x84\x0d\xb6\x51\x9a\x3c\x71\x8c\x6b\xa9\x26\x2f\x51\x08\x9b\x3b\x09\xd2\xae\xae\xb4\xa4\xbb\x82\x38\x58\x37\x2b\xab\xc7\xb0\x1a\x8f\xfe\xd0\xf9\x3d\xf0\x66\x4e\xee\xb7\x6e\x02\x22\x10\xf2\xd3\x3b\x49\x5b\x2b\xab\x87\x3e\x9b\xad\x56\x3a\x36\xb0\x9f\x8c\x80\x49\x10\x8b\x5d\x7c\x3e\x74\x1f\x7e\xe7\xb1\xf4\xcc\x58\xfe\xe6\xed\x5a\xcd\x88\xbc\xad\x3d\xac\xbe\x1a\xc4\x00\x80\xdc\x6f\x7d\xf8\x1d\x16\x4c\x80\x79\x98\xac\x58\x67\x07\xf6\x92\x14\x37\x65\x24\x1e\x85\xf6\x63\xdf\x9a\x3a\x58\xe5\x02\x25\x5d\x9b\xfd\xf2\x7c\x99\x73\x3a\x77\xd2\x61\xfe\x8d\x51\x4e\x3e\xe4\xb3\x07\xfb\xea\x07\x92\x2d\x4c\xce\x4b\x6d\xa0\x46\xba\xee\x6f\xd5\x8c\xfb\xca\x34\xe4\xbd\x3c\x3e\x3d\xbd\xfa\xcb\xd9\x87\xbf\x9d\x5d\x39\x54\xed\xd5\x8f\x1f\x2e\x4e\x2e\x4f\x3e\x9c\xb9\xc1\xdc\x18\xfe\xbc\x6a\xad\xaf\xd1\x53\xf7\xae\x5a\x8e\x29\x23\xe4\x37\x02\x01\x70\x68\x0d\x0e\x31\xb1\x23\x05\x37\x5f\xe2\xe1\x48\xf9\x8f\x30\x96\x3d\x94\x78\x98\xab\x67\x2e\x5d\xf0\xf4\x67\x89\xc3\xec\xb3\xba\x25\x27\xe6\x85\x94\x70\xaf\x0b\x6f\x14\x51\xe3\x38\x32\x28\x35\x26\xa3\x19\x27\x36\x26\x16\xe8\x33\x06\x5e\x29\xa0\x9a\x48\x2a\x13\xb2\x38\x02\xc1\x1a\x7d\x8f\xcd\x8f\x6c\x72\x7b\xc5\x14\x40\x56\xe9\xa3\xe5\x1d\x43\x36\xf2\x63\x73\x59\x1d\x0f\x97\xbf\x43\xd6\x0d\x4c\xa4\x74\x27\x86\x89\x73\x26\x2a\x17\x7b\xcd\x3c\x55\x21\x6f\x9a\xb7\x8d\x61\x19\xd5\x26\xd5\xb7\x9b\x78\x7b\x27\x9b\x66\xa9\xb7\xc3\xb6\x3f\xe5\x12\x69\x45\xc7\x91\x6e\x21\xbd\xb5\x5c\x28\x3a\x7d\x90\xaa\xa0\xe8\x56\x3a\xf1\x93\xc4\x50\x58\x64\x2b\xb9\x9a\xa3\x84\xa4\xba\x39\x2a\x38\x5b\xb3\x76\xba\x94\xb7\x78\xbc\xf8\xb1\x28\x22\x18\xfc\xb3\x1a\x86\x37\x26\x24\x97\xdf\xdd\x0a\x75\x91\xab\x77\xea\x01\xa9\xae\xbc\x7e\x57\x4e\xd0\xb6\x0a\x1a\xa0\x8a\x19\x5e\x77\xc5\x9b\x80\xb1\x04\x79\x27\x96\x9b\x21\xba\x07\x97\xeb\x41\x7a\xc7\x95\x9b\x61\xfa\xa7\xd6\xdb\x71\x3f\xd7\xb1\xf5\xfb\x32\x86\x6a\xfa\x6c\x73\x33\xbf\x86\x23\x6e\xa2\x32\xd7\xb2\x2d\x6a\xf8\x43\x32\x52\x3e\xb2\x67\xd5\x1d\x77\xcb\xab\x4e\x6d\xf9\x8b\xb5\x87\x5d\x8b\x42\x8d\x86\x80\x39\xe7\x9f\x9b\xf3\xdf\x1c\xd3\xac\xc5\x86\xf9\xc8\x34\xa5\x42\x4d\x53\x1b\x02\x56\x8d\xa6\x3a\x8e\x0a\xb2\xd0\x63\xf7\x12\x8d\xd7\x41\xb8\xde\xa4\x21\x91\x06\xe7\x18\x63\x5f\xce\xac\xf6\x4d\x7c\xaf\x56\x09\x02\xcb\xaa\x1f\xae\xc2\x5a\x2f\x62\xdd\xc9\x56\xe5\x9c\xcc\xf5\xc1\xae\xa5\x06\xba\x2b\xf7\x5e\xa1\xa4\x36\x51\x26\x24\x5f\xe7\xf5\x62\x1c\x5b\x0c\xe8\x73\x94\x77\x3a\x09\x35\xb0\x9f\x1b\xd8\xa7\x1a\xf0\x73\x0d\xf8\xd4\x40\x7d\x6e\xa0\x9e\x5a\x90\xa7\x1b\xc1\x3b\x35\xc0\x9e\xeb\x5f\xa9\xb4\x37\xe7\x21\x83\x93\x6b\xae\x97\xe2\xbc\x7a\x10\xe8\x17\x02\x36\xfd\xc2\x83\x43\xff\x57\x1d\x04\xfa\x45\x07\x81\xfe\x6f\x39\x08\xf4\x9b\x0f\x42\xbe\x12\x5c\xb2\x4b\x0d\x66\x2d\x29\x93\x8c\x1e\x01\xa6\xb8\x4b\x9d\x2c\x2a\x01\xb5\x42\xbd\xb8\x25\x95\x92\x1d\x49\x77\x79\x97\xb1\x7c\x15\x05\x4c\x66\xc5\x31\x2c\x26\x8e\x59\x73\xa7\xcb\x49\xba\x5d\xad\x23\xc8\xbc\xb2\xce\x95\x9b\x6f\xb2\xbc\xd5\x26\x00\x46\x72\x93\xf5\xbf\xb6\x92\x5c\x9a\x21\xd9\xed\x8f\xd6\xcb\xca\x64\x61\x3d\xba\x15\x62\xab\x24\xb3\x02\x06\xbd\x79\xa5\xcc\x57\x5f\x77\x37\xab\x9b\xf9\x16\x38\x02\x25\xae\x93\x49\xdb\x7b\x56\x12\xc2\xeb\xd2\x7a\xd1\xdf\x6a\xf3\x79\xf5\x77\x92\xe4\xf9\xb3\x17\x1d\xd3\xbc\x98\xfd\xf5\x43\x36\x99\xb0\xc4\xe9\x26\x4d\x5f\xbf\x7e\x91\x1a\xb7\x45\x5a\x2a\xf1\x50\x6d\xb3\xbd\xbd\x27\x6b\xdb\x34\xcd\x09\x28\xa9\x6b\x69\xef\xe9\xd3\xcd\x1b\x2a\x16\xfd\x46\xc1\x77\x7d\x1b\x3b\x7d\xb7\x95\xbd\xaf\x6d\x65\xcf\x6d\x65\xff\x6b\x5b\xd9\x4f\x23\x59\xd5\x66\xbe\x43\xd5\x23\x79\xf5\x6a\x6f\x65\x78\xcb\xa5\x32\xbc\xaf\x85\x1f\x63\x9c\x67\xe3\xcb\x5b\xa6\x4a\xc3\x92\x4b\xc3\xe9\xa7\x71\xb6\xc8\xc6\x94\x3f\xe0\x7e\xef\xc9\x8b\xa7\xcf\x9f\x21\x47\xe8\x28\xe3\x38\x82\x8a\x0e\xd8\x36\xd0\xd1\xc9\xea\x2d\x0b\xb0\x02\xef\x7f\xa4\x39\xdf\xdf\x33\x86\x1e\x96\xd3\xd3\x59\x09\xd4\x10\xec\xd2\x28\x23\x43\x77\x44\x79\x30\xa2\x9e\xe3\xed\x12\xed\x49\x0d\xd9\xeb\xaf\x99\x4f\x5c\x84\x81\x53\x25\x96\xa0\xbf\x91\x37\xb7\xc4\xea\xb1\x45\x6f\x43\x77\xcb\x76\x46\x32\xed\xa6\x29\x19\x78\xb2\x82\x89\xa5\x3b\x78\x2d\xec\x5b\x24\xa6\x41\xd4\x73\x97\x22\x6d\x58\x41\x62\x0c\xad\xbd\x09\xc2\xba\x95\x84\x43\xc8\xd6\xf8\xee\xad\xbc\xb7\xbb\xbb\x8a\x26\x93\x40\x58\x8b\xc3\x60\xba\x92\x92\x2c\x23\x85\x0d\xe7\xa0\xca\xc9\x48\xc1\x32\x19\x42\x45\xd7\xc1\xa5\x45\x29\x30\x5e\x76\xb6\xa8\x87\x94\xed\x29\x71\xaf\x58\x8f\xfd\x95\xaf\x76\xf0\x3e\x82\xa5\x76\xf3\x20\xc4\x06\x03\x1d\x0d\xc9\x4e\x7f\x84\x67\x09\x47\xd2\x4b\xbc\x0c\xd2\x59\x78\x98\x1a\x46\xa2\x56\xa4\x71\x3d\x54\xd3\x9a\x2d\x88\x30\xc7\xe1\x54\x09\x9a\x25\x3d\xb4\x9f\xea\x59\xf2\x0d\x66\xc9\xf5\x80\x8b\x69\x75\xc8\x4a\xfa\x30\x2e\x16\x24\x2c\x12\x1f\xec\x4e\x7f\xf4\xfa\xf5\x1e\x2c\x1c\x23\xb5\xd7\xaf\x2d\xdc\x0a\x17\x31\x6e\x81\xf8\xc8\x5f\xbd\xda\xef\xad\x12\x8e\xfa\xc6\x0d\xdf\xc9\x61\xd1\x78\x96\xdc\x95\xd0\xe7\xa8\xe5\x9c\xaf\x11\xde\xeb\x3f\x79\xfe\xe4\xc5\xfe\xb3\x27\xca\x14\xc4\xc5\x5e\x72\x61\x87\x1c\x01\x3d\xa4\xc2\x4b\xff\xe8\xa2\x37\x17\x19\x2a\xc2\x54\xa7\xd8\x74\x8a\xa1\x88\x72\xdb\xf8\xde\xf2\x11\x92\x6e\xb5\x88\x62\x36\xd4\xab\x62\x0e\x41\x92\x23\x9a\xa4\x2a\x5c\x6e\xb6\xe0\x4b\x16\xac\xac\x1f\x55\xc8\x3d\xde\x5a\x9e\x19\x0c\xda\xac\x8a\x8f\x18\x48\xaa\x90\xad\x96\xfa\x6b\xd9\xbe\x05\x19\x04\x7b\x35\xb0\xdb\x86\x64\x0d\x57\xfe\x0f\x22\xc5\xb1\x72\x7e\x6a\x90\x03\x04\xe3\x16\xf8\x87\x56\x22\x2c\x89\xb7\xe3\xd0\x06\x4e\x93\x27\x80\xb7\x94\x3e\xe0\xaa\x90\x97\x94\xa8\xb0\xb4\xd3\x4a\x63\x8a\x11\x55\xb4\x0e\x98\x55\x53\xfa\xba\x20\x5e\x07\x55\xe1\x87\x16\xa6\x4e\x95\xeb\xd2\x7a\xed\xc6\x37\x4d\xe3\xf6\x61\xe2\x07\x24\xab\x28\xbf\xc6\x8e\x40\x4a\x06\xf8\x16\xff\x17\x90\xca\x13\x0c\xad\x7e\xf7\xb5\x08\x24\xcd\x13\x95\x09\xb0\x96\x4b\xd8\x48\x19\xeb\xd0\x9c\x11\x1e\x40\xd0\xb8\x53\x87\x74\x59\x68\x23\x2d\x37\xf5\xb2\xca\x02\x9f\x9a\xfe\xa4\xa3\x92\x28\x67\x0c\x2c\xf2\xca\xcd\xc7\xd2\x03\xfe\x8a\xc1\x19\xcd\x05\x82\x10\x27\xd4\xac\xe7\xca\x4a\xd8\x6f\x43\x2d\x00\xd3\x16\xcb\x5f\xad\x07\x10\x13\xf8\x56\x4d\xc0\x3c\xab\x09\x6d\x26\xe6\xf9\x60\x12\x4b\xd1\x52\xe5\x8c\x89\xe7\x93\xda\xc6\xf8\x5a\x14\xbb\xf6\x62\x6f\xa5\x9f\xe9\xce\x8e\x78\x0d\x3d\xe2\x4c\xfe\xa2\x13\x01\x90\xa5\x71\x85\xf2\xd2\x02\x79\xdd\xcf\x92\x1e\x74\x2e\xcb\x7d\x5c\x4c\x32\xc0\x22\x4d\x15\xfa\x6a\xb4\xc0\xc7\x44\x87\xda\xe5\xd9\x0d\xc6\x78\xe2\x94\xf3\x13\x13\xd9\xa2\xba\xd8\xb8\x98\x5f\xd3\x5c\xf4\x7b\x13\xcc\x3f\xf4\xa1\x00\x72\x53\x8b\xd0\x5f\xe5\xd6\x8f\x82\x82\x1f\x85\xe8\xbb\x45\xb7\x31\x9e\x74\x3a\xf2\x62\x72\x64\x07\xf3\x44\x2e\xb5\xea\xed\x42\x00\x5f\xe4\x52\x84\x8e\x88\x38\xe7\x13\xe5\xb4\x72\xa0\x6c\xb6\xd9\x81\x89\xba\x00\x1d\xe5\x5e\x47\x79\x0a\xf5\x72\xf2\x2b\x87\xc0\x43\xac\xae\xe3\x6f\x99\xe0\xda\xc9\xbd\xf9\x78\x7e\x7e\x7c\x76\x79\x75\x79\xf4\x3d\x26\xdd\x9f\x3e\x9c\x1e\x5d\x9e\x9c\x1e\xab\xc7\x37\x1f\xce\x2e\x2e\x8f\xcc\xd7\xe5\x02\x20\x85\x74\x27\x94\xf1\x07\x4c\xba\xef\x8b\xbc\x98\x17\x6c\x71\x4b\xc7\x97\xd9\xcd\xc9\x7c\x31\xc3\xa4\x7b\x74\x7a\xfa\xe1\x6f\x57\x6f\x7e\x7e\x73\x7a\x7c\x01\x6d\xbc\xff\xf1\xe3\xe5\xb1\xd3\x38\x26\x5d\x65\x04\xe8\x74\x21\x5e\xaa\xf0\x91\x17\x0f\xf9\xf8\x96\x15\x39\xfd\x8d\x88\x05\x32\x8e\x04\x26\xbc\xa4\x2e\x4a\x8b\xfc\x88\x71\x3a\xcd\xc6\xa0\xc1\x3a\xa5\x25\x3f\xe1\x64\xae\x15\x60\xd6\x6f\xc1\x69\xe4\x4d\x36\xbe\x15\x2f\xe0\xef\xc4\x16\x71\xd4\x5b\x39\x76\x9c\x3d\xb6\x75\xf6\x2d\x69\x68\x77\x28\xff\x0c\xaa\xd0\xd9\xbe\xba\x6a\xef\x90\x1d\xf0\x77\x9a\xce\x8a\x82\x25\xf0\x93\x65\xf9\xa4\x98\x27\xe9\x9f\xde\x66\x9c\x74\xf3\xe2\x3e\x49\xd3\x1d\x51\x76\xd5\x72\x26\xdf\x6b\xd9\x35\xe9\xb7\x9c\xa5\x7a\xd9\xeb\x3d\xef\xbf\x7c\xb9\xf7\xf4\xc9\xf3\x27\xbd\x97\x2f\xfb\x4a\xa8\xd7\x57\x72\xfa\x3c\x69\x5f\x1e\x7d\x7f\xa5\xd6\xb8\xed\x20\xd4\xcc\x1e\x44\x6a\x33\x1e\x96\x3e\x87\xf8\x1a\x93\x61\x31\x4a\xd2\x95\xdd\xa6\x42\x49\x19\x54\xcb\x97\x3f\xff\x28\x9a\x0d\x76\xd5\x59\xac\xd9\x1a\x79\x04\x23\x77\xb4\xa4\x45\x8e\xfb\x5a\xf1\x5f\x72\xa0\xed\xc8\xc4\x7d\xf5\x13\x20\x24\xf5\x82\x96\x80\x5a\x68\x7e\x83\xb7\x75\x0a\xa6\xe5\x35\xcf\x6e\x4a\xc7\x3c\x40\xbe\xa9\xbc\xf8\x0e\x08\x1a\xb9\xcb\xe6\xdb\x70\x39\x8a\x66\x99\x19\x16\xa3\x80\x09\x0b\xc7\x28\x63\xd4\x54\x46\xd5\xab\x4e\x86\xb6\x38\x7b\x70\xcd\x33\xd4\x90\x75\xb2\x26\xf9\x68\x74\x50\xe1\x60\x51\x8e\xfd\xc5\xd0\xc9\x6c\xf4\x02\x3a\x5e\x21\xdc\x78\x74\xc2\xee\xb5\x4a\x30\x09\xcf\x94\xaf\x5d\xf6\x6b\x92\xa1\x5c\x7b\x13\xd7\xac\x8a\x57\xb8\x4c\xd3\x95\x9b\x2b\x47\xe3\x18\x69\xb5\x48\x5c\xab\x45\x15\xf5\x81\x0c\x97\x23\xd9\xb7\xd3\xd0\x0c\x65\x26\x0a\x9e\xde\xd1\x6c\x35\xa5\x79\x36\x9b\x3d\x54\xd7\xb0\xaf\xd3\x65\x6d\x1b\xce\xd7\x7e\xd6\x86\x9f\xee\x0a\xef\xec\xd0\x34\x80\x18\x81\xc1\x14\x56\xf2\xef\x4c\x45\x9c\x8b\x55\x6d\xe5\xe2\xda\x38\x64\x2e\xc4\x0c\x12\x16\x5b\x19\x98\x12\xb2\x25\x01\x43\x4a\x64\xe7\x19\x6f\x59\xa8\xde\xd9\xa1\x86\x8c\x8a\x60\xc3\x99\x92\xb9\xcc\x64\x2b\x2d\xdd\x9a\xa6\xaf\x67\x6a\xf4\x2d\x3b\x0d\x9d\xd8\x19\x6e\xcf\xfd\xb4\x15\x60\x61\x4d\x9c\xe5\xe4\x3e\xa9\x53\xa2\xaf\x87\x74\x55\x20\xc4\x2e\x72\x2a\x69\x2b\xb8\x08\x6e\x5b\xd2\xdb\xfe\x77\xe9\x93\xea\x4e\x4c\xf5\xb9\x93\x5d\x85\xf8\x59\x55\x4c\xfa\xd5\x49\x90\x7e\x95\x0c\x7b\x23\xe3\x79\x67\x95\xe8\xb3\x64\xcf\xc9\xf8\xaa\x91\x06\x41\x1c\x92\x9d\x3a\x57\xdd\x42\xb9\xc4\x37\xda\x21\x08\x30\x3b\xd7\x3b\x6d\x11\x8d\x85\x6e\xb0\xb5\x6d\x10\x15\x49\x32\xab\xc6\x7a\x2b\xbb\xb1\x79\xdc\x6c\x3f\x36\xb3\x91\xea\xc4\x4d\xb0\xb8\x0d\x7c\x95\x44\xe2\x8f\x8f\x49\x58\xd4\xda\x30\x2f\x39\x49\x9c\xb3\x62\x26\x91\x25\xa9\x20\xbd\x65\xb4\x42\x4d\xf9\x85\xe2\x97\xca\xb4\x0d\x84\x57\x2e\x4d\x58\xc5\x87\x3a\x4e\xc1\x3a\xa1\x68\x95\x42\x1e\x55\xa9\x89\xb3\xc6\x61\x41\xf2\xae\x21\xc2\x31\x47\xb9\x20\x86\x17\x90\x96\x34\x5f\xcb\x4f\x04\x29\xf7\x96\xbc\x6e\xe1\x4d\x0f\x2d\xdb\xe4\x2d\x24\x0a\x15\x7d\xa5\x89\xa2\x8e\x93\x54\x4a\xe2\xef\x24\xb7\x7d\xb3\xe6\x9e\xf3\x81\x22\xb2\xf4\xf6\xb5\xcd\x9a\x3a\x31\xf7\x9b\x58\x02\x22\x61\xc2\x1b\x23\x26\x8d\xa2\x48\x42\x3e\xd5\x89\xaa\x9c\x5e\x0e\xfd\x11\x0e\x82\xef\x89\x8a\xe7\x1b\x03\x08\x3a\x4d\xb6\xc3\xe6\xd2\x78\x37\x89\x27\x9c\x33\x33\xa8\x01\x72\x22\x49\xef\x69\x52\x26\x0c\xf1\x54\xb7\x79\xdd\x8a\x02\x6d\xcb\xd1\xac\xd9\x1b\x92\x62\xb3\x57\x46\xb5\x89\x31\xce\x0f\xaf\x07\x49\xb0\x29\x14\x38\xe7\xba\x8c\xb5\xeb\xc6\x2d\xdb\xa8\x74\x16\x1b\x2a\xcc\x2b\x8d\x6c\x74\x0f\x71\xcb\x70\xfb\xd4\xe8\x8d\x8a\xbb\xd1\xce\x26\xd7\xfb\xd7\xcf\x5f\x90\xdd\xfd\xc9\xde\xde\xee\x13\xf2\xe4\x7a\xf7\xc5\xf3\xe7\xd9\xee\xb3\xfd\xfe\xf3\xf1\xde\xf8\xe9\xb8\xff\xe4\x69\xbb\x25\xe3\x64\x34\x83\x23\xcd\x73\x6b\x9d\x21\x80\x6b\x12\x93\xa4\x54\xf0\x93\xbf\xb3\x39\x61\xf6\xe8\xfb\x14\xf5\x55\x4b\x86\xe4\xf8\xba\x93\x8f\x14\x6a\x34\xed\xbd\x2b\x58\xc2\x52\x47\xc7\xce\x33\x41\x7d\x8b\xe3\x91\x77\x4b\x42\x72\xf9\xeb\x13\x79\xc0\x4c\xfc\x8f\x72\x19\xd9\xfd\x7a\xa6\xf0\x04\x99\x17\x98\xc3\x9f\xa0\x4d\x94\x7f\x95\x1e\xb2\x42\x54\x18\x72\x56\x8f\x4c\x61\x0d\x3d\x0c\x55\xe3\x27\x6f\x5a\x12\x0a\x61\xaa\x26\xf4\x73\x50\xe1\xbd\x3b\x64\x59\x5e\xcc\x02\x0c\x8d\xf3\x6e\x79\x5b\x2c\x67\x93\x73\x32\x2f\xee\x22\xfb\xb4\xed\x0d\x49\x19\x88\x93\xaa\xef\x80\xbb\x9c\x4a\x38\x09\x2b\x0a\xf8\x8d\x01\xdf\x24\x38\x50\x50\x39\x6a\x1e\xea\xbe\x39\x13\xb8\x06\x33\xcd\x92\x59\xec\x36\xcf\x16\x18\x6c\xae\xbd\x0c\x83\x33\x5a\xca\x1b\x5a\x74\x97\x7f\x22\x13\xd1\x51\x14\xf5\x99\x7d\x6d\xc4\x7c\xb4\x84\xe8\xb6\xd5\x35\x49\xfc\x71\xf9\x4b\xae\xb2\x01\x24\x69\xaa\x1b\x48\xe2\x59\x02\x14\x4a\x30\x26\xe6\x58\xc5\xa1\xf4\x1a\x3f\xac\x69\x7c\xe0\x95\x42\x91\x85\x22\x2a\xb2\x7e\x44\xc8\xb1\xbd\xad\x57\xd1\x2a\x0f\x6a\xc5\x7b\xb6\xd4\x7d\x56\x5e\x88\x4d\xad\x91\xd9\xcb\x82\x7a\x3a\x46\xc0\xc6\x3b\x1d\x0e\xc0\x60\x53\x76\x35\xb4\x60\x48\x13\xb1\x75\xb9\xbf\xb4\x90\x88\x93\x88\xa3\x39\x82\x6d\xbe\x97\x26\x28\xd6\x5a\x5a\x86\x20\xa1\x29\xa2\x12\x0d\x97\x84\xf1\xef\xc8\xb4\x60\x71\xca\xdd\xf4\x99\x3b\x7d\xd2\xa0\xcf\x02\x33\xbf\x4f\xea\xf4\x59\x78\x67\x35\xf7\xba\x4c\x0a\xc4\x53\x54\x80\x0a\xca\x3b\x59\xe1\x08\x44\xb7\x2d\xe2\xb5\xc4\xba\x0c\x8e\x23\x18\xac\xf8\xad\xda\xe4\xcd\x41\xab\x9a\x46\xa0\x25\x77\x6a\x4f\xc8\x8c\x70\xe2\xec\x24\x4c\x05\xcc\x0c\x95\x4c\xa8\x76\xe3\xa1\x25\x23\x39\x52\x99\x1a\x48\x36\xa9\x35\x46\x17\xe5\xa5\x84\xca\x60\xf4\x88\x0c\xe5\x18\x0e\xfd\x05\xaa\xcd\xd6\x1c\x3b\xf6\x2d\x4b\x7e\x1f\x1b\xcf\xec\xcc\xb4\x19\xf5\x6d\xc8\x83\xc4\x70\xce\x05\x6c\x6a\x22\x8e\x6b\x0f\x33\x2f\xd8\xe3\xa3\x77\x9e\x73\x88\x61\x1e\x64\x23\xe7\x87\xc0\xec\x11\x0d\x7e\x3c\xad\x5e\xc1\x46\xaa\xf4\x01\x79\x3c\xde\x90\x74\x55\x34\x9e\xde\x08\xb7\xe5\xcf\x36\x12\xaf\x7f\x64\xcb\x9c\xe0\xfe\x08\xb7\xe1\x97\x7c\xf9\xb6\xc8\x09\xde\x1b\xe1\xb6\xf8\xd1\x5e\x25\x17\x8f\x8f\xc9\x05\xfe\xbc\x52\xfe\x85\x0d\xb9\x70\x35\x96\x93\xc9\x00\x94\x33\xab\x5a\x03\xad\x61\x83\x84\xaa\x1c\x05\x4b\x1b\xe2\x16\x66\x17\x44\xa9\x5c\x64\x30\x68\xcc\xf4\xde\x37\x99\x3f\x3f\xe4\xe3\xb8\x3a\xec\x42\x2d\xc4\xc1\x41\xaa\xb9\x34\xc5\x9e\xe9\x2f\x03\xb5\x77\x62\x13\x54\xb0\x21\x37\x38\xcb\xd6\x85\x5c\x33\xb7\x18\xbc\x08\x4b\x89\xb5\x1b\xb8\x48\xca\x14\x17\x5f\x12\xa9\x44\xcb\x26\x77\x59\x3e\x26\x97\xc5\x5f\x48\xa3\x65\x99\x9a\xbc\xc6\x5a\x16\xae\x72\xcc\xb5\x84\x36\xef\x74\x80\xaa\xd8\xc6\x98\x1c\xa4\x9a\xd4\xe8\x41\x08\x23\x73\xbc\x6c\x2c\xe7\x5c\x8b\x25\xec\xc2\x3a\xa5\x52\x7d\x74\xc3\x28\x4e\x1e\x7c\xdb\x7b\x61\xed\x30\x89\x86\x6a\x1b\x08\x39\x4f\x7d\xa3\xbb\x8c\x99\x95\xd4\xe6\x7e\x9f\xc8\x43\x95\x67\xe4\x40\x3b\x61\x4c\x0f\xcd\x92\x9e\x03\x52\x4b\xf2\x54\xa6\x32\x4f\x68\x6a\xbf\xbd\x2f\xc0\x1c\x6d\x60\x5e\x9c\x00\x9e\x4b\xf2\x14\xe9\x3d\xd7\x93\x95\xcd\xd4\x5d\x1b\x76\x3a\xcc\x9b\xee\x41\xc2\x30\x4b\x15\x0d\x64\xc3\x64\xa8\x65\xe5\xae\x54\x1c\x39\x67\x40\x61\xe2\x04\x50\x25\x62\x8a\xb4\x62\x40\x32\x99\xe5\x7f\x1f\x22\xdf\x0d\x81\xc2\x76\x03\x9c\x85\xe8\xa1\xc0\x90\x23\x5d\xf6\x97\xb6\x0a\x67\xc0\x4c\xdf\xb9\xea\xe3\x61\xc2\xe0\x32\x91\x77\x4b\xae\x7e\xcb\x56\xd4\x38\x0b\x49\xda\xf1\x43\xd8\x0d\x70\x28\xd4\xfe\x74\x2e\x50\x27\xd4\x4c\x45\x2e\xfb\xc6\x8b\xab\x46\x9f\xfb\x73\xa5\x98\x87\xf7\x54\x9e\xb6\xf4\xdd\x95\x50\x18\x23\x55\x63\xa4\x72\x8c\xf9\x61\x6e\xc7\x68\x92\x68\x49\xcc\x57\x73\xc7\x98\xcd\xf3\x86\xa6\x30\x0f\x52\x28\x40\x4f\xac\xd2\x52\xcd\x0d\xe0\x4e\xcb\x87\x20\xe7\x50\x30\x7d\x28\x24\x06\xd1\x74\x7d\x2b\x36\x3a\xe2\x9e\xd8\x80\xc2\x4e\xd2\xc3\x84\xe8\x0b\x3a\x4f\x11\xef\xca\x2b\x3a\x81\xb5\x48\xd3\x81\x22\xb0\xab\xd3\x01\xec\x5f\x35\x63\x01\x90\x9d\x48\xd4\xe5\x5f\xbb\x81\x96\xe3\xd7\x8a\x2e\x52\xaa\x64\x37\xd7\x44\xa2\xa8\x1e\xd3\xbe\xbc\x9b\xbb\x4f\xb3\xe2\x7e\x77\x46\xee\x48\x44\x83\xa9\x42\xe7\x7c\xb3\x1e\x93\x41\xf8\xc4\xf7\x3e\x6e\x70\x3b\x90\xd6\xd8\xb7\x86\x27\xf7\xbe\xba\x0a\xf0\x05\x4f\x32\x90\xc4\xca\x26\x9b\xc3\x1d\x3a\x86\x09\x45\xa7\x93\x14\xe2\x0a\x96\x86\xdf\xa8\x14\x9d\x11\xa0\xfa\x75\xa8\x68\x99\xea\xdd\xb8\x2a\x6b\x8b\x5c\x34\xc3\x6f\x93\x25\xa2\x32\x54\x3f\x1a\xe3\x59\x77\x9e\xe5\xd9\x0d\x61\x68\x8a\x67\x32\x9d\xbf\x80\xbf\xed\x8f\xc9\xbb\x64\x0c\x51\x4e\x9d\x70\x4e\xc9\x34\x4d\xd1\x38\x8d\x84\xac\xcf\xf2\xbc\xe0\x5b\xd2\x51\x77\xcb\x04\x8d\x29\xb7\xee\x29\xbf\xdd\x52\xe1\x6b\xb6\xa4\x53\x5e\xb9\x95\x95\x5b\xd9\x16\x2b\x0a\x6e\x4b\x76\xdb\x69\x2b\xc3\xd0\xa1\x8a\x4b\x39\x45\x4b\x1d\x73\x55\xed\xd1\x27\xf2\x50\x26\x45\x1a\x58\x92\x1b\xfa\x71\x48\x50\x31\x24\xa3\x91\x00\xb8\x5b\x3c\x6c\xcf\x33\x9a\x0b\xd0\x9a\x95\x02\x5c\x64\xa0\xd3\x11\x5a\xe0\x49\x5d\x03\xed\xff\x6c\xef\x90\x61\x4f\x34\xd0\xf2\x43\x32\xeb\xfb\x77\x8e\x7b\x07\xf3\x57\xfb\x7f\xba\xd5\x8a\x83\xf9\xce\x4e\x0a\x97\x95\x49\xb2\x07\x71\x80\xd5\x16\x57\xbf\xa0\x49\x3c\xe9\x8f\xa2\x5e\x86\xfd\x51\xcb\xab\xc4\xc1\xa1\xaf\x84\x18\x20\x32\xad\x63\xa2\xbe\xa3\x05\xba\x45\x3d\x08\xde\xe8\xd5\x90\x65\x83\x97\x59\xf0\x3c\x4b\x91\x02\xbf\x12\xc0\xaf\x24\xfc\xad\x0a\x07\xf5\x46\xa5\x03\xf2\x30\xf3\xf7\x98\x48\x28\x6d\x2c\x28\xca\xfd\x4d\x94\xbb\x21\x5c\xc5\x82\xf9\x29\x0b\x4d\xe5\xb4\xdf\xe9\xc4\x8f\x17\x0a\x3e\xec\x45\x09\x6e\xb9\xd9\xac\x9b\xf1\xa4\xe7\x9d\x94\x39\x4f\x18\xca\xb5\xc6\x3d\xc8\xda\xe3\x78\xf4\x5e\x23\x22\xa3\xa8\x87\xdd\x06\xd6\x3b\xee\x36\x89\xf6\xaf\x1c\xf3\x83\xbf\xdd\x52\x4e\xca\x45\x36\x8e\x72\x29\x05\xe9\x72\x52\x72\x60\x4d\x48\x37\x2f\xd8\x1c\xe4\x60\x26\x9a\xcf\x05\x11\x43\x00\x57\x5b\xed\x24\x1e\x35\x7a\xf8\x81\x08\x50\x50\x89\x41\x64\x44\x56\x33\x06\x46\xa4\x31\x0d\x2d\xf2\xc6\x36\x6e\x78\x7d\x1b\xb4\x34\x36\xe0\xa2\xde\x3b\xca\xa4\x2c\x04\xdf\x71\x31\x40\x7d\xaa\x1f\xde\xcd\xb2\x9b\xf2\x1d\x2b\xe6\xf8\x1d\x82\xb0\x29\xe6\xc0\x3f\xe0\xdf\x10\xe9\xbe\x59\xb2\x12\x34\xd3\x6f\x8a\x7c\xcc\x08\x27\xdf\x15\xcb\x7c\x52\x62\xd2\xbd\x38\x3e\x3f\x39\x3a\x3d\xf9\xfb\xd1\xe5\xc9\x87\xb3\xab\x77\x27\xe7\x17\x97\x57\x67\x1f\xde\x1e\x5f\x5d\x5c\x9e\x9f\x9c\x7d\x0f\xba\x69\x65\x14\xa4\x67\x41\xba\x67\xe4\x5e\xc5\xf4\xb2\xef\xde\x7e\x78\x7f\xc9\x88\x74\x68\x61\x4b\x98\x26\x26\xdd\x93\xb7\x1f\xde\xbf\xb9\xcd\xf2\x1b\x02\x9d\xfd\xf4\xfd\xd5\xd9\xd1\xfb\xe3\x8b\x1f\x8f\xde\x1c\xcb\x3a\xf6\x63\x03\x40\x90\xee\xfb\x93\xb3\x93\xf7\x47\xa7\x57\x6f\x8e\x7e\x3c\xfa\xee\xe4\xf4\xe4\xf2\x04\xb4\xf7\x6f\x8f\xdf\x1d\x7d\x3c\xbd\xac\xbc\x96\x9a\x97\xe3\xfc\x8e\xb2\x22\x9f\xcb\x8b\xd5\x7f\x92\x01\x8e\x88\x09\x91\xf2\x3d\xd4\xb3\x21\xba\xe8\xf5\x12\x6c\x09\x2e\xe8\x7c\x31\x23\x91\x0f\x72\xa7\xce\x49\xb9\x9c\x89\xf6\xb4\x66\xf0\xa7\xf7\x98\x74\x4f\x8b\xfb\x53\x71\x7d\xc1\xc3\x9b\x22\x9f\xa8\x23\xe1\xaa\xfc\x23\xf1\x0b\x49\xf7\xe3\xd9\xdb\xe3\x77\x27\x67\xc7\x6f\xaf\xce\x8f\xdf\x1d\x9f\x1f\x9f\xc1\x32\x9d\x7d\x3c\x3d\x75\x5e\x38\xea\xed\xac\x51\xe9\x05\xd7\x3c\x11\xd7\x5e\xc6\x89\x32\xb3\x06\xd9\xd7\x94\xce\x66\x67\xcb\xd9\xac\x4c\x93\x97\x2f\x52\x65\xb7\xd4\xc8\x7e\x65\x93\x09\x0e\x4d\x89\xcc\x71\x64\x9d\x4e\xc2\x70\xbb\x7c\x28\xc7\xd9\x6c\x66\xa2\x2d\x79\x1d\x0f\xc9\x08\x7f\x56\x25\x06\xa6\xa8\xa8\x8c\x74\x41\x30\xf3\xe3\x32\xa6\x5d\x28\x7b\xb1\x0e\x87\x8b\x81\xec\x17\xc1\x35\xa7\x1e\x6c\xc5\xa3\x29\xaf\xc4\xd6\x42\x79\xfa\x39\xef\x96\x0b\x41\x4f\x89\x4a\x90\x40\x50\x75\x5a\x9d\x95\x15\xe5\x07\x33\x60\xa3\x56\xde\x55\x23\x3f\xcc\xcd\x57\x38\xac\x03\xf7\x59\xca\xa6\x91\x66\xe7\x53\xf4\xbb\xb9\xb4\x80\x60\x42\x0a\x33\xbb\x0b\x46\xee\xd4\xef\x0d\xac\xd9\x5c\x20\x51\x31\x27\xb4\xf4\xff\xfb\x25\x9d\xa4\x52\xe5\x25\x2e\xaa\x65\xad\xd4\xdc\x0d\xb9\x61\x65\xe5\x9b\x5a\xd4\x29\xb3\xac\x18\x3a\xb6\xc6\x9a\x87\xd3\x81\xa2\x9a\xc9\xe1\x64\x20\x33\x26\x1c\xde\x0e\xb6\xfb\xf0\x63\x31\xd0\xd1\x5a\xb1\xb6\x7b\x21\x87\xd2\x28\x91\xa4\x03\xa9\x61\x05\x0f\x15\x3f\x4e\x45\x84\x25\x98\x82\x70\x39\x0f\xf4\x06\x10\x60\xa2\x7a\x2e\x97\xa1\x29\xc9\xb7\x6d\xa2\x24\x3b\x6c\xf3\x1b\xee\x61\xdd\x9c\x38\xa8\xc1\xda\xb2\x55\x71\xa2\x02\x19\xa1\xdf\x5b\x20\x82\x92\x47\x37\x56\x50\x1b\x7b\x1a\x5d\x8b\x56\x7d\x0b\x70\x8a\xc8\xcc\x04\x2f\xe1\x42\x05\x2c\xf0\x52\x50\xa7\xff\x1e\x70\x82\xc6\xa7\x6a\x94\x2a\x09\x4f\x2b\x8e\x41\x5d\xa3\x85\xb1\xa2\xee\x2a\x58\xd5\xb1\x5c\xd8\x1a\x27\xdb\xbd\x14\x2d\xf4\xef\x7e\x8a\xe6\x5f\xaa\xd0\x02\x95\xc1\x17\x29\xdf\x3d\x8b\x77\x48\xaf\xee\x2e\xbe\x55\xfa\xea\xe4\xeb\x51\xe9\x3c\x71\x35\x62\xd5\x6b\x67\x1e\xda\x15\x54\xb6\x04\x20\x47\x83\x32\x8b\xea\xc3\x17\x19\xe3\x25\xe6\x08\xac\x06\x31\x24\x1b\xf0\x2c\x1e\xd3\x84\x5b\x18\xf9\x5a\x8d\xb8\x95\xef\x19\xa7\x4b\x65\xe6\x0e\x8b\x02\x63\x88\xd8\xbb\xdb\x8f\x43\x3e\x32\x0a\x51\x29\x68\x12\xb0\x4e\x86\x7c\x84\x1f\x12\x96\x3a\x36\xcf\xb2\x95\xd7\xbd\x43\xd2\xfd\xa5\xa0\x79\xd2\x6e\xeb\x30\x65\x12\x45\xf8\x56\x05\x8e\x65\xc8\x83\xc3\x76\xe8\x97\xd6\x22\x8f\x74\x79\x21\x1d\x3e\x0f\xdb\xed\xc1\x85\x09\xae\x9d\x41\xc6\xa7\x7e\x5d\xbe\xb2\x62\xd1\x07\xd9\x9a\x64\x10\x0a\x88\x97\x13\x30\x80\xd2\xf7\x33\x61\x69\x42\x50\x2e\x33\x7c\x8b\x1d\x9f\x15\xd9\x04\x14\x7c\x7e\x68\x47\x54\x00\x5a\x97\xdd\x3e\x5b\xd7\x2d\x73\xf4\x93\xd2\x98\x30\x61\xa2\x71\x97\x09\x72\xda\x7b\xb2\xd1\x34\xe4\x18\x45\x2b\x92\x53\x80\x48\x93\xba\x75\xe4\xb6\xf7\xf4\x0b\xda\x03\x31\x98\xfb\x5c\x04\xcf\x19\x2e\x0e\x87\xc0\x76\x8f\x64\x78\x2c\x7f\x00\x2a\xd0\x1e\xca\x9c\xfe\x5f\xae\x5d\x20\xbb\x1b\xd6\xa1\x97\xa9\xb1\xa8\xc6\x6d\x68\xa4\xf7\xd9\x22\x49\x87\xf9\xc8\xe6\x35\xa0\x9d\x0e\x78\x6e\x83\x7b\xe7\x6c\x2a\x4b\x27\x39\x64\x02\x73\xd6\x98\x3a\x63\xda\xeb\x35\x8f\x49\xfc\xdd\x6b\x91\x20\x95\x05\x43\xdb\xdb\xee\xca\x3e\xff\x96\x89\xf9\x9b\xe8\x0c\x53\x8f\xde\xf6\xf3\x62\x33\xc0\x0e\xd6\x4b\xed\x45\xda\xa2\x87\x89\xca\xea\x4b\x87\x7b\xa3\x14\x99\x87\xbe\xfb\xd0\x1b\xa5\xe9\x40\x17\x94\x4c\x79\xed\x83\xbb\xbb\xcd\x63\xdb\xde\x8e\x8f\xc9\x87\xfe\xc3\xdb\xc1\xc2\x69\xb3\xef\xed\x4e\xfa\xd9\x07\x41\x7f\xed\xf4\x75\xe0\x96\x60\x52\xfe\x6d\x13\x14\x28\x7c\xe4\xf7\xca\xc2\x5e\x2b\xf8\xc3\xa6\x54\xd4\xd3\xb1\xde\xea\xb0\x8d\xec\x80\xbe\xee\x1d\xd0\xdd\xdd\xf4\x73\x3e\xa4\xbb\xfd\x91\x3f\x90\x95\x3f\x4b\x72\xbf\x75\xa7\x36\x56\x19\x18\xb5\xdf\x7c\x3c\x3f\x3f\x39\x7e\xbb\xf5\xe6\xc3\xfb\x1f\x3f\x9c\x1d\x9f\x5d\x6e\xc1\x55\x0b\xd1\x74\xb6\x86\x74\x82\x9f\x4d\x7b\xbd\x29\xb9\x7e\xb9\x9b\xf5\xc8\x74\xf7\xc9\xd3\x27\xcf\x77\x5f\xbe\x24\xd9\x6e\x36\xde\xdf\x7b\x31\x7d\xd1\xcb\xc6\x24\x1b\xb5\x2d\xfe\xbc\x76\x6e\xae\x64\x9b\x3c\x3e\x6e\x93\xe1\xcd\x48\xf2\x21\xb5\x16\x24\xc6\xd3\xc5\xbb\x72\x33\x76\x53\x2a\x0d\xd4\xf0\x66\x84\x4d\xe0\x6f\x8f\x44\x59\xe6\xf7\x2c\x5b\x54\x6c\x25\xc1\xff\xce\x73\xc7\x6d\xf9\xba\x9a\x83\x03\x03\x29\xa0\x7a\x81\x60\xae\x14\x33\x39\x04\x90\xf4\x8a\xab\xc5\x95\x7d\x2c\x18\x01\x3d\x53\xee\xbc\x14\xd0\x90\x67\x73\x32\xe9\xce\x09\xbb\x21\x49\x2e\x9f\xd2\x14\x6d\x5f\x27\xd4\xd8\x18\xd1\x16\xc7\x74\xb5\x42\x0d\xfe\xd0\x72\x98\x15\xe7\x5c\x57\x8d\x23\x39\x10\x6c\x16\x47\xc0\xd9\xa1\x27\x9e\xd1\x39\x51\x35\x49\x22\x76\xe3\x90\xed\x68\x6f\x9c\x01\x8b\xb8\xf0\xde\x3b\x44\xfb\xb1\x28\xef\xdd\x6c\xa6\xd8\xb1\x1b\x9d\x0e\x08\x4d\xf2\xf8\xd8\x78\x45\xda\xba\x17\xce\xa5\xaa\xf2\x1d\x58\x62\xdf\xc4\x9b\x27\x9d\x8e\x6d\x0f\xbb\xed\xfd\x70\xf9\xfe\xd4\xb6\xf6\x61\xe3\xd6\x2a\x8c\x45\x37\x2f\x26\xe4\xf2\x61\x41\x6c\x6b\xbf\x3a\xad\xa9\x8c\x0e\xb6\xfc\xaa\x51\x84\x21\x2d\x92\x8e\x1a\x2c\x92\x90\xca\x36\x5a\x68\xea\xab\x88\x52\x5f\x62\x54\x98\x43\xe8\x61\x4d\xd5\x31\x54\x78\xb6\x64\x05\xa4\xf7\xc5\x6d\x25\x9e\xdb\xe5\xe4\x57\xde\x16\x6f\xb3\x1b\xe9\xea\xa1\xca\x1b\xbb\x30\xa0\xe1\x80\x58\x4a\x93\x42\x5a\x88\x15\xcd\x76\x49\x34\x66\x97\x44\x23\x5c\x75\xb3\xf5\x1a\xcf\x6e\x0e\x74\xe7\x60\xdc\x97\x26\xbc\x6a\x9c\x98\x3e\x3e\x26\x55\x63\x36\x77\xd0\xda\x19\x51\xeb\xbf\x0c\xb9\x9c\xae\x10\x8d\x59\x4b\xdd\xa9\xa4\x20\xbe\x0d\x5d\x8b\x6c\x4b\x96\x28\xe1\x58\x83\xb7\xd8\xf3\x43\x62\xa1\x3c\x55\x45\xa4\xee\xb1\x98\x48\x38\x71\x0c\x5c\x1d\x7b\x57\x65\xa3\x59\xa6\xe8\xd3\xbf\xd9\x5d\xad\x81\xb9\x06\xb3\xa6\x0a\x5b\x5c\xcb\x43\x00\x1e\x80\x61\xcf\x53\xf4\xe3\xd7\xb1\x3d\x9b\xd8\xf2\x01\x58\x68\x38\xf0\x78\x1c\x0d\x4e\x91\xb1\x89\xcd\x78\x7c\x3c\x86\xff\x4d\xae\x14\x7b\x04\x1f\x1f\xab\xc7\x78\x95\xf0\xf4\xb0\x3f\x48\xc4\x76\x74\x3a\xe2\x82\x39\xec\x0d\x2e\xc4\xcb\xfd\x88\x9b\x0c\x20\x8c\x4e\xa7\x0f\xf2\x06\x8b\x01\x44\xf1\x27\x83\x0f\xe2\xcf\xd3\x81\xb2\x43\x6f\x29\xea\xec\x05\x8a\x69\x01\xdc\xab\x55\x4f\x0c\x31\x7c\x2c\x9a\xb0\x48\x93\x0b\xe2\x82\x48\x51\x6a\x99\xa4\x3a\x4b\xbc\x3c\xb7\x90\x5d\x9e\xb9\x84\xe0\xcb\x8d\xbb\x52\x88\xd0\xeb\x93\x7f\x49\x5f\xfb\x7b\x6b\xfb\x12\xc7\xc7\x4c\x8d\xe2\xe3\x84\xb9\x53\x63\x92\x1e\xaf\xeb\x10\x92\xfa\xd3\x54\x9e\x7e\xe5\x57\x27\xce\xf1\xe3\xa3\x36\x3d\xfc\x1b\xe5\x92\x0e\x39\x4a\x0a\xc4\x11\x75\x09\xb9\xfd\xde\xc6\x2b\xd1\x30\x69\x93\x85\x9f\xbb\x4d\xf7\x7f\x8f\xa6\x41\x83\xeb\x36\xbb\x17\xac\xa7\x3d\x22\x41\x5e\x29\xa7\xca\x7e\x5d\x15\x93\xef\xc9\x61\xc4\x9e\x34\xb4\xef\xe7\x75\x73\x2a\x3d\xad\xef\xa1\xae\x4e\x7f\xaf\x81\x88\xf6\x89\xd6\x80\xa7\x90\x51\x9f\x99\xbb\x8f\xfd\xfd\x4d\xb9\x05\xf6\xfa\xf5\xbe\x4e\xe0\xf4\xbc\xc3\x8c\x03\x86\x66\x09\x3c\x53\x9d\xbe\x7e\x1d\x8c\x40\x06\x95\x12\xb4\x96\x5b\x7a\xaf\xa6\xb4\x89\xd6\xe4\x95\xde\x57\xa5\x8f\x21\x1b\xfe\xc4\xa6\x42\x62\x5e\xb1\x27\x03\xf8\xf3\x74\xed\x48\x56\xce\x6a\x3c\x69\x00\xbd\x96\xf2\x91\x5c\x2a\x54\x9f\x70\xc5\xf9\xbb\xcb\xf9\x74\x83\x06\xa4\x5d\xbe\x85\x62\xb7\xfe\x1a\xee\x17\x38\x4d\x60\xdd\x20\x85\x84\x14\x36\xb0\x74\x37\x37\xfb\x0e\xb9\xcf\xdc\x16\x9b\xd8\xce\x96\x7b\xaa\x5c\xe4\xd3\x6f\x62\x22\x95\xa4\xc3\xaf\xd0\xc4\xd9\xb5\xd4\x70\xbd\x1a\x4f\xd6\x42\x9e\xb7\x5f\x9a\x8f\x6a\x91\x4a\x96\x0c\x4f\x1e\xf2\xac\x49\xae\x23\xf0\x05\xa4\xaa\x70\x07\xf2\x6c\x2f\xe4\x1f\x65\x9a\x0a\x67\xa8\x6b\x56\xa3\xfe\xc4\xb9\x01\xa4\xfc\x83\xf7\xe4\x79\x0d\xd7\x2a\x5b\x51\x5c\xb0\x5b\xe1\x59\x03\x68\xc1\x4d\x20\x59\x5c\x76\xa8\xc0\x8c\x79\x11\xc3\xe1\xdd\xd9\x72\x36\x73\x27\xf6\xb4\x09\xd5\xda\x36\x95\x5e\x59\x4a\x7c\xb8\x91\xf5\xe8\x1e\xad\xa1\x0d\x4d\x3d\xac\xa7\x13\x77\x80\xec\x45\xbe\xd2\x1b\xa6\x95\x67\xa8\xc4\xd4\xcd\x0d\xb8\xc4\x86\xfd\xa6\xd3\x64\xf9\xba\x97\x7e\xce\x70\xd6\x1d\x0b\xfc\xec\x98\x10\xcc\x70\xef\x60\xf6\x6a\x79\x30\xdb\xd9\x49\x33\x57\x98\x55\x0e\x67\x23\x54\x74\x33\x9e\xcc\x52\xc1\x51\xbb\xc3\x70\x47\x90\x41\x66\x4f\x41\xdb\xbb\xa0\xf0\xb4\x11\x26\x43\x41\x0c\x9d\x26\xfe\xe5\x49\xd3\x94\xea\x43\xdd\xe9\x90\xee\x4d\xc1\x0b\x00\xd9\x59\x49\x54\xd2\x71\x71\x9d\xe6\x81\x7f\x87\xc0\x9d\x85\xc2\x09\x4e\x35\x54\xb9\x87\xcf\x93\xc2\x43\x57\x4f\x1b\x85\x7f\x5f\x34\x5c\x71\xeb\x7f\xc5\x70\x9d\x6a\x1b\x0c\x77\x8d\x6c\x51\x8b\xd1\xd4\xa0\xa1\x03\x0c\x46\x95\xa6\x13\xa7\xb1\xa6\xe3\xa0\x2a\xaf\xa3\x6d\xce\x5d\xef\xa4\xe8\x54\xb9\x87\xdd\x9f\xed\xc7\xfb\x24\xf9\x1d\x98\xe5\x4a\x2c\xcf\x34\x96\xe7\x45\x4c\x05\x90\x30\xe7\xda\x68\x4a\x7d\xb1\xa9\x36\x40\xb2\x9a\x59\x59\x12\xc6\xdb\x4a\x27\x20\xbd\xe5\x58\x77\x0c\xfe\x43\x7c\x13\x65\x40\xcc\xf3\xc9\xcc\x51\xb3\x30\x36\xa6\xbe\x5c\x61\xc4\x7d\xa6\x26\xa2\xd4\xf5\xcd\x2b\xc5\x78\xf4\xb6\xe8\x00\x15\x69\xe2\x7a\x97\x25\x29\x1c\x02\x99\x47\xd9\xb0\x6f\x35\xa9\x1f\x1c\x4f\xa2\x35\x61\x39\x95\x8d\x34\x43\x54\x2d\xd8\x2f\xcb\xf9\x62\x97\x4e\x77\xf3\x82\xef\xaa\x0c\x67\x93\xb6\xf8\x2a\x96\x0f\xd1\x46\x56\x37\x1e\x54\xf3\xcb\x79\xf3\x30\x70\xd2\x4d\x60\xa8\x49\xab\xae\x71\xad\x6d\xd2\xcd\x66\xf7\xd9\x43\x79\x6e\x96\xac\xd3\xa9\xb0\xf0\xd4\xc5\x24\x82\x05\x9f\xd0\x09\xac\xf7\x43\xb3\x3b\xa7\x37\x51\x35\x28\xb3\x09\x35\x09\x1a\x36\x06\x54\x6d\xa6\xce\xb4\x78\x84\x4e\xe4\xd2\x3f\x68\xb8\xcd\x3d\x67\xe6\x2f\xd3\x61\xc5\x44\x1f\x9e\x9d\xa5\x5e\x01\x0b\x55\xb5\xe9\x18\x4c\xcd\xca\x90\xe4\x7b\x18\xfe\x4c\x1a\x5a\xaa\x45\xbc\x26\x6e\x72\x02\xc7\x36\x40\x9b\x48\xcb\xc7\x7a\xd5\xbf\xdb\x50\xa3\x6f\x53\x6c\xa2\xca\x69\x66\x41\xc6\x0d\x09\x07\xae\xc9\x6c\xa7\xbd\x35\x6c\xef\xc0\xf3\xd5\xcd\x92\x4e\x76\xda\xa3\xb6\xcf\x4d\x37\x51\xa0\x31\x7e\x0b\xf8\xc8\x3a\xe5\x85\xcb\x4c\xad\x21\x44\x2b\x0d\xbf\x91\x49\xff\x36\x69\x7b\xbf\xe9\xde\xf6\xdb\x2e\x16\x24\x57\xa6\x53\x1b\xb5\xdc\xc4\x11\x34\x31\xa3\x6e\x3f\x2e\x1b\xfa\x24\x46\x72\x21\xb6\x81\x2a\x2d\xde\x69\xec\x56\xe7\x98\xda\x41\xe9\xcb\xbc\xac\xbd\xcc\x39\x2e\x35\x3a\x8f\xdc\xe1\x2a\xf8\x83\xdf\x49\x91\xa6\x0c\x17\xd5\x4e\x96\xf1\x4e\x8a\xb4\xc5\xf0\xb2\xa1\x93\x25\x10\x6b\xce\xf2\x81\x2a\x8d\xcc\x0b\x4e\xcc\x22\xa2\x0c\x79\xfc\x43\x95\x6c\x77\xaa\x17\x0b\xbf\xb6\xbb\xa5\x35\xf2\x22\x87\xa3\x72\xd4\xb7\xbc\x07\x71\x87\x21\xb7\x8f\x34\xd5\xe8\x4e\x67\x32\x10\x2b\xaa\xd1\xf8\xf2\x9e\xb4\x0b\x16\x05\x9c\x31\x41\x35\x3d\x1e\x4f\xd2\x53\x23\x55\x72\xea\x8e\x67\x45\x69\xe7\xd2\x02\x85\x55\xd5\x04\xd6\xc2\xfd\xb0\x37\x12\x04\xd5\xb0\x3f\x02\x96\xe7\xae\x5b\x8e\x6f\xc9\x64\x39\x93\x69\xec\x67\x33\x75\xf5\x32\x08\x1a\x66\xee\xac\x1b\xc2\xdf\x12\x69\x3c\x58\x30\x41\xa4\x53\x71\x89\xe4\xe4\x1e\xde\x16\x32\x39\x1e\x30\x97\xce\x36\x34\xea\x46\x9b\xb5\xe7\x28\xc3\x85\x31\x9c\x2e\xb1\xcc\x55\x49\xd0\x32\x00\xfd\x99\xb7\x16\x60\x6d\x3d\x36\x46\x8e\xf9\x0d\xb2\x61\x32\x3e\x2c\x94\xcb\x5a\x89\x26\x55\xeb\xd8\x5b\xc1\x48\x48\xd6\x7d\x8c\x4a\xb4\x44\x13\x34\x4d\x5b\x0d\x1b\x2f\x26\x68\x56\x2a\x43\xb7\xa9\x8a\x73\x91\x89\x95\xba\xcc\x6e\x92\x5b\x9f\xc4\xbc\xcc\x6e\xd2\x64\x11\x93\xa0\xbd\x4f\x16\x48\x34\x60\x68\xbe\xf7\xdf\xae\x87\x90\x84\x8a\x59\x40\x50\x42\x98\x54\xad\x56\x07\x21\x47\xa2\x49\x1c\xd6\x56\xaa\x07\x30\x97\x24\x93\x90\xb2\x29\xbe\xed\xc6\x0d\x7d\x42\xe5\xd6\x6a\x77\x4d\x35\x04\x4d\xd6\x80\x1e\xc4\x52\x38\x6a\x44\xa1\x3a\x82\xa2\x22\x7d\x7c\x4c\x7c\x30\x96\x65\xcd\xde\x30\xc4\x9d\x68\x16\xb1\xa9\x51\xa3\x09\x50\xf7\xdc\xfe\x26\xcc\x08\xb0\xbb\xc5\x62\x3f\x80\x63\x4f\x3d\x9f\xd5\x7c\xca\x53\xc1\xdb\x1e\xd6\x89\xb4\xb4\x3d\x84\x73\xc8\x4b\xf1\x59\x27\x6b\x05\x2b\x57\x48\xac\x5c\xba\xa8\xa2\x51\x3e\x44\xd5\xa8\x0b\x35\xea\xba\xa1\x31\x31\x34\xff\x8c\x09\xbe\x5b\x4b\x92\x67\xb8\xa8\x19\x76\x21\x87\x8d\xc6\x38\x1c\x78\x68\x9f\x9b\x64\x68\x89\xb6\xb7\x29\x9a\x85\x5c\x58\x19\x3b\x1f\x27\x49\x89\xc6\xf6\x74\x9c\xac\xa7\xf6\x0f\x6a\xc3\xef\xdb\xf8\x20\x14\x52\x38\x4a\x7b\x61\x4b\xf8\x43\xbc\xcc\x5d\x35\xfc\xb6\xce\xee\x08\xe1\x26\x0c\xa9\x2e\xce\x56\xd1\xc4\x04\x14\x82\x09\xf8\x1d\x8f\x8a\x19\xa8\x3e\x2c\x56\x53\x47\x6b\x35\x75\xf4\x6b\x34\x75\x34\x45\x5c\xab\xe9\x8c\xc6\x07\xc1\xf1\xb2\x67\xc4\x2c\xf9\x5b\x6d\x95\x6b\x8d\xb5\x8a\xe2\xd3\x72\x11\xcb\x11\x2e\xca\x01\xdd\x7a\x56\x6f\x3a\x20\x6d\x81\xab\xaa\x2b\x27\x6b\x82\xc4\x15\x84\x67\xda\x7f\x15\x4c\x0b\xf2\x68\x30\x80\xba\xa8\x2a\x8e\xde\xf7\x5b\x62\xf0\x78\x4a\x7c\x1b\x57\x84\x39\xa1\x3e\xe8\x34\x61\x60\xf2\x19\xc6\xfc\xb0\x43\x50\xfe\x66\x70\xe0\xe9\x34\xb9\x16\x14\x66\x8e\x19\x50\x4d\x5b\x74\x9a\x54\x34\xd9\x90\x3b\xfd\x73\x8e\xdf\x7a\x39\x6f\x18\x62\x76\x6d\x8c\xf5\x9c\xe3\xcb\xf7\x90\xe4\x61\xfc\x2b\xbd\x84\xe1\x9a\xa0\xbc\x12\x3a\xc0\xb5\xcc\xe5\x15\xef\x8f\xc0\xaf\xf0\xa6\x6c\xe9\x10\x13\x9d\xce\xb5\x54\xd0\x4a\x43\xe0\x2b\x65\x8d\x6d\xc2\x02\xa1\xd3\x75\x91\x71\x68\xc9\x5d\x0d\x66\xcc\x9e\x91\xb8\x61\x22\x62\x91\xda\xaa\xdb\x68\xed\x17\x87\x23\xb3\x85\xb4\xe4\x2a\x71\x12\x77\x13\x27\x29\x9b\xf3\xfb\x84\x0f\x99\x31\x5a\x4c\x5b\x20\x79\xd2\x16\x77\xaa\x4f\x37\x3f\x92\xf6\x1e\x97\x46\x8b\x5b\x6d\xed\xc4\x67\x26\xf9\xce\xd1\xe9\xf4\xc4\x1d\xa6\x28\x12\x95\xd8\xac\x3f\xe8\xa5\xce\xdb\xcb\xec\xe6\x70\x4f\xbd\x5a\x30\xb2\xc8\x18\xe4\xbd\x3d\x7c\xa2\xde\x49\xda\x05\x5e\xbd\x50\xaf\x0c\xda\xf8\xa1\x28\x3e\x1d\xf6\x9f\xa9\xd7\x0a\xb9\xc1\xcb\xfd\x3d\xbf\x17\xa0\x86\x0e\x9f\xf9\x8d\xbe\xc9\x66\x33\xc2\x0e\xfb\x7b\xba\x61\x89\x20\xa0\x81\xbd\xa7\xcf\xbc\xb2\x40\x42\xe6\x63\x72\xf8\xb4\x2f\x9a\xb6\xc6\x19\xbf\xb9\x5e\x35\xdb\xdb\x09\xe9\x70\x6d\x6c\xf9\xac\x49\x71\xea\x08\xaf\x95\xe8\xfa\x93\xa6\xd3\x3c\x5e\xec\x79\x93\xce\x51\x36\x02\x0c\x86\x6e\x45\x80\xe3\x8f\x41\x13\x1b\x5b\x7d\xe6\x86\xef\xd2\xbf\xca\xca\x6d\xea\x0b\xf7\x81\x6e\xad\xfa\x0a\x36\xd8\x85\x8a\x01\x9e\x25\x05\x5a\xa2\x12\x65\xde\x30\x9b\x54\x7c\x81\x6e\xa4\x42\x54\x53\x9c\x1b\xca\xab\xc0\xef\xa4\x89\xa0\xe7\x7f\xa8\xbc\x30\x44\x77\xf8\xf3\xc4\xa0\x85\x41\x8e\x54\xbd\x01\x45\x63\xa7\xc2\xa0\x50\xbe\x1e\x80\x64\x55\xd8\x68\x89\x70\x21\x5e\x34\xfc\x94\xf7\x82\x3c\xf8\xbe\x4e\xc4\x35\xef\x7c\x1e\x25\xbb\x72\x45\xb2\xf4\x2d\x9b\x8b\x4a\x9c\x05\xca\xfb\x65\xe3\x06\x14\x80\x8b\xeb\x58\xb2\xbe\x72\xd5\xac\xe0\xda\x52\x22\xda\xd8\xce\x09\x1e\x21\x85\xfc\x00\x10\xe6\xea\x5a\xb0\xc2\x52\x2c\xd9\x43\xac\xbb\xcc\x19\xc9\xc6\xb7\xa2\xef\x34\x49\x5b\x39\x2e\x57\x59\xd5\x3c\xf7\x79\x4c\x64\x2c\x2e\x41\x47\xb3\xaa\x00\xac\x75\x9d\xd0\xf4\x90\x61\x29\x28\x1a\x70\xfc\x2e\x49\x18\xa6\x7a\x2f\xd3\xca\x36\x52\xb3\x8d\x4a\xc5\xe9\xee\x65\xb0\x83\xdc\x6c\x2d\x5b\xbf\x97\x2b\x77\x02\xbe\x8e\x21\x07\xe7\x15\xde\x95\xa6\x5c\x9a\x5b\x5c\x8a\x35\x85\x78\x39\xa9\xd6\xed\x50\x2b\xc1\x00\x36\xaf\x22\xb5\xd8\xbe\x4e\xb2\x86\xf5\xa4\x38\x43\x45\xd5\x14\xf7\xf9\xc6\x0a\xd2\x98\xf9\xb6\x9f\x76\x48\x52\xef\xf9\xeb\xd7\x4f\x50\x89\x5f\x74\x72\xb4\xc4\xc3\x51\xeb\x49\x27\xef\x74\x96\xb2\x67\xe9\xfd\x9a\xa2\x3d\xf7\x1d\xb8\xc2\xa6\xa8\xef\xbe\x93\x7e\xb1\x82\x8c\x72\x7c\x4c\x29\x12\x47\x3b\x43\xdb\xdb\x65\x8a\xa8\xd6\xec\x81\x63\xa9\x33\xa1\xe7\x1b\x68\x8c\x55\xb3\xd2\x37\x99\x7b\xc6\xbe\xeb\x71\x22\x2c\xbc\x8a\x2c\x6f\x91\xa3\x2b\x80\x78\xbe\xc6\x2c\xd7\x35\x19\xf6\xf4\xce\x1e\x9e\xa4\x5d\x0b\x7e\x2d\xb1\xb9\x9d\x4e\x92\xd5\x78\x77\x11\xa7\x2c\xe6\xca\x2e\xb4\x8a\xbc\x14\xa2\xb2\x5a\x07\xcd\xeb\x52\xd7\xf9\x92\x92\x32\x8a\xe6\x8a\x14\xa2\x7b\x51\x94\xa1\x42\x31\x16\x25\xce\x80\xd5\xd1\x5d\xcc\x70\xe9\x78\x6b\x8b\xbb\xfd\xb7\x84\x7a\x2d\xa3\x27\xa9\x1c\xf4\x18\x17\x32\xaf\xac\x62\x94\x4a\x34\xb5\x6f\xf2\x6c\x4e\x4a\x34\xc1\x4b\xf7\xe2\x4e\x66\x48\x22\xa5\x49\xfa\xb9\xe8\x8e\x67\x24\x63\x8e\x0a\xf3\x16\xf7\x0e\x6e\x5f\x8d\x35\x19\x72\xbb\xb3\x93\xaa\x63\x3c\x1e\xde\x8e\x6c\xb9\x05\x9e\x38\x46\xa3\x68\x8e\x27\xd2\x6a\x15\xdd\x61\x93\xe1\xe4\x01\xf7\x0e\x1e\x5e\xdd\x1d\x3c\xd8\x46\x16\xc3\x07\xa7\x91\x1b\xcf\xfb\x7b\x9e\xa2\x2b\xdc\x3b\xb8\x7a\x75\xa3\x7b\xbf\xb2\x15\xe7\xc3\x9b\xe1\xd5\x68\x94\xb6\x0a\x05\xc6\x39\xba\x41\x53\x74\x87\xb6\x7b\xe9\x4a\x95\x29\x24\x5a\xdc\xb2\x8f\x16\x20\x1b\x6f\x58\xcb\xa1\xfa\x62\x17\x29\x0a\xb2\x30\x01\xd2\x20\xbd\x49\x4b\x5c\x84\x9b\x5d\x56\x36\x3b\x33\xc8\x50\x8a\xe1\x5b\xbf\x25\x4b\xf4\xec\x89\x00\xc2\x59\x45\x14\x94\xaa\xb0\xab\xfd\x0e\x43\x53\x5b\xfc\x85\x28\x3d\x0d\x94\x88\xda\x7d\xde\x94\xea\xef\x41\xb9\x89\xeb\x43\x90\x2a\xdf\xa5\x52\x13\x2e\x52\x29\xa8\x06\x85\xa6\x68\x86\x26\x68\x7b\x7b\x0c\xab\x2a\x5e\x99\x98\xa9\xa5\x95\x25\x41\xeb\x7b\x4f\x9f\xa5\x9d\xce\x76\x44\xac\x24\x88\xd1\x80\x6d\xfe\x29\x59\xa0\x5b\x54\x22\xcf\xc6\xfe\xc5\x5a\xe2\xc1\x3f\xc3\xd1\x23\x07\xe7\xd9\x97\x07\x16\x69\x2b\x8b\xc8\x03\x3d\xe7\x8d\x7e\x28\x93\xbd\x26\x37\x34\x07\x21\xf0\xf7\xac\x58\x4a\x83\xfc\x40\xcc\x2b\x1d\x7c\xa5\xad\xbf\x3b\x8d\xfd\xb0\xad\x5a\x61\x2b\xb9\xdf\xfa\xce\x15\x92\xac\xf1\xb4\xf8\x06\x21\xc9\x1a\xc1\x48\xa3\x30\xb1\x24\xdc\x15\x8f\x94\x68\x7b\x3b\x17\x04\x86\x02\x9e\xef\x9a\x63\xcd\x1a\x4a\xbf\x8c\x44\xcf\x1b\xcf\xb2\xb2\x74\x32\xdc\x6a\x49\xdb\xda\x94\xb6\xce\x90\x22\x2e\xbb\x52\x2e\xac\xc2\x76\x70\x04\x48\x6e\x91\x8d\xc9\x20\x47\x9c\x2d\x4b\x4e\xf3\x9b\x01\x5b\xb5\xda\xd0\x7d\x5b\xa6\xfa\x70\xc7\xa3\xa3\x2f\xa0\x60\x06\x43\x32\xc2\x54\x86\x6a\x32\xf2\xd5\xc0\x35\xdf\x9f\x86\xca\xd3\x42\x10\x97\x79\x5a\x40\x94\x1e\x8f\xed\xb4\x45\x75\xce\x3e\xd3\x9d\xe7\x9a\xe6\x8c\x82\x43\x46\x16\x1d\x7b\x07\xb3\xae\x99\x20\xca\x30\xeb\xea\x29\x0a\x0c\x6e\xa7\xc8\xc1\x7d\x48\x80\xdc\x69\xe2\xce\x35\x4d\x91\x4c\x42\xe6\xc6\xdf\x5e\x2b\x25\xe3\xc8\x68\x6a\xe0\x96\x3a\x08\x75\x39\x51\x59\x19\x85\x88\xdc\x2b\x31\x2e\xe8\xb2\x6e\xca\xcb\x70\xca\x20\x01\x43\x33\xbc\x54\x93\x1e\xe3\xa5\x33\xe9\x29\x5e\x9a\x49\x83\xfc\x7c\xcd\xe0\x55\xd2\xb5\x99\x99\xc1\x14\x8d\xc3\x19\xcc\xe2\x33\x98\xa1\x89\x75\x00\xf4\xf7\x3a\xe4\xa1\x3f\x3a\x3e\x2a\x7d\xb8\xa0\x09\xea\x3b\x5c\xe7\x0f\x36\xba\x8b\x12\x9b\x83\x89\xfd\xf5\x4c\x27\xb2\x77\x53\x00\x02\x3b\x77\x43\x78\xc2\xd3\x83\xdd\xfe\x36\xc4\x80\xa1\x11\x9f\xb4\x62\xa7\x8f\xb2\x14\x31\x25\xed\xea\x74\x12\xfd\x53\xc0\x6e\xa6\xd9\xda\x97\x6b\x6d\xd8\xaa\xe4\x92\x73\xc9\x65\x06\xdb\xfa\xd7\x5d\x03\x16\x69\x95\xdd\x09\x9d\xbc\x81\x4b\x46\xeb\x83\x32\x1f\xa7\x92\x5f\x17\x64\xcc\xdf\x38\x1a\x92\xa4\xfd\x36\xa8\x23\x1d\xea\xff\x1f\x2d\x95\x6c\xa7\x12\x11\x69\xd4\xbb\xd6\xa9\xb0\x7a\x83\x38\xd3\xf2\x2f\x11\x35\xad\x80\x25\x34\x57\x67\xe1\x5d\x5d\x6b\xbd\x0f\x7f\x97\x8e\x2f\xb3\x9b\xb3\x6c\x4e\x82\xbe\xa3\x9c\x45\xae\x48\x96\x7e\x0d\xc9\xe2\x6a\xaf\x9c\x91\xc4\x45\x01\xa0\xc9\x92\xa4\xf4\xd8\x68\xbb\xa6\x01\x75\x83\x26\x2e\x4d\xfa\x31\x99\xa2\x2c\x4d\x73\xa9\x73\x52\x41\x7d\x26\x68\xa9\x74\xae\x82\x6a\xad\xda\x0f\x2b\x42\x16\xce\x49\x32\x6d\x64\x5a\x33\x27\xcc\x8c\x6a\x7d\x2c\x60\x61\xa6\x58\x59\x75\x86\x2e\xa1\x06\x32\x6f\x25\xdf\xe8\x9a\x46\x6d\xe6\x75\x58\xeb\x37\x6a\x49\x90\x0c\xbf\x4b\x8a\x06\x91\x45\x59\x23\xb2\x28\x7c\x86\x37\x8b\xb0\xb9\xd4\x4f\x73\x45\xdd\xc9\x85\xf2\x0b\x4b\x6c\x30\x4f\x03\xf3\x62\x63\x5e\x29\x77\x26\x67\x75\xf8\x1e\x00\xb7\x32\x9d\x97\x90\xa2\x4c\x25\x17\x2c\x1c\x93\x89\xb5\xd2\x2a\xaf\x35\x1f\xeb\x55\xfc\x51\x73\x93\xf1\x0f\x48\x79\x3b\xa3\x28\xb9\x94\x3b\x56\x84\x4e\x2f\x39\x30\x34\x54\x75\x75\x9b\x95\xc7\x77\xd9\x4c\xe3\x5d\xaa\x70\xa4\x47\xa1\x04\x3e\xbf\xa2\xbc\x1c\x4f\xe1\xda\x06\x56\x68\xd6\xaa\x37\x65\xf5\xf0\x9b\x96\x5d\x6b\x09\x69\x63\x20\xce\xa6\x74\xf5\xcb\xf8\x19\x30\x67\x25\xce\xd4\x02\xec\xf6\x0f\xca\xd7\xb8\x77\x50\xee\xee\xea\x7b\x32\x1b\x96\x23\xc1\x38\xd4\x5c\x1c\xe2\x73\x0a\x67\x56\xb6\x29\x6e\x90\x25\xda\xee\xab\x4b\x64\x26\x2e\x11\xc7\x08\x75\xb6\xd3\x47\xe3\x14\xe5\xf6\xf6\xd0\x3f\x87\xcb\x11\x1e\xbb\xf3\xfe\xc2\x0b\x84\x06\xf3\x54\xfc\x67\xeb\x87\xa4\xdd\x91\x32\x08\x1d\xa3\x0b\xa2\x9d\x91\x14\x89\x2f\x34\xbf\x23\x0c\xe2\x77\xc9\x30\x5e\xce\x27\x95\x22\xa1\x8d\x54\xa0\x2f\xf9\xc9\xa1\xe8\xd7\xb8\x3e\x87\x00\xad\x54\x72\x11\x0c\xf1\xf2\x2b\x2e\x95\x18\x5b\x12\xda\x79\x28\xc6\xa1\x05\x26\x6e\x32\x26\x90\x42\x64\x05\xca\x94\x62\xcb\xde\x99\x49\x81\x68\xc4\x02\xe5\x5f\x20\xac\xf1\x64\xb0\x2f\x2b\xf6\x25\xe3\x62\x3e\xa7\xdc\x65\x66\x34\xed\xfe\x53\x93\x36\x3f\xff\x42\x7d\xbe\x89\xe6\x26\x35\xfa\x4a\xe2\x91\xa3\xc2\x63\x62\xab\x1a\x7e\x53\xaf\xfd\xad\x5a\x7c\x4f\x07\x66\x9a\x45\x71\xad\xbe\x3b\xa8\x96\xd1\x2c\x12\xc4\x8c\x95\xdd\xbf\xbe\xdd\xd6\x41\xaf\x42\x75\x7d\xae\x65\x1c\x2d\xc7\xe7\x92\x4e\x76\xd5\x8a\xc8\x48\x79\xda\xf1\x32\x30\xe4\xfb\x77\x5a\x3a\xd8\x35\x53\xea\x39\x39\xca\x16\x18\x21\x4a\xf3\x04\x05\xa3\x10\x64\xd0\xc0\xe8\x47\xa5\x96\xd5\xd1\x5b\x5c\x4d\xec\xdf\xe4\xa1\x11\x54\x45\x31\x23\x5d\x9a\x4f\x8b\xa4\xfd\xb1\x24\x5b\xff\x1c\x17\x39\x27\xbf\xf2\x7f\xa2\xad\x2c\x9f\x6c\xfd\x53\x20\xa7\x57\x8b\x8c\xdf\xbe\x4e\xff\xb9\xc5\x8b\x2d\x88\xca\x04\x44\xf6\x16\x27\xf3\xc5\x2c\xe3\xa4\xdb\x4e\x11\x4f\xda\xe2\x5d\x5b\xaa\x6c\xbf\xc7\x7f\x03\x48\xfe\xb9\x41\x75\xab\x15\xb7\xa5\x8c\xdc\xa5\x34\x72\xc5\x38\x9b\xf9\x3c\xa9\x91\x3a\x51\xdc\x3b\xa0\xaf\xf4\xbd\x73\x40\xb5\xa6\xad\xc0\xf9\x90\x8e\x50\x86\xf9\xb0\xd8\xed\x8f\x80\xcf\x16\xf4\xa0\xc4\x9e\x85\x0a\x11\x2d\x5b\x1e\x66\x23\x5c\xae\x6a\xe2\xdd\xd4\x7b\x94\xc2\x18\x4d\x70\x70\x68\x49\x22\xcf\xc5\x8c\xf2\xa4\x2d\x16\xa0\xf0\x1f\x33\x5c\x0c\x7b\x23\x69\x86\x04\xe1\xb8\xfa\x82\xe1\x07\xa3\x28\x7b\x67\x69\x03\x68\xb9\x74\x18\xe3\xec\x90\xcb\x32\x52\x0e\x34\xc8\x87\xd9\xe8\x90\x63\xf1\x67\x20\xa8\xb0\xcc\xdc\x21\xed\xff\x6c\xa7\x9d\xce\x52\x7e\x17\x7f\x06\x09\x77\xc6\x6a\xdb\x40\x25\xa6\x29\x12\x54\xe3\x64\x39\x26\x49\x80\x34\xcd\x42\x48\x2e\x66\x95\x9a\x28\x57\xca\xb0\xe5\xe5\x46\xd2\x0f\xba\x46\x2e\x5e\x91\x9b\xcb\x2f\x39\x70\x50\xe4\x7e\xeb\x67\xeb\xa3\x22\xe3\x71\x7e\x9f\xb8\x21\x35\x34\x47\x18\x73\x6e\xcb\x64\xc4\x5c\x53\xc8\x33\x27\x7b\xf9\xf5\x66\x39\x81\x24\xc7\x6a\x71\x6a\x7c\x41\x97\xb8\x88\x69\xf1\x66\xea\xb5\xb3\x1e\xb9\xbc\xfb\xcd\x2a\xd0\x14\x4d\x05\x35\x01\x57\xba\x0a\x34\x92\x94\x68\x99\xa2\x09\xce\x4c\xb6\xfe\xa9\x1b\x87\x04\xcc\xcf\x26\x1e\xc1\xb9\xc0\x13\x4d\x8f\xce\xf1\xad\xa6\x39\xd0\x9d\x43\xd6\x3c\xe0\x90\x88\x9b\x6b\x91\xef\x76\x3f\x45\x37\xf8\x2e\x04\xcf\x07\xa0\x43\xa4\x3a\x57\xbe\xbb\x93\xb4\xb4\x7d\x91\xa6\xe8\x21\x20\xc5\x6e\xf4\x2b\xd8\xbe\x3b\x57\xae\xa9\xcf\xf2\xb5\x96\x20\x2b\x01\xe7\x5d\x18\x64\x45\xcb\x94\xc7\xae\x4c\x19\x76\xef\x1e\x8f\x87\x57\x23\x74\x8c\x67\xc3\x7b\x71\xdc\x2f\xe4\xb0\xd5\x71\xbf\x4f\x5b\xd7\xc3\xe3\x11\xbe\x58\xd1\x69\x72\x63\x72\x8b\x7d\xc0\xbd\x83\x0f\xaf\xf4\x74\x0f\x3e\xe8\xc6\x7e\xc5\x1f\x76\xfa\xe8\x08\xdf\x0c\xe7\xc3\x0f\x23\x1d\xd7\x65\x1b\xe3\xa3\x4e\x47\xce\x21\xf9\x15\x1d\xa5\x2b\xf9\xdb\x19\xe0\xb5\x76\x00\xb2\xee\x40\x70\xcf\x2c\xcc\x2d\xfe\x97\x0d\xac\xc1\x1d\xdb\x13\x1b\x67\x7d\x33\x83\x04\x37\x27\x87\x0d\x7f\xec\xe4\x99\x70\x0e\xf1\xb3\xcd\x9c\xbd\x3c\x77\x2c\x79\x8b\xe8\xe4\x07\x90\xdd\xc4\x4a\x97\xf4\xb9\xcd\xab\x81\xed\x01\xe1\x9a\x08\xa7\x8e\xee\xfc\x2f\x49\x66\x07\xea\xf9\xc1\x34\x91\x72\xda\xc7\xee\x94\x96\xbe\x99\xeb\xb3\xa7\x31\x3f\x3b\x28\xe6\x96\x5a\x1b\x26\xc7\xa3\x7f\x9d\x00\xe8\x5a\x5e\x69\xc3\xfe\xe7\x2a\x56\xb5\x32\x7d\xd2\x23\x3b\xe1\x64\x2e\x43\x36\x23\xaa\x14\x19\xae\x83\x11\xc0\xc2\x1f\x62\xf2\x48\x45\x78\xea\xab\x4f\xf4\x7d\x41\xaf\x67\x34\xbf\xc1\x1c\xd2\x35\xca\x20\x9f\x7f\x80\x16\xfe\xda\x64\x04\xa5\x1a\x5c\x64\x8c\xe4\x32\x9e\xa8\x6a\x73\x4a\x59\x69\x22\xf9\xcf\xb2\x92\x63\xd6\x98\xe0\x09\x1a\x50\x42\x9d\x3a\xc3\x7f\xdb\x8b\xcc\x79\xae\x43\x98\xd6\x14\x87\x02\xa2\xa4\xe8\xbe\xa9\xa0\xf8\xee\x46\x3b\x73\xe3\x9a\xfe\x15\xd6\xe0\xbf\xd7\xc6\x90\xa9\xae\x80\x0c\xaf\xf1\x7f\x7b\xd2\xb9\x2a\xb8\x6e\xce\xb9\xcd\x8b\x6c\xe6\xf3\x5f\x21\xc7\x4a\xfc\x21\x82\x03\x25\xb1\x63\x50\x02\x10\xdd\x95\x14\x11\xe8\x10\x37\xc0\xb8\x5a\xc0\x02\xfb\xb2\x58\x6e\x12\xd7\xdb\x32\x6b\x15\x38\x5b\x59\x91\xe8\xdf\xfd\x6c\x07\xd5\xe1\xb0\x60\x38\xb9\x3f\x1c\x8a\x99\x1e\x8e\x60\xea\x83\xe1\xe8\x14\x25\xe0\x33\x0f\x19\x5b\xdc\xbc\x03\x45\x8b\xe2\xc2\x19\x0b\x01\x5e\x40\xd0\x8e\x74\x9a\x6c\x9b\x5c\xcd\x10\xb4\x67\x3b\x76\xd0\xb5\x99\x91\x1a\xed\xd9\x45\xc2\x51\xbb\xbc\xbb\x69\xa7\x90\x40\x53\x2f\xc6\xd1\xe4\x97\x6c\x4c\x72\x0e\x71\x13\xda\xd7\xb0\x34\x90\x81\xa3\xfd\x6a\x4c\xd9\x78\x46\x5e\xbf\xfa\xb3\xfa\xd1\x4e\x57\xe3\x8c\x8f\x6f\x05\x8a\x30\xe9\x26\xd5\x38\x04\xfb\xce\xa4\x7b\xa9\x98\xbc\x76\x3e\x7d\x7c\x64\x72\x81\x60\x92\x56\x46\xfe\xf1\xfc\x44\x54\x20\xab\x15\xd8\x42\xd8\xd9\x68\xd4\xe3\x8d\x3d\x69\x4f\xe8\x5d\x3b\x1a\x4e\xc3\xe1\x82\x7e\xaf\x00\x24\xf6\xea\x91\x2b\x24\x56\x26\x8c\xe2\x2a\x38\xae\xc2\x44\xd0\x11\x04\x6c\xf1\xf8\xc8\xc3\xf9\xe5\x87\xa4\xa1\x35\x37\x56\x24\x34\x37\xa8\xd1\x1c\x81\xe2\xe4\xdd\x87\xf3\xe3\x93\xef\xcf\x3e\x7c\xf7\x5f\xc7\x6f\x2e\x41\x47\x24\x6e\xd0\xb3\x6c\x4e\xba\xbc\xf8\xb8\x58\x10\xf6\x26\x2b\xc5\x05\xa5\xc0\xad\xfd\xaa\xbc\xbb\x79\xfd\x4a\x74\x44\x6f\x72\x49\x73\xbc\x6e\xef\xb0\x9d\xf6\xab\x3f\xfb\x2f\x5f\xfd\x59\x94\x6c\xb7\xb8\x34\xd3\x14\x03\xc4\x05\xdc\x88\xce\xce\xd9\x9f\x2b\xe3\xa4\x92\xa9\x4e\x54\xab\xd5\x56\xb2\xa0\x95\x55\x65\x03\x7d\x5b\x06\x5b\x12\x51\x0c\x62\x68\x99\xe6\xb9\xa8\x39\xd3\x3c\x3c\xd0\x20\xee\x28\x90\x38\xc5\x4e\xcc\x98\xbf\x26\x1c\x84\x07\xab\x84\x22\x01\x6d\xab\x84\x0b\x5a\x5b\x73\xd6\xcc\x51\x82\x28\x8e\xdb\x40\x52\xa7\x13\xa3\x1e\xa2\xc0\x09\x27\xda\xce\xbd\x0d\x93\x69\x9b\x1c\x4c\xf5\xe7\xac\x24\xe3\x22\x9f\xb4\x53\xb4\x87\x31\xe6\xd5\x33\x94\x6a\xa5\x8d\x36\x15\xed\xad\x12\x92\x1e\x7e\x8d\x0b\xa1\x09\x4a\x9a\x76\x97\x25\x99\x91\xb2\x54\xce\x61\xd8\x04\xe8\x52\xce\x62\xed\xf6\x17\x46\xbe\x6c\x3e\x2b\x12\x6d\xc1\x41\xc9\xd3\x08\x91\xb7\xe6\x6c\x68\x5b\x28\xbc\xdd\x47\x05\x66\x87\x0c\xfc\x02\x69\xb1\x2c\x15\x28\x0c\xb8\xca\x60\x4b\x67\x93\x56\xd1\xe9\x14\x5b\x54\x59\x57\x16\xd3\xad\x4b\xf2\xab\xd4\x36\x6e\xf7\x82\x94\x58\x52\xf3\xe8\x2f\x05\x62\xa9\xf6\xaa\xff\xb2\x11\x6a\xa3\xf7\x4e\xc7\xc7\xec\x91\x3e\x52\x94\x29\xd0\x1b\x48\xb2\x84\x11\xdc\xbe\xe5\x7c\x31\xf8\xf3\x9f\xef\xef\xef\xbb\xf7\xfb\xdd\x82\xdd\xfc\x79\xaf\xd7\xeb\x89\x63\xd5\x6e\x85\x11\xc7\x99\x4a\xbe\x41\xf0\x67\xef\x30\x0f\xfa\x68\x42\xca\xf1\xa0\x8f\x38\xe5\x33\x32\xe8\xaf\x10\x25\x01\xc7\x01\x06\x7c\x07\xc3\xf6\x75\x1b\xb5\xaf\xe9\x8d\xf8\x7f\x56\x8c\x3f\xfd\x6b\x59\x70\x22\x1e\x8a\xc9\x83\xf8\xc3\xda\xa8\x3d\x06\x3a\x4f\xfc\x28\x26\xe2\xdb\x44\xc0\xab\x00\x77\xd4\x9e\xcc\xc4\x7f\x1c\xb2\x65\xa8\x94\x19\xe2\xe3\x6d\x5f\xfc\xb7\x27\xfe\xdb\x17\xff\x3d\x11\xff\x3d\x15\xff\x3d\x13\xff\x91\x0c\x0a\x89\x26\xa9\xf8\x37\x17\xdd\xcf\x28\xfc\x07\xfa\x52\x23\x40\x6d\xcf\x09\xcf\xda\xa8\x9d\x17\x30\x92\x42\x74\xb7\x10\xff\x98\x18\x08\x5b\x5e\x8b\x41\x96\xe2\xdf\x3c\x9b\x89\x8f\xe5\x22\x13\xd5\x4a\xce\x0a\x68\xa6\xe4\x8c\x7e\x12\x65\xcb\xe5\x35\xfc\x2f\x6a\x83\x58\x5a\xfc\x15\x03\x5f\x8a\x7f\xa2\xea\x5d\xc6\xda\xa3\x78\x2a\x04\xbd\xa9\x10\xf6\xbb\xaf\xa9\xda\x82\xe0\x3f\x0f\xff\xc1\x77\xff\xc1\xb6\xfe\xf1\xeb\x51\xef\x1f\xcb\xfe\xb3\x17\xe2\xff\x17\xbd\xe3\x7f\x2c\xc5\xae\xed\xc2\x9f\x23\xf1\xff\xde\x0b\xf8\xff\x25\xfc\xff\x4e\xfc\xff\xf4\xdd\x3f\x96\xfb\xbd\x5e\xef\x1f\xcb\x77\xc7\xef\xde\x8d\xfe\x8c\x32\xe2\x66\x42\x37\x26\x95\x93\x62\x0c\x57\x97\x34\x8f\xd6\x4f\xd2\xfe\x8a\xa0\xc0\x4a\xbb\xca\x66\xe9\x0a\x9a\x20\x04\x2b\xa4\x8f\x12\x0e\xad\x3b\x5f\xb3\x55\x43\x58\xa1\xe2\x13\xbc\xf4\x3f\x7b\x1d\x47\xf1\xe4\x0a\x05\xef\x63\x19\x19\x10\x64\xe1\xe6\x87\xe0\x26\xe8\x5e\xaa\x58\x10\x0d\x8f\x8f\x40\xc7\x88\x3b\x10\x82\x43\x0e\xb9\xbe\x0a\x47\xe9\x00\xe2\xb7\xdb\xaf\x82\xbd\x67\x9d\xce\xb6\x44\x40\xb0\x8d\xb5\xf9\x42\xe4\xb0\xb6\xb2\xad\xf6\x0e\xd9\x69\x0b\x0c\x42\x27\x64\x2b\xcb\xb7\x2e\x7e\xfa\x7e\x4b\x09\x07\xdb\x7e\x52\xd2\xf8\x54\xcf\x2e\x12\x46\x10\xf1\x15\xf3\x35\xab\x42\xd2\xc6\x3c\x7d\xe2\x32\x22\x01\xce\x82\x8b\x8b\x37\x60\x5c\x55\x4f\x63\x5c\x3f\x16\x7c\x05\xcf\x5b\xab\x40\xaf\x9b\x1c\xd2\x2b\xc1\xf5\x49\x50\x2e\xae\x4d\x6d\x8e\x0a\xe1\x17\x03\xfc\x4b\x1c\xfc\x6b\xe3\x98\xf0\x94\xac\xbb\xfe\x98\x25\xe2\x65\x6d\xed\xcd\xc1\x5d\x14\x2e\xaa\xa9\x15\x4b\x9b\x6e\x54\x30\x93\x52\x8d\x56\x06\xd9\x72\x28\x97\x08\xf0\xb6\x82\x05\xc8\xc4\x02\x64\x1b\x76\x96\x85\x9d\x21\xe2\x5d\x02\x99\x5c\xbe\x12\x17\x87\x1e\x0d\x33\x70\xa9\x9e\x96\x47\xb4\x10\x54\xaa\x64\xba\x72\xcb\x2e\xd7\x25\x2b\x0c\x20\xec\xd2\x4f\x5b\xe8\xed\xfb\xa6\x6d\x18\xdf\x71\x25\x56\x39\xa8\x48\x53\xd8\x37\xc6\x03\xfc\x9a\xa4\xb1\xc1\x61\x8b\x67\x23\x69\x3e\x9f\x32\x2f\x49\xbe\xd6\x72\x4b\x47\x3b\xce\x3b\x9d\x44\xba\x1e\xa5\x48\x90\xf5\x6e\xbd\xb3\x0b\x71\x58\x10\x4b\x07\xfe\x7b\x75\x52\xd9\x2a\x91\x42\x93\x4a\x56\x11\x66\x32\x68\xe5\x98\x93\x24\x13\xc4\xa9\xe0\x21\xe5\x4f\xc4\xc0\x35\x3a\x96\x8e\x24\x5f\xa5\x49\x49\x1e\x1f\x93\x92\xd8\xd4\x87\x33\xf2\x55\x61\x25\x1c\x9a\xd0\xdc\x18\x1c\x39\x46\x5c\xd2\x25\x8c\x7d\xd5\x4e\x35\x2c\x2f\x84\x6a\xaa\xae\x56\xae\x8e\x4d\xbc\x9a\x8c\x73\xeb\x7d\x4f\xe4\x46\xaa\x63\x1a\x49\x9a\x61\xdc\xe4\xfc\x0c\xa2\x88\xb9\xe7\xd0\xdd\x27\x37\xd5\xcb\x4c\x12\x5a\x63\x22\x7e\x8d\x89\xda\xa6\xb1\x9a\xf5\x94\xe0\x31\x51\xfb\x35\x26\x62\xc3\x5a\x5e\x2e\x98\xa9\xac\x3d\x21\xb8\x8c\x6e\x64\x2b\xbe\xbd\x13\x59\xed\x96\xe0\x61\xfb\x97\xec\x2e\x2b\xc7\x8c\x2e\xf8\x40\x50\x2a\xd7\xfa\xf7\x08\x2d\xc4\xe7\xa3\x36\x6a\x7f\xf7\xe1\xed\xcf\x6d\xd4\x3e\x3d\x39\xfb\x4b\x1b\xb5\x4f\xde\x7f\x2f\xfe\x7f\x77\x7e\xf4\xfe\x58\x7c\x3c\xba\x10\x7f\xde\x7d\x38\x7f\xdf\x1e\xa1\xb9\xa8\x73\xfc\xfe\xbb\xe3\xb7\xed\x11\xba\x13\x0f\xb7\x8c\x4c\x05\x79\xc4\xc6\x82\xe8\xcb\xc6\x9f\x6e\x58\xb1\x04\xbe\x24\x83\xc1\xb4\x47\xe8\x41\x94\x13\x05\x46\x56\x56\x73\x43\xdc\xc3\x06\xda\x7b\x62\x54\x34\xdc\xe1\xa8\xae\xbd\x82\xfa\x62\x20\x8f\x8f\x37\x24\x59\x88\x4b\x32\xed\x74\x6e\x48\x72\x07\x07\xd2\xd4\xba\xf2\x6a\x6d\xd9\xe8\xb6\xc9\x0d\x49\xe6\xa2\x1a\xd4\x7a\x10\x85\x9c\x6a\xf7\x7e\x35\xd5\xf7\xe3\xa3\x6a\xce\x89\xeb\x4b\x42\xeb\x4c\xed\x55\x28\x07\x68\x98\x14\x20\x44\x2e\x12\x2b\xa2\xc8\x4d\x40\xca\x16\x85\x9b\x30\xca\x85\x0f\x4c\xc2\xd6\x02\xdf\x2b\x63\x8f\x6b\x92\x50\xc1\x5c\x7c\xf6\x98\x8b\x71\x31\x7b\x57\xb0\x8f\xe7\xa7\xca\xf1\xe6\x86\x24\xb7\x04\x65\xba\xbf\xf6\x32\x2f\xb3\x29\x19\xb4\x77\xb4\x9e\x55\xac\x8d\x68\xe7\xd0\xf9\x34\x28\x9c\xb0\xc3\xc4\x23\xa4\x80\xd3\xcd\x5a\xea\x42\xdd\x22\x69\x2e\x4e\x37\x6e\x2f\x58\xb1\x68\xbb\x51\x2d\x78\x97\x17\xa7\xc5\xbd\x9e\x41\xab\x84\xe2\x82\x04\x93\x65\x51\x8e\x4b\x49\x5e\x65\x9c\x33\xf1\xc8\x35\x81\x23\x0b\xa8\x24\x1c\xed\x92\x3f\xcc\x08\x70\x7a\x7e\x8b\x8f\x8f\xe0\x6a\xac\xd6\x4b\x70\xf7\x28\xc9\xf0\x07\x32\xa4\xfe\xda\x8d\xd2\x4e\x27\x1b\x16\x7e\xe5\x91\x80\x13\xd3\x79\x8a\x3e\x9b\x54\x57\x93\x41\x8e\x04\xd2\x19\xb0\x15\x5c\xb1\x1f\x08\xfe\x7c\x72\xf6\xe3\xc7\xcb\x81\x60\x8d\xe6\x83\xed\x1e\xca\x96\x62\x9d\x19\x13\x0c\xd2\x76\x0f\x09\x56\x63\xb0\xdd\x5b\xa1\x8b\xe3\xd3\xe3\x37\xb6\xdc\x0a\x7d\xf8\xf1\xf2\xe4\xc3\x99\xf3\xe2\xf2\xf8\xbf\x2f\x8f\xce\x8f\x8f\x9c\x57\xa7\x47\xdf\x1d\x9f\x3a\xcf\xef\x4e\x8e\x4f\xdf\x5e\x1c\xbb\xcd\x9c\x1e\x7f\x7f\x7c\xf6\xd6\x6d\x17\xa4\x36\xce\x8b\xef\x3e\x5e\x5e\xba\x1d\xad\xec\xc9\xfa\x95\x84\x62\x11\xbd\x62\x14\x7f\x56\x92\xf3\x01\x01\x23\x62\xcf\x96\x98\xad\xa4\xdf\x56\x85\x5c\xd6\x90\x7b\x04\x34\x1d\xa2\x8a\x85\xc1\x0a\x50\xc0\xc4\x07\xec\x59\x4b\x5c\xd8\x0c\x62\x9a\x18\x91\x0b\x0e\x1a\x5a\x68\x40\xd0\x24\x83\x08\xa5\xa9\x8e\x5e\xea\x90\x30\x97\x12\xa7\x8b\x61\xc5\x6e\xe8\xa4\x0d\xdb\xd4\x96\xe8\xa0\xad\x97\x1a\x9e\xd3\x4e\xa7\x0d\xca\x06\x30\x15\x5e\x55\x9a\xfe\xa5\xb9\xe9\xb6\xdc\x48\x65\x4a\xdd\x16\x64\xde\x98\x03\x6b\x15\x6b\xec\xbd\x6a\xcc\x79\x75\xae\xae\x23\x35\x61\x7b\xba\x8e\x48\xe0\xc8\xad\xe6\x0d\x3e\xbb\x6f\x88\xe0\xe8\xc1\x5d\x52\xfc\x02\x70\xfc\x14\xc9\x4f\x6d\xbd\xe9\xc9\xaa\x15\x49\xd6\xf5\x49\xe2\xff\x1f\x6b\x2f\xf4\x7f\x23\x6d\xe5\xe5\xb5\x77\xc4\xc9\x27\xe2\xa2\xd5\x08\x72\x3b\x64\x2a\xac\xdb\x3d\xc5\x32\x1a\x3c\xd8\x1a\x19\x58\x6c\x91\xee\xd5\x95\x77\xdb\x53\x10\x79\xae\xc4\xd5\x5d\x17\xd5\x5a\xf4\x49\x52\x14\x1a\x9c\x43\xe4\x7a\x75\x10\xc0\xf0\x5c\xf4\xd2\xb2\x99\xa8\x2b\x04\x02\x4d\x07\x3e\x25\x92\x50\x6d\x18\xf2\x09\x6e\xec\x9a\xd4\x68\x3f\xca\x6d\x38\xaf\xa7\xab\xcc\x29\xd5\x94\x55\xee\x51\x56\xcc\x89\x75\xae\x8f\x95\x38\xc9\x98\xa3\xfc\x77\xda\x1c\xb9\x1b\x5c\x87\xf1\x96\xca\x52\x8e\xd4\x72\x9b\x0c\xa2\x4a\xe7\xe2\x0e\x02\x6e\xce\xa6\xd5\xf7\x57\x5d\xaf\x78\xcb\xf6\xa3\x6e\x64\x3e\x8c\xb4\x3e\xc2\xce\x78\x08\x52\xb1\xf3\x95\x5b\x43\xb8\x41\x69\x33\xdd\xe7\x99\x51\x59\x30\x70\x42\xfb\x80\x22\xc6\x02\x1b\x3b\xe4\x61\x6b\x82\x25\x47\x91\x71\xa6\x83\x4a\xd1\xd8\x62\x19\x68\x41\x97\xff\xe3\x87\xd2\x23\x5b\x82\x35\x29\xf0\xb1\x40\xd2\xd4\x9e\x0f\x79\x18\xc1\xa2\xd0\x0a\x33\x4b\x3f\xc5\x15\x2a\x20\x99\x65\x15\x16\xc2\x3c\x72\xee\x31\x3f\x26\x09\x43\xb9\xe9\x48\x9d\x7a\xee\x77\x24\x1b\x74\xfa\xa2\x9a\x25\x3a\x27\x29\x7a\xf3\xff\xaf\xe5\xef\xb2\x96\x3f\x92\x14\xfd\xf2\x3f\xbe\x96\x8a\x3d\xf3\x11\x8f\xba\xc5\xd1\x7d\xf2\x75\xe8\xc6\x86\x66\x47\x39\xbe\x87\xc8\x99\x3a\x3f\xbc\x42\x2e\xb9\x85\xa7\xf7\xff\x3b\xd6\xc0\xe0\xe4\xed\xbe\x4c\x0a\x5f\x59\x14\x43\x90\x80\x05\xf9\xd7\x20\xe1\xae\x6e\x02\x43\xaa\x34\xb9\x00\x96\x88\x84\x9b\xd3\xf5\xf6\x21\x8f\x8f\x26\x7f\x89\x4d\x52\x68\x13\x7b\x81\x88\x59\x65\x29\x6c\xb7\x07\xb1\x94\x24\xb2\x8c\x4d\x92\x22\x06\xf8\xb6\x56\x08\xed\x85\xa8\x29\x67\x05\x2f\xb5\x1c\x7a\x6c\x6d\xa8\xb4\x81\x06\xd1\x16\x54\x3a\xce\xca\xc2\xd8\x1b\xe1\x7c\x45\xba\xac\x28\x78\x78\x92\xfc\x9c\x9d\x3d\x6b\x61\xe5\xe5\x0b\xda\xe9\xa7\x48\x9a\x4f\x62\x06\x86\x93\xf9\x90\x8e\xf0\xd4\xa5\xf5\xc4\x21\x07\x11\x87\xf9\x2f\x85\xc0\x92\xc9\xe7\x92\xcc\xa6\x03\xbe\x92\x49\x89\xc5\x55\xe0\xe5\x2a\x0c\x92\xf8\x3a\x23\x60\xce\x08\xb8\x18\x41\x8e\x7b\x07\xf9\x2b\xcc\x0f\xf2\x9d\x9d\x94\x0d\xf3\xca\x08\x58\x38\x82\x55\xab\x41\x30\x2f\x46\x17\x81\x15\x81\x8b\x66\x53\x4f\x3e\x0d\x0b\x3f\xec\x8d\xd4\x42\xab\x60\x35\x17\x64\x36\xad\x33\xcc\xb8\x21\x3c\xe9\xa5\xba\x20\x98\x96\xd5\x0a\x0b\xa5\xfd\xa1\x2a\x0b\xf6\xe3\x75\x10\x2c\x4b\x9a\xa1\x61\x8c\xa7\x12\x9c\xb8\xaa\x6d\x6c\xe8\xea\xc6\x65\x40\x44\x55\xb0\x16\x69\x0d\x96\x2b\xaa\x84\xa8\x72\x4d\xf3\x49\xcc\x16\xa9\x14\x23\x03\x72\x90\x1b\xcb\xbd\x2a\xc5\x2e\x4a\xf5\x10\xb1\xa5\xc2\x85\xa9\x6d\x2f\x5c\x96\xda\x82\x91\x15\x20\x4e\xe6\x5b\x95\xe6\x57\x97\x8e\x4d\x9f\x58\x5b\x20\xfd\xcd\x94\x77\x0c\x17\xab\x15\xdc\x13\xa9\xd7\x37\x5a\xc1\x5f\x60\xa7\x1a\x08\x98\x6f\xe9\x6c\x12\x29\x2b\x21\xdc\x82\xa3\xce\xd2\x5b\xc1\x06\x01\x2e\x08\x31\x41\x5a\x09\xb5\x44\x80\xf3\x24\xaf\xb1\xd3\xb8\xd2\x99\x5b\x1d\xcf\x79\x96\xdf\x10\xa5\xe8\xf9\xee\xe3\xf7\x83\xad\xb1\xd4\xf6\xdc\x10\xbe\xf5\x07\xa9\xe9\x99\xb2\x62\xbe\x05\xb6\xa2\x07\x5b\xb2\x3e\x56\xb1\x5d\xbd\x36\x23\x27\x8b\x8c\xc4\xa0\xaa\x57\xc0\xff\xd5\x61\x79\xe3\xc1\xd6\x94\x4c\x6e\xde\x5b\xc9\xc5\x9c\xd5\x61\x6a\x63\x8c\x2e\x23\x02\x4e\x74\x64\x4b\x69\x89\x6f\x7d\xa1\x2b\x05\x1c\xdf\xe8\xa0\x84\x1f\x55\xb0\xbe\x25\xbf\x9c\x2d\x20\x85\xf5\x36\xfb\x54\xe5\x4b\xa5\x49\x79\x7f\xc6\x6a\xa8\x2f\x95\x1a\x13\xe3\x90\xbf\xce\xb9\xdb\xf8\xbc\xc4\x4e\x71\x65\xa8\x2a\xd0\x48\x1a\x1d\xaf\x49\xa3\x8f\x1c\x0f\x86\x58\xb3\x95\xf9\xf8\xcd\x06\x93\x72\x9b\xad\x09\x50\x1a\xc5\x40\x75\x3b\xea\x77\x56\x07\x19\xb1\x5e\xfd\x1d\x6d\xec\x34\xd8\xfc\x9a\x3e\xe3\xa0\x14\xac\xa3\x0a\xa3\x50\x45\x6c\xce\x26\xeb\xf6\x01\x53\x81\x03\x52\x3c\xc8\x59\x7c\x57\xb5\xcf\x4e\xb0\x9f\x2a\x06\x1a\x89\xc4\x40\x83\x2c\xdb\x10\x06\xcd\xfa\x4c\xe5\xe9\xca\xba\x74\xc4\xf7\x59\x07\xf2\x0c\x76\x18\x65\xb8\x77\x90\xbd\xa2\xba\xa3\x4c\x77\x54\x62\x3a\xcc\x46\xad\x62\x98\x8d\x1c\xc7\x97\xd2\x76\xa4\x7c\xd7\x9d\x95\x40\x2a\xe9\x83\x6e\x6b\xb6\xb3\x93\x2e\x87\xb3\x91\x2c\x53\x3c\x38\x8e\x27\x63\xdc\x08\x01\x68\x5a\xf3\x5d\x6f\x2a\x9a\xe0\xde\xc1\xc4\x9a\xb2\x4f\xf4\xb0\x6f\xf1\x74\x38\x19\xb5\xc6\xc3\xc9\xa8\x4b\x65\xa5\xe4\xd6\x0e\x7a\x81\x37\x81\x02\x34\x6f\x2c\x56\xa2\x3b\xdc\x3b\xb8\x7b\xa5\xa3\xbb\x1c\xdc\xe9\xde\x1f\xf0\x7c\x78\x37\x6a\x2d\x86\x77\x23\xed\x67\xf5\x90\xae\x74\x98\xbd\x06\xbb\x0a\x8d\x25\x64\x60\x6d\x27\x4a\x2e\xc3\xa4\x12\x3a\x57\xe2\xe5\x2b\xce\xb2\xbc\xcc\x94\xde\xce\x04\x57\x0c\x5b\xd0\x94\x70\xd8\x88\x32\x5b\x66\x31\xd4\xc4\x6a\x32\x23\xd4\xe5\x4e\x9b\xab\xdc\x69\x37\x84\x1f\x85\xdd\xd7\x5c\xf1\xe1\x30\x55\xf5\xb7\x1f\xde\xd7\xd5\x08\x27\x20\x6a\x80\xa2\xbc\x62\x3a\xe2\xaf\x0c\xb9\xdf\x3a\x13\x8c\x4c\x33\xba\x75\xaa\x38\xe7\x4a\x92\x51\xac\x19\xa5\x06\x55\x3f\x6a\xff\x3a\x59\xf5\x0b\xd0\xa6\xdb\x50\x5d\x38\xe8\xb0\xd9\xf5\x78\x31\xd6\x6a\x10\x9d\xd7\x99\x66\x2d\xc6\x0b\x66\xa9\xca\xa9\x8d\xaf\xe2\x3d\x07\xe7\x39\x35\xeb\x20\x57\xbb\x6e\x42\xe0\x7f\xcb\x95\xbe\x2b\x42\x95\xab\x60\xfc\x14\x50\x44\x35\xe8\xbf\x6a\x47\xb8\xc6\xe4\xa0\x4e\xff\x95\x0c\xa1\x2e\xc8\xb9\x03\xb5\xa9\x3e\x49\xf7\x38\xbf\xa3\xac\xc8\x41\xa3\x7d\x2a\xa9\xa0\x77\x4d\x3a\x72\x3a\x4d\xb6\x8d\xbc\xfb\x9e\xe6\x93\xe2\xde\xa8\xc4\x5b\x1c\x7f\x0e\x0f\x03\x48\xfa\x27\x32\x64\x61\x00\xf5\x32\x85\x3f\x28\x01\xac\x4f\xcb\x57\xe5\x86\x3f\x95\x3a\x65\xe9\x5e\xec\xce\xe8\x9d\x9c\xd1\x6f\x6b\x38\x70\xf0\x2a\xfb\x1c\x64\x6d\xde\xed\xab\x64\x42\xe2\x55\xd1\xe9\x24\x05\xbc\x92\xd8\x94\x67\xe3\x4f\x9a\x57\xbf\x25\xd9\x42\xa3\xa6\x05\x2b\x6e\x58\x36\xd7\x2c\x3a\xf9\x95\x13\x96\x9b\x80\xb2\x8b\x31\x56\x61\x74\x59\x86\x0b\x45\xfd\x2c\x19\x83\x20\x19\x17\xf4\x37\x82\x7b\x8d\xbe\x08\xda\xa1\xa8\x82\x26\x9c\xa0\x13\xaa\x79\x77\xa0\xce\x07\xf9\x3c\x5d\x78\x9f\xa7\xfa\x2a\x81\xa7\x72\xb1\xdb\x17\x04\xc0\xa2\x58\x34\x75\x56\x7a\x95\xa6\x8b\xdd\xbe\x99\x99\xf3\x5e\x72\xca\xf5\x9d\x89\xef\x7d\xa0\x37\x20\x3a\xd3\x3c\x9b\xcd\x36\x9e\xa1\x1a\x64\x43\x25\x7f\x2c\x50\x96\x26\x92\x45\x2a\x78\x51\xc7\x87\x2f\xc6\x3b\x64\xb7\xba\x37\x2d\xbd\x85\xc0\x8e\x0b\x38\xad\x62\x16\xdd\xe1\x62\x6c\x36\xdc\x80\x88\x98\x6b\x36\x99\x30\x45\x5f\xc9\x5d\xbd\xfc\xba\x51\x88\x7e\x6c\x23\x95\x79\xeb\x6e\x59\x26\x0a\x81\x05\x07\xcf\x78\xc5\x38\xd1\x41\x6c\x62\xc0\xd8\x85\xe0\x16\x9d\x26\xbb\x20\x14\x4b\x1d\xfb\x82\xd6\x9d\x93\x77\x5f\x16\xec\x16\x10\xde\x25\x21\x29\x88\x7f\x90\x13\x23\xd8\x82\x35\xf3\xd8\xc2\xc5\x78\x47\x9c\x08\x5b\x53\x8c\x52\x7b\x3d\x7f\x58\x86\xd6\x29\x0e\x83\xbf\x84\x90\xb0\xb9\xc1\xf3\xdc\x7f\x5b\x91\xb3\xd2\xf2\x7d\x36\xbe\xa5\x39\x39\xf4\x9a\x50\x2f\x13\x92\x0e\xbc\xf7\x17\x0f\x25\xe0\x9f\xb0\x71\x55\xde\xdb\x2a\x95\x9d\x90\x80\x5a\x58\x25\x28\x7c\xfa\x7c\xe0\xcd\xd3\x3a\x00\xca\x34\x81\x4f\x5f\xf8\xdf\xd5\x09\x33\x9f\x5f\x56\xaa\x5b\xe0\xd6\x85\x9e\xf5\xc2\x36\xaa\x65\x9e\xfa\x65\xe4\x9c\xba\xc5\xa2\xaf\xbe\x3f\x79\x59\xfd\x1e\x39\x28\xba\xb5\x3d\xaf\x34\x38\xaf\xb9\xad\xed\x3d\xf1\xbe\x2b\x74\xad\x3f\x3e\x8d\x7c\xbc\xd4\x0d\xac\xdc\x55\x56\xab\x1f\x6c\x62\x66\xbe\x27\x1c\x11\xa4\xd6\x5b\xd1\xa1\xdf\xad\xb3\xef\x05\x07\xaf\xa8\xcb\xe4\x86\x5e\x5a\xd0\xcd\xc7\xaf\xef\x66\x73\x1f\x2f\xf4\x43\xd3\x2d\xa5\xa5\xc4\x6e\x32\x0a\x87\x54\x2e\x2c\x95\x6a\x5f\x8e\xc1\x45\xf0\x02\xee\x2a\x48\xaa\xd5\x85\xdf\x7e\xd8\xb6\x9a\xcf\x60\xee\x5e\xf3\x6d\xe1\xe4\x16\x11\x23\x53\x77\x5d\x7e\xa7\x6f\xc4\x49\x31\x97\x5e\xf6\x21\x09\x9d\xa4\x35\x14\x3c\x51\x14\x33\x64\xa6\x9f\x16\xec\x44\x26\x2d\x92\x21\x36\xa2\xba\x76\x31\x2a\xd1\x96\x78\x67\x14\x21\xdc\x33\x57\xb3\x3c\x40\x25\xf4\x1f\x62\x2b\x30\x3e\x2d\x97\xf3\xaa\xcd\x9d\x15\x90\x9b\x0e\x2a\x4e\x6d\xd6\x12\x22\xd2\xb8\x7c\x07\x4f\x97\x2c\x1b\x7f\x22\x82\x74\x42\xf9\xaa\xa5\xad\x55\x22\x2a\x92\x6a\x24\xad\x5a\x91\xa2\x53\x66\x85\x72\xb9\x55\x75\x85\xed\x3e\x6a\x94\x2c\xaa\x2c\x8a\x45\x9d\xb1\xba\x03\x34\xca\xdb\xb7\xf2\xda\x6d\xc8\x9f\x7b\xad\x98\x39\x5c\x0e\x08\x28\xa9\x04\x9e\x6a\xf3\xa4\xea\x4b\x94\x04\x92\x3e\xbb\xfe\x9a\x36\xff\x56\xd7\x26\x94\x3c\xa5\x65\xbd\x55\x6f\xb4\xbd\xef\xfd\xf6\x10\x09\x5a\x54\x65\x43\x08\xf5\xb5\x1e\xdb\xfd\xd4\xbd\x38\xab\x5b\xd2\xf2\x4d\xf8\x40\x5b\x13\x86\xbe\x24\x29\xe2\x8f\x8f\xc0\xd8\xc8\x53\x25\x9d\x5f\x13\x92\xaa\x1d\xba\xba\x2a\x16\x24\xd7\x20\x18\xf6\xa4\x25\x47\x44\x6d\x7f\xe3\xd2\x5e\xcb\x46\xba\xe0\xbf\x48\x7f\x23\x6e\xce\xb0\xab\x2b\xc8\x0f\x54\xdb\x8f\x00\x19\xd1\x87\x33\x1c\xb7\x1b\xf9\xc9\x36\x11\x7e\x73\x52\x59\xd5\x51\x46\xb2\x65\xeb\x1b\xd0\xaa\x3b\x1c\x82\x28\xb7\x43\x89\xb5\xea\x9b\x41\xcf\x43\xb7\x03\xe4\xc1\x92\x68\xca\xcd\xab\x54\x37\x3e\x47\x2b\x1b\x8e\x48\x31\x8d\x57\x5e\x7a\x26\x81\x73\xd0\x17\x23\x77\xb1\xa1\x46\x8a\x63\x64\x82\x2e\x6a\x66\x2a\x0c\xb9\x9c\x1d\x15\x68\x38\x77\x52\x42\xc1\xc2\xd4\xcc\xc7\x10\x5d\x62\x51\x2a\x46\xc1\xf2\xe2\xf2\xec\x82\x73\x2f\x6b\x54\x1d\x5c\xdd\xd3\xd9\xec\x8d\x97\x5d\x0a\x69\x22\xa6\xfa\xc6\x4e\xce\x1c\x39\x2f\xcd\x56\x15\x6d\xfb\xda\x4e\x67\xf2\x57\x57\xd5\x14\x5f\xb2\x92\x5c\x85\xf5\x6d\x57\x16\x97\xe8\x5c\x56\xf2\xa2\xf8\x97\x38\xa0\xad\x1a\x3c\xa2\x15\xd8\x61\xa2\xb0\x2a\xdd\x6e\x22\x4c\x55\xd7\x45\xaf\x41\xc3\x66\x79\xa8\x5b\x07\x56\xf8\x43\x62\xac\x98\x3c\x90\xa9\x32\x2f\x1e\x45\x60\x45\xc1\xb9\xb7\x19\x75\x5b\x1b\x54\xd6\x58\x40\x60\xab\xc9\xc4\xc1\x63\xd5\x6e\x35\xb2\xa9\xe0\x3b\x5d\xdf\xc1\x76\xb5\x87\x57\x37\x52\xc5\x8e\x12\xe3\x99\xf7\x8d\xce\x21\x95\x56\x94\x6b\x88\x69\xe3\xc3\x06\x78\x44\x37\xe2\x23\x29\xd9\x44\x78\x00\x2a\x10\xa0\x2b\xfb\x39\xd8\x44\x55\x9b\x00\xb1\x1e\x83\x79\xc3\x56\x90\xef\x26\x4e\x4c\x15\xbc\xd7\xb4\xe5\xe0\xb0\x49\x31\xd7\xf8\xcb\x18\xdc\xe0\xf0\xdc\x83\xff\x50\xc5\x8f\xc6\x55\xc1\x3b\x88\x83\x21\x2a\x48\x45\xea\x8e\x60\x8d\xa7\xce\x3c\xe2\x87\x6a\x2e\xe2\x2a\x16\x92\x4b\xac\xdb\xd6\xe9\xfe\xa3\x36\x00\x8e\x3b\x11\x9d\x26\x1e\x4d\xf9\x57\xbf\x1f\x8e\x1c\xbf\xab\xd0\xaf\xed\x4b\x07\xc8\x5c\x8f\xeb\xff\x0e\x3a\x72\xb7\xcb\xf1\x3c\xf3\xb6\x0c\xbc\xa6\xd7\x2f\x98\xf5\x77\x8b\xf4\xe1\x6e\x20\x71\x40\x4b\x99\x76\x56\xba\x70\xa0\x02\x02\xf6\x92\xc9\x9b\x22\xe7\xea\xea\xf5\xe1\x4e\x1d\x3a\x5e\x6d\xb5\x09\xd6\x96\x79\xb5\xdd\x06\xb0\x4e\xe5\xa5\xee\x35\xdf\xb0\xd9\xde\xba\xea\x72\x5f\x32\xf4\x0a\x90\x46\xda\xd5\x78\x42\x82\x50\xb8\xb3\x35\x7d\xc9\xdb\xc7\x9f\x7b\xed\xe6\xba\x10\xa0\x70\x63\xb8\x6e\x6b\xeb\x2a\x24\x60\x67\xb8\xd6\xd1\xad\x1e\xa1\x58\xa7\x37\x0f\x40\x63\x2d\x7e\x03\x5a\xb1\xbd\x6c\x84\x55\x1a\x3d\xa9\xcc\x19\xf1\x1d\xaa\x42\xba\x0b\xb9\x84\x81\x63\x90\x16\xbd\x70\x9d\x7a\xca\xac\x20\x8f\x64\xd6\x8b\x0f\x25\xb0\xf5\xb6\xdd\x46\xc2\x5f\xc7\xbc\xee\xac\x82\xd4\x1b\xbe\xd2\x8d\x92\xfc\xce\x53\x3e\x40\x58\x07\xd7\x05\x1f\x32\x2e\x68\x7b\x4c\x5d\x25\x45\x45\xa3\xb6\x41\x27\xb2\x6b\xd2\x34\x44\x38\x45\xbd\xd9\xab\x15\x92\xed\x38\xbb\xfd\xc5\x6d\x39\x75\x4d\x7b\xb7\x59\x09\x84\x53\xd9\xd8\x9a\xc3\xa6\x94\xf4\x37\xf2\xba\xe7\x2a\x42\xce\xc8\xbd\xba\x6f\xbf\x5b\xd2\xd9\x84\x30\xfc\x83\x54\x1e\xfc\xb4\x4e\xf8\x23\x65\x03\x7e\x50\x25\x3f\x43\x9c\xf3\x38\xb1\x24\x4e\xe9\xe5\x6c\x06\xcf\xfe\x66\xf9\xff\x24\x54\x68\x79\x22\x5c\xb7\x65\xf0\x72\xe9\x74\xb4\xce\x3d\xb5\xf1\x79\x7a\x07\xdc\xaa\xe2\xf9\xce\x4e\x4a\x86\xdc\xd1\x6a\xaf\x42\x59\x47\x83\xe1\x18\x88\x00\x36\x8d\xf1\xe4\x86\x00\xda\x34\xde\x93\x13\x26\x68\x05\xe2\xe2\x38\xf1\x15\x41\x55\x9a\x1d\x52\xcb\xba\xb3\x03\x22\xfb\x26\xc2\x4b\x95\xdc\xdd\x55\xe6\x12\x35\xd4\x22\x30\xf5\x4e\x79\xed\x53\x00\xb3\xd3\xe9\x10\x15\x08\x90\xfb\xad\xef\x88\xe5\xcf\x25\x20\x90\xfb\xad\x8f\x44\x62\x4d\xde\x48\xdd\x7e\x41\x4f\xc4\xed\x41\x4a\xd3\x7d\x62\xba\xc6\xe8\x43\x83\x61\xe5\xcd\xe3\xa3\x67\x01\xa4\xde\xba\xd6\x21\x5a\x32\xe0\xb5\xac\xdd\x4b\xcc\xc8\x04\x04\x56\x08\x1a\x25\xed\xfc\xd7\xb7\xda\x21\x7f\x41\xdc\x95\xc8\xc1\x21\xd5\xcf\x4e\x28\x58\xf4\x77\xf9\x17\x8c\x86\x7f\x22\x29\xfa\xdb\xff\xc5\xd1\x32\x52\xc6\xa2\x8d\xc6\x4f\x39\x64\x67\x0e\x4e\x79\x24\xe9\x20\x71\x15\xdd\x7c\xc8\x46\x9a\x79\x55\x13\x6d\x55\x0e\xec\xd7\xa3\x30\x94\x9b\x65\xfb\xbe\x41\xa4\x1d\xc5\x9e\x10\xbb\x16\xc4\x74\x1c\x35\x7f\xfe\x42\x44\xe9\x57\xd7\x71\x4c\x00\x59\xc4\x62\x99\x10\x07\x25\xa6\xff\x16\xac\x68\xc7\x72\x4b\xb2\x09\x08\xdb\xbe\x08\x41\xda\xfa\x3c\xa3\xb3\x24\xdd\x04\x59\xca\xd4\xfd\x75\x78\xb0\x01\xf3\x05\x1f\x43\x74\x25\x3f\xd7\xe1\x1c\xf9\xb5\x8a\x31\xc4\x7b\xb8\x7c\xc5\x4e\xfe\xdc\x08\x29\xd6\x1a\xbf\xd3\x49\x08\x60\xd1\x42\x6a\x24\x1c\x1d\xbd\x14\xb6\x0e\x47\x0a\x1b\x7a\x29\x5f\x7f\x29\x15\xc4\xd4\x48\xdf\xc1\xdc\xd6\x8e\xc0\x75\x5e\x94\xa6\xb9\xed\x7c\x39\xbf\x26\xcc\x9a\xfa\xf3\x4e\xa7\xf2\x8e\x1d\xda\x9e\x95\x05\x2f\x84\x3c\x88\x55\xb6\xd2\xaa\x4a\xa5\x77\xac\x98\x27\x5c\xe9\x26\xe5\xfb\xf1\xac\xc8\x8d\x39\xf0\x2f\xa5\xd3\xb8\x24\x19\xc5\x63\x4c\x05\x6a\x51\xc2\x70\x84\x72\x4c\x0e\xf2\x57\xca\xc0\xde\xd1\xa5\xdf\x10\x9e\xe4\xa9\x55\x97\x80\x38\xaf\x58\x44\x49\x5e\x35\x9c\x62\xf1\x60\xc2\x43\xdc\x33\x5a\xb1\x26\xf2\x7c\x4e\x0d\x02\x53\x4e\x12\xd6\x85\x5c\x2b\x97\xb7\x7b\x2d\xa5\x4f\xe5\x52\x95\xda\xbe\x2e\x8a\x19\xc9\xf2\xf6\x00\x9e\x6c\xe0\x9f\x81\xa9\x00\x1f\xd4\xc2\x6a\x1d\x23\xf9\x63\x1f\xe3\x5e\xa7\xb3\x9d\xbc\xcf\xf8\x6d\x37\xbb\x2e\x13\x92\xbe\xde\x7b\xf6\xe2\xc9\xfe\xd3\x27\x4f\x9f\xa6\x2d\x15\x82\x5e\xb7\xd2\x5f\xad\x12\x9e\xa6\xce\xcc\x60\x32\xe7\xd9\x7d\x42\x50\x44\xdb\xab\x67\xa0\x06\x19\xf4\xee\x56\x10\x04\xd8\xab\x1e\xfc\x8d\x0f\xa5\x12\x60\x27\x2f\xf8\x56\x39\xa7\x36\xd6\x8c\x53\xef\xd5\xab\xfd\xc7\x27\x2b\x30\x98\xfe\x92\x16\x88\xa8\x07\x91\xd0\x5a\xfe\xa2\xea\xef\x87\xfd\xfe\x60\x5f\x7e\x93\x49\x16\xcd\xa7\xfe\xcb\x56\x7c\xe5\xb7\xf6\x9e\x9b\x55\xac\xcb\xf5\x21\x57\xd5\x3a\xce\x2b\x1e\xef\x17\x6d\x8e\xdd\xd2\x8f\x5e\xce\xa6\xca\x06\xfc\x9f\x5c\xfa\xbe\xea\x57\xf5\xf0\xe8\x54\x92\x30\x19\x8d\xd7\xed\xe4\x59\x16\x05\xa0\xbc\xbd\xf9\x5e\xf5\x0e\xd5\xb0\x86\xff\x87\x8f\x06\x31\x5d\xbf\x52\xf3\xef\x1b\xf0\x91\x3a\xee\x7e\xdf\x87\xca\xad\xbe\xd1\xaf\x83\xd1\x84\x54\x84\x6b\xdb\x80\x00\x06\xb7\x22\x1d\x3d\xef\xe8\xae\x8c\x22\x9f\xbc\x7e\xbd\xaf\x94\xf7\xea\xd5\x6e\x22\xde\xa5\x9b\x6c\x06\x91\x3b\x22\x1d\x48\x4b\x52\xa5\x7e\xe5\x9a\xc0\x37\x07\xc9\x28\x7b\xfa\x5e\x23\x4b\x28\x0b\x35\xf2\x5d\xb2\xf5\x19\xc9\xc5\x60\x14\xc7\x85\xfe\xd2\x68\x93\xe5\x5a\xfd\x18\xce\xca\x58\x59\x95\x0b\xcc\x56\x44\xa6\xa8\xac\x71\xa6\x10\xe5\x40\xfe\xfd\x33\x41\x3d\xb4\xdb\x4f\x95\xbe\x97\xfb\x41\xa0\xdc\xd0\xa5\xaa\x74\xc4\x5c\x99\x4b\x00\x13\xa4\x1a\x90\x4e\x61\x3f\x1c\xf5\x10\x31\x09\x3f\x9a\xfd\x92\x16\x61\x36\x31\x3b\x51\xd5\xcb\x8e\xf2\x5f\x58\x28\x5f\x1a\x90\xfa\xe7\xe3\x62\x42\x26\x27\xf3\x39\x99\xd0\xd0\x0b\x2e\x6c\x41\x00\x76\xac\x91\xb3\xa5\x6b\x5d\xd1\xd8\xb3\xf4\xaf\x12\x77\xfe\xd2\x77\x9e\x09\x6e\x62\x55\xde\xb3\xf0\x52\x97\x83\x69\x4c\x99\x93\xc7\xef\x13\xaf\x0a\xd7\x36\x5d\x4d\x5d\x2a\x65\x2a\x0f\xcd\xc8\x74\x6f\xbe\x07\xca\x62\x57\x80\x8f\x31\x15\xa3\x75\xe4\x54\xa5\x9d\xdd\x5d\x39\x18\x42\x3e\xc5\xe4\x63\xc1\xa0\x7c\x1b\x37\xb7\x19\x12\x71\xc9\x71\xc2\xaf\x04\xd4\x8b\x02\xf4\x6a\x6b\x3b\xb2\x9d\xd0\x8b\x26\xa2\xf7\x8a\x35\xa1\xc0\x77\x87\x2b\x68\x08\xc8\x9d\x4a\x48\x28\x65\xe2\x07\x44\x86\xde\x16\x78\x02\x7f\xbd\xcd\x2a\xfa\x76\x5a\x2a\x27\x6c\x1d\x52\x2e\x17\x3b\x7d\xc4\x30\xdf\x25\xad\xc6\xe6\x98\x6a\x2e\x8e\xc6\x64\x71\x85\xc6\x44\x31\x5e\x04\x03\x5e\x33\x5a\xb5\x76\xc8\x8c\x29\x75\x48\xd4\x3f\xac\xb1\xcf\x51\x31\x72\xba\xd9\xec\x3e\x7b\x28\xcf\xc9\x5d\x36\xa3\x93\x0c\x9c\xa4\x4d\xe0\x78\xda\xe9\x50\x79\xfb\x4d\x59\x36\x27\x35\x06\x36\x8e\x29\x8d\xc9\x31\x80\xb9\x93\x7d\x40\xcb\x32\x1d\xbb\x19\x65\x32\x1f\xf4\x8d\x8b\x26\xaa\x97\xfc\x4a\xc6\xd5\xe8\x51\x8e\xa9\x82\x1d\x24\xb8\x3b\x70\xa9\x04\x90\x47\xf5\x60\x9b\xd9\x80\xf2\x07\x9e\xdb\x36\x54\xf3\xed\x0e\x93\xb4\xa5\xac\x1b\xf2\xc3\xdc\x31\xe9\x12\xcc\xe7\x20\xe8\x4b\xa9\x0f\xe1\x1e\x0f\xed\x34\x9d\xf6\xa5\x21\x9a\x12\xa2\x47\x91\x8b\xdb\xa4\xd6\x87\x2a\x8f\x42\x59\x4d\x5c\x99\x15\x28\x92\xad\xcb\x6c\x09\xc7\xbf\x8e\xc9\x42\x7e\x44\xf1\x51\x36\xdd\x8d\x50\xb8\xf1\x6a\x74\x9a\xd3\x56\x35\x8e\x4c\x12\x0c\x61\x68\x7e\xf3\xd3\x7b\xfc\x07\x29\x8c\xfc\x6b\x53\x9c\x0d\x63\xc8\x9c\xb1\xad\x4c\x47\xdb\xc8\xa2\x39\x6e\x4a\x9e\x31\xc1\x63\xab\xa4\xb1\x98\xa1\xac\xcb\x96\x39\xa7\x73\x82\x73\x94\xa9\xf4\x36\x20\x30\x6d\xa3\x0c\xb6\x52\xb2\xfa\x32\x86\x9f\xfe\x0d\xee\x8c\x8c\xe4\xb8\x40\x99\xcd\x8e\x93\x7d\x95\x8f\xf8\x46\x0c\xb6\xec\x23\x34\xc7\x02\xcb\x8c\x8d\x18\xee\xd2\x67\xb3\xf3\xcd\xd8\xec\xd2\x63\xae\xf3\x78\x86\x1e\x02\x27\x43\x1e\x5a\xb5\x2c\xfa\x1a\xcd\x9b\x25\x12\xa5\x2b\x7f\xcd\xa3\xae\x0b\xda\xbe\x58\x6e\x91\x4e\xe1\x63\x04\x3a\xb6\x29\x93\x08\xe9\xbf\x6b\x20\x85\xca\x4c\x48\x90\x81\x4a\x7a\x47\x69\x48\x29\x71\x18\xb0\x57\x96\x32\x39\xa3\x00\x26\x38\x7b\x68\x23\x99\x9f\xa2\xec\x5e\x89\x3f\x90\x84\x53\x1e\x00\x63\xb9\x05\x69\x84\x53\x14\x8f\x16\x40\x35\x24\x14\x98\x56\x21\xa1\x10\x33\x53\xf6\x7f\xf4\x37\x19\x1a\x52\x80\x98\xb3\x16\xd0\xa3\xb4\x21\x4c\x95\x5a\x8a\x67\x37\x48\x0e\xa4\x98\x5f\xd3\x9c\x5c\x08\xa4\x9e\xfa\xdb\x21\x0e\x7d\xb1\xf9\xe6\x29\x09\x60\x11\xa2\x82\xb8\xfc\x1d\x59\x82\x84\x13\x3f\x15\x13\xd2\x7a\x1a\xdd\x72\x61\x8a\x32\x8e\xb4\xc9\x38\x23\x77\xa8\xb4\xca\x30\xa4\x9c\xd2\xd4\x96\xb7\xa8\x49\xea\x0d\x71\x0c\xf1\x0f\xda\x7c\x31\x59\x42\xfa\xe7\x5c\x13\xf7\xf2\x39\x4d\xd1\x18\xdf\x72\x5d\x86\xa3\x25\x9a\xa5\x68\xaa\xee\x9a\x53\x9a\x7f\x22\x20\x3d\x6a\x8d\xf5\x2d\x90\x14\x4e\x32\x0c\x96\x7e\x66\x8a\xfa\xfe\x8b\xa1\x9b\x13\x2e\x5f\xa5\x82\xc7\x50\xa8\x49\x26\xf7\x74\x70\xec\xd4\x7c\x95\x19\xcf\x48\x63\x69\x99\x6e\xdf\x2c\x00\xce\xac\x8e\x1a\x97\x2b\x44\x57\xc9\x5f\x49\x8a\xfe\x6b\xbd\x18\x51\xda\x92\xeb\x5b\x73\x9e\xb1\x4f\x90\xc1\x8b\x2b\xdd\xc0\x09\x28\x0d\xf1\x76\xdf\xbc\x79\x4b\x66\x84\x13\xf3\x66\x9e\x2d\x30\x11\xff\x3b\x06\xaa\x34\xbf\x11\x47\x42\xed\x5a\x93\xc0\x51\xea\x24\x7d\xca\xcc\xc9\x11\xab\x7b\xd0\x7b\x2d\x07\xab\x77\x5b\xf7\x85\x96\x12\xad\xaa\x9c\xe2\x4b\x0c\xe1\x99\xf3\x1b\x2b\x36\xa2\x87\xc9\x0c\x17\x43\x3a\x4a\x23\xd8\x6c\xe0\xcc\x5c\xa5\x1c\xcf\xba\x77\xf3\x77\x05\x93\x93\x17\xe3\x5a\xa6\x2a\x05\x39\x24\x0f\x02\xf8\x73\x00\x60\xe2\x00\x00\x4d\x3f\x17\x43\x32\xc2\x53\x4c\x6d\x8a\x13\xc4\x53\x44\xeb\x37\x33\x84\x2d\x53\x58\x42\xc2\xb4\xb1\xf2\xd4\x1e\x53\x01\x12\x41\x2c\xca\x29\x72\x0c\xd9\xf4\x66\xf6\x94\x0b\x44\xe6\x3b\xce\x89\xb7\xf3\xe2\x6e\x8d\xd2\x54\x6c\x47\x11\x6c\x40\x86\xe9\x90\x8c\x50\x89\xe9\x30\x1f\xc9\x60\x20\xad\xff\x4a\x32\x54\xd9\x88\xfc\xb0\x76\xe9\x53\x54\xa8\x60\x49\x49\x26\x7e\x07\xe1\x72\x4b\xc9\x55\x49\xe0\xab\x21\x86\xc5\xd0\x18\xe6\x43\x32\x6a\xb9\x8e\x6c\x49\x8a\xfe\x9e\xb0\xd4\x07\x50\xdd\x17\x4b\x91\x6c\x74\x4b\xd4\xab\x40\x39\x2c\xd5\xa4\xc8\xab\x3e\x32\x12\x16\xe3\x38\x37\xf1\x57\x5c\x5e\x04\xb6\x59\xad\xca\xf9\x7b\xc3\x55\x03\x57\x08\x2a\xd1\x52\xce\x70\x76\x00\x19\xf2\xdd\x6b\x46\x95\x08\xae\x99\x19\x2d\xf9\xae\xa2\x3f\x66\x70\x3a\xbd\x4c\xe4\x33\xb8\x91\x65\x56\x21\x32\xc1\x79\xf7\xe4\xec\xe4\xf2\xe4\xe8\x14\xcd\x9c\x54\x49\x4b\x75\x0c\x66\xeb\xee\x29\x7d\x90\x67\x5d\x5b\x4e\x5e\x23\x69\x32\x5c\x42\x16\xa6\xf1\x28\x45\xb3\x7f\xc7\x6d\x56\x65\x70\xb7\x7b\x8e\x3e\xcf\x4c\x11\x46\x25\x73\x0b\xc9\x6d\xb1\x69\x9d\x78\x76\x93\x22\x51\xf7\xf7\xbd\x16\x7d\x56\xc0\x74\xa7\x6f\x33\x77\x74\x90\x60\x45\x8f\x90\xca\x01\x30\x58\x37\x9a\x7a\x48\x50\x5d\x88\x19\xe6\x60\x0b\x52\xe2\x2c\x12\x6b\x3b\x73\x03\xd5\x26\x45\xc5\xf8\xbe\x44\x85\x43\x90\xc9\xc5\x5f\xc2\xcd\xf6\x5f\x92\xa3\x40\x65\xda\x92\x09\xa8\x74\xde\xa9\x8b\x87\x7c\x7c\xcb\x8a\x9c\xfe\x46\x58\xf2\x99\x67\x4c\xd0\xe4\x4b\x64\x26\x35\x60\xab\xb4\x5b\x3e\xe4\x63\x63\x7a\xe9\xf7\xe9\xc5\xa9\x2e\xd3\x15\x89\xe4\x6b\xf4\x7c\x17\xc5\x92\xfa\xc8\xb7\xee\xb4\xab\x25\x61\x11\xf2\x41\xdd\xfd\x88\x8a\xdb\x3e\xf4\x8a\x48\x72\xb8\xf7\x4d\xb8\xcb\xaa\x93\x82\x17\x42\x7b\x65\xa0\xdc\x52\x05\x32\x5f\xa8\xb9\x66\x7d\x8e\xba\xe6\x9a\x35\x21\x8a\x88\xa6\x87\x7e\x00\xf2\xc8\xdc\xb6\x8a\x8f\xc1\x44\x29\xb6\x9a\xee\xcd\x38\x7b\x67\x5a\xd8\xd4\x7b\x4d\x55\xd0\x24\x58\xb1\x28\x8d\x04\x5c\xab\xcd\x75\x9b\xb2\x41\x65\x24\x00\x26\x83\xbc\x89\xbe\x8b\xce\x54\x45\xe8\x0b\x5f\x57\x59\x46\x85\x1f\x79\xc3\xba\x3a\x01\xa0\x1c\xae\x5f\xbb\x91\xf2\x80\x1a\x61\x8e\x1a\xb4\xc4\x8d\x24\x09\x23\x2c\x74\x9e\xd1\x60\x97\x58\x84\x73\xf8\x39\x94\x18\x0c\xb6\xfb\xab\x01\x49\xab\x52\x0c\x66\xa5\x18\xbc\xd3\x31\x86\x5b\x02\x06\xa9\xe7\x11\x18\x5e\xab\x70\x14\xff\x00\x61\xe2\x50\xb5\x3b\x71\xf0\x2c\x05\xaa\x68\xee\x0d\xd5\xad\x75\xdc\xe0\xa6\xea\xd7\xf2\xab\x94\xae\x65\xa0\x6a\x6d\x04\x1f\x56\xdc\x43\xfe\xce\xad\xf2\xb6\x58\xce\x26\x5b\x39\xb9\x23\x6c\xeb\x16\xac\x22\xda\x92\x14\xd8\x8c\x33\x54\x26\x09\x96\xcd\x53\x32\x02\x89\x0c\xce\x49\xb9\x9c\x71\xcc\x65\xe6\x0b\x56\x07\x70\x9e\x58\xdd\xf1\x25\x28\x4a\x15\x1f\x01\xb0\x28\xd5\x96\xa2\xd9\x5c\xdc\xad\xe4\x7e\x2b\xe3\x8e\xa3\x47\x09\xaf\x96\xbc\x29\xe8\x42\x20\x9a\x77\xc3\x6f\x2d\x76\xfa\x9e\x8c\x4f\x66\xb9\x86\x0a\x32\xd6\x6e\x30\xa4\xca\x27\x39\x88\xf0\x35\x44\x12\x20\xdc\x13\x57\x23\x93\x12\xd9\x99\x36\x69\x39\xf7\x11\x74\x0e\xd7\x91\x4a\x75\x09\x09\x3c\x17\xbb\xd9\x4e\xbf\x55\xc8\xf6\x20\xc7\x40\x66\x83\x02\x2f\x71\xb9\xab\xbc\xff\x9d\x41\xea\xa2\x4b\x9d\x87\x67\xe6\x38\xfb\x94\x68\x8c\x99\xee\x61\x8a\x97\xbb\xfb\x7f\x1a\xb7\x6c\x9d\x29\x1a\xcb\x28\x85\xdd\xac\xc1\x3d\xc9\xf6\x95\x71\x15\xab\x80\x91\x6c\x36\x2b\xc6\xb5\x42\x55\x10\xdc\x81\xd6\xb0\xd7\xe9\x28\xf1\x9b\x9f\xee\xdc\x6f\xd9\x18\x63\xc2\xaa\x50\xcc\xba\xd7\x59\x49\x76\x08\x2a\xcc\xf0\x77\x72\x9b\xd8\xbc\x78\x8d\x7b\x07\xc5\xee\x6e\x2a\xc5\xfb\x49\xb1\x23\x2b\xa0\x62\x87\xa6\x2d\x55\x19\x13\x94\x9b\x5f\x5c\x6c\x3f\x26\x2b\x08\xb4\x10\x4a\x84\x35\x4a\x37\x96\x4f\xce\x94\x65\x9f\x87\x53\x3e\x08\xbf\xa8\x66\x04\x9a\xb5\x35\x25\x4c\xa9\x4a\x63\x55\x49\xbe\x34\xe5\x5d\x2d\x4e\xae\xe4\xf5\x82\x62\x31\x1e\x2e\xca\xaa\x06\xc6\x2a\x58\xef\x9a\xcb\x47\xa6\xc9\x54\x4b\xae\xf5\x9b\xce\x82\x83\x1d\xde\xa2\x58\x80\x02\xae\x29\x92\x43\x56\x67\x0b\xe9\x12\x70\x97\xd9\xcd\x0d\x99\xa4\xc9\x30\xdc\x3a\x3b\xc5\x51\x6a\xec\x22\xc5\xba\xaf\x37\x89\x2c\x61\x7f\x4c\xa5\x0d\x34\x7a\x95\x9d\xd9\xa9\x2c\xfb\xce\xfe\x9f\xdc\x1e\xe4\x4b\xab\xfe\xcb\x37\xbb\x13\x21\x0d\x6a\x05\x49\x79\xf8\x89\xb9\xbb\x85\xf3\x2f\x48\x8f\xfa\x19\x1a\x70\x81\x43\xa7\xeb\xb5\x7d\x55\xe0\x4d\x27\x12\x56\x77\x3b\x5d\x83\x6a\xc5\xca\xe2\x9e\x37\xc4\x1e\x8a\x22\x61\xe0\x51\x9c\x47\xa6\x43\xd5\x48\x23\x2b\x99\x59\x26\x86\x6d\x69\x05\xdb\xfa\xda\x35\x63\x3c\x25\x86\xc2\x63\x43\xb9\x8a\xa4\x2c\xaf\x0c\x82\x75\x8f\xdf\xff\x78\xf9\xf3\xd5\xd1\xf9\xf9\xd1\xcf\x2b\x44\x63\xd8\x96\x6e\xd8\x2f\x45\x10\x67\xe3\x30\xf9\xca\xee\xd3\x41\xb2\xc9\x9a\x09\xd2\x36\xc4\xa9\x2e\xe5\x2d\x70\x15\x73\x0f\xae\x46\x80\x12\x73\x1a\x2b\x8a\xde\xe3\x23\x79\x8d\xd9\xe1\x74\x90\xcb\x28\x8d\x40\xe0\xd3\x18\x0a\x73\x90\x4a\xe1\x20\x15\x49\xce\x9b\xd1\x41\xed\x05\x23\x0b\xe2\x05\x5c\xb4\xb7\xa4\xc2\x23\x74\x9a\xf0\xd7\x3d\x8f\x0f\x83\x41\xe7\xde\xa0\xa9\x3b\x68\xbb\xe4\x6c\x37\x58\xf5\x7c\x87\x9b\xa8\x55\x85\x40\xdd\xaf\xf8\x41\xb1\xb3\x93\x52\x19\x67\x51\xdc\x2b\x45\x0a\x39\xff\x5a\x1b\x41\xe4\x17\xa3\x33\x07\x6b\x8a\xb6\xcd\x02\x3f\x3e\x26\xce\x6b\x1c\xc3\x77\xe1\x02\x0a\x34\xa2\x11\x96\x7d\xdd\xd8\xa3\x2d\xd6\x92\xe9\x41\x2b\x77\x25\xaa\x5d\xe3\x56\xb5\x11\xec\xaa\x44\x13\x86\xd8\x4e\x6e\x92\x59\x11\x8b\xe8\x8a\x46\x44\x57\xd5\xde\xea\x6b\x07\x85\xf8\xcf\xed\xd9\xdb\xd6\x75\xa6\x10\x24\x09\xce\x96\x77\x94\x50\xaf\xd9\x5e\xa1\x81\x24\xb1\x23\x52\x31\x1e\x6b\xf0\x6c\x58\xba\x3b\xcf\x16\x4e\x28\xf6\x0f\xd3\x68\xd4\x4a\x67\x73\x6c\x55\xff\xb8\x42\xd2\x4f\x75\x5d\xb9\xa1\x4a\x96\x3a\x8d\x9f\xf1\xd1\x5c\x64\xac\x24\x27\xe0\xb7\xd9\xef\xd9\xab\x5f\x9c\xec\x5c\x9e\x6c\x3e\xcc\xed\x1c\x3e\x4c\x63\x93\x26\x06\xf9\xcb\xad\xcd\xbe\x1a\xf7\x87\x47\x49\xbd\x85\xe8\xec\x3e\xa6\x53\x5f\x32\x7e\x56\xfd\xf6\x6f\xbd\x12\xea\x50\xef\x57\x0e\x35\x7e\x5f\x28\x85\xe5\x46\x03\xcb\xe1\xce\xc8\xf5\x9d\xf1\xfb\x8e\xcf\x5c\x28\xe1\xc6\x14\xba\x3f\xd9\x20\x0d\x1a\x81\x5b\x66\xe0\x15\x71\xf6\x53\x97\xa2\x29\x20\xfc\xdb\x2c\xe6\xc0\x0a\x79\x81\x0c\x0d\x52\x9a\x04\x41\x04\xea\x54\x0d\x47\xc2\xe0\x02\x3d\x3f\xb8\x80\x83\xba\x24\x4e\xa3\x38\xe1\x87\xb6\x7d\x49\xd0\xa8\x91\xa5\x4e\x6f\x2d\x3d\x1c\xb8\x99\xf5\x55\x27\xe3\xa7\xaf\xbb\xea\xca\xf0\xaa\x83\xae\xa2\xb7\xde\x9c\xb0\x9b\x98\xe4\xbb\xe9\xce\x93\xad\xd5\x5f\x7a\x90\x90\x1e\x0a\xb5\x54\x1a\x4f\x5a\xbe\x63\xc5\x6f\x24\x4f\x58\xda\xe9\x00\x76\x55\xf5\x00\xc9\x0e\x47\x36\x7c\xa3\x0c\x1a\xc9\xdd\x68\x91\xc5\x30\x1b\x1d\xc0\x3a\x30\xb3\x3e\x65\x0a\xa1\xd9\x94\xd9\x6c\x99\x8a\xfb\x1b\xdc\x21\x5c\x2c\x98\x8d\xd2\x74\xe5\xc3\xec\x06\xc7\x3d\x02\x52\x2b\xb1\x52\xbc\xb8\x78\xc8\xf9\x2d\xe1\x74\x7c\xe6\x45\xb7\x72\x31\x92\xb4\xd1\xe9\xa7\xb2\xc2\x11\xaf\x29\xd9\xfe\xcf\xf6\x0e\xf9\x1d\xd9\x8f\xca\xce\x1a\xcf\x2e\x31\x87\xc6\x6b\x58\xee\x53\xe4\xea\x97\xcb\xe1\x2d\x86\xbd\x29\x82\xc5\xf0\xee\x7f\x55\xb8\xb1\x57\x55\x26\xd6\xaf\x5e\x78\x67\x14\x6e\xbf\x72\x4d\x7f\x77\x82\x63\x1d\xf1\x19\x21\x38\x72\x97\xe0\xe0\x88\xef\xb0\x18\xc1\x51\xae\x21\x38\x42\xba\x42\x2d\x7b\x85\xc8\xf0\xf9\x2a\x23\x20\x91\xa3\x9a\x67\x0b\xcb\x95\xd4\x58\x17\x7d\x39\xba\x6b\xb4\xdb\x95\x48\x80\x55\x28\x82\x1c\xf3\x1a\x2c\x96\x1f\x4e\x07\x0c\xae\xf5\xbc\x4a\x9a\x04\xd1\x6c\x15\xc2\x8a\xb4\xee\xe9\x9d\x64\x98\x7c\x63\x1c\x4a\x05\xd2\xc8\x87\x64\x48\x47\x23\xcc\x87\x74\x64\x28\x04\xbd\x0a\x8d\x67\x6e\x9e\x2d\x1a\x01\x68\x9e\x2d\x22\x90\xe3\x61\x43\x07\xc6\x9c\x5a\xde\xa0\x5b\x36\x9e\xae\x18\x3c\xf7\x06\x4f\x86\x1c\x06\x9f\x0f\xe9\x68\x15\x81\xa6\xe5\x1a\x1a\x87\xe6\x9c\xb0\x3c\x9b\xfd\x24\xe6\xed\x62\x37\xfd\xe1\xd2\xe3\x21\x6a\xaf\x65\x9f\xfa\x90\x94\xd3\xb7\xd3\x37\xb5\xdd\xd5\x13\x3e\xde\xb8\x23\x3c\x69\x30\xe1\x8d\xb8\xe2\x38\x8d\x23\x07\x57\x6c\xc8\x24\x7f\xcb\xb8\x34\x85\x12\xdf\x93\xc8\x16\xfe\x4e\xe4\x4a\x2d\xc2\x93\xb7\x76\xee\xc2\x33\xc5\xb9\x7b\x8c\x75\xf8\x41\xf7\x65\x25\x12\x61\x81\xc1\x90\x3f\xd9\xff\x13\x95\x49\xda\xcc\xe3\x4e\x5f\xbc\x28\x9d\x17\x7b\x88\xa7\x6e\x9c\x25\x8c\x71\x29\xd3\x2b\x0c\x4b\x94\xa1\x62\xb4\x9e\xca\x99\x29\x2a\xc7\x21\x6e\xe0\xb8\x97\xcd\x82\x3d\x59\xa6\xe9\xa0\xfb\x3b\xf0\xf5\x97\x45\xb8\x93\xe1\x7d\xb1\xff\xa7\xe8\x8d\x31\x5b\xaf\xf7\x93\xb0\x4a\xdc\x49\x07\xd0\xaa\x71\x62\x93\x4e\xea\xcb\x21\xaa\x91\x2d\x0c\x8b\xbb\xb8\x5f\x25\x04\x1f\x3a\x03\x1e\xee\xff\x89\xef\xec\x8d\x50\xf8\xaa\x5f\x79\x35\x1a\x29\x0e\x6f\x2c\xbd\x02\x4a\xde\xcc\x42\xfb\x87\x0d\x4d\x65\xad\xa2\xb9\x56\x8a\x26\xb2\x5c\x5e\x29\x37\xe5\x68\xcc\x51\x0f\xe2\xf3\xaa\x0a\xdf\x5f\xe0\x89\x54\xee\xdc\x36\xdd\xef\x81\xd1\x91\x8a\x16\xaa\x0c\x3b\xfd\x78\x56\xd2\xf6\x58\x31\x34\x13\x19\x70\x00\xb2\x21\xd4\x18\x25\x97\x0d\xdf\x22\x56\x3d\xd5\x42\xe3\x6c\x7c\x4b\xbe\x67\xc5\x72\x51\x56\x3f\xce\x68\x29\xb3\xa3\xd4\xf5\xde\x73\x30\x56\xd9\x77\x1e\xb8\xfb\x85\xbb\x5f\xee\xdc\x2f\x32\x4a\xef\xad\x13\xb8\x54\xbc\xa9\x18\x59\xbb\x05\x02\x7b\xeb\xd8\xba\xd9\x45\xf1\x7d\x99\x2a\xeb\xa9\x2c\xa4\xb4\x99\x36\xbb\x51\x6b\xc0\x5d\x67\x45\xf1\xe6\x37\x92\xfc\x45\xc9\x73\xb4\x2d\x02\x0c\x94\x18\xf5\xea\xe7\x09\xb9\x5e\xde\x48\x8b\xa2\x41\x84\x29\xc8\xba\x4e\x81\xa4\x70\x83\x66\xc2\x07\x30\xab\x18\xf8\x57\xa7\xaa\xa3\x2c\x2e\x4c\x15\xc4\xd3\xd5\x4a\x6a\xf0\x8b\xd8\x91\x2e\xba\x53\xc2\xc7\xb5\xfe\x2c\xc6\xc5\x70\x48\xbb\xe7\xe4\x86\x96\x9c\xb0\x21\x19\x8d\xc0\x3a\x62\x56\x64\x93\x4a\xc5\xa0\xa0\xeb\xe3\xa1\xcc\xad\x55\x97\x3f\xf9\xf4\x9c\x2f\x99\x0a\x5a\xd1\xbd\x85\x75\x34\x76\xab\x74\x2a\x2a\xd4\x07\x5b\x96\xee\x4c\x4e\x70\x57\x28\x5e\x17\x2d\x59\x95\x36\xa1\x5e\x45\xe1\xb8\xd9\x83\x72\x4c\xd3\x56\xed\x45\x4d\x8c\x61\xe5\x81\x09\x31\x5d\xa1\x98\x9c\xf8\x65\x6d\x8b\xfa\xbb\x57\xbc\xd6\x05\x0c\x38\x3e\xf0\x96\xa2\xd2\xda\xc4\xf5\x8a\xcd\x8d\xb5\xd6\x67\x95\x37\x41\x86\x36\x86\x63\x50\xd2\xdf\x48\x21\x38\x65\x24\xd5\xc8\x24\xf9\xac\x40\x76\xc0\x11\xc9\xef\x06\xf9\x0a\xbd\x95\x79\xaa\x12\x8a\x96\x29\x18\x17\x5b\xd3\xab\xc5\x18\xcf\xfc\x40\xc9\xa2\xa5\x2f\xb1\x36\x9c\x89\x51\x07\x84\x21\xf7\x8c\xe2\xf1\xe7\xb8\x52\x6b\xba\x42\x65\xdd\x07\x30\x93\x8a\x7c\xca\x56\x2b\x54\xae\x9d\xe8\x14\xf5\x52\x94\x21\x6a\x26\x1a\x45\x96\x75\x33\x82\x50\xce\x41\xf8\xe8\x22\x45\x65\x2c\x78\xa9\x1f\x52\x5e\xa7\xcc\xe2\x72\x6f\x10\xf7\x50\x12\x44\x95\x2f\xa2\x4e\x39\x4a\x35\xe6\x96\x1e\x54\x50\x9a\x60\x33\xed\x97\x52\xbf\x12\x53\x19\x38\x47\x56\xeb\x5a\x49\xba\x12\xdd\x41\x8a\x83\x37\xe6\x16\xa8\x80\xa0\x73\x41\x38\xde\xc9\x7a\xb9\x92\x54\x79\xba\xcb\xa1\x43\x90\xfd\x78\x63\x92\xb2\x82\x14\xb8\x49\xfb\xf8\xec\x6d\x3b\xd5\x8c\x9d\x6d\xcb\xd8\x64\xbb\x7d\x42\xb8\xd3\x02\xd3\x43\xc7\x4a\x88\xa6\x03\xed\xa2\x0f\x76\x02\x72\x0c\xa8\xc4\x11\xb3\x3a\xbd\x81\x25\x87\x17\x89\x00\xf0\x14\x49\xd3\xb4\xcb\xa4\x44\x24\x6d\x05\xf1\x8b\x96\xa8\x48\x11\x57\x41\x32\xa0\xfe\x9b\x64\x99\x3a\xaf\xe4\x99\x25\x39\x8f\x5a\xf2\x84\x10\x63\xa2\x6f\x9b\x85\xd7\xf3\x54\x97\x57\x99\xa4\x91\x10\xab\x30\x6b\x88\x5c\xa5\x02\x22\x69\x80\x93\xa6\x2d\xf2\xdd\x62\x9c\x22\x25\xcf\x32\x76\x69\x6e\x6c\xab\xe3\x1c\xee\x0e\x18\xaf\xb2\x18\x8e\x38\x16\x79\x64\x6b\x6e\x2e\xcd\x5c\x07\x17\x69\xb9\x71\x8d\xd4\x2c\xf6\x52\x13\xd5\xa8\x79\x16\xae\x4a\x7f\xdd\x54\xa8\x3f\x95\x02\x55\x4e\x9f\x59\xf8\x13\x4e\xe6\x31\x56\xd3\xd0\x2c\x49\xda\x9d\x67\x0b\x88\x00\x85\xfc\xe5\x70\x5a\xa9\x04\x9f\xdd\x6c\x0b\x7b\x75\x5b\x68\x22\xda\x8a\xf5\x2b\xbc\x9b\x92\x10\x31\x24\x6b\xb1\x69\xa2\xd2\x47\x43\xca\x6b\x3b\xf4\x60\xa5\x32\x0d\xb9\x7f\x27\x49\x19\xd9\x79\x54\xa8\xbd\xf7\x49\x37\xb9\x91\xcb\x34\x58\x88\x25\x2c\x84\x7e\xac\x5e\x55\xbe\xc7\x40\x1d\x51\xa9\x65\xae\xd6\x54\x5c\xac\xee\xaf\xb4\xea\x0a\xe8\x2e\x56\x10\x55\x33\xda\xae\x8d\x74\x5c\xc1\x37\x35\xb6\xd1\xa6\x6f\x7f\x63\x8d\xcd\x20\x35\xae\xd4\xe1\x02\x69\x42\xc6\xce\xb9\x66\x3d\xe4\x28\x3c\x4c\x60\xda\xaa\x53\xb3\x05\x9d\x99\x58\xcd\x85\xb5\x22\xac\xa9\x19\x5b\x17\xa7\xba\x5e\xd1\xba\xea\x2e\x79\x2c\xca\x97\x4d\x69\xf1\x1c\xba\xd9\xe9\xc2\xbd\x62\xea\x6a\x56\x29\x6b\xa7\x01\x01\x1e\xb0\x41\x95\x26\xe2\xd4\xba\x73\x7b\x49\x98\x52\xb7\x8b\xf8\xfa\xb6\x66\x30\x6e\xc8\x2d\xef\x4a\xd4\x2d\xb4\x9a\x87\xeb\x44\x62\x96\x1d\x9d\x17\x05\x0f\x93\x0e\x5a\x3f\xcc\xb7\x2a\xad\xa6\x1b\xaa\xa0\xd3\x61\x61\xc2\x42\x6f\x2e\x69\x9c\x39\x61\x10\xf6\x5c\x76\x5a\x93\xe5\x30\xac\x42\x34\x71\xbb\x7e\x41\x35\x54\x2f\x8a\x45\xdd\xd2\xd5\xad\x88\xae\xba\x2e\x6a\x95\x73\xa8\x2b\x81\x65\xd5\x50\xd7\x64\xee\xd4\x9b\xad\x8a\x25\x8a\x22\x56\x32\xd4\x77\x05\x5b\x93\xcd\xd3\xad\x0f\x25\xf5\x05\x5d\xef\x49\x6b\xf3\x86\xdc\x56\x33\x81\x20\xde\xe9\x70\x15\x82\x89\xb3\x07\x90\x4a\x1f\x6c\x6b\x2f\x6e\x41\x84\x24\x69\x0a\x8e\x1b\x07\xe9\xc1\x0a\x62\xe8\xcc\x1e\x3e\xdb\x2c\xae\xc1\xb2\x1c\x80\xd4\x5d\x86\xc2\x3b\x48\x73\x07\xf5\xad\x8c\x69\x26\x88\x39\xe4\x6a\xff\x5a\x35\xa8\xd6\x94\x12\xc9\xef\x90\x9f\xe8\x43\x5f\x4c\x11\x34\x11\xdc\x50\x17\x4a\x27\xe7\xf0\x15\xa1\x2f\xb0\x23\x88\xdb\xc6\xb8\x30\x32\x4e\x51\xd6\xcb\x04\xa2\x6d\x82\x11\xc1\x9f\xc5\x32\x0c\xb6\xfb\x08\x66\x30\x00\xf5\x83\x96\x6c\x7a\x9e\xdf\xb6\x6c\x4f\x97\x25\xf7\x5b\x9c\x4b\x12\x59\xe1\x7a\xea\x2c\x4e\xba\x52\xc7\x51\x1c\xaa\x38\xf0\x7a\x91\x22\x62\xf4\x30\xc3\x36\x02\xc4\x01\x7b\x8d\x7b\x07\x6c\x77\xd7\xa3\x79\x8c\x38\x01\xa0\x47\xa5\x08\x86\x78\x12\xe0\xd7\x9f\xe4\x28\xe4\x76\xd3\x66\x13\x1b\x28\xb9\x41\xe4\x8d\x52\xa2\x64\x8f\xc3\xf1\x59\x44\x25\x97\x36\x0a\x2e\x8f\x3e\x68\x37\xd5\xf4\xf3\xbc\x90\xd5\xfa\xd1\x78\x35\x4c\x8f\x8b\xf1\x06\x13\x59\x8c\x1b\x67\xb1\x18\x3b\x53\x60\xd9\x06\x0d\xb2\xac\xb1\x41\x96\x39\x0d\x4e\xab\xba\x9a\x6a\x2c\x81\xe9\xa2\xa6\x41\x93\xfc\xc8\x36\x58\x6e\xd2\x60\xd9\xdc\x60\xe9\x36\xa8\x0e\x6a\x63\xab\xda\x83\x58\x95\x35\x75\x49\x7e\xb7\x51\x3d\x92\xdf\xb9\x1e\xea\xa7\xc5\xfd\x29\xb9\x23\xb3\x9f\xde\xe3\x5b\x29\x9e\x5c\xd4\x8a\x27\xd5\xc0\xef\xe6\xf1\x4c\x29\x21\x3a\x72\x7b\xbf\x9b\x2b\x5c\xe8\x84\x63\x98\xaf\x97\x5a\x4b\x12\xc4\x51\xb7\x9c\x93\x29\xe6\xae\xb9\xc4\x5d\xc6\x2e\x9b\x5d\xc3\xa4\x58\xb1\xea\x16\xc6\xc1\xd8\x81\x8d\x1a\xfd\x5b\x1a\x0d\xa2\x6e\x08\xff\x29\x63\x49\x6a\xad\x8a\xaa\xd2\xee\x68\x79\x2f\xa5\xf4\x4f\x31\xc3\x64\x85\x5d\xdc\x79\xeb\x5e\x0c\x2f\x0c\x8b\xe3\x27\x9d\xae\x3a\x90\xc9\xf5\x41\x5c\xfa\x98\xd9\xb4\xb9\x6f\x8f\xdf\x1d\x7d\x3c\xbd\xbc\x7a\x73\xf4\xe3\xd1\x77\x27\xa7\x27\x97\x27\xc7\x17\x58\x0b\x0d\x4e\xb3\x87\x62\xc9\x05\xf6\x55\x2f\x2e\xb3\x1b\xf1\xb4\x60\x64\x91\x31\x72\xc4\x6e\x4a\xf1\x28\xd7\x5b\x3f\x99\x60\xb5\x3f\x14\xc5\x27\x81\xe5\xd5\x65\xa2\x1f\x3d\x81\x84\xa9\x2d\x29\x20\xf1\x5d\x0e\x5b\x96\xd6\x5f\x21\xe3\x60\x3e\x16\xe5\x57\x2d\xd2\x7d\x7f\x72\x76\xf2\xfe\xe8\xb4\x79\xd0\x7d\x6f\xd0\x7d\x7f\xd0\x7d\x6f\xd0\xfd\x2f\x1c\x74\xbf\x71\xd0\xfd\xca\xa0\xfb\x2b\x9b\xac\xfe\x8e\x3b\xc6\x1c\x7f\xdc\xb9\x1e\xf4\xfe\x08\x26\x6f\x90\x40\x08\x04\x9b\x2b\xd2\xbd\x38\x3e\x3f\x39\x3a\x3d\xf9\xfb\xd1\xe5\xc9\x87\xb3\xab\x77\x27\xe7\x17\x97\x57\x67\x1f\xde\x1e\x5f\x5d\x5c\x9e\x9f\x9c\x7d\x8f\x75\x45\x38\x01\x0f\xbc\x31\x94\x84\x72\x96\xd5\x90\x41\xc3\xe0\x00\x7e\x28\x09\x9a\xdf\xc0\x5d\xfa\x96\x2c\xc0\xec\x85\x76\xc7\x59\x3e\x91\x21\x48\x40\x06\x4f\xbb\x34\xff\x05\x92\xf1\x7f\x98\x53\xce\x89\x0c\x30\xb8\xdd\x47\xb4\x6b\xf2\x84\xa8\xca\xbb\x7d\x44\x37\x48\xfa\xf7\x87\x14\xdd\x6c\x36\x05\x3a\x4d\xaa\xe3\x47\xb9\x99\xc1\x32\x9f\x67\x7c\x7c\x4b\x26\x26\xde\x72\xa9\x07\x7d\x6d\xc7\xd5\x43\x79\x35\xe4\xda\x39\xb9\x7d\x98\xc8\xe4\x1c\x5b\xf7\x94\xdf\x6e\x39\x3e\x77\x5b\x10\x8f\x6d\xb9\x58\x14\x8c\x93\x49\x3b\x75\x6c\x6f\xa9\xbe\x05\xdf\x40\x80\x63\x4d\x38\x39\x71\xe9\x0f\xb6\x55\x88\x3c\x5c\x3c\x3e\x5e\xf3\xa4\x48\x3b\x9d\x3b\xf1\x27\x3d\x48\x0b\x5c\xb8\x51\x90\xad\x52\xdc\xae\x79\x81\xe8\xd7\x05\xe1\xa8\xcd\x30\x71\x17\x24\xb0\x81\x45\x41\x32\xfb\xc5\x83\x4c\xa7\xe1\x84\x34\xec\x0d\x98\x15\xb1\xb9\x53\x6d\xd1\x4e\xc7\x19\x68\xa7\x93\xe4\xce\xb0\xdd\xc8\xfc\x1e\x0c\x11\x3f\x90\xbe\x6e\x37\x48\x77\xa1\x12\x91\x90\x8c\xbd\xa7\x25\xec\x69\xcc\xd0\xcc\x24\x66\xf1\xc7\x25\x63\x12\x6e\x63\x6c\x32\x40\xb1\x00\x34\xa1\xcc\x6b\xcc\x22\x20\x0f\xb1\x57\x0f\x78\xa7\x93\x6c\x5f\xf3\x84\xa7\x8f\x8f\x57\xe2\xcf\x36\xc6\x79\x7a\x90\x1a\xb3\x12\x70\xd5\xe6\x32\x32\xde\x16\x54\xd1\x5e\x39\x91\x42\xcc\x9d\x33\xe6\xe0\x32\xe3\x9e\xa9\x55\x43\x9a\x9d\xaa\x73\x64\x65\x9a\x81\x86\xd9\xce\x32\x78\xde\xd9\x69\x69\x47\x2f\xd3\x7f\x64\xb5\x90\x38\x61\x1a\x8e\x79\x76\x73\x96\xcd\x49\xeb\x9a\x83\x01\x5e\x02\x96\x73\x06\x53\x75\x61\x6b\x92\x3f\xff\xbf\x7f\xfc\xc7\xce\xf5\x20\xf9\xc7\x64\x27\xfd\xe3\x1f\xfe\x9c\xa6\x9d\x4e\x3e\xec\x8f\x0e\xcf\x20\xaa\x62\x22\x7e\xa7\x40\xe5\xa7\xa0\xcf\x4d\x9c\xfe\xbd\xa5\x62\x29\x22\x21\x12\xe1\xe9\xa0\x7d\x79\x72\x79\x7a\xdc\x96\x41\x97\xda\x17\x6f\xce\x4f\x7e\xbc\x34\x4f\x97\x3f\x9b\x4f\x72\x91\x5c\xa0\x81\x8c\xa4\x4d\x89\x8a\xbe\x64\x75\xc3\xa1\x85\xcb\xbb\xbb\x1b\x59\x5e\x27\x11\x94\x5a\xc2\x2b\xf1\xe7\x8b\xd7\x61\x77\x57\xc5\x26\x08\xe7\x17\x59\x32\x1c\x02\x42\xa7\x53\xdb\x55\x70\x1c\x23\xdd\xae\xea\xf3\x7c\xf8\xc8\xc4\x4e\x5a\x73\xa8\x8f\x8f\x2e\x59\xe8\xb6\x11\x78\x58\xd7\xe5\xc5\xf0\x3b\x90\x61\x19\x54\xce\x05\x30\x2c\x71\x0e\xb8\xe3\xff\x09\xfe\x6e\xd6\xb3\x53\x49\xc4\x83\x74\x20\xb9\x9f\xa8\x00\x82\x96\xd0\x62\x59\x9a\xa5\xc8\xbc\x75\xca\x7d\x61\x90\x7a\x4b\x53\xa4\x36\x38\xeb\x74\x2e\x78\x92\xa5\xc6\x4b\x39\xba\xda\x99\x29\xef\x17\x8a\xc2\xae\x5f\x24\x4d\x51\x11\x23\xb6\xdd\x85\xab\xac\xaa\xec\x36\x6a\xa3\x2b\x5d\x6d\xc5\x0a\x01\xc3\x1b\xb9\x85\xb8\xe7\x2a\x0f\x57\x35\xca\xbd\x4d\xa8\x3b\x49\x2e\x72\x21\x9d\xce\x31\x24\x97\x70\xb8\x6e\x40\xdc\x6e\x97\x07\xac\xd3\xd9\x3e\x16\x07\xe3\x20\x65\x98\xc5\x46\x13\xcd\xe8\x62\x8d\x60\x00\x8d\xd6\xa6\xc4\xa9\x03\x54\x09\x42\x74\x9a\xec\x83\x89\xb0\xc0\x6b\x97\x0f\x0b\xe3\x7d\xe0\x60\x3a\xe9\x2b\x9d\x38\x6f\xb0\xb6\x10\xb0\x5b\xed\x0d\x1c\x01\x12\x11\x07\x3f\xc2\x06\xbc\x30\x14\x9f\xe8\xaf\xd3\x69\xff\xf1\xb1\x42\x05\x26\x82\x32\xbb\x10\x8b\x62\xec\xa5\x1a\xfb\x0b\x30\x08\x3c\x7a\x09\x43\x38\x9c\x19\xd9\xa2\x2b\xce\x30\x75\x5a\x41\xfb\xb9\xab\xc3\xb1\x59\xd5\x4c\x8a\x20\xfe\x25\x69\x74\x54\x7a\x0f\x6f\x26\x01\x2e\x43\x31\xc0\x16\xbd\xf9\x80\xdd\x70\x0a\xaa\x85\x9b\x52\x9a\xac\xc3\x5f\x9d\x0e\xe0\xec\xc3\xe4\x1b\x01\x21\x1d\x24\xac\xe6\x7a\x8a\x4e\x59\x0d\xd4\x9b\x48\xda\x90\xff\xae\x09\xbc\x3b\x9d\x7b\x79\xef\xf8\x44\xa0\x38\x99\xd2\xec\x6a\x91\x8d\xc9\xc7\xf3\x13\x71\x00\x0c\xe0\x13\x7d\xef\x8b\xbb\xa4\x15\x7b\xd9\xe5\xc5\xc7\xc5\x82\xb0\x37\x59\x29\x18\x5e\x08\xe7\xe8\x41\x69\x8c\x14\x1f\x8e\xa4\x1d\x9b\x9c\x98\x93\x53\xbd\x4c\xd5\x69\x81\x81\xa9\x01\xb7\x2f\xbf\xfb\xf0\xf6\xe7\x36\x9c\x4c\xd5\xb3\xd7\x43\x6d\x86\x3c\x9f\x22\x8f\x72\x2b\xda\x37\xc6\x4b\x40\xa8\x55\xa0\x15\x12\x22\x0a\x70\x4e\xcd\x08\xc4\xc5\x13\xd8\x54\x83\x17\x45\x96\x49\x2c\x84\xb1\xfd\xfa\xc0\x13\xd0\xcd\xd2\x69\x52\xa4\xc6\x56\xe7\x4e\x41\xa2\xc0\x2e\xea\x09\x33\x15\x40\x9d\x76\xcb\x05\xe8\xac\xa9\x31\xa8\x2b\x52\xd4\xaf\x99\x85\x3b\xce\x0a\x5b\xd5\x90\x3a\xc7\x49\xaf\xda\x34\x0f\x33\xd9\x0f\x20\x15\x4d\xe5\xdc\x0c\x9b\xe3\xce\x83\x06\xf3\xc8\xf5\x3c\xac\xe1\x28\x6d\x9c\x87\x1e\x64\xc0\xdd\x36\xa5\x47\xdc\x7c\x16\xbe\xe5\x75\xee\x5a\x5e\x5b\x91\xb0\xca\xdc\xa3\x10\xaa\xcd\x08\x94\x0f\xe9\x08\x0e\x9b\x02\xb0\x3a\x36\x75\x05\xdc\x84\x3f\x31\x77\xe0\x91\x99\x35\xe5\xa1\x73\x98\x02\x83\x13\xe2\x2c\x93\x26\x4a\xe2\x74\x48\x8a\x58\xa7\x13\x3d\x48\xaa\xbc\x97\xf5\xd1\x1d\x7e\x38\x3a\x27\x7e\xa5\xf2\x11\x78\x2f\xe3\xbb\xc5\x38\x54\xd2\xfd\xd7\x92\xb0\x87\x0b\x32\x23\x63\x5e\xb0\xe4\x3f\xca\x31\xa3\x0b\x3e\xbc\x99\xcd\x19\x6e\xff\xc7\x0e\xdf\xf9\x8f\xf6\xe8\x3f\x14\x1d\xa8\x51\x76\xab\xc2\xd8\xbf\xc9\x72\xc1\xbe\x4f\x69\x3e\xd9\x2a\x09\x93\xba\xdf\xc9\x96\xe4\x39\x05\xeb\xb6\xf5\x4f\x9a\xef\xaa\x5b\xea\x9f\xed\x8d\x13\x49\xc6\x92\x54\xb6\x1c\x58\x32\x93\x83\x39\x01\x18\x39\x44\x17\x36\x8c\x45\x8c\xb7\x46\x20\x58\x30\x78\xbc\x82\xee\x08\x12\x4c\xb9\x27\x25\x68\xa0\x3a\x55\x1c\x8b\x6c\x6d\x7e\xcb\x0c\xf2\x5b\x36\x66\x6b\xd4\x57\x87\x93\x73\xc5\x2f\xea\xe1\xc2\x60\x54\xe6\x9a\x72\xa8\xf3\x90\xe6\x00\x50\x73\x33\x43\x69\x94\x1f\x53\xa0\x30\xad\x40\xf1\x56\xef\x4b\x13\x51\x59\x65\x89\x1e\xc5\xba\x16\x6c\x5f\x87\x91\x1b\xc7\x34\x23\x35\x5b\x71\xa9\x7f\x4d\x15\x2c\xad\xb9\xd9\x2a\xf9\x81\xa4\x56\x68\x78\xcd\x6b\x89\xc7\x95\x29\x74\xc5\x5d\x02\x3f\xc6\xa4\xef\x3a\x4c\xba\xa3\x83\xe6\x0e\xb3\xce\x0d\xb3\x6e\x1b\xbe\x77\x7b\xef\xd7\xf4\x7e\x5c\x3f\x44\x41\xdf\x8a\x53\x5b\x21\x71\x4d\xe5\x8b\xe6\xca\x5b\xf5\x35\x3f\xf0\x30\x3f\x46\x25\xe8\xbb\xc2\xf0\x64\xc8\x46\xf2\x18\xe6\x8a\x88\x31\x6e\x08\xab\x15\xe9\x6a\x01\x20\xd1\x59\xc3\x6e\xf8\x4a\x70\xd7\x49\xfb\x3f\x6f\x66\x74\x3e\x27\xec\xcf\x4b\x4e\x67\x6d\x34\x6c\x93\x5f\x17\x05\xe3\x65\x1b\xb5\x89\x58\xb3\xdd\xeb\xec\x9a\xcc\xda\x23\x27\xe8\x22\x0c\xa9\xbd\x2c\xc9\x56\xc9\x19\x1d\xf3\xb6\x76\x67\x94\x39\x18\xf4\x55\x95\x10\xd4\xbe\xba\x22\xe5\xfb\x62\xb2\x9c\x91\x36\xfa\x2c\x95\x9c\xdb\xbd\x95\xc0\xa3\x59\x59\x89\x45\x09\xa7\x6f\x9b\x54\xc4\x97\xfc\xf1\xb1\x2d\x8b\x8b\x35\x99\x66\x74\xb6\x64\x04\x32\x34\x89\x56\xe8\x4d\x5e\xa3\xff\xec\x1f\xf0\x57\x26\xc3\x91\x9b\x4c\x4c\xad\x99\xf9\x36\xe4\x23\x47\x26\x92\x77\x3a\x3a\xcd\x84\x8d\xa4\x98\xda\x3b\x92\x25\xb9\x60\xbb\x7b\x07\xc5\x2b\xaa\x5b\x2d\x74\xab\x19\xa6\xc3\x62\xd4\x22\xc3\x6c\x84\xf3\x61\xe6\x3a\x2b\x21\xd2\x9d\xd2\xd9\xec\x6c\x39\x9b\x95\x35\x23\x16\x73\x96\x7e\x10\x90\xa5\x11\x36\x5b\x86\xf6\x1f\xb2\x91\x8c\xb7\x69\x31\x06\xe9\x92\xbc\x5c\x32\xf2\xfd\x92\x4e\x70\x61\x2d\x61\xe9\x6f\xf2\x15\x45\x04\x7c\xab\x70\x86\x48\x77\x99\xdf\xb3\xcc\x0f\x58\xef\xa4\x37\xa9\xdc\x2b\xc7\x90\xe6\x9d\x4c\xb6\x60\xcf\xb6\x78\xb1\x75\x4d\xb6\x16\x8c\x94\x24\xe7\x4e\xe2\x0e\x18\x04\x14\xad\x6e\x64\x5d\xdb\xdc\xaf\xee\x64\x81\xf0\x59\x79\x3f\xda\x60\xdb\x29\xd7\xf6\x2c\xe8\x64\xab\x10\xe5\xd1\xf5\x5b\xc0\xc4\x5a\x38\xaa\xdf\x70\x35\x11\xc7\x88\x0d\xeb\x1a\x17\xa7\x27\x6f\x8e\x31\xe9\xbe\xa5\x63\x7e\x41\xc4\x7b\x69\x3e\x2f\x07\xa1\x24\x5f\x0a\xc8\x3f\x91\x87\x52\x5d\x85\x3d\x8b\xc3\xa8\xe7\xee\x7a\x75\x23\x36\x60\x67\x27\xb7\x47\xb9\xa8\x16\x78\x7c\x14\xb5\x6c\x91\xcc\xe2\x62\xd5\x97\x8a\x0f\x20\x7d\x9d\xa4\xd7\x6f\xa3\x9b\x9b\xdc\xee\xe6\x60\x76\xd9\x64\x12\xf3\xbc\x0d\x63\x87\x92\x43\xd3\xe2\x90\x8c\xb0\xb6\xae\x15\x8f\x62\x2a\x23\xa5\xaf\xac\x09\x13\x1a\x69\x4e\xc7\xfd\x74\x5a\x1d\xa8\x85\xe8\x74\xaa\x1f\xe5\x97\x91\x55\xe5\xa9\xad\x29\x55\x74\xab\xc6\x75\x90\x86\x02\x3a\x3b\x9c\x0e\xaa\x67\x3c\x41\x6b\xa2\x81\xc5\x73\x5e\x98\x30\x7f\x9e\xdd\x83\xb6\x3a\x62\x7e\x1e\x88\x6a\xc8\x25\x6d\xb3\xe7\xbe\x52\x2e\xe4\x91\x7b\x57\xc6\x86\x92\x4e\x41\xb6\xc2\x90\xef\xf6\x47\xc8\x09\x87\x07\xdf\x89\xe8\x5d\x85\xb6\x8f\x28\x6f\x4d\x94\x29\xb7\xcf\x66\x43\x0d\xb0\xa2\x58\xab\xeb\x0f\x62\x24\xb5\xf4\x61\x59\xb6\x9c\x63\x56\x59\x46\x1b\x9b\x5d\x92\x67\x26\x3c\xbb\x52\xe0\x0a\xee\x88\xac\x54\x4c\xb2\xc6\xcd\x55\x01\xa6\x1b\x3d\xb8\x88\xeb\xb4\x11\xa4\x99\x15\x1f\x21\xeb\x42\x46\x67\xb5\x85\xc4\x47\x99\x85\x2c\x08\xa9\x65\xdb\xc0\xb6\xa4\x04\xad\x78\x26\x07\x09\x10\xc3\x91\x9f\xbb\x2e\x9a\xd8\x8d\x3b\x18\x42\x99\x1c\xaf\x74\xf4\x47\x6d\xe9\x1d\xf7\xaf\x17\x5f\x21\xa0\xa0\x6d\xb7\xc9\x28\x08\xc6\xef\x28\x75\x64\xbe\x62\x25\xb6\x5c\x21\xdf\xfa\x3b\x40\xed\xaa\xcf\x20\xbe\x83\x94\x50\xe8\xd4\x8a\x12\x77\x18\x8b\xd0\x41\xc2\x61\xc3\x0f\xe5\x1f\x09\x0b\x0a\xa3\xc8\xa5\x24\xc0\x59\x91\x3b\x2c\x4b\x20\x65\x67\xc1\x91\x7c\x16\xdf\xc1\x92\x40\x36\x59\xe7\x69\x07\x7b\x61\xd6\xf9\x30\xe1\xaa\x27\xd3\xb8\x6e\x57\xc6\xc3\xf0\xfa\x77\x36\x93\xc8\x80\xcd\x15\xe9\xb2\xc3\x9b\x93\xbb\x43\xe2\xce\x05\xfe\x78\x0d\xca\xe8\xe8\xf2\xcf\xa1\xfc\xa3\xa6\x02\x7f\x06\x6e\x7f\x6a\xce\x06\xd7\x39\x37\xd4\x4c\x05\x07\x5e\x67\x43\x12\x99\x46\x63\xee\xc1\x6f\x04\x14\x7d\xa2\x95\xa4\x14\xe2\x4b\xfe\x6e\x67\xee\x7f\xe8\x10\x69\x7c\x09\xe3\x50\x28\x56\x1d\x08\xb3\x2f\x9a\xa0\x18\xc3\xb6\xc8\x38\xf5\x63\xb8\x9f\xa5\x8c\xae\xe5\x53\x14\x53\x28\x36\xd1\xa4\xc3\x94\x11\xf2\x1b\x49\x86\x23\xd7\x65\x52\xd0\x2a\x93\x90\x18\xbf\x9b\xbb\xa4\xb8\x47\x7c\x07\xa4\x37\x6c\xd6\xd7\x10\xe0\xda\x97\x4c\x11\x39\xee\x1b\xee\x25\x95\x23\x43\xd2\x5d\x8c\x71\x6f\x84\xc1\xfc\x4d\x3c\xb2\x0c\xf7\x47\x18\x8c\xd7\xc4\xe3\x74\x81\xf7\x46\x18\x4c\xcf\xc4\x63\xb9\xc0\xfb\x23\x0c\x86\x63\xf0\xd8\xc3\x4f\xc4\x63\x4f\x3d\xf6\xf1\x53\xf1\xd8\x97\x8f\xbc\x87\x9f\x8d\x70\x9b\xab\xaf\xbc\x8f\x9f\x8b\x47\xf5\xf5\xae\x87\x5f\x8c\x70\xfb\xae\xd7\x5e\x09\x36\x20\x71\x07\x89\x3f\xaf\xd2\x34\x5c\xb8\x7b\xca\xc8\xee\xb4\x60\xf3\x8c\x7f\xd9\x0a\x3a\x56\x19\x16\x26\x22\x40\x05\xa0\xd9\xa5\xa5\x72\x57\x4e\x05\x83\xd9\x1b\x89\x5b\xf9\xff\xe3\xee\x5d\xb7\xdb\x46\xae\x84\xd1\xff\x7c\x0a\x88\x5f\xc2\x00\x61\x89\x26\x65\x4f\x4f\x42\xb9\x9a\x9f\x6c\x49\xdd\x9a\xd8\x92\x22\xc9\xdd\xd3\x43\x73\x14\x88\x28\x8a\xd5\x02\x51\xec\x42\x51\xb2\x2c\xf2\x3c\xfb\x59\xb5\xeb\x0e\x80\x92\x93\xc9\x64\x9d\x75\xfe\x90\x40\xa1\xee\x97\x5d\xfb\xbe\x37\x9b\x7f\x60\x15\x68\x89\x39\xfc\x35\x05\xd1\x76\x7b\x53\x35\x21\x7a\x2e\x64\xf7\x7a\x6d\x13\xbd\x30\xdc\x5e\xea\x7b\xb6\x58\xb2\x82\x14\xa2\x92\x7e\xc5\x57\x10\x01\x75\x4b\xf2\xb6\x62\xf2\xf5\x72\x99\xa7\xc2\x4b\xfb\xc8\x32\x3a\xa3\x84\x6f\xd4\x08\x34\x39\xf5\x2d\x03\xe0\xb7\x0d\xfd\xe7\xb7\xaa\xa2\x8f\xe9\xe3\x0d\xf9\xc0\xa6\xa9\x04\x8d\xb4\xfc\x01\x10\x72\x5a\x1e\xfb\x5c\x4e\xd2\x3b\x5b\x96\x6e\xeb\xca\x97\xfa\xae\x05\x39\x99\xdc\xb7\xf2\x41\x6d\x28\xc5\xcd\x81\xdd\xab\x1e\x55\xb2\x91\x9e\xc8\x6d\xac\x9f\xd5\x07\x33\x44\xd8\xd1\xe6\x45\x7d\x52\xf2\x76\xb9\xb5\xdf\x29\x07\xf0\xba\x22\x35\x7d\xb0\xc9\xed\x9b\xfa\xa8\x07\xea\xf2\xc8\x9d\x5f\x4d\x54\x59\xcf\x3c\x51\x88\x3c\x10\xde\xbb\xca\x10\xcc\x86\x3c\x23\x7e\x82\xee\x8b\xcf\x3a\xfd\xb3\xec\x8e\x97\xa0\xb2\xb8\xfd\x84\x07\x72\xa2\xdc\x7b\xd0\x63\x95\x61\xe0\x7a\xeb\x72\x04\xfb\x05\x0f\xf6\xfc\x51\xbb\x5c\x76\xf7\xe0\x81\x9c\x48\xfb\xaa\xbe\xfe\x42\x49\x9e\xe1\x81\x9c\x4a\x78\x54\xa9\xe7\x29\x07\xc3\xce\x81\x9c\x49\xfd\x12\xf6\x8a\xdf\xe2\x81\x37\x85\x07\xfc\x36\x18\x95\xfc\xfc\xef\x6e\x50\xe6\xab\x7f\x00\xf0\x40\x4e\x9d\x9f\x12\xe6\xa9\x8c\xee\xcf\x5e\xe6\x86\x51\x1e\x92\x9b\xd5\xed\x2d\xe1\x78\x4f\xce\xa5\x79\x33\x8b\x41\x49\x21\x2e\x29\xe8\xa2\x6b\x37\xe1\x7b\x03\x58\x94\xda\x07\x55\xe2\x53\x71\x57\xb0\x87\x02\xef\xc9\x39\xd5\x2f\xea\x8b\x3c\x11\x7b\x72\x1e\x7f\x20\x66\x9b\xba\x23\xb3\x27\xa7\xd1\xbd\xab\xef\x3f\x6a\x75\x7b\xbc\x27\x27\xd3\xbc\x85\xdf\xce\x53\x9e\x2e\x4a\xbc\xf7\x9d\x97\x43\xa5\x99\xfe\xe8\x18\x9b\x78\xef\xdf\xa1\x47\x26\xe4\xa6\xaa\x85\xe4\x4b\x39\x72\x39\x9f\xea\xd9\xec\x8f\x62\x9a\x0a\xbc\x07\xfb\x0f\x9e\xdb\xad\x70\x3e\x8e\xbe\x2c\x39\x29\x4b\xca\x0a\xfc\xba\x1f\x4c\x88\xfb\x62\xc1\x3f\x1c\x74\x80\xfc\x46\x3f\x2c\x16\xc1\x59\x90\x57\x6b\x05\x56\x18\x49\xaf\xcc\xfa\x03\xd1\x39\xe4\x1c\x52\xe3\x9e\x23\x16\xde\x0c\xaa\xef\xde\x8c\x32\x7d\xc9\xdc\xa4\xd3\xbb\x9b\x15\x2f\xe4\xd0\xfe\x65\x7c\xb2\x9b\x15\xcd\xb3\xf3\x3c\x15\xf2\x52\x03\x36\x8f\x8e\xa4\x19\x32\x27\x4a\x22\xae\xe8\x82\xb0\x95\x40\x61\x94\x91\x0a\x8b\x82\xce\xe2\xb6\x49\x71\xd4\xf9\x39\x67\x0b\x5a\x5a\x64\x5a\xbf\xf6\x38\x29\x59\x7e\xef\x39\x21\x6e\xc0\xdc\x7a\x62\x4e\x0a\x30\x9d\x6d\xae\xfa\xe3\x4a\x80\xde\xe1\xd9\x4d\x49\xf8\x3d\xb1\x22\xa9\x3e\xa2\x80\x3d\x55\xbf\xc7\x24\x41\x0c\x67\x6c\xba\x52\x32\x95\x50\x28\xdf\x76\xbc\x1f\xda\x63\xaa\x48\xcc\xd0\xd3\x74\x9e\xf2\x74\x2a\x08\x3f\x4c\x45\xaa\xa6\xae\xde\xd7\x02\x77\xbb\xc5\xef\xf7\x10\xeb\x65\xa9\x48\x71\xbb\xdd\x2d\x50\x61\x19\x74\xf5\xfc\x3c\x26\xa8\x9f\x6c\x2a\x3c\x1c\xcd\xa9\xd3\xdd\x78\x72\x13\x3f\x6c\x54\xf2\x14\x41\x94\xe6\x2d\xd1\xd7\x37\x6e\x36\x99\x52\x8a\x6e\x40\x92\x89\xfd\x08\x4a\xd8\x9b\x38\x6e\x24\xcc\x5c\x87\x94\x03\xd8\x24\x41\x40\xc4\xbe\xd4\xcb\xff\xf5\x3e\xda\x4c\x7e\x77\xe4\xce\x49\x12\x54\xb0\x87\x06\xa6\xc3\x61\x2a\x48\xaf\x60\x0f\x10\x70\x4c\x12\x58\x72\x0b\xab\xd1\x9c\x02\xbd\xb5\xd9\x28\x9e\xeb\xab\xcf\x59\xf7\x95\xdb\xe9\x65\x43\x30\x67\xcd\xe6\xb2\x21\xae\x25\xdd\x4a\x30\x26\xeb\xb5\xe3\x55\xc9\xb4\xb4\x27\x48\x29\x02\xbe\xdc\x2a\x20\xfe\x58\x01\x1c\xc7\xf5\xda\x3e\x5e\x41\x9c\x8e\x4e\xa7\x92\x30\xb6\xef\x1f\x89\x98\xb3\x6c\xe2\x6a\xcc\x8d\x9c\xcd\x99\x48\xed\x0e\x10\xc5\x7d\xcf\x85\xf9\x3e\x7d\xcb\xf6\x69\x17\xbf\x49\xe8\x2c\xe6\x63\x3a\x51\xbc\x50\x3e\xa6\xdd\x01\xe0\x4d\xc9\x53\x81\x69\xeb\x86\x93\xf4\xce\xf9\xf1\xb2\x4d\x4c\xb7\x34\xb1\xd7\xd0\xc4\x77\xcf\x36\xb1\xbb\xb7\xb5\x91\xd9\x16\x79\x61\xdf\x69\x11\x17\x78\x3c\xa9\xfb\x23\xc3\xc2\xe8\x00\x90\x31\xed\xbe\xee\xf2\x09\x4a\xb1\x09\x78\x22\x93\xfa\x32\x69\x01\xf3\x06\xef\x03\xc8\xc2\x6f\x4b\x78\xdb\x93\x6f\xca\x8e\xdf\x46\x7b\x60\x9d\x8e\x36\x35\xa2\x45\xc4\x46\x4c\x71\xab\x86\xed\xf6\xc6\x18\x70\xa7\x49\xc3\x10\xb2\x8a\x84\x05\x15\x7a\x1d\x8c\x03\xb2\xdd\xef\x60\x9a\x12\xf2\x3d\x16\x63\x8e\x69\x37\x2e\x70\xcc\x76\x69\xf2\xea\xbb\x64\xb7\xf8\xfd\x77\x93\x11\xc5\xbc\xfb\xdd\x90\x61\x6e\x19\xdb\xdf\x83\x97\xb5\x11\xed\x7e\x37\xa4\xb0\x45\xe7\xcf\x3b\xbb\xab\x30\x53\x9e\x36\x5e\xbc\x78\x35\xa3\x32\x49\x51\xa7\xbf\xad\xc8\x8a\xbc\x23\xb4\xb8\x85\x4b\x8e\x64\x96\xcf\xa9\xa6\xef\xaf\xf2\xbb\xf2\xf8\xf0\xd1\x78\x8e\x01\x1d\x03\xeb\x33\x15\x6a\xb0\xa5\x40\x5e\xa4\x19\x07\x0c\x42\x43\x58\x9f\x49\xb7\x39\xbb\x49\xf3\x33\x9d\xc8\x9f\xe3\x27\xc0\x64\x1f\x33\x5e\x95\x30\x90\xb7\x5e\x9b\xc6\x69\x70\xc0\xb3\x81\x2f\xe3\xd7\x7f\x24\xdd\x37\x8e\xbc\x1f\xe9\x1a\x87\x5a\x83\x58\xf4\x40\x55\xa0\xce\xf8\x41\xdc\x18\xfc\xe9\xbe\x83\x87\xae\x1b\x60\x5c\x21\x86\x8b\x5e\x3a\x13\x84\xb7\x6a\xf3\x63\xb8\x88\xc8\xb2\x49\xeb\x13\xeb\x7c\x71\x6e\x9b\x79\x2f\xbd\x32\xb7\x66\x01\x75\x30\xd5\xd8\x48\xa9\xb7\xd4\xd4\xa2\xb3\x38\xd5\xed\x19\xaf\xa2\x25\x5e\xc5\xf5\x65\x48\x5a\x1c\x97\x26\x16\xff\x3d\xbb\x03\xc3\xec\x33\x05\x67\x86\x5e\xb2\x3d\x80\x39\x76\x5b\x60\x3f\x7f\x6b\x5a\xd9\xcf\x35\x68\x71\x5f\xbb\xf8\x8d\xd1\xe0\x8c\x05\x4e\xc7\x79\x77\x30\x49\x3a\x1d\x1e\xa7\xe3\x7c\x82\x04\x92\x29\x7b\x13\x54\xc2\xc3\xeb\x49\xe2\xed\xad\x9d\x97\x27\xb1\x3e\x94\xde\x62\x55\x0a\x40\xf8\x9f\xff\x1a\x5b\xe5\xab\xc1\xc6\x3f\xee\x2c\xde\x7a\x26\x6a\xde\xf2\xd4\xfe\xdf\x19\xa8\x48\x07\xf5\x3d\xf9\x7d\x5f\xa7\xc2\x3e\x8b\x77\xfa\x3a\x66\x4a\xf9\x33\xe3\x5b\x8d\xd8\xb7\xb6\xfb\x7d\x5f\x07\x21\xab\xb4\xa1\x42\x0c\x17\x53\x92\x37\xaa\xad\xaa\x0d\x0a\x2a\xab\x0a\xf4\x99\xbd\xad\xb7\x98\xd6\xa6\x08\xf6\x31\x84\x5d\x4e\x5a\xc1\x6e\xd3\x12\x19\xe3\x57\x9a\xe1\x5c\x2b\x67\x59\x87\x48\xdf\xef\x0e\x46\xb1\x55\x42\x62\xe8\x4d\x82\x76\xfa\xc9\x30\xb6\x59\xb7\x2d\x67\x92\x7c\xbf\x3b\xe8\x74\xe2\x62\xcc\xe4\x1d\x01\x9c\x2f\x3d\x59\x15\xf1\x09\x0a\x3d\xbd\xf8\xd3\xa1\xa4\x27\x3a\x03\x7a\x82\xc4\xa1\xd2\xaa\xd0\x37\x80\x01\xfd\x62\x63\x6a\xfe\x54\xd0\xdf\x56\x2f\x04\xcb\xab\x4d\x0c\x31\x13\x83\x61\x62\x62\x1a\x82\xc5\x20\x3f\x38\x97\x47\x34\x71\x51\xd2\xf4\xd4\xd2\x99\x8b\x44\x64\x3d\xf4\x6c\x1d\xce\xee\x9b\x96\x72\x54\x2f\x50\x9a\x80\xce\x93\x3e\xcc\x5e\x89\x56\x39\x66\xdd\xbd\x09\xe6\x48\x3e\xbc\x9e\xd8\x70\x10\x2f\x4f\xc5\xf5\x2d\x11\x40\x58\x9e\x14\x33\x56\x03\xb6\xe6\x9c\xcc\x7c\x88\x85\xde\x24\x8a\xa5\x2f\xc1\xc2\x33\x9a\x3e\x23\x61\xdc\x35\x0d\x85\x46\x01\x09\x28\x62\x89\x3a\xa4\xa9\xad\x03\xc4\x54\xe0\x8f\xdf\x50\xdd\x14\x14\x36\x58\xf2\x54\xc4\x0c\x51\x1b\xa1\x62\xf9\x1c\x8b\xbb\x22\x0c\x1e\x1b\xd8\xf3\x9b\xba\xeb\x9e\x36\xde\xeb\x69\xba\x20\x27\xfe\x7d\x67\x53\x4b\x90\x04\x70\x92\xad\xa6\x24\x40\x9e\x3d\xfc\x1c\xe4\xec\xe4\x21\x9a\xc7\x1c\x89\x31\x9f\x20\x91\x20\xb2\x09\x9a\x7b\x56\xf2\x54\x4e\xe7\x44\x92\x71\x0d\x13\x84\xc2\xcd\xa3\x2a\x1b\x93\x49\xb0\xc1\xd2\xba\x2c\xfe\x17\xb6\x8a\x52\x21\xc8\x62\x29\x48\x16\x09\x16\x99\x36\xa2\xb4\x88\x52\x4d\xdb\x15\x51\x1a\x41\x8d\x51\xdc\xee\x92\x6e\x3b\x89\xc4\x3c\x15\x51\xc6\x48\x59\xfc\x41\x44\xe4\x0b\x2d\x45\x3b\x69\x59\xb9\x3c\xff\xa7\xb5\x33\x63\x3c\x4a\x23\xb5\x49\x9b\x1b\xf5\x21\x40\x6d\x89\xe8\x28\xf5\xce\xb7\x8e\x0f\xcd\x92\x61\xaa\x99\xf7\xfa\xfd\x59\x14\xa0\x55\x0d\x4d\x38\xf0\xf1\xcf\xca\x26\xb0\x8a\x20\xf5\xee\xbc\x2d\xf6\x01\x13\xae\x16\x19\x37\xe4\x9d\xa0\x9d\x01\x86\x8b\xd2\x5f\x4d\x3e\x49\xcc\xa5\x11\x27\x70\x26\x1b\x8a\x76\xbb\xc8\xdc\x41\xd5\xf6\xdd\x45\x07\xda\x92\x74\x16\x83\x97\x48\x73\x2b\x0d\xbc\x9b\xf0\x65\x60\xe0\x84\x39\x00\xd1\x9f\x36\xe6\x02\xa9\x4d\x86\x51\x67\xd9\x4f\xea\x63\x67\x13\x54\x1d\x23\x2a\xe4\x31\xa9\xb4\x0f\x84\x7b\xb7\xdb\x72\x6a\x47\x4a\x6c\x62\xcf\xf2\x22\x94\x2f\x29\x6f\x04\x42\x5b\x4c\xef\xef\x28\x47\xe6\xca\x87\x04\xb7\x21\x6e\x5c\x0e\x38\x75\xf7\x01\x6f\x03\x3d\x36\x48\x56\x6c\x7b\xb7\xce\x59\x04\x8c\xbf\xaa\x0a\x24\x0f\x03\xf8\xea\x4f\xf6\xfd\xc9\x2e\x12\xae\x05\xd3\x9e\x82\x50\x7f\xd2\xb2\xa0\x5c\xd1\x50\xfe\x37\x94\x7a\xaf\x83\x09\x2a\x0d\xd9\x99\xb6\x2a\x4c\x11\x5c\x8e\x62\x8e\x99\xac\x5b\xe9\xa1\x59\xc2\xc5\x90\xa0\x65\xa7\x93\x46\x40\xc1\x08\x2c\xb3\x26\xe3\x74\x32\x6c\xe0\xab\x30\xb8\xce\x06\xc8\x76\x96\x25\xa8\xf8\x9e\x1a\x8f\x77\xc5\x2e\x6d\x11\x4f\x9f\x68\x95\x78\x08\x61\x7f\x3f\x7f\xbb\xda\xcf\xbb\xdd\x84\x8c\xf3\x89\xd7\xf7\xbc\xeb\xdc\x2b\x8f\x39\x12\x88\x78\x44\xeb\x8d\x95\xc3\xdd\x6a\x78\xae\xd9\xef\x8e\x47\x80\x04\x26\x72\x3e\x38\x26\x72\x1e\x0a\x4c\xc6\x7b\x13\x4d\x4f\x59\x0c\xa5\x18\x19\x0d\xe3\x61\x1f\x54\xbf\x0d\xc2\x9b\xe2\x62\xcc\x76\x07\x93\x56\xa9\x6c\x8d\xa8\x8b\x87\x61\xdc\x61\x0c\xfa\x89\x21\xe2\xc6\x1a\xac\x7a\x3d\xbc\x0e\x57\x1c\x81\x4d\xed\x9e\x84\xaa\x95\xa5\x4f\xc2\xb5\x45\x34\x5c\x3f\x65\xb8\xe8\x56\x9c\x6d\x1f\x71\x8b\x60\x26\x6b\x10\x98\x8d\x7d\x1d\x8d\xb8\xc0\x6c\xbc\x37\x49\x46\x14\xf7\x87\xa5\x44\x3c\xb4\xaf\x8c\xf5\x3a\xe6\x78\x07\x10\x12\xe4\x52\xcd\x98\xb4\x73\x54\x37\x70\x2a\x87\x8c\xf8\x04\x76\xff\x03\xee\xa3\x23\xdc\x47\x97\xb8\x8f\xce\x70\x1f\x49\xf8\x79\x80\xfb\xe8\x0e\xf7\xd1\x39\xee\xa3\x0b\xdc\x47\x57\xb8\x8f\xde\xe3\x3e\xfa\x15\xf7\xd1\x47\xdc\x47\x27\xb8\x8f\x0e\x71\x1f\x9d\xe2\x3e\xfa\x80\xfb\xe8\x18\xf7\xd1\x57\xdc\x47\xef\x70\x1f\x7d\xc2\x7d\xf4\xe3\xb3\xf7\xae\x35\xbc\x50\x14\xd4\xe1\xd1\xbb\x4f\x3f\xd8\x60\xd4\x5a\x67\xc5\x58\x82\x07\xbe\x9a\x55\xd2\x65\xa0\x87\x73\x4d\xee\x49\x21\xde\xa7\x79\x7e\x93\x4e\xef\x4a\xfc\x44\x8a\x6c\x38\x9e\x20\x70\xb8\x37\x1c\x4f\x36\x46\x7a\x4d\x17\xc4\xf0\x87\x4e\xb2\x20\xf6\x94\xfc\x52\xba\x0a\xd3\x95\x60\x7c\x55\xd8\x1e\x99\x84\xcb\x4a\xd0\xaa\x00\x05\x08\x29\xdd\xf5\xfa\x69\x53\x8f\x9c\xec\xe7\x31\x0c\x57\xc0\x13\x15\xe5\x75\xed\x27\xe1\xad\x99\x87\xdb\x32\x7b\xe0\xb5\x6f\xc6\xc2\x8a\x77\x72\x1e\xc2\xda\x74\xe2\x7a\x7d\x6f\x73\x1d\x15\x59\x35\xcf\x51\x91\xb9\x1c\x10\x79\xf1\x62\x55\x1c\x7d\x59\x52\x4e\xb2\x2b\x35\x65\xea\x1b\xaf\x24\x83\x27\x19\xa5\xb2\xee\x97\x3e\x50\xb3\x78\x54\x04\x02\xfd\xaf\xdd\xae\x22\xa0\xb8\x9d\x67\xb0\x15\xf2\x57\x81\x37\x2d\x01\xef\x5d\x93\x22\x93\x34\x95\x8e\xe1\x53\x19\xe4\x75\xc0\xe3\x5e\xaf\x99\x8e\xeb\xb4\x34\x5c\x6f\x1d\xe1\xb9\xda\xb9\xe4\x39\x65\x2e\xd8\x54\x7e\xf7\x8f\xb4\x85\x30\x71\xf1\x57\x15\xc3\x20\x34\x1a\x30\xbb\x59\xd7\xb4\x63\xbd\x3e\x9b\x81\x8d\x62\x62\x83\x61\x28\x5a\x4e\xf7\x28\x4e\x92\x61\xec\x99\xc4\x7e\xea\x76\x1b\x4e\x83\xf1\x71\x95\xa0\x77\x12\x0f\x68\x6c\x1b\xe0\xf6\xb2\x82\x3a\x80\xca\xf9\x99\xa9\xf3\x5a\x70\x7a\x7b\x4b\x78\xdc\x86\x81\xb6\x91\xc4\x62\x93\x70\x2b\x29\x4d\x7a\x50\x13\x23\xe1\x52\x5e\xda\x6a\x60\x61\x06\xa0\xc8\x16\xc4\xfe\xd5\x4a\x9c\xee\xe2\xd9\xb1\x47\xc3\xc3\x1c\xaf\x1e\x97\xc4\x5a\x22\xa8\x63\x1d\x49\xb2\x3d\xba\x21\x51\x6a\x39\xea\xed\x20\xf4\x4b\x05\x0a\x54\x11\x60\xbe\xad\x7a\x30\x74\x90\xbd\x8f\xa0\x82\x08\xd0\xcf\xe8\x86\x4c\xd3\x95\xbc\xbc\x15\xda\x09\xce\x0c\x2c\xde\x69\xf5\x3f\xe4\xe8\x66\xb3\xed\xae\x02\x9a\xfb\xb4\x43\xd6\xeb\x6f\xed\xd7\x6c\xf6\x77\x74\x4c\x9d\x81\x9d\x01\x04\x91\x49\x42\xeb\x1b\xee\x5b\xdf\x68\x9e\xac\x80\xa0\x2e\x3b\x7d\xc4\xad\xf9\x13\x1a\x24\x88\xee\xee\x02\x46\xbf\x53\x7c\x43\xdf\xa6\x66\x7d\x2c\x8a\xee\x77\x09\xc2\x74\xae\x82\xf3\xf2\xc5\x9c\x97\xbf\xf3\xba\x0f\xd0\x7d\x09\x71\x62\x63\x6f\xc5\x7b\xbf\xb2\xf0\x4c\x1e\xfc\x53\xda\x90\xb5\x7a\x8d\x64\x64\x46\xaa\x04\x6a\xf2\x74\xd7\xed\x7a\x34\x41\x15\x21\xd0\xc2\x28\x85\x2b\x15\xdf\xbf\x1e\x15\xbb\xaf\x87\xfd\x04\x31\xfc\x7a\x9f\xbd\x2d\x54\xfc\xb9\x31\xdb\x7d\xed\x63\x4b\x2c\xec\x87\x21\x97\x7c\xf1\x09\x5c\xe8\x7c\xd2\x9b\x82\xe4\x33\x86\x08\x4b\xbc\x89\x48\x4c\x9e\xce\xbd\x0e\x8a\x7a\x07\xb9\xd7\x41\xf1\xfd\x60\x24\x76\x07\xb2\x83\x05\x1e\xec\x17\x6f\xc5\x7e\x01\xbb\xa5\xd8\x1d\xf8\x1d\x2c\x26\x5a\xf2\x59\x99\x5d\x0e\xee\x63\x15\xe2\x4a\x15\xc2\x4a\x25\xa2\xb6\xc2\xee\x96\x1f\x59\xca\x50\xb3\xd8\xc3\x39\x57\xaa\xe7\x06\x60\xc5\x89\x1d\x53\x4c\x74\x28\xfd\x9d\x01\x5a\x05\xa3\x85\x20\xe7\x37\x79\x55\x9f\xf0\xc2\x7a\x6e\xf8\xa7\x34\x0e\x37\xce\x02\x8d\x85\x24\xd0\x74\xbc\x5a\xd8\x11\x67\x12\xb0\x56\x77\xc5\xd5\xbf\x6c\x57\xc8\xe6\xbf\x7d\x67\x54\x3a\x9b\x3c\xbd\xff\xff\xdb\xee\xe8\x9b\xdd\x61\xc5\x95\x0d\x5c\xd6\x5f\xcd\x3d\x95\xa7\x82\xf0\x2d\x72\x49\xc4\xd5\x67\xbf\xfc\x47\x0b\x58\x6e\xfe\x5e\x5a\x85\x8c\x5f\x57\xe0\x0b\xd4\x1e\x1b\x36\x97\x6c\x4f\x82\x5b\x21\xf2\xc0\x67\xd6\x89\x87\x5f\x5c\x6f\x6d\x94\x63\x21\x1b\x2d\xb0\x90\x8d\x52\x2c\x64\xa3\x0c\x8b\xf1\x6b\x39\xdd\x62\xfc\x46\x4e\xb7\xe3\x06\xad\xd7\x29\x5a\xe1\x29\x84\xc0\xf7\x51\x60\x17\x79\x64\x95\x98\x80\x3a\xaa\x9b\x32\x67\x39\x7a\x1c\x52\xc4\x12\x54\x1a\x56\x37\x80\x48\xd5\x7f\x45\xd6\xd8\x40\x96\x50\xdd\x78\xd5\x1d\x4c\xb4\xee\xf5\xaa\xfb\xa6\x15\x7c\xcb\x27\x3b\x18\x3f\x5a\x29\x88\x4d\xc5\xd4\x8b\xd2\x01\xa7\x4c\xe2\x67\xd3\x60\x52\x0e\xff\xd9\x93\xa2\xbc\x51\xa4\x66\x33\xea\xde\xa0\x5c\xcf\xd1\xca\x4d\x4c\xfe\x8f\x4d\x8c\xd2\xeb\x0c\x11\x50\x25\x83\xee\x32\x34\xc7\x79\xf7\x4d\x6b\x35\x9e\xcb\x5b\xf9\x11\x48\xd4\xc7\x04\x11\xbc\x02\x59\x89\x72\x2c\x87\xb3\x78\xa6\xfb\x91\x77\xbf\xc3\x18\x2f\x93\x95\x9c\xad\x19\x82\x72\xd4\x35\xb3\x08\xd7\x20\xef\xfe\xdb\x24\x98\x79\x73\xd9\x2f\x51\x1f\xcd\x24\x82\x07\x5c\xc4\x45\x82\x9a\x32\xe5\xe8\xbb\x64\x23\xf7\x4c\x6e\x86\xc6\x09\x20\x9e\x79\x7e\xe5\xd1\x53\x71\xb8\x66\x0a\x81\xd5\x34\x82\xb7\x6e\xa7\x16\x41\xb4\xc2\x7a\x57\xc3\x16\x62\xac\x82\x0c\xcb\xea\xe7\x69\x59\xaf\x3b\xd4\xf9\x55\x83\xa8\x8a\x4d\x34\xae\xed\xba\x58\xe5\x6e\x7d\xe8\x76\x91\xb1\x30\x32\x98\x7a\xeb\x45\x91\xff\xc8\xef\xe9\x07\xb9\x2d\xa0\x7b\x31\x49\x86\x3b\xb1\x31\xfa\x92\x08\xff\x7a\xbd\x43\x14\xea\x0d\x4f\x8a\xbb\x99\x74\x3a\x3a\x51\x77\x4a\x5b\x80\x84\xd0\xae\x6e\x2c\x50\x85\x86\xb2\x4c\x33\xe7\xce\x37\x1f\x69\x19\xe6\x21\x00\x5c\x3d\xc8\x27\x3d\x31\xc3\x3a\xb9\x8b\xa6\x6c\x55\x08\xc2\x75\xe8\x44\xf3\x86\xd4\x0c\x0f\x67\xc1\xf1\x45\xdf\xa1\xbd\x04\x05\x84\x89\x0e\x42\x53\x21\x45\xec\x05\x55\xa7\x64\xc0\x9b\x78\xa3\xe2\xb5\xe8\x74\x6a\xcc\x41\x3d\x8c\x0d\x78\x0b\x55\x14\xe1\x36\x35\xfe\x4a\x17\x34\x8b\xcb\xf1\xae\xb1\xa8\x33\xaf\x49\x91\x01\x8a\x4b\x32\x70\x70\xc6\x56\x92\x06\x91\x84\x91\xc6\xb6\x11\x95\xf8\xb6\xe0\x8f\x4f\x85\x65\xa7\x92\xc4\xba\xaa\x95\x58\x34\x4d\xe8\x2c\xa6\x12\xcd\x56\x6c\x40\x2f\x40\x4d\xc0\x0b\xae\x32\x82\xf5\x99\x35\x57\x9c\x39\x00\x4c\x49\x7f\xa2\xbf\x87\x55\xe2\x09\x23\x0d\x17\xba\x42\x3c\x3a\x07\xe0\xd5\x2a\xad\x57\x14\x4b\x19\x82\x76\xab\x44\x73\x7c\xde\x01\xa8\x23\xa9\x25\x08\xb1\x71\x8d\x11\x79\x2e\x67\x8c\x64\xbc\xd2\xd2\xc8\x61\xf6\xaa\xcc\xd0\x67\xbf\xfb\x02\xa0\xb8\x2a\x49\xe2\x50\xac\x2e\x83\x02\xec\x4b\x4b\xbb\x99\x91\x73\x9b\xfd\x0f\xeb\x18\x27\xa8\x48\xe4\xf2\x39\x3b\xb6\xaa\x48\x89\x26\x4f\x45\x4c\xdd\x9a\x42\x61\x49\xdf\x9a\x85\xd8\x52\xba\x21\x3f\xf4\x34\x80\x67\xf5\x53\xed\x58\x20\x95\xcb\xc2\xea\x27\x59\x48\xf9\x32\x9b\x4a\xcd\x4d\x05\x8d\x69\x12\x71\x36\x63\x5f\xc6\x8b\x71\xf5\xc6\x2a\x50\x8a\x1f\xba\x5d\xc3\xe9\x6e\x00\xb9\x49\x90\x06\xf4\xb2\x44\xd0\x54\xd3\xd4\x0c\xa0\xf1\x22\x69\x79\xc2\xcd\x4c\x3b\x40\x76\xf8\x49\xd3\x1d\x55\xa2\x3e\x6a\xa8\xfd\x85\x8b\x2a\xf5\x56\xc3\xc1\xec\x67\x6c\x7e\x1b\x86\xb9\x2f\xb4\x96\x53\x70\xe3\x8a\x89\x1f\x8e\xb9\xa9\xc7\x62\x77\x80\xbe\x4b\x00\x20\x88\x17\xee\x55\xb4\xd3\xb7\x3c\x23\xe8\xb1\x3e\x87\x5b\x76\xfb\x8b\xbc\x10\x70\xca\xf7\x8c\x67\x8e\x62\x4c\x27\xea\x30\xeb\x63\x15\x32\xfc\x6a\xfb\xf5\x25\xae\xaa\x0f\x7b\x82\x73\x17\x82\xb7\xa0\x15\xf3\x15\x4e\x8d\xea\x48\x63\xbe\x80\xc7\x1c\x46\xb4\x34\x17\x92\xc0\x7d\xcf\x39\xb5\x55\x40\xf0\x79\xa7\x46\x7c\x55\xd9\xe5\xfb\xe2\x2d\x57\xeb\x0b\x62\xaf\xb1\x98\x7c\x4f\x13\xd0\x58\x6b\x19\x15\x33\xd1\x7d\x03\x33\xcb\x24\x26\x6b\x84\x0d\x32\x79\x4f\x62\x96\xf2\xe1\xb5\xa4\x6f\xe4\x83\xc1\xc1\x2a\x40\xcf\x51\x30\x05\xd0\x2f\x4c\xd3\xb7\x1b\x62\xb6\x4a\xdf\xba\x84\x68\x3e\x2e\x6a\x99\x9a\xf6\x4e\x7d\xad\xb6\x23\x5d\xdb\xab\xae\x95\xf1\xab\xf5\x1d\xb3\x55\x76\xc2\x16\x00\x66\x2a\x6f\x2a\x92\x6c\x67\xd4\xab\xbe\xbc\x30\x48\x09\x8e\x76\x9a\xc1\xd1\x53\x7d\x6b\x28\xf1\x4a\xd3\xca\x23\x8e\x3f\xa6\x62\xde\x5b\xa4\x5f\xe2\x3e\x22\xbb\x22\x00\x3b\xae\x63\x95\xb2\x9e\x86\xec\x33\x2c\x73\x7b\x4d\x6e\x47\xef\xee\x6b\x0e\x16\x2b\xdc\x63\x73\x8d\x12\x3b\xc9\x01\xe4\x7f\x0e\xa2\xeb\x7a\x9b\x0f\xa1\xc1\x31\xea\xc2\x84\x44\x33\x7c\xab\x59\x03\x70\x79\xac\xa9\xb2\xfa\xac\x92\x2f\xc2\xf0\xc3\x0d\x77\x1e\x70\xa5\x16\x1f\x29\x57\x2f\xc3\x86\x5b\xad\xff\xac\x55\xb1\x41\x44\xb7\x58\x16\x3f\x29\xe9\xcf\x11\x22\x45\x36\xbc\x44\x00\x10\xcb\xa1\x4e\x3d\x83\xd4\xfe\x06\xe9\xb6\xca\xe1\x93\x6a\x24\x1b\x1e\xa3\x29\x5b\x2c\x73\x22\x9f\xbf\x6e\x90\xc4\x89\xbf\x20\x89\xd1\x0c\x0f\x10\xf0\x7b\x86\x77\xc8\xcc\xc1\xf0\x1c\x55\x99\x50\xc3\x0b\x64\xb9\x42\xc3\x2b\xe4\xf3\x5d\x86\xef\x91\xa7\xd4\xfd\x2b\x82\x5b\x79\xf8\x11\x19\xa2\x7f\x78\x82\x0c\xa9\x3b\x3c\x44\x3e\x05\x35\x3c\xd5\xaf\xc3\x0f\x28\x67\x6c\x59\x0e\x9f\x04\x13\x69\x3e\x7c\x87\x0a\x52\xca\x9e\x7e\xda\x6c\xac\x43\x16\x1f\xb4\x3d\x6b\x76\x1d\x00\x41\x67\x77\xfd\x63\x4f\x49\x94\xe6\xe8\xc7\x9a\x95\x80\x4e\x91\x58\x88\xb6\x72\xf8\x09\xff\xd8\x72\xb6\x03\x3f\x69\x93\x86\x2c\xbd\xdd\x85\xf0\xbe\xdf\x66\x2a\xf7\x0f\xd8\x2f\x34\x58\x2b\xbc\x10\xab\xf7\xfa\x9e\x70\x41\xa7\x5a\x87\x95\x37\xb9\xc4\x0a\x7d\x18\x18\x34\xa9\xd9\x7b\x48\xdb\x30\x1a\xa2\xbf\xdd\x91\xc7\xbf\x45\xb4\x8c\x38\xf9\x6d\x25\x0f\x7a\x3b\x88\xe3\x64\xdb\x05\x07\x45\x69\x96\xe9\x00\xaf\xe0\x83\x0c\xcb\x9b\x96\xce\xe2\x9a\xa4\x90\x27\x90\xf7\x28\xbb\x25\x31\x43\xaa\x1c\x4f\x3c\xdf\xb9\xf7\x36\x7a\xbb\x65\xed\xa7\xdd\x6e\x53\x29\x08\xcc\xae\x5c\x72\x35\xb5\x54\x78\x65\x54\x89\x22\x41\xcc\x6b\x49\xb5\x52\x34\xb7\xa2\x4b\xc8\x36\x40\x9d\xa6\x32\x9d\x32\x4f\xd9\x30\xa7\x30\x33\x30\x17\xd6\x6d\x9a\x5f\x92\xa4\x4d\x61\x15\xed\x4c\xf6\x1e\xd2\xfc\x4e\xfb\xe6\x70\x85\x04\x5b\x96\x8c\x8b\x86\xc0\x29\xe9\x54\x79\x55\xd0\xf6\xb6\x66\xef\x18\x5f\xf8\xcf\x6e\x9b\x50\xe3\xb3\xb4\xf1\x39\x35\xe3\x6c\x99\x8a\xb9\xff\xce\x49\x29\xab\x86\x94\x97\xb7\xd8\xd6\xcd\xb5\xa0\x65\x49\x8b\xdb\xe8\x8e\x3c\x7a\xae\xb3\x25\x10\xed\xaf\xbd\x6e\xa1\x02\xf7\xf7\x8b\xb7\x1c\x38\xb1\x74\x16\x6b\xb5\xa1\x71\x31\x49\x7a\x77\xe4\x31\x40\x43\x03\xe6\xa3\x1e\x15\xef\x2a\xd2\x61\xcc\x27\xf8\x89\x66\x5f\x86\x1c\x49\x18\x42\xd0\x7d\x9a\x5b\x1a\x40\xf9\x85\x9f\xe5\xca\x23\xbc\x51\xb1\xd8\x34\xae\x75\x85\x09\xaf\xee\xb0\x39\x99\xde\xc9\x77\xd9\x25\x37\x18\x18\xca\x96\x71\x88\x71\x01\x38\x74\x8f\x66\x5f\xf4\x00\x5a\x22\xe8\xb4\xec\x31\x7c\x46\xa4\x27\xd1\x00\x79\x5b\x04\x5e\xd4\xd2\xfc\xae\xbe\x13\x74\x88\x14\x8f\xe5\xdd\x37\x88\x7d\xd5\x8f\x8f\xba\xae\xc6\x62\xd2\xe2\xb2\x01\xcd\x41\xba\xa7\x25\x15\x31\x47\xed\x76\xb2\x71\x7b\xcb\x5b\x79\x54\xdd\x95\x30\xfa\xba\x04\x94\xe8\xf5\x69\xe0\x39\x4c\x1f\xa7\x39\x89\x32\x22\xc0\x55\xce\x30\x6a\x77\x45\xb7\x1d\xbd\xdd\x95\x0f\x70\x8e\x25\x92\xe3\x94\xde\x9f\x73\xe2\xa4\x29\x93\x31\x19\xf3\xc9\xe4\x1f\x6a\x11\xfa\xe9\x9a\xdf\x18\x5a\xc7\x04\x9b\xf1\x66\x85\x58\x4c\x55\x1e\x8a\x8a\xd6\x79\x81\x9b\x5a\xd1\x9e\xe7\x2a\x33\x29\x8b\x87\xb7\x45\xd1\xc5\xa6\x3f\x60\xd6\x63\xbb\x5e\x80\xaf\x6a\x7f\xbe\xa1\x63\x35\xd4\xd7\x77\x31\x62\xce\xb2\xd7\x4b\x93\xa4\xd6\xd0\x26\xb6\x1c\x51\xd1\x37\xb8\xa2\x9e\x5e\xf2\x56\xec\x13\xed\xc8\x70\x4c\x26\x3d\x79\x3c\xb0\xa4\xd0\xfc\xbe\xc0\xbc\x6c\x17\x0f\x07\x71\xc0\x61\xd0\x14\x7b\xdd\x80\xd6\xb9\x09\xfa\x26\x4f\xc2\xbe\x05\xf5\x86\x8b\xd4\x5f\x73\xc5\xbc\x51\x1a\x4f\xb8\xef\xeb\x82\x8e\xd9\x44\x19\x00\xc8\xce\x25\x53\x56\x08\x5a\xac\x88\x4b\xc2\x3b\x7d\x13\x7a\x90\x25\x48\x60\x8c\x53\x38\xa2\x8a\xc8\xd1\x2d\xff\x3f\xcc\x2c\xea\xaa\x9c\x9f\x14\x53\xb6\xa0\xc5\x6d\xac\x75\x90\x23\x2f\x9e\x90\xce\x5c\x59\x0e\xbf\xd4\x73\x1e\x21\xd4\x5c\x3c\x1b\x46\x08\x7c\x91\x69\xf0\x06\xfd\x5f\xaf\x85\x75\x7d\xff\xec\xfd\x51\xf1\x75\x86\x0a\xec\x8e\xc9\xdb\xc2\xf9\x3b\x53\xd3\xaf\x4e\x4b\x4b\xc4\x54\xce\x06\x02\x1f\x9b\x56\x9f\xb8\xf8\xb6\xdb\xa2\x09\xf4\x37\xfa\x01\x1a\x7b\xc5\xba\xdd\x09\xee\xaf\x49\x65\x02\x43\x3f\x40\xc6\x0b\x0f\x80\xa3\xf1\xee\xae\x57\x5c\x3b\x35\xd2\x28\x98\x6f\x3d\xfa\xbf\x87\x86\x3d\xf0\x74\x79\x9a\x0a\x7a\x4f\x2e\x57\x4b\x52\x33\xd3\x81\x30\xfa\x5e\xec\x7a\x6a\xd4\xe7\x3d\xb7\x08\xc9\x93\x8b\xce\x65\x87\x8d\x43\x4f\x55\xde\x84\xa0\x27\xeb\x36\x94\xf1\xa1\xee\x0d\x47\xa4\x58\x2d\x34\x0a\xbe\x33\x40\x0f\x9c\x0a\xf5\xdc\x47\x53\x56\xcc\xe8\xed\x4a\x7f\xeb\x6f\x36\x72\xb7\x2a\xad\x7c\x9e\x20\x01\x41\x21\xe4\x94\x4f\x25\x81\xf1\x3e\xcd\xf3\xf7\x21\xc4\x4e\x9e\xfa\x2a\x1e\xb0\x17\x4a\x02\x87\x5a\xde\xfd\x16\xd9\xda\x75\x4d\xaa\x71\xe5\xf9\x83\xbf\x30\x10\xf2\x52\xd7\x9d\x22\x90\xd0\xcc\x4f\x70\x31\x7c\x4b\xb2\x2b\xb2\x90\x04\x17\xf9\x00\xe1\x47\xf3\x5a\x3f\xe5\x75\xbc\x5e\xc7\x02\x13\xe5\x50\x38\xee\x27\xce\x65\x5a\x8f\xa7\x0f\x58\x80\xaf\x18\x9f\xde\xaa\x31\x99\x54\xf3\xa2\xd3\x61\xc1\x9a\x88\x44\xbb\x43\xe5\xf0\x05\xf1\xd0\x19\x9b\xf2\xb2\x77\x35\xa7\xa5\x8b\x24\x99\x81\xff\xb8\x25\x2b\x4b\x7a\x93\x93\xf7\x6e\x2a\x2e\xa0\x20\x2e\xe5\xc5\x0e\x33\x09\x61\xee\x56\x53\xb1\x92\x78\x6b\xcd\x2d\x55\xdf\x75\xb9\xbe\x05\xeb\x36\xb8\x0a\x8d\xa2\x98\x6b\x2c\xdc\xf2\xe3\xb9\xd2\x57\xeb\x79\x8b\xd2\x12\xf8\x82\xcc\x72\x58\x4c\x93\x1a\x53\x27\x61\x44\x96\x17\x2f\x11\xfb\x26\x21\xb2\x0d\x7b\x6c\x1d\x1d\xbb\xde\x1e\x33\x7e\x36\x03\xba\x51\x30\xae\x4c\xdb\xab\x6b\x66\xc4\x17\xa0\xcf\xda\x5e\x59\xcb\x78\x8b\xbb\xab\x28\x7c\xeb\xb5\x16\x59\x8d\xd5\xbb\x0e\x40\xcb\xf8\x04\x0e\x61\xe8\x5a\x84\x24\xeb\x75\x5c\xdd\x18\x0a\x0b\xd5\x88\x56\x13\x91\x60\xd1\xc8\x95\xf2\xcc\x1a\xb8\xae\xf3\x51\x70\x65\xa5\x6b\x4c\x34\xf4\x4e\xfb\x13\xda\x1d\x24\xad\xf6\x99\xf1\x7e\x28\xb7\x09\xf1\x67\x1a\xe4\x12\x41\x8a\x76\xfd\x2b\xfb\xf2\x31\x5d\x42\x99\xf5\xba\x7d\x49\x54\xf1\x24\xf0\x9a\x32\xe3\x6c\x11\x73\x95\xd9\x78\x0b\x29\x75\x91\x57\xff\x1d\x8f\x86\x9f\xe8\xfa\x24\x29\x44\x3c\x1a\xfe\x69\x3d\xf8\x6e\xfd\x7a\x2f\x89\x47\xc3\xf7\x79\xba\x58\x92\x2c\x19\x41\x25\xbf\x7b\xa5\x0c\x74\x79\x12\x8e\x74\x23\xa1\x57\xb2\xdd\x4e\xfd\x7b\x7b\x95\x8c\x4c\xd4\xbd\xcd\xb0\x12\xab\x8f\x8c\x45\xb7\x3b\xd9\x6c\x5a\x8d\xea\x54\x27\xc5\x7d\x9a\xd3\xcc\xd8\x48\x44\x82\x45\x3a\x80\x70\x54\xb0\x62\x97\x6a\xce\x42\x64\x24\x36\xbd\xcf\x9f\x8b\x93\x22\x62\x3c\x23\x5c\x7b\x50\x34\x79\x10\x94\x48\xe5\x78\x22\x75\x76\x4a\xa5\x37\x37\x4f\xef\x49\x94\x46\xb5\xfd\x11\x27\xda\xc2\xa2\xd7\x36\x7c\x71\x09\x20\x1a\xf2\x25\xca\xd5\x94\x52\xec\xd4\xfa\x96\xc2\x6c\x00\xe5\x48\x5a\xed\x81\xb3\x19\xb2\x1b\xe3\x36\x4c\x2f\x70\xcd\x01\xa6\x3e\x5f\x9d\x4e\x83\x2a\x7a\xed\xec\x21\x6b\x67\xd5\xf2\x6d\xe7\xeb\x9e\x4c\x45\x83\x27\x53\x49\x31\xb4\x8a\x9e\xbb\x27\xb0\xff\xb2\x5e\xef\x0c\x20\xc0\x99\x03\xb8\x12\x3b\x6a\xc3\x02\xb6\x69\x11\x15\x10\xab\xc7\x00\x67\xbc\xd3\x4f\xd0\xb6\xeb\xb2\x00\xb4\xa1\xf0\x2d\xfc\x53\xdf\xd4\x7b\xe3\x1b\x94\x3b\x0b\xfb\xda\xdc\x88\x4e\xc7\xf0\x57\xd7\xeb\x86\xf9\x11\x23\x31\x24\x81\x39\xb9\xac\x4c\x5f\x38\x92\x60\xf9\xde\x12\x09\x60\xfe\x6b\xdf\x3c\x12\xcc\x53\xef\x49\x34\x11\x66\xd5\x7a\x26\x98\x8c\x0b\xab\xb3\xc2\x37\x3e\x62\xf1\x0a\x4c\x1f\x43\x7f\x15\x9a\xfd\xd1\x46\xed\xff\xab\xf2\xec\xd2\x42\x10\x5e\xa4\x79\xf9\x8a\x14\xf7\x94\xb3\x42\x79\x21\x69\x17\x2c\x23\xbb\x0b\x8d\x50\x34\xe4\x5e\x09\x9a\x97\x8d\x5f\x24\x12\x9b\x52\x70\x95\x61\xbe\x52\xd8\x1d\xb2\x66\x70\xf8\xd0\x58\x6c\x41\x44\xba\xf5\x43\xee\xbe\x4c\xd3\x22\xe5\x8f\xbb\x33\x92\x8a\x15\x27\x5e\x17\x32\x72\xb3\xba\x6d\xa3\xc0\x57\x47\x73\xf7\x4a\xe6\x0f\x4a\xf6\x97\xb3\x3c\xf7\xf3\xbb\xb4\x57\x39\xbd\xf1\x5e\xaf\x17\xf4\x0b\xf5\x06\xa0\x81\xb0\x7b\x27\xfc\x9e\x4e\xbd\xda\xf5\x8e\xa9\xbc\xbf\x9a\xb2\xc5\x32\x6d\x4e\x5e\x09\x92\x35\xf6\x5c\x47\x38\x6c\xfc\xa6\x9d\x60\x19\x97\x24\xaf\xee\x09\x2f\xb7\xcd\xf4\x3d\x25\x0f\xcd\x4b\xc7\xd9\x4a\x04\xc3\xf1\xb7\xc7\x17\x41\x0a\x59\xe7\xae\x8e\x18\xe6\x72\x11\x09\x25\xdd\x2b\x5f\x15\x39\x63\xcb\xe6\x5a\x64\xd6\x5d\x08\xe0\xbd\xad\x21\xf6\x10\x2c\x9d\xbc\xb4\xe9\xb4\xb2\x6f\xbc\xc4\x57\xca\x74\xb8\xdc\xd5\x2e\x4b\x9a\x8b\xbe\x32\xa0\xd9\xeb\x75\x71\x4b\x8b\xda\x7b\x43\xc6\x25\xcb\x1f\x67\x34\xcf\x83\xbd\xb6\xe4\x64\x9a\x0a\x92\x35\x6c\xc4\xa9\x71\x0f\xf4\x4a\x68\x7c\x6f\x97\x15\xf9\x63\xd5\x41\x8c\x31\x0d\x04\xa1\xd2\x0a\xe5\x68\x8a\x66\x28\x43\x73\xb4\x44\x0b\x74\x8f\x1e\xd1\x2d\xba\x41\xd7\xe8\x01\x1d\xa1\x4b\x74\x86\xbe\xa0\x03\x74\x87\xce\xd1\x05\xba\x42\xef\xd1\xaf\xe8\x23\x3a\x41\x87\xe8\x14\x7d\xf8\x5f\x61\xd4\x1e\xd7\xef\x01\x2e\x41\xaf\x90\x37\x0c\x5d\x00\x3c\xe9\x1d\xc9\xe1\x76\x3a\x5b\x3e\xac\xd7\x4f\x9b\xd6\x71\x8f\x96\xa7\x26\x1c\x87\x04\xd7\xc7\xcf\xf8\x10\x69\x43\xb9\xf6\x66\x0b\xd8\x3e\x46\xed\xa3\xd3\x9f\xda\xe8\xe9\x96\x88\x21\xe8\xd1\x1c\x9d\xfe\x14\x52\x15\x9b\x6d\x20\xff\x18\xb5\x73\xc6\xee\x56\x4b\xbf\xf8\x07\x48\x01\x3f\xe6\xa0\x8d\xa8\xdf\xab\x35\x9e\xf6\x8e\x3e\xbe\x3b\xba\xb8\x3e\xfa\xcf\xab\xa3\xd3\xc3\xeb\xf3\x8b\xb3\xab\xb3\xab\x5f\xce\x8f\x2e\x3b\x9d\xed\x1d\xad\xe6\x6d\xa3\xa7\x90\xfe\x69\xe6\xfa\xf3\xde\xd1\xe9\x4f\xbd\x5a\x69\x49\x56\x1c\xcb\x2e\x9f\xc9\xc3\x81\x2f\xec\x23\x3a\x96\x1d\x37\xa9\xa5\x4b\x3d\x70\x7b\x1f\x5f\x99\x15\x0e\xd3\xad\x5c\xeb\x57\xfb\x7d\xeb\x78\x2e\xec\xe1\x7a\x6a\xee\xf8\x7b\x53\xc7\xe6\xb9\x35\x38\x54\x79\x5e\xac\xed\xb8\x67\xb2\xa8\x91\x1f\xc1\xd9\xc4\x1f\xbd\x81\xa8\x24\x3b\x86\x13\xef\x93\x76\x0d\x7e\xa8\x1f\xd0\x71\x6f\x41\xf8\x2d\xc1\x87\xea\x1f\x66\xb2\x00\xf4\x4d\x79\xcb\x0e\x5e\xd1\x71\xef\x87\x4f\x27\x87\xd7\x7f\x39\xfa\x05\x53\xfb\x28\xcb\xac\x68\x76\xcc\xb8\xcc\xae\x9e\xd0\x71\x8f\x16\x25\xb8\xc0\xa6\xe6\x49\xb6\x95\xde\x11\xe5\xc5\x92\xba\x67\x74\xdc\x9b\xa6\xc5\x89\x32\xc4\xa6\xee\x59\x9e\x07\xfe\x68\xd3\xed\x33\x3a\x06\xba\x1d\x53\xf8\x43\xc7\xbd\x95\xea\xe9\x4a\xf5\xf0\xbd\xb9\x63\x31\x73\xcf\xe8\x58\xbb\x48\xe4\x8f\x98\xd9\x47\x35\x1f\x84\x0b\x3c\xd5\x0f\xb2\xee\x94\x17\x78\x0a\x7f\xe8\xb8\x07\x37\x27\x9e\xaa\x7f\x78\xd7\xd0\x0d\xd2\xf4\x73\xcb\x4b\x3f\x5e\x15\x53\xff\x9b\x7c\x47\xc7\x3d\xbe\x2a\x4e\x8a\x43\x5d\x99\x7b\x91\x8b\x05\x96\xe3\x07\xde\x1a\xa9\x6c\x4f\x5c\xfb\x74\x3c\xd4\x55\x51\x56\xfc\x28\x2f\x07\xc2\x87\xd3\xde\xf6\x8f\xc8\x7c\xfa\x39\xe5\x0d\x05\xbc\x54\x44\xcb\xf7\xfa\x52\x1d\xae\x7a\xee\x65\xa3\x56\x4f\xa3\x25\x38\xf5\x5e\xe4\x99\x5a\xdd\x94\x53\x4e\x6f\x08\x4e\xdd\x33\x3a\xee\x9d\x84\x88\x0c\x7e\x72\xa5\x86\x41\x15\xb6\xd0\xd0\xaf\x60\x55\xf8\xe9\xde\x1b\x02\x96\xe8\x30\x55\xac\xd1\x8d\x9a\x4b\x7c\xd7\xbb\xd6\x97\xdb\xc5\xaa\x50\x69\x3d\x87\xdd\xe0\x3b\xef\xc5\x7c\x05\xd3\xa7\x3b\xf5\x6f\xd2\x68\x91\xc9\x24\x5a\x64\x3a\x45\xeb\x55\xde\xe9\x07\x9d\x6a\x95\x78\xef\xec\xa3\xfe\x42\xa0\x02\x62\xcb\xcf\xd3\xf2\x52\x4b\x4d\x8d\x96\xc7\x5d\x43\xa2\xce\x0d\xba\x66\x77\xf0\xa7\x53\x94\xb2\xd3\x9d\xfa\xd7\x69\xe0\x4c\xf7\x4e\x89\xa1\x55\x0a\x53\x7d\x61\xae\x1f\xd6\x78\xe2\xce\x3e\x56\xbe\x9c\xa9\x32\xfe\xab\xce\x61\xf5\xb6\xef\xec\x63\x30\x1b\x76\x1c\xfe\xeb\x36\x40\x26\xcb\x21\x13\x9c\xe3\x62\x55\x7c\x00\x74\x07\x60\xd9\x9d\x04\xcd\xef\x83\x2f\xd5\x0b\x05\x2e\xd8\xaf\x78\x65\x57\xd7\xec\x49\x49\x1d\x1f\xf7\x0c\x0e\x88\xbf\xa2\xe3\xde\x75\x46\x54\x78\x18\xc6\xf1\xaa\x57\x00\x1b\xef\x90\x94\xd3\x43\x32\x65\x40\xf7\xc9\x3c\x02\xe2\x9c\x64\x78\xd5\xd3\x4f\xe8\x6b\x2f\xcd\x69\x5a\xe2\x95\xfa\x07\xe8\x33\x9d\x93\x63\xa8\x45\x76\x50\xbe\x65\x10\x72\x42\x01\x32\xd3\x05\x1b\x11\x69\x55\x4b\xda\x0e\xd5\xaf\x4b\x22\x4c\x6e\xdb\xb1\xad\xb0\x7d\x25\xaf\x29\x60\x5d\x51\x37\x0c\x05\xe6\xaf\x1b\xbe\xe0\xc6\xfc\x00\xd3\x45\x8a\x4b\xf8\x53\x77\xa3\x1a\x9a\x7a\xfe\x99\x8a\xb9\xbe\x6c\x54\xb2\x97\x20\x1b\x92\x64\x6f\x2a\xe6\xb0\x08\xea\x51\xdd\xa4\xaa\x35\x05\x95\x2f\xe1\x55\x3d\xa0\xe3\xde\xf1\xd1\xc1\xd5\xa7\x8b\xa3\x4b\x1c\xf7\x91\xb9\x5a\x92\xf8\x89\x96\x47\x85\x5c\xda\x6c\x98\xf7\xec\xf3\x06\xe5\x36\x3f\x0c\x0c\x26\x1c\xd3\x1e\xfc\xa3\xe3\x1e\x2b\xf0\xaa\xc7\xe4\x81\x48\x33\x70\xf7\x2c\x6f\x20\xb9\x5c\xee\x4d\x6e\x4f\xf0\x44\xed\x7d\x0e\x13\xa0\xcb\x45\x76\x74\x2f\x21\xd8\xca\x3d\xa3\x63\x79\x1a\x4d\x2e\xb9\x0b\xfc\x57\x04\x38\x19\x2b\x08\x5e\xe9\x07\x48\x51\x5c\xbb\x95\x79\x82\xb4\x77\x79\x5a\xdc\x41\x1a\x3c\x41\xda\xb9\x0a\x05\x01\xa9\xfa\x19\x1d\xf7\x0a\x26\xe8\xec\xd1\x6c\x8a\xf7\xf3\xb4\xb8\x95\xf5\x37\x25\xa3\x63\x05\x9e\xc2\x54\xd9\xcb\xa6\x64\x74\x2c\x01\x4f\x3d\x6f\x3d\x51\x6e\x72\x78\xd2\xe9\x14\xf2\x55\x93\xd0\x71\xcf\x1a\x97\x3e\x85\x5b\x79\xb8\xd3\x47\xf3\xb4\x34\xaf\x07\xd3\x29\x29\x4b\xc6\x4b\x89\x26\xc3\xad\xe8\x67\xc6\xab\x4a\x02\xe4\x28\x05\x67\xea\x13\x3c\xa1\xe3\x5e\x4e\x6f\x78\xca\x55\x5f\xec\xb3\xda\xa3\x41\x3f\x83\x77\xb5\x17\x83\xef\x65\xe5\x3b\xf9\xb2\x4c\xed\x14\xa8\x2c\xd5\x24\xb5\xb9\x8c\x77\x45\xb5\xb9\xcc\x9b\xdd\x5c\xde\xe7\x30\x41\x96\x96\xb0\x43\x79\xb0\x33\x90\x44\xbd\xc9\x0d\xec\xca\x31\x57\x02\xa8\x63\xbc\x52\xff\xe8\xb8\xf7\x51\xbf\xc3\xff\x76\x00\xc2\x0a\x4d\x42\x02\xc8\x38\x07\xec\x56\x25\x01\x72\x7e\x0e\x88\xad\x4e\xf8\x66\x7c\x5f\x90\x52\x11\xb3\x50\xe9\xb4\x47\xcb\x2b\x95\x02\x75\x4e\x41\x17\x4c\x27\x54\xeb\x3c\xee\x5d\xbf\x73\xf7\xec\xcc\xa2\x2d\xa7\xbd\x0f\x67\x3f\xfc\x70\x74\xd1\xe9\xc4\xc7\xbd\x0f\x0c\x74\x3c\x33\xf3\x55\x16\x3b\xc0\xd7\xbd\x03\x74\xdc\xd3\x14\xce\x53\xce\xa6\xc3\x45\x2f\x67\x53\xf4\x30\x5c\xf4\x1e\x50\x96\x96\x73\xc2\xe9\x57\x32\x5c\xf4\xec\x33\xca\xc8\x34\x5d\x90\x5c\x27\xdb\x17\xe4\xa5\xba\x34\x00\x84\xb3\x47\x99\xa6\x1f\xd1\xaa\xc8\x08\x2f\xa7\x8c\xcb\x9c\xee\x05\x4d\xd3\x25\x15\xa9\xad\xc1\xbc\xc8\xcd\xac\x66\x0d\x5f\xeb\x07\x39\x62\x83\x30\x9e\x73\xf6\xe5\x51\x2d\xdc\x75\xaf\x9e\x08\xd0\xcc\xa0\x9c\x41\xde\x86\x54\xa4\xae\xb3\x94\x13\x7c\x6d\x9e\x20\x6d\xf9\x08\x09\x4b\x05\x67\x8e\x7e\x5b\xa5\x39\xbe\x36\x4f\xfa\x26\x38\xe6\xe9\x82\x3c\x30\x7e\xa7\xe4\x1c\xd7\xbd\x5a\x1a\xe0\x70\xbf\x06\x31\x68\x92\xa7\x8d\x4d\xed\x69\x6e\x0c\xbe\xd7\x09\xee\x8b\xe3\xe8\xe0\xb9\xfb\xa8\xd0\xf6\xeb\x9e\x41\xd9\xdf\x43\x8f\x81\x9b\x78\xed\xbd\x00\xf5\x61\x79\x94\xd7\xde\x8b\xa9\x03\x66\xc0\x54\x04\x2f\x76\xce\xcd\x27\xef\x4d\x96\x9a\x7a\xd8\xad\x2c\xe8\xbf\x43\x4f\x38\xb1\x6b\xe6\x5e\xd0\x71\x4f\x89\xf6\x4c\xcf\xbd\x37\x28\xb5\x7c\xb4\xbd\x57\x8f\xf2\x50\xae\x80\x41\x1a\x0c\xa1\x96\xe6\xf2\x99\xaa\xfd\x57\x74\xdc\x53\x9e\x2e\x55\x3f\x2f\x15\x47\x08\x5f\x37\xa5\xca\xd9\x92\xb7\x12\xc9\xe4\x54\xa9\x27\x74\xdc\xd3\x9e\x66\x83\x1d\x54\x4b\x83\x59\x93\xab\xa8\xbb\xe9\x5e\xe4\x15\x0d\x2c\x6b\x7c\xad\x1f\x60\x27\x99\xce\xea\xa7\xc6\x9d\xce\x8a\x0f\x2c\xcd\xf0\x95\x7e\x50\x68\xa0\x7c\xfa\x91\xb1\xbb\x12\x5f\x05\xaf\x9a\xd8\xb2\x7b\xc5\x51\x30\x2e\x59\x75\x7f\xe9\x7d\xbb\xb4\x1b\xcf\xa5\x5d\x07\x43\xbd\x0e\x06\x79\x71\xf9\xd3\xb9\x3c\x6d\x97\x3f\x9d\xc3\x92\x1a\x86\xc9\xb5\x7b\x96\x35\x28\x57\x4c\xf8\xb1\xa7\x1e\x14\x7e\xb8\x24\x45\x46\x0a\xf1\x17\xf2\x08\x3b\x54\xe0\xdb\x5e\x3d\x11\x7d\xed\x11\xb8\xe0\x6f\xd4\x3f\xfa\x2a\xef\xe6\x23\x9d\x64\x1e\x21\xb5\x20\x90\x52\x10\x95\x47\x7d\x46\x5f\x7b\x37\x8c\xe5\xf8\x06\xfe\xd0\x57\x15\x7c\x0d\xdf\xa8\x7f\x59\x3b\x1c\xe1\x1b\xf5\x8f\xbe\xf6\x6e\x65\xc1\x5b\x01\x4f\x04\x1e\x65\x7d\xb9\x4c\xcd\x05\x3c\x11\x78\x94\xa9\xac\x20\x3f\xa7\xb2\x1f\xea\x01\x7d\xed\x71\x92\x66\x65\x35\xe1\xac\xc8\x65\x26\xf3\x88\xbe\x5a\x02\x94\x16\xb7\x07\x80\xef\xde\xd4\x92\x24\x2a\x5c\x64\xf8\x46\xfe\xca\xa6\xb8\xac\x95\xa3\xaf\xbd\x72\xb5\xc0\x37\xf2\x57\x0e\x86\x16\x72\x28\xb4\x80\x81\x7d\x81\x61\x7d\x81\xe7\x25\x3c\x2f\x65\x7e\xb9\xc1\x6f\xe0\x4f\xbe\x11\x71\x48\x67\x33\x99\xa0\x9e\x54\xee\x77\x8f\x2a\xff\x3b\xd9\xbb\x19\xcd\x25\x9d\x73\xa3\x1f\x6c\x0a\x64\x32\x8f\xe8\x6b\x6f\x55\xd0\xdf\xf0\x0d\xfc\xe9\x37\xc8\xa1\x1e\x54\x0a\x2b\x54\x02\x93\x3d\x04\x56\x69\x29\x37\xf5\x8d\x7b\x46\x5f\x7b\x53\xb9\x19\x21\x55\x3f\x6d\xbf\x1b\x2f\xaf\x2e\x4e\x4e\x7f\xb8\x6c\x83\x80\xdb\x93\x5f\x2b\xb6\xd4\x02\x90\x62\x75\x87\x95\x70\x5b\x2e\x00\x20\xeb\x94\xe7\x2e\xdd\x77\x67\x67\x57\x47\x87\x0d\xf5\xd6\x99\x5f\x2b\x9f\x35\x78\x49\x52\x3e\x9d\x1f\xd2\x12\xd0\x67\x68\x13\x70\x9e\x2d\x19\xe0\x8e\x76\xce\xf4\x1f\xdc\x33\x7a\xd0\xfe\xc8\x7b\x73\xe5\x96\xfc\x41\x3f\xa0\x63\xe3\xa8\xdc\xe4\x90\x55\xcc\xc9\xf4\xee\x86\x7d\x91\x35\xe8\x47\x09\xda\xc8\x17\x71\x0c\x8e\xe9\x1f\xdc\xb3\x4e\x3f\xe0\x24\xd5\xc9\xf2\x11\x1d\x43\xc8\x16\xbf\x2b\xc1\xbb\x21\x6a\xcc\xfb\xc7\xb4\x48\x6f\xa1\x0f\x0d\xa9\x32\xf3\xb4\x92\xf6\x3e\x5d\xa6\x37\x34\xa7\x80\xe3\x3d\xc8\x5b\xdc\xbe\xea\xba\x4d\x68\x82\xa0\xea\x4a\xa2\xcc\xba\x08\x93\x2a\x15\x9b\xaf\xef\x2b\x0d\xdc\x7a\xdd\x34\xea\x0b\xf8\xa1\xd7\x94\x5c\x1d\xab\x97\xbd\x29\x19\x28\x57\xfd\x2c\xcf\xb3\x9b\xc3\x0f\x3e\xd4\x9c\xa6\x4b\xb1\xe2\xe4\x42\x02\x34\x7e\xc5\x09\xc1\xd3\x5e\x2d\x4d\x2e\x2e\xdc\x95\x37\x29\x2f\xf1\x93\xa9\x76\xf8\xd0\x33\x8f\xe8\x93\xa0\x79\x39\x7c\x22\xe5\x34\x5d\x7a\xee\xe5\x87\x0f\xbd\x6a\xd2\x46\x62\x10\x3f\x5e\x7d\xfc\xf0\x6e\x5b\x65\x1b\xb4\x85\x4f\xab\x11\xbf\x4e\x27\xd6\x42\x76\x27\x77\x9f\x8b\x45\x7e\x99\xce\x48\x9d\xed\x1d\xf7\xd1\x83\xfd\x9c\xe8\x30\xb2\x89\xc5\x22\x5d\x49\x97\xcb\x7d\xa4\xa5\xec\xa9\xfe\xec\x5e\xb6\x9f\xd0\xab\xa3\x8f\xe7\x1f\x0e\xae\x80\x23\x2d\x8f\x21\xac\xa5\x59\x13\x75\xda\x1f\x14\x6e\x6c\x92\x9e\x3d\xca\xd0\xd1\x9f\x8e\x2e\x2e\x4f\xce\x4e\xf1\x91\x87\x29\xff\xc7\x5f\x3f\x1d\x5d\xfc\x72\x7d\x72\x7a\x75\xf4\xc3\xc5\xc1\xd5\xc9\xd9\x69\xa7\xb3\x73\xd9\xfb\xf5\xaf\x2b\xc2\x1f\xcd\x39\x7e\x86\x83\xfe\xbb\xad\x0c\x04\x53\xc9\xa6\xaa\x7c\x13\xf4\xac\xaf\x7a\x46\xc9\x03\xac\x3c\x7e\xa2\xe5\x25\x5d\x2c\x73\xf2\x3e\xa7\xd3\xbb\xe1\x65\x2f\x78\x97\x10\x49\x07\x0d\x90\x45\x86\x97\xbd\x30\x41\x7e\x97\xff\x3a\x49\x7d\xf7\x12\xcc\x77\x15\x2c\xd6\x7d\x56\xef\xe6\xab\x8a\x6f\x70\x41\xa6\xc2\xcb\xe2\x25\x06\xb5\xd0\xe2\xd6\x7d\xaa\xd4\x18\x7c\x93\xa5\x2e\x18\x83\xaf\xba\x5e\xfb\x2a\xbf\xbd\x9f\xd3\x3c\xf3\x3e\xba\x77\x44\xcb\x4b\x1d\x3a\x18\xf8\x99\xc7\x94\xab\x20\x6e\x43\xb9\x97\x9a\x3f\x6d\x34\x20\x34\x38\xdf\xa5\xff\xe6\x43\x65\x25\x4d\xc1\x97\xd5\x14\x83\x0f\x1e\xd2\x72\x09\xe1\xa2\x39\xbe\xac\xa6\x48\xb0\xca\xb4\xf4\xe2\xcc\x3e\x4a\x3c\x79\x25\x98\xf7\xc5\x7f\x05\x18\x50\xce\xbd\xaf\xfe\xab\xfc\x4a\x4b\xc1\xf8\xa3\x9f\x21\x4c\x91\xa8\x17\x2b\x88\x97\xc1\x7f\x05\xba\xc5\xa0\x7c\xc7\x8c\xe3\xb3\xf0\xdd\x13\x2b\x38\xd4\xf0\x38\x9d\xca\x16\xf0\xd9\xf6\x6f\x8d\xe5\x1a\x0b\x48\x44\x91\xad\x04\xe1\x87\x97\x1f\xf0\x99\x7b\xb6\xe9\x36\xd1\xa4\x98\x04\x14\xf7\x51\x88\xd7\x26\xb1\x92\xb6\xf9\x02\xa1\x36\xba\xf2\x89\xd9\xc3\x54\xa4\x07\x59\xba\x94\x15\x7f\xf1\xdf\x7c\x01\x04\xf0\xf1\x5d\xae\xc6\x74\x65\x23\x34\x4f\x65\xa3\x4a\xe7\xd1\x0a\x46\xe5\x75\x47\x73\xc2\xdb\x49\xa7\x03\xb9\x4c\xfb\xcf\xe4\x6c\xaa\x4e\x91\xfa\x89\xd2\x24\x79\x87\xb7\x54\xa5\x73\xb5\xe4\x0e\x2e\x05\x7e\x07\x7f\x48\xbd\xf5\xcc\x20\xde\xf5\xdc\x30\xe1\xc3\x5f\x3f\x15\x54\xb8\xaf\xfe\xab\x62\xd4\xac\x96\xc7\x8c\x6b\x5e\x02\x7e\x57\x4d\xd9\x6c\x9d\x7b\x6d\x84\xf2\x09\x1f\x7b\x16\x0f\x9f\x50\xd1\x3b\xb9\xbc\x3e\x3d\x3b\x3c\x1a\x15\x3d\xa5\x81\xd1\xd3\x1a\x1c\xf8\x78\xe8\x84\xad\x3a\x4d\x09\x5b\x71\x53\x3a\x3e\x0e\xf4\x41\xac\x4e\xc0\xbf\xca\xe2\xc7\x25\xb4\x5f\xf7\x06\xdf\xf5\xfe\xd4\xd6\xfd\xf1\x94\x4b\xea\x5a\x2a\xff\xe4\x3e\x69\x95\x17\x4c\xf4\x5c\x62\x62\xa6\x37\x30\x4c\x02\x3f\xa1\x35\x99\xb7\x2a\xd2\xa8\xfa\xa4\x57\x46\x57\xdf\x72\xb5\x16\xc8\x36\x25\xbc\xf6\x39\x2a\x46\xb1\xfb\x82\xd5\x83\x9f\x01\x87\x55\x26\x43\x3f\x3b\x18\xed\xfa\x99\x95\xc9\xa5\x9a\x4f\x2e\xcf\xf8\x2e\x27\x53\x76\x5b\xd0\xaf\x61\x90\x9a\x7f\x85\x51\x57\xa0\x4e\x1b\x2a\x0e\x6b\x43\x49\x15\xc8\xd6\xe9\xb2\x5e\x5f\x9b\x08\x5e\x3a\xfe\xab\x4c\x42\x64\xa3\x14\xc1\xaa\x2a\xad\xce\x8c\x47\xfb\x70\x5c\xe8\x8b\x43\x47\x2b\x90\x75\xdc\x42\x94\x75\x88\xf8\xe0\xe9\x3a\x6e\xd7\xec\x37\x65\x20\xce\x7e\xa7\xc3\x21\xa8\xff\x41\x96\x01\xbc\x04\x5f\xc2\x61\x52\xec\x37\x6c\xfc\xb5\x13\xe3\x78\xcf\xa4\xa7\x59\xe6\x19\x48\x90\x44\x6b\x6e\x82\x09\xbe\xb3\xbb\x6f\x70\xbf\xec\xe9\x00\x16\x91\xb5\x5b\xa3\x45\x24\xe6\xc4\x2a\x35\x46\xcb\xb4\x2c\x95\x87\xe6\xbf\x09\xf6\xb7\xb6\x36\x7a\xf5\x1a\x87\xbb\xdd\xef\x01\xaa\x4c\x51\xb2\xd9\x68\xcb\xb7\xba\xe5\x8d\x1c\x66\x89\xb9\x75\x33\x21\xeb\xe2\xa4\x70\x29\x6a\xd4\x98\x6c\x2a\xca\x7d\x9e\xf7\x08\x5b\x2b\x45\xa9\x09\x66\x40\xba\xe0\x8e\x75\x27\x4d\xbc\xe0\xcd\x45\x5c\x42\xc1\x56\x1a\x33\xfd\x58\x51\xc7\xab\x06\x31\xe9\xd7\x83\x89\x74\x93\xa2\x8b\xc9\x98\x4e\x7c\x4b\x11\x6d\xfb\xfd\x24\x93\x86\x02\x0b\x10\xc0\x0a\x88\xdd\x3d\xd7\xa2\x62\xbe\x69\x11\x63\x55\xb1\xa1\xcf\x98\x17\x06\x53\x33\x26\x13\x2c\x36\xa8\x92\x1f\xa6\x7c\x8b\xeb\x86\x14\xb4\xf7\x68\x6c\xcc\x93\xcd\x94\xca\x9a\xd2\x96\x9a\x1d\x39\x83\x29\x2a\x92\x56\xd1\xe9\x14\x06\x8a\x1f\x49\xba\x5e\xe2\xc7\xd5\x94\x58\xa0\x32\x41\x3c\x2e\x93\x4d\x25\xea\x8d\x3d\x5b\xe5\x32\xa7\x22\x6e\xbf\x6a\x2b\x37\x2d\x79\x02\xb2\x57\x48\xd8\x28\x17\xc1\xaf\x7e\xbf\xfe\xfc\xea\xd5\xad\xab\x20\x0f\x2a\x50\xd3\xf8\xf6\xf5\x7a\xbd\xab\xa2\xe2\x03\x8c\x3e\x9b\xc5\xed\xdf\xb7\x93\x11\x19\x66\x64\xca\x32\xf2\xe9\xe2\xc4\x62\x76\x31\x49\x7a\x9c\x2c\xf3\x74\x4a\xe2\x15\x22\x45\xf5\xbb\x6a\x78\x8a\x5f\xfd\x3e\x1e\x0d\xf7\xe2\xd1\xf0\xcd\xfa\xbb\xf5\xbb\xf5\xfb\x64\xfd\x3a\x1e\x0d\xdf\xad\x0f\xd7\x07\xc9\xfa\x4d\x3f\xf1\xfb\x34\xf3\xfb\x54\xab\xd1\x6f\x71\x8a\xea\x3d\x52\x2d\x66\xf8\x55\xfc\xf9\xd5\xfa\x73\x6f\xfd\xf9\x8f\xeb\xcf\xdd\xf5\xe7\xd1\xfa\xf3\x7a\xfd\x39\x5e\x7f\x4e\xd6\x9f\xc7\xeb\xcf\x93\xf5\xe7\xa7\xf5\xe7\xcd\xfa\xf3\xe7\xe4\xd5\x2d\x9a\xe3\x40\x0f\x1b\x2d\xeb\xda\xd3\xf3\xb4\x3c\x7b\xb0\x32\xaa\xc0\xc3\xb5\xf1\x9b\x69\x7d\x09\x19\xbd\x6c\xa3\xfb\xdd\x14\x6d\xdd\x1e\x7d\x79\xb2\xe5\xd1\x57\xa5\xa3\xb4\x84\x83\x5f\x92\x29\x2b\x32\x07\x0f\xe4\xc1\x37\x78\xe1\xdf\x7a\xca\xab\xfb\xce\x52\xab\x72\x23\x91\x3c\xd7\x00\x67\xf7\x34\x23\xd1\x32\xe5\xe9\x22\xfa\x1b\xd8\x8f\xfd\xad\x5e\xa1\xf6\xab\x3a\x16\x13\x79\x1f\xd6\x4c\x5e\x47\x7c\xd8\x6e\x77\xb9\x75\xa0\xfd\x32\x4c\x33\xed\xa6\x61\xcb\x3d\x2f\x94\xbb\xf6\xef\x3d\x9e\xb4\xee\xc7\xfd\xc9\x56\xa3\x20\x01\x46\x41\x70\x1b\xa1\x06\xaf\x18\xda\x48\xa0\xe8\x4d\xe7\x29\x7f\xcf\x32\x72\x20\x62\x9a\xb4\x24\x6a\xb4\x5c\x89\x18\xdc\x36\xec\x0c\xac\x6f\x11\xbe\x41\xf7\xe3\x41\xb5\x35\xeb\x25\x46\x16\x79\xf3\xef\x68\xa7\xaf\x62\x5c\xdc\x8f\xf7\x9e\xcd\xba\x3b\x80\xea\x55\xd6\x37\xdb\xb2\x2a\xd0\xfb\x28\x47\xfa\x18\x8e\xd4\x3b\x7d\x30\x40\xbb\xb7\x33\xd4\xfe\xfc\xf9\x77\x83\x76\xb2\x41\x8f\x41\x77\xad\xd2\x5c\x3c\xfe\xef\x57\x93\x6e\xd2\x96\x19\xf6\x1a\x33\xf4\xf4\xd7\x37\x4d\x5f\xdb\xaa\x53\xb7\xb2\x53\xb7\xcf\x77\x6a\x83\x6e\xeb\x33\xa6\xd6\x66\x11\x4b\x5c\x07\x72\xd9\x75\x3d\xef\x1d\x9d\xbe\x3f\x3b\x3c\xba\x3e\x38\x3d\xbc\x3e\x3c\x82\xc7\xf3\x83\xab\x1f\xaf\x2f\x8f\x7e\xf8\x78\x74\x7a\x75\x39\x9a\xc5\x3c\x19\x72\x59\xed\xb6\xd9\xf5\xeb\x95\xf9\x9e\x1b\xc2\x4d\xc5\x25\xfc\xd3\x26\x41\xd7\xcf\xb9\x89\x7f\xb0\xf8\x85\xe7\x01\xe5\xcd\xbf\xc3\x5d\xed\x6d\xa2\xbe\xd2\xcd\xb6\xf7\xc8\x20\x09\x62\x0c\x78\xf0\x16\x51\x6c\xbd\xf2\x18\x5f\x77\x75\xcb\x6c\x75\x2b\xa2\x15\x2e\xc6\xe9\x04\x4d\x71\xbf\x35\xd8\xeb\xc4\x25\xde\x7b\xfb\x36\x9e\xe2\x76\x1b\x63\xbc\x1a\xbd\x19\xfe\xdb\x9f\xe4\x43\xd8\x91\xd1\x60\xf8\x66\xaf\x21\x79\x6f\xd8\x4f\x64\x2f\x57\x78\xa5\xed\x39\x06\x09\x8a\x29\xa6\xeb\xf5\x78\x92\xa8\x9b\x6e\x95\xa0\x98\x61\xe6\xa5\xf4\x77\x70\xfc\xa6\x53\x26\x49\x82\x06\x6f\x3a\x65\xa7\xc3\xc7\xd3\x49\xb7\x8b\xf4\xd5\xf8\x24\x0f\xfd\x70\xaa\x2d\x24\xf2\x78\x95\x6c\xcc\xe9\x79\x2a\xd2\x05\x29\x87\x74\xbd\xbe\x46\xe5\x9c\xad\x72\xd0\xfb\xc8\x48\x39\x64\xeb\xf5\xb5\x77\x8d\x1f\x55\xd0\x03\x02\x1d\xd7\x31\xd8\x7a\x85\xc2\xda\xb0\x0e\x30\x75\xd9\x1c\x5b\x44\xdb\x1e\x0a\xe7\xc2\x9b\x66\x06\xf3\x83\xda\xb4\x4f\x66\x5d\x5b\x61\xde\xbe\x88\x4b\x55\x8a\x8e\xc4\xd0\x8b\x3f\x9f\x0a\x41\x78\x81\xdb\x6d\xeb\x84\xe8\x96\x7c\x31\xeb\x05\x49\x1a\x4d\x28\x83\x44\x39\x1b\x26\xc5\xbb\x7b\xcf\x82\xfd\x6a\xc6\x34\x52\x03\xdd\x81\x81\xee\x42\xec\x21\x48\x18\xba\x09\xb0\xb7\xab\x4c\x70\x33\xf6\xa5\x0a\xf6\xc6\x12\x12\x4b\xdc\xc7\xe2\x3d\xc5\x5b\x0a\x06\x00\x36\x8e\x5a\x31\x69\x69\x0a\x70\x9a\x8a\x98\x29\x84\x30\x16\x89\x07\xec\x2e\x03\xfb\x5b\x39\xe0\x6d\x2e\x27\xe0\xeb\x7a\x1d\xfb\x93\x23\x01\xfb\x05\xb9\x3d\xfa\xb2\x8c\xfd\x39\x4c\x12\x7f\x0a\x37\xc8\x6f\xe4\x96\x3c\x63\x56\xeb\x16\xc7\xf8\x76\xdb\xc1\x18\xbc\x2c\x80\x83\x6c\x0f\xe7\xdb\x2f\x9c\xf3\x84\x22\x34\x02\xd5\x9b\x62\xcc\xc7\xc5\x04\xac\x68\x8f\x62\x8a\xe0\x16\x34\xa6\x8c\x1b\xcf\x8f\x7f\x50\x42\x67\x67\x41\x76\xb6\x09\x47\xb0\x5c\x89\x66\x0f\x4e\xd0\x67\x55\x21\xd8\x4a\x7a\x75\x14\xad\x5a\xff\xec\x35\x07\xb3\x78\x19\x53\x44\x8d\x49\xbd\xaa\x14\xd1\xb1\x49\x99\xe0\x42\xfb\x36\xac\x4c\xd3\xa8\xba\xa7\x8b\x1e\xcd\x86\xda\x18\xdb\x25\x27\xd5\x7c\xda\xf8\xb6\x47\x33\x1d\xf4\xde\xab\x62\x5c\x49\x40\x32\xdb\x04\x15\xe1\x2c\x28\x41\xdf\x16\x7f\x7d\xe1\x3a\xee\x08\x3d\x0d\xe3\x49\xcb\xec\xdd\x16\xac\xa9\xa8\xae\xa9\x78\x61\x4d\x05\xac\xe9\x99\x5c\xd0\x44\x12\x67\x30\x0c\x9a\x6c\x5b\x50\x21\xf3\x32\x3f\x2f\xf3\xf6\x3e\x74\xe6\xa0\x4e\xf0\x84\x86\xe5\xbf\xad\x08\x7f\xd4\x91\x70\xc9\x7a\xfd\xb4\xf1\x0e\xf9\x9d\x1d\x77\x8b\x60\x77\x39\xbf\xfa\xdc\x7d\x75\xbb\x40\xed\xdf\xef\xf5\x25\x2d\xc6\x1f\x9f\x04\x6e\x44\x8e\xb5\x9f\x3a\x79\xd5\xe0\x76\xdb\xc6\xd3\xdc\x1c\x78\x13\xad\x9c\x49\x69\x14\xb4\x9a\x8c\x82\x9c\xcd\x19\x6b\xf9\xc0\x9a\xb9\x9a\x4d\x26\xc2\x84\x9c\xd7\x2c\xf0\x01\xa8\x4b\x6a\x4f\x3b\xd0\x1d\x4f\x90\xd0\x9b\x96\xa0\x3e\x92\x38\x4e\x5f\xa2\x50\x2d\x88\xdf\x2d\x50\x03\x64\xe6\x8c\xa9\x0d\x81\xc5\xa6\x75\xfe\x2c\x61\xe5\xc5\x5d\xc4\x61\x59\x44\x71\xfb\xbf\xdb\x88\xe1\x71\x1f\xf5\x11\x78\x23\x76\x46\x50\xd6\x44\x0a\x81\x03\xd2\x15\xde\xe9\xa3\x1c\xf7\xe5\x3d\xba\x3f\x75\xb4\xe1\x54\xee\x2b\xd3\xc4\x0c\x93\xf1\x74\x82\x32\xfc\x10\x97\x68\xa6\x28\x63\x96\xa0\x39\xce\xd4\x98\xd1\x12\x67\xbd\xe0\x1e\xdb\xcf\xdf\x96\x2e\x5c\x9e\xde\xa2\x0b\x5c\x8e\xf3\x49\xeb\xcd\x0e\xc6\x0b\xb8\x0e\xe0\xc6\xdd\x19\xa0\x02\x17\x16\x61\x04\x24\x13\xd1\x2e\x6e\xbf\x6a\xa3\x02\xdf\x8f\x55\xd6\x49\xbc\x40\x05\xa4\x3f\xba\x94\x24\xd9\xa4\xe3\xe9\x04\x3f\x19\xba\x74\x66\xae\x1e\xa4\x2e\xd8\x79\xe5\x76\x5d\x6e\x36\x2b\xf0\x08\xdf\xdc\x5e\x82\x0a\x77\x77\xa5\xa8\xb0\x77\x1d\xed\xb6\x7f\xd7\x46\x85\xbe\xc3\x18\x7a\xce\x90\xad\xd3\x11\xbd\xb4\x54\x6e\x28\x7b\xa9\x24\x36\x8d\x0b\x2b\xe8\x13\xf8\x21\x29\xc9\x2d\x58\x70\x0e\x4b\x43\x52\x97\xc3\x74\x93\x6c\xd0\x79\x40\x2b\xa9\x2f\xd5\xd8\x90\x3e\xfc\x80\x1a\xb5\xcf\xfd\x06\xaf\x17\x57\x73\xc2\x49\x44\xcb\xa8\x60\x11\xd0\xe0\x91\x2c\x91\x45\xed\x2e\xd9\x62\x22\x67\x5b\xb5\xdb\xc4\x00\x9c\xca\x87\x00\xf2\xd8\x8f\x70\x95\x8e\x8b\x09\xa6\x1e\x9d\x10\x0e\xaa\x54\x9c\xf5\x3a\x9a\xbc\xb3\x13\x8c\x29\x2c\x67\x88\xac\x67\xee\x44\x5d\x4e\xd2\x5d\x6d\x98\x90\x86\x48\x5d\xdf\x34\x21\x14\xf3\x9e\x59\x21\x13\xdf\xc9\x8c\x9a\x99\x51\xa7\x98\x8e\x99\xda\xcc\xa9\xd9\xcc\x85\xde\xb5\x5d\x7c\x3b\x4e\xf5\x26\x4d\x91\xc3\x23\xda\xaf\xda\x3b\x58\x53\x58\x06\x31\x2e\x64\x91\x6e\x91\x20\xd8\x38\x1e\x10\x55\xf5\xe9\x5b\x52\x0d\x1e\xc4\x76\x3a\x48\x70\x90\x37\x49\xe4\xb5\xd3\x34\x5f\x5e\x91\x86\x4d\x34\x9e\x38\x4b\xd6\x3b\xf2\x58\xc6\x92\xfa\x00\x1d\x8d\xd8\xc7\xd1\xb7\x61\x11\x72\xa5\x11\x04\xa2\x9d\x38\x3c\xc4\xc6\x6a\x6b\x60\x3a\xd0\x44\xdd\x67\xcc\xdd\x67\x25\xee\xef\x97\x6f\x99\xa9\xbd\x34\xb5\xaf\xe4\xa1\x1b\x4f\x70\xbb\xdb\x50\x0f\x1b\x97\x93\xa4\x25\x0c\x62\xae\x4c\xd4\xd3\x2e\x6e\x6f\xc9\x9e\xe8\x50\x88\x71\x9a\xd8\xa8\xd5\x3e\x4f\x71\xd4\x6e\x0f\xdb\xa3\x76\x57\x68\x56\x4f\xa7\x5d\x39\x8b\x10\x55\x68\xdb\x5c\x7a\x91\xb9\x0c\x31\xd3\x69\x27\x88\xe3\xa7\x0d\x7a\xe6\xba\x1e\x17\x13\x93\x1d\xb7\x13\xc4\xf0\x5d\x4c\xc7\xfd\x49\x82\x52\x6c\xa6\x03\x95\x12\x3c\xae\x0c\xb7\x58\xe2\xbb\x66\x27\x8e\x56\xb8\x2d\xf8\x8a\xb4\x87\x71\xfa\xfd\x5e\xa7\xd3\x1e\x4f\x24\xe5\xc3\x34\xfd\x92\xee\xee\xc9\xdd\x55\x42\xec\x8b\x31\xb3\xe9\x7d\x24\xbf\x4c\xd6\xeb\x98\x8f\xd9\x04\x8f\x27\x49\x82\x56\xe0\xac\x7e\x24\x9b\x1f\x4c\x92\x61\xbb\x9d\xa0\x72\x24\x3f\x9b\xf9\x1d\x42\xde\xd5\x96\x23\x6d\xf9\xe6\x4d\x01\xe6\x34\x96\x64\xef\xa6\x89\x09\xa7\xb6\x33\x90\x3b\xc7\xb1\xc6\xfe\x4f\x3b\xd9\x07\x44\x9f\x01\xf3\x98\x18\x6a\xb1\x8f\x58\x62\x42\xc0\x7a\xd9\x47\x6d\xed\xaf\x5c\x9e\x3f\xb3\x63\x6c\xa1\xb4\x3b\x40\xce\x16\x38\xa8\x2d\x4d\x9c\x3b\x9a\x70\x4d\xe5\x46\x52\x27\x94\x04\x27\x94\xc0\x09\x25\x89\xf6\xf2\x4e\x5a\x2f\x13\xe6\x04\xcb\xa3\x34\x8c\x89\x43\x67\x62\x92\xa0\xdc\x7b\xcd\xf5\xa8\xa6\x96\x2e\x69\x4d\xbf\x1f\x74\x3a\xed\x57\x6d\xec\xf5\x60\xba\x3b\x48\xaa\x13\x22\xd3\x50\x8e\x73\x97\x92\x5b\x97\x32\x92\x86\xde\xf1\x82\x48\xcf\x70\x7f\x7f\x66\xaf\x75\xb8\x95\xbe\xc4\x1c\x11\x9f\x00\x9e\x25\x49\x62\x36\xe8\xac\xdb\x4d\xf6\x4d\x61\x08\x90\x3c\xc7\xfd\xfd\xb9\x3b\xfe\x73\xb0\x9c\x9e\x4f\x2c\xc8\xef\x74\x32\x1d\x99\x67\x3c\x9f\x24\xad\x46\xef\x14\x44\xc1\x94\xb8\x09\x78\x13\x75\xab\xae\xd7\x06\x5b\x29\x30\x57\x91\xc5\xf8\x78\x20\xc1\x0b\x1f\xef\x81\x33\xfb\x6a\xbe\x12\xa7\x32\xdf\x0a\xa7\x32\x5f\x8e\xd3\xf1\x9e\x75\x55\x9a\x5b\xa2\x64\x17\xdc\x5f\x33\xe0\x2d\x16\x3b\x18\x97\xe6\x4b\xb9\x0b\x84\x08\xdd\xc1\x78\x65\x1d\x22\xec\xda\x7b\x0b\xd2\x47\x74\x77\x35\x84\x52\xa3\x72\xb7\x18\xf6\x37\x49\xb2\x89\xb3\xc4\xb8\xab\x1f\xf7\xad\xed\xf8\xb2\xd3\x59\x7a\x53\x12\x53\xf9\xae\xd1\x87\x4e\x07\x78\x48\xbf\x93\x0b\x6b\x13\xf5\x79\xdc\xfd\x37\xb9\xbc\xb9\x46\x3f\xb6\x10\x4c\xd8\x21\x03\x40\xc7\x02\xb9\xa8\x1c\x22\xed\xd0\xf5\x3a\x88\x62\xa3\x2f\x3a\x40\x2b\x21\x4e\x0d\x75\xfe\x48\xda\x26\x42\xab\xd0\x24\x2e\x95\xc0\x66\x80\x94\xbf\xc0\x83\x98\x27\x2d\x8b\xd5\x1b\x96\x8b\xdd\x49\x2b\xdc\xdf\x5f\x39\x4e\xcc\xca\x40\xb2\x1c\x17\xe3\xd5\x04\x4d\x71\xae\x91\xc1\x99\xdc\x99\x3e\xda\x85\x32\x7c\x83\xe6\x3a\x6a\xcf\x74\x07\xe3\xeb\x4e\x67\x26\xff\xec\x25\xb0\xc4\xfd\xfd\xe5\xdb\xa9\xa9\x7b\x29\xeb\x9e\xe3\x1d\x25\x1f\x5b\xe0\xe9\x78\x39\x41\xf7\x10\xb8\x78\x9c\x76\xbb\x93\x56\x86\x31\xbe\xe9\x74\xe2\x0c\xa2\x7b\xbf\x78\x1e\x3b\x9d\xd9\x78\x39\x19\x65\xe3\xc5\x04\xdf\x77\x3a\x0d\x24\xc6\x7d\x32\x54\x5f\x37\xe5\x78\xe5\x21\x94\xb9\x45\x28\x81\xfb\x5a\x0e\x33\x44\xcb\xc3\xc7\x22\x5d\xd0\xe9\x70\x6e\xef\x92\x72\x13\x2f\x51\x8e\x80\xa0\x97\xc0\xd1\x28\xf4\xb4\xfb\xbd\xd7\xbd\x37\xed\x97\x7b\x28\xc1\xf4\x79\xef\x94\xf1\x05\xac\x14\xc7\x4f\x85\x79\xbe\x54\x98\xc8\x30\x47\x36\xe9\x3c\x15\xf3\x61\xa9\xe5\x04\xf2\xc5\xe4\x99\x85\x90\x79\x91\x2e\x1b\xf1\x25\x10\xaa\xb4\x48\xcc\xe2\x76\x1b\xf1\x8a\x80\x2b\x41\x9e\xcf\x27\xcb\x45\x32\x2b\xc5\x30\xd7\xd2\x1c\x54\x06\x98\x03\x93\xf7\x88\xdc\x21\x65\xc3\x0e\x29\xd5\x0e\x11\x7a\xd3\x27\xad\x34\x9e\xa2\x1c\xb1\x71\x3e\x51\x5b\x72\x86\xb9\x13\xee\xe4\x93\xd6\x6c\x44\xe2\x29\x9a\x41\xdb\xc3\x42\x31\xe8\x29\x9a\x26\x9b\x4d\x2c\x71\x96\x50\x26\x2b\x46\xca\x1d\x2d\x22\x9a\x48\x57\x1e\x28\x75\xec\x59\xed\xc9\xe3\x02\x9f\x7b\x02\xf5\x0b\x5f\xf2\xcb\xaf\x7f\x2d\x43\x3f\x0f\x0d\x96\xeb\x81\xb3\xa9\x36\x2f\xef\x97\xf2\xaf\x2a\x38\x6e\xb4\x51\xff\x9f\x4b\x8d\x73\x76\x7b\x70\xc3\xb8\xc0\x0f\x88\xf4\x4e\xb4\xa9\x3f\xe0\xd1\x10\x05\x81\xf4\xae\x78\x5a\x94\x54\x36\xab\x4c\x45\xfd\x14\x45\x4f\x92\x9e\x52\x28\x3b\x3f\xb8\x38\xf8\x78\x79\x7d\xf9\xcb\xc7\x77\x67\x1f\x30\xe9\x55\xdf\x2f\xaf\x0e\xae\x8e\xdc\xab\x69\xcc\x55\x87\x1b\x85\xd8\x6c\x8b\xd3\x30\xbb\xe7\xa0\x5f\x6a\x21\xb5\xa3\xa0\x96\x45\xdb\x71\xdb\x55\x0f\xe3\x24\x99\x66\x2e\x2e\x48\x59\xa6\xb7\x04\xdc\x83\x34\xe4\x31\x95\x82\x3a\x23\x78\x06\xbe\xe2\xe9\x94\x8c\xb6\xa4\x87\xbb\x44\x39\xba\xe4\xea\xbf\xc1\x9b\x59\xc5\xcb\x95\xaa\xd3\x7e\x4d\x42\x17\x88\xce\xad\x0f\x26\xca\x8d\x5a\xba\x85\xc3\x50\x7e\xbb\x54\x6c\x55\xa1\xf4\x41\x9e\x9d\x94\x7a\x16\x11\x07\xcc\x00\x02\xca\x8e\xf9\x24\xd9\x84\xe2\x48\x83\x80\x91\x4e\x87\x78\x71\x5b\x79\xa7\xc3\x9d\xc7\x42\x32\xe6\xbb\x03\xb8\x35\x9b\x6e\xed\x4e\xa7\x34\xb2\xb1\xb6\x47\x6d\xb4\x93\x4d\x5c\x58\x96\x9d\xc0\x85\x4f\x8a\xa0\x71\x6a\xca\xf4\x11\x97\x08\x89\x98\xb8\x18\x9d\x92\x44\xf0\xc2\x8e\x4e\x03\xf4\x59\x0e\x8f\x58\xb4\x60\x2c\xa0\x5f\x2e\x08\x89\x75\x1b\x2b\x3f\x61\x10\xa3\x99\xe8\xb3\xa1\xff\xa7\x90\x03\x2a\x11\x89\x2a\xe7\x17\x48\x54\x59\xc3\xb8\x98\x78\xdc\xf6\x99\x09\x00\x2c\x0f\x9c\x8f\xd7\xff\xb3\xa2\x46\xe9\xa0\xaa\x3c\xf0\xd9\x4d\x15\xbe\xc3\x00\xdf\x69\x41\xdb\xb1\xb7\xd9\xa3\xff\xd3\xee\xd2\x6e\x7b\x18\xb5\xbb\xcc\x63\xe0\xa5\x50\x4a\x67\x97\x64\x8d\x1b\x46\xe6\xd6\xb0\xee\xe5\x6a\xbd\x76\x7e\x96\xd8\x2c\x52\xa8\xef\x7a\x5d\x9b\xe6\x6a\xc6\x53\xf8\xee\x1a\x99\xbf\xe4\x73\xb0\xd3\x51\x11\x20\x61\x87\x26\xe0\xa7\x68\xdf\x15\x5f\x7a\xf7\x91\x24\x09\xd2\x3c\x1f\x3e\x6d\x90\x32\x37\xcc\xe4\xa3\x32\xa7\x93\x8f\x9b\xd6\x2a\x2e\x7a\x69\x9e\x1b\xb7\x5c\x10\x91\x04\x5c\x47\xca\x2d\x23\x37\x11\x9a\xc6\x22\x41\x24\xb1\xfb\x15\xce\x86\x77\x52\xd6\x6b\x15\xa0\xa4\xd0\x66\x7a\x19\x78\x57\x95\x3d\x4b\x5c\x4d\x22\xa1\x33\xbf\x90\x93\x10\x70\x15\x4e\x49\x31\xbe\x17\x31\x4b\x3a\x9d\x45\x9c\x26\x09\x38\x39\x56\x63\x06\x46\x80\x5e\xd7\x42\xdb\x4d\x66\xe6\x70\x02\x56\x1e\x7a\x36\xce\x71\x1f\xcd\x2c\xa5\xb7\x9f\xbf\x9d\x01\xa7\x8c\xa9\xa8\x51\xe9\x38\x9f\x80\x3f\xa6\xa6\x8a\xb4\xe7\x62\xd9\x2d\x39\xc3\x63\xfe\x4c\x56\x8b\xcf\x8e\x0a\xed\xee\x76\xe3\x4b\xdd\xed\x61\xaf\xba\x50\x73\xb9\xee\xbd\xed\xa4\xd4\x23\x87\xe0\xa5\x54\xc9\x62\xdb\xd7\xd7\xea\xca\xb8\xde\xdd\xfb\x6e\xf0\xe7\x3f\x7d\xd7\xef\xf7\x07\xaf\xdf\xfc\xdb\x9f\xf7\xfa\xbb\xaf\x5f\xef\xed\x3d\xbc\x6e\xb7\x2a\xb7\xca\xa3\x96\x98\xb6\xaf\xcd\x6d\x64\xca\xee\xbd\xde\xfb\xf3\x9f\xf7\xfe\xf4\xba\xbf\xd7\x7f\xbd\xbb\xf7\xfa\xf5\x1e\x14\x0e\xaf\xa8\x5b\x2d\xac\x6c\x5f\x5f\xff\xf5\xdc\x15\x7d\xfd\xe7\xbd\x3f\xff\x69\xef\xcd\x9f\xde\xbc\xd9\x7d\xbd\xa7\x0b\x36\xdd\x78\x37\x50\xfc\x7a\x7b\xec\x5e\xc4\xab\x01\xe7\x83\x28\x9b\x14\x62\x57\xa9\xd7\xc4\x45\x2d\x96\x54\x2b\xb3\xc9\x70\xbf\xcc\x38\x5b\x78\xc1\x22\x04\x0b\xc4\x61\xb4\xd4\xb7\x98\x8d\x6d\x42\xcb\x83\xa9\xa0\xf7\xe0\xe6\x05\x12\x56\x3c\xd7\xd6\xa3\xed\xd5\x32\x4b\x05\x69\x5b\x17\xae\x2c\xbf\xaf\x85\xea\x37\x10\x18\xec\x7c\x5c\xa5\xde\xcd\xbd\x63\xdb\x7e\x9f\xae\x4a\x92\xbd\x7b\x84\x3e\xd0\xe2\xd6\xcf\x34\xa8\x66\xd2\x1e\x0d\x9f\xcd\x63\x2a\xba\x50\xac\xfd\x86\xbc\xd7\xf7\x14\xfc\x20\xfe\xd5\x93\x13\x3c\xa9\xc0\xc5\xe3\xc7\x09\xe6\xeb\x35\x51\xcc\x70\x13\xdd\x47\x90\x42\x18\x2e\xb9\xc2\xd3\x0c\x97\x3c\x4b\x45\xaa\x18\xad\xf2\x09\xe2\x10\xfb\x13\x93\x7d\x64\x19\xc9\x5d\xed\x37\x13\xf3\x28\xef\xdc\x05\x2d\x49\xb0\x12\x60\x17\xeb\xa7\x8c\x6f\x5d\x01\x6e\x90\x2c\x17\xae\x4b\x69\x71\x9d\x4a\xbc\xc5\xaf\x66\x49\xef\x99\x30\x16\x88\xfe\x87\x92\xfc\xb6\x22\xc5\x94\xe0\xdd\x01\xa2\x41\xc8\x14\xd3\x9b\xc2\x58\xee\xf5\x38\x91\xa8\x81\xa4\xcb\x64\x0d\xb1\xd7\x3f\xea\xc2\xfa\x3c\xbf\x7c\x3b\xec\x1b\xd6\x6f\x07\xf6\xeb\x73\x79\xd6\xeb\xbe\x62\x27\xe9\xde\x27\x7f\xc7\x8a\xcb\xda\xdb\x5a\xc8\xa3\x98\x52\x76\x2b\x77\x3a\xf1\x0e\x7b\x76\x04\xeb\x75\xd3\xf7\x5a\x2b\x89\x51\x6c\x94\xab\xc5\x7b\x8a\x3c\xb3\xeb\xcd\x03\x94\xa4\xba\x92\xdc\x7b\xd1\x5a\x64\x7e\x92\xc1\x96\x4a\xc3\xb8\xf7\x56\xdc\xcf\x37\x2e\x77\x07\x13\xed\xc5\x31\xa4\x92\xcb\xfd\x6e\x77\x65\x88\x9f\xa0\xc8\x4a\xf1\xea\xf3\x1e\x2d\xb5\x8b\x9e\x4c\x3b\x23\xae\x6f\xa2\x5c\x15\xdc\x84\xbb\x88\x98\x88\x19\x97\x3a\xc5\x04\x9c\x33\xbb\x89\x9b\x73\xe0\xf1\x5b\x2c\x98\x4f\x1d\xe0\x19\xd5\xb6\xdd\xce\x00\xdd\x07\xa8\x47\xaa\x72\x46\xbb\x91\xca\xd1\x4e\x24\x35\xe6\x4a\xa9\x66\xe4\x2d\xa3\x69\xad\x9e\x12\xd4\x35\x61\x93\xb5\xd6\x52\x7d\xaa\x7b\xc2\x36\x78\x48\x33\xc5\xbf\x20\x28\x4d\x64\xa5\xf7\x71\x5b\xcd\x46\x04\x9d\x6e\x27\x7e\x68\xb0\xa6\xe3\xa3\x7a\xa4\x81\x4a\xe2\x1d\xe7\x8d\xe1\xd0\xd6\x22\x5e\x8b\x9e\x98\x93\xad\xe1\xbc\xfc\x96\x20\xa3\xfe\xbe\x41\x42\x0d\x76\x8b\xae\x92\x5f\x4c\x4d\x0a\xf8\xda\x44\xa2\xa7\xa3\x66\x7d\x43\x39\x9d\xd3\x96\x84\xe5\xa8\x89\x1d\x39\x53\x41\x90\xb4\xdc\x51\x89\x1c\xb5\xbe\xad\x9a\x61\x7d\x4d\x85\x7f\x89\x37\x7e\x2d\x0d\x96\x37\x96\xec\xa0\xbc\xb8\xfc\x04\xef\xae\xea\xfb\xf0\x58\xfd\xfd\x4c\xf3\x5c\xf9\x90\x88\x8d\x77\x74\xff\xf3\x21\xcd\xc2\xaf\x72\x24\xa6\xcf\xb5\xc1\xd8\xa6\xd6\xeb\x78\x16\x8c\x21\x38\x05\x55\x48\x2c\xf1\x63\xb7\x8d\xa2\x87\xb4\x34\x7b\xb7\x6d\x2e\x69\x13\x36\x47\x5d\x2c\x4e\x5e\xe7\xa7\xc5\xde\x5b\x6f\xc9\x49\x95\x88\xf6\x07\x07\x77\x55\x52\xbb\xcc\xfb\xd5\xcb\x7c\x10\x4c\x49\x0a\xa9\x1e\xb0\xd4\x8b\x01\x93\x42\x32\xca\x03\x6b\x7c\x52\x5b\xe2\x67\xa7\x9f\xe8\x6a\x04\x7f\xac\x4d\x2c\x4c\x87\x15\x4d\xfb\xb5\xb8\x79\x93\xd7\x80\x1c\xba\x3f\x0d\x20\xb0\xf6\x62\xf2\x98\x29\xf3\x20\xba\x89\xf2\x18\x87\x1f\x20\x9e\x8e\xd0\xdf\x9a\xb8\xc2\x15\x24\x87\xd8\xdd\x51\x86\x21\x0e\x1d\x1f\xc5\x0f\x97\x17\xcb\xb9\x35\x8a\xd5\x3a\x70\x9f\xcb\x2a\xab\x69\x0a\x23\xd6\x58\x47\x9d\x4a\x52\xde\x44\x11\x7c\xf6\x04\xa5\x35\x3a\xb0\xf0\xe8\x40\xfe\xfd\xde\x88\xef\xee\x49\x3a\x90\xe2\xbd\x7d\xfa\x96\x9b\x68\x63\xbb\x7b\x3e\x1d\x48\x75\x9c\x2c\x3b\xfd\xd0\x4b\xb0\xe0\x32\x80\xcb\xbf\x8c\x8c\xdc\xa6\x86\xfa\x75\x07\x09\x68\xc0\x14\x0a\xaa\xb0\x3c\x67\x0f\x17\x7a\x0b\x95\x5b\x82\x2d\xa9\x36\x5b\xdb\x81\x54\x53\x50\x4a\x52\xdb\xb5\xa3\x7a\x52\xb5\x03\x71\x78\x53\x00\xc4\x17\x10\xc4\x52\xae\xcc\x76\x1f\x86\xde\xed\x13\x9b\xd3\x1e\xb5\xbb\xc1\xe9\xef\xb6\x93\xb6\xac\x26\x67\x15\x41\xdc\x33\x00\xc3\x06\x47\xf1\xd5\x17\x9d\xda\x7d\x4c\x4c\x31\xe2\xca\xb4\x4d\x24\x07\x05\x4c\x7a\x6d\x15\x97\x81\x05\xfa\x79\x5b\x9d\xdb\x92\x4e\x27\xa0\xa0\xaf\xe5\x49\xf1\xf1\xf1\x4d\x23\x7b\xed\xba\xa5\x74\xf9\x64\x4b\x3f\x93\xf4\x2e\xf0\x05\x7c\x16\x13\xa5\x1d\xaf\xfb\xed\x62\x46\x82\x68\xe7\x69\xe3\x91\x24\x85\x8a\x7d\x2f\x77\x49\x25\xde\xa8\x47\xdf\x50\xc0\x5f\x50\x89\xa9\x41\xa1\x56\xe6\x11\x6c\xc7\x51\x8e\xa9\x51\xa1\x47\x53\x4c\xd5\x2c\x49\x1c\xe6\x12\x1c\xdf\xd3\xa4\xd3\xd1\xca\xfa\x33\x0c\xe6\x91\x12\x79\xcd\xf0\x97\x78\x56\xf1\x20\xaf\xd8\x31\x4f\xb7\x44\x44\x0b\x22\x52\x89\xb9\x3b\xb4\xe4\x20\x06\xcb\x0a\x3a\x8b\x35\x73\x8c\x96\xc7\x9c\x7d\x25\x45\x2c\x49\x77\x5e\xe1\x90\xc5\x6d\x53\x43\xdb\xb2\xa1\x42\x3d\x55\x30\x60\xb3\x3e\xa6\x36\x30\x67\x06\x8c\x05\xdf\x20\x30\x4f\x3c\x45\xb3\x04\x39\xfb\x9a\x4b\x70\x9e\x4f\x51\x96\xa0\x0c\xf0\x86\x39\x7e\x9a\xd1\x22\x73\xc6\xb4\x4e\x36\x83\x28\x1e\x4f\x5a\xaf\x3d\x61\x32\x10\x88\xd5\x29\x27\x9e\xf9\xad\x0a\x10\xb0\x49\x3c\x3d\x58\x86\xfb\xfb\x86\x79\xf2\x3d\x53\xe1\xd1\x67\x71\xa1\x67\x94\x8c\x99\xc4\x65\x14\x63\x42\xc2\x37\x86\xa8\x53\x99\xdb\x20\x39\xa7\x72\x19\x3d\x34\x4f\x25\xba\x75\xf4\xfc\x87\xa9\x4f\x4d\x6b\xa0\x57\x37\xb1\x85\x25\x48\x32\xba\x02\x64\xcc\x76\x07\x56\xde\x65\x77\x99\x50\x5e\xff\x55\x47\x85\x2e\x0a\xac\x7c\xbf\x64\xf7\x5b\x4b\xe6\x6c\x9a\xe6\xa7\x6a\x2c\x1e\xdc\x92\xa3\x33\xc2\x72\x4f\xf5\x9d\x8c\x5d\x30\x8d\x89\x37\x64\x6f\xb8\xa5\x4a\xf6\xc8\x01\xcf\x5b\xe8\x66\x63\xaf\xb6\x4e\x27\x9e\xe3\x2f\xf1\x1c\xe5\x49\x82\xcc\x06\x98\x27\x68\x2e\x41\x56\xa0\x5d\x1a\xee\xe5\x54\x08\x4e\x6f\x56\x82\x34\xd7\x5b\xdd\xce\x24\x91\x74\x6e\x75\x3b\xbb\x4a\xda\xc9\xe8\xf9\x9d\x4c\xe4\x4e\x1e\x06\xa9\x32\xc9\x75\xf1\xc0\xc7\xb9\xe1\xc2\xb6\xb1\x65\x41\xb4\x0d\xe1\xcd\xac\xec\xe0\xa3\xde\x06\xa3\x6d\x1f\x24\x1c\x5f\xe5\x39\x1c\x83\xbb\x67\xb9\x26\x26\xe6\xd5\x35\x6c\xa2\xf3\x06\x4a\x5b\x7d\xc1\xbe\x2e\xb1\xcf\x06\xf0\x68\x22\x8b\x36\x81\x78\x40\x78\xb9\x4f\x95\x92\x5d\x85\x2d\x50\x98\x10\xa3\x4b\xce\xa6\xa4\x54\x3a\x46\x71\x91\x3c\x87\xf5\xdf\x82\x9b\x07\x3f\x40\x76\x23\xad\xe2\x28\x0a\x03\x07\x13\x85\xa3\x28\xeb\xee\x06\x87\x04\x91\x37\x36\x50\x84\x04\xa4\x0c\xea\xd9\xaa\xbe\xd4\x7a\xbe\x65\x7f\x4a\x13\x45\x86\x34\xdd\xd4\x5c\xc5\x62\x3a\x66\x1c\xf0\x51\x45\x38\x24\xb5\x02\x5e\x7e\xbe\x2a\xde\x91\x19\xe3\x04\xa6\xe2\x47\xc6\xee\xe2\x97\x8a\x54\x9b\x30\x96\x94\xcf\x14\x31\x53\xdd\x5c\xf7\xdf\xdd\x7f\x12\x0e\xe0\x60\x26\x08\xf7\xfa\x8f\xc8\x4b\x85\x6e\xc8\x94\x2d\x88\xd9\x6c\xa6\x84\x5c\xa7\xf0\x4b\xd3\x72\x19\xf5\x11\xbb\x01\x62\x91\xb4\x6c\x98\xca\x52\xa4\xe5\xfc\xc2\xe7\x43\xa9\xa0\x51\x44\x52\xa1\xf2\x07\xb8\x55\xf2\x61\x6c\xf7\xf7\x04\x17\x36\x9c\x9e\x8d\x1c\xad\xb6\x5a\x6b\x27\x6e\xeb\xc7\x36\x55\x1b\x2b\xe9\x74\xe8\x7a\x1d\x73\x2c\x8c\x34\x5f\x43\x50\xf9\x4d\xab\x7a\x9e\xd7\x11\x21\xb8\xe6\x2b\xc7\x08\x15\xde\x31\xf2\x22\x9a\x58\x68\xc1\x3a\x1d\x05\x0a\x53\xc4\x12\x94\xc2\xbe\x07\xc9\x3e\xc4\x21\x99\x92\x8c\x34\x44\x7a\xd3\xda\x7c\xc6\xb8\x95\x98\xb1\x54\x87\xe6\x54\xfe\xd3\x05\x31\x64\x85\x7c\x5e\xaf\xab\x63\xee\x74\x76\x4c\x78\xb2\x2a\xe8\x5c\x6a\x91\x54\xa7\xb3\xd3\x10\xf0\x63\x07\x5b\xa5\x6a\xa5\x7e\xe0\xf7\x2f\x90\xab\x91\x04\x04\x3f\x95\xea\x79\xd2\xe9\x78\x6c\x76\x57\x95\xa9\x64\x13\x7b\x87\x1d\x11\xfd\x90\xd4\xb1\x53\xd9\x25\x10\xd6\x80\x38\x8e\xdd\x3a\x95\x50\x25\xdb\x51\x50\x45\xf1\x79\xb7\x69\x48\x46\xa4\x77\x6d\x1c\xbd\x03\x37\xaa\xb2\xb2\x0a\xbc\x02\xd5\x55\x3f\xd7\x75\xed\x2c\xb7\x02\x9a\x06\x91\x5d\x33\xa4\xd4\x4e\x1f\xb5\x1f\x68\x9e\xeb\xbd\x0c\xd5\xb4\x91\xdf\x90\x4f\x8b\x7a\x37\x8c\x4b\xec\xdd\xb8\x1e\x28\x13\xa0\xc6\x4f\x31\x49\x12\x74\x14\x0b\x65\x26\x04\xd0\x04\x35\x80\xc1\x44\x0f\x2b\x3c\xed\x8d\x27\x94\x9a\xa8\xde\x72\x6a\x02\x62\x67\xdb\xf1\x6c\xe8\x7d\xf3\x90\x52\xdb\xba\x0b\x34\x5f\xfd\x12\x2b\xc3\x66\x8e\x8f\x62\x8a\x79\xa2\xd0\x1c\xda\x30\x26\xbe\x1d\x66\x92\x0a\x33\x7b\xcc\x26\x1a\x42\x05\x10\xb2\x99\x89\x54\x6f\x89\xc4\xcf\xc0\x67\xa1\x83\x2e\xa9\x7b\xad\x36\x43\xb5\x4d\x5c\x61\xb3\x57\x13\x14\x84\xab\xf6\xdf\x83\x76\x02\xe8\x55\x22\xa6\xf3\xca\x46\x6f\x20\x55\x95\x37\x16\x6b\x3f\xae\x98\xad\x81\xbd\x4d\x70\xe3\x2b\x0e\x48\x90\xd6\xa8\x95\xe8\x5f\xb9\xb5\x0b\xb6\x81\xa1\x48\x6c\x58\xaa\x58\x60\x92\x74\x3a\x4d\x1a\xe0\x4d\x01\x4c\x60\xd2\x47\xf5\x4b\x1c\xd7\x52\x9e\xbb\xaf\x3c\xb0\xa0\x28\x07\xff\xbc\x6b\x0e\xd2\x90\x28\xe3\x95\x30\xaf\x91\xf9\xa1\xb8\x8f\xf8\x96\x38\xc3\x50\xcd\xb6\x38\xba\x41\xfc\x6b\xc8\x39\xf2\x9e\x95\x26\x85\x5b\xcb\x38\xd9\x80\x0b\xa4\x1a\x07\xeb\xda\xc0\x26\x13\xc3\xd7\x1f\xfa\xf3\x31\x7c\xfd\x9c\xfa\x12\xf0\x1b\x44\xf5\x5c\xcf\xf6\xc1\x2c\x80\x17\x0f\xb8\x49\xa7\xe6\xae\x6a\xe4\x41\x3c\x94\x57\xc4\x5e\xf8\x09\x6d\x90\x68\xa8\x4b\x79\x20\x3c\x35\x17\xc8\xc7\x12\xd5\xf1\xc4\x60\xbc\x14\x85\xd8\x6e\x1f\xd9\x7b\x11\xa7\xa8\xdc\x58\x4a\x95\x87\x51\xd9\x12\x80\x2d\x48\x84\xd1\x20\x1b\x30\x4b\x33\x83\x9d\x8e\xa8\x9c\x44\x09\x65\x9f\x3b\x9c\x3e\xa2\xdb\x04\x87\x41\xa5\x0a\x89\x4d\x7c\x97\xa0\x8b\x17\xa7\x47\xf3\x19\xcc\xe4\xa4\xdf\x32\x39\x4f\x1b\x94\xba\x89\x4a\xff\x9e\xc9\xa8\xe3\xf4\xa1\xc1\x84\xaa\x55\xa2\x6b\x64\x7c\x33\xe9\x74\xe2\x55\x2c\x9c\x70\x50\xdd\xdd\x48\x84\xb6\x4c\xe3\x9b\x89\xb1\xeb\xf6\xb0\x25\x23\x03\xb6\xc1\x83\x7a\x19\xb1\x28\xe1\x88\xe2\xe0\x1d\x3a\x3a\xe4\xbd\x85\xbe\x38\xe4\xe7\x85\x77\x55\xd0\x4e\xe7\x08\x58\x29\x9e\x68\xb9\x3e\xf5\xd4\xce\xfb\xd5\x0b\xf3\xae\x15\x17\xcc\xac\xb3\xfa\xac\xdb\x39\x37\xbb\x8e\x22\xe6\x50\x5a\x8e\x99\x07\x7f\x2f\x6d\x72\xcc\x13\xc4\x36\xdb\x56\xa2\x65\x2c\x7a\x6b\xc4\x56\xd1\xb0\x30\xa2\xc2\xc4\x0a\xee\x59\xae\x30\xa5\x4a\x42\x88\x33\xa9\x69\xa1\xc5\xad\xb1\x91\xcf\x22\x98\xd3\x76\xa8\x9a\x65\x5a\x0e\x74\xcf\x36\xa8\x68\xa2\xe0\x1a\x36\x8b\x42\x94\x79\x88\xba\x12\x08\x30\xc7\xcd\x88\x9f\x80\x73\x95\x79\x51\x20\x8b\xb1\x18\xf7\x27\x13\x49\x99\x5a\xb1\xad\x9b\xdd\x40\x08\xec\x92\x55\x0f\x95\xa7\x1a\xa4\xe2\xe0\x36\xe2\x25\x1e\xd2\x61\x0b\x27\xb5\xcb\xcc\x23\x50\x4c\x6d\x03\xdf\x8d\x8a\x35\x43\xb0\x4a\xcc\xaf\xae\x69\x66\x82\xc4\xd1\x64\x54\x8c\xa9\x0a\x40\x3c\x54\x4f\xa8\xd8\xe8\xfd\x07\xc3\x7e\xbf\x8d\xaf\x0e\x72\x14\x60\x45\x8a\x6d\xa2\xfb\x0d\xfa\xf5\xf9\x20\xa3\x0d\x62\xf7\xdf\xea\x7a\x03\x0e\x60\x3c\x47\xe7\x6b\x06\xf7\x87\xf4\xa6\x11\x2e\xb4\xdb\x26\xeb\x3c\xae\xb4\x8d\x1a\x6e\xe3\x76\x7b\x47\x0f\xb1\x8b\xdb\xbd\x76\x82\x44\x17\x2b\x12\x06\xed\xf4\xe5\xcd\x7c\x1f\xb7\xff\x00\x3e\x1a\xfe\x00\x6a\x32\xc9\xb7\x50\xff\x06\x2e\x7d\x53\x0f\x22\x3e\x26\x1a\x58\x13\x8f\xcb\xa0\x9b\x17\x15\xf5\x10\xcf\xa0\x16\x31\x6c\x29\x97\x06\x1c\xd1\x63\xcb\x78\x33\x16\xb7\x2f\x45\xca\x85\x27\x5d\x6b\x1b\x54\x72\x85\xb6\x15\xd1\x17\x9b\x32\xb1\x92\xf9\x1b\xc4\xc2\x6a\xf4\xd4\x1f\x6c\x8a\xc3\xde\x7f\x6f\x35\xe5\x46\xdc\xf2\xf9\x86\x61\x9e\xa6\xf1\x80\xb0\x01\xe2\xe8\xc5\x04\xf9\x2d\x8c\x53\x2d\x5a\x51\x1c\x54\xb3\x45\xc3\xce\x6b\x81\xb3\x72\xa9\x9e\x78\x02\x83\xf4\x39\x06\x11\x51\x21\x82\x83\x9a\xc0\x27\x6a\x44\x67\x91\x22\x9a\x23\x13\x9f\x78\xcb\x8c\x18\x93\x05\xa5\xa7\x56\x19\x0e\xe8\x33\x57\x1b\xd0\x5d\x4d\x8d\x6c\xdc\x76\xb5\x6c\x9e\xe1\x71\x38\x77\x13\x0f\x07\x01\x5b\x88\xed\x59\xbb\x5d\x09\x01\x76\x3c\x8b\x04\x25\x08\xb0\x00\x0a\xbc\xef\x18\x09\xa6\xff\x1c\x5b\x06\x80\x84\xbb\x86\x3f\x1d\x87\x7b\xa8\x3a\xb0\xea\x06\xf2\x63\x00\x7a\xae\x43\x82\xad\x8e\x83\xa1\x9a\x8d\x43\x87\xcf\x4e\x80\x59\xbe\x14\x09\xdd\xa3\xb2\xb9\x47\xe7\x92\xa4\x20\x99\xec\x8b\x8d\xb2\x5f\x15\x0f\xff\x0a\x87\xed\x63\x83\x33\x23\xe1\x14\x79\x02\x5a\x5d\x73\x36\x1f\x52\x2b\x40\xe6\x9e\x59\x30\x2e\x36\xad\xba\x6e\xf7\x47\x68\xe5\xe4\xef\xc6\x4c\xa3\x8a\x0e\xdb\x78\x52\xd3\x5f\x93\x40\xbb\x86\xc0\xa6\x0e\x3f\xab\x4b\xc4\x35\x7b\x57\x33\x6a\x39\xaa\xa8\xb0\x14\x0e\xaf\x55\x48\xaf\x0f\xc5\x19\x2a\xff\x21\x5c\x02\xe2\xd0\x5e\x31\xd5\x81\x26\x90\x9a\xc7\x1e\x46\x6b\xdc\x3a\xf8\x17\x78\x99\x24\x63\xb0\x34\x0a\xa4\xe9\x56\x8d\xdf\x37\xbd\x8d\x39\xd8\xe4\x51\x5c\x8c\x0b\x27\x6b\x30\x39\x02\x1a\x52\xf7\x4b\x8f\xbd\x8c\x09\xac\x03\x48\xd0\x25\xbe\x51\xf9\xdc\x2c\xe0\x96\x68\x1b\x4a\xb5\x45\xce\xaf\x28\x0f\xf0\x0e\x2b\x0c\x4e\xc0\x98\xc2\x29\x75\x8b\xaa\xee\x10\x28\x40\x33\xdc\x07\x90\x6a\x4c\x57\xdf\xa6\xfb\xdd\x2e\x4b\x64\xfe\x31\xb3\x43\x30\x6c\x39\xbf\x78\xc8\x66\x4a\x9e\xa6\x98\xb5\x40\x4b\x69\xa3\xea\x15\x2e\x84\x39\xfb\x1e\xf7\xf7\x77\x77\x99\x91\x01\xca\xaa\x51\x86\x9d\x25\xf6\xdc\xc0\x0a\x75\x00\xd9\x04\x2d\x81\xc9\x23\xfb\xbd\xc4\x33\x65\x34\x64\x1d\xc8\x8c\xd8\xf7\x78\xaa\x28\x4c\x45\xac\xc2\x5e\xd1\xdd\x92\x35\xc4\x19\xd2\x65\x50\x8e\xe6\x5a\x95\xff\x96\x08\x2f\xcb\x31\xe3\xda\x44\x47\xdb\xc5\x84\x65\x10\x47\x4c\x97\xfb\xa6\x26\xe4\xba\x2c\xf1\xb2\xca\x34\x06\x28\xb1\xb4\xa4\x92\x36\x55\x9a\x77\x3a\x73\x8b\x26\x56\x07\xe7\xb1\x94\x6c\xa6\x4e\x67\xe9\x31\x48\x17\x9d\x4e\xbc\x34\x68\x0d\xd4\x65\x88\x12\x97\x6b\xa1\xfd\x3d\xcd\xf7\x63\x39\x59\xeb\xf5\xb2\xca\x94\x8d\xe7\xe0\xcd\x66\x8a\x3f\xa6\x62\xde\x5b\xd0\x22\x66\x68\x9a\xa0\x7b\xbc\x4c\x50\xd1\xe9\xec\xc8\xf3\x7f\x8f\xef\x1b\x47\x74\x6f\x47\x94\x20\x1f\x13\xe9\xad\x8a\x72\x4e\x67\x22\xbe\x4f\x36\x74\x16\xe7\x76\x50\x75\xdb\xb3\x8f\x8c\x93\x48\xd7\x62\x83\xf4\x3e\x10\x4e\xac\xff\xbd\x79\x0a\x8e\xf9\x38\x89\x52\x4e\xa2\x4c\x2d\x56\x64\x6c\xae\xa3\x19\xe3\xe0\xbe\x4b\xb1\x18\xa2\x76\xd7\xb1\xa6\x0b\xcd\x01\xa0\x2a\xa4\x70\x2a\xc8\x7b\x6d\x36\x14\x07\x78\xd3\x34\x41\xab\xb8\xac\x6b\x01\x7a\x09\x12\x69\x4a\x50\x29\x8f\x66\xbd\xb6\x17\xbc\x68\x79\xa1\xf5\xbb\x5d\xae\x8c\x06\xc6\xdc\xbf\x4f\x0d\x7e\x0d\xba\xe3\xcc\xc8\xd9\x53\x27\x67\x2f\xcd\x75\x55\x91\xb8\xb7\xc0\xa2\x03\x3c\xc6\x04\x5c\x7c\x86\x56\x12\x30\x24\x9b\x8d\xec\xf1\x0b\x3b\xbe\x01\xb8\x38\x5a\x9c\xce\x62\xee\x96\xef\x09\x48\x97\x14\xf3\xb1\xc3\xb1\x26\x49\x40\x4f\x6c\x39\x26\xe6\x76\x6b\xf1\xde\x92\x2d\x63\x6d\x9c\x40\x67\x31\xe0\x02\x70\x21\x60\x4c\x9c\x6b\x17\x70\x52\xa0\xf0\xad\xea\x3d\x12\xfa\x7f\x29\xf1\x96\x6c\x21\x20\x69\xa5\xb8\x04\x13\x15\xb5\xd5\x0c\x6e\x01\xc1\xa7\x83\xa9\x23\x70\x8b\xc9\x69\x6b\x1e\x49\xc3\x85\xed\x7c\x01\x3c\x6d\x90\x03\x78\x28\xc5\xe3\xc9\x3e\xdb\xdd\xdd\x37\xce\x19\x8b\x4e\x87\x80\x27\x37\x39\x5e\x39\x6e\x0f\x23\x5f\x85\x93\x2a\xa1\xb9\xec\x76\x16\xaf\x92\x11\x1d\xe7\xca\x04\x45\xcd\xdd\xb0\x26\xd9\xc8\x75\x9e\x72\x9c\x4f\x86\xa9\x32\xb1\xcd\xe1\xec\xa5\xcf\x9c\xbd\x5f\xd8\x2a\xca\x68\x56\xfc\xc1\x79\x8e\x23\x05\x5b\xdd\xce\x23\xa5\xe3\xf4\x0a\x5c\x7c\xd3\xa9\x92\x93\x13\x41\x78\x19\x09\x16\x95\xa9\xa0\xe5\xec\x31\x4a\xf3\x3c\x62\x33\x38\x7c\x8d\xa7\x52\xf9\x4c\x68\x77\x49\xb7\xdd\x8b\x3e\xd2\xb2\x04\xf2\x5b\x99\x46\x46\xed\x6e\xea\xce\x69\x6d\xff\xca\xa9\xd5\x1c\x8c\xf7\x09\x3a\xfc\x9f\xd9\x8b\x7d\x2a\xec\x6d\x9d\x7d\xba\xf8\x70\xa4\xc2\x1f\x41\x06\xdf\x64\xac\x92\xed\xff\xdb\x06\x63\xa7\xcf\x62\x74\x1a\x9e\x18\x96\x0e\xad\x20\x69\x8e\xa1\xb3\xe2\x39\xe6\x80\xbe\x6e\x43\xd6\xe8\xdf\xc3\x51\xdb\x82\x6c\x59\x56\xba\x56\x81\xfb\x15\xd1\x6d\xc8\x94\x7d\xb4\xfa\x81\xda\x72\xd9\xdb\xbd\x87\xde\x37\x25\xd4\xdc\x19\xa0\xd4\x6a\x1a\x56\x5c\x75\x4a\x68\x0b\xca\x54\x45\x0a\x41\xc6\xe8\x4d\x4e\xde\x3d\x7e\xba\xf8\x10\xd4\xe8\x36\x23\x01\xb4\x45\xe0\x3e\xe2\xd6\x7f\xc2\xbe\x78\xcb\xf7\xbb\x5d\x61\xb4\xb4\xe9\x58\x28\x23\x66\x83\xb7\xcc\xf0\x38\x54\xd4\x0b\xf0\x43\x2d\x6f\x98\xca\x7b\x76\xf6\x2d\x68\xe4\x34\x19\x0b\xa5\x2c\x5e\xaa\x21\x66\x0d\x30\x7e\x8a\x66\x28\xb7\x57\xfe\x1c\x67\x9a\xca\x9a\x8f\xca\x78\x9e\x0c\xb3\x50\x84\x90\x35\xc8\x0f\x4a\x63\x9c\x1e\xc0\x4a\x31\x69\xb1\xf5\x3a\xab\xe1\x09\xcb\x64\x14\x6b\x72\x33\xc8\x8d\xb3\x64\x58\x4d\x5a\x9a\x1d\xbf\x8a\x43\x83\x3f\x1a\x78\x22\x41\x85\x3e\xe2\x6e\xcd\x3e\x58\x81\x2c\x71\xb6\x52\x96\x0f\x65\x45\xaa\xdb\x4d\xc9\xe0\x8e\xd5\x57\xec\x76\x49\xac\x6d\xef\xd8\x13\x00\x77\x3a\x4e\x00\xdc\x6f\xe9\x24\xb1\x5e\x07\x1f\x06\x9a\xbd\x1b\x7a\x42\x41\x45\x90\xa0\x58\x68\xdc\x8d\xa0\xd8\x3a\x02\x8a\xfb\x88\x39\xab\x43\xfa\x96\xed\x77\xbb\x34\xb1\x76\x7b\xca\x5d\x0a\x19\xa7\x6a\x34\xa9\x1b\xcd\xc6\x8e\xe6\x1e\x82\x5c\x6e\xd1\xb7\x31\x02\x8d\x3c\x2d\x45\x83\x3d\x8d\xa6\x1e\x7d\xd5\x1b\x96\x67\x97\xb5\xc4\x2d\xca\xc8\xda\x35\xa0\x0e\xc2\xe9\x38\x71\x81\x2a\x8f\x36\x36\xf3\x5b\x6f\x28\x6d\x6c\x14\x8c\x99\x52\xce\x6e\x2d\x01\x6c\xcf\x89\xb2\x47\xb7\xb1\x2f\xf4\xd7\x92\x88\x58\xe9\xef\xf0\x26\xbe\x1e\xaf\x58\xb7\x1b\xc6\xa1\x3b\x7d\x8b\x74\x19\x13\x14\x6f\x45\xe4\xec\xc5\x8c\x0a\xbc\xd3\xdf\xe7\xdf\xe3\x7e\xa7\x53\xec\xef\xee\x72\xc7\x1b\xd5\xb8\x9b\xa1\xf6\x88\x72\x50\x8d\x9e\xd2\x72\xc8\x36\x72\x87\x28\x77\x1d\x14\x7c\x62\xad\xd7\xed\xe0\x45\x79\x2b\xf1\xbd\xb2\xec\x7e\x97\x6c\x40\x8c\xcb\x9f\x73\x84\x14\x55\x47\x62\xc1\x0d\x81\xa2\xde\x71\xf3\xd6\xae\x8e\xc3\x38\xce\x9f\xa5\x11\x67\x94\x7b\x06\x58\x4e\x35\xbf\x90\x60\x7f\x47\x68\xde\x72\x75\x5f\x04\xc8\x60\xf5\xa3\x86\xd7\x72\x0d\xaf\xd5\x6d\xd4\x6c\x66\xc0\xea\x36\x6a\xfd\x70\x30\xda\xe6\x80\x16\xc0\xb5\x76\xdd\x34\x7d\xf4\xf1\xfb\x10\x04\xb1\x04\xb1\xf1\xcd\xa4\x62\x89\x0c\xd5\x09\x76\xa1\x03\x5e\x41\xc1\x98\xa1\xc2\x67\x4c\x7b\xda\xf3\xb2\x12\x6b\x53\xc2\x42\x9b\x8f\x26\x3e\x1d\xed\x5d\x2b\x59\xeb\xa7\x8b\x0f\x31\x03\x47\x84\xbd\x8c\x66\x6e\x66\x62\x5a\x3f\x44\x32\x93\x60\xb6\x2b\xfe\x90\x76\xfa\x89\x61\x56\xba\x85\x61\x09\x22\x5a\x3c\x5f\xb1\xcd\x99\xb2\xc5\x32\x27\xc0\x1d\x43\x4c\x6e\x8b\xba\x1e\x7f\xd5\x15\x37\x7f\x0c\x76\xd8\x2d\x11\x57\x75\xdd\x7f\xd0\xb9\xb2\xfe\xf6\x3c\x74\x4e\xaf\x2e\x31\xeb\x6b\xcc\x4a\x92\x8d\x6c\xfd\x19\x2f\x40\xb0\x37\x4e\x0d\x2e\x65\x64\x29\xc6\x43\xd5\x29\x79\x00\xc8\xa4\x01\xac\xf6\xf5\x6c\x65\x24\x5c\x73\x82\xce\x62\xdf\x8e\x2a\xdc\x38\x0e\xeb\xf4\x79\x34\x41\xaf\x0e\x8a\x0c\xa2\xd6\xfd\x73\x3b\x57\xe3\xd2\xb6\x3f\x5d\x7c\x50\xe8\x31\xd8\xa0\x14\x4c\x44\x0e\x03\x6d\x1b\x2d\x2f\x6f\x36\x85\x9b\xc6\x96\xdd\x57\x35\x45\x0d\xa5\x16\x51\x99\x02\x3a\xbe\x99\xc8\x4d\xd3\xac\x0c\xab\xa0\x4c\x75\x1c\x21\xc0\x74\xfb\x21\xc4\xf3\x62\x77\x89\x00\xf3\x6a\xaa\xfd\xa1\xfa\x3a\x01\x1b\x55\x7d\xc3\x0e\x7a\x46\x69\x0e\x51\xac\xbd\xbc\x55\xa1\x88\x04\xb3\xa3\xc6\x2f\xe3\xc7\xc9\xd0\xeb\x4f\x8a\x2b\x7d\x65\x48\x24\xa8\xc4\xcb\x38\x00\x30\x28\x0d\x37\x08\x9d\xc5\x1f\x8c\xc5\x99\x9a\x3e\xe6\xbd\x24\x80\x2d\x94\xc6\x8f\x54\x95\x53\xe0\x1d\xe9\x52\x73\x56\xcd\xa4\xaf\x9a\xa0\x9a\xf5\x94\xd5\x38\xa0\xf5\x7a\x2b\xac\x94\xd4\x9d\xc5\x48\x5f\x84\xa8\x8d\xf0\x2d\x47\x69\x62\x4c\x1f\xc4\x6a\xf9\x5e\x73\x0e\xe3\x74\x0b\xd4\xcb\x93\x66\x5c\xc0\x3a\xfb\xc2\xc1\xd9\x4f\xd1\x73\x08\x84\xf3\x1d\xf3\x4f\x41\xf9\x2c\x5b\xc5\x68\x08\x9a\xe7\x50\xa5\xef\x58\x65\x32\x26\xa0\xee\x39\x69\xc0\xab\x9e\xd9\x04\x9d\x4e\xcc\x1b\x96\x33\x69\xbe\x48\xb8\x9d\xe8\xea\x2c\x6c\xb9\x45\x9d\x44\x84\x6f\x29\x88\x39\xe2\x9e\x19\xe7\x8b\x37\x50\x61\x2f\x4b\x6f\x87\x72\x50\x66\xb5\x37\xc6\x25\x11\x22\x27\xbe\x71\x9c\xae\x36\x7a\x98\x93\xc2\x4f\xa7\x65\x64\xaa\xcb\xe4\xa5\x42\x35\xab\x4d\x05\xa1\x3e\xfa\x42\x21\x1c\x8f\xe5\x6e\xa7\xc8\x0c\x63\x1b\x52\x91\x42\xa8\x05\x09\x27\x32\xb6\x15\x51\xa9\x09\x8e\x03\xb1\x84\x32\x6b\xd9\x19\x68\x79\x80\x24\x32\xc7\xc2\xe3\xa8\x30\x2d\x7b\xb7\x7c\x55\xda\xe9\xd0\x9a\x8e\x68\xe0\xbb\x04\x04\x1d\x42\x71\x5d\x42\xca\xc5\x59\x86\x19\x53\x22\xd4\xfe\x24\x6f\x78\x5a\xdc\x2a\x03\x82\xc8\x68\x9b\xb6\x9c\x77\x00\x05\x97\x7c\x8b\x62\x45\x11\x9f\xa8\x1a\xd2\x71\xea\x89\x0d\x80\x09\xa8\x4f\xd0\x78\x82\xb4\x43\x8f\x8a\xcf\xb7\x7e\x32\x8a\x4d\xfb\x07\x42\x90\xc5\x12\x7a\x20\xaf\x16\x6f\xb9\x04\x03\xf1\xb2\xa6\xbf\xed\x0d\x96\x0c\x9b\xca\x6e\x2d\x77\x52\xb9\xd4\x05\xb8\xdb\x0b\x00\x4c\x1d\x45\x28\xc0\xfe\x95\x37\xec\xbe\x06\x8c\x63\x8b\x69\x95\xe1\x93\x02\xcb\x09\xf4\x36\xca\x88\x15\x51\x06\x41\x9f\x20\x9c\x96\x62\x36\xed\x9b\x4d\x19\x0e\xc3\xc5\x5a\x10\xfe\xd4\x87\x8a\x15\x3e\xfc\x03\xc6\x06\xf1\xac\x9f\xe3\xc6\xc5\xc3\xcd\xb4\x4f\x5d\x1e\xfb\x10\x93\x44\x4e\xb6\xa2\x86\x1c\x22\xa8\xb4\xbd\xeb\xf6\x9f\xcf\xd2\x5a\x35\x1b\xc0\x86\x1e\xec\xf4\x51\x3b\x40\x2f\xdb\x68\xac\x2d\x9c\x2b\x68\x67\x73\x05\x16\x8c\x29\xf0\x45\x90\xa8\x22\x9f\xee\x7e\x70\x67\x98\x24\x48\x6f\x27\x7f\xf1\xae\x2e\x0e\x4e\x2f\x4f\xae\x4e\xce\x4e\xa3\xf7\x67\x1f\xcf\x3f\x1c\x5d\x1d\xf5\xda\x09\x0a\xb8\x9d\xc6\x96\x48\x21\x0f\xa9\xa2\xc7\xe3\xd4\xb7\x88\x63\x89\xe3\x92\x07\x46\x8f\xad\x50\x0f\x59\x47\x37\x4f\x11\xf1\x7c\x7d\xbb\x26\x10\x31\xd6\xad\x1b\xc5\xff\x49\x01\x39\x09\xd6\xbf\x19\x29\x71\x9a\xc2\xcb\x94\x0b\x98\x3d\x98\xb0\xd2\xc7\x80\xb4\x75\xbf\xba\xa3\x58\x8f\x7c\xa1\x82\x64\xfe\x55\xc5\xbb\xdd\x44\x85\x61\x8a\xa9\xcd\x20\x6f\x21\xd5\x3d\x2b\xfe\xf6\x81\x94\x07\xb1\x9c\xb0\xed\x42\x12\xbd\x12\x80\x85\x29\x72\x0e\x7c\x1d\x65\x0a\x4d\xc8\x7c\xf2\x3f\x16\x49\x00\x8e\x2c\xa5\xef\x86\xd0\xf2\x98\x02\xc4\xe7\xb0\xd7\x69\x7c\xd6\x5b\x15\x9a\xb4\xb7\xce\xda\xe0\x14\x7b\x33\x00\xb4\x79\x75\x02\x6c\xef\x60\x0e\x20\x8b\x9b\x02\x4f\xf0\xf5\x2d\xc3\x1d\x20\x11\xce\xb9\x3a\x5e\x99\x5e\xcc\x6a\xd3\x6e\xdf\xea\x20\x3f\x67\xfc\x93\x2a\x10\xcb\x1b\x3e\x2c\x2c\x49\xfa\x7a\x03\x44\x15\xfc\x3b\x6b\xd6\xa5\xa0\xca\xbe\x23\x9b\x56\xc9\x93\xda\x87\xde\xb4\xa7\xdb\x98\x2a\x01\x3a\xb2\xda\x78\x40\xe9\xdb\x29\x63\x79\x38\x03\xc2\x57\x43\xe7\xc6\x6b\xb9\x0a\xa2\x8d\xe5\x4a\x13\x47\x47\x28\xaf\x4b\x35\x10\x45\x42\xd0\x11\x78\x07\xb3\x0d\xb5\xd1\x58\x18\x9f\x44\x48\xd7\x64\xbc\x2f\x19\xc0\xb5\x9d\x8d\x04\x43\x68\x9c\xfa\xed\x9c\x0e\x2d\x4f\x4b\xb1\x70\x22\x58\xc7\x38\xa6\x00\x82\x78\xb0\x17\x61\x05\xe1\x24\xc9\x87\xb8\x00\xf9\x68\xe1\x6e\x09\x8f\xa1\xcc\x94\x86\x8c\xd3\xd2\xf5\xaa\xd1\x89\x76\xe8\xb2\xc6\x6a\x5a\x1c\x9c\x60\x00\x4e\x32\x1b\x3c\xc4\x29\x7a\xbe\x69\x27\x6c\x58\x95\x92\x12\xb3\x3c\x7c\x4f\xa9\x63\x24\x2a\x1a\xe6\x8d\xec\xe1\xa1\x9c\x08\xb4\xd3\x97\xd3\x5b\x01\x7a\xcf\xc0\x48\x52\x53\xd3\x72\xaf\x25\x7e\x0a\x8f\xd8\x70\x3c\x41\x0a\x08\xc2\x93\x5a\x3e\xf9\x68\x41\x8b\x7c\x01\x10\x31\x1c\x4f\x36\x68\x65\xdc\x79\x29\x6f\x6d\x69\x63\x9c\x8e\x1c\xb3\x71\x31\x41\x53\x9c\x8e\x8b\x49\x2b\xef\x74\xb4\x77\x14\x8c\xf1\x54\x3d\x81\x51\x94\xbc\xc7\xf8\x28\x2e\xed\x89\x86\x09\x9b\x26\x28\xef\x74\x4a\x03\xbb\x8d\x28\x3b\x4f\x92\xe1\x6a\xbd\xce\xcd\x5a\xed\xc8\xba\xf4\xf3\x28\x5e\x29\xb5\xec\x0a\xec\xd1\xf5\x25\xc3\xd2\x83\x94\x46\x38\xa7\x06\x61\x06\x80\xa8\x73\xef\x65\xc6\x52\xeb\x83\x1c\x95\x45\xb8\x34\xdf\x13\xd7\x5a\xd5\xa0\x18\xe9\x0c\x3d\x4e\xee\x09\x2f\x21\x45\x2e\xa4\xc3\x3f\x1a\xf5\x61\x88\xf3\xb2\x00\x3c\x6c\x3f\x2a\x5c\xb0\x94\x55\x2d\x17\x40\x57\x19\x28\x64\x63\x97\xbe\x9f\x2a\x9d\x0f\x1b\xa0\xae\x18\xa7\x93\xd6\x2a\x66\xc8\xe9\x50\x1b\x25\xd4\x9a\x88\x06\x10\x7a\x65\x6d\xa2\xba\xc2\x42\x6d\xeb\x26\x3f\x51\xeb\x75\xa0\x92\xad\x1d\x31\x57\xb9\xa4\x86\xd7\x01\xe6\xed\x68\x8a\xc9\x73\xee\x8d\xd0\x0c\xfb\x1e\x8a\x78\xa7\xb3\x43\x9e\x75\x4b\x84\x32\x4c\xaa\xc4\x61\xe8\xe5\x88\xa3\x79\xb5\xce\xa6\x2a\x6b\x9e\x8c\x5a\xd3\xf5\x7a\xb6\x5e\x67\xeb\xf5\x7c\xa4\xc7\x04\x39\x24\x36\x99\x6b\xd1\xa3\xc3\x2f\x73\x50\x00\xe0\x5b\x2f\x83\x1a\x79\x65\x97\x5a\x79\xb8\x13\x55\xea\xa8\x48\x94\x2f\x14\x49\x80\x8d\x8b\x49\xa7\xa3\x23\x4a\xca\x17\xcd\xaf\x32\x82\xb0\xf0\x0e\x00\xc0\xbf\xad\x1b\x12\xf8\x23\x8a\xf8\x44\xc5\x3f\xe0\x5b\xdc\x7f\xf9\x16\xf0\xb0\xcb\xfa\xa0\x17\x61\xa2\x3d\x81\x23\x25\xeb\xde\x9b\xca\x6d\xc6\xc6\xab\xde\x1d\x79\x9c\xe0\x95\x0e\x65\xc6\xb5\xa3\xc1\x55\x4f\xb7\xb0\xad\xb9\x4a\x41\xab\x8b\xa8\x98\xa7\x21\x75\xbf\x5d\x53\xb7\x46\xed\xa9\xab\x99\xb3\x85\xc1\xab\xf9\xb3\x98\xb6\xb9\xf8\xaa\xa2\x9b\x60\x87\xc3\x02\x9b\x2a\x2b\x7e\x14\x7c\x6a\x97\x74\x3a\xbe\x26\x87\xe5\x94\xa2\xaa\xd5\x78\x63\x9b\x09\x70\x0f\x89\x76\x54\xe7\x1f\x7c\x15\x72\x6f\xa3\x26\xa6\xde\x09\x79\xe5\xfa\x3e\xf1\x9c\xa7\x89\xe7\x7a\x46\x1b\x7b\x06\xe6\x15\xa8\x90\xfd\x10\x0c\x07\xe8\xbd\xd7\x8b\x66\x1e\xc4\xf6\x0b\x0b\x6d\xa3\xcd\x2b\x10\x9a\xe3\xbe\xf2\x55\x19\x53\x9c\x4a\x3c\x2e\x0e\xef\xba\x31\x9f\x24\xf2\x96\xd6\xca\x2c\x4c\x71\x9f\x00\x37\x64\xbe\xf2\x6c\xfd\x78\xa4\xc8\x58\x50\x06\x14\x9b\x98\x6c\xe1\xc3\x19\xd7\x49\x61\x89\x38\x45\xc1\xd5\xab\x30\x3b\x75\x49\x54\x3d\xfc\xc0\x58\x3b\x9d\x79\x33\x61\x6b\xae\x10\xef\xea\xa8\xa9\x63\x0b\xab\xd6\x5b\xb3\xcc\xf0\xad\x21\x35\xf9\xa1\xfe\xe3\xc4\x28\x9e\x6f\x15\x33\x6a\x5d\x56\xd0\x12\x78\x56\xb4\xa8\xe4\x62\x72\x6d\xc3\x9b\xcc\xea\xde\x3f\xe3\x9d\x5f\x13\xc2\x1e\xa3\x29\x26\x89\x71\x4c\xa4\xad\x1b\x7d\x19\xc9\x15\xdb\x12\xc3\xe1\x9f\xe5\xeb\x75\x9b\x57\x98\x51\xac\x43\x2c\x35\xf6\xd9\xca\x56\x76\x06\x89\x86\xfd\xe1\x98\x34\xeb\x05\x28\xa6\x05\xc9\x68\x2a\xbc\xab\xe4\x5f\x34\xa8\xa8\xb1\x5f\x2a\x7c\xa3\xdc\x9d\x33\x4e\xca\xad\x31\xaf\x6a\x9c\x7f\x8e\xc5\x48\x54\xb8\xfc\x45\xc5\x47\x5f\xe8\xb3\xa9\x18\xf7\x2d\xed\x6f\x98\x5d\x60\xa5\x40\x8b\xdb\x28\x8d\x74\x07\x02\x93\x05\x23\x79\x69\x42\x6f\x3c\x3e\x18\x45\x04\x19\x83\x93\x06\xda\x64\xbd\x0e\xe5\x4e\x06\xcc\x34\xf0\xc8\x98\xef\x38\x4b\x84\x98\x82\xf0\xbd\x67\xa5\xd6\x7b\x96\xef\x3a\x2b\x55\x33\x09\x45\x7e\xa6\x62\xbe\x55\x4c\xbc\x65\xc7\xdb\xe6\x02\x31\xd0\xff\xf2\xee\x70\xfa\x0f\x39\x58\x8a\x61\x3a\x86\xe8\x53\x74\x3c\x98\x68\x95\xe6\x2a\xbf\x11\x30\xb5\xf2\x39\xe9\x13\x9a\x49\xcc\x20\xc3\x7d\x34\x37\x98\xbe\xaf\xe0\xbf\x9f\xbd\x9d\xef\x77\xbb\x5a\xdf\x72\x19\x64\x19\x67\x13\xb4\xc0\x4b\xcf\x12\x2a\x69\xad\xe2\x19\x5a\xd8\xbb\x7f\x16\x20\x9f\x69\x55\x33\xc1\xe1\x94\x04\xcd\x60\x26\xa1\xa3\xdb\xe5\x5c\xcd\x3c\x55\x1b\x72\xe4\x1b\x25\x05\xe3\xc7\x89\xe6\xbd\x2b\xf6\x8d\x55\x79\x08\xa6\xa9\x50\x8a\xe5\xdc\xf2\x1a\x1b\xba\xe5\x91\xc7\x72\xa3\xfb\xb5\x42\x98\x19\xef\x8c\x41\x84\xe9\x9a\x84\x46\x21\xf8\x0d\x4c\xec\x3a\xfe\xed\x6b\x3b\x95\x09\x04\xe6\x94\x1b\x82\xe2\xdc\x06\x15\x7b\x4b\x3b\x9d\x74\x3c\xb5\x02\x1d\xb2\xdf\xed\x4e\x93\x7d\x3a\x8b\xa7\x18\xdb\x7c\x61\xeb\x33\x75\x73\xb4\x66\x3e\x97\x36\xb5\x6e\xd1\xa6\x5d\x13\x0c\xc5\x4b\xd0\x0a\x56\x1f\x62\x6f\x39\x4a\xb7\x1c\x35\x4d\xfd\x19\xca\x51\xa9\x83\xd5\xfa\xd7\xad\xdf\xa6\x52\x5a\xe3\xeb\xf5\x4e\x66\xc4\xbf\x59\x4b\x3b\x87\xda\xb4\x56\xf1\x1c\x71\xa3\x04\x1e\x90\x34\xf6\x54\xdc\x4b\x04\x7c\x91\x2c\xaa\x08\xf8\x7d\xd2\xe9\xcc\x9b\x12\xe3\xf9\xf8\x7e\x82\x17\xe3\x7b\x47\x20\x66\x9d\xce\xce\x12\x9a\xf2\x17\xfe\x7f\xf9\x58\xbb\x23\x1d\xc0\xff\x70\xdb\xc5\x04\xc1\x69\x87\x18\x42\xea\xaa\xad\x7a\xdf\xfb\xdf\xe8\xdb\xb7\xb3\xcf\x07\x48\xdd\x9d\xda\x76\xc7\xc4\x30\xf8\x6a\x22\x41\x40\x44\x07\x3f\x08\x84\x1f\xf1\x21\x8c\xeb\xc0\x2b\x11\x1d\x2c\x93\x29\xc0\xa4\xae\xb5\xa0\xed\x7d\xaa\x9c\x37\x3a\xe9\xc4\x7a\x1d\x37\x66\x50\x46\x93\x9b\x7f\x20\x40\x44\x5a\xa6\x4b\xfc\x57\xf9\x90\xe7\xf8\xbd\xfa\x57\x92\xbf\x0c\x7f\x94\x28\x64\x3a\x25\xf8\x04\x81\x7f\x93\x39\x3e\xd5\x0f\x26\xc7\x31\xb8\x6b\x00\x7e\x13\xfe\x8a\x60\x6e\x08\xc7\xef\xe0\xa9\x60\x19\xa1\xb3\x47\x7c\x8e\x40\x69\x75\x46\x6f\x57\x9c\x60\x89\x96\xb2\x02\x2f\x89\xfc\x9f\xcd\xf0\x82\x38\x8f\x0f\xf8\x27\x64\xa4\x24\xf8\x37\xe5\x7b\x0e\xff\x88\x48\x6f\x46\x73\x41\x38\xfe\x05\xba\xfb\x58\x48\x02\x1d\x56\xec\x4a\x47\xc5\xef\x59\xcb\xfc\xde\x34\x2d\x45\x73\x9c\x09\x8a\x9f\x16\xf4\x0b\x2d\x86\x8d\xde\x51\x98\x86\xb3\xac\xd0\xfd\x52\x6f\xb3\x19\xb2\x02\x05\xec\xef\x18\xd4\xb4\x08\x1a\x4c\x90\x0d\x62\x7e\x33\x26\x3e\xb9\x75\xf2\x60\x23\x94\xfb\x81\xf7\xae\x1e\x97\x44\xab\x62\x9b\x1a\x55\x1c\xef\x1b\x12\xa5\x36\xba\xbf\x15\x5e\x15\xda\x6d\x0f\xc5\x1c\xc2\xf8\x81\x9b\x7a\xf9\x08\x62\xd0\x5d\x15\xf0\xcb\x04\xbd\x12\x40\x8a\x68\x0e\xe0\x06\xb1\xd9\x6c\xd8\x78\x05\xa9\x3a\x5b\x4e\x97\x40\x55\x09\x9a\x6c\xae\x2e\x1b\x6d\x8b\xea\x18\x99\x31\x43\x03\xed\x5e\x57\xf7\x60\x83\xf4\x3c\x0d\x6b\x32\x5b\x85\x4d\xa9\x96\x74\x00\x42\x9a\xf8\xde\xec\x2a\x31\xf3\xe2\x3e\xa2\x63\x36\x49\xc0\x73\xde\x66\xd3\x0a\xd7\x9e\x6a\x25\xb2\x27\x0a\x5a\xd1\x10\xcb\x66\x67\xb0\xf1\x4d\x2f\xcd\xfc\xef\xed\xe0\x1a\xf0\xb0\xc1\x9e\x64\x4f\xe4\x0f\x16\x1b\xda\x83\x7d\x12\xb3\x44\xdf\x61\xe3\x49\x25\xb0\x86\x1c\x87\x9c\x60\x1d\xe4\x15\x62\x32\x0f\x09\x5a\xa6\x8f\x39\x4b\xb3\x21\xb8\xa9\x10\xbd\xeb\xdb\x15\xcd\xfe\x42\x1e\x11\xcd\xe4\x1b\xcd\x10\x91\x1d\x3f\x55\x99\x33\x22\x52\x9a\xcb\x0f\x9c\x94\xab\x5c\x20\xf0\x7c\x77\x92\x0d\xb9\xa4\x7f\x65\xee\x5c\xc2\x0f\x99\x01\x1e\x90\xa0\x0b\x72\x29\xd2\xc5\x72\x78\x28\xe9\xb3\x82\x3d\xc4\x09\x02\xf9\xd6\x90\x8d\xdb\x6e\xf8\xbb\x0f\x54\xcc\x77\x41\xd3\xbc\x3d\x19\x39\x05\x7f\x53\x91\xf6\xca\xb6\x49\x3a\x9d\x92\x88\x2b\xba\x20\x6c\x25\x02\x9d\x21\xb3\x18\x04\xf7\xf7\x89\x8b\xca\x43\x0c\x43\x55\x60\x88\x96\xc8\xb1\xe8\xe9\x21\xb7\x78\x4f\x0e\x16\xf3\xde\x1d\x79\xec\xf2\x1e\xcd\x90\x8e\xca\xf3\x83\x9f\xac\x87\x88\xb8\x32\x68\x04\x76\x8b\x51\x8d\x87\x14\xf5\x96\x20\x66\x85\x78\x42\x3b\x29\x32\x2d\x25\x1b\x17\x3d\x76\x93\xa0\x7f\xeb\x87\xc1\x4b\x8c\xea\x48\x83\x9b\x15\xd0\xfb\xf6\x95\xe7\x95\xf5\x9a\xd9\x01\xa4\xe5\xd0\x30\x99\x1e\x4f\x91\x70\x97\x27\xe8\x46\x20\xee\xc7\x1f\x49\x9e\x82\xf0\x1f\x26\x9e\x79\xd8\x42\xd0\x62\xa7\xc3\x55\xf4\xa9\x20\xd5\x02\x3f\x8c\xf3\x51\x78\x2a\x95\xd5\xfd\x35\x20\x5d\x23\x88\x7b\x61\x76\x4b\x32\xdc\xf3\xbf\xc9\xc5\x35\x46\x9e\xa0\xbe\xb1\x08\x32\x27\xc3\xfb\xd8\x08\x11\xbd\xeb\x08\x82\xe2\x62\xcc\xa1\x6a\x9e\x0c\x33\x45\x23\xfa\xe4\xbd\x1f\x0f\x5e\xbb\x54\xdb\xc0\xc3\xb0\xc1\x65\x0d\x1f\x55\x0f\x3b\x53\xf0\xba\x6e\xbe\x0d\xce\xfd\x69\x93\xb9\x2b\x7f\x7c\x22\x36\x8e\x06\x2a\x8c\x64\x8c\x3a\xe5\xc9\xcd\x26\xe6\x48\x84\xe3\x28\xd6\xeb\x58\x45\x29\xa8\x0f\xa8\x36\x22\x9b\x59\x8d\x29\x81\x7b\x50\x1f\x8e\xd6\x4e\xd1\xe9\x50\xc5\x95\x52\x19\x94\xb5\x37\x51\xe3\x96\xb5\xaa\x00\x24\x41\xd0\x14\xb3\xed\xe4\x9a\x24\xea\xbb\x8d\x30\x43\xf5\xf4\xc4\x05\x16\x89\x8e\x31\x2d\xf1\x69\xb3\x41\x95\x54\xd7\xbf\x1c\x30\xf5\xeb\x50\xb0\x19\x44\xa9\xf2\xc4\x89\x39\x29\xf4\x9c\xb0\xd0\x0f\x86\xec\x2c\x4b\x36\x66\x2f\x6e\xb4\xde\x4b\x10\x78\x25\x79\x22\x76\xa7\xc8\x7d\x68\x9e\x63\x62\x37\x0b\x0a\x63\x78\x2c\xab\xbe\x8f\xf5\x9e\x93\xe4\xb4\x29\x83\x05\x32\xc9\x78\x80\x4c\xae\xd5\x4d\x39\xe5\xf4\xc6\x05\x7e\x1d\xb1\x9e\x03\x53\x9d\xce\x4a\xde\x88\xf9\x8c\xe6\x39\xc9\xda\x88\x24\x43\xb3\x5b\x1e\x11\xf1\xed\xb6\x17\xcf\xf6\x40\xb5\xba\x87\xfc\xce\x98\x8a\xe6\x61\x45\xf7\x55\xb1\x5f\xd8\x4b\x30\xb1\xd3\x96\xb1\xa4\x72\x9e\xe8\x38\x9d\x60\x21\xff\xba\x83\x09\xe6\xf0\xb0\x37\xc1\x05\x0c\x36\x85\x99\xd4\x7d\xf2\x07\xe1\x9a\x7e\x0c\xd0\x3b\xbf\x51\x6e\xc7\x03\xd1\x06\x2b\x33\x34\x80\xed\xec\xcd\xd3\xb0\xad\xf0\x23\x35\x65\xa8\xef\x2b\xc7\x39\x86\x3d\xa2\xa0\xed\x68\xae\x16\x15\x29\x55\xb8\x48\xa9\xf8\x75\x52\x60\x31\x2e\x27\xa0\x16\x55\x76\xf9\x04\x15\xa3\xdb\x58\xb1\x40\xd3\x64\x48\xe3\x54\x62\xba\x0d\x6b\x88\xfb\x5e\xb8\xa0\xdb\x1a\xa1\x88\x52\xdc\x04\x18\x50\x89\x95\x0d\x45\x9a\xc8\x7d\x4c\x31\x8f\x0b\x4f\xe6\x5d\xaa\x98\x9e\x2b\x85\x42\x50\x5c\xb4\x3c\x96\xa1\x9a\x1c\x40\x6f\x30\x16\xa3\x45\x2c\x50\x05\x5d\x3a\x30\x8a\x69\x65\x34\x35\x98\xd3\x34\x2d\x94\x0a\xad\xa6\x3a\x52\x11\x95\xe9\x82\x98\x9c\xbd\x76\x92\x0c\x77\xe0\x0e\x87\x1a\x59\x32\x4c\x47\x59\x2c\x10\x4d\x86\x32\x55\x82\x5b\x78\xd9\x53\xac\xa3\x05\xbc\x79\x0b\x7a\x13\x86\x59\x54\x6c\x1f\xbb\x8c\x03\xc5\xda\xde\x21\xeb\xf5\x9e\x7e\x14\x16\xd5\xa8\x1e\x82\xe9\x3c\xa5\x85\x89\x5b\xa6\x82\x21\xc0\xaf\xa2\x50\x82\x7d\xe8\x69\x01\x2b\x62\xc5\x5d\x23\xf1\x14\x71\xcb\x55\xd2\x0b\xdf\xb4\xa3\x2a\xcd\x51\xdf\xed\x73\x72\xef\x78\x59\x3e\xf4\x29\x31\x0c\x68\x44\x86\xa2\x55\x07\xe9\x16\x0a\xdd\xc6\x72\xfb\x94\x28\x85\x6b\xc2\x82\xeb\xfb\x17\xa3\xe6\x58\xff\xaf\x46\xc3\xe7\x7d\x60\xe3\xa6\xd4\x6c\x8c\x87\x35\x08\x51\x30\xb5\xba\xf8\xd7\xa0\xc0\x73\x56\x5c\x28\xb2\x41\x3b\x41\xb8\xa6\xe5\xa7\x92\x16\xb7\x8a\x30\x56\xb4\x01\xc6\xf8\xac\xf6\x55\xf3\xe1\x9d\x2b\x3a\x79\x0d\x9b\x5c\x05\x15\x8a\xe0\xd7\x0a\x79\x06\x79\x7c\xd6\x39\x2c\x14\x6b\x96\x02\xe9\x33\xb4\x5e\xf7\xd5\xda\xea\x23\x65\xfa\xcc\xc9\x22\xa5\x05\x2d\x6e\xbd\x14\x80\x68\x9e\xa7\x78\x33\x6a\x02\xd6\x98\x4a\xbf\x1c\x1c\xd7\xd9\x84\x2d\x64\xb3\xd7\xa0\x51\x55\xd7\x53\x0a\x91\x86\x9d\xde\xa4\x85\x64\x86\x78\xd6\x0d\xa6\xd3\xf9\x51\x21\xf8\x63\x4c\xc6\xc5\x04\x15\x20\x01\x32\xdc\x4e\x32\xbd\x3b\x5e\xe5\x00\xa3\xc0\x6a\x5e\x75\xa9\x96\xee\x6f\x02\x3a\x8b\xfb\xd8\x7a\x87\x33\x23\x0f\xfc\xf8\x99\x5d\xbc\x8c\x83\xee\x92\xa4\x32\x3b\x4a\xd4\x23\x21\x05\x50\xa5\x1f\xd3\xc7\x1b\x72\x35\x27\x45\x7a\x93\xd7\x85\x9a\xfe\x79\x6d\xd8\x6e\xd6\xde\xa5\xbe\x47\x7c\x20\xb7\xd3\x6f\x29\x40\x46\xfc\x0b\x79\x95\x3c\xa5\x06\x94\xc1\xcd\x0f\xd8\x9e\xe7\x41\x59\x4d\x6d\x52\xbd\x5d\x34\xf4\x50\x34\xf5\x81\xb0\xd7\x1a\x12\xee\x5a\x43\xdc\xa1\x14\x0d\x94\x24\x4d\xaa\x95\x0c\x64\x69\xbf\xd4\x96\x83\x61\x45\xf1\xe4\x21\x2a\xe2\x69\xd2\x02\xb0\x98\x8e\x16\x71\x29\xc1\x62\x3c\x8b\x4b\x24\xb1\x20\xdd\xcb\x07\x6a\xf8\x03\x07\x22\x06\x2b\x84\x20\xb2\x4a\xf8\x5d\xd5\xd9\x84\x4e\x0a\xe3\x8d\x50\x62\x2a\x5b\x8b\xfb\x5e\x14\x4d\xe8\x14\xb7\x13\x6b\x6b\xab\x3d\x0e\x36\x62\xff\x23\x7f\x7e\x82\x2d\x62\xf0\x3a\x9b\xe1\x02\x26\xdc\x9b\x42\x6f\x73\x65\x07\x5b\xd9\xa4\xc1\xa1\x72\x82\x07\xea\xd0\x95\x06\x80\xd5\xe9\xc0\x0d\x33\x5a\xc4\x54\xf6\x21\xae\x77\xc2\x34\x82\xb6\x1e\xb6\xc4\x76\xd0\x14\xaa\xcd\x4c\xe5\x98\xed\xee\x06\x47\x68\x2c\x26\x98\x43\x1d\xfe\xf4\x3f\x73\x74\x5a\x12\x95\xaa\xd1\x13\xbe\x7a\x79\xc3\x46\xdc\x24\x2f\xe7\xdd\xb3\x79\x9b\x82\x2e\x7c\xeb\x58\xd4\x0d\xfe\x04\xd3\x3e\xf4\x91\x4c\xc5\xf9\xe2\x9b\xa1\xf9\xe6\x90\x29\x4e\xd2\x92\x15\x43\xae\x1c\x82\x1d\x61\x60\xeb\x5d\xb7\xbb\x8e\xd8\xee\xb6\x77\xdb\xe8\x52\xfb\xc5\x3a\xdb\x66\x85\xee\x7a\x48\x33\x7c\x69\x22\x2c\x29\xea\xc2\xc2\xf5\xba\x95\xa5\x01\x66\x41\x9a\x87\x7e\xe1\xf1\x04\xd5\xaf\x72\x30\x17\xd7\x57\x79\x82\xa6\xda\xbf\x58\x13\xa3\xa9\xd3\x09\x84\xbe\x0d\x4c\xa7\x5f\xd8\x4a\xf1\x9b\x96\x69\x59\x82\x2c\x0c\x8e\x1e\x8f\x1c\x2b\xa5\x04\xf3\xfe\x19\xe5\xa5\x88\xcc\x65\x18\x09\x06\xa9\xc6\x36\xc0\x43\x49\xda\xc9\x46\x3b\xd9\xf4\x55\x77\xc9\xa8\xe9\x6e\xdc\x19\x00\x40\x15\x15\x60\xa1\x35\xb3\x50\x66\x29\xb5\xe6\xef\x96\x92\x33\x58\x65\x91\x3c\x2d\x94\x7b\xfb\x8d\xf1\x02\x30\x7c\x69\x06\x8e\x53\x9a\x93\x4c\x0e\xc8\x0e\x22\xfa\x83\x86\x92\x7f\x18\x46\xe7\x39\x49\x4b\x12\xad\x00\x56\x91\xe8\x0f\x05\x79\xf8\x43\xc4\x96\xf2\xd2\x65\x1c\x01\xfc\xd2\x3e\x4b\xfc\x49\x30\x98\xe8\x0d\x01\xe4\x94\x64\x72\x1a\x1d\x3f\xaf\x07\x93\xf4\x3c\x42\x61\xee\x8a\x66\xb1\xa8\xc4\xc8\x66\x82\xf0\x00\x23\x13\x1e\x95\xe7\x98\x29\x46\x1d\x1a\x78\x03\x8a\xde\x35\xae\x81\x5f\x88\x47\x05\x2a\x80\x86\xbd\xb9\x35\x1a\x55\x20\xad\xf5\xe6\xc0\x48\xb4\xeb\x94\x81\x06\xcb\x15\x3b\x15\x5e\x77\xd4\xf5\xbc\x1f\x62\xbe\xa9\xec\x8d\x6f\xaf\x41\xed\x04\x55\x81\xbe\x03\x74\xac\xae\x7a\xdc\x97\x2f\x55\x4b\xe0\xa7\x8d\x67\x7c\x84\xa8\x87\xa8\x15\x09\x52\xbc\xcc\x42\x85\xe4\x18\xb3\x09\x26\x63\xe6\x24\x9d\x29\xee\xef\xa7\x8e\x26\x4b\xbb\xdd\xe4\x89\x8f\xc5\x38\x9d\x4c\xb0\x22\x33\xad\x1d\x55\x25\x42\x83\xc3\xe9\x48\xa3\x08\x64\x77\xd0\x28\xfc\x20\x9e\x14\xde\xab\xf2\xce\x5f\xec\x27\x39\x74\x77\x4e\xfc\x78\x31\x21\x53\xc6\x23\x02\xcf\xfd\x63\xdc\xc0\x45\x7c\x29\xf6\x51\x77\x90\x20\xaa\xb0\x26\x39\x5f\x1c\x3c\x4d\x69\x83\x77\x27\xb0\x61\x13\xed\xf9\xe1\x49\x1b\x53\xee\x00\xdd\x5d\xbb\xe7\xd3\x04\xdc\x9c\x84\x5c\xb8\xb3\xc4\x05\x51\x55\x68\x5b\xea\xa3\x6d\xb9\x8f\x02\x9d\x49\x14\xc8\xf2\xbc\x4a\x94\x27\xa8\x34\x74\xe9\xce\xa0\x45\x3b\x9d\x1d\xa3\x88\x9f\xe2\xbb\x98\x42\xb8\xb9\x42\x2e\x6f\xba\x51\xca\x66\xd5\x5a\x8a\x31\x9f\x54\x34\xb1\xe4\x7d\xbf\x42\xd6\xc7\x32\x10\xb6\x59\xbc\x92\x18\xc0\x8e\x7b\x3b\x88\x1d\xc5\x91\x0c\xc3\x30\xab\x22\x81\x2c\x5f\x5c\x16\x09\xff\x86\xaa\x92\x0d\xa2\xa3\xab\x78\x85\x0a\xed\x75\x3d\x19\x5e\xf8\x6f\x1b\x27\x16\xbe\xbe\x06\x80\x73\x7d\x8d\x89\xcf\xdd\xbc\x08\x19\x72\x5a\x7c\x1c\x17\x4e\x53\x9d\x2a\xf8\x4a\x2d\x9d\x47\x5c\xe9\x2b\x57\x5a\x7f\x3c\xeb\xc1\xde\x79\x26\x7e\x83\x6b\x31\x88\x9a\xf2\x3e\x00\x45\xaa\x1a\x80\x3f\x4e\xe6\x73\x86\xce\x94\xd4\x27\x47\xf0\xbd\x19\x8a\x55\x83\xd4\x8e\x02\xdb\x44\xd0\xc1\x37\xa8\xdb\x50\x8b\xa7\xad\x2f\x48\xef\x8a\x30\x2a\xd1\x60\x7a\xa4\x85\x33\x1a\xac\x3f\x50\x31\x8f\xd2\x22\x4a\x65\x0b\xed\x04\x80\xe4\x99\x12\x9f\x6d\x13\xf7\x3b\x3e\xb3\xdc\xdb\xd5\x2e\x26\x76\x17\xf2\x2a\xc7\xc3\x5a\x14\xa5\x53\xf2\x42\x3f\x12\xc4\x5b\x5e\x4c\xeb\x66\x42\xcf\xda\x4f\x4a\x78\x71\xaf\x1d\x8b\x18\xb0\x39\x2e\xac\x5d\x5d\x23\x02\x97\x19\xc3\xc1\xa6\x8f\x0b\xfd\x31\x71\xa0\x47\xce\x8a\xa6\xb5\x73\x78\xfe\x35\x8c\x5c\xb7\x6d\x8e\x82\x1a\x11\xd4\xe3\x9c\xcd\x18\x61\x0b\x3e\x0a\x92\x21\x3e\xa3\x0a\xdc\xfb\xeb\x0b\x4e\x72\x2a\x70\xce\x98\x58\xef\x0c\xac\x87\x9c\x17\x9d\xdf\x6c\xe2\x6b\xef\xb6\xf8\xf8\xf2\x06\xfc\x35\x3e\x83\xeb\xd4\x6e\xbd\xb3\x97\xf7\x9d\x16\xbd\x7e\xc3\xf6\xb3\x3d\x39\xa9\x9c\x22\x70\x50\x04\xc7\xe8\x57\x7f\x0a\x7d\x02\xe2\x01\xe6\xec\xf0\x45\x6f\xd1\x55\x5b\x02\xad\xd0\xd9\x4f\x50\xdd\x5d\x37\x35\xf3\xf8\x8f\xb8\x6e\x6c\x62\xab\x04\x98\xb3\xd5\x55\x0d\x59\x23\xc5\x36\xd6\x88\xf3\x42\x54\x71\xde\x42\xad\xc2\xba\x35\xf1\xd2\x34\x5d\x95\x4d\x43\x83\xdb\xdc\x79\xc4\xb4\x27\x2b\x7d\x4b\xe1\x66\x87\xa0\xf4\xa0\xec\x6e\x34\xc4\x1c\x3b\x85\x23\xf1\x22\x2f\x25\xdc\x58\xa7\xd5\xe5\x34\x27\x15\xd5\x21\x2c\xb1\x17\xa6\xa4\x89\x7c\xa9\x83\xc1\xc0\x9a\x45\xd0\x66\xc3\xcd\xd3\x72\xbe\x6d\xab\xe9\xaa\x02\xcf\x5d\x87\x95\x1d\xbd\xd1\xb8\xed\x87\x7f\xc5\xe9\x3b\xf4\x26\xe9\xf8\x5f\x30\x49\x9e\x26\xc4\xdf\x33\x47\x1f\x60\x8e\xc0\x94\xcc\x9f\x26\xdb\xf5\xaf\xca\x27\x8d\x6c\x70\x8b\x84\x56\x7d\x24\xa0\x80\xe2\xca\xbd\x73\x18\xf8\x93\x1e\xee\xd0\x68\x85\x02\x54\x31\x21\x1d\x6a\x1e\xae\x35\xce\x52\xd1\x54\x71\xde\xa7\x41\x11\x5d\x33\x58\x41\x18\x86\xc4\xe6\xc3\xf3\xa0\xe3\xd3\xb7\x82\x8e\xda\x92\xf7\x11\x75\x8b\xfe\xcf\x01\x15\x81\x93\xd4\xad\x7c\x58\x56\xe3\xc3\xb2\x6d\x7c\x58\x66\xd8\x31\x8b\x74\x79\x5c\x60\xba\x0d\xf4\x6c\xe7\xc9\x68\x4d\xf8\x02\x04\x22\x55\x98\xe0\xd5\x2d\xe1\x43\xa2\x5d\xc1\x5a\xd4\xab\xca\xeb\xdb\x43\x02\x51\xc8\xe2\xb1\xd2\x5e\xe2\xf6\x84\x40\xe5\xc7\x30\x7a\x71\x13\x0f\x61\xb4\xed\x76\x5a\xa4\xcb\x88\x7c\x59\x82\xb7\xce\x34\xe0\x17\xa4\x51\x49\xa6\xac\xc8\x2c\xbb\xa0\x9d\x48\x24\xd7\x3f\x8e\xf5\x50\x36\x3a\x1e\x54\x0d\x1f\x6a\x3c\x83\xb2\xed\xe7\xaf\x42\xff\xe8\x7d\x52\xe0\x49\x36\xda\x74\xf2\x7e\x7a\x06\x68\xb8\x5c\xbf\xd5\x72\x29\x3f\xdb\x32\x93\xdc\x61\x3f\xcb\xbb\xe8\x87\x6d\xfb\x3f\xa9\x78\x4e\xa9\xca\x16\xfe\x27\x1b\xff\x1f\xe0\xb8\x87\xe1\x8c\x8d\x10\xb8\x81\x0d\xaf\xb5\xb0\x1a\xdd\x49\x90\x1d\x8c\x7f\x96\x48\xde\xb7\xb1\xea\xbf\xed\x60\x3c\xd5\x36\x6d\xcb\xa8\xa3\x5a\xf6\x7b\xf5\xa0\x38\x9b\x71\x66\xed\xe7\x2b\xe7\x24\x85\x73\xc2\x4c\xd8\x3f\x77\xe8\x8c\xc3\xe5\x2d\x47\x88\xaf\xd7\x71\xb5\x47\x3f\xab\xcb\xf9\x93\x77\x8e\x7e\xf9\x1f\x9c\x23\x35\xc3\xf6\x28\xfd\x6b\x0f\x92\x6e\xfc\xdb\xcf\xd2\x0f\x8d\x67\x49\x2e\xd1\x5f\xd0\xef\x70\xdf\x4d\xc9\x5f\xd5\x79\x99\x92\xf1\xef\x26\x98\x20\xf9\xdf\x1d\x4c\xb0\x40\x7b\x18\xe3\xf8\x77\x5d\xbc\x97\x74\x3a\x05\xd1\x3e\xdb\xfe\x13\xb7\x57\x85\xd2\x60\xcc\xdc\xa4\x3d\xd0\x22\x63\x0f\x23\xf5\x67\x6e\xb5\xff\xc0\xff\x09\xde\x52\xff\x0b\xff\x47\xef\xe3\x4a\x80\xef\x87\xb3\x9b\x92\xf0\x7b\xc2\xd7\xeb\xff\xe8\xfd\x4c\x6e\xfe\x42\x45\xf5\x0b\x22\xc4\x6f\xc2\xb2\x0e\x4a\x92\xcf\x3a\x9d\xa6\xc6\x75\x50\xa8\x4e\xa7\x3d\xd6\x0c\x3e\x9d\x32\x69\x63\x8c\x9f\x36\x36\x2a\xb1\xba\xca\xf4\xc7\x04\x09\xd2\x38\x96\x4f\xb4\x10\x7f\x7a\x9f\xa7\x8b\x25\xc9\x60\x4d\x9a\x5b\xa5\x8b\x25\xe3\xe2\x72\xca\xe9\x52\x94\xcd\x59\x3e\x2a\x8f\xa5\xef\xe7\x69\x51\x10\xcf\xd7\x25\xf7\x02\xba\xd6\xb9\x65\x1e\x52\x31\x23\x68\x90\x28\x96\x77\x41\x10\x25\x88\x11\x94\x12\x54\x12\xb4\x22\x28\x97\x6b\xe5\x5d\x7a\x03\xf2\xda\xdb\xe8\x33\x52\x53\x15\xfb\xdd\x3e\x91\x8b\xf9\x14\xf7\xe5\x22\x93\x49\x12\xcb\xbf\xee\x60\x92\xa8\x77\xc3\xdd\xd6\xa9\xc6\x76\xe7\x77\xb8\xbf\x21\x64\x14\xaf\x08\xd6\x53\xd7\x2b\xc8\x17\x71\x45\xa7\x77\x28\x77\x69\xf7\x84\x97\x94\x15\x65\xaf\x60\x19\xe9\x2d\xe0\xa0\xbf\xfa\xef\x78\x34\x8c\x3f\x67\xdd\xe4\x73\x2f\x19\x05\xcf\x9f\xff\xb8\x96\xcf\xbf\x7b\x95\xa0\xf0\x00\xe4\x10\x85\xab\x2f\x97\x2e\x27\xe3\xc1\xa4\xd3\x69\x0f\xcc\xdb\x1e\x44\xf6\x21\xb8\x24\xe2\x64\xa1\x8d\x64\x12\x54\x34\x85\xea\x5c\x91\x78\x26\x29\xdb\xe1\x7f\x8d\x62\x46\x70\x1f\xa5\x6a\xae\xfe\x4b\x26\xa3\x92\xe0\x8c\x4d\xe1\xa4\x6a\xaf\xae\x57\xe4\x8b\x38\x65\x19\x89\xdb\xed\x04\xa5\xa4\xc7\xd4\x76\x8c\x4b\x82\x9e\xa6\xf3\x94\xa7\x53\x41\xf8\x61\x2a\x52\xa5\x99\xdb\xd8\x66\x49\x54\x18\x14\x46\x70\xb7\xcb\xc8\xef\xf7\x36\xc9\x50\x90\x51\x1c\x53\xd5\x76\xb8\x1f\x92\x9e\xdc\x40\x83\x1e\x2b\x8c\x67\xdb\x19\x69\xae\x97\x12\xc8\xba\xd7\x5b\xb2\x52\xe8\x4a\xe2\xbe\x1c\x5c\x61\xc4\x14\x18\xe3\xff\x6c\x0e\x54\x36\xf2\x11\x53\xfe\xa8\xaf\x8e\x63\x93\xd8\xf6\xf8\xc8\xed\x04\xcc\xc8\x7e\x5b\x51\x4e\xe2\xf6\x3d\xe1\xe2\x4b\xbb\x1e\x3b\x32\xfe\x0b\x26\x3d\xbe\x2a\xce\x8a\x0f\x8c\x2d\xd7\x6b\xfd\xa2\x2d\x9a\x13\xbf\xbd\xbf\xc0\x1a\x0c\xe5\x7e\xaf\xf9\x1a\x83\xc4\x4d\x9c\xc0\x57\xa3\x13\x84\xff\x8a\x34\xbf\xbc\xc9\x2e\xc6\x3b\x19\x04\xf5\x93\x8d\xb2\x06\x20\xf8\xa7\x96\xd6\x2c\xce\x94\x9a\xe0\x7c\x4b\xd0\x2c\xa3\x1c\x01\xa8\x80\x3b\x2a\x4b\x79\x54\x58\x8f\x69\x4f\xfe\x31\xf3\x55\x09\x9c\x9e\x93\xce\x35\x9b\x35\x65\x03\x87\x58\x6a\x08\x73\x82\xb6\x83\xc8\x06\x9e\xa8\xfa\xd0\xbb\xbe\x3e\xbf\x38\xfb\x78\x72\x79\x74\x7d\x72\x7a\x79\x75\xf1\xe9\xe3\xd1\xe9\xd5\xc1\xd5\xc9\xd9\xe9\xf5\xb5\xba\xef\xef\x09\x7e\x39\xab\x25\x79\x1f\x49\x44\x8b\x28\x8d\x3d\xd5\xd3\x36\x38\x83\xb9\x27\xc9\x7d\x2d\x1c\xe6\xa3\x3c\x74\x4b\x12\x3f\x12\x74\x4f\xc6\x8f\x64\xa2\x80\xfd\x2d\xc1\x4f\x69\x99\x2e\x87\x7f\x45\x72\x7e\x87\x19\x41\xe7\x86\x15\x82\x3c\x3d\xdf\x21\x45\x69\x9e\x0f\xdf\x23\xc7\x00\x19\x7e\x44\x3c\x9d\x92\xe1\x09\x92\x64\xd8\xf0\x14\x79\xd4\xd8\xf0\x18\x69\xad\xf4\xe1\x57\x04\x3a\xe9\xc3\x77\xc8\x6a\xa4\x0f\xcf\x91\xd5\x47\x1f\xa6\x88\x15\xc3\x25\x01\x9d\xe8\x05\x41\x86\x6e\xfa\xc9\x90\x4c\xbf\xa1\x45\xba\x1c\xfe\x88\x60\xea\x87\x73\x82\xd4\x3d\x39\xfc\x65\xe3\x99\x02\xdc\x02\x29\x26\x62\xa5\xf9\xaf\xe4\x5e\xfe\xf6\x6a\xbd\xfa\xe3\x1f\x77\x5a\xd1\x1f\xa3\xff\x3b\xa3\x39\x39\xbb\x27\xfc\x9e\x92\x87\xe8\x2f\x74\x7a\x97\x96\x65\x94\xd3\x1b\x9e\xf2\x47\x90\x3c\x01\xac\x88\xd2\x22\x8b\xc0\x0a\x2b\x5a\xb2\xe5\x92\xf0\x32\x2a\x48\x0a\xae\xed\x29\x8f\xb8\x1c\x10\x44\xb7\x27\x39\x51\x8c\x75\xa8\x5b\x03\xc8\x68\xd0\x1b\x7c\xd7\x1b\x40\x52\x4e\xa7\xa4\x28\x89\x7c\x7e\xcf\x96\x8f\x9c\xde\xce\x45\x14\x4f\x93\x68\xaf\x3f\xf8\x2e\x3a\x26\x19\xe1\x74\xca\xa2\xff\xa2\xf7\x2c\x67\xd0\xea\x94\x15\x2a\xa2\x34\xe3\x65\x2b\xfa\xa3\x2c\x79\x4e\xf8\x82\x96\xa5\xf6\xf4\x35\x27\x9c\xdc\x3c\x46\xb7\x3c\x2d\x04\xc9\x50\x34\xe3\x84\x44\x6c\x16\x49\x18\x76\x4b\x90\x1c\x44\x5a\x3c\x46\xb2\xd3\x4c\xd2\xbf\x42\x61\x50\x51\x1a\x4d\xd9\xf2\x51\xd6\x07\x6e\xc2\x69\x19\x95\x6c\x26\x1e\x52\xae\x46\x9b\x96\x25\x9b\x4a\x70\x9b\x45\x06\x70\x2a\x5f\x4e\x72\xc6\xca\x28\x16\x73\x12\xb5\x2f\x75\x89\x76\x02\xed\x64\x24\xcd\x65\x85\x10\xeb\x95\x44\xe6\x2b\x20\x2d\x6c\x25\x22\x4e\x94\x9d\x05\x65\x05\x8a\x68\x31\xcd\x57\x99\xec\x89\xf9\x9c\xd3\x05\xd5\x8d\x40\xcc\x00\x39\x39\x72\xcc\xb2\xea\x55\x49\x10\x74\x18\x45\x0b\x96\xd1\x99\xfc\x27\x30\xbe\xe5\xea\x26\xa7\xe5\x1c\x45\x19\x2d\x75\xec\x6d\x14\x95\x32\x11\xa6\x1a\xc9\xd1\xbc\x62\x5c\xa2\x13\xd0\xb9\x29\x5b\x52\x52\x1a\xdf\xe8\xa6\x8f\x90\x4d\x36\xb4\x94\x93\x2b\xf4\x74\x81\x47\xf5\x87\x39\x5b\x84\xe3\xa1\xd0\xab\xd9\x8a\x17\xb4\x9c\x2b\x09\x65\xc6\xa2\x92\x41\xbb\x80\x8f\x68\x21\xec\x8c\xe5\x39\x7b\x90\x63\x94\xb8\x22\x58\x84\x95\x43\xbd\x8a\x57\x73\x08\xf7\x73\x4f\x60\x58\x6a\x27\x14\x4c\xd0\xa9\x9a\x7f\x58\x91\xa5\x5b\x69\xfd\xa9\x9c\xa7\x79\x2e\xf1\x41\x35\x7d\x24\x83\x43\x1f\x8e\x8c\xcb\x6e\x94\x22\x2d\x04\x4d\xf3\x48\x5e\x24\xb2\xdd\xea\x88\x7b\xa6\x1f\x3f\x1e\x45\x97\x67\xc7\x57\x3f\x1f\x5c\x1c\x45\x27\x97\xd1\xf9\xc5\xd9\x4f\x27\x87\x47\x87\x51\xfb\xe0\x32\x3a\xb9\x6c\xa3\xe8\xe7\x93\xab\x1f\xcf\x3e\x5d\x45\x3f\x1f\x5c\x5c\x1c\x9c\x5e\xfd\x12\x9d\x1d\x47\x07\xa7\xbf\x44\x7f\x39\x39\x3d\x44\xd1\xd1\x7f\x9e\x5f\x1c\x5d\x5e\x46\x67\x17\xb2\xb6\x93\x8f\xe7\x1f\x4e\x8e\x0e\x51\x74\x72\xfa\xfe\xc3\xa7\xc3\x93\xd3\x1f\xa2\x77\x9f\xae\xa2\xd3\xb3\xab\xe8\xc3\xc9\xc7\x93\xab\xa3\xc3\xe8\xea\x0c\xda\xd4\xb5\x9d\x1c\x5d\xca\xfa\x3e\x1e\x5d\xbc\xff\xf1\xe0\xf4\xea\xe0\xdd\xc9\x87\x93\xab\x5f\x90\xac\xeb\xf8\xe4\xea\x54\xd6\x7c\x7c\x76\x11\x1d\x44\xe7\x07\x17\x57\x27\xef\x3f\x7d\x38\xb8\x88\xce\x3f\x5d\x9c\x9f\x5d\x1e\x45\x07\xa7\x87\xd1\xe9\xd9\xe9\xc9\xe9\xf1\xc5\xc9\xe9\x0f\x47\x12\x2a\xf6\xa2\x93\xd3\xe8\xf4\x2c\x3a\xfa\xe9\xe8\xf4\x2a\xba\xfc\xf1\xe0\xc3\x07\xd9\x9a\xac\xee\xe0\xd3\xd5\x8f\x67\x17\xb2\xa3\xd1\xfb\xb3\xf3\x5f\x2e\x4e\x7e\xf8\xf1\x2a\xfa\xf1\xec\xc3\xe1\xd1\xc5\x65\xf4\xee\x28\xfa\x70\x72\xf0\xee\xc3\x91\x6a\xed\xf4\x97\xe8\xfd\x87\x83\x93\x8f\x28\x3a\x3c\xf8\x78\xf0\xc3\x11\x94\x3a\xbb\xfa\xf1\x08\x06\x29\x73\xaa\x6e\x46\x3f\xff\x78\x24\x53\x65\xab\x07\xa7\xd1\xc1\x7b\xf0\xa4\x75\x76\x1c\xbd\x3f\x3b\xbd\xba\x38\x78\x7f\x85\xa2\xab\xb3\x8b\x2b\x5b\xfa\xe7\x93\xcb\x23\x14\x1d\x5c\x9c\x5c\xca\x99\x39\xbe\x38\xfb\x08\x23\x95\xb3\x7b\x76\x2c\x73\x9d\x9c\xca\xa2\xa7\x47\xaa\x22\x39\xf3\xe1\x02\x9d\x5d\xc0\xfb\xa7\xcb\x23\x5b\x67\x74\x78\x74\xf0\xe1\xe4\xf4\x87\x4b\x59\x58\x8f\xd5\xe4\x97\x8b\xfc\xaa\xe5\x09\x78\xc0\xe2\xa9\xa6\x8c\xa3\x2c\xa5\x9a\x71\xda\x05\x98\x29\x8d\xd4\x5f\x4f\x67\xc5\x3c\x6e\x54\x39\x07\xa5\xfe\x74\x91\x8d\x48\xcc\x93\xa1\xe8\x9d\x03\xb4\x94\xb9\x37\x89\x22\xac\x7d\xb6\x59\x60\x7a\xa5\xd0\x94\x67\x2f\xd2\x86\x6f\x06\x36\x35\x7f\x2d\xd2\x7b\x7a\x0b\xea\x00\xa2\x49\x14\x2a\xf0\xb8\x7d\x94\xdd\x92\x36\x6a\x5f\x71\x9a\xc1\x8d\xd9\x3e\xa6\x9c\xcc\xd8\x97\xf6\x44\xbb\x14\x70\x4e\xaa\xba\x78\x90\x28\x63\x06\x5b\x6f\x6f\x55\x12\x7e\x70\x2b\xb1\x4a\x6b\x8f\x33\xe6\x93\xe4\x7b\xdc\x37\xe2\xa2\xff\x97\xbd\x77\xdd\x72\x1b\x37\x17\x05\xff\xeb\x29\x4a\x9c\x1d\x1e\xc2\x82\x64\xc9\x9d\xce\xc9\x66\x15\x4a\xcb\xed\xb6\xd3\x4e\xda\x76\xa7\xed\x4e\x5f\x64\x4d\x87\x45\x41\x25\xc4\x14\xa0\x80\x50\x95\xab\x8b\x5a\x6b\xfe\xcf\x4b\xcc\xb3\xcc\xa3\xcc\x93\xcc\xc2\x87\x0b\x01\x8a\x2a\x3b\xfb\xec\xb3\x66\xd6\xcc\xf6\x0f\x97\x88\xfb\xf5\xc3\x77\xff\x7c\x9c\xb6\xe9\x21\x73\xc6\x42\x34\x4d\xed\xcb\x6e\x5f\xd7\xf9\xb1\xd0\xbe\x0d\xf0\x16\xe2\x73\x60\x70\x36\x9c\xe2\xb8\xba\xa7\x3a\xfb\x04\xea\x9a\xf0\xd6\xa8\x17\x42\xe8\x70\xc8\xbb\x1d\xc9\xfe\x8e\xbc\x26\xc7\x09\x8e\xa7\xf4\xad\x82\x9e\xc7\xa1\x63\x39\xe7\xf8\x10\x01\x89\xe6\x10\xd0\x7e\x1a\x2d\x54\xce\x66\x5e\x81\x7f\x06\x5a\x7a\x1a\x4d\xd0\x84\xb1\x5d\xd1\xc5\xd2\xad\xe2\x44\xdc\x72\x2a\xbf\x76\x78\xbd\x7d\xfd\xff\xc6\xe8\xed\xe4\x9a\xaa\x67\x62\xbb\xdb\x2b\xba\x7a\xab\xee\x40\xa9\x0c\x5c\x07\x78\x56\xeb\x5c\x2e\xd4\x32\x0f\x64\xac\x22\xf0\x4e\xf0\xcd\xbb\x57\xdf\x1a\x47\x8e\xba\xef\xd7\xc5\x96\xce\x69\x0e\x21\xfa\x28\x07\xa2\x41\x23\xc1\x1b\x51\xab\xb6\x7a\xd1\x0d\x9b\xee\x8f\xe6\xe4\x4a\xac\xee\x06\xf5\x2d\xd3\xe8\x70\xdb\x22\xba\x2f\x8b\x9a\x9a\xae\x72\xf8\xf9\xd5\x9b\xaf\x7f\x4e\xf2\xd6\x04\x2e\x9a\x1c\x34\x02\xc5\xfe\x17\xd7\x70\x50\x56\xe7\x5a\x9d\x15\x96\x19\xe7\xc7\x13\x71\x43\xe5\xba\x12\xb7\x98\x07\x1f\x3f\xe1\x3a\xf8\xfa\xd9\xc5\x8b\xcc\x8a\xbd\x12\x4d\x5d\x4a\x51\x55\x8d\xce\xad\x8a\x3b\x64\x03\x48\xca\x51\x3d\xe2\x68\x4e\xf3\x22\xd3\x6b\xd4\x8d\x4d\xd7\x6e\xb5\x3e\x86\x16\x13\xd2\x6b\x34\xef\x7c\xe7\xd4\x0a\xe4\x69\x9a\x0e\xb3\xa1\x3d\xc1\xaf\xde\xbe\xe4\xbb\xbd\x32\xd6\xf2\x96\xa4\x68\x9a\xa1\x5f\x3c\xf7\xe3\x95\x58\x51\x84\x2b\x5d\xf9\xf1\xab\xb7\x2f\x9f\x9f\xcd\xa6\x76\x7c\x3d\x97\x31\x20\x8b\xcb\x60\x8c\x33\xa3\x88\xb6\xcf\x67\x60\xb7\x30\xaf\xc0\x67\x54\x64\x36\x74\x6a\x0f\xdd\x8f\xe7\x06\xc3\x1b\xb4\x20\xa4\xcc\x66\x53\x34\x8f\x36\x1b\x2c\xba\xc0\x92\x40\xac\xd7\x35\x55\xdf\xc1\xb9\x31\x4e\x50\xce\xa5\xf1\x8f\x4a\x81\xa6\xb6\xcd\xbd\x65\x57\x15\xe3\xd7\xe7\x48\x92\x8c\x92\xbe\x2c\x14\x35\x65\x99\x8e\x60\x9a\xe6\xce\x93\x67\x05\xa5\xa9\x39\x49\x26\x94\x9f\x39\x60\xfa\xf7\x1c\xcc\x04\x17\xc9\xbb\x6f\x34\xbc\xfb\x5a\xff\xa7\x1f\xbc\x64\xe9\x41\x57\xdb\x98\xa6\xc8\x6b\x8d\x8b\x95\xe0\x07\x3f\x93\x38\xd9\x09\xe7\x81\x61\xbe\xd6\xc0\x5d\xe6\x7a\x87\x3b\x37\x30\x5e\xa5\xfc\xd4\xf2\x45\xc6\x3a\xdd\x00\xd5\xe1\x3d\x9b\xaf\xb2\xf0\x13\xe5\x34\x32\x9f\x71\xc1\x21\x4c\x10\x11\x07\x27\xd2\x14\x7c\x9a\x78\xb0\xf1\xc9\xcd\x74\xe0\xa4\x14\x5b\xdd\x97\x9b\xce\x77\xc2\xb9\xe1\x44\xa9\xee\x7d\xf2\xf5\x9b\x67\x40\x7a\xfd\xfa\xdd\x1b\xe3\x33\xf3\xd7\x17\x6f\xbe\xfd\xf6\xcd\x8f\x2f\x5f\xff\x09\x73\x22\xe7\x34\x57\x98\x11\x39\x57\x39\xc5\xa2\xcb\x6f\xf8\xde\xb8\x8e\x1b\x88\x49\x4d\x15\xf8\xb8\xc8\x38\x9e\x22\x08\xd6\xab\x9e\xf3\x55\xc6\xf0\xd4\xba\x7f\xc4\x35\xde\x13\xa1\x87\xb3\x15\xfc\x29\x2f\x69\xad\x84\xd4\x77\xa3\x60\x9c\x82\x4a\x34\x1d\x12\xb2\x4f\x53\xa5\xff\x34\x0d\x07\x57\x67\x05\xe3\x75\xc6\xdc\x6c\xcd\x19\x20\x84\x64\x35\xc9\x0a\xb2\x47\xed\xde\x36\x8d\x3f\x14\x75\x9a\xae\xb3\x62\x02\x2a\x84\x76\x35\x20\x6e\x16\x1a\x12\x52\xcc\xd7\xd9\x1e\xe5\x7b\xeb\xa4\x4b\xef\x94\x3b\x63\x15\x00\xbf\xf9\x26\x33\x3f\xb0\x42\xb9\xde\x8d\x55\xa6\x10\x24\xc4\xf6\x4a\xee\x45\xeb\xea\x1d\x5d\xce\x02\x65\xec\x56\xb5\x68\xb6\x9c\x87\x1f\x79\xa2\xc4\x2e\xc1\x92\xc0\x5f\x50\xc6\x49\x0c\xa0\x7a\x27\x76\x49\x6e\x7f\x7f\x4b\xd7\x2a\x01\xe5\x2f\x7f\x1f\xd8\x3a\xf3\x8b\xc0\xdd\x9c\xc1\xac\xc2\x9b\x1b\x3d\x78\x7a\xc1\x59\x5e\x5c\xc2\xf4\xc5\xf8\xb5\x2d\xd2\x34\xcc\x07\x45\x58\x48\xaf\x21\x46\xf5\xef\x96\x8f\x10\xaa\x50\x1c\xad\xc1\x93\xde\x35\x78\xb2\x4c\xd3\xf0\x0b\x73\xb2\xcb\x14\x86\x25\x40\x98\x99\x8f\x4a\xcf\x19\x61\x41\xe4\x7c\x3c\xcb\x67\xad\x6b\x41\x25\x76\x23\xc2\x1f\x09\xac\x1f\x06\xa5\xc4\xd6\x7d\xe9\x1a\x23\xc2\xe0\x37\x50\x1c\xf6\xa3\x63\x93\xe5\x06\x9b\x7c\xb4\xeb\x0d\xab\x9b\x27\x7a\xc1\x31\x27\xe6\xd3\x58\x42\x7d\xaf\x5b\x49\xf2\xe4\x2b\xe8\xc7\x07\xe0\xdd\x15\xb2\xa6\x2f\x2a\x51\xa8\x8c\x2e\x92\x2b\x21\x57\x54\x26\x23\x39\x4a\x7e\x64\x2b\xb5\x49\x96\x68\xd4\x5f\x82\xb7\x25\x22\x63\xad\x8e\xfe\x92\x89\x86\x57\x7c\xcc\xd4\x22\x31\x70\x31\x19\xd1\x25\x56\x0b\x7b\x1a\xe0\x4b\x2e\x92\xb2\x62\xfa\x9d\xb4\x5f\x41\x49\x19\x95\x34\x20\x1c\x46\xf4\x92\xab\x2c\x2a\x6a\x47\xaa\xd3\xf9\x22\xd9\x16\xf2\x9a\xf1\x64\x94\x25\xdf\x50\x98\x39\xbc\x23\x89\x39\x89\xb0\x2c\xe8\xf3\x6a\xd8\xf5\xca\xed\x02\xa2\x25\xca\x43\xd3\xd9\xeb\xd0\x3e\x4d\x3f\x29\xf0\x9a\x74\x0f\x28\x37\x8f\x4f\x9a\x1e\x61\x3b\xde\xc1\xc3\xfd\x06\x7a\xcd\xef\x7c\xff\x4e\x7d\xfd\x56\xaf\xb3\x4e\x37\x0b\xee\xb4\xbd\xe0\x8d\xbe\xea\xb0\xd3\x0c\x8c\x0d\xb5\x86\xd5\x09\xa9\xc5\x33\xa3\x5d\xab\x71\xba\xb3\xe2\xac\xac\x40\x77\xb9\x8e\x0c\xe6\x0f\xf8\x01\xeb\xa3\x50\x4f\xb1\x83\x7d\x8f\xbc\xc6\xfb\x42\x2e\x07\x7c\x62\x85\xbb\x57\x15\x25\xe1\x47\xd3\x0c\x67\x98\x7b\x0f\x07\x90\x3f\x9c\xe2\x04\x74\xcd\x13\x06\x0f\x64\xc6\x27\xb7\x92\x29\x9b\x87\xf0\x29\x3f\x0d\x7c\xf2\x81\xde\xc1\xaa\x74\x31\xe4\xf8\x3c\xca\x34\xa5\x59\x20\x02\xc4\x12\x7c\x80\xd2\x4c\x81\xa1\xc0\xe1\x90\x21\x7c\x7b\xa4\xbf\xef\x50\x51\x4d\xc2\xd3\xf9\xa9\x31\x28\xe7\x20\x42\xe2\x76\x92\xf9\x70\x8a\xc3\x19\xea\x6f\x37\x23\xe0\x57\xe7\x14\x24\x74\x98\x1e\xf0\x73\xa7\x50\x63\x7c\xb5\x35\x4d\x24\x08\xf5\x78\xcc\xec\x5c\x5d\x74\xa1\xd3\xb9\x72\xab\x1e\x40\xae\x85\x6a\xb5\x66\xc1\x15\xa1\x44\xb6\x83\x56\x01\x21\xe6\x36\x1a\x14\x5f\x2f\x58\x9a\x82\xfe\x1a\x91\x0b\xbe\x0c\x54\x15\x5b\x74\xed\x6d\x80\x0f\x3c\x07\xaf\x72\xf8\x1e\x20\x55\x6e\xa1\x17\x9d\xc0\xc1\xc5\x06\xb0\xe5\x06\xd8\xd1\x89\x39\xe6\x87\xe0\x0a\xbd\x09\xb4\x2f\x0e\x46\x3c\xb9\xce\xe0\xbe\x68\x9a\x08\xa2\xc9\x7f\x25\xf6\x7c\xc5\xf8\xf5\x33\x00\x13\xdf\xd3\x52\x79\x0a\x6d\x97\x51\x07\x6d\xb9\xf9\x30\xd0\x76\xa0\x0c\x74\x95\x58\x59\x68\xca\xb1\xf2\x50\x56\xa7\x5a\xb8\xca\xad\xdc\xf2\x74\x4f\x96\x41\xbe\x41\xf7\x07\xeb\x33\x41\x37\x98\x9b\x76\xb1\x12\xbb\x1c\xfa\xb2\x17\xd5\x36\x3c\xb6\xd9\xf6\x5a\xbb\xae\xc7\x50\xf4\x80\x0b\xd2\x47\xbb\x5c\x67\x9d\x87\x0c\xe5\xf7\x07\x5c\x93\xc2\xac\xa5\x26\x66\x0c\xa4\xfc\xd1\x7c\x0a\xbb\xc6\x7b\x52\xd8\x85\x6d\x8b\x7c\x63\xbf\x85\xcd\xd1\x28\xb9\xc5\x4d\xa1\xf6\xb8\xc6\x6b\x9f\x62\x0a\x8f\xf7\xfa\x2d\xae\x9a\x66\x6d\x36\x64\x05\x34\xca\xa0\x1a\x93\x9b\x6c\x85\x93\x8f\x09\xc2\x6b\xfb\xfb\x4e\xbf\x67\xa6\xf7\x31\xa9\xb0\xeb\x64\x4c\xd6\xee\xb0\xbc\xcd\x44\xb0\xc9\x1f\xff\x73\xde\x56\x38\x16\x58\xb4\x8b\xa7\xfc\xe2\xe1\x9a\xe8\x93\x84\xf7\xe4\x4d\xa6\x34\x01\x52\x80\x27\x75\xc2\xf4\xd7\x8a\x04\xcf\xd8\x7a\x62\x5e\xb1\x77\x62\x07\x2b\x81\xf0\xa6\x2f\x5b\xbf\x12\x26\x7f\x20\xd3\x54\xa4\x69\xb6\xd7\x7b\x47\xfc\x9b\x06\x9f\x1a\x33\xdc\xc3\x56\x87\x19\xb0\xf5\x53\xe4\x22\xc3\xbd\xcd\xee\xf5\x31\xa9\x75\x85\x31\x54\x1b\xaf\x30\x1c\xa2\x1a\x8a\x8e\x4d\x8d\xf1\xc6\x9e\xa1\xda\xee\xab\x3d\x3c\xb5\xbf\x35\x10\xc1\x77\x62\x9e\xaa\x77\x62\x47\xa6\xd8\x7d\xe9\xd1\x92\x29\x1e\xf2\x34\xb5\x5a\xe0\x37\xf1\xa4\x7c\x25\x84\xef\xfa\x72\x74\x03\x68\xb0\x83\xc1\x91\xd5\xf8\x06\xef\xdc\x91\xb5\x5f\x30\x42\xb2\x19\xdf\xe1\x9d\x3d\xe2\xf6\xa3\x1d\xce\x4d\x3c\x9c\x3b\xa7\x7a\xc6\xd3\x74\x28\xe7\xaa\xc5\x7e\x2b\x94\x2b\x42\x48\x15\x90\x40\x55\x48\xd3\x64\x3b\xb2\xcd\x76\x58\x21\x84\x77\x1d\x2d\xfe\x7f\x11\x45\x0d\x8f\xd0\x6c\x89\x7b\x98\x11\x47\x6f\xf5\x47\xe3\x51\x94\xb5\x1b\x2a\xc3\x6b\xe7\x58\x3a\x8c\x73\x2a\xed\x45\x84\x43\x79\x54\xdc\xdc\xaa\xa8\xbc\xbb\x95\x53\x30\x39\x9e\x4f\xf3\x5d\x26\x91\x26\xf5\xcd\x4f\x8f\x2b\xee\x09\x9c\x98\x62\xcc\x01\x8c\xf1\x76\x91\xed\xb9\x19\x73\x03\xd6\x78\xb0\xe0\xf6\xf4\x30\x77\x6e\x84\x57\x58\x7b\x9b\xed\x51\x64\xba\xd0\x22\x2d\xbd\x68\xb8\x0a\xd0\x70\x15\x85\x7e\x49\xd6\xec\x23\x08\xff\x35\x6c\x08\x89\xcd\x36\xe4\x9f\xb9\xe4\xa2\x25\x43\x86\x43\x99\xa6\x1f\x32\x89\x22\xe3\x07\x4b\xc1\x37\xcd\xd0\x51\x8e\x1e\x59\x2f\xb3\x4f\xd3\x82\xa1\x35\x47\x54\xfd\x5c\xa5\x69\xc2\x05\xa7\x66\x90\x1a\x19\x97\x05\xaf\xd7\x42\x6e\x13\x74\x8e\x14\x78\x5f\x09\xca\x07\x3e\xa2\x3e\x4d\x06\x7f\xdf\xb5\x5d\x3c\x3a\x88\xbf\xef\x3d\x88\xbf\x8f\x0e\xe2\xef\x97\x6e\x83\xa7\x66\x3b\xa7\x07\x5c\x11\x36\xd7\xab\x02\x04\x5a\x0d\x21\x06\xf4\x72\xdf\x30\x7a\xbb\x13\x52\x19\x82\x68\x4f\x9e\x66\x15\x66\x81\x89\x79\xe9\x5c\x35\x59\x3c\xd9\xf0\x1d\xa0\xf4\xbc\x25\x2d\x4b\x52\x64\x42\xb7\xd9\x52\x97\x10\xad\xfa\x13\x97\x01\xe5\x25\x49\xcc\xf1\x35\x2d\x7e\x8a\x8f\xc0\xad\xff\xb8\x8f\x59\x89\x61\x9c\x7a\x0a\x8e\x86\x2d\x7d\xdf\x4d\xf3\x21\xab\x10\xda\x93\x75\x3b\x91\x15\x39\x7e\xfd\xf0\x8e\xac\xdc\xf3\xb5\x25\x2b\x03\x15\x07\x7b\xf3\xb2\xaf\x01\x54\x05\x80\x0d\xef\x2d\xc4\x22\xbb\x11\x64\x5a\xc0\xac\x8b\x02\xf0\x0a\x41\x1d\xde\x1b\x20\x46\xb6\x23\x93\x7b\xb0\x31\xbe\x13\xbe\x07\x59\xa4\x63\x95\x67\x92\x48\x7d\x5f\xdb\xf0\x53\xa6\xcd\x9b\xb9\xcc\x25\xfc\x6e\x9a\x29\xb6\x63\x32\x89\x4a\xec\x4c\x9a\x05\x93\x26\x55\xda\x9b\xef\x87\xe9\x32\xcc\x17\xe4\x44\xb6\x20\x81\xc2\x1b\x4c\xfc\x91\xc7\x9e\x62\x33\x8f\x58\x49\xf3\xe8\x40\x7e\xd9\x7b\x20\xbf\x0c\x89\xf7\x2f\x97\x39\x78\x99\x00\xef\x57\xd4\xb3\x99\x92\x62\xaf\x84\xbf\xd9\xd6\xd3\x4f\x41\xbe\x07\x7f\x17\x02\x33\x0d\xb8\xe0\x14\xdf\x1b\xc0\x53\xc4\xcf\x16\xa0\x3a\xe3\xc2\x20\x3c\x06\x37\xf4\x05\x1d\x8e\x04\x7f\x5d\x05\x87\xc4\x1c\x1c\xd2\xd8\xdf\x6e\xd1\xe2\x52\xe6\xc7\xc1\x5c\xa2\x7b\x87\x80\xc1\x66\x17\x11\xfe\xe5\x9b\x3e\x68\x04\x21\xd0\x5b\xaf\x11\x44\xad\xec\x53\xce\x7b\x9e\x81\x43\x2a\x7a\xc0\xe0\xb6\xe9\xbe\x90\xb4\xc8\xdf\x65\xfa\x03\x1d\xd0\x01\xa1\x49\x2d\xa4\xca\xb2\x7e\xeb\xbf\x89\x2e\x3e\xa6\xf0\xe7\x80\x34\x42\xb2\xef\xd5\x04\x74\x30\xcc\x4c\x91\x13\xb7\xc9\x1e\x2c\x5d\x92\xe8\xf9\x49\x53\xde\xa6\x7c\x63\xf1\x02\x04\x71\x74\x7d\x44\xff\x6a\x31\x5d\xea\xe9\xe5\x7b\xfb\x03\x50\xbd\x7a\x57\x31\x95\x25\xe3\x04\x2d\x66\xde\xa2\xad\x1c\x65\xeb\x79\x32\x4e\x46\xeb\x3c\x49\x02\x00\xfd\x8f\xd8\x78\xf9\xe8\x54\x7d\xd1\x7b\xaa\xbe\x08\x4f\xd5\x17\x4b\xc3\x5f\x65\x84\xcf\xbf\xcb\x80\xf5\xa4\x70\x9d\xc9\xd6\xa6\xe5\x63\x26\x41\x67\xf9\x10\xda\x7e\xb4\x4b\xf2\xaf\x48\x0d\x10\x96\x21\x56\xa3\x5a\xb0\xa0\x2f\xef\xa8\x27\xeb\x2b\x77\xed\x80\x72\x38\xce\xff\xd6\x5c\xed\xde\xba\xdf\xbb\x57\xdc\x51\xef\xe6\xe8\x45\x08\xf6\x88\xbb\xc3\x17\x63\xd9\x23\x79\x88\x2c\x4c\x3c\xf1\x03\x87\x38\x91\x86\xf8\x37\xf7\xc5\xa0\x03\xee\x3a\x18\x06\x9b\xbe\x70\x89\x49\x49\x0e\x2d\x2f\xc9\x7a\x9f\xcd\x1e\x03\x48\x32\xc0\xc6\x42\x16\x25\x76\x8f\xaf\x7b\xad\x8c\xd4\x82\x2e\x23\x45\xde\xaf\x3d\xcd\x4b\x64\x78\x60\xa6\x4b\xcb\xca\x7e\x65\x2c\x3d\xec\x84\x79\x7c\x33\xb9\xbf\xc0\x82\x58\x26\xb6\x9d\x8e\x99\x48\xc0\xc1\xd6\xf8\x8f\x98\xc3\x8c\xdc\x2c\x6b\x9d\x50\x19\x0e\x16\xcc\x74\xaf\x13\x4c\x8b\x49\x9e\xdc\x1a\xf6\x47\xa5\x13\xcd\xef\xdc\x65\xfa\x38\x8e\xe0\x6d\x68\x51\x2c\x47\x6a\xb1\x5f\x3e\x7e\x32\xe6\xf0\x07\xb3\x45\xbd\x24\x12\x9c\xd6\xa8\x45\xbd\x1c\xf3\x45\xb5\xcc\xd5\xe2\x65\x56\xa3\x65\xe8\xe8\xe9\x75\x8f\xe5\x51\x4b\x2b\xaf\x19\x5f\xcd\xcd\x1f\x7d\x9a\x9d\x7b\xc5\x4c\xe9\xe5\x69\x1b\xf9\x36\x66\x1b\xb4\x3e\xdb\x25\xc8\xa6\x9c\xd3\xd4\x2e\x93\x81\xad\xb3\xbe\x0e\x5f\xea\x05\xf3\x10\xb8\x4d\xea\x57\x27\x5e\xa8\xa5\xee\xe8\x80\x9c\xba\xf3\xeb\x38\x1e\x6f\x6f\x49\xdf\xb8\xdb\x1c\x0e\x3e\xbb\x12\x5e\x6c\x69\x82\xa5\x46\x1a\xd6\x42\x3e\x2f\xca\x4d\xdc\x29\x9d\xb8\xaf\x34\x2d\x05\xaf\x45\x45\x27\xb7\x85\xe4\x59\xf2\x77\x50\xfd\x60\x54\xfa\x12\x7f\x3f\x63\xf5\xd9\x8a\xee\x24\x2d\x0b\xd0\x7e\xd9\xd7\xf4\x2c\x28\xc6\xff\x3e\xf4\x1e\x1a\xdb\x76\x35\x35\xbb\xe6\x03\x3a\x31\x0e\x27\x56\x69\xca\x33\xa9\xc9\x03\x65\x6f\x54\x3d\x31\x6a\x3e\xe4\xed\x51\x12\xc2\x6d\x8a\x17\x6f\x45\xe5\x7c\x2a\xc2\x8a\x48\x50\x12\x37\xae\x35\xc2\xb8\xd6\x06\x4b\x6d\x7d\xf8\x4e\x58\xfd\x35\xad\x95\x14\x77\x74\xe5\xb4\xbd\xef\x1d\xbf\x2d\x37\x6e\x6f\x35\x44\xaa\x35\xe5\x5e\x48\x29\x6e\xdf\xb6\x9f\xca\xea\xbd\xc0\xd7\xba\x62\xbb\x1d\x5d\xe5\xc3\x19\xb6\x23\xca\xef\xc1\x4d\xe3\xf1\xa8\xff\x11\x3a\x68\x36\x8a\xe2\x30\x47\xe7\x3c\xd9\x96\xb3\x0e\xe1\x77\xa0\x46\x32\x71\xa8\xf9\x0b\x8d\xb0\x43\x28\x7c\x0d\x1f\x40\xb9\xfd\x59\x16\x97\x74\x19\xb8\xa7\xf3\xcf\xee\xcf\x6d\x66\x3d\xd1\x33\x9b\x5c\x89\x3d\x5f\x15\x92\xd1\xda\x51\x56\x0f\x95\xde\x15\xab\x15\xe3\xd7\x7a\x98\x42\xb2\x6b\xc6\x8b\xea\x3b\x3f\x5c\x1a\x8d\x30\x9a\x17\x39\x3d\xe5\x60\x32\xf6\x90\xd8\x90\xf7\x76\x2e\x7d\x73\x0d\x7a\x42\x47\xf5\x7d\xf3\x0f\x74\x3a\xb7\xf4\x51\x9e\x14\x57\xb5\xa8\xf6\x8a\x26\x98\x92\x6f\x4d\xc7\x7e\xce\x5e\xbf\xdf\x1d\xa9\x67\xc6\x21\xc5\x3c\x6a\x58\x70\x13\x7e\x49\x13\x05\x59\x5f\x71\xf0\xdb\x17\xd7\x30\x39\x20\xfd\x8d\xec\xa2\x02\xb0\x46\x27\xb5\xd8\xd2\x63\x24\x44\x5f\x3c\x1e\xc8\x27\x83\x5b\x07\xa2\xd0\xe8\x9d\xf8\x2a\xe6\x49\x2e\x86\x33\x9c\x6c\xeb\x04\x27\x3f\xd2\xab\x0f\x4c\x03\xfc\x57\xe2\xb7\x04\x27\x6f\x12\x43\x73\xfb\xf8\x01\x13\x25\x7e\xd0\x8b\xf9\xac\xa8\x69\x86\x46\x0e\x1e\x82\xe9\xfd\xf4\x9c\xb7\x7c\x64\x1f\x86\x88\x41\x90\x14\x88\x56\x9b\x24\x23\x36\x92\x39\x8d\xe2\x4f\x46\x12\xdd\x09\x5c\xbe\x85\x58\x7a\xaf\x61\x87\x40\x68\xd9\x8e\xff\x87\x2c\xf6\xd3\x70\x74\xb7\xf5\xda\xfe\xd6\xdd\xb6\x04\xf4\x4b\xe1\x42\x43\x54\xcb\xe0\x38\xd9\x30\x5b\x4f\xdd\x15\xcf\x92\x8f\x63\x7f\x96\x12\x14\xde\x22\x33\xc6\xf6\x34\x25\x49\x4f\xae\x12\xbb\xfe\x0c\x60\x35\xf5\xe6\x18\x7a\xa6\x37\xcb\xd2\x45\xbd\x79\xb7\x3e\x22\x46\x6f\xfe\xe2\xab\x2c\x24\xa0\x97\x24\x49\x7c\x08\xc4\x5a\x9f\x0f\xd0\x36\xfd\x96\xd5\x8a\x72\x2a\xeb\x0c\xc5\x47\xd2\x2c\xcb\x1b\x6e\x17\xd6\x5a\x8f\xb8\x0b\xe5\x05\xc6\xb6\x1c\xc8\x34\xc3\x65\x35\xad\x1d\x42\x6b\xab\x13\xf8\x61\xab\x30\x12\xa1\x8a\xb9\x21\x5f\x3b\xa6\x4a\x56\x28\x60\x83\xfc\x00\xd3\x97\x70\xac\x1b\x9f\x14\xab\x55\x34\xa3\x2c\x91\xb4\x66\xbf\xe9\x97\x30\x2c\x8e\xef\x77\x45\x5d\xb3\x1b\xc3\xc5\xb7\xfe\xe5\x8a\x40\xf4\x1a\x88\x4b\x3a\x14\x5a\xcb\x65\x09\x99\x97\x62\xae\x4e\x23\xbc\xb9\x1a\xd4\xc7\x23\xd3\xad\x46\xc3\xc0\xa2\x69\x68\x56\x64\x75\x28\x8a\xb7\x9d\x63\xeb\xc7\xb8\x46\x87\x8c\x61\x27\x55\xeb\x4c\x4a\x4e\x42\x2e\x42\x8d\x7c\x82\x85\xe1\x84\x61\x39\x01\x6f\xbc\xf5\x73\x03\x1c\x20\xa4\x7c\x68\xe2\x15\x86\x46\x89\x8b\x3a\x3b\x20\xe3\xc4\xe7\x6f\xd9\x03\x8f\x09\xee\xbe\x77\x75\xb9\xa1\xab\x7d\x45\x0d\x44\x0c\x21\xd1\x8f\x2e\x58\x37\x56\x83\x53\x3d\xa7\x69\x56\xea\xf7\xb9\x7a\xca\xd9\x16\x14\x57\x5f\xc8\x62\xeb\xc2\x1e\xc4\x4d\x87\x01\x54\x32\x4a\xba\x83\x0c\x82\xdc\x98\xf3\x62\x0e\xee\x89\x23\xa3\xc2\xd5\xd5\x18\x49\xb4\xbc\xa7\xd0\xaa\xde\x26\xdd\x86\xc5\x4d\x02\xbe\x12\x1f\x63\x70\x8c\x16\x77\x44\x16\x4b\x9f\xe4\x76\xd2\x96\xeb\x6c\xe6\x0c\xb4\xc4\xfc\xe2\xfe\x29\xd0\xb5\x4a\x8c\x87\xb0\x21\xab\x5f\x17\xaf\xb3\x50\x2c\x8c\x50\x9a\xb2\xfa\x05\xe3\x0c\x9e\x9e\x43\x6c\xd3\x85\xee\x43\x7a\x5b\xf5\x21\x93\x9e\xcc\x4c\x92\x73\x4b\x37\x58\x6c\xdf\x61\xf8\x46\xc6\x83\x3d\x39\x61\xe9\x9f\x1e\xba\x22\x4d\xff\x64\x54\xfb\xc0\xa0\x3e\xd9\x7d\x4c\xf4\x4b\x6e\x40\x99\x5c\x82\x4c\x72\xc4\xbd\xc1\x15\xa8\x29\x59\x4d\xc2\xc7\xec\x73\xf4\x94\xfe\x2d\x26\x8c\x4f\x22\xd8\x2e\x80\x11\x50\xe7\x8c\x0c\x87\x3c\x4d\xfb\x9e\xde\x6e\x79\x70\x2f\xeb\x5f\x5e\x8d\x0e\xad\xa8\xbc\xe0\xe6\xef\xc1\x70\x05\x87\x2d\x2c\xf9\x7b\x32\x52\xa3\xe4\xef\x09\x2e\xe0\xb7\xd4\xbf\x07\x11\x36\x5e\x8c\x92\x33\xf7\x84\x69\x2c\xdc\x9a\x91\xac\xce\xae\xee\xce\x92\x91\x88\x72\xf9\x19\x74\x03\xda\xd4\x42\x7e\xc0\x67\x57\xf4\xac\xde\x4b\xaa\x13\xac\x22\xf3\x19\x53\x67\x57\x74\x2d\x24\x35\xb5\x87\x49\xc7\x65\xe5\x5f\xc9\x02\x18\x47\xe3\x5a\x15\x52\xef\x15\x70\x91\xcc\x9f\x31\xe5\x2b\xb3\x97\x3e\xd7\xec\xab\x4e\x31\x79\x86\x33\xe4\x72\xdd\x7e\x9b\x54\x53\xc2\x72\x7f\xc2\x8f\x36\xd5\x55\x04\x1e\x90\x29\x62\xa8\x4b\x93\x62\xb2\x97\xf8\x27\xf2\x57\x8b\x79\x84\xa6\x59\x7f\xfe\xcf\x10\x30\xfc\xe4\x0f\x23\x84\x7c\xfe\xc9\xf6\x23\x47\x33\x88\x4b\x5b\x16\x2a\xfb\xc9\x53\x81\x01\x33\x44\xcd\x79\x1b\x29\x2a\xe7\xb0\x96\xbf\x90\x44\xa3\xc7\x09\x98\xde\x95\x95\x28\x3f\xdc\xb2\x5a\xc3\x15\xfd\x29\xf6\x5c\x51\xd9\xa6\x46\x66\x6c\x1d\x36\xf5\x62\x8a\xa7\xcb\x4f\x52\xe5\x1c\x81\xfb\x5b\x43\xf7\x3f\xce\xde\x8f\x9a\xf7\x63\xf4\xf8\x34\x87\x0c\x5c\xfc\x6f\x41\x65\x15\xa4\x94\xae\x9d\xd7\x59\xd1\x77\x29\xc6\x46\x4d\xb4\xa6\x85\x2c\x37\xd9\x63\xdc\xbc\xaf\x1f\x83\xba\xeb\xa0\x58\xd4\xcb\x34\x05\xf6\xa3\xfe\xd9\x72\x20\xb1\xc6\xb3\x62\xe2\xf2\x8d\x41\xca\xcf\x6a\xba\x2b\x24\xd8\x3d\x5c\xdd\x9d\xdd\x6e\x98\xa2\x67\xf5\xae\x28\x69\x56\xa3\xb3\x42\xd2\x23\x6a\xb3\x38\x2b\xc5\x76\x5b\x9c\x65\x18\x81\x82\x04\x2d\x56\x2e\xa4\xf5\x9e\x3c\x7e\x5f\x3f\xc2\xef\xeb\x47\xcd\xfb\x7a\xf4\x18\x57\x66\x9d\xea\xf9\xa2\x8d\x7a\x52\xfb\xdd\x5b\xc0\x10\xcd\x22\xed\x35\xed\xbf\x44\xb8\x93\x36\x5b\x2e\x5d\x69\xd7\x42\x3d\x9a\x21\xb4\xcc\x17\x85\x63\xbd\x65\x15\xa9\xba\x2b\xdb\x6e\x98\x71\x85\x3b\x1f\x8a\x5c\xa0\x63\x26\x48\x11\x28\x03\xeb\xf7\x62\xb5\x2f\x69\x3f\x23\x32\x01\x11\xf3\x82\xb6\xc1\x64\xf4\x3a\xc3\x21\x18\x25\x38\x19\x07\xbb\xaf\xd0\x3c\x8b\x4a\x12\x05\x1e\x3b\x31\x45\x79\xd1\xc9\x1a\x99\xbc\x99\xce\xa3\x6e\xaa\x0a\x1d\x10\x5e\x2c\x4f\x9f\x97\x63\x83\x65\xa7\xe0\x65\xad\x12\xb3\x6c\x9e\xbf\x1f\x37\xef\x47\x68\xfe\x7e\xf5\xe8\xfd\x44\xff\x8f\xb2\xc9\x23\xf4\x18\x61\x41\x46\x10\xd5\xa8\x20\x6c\xf1\xc4\x78\xb5\x12\x2d\x6b\xda\x1a\x69\xb7\x67\x30\xf9\x5d\x82\x9c\x7f\x2a\x2b\x22\xb1\xaa\xbd\x85\xd5\xe8\xfd\xdd\x2e\xc9\x6b\x22\x07\x57\x92\x16\x1f\x8c\xca\xee\xef\xac\x86\xef\xef\x64\x92\x5b\xf4\x2b\xaf\x09\x6f\x65\xda\x35\x5a\xa8\xe5\xe3\xd9\x74\xfa\x48\x1c\x40\x3c\xb3\xd1\xeb\x5b\x34\x4d\x72\x03\x22\x92\xc2\xb3\x7d\x5c\xd6\xdc\x8b\x05\x4f\x49\x97\x3e\x47\x5a\x98\x7f\x6e\x2b\x0f\x88\x28\x91\x1d\xb7\xa7\x8c\x32\x8a\x99\x71\x0f\x0a\x8c\x8f\x5e\x36\x8f\x3e\x49\xb4\xef\xc9\xd6\xbb\xf7\x27\xc3\x8d\x61\x0b\xb5\x1c\x11\xf9\x28\x4b\xc6\xe6\xb4\xf1\xf1\x6c\x09\xaa\x6e\xc8\x36\x8d\x99\x35\x95\x25\xf7\x9e\x28\xf2\x4c\x4c\x1c\x51\xd0\xb9\x3e\x54\x21\x52\x92\x6b\x0c\x33\xa6\x22\x80\x67\x62\x69\xdd\xd0\x3b\xe1\x01\x3b\x9a\x39\x4e\xf5\x14\x5c\x7e\x0f\x21\x60\xf3\x7b\x78\xe6\xf2\xd9\x74\x8a\x69\xdb\xcb\x9a\x1f\x69\xdd\xc7\xcc\x07\x49\x54\xcc\x14\x05\x95\xed\x98\xaf\x6e\x4c\xf0\xbd\xe2\xa2\x01\x56\x10\x08\xa4\xc5\x22\x0b\xc2\x1c\x17\xa2\x76\x20\xd9\x3f\x64\xfa\x41\x8c\x18\xa5\x7b\x52\xc7\x7c\xd1\x4a\x27\x74\x58\xa0\xb8\x24\xf7\xf0\xb8\xe5\xb7\xd9\xfd\x01\xef\xb1\x58\xec\x97\x08\x53\xbe\x0a\x13\x46\x62\x51\x2d\xc7\xc5\xa2\x5a\xa2\x90\xd3\x64\xf9\x23\xa0\xc7\x53\xe0\x32\xd6\xf9\x39\x58\xf6\x94\x5b\xb4\x27\x0f\x2c\x5a\xe8\xb3\xd9\xd4\x02\x89\x46\xbb\x82\xdd\x35\xb1\xab\x50\x44\xcb\x53\x13\xde\x59\xe6\xbd\xbb\xc2\x4e\x08\x47\xfe\x94\x8d\x24\x9a\x2f\x46\x12\x4f\x97\xb9\xa4\x99\xc4\x02\x17\xb8\x46\xf6\x4d\x03\x5e\x6f\x26\x8c\x54\x6e\xaf\x9b\x10\x56\x81\x61\xbf\x98\x2d\x91\x63\xb3\x9f\x2a\x36\x72\xc5\xac\x2a\x2b\x14\x72\x19\x50\x0a\xd4\x24\x6c\x21\xbb\x75\x04\xd4\x74\x7b\x0a\xda\xd6\x80\x77\x05\x0b\x2d\x20\xd4\x8d\x59\xd5\xe9\x01\xef\x24\x1c\xf8\x37\x56\xd9\xdf\x2d\xf4\x17\x9f\xb9\xd0\x47\x9c\xb6\xa6\x59\x67\x74\xe2\x98\x92\x8e\x92\x1e\x04\x49\x2d\x6b\x11\x10\xce\x4c\x92\x35\xc8\x65\x0c\x4e\x1b\x53\xfc\xb0\x67\x9d\xc6\x0c\x3e\x0d\x3b\xa8\xc4\xce\x06\x00\x58\x2b\x5c\x13\xb6\xe0\xcb\x01\x73\xec\x0b\xe6\xd9\x15\x3a\x9d\x24\x89\x7d\x6e\xbf\x3f\x1e\x1f\xee\x1b\x1e\xc4\x2f\x01\xce\x20\x96\x5d\xd6\x1f\xb2\xdd\x08\xd7\x4b\x61\x3a\xa9\x71\xb8\x24\xc4\xa9\x45\xab\xc9\x4e\x32\x21\x99\xba\x83\x40\xc5\xf1\xd1\xc7\x2b\x72\xbf\x93\x6c\x5b\xc8\xbb\x1e\xc3\x9b\x72\x41\x5b\x79\xd9\x82\x2e\x2f\xf6\x0b\xba\x4c\xd3\xa1\x9a\xd0\xba\x2c\x76\x10\x2d\xf0\x7b\x37\x64\x58\x4d\x0f\xad\x75\x71\xac\x8b\x23\x84\x6f\x8d\x9a\x9c\x44\x07\x6c\x7c\x52\xf4\xf7\xd6\x1e\x4d\x1a\x5f\x7b\x4e\xca\x85\x8c\x06\x72\xf9\x89\x81\x70\x3b\x10\xc6\x33\x5d\x15\x06\x32\xce\xc2\x0e\x4a\x23\xc0\xc9\x4b\x2b\xb9\x41\x6e\x9c\x46\xc7\xb4\xd5\x23\xef\x25\x55\x0d\x84\xb4\x00\xcc\xa2\xd9\x31\xf8\xa2\x68\x9e\xd8\x85\x4d\xf2\xc4\x4f\x3b\x19\x94\x06\xda\x94\x78\xb5\x50\xcb\xcc\x72\xde\x8f\x20\x52\xa9\x2f\x8a\xdb\xb7\xdc\xf7\x21\x23\x9a\xd0\x5e\xbf\x25\xb6\x47\x25\xff\x12\x1f\x5d\x89\x3c\x56\x8f\x38\xe0\x0f\x94\xee\xde\x89\x6b\xaa\x36\x54\xba\x0b\xf7\xfb\xcf\x7a\x0e\x1c\xf8\x82\x30\x3e\xe6\xf4\x40\x4c\x6f\x7f\x66\x59\x08\xf1\x3a\x80\xcc\x6a\x09\xad\x2b\x21\x34\xd4\xb3\x4b\x17\xcf\xc3\x2f\x1e\x08\xd8\x8b\xb9\x9d\x6e\xfb\x5e\xee\x75\x62\xfc\x20\x14\x27\x65\x62\x72\x51\x2f\x2f\x44\xc6\xf5\x73\x00\x91\x3f\xe2\x25\x5e\xec\x97\xc4\xe6\x8e\xa5\x7e\x17\xb0\x4e\xba\xd4\x49\xf5\x83\x15\xea\x25\x38\xd1\xb2\x42\x0e\xb7\x84\x5f\x7e\x0e\xcc\x02\xdc\xed\xdf\x42\x10\x10\xb2\x58\x75\x73\x09\x4e\xc2\x0d\xea\xea\x20\xe8\xf5\xb6\x26\xdc\xa0\x61\x52\x83\x81\x5a\x6b\xdd\xc8\xad\x26\x34\xef\x81\x5c\x10\x27\xf0\x2d\xad\x28\x04\x7f\xe0\xa8\x6d\xfa\xe0\x1c\xbe\x0f\x8f\x6b\x79\xcd\x35\xee\xcb\xc7\x54\xc9\x8f\x4f\xbf\x7f\xfd\xf2\xf5\x9f\xf2\xb3\xbf\xc3\x04\xdc\xf0\xfe\xde\xfa\x85\xd9\xb0\x6a\x75\x26\xd6\x67\x4c\xd5\xd6\x38\xdd\x99\xa1\x0f\x13\x84\xa9\x8d\xc7\x75\xfa\xe8\x14\xc1\xd9\xd3\xc4\x96\x3d\x7b\x7b\x52\x04\x67\xaf\xea\xdc\x46\x73\x74\xda\x23\x05\xc1\x3f\xab\x63\x82\x62\xad\x13\x03\xed\x78\xbc\x02\xfd\x9a\x6f\xc5\xad\x63\xd5\xe3\x8d\x2e\x12\x9e\xba\x9d\x4e\xb8\x72\xfa\xf1\xf6\x4e\x6e\xc9\xab\x8c\xa3\x45\xb9\x1c\xec\x17\xbb\xe5\x78\x7b\x51\x2f\x56\xcb\xbe\x63\xb4\x5a\x8e\x89\xce\x1b\x67\xa6\x20\x42\x78\xbf\x58\x2d\x47\xdb\xcb\x7a\xb1\x3b\x51\x43\x3f\xa4\xba\xc8\x58\x17\xe9\x01\x17\x6f\x8f\x2a\x99\x27\xed\xc6\xd4\xdb\x2f\xca\xe5\xe3\x27\xe3\xed\xe3\x27\xf8\x8e\xb0\x9e\x27\x12\x5f\x87\x8a\x00\x77\xad\x51\xc0\x7a\x89\xf0\x55\x27\xcf\x99\x42\xac\x5b\x53\x08\xfc\x2b\xb9\x19\xf7\xcd\xf4\x7a\x7c\xe5\xee\xe3\xaf\xed\xe3\xe0\x81\x73\xbd\x28\x97\xe3\x2d\xfe\x15\x61\xf0\xff\x08\x27\xc8\xf3\xe9\x82\x69\x42\x06\xc9\x6e\x33\xf0\xa0\xbc\xc2\xd0\x80\xd4\xb0\x2e\xfb\x15\x00\xb7\xc4\x1b\x9c\x80\x87\x23\x0d\x38\xa9\x83\x7d\x8b\x8f\x63\xa8\xba\x4c\x8c\xd8\xd1\xdd\xd6\x3f\x7c\xe2\xb6\xb2\x75\xf6\xdb\x89\x6b\x0a\xa4\x45\x78\x2f\xc1\xcf\x86\x95\x69\xa6\x69\x28\x6d\xd4\x34\xff\x91\x50\xaf\x1b\x3e\xec\x3f\x80\x11\xf4\x60\x3e\x47\x38\x42\x8c\x7e\x76\x6e\x14\x23\x2f\x8d\xbf\xe9\x13\x45\x66\xcb\xa6\x49\x34\xb1\xbd\x58\x3a\xda\x51\x4d\xae\xe8\xa6\xb8\x61\x42\x1a\x22\xf2\xec\x97\xbc\x20\x0b\x8e\xd9\x32\x20\x23\xcf\x28\xcd\x0b\xf2\xe7\x8c\xa3\x30\x51\xd9\x44\x70\x5a\x69\xd2\x1d\x89\x59\x90\xb6\x5d\x87\x78\x17\x3d\x4f\x6e\x8d\xf7\xc6\xc7\xd7\x90\x90\xba\x69\x5c\x84\x58\x42\xc8\x7e\x34\x6b\x57\xf4\xd3\x73\xb6\x38\xd1\x11\x1a\x14\x62\x46\xed\x92\xaf\xc3\x47\x6b\x45\x3c\x86\xcd\xd3\x74\x9d\x55\x46\xee\x84\x2e\xd7\x59\x09\x78\x18\x6a\x9a\x16\xc3\xb0\x45\x20\xfd\x42\x97\x30\x85\x9b\xc6\x61\xd6\xb6\x80\x01\x23\xa6\x11\x25\x76\xba\x40\x8b\x55\xdb\x32\x3a\x1d\xda\xb0\x85\xf1\x86\x84\x6d\x1b\x65\x3c\x84\x77\x24\x1a\x94\x55\xbc\x43\x78\x4b\x82\x46\x40\x49\x0f\xe1\x1b\x12\x77\x2e\x7d\xdb\x77\xd1\x34\x37\x9d\x39\xed\xa2\x09\x6c\xbb\xa3\xbd\xc1\xd7\x9f\x78\xda\xb9\x86\x27\xc3\xa1\x82\x1b\xf3\xb7\x42\x32\x90\x4a\x68\xf2\xe1\xda\x58\x74\x1a\x8d\x4f\x01\x5d\xeb\x24\xca\x57\x36\x61\xd7\x34\xc3\x6e\xa1\xad\x4d\x6b\x4b\xdd\x68\x60\x74\xdc\xc1\x57\x77\x60\xba\xcb\x55\x4f\x4f\xbb\x6e\x4f\x9b\x9e\x9e\x6e\x8e\x7a\xda\x22\x7c\x4b\xae\x9a\xe6\xd7\xf3\x6c\xd5\x34\x77\x4d\x73\x6b\xd0\x06\x0b\x0b\xc8\x70\x8a\x21\xc3\x30\xe4\x8b\xc5\x1e\xfc\x5a\xdd\x6a\x4a\xa9\x2f\xe0\xbc\x6d\x98\xce\x6d\xb7\x79\xdb\x3d\x9d\x43\x6e\x4e\x0f\x99\x40\xb1\x46\x03\x1f\x65\x02\xd4\xd8\x44\x9e\x24\x3d\x2f\x83\x31\x51\xe9\x1e\xf7\xaf\x7b\x81\xce\xc3\x6a\x01\x08\xe4\xf9\xbd\x40\x91\x62\xc3\xad\xb5\xc8\xec\x01\xbb\x3b\x9d\x5b\x2e\xee\x83\x08\xaa\xd7\xf4\xc5\xf1\x96\xe5\xc3\x19\x3e\xb1\x89\xf9\x70\x76\xc0\x00\x89\x1d\x44\xff\xef\x21\x44\x9f\xfd\xc7\x38\x1a\x2d\x9a\xc1\x08\x77\xcb\x22\x08\x8f\x18\x18\x0f\xa3\x19\xa0\xd3\x0e\xec\x5c\x77\x03\x8e\xe4\x34\x81\xce\x56\x84\x56\x2c\x89\x58\xc8\xe5\x38\xab\xe7\x90\xd3\xc1\x6a\x97\xf9\x34\xde\xf8\x97\x59\x8f\xa6\x06\x79\xab\x71\x67\x8d\x9c\x6e\xd8\x8a\xba\xb5\xf9\xe3\x83\xe8\xfd\x43\x38\xa9\x6e\x25\xc1\x49\x87\x4e\xef\x62\xa5\xaa\x17\x78\x4a\xf2\xba\xbf\xd5\x1e\x06\xe9\x51\x0f\xc6\x3c\xa8\xd8\xd2\x03\x42\xc1\x6b\x07\xc1\x96\x2c\xa8\xba\xb0\xfa\xc6\x46\xed\xf5\xd2\xeb\x19\x83\xf6\xed\x65\xab\x5d\x6c\x75\x6d\x2f\x2c\x98\x84\xf9\x9a\xa8\x80\x7a\x76\xed\x4c\xcc\x37\xb0\x7d\x27\xad\xc2\xd2\x22\xf9\x38\x16\x7b\x35\x16\xeb\x71\x3b\x8c\x44\x53\xf4\x80\x35\x43\x6b\xb3\x07\x5a\x9b\x7d\x56\x6b\xc3\x59\xc8\x76\x2a\x8d\x86\x27\xa8\x5b\xf8\x3d\xfc\xf2\xf3\x78\x22\x1f\x81\x26\xbb\x0b\xf9\x4d\xed\x49\xfe\x17\x36\x24\x50\xf8\x88\xf6\xe2\x7a\xb7\x7f\x5a\x96\xb4\xa2\x12\xae\x64\x1b\x77\x4f\x74\xc5\x15\x2d\x61\xd0\xa9\xf3\xf7\x33\x23\xec\x3e\xdb\x8a\x1b\xe3\x9b\xe8\xef\xe1\x8c\xff\xde\x8a\xe5\x0a\xbe\x3a\xbb\x65\x55\x75\x66\xe3\xa1\xd4\xfb\x9d\x06\x14\xc6\xa7\xd0\x7a\xaf\xf6\x92\x9e\x39\x27\x7f\x9a\xc2\x30\xce\x5c\x26\xff\xa8\x9d\x4e\x5d\x41\xda\xf1\xcd\x45\xae\xba\xc3\xc7\x35\xe9\xe3\x18\x81\x2d\x55\x8d\x70\x45\xee\x1d\x56\x95\x33\x8f\x60\x1d\x70\xd9\xeb\x7c\xbe\x05\x1f\x9c\x48\xb7\xe8\x8c\xc8\xe0\x4e\x58\x2a\x18\x30\x57\x5c\x84\xd8\x45\xdd\xe7\x5d\x8e\x1e\xf0\x9e\x88\x8c\x19\x5e\x85\x1e\x8f\xc8\xb8\xfb\x28\x3f\x01\x8a\x22\x95\xae\x35\xb1\x32\xa8\x16\x3d\xf2\xf2\x82\x71\x82\xf0\x8a\xa8\x79\xd9\x34\xeb\xa6\xd9\xff\xee\x09\x21\xd5\xef\x9e\xcc\x45\x5e\xe4\x35\xde\x10\x35\x17\xb9\x8b\x27\x6e\x54\x75\x57\x19\x14\x9a\xa5\x69\x65\xff\x0e\xd7\x69\xaa\xe6\xc6\x32\x67\x3c\xcb\xb9\xc5\x48\x94\xd8\xe5\x9b\x8c\x1b\x94\xc3\xea\xf2\xea\x6f\x87\x6b\x18\x5d\xdf\x55\xc6\x2d\xaa\x72\x38\x64\xd4\xb1\xf0\x57\xf4\x86\x95\xf4\x3b\xf6\x91\x56\xdf\xeb\xbd\xba\x78\xd2\x34\xc3\xbf\xe8\x91\x06\x28\x87\x74\x8a\xb4\x8e\x43\xb0\x09\xb8\x48\xdc\x83\x57\x4b\xa2\xed\xba\x0c\xbe\xad\xf3\x2f\x79\xe3\xd8\xac\x6c\x9d\xdd\x84\x1d\xac\xe6\xde\x1c\xa8\x6e\xcd\x15\xc7\x75\x24\xba\x18\x39\xcc\x2c\x1f\xef\x2d\x3b\xa9\x4d\x02\xb4\x0e\x6f\x83\x71\x6d\x1e\x6e\xd3\xe8\x50\x5b\x84\x51\xb7\x78\x1b\x25\x18\x5c\x13\x17\x69\xba\x43\xd5\x62\xb7\x24\x66\x46\x55\xa1\xe8\x17\xab\x2c\x19\x6d\x47\xc9\xee\x23\x3e\x4b\x46\x37\xe6\xc7\x14\x25\xb8\x5a\xac\x96\x64\x8a\xab\xc5\x06\xfe\x44\x9a\x4f\xed\x7a\xb4\x26\x29\x77\xf1\x12\x8c\x67\xf9\x0c\x5f\x47\x33\x00\x73\x7e\x68\xf6\xe6\xd1\x9d\x69\x78\xfb\xe8\x3a\x6e\x7a\x35\x4a\xf4\x38\x36\xd6\x60\xfb\x3e\x52\x0c\xcb\x83\xa3\x18\x28\x73\xb7\xa0\xd2\x60\x2e\x57\x11\xf8\xf4\x0a\x0d\x36\xb7\xf2\xdf\x9e\x7a\x7c\x1b\x64\x77\xe8\xc7\xb8\x08\xe0\x29\x1d\x70\xa0\x21\xeb\xc7\xf6\x30\xdd\xb9\x93\x73\xc0\x2d\x38\x74\x00\xf9\xdf\x3f\xcd\x33\xc3\x2e\x8e\xd1\xd9\xcf\xbd\xf8\x96\x1b\xba\x3a\xe6\xd6\x80\xee\x60\x3b\x71\x1c\x6a\x92\xc8\x13\x6a\xc9\x43\x7d\xc3\xe5\x82\x2e\xe7\x6a\x52\x53\xd5\x6a\xe4\x51\xac\x53\x51\xae\x8e\x74\xf5\xa8\xe5\x3e\x86\x84\x77\x9a\x46\xe1\x0d\xa2\x35\xb3\x74\x57\x9a\xfe\x9c\xc5\x95\x7a\xd6\x56\xf0\x6f\x45\xb1\xca\xbb\xa2\xcf\x56\x1d\xec\x1f\xe0\x40\x99\x62\xd9\x25\x5d\x0b\xf2\x2c\x93\x01\xae\x26\x6c\xb1\x4f\x2a\xda\x1e\x15\x71\xda\xb5\xad\xff\xfa\x68\x61\xa2\x13\x89\x0b\x84\x7f\xce\x14\x6e\x41\xbe\xfc\xa4\x8a\xeb\x01\xc2\x8a\x74\x4f\x91\xf5\x52\x7b\x38\x60\x46\x4f\x46\x7d\x6b\x9d\xcb\x83\x37\xef\xcf\xb7\x0d\x9e\x87\x1f\xf9\xfd\x61\x70\x65\x83\xd2\xa0\x3e\x8d\xb1\x1e\xdf\xad\x92\xfe\x73\x4f\x6b\xd5\x51\x09\x13\x56\x99\x0a\xd9\xa8\x18\xe6\x8b\xc8\x2c\xf8\x9a\x5c\x81\x09\xc0\x86\xd5\x28\xd6\x76\x74\xf7\xed\x6b\x43\xd7\xd7\x7a\x2d\x03\x75\xb2\xfb\x40\xbf\x54\x63\xe7\x5e\x91\x57\x7f\x44\x0a\x5b\xf9\x62\x79\xe8\x28\x5b\x13\xf0\x95\xf3\x0f\x60\x5f\xce\xd5\x62\xba\xcc\x55\xa8\xac\x49\x58\x9a\x32\x97\xcd\x74\x36\x3b\xa1\x70\x4d\xee\x0f\xd1\x3d\xea\x8c\x39\x40\x88\x8a\xf6\x77\xaf\x70\x58\x81\xdb\xd5\x6e\xfb\x0b\xb5\xec\xae\x43\x94\x09\x9e\xa7\x83\xa6\xe7\x45\x94\x9d\xdf\x1f\x8c\x56\x5b\xa4\x7a\x1b\xd9\x6c\xf5\xcf\xeb\x41\x43\x2e\x8d\xb7\xe5\xfa\x36\xf6\x8c\x17\xcc\xb9\x1e\x34\xe6\xb2\x5a\x58\x63\xe5\xb5\xb0\x3a\xc3\x3b\xa5\xc9\x17\xd8\x2d\xd0\x89\x81\x04\x08\x94\xba\xe0\x67\x26\x42\x9c\xc8\xe3\xa7\x5e\x09\x52\x27\x9a\xc0\xa7\xbe\x47\x73\x00\xad\xf7\x83\x3a\x56\x44\x8f\xa4\xe6\x83\xda\xaa\xda\x9a\x21\xf4\x2b\xe9\xf6\xa8\x4a\x12\x17\x2f\xe4\xec\xd7\x8c\xe2\x05\x58\xc0\x25\xa6\x57\x17\x06\xf2\xf8\x2a\xbd\x68\x43\x51\xa0\xc3\x01\x9b\x4a\x2b\x73\xd4\x4f\xd7\xfa\xa1\xaf\x56\xdf\x70\x4f\x37\xf1\xcf\xde\x8e\xfb\xf4\x92\x4f\xb7\xf1\x63\xd4\xc6\x12\x99\xd8\x75\xad\x83\xe7\x1f\x14\xab\x6a\x92\x7d\xda\xb9\xfa\x75\x25\xae\x8a\x0a\x59\x5f\x8a\x50\x0d\xb3\xe0\x7d\xaf\xc9\x5f\xf5\xb7\xbb\x14\x04\x1c\x87\x1f\x10\x3a\x64\xfd\xc0\xd1\x99\x97\x74\xcd\x82\x40\x9f\xc8\x0c\xba\xf5\x73\xdc\xe2\x0e\x7b\x0e\x3a\x0e\x59\xb2\x73\x64\x80\x46\x6c\x61\xe8\x2e\x1c\xd9\xbe\xaa\x30\x6d\x45\xfc\x93\x62\x0b\x6c\x1a\x3d\xf1\xff\x67\xfd\xef\x7e\x31\xf9\xe2\xbf\xdc\xef\xfe\x97\xfb\xdd\xff\x72\xbf\xfb\x5f\xee\x77\xff\xbf\xe2\x7e\xd7\x7b\xed\x0f\xc0\xf1\xa7\x5c\xf2\x2e\x82\xc2\x4b\x08\xb1\x3d\x79\x27\x44\xa5\xd8\x4e\x23\xa2\xf6\x81\xe9\xf1\xd4\x4b\x3b\xae\x7a\x29\x81\x46\x3b\x2e\xe5\x13\x2b\x76\x4a\xd0\xdc\x7b\x62\xcf\x1d\x0b\xf3\xff\x87\x0e\xbf\xe4\xff\xfb\xfd\x6e\x61\x4e\xee\x4b\xe7\x57\x52\x53\x0b\x2b\x5a\x15\x77\xf9\x14\x6f\xd4\xb6\xd2\xdf\x81\x56\xa5\x31\x12\x67\xaa\xa2\x79\x92\x60\x45\xb7\xbb\xaa\x50\x34\xff\x6f\x17\x2b\x76\x63\x1c\xbd\x91\x44\x99\xd3\x94\x9c\x49\x51\xd1\xf6\xf3\xb2\xa7\x8c\x91\x1c\x27\x97\x17\x8f\x57\xec\xa6\xb7\x80\x11\x05\xbb\x02\xf0\xff\x7f\xc3\x36\x74\x72\x9e\x6c\x04\xc4\xc2\x16\xe5\xbe\x4e\xbc\xce\x9b\xb5\x8c\xb5\x5a\x18\x79\x32\x89\x3a\xc3\x67\xee\xfb\xd7\x5f\xad\x3a\x08\xf4\xd1\x53\x1e\xd2\xc3\xf2\x66\x30\x07\xcc\x7a\x4f\xb2\xf5\x58\x9c\xfd\xcf\xf4\x9a\x67\x6f\x25\x43\x58\x04\x98\x25\x98\x18\xdf\x1f\x30\xc7\x20\xaf\x30\x84\x9a\xde\x6d\x42\x17\xd3\x25\xea\x12\x7b\xb1\x39\x14\x51\x96\x8d\x7b\xa4\xe9\xa2\x5c\x8c\xea\xb9\xff\xe5\xe4\x39\x67\x09\x7a\x20\xf4\x94\x65\x9a\x96\x15\x2b\x3f\x24\xd8\xec\x52\x82\x13\xb3\x4f\xa1\xfe\xd6\x01\xa1\x7c\xb1\xb4\x51\x16\x59\xfd\x66\x47\x79\x1b\x21\xca\x80\xa9\x37\x76\x94\x3e\x92\x64\x4d\x55\x87\xe0\xa0\xb8\xc0\xca\x1f\x68\x95\x31\x47\x5a\xfc\x6a\x10\xc7\x23\xf4\xbc\xa3\x21\xee\xb8\xa1\xb1\xab\x56\xcb\xf0\xc8\x92\x15\xbb\x49\xd0\x80\x59\xad\xe9\x77\xaf\xbe\x25\xca\x9a\x26\x58\xb5\x1a\x36\x01\xfd\x9b\xd7\x62\x45\xeb\xc5\x74\x39\x10\x13\xb6\xf2\x27\xf8\xd7\x64\x64\xf8\xd1\x05\x5f\x89\x6d\x86\xbc\xcb\xeb\xec\x8b\x3f\xa0\x09\x20\x09\x32\x7b\x82\x67\xce\x09\x6c\xc0\x39\x29\x24\x2b\xc6\x1b\xb6\x5a\x51\xae\x57\xaf\xa8\x6a\xea\x79\xee\xac\xa3\x6b\x14\x11\x6b\xd1\x81\x6e\x19\x33\xb0\x7c\xc5\x6a\xf5\x4e\xdf\x5f\x2b\xe5\xcb\x28\x30\x8c\x0a\x84\x85\xa7\x71\xba\x65\x3e\xb1\x7e\x83\x99\x37\x37\xd4\xa7\xb9\x69\x66\x71\xc2\x5c\xa6\x29\x04\x59\xa1\x7c\x65\x6d\x30\x51\x9e\x31\xa2\xd0\x67\x3b\x06\x67\x68\x7e\x6a\xf4\xca\xb9\x0e\x87\x11\xe5\x72\xce\xc3\x8d\xca\xf9\x44\xd1\x8f\xca\x16\x27\xaa\x9d\x63\xbd\xd1\x57\xbf\x33\x31\x65\xe3\x9c\x85\x07\x32\x4d\x87\xe1\x27\xe3\xd7\x28\x58\xd0\x41\xa7\xb4\x37\x9b\xfe\xd5\xee\x3f\x98\x49\x46\x3b\x10\x64\x58\x2b\xd9\x1b\x56\xb3\x2b\x56\x31\x75\x47\x12\xf8\x5d\xd1\xe4\xb8\x95\xcf\x39\x1d\x21\xd7\xe6\xa5\x63\x77\x3a\xba\x1e\x32\xad\x35\xa9\x9a\x5c\x47\xad\x01\x4c\x4f\x50\xd3\xf0\x09\xfc\xb4\x96\x60\xe1\x4c\x5b\x56\xda\xc4\x5e\x2c\xbd\x5e\x13\xf7\x08\x60\x86\xf9\x44\x3f\x19\x68\xd0\x65\x01\xc2\x50\x57\xb4\x2e\x25\xbb\xa2\xab\xab\xbb\x04\xeb\x2b\xe2\x8e\xb2\x69\x71\xcd\xf8\xca\x7b\x37\xce\xbc\x33\x63\x2a\x83\x28\xc3\xf6\x0c\xc0\x49\xca\x84\x67\x80\x75\x20\x85\x01\x85\x93\x28\x11\x07\xa6\x01\x3c\xe0\x8a\xf7\xb6\x10\x70\x86\xa0\xad\x07\x8b\xe0\x7b\xa3\xa3\xf8\xe9\x92\x2e\xb8\xdd\x89\x6c\xcb\x40\xbf\x77\x8a\x55\x7c\x12\xbd\x63\x07\xe4\x1e\xb8\xff\xf1\x9e\xac\xf6\xfc\xbd\x6d\x90\xdb\x04\x13\xe4\xf0\x7f\xb0\xd5\xcf\x2b\xe5\x7b\x74\x7d\x1f\xd0\x01\x61\x7e\xcc\x6f\x76\x86\xf0\x27\xdb\xeb\x48\xb5\xc9\xfd\xb1\xf6\x43\x4f\xb3\x87\xde\x9b\x02\xe1\xba\xf4\xa9\x16\x7d\xeb\x8b\x8e\xaf\xa4\x8d\x45\xda\x42\x15\x23\xcc\x3f\xc5\x0d\x0a\x01\xc5\x3c\xeb\x7f\xf5\x1e\x86\x0e\xee\xbe\xff\x6b\xc0\x41\xc9\xbd\x83\x0d\x28\x8f\x07\xbc\x62\xf5\x4e\xd4\x7d\x63\x6e\x83\x4d\xc6\xd7\xcf\x70\xf4\xfa\x39\xb6\x4e\x42\xae\xd3\x40\x48\x0e\x85\x07\x81\x8a\x5d\xaf\xfd\x31\x37\x66\x42\x38\xec\x00\xcc\x8a\xbb\xb3\xf4\xa7\x41\xaf\x73\xd6\x0f\xed\x2c\x6b\xf0\x44\xee\x09\xd7\x01\x3e\x8c\x64\xb8\xa4\x0f\x79\x10\x88\xc0\x7b\xcf\xc1\x80\x38\x13\xa8\x73\x3a\x22\x18\xd7\xf7\xaa\x7a\xd5\x80\x2e\x2a\x46\xe7\xf4\x08\x4d\x89\x11\x00\x8a\x72\xa3\x24\x01\x78\x9f\x8a\x8c\xf4\x69\xf0\xb4\x03\xf0\xec\xef\x5b\x45\x8f\x34\x45\xc1\x63\xd9\xc5\xb9\xfa\x51\x02\x4f\xaa\x01\x8e\xaa\x77\x50\x10\x8d\xde\xf5\x73\xb0\x5d\x30\x0c\x6b\x31\x67\xb0\xc4\xdc\x7a\x12\x48\xb6\x62\x5f\x53\xca\x15\x95\xe0\x0d\x36\x48\xac\x68\x71\xa3\x11\xa1\xc0\xb4\xce\x60\x96\xbe\xae\xf9\x6c\xab\x5d\x55\x7b\x19\x57\x30\xa8\xa9\xaf\x60\x3e\xdb\x0a\xf6\xfb\x00\xd6\x65\xa7\x8f\x7a\x40\x07\x28\x74\x3f\x9c\x0e\x09\xe1\x01\x9e\x00\xbe\x84\xf6\x35\x5d\x7d\x75\xe7\x28\xec\xe1\x14\xe2\xac\x5a\xf1\xd1\xdb\x8d\xb8\xd5\x08\xd8\x04\x28\x2e\x2c\xc1\x3e\x7e\xc0\xfd\x1d\x83\xc1\xdc\xc3\x47\xae\x80\x77\x9a\xb3\x03\xc8\x12\xbb\xde\x1a\x14\x66\x70\x83\xc4\xbf\x34\xd8\xce\xe8\x34\x9a\xe6\xc7\xf6\x8d\xbe\x61\xf1\xd8\xfe\xe3\x43\xc3\x76\x45\x4d\xd4\x0b\x39\x29\x2b\x51\xd3\x37\xfc\x99\x4e\x7c\xb3\x57\x35\xd3\x57\xdb\x1f\xec\x63\x2f\x19\xb0\xef\x2b\x71\xcb\x13\x1c\xcd\x8b\xad\xb3\x70\xc1\x1d\x00\xe2\xdd\x5b\x6f\x3e\x07\xb4\x55\xb5\x57\x13\x05\x31\xec\x50\xd3\xc8\xde\x54\x96\x29\xbd\xff\x78\x38\x05\x33\xc3\xf6\x2a\x04\x7b\xf7\xe9\x5b\x30\xe8\xa0\x8e\xc4\xba\x30\x65\x46\xe2\xa6\x91\xd0\xa6\x51\x3e\xe6\x35\x60\xa5\x36\xd2\x8e\xbb\xef\xa7\x62\xef\x58\xcf\x33\xa6\x0e\x78\x95\x3d\x20\x7d\x0a\x8e\x46\xfa\x4d\xdf\x9b\xd4\x21\x81\xfa\xc7\x3a\x73\x38\x9f\x1e\xab\x06\xb9\x76\xac\x76\x64\x65\x45\x0b\xe9\xc6\x76\x34\x7e\x84\x1f\x9e\x00\x68\x75\x0d\x09\x61\x2d\xa2\x1d\x7b\xdb\x69\xc3\x59\xc4\xd0\x16\xaa\x86\xa0\x80\xe8\x6b\xa7\x01\x25\x62\x6b\x5d\x58\x77\xd8\x96\x87\xa3\x94\x71\x1b\x15\xd7\x62\xb4\x03\x66\xdf\x10\x58\x37\x8d\x5b\x05\x0b\x67\xf0\xe5\x87\x29\x20\x18\x84\x97\x1d\x1f\x3f\x09\x56\x1d\xf2\xf8\x51\xf9\x7c\xb2\xcd\x62\xda\x66\x91\x03\x9a\xa7\xe3\xec\x4a\xa3\xdc\x1d\x0a\xff\x14\x6e\x1f\xd5\x83\x54\xf7\x74\x75\xe9\xaa\x8e\x67\x12\xda\xd7\x65\xc7\x19\x0f\xb4\x47\xe8\x83\x14\x88\xb1\x82\x89\x97\x2d\xaa\xef\x1e\xf8\x4e\xa3\xc1\xe6\x1c\xad\xc7\xa9\x4b\xa8\x1f\x43\xd9\xa5\x4a\xdb\x84\xb9\x32\xb1\x8a\xda\x77\x5d\xa2\x5c\xcd\x69\x40\x3d\x26\x49\x4e\x23\xf2\x31\x49\x40\x86\xc7\x0e\x19\xc2\x82\xf4\xe3\x4a\x46\xf6\xb9\x11\xb7\x3d\x5a\x01\xd4\x5d\xd6\x48\xfd\xd7\xce\xd5\x29\x05\x80\x4e\x63\x6f\x5d\x83\xf4\x1c\xbc\x83\x24\x8d\xb8\xf5\x97\xb4\x99\xbe\xb0\x12\xd7\xd7\xd5\x89\xb2\x16\x1d\x35\xca\x94\x19\xca\x29\x8c\x3e\x8b\x75\x14\xc2\x05\x8f\xde\x91\xb6\x9d\xe3\x82\x10\x6f\xbf\x1f\xa7\xeb\xb9\xa2\x24\xe6\xb2\x06\xca\x1b\x13\x49\x35\x81\xb9\xf2\x8b\x66\x14\x50\xbd\x41\xaa\x2f\x60\xc2\x92\x7a\xc7\xd0\x34\xbe\x79\x1e\x9e\x08\xa3\x43\x1e\x65\x1e\x3f\x5b\x00\x51\xda\xe7\xe6\x8c\x67\xd6\xf7\x79\x41\x44\xcf\x88\x44\x38\x22\xd1\x19\x51\xa7\xb3\x3e\x1c\xd8\xf6\xc7\x11\x0e\xde\xa3\x02\x35\x0d\xed\xbc\xc9\x12\x33\xfb\x26\x33\x0d\xb5\x90\x79\xa2\xbc\x7e\x17\xfb\x9f\x28\xf4\xb5\x73\xf8\x1f\x92\xfa\x6a\xd8\x7d\x5a\xf6\xd1\xcd\x31\x12\x0f\xd4\x11\x7c\xd0\xcc\x3a\xa9\x06\x9f\xe1\x47\xc2\x0e\x33\xb2\x34\x75\x23\xdc\xae\xbc\xc3\x6f\x48\xc9\x16\x4b\x4c\xd1\x39\x40\x9a\xa6\x31\xaf\x14\x9a\x3c\x13\x2b\xfa\x8a\x49\x29\x24\x31\x31\x8a\x3f\x11\xa4\xb0\xc7\x93\x0f\x56\x41\xea\xae\x2a\xd4\x5a\xc8\x2d\x96\xe4\xf1\x35\x2d\x3f\x88\xf7\x8f\xdf\xaf\x9c\x1b\x20\xf0\xde\x62\x42\x98\xbd\x5f\x3d\xf6\x69\x8c\x3c\xb6\x31\x08\xdf\x3f\xce\xe6\xf9\xe2\xbf\x8f\xff\x7d\xd9\xbc\x5f\xdd\x3f\xc1\x07\xf4\x7e\x32\x79\x24\x6f\x4c\x2c\xed\xc7\x13\xfa\x91\x96\xba\x86\x20\xbc\x69\x18\x2e\x88\x48\xd3\x8c\xcf\x7b\x23\xa6\x35\xcd\x1f\x72\x06\x46\xe2\x35\x79\x6c\xc2\xaf\xbf\x7f\xdc\x76\xba\x27\x75\x9a\x3e\xfe\xab\xd2\xe3\x1b\xbd\x9f\xbc\x5f\x8d\xda\xbc\x8a\x3c\x7e\xb6\x91\x62\x4b\xc3\x0a\x25\x79\xfc\x66\x47\x65\x11\xa6\xad\xc9\xe3\xa7\xbb\x5d\x45\xcf\xac\xeb\x5c\x79\x14\x97\xed\x86\xf2\x95\x90\x08\xaf\xc8\xe3\x57\x45\x79\xf6\xe6\xed\xd9\x4f\x67\xb3\xf7\xab\xf7\x5f\x67\x8b\x3f\x9a\x69\xbe\x5f\xa1\xf7\x5f\xb7\x4d\x6e\xc8\xe3\xef\x36\x05\x57\x62\xfb\xe7\xb7\x6d\xea\xce\x76\x64\xe6\xe1\xd3\xd3\xf4\xf1\x2b\x71\xc5\x2a\xfa\xfe\xf1\xfb\xdb\x60\x02\x5b\xb2\x6b\x9a\xc7\x4f\xf9\x4a\x0a\xb6\x6a\x6e\xe9\xd5\x9b\xb7\xcd\x57\x55\x51\x7e\xf8\x8a\x4a\x79\xd7\xc0\x3c\xce\x5e\x31\xce\xdc\x4f\x71\xc5\x9a\x97\xcf\x4d\x5b\xc1\x6e\xdd\x40\x3b\xaf\x8a\xd2\x36\xad\x10\xbe\x23\x8f\xdf\x5f\x3d\x93\x6f\xde\xbe\xbf\x6a\xfb\xbb\x26\x8f\x6f\x19\x77\x15\x15\xc2\x57\xa4\xd4\x0f\x8d\xf5\x41\xf2\x37\xa3\x8d\xf0\xfe\x71\x06\x2e\x48\xde\xaf\x1e\xa1\xc7\x68\x70\x95\xa6\xd9\x15\x79\x0d\xbe\xc1\xb3\x2b\xbd\x53\x08\x5f\xa5\xe9\xd5\x25\x99\x7d\x09\xae\xd4\x87\x33\x5c\x93\xa1\x8d\x0c\xf6\x2b\xb9\x49\xd3\x6c\xdf\x34\xa5\xde\xf2\x7d\x55\x11\x72\xd5\x34\x57\x17\xb3\x27\x93\xd9\x0c\x21\x7c\x4b\x64\xd3\x88\x34\x2d\x2e\xc9\xbf\xe3\xe7\xba\xee\x5b\x8d\xca\x79\x38\xf0\x26\x10\x4c\x80\x84\x3b\x90\x4d\xbc\xf1\x66\x07\x9c\xde\xda\x92\x83\x58\x5a\x40\xd4\xfc\xb9\xc8\x4c\xf4\x90\xe7\x22\xfb\xb3\xc4\x0a\x0f\x67\x08\xbf\xce\x94\x73\xb2\xaa\x26\xf0\x24\x0f\x8e\xc8\x58\xe3\x0e\x40\x37\x7d\xc7\x32\x89\xd5\x64\x2b\x56\x26\x26\x23\x56\x93\x8a\x71\xfa\xd6\xf8\xdd\x11\xd2\x71\x03\x56\xa2\x24\xd2\xda\xe5\xc2\x90\x26\x8c\xef\xf6\xca\xe8\x40\x2e\x54\xf0\xb5\xb4\xb2\x10\x83\xcc\xc2\xfb\x58\x15\x77\x50\xe9\xa3\xe1\x72\xa3\x01\x9b\xdc\xca\x02\x84\x9f\xc1\x6d\x07\x6a\xf5\x1f\xb6\xf6\x3b\x27\x51\x81\xe1\xfc\xa8\x4b\x5b\x4a\x2e\x68\xd4\xb7\x02\x42\x9a\xd7\xc5\x96\x8e\x48\x72\xd6\x36\x39\xd6\xf9\x89\x6e\xa4\xd8\x2b\x01\xd4\x68\x9a\x0e\xb7\x69\xca\xcc\x78\x27\x90\x94\x21\xfc\x95\xeb\x2d\xd0\xe3\xfb\x40\xef\x5e\x15\xbb\x3a\xd7\xd4\xb3\x89\xc1\x08\xbf\xf5\x4a\xfd\x89\xf2\x7c\x0a\xa9\xb7\x92\x29\xea\x65\x75\x8c\x5f\x7f\x55\xed\x25\x3c\x28\x60\x99\xa3\x9b\xb7\x9a\x7f\xfb\xdd\x4e\xd2\xba\x7e\xbe\x62\x0a\xac\x7d\x76\x45\xad\xe8\x4b\x5e\x8a\x2d\xe3\xd7\x3a\xa1\xdc\xab\xf0\xb3\x06\xfc\x93\xf1\xeb\x77\xf4\x23\x34\xb6\x92\xc5\xf5\x75\xf0\xbd\x61\xd7\x9b\xca\x78\x64\xa6\xb7\x67\xa5\xc0\x1f\xe8\xdd\x5b\xfa\x4f\xe3\x8e\xbb\xde\xd1\x92\x15\xd5\xb3\x4d\x21\x6b\x48\x39\x58\xa7\x0c\x80\x1b\x39\xc1\x65\x05\xce\xc0\xd2\xb4\xb8\x98\xcd\xd2\xf4\x04\x7d\xb0\xf7\xab\x6d\xd6\x4c\xd2\x9a\xaa\x0c\xc8\x31\xfc\x64\x1a\x3f\x2a\xce\x42\xc6\xd6\x18\xfc\xcc\x32\xe7\x92\x8e\x4a\x1c\x92\x8f\xff\xa6\x32\x8a\x2b\x7d\xbc\x3a\x65\x56\x57\x95\x95\x57\xd9\x81\xcd\xa1\x68\x97\xdc\x1c\x2a\x01\x97\xc2\x91\x9a\x7b\x69\xee\x08\x5b\x67\x32\x4d\x87\x6b\xf3\x99\xa6\xc3\x5a\x66\x7e\x3c\x50\xfe\x07\xe6\x2e\x08\x27\xc6\xd7\xf2\x8f\x42\xae\x9e\xaa\x4c\xa2\xc1\x0f\x34\x83\xc0\x5e\x98\x4f\x0a\x5e\x6e\x84\xc4\x7c\xb2\xa1\xc5\x0a\x1d\x0e\x07\x84\xf2\x70\x0c\xb6\xff\xa6\x81\xf6\x0e\x68\x70\xdb\x34\x9d\xa9\x94\x26\x80\xe6\x96\xf2\x7d\x87\x5e\x7e\x66\x86\xe7\x5c\x38\x4b\xcc\xc9\x3d\xe5\xab\x7c\x1a\x04\x5f\x62\x19\x70\x82\x4a\xc5\x6e\xe8\x3b\xb1\x2f\x37\x70\x67\x4f\x6c\x52\x54\x10\x98\x5e\x07\x84\x67\xf4\x0b\x84\x33\x4e\xa2\x4c\x34\xa1\x7c\x45\x46\xfa\xcc\x7c\x0d\x5a\x87\xbe\xc3\xda\xc3\x23\x03\xcc\x8c\xb1\x51\x37\xe4\x87\xf5\xbc\x6f\x7c\x94\x02\x6f\x11\xdc\xba\xe9\xff\xbd\x37\x82\x47\x72\xc4\x1f\xf1\xcb\xdf\x4f\xa7\x87\xce\x92\x28\x3d\x04\xeb\xbe\xad\x1d\x3f\x0b\xb6\x94\xe9\x4d\xeb\x20\x2a\xb3\x21\xd1\x1d\xec\xcb\x0d\x75\x42\xf9\x36\x5e\x89\x3b\x73\x36\x7f\x31\x5d\xb6\x1a\xd0\xb2\x58\xb1\x7d\xfd\xd3\x05\x99\x69\xca\xd9\x7c\xfd\x7c\x41\x66\x87\x8c\x21\x74\x1f\xd1\xcd\xd2\x49\x11\xfd\xd2\x0c\xe2\x45\xb5\x9e\x77\x04\x06\x53\x1e\xb8\xc2\x92\xde\xe4\x62\xcc\xf5\x8a\x5e\x90\x2f\xa6\xd3\x39\x37\x77\x0d\xcf\x08\x38\x4d\x09\x07\x0c\x4c\xa8\xa0\x3d\xe3\xce\x84\x05\xc3\x9e\xec\x8a\x6b\xfa\x13\x8e\x4b\x29\xb1\x3b\x2e\xf4\xb3\xe1\x88\xf5\xad\xad\x1e\x5c\x82\x4f\x1e\x8d\xa3\x51\xc0\x64\x88\x61\xae\xf4\x36\x08\x5c\xca\x1e\x2f\x8e\x51\x33\xe0\x10\xc9\x5c\x36\x4d\xf3\xa5\xa9\x89\x1e\x6a\x6c\x63\xd2\x74\xc8\x4d\x3f\x69\xea\xd6\x76\xcc\x27\xb0\x9c\x17\x5f\x4c\xa7\x96\xbe\x00\xdf\x07\xa5\x10\x72\x55\x6b\xb0\x15\x8f\x13\x27\x7a\xde\x09\x1a\x08\x32\xe4\x20\x6b\x68\x9a\x3a\xe3\xd8\xfc\x46\x73\xdd\xee\x2b\x9a\x15\xb8\x40\xb9\x2d\x70\x54\xca\x16\x8d\xee\x7c\x81\x72\x5b\x75\x43\xb3\x02\xde\x1a\x3c\x45\xf8\x5b\x07\x07\x7c\xea\x68\x86\xa7\x08\xec\x07\x6a\xaa\x0c\x6f\x40\x2f\x87\x70\x70\x42\x18\x38\x81\xa9\x7f\x53\x7e\x60\x99\x44\x07\x96\x9d\x5c\x59\xe3\xad\x34\xc1\xec\x28\xdb\xb9\x01\x8d\xb7\xd1\xe5\x47\xf6\x38\x69\x9a\x6d\x01\x98\xb4\xd9\x3e\x1e\x27\xc2\x37\xbd\x59\x10\x1a\x65\x38\x45\xf8\x27\x08\xef\xe3\x7a\xb3\xfe\x59\xfa\x60\xf6\xed\x86\xd2\xaa\x03\xc3\x7e\xf5\x30\xac\x5b\xe5\xeb\x37\xaf\x5e\xe9\x5a\x6f\x8f\xa6\xd1\x53\xcd\x3e\xe1\xa7\x26\xed\x5e\x78\x3f\x29\xd2\x4d\x33\x41\xb1\x8c\x8f\x54\xfd\x46\x3a\x09\x76\xad\x41\xaa\xa2\xb2\x1f\x6a\xff\x13\xa0\x36\xbc\xe1\xfd\x05\xb2\x3e\xb3\xb7\xe0\x95\x19\x4a\xc7\xc2\x32\xf7\xa1\xa3\xb5\xe0\x1c\xfc\xbe\x90\xc5\x35\xa8\x2f\xa0\x81\xb4\x42\x7e\x7d\x48\xdc\x93\xaa\x07\xfc\x6c\x2f\x6b\x21\x9b\x26\xeb\x4b\x26\xcf\x84\xd1\x7c\x30\xd8\x59\x12\x20\x37\x25\x14\xa8\x43\x7c\x47\xd7\xb3\xc9\x49\xd8\x0d\xa0\x74\xbb\xa2\x04\xdb\x1b\x2a\xd5\x57\xe0\xdb\xb3\xb7\xc3\xa0\x96\x69\xe9\x6b\x76\x83\xd0\xe0\x95\xe8\x2f\x6d\xc2\x08\x28\x84\x61\x41\xd1\x01\x1b\x28\x19\x2e\xe9\xb1\x22\x8e\xa6\x91\x86\xd4\x6a\xa6\x87\x78\x4d\xd3\x78\xe8\x3b\x5e\xc9\x8b\xd9\x74\xea\xf1\x60\x60\x56\x41\x27\x20\xea\x77\xdb\xd4\x7d\xde\x1d\x5b\x71\x9d\xa9\xc9\xaa\x50\xc5\x3b\x30\xf9\xd2\x87\x85\xaa\xaf\x0b\x55\x64\x89\xee\x27\xc1\xc0\x9b\x6b\xef\xb1\x39\x3d\x61\x79\xba\x5e\xd3\x52\x3d\xad\x2a\x71\x4b\x57\x24\x29\xc5\xee\xee\x15\xc0\xd6\x9e\x76\x65\x71\xfd\x72\x5b\x5c\x53\xfd\x72\xb9\xa3\xa2\xf7\x8d\x6d\xaf\xed\xbe\x99\xcd\xf3\xd6\x36\x67\x60\x5d\x73\x7e\x06\x26\x86\x67\xd3\xf3\x33\x25\x76\xfa\x6f\x82\x06\x72\x52\xcb\x92\x24\xba\x8f\x9c\xe9\x46\x1f\x5f\xb3\xf5\xf9\x55\x51\xd3\x3f\xfc\x1e\x7f\x3f\xad\xfe\xf4\xe6\xeb\x6a\xf3\xf4\xaf\x4f\xbf\x7a\xaa\xff\x3d\xfb\xe6\xcb\xaf\x9e\x3e\xff\xcb\xd3\xa7\xcf\x9f\x7e\x0b\x09\x3a\xfd\xf9\xd3\xa7\x4f\x5f\x3e\x7b\xf7\xf4\xf9\xd3\x37\xb7\x84\x24\x58\xd3\x27\xd2\x98\xd6\x11\x69\x8d\xf6\xc8\x2c\xd8\x68\x77\xa1\x42\xb1\x93\x44\x58\x4e\x7e\xd5\xcf\x8f\xb4\xa2\x61\x80\x28\x0f\xcc\x3e\x93\x78\xaa\x81\x67\x99\xa6\x27\xbd\x7e\x03\x93\xd7\x00\x00\xbc\x92\x62\x97\x03\x72\xb7\x91\x08\x03\x0b\xb9\xff\x2a\xee\x24\x08\xc1\x1c\x06\x6b\xf1\xd0\x6b\xaa\x5e\x30\x5a\xad\x32\xa4\xd1\xcc\x3d\x4e\x3e\xd0\xbb\xfd\xae\x03\x6d\x3e\x48\xab\x96\xd2\x82\x1c\x53\x32\xc0\x42\x9f\xca\x30\x03\xb0\x74\x9b\xf3\x5d\x9b\x63\x75\xdb\xde\x8a\xec\x7b\xa9\x21\xa5\x4d\x06\x89\x96\x4e\x7d\x07\xa9\x07\x4b\x47\xc4\xec\xf5\x1f\x9c\x0b\x4b\x3d\x50\xc3\xe6\xc0\xde\x7b\x74\x08\xee\x0c\xde\x65\x24\x87\x27\x10\x3d\x23\xd1\xc4\x5f\x89\xac\x00\x41\x03\x5c\x11\x3b\x33\xd7\xb4\x19\x54\x58\xeb\x2b\x3d\x40\x28\xf6\x83\x70\xa2\x0f\x7a\xd0\x8f\x94\x0a\x29\x9f\x72\x2f\xdf\xec\x26\x6b\x21\x4b\x67\x51\x35\x9c\xe2\x5b\x66\x74\xdd\xe4\x11\x1d\xd5\x34\xfb\xc9\xa6\xa8\x5f\x98\x07\x6f\x1e\x8c\xd8\x2c\x93\x69\xf9\xc9\x14\xe5\xef\xa4\xed\xe6\x17\x89\x7e\x91\x5d\x5d\xd5\x0a\xa5\xe9\x2f\x72\x51\x19\xca\x11\xab\x45\xb5\xc4\x8a\xa3\xc1\x8f\x9e\x06\x5c\x33\xce\xea\xcd\x4b\xce\x40\x02\xd2\x7e\x99\x02\x9e\x9e\x59\x91\xe9\xf9\xea\xa2\xe0\x4e\x71\x73\x34\x5a\xa1\x82\x2f\x56\x96\x24\x1d\x7c\xe3\x66\x5b\xeb\x66\x62\xc2\x32\xd1\x84\xf5\x96\xfd\x46\x2b\x7a\x6d\xc5\xfc\x09\x21\x47\x31\x88\x18\x54\xd3\x30\x11\x38\xd2\xdf\x53\xbe\xa2\xd2\x50\xa6\x3e\xcb\x79\xf7\x0f\xf3\x89\x8d\xb3\xd5\x89\x96\xd9\x27\xf9\x81\xe3\x4d\x38\x66\xf6\x81\xbb\x2a\xe4\x0b\xa6\x5f\xd6\x07\xde\x02\x5f\x72\xbc\x86\xa2\x09\x3a\xae\xde\x51\x4d\x28\xb7\x63\x2e\xd4\xb8\x74\xdc\x7b\xa7\x9d\xc0\x26\xd7\x7b\xa5\xe8\xa7\xfb\x34\xc5\xc2\x0e\xc3\x8a\x9f\xdd\x9b\x5d\xb4\x87\x1e\x3a\xb1\x32\x45\x6b\x07\xaf\x8f\xcb\x77\x01\x2c\xf0\x7d\xd9\x0d\x3d\x3f\xfb\x6d\x0c\x7a\x8e\xf9\xd9\x0c\xda\xf0\x8f\xda\xa7\x5f\x56\x28\xbf\xa5\x45\xbd\x97\xf4\x81\xd2\xb6\x84\x9f\xcc\xab\x7f\xb9\x06\x3c\xcd\x6d\xf9\x85\xef\x35\x6e\xb1\xb3\x02\xe1\x64\xda\x75\x5c\x3e\xb0\x14\x62\xaf\x74\xa9\xfc\x0c\x22\x27\xc2\xec\x34\x02\x14\xf4\x1c\x8e\xc1\x8f\x6c\x19\x0d\x5e\x27\xd7\x09\x3a\xdd\x8f\xd9\x2a\xf6\x5b\xd4\xb0\xed\x2a\x6e\x0a\x0a\xb5\xc5\xc1\x1a\xdc\xc0\x37\x66\x9f\xa9\x17\x1a\x16\x75\x0f\x61\xb7\x63\x67\xa2\x7a\x7e\x66\x43\x54\x9d\x25\x23\x21\x46\xc9\xee\xe3\xf9\x99\xf1\x7c\x78\x36\xdb\x7d\x3c\x0f\x8e\x68\xfd\xc9\x63\x5d\xfb\xcd\xf9\x13\x7c\xbb\x61\x39\x2c\x37\x9a\x1a\x8c\xbe\x33\xe6\xb6\xaf\x65\xcf\x4d\x0d\xee\xe7\xd1\x55\x51\xc5\x15\x44\x7f\x4a\x70\x32\x36\x67\xd6\xbe\xcf\x71\x9f\xf1\xe5\xee\xdc\xbe\xa0\xf5\xa8\xfb\x04\x19\xb6\xca\x1f\x01\x5e\xd9\x01\x5a\x78\xf5\x1b\xf4\x4a\xc6\xb3\x68\x68\x26\x8c\x89\xb1\x2d\x86\x88\x68\x64\x8a\x70\xdd\x34\x12\x1c\x12\x65\x41\x51\x40\xe4\xbc\x52\x3f\xbc\x62\x21\x46\x31\x8f\xbe\x32\x3f\x2b\x94\xd3\xe0\x43\x4f\xf7\x86\xd1\xdb\x17\x52\x6c\x89\xf9\xf9\x4e\x10\x0d\xf3\x65\xad\x30\x9b\x48\x6a\xbc\x62\xfc\xad\x2d\x13\x26\x45\x65\x75\x65\xb2\x58\x42\x2d\x0d\x86\x4d\x11\xb7\x93\xf4\xa3\xa2\x92\x17\x95\xbd\x5c\x2b\x97\xae\x6b\x19\xf7\xe3\x64\xaa\x8f\x40\x51\x2b\xfd\x4a\x18\x72\x8b\xb4\x09\xe6\xb4\x4e\x07\xcc\x8a\xe6\xbe\x65\x9c\x1a\xd6\x71\xed\x9a\xe2\x70\x1f\xbe\x2a\xec\xc9\x66\x93\xab\x42\xfa\x76\xae\x5c\xf2\x34\x04\xd5\xf5\x33\xe7\x51\x69\x66\xcf\xdf\xeb\xfd\xd6\x55\xb7\x9f\x2f\xbd\xc7\xe7\x36\x0d\x38\x7d\xae\xdf\xa2\x62\xd7\xfc\x47\xb6\xba\xa6\xaa\x36\x0d\x95\x45\xb9\xa1\x2b\x5d\xc8\xd5\x33\x29\x1a\x19\xf6\x23\x32\x49\xdf\x99\xbd\xfe\xc6\x35\xb6\x2d\x3e\xea\xa9\x75\x3e\xbf\x35\x4e\xc9\xa6\x6d\x8a\xf1\x84\x60\x07\x0e\x04\xe3\xd7\x3f\x11\xf7\xeb\x67\xf7\xeb\xad\x26\x0f\x7e\x8a\xbe\x7e\xf6\x77\x6b\xc3\xd6\xca\xd4\xaf\x69\xf5\x42\xc8\x67\x86\x81\xf6\x8a\xf2\xbd\x9f\x5a\x87\xcd\x85\xf9\x84\x69\x44\x80\xa1\x4e\x08\x61\xa0\xdf\x81\xaf\x4d\xde\x68\x5c\xf1\x95\x58\x69\x82\xc7\x9b\xdd\xfa\x6c\xa3\x55\x88\xf0\x87\x28\xaa\xc5\x87\xb6\x0d\x76\xa4\x5d\x6f\x49\x97\xa7\x6b\x45\x25\x1c\xf3\xf6\xd3\x28\x9c\x79\x87\x07\x36\x17\xfc\x34\x40\x8e\xf1\x41\xa0\x9b\x5d\x4b\xc1\x15\xa3\x92\xd8\x4f\x38\xb4\x42\xa3\x9d\x1a\xa7\xc3\x8e\x3c\xb2\xfc\xe6\xd1\x08\x53\x83\x9f\xa5\x29\x95\xd1\x50\xbf\x6b\x39\xaf\x5f\xab\x96\x1a\x42\x26\x0e\xb2\x15\xe0\x87\xc8\x0e\xe6\x44\xa6\xa9\xf7\x50\xf8\x65\x40\x09\x74\x78\x0c\x70\x58\x1e\xbf\x0e\x5b\x1d\x7f\x71\x14\xfd\xc6\xf2\xef\xbe\xe1\x96\x69\xc2\x3c\xd1\x36\xb5\x3c\x35\x70\x36\x02\xae\x5d\xf4\x91\x44\x0e\x5f\x2b\xc8\xf4\xbc\xb8\xf0\xe9\x0e\x6d\x2b\x46\x23\xe4\x13\x17\xc5\xd2\xc2\xd5\x34\xcd\xc4\x88\xf4\x64\xf8\x01\xc9\xb9\x18\x19\x87\x8b\x25\x65\x55\xc6\x00\x05\xb3\xad\x3e\xe6\xa8\x69\x66\xe8\x91\xca\xc5\x48\x1d\xa2\x60\xbf\x01\xdf\x5a\x94\x58\x12\xbd\xa0\x03\xd5\xb3\xef\xa6\x98\x84\xec\xa1\x0f\xe2\x99\xa6\x1f\x99\x23\x30\x3a\xb1\x5d\x8f\x49\x2c\x2f\xa9\x20\x0f\xe4\xb5\x71\x1e\xdf\xd7\x8f\xca\xed\xb8\x1e\xbf\x7f\x3b\x7a\x7c\x8d\x93\x04\x8d\xda\x2d\x55\x1b\x1a\x16\xcd\xfe\xd7\xe6\x7d\x8d\xde\xd7\x8f\x74\xc1\x33\xa8\x95\x20\xfc\x46\x45\x67\xe5\x99\x1e\xd5\x3f\x32\x8a\x30\x1c\x22\x7c\x82\xca\xf8\x27\xd8\x84\x68\xd4\x3d\x0a\x16\x7a\xc4\xe0\x77\x2f\x48\x74\xd4\x6c\xda\xe0\x1f\x42\x13\xeb\xde\x48\x0a\x22\x7f\xc9\x16\x35\xf7\x98\xaf\x34\x91\xbf\x62\xad\xc7\x4f\xbd\xcf\x67\xc9\x88\x21\x34\xe8\x22\x26\x26\xae\x6f\x9d\x10\xc2\xe0\xea\x85\x0c\x10\xfb\x90\x0b\x30\xb8\x37\x41\xb1\x34\x28\xec\x94\x72\xe0\x56\x1f\x96\x11\x44\x96\x39\x28\x5b\xde\x8b\xb2\xe6\x49\x92\x9b\xe8\xd3\xf8\x55\xb4\xbc\xaf\x1e\x58\xa3\x30\x6c\xe8\x20\xb8\x71\x1a\x77\xb0\x1d\x04\x61\xd5\x15\xf4\xdd\x89\x21\x6a\xe2\x1f\xb8\x73\xd7\x5e\x32\x6f\xbf\x06\xfb\x10\x1c\x7a\xcc\x09\x3d\x57\xe4\x35\xcf\x38\x3a\x47\xf7\x9c\x64\x0c\xde\x47\xbe\xca\xa6\x78\x38\x45\x48\x43\xa1\xad\x61\x7b\x4a\x7d\xb7\xe0\xb3\xdc\x8c\xd9\x44\x89\x49\xb9\x39\xe8\x96\x4d\x1b\xdf\xda\x36\x9c\xd9\x42\xdb\xc8\x40\x8e\x09\x0f\x7b\x1d\xfb\x76\x74\xa3\x19\x07\x06\x36\x74\x82\x3a\xc5\x4c\x27\xee\xf6\x46\x11\x4a\x8f\xd6\x11\x5b\x48\x39\x50\xfe\x49\x7a\xce\x32\x89\xa5\x01\x9d\x9a\x4c\x8c\xdf\xa6\x97\x99\x4f\x09\x32\xfd\x33\x35\xc5\xf2\xc4\x15\x97\xe4\x25\xc4\xf8\xba\xec\xb4\x08\xcc\xf3\xb8\x0f\xd9\x36\x4c\x68\x0c\x00\x5e\xb7\x73\xb8\x16\x19\xf5\x57\xe5\xd4\x91\x45\xe7\xe3\x19\xa8\x65\x52\x77\x0e\x75\xf2\xdc\x57\x24\xfe\x97\x8f\x51\x72\xaa\xa9\x25\xca\xd5\xe5\x78\x96\xa6\xc3\xa8\x2d\xb8\x11\xc7\xad\xd9\xe0\x27\xfa\xc9\xf1\x49\x3b\x48\x53\x78\x16\xce\xe8\xdb\xfe\x5d\x51\x7d\x27\x1c\xf3\xc0\xfd\x97\x79\x17\x9c\xbb\xa8\x2a\x7c\x4e\x7c\x70\xdd\x90\xa9\x9d\x9f\x60\x76\x63\x8d\x9b\xf9\x22\x2d\xd8\x0c\x4a\x98\x7a\x3f\xda\x20\xd1\x1d\xc6\xb7\x19\x59\xf0\xb4\x1d\x77\x64\x8a\xe8\x7e\x5c\x81\xb8\x1b\x93\x7f\x55\x48\x7d\x4b\xf3\x16\xe8\x01\x43\xcf\x40\x98\xb9\xcc\xa7\x78\x25\x4a\x3b\x50\x6e\xc7\xe4\x3e\x47\x6b\x0d\x92\x47\xaa\x45\x06\x71\x8c\x27\xe6\xaa\x83\x38\x62\xb3\xbe\x26\x33\x0c\x2c\xfc\xc2\xe9\xd8\x19\xee\xcd\xd6\x4b\xe8\xe1\xfb\x86\x4a\xd5\x47\xda\x05\x34\xd4\x96\xf1\x71\x4b\x21\x69\xa2\x2e\x3c\x52\x37\x1e\x2b\x4d\xbc\x38\x7f\x23\x24\xfb\xed\x13\xad\x3a\x2a\x6c\x36\x9d\xfe\xee\xfc\x4c\xf7\xe1\x53\x8e\x3b\xd9\x04\x9d\x0c\x68\xc6\x11\xa6\x99\x91\x88\xf0\x7e\x99\x00\xef\xc8\x3f\x54\xc6\x5b\xe9\x00\x4e\xf4\xac\x59\x59\x54\x89\xe3\x8a\xb1\xfe\x66\x58\x1c\x6f\x5b\x79\x4a\x06\xa4\x23\x09\xcc\x53\x70\xe5\x1a\x32\x2b\xbc\xa1\xe5\x07\xba\xfa\x85\x4a\x61\xd0\xe8\xe1\xac\x25\xa7\xda\xe5\x71\xd0\x9c\x71\x8b\x5a\xfb\xed\x68\x73\x4c\xfd\x64\xf6\x47\x78\x61\xfc\x8e\xfe\x96\xa1\xfb\x4e\x00\xce\x2e\x72\xa6\x89\x84\xe8\x6d\x6b\x93\x8d\x26\x70\x86\x8e\x10\x3a\xc8\x2c\x56\xab\x67\x1a\xc3\x48\xd3\x6f\x43\x66\xbe\x13\xc0\x3c\x58\x07\xf5\xb7\x69\x55\x41\x7c\x82\x46\xb2\xab\x45\x7b\x2b\x7c\x86\xd5\x0c\x89\x78\xb3\xc7\x08\x50\x24\x9c\x50\x7d\x3d\x1a\xea\xd6\x88\x8e\x70\xbf\x3a\xba\x47\xcf\x27\x56\xfd\xe2\xa4\x66\x03\xed\x68\x36\x58\xc9\xdd\x01\xe1\xa9\x8d\xb9\xf7\x59\x3c\xac\x03\xc2\x5d\xa7\x02\xc1\xe9\x21\x44\xce\x8d\x18\x0e\xe5\x5b\x27\xfb\xc2\xf4\x93\x7b\xf4\xe2\x5f\xdf\xa3\x30\xf2\xa9\x31\x24\x69\x9a\x4c\x11\x0d\xb6\xdb\xb0\xcb\xae\x01\x47\x7e\x82\x2f\xd8\x20\xd1\x1c\xd9\xc1\x37\x46\xd0\xe5\x30\x0b\x46\xa6\xe7\xec\xe2\xf7\x69\x2a\x87\x3d\x6d\x34\x0d\x1f\xf6\xb5\x72\xce\x46\x23\xd4\x5b\x03\xfc\x23\xf5\x90\x26\x69\xfa\x8b\x46\x4b\x75\xef\x30\x6c\xfc\xf9\x43\x8e\xe2\x87\x86\x9e\x2a\xdd\x4b\xc5\x89\x0c\x97\xcd\xea\x42\x2b\x10\xb9\x04\x48\x58\xc4\xeb\xc8\x64\x4b\xa7\x3b\xcf\x8d\x80\x99\xe1\xde\x4a\x26\xdc\xbc\xad\x65\x2f\xbf\x77\x01\xe9\xea\x85\x5c\x22\x1f\xba\x55\xae\xa8\xb4\xb5\x5d\x05\x5d\xfe\xac\x16\x15\x5b\x9d\x81\xe3\x42\x23\x52\x49\xb0\x1d\x47\x9a\xba\x82\xf3\x4c\x1e\xf3\x7a\x23\x8c\x35\xb9\xaa\x44\xf9\x21\xc1\xa7\xca\x6d\xe2\xa1\xfa\x19\xf6\x16\xbe\x0d\x57\xc3\xa0\xc8\xf9\x27\x07\x90\x60\xd7\x78\xb8\xf5\xa5\xb8\xa1\xd2\xbc\x9a\xaf\xe9\x47\xf5\x4e\xbc\x75\xad\x84\xa5\xc2\xb7\x35\x93\x1d\x2e\xf3\x89\x79\xf6\x14\x3a\x31\xc9\x9e\x92\x66\x86\x0e\xaf\x31\x4e\x2a\xdd\x3c\x1f\xea\x3d\x39\x8a\x40\xeb\xb4\x25\xa4\x53\x89\x00\x47\xbe\x6d\xb8\x30\x8d\x84\x2a\xb1\x03\x6d\xef\x23\xf9\xfd\x80\x07\x5e\x53\x33\x3e\xde\x2b\x7f\x93\x59\xd8\xa2\x3d\x05\xee\x47\xce\x47\xb4\x1f\x39\x12\xe4\x03\x33\x4e\x31\x0a\xf3\x8b\x39\x85\x29\x39\xa1\xbc\xde\x4b\xea\x82\xa9\xb9\xef\x80\x3e\xd8\xb7\x89\x16\x9b\x1f\xd4\x17\x62\x9e\x09\x52\xbb\xe6\xbe\x63\xd9\x73\xfd\xb7\x46\xe8\xc4\x10\x90\x0b\x72\xc6\x78\xb6\xc7\x0a\x98\x69\x1a\x79\xce\x10\xba\x24\x05\xb8\x0b\x8f\x5a\xda\x23\x34\x3e\xd1\x12\x2e\xc8\xde\x29\x3a\xdf\xeb\x61\xe6\x02\x2b\xd1\xc6\x50\x2b\xb0\x18\xcd\xc2\x08\xd9\xff\x3c\x85\xbe\x6a\x6c\xcf\x48\x8c\x43\xc6\x59\xd3\xb4\x88\x2d\x50\x18\x40\x98\x9e\x38\x97\xad\x0f\x11\x4e\x7e\xce\x14\x1a\xf7\x2a\x5d\x8c\x0c\x1e\x1c\xe0\x19\xec\x04\xf6\x2c\x08\x37\xe7\xd3\xb0\x48\x64\xc4\x1a\x59\x67\x43\x09\xdc\x0f\xb0\x2b\xd5\xef\x58\xcf\x88\xd2\x14\xca\x5c\xdb\x8f\x2c\xf8\x0a\x83\x4c\x0b\xe7\x65\x0e\xf2\x61\xfe\xc5\x95\x31\x3b\x6f\xf9\x34\x7b\x32\x3d\xdf\x5f\x78\xfe\xcc\x7e\x34\x42\xf5\x62\xbf\x8c\xda\x39\x9c\x18\x45\xa6\x3a\x6c\x66\x28\xce\x47\xcc\x12\xd7\x61\x90\x5f\xeb\xa1\x3b\x7e\x1a\x2c\xf1\x72\xac\xf0\x65\x98\x35\x7f\x0a\x98\x7a\x96\xf5\x3b\x52\x00\x9b\xc7\x33\x14\xbe\x14\x70\xd2\xed\x14\x40\x35\x29\x60\x9c\x3a\xb2\x96\x3b\xc1\x4b\x3f\x2f\xa2\xc5\x76\x25\x3a\x16\x8a\x18\xea\xeb\xec\x58\x42\x46\x2b\x95\x20\x04\x81\xb4\xda\x83\x14\x6d\x77\x41\x58\xf8\x3d\x16\x03\x6f\x56\xd6\x72\x2e\x22\xe0\x04\x00\xf5\x98\x1f\xec\x4f\xbf\xc0\x51\xd5\xb0\xf1\x02\x8d\x66\x6d\x65\xf7\xb6\x1d\xb5\x35\x2a\x30\xef\x70\x97\x8f\x0b\xcd\xdd\x8a\xe6\xe3\x19\x3e\x39\xd8\xb8\x33\x73\xb0\x5f\xe9\x77\x7e\x38\x3d\xb8\x6d\x8d\xe2\x11\x07\x6e\x19\xad\x93\x8e\x90\x90\x7d\x21\xe4\xb6\xd0\x9d\x64\xfa\x46\xc1\x92\xb6\xcc\x77\x14\x87\x26\x0e\x23\xe2\xbb\x0b\x79\x4d\x15\x84\x51\x66\xfc\xfa\x19\x40\x94\xef\x69\xa9\x32\xe4\x14\x1b\xcd\xbb\xfe\x50\xa1\xb6\x87\xbf\xc4\x60\xbe\x3d\x6c\x06\xe5\xb7\xde\xfe\x89\x35\x15\xb3\x3e\x25\xc8\xdf\x32\x6e\x98\xc0\xde\x78\x8b\xae\x98\x12\xf2\x65\xfd\x0d\x5c\x69\x32\xe4\x1e\xe6\x85\xc7\x04\x8a\xda\x0c\x8f\x5d\xf4\x42\xfa\xb0\xa4\xdb\xe1\x3e\x42\xd6\xa8\x94\x57\xab\xaf\xcd\xb0\x4d\xd1\x15\x68\xd0\x43\x16\xe8\x02\x10\xe9\x4c\x9d\xb6\x35\x01\x4f\xba\x76\xd0\xce\x98\xa8\x5d\x8f\x7f\x3b\x85\x7a\x19\xd6\x0d\x00\xd9\x78\xae\x8e\x8b\x25\x81\x1f\x39\x9c\x81\x6e\x95\x32\x1d\xa7\xa9\x72\x6b\x06\x0f\xd1\x25\x91\x5e\x38\x14\xe6\x29\x71\x61\x73\xde\x09\xaf\x8b\x2f\x8f\xe5\x32\x4d\xd3\x93\x78\xe9\xab\x22\xfd\x0e\x46\xa2\x22\x9b\x95\xa6\x53\x42\xc0\xb6\xbb\x85\x42\x3f\x82\xb1\x43\x66\x86\xad\x82\xb5\x71\x0f\x34\xb7\xc0\x88\xc3\x81\x72\xee\xd0\xf5\xdd\x8c\x27\x35\x6e\xc1\x9d\x3b\x2f\xaf\x80\x0f\x88\xb9\xe3\x6c\x15\x6d\x88\x37\x86\xc3\x69\x8f\x4e\xd5\xd5\x48\xad\x5b\xa9\x0b\x91\xa6\x62\x1c\x7c\x3f\x99\xc2\x43\xeb\xc7\x63\xfb\xc1\x6d\x11\x8d\x78\xdb\x45\xb9\x2c\xf4\xaa\x98\xdf\xe3\xc2\xd4\x8d\xc6\xe3\x57\x0f\xe1\xb7\xd0\xee\x57\x4e\x0e\x20\xf4\xc8\x7f\x70\x5f\x05\x72\x71\x78\xc5\x30\xd8\xc7\xa6\x29\x86\x7e\x07\xf4\x06\xc5\x02\xb7\x61\xab\xef\xe7\x02\xa5\xca\x58\x04\x17\x94\x80\xef\xf3\xac\xdf\x0c\xb8\xbd\x9b\x53\x42\x38\x74\x68\x61\x57\xd3\xa8\x4b\x9b\x02\x43\xb8\xb0\x1f\x7a\x78\xf3\xcc\xfc\x26\xbf\x28\xdb\x1c\x6e\x33\x89\x42\x79\xd6\x7e\x5e\xaa\x79\x5c\xb8\xcd\xf2\x71\x85\x4d\x12\xca\xdb\xac\x0b\x05\x1e\xd1\xa0\x9e\x1d\x96\xe1\xc8\x71\x43\x2d\xa2\xb8\x47\xec\x06\x7a\x21\xe7\x71\x2d\xdb\x03\xf4\xed\x0a\x61\x89\x5c\x5f\xef\xc4\xa5\x3c\xd1\xd3\x14\x43\x5f\x12\x21\x84\x06\xae\x34\x91\xa0\xa9\x05\xee\x5d\x64\x28\x15\x35\xb8\x99\x7d\x7f\xc3\x23\xd3\x12\x65\x20\xeb\x77\x6a\x30\xa0\x42\xd6\xd6\x07\xf0\x6f\x63\x13\xc1\x9d\x82\x1b\xbf\x87\x3b\x56\x41\x9c\x43\x7b\xf7\x4f\xdd\xc5\xff\xf8\xfd\x8e\x71\x88\x92\x7c\x2d\x5a\x27\xb0\xd5\xe5\xef\x41\x4d\x2e\xd6\xe1\xf1\xa8\xbd\xd5\x98\xf8\xc4\xd1\x32\xa1\x28\x8e\x91\x17\x88\xac\x62\x5b\xc6\x05\x11\x01\x1e\xd0\x2a\xfc\xef\x43\xcf\x1d\x9c\x7e\x54\x6f\xd9\x55\xc5\xf8\xb5\x1b\x61\x9d\xa6\x37\x1a\xfd\x0c\xd4\x33\x35\x41\xf8\xe3\x86\xd2\xca\xd8\x37\x12\xa2\xe6\x5d\x61\x85\x19\x79\xae\x4e\x7a\xd1\x40\x58\x1e\xbc\x41\x88\x3d\x17\xb8\x0c\xae\x00\x5e\x93\xe9\xf9\xfa\xa2\x72\xe8\xdf\xda\xb9\xc3\x5b\x91\x6a\xb1\x86\x60\xb8\x2b\x87\x8b\x9e\xbb\xf0\x7a\x2b\x30\xf0\x4d\x53\xf3\x37\xe8\x9c\x10\x61\x90\xe5\xf3\x62\x48\x4c\xee\x39\x2a\xc8\x3e\x2b\x0c\x78\xd8\x10\xe6\x28\x1b\x95\xa6\xea\x82\x94\xba\x91\x76\x2d\x07\xab\x49\x09\x2c\x7c\x88\xa3\x24\x32\xff\x89\x13\x83\x6e\x25\x08\x58\xdf\xd9\x86\x0c\x67\x08\x43\x94\xf4\x15\x2e\xf5\xe1\xc6\x9b\x34\xcd\xfe\xa1\xab\xb4\xcd\x21\x1c\x7e\x45\x68\x5f\x47\xa3\xf7\x1d\xfd\x08\x13\xc8\x42\x8c\xb3\xd4\x57\x06\x17\x76\x22\xe1\xae\x1d\x7c\x84\x81\x1d\xa9\xda\x41\x0c\x44\xcc\xe5\xda\xe1\x02\x1d\xca\x11\x59\xc1\x2b\x71\x30\x0b\xe3\x16\xe4\x00\x8e\x1f\x8e\x4e\xb4\x7d\x6e\x10\xfe\xc4\x99\x4d\xf4\xc5\x8d\xee\x90\xb4\xbb\x9b\xa6\xfa\xe8\x0f\xf5\xda\x96\x16\xc3\x70\xec\xd4\xd2\x2b\xb0\xff\x43\x64\x32\xd0\x01\x36\xdf\xa1\x02\x12\xf2\xd4\x73\x1d\x93\xd8\x31\x6f\xa4\xe5\x83\x4e\xf1\xde\x8c\x37\xd6\xa9\xe8\x40\x78\xdc\x01\xf0\x1d\xf8\x6e\x64\xe4\xbf\x9f\x4e\xe1\x91\x3a\xa1\x7b\x31\x9c\xb6\x38\xc9\x5f\xbb\x9e\x2d\x95\x7f\x2c\x31\x27\xc3\xe9\x79\xc6\x4f\xb3\xa3\x54\x17\x3b\x1a\x1a\xf4\xa8\x69\xb2\x98\xa6\x07\xeb\x9c\x7b\x25\x76\x2d\x81\x7b\x5a\xea\x31\xde\x00\x8a\x65\x68\xff\x03\x6a\xdf\x74\xf2\xb7\x40\x9d\xd9\x82\x58\x84\x87\x59\x17\x0f\x6a\xa1\xc0\x29\x7c\x28\x2e\xa1\x81\x1f\x4a\x53\x83\x9e\x9d\x73\x7d\x35\xee\x7f\xd1\xb0\xd7\xe0\x2a\xdf\xea\x9f\x14\xc6\xf4\x03\xd8\xe0\xe0\x3f\xc3\x9f\x83\xa6\xa4\xae\x79\x51\x65\x14\x7b\x07\xe1\x11\xef\xd2\x3f\x4c\x41\x87\x5d\x1d\x9d\x10\x68\xd9\xb7\xe5\x44\x69\xfd\xfc\x66\x61\x9f\x6e\xa3\x8c\xd4\x2e\xc1\xb4\xa7\x6b\x7c\x34\x55\x7c\x7a\x2c\x3d\x2b\x77\xa2\xf4\x3b\x71\xbc\x86\xed\xa1\xfa\x29\x44\x74\x39\xbd\x35\x94\x00\xbc\x65\xff\x66\x9e\x52\x58\x5f\xfc\x57\xf8\xb0\x62\x99\xce\x32\x73\xb3\xcc\x60\x6a\x6e\x74\x5a\xb3\x90\x1e\xfe\xb3\x0b\xcc\xde\x2b\x2a\x6e\x85\x0b\x13\x2f\x6b\x32\x94\x55\x5b\xa1\x87\xd3\xa8\xc0\x82\xe2\x64\x8d\xde\xeb\x1c\x96\xef\x61\xbc\x5a\x81\x56\x2c\xaf\xfe\x25\xf6\xab\x1a\x33\x5c\x1c\xbc\xf2\x7a\xe5\xd8\x68\x07\xa8\x10\x2b\x3b\xe7\xee\x9d\x61\xb8\xb6\x77\x16\xe2\x4e\xaf\xb3\x61\xed\x79\x1f\xc6\x9a\xa0\xb8\xf8\xa3\x29\xba\xb7\x61\x66\xda\xa6\x47\x51\x82\xe5\x6e\x33\xb2\x1f\x4b\x2c\xc9\xbe\x85\xd2\x95\xab\x79\x82\xf0\x1b\x30\xe2\x82\x08\x8e\x21\xc2\xe0\xc1\xe0\x10\x06\x60\xd8\xa5\x1a\x33\x50\x74\xb9\x78\x92\xa6\x19\x23\x5f\xab\x4c\x21\x84\xb3\xf2\x72\x32\x9d\xce\x9a\xa6\xbc\x18\xeb\x1f\x9a\x6c\xf8\xc8\x32\x53\x51\xdf\x35\x4a\xed\x07\xc2\xf5\x44\xd2\x5a\x21\xcf\x79\x31\x4f\xaf\x49\x0d\xdf\x5f\xa8\xa2\x13\x17\xeb\x25\x3a\x04\x87\x86\x52\xcb\x45\xa1\x47\xda\x36\x8a\x4c\xcf\xd5\x05\xed\x6a\xdb\x8c\x46\x0a\xf9\xc4\x85\x72\x4a\x35\x24\x4a\xeb\x3c\xe2\xd1\x6a\xb6\x9d\x03\xfd\x73\x62\xd7\xef\xc1\xbf\xed\x21\xe2\x78\x19\x4a\x14\x18\x61\x82\xf4\x71\xdb\x80\xfd\x25\xce\x05\x11\xe1\xd3\x8a\x47\xa3\x02\xc9\xc5\x91\xc6\xc9\xa2\x58\x2e\x89\xb0\x63\x03\x7e\x9b\x08\xba\x18\x31\xcc\x4f\xd6\x09\x68\x62\x27\x90\x06\x2e\xd6\x77\xa2\xce\x7f\xd6\x38\x92\x29\xfe\x4e\xa8\xc2\x0b\x97\xfb\xf8\x76\x26\x0d\x64\xc3\x32\x12\xdb\x72\x1c\xbe\x61\xfd\x62\xe5\x60\x1b\x01\x6d\xb1\x9e\x81\x62\x19\x8c\x72\xf8\x8e\xdb\x3f\xe6\xae\x89\x5e\x42\x9b\xb7\x60\xcb\x41\xa2\xe8\x47\x95\x40\x30\x30\xe3\xdb\x39\x77\x08\x92\x4e\xab\xdb\x0e\xf2\x04\x14\x8f\x20\xb9\xa0\x99\x2e\x68\x76\x3e\x81\x48\x67\x7b\x6a\x15\xd5\x0f\xbe\x79\x63\x60\xda\x7a\xe4\xa0\x11\x9f\x85\x03\x96\x67\xf4\x50\x40\x50\x09\x09\x9f\xa7\xae\x0d\x56\x4b\xa0\x23\xd2\x1e\x36\xfd\x7c\x74\x92\x9c\xd6\x93\xf5\x90\x06\x3d\xd8\x8a\xba\x01\x38\xad\x91\x0f\x35\x9b\xe5\x85\xb5\xb6\x4c\xa4\xf8\xfa\x04\xb9\xba\xed\xd4\x18\xed\x65\x68\x1c\x29\x8f\x0e\x5a\x57\xd4\x06\x1d\x23\x16\xcc\xcd\xb3\xd3\x95\x88\x35\xb8\x77\x2a\xe6\xd2\xab\x7d\xcb\xc9\xd5\x9e\x55\x0a\xe5\x85\xd5\x2c\xf3\x03\x12\x34\x8e\x81\x07\x0b\xe3\x15\xc7\x30\x27\x76\xc4\x03\x93\xe5\xfc\xbf\x02\x1f\x16\xf6\x01\x6c\x21\x35\xc6\xf1\xe0\x92\x42\x29\x5b\xc8\x15\x36\x55\x31\x9f\x5c\x5d\x83\xbc\x51\x13\xde\xf6\x27\xb8\x2b\xa5\x1f\x95\x4f\xf7\x1f\xf3\xcc\x17\x22\xbe\x26\x0e\x0a\x90\xa0\x26\x86\xe3\x87\x72\xc3\x36\x8e\xa7\x46\x64\xb0\x0a\x05\x9c\xb8\x1e\xdd\x3c\xea\xba\x98\xfb\x5f\xa3\xe4\x2c\x19\x59\xfe\x61\x3b\xde\x24\x41\x79\x9c\x06\xcc\x29\xdd\x71\xc7\x87\x80\x2e\x73\x55\x94\x1f\xae\x41\x95\x05\x0e\x68\xfb\x89\xd4\x3c\xfc\x0c\x86\xab\xf2\x2c\xca\x39\x41\x7e\x45\x8d\x45\x4d\x1b\x7d\xd1\x81\x23\xa8\x02\x64\x03\xb0\x88\xb0\x64\x47\x72\x1e\x5f\x35\x85\x9c\x8a\x14\xf4\x68\x0c\xb0\x74\x57\x30\x79\x0d\x86\xcc\x82\x41\xbb\x91\x7e\x62\x5c\x20\x37\x77\x63\xd8\xbd\xd9\x41\x95\xc4\xba\x45\x56\xb6\x8c\xdb\x09\xff\x3b\xda\x0b\x9f\x1a\xed\x86\x4f\x1d\xd0\xee\x09\x50\xba\x60\x60\xaf\x1e\xc0\x48\x60\x2c\x5e\xb7\x22\x07\x7e\x44\xe6\xda\x5c\x7d\x98\xaf\x5b\x8d\xfe\xf6\xf3\x2b\xbf\x9c\x0f\x37\xf0\x55\xb0\x5d\xc7\x69\xbe\x51\x98\x8b\xc9\x35\xc2\x79\x27\x61\x00\x89\x73\x4f\xc5\x4f\xda\xd9\xb4\xfb\x7d\x96\x8c\x8e\x3b\x30\xd1\x57\x73\xb3\xbe\x7d\x92\x53\x3e\xf1\x2f\xda\x98\x4f\xba\xef\x19\x8a\xcc\x25\x92\xd1\x71\x09\x23\xaf\xc1\xac\xa3\xa5\x71\x34\x13\x07\x35\x0e\xee\x4d\x0a\x46\xfa\xaa\x90\x1f\xa8\xac\x4d\x1c\xf1\x1e\x3e\x49\xd3\x08\x74\xef\x16\xc9\x7a\x25\x76\xdb\xf5\xc9\x05\xb2\x2f\x6a\xf2\x9f\xb1\x12\x09\x32\x63\x8c\x15\x44\x6a\xaa\x7e\xe0\x74\x65\x42\x17\x64\xc5\xd1\x62\x14\x01\xc4\xec\xee\x4f\x9a\x66\x45\xec\xa7\xa4\x6f\x17\x11\xee\x97\x7e\x81\x23\x19\x71\x5a\xe1\x0f\xc8\xa6\xb6\x3c\x29\xfa\x05\x58\x21\xeb\x42\xa2\x7f\x4d\x82\xd5\x2e\xab\x5b\x33\x8d\xe6\x9c\x1e\x52\xe7\x40\x1d\x69\xd9\x06\x92\x26\x58\x70\x84\xb0\xf0\xb8\x6a\x4d\xa6\xe7\xf5\xc5\x11\xb6\xd6\xe2\xac\xb5\xc3\xf7\x8f\x31\xba\x7a\x89\x2b\x22\xba\x46\x86\x7b\xa4\x17\x70\xbf\x1c\x54\x69\x7a\x62\x75\x16\xd5\xb2\xef\x5c\x3d\x30\xf9\x7d\x77\x96\x3c\xd4\x19\xb0\xd9\x09\x8a\x30\x74\x8b\x4f\x49\xf0\xcc\xe0\xe4\xad\xc6\x2f\x83\xfb\xb2\xa0\xbf\x15\x29\x5b\x78\xd4\x42\xf1\x73\x7e\xce\x09\x6b\xc5\x96\x21\xbb\xb0\xbb\x23\x1e\x99\xe3\xed\xf9\x4b\xd3\x1e\x10\xc7\xd1\xa1\x74\x83\x6b\xc7\x5b\xd1\xae\x93\x4a\x87\x62\x78\x37\x1b\x80\x1d\x58\xfc\x82\x01\x92\xc0\xdc\xab\x0a\x13\x73\x08\x80\x4f\xd5\x37\xc7\x03\x7a\xff\xd8\xbb\x42\xfe\x37\x32\x08\x01\x0e\x20\x3d\x2e\x1d\x3a\x8a\x55\x07\x57\xf3\x63\xd7\xaf\xc1\x1a\x3e\x0c\x89\xa5\x6b\x0e\xa7\xba\x02\x10\x57\xb1\x46\xba\x8a\x68\x2b\x4d\x73\xda\xaa\x40\x5d\xf1\xa5\xa9\x3d\x0b\x16\x64\x4d\xc3\xf8\x8e\xf0\xf2\x74\x49\x2d\xa1\x41\x98\x44\x9a\x7c\x01\xda\xd5\xe6\x9f\x17\x17\xc1\x11\x2e\x3c\xc9\xba\x28\xf4\x91\x6d\xcf\xe1\x1e\x66\x76\x2c\x61\xb6\x3b\x89\x06\xfb\xc9\xa6\xe0\xab\x8a\x82\x9b\x05\x70\x37\x54\x37\x4d\x75\xac\xae\xc6\xae\xb9\x90\x74\x6c\x04\x75\xad\xd1\xe5\x8a\x66\x7b\x5c\x75\x7d\x11\xf4\xc1\xb8\x0a\x61\x96\xa6\xfb\x09\x04\x67\x9a\x77\x78\x97\x95\xe7\xff\x35\x8d\x34\x80\x2f\x17\xd1\xd5\xaa\x10\xfe\x05\xec\xa4\x25\x5d\xc9\xe2\x36\x12\xf7\xaf\xe2\xe7\x5b\x23\x13\xdf\x18\xf5\x1f\x74\x9f\xc9\xf6\x32\x34\x4d\xf8\x45\x16\x4b\x84\x8c\xd7\x5b\xd5\x4a\xda\x42\xda\x6a\xa0\x22\x45\x03\x0f\xeb\x1d\xab\x23\xd0\x39\x6a\x9a\x8c\x8d\xc9\xf1\x13\x80\x55\xac\xd6\xf5\xad\x69\xe9\xc4\x8b\xa8\x22\x59\xb7\xd1\x6b\x38\x44\xfd\xc0\x09\x8f\x68\x8d\x2f\xdb\x2e\x2c\x0d\x44\x12\x4f\x03\xe1\x60\x2d\x0c\x3f\xac\x6b\x1d\xd0\xf3\x6c\x39\x48\xf3\xa2\xf5\x27\x48\x9e\x8b\xec\xde\x70\xed\x7a\x23\xc4\x07\x4a\xd1\x97\x34\x8a\xc8\x3b\x03\xbd\xbb\x50\x6f\xd9\x17\xb0\x3c\x9f\x19\xc8\x74\x63\x3d\x65\xd0\xb0\xb0\xca\xc8\x81\xb6\x6b\x57\x39\xab\x9b\x6f\x98\x2a\x44\xcd\x8d\xca\x4b\x9e\x4c\x13\xbb\xb1\x74\xd2\x2a\x7c\x8f\x33\x35\xe7\xf9\xd4\x7a\x41\x83\xea\x81\x32\x45\xc4\xaf\x0a\xb4\xab\xe2\x49\x8c\x3b\x93\x60\x96\x6b\x05\x38\xf6\xc9\x61\x87\x23\x3e\xd5\xa5\x1e\xb3\x41\xd2\x8f\xd4\x80\x7b\xa7\x1f\x16\x90\x86\x67\x1e\x4c\xff\xb8\x0c\x9c\x65\x8d\xf3\xc3\xbb\xd3\x8a\xd0\x84\x5d\x23\xa3\xd9\xe1\x0b\x8c\x33\x19\x2c\x96\x69\xe8\x68\xe8\xe6\xbc\x46\xc7\x60\x1c\x1f\x03\xd1\x5d\x9e\xde\x79\x45\xc3\x3d\xd1\x8b\x5e\x1f\x2b\x7c\xeb\xd5\xa4\xd6\x34\x7e\xb8\x35\x97\xd3\x34\xcd\xa6\x84\x70\x1b\xc6\xe0\x37\x57\xf0\x9b\xa2\xfc\x90\x9d\x54\xc7\x9e\x22\x7c\x6f\x42\x47\xc3\xfc\x5d\x1c\x6e\x38\x39\x87\x03\xae\xa9\x7a\xeb\x75\xaf\xa2\x2b\x11\xce\xce\x97\x18\x12\xda\xd1\xeb\x6e\x1d\xce\x38\x1d\x08\x1b\x87\xf2\x1b\x9d\x1f\x05\xe3\xf4\xa3\xfa\xaa\x90\x41\x1b\xc7\xb5\x50\x30\xae\x77\x62\x77\x3c\x2c\x73\x26\x5d\x7e\x30\xa8\x38\xa3\x3b\xa4\xbf\x51\xa9\x3e\x31\x22\xdd\xc0\x51\x1d\x74\xc0\xd1\x6a\x1f\xc7\x22\xb8\x49\xd3\xe1\x6a\x9e\xcc\x9e\xc0\x71\x05\x15\xf6\xc1\xd1\xf1\xd8\xf4\xab\xbe\xdb\x43\x77\x7c\xc2\x77\x82\x71\x45\x8d\xef\xbc\xfa\xa8\x5a\x9c\x6b\x6d\xaf\x8e\x96\x92\x58\x4f\x78\xdd\x29\xd9\xf4\x03\x3e\x5e\x88\x8e\xeb\x7d\xda\xdf\x1f\xf8\x6e\x30\xfa\xe0\xd9\x8c\x7e\x11\x78\xa3\x95\x59\x2b\x04\x3e\xc5\x39\xf6\x82\x44\x1b\x52\xe4\x85\x14\xdb\xef\x74\x07\x99\x71\x90\x05\xea\x58\x96\xb5\x3c\x43\x43\x42\xe7\x27\x86\xe1\x44\xb9\x6e\x18\xe0\xd2\xe3\x80\x41\xeb\xbf\x3f\x64\x84\x5d\xe2\x96\xf9\x30\xe8\x89\xa1\x00\x65\x34\x26\x70\x94\x73\x03\xe7\xe1\x80\x83\x47\x05\xe1\xdf\x3e\xf1\xc2\x38\x56\xe0\xbd\xbd\x7d\x53\x1b\xfb\xfe\x81\x1b\x88\xee\x4f\x5d\x02\x9d\x73\x34\xbf\xc3\x21\x1c\x04\xc2\x5d\x0b\x04\x72\x6f\x1e\xa6\xfc\x05\x10\x8b\xf9\x6f\x07\xfc\x97\xd0\xcd\x2e\x88\x97\x48\xbc\xf3\x5c\x58\x8f\x81\x81\x6a\x93\xc1\x33\x5a\x57\xbc\x71\x33\x46\x64\x13\x85\x20\xb3\xe8\x1f\x25\xd3\x73\x7a\x11\x36\x64\x91\x3e\x3a\x1a\xa1\x9f\x58\xe8\xab\x37\x28\x04\x31\x8a\x8d\x0c\x9c\x92\x37\x93\xef\x44\x4d\x8e\x3c\x27\x1d\x7b\x0a\xdd\xd0\xc8\x55\xe8\x86\x06\xbe\x42\x81\x11\x49\x1d\xb0\x24\xea\x80\x77\xba\xe5\x72\xbb\x3b\x6e\xdc\xb3\x6f\x75\xa5\xb1\xc1\x9c\x9b\x86\x4e\xca\xcd\x58\x4d\xca\x4d\xe0\x98\x70\x1b\xb2\x7b\x75\x7f\x06\xcb\xd6\x45\x03\x2c\xf9\x86\x46\xed\xee\xcc\xe7\xc5\x74\xae\xf2\x00\x67\xbf\x3b\x55\x8a\xe6\x81\x5c\xe1\x9a\x06\x56\xd7\xce\xac\x23\x72\x98\x15\xbb\xf3\xfc\x1e\x54\xb5\x4c\x2c\x7e\x43\x4c\xb5\xa3\xff\x95\x1e\x47\x67\x37\xca\x69\x81\xa0\xcd\x19\xa2\xf3\xa6\xc9\x38\x11\x93\x9a\x56\x8e\x1f\xe1\x46\x11\xf9\xef\x6c\x9a\x04\xbe\x13\x42\x18\xae\x75\x85\x5d\xc5\x40\x29\xb1\xd6\xf4\x8b\xb1\x5e\xd7\x08\x42\x91\xa6\x7c\x22\x43\xfe\xfd\xe5\x0c\xb1\x75\x76\x45\xd3\xf4\xca\x32\xbc\xfe\x21\x18\xcf\x92\xf7\x3c\x41\x84\xb8\xd8\x0a\x51\x95\xdf\x5d\x45\x46\x9e\x84\x4c\xd1\xfd\x9e\x2c\xda\x80\x84\x15\x99\x9e\x57\x17\x71\xa9\xf3\x6a\x34\x42\x7b\x73\xa2\xa3\xf1\xd9\x62\x8b\x6a\xa9\xe9\x54\x78\xeb\x6b\xdf\x72\xa7\xe7\x34\xcd\xf6\xe4\x4a\x64\x9d\x78\x94\x66\xf7\x16\x74\x79\x40\xc8\x90\xad\x55\xb7\xe6\x78\x76\x5e\x5d\xea\x61\x8d\xc7\x66\xd5\x4b\x5f\x42\x93\xdd\x6b\x02\x06\xf1\xdb\x0c\xe1\x15\x29\x27\x4a\x64\x68\x50\x4e\xe8\x76\xa7\xee\x32\x50\xb3\x4b\x53\x79\x39\x9d\xaf\xc9\x86\x66\x6b\x73\xde\xd6\xfa\x68\x4a\xd0\x9c\x87\x0d\xf1\xee\x58\xd3\x74\x58\xcc\x57\xba\xa4\x51\xed\xc0\x5e\x20\xff\x9c\x65\xc2\xea\x7b\x44\x96\xa8\x78\x35\x29\x37\xa3\x1b\x91\xf9\xa8\xff\x08\xe5\x76\x4b\x40\x1d\x80\xd5\xa7\xf6\x27\x4d\xb3\x35\x59\x05\xc3\x9a\x22\xe4\x14\x59\xac\xc1\xbe\xd5\x51\x78\xa9\x8f\x28\xde\x11\xa3\xab\xbe\xc6\x4a\xe4\x2b\xac\x1b\xcc\xf7\xf3\xfd\xa2\xfa\xdd\xde\x76\xbd\xcc\x6b\x2c\x24\xbb\x66\x3c\x67\x4d\x93\x15\x73\x7b\xb4\xfc\x44\x03\x47\xb1\xf3\xa4\xdc\xab\x24\x4f\x46\x70\xfe\x13\x74\x18\x7c\x2b\xad\x66\xd6\x0e\x48\x2f\x8a\x13\xc8\xfa\x9e\x16\xab\x04\x53\xbc\x43\x07\xa5\xd7\x27\x4d\x9f\x9b\xab\x86\x7f\x94\x86\x1b\x7c\x34\x54\xb2\xf1\xa9\xea\x6e\x67\x62\x66\xe0\xde\xd3\x4f\x7a\x46\x46\x42\x8d\xde\xdb\x8e\x14\xa5\xac\xd8\xee\x4a\x14\x72\xf5\x75\xa1\x0a\x8b\xfa\xb5\x09\xfa\x1d\x35\xae\xda\xf4\xea\x3c\xde\x55\x05\xe3\x86\x1f\xe7\x5c\xee\x9d\x51\x17\x6e\xca\xc6\xd9\xd6\x18\xe1\x84\xd5\x7a\x96\x6f\x78\x75\x97\xa1\xa6\x51\x9e\x2f\x64\x11\x01\x98\x54\xd3\xfc\x45\x65\x2a\xb2\x16\xfb\x95\x82\xa3\xfb\xa9\x93\x49\xc1\x62\x5b\x7f\xee\xed\x14\xec\x72\xdd\x47\x9c\x4b\xd0\x85\x91\xac\x04\xf5\xe8\x50\x87\xa4\xde\x16\x52\x69\x4a\x8f\xb7\xec\x06\xe7\xe8\xa1\xa6\x15\x98\x22\x75\xaf\x07\xd7\xd7\x83\xbb\xeb\xc1\x7c\x09\x27\xf3\xce\x18\xb8\x98\x9c\x94\x9b\xcb\xd9\x74\xda\x34\x1c\x34\xe4\x6c\x91\xf1\x6c\x69\x72\x8d\xec\x89\xb5\x1f\xa8\x05\x72\xd6\x0b\xc6\x53\x65\x9b\x42\xb8\x20\x46\xe1\x56\xc4\x53\x69\x5f\x32\xc3\x87\xeb\x64\x3b\x88\x52\x1b\x63\x04\xe5\x03\x49\x76\xcb\x95\x9b\x42\x3e\x55\x59\x8d\xd0\xe5\x78\x86\xee\x0b\xf2\xb3\xcc\x28\x0e\x06\x87\x13\x58\x29\x17\x13\xc8\x82\x9f\xb6\x19\xd8\xb3\x34\xed\x24\x18\x9f\xde\x5e\x07\x31\x9c\xac\xb9\xa1\x4e\xab\xd1\xaf\x18\x42\xa0\xb5\x7a\xb2\x7b\x34\x28\xd2\xd4\x5c\x97\xa8\x27\x7d\x65\xc2\xe6\x43\x3e\xde\xdb\x8e\xb0\x7b\xb1\xc4\x52\xff\x67\xd8\x4a\x7e\xaf\xe3\x7d\x0e\x94\x1a\x48\xb7\xc8\x82\x07\x7b\x88\x05\xb9\x37\xae\x45\xf3\x0d\xcd\x18\x9e\x22\xac\xf3\xe0\x03\x7c\x91\x1e\x06\xd2\x02\x73\x7d\xf6\xe1\x17\xec\xf0\xf7\xba\xad\x23\xbf\xa4\xde\x50\x06\x00\x8e\xc2\xa6\xc7\xc8\x98\xf8\x8d\x7b\x64\xe3\x00\x66\x7b\x25\x4a\x21\x25\x2d\x55\x82\x13\xb1\x5e\x27\xd6\x07\x6a\xb7\x4c\xb1\x63\xaa\xa8\xc0\xa5\xdd\x89\x62\xf5\x8e\x56\x15\xd0\x6c\x6d\x9c\xc4\xc0\x1d\x1a\xf5\x04\x4f\xb9\xf5\xe1\x4b\x24\xbd\x31\xc0\xc8\x51\x99\x3b\x51\x55\x8c\x5f\xbf\x28\x6a\xe5\x63\xb5\xd9\xb4\x08\xfb\x67\xbc\x28\xcb\xbd\x2c\x14\xf5\x4e\x1e\x7d\xf9\x4d\x51\x1f\x27\x96\x62\xbb\x13\x35\x34\x13\x09\xb7\x9f\xb6\xe1\x1a\x9e\x09\x03\x92\x0a\x49\x8b\x4f\xba\xa2\xb2\xac\x23\xf0\xee\x18\x38\xa1\xf2\x2e\xaa\x66\x74\x7b\xec\x90\x2b\xb4\xd7\xa6\xce\xc3\x96\xb0\x21\xf5\xf2\x33\xa3\xf4\x72\x7e\xd6\xe7\xdb\xcb\xf6\xf1\x45\xd8\xc7\x14\xbc\x5e\x79\xfd\x51\x4f\x56\x58\x9a\x7c\x36\x9d\x4e\x35\x09\xd7\xdd\x28\xf0\x9a\xee\x76\x71\xd7\xba\xb0\xb1\x66\x8a\x24\x99\x79\xc3\xc4\xab\xaa\x80\x80\x5d\x6f\x8c\x55\x40\xe0\x3f\xa7\x6f\x3b\xab\xa2\x56\x4f\xe1\x5c\x82\x26\x68\x27\xcd\xaa\x17\xfb\x54\xf0\x2b\x18\x17\x84\x24\x5b\xae\x45\x9f\xfb\xf6\xff\x5a\x16\x25\xfd\x8e\x4a\x26\x56\xd1\x53\xf4\x5d\xf4\x14\xdd\x28\xcf\x25\xb6\x4e\x5d\x9b\x46\x3a\xdd\x22\x87\x55\x6b\xd4\xcd\x90\x78\x1e\xe4\xd8\x2a\x98\x91\x9d\xca\x34\x2a\xe9\x12\x04\xf9\x9e\x65\x60\x5f\x07\x02\x83\x64\x20\x00\xf0\xd4\x45\x26\xb0\x46\xa3\xd1\xef\x9e\xcc\x13\x20\x87\x92\xdc\x94\x70\xf6\x57\xb7\x1a\x2a\x6f\x8b\x1d\x14\xc3\x45\xbb\x6b\x56\xbf\x84\xd8\x6a\x84\xe8\xb3\x5a\x55\xc5\xae\xa6\x73\x4d\xda\xaf\xf2\xda\xf8\x52\xc6\x75\xe0\xd5\x26\xc6\xab\x8d\xb4\xf6\xaa\x58\x19\xd7\x5c\x81\x97\x1a\x1a\x69\x32\x03\x0f\x2b\x54\xce\x73\xce\x0e\x0d\xed\xc1\x8f\x73\xc2\x90\xbb\x72\xe9\x49\x11\xdd\x3f\xbc\xea\xdf\x89\x3a\xdb\x84\x9e\x66\xad\x25\xc1\xcc\xc4\x4b\x19\xd8\x7d\x94\x64\x6a\x60\xbf\x71\x38\xa2\xce\xcf\x39\xe1\x61\xec\x3c\x18\x00\x6f\x1a\xde\x37\xba\x70\xa7\x00\x5d\x0e\x95\x47\x78\xa4\x7c\x7c\x5c\xd9\xbc\x3c\xb1\x92\x4d\x3c\xdc\x1e\x4d\x9b\xb8\xc0\x82\x2d\xcd\x2b\x6a\x54\x5f\xfc\xd1\x79\x46\xf5\xb6\x43\x64\xab\xd6\x03\x0f\xed\xea\x8e\xc3\x93\x15\xe8\x3c\x31\xe2\xac\x60\x9a\x66\xf8\x52\x64\xbc\xf5\x6b\xab\xd7\x75\x43\xb3\xa7\xcc\x12\x5d\x48\xbf\x0b\x7a\x19\xcd\xbe\x71\x50\x3b\x1b\x4e\xb1\x22\x3c\xde\x18\xbd\xc0\x78\xa8\x02\x64\x40\xd2\x5a\xcd\x6f\x44\x66\x7e\x39\xf1\xfb\xa0\xdb\x8f\x40\x58\x84\xa8\x32\x84\x36\x33\x94\xd0\x17\x51\x70\x61\x65\x03\x0f\x10\x05\x04\x40\xd1\x34\xb3\x21\x28\x24\xb9\x51\x78\x63\x8b\x2f\x86\x24\x62\xa4\xb6\xa1\xa1\xb2\x22\xca\xc1\x26\x4c\x45\x01\x25\xfe\x56\x54\x7b\xea\xb1\xf3\xf3\x3a\xd8\xd5\x21\xe1\xe7\xa8\x26\x61\xd2\xc0\x09\x07\x9d\x46\x4d\x45\xf6\xfa\x76\xd5\x2d\x21\x58\x66\x47\xfa\x55\xe3\xd9\x39\xbb\xc8\xaa\xb9\x53\x75\xcf\xa7\x08\x36\xbd\x15\xeb\xb0\x8b\xe9\x1c\x1a\xca\xab\x05\x5b\x5a\xeb\x4c\xd1\x5a\x67\x92\x2f\x9c\x05\xad\x58\x14\xa3\x27\x70\x2c\x6a\x42\x54\xd3\xd4\x84\x48\x47\xf9\x3c\x65\x99\x6e\xc8\x2c\x79\x6e\x76\x60\xc1\x96\x08\xaf\x75\xb5\xe5\x88\xdb\x6d\xc8\xf8\xc5\xb4\x69\xea\x21\x84\x68\xce\x20\x73\x94\xf1\xf9\x2c\x9f\xa2\xa5\xc6\x07\xb2\x12\xaf\x35\x4e\x62\x34\x05\xcb\xac\xc0\x35\x96\x70\x18\xd6\xc1\x81\x59\x63\x16\xba\x48\xad\x23\x55\xba\x0d\x29\xe6\xc7\x0b\x3c\x96\xf9\xf4\x7c\x75\xbe\x22\xab\xb0\xb0\x11\xac\x91\x32\x5b\xe1\x55\xb8\x4d\xd3\xce\xf1\x0c\x09\x34\x38\x30\x83\xcd\x88\xac\xc2\x08\x5e\xb6\x9b\x83\x51\x8f\x37\xef\x3c\x13\xfb\xda\x89\x30\xf5\x68\x37\x44\x9e\xef\xce\x77\x64\xd7\xcd\xf5\xc3\xd8\xe1\x5d\x38\x0c\x0d\x53\x4e\x8d\x63\xf4\xf0\x38\x02\x2f\x57\x16\x70\x9a\xc0\x6b\x46\xdb\xcd\x23\x23\x6c\x6b\xa4\x37\xc1\x3b\xf7\x2a\x2c\x6f\x70\x2e\xcf\xdd\xa4\xc5\x2a\x2c\xfa\x32\xa6\x82\x16\x6a\x39\xa0\x93\x5a\xc8\xd0\x29\x45\x97\x19\xe2\x88\x62\x65\x7f\x18\xbf\x14\xe0\x50\x48\xef\x74\x2b\xca\x9c\x01\xce\xd9\x83\x64\x1a\xe7\x5a\x14\x48\x04\x7d\x32\x76\x1a\x39\xd4\xf4\x35\x66\xae\xcd\x4b\x32\x75\x11\xb5\xee\x74\xae\xed\xd3\xe7\xe3\x9a\xdc\x04\xb5\xf4\x1f\x84\xf7\x44\x38\xfa\x7c\xee\x4a\x3a\xc2\x23\x17\x3e\xc1\xe0\x9f\x03\x7e\xa1\x49\xe5\xf1\x58\x69\xac\xd0\x38\x17\x1a\x8f\x39\x7e\x82\xad\xf7\xfd\xfd\xbc\xce\x0b\xbc\x9f\x17\x79\x8d\xd0\xe1\x10\x30\xb4\xec\x86\x04\xbe\xa1\xe2\xa7\xcd\x96\x59\xd8\x86\x28\x56\x4d\x43\xd1\x12\x87\xae\xcb\x5e\xc7\x55\xbc\x7c\xc8\x4a\xd4\x5b\x06\x81\x1e\x9e\xb1\xda\xa3\xce\x84\x38\xf4\x7f\xd4\xd2\x80\xe6\xbd\xbf\xb0\xa5\x51\xc8\x0c\x33\x4d\x4e\x5b\x8f\x1b\x71\x83\xad\xd4\x5c\xb7\x70\x29\xe7\x1b\x9a\x49\xac\x31\x0b\x2c\x23\xa6\x04\xca\xfb\x3c\xd0\xd3\x49\xb9\x19\x04\xef\x1d\x21\x1a\x65\xb9\x54\xf3\x96\x11\xa7\x50\x2e\x2f\xa6\x41\xc2\x14\xe5\xf4\x90\x29\xd3\x89\x3a\x66\x7f\x04\x53\x7c\xd1\xc1\x1b\x2e\xdd\xf8\xd3\x54\x5d\xc4\x53\x09\x9c\xd6\xd0\xae\x85\x85\x27\x83\x22\xc1\xba\x5c\xf0\x25\x31\x8b\xb8\xe0\xcb\xd6\x6b\x5f\xe0\xf0\xa6\x2b\x13\x2e\xc1\x78\xa0\xdc\xc6\xac\xb9\xa6\xa1\xa0\x4c\xc9\x57\xad\x3f\x32\x73\xf7\xe0\xf9\x77\x8f\xdc\x0e\x82\xb4\xa1\x8b\xe9\x40\x0c\xf5\x07\x87\x8f\x79\xc6\x88\xc4\x92\x70\x94\x9b\x64\xdd\xdb\xc5\xd4\x44\x44\x42\xe1\xd1\x7b\xa5\x09\x2f\xd9\x4d\xe2\x4d\x23\x23\x05\x89\x1f\x82\x41\xff\x49\xff\x76\x47\x12\x66\x43\x81\xc2\xd3\xb0\xa3\x90\x10\x0c\x19\x6c\xc7\xa7\x08\xf3\xa0\x89\x6f\x3c\x52\xd0\xde\xe8\xc5\x12\x3b\x64\xe4\x98\x8c\xd4\xaf\x12\x5f\xb0\x25\x09\xfa\x90\x4e\xf5\x17\xeb\xc7\x04\x1b\x1d\x12\x18\xd0\x4b\x0a\x06\xc7\x6e\x20\x00\xc4\x50\x34\x87\xbf\x1d\x29\x79\x44\xbd\x3a\x17\x61\x03\xb6\x50\x4b\x22\xb1\x6b\x95\x1d\xb7\x1a\x4e\xeb\x9f\xdd\x95\xf9\x1a\x78\x2d\x71\xa1\x1f\x8f\x10\xa2\x0d\xab\x95\x90\x77\x93\x95\xe0\x14\x33\x72\x23\x32\x8e\x06\x2c\x4d\x99\x1d\xce\x3c\xe3\x0b\xee\x19\x27\x4b\xa2\xf0\xcf\xae\x0d\x94\xff\xe9\x58\x83\xc5\x27\xdd\xfb\x72\x1d\x43\xbe\x70\xda\xb6\x77\x2c\x34\x3a\xc5\x27\x86\x15\x37\x90\xc4\xba\x7e\x7d\x4b\xab\x37\x3b\x50\xc7\x6a\xbf\xa1\x08\x28\x4b\x67\x26\xf1\x95\x58\xbd\x63\x5b\x1a\xd4\xd1\x9f\xae\x8a\x2f\xdf\x34\xa7\x86\xa1\x1c\xef\x64\xea\xae\x49\xf2\x28\x21\x84\x35\x4d\x32\x32\xce\x0d\x3b\x0c\xa4\x1e\x56\xad\x9c\xd4\x62\x4b\xd5\x86\xf1\x6b\x43\xee\xd2\x95\x86\xc8\xbc\x2f\x39\x88\xcc\xd2\xae\x7f\x30\xf4\x0b\x02\x97\x71\x0e\x77\xd1\x87\x1f\x35\xe5\x9e\x1b\x46\x5c\x55\xdc\xe5\x5f\x4e\xa7\x60\xb4\x26\xf0\x8d\xc8\x18\x6c\x20\xd2\xd8\xeb\xdc\xfc\x5e\x98\x3f\xe1\xd6\xe5\x2f\xc1\x0f\x89\x29\x3a\x88\x96\xab\x8d\xc4\x83\xbb\x4b\x2d\x82\x94\x1d\x91\x98\xa7\x29\xc4\xb0\xe5\xc6\x03\xd6\xf7\x74\x25\xd2\xf4\x1f\x2c\x63\x93\x3d\x87\x96\x0f\xee\x96\xe0\x76\x1a\x86\xb7\xc9\x56\xf9\xeb\xe2\x75\x74\x5e\xfc\x29\xb9\xcf\x40\x2a\x94\x5c\x81\xbe\x8b\xe7\x19\x58\x63\x24\x88\x09\xa9\x01\x94\x2e\x34\x29\xb7\x27\xcb\x69\xe4\x4d\x91\x7e\xd3\xd1\x7b\xcb\x89\x51\x76\xf7\x70\x57\x9a\xd6\xc1\x45\x02\x2e\xbf\x24\xd3\x73\xd9\x42\x58\x39\x1a\xa1\xa0\xe4\x42\x2e\x89\x85\x58\x16\xe4\xca\xa5\x05\x92\x26\xbe\x8d\x49\xb1\xdc\x21\xc7\x71\x06\xfd\x75\xf3\xdb\x47\xb2\x34\x51\x62\xfa\xe7\x86\xa9\xd1\x21\xd2\xcb\xa0\xcb\x3d\xb0\x0c\x50\x4a\x97\x76\x07\x55\x93\x01\xf6\x42\x6b\x00\xe5\x16\xe0\x48\x70\x80\x72\x75\x70\xd7\x7b\xe0\xdd\xe9\xc8\xc9\x15\x2b\xea\xa6\xd1\x08\x8d\x6a\xe1\x2b\x4c\xa8\x0b\x74\xcd\x2c\x2f\xa6\xf3\xf1\x2c\x9f\xa1\xc1\x5f\xf4\xec\xff\x6a\xf5\xc8\xc0\x0d\xa6\xa6\x34\x86\x26\x2e\x6d\x6d\xd5\x6e\x86\x7a\xb8\x4d\xf3\xa3\x84\x49\x05\xa7\xe3\x2f\x0e\xe3\x9b\xd0\x7f\xee\x8b\xaa\xce\xa0\x33\x04\xe2\xa8\x9a\x56\x44\xd9\xe5\xc8\x82\x43\x16\xb2\xd5\x83\xe4\x3a\x5e\x22\xe3\x94\xd2\x1c\x26\xe4\xd8\xf7\xc6\x00\xf3\x69\xa9\xd8\x0d\x53\x77\x26\x4a\x4f\xeb\x6e\x01\xb8\x2c\xed\x7c\xcc\x11\x37\x16\x90\x11\xea\xf2\xd7\x3e\x7b\x12\x2c\xc8\xf4\x5c\x5c\xa8\xce\xdb\x22\x1c\xf6\x58\xf8\x0d\x5a\x88\x25\xe8\xb1\x75\x40\x4e\xcf\xcb\xa4\x9f\xeb\xe0\x31\x12\x4b\xbc\x27\x7f\xd6\x9d\x17\x8e\x23\x59\xa7\xa9\xc3\x94\x8d\x06\x5a\xe5\x0a\xc0\xd6\x41\x36\xfc\xd2\x99\xe7\x19\x6b\x9a\xfd\x90\xb8\xda\x4d\x53\xe9\x0f\xd8\x4f\x0d\x6d\x9b\x06\x3c\x9a\xc6\xcf\x14\x16\x08\x61\xb6\x10\xfe\x02\xec\x71\xe5\x39\xa0\x67\x6c\x0e\x0f\x97\x0a\x1e\xad\x50\xd6\xf8\x53\x8f\x7c\x30\x44\x9c\x0c\xa1\xbf\x2d\xe4\x07\xba\x7a\xbb\x2b\x78\xd7\x9b\x71\x94\x77\xa4\xec\x57\x93\x28\x7f\x51\xe8\xf5\xa9\x4d\x12\x20\x2f\xd6\xb8\xbd\x06\x04\xba\x69\xb2\xfd\x84\xf1\xb2\xda\xd7\xec\x86\x7e\x4b\xd7\x6a\x6e\x32\x2e\xe0\x81\xc8\xed\x87\x72\x1c\x6e\x57\x57\x89\xb8\x26\xf8\x32\x9b\xeb\xf4\x4b\x57\x51\x89\x4b\x53\x0d\x10\x2d\x96\xa6\xd9\x4f\x26\xa0\x09\xdc\x5d\x13\xdc\xe7\xb9\x8d\xfa\xbf\x9f\xd0\x8f\x1a\x67\x67\xaa\xba\x7b\xa6\xe1\x2b\x5d\x99\x6a\xf1\x3a\xdc\x8f\xc7\xc5\xa0\x14\x5c\x31\xbe\xa7\x07\xc3\x56\x01\xd3\xfe\x49\xa1\xc4\x96\x95\xc8\xe5\x59\x3d\x31\x90\x54\xe2\x92\xec\x8d\x2f\x59\x7e\x31\x9d\xcf\xf2\xf1\x0c\x99\x65\x00\x42\x3b\x9e\x41\xde\x59\x0c\x04\x31\x39\x7f\xd1\x1b\x56\xe2\x31\xc7\x60\xcd\x1c\x19\xdf\x08\x60\x4a\x20\x74\x9c\x95\xa6\x59\xa5\x91\x3f\x30\x0c\xd7\x4b\x77\x31\x9d\x57\x17\xd3\xbc\xba\x6c\xa9\xd9\x9f\x4c\xcb\x0a\x8e\x82\x25\xb2\x83\xc1\x1a\x60\xd2\x52\xea\xf3\xce\xf0\xf2\xee\xf8\x0d\x11\x0f\xe3\x5d\x63\x8e\xd7\x27\xc6\xba\x9e\xff\x64\x8a\x98\x8e\x4d\x48\x39\x77\x7a\x83\x93\xfa\xe7\x9e\x93\xca\x9b\x66\x86\x0b\xe2\x0f\xb1\xc0\x0c\x35\xcd\x90\xa5\x69\x90\x34\x9c\xa2\xa6\xf1\xdf\xe3\x9e\x32\x63\x61\x1c\xfb\x9a\x3e\x0b\x80\x6d\x65\xc1\xd5\xf3\x15\x53\x1a\x48\x45\x84\x4e\x00\x66\x7e\x09\xc0\x8c\xc3\xee\x35\x6a\x3d\x25\x70\xee\xe6\x96\xe8\xb1\x75\xe7\xf0\x0c\x6d\xa8\xa5\xa6\x34\xb1\x05\x93\xcd\xe5\xe5\x34\x4d\x75\x05\x42\x34\xba\x1d\x5e\xbf\x88\x70\x99\xc7\x64\x98\xa7\xb1\xe6\xbe\x4d\x10\x95\x98\x46\xad\x76\x84\xd3\x09\x9e\x94\x9b\x51\xf8\xe8\x83\x59\xee\x91\x4b\xc8\x7a\x23\x6e\xdb\x28\x51\xdd\xdc\x9d\xa4\xbb\x22\x78\xe9\xb2\x70\x2d\x94\xea\x52\x45\x36\xb4\xa4\xb1\x82\xe4\xd6\xb4\xbe\xfe\x74\xe4\x30\xf0\x1e\xe1\xdf\x8a\xcf\x28\xef\x9c\x86\x1d\xd3\x0d\xce\x7f\x98\x46\x96\x94\x75\xbd\x12\x23\xf0\xde\x01\x5c\x00\xc5\x0b\x2b\x81\xac\x2d\x59\x6f\x76\xf1\xc8\x3c\xba\x69\x6a\x60\x0e\xb8\x4d\xe9\x1a\x5a\xa3\xd6\x46\xd7\x72\x0e\xce\xb3\xbd\x46\xa2\xbc\xd8\x74\x23\x6e\x0d\xe8\xf9\x71\x43\xf9\x5b\x17\x01\x15\xa5\x29\xc4\x4e\xb3\xef\x02\x43\x78\xdf\x34\x1c\x52\xb0\x08\xb8\x05\x81\xf9\xa4\x8a\xb1\xac\x77\xe6\xbb\x6b\x80\x18\xd8\x5a\xd4\x8c\x5f\x57\x16\xee\x19\x15\xc4\xef\xa8\xfc\xd6\x32\xf9\x65\xbf\xbd\x40\xf2\x7f\xfe\x1f\x49\x4f\xdc\x98\x04\x21\xe3\xee\x3e\x52\x43\xae\x9c\xde\x26\x66\x81\x29\x36\xd7\xff\xc7\xc9\xc7\x4a\xac\x5e\x39\x0c\x4a\xa3\x47\x81\xff\xc4\x60\xbc\xa6\x15\x3e\x11\x6a\x43\xa5\x83\x07\xff\xda\xc8\x43\xcb\x8f\x9a\x96\x82\xaf\x0a\x79\xd7\x4e\x4a\x1c\x6b\x7e\x8a\x78\x92\xd0\x77\x30\x55\x11\x4d\xd5\xe4\xfa\x09\x8b\x78\xc2\x93\x3f\x7e\xf9\x28\x73\x85\xfc\x84\x7d\x1d\xab\xaa\x1b\x58\x9d\xaa\x87\x9c\xb0\x80\xff\xa1\xcf\xba\x2a\x65\x14\x33\xa1\x26\x85\x89\x6c\xba\x0f\xfd\x23\xb5\xe1\x69\x30\x78\x7f\x18\xdb\xa4\xc0\xd6\x18\x8d\x0b\xa3\xc9\xdb\x72\x98\xab\x16\x18\x2a\x60\x30\x40\xec\x14\x15\x3a\xc6\x56\x28\x76\x94\xcd\x11\x16\x9f\xe9\x07\xbf\xb6\xc4\x5b\xd2\x2f\x7f\x74\xf6\x2a\xd4\x58\xa8\x40\x80\xb9\x64\xa4\x3a\xf6\x2a\xce\x97\xce\x7c\x3f\xa6\xb9\xb4\x46\x60\x6d\x14\x9d\x8c\x8f\xad\xbf\xd3\x10\xb2\x79\xce\xf9\x8d\x89\xdb\x89\x4b\x8d\x21\x31\xac\x10\xe8\xf1\x04\x00\xba\x5d\x8b\x55\x16\x3e\x0a\xdf\x2b\x0b\xf8\xc1\x0a\x09\xe6\x57\xe2\x96\xf9\x72\x4c\x15\x83\x5b\x40\x2f\xe7\x81\xfe\x93\x4a\xc9\x24\xf4\x50\x3b\x9c\x59\x84\x96\xb6\x68\x97\x70\x98\x2c\x5d\x88\xe5\x79\x56\x18\x84\x49\xa6\x69\x01\x18\x50\xd3\x28\x42\xec\x17\x31\x5c\x76\x9e\xb5\x1e\x24\xa1\xb4\x9e\x96\x67\x10\xea\x82\x7a\xcc\x33\x02\xe7\xe4\x86\x56\xf3\x44\xaa\x2a\xc9\xcd\x68\x30\x83\x50\xaa\xac\x69\xc2\x31\x1e\xb2\xef\x59\x56\x22\x2c\x9b\xc6\x68\x99\x10\xc2\xe7\xeb\x9c\xe3\xd8\x53\x95\x7d\xc4\x4b\xbc\xc1\x3b\xbc\x25\x2b\x8d\xfd\x5b\x11\x21\x5b\x67\x1a\x51\x40\x25\xd9\xe2\x0d\xd9\x91\x2d\x9c\x51\x1f\x7b\xbf\x24\xab\x4c\x8d\x67\xd8\x8a\x08\x11\x86\x31\x11\x67\x20\x74\x43\xb6\x83\x2d\x29\x71\x49\x6e\x0e\x1b\x5b\x17\xef\x48\x69\xce\xeb\xc1\x1e\x01\x78\xa5\x29\x38\xce\xa9\x11\x2e\x21\xac\xef\x56\xff\x7f\xf9\x85\x46\x96\xb2\x0d\x86\x2f\x73\x10\xb7\xce\xa9\x2d\xde\x90\xda\x7f\x5d\x94\xc6\x13\x8a\x29\x6c\xd2\x4c\x79\xc8\x40\xc8\xcd\x3e\x4d\x15\x21\xeb\x34\xcd\x76\x64\x8f\x70\x36\x14\x4d\x03\x8d\x5f\x08\xfd\xbf\xfd\x20\x44\x98\xe6\xcc\x88\x41\xcc\x62\x90\x3e\x41\xb6\xba\x56\xd1\x34\xa5\xed\xe5\xb2\xb0\x3f\xda\x24\xbd\x43\xce\xe3\xac\x9d\xea\xa5\xbd\xa2\x46\x1b\xa4\x44\x78\x73\x51\x8f\x66\x6e\xca\x7a\xd4\x30\x4e\xbc\x1b\xeb\x5f\x76\x86\x07\x84\xb0\x8f\xfd\x4b\xf9\x2a\x2f\x9c\xc0\x45\xb5\x2a\x6b\xca\xa8\xac\xb1\x75\xe6\xb0\x3a\xab\x31\x52\x86\x52\x08\xd0\x33\x33\x26\xbd\xf7\x46\x45\x0c\xee\xcd\xda\xca\xf2\x76\xe6\xd3\xd6\xc4\x5b\xf2\x1b\xcf\x36\x88\xe8\x3f\x3b\x84\x6f\x48\xdc\xd6\x76\xbe\x09\xaf\xda\x68\x66\xf0\xc7\x09\xe5\x2b\x7c\x47\x4a\xa7\xfc\xb6\x9d\x4f\x8d\x64\x0e\xfa\x36\x92\xe2\x81\x26\x4f\x6f\x60\xc1\xef\x60\x9f\x9f\xcc\xb3\x2a\xbb\x31\x8b\x83\x6f\xda\x6d\xbe\xf1\xdb\x5c\x65\x35\x86\xb2\xf8\xce\x9c\x9f\x3b\x97\x85\xf2\x6e\x55\x53\x62\xdc\x26\xba\x92\xfe\xa7\xe9\x56\x1f\x94\xda\xa7\x99\x1e\xef\x8c\x4b\x9c\xf8\xdd\x0a\x1d\xaf\x30\xe5\x1d\x5c\x44\xea\xa0\xc7\xc1\xc7\x81\x15\xf4\x52\xd3\x30\x37\x45\x95\xa9\xc9\x55\xc5\xf8\x07\x2a\x1d\x63\x7e\x38\x1d\xa8\xd6\xbd\x91\x7d\x8b\xc0\x83\x0e\x04\xff\xd3\xaf\x5b\xf7\xa1\xfd\x4a\xb7\xf0\x7d\xa1\xe8\xe5\x74\xee\xdb\x23\x35\x55\xbe\x97\x38\x78\xed\x03\xad\x67\x92\x0c\x25\x82\x40\x22\x46\xdd\x20\x39\xa0\xd3\xfd\xa1\xfc\x64\x96\x79\x58\x1e\x9c\x88\xed\x20\x94\x42\x0b\xe5\x9d\xcb\xd8\x30\x48\xe6\x64\xbc\xd5\x4b\x0a\xfe\x7a\x82\x08\x45\x17\x5d\x44\x0f\x88\x7c\x58\x7c\x1f\x84\x1e\x74\xd2\x15\x7e\x2b\xb2\x42\xc5\x3c\x8a\x42\x75\x22\xec\x18\x2f\x90\xbe\x71\xe5\x04\x0c\x41\xa2\x13\x03\x1b\xd7\x47\x2e\xf5\x18\xe3\xf4\xe1\xdf\x3d\xab\x30\xf0\x88\x78\x2b\xe4\x87\x77\x0c\x9c\x22\xec\x79\xa6\x60\x96\xb8\x36\x1a\x1f\xae\x49\xa4\x41\xf6\x62\xe9\xa2\xfd\xb4\x19\x81\x4c\x28\x72\x2a\x7b\xe4\x6c\x68\xf4\xe5\x74\x1a\x3a\x80\x17\x56\x3e\x74\x6a\xd0\x80\x08\xdb\x47\xc9\x62\x40\x35\xa8\x0c\x07\x77\xf9\xb2\x9d\xc4\xb6\xf8\xf8\x8d\x5b\x63\x13\x73\x04\xef\x09\x65\xc0\x63\xad\xe7\xed\xbc\x38\xca\x81\x95\xe5\x90\xb4\x9a\xec\xed\x0f\xe7\x6a\xcf\x7c\x82\x5d\x25\xad\x81\xec\x2e\xcd\xef\x41\x39\x8f\x33\x49\x99\x57\x1a\xca\xc6\x89\xb1\x4d\xea\x9a\x68\xf0\x5b\x78\x7f\xba\xae\x5b\x2f\xe5\xaf\xc0\xbb\x58\x36\xac\x9a\x66\x58\x36\x4d\xd5\x7a\x8d\x28\x5b\x2f\x0c\x55\xe8\x35\xa2\x0c\x0d\x3f\x57\x64\x7a\x3e\x5c\xa7\xe9\xea\xa2\x08\xa3\x79\xae\x49\xb1\x58\x2d\xdb\xee\x16\xab\xe5\x60\x9d\xa6\xcc\x5a\x04\xb6\xfb\x0a\xd8\xa5\x0f\xca\x55\xcf\x79\x1e\xae\x95\xd3\x33\x0c\xd6\xfc\x82\x3c\xb4\xe8\x69\x2a\x61\xcd\xa1\x06\xe6\x9d\xe6\xdb\x7e\x7f\xf7\x25\x21\xd3\xce\xb6\x58\xad\x94\xd1\x28\x38\x5d\xfe\xbc\x5e\x7a\x9d\x56\xb8\x92\xf1\xe9\x05\xa6\x3a\xe8\xa1\x42\x5c\x3c\xc7\x61\xfb\x8b\x2e\x99\xf5\xd8\x1d\x18\x0f\x3f\xae\xe0\xb9\x1a\x8d\x90\x02\x95\xc7\x85\x5a\x62\xe3\x0f\x06\x2c\x46\x02\x1f\x0a\xc7\x48\xb4\x28\x0d\x02\xdd\x7a\x4d\x86\xf0\xed\x11\x84\x70\x8e\x14\x5d\x7c\xaf\x2e\x6f\xdb\x4b\xb1\x30\xc3\x56\xbd\x1e\x17\x44\xce\xc7\xb3\x5c\x8d\xb3\x00\xe8\x30\xce\x29\xd8\x6c\xcc\x67\xf4\x8b\x1c\x02\x9f\xd5\x44\x9d\xd7\x97\xc5\xf9\x78\x5c\xc3\x55\xaa\x2f\x9c\xbf\x44\xbf\x52\xe6\xd3\xea\x78\x80\x52\x77\x6d\xf9\x46\xfb\x38\x32\xdb\x50\x36\x8d\xa9\xef\xef\xbb\x53\xab\xb2\xd7\x62\x2d\xb2\xbd\xdd\x54\xfd\xfc\x04\xd1\xb5\x8a\xab\xb7\xec\x37\x8a\xce\x2d\x8a\xac\x71\xba\xcb\x0a\x98\x8e\xa4\x1e\xcf\x30\x27\x55\xcb\x52\x74\xfc\x69\x5c\x10\x71\xc9\x1d\x40\x7b\xce\x32\x8e\xc5\x78\x86\x82\x41\x79\x9e\x0a\x29\xf4\x31\x31\x2b\x8b\x0b\x94\x57\xee\x03\x61\x6e\x80\x91\xc0\x2a\x0e\xbc\x0f\x47\xd0\x18\xda\xe2\xc2\xe9\x8d\x69\xbc\x75\x3c\x6b\x1a\x01\x47\xaf\x69\xc4\x25\x61\x81\x53\x38\x71\xe1\x82\x28\x0e\x64\x7c\x23\xa2\xde\x61\xf2\xa3\x91\x38\x18\x5e\x78\xc6\x5b\x50\x2c\x10\x2e\x02\xeb\x75\x15\xf9\xfa\xf1\x31\x42\x5b\x87\x5b\x81\xe5\x78\x5c\xd6\x38\x05\x0d\x3d\x47\x8d\x8f\x1b\xe8\xba\x94\x2a\xdb\xe7\x3e\x0e\x4f\xd8\xaa\x82\xc7\xe9\xd6\x01\x09\xc4\x2b\x77\xca\x3f\x9a\x88\xda\x49\x9a\xe0\x44\x13\x32\x58\x12\x13\x29\x79\xd2\x8d\xee\x3b\x3f\x91\x9e\x29\x94\x2b\xe7\x6f\x13\x52\x30\x27\xf7\x40\x61\xed\x0a\x59\xd3\x97\x5c\x65\x32\x34\x16\x46\xd6\xe4\xe9\x38\xd7\x30\x02\xbd\x6c\x85\xd5\xaf\x8b\xd7\xd6\x0c\x0c\x35\x8d\xfb\x34\x58\xaa\x65\xbb\xc5\x41\x19\x11\x0e\xf8\x1c\xeb\x70\x85\x85\x18\xb7\x4f\x4d\x6c\x99\x1b\x58\x5d\xc7\x7b\xf2\x50\xdc\xbf\x31\xb4\x3e\x3e\x8e\xbf\xd1\xb6\xb6\xf9\xac\xd6\xec\x66\xf7\x34\xd7\xdd\xed\x9d\x0a\x4c\xf8\xa9\xe3\x8f\xda\xad\xbe\xdf\x16\xbb\xdc\x6f\x2a\xe8\x4a\xc2\xe2\x04\x69\xf0\x7d\xe8\xc4\x9c\xa3\x47\x16\xfe\xd0\xb8\xb5\xef\x7f\xa8\xfd\x7a\xc1\x97\xfd\x7d\xe8\x1c\xd3\xcf\x03\x7d\x80\x9a\x9e\xed\x06\x79\x40\xff\xaf\x76\x83\x0d\x4b\x3e\x1f\x4e\x03\xb8\xbd\x55\x47\x8c\xd6\x6b\x9d\x74\x67\xf0\x3a\xc8\x08\x6c\xb1\x54\xab\xb8\x72\xc2\x77\xe4\x11\x8e\x87\x8e\x76\xd5\x38\xe0\x33\x4e\x89\x97\x47\xf1\x64\x1e\xf0\x88\xa5\x2e\x89\x71\x8a\xf5\x5a\x77\x64\x7f\x8e\x8c\x93\xd0\xb9\xcc\x21\xb2\x7f\x60\x6a\x61\xe7\x60\x31\xbb\xa7\xcc\x30\x49\x60\x0e\x12\x0d\x78\x9a\x0e\x8d\xcb\xa8\x39\x27\x86\xb1\x9b\xa6\x3c\xf0\x09\x0b\xae\xd3\x38\x96\xd8\x78\xe3\xf6\x46\x2c\x71\x58\x73\x64\x6d\xbb\xfa\x74\x6c\x74\x97\x9a\xe8\x52\x28\x0a\x20\xd0\xe3\xbf\x8b\xde\x9e\xfd\x59\x39\x9d\x60\x18\x9d\x99\x9c\x0d\xc4\xc5\x08\x37\x8e\xbc\x08\xf8\xf1\xe2\xa8\x75\xeb\x0f\x2e\x33\x8c\xaf\x8c\x57\xa2\x13\x82\xb0\x0d\xf7\x0c\xae\xba\xf8\xc1\xf8\x81\xb6\x4d\xee\x54\xc6\x4d\x67\xf6\x3c\x81\x12\xa1\x89\x8d\x96\x73\x2c\x69\x69\x55\x31\xf5\x39\x63\xc1\x35\xb1\x01\x5e\xdd\x79\x62\x13\xf3\x03\x6f\x8a\xda\xdc\xc3\x3a\x1f\xce\x82\x33\x76\xad\x42\xf9\x82\xb2\xc5\x41\x4f\x46\xbf\xb6\xf0\xfc\xe0\x3d\x91\xa3\x8c\x83\x07\xa7\x56\xb3\x09\xfa\x39\x76\xc0\x32\xaf\x89\xcd\x5b\xec\x97\x79\xa6\x26\x7a\xac\xe0\xe0\x40\xff\xb0\x2e\x1e\x0d\x4e\x76\xc2\x94\x16\x61\x35\x69\x87\xdb\x34\x27\x5d\x7d\xf7\x86\x3d\x65\x84\xa7\x29\x00\x40\xeb\x64\xde\xdd\xb5\x8d\x6b\x8f\xa7\x69\x9b\x7a\x6b\xdc\xbd\xb2\xd6\xbb\x5e\xa7\xbc\x26\x1c\x8c\xbe\x51\xa7\x12\x61\x83\x56\x28\xa8\xba\x0a\xbe\xf0\xbc\xf8\x49\xd5\x99\x46\x79\xa6\xe7\xb5\x47\x74\xc7\x33\xb0\xac\xb1\xbc\xf2\xc2\xf8\xb3\x29\x16\xf5\x68\xb6\x1c\x00\x55\x52\x5c\xd5\xd9\xbe\xf5\x45\x69\xa9\xeb\xcb\x27\x69\x2a\x0c\x1e\xec\x73\x47\xe0\xa9\x12\x3d\x7e\x32\xb6\xae\x66\x0f\xb6\x84\xe7\xb0\xba\x74\xa0\x8a\xc0\x39\xb0\xd9\x8d\x78\xa5\xe1\xc2\x64\x35\x39\xa1\xae\x82\x41\x7d\x5d\xc1\x59\x03\x91\xae\x73\xc3\x89\x2b\xe2\x94\xd3\x4b\x02\xca\xea\x78\x1d\xe8\xaf\xeb\xd5\xfb\x82\x90\xbd\x57\x01\x6e\x31\x47\x13\xca\xff\xf7\xe7\x2b\xbd\x12\xe0\x15\xb9\x4a\xd3\x77\xc2\x8a\x6f\xac\x67\x30\x6b\x5e\x64\x5c\x6d\x40\x2c\xe1\x51\x85\xd0\x39\x1a\x8f\x2b\xd8\x80\xf3\x28\xab\xbc\xb0\x9f\xcf\xf9\xea\xb3\xda\x2a\x75\x5b\xa3\x11\x10\xac\xe0\x39\xf0\xdf\x9d\x93\xf2\xd2\x68\xe1\x9b\xb6\xc6\x61\x25\xc4\xc8\x3e\xf4\xf5\x76\xca\x26\xdc\xb9\x75\x13\xa7\x5c\x0f\x23\xcb\x21\xfa\x4e\x80\xaf\x96\x12\x1d\x1d\x9b\x01\x23\x1b\x27\x08\xdb\x2c\xbc\x79\x00\x9f\x6f\xfc\x41\xca\xa7\xcb\xfc\x57\x65\xa8\x1d\x16\x37\xd5\x37\xaa\xa6\xf9\x55\x19\xd1\x85\xc6\x47\x9a\x86\x19\x44\xa4\x69\xf4\xac\x8d\xa2\xfc\xa0\x24\x15\xae\xc6\x64\x86\xd7\xce\x22\xe1\x00\x6b\x33\x9b\x01\x6a\x7c\x6c\xb1\x6c\x71\xaa\xba\x94\x94\xf2\xa6\xb1\x32\x6a\xf8\x9a\x54\xe2\x9a\x95\x45\xf5\xd3\xd7\xdf\xbd\x6c\x9a\xe3\x34\x5f\x6e\x45\x6f\x58\x49\x4d\xb1\x61\x68\x79\xaa\xaf\x1f\xf8\x60\xfe\xc9\x3f\x58\x3f\x89\x00\x05\x04\xd4\xaf\xde\x15\xbc\xc5\xfd\x4e\x02\x17\xcc\xf5\x0a\x29\x3c\xc5\xb3\x93\x2b\xe4\x75\x62\x6c\xf8\x04\x7d\x15\x8d\xc0\x63\x6c\x91\xb8\xcb\xd9\xa1\x8d\x13\x71\xa6\xec\x3b\x79\x3c\xb7\xc7\x47\x53\xc3\xbc\x53\xec\xe7\xa3\x62\x3a\xc5\x83\x7d\x8d\x7e\x2a\xe8\xf4\x91\xb4\xf8\xa6\x32\x1b\xf6\x48\x62\x25\x76\xb9\xd2\x77\xfb\x11\xf7\x5e\x30\xec\x9d\x7f\xc4\xf5\x75\x6f\x7d\xf5\xbb\xd7\x06\x19\xb2\xf8\xbe\x02\xe7\x1b\x6b\xc2\x89\xe7\x27\x77\xdd\xda\xb7\xfe\xb1\xb3\x0d\xd9\x1f\x9d\x4c\xe4\x6d\x9b\x1f\x3a\x98\xfb\x53\x8b\x7c\x08\xee\xdb\xb0\xd2\x64\x1c\x6b\x9a\xa1\x39\x94\x69\x3a\xb4\xa7\xd2\xf2\x7e\x76\x47\xf7\x2d\x1a\xca\x62\xba\x1c\x30\xb2\x9b\x5b\x6c\xdd\xf0\x2e\x2d\x72\x6e\x04\x55\x51\x74\x6b\x58\xb7\x1d\x70\x31\xed\xaa\xed\xec\xaa\x1d\xf4\x45\xd2\x1d\x6e\x21\x9c\xed\x6e\x6c\xe0\x24\x14\xbd\x21\xcc\xc1\xd3\x20\xf5\x8e\x64\xdb\xd1\x0d\x7a\xfc\x04\x5f\xbb\xb7\xad\xf3\x80\x00\x90\x32\x90\xee\xda\x2f\x4d\x9a\x0e\xb3\xbb\x8b\xeb\xc5\x6a\x89\x00\xfa\x9d\x83\x19\x3b\x59\xcd\xaf\x17\xab\xf1\x6c\x99\x4f\xf1\xaf\x44\xe7\xe2\x5b\x4b\x82\x64\x7e\x85\xd7\x73\xbb\x36\xb9\x59\x2c\xe4\x86\x13\xcc\x3a\x33\x32\x05\x53\x18\xea\xbb\xf5\x8c\x0a\xeb\x75\xb8\x72\x6b\xf0\xeb\x61\x70\x04\x12\xb2\xdb\xc9\x95\xb8\xde\xc3\xd3\x30\xf8\x0c\x39\x2a\xd4\x90\x4a\xec\xc8\x16\xdf\x4e\xa4\xe5\xd1\xdf\xf8\x1b\x75\x7b\xf0\x8f\x0a\x32\x2d\x03\x66\xe0\xd0\x05\x52\x23\x84\xcd\x7c\xeb\x70\x3a\xb5\x65\x32\xeb\xf1\xb2\x79\x0d\x3d\x80\x7a\x8b\xdf\x40\x48\xb5\xbf\x6b\xb7\x99\x87\x8f\xb4\xe3\xc5\x82\x71\xa6\x7a\xbc\x24\xa9\x0d\xab\x35\xd0\x30\x86\x6c\xd8\x86\x56\xb5\xfe\xa6\xc8\x53\x9a\xf9\xc8\xa8\xce\x32\xd0\x05\x7e\xe9\x44\x77\xa8\x5d\x74\x2b\x25\x32\x89\xa9\x51\xa0\xe9\x55\xd1\x44\x57\x94\xdc\x3b\xb3\xf3\x7c\x38\x33\x46\xe2\x10\x91\xc8\x6b\x1a\xd4\x19\x3a\x60\xd5\x67\xe5\x08\x7c\xd4\xd8\x6e\xf2\x94\x31\x24\x9b\xdc\x14\xd5\x9e\x92\x63\xc3\x76\x7c\x27\x32\x86\x90\x17\x30\x0d\x65\x7c\xfd\x59\x4d\x9f\x89\xdd\xdd\xb3\xbd\xa3\x9d\xac\x5e\xde\x5b\x9a\x49\x34\x88\xc7\x3f\x35\xe3\x37\x28\xef\x01\x83\xc5\x3a\xb8\x07\xbe\xdb\xd1\xb9\x9c\xd4\xd1\xac\x5a\x2d\x40\x30\x26\x12\x28\xef\xce\xc6\x0d\x9a\x9f\x18\xf3\x21\xea\x00\xc2\x0d\xf4\x18\xa7\x4f\xd1\xe1\x40\xfb\xe3\x8e\x72\xdc\x66\x04\x6e\x53\xc1\x10\x92\x75\x9c\x1a\x81\xff\x2f\x13\x63\xd6\x58\xe0\x47\x6c\x39\x0d\xc3\x2e\xc9\xbf\x6b\x9c\x32\x34\x39\x85\x1d\x8a\x6c\x50\x9d\xd3\xd0\x9d\xa8\xaa\x2c\x88\x5b\x6b\x6c\xd1\x63\x5f\x0b\xf6\xf8\x34\x0d\x18\xd5\x4b\x08\x44\xd0\x6b\x94\xaf\x17\x7e\xb2\x2e\x6a\xf5\x1d\xb4\x1a\x34\xab\x17\x08\xd7\xfe\x4b\xec\xee\xdc\x67\x1b\x24\xab\xa7\x73\x8e\xee\x6b\x09\x64\x4c\xd3\xc0\x28\xf8\xa7\x3a\x37\xee\x38\x5c\xcf\x01\xb3\x07\x27\x46\x7a\x0d\xa8\x61\xd8\x87\xb2\x7d\x28\xd4\x34\x3f\x68\xca\x2f\x18\xb5\x31\xd0\x85\x73\xd2\xad\xe6\x2c\x74\xe1\x92\x18\xe0\x93\x25\x6b\x29\xb6\x09\x1a\xa8\xd6\xb4\x17\x94\x8a\xdc\x87\x39\x69\x3e\x64\x6e\x90\x43\xac\xb8\x8f\x1a\x33\xe9\x5c\x82\x9a\xdb\x3b\xfa\x11\x48\xd0\xb0\x0b\x25\x12\x84\xef\xbd\x57\xc5\x3c\x52\xa9\x70\xcd\x25\x07\x74\xe8\x9d\x06\xe5\xab\x78\x12\xd1\x50\x33\x77\x1e\xf0\xe7\x0d\x1a\x0e\x11\xf8\x03\xea\xaa\x25\x9d\x70\x0d\x54\x6e\x71\x4f\x78\x75\x0d\xe2\x1c\x89\x14\x70\xc4\xc5\x8d\x51\x5f\xfd\x91\xa9\x8d\x99\xbd\x53\x55\x7f\x67\x56\xe5\x58\xe1\xd6\x08\xf6\x11\xb8\x76\x77\x17\xea\x14\xea\x55\x04\x51\x01\x4e\xa1\x5e\xfa\xc6\xbf\x13\xbb\x50\x33\x26\x10\xd2\xf4\x85\x41\x1b\xcf\xa6\x60\xaf\xb4\x1b\x15\xf0\x64\x0b\x27\x85\x9e\x28\xd0\xd0\xfb\xac\xa6\x0c\x2f\x0c\x5a\x02\x7c\xc1\xe8\x87\x8c\xad\x34\xba\xb5\x0e\x39\xe0\x48\x59\xec\xc4\x5b\x12\xd8\xb2\x0c\x5e\x89\x50\x70\x67\x18\x15\xb5\x90\x35\xc2\x90\x13\x86\x5a\x31\x9a\xbd\xe6\xd3\x48\xd1\x8d\x1f\xe6\x77\x10\x78\x24\x7c\x93\x02\x8d\x1b\x5b\xc0\x68\xdb\xf4\x94\xb1\x4e\xe5\xcc\x5a\xd8\x70\x8c\x58\xd2\x9a\xc6\x0f\x21\x3c\x5a\xc6\x44\x9e\x6b\x98\xfb\x8a\xf2\xfd\x77\x14\xf6\xc7\xce\x4c\xbf\xda\xfe\x4c\x31\xc2\x9d\x94\xaf\xd7\xd4\xc0\xea\xb3\x87\x40\xdd\xb2\xb2\x59\xc7\x54\x66\x4f\x32\x45\xfe\x2a\xd2\x34\x0b\xf4\xca\xc6\xb1\x12\x1a\xb8\xc2\xc8\x24\xe1\xd1\xf3\x18\xa2\xa0\xf4\x0b\x84\xe6\xc9\x38\xc9\x65\xd3\x74\x4b\x0d\xa2\x97\xdb\xbe\x2c\x7b\xcc\xbb\x01\xa4\xef\x44\x16\x95\x34\x9e\xe4\x01\xb6\x67\xc7\x2e\x05\xf6\x56\xbe\xa4\x71\x9e\xce\x5c\xfb\xfa\x4b\x92\x07\x5b\x33\x5a\xa1\x83\x93\x5e\x0d\xd4\xe1\x80\xaf\xa9\x7a\xc1\x68\xb5\x3a\x76\xc2\x75\x16\xf5\x78\xc0\xf5\x7e\xb7\x13\x52\xd5\xef\xc4\xbe\xdc\x1c\x17\x1f\xce\x0e\x18\x66\x1d\x66\xb1\x75\x96\x70\x61\xf5\xc0\x86\xfe\x18\x3b\xd8\x20\xad\xd7\x15\x8d\xa8\x6f\x9b\xc6\x44\x16\x8a\x97\x0b\x29\x79\x77\x1f\xcf\xdd\x05\xdb\x2e\x0b\x55\x6e\xb2\x9f\x05\x78\xf5\xba\xaa\xf6\x91\xa3\xaf\xb8\x8a\xce\xcd\xdc\x11\xfd\xce\xe9\x3c\x75\x8b\x1f\xdf\x83\x53\x47\x7f\xaa\x9b\x2a\x29\xbb\xa1\xab\x17\xdd\x39\x43\x9d\xba\x12\xb7\xe6\xf5\x3c\x60\xf7\xbb\x1f\x98\x0e\x68\xe8\x99\xa2\x69\xfc\xa7\x91\x8b\x77\x56\x4c\xe7\x39\x95\x81\x4e\xe4\x72\x0b\xf2\xc1\x48\xa0\x73\x08\x69\x38\x1e\x0d\xe7\xdd\xe3\x7e\x3c\x24\x8d\x34\x9a\x71\xa9\xd8\x63\xc6\x14\xab\x68\x64\x4f\xa6\x1d\x5f\x76\xee\xd1\x69\x1a\x3a\xcf\xd4\x91\xbb\x8d\x60\x08\x28\xcf\xe8\x71\x83\x7f\x98\x62\x89\xec\x33\x74\x72\xb5\xcc\xd3\x13\x6d\xae\xc3\xb1\xfd\x55\x01\x2d\x81\x7e\xa8\x03\xc6\x19\x1d\x5f\x60\xff\x26\x32\x85\xd2\x74\x28\xd3\x74\x18\xfb\xf3\xd0\x9b\x11\xbb\x06\xa2\x27\x5c\x03\xb9\x46\x3f\xd0\xbb\xb7\xf4\x9f\x71\xb0\x38\xae\x49\x38\x7d\x5d\x01\xae\x81\xba\x94\x1e\x44\x0f\x78\xf3\xd5\x2c\x15\x6b\x30\xc0\xa3\x6b\x4d\x08\x6f\x9a\x9b\x34\x7d\xbc\x78\xbf\x5f\xff\xf7\xe9\x74\xac\xff\xac\xd7\xcb\xc7\xc6\xbb\x0d\x47\xc7\x0c\x78\xa3\x74\x0c\xa7\x3f\x73\xa1\x32\xbd\x13\x99\xd0\xb5\x41\x4d\xab\x17\x42\x3e\x6b\x17\xae\x75\x14\x5d\x6e\x0a\xf9\xcc\x38\x01\x32\x6e\x03\xfe\xf8\x64\xfa\xc5\x90\xb0\xa6\x91\x00\x47\x93\xff\xeb\x7f\xfb\xdf\x13\x84\xff\xf8\x87\x3f\xfc\x81\x10\x86\x42\x20\xe2\x3a\x76\xa7\x99\x7e\xa4\xe5\x33\xb1\xdd\x16\x7c\x95\x25\x7b\xbe\x12\x09\x3a\x04\x7e\x83\xbc\x06\x25\xe3\x3e\xee\x2e\x76\x66\x7b\xe8\xbc\xbe\xd8\xa7\xa9\x0c\xc7\x53\x83\x71\x5a\x94\x70\x8e\x46\x23\x27\xa9\x85\xe3\x6c\xc7\x73\x24\x01\x07\xaf\x6e\xdc\x1a\x80\xd4\x08\xbb\x0e\xc7\x96\x92\xa8\xda\xf3\x30\x4f\x1e\x99\xdf\x34\x31\x1a\x53\x7e\x50\xfa\xad\xd0\x6f\x84\x73\x67\x04\x64\xc5\xe5\x78\x36\xb7\x5b\x4f\xaa\xe8\xd5\xca\xff\x6f\xde\xde\x6d\xcd\x8d\x1b\xf9\x13\xbc\xe7\x53\x14\xf3\xf3\xe4\x24\x4c\x90\x22\xe5\xf6\xcc\x7f\xb2\x0a\xc5\x4f\xb6\x24\xdb\x6d\x9d\xda\x92\x6c\xab\x69\xb6\xbe\x2c\x26\x58\xcc\x56\x32\xc1\x46\x82\x25\x95\x8b\xbc\xde\x77\xd8\xcb\x7d\xb4\x7d\x92\xfd\x10\x81\x53\x1e\x58\x52\xf7\xec\xae\x2e\x54\x49\x9c\x8f\x81\x40\x20\xe2\x17\xe1\xcf\x2a\xac\x22\x8e\x93\xf2\x24\xcf\xd6\x89\x61\xdc\xf3\x97\x61\x24\xca\x4d\xf9\x7f\xc2\x6f\x5a\xf8\x2a\x8a\x0e\xbb\xf5\x86\xe5\x79\x87\xbc\x05\x9b\xdb\xac\x50\xdc\xfb\xf6\x18\x6a\x6e\x7e\x72\xa4\xa2\xfa\x99\xdf\xbe\x92\xbc\x6e\x90\xca\xcf\x1e\x5e\xc6\x95\xac\xbb\x8a\xe8\x82\x82\xc5\x79\xcf\xad\x1b\xaf\xdc\x32\xd0\xec\x55\x9e\x62\xec\xd9\x5e\xc2\x5d\x88\x96\xac\xea\x73\x9f\x5e\xac\x93\x7d\x1c\x0f\x57\xe4\x4e\x06\x87\x55\x78\xe1\x7c\x19\xb6\x23\x8e\xc7\x33\xa6\x2b\x33\xa8\x4c\x9a\xf0\x64\x45\x55\x03\x74\xfc\x57\x2a\x91\xf4\x07\x4e\x12\x88\xa7\x8f\x79\xb2\x27\xfa\x7e\x3a\x40\x65\x18\x7b\x31\x5c\xd5\xb5\x9e\x47\xd0\x08\x6c\x9e\x38\x26\x66\x70\x22\x9c\xf5\x28\xf1\x46\x06\x47\xee\xb3\xec\x73\xa8\x6e\x7e\x4f\x79\x1e\x24\x68\x1a\xaa\xf9\xe2\x2f\xa3\x20\x9c\x58\x1c\xde\x77\xe3\x0d\xf0\xcc\xdf\x1a\xa5\xe0\xc0\xa7\x02\x26\xf8\x7d\xbc\x41\x4e\xd8\xa6\xf8\x73\x0c\x1b\x27\x3d\x9b\x4d\xa7\xd3\xf3\x33\xef\xaf\x02\xb2\x89\x79\x24\xaf\xaf\xb2\xe4\xe1\xb7\xdf\xd2\x33\xff\xdf\x64\xfa\x2d\x89\xd2\x48\xc9\xac\xaa\x51\x8c\x17\x91\x51\xd4\x42\x46\x3a\x3f\x43\xe4\xa1\xb1\x69\xff\xb4\x13\xdf\xc5\x48\x12\xbb\x6c\x55\xa8\xdb\x54\xd7\x70\x7e\xb6\x2e\x4a\xc5\x65\x7a\x96\x95\xbb\x4d\x96\x98\x38\xf6\x2d\x39\xd7\x37\x5f\x14\x23\x7a\x39\xb5\x28\xcb\x77\xc8\xbe\x36\x61\x25\xeb\x38\x6e\x24\x7a\x23\x10\xc3\x73\x07\x2a\x1b\x0d\xe2\xdc\x2b\xd8\x39\x1c\x12\x2b\xbd\x68\x08\x35\xce\x22\xbc\xc9\xb5\xcf\x39\x7d\xba\x56\x5d\x62\xee\x97\x28\x22\xa3\xbe\x29\xb6\x5c\xec\x55\x52\x4d\x72\xae\xd0\x62\x02\xeb\x7c\xa4\xf7\x9e\xdb\x9d\x37\x09\xa1\x1f\xc9\xdd\xbf\x0a\xeb\xf6\x6f\x1b\x42\x97\xfe\xad\x48\xb0\x6f\x34\xda\x8a\x7d\xcd\xf7\xbb\x88\x6e\x09\xad\xb9\xb2\xc5\xdf\xd2\x87\x53\x72\x1c\xbc\xeb\x4d\x68\x70\x23\xc3\xd4\xdf\x86\x08\x0c\x37\x49\x20\xab\x2f\xfc\x5d\x06\xdf\x4c\xdc\xed\xbd\x67\xd0\xa8\xc0\x33\x69\x94\xf0\xb9\x19\xbd\x34\x8a\xc8\xc0\x8e\x64\xf4\x7f\xff\x1f\xff\xa7\x97\x0a\x09\x1a\x8e\x2c\x07\xfd\x4a\x9d\x9b\xb6\xeb\x64\xb3\x30\xe8\x49\x95\x33\xe1\xcf\xa8\x7b\x86\x3c\x78\x1f\xbd\x4d\x8c\xaa\x5f\xdf\xcc\x69\x5e\xa9\x7f\xa3\xe7\xb4\xbd\x55\xd7\xd4\x4a\xbb\x2b\x0f\x64\x5b\x4f\x42\x40\xdc\xa4\x8f\xc0\xb1\xd2\x5e\x05\xbb\x23\x0a\x3a\xd5\x58\x2c\x81\xb9\x1f\x18\x60\x5a\x5a\x87\xd3\xde\xd7\x57\xdf\x59\x78\xee\x6a\x97\x1d\xc7\xcd\x81\xbb\x9c\xc6\x31\x8c\x31\x0b\x57\xf5\x1c\x08\xe6\xca\xda\x2d\xe9\xa5\x98\x48\x92\xf2\xd1\xe8\x62\x36\x9d\xf7\x2d\x55\x16\xac\x9e\x9a\x7e\x3b\x9d\x92\xb4\xb5\xab\x8e\x83\xcf\xe7\x7b\x38\x9d\x92\xe3\x51\x33\xf6\xc8\xef\x19\xcb\xda\xc6\x19\xc3\x0f\x87\x90\xa1\x01\xe8\x61\xef\xf3\x20\x7d\x2f\x68\xc5\x79\x5e\x1b\x8c\x18\x07\x8c\x96\xea\xcb\x51\x28\x37\x26\xf4\xc3\xbf\x29\x45\x36\x22\xe4\x49\x5e\xdc\x18\xff\x4a\x8f\x8b\x1b\x2f\x23\x2e\xfe\xdf\x97\x11\xb7\xa4\xa1\xd2\xba\xf9\xf2\x97\xe0\xc8\xda\x96\xe8\x94\xff\xae\xc8\x57\xdd\x27\xf2\x55\x7d\x22\x5f\x30\x30\xdf\x71\x99\x41\xe5\x21\x0f\xd7\x96\x05\x3b\x93\xf8\xa9\x3e\x68\xe9\x67\x9b\xae\xd9\x1e\x54\x14\x6b\xc2\x8b\x0e\x77\xa4\x07\x2f\xb4\x0d\x3a\x0a\xa4\x14\x60\x47\xbb\x71\x75\x0f\x20\x29\xed\x4a\xcd\x03\xcd\xfe\xca\x3e\x0d\x34\x1e\x03\x64\x43\xcd\x03\xd5\xde\x5a\xb2\xe7\xbe\x24\xa1\x14\xfa\xb4\xcc\xde\xa8\x62\x3a\x93\xa7\x6c\xa5\x8a\x1b\xfe\x04\x21\xc7\x07\x20\x1c\x0f\xc9\x79\x73\xe4\xbb\x95\x36\x1d\xc3\x50\xe1\x2e\xec\x04\x28\xfb\xf1\xf8\x92\xeb\xf0\x77\x45\x52\x7d\x99\xa0\xda\x88\x40\xab\xfb\x25\xb9\x3c\xd0\x44\xcd\x54\x36\x30\x04\xd6\x4b\x66\x79\x99\xfa\xf3\x4f\x27\x49\x2b\x0a\xa5\x3c\x86\xef\xa3\xc7\xd0\xf0\x9c\x9c\x17\x29\x09\x14\x11\x3f\x2b\x2a\x9e\x34\x70\x43\x2d\xcf\x5f\xd1\x40\x26\xe8\xf0\x43\xc7\xee\xde\x42\x06\x02\xdc\x4b\x8b\x0b\xe6\x62\x51\x01\xdf\xf3\xed\xbc\x64\x8f\x01\x80\x2a\x84\x1a\x15\x00\xd8\xd5\x08\x19\xf9\x52\x9d\x84\xb8\x39\x3c\xd6\xe5\x6e\x73\x60\x83\xba\xf4\x00\x98\xa1\xea\x2d\xa0\x25\x62\xe6\xde\x71\xa0\x2b\x63\x20\x01\xab\x00\x4a\x62\x72\xe2\xc6\xf2\x70\x78\xf0\xc7\xfe\xe1\x74\x7a\x65\x6e\xa4\x98\x04\x45\xfe\x41\xb5\xf7\x2c\x2a\xf4\x51\x93\x1f\x0e\x0a\x11\xcf\xbf\xf7\xed\x4a\x64\x53\x78\xcd\x64\x73\x10\xad\x34\x5b\xaf\xb5\x60\xe5\x28\xb1\x5f\x6d\x7a\xa4\xff\xc6\x67\x7c\x50\xc1\x93\x2a\x4f\x82\x8c\x3d\xaf\x33\x2a\x14\x11\x0c\x65\x43\x46\x10\xc7\x28\xd5\x30\x47\x80\x66\xdd\x7e\x56\x09\x90\xef\x86\xb8\x46\x26\x08\xc1\x1f\x0c\xfd\xee\x36\xa2\x85\xfb\xa9\x2b\x2d\xbe\x4c\x24\xef\xc4\x44\x74\xe8\xcc\xca\xcf\x8c\x84\xc3\xc9\xdc\x1a\x52\x0f\xca\x4f\xcb\x9c\xc1\xb8\xc3\xdc\xea\x02\xf8\xa4\x00\xce\x30\x8e\x93\xc4\x14\x75\x38\x38\xe0\x7b\x5d\xde\x2b\xdc\x2e\x81\x9c\x94\xba\xb8\xe7\xfb\x52\x15\xbb\x92\x07\x74\x9a\x13\x82\xed\x68\xe7\xeb\x76\xd2\xeb\xd7\x36\x0a\xf7\x92\xf1\xce\x86\xad\xd8\x1b\xee\x06\x86\x1b\x14\x88\x17\xe8\xee\x33\x0b\x60\x43\x35\xad\x6d\xa4\x5c\x5b\xf4\x50\xfb\x6d\xd2\x0d\x2c\x90\xe4\xe4\x2a\xcb\x0f\x87\x61\x71\x38\x14\xf8\x39\x05\x34\xa8\x5b\xc4\x89\xf2\x88\x6b\x36\xe2\xc6\x45\x00\x00\x9a\xd5\x0a\x7b\xe5\x2b\x75\x59\x68\xd6\x0c\x86\x0c\x20\x0f\x3a\x1c\x1c\x10\x44\xdf\xd4\xd0\x3d\xe3\x78\xea\x7d\x2f\xf6\x95\x8a\x63\x0f\xe9\xeb\x04\x36\x68\x60\x32\x34\xe5\x94\xac\x5e\x78\xa8\x94\xa5\xd3\xe6\x58\xb1\x12\x54\x4b\xe7\xf8\x67\x81\x7f\x7c\xc2\x14\x02\x06\x19\xbb\xab\x44\xce\xd3\xd5\x62\xe5\xe3\x28\xaa\x62\x87\x81\x0f\x97\xe3\xe0\xd7\x37\xcb\xa3\x85\x6a\x36\xf9\xeb\xc5\x74\x19\xaa\xb4\x2e\x1e\xba\x52\xa6\xc7\x81\x92\xb7\x77\x78\x4f\x7e\x25\x0c\x4a\x26\xb5\x7e\x7a\x69\xe6\x3f\x74\x44\x43\x22\xbc\x06\x1d\x7e\xbf\x8c\x1b\xcb\x7f\xae\x8f\x7a\xa3\x49\xd6\x2e\x95\xd0\xb5\x8b\xcb\x0f\x07\x3e\xc9\xf2\x1c\x91\x91\xd7\x20\xb8\x34\xc7\xdb\xa3\xb2\x84\xd0\x1a\x0e\xfd\x30\x0d\xdd\xa3\x77\x77\xcd\xb6\xf8\x45\x37\x0f\x12\xed\xc1\x4f\x29\x6e\x0c\x4d\x91\x7e\xf0\x88\xb3\xa0\xa8\x88\x1c\xe6\x96\x6f\xaf\xb8\x0c\x56\xbb\x66\x4e\xdb\xe9\x4f\xc8\x94\x1b\xb7\xbb\x36\xaa\x2d\xe9\xe2\xdc\x9e\x20\xc4\xbc\x05\x86\x1b\xbe\x25\x19\xf6\x58\x53\x3c\x03\xed\xd4\xc7\x99\xdd\x0f\x59\x03\x04\x10\x2e\x87\xb4\x9f\x42\x34\x18\xe2\xe7\x22\x69\xaf\xfc\x93\x4f\x60\xad\x74\x27\x1f\xc4\x34\xbb\xdf\x1a\xe8\x2f\xa4\x3d\x83\x3e\x5c\xe2\x06\x99\xe9\x07\x29\x6e\x12\x1f\xda\x83\x59\x1c\x52\xa0\x5e\xfc\xe2\x06\x59\xd2\x77\x10\xd3\xa8\x9f\xaa\x27\x79\xa1\x44\x8f\x43\x97\xfe\x1e\x80\x69\x74\x40\x34\x9a\x72\x6b\xc5\x5a\x24\x44\x9f\x7a\x5b\x51\x3d\xaa\x56\xbc\x56\x78\xf1\xcb\x8a\xca\x1b\xa6\xfc\x64\xc6\x3d\x2f\x6e\xa8\x22\x3d\xaf\x41\x5f\xf6\x14\x64\xcb\x70\x6c\x63\xff\xdb\x8e\x4e\x61\x9f\x75\x3e\xf7\x88\x95\x17\x37\x9f\x7f\xbf\xba\xef\x4d\x27\xd8\x5a\xb8\x6d\xdb\x43\x9e\x90\xb9\x13\x7c\x06\x43\x9c\xfe\xec\xcf\xe6\x7f\x6b\x5b\x34\xe0\xa9\xff\x8d\x97\xa0\x33\x65\x4b\x6f\x3d\x01\x25\xbc\xdd\x36\xda\x7c\x69\xe2\x27\x0b\x57\xe6\x55\xa6\xdd\xd2\x2f\x5d\x66\x8e\x21\xf1\x7b\x63\xd8\x46\xf0\xd6\x81\x40\x6c\x83\xbd\xd1\x49\x84\xc1\x3a\x99\xdb\x20\xc3\x1e\xd0\x6f\x97\xa0\x53\xcc\xd3\x70\xdb\x34\x86\xa3\xf5\x68\xd9\x7a\x08\xb2\x2f\x43\x01\x35\xb4\xf4\xbb\x43\x0e\xbf\x90\x61\x19\x9c\xa2\xf2\x46\xed\x53\x73\x24\xf7\x73\x2d\x95\x4d\x73\x92\x5f\x91\x71\x5c\x81\xcd\x5f\xd3\x6d\xc5\x0f\x3c\x51\x56\x14\x0d\x3a\xd7\xfa\x8e\x9c\x48\x64\x65\x80\xb9\x21\xd6\x30\xb8\x7f\x7d\xa2\x25\x20\x0d\xd8\xdc\xce\x52\xf0\x1d\x05\xe1\x85\x95\xc2\x83\x04\xa3\xc3\xa9\xc1\x5d\x17\xed\xe1\x05\xe0\x9a\x58\xb9\x34\xa0\xc1\x48\x67\x6c\x72\x38\x08\x03\x7d\xea\xb1\xc0\xc3\x37\xb3\xc2\x98\xfd\x84\x39\xa6\x8c\x25\x9c\x55\x12\xa0\x02\x11\x07\x88\xa0\x76\xfd\xa3\x22\xc1\x84\x9a\x01\x41\xbb\xf9\x9a\xf9\x90\x0a\x5c\x5e\x69\x4e\x25\x4c\xca\x3b\x49\xb9\xe6\x9d\xc0\x21\x6a\xe8\x49\x15\x35\xf0\xa1\x5a\xe1\xd1\xbf\xf6\xb6\x6d\x1e\xa1\x0e\x39\x31\xdf\x21\xba\x32\x16\x2f\x8f\x8b\x1b\x58\xb3\x78\xff\x87\x86\x94\x41\x43\xf6\xa3\x99\x69\x8a\xc9\xe3\x43\xa1\x31\x7d\xb8\xc8\x16\x7b\x00\x66\xc0\xbb\xf1\x69\xab\xe6\x7b\x4c\xa8\x28\x02\x3f\x1f\xb4\x36\x1e\x27\xe0\x8e\xaf\xaf\x23\x19\x90\x3c\x2f\x7e\xda\x27\xa8\xb2\x3d\x0b\x81\xbd\xfd\x8d\xf1\xba\xed\x5d\x14\x0d\x4a\x07\x4e\xae\x6b\x2d\x9c\xa2\x08\xef\x73\xd6\x3f\xbd\x05\x5b\x36\xf2\x9b\xc4\xde\x2b\xaf\x69\x14\x11\x42\x6f\x44\x91\x27\x62\xc4\x8c\x65\x7e\x49\x57\x7d\x95\x21\x44\x1a\x56\xb7\x22\x86\x9d\x04\x27\x5c\xf9\xf3\x4c\x7e\x00\x94\xf9\x0a\xdd\x64\x18\x0f\x19\x34\xd9\xb1\xd1\x8a\x86\xcc\x87\x23\x62\x45\xce\xd8\xee\x48\x1c\x59\x83\x36\xac\xfd\xcd\xa8\x64\x6b\xbd\x7c\x00\xeb\x0b\xf0\xc1\xc4\x88\xbd\xb6\xe8\xff\x25\xe2\x82\x94\x13\x25\x08\x0a\x60\x6a\x82\xb2\x27\xe3\xd6\x82\x75\x3b\x80\x43\x60\x65\x8c\x91\x7d\xdd\x1d\x34\xed\x1d\x7a\xf0\xd2\x41\x07\x78\x9f\x84\x31\xa0\x1a\xfc\xe0\x1f\xc9\x4e\xf2\x43\x5e\xdc\x1c\x76\xe4\xab\x07\x05\x5e\xd2\x71\xde\x5e\x64\x5b\x8e\x18\x17\x7a\x9b\x5b\x53\x83\x6f\xba\xd3\xba\x31\x21\xbf\xda\x97\xed\xe1\xc6\x36\x2c\xc3\x4e\xd7\xb0\x76\x08\x15\x23\x66\xe0\xba\xe1\x8d\xf7\x5c\xaf\x15\xaa\x86\x4c\x9e\x13\x70\xfd\x1b\xec\x1a\x6b\x8e\x78\x4c\x14\xad\xe9\x8a\x66\xb4\x24\x84\xe6\x7a\xfc\x90\x62\x6d\x78\x92\x99\x99\x2a\xe9\x13\x1b\x5a\x36\x31\x89\xc9\xf9\xda\x3d\xcb\xc6\x71\xee\xbe\xcf\x49\xb1\x4e\x6e\x44\xb2\x26\x8c\xdd\x88\x24\x27\x64\x3d\xd9\x89\x5d\x42\x68\x6e\xfe\x96\xe3\xb1\x93\x62\xea\x59\x1c\xb2\x7c\x31\x5d\x1a\xf3\x85\x35\x22\x08\x43\x72\xfb\x95\x8d\x46\xee\xe1\x7a\xc3\xa6\x74\xc7\xa6\x74\x0b\x0b\x80\xde\x40\x5e\x7a\xeb\x9f\xb2\xb7\xf6\x99\xe0\xc6\x3d\x65\x6f\x2e\x6e\xe3\x78\x1b\xbe\x5c\x6f\x74\xe3\x9a\x01\xe7\x64\x34\xda\xb8\xe9\xbe\x66\xd0\x05\x7a\x85\x7d\xa0\xef\x7d\x05\x4e\x13\x5c\xef\xc3\xb5\x33\xf0\x48\xa7\x84\x5e\x85\x51\x79\x18\x45\xce\x77\x17\xef\xe3\xf8\x3a\xac\xd3\x15\xb4\x1b\xcf\x08\x63\x57\x61\xdc\x55\x18\xa7\x9b\xb6\x1b\xac\x17\xeb\x00\x98\xf5\xda\x81\x29\xfa\x62\x08\xd5\x63\x82\x3b\x03\x63\x37\xb8\x65\x3f\x32\x98\xd2\x0d\xa1\x4f\x18\x4c\xaa\x6b\x1b\xf4\xce\x15\x90\x7a\x4c\x39\x3f\xb9\x87\x83\x2e\xf0\x70\xd8\xf1\xe4\x23\x7d\x42\xe6\xc9\x8f\xd2\xac\x88\x35\xfd\x48\x9f\x50\xe7\xdc\x8a\x0e\xa7\xc4\x1a\x0b\xde\xff\xb0\xdd\x2f\x0c\x6a\xab\xb6\xdd\x9f\xb8\x27\xb8\x93\xb5\xc3\x5a\x78\xc1\x9c\x91\x7d\xd9\x47\xf1\x8e\xfc\xab\x99\x9c\xd0\xfe\xec\xa0\x5f\xd3\xe4\x93\x69\x9b\xb3\x26\x47\xda\x2e\xbd\xeb\x43\x74\xb5\x6d\xc8\xb7\xe6\x5f\x79\x8e\x96\x4b\x62\xbf\x49\x8a\x32\x3d\x00\x00\xc9\x54\x36\x64\xdc\xcb\x03\xe1\x0d\xdc\x66\x7a\xcf\x49\x20\x6b\xd1\x69\xe9\x14\xaf\x64\x9d\xe7\x94\xc6\xcb\xcb\xc4\x10\xc2\x27\x26\x96\x19\x8a\xd9\xaf\x5b\x00\x39\xba\x9e\xbe\x7a\x3a\x74\x38\x9c\x68\xdc\x6b\x25\xf5\x78\x6a\x82\xfd\xbd\x59\xfe\x89\xbd\xd7\xdb\xfd\x30\x07\x95\x1f\xfd\x95\xfa\x40\x42\xa7\xe4\xfe\x67\x24\x37\x11\xed\x3e\x61\x9d\x0d\x9d\x39\xde\x51\x7a\x78\x2f\x5a\x7a\x6c\xa7\x9f\x9d\xa6\xc7\xc6\x43\x13\xa1\x2f\xf1\x5d\xec\x35\x02\x7d\xdc\x59\x8d\x88\xf4\x13\xa7\xad\x83\x26\xfd\xc0\x8f\xf4\x9f\xe1\x2b\xd5\x9d\xe1\xd8\x4e\xdd\xb2\x0c\xe4\x5f\xd3\xe3\xc1\xf2\x48\x11\xec\xb6\xad\x18\xca\x19\x70\x88\x1e\x0f\x02\x1e\x60\x5c\xbe\x21\x6b\x96\xa3\x99\xfa\x06\x20\xa1\x49\xd0\x08\xf3\xdc\x60\x13\xd7\xa2\x9b\x12\x10\x2e\x2c\x7f\x12\x36\x7e\x09\x76\xbb\xee\x97\x6e\x15\x0a\xf1\xa4\x45\x9e\xad\x2c\x16\xb2\x15\xef\x49\xd4\x59\xae\x0c\x22\xb2\x53\x87\xf4\xf7\xca\x9c\xf3\xdd\xf7\x62\xd7\x18\x39\xef\xf1\x73\xb1\xa4\xf7\x36\x93\x2f\x94\xc3\xa3\xdd\x1a\xe1\xa0\x6b\xa0\x03\x66\xee\xc6\x60\x73\x06\x1d\x8f\x08\x8d\x71\xd5\x9b\xae\xfd\x48\xd8\xdf\x4c\xe7\x98\xb4\xd9\x42\x6e\x70\x21\xc3\xca\xf9\xd2\xc2\x34\xfa\xe9\xf5\x5a\xa2\x56\x3b\xa6\x25\x73\x06\x7b\x5e\xc6\x49\x1b\xa5\xba\x5b\xa5\xb4\x73\x57\xb1\x26\x6c\xb5\xf1\x52\xa1\x68\x15\x38\xa8\x88\xe3\x1d\xaa\x78\x81\x2c\xf5\x82\x4d\x89\xf3\x1e\x80\x1f\xe3\xd9\xf1\x48\x9f\x37\x56\x3a\x3a\x5a\xec\x2c\xf3\x5b\x33\xc6\x66\x25\x38\x5f\x1d\xe4\x48\x95\xe8\x49\x7f\x73\x3a\x3d\x8c\xcf\xa9\x9d\x14\xf8\xe3\x0b\xf2\x1b\xf4\x59\x9f\x62\xb5\x69\xc6\xaf\x36\x47\xf4\x02\x7b\xa5\xe8\x7b\x65\x6c\xbc\x9c\x0f\x5d\x30\x74\x72\x8e\xad\xa7\x81\x5b\xd6\x8f\xaa\x17\x7d\x85\x66\xc6\xbc\x98\x7b\xb7\x7d\xd6\x4b\xcd\x9e\x71\xb4\x2e\xe6\x68\x5d\x5c\xac\x13\x75\xb1\x9f\x27\x05\x9b\x52\xc1\x66\xce\x8b\x15\x49\xd5\x45\x39\x17\x2c\x29\x98\x1a\xef\xc9\x68\x96\x26\xb5\x26\xa0\x56\x1c\x0c\x30\x7a\x65\x1c\xeb\x62\xbe\x59\x5e\x2a\x44\x49\x49\x04\x2b\xc7\x7b\x7d\xb3\x51\x97\x3a\x36\xc9\x9c\x41\xa1\xd3\x5b\x40\xad\x10\xa8\xff\xe1\x92\xee\xa1\x14\xc9\x18\xa8\xde\xd4\x5c\x02\xb2\xe2\x1c\x1b\x91\xda\xcc\x50\x92\x24\xd4\x1a\xb2\x21\x72\x5d\x41\xd0\xe2\x17\x5a\x31\x7e\xb8\x64\xba\xd0\xf1\x37\x4b\xfc\x3d\x5b\x06\x05\x9e\x13\x5d\xe3\xc3\x51\x52\x8f\xd9\x37\x64\xe9\x9d\x75\x69\x0e\xde\xda\xd2\xc9\x38\x2e\x18\x74\x00\xcb\xbd\xf0\xdd\xb5\x1d\x85\x2a\x46\x7f\x59\xc6\xf1\x50\x7f\x7c\xdb\xad\x23\x81\xb1\xd6\x5d\x73\x7d\xb7\x9e\x0e\x8d\x15\x27\x48\xcf\xcd\x0b\x66\x5a\x00\xbe\x9c\xa0\x56\x72\x9d\x66\xd4\x5b\x16\xa7\x7b\x6a\x2d\x8e\xd3\x50\x0d\xe5\x89\x47\x48\x31\x02\x78\x90\x13\x35\x70\x24\xd8\xdd\x91\xf2\x8e\xf9\xba\x41\xbc\x01\xff\x4f\xa4\x49\x6b\x9b\x78\x16\x40\xbf\xda\xc8\x14\x6a\xc9\xee\x42\x77\x88\x2d\xfc\xdc\x16\x58\x02\x56\xf6\xcf\x13\x50\x07\x64\xd0\xae\xbe\xcf\xff\x96\x6e\xc6\x13\xd5\xf2\x25\xb6\x50\xcb\x40\xcf\xe8\x25\xb4\x02\xda\x12\x20\x75\x21\x86\x8a\x3e\xff\x7f\x33\x3e\xef\x9b\x31\x6f\xf8\x27\x63\x31\xd2\x89\xf2\xc0\x2b\x4d\x78\xa0\xd0\x0a\xb6\xe1\x89\x78\x9b\x7d\xd2\x17\xf2\x40\xce\x42\x9b\x5d\x7e\xb1\x07\x4e\xa4\x6e\xf9\x19\xfc\xa4\x3c\xf9\x30\x52\xa7\x5d\x76\xcd\x7f\xb7\xe2\xb2\xc4\x3d\xec\xdb\x0f\xf3\xb4\x7f\x38\xb8\x98\x2b\x91\xdf\x92\xc0\x4b\x7d\xe0\xc5\xb0\xbf\xf4\x77\xff\x69\xe9\x0d\x9c\x9f\x0f\xaa\x01\xd4\xa9\x26\x1f\x8b\xfc\x9a\x2b\x8f\x8c\x8e\x7e\x4c\x5c\xb8\x07\xf4\x2a\x48\x98\x7e\x51\x2c\x27\xd9\x95\xb8\xe1\x56\x72\xf1\x43\xd5\x88\x24\x03\x44\x8f\x65\x82\x5a\xfc\x82\x11\x13\x70\xef\xd6\x03\x1b\x05\x9e\xd7\xe4\x00\xe1\x3d\xa2\x52\xac\xb2\x32\xb2\xce\x9b\x5f\x15\x09\xbe\x00\x9a\x70\xc6\xaa\x79\x36\x62\xfb\xd0\x04\x38\xcd\xc6\x2d\x88\x14\x23\xe4\x8f\xf4\x88\x45\xa0\xb7\x1d\xe1\x18\x42\x8d\xe6\x39\x8f\xf7\xe8\x50\x9c\x52\xd7\xcc\x46\x00\xd2\xbe\x1b\x25\x41\x41\xf3\x69\xaa\x67\x89\x0c\x2c\x46\x32\x58\x1b\xb5\x52\x7c\x82\x14\x06\x62\x97\xed\xa9\x44\xf3\xd7\x11\xdb\x5b\x3b\x24\x33\x44\x59\x30\x44\x19\x0d\x5c\xec\xbc\x0a\x21\x76\xc0\x42\x8b\x39\xc1\x8d\x31\x57\xaf\x98\x31\x02\x06\x75\x5b\x54\xa4\xb5\x9d\x97\xa4\x1a\x33\xdd\x0a\x5a\x8c\xd9\xa3\x10\xc9\xc0\x0d\xa9\x3c\x1c\x86\xb2\xeb\x28\x0f\x01\x73\x4f\x1a\x77\x8d\x98\x30\x95\x8e\x10\xf7\xd3\x78\x99\xfb\x77\xc6\x35\xb4\x8c\xaf\xc6\x99\xb7\x64\x2e\xc6\x60\x00\x16\x90\xab\x5f\x1a\xe0\x26\x96\xbb\x82\x35\xd3\xf6\xf2\x48\x28\x2c\xf0\x8a\x6e\xf1\x0f\x38\x68\x2c\x9a\xfe\x73\xde\x04\xc5\x51\x41\xee\x3c\xfa\x61\xa2\xa8\x7b\xf2\x05\x44\x95\x82\x2a\x9a\xb5\x9c\x40\x52\xe1\xc1\xd6\xe7\x38\xf3\xcc\x58\x36\x5b\x0b\x67\xb3\x20\x6c\x5b\xea\x46\xf5\x75\x08\x5f\xb3\x47\xfe\x57\x22\x3e\xed\x7f\x7b\xe8\x44\xf7\x8c\xf1\x2c\x91\x24\x8e\x55\x1c\x9b\xd8\x8b\xfd\x42\xe9\xc3\x11\xa1\x6c\x13\xce\x54\x96\xe8\x12\xc6\x63\xb5\x24\xe3\xc4\x95\x31\x9f\xa6\x33\x42\x2b\x4d\xce\x52\xcd\xcf\x98\x72\x2e\xf6\x81\xd9\x7a\x50\xe4\xc8\x16\xa9\x8f\x22\xa8\x95\xed\x17\xa3\x91\x2e\xd3\x15\xa9\x4b\xd3\x65\xc6\x31\x08\x7b\x95\x88\x63\x7e\x29\x81\xe5\x9b\x67\x09\x1f\xcf\x48\x9a\x81\xb5\xe9\xb1\x62\x06\x04\xbe\xe9\x7b\x13\x7c\x3f\x00\x58\x50\xe5\x76\x0d\x7a\xdf\x2c\x01\x6d\x1e\xe4\x59\x7b\xbb\xb4\xb3\xc4\xb8\x70\x5f\xb1\x3a\x29\x69\x9d\xa1\x57\x88\xd0\x97\xd6\x90\xfd\x55\xc4\x71\xb2\x42\xd0\x69\x48\xf6\x57\x41\x08\x5d\x05\xde\x1b\x1b\xd8\x44\xd3\x81\x02\x7f\x56\xd8\xae\xd0\x0c\xbe\x75\x3c\x48\xd6\x40\x19\xf8\x1a\x5c\x2f\x9c\x76\x2a\xfa\x4a\xf7\x62\xd4\xa0\x4a\x8d\xb5\x6d\xe1\x1e\x10\xe6\xa1\x70\x96\xee\xa3\xca\x9c\xed\xa1\x43\x3b\xd5\xf6\x2d\xb4\x41\x07\x26\x0e\x82\x6c\xf2\xe9\x17\x5e\xb2\x0a\x70\xdf\x8a\x89\xd8\xab\xba\xc8\x11\x22\xa9\x08\xfc\xdc\xf5\x01\x05\x82\xa7\x06\x39\xea\x25\x97\xe4\xc2\xb1\xe8\xff\x54\x49\x65\xbd\x05\xd0\xe1\x94\x5a\xf4\xa0\x82\x7d\x28\x92\x8a\x4a\x7c\x30\x40\x94\xcd\xca\xba\x49\x2b\xd6\x49\x71\x29\xba\x45\xb8\x14\x14\xe1\xf5\x9a\x8e\xdc\x87\x53\x3a\x23\x03\x8f\xb6\x1d\xe0\xf0\x40\xf2\x82\x9c\x9f\xdb\xdd\xf8\x93\xee\x52\x06\xfb\x51\x12\xba\x67\xcf\xaa\x24\xd3\x6b\x67\x1f\xc7\xc6\xcb\xc3\xd4\xfa\xd6\x1c\xee\x0f\x87\x61\x52\x4f\x56\x9b\x4b\x14\xfe\x4e\x56\x9b\xc3\xa1\x06\xde\xdd\x05\xc4\x71\x0d\x43\x19\x78\x90\xa8\x07\x05\x7b\x54\x24\x19\x2b\x27\x4a\x58\x17\xd2\x6e\x4c\x7f\x52\x5d\x61\x7d\x31\x86\x33\xca\x4a\xec\x1f\x7e\xed\xc7\xb6\xc7\x2c\x95\xee\x99\x41\xcb\x0a\x51\xc7\xab\x86\x69\xee\xc6\xbc\x0f\xe1\x19\x49\x15\xdd\x7b\x5a\xc3\x86\x53\x2a\x2e\x2d\x78\x85\x01\x84\x18\xd7\xa9\xb8\x00\xb3\x59\x13\x30\xaa\xd3\x24\x43\xc0\x00\xb0\x79\x3d\xe2\x36\xfa\x05\x1a\xba\xb6\x00\x47\xd6\x95\x3e\x93\x99\x0e\xdf\xb0\x0a\xfe\xee\x58\x99\xe4\x84\x6e\x59\x46\x6f\x58\x99\x6c\x08\xbd\x65\xa0\xd6\x57\x5d\xde\x04\xb3\x2b\xe9\x86\xde\xea\xb9\x03\x6e\xfb\x1c\x4e\xa7\xd5\x7c\xc3\x58\x7e\x38\xe8\x41\xd6\x74\x34\xa7\x33\x92\x6e\xc6\xf9\x05\x9b\xf9\x4b\xce\x35\xab\x2e\x76\x87\x43\x35\xde\x5d\xb0\x9b\x71\x35\xcf\xd3\x0d\xbd\x62\xd5\x38\xb9\x66\x2c\x9f\xef\xd2\x1b\x72\x0e\x50\x3f\x21\xca\xcf\x35\x02\xfb\x38\x51\x35\xd4\x7f\x4d\x21\xc7\x36\xbd\xa5\x57\x17\xe3\xd9\x7c\x3c\x4b\xaf\x2e\x67\xe0\x6c\x13\x3a\x6c\x44\xb4\x2b\x5e\x94\xc9\xfa\xc1\x43\x42\x3f\xb2\x7c\xf4\xde\x3c\x47\x7c\x64\xb9\x5b\x6a\x4f\xd8\xf4\xfc\xc9\xc5\xfb\xf3\xd1\xe8\x09\xf9\x88\x2d\xff\x48\x67\x58\xc8\x6b\x56\x26\x1f\xc9\xe0\xf5\x65\x35\x4f\x36\xec\x23\xbd\x61\xaf\x69\x72\xcb\x32\x7d\xa9\xb9\x19\xb1\x19\xff\x46\x8f\xe8\x7b\x92\x26\x39\xfb\x48\x77\xec\x35\x0c\xdc\x7a\xcc\xde\x87\x0b\xe7\xb1\x6a\x60\xdf\xf0\x0e\x1b\xdb\x06\x47\xf4\x31\xf6\xb5\x86\xb1\x2b\x45\xee\xae\xd0\xe1\xf4\x4e\xf2\xa8\xcd\x82\xff\xe5\x7f\x9d\x8f\x46\x8a\x5c\xa9\x06\x12\x73\x0b\x50\x5f\x97\xfb\x42\xe4\x3c\x41\x70\x9d\x56\x62\x5d\xf4\x15\x78\x0e\xf8\x77\x4a\x39\x36\xa0\x1b\xaf\x94\x7d\x4b\xbd\x52\x0d\x88\xc8\x07\xdf\x4e\x1d\xc4\x1c\x20\x94\x77\xfb\xaa\x2f\x89\xff\x0c\x0a\x03\x04\xf6\xc0\x17\xf4\x8b\xfe\x61\x74\xf7\x84\xf6\x28\xba\x08\xa3\x59\x11\x62\x0b\xb9\x7f\x11\xa1\xd2\x0d\x2a\xd5\xb7\x93\x41\xa3\x43\x92\x38\x1e\xeb\x94\x31\x7c\xc1\x2c\x04\xa4\x05\x15\x7a\x30\x73\x9d\x2d\x2e\x1f\x06\x9d\xf5\x77\x9a\x02\x4e\xc4\xd9\x14\x96\xd9\x33\x45\x9f\x2a\xfa\xa7\x71\xae\xfc\x9d\x62\x53\x4f\x1f\xde\x9a\x8b\x1a\x3c\x0c\xb3\xbb\xd5\x36\xe5\x80\x1d\x67\x45\x9c\x9a\xee\xe8\xfb\x26\x8e\x61\x8a\x6f\x86\x78\xac\xd0\x00\x43\x4f\xa7\x0b\xdc\x5a\x21\xe4\x9c\xba\xd5\x07\x9e\x8e\x42\x3c\xbe\x97\x57\xff\xac\x31\xa6\xe9\xc6\xea\x47\x10\x6f\xcb\xde\xb8\xef\x33\x90\xe9\x4f\xbb\x9a\x0a\xae\xc6\xe7\x78\xc7\x82\xa6\xba\xcb\x8e\xf1\x3f\x6c\xaf\x27\xcd\x9f\xaf\x84\xa9\x0b\xd5\x59\x34\x2d\xcb\xd3\xd1\xe8\x3b\x75\xa4\x7f\xaa\xf9\x9f\x6a\x22\x76\xb5\x75\xa2\x0f\x03\x43\x52\x8b\x1b\x28\x3e\x56\xf5\x0f\x52\xec\x77\xec\x4f\xc5\xee\xc4\xae\x4e\x17\x26\x6a\x49\x73\x5e\x66\xb7\x3c\xd7\x4d\xbe\xca\x56\x1f\xea\x74\xb1\x0c\xb6\xe9\x8f\x0d\xe4\xeb\x56\x69\x20\x6c\x01\xbb\xe8\x8e\x7a\x2e\xdc\x42\x5b\x25\x53\xcd\x6d\xe4\x02\xa1\xd0\xda\x5e\xdf\x16\x72\x39\x59\x65\x65\x99\x34\x31\x9a\x2d\x34\xa5\x70\x8a\x7f\x0d\xcf\xb0\x3a\x7c\x51\x2d\xf1\xcd\xbd\x7f\x7e\x50\xf6\xd1\x8e\xc5\x19\xba\x38\x95\xc9\xd6\x45\x4e\x25\x58\xf4\x17\x38\x1a\x05\xbd\xa0\x05\x78\x5d\x3b\x7e\xdc\x14\x25\x4f\x7c\x87\xc9\x91\x24\x8a\x1c\xd7\x45\x95\x95\xe5\xed\x9d\x59\xe2\x1d\x9f\x78\x41\x97\x61\x84\xa0\xaf\x7a\x94\x8c\xc2\x0e\xe4\x3a\x6f\x8c\xbc\x27\x7f\x30\x32\xb4\xc7\xbd\xde\xaf\x2a\xd1\x63\x8d\x23\xdc\x13\xff\xaf\xcf\xc4\xff\xf6\x99\xf8\x1f\x3e\x13\xff\xce\xc4\xe3\x18\x04\xde\x3b\x9b\x0b\xad\xa1\xad\x71\xde\xbf\xbc\x0c\x04\xc5\x50\x05\x16\x47\xdf\x97\xc5\x6e\xc7\xf3\x38\x56\xde\xd8\x08\x49\x2e\x90\x18\x50\x27\x69\xe2\xca\xb2\xfe\x94\x63\xd5\x0b\x28\x4b\x95\xa1\x23\x4f\x35\x19\x91\x4d\xf7\x2f\x80\x0e\x6b\xa0\x2a\xcc\x5d\x11\xe3\xb7\x99\xbc\x2e\xaa\xef\x10\x2f\x6a\xdc\x6e\x41\x5f\x0e\x34\x16\x04\xa4\x5d\x6c\x65\xb3\xec\x76\x7f\x51\x17\x46\xf3\x2a\x7c\xd2\xa0\x2f\x71\xfc\x18\x43\xb7\xfb\x5a\x19\xe4\x50\x3e\x09\x68\x25\xea\x28\x39\x92\x88\xe0\x76\xf0\x68\x66\xa9\x10\x18\x95\x7b\x1a\x04\x94\x3b\xf8\x8d\xac\x63\x47\x41\xa6\x99\xc6\x70\x8e\x97\x4e\xbf\x84\x1c\x0e\xb2\x25\x67\xd2\x73\xd6\x8b\x79\x69\xbb\xc4\xc2\x5e\xa0\xb7\xcf\x9f\x41\xef\x28\x0c\xbd\xd3\xd7\x89\xa0\xf5\xe6\x95\x35\x6d\xb4\xe7\x48\x1b\x9d\x0e\xdd\xbd\x9a\x93\x05\x6b\xcc\x1f\x1b\x37\x41\xcd\x3a\xbe\x42\x27\x91\x36\x55\xe8\x08\xf6\x9e\x55\x3c\x68\x97\x1a\xc7\x7f\xc7\xb9\xb9\xca\xa4\x15\x31\x3e\xd3\x21\xdd\x91\x19\xf6\x0f\x0d\xcc\x45\x96\xff\x73\x5f\xe3\x2a\x79\x23\xd8\x56\x25\xca\x17\xe0\xbf\x1a\x8a\x09\xc8\x12\x7f\x43\x55\x53\xb2\x61\x25\x8b\x8d\x12\x1b\xed\x33\x83\x88\x09\x9d\x95\x89\xec\xdf\x2a\xb2\xe3\x60\x68\xd4\x2a\x7b\xb4\x56\x89\x22\x23\xd5\x81\x67\x86\x15\x9b\x7d\x7a\xed\x4e\xc6\x10\xe6\xe6\xf3\xe5\x8e\x73\x5d\x2e\x21\x34\x69\x8f\x39\x2c\xcc\xd6\xa1\x4c\x50\x29\x11\xcd\x1b\x72\x6f\xf8\x2d\x4f\xb9\x48\x33\xda\x6d\xa1\x87\x88\x1f\x5a\x13\x3f\xb0\xdb\xa8\xd1\x2e\x20\x3f\x4d\x61\x92\x21\x10\x45\xd5\x3b\xf8\xb8\xe1\x5b\x63\x71\x61\x14\xa7\x5c\x40\x1c\xdf\xc8\x24\x74\x01\xde\x45\xb1\xf6\x89\xdb\xa5\x81\x4e\x42\xb0\x12\xda\xc2\xdf\x59\xe0\x05\x5c\xf7\x3a\x8e\xad\x41\x07\x7b\x2c\xc0\xd0\x7e\xe8\x78\xe1\x4d\x56\x3f\x45\x63\x8c\x4e\x50\x42\xc8\xa0\x67\x90\xf5\xa6\xbf\xdf\x5d\x5d\x27\x8b\xbe\xe9\xf6\xcf\xab\x67\xf9\x86\x46\xb9\x0c\x09\x33\x89\xe3\xb7\x40\x28\xfc\x42\xf6\x84\xd2\xef\xc6\xbf\xf6\xa4\x69\xaf\x95\x38\x2e\x14\xa8\x0d\x75\x91\x4d\x02\x4e\xb2\xdb\x2b\xb4\xd3\x04\xf3\x41\xd0\x95\x90\x71\x7c\xcd\xdb\x6e\x59\xdf\xdd\x43\x3d\xac\xc6\x22\xbe\x4e\xb7\x9b\xfe\x37\x68\xba\x21\x47\xc6\x43\x91\x9c\x7c\xdc\x70\x5e\xc2\xc3\xcb\xef\x16\xb4\x34\xa0\x8c\xde\x38\x20\x5c\x49\xc3\x06\xa1\x04\x4b\xa9\xa0\x98\x46\xa1\xef\x0c\x34\x42\xa7\x64\x4d\xdb\x7b\x4c\x7d\x9b\x95\x0f\x0d\x09\x7e\x6d\x9c\xd5\x3a\xf3\xe0\x53\xf8\x58\x9d\x32\x0d\x40\x56\x87\xfa\x60\x38\x0d\x6a\x23\x60\xcd\xfe\x19\xb3\x64\x9d\x8e\xf6\x36\xbc\x91\xa2\x3b\x68\x3d\xdd\x05\x92\xd5\x1d\xd9\xfe\x0e\x9f\x84\xf1\xea\x14\x8b\x9c\xc9\x09\x72\x1b\xd6\x76\xb2\xc3\x3a\xb2\x51\x71\x4f\x97\x9f\xa1\x23\xbc\x80\x64\xfc\x0b\x70\xc4\x1b\x2b\xc3\xb2\xe0\x5d\x38\x65\xe7\x1f\x2b\xa9\x42\xe9\x15\x3e\xa0\x7c\x0b\x6e\xdf\x8d\xa0\x68\x38\xa3\x99\xf1\x6b\x08\x7a\xac\x71\x2c\x87\x4c\xcd\x11\x8d\x8d\xa4\x19\xdd\xb3\x5f\x65\xc2\x43\xd7\x65\x20\x3f\x46\x31\x72\xcb\xa5\xd9\x8e\xc2\x7b\x04\x19\x07\xe6\x8f\xbd\xe9\x21\xdc\xf8\x6b\xb2\x60\x9a\x64\x04\x22\x57\x1e\x10\x56\xcd\x3b\xac\x1a\x21\x7a\x28\xbc\xa6\xe8\x3e\x5c\xcc\xc9\x56\xb7\x73\x1f\xae\x13\x87\xad\xdb\x2a\x74\x5c\x92\xcb\x19\x38\x00\x03\xaf\xcd\xcd\xc2\x70\xa5\x24\x37\x61\x69\xcf\x7c\xdb\xdb\xc5\xe9\xa8\xf1\xaa\x51\xde\x50\xa0\x96\xa0\x7d\x4b\xc9\x8e\x89\xa2\xcf\x8c\xf3\xfc\x16\xd7\x46\xfa\x22\x94\x68\xcd\xb4\xe1\x5e\x35\xf9\x0e\x43\x8b\x1a\x11\x5d\x80\xd5\x6e\xd2\xc2\x0e\x80\xb2\x02\x17\xe4\x98\x1b\x73\xfd\x54\x29\xf1\x6b\xc1\x3f\x7a\x2d\xd2\x9b\x26\x18\x3f\x48\xff\xef\x7d\x6f\xa1\x05\xde\x9b\xe0\x7d\x67\x04\x7e\x25\x2f\xa6\xf3\x82\x0d\xa7\x0e\x26\x18\x43\x2f\x0d\xda\x03\x7a\x6a\x41\xea\x10\x9c\x50\xad\xd7\xc2\x06\x11\x41\x2d\x80\xe1\x2c\xd0\x10\x2e\xe2\x78\xb8\xb1\x2b\xd8\x7b\xa3\x04\x84\x06\xb4\xe4\xee\x43\x2d\xb1\xd0\x24\xd0\xd8\xb1\x0c\x84\xcc\xe3\x86\x8c\xbc\xeb\xbe\x50\x79\x58\x5e\xdd\x4f\xbc\x07\x48\xef\x79\xa2\x85\x6d\xa2\x9c\xeb\x4a\x07\x95\xf2\x70\xf7\xe9\x3c\xd2\xd3\xd7\x7d\x85\x6a\x7a\x28\xa3\xc2\xcc\xb0\x9d\x9d\xa4\x68\xbf\xfc\x76\x0d\xab\x05\x39\xea\x25\x66\xbc\x0b\x0b\x40\x02\xba\xbd\xe2\x3f\x02\x86\xc9\x73\xd0\x78\xae\x69\x66\x83\xdf\x56\x9b\x30\x02\x8d\x01\x03\xc4\xa5\xf3\xfa\x42\xf8\xb7\xd5\x9a\x88\x45\x8d\xda\xe5\xde\x2b\xd3\xef\x45\xa2\x43\x69\xb4\x29\x72\x8e\xca\xd4\x19\x14\xd1\x84\xa0\x87\xec\x59\x3b\x3b\xb8\x78\x07\x3c\xfa\x68\x5f\x99\x02\xa4\x13\x4b\x87\xc2\x39\xf0\x20\xe3\xcf\x80\x93\x3c\x15\x6c\x76\x3e\xf1\xc2\x22\xa8\x42\xd1\xc8\xb8\x73\x88\xa8\x6a\x44\x7b\xce\xc3\x33\x0d\x93\x75\x51\x15\xf5\x26\x09\x5d\xb4\x7b\x7f\x17\x56\x9c\x63\x1f\x38\x13\x32\x00\x01\x18\xd8\x24\xfa\x40\x27\x50\x00\x99\x4d\x70\xb5\xfe\xca\x14\xd5\xf6\x4c\xd9\x5b\x38\xaa\x79\x26\x9c\x66\xf2\x1a\xb6\x45\xdd\x57\x5b\x4f\xaa\x76\xf5\x81\xe3\xf6\xd0\xc3\x4a\xb3\x76\x54\x71\x0c\x1b\xc0\x4d\xd1\x00\x37\xd1\x6c\x03\x68\xe9\x85\xcd\x38\x91\x36\x6c\x09\xe4\x09\x1b\xf3\xfb\x89\xc6\x34\xe0\x2d\xd1\xb7\xc2\xe1\xa0\xbe\xbc\x6d\xff\x76\xc3\x1a\xad\xfa\xab\x7b\x9a\x42\x13\xa1\xa2\xe2\x4c\x59\xfb\xcb\x5a\xb1\x8e\xfc\x83\x4a\x7c\x65\x50\xec\x99\x0e\x3c\x27\x1c\xfc\xcd\x55\x79\x32\xd3\xfc\x3c\x5a\xe7\x27\x88\x87\xb6\x58\x12\x62\x04\x83\xee\xd9\x44\x1e\x81\x8b\x05\xcb\xa1\xe2\x4f\x03\x69\xa7\xab\x9a\x3f\x2a\x92\x1b\x63\x3f\x87\x5a\x35\x63\x39\x9a\xa5\x33\x4c\x5b\x89\x9c\x7b\xd0\x3b\x14\xcd\xa2\x1a\x18\xec\x6a\xf6\x23\xd2\xfc\xc0\x9b\x76\x9f\x46\x17\x5b\x2c\xa9\x60\xea\x5c\x5c\xc8\x73\x61\xd5\x0f\xb2\xa6\x2b\x12\xf7\xa4\xa8\xc9\x12\x19\x54\x4c\x8c\x32\xf4\x5e\x67\x1c\xa5\x65\x81\xeb\x2a\x57\x1d\x97\x6d\x3e\x04\x9c\xf2\x99\x63\xdc\xf8\xe3\x73\xce\x42\x13\x19\x46\x8c\xcc\xc9\x5a\xfc\xc9\xad\x67\x95\xa9\x7d\xe4\x6b\xf8\x12\xab\xe2\x58\x3a\x97\x54\xce\x65\x7d\x61\xf6\xf2\x33\xd4\x8f\xb9\xe2\xb2\x3e\x1c\x7a\x02\x8d\x6a\x59\x37\x82\x29\xef\xe8\x25\x10\xd0\x80\xfe\xb4\x75\x88\xf5\x46\x90\xd7\x71\xfc\x5d\xe5\xde\x6b\x83\x76\x48\xa9\xe7\xd7\xaa\x32\xc8\x8b\xc0\x87\x96\xce\xf4\xd6\x66\x92\xa3\x8a\x5c\xfa\xb8\x39\xe4\x4b\x13\x1f\x32\x62\x15\xb5\xc5\x8e\x58\xe5\xcb\x54\x17\x0d\xbf\x5c\x32\x68\x55\xb3\xf2\x46\x42\x72\x97\x08\x56\xe8\x89\x91\xba\x6e\x3a\x23\x64\x6e\x6a\x33\xa9\x8c\x26\xbe\x40\x04\x0b\x42\x7d\x5e\x86\x72\xa3\x17\x8d\xf6\xa4\x50\x99\xb3\x09\x09\x9b\x81\xc7\xf2\xb9\xad\x50\x51\x45\xc7\x27\xeb\x9b\xd2\x56\x8d\x6f\x84\xad\x2f\xac\xc3\xac\xce\xb0\x40\x5a\x37\x3b\x34\xc8\xe2\xb8\x3e\x55\x49\x66\x2a\x99\xac\x44\xb5\xca\x54\x02\x5b\x22\x33\xfd\xaa\x4d\x7d\x2e\xb6\x91\xb9\x36\x59\x49\x5f\xff\x51\x5b\xa0\xe8\x7a\x2d\xda\xeb\x95\x7d\xb1\xc7\x92\xe7\xe6\xef\x88\x55\xa9\xb2\x81\xa3\x3d\x2c\x73\x58\x87\x5d\x8f\x40\x00\xd6\x1a\x38\x81\x97\x76\x0b\xf7\xaf\xce\xc1\x4d\x9f\xef\xea\x53\x2e\x95\x8a\x75\x52\x80\x3b\xa5\xc2\xbb\x53\x32\x9f\xa3\xc2\xb6\xaa\x3a\xd1\x2a\x3a\x4c\xd4\x45\x15\x48\x19\xd5\x25\xab\x9a\x7e\x34\x85\x09\xf0\x5e\x9e\x1c\xe7\x86\xf6\xf5\xde\x71\xa5\x39\xa0\x0f\x87\xc4\x7d\x6b\x5a\x79\x3e\x9e\x31\x76\x2d\x92\x8c\x4a\x12\xc7\x99\x71\x36\xd3\x20\xd7\x30\x01\x77\x5d\x27\x54\x1d\xe7\x9e\x21\x7d\x69\xb9\xdd\xd4\x44\xb0\x4f\xe9\x80\x05\x6e\xa4\x4c\x1f\x7a\x9d\x5e\x79\xf7\x56\xd6\x3b\x63\xa2\xda\x5a\x5f\xb0\xfd\xbc\x12\x43\xeb\x99\xa1\x99\x96\xe2\x53\x8b\x6c\x39\x00\xd3\x85\xca\x45\xb5\x44\xba\x18\x94\x15\xb8\xb3\x95\x6d\x5f\x3a\x82\x99\x96\xd3\xac\x55\x0b\x9c\xac\xaf\x0f\x07\xc9\x4e\x91\x5e\xa3\x24\x82\x38\x7c\x82\xc2\xca\x48\xa5\x77\x88\x86\xb0\x9c\xdd\x7e\x6a\xce\x11\x9c\x0e\xed\x47\xe0\x70\x08\x4a\x03\x5b\xc7\x21\xc3\x21\xac\x2e\xa7\xf0\x57\xa0\xe3\x6b\x63\xf7\xd8\x18\x44\xb6\x1f\x65\x0b\x81\x79\xc7\x8a\x8a\xd1\xc8\x3a\x9e\xd9\x8f\xd5\x40\x8d\x58\x41\xe5\x88\x15\x68\x3f\xe6\xc8\xb0\x24\x60\x44\x66\xca\x4e\xaa\x8b\xe9\x7c\x9a\x06\x55\x34\xea\x90\x23\x56\x7d\x9d\x2d\xc4\x18\xd2\xcd\xd2\x29\xc1\xea\xa8\xde\xdb\xc7\x13\xbd\x0f\xbc\xde\xca\xf6\x43\x4f\x63\x12\x25\x9b\x9a\x89\x54\x3d\xef\x65\x0a\xde\xca\xcc\x61\xad\x4f\x27\xbd\x21\xc0\x1d\x89\xdb\x0b\xa3\x91\x74\x6a\x78\x81\x03\x5c\xd9\xf7\xf2\xa2\xc0\x2e\xf4\x37\x99\xed\xcc\x63\x35\xeb\xc7\x30\xd7\x57\x44\x9b\x12\xc5\x9c\x9d\x84\x10\xec\xbd\x65\x04\x8f\xc2\xaa\xfb\x26\xae\x7a\x15\x5b\x7b\x9f\x45\x10\x29\x42\xbd\x2e\xfe\xe4\x49\x48\xd4\x0c\x42\xff\x9d\xdf\x0d\xbf\x15\x89\x22\xe7\x72\xc8\x9c\xeb\x84\x73\xc9\x64\xe0\x97\x05\x8c\x0b\xe4\xe1\x00\x00\x9b\xd6\x06\x31\x8e\x23\x25\xf7\xa0\x55\xd8\xb5\xf7\x2c\xae\x2b\x21\xf9\x18\x6c\x7f\xea\x08\x9e\x3c\x7c\x71\x20\x1e\xd2\xf7\x5b\x90\x7a\x18\xd7\x92\xce\x4a\x21\xf0\x56\xd9\xde\x5d\x2d\xc7\xa6\xd2\x37\x01\xba\xd0\x6d\x46\x25\xd4\xd8\xd8\xd4\x44\xcd\xb5\x78\x63\x9c\xdf\xd7\x86\x1a\xdf\xaf\x9a\xa8\x19\x5c\xc1\x94\xc3\xce\x34\xda\x7c\x99\x0b\x7a\x37\x06\x11\x8c\x41\x3f\xf1\x37\x0e\xd0\x12\x86\xe3\x8a\x96\x0c\xb4\xb0\x04\xcd\x88\x61\xa5\x66\x8c\x95\xa0\x73\x14\xc7\xc9\xde\x6b\x92\x95\x06\xd4\x4a\xf3\x99\xd6\xfa\x4e\xa7\x5c\x99\xbb\xf7\x0a\xdc\x9e\x52\xab\xbc\xd7\xe3\xf5\x74\x6c\xe3\x06\x25\x58\xf4\x21\x4f\xdc\x96\xb3\x01\xba\x67\x92\x88\xf1\x2a\xbc\x86\x1b\x95\x85\x86\xc6\x1b\x19\xaf\x3c\x54\x7e\xa0\xf5\x5c\xca\x1e\x90\xbc\x70\x86\x12\x25\x12\x05\x30\x62\xd2\x20\x9a\x01\xf2\x43\x1c\xdb\x07\x86\x06\x20\x44\x42\x08\x41\xc8\xbc\x4d\x01\xd8\xf6\xf0\xf7\x67\x7e\x4b\x6b\x84\x8a\x25\x28\x95\x75\xd7\xd0\x5c\x66\xd7\xd7\x60\xb4\x35\x9c\x9d\x06\xb2\xea\x4b\x3e\x3d\x12\x3a\x9b\x4e\x89\x67\xdc\x86\x6b\x09\x4d\xb5\x2a\x72\x7b\xfc\x39\xa8\x3f\x16\x7a\x4a\x8d\x1c\xc5\x82\x89\xfe\x50\x24\x3a\xe9\x2a\xab\xf9\xd9\x2c\xb5\x62\x20\x23\x32\xaf\xae\xf5\x8e\x9d\xf7\x86\x6a\x86\xb3\x9a\x37\x45\x87\xe4\x4e\xcc\x83\xd6\xbf\x16\xc9\x35\xa7\x60\xc2\x96\x7a\xf7\x87\xab\x7d\x0d\xaf\x0e\x03\x7b\x93\x70\x4e\x88\x07\x4f\x55\x1c\x3f\x55\x13\x55\x6c\xf9\x65\x31\xfe\xcb\x74\x0a\x26\x15\x3b\x9e\x3c\x55\x93\x9d\xa8\xa9\x24\xf3\x8a\x45\x4a\x16\xbb\x92\x47\xe9\x33\x15\xc7\xcf\xfa\x52\x3f\x73\xa9\x93\x8a\x45\xb9\xd8\x5f\x95\x3c\xa2\x4f\x15\xbb\xd3\x69\xd3\x82\xee\x44\x9d\xca\x23\x49\x75\x34\x7a\x0a\x8a\xe8\xb3\x4e\xf4\xc0\x2e\x77\xee\x81\x4e\xd9\xcd\x5c\x4d\xb6\x5c\x65\x3f\xf3\xdb\x54\x4d\x56\x4a\x96\x3f\xf3\xdb\x40\xe3\x52\x4f\xcd\x63\x29\x76\x71\xfc\x2f\x01\xf2\xe2\x26\x9e\x97\xad\x0e\x85\xab\x7b\x16\xc0\xfb\x4a\x42\x00\xd2\x2d\xd9\xf1\x04\x62\x8c\x25\xd2\x7e\x49\x2c\xa0\x81\x24\x17\x53\xbd\x02\x8d\x7a\x1f\xa6\xdd\x83\x2d\x12\x95\xe4\xd2\xc5\x5d\x4c\xc9\xbc\x2b\xd4\x6d\x51\x1e\xba\xf7\x23\x4f\x4b\xf6\x55\x13\xcb\x7a\x45\xee\x6a\xf4\x34\xd3\xb7\x46\x41\xbc\x08\x6b\x02\x42\xcd\x92\xd0\x8b\xf7\x6f\x85\x53\xab\x0a\x90\x59\x4b\xa2\x23\x8a\xc0\xad\x4b\x2e\x05\x86\x3b\xa1\xa8\x27\x4a\x2b\xfb\x45\x46\x9d\xd8\x77\x2e\xf6\x1d\xb9\x98\x4d\xe3\x38\x79\x5b\x24\x2b\x42\x87\x55\x1c\xbb\xee\x8c\x1f\x4e\xa7\x17\xfb\x38\x7e\xcb\xdd\xe9\x4e\x6b\xc0\x21\xfd\x5f\x8c\x65\xf3\x13\x1b\xac\x61\x61\xe0\x36\x48\xd1\x44\xdf\x45\x88\xa1\xb4\x15\x4a\x8e\x84\x0c\x4e\x8f\x17\xb8\xa6\xea\x19\xaf\x92\xb6\xd2\xe3\xca\xe9\x09\x4c\xc8\xe0\xdd\xa9\x91\x7d\xd7\x3f\xb2\xd6\x91\xd5\x8a\xa4\xa7\x41\x19\xfc\x6a\xc8\x8c\x2e\x2d\xb8\xbb\xb1\x5e\x35\x69\xc9\x32\xb3\xf0\xed\x7a\x1c\x14\xf0\x94\x6d\x29\xda\x3c\xd9\x63\x92\x70\x21\xd3\x9a\xed\x2f\xc7\xb3\xf9\x6a\xb1\x5f\xa6\xc6\xd8\x50\x52\x49\x48\x9a\xd4\x26\x75\xe8\x5e\xc3\x87\xa0\x15\xa1\xa6\xb8\xb7\x73\x5f\x07\x7a\xc3\xb4\x7b\x2e\x2b\x75\x18\xa9\x58\x24\xf9\x4a\x45\xa0\x80\x5d\xb3\xb0\x16\x2a\x99\x39\x71\x87\xa0\x3a\x4b\xf7\x6c\x3c\xf3\x06\x02\x86\x20\x38\xa3\x09\x8b\xdf\xf0\x9b\x90\xf9\x23\x95\x48\x32\x08\xcd\x28\xa0\x11\x87\x43\x06\xd7\x99\x2a\x9f\x7f\xc7\x93\x8c\xd6\x74\x6d\xed\xf0\xd6\x68\x84\x97\xae\xdd\x65\xd6\x12\x28\x57\x41\x6e\x5b\xb7\xe1\x09\x1a\xde\xd1\x29\xc8\xed\x33\xea\x42\x00\x2a\x82\x7c\x51\xd5\xb9\xad\x3a\x37\x55\xe7\x06\xf6\x98\x99\x04\x92\x0c\x8a\xb9\xbe\x01\xed\xf5\xec\x58\xb8\x34\xfa\x83\x8e\xfd\x89\x27\x2b\x7b\x4f\x5d\xd4\x4b\x42\xf7\x84\xde\xe1\xe2\x49\x87\x33\x2a\x64\x71\x5d\x54\x69\xf4\x35\x2c\xb0\xe8\x48\x48\xba\x0a\xf0\x0f\xf4\x84\x5a\x6b\xcc\x16\x31\x6b\xac\x09\x5f\x95\xbd\x41\xef\xdd\xed\xd8\x86\xed\x47\x33\xa2\x8f\x86\x7b\xab\xb7\x0b\x90\xa4\xbf\xea\x22\xf7\xb4\xa6\x7b\x41\xd2\x64\xcf\xa6\xd8\x1f\x63\x89\xba\xa8\x97\xba\xa8\xbd\xf0\x39\x0c\x6a\x39\xba\xc0\xdd\x31\xf1\x59\xe7\x3f\xdb\x50\x3d\xf1\x26\x51\x96\x62\x8e\x46\x5b\xba\x0a\x56\x14\xae\x3b\x3d\xbb\xa8\x75\xeb\xac\x7a\x57\x74\x43\xfc\x0d\xdb\x9f\x74\x1e\xfb\x03\x2f\x31\x98\x7a\x43\x15\x70\x09\x1b\xa6\x82\x22\xef\xfc\x5b\x1b\x48\xd8\x3a\x3c\x11\x05\xae\xe9\x49\xa1\xef\xb6\x01\x7f\x45\xe5\x64\xb5\xa1\x82\xd0\xb5\x8b\x56\x61\xb4\x32\xd1\xb9\x47\x78\x58\xd1\x35\xa1\xc1\x3b\x2d\xfc\xde\x36\xbc\x25\xe8\xa5\x6a\xed\x01\x6e\x7c\x0c\x87\xab\x00\xa0\x97\x06\x2f\x72\xcd\xf4\xe4\x7c\x7b\xc1\x6e\xce\xb7\xf6\xe6\x72\xcb\xa0\x51\x5b\xd3\x9e\x6b\xb6\x11\xc9\x2d\xcd\xa9\x20\x83\x9c\xb1\xdd\xdc\x88\x04\xfd\x4e\xd9\xd2\x6b\xc0\xe6\xd0\x7f\x09\x49\x6f\xed\x32\xbc\xd6\x04\xf2\x64\x5a\x28\x75\x47\x05\x01\x28\x14\xf7\xe0\xd0\xcc\x81\x54\xc2\x2e\x52\x4b\xd9\x7a\xd6\x6a\x81\xfb\xa3\xb5\x2c\xa9\x5b\xb0\x47\xff\xce\xe6\xde\x5b\x54\x20\x72\xba\x62\x35\x7d\xcf\xae\xec\x86\xfd\xc8\xe0\xf1\xd1\xee\x9b\x21\xab\x8c\xf9\x93\xa7\x48\xa8\xb9\xdd\x20\x48\xca\xf0\x76\x4f\x02\x32\xa2\x3a\x64\x44\x35\xc8\xc8\x8e\x27\x4f\x6c\xad\xef\xc9\xe5\x74\x9e\x7c\x64\x4f\xd0\xb4\xfc\x3d\xbb\xe5\xc9\x95\x65\x29\x6c\x2a\x4d\x9b\x75\x12\x9b\x87\xdd\xe8\x44\xc0\x59\x3c\x31\xc6\xdf\xc7\xa4\x60\xed\xb1\x22\x64\xb1\x77\xf6\xe4\xd0\x94\xf7\x84\x7e\xf4\x63\x5b\xe8\xf1\xdb\xc3\xfb\xd2\xca\x3a\x29\xf8\x35\xd1\x57\x87\xf3\x64\x65\xf4\xc9\xd6\x13\x25\x0e\x07\xfc\x75\xb1\xc6\x57\xcd\x38\x0e\x0e\xe9\xaf\xda\x6e\x36\xb6\x8c\x15\x71\x7c\x63\xfc\xb2\xcd\xbe\x9d\x06\x43\x9e\xfb\xab\xcc\x05\x78\xd0\x9c\x8f\x1f\x4e\x53\x17\x76\x69\x1d\x69\xce\x1f\x4e\xd3\xe9\x20\xff\x92\x8a\x12\xd1\xf3\x60\x34\x62\x39\xd5\x2d\x80\x26\x00\x14\xb1\xa3\x1d\xd7\x7a\x9f\xf3\x3e\xa6\x59\x73\x48\x5b\x36\x7b\x30\xa5\x70\xcc\x82\xf0\x32\x84\xf6\xef\x72\x4f\xfa\x4a\x19\xd1\xab\xbe\x28\x7d\xfc\xbf\x27\x34\x9b\x6c\x8a\x5a\x09\x79\x0b\x9b\xf2\x35\x2f\x5f\xc2\x6a\x65\xee\xc6\x76\xd5\xe6\xed\x38\xb9\x03\xb6\x7f\x7e\xa3\x99\xf8\xeb\x84\x43\x1f\xde\x63\xb2\x6b\xcf\xab\x34\x9b\xfe\x9e\x76\x39\x10\xd7\xba\x7e\xe6\xe4\xbd\x63\x42\x2a\xba\x22\x47\x7d\x0f\xa1\x15\x49\x7f\xd3\x95\x03\xc8\xaf\x19\xd5\x38\x7e\x0b\xee\x00\x8c\x6b\x5f\x7d\x17\x79\x98\xd6\xa0\x69\x85\x2d\xd1\x3d\x7b\x5e\xe4\x79\xc9\x1f\x8b\x8f\x95\xe7\x5b\xc1\x6e\xeb\xad\x85\x20\xab\xee\x01\x01\xee\x61\xe2\x68\xa7\xd2\x6f\xd2\x8f\xf3\xef\xf1\xba\xd4\x42\xff\x30\xcc\x1b\x2f\xb3\xdb\xa2\xba\xfe\xae\xdc\xcb\x27\x37\xbc\x02\x4f\x46\x27\xe1\x2e\x4f\xe4\x41\xe5\xcb\x53\xe5\xcd\xe8\x1b\x09\x50\xb6\x78\xad\x3b\xb6\x1e\x99\x56\x81\x24\xc1\xc2\x99\x16\xfe\x3e\x4f\xfd\xdd\xfe\x5d\xfb\x0a\x3f\x9c\x1d\xc1\x98\x09\xc9\xf8\xba\x14\x42\x06\xf6\xc2\xd7\x7b\xa5\xb8\xac\x4f\x1d\x8e\xd6\xd7\xad\xc3\xc4\xa8\x60\xce\x94\xb5\x68\xf5\x7c\xa4\x66\xf0\x3e\xe7\x42\xaf\x58\x27\xe2\xd2\xea\x6d\x1c\x0e\xc3\x4a\x80\xb6\x88\x95\x6b\xfc\x0a\x05\x8b\x31\x5a\xa7\x8e\xb3\x40\xb2\xea\x44\x88\x7b\x36\x3d\xdf\x5f\xf8\xd3\xd1\xb6\xdf\x3d\x1c\xef\x2d\x30\x6d\xe6\xe2\x02\xe8\xaa\x3d\xc8\x94\xcb\x38\x2e\xef\xef\xf1\xa5\xf5\xbb\xbe\x62\x1f\x82\xd7\xac\x35\xeb\xd4\xac\x8b\xb4\x5e\x99\x0b\x78\x57\xe0\x74\x45\xd7\x54\x11\x0a\xfd\x09\x67\x71\x2d\x1b\xaf\xb9\x66\x52\x23\x2c\xe9\xfb\xb2\x58\x7d\x88\x34\xdf\x0a\xbb\x37\x97\x21\x5b\xb2\x69\x09\x2a\x00\xa4\x42\x6a\x52\x32\x34\x12\x8a\x38\x1e\xd6\xd2\xab\x0f\x82\x20\x00\x16\x3a\x15\x71\x9c\xe4\x32\xd8\x3c\x46\x5f\x03\x05\x04\xc0\x28\x5b\xbc\xf3\x37\x32\xab\xea\x35\x78\x1e\x2d\x39\x54\x02\x0e\xad\x1a\x97\x59\x82\xb2\x9f\xca\xbd\xca\x1b\xc9\xc2\xd3\xa2\xe4\x3a\x95\xde\xd6\x41\x50\x60\x85\x6d\xb3\xd0\x8c\x3d\x92\x32\xbb\x05\x48\x78\x10\x09\x07\x17\x95\xca\x60\x27\xba\x71\xce\xca\x52\x7c\xd4\x77\x21\x5d\xda\x9b\xdb\x1d\xaf\x0f\x87\xf1\x6c\xc8\xae\x45\x72\x5f\x22\x8a\x78\xff\xfe\x69\x81\x7f\x3c\xf3\x4d\x1c\x88\x89\xa8\x4a\x91\xe5\x9a\xf8\xa9\x1e\x57\x9e\x62\x22\x79\xbd\x2f\xe1\xdc\x7e\xb0\xf8\xe3\xd3\x74\x3a\xfe\xe3\xd3\xf4\xbf\xfe\xf8\x34\xe5\xe3\x3f\x3e\xcd\xd6\xcb\xbb\x87\x47\x8b\x4c\x0e\x4a\xa8\x2c\x8a\x08\xcd\x16\xd5\x92\x71\x3a\x1a\xd5\xcc\x2e\xa0\xbd\x01\x02\x91\xec\x99\xa5\x57\x92\x50\x25\x52\x69\xbd\x14\xb4\x90\xf4\x32\xc4\x74\x53\x7d\x60\x79\x84\x38\x56\x19\x31\xef\x8f\x83\x67\x16\xae\x6a\x4f\xe8\x6f\x0d\x50\xc6\x7f\xca\x64\x6f\xa1\xdd\x05\x60\xa3\x3e\xaa\x8d\x04\xe7\x78\xa4\x25\x9b\x9e\x97\x17\xc5\xf9\x68\x54\x92\x7d\x52\x2d\xca\x25\x2d\xbd\xfb\x05\xd5\x73\x6d\x05\xcd\xc8\xb6\x73\x22\x49\x2e\xbd\x20\xbe\x2f\x97\x5e\x81\x80\x9a\x75\x82\x5e\xb6\xb5\x2d\x1b\xa4\x1a\xe4\x96\xc5\x3a\xc9\xda\xeb\xf3\xda\xba\x44\x78\x03\x20\x80\xe4\x74\x9b\x87\xc9\xcd\x9c\x9b\xcb\x63\xca\xad\xe4\x06\xf1\x1b\x57\xe0\xf6\xb3\x6e\xf8\xac\xd0\x13\xfe\xae\x31\x8e\x9a\x67\x5c\xc1\x32\xc6\x31\x5b\x79\x62\x53\x12\x87\x16\x16\x45\x74\xb5\x28\x2d\x94\x0e\x7e\x1b\x37\xa4\x32\xbb\x06\x47\xb0\x1d\x07\x12\x19\x8d\x32\x10\x62\x46\xd6\x87\x41\xa8\xcd\xdb\x1c\x0f\x43\xd6\x39\xb9\x3b\x86\x24\x65\xd7\x7a\xce\xd2\x95\x59\xe5\xae\xe4\x73\xfa\x3f\x7d\xd9\x42\xad\x21\x1f\x6a\x00\xf1\x5d\xb5\x5b\x43\xc9\x4e\x6a\xca\x29\x72\xf1\x10\x81\x29\xc2\x60\xa6\xa8\x3c\x1c\x7e\x4f\x38\x05\x5d\x7f\x75\x0c\x6b\xeb\xf2\x5a\x43\xa6\x1a\xbd\xe8\xd1\xef\x54\xdd\x12\xba\x6a\xa2\x0a\x94\x76\x7f\x07\x62\xa8\x79\x1d\x10\x9c\x06\xde\x81\xdc\x2b\x69\x22\xe7\x8a\x75\x14\x07\xd3\xd3\x0a\x7c\xba\x9b\x04\x30\x87\xbc\x06\xf7\xe9\x2e\xa1\x0e\x68\x4f\x74\xf0\x90\x02\xfd\x69\x54\xc2\x14\xfd\x57\x13\x50\xa4\x47\xe9\xf3\x33\x43\x85\xe5\x7c\x6e\xac\x40\xc3\x54\xb3\xb6\x70\x71\x93\x6c\x4a\xaf\x71\xe6\x07\x62\x7e\x2d\xd9\x78\xf2\xed\x37\xa9\xd4\x5f\xb3\x6f\xd3\x12\x43\xfe\x67\xba\x8e\xe3\x44\x7f\xce\x1e\x7c\x83\x27\xcb\x95\xec\xea\xbc\x30\x8e\xca\xc7\x8f\x79\xa9\xb2\xdf\xc1\xd9\xaf\xff\xfd\x2e\xb4\x82\x07\xb5\x0f\xcd\x22\xa9\xac\x28\xf5\x57\xf6\xa9\x00\xb4\x9f\x1f\x5f\xfe\xf2\xd3\xdf\x5f\xbe\x78\xf3\xe8\xd9\xfb\x47\xbf\xff\xf4\xda\xea\x86\x40\xba\x40\x31\xa4\x2f\xeb\xaf\x4f\x7e\x79\xf3\xd3\xf7\x26\xe3\x5c\xba\x6c\x69\x53\x9d\xc4\xb7\x88\xd0\xbb\x4f\xa9\xa2\xb7\xa9\x3c\x06\x10\x47\xef\xa5\xb7\xbe\xaf\xd8\x15\x1c\xbf\xfa\x54\xfb\x04\x06\xe4\xb7\xe1\x83\x29\x4a\xb7\xac\x6c\xae\x74\x4a\xa2\x30\xc5\x97\xfb\x86\xf2\xef\xda\xc5\xe2\x1b\x99\x8b\xf6\x26\xb3\x45\x1c\x97\x20\xc7\x5c\xe3\x4b\x65\x1c\xdf\xc4\x71\x4d\x78\xea\xf1\x3b\xd5\x44\x65\xf2\x9a\x2b\xba\x61\xc8\x38\x9d\xe7\x43\xb6\x3f\xcf\x59\x1e\xbe\x83\xd9\xf4\x3b\x36\x3d\xdf\x5d\x6c\x2c\x25\xdb\xe1\x83\xf1\x66\xb1\x43\xe4\x57\xc6\xf2\x90\xa8\xac\xf6\x52\x97\xf0\x9b\x1e\x9f\x37\x50\x0b\xcb\x91\x7f\x3e\xe3\x47\x6c\x1e\x78\xbe\x5c\xa1\x5e\xfa\x90\x5d\x3b\x48\x0f\xdd\xe6\x38\xde\x7a\x55\xe0\xa6\x9a\x74\xa0\x76\x3b\x12\x5f\x5f\x4b\xda\x1c\x8a\x71\x73\x28\xf4\xf9\x77\xf3\xb9\xa2\xc0\xa8\xa4\x08\xcb\xc2\x6d\xd7\x18\x74\x30\x30\x31\x3e\xaa\xd6\xc4\xf0\xb4\x08\x05\x9b\x35\x94\xe6\xd1\xa4\x11\xc7\xdc\xf5\x0d\x56\xc0\x96\x41\x83\x6f\x3b\x9a\xc7\xd7\xec\x76\x94\xf5\x3e\xa6\x0e\xb6\x17\xd3\xf9\x6d\xa8\x2f\x7e\x3b\xda\x8e\xbf\x9d\x92\xf4\x3a\x14\xb2\x04\x16\xaf\xd7\xa3\xed\xe8\xdb\x29\xa1\x8e\x64\xde\x5a\xb4\x85\xeb\x23\x39\xde\xca\x8b\x87\x53\xa7\xc5\xd4\x68\xf8\xbc\xd5\x8f\x70\x74\x68\xd6\xb0\x04\x08\xe6\xc0\xc6\x3c\xfe\x9d\x15\xee\xfb\x1d\x13\xa7\x2e\x3b\x4e\x3f\xa3\x51\x99\xe5\xa1\xc2\x3a\xc7\x8d\x14\x54\x85\xb5\x36\xe2\xde\x51\xa9\x29\x80\xab\x3c\x8e\xd5\x03\xf7\xe3\x70\xe0\x3e\xea\xf7\x38\xe6\x2e\xea\xf7\x41\xb3\xbf\x59\xc7\xd8\x01\x00\x26\xae\x25\x4b\xae\xe5\xd7\xb7\x72\x24\xc9\x83\xe4\x56\x8e\x66\x84\x8e\x46\xb7\x52\x73\x49\xe0\xbc\x8b\xa4\x89\x2b\x72\x14\x0e\xc2\x88\x09\x12\x5e\xf6\x3f\xca\x10\xc8\xa6\x06\xcc\xc5\x88\x31\xcd\x73\x8a\xf5\x19\x30\x1e\x8a\xad\xaa\x85\x5a\x06\xb7\xa7\xb6\x33\xd5\x10\x46\xd4\xbe\x8c\xb5\x05\xc1\xb4\x60\xc3\x19\x30\x42\xed\x47\x25\x77\x9f\xac\xf7\xbb\x9d\xe4\x75\xfd\x24\x2f\x54\x0d\xd0\x19\xcd\xd3\x1f\x9f\x23\x87\x33\x4d\xae\x34\x43\x36\x64\x99\x70\x0a\x8d\xed\x64\x15\x3d\x51\xec\xcc\x2b\xed\xbd\xc4\x51\x81\xbb\xeb\xab\xe2\x13\x2f\xeb\x1e\x92\x7f\x25\x03\xa5\x45\x35\xf9\xf4\x35\xbb\x96\x54\x4d\x6e\xf1\x2f\x82\xcc\x3d\x91\xc0\x98\xaf\x84\xa7\xb2\xaf\x7b\x1e\xcd\x43\xc7\xb8\x40\x0f\x61\xd4\x77\x55\xe2\xae\xa6\x91\x81\x2c\x8d\x06\x4f\xc0\x91\x57\xf2\xed\x94\xf6\x5d\xcb\xb1\x0c\x14\xef\xb4\xc2\x0c\xc4\x56\xaf\xbb\x5b\x90\x94\x28\x56\x8c\xa2\xb3\x68\xa4\x8c\xba\x74\xfb\x11\xb4\x6d\xf8\xec\x4a\x7f\x9e\xf5\x9a\x40\x6f\x90\x59\x68\x24\x5b\x54\x4b\x7d\x85\x44\xec\x72\xe2\x06\xdc\x29\xa7\xda\x0b\x0f\xff\xa4\x64\xf6\x33\xbf\xad\xe3\xd8\x14\xd3\x89\xa1\xe8\xff\xaa\x15\x8d\xf5\x40\x1c\x0a\x69\x2a\x3b\x47\xd1\x76\x5f\xaa\x22\x62\x4c\x74\xc7\x46\x11\xea\x46\x18\x12\xfc\x5d\xdf\x75\xa3\x0f\xdc\x58\x55\xe7\x11\xc5\x41\xf0\xc9\x86\x3a\x99\x29\x73\xc8\xc4\xe1\x90\xbc\x2d\x12\x49\x68\xa1\x57\x20\xa1\xfa\xcc\x10\x71\xfc\xe0\x8f\xff\xfe\x95\xb9\x47\x29\x32\x37\x49\x86\x53\x92\x0e\x87\x22\xc0\x55\x93\x21\xee\xcd\x56\xf7\x68\xe8\xc0\x7c\x87\x43\xf4\xde\xe4\x9f\x8d\x86\xcd\xd6\xcf\x61\x49\x45\xaf\x75\xfc\x38\x1a\x49\x1a\x5e\xf8\xfc\x75\xfc\xa3\x95\xf4\xeb\xc9\x3e\x1c\x5e\xa3\x96\x60\x2b\x6d\xef\x66\x9f\x3f\xf8\xc7\xb5\x58\x3c\x1a\xff\x7d\xe9\xba\x92\xaa\xc9\x56\xe8\x4c\xa4\x51\xba\x2e\x3a\xed\x2f\xb9\x93\x0e\xd9\xb0\x4f\x86\x03\xf3\x58\x6a\x3d\xa2\x00\xd5\x7d\x7b\xb0\x72\x01\x74\x90\x7b\x31\x9b\xc5\xf1\xc3\xff\xa9\x99\x21\x83\x35\x0b\x73\x8c\x75\x02\xfc\x76\xc3\x5a\xd0\xa4\x19\xa8\x16\x6d\x98\xfd\x0f\xc0\xd7\xf2\x8a\x0d\x86\x64\xbd\x34\xba\x06\xab\x38\x4e\x74\x83\xe7\x12\xe1\x0e\xaa\xc3\xe1\xbf\xfe\x6b\xa8\xb3\xfc\x4d\x1c\x0e\x78\x15\xb3\x2f\x7a\xfe\x2e\x76\x38\xf4\xdc\x8d\x9a\xce\xf5\x08\x9d\x61\x39\x0f\xfe\xb8\x0a\x9d\x0e\x4b\x51\xd7\x9b\xac\x90\x7f\x58\x37\x61\xaa\x71\xe5\x79\x5c\xdc\x4c\x9c\xbb\x62\x72\x38\xdc\x63\x8b\xde\x75\x87\x08\xe3\xac\xab\x0d\xc6\xcc\xde\x24\x0f\x87\xe4\x99\x1e\xdf\xa8\xaf\x31\x51\x4b\x6a\xfb\x81\xdf\xee\x77\x91\xde\x1c\x5d\x61\xae\xb8\xe1\x32\x02\x9f\xe5\x4f\xef\x2b\xef\x5d\x7f\x79\x5d\xf1\xab\x2d\xef\xd8\x34\xd1\xff\x80\x9d\xf9\x1f\xcd\x05\x80\x10\xc2\xe6\x4a\xef\x0f\x09\x85\x3a\xe4\x34\xb4\x8e\x7e\xd5\xb3\xea\x86\x49\x4b\xe2\x74\x38\x38\x75\x19\x37\xbb\xb0\x1b\xed\xa0\xdd\xe8\x11\x34\x0b\x80\xd8\xed\xec\x5a\x04\x62\x28\x0b\x80\x0c\x6f\x6c\x80\xc6\xf9\xc9\x31\x93\x66\x2f\xa0\x3c\x01\xa5\xb8\xba\x19\x2b\x5d\xdd\xc7\x4d\xb1\xda\xe8\x53\xd7\x7c\x5e\xcc\xa6\xe4\x70\x18\x9a\x95\x49\x92\x36\xb1\x36\x45\x22\x69\xf8\xef\xd1\x48\x8e\xa2\xff\x1e\x7d\x09\x65\x38\x12\x10\x9b\x9d\x46\x76\x86\xd5\x4f\x60\x55\x37\xcf\x12\x8f\x31\xdd\x34\xf2\xf8\x45\xde\x2b\x6c\xfe\x8c\xe0\x98\xd0\x06\xd2\x73\x8f\x33\x9c\xa4\xe3\xae\x3e\x01\x51\x65\x04\xbf\x23\xca\xbd\x5a\x87\x49\xc1\x86\x53\xfa\x34\x04\xcb\x34\xdc\x6c\x63\x7d\x9a\xb4\x91\x53\x7d\xd7\xd3\x70\xd2\x07\x3c\xf3\xea\x34\x0d\xc0\xca\xa6\xe3\xe2\xba\xf1\x2e\xd3\x3c\xc0\xfb\x72\xc0\x94\xd0\x87\x53\x42\x7a\x4e\xee\xc0\x0f\x4f\x42\xec\xc1\x13\x80\xe6\xdd\x3f\xec\xd0\xca\xb6\x03\x1c\x1c\xb7\xab\x72\x2f\xfb\x87\x6d\x46\x9f\x7d\xf1\xb0\x11\xf4\x9f\x6c\x5d\xe4\x04\xd9\xae\xca\xa2\xfa\xc0\xe5\xc9\x67\x8d\xee\x7c\xf6\xf0\x7a\x47\x7c\x21\x0b\x3a\xfc\xbd\x39\x45\xeb\xe0\x01\x80\xaa\x06\x59\xf4\xd2\xe9\x21\x4a\xe7\xad\x70\xda\x4f\x64\x44\xe2\xb8\x25\xb9\x0e\x22\xa9\xae\x19\xca\x01\x62\x00\xa9\x8c\x83\xe2\x2d\x64\x0e\x17\x89\xdd\x16\x41\x01\x89\xc1\xf7\xfa\xa7\x64\x2f\x8d\x66\xeb\x93\x2a\x67\xbd\x5e\x34\x74\x9e\xf9\x86\x27\xdc\xe3\x58\x8c\x1a\x60\x09\xe3\x19\xbd\xd1\xd3\x11\x2a\x22\x8e\x92\x19\xf8\x82\xf5\xa9\xe6\xdc\x42\xa8\xa5\x9a\xff\xe7\x13\x25\x82\x4b\xff\x73\xaf\xc7\x0d\x10\xd0\xe8\x65\x2f\xd0\xa6\xe6\x03\x1f\xa5\x44\x88\x0d\xfd\x4f\x99\x28\x7f\xa6\x42\xf3\x1a\x60\x65\x63\x30\x29\x84\x88\xb1\xf2\x7d\x20\xe3\x99\xa1\x84\xde\xeb\x91\xc1\x71\xb6\xc9\xf5\x9d\x6f\xc4\xa0\xfc\xc9\x6a\x03\xe6\x85\x93\xd5\x86\x58\xb0\xb5\x00\xe3\xad\xa3\x2b\xbb\x58\x52\xc7\x9f\xf2\xb2\x05\x8a\xdd\xc0\xe7\xf1\xd1\x8b\x6a\x39\x90\x8d\x97\xf4\xe7\x32\x29\x1c\x22\x35\xa1\xf0\x13\xa4\x9d\xfa\x8e\x6e\xb9\xd5\x9f\x74\x6b\x78\x4b\xc9\x27\x80\x11\x93\x2d\x5a\xec\xbb\xa9\xff\xce\xbd\xd6\x0c\xc7\x4e\xae\x36\x23\xa9\xbb\x99\x7a\xed\x99\x84\xdb\xe1\x43\x65\x05\x9d\x32\xa8\xe2\x85\x6c\xc2\x06\xde\xad\xb2\x6a\xc5\x4b\x04\x73\x02\xb1\x3c\x8e\x3b\x55\x22\xd5\x83\x18\x3a\x0e\xb6\x92\x76\x35\xc1\x0f\x8a\x79\xbb\x5e\x18\x4c\x91\x6c\x38\x3d\x1e\x9d\x8d\x16\x58\x42\x18\xec\x13\x7f\xa2\x58\x25\x2c\x65\x0f\x5f\x5d\x39\x60\x38\x52\xb0\xfb\xb6\xc1\x4a\x60\xa0\x24\xf0\xd2\x99\x04\x66\x5b\x46\x9a\x3e\x1d\xe2\x1d\x06\x62\xb0\x81\xac\xd0\x7b\xde\x50\x28\x70\xe8\x8b\x86\x1e\x11\xbc\xbe\xea\xa1\xd9\x82\x7d\x23\xc0\x13\xb4\x53\x80\x6b\x68\x42\x2b\xd7\x9d\xb9\x3e\xcc\x52\x7c\xbb\xa8\xdc\x20\x55\x6e\x90\xaa\xc6\x20\x55\xa6\x0d\xc1\xa9\xf6\x2c\xbc\x20\x03\x5a\xc2\x1d\xfa\x8a\xb3\x20\x48\x76\x9b\x7c\x85\x7e\xc3\xe8\x33\x49\x4c\x8e\x81\xc9\xd1\x77\x0f\x35\xb9\x8e\xc0\x7f\x20\x89\x6a\x74\x05\x79\x8f\x6d\x1c\xeb\xb8\x6e\x4f\x09\x4a\x6b\x5f\xb8\x13\xdd\xe9\xcb\x3e\x41\x21\x56\x9b\x4f\xc0\x48\x6b\xa7\xc1\x27\x85\xe2\xd2\xaa\x61\x38\x15\xae\xa4\xed\x97\x60\x02\xfe\x82\xf2\xd7\xbb\xac\xaa\x3b\xd8\xd6\x41\x9c\x7f\x4a\x50\x9e\x1d\x0a\xe2\x17\x6a\x89\x3f\xe5\x60\x28\xdd\x91\x7e\x38\x54\x71\x6c\xde\xc0\x2a\x2a\x75\x97\xd0\xe8\xcd\x9b\x0b\x4a\x7c\xf7\x19\x56\xbd\x06\x24\x05\x5b\xe0\xcc\x2a\x78\x89\x3a\x2e\xa9\x60\xd3\x73\x71\x51\xf9\xf6\x78\xd3\xde\x8c\x55\x0b\xb1\x84\x07\x5e\x84\xa5\x24\x14\x5f\x61\x8b\x9e\x57\xd7\xc2\x3c\xb1\x0e\x35\x49\x2c\xf5\x6a\xa9\x2d\xc1\x04\x1f\x2b\xc6\x79\x11\xd8\xaa\x5f\x4e\x89\x7d\x64\x5d\xec\xe9\x6c\x49\xd7\x2c\x4c\x81\x66\xee\x39\xf3\x05\x29\x41\xce\x93\xb5\x2e\x69\x98\x4d\x8a\x6a\x55\xee\xeb\xe2\x86\x1b\x88\x86\xb5\x3e\x97\xb0\xf3\xd8\xb7\xd2\xad\x5a\x2c\xeb\x48\x68\x92\x5f\xb6\x32\xff\x82\x46\x0e\xc3\xbc\x9d\xbb\x86\x95\x2e\x52\x5d\xf5\x91\xd0\x02\x9e\xe8\x56\xd6\x3a\xb4\xa0\x2b\x42\xf7\x23\xe6\xdd\x96\x1e\xbd\x74\xc4\x9d\x12\x78\x22\x80\xb2\x7c\xcf\x33\xe8\x78\x76\x5e\x5c\xb2\xe9\xf9\x78\x5c\x90\xa7\x7a\x3d\x9a\xcd\xb6\x28\x96\x7e\xbf\xe9\x1f\x76\xcb\x15\xf3\x45\x14\x2d\xad\x5f\x73\xa3\x1d\xf4\xd4\xdc\x17\xfd\xc6\x7b\xea\x4f\xac\xd9\xb0\x09\x8f\x79\x38\x44\x91\x0d\x02\xaf\x37\xa8\x92\x16\xb6\xd6\x2e\x43\x73\x72\x0c\x9e\x17\x46\x1c\xa3\x37\xd3\x3c\xf0\x39\x58\xe4\xe9\x8b\xec\x05\xa1\x6f\xad\xbc\xe6\x03\xf2\x0f\x56\x8c\xb5\x58\x0e\xde\x17\x4d\xfd\x13\xa0\xf5\xee\xf5\xb6\xa2\xdc\xaa\xb0\xe8\x15\xfc\x9d\xa6\x4c\xe6\xb7\x3e\x53\x2a\x0b\x88\x67\xd3\xb8\xaa\xe0\x0e\x60\x6b\x3b\x36\xa4\x72\x7f\x86\x44\x07\x68\xcd\xe1\x30\x3c\x49\x4a\x1a\x86\xad\xbe\x72\x81\x87\x1f\xcd\x58\xb4\xaf\x72\xa1\x2f\xfa\xf3\x62\x92\x8b\x8a\xa7\xc5\x44\x87\x54\x9c\xd6\x8d\x38\x0c\x4c\x31\x91\xd9\x1d\x99\x77\xe7\x55\xb1\x6c\xb1\x5f\x52\x39\x1f\x56\xe6\x44\x3d\x1c\xaa\x09\xba\x34\x49\xd0\x6d\x4d\x6a\x63\xc8\xf9\x7e\x34\x22\xe7\x68\xfc\x64\xcb\xc0\x96\x16\xa0\x0f\x63\xd4\x7c\x8a\x1e\xb5\x9f\x73\x5d\x13\xba\xa1\x22\xa6\x38\x34\x6d\xfa\xa9\x48\x2a\x5a\xc3\x01\x33\x6c\x55\x4c\x02\x17\x64\x67\x3f\x80\x93\x0b\x7a\x07\x8c\xe9\x2f\x3c\x17\xa0\xeb\x36\x10\xac\x3a\xe2\xf6\x5e\x2c\x07\x3f\x15\x89\xd0\x65\x19\xc0\xc2\x3b\x63\x7e\x94\x96\xf4\x9a\x57\xc6\x7d\x6b\x5a\x4c\xfc\x0f\xd8\x3d\xfe\x27\xab\x82\x1f\x87\xc3\x68\x54\x4c\xb6\xd9\xa7\x1f\x5c\x90\x41\x49\xfe\x0f\x48\x3b\x90\xb7\x3d\xab\xac\x45\x94\xdf\x67\x7b\xdc\x67\x7b\xab\xf8\xeb\x92\x18\x6a\xb5\xb6\x47\xa8\xa2\xab\x38\x1e\xc2\xe9\xb0\xd6\xac\x6c\x38\x3a\x89\x9d\x0d\x36\x25\x83\x12\x7b\xff\xbd\x5e\xe1\x6b\xb3\xe6\x73\xb6\x9f\xc3\xb6\x59\x93\xf4\x46\x24\x19\x19\xbc\xc5\x82\x72\xfa\x4b\x85\xe9\xe8\x70\x8f\xae\x6e\x8d\xc3\xdb\x96\x0e\xa1\xf1\x19\xe2\xb6\xff\x3f\x65\xb2\x26\x47\xab\xd2\xda\xb7\xa3\xd0\xe7\x89\xd9\x51\x9b\x7b\x76\xd4\x9a\xd0\xcd\x89\x1d\xb5\xc6\x1d\x65\xdb\x08\x3b\x2a\xd8\x53\xdf\x79\x7a\x32\xb5\xcf\x8c\x68\xfa\xc7\x14\xb2\x77\xcc\x68\xe3\x5e\x89\x24\x64\x1b\x9b\xc7\x62\xe0\x42\x06\x75\x19\x79\xe8\x92\x64\xe4\x1d\x55\x5a\x4e\x96\x7b\x17\x26\x10\x6b\xdc\x95\xa0\x2c\xb6\xcd\x56\x02\x79\x22\xe0\x13\xdd\x00\xbc\x59\xc3\x4d\xf8\x3b\x56\x00\x52\x1c\xd8\x4f\x7a\xc7\xbe\x00\x57\xe2\x4c\x11\xab\x0b\x8b\x73\x07\xdc\xb0\x32\xe5\x55\xf6\xb2\x13\x85\xe4\xe6\xad\x6c\xb8\x1e\xc0\x89\xbd\x87\xc5\x79\x6b\x59\x1c\x8a\x4a\xc4\x8e\xa1\xbf\x30\xed\x24\x38\xd8\xcd\x4b\xcc\xa9\x7b\x42\x60\xfb\x93\x04\xe1\x97\xa1\x9a\xae\x55\x8d\xf0\x48\x7f\xb6\x26\xa7\x43\xd6\xaa\xcb\x8d\x58\x50\xd3\x00\x9a\x55\x10\xaa\x8c\x36\x0b\xde\xba\x10\x53\x1b\xb4\x59\x40\x13\xd5\x34\x72\x54\x50\x77\x23\x81\x83\x6b\x71\x63\x21\x90\xc9\xb2\xcd\x56\x1f\x1d\xf6\x88\x6f\xf4\xc0\x15\x75\x09\xb8\x6b\xa6\x52\xcf\xab\x6f\x78\x22\x00\x66\xa0\x05\xc0\x6d\xeb\x73\x27\x5c\xb7\x3a\x42\x95\xd1\x81\x00\x97\x80\xcd\xa3\x9a\x22\xea\x82\x39\xfb\x70\x51\x75\x6c\x9d\x6e\x3c\x02\x79\x68\x2f\x0d\x3a\x78\x50\x54\x06\x17\x35\x5a\xb3\xe1\x8c\xee\x8d\x59\xfa\x69\x70\xf6\x3d\x7b\x54\x24\x7f\x56\x09\xe2\x89\x5b\xf7\xa2\xb4\x42\x4e\x73\x6f\xcc\xcd\xfb\x98\x4c\xc6\x0a\x0b\xf9\xe6\x10\xbf\x19\x98\x3e\x1c\x09\x21\x83\xaa\xa9\xa9\x13\xf6\x13\x0c\x8e\xa4\x48\x38\x19\x6c\x74\xb5\x7a\x45\xbe\x02\xb1\xfc\xc9\x66\xba\xf6\x88\x9e\x9b\x2c\xed\x41\xf9\xfc\x09\x80\x47\x2e\x5d\x13\x9f\xd9\xd3\xd0\x85\x30\x4e\x5b\xb1\x4c\xf9\x90\x00\x43\xa1\x46\x79\x06\x88\x87\x2c\xea\x49\x13\x2b\x13\x00\x94\x06\x70\x4f\xa9\x54\xc1\xa5\x7f\x4e\xf5\x61\x76\x70\x51\x07\xe4\x2f\x53\x83\x10\x51\xb6\xb6\x40\x82\x03\x3e\x16\xf6\x32\x3e\x50\x93\xf5\xbe\x2c\xe7\x1c\xc0\x16\x30\x78\x68\xb4\x1d\x0f\x87\x2e\x8b\x95\x3b\x44\x7d\x02\x79\x4c\xbd\x7e\x22\x4b\x92\xaa\x20\x3c\x32\x8e\x4c\xc3\x73\xcf\x02\xd0\x10\xba\x6e\x84\x20\x66\xce\xfa\x70\x58\x59\x13\x13\xdc\x1a\xc0\xaa\x66\x8d\xeb\xab\x59\xe4\xa9\x5b\xee\x9d\xad\x30\x58\xdb\x77\x9c\x95\xbb\x28\xe6\x44\x9f\x80\x6e\x90\x3d\xf6\x0d\x08\x99\xda\x81\xc1\x85\x23\x27\xc7\xfb\xa4\x7f\xa0\x95\x8c\x44\x50\xd1\x8a\xa4\x9b\xc2\x3c\x3e\xd1\x77\x70\xd1\xa5\xb5\x08\x09\xeb\x8f\x32\xb4\x59\xd2\x0c\x34\xdc\x6f\x24\xa1\x3b\x0e\x57\x9e\x8b\xa9\x53\xec\x1b\x54\x4c\x52\xc9\xc4\xb1\xef\x15\x16\x94\x44\x02\xed\x3a\xbd\xab\x9f\x79\x66\x5b\x02\x93\x6d\xc6\xcd\x0e\x50\x71\x0c\x44\x08\xbf\xca\xfb\xad\xa7\x1e\x37\xdd\x24\x00\xf4\xbf\xb4\xe8\x23\xb5\x05\x5e\xb6\xca\x03\x76\x08\xdd\xdb\xf7\xbc\x13\x92\xf6\x69\x9d\xd3\x3d\xdb\x80\x2a\x5d\xc9\xee\x8e\x83\x62\x2c\x2f\xf7\x00\x6f\x25\x47\x7b\xbb\x70\x42\xbd\x81\x51\xa9\x12\x50\x57\x95\x17\x19\xcd\x59\x71\xb9\x1a\x03\xe8\xbd\xbc\xa8\x49\x19\x68\x4f\xad\xe7\xd3\x54\xba\x53\xa4\xb8\xac\xed\x45\x6e\x13\x98\x83\xd0\x24\x9f\xaf\xd2\x82\x8c\xf7\x64\xb0\x19\x32\xbd\x07\xc3\x32\x36\x28\xb0\xdb\xdd\xdf\x55\xf0\xa4\xd5\x0d\xea\x76\x16\x14\x14\xb6\x2c\xd7\xbd\xd5\x87\x91\x25\x47\xeb\xe2\x13\xcf\x7f\x80\x23\x78\x2e\x9c\x6a\x6f\x80\xfa\x9b\x4e\x09\xbd\x61\xd5\x58\x5d\x6e\x9d\x5b\x5d\xe0\xbd\xd5\x68\x4b\xa8\xba\x98\x4d\xe7\x65\xa8\x0d\x35\x4d\xd5\xc5\xae\x19\x14\x28\x66\xa8\x71\x72\x33\x9f\xa6\xb3\x29\x21\x69\x75\xb9\x1d\xed\xc6\xdf\x04\xfd\x46\x98\xbd\x91\x4d\x32\xde\x12\x1a\x58\x15\xff\xcb\x5d\x42\x9c\x42\x93\x51\x34\x3a\x1c\x7e\xd0\x44\xc4\x20\xc7\xa9\x60\xa3\x05\xe5\x7a\x07\x91\xdd\xf1\x6b\x29\xa6\x75\xd3\x90\x91\xb2\xc5\xcb\x4e\xf1\x7a\xba\x7a\x4b\xc7\x85\xd8\x50\x63\x49\x3b\x29\xc8\x28\xf4\xf9\xf2\x1b\x48\xcf\xa1\x3b\xa1\xa7\x7f\x54\x17\x4c\x08\x95\x4c\xd1\x8a\xa9\xfb\x9c\x92\xa8\xc9\x6a\x33\xf7\x46\x2d\xfa\xe7\x78\x46\x52\x9d\xaf\x19\x0a\x16\x63\xed\xf6\xbc\x12\x35\x6b\x6c\x62\xc4\xba\x4b\x7d\x85\xf8\x28\x82\xaa\x6d\xcf\x21\x92\x5a\xe4\xbb\x74\x38\x0d\xa8\xcd\x0f\xb2\x8b\x94\x1e\x54\x83\x58\xe9\x77\x7d\x0d\x70\xa6\xf8\x92\xa1\x6f\x16\x23\xb5\xa8\xec\x4f\xcd\x54\x14\x2d\x28\x44\xf4\x9f\x44\xab\x36\x14\x22\xf8\x4e\x02\x1f\x83\x3b\x32\x56\x06\xbb\x2f\xb4\xb3\x02\xd5\x74\x6a\xc0\xf9\x1b\x16\x58\x06\x13\xb1\x72\x98\x88\xaa\x07\xfa\xcf\x99\x8b\xc2\x1e\x2b\x82\x99\x0d\xc6\xe2\x5d\x0f\x22\x08\x5a\x88\x86\xca\x72\x51\x96\xe7\x11\xa1\x51\xbd\xcd\xa4\x71\x57\x97\x88\xc9\x56\xe4\x1c\x60\x6f\x2a\x35\x2f\x58\x8d\xd8\x65\xa9\x64\xd1\x4e\xf2\x9b\xc8\xdb\x0c\xb4\x4d\xdb\x6a\xf6\x44\x5f\x2a\x15\xa1\x7b\xb6\x16\x09\x8a\x3a\xf1\x52\x92\x91\x41\x8d\x77\xf7\x47\x6b\xc5\x75\x35\xe1\x4f\xa3\x9e\x75\x63\xfc\x76\x63\xc6\xc9\x16\x34\x65\x1f\xfc\xe3\x8f\xfa\xeb\x07\x64\x31\x45\x18\x99\xc3\xe1\xc1\x1f\xaf\xcd\x23\x31\xa6\x23\xe6\x35\x3f\xe8\x42\x52\xb2\x46\x2f\x92\x82\x9a\x32\xd1\xee\x69\xe5\xf8\x4c\x5b\x04\x63\x99\x38\x1c\xca\x4b\x78\x6a\x01\xa1\x83\x95\xb8\x0d\x6c\xbf\x8f\x47\xe3\x78\x7d\x4a\x25\x8b\x2a\xa1\xa2\x01\x46\x30\x26\xe7\x25\x53\x97\x02\x39\xe9\x39\x1a\xf0\x09\xaa\xc6\x33\xd2\x18\x82\x74\x9a\xc2\x80\x63\x86\xfd\xc8\x8f\x20\x36\xf3\x6d\x55\xa8\x34\xaa\xf7\x57\x4a\x66\x60\x4f\x08\xc9\xc6\xfd\xc9\x2a\x80\xac\xf2\x87\xa4\x04\x7f\xe3\xfb\x91\xd4\x87\x4b\x40\x01\x4b\x6b\xb7\x15\x45\x34\x67\xc6\xb5\x6a\xb3\xc0\xdf\x0a\xb5\x79\x93\x5d\x79\x09\xe7\x26\x34\x32\x29\x1f\x64\xe4\x7c\x73\x3e\x1e\x6f\x48\x3e\x62\x19\x5d\x8f\x58\xf4\x07\xba\x39\xcc\x2f\xca\x38\x4e\xd6\x23\xb6\x15\x49\x39\xce\x09\xa1\xeb\x21\x5b\x59\x26\xf6\x47\x99\x08\xba\x06\xe3\x36\xe3\xa7\x5b\x51\x3f\xf2\xde\x21\x73\x67\x25\xd0\xe1\x14\xee\x78\x1b\x36\x3d\xdf\x5c\x88\x9e\x07\x8e\x8d\x7d\xe0\xd8\xb1\x30\x7a\xb1\x41\xb7\x9f\x0d\xa7\x99\x71\xbc\xb3\x77\x4e\xa7\xf3\x4d\xee\x7e\xd5\x57\x8f\x0d\x35\xd7\xd8\x9c\xb5\x5a\x97\x13\x62\x5d\x2c\x06\x80\x80\x1d\x95\x26\xa5\x6f\x0b\x56\xef\xa6\x3d\x23\x6a\x2e\x00\x4c\x83\xbe\x30\x0f\x03\x29\xb8\xf1\x71\xf0\x67\x05\xca\xe6\x93\x2a\x11\xb4\x20\x56\x9e\x60\x6f\xaa\x05\x78\x34\x0a\x28\xf5\x57\x9d\x37\x20\xf7\x12\x6b\x2f\xea\x15\x5b\x2c\x29\xa2\xbc\x3a\x10\x21\x00\x7b\xb5\x79\x04\x53\x89\x5c\x14\x4b\x72\xee\xed\x3e\x76\x3c\x11\x78\xa7\xb8\x11\x49\x45\xcc\xe3\xd7\xb9\x83\x84\x43\x41\x94\x79\x1d\xcb\x30\xa5\x70\xaf\x67\x77\xf8\xc9\x30\xc2\x8e\x99\x11\xfa\x09\x72\xfc\xb9\x6d\x93\xe7\xa5\xe8\x81\x00\x55\x5d\xb2\xe9\xb9\x1a\x8f\xc9\x8f\xd2\x30\xdd\x51\x44\xab\x85\x32\x12\x54\xf8\x52\x82\x46\xa3\x9c\x97\x5c\x69\xf6\x19\xce\xad\x63\xf8\x2c\xfa\xb7\x1e\x0e\xcf\x1c\x3e\x80\x8f\xb2\xa1\x35\x93\x14\xf1\x4d\xa8\x68\xb8\x3a\xb2\xca\xc0\xb4\x66\x49\x31\x2f\xb3\x74\x95\x11\x7d\x65\xa3\xd2\xba\x6e\xc2\x19\xab\xf1\x16\x0e\x3c\xac\x18\x49\x62\x2f\xe1\x87\x43\x75\xc9\xb8\x03\x52\xaa\x8b\x3f\xf9\xe1\x90\x08\x56\xd1\xa1\x01\x54\xa1\x15\x21\x81\x02\x61\xc6\x8a\x79\x22\x2f\xa6\xf3\x2a\x4b\xa5\xae\x8b\xa4\xfa\xd7\x3e\xbc\x81\xa4\x53\x24\x38\x19\xab\x07\x0e\x93\x46\x53\xba\xd5\x26\x93\x60\x6c\x5a\x86\x7e\xf3\x56\xa2\xdc\x6f\x2b\x13\x0e\x90\x05\x36\xe6\xa3\x90\xb9\x71\x38\x78\x2d\xc5\x7e\x07\x69\xec\x34\xac\x70\xc7\xad\x99\x8f\xa3\x39\x0b\x44\x5b\xd7\x5c\xfd\xc8\xcb\x1d\x97\x89\xa2\x50\x14\xb8\x9d\x8c\x08\xdd\xb0\xe1\xf4\x7c\xa8\x7b\x41\x0e\x87\x32\x19\x6e\xc8\xf9\x46\x5f\xf0\xcc\xbe\xdc\x37\x7c\x25\x65\xe4\x70\x88\xfe\xa8\x22\xba\x65\x8f\x44\xb2\xa3\x39\x99\x47\x1f\xa3\x74\x1d\xc7\x3a\x94\xb1\xdd\x3c\xaa\xa2\x74\xb8\xd6\xe4\xbd\x36\xe4\x7d\x47\x70\x83\x44\x3b\x20\x36\x3a\x72\x73\x38\x6c\x0f\x87\x64\xcb\x22\xdd\x82\x55\x1c\xaf\x86\x6c\x4b\xee\x2c\xbb\x3e\xa3\x65\xe2\x36\x6e\xb1\x4e\xb6\x71\x9c\xac\xd8\x96\x50\x79\x39\x8d\xe3\x21\x34\xd2\x60\xf3\xea\x46\xde\xb0\xbf\x72\x74\x6d\x25\x68\x46\xa8\xa2\x75\xa0\x8e\x76\x06\xce\x83\x6f\xc8\xe1\x90\xdc\x4c\x36\x85\x7a\x6d\xdd\x99\xdd\x04\x48\x96\xa7\x0e\x59\x58\x71\xa5\x01\x2b\x76\x1e\x1f\xad\xcb\xb0\x50\x47\xb8\xd7\x2b\x97\x81\xcf\xfe\xcf\x31\x73\x07\xc6\xe7\xe2\x48\x7e\x9d\xd4\x63\x58\x69\xb3\xc9\xb7\xe9\xe4\x5b\xf2\x75\xe3\xa2\x83\x86\xb7\xce\xef\x25\xde\x45\x2e\xa7\x73\x87\xde\xfb\x4d\x8a\x70\xb9\xdf\x78\x97\x5a\x68\x0d\xf5\xdc\xb8\x3d\x33\x8e\xcd\xac\xc3\x37\x1c\x5d\xbc\xa3\x4c\xe7\xc5\x05\x9b\xa6\xc5\x25\x13\x16\x05\xfe\x6e\x1f\x0c\xa5\x9d\xa7\x11\xfb\xf6\x6b\x87\x78\xb5\x3f\xbe\x0c\x9d\x2f\xaf\x44\x55\x2b\xb9\x5f\x29\x21\xd3\x97\xc6\xed\x4e\x40\x4c\x5a\x68\x38\xc6\x97\x7a\x9f\xdd\x0d\xad\xb9\x7a\x09\xa7\x5e\xcb\xd5\xf4\x8d\xf7\xfb\x6d\x4e\x45\x5a\x31\xb9\xe0\xcb\x81\xfe\x0f\xce\x8f\x48\xb3\x12\xd1\x90\xe9\x4d\x0d\x81\x8a\xfe\x5d\x4e\x36\x59\xfd\xf2\x63\xf5\x4a\x8a\x1d\x97\xea\x16\xcc\xc7\x8c\xf7\x78\xfa\x77\x9d\x0a\xbd\xc7\xc3\xe5\x98\x1c\xe9\x75\x4f\xf5\x4d\x47\xcf\xa6\xf6\x05\x5f\x42\xea\xc7\x62\x75\xca\x25\x74\x2e\x56\x47\x9a\xe5\xf9\xcf\xa0\x03\xda\x76\x9d\x0d\x80\xa2\x0d\x5d\x54\x35\x8f\x34\x39\x8e\xd2\x68\x5f\x81\x5e\x49\xb4\x4c\x6e\x2a\xd0\xa2\x31\xe2\x85\x4e\x49\x21\x9d\xee\x96\xd8\xf6\x6a\x33\x1a\x49\x70\xc1\xba\x90\x4b\xa6\x47\x09\x5c\x09\x55\xd9\x96\x33\xc6\x03\xa3\x32\x78\x79\x4b\x24\x9d\x11\x3a\x9c\x42\x0f\x5e\xde\x70\x59\x66\xb7\xe9\xdf\x42\xc5\x98\x60\x5a\xf8\x44\x89\x0f\xbc\x9a\xf3\xf4\xa5\x26\x44\xcf\x45\x6e\xbc\x68\xdb\xa9\x42\xd5\x31\x89\x8e\x07\x5e\xeb\x36\x12\xb5\x91\xe2\x23\xc8\xa7\x9f\x48\x29\x64\x12\x99\x4a\xea\xb3\x6d\x76\x7b\x56\x09\x75\x76\xc5\xcf\xa0\x3b\xeb\x7d\x39\x89\xc8\x20\xe8\x9f\x30\x49\xcd\x9b\x88\x9e\xf7\x54\x52\xfd\xe7\xf5\x8e\xaf\x52\x4e\xc5\x2e\xfb\xd7\x9e\xa7\x0a\x3d\xa5\xe8\xef\xa3\xc5\x70\x85\x02\x74\xd2\x1f\x78\x35\x1a\x51\x4d\x30\x01\xf9\x96\x10\x33\xc8\xfd\x9d\x3d\x31\xd2\xb6\x25\x7d\x43\x6d\xfd\x9d\xeb\x51\xb6\x6d\x83\x43\x0a\x06\xbf\x23\x3e\xe1\x71\x5c\xdd\x3f\x1b\xbd\x1d\x80\x97\x24\xd7\x0b\xdd\x0d\xe4\x16\xc1\x67\x56\x7b\xc2\xf4\x2d\xd9\x56\x3c\x0c\xe4\x36\x96\x29\x1a\x36\x65\x39\xe6\x42\x3d\x0f\xe7\x72\x02\x1c\xfc\x4f\x78\xed\x30\xec\x7c\x8a\x1c\x76\xaa\xe6\xc0\x38\x07\xcc\x31\xa1\x4f\xb9\x53\x7c\x04\xbb\xd9\x77\xd2\xa8\x3b\x42\x6b\x7c\x7b\x9d\x2e\xea\xe7\x06\xbe\xc5\x4c\x49\x06\x0a\x3c\xf7\x03\xf9\xad\x93\xc2\xb9\xb7\x2f\x3c\xdb\x79\xa9\xb9\x71\xdb\xa0\x20\xdc\xd8\xe9\x4a\x16\x86\x55\xac\x59\xbf\x7b\x0d\x89\xe3\xdf\xcc\xf0\x1b\x8b\x4e\x64\x6a\x0a\x0b\xfe\x90\xb1\x02\x21\x1e\xea\xc0\x11\x8c\x15\x8f\x0e\x02\xe1\x29\x22\x1a\x7b\xcc\x0f\x23\x1a\x4d\x32\x7d\x73\x9f\xa6\x33\x42\x46\xb3\xc0\x34\xbb\x3e\xdf\x5f\x48\xd0\x06\xb0\x5d\xd8\x53\xee\xa4\xac\xdd\xa1\x1a\x4c\x19\x60\x79\x02\xc8\xa0\x83\x89\xb3\xfc\x65\xb9\xa8\x96\xa6\xc5\x93\xd5\x46\x1f\xc4\xbf\x06\x33\x57\x59\x16\x5c\x50\x48\x08\x8e\xf9\x51\x8a\xa8\xa7\xf0\x9a\xab\x37\x9a\x02\x3c\x52\x69\x9f\x76\xdb\xd9\x5f\x2b\x37\xe9\x48\x64\x75\x0f\x21\x47\x7d\x7f\x86\x0d\x4f\x38\x31\xca\xa0\xae\x96\x37\xb7\x3b\xde\xa8\x89\xdc\x71\xb0\xf7\xf5\xeb\x0c\x85\x24\x54\x32\x55\x60\x41\x4f\x8a\x20\xda\xba\xfa\xad\xd8\x94\x16\x2c\x91\x1e\x80\xf2\xc1\x43\xe0\x0d\xd0\x9f\xac\x1e\x2f\xa2\x98\x5c\x3c\x5c\x22\x9b\x16\x9e\xad\x19\xab\x46\xc5\xe5\x25\xf8\x2e\x4d\xb2\xb9\x5c\x3c\xfc\x3a\x1b\xcf\x96\xe9\x94\x5c\x32\x41\x0a\x96\x39\xeb\xde\x61\x02\x91\xa3\xd9\xf2\x42\x10\x72\x07\x05\x7e\x9d\x8d\x1e\x2e\xcd\xc9\x5a\xb1\x6c\x34\xc3\x87\x99\x5a\x6f\x36\x84\xb2\x7d\xb9\x06\x48\x42\x43\x60\xce\x22\x92\x8e\x67\x96\xe7\xa9\x2f\xa6\x73\x95\x4e\x19\xab\x91\xf5\x52\x0e\x54\xa5\x1e\xcf\x70\xa0\x34\x0d\x6e\x8d\x51\x6b\x0f\x69\x12\xe2\xed\x45\x80\x7b\xd1\x99\xe6\x2f\xfd\x77\x62\x90\xb5\xfd\xf4\x26\x9c\x20\x05\x22\x90\x3f\x55\x50\x19\x72\x9e\xfd\x33\x69\x0b\xc0\x34\xe8\xbb\x78\x31\x5d\x06\xf9\xda\x4b\xc0\x6a\xce\x01\xcb\x52\x57\xed\x13\xdc\x19\xa1\x9c\x49\xa3\xfb\x50\xeb\x8b\x07\x2d\x98\xad\x0a\xfb\x6e\xf4\x95\x3b\x74\xb6\x58\xa8\x25\xa9\x16\xfa\xcf\x32\x8e\xad\xa2\x1d\xfe\xf6\xec\x38\xa4\xf2\xf7\xb1\xe9\xb9\xb8\xd0\x41\x96\xc2\x08\x4b\x61\x32\x86\x59\x17\x62\xb9\x1c\x64\xae\xbc\xcc\xa2\x2e\x4f\x36\xd0\x47\x44\xc0\xac\x16\xe1\xef\xe5\xdc\x57\x1e\x06\x93\x54\x07\xe8\x93\xa0\xd1\x3e\x0c\x41\x06\xcf\xea\x0f\xbd\xbf\x2e\xc5\x55\x56\x76\x5a\x55\x33\x17\xb7\x10\xcb\x41\x3d\xd9\x49\x9e\x27\x05\xcc\x26\x89\x63\x83\xdb\x2b\x69\x3d\xb9\xc9\x4a\xe2\x6a\xc1\x9f\x1e\xd5\x54\xcf\xd1\x6b\x77\xe9\x3f\xcd\x91\xe5\x62\xe5\x96\xa6\xe1\xad\x12\xce\x5e\x80\x7a\x24\xca\x3f\xe7\xd2\x5c\xbb\xa4\x71\xe8\x9b\x72\x4d\xcd\x80\x1c\xa0\xe0\xf0\x7b\x21\x64\xde\xbf\x14\x3a\x64\x17\x20\xcd\x6c\x8d\x6f\x4c\x8d\xbe\x26\x4d\xb3\xd3\x48\x5c\xfd\x13\xe1\x9e\xec\xf9\x3a\x6f\x92\x88\x14\x1a\x05\x04\x2f\x95\x48\xa0\xd5\xe1\x80\xb7\x00\xdd\x2a\x50\x33\xef\x69\x93\xa9\xf6\x17\x53\x6d\xb3\xd0\x66\x11\x90\x5d\x5f\xc4\xfa\x8b\x78\xee\xc7\xea\x95\x72\x04\xd2\x15\x80\xd8\x9a\x94\x83\x84\xf2\x08\x08\xb7\x8f\xac\xa3\xce\xde\xf2\x7c\x31\xe8\xdb\x8d\x82\xab\x8b\xe9\x31\x28\x13\x64\x9e\x1f\x42\x5a\x38\x6a\x70\xe3\x81\x4b\xe7\x23\xc5\xdb\xc0\x23\x64\x25\x7a\x26\x06\x9c\x7a\xc3\x1e\x6b\xcb\x54\xb8\x3b\x7e\xed\xd4\xe1\xec\xfb\x99\x44\xbf\xcf\xfc\xa2\x99\x60\xce\x5b\x39\x52\x7e\x09\xb6\x63\xac\x40\x7f\xe4\x54\xb2\x06\x25\x37\xdb\x4c\x32\x47\xca\x3e\x98\x21\x90\x38\x08\xd3\x13\x83\x30\x4a\xaa\xb9\xab\x0a\x3b\x3a\x7e\x55\x24\x92\xa4\xfa\xa4\xc9\xf9\x3a\xdb\x97\xca\x23\xe9\xf6\xf0\xf8\x8f\x55\x12\x0e\x9d\xcf\xe5\x10\x79\x7b\x32\xbd\xe8\x64\xaa\xb9\xc2\x77\x16\x74\xf4\xd1\xcb\xb2\x99\xcc\x3f\xcb\xa0\xe7\x4e\x43\xa2\xfb\x1a\x5c\x31\x6e\x9e\x6c\x8c\xf3\x10\x78\x4d\x6c\x84\xb0\xbb\xa3\xf7\x86\xbe\x50\x4b\x26\xe9\x50\xc6\xf1\x07\x91\x54\x68\xea\xd8\x4c\x6d\x30\xc5\xa7\x47\x54\x07\x01\x85\x25\x6c\x75\x87\x5b\xbb\x69\xc1\xbb\x6a\xe6\x81\x99\xdd\x3f\x90\xf8\xac\xed\x33\xe8\xce\x35\xeb\xd2\xc4\xa8\x11\xb0\xd0\x64\x30\xe9\x06\x1a\x2c\x63\x99\xa8\x50\x5d\x84\x7e\x10\xed\xb4\xa4\x9b\xdd\x40\xb7\xd3\xd1\xa8\x32\x5d\xd2\xbb\xeb\xa7\x6a\x2d\xd2\xd6\xb3\x7f\xdf\xd2\xd6\xe7\x52\x93\xad\xed\x60\x05\x2b\xc6\x51\x2f\x93\xb7\xd6\x6b\x23\xe9\xd1\xb2\x08\x48\xbb\x12\xc5\x1e\x01\x50\x6c\x23\x8d\xf5\x05\xaf\x37\xa1\xa2\x68\xef\x97\x72\x7c\x44\xe5\x06\xe6\x2d\xec\x5b\xda\x9a\x3c\x48\xf9\x7d\x99\xd5\xb5\x49\x0e\xdf\xf4\xea\xda\x86\x99\x2f\xfa\x51\x66\x3b\x1b\xe6\xbe\xe9\xc7\x22\xbf\xe6\x0a\xc2\xf0\xeb\x08\xc7\xc2\xaf\x05\xff\xb8\x13\xb2\x67\x63\x18\xed\x91\x36\x55\x79\x6a\x15\xbf\xdb\x11\x6f\xc4\x11\x2e\x99\xbf\x41\xf1\xa7\x51\x34\x69\x46\x01\x2b\x93\xae\xe8\x9a\x85\xa5\xd0\x9c\x25\x9c\xbd\xe9\xa5\xc7\x84\xd8\xc7\x9a\x0d\xe3\x4e\xd4\xa3\x8c\x33\x41\xeb\x7f\x88\x45\xd6\xff\x10\xf8\x0c\xbd\x1f\x9d\x9a\x22\x88\x74\xaf\x18\xa3\xe6\xea\x6d\xc5\xf3\x42\x65\x57\x25\x07\x87\xe9\xc6\x33\x53\xe8\x3e\x48\x11\x1a\x81\xe1\x18\x63\x15\xc9\xe1\xf2\xbc\xf3\x62\xc0\xec\x4a\xdc\x70\x23\x07\xac\xb8\x11\x21\x1a\x61\x9d\xbb\x3e\xac\xfb\x25\x51\x2d\x82\xe6\x71\x06\x21\x0b\xb6\xa4\x81\x85\x10\x20\x95\x84\xe6\xfa\xe7\x8d\x66\x70\x2b\x65\x6a\xfa\xe4\xbe\xdc\x81\x30\x5c\x89\xdd\x65\x33\x62\x6e\xfa\x34\x6e\x06\xa7\x27\xca\xb9\x60\xbb\x38\x4e\x74\x1e\xf3\x9a\x46\x37\x2e\x05\x02\x38\x6c\xe3\x38\xd9\xb0\xed\xb8\x11\x4a\x8e\x76\x16\x95\xd8\xb1\xdc\x39\x7c\x85\xa0\x12\x00\x38\xcc\x0f\x78\xbf\x63\x51\x44\x23\xf8\x8a\x18\x2b\xe6\xc9\x86\xf5\x0c\x48\xb3\x06\xda\x2a\x60\xba\xfb\x14\x91\x34\x89\x74\xe1\x50\xc8\x86\x4d\xd3\x68\x0b\x80\x69\x11\xda\x07\x6c\x58\xdf\x38\xb7\x1a\xfe\xe0\x21\x69\x36\x14\xfd\xda\xa2\x41\x82\x40\xd2\x99\xb1\x0d\xad\x59\x4e\xf7\xac\x35\x18\xb4\x64\x79\x6b\x00\xcd\x03\x74\xb2\x62\xbf\xca\xc4\x6d\x13\x42\x42\xb7\x6b\x5b\x1d\xb3\x6a\x7b\xe7\x1b\xb2\x8e\x73\x4c\x9f\x0a\xbd\xe3\x1d\xa9\x92\xc5\xf5\x35\x97\x2f\xab\x9f\xf9\xed\x63\xf1\x11\xee\xe7\x8f\x24\x69\x84\x83\x99\x9d\x8e\x78\xd5\x8a\x78\xbb\x4b\x3f\x48\xca\x3f\xf1\xd5\xf7\x62\xbb\xcd\xaa\xbc\x4d\x5f\x57\x1d\xfe\xde\x53\xd3\x55\xb5\xe0\xa1\x97\x68\x14\x71\xd8\xf2\x9f\x94\x7c\xa5\x64\xb1\xea\x9c\x40\x4f\xb8\x33\xa8\x24\x84\xae\x8b\x2a\x7f\x25\xea\x1f\x3b\x84\xc5\xb2\x28\xb3\x81\x02\xb9\x74\xc1\xc6\x33\xaa\xd8\x38\xd0\x5c\x14\x6c\x4a\xb3\xd6\xcd\xf2\x5c\x5c\x00\xdc\x40\xc6\xfe\x16\x1c\xc7\x19\x2d\xa0\x4c\x62\x05\xa7\xa0\xd3\x7f\xee\x5c\xcb\xd1\xad\xb8\xe1\x3f\x9e\x14\xa0\x81\x8d\xa7\x34\x08\xb4\x1e\x1f\xe9\xbb\xdb\x20\x79\xe5\xf8\x00\xd9\xc6\xae\x95\xb0\xe9\x31\x37\xe8\x3a\xa3\xa8\x63\xfe\x37\x99\x48\x3c\x81\xd1\x5c\x08\x7a\xee\x4d\x16\x55\xf9\x5c\xdc\xf0\x5f\x8b\x7a\x9f\x95\xe5\x2d\x49\xf9\xc5\x74\x5e\x59\x96\xb8\x02\x96\xf8\x48\x68\x29\x60\x1c\xf1\x49\xe7\xfe\x2e\x38\x04\xef\x2a\xb8\x17\x4c\x6a\xb1\xe5\x6a\x53\x54\xd7\xd8\x31\x9e\x27\x64\x5e\xdd\x63\x82\xec\x5e\x8f\xd2\xaf\x8c\x5c\xa3\xc1\x2f\xe0\xac\xfd\x4d\x26\x15\x95\xbe\x5b\xc3\x99\xe3\x67\x74\x37\xf0\x10\x2a\xc0\xde\x02\x12\x1d\x8d\x71\x8d\xc9\xa2\x44\x5a\x1c\xcd\xd1\x6f\x56\xc8\xaf\xa7\x57\x08\x15\xac\x3a\xbd\x4a\x32\x36\xa5\x75\x7b\x95\x64\x17\xea\x7c\x34\xca\xac\x1c\xde\x9e\x4e\x35\x05\x2f\x78\xc1\x63\x95\x98\x0b\xb6\x07\x3a\x90\xe2\x1f\x26\x68\x52\xb3\xdf\x9d\x48\xa7\xa0\xd2\x2f\xab\xa6\xcb\xc2\x1a\xd7\xd5\xaf\xf7\x4e\x4a\x30\x19\xd6\xa1\xd4\xb0\xb5\x82\x50\x4f\x1d\x96\x4f\x1c\xa3\x22\x63\xcf\xa4\x41\x9b\xef\x5f\xa3\x19\x02\xe6\x90\x60\x26\x32\xbb\xa0\x32\x58\x50\x46\x51\xeb\x8d\x4a\x24\xcd\x2c\x64\x17\x8c\x88\x85\x36\xb9\x16\x59\xf9\x3d\xbc\x92\x81\xfa\x01\x0c\x49\x18\x4a\xac\x5f\x2b\xe3\xac\x12\x01\xe4\xf5\x80\x49\x8a\x12\x26\xfb\xd2\x6b\x1e\x74\x54\x1c\x67\x8c\x55\xcd\xdb\x63\x1c\xff\x4b\x9a\xeb\x29\xfd\x45\x37\x66\x6f\xda\x01\x27\x17\x3a\xc8\xa4\x7b\x5c\xfe\xd4\x9a\xde\x04\x46\x3a\xd3\xf3\xec\xa2\xea\x79\xf2\xce\x46\x23\x12\x86\x2f\xb2\x65\xd0\x76\x56\x2c\xb2\xa5\x5d\x73\x08\x3c\xdb\x23\xa2\xe9\x91\x55\x19\x25\x43\x10\x4d\x59\x73\x45\xd4\x93\x09\xee\x59\xfe\x0d\x90\x37\xde\x00\xcf\x13\x6e\x00\xeb\x0f\x87\x0a\x0c\xfe\xb0\x37\x71\x2c\xe7\xe3\xb1\x4c\x47\xa3\x2a\x20\x79\xee\x31\x50\x12\x9a\xb1\x47\x02\x9e\xbd\xe7\x3d\xcf\x21\x8f\x04\x68\x29\x1f\x53\xff\x16\x28\xfa\x12\xfa\x68\x4e\x8e\x3d\xef\x2a\xc3\x30\x41\x1c\x0f\x75\xb9\xe4\x78\x0e\x8f\x81\x59\xe2\x9b\x33\x9e\x11\x72\x4e\xc6\x63\xe3\xd0\xcd\xcb\x7b\x1b\xc9\x2a\x9d\x48\xf3\xf5\x3d\x1a\xf0\x68\x46\x66\xd4\xdd\x51\xa8\x0b\x27\x9c\xb8\xbe\x2e\x41\xee\xff\x51\x16\x8a\x37\x9a\x68\xb4\xeb\xe2\x98\xb3\xb6\xdc\x1f\x12\x1f\x0e\x49\xd2\x17\xce\x86\x7d\xa1\x64\xfe\x54\x34\x2e\x80\x46\x6b\xea\x71\x71\xd3\xb0\x5a\x76\x19\x22\x92\x3e\xfb\x77\x73\xd0\xdf\x8d\xcc\x33\x72\x81\x6f\xa0\x87\x11\xc5\xa7\xae\xbe\x86\xe9\xeb\xbe\x71\x40\x7d\xf2\x3d\xab\xc1\xea\x5e\x73\xf5\xb4\xe0\x65\x9e\x10\x74\x6f\x7d\xa4\x1e\x2e\xa7\x5b\xc2\x30\x19\x36\x1e\x11\xbc\xb9\xfc\xd0\x1d\x1c\xab\xac\x52\x4f\xf2\x42\xe9\x4b\xb1\xe1\x53\x7a\x08\x9b\x11\xf3\x58\x25\x3f\x05\x4a\x7e\xc0\x19\x50\x37\x57\x81\xb7\xc4\x50\xd5\xaf\xa1\x0a\xd8\x49\x82\xf8\x76\x46\x9a\xfd\xda\x58\x8a\x84\x17\x42\x0b\xb4\xd4\x18\x0c\xab\x4f\x39\xb0\xd7\x34\x54\x14\x0c\x34\xbf\xda\x6e\xf6\x37\x96\x1b\x6e\x40\x6f\xad\x8d\x07\xc6\x71\xa3\x74\xe7\xbb\x94\xa2\x87\xd2\x86\x5b\xf9\xd3\x79\x90\x53\x0c\xaf\x06\xe9\xc6\xa4\xa5\x01\x5f\x9a\xe6\xce\xed\x23\x6d\x9a\xc6\xf4\x8c\xbb\x3b\xb0\xf8\x3c\xe1\x2c\xbc\xe4\xb5\x05\x73\xee\x84\x85\xeb\x2b\x0d\xbd\x0b\x36\xd6\x40\x57\x61\x90\x90\xae\xc2\x14\x9f\xf3\xc0\x0a\xc2\xd8\x3f\x40\xc9\xa9\xd5\xad\x5c\x83\x93\x3d\xd7\x2a\xee\x52\x10\x10\x9e\x81\xf4\x43\x09\x93\x10\x1d\xe6\x4b\x30\x3f\x3a\x1c\xa6\x76\xd1\x04\xe6\x17\x6e\x3d\xf5\x2c\x91\x57\xa2\x66\xdc\xbf\xf2\x48\xcd\x72\xc3\xa6\x0a\x94\x05\xb0\x24\x2b\xba\x6b\xab\x1d\x9a\x78\x25\x76\x18\x0d\xea\x87\xbc\xa3\x7e\x68\x92\x49\xe3\xa0\x5b\x89\x8e\x1a\xa2\x49\x61\xae\xb7\x90\xc4\xaa\x23\x72\xa7\x8e\x88\x7b\xdd\x6a\x24\x36\xb4\x7e\x65\x43\x23\x91\x00\xfc\xc1\xeb\xe2\xcf\xee\xa3\x61\x83\x49\x75\x4a\x15\x01\x01\xef\xce\xd9\xe1\xf0\xe0\x1f\x7f\xe4\x23\x8b\x35\x84\xe8\x1d\x9a\xb3\x9f\x73\xb8\xeb\xa4\xfc\xe8\x37\xab\xec\xa8\x57\xe0\xdd\x08\x96\x3c\x83\x07\xf0\x60\xdf\x9e\x4a\x8d\xdb\x8a\x01\x48\x55\xc0\xe4\x86\x6a\xb0\x71\xfc\xda\xfa\x46\xc5\x53\x53\x76\x24\x14\x03\x64\xa5\x41\x4a\x55\x50\xd9\x12\x54\xf4\x58\x1e\x1b\xa1\x48\xc7\xea\xd8\x84\x5b\xb6\x40\x21\xe4\x9f\x0b\x5f\xa8\xe5\xa4\x12\x3f\xe2\xe2\x27\x77\x4a\xf3\x22\x05\x8d\x30\x36\xb2\xba\x31\xa3\x51\x01\xef\xd2\x0e\x6f\x48\xae\xf8\x5b\xb4\x72\x1f\x4e\x35\x99\x97\x34\x92\x7c\x2d\x79\xbd\x89\xa8\x7b\xc6\xd6\xf7\xa8\xec\x94\x0e\xc3\xcf\xca\x5d\x8e\xa8\xc9\xda\x9c\xf0\x5e\x2a\xd7\x76\x2c\x36\xe0\x3d\x7b\xa4\xd5\xbc\x97\x2a\x4c\xe2\xd6\xa0\xa7\x19\x01\x89\x6c\x86\xa1\x57\x70\x93\xdb\x52\x9d\xc3\xc1\xe3\x82\x8e\xdb\xb2\x57\x72\x39\xf9\x96\xc4\xf1\x2f\x26\x8f\x3b\x00\xbb\x83\x53\x7f\xcc\x76\x8f\x45\xf7\xd2\xd8\x7c\x1c\xf3\xef\x62\xab\x2d\xca\x19\x3f\x16\x76\xdc\x5a\x1d\xeb\x47\x56\x69\xf6\xb9\x71\x1e\x84\xde\xf6\x3b\xc3\x87\x0b\x42\x0f\xdf\xdf\x6d\x1f\x4c\x8b\xed\xe1\x4d\xa8\x32\x67\xd4\x4f\xba\x46\x38\x83\xff\xdd\x13\x1b\x24\x78\xbf\xe1\xf6\x31\x8a\x49\x9f\x2b\xc2\x6c\xb6\xa3\x3f\x1c\xbf\x38\xab\x3d\x22\x21\x2f\x4a\x8d\xbf\x30\xa7\xb1\x3b\x38\x1e\x69\x21\x92\x97\xb8\x6b\xff\x2a\xd9\xcb\x89\x91\xb4\xd7\xec\xee\x48\xff\xae\x03\x70\xbb\x23\x3a\x1a\x48\xb7\x3d\xa1\xe2\xc1\x7d\xce\xe7\x44\xfd\x20\x19\xc7\x09\x68\x01\xb1\x96\x93\xad\x8a\xdc\x55\x43\xa6\xaa\x38\x36\x46\xd0\xe4\x98\x4a\x34\xbd\x50\x15\x7b\x39\xf9\xa9\x2a\x14\xbb\x53\x02\x29\x5b\xb7\x1f\x01\x6b\x06\x69\xa3\xe3\x71\xc0\xab\x24\xba\xc9\xca\x3d\x8f\x68\x14\xb5\xcd\x4a\xc1\xf9\x1e\x40\x83\x81\xbf\x05\xd0\x3f\xd0\x19\x40\xa7\x09\xaf\x29\x9d\x1c\xf6\x15\x17\x35\x96\x98\xa2\x8f\x40\xd9\xd2\xe5\xf5\x7a\xc8\x11\x7d\x48\x1f\xb5\xc2\xad\x3a\x31\x80\xc8\x40\x78\xa0\xd9\x11\xb9\xc4\x46\x6b\x3c\xa2\x7f\x69\x52\xbf\x0f\x09\x6e\x05\x4e\x28\x97\xcd\x7a\x1b\x30\xda\xfd\x8d\x07\x5a\x18\x40\x6e\x33\x15\xbe\xfc\xd2\x2a\xf4\x79\x39\xe0\x9e\x26\xf7\x2a\x86\x14\x6c\x6a\x5f\xe5\x85\x05\x9b\xb1\x6f\xe8\xca\xe8\xbe\x8d\x67\x8c\x09\xab\xf6\xc6\xc4\xc8\xd9\xd2\x99\xa7\xcf\x0d\x4f\x2a\x2a\x08\x39\x56\xa3\xd1\x91\x90\x00\xbb\x41\xb6\x00\x04\x8a\x50\xff\x55\x51\xb9\x28\x96\x80\x04\xb3\x28\x96\xe6\x82\xa1\xbf\x56\x1b\x57\x85\x01\x05\x87\x11\xde\xf1\x55\x91\x95\x78\x2f\xa3\x0f\x16\x7f\xec\xa7\xd3\xe9\x74\xac\xff\xcc\xd6\xfa\xff\xff\x09\xff\x67\xf9\x1f\xfb\x87\xd3\xe9\xd5\x18\xfe\xac\xf5\xff\x0f\xff\x0b\xfe\xff\x5f\x7f\xec\xd7\x7c\xbd\x5e\x3e\xb8\xa6\x9d\x57\x22\x07\x24\x19\x54\x02\xb6\xc2\xbf\xf0\xeb\x27\x9f\x76\x89\x9a\xd4\x62\x2f\x57\x1c\x7c\xeb\xeb\x63\x39\xfa\x43\x45\x64\x1e\x45\x69\x74\xd0\x5f\x34\xba\x8e\x08\x95\x43\xb3\xbc\xe3\x98\x4f\x0c\xfd\x4c\x48\x4f\x07\x5e\x95\xd9\x8a\x6f\x44\x99\xf7\xbe\x41\x29\xf0\xf8\x5f\xef\xb2\x0a\x5c\xfe\xff\x5f\x11\x05\x49\x7a\x75\x93\x95\x45\x0e\xaa\xb1\x01\x58\xa5\x2a\x54\xc9\x59\xf4\xc7\x1f\xfb\x68\xe4\x31\xc9\x1e\xa9\x64\xaa\xaf\xe3\x86\x7b\x98\xfd\x0f\xd2\x11\xce\x67\xb2\xc8\xc6\x65\x76\xc5\xcb\x88\x9a\x62\x80\x3e\x36\xdb\xd3\xe8\x87\x5b\xa5\xdc\xc8\x0f\xcd\x64\xf8\xcd\xb1\xdb\xab\xd7\x9a\xa5\x88\xe8\x76\x1e\x19\x77\x90\x56\xa6\x1f\xa5\x60\x3f\x98\x49\x9e\x45\x0d\x7d\xe9\x8e\x3a\x9b\x2f\xe7\x6c\x95\x55\xa0\xd0\x96\xdc\x72\x45\xce\xae\xf8\x19\x9a\xf4\xe5\x67\x45\x75\x96\x9d\xc9\x7d\x55\x15\xd5\xf5\x99\xae\x42\xc8\x28\x6c\x62\x4b\x42\x17\xd1\xe1\x35\x46\x7c\xdc\x88\x12\x3c\x62\xe3\x71\xfb\x1d\x18\xe6\x07\x7b\x76\xc3\xb7\x9a\xca\x18\x62\xd7\x9a\x9e\x37\x7a\xcf\x7e\xdf\xdc\xb2\xa8\x31\x78\x22\x4b\x68\x88\x7b\x53\x21\x0e\x73\xb0\x4c\x6e\xaa\x44\x92\x41\x11\xc7\x05\x00\x3d\xaf\x36\xfe\x0b\x34\xaa\x69\x35\xc9\x14\x86\xdb\xaf\x84\xd3\xe2\x70\x40\x94\x73\xb3\xb2\x1c\x90\x26\x12\x0c\x4f\x49\x2c\xf7\xa6\xe9\x54\x7b\x5e\xfb\xb8\xbc\x79\xf2\x59\x2c\x35\x1d\x16\x35\xe0\xb9\x41\x64\x8f\x8c\xe4\xb6\xa8\xd0\x9f\x6a\x14\xb5\x53\x60\x38\x34\x2f\x4d\x3e\x0b\x3d\x66\x6a\x79\x0c\x0c\xec\x2f\x8e\x50\x1a\xa2\x79\x02\x6c\xec\x2d\xce\x0b\x78\x25\xf1\xd3\x63\x0e\xc2\x88\x2e\x96\xcd\x21\x78\xe1\xad\x44\x3a\x73\x1a\xd8\xf0\xe9\xa5\xd1\x73\x7e\xb4\xbc\x92\x84\x6f\x27\xf3\x77\x81\xfe\x31\xf2\xec\xd1\x54\x0f\x48\xdf\x56\x5a\x89\x1b\x6e\xde\x83\x5f\xf0\x4f\xea\x8d\x78\x6d\xe1\xce\xbb\x93\xf6\xb6\xd9\x48\x07\x8c\x6e\xb6\x5c\x54\x65\xaa\xb8\xe1\xad\x25\xfb\x9d\x1e\xb1\xb7\x7d\xb0\xec\x5d\xf8\x79\xde\xe6\x24\xbf\x00\x85\xbd\x6d\xea\xd7\x3e\xcd\x8c\xe3\xf9\x6e\x6f\xee\x1f\x7f\x89\xaa\x7c\x98\x3b\xa2\x33\xfa\x7d\x4f\xa9\x4f\x85\xdc\x66\x3d\x2f\xf9\x56\x86\x7a\x24\x41\xb6\x7a\x23\x3e\xa2\x4d\xdd\x6f\x1b\x5e\xbd\xb6\xae\x83\xa0\x61\x5c\x79\xc2\xa1\xd9\x50\x27\xa3\x7d\x59\x35\x31\xe3\x82\x26\xfc\x56\xd4\xfc\x7b\xb1\xbb\xfd\x7e\x1f\x1c\xf9\x56\x38\xd3\xee\xae\x5e\x35\x1e\xfd\x90\x31\x35\x4f\x00\xd5\xaf\x03\x06\x78\x55\xee\x65\xd2\x70\x6d\x50\xd4\x9a\x7a\xe6\x6c\x08\x4e\x4a\xbb\xc1\xb3\x1e\x40\x41\x6c\x84\x31\x4c\x37\x5e\xa8\x74\xf3\x4c\x2e\x60\x7f\xfb\x9a\xa8\xba\xa0\x77\x86\x2d\x0f\x26\xc7\xba\x7c\xec\xee\x0c\x0b\x67\xa3\x86\x6c\x98\xa0\xcf\x61\xa4\x74\x24\x00\x23\x08\x5c\x36\x3c\x35\x79\x6b\x5a\xe8\x6d\x53\xa4\x7f\x2b\x06\x45\x8f\x6f\x00\x74\x4d\x01\x1a\xd0\x11\xad\x50\x15\x9a\xd0\xd3\x29\xf5\xa9\xa3\xb9\xa7\x09\x7c\xdc\x97\x12\x51\x48\x2b\x90\xe6\xdd\x97\xae\xe4\x99\xde\x59\xd5\x04\x3e\x4e\xa7\xd4\xa3\x52\x4d\xf4\x5f\xe0\x5c\x80\x71\xed\xba\x7c\x09\xe9\x34\x2e\x89\xef\xca\xa2\xfa\xf0\x4b\xa6\x78\x44\xbf\xfd\x66\x1a\xc6\x84\x42\x9e\x88\x36\xa2\xf0\x42\xa9\x37\x47\xb0\x7e\xd1\x75\xdb\xf7\x41\x82\x57\x5c\xea\xad\x04\xd3\x15\x24\xfc\x28\xe4\x07\x4d\x46\x23\xa0\x98\x2e\xe8\x31\x2f\xb3\xdb\x20\x6c\x5d\xea\x1d\x56\x01\xc8\x17\x14\xf1\xc1\x95\x90\xe5\xf9\x73\x91\x73\x50\x76\x80\xd5\xe4\xa3\x76\x28\x11\x03\xbc\xc8\xa0\xb0\x7d\x95\x8b\xc7\x7c\xa7\x36\x11\x7d\x38\xed\x23\xab\x62\xe5\x9c\x85\xb9\xb4\x4c\xd9\xe5\x6b\xa2\x00\xf5\xd2\xb6\xf3\xe1\xb7\xa6\xec\x1b\xa3\x56\x61\x87\x6a\x36\xfd\x12\x56\x66\x9b\x7d\xfa\xb1\xb8\xde\x94\x7a\xa0\x10\xda\x21\xa2\x33\xfe\x97\xa0\x2b\x5b\x71\x83\x1b\x46\x73\xfd\x38\xae\x7d\x67\xc2\xa9\xad\xf3\xca\x28\x4a\x78\x46\x50\x65\x57\xc0\x62\x9f\xbc\x9b\x9c\xb8\x7a\x4e\x54\x76\x05\x5a\xd3\x4c\x1d\x0e\x51\x64\x8b\xcb\xf6\x4a\x18\x7c\x54\x6f\x64\x2a\xf5\x4d\x4b\x5f\x70\xe0\x9e\x57\xc1\xaf\x62\xcb\x9f\x9b\x90\x01\xdc\xe6\x8a\x0a\x02\x58\xb3\x01\xfe\xa2\x07\x05\x1c\x0e\x91\x2e\x36\x02\x39\x42\xd2\x8a\x64\x9c\xd0\x4c\x5e\x83\x99\x8e\x15\xd8\x5c\x3e\x04\x90\xeb\x9c\xef\xb8\xbe\x0f\xad\x0a\x5e\xa3\x17\x25\x6f\xf5\x82\x3a\xb7\xf8\x3c\xed\xb2\xd3\x87\x84\x50\x59\xc1\xed\xf2\x48\x5d\x03\x7f\x7a\xfe\xa4\xd5\xc0\xca\xa7\x91\xbc\x16\xe5\x4d\xbb\x17\xfd\xe0\xd7\x3c\x8e\xab\xbe\x17\x73\xce\xa0\x40\xa7\x46\xc2\xe3\xb8\x9b\x17\x34\x48\x7b\x0b\x80\x18\x62\x39\x77\x5d\x14\x6a\x9b\x0e\x4e\x80\x3c\xdc\xe9\x58\x70\x28\x93\x70\xf6\xd1\x40\x5f\xa3\xf1\x82\x82\x3f\xde\x4d\x6b\x4f\x0f\x1e\xfc\x63\xf1\xc7\xc7\x3f\xc6\xcb\xd1\x1f\x0f\xec\xc7\xe8\xd3\xb6\xfc\xca\x3d\x02\xd9\xf7\xc3\xc6\xd8\x24\x51\xb6\xdb\x95\xc5\x0a\x44\x5b\x0f\x3e\x6d\x4b\x77\x83\xe8\xd6\x31\xc7\x06\xf2\x63\xca\x0f\x07\xfc\xc6\x05\x70\xd4\x03\x6e\x54\x84\x5b\x33\xa2\x58\xb3\x3a\x07\x26\x2a\xab\x85\x32\xc3\x01\x6e\xe4\x7d\xeb\xac\xad\x8b\x41\x15\x79\xb0\x2b\xb3\xa2\x8a\x2c\x24\x9b\x81\x74\x2b\xd6\x89\xe8\x2a\x31\x87\x23\x5e\x30\xe1\xab\x70\x0f\x71\xfa\x76\x50\x90\xa2\x9d\x53\x10\x00\xbb\xec\x0d\x5d\x44\xef\xa3\x91\x58\x02\x82\x20\xa1\xfa\x7f\x56\xe8\xcf\x23\xbc\xdc\x06\xd3\x43\x55\x43\x2f\x59\x97\xe7\x7e\xb2\x30\x4e\x5f\xb9\xf4\x1e\xd1\x15\x79\x21\x27\xb4\x2d\x8c\x80\xaa\x82\x80\x85\x70\x6e\xda\xaa\x60\x1b\xc0\x2c\xc2\x3c\x34\xee\x4e\xe6\xe9\x04\x6c\x88\xda\x1e\x01\x3f\x14\xbb\x37\xe2\x49\x95\x27\xc6\xd2\x20\xdc\x52\x49\x38\xea\x14\x0b\xc6\xc1\x17\x96\x72\x3c\xf9\xa4\x78\x55\xeb\xd3\x19\x09\x06\xbe\x5e\xf7\xcc\xfe\x13\xbd\x88\xbb\xf3\xc4\xc9\x5c\xe8\x8d\x95\xc2\xff\xec\xee\x48\x7c\x77\x5c\xd9\x1d\xda\xe3\x68\x44\x8b\x0e\x3c\x16\xab\x53\x99\x6e\x8b\x93\xb9\x8c\x78\x87\x23\x56\x5b\x06\x58\x7f\x36\x4e\xf3\x25\x3f\x0a\xf1\xa1\x41\x38\x32\x0b\xe6\x47\xd0\xed\x43\xad\x47\x03\xe7\xd4\x0c\x83\xe4\xd7\x45\xad\xb8\xc4\xe7\xe2\x8e\x6b\x85\xae\xd2\x3d\x27\x87\x43\x52\xc3\x18\xbc\x84\x81\x30\xda\xe5\xe9\x62\x79\x24\x14\x22\x40\x8b\x14\xe9\x19\x16\xfe\x03\xa4\xe8\xad\x02\x65\x71\xcd\x56\x58\x84\x1a\x28\xcc\x69\xb6\xa3\x85\xd7\x4e\xf2\x3c\x95\xf4\x26\x2b\xd3\xea\x68\x7a\xb5\xd7\xbd\x5a\x89\xdd\x2d\x68\xa8\xb3\x8e\x7c\x69\x38\x65\x8c\x29\x67\x49\x65\x50\x4e\x6d\x7a\xa7\xa2\xe0\x83\xfc\x8e\xbf\x3b\xba\x6d\x58\xc1\x52\x6f\x5a\x13\x9d\x15\x55\xad\xb2\x6a\xa5\x49\x0d\x1c\x0a\xa0\x17\x52\x38\x87\xcf\x4b\x7d\x06\x2c\xaa\x25\x2b\x02\x55\xfa\x52\x37\xd7\xdb\xbf\x75\xc6\xdc\xbc\x93\xf2\x20\x0d\x40\xff\xbb\x5f\x09\xd8\x4b\x0d\x02\xf3\x8c\x56\x9f\xe1\x55\x9c\xfb\xe8\x73\x6f\x9e\x17\x58\x74\xa0\x25\xa8\x3c\x1c\x24\x1e\x7e\xcc\x1a\x83\x2a\x26\x51\x80\x44\x39\xc3\x38\xd7\xfa\xc3\x01\x6d\xec\x38\x85\x04\xa9\x3a\xe2\x14\xac\x70\x0a\x40\xb1\xab\x66\x77\xe8\xc9\xf4\x51\x59\xb6\x37\x71\x70\x17\x49\x3c\x96\x99\xb1\x72\x9a\xda\xf7\x78\x8f\xa2\x06\x86\x45\x14\x99\x40\x6f\x17\x76\x4f\xa1\x21\x18\x4a\x84\xb8\x76\x70\xbf\x0f\x42\x37\x3c\xcb\x23\x53\xf2\x87\xa2\x2c\x5b\x4a\xed\xe4\x0e\x0c\xf7\xdb\xde\x27\x94\x33\x1b\x33\x63\xf9\xc4\xc1\x4d\x79\xd3\xb0\x06\x28\x9a\x97\x6a\x19\x34\x03\xc0\xba\x08\x52\x5f\x84\x5d\x9d\x5b\xac\x35\xfb\x66\x0a\x50\x2c\x1e\x89\x6f\x46\xa7\xc4\xaa\x2e\x9d\x4a\xa4\x97\xc5\xb1\xa1\x7b\x6b\x2d\xcf\x0c\xce\x72\x02\x6c\xfc\xd1\xa8\x70\x7d\x41\xc7\xc3\xc2\x36\x16\xb0\x34\x21\xce\x1b\xb2\x12\xe9\x33\xeb\xf4\xdf\x40\xd1\x99\x58\xf4\x8c\xec\xaa\x43\xac\xb1\xb5\xba\xaf\x3e\xde\xa9\x8f\xf7\xd4\x67\xc3\x5c\xd1\xf8\x7c\x91\x7f\x49\x0d\x81\x9d\xaa\xb7\xea\x30\x23\x18\x68\xfd\x8c\xbe\x1d\x84\x0d\xd1\x94\xc1\xda\x6f\x24\xf8\xae\x3f\x85\xc7\x7c\x79\x34\x99\x70\x7c\x4f\xb7\xeb\x97\x96\xa9\xc6\x7f\xde\x30\x54\xf9\x69\x37\xa7\xe3\x4d\x23\x54\x14\x1d\xcd\xa6\xad\xe6\x0e\x4e\xad\x91\x0a\x1b\xaf\xef\x2a\xad\x4d\xa6\x83\x12\x78\x29\xec\x44\xe9\xa0\xc4\xe4\x3a\xb5\x47\x1b\x71\xb6\x9c\x53\x89\x1b\x71\xf0\x46\x25\x1e\x8b\x15\xb8\x94\x6a\xa5\x6c\xa9\xa0\xf5\x91\x14\x9b\xfd\x49\x4b\xe3\xf4\x44\xe6\x10\xc1\x51\xe7\xd4\xdf\x5f\x50\x73\x53\xf9\xcd\x1b\xe2\x14\x59\xc2\x1b\x04\xe2\x18\xb8\x37\x1f\x19\x77\xce\x45\x56\xa7\xb3\x63\xb3\xba\xd7\xdb\xff\xb8\x4e\xe1\xeb\xfc\x92\xea\x3e\x3b\x30\xa7\xea\xe9\xb7\x03\xf2\x64\xd1\x20\x10\x48\xf6\xac\x4a\x2a\x72\x4e\xd0\xf8\xa3\xca\x93\x99\xbe\x8c\x1a\x94\x29\x8f\xe4\x54\xb0\x5f\x8a\xa4\x22\x54\xb0\x62\x5e\x2c\xa6\xcb\x49\xc9\x6f\x78\xf9\xdf\x1e\xce\x65\x96\x54\x24\xad\xf0\xff\x3e\x02\xbb\xb1\x1e\x40\xd4\xfc\x91\x2e\x22\x55\x54\xa0\x33\x84\x2f\x18\xf8\x71\x30\x14\xdd\x6d\xfa\xf9\xc1\xf8\xb7\xe8\xc9\xd9\xff\xfe\xde\x35\x7a\xb8\xa6\xc5\x1d\x82\xf7\xff\x43\x83\x3f\xdb\xa0\xff\x64\xed\xfe\xef\x50\xbf\x7e\xea\x76\x56\x4d\x56\x9b\x0b\x38\xf9\x61\x43\x57\xe6\x84\xae\x79\x26\x57\x9b\xe4\xc1\x1f\xaf\x1f\x90\x79\xb8\x57\x34\x43\x19\x76\xe5\xed\xae\xd5\x07\xd0\xb0\x4d\xc6\x33\x8a\xf8\x1b\x2e\x21\xe8\xc2\xf7\x25\x6d\xa4\x7c\x95\x5d\xdf\x57\xa4\x35\x15\xc4\x84\xf7\x15\xe9\x53\xea\x31\xe8\x59\x01\xa0\x61\x0e\x85\xe2\xf3\x9a\x4d\xda\xb7\xbc\x31\x6d\x33\x29\x28\xa8\xde\x5f\x2e\x62\xd7\x04\xc9\xef\x2f\x3b\x48\xfe\x9b\x90\xf9\xbd\x65\x03\xfa\x0d\x24\xfd\x41\x8a\xfd\xee\xde\x82\x11\x02\xc7\x27\xbe\xb7\xe0\x20\xb1\x6e\xc4\xbd\x05\xdb\x46\xe4\x1c\x5e\x38\xf1\x59\xad\x95\xd8\xe8\xc1\x37\x06\xda\xa4\x6f\x5b\xc9\x86\xc9\x9b\xa9\x75\x4b\x3e\x5b\x7a\xd0\x1a\x50\x15\xbe\xbf\xf4\x20\x35\x0c\xca\x67\x8b\x77\x03\x63\x73\x7c\xa6\x02\x97\x1e\xd5\x07\x1e\xed\x55\x9b\x25\x68\x01\x39\x58\xb0\x37\x97\xe5\x79\xb7\x41\x9d\x2c\x80\x74\x67\x33\x3c\xe3\x75\xfd\xd9\x3a\x1c\xd4\x84\xce\x55\x73\xa9\xde\x64\x57\x1d\xd6\xa2\x6d\x6b\xf0\x47\x90\xfe\xb5\x58\x77\xf2\x78\x75\xae\xc5\x92\xa2\x3f\x99\xa6\xe3\x6a\xa0\x49\x6d\x64\xbd\x3e\x4c\x2f\xd4\x4a\x90\xd6\xcd\x00\xe0\x41\xac\x45\xe2\x29\x94\xc3\xc9\x05\xd5\x6e\x32\x50\x78\xe7\xdd\x8a\xa4\x1a\x67\xff\xad\x22\xe4\xd8\xed\x40\x9d\xa8\xc0\x4a\xb5\xd3\xdf\x3e\x8b\x8b\x53\x63\x9d\x6a\x2a\xed\xcc\x73\x92\xc8\x8d\x61\x04\xa6\x36\x59\x55\xef\x44\xcd\xe1\x91\xbc\x51\xcb\x3d\x88\x61\x3d\xa3\x15\x78\xc2\x39\x85\xd2\x81\x74\x5f\x78\x56\xa2\x08\x2e\x57\x20\x45\x23\x80\xe3\xa1\x6f\x54\xc2\xa3\xfd\x17\xa0\xe2\xb0\xe1\x09\x26\xa7\x05\xe2\x5a\x12\xf8\xb8\x9c\x92\xbe\xf8\xd1\x8c\x50\x37\xa8\xbf\x64\xd5\xb5\x9e\x05\xa3\x3f\x6e\xf2\x8f\x9a\x01\x0f\xe1\x92\x1a\x56\xf1\x90\xd0\x82\x46\x23\x37\x42\x51\x80\x1d\x60\x81\xc1\x9d\x0a\x8b\xc5\x0a\x68\xf5\xcd\x22\x0f\x0e\x32\x54\xb6\xe8\x6b\xcf\x94\x8c\x78\x9f\x73\xfa\x51\xe6\x40\xbb\x3c\x7c\x85\x6f\xe4\x78\x46\x7b\xc3\xe9\x8c\x34\x5b\x7d\x6c\xba\x1a\x2a\x68\x01\x2b\x2e\xbc\x5e\xd7\x09\x00\xb5\x1c\x69\xc5\x3f\x82\x15\x7a\x95\xa3\x96\xd0\x7f\xbe\x20\x9c\xf6\x0d\xc2\xe6\x9c\x4b\xbb\x16\xaa\x9e\xc4\x0b\xb9\x1c\xb4\x86\xa7\x77\x48\x68\x65\x9d\x24\x19\x7b\x27\x0f\x5e\x68\x57\xbf\xe1\x09\x82\xfb\xe5\x68\x46\x0d\x98\x21\x39\x3a\xb4\x3a\x2a\x76\xbc\xea\x5c\x94\x7b\x09\x49\x15\xd1\x08\x1f\xf5\x3e\x63\x49\xc0\x27\xad\x58\x7d\x69\xa4\xeb\x8a\xbd\x34\x78\x4d\x0d\xad\xb5\xbc\x49\x86\xd0\x12\x16\x7d\x65\xec\xca\x42\x25\x0f\xc6\xc9\x7c\xf8\x15\x79\xa0\xc9\x49\xc2\x99\x58\x08\x37\xdb\x4b\x3a\x25\xe7\xd9\x85\x0f\x00\xa3\x14\x83\x0b\x21\x16\x19\x88\xb1\x1f\xfc\x23\x59\x6d\xf3\xc3\x96\xab\xec\xb0\x25\x5f\x3d\x28\x0c\x56\x27\x21\x05\x1b\x4e\xdd\x52\x7e\xf0\x8f\x2c\x29\x15\x99\x87\x09\x54\x33\x41\xb2\x3a\xac\x94\x2c\x0f\x2b\x51\x29\x29\xca\x46\x59\xd2\x26\x05\x81\xdc\x83\x7f\xd4\xc9\xa6\x58\xab\x46\x92\x8e\xe2\xcc\xdb\x4a\xf2\x95\xb8\xae\x8a\x3f\x79\x7e\xb6\x15\x79\xb1\x2e\xb8\x3c\x03\x19\xfe\x59\x34\xaa\xc9\xa0\x02\xdf\x4f\x56\xcc\x02\x8a\xdf\xd1\xa3\x52\x8d\xa3\x11\x37\xae\x78\x59\xf4\xbd\x92\x25\x06\x14\x26\x60\x9b\xe3\xef\x0a\x7f\x5b\xf7\xa4\x9c\x50\x7e\x5c\x57\x93\xab\xac\x2e\x56\xec\x0e\x58\x89\xc8\xf3\x58\x11\x45\x86\x21\x0a\x78\xa9\x88\xbe\xdd\xe9\x00\xe4\x16\x23\x0a\x5c\x5b\xe4\x99\xc2\x88\xea\xcb\x55\xe4\xee\x59\x11\xfd\x51\x6c\xb9\x0d\xf0\xf7\xbc\x88\x1a\xe6\x30\xb2\x6c\x22\x86\xd8\xf2\xec\x77\x44\x1f\xc3\x29\x9c\x46\x21\x9f\x11\xd1\xef\xb2\xd5\x87\x7a\x97\xad\x7c\x84\xd5\x03\x32\xbd\x73\x09\xa2\x4e\x0a\x7d\x66\x44\xfe\xfc\x70\x59\xf4\x77\x1a\xf9\x13\x5e\xf7\x45\x73\x05\x51\x7b\xeb\x47\xf4\x27\x38\x28\xd2\xa8\xb5\xaa\x23\xfa\xa4\x5e\xa5\x51\x4b\x78\x17\xe9\x95\x3e\xd9\xad\x1e\x63\x95\xec\x0e\x67\xe8\x51\x94\x46\x4e\x6a\x18\x51\x0c\x7c\x8c\xcd\x35\xa2\x2a\x1b\xfa\x77\xc0\x45\xcb\x85\x6b\xaa\x0b\x95\x1c\x42\xe1\xf7\xbb\xd6\x6f\x3d\xf2\x91\x1e\x4c\x2b\x4a\xb0\x11\x7a\x5e\x4c\x38\x4c\x11\x86\xbe\xdd\x45\xe1\xcc\x9a\xf6\xe8\x39\x68\x4e\x30\x46\xc0\x02\xd1\x11\x8e\x0b\xb5\x31\xb8\x4e\x5c\x94\x59\x36\xb0\x4a\x5d\x26\xb7\x18\x4c\x84\xcf\xe3\xd6\x0d\x16\xd6\x9a\xc6\x80\xbb\x73\x2d\x44\x83\x49\x1f\x6d\x56\x08\xc6\xbe\xd6\x83\x0c\x2f\xff\xf8\xfb\x69\x94\x46\xfa\x46\x6e\x7f\xff\x60\x7e\xbf\xe0\x9f\x54\x73\x74\x6d\xcc\x2b\xc9\x6f\x9a\x31\x4f\x61\x9c\x81\x18\x36\x23\x7e\xf1\x11\xc1\x94\x2e\xdc\xa2\xd2\x2c\x9d\x0d\x5d\xba\xd0\xe7\x41\x67\xde\x9a\x89\xf6\x6b\xa7\x51\xc1\x5b\x33\xc3\x61\xb4\x1e\xbe\x9e\xf0\x75\x56\x96\x9a\xbc\xec\xaf\x37\x69\x04\x1b\x1c\x97\x21\xdf\x66\xab\xfa\xd6\xae\xc1\xa7\x51\x6b\x77\x9b\x51\x8f\x9a\x74\x00\x43\x5f\xf5\xac\x8f\x17\xed\xc5\xa1\x9b\x83\xa5\xba\x1b\x87\x09\xfd\xce\x85\x86\x85\x3e\xea\xac\x07\x5c\xa2\x7d\x8b\xe1\xd7\xa8\x49\x1a\xc2\xa1\xf1\x71\xc1\xe2\x8d\xda\x64\xc3\x6c\x8c\x2e\x4d\x80\x16\x9a\xf4\xee\xc2\x61\x1b\xde\x5c\x83\xfe\xfe\x62\xcb\xfb\x39\x4a\x23\x2b\x56\xb7\x61\x6f\xa2\x34\x6a\x72\x90\x36\xe6\x65\x94\x46\xf6\x88\xc5\x39\xd9\x66\x21\x6d\xd8\xe6\x5d\xd2\xb0\xcd\x7b\x28\xc3\x36\xef\x21\x0c\x26\xd0\xd2\x81\x6d\xde\x20\x0b\xdb\xbc\x9f\x2a\x6c\x73\xbb\xfd\x5b\xa1\x5d\x52\xa1\x9b\x62\x89\x82\x0b\x6d\x6c\xee\x90\x22\x34\x37\x77\x83\x20\xe8\x92\x1a\x04\xc1\x2e\x8b\x6d\xde\xa2\x07\x8d\x55\xf4\x59\x82\x70\x2a\x55\x38\xa5\xa7\x89\xc6\x36\x6f\xd0\x8c\x6d\xde\x20\x19\xdb\xfc\x04\xc5\x08\x22\x0c\xc1\x80\x79\x34\x9b\xa1\x43\x2d\xba\x71\x7e\xa2\xbb\xf4\x62\x9b\xf7\x90\x8b\x6d\xde\x59\x98\xcd\x57\x01\x3b\x59\x41\x57\xdb\xf2\x79\x3b\xf5\xa7\xa9\x8e\x89\x6d\x13\x9d\xf0\xc0\x68\x9f\x2e\x9d\xd5\x11\x92\xa2\x85\xa1\x45\x34\x42\x42\x14\x2d\x61\x07\x98\xd3\x98\xdd\xcc\x1b\xdb\x21\x0d\xcf\x4d\xfa\x72\x52\x09\xb9\xcd\xca\xe2\x4f\x03\x06\xca\xba\x8a\xd7\xc1\xeb\xa5\x3c\x2b\xaa\x33\x8e\x96\x47\xad\x17\x5d\xe9\xd5\xd9\x34\x7f\x8d\xac\x9c\xe6\xb2\x0e\x41\x5b\x0f\x49\xce\x0f\x99\x22\x2a\x5b\x6d\x88\xd5\xcf\x90\x84\x68\x5e\xaf\xa8\xf6\x80\x71\x13\x4d\x26\x13\x04\x29\xc1\xad\x79\x06\xe5\xd9\x14\x47\xaf\x48\x7f\x05\x06\x68\xc0\xbd\x46\x67\x11\xa1\x39\x88\x7d\x01\x59\xad\x0b\xab\x46\xeb\x81\x60\xac\x70\x3c\xec\x3c\xa9\x59\x31\xf9\xa7\x28\x2a\xcc\x9c\xb1\x8a\xa4\x10\x66\xa1\xef\xc4\x68\x46\x1a\x09\xa0\x61\xd6\x3c\x5c\x2d\x6a\xe8\xe4\x1e\x9e\xf5\xf6\x43\x96\x75\x39\xcf\x9f\xaa\x95\xa8\xea\xa2\x56\xbc\x52\x67\x57\x45\x95\x17\xd5\x75\x7d\xb6\x16\x12\xf8\x4e\x54\x69\xd1\xe5\xb0\xec\x18\x74\xd5\xf5\xb0\xc4\xa7\x62\xbe\x28\x97\x4c\x2d\x4a\xa7\x01\xc1\xf1\xb1\x74\xa3\x39\xfd\x52\x88\x0f\xfb\xdd\xcf\xfc\xb6\xe7\x41\x1c\x47\x29\x51\xa8\x63\x4d\x40\xb3\x68\xae\x50\xc1\x88\xd3\x8a\xa4\x6a\x61\x54\x50\x66\x8c\xb1\x82\x58\xe3\x3b\x01\x57\xfd\x28\x98\x0b\x1f\xb9\xdd\x97\xaa\x88\x2c\xda\xc0\x90\x15\x71\x2c\x93\xc2\x2a\xd8\x44\x88\x26\x94\x47\x08\x8a\x13\x4c\x3c\x6a\x1f\x2d\x10\x43\x0d\x1f\xb9\x97\xd1\x90\xbd\x84\xdf\x81\x0e\x94\xd5\xce\xc7\x56\x36\x8b\xb0\x4f\xec\x9b\x0a\x5d\x35\xf8\x28\xf4\xc8\xd5\x44\xd7\x6b\x24\xe8\x81\xd9\xeb\x96\xb2\x10\x4b\xe7\xda\x2b\x23\x0e\x6a\xe3\x78\xa4\x3b\x3d\xd4\x45\xfd\xdc\x5c\x1e\x9a\xc3\x6d\xb7\x49\x8f\xd6\x10\x4f\xff\x2e\x16\xce\x41\xba\x9d\x40\xd8\xd2\x11\x98\x1a\x6b\xc2\x69\xbe\x80\x38\x98\xef\xe7\x22\xd7\x5f\x47\xba\x35\xb7\xb9\x17\xd9\xb6\x47\x23\x61\x15\xc7\xdf\xfc\x85\x35\x1d\xdc\xeb\x3b\xbc\x07\x1c\x47\x79\x78\xa3\x11\xb4\x62\x72\x10\xe0\x41\x0d\x59\x65\x9d\xbc\xff\x20\xb3\xdd\x06\x9c\xbe\x27\xd6\xe9\x7b\x1c\x43\x13\xd1\x1d\x49\x65\xef\x45\x15\xa1\xc9\xfb\xb9\xf3\x05\x9f\x3a\x77\xf1\x24\x8e\xb1\x77\x2e\x83\xb9\x38\xd9\x1c\x26\x5d\xea\xfd\xc8\xeb\x1c\xdb\x3c\xc8\x00\x17\xab\x8a\xd0\x21\x58\x8c\x00\x9e\x04\x36\x04\x47\xc8\x25\xb4\x37\xae\x8a\xd0\x8a\x04\x37\xdd\x9b\xd0\x92\xb4\x3b\x27\x6b\x50\xbf\xe1\xc7\x97\x70\x69\x7f\xc3\x3f\xa9\x47\x92\x67\xdd\xc1\x4d\x14\x53\xf3\x27\x22\x51\x24\xbd\x3b\x92\x09\x18\x5a\x31\x8e\x7f\xe9\x50\x4d\xac\xc2\x22\x60\x16\x19\x1d\x44\xd0\xf1\xb3\x11\xcc\x87\xeb\xce\x4c\x76\xde\xbe\x45\xe7\x69\xfc\x4c\x1a\xd1\xac\x11\x6b\xfd\x06\xa8\x89\x53\x6a\xb4\x0f\x1d\x8f\x05\x78\x5b\x73\xe1\x4c\x82\x42\xa2\x35\x41\xbe\x6e\xda\xb6\x38\x95\x48\x02\x8e\xf9\x1d\xa4\xf8\x95\xc8\x6f\x8f\x81\x1d\x2e\xb9\x33\xdd\x64\x00\x01\x81\x46\x64\xa0\xf3\xc5\x27\x6b\x21\xb7\x71\x9c\xbc\x2b\xcc\x37\x8d\xea\xfd\xd5\xb6\x50\x11\x85\x19\x43\x4d\xe0\xd7\x10\xf4\x9c\xab\x8d\xc8\x1f\x95\xa2\xf2\x7a\x69\x26\x93\xd0\x64\x16\x12\x0d\x94\xbc\x35\x1b\xd2\x06\xb1\x40\xe4\x53\x25\xe0\xbb\x15\xc3\x85\xfb\x0c\x43\xb3\xe3\x71\x05\x1e\x43\xde\x09\x72\x77\x3c\xaa\xc9\xba\xa8\x8a\x7a\x03\x06\x75\xe1\xd3\x90\x9a\x68\xfe\x83\x55\x14\xb4\x47\xbb\xf3\x1e\x28\xc8\x83\xe3\x97\xbe\x14\x8d\xf0\xa2\x7e\x91\xbd\xa0\x15\xe8\xa5\xef\x32\xc9\x2b\xf5\x42\xe4\xdc\xb8\xeb\x32\xc8\x5c\x93\x8e\x5d\x64\x82\xde\x0f\xc1\x32\xc2\xbc\xd8\xa1\x61\x88\x19\xd9\xbf\xf5\x8e\x6c\x64\x1b\x11\x6a\x5f\xea\x54\x66\x14\xd0\xab\xa3\xff\xcd\x04\x21\xc7\x63\xb7\xa2\x4a\x54\x3c\x32\x90\x29\x2f\x9b\x4f\x67\x8d\x4e\xa0\xd0\x16\x79\xc0\x44\x51\x3e\xa9\xf8\x27\xf5\xba\xb8\x2a\x8b\xea\x9a\x1c\x89\xc7\x44\x39\xab\xf1\x30\xba\xd5\x84\x0a\x49\xf7\x6b\x25\x79\xb6\x6d\x2b\x43\x6e\x8a\x7a\xb2\x13\xb5\xc3\xbc\x90\x8a\x4d\x2d\x72\x84\xce\xc5\x38\xfe\x32\xa2\x6f\x4d\x06\xff\x8b\x3a\x00\x63\x7c\x1d\x7a\x65\xf3\xfb\x20\x58\x9c\xb6\xa4\xd2\xde\x78\xd8\xf4\x38\xb8\xad\x42\x40\x79\x2e\xca\x53\xc6\xa1\x3b\x51\x5f\xb2\xa0\x25\xe6\xac\x38\xd2\xfa\xde\x3c\x06\xbe\xc3\xd5\x79\xa4\x3b\xce\x3f\x9c\xca\x60\x8a\x36\x12\x56\x5b\x06\x39\x1c\xd0\x1d\xf8\x91\xea\x01\x0e\x33\xeb\x03\xd4\xa4\xba\xe8\x36\x8e\x7c\xbe\xec\xd1\x88\x1c\x29\xcf\x4e\x42\xf6\x9e\x68\x51\x2f\xc4\x2d\x27\xc6\x62\x9f\x19\xb0\x02\xfd\x0d\x6b\x4e\x33\x70\x73\xfc\xa3\x29\x25\xd7\x8c\x06\x40\xb3\x9b\x16\x8e\x46\xb6\x64\xaa\xa0\x39\xbf\x6d\x8a\x92\xdf\x87\x38\xbf\x13\xf5\x39\x7c\xf0\x4c\x25\x9c\x9c\x3b\xd0\x2b\x37\x59\x58\x10\xa0\xcc\xa5\x3d\xe2\x61\xee\xcb\x79\xb0\xf8\xa3\x06\xfb\xc7\xe9\xd2\xf0\x9a\xf7\x75\x1d\x70\x5e\xec\xaf\x41\xbb\x56\x7e\xa4\x4e\x79\xb4\xe3\x45\x3e\x58\xd9\xcd\x25\x04\x39\x3e\x33\x05\xd6\xb4\xd4\xec\x00\x3b\x0b\xea\x72\x3c\x23\xed\x45\xa7\x00\x42\xff\x2a\x5b\x7d\x68\x3d\x02\xdb\x14\x63\xc6\x8f\x14\x5f\x4a\x4f\xad\xc5\xc6\x86\xba\xf0\x1b\xd2\x82\x98\xb4\x77\xd7\x5a\x84\xc3\x46\x7d\x86\xc6\x8e\xed\xd9\xac\xed\x20\x28\x8e\x9c\xdc\xd5\xc6\x82\xa5\x2f\xd3\x38\x69\x6e\xb6\x79\x5f\x9b\x5c\x6c\xa3\x5d\x08\xc0\x8a\xf7\xbc\x16\x8a\x81\xd7\x41\x69\x96\xe6\xc0\xe1\x5c\x19\xff\xdb\xf5\x83\x53\xab\xb4\xc7\x2c\xa8\x83\x9e\xef\x30\x57\xc3\x25\x82\x77\x12\xb7\x3c\x8c\x8f\x2c\xee\x95\x14\xe2\xb8\xc2\x75\x74\x39\xb5\xee\x85\xe2\x78\x38\x1b\x32\x8f\x4d\xa3\x69\x02\xab\x50\x25\x06\xbd\x1d\x55\x68\x80\x5e\xb0\x1e\x33\x31\xa9\x77\xb5\x78\x26\x3e\x72\xf9\x7d\x56\xf3\x84\xa4\xfc\x08\xb8\xf7\x8d\x2d\x54\xef\xaf\x6a\x25\x5d\xf9\x94\x3b\x13\x65\xc6\x0a\xaf\x78\xdf\xd3\x10\x97\x12\x16\xf4\x6a\x2f\xe5\x3d\xf6\xfb\xdd\x51\x08\xd6\x9f\x1e\x90\x23\xdd\x14\x39\x7f\x5a\xc8\x5a\xb5\x5f\x16\xdd\xe9\xe3\xa6\x67\xc4\x38\xb0\x1d\xb6\x86\x84\x1c\xd7\x45\x95\x95\xe5\x6d\x2b\xa1\xde\x4b\x46\x33\xf5\xba\x62\x53\x7a\xa5\x0f\x39\x7d\xfe\x23\x12\x6a\xdf\x11\xa7\xf3\xd6\x6c\xb1\x34\x4b\x00\xd4\xdf\x1d\x1c\x85\x3d\xe3\x8a\x9c\x8d\x46\xd7\xd5\x71\x50\x88\xe4\xaa\x22\xf4\x2a\x38\xaa\x26\x80\x85\xcb\x9a\x27\x01\x62\x1a\xf1\x4f\xbb\xb2\x58\x15\xaa\xbc\xfd\x5e\xa7\xe1\x79\x13\x5a\x43\xac\xc0\x3d\x27\xe3\xe8\xc3\x78\x2f\x5f\xee\x80\x8c\xc4\xf1\x5b\x30\x10\xad\x84\x01\x80\x80\x1a\x22\xd2\x00\xda\x03\x8d\x2a\x32\x90\xe0\x52\x34\x4c\x46\x11\xd3\x9a\xca\x89\x12\xc4\x5d\x4d\xd1\x61\x39\x2d\xf0\x8f\xb9\x70\xb9\xfe\x7b\xa7\x15\xc2\xde\xb6\x7c\xa4\xbe\x65\xd5\xec\x53\x95\x64\x93\xad\x1e\xc6\x1c\x8c\xa8\x10\x50\x63\xc0\x2d\x7e\xd3\x4a\x94\x65\xb6\xab\x79\x3e\x07\x5f\xab\x8f\x8a\x24\x23\xd6\xd5\x6a\x0a\x16\x06\xc0\xe3\xd6\x13\x25\xe0\xcd\x16\x12\x58\x58\x97\xda\x22\xf8\x54\x26\x9c\xd0\x46\x65\xec\x51\xbb\xf6\xda\x32\xd9\x36\x6b\xb3\x11\x71\x3c\xfc\xb1\x0a\xc0\x19\x49\x1c\xf3\x38\xfe\x54\x24\x19\x6d\xf9\xd5\x41\x53\x99\x4e\xee\x7e\xcb\x62\xe2\xa1\xd7\xef\x19\xbc\x3d\xfb\xb3\x4a\x1a\xe3\x47\x68\xc9\x7e\x4a\xf6\x64\x50\x5e\x7a\xb5\xaf\xb6\x9f\xde\x4e\x0c\xdb\xd3\x13\xa9\x59\xd9\x8d\xf1\xfe\x7b\xc9\xd1\x5d\x13\x7b\xba\x06\x7a\xf6\x15\x2d\x46\xd6\x9f\x48\xd8\x09\xcb\x98\x75\x56\x2e\x1b\x9a\x98\x4c\x89\x6d\xb1\x32\xc5\x86\xa0\x5d\x96\x58\x84\x61\x60\xd6\x19\xc7\x5f\x99\xe7\x5a\xcd\x49\x5b\x17\xb8\x30\x99\xd2\x94\x1e\x51\xdc\x68\x84\xaa\x38\xfe\x11\x16\x3f\x52\x0a\x60\x70\x4d\x65\xf8\x03\xb7\x1b\xbc\x9c\x36\x76\xa1\xde\x0f\xac\x57\x35\x71\xe0\x00\xc3\xa2\x2b\x21\x3e\xe8\x8a\x23\xc3\x0b\x2a\x34\x7e\xe1\x6c\x16\xe2\x3d\x4c\xcf\x8b\xde\xe9\xf5\xde\xca\xfc\xdc\x16\x4b\x9a\xe9\xbd\x21\x7a\xf6\x86\x93\xb9\x64\x76\x79\x4b\x70\x5f\x37\x17\xe9\xa3\x22\x11\x7a\x8d\x23\x1e\xd5\x78\xc6\x18\x0f\x9c\x1a\x04\x19\x61\xb7\x54\xed\x6c\x4a\x10\xda\xc8\xe3\xc0\xee\x64\x1c\x87\x4e\x3a\xdb\xa3\x64\x70\x07\x42\x6a\x15\x50\x24\xa0\x29\x63\x50\xd3\xa4\x1e\xc1\xdb\xd3\x2a\xbd\xdb\x65\x1c\xff\xac\x12\x49\xdb\x78\x41\xf8\x6c\x5f\x71\x0a\x5b\x9b\x5b\x95\x16\x76\xa3\x13\x23\x02\x87\xee\xca\x13\x70\x94\x6b\xf1\x8c\x6a\x2b\x4d\xb5\x8b\xb7\x1f\xe8\xc8\x67\x68\x3b\xa1\xa6\xb0\xcd\x11\xe1\x94\x58\x4f\xb8\xca\x79\xb1\x32\xa4\xcc\xfc\x1e\x28\x87\x11\x65\x95\x4f\x6b\xf6\x83\xbe\x4b\x8d\xb3\x41\x0d\xe4\xa1\x02\xc5\x01\x70\xe9\x5b\x1b\x8d\xee\xc6\xf8\x21\x78\x01\x54\xde\x32\xd4\x1b\x76\x56\x4c\xb8\x47\xb6\x1d\xe7\x1b\xd6\x65\xfd\x40\x4d\xb6\xd9\xed\x15\xff\xb1\xc8\x73\x5e\x39\x08\xf4\xf1\x6c\xc8\xae\x45\xd2\x17\x89\xab\xeb\x70\xb0\x91\x6f\xab\x4d\x18\x7d\x32\x22\x70\x1e\x8d\x60\x48\x41\x8b\xad\xb5\x50\xb3\xb7\x08\xe1\xd0\xd7\xdb\x20\xab\xf1\x4f\x74\x2d\x82\x40\xca\x09\x38\x8f\xfa\x0f\xc7\xe4\xbc\xb7\xdf\xbe\x63\x3f\xde\xdb\xad\xe3\x40\x9f\xfd\x5e\xbc\xf4\xbe\x6a\xfb\xb6\x06\x88\xd3\x0d\x1c\xc8\x3d\x3a\xcd\x36\x65\x52\xb1\x27\x22\xa9\x08\x31\x69\x99\x11\xcf\x09\xb6\x68\x14\xa9\x29\x80\x58\x4c\xf5\x21\x59\x19\x74\xaf\x17\x81\x67\x95\xf7\x45\xdb\xd8\xa1\x06\x7b\x3b\x9f\x92\xd5\x93\x55\x29\x2a\xae\xbf\x93\xe1\x94\x10\x2a\xb0\x3f\x50\xcd\x33\x74\x4a\x89\x7f\x25\x81\x2a\x49\xe0\x04\x68\x7a\xbe\xbf\x80\xed\xf6\x81\xe7\x9e\x56\xed\x51\xe4\x8f\xc1\x8b\xfd\x72\x52\xd4\xaf\x80\x7e\x5a\x6f\xa9\x19\xbb\x11\x09\x02\xfb\x56\xfc\xe3\xd9\xc7\x0a\x7c\xeb\x1d\x83\x7e\x19\x7b\xa9\x2d\x72\x27\x66\x6a\xec\x80\x7d\xa5\xd0\xfb\xe5\xfb\x8a\x84\x59\x70\x7c\x74\x81\x57\x15\x60\x83\xd2\x8c\xed\xd0\x70\x69\x80\x23\xaf\x87\x94\x0a\x40\x1c\xca\x2e\xa7\x87\xc3\x94\xb1\xcc\x30\xbe\x02\x69\xfb\x6f\x1b\x5e\x3d\xd9\xee\xd4\xad\xad\x4b\x00\xf1\xb0\xaa\x37\xf9\x6f\x05\x1c\x97\xc2\x1f\x6a\x9a\x10\x88\x70\x40\x3d\xf2\xcc\xa2\x99\x6f\xd9\xc4\xe7\x30\x60\x6b\x7a\xd3\x83\x1c\xfc\xb9\xd8\xd7\x1c\xec\xb2\xeb\xc3\x21\x2c\xf1\x8b\x21\xe1\x2b\x23\x89\x41\x38\xed\xa4\x51\x86\x8f\x61\x66\x96\x5d\x0f\x60\x5d\x3e\x45\x01\x37\x2a\xc8\x53\x49\x05\x39\x1c\x94\x71\x7f\x2f\xe1\x6f\x1c\x43\x1a\x19\xa6\xe9\x7b\xc5\xd0\xf5\x14\xd5\xf5\x99\x2b\xff\x0c\x8f\xdb\xb3\x5d\x26\x55\xa1\x19\xe7\x33\x74\x2b\x04\x5c\xcd\x59\x56\x9d\xf1\x4f\x45\x0d\x59\x44\xc5\x23\x32\x78\xcd\x86\xd3\xa3\x98\x64\x79\xfe\x46\xfc\x88\xe6\xea\x71\xfc\xbc\x70\x7e\xdc\x15\xe0\x2a\x5b\x07\xee\x70\x98\x6b\x36\x3b\x02\x09\x16\x2f\xe9\x8b\xec\x85\x01\xfa\xa5\x7b\xeb\xdc\xb3\x04\x6f\x95\xb8\xaa\x00\xca\x69\x6f\x3a\x32\x6a\x41\x6a\x94\x71\x2c\x1a\xcc\x58\x79\x02\xcc\xef\x4f\x9d\x9c\xb1\xb2\xcd\x0a\xc5\x71\x52\xc3\xb1\xd1\x28\x66\x3f\x34\x2d\x01\x4a\x0f\x66\x45\x6d\x9b\xf5\x90\xe5\x6c\xfc\x9a\x37\x7e\x39\x3b\x3f\xb5\x24\xe9\x42\x2d\xa9\xc2\x58\x19\x9c\x0f\x9a\x9a\x6a\x46\x8b\x7f\x3c\x7b\xa9\xf7\xd6\x9e\x99\xda\xe7\x6a\xb2\xda\x00\x3a\xa5\x0e\xc3\x11\x98\x4b\x1b\x06\x2e\x29\xf6\x47\xd2\x6a\xbb\x19\x31\x33\x92\x3d\xc3\xa6\xc8\xdd\x8f\xd8\x0d\xe8\x9d\xa2\x53\x62\x0a\xd1\x5b\xea\x65\x05\x4a\x3c\x71\xfc\xae\x48\x04\x8d\xae\x40\x4c\x88\x76\x71\x4f\xaa\x16\xf0\x08\xb9\x13\x8e\xc7\x82\x12\x3c\x52\x6b\xf2\x44\xef\xb4\x84\x3b\x70\x83\x5c\x54\xf6\x5a\x78\x38\xf0\x06\xe6\x81\x8b\x40\x87\xb9\xba\x40\xb3\x90\x92\x76\xe7\x12\x61\x2f\x58\x54\x18\xfe\x12\x66\xaf\x84\x5d\x81\xfe\xef\xfb\x8f\xff\xe6\x1e\xe2\x32\x29\x69\x6b\x88\xbc\x4e\xa6\xee\x55\x56\xd7\x2f\xb2\x2d\xd7\x7b\x1b\xa0\xa2\xf4\x87\xb1\xaf\xbc\xc5\x5f\xbc\xca\xdd\xf7\xaa\xae\x03\xf7\xab\x58\xf0\xf9\xea\xc2\xcc\xd9\xf9\x6a\x34\x22\x4a\x57\xb9\xb2\xf7\x9c\x81\x70\xec\xf1\x57\x3c\x29\x81\xe5\xa5\x7f\x2f\x92\xd2\xb2\xbb\x8f\xf2\x5c\x33\xbb\x25\x15\xce\xc7\x92\x80\x1b\xfd\x47\x90\xc6\xc2\x31\x73\xff\x75\x75\x6b\x0e\x3d\x2b\x7a\x42\xc8\x55\xa6\xfc\x83\x2f\xe8\x53\xf2\xd0\x0d\x21\x5f\xc8\xa5\xe1\x9e\xe1\xac\x0d\x9e\x5e\x9e\x34\x80\x66\x80\x01\xd4\x75\xd7\x81\x45\x15\x80\x75\x4c\x56\x65\xb1\x7b\x25\xea\xae\xb1\x54\x3f\x64\x8d\xa9\xae\xe1\xf7\xf7\x75\x4b\x78\x88\x30\x99\x01\x3c\xa6\x35\x06\xd1\x3b\xaa\x62\x0b\x69\x7b\xa7\xc7\x71\x39\x78\x5f\x24\x8d\x90\x66\xc5\xde\xe0\x99\xb4\x59\x79\x69\x07\xad\x4f\x2b\xdb\xc6\x2d\x8a\xe5\xb9\x71\x8a\xa5\x57\xa1\x9e\x39\x58\x98\x66\xd8\x60\xbb\xfa\x82\x0c\xcf\x53\x8c\xc7\x74\x46\x48\xe8\x7a\xfa\xa5\x13\x15\x05\xd3\x65\x67\x0b\x1c\x30\x5b\x61\x93\x60\xd2\x67\xfb\x14\xa0\xe2\x91\x7b\xa6\xb2\xf5\x60\x5f\xd9\x0a\xbc\x99\x73\x15\x34\xe6\x51\xd5\xf2\x44\x6d\x14\xb0\x83\x22\x2b\xc2\x17\xd5\xd2\x00\xab\x1e\x0e\x89\x0c\xd8\x29\x1d\xe3\x04\x56\x41\x63\x3f\xf8\xc6\xaa\xc9\x5a\x13\xad\xb6\xf3\x1b\xc9\x9e\x72\xe7\x9d\x1f\xaf\x02\x71\x0c\xee\x95\xc3\xa0\xc6\x95\xa9\xb2\x59\x94\x68\x65\xb0\x01\x61\x72\x34\x61\x8e\x63\xe7\xfd\xfd\x2c\xb0\x27\x33\x75\xac\x36\x54\x80\x77\x5d\xfd\x95\xb1\x29\x03\x4e\x04\x85\x23\x0a\xae\x50\x75\xc7\x06\xbb\x31\xfe\x95\x51\xe7\xe7\x3d\x57\x40\x8e\x37\x3f\x73\xed\x93\x01\x9a\x3f\x54\x70\x38\x24\xd9\xa4\xa8\x56\xe5\xbe\x2e\x6e\x40\x11\x65\x8e\x11\x17\x4c\xa5\xe6\x4b\x11\x4d\x64\x60\x4d\x80\xf3\xda\xe0\x72\x9a\xd9\x9b\xe9\x50\x1e\x0e\x43\x5b\x49\xc0\x40\x10\xe7\xe5\xcd\x54\x0a\x20\xc7\x41\x95\xa0\xd9\x32\xd7\xe1\x97\x50\xa3\x12\x97\x8a\x9c\x27\x15\xb8\xc4\xf6\x53\x6c\x8e\xa7\xcc\x38\x0a\xa7\xc6\x9d\xa0\x4e\x4f\x9c\x4d\xf1\x59\x75\x04\x70\xda\x8c\xd0\xfd\xff\x27\x23\xf6\x45\x8d\xff\xb2\xc1\xfa\x92\xb1\xfa\xf2\x09\xba\x67\xc0\xdc\x48\xe9\xa4\x63\x45\x7d\x5f\xfc\x10\xfe\x3f\xe4\xfd\xdb\x92\xdb\x46\xba\x28\x08\xdf\xf3\x29\x8a\x88\x36\x7e\x64\x23\xc9\x22\xab\x24\x95\x0a\xac\x2c\xfe\xb2\x2c\xb7\xdd\x96\x25\xb7\x25\xb7\xdb\x8b\xc5\xd6\x80\x40\xb2\x98\x16\x88\xa4\x81\x44\x49\xe5\x22\x23\xf6\xfd\xc4\x44\xec\x47\xd8\x17\x73\x3d\x0f\xb1\x9e\x62\xae\xd7\x93\x4c\xe4\x97\x07\x64\x82\xac\xb2\xec\xd5\x7b\x47\xcc\x9a\xba\x40\x11\x89\x3c\x1f\xbe\xfc\xce\xdf\x40\xf8\x93\x28\x11\xdf\x14\xe1\x82\x8c\x25\x32\xe0\x58\x34\xe2\x4c\x62\xe3\x2a\xc9\x68\xc6\xc7\x51\x31\x65\x89\x8a\x6a\xde\xde\x43\x4b\x32\x9a\x2c\x2f\x1c\xa6\xc4\xd2\x71\xcc\x1d\xe5\xa4\x9e\x2d\xe7\x10\x1a\x3e\x5a\x91\x8f\x65\xd4\xe0\x5c\x4f\x08\x42\xd3\x22\x0c\xa3\x5c\x02\x1e\x95\x7b\x65\xfb\x2a\x7f\xc5\x19\x4a\xe0\x23\xdb\x81\x92\x8c\x6c\x50\x35\xd6\x78\x8d\xc9\x4e\xe4\x78\xd5\xf2\x28\xa2\x9c\x34\xba\x51\x5d\x7f\x4c\x32\xc3\x9d\xcb\x15\x87\x43\x75\xa6\x76\x3a\xb3\xdd\x46\xea\x1b\xc9\xb0\xec\x97\xa4\xee\x5c\x52\x2e\xd7\xa1\x54\x8f\x54\xae\xf8\xde\x6c\xbb\x1a\xb0\xbd\xef\xca\xa8\x46\x08\x37\x80\xe6\xc9\xa4\x46\x26\x35\x48\x61\xa1\x1b\xa2\x95\x7f\xfa\x85\x1a\xc1\x1a\xdf\xf8\x2b\x30\x38\x91\x9f\x6f\x2e\x47\x61\x58\x3b\x63\xf7\x26\x5a\x33\x1c\x67\xcb\xb9\x1a\xab\x8a\x70\xbe\xb7\x37\x20\x83\x1a\xa7\x12\x4c\x28\xbc\xae\xd7\xd6\x7a\x03\xd5\x6d\xb4\x99\x0f\xea\xe9\x5f\x8d\x45\x0a\x36\x2d\xb0\xfd\xee\xa1\x5b\x33\x8e\x85\x7b\x6b\xea\x08\x1a\x95\x66\x37\x55\xfa\xbc\x54\xd0\x5d\x20\xb1\xcc\x15\xd6\xa1\xb4\x40\x6f\x43\xdd\x69\x02\xee\xb4\x9d\xbd\xc8\x55\x4b\x53\xaa\xfc\xa9\xdb\x6e\x7d\xef\x39\x06\x3f\xc0\x77\x23\x62\x06\x24\x58\xfd\x2e\x88\xe9\x90\xe5\x1d\xd7\x39\x00\xae\x5b\xe6\xf4\x08\x02\x93\x80\x6d\x90\xb3\x28\x70\x3f\xe9\x58\x1f\xaf\x58\x54\xc9\xfb\xc8\x5e\x48\x6c\xa7\xe8\xe2\x92\xe8\xfb\xa8\xd3\x00\xbc\x96\x2d\x53\xad\x8b\x14\xec\x43\xa8\x4a\x41\xa8\x72\xc6\xe6\x9a\x5d\x95\x22\x9a\x98\x72\x35\x19\x4d\xea\x8b\xb4\x2d\x57\xb7\xcb\xd2\x90\x74\x56\xcf\x71\x41\x46\x93\xc2\x9a\x5d\x4c\xe2\xb8\x90\x54\x38\x9f\x15\x73\x7b\x4f\x37\xe6\x04\x18\xf5\xb8\x23\xda\xe3\x76\xf9\x61\xc7\xa7\xf2\x2a\x9e\xb1\x39\x49\x9d\x40\x9c\x76\xe2\xdf\x3a\x32\x49\xda\xbd\x12\xdd\xbb\x7e\x3f\x1c\xb5\x8a\x43\xad\xd6\xbf\x65\xed\x44\x14\xf5\x7c\xca\x07\x56\xba\x6d\xf1\xb9\x73\xdd\x7f\x72\xfd\x1e\x21\xd4\xa9\x5f\x38\x95\xff\xec\xa3\x8d\x3e\x44\x1e\x8c\x93\x51\x9b\xf5\xdb\x7b\xb2\xaa\xdb\xc2\xcb\xfa\x75\x27\x38\xb9\xcb\x82\x1a\x08\xef\x15\xc2\xfc\xf6\x49\xd5\x0d\x29\x4b\xb5\x84\x05\x03\x3e\xa1\x7e\x72\x89\x41\x28\xdb\x21\xac\x82\x3b\xa3\xed\x16\x46\x30\xf8\xb9\xd4\x8e\x55\x4c\xe8\x9b\x01\x57\xce\x7a\x54\x11\xc1\x31\x93\x50\x79\xbb\x85\x51\x0c\xbe\x85\xec\x46\x63\x4d\x92\xf9\x2c\x1f\xc8\x63\xd2\x8e\xe1\x8b\x8e\x81\xfd\x1b\x79\x48\x3b\xeb\x5d\xda\x7b\x81\x61\x13\x11\xd6\x91\x46\x44\x4c\x39\x82\xb2\x87\xbe\xa5\xb9\x4c\xbc\xc1\xa9\x1a\x47\x02\xbd\xd3\x77\xe8\xd7\xa5\xbc\xee\xcd\x46\xbd\x18\x41\xf8\x44\x62\x13\x0e\x60\x84\xaf\xdc\xa5\x81\x8e\xf7\x47\x0e\xe6\xff\x72\xff\xf3\xd8\xf9\xfc\xe5\x7e\xa8\x3f\xa2\x70\x3f\x84\x53\x39\x6e\xde\x1d\x77\x8a\x1e\x3a\x95\xed\x89\x04\x7d\xcf\xbd\xd1\xab\x1c\x85\x3d\x8b\x6a\x79\x47\x08\x67\x72\xb1\x0a\x2d\x3e\x53\x4b\x6b\xcf\xab\x5c\x61\x86\xf0\x52\x65\x11\x1c\x97\x6a\x31\xdb\x0c\xdf\xca\x0c\x2a\xe6\x63\x76\x49\x46\x61\xb8\xbc\x20\xa3\xed\x36\xbb\x80\xdf\x97\x04\xe6\x51\xbd\xb5\x9d\xf2\x77\x71\x18\xb2\xce\x11\x30\xad\x55\xe8\x92\x8c\x12\xe7\x6d\x84\xb6\x5b\xd5\xcc\xef\xac\x0c\x46\x57\xa2\x0b\x53\x9d\x79\x1f\xd9\xa8\x93\xfd\x91\x4b\xd1\xfc\xea\x5f\x40\x13\x41\x60\xb5\x27\x88\x9a\x83\x31\x68\x1d\x3b\xb4\x1a\xaf\xb6\xfc\xe7\xde\x59\x34\xeb\x5a\x92\x5f\xc1\x69\xb0\xd9\x4b\x84\x94\x53\x91\x80\x1b\x87\xb6\xe8\x0f\x0e\xe4\xb9\xf4\xc8\x4e\xeb\xd3\xc9\x75\x3f\x61\xee\x00\x60\x84\x94\x4e\xa6\xdf\xf4\x47\x61\xba\x01\xed\xc7\xe3\xb6\x07\x5f\x79\x9d\x7f\x13\x86\xa2\xbb\x15\xab\x3d\xe4\xd7\xbb\x5a\xd8\x32\x8a\x4a\xb8\x59\xf6\x4f\xa1\x83\xb9\x29\xa0\x62\xe7\x5f\xdd\x5d\xa6\x40\xcb\x42\x0c\xc3\x91\xc9\x1b\x86\xe5\xde\xb2\x2b\xa6\xe3\xdf\x8d\x03\x7b\x67\x39\xed\x80\xfe\xee\x22\xee\xaa\x6d\x10\x14\x6b\xc2\xb2\xf2\x8e\x04\x4c\x90\x99\x1b\x28\xa9\x9c\x29\xe0\x8f\xa5\x76\xab\xe0\x91\x70\x95\xc5\xee\x24\x0a\x59\xdd\xb7\x2b\x65\x7b\x1d\xfc\xb7\x1d\x78\x17\x9e\x79\xf3\xed\xc2\x36\x39\xb1\x12\x34\x3b\x9f\xef\x01\x75\x7d\x76\x68\x22\x99\x87\x1c\xe9\xa9\x60\x40\x8a\xc8\xa7\xc1\xa2\xe4\x99\x65\x07\x27\x1a\xfc\x67\x1d\x1a\x21\xb2\x4b\xc0\x9c\x25\x60\x3c\xfa\x50\x22\xfc\xe1\x0f\x6b\x0e\xdc\x2b\x97\xed\xb5\x7a\x54\xa3\x89\x8e\xa7\xdc\xe1\x78\xc4\x31\x45\x6e\x3a\x44\x55\x54\x3c\xbe\x5e\x47\x7d\x00\xed\x76\x7e\x27\x0f\x08\x56\x3d\x1d\x27\xcd\x91\x81\x0d\x03\xd1\xfd\xe1\x4c\xfe\x52\x92\xd7\xc3\x97\xe0\x5f\x58\xce\xf9\x21\xb2\xd1\x39\x39\x47\xac\x3c\xaa\x50\xd5\xb5\x50\x80\x48\xc4\xb2\x95\x59\x39\x27\x80\xfd\xf5\xba\x9a\x19\x25\xcf\x29\x11\x0e\x47\xeb\x47\xdb\xc4\x77\x2c\x12\xe8\x22\xd2\x9a\x15\xc0\x85\xf4\x83\x3d\x81\xab\x53\xcf\x53\x34\xc4\x84\xa3\x0a\x6b\xaf\x1c\x40\xf4\x17\x23\xf7\x32\x8a\xba\x5a\xc0\x68\x91\x11\x2d\x60\x34\x68\x99\x16\x97\xc2\x72\x9a\x4c\xea\x50\x7f\xcd\x23\x4f\x8d\x17\x53\x18\x82\xd5\xed\x08\x4c\x44\xda\xe4\xa8\xa2\x05\x78\xc2\x9e\x04\x3d\x3a\x74\x1c\x6c\xcb\xdb\x38\x26\x81\x0a\xf0\x33\x00\x4f\x28\x47\x83\x20\x16\x7b\xde\xbc\x5d\x7f\x32\xc1\xe6\xe3\x04\xac\xa0\x6d\xcc\x19\x5d\x8d\x0a\x2b\x75\xe4\x96\xf7\x23\xcb\x7a\xe5\xbf\x95\x54\xaa\xe5\xb6\xd3\xb4\x6e\x2a\x8a\x9f\xf3\x08\x3c\xb0\xe0\x99\x1a\xcc\xdc\x4c\xa0\x43\x46\x68\xc1\xab\xca\xe0\x2a\xae\xba\x71\x4c\xe5\x21\xf9\xa5\x44\xf8\x97\x07\x0f\xc9\x21\x15\x1a\x2b\x68\x34\xe1\x75\x8c\xe0\x5a\xc5\x78\x23\xcf\x58\x54\x39\x02\xf9\x32\x0c\x85\x1f\x3d\x82\xb9\xa8\x2c\x43\x42\xe2\xdf\x50\x83\x04\xf9\x1e\xbb\xaf\x27\x2c\xc7\x3b\x32\x20\x45\x87\x93\xd6\xe2\xaf\xbf\x94\x3a\xc6\xd0\x47\x16\x55\x6d\xb8\xa6\x11\x44\xab\x84\x58\x5f\x5c\x69\x42\xec\x19\xcc\xc3\xe6\xad\xf0\x80\x23\x2c\x94\x9a\x86\x0d\x08\xb4\x03\xfd\xe0\x5f\x3e\x5d\x98\xbf\xd2\x11\x81\xbd\x99\x72\x66\xa5\xe7\xe4\x6a\x05\xe2\xa5\xed\xfd\x80\xf6\xca\x30\x8c\x60\x0c\xa6\xe3\x71\x09\x1a\x1a\xdf\x88\x48\xf8\xb1\x0f\x0e\x07\x00\xfa\xb1\x8c\x94\x65\xcb\x0e\x21\x0d\x17\x7e\x32\x70\x61\x0f\x22\x28\xae\x28\xfd\x28\x08\xc5\xcf\x55\x1f\xb0\x51\x2e\xd4\xbd\xac\xa6\x3a\xe8\x50\x32\x76\x4e\xfc\x37\xda\xb8\xde\x65\xd5\x02\x95\xd4\x9e\xdf\x3f\x75\xd9\xab\x13\xc7\x35\xa2\x52\xcd\x3b\x8e\xa6\xc9\x3f\xb7\x57\x75\x8c\xc0\x79\x42\xb4\x48\xb3\xf7\xd7\x15\x6f\xca\x7c\x80\xa6\xd1\xd5\x9b\x18\x1d\x1b\x0a\x53\x79\x4b\xa4\x84\x5a\xcb\xa3\x4a\xa9\xf2\xa1\xd8\x24\xe9\x84\xb8\x72\xb4\xf7\x8c\x53\xd8\xd9\x78\x3e\x0d\x74\xc8\x6d\x1d\x4d\x42\xfd\xd6\x8a\x2a\x62\x56\xce\xa7\x42\x81\xbc\x93\x79\xe2\xc4\xef\x08\xa0\x8f\x35\x0a\x62\xf9\x25\x96\xaf\x7f\x92\xaf\x48\xab\xca\x4a\x08\xb9\xdd\xc2\xff\x98\x04\x47\x2a\x5b\x7b\x08\xdb\xf9\xf8\x9b\x1b\x84\x65\x51\xa4\xe5\x7b\xb9\x24\x2d\x38\xb3\x49\x9a\xa8\x71\xfc\x47\x9a\x79\x73\xbc\x50\x46\x4e\xc8\xcd\x23\xe5\x38\xb2\xad\x61\xda\x4d\x88\xb4\x93\x49\x94\x68\x4d\xea\xb6\x5b\xff\x70\x6c\xa1\xfc\xc3\x39\x1e\x29\xae\x7d\x09\x4e\x6e\x47\xf3\x4e\xf3\x15\x82\x46\xcc\x01\xa4\x43\xf0\x24\x6b\xc5\xce\x42\x69\x21\x6b\x7d\x55\x2b\x78\xd9\x13\x9c\xca\xda\x8e\x82\x58\xb9\x3e\x8e\x83\xa3\x65\xca\x0a\x9a\x1f\x09\x7e\x94\xe6\x37\x69\x99\xd1\xa3\x1a\x54\xe5\x87\x81\xb3\xb7\xfe\xea\x76\xda\x24\x32\xc7\xa9\x61\xad\xdc\xc8\x69\x0d\x48\x5a\xe6\xc9\x12\x54\x2f\x6b\x1d\x39\x68\xa8\x75\x29\x23\x84\xe5\xb1\x4e\xb8\xb2\x07\xd1\x9e\x36\xe9\xb4\x01\xdd\x37\x9e\x53\x9c\xa1\x24\xdb\x81\xbc\x88\xe3\x54\x5d\x33\xb8\x26\xea\x63\x4f\x90\x97\x34\x4a\xb1\x09\x87\x8a\x0b\x89\x13\xa7\x5a\x1e\x26\x69\x9b\x5a\xb4\xe2\xe5\x4a\x52\x32\x72\xe4\xb7\xa5\xa4\x28\xe8\x47\x81\xf7\x9c\xd9\x28\x8e\x55\x09\xbc\xb4\xd9\x5c\xf1\x42\x97\x4a\xbd\x7d\x98\xad\x50\x18\xf6\x97\x43\xca\x8b\x08\x4d\x90\x1e\x1c\x51\x03\xe3\xe4\x1f\x65\x54\xe3\x25\xce\xc0\xd9\x42\xa3\xd8\x1b\x0c\x54\x1b\xac\xfe\xeb\xb4\x49\x58\xe4\x4c\xe3\xbf\x39\x44\x20\xb0\x49\x35\xd3\xb6\x1a\xba\xae\xdb\xf5\x11\x51\x3c\xbf\xb6\xc7\x6e\x96\x76\xfc\x23\x9c\x29\x68\x60\x87\x7a\x68\x94\x38\x77\x2a\x72\x7d\xc1\x87\xe1\x4c\x96\x56\x0e\x99\x03\x15\x46\xf6\x4f\x65\xf4\x37\x49\x1d\x97\x08\x73\x34\x69\x27\x40\x9e\xa4\xa5\xd2\x3a\xb7\x75\xed\xfb\x64\x9f\x46\x35\xe9\x8f\x71\x1a\x86\x15\x53\x38\x3a\x86\x42\x48\xfd\xb3\x71\x59\x71\xa3\x43\x8c\x34\xe4\x4f\x65\xf4\x0f\xd9\xe0\x12\x97\x38\x97\x8d\x62\x4d\xbe\xae\x48\x2e\x61\x8b\xdc\xa9\xbd\x15\xac\x51\xb0\x1e\x04\x71\xd4\x4c\x57\xb1\x3c\xfa\x4d\xb2\x52\x78\x78\xbf\xde\x6e\xb3\x3e\x69\xb4\x7b\xd8\xe2\x42\x2f\xd6\x04\xb1\xa8\x20\x36\x2a\xa1\xd9\x9f\x45\xfc\x98\x3e\x42\x38\x43\xbd\x8c\x34\x3b\x6f\x61\x77\xb6\x82\x0d\xaf\x27\x7e\x48\x7a\xa8\x41\x2e\xbe\x2a\xdf\x63\xd1\x46\x2e\x7f\x41\x36\xce\xf9\xa6\xac\x6b\xeb\x38\x33\x21\x8b\xe4\x16\xfe\x0b\x2d\xe7\x98\x93\xbb\x5d\x4f\x6d\x06\xb3\x2f\x4d\x94\x2b\x5c\xed\x05\x91\xd2\x82\x2a\x0c\xf1\x3a\xb8\x6b\x53\xa8\x02\xf4\x52\x27\xcc\x69\x91\xde\x3a\x08\xb1\xdd\x60\xdd\x2c\xb3\x74\x8e\x1b\x32\x96\xfb\xc7\xeb\x87\x72\x15\x7f\xc0\x65\x7e\xcb\x11\x6b\x26\xc5\x85\x71\xba\x5b\x12\x36\x6b\xe6\xbd\xf2\x12\x68\x0d\x8d\x41\x34\x78\x8c\x29\x66\xb3\x26\x1e\xcf\xe5\x1e\x6a\x62\x72\x82\x9d\x45\x90\x64\xeb\x0e\xf8\x6c\x6c\x19\xd5\x43\xbe\x49\x7f\x69\x28\xb2\xc5\x2b\xdc\x0c\x2a\x4c\x21\x90\x92\xee\xae\x44\xdc\x10\x6e\x48\x15\x9f\x28\x7e\xb9\xa2\x75\x2f\x9a\x49\x15\x93\x13\xc3\x4d\x61\xb3\x2a\x1e\xcf\x7b\xea\x1f\x89\xf8\x94\xcb\x3d\x92\x04\x01\x8a\x3b\x75\xed\xe4\x3c\x9a\x2b\xe3\x0e\x8c\x91\xea\x84\x61\x10\x9d\xd3\x3a\xe1\x43\x7d\x71\x81\x08\xdd\xdc\x5c\x53\x1d\x6d\xb3\x5d\x69\xc1\xbc\x40\x1a\xca\xaa\xa9\xde\x6e\xcd\xaf\xd9\x68\xde\x27\x9d\xb5\x37\xf3\x06\x70\xea\x19\x83\x30\x8e\x8c\xe8\x3d\xe3\x91\x8b\x0f\x1f\xb2\xa6\x8c\x9c\x3d\x53\xa2\x04\x5c\x6a\x41\x53\x60\xe0\x0e\x16\x65\xaa\x1b\x84\xe9\x1f\x98\x0d\xf5\x10\xa7\xfa\xdb\x73\xf5\x4a\xec\x87\xc4\xff\x00\x26\x80\x5e\x4e\x15\x0c\xa3\x22\xc4\x84\x2e\xab\x78\x29\x98\xb2\x1d\x74\xdf\xe3\xd8\xba\xae\xd1\xad\xb7\xf3\x56\xed\x9d\x10\x67\x28\xfc\x21\x30\x06\x1b\x5f\x6b\x33\x10\x0e\xe0\xa4\xdc\x6e\x47\x58\x03\xae\xbf\x95\x11\xc3\x15\x9a\xf4\xb9\x01\x59\xff\x90\x29\x5c\xde\x04\x5e\x29\x89\x83\xff\x54\x22\xfc\x93\x8b\x69\x42\xac\x1a\x7e\xc0\xf4\xee\x19\xd3\x4a\x77\x0a\xb9\x61\xe4\x6e\x87\x19\xf3\xfc\x18\x71\xd6\x3a\xe4\x56\x61\x41\xeb\x3f\xef\x3b\xfa\x77\x44\xc7\xc2\x83\xc2\x53\xc6\x92\x92\x59\xec\x62\x46\xe7\x12\xef\x9e\xd1\x39\xb1\xce\x98\xa2\xe3\xab\x37\xf1\xf1\x35\x1c\x8b\x3f\x85\x81\xab\x73\x90\x32\x97\x7f\xd3\xaa\x85\x59\xb9\x0c\xae\xa7\xc1\x26\xcd\x73\x56\x5e\x0f\x20\xbe\x6a\x72\x34\x1c\x6f\x3e\x06\x4a\x19\x07\x97\xe4\x6e\x53\xd1\x44\x16\xdc\x54\x34\xc0\xb3\xca\xd7\x20\x53\x6e\x1e\xb1\x8e\x11\x96\x54\x38\xe3\x45\x32\xc2\x1b\x5e\x27\x23\x9c\xad\x13\x8a\xc1\xdc\x1d\x4c\x9f\xea\x24\xe2\xdb\x6d\x0d\xfa\x30\xd7\x54\x28\xa7\xee\x9d\x08\x57\x68\xd7\x13\x86\xae\x72\xcd\xf8\x15\x16\x44\x22\x88\xc6\x21\xa6\xea\x9f\x3e\x0d\xc9\x08\xb5\x2a\x0d\x29\x6e\x08\xd3\xdf\x67\x6c\x30\x9e\x27\xea\xc6\xef\x95\xb0\x25\x46\xb8\x54\x4a\x5d\xef\x69\x49\x6a\x86\xff\xe2\x86\xb0\xd2\xed\x4a\xa2\x3b\x25\xdf\xb3\xa8\x41\x2a\xd2\x80\x2d\x50\x30\xe7\x0d\x83\xfa\xfe\x70\x9d\x6e\xc8\x6c\x8e\x97\x2c\x6a\x70\x89\xe1\xdc\x37\x58\xf4\x9d\x10\x39\xf4\xa3\xa0\x55\x99\x16\xdf\xaa\xea\xf3\x30\x7c\x06\x75\x23\xdc\x74\x4f\x94\x9f\x60\x60\x0d\x74\x42\xff\x26\xbf\xf2\x7b\x72\xe1\xb2\x85\x4d\x41\xb0\x57\x7b\x0b\xad\xa0\x3a\xfb\x76\xa0\x42\xfb\x0d\x3b\xf9\x54\xa5\x08\x03\x03\x6e\x9d\x6e\xac\x42\xab\x7a\x83\x7b\x68\x84\xe5\xfc\xea\xcd\x30\x94\x44\x74\x99\x2b\xbb\xd2\x1f\x0f\xcd\xb3\xaa\x8d\x4d\x23\xbb\xe4\x30\x9b\x50\x21\x6e\xd3\x20\xf4\x2a\xb9\xdb\xa1\x24\xf2\x73\x6a\x8d\x58\x27\xc1\x15\x46\xca\x04\x84\xa3\x4e\x3d\x7e\x19\x95\xe4\x94\xba\xdb\x29\xa4\xa1\x36\x3c\xf2\x76\x38\x60\xe0\x25\x07\x33\x89\x8e\xaf\x16\xd9\x7a\x20\xd2\xc5\xd5\x42\x1f\xe4\xa2\x55\xae\x42\xdb\x6d\x31\xfc\xa5\xa1\xd5\xad\xf2\x95\xc1\xab\x30\xec\x24\x44\xc1\x50\x95\x0f\xf4\x0e\x33\x6d\xd8\x4a\x48\xa0\x32\x40\x08\xb5\xc1\x2a\xcd\xde\x07\x96\x8e\xf9\x07\xd8\x0f\x54\xb4\xcc\x4d\x44\x20\x8b\xd6\x4a\x98\x45\x91\xfa\xd7\x56\xb6\xbf\xe0\x9d\x0c\xfb\xeb\x8c\xcb\x16\x86\xd4\xcc\xc1\x4c\x6b\xdc\x18\x49\x98\x9a\x20\xed\x8e\x4d\x9d\x70\x38\x78\x1a\x26\x1d\xdd\x9d\xe2\xdd\xf1\x35\x6e\x18\x4a\x04\xce\x40\xf9\xf1\x40\x7c\x46\xbc\x24\xfd\xb1\x24\x52\x32\x63\x93\x89\xee\xae\x5b\x53\xef\xac\xa2\xa9\xa0\x5f\xe8\xd7\x2f\xab\xf4\x5a\xd9\x24\x5b\xc8\x90\xab\xd0\x97\x19\xac\x8f\x8a\xab\x93\x2b\x6f\x13\x24\x03\xbf\x8e\x91\x40\x78\x43\x56\xd3\x95\x22\x49\x07\x79\x62\x65\xde\xb9\x6c\x77\xa3\x25\xe2\xdd\x36\xdf\xd2\x8f\xc0\xa1\x89\x0a\x4d\xd3\xe6\x38\x8f\x37\x08\xf5\x78\x18\xa6\x17\xe7\xd3\x6b\x6f\x83\x3b\x1a\xb7\xeb\x39\x42\x89\xff\x55\xc7\xdc\xd6\xc7\x84\x6a\xcb\xb3\x0d\xaf\xe3\x0d\x86\x6f\x19\x2f\x62\xb2\xd1\x69\x64\x03\x78\xeb\xca\x04\xeb\x5c\x46\x79\x4c\x36\xf1\x18\x07\x57\x22\x20\x64\x35\x1b\xcd\x55\x9f\x6f\xd4\xa4\x76\x9d\x70\xde\x92\x9b\x01\x54\xf9\xd9\xcd\x24\x5a\x93\xfb\x3a\xba\xe6\xd1\x2d\xc2\x81\xdd\x89\xa8\xa3\xe4\x5b\x71\x08\x47\xb7\xa9\x68\x6d\x2c\x11\x03\x84\xd7\xfb\xaa\xc0\x42\x39\xc1\xb9\x52\x6e\x06\x61\x28\xb7\x6d\xf8\x9b\xab\x4a\xf7\x79\xbb\x0d\xae\x4a\xdb\xff\x07\x3a\xd6\x16\x99\x06\xff\xf1\xdf\xff\x8f\x20\x09\xfe\xe3\xbf\xff\x9f\x07\xc2\x67\xee\xf5\xd8\xf6\x05\x9a\x30\x7d\x19\x43\x5f\x64\x83\xde\x6c\x1d\x0e\xe4\x19\x41\xd1\xdf\xa8\xf8\x8f\xee\x00\xd3\x9d\xc3\x5b\x61\xac\xb6\x02\x58\x42\xef\x54\x9f\x75\x11\xeb\xf8\x1b\x0c\xfb\xee\xdf\xa8\x4a\xd0\x7c\xa0\x6a\x4b\x58\x5d\x9b\xce\x87\x61\xb4\x04\x05\x52\xbd\xe5\x4c\x0e\x90\x5c\x6c\xb7\xe5\x76\xcb\xb6\xdb\xe5\x76\xdb\xa8\x9d\xb6\x20\x95\x04\x0c\xc0\x11\x5b\xc4\xa4\x54\x5e\x05\x17\x31\xd1\x3a\xef\xef\x5c\x95\xf3\xeb\x39\x5e\xe0\xa6\x35\xb8\x0f\xc3\xe8\x9d\x8e\x70\x5a\xab\x69\xd8\xbf\x20\xde\xa1\xdd\xe1\x0f\xd7\xc8\x41\xab\x1b\xe6\x2b\x83\x04\x47\x01\xf6\xb5\x04\x07\x27\x4a\x14\x1f\x93\xea\xb3\x93\x29\x20\xf9\xff\xfe\x3f\x02\x6b\x1b\x0d\x6c\xa1\xb6\xbe\x82\x79\x0c\x7d\x8b\xdf\x59\x2a\x5c\xc3\x3b\xc2\xa6\x2c\x0e\x8e\xb2\xf5\x00\x38\x7c\x83\x05\xaf\x72\x5a\x05\x49\xd0\x4d\xb1\x60\xa9\x20\x15\xcc\x7f\x46\x8a\xd8\xca\xa4\x27\x6d\xdf\x95\x22\x8c\xe5\xb9\x2e\x0d\xfe\x92\x13\x31\x5b\x82\xdc\x36\x1f\x0a\x7e\x59\x84\x61\xae\xd5\xb2\x0a\x05\x0e\x76\xe6\x13\xc9\x2c\xbf\xaa\xd3\xdf\x1e\x24\x58\xe6\x9c\xcc\x3d\x28\x10\x64\x50\x28\x1f\x6e\x10\x56\x5a\x50\xb8\x24\x26\xa3\xc9\x56\x10\xf9\xcb\x95\x80\x66\x7b\x48\x79\xbf\x0c\x43\x57\x9c\xd4\x63\x4a\x38\x7f\x68\xeb\x61\x86\xb0\xcc\x0f\x87\xcf\x0f\x8a\x56\x52\x9a\xd7\xcf\xd5\xa2\xdb\xd3\x16\x86\x11\xdb\x6e\x23\x46\x0e\xef\x87\xce\xe6\x37\x4e\x2a\xd4\xde\x43\xe0\xf5\x76\xef\xec\x2a\xa9\x4f\x80\xab\x21\xcb\x91\x76\x88\xb9\xdf\x9b\x9a\x8a\x1f\x4a\x13\xe6\x36\x62\xf7\xed\x54\x86\xda\x43\xd3\xce\xd1\x92\xf9\x51\x62\x7d\xc9\x20\xd3\x41\x99\x31\x27\x23\x5f\x6f\x01\x56\x0c\x17\x38\xc3\x4b\x9c\xe3\x95\xf5\xf7\x84\x37\x64\x84\xd7\x24\xfa\x48\xc6\x38\x08\x10\xbe\x51\xd7\x1c\x5b\x46\x37\x84\x6c\xd0\x5d\x43\x0a\x92\x91\x25\xa9\x49\x10\xe0\x5c\xad\xe5\x0d\x19\x1f\xb7\xd2\xb0\x5b\x7c\x2d\x11\xd3\x05\x19\x4d\x16\xae\x5a\xc4\x42\x75\xf1\x1d\x29\x67\x8b\x39\xfe\x40\xde\x19\x85\x44\x57\xa7\xf0\x83\xd6\x29\x7c\xa7\xa5\x84\x9b\x30\xfc\xe0\xac\xf7\xf4\x5a\x2d\xf4\x07\x94\xbc\xd3\xdb\x73\x63\x85\x88\xef\x40\x88\x28\x9f\x97\x9b\xed\xf6\x83\x2b\x8a\x7c\x07\xa2\xcf\x8d\x53\x2f\x9a\x6a\x91\xc4\x3b\x90\x43\xbe\x03\xd1\xe3\x26\x0c\x6f\x2e\x55\x42\x74\x03\x5f\x70\x41\xe4\x2c\x7c\xf0\x90\x9a\x46\x31\x79\x9d\x44\xc8\x51\x2b\xee\x58\x54\x4f\xeb\x38\x98\x28\x2a\x1f\x92\xe5\xd7\x56\xdb\xdd\x1b\x5c\x94\x99\xba\xda\x0c\x32\xbb\x51\x87\x37\x5d\xbf\x09\xc3\xe8\x76\xbb\x8d\x6e\x1d\x9c\xb1\xcd\x85\xdf\x81\x5a\xed\x07\x05\xec\xc2\xb0\xbf\x04\x30\xfb\xc1\xc4\x65\xf6\xe6\x22\xea\xe7\xa0\x6a\x62\x74\x02\xf1\x07\xad\x6a\x92\x93\x77\xc8\xcc\xeb\xa5\x9e\x0a\x6d\x3f\x29\x27\x03\xa4\xb2\x12\x0a\xdc\xc2\x26\x52\xeb\x7b\x6b\xd6\x77\x11\x93\x13\x74\x3b\x5b\xc4\xe3\xb9\xea\x6d\xa1\x06\x76\x3b\x5b\xcc\x15\xff\x3e\xdf\x6e\x73\x3b\xfb\x6d\x0d\xd7\xee\x0e\xc9\xc0\x82\x02\x5f\x9b\x42\x39\x68\x36\x2a\xbd\xd1\x11\x82\x0d\x28\x31\x36\x99\x2b\x32\x8a\x8e\x82\x4f\x57\xf1\x18\x74\x28\xd1\x60\x63\x55\x1d\x7d\x45\x48\xdc\xe6\x36\x86\x58\xb9\xd9\x13\x51\x4e\xfa\x63\xb4\x93\x43\xdb\x5c\x12\x83\xfd\x98\xed\xfc\xa2\xe5\x12\xad\xf0\x0d\xd2\x87\x41\xdb\xd0\xbd\x21\x9b\x78\xed\x28\x34\xf5\x35\x93\xf0\x35\x79\x73\xf9\x62\xba\xb6\xa0\xf0\xc5\x60\x83\x92\x75\x4f\x58\x22\x2e\x12\xf8\x35\x4e\xa7\x69\xdc\x24\x0d\xce\xf0\x26\x7e\x6d\x0c\x81\xc9\xcd\xb4\x48\x82\x00\x2f\x71\x0d\xb3\xfd\xe6\x92\xbc\x40\x77\x6b\x62\x2a\x93\x55\xe1\x0d\x79\xd1\x53\x50\x79\x43\xde\xe0\x8c\x04\xc1\x6e\x6d\x1d\xb2\x71\xcc\x49\x35\xfb\x18\xc7\x73\x84\x53\xc2\x59\xa4\x5e\xb0\x70\xb0\x10\xa4\x2e\xfa\x23\x33\xca\x8f\x64\x3c\xf9\xd8\x6a\x50\x7c\x94\xab\xe9\xf5\xb6\x53\xb9\x44\x46\x54\xc5\xe3\x4e\xc5\x0e\x13\x20\xf7\x6f\xb9\x11\x69\x35\xc4\x41\xa1\x42\xeb\x88\x87\x61\x10\x10\x47\x0f\x57\x6e\x51\x09\x26\xb7\x5b\x0f\x6f\x3a\x18\x79\xdb\x69\x6d\xc5\x1e\x96\x07\x1c\x55\xd3\x6a\x46\xe7\x1d\x7d\x4a\x0e\x82\x3f\x86\xee\xa2\x7d\xb7\x70\x0a\x76\x12\x81\xa9\xc3\xc5\x02\x18\xee\x32\xb5\x54\x28\x56\xcd\x51\xd2\x5f\x81\xc7\xa5\x39\x19\x5a\x72\x0d\xf7\x34\x7c\x86\x5f\xfa\x2b\xc8\xcb\x30\x68\xfa\x55\x48\xab\xd1\x97\x53\x99\x98\x8c\x7b\xac\x95\x78\x6b\xd3\x29\x86\x76\x48\x75\x18\x97\x60\xe1\x42\x21\xb8\x41\x79\xad\x88\x31\x97\x01\xd3\xe5\x91\x52\xcc\xc9\x6c\x0e\x2e\xbf\x25\xa2\xc2\x5b\xd5\xd9\x9f\xca\xa8\x98\x55\x73\xcc\xa2\x0a\xe1\xb2\x15\x15\x28\x0b\x99\x5a\x2f\x1a\xd8\x93\x01\x40\xd4\x7c\xd9\x4c\xe9\xfe\xd4\x5a\xce\xb1\x54\xaf\x8d\x7e\xcd\xe5\x82\x16\x48\xde\x2c\x51\xe1\xb8\x43\xdf\x10\x95\x63\xa0\x85\xa1\xad\x2d\x83\xb1\xd3\x8b\x46\x38\x8d\x46\xb8\xb0\x0e\x32\xb0\x71\x15\x65\x2b\x92\xd3\xcd\x7e\xa5\x03\x9b\xc7\x1a\x1b\xe9\x2d\x67\x48\x2b\xb7\xa2\xc1\x18\xf5\x78\xb4\xc4\x4b\xd5\xfd\x15\xc2\x1b\xe5\xfb\x1d\xaa\xd6\x12\xeb\x8d\x24\x34\x0c\x87\xc1\xf6\x48\x7f\x5c\x23\x4b\x5d\x64\x84\x28\x05\xf0\x31\x21\xb6\x17\x3c\xca\x70\xa6\xf8\xa5\xe6\xe0\xd7\xc3\x6c\x85\xe2\x3c\xf6\x92\x1b\x99\x88\x75\xaf\x23\xd9\xcb\xb1\xdb\x4b\xe4\x2d\xcd\xe1\xb2\x72\x9d\xf0\xbd\xed\x15\xb3\x91\x5c\xce\x11\x52\xee\xd7\x9d\x31\x00\xb2\x6f\x47\xf1\x49\x9d\x97\x95\xc5\xcb\xfd\x3e\x98\xfa\xbd\x09\x8c\xc7\x78\xa3\xc6\x75\xf7\x29\xbd\x93\xeb\x91\x1f\xaa\x7c\x85\x7a\x7b\xf3\xd2\xdb\x5c\x8e\xf7\x56\x4c\x36\x38\x18\xdf\x33\xce\x87\x0e\xc8\x86\x59\x67\x40\xca\x15\x09\x75\x5d\x1f\x10\x4f\x4f\x5a\x90\x11\xa0\xfb\x1d\x0d\x70\x3a\x13\x9e\x7d\x17\xae\x62\x50\x07\xb7\x66\xef\xae\x08\xbd\x6d\x79\xdd\xb6\x9c\x49\xcc\xae\xa2\x25\xa1\xdd\xb6\x0e\x59\x0c\x19\xce\xf4\xac\x9c\xf7\x44\x4c\xd8\x30\x5b\x35\xe5\x7b\x49\x7a\x47\x48\xb6\xcd\x8c\xee\x01\xf3\xac\xce\x94\x1b\x18\x70\x15\xe6\x4b\xf5\xf7\x06\xbc\xdb\x30\xd7\x15\x98\xad\xfe\x5e\xff\x48\x8e\x3e\xef\x0e\xab\x75\xf9\xba\x2c\xbd\x58\x26\x5d\x28\x54\x12\x1a\x8b\x49\x75\x51\xb6\x76\x55\xcc\x75\xec\x50\xcd\xdd\x79\x1b\xb4\x83\xfa\x06\xf4\x40\xff\x8d\x45\x0c\x6b\x57\xc4\x81\x67\x4a\xaf\x65\x35\xb0\xca\xd8\xe0\x3b\x9d\x38\x00\xf2\x60\x49\xa4\xba\xb8\x35\x3e\xa4\xa0\xac\x0d\x48\xb2\xdf\x79\xab\x21\xa1\x15\x31\xcc\xac\xa9\x3d\xe3\x36\xaf\xf7\x38\x45\xc6\x4a\x55\xb4\xbf\xba\xd9\xa8\x63\x2c\xd7\x89\xcd\x21\x17\x1a\x82\x72\xb8\x4b\x88\x99\xa0\xd5\xab\xbd\x8e\xb5\x55\xc8\x39\xa5\x30\xa7\xe0\x73\xb6\x72\xdd\xa0\xd0\xb9\xab\x91\x88\xd7\xbf\x6f\x8d\xe5\xc6\x79\x68\x6d\x6d\xa6\xc1\x9e\x31\xa4\xb7\xc5\x0f\x58\xd3\x79\xdf\xe1\x06\x22\xa5\xbb\xa7\x41\x03\xe2\xc2\xaa\x26\x5b\x3c\x4c\x60\x36\xa0\xe0\x88\xd6\x9c\x34\x30\xc9\x73\xfa\x18\x51\xcc\x3d\x15\x96\x01\x49\x07\xa5\x3d\x1e\x84\x70\xe3\x35\xc5\x76\xcf\x88\xfa\x40\xd7\x08\x97\xee\xb1\x00\x76\x71\x24\x06\x84\x23\xab\x83\x32\x52\x40\x94\x0e\x94\xdd\x4e\x3b\x0b\xe2\xe2\xe4\xf1\x5e\xe5\x5a\x7c\x36\xde\x6e\xfb\xfe\x97\xd9\x68\xee\x84\x34\xdd\x30\x64\x8d\xa6\x66\xfa\x1c\x98\x9d\x1c\xd5\x7a\x40\x16\x66\xcc\xe4\x0d\xb1\x61\x51\x8d\xe6\xb8\x5b\xa9\xb7\x7b\xee\x39\x0e\xbe\x6d\xcb\x3d\x8b\x25\x90\x5f\xb5\x98\xb7\x3d\xa2\x9f\x72\x6e\xe4\xa4\xb4\x6c\x1e\xec\x9f\xa5\xee\x21\x38\xdc\x87\xd2\x03\x13\xb6\x2b\x20\xb4\x66\xfb\x1b\x86\x70\xb8\x99\xd9\xd0\xe9\x9b\xee\x92\x8e\xfe\x52\x87\x21\xf3\x80\xd7\xe5\xe3\x51\x3b\x1f\x29\xf1\x3f\x7e\x76\xf2\x38\x3e\x79\x8c\x6b\x92\x4e\xea\x0b\xff\xd3\xc4\x28\xbd\xeb\xa5\x60\xde\x29\xaf\x71\x1d\x93\x93\xc7\x08\xf5\x98\xdd\x86\x8d\xd5\x0f\x3b\xb4\xfb\xe2\xb8\xc4\x23\xdc\x20\xdc\x78\x0b\xa8\xab\x25\xac\x03\x6b\x52\xbd\x25\xc0\x39\xc7\x9b\x0d\x2b\x8a\x08\xed\x14\x5d\x40\x07\x84\xcb\xc3\x6e\xbf\x74\x5c\x26\xf6\x0f\xee\xd0\x0b\x32\x1e\x21\x57\x9b\xad\x97\x73\x13\x9a\x9c\x7e\x80\x9b\x6b\xaf\xcf\xb4\x5b\xc9\xe0\x31\x7e\x8c\xb4\xfa\x92\x1a\x05\x44\x46\x52\x20\x02\xfe\x63\x6a\xe7\x43\xb8\x2a\x9c\x15\xb9\xe6\xb6\x90\xad\x16\x83\x21\x4b\x27\xd1\x9e\xd7\x78\x8c\x47\x12\xe4\x03\xce\xa1\xb6\xd2\x5e\x57\x51\xcf\x9e\x67\xd9\xb6\x73\x82\xb0\x98\x63\x4a\xca\x9d\xb0\xdf\x8d\x05\xf5\x87\x15\x2b\x0e\x0c\xee\x72\x3c\x72\x7a\xe3\x4d\xfc\x6f\x43\xe9\x7f\xdd\x1e\xb7\xee\xc2\x1c\xa0\xc8\x07\x14\xbe\x32\xf0\x59\xf0\x2a\xa2\x38\xc5\x15\xf2\x74\xdb\x35\x1c\x4b\x0f\xc1\x31\x6e\x3c\xb8\xdd\x30\x32\xc2\xb7\x8c\xbc\x1e\x7e\xc1\xb3\x03\xde\xb2\xed\xee\x71\xa3\x31\xdf\xb2\x56\xa4\x4c\x3f\x1c\xdd\xb6\xc4\x98\x56\x1d\x02\xf5\x59\x32\x42\xf2\xfe\x51\x2e\xab\x25\xc6\x64\x60\xd8\x4c\x63\xbb\x81\x12\x11\xa3\x39\x9a\xeb\xbd\x0d\xb6\xf0\xe6\xd6\xb5\x1a\xc3\xc4\x79\x05\xc7\x1e\xda\x4b\x96\xeb\x00\x4b\x25\x14\x34\x2d\xff\x42\x4b\x5a\x81\x20\x81\x8c\xad\x45\x38\xe8\x04\x90\x4a\x13\x5d\x2b\x1a\x55\x78\xa4\xf5\x9c\x6b\x5a\x90\x2f\x80\x15\xa7\xc0\x95\xf2\x9f\x00\xfb\xea\x2d\x8b\xd4\x95\x20\xac\x7f\xba\x1b\xa6\x4f\x21\xcf\x4d\xc4\x70\xe1\xf8\x39\xa4\x1b\x52\x1a\xe7\x5e\x82\x96\xb9\xec\xda\xa1\xd8\xfc\x91\xd6\x1f\x05\xb1\x96\xa4\x73\x6b\x89\x26\xe0\x95\x56\x13\x57\xfe\x3f\x18\x16\x5c\x3e\xe8\x47\x91\xd0\x1d\xc2\x7f\x51\x5e\xfe\xb0\xea\x6d\xcd\xd1\xae\xe7\xc6\x33\x27\x1f\x78\xe4\xde\xf7\xf8\x2e\xe3\x65\x2d\xaa\x26\x13\xbc\x4a\x6e\x19\xec\xd8\xbd\x0d\x5b\x4d\xd5\xe0\xd4\x2e\x1a\xb4\xcb\x80\xc5\x40\xd2\xa9\x89\xf3\xd9\xfd\x68\x7f\xc6\x16\xf2\xe3\xf6\x8e\xb8\x17\x27\x1c\x75\xc3\x93\xc9\xd3\x50\xc5\x26\x34\x59\x8b\x4a\x7b\xf0\xdc\xeb\x16\xae\x90\xc1\x51\x0e\xa1\x27\x1e\x66\xe0\x15\x44\x3b\x6c\x1c\x37\x1f\xf0\x3d\xfa\x5a\xcf\xfd\x6f\x0c\xd2\x50\xcc\xe0\x1d\x9e\x4e\x45\x22\x94\x37\x7c\xba\xdd\xba\xdb\xc0\x04\xcb\x42\x3b\x5c\x9b\x36\xff\x21\xa2\x68\xbf\xdd\x15\x75\xe7\x75\x84\xb0\xf5\x3d\xe8\xb5\x3b\x18\xf7\x5e\x56\xee\xee\x10\x3a\x44\x75\x85\x5f\xe8\x9e\x57\x5e\x84\x6c\xa4\x36\xce\xfe\x36\xb3\x0e\x65\x4c\xc7\x02\x2c\x69\xf2\xa4\x3f\xda\x81\x53\x32\x67\x9b\x09\x04\xee\x49\xdc\x98\x60\xc9\x3e\x8c\xf8\x4a\xf7\x8b\x62\x50\x8f\x34\x4a\xc5\x15\xa9\xa6\xe6\x55\xee\x23\x5c\xaa\x05\x38\x54\x8d\xc1\x12\xdf\xe8\xa1\x98\x72\x14\xe1\xb6\x46\x6f\xea\xab\x69\x99\x94\x6a\xea\xab\x7b\xa7\x5e\x07\xff\xbb\xcf\xd3\xac\xfe\xfc\x15\xb8\x25\x72\xfc\x86\x8a\x30\x54\x7c\x0f\x5b\x83\xca\x92\x74\x1c\x74\x7d\x69\x7b\x69\xc0\xa1\x59\x0a\xda\x36\xfe\xaa\x59\x2f\x3a\x01\x1f\x5b\xbd\x1e\x27\x9f\x6a\xe2\xef\xac\x6e\xd2\x62\x3f\x28\xb2\x89\x42\x00\x95\x75\x41\x49\xdb\x2a\xc2\x60\x49\xb6\xc3\x72\x2e\x9e\xf3\xe6\x01\xe7\xa1\x80\xea\xdb\x70\xce\xf7\x65\x83\x0c\x3b\x6c\xac\xc2\x1e\xcc\xe6\x6e\xd6\x1d\xd6\xce\x4c\x0e\x0d\xbc\x5d\x5d\x18\xbd\xf2\x91\x73\xaf\x3b\x60\x5a\x18\xfb\x97\x08\xb9\x2e\xfa\xc1\xa9\xbb\x0a\x38\x0f\x27\x11\x82\xd1\x25\x26\x2e\xbd\x4a\x52\x2f\x49\x40\x4b\xc8\xb4\xdd\x06\x82\xab\x1f\xe6\xfc\x42\x50\xf5\x36\xbe\x38\xf6\xa3\xe2\xdd\x3b\x7b\xb4\x18\x56\x72\x1f\xd7\x3b\xbc\x17\x06\xf2\xa1\x42\x07\x62\x46\x02\x84\xd0\x73\xe0\x83\x08\x75\x32\x7e\xa1\xfe\x99\xd8\xdf\x04\xd3\x15\x90\xc2\xdb\xed\x08\x25\x14\x59\xcb\x1a\x84\xb0\x1b\x5f\xf0\x93\x2a\x77\x0f\xdc\x76\x4b\x91\xae\xa7\x13\x61\xf8\x60\x55\x3f\xec\x57\x25\xc2\xd0\x05\x08\x87\xaa\xaa\xf7\xea\x42\x77\x5f\xe9\x32\xbf\x3a\x35\x1d\x2c\xfb\xf9\xed\x27\x94\x5e\x18\xa7\xc4\x76\xcd\xe0\xa0\x88\xbd\x09\xda\xef\x8a\xf1\xbd\x61\x40\xea\xdd\x01\x63\x7a\xea\x06\xda\x64\xb3\x72\x4e\x74\x8c\x47\x3b\x0f\xf2\x6a\x53\x1b\xb1\x9d\x5c\x6a\x42\x71\x22\x83\x33\x81\x6f\x4f\x47\x4b\xd5\xf2\xc2\xb0\x77\x0c\x54\xe4\x84\x16\x4a\x7f\x4d\x23\xa6\x27\x57\x8e\x27\xcd\x7f\x63\x95\x1c\x6a\xbc\x9d\x10\x43\x64\x00\xee\xec\x84\xa9\xbc\x6f\x57\xf8\xed\x97\xb8\x74\x98\xbe\x6a\x95\xaf\xdd\x8d\x77\x90\x10\x35\xf7\x9c\xb3\x2c\x0a\x35\xa8\x0e\x44\x2e\x35\xf7\x42\x25\xa7\x4d\x07\x78\x85\xdf\xf2\xf4\xa2\x9e\x20\x62\x2a\x0c\x03\x86\xa1\x84\xed\x7e\xef\x25\x7d\x4d\x0f\x9e\xfa\xfd\x18\xb5\xff\xb2\x3e\x83\xab\x08\x10\x44\x9b\x88\x3b\xf7\xf5\x0e\x61\x30\x54\x61\x56\xa3\x75\x87\xbb\x11\x32\x1f\xa0\x43\x66\x73\xec\x78\x5b\x75\xd6\xdc\x71\xd4\x54\xce\xd8\x9c\x68\x63\xa5\xfd\x20\xb8\xa5\xac\x72\xbb\xb5\x61\x3e\xf7\x9b\x3f\x7c\x72\x3a\x7d\x30\xed\xdb\x68\x44\x7e\x3f\x9c\x20\x34\xe6\xd3\x8c\xcf\x7b\xe5\x8c\xcf\x89\xc2\x78\x52\x33\x8b\x82\x27\x29\xcc\xe2\x3d\x28\x0e\x38\x03\xd6\x58\x4e\xb5\x33\x92\x8d\x30\x84\x6b\x00\xdc\x30\xfd\x46\x57\x7d\xc7\x5c\x9c\x30\xac\x34\xdd\x2d\xd6\xea\x84\xfa\x14\x4a\x97\xfd\x8b\x2a\xaa\xb5\xd3\x02\xcc\x11\x2e\x64\xc2\xcf\x55\x54\x83\x4a\x84\x22\xd5\xc0\x2f\x33\xe6\xa4\xc0\x41\x0a\x46\x4f\x01\x21\xfa\x44\x66\x84\x3a\x4b\x23\x6b\x04\x1b\xf8\x4c\x05\x58\xcd\x0c\xf8\xb8\x18\xf5\xca\x59\x6a\x21\xcc\x72\x5a\x24\x0d\x5e\x4e\x9b\xa4\xd0\x7c\x7e\xf7\x6b\x83\x5b\x5f\x27\x32\xe9\x67\x79\x52\x69\x07\x90\xec\xd4\x1e\x2d\xb1\xd0\xca\xcd\xa4\x3d\xcb\x13\x7e\x29\x57\x6a\x30\x40\x06\xf3\x04\x47\x07\xbd\x7a\xfa\xa3\x3e\xfc\xb5\x26\x0f\xb2\x75\x18\xfe\xa8\xf9\x90\xd9\x1a\x00\x40\x53\xe6\xdc\xdf\x15\xe8\xee\x57\x5d\x8d\x0a\x24\xa7\x51\xcb\x07\xb2\x41\x2c\x39\x5b\xdb\x3d\x70\xad\x5b\x2d\x78\x45\xd0\x35\xff\x76\x11\x15\xae\x4e\x17\xa9\xa9\x78\x01\x37\x0c\x98\x0c\x39\x30\xc0\xa5\xe8\x28\x00\x8b\x03\xf9\xfc\xcb\x5e\xe5\xde\x61\x4d\x4f\x76\xb9\xae\x9d\xb0\x0c\x3a\x17\xee\x0a\x04\x1c\x17\x7f\x00\x5a\x54\x8a\x04\x22\x6a\xa7\x6c\xb7\x71\xac\x38\xb1\xa6\x84\xe7\x16\x50\x97\x51\x69\x7e\x29\x13\xed\xe8\x0e\x16\x4a\xa8\x85\xa8\x76\x12\x6f\x6b\xbd\x08\xee\x45\x74\xe8\x50\xc7\x6e\xda\x70\x9d\x7e\x6c\x69\x6f\x70\xee\x5f\xbd\x7f\x2e\x29\xf2\xbd\x5a\xba\x74\xba\x66\x83\xc8\xbe\xb5\xa9\x91\x5c\x14\xdc\x4d\x3d\x84\x4e\x52\xc3\x82\x35\x3d\x91\xd8\xea\xeb\x0d\xd9\x4b\x7b\x43\x8b\x43\xc9\xaf\x01\x52\x10\x87\xd4\x37\x5f\xaf\x6d\xbb\x3b\xcc\xea\xce\x60\xa8\xbf\xe0\xfb\x65\x08\xb1\x20\xbd\x33\x62\x75\xe1\x1c\x98\x64\xbd\x26\x72\xb9\x92\x97\x9d\xf9\x95\x89\xea\x24\x1c\xf8\xa8\x92\xd1\x0e\x90\xc9\xbd\x8a\x7d\x8c\xfa\xd3\x17\xb1\x27\xa0\x55\xf2\x52\x05\xd4\x2e\xad\x31\x26\xb2\xd1\x9c\xb1\xd0\x6d\xab\x4c\x7a\xfb\xed\x65\xdb\x49\xcc\x04\x3c\xa8\x17\x69\x7d\xf8\xba\xd0\x93\xf9\x8d\xa5\x26\x03\x65\x63\x2d\x11\xdd\xa9\xf9\x9d\x04\xa0\x87\x13\xe0\x3d\x4a\xba\x24\xca\x41\x24\xe4\x6e\xed\x3d\x93\xa0\x35\x32\x55\xdf\x5a\xab\xd0\xfd\xfa\xcd\x97\x0f\x55\xba\xd1\xf6\xa2\x12\xff\x9b\x95\x73\x40\x04\x5f\xf1\xa8\xd2\x76\xa0\x90\xd6\x86\x14\xa3\xad\x39\xa8\x66\xb2\x81\x6d\x69\xcf\xca\x62\x0c\x25\xbd\xe6\x37\xf4\xff\x8d\xf3\x80\xb5\x2c\x92\x2d\xa3\x3e\x6b\xc7\xdd\x3a\xb8\x00\x1f\x87\x4a\x94\x6a\xd9\xb3\x1c\x1c\xda\x88\x6c\xa5\x66\x4e\xe9\x06\x71\x3f\x10\x5b\x4a\xb8\xb6\xe3\xe5\xad\x1d\x2f\xcc\xa7\x1b\x75\xd0\xd8\xfe\x46\xfa\x57\x18\xa6\x7d\xab\xc7\x36\x35\x76\x56\xa6\x40\x8a\x94\x79\xe7\xae\x33\xfd\x7a\x0f\x2a\x77\x09\x0f\x4d\xfe\x3e\x93\x43\xab\x6b\xd0\x0f\x47\xbf\x28\xfb\x71\x08\xab\x08\xce\x76\x8d\x0a\x45\x18\x32\xcf\xf2\x9f\x5b\xdd\xbf\xb4\x60\xd7\xe5\x8f\xda\x8a\x5d\x1e\x9a\x6f\x94\x90\xc2\x18\x9e\xfb\x3e\x66\x8d\x85\x8e\x36\x7b\x07\x63\x02\x63\x02\x3f\x9b\xa3\x76\xce\x8d\xd4\xe3\x99\x98\xea\xf0\xf2\x0c\x25\x95\xe1\x96\x5b\x52\xa2\x6a\x49\x09\xc7\x4e\xbe\x2d\x8c\x10\x1e\x61\x66\xe4\x25\x44\x60\xae\x22\x3b\xb4\xca\x15\x25\x51\x7e\x1e\x68\xcb\x94\xed\x81\x03\x5c\xc3\xd1\x8f\xff\x52\x82\xce\x62\x09\xce\x1d\xb4\x0a\xa8\x11\x84\x80\x03\xd9\x03\xa6\xeb\xee\xea\x60\xb6\xb3\x4c\x24\x4d\x42\xb4\x67\x45\xaf\x97\x2f\xde\x35\xee\x73\xb1\xf1\x8b\xbc\xcf\xda\xd4\xbe\xc1\xcb\x07\x78\x4a\xb8\xc2\x15\x78\x4b\xb9\xdd\xd0\xed\x36\x80\xfb\x31\x50\x24\xf9\xe7\x5a\x53\x31\x39\xe4\x78\xed\xce\x75\x78\x9d\x08\xab\x97\x28\xc0\xf7\xc2\xdb\xdb\x0d\x9d\x9a\x45\x4b\x04\xc2\xad\xa3\xc4\x04\x98\x4b\xed\x3b\xf6\x9d\xc4\x25\xfd\x31\x56\x9e\xd0\x55\x46\xf5\x1b\xef\x79\xce\x56\x5f\xf7\x92\x77\xbd\xce\xa0\x29\x71\x86\x2d\xb7\x6d\xab\x80\x89\x76\xd8\xba\xa2\x7d\x76\x28\x20\x16\xd0\x3b\x86\xb7\x14\xb9\x35\xa1\xc3\xce\x42\x1d\x67\x23\x3e\x55\xe4\x88\x3c\x24\x05\x34\xb1\xfb\x57\x69\xfb\x31\xad\xde\x49\x95\xc9\xf3\x9e\x9f\x98\x4b\xf3\x45\xe8\x5d\x6e\x7c\xc2\x28\xc9\x8c\xcc\xa4\x9d\xe2\x38\x24\x92\x1d\xdb\xde\xbe\xf0\xe6\xc4\x65\x59\xf6\x1c\x12\x80\x7a\x3e\x8b\x2c\x13\x5c\x07\x5d\xd0\xb6\x30\x9e\x77\x68\x2b\xa6\xf9\x74\x4f\x5a\xb5\x21\x23\xb4\x27\x2d\xa5\x3f\xd6\x80\x52\x2a\x23\xba\x0f\x2a\x7e\xe5\x25\x24\x2b\xb0\x46\x48\xa3\x95\x35\x41\x6b\x4c\x66\x32\xe1\x0d\xed\x07\x62\xfd\x70\xab\xa4\x4b\x22\x86\xd9\x6a\xbb\xad\xc2\xb0\x5f\xb5\x0e\xb5\xb6\x5b\x4d\xf1\x37\xdd\x39\xb5\x59\x76\x71\xcc\xc0\x83\x3d\x20\x2d\xcf\x8a\xa2\x33\xab\x46\x84\x38\x9b\xef\xcf\xd6\x41\xb8\xf6\x7b\x76\x8d\x76\xb6\x68\x48\x68\x08\x11\x29\xbb\x0b\x29\xa6\x83\x08\x61\xba\xc3\x1b\x5e\x7f\x59\x71\x45\xd7\xec\xef\x66\x8f\xad\x8e\x4b\x72\x88\xd2\x36\x97\xcf\x03\xc3\xb0\x0a\x0a\xcc\xe5\xb5\xc7\xe0\x08\x91\x5f\x5a\xef\x0e\x82\x50\xdc\x1f\xf5\xe8\x80\x70\x1c\xc7\x95\xec\xa1\xd9\x66\xc0\xb2\x17\x48\x47\xdf\xfa\x28\xbb\xdc\x65\x93\xaa\xe3\xd7\x39\x71\xd9\xaa\x67\xa2\x0d\x68\xff\x43\x30\x14\x50\x9c\x5c\x5d\x8c\x5a\x0f\x38\x37\x6d\xfc\xa2\x4f\x1d\x9f\x33\x33\x7a\x7f\x7b\x68\x85\x88\xb5\x6a\xb9\x19\x2e\x0c\x48\xec\x70\xc6\x37\x87\xb0\x4c\x2d\x14\xfc\x54\x89\x4a\x57\xa2\xb6\x57\x40\x0f\xa3\xe5\xcf\x1f\x96\x0d\xbe\xe5\x1b\x2c\x5c\x39\xa1\xf0\xe5\x86\xf2\x23\x2d\x5a\x3e\x84\x70\x84\x74\x40\x43\x78\xd8\xf4\x17\x74\x23\x56\x64\x0f\xc9\x86\x64\xa8\xc9\xa0\xd9\x91\x91\x25\xb4\xae\xd7\x61\x72\x54\x58\x88\x2f\x78\xe6\x5f\x5c\xdb\x6d\x04\x86\x86\x3d\x07\x23\x57\x63\x3d\x2c\xf8\xe9\x19\xa5\x52\xb3\xff\xe1\x34\x2b\x6e\x21\x75\x14\x9e\xfb\xe0\x91\x03\xe2\xae\xf2\x0b\x25\x80\x95\x3f\x0d\x50\xeb\xae\x09\xae\xc0\x5c\x8c\xe7\x86\x44\x71\xe7\xff\xf0\xb4\x53\x7d\x1b\xc9\x71\x82\xb9\x9f\x21\x24\xdc\x49\x42\xd8\xaa\x23\xbd\xa7\xb9\xc4\x5d\xda\x37\xd7\x06\x32\xe7\x59\x52\xe2\xb6\xc2\xc4\xad\x7d\x87\x94\x13\x34\x28\x03\x59\xa1\xd3\x26\xbc\x46\xd2\x1f\xdd\x5b\x72\x8e\xef\x15\x3d\xba\xae\x34\x2b\x03\x79\x4b\x22\x8c\x36\x92\x75\x40\xd9\x7a\x62\xd7\x0e\x28\xc1\x11\x48\x9b\x26\x14\x43\x67\x43\x21\x9c\x87\x61\x04\x41\x20\x11\x8e\x53\xb0\x8c\x04\x79\x45\xfb\x0b\xf0\x0b\xd4\x2b\xad\xcf\x30\x98\x84\x1a\xe1\x56\x25\x6f\xb7\xdb\x45\x25\x7e\xa1\x1d\x03\x01\xb8\x6d\x4a\x39\x07\xdd\x1d\x24\xa1\x80\x2b\x8d\x7f\x0d\x32\x20\x15\xfb\x09\x3b\xb3\x8d\x0e\xe8\xfc\x74\x23\x98\x08\x2f\xd0\xcc\x7b\x9a\xcf\xc4\x1c\x3c\x7f\x11\x47\x5f\x52\x96\x30\x8e\x6b\x31\xa8\x5f\xda\x8e\xa9\xce\xe2\x37\x65\x64\x3b\xae\x75\xd5\x55\x60\x5c\xb3\x43\xfc\x2d\xa2\x6f\x82\x99\x72\x59\xbb\x1f\xbb\xa5\x32\x16\x3e\x2c\x47\x3b\x84\x95\x05\xd9\x41\xc1\xbc\x1f\x25\x81\x1c\x22\x99\xd5\x46\xf7\xe9\xe4\xbd\x8c\x2a\x19\x98\xe8\x20\x26\x7f\x69\xce\xae\x0f\x98\xdf\xf9\xe2\xbd\x6f\x79\x7e\xaf\x44\x4c\x1e\x27\xc5\x29\xca\x99\x70\xa5\x5b\x7e\xb6\x6c\xbd\xc3\x2d\xeb\xf2\x5e\xe6\x82\x3e\x8a\x53\x6d\x08\x1b\x79\xe7\x33\xf9\x86\x5b\x99\x9f\x85\xf6\x0f\xa9\x71\xbe\xa1\x1b\x65\x27\xb9\xdb\x21\xec\xaa\x10\x0c\xa9\x09\x45\xe4\xa5\xca\x19\x51\x66\x81\x8c\x04\xf2\xe5\x48\xe1\xaf\x47\x0a\x45\x3f\x92\xd7\xc0\x91\x1d\xea\x91\xa3\x76\x10\x38\x91\xe8\xad\xfe\xd7\x82\x1d\xb1\xf2\xc8\x6d\x01\x79\xcd\x75\x1c\xd4\x2d\x18\x0a\xc3\x6b\x1e\x5d\x33\xbc\x60\xe8\x62\x14\x86\xd1\xeb\x36\xf7\x6c\xc1\xe6\x87\x22\x35\xee\x0f\x9f\x6a\x65\x50\x98\x06\x08\x58\x57\x5d\x83\x95\x57\x8d\x76\xbb\xc8\xed\x81\xac\x13\x21\x27\xb8\x91\xb5\xbb\x8a\x5a\x37\x2b\x11\x58\xc3\x29\x87\x75\xdd\x13\xa7\xb8\xc5\xe5\xde\x71\xb3\xfe\x50\xcc\xa7\x59\x0a\x14\x35\xf4\xa7\x4f\x98\x41\x06\x79\x18\xd6\x0e\x50\xeb\x49\xa4\xad\x91\xb0\x54\xe5\xc4\x0d\xc2\x54\xff\x2c\x71\x03\xc1\x11\x90\x71\xa9\xe7\x39\x85\xfd\xc0\x9c\x28\x02\xd9\x7a\x3f\x8c\xcd\xdb\x15\xab\x8f\x8c\xb9\xdb\x11\xab\x8f\xd2\xa2\xa2\x69\x7e\x2b\x57\xa8\xa9\xe9\x30\x40\x3d\x80\x2c\x44\x80\xe5\x07\xa1\xf8\xfb\x88\x22\xfc\x4c\x3e\x0e\x87\xef\xdb\x6e\xbf\xf0\x3f\xae\xc1\x7b\xa0\x7b\xbf\x48\x34\xda\xe9\xe4\x0b\xe6\x84\x17\x1f\x10\xcd\x79\x47\x17\xa3\xed\x56\x48\xd4\x1f\x90\x84\x03\x3d\xa7\x15\x95\x3d\x2e\xf9\x91\x6c\xff\x28\x88\x23\x11\x9b\xc2\x71\x20\x47\x20\x56\xd4\x0e\x6e\xe8\xec\xc0\x8a\xd0\x49\x5f\x45\x18\xa9\x27\x1e\xfa\xe9\x91\x2a\xbf\xa5\x9a\x25\x2e\x38\xba\xab\x08\xd3\x20\x4f\x0c\x08\xb7\xce\xa4\xb5\x3e\xae\x98\x3b\xb1\x39\x3a\xe6\x7b\x4a\x2a\xe2\xbb\x74\xfd\xad\x10\x34\xd4\x7a\xfa\x07\x84\xac\xc7\x88\x8d\x5a\x14\x71\xc2\x1d\x67\x69\xd9\x0a\x5c\xbb\x58\x32\xc0\xf9\x2c\xd4\x47\x8d\xf9\x73\x84\x2d\x86\x6f\xfb\xfa\x7a\xaf\xaf\xdd\x2e\xfa\x8e\x82\xda\xe0\x20\xca\xae\xa7\x53\xdd\x47\xcf\x45\x88\x18\x50\x47\x99\xd7\xc5\xff\xe9\xa4\x9c\x94\xc4\x28\xf0\xa1\xb2\xd5\x1e\x75\x02\x6e\x30\xc7\x4f\x24\xb1\x4a\x7c\x07\x9d\x9e\xb7\x3a\x7e\xb8\x52\xa1\xde\x6c\xe8\xb4\x92\x18\x3d\xc0\x49\x39\x11\xa4\xc4\x4e\xbb\xae\x47\x90\xb2\xdd\x05\x6c\xde\x27\x02\x5c\x17\x56\x31\xf1\xd2\xbd\x9d\x61\xb6\x40\x2c\xb4\xfa\x84\xed\xfa\x7b\xe6\xbb\xcc\x86\xcf\x3d\x9a\xe4\xbc\xa3\x38\xb8\xa7\x8a\xe8\xd9\x04\xec\xed\xcb\x76\x32\x61\x4b\x52\xc2\x7a\xad\xeb\x73\xd8\x97\xca\x64\xc0\xe9\x65\xeb\xf5\x5c\x29\x3f\xf6\xb5\x03\x6f\xe4\x49\x13\x3a\xc1\x19\x4b\x43\xe2\xea\x2f\x8e\xd2\x16\xb4\x9d\x6a\x55\x43\x31\x20\xa9\x6d\x20\x76\xf6\xc1\x77\x1d\xdb\xea\x11\xae\x24\x9d\x03\x4a\x2b\xc8\xac\x94\x25\x03\x0f\x36\xce\x48\x65\x1b\x57\x62\x35\x42\x4d\xb3\xad\x59\x84\x8d\xc9\xca\x89\x21\x69\x27\x7c\xc2\x49\x54\x11\x8e\xdc\x65\x56\x8d\xf1\xfb\xe7\x5b\xd2\xf3\xce\x7c\x03\x3d\x4f\x48\xd5\x36\x99\x9a\x26\x2d\xef\xc1\x0e\xf7\x7b\xe6\xfa\x91\x07\x5b\x30\x5f\x83\xc5\xa0\xf1\xca\x4c\x6c\x99\x9a\xe3\x23\x09\x08\x5b\xcb\xdb\xd6\x86\x04\x90\x17\x13\x47\x57\xe3\x32\xee\xab\x22\x5a\xc6\xc7\xa3\x36\x5e\xf4\xb7\x3c\x7f\xcb\xd6\xb4\x0d\x11\xff\x86\x16\x90\xe0\xe4\x31\x52\x91\x56\x48\xd2\x06\x7b\x76\x24\x24\x5e\x9e\x56\x68\x82\x35\x01\xe4\xcb\x73\x3c\x49\x02\xa1\xdb\xad\xe3\xf1\xf9\xb9\x77\x0e\x94\x74\x77\x6d\xe2\xc6\x80\x7c\xf7\xe7\x2a\x12\x5a\xbc\xfb\xa6\x0d\x69\xa3\x42\xca\x58\x26\xd7\x17\x0c\x38\xb1\x4e\xb8\x9b\x36\x92\x4d\x3c\x46\x78\x1f\xb3\xfc\x8d\x12\x1a\xd9\x74\x80\xcd\xcf\x76\xc3\x4e\x68\xab\x07\xce\x96\x51\xff\x46\x22\x5d\x5a\xa0\x66\x34\x6c\x87\x1b\xbe\x89\x5c\x5f\x02\xdf\x1e\x70\x35\xa5\x71\xce\x1e\xf3\x65\x75\x44\x51\xee\x1c\xa7\x24\x96\xd7\xdc\x17\xa9\x00\x8b\xb9\x88\x99\x25\x22\xe5\x76\xcb\xdc\xf5\x20\x62\xa8\xa4\xdc\x61\xd8\xfe\x8a\x82\x38\x68\xbf\x98\x70\xee\x23\x15\x21\x6c\x0d\xca\xf0\xed\xae\xb8\x4c\x07\x9e\xdd\xa5\xee\x1b\x30\x13\xbf\xa0\x45\x7a\xbb\xdd\x06\x7f\x3e\x58\x1d\x38\x95\xe1\xf7\xf8\x2c\x9e\x46\x3f\x1b\x89\x11\xc2\x37\xdc\xfc\x44\x89\x27\xd1\x0c\xc3\x7e\xfb\x4d\xcf\xe4\xb4\x4d\xf1\x33\x5f\x8e\x21\x44\x22\x08\x32\xbd\x0f\x83\x13\x23\xd6\x9c\x1a\x21\x15\xac\x82\xd7\xae\xf6\x82\x19\x31\xec\xcc\x66\x6b\x7f\x71\xc3\x23\xae\x05\x90\x35\xea\xed\x07\x31\x02\x0b\xd6\x36\xad\x96\x69\x53\x08\x2f\x05\xfb\x34\xb1\x85\xd5\x1d\xa8\xb7\xb7\xa3\xa7\xde\xc8\x26\x98\xea\x0d\x00\xd8\x26\x0c\x1b\x2b\x8d\xfd\x5a\x4e\x56\x4d\x0b\xac\x73\x60\x4e\xee\x74\x85\xc9\x4c\x57\x36\xc7\xed\x01\x4b\x98\x2f\x99\xd4\xa3\x56\x97\xf9\x84\x79\xd3\xc6\x5a\xb8\x30\x41\xfa\x53\xbd\x62\x4b\x11\x21\x5d\x70\x36\x6a\xe5\xc2\x7e\x86\x9d\x5b\x33\x18\x54\x38\x87\x3c\x8e\x99\x7f\xc6\xb1\xb7\xb3\x08\xf3\x80\x4d\xda\x4e\x3c\x73\xc1\x0c\xf6\x36\x34\xeb\x40\x17\xb3\xed\x70\xbd\xdd\x2a\x8f\x44\x7a\x83\xaa\x18\x6f\x0e\x0e\xf9\xb5\x07\x51\x6e\x38\x44\x7e\x08\xc3\x4a\x8f\x4c\xfe\xa2\xbf\x34\x69\x51\x47\x14\x02\x3e\x9a\x40\x66\xb6\x82\x2f\xf6\x4e\x6a\x37\xb6\x0a\xf8\x55\xd0\xd8\x8f\x95\xa3\x18\x35\x91\x0a\x61\x47\x75\x4b\xb1\x70\x14\xe6\x8a\x4b\x37\x7c\x5b\x25\xa9\x5b\x87\x01\x1a\x86\x91\xf6\x44\xd1\x6d\x8e\xdc\xed\x10\x9a\xf1\x39\xf1\xf2\x4b\x5c\x8d\x7b\x11\xdf\x5e\x19\x74\xa8\x4f\x0f\xa3\x40\xf8\xbe\x68\x75\x9a\xe1\xbb\xe7\xee\x7c\x2a\x24\xa9\xe1\x7a\xde\x45\x48\xc9\x1b\x74\xc4\xb2\xaa\x8d\x58\x26\xa6\x86\xa5\x32\x15\x60\x6d\x9d\x38\x1e\x70\x5f\xb2\x03\x66\x11\x7b\x7a\x73\xf6\xa6\xe5\x56\xc2\xc8\x0d\x5c\xd5\xbe\x27\xab\xe9\xcf\xd4\x0b\x99\x4b\x37\xcf\xf9\xe6\x56\xd9\x16\x70\x94\x70\xd4\xca\x1c\xd5\x7d\xad\x94\xb3\xc0\xb2\x4a\xd7\x61\x4f\x54\xbd\xeb\x46\x76\x4d\xdd\x90\xae\xca\xe5\x14\xce\x48\x3a\x6b\x34\x71\xa6\xca\xc3\x2d\x95\x69\xa8\xc0\x93\x6c\x28\xb8\xba\xa0\x94\xe1\xeb\x0e\xe1\x16\x71\x5c\x4a\xea\x23\x43\x51\x41\x96\xc6\xf5\xf1\x3f\xd5\xea\x46\x57\x79\x8c\xfe\x74\x8c\x14\x4d\x2b\xb0\x52\x0f\x8e\x8a\xd9\x78\x8e\xd0\xe5\x60\x1c\x86\xd1\x0d\x8f\x6a\x34\x5b\xce\x49\x36\x5b\xce\xb1\x32\x7f\x3c\x92\xbf\x25\x9d\x67\x03\xf3\xd8\x59\xfe\xd2\xd9\xb9\x95\xc6\xd9\xa6\xea\x5f\x4c\xca\x44\x5c\x18\x31\x82\x66\x1e\x83\x8d\x7b\xb6\x22\x2e\x9d\xf8\x2b\xbb\xcf\x29\xf0\x03\x51\xc6\x94\x99\x89\x5d\xab\x3b\x3e\xcc\xf8\x86\x01\xd3\x2f\x52\x99\x08\xb7\x6b\x15\x21\xa4\x3f\x93\xfe\xa8\x5d\x00\x25\x10\xe1\x1d\x5d\xb0\x3a\x8e\xd1\x97\xcc\x56\x3d\xab\x8d\x02\xa5\xee\x23\xee\x7c\x04\x2d\x29\xed\x05\x1b\x36\x82\xac\xde\x54\x6d\x40\xf3\x7e\xf4\x12\xfb\x4d\x47\x31\xa9\x2e\x1a\x27\x72\x9e\xfa\x4d\x56\x34\x72\x52\xe3\x12\x37\xc6\xaf\x01\xc2\x8d\xbc\x02\x20\x83\xc1\x21\x4a\x48\x93\x1f\xad\x99\xba\xb8\x20\xf6\x3b\xba\x4b\x49\x7f\x6c\x58\x64\xe9\x76\x1b\xd9\x98\x50\x23\x15\x2d\x9e\xc9\x75\x71\x30\x88\xcf\x7d\xca\xc9\x41\x5c\x4a\x62\x51\x17\xa0\x23\xdd\x40\x5b\x51\x39\xa8\xd0\x60\xdc\xfb\xd5\x5c\xc3\x3a\xf0\x0b\xfe\xb5\x55\xd2\xd0\x49\x3b\xc6\xa3\x5b\xed\x61\xe9\x07\x46\x5e\x0f\xe9\xbb\x4d\x45\x15\x02\xb0\x4c\x9b\x42\x90\x8e\x59\xad\xf7\x71\xda\x4d\x88\xe4\xbd\xad\x36\x29\x18\x17\x90\xfe\x78\x87\xbf\x52\xf5\xd6\x82\x6f\xbe\xab\xf8\x26\xbd\x56\x57\x88\x5f\x71\xe7\xeb\x74\x2f\x05\xaa\xce\xd2\x32\xa3\xc5\xe7\xcd\x62\x51\x80\x0c\xb9\xe5\xd2\xfc\xdd\xf5\xff\x60\x38\xe2\xb9\xea\xd5\x77\xaa\x8f\x34\x9f\xee\x27\x25\x23\x42\xbc\x2e\x83\xc2\xe0\x2f\x6d\x97\xbd\x7e\xfe\x20\x5b\xc1\x5f\x81\xea\xbe\x13\x10\x81\x79\x61\x93\x44\x5a\x5d\x53\x10\xcd\xd4\x55\xa6\xbd\x07\x39\x81\x0e\x3c\xaa\xe0\xc3\x8a\x65\xab\x7d\xaa\x60\x1c\xd2\xe1\xa2\x11\x82\x97\x53\x41\xc6\xc9\x89\xfb\x7a\x9a\x3c\xb2\xaf\x40\x40\x9c\x20\x84\x6f\x00\xc1\x13\x55\xf1\x0d\xbd\x0d\xc3\xb1\xa1\x2d\x4e\x25\x29\x21\xdb\xfa\x49\x0e\xc8\x9b\x74\x47\xbf\x39\xcd\x73\xc0\xf9\x5e\xb2\x5a\xc8\x0b\x1d\xed\x27\x01\xc5\xdf\x77\x62\xbd\x9a\x40\xed\x90\x0b\x79\x6f\x51\xc0\xcb\x20\x06\xcf\xe0\x8e\xa9\x1e\x1d\xbe\x53\x02\x6b\x08\x33\xee\xbc\xc9\xab\x6e\x12\x95\x33\x31\xdf\x6e\xe1\x9f\x23\x28\x00\x96\xec\x37\xf2\xce\x68\x67\xfb\x4f\x7b\x7e\x90\x6c\x55\x72\x12\xec\xcb\x4c\x58\xae\x45\x35\x85\x80\xe4\x1a\x29\x1a\x4d\x8d\x43\x2a\x94\x7c\xc3\x92\x72\xbb\xfd\x86\xc1\x24\xfd\x0d\x26\x69\xb9\x3c\x3c\x4b\x8a\xdd\xd9\x9d\xa8\x03\xa9\x07\xe6\x4a\xc5\x02\x33\x73\xe5\xbc\x75\xe6\xea\xa8\xbd\x2a\xf5\x30\xfb\x0a\x2a\x4c\x98\xeb\x60\x09\x82\xde\x80\xda\x2e\xa9\xd0\x9d\xb5\x90\x64\x78\x6c\x19\xf0\xf8\x1f\x72\x30\x35\xbb\x2e\xd3\xe2\x60\xf0\x38\x53\xbf\x0a\x7f\x68\xc4\xae\x0e\x37\xe6\x59\x55\xa5\xb7\xce\xbd\x0b\x53\xa6\x2e\x5d\xcb\x3b\xc5\x27\xe8\x50\x48\x9e\x6a\xc6\xe6\x9a\xdf\xaa\x5c\x80\xa1\x1d\xfe\x2b\xd3\x9e\x16\xcc\x3a\xfe\x1b\x3b\xd4\x9d\xb1\xdf\x1d\xb5\xc6\x98\x7d\x6a\x6f\x7a\xbf\x8a\x69\x49\x7e\x15\xc3\x5c\xd2\x2f\x34\x7f\x9e\x16\xc5\x22\xcd\xde\xd7\xc9\x5f\xd9\xb4\x24\x7f\x65\x49\x24\x9f\x92\x6c\xae\xa9\x90\xc8\x29\x6f\x44\x44\x39\x1e\x39\x76\xfa\x4a\x45\xb9\x72\x63\xe1\x68\xfe\x56\x1a\x55\x33\x3e\x47\xbe\xf7\x95\x43\x5c\x67\xea\x0e\x9f\x79\x30\x9d\x72\x2b\x34\xff\x2b\xeb\xd9\x69\xb9\x3f\xfc\x20\x9d\x89\xb9\xeb\xc7\x5d\x70\x5f\xc7\x65\xcf\xc4\x50\x9d\xfd\x3b\x70\x75\x2f\xb0\x0f\xa1\xf7\xd4\x31\xbb\x00\x51\x82\xd5\x1d\xc2\x80\x70\x57\x12\x59\x06\x6b\x42\x88\x28\xf5\x77\x16\x09\xc0\x9f\x33\x9e\xd3\x35\xb8\xe7\xfd\x1a\x62\xb4\x3b\xde\x95\xb9\x0b\xdd\x0e\x1f\xcc\x61\x06\xe6\x2e\xcf\x32\xc1\x6e\x98\xb8\x55\x51\xf5\x1c\xe6\xac\x56\x17\xf2\x73\x7d\xe5\xc2\x8e\x87\x32\x48\xe8\x71\xc8\xcc\x50\x87\x1e\xae\x40\x9d\x1e\x49\x92\x00\x56\x14\xde\xda\xfe\x97\xdc\xa3\x65\xd5\xae\x44\x16\x72\xb4\x19\x19\x37\x17\xa2\xd9\x91\x1d\xe8\x8a\xee\x7e\x62\x56\xa9\x09\xed\xb0\x97\xb5\x03\x63\xd0\xdd\xdf\xdc\xbc\x2a\xfe\x00\x27\xa7\x23\x9c\x72\xf2\x7a\xf8\x5d\x5a\xd7\xe4\x4e\xf0\x37\x3a\x9c\x41\x57\xb8\xe1\xb8\x4b\x86\xbc\xc1\x6e\x87\x6b\x4e\xee\x94\xf0\x3b\x91\x77\x70\xc3\xc9\x9d\xb1\xfc\xfb\xf3\x9a\x37\x35\x0d\x76\xb8\x70\x12\x63\x09\xc6\x02\xe7\x52\xcb\xb8\xd9\x21\x4c\x39\x7f\xdb\x65\xdc\x3d\x7f\x9d\x88\x43\xe8\x0e\x54\x99\xcc\x89\xd2\x05\x5b\xe3\x59\xe7\xb4\x09\x4c\xb5\x37\xeb\xa5\x1c\x5d\xc6\x9b\x52\x3c\xe7\x45\xb3\xee\x5e\x4f\x2a\x5a\x9d\xbd\x15\xe5\x0a\x2a\xca\x84\xa6\x95\x44\xaa\x67\xff\xbc\xaa\xaf\x9a\xd1\x28\x1d\xcd\x01\xa5\x86\x8f\xc6\x4f\x50\x7b\x98\xc1\x49\x77\x4a\xd8\x76\x3b\x32\x41\x49\x6a\x42\x95\x26\xe1\xeb\x65\x14\x5c\x89\x40\x2b\xe9\xd7\x17\xa3\xed\xb6\xbe\x6c\x43\x3d\xa7\x71\x24\x06\x1c\xf5\xd2\x98\xd4\x03\x8e\xd3\x98\x54\x83\xf4\xb3\x0a\x73\x52\xc7\xe3\xdd\x0e\xaf\xe4\x00\x96\xac\xcc\x0f\xf6\xbf\x4b\xf9\xd8\xe6\x79\xb7\xf9\x12\x41\x68\x6c\x0e\x5c\x15\xea\x85\x33\x49\x09\x1f\x28\x05\x13\x42\xda\x48\xf0\x2c\x4e\x9d\x6e\x96\xb1\x25\x3f\x53\x2c\x06\x2a\x46\x1e\x8b\x65\x49\x5c\x12\x1e\x8f\xb1\x7c\xab\x06\xec\xb3\x0a\x5d\x7a\x81\xac\xf1\x86\x93\x59\x10\x38\xd7\xeb\x9a\x5b\x9e\xd7\x86\x5b\x67\x01\x74\x82\x36\xda\x91\xd4\x0d\x8f\x36\x1c\xc5\x20\xd4\xd3\x15\x6d\xf8\x8c\x3a\xa2\x0e\x60\x8e\x59\x7c\x68\xd6\x1a\x33\xcd\x61\x67\xdf\xf2\x2e\xee\x07\x8a\xfa\x91\x8b\x52\x5d\xf3\x43\x02\x7c\x8f\x8a\x05\xd5\xdc\x6a\xee\x04\xe6\x36\xec\xd5\x81\xc3\x6c\x5c\xec\x55\x34\x9b\x77\x3d\xee\x94\x71\x8c\xaa\x59\x39\x27\x4a\xb1\x17\x97\x87\x02\x30\xbe\x93\xe7\xc1\x91\xad\x71\xe7\xf6\x32\xd9\x5f\x2f\x7e\xa6\x99\xf1\x1b\x39\xad\x88\xf7\x1e\x51\x94\x44\xef\x9c\x33\x44\x28\xae\x40\xa0\xfd\x8e\x83\xb1\xdc\x0b\x0e\xe1\x54\x5c\x06\xe4\x0b\xbe\xb7\x93\x40\xb2\x05\x24\xfa\xdd\x0e\x61\x8a\xfa\x7b\x22\xd3\x12\x69\x03\xc7\x4a\x69\x09\xee\x7d\x04\xa0\x47\xbc\xd8\xe3\x0e\x82\xfa\xc6\x01\xe1\x9f\x74\xeb\x8e\x6d\x2d\xf7\x8b\x5d\x15\xa7\x18\xed\x76\x9b\xe9\x3d\xcb\xcf\x78\x09\x86\xaf\x64\x84\x9d\xa4\x17\x65\x4e\xe8\xf0\x46\x22\xe6\xc6\xfb\x50\x22\x4f\x49\xa7\x12\x51\xdd\xba\xfb\x28\x03\xa2\x5b\xa0\xbb\x9d\xd6\xb4\x79\xcd\xc9\xf1\x4c\x82\x8a\x7c\x79\xd5\x8c\x1e\x3f\x3d\x93\xcf\xf3\xd1\x40\xfe\x5b\x3e\xba\x6a\x46\x4f\x46\xf0\xf2\x64\xb9\xbc\x6a\x4e\x47\x8f\xe4\xcb\xe9\xe8\x1c\x5e\x52\xf5\x02\x5f\x1e\x41\xb6\x47\xf9\xe2\xf1\x55\xf3\x88\xc2\xcb\xf9\x32\xcb\xae\x9a\x34\x83\x97\xfc\x2c\x5d\xce\x8f\xf1\x47\x09\x16\x58\xfd\x23\xaf\xf2\xe7\x2b\x37\xb4\x96\x3d\x16\xc7\x57\x1f\xac\x83\xfe\xed\x96\x5e\x06\xff\xfe\xdf\x02\xa0\xd1\x05\xff\x61\xb3\xa1\xd5\xf3\xb4\xa6\x11\x52\x5a\x3d\x2f\xf9\x07\x93\xb0\xdd\xbe\xe6\xd6\xaf\xbf\x73\x5c\x9e\xf1\x0e\x0b\xb6\xdf\x8f\xc4\xb0\xe6\x4d\x95\xb9\x90\xe6\xea\x43\xa0\xb8\x0c\x1f\xe5\x1a\xc3\x55\xae\x2b\x4b\x20\xc5\x91\x55\x71\x4f\x54\x23\x37\x1d\xb8\x1b\xda\xdb\x6c\x02\x85\xa1\x44\x50\x5a\xb5\x6e\xab\xd7\x2b\x4b\x7e\xc7\xf1\xf7\x7a\xee\x4f\xd5\x14\x9f\x3e\x91\x4b\xf0\xe8\xe9\xe9\x00\xfe\x9d\xc3\x4a\x8c\x61\x25\x16\x39\x3c\x61\x89\xb2\x31\x3c\x4f\xe0\xf9\x08\x9e\x8f\xe1\x29\x97\xee\xc9\x58\xad\xd6\x38\x95\xcf\x47\x0b\x78\x79\x4c\xe5\xf3\x6c\x24\x9f\xf9\x13\x48\xca\x33\x78\x52\x78\xa1\xb0\xce\x14\xca\xd3\xa7\xf0\x4c\xd5\x07\xd9\xec\xd9\x58\x36\x78\x76\x0a\x15\x9f\x3d\x92\x15\x9f\xa5\x50\xcb\xd9\x42\x56\x79\x46\xa1\x95\xb3\xe5\xe9\x55\x33\x7a\x3a\x86\x2f\x4f\xc7\xe7\xf0\x84\x2f\x4f\x4f\xe0\xcb\xc9\x63\xf5\x72\x06\xcf\x73\xf5\x22\x1b\x38\x57\xc3\x3f\x1f\xc9\x21\x9d\x9f\xca\x9e\x9d\x3f\x82\x71\x9f\x3f\x7a\x0a\x4f\xc8\xf5\x58\x25\x3d\x96\x83\x3d\x7f\x02\x79\x9f\xc8\x8a\xcf\x9f\xca\xfe\x9d\x2f\xa0\xdc\x42\x0e\xf5\x3c\x53\x59\x61\x76\xce\x33\x28\x9d\xcb\x66\xcf\x29\x14\xa3\xb2\x58\x3a\x1a\xc3\x53\xa6\xa4\xd0\x68\xfa\x08\x52\x1e\x41\xca\xa3\x33\x78\x3e\x85\x27\x0c\x23\x85\x6e\xa4\x8f\x21\x13\x4c\x66\x7a\xa6\x7e\xcb\x1e\xa5\xd0\x8b\xf4\x29\x14\x86\xbe\xa4\xaa\x17\x29\xac\x4e\x0a\xab\x93\x66\x50\x1f\xf4\x28\x85\xbe\xa4\xd0\x97\x05\xf4\x65\x01\xbd\x58\x9c\x52\x78\xca\xb5\x5e\xa8\x69\x58\x3c\x7a\x04\x4f\x59\x6c\xf1\xf8\x09\x3c\x65\x75\x0b\x98\x85\x05\xcc\xc2\x02\x5a\x5e\xc0\xf8\x17\xd9\x08\x9e\x90\x1f\x06\x9e\x9d\xc2\x4a\x67\x8f\x46\xf0\x7c\xa2\x5e\x9e\xc2\x33\x55\x2f\x32\x73\x06\x93\x9b\x41\x13\x19\x54\x9e\x41\xe5\x19\x0c\x28\x83\xfd\x97\xc1\xce\xcb\x32\xc8\x93\x41\x3a\x34\x94\xe5\x50\x36\x87\x74\x18\x5b\x06\x63\xcb\x61\x3c\xb9\x1a\x49\x0e\x23\xc9\xa1\xb1\x1c\xc6\x90\x43\x33\x39\x34\x93\x67\x29\x3c\x65\x33\x79\x7e\x02\x05\x72\x28\x00\xb5\xe6\x00\xa2\xe8\xe9\x18\x9e\x8f\x06\xf0\x4f\x96\xa0\x8f\xce\xe0\xe5\x91\x6c\x89\x2e\xe0\xfb\x42\x7d\x5f\x9c\xc3\x73\x01\x4f\xd9\x59\x9a\x3d\x85\x0f\xd0\xe7\xe5\xf8\x29\x3c\x65\xa6\xe5\xe9\x63\x78\x9e\xc1\x13\x52\xce\xa0\xcf\xcb\x33\x59\xed\xf2\x29\x6c\xd2\xe5\xd3\x47\xf0\x7c\x02\x4f\xc8\xab\x80\xe5\xf2\x5c\xbd\xc0\xbe\x5e\x42\x53\x4b\x39\x47\xe3\xd1\x49\x3e\x90\xff\x4e\x47\xf0\x3c\x51\x2f\x67\xf0\x3c\x87\x67\x0a\xcf\x1c\x9e\x54\x3e\x1f\x3f\x85\x27\x7c\x7d\x4c\xa1\xc0\x13\x28\x0d\x1d\x1a\x8f\xce\x1e\xc9\xa7\x5c\xf0\xf1\xe8\xe9\x63\x78\x42\x4b\x4f\xa1\x8e\x73\xf9\x3c\x7d\xbc\xbc\x6a\xc6\x67\x63\x68\xee\x6c\x2c\x0b\x9c\xa9\xb6\xcf\x4e\xe1\xe5\xf1\x09\x3c\x4f\xe5\xf3\x0c\x7e\x9f\xc1\xef\xc5\x19\x64\x92\x00\x67\x7c\x06\x03\x38\xcb\xce\x21\x29\x87\xef\xb9\xfc\xf0\x74\x24\x4f\xc4\xf8\xe9\x08\x5e\x52\xd9\xd1\xf3\x13\x39\x0d\xe3\xf3\x93\x13\x78\x9e\xc1\x53\x8e\xe3\xfc\x14\x52\x4e\xa1\x92\xf3\xd3\xc5\x55\x33\x4e\xc7\x67\xf0\x94\x9f\x53\xb9\xd9\xc6\xe9\x63\xb9\x2a\xe3\x54\x42\xaa\x71\x0a\x83\x4d\xe5\xc6\x18\xa7\x4f\x1e\xc3\x87\x27\x99\x7c\x9e\x9d\xc2\xcb\x99\x7a\x91\x23\x5c\x00\xec\x18\x2f\x46\xb2\x73\x0b\x18\xda\xe2\xf4\x09\x24\xc1\xbc\xc2\x99\x1a\x2f\xe4\x99\x1e\x2f\x9e\x40\xaf\x17\x30\xd0\xc5\xd3\x11\x3c\xc7\xf2\x99\xc2\xcc\x2c\xd2\xc7\xf0\x7c\x0a\x4f\x39\xa8\xec\x24\x93\x1f\xb2\xd3\x53\x78\x3e\x81\xa7\xec\x7b\x96\x43\xb3\x59\x7e\x02\xcf\x47\xf0\x42\x47\xf0\x3c\x51\x2f\x4f\xe1\x29\x27\x28\xcf\x20\x73\x4e\x65\xf9\x7c\x09\xdb\x21\x97\x97\xe6\xc9\x68\x94\xc1\x33\x97\x4f\xa8\xf2\x64\xb4\x1c\x5d\x35\x27\x19\x5d\xca\x97\x6c\x39\xbe\x6a\x4e\x72\x0a\x5f\x72\x75\x03\x9f\xa4\x70\xe9\x9e\xc0\xcb\xf9\x39\x3c\xd3\xab\x26\x7d\xf2\x44\x16\x49\x9f\xc8\xc5\x4c\x9f\xc8\x29\x4a\x9f\x9c\xe5\xf2\x29\x6b\x4c\x9f\xc8\xaa\xd2\xa7\x12\xdc\xa5\x4f\x47\x4f\xe0\xb9\x90\xcf\x93\xc7\xf0\x84\x14\x09\x30\xd3\xa7\xd0\x5c\xfa\x14\x0a\x9c\x9f\xc8\xc9\x4c\xcf\x25\xa0\x4e\xcf\xe1\x9c\xa5\xe7\x8f\xe1\x0b\x1c\x88\xf4\x5c\x6e\xc3\xf4\x7c\x71\x0a\x4f\x95\x59\x1e\xba\x14\x00\x72\x9a\x02\xa0\x4f\xd3\x13\x2a\x9f\xf2\xe8\xa6\xa9\xdc\x10\x69\x2a\x8f\x5b\x9a\xca\x39\x4d\xd3\x47\xa7\xf0\x84\x02\xf2\x4e\x49\xd3\xc5\x09\x14\x5b\x3c\x82\xe7\x19\x3c\x9f\xc2\x13\x2a\x92\x90\x28\x4d\xe5\x4d\x98\x2e\xe8\x63\x78\x3e\x85\x67\x7e\xd5\xe4\x1a\xe1\x58\xca\xf9\x5a\x2e\xc6\xf4\xaa\x59\x2a\x84\x64\x49\x47\x32\x89\x9e\xa8\x17\x39\xe6\xe5\xf2\x9c\xc2\x73\x39\x3f\x6e\x91\x86\xb7\x1e\x9a\x0e\xc2\x5d\x49\x48\x82\x80\xf7\x92\x9c\x3d\x79\x1a\x86\xdf\x5b\x6c\xc3\x11\xdf\xf3\xae\xac\xec\x1e\x87\xe9\xca\x47\x55\x05\xe1\x7d\xdb\xb0\x23\x15\xd8\x09\x45\x3a\x2c\xd4\x30\xab\xeb\xb7\xf4\xa3\x20\x25\xda\x77\x95\x24\x10\x7b\xc8\x31\xbb\x8d\x4a\x20\x90\xc3\x6f\x47\x3e\x17\x47\x78\x11\x8d\xbd\xea\x04\xd8\x33\xef\x8b\x54\x7e\xf6\x71\x1f\xa3\x71\x23\x9b\xb2\x72\x04\x71\x39\x9a\x0c\x06\xc2\x32\x00\x55\x8d\x5a\xf6\x07\x2f\xe8\x40\xa0\xee\x6f\x7d\x34\x0d\x1a\xf2\xbb\x84\x76\xdf\xf1\xee\x7c\x82\xcb\x9c\xe9\x7d\x46\x69\x87\x32\xb7\x6a\x48\xe0\xaa\xfe\x45\x99\x47\xe5\x76\x4b\x95\x5b\xbc\x9a\x0a\x40\xb4\x55\x94\x70\xb6\xbb\xc7\x19\x8f\x17\x43\xd7\x99\x71\xd3\x80\x44\xb9\xcb\xa1\x1c\xfb\x5b\xae\x57\x5c\x7e\x8e\xdc\xd0\xb3\x06\x13\xff\x89\xb7\xac\x79\x6b\x94\xde\x7a\x17\xec\x8f\x20\xcc\x11\xbf\xa1\xb2\xa7\x81\xdc\x88\x69\x26\xc0\x9d\xbe\xf9\xa0\x7a\xec\x7e\x12\x08\x97\x8a\x8b\xf0\xb5\xe2\x22\x94\x22\x65\x65\xdd\x61\x4a\xb0\x65\x74\xea\xda\x65\x01\x93\x40\xb8\x5d\xd4\x3e\xf8\x65\xd9\x36\x3a\xa7\x49\x89\x04\xea\xe5\x1c\xbc\xff\x8e\x0f\x54\xb3\xe2\xb5\x40\x58\x10\x42\x5b\xb7\x9b\x4a\xa1\xaa\xd3\x88\x83\xaa\x7f\xc1\x3d\x03\x70\x3b\xcd\x69\x26\xd8\x8d\x39\x3b\x13\xb0\xfb\xa9\x38\x17\xe6\x7f\xe7\x3b\xa2\xe4\x50\xfa\x81\x3d\xf7\xca\x3d\xe5\x5e\xa4\xd3\x7f\x6e\xaf\xae\x6a\x14\xc4\x54\x87\x39\x95\x6f\x57\x57\xf5\x9f\x03\xb4\x83\x08\x1e\xe3\x71\x18\x46\x5f\x78\x31\xc9\xe4\xa2\xeb\xaa\x0e\x77\x7c\x7f\xc1\xbd\x7d\x64\xe8\xb1\x97\x72\xc9\xaa\xb5\x8a\x16\x74\x88\x3b\xed\x85\x0e\x22\xaf\x78\x24\x90\x0a\xb5\xa3\x63\x0c\xb7\xda\x60\x8a\x93\x5f\x6a\x2b\xd2\xd2\x8d\x06\x4b\x5d\xb0\x63\xe5\xd9\xa5\xb5\x26\x65\xd3\x72\x36\x9e\xc7\x2c\x09\x20\x26\xf7\x97\xb2\x53\x69\x9e\x7f\x52\xaf\x7a\xaa\x4f\x00\x1d\x2b\xa4\xb8\x92\xe6\x5b\x4c\xa2\xca\x5a\xa5\x0a\x77\xf1\x7f\xdd\xe3\x46\x50\x47\x47\xfa\x90\x3b\x91\x6a\x56\xce\xc3\xb0\xff\x8a\x83\xd1\x93\x09\x43\x0b\xcc\x2e\x13\x80\xf6\x30\x19\xff\x39\xd7\x9a\x01\xfe\x41\xbe\xa6\x42\x2f\x55\xfd\xf9\xed\x73\x1b\xd5\xa0\x85\x76\x9f\x92\x3d\x72\x38\x8e\x01\xc2\x0f\x5b\x57\x0c\xdb\xbc\xbd\x32\x0c\x69\x54\x6a\x0e\xe7\x0f\x9c\x68\x2b\xe0\xaf\x38\xfe\x3b\xc7\xbf\xf0\x4e\xa0\x76\x15\x47\xc6\x37\x18\xa6\xc4\xc4\xc2\x36\x83\x0e\xf2\x2a\xbd\xbe\x4e\x17\x05\x0d\x24\x95\xba\xdd\x42\xc2\x17\x15\xdf\xc0\xfb\x2e\x72\x74\xb9\x7f\xe4\x9e\xf6\xe8\x57\xdc\x30\x3a\x9c\xd0\x40\xff\xf1\xdf\xfe\xf7\x00\xf5\x00\x54\x3b\x11\x67\x04\xbe\xef\xf6\x09\x3e\x06\x68\x8e\x10\x1e\xf5\x89\x0b\xff\xbd\xb0\xdb\x61\x18\x7d\xc5\x89\x70\xe3\x85\x5f\x90\x31\x28\x6e\x39\xb9\x2e\x4f\xc2\xb0\xaf\x46\xfd\x14\xa1\x9d\xda\x20\x5f\xf1\x69\xb7\x73\x89\x93\xf0\xef\xff\x43\x87\xda\x0b\xb4\xb9\x71\x72\xc4\x4a\x70\xbb\xbe\x28\x78\xf6\x7e\x72\xa4\xa3\x8f\x8f\x37\x1f\x27\x47\x3a\xa0\xb9\x8e\xc2\x37\x18\x6f\x3e\x06\x4e\x54\xe1\xfb\xa2\x2e\x05\x1e\x4b\xea\x2f\xdc\x0b\xd4\xfe\x77\x63\xd0\x7d\xf4\x77\xae\x8d\x9a\x60\xea\xee\x9d\xad\x67\xff\xf7\xff\xf5\x2c\x40\x72\xd3\x7c\xc7\x21\x04\xc4\x18\xc9\x5d\xf6\x39\x6f\xc0\xa3\xc6\x73\x88\x88\xfe\x3d\xf0\x71\x54\x30\xe8\xed\x56\x1e\x88\xa5\x20\xa4\x1a\x56\x4e\x4c\x78\xbd\x21\x4a\x55\xcf\x18\x9f\xdc\x5f\x8f\xed\x21\x29\x55\x15\x03\x5d\xd5\xc5\xa9\x92\x8e\x72\xfc\x8d\x3c\xfc\xad\x2d\x06\x39\xed\x93\xe0\xaa\xbc\x2a\x17\xc6\x88\xe1\xf8\xaa\x3c\x36\x82\x80\xa9\xcb\xd0\xf1\xf5\x59\x81\xbb\x68\x39\x8b\xe2\x82\x94\x93\x56\xf9\xaf\xe5\xc4\x94\xf2\x02\x03\x9e\x2f\x03\x27\x40\x3e\xcf\x97\x5b\xf5\x1b\xa1\x43\x55\x51\xa3\x7b\xc7\x06\x63\x34\x65\x83\x71\xc2\x20\xe4\x83\x53\x65\x15\xc8\x0a\xfb\x24\x9d\x46\x5a\xb6\xc1\x1d\xf7\xb1\x08\x8b\x98\xa4\xf1\x18\x25\xf6\xab\xbc\xb9\x58\x3c\x76\x94\x81\x0f\xfa\xd7\xb0\xe3\xaf\xae\xca\xe9\x56\xce\xc2\x0e\xff\x89\x93\x0f\xac\xcc\xf9\x87\xa1\xeb\x3a\x69\xda\x65\xc9\xb5\x55\x78\x2c\xbe\x3e\xf1\x39\x7c\x7b\x97\x46\x7f\xbc\xf3\xfb\x22\x2b\xb3\x8a\xb4\x1f\x4a\x5a\x99\x70\x6d\x6d\x3d\x3e\xfe\xe3\x54\x69\x0c\xcd\xa3\xbe\x00\xdd\x2f\xb8\x95\x0d\x8e\x8a\xfa\x84\xa2\x30\x1c\xf5\x89\x18\x66\x7c\x2d\x3f\xbe\x28\xf3\xef\x38\x2b\x45\x1d\x05\xd0\xdb\xb7\xfc\x45\x99\x07\x20\xc3\xf9\x1b\x27\x01\x2f\x33\xbe\xb9\x0d\x58\x19\xfd\xc4\x5b\x58\x24\x6f\x80\x9f\x78\xe7\x08\xe9\xac\x38\x50\x3d\x98\x04\x08\x07\x66\x54\x2d\x96\xfb\x13\x1f\xaa\x8c\x08\xff\x83\xb7\x61\xe2\xff\xca\xf1\xbf\xc9\x3d\xf9\x9e\xde\x4a\x90\x5b\x93\xbb\xd3\x24\x78\x51\x02\xee\xf3\x34\x09\x3e\x4f\xb3\xf7\xf5\x26\xcd\x68\x80\xcf\x93\xe0\x6d\xba\x08\xf0\xb8\xcd\x30\x7e\x92\x04\x6f\x56\x6c\x29\x02\x3c\x3e\x4b\x82\xe7\xa2\x2a\x02\x3c\x7e\x9a\x04\xcf\x0a\x99\x74\x9e\x04\xdf\xa5\x4d\x4d\x03\x7c\x32\x4a\x82\xe7\xe9\xa6\x7e\xc9\xb3\xf7\x01\x3e\x39\x4b\x82\x17\x75\x16\xe0\xd3\x93\x24\x78\xa3\x6a\x3f\x3d\x95\x99\xaf\xe9\x0f\x9b\x00\x9f\x3e\x52\xbf\xbf\xe0\x1f\xca\x00\x9f\x3e\x96\xed\xe5\x01\x3e\x7d\x92\x04\x5f\xf1\xb5\xcc\x7c\x96\x04\x2f\xa9\x6c\xf6\xf4\x69\x12\x40\x91\xf3\x24\xf8\x5e\x1e\xb5\x00\x3f\x1a\x25\x81\x2a\xf9\x48\xd6\x53\xb1\x52\xbc\xc9\x2a\xf9\xfa\x38\x09\xbe\x06\x9b\xa2\x00\x3f\x7a\x92\x04\x5f\x28\x9f\xef\xf8\xf1\x79\x12\x4c\x02\xfc\x64\x9c\x04\x24\xc0\xe7\xe3\x24\xf8\x96\xe7\x01\x3e\x3f\x31\x3f\x4e\xf5\x8f\xf1\xe8\x49\x12\xfc\x59\xfe\x3f\x83\xac\xe3\xd1\x79\x12\x0c\x02\x3c\x1e\x8f\x92\x60\x28\xff\x8f\x93\xe0\x38\xc0\x63\x39\x40\x53\xfb\xf8\xec\x54\x65\x7a\xfa\x04\x9a\x19\x3f\xd5\x85\x9f\x3e\x4d\x02\x2c\xff\xeb\x4a\xce\x75\x25\xe7\xba\x12\xd9\xfe\xff\x16\xe0\x13\x39\x8d\xb3\x00\x9f\xc8\x39\xbc\xba\x92\x3f\xc6\x49\x30\x97\xff\x4f\x92\xe0\xff\x17\xe0\x27\xa7\x27\x72\x1e\xe5\x2c\xc8\x9f\xa7\x66\xf4\xf2\xe5\x91\x99\x27\xf9\xf2\xd8\x4e\xd1\x93\xd3\x93\xb3\x93\xb6\x8b\xf2\xf5\xd4\xcc\xad\x7c\x31\x33\x2e\x7f\x3f\x69\xd7\x45\xbe\x9e\xb9\x4b\xf3\xe4\xf4\x74\x74\x62\x27\xd5\x41\x40\x68\xea\x1d\xed\x82\xde\xd0\xe2\xb3\x93\x29\x1d\x0a\x9e\x28\x7b\x52\x47\xce\x7c\x5f\x5e\xd0\x85\x93\x45\x1c\xb9\x6f\xda\x0a\x0d\x40\xef\xbd\x55\x11\xa4\x69\x24\x66\xa3\x39\x4a\x1c\xe9\x69\x79\x7f\x76\x91\x46\xa0\xc0\x89\x12\xcf\xea\xd8\x91\xbc\xa6\x2e\x4a\xf6\x42\xe9\x38\x65\x40\x0f\x90\x5f\x4b\x89\x20\x96\x7d\xf0\x41\x2c\xc8\x33\x16\x95\xc8\x04\x5b\xf9\x5e\xbe\x60\x4e\xd8\x94\x29\x24\x51\x0d\xa7\x4c\xa3\x12\x25\x15\x3c\x47\xa6\x1b\x2b\x09\x79\xb9\x43\xf4\x72\xaf\x51\xd5\x05\x1d\xff\xa4\x6c\xfb\x50\xe9\x24\xdd\x98\x72\x97\xb2\xdd\x8e\x08\x69\x9b\xf4\x7d\xdc\x83\x33\x8e\x52\x47\xc5\xd0\x62\xcd\xab\x37\xc7\x48\x02\x77\xd5\x40\x6b\xe2\x23\x86\xd9\xea\x82\x70\xf5\xc3\xe9\xa9\xfa\x8e\xd3\xe9\x28\xe1\x0e\x30\x6f\x55\x14\xd2\x8e\xc2\x8c\xed\x8b\x9d\x75\xd0\x2e\xaf\xfa\xa4\x0c\x43\x71\xe1\x14\xad\xf5\xb0\xff\xca\x7d\x2d\x85\xea\xb7\x82\x56\x80\x73\x6a\xf0\xeb\x20\xc2\x10\xbc\x38\xb4\x52\xc7\xf6\x23\x21\x42\xf9\x78\x20\x44\x38\x38\x45\x65\xc5\xaf\xb2\x79\xa6\xfa\x8a\x41\x6b\x55\x4d\xe1\x54\x97\xef\x83\x9b\x88\x30\x8c\xfe\xca\x81\xaf\x80\x92\x03\x1f\x4a\x84\x2b\xd4\xab\x48\xb9\x3b\x30\x37\x4d\xea\x7b\xbb\x2e\xad\x0d\x7f\x5c\x49\xca\x0f\x8c\x8f\x34\x49\x77\x39\x0a\xc3\xb7\x5c\x1b\x69\x98\xfb\x58\x20\x74\x08\xfb\x2e\xd2\x2e\x9d\xae\xb6\xb9\xeb\x40\xe7\x28\x6b\x33\x39\xe2\xea\x3a\x55\x3e\x1d\x53\xc2\x66\x7c\x8e\x6b\xa2\xfb\x98\xda\x2d\x3b\xa8\x12\x59\x46\x07\xa8\xaa\x2f\x53\x6d\x1d\x5e\x5f\xa4\x6d\xd4\xab\x23\x70\xaf\x50\x13\x92\x6a\x3f\x1b\xf0\xd3\xf9\x2c\x9b\xa9\x11\x21\x7c\x5a\x27\xd5\xe5\x88\x90\x08\x5a\x8c\x49\x35\x47\xb6\x29\x59\x42\xbb\xde\x83\xbe\x3b\x79\x3c\x7d\xe3\x9a\x40\x15\x6d\x1f\xa1\xd3\xb2\x34\x1e\x8c\xe5\xc2\xe8\x77\xd0\x9f\x95\x09\x6e\xf0\xbf\xbd\xb9\x92\x93\x6f\x63\xd8\x4d\xd8\xc1\x89\x67\x08\x4d\x10\x8b\xad\x97\xa5\x23\x76\x31\xda\x6e\xd9\xa5\x07\x35\xa6\xa0\x94\xcc\x76\xae\xf7\xb7\x96\xf6\x1e\x4d\xe8\xc5\x78\x34\xa1\x71\x8c\xfe\x8d\xcf\x68\xfc\xe8\xe9\x9c\xc0\x8f\xf3\x27\x73\xa2\x94\x2d\x22\xad\xb1\x4f\xc9\x93\xc7\x13\x7a\x41\xce\xdb\xec\x26\x0b\x8c\xe9\xb9\x66\x9e\xb5\xf9\xc7\x32\xfb\xf8\xa4\xad\x7d\x3c\x1e\xeb\xea\x01\xe6\xcf\x49\xf0\x65\x10\xd3\x1d\x8a\x14\x80\x5a\xa6\x64\xcf\xa9\x06\xc8\xcd\xee\x95\x53\x8e\xce\xd4\xcb\xd3\x34\x9b\x1f\x63\x41\x8e\x67\xb5\xf8\xf0\x6a\x7e\x8c\x2b\x72\x3c\x7b\xf9\x7d\x35\x3f\xc6\xa5\xfc\xb5\x18\x97\xf3\x63\xcc\xc8\xf1\x4c\xfe\x70\xc2\x86\x7b\xd1\x1b\x60\xe1\x4c\x68\x1c\x38\x9c\xda\x11\x80\xe0\xa4\xda\x75\x05\xbc\xa9\x56\x3a\x57\xf4\x68\xea\xf8\xc2\xb2\xba\xbd\xb8\x21\x46\xb5\x1a\x17\x12\x2f\xce\xc8\x68\x92\x5d\x34\x93\x38\xce\x50\xa1\x75\x09\x48\x54\x93\xd4\x65\x3d\x66\x08\x5d\x90\x93\x47\x67\xd3\x60\x61\xfe\x44\x2d\x3e\xd4\x0b\xef\xaf\xae\xe5\x50\x5f\x7d\xf6\xd9\x67\xaf\xe0\x0f\xbf\xc2\xaf\xc6\xf6\x4f\xa5\xbd\x7a\x79\xef\xdf\xa7\x7c\xd7\x0d\x2d\xee\xfd\xc3\xb2\x79\x68\x5f\xd5\xf7\xd9\x67\xe3\x31\xfc\x1c\xbf\x7c\xa8\xfa\x07\x9a\x55\xdf\x03\xb3\xc3\x6b\x94\x8c\x1f\x9d\x3c\xba\x20\xb5\x3c\xda\x64\xfc\xf8\xe4\xd1\x34\xf8\x3e\x48\xc6\x8f\x4f\x9f\xd8\xc4\xb3\xb3\xd3\x69\x50\x39\x7f\xb8\x7a\xf5\x6a\x0d\x7f\xd5\x1f\xf9\x5b\x7b\x7f\x3a\xb1\xb4\x7f\x9f\x95\xa5\xcc\xf4\x87\xaa\xfe\xcf\x75\x05\xfe\x60\x64\xed\x04\x0d\xe4\x54\xa0\x64\x7c\x76\x66\x67\xe9\xe4\xe4\x64\x34\x0d\xaa\x20\x79\x3a\x3e\x3f\x31\x89\x4f\x4f\x46\xa7\xd3\xe0\x43\x90\x3c\x3d\x19\x3d\x22\xa4\x9e\x06\x8b\x20\x09\x5e\x06\xa8\x97\x91\x36\x9c\xe5\x92\x04\x2f\x03\xbb\x43\xef\x82\x75\x40\x48\x74\x43\x8a\x59\x36\x47\x53\xf9\x24\xcb\x64\x49\x6e\x76\x6e\x99\xbc\x53\x66\xec\x94\x09\xc3\x40\x92\x6e\xb9\x2a\x1b\x94\x41\x52\xa9\xe3\x72\xa3\x62\x30\xde\x60\xf8\x0e\x21\x14\x21\xc7\xf7\x10\x58\x9f\x57\x51\x46\xc6\x78\x49\x8a\xd9\x68\x2e\xab\x1e\x8c\x75\xe5\xb1\x5f\xb9\x6c\x6b\xa9\xff\x17\xb3\x2c\x1e\xcf\x75\x4b\xe3\x40\x22\xb0\x7d\x72\xb3\xdd\x2e\xfb\xfa\xd3\x76\x1b\x8c\x83\x3e\xe4\x2f\xe5\xff\xed\x56\x35\xba\x44\x58\x8e\x49\xb5\xda\x9e\x4f\x79\xba\x03\xec\xb4\x87\x54\xd5\xaf\x02\xcb\x69\x0f\x3e\x93\x9d\x6f\xe1\xe9\x8a\x64\xf1\x78\xb2\xba\x68\xc2\x10\x3e\x15\xb3\xd5\x7c\x12\xc7\x2b\x34\x31\x39\x36\x24\x0b\xc3\xa0\xaf\xba\x3b\x90\x7d\x52\xb9\xc7\x3a\xf7\x14\x7a\xfe\x2a\xc0\x6b\x92\x4d\xd6\x17\x12\xab\x58\xa3\x62\xb6\x9e\x93\x4d\x2f\x23\xab\xc1\x78\x67\xfa\x89\x3b\xf3\x7e\x03\xa1\xaa\x65\x17\x7b\xc1\x4b\x39\xe7\xba\xd6\x1b\x3d\x23\x2f\xf7\xe6\x1e\xed\x0d\x19\xac\xe4\x55\xa8\x75\x18\x30\x0c\xcc\x19\x94\xfd\xb8\x9a\x23\x35\x2e\x50\x66\x22\xd0\x60\x94\x4d\xd5\x98\x60\x5b\xe1\x6b\x9d\xba\xba\x68\xa6\xb2\x80\xda\x6c\xb2\xc2\x0d\xb9\xdd\x6e\xaf\xa7\xb2\x47\xc1\xf7\x0f\x8c\x14\x5c\x25\xe0\x77\xa0\xf9\xec\x74\x14\x14\x7f\xbd\x5e\xca\x8c\x1f\x48\x06\xb9\xe2\x38\x93\xb9\xc2\xd0\xcd\x02\x83\x9b\xbc\x6b\x5d\x3b\xf3\x68\x84\x3f\xe0\xcc\xb5\x50\x7b\x41\x32\xfc\x86\xbc\x33\x2e\x82\xbc\xba\x82\x97\x01\x6c\xa2\xb9\xaa\x48\x7e\x5b\x93\x17\x93\xf5\x45\x06\xbd\x61\xa6\xa9\xb5\xec\xcd\x8b\x8b\x75\x18\xbe\x33\x0a\xc9\x6f\xf0\x08\xab\x16\xc7\xf8\x05\x5e\x6b\x54\xfc\x35\x59\xeb\x16\xd6\xb2\x16\xc0\x0f\x6d\x15\x30\x13\x93\x03\x35\x9c\xe0\xd7\xb2\x06\xfc\x82\xac\xa1\xdf\x71\xbc\xee\xbd\x90\xa5\xef\x69\x4d\x8e\x4f\xdf\x5a\x63\x42\xde\x59\x9c\x37\x0c\xa3\x05\x49\xad\x5d\xce\x55\x1d\x2b\xdd\x41\xc8\x01\xf7\xde\xa2\xe5\x21\xe3\x77\xc3\xa6\x54\xf6\x70\x66\xe6\x46\xd8\xf9\x8e\x10\xc2\x63\x88\x68\xf9\x0e\x1d\xaa\xfe\xaa\x8e\x95\xb5\x4f\xa4\xb2\x08\x3e\xe8\x54\xef\xad\x4a\x33\x70\x3f\x36\xb2\xf6\x13\xbf\xef\xdd\xfe\x8c\x31\x7c\x15\xdc\xfc\x47\x08\xb7\xf9\xfb\x7e\xcf\xbc\xd6\xda\x5c\xb8\x91\x4d\xe1\x77\xbb\x5d\xcb\x2a\x7b\x3d\xbc\xa1\x55\xcd\x78\x49\x82\xc7\xc3\xf1\xe3\xe1\x49\x80\x5f\xef\x10\xc2\x2e\x53\x26\xe0\xa0\xde\xe6\xb8\xa2\xff\xb8\xe1\x95\xa8\xc3\x70\xef\xcb\x9a\xe7\x4d\x41\xa7\x34\xaa\xe8\x2f\x0d\xab\x68\x14\x0c\x87\xc7\xc3\xe1\x71\xc1\x16\xc7\xad\x32\x71\x80\x50\x72\x80\x41\x92\xd3\x25\xd0\x3f\xea\xff\x30\x5d\xe7\x53\xf5\x33\x9a\x1d\xae\x66\x8e\x29\x4a\x68\xd4\xf2\x9d\xd1\xce\x8f\xbd\x11\x34\x35\x3d\xaa\x45\xc5\x32\x11\x68\xa6\xa5\xc3\xd1\x1e\x14\xac\x14\x3a\xa2\x73\x1d\xb4\xf8\x52\xa5\x35\x7e\xad\x58\x07\xfc\x91\xd9\x37\x5f\x12\xe8\xea\x14\x47\x42\x69\xb2\x2a\xfc\xbe\x75\x8a\x76\x40\xd8\xd6\x09\x39\xad\xf8\xdc\x2d\xe9\x1b\x09\x4d\xa6\xb8\xc2\x25\x4b\xa1\xf3\x65\xcb\xed\xc7\x01\x68\xf9\x82\x56\x2f\x66\xa8\x57\x6a\x79\xab\xe0\x1b\x97\xf4\x14\xc3\x0c\x18\xa5\x3f\x0d\x4a\x8f\x15\x3d\x78\x8c\xe2\x60\xf3\x31\xc0\xa6\x1c\x70\x60\x4d\xee\x7f\xc4\x8f\xe1\xab\x23\xcb\xb3\x82\x96\xbd\x89\x14\x9c\x17\x82\x6d\x64\x55\xae\xa8\xb3\x1a\x66\x05\x2f\x29\x30\x85\xfb\x23\x84\xb0\x2f\x78\x70\xb3\x96\xe0\x50\xa4\xbc\x6f\x6c\x58\x4e\x8b\xf6\x82\x65\xba\xcb\x37\x69\xc6\xc4\x2d\x38\xaa\xf2\x52\xc8\x18\xe1\x72\x27\x57\xc4\x99\xd7\x54\x63\xdc\xa2\xa7\x26\x91\xe9\x16\x78\x23\x02\x9c\x42\x40\xfb\x28\x12\xad\xef\x00\xb5\xf8\xd6\xe9\x63\xa7\x49\x65\xbc\xde\x69\x76\xe4\xda\x1b\xb8\xe4\x88\xcc\xbd\x43\xf8\xc9\x08\xa2\x64\x2a\x3f\xc4\xda\x69\x79\x4d\xc5\xd7\xa5\xa0\xd5\x4d\x5a\x78\x45\xd8\x32\xe2\xa8\x25\x63\xd8\x64\x42\x89\x27\x76\x05\x83\x95\x30\x1c\x8f\x09\xa1\xae\xcc\x52\x66\x53\x32\x4b\x4a\x7c\x41\x8f\x09\x95\xac\x2c\x49\xef\xd2\xc8\xf5\xe4\x64\x9d\xb6\x1e\x81\x8e\xb7\xed\x53\x2d\x3b\xfe\x68\x04\x61\xb2\x78\xd9\x9d\x35\x87\x63\xe3\x11\x1a\xca\x9e\xd5\x3a\x2e\xd0\xc6\xe7\x96\xda\x50\x53\xe4\xb8\x16\x58\xa5\xf5\x5f\xc0\x2d\xad\x09\x0d\xc5\x4b\xf0\x79\xf9\xfa\x86\x3a\x9a\x95\xa2\x13\xd7\xb7\xb5\x99\x33\xe6\x58\xc2\x31\xc7\x82\x71\x1e\x5f\x2d\x0e\x1d\xfa\x81\x56\xcc\xac\x9c\xa0\xdf\x66\x7a\x5a\xeb\xc8\xea\x3e\x61\x03\xe6\x24\x62\x70\x5c\x62\xa6\xe5\x15\xc7\x27\x38\x25\xe0\x39\x6c\x13\xb3\xe1\x82\x0b\xc1\xd7\x32\xb1\x01\x81\x91\x75\xc2\x19\xd1\x61\xc6\x79\x95\xd7\x92\x98\x8c\xee\x64\x15\x09\xc7\x82\x6f\x92\x74\x87\x03\x75\xf2\x02\x84\x3c\x62\xaa\xe5\xbf\x68\x2c\x68\x49\x9a\x59\x36\x1f\xbe\x7b\x97\x96\x25\x17\x60\x39\xd7\x5b\x86\xa1\xa6\xb7\x96\x68\x57\x58\xfb\xfb\xfb\x5c\xa5\x1d\x9e\x32\xbc\xa7\x6a\x60\x78\xf0\x5f\x56\xe9\xb5\x62\xa6\x6b\xe7\xfe\xf4\x80\x57\x7f\x3a\xe3\xf3\x9e\xaf\x7f\x51\x4b\xba\x71\x07\x41\x1e\xb1\x04\xd1\xa0\x20\x8c\x74\x58\x4f\x58\xe9\x0f\x29\x13\xac\xbc\xfe\x92\x57\x64\xe4\x05\x72\x6e\x05\xb2\x10\x9f\x79\x28\x17\xaf\x57\xb5\x5b\x05\xac\xe1\xe4\x5e\x55\xaf\x91\xe8\x06\xe1\x34\x66\xd5\x5e\x20\x2a\x9d\x36\x2b\xe7\xc6\xbf\x6c\xaf\x93\xcf\xed\x46\x0a\x76\x5e\xe0\x05\x4a\x0d\xf1\x41\x20\x8e\x6b\x92\x9a\xcb\x35\x7d\x08\x5c\xaa\x7b\x67\x10\xc4\x15\x66\x12\xec\x48\xfa\xf8\x01\x25\x18\xbf\x15\x84\x3e\xa1\xea\x75\x23\xe1\x71\x41\x03\x90\x59\x82\xd3\x40\x5e\x46\xb5\x39\xbd\x37\xb4\xea\x38\x96\x56\x9a\x21\xb5\x72\xa2\xec\x30\x07\x5d\x53\x9f\x9a\xde\xd0\x8a\x89\xdb\x9e\xd2\x4d\x0f\xa8\xba\xd0\xb5\x3f\xca\x87\xef\x37\x2b\x81\x7c\xa8\xef\xb4\xae\xd3\x6b\x3a\x00\x63\xb9\x4f\xd2\x0a\xa2\x43\x5d\x06\x79\xf2\xcb\xc6\x75\x46\xda\xee\x1e\x03\x87\x70\x49\x2a\xf3\x7b\xbb\xad\xb0\x3e\xe9\xcf\xec\x69\xaa\xe5\xb1\xb8\x96\xf7\x64\xb1\x01\x8f\xb0\xdf\xf1\x5a\xa2\x85\x08\x07\xb2\x9e\x00\xf5\xe4\xb2\x55\xc3\xb4\xbe\x2d\xb3\xed\x96\xa9\x1f\x53\xf7\xd6\x77\x18\x5d\x4e\x0f\x30\x07\xaf\x0a\xed\x9e\xf7\xef\x27\x4e\x06\x63\x0c\xf2\xe2\xc8\xc6\x39\x4e\xd1\x4e\xc8\xb5\x73\x12\x70\x15\x41\xf7\xc0\x96\x35\xf2\x9c\x0f\xc8\x66\xf7\x2a\xc0\x6e\x8b\xca\x02\xa5\x0c\xc3\xca\x75\x31\x48\xc1\x9d\x64\x89\x70\x01\x28\x8b\x04\xfa\xa5\x3c\xa3\x70\x70\x4b\x94\xc8\x64\xe6\xb7\x2a\xbf\xbb\x56\x72\x05\x44\x3d\xbf\xe3\x86\x3d\xa6\xad\xfa\x00\x02\x3a\x33\x50\x90\xc6\xae\x43\x46\x0e\x0b\x59\xc1\x2f\xf1\x9e\x31\x88\x65\x6d\x1b\x6f\x8e\xc6\x50\x7a\x12\x89\x19\x9b\x83\xcd\x03\x73\x2d\x4b\x4b\xc7\x5b\x70\x54\x49\x22\x78\x34\x59\x5e\x64\x6d\x9d\x4b\x55\x67\x0e\x76\xf8\xf2\xbe\xc8\x5d\x52\x17\xae\xa7\x0d\x69\x5c\x90\xf3\xdb\xe0\x71\x4d\x46\x93\xf5\x85\x03\x74\xd6\x86\x74\xcd\x67\xeb\x39\xbe\x25\x37\xed\x39\xba\xdd\x6e\xa3\x5b\x7b\x8e\x30\x23\xb7\x78\x65\x5e\x09\x89\x4a\xb2\x42\xd3\x32\x61\xb8\x18\x2e\x79\xb5\x4e\x9d\x1d\x2a\xa9\x0d\xb2\x9f\x1c\xdd\x20\x84\xbd\x0e\x6f\x3a\xe0\x58\x66\xb8\x01\xbe\x79\x63\xc0\x9e\xf6\xea\x65\xbc\x6c\x47\x37\x8a\x83\x2b\x73\xe1\x3b\x7b\x5c\x93\x83\xa0\x66\x10\xc4\xb7\xd8\xbd\x88\x92\x9b\x1d\x42\xbb\xc6\x07\xd3\x35\x15\xea\xe5\x5b\x80\x4e\xd1\x12\x0b\x9c\x46\x1b\xbc\xc2\xb9\x75\xfe\x82\xed\xb6\x18\x6a\x6c\xb2\x46\x68\xb7\x2b\x86\xbc\x54\xfe\xc4\x5f\xb2\x52\x6e\x61\x79\xcf\x75\x92\xa2\x0a\x67\xd8\xc5\xc6\x33\x0f\x6a\xb5\xb7\x87\x08\xc3\xc8\x37\x61\x33\xb8\x88\x44\xe6\x0c\x5a\x72\x0f\x12\xd7\x48\x84\x5f\xe6\x33\xdd\xcc\x95\xfb\x9c\xc7\x12\xab\xdb\x81\xd5\x39\x2b\xb5\x03\xbc\x48\xc1\x09\xdc\x1f\xfb\x87\x13\x2b\x9e\x6a\x0a\xce\xed\xe9\xf0\xeb\x92\xc9\x2e\x71\xb9\x39\x21\x5a\x50\x75\x00\x5a\xc1\xcb\xeb\xf2\x39\x1c\xe7\x30\xac\xfc\xd3\x9d\x01\xde\xbc\x5c\x46\x00\xc2\xc0\x45\x1f\xad\xac\xe4\xdb\x83\xf7\x7e\xe5\x2d\x82\x85\xb0\x37\x27\x5e\x36\x3b\x3d\xda\x49\x85\xfb\x11\xb9\xbe\x24\x6a\x05\x43\xcd\xf0\x55\x90\x81\x3a\x90\x98\x4c\x7f\xac\x4f\x5e\xed\x9e\xbc\x7a\xb6\x9c\x2b\x13\xf6\x02\xfc\x45\xa8\x83\xe8\xd6\x0f\x76\x53\x2c\xaa\x70\xb4\x22\x25\x72\x80\xd5\x97\x7a\x46\xa7\x77\x3e\xd4\x4e\x56\xbb\x24\x5a\x85\x61\x7f\xd4\x27\x64\xb5\xdd\x46\x2b\xb0\x9f\x5a\x21\x5c\xe8\x68\x4c\xf9\xfd\x93\x5a\x7a\x73\x3a\xea\x3b\x79\xcd\x7e\xd4\xb7\xe8\x6f\xcf\x74\xee\x4f\x6f\x13\x55\x0a\xdd\x5f\x81\x23\x6b\xbd\x53\x20\xc0\x4c\x0d\xb3\xb5\xa1\x95\x3c\xc9\x2f\x61\xcf\x44\x5d\xeb\xdd\x76\x46\xc2\xb0\x51\x3e\x58\x75\xb4\x83\xff\x82\x94\xba\x24\xb1\xaf\x59\x2d\x68\xa5\x2f\x5f\x7d\x92\x82\x9f\x6b\x5e\x1e\x0c\xa3\x30\x9b\xf7\xe4\x37\xd8\xae\x9b\xb4\xaa\x29\xb8\x8f\x74\x49\xf0\x36\xb8\xc3\xb0\xe0\x59\xaf\x72\xdd\xbd\xa8\xbb\x9d\x29\xa5\xae\x77\xa0\x54\x35\xc6\xe6\x35\x03\x8b\x4f\x70\x57\x66\xf2\x15\xa9\x9b\x0d\xde\x4c\x2e\x8d\x8a\x24\x62\x87\x76\xa0\x3a\xeb\x77\x4b\xd2\x80\x4a\x63\xa5\xb4\x0a\x2b\x47\xd5\xff\x07\x57\xf2\x36\x5d\x17\xf7\xad\xa4\x9a\x36\x99\x63\x58\xf0\x34\x6f\xe7\x8c\x99\xeb\x5f\x45\x02\x38\xb4\x88\xa5\xf6\x9a\x32\xdc\x5b\xb6\xbd\x2f\x66\xa9\x98\xc1\x1f\x77\xe8\x7f\xf1\x8a\xe0\x20\xfb\xb9\x0e\xfe\x55\xeb\xe2\x4d\x26\x68\x94\xa5\xeb\x1c\x02\x6b\x79\xeb\x85\x83\x4d\x91\xb2\x32\xf0\xd7\x0d\x43\x44\xef\x35\xcf\xe9\x0f\xdf\xbf\x04\x2d\x57\xfd\x9b\xc8\xe6\xe4\xef\xe3\xcf\x5e\x1d\x7f\xf6\x6a\x28\x3b\xac\x91\xfd\x3b\x47\xdf\xc4\xe3\x72\xa9\xc2\x35\x78\x99\xa6\x12\xf1\xa0\x65\xc6\x28\xc8\xa9\x5b\xc1\xbb\xa4\xba\x5a\x32\x7b\x36\xd7\x34\x65\xe9\xea\xf1\xeb\x8a\xf6\x6c\x5b\x67\x7c\x8e\x24\xca\xad\x30\x3c\x50\xef\x07\x81\xbb\xe1\xd6\x3a\x4d\x28\x92\xed\x20\xc7\xe0\x80\x35\xeb\x88\x90\xc1\x40\xa2\x2b\x11\xda\xed\xa2\x0a\x33\xcf\xcc\xdc\x84\xb4\xf3\x7a\xa8\xd7\xf8\x5b\x49\x8a\x80\x20\x3f\x95\x88\x80\x93\xda\x36\x6e\x3c\x09\x1b\x03\x88\xbe\x59\x6d\xa6\x03\x04\x96\xe9\x9a\x1a\x87\xed\x7b\xa3\x76\xc2\x71\x47\x26\xda\x5c\x75\x7f\x26\xf0\xcd\xa1\x15\x00\xf5\x2c\xd8\x45\x35\xe1\xff\x22\xb9\xa8\xd7\x58\xd9\x91\xeb\x7d\x01\x2a\x1a\xea\x36\xbf\x8f\x9a\xab\xb3\x8a\x6d\x24\x05\x54\x0f\xeb\x2a\x23\x69\x4f\x39\x5a\xb2\xd9\x3d\x65\xe2\xb7\xe9\xb5\x52\x25\x36\xa5\x66\xa3\x39\x2e\x48\x05\x68\x3a\x9f\xf7\x0c\x51\x2a\x8f\xba\x7f\xf1\xc9\x61\xde\x2f\xd0\x2f\xda\x65\xa0\xa8\x98\xd1\x79\x64\x6e\xc4\xc6\x65\xd6\x2a\x1f\xd6\x9f\xd3\x25\xaf\x68\x54\xe3\x46\x09\x43\xe0\xe0\x11\x22\xa6\xf6\x88\xa6\x08\xf3\x48\xc2\x48\x79\x68\x00\x27\xd1\x5f\x7e\xae\xa3\x59\x3a\xc7\x1c\x5c\x3b\xa4\x8d\xe0\x2f\x79\x9a\xfb\xeb\xaa\xe2\x8d\x1c\x5e\xb5\x0a\x6d\xb7\xfe\x26\xa9\xfc\xdb\x5d\x22\xc6\x06\x63\x92\x35\x04\x58\xb8\x48\x14\x24\xc1\xb8\x76\xff\x45\xef\x88\x56\x0f\xcd\x9a\x72\xec\xdb\xba\x0b\xb4\xef\x1b\xfa\x87\x52\x75\x23\x3f\x02\xec\xe8\x28\x88\x85\x72\x08\x5d\xb3\xf5\xa6\xa0\x47\x6a\xea\x76\x2e\x5f\xdf\xd6\xaf\x4f\xc9\x71\x34\x4d\xd0\xb1\x86\x67\x41\x60\xcd\x2a\x5c\xb2\x58\xd9\x51\x4c\x23\x3a\x64\xe0\x04\xe5\x79\x5a\x2b\x4a\x39\x60\x01\xc2\x54\x52\x17\x60\x7f\x8d\x12\xda\x2a\x93\x60\xc7\x02\x23\x02\x23\x7d\x31\x0d\x82\x24\xf8\x67\x80\xc0\x0a\x03\xac\x31\x50\x80\x2b\x4f\x7e\x40\x25\x9a\x12\xd1\x61\x49\x3f\x82\x5f\x29\x79\x7c\x51\x18\x0a\x08\xe9\xe8\x25\x62\x1d\xc5\xf3\x9a\x7e\x24\x15\x38\x2d\xba\xa6\x1f\x91\x51\xe4\x78\x4f\x7d\xb7\x5b\xfb\x7e\x03\x1d\x28\xd4\x6e\x9f\x56\xc2\x60\xe1\xc3\xd5\xf0\xf8\x1a\x7b\x7e\xdd\x0f\x51\xe6\x55\x1c\x23\xc7\x6f\x60\x18\x82\x0e\xd7\x7e\x25\x8e\x06\x15\x98\xc0\xbf\xa7\xa5\xee\x73\x9e\x8a\x94\xd0\x0e\x2b\x79\xdf\xe1\x8e\xd1\xdf\x2a\x87\x1b\x15\x98\xb1\xc5\xea\x74\x82\xf1\x6a\x69\x5a\x1a\x11\xe7\x9b\xe1\x88\xb6\xe5\x75\x3c\xc0\x6a\xb8\xe1\x75\xec\x87\x7b\xc1\x4c\xf5\x70\xa7\x7c\xbf\xf3\x2c\x2d\x8c\x1f\x78\xf9\x7b\x48\xcb\x5c\x12\x0d\x4a\x02\xe8\x24\x22\x23\x00\x72\xd2\xde\xca\x8a\x54\xf4\x1e\xeb\x04\x4c\x7d\x35\xb9\xde\xc8\x2d\xac\xd8\x0d\x5c\x89\x05\x7a\x6d\x0d\x72\x27\xab\xce\xc8\x19\x70\x0a\xa0\x4e\x6d\xb2\xad\x37\x59\x5a\x86\x61\x54\x93\x4e\x9a\xb6\xab\x19\x66\x4d\x55\x01\xb9\x02\xf2\x4a\x18\xb9\x22\xb9\x2a\x11\xd7\xda\x66\x06\xf3\x5d\xeb\x3c\x91\xce\x4a\x45\x7f\x48\xb8\x3d\x9a\x14\x2d\x37\xba\x30\x7c\xdf\x8c\x34\xb3\x62\x8e\x97\x24\xea\x67\xb0\x96\xc3\x9a\x17\xdb\x6d\x25\xff\x45\x08\xb5\xf3\x94\xe9\x9d\x2a\x37\xe0\x12\xa6\x53\xe7\x97\xbb\x7b\xaa\xdb\x21\x4e\x5a\xa2\x7f\xcb\xcd\x35\x8d\x40\xca\x93\x66\xef\xb7\x5b\xf3\xcb\x65\xf5\xa8\xd2\x08\x77\xaa\x81\x03\x63\xeb\xe1\x9b\x30\xd4\x65\xed\x0f\x77\x63\xa8\xa2\xe6\x03\x38\x99\x45\x58\x17\x5e\x83\x3c\x28\x05\x39\x9f\x93\x84\x33\xb3\x97\x75\xa2\x9c\x44\x49\xa9\x95\xfa\x97\x76\x72\xa6\xdf\xb4\x9b\xbb\x58\xe8\xf7\x1f\x4a\x26\x6c\xd1\x9c\x76\x8b\x82\x9b\xdb\xa5\xe1\x91\x9c\x80\x0f\x76\xbd\x79\xb5\xd2\x80\x22\x9b\x4f\x26\xf9\x85\xc9\x36\xc9\xe3\x18\x2d\x67\xf9\x5c\x56\x64\x76\xbf\x42\x96\xc1\x99\xa5\xfc\x84\xa1\xcf\x89\xee\xfb\x2c\x1f\x8c\xe7\x3b\x87\x47\xbb\x48\xb3\xf7\x3f\x6c\xa2\x65\x2b\xa8\x1e\x44\xcb\xd9\x78\x3e\x95\x0f\x9d\x92\x8c\x60\x6e\x54\x05\xa3\xb9\x41\x9f\x75\x4a\x18\xea\x1f\x10\xf8\x78\xda\xe6\x33\x6d\xb6\x8a\x9a\xb0\xd4\x91\x12\xee\xed\x76\xbe\xe6\x9a\x92\x72\x91\xd6\xff\x8b\xf2\x48\xd9\xa7\xdb\xad\xb9\xe7\x2c\x22\x45\xb7\xdb\xbe\x38\x90\xde\xb1\x25\xa9\x1c\xcd\x9e\xf2\x7e\x9f\x17\x25\x52\xa0\xf3\xa0\x73\x95\x3e\x57\x4e\x64\x84\x1f\x22\xb2\x8a\xe3\x9d\xef\xc3\x05\x1d\x28\x1e\x86\xd5\x60\xe0\x80\xa8\xca\x17\x37\x94\x98\x61\x13\x45\x42\x69\xd1\x6e\x68\x55\x83\xdb\xb9\xd6\xee\xb5\x01\xc0\x66\x92\x01\x1c\xd4\x93\x26\x0c\xfb\xf5\xa4\x21\x0d\xcc\x28\x8a\xd8\xb0\xde\xd0\x6c\xca\xf5\x0f\xdc\xc0\x3f\x24\x89\x1e\x89\xc2\x90\x06\xfe\x23\x80\x17\x8d\xc2\x13\x0b\x52\x4f\x55\x3c\x07\x9d\x4b\x5e\x3a\x3a\x0e\x4a\x24\xb0\xaa\x08\xe1\x0c\xb2\xc1\x69\x49\xa8\x02\x1f\xd0\x87\xa8\x40\x3d\xb7\xbf\xb2\x43\x1a\xe2\xfa\x7d\x25\x77\xd0\x46\x81\x65\x7d\x89\xee\x9f\xaa\x2f\xc3\x70\xf4\xf7\xcb\xa8\x90\x41\x2d\xbc\xcc\xcc\xab\xad\x8c\x96\x79\xc2\x34\x6c\x8e\xe0\x07\xc2\x1a\x00\x9a\x74\xe0\x02\x31\x15\xa6\xf0\x85\x93\x11\x7c\xf0\x19\x60\x9d\xa4\x61\x98\xaa\x8d\x9b\xce\xd2\xd6\xb3\x51\x92\xee\x5c\xc9\xc8\xc1\x70\x92\x5e\xcc\x10\xd9\x3b\x70\x4a\xd8\x42\x72\x75\xb2\x51\x07\x74\x3b\x9f\x22\x77\x90\x36\xb4\xb4\x12\x43\x1b\xc0\xb0\xdd\xea\x4c\x12\xcc\xe6\xbc\x14\x5f\x43\xb2\x9a\xa7\xfb\x85\x7e\x7b\x16\x7c\x6c\x19\x09\x70\xaf\xe4\x1a\xb7\x1a\x38\x88\xf7\xab\x46\x97\x83\x71\x8b\x28\x7c\x97\xd6\xb5\xa6\x2e\x2c\xc4\xb2\x71\x28\x6b\x22\xec\xd5\xd1\xa3\x09\x28\xf9\x4e\xda\xce\x28\xb7\xbc\x96\x21\xd8\x98\xcb\xa4\x20\xb5\x76\xca\x5b\xf8\x30\x11\x16\xce\x4b\xfb\x7a\xf9\x92\x95\xca\x68\xd8\x5c\x44\x85\xba\x61\xd4\x6d\xa7\x28\x9b\x2c\x0c\xb3\xd9\x68\x8e\xee\xd2\xc1\x00\x47\x85\xc6\xa4\x0a\x83\x5e\x45\xb2\x9f\x7e\xea\x1c\x61\x66\x03\x93\x66\xae\xad\xa9\x13\x71\x61\xb7\x53\xa2\x73\x23\xed\xbb\x18\x4d\x47\x89\x99\x85\x59\x3a\xdf\x59\x86\xf0\x1b\x40\x48\x0f\x12\x0d\x2a\x83\x3e\x5b\x1e\x09\xdf\x1a\x55\xd9\xd2\x91\x8e\x9a\x29\x49\x91\xfa\x40\x9d\x95\xdc\x76\x22\xe2\x38\x80\xf3\x18\x18\xc2\xef\x6e\x87\x1b\xc2\x87\x6b\x2a\xd2\xed\xf6\x6e\x07\xfc\x58\x0b\x00\x33\x09\xa5\xb8\xdc\x07\x59\x9f\x34\x61\xc8\xbb\xe0\x2a\x43\xad\xc7\x63\x92\xce\xb2\xb9\xc4\x00\x73\xc2\x67\xd9\x1c\xaf\xc8\x68\xb2\x6a\x25\x1d\x2b\xb3\x86\x1b\x92\xcf\x56\xf3\xde\xb2\xd5\x44\x2a\xa3\x0d\xe6\x08\xe1\x68\x63\x37\xf0\x46\xaf\x22\x32\x0c\x60\x40\x7c\xd6\xe4\xae\x85\x26\x07\xc2\x26\x2b\x10\xa1\x47\x88\xf5\xe5\x06\x5e\xa9\x31\x9c\x07\xe7\xa7\xaa\x42\xf9\x66\x84\x36\x93\x62\x3a\x9b\x27\xea\x96\x81\xb8\x76\x9d\x46\xda\x68\x05\xaa\x15\x2d\xb7\xb3\xad\x08\x73\x99\xea\xa6\x84\x3a\x82\xf7\xb5\x26\x2c\x26\x60\x7e\xd9\x98\xc9\xbb\x9e\x70\xce\x38\x20\x62\x0e\x5c\xa3\x43\xdb\xb9\x48\x38\xf0\x01\xbb\x85\x90\xd2\x3e\x01\x44\x46\x71\xec\xb3\xf7\x44\xa7\xd8\x76\x5c\x81\xb8\xd8\xbf\x2f\x54\x20\x16\xb8\x2b\xaa\xfb\x20\x74\xa9\x9a\x06\x30\x5d\xba\x60\xda\x20\x4b\xc4\xed\xd5\xd4\x1d\x48\xe2\x0e\x44\xd7\xd3\xa2\x69\x12\xc6\xef\xb7\xba\x6b\x9d\xb2\x69\x14\x85\x45\x29\xb8\x34\x28\x4b\x5a\xf9\xd1\xb8\x3c\xbb\x25\x05\x69\x55\x9f\xa9\x3b\x69\xe6\x92\x6a\xfb\xb5\xdb\x99\x25\xaa\xa3\x14\x37\x68\x27\xc1\x44\x63\xb7\xf9\x0d\x04\x46\x42\x4d\xf7\x24\x80\x52\xe9\x7a\x76\x33\x27\xcd\xec\xa6\xb5\xc6\x5e\xff\x57\x25\xcd\xe9\xd0\xe8\x10\x7c\x64\xe5\x75\x07\x7e\x99\xa3\xf2\xa9\xbe\xe3\x3c\x3a\xb7\x35\xc5\x39\xe0\x0d\x64\xcf\x8e\x16\xfc\xe6\x9a\xeb\x32\x0c\xd9\xe5\x60\x3c\x65\xb1\xb9\x69\x12\xe5\xd5\x97\x13\xa1\x49\x9c\xa9\xb1\xaa\xad\x50\xd2\x92\x48\x7c\x6a\x42\x50\x57\x71\x54\x4e\x9d\x38\xd4\xc9\x08\x25\x83\xf1\xae\x85\x2f\xf7\x03\x1f\xde\x08\x5a\xf9\xf8\x8e\xd0\x3b\x13\x1c\x94\xda\xf3\x5f\xd2\xea\x01\x38\x53\xed\x55\xe8\x9c\x77\x5c\x0d\x21\xd5\xaf\x57\x52\x0f\xf6\x4d\x37\xe0\xa5\x81\x2e\x8c\xad\xc5\xfb\xa4\x8e\x81\x4e\x42\x3b\x73\xae\xf6\x18\x93\xdc\x2d\xd4\x06\xc6\x71\x12\x7b\x85\xbc\x16\x61\xc5\x00\x09\x4f\x87\x59\xc1\x6b\x1a\x86\x4c\x93\x7a\x66\xb2\xdd\x42\xa6\x0a\x47\xd9\x4b\x11\xb3\x06\xb3\x89\x96\x44\x57\x34\x2d\xa3\x02\xeb\xdf\x98\x49\xda\x14\xa7\x4a\x74\xf2\x05\x2d\xd8\x9a\x09\x5a\xd5\x72\xb1\x90\xc4\xe0\x36\xbc\x0e\xc3\xfe\xfe\x77\xeb\x13\x45\xd1\x9c\xba\x3a\x84\x1f\xe8\x94\x44\x28\x0a\xb6\x7e\x23\x6e\x0b\x49\xe1\x39\x6f\x71\x70\x14\xc4\x7e\xc2\x00\xea\x0b\x7a\x4b\xe5\xc9\xdf\x4c\x08\x29\xac\x1d\xf6\x52\xab\x40\xd7\x24\x75\x89\x77\x66\xba\xd0\x7a\x52\xec\x56\x81\xf0\xd2\x0e\x6d\x6f\x64\x10\x6e\xfc\xbe\x31\x20\x9c\xaa\x37\x3d\x88\xa8\x96\x18\xba\xee\x7e\xfb\x21\x71\x5f\x10\xae\x1d\x42\x7f\x7c\x3c\xc2\xed\xfa\x6a\xd5\xb3\x6a\x5f\xf5\x0c\xe7\xa4\x9a\x65\x73\xbd\x72\x72\xc5\xf2\x21\xdf\xd0\x52\x2d\x18\x32\x6b\x63\xd6\x21\xef\x0e\x43\x85\x72\x96\x4b\xa3\xca\x75\x57\x26\x37\xef\xc4\x3b\x68\xb9\xb9\x02\x15\xe8\x9e\x9a\x1f\x11\x57\xe7\x05\x07\x01\x4a\x46\x08\xe7\xde\x5a\xe6\xdd\xb5\xf4\x13\x06\xb2\x03\x01\x18\xd4\x2f\xc3\x70\x79\xd1\x84\x61\xd4\x90\x25\xda\x35\x7d\x39\x1f\x87\x97\xb7\xd1\xcb\xbb\x02\xe7\xfc\x66\x65\xd5\xa1\x35\x2b\x7b\xa0\x3c\xc2\x2b\x7b\xef\xf8\x2c\x2d\xa3\x6b\xe8\xcc\xc2\x74\xff\x04\x27\xa2\x75\xf7\xa3\xe7\xc0\xfc\x88\x0e\x96\x4d\x34\x24\xc1\x25\x4a\x14\xae\xbe\xc3\x8b\x22\x2d\xdf\x4b\xac\xb9\xed\x82\x23\x1b\x75\x2b\x29\x0f\x75\x00\xa8\x51\x5b\x87\x3c\xf7\xf6\x25\x3a\x58\x3c\x29\x0d\x34\xf3\x3e\xa3\xe0\x4a\xde\x63\x7e\x93\x06\x98\xf8\x35\x99\x3c\x6a\x97\xfb\xfe\xd3\x0f\xb8\xf0\xd6\x60\xab\x9a\xf1\x79\x4f\x37\x92\xc2\x36\xdb\xab\x37\x35\x5d\xf2\xf7\x99\x66\xea\xec\xcf\x71\xe9\xed\x33\x09\x47\xc1\x29\x41\xc5\xb2\xe7\xab\xb4\xaa\x13\x31\xf4\xde\x7f\x0b\x61\x81\xcf\xd3\x3b\x83\x9d\xc0\x2b\xd6\xd8\x4b\x77\xe6\x77\x89\xcd\xa7\xfa\xa0\x96\x63\x27\xff\xfe\x95\xb8\xc7\x82\x7f\xa0\xd5\xbb\x8c\xaf\x37\xbc\x94\x17\xb7\x83\x3b\xec\x8b\x2f\x3f\xa9\x54\x9a\xe7\xbc\x54\x12\x44\x45\xb2\xfc\x01\x54\xe6\x77\xf4\x0a\xff\xce\xce\xfc\x5e\x84\xc8\xa1\xd7\x82\x95\x58\x17\xca\xd9\xf9\x22\xad\xea\xe0\x1e\xf2\xad\x8b\x42\x45\x2e\x37\x25\x10\xf4\xa3\x38\x96\x15\x05\x08\xdf\xc9\x5d\x9a\x04\x77\x77\x01\x86\x83\x90\x04\xbb\x5d\x60\x76\x84\x53\xc6\x69\x13\xe1\x0e\x6c\x4d\xfa\xa3\x1d\x72\x55\x4c\xbe\xfd\xfa\xdb\x17\x91\x6a\xe6\xe3\xa0\x2d\x39\x10\x74\xbd\x29\x52\x41\x03\xdc\x1d\xc7\xbf\x5c\xf4\x7d\xff\xc6\x19\x0e\xf5\x92\x28\x9b\x78\xfd\x4f\x39\x7c\x3f\x98\x8f\xe6\x4c\x1c\xc3\xdd\xb1\xa8\xd2\xec\x3d\x15\xf5\x1f\xc3\x8c\xf7\x76\xcd\x83\x3d\xc1\x0f\x76\xe0\x8f\x98\xa1\xd0\xe1\x7b\x7a\xfb\x6d\xba\x19\xd6\xcd\xa2\x60\x6b\x4a\xee\x96\x69\x51\x88\x55\xc5\x9b\xeb\x55\x12\x68\x67\xfd\xc1\x0e\x83\x33\x2a\xbe\x5e\xa7\x65\x5e\x83\xc7\x99\xef\x78\x8d\x59\x5b\x5e\xe7\x24\x6d\xca\x3a\xcd\x74\x0c\x00\x70\x82\x10\x3c\x5f\xe7\x83\x40\xf9\x06\x19\x04\x3d\x5f\xad\x19\xdd\x99\xf0\xe8\xd6\xb9\x4b\xfd\xf9\xad\x1f\x09\xdf\x88\x6c\x86\xda\xf1\x90\x92\xb0\x6c\xb7\x62\x98\xf3\x4c\x97\x96\x37\x3a\x5d\x6f\xc4\x6d\x84\x7c\x0d\x58\x06\x78\x25\xbb\x18\x41\x70\x35\x88\x57\x6a\xeb\x33\xa1\xb6\x4b\xed\xd9\x60\x30\x46\xc6\x2d\x0e\x88\x40\xe1\x4e\xd1\xae\x16\xe0\xde\xb9\x1c\x85\xa1\xac\xe2\x92\xf0\x8e\xa4\x7f\xbf\xb2\x78\xec\x85\x7a\x48\x71\x4d\x0c\xcb\xa0\x81\x7e\x48\x4c\x07\x38\x36\xa6\x2e\xc0\x77\x9a\x3e\x29\x26\x4d\x4c\x18\xce\x0c\x2b\x63\xa9\x22\x08\x81\x2d\xfa\xc5\x68\xda\x0c\xc6\x49\x83\x70\x4e\x82\x77\xca\xce\x92\x3a\x1e\xa0\xa3\x25\x02\xfb\xd3\x80\x07\x20\x62\xfb\xa0\x6c\x14\x97\xbe\xbb\x67\x30\xe7\x8c\x72\x12\xfc\x18\x20\xc3\xaa\x21\xa4\x46\x01\x0f\xfa\x32\x7b\x54\x93\x80\x95\x01\x4e\x49\xde\x3a\x3c\x0c\x40\x36\x5f\x83\xd6\x60\xae\x28\x27\x59\x7b\x1a\x86\xc1\x8f\xaa\x15\x98\xe5\x66\x30\xc0\x90\x20\x3f\xe8\xe6\xd9\xe5\x08\xdd\xa5\x24\xf8\x10\x58\xf6\x95\x66\x5d\x59\xc3\x1e\xe3\x5c\xa2\x41\xbb\x08\x16\x16\x33\x15\x6f\xa9\x42\x49\x75\x31\x9a\x2a\x77\x0b\x11\x4a\xd8\x50\x70\x25\x69\xaf\x66\x62\x16\x3c\x2b\xc4\x00\x1c\x9c\xcc\x49\x70\xcd\xdf\x34\x8b\x0f\xbc\xca\x75\x82\x7b\x04\xd2\x88\xe2\xc1\x18\xed\xb0\x2d\xa5\x3c\xa1\xb8\xc5\x4c\x4a\xb7\x9c\x2c\xc6\xc2\x30\x12\x33\xd8\xcb\x6d\x73\x96\xf7\xf7\x66\xdd\x72\xbb\x6a\xd8\xf3\x72\xb3\xcb\x56\x0e\x6c\xfc\x26\x32\xb1\x5e\xc4\x90\xd5\xdf\xd3\x34\x7f\x5d\x16\xb7\x2d\xe9\xa2\x99\x9a\x42\xe2\x0c\x2a\xe6\x5d\x74\x58\x0b\x41\x0c\x0b\x56\xb7\x5e\x91\xea\x08\x59\xc9\xa1\xd2\x67\x19\x8c\xb1\x8a\x11\x4d\x27\xa9\xd9\x4d\xf5\x81\x62\xb3\x54\x05\xb7\x52\x9e\x17\x54\xa0\xe5\x0b\xc2\x91\x89\x60\x55\xea\xb4\x38\xaa\xa6\xa3\x64\x8c\xf0\x08\xf5\x84\x11\xaf\x2a\x47\x48\xe0\x69\xaa\xd1\x1e\xc2\x62\xa5\xf4\x20\xa7\x27\x40\x16\x5f\x86\xe3\xd4\x68\x2d\x28\x1d\x43\x1a\x9b\xb0\x69\xb2\xf9\xa4\xc1\x2a\xfe\x56\xd2\xec\x10\xe6\x44\x37\x3a\xde\xed\x40\x49\xc1\xe9\x31\x83\x2b\x42\x91\xdb\xcf\x15\x70\x92\xfb\x53\xb6\xf2\xac\x11\x3c\xf0\x34\xc2\x3d\xb7\xf6\x2a\xde\xb2\x04\x4c\xe0\xf8\xa4\x73\xca\x27\xac\x73\x9c\x52\xd7\x1d\x16\x9a\xa0\xc1\x80\xc1\x91\x9e\x70\x1b\xce\xed\xbe\x12\x5c\xe6\x8f\x63\xae\x51\x66\xa5\x24\x66\xf7\x39\x03\xcd\x30\xfb\xca\x11\x96\x3b\x30\x49\x35\x8a\x2f\x09\xd3\x1d\xec\xf0\x3a\x0e\x7e\xd8\xc8\xed\xa6\x82\x6c\xc8\xde\xc2\xbb\xbb\x49\x0d\x48\xbf\xa6\xe2\x0d\xe4\xfa\xba\x5c\x72\xed\xd6\x8c\x0e\x6b\xbe\xa6\x62\xc5\xca\x6b\x35\x81\x34\x8f\x50\x6b\xd6\x22\x5b\x7f\xa6\x6d\xf1\x22\x01\x96\x43\xc6\xf8\x4e\x25\xe2\x00\xb8\x56\x10\xa1\xfb\x9a\x8a\xe7\x70\x21\xc9\x9d\xc6\x4a\x7a\x49\x40\xb3\xda\x5b\x05\x75\x2a\x7e\xd8\x04\x68\x47\x87\xaa\xcf\x6f\xb9\x76\xcb\x2f\xab\x1f\xd8\xd0\x58\x6f\xe9\x47\xd3\x30\xd2\x07\xb3\x8e\x95\xeb\x22\x6f\xb8\x3a\xe5\x7f\xda\x80\xed\x08\xe3\xf1\x81\x31\x5e\xdc\x3b\x46\xe8\xd7\x3d\xa3\x8c\x1f\x1a\xa5\xf2\x98\x35\x08\x62\x1e\x07\x2f\x61\xac\x9b\x82\xb5\xdb\xfb\xf3\x5b\x38\x38\xf3\x7b\xec\x12\xe8\xde\xf1\x55\xde\xe0\x54\x78\x24\x2b\x5a\x61\x71\xec\x78\xa8\x15\x33\x36\xd7\x10\x54\xee\x7b\xf9\x26\xc1\x28\xae\x89\x0a\xed\x36\xa9\x2f\x48\xaa\x7e\xc5\x71\x8d\xd4\xcf\x4b\xae\x1d\x02\x81\x47\x17\xf5\x13\x7c\xaf\x64\xab\xed\xd6\xe8\x3e\xea\x13\x5b\x13\x5d\xd3\x54\xee\xea\x1a\x8f\x10\x86\x23\x6d\x8b\x4e\x53\x99\x8e\x76\x72\x1f\xf9\x87\xb9\xc2\x23\xb4\xc3\x76\x5a\xde\xa6\x0b\x39\x27\x1a\x66\xd0\xba\x0e\xe4\xa4\x0d\x5f\xd4\x19\x09\x6a\x56\x5e\x17\xd4\x96\x7d\xcb\xef\x3b\x09\x7b\x10\x6e\x34\xef\xb4\x1b\x09\x1b\xec\x4f\x5d\x34\x4e\x14\x1b\xbd\x4e\x76\x79\xa0\xcc\xbf\x6a\x51\xee\xda\x15\xe9\x75\x26\xb1\x8c\xb8\x5e\x24\x05\x15\xcc\x24\xca\x74\xb9\x5c\x2d\x62\xb1\x83\x7d\xe7\x4f\xa3\x3b\x89\x70\xe7\x7c\x23\x3b\xaf\x74\xe6\xa1\xf3\x66\x50\xca\x77\x1b\xcc\xb1\x01\xd3\xcf\x96\x2a\xe9\x00\x9d\xd8\x44\x14\xf7\xc7\x07\xb6\xee\x81\x6a\x94\x9a\xdb\x03\xf5\x8c\xda\xa9\xfd\xa2\x9d\xda\x57\xf4\xa3\x78\x9d\x29\xbd\x90\xcc\x2b\xee\x98\x50\xb5\x07\x33\x90\x73\x04\xa6\x2a\x5e\xaa\x84\xfb\x98\x5b\x53\x27\x8d\xd8\x7e\xc9\xca\xfc\xcb\xa6\x28\x24\x80\x26\x44\xe1\x8c\x35\x05\x05\x24\x88\xc8\x97\xad\x01\x6d\x93\x98\xa2\xa1\xdc\xd5\x95\xa1\xd9\x8b\x12\x2c\x1b\xab\x4c\xff\x1a\x8a\xb4\x97\x21\x70\x76\x84\x39\xe9\x8f\x5a\x3f\x07\xb5\xea\x9a\xba\x1b\x65\xdd\xb8\x21\x7c\xea\x7a\xc5\xbd\xba\x5a\x04\x71\x1d\xc3\x7f\x94\xd4\x38\x53\x25\xde\x00\xda\xaf\x87\xd4\x60\x86\x26\x51\x06\xb6\x9b\xaf\x40\x41\x61\xbb\x8d\x0e\x67\x94\xfb\x19\xf4\xc5\xe1\x3a\x93\x37\x34\x42\x4e\x39\x14\x86\x62\x98\xe6\x2d\x96\x1d\x65\x06\x1c\x64\xb0\xb5\xc0\x15\x6f\xf4\xd0\xdc\xd9\xa9\x73\xfd\xcc\x66\x1d\x68\x6c\x40\x27\x90\x0d\x75\x96\x96\x5f\xf2\xea\x73\x45\xa7\x44\x42\x22\x60\x6d\x28\xfe\x89\xe3\xaf\x72\x2f\xe7\xd8\xf7\x60\xa5\xb8\x3e\xd9\x8a\x90\x20\x42\x77\xbb\xd9\xdc\xba\x66\xb1\xef\x86\x55\x0f\x28\x7e\x3c\x76\xb0\x29\x6f\xcd\x4a\xa5\x70\xa4\xce\x97\xfa\x99\xad\x20\x22\x26\xf0\x7a\xfb\x63\x84\xfb\xa3\x9e\x20\x65\xc4\xda\x7c\xac\xcd\xa7\x2e\x65\xf7\x18\x28\xf7\x85\x76\x2f\xbf\xc9\xf8\xa6\x7b\x02\x32\x15\x7c\xc5\xbf\x44\x54\xf6\x67\x45\x11\x1c\x38\x5b\xdf\xb6\x15\x7e\x4e\xc5\x07\x4a\xcb\xcf\x2d\xb5\xe7\x9d\x0e\x39\x4b\x59\x24\x3a\xc8\xa3\x3d\x64\xdf\x2a\x44\xf5\x2d\xd7\xc5\x3b\xa5\x7f\x83\xf8\xaa\x1c\xf3\x41\x7f\x85\x2a\x05\x33\xd5\x32\x31\xf0\x6b\x69\x8f\x92\x9a\x49\x95\x03\xb5\xbc\xf0\x0d\xaf\x2d\x71\x75\xb8\xb6\x41\x1b\xe0\x87\x87\xa1\x04\x7a\x76\x05\x78\xbb\x02\xf2\xea\x91\xd9\x25\x09\xa0\x1c\x5a\x19\x22\x53\x21\xda\x89\x0b\x02\x1d\xb4\x3b\xff\x34\xb4\xdb\x22\x8a\x00\x4a\xf6\xa0\x7a\x0a\x11\xfd\x74\xcc\x57\x27\x8e\xac\x89\xf5\xaa\x63\xbc\xf6\x1b\x43\x8e\xb6\xb7\x44\x41\x1a\x0f\xba\x67\x10\xb0\x55\xbf\x39\xf5\x0d\xc6\x61\xc8\x67\x75\x3c\x9e\xbb\xd9\x09\xc9\x26\x28\x23\xcd\x2c\x8e\xeb\x79\x5b\xae\xa7\xd4\xcb\xa2\x02\x67\x68\xb7\x33\x38\xe9\x94\x91\xfe\x28\xd1\x9f\x7c\xc0\x20\xc0\x5e\x44\xbd\x28\x43\xb2\x87\x89\x0c\xab\x18\x9f\xb6\xc6\xd6\xe4\xc4\xd0\x12\xe9\x8c\xcf\x71\x23\xff\xc5\xe3\x39\x2e\x88\xbe\xfa\x33\x52\x46\x0d\xc2\x4b\x17\x0a\x16\x38\x83\xa8\x8b\xd5\x74\x39\xac\x79\x25\x22\x94\xe8\x1f\x07\xed\xe9\x3b\x11\x8a\x74\x1c\x5a\x27\xc5\x4a\x69\xc1\x9b\x60\x44\x49\x85\xc1\xbb\x3f\xbd\x10\xd3\xc1\x38\xa1\x84\x08\x49\xac\x28\x42\xc1\xa3\x55\x96\x58\xce\x16\x06\x5c\xdf\xbb\x7f\x0b\x75\xdd\x66\x3b\xb4\x63\x12\x60\xfa\x17\x2c\x85\x7b\x57\xd1\x9d\x4b\x8b\x95\x7f\x48\x37\xfb\x38\xb9\xf8\xf4\x7d\x56\x1d\xda\x65\x9a\x7e\xf3\x56\x0e\x88\x39\xbb\xf9\xaa\x03\x9b\xaf\x9a\xd5\x73\xdc\xd9\x65\x83\xb1\xbf\xcf\xcc\x7e\x69\x51\x8e\x46\xe3\x41\x26\xbb\x7d\xcf\x56\x16\xfd\x68\xe0\xc4\xb5\x39\xe0\x2d\x5b\xa1\x1d\x18\xa9\xe9\xea\x25\x56\x68\xb7\xfd\x76\x3b\x18\x64\xb8\xb8\xe4\x53\xd6\x6e\xd0\x84\xb5\x8a\x8e\x6c\xc6\x5a\xa5\x26\x92\xc9\x0b\x34\xdb\xfd\xf6\x76\x1c\x4d\x68\x6b\x00\x41\xed\x4e\xac\x08\x9b\x51\x39\x65\x6c\x46\xe5\x4e\xac\x5d\xda\x6e\x9f\x58\x0d\x70\x09\x68\xa7\xfc\x07\xf8\x14\x0e\x62\xb3\x92\x12\x89\xb8\x74\x4f\xc9\xf4\x00\xa9\x1b\xd7\x70\xe3\xba\x47\x49\x93\xbe\x6d\x35\x49\xa7\x9c\xbc\xec\x4b\xd9\x32\x87\x96\xbb\xd9\xf7\x88\xdc\x14\xd4\x2b\x34\x79\x23\xf8\xdf\x19\xfd\xa0\x18\x1f\x58\xef\x40\x4b\x2a\xe9\x3a\xba\x84\xd2\xbf\x6c\x17\xb6\xc3\x8c\xe5\x26\xac\xec\xc2\x4d\xd2\x4b\x32\x9a\xa4\x83\x81\x81\x07\xd5\x2c\x95\xf0\xa0\xf6\xd0\xd5\x82\xd4\xee\x96\xec\x8d\xfa\x26\x83\xdc\x32\x75\xbb\x65\x9a\xc1\x00\x37\x17\x76\xcb\x34\xb8\x78\x60\xcb\x14\x72\xcb\x14\x9f\xb0\x65\x6c\xa1\x93\x09\x95\xdd\xa5\x83\xfb\x76\x4d\xea\xef\x9a\x8a\x90\x07\xf7\x01\xec\xa2\xc1\x18\x76\x11\x7a\x70\xe9\x7f\x6b\xc3\x75\xb2\xa7\xbf\xbd\x53\xee\xdb\x16\x3c\x0e\x8e\xe5\x9e\x10\xfc\xfa\xba\xa0\x12\xd9\xa0\x46\x7d\x8e\xe6\x1d\xb4\x44\x82\x58\x27\x57\x74\xa7\x45\x83\xc0\xc1\x37\xb5\xfd\x55\xd6\xf6\x33\x67\x25\xb8\x2b\xff\x97\x10\x40\x3e\x59\x0a\xde\xc5\x35\x2e\x5a\x6b\x62\x11\xb4\xc5\xda\xbb\xb1\xad\x40\xde\x8d\x62\xc6\xf6\xee\xc6\x66\x82\x1a\x22\x66\x71\xcc\xdc\xbb\xd1\x90\x57\xc0\xe1\x4c\x6a\xd0\xcd\xb4\x3c\xa6\x3e\x37\x1b\x2f\x0c\x53\xa0\xa7\x1e\xde\x48\x02\x42\x6b\xda\xeb\xb0\xf2\x7c\x8f\xb8\x6c\xde\x4a\xdd\x89\xb5\x86\xa3\x12\x93\xa9\x3d\x18\x2b\x70\xed\xc2\x58\x79\x3c\xa0\x87\x93\xe2\x82\xd4\x43\x5a\xe6\xae\x5e\x7b\x31\x10\xbd\x82\xa8\xf4\x30\x8c\x52\x52\x46\x19\xa6\x76\x9b\x66\x86\xe7\x27\x51\x5e\x9c\x5d\x50\x67\xc3\x42\x9c\x3f\x7f\x1f\x1e\xc9\x5d\x95\xc9\x6d\x98\xc5\x63\x7c\xfc\xcf\xab\xfa\xcf\xc7\x4a\x69\xc5\xa9\x52\x56\xe5\xba\x1e\xc3\x71\x2c\xd0\x8e\xf9\x17\x47\xb3\xdd\xa6\xea\x7a\x48\x0f\x10\xa3\x4c\xdf\x95\x7b\x88\x2d\x50\x7d\x79\xb3\x29\x58\x96\x6a\xb2\xb4\xbb\x29\x7f\x6b\x19\xf6\xb7\x9a\x61\x7b\x6a\xed\xd2\x36\x30\x04\x3b\xc4\x0a\xa8\xe6\xbd\x56\x58\xd0\x99\xa0\x76\x16\x58\x7b\xe5\x21\x73\x1c\x9d\x34\x49\x60\x25\x87\x0a\xab\x9f\x86\x5d\x8d\x15\xbb\x5a\xfe\x57\x09\x2d\xbf\xa8\x73\x78\xe1\xb0\xbd\x85\xa3\x5b\xa5\x65\xbd\xe1\x35\x05\x21\xae\xe2\x7e\x7c\x79\x4e\x02\x89\x2b\x1d\x3a\x84\x79\x87\xb0\xfe\xf2\x1c\x2e\x05\x93\xfb\xeb\xb2\xa6\x65\xcd\x04\xbb\xe9\x4e\x75\xee\x50\xf6\xc3\x2f\x4f\x48\x50\xd2\x8f\xe2\x73\xce\xdf\xaf\xd3\xea\xfd\x3d\x8c\x15\x8f\x3e\x34\x79\xeb\x36\xb4\xf2\xc4\x1e\x75\xc7\xf9\x89\xb2\x88\x01\x8f\x27\x92\x24\x8d\x74\x68\x15\x2b\x3b\xd1\x21\xd8\x71\x97\x56\x53\xf4\x75\x29\xe9\xeb\x9d\xb7\x95\xbe\x3c\x91\x43\xdc\x54\xf4\xe6\x5f\xd8\x5d\x61\x5d\xde\x69\xa3\x07\x63\x67\x2a\x66\x2d\xf8\x99\x3b\x23\xa8\xee\xa1\x31\x2b\xd5\xef\x4a\xf6\xbb\xa7\xeb\xda\xb5\xcb\x73\xd2\xc2\xe7\x7b\x7a\xff\x1b\x60\xf5\xbe\x61\x81\xd9\xec\xe1\x4f\x87\x82\x55\x97\x2e\xe0\x62\x44\xcc\x4a\xcb\x22\xe4\xea\x0d\x58\x84\xa9\xeb\x3c\x0a\x18\xd3\x1a\x05\x4d\x5d\x14\x94\x2d\xa3\x74\x56\xcf\xbb\x0d\xa3\x3b\x48\x35\x5e\x8e\x7c\xcd\xeb\xca\xd5\xbc\xae\x66\xcd\x9c\x10\x99\x3b\x0c\x2b\xe3\x69\x51\x22\x04\x36\xd4\xbc\x62\x25\x6a\x64\xa0\xda\xf3\x18\xc2\x30\xc7\x77\x9d\xe6\x93\xfe\x48\xf9\x95\xf8\x71\x45\xcb\x17\xf2\xc8\x03\x7b\xaf\xb3\x9b\x00\x30\xa9\x65\x81\xcc\x76\xd6\xfe\xe0\xa6\xba\x47\xd1\x1d\x62\xd4\x98\x99\x10\xad\xa3\xa7\x56\x24\xa5\xfa\xa0\xc9\xfe\x3f\xd4\x09\xb8\x74\xfd\x9e\x1c\x5a\x75\x77\xc5\xf5\x76\x9e\x76\x78\x91\x0a\x60\x29\x08\x2f\x81\xd8\x4e\x22\x35\x7a\x59\xca\xc1\x40\xc2\xf7\xca\x91\x80\xdc\xc3\xd2\x95\xa3\xfa\x9b\x1c\xd4\x87\x4a\x61\x2f\x75\xa0\x15\x97\x78\x1c\x7c\x73\xe4\x90\xe7\x1b\x23\x0e\x7e\x18\xfc\x97\x0f\x20\xaa\xb3\xb9\x16\x77\x59\x1b\x6e\x90\x7a\x45\x0d\x29\x67\xe9\x1c\x59\x98\x1f\xe9\xab\x2c\x45\x58\x87\x9a\x0e\x02\x84\x12\xfd\x5b\xfb\x35\x52\x70\xdc\xd0\x52\x58\xd1\x38\x08\x49\xe4\x4b\x03\x7d\xa7\x0b\x1c\x07\x69\xc5\x9b\x32\x0f\x70\x90\xa5\x35\x35\xa2\x40\xd8\xf0\x69\x8b\x81\x76\x11\x66\xd9\x33\x36\x4b\xe7\x73\x2d\x79\x03\x15\x4a\xc5\x45\x51\x44\x16\xae\xd1\xe5\x08\x59\x5c\x20\x12\x9a\xf8\x42\xbd\x9a\x28\x0e\x5e\x17\x77\xac\xa2\x4c\xf1\x2c\xb1\xfe\x9e\x29\xf0\xb9\x73\xdd\x24\xad\x1f\x66\xac\x96\xfb\x8c\xd5\x7d\x7e\x69\x89\xcc\x3e\x72\xf8\xa5\xcc\xe3\x97\x56\x44\xef\xa2\x12\xdc\xe4\xef\x5c\x49\x58\x05\xf2\x2f\xfc\x4b\x43\xab\xdb\xc4\x63\x96\x96\x5a\x16\xc6\x1c\x43\x97\x1b\x97\x35\xb0\x36\x11\xff\x5a\xbd\x35\xa8\x06\x73\x2d\x12\x72\x59\xa3\x0c\x8b\xa9\x84\xc4\x89\x82\xca\x68\x12\x89\x29\x77\x38\xa3\x89\x7a\xf9\xae\xa2\x37\x8c\x37\x75\x84\x24\x4e\xe0\x81\x73\x8b\x9d\x2a\x94\x14\x25\xd1\x7d\xed\x94\x26\x30\x9f\x65\xc2\x26\xd4\x51\x0c\x70\x71\x33\x84\x10\xfe\xcf\xf7\xa4\x82\xe9\xee\x9e\x3f\xef\x02\x42\xbb\x9d\x98\xad\x24\x84\x6b\x23\xb9\x28\xb1\x80\xec\x88\x8a\x0d\x22\x01\x10\x64\xf9\xc6\xf9\x74\x48\x1a\xfe\x47\x90\x33\x0c\xb4\xa5\xd9\xff\x95\xdc\xff\xd5\x60\x80\xba\x98\x69\x80\x01\x3e\x6a\x99\x4c\x09\x36\x41\x2d\x2a\x2f\xe9\x25\x25\xc9\x00\x41\xe4\xbd\xe4\x0f\x8c\xe2\x07\x39\x8a\x66\x23\x0f\xe2\x33\xbd\x89\x3b\xe3\xd8\x44\xd4\xf7\x3c\x67\x2f\x72\x8f\xc5\xe4\x57\x0b\xb2\xa0\x9c\x7f\x28\xff\x60\xc5\x4e\x78\x6d\xbf\x62\x87\x83\x2c\xde\x28\x80\xfe\xed\x3e\x52\xd0\x01\xf9\x32\x07\x2c\x7c\x37\xd1\x5c\x31\xf8\xc0\x37\xf0\x9f\x67\xaf\x96\xc8\x63\xd9\xbb\x3d\x7a\xd6\xde\x43\x6f\xf9\xfd\x5d\x3a\x78\x17\xdd\xdf\x31\x7d\xd5\x88\xbd\xfd\xea\x8b\x0e\x84\xdb\x93\x1f\x5b\x19\xd6\xbd\x3d\xd9\xf3\xb3\xe7\xf5\xe4\x40\xa2\x87\xc3\x99\x08\x72\x5e\x1f\x18\x81\xc0\x10\x16\xdc\x95\x98\x49\x40\xac\x65\x77\xac\xc7\x48\x89\x4b\xc2\x77\x9d\xca\xbf\x61\x45\x41\x73\x97\xeb\x59\x82\xa4\x7f\x9f\x1b\x80\x99\x41\x42\x60\x98\xff\x30\x7c\x9c\x1f\x99\x58\xfd\x4f\x98\xf0\x2e\x62\xf8\x9f\xda\x28\x0a\x4f\xd7\xaf\xc2\xdb\x38\x3f\xc1\x38\x54\x3d\x3f\xa5\x65\xb7\xff\xca\x77\x2e\x3d\x34\x69\x10\x7f\xb2\x73\xb1\x76\x7b\xad\x72\x6a\x86\xc8\x26\xad\x25\x34\x90\x68\x06\x34\xfd\x97\x03\xf8\x5b\xdb\xb1\xe7\xd0\xb1\x15\xff\xf0\x75\xf9\x9c\x96\xfb\xc2\x4e\x33\xb3\x4a\xe1\xee\x39\xb8\x47\x55\xf2\x7c\x47\xff\xc1\x17\xf4\x5b\x75\x09\xeb\x68\x75\xb0\xa7\x91\xe0\xa9\x52\x1c\x9f\xf8\x04\xb1\x44\x8e\x34\x17\xd9\x4a\x98\xeb\x1f\x36\x1f\xd2\x6a\x9f\x53\xf3\x87\xe0\xee\xe1\x68\x89\x0c\xa2\x25\xf6\x1c\x62\xf6\xd2\xbb\xb6\xe4\x4a\x78\xa2\x42\x8f\xf0\x05\x97\x53\x86\xff\x0b\x3e\x41\xf6\xc6\x64\xf9\x92\xed\xa8\x64\xd2\xff\xfa\x71\x75\xb8\x21\x0f\x0d\x2b\xbe\x67\x58\x92\x32\x38\x95\x83\x91\x67\xe9\x87\x32\xdf\xdf\x38\x2e\xf5\xed\x11\x14\x7e\x31\x73\xad\x1f\x2a\xee\xe9\xa5\xb5\xe5\x9e\x15\xc5\xc1\x16\x61\x62\x0c\x12\xd4\x09\xf2\xd9\x45\x4b\x84\x42\x8d\x24\x4e\x07\xdc\x38\x79\x05\x3b\x38\xc7\x04\x95\x3e\xda\x5f\x19\x14\x03\x10\xff\x4a\x2b\xdb\xe1\xca\x65\xb7\x5d\x10\xd1\xfa\xbd\x94\xa4\x98\xfe\x96\xad\xec\x97\x6c\x15\x86\x2c\x8e\xf7\x74\x3d\x34\xdc\xf3\x67\x6a\x06\x03\xe6\x45\x1e\x74\x3e\xcc\xe1\x22\x2f\xcd\x27\x38\xc8\xa3\x60\x4e\xf4\xcf\x9f\xdb\xcf\xcf\x8a\x22\x50\x2c\x94\xaf\xcd\xec\x7d\x5d\x66\x15\xf8\x00\x4a\x8b\x6e\xbd\x87\xf2\x7c\x4f\x6f\x68\x55\x53\x5d\xcb\x57\x32\x87\x06\x47\x01\x16\xc3\x2f\x4f\x55\x81\x57\x10\xa9\xb2\xe5\x43\xd8\xb5\x92\xcb\x1b\x60\x3a\x2c\x79\xb5\x4e\x0b\xf6\x2b\xfd\x06\x94\x61\xc1\xe7\x36\xc2\x5a\xf3\x37\x70\x35\x7e\x67\x73\xcf\x0f\x8f\xa7\xa3\xab\x11\x65\xad\x42\x94\xb4\x9a\xbd\x3b\xb7\xb6\xff\x3f\x5d\x2f\x68\x35\xc8\x53\x91\x1e\xa7\x79\xba\x11\xb4\x3a\x1e\x6c\x2a\x76\x03\x5a\xd5\xb3\x40\x6b\x49\x43\x5c\x40\xd0\x63\x0e\x70\xa0\x8a\xb0\x72\x29\x97\xa4\xe3\xb6\x4b\x3b\xcf\xde\xd3\x16\x2e\x89\xd5\x07\x66\x10\x39\xcd\xe8\x36\x25\x02\x33\x72\x7c\x55\x4d\xaf\xca\x63\x2d\xdb\x3d\xbe\x9a\x5d\xcd\xff\x74\xec\xaa\xf9\x9a\x98\x60\x9c\xe5\x47\xa3\x3e\x81\x90\x69\xca\x94\x1c\x7e\x56\x04\x02\x7f\x92\x03\x3a\xd4\xd5\xb4\x8a\x50\x52\x61\x3a\x33\x9e\x5e\xe6\x84\x96\x19\xf8\x90\xfa\xfa\xb9\x51\xb0\x8f\x04\x8a\x03\x12\xc4\x07\xbe\x54\xc8\xb8\x38\xb7\xe1\x0e\x1b\xf2\x42\x4e\xc1\xf0\x5b\xf6\x91\x99\x58\x8e\xd1\xdd\xa2\x61\x45\xfe\xc3\xf7\x2f\x3b\x31\xaa\x95\x3b\xfd\xfa\x03\xd3\x1e\xf3\x80\xb6\x93\xcb\xfd\x3d\xcd\x78\x95\x07\x89\x61\x61\xad\x58\x3d\x6c\xaa\xe2\x4b\x5e\x7d\x69\xbf\x46\x02\x53\x49\x17\xd9\x42\x72\x93\xde\x53\xe2\x59\xa1\x3c\xd7\xaa\xcc\x70\x64\x0f\x65\xfd\x9b\xfc\x10\x31\x4c\xdd\x8c\xf7\xf7\xe5\x6f\xed\x67\xa7\x90\x62\xe6\x94\x07\x1b\xf8\x52\x7f\xdb\xeb\xfb\x57\x69\xfd\x50\x19\xfd\x79\xaf\xd8\xe7\xb4\xe0\xe5\x75\xfd\x96\xdf\x57\xd0\x66\xf0\x8a\xea\x10\x9b\xf7\x0e\xec\xb9\xf3\xdd\x99\xb7\x06\x1c\xb2\xde\x5f\xec\x07\xe7\xbb\xd7\x9e\x42\x30\xef\x2f\xf8\x85\xf3\xdd\x14\x34\x67\xc0\xcd\xfd\xce\xec\x23\xe5\x5c\x7c\x87\xdf\x1d\xdc\x58\x1a\x5f\x35\x30\x59\x6d\xc8\x6b\x2a\xc0\xaf\x26\x0e\x56\xbc\x16\x4a\x95\x49\xf7\xe0\xbb\x8a\x2e\xd9\xc7\x56\xe4\xad\xdc\x3f\xc1\xd7\x4d\x2a\x56\x5f\xf2\xea\xed\xed\x86\x46\x14\x21\x70\xb7\xa2\xb9\xa9\xc2\xbe\x1c\x3c\x33\x10\x6d\xa0\xb4\x3c\x4f\x2e\xaf\x08\xe5\x29\x25\x0a\x8e\x03\x84\xfb\x2c\x0c\xcb\x30\x0c\x8e\x83\x3e\x21\xa5\xd1\xb7\x19\x21\x79\x7a\x49\x70\x1c\xc4\x25\xc2\xe5\x0e\x77\x77\x7d\x67\xa0\x87\x67\x47\x60\x8a\xdc\xa2\xcf\x8a\xe2\x90\x89\x52\x77\x4e\x6d\x19\xd8\xd8\x9f\xd6\x92\x5f\xe6\xf7\xf4\xd1\xeb\xa1\xdc\xdd\x7f\xa0\x98\x3e\x17\x7f\x68\x52\xec\xd1\xf8\xdd\xa5\xdd\xe3\xf1\xbb\xe6\xd5\x3d\x20\xbf\xbb\x55\xf7\x90\xfc\xbe\xc2\x6a\x7f\x1f\x3a\x22\xf7\x9d\x8d\x72\xef\x43\x99\xae\xa9\xe2\x6e\x28\xba\xce\xec\xdc\x6a\xbb\xd5\x57\x8c\xf5\xb9\xf6\xcf\xab\xe3\xab\x63\x1d\x7c\x81\xa2\xed\xf6\x78\x25\xc4\x26\xaa\xd1\x34\xf1\x3e\x4c\x69\x12\x1c\x07\xc4\x89\x89\x3c\x42\xd3\x20\x88\xab\x98\x26\x22\x96\x27\x80\xea\x88\x9f\xb3\xb9\x55\x46\x09\x43\x66\x0f\x60\x69\x5f\x4a\x84\x59\x7b\xb4\x76\xd8\x39\xb5\xc9\x3e\x6a\xa7\x86\xa6\x83\xfe\x65\xe9\x9a\x4a\x7c\xc2\x89\x5d\x5a\x0d\x37\x45\x53\x01\x96\x21\xb7\x1b\xa8\xd4\x7e\xae\x27\x15\xae\x35\xd2\x80\xf5\x95\xa0\xd5\x9a\x95\xf4\x73\x9e\xdf\x7e\x57\xf1\x35\xab\x29\x39\xb4\x2c\x11\x28\xdb\x28\xff\x47\xaa\xe9\xef\xdf\xfc\xfd\xbb\x61\x45\x6b\x5e\xdc\xd0\xa8\x42\x43\xe5\xfd\xf4\x20\x5f\x63\x87\x10\x1a\x8a\x15\x2d\x7d\xb5\xb1\xae\x47\x1a\x37\x2e\xa8\x21\xae\xfb\x74\xc8\xdf\x5b\x6f\x91\xe0\x75\x95\x91\xbf\xbe\x79\xfd\x4a\xbb\xaa\xad\x8c\xdb\x55\x1d\x03\x30\x4a\x5d\xaf\x78\x6f\x6e\x4b\x91\x7e\x04\x4f\x7c\x56\xa9\x21\xed\xa5\xc3\x4d\x7a\x5b\xf0\x34\x27\x12\xba\xa6\xda\x2e\x5f\x91\x91\x4d\xad\x27\x10\x1a\xde\x6e\x4f\x46\x8f\xfa\xe0\x88\xfe\x64\xf4\x58\xfd\x08\xbe\x7a\xf1\xec\x0b\xb9\x69\xc4\x70\x4d\xc5\x8a\xe7\xd3\x72\xbb\x65\x89\xc2\x5c\x76\x7a\x10\x3b\x23\x17\xda\x61\x3a\x5c\x52\x91\xad\x3a\xd1\xe4\x15\x91\x4b\xac\xf9\x71\xad\x38\x0d\xe0\x85\x29\x0a\xa0\x44\x80\x4c\xe4\xc5\xd2\xa6\x18\xa4\xaa\x57\x93\x3d\xb3\xff\xff\x87\xbb\x77\xef\x6f\x1b\xb7\x16\x45\xff\xd7\xa7\x90\x79\xce\x51\x89\x63\x44\x63\x4f\x1f\xb7\x47\x09\xc6\xbf\x4c\x1e\x6d\x76\x27\x93\xd9\x93\x4c\x7b\x7a\xb5\x75\xbc\x69\x11\xb2\xd1\x48\xa0\x0a\x42\xf6\x78\x5b\xfc\xee\xf7\x87\x85\x37\x09\x52\x72\x26\x69\x7b\xee\x3f\x89\x45\x82\x78\x2c\x2c\x2c\xac\xf7\x1a\xd3\x46\xfb\x96\xb2\x55\xee\xf9\x24\x97\x5d\x0a\x7a\xe8\xe6\x27\x5c\x42\x46\xf4\xb1\xba\x87\xc7\xf2\x86\x8e\xff\x13\xda\xfd\xa7\x89\x91\x1b\x57\x22\x7a\x7a\xbd\xae\xae\x8a\xf5\x74\xfc\x92\x95\xe3\xfb\x6a\x37\xde\xd0\x82\x8f\x65\xa5\x61\xbe\x5e\xeb\xb6\x9a\x7d\x34\x5f\x40\x40\xda\x45\x86\x92\x33\x86\x36\x2e\xbe\xa7\xce\x21\x67\x0c\x6c\xec\x8f\xb4\xde\x56\xbc\xa6\x7f\xa4\x45\x49\x45\x9d\x90\x6d\xde\x41\x50\x9f\x65\xce\x74\xd4\x6d\x94\x42\x50\x8e\x42\x99\x47\xd7\x0d\x67\xd6\xc0\x25\x92\x06\xae\x8a\x88\x39\x07\x03\x01\xae\xc9\xc9\xf9\xd3\xc2\xfb\xef\x15\xda\x7e\xf5\xdb\xdf\x13\x62\x42\xad\x4c\x8d\xc8\x02\xa1\x87\x9a\x9c\x9c\x19\x03\x94\x9a\xc2\x39\xec\xac\xf5\xf6\x9b\xd6\xbb\x2b\x1d\x5c\x0d\xb5\xcf\xa7\x52\x30\x25\x3b\xad\xa3\x37\xc5\xe9\x39\x76\xf1\x62\xa6\x09\x24\x17\x42\x72\xbe\x8b\xf5\x82\x0b\xb2\xc6\x72\xbe\x5b\x90\x75\xe3\xab\x06\x80\xba\x45\x30\x38\xef\x6f\xb8\xac\xfe\x58\xd4\x37\xa4\xcd\xa7\x5a\xfe\x9a\x10\xf0\x86\xe3\xe4\x81\xf1\xe5\x7a\x57\xd2\x37\x25\xf8\x73\x8c\x9c\xab\xad\xed\x4a\xbc\x06\xf1\x70\x53\x95\x74\x0d\xb5\x67\x46\x11\x72\x39\x26\x9c\x75\x47\xb7\x7a\xb0\x87\xc6\xc7\x83\x77\x1a\xe5\x95\x99\x19\xb6\x8a\xff\xb0\x15\xe8\xf9\xa3\xa5\xc1\xfd\xfc\x43\x21\x8a\x4d\x0a\x25\x3c\x89\x75\x92\x05\x0d\x42\xd7\x71\x8d\x77\x5a\x9d\xc7\x56\xb9\x4e\x08\xc2\x6a\xf8\x3f\xe7\x3a\x7b\x10\x83\x8d\x77\x96\x21\xf6\xac\x06\x67\x94\xca\xd4\xe0\x41\x17\xba\xcc\x0a\x9f\xb3\x05\x9a\xd1\x5c\x28\xb1\xf4\x34\xef\xc4\x97\xaa\xf7\x17\x6c\x96\x65\x48\x89\xa7\xba\xb9\x0b\x91\xeb\x12\xc8\x6c\xae\x3b\x18\x6b\x94\x5e\xa8\xeb\xc4\x60\xb7\x4f\x58\x22\x2b\x47\xeb\x95\x18\x80\x1a\x3b\xe7\xdd\x98\xf1\x31\x47\x76\x36\x3b\x33\xe4\xce\x0e\x69\xa6\xec\x27\xf0\x98\x95\x43\x9e\xb7\x39\x5b\x40\xd2\x5f\xfd\xd7\x6d\xb1\xde\xd1\x20\xc0\xdd\x8d\xbf\x33\xa3\xfa\xec\x99\x59\x86\x29\x32\x57\xda\x24\x43\x41\x42\xdf\xaf\xcf\xbe\xba\xc6\xd9\xa9\xba\xe6\xcc\x4a\xb5\xbc\xea\x92\xd8\x50\x9c\x5d\x5e\xd2\xfa\x2d\x50\xa1\x0c\x3f\xc0\xa8\x2e\x6c\x78\x48\xb8\xa5\x46\x72\x0e\x24\xdb\xb0\x59\x2d\x2b\x41\xbd\x04\xdc\x12\x6d\xfb\xb2\xbe\x9a\xac\xac\xee\xf8\x48\xa8\xe8\x9d\x3d\xd7\x63\x8e\x9d\x82\x6a\xbc\x2a\xd8\x9a\x96\x99\x49\x18\xca\x6a\xd3\x42\x67\x7a\x3f\x39\x1b\x85\x0c\x0b\x3c\xd4\xfb\x09\xec\x89\x44\x23\xa8\x14\x6e\x52\xe9\x2f\x3f\x12\x93\x2f\xc9\x64\x1f\xa5\x3a\x39\x31\xab\x38\x11\xe1\x2f\x53\x25\x97\xad\x29\x54\xab\x11\xee\x4f\xfd\x62\xcd\x38\xfd\x7e\xa7\x46\x34\xc5\xbb\xf5\x0f\xfd\xd2\x64\x15\x27\xc2\xfe\xa5\x1f\x73\xdd\x11\x77\x9d\x70\xdb\x81\xfe\xc3\xac\x0f\x60\x5d\x13\xba\xdf\xcf\x1f\x24\x93\x6b\x3a\x73\x20\x79\xa5\xb7\xa1\xa4\xb2\x60\xeb\x99\x6c\x16\xcd\x63\x37\xba\x1f\x33\xf4\xb0\x8a\x7e\x7c\xa8\x00\x8b\x33\xfc\x40\xf9\x6e\x43\x45\x71\xb5\x56\x1f\xe3\x6b\x2a\xbb\x79\x71\xc6\x72\xda\xf9\xb2\x39\x3c\x0e\xb4\xfb\x00\xe4\xea\x91\xe3\x04\x5f\xaa\x71\xe8\xf4\x3d\x15\xb7\x16\x19\xe8\xf4\x45\xc5\x57\x6b\xb6\x94\xf6\xf7\xf7\x95\x7c\x5d\xed\x78\x69\x7f\xbf\xae\xc4\x15\x2b\x4b\xca\xed\x83\x9f\x78\xb1\x93\x37\x95\x60\xff\x45\x5d\xa3\xe7\x57\x95\x70\x3d\x98\xca\x18\xf6\xe7\x1b\x7e\x5b\xac\x99\x6b\x6a\xa3\xb0\x35\x16\x1b\xad\x8d\x08\x0b\xfa\xd1\x2e\x53\xe6\x98\xec\xdc\x23\xff\xc5\x43\x33\x93\xc8\x62\x8c\x73\xc7\x07\x21\xbb\x9b\x18\x53\x7f\x1e\xa7\x12\xa1\x01\xda\x0b\xcc\xf7\x7b\x89\x9a\x80\x73\xb5\x54\xaf\x75\xc9\x53\xff\x06\x61\x61\xc2\x12\x08\x53\x6c\xb4\x68\xfc\xfa\x38\xee\xef\x22\x3c\x79\x51\x67\x9e\xd2\x2a\x31\xd8\x1d\x6d\x83\xc6\xd1\x60\x26\x5f\x5d\x95\x0b\x9c\x7d\xb8\xa1\x63\x43\x79\xc6\x82\xfe\x0d\x22\x09\x81\x0b\x5a\x56\x9b\x0d\x93\xe3\x2b\xba\x2c\x14\x45\x61\x72\x7c\x57\xd4\x63\xa6\x77\x04\x0c\x05\xd1\xee\x14\xb8\xe8\x4c\x21\x6c\x90\x99\xb0\xe1\xce\xa0\x9e\xf4\x48\xb6\xa1\xe5\xb8\xda\x49\xe8\x3d\x42\x85\x1a\xd7\x9d\xde\xc3\x06\x99\xd1\x7a\x0d\xf4\xae\x66\x5f\x28\x5c\xa3\x7a\xf6\x01\xde\xed\xf0\xae\x0b\x3e\xf7\x3a\x33\xf9\x3a\x07\xfa\x66\xf5\x78\x17\xa0\x36\xf4\xdf\xc5\xf5\x35\x5e\x77\x86\xe9\xb4\xd2\xa3\x2d\x0f\x8c\xb6\xb2\x27\x0b\x86\x6a\x9d\xb3\x25\x5e\x76\xc6\x89\x9b\x64\x26\xa4\xa4\x33\xc8\xb2\xda\xad\xcb\x71\xc4\x4f\x2b\x09\x69\x27\x96\xda\x24\x1d\x9f\xf0\x15\x5e\x75\x06\x8a\x5a\x64\xa6\xd6\xcc\xc0\x62\xf4\x7d\x33\x2e\x77\x54\xb1\xe1\xc5\x78\x69\x68\x0a\x0c\x17\x13\x98\x12\x97\x9d\xe1\xa2\x16\xce\xeb\xe6\xf8\xe1\x6a\x20\x68\x63\x5b\x5f\x2d\xa6\x70\x37\xf8\xa6\x33\x60\xf0\x3e\x3b\x74\x93\x43\xb4\x56\xff\x4d\xde\xd1\x66\x0f\xdf\xe5\x9f\xef\xfa\x89\xc4\xe8\xa3\xaf\x84\xe8\x2b\x7d\x1d\x24\x08\xb2\xe5\x0d\xcc\xe0\x9a\xea\xe4\x56\xc9\xff\xde\xf1\xe5\xb3\xec\x89\x55\xb7\x63\xaf\x6b\xd6\x79\xdd\x8c\x1a\x59\xff\xd0\xbe\x33\xfe\xcf\xb0\xe1\x35\xe5\x6a\x63\xe9\x9b\xf2\x75\x25\xc2\x17\x8e\xdf\x4e\xab\x68\x02\x86\x1c\x54\x59\xa1\x26\x56\x77\x10\x2a\x59\xf5\x93\x50\x7b\xaa\x9f\x2c\xab\x62\x4d\xeb\x25\xd5\x6a\xc1\xbf\xef\x68\x2d\x6b\x05\x40\xab\x7a\x36\x73\x14\xd5\x6e\xab\x3f\xab\x0f\xa9\xd9\xe6\x72\xd1\xe0\xfa\x46\x1d\xc2\x1f\xa9\x12\xf0\xdb\x7a\x26\xdb\xf0\xe4\x3c\x6e\x17\xab\x16\x7d\x87\x27\xd6\x80\x68\x9b\x7f\x5b\x2c\x3f\x5e\x83\x13\xd7\x81\x01\xce\xfa\xbe\x88\x86\x0a\x9a\x83\x82\xc6\x22\x84\x38\x74\x34\xfe\x56\x57\xfc\x49\xb1\x65\xf1\xe9\x68\xdb\x6d\x0e\x9c\x97\xf4\x6b\x41\x6b\xd9\xb5\xf8\xa8\x4b\xfb\x97\x1d\xa7\x24\xba\x33\xc2\xed\xe3\x41\x5c\xf7\xeb\xbd\x34\xaf\x5f\x54\x5c\x52\x2e\x41\x3b\x96\x15\x5b\xed\x2b\xce\x2a\xfe\xd5\x2d\x2f\xa7\xc5\x96\x9d\xea\x32\x4c\xc5\xdf\x8a\x9f\x75\x95\x8a\x7a\xd6\x51\x34\x59\x86\x46\x5b\x98\x1e\x8c\x00\xcc\xb5\xd2\xfc\xb2\xde\x41\x49\x45\x1c\xe5\x75\x04\xf3\x2f\x15\xf5\xf4\xf9\x72\x49\xb7\x92\xb4\x1f\xec\xf7\x03\x93\xe1\x4d\x0f\xd2\x9f\x7b\xa4\x4f\xc8\xec\xda\x6c\xad\xe6\xe4\xb5\xa2\x5e\x24\x07\x03\x94\xb7\xd7\x78\xf9\x4b\x7d\xa0\x96\x9f\x33\x9c\xfd\xe1\xd5\x87\x0c\x3f\xa8\x7d\x9e\x3d\xac\xd8\x5a\x52\x31\x7b\x60\xe5\x4c\x18\xe1\x0c\x67\xe0\xfc\x37\xac\x73\x14\xb1\xce\xb1\x2c\xea\x1b\x2a\x22\xa5\x23\x94\x70\x76\x6a\x47\x04\xd1\xe6\xbb\x3e\x6d\xb1\x5f\x5a\x7e\x86\x45\x42\x7f\x60\x1a\x59\x13\x47\x72\xed\x7c\xca\x4a\xb5\xfc\xc8\xa8\x93\x00\x41\x85\xb3\x1f\x9e\x7f\x78\xf1\x47\x0b\x04\xd6\xa0\xf8\xc4\xb1\x43\x27\x0e\x8e\xc5\xa1\xbb\xa8\xe7\x48\x19\x91\xf4\x51\xb7\xd7\xe7\x39\x72\xa0\x60\x33\xf8\x4f\x56\x7d\x67\x30\xdb\xd9\x22\x25\x5e\x5d\xf8\xb7\x7f\x37\xde\x92\xa9\x97\x5c\x01\xb5\x63\xbe\x75\x3b\x6a\xd4\xb4\x74\xaa\xf3\x75\x59\x5d\x9e\xc9\xd7\xbd\xab\xb1\x3b\x35\x5a\x59\xaa\x35\xb8\x95\xbb\x5f\x02\x05\xb3\xd1\x49\x4f\x35\x6f\x9d\x57\xae\xfa\x15\x9b\x4c\x58\x4b\xbe\xbe\xe8\xff\x8e\xa1\x19\x8b\x6a\xc5\xe2\xb0\x0a\xba\x8e\x1c\x87\x5d\xfa\x70\x23\xaa\x3b\x1e\xea\x90\xa1\xeb\xc9\x24\x03\x95\x2f\xaa\x48\xd4\xd0\x27\x3e\x32\xf5\x07\x33\x42\x4c\x81\x8e\xf7\xb0\x54\x54\x41\x71\x40\x11\xf1\xe3\xfe\x2b\xe0\xa8\xdb\xdf\xec\xf7\x67\xf0\xa4\xb6\x3d\x74\x6d\x1e\x50\xbe\x0a\xb4\xcf\x90\x66\x6b\x27\xd6\xe0\xd7\x1a\xcc\x0c\xe2\xd4\x0c\xb8\x6b\x72\x40\x3c\xcf\x33\x43\x8b\x0c\x83\x37\x1b\x67\xa7\x1c\xf2\x50\x32\xf8\x37\xaf\xf6\xfb\x2c\x43\x4e\x77\xa9\xfb\x9d\x15\x8d\x53\xb8\xe9\x45\x7a\xae\x3f\xaf\x51\x03\x8e\x1c\x7a\xad\x0a\x21\xaa\x2e\x42\xd8\x35\x1a\xb7\x1a\x40\x08\xc8\xd2\x15\xac\x83\x07\x1a\xfe\x8a\x14\x76\xff\xab\xb0\x88\x2e\x8d\xf2\x6e\xef\xea\x99\x55\xe6\x63\x0f\xd5\x19\x0d\x40\x8c\xcd\x70\xb3\x65\x4e\xed\xd0\xa1\xe8\xba\x3e\xb6\x4b\xfd\xec\x03\xfd\x59\xba\x2e\xf3\x33\xcc\x93\x4a\x6c\xa4\x5d\xe4\x9e\xaf\xd7\xad\x17\x39\x0a\xc7\x0e\xd2\x25\x78\xdd\x29\x24\xce\x5d\x55\xe2\x55\x11\x1b\x59\x82\xcc\xfe\x90\x20\x9f\x42\x28\xb3\xef\x6c\x65\x2a\xeb\x50\x25\x00\x97\x94\x4b\x56\xac\x6b\x92\xd5\xc5\x86\x3e\xa9\x04\xbb\x56\x0c\x2c\x85\x64\xf5\x48\xe1\xa3\xba\x27\xc0\x98\xa5\x91\x6b\xbf\xd7\xd6\x8e\xe0\x11\xf4\x66\x28\xd1\x47\x7a\x5f\xe7\xe6\x6b\xab\xbb\x76\x4e\x72\x3b\xb1\x76\xf9\x16\xb2\x8b\x0c\x7d\xf3\xe4\xfc\x22\x9b\x64\xb3\xec\x22\x1b\xc1\xdb\x53\x92\x65\xa7\xf2\x14\xc0\x95\x52\xf0\x22\xdb\xb5\x36\x6b\x7c\x8a\x96\x54\x7f\x7f\x41\xa1\xaa\xbc\x36\x1b\x69\x7d\x3b\x5b\xdd\xdb\xb7\x33\xf3\x56\xff\x74\xf0\x6e\xb4\xe8\x25\xdb\xec\x49\x8b\x91\xc7\x49\x76\x45\x5f\x16\x07\x59\x15\xc5\x15\x3c\x1d\x2f\x6f\x14\xae\x48\xb2\x93\xab\x27\xbf\xcf\xf0\xaa\xa8\xe5\x55\x55\xc9\x99\xa6\x66\xcb\x6a\xb3\xdd\x49\x5a\xe6\x0f\x3d\x82\x05\xf0\x2a\xf6\xa3\x8b\xf8\xe7\x2c\xfe\xe9\xed\xa1\xef\xee\x38\x15\xba\x42\xe7\x74\x5d\x55\x1f\x77\xdb\x3c\x53\xb2\x1c\x5b\xd2\x99\x6d\x9d\xa1\x06\xd7\xe1\x98\x5d\x2b\xad\xeb\x58\x2a\x81\x66\x57\xd3\xd7\xea\xbe\x69\xcf\x3c\xf4\x60\xd2\x06\xad\xe4\x3c\x8c\x2d\xf1\x47\xa8\xc5\x68\xfc\xfd\x32\x25\xcf\xb2\xeb\x19\xe5\xb7\x4c\x54\x7c\x03\x45\xe7\xad\x85\xee\x24\x87\x53\x01\x9d\xbd\xfa\xfe\xcf\x93\x09\x94\xb0\xf2\x0f\xa6\x97\xff\xf6\xef\x3f\xbd\xfa\xf1\xaf\x97\x6f\xbe\xff\xf0\xea\x0f\x3f\x3e\xff\xf0\xe6\xdd\xf7\x50\x13\x65\x32\x39\x81\xfb\xbe\xae\x84\x0c\x10\x2e\x61\x65\x8d\x10\x3d\xf4\x52\x07\x3b\xc2\xb3\xaf\x5d\x70\x57\x90\xc0\xfe\xa1\x81\xa4\x33\x3a\x7d\x81\x0d\x04\x85\x08\x50\x3e\x67\xf3\x6a\xb1\x20\x54\xff\xef\x68\xe7\x30\x5b\x98\xe2\x9d\x1e\xc7\x18\x5a\xbe\x28\x62\xa5\xb4\x9b\x10\x3f\xc8\x2f\x56\x8a\x2f\x5c\x75\xfc\x2f\xfa\x26\x61\xbb\x1d\x66\xdb\x94\x64\x67\x26\x07\xc9\x4d\x02\xd3\xb8\xba\x14\x18\x5f\x52\x62\x95\xcc\x96\x81\x0b\xe6\xa4\xd8\x37\x23\xd9\x26\xad\xc7\x07\x87\x06\x9f\x5d\xed\x41\x15\x70\xf7\x5a\xf3\x1e\x23\x85\xf7\xa2\x69\xbd\xc8\x05\x0a\x27\xc8\xa3\x09\x0a\x37\xc1\xe4\xee\x3d\x7e\x9a\x66\x0b\xbf\xdc\x64\xff\x81\x02\x08\x2b\xeb\x99\x68\xec\xa0\x29\xef\x97\x00\x42\x8a\xc1\x57\xc7\xc9\x0d\xe7\x50\xa5\xed\xf9\x64\x2c\x1a\x6e\x8a\x0c\x73\x2c\x71\xe4\x98\x16\x01\x41\xe8\x59\x99\x69\xa4\x1d\x69\x3e\xf7\x44\xbc\xab\x5b\xcf\x54\x96\x69\xaf\x1c\x3f\x93\xa1\x8d\x00\x7c\x11\x38\xf6\x8c\x53\x27\x31\xbe\x63\x63\x09\x4b\xa4\x37\xec\x87\x77\xef\x63\x12\xd0\x2f\xc8\x89\x40\x90\xeb\x1f\x06\x3f\x40\xbe\x46\xa1\xe0\x58\x0c\x2c\xa2\x52\x2b\x38\x24\xcf\x15\x38\xfb\xe1\xa7\x98\x1c\x94\x7d\x9e\x45\x7e\x0f\xd5\xd8\xdd\xbe\x06\xe0\xa9\xa6\x12\xb9\xfd\x21\x9c\xbd\x7c\xf5\xdd\xab\x0f\xaf\xd4\x5e\x5d\x2a\x5e\x62\xfb\xe6\xe5\x6b\x51\x6d\x7a\xbd\xf7\xf0\xd0\x86\x01\x52\x49\x64\x9c\x13\xc0\xa3\xae\x22\x51\x06\x0b\x60\xe3\xfd\xac\x4b\xda\x71\xd2\xab\x10\x21\xa4\xb8\x88\xf3\x5e\x64\xd9\x2c\x17\xa4\xc2\x9c\x64\x17\xac\x24\xd9\x69\x81\x53\x3e\x21\x86\x59\xf2\xfc\x13\xe5\x65\xfd\x17\x26\x6f\x2e\x9e\xe8\x22\xef\x96\x81\xe3\xd8\xe5\xf3\xb0\x36\x62\x34\x13\xae\x79\xce\xa1\x4c\x5f\x3c\x87\xd8\xf1\xc1\x25\x2e\xf2\x65\xaa\x10\x6a\x79\x3c\x6d\x8a\x9f\x7f\xfa\xf1\xbb\xef\x74\xb9\x8b\xaf\xcf\x7e\xf3\xfb\x23\xb5\x7f\x5a\x3b\xa1\x44\x90\xb7\xc5\x16\x6b\xb2\x6a\xe1\x1e\xf6\x39\x92\x09\x16\x5a\xfa\xbc\xf2\xad\x0d\x85\xce\x47\x50\xbd\x36\x67\x90\x52\xaa\xa6\x32\x67\x78\xbe\x40\x58\x7b\x95\x31\x53\xd4\x4f\x3a\x87\x9f\x2a\xf4\xf3\x4a\x8f\x16\xfc\xd0\xb9\x87\xf5\x77\x67\xb8\x48\x4f\x61\x7e\xb6\x40\x4a\x84\x9b\x7b\x8e\x21\xb5\x0e\x1f\x9f\xd2\x75\xe4\xa4\x53\x56\xba\x1c\x10\x6c\x64\xb7\xe0\xb4\x3a\x95\x90\x9e\x33\x57\xc3\xd7\x7a\x2d\xf3\x05\x42\xb8\x3a\x25\xd2\x28\xc3\x6a\xb7\x5f\xa3\x7a\xce\x4d\xb5\x5e\x0a\x66\xf8\xba\x41\xb9\xc4\x0c\x67\x13\x56\xd6\xff\xe3\xb7\xdf\xfe\x8f\xdf\xbe\x24\x99\x73\x62\x49\x4e\xd1\x55\xde\xf0\xdd\xa8\x9e\xaa\x06\xc7\xa2\x61\x4b\x55\x64\x52\x34\x1b\xa3\xfa\xfb\xdd\x72\x49\x6b\x23\xc5\xfb\x82\xc3\x23\xdf\xc2\x98\xce\xda\x2d\x40\x48\x0d\xcd\x6a\x39\x37\xa6\x5a\x97\xd3\x19\x8c\xdd\xd6\x3f\x1f\xda\x38\x69\xd5\xe8\xa3\x0c\xf1\xb2\xca\xf3\xf2\x25\xc8\xd0\xb4\x7c\xab\xcd\xa1\x6e\xc2\x23\xe3\x12\x4e\xb5\x4b\xf8\xf8\x37\x67\xe7\xb3\x68\x22\x1d\xe3\x55\x5e\xe1\x42\x3b\x1b\x8f\x7f\x73\xf6\xeb\xb8\x71\x6c\x81\x8a\x5a\xfe\x26\x6e\x19\x99\x90\xa2\x86\xff\x2b\x6e\x18\x19\x7f\x74\x43\xeb\xaf\xac\x24\xc6\x6f\xc8\x6f\xcf\xce\x62\xd0\x05\xd6\x1b\x68\xdf\x44\x6f\xcd\xc7\xfa\x0d\x76\xdb\x94\xac\x2b\xf0\x0d\xf9\xfa\xec\x6c\x32\xa1\xcf\x7e\x7d\x76\xb6\xdf\xff\xfa\xec\x37\x8a\x73\x57\x1f\x99\xdd\x49\x7d\xf4\x9b\xaf\xbf\xd6\xad\x14\xd9\x4e\x5f\x41\x86\xeb\xc4\xcb\x8e\xeb\xa7\x15\x4e\x32\x84\x57\xe4\x61\x27\xd6\x33\x8a\xb5\x44\x3b\x93\x0d\x2e\x49\x35\x0d\x54\xc5\xad\x8b\x71\x69\xc5\x2a\xd5\x81\x61\xcf\xf3\xb2\xe3\xd2\xe8\x67\xca\x08\xc5\x70\x19\xa6\xfc\x2b\xd5\x7d\xb8\x52\x58\x9f\xf8\x5e\x87\x47\x57\x1f\xf7\x7b\xda\xd1\x41\x19\xdf\xbd\x54\xf0\x81\xc6\xdd\x5d\x2e\xd0\xe8\xeb\xb3\x33\xf0\x50\xd3\x8a\x89\xc9\x44\x76\xfa\xb9\xc8\xab\x50\xc1\x42\x24\x96\x24\x7a\x62\xdd\x23\xd1\xac\xd5\x92\x63\x25\xd8\x83\x6a\x23\x3e\x19\xd2\x17\xcd\xd5\xb0\x83\xd4\xc4\x79\x85\x29\x66\x9a\x2b\x59\xa1\x4e\x21\xf3\x16\x7f\x09\xb3\xb7\x3e\x9a\xee\x10\xd9\x4e\x00\x60\x33\xf0\x5b\xec\x28\xf9\xda\xb9\xe1\xca\x69\xad\x31\x2f\xaa\x63\xe7\x47\xea\x9b\xc1\xba\x77\x06\xea\xaf\x15\x1a\xe9\xa1\xc5\xce\x78\xc0\xc3\xc2\xa8\x6a\x82\x4b\x0d\xa7\xb0\xeb\xa3\x06\x94\x68\x14\x69\xbb\x88\x18\x59\x6f\xd4\x14\x98\x95\x8c\x0c\x7f\x7e\xa0\x3f\xcb\x08\xe4\x55\x00\xad\xde\xb9\x4a\x98\x6b\x35\xbd\x04\xbe\xa7\x44\x8d\x62\x67\xde\xcf\xc6\x3f\xbe\x7a\xff\xc1\x28\x06\xff\x9b\x7a\x65\x8a\x54\xcb\x6a\x9c\x9d\x52\xc5\xe8\xa8\x87\x06\xef\xa3\x83\xa9\x95\xc4\x9a\x8d\x82\x86\xbc\xaf\xa5\x42\xec\xaa\xeb\x7d\x0a\xed\xc7\x65\x45\x6b\xb0\x9a\xd7\x94\x6e\xd4\xb0\x57\x74\x6c\xab\x66\x33\x3e\xbe\xaf\x76\x62\x5c\x6c\xb7\xde\xed\xb4\xba\xa5\x42\xb0\x12\xdc\x2a\x6e\x59\x31\xfe\xcf\xa2\x2c\xdf\x89\x77\xe6\xe9\xfb\x82\x97\x57\xd5\xcf\x7f\x00\x5f\xd5\xfa\x3f\xa1\xbe\xe9\x0d\x1d\x5b\x65\x85\x31\x5a\x5f\x64\x68\xc4\xfd\xcc\xc3\xb3\x9d\x50\x04\xc0\x69\xd6\x2e\xb4\xc6\x53\xd7\xb9\x99\xe6\x5a\xff\x4a\xd1\xe8\x9f\xe6\x5c\x6b\xb6\x28\x9a\x77\x3f\x01\x4c\x51\x33\x8a\x66\xed\x0f\x2c\xbc\xa6\xac\x7e\x5d\xd4\xf2\x5b\x50\x09\x99\x6f\xc3\x7d\x56\xdf\xea\xa7\xf1\xc3\x66\xd0\xf8\x66\xad\x49\x45\x5d\xb3\x6b\x9e\xb7\x28\x32\x56\xdc\xa8\x22\xcc\xc2\xda\xe4\x3a\x3e\xfe\x5a\x75\x9a\xa1\x91\x8b\x19\xe3\x17\xc2\xea\x72\x5b\x9d\x37\x8a\x95\x77\x7a\xde\x99\xfb\x73\xbf\xcf\xfd\x27\x0f\xce\x01\x56\x4c\x97\x5e\x65\xb7\xdf\xeb\xc5\x75\x95\x79\xa3\xc8\x5c\x91\x84\x74\x2e\x40\xab\x38\x99\x80\x7c\x07\x2c\xb5\x5a\x19\x94\x42\x34\xe3\xce\x33\xd3\xe5\x13\xd5\x67\xb6\xb0\xa9\x4b\xe1\x95\x99\xc7\x13\x69\x5e\xe5\xbd\xef\x08\x43\x08\x0b\xb2\x32\xd2\x27\x42\xb3\x81\xb1\x63\xf0\x08\xfc\x10\xac\x77\x06\xaa\x31\xd1\x32\x3a\x68\xed\xa8\x7a\x4f\x32\x6d\xcc\xa4\x1a\x48\x3f\x4b\x22\x8d\x06\xd9\x8f\x44\xed\x48\xfa\x45\x8f\xe6\xd5\x87\x2a\x4d\xaf\x20\x27\xf4\x7b\xca\xcb\x28\x62\x3f\xd6\x33\xdb\xfd\x4b\x70\x96\x81\x16\x5c\x31\xe9\x06\x09\xb5\x7a\x3d\x17\xd8\x7d\x3b\x17\x0b\x53\x9a\xb4\x71\x80\xc2\x42\x9d\x5f\xe2\x51\x58\xf1\xdd\xf0\x0c\x61\x61\x4e\x56\x2c\xde\x01\x39\x3b\xea\xb8\xc4\xd1\x1a\x89\xc6\x42\xcf\x54\x8b\x60\xcb\x6a\x0d\x51\x8e\x07\x5b\xeb\x00\x17\x45\x86\x5a\x71\x2a\x86\x28\x81\x62\x9d\x82\x3b\xfc\x57\xff\xe7\x46\xca\x6d\xdd\x0a\x5b\x41\x52\xdc\x3b\x88\x9d\x66\x5f\x7d\x05\x11\x2b\xc6\xd0\xc2\xd1\x43\x87\x92\xfd\xb5\xda\x8d\x0b\x41\xc7\xbb\x9a\xf1\x6b\x8d\xf1\xe3\x97\x85\x2c\xc6\x77\x4c\xde\x8c\x79\x35\x56\x53\xea\x12\x6d\x7d\xa9\x4c\xc7\x1f\x6e\x58\x3d\xbe\x63\xeb\xf5\xb8\x90\x92\x6e\xb6\x52\xd1\xb5\x5d\x4d\x81\xa6\xc1\xa7\xd5\x0a\xfe\xb6\xa0\x1b\x9b\xa5\xe2\xf1\xdd\x0d\x5b\xde\x8c\x99\xbe\x20\xb4\x3a\x78\x27\x68\x39\x5e\x19\xea\x69\x2a\xc5\x07\xbd\xb0\xda\x7e\x3d\x1d\xff\xb0\xa6\x8a\xf7\xad\xa9\x74\x43\xfd\xe5\x86\x49\xba\x66\xb5\x1c\x6f\x8d\x0d\x15\xfa\xb2\x73\x0e\x54\xcd\xd3\xbf\xd5\x53\x3f\x23\x80\x04\x58\xc6\xac\xe7\x23\x72\x0e\xf8\xb4\xc1\xdd\xfb\x3a\x71\x8d\x50\x30\x8d\xca\x30\x82\x85\x5a\xfb\x96\x40\x0f\x81\x3f\x7f\x5a\x06\xe9\x92\x51\xa7\x37\xed\x78\xa1\x8b\xc9\x44\x18\xe9\xe6\xc2\xfe\x31\x9b\x5b\x73\x56\x96\x9d\x52\x6c\x8c\x82\x1f\x6e\xe8\xf8\xaa\x58\x7e\xa4\xbc\x1c\x6b\x0e\xa3\xa4\xa5\xde\xd9\x82\x1b\xe7\x2e\x6b\x2a\xcc\xb2\x53\xd1\x2c\x1a\xdc\x27\xfe\xf4\xe9\x0f\x21\x5d\x58\x87\x9e\x65\x90\x6f\x6b\x1c\x51\x40\x17\x2e\x40\x82\xba\x53\x04\x62\x6f\x84\x2b\x30\xff\xdb\xb3\x8b\x6c\xfe\x6e\xc3\xa4\xa4\xe5\x58\x4b\xf7\xf7\xe3\x3f\x7e\x78\xfb\xdd\x22\x9b\x09\x3c\xcf\x02\x0c\xb5\xa6\xcd\xec\x34\xe7\xc6\x88\x05\x46\x4d\x0e\x47\xfc\x34\x1b\xeb\xf1\x68\x39\x2e\x14\xbf\x83\xb3\x1f\x34\xfb\x3b\xce\x21\x0e\x1c\x65\x98\x2d\x8c\x96\xe2\x3f\xb8\xba\x6b\xbd\x9e\x3b\xb1\xc3\x0f\x50\xa5\x95\xfa\x0c\xc5\x26\xc4\x42\xbb\x76\xdb\x5f\x44\x20\xbf\xd7\x91\x23\x42\xd9\xe7\x88\x50\xd2\xab\xdd\xf5\x21\x9f\x38\xdd\xa8\xa6\x72\xb7\xfd\xdc\xee\x70\x83\xee\x6a\x0a\xd0\x86\x83\x74\x7e\x3c\xe0\x69\x6f\xb8\x0a\xc6\x61\x34\x63\x62\xca\x33\x78\x97\x21\x7c\x4d\xe5\x6b\x70\x47\xa9\xbb\xa6\xad\xf9\x03\x2f\x36\x74\x96\xb1\xfa\x7b\x7a\xa7\xf0\xaf\x5e\xce\x32\xf5\x67\x83\xdd\x9b\xb7\x55\xc9\x56\x8c\x96\xf6\xb5\xfb\x1d\xb4\x79\xb1\xa6\x05\xb7\x0d\xf4\x0f\x85\xc0\x97\xea\xfd\x87\xea\xc5\xba\x48\x8b\xa8\x6d\x22\x6c\xa6\xac\xb5\x77\xaf\x2b\x01\x1c\xce\x9d\x3a\xb9\x6f\xd5\x13\x85\xba\x11\x97\x13\x29\xf9\x13\x01\xbc\x16\x04\x15\x61\xd3\xcb\x50\x63\xab\x60\x69\xb3\x38\x83\x47\x8d\x3a\x2c\xf5\xdb\x62\xfb\xba\x12\x28\x67\x68\x54\xa7\xf4\x4a\xb8\x42\x0f\x7c\x0a\xf3\x51\x53\x79\xb3\xfa\x89\xd7\x14\x6a\x3e\xd6\x58\x09\x05\x42\x09\xe5\xa0\x70\xeb\x0c\x16\x5d\xb9\xce\xd1\x29\xdd\x95\x9e\x8d\xe9\x0f\x57\xda\xce\xca\xb0\x34\x69\xd6\x77\x24\x88\xbc\x41\x0f\xc5\xa0\x12\x48\xe7\x38\x4a\xce\xa8\xc2\xa9\x45\x02\x16\xd7\xa0\x85\x93\x90\x10\x03\x21\xcc\xa7\x82\x02\x8d\x7f\x0b\x27\xbb\x9e\x0a\xba\xa9\x6e\xa9\x46\x6f\xb5\x47\x91\xc2\xb7\xd5\x76\xbb\xab\x6f\x4c\xcb\x1d\xc2\x3b\xb3\x9f\xe1\xa2\x13\xb1\xfe\xa6\x0c\xed\xc9\x19\xc4\x00\xaa\x0d\x15\xae\x2a\x04\xf5\xe8\x21\x10\xae\x35\x53\x71\x27\x8a\xad\xc3\x11\xa8\x12\x3d\x32\xfa\x2f\x78\x5d\x5d\x81\x40\xe2\x5b\x40\x99\x09\xcc\xf3\x79\xbd\x80\xec\xce\x6a\x04\x48\x1f\xd2\xe0\x65\xb5\xde\x6d\xf8\xf7\x80\xb9\x2f\x15\x42\xf7\x22\xae\xb3\x83\x6f\x99\xd4\x9e\x9a\xd1\xf3\x1d\x57\xec\xd0\xb2\x12\xea\x02\xf2\x81\x39\x97\x5f\x5d\xe3\x6c\x9c\x59\x47\x0f\x64\x47\xac\xfb\x03\x51\xb5\x0f\x3f\x71\xa7\xd5\x9d\xc5\x37\x65\xd6\x2c\x30\x87\x8c\xb8\xaa\x51\x97\x5d\xa6\x38\x2b\xa4\x14\xec\x6a\x27\x69\x9d\x25\x35\x86\x06\xd8\xfc\xf4\xf4\x1b\x36\x75\x8d\xbf\x63\x1b\x66\x05\xb0\x93\x73\xe3\x8f\x2f\xa7\x6d\xe8\xe4\x15\x72\xe9\x7d\x61\x76\x95\x9e\x5a\xa1\xa3\x88\x84\xba\xc5\xa4\xd1\x2e\xb7\x54\xca\x6c\xe5\xeb\x42\x9b\x4b\xe7\xd9\xd7\x9e\xa8\x5f\x02\xa1\x55\xd7\x56\xc1\x38\x15\x7f\xa2\xf7\x51\x9e\x28\x61\x2a\xc7\x42\x11\xc7\xf5\x2c\x9f\xfe\x4f\xf4\x15\x1a\x99\x98\x4f\x0e\xb1\x43\x7c\x7e\xbe\xf0\xfc\x83\xd1\x28\x4a\x47\x19\xa7\x5b\x4a\x3f\x3e\x5f\xaf\xc1\xbf\xd6\xcd\xf2\x05\x2c\xf0\xcf\x8a\x28\xa7\xac\xd5\x66\x2b\xce\x30\x27\x0f\xac\x9c\x45\x80\x66\x65\xe6\xcf\x02\x9d\xd2\x62\x79\xf3\xdc\x82\x33\x2e\xa5\xa7\x16\x72\x7a\xfa\x8d\xec\x05\x37\x9f\xb3\x05\x09\x3b\xd7\x95\xb6\x78\x30\xd1\x3f\xd1\xfb\xbb\x16\x54\x7d\x90\x9e\xe3\x70\x9f\xe7\x73\x35\xaf\x05\x3a\x3c\x2f\x8f\xde\x22\xd4\x40\xa7\x54\xec\xa1\x2c\x00\x4d\xc3\xa9\x0a\xad\x6f\x96\xc1\x5c\xf5\x05\x94\x00\xaa\xf1\xff\x81\xfb\x47\xd7\xb6\xcc\xcd\x65\x84\xb0\xbf\x7a\xec\x9b\x9b\xa2\x7e\xc9\x84\xbc\x7f\x1e\x60\xf4\x64\x72\xd2\xf9\x0e\x6e\xa0\xd9\xc9\xc0\x57\x4d\xbc\xe3\x95\x48\x40\x31\xbb\x5a\x17\xcb\x8f\x99\x07\x5c\x38\xca\x85\x24\xd9\xb5\xa0\x94\x67\xc3\x93\xcb\xa1\x9f\x1d\x24\x17\x6f\xb0\xa1\x43\xc9\xd8\xfc\xf0\xae\x7f\x9e\xfb\xd0\x7a\xb3\x83\xd8\x5e\xd2\xa9\x81\x16\x8a\xbd\x39\xbc\xaf\x3c\xd8\xd7\x91\xb7\x74\x8e\x78\x62\x8b\xb9\x55\x79\x06\x4c\x83\xcc\x19\x50\x5a\x9b\xf0\x03\xa1\xc6\x28\xc1\x8a\xb2\x7c\xa7\xd7\x26\x72\x8a\x39\xae\x20\xde\x47\x0d\x16\x7a\xa6\x18\x85\x99\xb9\x3d\xa2\xe6\xda\x48\xd1\x51\x60\xa2\x87\x14\xfa\xb5\xef\xb7\xe6\x48\xd7\xee\x90\x75\x1b\x8e\x5e\xfc\xfc\x9c\x5d\xc0\x61\x10\xde\xc7\xe9\x29\x69\xf0\x2f\xb4\xf8\xf8\xb6\xd8\x46\x65\xf2\x2d\x4a\x9a\x23\xe6\xe0\xd4\x0a\x96\xb4\xe6\x39\x6d\x45\x53\xd3\x56\x58\x67\x36\xda\x79\x59\x79\x53\x64\x87\x29\x18\x1d\xd5\x2a\x11\x16\xcc\xb5\x83\x91\x37\x9e\xdd\x14\x75\xae\x17\x8d\xf6\x7b\x7d\xc1\xea\x9f\x50\xda\x87\x05\xb1\x69\x8a\x7f\xf0\xe0\x30\x57\x5c\xb4\x6b\x85\x2c\x9e\x38\xef\x5f\xc6\x99\x6c\x07\x4e\xa0\x87\xa6\x37\x21\x13\x5c\x0f\x3d\xe9\x98\x06\x82\x56\x8f\xc0\x89\x4e\x8e\xa6\xd4\x8e\xd1\xf9\x99\x22\xc6\x74\x7e\xae\xee\x69\x3a\xff\xda\x19\x18\x7f\x0d\x8e\x54\xae\xa8\x42\x22\xe2\x5b\xee\xf7\x1d\x89\x53\x4e\x26\xe6\x8e\x93\x68\x32\xc9\xb4\xc2\x27\x12\x48\x13\xb1\xd2\xee\x1b\x3e\x99\x64\x3e\x94\x26\x63\x5c\xbd\xcb\xac\xc4\xef\x9e\xed\xf7\x3e\x88\x3d\xc8\x56\x9b\x0c\x5e\x0c\x93\xc4\xb5\xaf\x73\xac\x31\x5a\x47\x41\x4b\x64\x8b\x10\x40\xd8\xb3\x50\x37\x9c\xfb\x00\x8a\xb0\x19\x22\x95\x0b\x74\x41\x73\x34\x2d\xb6\xdb\xf5\xbd\x09\x89\xc4\x02\xcd\x68\xfb\x49\x63\xd2\x4a\xb0\xb6\xb7\x66\xb7\x4e\xf1\x45\x2e\x08\xc5\xd4\x9c\x36\x34\x13\x44\xec\xf7\x0f\x8d\x51\x7c\x3e\x80\x2a\x94\x62\x56\x3b\xfa\x39\x3b\x39\xc3\x1f\x19\x2f\x67\x9e\x7d\xca\x70\x65\x14\xad\xa2\x89\x19\xad\x1e\x07\x42\x1a\xf9\x20\x5d\x32\x2e\xa9\xe0\xc5\x1a\xb8\xd0\x84\xa9\x26\xbc\x54\x85\x3b\x6c\x5a\x0c\x52\xe7\x49\xcd\x2d\x17\xe0\xf3\x4b\xd1\x05\x07\x3f\x57\x3b\x37\xb8\x5a\x73\x8a\x3a\xca\x8b\x74\x2e\x01\x77\xcc\xe1\x3b\x9f\x00\x3e\x7c\x6a\xa0\x0d\x56\x0d\xb7\x4f\x2e\x7c\x23\x6a\xea\xbd\xec\x6c\xb8\x29\x3d\xec\xd8\x18\x81\x43\x11\x88\xf8\x52\x33\x99\x9b\xd0\x74\x43\x65\x91\x73\x77\x65\x15\xad\xed\x96\x2e\x9b\xc9\x28\xb5\xed\x9c\x50\xcc\xdc\xb6\xe7\x9c\x48\xcc\x08\x85\x6a\xbb\xf1\xc9\x61\x93\x49\xce\x88\xf0\x86\xe9\xb7\xd6\x85\x24\x67\xce\xf1\x40\x23\x0a\xc3\xac\xfe\x91\xae\xc1\x7d\xb2\xbe\x61\x5b\x85\x2b\x16\x35\x38\xe1\x0a\xb1\x0c\xee\x5c\x39\x5f\x24\xac\xe9\x9a\x71\x4e\x1a\xab\x27\x1f\xa9\x8e\xbf\x3a\x1a\x99\x06\xc0\x77\x4d\xa5\xcf\xe0\xf5\xc9\xc0\x0f\xba\xc0\xd2\x38\x4f\x1d\x18\xc8\x6e\x50\xe5\x36\xa8\xee\x6e\x50\x77\x63\xe0\xba\x0a\x0e\x24\x96\x44\x02\xdc\x3a\xfb\x42\x75\x4d\xa9\xd4\xbe\x50\x84\x5a\x07\xd8\xee\x82\x4c\xec\x90\xde\x91\x1b\xe3\xa6\x66\xf6\xe3\x8f\x45\x3d\xd6\xbf\x3f\xf3\x6e\xd8\x44\x6c\xe9\xbd\x30\x69\x72\xfb\xc9\x82\x70\x7b\xe2\x3a\x52\x3b\x22\x5a\x5d\x47\xc7\x03\xdb\x94\x7a\x40\x6f\x7f\x10\xd5\xcf\xf7\xde\xa3\xfa\x25\xdd\x0a\xba\x2c\x24\x2d\x5f\xdd\x42\x0d\x1a\xfc\x70\x29\xc0\x0d\x98\x8a\x3f\x82\x5b\x88\x68\xcb\x67\x7a\x7a\xb6\x11\x2d\x6d\x33\xf2\x70\x45\x97\xc5\x86\x5a\x37\x02\x8a\xf5\xef\x3f\xc3\x2f\xd9\x34\x58\x2b\x42\xbf\xf5\x87\x59\x6d\xd7\x90\xcb\x72\xe0\xe3\xf0\xb6\xd8\x42\xd5\x7a\xe8\xe2\x75\x92\x31\x6f\xab\x79\x92\xc3\x65\x6d\x66\xc4\xf3\x21\xd8\x31\xd9\x4a\xf6\xd7\x1c\x55\x83\x8d\xc2\xb9\x6e\xcd\x73\xba\x29\xb6\xdf\xde\xe7\x56\xad\x9a\xe1\xcc\x34\xcc\x10\x36\xcf\x8e\x58\x99\x1b\x11\xf6\x89\x7f\xe4\xd5\x1d\xb7\x7c\x63\x8f\x94\x39\x75\x20\x30\x19\x46\xb5\x32\xa4\x55\xef\xbc\xc1\xac\xd6\x05\x15\x5a\xd3\xe6\x95\xcc\x33\xdd\x18\xd2\x82\xd8\xc2\x53\xb8\x28\x87\x24\x0f\x0f\x55\xd3\x6f\x86\x46\xc6\x6c\x53\x96\x06\x09\x27\x93\x93\xde\xc6\x93\x49\x1f\xda\xf4\xbf\x99\x46\xf8\x94\x83\xa9\xb5\x33\x49\x03\x94\xcb\x15\xe3\xe5\x3b\x93\x59\xcd\xe8\xc3\xeb\x80\x5c\x81\x20\xa2\x88\x4d\x9d\xcb\x28\x83\x86\xb9\x47\x13\xef\x79\x25\xd9\xea\xde\xee\xc6\x8b\x1b\x5d\x43\x06\x0c\xd6\x89\xb1\x5a\xd3\x0a\x0a\x77\xb5\xc7\x72\x12\xdc\xa6\xf8\x48\x03\x1e\xc8\xb3\x44\xce\xcf\xcf\xb8\xb0\xf3\xa8\x96\x91\xbe\xed\xf8\xbc\x5a\xe0\xda\x54\x6c\x51\x88\x68\xd1\x0f\x17\x68\xc4\xe6\xd5\x82\xd4\xfb\xfd\x83\x63\x52\xc0\xc0\xab\xad\x04\x85\x53\x7d\xb0\x06\x6b\xa1\x6b\xd0\x7a\xed\xf6\x70\xbf\xcf\xed\x56\xa9\x8f\xd4\x52\xbe\xc4\x7e\xff\x59\xef\xb6\x02\x74\x62\x76\x6c\x95\xf7\x63\x59\x74\x4e\x74\xfc\x99\x02\x4d\xc0\xaa\x51\xeb\x9e\xe1\xbf\xb6\x27\x18\x29\x2a\x10\x20\xc1\x91\xe4\x64\xaa\xbd\x54\x15\x34\x86\xd0\x66\xe0\xa5\x3b\x8e\x4d\xa3\xab\xa1\xcc\x3a\xb2\xf1\xd0\x6e\xd8\x34\xe1\x9f\x03\xe0\x9d\xe1\x75\xd0\x08\x68\x03\x8e\x82\xfc\x91\x40\xd3\x75\x50\x92\xbe\x94\xc0\x93\x04\xbe\x9d\x58\xba\x44\xe8\x3d\x5e\x9d\x34\x0d\x56\xfd\x75\xe7\xea\x0b\xd2\x22\xa8\x6e\xbd\xc4\xa9\xc0\x7f\x53\x24\x0d\x12\x5d\x7a\x61\x8c\x61\x67\x4d\x83\xf0\x9a\x1c\x8c\xba\x31\x37\x58\x9f\xdb\x82\x08\x78\x92\xfa\xdb\x7b\x83\x58\xbd\x0e\xb3\x82\x68\x5b\xc0\x88\xc2\x15\x26\xa0\x78\xad\xd6\x55\xcf\x17\x48\x57\x1f\xcb\x45\xe8\x20\x8b\x69\x83\x22\x6a\xbf\x1c\x9a\xb3\xf6\xde\x75\xce\xf6\x61\xe0\xd0\xf3\x3c\x76\x09\xa7\xc5\xf2\xe6\x85\xe9\xc3\x29\x3c\x02\x85\x20\xe6\x5a\x89\x3c\x8d\x19\x2f\xf4\xc0\xa7\x1f\xe9\xbd\xf1\xb9\x62\x66\x3d\x90\x0a\xc1\x37\x7a\xab\x59\x98\x91\x33\xe4\x69\x5f\x60\x53\x14\x94\x41\x16\xf0\xce\xc2\x56\x87\x37\x23\x91\xbe\x0e\x1b\x3a\xdd\x89\x30\x38\x66\x91\xda\x45\xb6\xb5\x42\x88\xa6\x51\x4b\xe4\x98\xe9\x9c\x4e\xea\x8f\x6d\x21\x28\x97\x8e\x55\x25\x02\xd3\x39\x5f\x10\x25\xd8\xf9\x4f\x5f\x8b\x6a\x03\x6b\x67\xc8\xed\x1d\x2e\x87\xd6\xe5\x8b\x29\x5a\x55\x4f\xf7\x24\x46\x38\xa6\x41\x00\xe7\x30\x74\xf4\x90\xe9\x1c\x7d\xb7\x36\x7b\xfb\x9c\x2f\x4c\x9d\x76\xbd\x38\xcc\x90\x37\xc3\xc7\xfb\x70\x63\xe7\x0b\x87\xd1\x40\x8d\x51\x5d\x63\x78\x8b\x37\xf8\xb6\xbd\xa0\xcc\xb8\x13\xbc\x97\xa0\x68\x49\xa9\xf5\xe2\x35\xb5\xd9\xeb\xf0\x7b\x0c\xca\xcc\x70\x42\xf7\x24\x6f\x0f\xa8\x4f\xb4\x59\x6a\x86\xbb\xfc\xd9\x49\xee\xad\x03\x71\x63\xf4\xcd\x59\x7b\x80\x5b\x34\xda\x92\x5b\xbc\x21\xb7\xb0\xc6\xeb\x64\x3a\x91\x24\xc7\xcd\x38\x8b\xe2\x0b\x83\x24\x08\x46\xda\x86\x2d\xf4\xd2\x76\x83\x2f\x35\xc9\xfb\x9e\xca\xbb\x4a\x7c\xd4\x14\xaf\x4e\x13\xee\xa7\xf3\x8c\xd5\x40\xe3\xb3\x45\x9a\xa6\x38\x4d\x76\x3f\x1d\xf5\xfc\xe4\x2d\x66\xf5\x77\x55\x51\x32\x7e\xed\xfe\xa6\xe5\xec\x16\x77\xf5\xcf\x6d\x06\x38\xda\xe1\x29\xd3\xcd\x53\x70\x0f\x8c\x32\xc9\x4f\xb4\xf1\xb2\x7e\x5f\xdc\xda\x59\xe8\xe4\xb6\xe5\x6c\x8b\xb5\xcd\x60\x83\xcd\x9a\x67\xf7\xf8\x72\x53\x88\x8f\x86\x8b\x34\x1e\x09\xcf\x8d\x2d\x20\x54\x15\xe2\x52\xf5\x0d\xa6\x36\xd5\xa3\xf6\x39\x39\x39\xd7\x9f\x1b\x57\x90\xbe\x8f\xf5\x8e\xd1\xa0\x51\x4d\xe6\x0b\x73\x25\xaf\x8b\xda\xe4\x01\xd2\xae\xa0\xda\x8d\x2f\xb1\x7f\x39\x80\x59\x27\x2b\x51\x0b\x3b\x39\xc7\xe1\xf2\x67\x72\xfa\x63\x55\x19\x50\x40\xb1\x2c\x1c\x9f\x00\x93\x41\x06\x8c\xff\xda\x43\x56\x7b\x9e\x1c\xa4\x88\x80\x5e\x92\xec\x2c\x4d\x0c\x64\xa4\x8e\x34\x18\x7d\xae\x68\x01\x2f\xf3\x2c\xe2\xd4\xd5\xf6\xe0\xfe\x56\x7f\xb6\x6d\x10\x96\xad\x23\xc4\x82\xf8\x80\x5a\x03\xa5\x8c\xf7\x48\x49\x00\xf0\xda\xf0\xdd\x1f\x2a\xaf\x9a\x4b\x88\xa9\xc1\xc9\xcd\x90\x97\x55\x2c\xa7\x13\xf6\x54\x77\xf6\xb3\xf5\xb1\xe1\x42\x1a\x5c\x04\x89\x0f\xfa\x93\xf6\x0c\x6a\x02\x34\x9c\xdf\xf3\x62\x5b\xdf\x54\x32\x47\x41\x56\x1f\x25\x61\x28\x90\x98\x24\x3c\x25\x2b\xd5\x09\x73\x3f\x74\x0a\x68\xf7\x53\x0b\x21\xee\xa7\x3e\x06\xfa\x67\x2c\x8d\x07\x8f\x82\x89\x8b\x6a\xbd\xa6\x90\x28\xc7\x2e\x84\x0f\xe6\x86\x6e\xeb\x87\xb8\x85\x27\x14\xc5\x64\xea\xab\x28\x8c\x6f\xf0\xf3\xf0\x1b\x58\x76\x3a\x8e\xcc\x9e\xae\xf8\xe3\xb0\x6d\x0e\xdf\xd6\x52\x54\xdd\x98\xcf\x78\x06\xf1\x57\xfa\x28\xd6\xc5\xad\x86\xfa\x8e\xa7\xf3\x0a\x99\xc0\x96\x97\x7a\x04\x5a\x5a\xb7\xd4\x78\x42\xe1\xd7\xb9\xa7\xd0\xfe\xe6\xeb\x91\xe7\x47\x37\xc9\xab\x5c\x18\xf3\x3d\x75\x37\xf1\x33\x06\xb7\xb1\x20\x8a\x65\xc0\x32\x4d\xac\x85\x26\xd6\xfa\xd6\x2d\x03\x52\xdc\x43\x63\xdb\x78\xd9\xfe\x4e\xad\x44\x21\xc9\x55\xb1\xfc\x98\xee\x2d\xd5\x4d\xf7\x0b\x80\x48\x8c\xf5\xc7\x4e\xa9\x75\x54\x1a\x6c\x33\x0d\xbc\x52\x57\x6a\xcd\x2a\x7e\x5c\x4f\x56\x0e\x8a\xbb\x67\x65\x83\x15\x06\x24\x72\xee\x84\x9e\x13\xd2\x46\x3c\xc4\xcc\xe3\xc3\x56\x3f\x9d\x25\x8f\x87\x46\xac\x76\xac\x89\x37\xa7\x83\x71\x53\x9d\x76\x85\x39\xdd\x09\x98\x70\x3a\x33\x85\x94\xb2\xd4\x98\x6f\xa8\xae\x9d\x03\x54\xc9\x38\x7d\xeb\xb4\x4a\xf1\xb3\x59\xbb\x51\xa3\x84\xab\xc7\xaf\x4b\xcf\x57\x09\x18\x7d\x2b\xe3\x66\x65\x4a\xf0\x8e\xe9\xf7\x55\x22\xd6\x77\x70\xfb\x05\x5d\x51\x41\xf9\x52\x09\x07\x79\xa8\x38\x57\x27\xf6\xa6\x13\xc0\xfc\x88\xbe\x9c\xca\x17\x74\x3a\x60\x03\x7e\xc3\x57\x55\x97\x89\xd2\x9e\x12\x58\x92\x87\xc6\xc8\xad\x56\x28\x48\x99\xd5\x43\x7e\xaa\x15\xa1\xc8\x9d\xab\x4e\x60\xa3\xc7\x5b\x4f\x21\x28\xa6\x3f\x6f\x0b\x0e\x29\xa1\x17\x1d\x11\x24\x14\x2f\x22\x89\xd9\x85\x21\xc9\x39\x9b\x7e\x64\xbc\x5c\x8c\x9c\xa1\xae\x82\x10\x43\xf7\x42\x71\x25\x3c\xf4\xcb\xd1\xcf\xc3\x49\x54\xc1\x24\x90\x2b\xc1\x49\x9d\xe5\x9e\x1a\xe7\xaf\xa0\x93\xec\xf5\xba\xb8\x8e\x97\xa2\x98\x4e\xcd\x1a\xa6\x5d\x13\x70\x66\xf9\x37\xf8\xd3\xf0\x6f\xf0\xb7\x49\x90\xe3\x1c\x1b\x1c\xf7\xda\x20\xfc\x60\x1d\x87\x61\xab\x6c\x12\xed\x77\xf2\x86\x8a\x80\xd2\x9e\x9c\xe9\xf0\xd5\x7a\xc6\xd5\x62\x14\x95\xb8\x0d\x64\x90\x99\x68\x9a\x06\x6b\xfa\xe9\xac\x16\x9a\x80\x46\xa8\x34\xac\x06\x6c\x6f\x49\x8a\xff\x58\x56\xbc\x96\x62\xb7\x94\x95\xe8\x6e\xa1\xbe\x39\x23\xc9\xaf\xa5\xd7\x4e\x8b\x3d\x41\xa7\x7d\xaa\x03\xab\xbc\x66\x1c\xaa\x26\xf5\xf4\xdb\x99\xa2\x6f\x9e\xd3\xa4\x99\x07\x78\x4b\x64\x61\x67\x2c\x0e\xcf\xcb\x92\x96\x8f\x04\xdc\x20\xd7\xd6\x86\x5a\xc7\xf8\x37\xba\x9e\x0a\x5a\x6d\x29\xcf\x1f\xa4\x60\xd7\xd7\x34\x65\x0e\x50\x5d\xcd\xe9\xa2\x27\x6d\x7a\xa4\xa3\xed\x18\xa8\x79\xa0\x8d\x15\x4f\xce\x11\x66\xe4\xfc\x29\x7b\x26\xc0\x44\xcd\xe7\xec\xc9\x79\xcb\x48\x2d\x43\x41\x8d\xa3\x26\x08\x69\xd5\x56\x86\x51\x65\xef\x9f\x21\xb9\xae\x37\xf7\x65\x10\x29\x8e\xb3\xb2\x90\x45\x06\x91\x23\xce\x3e\xaf\x64\x85\xbe\xf4\x97\xb1\xd1\x18\x54\x5d\xd3\x4b\xd5\x87\x1a\x2e\x80\x64\xf5\x6f\xef\xdf\x7d\xdf\x67\x75\x48\x21\x42\x2b\x59\xbd\xcf\x8b\xe9\xf4\x29\x07\xee\xf2\x51\x10\x39\xe2\x13\xcf\x83\x01\x0b\x08\xe6\x15\xe9\x2c\xb2\x4e\x58\xd2\x05\x38\x20\x52\xb1\xa4\x6f\x4a\x05\x6a\x73\x2d\x8a\xf4\x8d\x5f\x53\xf9\xa6\x84\x04\x79\x69\x80\x0d\x2a\x19\x70\x76\x29\x8b\xeb\x2c\x6d\x04\x65\x65\xd3\xf4\xf8\x00\x45\xfb\xc7\xca\x0c\x5f\x79\xd0\x83\x1f\x74\xfe\x00\x7e\x6d\x74\xad\x88\x97\x53\x43\x69\xae\x3c\xa1\x1b\x3b\xca\x54\x33\x44\x1b\x82\xb4\x2f\x32\xf0\x9c\xd5\xae\x39\x8e\x70\xbc\x2d\xb6\x47\x58\xb1\x12\x0a\x35\x10\xd0\x53\xc4\x67\xc0\xb0\xe4\x86\x34\x25\x62\xe6\x74\xe1\xca\x8f\xa8\x83\x1c\x3a\x4d\xe8\xea\x70\x21\xb5\xf2\x2b\x9a\xd3\x05\xe1\x98\x1b\x43\xcd\x9b\xe1\x59\x40\x77\x09\x00\xeb\x2e\xd9\x2a\x3f\x71\x65\xe4\x5d\x8d\x32\xf0\x44\xc6\x85\x75\x32\xde\x50\x38\x59\xde\xdf\x0b\xe1\x1d\xa9\xa7\xc6\xe8\x3c\x32\x25\x47\x08\x21\x3b\x4b\x60\xa3\x1e\xd9\x2a\xf7\x2f\xb8\x6f\x84\x19\xc9\xab\x00\x4a\x83\xc4\x9e\x23\xa4\x2f\xf2\x82\x54\x6e\x64\x28\x49\xa2\x57\x87\xeb\xb6\xee\xd1\xe4\x86\x0e\x9c\xc6\x5b\x31\xcd\x6c\xbf\x87\x8a\xdd\xfd\x33\xd0\xfb\x74\x52\xd8\xe5\x54\xc6\xd0\x5f\xe8\x5d\x0d\x6a\x57\xe0\x1d\x89\x6b\x1f\xd4\xe8\x02\xf2\xe6\x4b\x2a\x52\x89\x14\x44\x17\xa8\xa0\x44\x45\x6e\x6d\x46\x41\x27\x2d\xb4\xbc\xff\x93\x7d\xb2\xdf\x73\x12\xfc\x84\x20\x66\x05\x6f\x33\xd9\xdd\x64\xa2\x59\x1b\x43\x8a\x2b\xbc\x03\x97\x6f\x45\x9d\x97\xea\x44\x4e\x26\x34\x0f\x7f\x03\x74\x2a\x84\xab\xc0\x9b\xc5\x94\xdd\x26\xeb\x96\xfd\xd5\xa1\xca\x92\xac\xbb\xcb\x94\x81\xb3\x72\x6b\x99\x32\xb9\xcc\x31\x25\x84\xf0\x60\x25\xa3\x73\x42\xc8\xd2\x7b\x89\xad\xc9\x12\x61\x4e\xd6\xf3\x33\x53\x2f\x82\xe9\xbf\x0d\x4a\xc0\xdf\xa6\x4b\x5b\xe5\x1b\x5c\x23\x84\xf6\x77\xe0\xda\x0b\x82\x39\x47\x89\xa2\x89\x19\x93\x7a\xb6\x8e\x7e\xab\x4d\x3d\x42\xaf\xf4\x60\x19\xf4\xf9\x22\xe0\xfc\xe7\x8b\xe6\x31\xea\x75\x1d\x6c\xd5\x51\xaf\xd3\xb9\xd0\x2c\x6d\xdb\xcc\xa1\x27\x4a\x4b\x1d\x16\xb2\xc4\x89\x43\x33\x2b\x71\x42\x1d\x3e\x5b\xe1\x15\xa3\xeb\xf2\x88\x85\xb5\xec\x39\x9f\xbc\x0c\x5d\x41\x5c\xbd\x83\xb5\xa0\x99\x6a\xe0\xd8\x1d\x53\x88\x39\x97\x81\xb3\x7e\x96\x34\xe7\x1c\xe0\x45\x3f\xd5\xde\x14\x15\x0c\xc0\x1c\x1b\xed\x82\x1b\x4d\x03\xb9\xd7\xf4\x9d\x1c\xd6\x6c\x4c\x36\x64\x6a\x10\x73\xbe\x18\xb9\x71\xa1\x24\xa9\x4b\xe7\x10\x2e\x33\x31\xba\x0d\x13\xf8\x48\xef\x31\x57\xff\xab\x13\x60\x12\xd2\x04\xec\xad\x08\x2e\x0c\x76\x11\xc8\x95\x90\xfe\x53\x7d\xd4\x7a\xc8\x2f\xb2\x8a\xd3\x0f\xd5\x3b\x4e\xb3\x59\xb6\x29\xf8\xbd\xfd\x3b\xd9\x4c\x17\x63\x34\xed\xcc\x8f\x64\xc3\xef\xab\xa0\x43\xf8\xa1\xc5\xe6\xb4\x06\xfd\xf3\x62\x62\x80\x68\xb9\xae\x38\x02\x01\xc5\x06\x23\x51\x12\xd3\x40\x69\xb7\xaa\xc4\x26\xd2\x2e\x7d\xf2\x34\x93\x12\xb4\x9e\x9f\x8e\x63\xf6\x07\x44\x73\x26\x3d\xc8\xdf\x27\x4f\xb4\x51\xf0\x40\xd0\xcb\x00\xc2\x7f\x48\x2c\xfc\xc0\x60\x49\x58\x3d\x66\x5c\xab\xe9\xea\x72\xa9\x99\x0e\x6f\xc9\x4e\xdb\x63\xba\x3b\x37\x73\x5c\xf4\x65\xd2\x12\x65\xca\xac\xee\xa4\xe2\xac\xe1\x52\xc6\x69\x77\x30\x73\x6a\xde\xd4\xcf\xeb\x7b\xbe\x54\x3c\xb8\x33\xfa\xa8\xbf\x1f\x6b\xbb\xb2\xe5\x79\x74\x17\x24\xfa\xb5\xdf\x9f\x9c\x9b\xca\x39\x40\x13\xc8\x99\xfe\x65\xb4\x51\x81\xfd\x44\xdd\x9b\x9e\xfb\xda\xef\xfd\x1b\x56\xff\x50\xad\xef\x37\x95\xd8\xde\xb0\x25\xe9\x3e\xf2\x63\x84\xb6\x15\x67\xad\x59\xad\x77\xf5\xcd\x8b\x82\x57\x9c\x2d\x8b\xb5\x49\x6a\xa4\x7d\xcb\xb5\x61\xf1\xe4\xdc\x2e\x21\x78\x6a\xfc\x15\x1b\x5c\xf0\xfb\x9f\x40\x11\x4c\x53\xa9\xe9\x4f\x3a\xe3\x26\x79\x20\xa7\x3f\xba\x64\xf5\x4b\xba\x29\xa4\x11\x8e\x18\xbf\xde\xef\x4f\xa8\x03\x17\xb8\x8d\xcd\xcf\x16\xd6\x8d\xc7\x8e\xfc\x26\x32\x0a\x25\xed\xc4\x67\x4f\xe9\xb3\xee\x64\x0c\x25\x3e\x3d\x8d\x65\xbf\xb0\x8d\x91\xa8\x65\x7a\x6e\x32\x98\x1b\x8a\xd2\xbd\x29\x04\x33\xb1\xc6\x7f\x61\xeb\xb5\x55\x07\xe0\x73\x7c\x86\xba\xdb\x01\x69\xd9\x96\xf0\xde\x6a\xe9\xa9\xf7\x5b\x4b\xb4\xb7\x0e\x53\x9d\xc1\x5e\xb2\x32\x1e\xeb\xe4\xac\xb1\xe1\x54\x0d\xd6\x3a\xd5\xe7\xa9\xb4\x23\x7d\x2b\x77\x39\x2f\x7c\x1a\x92\xa9\x8b\x19\xca\x51\x83\x63\x0c\x6a\xc5\xa5\xba\x0e\x5c\xee\xfb\x13\xb5\xfe\xe9\xa5\x9e\xc9\x9b\xfa\xf9\x9a\xdd\x52\x2d\xa4\xfb\xfc\x87\x25\x5b\xad\x8c\xa7\x58\x7b\x56\xd8\xcb\xbb\x5c\x57\x89\xd7\xcb\x7d\xc3\x4b\xfa\xb3\x2d\x69\xd5\x03\xfd\xee\x07\x10\xd3\xa9\x50\xa9\x7c\x51\xed\xb8\xc4\x7c\x5a\x94\xa5\xf9\x91\xda\x88\x16\xe0\xa3\x13\x45\xa7\x35\xec\xe1\xe0\xa6\x3c\x76\x0a\x62\x32\x09\x1f\x7c\x73\x66\x64\xfc\x58\x10\x57\xb7\x29\xc0\x4b\xef\x0a\x28\xa8\x02\x53\xfe\x47\x7a\x9f\x21\x84\x80\xc7\x85\xe8\xcb\x68\x93\x7c\x2e\x75\xa1\xba\xcf\x59\x17\x15\xcc\xca\x28\xa6\xa7\x36\x55\x2a\x74\xec\x35\x2d\xe0\x5b\xa9\x56\xf1\x5a\x54\x1b\x57\x7d\x39\x9e\x01\x66\xd3\x4d\xb1\x4d\x1e\xfd\xae\xa7\x7f\x83\x10\x82\x92\xa5\x3d\xa3\x15\x65\x09\xe5\xae\x92\x03\xf1\xc7\x0d\x84\xad\xbb\x9a\xa0\x52\x30\x7a\x4b\xbf\x2b\x20\x79\x05\x68\x2b\xc3\x27\x69\x87\x83\xc4\xec\x02\xf7\xe4\xf6\x36\x60\x73\xd4\xb4\x46\xe9\xd2\xb7\xfc\xf6\xfe\xdf\xea\x8a\x3f\xdf\xb2\x1f\x4d\x1d\x9f\x9c\xa2\x11\xe4\xc2\x2e\x0c\x14\x00\x15\xd5\x6f\x85\x88\xea\x7f\x94\xa6\xe1\x10\xc1\x9b\x32\xb3\xf4\x86\x80\xea\xb6\x6f\x2d\x1a\x99\x22\x71\xae\x59\x84\x6d\x59\x88\x01\x1a\xde\xe0\xdd\x1d\x19\x95\x22\x4b\xbb\x20\x90\xfb\xc9\x75\xff\xdf\x54\xdb\x71\xf7\x2e\x87\x54\x0d\xde\x5f\x14\x12\x6f\x59\x6f\x35\xc5\xcc\x56\x1f\x69\x9e\xa9\x6f\x33\x84\x07\xac\x31\xb4\x41\x26\x9f\x6d\x62\x54\xd3\xc6\x3d\x0d\xfd\xa3\x8d\x69\x48\x4b\xee\x6d\xcb\x10\x6f\xfa\x73\xa6\xf6\x79\x03\xda\xc0\xfb\xae\x68\xe0\x96\x6a\xd5\x48\x86\x9e\x8a\x20\x65\x27\x8d\x5d\xcf\x82\x08\x72\x28\x75\xdd\x20\x7c\x47\xda\xf6\x2c\x9b\x11\x41\x61\xc7\x10\x97\x6a\xe4\xc6\x94\x1d\xce\x05\xf7\x6a\xd6\xc6\x71\xf1\x9a\xfc\x2a\x21\x1e\x3c\xa1\xa0\x62\x60\x25\x28\x24\x5a\xd5\xf9\xdd\x0b\xc9\xf8\xf5\x9b\x94\x1f\x3f\x33\x18\x16\x94\x57\x57\x63\x54\x98\xe3\x01\x83\xa1\x84\x98\x46\x84\x5f\x91\xd6\xde\xd8\x55\xae\x19\xff\x58\xcf\x6c\x20\xd4\x30\xbe\xc3\xe1\x31\x9b\x99\x05\x18\xec\xdd\x61\x8d\x9d\x8f\x9a\x7c\xb9\xad\xdd\x7e\x9f\x77\x92\xdd\x72\xf5\xb0\xe2\xf0\x27\xd5\x7f\x43\x80\xab\x51\xd1\xbf\xcf\x33\xf3\xa7\x6a\xb1\x5a\x41\x8b\xd5\x2a\x43\xe0\x76\xf9\x1e\x2c\x72\x4a\xbc\xf5\x01\x73\xef\xd3\x91\x65\xb0\x2b\xb6\xf0\x49\x17\xcb\xdc\x0a\xd0\x9c\x2e\x2c\x13\x1a\x69\xd9\xa9\x2e\x43\x57\x43\x21\x66\x87\xfa\xe4\x52\xfd\x52\xdb\x44\xae\x31\xb5\x10\x76\x5b\x44\xee\xfc\x43\xff\xcd\x2b\x4c\xa7\x97\x56\x7f\xaa\xab\x3b\x0f\x2a\x3b\x75\xda\x75\xf0\x02\x17\xd3\x55\xb1\x94\x95\xb8\x07\xe5\xf9\x46\x7d\x3b\xcb\x4e\xb5\x2f\xb8\xba\xe6\x40\xeb\x04\x05\x32\xac\x4a\xee\xda\xee\x34\x43\xa3\x2a\xd6\x1e\x5f\x5e\xb2\x1a\x86\x9f\x9d\x9c\xe1\xcb\x4b\xdd\x1b\x6b\x10\x16\x53\xeb\xc1\x93\x3b\xa1\x41\x62\x5f\xcd\xa3\x35\x0b\xdb\x02\x8a\xbf\x2a\x69\x89\x54\x98\x4e\x1d\xd2\x93\x02\x83\xd3\xa9\x02\x00\xa9\x3f\x5b\x05\x51\x1d\x8d\x79\x20\xc3\x4a\x2b\x64\xf3\x1f\x55\x73\xcc\x15\xfb\x3a\xb2\xda\x18\x60\xd0\x60\x71\x4b\x05\xd6\xa3\xbb\x53\x8d\x07\x7b\x0b\x6c\xe2\x47\x76\xe9\xbe\x18\xec\xd7\xd9\xc7\x8f\xec\xd5\xb4\x6f\xfa\x77\x59\xb3\x04\xfa\xef\x4f\x8e\xbc\xfd\xaa\x12\x25\x15\xb4\x7c\x52\xd3\x44\xb1\xac\xc1\xd0\xdb\x40\x39\x4b\x08\xdd\xef\x33\xa8\xae\x71\xa1\x7e\xcf\xba\x01\x66\x17\x74\x96\xd5\xf7\x9b\xab\x6a\x1d\x3d\x74\x85\x2e\x72\x04\x99\x9c\x5a\x71\xb0\x26\xf3\xac\x6d\xaf\x13\xd0\x5a\xdf\x0d\x9b\x04\x96\x42\x5a\x58\x3b\xa4\x79\xfa\x70\x23\xe8\x6a\x46\x5d\x74\x06\x44\x9d\xb5\x62\xed\xed\x95\x84\x45\xb8\xb4\x40\x62\x4c\x8a\xdc\xda\x61\xc9\x1d\x78\x42\x71\x2e\x09\x47\xbd\x95\x3a\xa3\xfa\x9c\x32\x2a\x24\xe8\x0c\xb3\x44\x2a\xa9\xe5\x12\xde\x5d\x5e\x12\x81\xb9\xf9\x3a\x51\x6b\x9c\xd3\xbb\xb1\xbe\x41\x78\xd0\x59\x51\x96\x7f\x61\xf2\x06\x98\xfe\x21\x9a\xb9\x63\xa5\x0b\x9c\x31\xda\x00\x5a\x53\xbe\xa4\xef\xa9\xb4\x9a\xbd\x35\xab\xe5\xc8\x66\x86\xe1\x73\xe1\x0c\x47\xea\x6f\x72\x72\x86\xf5\x9e\xcb\x0b\x66\x7d\x18\x66\xcc\xca\x98\x12\x9f\x39\x86\xb7\x66\xff\x45\x4f\xc9\xb9\xb9\xef\x78\x93\x0b\x25\xa5\x75\x6a\x9d\xdc\x14\xf5\x3b\x1f\xa8\xa5\xd5\x36\xc2\x53\x0a\x74\xe1\x32\xf2\xce\x04\x8a\x8a\x35\xb9\xa2\xfe\x5d\xc6\x7b\xbf\xa7\x68\x7a\x19\xa9\x66\x5b\x75\x93\x1c\x40\x55\x47\xfa\xc2\x43\x51\x2d\x1e\x9c\x2a\xed\x7f\x70\x48\xb6\x51\x80\x60\xf2\xc7\x68\xe8\x9c\xa2\xb9\x58\x44\x75\x79\x62\xed\xee\xd9\x53\xf1\xcc\xc6\x9d\x3d\x15\x56\x79\xcb\x89\x9c\x8b\xc5\x88\x4f\x3d\xd1\x20\xe1\x0f\x50\xbf\xf0\x69\x68\xd6\x55\xfb\x93\x01\x25\x36\x91\xe7\x39\x9f\xde\x09\x26\xcd\xbb\x7e\x12\xc5\xb5\x96\xd7\x04\x7c\x2f\x43\xcc\x0b\xcc\x5a\x41\xb2\xde\x50\x0b\x6c\xf4\x59\x46\x73\xa3\xb7\xff\x23\xe3\x65\xf4\xc0\x03\x2c\x7a\xbc\x01\x4a\x54\x47\xcf\x96\x56\xde\x78\x9b\x78\x09\xb4\x2c\x1e\x8a\xde\x47\xbf\xcd\xac\xfe\xd4\x7e\x9c\x98\x65\xac\xe1\x8a\xa7\x1b\x47\x4f\xf4\x8c\xf0\xba\x12\x6f\xcc\x9e\xb7\x96\xd5\xfa\xe4\xd2\x2a\xff\x3a\x9d\x5d\x4a\xba\xd9\xfa\x38\x86\x68\xad\x50\x7c\xf1\x75\x25\x96\x54\xbb\x32\x13\xab\x70\x0b\xa7\xf7\xa6\x7e\x2f\x8b\x75\xfc\xe5\x4d\x11\xa9\x94\xa8\xb5\xdd\xb6\x1b\x3d\xe7\xf7\x21\xae\x76\xb6\x27\x1e\x07\xdc\xd6\xdb\x5d\xbc\x86\xc4\x79\xdf\x55\x45\xf9\x5c\x67\x45\x74\x93\x04\x1e\x3a\x6a\x7e\xc7\xd6\xeb\xf7\x9d\x4d\x88\xb1\x88\x05\x08\xa4\x6d\x39\x26\x2a\x5d\x58\xbb\xdb\xb4\x50\x0d\x21\x64\xcf\x3e\xd9\xfa\x6d\x1c\xb5\xd1\x8d\xc7\x98\xa6\x48\x68\xd5\x83\x68\xc1\x3b\x8d\x67\xd4\xa3\x18\x08\x27\x91\x7a\xd4\xe3\x99\x4c\xa1\x18\x21\xa4\xd8\xef\x8b\x7e\x4c\x3b\x21\xa4\x9e\x4c\xea\x1e\x84\x13\x43\xb8\x96\xc0\x9c\x53\x3b\xd3\x00\x03\x03\x2f\xf9\x5e\xfc\x4b\xa1\x92\xdd\xc1\x5e\x34\x0a\x1a\xa4\x50\x28\x8d\xa6\x1a\x7d\x4e\xce\x1a\x73\xf1\x62\x8e\x0b\x12\x94\xc3\x76\x69\xab\xa7\x2d\x4d\x79\xf7\x22\x34\xfa\xdf\xb8\x59\x83\xc3\x2f\xdf\xa7\x3f\xcc\x4f\x5a\x60\x35\x3e\xc8\x71\x57\x08\xfa\xba\x29\xea\xf7\xbb\xad\xe2\xa8\x02\xd8\x47\xb4\x9d\x24\x64\x42\xb7\xb9\xb4\xe7\x42\xf0\xde\xa6\x7d\x37\x46\x67\xf0\x47\x0d\x2a\xfa\x06\x13\xed\x41\xfc\x29\x79\xc9\xca\x68\xa7\x49\x5f\x64\x43\x0b\x7a\x23\x69\x34\x48\xab\x4a\x3c\x5f\xdb\x83\x14\x27\xb2\x82\xca\x6d\x03\xeb\x71\xa9\xe7\x38\xa9\xc1\x9c\x08\x2a\x80\x28\x0f\x82\x6c\xdd\xe7\x23\x5d\x39\x51\x4f\xc3\xe7\xcd\x99\x4c\x68\xb0\xa6\x13\x42\x12\x6d\xf6\x7b\x67\xfe\x6f\x2f\x3a\x0f\xbf\x86\xa0\x38\x05\xa4\x68\x65\x11\xec\x7d\x5e\x96\x74\x20\x1c\xdc\xeb\x01\xed\x01\xe6\x2a\x75\xcf\xb7\xdb\xcc\xc5\xc2\x27\x5b\x34\x5c\x1b\x47\x23\x39\x67\x8b\xfd\x3e\x57\xff\xa9\x9b\x9e\xe6\x1c\xa1\xc6\x4e\x42\x07\x38\x27\xe9\x5a\x34\x6e\x10\xf9\xdc\xdf\x58\x87\x44\xc7\x13\x28\xd4\x04\x6a\x3d\x81\xda\x4c\xa0\x00\xdd\x6f\xd1\x07\xd0\x08\x5a\x27\x21\x8d\xdc\xef\xc1\x22\x09\x8e\xa9\x39\xba\xc8\x0d\xb9\xd8\x54\xb7\xc1\x56\xbd\x16\xd5\xe6\xdd\x1d\xcf\xbd\x12\x55\xbd\x77\xea\xc8\xfe\x86\x90\x3d\xb9\x43\x7a\xf2\x93\x33\x64\xb2\x7c\xd7\xa0\x1b\x4d\xd2\xb6\x1c\x54\x9c\xc5\x54\x57\xef\x01\x72\xd9\x71\xc8\x04\xe2\x4a\x55\x2b\x08\x65\x21\x49\xc3\x50\x67\x57\x9f\x52\x17\xec\xfa\x34\xcc\x5e\x34\x4a\x2e\x1e\x38\xd2\x38\xf6\x3d\xb9\x55\x4f\x45\xbb\x57\x4e\x44\xab\xd7\x04\xc8\x72\xae\x77\x4e\x37\x80\x72\x8e\xf6\x55\x6d\xc0\x49\xda\xc6\xc8\x0e\x58\xe1\xb6\xc8\x4f\xac\xdd\xc9\x2e\xd6\xc7\xf7\xf8\xee\x13\x53\xe8\x1d\xa7\xb3\xce\x28\x30\x3b\xd6\x49\x7f\xa7\x76\x30\x1c\x2b\xe8\x3f\x91\x46\x4b\xf5\x30\x4a\x16\xa1\x8c\x14\xf9\xad\xad\xd0\x25\x5e\x70\xa1\x24\xad\x74\xff\xb1\x1b\x5c\xef\x08\x71\x07\x3a\xab\x82\x37\x83\x4d\x26\xf2\xf4\xd4\x8f\x94\x02\x19\xe9\xf3\x10\x51\xb4\x86\x86\xb4\xc5\x77\xab\xd3\xdd\xa7\x3b\xcc\xa9\xa2\x35\xe2\x54\x9a\x83\x31\xd0\x6a\x60\x5a\xdd\x13\xd2\xd9\x42\x9b\x21\x24\x4f\xbf\x86\x78\x32\x7f\x7a\x77\xdb\x37\x96\x6e\x87\x8e\x84\x68\x08\x05\x70\x70\xb2\x13\x4c\x89\x3d\xd7\x7d\xbd\x47\x09\x64\x5d\x11\x1e\x77\xd1\xe9\x7c\x09\x9a\x97\x1a\xb8\xca\xa4\x35\xd6\x8e\xea\x5c\xb6\x39\x38\xd4\x07\xde\x16\xcb\x8a\xa0\x56\x68\xdf\x80\x49\x46\x24\x18\xd8\xfa\xf1\xa6\x79\x0b\xac\xa8\x43\x3f\x67\xb9\x18\xf1\xfd\x3e\x3f\xd0\x06\xf8\x64\x6d\x5a\x35\x9a\x7a\xc7\x7b\x3e\x58\xbf\xb7\x07\x60\xd2\x67\x21\xcd\x6f\x1a\xc8\x97\xc7\x8f\x86\x82\x3f\xd4\x9f\xf7\x28\xf4\x13\xc5\xd6\x69\x18\x6e\x88\x06\xe7\x77\xf4\x99\xb0\xa6\xe5\xa3\x6f\x37\xbf\x29\x07\x96\xa3\x3e\xb4\xb7\x9a\xab\x6f\x71\x04\x2e\xa9\x39\xf5\xf1\xa6\x43\x78\xf1\x69\x5f\x0d\x40\xb9\x8d\x11\x87\x6e\x80\x88\xba\x92\xd8\x0d\x2a\xba\xa1\x14\xe4\xa5\xa3\x46\x1b\x4f\x84\x9c\x1e\x0d\x3e\x0a\x53\x8d\xe8\x8e\xc3\x55\x19\x63\xb8\x6b\x37\x4c\x17\x9c\x79\xdd\x6d\x5e\x1f\x85\x18\x00\xc0\xf1\x7b\x28\x01\xaf\x3e\x61\x3b\x14\x50\x3e\xe1\xb3\x5f\x40\x13\x22\xe1\x19\xd2\x94\x7c\x02\x12\x0d\xc3\x0d\x1d\x7b\x3b\xb4\xaf\xfe\x14\xef\xd7\x7f\x78\x1f\x7b\x66\xff\x2f\x3d\xaa\x43\x80\x4e\x01\x31\x58\x5c\x04\x4f\x7b\xcb\x0e\x1d\x1c\xda\x3d\x38\x96\x97\xab\x6d\x68\x55\xf0\x0a\xe4\xd1\xde\xdd\x18\xb8\x61\x3a\x8d\xfb\x77\xde\xa5\x29\x1a\xa4\xff\xff\xa4\x45\x0f\xdc\x1f\x8f\xbb\x5f\x7b\xc1\xd0\xb9\xc6\x5a\x69\x9b\x0e\xf0\xe7\x2f\xaa\xcd\x56\xb5\x5f\xdf\x27\x21\xd4\x4e\x94\x34\xa8\xad\x89\xd1\xd3\x59\x74\x92\xe2\x38\x27\xad\xf5\x8f\x3a\xca\x8c\x8b\x76\x5c\x41\x5b\x06\xd7\x71\x2c\xc3\xca\x0c\x45\x78\xbd\x63\xda\x9c\x2d\x8c\x02\x24\xd8\x2f\x45\xf8\xa3\x07\x49\xd0\xa8\x2d\xe3\x68\x24\xb4\xb4\xdf\x34\xb3\x23\x66\xd7\x9e\x5a\xff\xdd\x10\x4d\x71\x32\xc9\x77\xad\x39\x85\x70\x1d\x98\x1e\x36\xd3\x43\x4d\x2c\x02\x5a\xf1\xc7\xfa\xba\x75\x90\xa6\xdd\xc0\xe9\x05\x74\x73\x23\x41\xf6\xa1\xcd\x27\x21\x66\xf2\xfc\xc6\xd8\x9a\xc6\xc3\x48\x8a\x1f\xc5\x9a\xec\x93\xf3\x91\x57\x03\x41\x5a\xf8\x0e\xfb\xa9\x78\x45\xab\xe9\x50\x07\x55\xdb\xcd\x14\x03\x39\x8a\x34\xd3\x3d\xb2\x6f\xb5\xbd\xcf\x51\x50\x9a\xfd\xec\x29\xf7\xd6\x22\x7e\x7a\x8a\xda\x3c\x4c\x2e\xe7\x7c\x91\x58\x1c\x1c\xc5\x8e\xb0\x6d\x57\x62\x99\x21\xbf\xb2\xd0\xe2\x32\xbd\xb4\xd5\x8c\x3d\x22\x81\xdb\x8e\x71\xb0\xf4\x1a\x93\xef\x40\xeb\xdf\xd9\x1c\x6d\x0c\xa0\xbe\x5d\x4b\x0f\x60\x0a\xaf\x74\x3f\x1c\xbc\xb2\x0d\x72\x69\x3f\x24\x9b\xfb\x45\x6f\x6c\xfc\x90\x44\xb1\xf3\xc5\x30\x4f\xd7\x6e\xdc\x3b\x85\xee\x6c\x7b\x14\xe2\xd4\x77\x93\x56\xa8\xa7\x3a\x4a\xb7\xb4\x5d\x25\x34\x31\xdd\x5e\x52\xca\xfd\x74\x07\x5a\x39\x7f\xa0\x03\xdd\xc8\x76\xf0\xbe\x63\x9e\xea\x6e\x5e\xa7\x49\x00\x89\xae\xe5\x28\x05\x85\x6e\x2b\xe8\x42\x1d\xa2\xa4\xfe\xe5\xe4\x1c\x73\x75\x2a\x81\xe8\x06\x2e\x8e\x5e\x9f\x97\x5b\x17\xc7\x40\x69\x0e\xb5\xdc\x84\xc3\x79\xdd\x58\x4b\x7a\xf0\x0e\x2b\xe2\xba\xae\xe9\x58\x09\xe5\xe7\x84\x90\x90\x68\x4d\x26\x27\x03\x9b\x8f\x1e\x54\xbf\x26\xbf\xb1\xf3\x05\xb1\x5d\x40\x80\xcc\x7c\xa1\x03\xea\xda\x63\x57\x58\xa2\x06\x16\x02\xc7\x27\xd2\xdb\xc2\x13\x77\x43\x06\x67\xcf\xb5\xc6\xe6\x8f\xa9\x89\x16\xd2\x9f\xd7\x84\xe5\xed\x17\x78\x47\x8a\xc9\xa4\xb0\xbf\x2f\x58\xee\xfe\xd6\xa1\x7e\x78\x4d\x76\x17\xbb\x29\xf8\x55\xc0\x4c\xeb\xc9\xa4\x86\x9f\xf6\xff\x13\x42\xd6\x93\x49\xce\xe1\x2e\x68\xec\xb4\x7a\x36\x3a\x3f\x39\x47\xb6\xb6\xd0\x92\x98\x98\x4e\x0d\xe8\xfd\x3e\x0e\x6f\x34\x5b\x33\x99\x9c\xb9\x26\x86\xf6\x8d\x8e\x25\x0f\x7d\x6a\xcb\xf3\x48\x28\xe8\x51\x06\x9f\x0f\xab\x94\x97\x5a\x57\xa3\xd0\x82\x5b\x59\x60\x40\x4d\x7a\x22\x8d\xa9\x63\xd5\xe5\x46\xe2\xdf\x9a\xec\xfe\x45\x14\xdb\x2d\x15\xe9\x0c\x00\xab\xc0\xa3\x73\x35\x65\x25\x5e\x4d\x97\x6b\x46\xb9\x7c\x53\x3a\xe1\x4b\x5f\xa1\xeb\x6a\x69\xc2\x2b\x3a\x07\x5d\x53\x38\x8f\x73\xed\x37\x26\x1b\x50\xfc\x58\x12\x8a\x73\x41\xe6\x0f\x1f\xe9\xbd\xab\x6d\xd5\xe3\xcd\xd4\x5a\x96\xb9\x07\x9b\x06\xeb\x8f\x43\xbb\x64\xa7\x8f\xd0\xc7\x5f\x33\xcd\x61\x73\x17\x11\x65\x62\x7f\x7b\x38\xe6\x0e\x1d\x53\xdf\xea\x50\x5e\x11\x3a\x4c\xbb\xd0\x6d\x75\xd4\x8f\x8d\x16\x6e\x8f\xd9\x74\xa7\x49\x68\x54\x20\x27\x7a\xd7\x34\x0b\x34\x99\xac\xf3\xc0\x25\x06\x0b\x70\x4e\x87\xe8\x25\x84\x69\x93\xeb\xd0\xa3\xd5\x21\xd7\xa5\xa0\xb0\x13\x50\x09\xeb\xd5\x59\x10\x1a\xd4\x82\xf0\xad\x34\xa7\x85\xba\x06\x32\x6b\x1d\x2e\x3c\x2f\x12\x46\xe6\xe0\x22\xf4\xb8\xd0\x3f\xb4\xfb\x48\x91\xe8\x4b\x27\xb7\x6f\xf7\x64\x9e\x06\x9f\x36\x5f\xc6\x97\xca\x24\xc5\xe4\x5d\x23\x33\xd3\xc7\x34\x29\xe7\x53\xa7\x31\x8f\x6c\x00\xb3\x70\xb3\x43\xa3\x63\x52\xa2\xcf\xd3\xad\x8f\x51\x44\x1c\x4d\xb6\x92\x46\xae\x73\xd4\x60\x58\xdd\x21\xa5\x24\x1d\x36\x0c\x98\xf5\xc6\x5b\x17\x2d\xb6\x57\x65\x17\x7f\x33\x2c\x17\xc2\x54\xdf\xe8\x08\xb0\x83\x33\xb6\x24\x76\xd0\x7e\xb0\x49\x3c\xeb\x62\x66\x62\xa2\xd6\xdd\x63\xc8\x00\xa1\x26\x7c\xc8\x08\x22\x87\x14\xbe\xb2\x6b\x04\xf9\xa5\x90\x6d\xad\x42\x09\x72\x91\x73\x60\xa2\xb7\x90\x24\xfc\x02\x94\x74\x28\x07\x70\x39\x68\x05\x46\x0f\xe1\xcc\x7a\x9a\x87\x53\x1b\x3a\x42\xc9\xac\x43\x1a\xa3\x0e\x8a\x8c\x32\x9e\x49\x4f\xfb\x04\x90\x5a\xa0\x36\x75\x81\x12\x6f\xb4\xd2\xa1\x07\xf7\x82\xcf\x7a\x48\xe6\xd0\x0a\x7b\x97\x98\x50\xa6\x1c\x5a\xa5\xf9\x24\xc8\xdd\xdc\x37\x67\x70\xa2\xc5\x6c\x40\x60\x1e\x24\x8f\x9d\xe7\x5e\x22\x3e\x49\xc0\xef\xa2\x2d\x65\xcf\x7a\xc0\x75\x42\x52\x27\xb9\x1f\xba\x89\xc6\xc3\xc0\x8e\x0e\x53\xbc\xf8\x00\x6a\x96\x2e\x0c\x91\x83\xb4\xf1\xe1\xf3\xdc\x27\x89\x85\xb6\xa9\xc0\xe0\xe1\x3f\x8c\x6a\x03\x9a\xc1\xf4\x02\x0f\x60\x78\x17\x33\x3b\x23\x7c\xd2\x3c\x0f\xba\x32\x74\x07\x4e\x7e\x72\xe4\x91\x38\x48\x8b\x92\xaf\x7a\xf4\x4c\x8f\x13\x07\xda\xc3\xd1\x30\xc2\x4b\xc9\x03\x34\x25\x0f\x78\xda\x71\x84\xce\xf7\xc0\x4d\x36\x40\xfb\x7e\xf1\x9d\x72\x86\x12\x28\xd2\x3f\xe7\x08\x57\x62\x74\x38\xd2\xf5\x24\x89\x17\x03\xdf\x76\x10\x24\x01\x05\x35\x8f\x6b\x2a\xdb\x82\x15\x6c\x39\xa4\x41\x8c\xe2\xf0\x12\xa4\x20\xa7\xa4\x87\x7c\x42\xa4\xb4\x0e\xe7\x7c\x53\x52\x2e\xd9\x8a\x29\x86\x0a\x19\x07\xfd\x9e\xcf\x0c\x71\x49\x6b\x2a\x60\xb8\xe0\xe2\x02\x25\x01\x98\x11\xb5\xf6\xce\x3f\x0c\x75\x27\xd0\x00\x2a\xe4\x7b\x06\x0c\xfa\x92\xad\xdc\x02\x60\xd9\x0b\x45\x29\xe3\x53\xa8\x80\x94\x12\x40\xbd\x52\xc7\x54\x9a\x60\xf5\xf7\x15\xa7\xda\xea\x26\xcc\x44\x7d\x86\xb2\x5c\xb4\x0f\x51\x7c\x68\x5a\x2e\xfb\xa6\x06\xf0\x94\x95\x08\x61\xe3\x18\x30\xc8\x89\xe6\xc2\x3b\x8f\xa5\x5f\x43\x9c\xc3\x52\xcb\x6b\xe5\x97\x92\xd7\xfa\x84\xb2\x28\x62\xdc\x3d\xbd\x54\x57\xa8\xce\x74\xec\x23\xed\xfc\xdb\x2d\xe5\x25\xe3\xd7\xee\x95\x6e\x59\xf7\x88\x7a\xad\xa1\xe7\x8b\xf6\xb0\xf0\x24\x39\xe4\xc9\xf9\xd0\x70\xff\x12\xf2\xe0\x41\xae\xde\x79\x11\xf4\xf3\xf5\xee\x54\x88\x8b\x04\x49\xb0\x71\x32\x02\x9f\x61\x99\x14\xaf\x6c\x06\xa6\x47\x72\xf0\x90\x62\xe6\x18\x06\x5c\x3e\x9a\x03\x8f\xcd\x33\x86\x7c\xe8\xfb\xc7\x6d\xa3\x15\x4d\x07\x99\xa0\x7e\x1f\x8c\xa3\xf8\x14\x2c\x2c\xcd\x21\xd1\x69\xef\xcf\x5d\x91\xca\x82\xa1\x21\x1f\xde\xd9\x26\x44\x3e\xc5\x5b\x1f\x73\x3f\xfa\x0a\xe9\x62\x74\xe0\xa6\xf4\x15\x1f\x41\x4f\x9a\xda\x7d\x08\xdb\x7c\xb7\xca\xc1\x4d\xea\x9b\x27\xe7\x06\xdc\x69\x2c\xe2\xf8\xfc\xd3\xaf\x48\x8b\x31\xff\xbc\x4b\x32\xe9\xdb\x99\x5e\x69\x3b\x2e\x28\xde\xec\x5f\x30\xa5\x2f\x25\x2b\x8e\x52\x4e\xbb\xed\x2d\x7e\xfa\xe4\x3c\x48\xad\xd9\x47\x29\xce\x23\xdf\xe7\x84\x51\x1f\x0d\x0b\x65\x61\x0a\x96\x58\xea\x49\x1d\xa0\xc1\x1c\x3a\x4e\x60\x7b\x72\x6e\xd2\x01\xea\xa5\xe8\x6a\xc7\x12\x52\x87\xf2\x65\x21\x73\x91\x4a\x62\x22\x8f\x13\xa4\x06\xce\xe6\x71\xb2\x88\x3a\x91\x8f\x94\x2d\xb0\xb0\x59\xa5\x85\xb5\x3f\x47\xb5\x32\x5a\x5b\xe6\x14\xfd\x29\x0a\xc3\xdd\x8e\xf5\xd3\x97\xa3\x8d\x8f\xc3\xb0\xe8\xb3\x70\x2a\x7e\xc3\xd2\x1a\x5d\xdc\x71\xbe\xd0\x0b\x6c\x23\x82\x39\x83\x90\x8b\x1b\xf3\x54\xd5\x61\x7a\x37\xae\xc0\x94\x86\x02\xff\x4a\x48\x07\x67\x0d\xdc\xcf\x38\x18\xb9\xa5\x56\xb7\x81\x55\xdb\x25\x59\xc8\x29\x4a\x97\xa6\x42\x0f\xdc\x79\x04\x47\xc9\xb0\x87\x75\x60\x75\x2e\xbc\x25\x9c\x91\x33\x88\x1f\x32\x13\x61\xcf\x0a\xc8\x29\x6c\x8c\x5c\x14\x72\x09\x0f\x6b\xd4\x6a\x5f\xd2\x2e\xf9\x5a\xe7\xcb\x0b\x15\x94\x7d\xce\xe5\x60\x15\x3c\x21\xad\xd4\x9c\xe0\x9c\x35\x99\x68\x0b\xa3\x21\x57\x41\xd0\xc8\xd9\x53\xe9\x1d\x05\xa4\x9d\xba\x20\x74\x2e\x17\x03\x97\x89\x18\xf6\xa2\x16\x09\x2d\xa8\x38\xe4\x59\xad\x6e\x83\xa4\x2a\x31\x39\x8c\xac\xf4\xfa\x34\x74\xd2\xcc\xc0\x61\x09\x97\x1e\x61\xe2\x3a\x5a\xa4\x4d\x1c\x92\x4f\x9c\x41\x7c\xd0\x8e\x9e\x40\x9f\x94\xd7\x96\xf1\xfa\x25\x2f\x2d\x43\x75\x09\x4b\x5f\xc2\x21\xda\x27\x02\x36\xce\xdd\xd1\x0a\x70\x34\x21\xc0\x85\x92\x1a\xed\x48\x6a\x34\x25\xa9\xd1\x23\x24\x35\xb6\xca\x5b\xc2\x1a\x12\xb6\x04\x3b\x78\xb5\x87\x15\xab\xdd\xa9\x68\xb9\xb7\xd0\xd0\xbd\x45\x40\x5d\xaf\x47\x48\x76\x73\xbe\x30\xc2\x9d\xfa\x8b\x95\xa8\xe9\x88\x77\x31\x49\xd1\x9c\xf8\x90\x5b\x4a\x4b\xb8\xbb\xe9\x0b\x90\x76\x5e\x13\x8e\x01\xb6\xd9\xdf\xbb\x71\xcb\x97\xe1\x1a\x5a\x11\xb1\xb6\x02\x7b\x19\x07\xfe\x1d\xd5\x28\xe5\xfc\x96\x18\x50\x4e\x77\xdb\x6b\x51\x94\xf4\x75\x25\x6c\x66\x9d\x3c\x3e\x11\xd1\x77\xa4\xdb\x87\xf9\xd5\xd8\x4c\xa1\x1d\xa1\x4a\x28\x74\x4f\x84\x2b\xba\xf0\xcd\xf4\x12\xe6\x74\xd1\xf8\x12\x85\x3d\x51\x3c\xbd\x5f\x8f\xe2\x3a\x6c\xa9\x1c\x91\xe8\x41\xb1\x56\x12\x7c\xf8\xd5\x95\x0c\x86\xde\xc7\x8e\xa3\x18\x28\x93\xc9\xee\x44\x44\xa1\x7c\x7e\xfb\x6d\x56\x85\x7e\xcc\x0d\x3a\x7c\x49\x57\x30\x56\xc5\x6d\x76\xf9\xf0\x3b\x9f\x02\x1a\x06\xd5\x12\xd0\x9c\x2e\x48\x9c\xb6\xc3\xe5\x5c\xb3\x59\x94\xec\x50\x3e\x65\x6b\x4c\xf9\x03\x02\xc7\x11\xa4\x5c\x4a\x7d\x66\xe2\x62\x87\xbf\xb6\xf5\x55\x02\x1f\x17\x9d\x36\xf6\x42\x1d\xf9\x32\x97\x98\x61\x8a\x05\xae\xd0\x4c\x3d\x58\x05\x0f\x9a\x9c\x85\xc8\x06\xd9\x9b\x7c\x62\x9d\x46\xdb\xc1\xdd\x49\xdb\xfe\xab\x67\x50\xd8\x90\x73\x7c\xdb\x9f\x45\x21\x2a\x73\x56\xb7\x12\x05\x88\xde\x23\x7f\x99\xf6\xd8\x8e\x33\x0f\x24\x33\x09\xd8\x3b\x2b\xa6\x20\xad\x9f\xbe\x2e\x53\x3c\x2a\xf0\xfd\xf1\xa3\xab\x55\xdd\xea\xec\xf2\xd2\x27\x84\xed\x64\x3e\x78\xbd\x66\xd7\x37\xbe\x96\x7e\xbb\x41\xd9\x4e\x3b\x70\x59\x2f\x6f\x68\xb9\x5b\xd3\xd2\x4c\xa9\x3d\x21\x53\xe4\x24\xf9\x98\x55\xfc\x45\xb5\xd9\xb0\xf6\x7b\xe6\xae\xc8\x6e\x42\x89\x98\x0a\x8f\x5a\xb5\x2c\xe6\x67\x8a\x3b\xf6\x3f\xcf\x0d\x7b\x16\xf4\x28\xda\xd0\xd7\x59\x76\x5b\xd0\x17\xd3\x35\x2b\x1d\xf0\xc5\xd4\xfe\x88\xe6\xc0\xd3\x88\x10\xc5\xf2\x27\xd1\x20\xcc\xdc\xea\xb7\xd2\xc6\xe2\x9b\x6d\x0c\x7e\x5a\x20\xba\x47\x7a\x57\x5d\x5e\x80\x9a\xca\x1c\xb9\x60\x7d\x86\xab\x14\x89\xaf\xd2\x5c\x48\x22\x77\x4d\x0b\x64\x8d\xa9\x87\xd3\xcb\x49\xc4\xe5\x87\xd4\xe4\xad\xdc\xd5\x5a\x8a\xe6\xdb\x80\x59\xf2\x56\x3b\xe9\x55\x44\x97\xa6\x16\xd7\x9f\xd4\x85\xa0\x53\x71\x69\x34\x74\x45\x6d\x8b\xba\x66\xd7\xc6\x41\x1e\xb0\x11\x47\xcd\xba\x18\x6e\xeb\x61\x68\x9e\xe1\x45\xb7\xd6\x17\xa6\xd3\x56\x18\xbe\x41\x6c\xc5\x81\xb7\x9d\xfd\x81\xb3\x74\xe6\xb2\x92\xf0\xdc\xa8\xa5\x01\x48\x77\x6c\xbd\xd6\x08\xdd\x11\x0d\x53\x47\x4b\xbf\xf0\x53\xc5\xed\x07\xc6\x30\x51\xa9\xbb\xb9\x33\xf3\x54\xce\x21\x53\x0d\xa0\x0b\x83\xe8\xa2\x6d\xbf\x0e\x2a\xfb\xe2\x6a\x1a\x54\x09\x6c\xf9\xe2\x02\x02\x75\x5f\xe8\xc1\xe7\x0b\xd5\x80\x75\x9d\xd6\xa2\x04\x54\xa9\xb9\xc5\x6f\xba\x70\x6a\xb7\x80\x2a\x2e\xb8\x8a\xea\xda\x25\xe0\xed\x0f\xcd\x59\x2f\xf2\xe9\x29\xdb\x86\x3d\x07\xc1\x77\xa5\x9a\x2b\xce\xb4\xfb\x05\xed\x0e\x4b\x71\x74\x1e\x0c\xc6\x3a\xb2\xc7\x57\x4c\x6c\xa8\x2b\xc8\x37\x3c\x39\x47\x28\x8f\x98\x66\x40\x54\x55\x0f\x40\x1c\xba\xe0\x69\x63\xd9\xc0\x0d\x10\xbe\x2e\x63\x63\x6a\x7c\x2d\x02\xf6\x74\x8f\x4d\x4f\x22\x86\x0e\x39\x3d\xc8\x62\x05\xa5\x35\x1e\x51\xc2\x17\xf2\xea\x83\x67\x6e\xd4\x3f\x84\x7b\x68\x4f\xdf\xee\x1b\x53\xe6\x3f\x7a\x0c\x4e\x84\xcc\x14\x98\xae\x50\xd3\xc0\x72\x7b\xc8\xca\x40\x9e\x81\x44\xb9\x41\x2c\xa3\xe5\x50\x5f\x4a\x28\x20\x0e\xba\x34\xa2\x6c\x97\x46\x74\x55\xd0\xf8\x02\x17\x84\xce\xab\xc5\xa8\x98\x9f\x2d\x08\x21\xc5\xfc\x7c\x31\x99\xe8\x53\x32\x16\xf3\x6a\x01\x33\xee\x0c\x3f\x30\x55\x4d\x60\x65\x77\x2e\xbe\xd2\x51\x1b\x5b\x5c\xe2\x56\x43\xa8\x1f\x1a\x6c\xf2\x84\xa4\x84\x9d\x2a\x5a\x37\x47\xb8\x20\x67\xb8\x26\x95\x5d\x64\xf1\xac\x7e\x5a\xd8\x45\xee\x48\x35\x2f\x16\x23\x36\xdf\x2d\xc8\x9c\xce\x77\x0b\xcc\xe7\xbb\xc5\x22\x28\xec\x5f\x69\xc5\xe7\xc0\x09\xf9\x9e\xde\xc1\xa1\xe8\xd4\x6a\xec\x68\x03\xda\x97\x5a\xfb\x0a\x4e\x91\xe4\x1c\x81\x0e\xaf\x4b\x6c\xbb\x37\x54\xeb\xf8\x39\xdb\x8d\xd1\xdb\x86\xa1\x8a\x81\xf3\x4f\x7c\x1d\x39\xc3\x7c\x82\xd8\xb9\x8b\xd7\x57\x6d\x1a\x3a\xd8\x01\xcd\x1f\xa0\x48\x98\x02\xce\x77\x88\x58\x87\xbc\x1c\x98\x38\x90\xb6\x92\x95\xed\xbb\xb2\x4b\x45\x1d\x1f\xd1\x4b\x38\x53\xbc\x64\x08\x18\x0d\x05\xa3\x53\x05\xff\x63\x50\xb4\x7e\xea\x9d\x1f\x11\x2c\xe7\x97\xfa\xa6\x6c\x51\x28\xad\x81\x8a\x58\x4a\x84\x3b\x4c\x83\x24\x21\xf3\xa2\x33\x56\x45\x16\x89\x88\x1f\xf2\xc5\x3b\xfa\x58\xa1\x5e\x1a\xee\x2c\x69\x07\xd0\xa0\x9f\x49\x7a\x14\x9a\x00\x33\xd4\x79\x91\x60\x26\x8c\x06\x2f\x95\x26\xa9\x8f\x02\xeb\x24\x80\xa0\xf5\x45\xe6\x3e\x86\x32\x8b\xdd\xae\x5a\xf5\xae\x92\x7d\x8d\x84\xb3\x6a\xb5\x32\x7e\xd4\x60\xaf\xa9\xa2\x1c\xe3\x2d\x01\xde\x62\x6b\x72\x92\xed\xce\xb0\x40\xfa\x3a\x6e\x25\x48\x6f\x4d\x78\xa0\xc7\x4e\xd2\x14\x33\xc3\x25\xa0\xfd\x5f\x8a\xfa\x47\xaa\xe8\x4e\x7c\x1c\x6f\xc3\xea\xff\x01\x45\xea\xe2\x81\x09\x98\xb4\xac\x20\x6a\xdd\xd4\x31\xf9\xef\x49\xdc\xa0\x98\xb4\x39\x9d\x8b\xc5\x42\x9d\x17\xfd\x57\xef\x55\xa1\x5f\x9b\xc8\xba\x3e\xc4\x34\x88\xe2\x13\x12\x7f\x06\x54\x49\x75\x76\x00\xf6\x91\x07\xba\x81\xbb\xed\xce\xcd\x38\xd9\x5d\x11\xac\x77\x41\x24\x96\x84\x90\x9c\x8e\x99\xaf\xd6\xda\x5e\xf7\x45\x3f\xc0\x16\x33\x7f\xda\xe7\x74\x81\xdc\xf5\x9e\x18\x0b\x48\xf5\x25\x14\xfe\xeb\x52\x58\x56\x5a\x7f\x20\x43\x93\x28\x32\x90\x56\xc3\xa5\x80\x1c\x4c\xb9\x68\x4f\x35\x1a\x77\xf6\x99\x16\x67\xe4\x9e\x47\xcd\x67\xbf\x1f\x1c\x3c\x7a\x6d\xc5\x88\xb0\x86\x75\xd7\x47\x36\xac\x80\xed\xae\x22\x53\x75\x3b\xba\xd2\x22\x51\xbc\x47\x37\xe2\xba\xe8\x28\x4d\x34\x45\x17\x3b\x3e\x55\x6c\xc9\xd5\x4e\x70\x75\xbd\x98\x56\x79\x66\x86\xd4\x29\xcb\x71\x06\x74\x98\xef\xb6\xef\xc4\xf6\xa6\xe0\x34\x24\x34\x50\xe3\xc1\x4a\x71\xe9\x26\x3d\xd6\x96\xcb\x62\xbd\x36\x05\xae\x42\x1a\x03\x64\x21\xcd\xc1\x47\x56\xb1\xd3\x53\x89\x14\x01\x99\xcb\x05\xd4\xfb\x82\x6b\x91\xff\x54\x53\x57\x14\xe5\xe4\xdc\x16\xb0\x3b\x6b\x72\x8a\xd0\x40\x47\xa1\x79\x4d\xc4\x9b\x20\x6c\x9c\x53\x6e\x23\x78\x3a\xc0\xb4\x74\x23\x11\x10\x95\x3a\xe2\x09\xa3\x67\x58\x03\x3e\x18\x0f\xa1\x84\xd2\x26\xa1\x9c\x9a\x96\xac\x5e\x56\x9c\xd3\xa5\x2d\x91\xd2\xe2\x0e\xcc\xa9\x6b\x31\x08\x9a\x81\x0d\x40\xd7\xc7\xc8\xc6\x6a\xdf\x08\xd8\x47\x0f\x74\x59\x32\x41\x97\x72\x7d\xdf\xdd\xf3\x2e\x82\xcc\xe3\xc2\xcc\x07\x01\x18\x3a\xdb\x44\x21\xd9\x90\x2f\x30\x99\x1c\x6d\x44\x09\xb5\x5e\x09\x1c\x33\x53\xf4\x4a\x4d\x34\x89\x97\x5d\xc7\x09\x88\xe8\x06\xe3\xf8\xe6\xf4\x14\xac\x54\xc6\x5c\x2d\xbd\xb3\x82\xd1\x9b\xf1\x6e\x26\x36\x50\xc2\xdf\xb0\x95\xcc\xd1\xc8\xc4\x7d\x33\x6f\xeb\xaa\x08\x1b\x02\x58\x0e\x82\xcb\xd3\xe2\x59\xe5\x91\xb8\xb0\xe6\x6d\x10\x5a\xea\x31\xe3\xb5\x2c\xf8\xd2\x14\x31\xb7\x53\x79\xc6\xa1\x0c\x19\x8c\x57\x23\xec\x67\x88\x5c\x4a\x6c\xa9\xd1\x42\x51\x31\xb8\x6e\x06\x73\x4a\x26\xe8\xb1\xf3\x67\x72\xaf\x93\xc4\xf7\x11\xb7\x4e\x7a\x1c\xd8\x2b\x25\xb2\x6b\xc0\xbc\x00\x39\xcf\x14\x5d\x4f\x18\x6c\x1e\x9a\xa8\xb0\x50\xe8\xb5\xd0\xc2\x61\xde\x55\x15\x60\x46\x78\xc0\x39\xc7\xba\x02\xa1\xe4\x4a\x3e\xa4\x4d\x10\x6a\xbf\x12\x98\x8c\xeb\xb6\x1c\xbe\x23\x67\x4f\x77\xcf\x6c\x69\xae\xa7\x3b\x2b\x8b\xae\x49\xad\x04\xd0\x25\xa1\xf3\xb5\xae\xb6\xcc\xca\xec\x84\x90\xb5\x8d\x19\xad\xe6\xeb\xc5\x7e\xcf\xe6\xeb\x05\xb6\xba\xed\x91\x49\x93\xee\xd6\xbc\xba\x58\x81\xcd\x05\xe2\x74\x4d\xd2\x74\x5f\xf3\xd0\x79\xb0\xc6\x4c\x46\xbe\xc6\x4b\x34\xba\x12\xb4\xf8\xa8\x13\xaa\xfb\x54\xf8\xf1\x17\x3e\x25\xa7\xfa\x02\xe7\xa5\x29\x51\xba\x46\xe8\x80\xb3\x77\x39\x10\x3d\x14\x8e\x6c\x8d\x47\xf1\xb8\xb6\xe6\xcd\x17\x18\xd5\xe6\x17\x97\xf3\xf5\x82\x2c\x1b\x1d\xcf\x6b\x39\x98\x65\x74\x60\x86\x25\xd0\x21\x0f\x1c\x2f\x32\x1f\x45\xe5\xc4\x50\xb0\x4e\x8e\xf0\x89\xe9\xd9\x09\x1a\xee\x16\x49\x99\x0d\x42\xdf\x9f\xb4\xed\x60\x64\x85\xbc\x7e\xc3\xc2\x31\x56\xd5\xc8\xe8\x76\xdc\x0a\x78\xb0\x02\xa3\x07\xe8\x32\x42\xbf\xec\xb2\xbd\xd7\x25\x4d\x47\x21\x5b\xf2\x39\xa0\x40\x53\x50\x90\xe8\xe1\x1e\xf8\x15\xbb\x20\x7d\x3f\xbe\x64\x86\x76\xa5\x74\xca\xa0\x4d\x30\x6a\x72\x2f\x9a\x27\xc8\xdb\x5c\xeb\x1c\x0d\x27\x83\x7d\xf5\xe4\x0e\x81\x71\xf5\xd7\xd7\x64\x40\xb1\x04\x57\xd1\x7a\x32\xc9\x8b\x0e\xed\xf5\xa5\x85\x8c\x46\xa0\xdf\xad\x60\x58\x4b\x60\xb5\xa8\x3b\x50\x2c\x32\x42\xe7\x15\xa9\xe7\x7c\xb1\xd0\x28\xb0\xb6\xa9\x68\x4e\x08\x29\xe6\xd5\x62\xbf\xb7\xee\x23\xaf\xfe\xbe\x2b\xd6\xb9\x98\x57\x0b\xcc\xd0\x7e\x2f\x9d\x8e\x34\x3c\x91\xb6\x84\x44\x97\xa9\xc9\x9e\x65\xa7\x31\xcd\x3f\xcd\x66\xe6\x11\x2b\x4f\xb3\x6f\xb2\x76\x1c\x7b\xb0\xfa\xbe\x68\xf6\x7e\x7b\x43\xd7\x00\x92\xd2\x4d\x26\x4c\x49\x4d\xa7\x10\x7b\xb7\x27\xea\xc3\xe5\xe3\xb2\xd1\x47\x4d\xb3\xa5\x94\xca\xd3\x74\x82\xde\x8d\x0d\x57\x93\xa6\x24\x7e\x0a\xba\x68\xfe\x31\x23\x97\xda\xb5\x29\x54\xf3\x0f\x01\x45\x0b\x4f\x3d\xe0\xd0\x11\x26\x41\xde\x80\xd4\x21\x4d\x65\x10\x68\x59\x82\x52\x9f\xb5\x34\x1a\xe1\xe4\x46\xad\xd8\xfd\x24\x69\xa0\xb8\x13\xe3\x9f\xcc\xeb\x1d\x24\x3d\x68\x1f\x93\xe3\x00\x9a\xb2\x63\xe5\xfd\x46\x96\x21\x60\x77\x9b\xf7\x82\x3e\xd1\x33\xd5\x99\x0b\xb6\xed\xcc\x05\x0c\x9e\x61\x86\x5a\x1e\x1b\xf7\x10\xbe\x3d\x90\x70\x1c\x4c\xa6\x71\xf6\x76\xad\xf8\x1e\x8a\xd1\x33\x76\xd6\xc3\x3e\xdf\x39\x42\x0d\x9d\x3a\xe6\x25\xce\xfb\x6a\x2a\x57\x45\x0f\x4b\x4c\xa7\x61\x4a\x04\xf8\x19\xbc\x5f\xb6\x0c\xbc\xa0\x91\x7c\x5d\x09\x52\xb7\x2d\xbf\xea\x61\xf1\xd9\xca\x3b\xd5\x16\x5e\x22\x59\xf7\x27\xaa\xe2\xd3\xaa\xe0\x13\x16\x92\x83\xfa\x56\xae\x10\x1d\xaf\xc4\x06\x3a\x9d\xb5\x55\x91\x81\x53\x93\xae\x44\x6b\x5e\xc4\xa7\x82\xfe\x2c\x45\xb1\x94\xaa\xeb\xb2\xb4\x32\x4c\x1d\x84\x70\x6b\x9f\x1e\x8a\x39\x6a\xf0\x47\xc8\x2d\xd6\x5b\x62\xdb\x17\x5e\xc9\xdc\x5a\x33\xe2\xfd\xe4\x6f\x8a\xfa\xbd\x7d\x6e\x06\xd2\xe2\x00\xf8\x12\x67\x25\xed\xfb\xea\xa5\x7f\xd3\xfe\x4e\x4b\x29\x7a\x62\x9e\x25\x56\xf8\x3c\xeb\x2e\x7d\xbf\xa7\xea\xa0\x98\xae\x1c\x4a\xf5\x80\x0e\xaa\x46\xb8\xe4\x24\xbc\x72\x73\xd7\x83\xbf\xdf\xd2\x25\x5b\x31\x5a\xe6\x1c\xa1\x04\x98\xc1\x63\x52\x4b\x92\x9d\xd5\xbf\x71\x2b\x00\xbf\xad\x03\xd0\x01\x33\x58\x50\x7e\x2c\xe7\x28\x28\x88\x66\xdd\x06\xae\xa9\x7c\xab\x64\x21\xc5\x80\xe4\xba\x1c\x9f\x0e\x94\x43\xa3\x5a\x81\x53\x3d\x31\x20\xed\xee\xe3\x64\x92\x9b\x7e\xba\xef\x4c\x67\xba\xa0\x07\x0e\xb6\x16\x21\x5c\x5c\xe8\x8c\xf2\xc5\x94\x95\x38\x59\xd3\xc3\x55\xa9\x34\x5f\x05\xb5\x34\x3e\xdc\x6f\x4d\x61\x1a\x84\x66\xd0\x0d\x28\x6a\x80\x89\xaf\xbc\x05\xc6\x7c\x68\x51\xd4\x8b\x31\xfa\xd3\xa6\xc1\x03\x8d\x7a\xf6\x36\x84\x26\x2c\x0f\x59\x77\xbf\x21\x38\xb2\x63\xe0\xc8\x3e\x05\x8e\xfc\x42\x97\x06\xe0\x1e\x50\xf9\x03\xe3\xcb\xf5\xae\xa4\x6f\x4a\x5d\x9b\x2d\x30\xa4\xd9\x65\xbe\xae\x04\x65\xd7\x5c\xcd\x94\x62\x8e\x05\x56\x9d\xa0\x5f\xba\x11\xcc\x6c\x84\x3f\x2a\x46\x84\xfb\x72\x07\x65\x6c\xbf\xee\x3b\x25\x28\x3c\x4a\xff\x9c\x3d\x02\xc0\xb8\xba\x7f\x39\xc7\x0f\xac\xac\x35\xc5\xf7\x72\xe7\xd0\x29\xbe\xe8\xc1\x68\x2b\x20\x6b\x78\xcc\x52\x70\x78\xce\x4b\xb5\x49\xbe\xaf\xce\xf1\x30\x9d\x3c\xaf\x83\xd6\xf6\x84\xe0\xe1\x66\x43\x57\x47\x9b\xb2\x6a\xf8\x84\x80\xc1\x2c\x00\x8a\x3e\x4b\x23\x39\xe7\x0b\x73\x5d\x3d\xcf\x19\xea\xf3\x83\x7f\x60\xe5\x4c\xdb\x45\xef\xb7\x74\x16\xf8\xeb\xeb\xfa\x1d\xbd\x90\x1a\xbc\xeb\x06\x70\x83\x1f\x83\x1b\xfc\xd3\x70\xc3\x3a\xba\x5f\x5e\x53\x4e\x45\x21\xa9\xdb\xbe\x60\x7f\x61\x2f\x7a\x1b\xb4\x0a\xe9\x7b\xfd\x97\x87\xaf\xd4\xb4\x8a\x3b\xe0\x0a\x28\x94\xe9\xbc\xf2\xb9\x0b\xad\xd3\x35\x45\x78\xa2\x74\x08\xd7\x15\x42\x8a\x7e\x52\x33\x3a\x44\x6a\x0a\x2c\x71\x8d\x30\x9b\x57\x0b\x52\x07\xfe\x16\x7d\x9f\xcc\xba\x8e\xce\x6c\x95\x07\x9a\x2a\xbd\x31\x8c\x97\xf6\x9c\xeb\x2d\x0b\x3c\x9f\x0d\xf4\x3d\x4f\x82\xa2\xa2\xa0\x6c\xca\x8b\x0d\xb5\x5a\x3c\x9d\x15\xcc\x33\x5c\xe0\x31\x14\xb8\x0b\xa5\x76\xb7\xc2\xcc\xec\x6c\xc8\x88\xa0\x51\xe1\x6c\x6a\x7c\x5e\x2c\x9a\xa6\xc1\x37\x45\x6d\x97\xf8\x7c\x7d\x57\xdc\x9b\x53\xd9\x57\x3e\x5d\x09\x83\x9e\x61\x71\xec\xd7\x64\x92\x15\xf0\x35\xe4\x13\x9c\x52\xd3\x23\x74\x9f\x26\x21\x7d\x03\xf4\xcc\x27\x70\x1b\xea\x99\xc2\x7e\x2f\x26\x13\x53\xa3\xba\xd6\x7b\xe0\x56\x1e\xcf\xe3\xcd\xa1\x39\xf4\x2e\x32\xcf\x58\x69\x96\xe8\xfa\xde\xef\x33\x56\xb6\x9e\xa1\xce\x80\x31\xcd\xfb\xb4\x81\x9f\x14\xbc\x7c\xa2\x30\x29\x39\x05\xf7\xb6\x3b\x97\xfe\x5b\xec\x51\x13\x39\xc9\x21\x5b\x50\x38\xae\xdf\x6a\xa4\xd7\xdc\xc7\xdd\xfe\x23\xb6\x3b\x40\xf5\x06\x07\x9f\xf5\x8d\x0d\xc5\x91\xa1\x5d\x16\xc1\x5a\xce\x35\x41\xd2\x1a\x9d\xe9\xb2\xd8\x50\x5d\x95\x09\x2d\xf6\x7b\x39\xa7\x0b\x45\xf8\xd2\xb2\x46\x82\x36\xf8\xab\xde\x47\xa3\xd0\x62\x79\x13\x9d\xd7\x40\x7b\x89\x2b\x25\xa0\x0e\x09\x0a\x42\xc9\xa3\x61\x70\x43\x05\x67\x7d\x32\x61\x1d\x11\xc8\x95\x68\x87\xf4\x0d\x15\xc2\x31\x99\xea\xff\x30\x28\x79\x65\x3e\x05\x51\x90\x77\x57\x9e\xbe\xc6\xfc\xca\xa3\x04\x86\x90\x36\x33\xd6\x99\x66\xa7\xf2\x34\x83\x98\xb3\xcc\x52\x41\x6f\x98\xf2\x97\x01\x73\x97\x81\x36\x46\x31\xe7\x45\xe7\x62\x2d\xf1\x8e\xb0\x79\xb1\xb0\xaa\xc6\x4b\x27\x4e\xfa\x4d\x0a\x73\xa8\x61\x8e\x77\x08\x2f\xc9\x5a\x27\x56\x5d\x91\xf5\xd4\xdc\x1c\xa5\x9a\x87\x70\xbf\x88\xff\x73\xbf\x9f\x2f\xb0\xff\xa9\x55\x81\x4b\x84\x57\x28\xaf\x83\x66\xda\x8f\xd2\x94\x6e\xad\xf1\x0a\x8d\xaa\x79\xb1\x20\x8a\x45\x58\x3a\x16\x61\x09\xb7\x82\x8e\xd3\x28\xc9\x83\x9a\xc4\xac\x6a\x4c\x8a\x91\x7a\x08\x5e\xb8\x04\x41\xa1\x6f\xcb\x3e\xe7\x56\xc0\x36\x38\x7b\xd2\x61\x88\x32\x04\xb7\x31\x40\x74\xa7\x24\xa9\x4f\x82\x68\x8d\xf0\x0e\xe5\x55\x1f\x44\x2b\xbc\xd3\x5a\xf4\xb5\x01\x9b\x02\x6c\xed\x00\x5b\x1b\xc0\x1e\x05\xca\x35\x80\x72\x70\x61\x7d\x1c\x1a\x0c\x33\x92\x69\xf9\x24\xe7\x26\xf4\x02\x8d\x2c\x13\xe0\x12\x7b\xba\x08\xa5\x71\xfb\x5e\xe7\x68\xea\xa6\x92\x33\xb5\x77\xbb\xf5\x1a\x35\x98\xd5\x2d\x42\x63\x0b\x83\x37\xd6\xa3\x4e\xaf\xb5\x55\x23\xdf\x75\xae\x93\xe7\x06\x04\x12\x1e\x34\xba\x66\xb9\x6d\x1d\xbe\x8e\xb9\xb7\x6e\x30\xe5\x64\x02\x5a\x73\x39\x2d\xd6\xeb\xea\xee\x7b\x35\xcb\x40\x51\x68\xbd\xfc\x4c\xc9\x64\x1b\x8f\x75\x55\x55\x6b\x5a\x70\xa0\xd6\x50\x8b\xd9\x16\x68\x26\xe2\xe2\xab\xff\x93\x4b\xb1\xa3\x7b\xb9\x3f\x47\xff\xfd\x2b\x36\x95\xb4\x96\x39\x45\xb3\x8c\xef\xd4\xc8\x46\x89\x72\x4e\x08\x09\xd5\x1e\xb3\xa4\xa1\xe5\xe0\x5c\x75\x81\xe8\x6f\xf5\x74\x72\x0a\x25\xf8\xd9\x41\x48\xb8\xcb\xc3\x2e\x4b\xb1\x7d\x7e\x0d\xde\xb1\xc3\x45\xea\x67\xa7\xee\x66\xb1\x49\x16\xac\x27\xc8\x93\xdf\xc2\xb2\x73\x71\x4a\x7e\x8d\x15\x99\x7b\x59\x48\x9a\xd3\x69\x6d\x32\x4d\x08\x04\x66\x02\xfb\x40\x20\xa4\x83\xd5\x74\x33\x6b\x7c\x08\xa0\x23\x2f\x82\xd7\x33\x53\x11\xfb\xc2\x6c\x74\x12\x62\x91\xb7\x91\xb3\xdf\xbf\x84\xb4\x75\x27\xac\xfe\xbe\xf8\x3e\xa7\x08\xca\x63\xbf\x79\xff\xce\x55\xc8\x86\xfe\xc2\x92\xfe\x55\xd8\x13\xd8\xd2\xe8\x09\x21\xe7\x5f\x9d\xe9\x3f\x9e\x9c\x7f\xa5\x2b\x6d\x16\xc7\x02\xd8\xa2\x0b\xc4\xed\x69\xbf\x51\x57\xd4\xbb\xca\x25\xf9\x1e\xd6\x9c\x53\x84\x2e\xe4\xe0\xf2\x3e\xb1\xb7\x06\x41\x4d\xd7\x43\x73\x4d\x23\x9b\xee\xd8\x40\x4b\x31\x5f\xbf\xe4\xe3\x06\x8d\xe8\xd4\xa0\xe9\x07\x51\xf0\x7a\x55\x89\x0d\xe1\x98\x4e\xd5\x2e\xf9\x27\x0c\xd3\x69\x8a\x40\x40\xb2\x0b\xbd\x40\xdf\xb8\xc0\xd4\xb0\x36\xfe\x59\x8d\xe9\xd4\xff\x12\xd8\x10\xab\x3f\x6a\x0f\x35\x90\x96\xdf\x45\x12\x86\x92\x3c\x80\xa3\x4d\x39\x6c\xf8\x7b\xc6\x94\xc6\x37\xa6\x05\x04\x79\x03\x32\x60\x52\x91\x35\xb0\x99\x66\xe9\xd4\xc6\x41\xfb\xe6\x4b\xe8\xae\xe1\xa0\x1e\xab\xb8\x7e\xec\xf8\x98\xda\x9a\xe1\x61\x3c\x9f\x4c\x93\x6a\x47\xf6\x7f\xa4\xf5\xb6\xe2\xb5\x21\xd9\x2d\x0a\x9e\xd6\x90\x7b\xff\x29\x8d\x31\x76\x54\x79\x04\x04\xfe\x56\x57\xfc\x49\xb1\x65\x71\xd5\x7e\xdd\x96\xf1\xd5\x9a\x2e\x65\x25\xda\x75\xfc\xe3\xcf\x53\x55\xfe\xbb\x75\xfc\x15\x1b\xf2\x05\xc0\xc9\x88\xab\xcc\xee\x60\xe9\xaf\xf3\x97\xd5\x12\x62\x25\xff\x48\xd7\x5b\x2a\x66\xad\x54\x19\xb6\x88\x3f\x21\x66\x4f\x14\xa6\xbd\x5b\xd9\x5c\xef\x28\x4c\x85\x70\x19\x6e\x10\x04\x19\xea\x3e\x6d\x63\xa7\xf9\x4b\xa6\x8d\x0f\x1d\x0b\xc3\xb4\x03\x41\x1a\x79\xe4\x1c\x8f\x83\x87\x61\x0c\xb1\x7e\x31\x17\x8b\x91\x9c\x8b\xc5\x81\x59\x71\xd4\xd8\xd9\x37\x89\x49\x39\xb6\xca\x4f\x2c\xd0\xbc\x18\x7d\x8b\x6f\x96\x50\xbc\xf8\x97\x5a\x03\x33\x3c\x9d\x02\x8d\x4c\xf8\x5e\xad\xa4\x0d\xc3\xe4\x35\xbe\x13\xc2\xac\xe6\x85\x86\xec\x58\xdb\x97\x26\xb1\x8f\x8e\x93\x82\xd4\x6c\xb1\xa5\xfd\xb5\xa8\x36\x3f\x14\xf7\xeb\xaa\x00\x05\x9a\x51\x9d\xe1\xd6\x10\xe1\x4c\x13\xf7\x07\x5b\xe5\xf2\xb8\x7e\xb3\x9e\x06\x19\x3e\x09\x34\x39\x97\x4a\x72\xf3\x39\xde\x53\x7c\xd3\x4d\x32\x19\x7c\xc7\x49\xb2\xad\x14\x0a\x99\x47\x81\x29\x9a\x6a\x43\xb6\x82\xb6\x99\xcc\xac\x3f\x80\xa0\xe7\xcc\xe8\x6a\x3e\xb0\x61\xa0\xf0\xeb\xd2\xa9\xb4\xd5\x6c\x3c\xdc\x2b\xe4\xb1\xb0\xef\xfe\x7d\x47\x85\x4b\x43\xd4\xee\x35\x76\xe3\x05\x65\xbb\x11\x03\xc0\xae\xe7\xa2\xa1\x3d\x4f\xdd\x60\x23\x19\x79\x3b\x71\xef\xba\x31\x0f\x13\xa3\x4c\x43\x4f\x0a\x0a\x62\xba\xd7\x16\xe7\x6d\xd4\x60\x5a\xff\xda\x32\xd6\xb5\x34\x6e\xde\x3b\x31\xe8\x5c\x97\x3a\xe2\xe0\x33\x1f\x3f\xb6\x52\xb6\x59\x41\x8f\x18\x72\x0c\xf5\x6a\xa5\x72\x39\x74\xa6\x1c\xa5\xc2\xff\x34\x02\x96\x9c\x56\x48\xc8\x3a\x1b\x1c\x79\x35\x1c\xbb\xc7\x2d\x37\x14\x3a\xa4\x8d\xa1\xd8\x29\x65\x45\x4a\xcf\x4a\x7b\xf4\xac\xa1\xf3\x67\x6b\xc4\x79\xb5\x70\xf5\x53\x3a\x6f\x46\x80\x13\xc0\x7b\xb6\xd7\x97\xeb\x4a\xe0\xa1\x0a\x46\xf1\x5f\x3d\x8c\xc0\x10\xb9\xd2\x82\x2b\x6a\x70\x4f\x83\x04\x79\xcd\xcf\xb0\x9c\xd6\x8c\x5f\xef\xd6\x85\x60\xff\x45\x51\x9e\x9f\x61\xee\xc9\x8d\xab\xfe\x8f\x74\x6e\xfa\xad\xeb\x4c\x75\xed\xde\xf6\xf5\xbc\x5d\xef\x84\x56\x56\xe6\x34\x24\x0c\xad\xc5\xc5\xe7\xd3\x18\xe8\x4c\xd3\x9f\xd4\xec\x5e\xd2\xe5\xba\x10\xb4\x7c\x5b\x6c\xb7\xc0\x42\x63\x19\xc7\xcf\x27\x03\xe3\x0e\xf7\x11\x7d\x65\x25\xee\x07\x56\x6a\xf3\x96\xd9\x8d\x37\xa5\xae\xa3\x0c\x3a\x88\xc8\x21\xc1\x9a\x24\x11\xf6\x93\x89\x3e\x0d\x7c\xe1\xa0\x59\x34\x5e\xd4\xb2\x15\xbe\x87\x25\x8a\xd3\x3a\x01\x65\x74\x9c\xbc\x6a\x21\x22\x08\x68\x7d\x89\x68\xac\xff\x83\x1b\xb9\x5f\x3a\x31\x6a\xd0\xb2\xa8\x6f\xa8\xd0\x7a\xd0\x03\xde\x13\xc7\x74\x30\x28\x60\x1f\x4b\xea\x65\x70\xe9\xf7\xa0\x5c\x98\x39\xcb\x2e\x5f\x36\xc1\xf8\x29\x08\xc4\x6a\x33\xae\x15\x3d\xae\x60\xe2\xb2\xe0\x4e\x9f\xae\x04\xf3\x08\x2f\x23\x82\xbe\xdf\x3f\x34\x23\x1b\x86\xad\x1e\xe7\xc2\x28\xd6\x8c\x9f\x84\xb4\x3b\xa5\xee\x6f\x86\x02\x2b\x56\x85\xb9\x55\x2c\x69\x84\x2b\x92\x26\x41\x67\x0e\x2c\x4c\x3a\xd2\xa2\xc7\xd4\xd9\xb6\xf1\x85\xd7\x4e\xb1\x20\x55\xf3\xc9\xce\x24\x31\x3c\x9c\x75\x1b\xd2\x74\x74\xdc\x3c\x48\x35\x99\x54\xc6\xfd\x6a\x32\x39\xb1\x7f\x6a\x5d\xbc\x2e\xe0\xe3\x32\x47\x57\xfb\x3d\x53\xc0\x8d\x1d\x04\x5b\xbf\x1d\x88\x93\xf0\xe1\x11\x7c\x78\x1b\x3e\x11\x7d\xe5\xa1\x72\x3c\x06\xd7\x48\xfb\xa6\xd8\x02\x3f\x15\xaa\xc9\x83\x3f\xe6\x7d\x98\x57\x85\x98\xc7\xca\x59\x35\x65\x65\x33\x6a\x13\xfd\x62\x61\x94\x98\x75\xd3\x34\x9f\xe8\xa6\xa0\xcb\x9b\xbd\x6f\x7d\xaa\xdd\x28\x90\xb7\x42\x3a\x6b\x7f\x7c\x41\x3d\x02\xc8\xd5\x30\x90\x2b\x0d\xe4\x7e\x7b\x74\x35\x04\x7d\x6b\xd1\x68\xc1\xde\x32\x1e\x05\x61\xc3\x79\x41\x1d\x56\xd1\x14\x56\xa9\xbb\xb3\x0e\x78\x17\xcf\xb6\xe8\x30\x88\x22\x11\x06\xc1\x74\x18\xc4\xe0\x2e\xaf\x83\x5d\x1e\xd5\xf3\xdd\xc2\xa0\xc6\x52\x6d\xf9\x5a\x6d\x79\xd3\xbd\xe7\xc3\x2d\x37\x2a\xdc\x8a\xb0\x40\x74\xaf\x8e\x14\xdd\x63\xb1\x3d\xdd\x30\x29\x9f\x27\x9e\x05\x9e\x7c\x07\x7d\xfd\x12\xe2\xbd\x62\x95\xbe\x80\x80\x5f\x11\xd9\x11\xf0\xb7\x82\x6d\x0a\x71\xff\x27\xa8\xfa\x55\x66\x78\x43\xc5\x35\x2d\xcd\x10\x8c\xd6\xb3\xb9\xb1\xeb\x2d\x70\xeb\x42\x1c\x62\x12\x7b\xd5\x56\x5e\x5b\xaf\x58\x45\xd7\x59\xe0\xc3\xde\x66\x19\x23\xfe\x6f\x4e\x17\x9e\x89\x6c\x51\x7c\x5c\x10\x6e\xa3\xb5\x21\x8b\x5a\x15\x9a\x31\x73\xf5\x08\x17\xee\x22\x00\x06\x50\x06\x0c\x52\x8f\x10\xa6\x37\xc3\x44\xe4\x30\x13\x7c\xb3\x62\xdc\x28\x07\xb3\x59\xc8\x32\xb8\xce\x5e\xbb\x06\xb6\xdb\x9e\xdb\x17\xba\xfb\xbb\x17\xda\x7a\xfa\x4b\x88\x75\x43\x1d\xaa\xf9\x3d\x5f\xaf\x07\x26\x07\xbe\xb7\xc7\x75\xf4\xad\x8f\x1b\xea\xed\x2e\x70\xc3\x3d\xae\xd3\x3f\xda\x90\xa0\xde\x2e\x4d\x8b\x63\x3b\x3c\xd0\xdb\xb1\x5d\xc1\x56\x0c\x6f\xc2\xe1\x4e\xb4\x13\xee\xe0\x86\xbe\x08\x9a\x1c\xd3\x65\x98\xc3\xa8\xa7\xcb\x97\x41\x93\x63\xba\x0c\x93\x63\xf6\x74\xf9\x53\xd0\x64\xb8\xcb\x26\x38\x49\x5d\xe4\xef\x2b\x22\xe8\x3e\x79\xcf\xf8\xf5\x9a\x1e\x18\xe2\x68\x2d\xc7\xe7\x18\xa2\x75\x48\x0e\x76\x0f\x37\xe1\xa3\x7a\xef\x9c\x99\x2f\xb1\x84\xd6\x29\xfa\x02\xcb\xf8\x82\xdd\x47\x07\xee\x33\xf7\x9d\x3a\x80\x87\x37\xa0\xb8\x3d\x1e\xfc\xa9\xf3\xf8\x79\x47\x48\x1d\xcf\xcf\x3b\x42\xd8\xf8\x73\xa3\x67\xdc\x3c\x79\xed\xa6\xf5\x9f\xf6\x13\xdf\x12\x43\xb5\xf2\x34\x26\xfc\xc2\x8e\xcf\x8f\xd1\xd4\x46\x55\x5f\x0c\x43\x0a\x46\x26\xab\x93\x9f\xcd\x17\x8d\xd5\xec\x1b\xf5\x83\x2e\x5b\xac\x5d\x9d\xd9\x2a\xaf\x95\x40\xa5\x73\x36\xd7\xc8\xf6\xb5\x23\x31\x84\x21\x92\x14\xaf\xc9\x4e\x7b\x85\x2c\xc9\xce\x7b\x85\x68\x4f\x11\xb2\xc6\x4b\xe8\xc9\x59\x03\x4c\x39\x5b\xa7\x74\x5c\x05\x8c\xbb\x70\x8c\x7b\x49\xce\xf0\x0d\x71\x69\xd1\xca\x67\x37\x4f\x4b\xcb\xbc\x6f\xf1\x86\x88\x79\xb9\xc0\xb7\xdd\xe9\x6c\x10\xbe\x27\xb7\x7a\x3a\xd7\xe4\x36\x72\x52\xb9\x46\xf9\x36\xf0\x5b\x89\xfc\x4e\xb6\xf8\x1a\x8d\x56\xf3\x72\x41\xee\x1b\x33\xf3\x95\x55\x4a\x16\xfd\x6a\x2b\xcd\x64\x82\xf0\x18\x7a\x99\x1d\xa5\x7a\x42\xb8\x4f\xcd\x6b\x8a\x21\xa1\xa3\x95\x58\x26\xdf\xf6\x01\xc5\x55\x98\x68\xfc\x4b\x68\xab\xf0\x31\x6a\xaa\x50\x4f\xe5\x26\x99\x66\xdd\xe7\x9e\x6b\x87\x53\x9b\x79\xd9\x20\x43\x36\xb1\x03\x28\x2b\x97\x15\x85\xd4\xa0\x08\x8c\x0f\x47\x99\x08\x4c\x74\x3e\x66\x81\x02\x79\xd0\x2c\x20\x74\xdd\xa0\x41\x93\x00\x0e\x24\x03\xb1\x98\x4c\x72\x06\x76\x00\x93\x04\x1a\xb3\x43\xca\xff\x94\x43\x4e\xcb\x8c\x34\x60\x1d\x90\xa0\xaf\xd2\x29\xbf\xa6\xac\x24\x2d\xd0\x48\xc8\xdd\x35\x60\x87\xa2\x2d\xe5\xdb\x64\x72\x92\x9f\x61\x76\xb4\xbf\x00\xd2\xee\x8b\xf2\x08\x73\x9d\xd1\x53\x2b\x89\xc7\xbb\xd8\xb7\xe7\x6b\xd1\xd6\x63\x4a\x10\x0b\x32\x00\xc1\x90\x98\xa6\xb4\xed\x1a\x59\x3f\xdd\xce\x70\xac\x59\x41\x97\x9c\xfa\x05\xd6\x85\x79\xb1\xb0\xb1\x53\xd0\xd7\x0e\x1e\x8d\x3a\x2e\xe9\xba\x2b\x54\x13\x96\x72\x58\xbb\x70\x36\x87\x1e\xf0\xe5\x4c\x27\x12\xde\xe9\xd0\x51\x8a\x85\xb5\x9b\x16\xf5\xcd\x4c\xe2\x76\x61\xeb\x19\x6b\xd0\x2c\x6d\xc8\xb0\x3d\x79\x9b\x79\xe8\xcc\xca\x8c\x4f\xea\x49\x84\xe0\x3b\x84\xd4\x7d\x13\x5c\x03\x3b\x77\x0d\x24\x17\xe4\x32\x6e\xac\xc9\x19\xdc\x39\xe6\x92\x58\x3f\x5b\x3e\x5d\xdb\x4b\x62\x45\x76\xf3\xf5\x62\x54\xcf\xd7\x81\xd1\xe5\x00\x00\x56\x8f\x00\x80\x8e\xa5\xb1\x33\xd1\xd7\xd5\x2e\x7d\x5d\x91\xdd\xbc\x54\x33\x29\xfb\xcc\x3f\x66\xf8\x2d\x6a\x2a\xaf\x3d\xd2\x39\xbe\x2d\xf2\x7c\xc7\xf8\x47\x87\x34\x80\x26\xd2\x96\x5e\x08\xac\x51\xf0\x64\xbe\x31\x58\x73\x1b\x3c\x79\x9a\x57\xa4\xda\xef\x1f\x1a\x64\xea\x34\x3c\x98\xe2\xfb\xb3\xdb\xa6\xa9\xac\xc5\xb2\xb2\x36\xca\x47\x99\x8f\x44\x8f\xb1\x28\x52\x66\x1c\x38\x65\x86\x1c\x8f\x7a\xf5\x8b\x87\x0f\x1d\x3d\x21\x24\xf7\x54\xfa\x98\xe3\x86\x42\xe8\x69\x8a\x2d\x2d\xc5\xc6\x36\x43\x99\x4b\xe1\x3f\x78\x0f\xa7\x17\x85\x43\xcf\x5c\x7d\x89\x59\xaf\x74\xb0\x15\x38\x77\xe8\x31\xe3\x63\x86\x04\x49\x46\x07\x55\x98\x46\x57\x0b\x57\x13\x1d\xf6\xc4\xaa\x90\x4f\x4e\xdd\xbe\xb5\x2a\x97\x94\xfa\xa0\x83\x56\xb7\x9b\x38\x16\x45\x61\x8b\x29\x8d\xa8\x0d\xbf\x73\x1e\x00\x8e\x2f\x90\x0e\x24\xf2\x6b\xe9\x9a\x84\x5c\x12\x88\x2e\x88\xac\x53\xfd\x64\x22\x74\x3e\xa0\x5c\x12\xf5\x17\xd2\xb1\x51\xb9\x24\x26\xce\xc8\xbb\x6a\x1a\x07\x4e\xa9\xcb\x5a\xea\x54\x4c\x91\x15\x23\x61\x93\x1a\x1e\xfe\x44\xee\xf7\x27\x0a\x2b\xf6\x7b\xa8\xbf\xa3\xfe\x0c\xc3\x4f\x2e\x37\xbb\x5a\x7e\x7a\xf7\x6a\xaa\x12\x56\x77\x62\xb2\x10\x46\xbd\xa7\xd5\xff\xbd\xd1\xa2\x10\x8c\x54\x52\x49\xc5\x86\xf1\xe8\xd4\x81\xa1\x52\x44\x71\x49\x51\xa1\x8c\x78\x19\x50\x35\x2f\x61\x02\x82\x2a\x73\xd9\xa6\xe0\xf7\x1f\x2a\x45\xbc\x15\x55\xe7\xfb\xbd\x79\x62\xe9\x3c\xef\x31\x02\xa6\xee\x54\x45\xc9\x26\x13\x39\x75\x91\x5d\xde\xa6\xc1\x4a\xa8\x41\xc1\x87\xf9\x40\xc2\x5c\xba\x8e\x7e\xfe\x4d\x82\x90\x35\xed\x5a\x06\xc1\x90\x22\x6d\xda\xae\x21\x1a\x03\x5d\xa4\xee\xdd\x8b\xa0\xdf\x30\xe8\x57\x09\x76\xb3\xd4\xf5\x17\xb4\x0f\xcd\x39\xcc\x12\x5f\xf7\xf6\x0d\x97\x15\x5c\x41\x5d\xf3\x65\x94\x37\xc5\xd5\x94\x77\x96\x4b\xcc\x11\x3a\xd2\x10\xda\x6f\xfb\x0c\x4d\xa4\xf8\x1f\x66\xe6\x4c\x91\xac\x47\x18\x3f\xbf\x8c\xc5\x33\xb6\x77\x62\xc5\xad\x82\x59\xe3\x8b\x1a\xcd\xfa\x4c\x96\x38\x62\x9f\x18\xba\x90\xf3\x4a\x87\x42\xcf\xe0\x2f\xf6\x4b\x02\xab\xff\x51\x76\x4a\x1f\x95\xdc\x36\x58\xfe\x93\x8c\x91\x58\xc3\x2e\x32\xd4\xb6\x40\x14\x6a\x9c\x9c\x00\x01\x0c\x61\x1b\x42\x6c\x95\x8b\x80\xb7\x10\xba\xe4\x55\x90\x59\x50\xda\x62\xbc\x63\x9b\xe7\x1c\x1e\x62\xee\x85\x1d\x9d\xae\x38\x09\xfc\x56\xd0\xd9\x64\xe2\x45\x42\x73\x01\xaa\x3b\x73\xaa\x93\xdc\xc3\x0d\x0e\xb2\x95\xfe\x0d\x3c\x36\xa4\x06\xbe\x41\xb9\x6d\xe4\x92\x22\x0f\xa9\x1a\x40\xdb\x23\x0f\xf9\xce\x49\x45\xe8\x0e\xf9\xce\x49\x9d\xc6\xd5\x43\x68\x2e\xd5\x05\x2f\xc0\x47\x6a\x2e\x1d\x13\x21\x4c\x9a\x2b\x33\x6c\x1f\xff\xd7\x1e\xb9\xc5\xfc\xfd\xc2\xc1\x21\x31\xf4\x11\x4e\x35\xf4\x58\xe7\x19\xd7\x50\xb1\xf5\x3d\x0d\x42\xc2\x3a\xc4\x55\xbc\xbb\xe3\x54\xd7\x19\x40\xd3\x75\x55\x7d\xdc\x6d\xf3\xcc\x7d\x3b\xcb\x4e\x03\xa9\x3e\x76\x21\x3f\xc6\x0e\x2d\x68\x2d\x3f\xb7\xfb\xf8\x97\x30\x4f\xe3\xea\x97\x1a\xa8\x7b\x3f\x48\x05\x5f\x64\xf8\xc1\x97\x78\x9a\x9d\x9c\xf5\x24\x56\xaa\x92\x91\x1b\x4d\x9f\x39\xbc\x48\xf8\xbb\x6b\x34\xe9\xa5\x43\xad\x5c\xd2\x29\xe4\x47\xa7\x99\xfa\x26\x0b\xd5\xc6\x40\x02\x06\x03\x5a\xb1\x95\x44\xe7\x8b\x58\x69\x5c\x90\xc8\x73\x19\xd7\xa4\xeb\xab\x1c\xa7\x7b\xdf\x14\x1f\xa9\x51\xef\xf6\x64\xb3\xd3\xc2\xd2\x8e\xb0\x40\xf7\x1d\x89\xea\x90\x8a\x56\xcd\x92\xe3\x02\xd7\x3d\x1a\xe7\xa7\x79\xa5\xdd\x53\xc1\xa3\x79\x8d\xf0\x52\x0b\x2f\x55\x5a\xe3\x2b\xf0\x12\x08\x4b\x15\x02\xa6\x33\x6a\x52\x5b\x6f\x5c\x56\x70\x4d\x38\x94\x66\xcb\xcf\x70\xf5\x08\x2d\x19\x64\xc5\xd0\x37\x59\xa8\x55\x3f\xa0\x2b\x1b\xb5\xdc\xcb\x77\x08\xb8\xa2\x36\xf4\x77\x7a\x4b\x36\xbe\x99\x63\x8f\x8b\x40\x53\x5e\xdb\x8c\x1b\x47\x98\x12\x2a\xec\x72\xc2\xf6\x99\x12\x76\xbd\xa6\x84\xdd\x64\x92\xeb\x8a\x8f\x64\xe7\x1d\x7e\xd6\x51\x3a\x41\x81\xf0\x92\x9c\x41\x98\xae\x51\xa0\x2c\x9f\xad\x9e\x2e\xad\x02\xa5\x24\xeb\xf9\x72\x81\x6f\x48\x89\xb7\xe4\xe4\x7c\x94\x5d\x2a\x6e\xba\x9c\x2e\x6f\x0a\xf1\x5c\xe6\x67\x0a\x10\x5b\x72\x72\xa6\x5a\x4c\xeb\xdd\x55\x2d\x45\x7e\x6e\x34\x9d\x9b\x61\xd8\xde\x98\xe4\xf1\x11\x64\x37\xc8\xea\x4f\x4e\xb6\x86\xc9\x60\xf5\x0f\x5a\xe6\x30\x9c\xd2\x06\x4b\x84\xef\xc1\x0a\x31\x32\xf9\xdf\x4e\x08\xb9\x47\x0a\x1b\x6e\xf7\xfb\xd8\xcf\xfa\xde\xf4\x77\x8d\xaf\xf0\x65\xdb\x37\xda\x78\x5b\xe3\x0d\xbe\xc7\x25\xc2\x77\xe4\x52\x63\xf6\x2b\x72\x19\x19\x2f\x5e\xa1\xfc\x9a\xd4\x69\x54\xbe\xc6\xaf\x60\x1d\x05\xba\x4b\x57\xc2\xd5\x57\xc6\xed\x64\x02\xfa\x5c\xaf\x62\x85\x72\x0e\x8a\x97\x1a\xdd\x4e\x26\x27\x7c\x32\x39\xa9\x61\xf4\xfd\x5e\x5e\xe8\xbf\x08\x9d\xd5\xad\x08\x5e\x5d\x8b\xd9\xea\xf7\x6e\x91\x69\x78\xe7\x1e\xdd\xa1\xfc\xaa\x6f\xaa\x57\xf8\xce\xd8\x7f\xd4\x9c\xde\xe3\x77\x6d\x78\xa4\xce\xfd\x3d\x2e\xb1\x04\x06\x05\xe1\x9f\xc9\x3b\x0d\xa0\xe7\xe4\x9d\x07\x90\x99\xc3\xcf\xf8\xf9\x64\x92\xbf\xef\x1b\xfc\x3d\x7e\x8e\x1a\x97\x9f\xb8\x6e\x70\xb4\xad\x3d\xd1\x0e\xbd\xde\xd0\x12\x41\x6a\x02\x9f\x0c\xe6\x60\x34\x46\x92\xa2\xfa\xba\xa4\x90\xe2\x3d\x4a\x20\xd4\x87\xb6\x3c\x85\xb6\x0c\xf9\xba\x40\x1b\xff\x10\x77\x69\x44\xe8\xbd\x38\x6a\x13\x69\x50\xdb\x0c\xa0\x11\x66\x24\x24\x24\x15\xe4\x5c\xc3\x35\x61\x36\x32\x9c\x05\x14\x59\x04\x14\x19\x22\xbf\x41\x6b\xd3\x13\xfb\x2d\xf1\x0e\x14\x6d\x4d\x10\x94\xf2\xe5\xfc\xd8\x13\x0a\x8a\x96\x1d\x76\xc0\x4b\xf9\x38\x21\x9d\xce\x07\xdd\x0b\xc3\x4c\x2f\x26\x66\x22\x16\xe1\x1f\xe3\x6c\x3f\xee\x4b\x6c\x71\x8c\x38\xd3\x95\xeb\x70\x94\x7a\xaa\x2d\x2a\x72\x6c\x6a\x0f\x46\x09\x96\x3a\x5e\xc1\x91\x9c\x5a\x29\x39\x95\x39\x39\x95\xd9\xc4\x4b\xed\x19\x87\xc8\xf9\x28\xc3\x4f\x77\x05\x62\x1a\x2a\xf2\xa1\xf0\x68\x5b\x95\x8f\x0b\x52\xa5\x84\x65\x5c\x0f\xaf\xbf\x23\x53\x28\xf2\x1b\x88\x14\x6c\x5e\x2f\xbc\x58\x76\xe2\xf4\x92\x47\xdd\xf8\xea\x63\xcb\x44\x81\x45\x57\x1b\xc2\x76\x4d\x73\x34\x7e\x36\xd6\xb1\xb9\x08\x38\xfe\x5a\x11\xee\x03\x1c\xbf\x13\x1d\x8e\x71\x3f\xed\xe5\xca\xbf\x88\xbb\xa8\x20\xd2\x47\x32\x07\xcb\x12\xbd\x82\x4c\x4b\xb6\x08\x17\x24\xe8\xdf\x77\x0c\xa4\x91\xb6\x44\xd3\x11\x30\x5a\x8b\x71\xd1\xf1\xe1\xe9\x33\xb1\xe7\xfb\xbd\x0e\x46\xd7\xd1\xde\x1d\xb5\x34\x85\xd4\x08\xf7\x9b\xab\x6a\x1d\x3d\x74\x39\x86\x73\x34\xcb\xb2\x53\xda\xb8\x31\x58\x50\x28\xdf\x7b\x19\x24\x3a\x96\xc4\x97\xc0\x31\xa9\x01\x5c\x82\x05\x87\x7e\x74\xbf\xb7\xc1\xff\xfb\x7d\x2e\x89\x1a\x0b\x61\xd9\x24\x03\xfe\xfb\x23\x3c\x24\x91\xae\x32\xa3\x4b\xcd\x3a\xbd\x29\xea\x77\x77\xdc\xee\xee\x74\x59\xac\xd7\xb9\x54\xc7\x04\x76\x29\x43\x17\xce\xd9\x77\x26\x8d\xbc\x93\xed\xb8\xde\xb7\xd2\xcf\xf1\x3d\x80\xe7\x42\xff\x97\x20\x74\xd9\xe5\x65\x76\x4a\x4f\xdf\x16\xf2\x66\xba\x5a\x57\x95\xc8\xe1\x4f\x51\xf0\xb2\xda\xe4\xe8\x7f\xbe\x2c\x24\x9d\xf2\xea\x2e\x47\xe8\x54\xb5\x6d\xfc\x86\xd5\x41\x2f\x1d\x08\xfa\xfc\x0d\xdf\xe8\xa4\x06\x3b\xb0\x48\xfe\x85\x16\x1f\xdf\x16\x5b\x93\x93\xa4\x13\xba\x98\x5a\xc1\x1d\xe3\x65\x75\x07\x66\xda\xc4\xdb\xd7\x45\x2d\xbf\xad\x2a\x69\xac\xfa\x0f\xd7\x54\xfe\x08\x73\xff\xb3\x42\xff\x3a\x4e\x8e\x2b\xee\xed\x6e\xd8\xcf\xa6\x06\x71\xf3\x6c\x29\xee\xb7\xb2\xca\x90\x59\xfa\x6b\xb6\x5e\x43\x4a\x5b\x8a\x9a\x65\x21\x97\x37\x39\x94\xf2\x11\xd5\xdd\x58\xad\x03\xb4\x49\xf9\xaf\x40\xaf\x33\x0e\x1d\x42\x15\xd7\xa1\x3a\xbf\xaa\x2a\x39\x36\x9d\xd7\xe3\xfb\x6a\x37\x96\xd5\xb8\x28\xcb\xb1\xbc\xa1\x63\x3b\xd8\x78\x5b\x2c\x3f\x16\xd7\x54\xbd\xcb\x56\xe6\xab\x97\x74\x4b\x79\x49\xf9\x92\xd1\x3a\x53\xdd\xdd\x57\x3b\x61\x5b\x4e\xff\x56\x57\xfc\x57\x8a\xed\x02\x96\x25\x20\x91\x1a\x4c\x53\xdd\xb3\xf5\x71\x88\x1e\xf6\x7c\xb1\xa9\x5f\xc0\xeb\xc9\x24\xb3\xc0\xf2\xfb\xd8\x6a\x33\x6d\x81\xb7\x35\x8e\x6d\x36\x6a\x03\x2a\xf3\x64\x64\x36\x7e\x51\x70\x5e\xc9\xf1\x8a\xf1\x72\x5c\x8c\x6f\x8b\x35\x2b\xc7\x77\xc5\xbd\x02\x82\x4d\x92\x37\x5e\x57\xcb\x62\x3d\xf6\xb5\x67\xeb\x0c\x35\xb9\x17\x78\x96\x78\x85\x4b\x7c\x83\xb7\x64\xbe\xc0\x1b\x72\xf6\x74\xf3\xec\xeb\xdf\xfe\xee\xe9\xe9\xe9\x06\x6d\xe7\x9b\x05\xc9\x37\xa7\x5f\xff\xf6\x77\xc8\x13\x82\xf3\xdf\x21\x2f\xcb\x78\x14\xbe\xb5\x98\xa7\x79\x0c\x92\x53\xc0\xd2\x9f\x18\x97\xbf\xd7\xfc\xdb\xf9\xef\x10\x5e\xb7\x97\xad\x58\x1e\x2b\x95\xf3\xf9\xef\x16\xe4\xfc\xb7\x13\xf5\xff\xfe\x77\xbf\xc1\x7c\xfe\xfb\x05\xf9\xdd\xaf\x27\xea\xff\xfd\xf9\xd7\xbf\xc7\xf3\x5c\x90\x2d\x9a\xe7\x92\x70\x34\x3f\x5b\x2c\xb0\x98\xcb\xf9\xb9\xf9\xff\x6b\xf3\xff\xaf\x17\x0b\x9c\x3d\xc9\xe0\xef\xdf\x98\x67\xbf\x0d\x9e\xfd\xce\x3c\xfb\x7f\x82\x67\xbf\x37\xcf\xfe\x57\xf0\xec\xdc\x0d\x60\x47\x38\xb7\x43\x9c\xff\xda\xfe\x61\x07\x38\xff\xed\x62\xb1\x98\xfe\xad\x62\x3c\xcf\x32\xe4\xc9\xd6\xbd\x89\x9b\xad\x73\x3a\x5d\xb3\xd2\x79\xcc\xc0\x2f\x93\x9a\x41\xeb\x8e\xb1\xd0\x86\x25\x2b\x03\xe4\x02\x5d\x84\x77\xc6\x6c\xcd\xca\x27\xd9\x69\x95\x4b\x74\x9a\x3d\xc9\x4e\xc5\xec\xd6\x14\x28\xbe\x8e\xc8\x81\x1b\xfa\xca\x13\xe8\x6b\x57\x9b\x2d\x2c\x6e\x42\x08\x01\x9f\x30\xf8\xfc\x0e\x5f\x43\xd2\x22\x75\x45\x46\x84\xf7\x32\x47\x0f\x30\xcc\x5d\x4f\x49\x6f\x9b\x29\x7b\x59\x2c\x6f\x28\x79\x58\xb3\xb2\x9e\x25\xf3\xe5\x43\xa6\xcc\xc4\x1b\xe3\x9e\xe5\xd2\x3a\xc6\x85\xad\xb5\xf3\x75\xfc\x6c\x55\x89\x6b\x2a\xe3\x67\xba\x2a\x6b\xf4\x08\x22\x34\xe2\x47\x6e\x8c\xd5\x7e\x7f\x1f\x8f\x70\xb3\xdf\x5f\xc6\xfd\x2f\xfd\x13\xdd\x7b\xe9\x1f\xe8\xbe\x2f\x1b\xbb\x85\x9d\xda\xd0\x72\x7a\x79\x69\x8b\xab\xd3\xb7\xd0\x3a\x22\xa0\x41\x2f\x74\xbf\xbf\x6c\xb0\x04\xa3\x82\xad\x7e\xd8\xad\x25\x6d\x7d\xb0\x5a\x9b\x77\x72\x8e\x70\x82\xe9\xde\x81\x95\x9c\x22\xa8\x0b\x65\x91\xce\x30\x2b\xdc\x20\x23\x66\xc4\xe8\x07\xc4\x45\xb0\x87\xea\x5d\x3d\x17\x8b\x99\xe1\x70\x62\x2b\x88\xcd\x55\x69\x2e\xca\xca\x25\x22\xa8\x6d\x15\x46\xd0\x3c\x81\x41\x7a\xbf\x2f\x26\x93\xda\x06\x36\xbd\xca\xc3\x41\x00\x1d\x70\x81\x02\x2d\x85\x80\xc4\xb2\x6b\x35\xfe\x5c\x2c\xac\x63\x01\x21\x84\xe9\x82\xc5\x3a\x93\x03\x34\x61\xa5\xe2\x44\x83\x16\x7a\x90\x65\x2b\x85\xa8\xf6\x21\x00\xbf\xfd\xd6\x40\x4b\xf5\x1f\xea\x10\xd7\xbf\x56\xbb\xb1\x36\x18\x8d\x15\x61\xd5\x15\x29\xe0\xa2\x79\xb6\x66\xe5\x37\xe3\x6a\x35\x2e\xc6\xed\x3d\xca\x74\xa2\x09\x12\xaf\x60\xb9\x30\x85\x3e\xa4\xab\x17\xa4\x97\x92\x33\xf2\x3e\xaf\x71\x81\x97\xae\x08\xa4\x07\x3b\x53\xff\x2d\x08\xc3\xba\x93\xe0\xe7\x65\xb1\x5e\xfb\x31\x6b\x5b\x51\x49\x47\x2e\xaa\xad\xd1\x0e\x76\x00\x1b\xf5\xf7\x82\x30\xaf\x61\x63\x8d\x42\xb0\x2d\xa5\x1f\x07\x10\xac\x25\x65\x26\xb0\x31\xa7\xda\xcf\x57\x82\x7e\x5f\x84\xae\xe1\xbf\xa0\xc7\x33\xe8\x51\x93\x04\xff\xe6\x75\x25\xbe\xa7\x77\xed\x2a\x72\xad\x78\xdd\xd4\x46\x63\x41\xde\x03\x26\xea\xc4\x4b\xc6\x36\x87\xa1\xa4\x71\x0a\x07\xad\xed\x2e\x9a\x6a\x78\x12\xf4\x1e\x08\xcc\x61\x4b\xa4\xfe\x33\xb9\x1d\x02\x0c\x32\x72\x1a\x46\x8c\xf4\x9e\xe5\xc0\xdf\x71\x00\x9a\x39\xd5\x69\xc2\x58\x89\x0b\xc2\xb5\xaf\x24\xae\x93\x0b\x31\xb9\xdf\xf0\x8e\xf4\xeb\x86\xd5\xf7\x4a\x84\x34\xee\x70\xe0\x88\x55\x06\x47\xa3\x98\x4c\x8a\x13\xb0\x61\x9a\x07\xdc\x1f\x5f\x8a\x8d\xc6\x57\xa1\x18\x5f\xc4\xb7\xc9\x09\x94\x33\x59\x37\xfa\x18\x0a\xe3\xa7\x59\xe5\x36\x21\x5d\x3c\x84\x36\x93\x2e\x09\x9c\x68\x00\xb0\xf9\xef\x84\x90\x9d\xf5\x93\x63\x06\xf4\x9d\x81\x56\x93\xc9\xaa\x49\x76\xa8\x0f\x76\xab\x4f\xe2\xfa\x2c\x61\x15\x4b\x58\x40\xd1\xed\xb7\x9c\x4c\x4a\x73\x62\x4e\xce\x9b\x14\x84\xb1\xc4\x45\xe7\xd0\xc2\xe2\x76\x41\xcd\x7d\x20\xeb\xed\x8d\xac\x73\xf5\xfd\x4e\xf5\x80\xdc\x96\xf6\xd8\x50\x15\x23\x00\x3b\x83\xa5\x03\xa4\xd5\xb6\xeb\xb4\xdf\x1e\xdb\x3d\x6d\x86\xec\x1b\x50\x0d\x57\x9d\xfc\x5c\x18\xd5\xa4\xbd\xe1\x10\x66\x27\x84\xe4\x05\x8c\x8c\xdc\x06\x17\x43\xf4\xd9\xee\xde\x5a\x43\x8c\x08\x47\x6d\x5c\x52\x5f\x4d\x70\x5c\xd1\x68\xc0\xff\x1e\x08\xf4\xe2\x65\x15\x02\x4e\x67\xff\x44\xb8\x20\x15\xa4\x98\x13\x33\x19\x9d\x4d\x7d\x3b\x77\xce\x49\xa1\xcb\x0a\xcf\xd9\x82\x54\x78\x60\x2d\xae\x0d\x1c\x67\x52\x01\x98\x2b\x35\xeb\x74\xc7\x7d\xb4\xe7\xc0\x99\x15\x49\x78\xda\x4d\x34\x50\xd4\x4e\xd1\xce\xd0\xae\xa8\x8b\xa2\xdc\x38\xaa\x41\x1a\x90\x22\xc0\x09\x6f\x05\xd6\xf4\x48\x9f\x11\xab\x60\x6a\xd3\x25\x9b\x16\x50\xa2\x51\xf7\x65\xbd\x85\x44\x7f\x1c\xb7\x98\x88\xdd\x54\x0f\x61\x18\x88\x88\x2d\xca\x03\xe4\x53\x50\x1b\xa8\x09\x09\x95\x3b\x9b\x56\x35\x94\x57\x21\xf5\xd3\xf5\x28\x5b\x5c\xa9\x80\xa3\xa4\x38\xc9\x24\x23\xd9\xf3\xb8\xb5\x36\xb0\xfe\x50\xa0\xd6\x8a\x28\xbb\xe1\xdf\x47\x1a\x39\xcc\xf4\x38\x42\xf5\x4a\x4d\x1a\x0d\xe7\x4f\xcd\x09\xc3\x3b\x60\x8b\x39\xce\x58\xfd\x84\x05\x57\x3e\x66\xbe\xcf\x77\xf1\xf1\xe5\x0a\xd8\x8a\x09\xaa\x41\xf5\x0d\xec\xbf\xb0\x5c\x98\x0e\xd4\xa6\x6a\x3c\x86\x61\xe8\xa6\x2b\xe3\xbd\xfa\x79\x0b\x75\x87\xc7\x94\xc9\x1b\x2a\xc6\xac\x1c\x57\x62\xac\xa4\x3b\x59\x8d\xaf\xa8\x93\xf5\x8c\xae\xc0\x5d\xf3\x20\x35\x24\x46\x98\x85\xcf\xb4\x07\xef\xcf\x36\x03\xba\x92\xcd\x7e\x10\xd5\xcf\xf7\xd6\xb4\xab\x9f\xff\x20\xaa\x0d\xab\x29\xbc\x01\xeb\x30\x7e\xd8\x50\x59\xcc\xf4\xdb\x65\xb5\xd9\xee\x24\x2d\xa7\x82\x16\x65\x9d\x67\xcb\x8a\x4b\xca\x25\x98\xd3\x32\xd4\x20\xfc\x3c\xca\x38\x77\x4c\xff\x01\x8a\x7c\x8c\xdc\xe5\x9f\xbb\x5a\x2d\x5b\xfd\x8d\x99\xc3\x8f\xef\xff\xfc\x83\xed\x06\xf4\xa9\xeb\x5b\x9d\xf1\xa4\x09\x04\xb0\x1f\xa2\xae\x7e\xfe\x25\x5d\xfd\x18\x75\xf5\x51\x31\xbe\x37\x94\xf7\xe4\x05\x70\x84\xc4\x94\xa7\xd3\xa2\xda\x07\xfc\x02\xa4\x2d\x3d\xea\xe5\xb7\xae\x32\x6d\x3e\xcf\xd2\x2e\xc9\x19\xce\xea\x7b\xbe\x6c\x3f\x5b\x31\xce\xea\x1b\x5a\x66\x0b\x84\xff\x46\xbe\xfa\x3f\xff\xf1\xd5\x85\x12\x12\xff\xe3\xab\x3c\x48\x04\x12\x67\x90\xf9\x8f\xaf\xf2\xe9\xff\x44\x5f\xe1\xb7\xbe\xf9\x57\x1e\xe4\x6f\xa2\x3a\x92\xad\x4c\x91\x3f\xa8\xa3\xcc\x25\xa4\x35\xa5\x69\x0b\x0c\x58\x7d\xb4\x4a\x5b\xb5\xd1\x7f\x4d\xb7\x15\xe3\x92\x0a\x9f\xa4\x34\x7e\x3e\xdd\x80\x3a\xe8\x6f\x68\x24\x2e\x04\x11\xf3\xaf\x17\x33\x48\x59\xda\x69\x57\xd3\x42\x2c\x6f\xf2\xb7\xda\x6e\x9e\x5d\x15\x35\x55\x7c\x9e\x77\xee\x15\x0b\xc8\xe9\xab\xfe\x30\xb6\xc0\x69\x49\x65\xc1\xd6\xfb\x3d\x9d\x4a\x26\xd7\x14\xd9\x40\x76\xb7\xe4\x97\x81\x89\x06\xca\x2f\x49\x2a\x78\xb1\x06\x5b\x86\xfa\xac\xfd\x00\x29\x92\x66\xab\x22\x69\xde\xd2\x77\xf6\x7d\xbb\xe4\xc0\xd9\x53\xf1\x4c\x26\x12\x52\x99\x02\x81\xde\x4b\x83\x84\x3f\xf6\xfb\x93\x73\x88\x35\xd1\x82\x23\xbc\x3f\x39\xc3\x19\x68\xa0\x33\xc6\xc7\x7c\x32\xc9\xf9\xf4\x4e\x30\x69\xde\xf5\x3b\x88\x80\xbf\x39\xe6\xa8\xf1\xb3\xfc\x2e\x42\xe1\x24\xe2\xc6\x70\x08\x97\xdc\x2a\x3c\xd8\x98\x6a\xe0\xb9\x44\x4d\x84\x0a\x74\xba\xa5\xbc\x64\xfc\x9a\x64\xe6\x8f\x0c\xd3\xe9\x6a\xb7\x5e\xb1\xf5\x9a\x96\x24\x73\x7f\x66\x50\x2f\xca\x94\x58\xcf\xec\x5f\x59\x83\xf2\x0f\xfb\x7d\xfe\x81\x3c\xd8\xca\x85\xaf\x7b\x74\x0f\x51\xd1\x78\x50\xaa\x13\xd1\xad\x32\x17\xd6\xe3\xbf\x4a\x95\xc1\x4a\x16\x0b\x6b\x7f\xf0\xa6\x1c\x6a\x76\x63\xc3\x87\x8f\xeb\xd5\x34\x1f\xee\x33\xda\x89\x58\x8f\xb1\x6c\xd7\x33\x8c\x5e\xfb\x7b\x2a\x7a\xec\xac\x3a\xad\xc6\xf1\x4f\x6d\x00\x8d\x9e\x15\x65\xb1\x95\x54\xd8\xd2\xb3\x81\xe5\x83\x93\xd4\x54\x45\xeb\x01\xb8\xfe\xe8\x23\xad\xae\xc6\xd6\x64\x8c\x2c\xc2\xa7\x37\x85\x29\xbc\x6c\x6b\xb3\x04\x05\xf2\xed\x54\xa5\xab\xbd\xdc\x9a\x14\x6d\x3d\x88\x57\xe3\x92\x3e\xb6\x21\xc1\xc3\xb2\xb8\xe1\x0c\xf2\x3e\x40\xbf\xcc\x39\x9a\x76\x1e\xe7\x48\x53\x78\xc3\xd6\xa6\x34\x42\x0c\xdc\x94\x49\x9b\x6a\xa6\xaa\xae\xa3\x48\x16\x6d\x15\x05\x66\x61\xe6\xa7\xae\x89\x38\x72\xc0\x7e\xb0\xca\xb5\xa0\x6f\xd5\x43\x77\x59\x1d\x03\x42\xaa\x1e\xa0\x62\x6a\x7a\xe0\xe2\x95\x4c\x3e\x69\x5f\x54\x36\xb5\xe7\x33\x2c\xc8\x19\xe6\xc4\x93\xca\x67\xdc\x93\x4b\xa6\xc9\x25\x55\x0c\x7b\x4f\x07\x73\xb6\x30\xe9\xaa\x51\x90\xab\x8f\x79\x7b\x6f\x4a\xea\x86\x2d\x3a\xc9\x75\x04\x05\x48\xd4\x55\x0a\x91\x75\x3c\x02\xac\xda\xe8\x6e\x82\xdd\x0a\x09\x43\xbc\x5f\xe1\x9b\x39\x5d\x68\x7d\x58\xff\xf7\x71\x35\xc6\x74\x4f\x51\x1b\xd5\x67\x15\x53\xe3\xb7\x54\x16\xe0\xe2\x76\x13\x17\x7a\x06\xfd\x87\x75\x72\xff\x4e\x1b\x63\x35\xd9\x86\x2a\xc1\x90\x38\x7f\x32\xd1\x71\xc5\xce\x6b\x97\xd4\x17\xd5\xc0\x09\xae\x75\x3e\x6e\x1c\x5a\x95\x75\x0f\x3a\x03\xfd\x64\x72\xa2\x2b\xcc\x2b\x09\xa2\xcc\xd1\x05\xbb\x50\xa2\xcd\x4c\x18\x5c\x7a\xcf\x8b\x6d\x7d\x53\x49\x93\xd7\x1b\x61\x76\x91\x84\x1b\xe1\xb3\x03\x50\x20\x1c\x73\xb5\xd7\x86\x9a\xa6\x77\x3a\xdc\xe7\xda\x57\x29\xf3\x14\x78\x4e\x17\x6e\xfb\x53\x64\xdc\x6e\xe1\x99\xd6\x31\x04\x5b\xe8\xfb\xf0\x6a\x51\xbb\xd9\xc9\x96\xc9\xad\xae\xa2\x18\x84\x04\x02\xe2\x9a\xe4\xc5\x63\xf6\x1b\x27\x76\xda\xe9\xb7\x6a\xbb\x55\x50\xdb\x5d\xff\x1a\x72\xce\x2a\x06\x50\x81\xa2\x91\x0c\xb7\x7a\xbf\xcf\xf9\x85\xb0\x1c\x18\x2b\xd1\xcc\x56\x8c\xef\xec\x3d\xd2\xfe\xcb\xfc\x22\xb1\x1d\x44\xcc\x06\xb7\x83\x08\x2c\xd4\xbe\x47\xfe\xde\xad\xdd\x87\x0e\x4c\x4a\xae\xd8\x2f\x5c\x47\xd9\xb2\x8e\xdb\xf6\x81\x0e\x12\x91\xba\xcc\xbb\xc5\xf4\x2b\x3d\x93\x59\x73\xa3\x6d\x0b\x63\x53\xcc\xbe\xb5\xcb\xf3\x1a\x81\xbb\xc7\x9d\x37\x85\x39\xa1\x00\xe2\x4a\xaf\x0e\x14\xf9\xf5\xea\xb4\x0e\xff\x14\xd3\xa4\xe0\x45\x58\x55\x5a\xcf\x10\xcb\xee\xe7\x43\x95\x65\xbb\x37\x84\xc9\x57\xdc\x57\x8a\xbe\x05\x39\x1b\x1a\x95\xf2\xfa\x0f\xd2\x02\x2b\x21\x21\x0c\x2c\x14\x5a\x28\x73\x80\x81\x6c\xef\x8f\x00\x2e\x4c\xe0\xc5\xba\xa8\x7d\x59\x5b\x9d\xf1\xad\xdd\x47\x47\xb2\x87\x66\x63\x56\x8f\x2b\xbe\xbe\x1f\x17\xb7\x05\x5b\x2b\x46\x7e\x7c\x77\x43\xf9\x78\xb9\xab\x65\xb5\x19\x43\xef\xe3\xa5\xea\x7e\xbc\x5a\xe9\xc6\x19\xd2\x45\x67\xbf\x6f\x17\x9d\xe5\xf0\x0c\xf3\x76\xd1\xd9\xff\x52\x88\xe8\xaf\x62\xe7\x81\x63\x6b\x63\x8b\x20\xac\x59\x7e\x73\x7e\x21\x9f\x9c\xcf\xce\x10\xe6\xe4\xfc\x29\x7f\x26\xa1\x5e\xb5\x98\xf3\x27\xe7\x0b\xff\x69\xa0\xf3\xed\x82\xc9\xa6\x31\x31\x7c\xa3\x08\xc5\x8e\x6f\x23\x95\xcf\x74\xc5\x78\xb1\x5e\xdf\x07\x5b\x85\x1e\x24\x10\x0f\x31\xbd\xac\x77\x57\xf5\x52\xb0\x2b\x2a\xec\x54\xc9\x19\xf8\x75\x3a\xfd\xa2\xeb\xf6\x27\x7f\xd6\x4e\xe2\xa8\x53\x45\x92\x40\x2b\x45\xcb\x4e\xd2\x7f\xf7\x0e\x34\x27\x81\x7c\xff\xc7\x56\x32\xe9\x6f\xf3\x40\x39\xe0\x95\x02\x02\xb5\xe5\xfe\x20\x38\x02\x21\x9c\x78\xfe\x93\x2e\xc2\xee\x87\xfa\x73\x1c\x20\xe0\x40\xd8\x4d\xb0\xe2\x5b\x35\x7a\x36\x62\xc7\xa7\x57\x4e\x6f\xe0\xf7\xfb\xef\xff\xca\x02\xa8\x1a\xf9\x2f\x7d\x32\x9c\x21\xb5\x9e\x27\xa7\x56\xfe\x29\x3f\x54\x5a\xa0\xe8\x97\x91\xe0\xab\x5a\xdd\x64\x56\x83\x2c\x0b\xf0\xb8\x05\xf1\xfc\x20\x47\x7e\x4d\x65\x3f\xe5\x76\xe3\x43\x8c\xad\x2e\xfa\x01\xcc\x46\xe2\x13\x1b\xac\x1a\x7e\xa3\x2f\x08\x99\xba\x57\xa2\x76\x44\x02\x53\x5f\x96\xed\x96\x4e\x0a\xf1\xad\xe5\x82\xd0\x78\xed\xce\xf7\x19\x33\x53\x71\xb0\xd5\x4d\xa4\x4c\x0e\x7b\x0a\x33\x6e\xd8\xce\xac\xba\x98\xa2\xa7\xb6\x7a\x4c\xf4\xde\x68\x8c\x05\x3e\xd7\x72\x44\xc5\x65\xc1\x78\x0a\x22\xf0\x79\x4f\xdf\xf0\xe9\x9a\x16\xa2\x2b\x76\x84\x5f\x8c\x5a\x7b\x1c\x88\x16\x67\x4f\xe5\x33\xeb\x16\xf5\x54\x2a\xec\xa6\x73\xb9\x98\xee\xf8\xba\x2a\x4a\x77\xf1\xa5\x70\xa2\x75\xb3\xea\x2e\x86\x89\xbf\x99\xbf\x6e\xea\x28\xbe\x7e\x7a\xcc\x97\xfe\x13\x33\x93\x03\x1f\x99\x56\xfb\x7d\xde\x5a\x40\xaa\xa6\xb9\xbe\x17\xfe\x9e\xb8\x17\xfe\xee\xef\x05\xfc\x87\x03\xde\x1b\x9b\x62\x9b\xea\x7d\xc8\xbf\x41\x50\x29\x18\xbd\xa5\xbd\xc6\xd9\x4d\xb1\x55\xbc\x73\xda\xe9\x24\x6c\xa2\x1d\x58\x72\x9d\x76\x05\xcb\x2e\x6a\xd8\x7d\xa7\xfe\x33\x1c\x8b\x97\xd4\x66\x82\x8f\x49\x1e\x9d\x2b\x72\xb7\xd0\x3d\x02\x27\x04\xd0\xf8\x6b\xe8\x32\x83\xff\x94\x76\xa0\xf9\xef\x7e\x3d\x7f\x3d\xec\x40\xf3\xef\x6a\x0a\x7f\x8d\x7c\x68\xd4\xb7\xff\xde\x4f\xf5\x3c\xa8\x34\x9e\x6b\xfd\x95\x27\x7e\x94\x4b\x26\xef\xdf\x16\xdb\x58\xf5\xc3\xe9\xdd\xfa\x5e\xdb\x9d\xca\x1e\xad\xcf\x0b\x70\xc5\x19\x7a\x77\xe5\xac\x3a\xad\x37\x1d\xaf\x95\x28\x99\x45\x10\x8b\x45\x47\x8a\xc1\x87\x10\x52\x56\x5e\xe8\xa8\x78\x25\xf6\xa8\x5f\x74\x26\x66\xda\xe2\x05\xef\xb5\x05\x33\xb7\x35\x49\xa1\x95\xfa\x43\xb5\xb3\x79\x68\xd5\x53\x76\x21\x66\x50\x81\x54\xdf\x05\x6f\x8b\x2d\x24\xff\x71\xfe\x25\x05\xec\x02\xd3\xbe\x2b\x3b\xf3\x13\xec\x77\x36\x31\xd8\x6e\x32\xa9\x43\x25\xce\xce\xff\xe8\xfa\x7a\xbc\x2e\xd8\x9a\x82\x45\x45\xdb\x47\xc1\xcd\xe3\x57\xac\xfc\xd5\x78\x55\x09\xf8\xd1\xb6\xeb\x8d\x7f\x95\x9d\xd2\xd3\xec\x57\xea\x9b\x5f\x65\xa7\x6a\xad\xa7\xd9\xaf\xf0\xf8\x8a\x2e\x8b\x1d\x14\x30\x2e\xe4\x98\x95\x8a\x63\x2b\xd6\x82\x16\xe5\xbd\x92\x00\xd5\x9b\xab\x7b\xf5\x81\x38\xcd\x7e\xe5\xf3\x2b\xec\x94\xe0\xad\x29\x76\xbe\xc3\x7a\x1d\x36\x0d\x75\xad\xcd\xb3\x84\x90\x9d\x92\xa9\xa2\x87\x27\xf0\xb0\x86\x98\x98\x70\xad\xf1\x72\x27\x13\x05\x10\x37\x40\x8d\x0d\xdc\xf2\x9a\xec\x90\x42\x2f\x70\x18\xc1\x85\xba\x77\xdc\x5b\x84\x19\x30\xc6\x1d\x0c\x54\x60\xfb\xc3\x10\x31\xd0\x01\x9e\x6d\x09\xdc\x65\x06\xb1\xd1\x4a\x2d\x64\x1b\xb2\xa1\xca\x28\x23\xd4\x63\xbe\xa4\xc8\x24\x6d\x01\x87\x97\x5c\x78\x07\xc3\x8b\x1c\x74\x7c\xef\x97\x37\xb4\xdc\xad\x69\x69\x38\xc1\x1c\x4d\x26\x7c\xba\x2c\xf8\x92\xae\xdd\x23\xcc\x6d\x05\xfc\xab\x1d\x5b\x97\xb9\xb0\xae\x2f\xaa\xd3\x5e\xa6\x21\x81\xb9\x9a\x76\x00\x7c\x8d\xe7\xcc\xb7\xf7\x56\x82\x4e\xd0\xce\x77\xe6\x3b\xb0\x66\x63\xfd\x5d\x64\xff\x36\xb1\xb4\x90\xd7\x4c\xd1\x1b\xbb\x7e\x92\x8e\x39\x08\x4c\x7f\xa0\x1e\xd0\x16\x41\xab\x07\x79\x0c\x5c\x7d\xa9\x7d\x80\x2b\x73\x4e\x1d\x84\x90\xaa\x7b\xbe\x8c\x73\x6a\x4d\x25\x1c\x26\x56\x8e\xa1\xd6\xe3\xb8\xe2\xf0\x5b\x0b\x8c\x63\x38\x51\x33\x38\x1b\xe3\xa2\x56\x6f\x04\x55\x07\x88\x57\xe3\x7a\xb7\xbc\xb1\xcd\x98\xfe\x48\xdb\xc2\x33\xab\xd1\xaa\xb4\x37\x4b\x10\x99\x11\x4c\xc9\xd8\x68\x4e\xa0\x4a\x9e\x9b\xf6\xb7\xf7\x6f\x14\xbe\x4b\xe7\xb3\xa5\xfd\xa6\x92\xc0\x48\xbb\xf1\xe4\x0c\x07\x30\x95\x0d\xc2\x95\xda\x86\x37\xa5\xda\x12\x8b\x20\x6a\x98\x1e\x7d\x54\x72\xa8\x94\x6b\x56\x1e\x0f\x63\xf3\xca\x09\x62\x94\x26\x11\xae\x69\x34\x03\x9f\x06\xa3\x57\x9b\x4c\x44\x1f\xb2\xe7\xc2\x9a\xed\xc1\x31\x5b\xdd\x9d\x9a\xa9\x06\xef\x0d\xc0\xf7\x7e\xb6\x58\x1f\x07\xe7\xb7\x75\xd9\x6e\xde\xef\xa7\x68\xdd\xe1\x40\x35\x14\xef\x48\x80\xf3\xe6\xdc\xf7\x40\x6a\x24\x88\xee\xe6\x82\x0f\xba\x8c\xe5\x14\xcd\xa8\xa9\xd6\xa5\x90\xf2\x1d\xcd\xfd\x2d\x8b\x45\x7c\xa4\x52\xa7\x56\xd1\x45\x86\x85\xf1\x94\x6c\xa0\x22\x47\x8b\xbb\x8e\xd8\x9d\xb8\x8f\x20\x0b\xbf\x76\xec\xb5\x73\x04\x7f\x2b\xdb\x17\x88\x93\x23\x9b\x23\xc7\x37\x1a\x25\x71\xa4\xc7\xf1\x85\xc3\x36\x04\xc3\x0f\x49\x34\x8e\xa4\x3b\xf6\x0d\xd8\x71\x19\xf3\x15\x20\x21\xd4\x83\x5d\x85\xcd\xdb\x7d\xb5\xf8\x37\x6a\x6f\x02\x08\x40\xe9\xce\xc4\x30\x67\xb3\x14\x52\x5b\xc6\xad\xa5\xdd\xf8\xdf\xa1\xcd\x12\x02\x24\x74\xca\x31\xf3\xc7\xd4\xe4\x10\x83\x1b\xeb\xdf\xfa\x8d\x87\x86\x2e\x44\x9c\x57\x6c\xca\x32\x2e\x54\xde\x0a\x1a\xb1\x55\xc1\xe3\x97\x3a\xd3\xc1\xa0\x43\xb0\xe8\x50\x7d\xf4\x60\x11\x4b\xd2\xb8\xb2\xa1\x5b\xde\xff\xce\x9d\x3b\x8d\x56\xba\x22\x74\x91\xa9\x55\x66\x90\x87\xbe\x31\x59\x36\x3b\x92\x94\x53\xc5\xf9\x0f\x47\xbe\x4b\x88\xf4\x36\x40\xcb\xa9\xcd\xc7\x66\xe1\x86\x29\xa1\x93\x89\x0d\x45\x39\x09\x03\x82\x6e\x04\x5d\xcd\x28\xc2\xd4\x4a\xc4\xda\xe9\xa3\x2b\xc8\x69\xa3\x6b\xef\x1c\x20\xb7\x92\xfa\x32\x91\x23\xc4\xbe\x80\x89\x41\x82\x12\x4c\x0d\x06\xa8\xbe\xff\xdf\xee\x11\xc4\x22\x8c\x7e\x8a\x7d\xcb\x2c\xdd\xac\x08\x35\xb1\x3f\x37\x4c\x47\x99\xeb\x4c\x52\x90\xb4\x8b\x30\x5c\x4d\x93\x86\x06\xc2\x71\xa5\xf9\x56\xde\x09\xd2\x33\x19\x88\xa6\xdb\x42\x50\x2e\x21\x8a\x4f\xa7\x18\x5e\x51\x41\xf9\xd2\xbf\x7a\x13\xdb\x47\x71\xd5\x08\x25\x85\x4a\xc2\x91\xc7\x94\x96\x00\x26\xfc\x1b\x84\xc3\x78\xa6\x65\xc5\x6b\x29\x76\x4b\x59\x09\x85\x9f\xd3\xcb\x4b\x78\x77\x79\x49\x84\x25\x78\x29\x5d\x07\x2b\x3f\x6d\x93\xb4\xb9\x40\xff\xaf\x7d\x8c\xd5\xb6\x98\x5f\xb0\x33\x2c\x8d\xda\x21\xbd\x08\xdc\x08\x14\x03\xe4\x2b\x7d\xdf\xe8\x58\x46\x50\x09\x6c\x77\xf5\x4d\x0f\x79\x8d\x5d\x52\x62\x95\x5c\x47\x21\x67\xbe\x14\xde\xa2\x95\x20\x63\x7f\x32\x32\x5d\x03\x05\x67\x67\xd2\x24\x1d\x35\xda\x14\x75\x0d\xa6\xb0\x41\xdd\xf4\x2f\x0a\x5e\x71\xb6\x2c\xd6\x3f\xba\x45\xe5\x2f\x73\x01\xd9\x58\x10\x2c\x04\xb4\x65\x3d\xba\x8d\x04\x42\x98\x4b\x29\xb1\x0f\x36\x09\x19\xd4\x43\x73\x0a\xd4\x01\xeb\xba\x29\x0c\xa9\xd3\xfc\x88\x29\xab\xbf\xab\x8a\x92\x96\xb9\x0b\x02\x10\x91\x65\x20\x08\x12\x54\xf3\x5e\x57\x45\xff\xc5\x9f\x9a\x78\x72\x2f\xb1\x55\x46\x75\xba\xeb\xee\x67\x6f\xcf\xfa\xeb\x64\xe7\xbd\xfa\x57\xa9\x01\x9f\x9b\xac\x88\x4d\xfe\x6f\x9a\x60\xd0\xc4\xa5\xfd\x79\x28\x46\xc2\x40\xf5\xff\x1b\x7a\xf1\xc8\x33\xed\xca\xfe\x87\x27\x3a\x7d\xb3\x85\xaa\x9c\x2e\xd1\x19\xb8\xcf\x83\x8b\xaf\xce\x54\xff\xac\x4c\x78\x2e\xb4\x3b\xc6\x92\xcc\x17\x3e\x47\xae\x31\x7f\x4a\x53\x1b\x70\xba\x29\xb6\x3d\x4e\x7c\xac\x04\x1b\xa5\xfc\x12\xb4\x89\xd0\x51\xe7\xde\x83\x95\x3b\xeb\xac\x2d\xf2\xea\x72\x73\xf5\xcc\xf3\x65\xde\xa2\x5d\xa1\xb9\x44\xa6\x50\xd4\xba\x6f\xbe\x00\x67\x8a\x5a\x09\x76\x72\xda\x31\x1f\xba\x0d\x4d\x76\x01\x3b\xac\xa9\xdd\xa5\xa5\x32\xe9\xad\x88\xd3\x39\xa6\xfa\xba\x29\xea\xe7\xf1\xa3\x97\xfa\xce\xe9\xfb\x60\x03\x71\x71\xf5\x54\x56\xda\x80\x85\xa6\xf4\x96\x8a\xfb\x38\x79\x8f\x19\x16\xb8\xce\x7e\xaa\x3b\x48\x4c\x81\x54\xea\x5f\x01\xc3\x8d\x50\x40\x57\xfb\x28\x7e\xcc\x77\xbb\xe6\x17\x5d\x1e\x73\x0a\xb9\xe4\xf8\xbd\xb1\xc5\xd9\xe3\x33\x3b\x8a\x28\xf7\xef\xda\x41\x62\xdc\xdf\x8d\x6e\x9c\xec\x49\x13\x55\x47\x39\x8d\x39\xfd\x5f\xd8\xec\x24\x0e\xd2\xfe\xc0\x4c\x8a\x45\xd7\x50\xca\xc3\x32\x00\x08\x33\x72\xf6\x94\x3d\x13\x4f\xd9\xe9\x29\xe2\x73\x16\x9a\x47\x99\x4b\xfd\x2e\xcd\xc5\x61\x6c\xa2\x14\x43\xbe\x8d\x85\x5a\xdf\xb2\x90\x39\x47\xee\x22\xd1\x19\xc9\xa7\x09\xf3\x32\x38\x74\xc8\x2f\x4a\xf7\x71\x85\x0b\x5c\xa7\xa8\x7f\xdd\xe2\x16\x5b\x52\x64\x83\xeb\x41\xa1\x25\xb3\xe2\x5d\xa6\x5a\x7e\x46\xd2\xe9\xa8\x5a\x44\xf0\xe0\x0c\xd6\xc3\x67\x30\x86\xb0\xd3\x93\xf6\x9c\x47\xcb\x20\xd9\x52\xff\xad\x43\xd8\x75\x97\x60\x65\xe4\x25\xa1\xa7\xe7\xab\x5f\xe9\x43\xa4\xe3\xd0\x6c\xfb\xae\xdb\xff\x4f\x1c\x7c\x01\x64\x35\x5e\x51\xe9\x75\x5f\x4a\x22\xba\xdf\xd2\x71\x76\xea\x7a\x39\xcd\xc6\x77\x4c\xde\x54\x3b\x39\x2e\xf8\x98\x41\x28\x46\xdd\x39\xe4\xd1\x85\x68\x58\x23\x77\x0f\x5e\x50\xd3\xde\x4a\xde\xfa\xef\x06\x33\xc2\x71\x5e\x59\xfb\xd8\x25\x1b\x76\x3b\x89\x41\xc7\x4a\x6d\x8e\x92\x34\x67\x81\x3d\xaa\x42\xb8\xd0\x0f\x71\x81\xda\x34\x84\x5b\x51\x7c\xca\xea\x97\x4c\xc8\xfb\x0b\x3a\xad\x29\x2f\xf3\xec\x8a\x2e\xab\x0d\x85\x67\x19\x9a\xd9\xa7\x5b\x73\xd4\xff\xa2\xf6\xb0\xa6\x32\xd3\x42\x37\xa3\xe4\x01\x1c\x45\x8a\xf5\x7b\x59\x48\x3a\xcb\x76\x7c\x59\x6d\x36\x4c\x4a\x5a\x66\xd8\xf4\x3d\x3b\x39\xc3\xc1\xf3\xd9\x43\xc9\xca\xf7\x54\x5a\xf2\x31\xe3\x14\x2b\x38\x30\x7e\xad\xae\xa0\x38\xaf\x66\x7b\xe0\x59\xec\xf5\x7c\x53\xd4\x2f\xba\x6e\xa1\xfb\xbd\x9d\xb7\xa8\xd6\x6b\x5a\x7e\x5b\x2c\x3f\xaa\xdd\x52\xa8\x4b\xcb\x78\x90\x03\xdd\x40\x06\x14\xf0\x84\xf9\x50\xe5\xd9\x1a\x6e\x94\x69\x5d\xdc\x52\xd8\xfe\x00\x58\xf1\xb4\xef\xd8\x7a\xfd\x02\x16\xdc\x1a\x29\xee\x8f\xf1\xd7\x6b\x76\x7d\xa3\xc0\x89\x35\x62\x24\x12\xcd\xb9\xa8\x45\x7b\x4c\xc1\x75\xd3\xa4\xa9\x19\x89\x9c\xda\x4b\x35\xec\x41\xd1\x64\x75\x42\x3d\x00\x06\x27\x12\x2f\x0c\xab\xd7\xec\xfa\x9a\x8a\xef\x0a\x49\x45\x1b\x8c\x57\x74\x59\x6c\xe8\x1b\x0e\xf1\x30\x07\xd6\x07\x6d\x32\x33\x91\xab\xee\x34\xec\xe3\x10\xee\xdd\xe1\x69\x51\xde\x67\xa8\x69\xb0\x05\xd8\xec\x81\xd5\xef\x8b\x5b\xc6\xaf\x15\x72\x75\xf1\xa9\x77\x63\x52\x28\xa0\x9e\x87\x46\xec\xd9\x92\x26\x37\x50\xb5\x2b\x59\x79\xc4\xbe\x7a\x38\x6a\x34\x64\xfc\xb6\xfa\x48\xbf\x63\x2b\xba\xbc\x5f\xae\xe9\x8b\x42\x2f\xba\xce\x34\x65\x2a\xd5\x3c\x3f\xe8\x5a\xcd\x03\x1b\xf6\x59\x77\xe4\xf0\xdc\x5c\xbf\x40\x29\x07\x7b\x0d\x4f\x7d\x77\xfb\x82\x5e\x32\xc5\xd0\xa8\x6d\xd4\x33\x7d\x60\xf5\x9f\xe1\x8f\x93\x73\x1c\x16\x91\x1b\x1c\x4c\x37\x2c\xa7\xd1\xa0\x4d\x1b\x09\xe2\x13\x44\x8d\xf2\x17\x26\xf1\x96\xd6\x75\x71\x0d\x79\x96\xbc\x0f\x9b\x9c\x72\xd0\x1c\x1b\xca\x88\x81\x28\xe8\xac\xbb\xb9\x4d\x7f\xae\x17\x02\x33\x06\xad\x6b\x0f\xd8\x15\x9e\x3c\x1a\x01\x7b\x29\x06\x68\x63\xc3\x79\xdb\x13\xd2\x4b\x48\xfa\x30\xe8\xa8\x9e\x0e\x51\x02\x73\x14\x71\x00\x8b\xe3\x51\x03\x76\x3e\x89\x6d\x83\xc8\x1e\xc1\x59\xa3\x50\x90\xc8\xa7\x6a\xf3\xc3\x3a\x75\x1e\xb5\x51\x4a\xee\xf6\xf5\xbe\x60\x05\x0d\x18\x9b\x8a\xe6\x81\x86\x3a\x30\x1a\x3d\xf8\x74\x7c\x4c\xf7\x29\x88\x9c\xb3\x05\x06\x1e\x34\x99\x68\xf9\x82\xe6\x02\xcd\x9c\x12\x8c\x37\x39\xa3\x48\x4d\x18\xf2\x6f\x51\x52\xd0\xfc\xc1\x9d\xf6\x99\xa9\xc5\x08\x37\xe5\xf7\xf4\x4e\x91\xb2\x9a\xca\xdd\xb6\x05\x8c\xd0\x24\x06\x3c\x71\x9d\x43\x4e\xaf\x9a\x4e\xcd\x41\x9a\xfa\x3d\x27\xc7\x1c\x9d\xe3\xe8\x7c\x4d\xc3\x33\xf6\x45\xc6\x00\x9e\x78\xd7\x81\x8b\x5e\x71\x99\x35\x01\xcb\xb2\xa6\xc7\x8d\x76\x90\xaa\xb9\x1e\x97\x54\x9d\xbc\xd6\x2a\x43\x32\x44\xd6\x14\x07\x40\x4e\xbc\x6a\xc3\xe7\xaa\x0d\x1d\x96\x6e\x93\x4e\xd4\xd6\x39\x8c\xad\xd5\x75\xb6\xc4\x13\x93\xc1\x2d\x31\x67\xda\x40\x75\x3a\x4c\xad\x4b\x56\x2a\xc1\x39\x35\x5a\x8b\x17\x8b\x4d\x2a\x3b\x0f\xa8\x80\x36\x1c\x33\x2f\xb7\x3a\xe8\x42\x13\xb2\xc8\xab\x8c\x2c\xa9\x7a\xd7\xbb\x4d\x9f\x70\x5b\xec\x8e\x38\x3b\x9f\x85\x5e\x76\xb0\x7d\xe5\xc5\xa5\xb1\x8d\xbb\x7f\x08\xe9\x4c\x2e\x49\x45\x73\x71\xd1\x92\x38\xd1\xec\xa1\xc1\x12\x21\xa3\x56\x01\x7e\x9b\x08\xac\xc4\xb2\x42\x52\x1d\x58\x85\x25\x3a\x32\x13\x1b\x43\x93\x49\x16\xf4\x94\xe9\xfc\x02\x99\xeb\xcc\x3e\xe8\xd8\x89\xe6\x4c\x57\xc6\x61\x0b\x42\xe1\x3f\x2c\x31\x3f\xcd\xa6\xd9\x29\x0b\x54\x60\x4d\xfe\xc0\xea\x57\x9b\xad\xe2\xfe\xcf\xb1\xd6\xc5\x00\xb7\x66\x7f\xd0\x52\xff\x6d\x24\x04\xf5\xa7\x65\xe8\xe0\xb1\xde\x36\xfd\x03\x68\xa3\xfa\xc3\x30\x0b\x67\xc9\x3b\xae\xc3\xc6\x1d\x29\x48\x40\xfa\x7e\x98\xa9\x9f\xf2\x59\x5a\x22\x31\xbc\xc4\xe5\x36\x08\xa4\x26\x32\x89\x13\x3a\x46\x1c\x6b\xf4\x48\x88\x1c\x49\x2c\x32\xf7\xc1\x81\x13\xea\xee\xe0\x5e\x79\xe6\x51\x28\xea\x0e\x7c\xff\x40\xbc\x92\xaf\xab\x1d\x8f\x41\xda\x58\x18\x29\xb8\xb9\xfd\x3d\xc3\xf4\xe7\x0e\x0f\x13\x03\x4c\xcb\xf7\xfd\x22\xdf\x3f\x66\x55\x98\x4e\x15\x33\xbf\xa6\x05\xd7\xaa\x80\x03\xfc\xee\x10\x47\x9b\x00\x50\x62\xc6\x80\x64\x20\xc6\xe8\xb9\xcf\x5a\xb2\xb3\x5e\x4a\x70\x3e\x7a\xb0\x50\x01\x09\xda\xce\x1e\x52\xec\x42\x5a\x98\x9d\x4c\x5c\xb4\xe6\x4b\x56\xc2\xa9\xcb\xbb\x5c\x33\xa7\xbd\x0c\x6a\x92\xa3\x4d\x31\x7c\xa9\x5b\xe6\x68\x89\xd8\x7e\xfd\xe5\x25\xe3\x5f\x2a\x6f\xf4\x93\x9a\x84\x8c\xa8\x1e\xf7\x1c\x22\x73\xe6\x67\x35\xc5\x66\xf1\xb3\x1d\xb5\xd3\xeb\xe0\x48\xa4\x5f\x09\x38\x26\xd3\x3c\x0b\x49\xe7\x59\x84\x4a\x81\x32\xe6\x68\x26\x33\x56\xdb\x7c\x8a\x52\xe3\x33\x48\xfd\x8f\xc3\x48\xd8\x80\xe4\xd6\xaa\x37\x9f\x49\x1d\xe2\x28\xc8\xc0\x65\xdf\xa7\xac\xf8\x27\x69\x1a\xbe\x98\x34\xff\x89\xca\x87\x83\x12\x9e\x25\x71\x01\x8b\x90\xc2\x5b\x2d\xd7\x2b\x59\xfe\x0d\xbf\xa5\xa2\x8e\x53\x79\xe4\x9f\x2a\x72\x96\xac\xd4\xe7\x48\x4d\x26\x75\xb9\xe8\xbd\xd1\x10\x78\xc4\x16\x0e\xa8\x00\x7a\xd4\x22\xff\x77\xa8\x35\xfa\x8f\x5c\x1f\x70\xfe\x95\xd5\x14\xcd\x51\x58\x03\x99\xad\xad\x08\x0f\xee\x91\x29\x3c\x81\xf7\x0a\x4f\x66\x89\xb7\xba\x48\xfa\x11\x38\xd6\xe8\x38\xe3\x4c\x54\x95\xcc\x02\xa9\xb8\xfc\x97\x36\x06\xba\x69\xde\xd0\x43\x59\x50\x5e\xe6\x3a\xd9\x4b\x4f\xb6\x13\xb5\x86\x2d\xc5\x1b\x8a\x6f\x29\xbe\xa7\xf8\xda\x59\xe4\xfa\x24\x1d\x7c\x45\xc9\xc9\xf9\xe8\x9e\xb6\x4c\x48\x27\x57\xd4\xda\x68\x5c\xf6\xe4\x30\x4f\x38\x18\x02\x7d\x9e\x70\x34\xda\x52\x42\xa7\xce\x58\x8c\x37\xea\xa7\xc9\x5b\xe4\x5c\x65\xf0\x6d\xf0\xd4\xb7\xdd\xd2\xc9\x64\x43\x27\x93\x5b\x3a\x99\xe4\x57\x00\x35\xeb\xfe\x73\x45\xb5\x38\x78\x99\xcc\xfa\x80\xef\xd2\x8f\x5f\xa5\x73\x44\x38\x38\xbf\x0f\x15\x5b\xaf\x28\x04\xd1\xe5\xf0\x3f\xa1\x10\x47\x26\xf3\x6c\x9a\x99\xbc\x19\xef\xe8\x23\xbd\x34\x7d\x8a\x13\xe9\x4c\x6a\x71\xa0\x8c\x2c\xae\xc9\x60\xe6\x93\xe5\x9a\x51\x2e\xdf\xb4\x3e\xbb\xec\xf1\xf5\xbc\x0c\x82\x4a\xe3\xd8\x1a\x4d\xc3\xe2\xc6\x26\xf3\x4d\xc0\xc3\xbc\x2d\x78\x71\x4d\xc5\xeb\xf5\xae\xbe\xe9\x76\xbc\x51\x07\x0d\x62\xc0\x19\xbf\x6e\x75\xff\x23\x35\xac\x77\xfc\x59\x59\x7d\x5f\x49\x33\xa5\xd6\x17\x3e\xc2\xb5\x35\xab\x50\xf4\x69\xa5\xcf\x05\xed\x45\xf4\xac\x6e\x79\x8e\xb7\xb2\xeb\xba\x18\xe8\x16\xfc\x4a\xba\xa2\x42\xd0\xf2\x83\x26\x21\xed\xd7\x22\x60\xeb\xda\x73\x30\x6e\x50\x9d\xe7\x91\x93\x54\x6b\x1a\x16\xc1\x75\x60\x53\x7f\xa4\xa8\xa0\xb2\x60\x9c\x96\x6f\x8f\xff\xc0\x9f\x7f\x73\x9a\xea\x47\x7e\xf3\xf3\xa1\x41\x96\x3b\xe1\x15\x28\xe1\xba\x68\x88\x52\xf7\xe0\xc4\x64\x91\x5c\x67\x87\xbc\x49\xe5\xd0\x89\xd1\xda\x64\x90\xec\x60\xb5\x4b\x87\x64\xea\x97\xfe\xe1\xa7\x37\x2f\x2f\xff\xf4\xea\xaf\x8b\xe8\x8b\x8e\x98\x1c\x63\x4a\xf0\x24\x3c\x18\x27\xe7\xf1\xa1\xb0\xbf\x0f\x1d\x08\xd7\xae\x7b\x18\xdc\xab\x0e\x3e\xfa\x39\x40\xae\x41\x6b\xb4\xef\x22\x68\x30\xd9\x2e\x7a\x86\x2f\x23\xe4\x8c\x16\xed\x50\xb3\x03\x0a\x8f\x98\x51\xcc\x31\x83\xb2\x23\x1d\xcf\x8a\x6a\xca\xea\x3f\xb2\xb2\xa4\x5c\x31\x47\xa1\x8c\xd3\xf5\x5c\x30\x2e\x53\x46\x13\x04\x11\xf2\x94\xc0\xb5\x3b\x8d\xb5\xb1\xc4\xb8\x21\x84\xe8\xe4\x75\x71\x7d\x90\x35\x2c\x57\x32\x46\xc4\xbc\x0b\xb6\x76\xbf\x37\x89\x64\x68\x83\x2b\xd5\x9b\x9e\xfb\xeb\xdd\x7a\x7d\x6f\xc4\xbc\xc4\x0a\xce\x55\x63\xdb\xf6\x0d\xff\xff\xd8\xfb\xf6\xff\xb6\x8d\x2b\xdf\xdf\xf9\x57\x90\xd8\x5e\x14\x73\x35\xa2\xa5\xa4\xdb\x76\xe9\xc0\xaa\xfc\x6a\xdc\x26\xb1\xaf\xed\xb4\xcd\xb2\xbc\xba\x10\x31\x94\x26\x86\x06\x2c\x30\x94\xac\x88\xfc\xdf\xef\x67\xce\xbc\x07\x03\x92\x72\xec\xa4\xdd\x66\xb7\x9f\x58\x04\xe6\x85\x79\x9c\x39\xcf\xef\xf9\xb6\xdd\xe2\x08\x28\x8a\x38\x4e\x80\xa3\x0c\xc2\x91\xb2\x30\x9a\x3f\x7c\xaa\xe2\xf8\xa1\x1f\x98\xa8\x3e\x17\x10\x6f\x76\x54\x59\x59\x4d\x69\x8c\xf6\xac\xa8\x4a\xdb\xaa\xb1\x2f\xef\xad\x49\xca\x8d\x74\x1c\x05\xce\x35\x8e\xc0\xd4\xdb\x44\xb7\x9a\x1c\x85\x14\xe9\xf6\x1c\x85\x2c\x2c\x2b\xf6\xae\x5c\xb4\xa6\x2a\x2d\xab\x7e\x43\x6e\xf6\xac\xf6\x0d\xb9\x91\x55\x02\x35\xfc\xd6\x4a\x50\x56\x54\x33\x9a\x85\xbd\x2a\x9a\xd2\xa2\xaa\xf1\xe4\x09\x51\xb7\x46\xee\x9e\x4b\xd3\x51\xcf\x09\xf1\x02\x7c\x54\xe4\x50\x7e\x07\x7f\x4c\x38\xf6\x3d\x07\xc1\x89\x06\xbb\x63\x99\x74\x46\x07\xa9\x26\x1a\x43\x1c\x5d\x4a\x89\x1b\xad\x12\x73\xde\xc1\x2d\x60\x11\x7e\xe5\xd8\x13\x5a\x0a\x26\x98\x58\xb8\x51\x19\x35\x65\x91\x79\xe5\x70\x21\x24\x8d\x4a\xf6\xaa\xce\x79\xc0\xd0\x6e\x85\x55\x71\xd0\x9a\x6b\x93\x0a\xbe\xc0\x6d\x18\x72\xbd\xca\x8f\x1e\xae\xbe\xd0\xae\x72\x0f\x57\x9a\xc3\xaf\xf2\x76\xba\x9a\xe1\x79\x5e\x4f\xab\xd9\xc0\x8c\x7f\x0e\x89\x01\xdd\xcc\xd3\x73\x99\xa8\xfa\x94\x64\x64\x5a\xcd\xd0\xe4\x9d\xfa\x03\x8b\xff\xe6\x85\xf2\xe1\x5b\x78\x24\x42\x62\x11\x8a\xc1\xcb\xb5\x95\x52\x8d\x82\x7d\xcb\x4c\xe2\x30\x85\x80\xd6\xe0\x85\xce\x4b\xdc\xea\x9c\xa4\x0d\x0e\x93\x94\x22\xe4\xdf\x6e\x5c\x5d\x1f\xcf\x8b\x39\xaf\x9b\xdb\x18\x66\x8f\xb1\x85\xe0\xd2\x1b\x1e\xbe\x0c\xe3\xd6\xf0\x9f\x21\x2c\xbc\xc4\x97\xba\x17\x25\x5d\x3d\x0d\xae\x22\x95\xd0\xa1\xc4\x97\x3e\x18\xb9\x6c\x58\x6c\x68\xe7\x9e\x8b\x01\xee\x06\x37\xb3\xcb\x3a\xea\x5b\x54\x32\x16\xb6\x8c\xc7\x81\x2c\xc8\x98\x68\xaa\x58\x3a\x47\xa1\x63\xdc\xf2\xfc\x7b\x7b\x2f\xee\x28\xa7\x6a\xae\xf3\xc6\x47\xda\x53\x50\x4b\xa5\x89\xbf\xed\x62\x03\xc5\xb9\xab\x9e\xdc\x9d\xa4\xaf\xfc\x94\xcf\x74\x2f\x69\xba\x4f\xa9\x0c\x69\xc4\xe5\x6d\xa5\x37\x28\x36\x64\x9f\x3d\xdd\x96\x66\x34\x27\x7d\x3c\x2a\x80\x7e\x84\x4d\x4d\xf9\x6c\x60\x47\xd5\x79\x87\x25\x0c\xdb\x19\x95\x8a\xa8\x17\xed\x69\x7b\xcb\xe6\x69\xda\x98\x88\x3a\x14\xec\x79\x38\x56\x3e\x7e\x46\x2f\x6f\x15\x57\xd0\xd6\x3d\x96\x50\x2d\xbf\x81\x52\xd0\x2d\x92\x40\x25\xc1\xc2\x44\xdc\x43\x93\xa7\x6f\x26\x43\xa0\xac\xff\x21\x4a\x28\xef\x47\xdc\xe4\x8e\xaf\x28\xf0\x72\x4e\x5e\x57\xc7\xf7\x52\x33\x8b\x6f\x8a\x6b\x85\xaa\xd5\x60\x82\x30\x38\xcb\x0a\xbe\x16\x7a\xe6\x45\xc3\x49\x69\x0f\x49\x38\x64\xef\x00\xa9\xdd\xec\x84\xdc\x1b\xb2\xe2\x6d\x61\x9c\x38\xd5\x12\x19\x26\x5b\x8f\x35\x62\xef\x9e\x9d\x1d\x7f\x60\x67\xc7\x48\x92\x89\x8e\xb7\xb7\x9a\x1a\xff\x83\x55\x40\x9d\xbc\xe0\x70\xe3\xce\xb9\x6c\x62\x58\x2f\xd4\xc4\x1b\x37\x12\x03\x5f\xec\x82\x26\xfb\xb0\x5b\x5c\x7b\x3c\x3a\xa6\x8e\x04\xdf\x29\xc3\xc8\xa4\xc1\xca\x2c\x32\x21\x1b\xb4\x41\xdb\x10\x95\x78\x68\x17\xc3\x7c\xe3\x42\x2c\x11\x0d\xb1\x05\x05\x65\x19\x82\x30\xd9\x20\xdc\xfd\x96\x79\x7d\xb5\x14\x9b\x0f\x6b\xc0\x87\x45\x55\x5c\xb4\x09\x8a\x03\x52\x75\x57\x4c\x39\xfb\xd7\xbe\x3f\x40\x77\x19\x1d\x96\x39\x73\x76\xbe\x5b\x2b\x51\x07\x29\x42\x64\x33\x03\x02\x11\x97\x7a\x0c\xc1\xec\x88\x43\x31\x80\x28\x73\x0e\xc4\xc9\x83\x62\xd2\xcf\x0f\x27\x67\xf3\x4b\x32\x7f\xf7\xbc\x6e\x5e\x36\xcb\xcb\x82\x91\xd2\x0b\x8e\x68\x13\x24\xbf\x35\x22\x1d\xf4\x0a\x2a\x9d\x21\x89\x06\x3c\x58\x85\xee\xa5\xe5\xdf\x0d\xfd\x2a\x91\xd1\x31\xb6\xdf\x27\xdb\xec\x99\x07\xb4\x4d\x5c\x94\x54\xca\x84\xbe\x77\xc7\xd3\xe9\x59\xb1\x53\x21\x3a\x84\x2c\xbd\x7d\x0e\x75\x31\x6f\x4b\x74\x54\x34\xea\x91\xb9\x6c\x40\xbc\xda\xde\xf0\x1e\xc3\xde\x4b\x6c\x76\x06\x26\x7a\xdd\x81\x88\xd8\x89\x98\x07\xe1\xba\x0f\x1c\xb1\x1e\x9f\x2d\x28\xb3\x11\x7c\x9d\xe4\x0f\x6e\x42\xd9\x08\x01\xf7\x6b\x3f\xbe\xfd\x53\x5b\xb3\xd3\x25\xb5\xd1\x39\x58\x51\x75\xd6\x21\x1f\x16\xc3\xed\x3d\xc9\x28\x26\x38\x60\x7e\xb1\x4c\x63\x81\x3c\x52\xb2\xb3\x12\x4c\x5b\xa3\x69\x80\x1b\xf9\xd8\x9f\xd8\xe5\xac\x2f\xee\x15\x30\x4a\x20\x44\xb3\x2c\x78\x71\x72\xee\x80\x13\xa0\xad\x20\x1c\xb2\x82\x82\x60\xa5\xb9\x3b\x61\xf7\x00\x08\xad\x5d\x91\xa6\xc8\xa9\xc9\x34\x5a\x08\x36\x01\x6b\x05\x9c\x44\xd1\x28\xf0\x2a\x87\x60\x00\x82\xa5\xe8\x53\xe3\xba\xa1\x17\x94\x15\x9c\xb2\x8b\x17\x5d\x21\xc8\xf4\x37\xa1\xa0\x97\x02\xb1\xc7\xe4\x81\xd2\x89\x65\xb6\x82\xcc\x32\xf9\x85\x52\x5e\xf2\xbe\x4c\x50\x24\x09\xdd\x23\xa4\xe9\x53\xce\x05\xc7\x8a\x02\x7e\x39\xca\xa3\x11\x89\x78\xa6\x93\x44\x79\xfb\x0b\xc0\x8d\x28\x0e\x58\x09\x95\x39\xc5\xcd\x55\x20\x26\x35\x31\xa1\xc1\x09\x26\xd8\xe4\x12\x98\x63\x95\x06\x61\x52\x9d\x74\xa3\x48\xb0\xc5\xb1\x95\xd2\xe1\x6a\xe3\xc5\xdf\xe6\x62\x4a\x20\x3b\xe6\xf6\x79\xf1\xe2\x77\xe5\x46\x34\xec\x62\x14\x7f\xc7\x85\xe0\x70\x21\x75\xee\xbf\x6b\x58\x74\x53\xeb\x38\x31\x62\xc1\x75\x03\x76\x54\x01\xe8\xfa\xc9\x5e\x54\xf7\xb6\x81\xee\x11\x87\x24\x30\xa3\x11\xf3\x07\x99\xa6\xc1\x83\x90\xcb\xcd\xd0\x80\xe6\x4b\x62\x72\x3d\x28\x79\xdd\x6e\x78\x99\xe6\xc3\x0e\xc2\x24\xa5\xd6\x19\x94\xec\x07\x4e\xc2\x2f\xc6\x90\x05\x83\x01\x2c\x01\x86\xe0\x54\x95\x27\x0d\xcb\x13\x42\x5b\x27\x27\xef\xa4\x89\xa6\xf0\xf5\xdc\x28\x6a\x0d\x5f\x8d\x83\xcf\x98\x14\x38\xa2\x60\xb0\x6e\x14\x82\x13\xea\x99\xee\x9c\x6e\x82\x03\x11\x95\x2b\xc8\xcc\x91\xbe\x7a\x4a\x74\x85\xa0\x1d\x15\x00\x2c\xa5\x1e\x43\x04\x13\x7c\xc7\x97\x11\x74\xe6\x6e\xf2\x1f\x5c\xe4\x3b\xd4\xee\x0e\x96\x5c\xb1\x5e\x67\x45\x1e\x5e\x16\xbd\xfb\x48\xe6\x04\xc0\x1c\xd3\x7e\x4e\x93\x19\x10\x93\xaf\x0a\x4e\x5a\x2e\xd8\x30\xe0\xb6\x13\x3d\xe3\xc0\xca\x63\xb6\x41\x9d\x46\xb8\x7b\x75\xd4\x98\xe0\x80\x64\x61\x1e\xb9\x6f\x76\x56\x92\xd7\x34\xda\xa0\x9d\x06\x09\xb1\xe2\x05\x2e\x34\x39\x88\x4d\xf8\xb6\x5b\xc9\x39\xc0\xec\x43\x49\x03\xcd\x59\x70\x87\xd4\xf6\x0e\xa1\xeb\x35\xd5\xeb\xeb\x05\xbb\x12\x5c\x83\xae\xa9\x06\xc5\xd6\xc7\x26\xf4\x2a\x53\x76\x67\x27\x66\x04\x33\xdc\xe0\x62\x5f\x6a\xaf\xf5\x55\x2e\xad\x6f\x0d\xad\x2f\x2c\x19\x2f\x80\xeb\x89\xb6\xd2\x03\xce\xb5\xf5\x33\x38\x90\x4d\x86\x8c\xfe\xac\x19\xab\x4e\x05\x09\x84\xbd\xa9\x7e\x27\xd8\xbc\x32\xdb\x56\x8d\x34\xb1\x22\x2f\x1a\x90\xaa\x25\x8a\xeb\x72\xb5\x70\xe4\xe4\x9a\x4c\xae\xc8\x60\xc7\x68\x72\x6a\x95\x5e\x21\x7d\xe9\x53\x8a\x18\x61\x74\x9f\x4d\xb9\xe5\xe0\x8b\xed\x61\x20\x2c\x06\xfe\xe4\xc5\xf7\xf2\xa0\x73\x6d\x64\xe1\xbd\xd1\x42\xf9\xce\x1e\xcb\x46\xc7\x62\x16\x3b\x65\xdf\x40\x62\xc8\xe7\x75\x33\x27\x52\x26\xcc\x46\x47\x2a\x41\xc9\x8f\x65\xc4\xfc\x53\x81\xf4\x61\x89\x6d\x5d\x8a\x19\xae\x3b\x5b\xb7\xf7\x24\x9c\xdc\x7b\x6b\x17\x1b\x34\x29\xec\xc2\xed\xc7\xe5\x7e\x84\xa5\x73\x99\xe3\x7f\xa9\xc5\xeb\x70\x92\x2c\xc2\x49\x7e\xe0\x02\xc5\x39\xcd\x7a\x83\x26\xb5\x23\xca\x5a\x53\xa2\x1f\x7f\x11\x13\xb2\x4f\xa2\x3a\xd9\x49\x57\x06\x8d\x24\x76\x0b\x95\xbe\x9e\xa7\xc1\xe8\x28\xaa\xb2\x8d\xb1\x09\xdb\x54\xb6\x3d\x1a\xd0\x1e\x65\x6c\x4f\x69\x71\x69\xfe\xca\x93\xa9\x14\xe0\x9a\x78\x84\x62\x76\xeb\x23\x2d\x00\xf7\x25\x14\xd8\x22\xfd\x86\xb9\x05\xea\xb1\xe2\xe4\xb6\x21\xa8\x39\x6d\xd8\xd2\xe0\xf3\x06\x70\x82\xab\x65\x27\x94\xc6\xc5\xd6\x75\x8e\xce\x72\xd5\x5e\x02\x06\x11\x09\x74\x86\x2a\xd3\x4e\x27\xad\x8e\xd2\xb4\x9f\xb1\x9a\xd3\xc5\xad\xf2\x51\xa2\xa4\xcd\xb8\x9a\x19\xeb\x14\x68\x44\x0c\xf3\x89\x7f\xf1\x83\xec\x43\x58\x38\xff\x48\x8b\x5a\xf6\x93\xc0\x72\x19\xbf\x07\xfa\xda\x08\x6a\x65\x04\x9f\x92\x8c\x23\xaf\xc5\x3e\x02\xb5\xab\x4d\xf7\xc4\xbe\xeb\xb4\xda\xb7\x0d\xe8\x22\x33\x5b\x5f\x65\xbd\x70\xa1\x2f\x41\x45\xa5\xc2\xf9\x15\x45\x92\x18\xb3\x2d\xe1\x01\x7c\x2c\x17\x7f\x2a\x30\x4c\x65\xce\xb7\xa0\x98\xb0\x4f\x07\xba\xb3\xce\x02\x64\x04\x39\xb8\x96\xb1\xaf\xf3\xf7\xe4\xa0\x87\xfb\xa3\xad\x28\x27\x3d\xf0\x89\xda\x2f\x4a\x4f\xef\xf9\x7a\x26\xf8\x8e\x09\x79\x9e\x18\xd7\xed\xc6\xb2\x3d\x1c\xd4\x7c\x5e\x7e\x8f\xd8\x06\x11\xf3\xf3\x3c\x23\xeb\xb5\x4e\x4a\xe4\x58\xc8\x9c\x93\x2a\x1a\x73\x42\x0d\x22\x4a\x6c\x18\x9f\x53\x44\x3a\xbe\xca\x5a\x61\x04\x5a\xa7\x8e\x2c\x20\x2d\x0f\xda\x0b\xbe\xa7\xb8\x7e\x2d\x0b\xc7\xe2\xdb\xbc\xe2\xb6\x40\xa2\x35\xa7\x9d\xd8\x87\x88\xea\x54\x6f\xa7\xaf\xb4\x92\x59\x9b\xa3\x1d\xc5\x3e\xf2\x8f\x2e\x2c\x5d\x3c\xb4\x02\x96\x62\x77\xaf\xc3\x3d\x3a\x3d\xb9\xdb\x74\xa4\xdf\x58\xe2\x2b\xd1\xa5\x32\x5d\xff\xd5\xf8\xd7\xf6\x59\x27\xa1\x11\xeb\x86\xab\x35\xa4\x72\x06\xed\xf3\xc4\x6d\x55\xc7\x88\xf4\xcc\xbb\x87\x12\x21\x8f\x30\x8b\x62\xaf\x76\x7d\x64\x0c\x40\x1c\x38\x27\xaa\x8b\x98\x5d\x16\xac\xac\x48\xf9\xec\x9a\x30\x9e\x35\x18\x7c\x95\x45\x09\x05\x03\x06\x7d\x18\x91\x5b\x19\xc1\x4a\xcf\x09\x44\x6f\xd5\x3e\xd2\x2b\x29\xaf\x22\x6a\x50\x57\x51\x49\xef\x85\x5c\xde\xd0\x75\x21\xa0\xf1\x01\xe2\x7a\xa8\x77\x01\xf4\xb8\x50\xb2\xdd\xd8\xae\x0c\x11\x8c\x74\xb6\xc7\x27\x04\xd5\xf5\x15\xa4\x0a\xe9\x63\x20\xf1\x9b\xae\xea\xeb\xa2\x7a\x72\x49\x82\xd8\xc6\xad\xe3\xd7\x8b\xd2\xab\x6d\xc0\x4d\x3e\x3a\x76\xe0\x0a\x33\x19\x81\x23\xee\xfa\x6f\x99\x3c\xef\x9e\x82\x32\xeb\xd5\x99\xa4\x69\xb3\x5b\x1b\xd2\x37\x4e\x5f\x37\xd2\x79\x0d\xd0\x80\x66\xce\x35\x51\xfd\xb0\x29\xf7\x6b\x67\xc4\x35\xe1\x7d\xc8\x0c\xc2\x25\xe3\x46\x2f\x6d\x99\xbb\xc1\xcf\x31\x77\xce\x6e\x85\x43\xbb\xc7\xb4\x65\x24\x4d\x55\x46\x9e\x51\x9e\x13\x35\x07\x8e\xe2\x34\x3e\x97\xaa\x0a\xc2\xb2\xba\xba\xe0\xef\xdb\x84\xae\x86\xbc\x76\x68\xcd\x9e\x18\xaf\x7e\xa7\xc5\x5e\x53\xba\x76\xd7\xdf\xee\xed\x21\x89\x32\x78\x7c\x3e\xd5\x35\x64\x03\xdd\xb8\xa6\xed\x9e\x77\xd0\x52\x2c\x18\x6a\x60\xd3\xe7\x00\x01\x4c\x94\xc7\x52\xa2\x6f\xa5\x8e\x89\xd6\xd2\x66\x37\x0a\x29\x70\xfb\x90\x30\x7f\xe0\x38\xf4\xe8\x68\x27\x6b\x2a\xc9\xa3\x1b\x27\x11\x83\xf5\x92\xa9\x72\x62\xcc\xc7\x8d\xf2\x3f\x87\x7f\x73\x70\x4d\x9f\x1e\xcd\x64\x76\xeb\xa2\x7b\x31\x40\xb6\x01\xe3\x40\x79\x90\x1c\x3e\x4a\x0e\xc8\xa0\xac\xef\x8a\x31\x79\x4f\x79\x9a\xca\x7f\x95\x38\x51\xe4\x85\x1b\x09\xbd\xb9\xb9\xa4\x15\xc9\x46\xc5\xb4\x9e\xc9\xd3\xb9\xca\xcf\xc8\xb4\x85\xa3\xb6\x42\x3c\x5f\x49\x06\xbf\xc5\x4d\xbe\x1a\x13\x71\xc4\x5a\x5c\x88\xa7\x70\x27\x81\x92\x86\xe7\x53\x41\xdb\xa6\x52\x93\x55\xc9\x11\x03\x04\x04\xcb\x8f\x30\xcd\x2b\xed\x73\xc5\xbe\xa0\x90\xac\x29\x2b\xf2\x62\x5a\x4d\xd9\x6c\x86\x64\x93\x69\xaa\x72\xaf\x15\x08\x17\xb2\x43\x71\x17\xa8\x47\x03\x18\x50\x2e\x83\x36\xdb\x09\xc7\x72\x18\x93\x06\xc3\x20\x26\xc5\x66\x63\x3b\x6b\xc2\xce\x9a\x29\x9b\xc9\x5e\xe4\x0c\xc0\xc0\x3a\x93\x98\x17\x7b\x3b\x31\xb8\xd5\x12\xc0\x88\x82\x8e\x79\xd8\x31\x17\x1d\xc3\x98\x15\xdc\x32\x28\xdc\xbc\x1b\xbb\x47\xd3\xe6\x73\xe3\xb2\xc2\x90\x88\x0a\xc3\xff\x07\xbc\xf8\xff\x1b\x26\x1a\x91\xeb\x20\x4f\x6a\x36\x4c\x0e\xde\x00\xfe\xb1\xec\xe9\x20\x19\xc2\xb2\x0e\x29\x1b\xc2\x14\x0d\x13\xcc\x0e\x72\xe2\xee\x92\xf1\x30\xb1\xce\x7a\x82\x22\x8a\x96\x9e\x14\xe2\x08\x00\x5c\xd7\x30\x39\x50\x29\x95\x59\xbb\x24\x73\x9e\x35\xe8\x20\x19\x27\x08\x87\xa2\x03\x53\xbb\xdd\xc6\xe0\xc4\xb3\xa1\x74\xc0\xea\xb8\x03\x56\x67\x52\xa2\x10\x08\xbd\x81\x24\x68\x16\xac\xae\x99\x0d\x8e\x8d\x8f\x41\xe8\x13\xad\x92\xf6\xe9\x03\xae\x34\x23\x92\x54\xf9\x57\x82\x5d\x85\x1e\x9f\xb6\x20\xe2\x25\xc6\xbd\x90\x9e\x51\x60\x5f\xd8\xc5\xe2\x7a\x52\xbd\x28\x80\xdb\x44\x37\xee\xc0\x9e\x18\x7f\x45\xb9\x85\x48\xb8\x85\x94\xcd\x81\x40\x36\x33\x8d\x7d\x81\x6b\xb4\x21\x26\xdf\xd8\x46\x6a\xbf\xb6\x05\xf3\xf5\xa0\x9b\x03\x38\xf2\xe8\x38\xe2\x59\xb5\x23\x36\x50\xd2\xb7\xa5\x54\xb9\x6d\x91\xfc\x71\x93\xdf\x6d\x06\xbe\x1b\x66\x44\x99\x62\x8c\xeb\x6e\xea\x33\x86\x06\xdc\x55\x3b\x5c\x49\xed\x96\x89\x96\x62\x48\xb2\xff\x66\x58\x27\x59\xe3\x41\xd8\xb6\x90\xa2\xcd\x7b\x92\xdf\x6d\x10\x0e\x9e\x4d\xd9\x2c\xe7\xe3\xb3\xa5\x76\xff\x71\x5c\x03\x18\xa6\x08\x4d\xb2\xc6\x49\x61\x0b\x6d\x3a\xd9\x02\x65\x83\x4e\xce\x5b\x36\xcb\xa9\x67\x05\xe9\x6a\x3e\x1a\xb9\x05\x23\x3d\xf6\xca\x01\xda\xd4\xb1\x65\x3e\x94\x59\xc3\xf1\xde\xbf\x2b\x0b\x5e\x4c\x5c\xd5\x39\x93\x0e\xac\xbc\x17\x9d\xb5\x19\x9f\xcd\x6b\xb1\xe2\xfc\x55\x77\x74\x6f\xeb\x3f\xbd\x79\xf9\x4d\x46\x30\x7c\xa0\x92\xb6\x76\x16\xe7\xa2\xb8\xf4\x12\xd9\x51\x34\xaa\x11\xd1\xb0\xee\x16\x76\x76\xbd\x4e\xd8\x4a\x6c\x14\xe7\xd9\x89\x4c\x3e\xc1\x31\x2d\x27\x64\x33\x91\xbf\xb2\x2e\xfa\xf4\x49\xf8\x60\x42\x90\xa3\x2a\x85\xbc\xaf\xb4\x94\xf1\x65\xc0\x03\x77\x19\x9e\xae\x5c\x07\xf4\xa6\xe9\x84\x8a\x68\xc4\x61\x5a\x2a\x6e\xcb\x50\x1f\x70\x76\x8e\x1c\x19\xe2\x00\x34\x6a\x3f\xd5\x32\x27\xd8\xbf\x87\x70\x72\xc6\x8b\x8b\xc4\xc6\x8d\x1d\x88\x13\x6c\xb2\xed\x10\xcd\xdb\xea\x54\x9e\x26\x07\x43\xa8\x18\x0e\x22\x70\x22\x5b\xf6\xec\x0c\x86\x1a\x91\xe7\xd5\x1b\x99\x05\xcb\x62\xdf\x7a\x92\x40\x0f\xcb\xa9\x34\x14\xda\x03\xae\xcb\x1a\x4b\xa7\x5f\x12\x84\xe6\x74\x1d\x1a\x3d\x26\xac\x35\xea\x1f\xc1\x80\xdd\xa9\x6a\x93\xd1\x11\x76\x1d\xd5\xc1\x87\x4f\xf1\xab\x86\x09\xec\xac\x68\xe8\x75\x1c\x86\x07\xdd\x77\x0c\xc7\xfe\x18\xc0\xb3\x2b\x50\x19\x84\x7a\x08\x3d\x17\x01\xb7\x3a\xe8\xd1\xaa\x9a\x90\xd7\xae\x5e\x4c\xab\x28\xfa\x7d\x61\x05\xe3\xbf\x53\xd7\x2a\x87\x5b\xba\xd1\xc5\x6f\xeb\x3e\xb5\xa3\xcf\x83\xbb\x72\x08\x4e\x60\x72\xdb\x04\x8d\xcf\x8a\xb2\x34\x2a\xe8\x1d\xd1\xd8\xde\xc4\xec\xd7\xba\xce\x59\x22\x95\x4c\x9d\xc8\x68\x77\xd1\xf7\x6b\xd0\x24\xf7\xa8\x6d\x24\x78\x44\x57\xb5\x57\x63\x10\x13\xa4\x92\xf9\xa1\x47\x47\xfe\x5e\x50\xf1\xe3\x05\x8f\x38\x1a\x4b\xde\x75\x08\x11\x15\x17\x0a\xef\x5d\xcc\xa1\x5a\xc1\xfe\x15\xca\x38\x26\x53\x3e\xf3\x76\x87\x8f\x1d\x10\x39\xff\x32\xb2\x1b\x80\x7f\xc4\x15\x4e\x94\x13\x8f\xdc\x1e\x72\x06\x42\xf9\x56\x31\x49\x83\x98\x82\x5d\xd6\x90\x29\x19\x7a\x5f\x67\x81\xb6\x15\xad\xd7\x3a\x5f\xa6\xec\x57\x8d\xd7\xed\x1e\x60\xc4\xcd\xc0\x22\x05\xba\x07\xcb\x95\x8d\x69\xb7\x82\x56\x71\xd9\x55\xe9\x21\x56\xee\x4c\x2a\x41\x53\x43\x53\x5a\x0f\xdf\x7d\x27\x96\xd7\x92\x89\x8f\x60\x14\x7f\xa1\xf0\x74\x0d\xf9\x86\x3c\x54\x6a\xae\x0e\x92\x47\x89\x3c\x45\x2a\xb8\x2f\xb4\xe1\x7b\x3a\x45\x1b\x1e\xa8\x8c\xf6\x23\x23\x77\x5c\x12\xad\x36\x04\x66\xa2\x93\x11\x40\xb0\x0f\x03\xc7\xcc\x27\xf3\xe0\x01\x1b\xff\xdf\x6e\xc6\x22\xc9\xb3\x60\x8e\x3c\xf6\x83\x82\xc6\x4b\x14\x26\x24\x5a\xda\xf8\xf0\x3b\x03\xcc\x1b\xad\xb9\x6f\xc2\x6c\x98\xbb\xc0\x7e\x6d\x1a\x23\x00\x81\x0e\x30\x70\xe9\x22\x73\x2f\x5c\x7d\x09\xdf\x59\x7f\x2b\xa7\x01\x08\x58\xad\x68\xd9\x79\x51\xd1\x52\x32\x1d\x03\xdf\x2b\xb2\x27\x1b\x57\xc7\x94\x80\xf6\xb8\xdd\x37\x7e\x16\x4f\xe0\xff\x62\x29\xb1\x9d\x6b\x5f\x3b\x89\xa1\x6e\x82\x4f\xa8\x6e\xb3\x75\xda\xb8\xd3\x48\xf5\x4e\x06\xeb\xfd\x93\x50\x47\xb2\x4e\x07\x11\xa8\x7d\xd5\x3d\x87\xf2\xa0\x4e\x10\x80\xe3\x44\xb3\x92\x9b\x61\xd3\xd9\x55\x01\x1f\x6e\x8a\xdb\x24\xe3\xf6\x50\xf6\x25\x19\x37\x43\x71\xca\x7a\xa2\xa0\x12\x38\xe7\x8e\x02\x0c\xf8\xfc\x90\x90\xc5\xc2\xa4\x40\x78\x22\x98\xf8\x1e\x2a\xce\xcb\xee\xbe\xed\x14\xc9\x3b\x9f\x23\x6f\xf6\xbd\xe6\xd7\xab\x61\x66\x37\x08\x2d\x26\x37\xc3\x37\x44\xdb\x5b\xfd\x97\xce\xe2\xea\x43\xbb\xe7\xba\xea\xe2\xce\x92\x9a\xb0\xe5\x58\xea\xd8\x4e\x70\xb3\xfd\xea\x50\x16\xdf\xef\xcb\xc3\x5a\xf6\xeb\x3b\x51\xd7\xd3\x19\xea\x8b\xc8\x76\x72\xaa\xdb\xc0\xdf\xed\xd9\xd9\x1d\x3f\x76\x5d\xd9\xb0\x94\x3d\x55\x47\x5e\x0c\xa8\x84\x2d\x2f\x49\x98\x46\x97\xca\x87\x98\x86\xf9\xd5\xdf\x13\xd7\x8f\x91\x2e\xb2\xde\x10\x31\xc7\x1b\x86\xcf\x70\xd3\xe3\x8c\x72\x8c\x44\x3b\x4d\xbf\x5b\xcb\x91\x49\x95\xba\xcd\x61\x4c\x6a\xb0\xea\x34\xf5\xaf\x94\x06\xee\x99\x34\xad\xad\x07\x99\xf9\xd3\xf3\xe2\x10\xcf\x7d\xcf\x32\x89\x56\x60\x1c\x4a\xb7\x8c\xf0\x18\xc9\xaf\x73\xe5\xd0\x17\xed\x1b\x5e\x54\x44\x7a\xe5\x58\x0c\x96\x53\xe2\x25\x5a\x11\xc2\xf3\x3b\xe2\xc0\xa1\xbe\x23\x3a\x50\x97\x20\x67\xa7\x89\xab\x95\x80\xf7\xa5\x11\xf0\x04\xdb\x91\xa6\x2a\x26\x5c\x0f\xda\x12\x86\x93\xa7\x19\x57\x28\xfe\x0e\xb8\x8b\xed\xe8\xd5\x3f\x35\x66\x8d\xe8\xf9\x35\xf1\xd2\x13\x8b\x47\x6f\x77\x83\xa5\x9c\x9d\x79\x70\x29\x0e\x52\xc4\xee\xa4\xe8\xdb\xbc\x60\x5c\x3f\x82\x33\x45\xa6\xad\xae\x66\x7b\x50\xb1\xab\xb5\x6a\x7a\xb4\x56\x3a\xe1\x12\x66\xb8\x99\xb2\x99\x4e\xaf\xb2\x23\x32\x25\x36\xaa\x7b\x44\x3b\xff\xc8\x81\xbd\x6d\x0a\xd6\x2e\xea\xe6\xca\xb1\x8b\xff\xf4\x03\x04\x9d\xbc\x4c\xb5\x1c\x1d\xab\xcf\xe8\x2d\x28\xa9\xca\x2e\x55\x77\xd5\xb1\xf7\x5c\x5e\xa3\xad\xbd\xff\xf7\x61\xc9\xc2\x8a\xed\xad\x36\xe1\x4e\x05\xa7\xab\x60\x93\x39\xb7\x13\x33\xce\x04\x75\x62\x71\xf7\x6b\x82\x4f\xc9\x0c\x08\x25\x34\xd0\x98\xab\xc4\xce\xc0\xc7\x9c\x30\x37\xa2\xf2\xeb\x62\x99\xa9\x01\x13\xc6\x1b\x69\xf1\x42\x0e\x27\xe0\x4c\xe5\xe3\x5b\xc0\xc4\xdd\x67\x24\xf7\xd8\x62\x7b\x0c\x46\xdc\x90\xaf\x3a\x37\x24\x93\x0f\x4d\xa6\xf9\x27\x44\x29\x9d\xc1\x1a\x43\x4a\x7b\x65\x7e\xff\x4f\x4f\x6b\xbf\xde\x42\x58\xc1\x94\xa4\x15\xfd\x0d\xc8\x5d\x77\x26\x02\xa3\x55\x7e\x4f\x51\xe4\x22\x19\x9a\xe3\x63\x53\xdd\x2e\x7d\xbc\x1f\x65\x7a\x70\x1f\x41\x5a\x4d\xf7\x81\x92\x9c\x15\xd2\x81\x0f\xf9\xc4\xe6\xd5\xaa\x0c\xa0\x91\xec\xa0\x3a\x98\x35\x72\x48\xc4\xeb\x9b\xf8\x3a\x14\x77\xa4\xb6\x3e\x0c\x8a\x47\xc7\xd3\x04\x0f\xfc\x91\x35\xfa\x2f\x7b\xff\xd8\x94\x6c\x16\x37\xcd\x8e\x39\xce\x6b\x1a\xf1\xd2\x14\x34\x72\x97\xad\xda\xf9\x52\x21\xf6\xbd\x33\xce\x69\x19\xea\x2c\x5b\x48\x1e\x77\xca\x62\x30\x2f\xa6\x6b\x99\xc5\xa9\xd3\x2b\xcc\x27\x34\xe5\x9c\x65\x73\xe6\xb6\xb7\xef\xb6\x63\xaa\xc8\x33\xf8\x7d\xec\x0c\x7e\xef\x9e\xc1\x17\xfa\x0c\x42\x7d\xe0\x10\xc7\xe4\x3d\x27\xac\xcc\x9e\x10\x0c\x30\xae\x93\x8e\x43\x41\xbb\x5a\x92\xa6\x07\x0c\x5e\x29\x66\x5c\xbe\x50\x6a\xba\xe5\x2f\x99\x0b\xd6\x44\xbb\x2a\x4c\x1c\xef\x17\x1c\x5a\xf5\x04\x90\x06\xdd\x18\x55\xc9\xab\xd8\x3f\x65\x7b\x6a\x91\x56\xaa\xb4\x62\xa5\x55\x18\x6f\x43\x96\x55\x31\x27\xfe\x67\x04\xf9\x94\xde\x42\x9a\xf1\x76\x55\xf1\x61\xbd\x18\x16\xc3\x96\x34\xd7\xa4\x19\xfe\x63\x45\x9a\xdb\x61\xb6\xa8\x9b\x61\x51\x55\xc3\xae\x1a\x08\xd2\x2d\xb5\x68\x48\xdb\x21\xbd\xba\x5a\x01\x15\x19\x0f\xdf\xd6\xc3\xab\xba\xa4\x8b\xdb\xa1\xfa\xea\x16\x43\x6e\x7f\x93\x84\x2e\x11\xb7\xec\xed\x92\x4c\xe4\xdc\xab\x24\x7b\x65\xe6\x2e\x79\x2c\xc6\xdd\xeb\xfd\x64\x0f\x9d\x81\xd2\x77\xa3\x71\x43\x8a\xf2\x25\xab\x6e\x33\x84\x25\x36\xfa\x29\x7f\xa2\xc2\x52\xba\xb6\x90\xd0\x8d\xc3\x30\xcb\x63\x5d\x37\x23\x7e\xe6\x57\x2f\xd2\x50\xaa\x5f\xe2\x37\x8e\xe0\xcb\xbb\x5e\x22\x7a\x99\x13\x84\xba\x61\x36\x76\x41\x07\x76\x73\x39\x75\xb0\x16\x78\x34\x5b\x21\xfb\xcf\xe2\xd1\xfa\x24\xbe\x4d\x70\x14\x2b\xaa\x0b\x21\xa5\x81\xa5\xba\x83\x38\xf6\x92\x29\x46\xf7\x23\xc7\x7c\x83\xcf\xba\xd3\x13\xcf\x07\x76\xaa\xd2\x89\x3a\x56\xa3\x3b\x69\xbe\x9b\x8c\x8e\x36\x68\x83\xcf\x96\xab\xf6\xd2\x0f\xf7\x9e\xf4\xeb\xea\xdd\x65\x14\x15\xe5\x3d\x27\xed\xc9\x4a\x61\xff\x41\x6d\xc9\xaa\x6e\x6b\x6d\x71\xdd\xb3\xfa\x58\x81\x75\x38\x36\x10\x17\xb2\xc3\xf9\x52\x0f\xbc\x43\xcd\xdf\x58\x27\x58\x1d\x4b\x98\x53\x89\x23\x2c\xee\x9f\xfe\x60\x3d\xb2\x41\x0a\x83\x34\xda\xaf\x2a\xe5\x3c\xb7\x12\xe1\x7b\x13\x16\xaa\x83\x29\x1a\x98\xf5\x92\xb6\x6d\x3d\xa7\x05\x07\x33\xc9\xcb\x1b\x26\x6b\xb7\x3d\x1b\x5e\x6b\xbc\x1d\x99\x73\x1b\xb6\x0b\x0f\x74\x3c\x03\x19\xfa\x0d\x2a\x03\x9d\xc0\xee\x6c\xc5\x1a\x72\x41\x5b\x4e\x1a\x31\x04\x65\xf3\xec\xd0\xe9\x2b\x65\x0b\xb5\xa5\x9d\xef\xd4\x16\xd1\x1b\x5a\x69\xac\x82\x2e\xa1\x8f\xf6\x63\x1c\x23\xfb\x26\x22\xeb\xea\x55\x03\x1d\x41\xf8\x5a\x71\x12\xf8\xc8\x5c\xb7\xfd\x37\xcc\x06\x9f\xf9\x1e\xe4\x93\x1e\x0f\xf2\xaf\xb5\x3e\xdd\x2c\x80\x60\x49\x12\x48\x6c\x83\xbd\x6b\x3e\x72\x16\xfb\xf7\x7b\x7f\x12\x58\x7f\x58\x12\x03\x64\x83\xf0\x53\x92\xbf\x20\xfa\x52\x8d\xdf\xa8\x91\xfb\xd2\xdf\x31\xeb\xb5\xba\xa5\x1d\x8e\x64\xd7\x25\x0c\x97\x57\x6e\xff\x74\xaf\x4a\x08\x47\xce\xed\x9f\x3a\x45\xfb\x8f\xbf\x2b\xc1\x1d\x2a\xbc\x26\x83\x0b\x32\x41\x51\x32\x28\x0f\x4d\x38\xf3\x40\x10\xc5\x21\xef\xbc\x81\x1e\xed\x79\x25\xe3\x33\x78\x12\x12\x4d\xc9\x83\x8a\x2e\x5b\xc2\x7b\x49\x9c\xd1\x87\x04\x47\xb5\x25\xdc\xd2\x36\xc3\xdd\xf8\xa6\x66\x17\xae\x5e\xdf\x08\x93\xd1\xb1\x0c\x00\xf7\x30\xc6\xee\x74\x16\x7c\xa4\x22\xc2\xbb\x6f\xe1\x39\xd2\xf2\x82\x3e\xc3\x67\x85\x3e\x6b\x7f\xa5\xfc\xd2\x3d\xc7\x4a\xd9\x6e\xac\xe3\x4e\x12\x09\xed\x45\xd7\xac\xd8\xb8\x66\x73\x75\x1e\x12\xe5\x19\x95\x60\x27\x6b\xce\x06\xe1\x6f\x48\x14\x17\x06\x7f\xd5\x2b\xea\xf8\x70\xbb\x8e\xea\x3f\x08\xf7\x3a\xee\x60\x88\x58\xcc\x91\x8a\x5e\xfb\x2e\x1e\xfd\x90\xa9\x0a\x18\x74\x4b\x09\x25\x56\xbc\xaa\x97\x2b\xc8\x02\xed\x35\x3c\x9d\x6d\xb4\x26\xb0\xa3\xca\xe2\xa1\xc3\x48\xcc\x43\xc4\xee\x29\x30\xdc\x91\x5d\x50\xa5\x32\x87\xc8\x0e\x34\xd3\x23\x2f\xe0\x46\x95\x06\x87\xbb\xac\x01\x0b\xdc\x94\xcf\xd6\xeb\xe9\x0c\xe9\x14\xa6\x69\xfa\x0d\x71\xb0\x7a\x0a\x18\xa5\xca\xc9\xa7\xa6\x61\x01\xbd\x6f\xc4\x6e\x92\x7f\xbf\x92\xcd\xfa\x9b\xff\x79\xdd\x7c\x6d\x94\x7d\xfe\x41\xb0\x72\xf7\x74\x86\x59\x7e\xf4\x90\x59\xe1\xdb\x78\xc6\xd1\x9c\x4f\xd9\x6c\x40\xf7\x41\x6c\xa5\xbd\x58\xa6\x19\x32\xee\xa7\x16\x81\x30\xba\x33\xa6\x64\x36\xa8\xd3\x74\xeb\x48\xa7\x33\x95\x76\xd7\x0c\x97\x5a\x47\x3e\x48\xfb\x53\xe4\xfd\xb8\xaa\x19\xc2\x6d\x5e\x8f\xfd\xfb\xb7\x58\xaf\x6b\x17\x58\x55\x1e\x32\x82\xc0\x1b\x0d\xc6\x5d\x23\x0c\xd6\x7f\x70\xc8\x29\x40\xa3\x60\x9f\x9b\x9b\x1b\x6d\x1a\xc7\x89\x59\xec\x8c\x0e\xf7\x96\x35\x68\xc0\xfc\x42\x31\xc6\x2c\x63\x68\x93\xd5\x10\x6b\xe2\x14\x76\x37\xac\x49\x53\x9c\x1f\x3d\xe4\x5f\x18\xc7\x46\x7e\x70\x80\x7e\x20\x19\xf8\x22\x6c\xc0\x15\x4e\x6f\x90\x3e\x87\x6f\xbd\x1f\x4d\x83\x90\x51\x6e\xe7\x69\x24\xc8\xd9\x88\x3b\x37\x9f\x76\x8f\x80\xe1\xb4\xb7\x6c\xfe\x95\xbf\xf2\x5b\x34\xa4\x6a\x10\x53\x2e\x16\x5f\x8a\xc0\xb4\x75\x32\x30\x8f\xd8\x7a\x0d\x5a\x18\xed\xf6\x5a\xe7\x7e\xb0\x27\x1c\xe9\xaf\x8b\x25\xc8\x4e\x08\x17\xce\x25\x53\x1b\xbe\x04\xe5\xb9\xe7\x1e\x69\x9e\x4b\xb0\x92\xf5\x7a\x54\xa0\x3b\x66\x4c\x58\x7b\x7f\x75\x13\x20\x65\xd8\xaf\x41\x66\xc6\xb5\x8e\xe2\x9a\xb6\xf4\xbc\x0a\x76\xc2\x63\xc0\x2f\x15\x03\x5f\x89\xad\x5f\xe5\x47\x0f\x2b\x0b\xb2\x59\xe9\xad\x3f\xcf\xdb\x69\x35\xc3\x8b\x7c\x1e\xec\xed\x91\xa0\x33\x0b\xb5\xa1\xd3\x34\x5b\xa8\x6d\x8c\x57\x72\x07\xcf\x11\xda\xac\x54\x73\x7d\x7b\x76\xa5\x08\x8d\xc9\x0b\x70\x5a\x55\xbd\x61\x3b\xb1\x33\xcd\x3d\x67\x6f\xdc\x91\xaa\xe0\x4e\xf4\xaa\x85\xc1\xb2\xbb\x7a\x80\xb8\x15\xc5\x35\x75\xb7\x97\xd8\x7e\x0e\xe0\x41\xb3\xc7\x84\x13\x34\x50\xfd\xb9\x86\x67\x7d\x1f\x37\xa8\xe7\x6e\x83\xd0\x16\x27\x16\x92\x6f\xed\x25\x8f\x9f\xe8\xfe\xfd\x4b\x90\x72\x29\x68\xf1\x3e\x84\x1b\x16\x7f\x5f\xc2\xec\xb8\x81\x74\xbf\x39\x7a\x40\x5f\x58\x58\x1d\x8b\xf2\x44\x0c\x18\x86\xe6\x67\x39\x5c\x6e\xb8\x83\xbc\xe3\x72\x55\x8a\x09\x82\xd7\x1b\xc3\xef\xf9\xc7\x9d\xa3\x34\x7d\xac\x0e\x95\x33\xca\xd3\x7e\x8e\xa0\x0f\x66\x2c\xde\x7e\x83\x4e\x1e\x93\xac\xc1\x34\x7f\x1a\xff\x30\xe0\x3d\x27\xbc\xf3\x81\x4d\xe4\xe3\xdc\x0f\xc2\xf7\xe4\x1f\xd9\x56\xfe\x91\x19\xfe\x11\x4d\xee\x3d\xd4\x1d\x23\xdd\xec\xc3\x66\xe9\x1d\x83\xa9\x58\x84\xa8\xe8\xb9\x07\x6f\x15\xdb\x50\x64\x4c\x59\x49\xde\xbf\x14\x87\x59\x14\x3a\x3c\x1e\xe5\xb9\x71\xb2\x91\x89\x22\x00\xc2\xe7\x18\xe1\xd1\xd1\xc0\xc0\x8a\x67\xbb\x07\x8d\x09\xf2\xef\x95\xce\xc9\xe5\x33\x21\x88\x13\xa9\xd0\xf7\x88\x76\xa4\xa8\x24\x88\x7d\x1c\x7b\x70\x5a\x1e\x6b\x2c\x00\x3e\x76\x64\xf1\x1e\x2c\x85\x2e\x6c\x42\xd8\x7d\x8f\x72\xc1\xca\x48\x91\xf1\x3a\x68\x0e\x68\xaf\x35\xd6\x5d\x3c\x27\x5d\xdc\x42\x00\x48\xe0\x31\x4c\x88\x88\x64\x70\x84\x77\x31\xb3\xce\x9c\xa0\x4d\xe0\x59\xf1\x5c\x25\x57\xb5\xc3\x37\xaf\x7e\x20\xee\xe6\xf2\x6f\x3d\x1e\x9f\x22\xde\xc3\x6d\x41\x64\xa1\x98\x17\x03\x88\x6b\x7a\x79\xdc\xb5\x53\x61\x66\x03\x49\x9a\x2f\x98\xb4\x55\x91\x69\x33\xf3\x07\x01\x17\x2d\x77\x93\xcd\x7c\xeb\xb8\x89\xe0\x5a\x8e\x5d\xb3\x23\xa7\x19\xdd\x5f\xef\x50\x4b\x2e\x05\x49\xe0\xde\x36\xe7\x0e\x6a\x99\x60\x14\xa4\x76\x11\x40\x12\x38\x6e\x31\xc3\x82\x98\x48\xbd\xdc\x97\x32\xd8\x49\x11\xcd\xff\xd0\xe5\x84\x9c\xff\xeb\xe4\xa0\x39\x48\x7e\x9d\x88\x93\x67\x8c\x5b\x2b\xd4\xd1\x0e\xa8\x7d\x63\xfa\x50\x2a\x36\x52\x0e\x57\x4c\xda\xd4\x4a\x0c\x27\x67\x78\x53\xb4\xc3\x6b\xd2\xdc\x0e\x2b\xfa\x8e\x54\xb7\xc3\x62\x78\x45\x5b\x5e\xbc\x23\x46\xa4\xcf\x56\xf9\x97\xd9\x0a\x73\x5c\x75\x91\xb4\x88\xb6\x00\xfe\x25\xe3\xe3\x56\x03\xa3\x36\xea\x2b\xc5\x87\x29\xf4\x95\x44\x8f\xc4\xf1\xf5\x90\x8c\x8c\xe0\xa3\x5d\xed\xe0\xb3\xf7\xbc\x29\xe6\x7c\xb8\x2c\x6e\x2d\xa2\x6d\xe3\x2c\xf7\x97\x24\xb8\x2a\x70\x0f\x92\x84\x7f\x75\x10\x74\x22\x1d\x57\x38\x9a\x88\x85\xd9\x64\x1c\xa0\x19\x71\x47\xfd\x47\x21\x65\x07\xae\x55\x96\x8e\x41\x27\xf1\x90\xee\x9d\x8c\x69\xa9\x10\x69\x88\x2c\x4a\x3a\xf1\x37\xa4\x1b\x7f\x63\xfc\x82\xbc\x37\xb8\x88\x5c\x85\xbd\x5d\xeb\x5e\xa5\xe5\xf8\xaf\x4d\xb1\x5c\x92\x06\xd7\x79\x03\x39\xbb\x70\xa1\xf7\x1b\xe8\x5e\x5a\xc1\x60\x18\xcc\x12\x2f\xc0\xa7\x50\x88\x5e\x0a\xed\x71\x95\xd3\xf1\x16\x23\x34\x43\xd3\x76\x06\x37\x9f\xf4\x83\x55\x51\x36\xaa\xed\x3f\x93\xdb\x49\x8b\xc5\x8b\xc9\x6a\xb3\xd9\x98\xc1\x6e\xb2\x06\x73\xf0\xbb\x12\x3d\x29\xcf\xc1\x36\x2f\xc6\xb6\x1e\x5e\xe5\xb2\x49\x5c\xe5\xf5\xb4\x9d\xa5\xa9\xf8\x2f\xac\xcf\xc0\xf5\x9f\x5d\xa5\xa9\xd9\xf6\xd5\x7a\x9d\x89\x52\x50\x01\x50\x2a\x4c\x9d\x78\x4c\x21\x44\x46\xc2\xc2\x36\xce\xe4\x14\xf9\x1d\x2d\x27\x54\x5a\x82\xea\x8d\xd7\x1d\x3f\xc9\x58\x4e\x1c\xc1\xbf\x40\x13\xf9\xe4\x6e\x83\xbd\x4b\x5f\x9c\x5f\xe4\xa4\xee\xae\xf0\x0a\x73\x84\x36\x1b\xc8\xd2\x4b\x30\x43\xd8\xeb\x46\x90\x32\xd9\x33\x0c\x09\x9e\xba\xa3\xf2\x16\x61\x92\xd1\xfc\x6e\x83\xe9\x14\xac\xdf\xb3\xfc\x0e\x58\x12\xee\x62\x1a\x2a\x8d\x15\x86\x80\xa7\x7a\x83\x29\xda\xf4\x70\x68\xda\xae\x5b\x0a\xd9\xd9\xfe\x92\x0e\x7e\xe6\xa7\x09\x45\xe5\xf6\xe0\xfd\x25\x3c\x78\x01\x51\x13\x07\x66\x49\xc8\xbb\xd3\xaa\x12\x3f\x85\x8c\x1f\x28\x89\x33\x26\x48\x61\xc4\xa6\xa0\xa0\xa6\xb3\x2d\x26\x04\x6b\x8d\xc1\x54\x92\x8b\xc2\xb1\xf5\x64\x6d\xfe\x65\xd6\x62\x8e\xfb\x28\xe8\x69\x55\x49\x52\x42\xef\x4f\xc5\xa8\x47\xc5\x4e\xab\x2a\x46\xc4\x42\xe9\x0b\x66\x64\x17\x65\xd3\x23\xfb\x95\xe5\x0c\x37\x89\x54\xc0\xfc\x83\xe4\x45\x96\x3c\x7d\xf6\xf8\xdb\x3f\x1e\xf2\xf6\xf0\xbc\x29\x58\xe9\x66\x6f\xfb\xab\xe7\x92\x67\x57\xe9\x8f\xff\xf4\x5e\x1b\xdf\x11\xfc\xe7\x5d\xda\x4c\xcf\x1d\x6e\xfa\x0f\x32\xf3\x5d\x25\x04\x3f\x22\x67\xda\xc0\x16\xb4\xd1\x84\x5e\xe6\xb5\x2c\xdd\xee\xd1\x4c\x98\x02\xa9\xd3\x84\x56\x61\x6e\xf3\xc9\x3b\x13\x54\x44\x9d\x8d\x7e\xf4\x25\xe5\xf6\xe3\x94\x05\xd3\x1d\xb5\x20\xd0\x41\xe7\xbd\x4a\x18\x41\x59\xb3\xed\xc3\xde\xfa\xd6\x55\x6e\x62\x2e\x58\x77\xe3\xb9\x11\x9b\x24\xbd\x4a\xf1\x09\x3c\xf2\x50\xe3\xd4\x47\x5a\x5d\xf6\x80\x8d\xbf\xaf\xa9\x7f\xca\x99\xc3\x7f\xb6\xb7\x6c\xee\x45\xdb\x26\xb8\xc1\x8d\xaf\xd1\x09\xc7\x2f\xcd\x3c\x98\x6e\x8d\xcc\xf1\x02\xcc\x5f\xaa\x9f\x98\xe6\xe7\x99\x33\xd2\xed\x70\xce\x0c\x59\xe5\x95\x2e\x2f\x68\x5e\x46\xd1\xa0\x4e\xd3\x58\x64\x50\x26\x57\x74\xdb\xe8\xc3\x34\x83\xc7\x3b\x26\x3f\xa2\x1c\x0c\x9b\x1c\xec\xda\xc3\xdb\x8f\xc0\xa0\xa3\xea\x50\x5f\xab\x63\xd4\x2d\x3d\xc9\x3f\xd3\x53\x2a\x18\x6c\x71\x20\xa6\xcd\xc1\xf1\xcc\x5c\x07\x19\xf3\xa6\xc6\x03\xcb\xc9\xa8\x4c\x98\x39\xee\xf1\xc1\xdb\x79\x74\xfa\x7c\xf7\xe4\x31\xea\x67\x65\x76\x36\xbc\x85\x0b\x92\x6d\xc7\x19\xaa\x2d\x5a\xd2\xc0\x47\x84\xf8\x6e\x0a\x5b\xfb\x13\xd2\xe1\x99\xe5\x96\xdc\x05\xc1\x8d\x3b\x1a\x05\x45\xfc\x93\x0f\x4a\x23\x39\x77\x07\xb6\x03\x42\xc7\xe7\x27\xcc\x99\xac\xef\x73\x26\xa9\xe0\x35\x62\x67\xb2\x46\x83\x22\x4d\x8b\x78\x18\x2e\x73\x86\xd7\x07\xe0\xf4\x71\x46\xa7\x8e\x62\x0f\x49\xcf\x6a\xec\x0e\xa5\x1f\xe0\xe9\x27\x9c\xaa\x10\x26\xca\x1d\x60\x1c\xd3\xe7\x27\x1c\x9c\x33\x00\x35\x30\x1b\x08\xd4\x8b\xdc\x8b\xa9\x20\x6a\x74\x91\xf1\xf5\xba\xd1\xa6\x28\x3d\xcc\x01\xbb\xcf\x30\x6b\xb4\x21\x55\x4b\x86\x54\xb0\x43\x4c\x45\xcb\x91\xcd\x20\x42\x45\xbc\x81\x01\x98\x82\x18\xae\x13\x90\xde\x19\xac\x5b\xdb\x0d\x5c\x97\xaf\xe1\xa4\xc7\x93\xf3\x7d\xe2\xbb\x4d\xc7\xe0\x00\x21\xf7\x86\x20\xaf\xb7\x92\xb6\xf3\x9a\x31\x32\xef\x26\x70\xfb\x09\x2e\xdd\x28\xac\x6a\xd6\x71\xa2\xb7\x91\x68\x10\x7f\xd3\xe7\xd0\xe9\x8f\x4c\xfa\x70\xfe\x31\xe6\xc3\xf9\x47\xc7\x87\xd3\x32\xe6\xbf\xfa\xa7\x66\xc0\xcd\x30\xff\x8f\x0e\xd9\xb1\x68\x28\x8e\x1e\xc9\xc4\x09\x2a\x85\x12\xe8\x8a\x2e\x8b\x96\xfd\x9a\x0f\xcf\x09\x61\x43\x85\x89\x4f\x5b\x52\x0e\x0f\x87\xe0\x06\x93\x21\xaf\xc4\x1c\x80\x74\x1c\xcf\x10\xe0\x9a\xff\x46\xf0\x9f\x08\xfe\xef\x1e\x2f\x07\xc2\x73\xe5\x98\xf8\xec\x9b\xbf\xe0\x50\x40\x6b\x70\x61\xa7\xb9\xcd\x74\x40\xb8\x92\x00\x79\x4e\xe2\x8e\x38\x12\xb9\x0b\xb9\x2c\x68\xfe\x04\xf3\x08\x60\x05\x84\x35\x7c\x65\x52\x10\xfc\x1f\x92\x71\xf0\x01\x51\x78\x00\x74\x0e\xb7\xa1\x2e\xac\x45\x09\xa3\xa6\xdd\x92\x3c\x76\x7c\x66\xe5\xca\xed\xc5\x1c\x7d\x0e\x0c\xe7\xcf\x24\x83\x71\xc0\x5b\xc5\xce\xbd\x29\xae\x09\xb0\x70\xda\xcd\xb2\xf4\xc1\x6e\xbc\x57\x41\x2a\x1a\xf9\x4e\x35\xf4\x9c\xf0\xf9\xa5\x0e\xe6\x00\x3b\xb4\x78\xd0\xfd\x40\x71\x77\x5d\x15\x96\x03\x78\x43\x9a\x6b\xea\xa4\xf6\x1d\x9f\x09\xd1\xf6\x1d\x29\x4f\x25\xf3\xfe\x8f\x15\x69\x1d\xe7\xfa\x71\x0b\x01\x74\xa7\x6d\x4b\x1a\xfe\x35\xe1\x97\x75\xf9\xa4\xa8\xaa\xf6\x25\x33\x0a\xeb\x37\x20\xef\x09\xd9\x4b\x15\x7e\x2b\x1a\xf4\x9b\x83\xb7\x17\x84\x91\xa6\xe0\xe4\x0d\x2f\xe6\xef\x44\x21\xd2\x3e\xaf\x9b\xb7\xb2\x7b\xbf\xa8\x1c\x94\xdb\xc6\x1b\x5e\x34\x3c\x1c\xb5\x5b\xe0\x19\x2b\x9d\xd7\x67\x00\x8d\xff\xd7\x82\x72\x67\x36\x36\x85\x24\x2a\x2d\xb2\x04\x21\x58\xcd\xc2\xbe\x51\x29\xcc\x94\xbb\xfc\xbc\x66\x2d\x6f\x56\x73\x5e\x37\x39\xc8\x34\x67\xf0\xee\xec\x2c\x2f\x24\xf0\x18\xae\xf0\x1c\x2f\xf2\xb6\x2b\x53\x2e\xa4\x7b\xaf\xfe\x0c\x4e\xf4\x1a\x38\x04\x6c\x83\x17\x82\x25\x6b\x79\xc1\x38\x8d\x62\xd1\xa9\x12\x72\x47\x3c\x8d\xa6\x7f\x53\xca\x7c\xfb\x4a\x10\xd2\x45\x2f\xab\xdd\x83\xe2\x7b\xa2\xdd\xb8\xde\xc4\xb7\x4e\x86\xfa\x78\x7e\x50\xd0\x7e\x70\x65\x22\x07\xbb\x17\xe7\x7f\xcf\xf1\x6e\x8b\xce\xd9\x67\xc8\x3b\x44\x8a\xc5\x58\x5b\xe9\x7a\x9a\xe8\x42\x2f\xf4\x9e\x4b\x22\x9a\xeb\x1f\x4c\x67\x47\x44\x40\xd4\x3b\x37\x78\x2f\x3c\x7a\x57\x32\x68\x66\xa2\xd5\xab\x2d\xfa\x8f\x98\x44\xf2\x9a\x28\x9b\xc9\x20\x88\xdb\x89\x91\xca\xd7\x44\x05\x81\x35\x0a\x15\x9e\x81\x93\x96\x3e\x2d\xa6\x05\xb8\x24\xe1\x15\x90\xb9\xb7\xf2\x72\x46\x98\x49\x8b\x24\x56\xfb\x65\x1f\x75\xcd\xd6\xc5\x2d\x6b\xd2\xbe\xbd\x5d\x92\x67\xef\x69\xcb\xd5\x7a\xce\xa3\x80\x90\xa1\xe6\x46\x75\xf1\xdf\xa4\xab\x15\xb1\x98\x54\x4e\x86\xb8\x4e\x29\xc9\x73\xd7\x12\x1a\xb1\xe3\xca\xa8\xf1\x20\x69\xfb\x4d\xcd\x04\x69\xa2\x25\x4a\x53\xf8\x37\x6f\xc6\x67\x9a\x9c\xbe\x28\x33\x8a\x0b\x84\x30\xbc\x60\xb2\x9c\x4a\xcb\xf1\xab\xac\x41\xe3\xf3\x15\xad\xca\x4c\x72\xbb\x14\xd3\x72\x22\x4a\x58\x3f\x80\xd6\x81\x73\xce\xc0\xe5\xca\x07\xc4\x84\x67\x36\x40\x01\x74\xb7\xe0\x46\xbd\x70\xc7\xd0\x2f\xa9\xaa\x2b\xd6\x17\x52\xc1\x2b\xdb\xd6\x06\xb1\x57\x34\x7f\x12\x7d\xaa\x16\x1c\xeb\x00\x63\xbc\xe8\x49\x80\xd9\x43\x01\xe3\x69\x04\xa1\xb0\x9f\x87\x53\x14\x5e\xd0\x0e\xa8\xb1\xbb\x97\xc4\x6b\x55\x5c\xda\x9d\x17\xce\xa3\x1e\xe6\x59\xad\x30\xcd\x38\xc2\x6d\xfe\x12\x6c\x0e\x78\xa5\x18\x63\x34\xae\xea\xfa\xdd\x6a\x99\xb5\x76\x76\xf2\xc6\x82\x77\x9b\xf0\xfa\xe7\x75\xf3\xa2\x84\xba\x27\xaf\xb5\xab\x94\x1d\xcc\x4a\xb0\xb6\xa0\xad\x86\x0b\xf9\x3f\xec\xab\x61\x72\xc0\x0e\x12\x89\x8b\x48\xcb\xc9\x30\x39\xd0\x44\x4f\xe6\x53\xb8\xf5\x81\x06\x57\x20\xae\x2c\xdc\xc6\x23\xc8\xec\x2a\x67\x85\x1f\x6f\xa2\x05\x65\x60\x4e\x5c\x38\xf4\x8e\x91\x95\x9b\x0c\x38\xee\xf6\x88\x84\x49\xda\xcc\x5a\xaa\x47\xc8\xc8\x02\x7c\xc6\x6b\x27\xe9\x65\xfc\xa9\x4a\x47\x8a\x4e\xfa\x86\x37\xc9\xc0\x8b\x87\x03\x27\x7b\xd1\xd4\x2b\xa6\xea\x83\x85\xa5\xfb\x70\xa4\x7b\x79\x1c\xbc\x92\xfd\xad\xd7\xdb\xdf\xeb\xf1\x18\x94\xf1\xee\x88\xf0\x16\x1b\x0b\x41\x76\x61\x82\x55\x8b\x6f\xd8\x20\x2d\x19\x44\x51\x6a\xe8\xc3\x34\x25\x2e\x0a\x62\x66\x5e\x20\xec\xee\x2e\xf0\xdb\xf4\x37\x08\x0c\xb3\x6f\xa7\x11\x2f\xbc\xcb\xd9\x73\x90\x3a\xdb\x0c\xbf\xdb\x6c\xfc\x0b\x88\x75\x1d\xed\x5f\x44\xe2\xe2\xab\x9f\x90\xf1\xd9\xd2\x49\xee\x31\xd9\x3a\xa1\xfa\xf8\x3e\xbe\x7d\x51\xb6\xbd\x5e\xbc\x16\xea\x53\x0b\x83\x62\xfb\xd6\x12\xb7\xb0\xe3\x2e\xdb\x4c\xa9\x82\x60\x76\x8e\x27\xc3\x7c\x4a\x67\x66\x5b\xbf\xca\x9c\x61\x15\x60\x73\x92\xb6\x2d\xe5\xb0\xe0\x18\x9f\xec\x24\xc3\x20\xa5\x2d\x4c\x1c\x68\x9d\x65\x35\xd1\xdb\x42\xcc\xc8\x96\x3b\xcb\x75\x12\xea\x31\x4f\xbb\xae\x13\xb4\xe3\x18\x81\xc0\x1e\x6d\x4d\x9d\xab\x1f\x63\x10\xd4\x27\x02\xba\x85\x4b\x65\x8b\x17\x85\xda\x5e\xd2\x8f\xa2\x3d\x48\x7e\x6d\x77\xd6\xaf\x61\x32\x7e\x9d\xe0\x79\x4e\x1d\xc4\x9a\xfd\x5d\x20\x68\xc4\x78\xd8\x22\xac\xac\xbf\xd2\x72\xa8\x73\xc9\x5a\x33\x51\x59\xf0\x62\x5c\xd1\x32\x9f\x03\x8c\x92\xb6\x26\x52\x14\xcf\x9a\x4b\x4d\x0a\x84\x0c\x81\x2a\x48\x6d\xea\x34\xa5\x61\x2a\x68\x93\x52\x37\x62\x75\x54\x5f\x9f\x20\xe5\x95\xe5\x10\x4f\xe5\x35\x89\xa5\x3f\x03\x16\xc7\x0d\xeb\x0b\xca\x3f\x34\x91\xac\x20\xb1\xad\x4e\x9c\xad\x7e\xf4\x90\x59\xc3\x81\xc6\x25\xce\xa3\x07\x72\xca\x66\x4e\x4a\x9e\x9e\x28\xb4\x26\x32\xac\xb7\x97\x4d\xbd\xba\xb8\x7c\xee\xca\xb1\xbd\xac\x57\x97\xb2\xb9\x96\xab\xbd\x24\xcd\x01\x71\xb3\x5f\x64\xc8\xf8\x83\x74\x36\xd1\xd0\x67\x19\x68\xb9\xc9\xa8\xf6\xf3\x72\xc5\xee\xb1\x3f\x15\x14\xf3\x48\xca\x54\xf0\x94\x12\xbb\x27\x4d\x47\xa1\x81\x1f\x12\x8e\x8a\x0f\xb2\xdb\x8b\x8a\xff\x1a\x3e\x59\xed\x32\x3b\xbf\xac\xd3\x0a\x43\x27\x6c\x42\xc2\x04\x78\x72\x17\x12\x77\x17\x12\x77\x17\x86\x8c\x10\xe6\x9a\xc5\xf3\xbe\xa9\xcb\x08\x04\xd4\xd6\xba\x13\x7a\x8f\x0d\x1b\x40\x4b\x70\xf0\x72\x60\x4b\xbb\x59\xc6\x13\xe8\x8a\xb2\x0b\x49\xe7\x7e\xed\xde\x22\xa0\x99\xbe\x0b\x60\x50\xb1\xa2\x39\xcd\x84\x9a\x84\xd7\x7c\x03\xd9\x56\xd5\x20\x82\xb5\x2e\x10\x3e\x32\x58\x4a\xae\x42\x65\xdc\xd2\x1f\x48\x9a\xfe\xf7\x0e\xa7\x3a\xb0\x08\x9e\x56\xd5\x2b\xa7\x2a\x69\x91\x9b\x0b\xcf\x6b\x16\xaf\x72\x19\x18\xc5\xba\x7c\xcd\x2a\x4d\x33\xf0\x3e\x97\x61\x6c\x0c\xaf\x90\xf1\x1f\xaf\x11\x2e\xe0\x86\x8a\xf6\xd7\xef\x1b\xd8\x93\xfd\x38\x8b\x7c\xb0\x76\xe5\xeb\xba\xde\xc3\x7b\x71\x6c\x04\x39\xe1\x4e\x36\x27\xaf\xbe\xf2\xe9\x53\x37\x50\x4f\xf5\x5e\x6a\xc3\x25\x3e\x70\xe3\x12\x32\xc0\xef\x1b\x8d\x98\x71\x81\x13\xbc\xdd\xbc\x2e\x2a\xd2\xce\xc9\x73\x20\xc6\xf2\x00\xe3\xda\xb8\x0a\xe2\xc2\x21\x5c\x70\x4f\xc5\x24\xcf\x95\x8b\xef\xa3\xbc\xfd\x6b\xd7\xcd\x9f\x68\x37\x7f\x6f\x83\x0d\x8a\x69\x35\xcb\x17\x18\xc0\xe4\xb3\x05\x9e\xeb\xfc\x8b\x08\xb7\xd3\xc5\x98\x96\xb3\x7c\x6e\xb5\xb3\xa5\x75\x9c\x6c\xbc\x3b\x39\x23\x7e\xb3\x98\x98\x76\x06\xe6\xda\x6c\xcc\xfd\xc9\x1d\xc7\xb9\xcb\x70\xde\x62\x5f\xb7\x1b\x85\x1b\x17\x79\x3b\xad\xc5\x80\x01\xd5\x5b\xfe\x99\xd7\xb8\x40\x45\xb7\xff\x1a\x6d\x74\x7f\x3a\x38\x02\xcf\x2d\x4e\x7c\xf5\xc5\xdc\xce\xdc\x22\xe7\xd3\x6a\x36\x68\xe4\x6c\xac\xd7\x6a\xfb\x2e\xdc\xe8\x87\x65\xb6\x72\xbe\x68\xb9\x9f\xe3\xa7\x22\xc9\xd3\x66\x86\xeb\xbc\x9d\x52\x18\x3b\x18\x0e\x9c\xf1\x8a\xa9\xc8\xf8\x7a\xed\x78\x51\x3e\x7b\xbf\x04\x68\x4a\x60\x0f\xa8\xca\x04\x75\x4e\x86\xcb\x86\xb4\x84\xa9\x28\x1c\x32\x54\xbb\x6e\xb8\x6c\xea\x6b\x5a\x92\x52\x5f\xb5\x78\x78\xbe\xe2\x43\xca\xc1\xc7\x92\xd5\x7c\xb8\x10\x34\x73\x0c\xe0\x12\x74\x91\x51\x3b\xf0\x2b\x7f\xdf\x5d\xe7\x47\x0f\xaf\xbf\xa8\x1f\x5e\x1f\x1c\xa0\xab\xe9\xf5\x2c\x2f\xa6\xd7\xb3\x90\x8f\x5a\x01\x29\x78\x8f\x6c\x90\xca\x6d\xce\xc6\x42\x5a\x58\xaa\x08\xe0\xe7\x75\xf3\xdc\xf8\x98\x42\x9e\x67\x84\x2f\xf2\x23\x7c\x9e\xdf\xea\x29\xba\xf8\xe2\xfc\xe1\x85\x98\x22\xdd\xc6\x59\x7e\x3b\xbd\x98\xe1\x1b\xf8\x47\x1f\x8b\x67\xce\xf0\x6e\x10\x7e\xe3\xff\x7c\x99\x1f\x3d\x7c\xf9\xc5\xcd\xc3\x97\x7a\xaa\xdf\xe7\x67\xd3\x97\xb3\x00\x66\x7a\xf0\x66\xfa\x72\x96\xbf\xc7\xcf\xe0\x1f\x71\xfb\xd1\x45\x76\xf3\xe8\x18\x79\x6c\xce\xb7\x24\x63\xb8\xc1\x1c\x3f\xc3\x04\xaf\x62\xb7\xde\x25\x04\x8a\x6c\x10\x1a\xcf\x0b\x1e\x3a\x0f\xab\x5c\xe6\x08\x6d\x50\xf6\x46\x46\x93\x0c\xe9\x22\x13\xc2\xd9\x33\xcd\x87\xdc\x95\x59\x3b\x7d\x33\x3d\x9a\x89\x5d\x80\x36\x1b\x69\xcc\xd3\xdf\x7f\x9a\x1f\x3d\x3c\xfd\xa2\x7e\x78\x7a\x70\x80\xca\x8c\x4c\x4f\x67\x48\xa9\xd2\x2c\xd0\x62\x8c\x9d\x78\x99\x49\x3e\x3e\xe3\xd6\x0d\x30\x10\xcc\x1b\x34\x0e\x31\x18\xf1\x02\xec\x58\x5b\xb8\x6d\x95\x79\x9c\x2a\x6f\xfb\x98\x28\xdf\x60\x86\x34\xb7\xfd\x12\x7e\xf5\x0c\xa0\xf0\x73\x51\x3b\x28\x2d\x5a\x07\x18\x53\x6f\x60\xee\x38\xba\xfa\xec\x7f\x97\x79\x1c\xec\x10\xe4\x45\x47\xfe\xf0\xa3\x5f\x2d\xb5\x4c\x72\x46\xcb\x09\x05\xf0\x65\x6d\xa3\x45\xce\x94\xb9\x79\xd6\x91\xa0\xde\x69\xfa\x2b\xa7\x90\xbd\x28\x47\x23\x30\x20\xeb\x20\x8f\x4c\xa9\x5b\xb7\x8f\xe2\x65\x46\x76\x2d\xa8\x87\xb8\xb1\x30\x77\xcd\x47\xe4\x8b\xfb\xa4\xe7\x7b\x30\xc8\x4e\xae\xe5\xfd\x5d\x8c\x5d\x19\xae\x89\xca\x70\x8e\xf3\x27\x55\x79\xb8\x57\x10\xea\xd7\x01\xac\x67\x27\x6c\xc2\xc6\x97\x0d\x59\xe0\x4a\x39\xbe\xeb\x04\x81\x1c\x17\x78\x85\x29\xc2\xf3\x5e\xa9\x4d\x15\xd5\xee\xef\xae\x66\xe0\xd7\x43\x49\x9a\xa1\x7b\xf0\x8b\x57\xf2\x5a\x95\x3f\xce\xaa\xfc\xcb\xac\xc2\x1c\xcf\x11\xfe\x21\xfb\x16\x37\xe8\x5e\x8e\x9f\xfa\x93\x42\x1f\x76\x35\x1a\x2b\xc4\xb1\xfc\x4b\x22\xa1\xdb\xc4\x67\xec\xef\xd4\x1e\xfb\x16\xe5\x7a\xec\x7f\x53\x44\x4a\x23\x1e\x8e\x9b\xd2\x6a\x4a\x5f\x6b\xad\x1a\xe9\x4b\xae\xdd\xeb\xb3\xa1\xbd\x08\x2d\x82\xa3\xb3\xa9\xf4\x75\x3e\x9d\x69\xef\xf5\xce\xd9\x57\xf3\x55\x84\x78\x97\x90\x9a\xa7\xe9\x42\x4c\x82\xcb\xf7\x65\xd1\x3e\x25\x57\x05\xd7\x53\x5f\xaa\x64\x1b\xb8\x92\x2f\x4f\xd9\xad\x6b\xd9\x84\x84\xee\xf3\x4e\x7b\x70\x3e\xf0\x22\x2f\x94\xda\xcc\x01\xea\xc4\x65\xde\x70\xad\xe9\x97\x70\x94\xe0\x28\x0d\xc9\x8c\xc4\x1f\xb2\x29\x52\xa6\x69\x16\xc9\x4e\x52\xbb\x9b\x75\xbd\xb6\xa6\x72\x23\x64\x2d\xd6\xeb\xd5\x7a\xdd\xae\xd7\xa3\x32\x4d\x47\x73\x1f\x3a\xc7\xdf\xe9\x41\x8f\x30\xf9\x30\x9b\x97\x79\x25\xea\xe2\x65\xbe\x5a\xaf\xe7\x69\x1a\x04\x2e\xe8\xbe\x88\x92\xe7\x54\xb0\xb1\x0c\xd1\x4a\xd3\x51\x9b\xa6\xd9\xe5\x7a\xbd\x54\xb7\xc0\x95\x1a\x5d\x6f\xac\x0a\x0d\xae\x66\x50\x90\xab\xd4\xeb\xa4\x83\x9f\x63\xc2\x54\xae\xc4\xf6\xa2\x8b\x0c\xc6\x2a\xba\x83\xde\xae\x3f\x6e\x6f\x5d\x1d\x43\x76\x2d\xfa\xdd\xba\x25\x95\x11\x81\xef\xb1\xe7\x83\xdc\x2c\x53\x63\x30\x22\x7a\x7e\xc1\xe2\xb4\xe3\x9b\xf8\xae\x6f\x82\xe8\x47\xa5\x13\x8c\xa6\x3b\xfd\x39\x69\xaf\x4d\xa4\xba\x07\xf5\x35\x85\x55\x20\x8e\xa7\x98\x15\xb2\x34\x75\x83\x64\x3e\x21\xe1\x35\x03\x71\x48\x2f\xac\xd2\x49\xd6\x47\x82\x35\xf0\xd6\xce\xe8\xa2\x9e\x8f\xfa\x00\xca\x2b\x76\xad\x19\xe9\x57\x94\xbd\x93\x3e\x49\xbd\xb4\xd7\xdd\x7d\x71\xc2\x74\x62\x4e\xa1\xbb\x6e\x31\x5a\x12\x99\x64\xdd\xfc\x09\x71\x59\x15\x8d\x47\x36\x89\x1c\x27\x90\x02\xad\x7d\x40\x77\xb9\xcf\x3d\xb2\xeb\xf2\x80\xa6\x8d\x7e\x0c\x96\x4e\x9e\xf9\xfe\xb3\x24\x49\x1f\x8c\x17\x77\x90\x94\x21\xc2\x24\x76\xb3\xb4\x79\xdd\x7f\xb3\xac\xe4\xcb\xd8\xcd\x52\x75\xda\x93\x37\xcb\x3c\xaf\x23\x37\xcb\xc2\xb9\x59\x70\x99\x6f\xb9\x58\xe6\x70\x41\x14\xeb\x35\x90\xeb\x0a\xee\x21\x9a\xa6\xd4\x35\x38\x20\x4b\x2e\x5d\x95\x57\xaf\xfa\x9b\x7a\xbc\x27\x82\x36\x03\x3b\xda\xf6\xcd\x68\xd6\x4d\x5d\x41\xab\x34\x85\xd1\xe1\x65\xde\xae\xd7\x95\x26\x87\xf8\x2a\x0f\x6e\x3d\x89\x52\x64\x7e\xc2\x35\x34\x4f\x53\xc1\x61\xab\x6b\x48\x8d\xe2\xea\xa4\x6f\x13\x6c\xb1\x1b\x52\x3d\xa2\xeb\x7c\x74\x25\x53\xfa\x98\xae\x84\x14\xa2\x3f\x3f\x4d\xaf\x63\xcd\x7b\xd3\x82\x26\x34\x4d\x47\x57\x51\x93\x0f\x8d\x1c\x98\xde\xc9\xdd\x7a\x50\x24\xc2\x53\xdc\x64\x7b\xb7\x91\xc8\x61\x3e\xd2\x26\xf8\xed\xed\x40\xe3\xd4\x07\xa5\x0e\x7d\xb2\x15\xbc\x12\xa8\x85\xc5\xb1\x50\x94\x27\x36\x0a\x87\xc0\xbc\xca\xb6\x5d\x32\x5e\x1c\xd7\x80\xe6\x74\xbd\x8e\xb9\xc7\xed\x8e\xe6\xcf\xcc\x86\xfa\xe0\x30\x2f\x85\x1e\x85\x0b\x35\xc4\x3d\x63\xbc\x24\xf0\x95\x0a\x16\xed\xbb\x6f\xea\xbe\x08\xaf\xc2\x5c\x35\x0a\xce\x0a\xee\xd8\x33\xa5\x3e\x35\x9b\xee\x84\x8e\xbb\xf0\x55\x59\x8b\x6b\x34\xa1\xf9\x87\xcf\x18\x16\x2d\x60\xba\xeb\xa2\x92\x9f\x08\xc1\xb0\xdd\x7b\x29\xb8\x8d\xec\xce\xdc\xed\x52\x40\x3b\xcc\x3c\x83\xe0\xc4\x8d\xe7\x66\xd1\xd9\xc2\xc5\xce\x2d\x8c\xdf\x45\x76\x9d\xc1\x01\xf2\x62\x07\x8b\x1f\xb5\x5d\x8c\x15\xb0\x86\x1e\x9c\x2d\x53\xe4\x5f\x66\xc5\xb6\x2d\x63\x6d\x82\xdb\x36\x4e\x6f\x68\x60\xed\x6f\x9c\xd0\xc2\xb7\xbf\x38\xe8\x0e\x46\x2e\x31\x35\x59\x61\x70\x71\xff\xbb\xdd\x48\xfe\x3e\x10\x8c\xaf\x59\x1a\x74\xef\x0b\x88\x5c\x94\x2a\x7a\x27\x96\x93\x3b\xec\x4d\xd8\x60\x1c\x68\xd9\x35\xa4\xf9\xbe\x3b\x74\x21\x93\x12\x3a\x7e\x1f\xfd\xc8\x33\x47\x08\xbf\xca\xfe\x42\x32\xa6\xb7\xb7\x76\xf7\x12\xe7\x2d\x8c\x2e\x35\xfa\x27\x08\xa0\x6a\x8c\xab\x47\xe6\x7b\x75\x9c\x56\x55\xe8\xe8\xa1\x51\x3e\x31\x45\x8e\x7b\x86\x53\xfc\x08\x50\x5a\x94\xca\xe6\x24\xbb\xdf\x80\xb5\x83\x48\x13\x73\x10\x89\x3d\xec\x75\x10\x39\xad\xaa\x7e\xef\x10\xe7\x23\x84\x64\xba\x75\x8c\xc1\x08\xb1\xe7\x49\x10\x9e\x3f\xae\xb6\x53\x3f\xba\x90\x8a\x16\xea\x90\x3f\x3f\x22\x56\x3a\x4a\xa8\x6d\x15\x11\xca\x3a\x5b\x32\xd2\x62\x17\x84\x28\xe3\x8e\x77\x56\xbc\x61\xa5\xb8\x1b\x04\xde\xee\xda\xec\xe4\xc2\x0e\xc1\x18\xf4\x9b\x06\x6d\xe4\x31\xaa\x82\x94\xae\xe2\xa9\xe6\x27\xc0\x19\x3b\x4e\x5e\x3b\x0e\x4b\x8d\xd2\x41\x9c\xe9\x10\x8a\xe7\xab\xaa\xba\x55\x19\xa8\x2d\x13\xc8\x2d\xe9\x03\x57\x1b\x6d\x7d\xec\xa4\xed\xcf\x02\x6b\x9a\x18\x8b\xb4\x9a\xdc\x69\xac\xec\x09\xb3\x86\x4d\xbe\x41\xd8\xb1\x4a\xbe\x64\xf3\x2d\x96\xc9\x57\xb6\x49\x64\xcc\x87\xce\xc3\x1d\x68\x65\x30\x94\x16\xc0\x60\xd0\xa0\xf3\x46\x48\xde\x0e\x3e\x1a\x6e\xac\xd9\x86\x7f\xd1\x00\x46\x9a\x09\x2a\xe4\x33\x48\xc5\xa5\x3f\x08\xd7\x90\x97\x4b\x7e\x12\x98\x67\x7d\x01\x02\xb7\x1d\xaa\x53\xb8\x52\xdb\x4a\x31\xb4\x83\xa4\xa9\x6b\xae\xfc\xfc\xca\x71\x5b\x5c\xcb\x4c\xdf\x85\x97\x14\xd9\xe6\x0b\x3e\xc9\x56\x79\x31\x86\x94\xe3\x19\x3a\x49\x5c\xe7\xce\x64\x52\x8c\x4d\x22\x71\xf1\xd2\x75\x1e\x4c\x26\x89\x9b\x0a\x2b\xc1\xb5\x3d\x58\x3c\x93\x33\x0e\x52\x38\x42\x13\xfb\x4a\xee\xbc\x92\x96\x62\xb6\xb6\xdd\xe1\x03\x0e\x1e\xae\xca\xec\xaf\x68\xa3\x52\x95\x83\xcc\xe4\x38\x22\xf8\xe3\x92\x49\x8f\x19\x38\x8f\xc4\x73\x75\xd5\x10\xdd\xd2\x49\xd2\x98\x31\x47\x7f\xfe\xd7\xa2\x55\xe9\xe6\x3a\x46\x83\x58\x42\x3f\x75\x5a\x4d\xdd\x30\xa9\x5c\x58\x53\x9a\xe2\x64\xa5\x6d\x81\x53\x5a\x37\x1f\x0b\x9a\x5a\x8c\xcf\x04\x6d\x88\x10\x06\x30\xdb\x28\x85\x03\xcd\xc0\xb9\x0c\x33\xd0\x11\x96\x08\xe1\x26\xf4\xad\xe4\x18\x34\x9c\x72\xe3\x28\x57\x00\x99\xae\x27\xbe\x65\x70\x9b\x2b\xc2\xef\xbd\x57\x1e\x13\x42\x66\x02\xec\x8d\xf5\xba\xd0\xf0\x1b\x8d\x9b\x1a\xad\x32\x26\x8f\x9e\xf5\x59\x61\x82\x06\xd5\x48\x9b\xff\xab\xee\x88\x57\x08\x79\x99\x80\x56\x20\xe9\x0a\xae\xaf\x55\xc6\xfd\x3d\xd2\xb6\x36\x4a\x9d\xb5\xf4\x30\x0a\x03\xc8\x37\x05\x8c\xd9\x87\x0b\xb6\x25\xe5\x2e\x09\xa5\x2d\x9d\xa4\xea\x44\xfc\x31\xe1\xa1\x95\xe5\x6c\xcb\x38\x7c\x8e\x66\x97\xd7\xb4\x0e\xe0\xd7\xa8\x17\x20\x98\x43\x42\x6a\x69\x4a\xa6\xa1\x29\x99\x47\xc0\xf7\x32\x3a\x6d\x66\x40\xd7\xa3\x7a\x5b\x74\xc7\x72\x4f\x73\xab\x14\xe8\xd6\x14\xc4\xa4\x09\x57\xc6\x89\xc9\x7e\xea\x69\x33\xcb\xa3\x9d\xc9\xa6\xa0\x47\xf5\xa9\xb5\x6b\xc9\x33\xb2\xb2\x9e\xbb\xde\x26\x8c\xf7\x75\xa7\x40\xe0\xdb\xec\x21\xb4\x4a\xb4\xab\xba\x28\xf5\x65\x2e\xee\x04\xc9\xc5\xc6\xb8\x4c\xcc\x24\xec\xdf\x1d\xcb\xb9\x27\xd0\xaa\xe4\x01\xbe\xe6\x4f\x05\x56\xb2\x9c\xe0\x68\x81\xa4\x58\x2e\x2b\x15\x84\x25\x78\x6c\xb7\x77\xc9\xf9\x68\xc2\x24\x9e\x98\x38\xdb\x7e\xa9\x58\x7b\x03\x6b\x1d\x7d\xe3\x35\xb0\x87\xe6\x96\x87\x45\x4d\x13\xbd\x4a\xad\x58\x78\x81\x3e\xb4\x17\x84\x3f\xbe\x75\x35\xc9\xb1\x86\x22\xc4\xcf\x0f\xae\xec\x31\x57\x32\x45\x43\xd5\x8c\xc6\x63\x83\xda\xc8\x6d\x23\xdf\xb8\x8a\xb1\xd7\xd1\x2c\x9b\x2a\x96\x24\xcc\x02\xd8\x1b\x4f\x11\x16\x94\xfa\x55\xc7\xef\x50\xfa\x44\xda\x58\x4c\x15\x16\xd7\x89\xad\x88\x44\xfe\x6a\x51\x53\x73\x7b\xdf\x91\x34\xcd\xbe\x23\x39\xcf\x92\x3f\x10\xc1\xe9\x1e\x8a\x33\xf0\x40\x52\x3a\xf9\xf7\xe1\xb2\xa1\xd7\x05\x27\x09\x1a\xdb\x66\xb5\xb9\xeb\xdc\xae\x50\x6f\x98\xaa\x8a\x04\x86\x1c\xda\x90\x29\x93\x6d\xbc\x3c\x3d\xdf\x91\xac\x86\x10\xe0\x85\x97\xbc\x30\x8e\xa3\xb9\x4f\x87\x51\x6e\x59\xcf\x24\x97\xb0\x9d\x8b\x2d\xd1\xd1\xea\x90\x6a\xa1\xe9\x48\x22\x1e\x65\xf6\x12\x71\x63\x3e\xd4\xca\x88\xcf\x52\xd9\x2c\xbc\x80\x8f\xa6\x1b\xf0\x81\x26\x9d\xeb\x88\x20\xfc\x54\x59\xa5\x59\xdd\x5c\xc1\x46\xdc\xe6\xf7\x10\x21\x02\x8d\x51\x58\xb8\x3a\x2b\x63\x11\x30\xcd\x0a\xf9\x59\x76\x44\x6e\x9e\xa8\x04\xdf\xbd\x91\x70\x06\x18\x76\xdb\xe9\xf4\x51\x3e\x45\x7d\xcb\x62\xf6\x48\x33\x9a\x8e\x79\x11\xa2\x58\x85\x2a\xd1\x45\xc6\x4c\xb6\x3c\x45\x1d\x0d\xc0\xed\xcb\x1b\xa6\x92\xa5\x3a\x62\xcb\x28\xcf\x33\xb8\x95\xe4\x6c\x6a\x98\xb7\x49\x72\x20\x44\xb4\x8e\x30\xcd\x34\x6e\xbb\x72\xbc\x93\x51\x50\x92\x26\xbb\x0d\x4a\x00\x7b\x45\x58\xd7\xeb\x6e\xfb\x1e\xdd\xdd\xbf\x23\xaf\x5d\xe8\x58\xa9\x1b\x1d\xf6\x7c\xbd\x4e\x0e\xbf\x6f\x6b\x76\x58\x2c\x69\xe2\xbb\x35\xca\xc1\x15\x27\xcd\xb4\x98\xc5\x46\x95\x1c\x14\x68\x22\x8b\x7a\x22\x79\xdf\x68\xa6\x05\x7c\x3d\x40\x78\x35\x53\xa7\xdb\x68\xeb\xf6\xb5\x9b\x29\xa1\xb7\x6d\xb7\x39\xe8\xc5\x23\xb6\xfb\x6c\x91\x20\x40\x78\xcb\x2e\x71\x01\x92\xb7\xec\x93\xc2\x7c\x93\x6d\xfa\x23\x6f\x95\x68\x17\x1f\x75\xb7\x74\x85\xb9\x30\xaa\x47\x0e\x2c\x73\xce\x4e\xd6\xe2\xa4\x24\x8b\x62\x55\xf1\x37\x66\x58\x09\x42\x27\xcd\x94\xce\x7a\x06\x9d\x1c\xd0\xfb\x6d\x26\xea\x6f\x26\xd5\x5f\xd2\xd7\xbe\x29\xb0\xe7\x6e\x32\xed\x99\xcd\x14\xc1\xf2\x8c\x00\x82\xbb\x84\xc6\x87\x7a\x71\xdf\x88\x8d\x15\x71\x77\x68\x74\x27\x32\xdb\x89\xc1\xf3\x54\xdd\x30\xdb\x4d\xb0\x59\x5d\x27\x92\xce\xcb\x29\x8b\x76\x46\x6d\x67\xd4\xe9\xcc\x08\x05\x36\x6a\x5a\xbd\x54\x59\x12\x65\x1a\x89\x45\x1f\x4e\xab\x5b\xd1\x29\xe2\x54\xc6\x7d\x72\x8f\x19\x04\xd6\xb7\xaf\x7d\x02\x75\x8c\x8e\x49\x09\x22\x5a\x2c\xb3\x9c\x11\x08\x78\x7d\xb2\xc9\xb1\xf1\x16\x8f\x45\xed\xdb\xd4\x02\xbb\x85\x17\xee\xbd\xde\x0a\x9d\xc5\x0d\xbc\xfc\xb7\x91\x4e\x8d\x14\xd0\x5b\x22\xb6\xdf\xc8\x96\xcf\xc0\x3d\xea\x1c\xb1\xe7\xa4\x0e\xe9\x49\xc1\x6a\x46\xe7\x45\x95\xa1\x81\x2e\x96\x1f\x39\x13\xda\x2f\x8d\x74\x66\xd0\x37\xc5\xd8\x29\xdc\xe5\x7b\xef\x7d\xaf\xdf\x48\x77\x3e\x02\x04\x85\xdd\x13\xe2\x57\xd8\x3a\x23\x67\x2a\x0f\xc8\xd3\x20\xa9\x72\x30\x37\xab\xbc\xc5\x59\xf5\x41\x40\x26\x0a\xc1\xe4\x57\x24\x5b\x39\x08\x26\x15\xc2\x73\xf9\x10\xcf\x11\x6e\x37\x8a\xe4\xa9\x80\x66\xe4\xe0\x99\x70\x1e\xba\x8a\xb1\x50\xe3\x56\xe7\xcc\x43\xd4\x74\x6c\x3b\xf5\x87\x23\x3e\x4e\x9b\x99\xb4\x03\x42\x58\xd7\x2a\x0f\x0d\x30\xb5\x89\xf5\xd2\xf6\x94\x82\x95\x43\x09\x12\x34\x2c\xce\xeb\x15\x1f\x02\x5c\xae\x0e\x71\x13\x1f\x23\x21\x20\xad\x41\xf1\xb1\x31\x2a\x56\xd2\x5b\x85\xc6\xbd\x55\xac\x3d\x67\x97\x4e\xa1\xc6\x2d\xae\x06\x42\xdc\xc8\xea\xfc\x2f\x10\x35\x06\xd6\x45\x21\xd1\x34\x08\x19\x5d\x43\x9a\x66\x55\x5e\x5b\x34\x4e\xf0\x5a\x00\xc1\x1c\x73\x5f\xef\x97\x51\x7c\x07\xb8\x9e\xed\x06\x37\x08\x57\x69\xaa\xcd\x4a\xf2\x31\xd8\x95\x74\x3b\x93\x6a\x03\xd3\x45\xc3\x08\x32\xc9\xea\x93\x34\x1d\x49\x53\x3e\x6d\x95\x1d\x0c\x34\x6c\x69\x9a\x28\x1d\x1d\xfc\x4c\xa0\xc8\xbc\x2e\xc9\x49\xd6\xe4\x11\xe2\xbd\x1a\x13\x39\xe7\x12\xe9\xee\x24\xf8\x9d\xd9\x8f\x46\x93\x17\x19\x19\x13\x78\x8c\x0c\xea\x8a\xd5\x1a\x66\x14\x37\x98\x20\x34\xe1\x81\x52\x30\xa3\x98\x20\x95\x20\x9b\x6c\x10\xae\x1c\xc7\xff\x86\xbb\xc2\xc2\x79\xbf\xde\x49\xce\xe8\xc9\x48\xc5\x42\x35\xa4\x5c\xcd\x89\xeb\x34\xee\x0a\xf3\xeb\x35\xe3\x52\x76\x44\x36\xaa\x69\x83\x84\x20\x35\x51\x2d\xac\xd7\x23\x55\x46\x35\xed\x14\x34\xa3\x63\xdc\x17\xcc\xf9\x56\x29\xae\x71\x73\x27\xf5\xba\xc2\x30\xa7\x7d\x1a\xb6\x3f\x6d\x80\x4f\x1c\x49\x27\x9c\x8c\xc5\xa3\x60\x03\x9e\x91\xa0\xf1\xa2\x98\xf3\xba\x01\x23\x8a\x4c\x7a\x08\xec\xe1\x46\xa2\x2a\xac\xd7\x19\xcb\xff\x46\xe4\x0f\x3c\x62\x5e\x62\x6f\x4d\x08\xe6\x55\xd1\x82\xdb\x28\x1d\x53\x89\xa0\x80\x9c\xd8\xce\x34\x55\x21\x26\xf6\x4a\xbe\x2c\xda\x97\x37\x4c\x43\x13\xc9\x5b\x99\x62\x27\xe5\x22\x5a\xaf\xe3\x28\x46\x5e\x29\x7c\x07\x30\x48\x93\x66\x83\x06\xe2\xf3\x73\x66\xb4\x60\x1b\xf9\x9d\x21\x06\x92\x0b\xdf\xa4\xb9\x43\x75\x02\x12\x1c\x66\x80\x2c\xf4\x8b\xf0\x74\x93\xdd\xc2\x4b\x97\x5f\x05\x87\xc0\xbf\x91\x48\x8a\xd4\x3f\x91\xf5\x3a\xfb\x53\x47\x2d\x01\xdf\xe9\x2a\x24\xce\x34\x3d\xfd\x9a\xbe\xa7\x0c\xe1\x3f\x69\xa8\x23\x05\x4a\xe3\x24\x66\x93\x0a\x0b\xde\xe5\x41\x70\x63\x69\xba\xc7\x3c\xe2\x26\x37\xf5\x75\xc8\x07\x73\xf4\x93\x8d\x8e\x4f\x6e\x20\x30\x99\x09\xd6\xd7\x54\x98\xd2\x99\x0b\xc0\x24\xd6\x53\x0d\x8d\xe0\xa9\x98\x8a\xd9\x78\x5e\xb3\x79\xc1\x33\x86\x2c\x12\x93\xfc\x1c\xb9\xfb\xb6\xc2\x21\x85\x38\x23\x5b\x0b\x7b\x98\x30\x5b\x4a\x6e\x9a\x9c\xe0\x8c\xe7\xac\x1f\xc1\xa7\x71\x11\x7c\x78\x0f\x82\x0f\xb0\x56\x06\xc1\xa7\x31\x87\x22\x82\x07\xbb\x05\x94\x27\xe2\x87\x0d\x76\x1b\xd8\xa9\x4a\x58\xde\xe6\x6e\x8a\xdb\xfc\xce\x66\x8c\xc0\x7e\xd1\x49\x81\x5d\xd3\xc3\xc4\x37\x6e\x41\xee\x89\x82\x32\xd2\x48\xa5\xce\xc0\x43\x0f\x69\x2d\x90\x40\xab\x89\x46\x8b\x63\x92\xa7\xc9\xa0\x23\x33\xcc\x42\x8b\x12\xcf\x48\x0d\xdf\x5d\x6f\x79\x75\xeb\x89\x6e\x1d\xdd\x4d\xbb\x3a\x6f\xe7\x0d\x3d\x17\x34\x27\x8b\x92\xb0\xa8\xd3\xa1\x9b\xef\x5b\xf0\x87\xa8\xf1\x53\xe2\xfb\x31\x42\xea\xa8\x8b\xdd\x01\xba\x23\xcc\xd1\x28\xef\xb0\x34\xfe\x14\x8f\x1d\x75\x9d\xf8\x74\xd1\x34\xe4\x3a\x69\xe2\xd8\x92\x10\x83\x64\xc2\x8f\xfc\x74\xe0\xee\x10\x3d\x28\x76\xf7\x52\x32\x5e\x32\xdb\xc7\x35\x48\xce\x8d\x57\x2c\x38\x28\xbc\xa3\xac\x3c\xe9\x1d\xd4\xc4\xc5\x36\x97\x85\xd3\x34\xa3\x3a\x80\x70\x0c\x68\x57\x69\x9a\xf5\x36\x80\xc1\x75\x52\xb4\xf0\x9a\x5c\xd5\xd7\x45\xf5\xe4\x92\xcc\xdf\x01\x38\x59\x3d\x3e\xbb\xd2\x0a\x77\x2d\x62\xa6\x69\xec\xe9\xb8\x21\xbc\xa1\xe4\x9a\x7c\x55\x70\xd2\xf2\x0c\xf9\x93\x25\x39\x05\x39\x4b\x3d\xfc\xe6\xf6\xc5\x51\x1c\x88\x60\x09\xc6\xd4\xe1\x69\x14\x1c\x6f\xa9\xed\x0c\x09\x98\xe9\x14\xcc\x7b\xcf\x27\x27\x60\xee\x4d\x10\xee\x7f\xaf\xac\xbe\x09\x42\x9a\x2f\xe7\x12\x3b\xbe\x77\x77\x24\xb4\x4c\x90\x84\xc7\x5f\x49\x6f\x25\xbc\xda\x60\x3a\xe6\xa4\x68\xca\x5a\x27\xf0\xec\xc0\xd1\x68\x01\x19\xd3\x38\xb2\x92\x6b\x8c\x0b\xcf\x9b\x54\x33\x09\xc6\x11\x2e\xec\x13\xf5\xef\x84\x83\x37\x8e\x18\xa9\xbe\xbd\xb5\xb1\x70\xe0\xe4\x94\x90\x80\x7c\x32\x26\xf2\x1b\xc8\xaa\x4c\x2a\x08\x6a\x84\x80\xc6\xe1\xa2\x6e\x86\xbf\x4e\x0e\x20\x86\x45\x72\xe0\x43\x89\x4b\x35\xbc\x04\x87\xab\x16\xa2\x24\x65\x5e\x6d\x80\x42\x0e\x46\xb7\xc3\x13\x84\x72\x27\x83\x68\xf7\xe6\x00\x2d\xef\x16\xc0\xed\x6e\x83\x2a\x2f\xf9\x9e\xed\xee\x03\x8d\xe5\xf8\x3a\x45\xa0\x74\xad\x5e\x8a\x61\x9f\x16\x3c\xbe\x95\x2c\x0f\xbc\x94\xf0\x9e\x7b\xc0\xac\xf9\x4b\xdd\xbd\xf4\x54\xb2\x2d\x0b\x6e\xe0\xe9\x81\x9c\x01\x62\xe6\xe8\xcc\x1a\xec\xd2\x51\x34\xe0\xf1\xf0\xe0\x48\xd6\x16\xe2\xa2\x83\x09\x5e\x8c\x38\x09\x6c\x62\xa3\xf3\xd2\x6f\xd1\x3d\xc1\xda\xfc\xaf\x8e\xf2\x05\x7b\x7f\xf8\x80\xfb\x1f\xee\xb5\x26\x3f\x5b\xf0\xa1\x5e\x1a\xfe\x78\x7f\xc1\xa7\xec\x07\xb9\x06\x47\x2b\x51\x67\xa4\x95\xef\x87\xb4\x1d\xd6\xac\xba\x1d\x16\xd7\x05\xad\x8a\xf3\x8a\x0c\x6f\x2e\x09\x1b\xce\x57\x2d\xaf\xaf\xd4\x99\x83\x43\x3b\x5c\x90\x82\xaf\x1a\x32\x5c\x54\xc5\x85\xac\x96\x6c\x30\xdb\x64\x84\x3b\x52\x7b\xc1\xff\x25\x50\x48\x01\x2b\xcd\xc3\xf1\x84\xc3\xca\x15\xff\xb3\x5e\x13\x51\x07\x61\xf7\xe6\x22\xfa\xe6\xe2\x79\x33\x6e\x29\xbb\x58\x55\x45\x43\x7f\x50\x20\x99\x80\x32\xba\xe2\x3b\xf2\x0b\x5c\x11\x5e\xf4\x66\x17\x00\x7e\x30\x51\x29\x80\xcf\x1c\xe0\xed\xee\x43\x05\x7c\x2d\xa6\x44\xbd\xb8\x2c\xda\x27\x45\x35\x97\x8e\xbe\x2a\xe8\xc0\xe4\x14\x58\x16\x82\xf7\xb2\x09\x3f\xdd\x6e\x55\x8b\xb1\x67\xba\x17\xf7\x55\xd8\x14\x09\x9f\xec\x91\xa4\xc0\xf9\xb2\x18\xbb\x35\xb2\xea\xb6\xe8\x67\x69\x4d\xe5\x5c\xbf\x50\xcf\x25\xb6\x53\x67\xf6\xe0\xac\x07\x5f\xf4\xa9\xbb\x55\xfd\x40\xd7\x61\xf9\x1e\x87\x85\xad\xeb\x78\xa4\x2c\x30\x35\x2e\x70\x8b\x57\x90\xb5\x7e\xa0\xed\x91\x84\x17\x38\xab\x73\xc3\x50\x21\x13\xbf\x50\xeb\x95\x5c\xaf\xb3\x55\xce\x1d\xf0\x78\xe9\xc9\x2d\xce\x05\x11\x7c\xc0\x49\xd6\xe4\x2b\x99\xc3\x87\xd9\xc0\x8b\xac\xcd\xb3\x22\x5f\x21\xdd\x70\x9a\x16\x3e\xd3\x86\xd6\xeb\x16\x4d\xb2\x46\x66\xd1\x67\xf9\xe8\x38\x32\xff\x79\xd3\xb3\x79\x59\x08\x94\xfc\x8e\xdc\xf6\xe9\x14\xcd\x97\x8a\x31\x6f\x36\x58\x55\xa0\xac\xdc\xa3\x06\x65\xa5\xa9\x02\xfc\xc0\xb6\x2a\x67\x92\x00\x64\xce\x99\x6c\x79\x66\x5a\x33\x57\x8c\x78\x63\x5a\x55\xb3\xb2\x7b\x2c\xaa\xa0\xa9\xc8\x40\xab\xb0\xab\x96\x28\x25\xd5\xa9\x05\x8f\x00\x42\x8b\x87\x06\x10\x9a\x8c\xb7\xa5\x3d\x7c\x4a\x30\x19\x3f\x25\xcb\x86\xcc\xc5\xab\x67\xd7\x84\x71\x52\xe6\x4f\xc4\x63\x5f\xff\xfd\x52\x3c\x52\x6a\x53\x59\xf7\xbd\x7d\x20\x49\x6d\x7e\x8a\xc9\xd8\x6d\xfd\x05\xf1\x1f\x68\x24\xa4\xaf\xec\x73\xc1\x2e\xbf\x71\xc1\x86\xff\x0c\xef\xea\x9a\x2b\x1b\x86\xf8\xa9\x1d\x57\xf3\xe7\xce\x0f\xb7\xa3\xaf\xa1\x14\x60\xf7\xd6\x1c\x93\xf1\xd9\x39\x65\x65\xfe\x83\xf8\xeb\x62\x55\x34\x65\xfe\x58\xfc\x59\xc3\x28\x5f\xb4\xa7\x15\xbd\x26\xf9\xb7\x58\x88\xd1\xa4\x99\x93\x17\x65\xce\x30\x19\x97\x74\xb1\x88\x25\xe5\xb3\x77\x17\xb1\x7a\x09\x7d\x85\x61\x9a\x7f\x5d\xf0\xcb\xf1\x15\x65\xe0\x74\x83\x6b\xb9\xf9\x8b\xfc\xe8\x61\xf1\x05\x7d\x58\x1c\x1c\x20\xba\xc8\xc8\xb4\x98\x8d\xf2\x9c\x4f\x8b\x19\xba\xab\xf3\x62\x70\xde\x90\xe2\xdd\x46\x9f\xcb\x34\x65\xd2\x0d\x52\x9c\x5b\x1d\xb9\x72\x84\x57\x39\x84\xd7\x2a\x4e\xb1\xb6\x43\xa9\x72\x7a\x58\xe3\x79\x7e\xfc\x70\xfe\x45\x4e\x1f\xce\x75\x27\xcd\xe1\x5c\x76\xc3\x0e\xe7\x33\x74\x57\xe5\xf3\xc3\x63\xd5\x55\x9b\xb3\xc3\xea\xb0\xc6\xab\xbc\x11\xff\x2a\x7e\xe1\x6e\x41\x9b\x96\x4b\x89\xe0\x05\x2b\xc9\xfb\x49\x8d\x8b\xb2\x24\xe5\x93\x7a\xc5\xf8\xa4\xc5\x32\x0b\x9e\xfa\xb9\xda\x6c\xb0\x56\xa2\xc2\x4c\xbd\xad\xbf\x2c\xda\xcb\xfc\x85\x79\x2a\x7e\xbe\xad\xfb\x32\x3b\xda\x38\x57\x0d\x06\xfa\x4a\x62\x98\x80\xb1\xc4\xcd\x67\x48\x62\xa9\x0b\x1b\x3b\x01\x9a\x65\xbc\x2a\xde\x11\xe5\xe7\x36\x6d\x66\x5a\x43\xc4\x22\x09\x9f\xb5\x62\x79\x68\x04\xf2\x04\x17\x79\xf2\x00\x34\x5d\x96\x3f\x7c\x90\x1c\x34\x83\xe4\xbc\x68\x41\x24\x93\x2b\x62\xaa\x3e\xad\xe7\xa0\x6e\xb2\x35\x13\x50\xcb\x80\x12\x9c\x53\x5e\x91\x49\x8d\x4b\xc2\x0b\x5a\x4d\xd8\x94\xce\xb0\x94\x0e\x27\x77\xcb\x1a\x24\xc7\x49\xb1\xd9\x20\x48\xba\xc5\xc5\x44\xc2\xd6\x0c\xa0\xa7\xbf\xc4\xae\xab\xec\x13\xa5\x1f\xc8\xcf\x31\xb1\x3e\x25\xf6\xb6\xad\x71\x80\xee\x9f\x3f\x35\x4f\xac\x6e\xb7\xc7\xa1\xe4\xcf\x0a\xe7\x76\x83\xfd\x1c\x70\xcf\x9b\xfa\x4a\x88\x18\xb1\x3a\x42\x10\x5b\xe9\x4a\x2d\xe1\x5e\x27\x17\x44\xa1\x6a\x7b\x35\xe7\x39\xe9\x14\xfe\xa3\xc4\x34\xa3\x35\x8b\x54\x58\x44\x2a\xbc\x26\x6d\xb4\xf1\x32\x52\x56\xe5\x91\xe9\x16\xbe\x94\x85\x05\xa5\x0c\x52\x93\xc0\xe7\xb6\x7c\x40\xc6\xab\xe5\x45\x53\x94\xe2\xbd\x26\x7f\xf9\x5f\x49\x2f\x2b\x99\x9c\x9d\x11\x21\xef\xad\x2a\xab\x0b\x1e\x1d\x49\xd3\x87\x2c\xec\x6b\x54\x41\x41\xf6\x00\x52\x97\x26\x78\x9a\x90\xf7\xcb\xba\xe1\x6d\x82\x23\x85\x8c\xda\x75\x16\x2a\xa1\x92\x55\x4b\x86\x2d\x6f\xe8\x9c\x27\x83\xfb\x8e\xac\xff\x53\xb4\xa9\x1f\xdf\x59\xb6\x7b\x32\x3a\xea\xbb\x8c\x24\xb9\xdd\x6c\x6b\xb1\xbb\x61\xf7\x6e\xbc\x5b\x75\x6b\x4f\x5b\x37\xd7\xde\x9d\x6e\x6d\x65\xff\xfe\xdd\xfd\xf7\x61\x7d\xbb\x2d\xec\xdf\xaf\x7b\x02\x3f\xac\x5f\xb7\x85\xfd\xfb\x75\xce\xe6\x87\x75\xeb\x34\xb0\xb5\xd7\x08\x5d\xdb\xbb\xc3\x48\xdd\x4d\xfc\x9c\x8a\x82\x05\xaf\x9b\xf6\xc1\xbc\xbe\x5a\xd6\x8c\x30\xbe\xed\xc4\xda\xe2\x2b\x4e\x2b\x51\xa9\xaa\x8a\x65\x4b\x0e\x81\x2b\xdb\x52\xd0\x3c\x08\x4f\x38\x6e\x82\x33\xee\xd8\x4b\xe2\x5a\x68\xd0\x3f\x87\x79\x46\x0d\x7a\xe1\x26\x23\x68\xbd\xf6\x69\x08\x5d\x64\x89\xc9\xc1\x6a\xed\xa9\x6f\x6e\xaf\xce\xeb\x6a\xbd\x1e\x65\xf2\xaf\x31\xe5\x04\xc6\x38\xa4\x6c\x28\xd7\x45\xb4\xac\x9a\x56\x58\x4c\x90\x5d\x7c\x74\x04\xb9\x6d\x70\xad\xc3\x5a\x78\x73\x6b\x6e\xeb\x02\xb7\x39\x99\x06\x4d\xce\x32\xf4\x70\x94\x31\x21\x52\xb4\x63\x46\xde\xf3\x0c\xa1\x71\x59\x33\x48\x3e\xaf\x92\x8d\x17\x63\xa0\x5c\x08\x8f\xf8\x7a\xad\xf3\xf6\x0b\x06\x07\x3d\x14\x5d\xa2\x87\x1b\x09\xbf\xb5\x42\x77\x90\x07\xa7\xce\x57\x9b\x05\x65\x45\x55\xdd\xde\x89\x01\x30\x1d\x25\xde\x8e\xe5\x90\xd7\x6b\xfd\x57\x86\x4c\x49\x70\xb7\x97\x8a\xc6\x7a\x63\xb3\x9b\xc3\x4c\xad\xd7\xb5\xfa\x37\xd4\x9c\xc0\x5d\x08\x58\xeb\x52\x25\xa9\x99\x84\x82\x73\x72\xb5\xe4\x43\x5e\x0f\x41\x5b\xba\x9a\x83\x9a\x84\xd5\xec\x10\x3e\xfd\xbc\x22\x43\x69\x87\x99\x93\xf1\xdf\xd9\x0b\x36\xac\x9b\x92\x34\x0a\xd4\x4d\x17\xc1\x50\xa1\x10\x6b\x39\x94\x7c\x6b\x3b\xbc\x5a\xb5\x7c\x78\x59\x5c\x93\x61\x31\x8c\xcc\xe6\xf0\x0a\x8e\xd0\x38\x41\x1b\xd7\x0c\x4c\xa3\x78\xf7\x5b\xb7\x4c\x01\x89\x69\xfd\x5d\x13\xee\x99\x91\xbf\x67\xd2\x74\xeb\x8e\xf1\xcc\xe2\x8b\xa6\xbe\x32\x3d\xd4\x7e\x3f\xfb\x4f\x6e\xbb\x6c\x48\x51\xfe\x7c\xf3\x5a\x5b\xd8\x50\x39\x37\x21\xe6\x09\x71\xa6\xd3\xa2\x87\x77\x4c\xd1\xbc\x7e\x03\x15\xa5\x11\x9a\x20\x15\xad\xf6\x7b\x7c\x78\xac\x75\xb7\x89\x52\x06\x4a\x8e\xd4\xb3\xfe\x29\x9c\x18\xe7\x09\x48\x87\x08\x27\x5f\x17\x4b\xa8\xb0\x5e\x27\x6f\x88\xac\x7b\xe2\xcd\xff\x24\x39\xd5\xe6\x53\x55\xf0\xc1\xff\xcd\x4e\x26\xdf\xd2\xf5\x0b\xc4\x78\x76\x32\xf9\xfd\xfa\xf8\xb7\xeb\xcf\x3f\x43\xd9\xc9\xe4\x49\x55\x5c\x2d\x49\x89\x64\x0b\xbf\x7a\x30\x06\x9b\x49\x83\x4e\xe4\xb7\x29\x97\x45\x47\xa3\x26\x9f\xdf\x65\xf2\xf8\xf1\xf5\x9a\x3f\x32\x58\x63\xa0\x33\x33\xbf\x06\x3e\x6e\xa2\x03\x4f\x8d\x1e\x36\x5f\x70\xd0\x11\x32\xd0\xe7\x4e\x9b\x99\xcd\x6d\x7b\x6f\xc6\x87\x8c\xab\xe2\xb6\x5e\x81\x4e\xaf\xb8\x50\xca\x2a\xc3\xf8\x3f\xa6\x10\x14\xd8\x8a\xb9\xac\x8a\xb6\x15\xef\x63\xcf\xbc\x1f\x6e\x03\x9a\xee\x49\xd9\x2d\x3b\xc2\xcd\xd8\x50\xf8\xbf\x52\x7e\xf9\xaa\x68\x8a\xab\x16\xf9\x0a\x6b\x6b\x6f\x0d\x4d\xdf\x8f\x3e\xd7\x39\x86\x47\xb9\x63\xe6\xfe\x7c\x76\xe2\xfe\x98\x4c\x41\xd5\x9c\x1d\x41\x92\x75\xe0\xdf\x50\x26\xc8\x65\xe8\xe1\xe0\x58\x27\xf5\x57\x25\xc8\xc0\x69\x76\xa7\x61\x10\x9b\x1a\x9f\x5c\xd4\xe8\xa4\xd6\x91\x95\x13\x95\x8c\xb4\xc8\xe9\xf4\x68\x76\x92\x24\xda\xda\xde\xe0\x64\x92\x20\xfd\x4b\xbc\x44\x93\xc6\x3a\x9a\x74\xfa\x30\x09\x7f\xa5\x3e\x37\xd0\xf7\x22\xcc\xc0\x48\xe7\xcc\x7a\xab\x0c\xbc\xff\x7c\x13\xde\xd9\x46\xee\x84\x77\x5e\x0e\x62\xfb\x6e\xaf\x09\x37\x48\x5c\xfd\xd3\x2e\x5d\xc4\xc4\x23\x6f\xf6\x3b\x1d\xee\x35\xfb\xe6\x88\x57\xf6\x62\xe9\xce\xfe\x6b\xf2\x8f\x15\x6d\x48\xd9\x5d\x05\x6d\x2f\xf7\xe7\xd0\xf3\x74\x10\x84\x7c\xe8\x3e\x51\xf3\xe6\x3c\x9a\x92\xd9\x80\x8d\x57\x42\x7a\x5b\x70\xe5\xea\xc1\x30\xcd\x6a\x37\xd2\xd0\x2d\x9d\x33\xdc\x08\x2a\x80\x36\xee\x01\x5e\xc1\xf6\x99\xe7\x95\xb3\x5e\x6d\x82\x06\xde\x89\x9f\x0f\x24\x2e\x6c\x15\x5d\xd4\xe8\xca\x2d\xa0\x4a\x29\xaa\x44\x0e\x5e\xf4\x74\x95\x0a\x01\xe7\x3e\x73\xe9\x78\x9f\xb1\x8c\xe3\x63\x34\x3d\xb2\x50\x62\xee\x1d\xa3\x08\x5e\x23\x01\xd9\xd5\x4f\x18\x88\x7e\x75\x39\x30\x04\x32\xea\x59\xda\xf1\xcd\xe1\x2e\x8c\xa4\x49\xc8\x2a\xe3\x13\x05\xb9\xb6\xc7\xc6\x92\xed\x8e\x27\x60\xce\x7b\x46\xac\x86\x22\x06\xbc\xd9\xce\xa5\x4b\x6e\x5a\x8b\xcb\x0f\x60\x2d\x0e\x17\x94\x54\xe5\x61\x49\xda\x79\x43\x97\x82\xc7\x76\x78\xf7\x99\xef\x91\x18\x67\xb5\xb9\xb3\xb9\x79\xcc\xf5\x50\xb3\x3d\x49\x0b\x7f\x84\x2f\x0c\x03\x71\x12\xf3\xdf\x54\x0c\xc2\x66\x12\x8b\x43\x4d\xd3\x2d\xdd\xf9\xae\x3f\x79\x6e\x9e\x8f\xf4\xdf\x76\x12\x4f\xf4\xd8\x26\xa6\x43\x41\xac\x1c\xff\xc5\x5f\xe4\x89\x9f\x5e\x9e\xe8\x4c\x9c\x41\x2b\x1b\x6c\xe5\x22\xd9\x87\x73\x91\x1f\xc0\x3f\xc2\x58\x22\x2c\x64\x94\x93\x87\xc2\x3f\x9e\x99\xf4\xbf\xb4\x33\x5f\xff\x62\x72\x17\xfb\xd4\x1c\xb0\x2f\xe1\x49\xad\xb8\x38\xd1\x9f\x23\x4c\x73\x36\x3d\x9a\xe1\x3a\x67\xd3\xe3\x19\x2e\x72\x36\xfd\xcc\x54\xfc\x1c\x6c\xd7\x1a\xc9\x3c\xa9\xcd\xd6\xe0\x19\x55\xa6\xc2\x51\x9e\x53\x41\xd9\x82\xad\x58\xa7\x69\xe6\x95\x2f\x6c\xf9\x22\x4d\x13\xab\x89\x49\x28\x1b\x8a\x27\x2e\x07\x01\xcf\x1c\xf0\xd2\x02\x7d\x08\x0f\x4f\xdb\xe7\x82\xb4\x3f\x35\x94\x3d\xa7\xf0\xd4\x79\x10\xa1\xa9\xb4\x23\xcc\x4a\x83\x84\x98\x2e\xef\xd2\x3c\xf6\x27\xa7\x4b\x87\x79\x9a\x26\xe6\xd4\x89\x4f\xe2\x69\x3a\xe2\xe3\xb3\x33\xda\x3e\x51\x7e\xbb\x4f\xf5\xdd\x24\x08\xe5\x5e\x97\x57\xa8\x33\xda\xef\xae\xfa\x80\xd9\x53\xec\x96\x37\x45\x91\x8f\xf4\xe9\x01\x0c\x2a\x20\x1b\xf2\x61\xb6\xdf\xe7\x59\x4d\xd7\x5e\x1a\xb4\x5d\x57\xf9\x47\x56\x88\x93\x98\xd8\xb0\x35\x59\xa0\x6b\x12\xfc\x28\x2e\xcb\x82\x13\x76\xb7\x30\xca\x18\x3a\x09\x7c\xab\x19\x9a\xc4\x42\xee\xba\x03\xf0\x32\x3c\x99\x9c\x4e\x36\x99\x53\x64\x00\xc3\xa0\xaf\x46\x4b\x0e\x53\x36\x43\x90\x1a\x9f\x6c\xe3\x48\xf7\x9c\xac\xdd\x63\x95\x18\xe4\xdc\x82\x8f\xdb\xb1\xb2\x2e\x0f\xb9\xb5\x65\xd6\x3f\x0b\x7d\xcb\x10\xce\x02\x33\xb3\xd0\xc8\x59\xe8\xee\xf5\x07\x70\x85\x90\xf2\xb0\x25\x11\x25\xf1\xc7\x3c\xbc\x03\xf9\x9d\x9a\x19\xea\xf1\x2b\x42\x77\x59\x97\xbd\xc8\xec\xbd\x27\x08\x18\x42\xd1\x6b\xf4\x49\xc1\x58\xcd\x21\x5d\xf2\xb0\x50\x2e\x5e\x45\x3b\x2c\xcc\x7c\x27\x68\x83\x0c\xd0\xa8\x44\x4e\x90\xb8\x55\x36\x56\x52\xfa\xe8\x45\x02\x0c\x44\x5f\xa2\x8a\xd8\x48\x8e\x13\xbb\xa8\xdf\x49\xfc\x22\xd3\x5a\xcc\xc9\x1b\x12\xf7\xfd\x83\x42\x15\x6d\x39\xe4\x10\x86\xc8\x7c\xfa\x03\xc9\x8f\xfc\xb6\x8b\xb2\x27\x8b\xe3\x7a\xad\x7c\xee\x56\xb4\x34\xfe\x87\x61\xc7\x3a\xb6\x5f\x74\x63\x70\x09\x46\x79\x2e\x6e\x61\x21\x1a\x8b\xcb\x58\xfb\x5a\x41\xef\x54\xc7\xfc\xc9\xf1\xf9\x63\x91\x5e\xe9\x1f\x6b\x38\x62\x49\x21\xa5\xa8\xd8\x96\x77\xca\xe3\x5d\xfc\x50\x18\x11\x74\x0c\x1b\xf1\xe5\xc2\xf1\xfd\xac\x1f\x1d\x1e\xa7\x29\x1d\xb7\x4b\xe0\x0a\x6b\xac\x1d\x73\xd4\xe0\xd5\xa1\x19\x1d\x6d\xb4\xef\x93\xff\x05\x2a\xba\x28\xb2\xb2\x26\xf5\x90\x68\xc9\xaf\x74\x59\xf8\x94\x81\x2e\x32\xaf\x34\xd2\x7d\xa9\xbd\x1d\x4e\x84\x07\x08\x11\xcc\xc8\x94\xcf\xfc\xce\x94\xb7\x40\xa7\xc3\x91\xdb\xa1\xeb\xbb\xa9\xe7\xf2\xb3\x3c\xef\x50\x0f\xb4\xc5\x5d\x51\x06\x97\x64\x96\x7e\x1c\xcf\x30\x07\x20\x1c\x2f\x83\x87\x22\x65\x6e\x3a\x05\x92\x71\x41\x4f\x37\xfe\xc0\x79\xe8\x2d\xe1\xfb\xfb\x88\x61\x6a\xa5\x4f\x70\x7a\xea\xe5\x6d\x17\xfc\x8c\x91\x9b\x4c\x6d\x4c\xe7\xba\xb6\x2c\x26\xc4\x68\x93\xfd\x0e\x99\x53\x08\x91\x60\xf6\x63\x2b\x62\xe9\x28\x1c\x4f\x28\xa1\x3e\x0f\x52\x74\xc1\x66\x33\xab\x81\xc5\x76\xd9\x64\x2e\x5b\xc2\x23\x14\xb6\x21\xac\x24\xcd\xe1\x55\x5d\x82\xdd\xae\x7d\x60\xff\x2a\x69\x79\x48\x59\x4b\x1a\xfe\x63\xc4\xfb\x0f\x96\x7b\x3f\x95\x45\xe4\x43\x05\xc4\xc6\x0a\x88\xec\xc3\x05\x44\xd6\x15\x10\xd9\x2e\x01\x91\x59\x01\x91\xed\x29\x20\xb2\xfb\x0b\x88\x0c\xf9\x5f\xba\xf9\x50\xcb\xd1\x3f\x85\x78\xd8\xfc\x13\x1a\x48\xf4\x39\x74\x4c\x19\xda\xd1\xea\xac\x25\xfc\x6b\x75\xf2\x94\x1b\x5f\x24\x5a\xfa\x6e\x5e\x2c\x8b\x73\x5a\x51\x4e\x49\xab\xe0\xaa\xcf\xae\xfc\x6a\x4f\x9c\x22\x59\xf2\xf9\xf8\xf8\xf3\x04\xdf\x95\xb4\x15\xd3\x7b\xba\xe2\x35\x64\x36\xa4\xec\x42\x0e\x4a\x52\x25\xdd\xb3\xcb\x02\x6f\x30\x2c\x57\x55\x75\x5f\x7a\x8a\x7e\x9e\xb1\xf1\xb2\x6e\xc1\x0b\xbe\xa8\xd0\xc3\xec\x08\x83\x1d\x22\x6b\x30\x55\x87\xe0\x18\x61\x06\xbb\xba\x44\x1b\x2c\x83\xe7\xe3\x3d\xaa\xf0\x97\xe8\xcb\x8d\x1b\xea\xfc\x13\xf2\x62\xd2\x22\xa2\x97\x8e\xdd\x9f\x84\xca\x0f\xfe\x85\x84\xfe\x42\x42\x7f\x21\xa1\xff\x5e\x24\x54\xf5\x48\x2a\x22\x36\x95\x0c\xbe\xdd\x4a\x56\x01\x15\x55\x15\xcf\x79\x3f\xad\x24\x2e\xf8\xb0\x2a\x2f\x84\x98\xac\x89\x93\x62\xe6\x92\xe2\xc6\x90\xe2\xff\x71\xe4\xf6\x86\x56\xd5\xa1\xfa\xaa\x5f\x08\xee\x2f\x04\xf7\x17\x82\xfb\x0b\xc1\xfd\x28\x04\x77\x2b\x73\xfa\x71\xa8\xf1\x3f\x23\xc1\xbd\xa8\xe8\xd5\x15\x69\x1c\x4f\x5d\x63\x3c\x38\x2f\x5a\x72\x68\x9e\x1f\x5e\xc9\x85\x0c\x2c\x10\x5b\xea\x9b\x47\x7b\x13\xe7\x7f\x81\x38\xd7\x46\x8b\x46\x9a\x28\xa5\x29\xcf\x48\x27\x80\x4c\x7c\x0c\xc4\x8f\x7d\x14\x13\x13\xe6\xb1\x24\x73\x8e\xde\x9a\x66\xfc\xa7\xd9\x4c\x14\xe1\xd0\xd1\x5a\xea\xc3\x4e\xfa\x3e\x94\x1b\x84\x1f\xec\xfb\x99\xbb\x2b\x24\x7e\xeb\x15\x81\x69\x98\x90\x29\x9f\xe5\x8d\xcc\x8f\x83\x13\x97\xc0\x24\x30\xb1\x2a\xe4\xdf\xba\x2a\x65\x54\xe6\x65\x51\x91\x8f\x92\x82\x24\x58\xf6\xdd\x13\x87\x23\xda\xc8\xe0\x5e\xde\x6c\x66\x08\x8b\x36\xbc\xea\x4f\xcc\x0e\xee\xb4\xe3\x84\xca\x8b\x96\x48\xc6\x15\x26\xa1\x3d\xed\x2a\x20\xf1\x82\xf0\x27\x35\xe3\xe4\x7d\xa4\x15\xeb\xb2\x02\x03\xa0\x9b\xd0\x1e\xb8\xd7\xf1\xda\xfb\x44\xd6\x37\x8c\xec\xb2\xfe\x85\x57\xd5\x3f\xe7\x79\xfc\x80\x63\xd5\x12\x6e\xb3\xdf\xfb\x5a\x6e\xc0\xf0\x24\x78\x74\xa4\x83\xb2\x4c\x48\x99\x57\xae\xf6\xcb\xe9\x73\x4a\xc6\xa7\xaf\xff\xf8\xe6\xec\xcd\xb3\xb7\xde\x15\x8a\xa9\x97\x5f\xbe\x76\x7f\x0d\x9c\x3a\x1a\x4c\x37\x6e\x8f\x32\x6a\x18\x08\x53\x7e\xf8\x13\x19\xa7\x74\x6a\x0d\x9c\xb5\x79\x52\x34\x17\x6d\x82\x28\xcb\x24\x86\x11\xea\x39\xea\x62\x80\x6a\xc6\x57\xf7\x3a\xea\xc5\xb4\x9d\xe5\x2b\xa9\x30\x17\x7d\xe5\x0c\x83\x3d\x57\x63\x15\xa9\x61\x35\x08\xcb\x85\x82\x5f\xa3\x63\x84\x6b\xef\xe7\x46\xce\x7a\x81\x5b\x9b\xd1\x97\xe0\xac\xd0\xb1\xd0\x0e\x86\x68\xe7\x20\x0a\x69\x48\x1d\x57\xb0\x22\xab\x5d\xd2\x17\x47\x0c\xf8\x10\x1a\x93\x31\xac\x47\x7a\x03\xa8\x6b\xb7\xda\x0c\xa5\x69\x93\x39\x18\x53\xb8\x40\xb8\x85\x67\xb8\x35\x91\xc7\x7a\x8f\x15\xfb\x52\x05\xe9\x11\xf0\x23\x6e\xed\xbe\x5b\xff\x43\xae\xfa\x1d\x91\x38\xc6\x3d\x90\xfd\x4f\x75\x0f\xa4\x9f\xe2\x98\x86\xf1\x13\xff\x9c\x14\x3a\x8c\x63\x50\x4b\x5d\x68\x19\xb5\x25\xfc\x95\x9e\xc7\x97\x8b\x50\xfe\x35\x76\x30\x0b\xcb\xc6\x31\xcc\xae\xb8\xf3\x4d\xdb\xad\x75\x44\x72\x8e\x5b\x8f\x2b\xe5\x6b\xb2\xa8\xc8\x9c\xaf\xd7\x23\xf5\x97\x5d\x69\x6b\x48\xa5\x8b\xac\xf3\x76\xdc\x5e\x16\x57\x5e\x91\xc8\xfe\x81\x2c\x9f\xba\x90\x74\xb6\x54\x1f\xf1\xb4\xe0\xa4\x57\x24\xef\x74\x96\x89\xe2\x78\x3a\xf3\x10\x0b\x01\x78\x70\x74\xa4\x7c\x2b\x89\x05\xd8\xd8\x08\x32\xd1\x65\x0c\x15\x04\x46\x5e\x29\x29\xdc\x20\x70\x29\xe4\x64\x77\x8f\x0f\x9a\xbc\x3b\x08\x66\x91\x08\xb1\x4e\xe7\xd1\xe4\x4c\xb9\x77\x00\xc9\xb5\x50\x85\x7a\x00\x2b\x4d\xa8\x9d\xd5\x5f\x79\x80\x20\x7c\xbd\xd6\xee\x6f\xa3\x3c\x67\x00\xbd\x66\xe7\xd2\xa8\x52\xf8\x49\xa0\x6f\x71\x93\x7d\x99\x63\x63\x92\x57\xa8\xb3\x23\x3a\x1f\x5e\x16\x2d\xfb\x35\x1f\x9e\x13\xc2\x86\x00\xdc\x53\x54\xb4\x25\xe5\xf0\x70\xd8\xae\x96\xa4\xc9\x90\x57\x42\x2c\x01\x71\xd2\xfc\x81\xb6\x67\xc2\xed\xf0\x5d\x0f\xfd\x2a\xbe\x75\xf5\x75\x78\xe1\x3d\x8d\x12\x1e\xbb\x9b\x0d\x36\xa6\x5f\x0b\x30\x26\xc5\x7f\x3e\x8e\x18\x3f\xd7\x62\xbc\xa1\xcf\x5b\xa5\x71\xa2\xb7\x84\xb8\xa3\x01\x8e\xe4\x2b\xba\x20\xf3\xdb\x79\x45\x9e\x14\x55\x75\x5e\xcc\xdf\xb5\x93\xd1\xb1\x12\xa1\xbf\xac\xeb\x77\x93\xd1\xf1\x06\xe1\x85\xc7\x25\x75\x59\x94\xd8\x0a\x1b\xb7\x47\x1e\x27\x84\x6f\xc4\x6a\x0d\xc9\xfb\x65\x43\xda\x56\xac\x04\xe8\x5b\x08\xe5\x97\xa4\x19\x9e\x13\xc0\xfe\x1a\xd6\x8d\x47\x19\x07\xa4\x17\x06\x12\x20\xd3\xec\x55\x7b\xe7\xec\xff\x89\x9a\x46\xe2\xb2\x25\x21\xcb\x22\x44\x77\x9e\xa6\x92\x96\x6d\x50\x36\xc7\x44\x39\x14\x61\x86\x57\xb8\xca\xdb\x6c\xee\x04\x76\xcc\x1d\x5e\x41\x1e\x8a\x39\xc2\x55\xfc\xf4\x18\xdc\xa9\x7c\x8e\x33\xa6\xb9\x15\xa5\x8a\xd8\x22\x81\x28\x25\xe1\xd8\x65\x58\x34\x31\x54\xd0\x0e\x04\x32\x44\x0d\x60\xc7\xbe\x01\x20\x05\x5b\x34\x43\x18\xe2\x24\x3c\xb6\x18\x22\x71\x64\xe5\x66\xc5\x62\xc8\xdb\x04\x7b\x68\xec\xf1\xd2\x46\x3f\x0b\x9f\x5a\x62\x98\x34\xc9\xf2\xd4\x1e\xda\x0a\x43\x78\x05\xcf\xf0\x0a\xe1\xf9\x26\x88\x68\xf1\x21\x2b\x03\xc0\x4a\x3c\x77\x23\x69\x4a\xad\xe9\x71\xd8\xb0\xf5\x3a\xd3\x08\xb2\x12\x72\x0f\x10\x40\xc3\xa9\x20\x65\x77\x26\x48\x89\x40\x28\x94\xe1\x24\x0b\x87\x0f\xbb\xdc\x97\x0f\x93\xa2\xd6\xa7\xf3\x43\xd5\xb3\xe2\x1e\x77\xbd\xee\xfa\xdd\xc0\x29\xc6\x77\x0c\x3c\x16\x9f\xfd\x21\x6c\xe6\x47\x62\x13\x3f\x96\x1a\xb3\xd1\x8f\x07\x56\xa1\xf9\x24\x20\x86\x51\x80\x70\x50\x0f\xe8\xca\x40\x96\x75\x42\x64\x9a\x33\x67\x43\x50\x77\x5e\xcf\xab\x7a\xfe\xee\xb0\xad\x6a\xee\x84\xbe\xb7\x0f\xec\x63\x7f\x82\xdd\xe2\x9c\x5c\x2d\xab\x82\x93\xde\x8a\x5e\xe9\x2b\xfa\x9e\xb2\xf6\x01\xfc\x08\x5e\x39\xd5\x6f\xc1\xef\x17\xaa\x77\xe6\x5b\x88\x95\x9f\x60\xc6\x75\xf2\x0e\x33\xc7\x63\xf2\x9e\x13\x56\x66\x77\x32\x1c\x69\x62\xe6\x14\xab\xb0\xa9\x49\x92\xe0\x33\x26\xfe\x08\xb1\x9b\x25\x92\x53\x04\x50\x1e\x24\x45\x40\x70\x12\x73\x4f\xcb\x17\xe0\xc1\xf4\x4c\xa9\x84\x3b\x0e\x5d\x52\x53\x24\xdd\xa6\x18\x29\x1a\xd2\xf2\x97\x0b\x71\xd5\x64\x66\x77\x00\x93\x34\xe2\x32\x9d\xe7\x05\x6d\x39\x69\x48\xa9\x00\xab\xc0\xee\x61\x13\x7a\x9e\x09\x52\x28\x76\xf3\x9b\xaa\xe6\x6e\x11\x0c\xd3\xe0\x24\x6b\x05\xcd\x95\x98\x7d\x4e\x4a\x87\x8e\x73\x93\xf7\xb6\x3b\x20\xe6\x0d\x88\x6a\x90\x5b\xdb\xdc\x19\xac\xe9\x1b\xd8\x11\x54\xe7\xb4\xb2\x10\x88\x14\x27\x30\x98\x04\x19\xe4\x35\xf1\x73\x10\x36\x43\xdb\xb7\x45\x73\x41\xb8\x68\xe8\x3b\xd1\x22\x08\xbb\x35\x52\xaa\x08\xbf\x41\xd8\x5d\xd2\x4f\x39\x41\x83\x3a\x4d\x43\xe8\xa1\x02\xa5\x69\x11\x41\x1b\x82\x63\x1d\x07\xf1\xc6\xc9\xd2\x86\x5a\xa2\x00\xb6\x7b\xdc\x90\xa2\x7c\xc9\xaa\xdb\xcc\xf9\xde\xb1\x3b\x8e\xb1\x53\x19\x60\x67\x37\x1b\xec\xdc\x4a\x91\xad\x20\x9d\xe6\x82\xc5\x50\x00\x74\xe1\xe3\xf1\x59\x49\xfa\x56\x79\xb3\x41\xf7\x3c\xfd\xce\x29\xbc\xdf\xe9\x77\x2b\xf6\x9f\xfe\x9f\x8a\x92\xfe\xd4\xe7\xda\x5d\xee\x4e\x13\x4b\xb9\x1b\x7b\x1b\x91\xef\xa1\x19\x09\xa6\xf8\x17\x4a\x6e\xc2\x56\x7a\x47\xd0\x43\x23\x20\x1b\x43\x7b\x2a\x36\x46\xf7\xa3\x9c\x7e\xc6\x67\xb0\x32\xe3\xe9\x2c\xd1\xc7\x31\x36\x50\x7b\xc8\xd4\xd1\xee\xb4\x90\x98\x24\x13\x6d\xd6\x29\x2d\x8f\x39\xec\xfd\x5e\xeb\x8e\xbb\x69\x2e\x49\xb5\x24\x8d\xbe\x53\xf4\x04\xfe\x08\x03\xba\x1c\xd1\x69\x66\x92\x03\x7f\x90\xd4\xe2\xac\xb2\x90\xf0\x63\x7b\xaf\x51\x7b\xef\x4b\xf8\x82\xb1\xfc\x90\x8c\xbb\x5f\xdd\xf4\x7d\x75\x84\xad\xd9\xf7\x24\x7d\x92\x73\xd4\xe4\xe6\xa0\xec\x33\x7c\xff\x9e\xff\xe4\x41\x4d\x11\x5e\x12\xf2\x14\x68\x29\xea\x4e\xee\xcb\x3d\x0e\x92\xde\x1c\x70\x68\xbc\x2b\xd3\x93\x60\x3a\xbb\x5a\xef\xfb\xa2\x2c\x8d\xd3\xc4\x06\x07\xf4\x78\xbf\x26\x24\xee\x9e\xdb\x8a\x7b\xb9\xc7\xe4\xf3\xde\xa6\xcc\x29\x0c\xe9\x3f\xef\x5b\xb8\x9d\xec\xdc\xcf\xb1\x96\x5f\xbe\xfd\xfa\xab\xc7\x45\xd3\x8e\xf5\xe8\xb2\x3b\x5a\x4e\x92\x67\x8f\x7f\x7b\xfd\xd7\xe5\x0f\x6d\x82\x61\x80\x93\x5f\xdf\x29\xb5\x66\x9b\x4c\xa6\x49\x6a\x12\x98\x61\x09\xb4\x2e\x9d\x39\x26\xd3\xe9\x6f\x70\x42\x17\x09\x9e\x4e\x3f\xfb\x0d\x9e\xc6\x59\x8a\xd9\x6c\x26\xad\x72\x77\x41\xdd\x23\x9c\x0c\x87\xc9\x0c\x4f\x8f\x7f\x83\x8f\x75\x13\xcb\xa3\x64\x36\xc3\xea\xef\x63\xe7\xef\xcf\x9c\xbf\x3f\x77\xfe\xfe\x8d\xf3\xf7\x7f\x3a\x7f\xff\xd6\xf9\xfb\x77\xce\xdf\xbf\x77\xfe\xfe\x2f\x31\xb8\x19\x16\x23\xf9\xfb\xdf\x99\x78\x21\x6f\x15\xc2\x49\x23\x86\x38\xdb\xc0\xc8\xc5\xf3\xcb\xa2\x7d\x76\x5d\x54\xc9\x64\x51\x54\x2d\xd9\xfc\x1a\x0b\xc1\x7a\x72\x77\x05\xf3\x2f\xef\xba\x7b\xac\xfd\xf8\xf2\xbc\x4d\x7e\xcc\x36\x8a\x33\x14\x3f\xfb\x36\xfa\xfc\x77\x6f\x39\xf9\xd3\xb2\xea\xd9\x46\x0a\xaa\x36\xc1\xf7\xd8\x51\xf2\xae\xdd\x6f\x17\x7d\xb6\x7d\x2d\xb7\x6e\xc0\xad\x55\x3f\xd6\x0e\xb0\xcb\xb6\x6b\x07\x48\xe1\x5a\x26\xef\x38\x94\xd7\x9d\xb9\xbe\xe5\xd3\x9f\xc2\xf3\xad\xf9\x09\x21\xac\x7e\x71\x7e\xfb\xc4\xce\x6f\x3f\x37\xd4\xd7\x27\xf7\x7b\xf3\xed\x8a\xd7\x4e\x3a\xe4\x4c\xf1\x8f\x48\xa5\xc3\x51\x5a\xd8\x06\x4f\xef\x36\x26\xa7\x91\x04\xd1\xf8\x10\x06\x56\x36\x2a\xe1\x8f\xfb\xf5\x21\x3e\xef\xca\x7a\x65\x48\x79\xf4\xcf\x8b\x96\xce\x0f\xcb\xa6\x5e\x96\xf5\x0d\xf3\xae\x11\xef\xcd\xe1\xbc\x66\x7c\x0f\x0f\x90\x04\xc7\x1b\x56\xb1\xf3\x1a\x1d\xfd\x50\xfb\xb2\x6d\x2f\xdf\xce\x9b\xba\xaa\x14\x61\x8a\x08\xa0\x1d\xd5\x92\x87\xb4\x8e\x2b\x3c\xc7\x0b\x5c\xe2\x4b\xbc\xc4\x57\xf8\x1a\xdf\x5a\x2a\x75\xe1\x58\x5b\x2e\xfe\xa7\xda\x84\xcf\xef\x4f\x8a\xcf\xfe\x05\x48\xf1\xd9\xbf\x0d\xb8\xca\xd9\xbf\x36\x29\x3e\xfb\xc9\x48\xf1\x8d\xa5\x07\x8d\x01\x27\x8f\x39\x08\x3a\xde\x42\x8d\xe3\x98\xe0\x1b\xe1\x1a\xcf\x43\xc1\x1a\xeb\x1a\xe3\x99\xa0\x4c\x64\xcd\x58\x1b\x7e\x7f\x20\xcd\x89\xf7\x4b\x6e\x3f\x66\xd0\x16\x9d\x69\x79\xf6\x49\x5d\x35\xde\xfc\x4b\xb8\x6a\xbc\xf4\x5c\x35\x5e\x7e\x54\x57\x8d\xf7\xbf\xb8\x6a\x6c\x75\xd5\x78\x15\xba\x6a\xbc\xfa\x94\xae\x1a\xa7\x11\x57\x8d\xd3\x2d\xae\x1a\x17\xfd\xae\x1a\xef\x02\x97\x89\x77\x3f\xb9\xcf\x86\xe9\xfa\x95\xc3\x3f\xbc\xfa\x09\xbd\x35\xcc\x00\x5e\x6b\x15\xbc\xe6\x39\x3e\xa1\x6f\x34\x76\x3e\xfc\xad\xa6\xb4\x36\xe1\xe0\xdd\x46\x4f\x90\x9b\x15\x82\xc5\xb2\x42\x10\x74\x57\x03\xbe\xe3\x94\xcc\x36\x90\x02\xd0\x21\x3f\xa3\x91\xfb\x13\xd7\x01\xf1\x19\xf9\x0f\x70\x66\x69\x51\xbd\x5e\xd7\x2e\xf1\x15\xb7\x4b\xed\xd3\xa6\x3a\x6f\xb4\xf6\x78\xdc\x10\x99\xfc\x07\x75\x93\xfb\xba\x0e\xf7\xda\xca\xb1\x5e\x37\x1b\x84\x6b\x84\xa9\x83\x3a\xea\xf5\x07\xdd\xc1\x68\xfc\xe7\x27\x75\xf7\x4a\xa0\xfa\x4a\xc0\xde\x4b\xc5\xca\x2b\xdb\xde\x51\xde\xed\xa1\x7f\x69\x6b\x9d\xc9\x04\xe1\xfa\x23\xf9\xf3\x3c\xc9\x33\x2d\x50\x9c\xf1\xa6\x98\xbf\x23\x25\xd6\xe6\xbf\x33\xe9\xa2\x81\x8b\xe0\x77\x1b\xfc\x5e\x05\xbf\xab\xe0\xf7\x3c\xf8\xbd\x08\x7e\x97\xc1\xef\xcb\xe0\xf7\x32\xf8\x7d\xfb\x6f\xe3\x1c\xf4\x52\x3b\x07\xb5\xd6\x39\x08\xc4\x9e\xfc\x7d\xd6\x3a\xbe\x2a\xad\xb6\x4c\x0f\x9e\x49\x2a\xdc\x3a\xe0\x22\x1f\x07\xe1\xe9\x75\xf6\x2e\x23\x79\xe1\x66\xf1\x2d\x82\x2c\xbe\x8d\xb8\xa7\x12\xde\x14\x4c\xca\x7c\x94\x5d\xbc\x60\x4f\x04\x17\x93\x08\xa9\xb6\xb9\x68\xc7\xb1\x97\xeb\x75\x54\x34\x3c\x3c\xf4\x0a\x1f\x52\x96\x20\x0c\xa3\xf0\x3a\x21\x65\x7f\x1f\xe6\xdd\x1e\x5d\x90\xb2\xaf\x07\xca\x2e\x5e\xae\xf8\x96\xef\xd0\x6f\xf7\xfc\x90\x7a\xc5\x9d\x7e\x68\xfb\xb6\x5e\xcd\x2f\x9f\x92\x6b\x3a\x27\xa6\x7d\xef\xe9\x7a\xfd\xb8\xae\x2b\x52\xb0\x6c\x34\xba\xa1\xac\xac\x6f\xd2\x34\xa9\x19\x17\x25\x5a\x5e\x34\x5c\x90\x46\xf9\x02\xd9\x86\x75\xf7\x2f\xca\x1e\xd9\x5b\x8b\xfa\x87\xc6\xf2\xad\x3a\xd7\x05\xc6\x2b\x46\xff\xb1\x22\x2f\x4a\xa7\x55\x48\xa5\x79\x4d\xca\x04\xdc\xe5\xed\x53\x56\x56\xe4\x75\x5d\xf3\xaf\xeb\x55\x4b\x9e\xd6\x37\x2c\xc1\x9a\xd0\xe9\x42\x52\xc8\x87\xe8\x3c\x36\x27\x2d\xaf\x9b\x36\xc1\xd3\x99\x2d\x70\xb5\xe2\x90\xdb\xe3\xe5\x79\x4b\x9a\x6b\xd2\xd8\x26\x6e\x54\x89\x82\xd1\x2b\x28\xa2\x56\xe3\x1a\xbf\x03\x78\x27\x62\x3d\xde\x5a\x9c\x51\xed\xf1\xd6\x12\xbe\x5a\xc6\xdc\xdc\x2c\xe4\x10\x66\x79\xa9\x12\x08\x8d\xff\xb1\x22\xcd\xed\x1b\x22\x98\x21\x41\x12\xa6\x65\xc1\x8b\x43\x72\x5e\x1e\xd2\x32\x37\x73\x64\x62\x0a\xba\xd3\x84\x93\x43\xde\xd0\x8b\x0b\xd2\xcc\x12\x84\x64\xb2\xb8\xc8\xcc\x58\xea\xd5\x00\xb9\x52\x84\xa9\x19\x73\xb0\x76\x68\x66\x4d\xff\x1e\xf0\xb1\x9e\xf4\xf5\x9a\xe8\x24\xca\x6d\x46\xd1\x7a\xcd\xd2\x94\xf9\x4f\x9c\x38\x0f\x27\xfd\xe8\xf7\x99\x74\xff\x50\xa9\xad\x98\x8f\xf2\x44\x05\x6b\x67\x92\x2d\xe1\xba\x7f\x46\x8a\x86\x16\x87\xf5\x0d\x6b\xed\x7c\xd0\x31\x2d\xe5\x95\x88\x13\xf8\x6c\xdb\x4d\xed\x77\x53\xe4\xdf\x67\xb5\xfb\xbe\xf0\xdf\xb7\x79\xe1\x0c\x43\xd3\x9d\x22\x4d\x5b\xd3\x85\x94\xb3\x49\x56\x08\x36\x33\xa3\x98\x8f\xed\x2e\x47\x27\x76\xa2\xf2\xd1\xf1\x84\x07\xab\xa4\xfc\x0d\xc7\xf3\xaa\x6e\x49\xd6\x40\xc8\xcd\x06\x9b\x4f\x2d\x4a\x99\x68\xed\x2b\xda\x72\xa2\xb3\x57\xcb\x26\x9a\xba\xe6\xf0\x4e\xdc\x17\xb8\x6f\x59\x45\x83\x58\x9e\xc2\x6e\x63\x49\x43\x5a\xfa\x03\x51\x29\x22\x9b\x15\xab\xea\x7a\x79\x7a\x53\x34\xe4\x35\xd1\x2a\xb2\x2d\xb5\xeb\x86\x12\x26\x0f\xc7\x1c\xd2\x82\xed\x68\x48\x26\x88\x74\x69\x48\x9a\x66\xfd\x9f\x9a\x38\xa4\x04\x2b\x84\xa8\xd5\xfc\xf2\x8d\x78\xf0\x25\x7c\x29\x4c\xd7\x96\xc9\x92\x2d\x10\x56\x26\x5b\xe7\x07\x61\xb5\xd9\x85\x50\x29\x1d\x65\xba\x44\x21\x9e\xa3\x4c\xa6\x74\xd0\x01\xb3\xd2\xb1\xe1\x9b\xba\x24\x4e\x2e\x36\x66\x20\xc2\xa8\x04\xec\x86\x94\xab\xa2\xfd\x57\x50\x1c\x65\x0c\x3d\xa4\x69\x9a\x3c\x7e\xf9\xf4\x3b\x21\x82\x50\x0d\xb4\x3d\xe6\xf5\xb7\xcb\x25\x69\x9e\x14\x82\x5b\x4c\xd3\xe4\xcb\xb7\x5f\x7f\xb5\xa5\xc4\x43\x74\xa7\x32\x8c\x19\x8f\x29\xea\x8d\x29\xd7\x47\xe0\x44\x92\xb0\x49\x7c\x3c\x35\xda\xd8\x1c\xb1\x19\xd3\x79\x0b\x8b\xb2\x94\xe5\x60\xf2\x29\xbb\x00\x2b\xb1\x4e\x8e\xa8\x52\x41\x47\x22\x8e\xe4\x9e\x00\x23\xf5\x1f\xab\xfa\xbc\xa8\x60\x91\xda\x4c\x35\x2b\xdf\x04\x2d\x6b\xcc\xb9\xc8\x3a\x4c\x67\x76\xc5\x65\xdd\x8f\x70\x42\xb6\x6f\xcd\x58\x37\xf7\xde\x9d\xfd\x8d\xec\xde\xa0\x66\x9a\xe5\x55\x43\x5e\x74\xe7\xd9\xbb\x3f\x24\x95\x37\xf7\xd2\x33\x26\xa6\xb0\x4c\xd3\xaf\xbd\x3c\xf5\x62\xbb\xf8\x77\x57\xce\x63\x7c\xca\xa6\x3b\x80\x97\xab\xa8\xa3\xb6\x4a\xe0\x0a\xe2\x7d\x6c\x04\xe1\x51\x51\xfe\x6b\xee\x69\xd1\x47\x50\xae\x20\xe0\x63\xbc\x60\xaf\xaa\x02\x56\x84\xe5\xcc\xaf\x69\x8f\x2e\xd2\x37\x14\x11\xb4\x94\x11\xb1\xe3\xb3\xd1\x11\x1a\x88\xab\x20\x4f\xbc\x9b\x01\x27\x87\x87\x50\x28\x41\x38\xe3\x39\x95\xa8\xfc\x62\x55\xb4\x37\x85\x56\x2a\xe0\x73\x39\x9a\x18\x87\x08\x10\x89\x3c\x4b\x86\x89\xe0\x30\xb3\xc6\x6f\xa7\x28\x4b\x63\x80\x89\x35\xa2\xd9\x33\xbf\x15\xd0\x66\x10\x56\x3e\xb9\xa4\x55\x99\x51\x7d\xf2\x82\x45\xf2\x1b\x33\xeb\x84\xbf\xce\xa8\xb7\xbc\x4c\x7d\x8d\x6e\x6d\x23\xb1\x49\xb1\xc3\x87\x7c\xdd\xe5\x6e\x76\xee\xab\x90\x23\x02\xbe\x3d\x6c\xc8\x17\xbb\xa5\x2e\x70\x74\xfc\x30\x6b\xf2\xac\x51\xd9\x2a\xac\xfe\x09\x44\x63\xa5\x32\x9f\x1e\xcd\xc6\x90\x57\x52\xac\x60\x8b\xc6\x6d\x7d\x45\x62\x9e\xcb\xc9\x7f\xcc\xeb\x2b\x48\xb1\x38\xca\x73\x32\x66\x75\x09\x06\xea\x34\x1d\x65\xc9\x7f\x40\x14\x72\xee\x3f\x4f\xec\x83\xbf\x00\xb4\xfb\x06\x21\xb4\x5e\xef\x1a\x8b\x4a\x6b\xf9\x93\x8c\x46\xc8\x67\xb0\xf1\xdb\xcb\x7a\x55\x95\xf6\xf2\x04\xf3\x40\xcf\x3b\x21\x8d\xf9\x5c\x05\x42\xb8\x11\x4d\xc5\x2f\x62\xe9\xab\x14\x5d\xc9\x71\x2d\xff\xc8\x84\x70\x28\x36\x8d\xd8\xcb\x42\x10\x6c\x57\xe7\xbc\x21\x2a\x63\x61\x48\xf3\x77\xee\x21\x74\x67\x14\x17\xd1\x6e\xf5\x99\xef\x0c\xa7\xa4\xed\xbc\x66\x8c\xcc\x79\xd6\x33\x62\xad\xb8\xb0\x83\x0a\xa9\x70\x64\x34\xbb\x38\x06\xb1\xe0\x2e\x51\x17\xdc\x9b\x43\xd3\xfd\xbe\x9c\x97\x7d\x97\x9f\x65\x00\x8f\xf6\xb9\x0f\xf6\xed\x3e\xbe\xbc\x91\x41\xd8\xd0\x15\xc8\xee\x12\x11\x16\x34\x1b\xda\x58\x76\xcd\x76\xd3\xb9\xba\x23\x5d\x28\x26\x31\xfa\x51\xf7\xe1\x32\xa3\x0d\xdc\x93\xd1\xb4\x97\x55\xc8\xb1\xf4\x05\x17\x19\xdc\x58\x98\x95\x65\x43\x44\xff\xb2\x6a\x47\x97\xcf\x5d\xf1\x88\x7b\xe2\x51\x63\x7e\x03\x63\x68\x65\xa0\x06\xad\xd7\x42\x4c\xe0\x81\x34\x95\x1d\x61\x26\xf8\xaf\x53\x9d\x42\x5f\xf5\x99\x35\x98\x20\x5c\x9b\xf7\xf2\xf1\x53\x52\xf1\xa2\x45\x19\x47\xb8\xc8\xeb\x71\x29\x7e\xfe\x0d\xb7\xfa\xcf\xef\x06\xc5\x17\x54\x3d\xfd\x86\x5c\x14\x9c\x5e\x93\x93\xac\xc8\xc3\x67\x98\xeb\x2f\x7c\xaa\xa2\x3e\x10\x9a\x14\x8f\x74\xb1\x57\x30\x8d\x7e\x55\xfd\x2c\x5a\xb5\xd5\xbd\x7e\x67\x7b\x6d\xf3\xf0\x59\xbc\xaa\xee\xf5\x3b\xdd\x43\x9a\x3a\x75\xb7\x75\x6b\xe3\xa7\x5e\xc9\x57\x82\xbf\xc9\x8a\xf5\xba\x45\x69\x0a\xf3\x56\xd2\x56\x89\x6d\x7a\x56\x0b\xdc\xe2\x06\xf2\xfa\x54\x2d\x19\x76\x1b\xdd\x6c\x06\x5b\x48\xc3\xcd\x25\x21\x55\x82\x39\xbe\x9b\x17\x4b\xbe\x6a\x40\x43\xb6\x2c\xda\x96\x5e\x13\x19\x1f\xd8\xcb\xcf\xe6\x31\xe2\x13\xdd\xea\xb1\x4e\x04\xc9\x95\x23\xf6\xd8\xf0\xdd\x6c\x74\xde\x79\x23\xeb\x04\x47\x7b\xc7\x19\x71\x30\x03\x82\xbe\x63\x84\xde\x44\xa2\x0c\x7a\xe5\x46\xc9\xd5\xef\x23\x2c\x46\xf8\xff\x58\xf8\x05\x30\xb2\xbd\xdd\x90\x5e\x3a\x81\x42\x22\x77\xef\x8f\x8b\xae\xe1\x27\xf9\xbe\xad\x3d\xed\xf5\x89\x25\x69\x39\x65\x92\x1d\x97\xdc\x73\x1f\x7e\x83\xd9\xa2\x17\x44\x33\xda\x8f\x6f\x5f\x94\xee\xc5\x61\xdb\x0a\x65\x03\xcb\xed\xf7\x34\x9f\x70\xd2\x02\x9b\xe4\xc7\x39\x2a\x2b\x60\x43\xda\xba\xba\x26\xd2\x81\x59\x66\xd5\xcd\x54\x72\x90\x09\x61\xd7\xb4\xa9\x19\x0c\x1d\x8d\x9d\x5f\x96\xa7\xe5\xb7\x55\x37\x2b\xbe\x5c\xb7\x24\xd1\xc1\x51\xe2\x13\x30\x10\xeb\x7a\xa9\x12\xb4\x2f\x00\xe6\x6a\xdc\xd0\x8b\x4b\x8e\xeb\x9c\x8f\x6f\x68\xc9\x2f\x71\x91\xf3\xf1\x25\x81\x87\x42\x38\xaa\xf9\x25\x69\xde\x88\x3e\xda\x81\xb1\xfc\x8d\xf2\xbc\x35\x32\xfe\x6a\x48\xd9\xb0\x95\x5d\x56\x79\x3b\x5d\xcd\x06\xe4\xc0\x11\x3f\x56\x38\x99\x0c\x6d\xbe\xb5\x0a\x27\x0f\x13\x8b\xed\x93\xa6\x99\x28\xcd\xeb\xe5\x64\xe8\x66\x68\x7b\x98\x20\x99\x69\x4d\xbc\x15\x83\x75\x5e\x33\xf5\x9a\xaa\xd7\xf0\x09\xce\x7b\xaa\xde\xd7\xea\x3d\x7c\x98\xf3\xbe\x56\xef\x0b\xf5\x5e\x7e\xae\x53\xa0\x40\x3a\x6e\x49\x19\x89\x2f\xf9\x55\xf5\xa6\x58\x10\x90\xff\x67\x28\x4d\xdf\x78\xb1\xae\x14\xfa\x7a\x93\x81\x65\xa8\xdd\x64\x36\xd0\x15\x5f\xe7\x6f\xb3\xec\x2a\xbf\x45\x4e\xf1\x8e\xfa\x74\x4a\x67\x60\x9a\xf0\x0c\x83\xbe\xd9\xd0\xb5\x51\x38\x66\xaa\x58\x3a\xdf\x98\x18\x7a\xd2\x2b\xd3\x4d\x92\x64\xb3\x41\xf8\x6d\x76\xe5\x8e\x50\x69\x6c\xa7\xf5\x0c\x5b\xfb\xa8\x93\xc1\xcf\xa6\xe3\x88\xd5\x43\xf8\xca\xcd\x58\x17\xb4\x6d\x15\x27\xd3\xe2\x9e\xcd\x9b\xaa\xdb\x7b\x70\x74\x06\xd3\xf6\x9e\x5d\xd8\xba\x7b\xf5\x01\x6a\x81\xe9\xea\xc3\x3a\x79\x09\x16\x88\x6d\xbd\xf4\x48\xac\xd3\xea\x43\xd6\xa5\xd3\xce\x7e\xeb\x14\xe9\x7e\xfe\x81\xeb\x76\xdf\x11\x74\x25\x9b\xe9\xe2\xbe\x5d\x77\xda\xd8\xa3\x4f\x4f\xc2\x99\x96\x1f\xd2\xa5\xdb\xc4\xf6\x1e\xfb\x84\x9a\xe9\xe5\x3d\xfb\xed\x69\x68\x47\xef\x11\x59\x67\xba\xbc\x6f\xcf\xdd\x46\x82\x5e\xaf\x1c\x2b\xe9\xf7\x42\x08\x11\xd7\xc7\x43\xc1\xfc\x8e\x88\x55\x22\xad\xd7\xee\x2f\x2b\x4d\x6c\xb5\x9b\x25\x08\x3d\x34\x12\x0a\xa8\x18\x7c\x85\x99\xf6\x2e\x58\x55\xd5\x80\x84\x6f\x37\x5d\x57\x93\xaf\xa5\x01\xdb\xf0\x3b\xff\x58\x91\x96\x9f\x6a\x82\xfa\xbc\x29\x3c\x7d\x88\x96\x83\x54\xf1\x0b\x19\x84\xbe\xe2\xa4\x84\x5b\x53\xfb\x28\xb2\x9a\x91\x04\xac\x4b\x86\x34\x2b\xad\x48\xb3\x62\x4c\xfa\x5d\xba\x2f\x5f\x55\xc5\xed\x1b\x5e\x70\x82\xee\x48\x84\xd3\x33\xe5\x40\x93\x9a\x39\xce\xd8\xa2\x7c\x94\x73\xf2\xab\x34\x08\x73\x50\x8b\x28\x3e\x5b\xfd\x6d\x5c\x13\x9e\xfc\x08\xd7\x65\x65\x7c\xdb\xe9\xba\xbc\x3d\x2a\x4f\x79\x4f\x61\xcf\xbd\xd8\x6e\xa2\x85\xe3\x10\xb4\xf8\x9f\xea\x50\x5c\x7e\x52\xcf\xc5\xcb\x7f\x09\xcf\xc5\xa5\xe7\xb9\xb8\xfc\xa8\x9e\x8b\x57\xbf\x78\x2e\x6e\xf5\x5c\xbc\x08\x3d\x17\x2f\x3e\xa5\xe7\xe2\x75\xc4\x73\xf1\x7a\x8b\xe7\xe2\xa2\xdf\x73\xf1\x36\xf0\x5c\xbc\xfd\xf9\x3c\x17\xfd\xc8\x87\x9f\xc1\x73\xf1\xfc\x67\xf2\x5c\x3c\xfb\xc5\x73\xf1\xdf\xc1\x73\xf1\x26\xd7\x61\x58\xc6\x31\x90\x05\xbf\x69\xf0\xfb\x63\x3b\x36\x9e\x65\xd9\xfc\xdf\xc6\x17\x71\xa9\x7d\x11\x6b\xeb\x8b\x08\x87\x2c\xbf\xca\x6a\x87\xcb\xae\x8d\x2f\xa2\x54\x63\xe1\xfa\xa3\xfb\x22\x9e\x67\xb7\x19\xc9\xa9\xeb\x8b\x48\xe3\xbe\x88\xf5\xc5\x45\x45\x5e\xb4\x8f\x09\x65\x17\x52\x2a\x2a\x1f\xdf\x82\xef\x81\x96\x39\x46\xc7\x08\x43\x7b\x1d\xe7\x36\xc7\xa9\xac\xc6\x59\xa3\x9d\xca\xa4\xe7\x80\xeb\xe7\xd6\x31\x74\x44\xcc\x3e\x0a\x97\xbe\x5c\xaf\x93\x2b\x51\x15\xb4\x09\x9e\x2d\x84\x68\xff\x89\x34\x85\x8b\x62\x7c\xbe\xe2\xbc\xf6\xad\xf4\x2d\xaf\x97\xe2\xc0\x14\x17\x85\xb4\x55\x92\xf0\x91\x56\x52\x9f\x89\xe7\x6f\xc9\x7b\x2e\xbd\xb7\x68\xcd\xbe\x65\x9c\x56\x30\xec\xd5\x52\x97\xda\x39\x3f\x27\xfb\x15\x03\x7f\xab\x7e\x5b\x97\xac\x2f\x41\xb1\xb1\x3b\x8b\x4f\x2a\x3a\x7f\x17\x9b\xc1\x58\x14\x9a\xd6\x95\xea\x19\xf1\x70\xd9\x46\xdd\xee\xd7\xeb\xad\xeb\xe0\x1b\x4a\xc3\x25\x48\xe6\x30\xb4\xf8\xeb\xf5\xfa\x68\x64\x57\x68\xbd\xfe\xa0\x15\xfa\xc9\xe7\x3e\x9c\xfc\x3f\x93\xdb\x0f\xda\xc0\xd9\xb1\xcc\x56\xfd\x8e\xdc\x3e\xa9\x4b\x72\xb2\x4f\xe7\x93\xcf\x3f\xf3\xea\x00\xbe\xbd\x6f\x12\xc2\x7b\x7d\xc4\xe4\xb3\xdf\xb9\x0d\x29\xb8\xa5\x6d\x9e\x7e\xdd\x5d\xf7\xd6\xa8\x66\x7e\x9c\xc5\xfa\x2c\x54\xb8\x44\x3b\x7a\x26\xc4\xde\xa8\x31\x74\xdf\xf5\x3d\xc2\xa3\x8c\x88\x9d\x14\x9a\xe1\xb6\xee\x70\x14\x98\xc4\xa3\x85\x3b\x13\x8c\x03\x33\xfa\xf1\x3d\xcd\xe8\xdd\x39\x51\x40\x0f\x44\xdb\x6b\xf5\xdd\x27\x6e\xa5\x45\x3d\x5f\xb5\x19\xc2\x2d\xe1\x6f\xe9\x15\xa9\x57\xdc\xd3\x70\x80\x69\x57\xd9\x71\x85\x60\x22\x5b\x32\x03\x92\xf7\x1b\x0c\x28\x4b\x80\xb2\x69\x1d\xd0\x80\x03\x67\x62\x9f\x65\xea\x3c\x63\x31\x99\x47\xca\x04\x8e\x8f\xcc\xff\x8f\x8e\xed\xff\x8e\xb0\x64\x54\x74\xd7\x62\x46\x97\x42\x80\x91\x2d\x71\x64\xc5\x19\x58\x07\xb8\xc0\xbc\x5e\x7a\xeb\x42\x79\x24\x2e\xd4\x23\x84\xbb\x47\x60\x13\xf5\x04\x50\x13\x19\x33\x93\xed\x20\x93\x3f\x76\xe9\x76\xac\xfd\x95\xbc\x4c\x74\x75\xf5\xd3\xf1\x9f\xb0\xe7\x21\x78\xb9\xed\xdc\x7d\x58\x57\x76\xa8\xe7\x75\x79\xeb\xe8\xf2\x64\x73\x3d\x9a\x3c\x4e\xde\xf3\xc3\x16\x6e\xc8\x43\x7d\x6e\x12\x67\xd4\x9f\xde\xed\x64\x0b\x0d\xd9\x7e\x85\xdf\x8f\x74\x7d\xf8\xfc\x15\x65\x79\xcf\xc9\x9b\xa1\x34\xbd\xf4\xec\x54\x32\x81\xc9\x65\xc6\x31\x13\xfc\xbf\x63\xa7\xf2\xcc\x53\x1d\xce\x6a\xda\xec\xd6\x07\xcf\xb7\xb5\x80\xf0\xdc\x55\x06\x9f\xc5\x4a\x2b\x1e\x64\xca\x3e\xa8\xaf\x27\xea\xc0\xef\xee\xc7\x5c\xb7\x53\xfa\x41\x3d\xe9\xfa\xfb\xf4\xe5\xde\x70\xfb\xd8\xd2\xb6\x37\xb1\x77\x8f\x70\xd5\xed\x63\x5c\xdb\xd6\xc0\xf6\xde\xe2\x84\x71\x1f\x6b\xdb\xee\x66\xb6\xf7\xdc\x21\x61\xfb\x58\xdf\xb6\xb6\xb0\xa3\xbf\x88\x45\x68\x0f\xf3\xdb\x8e\x36\x82\x3e\xe7\x2e\x6c\xc8\xcd\x87\xeb\xde\x3f\x01\x5c\x48\x43\xfe\xb1\xa2\x0d\xd9\x89\x46\xa9\x32\xa3\xf4\x83\x81\xe0\x0b\x7c\x8e\xcf\xf0\x0d\x7e\x86\xdf\xe0\x97\xf8\x3d\x3e\xc5\xef\xf0\xab\x81\x1b\x61\x6b\x14\x65\xaf\xff\xa7\x6a\xf4\xdf\xfe\x2b\x01\x27\x3c\xf1\x35\x87\xd9\x93\x3c\xc6\xe8\x28\xed\x6f\x9a\x6a\x35\xf0\x05\xe1\x27\xce\xdf\x93\x70\xdb\x48\xa3\x82\xaf\xa2\x01\x73\xe0\xa8\x03\x2e\x72\x59\xb4\xce\xf1\x52\x3e\xca\x98\x23\xa3\xba\xc9\x48\xfe\x5c\x88\x16\x0f\xd1\x43\x07\xe8\x1f\xab\x30\x2b\xad\xb6\xde\x75\x58\x99\xa8\xe0\x66\x80\x39\x81\xff\xca\xfe\x1a\x34\xa1\x52\x65\xb7\x91\x06\x04\xdc\xac\xd7\xee\x9a\x7e\xff\x2f\x61\x47\xf9\x3a\x54\x03\xa7\xe9\xf7\x5e\x7a\x33\x0e\x3e\xd4\xdf\x43\x02\x2c\x57\x8f\xfb\xc2\x33\xc0\xbc\xf8\xa8\x06\x98\xa7\xbf\x18\x60\xb6\x1a\x60\x9e\x87\x06\x98\xe7\x9f\xd2\x00\xf3\x4d\xc4\x00\xf3\xcd\x16\x03\xcc\xeb\x7e\x03\xcc\x57\x81\x01\xe6\xab\x9f\xcf\x00\xf3\xdc\xb9\x57\x9e\xff\x1c\x06\x98\x1f\x7e\x26\x03\xcc\xe3\x5f\x0c\x30\xff\x0e\x06\x98\x6f\xf3\xbb\x0d\xfe\x32\x9f\x26\xbc\x5e\x26\x18\x9c\x25\x05\xdb\x46\x2f\x2e\xc5\xbf\xe0\xfc\x98\x60\xe5\xe4\x98\xcc\xf0\x5f\xf2\x8c\x85\x48\x13\xfd\xd0\x13\xfa\x41\x11\x3e\x68\xc3\x07\xab\xf0\x41\x15\x3e\x98\x87\x0f\x16\xe1\x83\x32\x7c\xb0\x0b\x82\xe2\x2a\xf8\x7d\x1d\xfc\x7e\xf5\x6f\x63\x16\x7a\xa1\xcd\x42\xcc\x98\x85\xf2\xa7\x19\x43\x5e\x5a\x36\xcd\x7d\xd1\xce\x95\xf3\x09\xfc\x4c\xe4\x65\xc2\x10\x7e\x9b\x7d\x95\xd1\x5c\x71\x53\xf0\x50\x0c\x04\xe1\xe4\xf2\x95\x11\x33\x2e\xf0\x57\x19\x45\xaa\x2c\xc2\xc9\xb5\x7d\x75\x1e\xbc\x82\x6d\x7e\x16\x3c\x94\xbb\xfe\x26\x78\xaa\x0e\xc1\xb3\xe0\xb1\x3a\x13\x6f\x82\xc7\xea\x88\xe0\x97\xc1\x73\xc7\x07\x3a\xc1\xef\x83\x97\xb4\x7d\xb9\x24\x2c\xc1\xa7\x61\xd7\x6e\x20\x67\x82\xdf\xa9\xd7\x3f\xa8\xd7\xcb\x86\x5c\xd3\x7a\xd5\xfe\x85\x34\x9c\xce\x8b\xca\x7e\xae\x26\x2e\x61\xc9\x2f\xeb\x86\xfe\x50\x33\xbe\xad\x6c\xcc\xe1\x3d\x2c\x73\xb6\xa2\x65\xa2\x33\xee\xac\x68\xf9\xbc\x6e\xe0\x8d\x33\xb8\x33\x17\xb3\x82\xfa\xaa\xea\x17\x65\x1f\xbc\x46\x07\xc6\x82\x8e\x45\x5f\x6e\xbb\xfa\x5b\x9e\x6a\x35\x15\xfe\xd6\x79\x6b\x32\x11\xdd\xd5\x4b\xc2\x26\x74\x2c\xfe\xc1\x60\x3d\x98\x50\x69\x45\xc0\x52\x41\x3e\xa1\x4a\x53\x8e\x6d\xf8\xd6\x84\x3a\xb1\x5c\x1b\xa4\xc7\x5d\xb3\x17\x8c\xf2\x34\xf5\x7e\x66\x74\xbc\x5c\x9d\x57\x74\x7e\xfa\xea\x85\x29\xd9\x28\x04\xf1\xd3\x57\x2f\x4c\x71\xe7\x59\x50\x47\x1b\x25\xbf\xce\x98\xce\x2c\x7b\x19\x59\xa1\x78\xb8\x81\xb5\x00\x74\xeb\xac\xd7\x49\xb1\xe2\x75\x62\xf4\x8f\xd7\x9d\x2d\xb2\xab\xd1\xb0\x46\xa7\x49\x67\x9f\xec\x6e\xcd\x29\xac\x6c\x17\x67\x17\x32\x9f\x92\x7a\xfa\xa2\xcc\x9c\x98\x0b\xb3\xb4\xd1\x90\x04\xee\x64\x6c\x91\xad\x1b\x7b\xd6\xe8\x78\xe0\xf6\xdd\xd9\x2c\xa3\x3c\xff\x56\xd9\x99\x62\xef\xb8\xce\x5e\xd2\x93\xde\xca\x8b\x02\x17\x52\xbd\x59\xcd\xb1\x3c\xc3\x69\x9a\x11\xf5\x67\x0e\x76\xe7\xc8\xb6\xe8\x3e\xcb\x9c\x86\x6c\x98\x69\x67\x80\x39\xc7\x36\x66\xc3\x54\xe8\x99\xfc\x3b\x8d\x64\x22\x0d\x8a\xe2\x14\x61\x39\xb0\x89\xb2\xb8\x8a\xbf\xb1\x9e\x3a\xf9\x50\xff\xc2\xea\x8b\x55\x5d\xf5\x0b\x72\x74\x61\x67\xb3\x6e\xcf\x99\xfa\x24\x7b\xee\x26\x30\x05\x9a\xe9\x94\x57\x32\x88\xa6\xe7\xae\xcd\xd0\x9b\xae\xe8\x63\xf0\xd3\xb5\x1b\xa6\x06\xf2\xd9\x63\xfb\xf4\x6c\xcb\xf0\xc4\xae\x9a\xdd\x39\xc1\x0b\x39\x3d\xae\x9d\xad\x66\x72\x81\x47\xc7\x9e\xa9\x5f\x3e\xce\xfc\xea\x98\x20\x6d\x49\xd6\x9b\xe1\xe8\x7e\xdf\xe7\xb7\xe7\x58\x5f\x80\x84\x45\x12\x4e\xab\xab\x37\xfc\xe2\x34\x1d\xf5\x7c\xb2\xea\xb9\xbb\x83\x47\x99\xfb\x75\x4f\x44\x7f\x91\xaf\x86\xe7\xb1\xcf\xee\xce\xb9\x2c\x65\x2e\x6a\xd9\x8c\xb9\x9c\x81\x93\xd5\x66\xf4\xa5\x7c\x29\x6e\x62\x15\x86\x27\xae\x53\xf9\x27\xdc\xb8\xf2\x4f\x79\xcb\xea\x2c\xc4\x72\x10\x3d\x97\x61\xee\xbd\xed\x5e\x80\x5e\x23\xe6\xe4\xfe\xa8\xc5\xc2\x1c\x21\xed\xd2\xfd\x01\x80\x44\x76\x45\x7a\xc0\x88\x9a\x34\x6d\xc6\xbc\x38\x7f\xc1\x4a\xf2\xfe\xd1\xe1\xb1\xf8\xa9\xac\xaf\x1b\x27\xca\x5a\xdc\x6d\xbd\x87\x22\x5c\x76\x69\xf9\xd7\x56\x76\x79\xee\xc5\xa9\x72\xd1\x4a\x9a\x6d\xd1\xd2\xda\x06\x1e\x36\xac\x89\xf6\xd6\xe8\x38\x87\x59\x40\x98\x7f\x92\x49\xa3\x8b\x8c\xa4\x29\x57\x9f\xdf\x65\x72\xf2\x9e\xe7\xeb\xf5\xd6\x91\xbb\x21\x7d\x0a\x68\x5e\xee\xd0\xce\x46\xc3\x2a\xa5\x57\x78\xb1\xe2\x7a\xd7\x16\xc5\x45\xbe\x75\x8b\xe3\xd6\x09\xd0\x5b\xe5\x01\x00\x08\xae\x72\x23\xc5\xae\xd2\x74\x85\xe7\x79\x3b\xbe\x2a\xf8\xfc\xf2\xad\x9c\x9e\xbf\x42\xcc\xde\xc2\x96\x9a\xa7\xe9\x1c\x97\xb9\x43\x06\x8c\x52\xdf\x72\x03\x36\xf1\x51\xc6\xb1\xc2\x89\xe9\xce\x1e\xbe\xeb\x4e\xc4\x84\xe1\x70\x0e\x26\x14\xf7\x7f\xfe\xa4\xc6\x7d\x5f\x3e\x29\xb0\xf7\xad\x93\x0a\x77\xbe\x6c\xb2\xc0\x7a\x77\xc1\xb6\xde\x20\x8f\x45\x00\x65\x96\x03\xf3\x20\x3e\xa6\x74\x01\x3f\x82\x02\x31\xd2\x6b\x15\xd2\x77\x86\xca\x4d\x9a\xd8\x1e\xb8\x76\x5e\x77\x37\x82\x95\x11\x26\x4a\xbe\x93\xf0\xf1\xd9\xdd\x46\x4e\xb0\x53\x02\x6d\xc4\x96\x6e\xc6\x10\xbb\x99\xa6\x36\xaa\x52\x3d\x12\xc4\x14\x74\xbd\x82\xa8\xda\x48\x4a\xe7\x2d\x4e\x96\xef\x13\xa4\x35\x10\x4e\x4d\x41\x7d\x4f\x32\x26\xa9\x70\xb7\x2a\x84\x7d\x42\x5d\xcc\x14\x7d\x56\x34\xb4\xd3\x12\xbc\x4d\xd3\xcc\xfb\xad\x55\x1f\x5a\x31\x12\x29\xaf\xdb\xed\x76\x2e\x43\x4d\x75\xef\x30\x42\x5f\x93\xe2\xb4\x06\x17\x86\xd4\x77\xc3\xd5\xd1\x6d\x4d\x86\xab\xf6\xcd\x83\xbc\x65\xa0\x01\x75\xe1\x74\x5b\x50\x61\xae\x5e\x13\xfa\xa6\xe4\xf5\xd2\xe0\xeb\x4c\x67\xc6\x71\xb2\x1e\x52\x36\x54\xf5\x51\xd8\xe9\xb4\x9e\xa5\x69\x96\xb0\x95\x60\x43\xad\x62\xd9\xbe\x3d\xa1\x12\xac\x2a\x71\x43\x51\xdd\xe0\x58\x5b\x54\x8d\x6a\xb2\x7f\x0d\x84\x54\x3a\xd8\x53\x8d\xdd\x96\xe9\xe0\x60\x2a\x51\x30\x20\xea\x75\xa3\x3f\xa5\x70\x3f\xe5\x4b\x9b\x08\xa9\x10\xec\x0f\x73\xb7\x2b\xf6\x7e\x4d\x8b\x99\xf9\xe0\x62\xe6\x1f\x48\xcb\x27\x30\xfb\x37\x0e\x79\x06\xfb\xb7\x65\x1d\x60\xaf\x63\xcb\x40\xc8\xfd\x81\x1d\x3e\x42\xed\x2b\xec\xf0\x13\x6a\x73\x60\x97\xaf\xd0\xeb\xdd\x39\x74\xb9\xff\x4d\xbb\x58\x8b\x28\x09\xd8\xce\xad\x44\xc8\x02\xb3\x5e\x24\xa1\xcc\xd4\x1b\x6d\xff\xe3\x82\xc4\xc1\xba\x01\xf1\xe6\xe0\x9f\xe7\xbc\x4b\xd3\x98\x51\xe5\x79\xd1\xf2\xc7\x75\xcd\xad\xfd\x6c\x1a\x15\xef\x93\x59\x9a\xf6\xbe\xf2\x65\xc4\xb8\x7a\xe0\xa6\x6e\xae\x2e\xeb\x8a\x24\x20\x89\x30\x2f\x4a\xfa\x22\x7f\x9c\x65\xb7\xf9\x2b\xdf\x0d\xc5\x0a\xbc\x53\xf6\x11\x03\xa4\x05\xcf\xba\xd9\x20\x7c\x9e\x3f\xce\x6e\xdd\x0e\x1d\x9d\xd3\x47\x8d\xc8\xd6\x1d\x9e\x85\x1d\x82\x26\x4b\x1c\xf6\x0f\xec\x0a\x1a\x46\xf8\x26\x6c\x57\x2a\xc3\xa6\xc5\x8f\x6d\xf8\x59\xd8\xb0\xd2\xa7\x4d\xdb\x1f\xdb\xf2\x9b\xb0\x65\xa5\x92\x9b\xae\x7e\x6c\xcb\x2f\xc3\x96\xb5\x56\x6f\x5a\xfd\xd8\xa6\xdf\x87\x4d\x7b\x8a\xc1\xe9\xfc\xe3\x6d\x99\xbb\x8d\xd8\x2f\xa7\x61\x7f\x5a\xd7\x38\x5d\x7c\x74\xbc\x00\x00\xbb\x95\xe5\xaa\x5b\xd1\x8b\xd4\xc8\x88\x61\xbc\xeb\xec\x02\x5f\xb5\x39\x2d\x3f\xe2\x68\x22\xde\xe0\x01\x24\x5e\xcf\x0b\x31\xd2\x70\x79\xe4\x64\xed\x11\x46\xdd\xad\x86\xf0\xad\xab\xfe\x08\x5a\x56\x82\xfc\x3e\x71\xd2\x91\x7a\xdb\xdb\xd6\xc2\xdf\xf4\xea\x9e\x8d\xab\x8a\xdb\x5b\x77\xe5\xc0\xe9\xf5\x3d\x7b\x68\xdc\xa0\x72\xaf\x97\x5b\xd7\x7f\xe9\x2f\x3b\xfd\x97\xe2\x79\xf4\x76\x26\x40\xfa\xd9\x13\xe1\xfd\xe3\x8f\xbf\xf9\xfc\xfd\x0f\x8b\x27\xf1\x44\x78\x46\xe5\xee\xfc\xf5\x07\xd5\x89\x42\xfa\x48\xfe\x10\x1c\x9e\xe4\x0f\xce\xad\x93\xfc\xe1\xd2\xfd\x51\xd2\x26\xc1\x49\x5a\x70\xde\x40\x55\xeb\xe4\x65\x13\xed\xe1\xe4\x0f\xf5\x35\x69\xaa\xe2\x16\xaa\xf3\xab\xea\x6d\x71\xb1\x2d\xfd\xde\xe7\xf8\xbf\x20\x01\x1f\x50\x92\xdd\xe9\xf7\x7e\x87\x93\x92\x5e\x27\x98\x37\x2b\x32\xc3\xd3\xe3\x23\xb1\x89\xe5\xa7\x6c\x35\x02\xe8\xdb\xfe\xb0\x6e\xe8\x05\x65\xa2\xa9\xdf\x3b\xb9\xf8\xb0\x37\xa2\xdf\xe0\x69\xef\x48\xdc\x72\xc7\xc7\x5b\x0a\xc2\x90\xe5\xff\x7d\xc8\xc0\xf5\x2c\xaa\x81\xfe\xd7\x1e\xf9\x23\xe1\x23\x2a\xc2\x61\x74\xbf\xc7\x89\xe3\x65\x27\x1f\x1c\x12\xbd\x0f\xe4\xef\xba\xd1\x1f\xf2\x99\xf8\x10\x39\xc2\x99\x4e\x46\xa9\xfe\x99\x4e\x13\x85\x75\x2b\xc6\xb2\xbb\xde\xbe\x13\xf2\x5b\x2c\x5a\x90\x0d\x4c\xa7\xc7\x9f\xe1\x84\x96\x09\x3c\x3b\xc2\x53\x17\xa5\x1c\x72\x67\x8a\xf7\x6a\xbe\xa6\x9f\x89\x1d\xb3\x6d\xb5\x87\x5b\xb7\xc2\xa1\xec\xe5\xb7\x72\xe8\x7b\x95\xfd\x4f\x55\xd6\x8e\x2f\x80\xcc\x81\x64\x9f\xbf\x0f\xb7\xd0\xce\xd6\x29\x3b\x5c\xc2\xb9\x53\x93\x67\xba\xf8\x1c\x36\x96\xfe\x70\x25\x36\xe9\xbe\xe5\x4f\xf3\x16\x8e\xa5\x78\xf7\x3b\xb9\x1b\xa7\xc7\x9f\x63\xb1\x65\x3e\x17\xaf\xca\x43\x0a\x29\xeb\xd5\xb0\xa0\x3a\x60\xe2\xc8\xd6\x63\x65\xc4\xec\x1a\x2b\x85\x4b\x63\xfb\xab\x98\x66\x3b\x80\x2a\xdb\xeb\x58\x70\x1b\x53\xee\x86\x56\xd5\x61\xa9\x15\xfb\xa6\x64\x2f\x62\xcb\xae\x8a\x0e\xb4\xcd\xbe\x7d\x24\x6a\xea\xa7\x33\x58\xc4\xc8\x3e\xfe\xfb\xdf\xd9\x70\xe8\x6e\xe6\xe3\xdf\xe0\xe3\x23\x73\x44\xed\x9b\x48\x8e\xcf\xfe\x73\xfc\x99\x93\x08\x76\x57\x52\x51\x41\x86\x98\x77\x9e\xd5\xb9\xe9\x5a\x5c\xe5\xb7\x24\x17\x60\x67\x4d\x18\x79\xcf\xdf\xd0\x73\xc0\x99\x9b\xe1\x69\xf2\xbf\xe6\xab\xa6\xad\x9b\xc9\xd1\xff\x4a\x74\xe7\xbf\x90\xbc\x4f\x4a\xf2\x8e\x7f\x21\x79\xbf\x90\xbc\x5f\x48\x1e\xbc\x3c\xde\x42\xf2\x7a\x9e\xcb\xd6\xe4\x18\x76\x90\x88\xbd\xb9\xc8\xe3\x1d\x27\x71\x5f\x2e\x13\x76\xf6\x65\x5d\x95\x62\x95\x64\x3d\xb5\x91\x93\x92\xb6\xcb\xaa\xb8\x9d\x0c\x59\xcd\xc8\xc3\xfd\x68\xdc\x9e\xf9\xa0\x7f\xac\x48\xb3\x5f\x92\xe8\x0f\x68\x3f\x02\xbc\xf4\xb3\x8b\x4c\x37\xaf\xff\xeb\xe2\xf5\x5f\xde\xfe\xe7\x2e\x91\xa9\x23\x28\xf5\xcb\x45\x1d\x11\xca\x15\x8c\xb4\xb4\xe4\x4a\x48\xdb\xc4\xa2\x0f\xba\xcc\xfe\xeb\xc3\xee\xb2\x48\xb5\xdd\x12\x58\xf7\x12\xdb\x7d\x49\xd9\x8d\xe0\xdd\x18\xff\xb9\xed\xc6\x50\x75\x22\x37\x46\xec\xda\x51\x13\xc6\xe6\x05\x48\xe8\x3b\x9a\x94\x47\xdd\x11\xf3\x66\xf1\xb6\x3f\xff\xe0\xb6\x3f\x8f\xb4\xad\x6f\xba\xcf\xbc\x9b\xae\xa9\x81\x3e\x48\xcc\x80\x44\x3d\xe4\xc5\x39\x65\x25\x79\xaf\x66\x6c\xc5\x2a\x02\x53\xac\x6e\x71\xeb\xd5\x24\xe6\xef\xc8\x2e\xba\xbc\x1d\xad\x65\x5b\xad\x8a\xae\xa6\xed\xd9\x50\xcd\xac\x8a\x19\x8a\x49\xe3\xb3\x0f\xc7\x61\x79\x0a\xb7\x59\xbf\x2d\xf2\x7e\x59\xb0\x92\x84\xc3\xb0\xd2\xbe\x57\xda\xba\x6a\xf9\xab\xd0\xf9\x60\x41\xb6\xdd\x6f\xfe\x1c\xff\x6e\xeb\x2d\x17\x8d\xea\x33\x57\x23\xa8\x9e\x1c\xf4\x0d\x73\x0d\x84\x51\xa3\x41\x0d\x15\x39\xee\x97\x96\x71\x9f\x41\xc9\x77\xe4\x36\xd6\xb2\x8e\xdc\x0c\x4a\xbb\x69\x4d\xfc\x0a\x4e\xec\x65\xac\x0e\x00\xe9\x45\x6a\x3c\x63\xe5\xde\xf7\xbb\xba\xd9\x7f\xef\x5c\xec\x3f\xe2\x4a\xff\x94\x97\x97\xda\xbd\x9f\xea\xf2\xfa\xa7\xba\xb4\xfe\xfb\xe9\x9f\xe7\xe5\x83\x2b\x16\xbf\xb4\x8a\x25\xf5\x2f\x18\xab\xa2\xf3\x12\xf0\x88\x07\x1e\xb2\xbe\x78\xa0\x4e\xf3\x13\x27\x22\xf3\x0f\x6a\x6a\x9f\x38\xc8\x88\xdd\x8b\xea\x86\x82\x81\x04\x8e\xea\x65\xd1\x5e\x4a\xf1\x51\xdc\x37\x86\x1c\x58\x0b\x81\xe3\x86\xe9\x30\xda\x6f\xf5\xb5\x90\x3c\x51\xca\xd5\x99\x3d\xb4\x8e\x53\xa2\x47\xb7\x62\xef\x0d\x41\x89\xbe\x75\x69\x47\xec\xbd\x1e\x90\x25\xf5\xc1\xbd\x6b\x2e\xcc\xdf\xc9\x0b\xab\xe7\x76\x73\xef\x5c\x87\x05\x70\x79\x85\x90\x55\xb0\x4c\x85\xbe\x9c\x1b\x52\x94\x35\xab\x5c\xf2\x65\xc7\x3a\xf3\xef\xa9\x48\x59\xdb\xd9\xee\xb2\xfe\x60\x76\x97\xbf\xee\xb6\x3d\xdb\x3d\x67\xbf\x8d\xce\xd9\xdc\x2c\xf8\xbd\xe7\x2c\xdc\xc2\xe1\x1e\x77\x19\x35\xcf\xb1\x78\xaf\x80\x14\xdf\x8a\xf6\x4f\xbe\x2a\xff\xe9\x70\x19\xd8\x9f\x76\x25\x8d\xcb\x4b\xea\x03\x56\xb6\xb7\xac\x3b\xa5\xbb\x4b\x8b\x29\xdf\x5d\x0a\x96\x64\x8f\xa9\x91\x21\x43\x3b\xcb\xc9\x25\xdd\x63\x59\xc8\x9e\x0d\x7a\x5b\xc2\xd9\xfb\xfd\xec\xb2\xab\x33\xeb\x5f\xd5\x3e\x85\x91\x2b\xa3\xc2\xd5\xe9\xab\x83\x7a\xbc\x1e\x80\x13\xfa\x5c\x49\x96\xc7\xbf\x11\x7c\xa6\x61\xd5\x67\x1f\x28\x2d\x1b\x8e\x20\x6c\x6c\xbb\xd4\xfa\x73\x70\x04\x3d\x9c\xc0\x60\x2b\x27\xd0\x0f\x34\xf0\xc9\xae\xff\x20\xdb\x5f\x24\xad\x61\x3f\x76\x33\x6e\xf2\xa4\x38\x6f\xeb\x6a\xc5\x09\xc0\xc4\x8d\x97\xc6\xb5\x27\x7f\x90\x15\x2b\x5e\xaf\x65\x4a\x0a\xf4\x40\xc6\x15\xd3\xf7\xe0\x5d\xe3\x94\x44\x61\x8e\x89\xf3\xba\xbc\x1d\xd8\x14\x89\xe4\x21\x35\x59\x0b\x95\x3c\xfc\x10\xd1\x45\xd6\x3f\x2e\x8a\x70\x36\x6a\xd6\x6b\xd8\x40\x74\x0e\xe8\x68\xb6\xbb\x34\x65\x63\x4e\x5a\x9e\xf1\x71\x7d\x4d\x9a\x45\x55\xdf\x1c\xd8\x3f\xbf\x73\xfe\xfe\x1b\xd2\x63\x33\x01\x61\xde\x20\x37\x0e\xf3\x44\xac\x23\xa9\x3a\x55\xc6\xef\xc9\x79\xf5\x57\x65\xf6\x2b\x03\x17\xed\x41\x10\xe3\x6d\x40\x10\xec\x34\xb0\x98\xc3\x55\x9d\xb3\xae\x53\x55\x91\xb3\x88\x13\x6c\x9b\xb3\x6d\x7e\xb8\x2b\xe7\x75\xc7\x09\xb7\xd2\x53\xbd\x2c\x2e\xc8\xdf\x5e\x2e\x16\x2d\xe1\x78\xee\x3e\xfc\x4e\x3d\x5c\xe4\xb0\xa1\x1e\xd7\x2b\x56\x52\x76\xf1\xa4\xa2\x84\xf1\xd7\x32\x5d\x57\x99\x2f\xa4\xd7\xda\x65\xbe\x00\x77\xb6\x65\xbe\x50\x1e\x6a\x57\xf9\x42\xfb\xa5\x5d\xe7\xbc\xb7\x85\xdb\xfc\x5a\x17\xbb\xc8\xaf\x55\xdd\xf3\x3c\xc4\x04\x12\x35\xe0\xa3\xd7\x6b\x35\x44\xca\x98\x9e\x87\xb3\xfc\x6e\x83\x6f\xf2\xc6\xc9\x83\x89\x9f\xf5\x6e\xa5\x1b\x64\x36\xce\xc3\xa4\x21\x15\x64\x2e\x82\x54\x25\x69\x6a\x77\xbe\xfa\xad\xf3\x75\xde\xf4\x65\xe3\xbc\xc9\x6f\xee\xdd\x2d\x1c\x1b\xd3\x73\x9e\xe7\xcf\xd6\x6b\xef\xcc\x3d\x93\xc7\xf4\x4d\x7e\xd3\x37\x6f\x83\xf2\x30\x7f\xa3\xa6\x5e\xfc\xc5\xeb\x25\x6c\xb8\x97\xf9\xcd\xb8\x86\x75\x93\x47\x7f\xf0\x32\x4d\xb3\xf2\x30\x7f\xa9\xd2\xd0\x7c\xa5\x6a\xe8\xdf\x6f\xeb\x25\xda\x5c\xe4\xc5\xc9\x72\x72\x01\xd9\x41\xce\x94\xa3\xe1\x85\xf4\x0f\x7f\x9f\x97\x07\x15\x8c\x17\xc2\xa9\xf2\x3c\xa7\x2a\xb4\xea\x10\x6e\x54\xf1\x40\x0e\xf6\x34\xff\xba\xe0\x97\xe3\x2b\xca\xb2\x73\x5c\x1e\x5c\xa0\x43\xf9\xbb\x78\x9f\x1d\xe1\x12\xe1\x77\xfe\xfb\xa5\xff\xfe\x60\x79\x78\x81\x06\x34\xbf\x78\x74\x9a\xa6\xef\x1e\x9d\x9e\xa8\x9b\x78\x72\xf1\xe8\x5d\x9a\x9e\x3e\x7a\x77\x22\x6f\xf0\x49\xbb\x5e\xcb\xbf\x64\x80\xbf\x1e\xd9\xa1\x2c\x6e\x87\xf3\x6a\xc7\x70\x5e\xef\x39\x9c\xd7\x69\xfa\xea\xd1\x6b\xdd\xfb\xc5\xa3\x57\x69\xfa\xfa\xd1\x2b\x33\x3c\x31\x1c\xf9\xe7\x26\xb1\x43\x38\x39\x53\x1e\x9c\xe7\x87\xd9\xfb\x83\x25\x9a\x9c\x29\xef\xe4\x39\x61\x1c\x1c\x65\x73\x7a\xf2\xfe\x20\x13\xbd\x3c\xf8\x6c\xf2\x1e\xa6\xfa\x6d\x7e\xd9\xd9\x18\x7d\x9b\xc9\x3b\x1e\x48\x85\xe3\xc3\xc5\x00\x79\x06\xb3\xc4\x7a\xad\xac\xd7\xd9\xdb\x83\x7c\x8e\x70\x52\x9c\xd7\xb2\xd5\x1a\x9d\x81\x07\xea\xdb\xc3\xdb\x81\x99\xc5\x73\x52\xd5\x37\xde\xdb\x83\x2b\x78\x7b\x27\x93\xf5\xbf\x3d\xb8\x3a\xb8\xfd\x62\x7e\xe0\x1e\xbf\x2f\xe5\xc1\xfd\x3e\xbf\x7c\x74\x3b\xa8\xf3\x27\xeb\xf5\xf7\x27\xb6\xa1\x55\x9a\x8e\x9e\xa4\xe9\xf7\x27\xaa\xe7\x89\x1d\x81\x78\xf5\x7d\x9a\x3e\xd1\xa5\x27\xab\xf5\x3a\xb3\xbf\x54\x41\x34\x51\x0f\xb0\x1e\x91\x3b\xcc\x93\xab\xc9\xe1\xad\x4e\xab\x13\x73\xdc\xa7\x5d\xc7\xfd\x1a\x83\xb2\x7c\x72\xb6\xd9\x0c\xb6\xd2\x70\x2e\xc1\xf8\x23\xe4\x1b\x48\x37\x50\xe9\x08\xf1\x2e\x62\xc4\xbb\xcd\x63\xa3\x53\x42\x42\x67\x88\xfa\x93\xe5\x40\xef\x36\x1b\xef\xf4\xd5\x72\x00\xab\x7e\x9a\x3c\xa0\xfd\xd4\x76\x20\x33\x16\x75\x29\xff\x41\x87\xa8\x0e\x62\x41\x21\xf9\x0a\xf6\xf1\x01\x95\x44\xe2\x51\x65\xce\x41\x78\x26\xed\x46\x57\x23\x9e\xf7\x8f\x58\x11\xfd\x45\xff\xb8\x65\x89\x41\x2b\x7d\xb0\xf3\x3b\xc8\x8e\x94\xcd\x0f\x17\xe8\xc1\x67\x9b\x3e\x42\xa0\x3a\x2e\xb7\x5c\x5f\x97\x5b\xa6\x2a\xfa\xfd\xa5\x3c\xd7\x8f\x2e\xe5\x88\x62\x9f\x6f\xc9\x40\x9d\xa6\x59\xb4\x15\x55\x44\x3b\x92\xdb\x63\x51\x9c\x64\xdd\x88\x9b\xbc\xc0\x54\x50\xdd\xfe\x3b\xd4\xcc\x0b\xaf\x97\x93\x43\xaa\xee\xd3\x0d\x9a\x44\x1a\x33\xdb\xcb\x3b\x00\x21\x7f\xd3\x0c\x3a\x88\x45\x00\x74\x65\x9c\x16\x6b\xdf\x15\xf1\xa4\x81\x12\x47\xb8\x46\x13\x6e\x0a\x6f\x1c\x3e\x99\xed\xd4\x98\x49\x3e\x59\x5e\x4b\x87\x97\xa4\x5a\x4a\x7c\xb5\x4f\xce\x23\xcb\x8c\x8b\x11\x1e\x99\xe8\xec\x8b\x9a\xa5\x13\x3c\xee\xc9\xd1\x84\x63\xaa\xdf\x7d\x87\x6b\xfb\x8e\x9e\x1c\x4d\x28\x2e\xf4\xbb\xaf\x05\x3f\xd0\xda\xd7\xc5\xc9\xd1\xa4\x10\x87\x59\x26\x13\xbb\xfb\x2c\xcf\xf3\x36\x4d\x33\xf6\xbf\xf3\xcf\x71\xfd\xbf\xf3\xcf\xe5\xf1\x5c\xe5\x8d\x38\xa8\x4e\x0c\x94\x28\xb1\x12\x25\x56\x86\xda\xc9\x81\x4d\x18\x96\xa3\x98\xd4\x9b\x8d\xfb\x49\x5f\x51\x46\x24\x6d\xce\x1b\xf9\x3c\x48\x3e\x19\x40\x51\x99\xc4\x23\xf9\x9d\x9f\x46\x72\x72\x84\xfd\xe4\x90\xfa\xc1\x77\x61\x89\xef\x6c\x89\x0d\x70\xfa\x0f\x9d\x64\x36\x10\x68\x99\xe7\x39\x79\x88\xee\x9a\x9c\x28\xde\x03\xe8\xcc\x21\x71\xb9\x3b\xcc\xcc\x5b\x39\x7e\xf3\x5a\x5d\x35\x61\x9e\xcb\x83\xfc\x90\xb8\xac\x4d\x98\xcc\xf2\x20\x6f\xa2\x05\xbe\x8b\x34\xf0\xb6\x5e\xe2\x30\x2b\xe5\x41\xce\xdc\xf7\x2a\xe3\x7a\x2c\x0b\x3c\x50\x9c\xf3\x86\x14\xef\x06\x24\xaf\x75\xac\x3c\x05\x81\x22\x48\x52\xb9\x4d\x28\xc0\xb5\x79\x3b\x24\x59\x80\x65\x13\x42\x98\x3f\xfa\x8d\x83\xf9\x62\xe1\xca\x7f\x33\x3b\x71\x7f\x4c\xa6\x33\x5c\xe4\x77\xca\xb2\x37\x61\xd8\x4e\xc7\xe4\x08\x9b\x6f\x9b\x1c\x6d\x40\xa2\x70\x17\x87\x79\x8b\xb3\x32\x6f\xd5\xe2\x30\x7f\x71\xaa\xce\xf6\x39\x64\xee\xdc\x07\x5b\xa9\x8d\xbc\xfd\xae\x5b\x55\x2c\x4b\xb0\xc5\x56\xee\xcb\x8d\x15\x5b\x3a\x7c\x12\x43\x83\xe4\x92\x96\x25\x61\x82\x89\x9f\x5b\x31\x30\x4d\xb3\xc2\xe9\x3c\x77\x47\x72\xc0\x31\x7f\x54\x85\x99\x52\xf9\x61\x1e\x3e\x9b\xf0\x2f\xaa\x30\x17\xab\x53\xcc\x7c\x0a\xcf\x8f\x7a\xc6\xf1\x9d\x33\x8e\xb7\x10\x13\x64\xfe\x3e\x68\x70\xa3\x47\x61\xbe\xfc\xa4\x31\xcd\xdb\xd9\x68\xf4\x28\x6c\x6e\x56\xa7\x98\x19\x45\x23\x46\x21\x36\xeb\x28\xcf\x69\x9a\x66\x7c\xbd\x6e\x8c\x34\xac\xb6\x9a\x2b\xca\x50\x89\x71\x34\x2f\x78\x36\x2d\x66\xc8\x84\x3d\x79\x4f\x37\x66\x0b\xe3\x22\x3f\x7a\x58\x7c\x51\x6b\x10\xb8\xe2\xe0\x00\x65\x34\xaf\x45\xa9\xb1\xda\x7b\xee\x8c\x53\xff\x54\xfa\x25\xc4\x5c\x50\x77\x89\xc9\xf8\xab\x17\xdf\x3c\x7b\x73\xf6\xea\xd9\xeb\xb3\x57\xa7\x7f\x7c\x96\x93\xf1\xd3\x97\x5f\x9f\x3d\x7d\xf6\xd5\xdb\xd3\xee\x03\x51\xd6\x2f\xf1\xe2\x6f\xcf\xbe\xd2\x82\x79\xf7\x85\xff\x0c\x6a\x1f\x0f\x3a\x3d\x7c\x36\xe8\x8c\xe2\x73\x25\xe5\xab\x96\xbd\xa4\x54\x2e\xf4\x17\xef\xc4\x15\x2b\x04\x69\xf9\xd5\x59\x42\x17\x4d\x71\x45\x00\x35\xa7\x6d\xe6\x79\xf2\x1f\x09\x26\x2a\x66\x6f\x69\xae\x6e\x23\x22\x9a\x77\xd7\xb4\xa5\xe7\xb4\xa2\xfc\x36\xd7\xfb\xcb\xbc\x53\x51\x84\x47\xcb\xf7\xf6\x99\x0e\x0c\xf4\x1e\x9e\xd7\x4d\x49\x9a\x5c\x26\xec\x0a\xd0\x78\xdd\x4c\xf5\x0a\x64\x47\x10\x70\xa5\x5b\xff\xab\x3c\x76\xba\xca\xa0\x91\x41\xd8\x08\x4b\x34\x46\x92\x25\x5f\x8c\xca\x7a\xce\x6f\x97\x64\x78\xc9\xaf\xaa\x47\x5f\xa8\xff\x92\xa2\x7c\xf4\xc5\x03\xf9\x8f\xe8\xe7\xd1\x17\xed\xb2\x60\x8f\xfe\xf6\xc5\x03\xf8\xf7\x8b\x07\xf2\xe1\x03\x28\x9e\x88\xf6\x64\xac\xb7\x0e\x5a\x6e\xa4\x46\x49\x9c\xdb\x05\x6d\x5a\xad\x44\x82\x71\x2a\xf9\x57\xd1\x24\xff\x73\xdc\x54\xf9\xc4\xa4\xe4\xe4\x9b\x2e\x73\x22\x73\x50\xb7\x84\x1f\x5e\x17\x15\x2d\x41\x19\xdd\x3e\x50\x6c\xc9\x03\xf3\xd6\x47\x1f\x0d\xaa\x46\x8a\x6f\x4f\x00\xe6\xec\x1f\x17\x52\x30\x00\x6f\x97\xc9\xec\x69\x2b\x33\x57\x10\x7b\x86\x37\x70\xd1\x76\x11\x9f\x22\x31\x70\x12\xc5\x73\xbd\x1e\x65\x01\x92\xe8\x90\x6a\xa0\x34\x00\xee\x97\x4d\xab\x75\x9f\xce\x30\x40\x43\xd0\x7c\x74\x6c\x18\x1f\x80\x0d\x34\x11\x96\xb8\xcd\xc9\x34\x68\x72\x96\xa1\x87\xa3\x8c\xe5\x59\x91\xb7\x63\x46\xde\xf3\x0c\xa1\x71\x59\x33\x82\x20\xd6\x16\xa2\x3d\x0b\x09\x50\x86\xf0\x48\x90\x25\x45\x43\x00\x90\xea\xa1\xe8\x12\x3d\x54\x38\x82\x2b\x74\x47\xc5\x10\xea\x7c\xb5\x59\x50\x56\x54\xd5\xed\x9d\x18\x00\x5b\xaf\xe5\x25\xdc\x8e\xe5\x90\xd7\x6b\xfd\x57\x86\x4c\x49\xba\xc8\xa8\x42\x77\xaa\x37\x26\x21\xab\x44\xcf\x8c\x4c\xdc\x88\xe8\xef\x17\xb3\xd8\x02\x04\xa2\x9d\x42\x82\x5c\x24\x36\x7d\x36\x3a\x78\x9e\x3e\x76\x22\x41\x0a\xe7\xed\xf7\xf8\xf0\x18\x0d\x12\x59\x1c\x32\xe1\x05\xb0\xab\x62\x6e\x72\xef\xc9\x98\x15\x57\x2a\xb7\xde\xd7\xc5\x12\xea\xac\xd7\xc9\x1b\x22\xab\xeb\xd1\xc8\xdd\xb1\x68\xea\x2b\x9d\x88\xef\x54\xf3\x02\xaa\xca\x83\xff\x9b\x9d\x4c\xbe\xa5\xeb\x17\x88\xf1\xec\x64\xf2\xfb\xf5\xf1\x6f\xd7\x9f\x7f\x86\xb2\x93\xc9\x93\xaa\xb8\x5a\x92\x12\x9d\x40\x23\xbf\x7a\x20\x95\xaa\xf6\x96\x90\x5f\xda\x99\x2f\x74\x17\x45\xcc\x7a\xc1\xe0\xe8\x0c\x0b\xce\xc9\xd5\x92\x0f\x79\x3d\x04\xc7\x89\xd5\x9c\xaf\x1a\x32\x64\x35\x3b\x84\x2d\x72\x5e\x59\x00\xae\xf1\xdf\xd9\x0b\x36\x04\x82\x24\xca\x9f\x93\xa1\x2e\x82\xa1\x42\x21\x06\x36\x94\x78\x8c\xad\x84\x21\xbb\x2c\xae\xc9\xb0\x18\x46\x76\xdd\xf0\x8a\xf0\xcb\xba\x1c\x27\x68\x93\x39\xe0\x84\xff\x9f\xbd\x77\xff\x6e\x1b\x47\x13\x05\x7f\xf7\x5f\x21\xf1\xec\xa8\x88\x6b\x58\x91\x92\xb9\x7b\xe7\xd2\x61\x69\xf3\x70\xa6\x73\xbb\x2a\xce\xc4\xa9\xae\xd3\xab\xd6\xba\x61\x09\xb2\x30\xa6\x00\x35\x08\xc5\x71\x59\xfc\xdf\xf7\xe0\x49\x90\x84\x6c\x49\x4e\x5c\x95\x94\xce\xc9\x89\x45\x12\xf8\xf0\xfe\x5e\xf8\x1e\x66\x81\x0d\xd7\x26\x56\x2b\xf1\x23\x36\x3b\x4e\xee\x48\xc9\xf8\x9b\xa7\x03\x2f\xc0\x29\xa4\x95\x74\x31\xc7\xfc\xb9\x50\x81\x4e\xe9\x90\x8f\x52\x3c\xe4\x2e\x45\x0c\x2d\x5b\x22\x52\x14\xb2\x3e\xd5\xf2\x4c\x3f\x05\x90\xa5\x64\xd8\x93\x0c\x19\x19\xf6\x6d\x9d\xb8\x07\x45\xd7\x21\x09\x10\x0f\x19\x44\x23\x48\xc1\x2e\xe1\xf2\x1c\x98\x94\x84\x0d\x01\x6c\xa0\xbb\xbf\x28\xe4\xd4\xd5\x38\x2a\x26\xfe\xa5\x06\xdb\x14\x1f\x5a\x0b\x22\x0f\x07\x9a\xcf\x78\x72\xb4\x29\xd6\xfb\x32\xf6\x0d\x3c\x15\xdd\x8c\xb1\xab\xe5\xe2\x6f\xba\x07\x8c\x7b\x23\xe2\x9b\x8e\x48\x4b\xa1\x97\x58\x1c\xcd\x71\x9e\xa3\x4b\x9c\x87\x50\xbc\xfc\xae\xfd\xff\x9a\x58\x3f\x00\xae\x04\xb5\x41\xe1\x6b\x22\x66\x47\xa6\xdf\x79\x33\x06\xb5\xdc\x50\x5f\x6a\xfa\x1a\x8e\xd8\x0d\x01\xa3\x17\x14\x30\x7a\xbe\x80\xd1\x1b\x25\x26\x60\xf6\x7f\xe7\x5d\x4c\x05\x27\x38\x87\x22\x6d\xc7\x0d\x60\xfd\x20\xb0\xfe\x08\xac\x56\xfe\x23\xcc\x53\x17\xae\x43\x45\x82\xb5\x61\xae\x48\xfe\x9e\xe3\x5c\xf2\x4b\xc8\xa1\x24\x64\x84\x66\x5d\xe2\x45\x4c\x24\xd9\xea\x4e\x09\x9d\x54\x03\x7b\x5a\x1a\x29\xc5\xb4\x02\x80\x83\x3a\xc4\xa5\x3c\xfa\x79\x1a\xf7\x20\x2d\x43\x85\x98\x71\xe9\x49\x8c\x97\xc0\x7e\x81\x79\xc9\x0e\xa3\x34\x87\x79\x71\x50\x89\xba\x7c\x85\x6f\x72\xc8\xbc\xf8\x0b\xce\xf1\xbb\xab\xaf\x21\xdf\x73\x3c\x25\x9f\x61\xf4\xc4\x5f\x7e\xb7\x4b\x24\x2f\xad\x1d\x70\xb7\xd9\xb3\xda\x1c\xeb\x68\xbe\xcc\x04\x59\x64\xd8\x2f\xf1\xd0\x13\x5a\xe1\x6b\x1f\xb4\x53\x86\x23\x28\xdc\x5a\x61\xd0\xe5\x58\xb1\x1a\x81\xa5\x8a\x2e\x18\xcb\x30\x52\xa9\xaa\x74\x05\x17\x6c\xb6\xd3\xc1\x45\xb9\x00\xbd\xd4\xcb\x32\x1f\x0b\x18\xe9\x0e\x45\x60\xb5\x12\x0f\x89\x37\xea\xeb\xbe\x2c\x0e\xd7\x41\xa6\x59\x4a\xbb\x14\x5f\x2b\x55\xbb\x52\xf9\xb2\x6c\xa2\x1f\xa4\xfc\x6c\x26\x55\x49\xcb\x86\x4f\x76\x81\x41\x5f\xc4\xb8\x3b\x47\x8b\xf0\xd6\x8c\x5d\x24\x79\x50\x00\x1d\x03\xc8\xd6\xca\x40\x17\xd1\x9b\x58\xa8\x0d\xcb\xe6\x24\x2f\xb9\x3e\x5d\xe4\xc3\xd9\xdf\xde\x77\x25\x83\x91\x81\xae\x98\x61\x1a\x73\x37\x3f\x3c\xce\xc0\xc6\x0c\x6e\x1d\x5f\x35\x51\xdf\x27\x8b\x5d\xbd\x62\x8f\x83\xdf\xf5\x48\xbd\x18\x33\x65\x34\x05\x5a\xfd\xc8\xe1\xed\x45\x86\xe8\x55\x52\x9e\xbb\x85\x3e\xe7\xd0\xfc\xf5\xbe\xa8\x92\x50\xc7\xaa\x50\x3e\xc0\x84\xd1\x37\x8c\x37\xa3\x54\xec\xb8\xe5\xa3\xe8\xa0\xb2\x54\x8e\x1d\x5c\x10\xa1\x9c\xc2\xe3\xca\xfb\x09\xca\x67\x98\xcb\xd7\x92\x57\x5c\x64\x44\xc4\x4f\x86\xe7\x47\xa3\x27\x97\xc0\xc4\x34\x69\x45\x00\x54\x8d\x10\x02\xca\xd5\xbb\x96\x57\xb0\x23\x79\xfe\x37\x55\xae\xba\xd3\x2f\xbc\xb0\xd2\xe2\x3b\x4b\x57\xf0\x45\x10\x85\x0d\xa3\x76\xaf\x10\xe0\x62\x76\xfb\x91\x67\x5f\x23\x81\xcb\x60\xe3\x69\x9a\x0a\x85\xeb\xa2\xa1\x7e\xa3\xbe\x8f\x14\x0f\x3f\xc0\x49\x23\xe6\x8e\xac\x6a\x4b\xbe\x53\xdf\x4c\x59\xc9\xb5\xca\xaa\x31\x06\x89\x93\x62\x5c\xec\x5f\xec\x35\xa0\xfb\x38\x52\x49\xbb\x57\xab\x90\xd8\x28\xe7\x99\x65\x78\xb5\x8a\xcd\xaf\xee\x35\xe2\x34\x8e\xde\x67\x18\xe5\xb8\x25\x77\xcd\x3f\x75\xec\x78\xc4\x73\xfc\x4f\xc9\xc2\xab\x5f\x2d\xdd\x6c\xde\x8d\x00\xac\xd4\x8c\x55\x06\x2b\x29\x2f\x80\x6e\x2e\xd0\xf8\x0a\x00\xe8\x3a\xfc\x0e\xbd\x03\xdb\xa2\xae\xf2\xcd\x11\x96\x60\xbf\x04\xfb\x56\xe1\x06\xef\x4b\x0a\xf2\x85\x29\x8e\x47\xd9\x1c\xf7\x11\x05\x3b\xdb\xe5\xe8\xfa\x74\x29\x16\x4b\x21\x49\x9f\x92\xd0\xe3\x1e\xf4\x02\x9f\x49\xb6\x82\x75\x1b\x88\xce\x88\x89\xb4\x6b\x86\xe8\x84\x3d\xfb\x42\xa1\x5f\x49\xd9\x54\x48\x04\x49\xd6\x54\xef\x61\x66\x09\xdc\x67\x01\xc7\xe5\x3d\x47\x36\xb8\x2d\x12\x65\x33\x30\x76\x20\xd5\x60\xa6\xa9\x7b\xb1\x26\x21\xc1\xd4\x5e\xd9\x4d\x63\xac\x32\xaa\x8c\xdd\x49\x99\x14\x4e\xfd\x38\x65\x7c\x8e\xc4\xcf\x1a\x52\x3c\x85\x55\xba\x30\x29\x07\x97\xa0\x02\x8e\x01\x28\x24\xcc\x99\x37\x93\x0c\x96\x09\x00\xc8\x20\x1e\x37\x28\xcb\x18\xd6\xc0\x00\xbb\x62\x4b\x28\xbb\x9a\xe4\xd0\x0c\x24\x99\x41\x33\x05\xc9\xb8\x00\x49\xbd\x73\xb3\xfb\x3b\xb7\xdd\xf6\xae\x0a\x07\x5f\xdf\x80\xfc\x4b\x11\x41\x49\xae\x9b\x75\xd7\x09\x04\x03\xff\x21\x29\x23\xf8\x57\x26\xb3\xc1\x0e\x00\x88\xb7\x9e\x4e\x8e\x16\x8f\x39\x8b\x5a\x81\x67\x65\x8f\xba\x02\xaf\xe4\x8b\x0f\x6a\x6f\x86\x78\xb4\xf9\xd0\x3c\x0e\x4d\x21\x39\x3e\x47\x75\x7b\xc3\x4d\xb0\x5e\x00\x93\x36\x58\xc0\x47\xc1\x86\x0f\xde\x7a\x8d\xd0\xef\x26\x69\x93\x06\x9c\xef\x7a\xad\x76\x5b\xb8\x0c\x00\xe5\x2e\xcc\x21\x02\x30\xd3\x98\xd7\x0a\x5a\xc0\xc4\x2d\x73\x0b\x41\x20\x86\x4b\x48\xed\x32\xb7\x15\xda\x5c\xad\x94\x1a\xc8\xa1\x6b\x0a\x25\xdf\xbe\xc3\xa2\xd7\x79\xbb\x87\x2d\xf6\x16\xd8\x68\x0b\xd6\xf3\x9b\x50\x6b\x94\x3b\x07\xd7\x48\x29\x86\xb7\x28\xcb\xd8\xf5\x4b\x25\x65\xb4\xfb\x50\x4d\xda\x1b\x85\xfb\x93\xe8\xe7\x9f\x7f\x6e\xbd\x66\xb0\xf5\xf7\xbf\xff\xfd\xef\x51\x01\xa0\x97\xbf\xc3\x18\xa5\xa0\x14\x77\x4b\x00\x30\x4f\xb1\x8a\x84\x7a\x81\xa7\x8c\x4b\xc2\xaa\x02\x35\xf3\x97\xfa\x71\x9c\xe6\x5d\x34\x15\x98\xc3\xa9\xf9\xf0\x42\x3d\x4d\xd2\xdc\xd2\x53\x38\x4b\x23\x35\xaf\x92\xb0\x22\x9d\xce\x21\x4d\x59\x99\xdb\x47\x36\xba\xa8\x69\x37\x58\x49\x04\xe3\x05\x18\x2c\x3b\x9d\x78\x59\x2b\xb2\x04\x70\x92\x4e\x24\x67\xf9\xf2\xe4\xcd\xe9\x87\x93\x51\x4b\xb6\xd2\x22\x79\xeb\xdd\xe9\xc7\x96\xee\x6e\xab\x0c\xd4\x08\x64\x3f\xf4\xdb\x08\x2e\x7e\x4c\x97\x60\x50\xdd\xd3\x1c\xde\x2a\xfa\x39\x33\x91\x00\x99\xa3\x9e\xb7\xba\x5a\xb2\x74\x94\x75\x52\x14\x20\xc9\x3a\x9d\x38\xab\x75\x2a\x73\x9d\x3a\x7d\xd7\x3a\xfd\xd0\x0a\x75\x8d\xd1\x16\xe3\x6b\x3a\x58\x4e\xad\xec\x64\xb6\x45\x1f\xcb\x9a\x49\x56\xed\xe7\xb8\xd3\x89\xc7\xb5\x7e\x8e\x5d\x3f\x5f\xbc\xf9\x78\xf2\xa1\xda\x41\xb5\xa0\xf5\x9e\xa9\x97\x11\x5c\x3c\x4f\xc7\x5b\xf4\x4a\xd5\x4a\xc6\xd5\x0e\xb5\xe3\x69\xa7\x13\x4f\x6b\x5d\x9a\xd6\xa6\x2e\xd0\x31\x3d\x73\xc1\xee\xb9\xad\x27\xbb\x38\x05\xa0\x8e\xb1\xee\x99\x39\x55\x35\x99\x56\xfb\x79\x37\x84\x88\x32\xd1\x42\x2d\x8d\xd1\x1c\x30\x0b\xdd\x07\xa4\x0c\x60\xbc\x53\xd8\xb8\x92\x25\xbe\x38\x59\x17\xbb\x3a\x9d\x36\xc9\xdf\xa1\x77\x52\x12\xac\x82\xa9\x1f\xe6\xad\xb1\x31\xfe\x3c\xce\x96\xf9\x9f\x9b\xfe\xe2\x6e\x46\x72\xa1\xb3\x0d\xd0\x54\x3f\x35\x73\x80\x79\x86\x2e\x75\xf2\xe9\x4d\xa2\xa4\x9d\xca\xb1\xa5\x4a\x3e\x59\x93\x7c\xb2\xdd\xc8\xa7\xe6\xe0\xff\xbc\xab\x05\x69\xda\xb6\x1c\xea\xc9\x7c\x21\x6e\x62\x3f\x71\x16\x06\xcd\x85\x53\x86\x81\x64\x1a\xb7\x69\x95\xe0\xa0\xc6\x3a\xda\xb9\x65\x76\x11\x49\x65\x11\x51\x7d\x11\x09\x44\xbb\x2d\xa2\x8a\xed\xbb\x3f\x75\x0f\x3b\x75\xde\x24\x7e\xf5\x53\x17\xb8\x49\xdc\x8a\xdd\xdd\xb4\xb4\xd6\xff\x8e\xb7\xa8\x61\xae\x13\x36\x2e\x6f\x14\x73\x1b\x97\xb7\x67\x62\x87\xad\xbd\x03\x0d\xda\x49\x72\x0c\x70\xeb\x65\xda\xdb\x87\xee\xfd\xb5\x15\xec\x4e\x7c\xad\x16\xf8\xb6\x1a\x5f\x75\x4d\x0a\x1f\xbb\x13\x8b\x4d\x00\xbf\x77\x7b\x61\x23\xe0\x7c\x2b\xe0\x3f\x99\x6d\xb3\x11\x68\xba\x15\xe8\x77\x66\x87\x6d\x04\x9a\x6c\x05\xfa\x8d\xd9\x8c\x1b\x81\x66\x5b\x81\x7e\x5b\xee\xdb\x8d\xa0\xa3\xad\xa0\x9f\x7c\xde\x0e\x7a\xbe\x15\xf4\x57\x15\xf1\x7d\xa3\x06\x96\x5e\x03\x3b\xe0\x43\x8b\x75\x7e\x3f\x31\xfe\x2e\x7a\xf7\xcd\x49\xeb\xcb\x1c\xbf\xc4\xe2\x1a\x63\x6a\x54\xb3\xba\x17\x9e\x64\xee\x53\x41\xea\x53\x41\xbb\x12\x8e\x04\xf2\xbb\x49\x20\xdf\x95\x04\x5a\xc2\xb1\x5f\xf2\xcd\x97\xfc\x38\x5e\xa7\x9a\xd1\x97\x59\xf2\x7c\xaa\xc7\x77\x8c\xe2\xa4\xdd\x2f\x00\xf0\x14\x2f\x8a\x37\x72\x9f\xd3\x76\xaf\xc9\x1e\xdd\xb1\x31\xec\x7a\x7d\xf5\x8d\x51\xf2\x2c\xdf\x28\x2f\x6b\x2e\x80\xe8\x81\x67\xd4\x61\xef\x1f\x07\x38\xbd\xb5\x03\x4c\x70\x91\x60\x6f\xe5\x71\x97\xd1\x4e\x27\x60\x7a\xd9\x65\x74\x40\xd3\xa1\xfc\x3b\x4a\x6a\xf6\xb0\x5d\xe5\x10\x1e\x53\x55\x5b\xce\x75\x86\x05\x56\x55\x82\x92\x8b\x65\x62\xc8\x34\xa6\x9d\x4e\x9b\x76\x73\x36\xc7\x41\x03\x8d\x7c\x88\x47\xab\x95\xbb\xe7\x92\x8f\x9d\xce\x52\xe7\x0a\xae\x0a\x3e\x4d\xfd\x6f\xb9\x84\x4d\xd1\xa7\x39\x29\x99\x72\x74\xaf\x8e\x39\x1b\x64\x89\x85\xa3\x6e\x87\x33\x75\x1f\x37\xd0\x7f\xd2\x48\x99\x31\x44\x89\xf9\xeb\xbe\x77\x3a\xb1\x2d\x61\xeb\x02\x58\x17\xb2\x32\x70\xf7\xc6\x6c\x1a\x32\x1f\x5d\xe2\x8d\xe3\x94\xfb\xf6\x03\x7b\xab\xe6\x6f\xc5\xaa\x99\x97\x56\xcd\x74\x77\xab\x66\xda\xb4\x6a\xa6\xf7\x59\x35\xd3\xd2\xaa\x99\x6e\x68\xd5\x4c\xb7\xb7\x6a\xa6\xa0\x3a\xd2\x6f\xdd\xaa\x99\x3f\x9a\x55\xb3\x67\xe8\x22\xb4\x4d\x33\x4d\xf9\xb0\x37\x82\x24\xe5\xa5\x4d\x73\x8b\xaa\xbb\x76\xf2\x30\x23\xe6\xff\xc4\x22\xa5\x61\x83\x30\x12\xb4\x63\xa6\xbe\x5d\x14\xd9\x0e\xa7\x35\xfc\x39\x1e\x64\x29\xb9\xc7\x75\xdf\x0c\xae\xdb\x7b\x70\x7c\x5b\xb8\xee\x51\x3d\x38\x6c\xb2\x44\xe3\xbf\x41\x52\x2a\x71\x1d\x4b\xa9\xc4\x75\x64\x1a\x2b\x66\x8a\xe4\xaf\x4a\xf7\x0d\xe2\xa6\x3b\xc0\x45\x92\x6e\xae\x4c\x90\x30\x28\x1e\x84\x19\xcf\xbe\x9a\x87\xc7\x96\x5e\x6e\x9b\xe1\xc9\x86\x5c\x51\x5f\xcc\x3d\xa6\xfc\x16\x30\x25\xf9\xd3\x60\x4a\xf2\x5d\x60\x4a\xf2\x68\x98\x92\x59\x4c\x49\x52\x1a\xf0\x74\x83\x01\x33\xab\x8d\xcd\xff\xc8\x34\xb6\xb6\x2c\x4a\xb0\xae\x60\x5b\x06\x06\x2c\x31\xaf\xf5\x16\x03\x31\x52\xe6\x13\xdc\x73\x97\x50\xc5\xb4\x6b\x44\x40\xb6\x57\x38\xdc\x83\x89\xa1\xaa\x5e\xf3\x27\x93\x70\x21\x82\x39\x28\x80\x31\x5c\xf0\xbb\x71\x77\x95\x24\xd0\x1f\xf3\xdb\x66\xba\x8c\x19\xd8\xa2\x83\x08\xde\x16\x6b\xbb\x62\x3f\x3e\xc8\x7f\x90\x85\xa9\x0b\x0a\x52\x17\xe6\x53\x17\x74\x17\x75\xd9\xd0\x67\xb0\xe9\x4d\x6d\x7d\x53\xf8\x25\x3e\x9a\x60\xbc\xb8\x97\xc4\x28\xba\x5d\x5e\x54\xc1\x0c\x8e\xe1\x14\x4e\xe0\x0c\x2e\x4a\xf2\x33\xf7\x26\x79\xfe\x9d\x39\x35\xb8\x41\x7e\x2a\x75\xb8\xbc\xd3\x59\xb7\x2b\x44\xe5\x66\x83\x77\xcb\x07\x58\x49\x76\xc8\xbb\xfe\x63\x99\xea\x50\x7b\xfd\xab\x77\x7a\x4b\xf1\xae\x97\xfa\x70\x50\x79\xd2\x24\x82\xda\xac\xca\x85\xd7\xd9\x9b\x92\x28\xc5\x15\x4b\x1d\x01\x40\x10\xf9\xbe\x42\x94\x32\xd1\x92\x10\x5b\xa8\xa5\x22\x98\xb6\x50\xde\x42\x8e\x99\x88\x3c\xe8\x97\x1a\xba\x87\xed\x24\x7a\xb3\x51\x2b\x24\x96\x33\xfc\x9e\x90\x78\x8e\x7a\x93\x90\xfa\x0f\xca\xc2\x9e\x56\x26\x42\xd2\xea\x48\x0d\x3c\x22\xb4\x45\x75\x2a\x67\x33\x21\x92\xae\xaf\xbd\x66\xd2\x5e\x65\x14\x14\x65\x2f\x2f\xec\x86\x36\x3b\xf3\x22\xf5\x38\x1b\xe7\xbc\xf1\x01\x4f\x33\x3c\x16\x9d\x8e\xf9\x21\x25\xee\x81\xf7\x7b\x4d\xda\xef\x2a\xf1\x57\xc1\x7a\xda\x0d\x5a\x3e\x43\xb9\x97\x1f\xd1\x50\x74\x28\x80\x36\x2e\x6c\xa7\x69\x8c\xd3\x53\xc9\x37\x1d\x97\x79\x74\x35\xb5\x54\xde\x04\x96\x16\xdc\x97\x6d\x91\xc2\xd2\x26\x81\xa8\xfe\xab\xff\x75\x7b\x1c\x24\x44\x33\x4b\x85\xdc\xd0\x72\x0c\xab\x95\xbf\xaf\xcf\x7d\xde\x31\x3e\xb7\xad\xe5\x2a\x1e\x9e\x1e\xc8\xe9\xb4\xce\xed\xd8\xde\x76\xcf\xcf\xd5\x70\xcf\xcf\x53\x01\xb1\x6e\xc0\x83\x7d\x5d\x46\x82\xf2\xa8\xff\x1a\x1e\xd3\x4c\xfa\x6a\xd5\xb6\xd3\xef\x4e\xaf\x55\x0d\xf7\xe5\xbc\x34\xbe\x76\xf3\x19\x9a\x57\x8a\x04\x70\xc2\x7b\xce\x3e\xdf\x94\x2a\x66\xc9\x04\x9a\x41\x68\x67\x9b\x35\x0c\x58\xa3\xb1\x58\x16\x87\x43\x1f\x6f\x82\xdb\x02\x00\x00\xdb\x3d\xc3\x74\x3a\xf4\xd4\xee\x17\x45\xdc\xd4\x98\xbb\x60\x51\x6a\xf1\x95\x7b\xae\x5b\x6a\x93\xb8\xd9\xc3\x5b\x07\x3c\x6d\x76\x82\x42\x47\xdf\x21\x01\x3a\x7c\x1b\x4f\xa9\xce\x6d\xaf\x60\x94\x05\x4a\x4b\x78\xfd\x81\xfb\x87\xe4\xc4\x5f\x4f\xc9\x4c\x5b\xdf\xa9\x76\x9a\xce\x63\xb9\x55\xcb\xb9\x74\x67\x46\x0c\xce\x62\x0c\x12\x51\x82\x39\x33\xb2\x86\xd3\xec\x63\x0f\xcd\x7c\xc0\x53\xcc\x31\x1d\x5b\x5c\x23\x7b\xd1\x9a\xa1\x9c\xfe\x20\x5a\x17\x18\xd3\x96\xc5\x69\x39\x9e\xb4\x8e\x5a\xf9\x52\x12\x43\x50\x29\x21\xd7\x02\x4f\xa2\xd2\xe9\xab\x6c\xfa\xd4\x23\x3e\xa7\xe1\xdd\x3b\x28\x4f\x90\xf7\x36\x48\x4f\xca\x0d\xbd\x5a\x05\x6b\x49\x9a\x50\x25\x0c\x9f\xab\x78\xa6\x25\xa4\x4c\x84\x07\x77\x50\x08\x83\xd9\x6b\xe9\x6e\xeb\xc9\x70\xbd\xf4\xb7\x05\x48\xf0\x50\x8c\x52\x0e\xbd\x81\xbf\x28\xed\x48\xec\xf5\x5a\x79\x7f\xeb\xdb\x9b\x51\xd0\x9d\x32\x7e\x82\xc6\xb3\x2a\x5b\xc4\x86\x78\x94\x52\x7d\xf9\x02\x99\x8f\xa5\xdb\x6d\xff\x51\x07\x31\xf2\x70\x74\xbb\xfa\x02\xc6\x25\xca\x66\xab\x15\xf3\x69\x94\xe4\x90\x59\x15\x85\xb3\x94\x1b\xa1\x06\x74\x39\xfe\x84\x79\xae\x7f\x4d\x96\x63\xff\xd2\x48\x53\x5a\x4f\xe5\x02\x39\x58\xad\x78\x01\x20\x03\x90\x78\x6c\x6f\xa5\x3d\xd5\x9c\xea\x4d\xf5\xfd\x80\x35\x29\x27\xb1\x94\x13\x56\x3e\x1a\x46\xcd\xcb\xed\x5f\x6f\x61\xfd\xd2\x32\x39\x3c\x89\xdc\x01\x64\x0f\xe3\x1c\x3f\x42\x5c\xf2\xa3\x81\xc8\x7a\x3b\x4a\x02\x57\x90\x37\xab\x3e\x0d\x56\x7d\xea\x57\x7d\x6a\xcc\x1a\x1b\x75\x9f\x05\xeb\x3e\xf3\xeb\x3e\x53\x75\x49\xfa\xd1\x71\x50\x4e\xf6\xc1\xd7\x1a\x31\xc7\x04\xde\xd6\x89\xad\x77\x28\xb5\xef\x9e\xc5\xcc\x31\x00\x05\xcc\x03\xa4\xd9\x95\xcf\x6b\xe5\x21\x57\xe8\xb9\x00\xd5\xd8\xd4\x8a\x09\x2f\x27\xd9\x63\xd0\xaf\xd2\x86\x35\x4a\xbb\x57\x94\x1c\xef\x7b\x0f\x67\x34\xd1\x48\x3b\x6e\x4b\xe6\xa6\xca\x79\x69\x8e\x5f\xef\x09\x35\xe6\xd5\x2a\xf0\x5d\xc9\x8b\x9a\x56\x49\xc1\x19\x0c\xde\xc7\xa5\xd3\x1d\x56\x09\x8e\x54\x46\x06\x00\x12\xac\x9c\xf2\x3e\xa4\xb1\xf5\xdc\x3e\x17\x1c\x8d\xaf\xf0\x04\x92\xfa\x0b\x56\x7f\x61\x05\x90\xf3\x09\x5e\x60\x3a\xc1\x54\xfc\x15\xdf\xbc\x62\xf3\x05\x12\x30\xbf\xe3\xdb\xf2\x8e\x6f\xd9\x1d\xdf\x16\x95\x1d\x1c\x37\x75\x4e\x01\x22\xe3\xb8\x24\x11\x66\x59\xcf\x24\x9d\x68\xe1\xcf\x0b\x8e\xf3\x5c\x89\x21\x52\xbc\xc7\x44\xcc\x30\x6f\x5d\x60\x95\x40\x5f\xd9\xe1\x7b\x3c\xec\x81\x47\xe9\x2d\xad\xd0\x61\xc4\x62\xd1\xe9\x78\xbc\x9b\xca\x4d\x6e\x49\xb0\x35\x97\xc7\x95\x94\xe4\x35\x7c\x5d\x14\x00\x8a\x4e\x47\xb3\x53\x05\x88\x11\x34\xc1\xbe\x84\xb6\xf4\x4b\xaf\x63\x04\xca\x1d\x84\xac\xe1\xc6\x81\xa5\xd7\xa5\xfa\xa0\x79\xba\x21\xaf\x68\x13\x20\x4d\x7b\xc7\xf4\xb9\x38\xa6\x87\x87\x80\x0f\xe9\xc8\x3b\x7a\xd4\x69\x16\x3e\xc5\x67\xb1\x44\x83\x12\xd9\x19\xce\x80\xc1\xa1\x6c\x6c\x64\x9d\x12\xb8\x64\x5c\xa2\x73\x83\x76\x22\x38\x85\x92\x92\x03\xa8\xaa\xca\x2f\xd6\xe8\x61\x52\xff\xe0\x12\x6d\xcf\xcc\x97\xcf\xe6\xcb\x1c\xdd\x5c\xe0\x5f\xe8\x35\x47\x0b\xb5\x8f\x23\xf8\xbe\xfc\xa8\x3c\x67\xf1\x22\x82\x6e\x53\x03\x88\x5d\x0c\xb1\x14\xc1\x98\xa6\xc3\xdb\x2b\x7c\x93\x44\x39\x9a\xe2\xff\x94\x42\xac\x9e\xfb\x20\x66\xf0\x8f\x86\x00\x45\x01\xcb\xaa\x67\xe1\xaa\x1e\x9a\xd0\x95\x73\x5d\x59\x71\x45\xa6\x3a\x9a\x4c\xd4\x16\xbb\xb3\xe9\x8b\xf8\x34\x46\x7e\x32\x73\xaf\x9a\xe1\xe1\x24\x8d\x51\x4b\x2b\xeb\x99\x11\x53\x26\xc8\xf4\xc6\x12\x03\x8d\x7b\x4c\x21\x00\x85\xeb\xc2\x62\x99\xcf\x4e\xcc\xd4\xd7\x3b\x51\x0a\x5e\x22\x80\xcc\x2b\x7a\x27\xfe\x63\x7f\xc0\x8f\xfa\x49\x0f\x40\x92\xf6\x8f\xc9\x73\x7e\x4c\x94\x0e\x8a\x1c\xf5\xfd\x3d\x43\x46\x46\xe9\x1d\x8b\xb4\x39\x30\xbf\x33\x6a\x68\xc0\xdf\x52\x42\x6f\x29\x88\xdd\xa6\xa2\x00\xc0\x3c\x35\x64\x18\x2e\xf5\x2f\x63\x45\x53\xf5\xca\xbc\x73\x36\xcc\xa1\xcb\x61\x59\x3b\x59\x16\x6e\x8a\xce\xf3\x32\x62\x77\x68\x92\x6c\x00\x5a\x29\x17\xf2\x14\x9b\xde\x28\x93\x16\x13\x6a\xe4\xa0\x39\xd4\x2a\xd0\xfa\x3a\xaa\x86\x85\x15\xcc\xa1\x85\x93\xd0\xe2\xfe\xe5\xf5\xb6\xe7\xb9\x2e\xf5\x37\xc2\xc5\x12\x65\xa6\x30\xc1\xc1\xa5\xd6\xa3\x90\x10\x8e\xe3\x18\x07\x16\x67\x3d\xb0\xc6\x2e\x04\x60\xb5\x1a\x8e\xd6\x30\x83\x1b\xac\x0b\x94\xac\xaf\x37\x0c\x6d\x16\xf4\x57\x7c\xc7\xf4\xef\xc8\xa5\x44\x11\xe4\xa1\xb1\x7a\x2d\x86\xce\xd8\xa6\x9b\x4b\x00\xc8\xdd\x30\xf0\x67\x3c\x56\x01\x21\x6b\x63\x50\x74\x49\x16\xef\x92\x5c\xe9\x22\x3b\x1d\xf3\xf4\x9a\x70\x71\x63\xcd\xee\xd4\x3b\x8b\x0d\xa1\xb0\xcf\x1a\xa1\x1e\x54\xbe\x36\xac\xec\x04\xbc\x35\x58\x2e\x71\x98\x0c\x1a\xe4\x95\x38\xf4\x54\x94\x41\x16\x67\x24\x77\xfd\x36\xbd\x8a\xd6\xd8\xce\x36\x67\xcf\x55\x50\x53\xe7\xc1\x31\x8a\xf7\x6d\x20\xb9\x2a\x75\x58\xef\x39\xc9\x05\xa1\x78\x1b\x60\x65\x9d\x3a\x34\x35\xd3\xdb\x80\x32\x15\xaa\x70\x24\x37\x42\xe8\xe5\x6b\x24\x50\x03\xd6\x06\x8b\x08\x69\x6d\xe1\xaa\x7c\xc3\x3a\x29\x11\x40\xbc\xe1\xf2\x1e\x78\x6a\x79\xcf\x0b\x64\xe3\xdd\x51\x8c\x40\xa7\x73\x19\xfb\xdc\x0b\x55\x22\xd2\x65\x2c\x20\x01\x10\x15\xb1\xe8\xbe\x5c\x4e\xa5\x14\x3e\x29\x75\xdc\x70\x9a\xbe\x88\xe3\x71\xba\x00\x5e\x45\x8f\x17\x18\xd2\x91\xe2\x82\x2a\x42\x69\x55\x64\xf5\xd9\x21\x4f\x44\x4a\x74\xe4\x2d\x38\x49\x5f\xc4\xe3\x0a\x70\x17\x4f\x84\x3c\x14\xf6\xac\x01\xdb\x71\x24\x43\xf6\x50\xe0\x35\xd0\xee\xe4\x0c\xd1\x08\xde\xa7\x8d\x0b\xd6\x04\x70\xec\xef\xd4\x06\x7c\x77\x9e\x86\xf9\xd6\x2d\xd8\xba\xf7\xb5\x51\x1e\xb3\xe1\x72\xeb\x46\x5c\xe5\xfb\x5a\x31\x27\x70\x98\x6d\xdd\x84\xae\x59\x83\x3f\xf6\x58\xe6\x8f\xdf\xae\xf4\xab\xa3\xc3\x94\xe1\x29\x3d\xf9\xd7\x7b\x5d\xca\xc7\xe6\x12\x10\x5f\xb7\x3e\x34\x84\x66\x52\x34\x24\xd7\x0f\x07\x4d\x8b\xe1\x16\xb6\x6a\xc5\xc0\x98\x37\x9d\xae\xc0\x90\x37\x9e\x2e\xf2\x80\xe9\xba\xb1\x2c\x8b\xe1\x4b\x3f\xba\x30\xee\x4d\xd5\x01\x7b\x24\xd5\xc1\x5d\x17\x72\x8d\x7b\xb5\x2f\x68\x03\xb7\xad\x5d\x87\xfc\x5e\x37\xed\xa8\x2b\xdd\xdb\xf5\xab\xb2\x3b\xcd\x3a\x42\xa6\x02\x6b\x8c\x47\xf6\xd6\x62\xeb\xac\xc5\x76\xb3\x80\xc8\x17\x1c\xa3\xc9\x9f\xc6\x4c\xcc\x70\x42\xe4\x7b\xbd\x44\x66\x77\xeb\x0d\xdb\xb2\x2b\x65\xf0\x3a\x62\xce\x59\xa7\xd3\x6e\x8a\x56\x9b\x06\xc8\x73\xa1\xe9\x3e\xe0\xcb\x93\xcf\x0b\x15\xd1\x4e\x78\x81\xee\x5c\x48\x3c\x51\x54\xba\x8a\xbc\xae\x56\xbd\xd7\xad\x9c\x1f\x98\xca\x20\xc9\xd7\xb3\x94\x0f\xee\xfa\x28\xc1\x4e\x49\x26\x30\xf7\xc4\x52\x51\x87\x5b\x0e\x76\x61\xaa\xbf\xcd\x4f\x1c\x63\x57\x5e\xb0\x16\x00\x24\xc3\x91\x1c\x8f\x37\xa0\x5c\x6f\x65\xef\xe6\x4f\xdf\xd4\x98\x5b\x3b\xee\xdf\xda\xb9\x4a\xcb\x2a\x81\x68\x87\x6f\x83\x79\xd7\x70\xea\x46\x45\xeb\xd0\xcf\x94\xe0\x6c\x92\x97\xf7\x56\xd4\xd7\xf8\xfe\x8c\x16\x9d\x0e\xed\xce\x50\x1e\x0b\x9b\x05\x42\x85\xd0\x35\x97\xc4\xed\x78\x8b\x1b\xe5\x2d\x67\xc8\x9f\x98\x4c\x65\x1b\xca\x4a\xaf\xd1\xf0\x8d\x11\x52\x08\x7e\xa9\xec\x66\x32\xa0\x1e\xb2\xae\x91\x47\x6c\x74\x3a\x9f\xf9\x80\x54\x07\x88\x0a\xec\x21\x11\x82\x9f\xdb\xbc\x5c\x62\x98\x8f\x0e\x96\x81\x21\x85\x46\xbf\xb4\xf6\x02\x60\xc0\x86\xc3\x52\xb1\x19\x23\x20\x99\x69\x1b\xf0\xb3\x1b\x81\x51\xba\xec\x9a\x90\x28\xfe\x11\x5b\x82\x4e\x07\xc7\x4b\xd5\xdb\x40\x7d\xe5\x78\xca\x8a\x98\xc2\x0c\xde\x16\x70\x38\x52\x04\xc2\x1f\xcc\x14\x38\x8f\x3b\x20\x71\x20\x92\xbb\xaa\x0c\xc3\x37\x44\xa3\x03\x37\x4f\x6a\xf2\x26\xa0\xd0\x19\xb7\x14\xc1\x94\xab\x8d\xc0\x6a\xd5\x66\x31\x1d\xa2\x11\x70\xf7\x8e\x77\x8f\x5b\x96\x75\x43\xd7\x8d\xcd\x52\xf9\xd2\x6e\xb5\x59\xa7\x33\xab\x58\x7e\x98\xeb\xa4\x41\xb5\x33\x33\x63\x49\x99\xd4\x5e\x83\xa2\xfa\x62\x6c\x16\x5b\x6f\x72\x04\x60\xf9\x48\xd5\xa3\x89\xc3\xe7\x5d\x50\x8e\xbd\xcc\x48\xbb\xf3\x91\x07\xee\x70\x95\xc7\x6c\x9d\x39\xc2\x50\x8c\x0a\xc8\x6d\xbf\x53\xf7\xab\x5a\xde\xe7\xf7\xd4\xad\x6a\x61\x5c\x74\xaa\x1c\x95\x00\x90\xa4\x75\x26\x0b\xb2\x94\xca\x6d\x23\x37\x41\xdb\x1a\xd4\xb5\x84\xb6\xd7\x70\x4f\x1e\x8e\xc9\xac\x76\x59\x63\x19\xe4\x93\x7e\x43\xf6\x7f\xa1\x8a\xac\x0b\xd6\xfa\xa7\xe2\x20\x5f\x63\xbc\xf8\x67\xeb\x9a\x88\x59\xeb\x86\x2d\x79\x6b\x82\x04\xea\xb6\x5e\x70\x2c\x1f\x5b\x82\xdf\x10\x7a\x29\x4b\xab\xc2\x2d\x71\xcd\x5a\x9a\x1d\x95\xe5\x2c\xb9\x1f\xb4\x4c\x3c\xd1\x29\xc9\x70\x0b\xd1\x16\xc9\xf3\x25\xd6\x40\x6b\xcc\xab\x24\xf9\x0f\x89\xdd\x3a\x0e\x30\xc6\x19\x39\x42\x8b\xc5\xd1\x27\xcc\x73\xc2\xe8\x13\x4f\xc4\x3e\x9a\x22\x89\x19\x6f\x1e\x35\x64\x60\x89\xa9\xdb\xfd\x80\x39\x86\x8a\xbb\xd2\xe9\xe0\x4e\x87\x57\x63\x86\x5a\x82\x9a\xa1\x3c\x27\x53\xb9\xfe\x07\xa2\xcb\xf1\x25\xc9\x25\xa1\x22\x52\x36\xa0\xa9\x94\x0e\x0a\x93\xc4\x46\x57\xcb\xc8\x05\x47\x9c\xe0\xfc\xfe\x99\xd1\x82\x03\xc7\x97\xf8\xf3\x57\x8b\xa2\x78\x80\xbb\xa6\x39\xcd\x02\xa4\x4f\xfe\x31\x39\x1c\x76\x47\xee\xff\x27\xd0\x95\x38\xf9\x2c\x30\x9d\xe0\xc9\x9a\x92\x47\x43\x74\xf4\xdb\xe8\x7f\xc4\xfa\x09\x0c\x64\xcd\x7c\x86\x6c\x69\xf9\xf5\x1f\x93\xd1\xed\x7f\x14\xff\xd7\x93\xf0\xd8\xa7\x19\xca\x67\x7e\x76\x68\xf5\xc2\x86\x86\x0d\x1a\xc9\xbb\x5a\xc1\xec\xd2\xd5\xfa\x8f\x19\x45\x7b\x6c\xd2\x64\x41\x49\xff\x11\x9d\x40\xa2\x72\xea\xb0\x4c\x59\x38\x48\xb6\xfd\x94\x66\x37\x10\xa5\x4a\x15\xed\xae\x55\xf9\x92\xaa\x40\x75\x14\x7f\x16\x2a\x4c\xdd\x58\x22\xe8\x0c\xda\x10\xaa\xaf\xec\xd8\xba\x58\xad\x45\x7c\x9b\xa1\x1b\xb6\xf4\xc2\x6d\x43\x34\x56\xd9\xa8\xda\x7d\x1b\xbe\x4b\x65\xea\x4a\xa2\x0b\xc6\x44\x2e\x54\x3c\x4e\xb5\x65\xdf\xa1\x39\xce\x93\x61\x54\x9f\x23\xf7\xf1\x25\x51\x9a\x51\x59\x06\x65\x98\xdb\xdc\xfc\x1a\xbe\x5c\x81\xcf\x44\x48\x01\x6e\x04\x91\x30\xe9\xd7\xfc\x2a\x9c\xa0\xa3\x0c\x5d\xe0\x4c\xd6\x91\x0f\x3a\x36\xeb\x05\x9e\x5c\xdc\xa8\x94\xff\x99\x6c\x2d\x9f\xb1\xeb\xf7\x9c\x5d\x72\x9c\xe7\x09\x8b\x75\x6f\xba\xfe\xdb\x08\x40\xca\xc4\x89\x6e\x2c\x41\xb1\x6b\x17\x54\x2a\xbf\x44\x3c\xa1\x71\x54\xa9\x09\xa3\xb2\x66\x04\xa0\xa9\x58\x36\x53\x42\x9a\xa1\xfc\x65\xc6\xc6\x57\x09\x89\x23\xbb\x93\x22\xe0\xd6\x29\x06\xd0\x4d\x41\x52\x5d\x60\x0b\x4b\xa8\xd9\xb9\x0d\x6a\x90\x9d\x86\xf6\x57\x22\x66\xaf\xf5\x3a\x69\x1d\x46\xa5\x72\x14\x01\x28\x52\x3d\xd9\x2d\xf5\xff\x91\x0d\x6d\x1e\x4d\xd9\x92\xea\x6b\xae\xc8\x0f\xc7\xdf\x04\xe8\x2f\xba\x02\xa9\x04\x31\x0d\xf4\xe8\x82\x7d\x6e\x45\x00\x7a\x79\x13\x1c\xbf\xae\x42\xbb\x42\xd5\x9d\xaf\x3e\xca\x70\xbc\xf6\x12\x8f\xca\x9e\x4c\xc8\xe4\x2d\xcd\x31\xb7\xa9\xa7\xc2\x7a\x79\x73\x87\xa2\xac\xc2\xd6\xd8\xb7\x69\xdc\xbb\xd4\xef\x7d\xbb\x3c\xff\x8a\xd7\xed\xea\x76\x0f\x94\xd9\x2b\x94\xba\x47\x0d\xc0\xdc\x12\xa8\x7b\x63\x01\xd4\x15\x82\xfa\x1a\x9d\xcf\xd9\x32\xc7\x27\x54\x60\xfe\x17\x95\x1f\xc2\xdc\xf0\x76\xbd\x0f\xdd\x0b\x42\x27\xda\x76\xaf\x59\xf5\x27\x8c\x3e\xe1\x50\x55\xf5\xa1\x59\xd5\xe6\x71\x43\x93\xc9\xc9\x27\x4c\xc5\x4f\x92\xdc\x50\xcc\xe3\x48\xd5\xd2\x69\x61\x1b\x5d\x30\x0d\x6c\x06\x23\x93\x2d\x37\xfb\x62\x61\x14\xf0\x9a\x64\xd9\x6b\x9c\x0b\xce\x6e\x02\xab\x73\xef\x92\x54\x3b\xa1\x53\x86\x3d\x78\x2c\xeb\xc1\xdc\x3b\x9c\x85\xc1\x17\xaf\x97\x5c\x5f\x24\x87\xf7\x7e\x15\xb5\xd4\xcf\x80\x64\x13\xbc\x58\xe2\xde\xb6\xaf\x22\xb3\xd2\x14\x75\xd3\x53\x43\xe6\x98\x2d\x45\x04\x7b\xe1\x73\x33\x13\xf3\xec\x0c\x4d\x71\x1c\x09\x8e\xa8\x4e\x65\x77\x34\xb1\x43\x29\x43\x4c\x62\x18\xcd\x73\x9d\xd9\x00\x8e\x33\x32\xbe\x4a\x1a\x67\xe1\x8e\x5e\x4c\xf4\x72\x9f\xd2\x57\xb2\xaa\x3a\x27\xe6\xca\xf3\xdc\x7c\x7a\x23\xcb\xd9\xb8\xdc\xa0\x80\xde\x8a\xdd\x81\x2b\xfc\x46\xa2\x66\xd6\x18\x95\x8b\x44\x25\xd9\xc7\x54\x61\xf2\x12\xb2\x5a\xc4\x87\x41\x6e\x57\xac\xa7\x1c\x35\x90\x4d\xaa\xa0\x25\xb6\x41\x6f\xbf\xef\xb0\xd1\xc3\x13\x04\xb3\xb8\xde\x55\x0f\xc9\x00\x39\xcc\x40\xbd\xed\xb1\x6e\x04\xdb\x7d\x70\x80\xe5\x98\x0c\x3c\x6f\x8d\x90\x82\x95\x27\xb7\x2a\xfb\x5f\x73\x6c\xe1\xa5\xad\xe6\xc6\x58\xc3\xe1\x6b\xae\x4c\xff\x6f\x24\xea\x3b\xf9\x37\xcd\xeb\xda\x33\xf7\xa8\xbc\x9a\x81\x66\x38\x2a\xfd\x4e\x21\x12\x3c\x81\xb7\x72\x57\x7c\x24\x73\x73\xfd\xe7\x78\x88\x76\x1f\x92\x5c\xee\x8f\xe6\x45\xe1\x44\x16\xd7\xa5\xcf\x2f\x97\x64\xa2\xdd\x87\xe4\xaf\x37\x8c\x83\xd8\x52\xe8\x2a\x7b\x21\xab\x6f\xb7\xb7\xea\xbb\x27\x17\x64\x7c\x75\xa3\xf2\xd1\xab\xca\x12\x6f\xf0\x8f\x28\xbf\x8a\xed\x3e\xcc\xb1\x78\x5b\xed\xa5\xba\xf1\xa8\x6e\x8b\x66\x27\x34\x0b\xaa\xe6\xc0\xe4\x87\x6c\x9e\x32\x35\x4b\x28\xbf\x7a\x6b\x54\x0a\x11\x38\xc0\x83\xd8\xf1\xb4\x86\x8d\x95\x22\xb2\x86\x29\x30\xe2\x13\x76\x4d\x63\x00\x12\x8d\xc6\xed\x34\xeb\x1e\x17\x6a\xa2\x03\x5d\xaa\x37\x5c\x2e\x82\xe6\x74\x02\xb0\x74\x93\x82\x93\xcb\x4b\x49\x13\x26\x64\x72\x52\xc2\x56\x27\x6d\xcd\xf9\x0e\x0f\x95\x51\x53\x34\xd2\xc7\xca\x4d\x6f\x65\x9e\x02\xef\x02\x93\x04\xef\x5d\x66\x49\x9d\x1c\xf2\x6b\x4e\x44\x1e\x9a\x08\x79\xe2\x0b\xe8\x30\xd8\xc6\xb5\x7a\xae\xd7\x33\x3c\xbe\x7a\x3b\x3d\x9b\xb1\x65\x36\xb1\x48\xd0\xed\xa7\x30\x27\xe6\xd2\x4e\x95\x33\x65\x29\x97\xef\xc5\xc0\x4b\x41\xa7\x2b\x99\x6c\x5f\xa3\x0b\x6e\x71\xd7\x5b\xf6\x18\x14\x00\x8a\x26\x2f\xe6\x3a\xe2\xe6\x51\xdb\xe7\x55\x96\x7d\x0d\xbb\x18\xa2\xd2\x24\x37\x0b\x8a\x27\x11\x68\x4e\x91\x25\x0b\x72\x7e\x2a\x82\xbc\xbf\xfb\xb5\x5c\xfc\x71\x87\x01\x7b\x47\x21\x3c\xdc\xc6\xae\x91\xa3\x55\x3e\x1d\xf5\xa3\x54\x14\x30\x70\xc6\x9b\x33\x11\xdb\x04\x30\x40\x8e\x41\xe3\x81\x46\xb3\x35\x7c\x16\x41\x2c\x49\xd2\x25\x16\x27\x19\x5a\xe4\x4d\xd0\xe6\x72\x26\x00\xfa\xa8\x31\xe1\x35\xd0\x12\xb0\x77\x50\xbe\x5c\x62\xa8\xc0\x4e\x69\x2c\x1e\x06\x07\x2e\xff\x9d\x87\xa9\x84\xea\x54\xfd\x1c\x34\x91\x63\x75\x42\x62\xf0\xe3\xfa\x53\x50\xe1\x37\xaa\x38\xdb\x62\xae\x10\x0e\xa9\x9c\x08\xd9\x2b\xbb\xe0\x1b\xf2\x3e\x67\x98\x7f\x22\x63\xdc\xfd\xd7\x12\x2f\xb1\xc1\x59\x86\x5b\x36\x97\xb8\x4a\xbc\xd0\x8d\x19\x5a\x10\x42\x9a\xaf\x2b\x64\x22\xaa\x65\xc8\x0a\xe5\x7f\x74\xb4\x3d\xd7\x5d\xa8\xe9\x63\x82\x99\x83\xd6\xb1\x0e\x6b\xf8\x05\xfd\xf9\xe8\x9a\x88\x99\xe2\x91\xd7\x14\xab\xb4\x7b\xc4\x54\x7e\x98\xaf\x1c\x82\x2f\x10\x48\xc7\xae\x84\x55\xdd\x98\xf0\xcf\x35\x71\xa3\x8b\xff\xb5\x44\x59\x1c\xa9\xf5\xea\xda\xe0\x88\xbd\x0a\xb7\xa0\xf8\x8a\xbc\x5e\x71\x8e\x16\x2f\x6f\x4c\xc5\x08\x46\xaa\x50\x4d\x89\xc1\x39\xa2\x97\x78\xf2\x5f\xb2\x48\xbd\x7a\xce\xb8\x70\xb5\xe3\x35\x16\x13\x0b\x4e\x18\x27\xe2\xe6\xb9\x70\x3f\x07\xfd\xa4\x7c\xff\xa3\xf7\xfe\xa8\x9f\xf4\x0a\xf0\x40\x36\xc7\xb1\x2e\x86\xb7\xcd\xed\xde\x54\x1d\x75\x69\xff\x1e\xcc\xa5\x8f\x33\x8c\xb8\xd9\xdc\xb9\xe2\x8d\x27\x93\x2f\x86\x89\x4a\xd7\x2b\xdd\x1b\x4c\x55\xef\xcd\xa1\xa7\xf8\xba\xc2\x61\x63\x23\xeb\x17\xb0\xd2\xa9\xfb\xcf\xbb\x3d\xe2\x25\x95\x23\xf9\x3b\x46\xb1\x1f\xd7\xe3\x4e\x03\xdf\x80\x8c\x00\x94\xe7\x91\xec\x47\x6c\x7b\x65\x75\xdc\x1f\x6f\x16\xa1\x5e\x19\x6e\x60\xc7\xa9\x72\x0b\xea\x66\x2c\xd0\xe3\x8a\x93\xa9\xdf\x9d\x58\x5d\xef\x9a\x7e\x2e\x30\xbe\x7a\x43\x78\x1e\xb2\x0f\x0d\x4e\x9d\xce\x75\x6e\x4c\x48\x80\x06\xf0\x13\xda\xa2\x7e\x86\xfc\xea\x97\x58\xa8\x75\xd5\x6f\x42\xd1\x94\xe5\xf2\xdb\x46\x94\x64\x5b\xdb\x0a\x5f\x70\x03\x42\xaa\x17\x86\xdc\x2b\x31\x9a\xb6\x5f\xbb\xe0\xa5\xb7\x05\x68\xe4\x3a\x23\x70\x18\x09\xb9\xfe\x91\xa4\xe7\x72\x7c\x84\xd1\x37\xea\xf6\x46\xd9\x97\x47\x86\x6d\x7d\xbd\x5c\x64\x64\x8c\x04\xce\xa3\x11\x70\x9e\x45\x65\x3a\x1f\x06\x6f\x7d\x2a\x95\xd0\xa2\xb4\x15\xc9\xd5\x0d\xbc\xbd\xf8\xf5\x65\xf5\x1c\xc0\x2c\x75\x04\xf8\x54\xe1\xf3\x53\x6e\xc7\x92\xc3\xa5\xcf\xcf\x20\x98\xc3\xac\x34\x93\x76\x79\x29\x8d\x89\x2e\x32\x7c\x4d\x0d\x4a\xcd\x64\xcc\x67\xe5\xb6\x9c\x3a\xea\x75\x9d\xc3\xd2\xf4\xc2\xf7\x72\xae\x66\x60\x15\x60\x40\x13\x51\xc0\x10\xcc\xba\x72\x2a\x5e\x8f\x15\x4e\xaf\x29\xe6\xc6\x67\xd8\x84\xc0\xf8\xa0\xce\x8a\xd6\x0d\x99\xa4\x49\x97\x09\xa6\x9f\x08\x67\x74\xae\x63\x57\x8a\xf0\x28\xf1\x1d\x43\x2c\x6d\x94\xbd\x54\x28\xfa\x24\xfa\x98\x7b\x7b\xe5\x45\xb0\x31\xe7\xe0\xe2\x6d\x0f\xbe\xe6\x4e\x4e\x79\x43\x45\xa6\x4f\x51\xe9\xd8\x54\x67\x77\x29\xc4\x43\x31\x02\x85\xda\x53\x15\xfc\x16\xdf\xd1\x47\x03\xf7\xa3\x3e\x07\x0e\x73\x29\x2e\xcd\x07\xb2\xc6\x69\x43\x29\xaf\x87\x78\x54\xde\x45\xba\x9b\xc8\x9d\x43\xb9\xb8\xf3\x5d\x1e\x31\x5a\xd3\x1b\x96\x5e\x2c\x04\xe7\x31\x81\xb7\x36\xcd\x0b\xd7\xb9\xf7\xb0\x94\x43\xba\x68\x32\x89\x89\x12\x29\x66\x28\x77\xa7\x38\x64\x21\x55\x47\x85\x9a\x39\x89\x40\x57\x05\xd2\x9f\xe0\x3c\x56\xa2\x83\xa1\x79\x81\xb9\xa8\x68\xe1\x9a\x78\x43\x1b\xdd\x35\x62\xb8\x8a\x81\x67\xfa\x5e\x5d\x90\xf7\x4d\x18\x8d\x13\xac\xb8\x38\xcd\x21\x1d\x58\x5f\x8e\xca\x50\x4b\x33\xbd\xe2\x2e\x9c\x1f\x01\x15\x74\xca\xd9\x43\x56\xd9\x62\x52\x00\x70\xb0\x8e\x2d\xde\xe0\xca\xf2\xeb\xdf\x83\x7b\x7c\xaa\x5d\x89\xbf\x7c\xfc\xf9\xa7\x97\x88\xe7\x5d\xdb\xc1\xf8\x96\x4c\x92\xe8\xfd\x5f\x17\xd3\xff\xf7\xd9\x78\x1e\xc1\x0b\x75\x55\xf6\xc3\xad\x31\x68\xcb\xa3\x64\x18\x75\xec\x21\x1b\x49\xb1\x06\x09\xac\x2d\x24\x93\xe1\xf0\xdf\x61\x44\xa6\x11\x1c\x0e\x9f\xfe\x4f\xd8\x1f\x8d\x74\x70\xde\xdb\x5a\xa1\x1e\x8c\x5a\xad\x68\x04\x87\xfd\x7f\x87\x7d\x59\xf6\x19\xec\xc1\xe1\x68\x04\x87\x4f\xff\x1d\x9a\x4b\xca\x48\x3d\xfe\x87\xbe\xac\x51\x99\x47\xca\x62\x91\xd2\x60\x46\x1a\xfa\x48\x16\xec\xc1\xe8\x1f\xff\xa0\xb2\x4e\xb4\x40\x1c\xcd\xb1\xc0\x5c\x36\x35\x2a\xee\x68\xbc\xd2\x9c\xbb\x4c\x93\x40\xa6\x28\xcb\xb1\x07\x16\x7a\xe3\x92\x55\x6a\x77\x91\xd1\xe8\xce\x91\xea\xe6\xfe\x17\x8c\x26\xe4\x53\x04\x05\x5f\x4a\xd0\xfd\x9e\x1c\x06\x52\x17\x97\xfa\xbe\xce\xde\x4c\xc8\xc2\xff\xe1\x1a\x6f\xb5\xb6\x06\xa0\x7a\x04\x87\xfd\xbe\x5c\x1c\x75\x33\x38\x7c\xfa\x54\x1e\xb6\xea\xcd\x87\x9a\x61\xd9\xd0\xff\xae\x34\x16\x55\xde\x04\xa7\x54\x4f\x7b\xe3\xbd\x7c\x35\x43\xf9\xc9\x27\x94\x45\x89\x9a\xc2\xe2\x07\x38\xc7\x02\x25\xb7\x3a\x51\xfb\x3b\x34\xc7\xc9\x0e\x27\xa3\x3b\xbb\xc8\xa3\xea\x59\x13\x77\x89\xa0\x35\xf5\xf2\xd7\x3b\x57\x68\x32\xf1\xdd\xc3\x2d\xb1\x6a\x72\x6e\x50\x78\x66\xb0\x18\x40\x1d\x28\x07\x2b\x53\x58\x31\xe4\xbe\x07\x26\x1f\x19\x1b\xa4\x1a\xed\x0f\xdf\xc3\x2a\xe4\xc4\x53\x51\x4b\x84\xde\x64\x62\x5c\x30\x99\x32\xd7\x71\x95\x0f\x29\x0d\x95\xb9\x97\x0f\xde\xd2\x39\x0e\x54\x4f\xd0\x58\x84\x22\x34\x54\xc4\xc6\x43\x51\xe8\x94\xda\xd6\xd2\xd1\x19\x20\x1a\x91\x8c\x42\xa1\xdc\xef\x8d\x96\x3c\x5d\x4b\x66\xdc\xd8\x71\xf0\x16\x3a\xa4\xde\x69\x48\x43\xa2\x96\x10\xd4\x34\x5a\xf3\x04\x08\x1b\xf5\x6f\xa4\x58\x78\xdc\x84\xa7\x95\xb1\x58\xb2\x6f\xb4\x4e\xc9\x33\xfc\x0c\xd6\xd4\x93\x49\x0f\x5a\x11\x3d\xe9\xf7\x7a\x50\x2b\xa1\x92\x76\xbf\x6a\x8c\xd1\xee\x6b\x76\x20\x22\x74\xca\x22\xf5\x3b\x4f\x86\x51\xbe\x1c\x8f\xb5\x6d\x85\x7e\x1f\x5d\x23\x4e\x95\x7e\x34\x9a\x20\x7a\xa9\x12\xf3\x28\xdc\x13\xc1\x28\xc7\x63\x46\x27\x88\xdf\x44\x23\xd8\x14\x12\x92\x61\xc4\x99\x72\xae\x54\x81\x0b\x38\xcb\xd4\x15\x78\xf4\x89\xe0\x6b\xf5\xce\x9c\xfc\x68\x04\x1b\x4c\x41\xd2\xee\x17\x6b\xb2\xd1\x86\x35\x44\x66\xa7\x3e\xf2\xd2\xe8\x2d\x79\x5b\x94\xe6\xef\x1e\xcf\x4a\xb5\xb1\x7b\xfd\x62\x52\x05\xd7\x57\x08\x80\x96\x42\xcb\xe6\x03\x65\x34\x7b\x54\xf3\xb9\xdf\x31\x6f\xf1\x70\x04\xb9\x3f\xb9\x54\x4f\xee\x51\xbf\x9d\xa6\xa2\xab\xc2\xe0\x9d\x4e\xf5\x7c\xaa\x30\x08\x78\x48\x47\x0e\x05\xf1\xcd\xa7\xd4\x69\x17\xff\xdc\xb3\x9a\x3e\x60\x56\x67\x18\x4d\x7c\x5a\x2e\x9f\x8f\xb4\xe9\xda\x3a\x2d\xb0\xaa\x12\x64\x04\xfc\xca\x5f\xed\x9e\x78\x9d\xbd\x9d\x40\x97\x9a\x67\x89\x60\xc3\xf4\x2e\x57\x17\x05\x1f\x31\xe2\xaf\xd9\x35\x3d\xa5\x6f\x29\x11\x49\xbb\x07\x65\x87\xad\xa1\xcc\x1d\xe2\x7b\x5d\xcc\xf0\xe5\x77\x1d\xf6\x32\x8e\x8c\x2a\x3d\x39\x9a\xb0\xf1\x52\x4b\xec\x5d\x09\x5e\x4e\xfb\x17\xb8\x43\x0e\x0c\x20\x72\x86\x1e\xc2\xbc\xff\x0b\x46\x93\xd8\xde\x44\xd8\x17\x75\x5b\x18\x5d\x85\xe4\x6f\x50\x2e\x2e\x18\x13\x31\xb0\x7b\xda\xf6\xbc\xfb\xaf\x25\xe6\x37\x67\x38\xc3\x92\x20\xc4\x3f\x48\xb6\x70\x48\xd1\x1c\xa7\xb5\x5d\x70\x94\x0b\xc4\x45\x34\xfa\x01\x40\xb1\x43\x6d\x4c\x27\xb2\xae\xe4\x03\x70\xa7\x53\x09\x4d\x88\x95\xa1\xe5\x19\xb9\xc8\x08\xbd\x3c\xe6\x9d\x0e\x97\xa8\xe3\x18\xb8\x46\x24\x00\x73\x59\xf2\x6a\x46\xb2\x49\xcc\x01\xac\x55\x3b\x58\x5f\x18\x03\xb8\xfe\xa3\x00\x85\x94\xae\xcb\x19\x6a\x2a\x08\x43\x3e\x79\xb2\xf4\x4b\xc6\xd6\x64\xbd\xb2\xe7\xc6\xdd\xb8\xa8\x19\x98\x28\xe7\xf6\xaf\x8e\xbd\xc2\xb7\x1c\x77\xf6\xf3\xde\xf3\xfd\x58\xbd\x5e\x23\xf3\x1e\xb2\x43\x76\xfd\x71\x3e\x0d\xca\xbc\x41\x49\x97\x1e\x19\x8b\x34\x27\x19\x7a\xa7\x5f\x49\x85\xc3\x61\xa4\xf4\x0e\x30\xf2\x76\x91\x14\xb1\xa2\x7f\x1b\x2f\x79\xce\x78\xd2\xfb\xb7\xc8\x0a\x54\x6b\x45\xd5\xff\x25\xa5\x53\xb9\xac\x9e\xec\x27\xb7\x7f\x03\x87\xda\xd3\x63\xc4\x43\xeb\x07\x1f\x45\x9e\xa8\xd7\xd7\xe2\xa0\x2a\x6e\x4b\x94\x22\xef\xe6\x4d\xa9\xa3\x76\x57\x43\x1b\x48\x90\x5b\x89\x8b\x1b\x6d\x22\x2b\x2b\x86\xf7\xa1\x76\x43\x3d\xb2\x31\xd9\x8f\x16\x9c\x7c\x42\x02\x3f\xd1\xea\xe1\xea\xe7\x5d\x33\xf2\x7c\x3d\x0f\xc9\x2f\x2b\x43\x34\x14\x91\x2a\x36\x55\x4c\xd2\x3e\xdc\xd0\xbf\x18\x17\x31\x4d\xf9\x3d\x91\xe3\xb7\x73\x30\xbe\xfd\xbe\x03\xc6\x17\x2a\x43\x6c\x65\xc2\xb8\x9a\x30\xe3\x97\xbd\xd6\x4d\x5a\xa8\x92\x3b\x25\x10\x32\xe4\x65\xfb\x34\x42\x30\x94\x43\x68\x50\x71\x91\x4e\xbe\x40\xe6\xa0\x81\x1e\x9b\x8d\x5d\xdc\x98\xa2\x6f\x22\x48\x3c\x18\xf6\x46\x41\x8b\x5d\x92\x4b\x6a\xa3\x6c\x76\x99\x0a\x81\x99\xb2\xae\x5e\x65\x00\xb1\x7c\x5a\xad\xa2\x28\x9c\x30\xac\x89\xaf\x5c\x2e\x09\xb4\x20\x42\x19\xd5\xac\x63\xa8\xb7\x42\x74\x5f\x8d\xaf\xc6\xdd\xb2\xa7\x55\x63\xcc\x6a\xd2\xb4\xea\x7d\x8e\xab\x02\x0e\x2a\x00\x78\x45\x31\x56\x8d\x98\xce\x7d\xe5\x20\xdd\x6a\x32\x67\xcb\x39\xa2\xb5\xa9\xdc\x67\x60\xfb\xc3\xa1\xce\x7d\x06\xb6\x7d\x06\xb6\xdf\x99\x99\xb2\x98\x62\x5d\xaa\x20\x9a\x3e\x39\x3f\x5c\x1d\x1d\x3e\xb9\x3c\xa8\x06\xb3\x28\xf3\xbb\xf5\x15\xa1\x20\xd3\x78\x1d\x91\x50\x7e\xff\x3c\xe5\x8e\x48\xe8\x09\xb0\x11\x4a\xa2\xc8\x58\x99\xf1\xae\x60\x3f\xb1\x6b\xcc\x5f\x21\x13\x35\x79\x91\xa1\x31\x8e\x29\x8c\x5a\x91\x17\x04\x7e\x3c\x43\xfc\x85\x88\x7b\xa0\x2b\xd8\x2f\x8b\x85\x2d\x7f\x48\xcc\x16\xef\x83\xe2\x01\x59\x8e\xd6\x63\xd5\x4c\xf6\x6d\x8c\xf2\x4d\x29\x94\x56\xc2\x79\xb5\xbe\x10\x31\xfb\x92\x29\x58\x71\xd7\xf5\xaf\xba\xec\x55\x73\x99\x92\xb0\x1d\xf8\x35\xe8\x43\x12\xed\xad\x9f\x68\x41\x44\x86\x37\xe7\x04\xf4\x3c\x97\x95\xfe\x90\xd3\x6c\xbb\xb7\xf1\x2c\xbb\x0a\x5f\x6b\x92\xf9\x92\x8e\x55\xe6\xfc\x3d\x8f\xb0\xe7\x11\xf6\x3c\xc2\x9f\x84\x47\xf0\x83\x5f\xf9\x54\xfc\x59\x2d\x4b\xab\x3b\x43\x69\x9a\x92\x41\xff\xdf\x7b\x09\x81\x28\xe5\xc3\xa7\x23\x98\x97\x5f\xd0\x6a\x85\xe0\x32\xcd\x07\xec\xe8\x59\xc2\xee\x93\x16\x4d\xde\x6d\x5a\x32\x02\x9d\x0e\xb5\xb7\x3b\xcb\x41\x3e\x28\x1d\xbb\x69\x37\x5f\x5e\xe8\x62\x71\x0f\x2e\x01\x8c\xba\xdd\x6e\x04\x92\xfa\xfb\x64\x27\xae\xc7\xe2\xbe\x2f\x9c\x3a\x76\x3d\xb2\x5d\x4a\x36\x65\x6b\xd6\xc1\xab\xf5\x87\xa4\x69\xae\x7f\x1b\x13\xb5\xb2\xc6\x17\xa6\x6a\x0d\x5e\x6b\x7b\xa2\xe6\x7c\x80\xc4\x77\x16\xa0\xed\x0f\x70\xa1\x1b\x45\x3e\x99\x6a\x97\x64\x2a\x88\x9c\x4f\x3e\x2f\xf0\x58\xe0\x49\x0b\xb5\x74\x0d\xd8\xba\x64\xa2\x85\x4a\x67\x70\xcd\x00\xb8\x84\x39\x55\xc1\x61\x33\xc5\x53\x9d\x6b\xdc\x6f\x98\x3f\xed\x86\x71\x92\xe6\x93\x78\x90\xfc\x7f\xab\x7f\xe4\xab\xa3\xd5\x3f\x9e\x80\x7f\x9c\x3d\xb9\x84\x61\x37\x93\x8a\xe0\x59\x80\xed\xb6\x1c\x27\xf3\xfd\x76\xfb\x93\x6d\x37\x4e\xe6\xdb\x21\xa6\x20\xc7\xb0\xdf\x2a\x7f\x82\xad\x52\x41\x2d\x81\x1d\xc3\xb2\x4c\x5b\x22\xfa\xd7\xc5\xf5\x6f\x41\x3e\x73\xa3\x9a\xee\x3a\x3a\x54\x4f\xef\x4d\x32\xc1\x54\x10\x71\xb3\xbe\x04\xc5\x78\x92\x1f\x71\x6c\x83\x43\x3f\xa2\xaf\xaa\x3b\x07\xd8\x85\xd5\x0e\xe4\x64\xfa\x82\x99\x43\x41\x99\xe2\x66\x46\xf2\xee\x15\xbe\x49\x85\xfe\x39\x23\x93\x09\xa6\x69\xbb\xaf\x1f\x89\xc0\xf3\x94\x9b\xdf\x74\x82\x3f\xa7\xd4\x84\x53\x12\x37\x19\x4e\x89\x97\x82\x8b\xc5\xe0\xb6\xf0\x93\xe9\x6e\x10\x38\x2d\x6c\x3e\x75\xa1\x52\x23\x98\x29\xb2\xf1\x11\x70\x96\xfd\xa4\xaa\x57\xdf\x73\x74\xfd\x56\xe0\x79\x5e\x7d\x4b\x9a\xaf\xf2\x31\x67\x59\xf6\x13\x9e\x8a\xd0\xfb\x8f\x6c\x51\x6b\x2f\x23\x98\x8a\x5f\xc9\x44\xcc\x42\x1f\xfe\x82\xc9\xe5\xac\x06\xc9\x98\x5f\x9c\x95\x1a\x33\xe3\xe6\xaa\xdf\x1b\x7b\x94\xe6\xb0\xf2\xd2\xa3\xd6\x7b\xfb\x33\x5a\xd4\x12\x62\xe9\x34\x76\x9e\x85\x99\x0b\x0d\xa2\xde\x5d\x62\xf1\x42\x08\x1e\x47\x7a\xfa\x22\x70\x50\x99\xcd\xd2\xe0\xdc\x9e\xfe\x01\x4e\xfe\x67\x73\x72\x7a\xab\x2a\x34\xfd\xe9\x28\xc3\x53\x51\x06\xcf\x70\x73\xb6\xa6\xb4\x60\x0b\x57\xd8\x9f\xc9\x7a\x71\x9c\x0b\x32\x57\x81\xd8\xaf\xe5\xf7\x5a\x1d\x33\xc9\xeb\x2b\xcd\x54\x81\x5a\xb7\x74\x54\xd5\x34\xd8\x2f\x1d\x63\x33\xd2\x6e\x9f\x78\x92\x7f\x70\xa7\xbd\xb1\x0b\xbd\x10\x15\xab\x55\xf5\x0d\xa1\x97\x36\xe2\xcb\x39\xc9\xff\x33\x23\xf3\x39\xe6\x4f\x63\x30\x30\xae\x6c\x1c\xd3\x89\x5c\x9d\xa4\xe6\x9d\xa7\x42\x8a\x15\x70\x42\x26\x1f\xf0\x18\x93\x4f\x58\xf6\x2d\x5f\x63\x3e\x68\x37\xc3\x72\x21\xbb\xa7\xf6\x78\xf5\xd5\x99\x1a\xd2\x7b\xa6\xc3\x4f\xc5\x1b\xc6\x08\x53\x27\xc3\x5a\x17\xaa\x07\x63\x21\xa7\x14\x31\xa7\x17\x39\xe6\x9f\x30\xbf\xb7\x80\xc9\xbf\x24\x5b\xd4\xf3\x9d\x30\x39\x2e\xf3\x3b\xaa\xcf\x6e\x54\x80\x02\x7a\x23\x09\x44\xbc\x29\xcf\x77\x75\xe5\xe4\x07\x6b\x99\x16\xde\xef\xaa\x93\xbe\x4b\x99\xc5\x09\xed\x34\xc5\xbf\xfb\xb8\xeb\x78\x0a\x57\xfc\xbe\x5e\xa8\x10\xa6\x65\x7c\x3a\x3d\x16\x15\xef\xae\xd3\x51\x1e\x81\xf5\xfe\x35\xde\xed\xb0\x14\x76\x2d\xaa\x5b\x28\x94\x6a\xa9\x72\xa6\x2a\xd9\x79\xc2\x08\xe2\xc0\x71\x23\xb8\xd3\x89\x71\xba\x40\x3c\xc7\x6f\xa9\xba\x73\xeb\x81\x06\xb6\xd1\xe5\xbc\xf1\x97\x9f\x22\x88\x81\x0d\xfe\xb2\x1e\xc7\x94\xed\x09\xa5\x6a\x74\xed\x89\x46\x7b\x1f\xd9\x42\x17\x6b\x34\xf7\x91\x2d\xe4\x94\x97\xf3\xf2\xaa\xc4\xe4\x6b\x73\x13\xb9\xfd\xda\xf5\xf0\x7e\xdc\x40\x79\x01\x84\xe6\x77\xba\x4e\x38\x24\xcb\xa9\x50\x61\x1a\xf8\xa8\xbf\xc8\x22\x1a\xf1\x05\xcb\xe8\x4f\x06\x65\xe9\x51\x7a\x9f\x75\x4c\x19\xb9\x57\x3e\x28\x24\xd5\x38\x88\x66\x02\x24\x59\xaa\xa2\x1b\x6f\x4e\x62\x77\x98\x55\xb9\xe0\xbe\x51\x1b\x39\x1c\x34\xc1\x7c\x84\x91\x09\xb4\x61\x09\x95\x37\xa5\xee\xbe\x02\x97\x61\x5a\xea\x5f\x53\x2f\x9d\xa3\xc9\x86\x9f\x56\xc8\x27\xcc\x82\x04\x74\xdc\x5c\x41\xc5\xd9\xbc\x10\x71\x7d\x7b\xd6\xf7\x4f\x93\xa2\x85\x96\x17\x4e\x43\x7b\x64\x49\xbf\x18\xfc\x49\xea\x4f\xe3\x2c\xfd\x19\x89\x59\x77\x4e\x68\x3c\x86\x3e\xc9\x07\x07\xe3\xa3\x74\x06\xa7\x87\xf2\xbf\xb2\xd0\xf4\xd0\x2f\xe4\xd9\xa3\x4f\xca\x15\x39\x1a\xeb\xb9\x5d\xa4\xc3\x91\x52\xda\x8b\xb4\x77\x2c\x9e\x4f\x8f\xc5\xe1\x21\x60\xe9\xf8\x50\x40\x54\xd3\x99\x4e\xba\xfa\x16\xe1\x85\x88\x19\x00\x70\xd9\xe9\xc4\x79\xba\x1c\xa2\x11\x80\xf9\x20\xa6\xcd\x29\x99\x32\x3e\x47\x42\x22\x45\x15\x38\x35\x66\x1b\x8e\xbe\x74\x23\xcf\x9d\x67\x25\xad\xbd\xd6\x5c\xac\x8a\xca\x55\xfd\x70\x85\x6f\x22\x88\x6a\x2f\xd5\xf2\x47\x90\x01\x98\x0d\xd1\x28\xcd\x41\xb2\xd0\xb7\x68\x0c\x78\x83\xf7\x18\x36\x9b\x59\x5f\xce\x86\x64\xcc\xb3\x61\x9c\x7b\x03\xcc\x87\x62\x04\x24\x53\x3d\x92\x5f\x17\xf6\xf6\xe3\x96\xa5\x8b\xee\x82\x2d\x0c\xdb\x36\x4f\x2b\x53\x76\x50\x9f\xd0\x39\x80\x8f\x3c\x6b\xf7\x4c\x4e\xf5\xb5\xc0\xf3\x08\xce\xef\x98\x77\x3d\x97\x3a\x6c\x56\xb8\x50\x2f\xdc\xad\x48\xa3\xb0\xa4\xd5\x3b\x6e\x4d\x48\xbe\xc8\xd0\x4d\xd2\xa2\x8c\xe2\xe3\xc8\x5f\x8f\x85\xbf\x0a\x72\x6e\x87\x42\xfb\x6c\x7e\xba\x67\x62\x3f\x7d\xd1\x89\xcd\xd5\x35\x16\x89\x11\xfc\x04\x99\x9c\x52\x3d\x6e\x9f\xbf\xf7\xbd\xd5\x73\x13\xf0\xc0\xf1\xf8\x99\xf6\x48\xb0\x5c\x64\xd3\x23\xc1\xb8\x75\x68\xa6\xf2\x1d\x9b\x60\x2f\x86\xa4\x4f\x9d\x6b\xd1\x33\x9a\xe4\x7b\xd0\x7c\xa5\x8a\x26\xd8\x11\x92\x12\x35\x75\x3a\xa2\xf6\xf6\x23\x5b\xac\x56\x71\x3d\x66\x59\x8d\x62\xc3\x35\xdf\x0d\x89\x35\xb3\x52\x63\x49\x54\x8c\x2d\x3d\xab\x92\xbc\xdc\x31\x1c\x5f\x96\x28\x59\x87\xaa\xb8\xa0\xae\x20\x9b\xfd\xf4\xaa\x86\x3b\xea\x03\xb9\xbb\xaf\x55\x1f\x68\xb4\xab\xbe\xc3\xd3\x5a\xfc\x81\x42\x0e\x2c\xfe\xeb\xc3\xaf\xe3\xff\x42\x24\x1c\x72\x40\xee\xda\x08\xde\x1d\x79\x40\x8f\x93\x22\x41\x3e\xe1\x23\xbd\xfc\x3a\xda\xa1\xf2\xcd\x1f\x0e\xad\x9f\xc2\x51\xae\x4d\x5f\x7c\x06\x12\xfa\xdc\x9d\x7d\xd0\x1b\x22\x82\x51\x7d\x8f\x44\x23\xeb\xf0\x51\xe1\x71\x5c\x08\x03\x7f\x73\xd6\x5f\xca\x1d\x79\x57\x70\x83\x4a\xd3\x26\xc6\xc1\x5d\xa1\x10\x1a\x3d\xb3\x51\x11\xee\x72\x27\xf1\x23\x09\xfc\x87\x8e\x6f\x80\xd1\x78\x16\x95\xc3\x92\xf8\x63\x7d\x60\x83\x7a\x30\x82\xff\xf0\x62\x0d\x3c\x83\x7d\x38\x34\x8f\x23\x1b\x64\xa0\xff\xef\xf0\xa9\xee\xb8\xfc\xa8\x90\xb8\x9a\x04\xf3\xac\x70\xfd\x48\x95\xfe\xdf\x0d\x87\x91\xbe\xf5\x18\xf9\x0a\x7e\x25\xdb\x1d\x98\x0d\x23\x11\xdc\x01\x34\xb0\x3b\xef\x54\x3e\xda\x6b\x10\x44\xf3\xbb\xf5\x8c\x6a\xbe\x8f\x16\x65\xda\xdf\xaf\x78\x9b\xdd\xbc\xc1\x56\xad\x5b\x20\x20\x8e\xd8\x27\xcc\xa7\x19\xbb\xd6\x82\x9e\x8e\xbb\x4f\xd6\xaa\xe7\xc2\xda\xb8\x8a\xfe\x26\xa8\x9f\x09\x28\x91\x9a\x8a\x22\xf3\x06\x51\x32\x57\x71\x2f\xde\xc8\x2d\x53\x53\xc5\x69\xbd\xc7\x06\x1a\x12\x5f\xd5\x56\x53\x17\xf8\xb8\xa5\x29\x70\xde\x25\xbb\x36\xfa\xbc\x5e\xec\x2c\xee\x8c\x95\x1f\xd2\xfa\xa9\x77\x36\x70\xba\x8a\x79\x66\xbe\x28\xcf\x44\xdd\xb4\x72\x18\xd5\xdc\x07\xf0\xde\x54\x24\x2f\xa3\x7d\xbd\xa1\x63\xbd\xa6\x6f\x38\x9b\xab\xfe\xd9\x2f\x02\x71\x71\x66\x70\x17\x1e\x5f\x99\xe9\xfc\x65\x11\x54\x72\x6d\x03\x7f\x23\xfd\x92\x0e\xa6\x59\x69\xff\x0e\x25\x68\x01\xcb\x21\xfb\xa0\xe8\x20\xae\xcc\x97\xda\xd6\x5d\xbb\x99\x53\xb3\x14\x11\x6c\x16\x1a\xd2\x51\x1a\x09\xb6\x1c\xcf\x22\x1b\xe5\x78\x0d\x0c\xb4\x14\x2c\x82\xca\x01\xc2\x1d\x6b\x50\x69\x16\xf6\x60\x0f\x04\xda\xe8\x2e\x8c\xc2\x24\x8d\xd0\x45\xce\x32\x15\x4f\x21\x50\x2c\xf3\x4e\x42\xf5\x8b\x28\x0f\x44\xf5\xc3\x05\x13\x82\xcd\xc3\xdf\xb8\x3e\x6c\x66\xce\xd6\xa8\x28\x02\x73\xdd\xe8\x34\xc7\x19\xd2\x99\x17\xd6\x97\xd6\x3a\x88\x35\x1a\x88\xc3\x68\xf1\xf9\xae\xca\x46\x3b\xb1\x4e\x37\xa1\xaa\x17\xb0\xb9\xc7\x9a\xe7\x5c\x0e\x95\xe0\xc9\x99\xaf\xc0\xa9\x1e\x52\xa7\x1f\xa8\x17\xad\x17\xac\x9f\xee\x1f\xd3\x9e\x0b\x5e\x6d\x7b\xbf\xae\xae\x4d\x04\x51\x6d\xc4\x28\xb0\x9a\x9c\x73\xa8\x47\x25\xf2\x59\x27\xff\xcb\x17\x6b\x3b\x15\xac\xae\x72\xa7\xd6\xce\xfb\x9a\x20\xcc\xde\x4d\x2b\xb8\xc5\xdd\xbc\x72\x40\x79\xd5\x9a\x0f\xdc\x5e\x13\x3a\x61\xd7\x5d\x8e\xff\xb5\xc4\xb9\x78\x51\x41\xd9\x03\xdc\x40\xe2\xc1\x72\xb1\x14\x2c\x1a\x45\x73\x1d\xa1\x98\x2d\x95\x86\xee\xff\x06\x85\x42\x2c\x0d\xac\x11\xd8\x09\x15\x38\x9d\x4e\x7c\x67\x1f\x35\xc0\x7a\x87\x02\x80\x40\xa2\xe2\x6c\xba\x3e\x85\x8a\xdc\x45\xb9\xe4\x0a\xdc\x37\xf9\x0e\x9f\x88\x14\x7b\xcb\xa9\x9c\xda\xcb\xed\xa9\x52\x61\x95\x32\x57\x63\xf3\x74\x3a\x3c\xfc\x51\xcb\x65\xca\x90\x78\xed\xbe\x0b\x7d\x91\xfb\x9c\xdb\xcc\xc6\xb8\xeb\xcb\xb9\xcc\x3d\x6b\x12\x0f\x91\xec\x1c\x29\xf5\x8d\x65\xd9\x4e\x87\xd5\x5e\xff\xc5\x28\x20\x63\x54\x76\xc9\xe7\x21\x48\x88\x87\x60\x00\xc6\x74\xb5\x42\xc0\x8f\x0b\xad\x32\x05\x8a\x7a\x0e\x19\x6a\x35\xb8\xbe\x1c\x2b\xf9\x2a\x88\xcc\x97\x3a\x33\x1e\x13\xc8\x8c\xc5\xcb\x3d\x46\x7a\x25\x37\xa7\x6f\x1c\xf2\x27\x97\x9c\x4c\xaa\xbc\xa1\xfe\x72\x74\x41\xe8\xd1\x02\x8d\xaf\x30\x7f\x32\x25\x9f\xf1\xe4\x48\x97\xbc\x9b\x2f\xbc\xc4\x54\xdb\x29\xdc\xcf\x17\xfa\x46\xaf\xb0\x12\x41\xa1\x77\xcc\x9f\x5b\x25\xa8\x32\x99\x35\xa1\x6d\xc4\x90\x8f\x0e\x68\xb7\x4c\xac\x9e\xfa\x0f\xab\x55\xbb\x0f\x69\xd7\x4f\xc3\x2e\xd7\xc7\x64\x2c\x24\xb4\x45\x3b\x9d\x98\x76\x6d\x22\xf6\xb4\xdd\x03\x70\x1d\x6f\x4a\xbb\x57\xf8\x06\xd2\x87\xa5\xa9\x0b\xde\x80\xc7\xe0\xd6\xbb\x0c\x57\x37\xee\x8f\x79\x11\x6e\x34\xcb\x66\xdb\x5e\x10\x6d\xa3\xec\xee\xab\x75\x61\xd9\x2b\x75\xd1\x4d\x20\x83\xc8\xf9\xf8\xa4\x18\xc6\x2c\x1d\xde\x5e\xe1\x9b\x24\xaa\xa8\xdc\xf5\xf0\x9b\xc6\x27\xb7\x8a\x9a\x26\x18\x1a\x85\x97\x6d\xd4\xd0\x49\x15\xd9\xb0\x80\x1a\xa0\x51\x51\x37\x81\x59\xc3\x04\x3f\xbe\xad\x84\xf1\x89\xe4\xe4\x22\xc3\x67\x92\x3e\x10\x7a\xf9\x56\xd6\xd7\xd6\x05\xc0\x01\xb5\x3c\x41\x18\x6e\x13\xa6\x2d\xaf\xcd\xd6\x2d\x14\x35\x8a\x10\x88\x26\x00\x53\x54\x77\x06\x97\x20\xf4\x80\x37\x83\x61\xcb\x36\x80\x28\x1d\xfb\xe6\x13\xa4\xef\xc3\xff\xa6\xa7\xe9\x57\x22\x66\x12\xd9\x28\xeb\x8b\x76\xaf\x04\x5a\x53\x0b\x06\xc1\x53\x9b\xa4\x50\xc1\x2e\x27\xd5\x7c\x84\x4c\x7f\x30\x83\xb7\x6f\x91\x7e\x6b\x87\x63\x5e\x97\x71\x5d\xb9\x51\x49\xbe\x27\x9f\x71\xa6\x1a\x07\xb1\xda\x71\xa0\x28\x46\xa0\xd3\xa1\x31\xf1\xf2\xf5\x33\x85\xfe\x68\x4c\x20\x02\x10\x17\xf1\xf6\x98\x6e\xee\x61\xb1\xbb\xf1\x5d\x3e\xc3\xd9\xf4\x48\x09\x31\x7b\x84\xf7\x6d\x23\x3c\x83\xa7\xac\x89\x4f\x13\xe3\xfd\x59\x90\x9d\x97\x83\x36\x88\xee\x74\xbe\x93\x3d\xc2\xfb\x8e\x10\xde\x02\xf3\x31\xa6\x02\x5d\x62\xf9\x75\x39\xa7\xf9\x1e\xf1\xfd\x8e\x88\xef\xf1\x8c\x1e\x0f\xe8\x26\xb1\x53\x9d\xb3\x1a\x4b\x87\x23\x88\xd2\x1e\xcc\xd3\xde\x71\xfe\x9c\x1f\xe7\x87\x87\x80\xe9\x1b\x62\x83\xd5\x54\xf2\x6f\x83\xd8\x08\x34\x1b\x4b\xbd\x2d\x00\x3c\x3c\x44\x3f\xa6\xd6\x67\xac\xd3\x89\x51\xda\x33\x26\x0f\xf6\xe4\xe4\x29\x5b\x87\x7f\x19\xec\xf7\x7a\x8f\x83\x81\x55\x43\x5f\x1c\x07\xf7\x7b\xbd\x2f\x86\x85\x25\xac\xef\x15\x0f\xab\x79\xfa\x92\x98\x58\x4f\xbc\xc5\xc5\x6e\xab\x0d\xf1\xa8\x6b\x36\x68\x00\x23\x9b\x4a\xb9\x36\x17\x99\x66\x8c\xf1\x98\x74\x3f\x3f\xe9\xf7\x7a\xff\x43\x84\x70\xb5\xc3\xa1\x06\x61\xdf\x7e\x4e\x72\x78\x93\x90\xee\x4d\xf1\x15\x50\x77\xdd\x96\x7b\xef\x66\xf0\x45\xdd\x0c\xac\x77\x2d\xa4\xa9\x9c\xaa\x03\x9e\x96\x5e\xda\xca\x39\xba\x0c\x5a\x4d\x07\x36\x99\x91\x0d\xe5\x8c\xef\x8e\x48\x7a\xaf\xb9\xfd\xe3\x86\x09\xc6\xbe\x45\x45\x97\xe4\xaf\x09\x17\x37\x92\x4c\x56\x3f\xb0\x6b\x6a\x7e\x61\x7d\x68\xf1\x75\x37\x1f\xcf\xb0\x6c\xc6\x33\x0a\xa8\x54\x82\xd8\x0b\x6a\x0d\x23\x6b\x0f\x4c\xe8\x65\xeb\x13\x41\xad\xba\x3d\xe6\x3d\x0e\x13\x6b\x98\x8a\xed\xae\x2b\xbf\x78\x68\xa9\x3a\xa7\x56\xc9\xed\x5f\x62\x25\x87\xee\x13\x7b\x53\x72\x2c\xd8\x22\xe9\x1d\x67\x78\x2a\x92\xde\x71\xe4\xc8\xd9\x61\x5a\xbd\x8a\x79\x75\x76\x06\x62\xdc\xfd\x0c\x71\xf7\x06\x40\x72\x98\x6a\x6c\x9f\x44\x87\xfc\x30\x5a\x7c\x3e\x36\x34\x2c\x3a\xa4\xea\x31\x2a\xca\x4e\x55\x51\xd2\xe3\xf6\xec\xdf\x9a\x1d\xdb\x78\x75\xbd\x4b\xe3\xaf\x77\x16\x2a\x37\xc4\xa1\x78\x84\x24\xc6\x3a\x99\x25\xee\x8e\xf3\xfc\xde\x92\x3d\x50\x18\xab\x92\x61\x74\x8d\x2f\xae\x88\xe4\x8c\x7f\xb5\x3f\xe6\x72\x77\xfe\xcc\x7e\x8b\x60\x74\x1a\x8d\x20\x4f\x87\xd1\x91\x2e\x75\x14\xc1\xe8\x68\x9e\xeb\x3f\xec\x37\xf5\x97\x1d\x45\x23\x48\xd3\x50\xd4\x42\x1b\xd3\xb5\xd3\x71\xd1\x5d\xed\x0f\x73\xf7\xb4\xfe\x8b\x1e\x73\x25\x16\x90\xe4\x35\x35\x6b\x47\x06\xb5\xa8\x67\x73\x9c\x91\xdf\x70\x8c\x41\x82\x0f\xc8\x34\x66\x2d\xc9\x30\xbb\x90\x20\x8e\x29\x44\xe9\x9a\x68\x69\x31\x03\x86\x51\x74\x9c\x7b\x6e\x39\xf7\x65\x2a\x86\xf9\xe8\x10\x49\xc0\xcb\x0a\x60\x32\xe0\xf2\x0b\x4e\x96\x2a\x06\x5d\x3d\x7f\xc9\x1d\x86\x08\x1b\xe0\x81\xfb\x6c\x12\x1e\xbe\xab\x5c\x7f\xac\x2d\x79\x8a\xfc\xb7\x1f\xe5\x0f\x79\x3a\x9f\xbe\x4e\xf3\xe0\x87\x67\xaf\xd3\x65\x08\xce\xab\xb3\xb3\x34\x5b\x03\x4a\x7e\x1b\xaf\x81\x26\xbf\x4d\xfd\x6f\xf2\x85\xf7\x98\xe2\x6e\xbe\x5c\xa8\x79\x7b\xfa\xda\x7b\x78\xf6\x3a\x10\x20\xcf\x3b\x07\xc0\xa4\xfc\x96\xad\x44\x00\x52\x5d\xa0\x6e\x76\xe1\x17\x21\x69\xbb\x1d\x2c\xb4\xc0\x3c\x5f\x60\x95\x03\xff\x94\x93\x4b\x42\x23\xc9\x07\x79\x1d\x21\x07\x7a\x8b\xb6\xdb\xb4\xdc\xbc\xc8\xb2\xc9\xd8\xbf\x65\xd6\x77\xaa\xf6\x78\xab\xfb\x65\xae\xaf\x59\x5d\xc5\xbc\x56\x71\x48\x47\xe9\x44\xdd\x9b\x94\x65\x96\x81\x32\xb3\x5a\x99\xcc\x17\x95\x22\x85\x2d\xfd\x7c\xe7\x8b\xcf\x0a\x8f\x46\xc0\xf9\x0a\xaa\x77\x91\x07\x61\x5c\x81\x50\x66\x88\x82\x91\x57\x6d\xa2\x0a\xc1\xa8\x52\x73\xba\x49\xcd\x59\xa8\xe6\xa4\x52\x73\x8e\x04\x27\x9f\xe3\x3e\x6c\xf5\xd4\xbf\x3e\xac\xe4\x6c\x87\xad\x4a\xf7\x81\x0f\x68\x16\x00\xf4\x6c\x52\x82\x72\x00\x9b\x8f\x77\x34\xa1\x4b\xc9\x86\x2a\xfb\x92\x19\x23\x6c\x32\x58\x26\x6c\x90\x27\xe8\xc0\xdf\xc2\x0b\x63\x46\x4c\x06\xd3\x84\x0d\xc6\x49\x76\x50\xdb\xef\xf3\x10\xe9\x99\x2f\x58\x2e\xc5\xfe\x40\x30\x8e\x8c\xe5\x4b\x8e\x8f\x50\xc3\x1b\xf3\xf1\x8c\x12\xcf\xcf\x33\x86\x26\x98\x43\x9e\xde\xbe\x78\xf5\xf1\xed\xe9\x3b\x95\xd5\xbb\x38\x30\xfd\x9f\x89\x79\x76\x81\x78\xfe\xe4\x0a\xdf\x5c\x33\x3e\xc9\xeb\xbd\x26\xb4\x25\x4c\x36\x31\x7e\x33\xe0\xa9\x50\x37\xc4\x84\xbb\x19\xb8\x17\x02\xb0\x46\x69\x9c\x2d\x85\x72\x72\xde\xaa\x4d\x15\x37\xae\xd1\xea\xc6\xb0\x80\x0d\x7c\xc4\xbb\x7a\xfc\xf7\x04\xd4\xbc\x63\x3d\x2f\xb1\x38\x52\xf3\xae\xa3\xfc\x1c\x21\x3a\x39\x5a\xe6\xf8\x68\x82\xf1\xe2\x48\x65\x3c\x3d\x9a\x72\x36\x3f\x52\xd6\x7b\x8f\x9d\x41\x45\x7b\x6e\xf0\x14\x0f\x7b\x23\x7d\xf7\xfd\x34\x4d\x5d\xa4\xa0\x81\x48\xf1\xb0\x3f\x4a\x62\xaa\xfe\x42\xf9\xf8\xd4\xa5\x3c\xb8\x1d\x2f\x39\xc7\x54\xfc\x4d\x35\xc2\x55\x8a\xd5\x9b\x44\xc0\x65\x8e\x5f\x63\xbc\x38\x91\x43\x4b\x68\x30\x98\x6b\x73\xba\xec\x5f\xb4\x58\x60\xba\x71\x96\xa2\x90\x48\xb9\x69\x5c\x31\x22\xc5\x35\x15\x5a\x8c\xa9\xff\x69\x35\xcc\xd8\xe6\xd1\x9f\xf2\x05\xc7\x68\xf2\xbb\x06\x7e\xda\x31\xa6\xda\x03\x07\xfe\x87\x08\x7b\x55\xea\x28\xef\x8b\x1a\x4d\xca\x80\x66\xfc\xa1\x51\xa3\x79\x33\xac\x19\xbf\x33\x6a\x34\x2f\x63\x9a\xf1\x3b\xa3\x46\xf3\xed\x23\x99\x71\x30\xd0\x63\x73\x51\xa3\x2b\x4c\xf6\xe3\x04\x05\x63\x76\xfe\x77\x0d\x76\x1e\x0a\xf4\x56\xf8\x0c\x97\x0b\xcc\x9e\xf2\x72\x7d\x7a\x4e\x1b\x46\xd3\xe1\xc8\x12\xf3\x32\xb7\x56\x4c\xc0\x4e\x4a\x19\x8d\x87\x14\xff\x1c\xa0\x93\x79\x30\xf8\x14\xf2\x35\x68\xf9\x56\x68\x6f\x3c\x5b\xd2\xab\x7d\x3c\xc5\x7d\x3c\xc5\x7d\x3c\xc5\x3f\x0a\x61\xf9\x23\xc6\x5c\x56\x68\x22\x65\xeb\x9c\x0f\xb4\x73\x29\xfa\x0c\x89\xfe\x39\xc6\x24\xf3\x23\x83\x78\xf9\x9c\x6b\x1e\xe1\x2c\xa5\x31\x87\x3d\x00\x51\xda\x2b\x03\x32\x5b\xe4\x21\x80\xba\x2f\xb3\x9a\x14\x00\xdb\x68\xb5\x62\xcf\xfb\x66\xc1\x8d\x73\xaa\x46\x8c\x3d\xb8\x4c\x8f\xfa\x30\xf3\xa6\x81\xc4\xe8\x09\x03\xe0\x38\x7f\x8e\x8e\x41\x36\x3c\x3c\x5c\x8e\x52\x61\x36\x78\x0e\xf3\xc3\x94\x39\x9d\x75\x56\x09\x5d\x52\x45\xaf\x71\x43\x41\xae\xc2\x4f\x3e\x75\x95\x59\xac\xa2\x50\xf2\x61\x7f\x04\x0a\x70\xaf\x73\xd8\x7a\x64\xbc\x5d\xc6\xbc\x3d\x3a\xde\xa3\xe3\x3d\x3a\xfe\xe6\xd1\xb1\x2f\x51\x34\x83\xd4\x9b\x5d\x59\x3d\xc5\x1c\x0c\x78\x32\xe4\x23\xd0\x9d\x92\x4c\xd4\x51\x54\x25\xa4\x6d\x99\xe5\x12\x2b\x1b\xe8\x5d\x90\xbf\x46\x4b\x5f\x38\xf2\xec\xdd\x68\x70\xb9\x5b\x94\xef\xbd\x2c\xbe\x97\xc5\xf7\xb2\xf8\xf7\x2f\x8b\x2b\x49\x1c\x92\x94\x4a\xbe\x8b\xa5\xd4\xa5\xd1\x28\x53\x6e\x68\x49\xdc\x3a\x98\xc6\x6c\x77\xdc\xb7\x14\xf8\xf1\xe4\x71\x46\x05\x22\x75\x53\xc4\xb5\xd5\x8c\x41\x0c\x1d\x67\xcb\xc9\xbd\x17\x7b\x75\x92\xb6\xe7\x17\xbf\x05\x7e\x91\xee\x8e\xb1\x76\xc0\x55\x3e\xbf\xe8\xa3\xab\x0d\xf9\xc5\x9d\x10\x57\x75\xa4\xdf\x3a\xbf\x48\x1f\x0d\xdb\x12\x9d\xb7\xd0\x19\xe5\x35\x52\xb9\xbd\x88\x39\x80\x3e\x02\x65\xfe\xc1\x6f\xb7\x03\xc2\x76\xf5\x15\x06\x03\x1c\xb2\x95\xe5\xbe\x61\x1b\x89\xb9\x5c\x36\x00\xdb\x3d\x90\x68\x5a\xb3\x23\xaa\xd5\xa8\x6f\x9d\x9a\x61\x43\xe1\x5c\x48\xda\x50\x11\xce\x85\x24\x12\xe2\xa1\xc2\xf9\x04\x8f\xf7\x82\xf9\xf7\x8c\x68\xf7\x82\xf9\xb7\x85\x68\x7f\x37\xc1\xfc\x69\x2d\xef\x8c\xaf\xb7\x3c\x99\x2f\xc4\x4d\x4c\x64\x07\x48\x4a\x21\xb5\x7e\xe2\x90\xa4\xef\x94\xf1\x6c\x4c\x00\x6c\x93\xfc\x1d\x7a\x17\x13\xb7\x20\x2e\x39\x8d\x72\xcd\x48\xfb\x00\x92\xa3\x1d\x13\x0d\x8f\x1f\x4d\x4c\x9f\x70\xb6\xd8\x63\xc4\x3d\x46\xdc\x63\xc4\x3d\x46\xac\x63\x44\x2b\x85\xaf\x56\x31\x49\x87\x23\x00\x6d\xa2\x4b\xba\x9b\xa7\x02\x67\x8b\x47\xc3\x6b\x98\x0a\xbe\x85\x11\xf6\x1e\xb5\xed\x51\xdb\x1e\xb5\x7d\xb7\xa8\xcd\xbf\x85\x69\xf1\x81\xd9\x2a\x06\x47\xc4\x1c\x24\x7c\x17\x84\x76\x85\x6f\xf2\x47\x43\x68\xfa\x8e\xe8\xe8\xe2\x66\x3b\xa5\x62\xae\x8d\x44\xf7\x4a\xc5\xef\x10\xfd\xed\x95\x8a\xdf\x16\xfa\x7b\x54\xa5\x62\xc5\xde\x11\x3e\x03\x90\xa5\x44\xf2\x76\x28\x25\xc3\xfe\x08\xe6\x29\x19\x3e\xb5\x55\x6b\x3a\xc4\xdc\x05\xf0\xb2\x6f\x10\x50\x91\xe0\x11\x44\x4e\x14\xae\xca\xca\x0c\xac\x56\xd5\x37\x39\x18\x0c\x95\xed\x77\xfd\x06\x1b\x81\x41\xc0\x8b\x16\x85\xbc\x71\x51\x5c\x06\xb6\xc7\x90\x01\x10\x72\xcb\x0d\xe9\x4c\x6d\x05\x88\x82\x55\xac\xd2\xd4\x16\x2b\x60\x6e\xef\xe0\xe9\x6e\x6a\x4f\x5d\xfb\xe5\xcd\xba\x74\xf6\x3b\xe6\x84\xbf\x8f\x1c\xec\xd9\xdb\xef\x19\xbf\xef\xd9\xdb\x6f\x0b\xbf\xff\xe1\x24\xf7\x2a\x46\xa6\x60\xb5\x6a\x13\x89\x95\x49\x89\xed\x76\x47\x76\x8f\xc8\xf9\xd2\x49\x8d\xef\xdd\xe3\xba\x3d\xae\xdb\xe3\xba\x3f\x25\xae\x7b\x56\xc3\x75\x90\xa5\xbc\xe4\x64\x1b\x28\x4f\xa2\x3b\x7b\x8f\xce\x40\x57\xe2\x92\x97\x37\x31\x85\x64\x47\xcc\x27\xab\x3f\x1e\xe6\xcb\xe4\xb2\x6f\xec\xc5\xbb\xc7\x7c\x7b\xcc\xb7\xc7\x7c\xdf\x19\xe6\xab\xe1\xb5\xbb\x4d\x7a\xbc\xf0\x77\x36\x30\x01\x8d\x05\x00\x05\x80\xc3\x11\x48\xf0\x4e\x38\x4f\x23\xa1\xed\x90\x5e\xc8\x94\x9d\xc6\x4e\x15\x5b\xb3\xe1\xd9\x12\x2b\x72\x36\x3f\xda\xdf\xef\xec\x51\xe3\x1e\x35\xfe\xd9\x50\xe3\x97\xca\xb3\xb4\x85\x83\x60\xf8\xea\x48\xee\x82\x13\xff\xfa\xa8\x82\xcf\x36\x8b\xf1\x61\xff\x5e\x72\xb6\x5c\xec\x05\xdc\x3d\x2e\xdb\xe3\xb2\x3f\x13\x2e\xdb\x54\x99\x07\x59\x7a\x5b\x94\x1e\x31\x53\xc6\x4f\xd0\x78\x16\x32\x99\xf6\x2f\x35\x28\x80\x3c\x65\x43\x31\x3a\xa8\x3b\x1d\xae\x56\xb1\x3a\xa4\xf2\x63\xca\x01\x34\x67\x4b\x39\x16\x42\xb6\x0b\x8a\x55\x08\xec\x11\xc5\xe2\x19\xca\x8f\x24\x86\xd8\xf0\x26\xdc\xfe\xd5\x55\x36\xbe\x31\xbf\xa3\xe4\xae\xd1\x99\x1a\x41\xc4\x21\x5d\x87\xdb\x89\x5a\x43\x13\xe7\x12\xd9\xb3\x69\xb6\xdc\x8f\x4f\x3b\x1d\x97\x7e\xdc\x7d\x1c\x3e\x1d\x75\x3a\xfe\xd3\x01\x55\x39\x85\x86\x23\x60\xee\xa0\xd4\x55\x99\x9c\x06\x20\xa1\x43\x02\x20\x4a\xdb\xd5\xbc\xba\x0c\x62\x48\x9c\xd9\x3d\x2a\x2f\x02\xed\xf5\x1d\xdb\x49\x71\x32\x43\xf9\x3b\xfc\x59\x6c\x77\x3d\x16\xd8\xe2\x71\x0f\xd2\xb2\xb3\x65\xb4\x5a\x12\x8b\xae\x1f\x50\x0a\x8a\xae\x5a\x11\x28\xba\x7e\x40\xa9\x9a\xdc\xb1\xdd\x95\x9b\xdc\x76\x0b\x8e\x3f\x11\xb6\xdc\xd4\xb3\xcb\xfe\x2d\xab\xfd\xe9\xb7\x9f\x9d\x8a\xdf\x63\x0b\xbe\x37\x6d\x7f\xd3\xdb\x90\xd0\xbd\x0b\xcb\x9e\x53\xdc\x73\x8a\x7b\x4e\xf1\x51\x5c\x58\x0e\x77\x92\xba\x09\x7d\x3c\x17\x16\x42\x05\xe6\x39\xde\x2d\xe4\xce\x83\x91\xe2\x57\x70\x95\x0f\xa3\xdd\x3d\xf6\x58\x87\x3d\xf6\xb8\x63\x6b\xdc\xd1\x08\x80\xd8\xe2\xdd\x39\x5a\xdc\x19\x82\xa6\xbc\x7a\x48\x86\xa3\x02\x80\xee\x82\x2d\xe2\x70\xf0\x1a\xdb\x57\x91\xf6\x8e\xc5\x73\x4b\x7f\x8f\xc5\xe1\x61\xf9\x8d\x4a\xaa\x2f\x11\x97\x90\x22\x6e\xef\x98\x3d\x27\xb6\x1c\x3b\x3c\x04\x92\xb6\x0e\xd9\x28\x4d\x53\x0c\x6e\x25\xcd\x3e\xb8\xe0\x18\x5d\x15\xf2\x24\xf4\xbd\x2d\xd6\xee\x1b\xc2\x2b\x31\xcf\x4e\x8c\xa1\xc3\x1f\x8f\x88\xb1\x3e\xb1\xab\x47\x09\x8d\xb3\x47\x57\x7b\x74\xf5\x2d\xa1\xab\x9d\x8e\xaf\x3c\x4c\xeb\x44\x3a\xab\xeb\xff\x70\xf6\xb7\xf7\x5d\x94\x65\x07\x4d\x1b\x69\x8d\x10\x15\x2a\x52\x71\x68\xb8\x8b\x43\x03\x51\xca\x34\x96\xab\x9b\x97\x58\xb3\xe8\x81\xb7\x92\x9f\x54\xb2\x68\x74\x0f\x1e\x15\xfc\xe6\xad\xea\x71\x8c\xa1\x49\x69\x7c\x50\x5a\xb9\xfb\xe6\xca\x6b\x2b\x22\x5d\xb1\xf8\x2a\x86\xc5\xff\xcd\xc8\xde\xe0\x64\x2f\x5f\x7e\x5f\x28\x77\x2f\x5f\x7e\x1d\x87\xe0\x2a\x3a\xa4\xa5\xb4\x19\xc1\x08\x40\xa2\x93\xbf\xef\x66\x64\x2c\xab\x3e\x1a\x43\x76\x85\x6f\xf6\xa6\x24\x7b\xa4\xb7\x47\x7a\x7b\xa4\x17\xb6\xf7\x90\x08\xe2\xdb\xf0\x13\x9e\xa3\xbd\x2d\xc9\x1e\x99\xed\x91\xd9\x1e\x99\x6d\xe1\x18\xa6\x5c\x75\xfd\x38\x2f\x77\xcb\xb0\xd6\xc4\xa4\x00\xbb\x69\xdc\xe6\xe8\x31\xcd\x45\xe6\x68\x1f\xe1\x6a\x8f\x0e\xf7\xe8\x70\x8f\x0e\xb7\x41\x87\x1a\x07\xee\x26\xbb\xce\xd1\xe3\x05\xba\xda\xc2\x10\x4e\x5b\x18\x5d\x62\x71\x44\xe8\x04\x7f\x7e\x14\x13\xa3\x75\x08\xd6\x04\xa0\xd5\x67\x76\x57\x03\x23\x6e\x6c\x19\x81\x99\xda\x6a\x28\x08\x0e\xb1\xce\x9d\x6f\xd1\xd9\x51\x5f\x1e\xc7\x76\xfd\x8a\xdc\x45\x95\x4f\xd3\x94\xb9\x8c\xe8\x2f\x62\x0e\xba\x7a\x9f\xbf\x10\x31\x39\xec\xef\xb4\x13\xe4\xea\x3c\xc0\x73\xc6\x59\x1b\xf1\x90\xb5\x11\xdd\xc9\xda\x68\xcb\xed\xc5\x76\x8a\x0f\xd9\x24\x9d\xe0\xb6\xd8\x69\x02\x19\x5b\xa4\x22\x3c\x81\x3c\x38\x81\xc2\x1f\x2c\xdf\x6a\xb0\x7a\xb9\x8f\xd0\x3e\x79\xcf\x9e\x5f\xd8\xf3\x0b\x7f\x4e\x7e\xc1\x6c\xa5\x7a\x54\x75\x77\x66\xeb\xb9\xcf\x2c\xb5\x10\x1e\xb5\xc0\x3b\xd1\x0a\x5b\xfd\x81\xf4\xa2\x9e\xd7\x8c\xae\xcd\x6b\xb6\x1d\x25\x60\x0b\xd9\x0a\xca\xf6\xb8\x71\x8f\x1b\xf7\xb8\xf1\x4f\x89\x1b\xd7\xe9\xc9\x03\xf1\xdc\xf8\x80\x07\x02\xaf\xb5\xf0\x4e\x4c\xa0\x45\x3d\x0f\x14\xaa\x0e\x36\xc6\x75\x0b\xb2\x08\xa5\xd0\xdf\xc4\xd3\x83\x2c\xf0\x46\x82\x55\x2d\x65\xfc\x7d\x82\xd3\x97\xf2\x7c\x15\x5d\xd9\xc3\x03\x27\x4f\xc8\x93\x39\x74\x4f\x23\x89\x9e\xbe\x8e\x9c\xaa\x27\x66\xbb\xd0\xa5\x0b\xce\xe6\x24\xc7\xdb\x04\x2f\x5d\x93\x4a\x45\x05\x4c\x10\x33\x4c\xd5\x25\x4e\x25\x1f\x95\x67\xba\x53\x17\x43\x7b\x41\x31\xb4\x37\x1a\xf8\x0f\xc9\xd0\x9d\x16\x0f\x89\x94\x16\x90\x75\xa8\xb5\xb3\x07\x49\xda\x3b\x26\xcf\xc5\x31\x51\xe7\x8f\x8c\xbc\x96\x88\x83\x1c\x8e\xf6\x00\x89\x3b\x58\xbd\x34\x4d\xc9\x40\x54\x13\x66\x51\x35\x56\x9d\xd7\xc5\xd8\x7f\xef\x74\xfe\xb4\x89\xd5\x1b\xd3\x72\xca\x21\x56\xbb\xe8\xd1\x74\x1c\x5b\x7a\x5d\x7d\x6f\x7a\x0e\x18\xd6\x6c\xdc\xa9\xcc\xd0\xfb\x61\x8d\x32\xe3\x68\x37\x65\x86\x5d\x86\x6f\x5a\xa1\xf1\xaf\x25\x5e\x7e\x7d\x44\xf4\x35\x51\x0a\xbf\x1b\xa5\x70\x8b\x52\xf8\x1a\x94\xa2\xcd\x06\xbd\x71\xdc\x8b\x33\xe3\xa6\x4d\x22\xaf\x63\x9a\x02\x80\xa4\xf9\xf2\x1e\xfc\xc5\x2b\xf8\x8b\x07\xf0\x17\xfb\x12\xf8\x4b\xad\xb9\x42\x5b\x1b\x47\x83\xe0\xbb\xc7\x73\xe0\x88\x5e\x6e\xb7\xc3\x54\x6e\x56\x4e\xf2\x26\x1f\xb0\x8f\xd3\xfd\x1d\xc8\x54\xfb\x38\xdd\xdf\x96\x4c\xf5\x7b\xc4\xe9\xb6\x51\xba\xcb\x6c\xa8\xc3\xfe\x08\xa2\x94\x0e\x9f\x8e\x0e\x50\x1a\x5d\x30\x96\x61\x24\x05\x2c\x83\xae\xe4\xde\x39\x9d\xaa\xc8\xdc\xc8\x64\x31\x1d\x2a\x0f\x40\xf2\x9c\x01\xdb\xad\x65\x8a\x06\xa2\x9b\x09\x9c\xc8\xff\x61\x96\x92\xe3\x65\x9c\x41\x06\x8e\xb3\xc3\x43\x90\xeb\xa3\x95\xa9\x5d\x40\x7e\x2c\xab\x8d\x55\xb5\x4b\x55\xed\x52\xc0\x69\x4a\x8e\xc7\xf1\x54\x56\x9b\x1e\x1d\xd9\x6a\xd3\xd2\xeb\x39\x4d\x53\xd6\xe9\xa0\x4e\xc7\x7c\x62\x00\xe6\xbb\xe0\x69\x85\x39\x1f\x2d\x84\xb6\xa6\x48\x7b\x75\xd6\xf7\x8c\x7a\xf7\xea\xac\x6f\x0b\xf5\x7e\x4b\x61\x65\x99\xe5\x69\x77\x8d\x26\xab\xab\x3f\x9a\x14\xcd\xb1\xba\xdd\xdc\x67\x90\xd9\xa3\xc7\x3d\x67\xfa\x6d\xa2\xc7\xef\x2a\x83\x4c\xbe\x5a\xc5\xb9\xb2\x37\x7d\x48\x92\x98\xf6\x46\x49\x62\xda\xbb\x64\x89\xb9\x23\x49\xcc\x6e\xe8\x5e\x56\x79\xc4\x1c\x31\x1c\x2f\xf0\xde\x96\xe5\xfb\xc6\xe0\x7b\x06\xf7\xdb\xc2\xe0\x7f\x34\xdb\xd7\x88\xaa\x68\x40\x51\xbb\xa6\x57\x90\x2c\x2e\x19\x25\x7a\x41\xb5\x52\x56\x76\x19\xde\xea\xde\x25\xb4\x00\x35\x27\x01\x87\x31\xc8\x8e\x71\x38\x34\xba\x7a\x44\x76\xf8\x13\xe6\xf9\x5e\xfe\xdf\xa3\xc7\x3d\x7a\xdc\xa3\xc7\x8a\xdb\x67\x95\x75\xe5\x60\xe0\xdd\xa2\xda\xb8\x49\x5d\x83\x3f\x62\x90\x0c\xf9\x68\x37\x7c\xa7\x00\x3c\x1a\xc2\xcb\x67\xcb\xe9\x34\xdb\x23\xbc\x3d\xc2\xdb\x23\xbc\x3f\x27\xc2\x93\x2d\x29\x08\x50\x4a\xf5\x31\x4e\xb1\x43\x67\xc0\x34\xa3\x5a\x11\xa9\x2f\x7c\x57\x19\x43\x01\x3a\x1d\xb1\x5a\xfd\x8c\xc4\xac\xcb\x11\x9d\xb0\xf9\x31\xf9\xb1\x7f\x0c\x78\xaa\x5e\x4d\x33\x26\x01\xc4\xe0\x7f\x90\xa3\x23\xc9\x72\xe2\x21\x19\x41\xf9\x9f\xea\x17\x94\xff\xa5\xd4\x99\x05\xec\x82\x37\x0d\x1e\xfb\x42\x66\xd2\x5e\xdc\x27\xcf\x23\xcc\x05\xc2\x64\x9d\x4e\xcc\x52\x02\x49\x23\xf1\xad\x9e\x7c\x06\x06\x34\x66\x90\x80\x64\xc8\x46\x0f\xb1\x4b\x51\x0b\xf1\x18\x21\xe1\x88\x8b\xd9\xc6\xd4\xff\x74\xd7\x88\x64\xf9\x82\x63\x34\xf9\x5d\x8f\xce\x8e\x54\xe9\x81\x03\xff\x43\x20\x8e\x92\x32\x98\x98\x7e\x6b\x49\x02\xd9\x5d\xc9\x6b\x64\xc4\xed\x55\xbd\x30\xa4\xe7\x1d\x54\xc8\x41\xf2\x05\xb4\xbb\x03\x3d\xb6\x44\x9f\xcd\xa2\xa2\xbe\x7c\x24\xb4\xca\xbe\x4a\x4c\x45\x07\x1e\xd5\xf4\xb0\x25\x03\x0a\x59\x4a\xaa\xc1\xe9\xd8\x6a\x15\x33\xa5\x50\x8d\x69\xca\x4c\x49\x2b\xbc\x43\x11\x93\xdd\xe4\x72\x05\x26\x45\x61\x6c\x9b\x07\xb1\x2d\xf2\xf1\x60\xbe\x1d\x1e\x64\xbc\x7e\x47\xb5\xe7\x52\xf7\x5c\xea\x9e\x4b\xfd\xae\xb9\xd4\xaf\x92\xd8\x0b\x7f\x16\x98\x4e\xe2\x5b\x89\x6d\x96\x02\x27\x4d\x16\xd0\xf2\xbf\x4a\x37\xaa\x91\x29\x24\xa9\x88\x79\x45\x1f\x10\xaf\xe7\x86\x09\x58\xad\xaa\x0c\x21\x01\xea\x8c\xa6\xc4\x72\x8a\x39\x16\xb1\x98\x91\x1c\x46\x6a\x25\x22\x48\x9b\x5f\x24\xd2\x93\xa3\xce\x23\xc8\x4b\x0e\x53\x1b\x1b\x70\x77\x97\x56\x9b\x1d\x5d\x75\xcc\xa8\xc0\x54\x44\x50\xe2\xfd\xa0\x23\xce\x26\x95\x75\x19\x33\x51\x93\xae\xec\x4f\x6c\xfb\xcb\x01\x48\x1e\x0a\xc3\x1b\x21\x00\x50\x56\xec\x9a\x7a\x45\xb1\xbb\xa5\xad\x40\xbb\x45\x51\xde\x13\x8a\x3d\xa1\xd8\x13\x8a\x6f\x92\x50\x6c\x1b\xda\xc5\x0f\x6a\x65\x38\x67\xb8\xdb\xf5\xbd\x44\x36\x8f\xa6\xab\x15\xec\xf2\x32\xdb\xd1\x05\x51\xd7\xfd\x63\x3b\x21\xea\x3e\xfe\x0e\x6e\x88\x76\x72\xf6\xa1\xf7\xff\x8c\xb8\x75\x8f\x59\xb7\xcf\x14\xd2\xb4\x8b\x35\x5b\xa1\x0c\x31\xe1\xcd\xa9\x76\x7b\x2b\x2d\xa7\x88\x71\x54\x6c\xe6\x70\xb3\xce\x80\xac\xab\xbc\x34\x4f\xa7\xb2\x2d\x9e\x56\x77\xb3\x6e\xe0\xa8\x9f\xea\x21\x1f\xca\x1f\x78\xd0\x4b\xc4\x61\xbf\x88\x99\x75\x7f\x13\xb5\xf8\xfc\xb9\x6e\x18\xb2\x21\x1f\x81\x22\xf8\xa9\x8d\x77\x73\x25\xd3\xf8\xe3\xd1\xe8\xc0\x92\xd6\xf0\xff\x5e\x2b\xbc\xd7\x0a\xef\xb5\xc2\x7b\xad\xf0\x3a\xad\xb0\x55\x59\xa8\xbc\x9b\x72\x05\xc6\x48\x54\x55\xc0\x81\x84\x4d\x15\x4f\x5c\xee\xe1\x63\x89\x76\x77\xb4\xe6\x52\x98\xeb\xd1\xb4\xc6\xaa\xe9\x7d\x08\xff\xbd\x2e\xe0\xfb\xe2\x57\xf7\xba\x80\x47\x57\x1a\xdf\x6d\x2f\x10\xce\x0e\xa0\xb1\x8f\xce\x0f\x00\x76\x57\x67\x5e\x13\x31\x63\xcb\xed\xa2\xb9\x12\x3a\xce\x96\x13\xdc\x88\x48\xb2\x77\xcf\xfa\x0e\x30\xde\xde\x3d\xeb\xdb\xc2\x78\x8f\xea\x9e\x55\xb2\x6c\xed\x76\xdd\x60\xb5\xd3\x89\xeb\x59\x3b\xe5\x26\xd0\x8d\x0f\x78\x33\x18\x8b\x4a\x05\xdf\x40\x0a\xeb\x22\xc3\x94\xe6\xb0\x50\x4a\x8d\x14\x62\x30\xe0\x09\x37\xec\x66\x4c\x41\x01\xe0\x70\x04\xfc\xe0\x43\x06\xb7\xc9\xa3\xbf\x0b\xde\x36\xd5\x1f\x9c\xb8\x9d\x57\x42\x63\x92\x58\x0c\x7b\x23\x28\x9a\xa1\x31\x37\x73\xb4\x32\xe1\xa5\xb6\xd2\xce\xa2\xc5\x02\xd3\xc9\x26\x25\xc7\xb3\x25\xbd\xda\xa8\x20\x9b\x2f\xd0\x58\x6c\x5a\x74\x29\xee\x54\x0e\x97\x45\xa9\x40\x84\x6e\x34\xa8\x09\x1e\x6f\x54\x8c\xb3\xc5\x26\xe5\xb4\x84\xa2\xac\x40\x36\x2d\xbc\x59\x49\x3a\xd9\x14\x68\x26\x71\x0b\xdd\xa4\xe8\x25\x67\xcb\xc5\x86\x60\x67\x28\x3f\xd2\x01\xdb\x37\x2b\x5b\x06\x3e\xdb\x24\xa9\xec\x46\x6b\xe0\x65\xcb\xde\x3c\x51\xed\xa6\x69\x23\x37\x4f\x4f\xb4\x61\xda\x8e\x4d\xe3\xdf\x6f\x15\xdb\x7b\x9b\x58\xb7\x5b\xc6\x8a\x7c\x78\x80\xc8\x66\xcc\xbb\x8d\x63\x9a\x6d\x1c\x9a\x6a\xf3\xd8\x28\x5b\x45\x15\xd8\xdc\x23\x75\x0b\xef\xac\x2d\xfc\x1a\x36\x36\xb2\xdd\xc2\x0a\x6d\x53\x23\x84\xad\xaf\xf4\xbe\xc4\x3d\x5e\x4d\x4b\xbc\xb9\x84\xd1\xb8\xe8\x83\x14\x12\xc8\x20\x82\x39\x5c\xc2\x0c\x8e\xe1\x14\x4e\xe0\x0c\x2e\xe0\x1c\x7e\x82\x37\xf0\x12\x5e\xc0\x73\x78\x0d\x4f\xe0\x19\x3c\x85\x9f\xe1\x0b\x78\x05\xdf\xc3\x0f\xf0\x23\x7c\x05\xff\x1b\xfe\x0c\xdf\xc2\xd7\xf0\x1d\xfc\x09\xbe\x81\xbf\xc1\x97\x0f\xbd\x34\x5c\x5b\xe1\x85\x22\x9d\x9a\xc6\x47\xf0\x16\xd3\xe5\x5c\x73\x70\x49\xbb\x07\x2f\xb1\x08\xa4\xce\x75\x4c\x4b\x71\x17\xe0\x57\x92\xd2\x6e\x05\x97\x6f\x06\x57\x13\xe6\xad\x20\xd3\x8d\x21\x2f\x05\xde\x0a\x32\xd9\x10\xb2\x26\xfb\x5b\x81\x66\x1b\x81\x7e\x8d\xc7\x5b\x41\x45\x9b\x41\xe5\x6c\xb1\x15\xd8\x7c\x23\xb0\x6f\x14\x5b\xf1\xf2\x66\x2b\xd0\xcb\x2d\x40\x6f\x05\x38\xdb\x10\x30\x9d\x6c\xd9\xe3\xf1\x66\x80\x35\x3b\xb4\x15\xe4\xe9\x46\x90\xff\x53\x72\x4f\x5b\xf6\x79\xb2\x11\xe4\xbf\xa0\xfc\x1d\xfe\xbc\xdd\xe1\x9b\x6d\x0a\xf9\xbd\xa1\xce\x5b\x41\x5f\x6c\x04\xfd\x2d\xdd\xee\x94\xcc\x37\x84\x6a\xd8\xbe\xad\x60\x7f\xda\x10\xb6\xe4\x12\xb7\x02\x7c\xb3\x11\xe0\xff\xc3\xc8\x76\x7b\xee\x72\x23\xb0\x3f\xa3\x6d\x77\xdc\xc5\xa6\x70\xb7\x82\x7a\xbe\x11\xd4\xad\x37\xf1\xf5\x46\x60\x4f\x4d\x34\xe0\xad\x40\x9f\x6c\x06\xda\x70\xcf\x5b\x81\x3e\xdb\x08\xf4\x7b\xb2\xc0\x2f\x54\xcd\xad\x80\x9f\x6e\x0c\x7c\x2b\xb0\x9f\x37\x03\xbb\x0b\xae\x78\xb1\x11\xe8\xff\x92\x8c\xff\x56\x70\xaf\x36\x82\xfb\x41\xca\x09\x5b\xc1\x7d\xbf\x19\x5c\x25\x56\x6c\x05\xf8\x83\x07\x78\x3d\x2f\xf9\xc1\xc4\xd6\xd9\x0a\xf4\xc7\x0d\xfb\x2c\x65\x96\xad\x00\xbf\xda\x10\xb0\x12\x71\xb6\x82\xfc\xdf\x1b\x41\x3e\xd3\x12\xd1\x56\x90\x7f\xde\x0c\xb2\x14\xa0\xb6\x82\xfb\x76\x33\xb8\x8c\x6f\xbb\x7a\xaf\x37\x02\xfc\x11\x6d\x49\x99\xde\x6d\x06\x56\xc9\x66\x3b\x60\xa2\x9f\xb6\x00\xbf\x15\xe0\x37\x1b\x01\xfe\x85\x6e\xdb\xe1\xdf\x36\x82\xfb\xab\x16\x2c\xb7\x82\xfc\xd2\x83\xbc\x91\xba\xb5\x11\x2c\x7b\xc3\xeb\xfe\x1d\xf4\xcd\x99\xc0\x41\x4b\xb4\x16\x7e\x9e\x8a\x42\x15\x58\xf7\x5d\x7d\xbe\x5c\x5b\xff\xc7\xd4\x14\x58\xf7\x5d\x4e\xc7\xc6\x93\xe1\x25\x39\xf8\xf2\x31\x1d\x1f\x70\xbf\xea\xdf\x21\x40\xaa\xb5\xef\x24\xe5\x07\xb4\xd3\x89\xad\x91\xdc\x8b\x18\x83\xee\x94\xd0\x49\x28\xd3\x70\x2d\x14\xbd\x82\x52\x00\x00\x2a\xea\x7e\x05\xc1\x5a\xab\x90\xd2\x0f\xf2\xc7\xb4\x37\x60\x09\x5d\x66\xd9\x36\x73\xe9\xae\x52\xbf\xde\xb6\x6a\x4e\x8f\x9f\x29\x04\x77\x6d\x17\x56\x2b\x75\x3f\xa7\x04\x71\x78\x5f\xbc\xff\x1f\xfb\x03\x7e\xd4\x4f\x7a\x00\x92\xb4\xef\xc7\xfd\x3f\xea\x87\x93\x89\x58\x83\x20\x95\xc2\x79\x9b\x09\xb2\xdb\xe6\x31\x27\xc8\xc5\x2c\xd8\x3d\x4b\xa8\xbd\xad\xff\x3f\x67\xa7\xef\xba\xfa\xb2\x95\x4c\x6f\xb4\x79\x53\xed\x9d\xb0\x97\x56\x24\x57\xa9\x26\xcc\x85\x64\xf5\x9d\x80\x78\xdb\x79\xd3\xda\xe7\x47\xde\x59\xc6\x4e\x8f\xb9\x9b\xe0\x8a\xeb\x1a\x06\xab\x55\x64\x6f\x47\x03\x5f\xb7\x1c\xa1\x4d\x91\xb1\x25\x1e\x32\x9d\x7b\x04\x44\xb4\x2e\xc9\x45\xa7\xd3\x30\x5f\xde\x31\x6b\xc7\x6d\x11\xc8\x87\x55\x9b\x56\x95\x50\x03\x74\x3a\x77\x15\x51\x06\x09\xca\x1a\x77\xcd\x1a\x2c\x05\x9e\x1c\xe5\xe2\x26\xc3\x4f\xaa\x8f\x5f\x6b\x83\x1d\x68\x04\x65\xaa\x5d\xe1\x9b\xbc\x61\x51\x52\x5e\x68\xdf\x16\x90\xa6\xbd\x63\xfa\x5c\x98\xe9\x3b\xa6\x87\x87\x80\x0f\xc5\x90\x8e\x46\xa9\x1f\x54\x53\xbe\x71\x58\x9b\x17\xda\x1a\xe7\x16\x51\x32\x47\x12\xf4\x5b\x75\xe1\x4e\x18\x7d\xc5\x96\x54\x48\x46\xe2\x82\x7d\x7e\x93\xe1\xcf\xde\x4f\xa5\x3f\x32\xcf\xa7\x7c\x42\x28\xca\xdc\xab\x31\xcb\x96\xf3\xb2\xf2\xd4\xd4\x9c\xea\x6a\xd7\xf6\xf7\x7b\x96\x13\x41\x3e\x61\xfb\x7c\x36\xe3\x84\x5e\xd9\xa7\x77\xf8\x12\xf9\x5f\x4f\xf9\x04\x73\xc5\xd4\x70\x32\xf9\xa0\xa1\xc8\x9f\xaf\x54\x63\xaa\x14\xa3\xe2\x57\x4c\x2e\x67\xaa\xd5\x8c\x50\xac\xac\x1f\xec\xc3\x5f\xdc\x27\xb6\x40\x63\x22\x6e\xd4\x4f\x0b\x95\xf1\xc5\x0c\xd1\x5c\xfe\x14\xe8\xe2\x8c\xfc\xa6\x1a\xbe\x26\x13\x76\xad\x5e\xfe\xf6\x56\x92\x3b\xf5\x8b\xb1\xb9\x6a\x8e\x64\xd9\x69\x09\x29\x17\x6c\x51\x79\xe4\xec\x0a\xbf\x46\xf9\x8c\x4d\xa7\x39\x16\xe5\xbb\x46\xa1\x5f\xc9\x44\xcc\xe4\x72\x1b\x53\xf6\x61\xf4\x2b\xbe\xb8\x22\x22\x82\xd1\x5c\x1e\xe6\x9f\xd9\x6f\x11\x8c\x4e\xa3\xd1\x41\xd5\xcc\xd5\x52\x15\x49\x8c\xab\x21\x01\x1d\xea\x6e\x18\xc0\x54\x5d\x5c\x5d\x7a\xcd\x28\x32\xc6\x2e\xc2\x5d\xd1\xe7\xef\xd0\xbb\x58\xe2\xe0\x9e\xf6\x01\xa0\xdd\x19\xca\x4f\xaf\x69\xb9\x6b\x41\xa7\x43\x87\x78\x34\x88\xa2\x43\x91\x34\xad\x69\x84\xb2\x77\x11\x5d\xc1\xc9\x3c\x06\x00\xf2\xc3\x68\xf1\x39\x02\x85\x44\xe3\x43\x31\x02\xe1\x10\xdf\x1c\x0c\x24\xff\x60\xa8\x81\x31\xb4\x99\xa0\x7c\x86\x39\xf9\x0d\xc7\x02\x1c\x46\x49\x74\xc8\x8b\xa0\x3d\x6d\xa9\xcc\x5f\x66\x59\x3b\x4d\xb1\x2c\xf6\xdf\x8c\xd0\x38\x3a\x8e\x40\x21\x62\x0a\xba\x53\xc6\x4f\xd0\x78\x56\xad\x46\x02\xaf\x05\xb8\xa5\xc3\x30\xaf\x78\x28\xba\xe3\x19\xe2\x2f\x44\xdc\x03\x5d\xc1\x7e\x59\x2c\x30\x7f\x85\x72\x1c\x83\x43\xd1\xcd\x97\x17\x7a\x2a\xe2\xbe\x1e\x2c\x18\xa5\x72\x9e\x0a\xa0\x6c\x1d\x94\x51\xd5\x01\x76\xfe\xba\x67\x12\x7f\xa4\x31\x4a\x9b\x86\x6f\xc3\xd1\x81\x5a\xdc\x60\xdf\x8c\x99\x15\x8b\xd5\x64\x3a\xd0\x34\xe5\xe5\x88\x9d\x01\x8b\xc5\xa7\xfd\x4e\x27\x3a\x8e\xda\x69\x4a\xed\x00\xa8\xcb\xd1\x0d\x3a\x9d\x98\x1e\xa6\xb2\x1e\xac\xcc\xfe\x4c\xcc\xb3\x33\x34\xc5\x31\x05\x05\xf4\x70\xb6\xc5\x3c\x4d\xbc\x0d\x45\x6a\xcd\x5f\x0c\x4a\xc2\x0a\x17\x49\xbc\xe3\xe1\x71\x3a\xaa\x38\x6f\xd8\x19\x09\xc5\xb6\x44\x86\x75\x52\xae\xcf\x43\xae\xff\x0a\xa0\xcd\x47\xdc\x3d\xcb\xc2\xec\x4d\x53\x98\xa8\x0c\x46\xf7\xa2\xf2\x3b\xf9\xf8\xf5\x28\xff\xab\x91\x4e\x51\xdd\x1b\xa1\xfe\x53\x9d\xad\x6b\x7c\x73\x34\xc1\x63\xa6\xac\xa3\x82\x56\x31\xff\x8f\xae\xe0\x15\xd2\x0c\x80\x7b\xe1\x8d\xd5\xc1\x0c\xbd\xf3\x41\x64\x28\x37\x39\xdb\x42\xf7\x99\xeb\x0c\x20\x89\xcf\x52\x7a\x04\xcd\xd8\xb4\x99\x37\x97\x58\x78\x38\x46\x1b\x80\xe5\x36\x55\xcb\x5d\x65\x24\x18\xe5\xcd\x98\xd2\x26\x62\x28\x8f\x6e\x10\xc4\x6b\x9c\x8f\x39\x59\x08\xa6\x49\x6a\xb7\x14\xa2\xa5\xe4\x03\xf5\x49\x33\x7b\x4a\xc9\x43\x8e\x72\x56\x11\x72\x29\x51\xf4\x8f\xc5\xf3\xfa\xa1\x38\x16\x87\x87\x76\xfc\x1a\x3f\x95\x27\x41\xf8\x1c\x8d\x50\x1c\x8d\xf8\xb7\xa7\x03\x62\xa6\x25\xe6\x00\xb6\x7b\x6b\x10\x01\xd2\x33\x2f\xb1\x40\x01\x40\x72\xcf\x08\xf3\x41\x68\x67\x12\x9c\xc7\x18\xde\x57\x35\xe6\x00\x24\x5e\x9f\xd6\x74\x68\xdd\xd6\x17\xf7\x35\x10\x73\x28\x14\x26\x2b\x9c\xfd\xab\xef\x79\x51\xf1\x96\x10\x2d\x42\x5b\x38\x38\x18\xdd\x96\x39\x5b\x1c\x56\x55\x22\x63\x46\xa7\xe4\x72\xe9\x9e\xaf\x39\x11\xe6\x77\x01\x12\x89\x4b\x53\x0e\xbd\x76\xf3\xbd\xdd\xee\xb7\x63\xb7\xbb\xfc\xd3\xd8\xed\x2e\xbf\x0b\xbb\xdd\xe5\xa3\xd9\xed\x66\x9e\x1c\x9a\xa5\x81\x70\x2d\xd6\x39\x2c\xca\xd5\x8f\xfa\x07\x37\x98\x40\x26\x84\x96\xdd\x86\xa1\x64\x06\x2d\x5c\x95\x39\x6b\xcd\x55\xb6\x55\x9a\xa6\xee\x7d\xdb\xfe\x2e\x37\xf0\xc0\xf6\x2d\x71\x0d\x82\x8a\x77\xda\xd8\x53\x3e\x34\x9b\xf4\x90\xda\xb4\x34\xcc\x0d\xe8\x2d\x02\x55\xbb\x84\x12\x41\x50\x46\x7e\xc3\x7c\x50\x79\xd2\x87\xc9\xc4\x68\x4c\x82\x75\x2f\xb1\x18\xa8\xff\xab\x65\xb1\x46\x34\x03\xf3\xd7\x7a\x0d\x7a\x69\x49\xc7\xb1\xa8\x39\xf2\x37\x34\x2b\x99\x16\x43\x0c\xbb\xdf\xe9\x8c\x63\xdc\x5d\x60\x3e\x65\x7c\x2e\x99\x6f\x30\x50\x29\x4f\x05\xca\xaf\x40\x5c\x7a\x26\xba\x89\x98\xc4\x9e\x76\x42\x97\x53\x52\x2c\xf0\x77\xe9\xac\x42\x02\x0c\x5a\xc1\x54\x70\x45\x35\x41\x30\xc3\xa6\x25\xf4\x79\x2c\xd6\x85\xc8\x68\x9b\x54\xb1\x43\x3a\x8a\x25\xe5\xa1\xa3\x98\x80\x02\xc8\x63\xed\x9a\x5e\x94\xc2\x40\x43\x37\xd2\x0f\xea\x46\xfa\x3e\x27\xd1\xf7\x74\x23\x46\xfd\x62\xb8\xb8\x5f\x89\x98\xbd\x57\x29\x75\x81\x4f\xbc\x21\x85\x44\x37\x88\x9a\x0d\x3e\x0b\x36\xf8\xcc\x6f\xf0\xd9\x28\x19\x8e\xe0\x32\xcd\x63\x04\xfb\x00\x66\xe9\x52\x0e\x7b\x9c\x12\x7f\xcb\xc0\x69\x4a\xf4\x9a\xdb\x85\x9e\xe0\x0c\x0b\xdc\xaa\x96\x72\x2f\x55\x51\x28\x45\x1d\x16\xdf\x16\x90\x03\x98\x01\x88\xed\x23\x01\xf0\xb6\x80\xb7\x5e\xcd\x64\x0c\xf5\x8e\x9a\x4a\xf6\xcd\x0c\x6a\x27\x6f\xca\xb5\x15\x24\x0b\xac\x32\xe5\xee\x62\x5c\x86\xbb\x98\x2a\xcb\xd1\x8f\x76\xbb\xa5\xb8\x7b\x85\xf1\xe2\x27\x24\xb1\xbc\xff\x76\xc2\xd9\xc2\x7f\xe6\x38\x17\x88\x2b\x86\xc5\x7f\x2d\xbc\xdf\x1e\xec\x06\x58\x0f\x62\x13\x98\x81\xe3\x9b\xf7\xcf\xd3\x45\x3c\x05\x07\xe6\xc3\x5c\xbd\xfb\x24\xdf\xc1\x5b\xaf\xb2\xd6\x54\x35\xe1\x7d\x52\xe5\x6f\x74\x79\xd9\xae\x2d\xe8\xfa\x70\xa3\x4a\x5c\xea\x12\x65\x57\x6d\xb9\x5a\xe7\x2f\x55\xe9\x0b\x5d\xda\x0c\xd3\x16\xf5\x47\x7d\xa1\xca\x9d\xa7\x8b\x78\x62\xfb\xae\x27\xe7\x5c\x7d\xb8\x96\x1f\x36\x19\x80\xae\x74\xad\x2a\x9d\xe8\x4a\xa1\x51\xe8\x62\x27\xaa\xd8\x99\x2e\x76\xdf\x50\x74\x95\x33\x55\xe5\x54\x57\x59\x3f\x1e\x5d\xf8\x74\x63\x31\xd0\x13\xcf\xb6\x94\x05\xf7\xae\x6c\xdf\x1f\x4b\xbc\x77\x65\xfb\xb6\x58\xe2\xaf\xee\xca\xf6\x65\x9c\x77\x5d\x66\x7c\x8f\x9f\xf8\x80\xff\xb5\x24\x1c\x4f\x9a\x7c\x85\x94\xc7\x1d\x67\xc1\x52\x1e\x13\xed\xd0\x0b\x51\x4a\x7d\x9a\x5f\xe3\x07\x2a\xdf\x6a\x61\x0e\xe3\x28\xb2\x6e\x6f\x0c\x46\x5d\x89\xf4\xce\x96\xe3\x31\xce\xf3\xe9\x32\x8b\x00\x8c\x1b\x97\x4b\xe5\x05\x88\x8e\x9f\x78\x67\x7d\xc7\x83\xe2\x81\x7f\x71\x12\x69\xbc\x0a\x12\x34\x40\xfa\xcc\x48\x58\x8e\xaf\x04\x40\x0f\x75\x93\x44\xf9\x0e\x77\x3f\x39\xba\x58\x4e\xa7\x98\x1f\x2d\x58\x46\xc6\x3b\x05\xe0\xdd\x16\x19\xf3\x40\x0c\xab\x7d\x94\xac\xdf\x3d\xea\xc0\x37\x1b\xf8\xe7\x8f\x87\xb1\x38\x5b\xbc\x5c\x8a\xbf\x3a\xae\xeb\xbd\x3a\x5b\x72\xe5\xe5\xb4\x64\xa7\xf4\x92\x11\x7a\x29\xd9\xab\xdc\x7d\x92\x95\x94\x61\xe7\xa4\xfa\xde\xe3\xc5\xec\xcb\x4a\x18\x83\xba\x51\xc9\x31\xee\xa2\xb1\x20\x9f\x54\x8d\xb7\x66\x25\xac\x14\xf5\x1c\x77\xe7\xe8\xf3\xab\xf2\xf8\x1f\x5b\x49\x1c\x77\xff\xe5\x1a\x2f\x6b\xe5\x33\x32\x15\xb1\xda\x72\x6d\x01\x2e\x38\x46\x57\x07\x61\xf8\x8a\x55\x11\xa0\x28\x2a\x3a\xf7\x52\x0f\x51\x6b\xf7\x28\xdc\x9e\xb9\x0d\xba\x6b\x08\x85\xc6\xe2\xb7\x5c\xe3\xfb\xfc\x17\x7a\xc1\x24\xde\x98\x78\xd0\xd5\xed\xe6\x78\x86\xe5\xe2\x54\xb4\x22\xf2\xbf\x42\x4a\x49\xef\xf0\x67\xf1\x5e\x4b\xea\x67\x02\x89\x65\x1e\x52\x9e\xc8\x01\xfc\xd8\x1b\x44\xb9\x44\xcd\x78\x12\x25\x91\x59\x8c\xa8\x28\x0e\x82\x2b\xc3\xf4\x05\x5b\x7a\xab\x17\xfa\x03\x46\x39\xa3\x49\x44\x44\xeb\x02\x67\x8c\x5e\xe6\xf2\x1c\xa0\xd6\x0f\x72\xb1\x7f\x68\xc9\x9a\x2d\x31\x43\xa2\x75\x8d\xf2\x16\xca\xe4\x49\xba\x69\xf1\x25\xa5\x12\x29\xad\x1f\x01\xc4\xdd\x7c\x21\x31\x4e\x65\x7e\x62\x1d\x5f\xd7\x6b\x18\x06\x27\x19\xf6\xc2\xef\xed\x39\x79\xc8\xfc\x28\x57\x5f\x35\x39\xe1\xed\x6c\x73\xd6\xdf\x37\x3f\x9e\x2c\x54\x9f\x26\xab\x60\x89\x01\x9e\xb4\xd0\x25\x22\x74\xcd\x4c\xd9\x58\xcf\x81\xad\x04\x69\x78\xbf\x1f\xd4\x2e\x5b\x14\x9e\x84\xf6\x92\x32\xb5\xcc\x87\x4a\x79\x32\x47\x9f\x95\xd6\xc6\x6d\xd9\xea\x06\x97\x14\x78\xb3\x45\xe2\xb0\x07\xc9\x83\x66\x5d\x83\x3b\x77\xbe\xa3\x6a\x01\xd6\xa2\x9a\x5c\x8d\x62\x79\xef\x1a\x94\x42\xe3\x1f\x74\xa7\x1e\xf5\x81\xdb\x6a\x21\x74\xbb\x94\x7c\xd0\x1d\x8c\x8f\xee\x80\x32\x50\x32\x66\x4c\xd6\x50\x29\x7c\x1d\xeb\x55\x95\x52\xfd\x91\xb3\xa2\x0a\x15\x51\xd2\xed\xd7\x08\xad\x3a\x43\xf9\x2c\xc5\x5d\x8e\xc6\x58\x6e\xee\x2c\x3b\xc3\x42\x64\x78\xa2\x1f\xaa\xb4\x81\xe3\x4b\x4c\x35\x05\xfd\xb0\xa4\x82\xcc\xe5\x2e\xe5\x57\x31\x03\x90\xa4\x63\x63\x8e\xf1\xe1\xec\x6f\xef\xbb\xef\xf5\x04\xc0\x08\x65\x59\x04\x33\x10\x36\xf6\x08\xc0\xbb\xe6\x75\xdb\x0f\x45\x84\x8e\x41\x7e\x4d\xa4\x54\x2a\xd9\x26\xfc\x29\x15\x4a\xba\x05\xb7\x63\x94\xe3\x56\x2f\x29\x4d\x12\x2f\xf8\x72\x21\xe2\xc8\xa8\x56\x21\x06\x07\xaa\x48\x3f\x91\x7f\x22\x4c\x27\x51\x59\x38\x17\x6c\x11\x83\xa2\x00\x92\xc7\xd5\xc3\xad\x71\x90\xbd\x34\x2d\x09\xbe\x25\x3d\x8e\xf0\x1b\x63\x00\x7b\x23\x7a\x78\x48\xad\xb6\x11\x0f\xe9\x48\x11\x39\xb4\x5a\xb5\xd1\x90\x77\x6f\x08\xce\x26\x72\x6b\x68\x46\x64\x54\x09\x98\xa8\x71\x58\xbb\x0f\x97\x29\xae\xd9\xbe\x94\x61\x83\x2c\xff\xdd\x1d\x73\x8c\x04\x8e\x6f\xa7\x34\x61\x10\xf1\xcb\x3c\x51\xe6\x18\xdd\x73\x85\xe2\xca\x3c\x1e\xfd\x76\x9a\xf2\xee\xb9\x14\x31\x32\x2c\x81\x49\x14\x80\x55\xfe\xe4\x76\x0f\x40\xee\xd9\x1a\xe4\x03\x12\x2f\x41\xb2\x6c\x36\xee\xc8\xad\xda\x33\x05\x00\x85\xa1\x48\xfe\x6a\xab\x55\x36\xdb\x46\x2d\x76\x65\x1f\x59\x1c\x1d\xde\x1f\x72\xdf\x99\x3a\x6a\x0b\x5a\x6c\x52\x85\x2f\x37\x69\x04\x43\x3d\xab\xde\xbd\x37\x2d\x87\xec\x00\x86\xc2\x9a\xac\x84\x6e\x51\xfc\xeb\x84\x71\x8c\xb5\x78\x57\x97\x42\x98\x5d\x5d\x22\x37\xbc\x0d\x3e\xa7\x86\x33\xc1\x53\xcc\x63\x70\xa0\xf4\xde\x0c\x28\xf3\xbc\x38\xef\x72\x9c\xb3\xec\x13\x86\xb9\xc9\xda\x0c\xcc\xe0\xda\x7d\xe8\x6d\x35\x70\xbb\x5c\xad\xe2\x65\xda\xee\x41\x14\x36\xe8\x91\xab\x56\xb2\xc1\x6c\x5a\x3a\x24\x0f\x2c\x62\x8e\xc3\xd7\x15\x43\xde\x2d\xd1\x92\xd9\x7b\x9d\x4e\xf0\x75\xac\xa6\x07\x14\x70\x9c\xe6\x5d\x83\xc0\xba\x46\x9d\x13\x67\xe5\x35\x46\xa8\x6e\x9a\xc1\x71\x51\x18\x64\xb2\xbc\x47\x40\xc4\x74\x8c\x16\xf9\x32\x43\x02\x4f\x14\xe6\xdb\x12\x3d\x7e\x35\x53\x15\x0f\xd7\xf9\x07\xce\x26\x80\x38\x9f\xa3\x2b\xfc\xd6\x48\x10\x49\x43\x22\x57\x44\xc8\x30\x13\x4e\xde\xf6\x0d\x7d\x54\x01\x79\x60\x41\x01\x4d\x39\x6d\x5d\xee\x4b\xd7\xfc\x9e\xc9\x0b\x50\x94\xbd\x5c\xbd\x97\xab\xf7\x72\xf5\x4e\xb1\xf8\x73\x13\xaf\xe1\x95\x8e\x60\x5f\x73\x38\x29\x75\x7c\xd4\xaa\xf7\xf4\x06\xea\xd7\xcc\x3d\xf9\x92\x76\x2f\x08\x9d\xe8\xe4\xd6\xbe\xb2\x8e\x4c\x63\x16\xbc\x32\x57\x41\xa5\xef\x32\x3a\xf4\x47\x8e\x25\xb9\xe9\x1d\xe7\xcf\xf1\x71\xae\x46\x9f\xfb\x86\x87\xb9\x62\x35\x48\xa7\x63\x2e\x17\x75\xa7\x97\x29\x35\x79\xbd\xa8\x16\xa6\x4b\xcd\xdf\x12\xda\x92\xce\x36\x49\x76\xc7\xe0\x2a\x06\x45\x8c\x40\x19\x85\x4b\x99\x8f\x07\x4d\xc8\x3d\xb4\x64\x6d\x15\x8f\xe6\x6c\x42\xa6\x04\xf3\xfc\x68\x4e\x3e\x93\x35\x49\x07\xbc\x8a\x96\xd5\x0f\xda\xee\xd5\x95\x89\x5f\x81\xfd\x35\x24\xfa\xcc\x76\xa3\xb2\x05\x74\x08\xe4\xee\xb9\xbb\x74\x7b\x8f\xc4\xcc\xda\xef\x95\xf3\xc9\x61\xa3\x4c\x69\xab\x7a\xee\x46\x58\x38\xc6\xb3\xce\xca\xe9\x51\x6a\x31\x23\xc1\xdd\x73\xff\x19\x56\xe5\x40\xf9\xb9\xfa\xa6\x00\x05\xc4\xce\x58\xf4\x67\x3b\xff\x55\xce\xfd\xb6\x02\x33\xe1\x01\x65\x03\xac\xc1\x4d\xfa\x4f\x7a\xb0\x3a\x2c\x45\xae\xe0\xf9\x0c\xe5\xbf\xe4\x78\x62\x9b\x4a\xda\x7d\xf5\xee\x0c\x8b\x97\x7e\x23\xe6\xf5\x09\x95\x98\x64\x72\xf2\x49\x6e\x56\xf9\xd2\xbf\xab\x6c\x5e\x2e\x13\x4d\x2c\xf9\x5a\x81\x53\x0e\xd7\x5c\x2f\xde\x51\xbb\x39\x3e\x50\x40\x75\xe1\x79\x47\xa5\xa0\x92\x01\x14\xd0\xbb\x01\xbd\xa7\x76\x40\x6e\x04\x45\x7d\x09\x43\x46\x37\x92\x37\xa8\x4f\xac\xe4\x08\xf5\x87\x2a\x80\x14\x43\xa6\x55\xf5\xea\x73\x01\x55\xf0\xb0\xf5\x60\x2b\x6b\xd8\xa8\x8c\xe5\xc2\xe0\x49\x28\xec\x8d\xed\x54\x65\x09\x6d\xaf\x0a\x38\xc1\x17\xcb\xcb\xb5\xf5\xd4\x57\x57\xb8\x68\xd8\xce\x3a\x16\x29\xb0\x77\x64\x35\x1c\x9c\x8f\xda\xe9\x48\x05\x64\x5a\x2f\x50\x9f\xa3\x34\xed\x3f\xe9\x49\xbe\xb9\xf1\xa5\x0f\x7c\x93\x48\x16\x83\xdb\x22\x74\x7e\x82\x51\x57\xc3\x98\xeb\xab\xfb\x63\x79\x67\x59\xa4\xbd\xca\xe5\x35\xb8\x15\x87\x87\x15\x9a\x49\x1c\x2d\x3d\xe6\xcf\xc9\xf1\xe1\x21\xb7\x64\x4c\x51\x4c\xd6\x3d\xcf\x31\xa6\xca\x03\xe4\xb9\xe8\x74\x62\xff\x45\x2a\xa0\x14\x74\x40\x51\x4b\xe4\xe0\xbb\x17\xd2\xe5\xfc\x83\xd6\xd4\x40\xae\x1f\xf5\x99\x81\xb4\xe2\x96\x13\xa9\x5d\x19\x81\x63\x7a\x0c\xca\xac\x09\x14\x46\x65\xfd\x08\x0a\x3f\x8b\x99\xfe\xa6\x81\xa9\x14\x66\x3e\x40\xea\x00\x16\xbe\x99\xbd\x35\x60\x32\x3c\x7a\x86\x72\xab\xf1\xc2\x13\x8d\xae\xd4\x65\x98\x44\x38\xfe\x0b\xd3\x01\xaf\x84\xbb\x2e\x2b\xdf\xbd\xd2\xa2\x33\x2e\xdf\x28\xfe\xca\x87\xf3\x4a\x21\x29\xff\xcd\x5b\x3a\xae\x54\x33\x9c\xbe\xf6\x1f\xea\x41\xa5\x5c\xfe\x0b\xa2\x93\x0c\xbf\x59\x66\x53\x92\x99\xf6\xbc\xf7\x3a\x0a\x81\x7e\x4d\x28\xa9\xe0\x1c\x7d\xb4\xf2\xe5\x02\x73\x5f\xb4\x70\xcc\x80\xc9\x8a\x16\xd0\x51\xa6\xc3\x91\xfe\x16\x50\x80\xa5\xc3\x51\x01\x35\xbe\x7d\x91\x65\x0d\xad\xa7\x50\xbe\x1b\xb2\x6e\x48\xf9\x86\xd7\x36\x09\x7b\x6b\x3f\x95\x39\x37\xe0\x7d\x80\xc3\x8a\xbc\x75\x9f\x3c\xc0\x3c\x16\xa0\x80\x01\xc8\x49\xdd\xca\x5f\x32\x7a\x76\x87\xb3\x94\x1f\xb3\xe7\xfc\x90\x1e\x1f\x1e\x3a\x89\x5f\x0c\xd9\xe8\x00\x49\xf1\xd6\xec\x24\xeb\xcc\x29\xb7\x2d\x52\x8c\x64\x65\xef\xea\x57\xe5\xd1\x38\xea\x03\x88\xac\xa4\x8e\x01\x54\xcc\x9a\xb1\xc6\x50\xe6\x7c\x85\x30\x53\xa0\x4d\xf2\xc3\x1a\xd0\x7a\xbe\xbf\xca\x66\x8f\x20\x6e\x66\x04\xf4\x37\x5f\x04\x7d\x09\x55\xbd\x3a\xec\xfb\x55\x70\x73\x1c\xb8\x36\x0e\x59\x61\xed\xcc\xab\xf1\x60\x53\xe0\x7c\x9a\x2d\xf3\x99\xaa\x95\xc7\xa0\x80\xfe\x73\x12\x74\xbb\x91\xfb\x33\xed\x1d\x8b\xe7\xf7\xec\x99\xe3\xc3\x43\x01\xb0\xb9\x20\x5a\x53\x74\x28\x46\x7a\x5e\x0f\xd6\x1e\x87\xb0\xf3\xf4\x70\x04\xb5\xd8\xe1\xa1\x50\x5a\xa2\x50\xa2\x51\x68\xbb\x9f\xa6\x29\xe9\x92\xfc\x0d\xa1\x24\x9f\xe1\x49\xa7\x23\x74\x87\x88\xe3\xa8\x45\xb1\xb6\x77\x66\x8a\x7c\x3a\xd6\xb5\x0b\xae\x49\xb3\xa7\x62\xd4\x68\x20\xed\x1d\x93\x0d\x26\xc6\x09\x2c\x6b\x27\x86\x48\x02\xe0\xef\xe3\xd8\xa0\x14\xf9\xec\x17\x8d\x99\xc4\xbf\x4c\x52\x21\xed\x9a\x65\x36\x2a\xb5\x79\x24\xab\xfb\xd0\xc0\x0b\xe6\xa5\xf4\x10\xae\xfc\xee\x06\x87\xd2\xde\x31\x7a\x7e\xcf\x49\x3e\x3e\x3c\x44\x95\xe5\x0e\x14\x1d\x22\xbb\xdc\x92\x20\x36\xda\xaf\x78\x03\xdd\x33\x89\x72\xab\x36\xe6\x22\x80\x11\x35\xcf\x67\xac\x0c\x0f\xca\x16\x79\x95\x86\x55\x51\x40\xbd\x98\x9b\x14\xee\x11\x55\x79\xc6\xb0\xd3\xe6\x76\xcf\x19\x7d\x43\xa8\xb2\x1a\xa9\xb8\x92\x6d\x04\xeb\xa8\x6f\x75\x23\xb8\xa1\x09\xf6\x3a\x2d\xf4\x1a\x59\x7a\xa7\x50\x89\xdc\xe2\x74\xd0\x28\xe3\x99\x95\x40\x0c\x92\xf8\x69\xb8\x98\x21\x94\xaa\xcc\x33\xad\x61\x69\x36\x67\x68\x67\x1d\x73\xe9\xaf\x25\x1d\x95\xdf\x6d\x01\x29\x69\x33\xb9\x3b\x05\x14\x15\x1c\x03\xb4\x90\xba\x85\x9d\x8a\x52\x2a\x6a\x96\xe2\x1e\x21\x55\xdf\xbd\xac\xd7\x4c\xe6\x72\x3a\xad\xbc\xbb\x95\x74\xbc\xbd\xc7\x19\x99\xc6\xed\x9a\x2e\x18\x80\xa0\x12\xe8\x15\xa2\x94\x89\xd6\x18\x65\x59\x0b\xb5\xc6\x19\xca\xf3\x16\xca\x5b\xc8\xa9\xff\xa2\x9d\x62\x68\x3b\x23\x4e\x5b\x3c\xf5\xde\x55\xa2\x69\x43\x14\xe4\xd1\x5c\xd0\x4b\x78\x4b\x72\x57\x53\xb9\x2a\x1b\x75\x5d\x53\xa4\x88\x9e\x97\x05\x9d\xa5\x93\x46\x5c\x76\x6e\xdf\xa1\x39\x86\xd1\x8f\x91\x3c\xc0\xe5\x01\x38\xe5\xef\xec\x01\x4c\x6a\x99\x65\xe5\x1c\xf9\xe7\xc6\x3b\xb7\x00\x92\xdc\x72\x88\xb5\x5a\x17\x8c\x65\x71\x14\x6e\x41\xd5\x33\x8d\xb5\xfb\x6a\x33\x96\x33\x83\x82\x73\xc7\xc2\x6f\x1d\x75\x6a\xe1\x18\xdc\x1a\x09\x13\x83\x02\x2a\x3b\x35\xad\x89\x7b\x91\xe7\xe4\x92\x82\x98\x95\x0a\x4f\x48\x9b\x72\x4c\xd0\x63\x74\xfd\xd5\xe3\x26\x27\xe1\x8b\x2b\xe0\x2f\xb1\xa5\x0f\x16\xe3\xa6\x4d\xa9\x92\x0f\xdd\xe5\x78\x7f\x54\x48\xe1\x88\x4c\x34\x0a\x51\x79\xd4\x2e\x59\x9a\x43\x7d\x7f\xd8\x70\x3e\x16\x0f\xf6\x37\x68\x05\x58\x96\xfb\x22\xaa\x00\x43\xb6\x5d\x24\x95\x70\x1c\x95\xbc\x34\xbd\x83\x14\x2a\x25\x6f\xe1\x89\x7e\xb8\xfb\xfe\xe4\xc3\x9b\xd3\x0f\x3f\x9f\x7f\xfc\xfb\xfb\x93\xf3\x9f\xde\xbe\xfb\xeb\xc9\xeb\xfa\xdb\x5f\xde\x85\xdf\xbf\x3e\x79\xf3\xe2\x97\x9f\x3e\xda\x63\xb9\xe6\x6b\x14\x7a\x1b\xd5\x4b\xbb\x36\xa2\xe0\xeb\x46\xf9\x60\x69\x5b\xd6\xb9\x84\x57\xc5\x4c\xcf\xcb\x48\x9e\x0a\xbd\xbc\xc8\x68\x4e\xa5\xac\x89\xe6\xb8\x08\x1a\x04\xd5\xae\x63\x9c\xe7\xbf\xd3\x61\x9c\x2d\x2f\xf2\x31\x27\x17\x78\x92\xb6\x7b\x30\xd6\x14\x5c\x49\x96\xd1\xb9\x8d\x3a\x02\xc0\x10\x5b\x35\xa8\xf0\x84\xaa\xc2\x1a\x09\x59\x3d\xb7\x51\x84\x4d\x48\xbe\x60\x39\xb6\x8f\x35\x02\x9b\xf4\xa0\x3c\x5c\xfa\xa3\xbe\xa8\x1d\xc1\x6a\x57\x94\x8e\x8c\x2f\xe9\x4f\x4c\x59\xe2\x43\xad\x34\x59\xab\x39\xab\x58\x58\xe8\x36\x0d\x3b\x2f\xf1\x7e\x12\x5e\x47\x78\x8e\x3f\x2f\xf0\x58\xe4\x3f\x11\x7a\x85\x27\x7f\x27\x38\x53\xed\xea\x13\xa8\xa0\x60\x49\x31\x8c\xc0\x99\x7b\x92\x70\xbb\x0f\x49\xae\xc8\x89\xfe\xe9\xa4\xdd\x1a\x52\x44\x74\x12\x47\xf6\xb3\x46\xa6\x25\x6f\xac\xb0\xa2\xfb\x24\x01\x95\xec\xa7\x06\x6b\x4b\xea\xa7\x35\x88\x97\x32\x11\x57\xa1\x2a\xb2\x9b\xd4\x0d\x69\x49\xfe\x9a\xb3\xc5\x42\xb2\x15\xb5\x2e\x95\xcd\x56\xfb\x07\x03\x1e\xfa\x75\xf3\xda\x12\x2a\x18\x28\xab\x24\xf9\x33\x51\x5b\xc8\x6b\x64\x60\x4c\x67\xbc\x6f\xb6\x95\x41\x34\xb5\xed\xe9\x4f\x65\x6f\x06\x91\x35\x7c\x49\xa2\x6b\x44\x84\xfc\x25\x91\xb6\x6b\x33\x30\xc6\x75\xe3\x0a\x0c\xa5\xde\xc9\x4e\xa7\x5d\xeb\x80\x6c\xec\x5c\xf9\xdb\x27\x7d\xc3\xfd\xae\xd3\xea\xf9\x92\x43\x1d\xf0\x6a\x15\xd7\x39\x6f\xbf\x6b\xed\x9e\x15\x0d\xad\xac\xf3\x9e\xb3\x31\xc6\x93\x58\x74\xff\xfe\xf6\xe4\xa7\xd7\x2f\x5e\xfe\x74\x72\xfe\xea\xf4\xdd\xc7\xb7\xef\x7e\x39\x81\xc6\xb1\xce\x54\x11\x9c\x5c\x5e\x62\xae\x8e\x42\x1c\xe5\x16\xa6\x12\x96\xac\x22\x33\xc4\x3e\x28\xd1\xd2\x0a\xf9\x69\x14\x1d\x2a\x70\x8a\x67\xb7\x64\x45\x89\x7b\x51\x69\x06\x16\xc1\x18\xa7\xc4\xe5\xc2\x83\x22\x3d\xea\x83\xc3\x98\xae\x56\x51\x04\x0e\x6d\xae\x7f\x71\xc8\x81\xd5\x99\x34\xef\x82\x77\x0c\xfd\x13\xb9\xcb\x7c\x65\x17\x85\x3f\x2f\x32\x32\x26\x22\xbb\x51\x5c\x1c\x9e\x44\xda\x70\x72\xcd\x82\x96\x9b\xad\xa9\x2a\xa8\xec\x18\x9b\x16\x99\xa7\x6e\x36\x3a\x1d\xf7\xb3\xca\x52\xad\x56\xd1\xf3\x25\xbd\xa2\xec\x9a\xfe\x18\x1d\x34\x24\x2b\x0f\x21\x45\x30\xf2\x65\xa6\xd6\x0f\x8e\x51\xe3\x30\xfa\x41\x0d\xc8\x9e\x8e\xd6\x05\x1e\x23\xc9\x33\x44\xee\x9e\x09\xc3\xa8\xdb\x7a\xc3\x78\x6b\xce\xb8\x64\x6f\xe5\x5a\x28\xc4\x0f\x5b\x39\xc6\x49\x6b\x26\xc4\x22\x79\xf2\xa4\xc1\x92\xc8\x53\xf1\x64\xc2\xc6\xf9\x13\xc5\xc8\x8c\x4b\x8a\xa1\xae\xca\x23\xb3\x3b\xfc\xe3\xe6\xf8\x46\xb9\xf9\xce\x18\xa3\xd5\x0d\xf8\xe2\xdd\xab\x93\x9f\xa0\x44\x86\x20\x31\xaa\x0c\x2b\x7f\x29\x0c\xf9\x4c\xd2\xe7\x73\x65\xf1\x61\x71\xb0\x26\x1f\xf5\x63\xba\xee\x2c\xea\xba\x01\xf3\x11\xa7\xec\xbf\xb9\xc0\x1f\xf4\xbd\xd4\xeb\xca\x17\x55\xce\xda\x66\xa8\x53\xdb\x28\xdb\x54\x16\xaa\x4a\x66\x7d\x03\xd6\x40\x2a\x29\x6e\xe8\xdb\xc0\x6f\xd3\x5c\x93\x69\x9e\x5b\xdf\x1d\x26\xd5\xef\xea\x8e\x5f\xbd\x52\xd4\x04\x80\x02\x8a\x19\xa6\x09\x89\x23\xf9\x37\x02\x50\xb9\x15\xc9\x67\xf5\x23\x02\xd0\x18\x97\xc8\x57\xe6\x67\x04\xa0\x9b\xed\x24\xe4\x81\x2a\x20\x4d\xb1\x56\xea\x68\x8c\x75\x78\x08\x9b\xe7\x21\xe6\xe9\x33\xc3\x8b\x69\x61\xa8\x61\x20\x08\x60\xec\xdd\x52\x58\x6d\xde\xc9\xbb\xbf\x75\x5f\x9f\xbc\xfc\xe5\x3f\xcf\x3f\xbe\x38\xfb\xeb\x19\xe8\x74\xc6\x8c\xe6\x2c\xc3\xdd\x8c\x5d\x86\x80\x50\xc5\x91\xa4\x0d\x66\x05\x52\x75\x94\x1c\x37\xab\xef\x5b\xea\xa7\xa7\x3e\xe3\x4a\xe7\xdd\x28\xc4\x71\xbe\xcc\x84\x52\xac\xf4\x55\xa6\xd3\x06\x96\xf5\x69\xb6\xc6\xb3\xf5\x12\xc6\x81\x8e\x02\x90\x3c\x5d\x07\x43\xcd\x54\xb8\x3a\xd6\x9f\x64\xf5\x67\xda\x7f\x6a\x6d\x89\x46\x5d\x9f\xd0\x96\x24\xc0\x70\x4e\x6e\x67\xf3\xa5\xd3\x72\xbc\x42\x59\x76\x81\xc6\x57\x79\xec\x17\x96\x5b\xc6\x96\xd0\x0c\x91\xd6\x2a\xd6\x2b\x99\x23\x59\x2a\x4d\x2a\xba\x9b\xea\x79\x76\x95\x9c\x16\xac\xf1\x45\xe5\xfc\x5f\xf3\xad\xa6\xf0\x6c\x1c\xad\xbb\x46\x56\xc0\xe0\x87\xa4\x6a\x3a\x70\x1f\x3e\x68\x74\xc9\xd7\xa7\x4a\xca\xb5\xae\xe7\x46\xb5\x86\x9f\x8b\xe3\xc3\x43\x0c\xd6\x14\x1b\xe2\x51\x6c\x34\xa8\x81\x99\x51\xa6\x4b\x5e\x0f\x3f\xce\x38\xbb\xfe\x85\xce\xd4\x1d\x86\xd2\xcf\xa9\x1d\xf5\x13\x12\xb2\xc7\x05\xbc\xbf\x54\xd8\xa6\xea\x20\xc0\xc2\xaf\x56\x4f\xdb\x6b\xd0\x96\x3d\xcb\x7c\x49\x4b\xa5\xaa\x67\xa6\x81\xc6\x57\x17\x4b\x4e\x31\xd7\x8a\x44\x49\xe3\xf2\xe1\x3d\xdf\x4b\xb9\xb3\xc2\x60\xe1\x46\xaf\x68\x8c\x0d\xfa\xb3\xdd\x50\xf8\xdd\x60\x47\xfb\xad\x90\xc8\x71\xcd\xae\xf6\xe7\xc0\x9a\xbc\x86\x86\x69\x4c\x5f\xfb\x49\x90\x3f\xd2\xa6\xdc\x8e\x43\x3a\xd0\x9e\x16\xaa\xc6\xd3\x60\x0d\x6c\xf5\x75\xa5\xa5\x9a\xee\xab\x5f\xf5\x59\xb0\xaa\x63\x79\xbd\xba\x15\x2c\x59\x14\x4e\x52\x0a\xee\x6f\x2b\x45\x55\x0c\xe9\xdc\xdb\x83\xea\xa3\xd6\x87\xe3\x58\x41\x25\xf9\x7f\x5a\xfb\xe1\xd7\x8c\xe2\x35\x36\x79\xe7\xce\xc8\x58\xeb\x3d\x8d\x4a\xe9\xf5\xe9\xbb\x13\x25\x55\xae\x56\xd1\xc9\x87\x0f\xa7\x1f\x4e\x5e\xab\x47\x79\x34\x71\xbe\x9c\x63\x07\xbb\x46\x89\x04\xbf\xb1\xf1\xca\xf4\xec\x6a\x0d\xab\x6d\x4b\x58\x13\xc1\x18\x0c\xc5\x48\x45\x72\xaa\xf6\x42\xb9\xda\xa7\xd4\x44\x02\xa0\xca\x3f\x77\x10\xea\x69\xaa\xfb\x98\x84\xbf\xfd\xe5\xc5\xd9\xf9\xcf\xa7\x1f\x4e\xce\xff\xf6\xe2\xa7\x5f\x4e\xce\x22\xe3\xb6\x4b\x2c\x96\xab\xb5\x47\x60\x18\x8c\x1d\x7a\xe9\xe3\xab\x8a\x35\x65\xc6\x4e\x27\x0e\x01\xee\x74\x82\x12\xbe\xe3\x2a\xaa\xa5\xbb\xbe\xc0\xba\x5a\x59\xf2\x7a\x8d\x38\x8d\xa3\xbf\xb3\x65\x6b\x61\xef\xb3\x5a\xa8\xd5\xcd\x54\xeb\x31\x68\x49\x62\xda\x32\x69\x87\x5a\x64\x3e\xc7\x13\x82\x04\xce\x6e\x5a\xca\xae\x9a\xd0\xcb\x27\x7a\x51\x09\xbd\x6c\x11\xd1\x6d\x7d\x9c\x91\xbc\x45\xf2\x96\xe6\x12\x25\x03\xbd\xa4\xf9\x72\xb1\x60\x92\x01\x6c\xc5\x17\x4b\xd1\x9a\x93\xcb\x99\x68\x5d\xe0\x56\xf9\x9e\xd0\xd6\x74\xa9\x1c\x66\x3f\x61\x9e\x2b\xe3\x80\x69\xab\xc1\x71\x82\x6e\x64\xf1\x6f\x73\x92\xd2\x76\x5f\x85\xd8\xd2\x86\xe5\xd0\xdf\x0e\xeb\x44\x2a\xab\x53\xb0\x44\xc8\x3e\xa7\x16\xb7\x96\x46\xa7\xb1\xe5\x66\x6d\x19\x85\x55\xc3\x46\xa9\x7e\x13\x53\xea\x5d\x16\xab\x90\xc0\xf8\xb3\xa8\xd8\xa3\x9e\xa3\xc9\x27\x79\x66\x75\x5c\xc8\x9a\xbd\xa7\xc7\x6e\xc9\x03\x62\x2c\x12\x0f\x0f\xbd\xf7\x05\xf4\x19\xea\x30\xeb\x56\xe2\x72\xbf\x31\x1f\xba\xc7\x0d\xfc\xc4\xd8\x62\x50\xa2\x65\x15\x04\xb0\x79\xfd\x51\x41\xf2\x91\x4e\x8a\x95\x47\x90\x43\xee\x18\x7c\xad\x51\x03\x20\xc9\xb1\xf8\x48\xe6\x98\x2d\x45\x88\x33\x2f\x2b\x68\x3b\x4b\x00\xfb\xa0\x80\xe6\x55\x52\xb7\x3a\x5b\x43\x79\x02\xa3\xc3\xc0\x32\x02\x15\x81\x03\x72\x75\xd1\x54\x15\x84\xef\x9b\xb6\x46\x7b\x46\x16\xb4\xf3\xe5\x93\x3e\xb3\xf3\x3f\x98\x99\xac\x95\x6b\xdf\x53\xd0\x9f\x8a\x1d\x26\x2e\x71\xe0\x3d\xcb\xe7\xca\x82\x80\x72\xc3\xd4\xb1\xeb\x9a\xa1\x3a\x7c\x1d\x42\x63\x03\xcb\x23\x68\xfb\x09\xc5\x2a\x4d\x3e\xa8\x0e\xe2\x89\x42\x3c\x7a\x28\xa1\x62\xaf\x18\x15\x84\x2e\x71\x59\x4c\x76\xee\x0e\x50\x49\xd5\x44\xd0\x50\x69\x4b\x91\x43\xca\x8c\xa4\xf1\xe5\xc3\xc9\xc7\x5f\x3e\xbc\xab\xcb\x97\x1c\xf6\x2b\x04\xd7\xaf\xf1\xf1\x2f\x1f\x4e\x7f\x6d\x56\x78\xba\xb6\x82\x16\x64\x93\xfb\x34\x01\x70\xbd\x8c\x5b\x9d\xe3\x24\x7a\x79\xf2\x46\xd2\x9b\x57\x1f\x4e\x5e\x7c\x3c\x89\x60\x0d\xb5\x3b\xe3\xc0\xb5\x93\x5b\x9b\x38\x73\x31\x79\x40\xe5\xa2\x36\x3a\xee\x92\xcf\xde\xd1\x75\x9a\x36\xe7\xb4\x21\x61\x18\x27\x3b\x0f\xcd\x98\xe3\x54\xa3\xf2\xca\xf2\x02\x06\x8e\x30\x01\x9d\x4e\xec\xe8\x64\x7b\x83\x1d\xa8\x48\x81\xdd\x78\x0d\x2d\x42\x88\x2e\xc2\xa7\xde\xae\xf3\xab\x37\x95\x59\x5a\x95\x15\x02\x72\x40\x06\xa4\xea\x25\xf2\x01\x5d\xab\x2f\xd5\x63\xfd\x2b\x11\xb3\x33\x22\x0f\x98\xee\xa1\xb5\x06\x4e\x62\x3b\xfa\xc9\x6b\xc3\x6e\xc5\x64\x28\x9a\xee\x1e\x00\xca\xd7\x75\x9f\xa6\x81\x9d\xe2\x4f\xec\x4a\x8f\x41\x7e\x8c\x49\xd0\x33\x85\x28\x1f\x99\x41\x2c\x19\x13\x8d\xe4\x20\xf5\xd7\x08\xea\x18\xd7\x35\x6f\xa4\xae\x45\x35\x14\x06\x95\x86\x58\xe2\x9f\x8d\xaa\xa8\xe3\xa4\xca\x03\xbb\x40\xeb\x66\xe7\xfe\x02\x25\x32\xab\x7d\x6b\x0a\x9f\xb6\x37\xfe\x50\xd7\x0d\x05\xfa\x2b\x51\x27\xca\x21\x6f\x1f\xdf\x38\x61\x3d\x07\x2d\x06\xbe\x8e\x28\x06\x8a\x9b\x4e\xb0\x62\xa8\xab\x6b\x57\xed\x3e\xbf\xb1\x3e\xb0\x81\xc5\xf7\x11\xbd\xa6\xe5\x07\xcd\xcd\xc4\x81\x61\x52\x29\xb8\x95\xcd\xf9\x82\x44\x98\xe9\xa8\xdf\x82\x54\x46\x58\x57\x5c\x5a\xc6\x66\x13\xbd\xe6\x81\x6c\xa2\xd3\x51\x01\x9d\x65\x1f\x3a\x1d\x5e\x0a\xcf\xb4\x79\xb3\x47\xbc\x9b\x3d\xfa\x63\x7f\x40\x75\xae\x04\x96\xf6\x8f\xd9\x73\x7a\xcc\x0e\x0f\x01\x19\xb2\x6a\xae\x04\x36\x3a\x70\xf0\xdd\xad\xd2\x30\xf2\xf5\xa2\x89\xa7\x01\x05\x23\xfb\x93\x00\x50\x14\x45\x71\xc0\x02\x13\x9d\x86\x90\xa8\x62\x12\x4a\x93\xf3\xc6\x75\x17\x5d\x6b\x46\xa2\x91\x23\x6d\x5a\x87\xf4\x75\x3c\x37\xb7\x61\x79\x78\x9b\x52\x8b\x3b\x9e\xde\x59\x5e\x1f\x37\x6a\x84\x4a\xa5\x45\x22\x9d\xce\x5a\xe8\x9e\x0e\xb6\x00\x00\x56\xa5\xc6\x35\xf7\x8f\x2a\x0e\xb4\x2f\x5e\x04\x0a\xdb\x3b\xb1\xb4\x59\xd6\x5a\xb7\xea\x5d\x83\xeb\x3b\x8a\x9a\x0f\xb4\xf2\xc1\xec\x22\xde\xe9\x88\xb6\xd2\x8b\x89\x2e\xc9\x5f\xe3\x5c\x70\x76\xa3\x34\x91\x15\xfb\x55\x77\xb7\x15\x01\x3b\xf1\xd1\x3f\xdd\x6e\xc0\x81\x5d\x0a\xa3\x7f\x46\x72\x93\x79\xc5\xe8\xba\x62\x07\x15\x61\xea\x87\x86\xdc\xd2\x9a\x60\x81\xc7\x42\x49\x56\x0b\x26\x30\x15\x44\xca\x7b\xad\x19\xfa\x0d\xf1\x09\x5b\xe6\xad\x28\xc7\xd9\xd4\xa8\xd0\x5b\x19\x63\x8b\xa8\x75\x81\xc5\x35\xc6\xb4\xb5\x40\x92\x49\xd4\x72\xd8\x0f\x6e\x9b\xc2\xa8\x85\xe8\xa4\x35\x9e\x91\x6c\xa2\xbf\x95\xdb\x99\xc1\xa8\xdb\x7a\x3b\x6d\xdd\xb0\x65\xeb\x1a\x51\xb1\xb6\x94\x71\x39\x72\x77\x03\xd7\xb3\x5a\x7b\x65\x69\xd9\x20\x29\xaf\x11\x60\x6b\x91\x61\xc9\xf6\x8c\x67\x88\x5e\xe2\xd6\x3f\xcb\x4b\x9c\x7f\x4a\xa8\xff\x74\x02\xa4\xf7\x61\xf3\x4e\x5d\x61\xbc\xb0\x3e\xe9\x2d\x34\x15\x98\x6f\xda\x2d\xd3\x1f\x22\x74\x2f\x96\x34\xd0\x8f\x48\x9e\x71\xea\x2e\x7c\xe4\x71\xd7\x36\x71\x21\x9b\x19\xe6\xb9\xad\xe6\x3b\x65\x33\x19\xf8\x0f\x9e\x5d\x03\xb2\x4e\x28\xa6\x41\xa4\xac\x4a\xe2\x5b\x75\x5f\x8d\xe1\x94\x26\x02\x9a\xcd\xae\xa8\x60\x01\x39\x28\x7d\x8d\x0b\xed\x69\x84\x3c\xb3\xab\xfb\xbc\x3f\xd5\x35\x8d\xdd\xbc\x5f\xc0\x31\xfe\xa1\x26\x58\x5b\x1a\x7c\x35\x9d\x57\xd7\x64\x41\x5e\x67\xc7\x85\xbe\x86\x1d\x97\xbf\x39\xb6\x75\xf3\x5c\x7e\x03\x6e\x9e\x7f\xc2\x50\xc8\xdf\xa6\x9b\xe7\x3e\x06\xf2\x97\x88\x81\xbc\xa3\x59\x66\xcd\x22\xd3\x37\xc6\x74\xa9\xd8\xc3\x6e\x33\xe7\xa5\xa1\x52\xc5\xa2\x48\xbf\xd1\xd4\x4b\x57\xa9\x38\xb5\x84\x0d\xf9\x03\xf9\x33\x2a\xae\xac\x3c\xed\x1d\xf3\xe7\x58\xad\xb0\x90\x2b\x5c\x92\xa6\x72\xa5\xcd\x4d\x83\x66\x75\x4c\x08\x9b\x19\xe2\x52\x72\xb2\xea\xa4\xb2\x9f\xe6\x8d\xdf\x4f\x15\xd6\x63\x7e\x8f\x01\x6a\x3c\x4e\x6f\xa7\xc6\x92\xca\x12\x39\x73\x7f\x78\x91\x63\xfe\x09\xdb\xeb\x44\x89\xff\x6f\x5e\x48\x92\xd8\x9c\x91\x3c\xec\xa9\xe3\x44\x98\xbb\x9c\x75\x2a\xb1\x9f\x8d\xaa\x16\x34\x42\xfc\x9d\x5e\x53\xcc\x2b\xba\x5b\x00\x45\x8a\x07\xb8\xcb\xe4\x97\xb7\x54\xc2\x50\xad\xaa\x54\x0b\x6e\xe6\xec\xf5\xf3\x1b\x24\xf7\xe2\x4d\xca\xea\x21\x0d\xcc\x54\x4e\x29\x28\xe2\x1e\x24\xdd\xf3\x71\x86\x11\x5d\x2e\x4e\xa9\xe1\x61\x41\x53\x63\x6c\x8d\x3e\x5e\x64\x59\x04\x6f\xb9\x89\xf6\x23\x66\xd8\x60\x0e\xc9\xf5\x64\xe4\x13\xce\x5b\x8c\x2a\xa3\x8f\x89\x06\x85\x27\x2d\xc6\x5b\x4b\xca\x31\x9d\x60\x8e\x27\x51\x21\x05\x5c\x35\xb1\xe1\x6d\x64\x14\x81\x19\xa3\xea\x9a\xb8\xb9\xad\x78\x05\x69\xd8\x6c\x51\x26\x4d\x54\x3d\x35\x4b\xe9\x6d\xe8\xd6\x32\x1d\x3a\x81\x2b\xb7\x97\x6c\xf6\xdb\x6a\x35\x1c\x01\xc8\x01\xc4\x05\xd4\x8b\xdd\xbc\x5c\x52\xb6\xb8\x4d\xd3\x55\x60\xe2\x9b\x61\x8f\x9c\x1b\x84\xfd\x77\xb6\x94\x5c\x62\x8b\x51\x63\xd2\xe3\x5d\x71\x48\x72\xa2\xae\x38\x08\x6d\x21\xc5\x61\x76\xcb\x94\x37\x0b\xe7\x2a\xac\x4f\xaa\x5a\x88\xca\x49\x15\x21\xe3\xcb\xda\xd1\xc5\x72\xca\x2d\x33\x1a\xcc\x2c\xbe\x65\x2b\x56\xf6\xd2\x4b\x99\xd5\xae\xe0\x0c\xd4\xb9\x1f\xb1\xc6\xec\xb7\x0a\x4b\xe9\xb6\xd7\x39\xe3\xe4\x92\x98\x42\xe6\xa1\xee\x81\x5c\xee\x6e\xf7\xae\xd4\xa3\x73\xf3\xd9\x3d\xc3\x8a\x98\x54\xaa\x71\xdc\x2b\xd9\xf3\xfb\xcc\xce\x37\xb1\x38\x0f\x1c\xb7\xc4\xf9\x79\x6f\x89\x2e\x79\x15\x5d\xfa\x29\x87\xd6\xee\xeb\x0a\x4a\x34\x88\x52\xca\xd4\x21\xe9\xd7\xc8\xd5\xb0\x5a\x3c\xa9\xc6\x3e\xb0\x02\x6a\xed\x5c\x0c\xee\x38\x33\x00\x4a\xee\x13\x24\x18\x1a\xff\xa3\xd0\xac\x84\x36\x83\x92\x35\x48\x78\x4f\x28\x0c\x57\x7d\xe5\xed\x4d\x6d\x2e\x2b\x4a\x4b\x9e\x80\xdd\x6c\x58\x91\x54\xd9\x6c\xd5\x4d\xce\x8b\x5a\x78\x87\xdc\xa2\x60\x06\xef\xc2\xc9\x92\xb2\xa5\x69\xf0\x20\x76\x3a\x31\x0d\x5f\x17\x5a\x05\xbc\x01\x52\x53\x1f\x30\x27\x1f\xd6\x4c\x27\x79\x79\xed\xc5\x00\x64\x45\xa1\xc2\xd0\xbf\x7d\xf7\xb7\xd3\xbf\x9e\xc0\x49\xc0\x7a\x5e\x2b\x1f\xf5\x28\xc3\xc4\xa8\x80\x53\xc9\xc6\x8f\xd7\x64\xa1\x91\x1c\x84\x61\x39\x26\x5b\x65\xa1\x19\x0f\xa7\xa3\x74\x02\xc7\x7e\xe8\xa5\x4f\x55\x49\x89\x4c\x63\x0e\xaa\x5e\x61\xdc\x77\xff\xba\xd5\x11\xa4\xf8\x10\x8d\xe0\x32\x95\x5c\x90\x5c\x86\x73\x4f\x30\x33\x9a\x73\x7e\xee\xce\xea\xe5\xe1\x21\x38\x10\xc3\xe5\x28\xbd\x89\x75\x33\x10\xc7\x02\xe6\x6a\xf7\xc3\xa5\xef\xe1\x7c\x53\xcb\xc6\x53\xc3\xf4\x4e\xdd\xae\xfc\x9a\xc1\x01\x1f\xc4\xd6\x31\x99\x2f\x29\x70\x2b\x71\x2a\x79\x6c\x3d\xb5\x14\x0e\xcb\xdb\x48\x02\x85\x3b\x34\x5a\x74\x28\x45\x17\x25\xa9\x68\xb9\xa5\x5c\x09\x00\x12\x32\x14\x23\x97\xf7\xcb\x37\x44\x37\xac\xdd\xbc\xce\xf2\xcd\x1a\x2f\xaa\x3e\x24\xa8\xe2\x43\x42\x6a\x3e\x24\x33\xcf\x87\xe4\x36\xc7\xa2\x12\x4d\xc0\xdd\xca\xc9\x6e\x9e\x49\x6e\xe6\x4c\x96\x30\xaa\xd5\xea\xcb\xbb\x9c\x92\x83\x1e\xfa\xf6\xd2\xb4\x19\x03\xa0\x6e\x1d\xf0\x71\x86\x5b\x52\xa2\x66\xd3\x56\x15\x50\x0c\x9c\x69\x00\x6a\xe5\x0b\x3c\x96\xf2\xbd\x51\xea\x58\x69\xbf\x45\x24\x23\xb2\xe0\x78\x8c\x94\x06\x8c\x4e\x5a\xd7\x8c\xfe\x70\x9f\x01\x40\x1e\xb4\x00\xe8\xb6\xde\x6b\xbd\x93\x6e\xec\xc6\xd0\x6b\xaf\x31\x9a\x0b\x8c\x26\xb0\x85\xbb\x97\xdd\x56\xa9\xbb\x13\x30\x4a\x54\xd1\xb8\xdb\xed\x02\x1b\xa3\x22\x06\xb5\x58\x8f\x71\xa9\x5a\x0a\x4d\x1c\x8c\x94\xf6\x08\x7e\x32\x17\x64\x68\x32\xf9\x89\xe4\x02\x53\xcc\xa1\x61\x85\x55\x4c\x07\x65\xba\x04\x85\xf3\x02\x8e\x60\xbb\x7f\x67\x2d\x8d\x6b\x4e\x2a\x75\x3d\x66\xaf\x56\xfb\x54\xb3\xc8\xae\xb6\xe3\x99\xab\x4d\xf6\x40\x01\x7d\x8b\x80\x2a\x46\x2a\x3b\x9a\xd6\x9e\x25\x07\x56\x1f\x8c\x1f\x4d\xb3\x3e\xce\xda\x6e\xb3\xb6\xd9\xa7\x6b\x9b\xae\x8f\x36\x0d\xbe\x2d\xbb\x51\xff\xd2\xe8\x4c\x63\xfa\x1a\x5d\x72\x52\xc5\xd7\x96\x9b\x6c\x43\xa9\x30\x2d\x07\x38\x90\x06\x77\xfa\x82\x36\xb7\xba\xde\xd8\x96\xe3\x51\xfc\x3c\x65\xa2\x95\x63\x21\xd9\x7b\x22\x72\xcb\xf5\x7f\x22\xa8\xf5\x43\x95\x64\xfc\xd0\x6d\x9d\x61\xec\x8e\x1d\x51\xf2\x80\xb6\xd1\x99\x32\xde\x9a\x60\x81\x48\x96\x77\x23\x25\xaa\xdd\x83\x94\x42\x8e\x6d\x26\xdd\x46\x6f\x13\x85\x63\x45\x3f\xf8\xb8\xe1\x3a\xea\xbe\x32\x19\x41\x39\xb4\xe6\xdf\x3f\xcb\x1e\x39\x9e\x68\xad\xf3\xcb\xa5\xa8\xfa\x2a\xf6\x3c\x4f\xc3\x70\x51\xeb\x81\xac\x4a\xbe\x9d\x64\x21\x47\x99\xd2\xf5\xd1\x02\x0b\x39\x90\xb4\x1d\xed\xf3\x2f\x30\xac\xd3\x81\x79\x6f\x1d\x20\xe5\x5a\xac\xf3\xcb\xd9\xac\xb9\x56\xb0\x39\xcf\x47\x26\xd4\xec\x20\xd2\x5e\xe1\x51\x12\x91\x49\x86\x95\xfb\x4c\x95\xf5\x37\x62\xbd\xe6\xf9\xd4\x03\x55\x12\x81\xf6\xfe\x72\xe5\x22\x00\xbd\xcd\x93\x54\xa7\x1d\xa8\x00\x1f\xaa\x4e\xc9\x87\xf9\xce\xef\xa0\x12\x5b\xa4\x59\xae\x0a\xa8\x8c\x53\xd2\x2c\x59\x86\x75\x00\xf5\xf0\x24\x81\xe6\xfd\x54\x01\x95\xc0\x25\xcd\xb2\xce\xc7\x1b\x54\x02\x9a\x34\x0b\x5a\x0f\x6e\x50\x8d\x73\x12\x80\x68\xed\x3f\x41\x3d\xfe\x49\xb3\xac\xe7\xd4\x0d\xaa\x91\x51\xaa\x65\x2b\x71\x2b\x00\x2c\xd7\x20\xe9\x41\xb7\xb9\x93\x1e\x2c\x03\xd7\x24\xbd\x3b\x03\x98\xe0\xd5\xea\xb6\x80\x3c\x15\x5d\xad\xb1\x50\xa6\x23\x1c\xe7\x58\x18\x9b\x50\xa5\xe8\xed\x3a\x10\xeb\x3c\x70\x24\xd6\x13\x33\xac\x02\x18\x47\x0d\x9e\xbc\xac\xce\x01\xa4\xce\x02\xdc\x35\x13\x03\x1b\xab\x69\x53\x57\x91\x8a\xa0\xeb\x5f\x27\x36\x2d\xf9\x6a\x11\xc8\xd4\x11\x28\x05\x63\xbd\xff\xcb\xae\x34\xfc\x44\x72\x2c\xbc\xf4\x99\x2a\x90\xce\x5d\xe1\x72\xea\x01\x75\x42\x41\x77\x1e\x27\xa4\x4e\x51\xf3\xfb\xbf\x2f\x82\xe6\x35\x22\xe2\x68\xca\xf8\x97\xf0\x75\xae\x06\x62\x32\xda\x68\xfe\x9d\x69\xa3\x7d\x17\xdd\xaf\x78\x75\x45\xea\x19\xe0\x25\xb7\xe3\x92\xbf\x73\x9b\x6e\x96\xa6\x92\xf7\x39\xa0\x5e\x5e\xdb\xd4\x7f\x58\xad\xda\x7d\x48\xbb\xbe\x4c\x9a\xb6\x7b\xd6\x05\x86\xd0\x16\x55\xc2\xb8\x95\x51\x95\x04\xbe\x8e\xd4\xd3\xee\x15\xbe\x81\xd4\x97\x15\x59\x3d\x73\x6b\xa7\x43\x62\xec\x71\x2a\x02\x40\xae\xde\x69\xed\x61\xe0\xde\xaf\x5c\xae\xb6\x97\x5d\xdc\x64\xfd\x13\xe1\x99\x54\x12\x96\x44\x47\x1c\xe7\xca\x32\x59\x5d\xcf\x60\x22\x66\x98\x4b\x19\x46\xd6\x6e\x31\x5e\x99\xda\x03\xaf\x5b\xf6\xd2\xcc\x70\x1a\xca\xf2\xc5\x13\xf9\xbc\x4d\x92\x18\x96\x06\xfb\x62\x7c\x5d\xc4\x97\x1c\x9b\xe8\x74\xf4\x55\xf4\x9a\xf4\xb2\x71\x6e\x1b\xd5\xa8\x45\xb7\x75\x3a\xad\xdf\x02\x96\x9a\xd9\x73\xd5\xa3\xf3\xf3\x54\x40\xb5\xf5\x2a\xb0\x97\x81\x2c\x8f\x6b\x73\x6e\x7d\xc0\xd3\x0c\x8f\xc5\x6a\xd5\x36\xbf\xca\x63\x60\x2e\xda\xda\xfd\x03\x32\x8d\x1b\x5f\xbb\xf9\x0c\xcd\x2b\x45\x02\x87\xeb\x3d\x67\x9f\x6f\x6c\x21\x9d\x95\xcb\x0c\xe2\x35\x12\x78\xed\xc5\x64\xa3\xb1\x58\x16\x87\xc3\xaa\x53\x89\x4a\xd2\xdc\xee\x19\x43\x29\x77\xce\xdb\xfd\xa2\x28\x63\x7b\xd7\x34\x14\x1c\xd2\x74\x6c\xee\x22\x85\xd5\xdc\x8d\xb5\x77\x82\x8f\x00\x0e\x78\xda\xec\x04\x2d\xe5\x14\x48\x40\x81\xb3\x1c\xb7\x78\x4a\xc3\x92\xbc\xed\x80\x89\x57\xc0\xfd\xa3\x91\xf9\xeb\xd9\x16\xab\x95\xbd\xdd\x68\xa7\x29\x8f\x05\xf0\x11\x55\xb9\xf3\x07\xb5\x5b\x67\xcd\x3b\x2b\x3b\xf3\xf2\x24\x7c\xc0\x53\x2c\xb1\xb2\x3d\x0e\xb2\xf1\xd6\x0c\xe5\x5a\x82\xc7\xb4\x65\x53\x2b\xe5\x78\xd2\x3a\x6a\xa9\x2b\x97\x18\x54\x4a\x18\x0f\xda\x32\x15\x52\x11\x63\x90\x88\x60\xbe\xd1\x78\x1c\xde\xba\x83\x32\xe5\xb3\xf7\x36\x88\x95\xcb\xdd\xbc\x5a\x05\x6b\x49\xcc\xba\xeb\x65\x9f\x24\x61\x6f\x18\x57\x6c\x50\x20\xe7\xa9\x9a\x32\xd5\x40\x59\x56\x89\xa5\x69\xf0\xe4\xc9\xd2\xc6\x78\xbb\x2c\xef\xf4\x48\x75\xd3\x77\xaf\xd2\xcc\xbc\xd3\x96\x2b\xd3\x4a\x4f\x50\x4c\x20\xb6\x37\xf6\xcb\x98\x80\x5a\x1e\x97\x4a\x90\x06\x63\x26\x4e\x00\x8c\x45\xca\xbd\x54\x54\xa0\x74\xc2\x4a\x31\x14\x5d\x41\xe6\x98\xbf\x9d\x68\x27\x20\xe1\x82\xd7\xc6\x04\x0e\x6f\xaf\xf0\x4d\xd2\x30\x97\xb3\xb9\x33\x2b\x36\x73\xf2\xc0\x6a\xb3\x40\x03\x2e\xe0\x4c\xa0\xbe\xbb\xc6\x6b\x6e\x5f\xf7\xd9\xc4\x19\xbb\xb5\xd2\xd8\xf1\x1e\xb3\x38\x50\x14\x05\x34\x03\xa8\x1b\xdb\xd6\x47\xe0\xbb\x3e\x18\xe5\xb0\x3f\x16\xa3\x6b\xf3\x27\xaa\x28\x46\x00\x92\x22\x16\x5d\x67\xd8\x09\x7c\x1d\xf1\xbd\xab\x65\xcd\x8d\x58\x60\xbd\x58\x6d\xbd\xf4\x91\x4f\x31\x64\xa5\x72\x26\x15\x90\x75\xa7\x26\x94\x19\xeb\x4e\xc8\x44\xbb\x84\xaa\xdc\x86\xdd\x65\x8e\xf3\xd7\xa7\x3f\xdb\xe0\xa2\xf2\x95\xcd\xc5\xf3\x4a\x5f\x47\xaa\x97\xbb\x2e\xb6\x67\x20\x69\xee\x1b\xca\x91\x13\x70\x4b\xfd\xee\xf4\x20\x0d\x99\x3b\xc7\x00\xde\xbb\xe6\x04\x14\x30\x40\x2a\x54\x93\xcc\x98\x56\x4d\xf4\xdd\x83\x55\xbb\x0d\xf4\xc2\xd5\xc6\x6f\x42\x1b\xae\xa9\x53\x53\x7b\xb9\xfb\xdb\xa0\x8d\xb5\x0f\xc8\xf9\x98\x95\xcf\xeb\x60\x19\x33\xf0\xc6\x22\x54\x7b\xc6\xe8\xda\xbe\x6c\xb3\x99\x4d\x25\xeb\x5c\x56\x99\x8c\x4a\x87\x39\x9e\xb3\x4f\x78\xa3\xc9\xd0\x2a\x02\xb7\xae\x56\x55\x51\x1b\x90\xd1\x3c\xdb\xe1\x4c\xa7\xeb\xc0\xd9\x1f\xa9\x3e\xd7\xa1\xd3\x34\xdb\xe5\x34\xc1\x40\x56\xe2\xcd\xcc\xf7\x5e\x32\x26\xc7\xb0\xdd\x71\xbc\xc2\x2a\x5a\x6e\x77\xc1\xf1\x84\x8c\x91\x70\xae\xbc\x21\x71\x05\x0d\x50\x90\xac\xa5\x69\x8a\x0a\xc8\xba\x46\xc1\xc8\x5f\xb2\x25\x9d\x7c\xd1\xf3\x69\x21\xbf\xa1\x69\xc3\x4c\xd9\xb3\xa6\x35\x23\xd3\x2c\xba\x62\x7c\x68\x73\x64\x31\x29\x33\xb6\xde\x7f\x80\x25\xd7\x05\x6b\x7d\x88\x81\x8b\x6a\xe2\xa9\xbc\x63\x6f\xe7\xe8\x1a\x4a\x4e\x50\x44\xa9\x5a\x1f\x54\x5f\x98\xe9\xea\x6d\x7f\x44\x2a\x10\x8c\x66\xa1\x6c\xc6\x39\xcb\xe8\x53\xf2\xe0\x7e\xbe\xb9\x63\xb3\xdf\x2d\x5e\x9b\xfc\x14\x4f\xf4\xb0\x8e\x54\xfa\x9f\x7b\x6c\x3c\x6d\x4a\x8b\x2f\x1e\x56\x4c\xf7\x41\x47\xf8\x4f\x79\x53\x3f\x5b\x95\xde\xad\x6f\x43\xcf\xa5\x34\xe7\xab\x95\xa7\xd3\xd1\xb1\xd7\x1a\x39\x03\x80\xf5\x80\xd6\x63\xf5\x2f\x4c\x86\xbc\x6a\x20\xf3\x43\x59\xf0\x87\x96\xc0\xf3\x45\x86\x04\x6e\xe9\xe1\x2b\x75\x93\x76\xbf\x98\x44\xc5\x48\x5b\xd6\xda\x6b\x46\xdd\x60\x57\x97\xfc\xff\xd9\x7b\xb7\xf6\x46\x8e\x2b\x41\xf0\x9d\xbf\x82\xcc\x75\x43\x99\x66\x00\x05\x90\x2c\x5d\x50\x95\xa2\x4a\x75\xb1\xca\x56\x5d\xba\x8a\xf2\x0d\x86\xe9\x24\x10\x20\xc2\x95\x88\x84\x22\x03\x64\x51\x04\xbe\xaf\xa7\xc7\xe3\xf1\x78\x3c\xbd\x1e\xb9\xb7\xdb\xeb\xb5\xb5\x5e\x8f\xd7\xe3\xf1\x7a\x3d\x76\x6f\x4f\xaf\x64\xf7\x78\x1e\x24\x4b\xea\x9f\x21\x3d\xea\x65\xff\xc2\x7e\x71\x8f\xc8\x0b\x6e\x55\xa4\x55\x12\xea\xa1\x78\x10\x19\x97\x13\xb7\x13\x27\xce\x39\x71\x8e\x4f\x6c\x69\xc7\x0c\x2f\xd5\x6a\x3a\xb4\x3e\xe6\xb1\xcc\x85\x3d\x70\x86\x27\x2c\x1d\x1f\xdd\xb8\x81\x58\xb1\x65\x38\x5f\x59\x41\xf9\x9c\x3e\xde\x61\xcb\x46\xa7\x39\xab\x50\x2b\x48\x5b\xc8\x26\xfc\x7f\xfc\xa4\xda\x7f\x92\xc5\xfb\x0e\x1f\x4b\xc7\x3f\x4e\xe1\x8e\x51\x4f\x59\x50\x97\x1a\x34\xa3\xe5\x0d\x9a\xa5\x69\xd2\xe2\x66\xcd\xa0\xc8\xa6\x79\xd7\x31\x66\x6e\x3e\x06\x4b\xe6\x5d\xd1\x37\x15\x45\x38\x27\xe0\x3b\x07\xdb\xe0\xe4\x4c\x2c\xd8\x1f\x8f\x42\x30\x2a\x24\x4e\xb9\x88\x6f\x38\xe4\xae\x8c\x91\x08\x3d\x93\x14\x84\x9e\x41\xd2\xf4\x4a\x9b\x89\x50\xee\xb8\xdf\x89\xd5\x1c\x4d\x27\x73\xfc\xa1\xde\xa3\x7a\xbf\x35\x6f\x39\x1e\xe5\x01\x87\x74\xc4\xbb\x68\x5c\xc5\xe9\x02\xfe\x47\xf5\xc5\x0b\x10\x48\x40\x04\xd2\x47\x67\x45\x58\x1f\x0b\xdc\x92\xc6\x85\xd1\xf6\xc4\x29\x7a\x83\x5d\x4d\xd3\x61\x1c\x71\xc5\x64\x68\x9e\x0d\x42\xe0\xad\xfb\xdc\xdd\xb5\x17\x00\xc2\xad\x7e\x1c\xab\x3a\x59\xda\xb1\xa7\xcb\x98\xbb\x65\x6c\x2a\xa7\x18\x54\xfa\x75\x90\xe6\x82\xe4\x04\xd2\x72\x18\x20\xe3\xbc\x36\xab\x70\x85\xda\x3a\x6f\x8a\x69\x5e\xde\x2e\x6f\x12\x58\x71\x09\x55\x57\x42\x08\x0a\xe5\x71\x3e\x95\xfd\x57\x93\x60\x68\x68\x00\xe8\x44\x8e\xbb\xf0\xbf\x9b\x33\xdf\x8d\x0b\x03\x05\x5a\x3d\xd2\x83\x3a\xf7\x40\x66\xc3\x00\xcd\x31\x90\x70\xe6\x40\x52\x67\x48\x8a\xc7\x01\xda\x15\x14\x0d\x06\x9c\x94\x2a\x39\x3c\x2a\x9c\x3b\x78\xe0\xd4\x35\xeb\x3b\x84\x85\x6e\x20\x6b\x32\xff\x64\x52\xae\x38\xf1\x7a\x09\x81\x47\x90\xcc\x5d\xa7\xcc\x3f\xb5\x4e\x12\x1d\xef\x2d\x88\xaa\x29\x32\xb5\x66\xed\x49\x78\xce\x8a\xb1\xf1\x3d\x3c\xb5\x5e\x7e\x23\x98\xab\xc6\xa4\x16\xc5\x33\xeb\xd2\x21\x36\xe7\xaf\x52\x16\x99\x5a\xb3\x08\xae\x39\x67\x9d\x2c\xf3\x8c\x59\x62\x74\x7e\xce\xda\x58\xe6\xa9\xb5\xd9\x92\xee\x39\x6b\x8d\x1c\xf1\xf8\x3c\xb5\x73\xca\xb3\x68\xed\xbc\xd0\x3c\xb5\xdf\xd5\xe7\xe3\x62\x0d\xa8\x72\x93\x89\x0a\x1b\x2a\x18\x87\xfd\x14\xd2\xab\x71\x94\xa6\xa8\x73\x0d\x76\x12\xe9\x3b\xc8\xfa\x26\x8d\x0a\xf4\xc7\x4c\xc4\x53\x57\x87\xb6\x4e\xb9\xdf\x0b\xd5\xba\x16\x3e\x71\x12\xc3\x8d\x3c\x05\x20\xbc\x63\x64\xcc\x16\x60\x20\x99\x0f\x51\xcc\x36\x54\x5d\xd3\xef\xd9\x28\x23\xc5\xb3\xf8\x10\xa1\xbd\x79\x8d\xdd\xb9\x72\x9f\x67\x30\x28\x67\x6c\xc4\x65\x12\x4e\xb9\xc5\x50\x01\x02\xc0\xe0\x6f\x4f\xe8\x64\x46\xaf\x25\x63\xb5\xfc\xed\xd2\xa7\x9f\x54\x4b\x03\xf2\x09\x54\x96\xe3\x8c\x42\xdb\x51\xc2\xf9\xf8\xb1\x2a\xcb\xd1\x4a\x59\x3e\x55\x59\x1e\x65\x95\xe5\xd1\x59\x2a\xcb\x93\x02\x65\x79\x62\x4b\xce\x36\x88\xa3\x2c\x67\xb7\xe8\x42\x65\x39\xf9\xf3\x2a\xcb\x89\x63\xcd\xa2\x97\x6e\x74\x8e\xca\xf2\xac\xa9\xc9\x19\xd9\x22\x8d\x9e\x08\x5b\xa4\x38\x6f\x8b\x34\x2a\xb0\x45\x1a\x29\x5b\xa4\x25\x0e\x43\x94\x5e\x17\xe1\x21\x45\xd9\x22\x63\x03\x58\xa9\x14\x3a\x23\xaa\x25\xb8\xf8\xc4\x80\xb5\xa4\xd7\x1b\x8f\x4b\xca\x2c\x5c\x24\xab\x22\x2d\xa9\xa0\x40\x7f\xc8\xed\x1d\x72\x6f\x5e\x73\x16\x0f\x73\x7b\x05\xda\xde\xc5\xd5\x6d\xe1\x15\x68\xdb\xf1\x0a\xb4\x9d\xf1\x0a\xc4\x9f\x87\xd6\x8e\x51\x1c\xab\x77\xb6\xc6\x09\x82\xfb\xa1\xa6\xde\x3a\x71\xed\x55\x9a\xc2\x74\x5f\xbd\xa7\x25\xe9\xfe\xbe\x8a\x4f\xe7\x94\x01\x69\xd8\x6a\xaf\x39\x49\x61\xc1\x83\x03\x1a\xd6\x01\x09\xb5\x2f\x60\x7a\x99\x5c\xa2\x9b\x9b\x41\xda\xa2\x6d\x3f\x58\x8b\x24\x49\x83\xce\x0b\xb1\x45\x70\x0b\xd3\xc9\x22\xd9\x85\x43\x55\x9b\xb8\x53\x13\x93\x98\x32\x62\x1b\x70\x04\xe4\xed\xb3\xcc\xec\xe5\x44\x9a\xbd\x90\xe8\xb8\x2c\xcb\x81\xc9\xb2\x37\xbd\xb2\x7d\x99\x53\xeb\x31\xf7\x92\xbb\x42\x02\x15\x1e\x03\xa8\xbd\xab\x85\x50\xdd\x5f\x43\x68\x14\x65\x21\xac\xed\x2b\x5e\xdc\x7a\x99\x9f\xf5\x72\xe4\x24\x09\x17\x76\x4e\x12\x37\x11\x71\xcb\x49\x95\x65\x08\xb3\x0a\xd6\x10\xe6\xd4\x89\x21\x94\xaf\x02\x43\xe8\x3c\xaf\x08\x61\x4d\x8b\x7a\x1d\x47\x01\xce\x52\x51\x94\x06\x72\x8f\x95\xa7\xa9\x7a\x44\x66\x7c\x87\xca\x17\x26\xc2\x85\x7d\xa8\x63\x1c\x33\xd2\x24\xb4\xc0\x9e\x94\x79\x78\x39\xed\xaf\xd4\x6c\xda\xfe\xe9\x5d\x67\xf3\x50\xe8\x1f\x21\x3b\xcb\x6d\x74\x3b\xd2\xde\xc8\x71\x59\x93\x73\x5f\x22\xc4\xcc\x70\xfa\x69\x90\xe0\x23\x48\xe8\xba\xe6\x8a\x18\x5b\xc8\xd9\x43\x9a\x48\x5d\x00\x63\x0d\x43\x2d\x19\x5e\x33\xbb\xa7\x71\x89\x5e\xce\x12\x04\xbe\x83\xb2\xae\x79\x5a\x94\xef\x78\xc1\xb3\x9a\x77\x8e\xec\x1c\x5e\x27\x41\x4e\xf8\xdf\x8f\xd2\x3b\xc7\x58\x0b\x71\x38\x37\xc4\x2e\x5f\x95\x8a\x0f\x5b\xb8\x1d\x92\x16\x6e\xeb\x28\x83\x70\xb2\x96\x99\xd7\x1e\x1f\x9c\x6e\xe8\xed\x4b\x6f\x6e\xfb\x82\xd7\xde\xdf\xf7\xd6\xf4\x5a\xe8\xea\x7e\xf4\xc3\x96\xf7\x02\xdf\x97\x17\xaa\x08\x53\x48\x70\x14\xa7\x17\x0e\x63\x34\x18\x40\xa2\x04\xc4\xe5\x39\xf4\x85\xac\xe4\xb7\xd6\xa4\x89\xd7\x90\xfa\x73\x9f\x0e\xe2\x83\x88\xa4\x17\x1e\xc0\x93\xe3\x84\x74\xd3\x0b\x1d\xa1\x2e\xac\x66\x32\x92\x64\x44\x11\x3e\x5c\xb8\x40\x69\xbe\x36\x18\x86\xf5\x4b\xc3\xcb\x7d\x35\x65\x43\x46\xa4\x7b\x7e\xbf\x35\x6c\x23\xf5\xe2\x77\x7f\x3f\x4e\xa2\x2e\x5f\x8a\x87\x28\xa5\xe4\x24\x38\x35\x63\x17\xe6\xf2\x70\xbb\x12\x5e\x43\x20\x73\x09\xa7\x9c\x93\x82\xfd\xc8\x0e\xdb\xce\xbe\x48\x16\x73\x92\xdd\xc4\x22\x87\x4e\x15\x99\x0a\xb6\xbf\x87\xe1\x43\xea\x7e\x13\xc4\xc2\xe3\x4b\xde\xfd\x22\x29\x8b\x27\xb5\x47\x6b\x05\x84\x48\xaa\xae\x45\x70\x26\xe5\x3a\x23\x4b\xc1\xd6\x8a\xa8\xda\x80\x17\x39\x2a\x21\x1d\x39\xba\x91\xed\x5f\x58\x98\x2a\x22\xea\x53\x1d\xa9\xba\xe6\x0c\x5c\x98\x4f\xb2\x0a\x14\x90\x21\x1e\x84\x22\x6f\x5c\xc1\x65\xc1\x92\xcd\xf5\x61\x78\xac\x0c\x67\x58\xf6\xa2\x23\x50\xda\x6d\xe4\xe7\x28\x5f\xb5\x9b\x57\xcf\x78\x51\x46\x43\xe5\xcc\xf1\x71\xc4\x07\xf5\xc4\x3d\x9b\x7c\xac\x2c\x8b\x68\x88\x7c\x1c\x64\xe2\x67\x71\xca\xa3\x03\x8b\xc9\x98\x62\x01\xf0\x49\x48\x1d\xb3\xa0\x41\x1a\x42\x40\x5c\x73\x4a\x8b\x76\x63\x35\x68\x33\x7b\x69\x1e\x07\xe7\x6d\x29\x63\xee\xf9\xbf\xd8\x72\x92\x02\xb1\x7a\x19\x03\x26\x02\x5c\x04\x13\x39\xcd\x83\xec\x28\x4f\x19\xb9\xa5\x4c\x21\xf1\xc4\x3f\x52\x8f\x07\x31\x3c\xf6\xe7\x1e\x60\xcd\x1b\x98\x91\xa5\x25\x6f\xe9\x97\x18\xca\x45\x17\x0c\xef\x06\x5b\x32\x8a\xf7\x38\xe4\x68\x1f\xd8\xef\xbe\x69\x6e\xef\xf1\xba\x42\xca\x8e\x0d\xcd\xbe\x1c\xf0\x82\xfb\x4f\xda\x4a\x2b\xf1\x4b\xfd\xd8\x17\x19\xbb\x20\x10\xd5\xd2\xfc\x0b\x4c\x8f\xd7\xb1\x11\xc6\x14\xc4\xfc\x21\xe1\x69\x81\x23\x6c\x11\x08\x94\x63\x2f\xf4\xf5\x92\x6e\x87\x21\xd9\xa5\x9a\x41\xc2\x41\x93\xaa\xe0\x12\x3c\xce\x02\x8f\xf3\x9a\x19\x49\x9f\x80\xba\xa5\x51\x93\x2a\xd4\x0c\x35\xc5\xe3\x71\x26\x09\xe8\xac\x85\x62\xcc\xe1\xc9\x05\xf6\x5f\xb1\x6c\x56\x7e\x64\xed\x3f\x7e\xab\x2e\x25\x8e\xb5\x6a\xc5\x42\xb6\x65\x24\x28\x96\x60\x64\xd7\x12\x79\x35\x89\x0f\x83\x60\x3c\x16\xac\xa1\xf6\x64\xbf\xce\xbd\xc1\x6e\x64\x0d\x54\x2a\x15\xed\xc1\xa5\x26\x7c\x67\xda\x56\x2b\x35\xd6\x43\xb6\x2f\x32\x52\xa6\x75\xe8\x4b\xbd\x71\x39\x52\x38\x83\x14\xb6\x90\xc2\xaa\x05\xbc\x26\xbc\x5e\x48\xd9\xfa\x48\x71\xe9\xa8\xe7\xa3\x4a\xc5\x1f\x85\x49\x8d\xb3\x67\x77\x7a\xac\xfc\xf3\x61\x5d\x15\x8c\x5a\x23\xce\x70\xba\xfd\xc1\x01\xc7\x27\xd5\x96\x04\x01\x40\x9c\x17\x1d\x99\x3b\x60\xb5\x3a\x7a\x3e\xac\x5f\x0a\xd2\xd6\xa8\x1d\x42\x9f\xfd\x91\x5d\x11\x92\x2e\xd4\xf3\x73\x43\x82\x83\x80\xd5\xc9\x47\x43\xe4\x5d\x53\x79\xb1\x2d\x97\xb9\x16\x51\xc8\x72\xc2\x63\x0e\xfa\xb8\x76\x28\xf6\xaf\x1f\x88\x12\xa7\x69\x78\x2a\x5e\x12\xc4\xda\x40\x2f\x21\x7e\xcc\xd8\x64\x3c\x1f\x9b\x8c\x41\x1c\x54\x2a\xde\xfe\x3e\x1b\xee\xb8\x96\x8e\x0e\x84\x01\x8e\x5f\x07\x5b\x8c\x7f\x4e\x5b\x71\x3b\x44\xbb\xd0\xc7\xad\x58\xf5\xac\xc9\xe0\x60\xc2\x86\x34\x11\x77\x50\x1c\x80\x48\x40\xa9\xd1\xbb\xa6\x13\xb6\xce\x00\xde\x6d\xb5\xe5\xf3\x61\x05\xc9\xe7\x0f\x9f\xa0\x57\x7f\x53\xf6\x3b\xdf\xd2\x67\xff\x80\xbe\xe8\x71\x3c\x6b\x9e\x0f\xf8\xa4\xd0\x04\x75\x38\xd5\x9c\x45\x93\xab\x79\x68\x14\xbb\xea\x3e\x5a\x4f\x4a\x0b\x08\x24\xe6\xd4\x5e\xcb\xd1\x98\xaa\x64\xbc\xaa\x27\x65\xae\x4a\x89\x55\x69\x7e\x14\xbb\x11\x8d\x2e\x54\x87\x04\x1d\xf1\x68\x64\xf6\x40\xbe\x60\xe5\x48\x69\x42\x8c\x2d\x0f\x4f\x92\xfe\x52\x32\x19\x07\x49\x17\xc6\x56\x85\xf9\x5a\xca\x3e\x12\xd8\x49\x48\x37\x83\xd0\x7c\x9e\x56\x69\x48\x2b\x95\xb9\xc8\x05\x05\x9e\x1c\x0d\x2f\xd8\xd5\xc3\xdd\xa4\x80\x84\x64\xce\x2a\x88\x5d\x85\x1e\xdc\x26\x71\x4c\xbd\xb8\x37\x90\x61\xd4\x81\x7a\x2d\x7f\xf1\xfa\xbd\xfb\x37\xef\xdc\x6e\x12\xe1\x85\xc0\xbb\x76\xdf\x9b\x04\x32\xba\x62\x8c\x0e\x48\x44\x10\x4c\xd5\x73\x6f\x9d\x20\x6f\xa3\x90\x5c\x4d\x08\x7c\x99\xa7\x9e\xf8\x1e\xcf\xc4\x68\x6a\xc4\xe3\xc7\xc1\xda\x7d\x36\xb0\x21\x2d\x5f\x33\x5c\x06\x92\xce\x6d\xeb\x20\xb2\x4f\x5d\x85\xb7\x22\x7c\xc2\x8f\x99\xb9\x2b\xd5\x25\xa6\xd6\x2b\xa5\x6d\x8b\x57\x9f\x2d\x38\xb5\x95\x2b\xdd\x68\x48\x21\xb9\x9b\x0c\x85\x5f\xdf\x7b\x7c\xf1\x2d\xd2\x20\xaa\x4d\xa9\x63\x6a\xdb\x37\xa5\x44\xe5\x16\xdb\x2a\x73\xb7\xe6\x94\x9a\x67\x04\x17\xeb\x8c\x5d\x68\x9e\xda\xa5\x2d\xea\x82\xd5\x8b\x52\x53\xeb\x5f\x66\x26\xe6\x1d\x79\x2b\xdf\xad\x08\x47\x87\x73\x5b\x2b\x39\x4d\xc8\xa2\xd3\x5b\x4a\x12\x2a\x03\x3c\xce\xdb\x80\x2a\x31\xb5\xde\xfb\x38\x1a\xa6\xfd\x64\xfe\x81\x57\x05\xe6\xaa\x75\x99\xb1\x2f\x28\x3b\xb5\xad\x4e\x02\x49\x07\xde\x9c\xd7\xa4\x09\xd5\x54\x81\xa9\xb5\xe2\x84\x0c\xb8\x35\x06\xdf\x1e\xdc\xad\xcb\xbc\xf5\xe7\x8b\xce\xb1\x86\x04\xed\x9d\xd3\xe4\xc9\x14\x99\x51\xb3\x08\x25\x9a\xf6\xd1\x70\x81\xba\x4d\xa1\x09\x67\xa8\xae\xdd\x0f\xa3\xf2\x46\x4a\xd8\x97\x12\xc6\x20\x12\x24\xae\x9c\x2f\x50\x19\x1e\xf3\x95\xaf\xdc\x6c\x4f\x9e\xbc\x8b\xf3\x53\xd3\x7b\x98\x5e\x80\xf2\x84\x9c\xd1\x53\x91\xef\xdc\xfa\x7b\xe5\x20\x21\x54\x86\x69\x9d\xb3\xcb\xa6\xc8\x3c\x27\xe0\x62\x75\xcf\xc7\x9e\xe2\x5e\x8c\x3a\x0b\x62\xed\x94\x9a\x5a\xff\x8d\x84\x1c\xa0\x6e\x17\xe2\xc5\x1a\x70\x8b\xcd\x38\xa0\xf9\x5b\x93\xc5\xea\xb7\x0b\x4d\xad\xfd\x76\x42\x6f\x24\x23\xbc\x60\xf5\x4e\xa9\xe9\xc4\x9c\x3f\xe7\x5b\xac\x76\xab\xcc\xd4\xba\xa5\x48\x6c\xb1\xca\xed\x42\x53\x6b\x7f\x05\x47\x23\xda\x4f\x08\x7a\x0d\x2e\x38\x3a\xb9\x92\x53\xdb\x11\x5b\x9d\x1f\x55\x7b\xc9\x4b\xf3\x9b\xc2\xd2\x5a\xae\xe4\x1c\xed\xb0\x6c\x7b\xc9\x22\x87\xaa\x6a\xc7\x2a\x39\x07\x01\xfb\x66\x9a\xe0\x6a\x34\x44\xb3\x49\x98\xce\xf9\xe4\x53\x6d\x02\x53\x3a\xbb\xc3\x3c\xd7\x93\xdb\x59\x4a\xa7\x9c\xc0\xfc\xc2\xfd\xb1\xed\x1c\xc3\xbd\xbc\x67\xa5\xd2\x1b\x84\xb9\x15\x1e\x7f\xd0\x53\xc4\x6e\x4c\x3b\x9a\x67\xac\xf9\x29\x2b\xc4\xfd\xc4\x5f\xb0\x14\x0e\x76\x46\xa8\x01\x89\x34\x64\x2e\xfd\x50\x2a\x0f\x31\x39\x18\x7e\xd3\xbf\x16\x60\x6f\xe5\x28\xe8\x80\xf5\x95\x92\x08\xa7\xf2\x41\xee\x0c\xb1\x8e\x85\xaa\x33\x53\xca\xdc\xb9\xca\xcb\x54\x53\x48\x8e\x50\x27\x93\x8b\x9b\x8d\x57\x3b\x09\xa6\x11\xc2\x79\xae\xd0\x7e\x5f\x05\x46\x20\x06\x3a\x44\x05\x18\x80\x23\x70\x92\x59\xb5\xa8\xe7\x3f\xb2\x2d\xb7\x34\x5f\x97\xc2\x97\xda\x80\x1b\x8d\x5e\xf8\x7a\xe3\x6b\x35\xbf\x55\xaf\x3e\xd7\x1e\x37\x5a\xf5\xea\x56\x3b\xf8\x5a\xed\x82\x6d\x44\x28\x4a\x49\xc3\x11\x23\x6d\x59\x57\xfe\x24\xd6\x23\xba\x1e\xc3\x28\xa5\x22\xe7\x7a\xa3\xd6\xd8\xae\xd5\xc1\xfa\xc1\x88\xf2\x40\x53\xfc\x19\xa9\xb7\xe9\x34\xbe\xe9\x69\x27\xc2\xa3\xe1\x21\x89\xba\x90\x65\x25\x76\xe0\x61\x9e\x1f\xac\xd3\x3e\xc4\x3a\x8f\x69\xbd\xe6\x05\x6b\x83\xda\xb5\xfb\x52\xda\x33\xd4\xbe\xe6\x79\xa2\x7d\x81\x0f\x07\xce\x4f\x27\x83\xb4\xea\x1b\xb8\xbf\x9d\x2c\x5a\x84\x62\x72\xe9\x24\x91\x91\x5f\x95\xc2\xd4\xc5\x40\xdf\x60\xc3\x81\x81\xc5\x27\x46\x06\xc2\x94\xff\x11\x09\x42\xc0\x14\x0e\x24\x20\x12\x1d\x11\x47\x38\x70\x7f\x8b\x2c\xea\xb6\x19\x0e\x34\x28\x3e\x48\x76\x36\x24\x2e\x4e\x36\x97\x1b\x62\xf7\x9b\xcd\xb1\x85\xd8\xf9\x29\x32\xd8\x8c\x4b\x88\x9d\x9f\xb2\x76\xcd\x6a\x87\xd8\xfa\x21\x3e\xe6\x78\x92\x10\xe7\xd3\x44\x56\x97\x37\x0d\x71\x26\x41\x64\x72\x38\xc0\x10\xbb\xbf\x45\x16\x87\x89\x0e\xb1\xfb\x5b\x0e\xa0\xe1\xf4\x42\x6c\xff\x12\x9f\x73\x8c\x47\x88\xf3\x69\x76\x56\x8b\x17\xd2\x59\xad\x34\xdd\xa8\xa4\x44\xe1\xc8\x9d\x83\x6b\x8c\xc8\xaa\xb9\x8b\x32\xeb\xc9\x48\x14\xd8\x8a\x32\xbf\x9c\xa9\x2d\x12\xbf\x85\x83\x69\x5f\xe5\x12\xb6\x16\x79\x66\x75\xe7\x65\x3d\x6e\xfb\x32\x51\x66\xbe\x7e\x7f\x4f\x75\x20\x71\x3b\xf0\xe2\x08\xc5\xdd\x57\xee\xbd\xcc\x95\x1a\x21\x71\x7f\xaf\xe9\xd2\xd6\xe8\x74\xdd\x0a\x3e\x7f\xff\xce\x6d\xeb\x6b\x27\xff\xf5\xca\xdd\x9b\xaa\x71\x54\xf8\xd5\x2a\xde\x73\x33\xec\xa9\x33\x21\xec\x67\xe6\x24\xa2\xd0\x7c\x8c\xdd\xdf\x72\x42\xb9\x8e\xcd\xce\x94\x49\x91\x4b\x76\xc4\x88\x97\x9d\x2d\x93\x22\xc7\x49\xf8\xb6\xb1\xf3\x65\x93\x24\xd5\x18\x1c\xc0\x6e\x57\x4d\x66\x2a\xc6\xb5\x5b\x98\x2c\x0a\x1c\xc0\x38\xc1\x87\xe9\x5e\x12\xa6\x06\x16\x9f\xfa\x51\xca\xa6\x3d\x4c\x15\xa4\xe6\xde\xc8\x53\xf8\xac\x9b\x9f\x22\xc3\x3e\x3f\xe4\xae\xaa\x33\x2e\x3c\x71\x07\x6f\xdf\x9c\x94\x9c\x4c\xdf\x17\xe7\x64\x78\xa4\xb3\x15\x9f\x69\xac\xf0\x5c\x62\x2c\xf3\xea\xa4\x91\x79\x75\xd2\x90\x76\x0c\xc3\x22\x91\x96\xb2\x7e\x61\xed\x58\x0f\x9c\x0e\x4b\x39\xb3\xb2\xf3\xfe\xcc\x15\x81\x76\x9d\x3e\xac\xc5\x49\xf2\x60\x34\xdc\x85\x4d\xae\xe1\x14\x83\x1e\xc8\x54\xdf\x93\x68\x35\x05\x23\x13\x14\xe8\x31\x6d\xbe\xed\xc9\xe4\xa1\x67\x5e\x10\x88\xb5\x48\xa7\x48\xb0\xce\xb7\x97\x7a\xbb\xcd\xdd\x4f\x5d\x62\xd6\xd3\x55\xb6\x5b\xe7\xae\x55\xe6\x2f\x1f\x3d\x9b\x7f\x2f\x55\x7f\x9a\x3c\x4f\xc4\x2a\x59\x9b\xda\x4f\xf1\xe0\x92\x51\xcc\xaa\x50\xba\xa6\x79\x37\xf9\xd3\x2f\x1a\x1f\xd7\x41\x28\x3a\x09\xe6\x99\xf9\x79\xa4\x27\x45\xd7\xb1\x8f\xeb\x38\xcc\x24\x19\xd9\xae\xcf\xdd\xed\x4f\x46\x97\xa7\x8b\x8d\x9e\x94\xd5\x3e\x47\x97\xdd\xfb\xf8\x0c\xf3\x8e\x73\xb0\xdb\x0b\x4e\x73\x6e\x6f\x68\x08\x6b\x88\xc7\x33\x1c\x8f\x15\x84\x12\xbc\x26\x8d\x4a\xb9\xca\x10\x53\x92\xc4\x31\x97\xb0\x28\x91\x45\xe6\xe4\x07\x26\x3b\x49\x46\x5c\x7c\x51\x92\x93\xbf\x2a\x04\x36\x16\xf5\x35\xa8\xed\x2c\xee\x0c\xf9\x49\x7a\x23\x21\x7b\x27\x43\xc8\x19\x0c\x7d\x3a\x9c\xa6\x08\x1f\xc6\x90\x26\xb8\xb9\xd1\xe0\x1d\x2c\x2b\xa5\xe5\x54\xf9\x22\xfd\x28\xbd\x27\x5e\x18\xf0\x33\x3b\xc7\xc2\xb0\x41\x50\xd5\x66\x3f\x02\x3d\xe7\xdc\x75\x58\x19\xb7\x23\x33\x9f\xeb\x64\x9f\xdf\xa2\xb6\x64\x59\x73\x6c\x60\x93\xfb\x89\xed\xb0\x36\xb4\x3a\xaf\x20\x36\x26\xc1\xdb\xae\x35\x9e\xae\x3d\xeb\xe5\x31\x83\x31\x1c\x40\x4c\xa5\x5b\x26\xfd\xe6\x47\xa5\x9f\x15\xb2\x6b\x99\x17\xee\xea\x45\x70\xa9\xa7\xb9\x35\xd4\xf3\xe7\xf1\xfb\xe5\xd6\x28\xac\x3b\x5b\x6d\x80\xc3\x8d\x3a\x40\xdc\xdb\xa9\x1a\x1d\x4a\x4e\xf4\x83\xca\x08\xa4\x21\x2c\x70\x16\x77\x69\xc3\xc7\xa1\x1f\x85\x69\x0d\xc3\x87\xd4\x0f\x82\x5a\x37\xc1\x30\xa8\x54\x7c\x22\xcc\x4c\x23\x61\x95\x1f\x80\x0d\x3a\x1e\xab\xc0\x77\xdc\xbd\xc1\x25\xd6\x64\x70\x49\xbe\x6f\x1f\x05\xa7\x88\xa1\x90\x84\xa3\x49\x0f\xe1\x28\x8e\x4f\xb8\x2f\xeb\x0d\x5c\xa9\xa4\x35\x81\xbb\x81\xfc\x40\x67\x42\x3d\x1f\x49\x81\x66\x32\x51\xc6\xf7\x64\x22\x7c\xd0\x3d\x36\x0f\x7b\x5e\x30\xb1\x3d\x43\x06\xa7\x93\xac\x41\xa7\xf4\x79\xa6\xa2\x0e\x67\x43\xe6\xd2\x99\xf1\x72\x85\xbd\x7d\x74\xc8\x3d\x62\x11\x15\x39\x71\x30\x4c\xb0\x72\x35\x4d\x26\x40\xba\x27\xc9\x45\x81\x21\x21\xf5\x21\x68\x04\xad\x3a\x37\x8f\xe6\xc1\x1a\xad\xfa\xd4\xe4\xe7\x2b\xb5\x63\x93\x9b\xb7\xf8\xea\x09\x38\x77\xed\xa9\x70\x5c\x1f\x46\x69\x0a\xbb\x6c\xbc\x58\xf2\x37\xe4\x0e\xf8\x86\xf2\xf2\xc9\x3d\x51\x1c\xc0\xf5\x68\x5d\xd6\xc7\x57\x10\xde\x0c\xbd\x75\xff\x24\x19\xa9\xe2\xdf\xf0\x36\xc9\xa6\xf7\x8d\xc0\x93\x33\x8f\x82\xd3\x49\x36\x5e\x17\xd6\xaf\x4c\x32\xa3\xe2\x55\xbb\x27\x38\x1a\xa0\x8e\xde\x7f\xaa\xa7\x4e\xaf\x76\x0b\x46\x2f\x57\xb4\x1a\xc5\xd4\x6b\xce\x93\xd3\x2b\xa4\x59\x87\x90\x56\x85\x60\xa2\x48\xbf\xd3\x49\x70\x3a\x8a\xab\x23\x74\x41\xe6\x81\xf8\x08\x91\x04\xf3\xfa\x9e\x44\x12\xdd\x27\xb0\x57\xa5\x89\xa6\x80\xf2\xf7\x79\xb8\x10\x25\x4f\x40\x18\x7f\x62\xbc\x5e\xe2\xe5\xc3\xf8\xe3\xbc\xbf\x4b\x3c\x2b\x8c\x3f\x36\x2e\x2f\xf1\x9c\x61\xfc\xf1\xe2\xce\x2f\x71\xe0\xf6\xf4\x89\x0d\xe3\x4f\xce\xcd\x55\xa7\xe3\x05\x3c\x13\x5d\x17\xe6\x45\x7b\xea\x79\xaf\x71\x4d\x82\x6b\x87\x10\xb3\xfe\xc0\x57\xee\xbd\xac\xc3\xaf\xd2\xfc\xcd\x02\x90\xd0\x87\x21\x54\xaf\x5f\x82\x5a\xda\x47\x3d\xea\x07\x00\x87\xb0\xa5\xfa\x53\x6d\xb4\xd7\x28\x5b\x61\xb8\xc6\xa3\xcb\x91\x93\xbb\x11\x89\x06\xe9\x2e\xac\x0d\x93\xa1\x1f\x88\x93\x3a\x6d\x9e\x2a\x07\x57\x2d\x1e\xff\xb2\x3d\xf1\x49\x10\x2c\xe5\x22\x94\x91\x88\xbd\x24\xc4\xc5\xde\x42\x51\xf1\xc9\x99\x3f\xe2\x2c\xe7\x40\xb4\x36\x14\x38\x4b\xbf\xf0\xea\x77\xd0\xc4\x3a\x08\xac\x13\x31\x0b\x4d\x21\x64\xcb\x13\xb0\x33\x74\xcf\x42\x3e\xce\xee\x59\x1e\x8f\x9b\x58\x5c\xf2\x98\xda\x0a\xcd\xbd\x64\xf0\x00\x5c\xa3\x11\x39\x84\x74\x8d\x66\xbc\x39\x0c\x87\x31\x12\x71\x3a\x55\xcc\x6e\xc5\x62\xf1\x98\x08\x21\x56\xec\x17\x2b\x1d\x22\x8e\x66\x12\x5a\x69\x5c\xa5\x8b\x0e\x46\x14\xa6\x7c\x59\x0b\x87\xfe\x23\x12\x87\x49\xa5\x92\x88\xad\x33\x91\x11\x95\x81\x09\x26\x12\x42\xe0\xa3\x50\xbe\x03\x1d\x44\x27\x07\xf0\x25\x1e\xcc\xb9\xe0\x29\xa6\x88\x54\xd7\x4f\x46\x71\x57\xe4\xf1\x03\xe9\x39\xa2\x2f\x7f\xea\x57\x9d\x76\xae\x82\x9a\x6c\xd6\x09\xa5\xaf\x60\xe9\x0d\xb6\xfb\x32\xec\xd1\xab\x31\xea\x3c\xd0\x35\xa3\xf4\x76\x42\x6f\x1e\xe2\x84\xc0\xae\xd5\x5c\x7a\x3b\xd9\xe3\xbd\x7e\x31\x8e\xf0\x03\xf7\xc3\x15\xde\x8a\xd8\xb3\xee\x97\x6b\xc9\x31\x8e\x93\xa8\xeb\xd6\xfe\x32\xc2\x0f\xae\x2a\xf6\x4a\x7f\x22\xb0\x93\x1c\x62\xf4\x1a\x7c\x85\xc4\x56\xc7\xfa\x53\x07\x67\xff\x10\xd2\x7b\xc9\x88\xb2\x86\x6b\xfc\xbe\x8b\xd8\xe7\x3d\xe1\x83\x8a\xd1\xd6\x57\x48\xfc\x25\x11\x2e\xf9\x5e\x92\xb0\xeb\x88\x35\xc7\xb5\x21\xe1\x7f\xaf\x89\x05\x69\xb5\x5a\x38\x46\x65\xef\xe9\xad\x58\xbe\xca\x97\xbe\xaf\x57\x26\xac\x1d\xf7\x51\xa7\x5f\xa9\x34\xcc\x8f\xf1\x18\xd6\x3a\x94\xc4\x5f\x80\x27\x0c\x1c\x40\x1a\x7d\x01\x9e\xd8\x7d\x76\x87\x7b\x7a\xc3\xf9\xd5\x28\x57\xbc\xc4\x05\x8e\xc7\xde\xfe\x01\xaf\x87\xa3\x20\x16\xa6\xe9\xa9\x99\xef\xd2\x85\xb3\x51\xdc\x50\xcb\x63\x97\x74\x45\x3d\xab\x88\xd7\xe2\xb5\xdd\x7e\xd8\xab\x63\xc9\x06\x04\x91\x56\x1e\x2d\xdc\xea\xd5\x12\x5b\xb4\xea\x5a\x57\x16\x74\x47\xc2\x59\x9b\xa5\xe3\xbe\xd1\x00\xd4\x19\x7c\xd4\xb5\xfc\xab\x91\xb0\x8c\xc2\xe8\x03\xbe\x7a\x84\xe0\x71\x55\xb9\xdb\x68\x0e\x22\x84\xbd\xa0\x45\xdb\x6b\x30\x24\x95\x0a\xb1\x8f\x10\x71\x22\x3a\x78\x4d\xd4\xcc\x6a\xdc\xed\xcd\x33\x7d\xb5\x8c\x48\x0c\x68\x28\xfc\xd7\x41\x07\x5f\x7b\x2f\x01\x6c\xa7\x25\x94\xef\x49\x80\x42\xfe\xc6\xd8\x7a\x88\x0b\x92\xb0\x6c\xa3\x81\x28\x24\xb5\x7d\x2e\x90\xd4\x7f\x6f\xa1\x0e\x49\x62\x74\xc0\xee\xfd\xea\x93\xf8\xb3\x46\x43\x54\xa9\x44\x86\x0a\x10\x03\xfa\x89\xb9\xfb\xe9\x1e\xe7\x5a\x9c\xa7\xdb\xf9\x3e\x69\x97\x6f\xf2\xf9\xac\x4f\x35\x6b\x64\x3d\x99\xd7\x23\x33\x83\xb4\x4e\x9b\x72\xc5\xd3\x89\xfe\x7a\xd9\xda\x39\x3e\xd3\xfb\xe0\x10\x3b\x1e\x12\x98\xb0\x62\xf7\x5e\xd6\xec\xa1\x77\x41\x6c\xf1\x4e\x3f\x22\x57\xa8\x6f\xd8\x3c\xee\x4e\x67\x33\xf4\x2e\x78\x01\x80\x93\x49\x3b\xa8\x54\x08\x0f\x21\xa3\x7c\xa7\xa1\x00\x24\x3c\x0d\x24\xda\x39\xc7\x94\xe8\x11\x08\xeb\x2b\xf3\x30\x89\x4f\x7a\x28\x8e\x8d\x1c\x8c\x7b\x10\x58\x54\x1a\x96\xe5\xa5\x16\xbb\x0e\xc2\x92\x9b\x5a\x91\x03\x48\x71\x2d\x18\x8f\x37\xa6\x0b\xc7\xd4\x15\xef\x63\x2f\x0f\xc3\xea\x31\xbd\x12\x85\x8d\xc7\x0b\x0a\xc5\x56\x57\xdc\x05\xae\xb8\xee\x78\x3d\x61\x21\x3b\xce\xfc\xa6\xfb\xb8\xae\x03\x33\xa3\x46\x18\xf4\xb4\x98\xf3\x12\xa9\xf5\x10\x49\xe9\xd5\x3e\x8a\xbb\x97\x02\x15\x1e\x8a\xff\xf4\xed\x6f\x9a\xea\x13\x37\x7e\x44\x21\xa1\x93\xd6\xd8\x73\x18\x6c\x5f\x88\xd1\xc1\x85\xf4\x24\xa5\x70\x50\xf2\x11\x3e\xa4\x17\xe4\x5e\x3a\x2b\x85\xe3\xbd\x51\x0c\x53\x76\xef\x47\xf8\x70\x14\x47\x04\xbd\x06\x43\x58\x1b\xc6\x23\xc2\xb5\x42\xca\x36\x98\xd6\x6e\x2a\xcc\xdc\x92\xd4\xf9\x59\x72\x01\x14\xc6\xba\xde\x4d\x63\xaa\x7e\x5a\x2c\x3f\x14\xd3\xd8\x85\x43\x02\x3b\x11\x85\xd2\xa0\xd8\xb4\xbd\x8e\xd2\x75\xfd\xb5\xab\x8d\x84\x4d\x20\xf2\xe6\x3a\x1a\xb0\xe1\x5e\x37\x45\xd8\xfe\x5e\x7f\x2a\x33\xbc\x4f\x5d\xf2\xc0\x46\x03\x9c\xa2\x6e\x33\x3b\xf2\xb5\xc3\x38\x39\x88\xe2\xd4\x03\x23\x4c\x51\xdc\xf4\xb6\x6b\xf5\x5a\xdd\x9b\x04\xf6\x20\xb0\xd3\x38\xeb\xc8\xb8\xec\xfa\x2b\xfa\x20\x48\x1b\xf0\xac\x81\x5e\x74\x18\x24\x75\xb4\x6a\xf0\x83\xf9\x47\xe4\x74\xdd\x2a\xb8\x3e\x79\xac\xe3\x62\xd5\xbc\xfc\xc8\xe8\x45\xb7\xe4\xb8\xe8\xf2\x8b\x8d\x8a\x2e\xf6\x98\xc7\x44\xd7\x5b\x3c\x22\x86\x8c\x58\xcb\x0a\xd8\x5b\xcf\xaa\x02\xb8\x1b\xd4\x19\xf0\xec\x5e\x76\x77\xe4\x34\x12\x95\x21\x31\x8c\x56\x95\x52\xa8\x42\x3a\xe4\x52\xa1\x4b\xfe\x06\xe3\xf7\xe5\x83\x80\xdb\x5f\xac\x5d\xff\xf2\xde\xf5\xdb\xd7\xf6\xef\xde\xbb\xb3\x77\x67\xef\x2b\x77\xaf\xdf\x57\x8e\xf8\x0b\x3f\xca\x69\x64\xe7\x4a\xf1\x6a\x51\xd3\xac\x99\xd0\x65\x56\x4c\xb6\x92\x8f\xd7\xaa\xc9\x75\xc0\xaf\xdb\x4b\x22\x90\xfe\xfb\x16\xd9\x63\xf9\x51\x5b\x8a\x02\xe5\xc6\xed\x63\x47\x85\x8a\xc7\xce\x6a\x6d\xea\xe8\x15\xa8\xab\xdc\x6d\xa0\x63\x05\x9a\x35\x37\xfd\x31\x56\x51\x25\x3c\xa8\xc1\x85\x41\xf4\x40\x05\x69\x9a\xe9\x5c\xc7\x56\x05\x14\x5f\x69\x32\x2e\x8b\x65\xba\xe2\xcb\x2e\xd1\xcb\xd0\x76\xbf\x4a\x5a\x94\xf1\x60\xb4\x6d\x78\x9a\x42\x4d\xd6\x23\x30\x66\x7e\x1d\x68\x26\x21\xb0\xb9\x30\xa5\xca\xe0\x7e\xa1\xfd\x1b\x32\xdd\x5a\x53\x07\x08\x77\xa5\x92\x42\xbc\x31\x68\x31\xc6\xb3\xad\x42\x3b\x61\x7e\xcf\xd2\xdc\xd8\x56\x18\x86\x48\xf6\xad\x52\x41\xe2\x76\x74\x7a\x2c\xae\xf8\x57\x93\x11\xa6\x4d\xd2\xf2\xe4\xef\x6a\x87\x25\x78\x6d\x97\x34\xbb\x01\x3a\xb0\x8f\xf8\x3a\x98\x77\x29\x38\x1b\xe9\x3c\x16\xc3\x59\x4c\x8a\x13\x9f\xd2\xd9\x2d\xb0\x55\x6f\xcf\x33\x1c\x8a\x85\x9d\x8f\xd5\xbd\x30\x6b\x58\xdc\xf3\x66\x9e\xaa\x50\x82\x73\x31\x39\xa5\x8f\xc0\xc7\xcb\x24\x9b\xb3\x39\xcb\x30\xeb\x13\xdc\x30\xcc\xca\x13\x9c\xc6\x9c\x5f\x8a\x74\xba\xaf\x9f\x58\xb1\x86\x4c\x79\x9d\x21\x73\xe6\x93\xcc\x99\x6f\x70\x21\x0e\x9f\xe0\xa0\xac\xdb\x98\x6f\x0e\x9d\x01\x3d\x7b\x1b\xaa\x53\x81\x77\xda\x6c\xb5\x2e\x7c\xe6\x02\xf0\x58\x43\xad\x0b\xe9\x67\x2e\x20\x05\x7f\xdd\x8f\x1e\x8e\xd9\xcd\x3a\x40\x22\xf9\x33\x0d\x28\xbe\xf8\x49\x87\x26\xc3\xf1\x11\x22\xc1\x48\x7d\x42\xd9\x2f\xc8\xfd\x10\xc5\x28\x4a\xc7\x29\x8d\xe8\x28\x1d\x1f\x24\x78\x94\x06\x99\x4a\x0f\x46\x81\xaa\x2c\x35\x69\xbd\x5e\x14\x8f\x69\x32\x88\x68\x90\xc8\xaf\x89\xfa\xda\xa2\xa8\x1d\x8c\x06\x32\x39\xb2\x12\x23\x27\x2d\x95\x1d\xd0\xd5\xee\x36\xfd\xd6\xd7\x7b\xed\xa0\x07\xc7\x7e\x2b\x26\xed\xa0\xa7\x90\xf9\xcc\xd6\x91\xca\xd4\x47\x47\x50\x25\xab\x06\xbf\x1e\x41\x94\x8c\x4e\xda\xe3\x57\x47\xc1\x89\xea\xa0\x2a\xf0\x70\xdc\xe9\x8f\xd3\x74\x9c\xf6\xb3\x5d\x1b\x44\x94\x8c\x8f\x20\xa1\x63\x84\xbb\x81\xbf\xdb\x44\x0f\xc7\xf0\xa1\xca\x85\x3a\x50\x8d\xf8\x60\x1c\x07\xc9\x28\x85\xe6\x8b\xf5\x01\x75\xf2\xe9\x89\xae\x05\x62\x9d\x04\xb1\x4a\x14\xcd\xbf\x3a\x42\xaf\xa9\x94\xd7\x58\x5b\x6d\xa0\xd6\x33\x9b\x7e\x31\x38\x22\x6b\x9a\xba\x45\x71\x00\x8f\xf5\xec\x1f\xa7\x05\x43\x3c\x1a\x88\x44\x3f\x0a\x70\x14\x9f\x8c\xfd\x83\x20\x1a\xfb\xdd\x00\x45\x87\x38\x19\xfb\xc3\x20\x22\x10\xd3\x3e\x64\x20\x49\x78\x5a\x1a\x9c\xe0\x64\x38\xf6\x69\xd0\x87\x81\x9f\xa2\x74\x9c\x42\xdd\x6e\x8a\x64\x2b\x5f\x8f\x58\x7d\xe5\xdf\xf9\x0c\x1e\x41\x85\x5d\x0f\x5a\xd3\x96\x3a\x9d\xa0\xf9\x24\x3e\xeb\x56\xe1\x82\xf9\x45\xfa\xeb\x89\x1c\x9b\x00\x12\x93\xc8\x61\x39\xbd\x41\x72\x64\x3e\x30\x38\xb7\x20\xa0\xd3\x7c\x76\x3e\xd9\x94\xab\x05\x9f\x06\x3e\x4c\x83\x5d\x07\xdb\x24\x53\xde\x4f\xfb\x49\xb6\x47\x1d\x82\x52\xb1\x5d\x7d\x94\x8e\xcd\x78\x21\xbd\x9b\x83\x87\x2d\x04\xdb\xaa\xd4\x43\x94\xdb\xcc\xfe\x28\x1d\x23\x55\x6e\x94\x96\x6e\xdc\x1c\x82\x7c\x1d\x42\x6c\xa3\xa3\x57\x3b\x5b\xdd\x6a\xc8\x1e\x9a\xed\x60\xa7\xa3\x87\xd6\x3a\x7d\x2d\xd3\xd5\x6e\x44\xa3\x83\x28\xb5\xbb\xdb\x06\x88\x10\xc8\xd7\xef\xdd\x08\x11\x46\xc3\x3c\xc6\x14\xf0\xa7\xe9\x43\x98\x0c\xb9\xe3\xc4\x96\x37\x88\x58\xc2\x40\xec\x0c\xaf\xd3\x47\x71\xd7\x03\xe2\x2f\x91\x89\x29\x77\x22\x9f\xc2\x87\x62\x2e\xbd\x41\x72\x04\x59\x99\x44\x92\x01\xaf\x93\x1c\x7b\xc0\x7b\x80\xb0\xa8\xf2\xb5\x64\x70\x80\x58\x0e\x01\xf0\xbd\x34\xc2\x9c\xbf\xe1\xec\x6c\xcb\x83\xaf\x8e\xd0\x50\x48\xd3\x3d\x84\x7b\x09\x19\x70\x1d\x83\x07\x3c\x22\x1e\xa2\x0f\x12\x0c\x4f\x58\xa3\x43\xd8\x61\x35\x70\xcb\x6f\x01\xf4\x50\xda\x67\xbf\xfb\x10\x0e\x3d\xe0\x7d\x13\x46\xec\x2c\xf0\x86\x49\xcc\x77\x7c\x81\x21\xf5\xac\x53\xfe\x4c\xcd\x5b\x2f\x7c\xfd\x6b\xe9\x67\x3f\x73\x01\x90\xf0\x82\xdf\xfa\xda\xf1\x85\x6a\x7b\xb3\xb5\x7f\xe1\x6b\x69\xb5\x1d\xf8\xad\xa8\xfa\xda\xd7\xba\xed\xcd\xcf\x04\x17\x00\x96\xdf\xd9\x97\xcd\xc0\x6f\x5d\xa9\x7e\xb5\x2d\xbf\x7f\x96\x7d\x47\xe1\x05\x37\xed\x82\x61\xbd\x93\x9c\x41\x05\xc0\xa1\x31\xa8\xb8\x8c\xb9\x74\x13\xd6\xac\x49\x68\xf1\xf0\x1c\x34\x79\x39\x39\x86\xe4\x6a\x94\x42\x3f\x68\x87\x1b\x75\x27\x44\x90\x5b\xa7\xe2\x41\xc3\x3a\x40\xa6\x72\x7c\x19\x5d\xc2\x8c\x6d\x0f\x69\x0b\xb7\x01\xac\xe9\x55\xd7\x22\xad\x7a\xae\x05\xd2\x6a\x64\x33\x35\x66\x66\xba\x89\x8f\x20\x49\x61\x49\xde\x7a\x49\xde\xa2\xc6\xeb\x6d\x27\x04\x51\x70\xea\xc3\x10\x8e\xc7\xa7\x93\xc0\x1e\x9b\xd0\x19\xa9\xf1\x78\xe4\x07\x76\x13\x7c\x3b\x85\xd9\x04\x9e\x4d\xce\xb9\xd0\xff\x73\x06\x47\xb3\x10\x8a\x21\x4a\xc7\xe3\x96\x75\xb4\x18\x1e\x8a\xa7\xeb\x3a\x9b\xac\xd1\x6c\xaf\x78\xa2\xbd\x93\x46\x7e\x30\x59\x4b\x7c\xc6\x8a\x59\xc9\x01\x88\x78\x92\x8b\xa0\x32\x14\xe0\xe1\x5a\xaf\x46\x9d\x3e\xf4\x83\x09\xea\xf9\x1b\x4e\xb8\xb4\x4a\xc5\xfd\xcd\x25\xeb\x41\xc6\x79\x66\x90\x35\x66\xf5\xf6\xfa\x28\x5d\x3f\x20\xc9\x71\x0a\xc9\x7a\x37\x81\xe9\x3a\x4e\xe8\x7a\x3a\x1a\xf2\x3b\x75\x41\x8d\x60\x7d\x28\xae\xe0\x52\xdd\xb6\xce\xae\x41\xeb\x30\xbd\x58\x4d\xfb\xd1\xa0\xb9\xde\xa7\x74\xd8\xbc\x70\xe1\x10\xd1\x1a\x4a\x2e\x9c\xbc\xf8\xca\x16\x39\xf4\x2c\xaf\xdc\x23\xad\x4a\x2c\xa8\xdc\x28\x41\xf7\xbb\xa8\x43\x85\xdb\xf2\x2e\x8c\x21\x85\x2a\x0d\xc0\x49\x6a\x85\x8c\x3b\xb5\x86\x25\x67\x94\x31\x1c\x91\x43\x35\x62\x62\x10\x6d\xbe\x37\x7f\x53\x11\xba\xd3\xfd\x0e\x2b\xf1\x4a\x0a\xbb\xe1\x46\x5d\x86\x40\x48\x79\x2d\x2d\xd8\x1e\x8f\xfd\x4c\x8a\x54\x89\xda\x52\x0b\x18\x04\x13\x51\xd0\xf0\xd2\x45\xb6\xed\x4b\x5a\x12\x9d\x4e\xd6\xf2\x88\x4a\x75\x45\x8b\xdf\x50\x6a\xf6\x5d\x55\x5f\xc8\x45\xa1\xa1\x40\x1c\x9b\xae\xe8\x14\xd9\x15\x23\xb8\x12\x57\xc5\x60\x32\x01\x66\x28\xf3\xa6\x2f\x16\x1a\x0d\x67\xbc\xc2\x91\x1a\x77\xd9\x06\x4b\x98\x80\x2e\x4a\xcb\xe7\x4c\x15\xe5\x53\xef\x94\x35\x29\x73\xcd\xa2\x3b\x21\xe5\xf3\x91\x29\x96\xbd\xc1\x67\x23\x0c\x4c\x80\xc8\x51\xe4\x21\xdf\x8c\x84\x34\x25\xca\x2f\x40\x4e\x5c\x14\x45\x11\x82\x05\x36\x65\x19\x8a\x17\x4c\x0c\xa1\x79\x94\x76\x54\x25\xd3\x1a\xb2\xc9\x92\x3d\x98\x73\xb4\x24\x8d\x9b\x78\x5b\xa0\x05\xf3\x75\x1b\xaa\xb8\x70\x2f\x22\xa7\x6e\x86\x7a\x9b\xd5\xa8\xa7\xa7\xcc\xf2\x61\xe6\x04\x82\xfd\x82\x3a\x1e\xcb\xa6\x94\x68\x68\x77\xf3\x54\x98\xfa\x4b\x86\x45\x86\x9c\x76\x57\x80\x9d\xa4\x07\x2b\x68\xfa\x8d\x8d\x30\x1c\x46\x24\x85\x37\xe2\x24\xa2\xdc\x29\xbe\x2f\x8f\x27\x55\x1d\x9d\xbb\xba\x20\x43\x10\x76\x69\x13\x6e\x7a\xeb\xde\x26\xb5\xd6\x99\x3b\x1c\x33\xf6\xd2\xfe\x3c\xa5\x0a\xfb\xad\x0a\x16\x62\x2a\x4f\x4b\xb6\x70\x44\x59\x7b\x82\xb8\x67\x7f\xee\x9a\x1f\x8c\x80\x72\x55\x0f\x3a\x0a\xe8\x29\xa0\xab\x80\xbe\x02\x86\x96\x0b\xff\x34\xdc\x80\xe3\x31\x15\x4a\x75\x18\x80\x51\x88\x34\x9c\x3a\x0f\x96\x7a\x61\x66\x41\x03\xbf\x1b\x92\x1a\x7c\x08\x3b\xdc\xc4\x03\x2b\x90\xcd\x4d\x3f\xec\xb6\xb6\x32\x7c\x8b\xb3\x13\x6d\x0e\xae\xd7\x1e\x8f\x4b\x3e\xf5\xdb\x06\x07\xc6\xc1\x0d\xd7\x11\x5e\x8f\x02\x86\x8e\xf4\x9b\x34\xdc\xf4\x3e\xe3\x69\x63\x80\x4e\x18\xb5\x86\x6d\x30\xaa\x54\xa2\x56\xbf\x5d\xa9\xf8\x9d\xd0\xd1\x5c\x75\xa2\x21\xa2\x82\x96\x77\x02\x30\x2c\xfd\x38\x0c\xc4\x4b\xca\x61\x1c\x75\xa0\x2f\xa2\x59\x1e\x5e\x7f\x38\xf4\x87\xc0\x43\x5e\x00\x3a\x46\x0d\x3f\x08\x13\xc5\x43\x0e\x9e\xaf\x57\x2a\x1b\xfe\x30\xf4\xe3\x30\x69\x0d\xaa\x8d\x76\xd0\xaa\xb7\x03\x35\xa0\x97\x06\xd5\x6a\x70\x49\x62\xca\x33\xc5\x8c\x57\x62\x79\x40\x27\x8c\x05\xb3\xa8\xda\x1c\x82\x0e\x23\xae\x46\x86\x33\x53\xc1\x94\x11\xe7\x2d\x2c\x24\x7c\xec\x8a\xef\x19\x9a\x6e\x58\x7c\xfa\x64\x22\x21\x15\x88\xf7\x82\x9c\x58\x39\x1b\x1d\x70\xd6\x81\x98\xaf\xb3\x96\xd9\xd2\xb3\x06\x3b\x2f\x52\x3e\x5f\x27\x24\xa8\xe7\xdb\x96\x18\x81\xa3\x4d\x72\xad\x33\x84\xc5\x8d\xfc\xb2\x77\xeb\xe5\x17\x23\x92\x66\xf2\xcb\xd4\x1a\xeb\xcf\x8b\xc9\x08\x77\x5f\xd2\x45\xdd\x8c\xdc\xe6\xf7\xa0\x38\x6b\xc1\x98\xc5\x49\xd4\xad\x3a\x51\xb5\x0b\x8c\x35\xa4\xff\xb2\x19\xeb\xcf\xb6\x94\x51\x47\x93\x6f\x49\x7f\x03\x1f\x02\x11\x10\x83\xfd\xb7\x51\xe7\x9d\xde\x20\x39\x0e\x9f\x51\x7a\x11\x87\x99\x23\xb0\x1e\x99\x38\xb4\xaf\x41\x52\xf3\x94\xcd\x94\x96\xe1\x9b\x07\x1e\x38\x1a\xc0\xf1\xd8\x17\x80\x7e\xc1\x01\x6b\x71\x94\xd2\x9b\xd2\xf2\xd2\xbb\xe0\x05\x9b\x8d\x20\x00\xb8\x24\xc2\x72\x55\x98\x1b\x2b\x4b\x4d\x76\xbd\x91\xb6\x80\xea\x2a\xfa\x48\x2a\x21\x77\x04\x15\x8d\x42\x21\xdd\xf4\xdc\xf0\xe6\x1e\x48\x64\xa2\x30\x72\xaa\x66\xbe\x46\x21\xbb\xdd\xb1\xff\x46\xea\x66\xf2\x00\x9e\xa4\xbe\x9c\xad\x6f\xa6\xb5\x7d\x18\x3d\xd8\x4f\x21\xc4\x01\x88\xc3\xfa\xa5\xf8\xf2\x48\xd1\xc1\x58\xbd\x7c\xe8\x84\xa3\x56\xdc\x5e\x63\x87\x7f\xc7\x19\x26\x04\xea\xc1\x2e\xf6\x3b\xc0\xab\x32\xe2\xe8\x05\xe3\xb1\x8c\x75\xd2\x09\x9a\xf9\xec\x09\xa8\xb3\x53\xc5\x2d\x90\xaa\x02\xc1\xc4\x2f\xee\x36\x0e\xeb\x97\xb0\x79\x90\x81\xb9\xec\xc0\xea\xa7\x4f\x7c\x76\xd9\x0f\xf8\xf3\x7b\x10\xd9\x0f\xf0\xe7\xa8\x46\x8c\xdb\xcd\xa2\xea\x7c\x08\xd2\xa2\xfd\x30\x88\x68\xbf\xaa\x1f\xe5\xa9\x90\x84\x07\x4b\x45\x5f\x5f\xd9\x62\xae\x6c\x31\x57\xb6\x98\x4f\xa4\x2d\xa6\x6b\x6a\x90\x7d\x13\x2e\xb3\xdd\x8a\x68\xbf\x16\x1d\xa4\x3e\x59\xea\x40\x88\x0e\xd2\x39\x1f\xf3\x49\x36\x01\xcf\x78\x8a\x57\x4c\xbb\x3a\xc9\x8a\x78\xad\x88\xd7\x8a\x78\xad\x88\x57\x01\xf1\xea\x24\x4b\x53\xaf\x4e\x72\x5e\xe4\xab\xbf\xa2\x5f\x2b\xfa\xb5\xa2\x5f\x2b\xfa\x55\x48\xbf\xfa\x8f\x40\xc0\xfa\xe7\x41\xc1\xba\xdd\x47\xf2\xea\x02\x6b\x04\x76\x47\x1d\xe8\xfb\x85\x3e\x1c\x84\x6b\x64\x1f\x06\x9b\x12\xa2\xdc\x4e\x71\x99\x01\xe9\x76\x43\x5a\x3c\x1c\xa4\x70\x38\xa8\x3d\x1c\x64\xde\xe1\x48\xd1\xdc\x3e\xc9\x56\xf4\x7c\x45\xcf\x57\xf4\xfc\xd3\x44\xcf\x53\x84\x97\x25\xe7\x29\xc2\xe7\x41\xcd\x53\x84\x57\xfc\xe8\x8a\x7e\xad\xe8\xd7\x8a\x7e\x15\xd3\xaf\xa5\xf9\x51\x56\xf6\x3c\x28\x18\x8d\x56\x0c\xd8\x8a\x80\xad\x08\xd8\x8a\x80\x15\x10\x30\x1a\x2d\xcd\x80\xd1\xe8\x51\x19\xb0\xb5\x39\xc9\xd7\xd6\x8a\x7e\xad\xe8\xd7\x8a\x7e\x7d\xea\xe9\xd7\x56\x00\xb0\x78\x96\x81\xf8\x4b\x8e\x1c\x29\xdb\xf2\x31\x40\x4b\x53\xb3\xad\x73\xe2\xc6\x56\xf7\xc9\x15\x39\x5b\x91\xb3\x15\x39\x2b\x66\xc7\x96\xbe\x4f\xb2\xb2\xe7\x40\xc1\x3a\x07\x64\xe5\xa9\x70\x45\xc0\x56\x04\x6c\x45\xc0\xf2\x04\x8c\x11\x87\x25\xe9\x17\x2b\x7a\x1e\xe4\x0b\xa2\x78\x45\xbe\x56\xe4\x6b\x45\xbe\x56\xe4\x2b\x4f\xbe\x20\x8a\x97\x25\x5f\x10\xc5\xe7\x41\xbe\xe2\xd7\xb6\x57\xe2\xb0\x15\xfd\x5a\xd1\xaf\x15\xfd\x2a\xa0\x5f\x8c\x3a\x2c\x4b\xc0\x58\xd9\xf3\xa0\x60\xab\xf7\x09\x2b\xfa\xb5\xa2\x5f\x2b\xfa\x55\x44\xbf\x96\x7e\x9e\x70\x3e\xaf\x13\x56\x8f\x13\x56\xc4\x6b\x45\xbc\x56\xc4\xab\x8c\x78\x2d\x2b\xbb\x3f\xa7\xa7\x09\x5d\x74\x74\x2e\x4f\x13\x2e\x3c\xea\xd3\x84\x2e\x3a\x3a\x87\xa7\x09\xf0\xe1\x70\x45\xcc\x57\xc4\x7c\x45\xcc\x57\xc4\x3c\x47\xcc\xe1\xc3\xe1\x92\xb4\x1c\x3e\x1c\x9e\x03\x29\x87\x0f\x87\x83\xc6\x8a\x7a\xad\xa8\xd7\x8a\x7a\xad\xa8\x57\x11\xf5\x1a\x34\x96\xa7\x5f\x83\xc6\x39\x50\xb0\x5e\x9c\xcc\xef\x21\x7b\x45\xc1\x56\x14\x6c\x45\xc1\x3e\x45\x14\x8c\x53\x87\x25\x29\x18\x2f\x7b\x1e\x14\x8c\x24\x23\xbc\xd4\x63\xff\x15\x09\x5b\x91\xb0\x15\x09\xfb\xa4\x93\x30\x4e\x1e\x96\xa5\x61\xbc\xf0\x39\x10\xb1\xc3\xce\x8a\x82\xad\x28\xd8\x8a\x82\xad\x28\xd8\x56\xc0\x9f\x55\xd5\xdb\x7a\xf3\x84\x61\x88\x76\xeb\x4d\x04\x22\x11\x38\x27\x35\xe9\xd1\x6e\xbd\x19\x81\x51\xa8\x7d\x62\x26\x01\x88\xcd\xaf\x54\xbb\xa9\x66\x99\x47\xbb\x31\x77\x21\x1c\xef\x8e\x9a\xd8\x6f\xc5\x60\xf4\x17\x71\x7b\x29\xb2\x78\xd8\x39\x0f\x9a\xd8\x3f\x19\x26\x4b\xbd\x71\x58\x94\x26\x72\x27\xdd\x19\xb2\x98\x25\x8a\x1b\x2e\x51\xac\x54\xa6\x92\xc4\xa2\x6d\x56\x42\x78\x57\xf4\xa3\x8c\x7e\x2c\x47\x3d\xd2\x21\x81\x51\xf7\x53\x43\x38\x6c\x56\x87\x6f\x18\xe9\xf9\x9f\x25\x00\xbe\x16\x97\xd9\xe0\xbc\xa6\x73\xd8\xe2\x68\x30\x5a\x3d\x03\x58\xf1\x3d\x9f\x2c\xba\xb5\xe2\x7b\x1e\xfb\xab\x72\x46\x27\x96\x7e\x54\xce\x0a\x9f\x03\x2d\x8b\x3b\x85\x11\xa8\x4b\xaf\x7b\xf3\x87\xf5\x58\x51\xbb\x27\x85\xda\x61\x43\xed\xc8\xf2\xd4\x8e\xe4\xa9\x1d\x99\x45\xed\x88\xa1\x76\x64\x4e\x6a\x47\x16\xa7\x76\x24\x70\x7b\xfa\xa4\x53\x3b\x7c\x6e\xd4\x0e\x29\x6a\x87\x43\xa2\x6e\x79\xb8\xe4\x96\x87\x8b\x6e\x79\xf6\x4d\x2e\x19\x8f\xd9\x9f\x74\xb7\xde\x34\x37\xbf\xcf\xa6\xc1\x05\x1e\xf8\xe7\xb0\xd3\x0d\xfc\x56\x02\xd2\xe5\x2e\x77\x71\x67\x10\xa2\x62\x6a\x99\x14\x52\x4b\x64\x53\xcb\x64\x5e\x6a\x99\x1c\x56\xe1\x8a\xf5\xfb\x24\x13\xc3\x15\xeb\xf7\x64\x11\xc3\x8f\x91\xd0\x3e\x4e\x0e\x97\x94\xd8\xc7\xc9\xe1\xf5\xf3\x60\xf6\x92\xc3\x46\x7d\x45\xbe\x56\xe4\x6b\x45\xbe\x56\xe4\xab\x88\x7c\x35\xea\xcb\x13\xb0\x46\xfd\x9c\x28\xd8\xca\xf0\x7e\x45\xc1\x56\x14\x6c\x45\xc1\x8a\x29\xd8\xb2\xa6\xf7\xbc\xec\xf9\x50\xb0\x95\x0f\x8e\x15\x01\x5b\x11\xb0\x15\x01\x2b\x24\x60\xcb\xba\xe0\x60\x45\xcf\x81\x7c\x0d\xa2\x87\x2b\xe3\x86\x4f\xed\x3e\x5f\x19\x37\x2c\x68\xdc\x30\x88\x1e\x3e\x16\xd3\x86\x41\xf4\xf0\x3c\x36\xf7\x72\xe1\xd6\x56\x9b\x7b\xb5\xb9\x3f\x95\x9b\x1b\xe1\xc7\xb3\xb9\xcf\x25\x1a\xd9\x20\x39\x9f\xd8\x92\x7f\xf1\xa8\x0e\x1c\x06\xc9\x79\xc4\x96\x1c\x8c\xe2\x47\x33\xd3\x9c\x77\x3c\x3e\xfb\xc8\xe3\xc1\xba\x75\xf6\x03\x32\x4c\x8e\xcf\x72\x3c\xf8\x8e\x19\x26\xc7\x82\xda\x2c\x37\x12\xc3\xe4\xf8\x1c\x06\x82\x44\xb8\x9b\x0c\x56\x77\xf4\xd5\x1d\xfd\x13\x75\xbc\xaf\xee\xe8\x8b\x9e\xf2\x3e\x0e\x3d\x95\x9e\xdd\x86\x95\x8a\x97\x72\x20\xfb\x41\x77\x66\xd7\x26\x01\xb2\x1d\xb5\x0c\x27\xcd\x82\x8f\xb0\x52\x99\xd2\x9c\xb3\xac\xc2\x30\xd4\xe9\x1b\x0a\x36\x0b\x78\x57\xe1\xd6\xd4\x0d\x06\x8c\x23\x5e\x82\xe4\x0a\x62\x18\xa6\x65\xec\x89\x62\x84\x40\x12\xaa\x0b\x0f\x88\xc2\xd3\x2e\xec\xa0\x41\x14\xa7\xcd\xfa\xc4\x50\xc8\xd4\x88\x3f\x22\xb5\xbe\xe5\xb4\x3d\xdf\xa8\x54\x44\xbd\x1b\xa1\xf9\xd8\x6a\xb4\x77\xed\x1f\x4d\x46\xab\x48\x4d\x55\xce\x77\x4a\x62\x76\xa3\xcf\xa8\xd3\x86\x38\x07\xf2\xa4\x56\x99\x26\x6d\x84\x21\xd4\x55\xec\x1a\xb0\x19\x69\x10\x6c\xf2\xbe\x88\xbe\xfb\x41\x8d\x26\x37\xd0\x43\xd8\xf5\x13\xbf\x0e\x90\xbf\x55\x07\x69\x10\xf0\x7d\x0a\x2b\x95\x46\x18\x9a\xc5\xc7\x7b\x37\x92\xc2\x1d\x10\x87\x23\x23\xe0\xd9\xf4\x9d\x3a\x3f\x1b\x97\x54\x3b\x11\xd5\x6e\xe5\xaa\xed\x28\x83\xd3\x5e\xd8\x69\xd5\xdb\xa0\x1b\x76\x5a\x8d\x36\xc3\xa2\x7b\xb9\x27\xb2\xf4\xc3\x56\x17\xf4\xda\x6b\xbd\xb0\x2f\x72\xf4\x5b\x8d\xf6\x44\xb5\xdf\x73\x7b\xf5\x59\xbf\x5b\xed\x05\x65\x58\xc8\x42\x73\x8c\xc3\x44\xf4\xb9\xe8\xf8\x4d\xed\xe3\x77\x34\xef\xf1\xbb\xf4\xc3\x68\xa2\xb7\x92\x36\x42\x23\xdc\xe6\x6c\x93\xec\x8a\x8e\xf0\x47\x95\x30\x68\xfa\x24\xdc\x24\x40\x10\x93\xd0\x87\xe1\x26\x3b\x84\x51\x7a\x3b\xba\xcd\x8f\x63\x0f\x73\x96\xcd\x5c\x42\xc9\x78\x4c\xfe\xa2\xb1\x11\xd6\x77\x6f\x47\xb7\x9b\xf0\x72\x7d\xb7\x4a\xfd\x2a\x6b\xb1\xe9\xc3\xd0\x1c\x18\x7e\x50\x4b\x87\x31\xa2\xbe\x07\xbd\x00\x40\x56\xb5\xd5\xf0\xa6\xe7\xb1\x4d\xdc\x89\xa8\x0f\xd9\xfc\xb0\x4c\x26\xa1\xd1\xde\xdd\x64\xff\x57\x49\xb3\x4a\x02\x3e\x31\x45\x95\xce\x57\xc9\x26\x69\xb2\x3a\x5c\x02\x4a\xf8\x09\x29\xff\xd7\x8b\x5d\xed\x0f\x59\x5f\xd5\xfa\xb2\xc6\x33\xc2\x87\xc3\x4c\x1e\x91\x36\xb1\x39\x3b\x39\xb4\xad\xfa\x72\xe6\x7b\xe2\xc5\x2a\x29\xa6\x32\xb8\x70\x71\x11\x7b\x71\xe1\x39\x17\x57\x8a\x0e\x57\x01\x4d\x57\x9c\xdd\x8a\xb3\xfb\xb4\x72\x76\xd3\xb4\x2f\x8c\x38\x2c\xa9\x7d\x61\x45\xcf\x41\x86\x93\x2e\x27\xa0\x5d\x51\xaf\x15\xf5\x5a\x51\xaf\x4f\x3c\xf5\x5a\x9e\x78\x9d\x0b\xed\x7a\x75\x15\xfb\x6f\x45\xbc\x56\xc4\x6b\x45\xbc\x8a\x88\xd7\xab\x4b\xc7\xfe\x63\x45\xcf\x21\x96\x7c\x3a\x3a\x38\x17\x75\x51\xf5\x51\xd5\x45\xe9\xe8\xe0\x1c\x94\x24\x34\x5a\x71\xa2\x2b\x62\xbe\x22\xe6\x2b\x62\x9e\x27\xe6\x34\x5a\x96\x13\xa5\xd1\x79\x70\xa2\xab\x30\xfa\x2b\xe2\xb5\x22\x5e\x2b\xe2\x55\x46\xbc\x96\x8d\xc4\x73\x4e\x41\xf4\x29\x19\xe1\xce\x8a\x7e\xad\xe8\xd7\x8a\x7e\xad\xe8\x57\x9e\x7e\x31\xea\xb0\x2c\x01\x63\x65\x1f\x2f\x05\x4b\xb0\xa4\x5f\x9a\x7c\x25\xb8\xda\x4d\x3a\x7c\xf9\x14\x79\x9e\x2a\x2a\xb0\x80\xd7\xa9\x45\x29\x1c\x7e\x02\x6c\xd1\x3f\x85\xfe\x99\x9e\x4c\x5b\xf4\x33\x77\xcc\xb4\x4c\x38\xbc\xa2\x9d\x4c\x55\x72\x0d\x3e\xa4\x10\x77\xfd\xd3\x4e\x32\x18\x8e\x28\x6c\x16\x0a\xa7\x68\x1f\xa5\xb5\xfd\x74\xc4\x36\x7c\x4b\x6d\xde\xb6\xb2\x3a\x61\xbb\x2e\x60\xd3\x36\x59\x86\x16\x1c\x23\xdc\x75\x2d\x8f\x57\x94\x60\x45\x09\x56\x94\xe0\x09\xa0\x04\x62\xeb\x3e\x1e\x3a\x30\x9d\x00\x8c\x28\x8a\xd3\x0b\xf0\x08\x62\x5a\x8d\x51\x4a\x21\x86\x64\xe5\x8a\xf2\x13\x78\xf1\xf9\x14\x12\xb8\x27\xfa\xe2\xf3\x71\xa4\x73\xfb\xfb\x9d\x64\x84\x69\x1a\x5a\x83\x2a\xea\x3b\x8d\xba\xdd\xb4\x89\x00\x81\x83\xe4\x08\xa6\xcd\x64\x32\x29\xa3\x8b\x6c\x5b\xd4\x0d\x11\x89\x7c\x08\x08\xc0\x00\x05\xa7\xb0\x52\x21\x95\x0a\xae\x54\xfc\x64\x73\x13\x70\xdf\x95\xa2\xbe\xeb\x8c\x3c\xbd\x2c\xa9\x53\xa0\x0b\x08\x03\xe9\xd4\xbd\x3d\x29\x62\xcb\x49\xda\x5e\x44\x0e\x21\x6d\xb2\x31\x04\x3c\xe1\x76\x34\x80\x4d\x81\x0e\x60\x4b\xfd\x20\xea\x3c\x50\xbf\x79\x86\x3b\x43\x86\x55\xaa\xf3\xe4\x49\x36\x16\xb7\xc4\x84\xfb\xed\xdc\x0e\x40\x1a\x26\xad\x7a\x1b\x8c\xc2\xa4\xd5\x68\x83\x38\x4c\x5a\x5b\xed\xb5\xc8\xe7\xf4\xdc\x42\x02\x98\x04\x86\x84\xf8\xa9\x50\xb0\x3e\x4a\x04\x02\x90\xad\x20\x4c\xdd\x32\xa1\x85\x13\x1b\x8f\x44\x53\x62\xa4\x46\x2f\xea\x76\x0b\x87\x2e\x09\x00\x9e\xe4\x31\x1c\x81\x18\xe0\x20\x83\x68\x38\xca\x23\x17\xe2\x09\x38\x46\x71\x7c\x8d\x6d\x94\xe4\xa4\xe9\xec\x31\x73\x8c\x05\xe0\xd1\x87\xc1\x3d\xf2\xd2\x69\x47\x5e\xe1\x51\x36\xa7\x30\x6f\x89\xcd\x90\x1d\xdc\x3b\xb8\x03\xb9\x9d\x75\xf6\x83\x3d\x51\x18\x20\x36\x51\xfc\x14\x0a\xd1\x1a\xdd\xcd\x67\xf7\x31\x88\x40\x12\x34\x93\x4a\x25\xa9\x25\xb8\x03\x77\x09\x2f\x18\x81\x17\x93\x24\x86\x11\xf6\x93\x5a\x27\x1a\x32\xea\x14\x04\xcd\x92\xf2\x3a\x2b\xab\x44\xe7\x66\x7b\xb2\x60\x47\x65\x57\x12\x0a\x4e\x19\x62\x05\x39\x7d\xf1\xb9\x59\xfe\x51\x35\x8c\x2a\x15\xe4\x36\x7c\xff\x95\xbb\x77\xef\xdc\xdb\xbb\xbf\x7f\xfd\x8b\xd7\x6f\xef\xed\xdf\xb9\xbb\x77\xf3\xce\xed\xfb\x36\x6d\xa0\x36\x5d\x61\xe7\x25\x4b\x84\x80\x86\xea\x62\x54\xeb\x10\x18\x51\x78\x3d\x86\xec\x97\xef\x75\xd1\x91\x17\x00\x12\xd6\x15\x55\xcb\x2f\x79\xdf\xeb\xc4\xa8\xf3\xc0\xb3\xe6\x5e\xef\x13\xb2\xb9\x39\x09\xc0\x29\x1b\x63\x31\xa9\x05\x8f\x84\x78\x65\xbb\x90\x53\x55\x0e\xab\x0a\xf9\xfb\x84\x2c\x62\x22\x03\xff\xe3\x05\x41\x0d\x61\x44\x9d\x42\x60\xa3\x0e\x36\xea\x01\xa0\xb5\x2e\x4a\x87\x8c\x57\x10\x9f\x61\x61\x52\x83\x9d\x84\x92\xa5\xc0\x0a\xeb\x8d\xc6\x64\xe2\x07\x19\x26\x0c\x10\xe5\x4c\x38\xf7\xfc\x67\xbb\xf0\xf9\xcf\x76\xbb\x52\xb1\x7f\x99\xfa\x90\x1f\x9c\x16\x4f\x2f\x05\x88\x91\x07\xe2\x07\x93\x82\x55\x27\xbe\x4e\x4a\xe7\x99\xe6\xb7\xee\x30\x3a\x84\x55\x8a\x68\x0c\xcd\x53\x59\x9d\xb4\x9c\x49\x88\x38\x0a\x52\x48\x39\xe1\x01\x9e\xac\xca\x7e\x47\xb2\x5c\xe8\xfb\x99\x26\x1f\xea\xdc\x61\x3d\xd8\x63\xad\xb2\x91\x69\xca\x27\x53\x98\x37\x98\x42\x72\xc4\xb8\xaa\x00\xf4\x61\xd4\xbd\x16\xd1\xa8\xec\x3b\x5b\x38\xe5\x54\x55\x14\x3a\xd4\x9d\x74\x9a\xf4\x02\xc1\xab\x9e\xa2\xae\xac\xfd\x70\x84\xba\x37\x12\xc2\x33\x07\x93\x60\x52\x74\xa8\x91\xe0\x94\x54\x2a\xa4\xb6\xdf\x85\x43\x02\x3b\x11\x85\x95\x0a\x63\xea\x92\x18\xd6\x8e\x23\x82\x7d\xef\x95\x14\xe1\xc3\xf5\x6f\x9c\x9e\xf2\x21\x9d\x4c\xbe\xb1\x2e\xe6\x6c\x1d\xa5\xeb\xba\x50\x17\xac\xb3\xb9\xf9\xc6\xe9\xa9\x99\x48\x96\x95\x31\x4e\x30\xea\xd6\xd6\xbd\x4d\xbb\x8d\xc0\x79\x84\x52\xda\x21\xa0\x04\xa4\x51\xca\x0d\xc9\x4f\x27\x80\xe8\x48\x46\xa8\x86\xba\x61\x41\x47\x01\xaa\xf1\xe6\x43\x58\xfb\x66\x82\xb0\xef\x79\x01\xc0\x62\x68\x90\x1a\x42\x32\xc2\xb5\xb4\xd3\x87\x6c\xc6\x19\xf9\xf6\xbd\xa8\x47\x21\xb9\x07\x71\x97\x1d\x1d\x59\xb4\xd4\xac\x79\x01\xa0\x6c\x27\x78\xde\x04\x74\xf3\x47\x20\xa7\x5a\x33\xfb\x44\x8a\x90\x5e\x53\x3b\xcf\x27\xb9\xb1\xb9\x73\xcc\xb7\x19\xcb\x56\x8b\x93\xe4\xc1\x68\xe8\x7b\x24\x19\x51\x48\x9a\x83\x08\x61\x3e\x4c\x3e\xae\xed\x8b\xb4\x5b\xa8\x43\x92\x18\x1d\x8c\xc7\xb8\x26\x52\xc6\xe3\xd3\x49\x50\x8b\x3a\x14\x1d\xc1\x3d\x12\xe1\x14\x31\x7c\x41\x92\xc3\xd4\x74\x73\x0d\xed\x22\x76\x49\x18\xa0\x14\xd6\xe4\xf5\xc4\xb7\x09\x69\x52\x43\xa9\x64\x02\x60\x77\x3c\x9e\x6b\x54\x13\x40\x01\x0c\x26\x41\xd0\x5c\x24\xfb\x64\x86\x29\x95\x45\x4b\xe4\x36\xb2\x89\x09\xe7\x07\x8a\x2e\xc2\x9d\x64\x78\x32\xe3\xba\xfb\x78\xa9\xc5\x7d\x81\x9c\x26\x17\xd9\x9d\x2e\x16\x0f\x9b\x88\xb5\xa2\x4d\x6f\x51\xb6\xe4\x01\xc4\xa9\x5a\xa4\x57\xfc\x20\x9f\x45\x9c\x00\x1e\xa8\x4b\x9e\x6e\x5f\x52\xf5\x87\x28\xa5\x08\x1f\xf2\xd5\xb8\x17\x1d\xfa\x81\x3c\x7d\x0b\x97\x1a\x81\x69\x12\x1f\xc1\x7b\xf0\x10\xa5\x94\x44\x1c\x4d\xaf\x93\xe0\x1e\x3a\x6c\x42\x7c\x84\x48\x82\xb9\xc2\x21\x58\xa3\x35\xbd\xc6\x2b\x95\x96\x97\xc2\x61\xc4\xef\x38\x1e\xf0\x86\x04\x0e\x21\xee\x7a\xc0\x23\x70\x18\x47\x1d\xe8\xb5\x6b\xbd\x84\x5c\x8f\x3a\x7d\x6b\x3d\x11\x45\xbf\x51\x7a\x97\xc0\x94\x9d\x82\x56\x9d\x2d\xd2\x0e\x2a\x15\xd3\x47\x08\x3c\x39\xce\xfa\xd9\x9e\x1c\x62\x75\x93\x1d\x22\x1a\xc5\xe8\x35\xb6\x99\xd8\xf9\xea\xd4\x34\x61\x4c\x89\x2c\x7f\x5f\x61\xda\xf4\xd6\xc7\xeb\x9e\x4a\xbe\x2b\x90\x6e\x6e\xd4\x55\xca\x3d\x81\xbc\xb8\x4f\x88\x09\x10\x30\xf7\x55\xb2\xc7\x12\xae\x89\x9c\xa9\xf3\x0c\x39\x33\xbc\x72\x7a\xb2\xad\xdb\x44\x21\x9b\x49\xe2\xc2\x68\x58\x59\x16\x89\x9c\x17\xac\x89\x2b\x23\xac\xe9\x19\xa8\x54\x7c\xeb\x57\x48\x03\xa0\xb2\xc8\x89\xa9\x54\x58\xc2\x46\x28\x72\xca\xc4\x90\x98\x7c\x72\xda\x54\x3e\xcc\xf3\xc9\xc4\x10\x07\x13\x80\x70\x1f\x12\x44\x6f\x90\x64\x70\x97\xc0\x23\x94\x8c\x8a\x86\x80\xd7\xcd\x3f\xae\xd1\x4a\xc5\x9f\x89\xa8\x81\x0b\x50\xb6\x30\xa5\x0a\x62\xb3\xca\x68\x7c\xae\x6d\xc2\xf7\x54\x4d\x4c\x1a\xa3\x65\xdd\x17\x4f\x7c\x0f\x75\x19\x6f\x80\xba\xe2\x3d\xa6\xe2\xa1\xec\x9c\x08\x77\xe1\xc3\x3b\xec\x23\x23\xaf\xec\x52\xc5\x48\x46\xe0\x5b\x79\x02\x90\x84\xc4\x74\x4c\x5b\xa5\xaa\x94\x30\x01\x90\x4b\x94\x42\xc2\xff\x88\xcd\x58\x30\x60\x9c\x0d\x64\xdf\xf2\xcb\x89\x7d\x42\xfc\xb1\x6a\x07\xfa\x18\x34\x00\x0c\x00\xa7\x2e\xb3\xc8\x82\xba\x25\x47\x4e\xaf\x84\x74\xa7\x2a\x74\x9c\x91\x1a\x4a\x81\x6d\x04\x22\x81\x2d\x9c\x86\xe8\x34\x4c\xd7\xc4\xb5\xbc\x64\xb4\xd6\x52\x71\x0a\xc3\xd9\x34\x2d\x9d\x42\xd4\xb2\xbb\x40\xa6\x07\x9b\x8d\x60\x22\xc5\x10\x8b\x2c\x02\x1e\x6d\x48\x4c\x0f\xb2\x67\x93\xad\x74\x6c\x06\x07\x05\x00\x55\x2a\x3e\x12\x23\xc4\xb8\x61\xf3\x8d\xc8\xc4\x51\x1c\x3b\xd1\x31\xae\xf8\x25\x23\x11\xac\x25\xf2\xb8\x97\xb2\x4c\x32\x7b\x48\x92\x25\x86\xa4\xca\x86\xe4\x08\xa5\xe8\x20\x86\x7b\x82\x6a\x89\xac\x92\x11\xec\xfa\xba\x99\xd3\x43\xe8\x1c\x47\x4a\xb4\x94\xe7\x67\x64\x89\x00\xd0\x10\xee\x2a\x59\x54\xb3\x0e\x48\xd8\x6a\x5f\xa2\xd5\xea\x25\xb5\x9b\x60\x8b\xf2\xb7\xf4\x58\xd1\x8b\xe0\x94\xd4\x46\x38\xed\xa3\x1e\xf5\x71\xb0\x76\x40\x60\xf4\x60\x62\x27\x19\x99\xe7\x24\x00\x69\x42\x28\xec\x96\xa0\xed\x74\x2a\x8f\x7d\x31\xe6\x6e\x21\x46\x74\x37\xea\x00\x87\xad\xb6\xe6\x33\xaf\xf8\x2d\xdc\x66\xdb\xba\xd5\x36\xdb\x39\x7f\x5e\x09\x41\x37\x8f\x0a\x8c\x69\x90\xe8\x1e\xc0\x60\x0d\xc6\x29\x5c\xe7\x1f\x15\x61\x3a\x15\xb2\xd2\x8d\x86\x6c\x4a\x6c\x02\x1c\x88\xdd\x12\xf1\xe0\x2f\x7c\x2b\xfa\xd0\xde\x39\x30\x08\x2c\x82\x18\x39\x04\xd1\x6a\x70\xc2\x1b\x24\xe3\xb1\x6f\xf5\x46\x37\xa1\x18\x5f\xce\x76\x81\x44\x1d\x97\x68\xba\xe1\x3c\x54\xf9\x68\x30\x09\x40\xab\x1d\x30\x2e\x0c\xa8\x8b\xd4\x7c\xab\xc4\x9e\x3d\xbe\x56\x5a\x6d\x20\xc4\x94\x6a\xc9\x5c\x22\x97\x31\x17\x51\x9e\x0a\xf1\x20\x17\x52\x4a\xde\xbd\x52\x61\x0c\x00\x67\xd9\x45\x42\x00\xc8\x66\xe3\x32\xae\x54\x74\xb2\x19\x0f\xbd\x6c\xa8\x66\xf8\x27\xa0\x84\xe5\xb1\x91\x47\x3d\x7f\x43\xb0\x47\xfd\x28\xbd\x11\xa5\xf4\x20\x49\xa8\x1f\x04\xa6\x53\xfa\x96\x7f\x08\xa9\x94\x3d\xa4\x2f\x9e\xec\x45\x87\xb7\xa3\x01\xf4\xe5\x1d\x93\x75\xae\x7e\x89\x5e\xd6\xfd\xa2\xaa\x4f\x44\x6c\x01\x52\x1b\x46\x04\x62\x7a\x3b\xe9\x2a\x2e\xff\x6a\x1f\xc5\x3c\x14\xf5\x04\xd8\x8d\x37\x73\xa2\x8a\x8d\x8d\xa9\xd7\x00\xc9\xf1\x36\x7b\xb2\x02\x6f\x0e\x7e\x39\x39\x86\xa4\x9a\xc2\x18\x76\x68\xf5\x18\xd1\x7e\x55\x88\x30\x2e\xb0\xcd\x95\x60\xd6\xc5\x0b\x4e\x9e\xc1\x28\xa6\x68\x18\x43\x3b\x73\x11\x47\xbd\x70\xc5\x4e\x7d\xb3\x2a\xa1\x70\x30\x8c\x23\x0a\xd3\xb9\xaa\xcb\x30\xf6\xec\x96\x7b\x06\xac\x3d\x2e\x50\xf5\xc5\xd1\x49\x32\xa2\x4d\xa2\x3e\x00\x8e\xe3\x7d\x8e\xe2\x55\x85\x39\x17\x46\x7b\x85\xa3\xec\x81\xa8\x23\x04\xd1\xa7\xe2\xcb\x1d\x72\x95\xf7\x29\xa3\x3c\x94\xeb\xab\xd6\x43\x31\x85\xc4\xa5\x4d\x7a\x1b\xef\xef\xa3\xf4\xfe\xe8\xf0\x10\xa6\xec\xd3\xfe\xfe\x24\x10\xb6\x4d\xbb\x7c\xd9\x27\x58\xd4\xec\x93\xda\xfe\x3e\xef\xeb\xfe\x3e\xa0\x41\x53\x7d\xec\x47\xf8\x10\x0a\x95\x8a\xbb\xaa\x0a\x3c\x43\x3c\xda\xe4\x2f\xb0\x98\x16\x5b\x07\x45\xd5\x49\x71\xf1\x21\x49\x46\xc3\x2a\x87\xcf\x6d\xb9\x88\xbd\xac\x97\x81\x5e\x34\x54\x50\x94\xa6\xe7\x01\xb9\x7e\xf4\xc2\x02\x83\x88\x76\xfa\x90\x98\x15\x75\x4b\x24\x80\x54\x4c\x2c\xec\x0a\x89\xb9\xae\x35\xb3\xb0\xec\xc1\xd3\x45\xaa\x09\x2f\xe3\xcd\xb9\x3a\x3d\x90\xc2\x88\x74\xfa\xd7\x71\x74\x10\x43\x7e\x31\x9a\x22\xa8\x92\x0e\x1c\xf9\x39\xa0\x45\x8d\xc1\x04\x88\x36\x85\x5e\x38\x77\xa0\xcb\x8f\xb5\x56\xdb\x95\xd8\x9a\x6b\x31\x3f\x5c\x54\x3e\x4f\x8b\x81\x18\x0f\x42\xfb\x10\xcb\x3f\x85\x3b\x41\x1d\xee\x30\xa8\xd1\x44\xa8\xc8\x2c\x39\x84\x9b\xae\x13\xf9\x91\x99\xf6\x93\x51\xdc\xbd\xdf\x4f\x8e\xc5\x5e\x11\x63\x5d\xa8\xc8\xdf\x30\x48\xa6\x3a\xff\x97\xfa\x10\x7b\xc1\x78\x5c\xfe\x4d\x6c\x30\x10\x75\xbb\x53\x5a\xe0\xc5\x8b\x71\xe1\x19\x2a\x15\xdf\x3b\x48\x28\x4d\x06\x5e\x18\x86\x45\x8d\xdd\x4d\x84\xd8\xc7\x0b\x76\xe5\x11\xca\x73\x1d\x8c\x50\xdc\x35\x24\xe2\x46\x42\xf6\x20\x19\x30\xe6\xa3\x49\x35\x97\x31\x23\x27\xc3\xde\xd0\x2c\xb6\x4e\xae\x60\x95\xb3\x90\x6a\x71\x21\x87\x33\x35\xf7\xee\x7f\xf1\xae\x12\x38\xf8\xb9\xc9\xe6\x33\xe3\x05\x41\x76\x82\x31\x3f\xc3\xeb\xb6\x5b\x27\xa5\xe4\x94\x2a\x47\x22\x87\x81\x63\x65\xd6\x0c\xda\x2d\x68\x16\x71\x14\x73\x8d\x58\x86\x1a\x6a\x91\x70\x2d\x2c\x35\x4b\x86\x5d\x06\x32\xf3\xc7\xeb\x02\x94\x2d\x32\x9f\xdd\x2f\x24\x99\x56\x6b\x0b\x07\xec\xe2\x51\x54\x0a\x07\x00\x0b\x19\xc5\x14\xf2\xcf\x08\x14\xac\x54\xf2\x04\x3e\x43\xd8\xa1\x4d\xd8\x01\x29\x20\xed\x80\xf3\x20\x02\xbb\x82\xb9\xc2\x00\x39\xb3\x25\xaf\xc8\x62\x3c\x6f\x20\x18\x77\x77\x0b\x39\x48\x54\x93\x64\xcb\x37\x7c\x21\x64\xf7\x58\x53\x90\x9b\xb5\x14\x5b\xc4\x98\xd2\x62\x6f\xf8\x75\xa0\x46\x50\x69\x07\x7d\x38\x1e\xb7\xda\x5c\x1a\x3b\x01\xc5\x4b\xb3\xc0\x1f\xdc\x69\x76\xbc\x18\x25\xd3\x43\xd4\x84\x80\xc2\x87\xb4\x59\xb4\xdc\x5f\x8e\x0e\x60\xcc\xd8\xe8\x5c\x6b\xfc\x4b\x91\xef\xb9\xa2\x6a\x76\x8b\x12\x7d\x18\x34\x9f\xba\xd2\xed\xae\x7b\x4f\x69\xaf\x53\xe0\x29\xaf\x56\xab\x3d\x15\x9c\xe9\xc1\x5b\x70\x1e\x9c\xd5\x49\x9c\x6f\xea\x3c\x65\xaf\x0b\x9d\xb8\x4b\x33\xd0\x0b\xb2\x26\x67\xa6\x9f\x2e\x18\x08\x25\x83\x7c\x69\xef\xd6\xcb\x2f\x46\x24\xad\x29\x5c\xb9\xb6\xc8\xdb\xde\x7c\xe6\xf3\x37\xae\x7e\xe1\xa2\x07\x0e\xe2\xa4\xf3\xa0\xf9\xd4\xa9\xf4\x76\x98\x7a\xcd\x96\x77\x5f\xf2\x00\x9e\x5a\x24\x1e\x85\x64\xe0\x01\xaf\xa2\xc4\xb0\xc0\x7b\x81\x8b\xee\xe5\xee\xd4\xc3\xcd\x3f\xc4\x71\x72\x7c\x35\x86\x11\xe1\xbf\x08\x8a\xae\xc1\xb4\x43\xd0\x01\xec\xbe\x78\xa2\x92\xa4\x2d\x8e\xfa\xc9\xf7\x94\xf3\x23\x56\xb9\xc5\xde\xe1\x18\x09\x5c\x5e\xe8\x44\x71\x67\x14\xdb\x47\x1c\x4b\x8c\xa3\x34\x15\x40\x92\xc2\x3b\x58\xf7\xe1\x05\x89\xf3\x4b\xe8\xb0\x1f\xa3\xc3\x3e\x85\x5d\x91\xca\xae\x89\x91\x2a\xde\x45\x44\xfc\x49\x39\xc3\xc3\x61\x92\x0c\xbb\xc9\x31\xbe\xaa\x6a\x86\x0f\x29\x89\x18\xc0\x39\x49\xa7\xcf\x7d\x55\xf9\x1d\xfc\x52\x72\x04\x79\x5d\xfd\x84\xa0\xd7\x12\x4c\xa3\xd8\xc6\x93\xb1\x51\x28\x8a\xe3\x93\x3b\x43\x88\x45\x43\x71\x12\x75\x11\x3e\xbc\x05\xd3\x34\x3a\x64\x2c\xec\x0b\x9c\x1a\xee\x11\x74\x78\x08\xc9\x97\x50\x97\xf6\x59\x22\x4e\x04\x23\x98\x5a\x19\x13\xfc\x62\x3c\x22\x02\xba\xca\x3a\x2e\xc0\x1b\x49\x67\x94\x0a\xf0\x26\x1e\x8e\xa8\x00\xbf\x00\x4f\x58\x7f\xc4\x0f\xd6\x3c\x87\x0a\x66\x90\xcb\x6e\xfa\x49\xdc\x15\x1d\xb1\x7e\xba\xd9\x08\xb7\xc0\xb8\xdf\x21\x49\xcc\x27\x8f\x70\xcd\x01\x24\x57\xee\xde\x14\x3f\x71\x17\x92\x9b\xf8\x2e\x17\x56\x03\xef\x85\x94\xe7\xdc\x4b\x38\x6c\x0e\x06\xf3\xd3\xea\x99\x93\xe0\x34\x2b\xbe\xdc\x75\x71\x14\xfb\x0d\x76\x6d\xf8\x26\x85\x03\xa7\x24\x8d\x0e\xb8\x90\x97\xc3\x62\x74\xf5\xe4\xca\xdf\x37\xbb\xd6\x8f\x7b\x49\xcc\x71\xa1\x27\x43\x78\xa5\x0f\xa3\xae\xe4\xc4\x59\xda\x11\x24\x14\x75\x9c\xb9\xad\x44\x94\x12\xb6\xb9\xbd\x94\x46\x54\x08\x0f\xbc\x66\xab\xb5\x03\xbc\x18\x52\x0f\xb4\x5a\x5b\xcf\x02\xaf\x63\x30\x6a\xb5\xb6\xb6\x41\x1d\xb4\xbc\x32\xa6\xdc\x6b\xb7\xdb\x5c\x1a\x2e\xff\x80\xd3\x4c\xd5\x75\xe0\xad\xaf\x7b\x6d\xd0\x7a\x1a\xb0\xba\x1a\xa0\xd5\x6e\x83\x56\xab\xb1\x0d\x2e\x6e\x73\xe8\x1c\xf7\x29\xec\x25\x04\x16\x35\xb4\xda\xc1\x72\x07\x0f\xcc\xf2\x99\xb9\x99\x39\xc3\xf6\x18\x36\xf6\x9f\x7f\x8f\x1b\x48\xde\x26\x3f\xc6\xdb\xdf\xcd\xff\xa8\x24\xa1\x2d\x76\xf8\x45\xb1\x2b\xb7\xb6\xc1\xd3\x1a\x7a\x46\x43\xcf\x6a\xe8\x39\x0d\x35\xea\x1a\x64\xe4\xa1\x64\x6b\xa9\xcc\x0d\x53\x6e\xcb\x80\xdb\x06\xdc\x31\xa0\xc1\xa5\x61\x90\x69\x18\x6c\x1a\x06\x9d\x86\xc1\x67\xcb\xe0\xb3\x65\x5a\xdb\x32\xad\x6d\x99\xd6\xb6\x4c\x6b\x5b\xa6\xb5\xad\xa7\x9d\x1e\xa9\x9d\xa0\xbe\x1a\x04\xb6\x14\x02\xcf\x02\x2f\x92\x04\x43\xd1\xc9\x36\x23\xad\xce\x25\xc9\x93\xe4\x51\x14\x35\x08\x6f\x1b\x84\xb7\x0d\xc2\xdb\x06\xe1\xed\x6d\x07\x1f\xe7\xde\xa9\xb2\x98\x8e\x6c\x9b\x8e\x6c\x9b\x8e\x6c\x1b\xac\xb7\xcd\xb0\x6d\x1b\x2c\x76\xea\xb3\xfa\xe2\xde\x9d\x9d\xde\x30\xb4\xdc\x6d\xa3\x6a\x35\x1d\xda\x31\x1d\xda\x31\x1d\xda\x31\x88\xef\x18\xc4\x77\x0c\xe2\x3b\x06\xf1\x9d\x67\x9d\x71\xc8\x6d\x03\x95\xcd\x74\xea\xa2\x19\xda\x8b\x06\x93\x8b\x1c\x93\x76\xbb\xe8\x84\xfa\xda\xd7\xf8\x56\xd8\x01\x1e\xea\xc9\x01\xd8\x02\x2d\x2f\x7b\x35\xd3\x87\x5d\xf1\x29\xc7\xfe\xb1\x6a\x1a\xa0\xf4\x18\x2d\x13\x90\xf1\x9a\x5b\xad\x0c\x3b\xdb\xd6\xa8\xa8\x99\x13\x5d\x68\x83\x5e\x14\xa7\xb0\x0d\x34\xee\x6d\xe0\x0d\x23\x12\x0d\x20\x85\x84\x21\xd4\x9e\xcc\x40\x71\x07\xec\x94\x54\x3e\xad\x52\xf1\x91\x55\x91\xfd\xb6\x05\xb6\xd5\xe7\xc2\xb2\x8d\xf6\x44\xb1\x09\x5e\x3f\x4a\xaf\x1f\x45\xb1\xd7\xe4\xbd\x98\x3c\x05\x06\x90\x46\xcd\xd3\x01\xbf\x39\x88\x2b\xd0\xe3\xbc\xd6\xd4\xfa\x07\xa9\xe7\x5e\x5a\x8b\xec\xff\xce\xe8\x4e\xf9\x71\xba\x53\xdd\x8d\x1f\x34\x1e\xbc\x74\xe3\x4a\xe1\x9d\x2a\xc7\x14\xb2\x65\xbc\x03\x9c\x35\xf9\x90\x6f\xb7\x82\xc5\x77\xce\x53\x9a\x1b\xe6\xc5\xe7\x78\xa6\x6e\xc9\x15\x3c\xbc\x70\x18\xa3\xc1\x00\x12\x53\x6c\x86\xb4\x80\xdf\xf5\x85\x89\xb5\xf3\xbe\x40\x47\x1d\x88\x3e\x61\x51\x07\x74\x27\x53\xf3\x1a\xc8\x37\xcf\x54\x92\xde\x3a\x0d\x82\xc2\x57\x2f\x57\x23\x8c\x13\xba\xde\x89\xe2\x78\x3d\x5a\xe7\x4c\xf6\x7a\x94\xae\x47\xfa\x15\x97\x67\xd5\x3e\x12\xb5\x5b\xcf\x4c\x2e\x91\xcb\x54\xeb\x6f\x95\x9e\x13\x87\xb4\x45\xda\x6b\xb8\x06\xf1\x68\x20\x9e\xc3\x84\xf6\x8f\xf1\x78\xa3\x01\x70\x4d\xd8\x8e\x8d\xc4\xf7\x8d\x3a\xf0\xf8\x0e\xf3\x10\x5e\x17\xb6\x16\xc7\x04\x51\xf9\x2d\x00\x65\x7b\x14\xd7\x1e\xc0\x13\x80\x83\x89\xc1\x32\xb6\x85\x87\x7e\xac\xde\x38\xa5\x90\xde\x55\xe3\x78\xa7\x97\x7d\x3f\x65\xe9\xc8\xf8\x68\xef\xef\x87\x14\xf0\xd1\x05\xd4\x1a\x81\x8e\x31\x61\x72\x35\xc7\x45\xaf\xd6\xee\xc1\x1e\x5b\xd5\xe3\xf1\x86\x84\xcc\x4c\x07\xca\x86\x7b\x0d\xf5\xfc\xdc\xd7\x5a\xda\x8f\x06\x4e\x96\x82\xf5\x73\x97\x24\x0f\x4f\x54\x26\xf1\xae\x4d\x76\xe2\x1a\x23\xbc\x65\x4f\xba\x72\x8d\xf9\x2c\x3b\x68\xb5\x1d\x35\xcb\x24\x08\x02\xb0\x51\x97\x36\xe7\x30\x63\x73\x9e\x7d\xe8\x27\x05\xf9\x00\x87\x5d\xf9\x8a\x8b\x2a\x2d\x7e\x57\x6a\xa8\xad\x35\xbe\x46\xc2\x3c\x12\xd8\xa8\x86\x00\x52\x56\x0c\x21\x2e\xd6\x1d\x69\x04\xc4\x07\x62\xcf\x7e\xcf\xd5\xc1\x8c\xc7\x2a\x7c\xc5\x46\x18\x46\x3e\x0d\xec\xbd\xa8\xdf\x1a\xd3\xdd\x8c\x2d\x87\x8e\x6e\x00\xad\x6d\x73\x0f\xf6\x20\x81\xb8\xa3\xf6\x0e\x6b\x7c\xbd\x1f\xa5\xf8\x29\xba\x7e\x00\x21\x5e\x97\x77\x3f\x94\xc2\xee\x7a\x75\x5d\x1a\x6c\x3a\x39\xd8\x14\xc0\xae\xa5\xad\x9a\xf8\x30\x68\x52\x83\x7e\xd7\xa2\x52\xdd\xe2\xa5\xbb\x2b\x53\x0f\x9d\xd4\x42\xc2\x63\x56\xf3\x78\x5c\x58\x8a\x5b\x82\x38\x14\xa4\x2f\xd4\x00\xe2\xf5\x87\xb0\x5e\x3a\x9d\x28\x74\x65\x1d\x0f\xe0\x49\xea\xe3\xa0\xd8\x12\x26\x69\xc1\x76\x88\x5b\xb0\x2d\x4c\x4c\x2c\x1a\xb0\xb1\x61\xff\x14\xe6\x27\x16\x05\xd8\x70\x13\x80\x6f\x08\x42\x32\x1e\x27\x35\x35\xba\xaf\x41\x12\x54\x2a\x7e\xe2\x12\x88\x24\x24\xd2\x9a\x2d\xa8\xb1\x5b\x29\x49\x05\x94\xb1\x6b\x21\x40\x3f\xa0\x58\x57\xba\x93\xf1\x98\x4c\x02\x90\x70\x8b\x2e\xfd\x44\xc2\x69\x8f\x37\xc7\xb1\x71\xd3\x77\x9d\x5f\x62\x83\xa1\x40\xbd\x19\x73\x3e\x4a\x56\x41\x5a\xeb\xb1\xa5\x95\x6d\xa1\x8c\xc4\x51\x86\x5a\xc2\xcd\xc9\x02\x90\x3c\xa6\x47\x0b\xc3\xd0\x57\xd2\xf0\x7d\x71\xf9\xd0\x06\xa5\xea\x37\xca\xfc\xee\xfb\x7e\x12\xda\x33\xed\xe7\xdf\xee\x16\x6c\x2d\x65\x2a\x1a\xd2\xe2\x13\xe8\x3e\xdb\x26\xeb\xf0\xe1\x90\xc0\x34\x65\x2b\x90\x3f\x93\x84\x88\xf6\x21\x59\x3f\x80\xeb\xac\xf4\x7a\x42\x9c\x23\x69\xcd\xa2\x6f\x6a\x93\x08\xee\xc4\xa7\xdc\x26\x48\x7d\x04\xa7\x16\xe1\x69\xca\x51\x81\x40\xad\x9c\xe6\x46\x1d\xd8\x6b\x8e\x0d\xd8\x24\x00\xb4\x52\x89\x65\x10\x35\x3f\x01\xd2\x8e\x51\x6e\x8a\xb0\xe3\x27\xd6\xab\x9b\xc4\xbc\x22\x4a\x05\x35\x62\xeb\xa8\x44\xe5\xad\x98\x85\x30\x01\x3e\x09\x5b\xa7\x0f\xe0\x49\xd3\xeb\x47\xb8\x1b\x43\x21\x97\x11\xf8\xe5\x86\x55\x58\x58\x92\xc3\xb4\x26\x04\x38\x95\xca\x46\x43\xe9\x75\xad\x64\xa1\xb0\xd4\xc7\x06\xff\xdc\x4b\x3a\xa3\x94\x0b\x83\x84\xb6\xca\x6e\x53\x8a\x8b\x8a\x1a\xb5\xab\xe6\xd9\x2a\x95\x5c\x92\xd4\x69\xce\x6a\x45\x8b\x9f\x8a\xda\xb1\x75\x63\xb2\x6e\x99\xbf\xa0\x8f\xf2\x0b\x2f\xb9\xeb\xd3\x5a\x4a\x93\x21\xdb\x00\xd1\xa1\xb0\x46\x0f\xc0\x46\x23\x68\x36\xb6\x59\x31\x46\xa3\xae\x26\x5d\xae\x15\x45\x29\x1b\x9d\xe2\x12\x56\xc0\xa2\xbe\x11\x20\xee\xc2\x9a\x92\x13\x55\x2a\xd5\xc6\x86\xb0\x4d\x16\x09\xda\x12\xd8\x29\x11\xec\xfa\xb0\x26\xd5\xde\x35\x2e\xa2\xf4\xa9\xc0\xc7\x4e\xef\x27\xec\x83\x53\x10\x14\x64\xb3\x8a\x2b\x62\xa2\x07\x55\xee\xe5\x17\x33\x52\xd3\xa2\xc1\x35\x7c\x1a\xeb\xba\x44\x7f\x3c\x6e\xb5\xd5\xab\xee\x7a\x00\x70\x58\x6d\x00\x14\xd6\x2f\xa1\xcb\xea\x1d\xfb\x25\xb4\xb9\x19\xa0\x9e\xaf\x4c\xf0\xaf\xbf\x3a\x8a\x62\x9f\xb4\x50\x1b\xc0\x20\x38\xc5\x21\x52\xa6\x9a\x92\x8c\x3e\x5f\x6d\xec\x12\xcb\x26\x39\x68\x12\x6d\xd9\x4b\x34\xe2\x66\x8d\xe4\xb1\x15\xf6\x93\x8a\xb3\xd2\x66\x76\xaf\x8e\x20\x39\x11\x9d\x64\x94\xe2\x7f\x2a\xb8\xc6\x48\x91\x84\xb1\x4a\x43\xac\x85\xaa\x09\xe0\x53\x1b\x61\xf4\xea\x08\xde\xec\x06\xc1\x1a\xa7\x0d\x1c\x0f\x3f\x98\x68\xc4\x94\xd1\xc9\x5e\x74\x70\x53\x08\x00\x33\xd6\xa3\xb2\x9f\x9a\x70\x9b\x35\x99\x15\x88\xd8\xbb\xc4\x91\xce\xec\x7a\xd5\x86\xd7\xb4\x0a\x4a\x61\xe3\x78\xec\xd5\xbd\xc9\xa4\x1d\x54\x2a\x23\xdf\xa6\x5b\x24\x00\x98\xa7\x01\xcc\x88\xbe\xaf\xd5\x91\x41\x60\xe5\x72\x88\x47\x8b\xb4\x81\x39\xe4\xef\x1c\x63\x75\x38\x08\xc1\xfd\x90\x8d\x61\x52\x52\x98\x9d\xd4\xfa\x4b\x00\xfa\x45\x19\x25\xb9\x68\xe1\xa5\x9a\x11\xa5\xe7\x69\x47\x13\x0c\xb6\xe2\x96\x68\x49\x95\xcf\xb4\x95\xd8\x17\xd4\xe1\x23\x5e\x50\x2f\xc8\x99\x7f\x7c\x17\x55\x10\x81\x94\x3f\xbc\xee\xac\xd9\xbc\xac\x66\x06\x7b\x9f\xd4\x2b\x6b\x77\xe5\x3c\xe4\xc9\x71\x1e\xd2\xff\xd4\x38\x0f\xe9\x7f\x22\x9c\x87\xf4\xcf\xcd\x6b\xe2\x50\xdd\x1b\xf9\x03\x87\xf2\xbb\xcc\xa9\xb9\x01\x36\x89\x7d\x1d\x74\xf8\x70\xe2\x5e\x05\x35\xbf\x4e\xf4\xa5\x4f\xf2\x10\xc4\xb9\x8e\x91\xfc\x75\x0c\x6b\x0e\xca\x1a\x96\xc1\x99\x8a\xc9\x8e\x9e\x08\x31\xd9\x89\x23\x26\x3b\x79\xac\x62\xb2\xc3\x95\x98\x6c\xaa\x98\xec\x38\x2b\x26\x3b\x3e\x4b\x31\xd9\x41\x81\x98\xec\x60\x8a\x98\xac\x57\x2e\x26\xdb\xcf\x88\xab\xf6\xcf\x5d\x5e\xa6\x9b\x3e\xb6\x98\xa3\xe3\x3f\x87\xa4\xec\xba\x32\xbd\x55\x0c\x15\xe3\x27\xe0\xee\x14\xd2\x27\x49\x16\xb0\x48\x60\x5e\x00\x61\x0b\x27\x26\x41\x13\xb6\x68\x3b\x24\xc0\xea\xf8\xfd\x95\x84\xee\xd3\x20\xa1\xbb\x13\x0a\xe7\x7f\x95\x8a\xf8\x5b\xc3\xd1\x11\x3a\xe4\xdc\x7c\x36\xa1\x36\x4a\x21\xb9\x72\xc8\x1f\x7b\x78\xe0\x61\x78\x47\xcb\x28\xbc\x5b\xf7\x6f\x5e\x5f\xf7\x82\xe7\xab\x8d\xf1\xd8\x4a\xde\x23\xa8\x0b\x31\xbd\xc0\xbf\x80\x2b\x46\x18\xe8\x7a\x20\x99\x29\x13\x4c\x32\xbf\xa3\xcc\xef\x34\xf3\xbb\xf3\xa9\x11\x20\x9e\x94\x0a\x10\x0f\x73\x02\x44\xfe\xa8\x65\x6d\xa0\xe4\x87\x9a\x15\xa3\x39\x2f\x3e\x80\x38\x9c\x19\xc0\x61\xfd\x12\xbe\x4c\x2f\xe1\xcd\xcd\x80\xb4\x70\xdb\xf2\xec\x83\x35\x97\x76\xdd\xdf\xf7\x61\x88\xf8\xe2\x97\x27\x05\x02\x2d\xd6\x98\x71\x2c\xc9\x0e\x32\x8f\xcb\x4e\x6e\x24\x98\x7a\x40\xed\x05\x5e\x36\x00\xde\x7e\x1c\xa5\xf4\x66\x2a\x24\x0d\x50\x49\x38\xf8\xe9\x24\xc4\x6b\x01\x18\xca\xac\x14\x3e\xa4\xb7\x60\x94\x8e\x08\xbb\x1f\xc7\x60\x9f\xbf\x12\x87\xc5\xd2\xcf\x64\x08\xa5\x35\x5b\xb7\x58\x88\x25\x38\xa8\xae\x4f\xa5\x23\x6e\x2e\x15\x24\x95\xca\x86\x96\xc4\x58\xa8\x29\xb7\x10\x05\xae\x44\x3a\xd2\xde\x4d\xb8\x6c\xb0\xa4\x34\xbc\x0f\x4a\xf4\x26\x84\x36\xc0\xf3\x94\xa7\x0c\x53\x77\x68\x44\x59\x29\x4d\x08\xe4\xa2\xac\xfb\xf4\x24\x86\x05\x32\x54\xc5\xfd\xc8\x9d\x7a\x08\xb9\xe5\xe6\x88\xc2\x2e\x2f\xc1\x25\x63\x21\xad\xf5\x12\x2c\xaa\x00\x58\xfe\xfa\x62\x44\x50\x84\x29\x40\xf2\xf7\x97\x20\x3a\xec\x53\x90\xa8\xcc\xe8\x35\x08\xa2\x90\xd6\x62\x84\xe1\x4b\xe2\x5b\x2a\xbf\xdd\x88\x06\x28\x3e\x59\x93\x6f\xf5\xe5\x4c\x86\x26\x96\x35\x01\xde\xba\x09\x64\x8d\x9d\x5f\xc8\xf9\x95\x00\xef\x82\xf9\x15\x39\xdf\x52\x23\xdf\x15\xe2\xcc\x3b\xc3\x62\x09\x24\xdf\xcf\x72\xe7\xc2\x1a\xe5\x4e\xdf\x8c\xfb\x07\xf1\x9b\x0d\xcc\x15\x4a\x09\x3a\x18\x51\xe8\x7b\xdd\x88\x46\x55\x25\xa8\xac\x0a\x6b\x3c\x9b\x4f\x22\xe1\x30\x22\x29\xbc\x89\x29\x5b\x0e\x75\xb6\x8b\xf3\x12\x5d\xe1\xc1\x00\x62\x2a\x1d\x11\xf8\xca\x81\x8e\x7c\xaa\x22\x6a\x97\xf7\xfe\xdc\x42\x50\xdf\x01\x09\xd6\x4a\x57\x89\x94\xe3\x32\x76\x3a\x23\xec\x2e\x95\x6f\xda\x72\x6c\x9e\xa9\x40\xbe\xad\x04\xe8\xf2\x79\x58\x51\xcb\x09\x17\xf3\xcf\x2d\x62\x2f\x9e\x83\x8c\x46\x61\x0e\x81\xbb\x91\xbb\x14\x0a\xdd\xd9\x14\x3d\xcb\x9f\x5d\x49\xa9\xbb\x7c\x0f\x9f\xcf\xab\x64\xca\x2f\xc6\x11\x7e\xe0\xeb\x65\x20\x04\x22\x6a\x75\x94\x4e\x4a\xab\xf4\x8b\x24\x8f\xd5\x46\x9b\xfb\x13\x99\xb2\xbf\x63\x77\xda\x5d\xeb\x63\x9f\xe6\x48\x03\x7f\x99\x95\x13\x88\xd0\xdd\x19\x24\xc4\x57\x0f\x67\xa7\x64\xb1\xde\xc8\x83\xac\xdc\x58\xbc\x89\x0a\xca\x29\x95\x5c\x09\xc1\x84\x5f\x02\x7c\x3d\xf4\xcf\x87\x3b\xcf\x56\x2a\xfa\xe7\xe5\xf0\xb9\xfa\x78\xbc\xbd\xe5\xcc\x0e\xfb\x9e\x9b\x1b\xb3\x94\xdd\x3d\x32\x4d\x71\x53\x70\xdf\x82\x35\x71\x91\xb8\x42\x77\x0d\xc8\x46\xc3\x7e\xf9\x45\xcd\x0a\x96\x82\xd4\x5b\x52\xb0\x6a\xa8\x6a\x4e\x0c\xaf\x55\x12\x4b\x53\x77\x02\x87\xd2\xf8\xb6\x60\x60\x8d\xc2\x87\x31\x97\xae\xff\x82\x62\x12\xa1\xfd\x6a\xa8\x67\xa9\xc6\xfd\xa0\x43\x83\x2b\x15\x5f\x3e\x59\xb5\x8f\xc6\xda\x31\xea\xd2\x7e\x51\xf5\x6c\xfe\xf7\x2c\xff\x30\xb2\x1a\xed\xf0\x43\xde\x53\xfb\x74\x10\xdf\x8f\x7a\xd0\xf7\x78\x4d\xcd\x75\xa3\xf4\xd8\xdc\xba\x08\xbc\xe1\x43\xcf\xf8\x42\x98\x5e\xb2\x51\xaf\xff\xc5\x25\xcf\x4c\xca\x20\x3a\x39\x80\x8e\x11\x75\x7e\x2e\x36\x1e\x06\x39\xed\xdd\xa3\x0f\xe5\xae\x67\xab\x49\x2c\xbb\xf3\xf1\xd8\x93\x8a\x92\xa3\x02\x45\xc9\x51\x81\xa2\x04\xc4\xe1\x7d\xdf\x1f\x85\x1d\x47\x63\xe2\x72\x27\x2d\xd2\xe6\x1c\x9e\x73\x01\x73\xaf\x67\x36\xab\x67\x5d\x07\xb8\xbf\xa7\x49\x00\xee\xfb\x23\xbb\x7a\x87\x9f\x99\x47\x55\x52\x5a\x3a\x00\x23\x5b\x7d\x91\x69\x27\xcf\x82\xcc\xa3\x2d\x99\x5e\xc5\xf4\x16\xdd\xd3\xbe\x95\x2c\xd8\x9a\x53\x7c\x7a\x4b\xce\x51\xda\x8a\x16\x6c\xc8\x2e\x3d\x4f\x3b\x46\xdd\x94\x2e\xd5\x92\x51\x37\x39\x6d\x8d\x6c\x75\xd3\x95\xe5\xd4\x4d\x33\xb5\x4b\x73\xfa\x33\x30\x4e\xee\x70\x67\x44\x08\xc4\x9d\x93\x6a\x17\x76\x12\x2e\x3c\x2e\xfc\x9c\x77\x81\x20\xc4\x0d\x39\xed\x95\xa5\xb7\x02\x3d\xd0\x05\x7d\x30\x04\x03\x70\x04\x4e\xc0\x21\x38\x00\xfb\xe0\x18\x5c\x07\xf7\xc1\x1d\xf0\x10\x5c\x01\x0f\xc0\x5d\x70\x0f\xec\x81\xab\xe0\x9b\xe0\x16\xb8\x09\xae\x81\xdb\xe0\x65\x70\x03\xbc\x06\x5e\x04\xaf\x80\x97\xc0\x17\xcd\xad\xe8\x55\x4b\xb8\xf3\xea\x27\x55\xf3\xf5\xa5\x95\xe6\xeb\xc9\xd1\x7c\x7d\xee\x53\xa3\xf9\xfa\xdc\x27\x42\xf3\xf5\xb9\x73\xd3\x7c\x7d\xe5\x49\xd2\x7c\x7d\xe1\x89\xd0\x4d\x7d\xc6\xd1\x4d\x7d\xe6\xb1\xea\xa6\xfe\x72\xa5\x9b\x9a\xaa\x9b\xfa\x6a\x56\x37\xf5\xd5\xb3\xd4\x4d\x7d\xb9\x40\x37\xf5\xe5\x29\xba\xa9\x57\xcb\x75\x53\x9f\xcf\xe8\xa6\x3e\xff\xe7\xd3\x4d\x7d\xd5\x62\x5f\xbe\xfa\xe7\xd0\x4d\x41\xf8\x67\x52\x4e\x51\xb8\xd2\x4e\x7d\x1a\xb4\x53\x04\x86\xf9\xa5\x5a\x28\x0e\xa2\x7d\x88\x27\x00\xcf\x9d\xbf\xc3\x38\x84\x78\x02\x10\x0c\x7d\xad\x5e\xa2\x24\xea\x3c\x80\x5d\xa3\x5f\x52\x09\x69\x36\x61\x94\x4d\x88\xb3\x09\x9d\x6c\x42\x2f\x9b\xd0\xcd\x26\xf4\xb3\x09\xc3\x6c\xc2\x20\xa3\xe8\x3a\xca\xfc\x3e\xc9\xfc\x3e\xcc\xfc\x3e\xc8\xfc\xde\xcf\xfc\x3e\xce\xfc\xbe\x9e\xf9\x7d\x3f\xf3\xfb\x4e\xe6\xf7\xc3\xcc\xef\x2b\x99\xdf\x0f\x32\xbf\xef\x66\x7e\xdf\xcb\xfc\xde\xcb\xfc\xbe\x9a\xf9\xfd\xc5\x4f\x8d\xa2\xef\x33\x4a\xd1\x97\x1a\x45\x1f\x06\x09\x88\xc2\xbf\xf4\x53\x4b\xd1\x97\x5a\xfa\xac\xdc\xf1\x7b\x06\xe6\x48\xe2\x60\x4d\x03\x00\xa1\xff\x79\x9f\x84\x91\x20\x2f\x3c\x95\x3f\x14\x00\xde\xfe\x70\x74\x10\xa3\xce\x95\xbb\x37\xaf\x28\x01\xaa\xf4\xd8\xd6\x24\xb5\x7d\xa9\x0b\xd3\xb6\xea\x2c\x4d\xff\x90\xee\xc8\x44\x3e\x06\x01\x21\xe0\x61\x09\x02\x02\xca\xd7\x03\xcf\x23\xe1\x49\x00\xbe\xc2\xb0\x61\x8d\x4b\x47\x6b\xf2\x39\x76\xea\x81\x5b\xe0\xf3\xdc\x43\x7b\x2e\xc7\x7d\xed\xbf\xe1\x66\x3e\xcb\x10\x46\x14\xe1\xc3\xab\xfd\x88\x78\xe0\x5a\xf6\x3b\x7c\x38\x44\x7c\xc2\xee\x6b\xb1\xaa\x07\x6e\x67\x73\x89\xae\xde\x83\x29\xf7\x5e\xf4\x72\xe6\x33\x4a\xaf\xf0\x60\x09\x1e\xb8\x91\xf9\x22\x3d\x7b\x78\xe0\xb5\xcc\x87\xd4\x6a\xed\xc5\x6c\xa1\x28\xa5\x02\x1b\xd8\x15\x39\x5e\xc9\xe4\xe8\xdb\xae\x4c\x5e\x92\x1f\xc5\x34\x06\x52\x6e\xd7\xe5\x1e\x36\xd4\x99\xa0\xbf\x71\x7d\xa5\x1c\xd0\xbb\x22\x5e\x43\x59\x2e\x35\xa8\x33\xb3\x71\x87\x1a\xe5\x99\x84\x23\x36\x31\x76\xe9\xd5\xa8\xd3\x67\xc7\x07\x11\x3f\x9b\xad\xb6\x72\xf3\xc8\x40\x33\x2a\x4d\x62\xc9\xb9\x27\x01\x20\x46\x3b\x9c\x02\x1f\x9f\xc1\xdb\x18\xa1\xfd\x53\x43\xe7\x3e\x94\xa9\x54\xa8\xbd\xeb\xbe\x00\x4f\x0e\x92\x88\x88\xb8\x36\x95\x8a\xf7\x40\x4a\xf8\xf8\xbb\x12\x46\x2b\x2a\x15\x7f\xfb\x59\xfb\x95\xc9\x78\xbc\x53\xb7\x7f\x07\x82\xb4\xb8\x6a\x48\x1d\x7b\x21\x85\xb6\xb3\x1a\x3f\xab\xcd\x93\x0e\x5d\xe6\xe8\x2f\xcf\x59\xd0\xe1\xab\xe2\x01\xc9\x94\x1e\x0b\x37\xc7\x0a\x09\xc9\x22\x67\x11\x99\xf6\x58\xa3\x58\xb1\x0b\x48\xe8\xea\xf4\xd6\xca\xf4\x9e\x3e\x2d\x50\x7d\x12\x90\xc1\x19\x06\x4a\x19\x9a\x23\x55\x4a\x89\x56\xa4\x9a\x6b\x92\x20\xab\x98\x9d\xa2\x22\x95\x7c\xfa\x46\x81\xe6\x93\x5d\x73\x37\x8a\x75\xa2\x79\x4c\xe5\xe3\x0f\x11\x77\xa5\x34\x5b\x06\x2f\xe9\x04\x68\xba\x06\x77\x31\x6d\x6d\x1e\x33\xa1\xed\xbb\x39\x18\xc0\x2e\x8a\x28\x74\xd4\x7e\x96\x87\xf2\x0e\x25\xf1\x17\xe0\xc9\x78\x0c\x6b\x03\x48\xa3\x2f\xc0\x93\x79\x4b\x4e\xd3\x3d\x46\xd0\x87\xec\x18\x43\xfa\xb9\xcc\xde\xc9\x10\xe1\xc3\xbd\x28\x7d\x50\x1b\x42\xd2\x4b\xb8\xdb\x50\x5e\x1b\xeb\xec\xf6\xd6\x86\xad\xab\xb4\x75\x4c\x33\x86\x56\x2d\x6b\x35\xe1\xf7\x87\x51\x27\xb7\x0d\x60\x6e\x69\x94\x3c\x83\x93\x3a\x7b\x1d\xd7\x06\xe1\xc3\xf1\xd8\x97\x69\xe2\x40\xe0\x17\x87\xb9\x9e\xca\xcd\x5a\x06\xc2\xb5\xd3\x52\x28\x34\x5c\x14\x58\x4d\x2e\x06\x2c\x65\x0a\x02\xfb\xca\x0f\x53\x49\xeb\x86\x4e\xb3\x79\x51\xca\x75\x93\xaa\xc2\x43\x58\xca\x6b\x85\x64\xf6\xa4\x53\x59\x0b\x68\x60\x60\x21\x34\x1a\x76\xb5\x0b\xd4\xfc\xc4\x38\xa1\x71\xdc\xcd\x21\x9d\x81\xa2\x9e\x4f\x60\x41\xba\xd9\x4b\x05\xc7\xa4\xbb\x99\x64\x09\x4b\x30\x4e\xf3\x9f\xd7\x4a\xeb\x92\xaa\x5b\xc9\x1e\x84\x1b\x75\x50\x96\x35\xeb\x5e\x96\x04\xa7\xb0\x0c\x3d\x1e\x9e\x43\xd7\xd9\x00\xb0\x96\xe5\xa1\x78\xd8\xc1\xa2\xd1\x9d\x04\x41\x4d\x08\x82\x6c\x11\xd1\xbc\x2d\x71\x07\xb4\x7c\xb7\xcf\x54\xc0\x73\xf6\xb2\x78\x92\x73\x33\xec\x78\x6c\xcb\xcd\xb2\xbb\x62\xa5\x95\x99\xa6\xb1\xe5\x87\xa8\xac\xdc\xf0\x8c\x73\xaf\x1f\xa5\x8d\x0e\x8a\xa5\x75\xf9\x8c\x7c\xf2\x32\xab\x2a\xc3\x56\x39\xcb\x4a\x37\x50\xb2\xae\xd4\x77\xe5\x91\xa6\x1f\xa5\x96\x1a\x52\xf2\xef\xc0\xeb\x24\x98\xf2\x48\x4b\x6a\x33\x16\x35\xac\x4d\xe1\x64\x5c\x91\x14\x92\x23\x19\x2f\xa0\x30\xbf\xa9\xd6\x9e\x43\x63\x0a\x22\xca\x5f\x95\x01\x3a\x95\x29\x42\xd4\xed\x9a\xaa\x17\xac\xc2\x36\xb1\xcb\x8e\x1a\x2d\xff\x56\xbe\x63\x0a\x86\x9e\x2f\xe4\xdc\x3d\x42\x6c\x13\xc3\xfe\x90\xc0\xac\x70\xbd\xbe\xdc\x12\x52\x24\x93\x65\x9c\x0a\xe6\xd6\x26\xac\xc5\x3d\x2f\x5b\xec\xf9\x56\xcb\x67\xab\x10\x91\x5c\x05\x16\x32\x3a\x6b\x11\xa1\xd7\xab\xe5\x50\xc6\xd3\x52\x6e\x12\x03\x45\xca\xad\x2b\x49\x08\x73\x7d\x2c\xe6\x56\xdd\x07\xc4\x99\xfd\xac\x4d\x3f\x5c\x7b\x37\xdb\x19\x75\x96\x7f\x35\xad\x8a\x1b\xe6\x34\x83\xd1\x32\x0b\xaf\xdd\x52\xd3\xaf\x6c\x83\x41\x53\x72\xaf\x06\xe7\x8c\x15\x19\x11\x6f\xb7\x1d\x06\xd1\xf1\x4e\x29\xa9\x55\xbe\x02\xf5\xc2\xdb\x1a\x47\xed\x18\xb1\xcc\x94\xd4\xad\x8a\x51\x2e\xf5\x4e\xba\x52\xc9\xb2\x89\xaa\xb6\x02\x0b\x1d\xf9\xc5\x68\x33\x71\xd9\x7b\xeb\xa7\x5a\x11\x41\x51\x95\xed\x69\x92\xc4\x69\x58\xe4\x45\x4a\x3d\xbf\xd6\x9e\xaa\xa9\x7e\x6f\x0d\x9e\xf2\xda\x4f\x05\x5c\x95\x80\x95\x2a\x81\x7b\xee\x96\x46\xe8\xe2\xd4\x09\x7c\x5a\x93\x97\x45\x20\xf4\x0e\xfc\xb9\xbd\x96\x1d\x63\x17\xa9\x2b\x71\xec\x7b\x2d\x6e\x27\x2a\x0e\x61\x61\x25\xda\xf6\x82\x1a\xa2\x70\xe0\x23\x5e\x85\x0e\xac\x9b\xd4\x92\x5e\x2f\x85\x74\x2f\x19\x56\xb1\x81\x41\x1a\x46\x9b\xea\x9b\xb0\xa2\x5d\x4b\x9f\xc7\x4e\xc2\x26\xd6\x63\x35\xdc\xb5\xe0\x30\xad\xba\x19\x9b\xd1\x65\xeb\x33\x57\x7b\x99\xcc\x11\x37\x11\x35\xd3\xec\xf8\xc7\x2c\x5f\xbd\x5f\xd2\xe6\xce\xee\xac\x87\xc4\xe2\xb5\xac\xba\x16\xb7\x7b\xb6\x0a\x0b\x9f\xef\x12\x41\xc9\x90\xdf\x2f\xe1\x09\xdd\x0d\x06\xb0\x85\x69\xe6\x28\x65\xe5\x85\xa4\x8f\xdd\x9b\xb1\xb3\x12\x2d\x1e\xa6\x98\x4f\xc4\x5c\xce\xe0\x6b\x61\xba\x4d\x07\x2d\x71\x04\x1b\x6c\xe8\x97\x7c\xd4\xf7\xb1\xdc\x17\x29\x62\xf6\xdd\x03\xc8\xca\xa0\x64\xed\x81\x0c\x1b\x90\xed\x97\x8f\xb3\xb4\x62\x0d\x55\x2a\x04\xfa\x28\xd8\xf5\xb3\x9c\xdf\xec\x4e\x9c\x4d\x1f\x10\x40\x45\x11\x30\x8a\xb2\x86\x21\xe2\x46\x1a\x8e\x1c\x2c\x84\x80\xd8\x33\x45\x8a\xa6\x89\x2c\xc0\x6d\x4e\x6d\x7a\x46\x43\xac\xca\xa0\x59\x72\xab\xc0\x9a\xd3\xb0\xb0\x47\xd6\x3d\x6f\x7f\x4e\xa7\x19\x46\xe5\x66\xed\x58\xeb\xca\x39\xd5\x87\xc9\x74\x89\xd0\x6e\xe6\x6e\xfa\xca\xf0\x9a\x72\x65\x92\xf1\x58\x92\xcd\x79\x1d\x53\x19\xf9\xa0\xf9\xdc\xb4\x7c\x7b\x91\x78\xd3\xd7\xdc\x7a\x66\x6a\x75\xf7\xaf\x8a\x6c\x19\xbf\x22\x4e\x45\xc5\x1d\xcd\x7b\x28\x29\x28\x7d\xfd\xfe\xd5\x47\x29\xcd\x3a\x5b\x2a\xfb\x82\xfa\x16\x50\xec\xb6\xc5\x58\xa9\xcf\xf2\xb8\x42\xa7\xc8\x35\xc0\x46\xa3\x00\x33\x2e\x4c\x28\xc6\x4c\x69\x2d\xa4\xe4\xab\x52\x69\x79\x7b\xd7\xbf\xbc\x77\xe5\xde\xf5\x2b\x1e\xf0\x6e\xde\xbe\xfb\xca\x9e\xd7\xae\x21\xdc\x89\x47\x5d\x98\xfa\x2a\x5f\x0d\x27\x5d\xee\x9f\x31\xd8\x9d\x86\x4e\x73\x56\xaf\x79\x70\xb4\x29\xdd\x29\x90\x44\xce\x1c\xa0\xa2\xb9\x11\x4b\x76\xe6\xe4\x04\xa7\x45\xa2\xcf\xbc\xbd\xb9\x64\x3e\x32\xdb\xa4\xd1\xe4\xfe\x68\x38\xa3\x10\x75\x8f\x18\x91\x13\x1b\x96\xf1\xa3\x8a\x65\x80\x86\x65\x70\xf0\xc6\xc1\x9a\xe9\x99\xe1\x8d\x91\xdd\x61\xcd\x00\x29\x13\x05\xe8\x9a\xd4\xdb\xcb\x32\x4b\xda\xca\xee\x92\xc0\xbe\xc4\xe5\xdd\x91\x8f\xc7\xa4\x20\x75\x0d\x16\xd9\x35\xd2\x5d\xea\x6b\xe9\x39\xaf\x54\x75\xd5\xea\x68\x33\xcb\x92\x03\xc5\x4d\x37\xa5\x70\x46\xfc\x9a\x04\x4d\x9a\xbb\x29\xd8\xdc\xbb\x90\xdd\x97\x1f\xf3\x05\x61\xe4\xb7\x0a\xc3\xc8\x6f\x39\x61\xe4\xb7\xda\xc0\x3e\x34\xa5\x3b\x67\x6b\x18\x54\xcc\xaa\x24\x4c\xa0\x8f\x40\x2e\x3d\x7b\xe0\x8a\xd7\x10\x52\x6b\x36\x2d\xfc\x4b\xc2\xed\x88\x94\xc7\x21\x84\xbb\x5f\x42\xb4\x7f\x87\x73\x6b\x45\xbd\x04\x9a\x33\x5d\x32\x5c\xbe\xe8\x81\x41\x57\x3b\xfe\x16\x98\xdd\xca\xf5\x7c\x2f\xe3\x19\x1c\x94\x7f\x99\x67\x10\xb0\x6c\xc8\x74\xd3\x19\x0b\x80\x72\x0f\x2d\x8c\xf0\x55\x0d\x08\x81\x87\x10\x0b\x73\xba\x7b\x23\x4c\xd1\x00\xd6\x06\x11\x79\x60\xce\xee\x75\xe8\xeb\xf8\x3f\xda\xde\x57\xa9\x30\x0b\x4a\x1f\x93\x68\xe8\x72\x1d\xbd\x84\xf8\x97\x2e\x05\xe9\x31\xe2\xb6\x48\x9c\x3e\x84\x22\x16\x6e\x70\xda\x89\x52\xb8\x5e\x6f\xea\x90\x42\x0d\x90\x84\xea\x3a\x6b\x29\xf7\xf8\xb3\x37\x49\x26\x40\x04\xb9\x1d\x90\x1f\x55\xc3\x9d\x67\x03\x30\x0a\xa5\x7d\x54\x8f\x24\x03\x96\x99\x65\xf2\xa3\x00\xf8\x69\x38\xd2\xef\x04\x9d\xea\x76\x47\x62\xaf\x14\x69\x08\x37\x47\x81\x5a\x06\x8d\x5d\x1f\x87\x75\x90\x84\x9e\x17\x34\x93\x70\x04\xa6\x89\xa5\x4c\xb2\xed\x4b\x0c\x6f\x16\xdf\x7b\xdc\x12\x52\xa6\x98\xad\xdf\x3e\xdd\x9a\x1b\x53\x1b\x97\x9b\x7e\xa9\xf6\x94\xbc\xa0\xc9\x3a\x5b\x3a\x2e\xe1\x94\x11\x03\x05\x63\x1c\x26\x86\xfb\xf5\x63\x51\xda\xdd\x94\x65\x58\xa5\x00\x83\x8d\x7a\xa0\x25\x5c\xd9\x3e\xef\x66\x93\xf3\x54\x3f\x0e\xb2\x63\x99\x3b\x02\xe2\x40\x3e\xd2\x2a\xbd\xe2\xc7\x5c\x51\x2e\xa3\x36\x37\x76\x80\x5f\x67\x5c\x35\x1a\xc0\x64\x44\x03\xbf\x01\xb7\x83\x35\xbe\x7c\x1b\x3b\xe5\xab\x29\xf4\xbc\xc2\xc1\xf1\x3c\x59\xf6\xe9\x26\xfb\xeb\x41\xdc\xf5\x9a\xce\x3b\x3b\x9f\x07\x5a\x15\x82\x09\x11\x04\x4c\xea\x0c\x72\xd1\x28\xe6\xf6\x58\x96\x2d\x6a\xcb\x5e\xb2\xdf\x34\xe9\x28\x0e\xff\x50\xdc\xa6\xa9\xae\xa8\xd4\x78\xec\x04\x12\xbc\x60\xc7\x99\xb0\xde\x9f\x39\xe1\x1e\xe6\xee\x9b\x53\x6e\xd7\x63\x04\x75\x9d\x26\xeb\x52\xbf\xd1\x2c\xc9\xa8\x9b\xcd\x07\xdd\x98\xbb\xe5\x6c\xd1\x5d\xef\x76\xb2\x2e\x0f\xee\xf5\x5e\x32\x62\x33\x5b\x9e\xdb\x7a\x76\x95\x0b\x0b\x32\x37\x0a\xb9\xb2\xf6\xcc\xe6\x3e\x9a\x26\x47\x29\xbd\xdf\x4f\x8e\xef\xcf\x31\xe6\x1b\xf6\xd5\xb6\x52\xd1\xed\x1b\x5d\x90\xa4\x9a\x95\xca\xc6\x46\x76\xb4\x75\x9a\x33\xf8\x56\x2d\x72\xb8\xae\x26\x23\x4c\x73\xe8\xdd\x4e\x64\x81\x74\x41\xdc\xec\x5a\x2b\x15\x3f\x87\x96\x1c\xa5\xec\x9d\x52\x91\x7f\x4b\x27\x2e\x6b\x2a\x7a\x0a\x57\x3c\x0a\xcf\xd7\xb3\x52\x39\x21\x14\x51\xee\x42\xd5\xad\xdf\xbe\xb6\x4a\x74\x94\xfe\x49\x0b\x55\x0a\xac\x2c\x54\x26\xd5\x53\xf9\x53\x49\x0c\x0a\x0a\x58\x3a\xbb\xdc\xcc\xb9\x7a\xd6\x82\xc2\xb2\xfb\x6b\x56\x00\x4e\x99\xcd\xb7\x9b\x07\xd9\x7a\xd7\x66\x54\x1c\x6a\x6e\x17\x6a\x53\x11\xa7\x42\xcb\x68\x24\x53\xf7\xc4\x72\x2a\x60\x95\xd0\x33\xa6\x63\xdc\x4c\xa1\x54\x59\x0d\xda\xae\x9e\x96\xcc\x07\xfb\x39\x6f\x92\xc9\xeb\xe8\x0c\x9b\xad\x76\x76\xcd\xf0\xd5\x57\x82\x06\x3f\xaa\x3b\x2c\x83\x66\x66\xed\x85\x1b\xe4\x5e\xe5\xce\xd7\x1d\xa5\x01\xc8\xf7\x47\xeb\x06\x72\xef\x93\xd9\x55\xb2\xc8\x2e\xaf\x58\xef\xe5\xf6\xde\x70\x10\x4a\xae\xd0\x0e\x2a\x95\x2f\x38\x4f\x35\x71\x00\x12\x9e\x06\x92\x00\xa4\xce\x53\xcd\x5b\x21\x85\xbe\xff\xcd\xf0\x8b\xce\x5b\xcd\xbc\x89\x58\x2b\x79\xd4\xf7\x9a\x37\x59\x4b\xdf\x2c\x6c\xc5\xa8\x0c\x5b\xd1\xa3\x36\x73\xad\xa8\x19\xc7\x54\xad\x95\x2e\xdd\x46\x6e\xf2\x3d\x8f\x31\x0a\xb7\xf3\x6d\x16\x9a\xbf\xb5\x46\x8f\xbb\xe5\x97\xf3\x2d\xbb\x26\x75\xad\xf8\x51\x07\xf4\x46\xae\x09\x63\x96\xd7\xea\x3c\xbe\x0e\x6d\x34\x58\x87\x5e\xcb\xb5\xa6\x4d\xfd\x5a\xbd\xc7\xdd\xd8\x8b\xb9\xc6\x6c\xf3\xc1\x56\xf7\x71\xcf\xd6\x2b\xf9\xce\xe5\x4c\x12\x5b\xfd\xc7\xdd\xea\x4b\xb9\x56\x1d\x33\xc7\xd6\xf0\x51\x57\x48\xae\x7a\xdb\x37\xee\x60\xf6\xdb\xde\xb2\xc2\x01\xf8\xa6\xfd\xb0\xb7\xb8\x19\x69\xb4\xd7\x3a\x5a\xaa\x1d\x51\x7a\xae\x86\xd4\xb3\xe8\x93\xa5\x1a\x52\xcf\xa2\xe7\x68\xc8\xbc\x8b\x3e\x5c\xaa\x29\xf3\x2e\x7a\x8e\xc6\xb2\x66\x70\xad\x83\xa5\xda\xcc\x54\x33\x57\xd3\xca\xad\xf1\xfe\x52\x2d\x2a\xb7\xc6\x73\x34\x24\x6c\xbc\x5a\xc7\x4b\xb5\xc3\x0b\xcf\x68\x46\x5b\x72\xb5\xae\x2f\xd8\x86\x2a\x39\xab\x81\x8c\x65\x56\xeb\xfe\xa2\xed\xb8\x15\xcc\xd7\x9c\x23\x80\x6d\xdd\x59\xae\x49\xbb\x92\xf9\x9a\xb5\xb8\x81\x87\xcb\xb5\xa9\x6b\x98\xd5\xa0\x65\x9b\xd1\xba\xb2\x68\x5b\xa6\xf0\xec\xe5\x21\x9d\x0a\x3c\x58\x7c\x79\xf0\x92\xb3\x1a\x50\x66\x19\xad\xbb\x8b\x36\x20\x4b\xce\xec\x81\xb6\x92\x68\xdd\x5b\xb8\x0f\xaa\xec\xac\x46\x1c\x1d\x7d\x6b\x6f\xd1\x76\xec\xe2\xb3\x9a\xca\x68\xdb\x5b\x57\x17\x6d\xcc\xad\x60\x46\x73\x05\x12\xe0\x16\x66\x17\x0d\x1a\x11\x7e\xb0\xb2\xb4\x05\x31\xc8\xd7\x99\x41\xe2\x9b\xb6\xaf\xbb\xec\xab\x44\x52\xa9\x70\x33\x2d\xe3\xa5\x81\x5a\xef\xeb\xa0\xe3\x21\x89\xf0\x48\xf8\x4d\x2b\x27\xb1\x72\x52\xf7\x09\x29\x37\x3a\x36\x0f\x28\xb5\x7d\xf2\x73\x4f\x3b\xf6\xc9\x8d\xfa\xc5\x89\x79\xde\x86\x20\xbf\xdd\xa6\xf3\x3f\x6d\x13\x11\xff\x77\xa1\x89\xfd\xdf\x84\x93\xe5\x7c\x7d\x5c\x10\x61\x3c\xab\xfa\xd2\xba\x8a\x80\xb6\x8a\x80\xb6\x8a\x80\xf6\xc4\x3d\x9f\x5f\x45\x40\x5b\x45\x40\x5b\xbd\x60\x7f\x02\x5e\xb0\xaf\x22\xa0\x7d\x5c\x22\xa0\x75\x62\x18\x91\x12\x8b\x53\x65\x45\x3e\xe3\xc9\x49\x91\xbb\x47\x25\x46\xf3\x80\xe7\x2d\xe6\x31\x75\xb6\x23\xd4\x8d\xc6\x1a\xb7\xda\x83\x26\xce\x58\x19\x1a\xd2\xdc\xcd\x32\xbb\x99\x1e\x09\xcb\x58\x7b\xaf\x99\xae\xc7\x11\x85\xc4\xb1\xa6\x14\x76\xe7\xa2\xc1\x68\x44\x93\x9e\x78\x7a\x06\x75\x7c\xab\x00\xd4\x83\x47\x88\x2c\xe5\x4c\xca\xc2\xa1\xa5\xec\xd2\x8b\xc5\x7c\x5a\x2e\xba\x54\x49\xcc\xa7\x4c\x5b\xf6\xc0\x2f\x1c\x5c\xca\x2a\x7c\x06\x91\xa5\x2e\x3c\x66\xbe\xdf\xde\x9f\xe6\x3c\x4d\x3e\xa9\x5c\x7f\x74\xa6\x5c\x7f\xfa\x44\x70\xfd\x23\x87\xeb\x1f\x3d\x56\xae\x3f\x5e\x71\xfd\x1f\x23\xae\xbf\x53\xc0\xf5\x77\xa6\x70\xfd\xc9\x14\xae\x3f\xc3\x7d\xf7\xfe\x7c\x4e\xb3\x3e\x2e\x8c\xff\x79\xf9\xcc\x7a\x4c\x6c\x2c\x18\x84\x1b\x1b\x2a\x54\x88\x97\x60\x9a\x8c\x3a\x7d\x2e\xd2\x63\x24\x45\x7c\x58\x2b\xda\xa6\x37\xa2\x94\xbe\x98\x24\xb4\x52\x29\xe0\x5a\xfd\xa1\x8a\x5d\x70\x3d\x86\xfc\x71\x98\x39\xf0\xa4\x41\x6f\x5a\xa9\xf8\x43\x05\x87\xc3\xda\x20\x95\x66\x4d\xea\xb1\xd6\x78\x3c\xac\x0d\x92\xd7\x0a\x52\x8f\xe1\xc1\x03\x44\x33\x1f\x02\x50\xb0\x42\x87\x82\x7d\x4a\x29\x6f\x4c\xc2\x61\xd6\xb6\xd4\xf0\x4c\x97\x14\xab\x5d\xa9\x70\x26\x8e\x1b\xd9\x33\xba\x7f\x49\x18\xe3\x28\x7c\x2d\x8f\xaa\x74\x8d\x86\xb4\x36\x8c\x08\xc4\xf4\x76\xd2\xd5\x36\x25\x42\xad\x28\x58\x5f\xc7\xa1\x6d\xfe\xe2\x80\x3e\x35\xb7\x82\x51\xe9\xad\x20\x2e\x09\x6b\x12\x9d\x55\x58\x93\xbe\xdf\x9b\x33\xac\x49\xba\xc7\xf6\xc4\x35\x78\x84\x3a\xd0\x03\x03\xc6\x17\xf6\x78\xa8\x92\x7e\x94\xde\x4a\x8e\x60\xd7\x03\x1b\x8d\xd2\x10\x25\x51\xb7\xfb\x12\x67\x32\xc9\x94\x40\x1f\x82\x20\x87\x30\x13\xd1\x82\x24\x31\x14\x21\x2c\x3c\xee\x90\x99\x51\x63\xa2\xb8\x05\x6b\x99\xf0\x4b\xb9\x71\xab\x82\x1d\xb7\x2a\x48\xff\x56\x1b\xa0\xe4\x0d\x24\x6b\x07\x55\x2a\x1b\xc8\xca\xc7\xdf\x70\xaa\xf7\xbc\x21\x25\x23\xd8\x56\x0e\xeb\x93\x10\x15\x05\xe0\xb0\x2b\xf5\x82\x35\x89\x52\x52\xa9\x40\x9f\xd6\xf6\xc5\xd7\x1b\x24\x19\xf0\x60\xb9\x7e\x12\x70\xe4\x27\x93\xc9\x1a\x7f\x04\x12\x75\x85\xdf\x9c\x97\x51\x4a\x21\x86\xc4\xf7\x06\xc9\x28\x85\xa3\xa1\x07\xfc\x02\x3a\x8d\x7d\x3a\x25\xc4\x06\x70\x3e\x02\x46\xb1\x6d\x6f\x17\x59\x83\x55\xc6\x54\x96\xb4\x2f\xcc\x64\x17\xc1\xc0\xb8\xba\x2a\x45\xc2\x59\x58\x6a\xae\xf4\x16\x20\x7e\x70\xca\xdf\xf0\xf3\x25\xc6\x38\x3d\x1e\x8d\x5a\x3c\xc8\xcf\xe0\xc8\x89\x36\x4b\xf7\xd8\xa9\xbe\x56\xd4\x0d\x8b\xae\x03\xd7\x89\x43\x49\x5e\x51\x1d\xe2\xe8\x96\x66\x82\xb8\x9b\x19\x96\x32\xe7\x3e\x96\x6b\x9f\xd9\xab\x50\xd6\x40\x02\xbe\x26\x0a\x9e\x03\xa9\x61\x09\xec\x11\x6a\x68\x97\x32\x1b\x64\xbe\x25\x8c\x43\x32\xff\x12\xc6\x8c\x04\x4e\x89\xe7\x52\xb0\xba\x71\x20\x1c\xc6\x04\xc1\xc4\xda\xc0\x53\x2e\xfb\xda\xb6\x3c\x97\xa3\xef\x78\xc2\xd0\x4f\x70\x32\x2d\x16\x51\x18\x43\x37\x21\x8f\xb2\x4d\x7d\xaf\xe6\xf1\x00\x42\x59\xe3\xc3\x96\x89\x8f\xd3\xaa\xb7\x41\xa3\x1e\xb4\x01\x0e\x1b\x8c\x96\xaa\xdb\x0a\x27\xa9\x21\x29\x2a\x81\x45\x09\xfd\xb2\x43\x48\x0f\xd2\x02\xe9\x41\x5a\x14\x6e\xe1\x28\xf4\x71\x88\x6c\x21\xc2\x49\xe8\x12\xcf\xc3\xb0\x45\xda\xe0\x20\x9c\x75\xef\xc6\xf6\xbd\xdb\xae\x21\x00\xfb\xa1\xfd\xf1\x38\x3c\x9d\x00\x5b\x24\x7b\x50\x22\x92\x3d\x6e\xc1\x76\x78\x20\x45\xb2\xc7\xae\x48\xd6\xfe\x09\x8e\xb3\x22\xd9\xe3\x52\x91\xec\xf1\x78\x7c\x9c\x15\xc9\x1e\xbb\xb7\xb7\xe3\xf0\x70\x1e\x91\xac\x13\x0a\xdf\x67\xbc\x06\x0c\xc6\x63\x38\x09\xc0\x71\x00\xf6\x2d\x91\xec\x71\x46\x60\x7a\x2c\x45\xb2\x4e\xfa\xee\x71\x5e\x24\xbb\xaf\x45\xb2\xc7\xd3\x45\xb2\xd9\x16\x8a\x99\x54\x86\xe2\x31\xeb\x9e\x10\xc9\x62\x5b\x00\x72\x7d\x49\x01\xc8\x63\x8d\xa8\x6d\x18\x11\x64\xdd\x2a\xd0\x27\x55\xfc\x91\x9c\xa9\xf8\x23\x7a\x22\xc4\x1f\xa9\x23\xfe\x48\x1f\xab\xf8\x63\xb4\x12\x7f\x4c\x15\x7f\x74\xb2\xe2\x8f\xce\x59\x8a\x3f\xe2\x02\xf1\x47\x3c\x45\xfc\x81\x3e\xfe\x4a\xcf\x8e\x45\xa5\x3a\xe7\x28\xfb\x78\x3c\x32\x08\x27\xf0\x4b\x91\x5a\xed\xd3\x72\x3b\x4e\xd5\xed\x38\xce\xde\x8e\x47\x7e\x6c\xdd\x8e\x63\xa3\x33\x13\x9c\x22\x88\xe7\xd0\x99\xc5\x59\x9d\x59\x89\xfa\xaa\x28\xf0\x5e\x39\xc3\x2a\x1e\x3a\x8a\x83\xdc\xbe\x64\x70\xed\x16\x97\xf7\x18\x22\xc0\xf8\xc1\xa8\x80\x1f\x8c\x04\x3f\x18\x3b\xfc\x60\xcf\x61\xd5\xba\xa1\xc2\xb9\xcf\xb9\xc0\xe1\x62\x5c\xa0\x28\x1b\x80\x81\x53\xe9\x51\x96\xff\x1b\x96\xf0\x7f\x47\x8c\xff\x1b\x4a\xfe\xef\xc8\xe5\xff\xec\x9f\xe0\x28\xcb\xff\x1d\x95\xf2\x7f\x47\xe3\xf1\x51\x96\xff\x3b\x72\x8f\xaf\xa3\xb0\xbf\x38\xff\xc7\x76\x93\xe2\xff\x8e\x02\x30\xb0\xf8\xbf\xa3\x0c\x77\x76\x24\xf9\x3f\x27\x7d\xf7\x28\xcf\xff\x0d\x34\xff\x77\x34\x9d\xff\xcb\xb6\x50\x4c\x20\x18\x8a\x47\xac\x7b\x05\xfc\xdf\xc9\x0c\xfe\xaf\x0f\xe3\x21\x24\xe9\x85\x02\x6f\x52\x28\xad\x8a\x4b\x96\xc3\x03\xce\x15\xe2\x6a\x3a\x57\x68\xdd\xc9\x57\x21\x97\x9e\x98\x90\x4b\xf8\x53\x13\x72\x09\x7f\x22\x42\x2e\xe1\x73\x0b\xb9\x84\x14\x3f\x8e\x43\xb6\xa3\x85\x03\x32\xfd\x9e\x92\xd6\x50\xfa\x39\x46\x1b\x02\x1f\x2f\xc5\xe2\x70\x8a\x73\x97\x11\x1c\xa1\x9b\xb8\x29\xaa\x0b\x51\x31\xfb\xa3\xa2\x54\xbc\xc4\x29\x5b\x4d\x10\x38\x1f\xd9\x44\x31\x79\x24\xa2\x68\x9e\x7e\x1a\xba\xd8\x76\xa5\x76\xc5\xe4\x8e\xae\xc8\xdd\x93\x43\xee\x88\xed\x93\x71\x69\x72\x87\xf3\xe4\x0e\xcf\x22\x77\xd8\x90\x3b\x3c\x27\xb9\xc3\x8b\x93\x3b\x1c\xb8\x3d\x7d\xd2\xc9\x1d\x39\x37\x72\xa7\xf5\x4c\x24\x64\x3b\x7a\x2b\x00\x38\x24\xad\x7a\x1b\xa0\x90\xb4\x1a\x6d\x25\x70\x0f\x43\xe4\x48\x0f\x94\xff\x55\xd1\x16\x0a\x8c\x08\x27\x09\xeb\x97\x92\xcb\x48\x89\x70\x92\xcd\xcd\xc0\xca\x2f\xfc\xb5\xa2\x56\xd2\x06\x7a\xce\x36\x54\x6c\xe3\x8d\x86\x1b\x52\x58\x65\xe7\xbe\x86\x1e\x0b\xad\xd5\xde\x6f\x71\x31\xb9\x45\x85\xe4\xd6\xe1\x41\xd1\x0c\x72\xcb\x16\x52\x1c\x51\x98\x96\x49\x23\xab\x03\x19\x8f\x7a\x5e\x92\xfb\x78\x2e\xd2\x54\x75\x6d\xef\xd6\xcb\x2f\x46\x24\xad\x29\x44\xfd\x53\xd4\x6d\x7a\x3b\x51\xfa\xf2\xcd\x97\xef\xbe\xe4\x81\x83\x38\xe9\x3c\x68\x3e\x75\x2a\x05\x83\xa9\xd7\x6c\x49\x77\x07\x1e\xf0\xd4\x3b\x2f\xef\x05\x29\x53\xbd\x97\xb0\xd6\xbd\x17\x22\x82\x22\x71\xc1\x3a\x80\xdd\x17\x4f\x54\x92\xdc\x60\xea\xe7\xcb\xd1\x01\x8c\x9d\x1f\xb1\xce\xdd\x33\x4e\xb7\x2c\x4f\x30\xde\x0b\x51\x1c\x27\xc7\x57\xc5\xfd\xce\x7b\x41\x3c\x65\x29\xca\x77\x90\xf1\xc0\xe8\xbd\xd0\x89\xe2\xce\x88\x75\xf1\xae\x0c\xcd\xcd\x13\x6d\x2f\xba\x2c\x21\xef\x3e\x4d\xa4\xa6\x14\xe1\x48\x95\xd2\x5e\x8b\x19\x4c\x92\x61\x37\x39\xc6\x57\xe3\x28\xe5\x82\x64\xf8\x90\x92\x88\x4b\x94\xd9\x51\xee\x20\xd5\x4f\x08\x7a\x2d\xc1\x34\x8a\x6d\x1c\xe4\x3d\x28\x3e\xb9\x33\x84\x58\x54\x2a\xdf\x80\x6b\x2f\x29\xde\x0b\xd2\xb5\x99\x06\x5d\xe7\x2d\xde\x0b\x79\x9f\x32\xde\x0b\xc2\x23\xbf\x80\x84\xb3\x63\x09\x8b\x27\xc4\x0c\x94\x36\x8a\xde\x0b\xda\x2a\x50\x83\x0e\xe6\xb6\xfb\x1c\xf7\xa7\x9b\x4d\xe8\xdf\xee\x73\xdd\x14\x4b\x70\x9e\xb8\xb1\x9f\xb8\x0b\xc9\x4d\xcc\x23\x7e\x8b\x84\x57\x47\x88\x88\x4e\x9b\x37\x77\xde\x0b\xda\xa0\x56\x42\xd7\xb1\x1e\x70\xcb\x47\x99\xf9\x69\xf5\x5a\x24\xdc\x75\x11\x36\x8c\x8d\x81\x6f\x52\x38\x70\xb0\xe7\xb8\xb3\xf3\x80\xaf\x68\x44\xc5\x5a\x96\x4b\x5b\xcf\x2f\x8d\x0e\x84\xba\xcf\xfa\x66\xd7\x22\xd3\x6e\xf2\xb6\x8e\x20\xa1\xa8\xe3\xcc\x77\x25\xa2\x94\xc7\x42\xae\xc8\xb5\xe6\xb5\x81\x97\xd2\x88\x42\x71\xe6\x35\x5b\xad\x8b\xc0\xcb\x44\x67\x6e\x35\xb6\xc1\xc5\xed\x76\x1b\xb4\x5a\xab\xcd\xf6\xa4\x6e\x36\xf9\x00\xdc\xdd\x77\x58\x5b\x24\xb3\x1f\xc2\x89\xc0\x6a\x3b\x2e\xb0\x1d\x97\xd8\x82\x66\x0f\xb3\x0d\xb5\xb5\x0d\xb6\x41\x8b\xed\xad\xad\x6d\xb0\xa3\xa1\x8b\x1a\x7a\x5a\x43\xcf\x68\xe8\x59\x0d\x3d\x27\xa1\x67\x81\x97\x10\x4f\xd4\xd7\xa8\xf3\x44\xc6\x2b\xa9\xff\x33\x19\x1a\xba\x7c\x1d\xb4\xbc\x62\xb7\xc1\xed\xb6\x29\xbc\x0d\x1a\x5b\xba\x48\xc3\xe0\xdb\x30\x08\x37\x0c\xc6\x0d\x83\x72\xc3\xe0\xdc\x30\x48\x37\x9e\xd3\xe0\x56\xdd\x80\x06\xab\x2d\xd3\xda\x96\x69\x6d\xcb\xb4\xb6\x65\x5a\xdb\x32\xad\x6d\x99\xd6\xb6\x9e\x75\xba\x68\x7b\x31\x50\x39\x9e\x2b\xc8\xa1\xb6\x43\xee\x03\xdf\x1a\x32\x75\xdb\xe0\xbc\x6d\x70\xde\x36\x38\x6f\x1b\x9c\xb7\x0d\xce\xdb\x06\xe7\x6d\x83\xf3\xb6\xc1\x79\xdb\xe0\xbc\x6d\x90\xdb\x31\xad\xed\x98\xd6\x76\x4c\x6b\x3b\xd6\xfa\x31\xad\xed\x98\xd6\x76\x4c\x6b\x3b\xaa\xb5\xe7\x18\xc3\x97\xbf\x85\x2b\x7e\x50\x79\xbc\x5f\xf7\x44\x31\x8e\x99\x5a\x68\x56\x60\xfe\x96\xbb\xb0\x2e\x0a\x5c\xbd\xc2\x3a\xb5\xea\x5b\xae\x2b\x7e\x9c\x64\xf7\xc2\xce\x73\xa2\x25\xb9\x0b\x4c\x87\x2f\x6e\x39\xd3\xc5\x70\x18\x51\xd8\xdd\x8b\x0e\x84\x41\x09\x2f\x73\x9a\x39\xca\xea\xc0\xfb\xda\xd7\xf0\xfa\x3a\xab\xbd\xb1\x03\x2e\xee\xc8\xf5\x6f\x96\x89\xea\x97\xc8\xe9\x71\xe4\x23\x12\x0d\x20\x85\x84\x55\xd1\x00\x5b\xed\x89\xfb\xbd\x1f\xa5\xd7\x8f\xa2\xd8\x6b\xf6\xa2\x38\x85\x93\xa7\xc0\x00\xd2\xa8\x79\x3a\xe0\xdc\xef\xed\x68\x00\x9b\x8f\xc6\x8b\xd7\xfa\x07\xa9\x37\x99\xd8\x8c\x3e\x7d\x6c\x8c\x7e\x91\xfd\xc1\x9f\x9d\xe1\xbf\x4b\x0e\xee\xdd\x1e\x5d\xff\x7c\x29\xc3\xef\x01\x0f\x75\x1f\x1a\x7a\xcd\x0f\x4e\x94\xd2\x83\xe4\xa1\x20\xb3\x36\x5b\xe4\x1c\x75\xea\x58\x1c\x66\x8f\x00\xf7\x20\xd1\xdc\x90\x7d\xaa\x97\x9d\x0d\x92\x87\xca\x31\x4e\xcf\x00\x6f\x14\x7b\x80\x2f\x0b\xb6\xe0\xb6\x18\xd6\xde\x1c\x9b\x4d\x1e\xb2\x55\xb1\xd9\xb6\x41\xcb\x53\xd1\x25\x3c\xb9\x17\x58\x5d\x1d\x79\xe8\xcc\x51\x13\x5f\xef\x8c\x52\xb7\x41\x6b\x1b\x78\x5d\xd4\xad\x0a\x5f\x1d\x72\x9f\xb2\x1d\x94\x0c\xa1\x64\x15\xba\x9a\xb0\x81\x96\x27\x1c\x8f\x8a\xed\xc4\xca\xb2\x23\xab\xe5\x58\xe5\xe9\x2d\xc8\xcd\xc9\x04\x47\x96\xcd\xcf\x8d\x11\xe5\x53\xa7\xf2\xec\xcf\x5a\x1b\x0b\xb4\x76\x80\x07\x23\xfe\x0c\x4b\xe1\xa2\x0f\x6a\x75\x16\x15\x6d\xf0\xf5\x75\xb1\xbf\x9f\x01\x5e\x8c\x3c\xc0\xed\xe6\x40\xab\xd1\xd0\x03\x36\xef\xf8\x73\x5a\xf7\x2c\xf0\x50\xcf\xd3\x64\xc2\x84\x88\x61\x3b\x7f\x76\x1d\xd5\xaa\x29\x20\xa9\x5c\x61\x47\x47\x38\x86\x1c\x37\xd5\x55\xab\x9d\xe9\x5d\xb5\xba\x9b\x0e\x23\x6c\x3a\x5c\x07\xc2\x0c\x17\x78\x07\x23\x4a\x13\xde\x12\x4b\xe4\x66\x85\xb1\xe4\xbf\x85\x55\xe6\x3a\x14\xc6\xee\x2a\xcb\x3c\x2b\x4b\x94\xac\x1e\x50\x51\x71\x03\x08\x13\x44\x35\x45\xd2\x08\xd1\x22\xaa\x76\xaf\xd7\xf5\xbf\xb7\xff\xde\xfa\xc9\x6a\x7a\x6e\x0a\xf1\x6d\x4f\x14\x07\xb2\x63\x4f\x8b\xac\x7f\x9e\x51\x6a\x14\x9d\x58\xa6\x8a\x16\x23\x82\x62\xb7\x67\xc5\x0a\xed\x1c\xab\x64\x1d\xf5\xea\x8c\x52\x5b\x7d\x4a\x07\x66\x21\xb8\xc3\xd9\xb5\xc2\xfa\xa7\xd5\x2b\x3e\xce\x33\x88\xfc\x04\xcb\xa1\x61\x06\xf4\x59\xe0\x45\xb8\x2b\x07\xe6\x59\xc3\x4e\xe2\x44\x8d\xd6\x73\x66\xbc\xdd\x3f\xe5\x9d\x2b\x5b\xa1\x53\x56\x9a\x4d\xa1\xe5\xe2\x69\x58\xcc\xae\x1a\xea\x79\xd6\x4b\xe1\x70\xd9\x4b\xe8\xb9\xd9\x2b\x48\xf6\x00\x89\xab\x92\x4d\xd3\xa7\xf4\x41\xc5\x09\xd2\xbb\x46\x14\x97\x05\xa3\x11\x4d\xd8\x4a\x8c\x21\x23\xc4\x5e\xd2\xeb\xb9\x5f\x08\x11\x47\x5b\xf6\x43\x34\x44\x94\x6b\xaa\xdd\x6f\xe9\x10\xc6\x71\xa7\x0f\x3b\x0f\x16\x38\x73\x8a\x31\x9c\x71\xf2\x08\x5b\x00\x60\xc8\xb2\x76\xdb\xa7\xb3\x38\x31\x94\x3c\x73\x99\x51\xb8\xd2\x93\x18\x9a\xb3\x40\x62\x71\x4b\x22\xc1\xef\xa3\xf7\x79\x16\x5d\xc2\x39\xb0\x55\xb9\x41\x74\x72\x00\xed\xdb\x9c\xce\x6e\xee\xe9\x85\x14\x95\xe7\x31\x4c\x82\xbe\x61\xa9\x2f\xe2\x9e\x27\x2f\x9a\xf6\x41\xd6\x93\x6e\xd3\xd4\x45\xcc\x39\xe5\x0e\x84\xab\x33\x75\x35\x73\xbe\xc9\x85\xe3\xde\x22\xc4\xc5\x3b\x93\xf3\x81\x7e\x14\x5c\x72\x15\x69\x9b\x53\x1c\xe1\x14\x12\x6a\x9d\xe2\xdc\xa5\xb7\x19\xbf\xd4\x3a\x59\xe7\xa3\xac\xcf\x39\x47\xd3\x82\x7b\x96\xed\x9c\x51\x5a\x45\x1d\x71\xdc\x14\xb4\x7a\xd6\xcc\xb2\xe2\x67\xcf\x82\x69\xfe\x58\xf1\xc8\x5f\xfa\xea\xce\x97\xf0\xde\xc9\x4e\x31\x8f\xac\x44\x53\x1e\xf0\x74\x04\x61\x8f\x31\x44\x86\x47\xbe\x62\xc9\xd9\x3c\xe0\x19\x28\x2f\x50\xcf\x78\xc9\xf6\x5e\xb4\x65\x6f\x1e\xf0\xf6\xd4\x1d\x42\xf2\xe6\x14\x92\x81\xc3\x39\xe7\x85\x5a\x39\x09\x99\xcd\x71\x17\x09\x99\x1c\x51\x4e\xc1\x17\x4b\x08\x94\xe3\xed\x4b\x44\x3a\x85\xc2\xa0\x8c\x94\x31\x27\x4b\xcc\x48\x98\x5c\xb1\x50\x46\x1a\xf4\xc8\xb2\x50\x5b\x02\x96\x91\xb3\x66\x45\x50\xf9\x7b\x8f\x2d\xaa\xb4\x24\x78\xb6\xb4\xab\x48\x5c\x95\x93\x6a\x96\x4b\x5a\x4b\x45\xb5\xc5\xd2\xce\x8c\x28\xb5\x40\xf8\x59\x20\x22\xcc\xc8\x04\x8b\xe4\x67\x45\xe2\xdd\xb2\x3b\xd9\x45\xe0\x1d\x44\x29\xea\x54\xcd\x0e\x11\xe2\xec\x86\x14\x67\x2f\x8b\x7a\xa1\x68\x36\xd7\x1f\x47\x02\xab\xc4\xab\x73\x75\xd2\x9e\xcd\x7c\x87\x95\xb4\x64\x96\xbc\x47\x1c\x9a\x59\x4c\x73\x12\x43\x29\x16\x92\x5c\x84\x91\xfa\x99\xd3\x48\x74\x63\xaa\x58\x6c\xc7\x88\xaf\x76\x9e\x2b\x92\x6f\x09\xe9\x50\xa9\x98\x46\x5e\x8d\x62\xa8\xe5\x4a\x51\x9a\xa2\x43\xec\xb9\xec\xf1\xb3\xfc\x50\xe9\xcb\x50\x7f\x2d\xeb\x96\x98\x71\xb5\x6b\x1c\xa3\x1b\xa7\xf6\x19\x57\xe5\xc6\xdd\xb1\xe5\x66\xd9\x71\x4b\x5c\xe0\x33\x58\xbb\x64\x69\x5b\xc7\xb0\xb9\xa9\x9a\x11\xb2\x90\xb1\x92\xf5\x15\xdd\x24\x29\xf4\xf2\x49\x02\x4f\x2b\x5d\x21\x6c\x25\x69\xcc\xad\x34\x87\x45\x33\x85\xb3\x7d\x51\x03\x9a\x1d\x68\xd3\x45\x53\x38\x17\x9a\xde\x48\x88\xdb\xb6\xac\x98\x5f\xb7\x70\x27\x12\xc7\x67\x9e\x67\x70\x85\x1d\x8d\x0c\xcb\x39\xcf\xf5\x82\x0d\xfc\xd3\xba\xb4\x3a\x8c\xf8\x7e\xb6\xf8\xf3\x59\x2c\xb0\x14\x6d\x6a\x99\xb1\x7d\xf3\xdf\xca\x0c\xab\xb7\x3e\x85\x95\xae\x46\x32\x9f\x75\xe1\xd7\x2c\x71\x57\x1d\x07\x07\x27\x9e\x25\x98\xb6\xb3\x20\x75\x3c\x18\xa9\xb4\xfd\x59\x5e\xdd\x8d\xe0\x39\xf7\x31\x36\xb5\x0b\x79\xb4\x9d\xc3\x1c\x29\x46\x48\x2d\xbf\x0b\x71\x81\x4b\x09\xa4\xe8\xda\xc8\x10\x94\xa8\x96\xb3\xc9\xe2\x0c\x32\x72\x6d\xe7\xc6\xa1\x24\xdc\x05\xdc\xb6\x75\xc7\x74\x6e\x96\x82\x38\x14\x2b\x29\xa4\x8c\xdc\xab\x7b\xd9\xab\x67\x29\x33\x9c\xf1\xbb\xeb\x88\xd5\xdb\x53\x44\x61\x73\x96\x2b\x6b\xef\x7e\x66\xf3\x6f\x3f\x37\x67\x83\x4b\x14\xb4\x75\x68\x59\x19\x76\x69\x21\xd7\x7d\x6a\x19\x99\x98\xe7\x52\x92\xf1\x3c\x9d\x29\x64\x5d\x96\xf2\x4a\x97\x92\x9b\x93\xc9\xc8\x45\xb5\xf2\xd6\xd9\xb2\x39\xad\x76\x56\xcd\x20\x55\x3e\x96\x94\x51\xef\xbd\xb9\xcf\x96\x72\x25\xc6\x4e\x81\x12\x23\xaf\xbb\x98\x4b\x0c\xe2\xd0\x2a\xa9\xc7\x11\xbd\x9b\xc5\x76\xe6\x39\xe8\x29\x6c\xad\x12\x89\xcf\x52\x8f\x16\x4a\xc6\x0d\xd3\x6e\x0b\xd4\xcb\x94\xc4\xf3\xe8\x7e\xe5\xb9\x58\xa4\xb9\x73\xb4\x90\x22\xd1\x7b\x59\x74\x75\x5d\x1e\x0c\xb5\x5a\xcd\xb3\x79\x90\xad\x8c\xb6\x26\xa7\x41\xbc\x38\x4b\xd3\x97\x5b\x62\x59\x35\xe6\x76\x41\x0d\xea\xaa\x3e\x5d\x41\x68\xa9\x2f\x59\x9e\xe2\xe1\x98\xa6\x99\xca\xca\x02\x9f\xce\x8b\x1d\x33\x3a\x2a\x53\x22\x27\xe9\x6b\x80\x46\x4e\x5b\xe5\xe6\xa8\x9b\x8b\xbf\x3e\x4c\xcb\x84\x8b\xb2\x2d\xf7\xb4\xbd\x2a\x43\xdf\xcf\x7d\xda\x5a\x7c\xf7\xe2\x47\xac\x2a\x9c\x3d\x63\x81\xa7\x14\x93\x0d\x29\x8a\x65\xe8\xb4\xf9\x98\x2d\x4d\x00\x8c\x3c\x14\xbe\xaa\x48\x81\x5a\x71\xcf\xe8\x43\xca\x9b\xee\xcd\x58\x17\x5a\x9e\x50\x3c\x67\xd3\x89\x29\x9b\xbb\xdc\x8e\x63\xb6\xfe\xab\xcc\x66\xa3\x98\x18\x2c\x70\xa3\x6e\xeb\xd9\xcd\xef\xd4\x45\x37\xd7\x42\xdb\x79\xbe\x9d\x58\xbe\xf3\x73\xd6\x07\x53\x05\xf0\xcf\x15\xab\x26\xf8\x75\xab\x30\xd4\x58\xa9\xb8\x79\xde\x53\x49\x9a\x4f\xb8\xcb\x4f\x8c\x7f\x75\xa0\x1a\x59\x70\xcd\xd9\xab\xee\x59\x77\xd5\xe5\xec\x68\x6c\xa5\x88\x61\x1d\x4c\xf7\x6c\x56\x64\xca\xc0\x3d\x5b\x2e\xa3\x9f\xa2\xa3\x70\x47\xd6\x8a\x92\x36\x6d\x58\x9d\xb2\x39\xa3\xa9\x79\x34\x48\x5a\x0b\x30\x8a\xe7\x95\x88\xda\x0a\x58\xa3\x91\x93\xbb\xc9\x2b\x51\x8a\x15\x2a\x30\xe7\x69\xa7\x88\x66\x2a\x45\x24\x4e\xaa\xd2\x09\x94\xb5\x3e\x6c\xa4\xa4\xdc\xaf\x14\x27\xa3\x41\x2b\x1d\xc2\x8c\x02\x2c\x5b\xf6\xb9\x82\x2f\xf3\xea\xfc\xe6\x5b\x1f\xf3\x6d\x9d\x67\x0a\xb6\x8e\x99\xa8\xe5\xf7\x8c\xe4\x3c\xdc\x3b\x90\x75\x05\x9a\x67\x9d\x88\x0d\x57\xc6\xee\x65\x64\x79\x5c\x8a\x7a\x53\x1b\x3a\x14\x48\xe2\x34\x01\xcf\x07\xcf\xcc\x09\x61\x73\x7c\xf5\xbc\x1c\x99\xcd\x90\xd9\xc2\x0b\xcf\xb3\x87\xc5\xa5\xb4\x8e\x44\x44\xe1\x94\xe7\x09\x2f\x16\x4c\x95\x33\x70\xe2\xe5\xe4\x2c\x7e\x3f\xb7\x8a\x0d\x6b\x95\xb1\xa7\xcb\x33\x56\x45\x3c\xd1\xd3\xe0\x99\xa9\x8c\xd5\xc5\x1c\x5f\x55\xc2\x59\x95\xa9\x26\x4b\x17\xb2\xb2\xef\x5a\x82\x91\xd8\xb1\x49\x7a\xc6\xaa\x45\xeb\xb7\xb7\xb3\xb6\x50\x53\x7a\xb9\xb3\x18\xf7\x98\xff\xb8\x05\xb6\xcb\xf6\x77\xe3\x9c\xcc\xac\xce\x42\x51\x34\x25\xa8\xc5\x9f\x5d\x6f\x74\xe5\xfe\x5d\xf4\xf0\x95\x17\x49\xb1\xde\xa8\xcc\x9e\xaa\x50\x55\xe2\x30\x9c\x05\x3c\xa6\xcb\xa1\xe6\x44\xf1\xf6\x91\xfc\xcc\x2c\x05\xbc\x3c\x10\xbb\xe8\x68\x6e\x5d\xa4\x56\xde\x3e\x9b\xbb\xbf\x14\x2b\xf2\xcf\x49\x1f\x2f\x8f\xdb\x4e\x32\x38\x48\x24\x13\x30\xe3\x70\x90\x6c\x9d\x63\x3c\x60\xe9\xe0\x1b\xf3\xeb\xe0\x6d\x71\x5f\x4e\xa3\xbe\x3d\x97\x06\xdc\x52\x64\xef\xe4\xb4\xdc\x96\xc4\xe7\xe2\x14\xf5\x78\x5e\x75\xfe\x48\x4a\x6f\xcb\x47\xb5\xce\x78\x8c\xe2\xb8\xca\x1f\xcc\x25\x27\x56\x56\xdb\x43\x77\x91\x6a\x7c\x21\x86\xe4\x8c\x48\x52\x86\x7c\x9c\x09\x85\xfa\x38\x92\xa6\x57\xf6\xfe\xf2\x2b\xc7\xfd\x2f\x5d\x2b\x26\x4d\x9f\x13\x2e\x12\x5c\x45\xb5\xc7\x36\xb2\x60\x7f\xb4\xda\xda\xa2\x61\x0e\x7f\x54\x68\xd3\x59\xc4\x33\xe5\x5f\x6f\x58\x2c\x57\x8e\x33\x5b\xc0\xfa\x33\xcf\xfd\x17\x6e\xd3\x19\xa6\x3a\x7a\x0b\xe5\x6d\x73\x18\xcb\x36\x65\x9f\xd8\x3e\xe5\x4a\x0c\x11\x35\x45\x7e\xda\x51\x2e\xcd\x71\xab\x6a\x6c\xcf\x63\x86\x77\x06\x17\x1b\x89\xe5\x5c\xb7\x9a\x86\xcd\x86\x3e\x9a\x09\x99\x75\xdf\x9f\xc2\xac\x35\x1a\x39\x8d\x46\x2e\x4b\x7d\x36\x3f\xe7\xda\xc2\x4e\xb5\x78\x74\x2c\xf9\xa6\x7b\x1b\xb1\x88\xfe\xe2\xe2\x6b\x9b\x99\x94\x15\xda\x5b\x4f\xec\xb0\xdc\x8b\x16\xc3\x6d\x3f\x37\x55\xf9\x5b\x74\xbd\xda\xb2\xae\x57\x72\x76\x15\xf7\xbf\xe0\xf5\x2a\x67\x0e\x31\xdf\x65\x2a\x4f\x18\xb2\xbd\xcc\x6a\x73\x9f\x36\xcf\x2b\x5a\xce\x8b\x1d\x79\xb3\xaa\x69\x19\x94\x11\x57\x59\xb2\xde\x79\xc7\x48\x5f\x6a\x9e\x95\xef\x2e\xdc\xf1\x9e\xef\x4e\x73\x31\x23\xe8\x5d\x82\x9f\x9f\x6d\xdf\xba\xc4\xde\x57\xf6\xc5\x9c\x4e\x5a\x3e\x21\xc4\xa0\x96\x2e\x72\x2b\x67\x6e\x09\xe6\x2d\xc9\x25\x01\x55\xcd\xd8\xe6\x83\xb6\x94\x7a\x3b\x6b\x02\xce\x3a\x62\x6b\x45\x55\x05\x9d\x11\x21\x62\x8b\x1b\x34\x5f\x2d\x44\xc5\x35\x0b\xc8\x62\x93\xf7\xeb\x5a\xba\x9a\x44\x99\x79\xe5\x39\xee\x82\xd9\x9e\xb5\x60\x66\x73\x45\xb9\xa4\x6d\xb0\x53\x7a\xb9\xe3\x36\xc8\xda\xe2\xf0\x0c\x59\xa9\xb3\xe4\xa1\x5c\x06\xfa\xe3\xc3\x47\x1d\xdd\xbb\xf3\xe5\x2f\x7f\x2e\x79\xae\x98\x8f\xd2\x2f\x7e\x5f\x70\x2d\xac\xa7\x1c\xed\x33\x0d\xec\x1d\x53\xd1\x39\x6d\xa3\x33\xf6\xdd\x8c\x77\x71\x0e\xe9\xad\x65\xce\xe8\xb3\x5a\x46\x16\xb2\x67\xb3\x94\xf2\x22\xad\x8f\xd3\x8a\xc2\x57\x7a\x7b\x17\xaf\x6f\xdd\x28\x11\x1a\xa8\xe3\xbf\xfc\x0d\xf9\x42\x64\xdf\x1c\xea\xb3\xc8\x71\xee\x45\x4e\x96\x1c\xcf\xa2\x86\x4b\xd8\x38\x0b\xf7\x6b\x38\x1a\xc0\x0c\x53\x09\x5a\x82\x1d\xb9\xcd\x3f\x15\x2d\x5d\x4d\x75\xb7\x1c\xb6\xfb\x4c\x09\x60\x1e\xf7\x92\x05\xbc\xf6\x48\x0b\x38\xa3\x79\xfa\x38\x2d\xde\xe3\x1b\xb7\x9e\xb9\x72\x74\xf3\x2b\xa5\x12\x2f\x47\x71\x55\x72\x8d\x3b\x03\x6d\xcf\x19\x5c\x85\x72\xfa\xbf\x79\xf8\x01\xcf\x5e\xc2\x05\x3a\x9c\xec\xd1\x7f\xc6\x0b\xd6\xed\xc3\x99\x50\xdb\x8f\xe3\x9b\xd7\xfb\x57\x1a\x07\xf5\xa7\xaf\x6f\x95\xac\xd2\x39\xf5\xf5\xfa\x36\xb3\xd0\x03\x56\xdb\xfa\x68\x2a\x23\x30\xdf\x23\xcc\x8c\x18\x61\x9e\x97\x55\x25\xef\xf2\x9e\x9e\xef\x59\xde\xb3\xc0\x23\x30\xea\x26\x38\x56\xa2\xbe\x8b\xb9\x5b\x77\x26\x43\x61\x4f\x4a\xb3\x3a\x7c\xf9\xf2\x8f\xfc\x96\x79\x51\xa3\xdf\x53\x52\x38\xd0\x07\xce\x0e\xd8\x29\xec\x86\xfb\x5a\x70\x06\xbf\x0e\xca\x1e\xfd\x3d\x53\xf4\xe8\xaf\xf0\x51\xea\xfc\xf6\xb9\x8b\x72\x87\x5c\x4e\xab\x5e\x97\x4e\x7d\x46\x2c\x56\xed\x1c\xcf\x93\xad\x8c\x92\x00\xbe\xfd\xf7\x8f\x51\xfb\xac\x19\xe1\x92\xb5\x6c\x9e\x98\x0e\xf3\xf6\x31\x8d\xf9\x5f\x90\x3e\x41\xaf\xb2\x1e\xe1\x31\x96\x70\x75\xab\xbc\x3a\x54\x7b\x51\x1c\x1f\x44\x9d\x07\x55\xd4\xab\x1a\x7f\x8c\x67\x4f\xbf\x0b\xdc\x8c\x0b\x2a\xae\x30\xf3\x4f\x0f\x21\xb5\xe3\xb6\x6a\x6f\x92\x20\xb5\x3f\xd8\x01\xd6\xb4\xd7\x61\xb2\x0b\x9b\x64\x32\x09\x66\xc5\xce\xcf\xfb\xfd\x5d\xc2\x23\xa6\xf6\x12\xbf\x01\x2b\x95\x8d\x0d\xd1\x8d\x43\x48\xd9\x40\x18\xbe\x35\xc8\x7d\x53\x3c\x8d\xeb\x02\x50\x39\xe6\xab\x67\xdd\xe3\xaf\x43\x5f\xc6\x74\x0a\x94\xdb\x3d\x14\xd6\x2f\xa1\xcb\xa6\x52\x0c\x3c\xe1\x81\xcf\x0b\x2e\x21\x15\x46\x21\x09\x71\x4d\x38\x26\xbc\x42\x77\x0d\xe8\xa3\xa0\x89\x5b\xa8\xbd\x46\xfd\x24\xd8\x85\xbe\xa9\x25\xb1\x50\x0b\x9a\x64\x73\x73\x32\xf1\x61\x00\x88\xeb\x98\x55\x47\x9d\x2a\x42\x14\x09\x3f\x95\xca\x7d\x60\xb5\xb1\xe6\x7a\x0a\x34\x8d\x21\x0b\xe5\x44\xa1\x1c\x85\xc8\xa0\x6c\x40\x3f\x09\x9a\xa8\x95\x70\xff\x84\xd4\x8f\x64\xc8\x9e\x34\xb4\x91\x8f\x6c\xe4\x59\xc6\xf4\xf9\x6a\x43\xf9\x89\x4c\x79\x40\x00\x86\x5a\x64\x7b\xe2\xc5\x6b\x98\x75\x52\xe1\x3a\x71\x42\x61\xa0\x99\x7d\x05\x89\xec\xed\x78\x4c\x2e\xd7\x65\xa5\xa7\x8a\xa4\x37\x37\x1a\x40\x60\x24\x3d\x66\x4f\xf4\x58\x44\x61\x1d\xa4\x61\xf1\x58\xe0\xcb\x21\xa9\x54\xa2\xcb\xe9\x25\xd1\xf6\xa8\x64\x48\x22\x36\x24\x91\x1c\x92\x91\x1c\x92\xd8\x19\x92\x91\x35\x24\x20\x19\x8f\xed\x65\x38\xb2\x1e\xf4\x8a\xf1\x8a\xd5\xa8\xc4\x7a\xb0\xb0\x35\x58\xa6\x5f\xd3\x6a\x52\x3d\x1e\x4d\xf8\xd0\x46\x62\x0d\x81\x8d\x46\x30\x1e\x4f\x19\x99\x5c\x00\x12\xb1\x15\x4e\xf5\x2e\x6a\xc2\x9a\x86\x65\xd9\xb4\x49\x75\x30\x75\x58\xeb\x47\xa9\xe5\xfc\xdd\xb7\x50\xe2\x3e\x5d\x75\xd0\x27\xa8\x41\x67\x61\x47\x32\x38\xb8\x71\x1c\x1b\xb2\x2d\x09\xd2\xf0\x56\x44\xfb\xb5\x01\xc2\xbe\x00\xa2\x87\xbe\xf0\xc7\xba\x99\x80\x7a\x00\xa2\x6a\x23\x00\xa3\x90\xad\x95\x34\x00\x71\x38\xd2\xd5\x83\x4e\x38\x92\xb1\x91\x2e\x75\x2a\x95\x58\x4e\x67\x4f\xe4\xdd\x0c\x93\x60\x2d\x0e\x7b\x76\xf6\x9e\xcc\xae\xdc\x62\x76\x96\xf1\x82\x29\x1d\x16\x87\x14\xc0\x5a\x27\x19\x61\x2a\x95\x7b\x21\x61\x1f\x71\x17\x3e\xbc\xd3\x13\x49\xdc\x2b\xa6\x68\xf1\x0a\xe5\x42\x7a\xee\x96\xb8\x87\x70\x57\x64\xf8\x12\xa2\xfd\x3b\xbd\x5e\x0a\x69\x26\xc0\x9c\x0e\x67\x0f\xa2\x5c\x00\xbe\xe7\x77\x2c\x2f\xf3\x26\xd8\xde\x4e\xbb\x52\xb1\x7f\x81\x34\xac\x83\x51\xb8\xd1\x00\x71\x98\x23\xf5\x1b\x1b\xa3\x49\xc1\x7e\xeb\x80\x9e\x99\x9f\xae\xb5\x7d\x3a\x66\xfb\x80\x7e\x58\xbf\xd4\xbf\xdc\xbd\xd4\x57\x24\x65\x18\x76\xcc\xfe\x31\xa0\xdf\x0f\x9a\x9d\x56\xbf\xcd\x83\x5e\x9a\xaa\x86\xf6\x62\x66\xbb\x62\x23\x1a\x8f\x37\x06\x22\xe4\xa3\x3f\x0c\x44\x58\x04\xdf\x29\x60\xf6\x58\x6f\x3c\x1e\x04\x20\xf6\x95\xaf\x53\x11\x86\x04\xfb\x43\x40\x82\xe7\xc3\xfa\xae\x9f\x5e\x46\xbb\xc9\x78\xec\x27\xe1\x30\x68\x8e\xc2\x21\x48\x37\x37\x83\x66\xba\xb9\xc9\x37\xa0\x29\xa7\x36\x0d\x18\x8d\xc7\xc9\x84\xcf\x4a\x6c\x1e\x86\x86\xd6\xa0\xc8\xe9\x30\xcb\x36\x37\x21\xdb\x85\x13\xb2\xed\x4c\xc8\x76\x5b\xd3\xa3\x2b\x3e\x5b\xd0\xa6\x83\xc4\x1a\xdc\x38\xac\x5f\x8a\x2f\x8f\x2e\xc5\x6a\x70\x3b\x21\x31\x83\x6b\x40\x3f\x0e\x9a\xa4\x15\xb7\xf5\x00\x3a\x73\x65\xd1\x1d\x3e\xaa\x9d\x40\x6d\x0d\x7b\x60\x3b\xf6\xc0\x62\x80\x40\x14\xac\x99\xaf\x3d\x83\xd5\xf3\xf5\x4a\x25\x15\x4e\x9b\x13\xbe\x46\x64\xf4\x17\xe4\x77\x00\x66\xc3\xae\x3f\x77\x74\x08\x8c\x74\x62\x38\x12\xcb\x3b\x61\x98\x0f\xc7\x08\x6b\xd2\xfa\x8e\xc7\x64\xb4\x34\x0b\x00\x85\xb0\xa6\x2e\x0a\x20\x09\xc9\x78\x8c\xd6\xec\xc8\x2f\xc9\x78\x5c\x6d\x84\x61\xc8\x38\x95\x44\x7b\x2c\x8e\xd8\x2f\xd0\xd0\x01\x5c\xf8\xec\x46\xdd\xa3\x08\x77\xe4\x63\x25\x36\x36\x72\x87\x46\x00\xd6\x18\xe3\x31\xbc\x86\xa2\x0e\x41\x14\x75\xd2\x70\x64\x30\x17\xc6\xa2\x24\x2c\x0c\xff\x30\xf2\x61\x50\xa3\xc9\x2b\xc3\x21\x24\x57\x23\x1e\x2e\x42\x6e\x7f\x7f\xe4\xd3\xcc\xa7\xc0\x1a\x8f\xbd\x93\x21\xbc\xd2\x87\x51\x77\xd1\xea\xf9\xed\x20\x65\x54\xa3\xa8\x85\xdd\x46\xb3\xda\x98\xac\x89\x83\xfb\xd4\xfb\xf0\xf5\x7f\xf2\x9a\xde\x15\x0f\x78\xff\xdf\x3f\xff\x1f\x12\x7a\xfb\xaf\x14\xf0\xaf\x14\xf0\xd7\x12\xf8\xe0\xf7\xbf\xd0\xd0\xcf\x35\xf4\x2b\x0d\xfd\x52\x15\xf8\xd7\x12\x78\x47\xd5\xf5\x8e\xa9\xe2\xb7\x1a\xfa\x8d\x86\xfe\x51\x43\xff\x20\xa1\xf7\x55\x4b\xef\xfd\x54\x55\xfa\x2d\x95\xf2\x86\xce\xfd\x33\xf5\xed\xdf\xa8\x6f\xbf\x57\xc0\x7f\x50\x15\x29\x14\xde\x37\x28\xfc\x54\x43\xbf\xd6\x90\x1a\x88\x0f\xde\xd4\x38\xab\x06\xdf\x57\x95\x7e\xf8\xbb\xff\x2a\xa1\x8f\x7e\xcc\x11\xe5\x6d\x7f\x9b\x41\xd7\x59\x9b\xff\xac\xa1\x9f\x29\xe8\xa3\x1f\xf3\xbe\xdd\xe1\x20\x6f\xe3\x15\x0e\xbe\xc9\xc0\x2f\x72\xf0\xf7\x06\xe4\x15\x7c\x85\xb5\xf4\xfa\xff\xeb\x35\xbd\x17\xf9\xc4\xfc\x4c\x42\x1f\xbc\xf9\xd7\x1a\xfa\x96\x86\xbe\x2d\xa1\x7f\xf9\xd7\x12\x78\x57\xe5\x7a\xf7\x5f\x49\xe0\xc3\xd7\x59\x6b\x57\x79\x65\xff\x49\x42\xef\x7c\x5b\x01\xdf\x51\xc0\x77\x15\xf0\x3d\x09\xbc\xfd\x6f\x25\xf0\xc1\x9b\x2a\xd3\xbb\x2a\xe9\xfd\x3f\x48\xe0\xa3\x1f\xff\x51\x42\x1f\xbe\xfe\x96\xd7\xf4\xae\xf1\x66\x7e\x2e\xa1\x0f\xde\xfc\xae\x84\xde\xf9\x1b\x9d\xf4\x3d\x0d\x7d\x5f\x43\xaf\x6b\x48\xe5\x7b\x47\x7d\x7c\xf7\xdf\x2b\x40\xd5\xf5\xee\xbf\x93\xc0\x47\x3f\x51\x4d\xbe\xf7\x3b\x06\x7c\x95\x41\xdf\xd2\x10\x9b\xa3\x6b\xaf\x31\xe8\xdf\x28\xe8\xc3\xd7\xd9\x70\x5f\xe7\x48\xfe\x9f\x12\x7a\xfb\x3b\x0a\xf8\x77\x0a\xf8\xae\x04\x3e\xf8\xc3\x5f\x29\xe8\xf7\x7f\xd4\x69\xdf\xd2\xd0\x5f\xeb\xaf\xff\x2c\xa1\x77\x5e\x57\x49\x6f\xfe\xad\x86\xfe\x4e\x7d\x54\x49\xef\xa8\x94\xb7\xff\xbd\xae\x41\x21\xf6\xce\x8f\x24\xf0\xbe\x6a\xe7\xfd\x6f\xeb\x4c\x6f\xea\xa6\x55\xda\xfb\xbf\xd4\xcd\xfc\x58\xd5\xf0\x43\x9d\x64\x20\x55\xeb\xbb\xdf\x57\xc0\xdf\x48\xe0\xc3\xd7\xd9\x64\xde\xe0\x63\xf2\x0b\x09\x7d\xf0\xe6\x1b\x12\x7a\xf7\x3f\x4a\xe0\xa3\x9f\xa8\x6c\x1f\xbe\xce\x7a\xfb\x39\x5e\xe0\x3f\x4b\xe8\xbd\x7f\x94\xc0\x3b\x3f\x96\xc0\x07\x6f\xfe\x54\x25\xbd\xa1\x00\x95\xf2\xde\x2f\x54\xca\xcf\x54\xca\xcf\x25\xf0\xee\x0f\x24\xf0\xd1\x1b\x2a\xf7\x47\x3f\xf9\xef\x1a\xfa\xa3\x84\x3e\x7c\x9d\xa5\xbd\xc4\x71\xf8\xa5\x84\xde\xf9\xb9\x04\x3e\x78\xf3\x67\x1a\xfa\x85\x84\xde\x7f\x43\x27\x99\x6c\xbf\xd4\xd0\xaf\x54\x1d\x2a\xff\x87\xbf\xfb\xcf\x1a\xfa\x6f\x12\xfa\xe8\x8d\xff\xa0\xd2\x5e\x67\x88\xdc\xe4\xcd\xff\x17\x09\xbd\xfd\x3d\x05\xfc\x07\x05\xfc\x8d\x04\xde\xf9\xa5\x02\x7e\xa5\x80\x5f\x2b\xe0\xb7\x2a\xf3\xff\x2c\x81\x0f\xde\xfc\x8d\x82\xfe\xf0\x1d\x09\xbd\xa7\x3e\xbe\xaf\x52\xde\xff\xae\xce\xa4\xa0\x77\x74\xb9\x37\x55\xed\xef\xfe\xbd\x04\x3e\x7c\xfd\x7f\x78\x4d\xef\xf3\x1c\xe1\x5f\x49\xe8\x9d\x7f\x94\xc0\xbf\x7c\x47\x02\x1f\xfe\x80\xad\xf7\x2f\xf0\x5c\xff\x97\x84\x3e\x78\xf3\xb7\x12\x7a\xef\x97\x3a\xe9\x1f\x24\xf4\xce\x3f\xe9\xa4\x7f\x94\xd0\xbb\x3f\x94\xc0\x87\xbf\xfb\x2f\x12\xfa\xe8\x27\x7f\xa5\xa1\xbf\xd6\xd0\xb7\x14\xf4\xc6\xcf\x54\x89\x1f\x30\x9a\xf5\x32\x6f\xfe\xd7\x12\x7a\xe7\x7f\x28\xe0\x2d\x05\xfc\x77\x09\x7c\xf0\xe6\x3f\x69\xe8\x4d\xf5\xf1\x0f\x3a\xe9\x9f\x35\xf4\x7b\x09\xfd\x49\x55\xff\xbe\xaa\xe2\xc3\xdf\xfd\x4c\x43\x3f\x95\xd0\x47\x3f\xf9\x8e\x86\xbe\xad\xa0\x37\xfe\x4a\x42\xef\x31\x12\xf8\x32\x1b\xac\xf7\x78\xb6\x6f\x72\xbc\x59\xaf\x6e\x71\xbc\xff\x6f\x09\x7d\xf0\xe6\x1f\x15\xf4\xd6\x5f\x69\x48\xe5\xfb\xf0\x77\xbf\x91\xd0\xbb\x3f\x56\x49\x3f\x60\x24\xfc\x36\xaf\xe4\x37\x12\x7a\xef\x4d\x09\xfc\x49\x7d\x7b\xfb\x3f\x4a\xe0\x83\xb7\xbe\xa5\xbe\xfd\x5b\x9d\xf4\x6d\x95\xf4\x6f\x74\xd2\x77\x35\xf4\x1d\x09\xbd\xff\x53\x09\xbc\xfb\x13\x09\x7c\xf4\xc6\xf7\x35\xf4\x73\xd5\x34\x2f\xc8\xfb\xc9\x68\xd4\x6d\xd1\x4f\xd6\xe6\x1d\x8e\xe2\x7f\x95\xd0\xdb\xaf\x2b\xe0\x07\x0a\xf8\x5b\x09\x7c\xf0\x87\xd7\x35\xf4\x7d\x0d\xfd\x9d\x86\x54\xbe\xb7\xff\x17\x95\xf4\xd6\xf7\x24\xf4\xfe\xaf\x75\xd2\xdf\x48\xe8\x4f\xdf\xd3\x49\xba\xb2\xb7\x54\x03\x7f\x52\xb9\xde\xff\x8d\x02\x7e\xab\x6a\x57\x0d\xbe\xff\x2b\xdd\xb2\xae\x53\xd5\xf4\xde\x7f\x54\x99\x34\x06\x2a\xcf\xbb\x3f\xd5\xc5\x7e\xac\xa1\x1f\x69\xc8\x7c\x7d\x43\x43\x3f\xd3\x90\xc6\xf9\x0f\x3f\x54\x2d\x29\x2c\xde\x53\x5d\x7c\x5b\x7f\xfa\xa3\x6a\xf2\xdb\x0a\xf8\xdf\x25\xf0\xd1\x4f\xbe\xab\x21\x55\xe7\xbb\xbc\x99\x9b\x3c\x8d\x23\xcb\xd1\xe6\x89\xaf\xf0\xc9\x62\x8b\xe0\x2e\x9f\xac\xdf\x4a\xe8\x83\xb7\xfe\x56\x43\x7f\x27\xa1\x77\x7f\x2e\x81\x0f\x7f\xf7\x9f\x24\xf4\xd1\x4f\xbe\xaf\xa1\xd7\x35\xa4\x8a\x7e\xf8\x03\x86\xde\x5f\xf2\x8a\x7f\x27\xa1\x8f\x7e\xf2\x77\x1a\xfa\xa1\x84\xfe\xe5\xbb\x12\xf8\xf0\x07\x6c\x85\xde\xe3\x05\xfe\x41\x42\x7f\xfa\x5b\x09\x7c\xf0\xd6\x0f\x55\x92\x02\xde\xff\xbe\x02\x5e\xd7\x99\x7e\xa4\xa1\x1f\xab\xec\x7f\xa7\x93\xde\x90\xd0\xbf\x7c\x4f\x02\x1f\xfe\xee\xe7\x12\xfa\xe8\x27\xaa\xe4\x47\x6f\xfc\x42\x43\x7f\xad\xf2\xfd\x80\x6d\x8a\xfb\x1c\xb3\xff\x47\x42\x1f\xfc\xfe\x0d\x09\xfd\xe9\x47\x2a\xe9\xad\x9f\xab\xa4\x1f\xeb\xa4\x9f\xaa\xa4\x9f\xea\xa4\x5f\x68\xe8\x67\x1a\xfa\xa5\x84\xde\xff\xa1\xca\xaf\xaa\xff\xf0\x77\x7f\x94\xd0\x47\x6f\xfc\x52\x43\xdf\x52\x5f\x7f\xc0\xb8\x91\x3d\x8e\xda\x3f\x4a\xe8\x83\xb7\x7e\x25\xa1\x3f\xfd\x5c\x27\xfd\x5a\x42\xef\xff\x48\x7d\xfb\x99\xfe\xf6\x5b\x0d\xfd\x46\x7d\xfc\x85\x04\xde\x55\xe5\xde\x55\x9f\xde\xff\xa3\x04\x3e\x7a\xe3\xdb\x0a\xfa\x31\x43\x6c\xef\xab\x1c\x1f\x36\x9d\xaf\x70\x7c\xfe\x9b\x84\xde\xfe\x5f\x15\xf0\x23\x05\xfc\x6f\x12\xf8\xd3\x2f\x25\xf0\xc1\x5b\x6f\xaa\xa4\x5f\xe9\xa4\xdf\xab\xa4\x5f\xab\x72\x3f\x96\xc0\x7b\xaa\x82\xf7\xfe\x7f\xf6\xde\xad\xcf\x91\xdb\x3a\x10\x7f\xef\x4f\x41\x56\x6c\x4e\x41\x0d\xb2\xd9\x23\xef\x66\x97\x3d\x35\xed\x91\x34\x5a\x6b\x57\x23\xe9\xaf\x19\xdb\x9b\xe5\x50\xbd\x68\x16\x48\xc2\x53\x44\xd1\x28\x54\xf7\xb4\x9a\xdc\x5f\xbc\x8e\xe3\x78\x1d\x6f\xe2\x4c\x1c\xaf\x13\xcb\x5e\xaf\xd7\xeb\x38\x8e\xe3\xc8\x8e\x6c\x5d\xec\xf8\x41\xf7\x3c\x28\x9f\x61\xe6\x51\x9f\xe2\xff\xc3\xb5\x50\x17\xb2\xd9\x97\x69\x8d\x24\xce\xc3\xf4\x21\x0a\x97\x03\xe0\xe0\xe0\x9c\x83\x83\x83\x6f\x1b\xe0\x5b\x06\x30\xad\xdd\x7d\xed\xff\x99\xf2\xff\x60\x80\x7f\x34\x99\xee\x68\xe0\x9d\xbf\x34\xc0\x5f\x69\xe0\xad\x9f\xdb\xf2\x16\x93\xd7\x2c\x9a\xaf\xfd\x83\x85\xfe\xde\x42\xff\x68\xa1\xff\x6b\x71\xff\x85\x69\xf2\x17\x36\xe9\x57\x16\xfa\x27\x0d\xbd\xfb\x47\x1a\xb8\x77\x47\x70\xcf\xcf\xc9\x61\xfb\x95\x86\xee\xbe\xf2\x1b\x0b\xfd\xb3\x86\xde\xfa\x85\x06\xde\x7f\xe1\x7b\x1a\x7a\xf7\x2b\x36\x49\x90\xd8\xe7\xa4\x62\x70\x47\x90\xf8\xe7\x65\x75\xbf\xd6\xd0\xdd\x57\xff\xd0\x42\xff\x5d\x43\x6f\xfe\x93\x4d\xfa\x63\x0b\xfd\x91\x85\xfe\x44\x43\xf7\x5e\xfc\x85\x81\xee\x08\xa1\xe5\x3f\xcb\x8a\x5f\xd6\xd0\xdd\x57\xff\x87\x85\xfe\x54\x43\xf7\xee\x08\x56\xf3\x07\x32\xdf\x2b\x1a\xba\xfb\xda\x2f\x34\xf4\xfa\x0b\x1a\x78\xf3\x57\xf6\xdb\xcb\x1a\x7a\xc7\x64\xba\xfb\xaa\xa9\xe2\xcd\x97\x6d\xae\x2c\xff\x3f\x69\xe8\xad\x5f\x6a\xe0\xdd\xff\x69\xbf\xfd\xb3\x86\xee\xdd\x11\xf2\xd0\x7f\x91\x58\xbc\xaa\xa1\x37\x5f\xd1\xc0\xdd\x57\xff\xdc\x24\xbd\x66\x80\xdf\xda\x6f\x7f\x61\xa1\xbf\xd4\xd0\x5b\x2f\x69\xe0\x9d\xff\xab\x81\x7b\x2f\xfe\xce\x42\x3f\xd5\xd0\xfb\x2f\xfc\x1f\x93\x76\x47\xd4\x8f\x44\xe3\xbf\xfd\x92\x86\xee\xbe\xfa\xd7\x1a\x7a\xfd\x7f\x1b\xe0\x07\x06\xf8\x3f\x36\xd3\x8f\x2d\xf4\x23\x0b\xfd\xd4\x42\x3f\x31\x05\x7e\xa8\x81\x37\x4c\xf5\x6f\x7c\xd9\x66\x7a\xd1\x42\x3f\xb7\xd0\x4b\x16\xfa\xa5\x86\xde\x31\x2d\xbd\x6d\xb1\xf8\xbf\x26\xe5\xfb\x36\xb7\x69\xe7\x75\x83\xcd\xdb\xaf\x19\xe0\x7f\x9a\x8a\x0c\x0a\xef\x64\x28\xfc\xc0\x42\x3f\xb3\xd0\xaf\x0d\xf4\xb2\xc5\xf9\x2b\x1a\xb8\xf7\xa2\xa9\xfe\x5d\x33\x70\xef\x7f\x57\x22\x2a\xdb\x16\x6b\x19\x61\xd1\xe6\x6f\x2d\xf4\x43\x03\xbd\xff\x5d\xd9\xb7\x58\x82\xb2\x8d\x54\x82\x62\xae\xd1\x9e\x04\x5f\xcb\x40\x59\xc1\x81\x9c\x22\xb1\x9f\xef\xca\x29\xfa\xef\x1a\xba\xfb\xf2\x97\x2d\xf4\x15\x0b\x7d\x55\x43\x6f\xfd\xa1\x01\x4c\xae\x77\xef\x68\xe0\xde\x1d\x41\x33\x7d\x59\xd9\x97\x35\xf4\xc6\x57\x0d\xf0\x35\x03\x7c\xdd\x00\xdf\xd0\xc0\xeb\x3f\xd6\xc0\xdd\x97\x4d\xa6\xb7\xfe\x44\x03\xef\xfc\x46\x03\xef\x7f\xf7\x77\x1a\xba\xf7\xc7\x7f\x64\xa0\x3b\xa2\xe9\x50\x36\xf8\x47\x1a\xba\xfb\xf2\xd7\x35\xf4\xc6\x9f\xd9\xa4\x6f\x58\xe8\x9b\x16\xba\x63\x21\x93\xef\x0d\xf3\xf1\xad\x3f\xd5\xc0\xbb\x7f\x65\x80\x6f\x6b\xe0\xfd\x17\x5e\xd5\xd0\xdb\x62\x66\x42\xa9\x35\xff\xb1\x81\xee\xdd\x11\x6b\x05\x4b\x84\xbe\xa2\xa1\xd7\xff\xd6\x00\x3f\x31\xc0\xdf\x69\xe0\xee\x6b\x5f\x32\xd0\xab\xbf\xb3\x69\x5f\xb1\xd0\x97\xed\xd7\xdf\x6a\xe8\x8d\x3b\x26\xe9\xe5\x6f\x59\xe8\xdb\xe6\xa3\x49\x7a\xc3\xa4\xbc\xfe\x53\x5b\xc3\x6b\xe6\xdb\xdf\x68\xe0\x1d\xd3\xce\x3b\x5f\xb5\x99\x5e\xb1\x4d\x9b\xb4\x77\x7e\x62\x9b\x79\xc1\xd4\xf0\x1d\x9b\x94\x41\xa6\xd6\x77\x4d\xc1\x77\x4d\xca\xdb\xa6\xdc\xbd\x3b\x02\xbf\x81\x1c\x9c\x3f\xd6\xd0\xdd\x97\xbf\xaf\xa1\xb7\xfe\x42\x03\xef\xbf\xf0\x1b\x0d\xdd\xbb\x23\x86\x7f\x28\x0b\x7c\x55\x43\x6f\xbf\xa4\x81\x37\x5e\xd0\xc0\xdd\x97\x7f\x60\x92\xbe\x6f\x00\x93\xf2\xf6\x8f\x4d\xca\x0f\x4d\xca\x8f\x34\xf0\xee\xff\xd6\xc0\xfb\xdf\x33\xb9\xef\xbe\xf4\x8a\x49\x7b\xe1\x77\x1a\xba\x77\x47\x8c\xe5\x48\xe2\xf0\x27\x1a\x7a\xe3\x47\x1a\xb8\xfb\xf2\x0f\x2d\xf4\x63\x0d\xbd\xf3\x7d\x9b\x94\x65\xfb\x89\x85\x7e\x6a\xa0\x57\xff\xca\xd4\x66\x4a\xde\x7b\xf1\x6f\x2d\xf4\x2b\x0d\xbd\x6b\xea\x78\x4b\x8c\xdd\x68\x4f\x62\x24\x04\x24\x22\x31\xfa\x9a\x86\x5e\xff\x7b\x03\xfc\xcc\x00\xff\xa0\x81\x37\x7e\x62\x80\x9f\x1a\xc0\xe6\xf9\xb9\x06\xee\xbe\x6c\xa1\xd7\x4c\x95\x6f\xff\xb9\x06\xde\x31\x29\xef\x7c\xdd\x66\x32\xd0\x1b\x59\x0d\xa6\xd2\x77\xff\xd6\x7c\x7b\x51\x03\xf7\xee\x08\x32\xf9\x82\x44\xf8\x7f\x68\xe8\x8d\x97\x34\xf0\xf6\x3f\x6a\xe0\xdd\xaf\x69\xe0\xde\x1d\xb1\x43\xdc\x92\xd9\xbf\xae\xa1\xbb\x2f\xbf\xa8\xa1\xb7\x7f\x62\x93\x7e\xa9\xa1\x37\x7e\x6d\x93\x5e\xd2\xd0\x5b\xdf\xd1\xc0\xbd\x17\xff\x4e\x43\xef\xbf\xf0\x25\x0b\x7d\xd9\x42\x5f\x31\xd0\xf7\x7e\x68\x4a\xdc\x11\x84\x1b\xc9\xe6\xff\x54\x43\x6f\xfe\xa1\x06\xde\x78\xd5\x00\xff\xac\x81\xbb\x2f\xff\xda\x42\xaf\x98\x8f\xbf\xb1\x49\xbf\xb5\xd0\x6b\xa6\xae\xdf\x19\xe0\xbf\x6b\xe0\xad\xbf\xd6\xc0\xbb\x3f\xd5\xc0\xbd\x17\x7f\xa0\xa1\xf7\x5f\xf8\x9a\x81\xbe\xf7\x25\x9b\xf6\x55\x0d\xbd\x2d\x3f\xaa\x41\x13\x72\xe1\x58\x62\xfd\x0d\x0d\xdd\x7d\xf9\x77\x06\x7a\xe5\x4b\x16\xfa\xb2\x86\xde\x7d\xd1\x00\x3f\xd7\xc0\xbd\x3b\x62\x49\x51\x59\xc7\xff\xd4\xd0\xdb\xaf\x68\xe0\xcd\x3f\xd2\xc0\xeb\x2f\x6a\xe0\xee\x2b\x5f\x31\xdf\xfe\xc4\x26\x7d\xd5\x24\xfd\xb1\x4d\xfa\xba\x85\xbe\xa6\xa1\xb7\xbe\xa7\x81\x77\x7f\x61\xb2\x9b\x4f\xef\x7f\xef\x9b\x16\xfa\x91\xc1\x41\x4c\x03\x55\xbd\x14\x25\x63\x89\xe1\x9f\x69\xe8\xf5\x5f\x18\xe0\x97\x06\xf8\x27\x0d\xdc\x7d\xed\x8e\x85\xbe\x69\xa1\x6f\x5b\xe8\x5b\xa6\xc0\x4b\x26\xe9\x95\x6f\x68\xe8\x9d\x9f\xd9\x24\xd3\xd0\x9b\xdf\xb0\x49\xb6\xb2\x57\x4c\x03\x6f\x9a\x5c\xef\xfc\xdc\x00\x2f\x9a\xda\x7f\x65\x52\x7e\x6a\x5b\xb6\x75\x9a\x9a\xde\xfe\x0b\x93\xc9\x62\x60\xf2\xbc\xf5\x03\x5b\xec\x05\x0b\xfd\x8d\x85\xb2\xaf\xdf\xb7\xd0\x0f\x2d\x64\x71\x7e\xed\x3b\xa6\x25\x83\xc5\xdb\xa6\x8b\xaf\xbf\x6c\x52\x7e\xa7\x81\x77\xff\x52\x03\xef\xbf\xf0\x75\x0b\x99\xaa\xde\x35\xa3\xf5\x96\x6c\x46\x72\x06\x09\x49\x81\xe3\x05\x89\x76\x2c\x27\x4b\x20\x34\x91\x93\xf5\xe7\x1a\xba\xfb\xca\xb7\x2c\xf4\x6d\x0d\xbd\xf5\x23\x93\xf4\xd2\x6f\x35\xf4\xfe\x0b\xdf\xb4\xd0\x1d\x0b\x99\xa2\xf7\xee\x08\xd6\xfd\x45\x59\xf1\x37\x35\xf4\xee\xd7\x35\xf0\xfe\x0b\xdf\xb6\xd0\x77\x34\x74\xef\x8e\x18\x24\x26\x0b\xfc\x85\x86\xde\xfc\x96\x06\xee\xbe\xf2\x1d\x93\x64\x80\x77\xbe\x69\x80\x3b\x36\xd3\xdf\x58\xe8\x05\x93\xfd\xdb\x36\xe9\xfb\x1a\x7a\xf7\x1b\x06\xf8\xad\x06\xde\x7f\xc1\x14\x7c\xff\x7b\x3f\xb6\xd0\x97\x35\x74\xef\x8e\x90\x78\x13\x89\xd8\x1d\x0d\xbd\xfe\x7d\x0d\xbc\xf9\x37\x1a\xb8\xfb\xca\x8f\x4c\xd2\x0b\x36\xe9\x07\x26\xe9\x07\x36\xe9\xc7\x16\xfa\xa1\x85\x7e\xa2\xa1\x77\xbe\x63\xf2\x9b\xea\xdf\xf9\x9d\x06\xde\xff\xde\x4f\x2c\xf4\x15\x53\xf0\x55\xd3\xf8\xbd\x3b\xa2\x32\x2e\x51\xfc\x4b\x0d\xdd\x7d\xe5\xa7\x06\x7a\xf5\xdb\x1a\x7a\xf3\x47\xf6\xe3\xcf\x34\xf4\xce\xdf\x98\x6f\x3f\xb4\xdf\x5e\xb4\xd0\xcf\xcd\xc7\x1f\x6b\xe0\x2d\x53\xee\x5f\xfe\x44\x03\xf7\x5e\xfc\x7f\x1a\x7a\xff\x7b\x5f\x35\xd0\x77\x05\xb6\x5c\x09\x5b\x42\x52\x4f\x25\x6a\xdf\xd2\xd0\xeb\xaf\x18\xe0\x55\x03\xbc\xa6\x81\x37\x7f\xa2\x81\xbb\xaf\x98\x4c\x6f\xfe\xd4\x26\xd9\x5c\x3f\x33\xe5\x7e\xa3\x81\xb7\xbf\x6b\x80\xff\x65\x80\xbf\x32\xc0\x5f\x9b\xf2\xaf\xfd\xd8\x94\xff\xb9\x01\x5e\x34\x99\xfe\x52\x03\xef\x18\x24\xdf\xf9\xb6\x06\xde\xfa\x47\x5b\xde\x62\xf2\x9a\x45\xf3\xb5\x9f\x5b\xe8\x67\x16\x7a\xd1\x42\x3f\xb2\xb8\xff\xd2\x34\xf9\x4b\x9b\xf4\x6b\x0b\xbd\xa4\xa1\x7f\xf9\x9a\x06\xee\xdd\x11\x25\xf7\xe4\xb0\xfd\x95\x86\xee\xbe\xf2\x5b\x0b\xfd\x4e\x43\xff\xf2\x75\x0d\xbc\xff\xc2\xf7\x4d\xd2\x9f\xda\x24\x41\x76\x7b\x4a\x83\x10\x93\xb4\x2f\xab\xfb\xb6\x86\xee\xbe\xfa\x25\x0b\x7d\x59\x43\x6f\xbe\x64\x93\xbe\x6a\xa1\xaf\x58\xe8\x7f\x59\xe8\x6b\x1a\xba\xf7\xe2\x2f\x0d\x74\x47\x8c\xee\x6d\xd9\xc4\xff\xd2\xd0\xdd\x57\xbf\x6e\xa1\x6f\x68\xe8\xde\x1d\x21\x7b\x1c\xc8\x7c\xdf\xd1\xd0\xdd\xd7\x7e\xa9\xa1\xd7\x7f\xab\x81\x37\x7f\x6d\xbf\xbd\xa2\xa1\x77\x4c\xa6\xbb\xaf\xfe\x99\xc9\xfe\x3b\x9b\xcb\xe6\x7f\x35\xab\xf5\x25\x0d\xbd\xf5\x4f\x1a\x78\xf7\xcf\xec\x37\x53\xf2\xde\x1d\x31\x97\xcf\x4b\x7c\xfe\x5a\x43\x6f\xbe\xaa\x81\xbb\xaf\x7e\xd3\x24\xfd\xc6\x00\xff\x6c\xbf\xdd\xb1\xd0\xb7\x34\xf4\xd6\xaf\x34\xf0\xce\x8f\x34\xf0\xee\x1f\x6a\xe0\xde\x8b\x7f\xaf\xa1\xf7\x5f\xf8\xa1\x86\xde\x13\x1b\xf0\x7b\xdf\x14\x90\x58\x4e\xef\x7d\x4b\x40\x62\x68\xdf\xfb\xb6\x80\x84\x1c\xf6\xde\x77\x04\xf4\x77\x16\x12\x93\xfb\xde\xf7\x05\x24\x76\xff\xf7\x7e\x24\xa0\x9f\x5a\x48\x74\xef\xbd\x9f\x08\x48\x34\xf6\xde\x8b\x02\x12\x64\xf9\xde\x4b\x02\x12\xd2\xe6\x7b\xbf\x16\x90\x20\xda\xf7\x5e\xf1\xa0\xf7\xaf\xff\xc3\x40\xef\xfd\xb9\x4d\x93\x6d\xfc\x4e\x40\x62\xd2\xfe\xf5\x2b\x02\xfa\xba\x81\xde\xfb\x47\x9b\x26\x30\xfd\xd7\xaf\x09\x48\x48\x49\xff\xfa\x65\x6f\x96\xf9\x32\xa6\x99\x2f\xa3\xe7\xb5\x54\x6c\x61\x1f\x83\x16\xc3\xd2\xb1\xd6\xdf\xe8\x3e\x77\x33\x6d\xb7\xdb\xed\xa6\xf8\xf3\xfb\x57\x7b\x1b\xc3\xbc\x8b\xa4\x71\xab\xe8\xe2\xde\x74\x8a\x67\xa0\xca\xff\x92\xe1\x41\x73\x1c\x87\x64\x40\x30\xdb\x30\x40\xb2\xc1\xf0\x60\xf5\x1a\xf9\xea\x35\xf2\xd5\x6b\xe4\x1f\xd3\xd7\xc8\x35\x15\xd2\xc0\x33\xe9\xc5\x65\xd8\x68\xe8\x7b\x3b\xc5\x0f\xb6\x33\xdb\x15\xbc\xc8\x90\xe1\xac\x53\xf1\x11\x37\x1a\x0b\x9a\xcb\x91\x55\x10\x04\x36\xbd\x6e\xe0\x8c\x80\xb7\x0d\x6e\x1d\xdb\x20\x28\xba\x11\x5b\xde\x1a\x67\xe4\xec\x8b\xe5\x2d\x86\xb8\x1e\x04\xb8\xd1\xa8\x17\xb9\x56\xce\x23\xd6\x56\x50\x5a\x64\x39\x0f\xd6\x85\x4f\xbb\xeb\x1a\xca\xbd\xa6\xdb\x87\xfd\xdd\x0e\x9d\x75\x0e\x39\x62\x43\xcc\x3b\x14\x4e\x58\xac\xbc\x6e\xc9\xec\x24\x3e\xa8\x15\x57\xb5\x8c\x77\xe1\x4e\x82\xf9\x35\xcd\xfb\xaf\x21\x8a\x86\x98\xf9\x7e\xc9\x01\xf4\x70\x87\xa5\xf4\x51\xd4\x1f\xe1\x8e\x20\xaa\xeb\x98\xc3\x3e\x9a\xa0\x5d\x12\x11\x4e\x70\xd2\xd1\x75\x8d\xf3\x15\x3d\xea\x64\xd9\x3e\x3a\x8b\xef\x3d\xdc\xda\x7c\xd8\x03\xda\x07\x19\xf6\x19\x46\x1c\x1b\xe4\xca\x17\x10\x0e\xf5\x93\x6e\x26\xbf\x1d\x24\x53\x7e\xd7\x40\x7a\x1c\x8d\x6f\x33\x94\xab\x37\x8a\xca\x55\x63\xc8\x33\x17\x73\x24\x98\xbd\x7e\x7d\x02\x45\x00\x26\x01\x6d\x99\x36\x60\x1a\xd0\x96\xaa\x16\x46\x01\x6d\xf5\x77\x73\x1e\xdb\xb8\xd5\xdf\x0d\x22\x28\x1b\xe4\x23\x92\xb4\xc4\xf8\x3d\x41\x65\x24\xe1\xdb\xdc\x8f\x04\xff\x8d\xfd\x04\x34\x1a\xc4\x4f\xe5\x22\x96\x99\x12\xcc\xb3\x4c\x29\x4c\x20\x17\xb3\x67\xda\x0c\x12\x88\x75\x9b\x41\x2a\x1f\xd8\x57\xfd\x0f\xf8\x0c\xaa\x00\xe8\x95\x1d\x32\x44\x88\x7c\x9e\xeb\x0e\x0d\x58\xd6\x9d\x24\x60\xa6\x3b\x69\xc0\x74\x77\xd2\x5c\x77\xd2\xb9\xdd\x49\x33\x5c\x44\xb7\xa8\xec\x96\xe8\x9c\x1f\xfb\x19\xfa\x32\xd5\x74\x00\x34\x1a\x99\xef\x68\x02\x29\xa8\x07\x8e\x8b\xab\xc9\x05\x73\xa5\x2b\xc6\xa8\x22\xa3\xbc\xcc\x04\x60\x45\xe6\x04\x52\x07\x51\x77\x60\x69\x36\xb0\x09\x98\xc1\x5c\xb1\x39\xc4\xa1\x90\x65\x29\x55\x12\x82\x68\x0e\x7a\xa2\xe0\xe7\xc4\xc2\x4b\x3c\xa8\x72\xaf\xd9\xe1\x92\xab\xa7\x85\xc2\xd0\xa7\xa2\x09\x77\x00\x2b\xa7\xab\xba\x01\x51\xd1\xae\xac\xbc\xb2\x6a\xa6\xab\x7e\x74\xb7\x50\x27\xf6\xb9\xee\x98\xc2\xaf\xd4\x2b\xdc\x22\xc9\x63\x2a\x94\x18\x0e\xa7\x53\xe7\x27\xa1\xc3\xe9\x54\x61\x93\xc8\xeb\x32\x22\xff\x0c\xea\xb8\x63\x15\x24\x97\x79\xea\xea\xc9\x61\x81\x3b\x3d\x42\x48\xd8\x2d\x22\x3f\x88\xd9\x55\xd4\x1f\xf9\x55\x42\x6c\x36\x12\x7d\xb1\xe5\x0a\xa1\x44\x08\xb3\x74\x3a\x8d\x7d\x26\xa9\x8a\x57\x53\x07\x87\x4c\x51\xc3\x6c\x36\x03\x99\x18\x5b\xc3\x3e\x38\xf4\xcb\xd2\x93\x9f\x6d\xeb\xf1\xa0\xc6\x01\xa8\x94\x12\x1e\x45\x94\xc6\xbc\x26\xa4\xa3\x1a\xaa\xc9\x2b\x69\x35\x94\xd4\x90\x95\x7a\x3d\x30\x03\x6a\xba\x24\x9e\xce\x85\xb0\xa4\x4a\x06\xa7\x21\x66\xcd\x11\x8e\x26\x42\xf6\x36\x7f\x73\xa1\xad\x4e\x7c\x0d\xca\xe7\x1f\xd5\x3d\x9c\xdd\x8f\x59\xcb\x5d\xaa\xe2\x99\x0b\x3f\x0b\xda\x42\x7a\xd2\x42\x96\x14\xa2\x34\x13\xe0\x42\x8c\xa2\x2d\x4c\xd3\xb1\x12\xfa\x02\xf7\xc7\x74\x5a\xdf\x84\x54\x74\x7b\x40\x86\xa9\xfa\x5e\x6f\x9b\xb0\x86\x84\xd6\xa8\x90\x99\x5b\xfb\x8c\x70\xfd\x0d\xc0\x79\x9b\x3b\x6d\xdd\xc2\x07\x90\x82\x59\xfe\x3a\x94\xd5\xb9\x7c\x62\x24\xf9\x04\xf3\x67\xcc\x38\x3e\x3d\x28\x6a\x09\x96\xa1\xef\xec\xc8\xd1\xde\xd9\x09\x38\x94\xa3\x2b\x04\xe5\xbc\x88\xa3\x56\xb1\xb3\xed\xce\xd1\xcd\x9e\xc5\x83\x08\xf7\xf9\x74\x5a\xd7\x50\x36\xd3\x7a\x03\xa9\x6f\x8a\xed\xa4\xf4\xb5\x95\x8c\xd0\x38\x97\xa5\x82\x7e\x9e\x61\xf1\xed\x03\x93\x49\x69\x6f\xba\x13\x8f\x21\x8e\xe7\x2a\x2e\xa5\xc6\x7c\x91\x1d\x76\xdd\x35\x04\x0e\x67\x00\x00\x58\x6f\x6b\x65\x2d\xbb\x3f\xb8\x39\x9b\xf9\xa0\x78\xe3\xc5\xd7\xac\x19\xd2\x20\xd5\xba\x8a\xe6\xd6\x24\x48\xe5\x8a\x07\x2e\x8d\xaf\xb1\xa0\x8c\x04\x85\xf6\x8e\x07\x24\xfa\x5e\x04\x0b\x68\x0b\x4d\x26\xd1\x81\xe2\x1a\x36\x83\x45\x00\xa9\x0f\xcc\x9d\x7d\xa4\x2e\xc3\x69\x7c\xd9\x74\x6a\x64\x59\xa1\x84\x4a\xb6\x98\x8d\x65\xdd\x8c\x25\xdb\x4e\x7c\x0c\x3a\xce\x35\xab\x44\xeb\xe8\xf6\x92\x04\x76\xd6\xcf\xb3\x78\x80\x19\xa6\x7d\xb3\x88\x04\x16\xb5\x11\x4a\xe8\x05\x5e\xdb\xc5\x98\xd6\xf4\x1b\x61\x24\xc1\x61\xad\x59\x4b\xd2\x09\x66\x3e\xc8\xe5\x10\x73\x21\x6f\xee\x58\x9d\xbf\xca\xc6\xe1\xa7\xd5\xd4\xbb\xad\x53\x87\xb9\xd4\x4a\xde\x93\x11\xf4\x74\x5a\x59\x4a\xee\x1a\x39\x26\x12\x99\xbd\xcf\x30\xb7\x1a\xa1\x35\xbc\x3d\x6f\x09\x72\x23\x54\x33\x98\xad\xf1\x4e\xbd\x0d\xdd\x05\x2e\x7e\x9b\x05\x2d\xa5\xef\x0e\xee\xf2\x5e\xc0\x20\x3e\x23\xb9\xbd\xef\x2e\xc8\xf2\x26\x56\x31\xe9\xdc\xaa\x35\xbc\x9a\x37\x5e\x17\xf3\x56\xc3\xb7\x27\x0c\x27\x89\x18\x18\xa9\xa6\x62\xc2\x47\x98\x09\x8d\x56\x94\xae\xc5\x2c\xc7\x2c\xd7\x9c\x95\x67\xe6\x4e\xc9\xeb\x3e\x6f\x34\x1c\x7b\x02\x3c\x74\x96\x44\x47\x77\x0f\xbb\x63\x54\x1c\x3f\xb1\x57\x73\x29\x2b\x0a\x96\x04\xfc\x3e\xd4\x41\x25\xe4\xde\xa8\xec\x16\x62\x36\x10\x4c\x83\xd8\xef\x83\x6c\xeb\xeb\xeb\x15\x8a\xd7\x98\x5a\x31\xfd\x4c\x23\xe6\xa5\x7b\x58\x05\x05\x19\xaa\x2b\xbc\x5c\x5e\xd7\xa5\x5d\xd2\x73\xee\x66\x11\xab\x2c\x47\x7e\xe2\xe3\x20\x95\x3c\x46\x2f\xda\x14\x76\x45\x63\x3d\x63\xa6\xa3\x82\xa7\x78\x21\x09\x9f\x4d\xa9\x27\xef\x8c\x61\x63\xba\xc1\x41\x1f\xfa\x3c\xe8\x1e\xde\xc2\x07\x1d\xf3\x9e\xbf\x07\xd5\xa0\x54\x09\x81\xb8\xdb\xee\x29\x51\x49\xd5\x37\x9d\xfa\xce\x2f\xb1\x9b\x30\x1f\x6b\x0b\xcd\x26\x80\x1c\x80\xd9\xac\x27\xf4\x58\xdf\x99\x1f\xa1\x45\x20\x99\x06\x11\x80\x7d\xc1\xd9\x32\xd2\xea\x1f\x4b\x26\xb1\xef\x2c\xad\x64\x92\x95\x4c\xb2\x92\x49\x56\x32\xc9\x4a\x26\x59\xc9\x24\x2b\x99\xe4\x63\x2d\x93\x6c\x17\x44\x90\x4e\x5e\x42\xb9\x7f\x02\x49\x21\xfc\xfd\x4a\x24\x59\x89\x24\xf3\x44\x92\x8c\xa3\xfa\x24\x70\xe4\x85\x7a\x41\x5e\x68\x34\xcc\xf6\x38\xc4\x7c\xdb\x81\xe7\x58\x81\xf3\xeb\x43\x8c\xc4\x56\xbd\x74\xa2\x9a\x8f\x84\xa2\xcf\x55\x21\xcf\x8e\x9b\x7c\x1c\x44\x3e\x06\x60\x0b\x6c\x39\x47\xe3\x90\xcb\xed\x9c\x9a\xed\x3c\xdb\x41\x9c\xda\xd4\xd3\xeb\x13\x1e\x33\x9f\x8a\x02\xba\x3c\x91\xf8\xcb\xff\x55\x7b\x0c\x74\x88\x3a\xb2\x9e\x29\xc1\x0a\xb2\xe9\xb4\x70\xa8\xe5\x48\x6e\xf1\x99\x4a\x6e\x68\x25\xb9\x2d\x94\xdc\xa2\xa2\xe4\x16\xdd\x4f\xc9\x2d\xa9\x90\xdc\x92\x93\x49\x6e\x69\x41\x72\x4b\x3f\x38\xc9\x2d\x72\xf8\x79\xf4\x41\x48\x6e\xfd\x0f\xa3\xe4\x36\xf8\xb8\x48\x6e\xb1\x91\xdc\xc2\x39\x92\x5b\x02\x07\x01\xf2\x43\x47\x72\x0b\x8b\x92\x5b\x78\xe6\x92\x5b\xdf\x4f\x7d\x1c\x0c\x5c\xc9\x6d\x50\x29\xb9\x0d\xa8\xa7\x4e\x5f\xdb\x00\xca\x42\x00\x7a\xd9\x59\x6e\xf9\x1b\x45\x63\x1c\x66\xc9\x8e\xb0\x17\x9e\x54\xd8\x1b\xd0\x80\xa9\x53\xd5\xac\xe1\xc0\x15\xfc\xc4\x27\xd9\x6e\xc0\x67\x33\xa8\x5a\x10\x22\xda\x63\x46\x42\x2b\xb4\x02\x0e\x75\xbd\xfa\xec\x2e\xab\x56\x27\xc8\xca\x1a\x0d\xbf\x0d\x75\x46\x75\xac\xe6\x64\x74\x1a\x05\x90\xf8\x91\x1f\x66\xa4\x02\x60\xbe\x75\xcd\x51\x05\x37\x97\xe0\x1c\xb9\x34\x51\x72\x69\x02\x60\x98\x97\x4b\x07\x47\xca\xa5\xa2\x8a\xc4\xab\xd8\x14\x4a\xc5\xe4\xf3\xf4\x4d\x15\x7a\x72\xc3\x3c\x79\x60\xe5\x57\xe8\xe9\x1c\x79\x49\x56\x4c\xca\xfd\x88\xf9\xa8\xbd\x03\x8a\x51\xaa\x36\x2b\xa3\x54\x6d\xf6\xb6\xdd\x1f\x1d\xcf\xc4\xe0\x95\xfb\x97\xa9\x5f\x88\x3c\x99\xa3\x9f\x98\x40\xf3\x45\xf0\xcc\x2e\xeb\x55\x7a\x23\x26\x71\xb4\x87\xd9\xc6\x00\x23\x9e\xb2\x25\x47\x52\x97\xa9\x18\xc3\x42\x0e\x03\x24\x1b\x52\xaa\x25\xfd\xb3\x1e\xdc\xb9\x05\x6c\x94\xe2\xc3\x3c\xa3\xaf\x0e\xaa\x69\x47\x6a\x36\x03\x0b\x3a\x6c\x80\x8f\x63\x9f\x6d\x77\x36\xfa\x31\xe5\x88\x50\xcc\x9a\x21\xde\x4d\x87\x4d\x14\xa2\x09\x3f\xee\xa0\x68\xe2\x59\x3c\x34\x79\x95\x2a\x53\x00\x78\x4b\x3e\x38\xeb\x2b\x01\x67\x78\xf5\xf6\xc4\xf7\x9e\xdb\xd8\xf6\xd6\xd9\xba\xb7\xe1\xb7\xd6\xc1\x86\xb7\x8e\xd7\xbd\x4f\xe8\x90\x8e\x7a\xeb\xb4\xce\x8f\xb4\xbb\xd9\x3b\xa3\xad\xdc\xb8\xa4\x3c\x6a\xc6\xe4\x31\x31\x24\x57\xd4\x88\xb4\xf0\x6d\x8e\x69\xe8\x1f\xee\x28\xa6\xf3\x2c\x1e\x92\x84\xb3\x83\x8e\x8c\x69\x2c\x04\xaf\x12\x5f\xde\x91\x02\x58\xb5\x28\xa9\xbd\x6b\xf2\x75\x99\xb3\x89\x42\xb2\xdc\x16\x79\xeb\x5a\x2e\x11\xcc\x60\x1f\xd1\x47\x11\x47\x51\x3c\xbc\x4a\x39\x23\x38\x79\xe4\x40\x48\x11\x15\xe2\x98\x37\x8e\x43\x2c\x14\xf0\x00\x4f\xa7\x47\xe2\x26\x6a\x3e\xa2\xda\x6c\x17\xaf\x42\xb8\x95\x85\x04\x4e\x7c\x00\xa9\x13\x86\x8f\x04\x76\xc3\x49\x26\xa8\x8f\x75\xd6\x67\x18\x1e\x90\xdb\x30\x0e\xda\x10\x05\x56\x01\x8e\x2f\xa1\x2c\x8e\x6a\x12\x70\x1d\x2e\xb5\xb9\x59\x0f\x82\xc4\x86\x7e\xc3\xc0\x44\x15\x15\x94\x95\xc0\x42\x03\x93\x38\xbc\xe6\xb4\x31\x9d\x12\xb0\x96\x4e\xa7\x7e\x1a\x24\xad\x64\x12\x11\xee\xe3\x75\x2f\xd9\xf0\x40\x6b\x12\x4f\x7c\x00\x20\x6d\xa1\x30\xd4\x0e\xd1\x29\xb0\x4e\xc3\x34\x1f\x9a\x98\x1e\x6b\x99\x1d\xcd\x5d\x75\x28\x63\x91\xbf\x39\x40\x42\x38\x3b\x38\xd6\x82\x7a\x50\xad\x08\xa7\x58\x9a\xb8\x40\xf2\x7a\xad\xc2\x2c\x32\xb2\xda\xe4\xbf\x90\xb4\xb0\xa2\xd4\x46\xc3\x2f\xa5\x39\xb9\x76\x30\xba\xb5\x93\x60\x4c\x8d\xeb\xb6\xb3\x62\x1d\xd7\x26\x7e\x5e\xbe\x4d\x9a\x09\x18\x44\xf9\x74\x5a\xc2\x7e\x26\x57\x19\xa4\x90\x18\x89\x97\x07\x18\xfa\xd4\x08\xa0\xce\x4a\xab\x10\x0f\x75\x11\x3d\x07\xb7\xf0\x41\xe2\xe7\x9a\x04\x56\xcc\x1c\xa1\x72\x79\x47\x9b\x13\x9a\x58\xae\xa4\x2d\x38\xc4\x7c\x41\x41\xdd\x1f\xa1\xe6\x49\x61\x91\xf9\xae\x2a\x42\x01\x24\x32\x0d\x12\x21\x61\x4b\x61\xb1\x30\xe5\xea\x22\x02\xd1\x1c\x44\x77\xc4\xb0\x62\xbd\x78\x9e\x16\x8a\x51\xc9\x7b\x8e\x29\x4e\x33\x20\x54\xaf\x7f\x31\x48\xda\x4c\x90\x6d\x3e\xaa\x4f\xb7\x39\x43\x7d\xfe\x98\xa2\xbb\xab\x72\x89\xfa\x0c\xaa\xbc\x96\xda\xa8\x33\xe3\x7a\xb6\x6b\x57\x6f\x4f\x64\xb0\xcc\x1a\x8f\x6b\xa2\xa5\x4e\xed\x42\x76\xd9\xa4\x35\x48\xa3\x48\x7a\xec\x79\x17\x6a\xfb\x84\x8f\x08\xad\x5d\xf0\x80\xf9\xce\x44\xf2\x6e\xca\x6b\xc3\x98\xd7\x2e\x58\x3b\xce\x85\x56\xed\x31\x12\xd6\x0e\xe2\xb4\x36\x88\xd9\x10\x4b\x2f\xfa\x0b\x8a\x6f\xd4\xf4\xd2\x98\x57\xdd\xb6\xd8\x24\x0d\x9d\x88\xae\x25\xa3\x38\x8d\xc2\xcf\x33\x34\x79\x82\x3e\x2a\x88\xf1\x71\xc5\x5a\x7c\x0a\xe5\x5d\x0c\x1a\xe4\x45\x4b\x2a\xf8\xdf\x6c\x06\x27\x88\x25\x2a\xa4\xbb\x3b\xac\x62\x19\x48\x9b\x44\x4b\x7e\x0f\xa5\x57\xa9\x21\x11\xf5\x7c\x85\x8a\xa5\x2b\xb4\x1a\xc9\x5a\xbd\x4f\xab\x90\xb3\x0f\x07\x41\x40\x8c\x8f\xbd\xa8\x47\x54\x43\xba\xed\x9e\x4d\xe3\x81\xf7\x69\x3b\x74\xa4\xbb\xd9\x53\x6b\x34\x0e\x48\xf7\x62\xcf\xd4\xd6\xf1\xc0\x1a\x0b\xe2\x6e\xbb\x07\x69\x10\x8b\x9d\x5f\x1a\x6c\xca\x65\x21\x53\xb5\x2b\xdd\xaa\x0d\x9b\x9b\x62\x1b\x12\x55\xad\x79\x26\x20\x7d\x27\x8b\x47\x2f\x76\x46\x75\xfd\xc2\x73\x82\xd4\x7b\x99\x06\x09\x59\x60\xcb\x79\x26\x18\xeb\xc0\xbf\x98\xeb\x96\x8e\xf6\x2d\xdb\xcd\xf0\xd5\xd9\x90\xc9\x26\x7a\x8e\xba\x9b\xa6\xe7\xdb\x3e\x0b\x90\xea\x50\xb1\x13\xa0\xe3\x73\x99\x15\xda\x2c\x6a\x60\x64\x2c\x6b\xb5\x27\x8a\x04\xb7\x35\x2e\xdb\x87\x2c\x48\x54\x01\xa1\x62\xcc\x32\xd4\x55\x3f\x05\x0a\xbc\x15\xa1\x44\xc5\x48\x7e\x7a\xe0\xe7\xba\x0d\xdb\x60\xe1\x58\xf0\x80\x1b\xa5\x75\x13\x58\x9b\x99\xef\xcc\x7a\xc7\x03\x20\x43\x78\x4d\xed\xce\x14\x46\x8e\x83\xb2\xf2\xc6\xb5\xdb\xb4\xb5\x48\x1d\x66\xa4\x25\xc4\x5d\xb3\x84\x3a\x18\x4e\xe4\xfe\xdd\xe1\x5a\x82\x51\x3f\xfd\x43\xc1\x49\x3a\x6c\x06\xa0\x02\x6c\x89\xcf\x13\x3e\x8a\x53\x19\xfa\xb5\x93\x42\xd1\x50\x87\x42\x16\xc7\xbc\x13\x41\xcd\x38\xae\xc9\xcb\x22\xea\xe5\x02\x9d\xe4\xad\x2b\x14\x8d\xe9\x52\xee\xdf\x83\x03\x9f\x09\x56\x39\x89\x52\x86\x22\xf2\x3c\x0e\x45\xad\x89\x12\xfd\xaa\xc4\xc1\x31\xba\x85\x6f\x68\xf3\x67\xa7\xd2\xe0\xbb\x40\x0a\x5a\xf7\x3e\xed\xad\xf3\x75\xaf\xe3\xcd\xe0\xbc\xf5\x5b\x66\xf2\xf5\xcd\xd9\x22\x29\xd4\xd7\x9b\x8d\x6a\xe8\x11\x94\xe0\xf0\x59\x2d\x7a\x88\x4d\xfe\xb8\xd2\x28\x35\x7b\x17\x8d\xd9\x58\x0e\x89\x74\x42\x2e\x58\x9e\x1c\x3f\xf2\xc2\xd0\x05\x55\x89\xd6\x50\x78\x64\x71\x2d\xa4\x18\x0c\xab\xbf\x0a\xfa\x15\x7f\x3d\x83\x6b\x88\x27\x0c\xf7\x11\xc7\xe1\x33\x79\x99\x30\x10\x83\x67\x7b\x52\xb5\x8f\x55\x75\x56\x5e\x0c\xf4\xe7\x7c\x09\x0a\xe9\x42\x4a\x9d\x19\xba\x2b\x7b\x7a\x43\xbd\x5b\x59\xbe\xeb\x63\x75\xbd\xa0\x44\xa9\xf3\x2f\xbd\x88\x0a\xba\xb4\x27\xef\x33\x69\xd8\x67\x82\x9f\xab\x4b\x4f\x36\xbd\xe5\x6e\x9b\x32\x07\x9f\xc1\x9d\xea\xee\x1b\x37\xf4\x3c\x3f\xe3\xd6\xc2\x61\xb7\xda\x6e\xdb\x5e\xc7\xc9\x9e\x34\x11\xdc\x66\x3a\xf5\x94\x75\xc7\xfc\x32\xd7\x57\xcc\xef\x2a\xde\x24\x98\x1a\xa9\x62\x4d\x60\x9b\x89\x85\xb1\x2e\x73\xd8\xab\x9c\x3b\x1b\x43\xe8\x35\x3d\xd0\x51\x1f\x73\x2b\x38\x44\xc9\x08\x33\x31\x03\xf9\x32\x37\x5b\xa2\xd0\x86\x07\x6c\x00\x6d\xec\x2c\xf0\xb9\x34\x50\x20\x35\x87\x06\xca\x5f\x02\xa1\x58\x78\x60\x06\x27\x71\x28\x57\xdc\x93\x71\x7c\x2b\x9d\x08\xc6\xa4\xe8\xae\xd2\x5e\xc8\x5b\x15\x1c\xcc\x8c\xad\x3b\x58\xbc\x25\x26\x5e\x88\xbc\x92\x4e\x74\xbf\x9e\xcb\x86\xeb\xe6\xc6\x06\xf4\x3c\x00\x20\x5e\xf7\x36\x94\x3e\xed\xad\xab\x52\x19\x4e\x99\x6c\x54\x31\xf1\x47\xa9\x52\x0b\xb8\x58\x4e\x0c\x99\x37\x00\x3e\x87\xd8\x19\x1f\xfb\xda\x54\xf2\x04\xbd\x9e\xee\x86\xa4\xea\x4e\xc4\x69\x70\x12\xb4\xbb\x1e\x78\xce\x4b\x34\x1e\xcc\xd3\x2b\x96\xc3\x33\x9d\xba\xe3\xa8\x2f\x45\xe2\xaa\x89\xb1\x17\x25\x97\xe9\xa7\x5e\x78\x57\xe9\x90\xd0\xea\x75\x56\xd1\xc2\xba\xb7\x81\x65\x01\x65\x20\xac\x52\xb7\x47\x28\xf1\x79\x1e\x93\x6a\x99\x96\x67\x48\x3c\x1b\xa7\x1c\x5f\x43\x93\x65\xd1\x10\x1c\x6a\xdd\xdb\x60\xa2\x58\xb2\x18\x15\x06\x96\x11\xaf\x41\x76\x7b\xd2\x22\x75\xc3\x88\x66\x73\xa6\x3d\xc7\xb9\x70\x56\x83\xc3\xe1\xd4\xe2\xbf\x71\xf5\xda\x33\x4f\x5e\xb9\x71\xf5\x7a\xb7\xb2\x33\x3d\xc9\xf3\xc6\x88\xd0\x39\xe4\x4f\x06\xbe\x27\x3e\x2b\x92\xa8\x9a\x77\x7b\xce\x35\xd1\x9b\xf6\x86\xb7\x8e\xf5\xda\x32\xb1\xec\xab\xeb\xae\x2a\x99\xe7\x20\xbe\xaa\x08\xe8\x4a\x2b\x9a\x9f\x41\x8a\x13\x2e\x56\x4c\x14\xf7\x91\xa8\xd9\xae\x9d\x05\x3d\xaa\xa0\xf4\xca\x7e\x1c\x17\x9b\x75\x4f\x1b\x38\x66\x46\x48\x3b\x72\xd9\xce\x65\x15\x36\x4b\x57\x35\xbb\xee\xa9\x4c\x5e\xb6\xb1\x2d\xc8\xa3\xe6\xd5\x8e\x80\x5a\x87\xcf\x20\xce\x31\xa3\xe6\x8e\xa5\x7d\x94\xa9\x7c\x49\xb3\x9b\x5b\xc5\xd9\x48\xc2\x5c\x7a\x99\x4d\x69\xd9\x2a\x47\x4f\x2a\xad\x44\x0a\xda\x3c\x75\xf4\xec\xf5\x66\x00\xb4\x18\x46\xe1\xd3\x34\x3a\xf0\x01\xcc\x2b\xb2\x9d\xb2\xdf\x84\x39\x0b\x97\x0d\x08\x11\xdb\x9b\x37\x10\x9e\x3c\x5c\x83\x71\x40\x8d\x91\x88\x5c\x8a\xb3\x47\x96\x50\x40\xbb\xa4\x97\x1d\xf4\x68\x45\x18\x35\x1a\x3e\x52\xb5\xf7\x47\x71\x9c\x60\x47\xad\x46\x10\x03\xe9\x91\x34\x97\x29\x20\x79\xf5\x3f\x40\x00\x1a\x01\x7e\x27\x8a\x87\x0a\x2f\xa1\x6b\x43\x04\xa0\x7d\xc4\x88\xcd\x66\xb0\xd8\x46\x05\x4d\xe5\x36\x7a\xa1\x40\xb3\xa4\x1f\x33\xa3\xe4\xe3\xba\xe4\x09\x73\x31\xca\x2e\x44\x56\xb3\xd3\x4a\xfb\xce\x95\xf1\x2e\x19\xa6\x71\x9a\xd4\x54\xa1\x9a\xa4\xc5\x9c\xda\x2f\xd4\x7a\x44\x43\x57\x37\xe7\xd0\xbb\xa0\xed\xd7\x0b\xd0\xc9\x54\xe9\x25\x19\xbd\x0e\xd2\x80\x1d\xa9\x66\xa3\xe9\x77\x9f\xdb\xe8\x3d\x04\x3e\xb1\x01\xbd\x8d\x9d\x4f\x6c\x7a\x79\x83\x40\x35\xbf\xde\x66\xe6\x66\x2f\x8c\xe4\x8c\x18\xa7\x18\x12\xd3\x79\x6b\xd9\x15\x55\x73\x4d\x14\x2c\x2e\x1c\xd6\xdb\x60\x06\xb3\xd9\x2e\x39\x02\x91\x81\x7e\x23\xe5\xea\x53\x9f\x6b\x3d\xf9\xf4\x7f\xd8\xb9\xf6\xf4\x63\x9f\x7d\xf2\xea\xce\xb3\x57\xaf\x3f\xfd\xe4\xe7\xae\x3e\x3b\x9d\xf2\x96\x50\xdc\xe4\x37\x93\xa8\xb7\x18\x48\x02\xbc\xed\x75\xef\x7d\xf7\x4e\xcf\xeb\x78\xdd\x5a\xcf\x5b\xa3\x8e\x08\x65\x04\xd5\x7f\xdb\xde\xf6\x5a\x5e\x27\x3b\x5f\xfe\xb7\xed\x66\x29\x17\x68\x7d\x21\x26\xd4\xf7\x5a\x1e\x80\x6c\x3a\xf5\xb5\x4c\x5e\x1a\x11\x31\x05\xb0\x1f\xd3\x24\x8e\x70\xa3\xa1\x81\x16\xa1\x83\x38\xff\xcb\x27\x30\x6b\x03\x52\xe9\x2f\x02\x6f\xd1\x78\x9f\x3e\x1e\xb3\xd3\x99\xd4\x59\xa5\xa6\x45\x83\x36\x24\x99\xf9\x9c\x5e\x22\x5b\x34\x7b\x39\x8d\x77\x69\x0f\xea\x05\xcc\x19\xa2\x89\xd8\x69\x6f\xc4\xf6\xb4\xe3\xf1\x34\x8a\xa8\x9c\x4f\x18\x83\x35\xb1\xda\x59\x17\xf5\x02\x31\x7b\x76\x59\xc2\x45\x05\xab\xc5\xd9\x92\xae\x8e\x67\x52\xb5\x11\xdb\x09\x24\x81\xdc\x54\x60\x1c\x70\x2b\xf0\x53\x20\xcf\x00\xcc\x4f\x22\x97\x8d\x7c\x7d\xa6\xd1\x40\xca\x72\x21\xfb\xd7\x34\x96\x97\x46\xc3\x2a\x24\x86\xa1\xad\x5b\xab\x8c\x59\x53\x4a\x6d\xd0\x76\x8b\x78\xdd\x64\x84\x08\xe8\xcb\xfc\xac\x72\xeb\x93\xbb\x9e\x21\x6f\x65\x37\x31\x88\x25\xc0\x69\xd8\x1c\xfa\x6e\xe7\x1b\x32\xc9\xc0\xae\xaf\x4a\x69\xa8\x62\x8d\x59\xcb\xa9\x7a\x34\x53\xfe\x57\x6f\x67\x2b\x4d\xb4\xad\x37\x17\xb5\x31\x5a\x23\x1e\xe4\xb3\x19\x58\x23\x2d\x86\xe3\x09\x56\x56\x03\xff\xb0\x42\xef\x97\xe6\x76\x63\x64\x73\x4e\x36\xe2\x05\x27\x1b\x55\xa7\x14\x1f\xc4\xfb\x8a\x87\x8a\xee\x9d\x97\x13\xed\x51\x57\x59\x31\xc6\xda\x60\xbc\x6d\x00\x9f\x83\x0e\x9e\xcd\xaa\x8e\xd0\x85\x78\x5b\xf6\x93\x25\x49\x13\xf5\x39\xd9\xc3\x95\x47\x38\xf9\x32\x6a\x88\x46\x88\x86\x11\x6e\x7e\x31\xc5\xec\xa0\x29\xdf\xe6\x3c\xa2\x80\x20\x8a\x5b\xba\x15\x95\xa3\x78\xfc\x23\x58\x65\x6e\x44\x35\x03\x84\xf1\x5a\xde\x4f\x50\xfb\x0c\xa0\x8f\xaa\x4f\x6e\xe2\x34\x5b\x10\x71\xe7\x05\x4a\x4a\x45\x05\x85\x58\x49\x45\xff\xc9\x7a\x11\xe9\x85\x71\x92\xaa\x62\xef\xcc\x89\xc6\xb4\x64\x50\xa1\x34\x0b\x2a\xc4\x4e\x1e\x54\x88\x95\x83\x0a\xb1\xa3\x82\x0a\xb1\x2c\xa8\x10\x5b\x32\xa8\x10\x3b\x7e\x50\x21\x06\xf2\x3d\x2d\x8c\xd6\xf2\x21\x85\x92\x89\x10\x8b\x3f\xb8\x68\x42\xe9\xb9\x45\x13\xd2\x77\x59\x20\x05\x87\xac\xd1\x58\xe0\x08\xe9\xf8\x88\x30\xe7\x48\x37\xef\xca\xc7\x72\x67\xbb\x99\xcb\x1f\xb3\x67\xba\xfa\x20\x8f\xb5\x8c\x23\xe9\xf3\x98\x6d\xe7\x7e\x29\xf2\xa3\x76\x3f\x2b\xba\x6f\xde\x37\x57\xf9\xc1\x83\x7c\xc8\xed\x78\x3c\xba\x3e\xe0\xe1\x99\xfa\x80\x8f\x56\x3e\xe0\x0b\x7d\xc0\xf7\x8a\x3e\xe0\x7b\xf7\xd3\x07\x7c\x52\xe1\x03\x3e\x71\xe7\xb3\xce\x73\x3e\xe0\x48\x86\x58\xa9\x72\x07\xde\x16\x1c\xb6\xc3\xb3\x6a\xc6\x1f\x9c\x0f\xf8\x9e\x23\x3f\xec\x9d\xa3\x0f\xf8\xd9\x38\x70\x1d\xc0\x21\xdc\x85\x3b\x70\x1f\x5e\x85\xd7\x03\xdf\xf8\x1d\x11\xaa\xbb\xc1\xf6\x48\x1f\xc3\x83\xc0\x27\x1f\x17\xa7\xed\xd0\x38\x6d\xa7\x95\x4e\xdb\xf2\x0d\xd2\x60\xe4\xa7\xc0\x0d\x9c\x69\x9c\xb6\xfb\x8a\xc4\xd3\x85\x4e\xdb\x2c\xef\xb4\x4d\x83\xf6\x16\xbd\xc4\xa5\xde\xc9\xba\xd4\x75\xda\xa6\xce\x75\xbb\xb1\x8f\x03\xe4\x3a\x6d\xa3\x82\xd3\x36\x93\x4e\xdb\x4a\x52\xf6\x60\x0c\xc5\x9a\xc8\x79\x61\xa7\x8e\x13\xcc\x5c\x2f\x6c\xbd\x27\x6c\xf9\x6d\xc8\x32\x27\x07\x65\x4a\x96\x55\x03\xed\x5e\x52\x74\xb0\xd5\x98\xfa\xda\x9a\xa6\x33\x0b\xc1\x52\x0a\xe8\x1a\x69\x0a\x13\x9f\x98\x80\x01\x83\x9c\x1f\xb4\x72\x6d\x11\x9b\x16\x01\x30\x9d\xf9\x00\x38\x1f\x87\x81\xed\xd9\x6e\x20\xb4\xf2\x9d\xe0\xb0\x78\x69\x21\xef\xf5\xe9\xce\xb4\xb3\x1b\xcb\xd3\xe6\x19\xbc\x1a\x1c\xce\xa0\xeb\xe4\xb3\x03\xaa\xc3\x41\x5d\xed\xe2\x5e\xb0\xd3\x95\xb6\x45\x78\xd5\xdd\x23\xeb\x75\xf7\x27\xbc\x5a\xd8\x21\xeb\xf9\x04\xe8\x67\x1b\xe6\xd5\xe9\xf4\xaa\x2b\x21\x08\x11\xe8\x6a\x7e\x03\xbd\x1a\xec\x6a\x71\x15\xb4\x18\xde\xc3\x2c\x51\x50\x98\xf6\xb1\xef\x57\x9f\x8f\xfb\x62\x31\x0b\x01\x11\xcf\x00\xbc\x0a\xe0\xbe\xe3\x4c\x9d\x6b\x4f\x36\x27\xb1\xc9\xa7\x6f\x5f\x2d\xcb\x2d\xfb\x36\x32\x5e\xee\x63\x60\xbc\xfc\x2d\xc7\x2d\xb6\x50\xcd\x9f\x04\x8a\x57\x45\xf7\x94\xf9\x25\x0e\xae\x42\xe2\xfa\x08\x5e\x5f\x5a\xc1\x64\x71\xcc\x9b\x29\x8b\x96\x55\xa6\xad\xaf\xcd\x9a\x7b\x4b\xcf\xbd\xa1\xf7\xd1\x54\xfd\xe2\x0f\x93\x40\x8c\xee\xab\x40\x9c\x7c\x28\x04\xe2\x34\x27\x10\xcf\x09\x08\x70\x42\x81\x38\x5a\x09\xc4\x0b\x05\xe2\xb0\x28\x10\x87\xf7\x53\x20\xee\x57\x08\xc4\xfd\x05\x02\x31\x99\x2f\x10\x0f\x0a\x02\xf1\xe0\x83\x13\x88\x43\x87\xab\xce\x51\xe7\x1e\x60\x81\x78\x04\x27\x70\x0c\xf7\xa0\x14\x8c\x03\x7b\x3a\x5e\x10\x88\x47\x81\xcf\x3e\x2e\x02\x71\x7a\x54\xfc\x09\x06\x49\x10\xcd\x89\x3f\x81\x96\x89\x3f\x51\x10\x88\x93\xa0\xbd\x95\x5c\xe2\x5b\x89\x14\x88\x13\x57\x20\x4e\xac\x40\x1c\xfb\x03\x1f\x07\xc4\x15\x88\xc9\x42\x81\x98\xc2\x41\x51\x20\x5e\x26\x06\x45\xde\x97\x49\x55\x26\x8f\xd6\x3e\xfb\xec\x93\x4a\x8a\x4d\x8a\xb7\xf9\x98\x4c\x83\x4c\x45\x99\x70\xa5\xd8\x49\x26\xc5\x8e\x83\x2e\xef\xc1\xbd\xd3\x49\xb1\xc3\xa2\x14\xbb\x37\x47\x8a\x1d\x0a\x29\x76\x4f\x4b\xb1\xc3\xbc\x14\xeb\xfe\x84\xc3\xa2\x14\x3b\x9c\x2b\xc5\x0e\xa7\xd3\x61\x51\x8a\x1d\xe6\x77\xbd\x61\x30\x3e\xbe\x14\x2b\x56\xa0\x91\x62\x87\x00\x1e\x38\x52\xec\xb0\x20\x63\x0e\xb5\x14\x9b\x4b\xdf\x1e\x96\x85\x8d\x03\x2b\xc5\x0e\x17\x4b\xb1\xc5\x16\xaa\x99\x8a\x40\x71\x28\xba\x67\x0e\x11\x87\x90\xb9\x52\xec\xee\x31\xa4\xd8\x94\x63\x7b\xda\xb1\xe4\x49\x49\xae\xd0\xe2\x1b\x2f\x7a\x63\x83\x64\xcd\x15\x08\x9d\x90\x0b\x1f\x51\xa9\x17\x7d\x98\xa4\xde\xe4\xbe\x4a\xbd\xe9\x87\x42\xea\x8d\x72\x52\xef\x9c\x60\x0a\x27\x94\x7a\xfb\x2b\xa9\x77\xa1\xd4\x3b\x2a\x4a\xbd\xa3\xfb\x29\xf5\x0e\x2a\xa4\xde\xc1\x02\xa9\x37\x9e\x2f\xf5\x86\x05\xa9\x37\xfc\xe0\xa4\x5e\x67\xbc\xfd\xd1\x83\x2d\xf5\x26\x98\x4b\x57\xd6\x67\xe4\x06\x22\xbd\x1d\x72\xfe\x02\x93\x00\xcf\xaa\x85\xe3\x49\xe6\x33\x21\x7f\x5b\x41\x19\xee\xc0\x7d\x21\x12\x57\x0a\xcb\xe3\xc0\xa7\x1f\x17\x61\x39\x32\xc2\x72\x3c\x57\x58\xa6\x41\xdf\x8f\x81\xbb\x1f\x1b\x61\x59\x07\xc9\x89\x8f\x23\x2c\xa7\x41\x7b\x2b\xbd\xc4\xb7\x52\x29\x2c\xa7\xae\xb0\x9c\xf6\xb2\xb8\x89\xa1\x2f\xb8\xb9\x23\x2c\xd3\x85\xc2\x32\x81\x61\x51\x58\x8e\x97\x89\xe1\x61\x29\x58\xe0\x38\x71\xcd\xc6\xd0\xdc\x67\x4c\x2b\xc4\xe5\x54\x89\xcb\x71\x41\x5c\xde\xcb\xc4\xe5\x83\xa0\xcb\x7a\x42\xde\x3d\x8d\xb8\xbc\x53\x14\x97\x87\x73\xc4\xe5\x1d\x21\x2e\x0f\xb5\xb8\xbc\x93\x17\x97\xdd\x9f\x70\xa7\x28\x2e\xef\xcc\x15\x97\x77\xa6\xd3\x9d\xa2\xb8\xbc\x93\xdf\x2e\x77\x82\x83\xe3\x8b\xcb\x62\x0d\x1a\x71\x79\x07\xc0\x5d\x47\x5c\xde\x29\x08\xb3\x3b\x5a\x5c\xce\xa5\x6f\xef\x94\xa5\x94\x5d\x2b\x2e\xef\x2c\x16\x97\x8b\x2d\x54\x73\x23\x81\xe2\x8e\xe8\x9e\x12\x97\x49\xb0\x03\xa9\x2b\x2e\xef\x2f\x2d\x2e\x4b\x5f\x3a\x19\x87\xa5\xc9\xe3\x53\x79\x16\xad\xc4\xe6\x39\x62\xf3\x71\xfd\x84\x92\x0f\x81\x9f\x50\xf2\xb1\xf1\x13\x4a\x3e\xdc\x7e\x42\xc9\xb9\xf9\x09\xa5\x1f\x26\x05\x31\xba\xaf\x0a\x62\xff\x43\xa1\x20\xe6\x54\x04\x7f\x70\xa6\x0a\x62\xb8\x52\x10\x17\x2a\x88\xe3\xa2\x82\x38\xbe\x9f\x0a\xe2\xa8\x42\x41\x1c\x9d\x4c\x41\x9c\x14\x14\xc4\xc9\x07\xa7\x20\x8e\x1d\xf9\x61\xfc\x60\x2b\x88\x15\x9a\x9f\xa3\xe7\xc1\xab\x73\x35\xbd\xbd\x8f\x91\xa6\x37\x30\x9a\x5e\x52\xa9\xe9\x09\xe9\x31\x0e\x42\x3f\x71\x34\xbd\xc4\x6a\x7a\xfa\x96\x58\x72\xe6\x7e\x42\xa9\x3f\xf1\x71\x10\xbb\x9a\x5e\x7c\x84\xa6\x37\x29\x6a\x7a\x09\xf4\xd9\x92\x7e\x42\xea\xb2\x4a\x89\x73\x98\xf0\xc1\x6b\x56\x15\xa1\x95\x32\x2c\x6d\x4d\x84\x9e\x43\xcd\xd5\x8e\x46\xa3\x98\xe2\x9b\xeb\x16\xf3\xdc\x8d\x48\xc0\xac\xaf\x51\xa6\x1d\xdc\x88\xed\x99\x10\xf2\x63\x00\x66\x4a\xf7\xec\xe7\x74\x4f\x06\x20\x95\x69\x90\x02\x98\x14\x74\xcf\x83\x4c\xf7\x1c\x4a\xdd\x73\xf7\x74\xba\xe7\x7e\x51\xf7\xdc\x9d\xa3\x7b\xee\x0b\xdd\x73\x57\xeb\x9e\xfb\x79\xdd\xd3\xfd\x09\xf7\x8b\xba\xe7\xfe\x5c\xdd\x73\x7f\x3a\xdd\x2f\xea\x9e\xfb\xf9\x9d\x78\x3f\x18\x1e\x5f\xf7\x14\x5c\xc1\xe8\x9e\xfb\x00\xee\x38\xba\xe7\x7e\x41\x33\xdc\xd7\xba\x67\x2e\x7d\x7b\xbf\x2c\x00\xed\x58\xdd\x73\x7f\xb1\xee\x59\x6c\xa1\x9a\xd1\x09\x14\xf7\x45\xf7\x8c\xee\xb9\x9f\xd7\x3d\xaf\x2e\xad\x7b\xa6\x2c\x6a\x0e\xe2\xea\x38\x7f\x2b\xad\x73\xa5\x75\xae\xb4\xce\x95\xd6\xb9\xd2\x3a\x57\x5a\xe7\x4a\xeb\x5c\x69\x9d\x2b\xad\x73\xa5\x75\xae\xb4\xce\xfb\xa6\x75\xc2\x62\x10\xce\x4c\x1f\x64\xf9\xeb\x27\x29\x8b\x1e\x8f\x4d\xd0\x66\x06\x91\x4f\xcd\xe5\x93\x95\x2e\xb8\xd2\x05\x8f\xad\x0b\x2e\x88\x54\x70\xae\x21\x1d\x74\xd4\xb1\xae\x11\x4c\x9b\x9b\xbd\x35\xc9\x61\x48\xf2\xff\x09\xac\x94\x6b\x47\xa3\xe1\xfb\xd8\x3e\x97\x01\x80\x9b\x3d\x38\xfc\x62\x96\xb1\xc3\xd5\x8c\x24\x33\x67\x0f\x59\x72\x30\x4e\xe4\xc1\x78\x1e\xb1\x1e\x2c\x03\xa4\xc7\x57\x2f\xc9\x87\x40\xbd\x24\x1f\x1b\xf5\x92\x7c\xb8\xd5\x4b\x72\x6e\xea\x65\xfc\x20\xeb\x54\x67\x23\x12\xa2\x79\x11\xe8\xc5\xfa\x3f\xd7\x18\xf4\x8a\x4f\x05\x5c\xff\x24\x74\x92\x72\xc5\x4e\xcd\x9b\x45\x3b\xae\x41\xda\x84\xe2\xd7\x85\x55\xf8\xb1\xcf\x13\x3e\xca\x7f\x98\xb0\xb8\x8f\x93\x04\x87\xba\x2a\xad\x96\x4b\x05\x08\x22\x68\x6d\xed\x24\xc0\xd0\x47\x46\x60\x32\xb7\x6c\xbd\xe2\x63\x27\xfa\x2d\x29\x25\x1b\x95\xaf\xf4\xea\x4e\x00\xe8\xe3\x20\x97\x50\xbc\xb7\x8b\x21\xd5\x25\x14\xb7\x06\x59\x1c\x7c\x79\x07\x73\x51\xb3\xc5\xaa\x73\x32\xd9\x82\x8a\xdd\xd1\xab\x6e\x21\x77\xfa\x60\x85\x81\xf2\xd8\x8b\x55\x56\x9e\x10\x5b\x9b\x89\xbc\x95\xaf\x49\xc5\xc2\xab\x8a\x1a\x5c\x3a\xb5\x28\xa6\xf8\x00\x4a\x2e\xba\xb3\xe0\x64\x82\x41\xea\x63\xa7\xd7\xa0\x82\x66\xec\x50\x38\xe4\x72\xfc\x91\x70\x0a\xdb\x81\x70\xe9\xaf\x50\x17\x37\xf3\xc6\xdd\x1e\x38\x05\x8c\x1e\x3d\xa7\x03\x4e\x4e\x8b\xff\x8e\xd9\xe3\xe7\xbc\xc5\x53\x45\xfa\x36\x52\x74\x71\x49\xe4\x45\xff\xd2\xea\x03\xa0\x7a\x29\x29\xb1\x3f\xf6\x89\x23\xd9\x23\xf9\xf6\x56\xec\x13\x98\xd8\xe7\x14\x0c\xd3\x41\x4b\x0a\x40\x15\xa2\xc9\xf9\x0a\x83\xb8\xd5\x4f\x19\xc3\x94\x7f\xf6\xd9\x27\xa1\xfd\x21\x5d\x7c\x9f\x42\xe3\x2a\x41\x2e\xe1\x88\x0d\x11\xc7\x4e\x54\xdf\x0d\x81\x2e\x8a\x9a\xe2\x0b\xe6\x79\x41\xee\xd3\xc3\x88\x8c\xc7\x98\x65\xd9\x97\x3d\xc8\x80\xb1\xe4\x59\xae\xfd\xd3\xb9\xd9\xfa\x11\x3d\xce\x58\x85\x20\x2a\x9a\x4f\x1f\x4c\x81\xc4\x35\xc4\xae\x42\x10\xad\x42\x10\x55\x18\x79\xd3\x55\x08\xa2\x65\x9e\xa1\x3d\x30\x1c\x0f\x12\x13\x3a\xf5\x70\x66\x10\x75\x0d\x5d\x74\x8e\xa1\x2b\xee\xe2\x5e\x40\xb5\xa1\x2b\xce\x1b\xba\xdc\x9f\x30\x2e\x1a\xba\xe2\xb9\x86\xae\x78\x3a\x8d\x8b\x86\xae\x38\xcf\x23\xe2\x80\x2d\x63\xe8\x52\xac\x5c\x6b\x5b\xda\xd6\x30\x9d\xb2\x19\x80\xb1\x8c\x59\x63\xe5\xc5\xb8\x60\x86\x8a\xb5\xa1\x2b\x97\xbe\x1d\x97\x59\x33\xb1\x86\xae\x78\xb1\xa1\xab\xd8\xc2\xfc\xdd\x25\x16\xdd\xd3\x51\x56\xce\x48\xf7\x1a\x6a\xfb\xfb\x67\x6e\x5c\x7b\xf2\x11\xc4\x92\x96\x79\x5b\xc1\x3f\x24\x61\xc7\x7b\x66\xf2\x6f\x3f\xf7\xd8\xf3\xff\x31\xf4\xe0\x6e\x14\xf7\x6f\x75\x2e\x1c\xea\x9d\x32\xf1\x3a\x5d\xaf\x81\x38\x67\x42\x9a\x68\x98\x77\x1a\x7b\xd0\x4b\x38\xe2\x58\x19\x09\x3a\xdd\xee\xef\x43\x2f\x24\x7b\x1e\x1c\xa0\x28\xc1\x3d\xd8\xdd\x7c\x18\x6e\xf6\x60\xf7\x61\x91\x1c\x36\x09\x4d\x30\x13\x92\x49\xf7\xe2\xc3\xb0\x0d\xbb\x1e\x93\x81\x7e\x31\xf3\x7a\xbd\x9e\xca\x56\x78\x9c\xdf\x64\x4c\x69\x21\xeb\xbf\xeb\xc1\x6e\x1b\x7a\x37\x6f\xd2\x5a\xcd\x13\x0d\x7d\x0a\x5e\xcc\xb2\xf7\xe3\x54\x48\x38\x32\xa7\xca\x25\xf2\xfc\xfb\x5e\x0f\x7a\x23\x94\x5c\xdd\x43\x91\xd7\x91\x28\xce\x2e\xc0\x31\xe6\xa8\x73\x98\x45\x1a\xee\x2c\x2b\x61\xb5\x46\xbb\x89\x37\x9b\x01\xb8\x3b\xef\x5c\xc3\xf7\x9a\xaa\x84\x97\xbd\x07\xb8\x83\x24\x45\x42\x52\xf8\x9d\xbf\xc0\xf5\x51\x3e\x00\x09\xb3\x0b\x56\x18\xe4\x1e\xd0\x1a\xcd\xb9\x55\xd5\x3f\xc1\xad\xaa\x63\xc4\xe4\x5a\x22\x04\x81\x9a\xc6\xeb\x6a\x5a\x3d\x88\x8a\xa1\xb9\x78\x10\x3b\x87\x1f\x96\x56\xe7\x9c\x7e\xf0\xe0\x70\x9c\x46\x9c\x4c\x22\xdc\x91\x8a\x0e\x62\xc3\xa4\x65\x92\x60\x4c\x1f\x1d\x21\x3a\x74\xbf\x99\xa4\xd9\x9a\x0e\xca\xef\xa0\xd3\x32\xcd\xdd\x90\x64\xe9\x67\xa5\x28\x1a\x63\x28\x07\xdb\x6a\xfa\x74\x2e\x6e\xfa\xe5\xa4\x7c\xd5\x59\xfe\xca\xca\xb3\x8a\xd5\x8a\x5b\xa4\x1c\xe6\x2b\x16\xfb\x91\x4c\x78\x54\x14\x2c\x57\xab\x82\x8b\xf1\xd2\xf9\xce\x40\x28\xad\xf2\x9e\x99\x13\xfb\x19\x05\x07\xbe\x1f\x07\x89\x7b\xe2\x53\x9c\xb2\x2e\xeb\xc1\xd3\x1c\xf9\x00\x78\xe0\xc7\x6e\xfd\xd9\x40\x76\x69\x0f\x66\xdb\xec\xd3\xfb\xd4\xb0\x67\x13\x3e\x3d\x66\x73\x8a\x8a\x9d\xd2\x79\x79\xba\xd0\x82\x3b\x59\x5d\x72\xcc\x36\x9c\xc2\x85\x56\xe2\x5c\x9c\x03\x7d\x08\xb9\x93\x60\x6e\xdf\x63\x30\x2f\x92\xf8\x43\xb8\x5b\xf1\xb2\xee\x7c\xce\x78\x76\x4a\xe7\xc7\x2f\xba\xf3\x87\x47\xe1\x4c\xef\xab\xc2\x19\x7d\x28\x14\xce\xbe\x39\xb0\xd2\x94\xd9\x0f\xaa\xce\x95\xb4\xce\xd3\x68\x18\xe5\x67\x88\xf9\xb6\x03\x97\x5e\x85\x28\xbc\xd0\x6a\x47\x62\xab\x5e\x3a\x1e\x1a\xa1\xc4\x61\x03\xfa\x90\x08\x0a\x65\x47\x0b\x05\x3e\x96\xfe\x37\x60\x0b\x6c\x59\x85\x43\x1d\x38\x91\x81\xf5\xef\x0e\x8e\x62\x2a\x54\x14\x30\x16\x6b\x89\xbf\xfc\x5f\xb5\xc7\x40\x87\x28\x01\x79\xa6\xd4\x66\xc8\xa6\x53\x5c\xb6\x1e\xac\x9c\xaf\x56\xce\x57\xcb\x87\x06\x5e\x39\x5f\xdd\x17\xe7\xab\x85\x9a\x5f\xf2\x64\x7f\xb4\x7b\x70\x63\x73\x8e\xe6\x37\x57\xe1\xfb\x14\xf4\xc8\x20\xa7\xd1\xd1\x10\xb3\x27\xe8\x33\x11\xea\x63\xa1\x81\xa9\x47\x3c\x0e\x0b\xc5\xda\xd0\xb3\x7a\xdb\xa6\xa3\xa4\xf5\xa0\x27\xcf\x19\x30\xc7\x4c\x64\xec\xcd\x4a\x45\x8b\x2d\x6a\x73\xf7\xdc\xa6\xe6\xe4\x87\x9e\x91\xb7\x17\x17\xa5\x4d\x1c\xc9\x94\xaa\x2a\xcc\x27\xa9\x68\x76\xbd\x61\x4a\x42\x0f\x9a\x3f\x14\xdf\xe6\xd7\xc9\x6e\x44\xe8\x50\xf4\xd4\xfb\x64\x3f\x65\x49\xcc\x3a\xed\x4f\x7a\x30\xf7\x43\xb4\xdd\xeb\x55\x8f\x91\xf8\xb7\xdc\x38\xe9\x5a\x96\x1a\xbf\x7c\xa7\xfe\x1d\xf4\x9a\xfd\x08\x23\xb6\x6c\x57\x75\x53\x4b\xf7\x78\xf3\x5c\x7b\x7c\xcc\xac\x67\x60\x10\xb0\x96\x80\xeb\xcb\x58\x02\xe2\x8f\x8d\xa6\x6f\x5d\x1d\x51\x5e\xd3\x8f\x83\xd0\x47\xc0\x15\xf1\xf3\xe7\xcd\xb5\x54\xef\x32\x00\x26\xda\x2f\xb1\x72\xef\x29\x2b\xe6\xc6\x2b\x51\xcd\x01\x4b\x69\x4b\xd0\x64\xc5\xa3\x77\x35\x3c\x47\x89\x56\x5a\xa9\x8f\x95\x36\xaa\xc8\x5f\xea\x40\x8e\xae\x8f\x1c\x5d\x7f\x9f\x44\xd1\x63\xc6\x5e\x55\x52\xa9\x9d\x93\xdd\xbe\x3f\xf6\x91\xab\x87\xe5\x8b\xea\xad\xd9\x3c\x3f\x77\x92\x2e\x64\x2a\xdf\xbc\x4e\x64\x07\xf3\x7a\x59\x2f\xd0\xd7\x9d\xa2\xfa\xc9\xb8\x92\x06\x5f\xb2\x09\x98\x96\xb2\x43\x6f\x77\x37\xa8\x6e\xad\x6e\x8f\xb9\x65\x15\xb9\x22\xd3\x69\x5d\xbd\xdc\xa5\xd1\xf0\x08\x95\x27\xd3\x5e\xae\xc8\x00\x45\xd1\x2e\xea\xdf\x52\x56\x83\xa8\xc2\x6a\x10\x29\xab\x01\xca\x59\x0d\xa4\xd3\x71\x5c\xf0\x12\x2d\xd0\xd3\xca\x59\xf4\x23\xec\x2c\x7a\x7d\xa1\xed\xe3\x2a\xbc\xbe\xc8\xf6\xa1\x19\x7b\xb2\xd1\xac\x32\x7d\x48\x8f\x02\x1c\x36\xc7\x68\x92\x34\x11\x0d\x9b\x09\x2e\x7a\x12\x94\xac\x1f\x96\x1d\x32\x47\xe8\x64\x1f\x55\x8b\x47\xf1\x0d\xcf\x07\x53\xcd\x27\x39\xfd\x95\x9c\xa9\xfe\x1a\xaf\xf4\xd7\x85\xfa\x6b\x5a\xd4\x5f\xd3\xfb\xa9\xbf\xa2\x0a\xfd\x15\x2d\xd0\x5f\xd9\x7c\xfd\x35\x29\xe8\xaf\xc9\x07\xa7\xbf\xe6\xbd\x75\x3e\x80\x73\xe5\x28\xff\xca\xbb\x10\x17\xd4\xac\xd6\x59\xb5\x24\xab\xbd\x7e\x71\x58\xe3\x71\x6d\x88\x79\x6d\xc2\xc8\x1e\xe2\xb8\x36\x20\x38\x0a\x6b\x82\x73\xc4\xb4\x69\x8c\x8e\x59\xa7\x99\xb4\x4d\xb1\xcc\x36\x85\x41\x87\x69\xdb\xd4\x79\xba\xca\x64\x36\xc1\x1a\xaf\x11\x5a\xc3\xdb\x0b\xac\xb9\xda\x0a\x5b\x90\x26\x8a\xb2\x86\x23\x5d\xcc\x40\x07\x77\x79\x2f\x60\x10\x9f\x91\x8d\x20\x0c\xf2\x2e\xb8\xd0\x46\x7e\xe8\x5b\x6f\x59\x1d\xef\xd3\xa3\x68\x8c\x3d\x68\x76\x63\x93\x6a\x95\xc6\xe2\x07\xab\x60\x97\xbe\x98\xe3\xac\xec\x8b\x7d\xe2\xda\x78\xe3\xea\x5a\x8d\x23\xae\xa9\x2b\x30\xc6\x4d\x12\x50\x9b\x08\x1c\xe1\x83\x34\x1a\x44\x15\x31\x8d\x04\x34\x3b\x3e\x83\x23\x79\x4a\xf8\x79\x8c\x6e\x5d\x43\x13\x38\xc9\xfd\x1a\x7f\x5c\xae\xa0\x11\xa3\x97\x0d\xb4\x04\xa4\xe5\xdd\xec\x0e\x1a\x82\x69\x10\xfb\x03\x47\x47\x1b\x14\x4f\x63\x07\xae\xaf\x7b\xe9\x34\xd6\x75\x7d\x67\xf2\xe5\xed\x2d\x72\x89\xc9\xe7\xb6\x69\x97\xb8\xa7\xb1\xc4\x9e\xc6\xe2\x20\x75\x4f\x62\xd3\xc2\x49\x2c\x05\x00\x8e\x04\xf3\xf2\x05\x43\x85\x87\x6e\x3f\x55\xdf\x45\x93\xbc\x75\x43\xc9\x5e\xd7\xd0\x64\x06\xe0\xe4\xb8\x05\x9c\xfb\x6c\x03\x47\xcd\xb3\xda\xce\x82\x88\x99\xfa\x72\xde\x08\x68\x36\x67\xd5\xa0\xfc\x61\xe7\xdc\x53\x61\xf7\x65\x7f\x41\xe2\x3c\xd0\x35\x4e\x4c\x8d\x2e\xa1\xf3\x6d\xde\x69\x3b\x9a\x96\x7b\x4c\x5b\x6e\x42\x31\xa6\x0c\x43\x31\x2a\x18\x8a\xfe\x87\xfa\x63\xd5\x21\xf1\xfc\x2e\x67\x35\x85\x38\xc2\x1c\xbb\xdd\xcd\x6b\xa1\x73\xbb\x0b\x59\xe0\x1f\xa3\xab\x60\x7d\x73\x2d\xcb\xa4\xf0\xd7\xb7\x26\xb3\xe7\xdf\xb5\x46\x8a\xc1\x1a\x6d\x34\xb2\x75\xef\xc2\x3e\xab\xea\xe9\xd1\xb8\x1e\x03\xd5\x35\xd6\x6c\xc2\x33\xc3\x55\x28\xb5\xb4\x78\xd5\x11\xc9\x34\x88\x00\x1c\xe4\x7d\x9e\xc7\x55\x3a\x8b\x10\xd9\x9a\x03\x9a\x45\x42\xd1\x49\xfd\x11\x62\x4d\xc4\x97\xf5\x76\xb6\xcc\x80\xe7\x04\xdd\x25\x6f\x64\xe1\x39\x97\xa5\xaa\xc4\x5d\xa5\x4e\x4c\xa7\x75\x7f\xe1\x95\x2c\x73\xcb\x4a\x31\xa1\x6e\x0f\x52\x21\xfc\x93\xa0\xbe\x09\xcd\x6d\x0d\x29\xcc\x1a\x46\x85\x60\x12\xe0\x8a\x6b\x3f\x5b\x75\x9f\x06\x3e\x0a\x12\x65\x6b\x01\xa0\x15\xc6\x14\xcb\xc7\xfb\x5b\x93\x34\x19\xf9\x48\x49\x12\x00\x0a\x29\x90\x69\x26\x27\xd9\xfe\x96\x68\x12\x6c\x69\xe9\x36\x05\x87\x44\xa0\x10\x07\xe9\x6c\x40\x28\x8a\xa2\x83\x43\x81\x00\x9d\x4e\xd5\xdd\xa1\xa4\xa5\x50\x9e\x4e\x0d\xe4\x03\x9b\x93\x0c\x7c\xa2\xf7\x91\x78\x96\xbd\x3f\x2e\x47\xea\xe4\xb7\xcc\x58\x76\xcb\x8c\x9e\xfc\x96\x19\x2d\xdf\x32\xa3\x47\xdd\x32\xa3\xd9\x2d\x33\xba\xe4\x2d\x33\x7a\xfc\x5b\x66\x14\xe4\x7b\x5a\x1a\xaf\xe5\xef\x99\x49\xc7\xb3\xb4\xcf\x53\x86\x3f\xb8\xcb\x66\xec\xdc\x2e\x9b\xb9\x41\xc0\x7c\x0c\x2f\xca\x27\xea\xbb\xed\x1e\x24\x81\xd5\x55\xe8\xb6\xe7\x75\x28\x8c\x03\xd6\xdd\xec\x65\x07\xc1\x82\x73\x5c\xe1\x7e\x7c\xb2\xf0\xe5\x92\xe2\x1e\x95\x55\x04\xb4\x5a\x2e\x35\xfe\x71\xea\x76\x7c\x4b\x31\x2e\x3f\x67\xbf\x21\xc7\x66\x75\xfd\x38\xc4\x2b\x7e\xb7\xe2\x77\x2b\x7e\xb7\xe2\x77\xc7\xe7\x77\x8f\xc6\x21\x3e\x03\x9e\xa7\xaa\x39\x37\xbe\x27\x58\xde\x24\x26\x94\xaf\x18\xdf\x8a\xf1\xad\x18\xdf\x8a\xf1\x1d\x93\xf1\xc5\x21\x7e\x46\xb0\x8f\xd3\x72\xbe\xac\x9e\x53\xb2\xbe\xb5\xe5\x59\x1f\xed\x9f\x8c\xe7\x9d\x9a\xe3\x3d\x68\x91\x46\x3e\x86\xac\x61\xc5\x18\x96\x65\x0c\xf6\x4c\xdf\xce\x7c\xfb\x88\xe3\x7f\xbc\x1e\xf0\x19\x80\x9e\x77\x2a\x86\x20\x56\xe7\x79\x89\x41\x98\x86\x49\x73\x5f\x06\x5f\x58\x89\x40\x2b\x11\xe8\x23\xc4\xe7\x56\x22\xd0\x49\x44\xa0\x87\x1d\x11\x48\x08\x3c\x52\xee\xb9\xd8\x83\x28\xc8\xae\x02\x37\x1a\x31\x4c\x02\xe5\x34\x41\x1b\x0d\x7d\x31\x3a\x85\x51\x40\x35\x56\x6b\x51\x33\x20\xe6\xc8\x2b\x09\x9a\x9b\xf5\x20\xf0\xd3\x00\x6d\xd3\x16\x8f\x9f\x8c\xf7\x31\x7b\x14\x49\x67\x2a\x42\x43\x7c\xfb\xe9\x81\x4f\xf2\xe9\x30\x02\x1d\x9a\x7d\x84\x11\x00\x8d\x46\x1a\x04\x41\x64\x56\x44\x72\x72\x06\x7b\x95\x86\x89\x8c\x0e\x73\x5e\x2c\xf6\x8b\x29\x8a\x96\x0e\xa3\xb7\x12\xb7\x3e\x5a\x6c\x68\xc5\x84\x8e\xcd\x84\x32\x69\x4b\x4c\x8a\xd9\x69\x2f\x5d\xcc\xbc\xb5\x14\x01\xb1\x56\x32\x22\x03\xee\x3b\xbe\x2e\x78\x0f\xb3\x83\xbc\xf3\xa8\x3d\xb6\x0e\x02\x3a\x03\xa7\x10\xcc\xae\xca\x75\x7c\x5e\x5c\x43\x90\x65\x66\x9c\x3f\x0f\xee\x91\x45\x86\x8c\xe5\xff\xf4\xc3\x1a\x95\x90\x9d\x98\x73\x9e\xb2\xe3\x0f\xc4\xaa\xcd\x98\xb2\x66\xff\xf7\x23\xcc\xa6\xaa\xe1\x04\xc1\x36\x61\x55\xa4\xcd\xed\x1c\x27\xee\x9c\x41\x7c\xcd\x6d\xd5\x37\x73\x49\xf7\x03\x8a\x58\x79\x1f\xb6\x5f\xd7\x07\xd3\x78\x02\xb3\x1c\xcb\xd4\xc5\xf4\xe4\x89\x72\xc6\xb8\xae\xfd\x87\xd4\x17\x28\x77\xab\x93\x73\xc3\xc7\x9d\x8a\x03\x54\xcd\x13\x93\x4a\x9e\x88\x5c\x9e\x98\x1c\x9f\x27\x5a\xc3\xfd\x8a\x29\xae\x98\xe2\x8a\x29\xae\x98\xe2\xc9\x98\xa2\xb1\xbb\x9f\x3d\x57\x34\x35\x9f\x17\x5b\x1c\xf1\x71\xd4\x4c\xd0\xe0\x3c\xa2\x73\x3a\xdd\xe0\x95\xdd\xa8\x94\xbd\x67\xc0\xed\x1c\x3f\x4e\xe7\x08\xed\x47\x69\x88\x4f\xa4\x3f\xaf\xec\x93\x2b\xfb\xe4\x03\x6b\x18\x58\xd9\x27\xcf\xd6\x3e\x59\xdf\xb4\xa5\x1b\x0d\xd2\x68\xf8\x05\x93\xe5\xb6\xb4\x42\x2e\x69\x80\x04\x1d\x9d\xdb\x7e\x07\x00\xa2\x93\xef\x0b\x4f\x68\x2e\x76\x5e\xd6\x03\x89\x76\x33\x1e\xac\xb8\xe6\x8a\x6b\xae\xb8\xe6\x8a\x6b\xce\xe5\x9a\xcd\xa3\xb8\xe6\xd2\x0c\xf3\x0c\x79\xa5\xac\xe6\xbc\x58\x65\x84\x12\xbe\xe2\x97\x2b\x7e\xb9\xe2\x97\x2b\x7e\x79\x1f\xf8\xa5\x60\x2f\x4f\xcc\xe7\x99\xb9\xcf\xa7\xe3\x9b\x4f\x66\x55\x9d\x17\xef\xa4\x31\x5f\x1d\x6f\x7f\xac\xf9\xcb\x8a\xbb\x9c\xe7\xf1\x76\x12\x8f\x71\xb5\x85\xad\x7e\xda\xd3\xed\xa7\x62\x7e\xbe\x07\xdc\x13\x14\x36\x31\x0d\x57\x12\xd7\x4a\xe2\xfa\x48\x71\xc4\x95\xc4\x75\x5a\x89\xab\xfa\xea\x85\x75\x41\x0c\x82\x20\xde\xf6\x6a\x5e\x27\x86\x89\x12\xcb\xd2\xec\x4b\xb2\xdd\xee\x24\x30\x0a\xc8\xba\xe7\x89\x19\xf6\xd1\xba\xe7\x01\x8d\xf4\xe5\xb6\x8e\x1a\x1d\x19\xa6\x9b\x6e\x81\x68\x3d\x40\x6b\x26\xe1\x72\xda\x68\xf8\x51\x10\xb5\x92\x74\x57\x11\xb5\xdf\x86\x29\x00\x66\x41\x44\x27\x67\xb0\xcf\xa0\xf0\x2a\x0d\xcf\x93\xbb\x26\x1c\xb1\xd5\xd5\xb6\x15\x7f\x5d\xf1\xd7\x15\x7f\xfd\x00\xf9\x6b\x80\xd6\xa3\x45\x0c\xd6\x7c\x6a\xa6\xd0\x80\x67\xc5\x70\xaf\x0b\x0e\x78\x5e\x2c\x97\xe1\x09\x5e\x5d\x25\x5e\xf1\xdb\x15\xbf\xfd\xd8\xf2\xdb\xac\x8e\xe5\xae\x13\xe7\x79\x6e\x5b\x72\x5c\xcf\x83\x69\xd0\xde\x4a\x2f\xa1\xad\x74\x7d\x1d\x24\xeb\x01\x59\x3b\xfd\xa5\x97\x67\x25\x73\x3a\x47\x56\x18\xa1\x3e\x6e\xa2\xa8\x10\xff\x77\xc9\x82\xc7\x88\x08\xbc\xe2\x9d\x1f\x16\xde\x49\x4f\xee\x59\x79\x02\x9f\x4a\x97\x77\xba\x6e\x95\x4b\xf2\xce\x13\x39\x58\xe6\x7b\xfa\x61\xe7\x9d\xf4\xdc\x78\x27\xc9\xb9\x6d\xc2\x4f\x01\x48\x02\x2a\xf8\x66\x1c\x50\xc5\x25\xa9\x10\x43\x93\x8c\x59\x22\xc1\x45\x11\x4c\x03\xda\x7d\xb8\x07\xa3\xec\x0c\x26\x6d\x34\x52\xf3\xca\x7b\x1b\xf2\x8c\xfb\x09\xb6\x02\xfc\x2e\x81\x31\x4c\x60\x04\xeb\xed\xde\x29\x8c\xa5\xba\xbe\x2b\x51\x14\x90\x6a\x8e\x1a\x57\x72\x54\xe2\x72\xd4\xf8\x04\x1c\x75\x25\x5d\x7e\x94\x39\xe4\x4a\xba\xfc\x70\x71\xc8\x0f\x4c\x9b\xff\x37\xcb\x48\x96\x6c\x1e\xcf\x64\x15\x3c\x13\xf6\x03\xd6\xfd\x54\x0f\x0e\xb2\xe4\x7e\xa3\xd1\x97\x11\xc9\x63\x7b\x37\x42\x47\xc6\x8e\x45\x72\x34\x9d\x0e\x14\x4e\xa3\xc0\xf3\xd6\x06\x8d\x86\x3f\x5a\x0f\xbc\xa1\x07\x60\xa4\x61\xe2\x01\x18\x06\x2a\x9a\xfb\xf0\xea\xed\x89\x1f\xc3\x91\xd5\xec\x49\x4b\xf3\x34\x3f\x84\xc9\xe9\x79\xf1\x79\x89\xb6\x72\xd1\xad\xd8\xf0\x8a\x0d\xaf\xd8\xf0\xc7\x9e\x0d\x1f\xd7\xa8\xda\xb6\x26\x55\x53\xb7\x63\x57\x25\x9a\x90\x10\xe8\x58\xf0\x54\x8c\xf1\xba\xa8\xe3\xdc\xd8\xe2\x24\x22\x2b\xdb\xe7\x8a\x2d\xae\xd8\xe2\x8a\x2d\x1e\xd7\xee\xe9\x79\x9d\x38\x0b\xac\x28\x39\x89\x8f\x4e\xc3\xf8\x44\x0d\xe7\xc6\xf8\x38\x62\x7c\x15\x42\x6d\xc5\xfe\x56\xec\x6f\xc5\xfe\x4e\x7b\x45\x51\x32\xca\x25\x43\xa4\xb5\x41\x47\x65\xcf\xc2\xa4\xb5\x4f\xe7\x40\x2e\x4f\xcb\xcf\x35\x34\x9a\x75\x02\x58\xb1\xce\x15\xeb\x5c\xb1\xce\x15\xeb\x3c\x63\x85\xda\xfa\x18\x29\xa5\x3a\xfb\x79\x3a\xc5\xda\xd4\x73\x5e\x6c\x92\xc7\xcd\x3e\x1a\xe3\xa8\xd9\x47\xc9\xca\xf6\xb8\x62\x95\x2b\x56\xb9\x62\x95\x9b\xa0\xdb\x36\xd9\xb2\x17\x74\x99\xe0\x95\x0c\x14\x44\x48\xa5\x52\x7b\x35\x0f\xb4\xc6\x68\x32\x27\x76\xb9\x7c\x6e\x7e\x1b\x77\x3c\xcf\x3c\x2c\x89\xcd\x6b\x56\x6d\x51\xe1\x67\x27\x13\x7b\x71\x31\xcb\xa1\x08\x70\x13\x80\x19\x00\xad\x2f\xc4\x84\xfa\xa7\x0a\x7e\x7e\x23\x7e\x54\x30\x3a\xd1\xcc\x39\x32\xd7\x5b\x78\x17\xed\xae\x98\xeb\x8a\xb9\xae\x98\xeb\x8a\xb9\x9e\x82\xb9\x2a\xfe\xd7\x3c\x1d\x03\xfc\x4f\x82\x19\x9d\x33\x03\x8c\x44\x7f\x56\x0c\x70\xc5\x00\x57\x0c\x70\xc5\x00\x8f\xc9\x00\x4f\xc3\xeb\x6c\x35\xe7\xc8\xeb\x26\x28\xe9\xa3\x95\x2a\xbd\x62\x76\x2b\x66\xb7\x62\x76\x67\xa8\x4a\x1b\xb6\xf0\x01\xeb\xcf\xcf\x48\xf6\x76\xce\x3c\x35\xc1\x94\x63\xda\xc7\x2b\xae\xba\xe2\xaa\x2b\xae\xba\xe2\xaa\xc7\xe5\xaa\xc6\x13\x7c\xc3\x7f\xee\x66\xf2\xd0\xcd\xfd\x69\xb7\x55\xdf\xee\x49\x10\x6c\x0c\x61\x65\xc4\xa3\x3c\x4b\x3d\x55\xec\xa3\x1b\xf1\x75\xcd\xc0\xce\x9b\x6f\x52\x74\x6b\xc5\x34\x57\x4c\x73\xc5\x34\x57\x4c\xf3\xf4\x86\xc7\x9d\xd3\x49\x8e\xd7\x05\x33\x3a\x67\x06\xc8\x09\x8f\x56\x0c\x70\xc5\x00\x57\x0c\x70\xc5\x00\x1f\x44\x5d\xbc\x76\x3a\x96\x7a\x43\xb0\xb7\x73\x66\xa9\xa9\xe8\xdb\x8a\xa5\xae\x58\xea\x8a\xa5\xae\x58\xea\x32\x2c\xd5\xd5\xa2\x4f\xc1\xeb\x6c\x35\xe7\xc6\xeb\x18\x19\xaf\x22\x08\xaf\xd8\xdc\x8a\xcd\xad\xd8\xdc\x91\x6c\xce\x5a\x18\x6f\xae\x4f\xbb\x37\x93\x9b\xe9\xe3\x57\x1f\x7f\xfc\xe6\xed\x2b\xed\xde\xfa\x27\x36\x86\xf0\x74\x87\x2e\x8c\x8c\xcf\x31\xb4\xaf\xe4\x7b\xab\xd8\xbe\x2b\xce\xb7\xe2\x7c\x2b\xce\x77\x0c\xce\xf7\x5c\x81\xef\x9d\x05\xdb\x3b\xd7\x00\xbb\x82\xf1\xad\x58\xde\x8a\xe5\xad\x58\xde\x8a\xe5\x2d\xd6\x69\x19\x19\x9f\x4a\x99\x65\x64\x7c\x4a\xa6\xb6\x96\x67\x6a\x62\xf6\x9b\xfb\x48\x8c\x68\xb2\xb1\x9b\x92\x28\xd4\xbf\xaa\xc2\xe3\xba\x99\x2b\x13\x37\x68\x1c\x4f\xdc\x94\x62\xbc\x5c\xc8\xce\xee\xc5\x6f\x97\x65\xb6\xed\xcc\xe0\xfd\x1a\x33\x59\x7c\x0c\x66\x65\x3e\x9e\x43\x58\xde\x51\x3f\xaa\xaf\x1b\xea\x6f\x73\x8c\x28\x1a\x8a\xa1\xa9\xca\xe3\xf6\xba\x32\x43\x7e\x74\xe7\x35\xd3\x1c\xc4\xac\x39\x61\xf1\x98\x24\xa5\x68\xc3\x90\x41\x0a\xc9\x69\x47\x70\x6e\x01\x86\x87\x24\x91\xc8\x1d\x62\x9a\x8e\xd5\x9a\xec\xd4\xdb\x70\x88\x79\xc7\xe1\x04\x7a\xa8\x79\xcb\x14\x98\x2d\xaa\x35\xa5\xc7\xae\x37\x2b\xb2\xb0\xe6\x21\xe6\x9f\x37\xc4\xb8\x64\xcd\x59\x91\x85\x35\xef\x30\x9c\x60\xbe\x74\xad\x2a\xfb\x51\xb8\x3e\x83\x69\x48\xe8\x50\xb5\x7f\x9d\x23\x8e\x8f\x83\x76\xb9\xf4\xc2\xf6\x46\x28\xc9\x95\x58\x7e\x88\x4a\x25\x17\xb6\x73\x03\x27\x7a\x44\x97\x6c\xc0\x2e\xce\x85\xd5\xca\xb5\x72\xac\x7a\xe9\x52\xf5\x8a\x15\xf6\x78\xcc\x9e\xd1\xeb\x6b\xb9\xaa\x89\x53\xf5\x11\xec\xa4\xc4\xff\x4e\x28\x15\x3a\x9b\x92\xd8\x85\xf4\x66\x25\x37\x23\x1d\x8f\x98\x8b\xed\x88\xb6\x32\xfc\x03\xf7\xc7\x74\x5a\xdf\x84\x54\x48\x16\x03\x32\x4c\xd5\xf7\x7a\x1b\x7a\x92\x0d\x78\x44\xc6\xf9\xf0\x69\x6b\x9f\x11\xae\xbf\xcd\x1f\x34\xda\xba\x85\x0f\x20\x05\xb3\x93\xec\x5b\x15\x1b\x15\x0b\x9c\x21\xb6\x1d\xc7\xbe\xd8\xaf\xcb\xf2\x99\x9f\x09\x0e\xf1\xa0\xc6\x01\xa8\x94\x43\x1e\x45\x94\xc6\xbc\x26\xe4\xaf\x1a\xaa\xf5\x23\x94\x24\x35\x94\xd4\x90\x95\xab\x3d\x30\x03\x3e\x1f\x91\x04\x62\x00\xc5\x5f\x29\x69\x05\x7c\x26\x31\x12\x6c\xd5\x3e\x66\x17\x60\xe8\xd3\xa0\x7b\x78\x0b\x1f\x74\xbc\x5d\x3c\x24\xf4\x4a\x72\x40\xfb\x1e\x54\x1d\xab\x58\x33\x23\x92\xcc\x66\x50\x15\xc0\x34\x9c\x97\xdd\xe6\x11\xb4\xf1\x59\xca\x49\x34\xb7\xce\x7a\xdb\x66\x0e\xf1\x6e\x3a\x7c\x82\x0e\xe2\xb9\x99\xbb\x3d\x9b\x59\xf3\xad\x8a\xa6\x7b\xa0\xd1\xe0\x42\x14\x37\x52\x2b\xa4\x00\x12\x99\x06\x09\x80\x78\xe6\xbb\x92\x02\x3b\x82\xce\xe7\x90\xf8\x32\x9b\xe7\xf2\x11\xf4\x8f\xab\x1c\xd1\x8a\x77\x32\x1f\xb4\x97\x38\x3f\x86\xb1\xe6\x4f\xa6\x46\x24\x13\x86\x51\xf8\x31\x09\x32\xff\x51\x67\xf9\x71\xd0\xce\x56\x36\xca\x38\x67\xbc\xbe\x2e\x19\x70\x32\x6f\x4b\x10\xfa\xc2\x79\x6e\x0a\x24\x79\x56\x4b\x9e\x38\x0c\xea\x9b\x3a\x91\xe3\x71\x22\xe7\xf5\x1a\x9a\xb8\x9b\x87\x86\xf1\x6d\x7e\x23\xbe\x85\xa9\x58\x2f\x48\xf6\x87\xc2\x18\x26\x76\xaa\xc5\x86\x12\x9b\x0d\x25\x13\x86\x4b\x4c\xba\x84\xc1\x74\xea\xcb\xb7\x02\x4c\x19\x85\x6c\x25\xaa\x6d\x60\xf7\x80\x85\x5b\x96\xc0\x0e\x07\xc8\xac\x72\xfb\x3e\x56\xa3\x61\x03\x7e\xd9\x8f\xdd\x76\x6f\xdb\xfd\xd1\xc9\x77\xd7\x07\x90\x97\x6b\xda\x74\x8a\x6c\xf6\x3a\x9a\x08\xc8\x40\xa2\x6e\x7b\xe2\x03\x67\x68\x85\xc8\x29\xb8\x6d\x36\x89\x7a\x02\xb3\x9e\xc8\x49\xc4\x61\x6d\x10\xb3\x5a\xe6\x3a\x03\xbd\xda\x6e\xca\x6b\x84\xd7\x48\x52\x43\x91\x60\x18\x07\xb5\x89\x12\x5e\x5b\x1e\x30\x6c\xd6\xd6\xb8\xe6\x6c\xd8\xba\xe9\x04\x8b\x7a\x0e\x87\x98\xd7\x12\x8e\xfa\xb7\x5c\x41\x55\x26\xcc\x60\x84\x76\x71\xd4\xe1\x82\xb6\x8f\xde\xe5\xd5\x86\x53\x5f\xa2\x73\xa6\x8a\x25\xba\x26\xa9\x38\x65\x0c\x53\x1e\xe5\x3b\xe8\xb4\x13\xe2\x08\x73\x2c\x55\xde\xa5\xc5\x0c\x15\x5b\xc3\x19\x0d\xf2\x3c\x3e\x86\xe0\x51\x63\xbe\x53\x58\x66\x4a\x7c\x00\x8e\x94\x46\x9c\x42\xfd\x08\x23\xe6\x03\x25\x9f\x10\x9f\x3a\xf2\x49\x0c\x60\x22\xd3\x60\x52\x92\x4f\x92\xa3\xe4\x93\x83\x09\xce\x94\x7b\x57\xe4\x00\x87\x47\x14\x2d\x29\xe1\x47\xc9\x37\x0b\xcc\x1d\xf7\xc7\xd8\x21\xa8\x9a\x07\x78\xcd\x1a\x3d\xf8\x6c\x4d\x10\x16\xb7\x76\x0f\x4f\xe3\x6e\xd0\x3a\x4a\x6d\x29\xda\x37\x4e\xa6\xb4\xdc\xbf\xbd\xf2\x04\x03\x67\x38\x4d\x6e\xe4\x98\x5a\xef\x92\x7d\x43\x0c\x66\x10\x3b\xb6\x86\x42\x4e\xb3\x9e\x94\x24\x25\xb2\x66\xc6\x83\xa0\xbc\x14\x70\xc0\xec\x0a\x80\x4b\x0a\xac\xfc\x83\x11\x58\x99\x6c\x43\xb7\x34\x57\x52\xe5\x32\xe7\x89\x4c\xde\xda\xc7\xf1\xf8\x86\x6f\x58\x65\xf5\xde\xce\xf5\xa6\x73\x06\xb6\xee\x6d\xd5\x37\xbd\x39\xcd\x3e\x64\x32\xaa\x9c\x12\x2c\x08\x52\xd9\x9d\x72\xc4\x68\x19\xaa\xa2\xd7\xb2\xd5\x48\x9a\x8f\x4b\x36\x9e\x80\x38\x7b\xe5\x35\x34\x59\x73\xe4\x60\x23\x34\x1c\xea\x8d\xa7\xd3\x86\x9a\x6f\x74\x0e\x67\xb3\xec\x0d\xf8\x41\xcc\xae\xa2\xfe\xc8\x71\x77\xd5\xd2\x1a\x6f\xd9\x9d\xc8\x07\xe0\x10\xb7\x74\x45\xeb\xeb\xba\x51\xb1\xb2\xf5\x5e\x23\xb9\xbc\xae\xbe\xcb\x25\x55\xf4\x84\x5c\x25\x14\x62\x20\xb6\x01\x47\x6c\xce\x6c\x3f\x3e\x30\x75\x5e\x6e\xcf\x94\x19\xfc\x06\x4e\x78\xa3\x91\xc1\x96\x21\xa8\x1e\xfb\x7e\x59\xe7\x26\xea\xb6\x56\x05\xab\xbc\xcd\x9b\x63\x8c\x92\x94\x61\xb6\x91\x60\xb6\x47\xfa\x58\xf0\x7d\x27\x79\x59\x9e\x79\x36\xf2\x34\xd7\xb6\xfe\xeb\x0a\x97\x16\xbe\xcd\x31\x0d\xfd\x43\x42\x09\x2f\x6d\xb4\x3b\x49\x3a\xc1\xac\x85\x26\x93\xe8\x40\x49\xbb\x56\x42\xd3\x52\x58\x1f\xd1\x3d\x94\x04\x61\xdc\x97\xc9\xad\x3e\xc3\x88\xe3\xab\x11\x16\xbf\x7c\x4f\x7d\xf6\x4c\x66\x7e\x3b\x70\x4a\x09\x2a\x7b\x34\xa6\x62\x30\x7c\xef\x62\xe8\x81\x19\xdc\x27\x21\x1f\x75\xca\x3b\x56\x59\x56\xac\x94\x3a\x37\x7b\x79\x11\x52\xec\x2a\x76\xa7\x13\xdb\x89\xc6\xa2\x35\x88\x29\x0f\x78\x86\x56\x4b\x4f\xc6\x0d\x81\x0b\x06\x2d\x89\xc7\x0c\x46\x84\xe2\xa4\x93\xdf\x96\x15\xdd\x95\x10\xba\x58\x89\xd0\x45\x17\xa1\x8b\x06\xa1\x12\x26\x2c\xdb\xdd\x04\x73\x53\x4e\xe0\x1b\x37\xe9\x86\x7c\x35\x4c\x37\x01\xe3\xa0\xbd\x15\x5f\x32\x3f\xb7\x62\xa3\xde\xa1\x80\x76\xe3\x9e\xd4\xc1\x3d\xd1\x7a\xa6\x10\x26\x01\x72\x3c\xca\x61\x1a\xb4\x61\x14\xb4\xb7\xa2\x4b\x06\xed\xe6\xe6\x56\x64\xaa\xe9\x07\x95\xa3\x91\x74\xa3\xde\xba\x74\x48\x97\x83\xb2\xe5\xa7\xeb\x41\x1f\x5c\x16\xc3\x49\xd6\xd7\x61\x1a\xf4\x81\x54\x5c\x06\xf3\x8b\xbb\x45\x07\x6e\xd1\x01\xb0\xe7\xac\x64\x06\x07\x84\x8b\x22\xd7\xc9\xf3\xf8\xac\xc7\x1c\x52\x85\x9d\xc4\x43\x72\x70\x48\x82\xdc\x1c\xb4\xc6\xf2\x04\x79\xe3\x66\xb8\xbe\xe1\x1c\xc4\xd5\xae\x21\x3e\x6a\x0d\xa2\x38\x66\xfe\x04\xb1\x04\x3f\x1e\xc5\x88\xfb\x04\x3c\xc4\x37\x84\x92\xeb\x4a\x96\xbc\x62\xfd\xc7\x71\xc4\xc9\x24\xd9\xe8\xc7\xe3\x49\x4c\x05\x4a\x1b\xea\xcb\x24\x9e\xc4\x7b\x73\x4c\x60\x73\x0b\xe9\x2f\xcd\x5d\x54\x3e\xe1\xb9\x2f\xdc\x42\x31\x58\x99\x6c\x39\x85\xc6\xfc\x33\x24\xc4\x8f\xe1\x08\x1d\x74\x2e\xfe\x9b\x36\xdc\xd1\xa8\x7d\x0e\x31\x82\x28\x7f\x54\x68\xcc\x1d\xaf\xd0\xd5\x1d\x92\x5c\x8b\xd3\x04\x3f\x41\x13\x12\xe2\x4e\x7d\x13\x22\x89\x7e\xd2\x39\x1c\x89\x84\x22\xfb\x11\x12\x97\x97\x2f\xe4\xc1\xfa\xa6\x5e\xb6\xa2\x88\x10\xff\x21\x0a\xc3\x1b\x88\x0d\x31\xbf\xba\x87\x29\x7f\x52\xb0\x6a\x2a\xb6\x98\x62\x75\x22\x9f\xc2\xb2\x2a\xbb\xd1\x2b\x51\x18\x3e\xa3\x10\xae\xce\xa5\xda\x53\xf5\x3c\x82\x12\x3c\xbf\x51\xb5\xf7\x49\xb6\xc9\x15\xb1\x89\x6d\x55\x4d\x05\xc1\x89\xef\x71\xd9\x80\x07\x3d\x33\x7a\x1e\x80\x62\xc4\x55\xba\xa0\xd9\x96\xf9\xb2\x56\xc0\xad\x1a\xf7\x1d\x14\x86\xb9\x2f\xbe\xd7\x8f\x48\xff\x96\x07\x73\x3b\xab\x3a\xf3\xb5\xed\xc4\x01\x09\x02\xda\x9a\xc4\x93\x09\x66\x4f\x18\x21\x44\xfd\x84\x48\x7c\x64\x6b\x52\x24\xf0\x3d\x31\xe6\x4f\x53\x0f\x34\x1a\x1e\x8d\x29\x16\xec\xa6\xf4\xa5\xae\x53\x0a\x13\x27\xbe\xc4\x8d\x46\x1d\x09\x81\x4e\x66\x20\xc9\xf5\x51\xbc\x2f\xcb\x60\x33\x9b\x00\x9a\xad\x44\x0d\xf4\x82\xa9\xa8\x1e\xea\xb5\x79\x03\x31\x16\xb8\x60\x2a\xed\x27\xee\x0e\x8e\xe7\x90\x59\x5b\x6e\xe7\x0b\x6b\x8b\x30\xda\xc3\xcb\xd5\xb6\xb9\xb0\xb6\x41\xdc\x4f\x93\x38\xe5\xc5\xba\x2a\xc7\x71\x3a\x55\x63\x1f\x94\xc6\x7e\x3a\xcd\xc6\x31\x37\x7c\xc7\xa4\x51\xdf\x21\xc8\x6a\xb2\x38\xc3\x51\x86\x6e\x99\x8c\x9e\x92\x51\xbc\x6f\xfa\x94\xa7\x16\x91\x22\xbe\x4a\x6a\xe1\x67\x39\x45\xd0\x2d\x53\x1e\xde\x23\x08\x77\x01\x2a\xd5\xf3\x3b\x7f\xa1\x94\xdb\x99\xbf\xdc\x72\x18\xcc\x60\x91\x91\x16\x57\x86\xae\xf8\x31\x9c\x70\x16\x1f\x08\xfd\x0d\x4c\xa7\xbe\x92\x09\x59\x4a\x85\x68\xd6\xc7\x91\xef\x90\x82\x18\xeb\x1b\x64\x8c\x99\x07\x00\xcc\x32\x46\xa8\x28\x0b\x2f\xdd\x1d\x31\x83\x3b\x02\x51\xcd\x46\x25\xf2\xeb\x59\x93\xc5\x1d\xc6\x03\xa0\xb0\xd5\x56\x1d\x32\x2d\xb7\x6b\xe6\xf6\x5b\xfd\xa5\xf5\x85\x8a\xcd\x57\xa8\x6a\xa2\x8f\xc7\xdc\x86\x4b\x6e\x2a\xc5\x63\x81\x95\xd7\xde\x87\xc1\x6b\x8f\x7c\x6c\x0e\xdb\xc8\x47\xc2\x6b\x8f\x3c\x80\x76\xc4\xca\xd3\xac\xc3\x41\x44\x26\x9d\x43\x4c\x45\xff\x43\x91\x15\x4e\x18\x16\xdb\xc5\xd3\x7b\x98\x0d\xa2\x78\xbf\x73\x88\x93\x3e\x9a\xe0\xcf\x13\x3e\x7a\x16\x0f\x30\xc3\xb4\x2f\xeb\x9c\xb9\x07\x61\x38\x4f\xcd\x35\xa9\x59\x4a\x65\x79\x2d\xd9\x27\x62\x59\x51\xdf\x68\x92\x5e\xd3\x03\xca\xbd\x10\x1c\xca\x4b\xb4\x3c\x9e\x78\x1d\x1e\x78\xbb\x31\xe7\xf1\xd8\x5b\xdb\x65\x18\xdd\x5a\x93\x9f\x18\x19\x8e\xb8\xfc\x18\xe1\x01\xcf\x7d\xd2\xb9\xc5\x37\x51\x81\xfb\x49\xe6\x15\x1f\x54\xf1\x99\xb5\x2e\x5b\x8c\x13\xab\xcc\x9b\x31\xc5\x8d\x46\x79\xfd\x6d\xfb\x3c\x90\x7a\xd6\x13\x54\xfa\x44\xb6\x01\xac\x93\xe4\x29\xf4\x94\xcf\x41\xa3\x41\x92\xc7\x09\x25\x1c\xfb\x82\x54\x7d\x1e\xb4\x01\xe8\xf0\x00\x43\xe5\x8b\x91\x6a\xd3\xc6\xa3\x86\x5f\x5b\x95\x45\x1e\xe0\x3d\x85\xc6\x38\xe9\x74\xbd\x4a\x1e\x1e\x4a\x4d\xa6\xad\xfe\x3e\x4d\x1f\x1d\x21\x3a\x94\x7e\x3d\x61\xca\x90\xe8\x40\xa7\x0d\xf1\x60\x80\xfb\xbc\xe3\x25\x91\x14\x18\xe4\xa4\x75\xbc\x91\xd2\x6d\x74\x7d\x5a\xf1\x31\xe2\x13\x44\x8c\xc5\xfb\xf9\xc4\xa6\x4c\xf3\x20\xa1\x14\xb3\xc2\x27\x99\x96\xaf\x4c\xa0\xdd\x51\x1d\x13\x1b\x51\xca\x71\xd8\x0a\xf1\x84\xe1\x3e\xe2\x84\x0e\xaf\x44\x04\x25\x99\xc0\xe6\xea\x5f\x1e\x3c\x24\x61\xc7\x93\x65\x1d\x85\xa5\x55\x9d\x37\xa5\x9c\x44\x1d\xef\x53\xad\x76\xab\xed\xcd\x00\xd4\xbb\xb5\xd0\xd2\x38\xbe\xcd\x95\x1a\x2d\xf5\x36\x39\xfb\x30\x99\xa0\x3e\xa1\xc3\xce\x66\x1b\x2a\x3d\xe2\x89\x50\xe5\x89\xd0\x41\x9c\xf2\x8e\xf5\xd6\x82\xe9\x24\x44\x1c\x3f\x1e\x33\xf5\x5d\x49\x90\x4f\x4f\x94\xe6\xe7\x24\x3d\x1a\x53\x8e\x08\xc5\x4c\x6a\x86\x94\x8c\xe5\xc0\x3f\x66\x26\xe0\x62\xbb\x0d\x63\xaa\x05\x17\x55\x2e\xa6\x42\x46\x30\xf0\xb3\x98\x86\x98\x99\x5f\x02\x7b\x05\xef\x28\x61\x49\xfd\xd0\x70\x7e\x40\x7d\x4f\x4e\xa6\x27\x4f\xf3\x5c\xe9\xc9\x1c\x3e\xea\x2a\x80\x7b\x0a\xa8\xd3\x94\x4d\x35\x27\x3d\xab\xca\x80\x59\x88\x5c\xaf\x3a\x45\x29\x1d\x1c\xb8\x62\xa6\xbb\x8a\xa4\x98\x28\x33\xec\x46\x29\xcb\x2f\x4b\x8c\xc2\x03\xf1\x49\xae\x73\xf5\x41\x8f\x6f\x07\x07\x7c\x66\xc5\x05\x98\xb8\x3d\x70\x25\x0e\x17\xe9\x40\xfa\xba\xed\x28\x21\x5b\x4f\xad\x82\x8f\x3b\x30\xaa\x58\x7e\x60\x54\xda\x89\x07\x46\xa9\x02\xa7\xe9\xa4\x42\x40\x75\x52\x11\x67\xa9\x5f\x86\x66\xf3\x22\x79\x26\x2d\x2b\x84\x6d\x2e\x60\xb9\xd6\xb6\xb5\x75\x0a\x8d\x54\x19\x3a\x1f\x39\x78\x22\xf4\x31\x50\xa7\xdc\x58\xa5\xb5\x26\x88\x61\xca\x9f\x8a\x43\x2c\x84\xd5\x1d\x26\xa9\x53\x17\x78\x22\x2c\x0f\xb4\xf9\xb2\x18\xa3\x2c\x9b\x83\x92\xe7\x9e\xfe\x36\x31\x6f\x6a\xcb\x02\x90\x53\x5b\x6e\xbe\xd4\x78\x11\xbb\xc5\x38\x94\x72\x2f\x37\x3a\x16\x97\x01\x4a\xf8\x6e\x1c\x97\xd0\x28\x1b\xd6\x6b\x2a\xc7\x10\xf3\xa7\xf7\x85\x26\x25\x9d\x18\x5a\x51\x1c\xdf\x4a\x27\xbe\xa7\xed\xe9\x1d\x53\x9f\x3a\xac\x14\xb3\x9f\x46\xa1\xe2\x06\xd2\xbe\x5c\xd5\x61\x53\xa6\x45\x92\xc7\x51\xc2\x1f\x11\xc5\xa1\xb7\x83\xf6\x11\xe1\xf2\xee\xb7\x64\x91\xba\x07\xaa\x2e\x5c\x18\x16\x97\xe4\xd4\xb8\x54\x55\x0a\xa6\xd3\xba\x93\xe5\x88\x06\x54\x0f\x16\x67\x12\xdb\x92\xe1\xe1\x52\xd1\xd4\x5c\xd4\xa4\xe9\x5f\x9a\x41\x3f\x8b\xbf\x98\xe2\xc4\x72\xe7\x9d\x32\x63\x3d\x72\x16\x3c\x21\x32\x0a\x41\xb3\x72\x36\x18\x4e\xe2\x68\x0f\x2b\x97\x12\x55\xa5\xef\x29\x5f\xa2\x0e\xa6\x7b\x84\xc5\x74\x2c\x97\x7d\xcb\xf9\x35\x9d\xaa\xba\x44\xcd\x84\x0e\xb7\xdb\x6a\xed\x94\x90\x13\xc3\x71\xc2\xa3\x89\xc4\x35\x64\xa8\x71\xf2\x60\xb7\x07\x66\x30\x24\xe1\x13\x34\xc1\xcc\x10\xe8\x49\xce\x3d\xe4\x39\x47\xa6\xbf\x8a\x3a\x3f\x2b\xf7\xb9\x2b\x9c\x57\xd8\x1e\x8f\xae\x31\xaf\x22\x6f\x2b\xf6\xaa\xec\x1c\x50\xcc\x5c\x3d\x70\x56\xa0\xdd\x52\x85\x7a\xbd\x84\xd9\x46\x67\xda\x51\xe5\x9e\x91\xdf\x7c\xa0\x19\x96\xb6\x1f\xc0\x7d\x12\x45\x7a\x7b\x3d\xc9\xc0\xac\x95\xd8\x44\x7e\xec\x85\xfe\x5e\x3e\xe8\x3b\xa5\x5f\xd1\xe1\x0c\x0a\xd9\x5e\xe8\x61\xbb\xa8\x7f\x0b\x0a\xf5\xca\x9a\x4f\x71\x4b\x6e\x38\x42\x82\x5a\x63\x2d\x86\xc7\xf1\x5e\xde\x5c\xeb\x53\xa1\xfa\x58\xc3\x5c\x3f\xc2\x88\xa6\x13\x69\xec\xb0\x36\xd5\xe2\xc0\x86\x24\x99\xc4\xf2\xb5\x42\x55\x48\xfc\x16\x6a\xec\x15\xd5\x1f\xcf\x8a\x28\x9e\xcc\x00\xce\xce\x3e\xbd\xbc\xe5\xd9\xcd\xb9\xbc\xe9\xb4\x72\xab\x16\xca\xa6\xb1\x3d\xd9\x93\x98\x2c\x9b\xb1\x43\x99\x03\x96\x9c\xed\x6e\x8d\xca\x0b\x4c\x73\xac\x62\xb4\x60\x95\xe3\xf1\x70\x18\x29\xdb\x65\x27\x6b\x93\x1a\xd2\x3d\xb2\xbc\xb1\x09\x02\x68\x0b\xb3\xb9\x85\x59\xa1\xb0\x35\x9b\x02\xa8\xc5\x30\xd1\xdf\x46\xc3\x18\xd0\xd5\xaf\x85\xf6\x3d\x42\x4b\x76\x46\x8b\xd1\x71\x0d\xbf\x0e\x3a\xf3\x8a\xde\xc2\x07\xa1\x60\x15\xb0\x78\x68\x7e\xf1\xf7\x83\x20\xe0\xad\xfd\x11\xe9\x8f\xca\xb6\x37\x6b\x58\xd2\x6d\x40\xde\x4a\x78\x3c\x79\x62\x3c\xc6\x21\x11\xbc\x81\xc5\x13\x34\x54\x5c\x5c\x7c\xd4\xca\xe9\x63\xda\x3d\x08\xc0\xfa\x66\xce\x48\x3f\x83\x39\x56\x38\x87\xb2\x58\x49\xa6\x2a\x90\x8c\xab\xf1\x78\xf6\x70\x4e\x7e\xca\x54\x28\x0f\xc0\xc4\xf9\x90\x29\x50\xf2\x6c\xb3\xbc\x5a\x73\x0a\x0e\x80\xfd\x20\x93\x93\xf4\x21\xb8\xb2\xe2\xec\xfb\xa9\x7d\xe8\x44\xb6\x56\xf3\x00\xd4\xa0\x07\xe0\x60\x99\x72\x12\x19\x55\x4e\x29\x71\x00\x86\x01\x6b\xc9\x60\x80\x96\xf9\x88\xbd\x81\xec\xa6\x1c\xfb\x9e\xfc\xe0\x29\xa6\x39\x0a\xf2\x3e\x58\x0c\x1e\xf6\xad\x2e\x94\x33\x8b\xba\x5a\x92\x07\xe0\x88\x8f\x23\x21\x0d\xc8\xdb\xd0\x92\x61\x3b\x8b\x50\x1a\x5f\xa1\x6c\xa7\xe3\x5d\x4a\x26\x88\x5e\xbe\xb4\x21\xff\x78\x90\x33\x32\x1c\x62\xd6\xf1\xc6\x88\xa6\x28\xd2\x7a\xea\x75\x1c\xe1\x3e\x8f\x59\xc7\x6b\xcd\xeb\x70\xdf\x74\xb8\xe5\xc9\x9d\x99\x62\xb6\x44\xa9\x41\xae\x94\xb1\xac\x76\x2e\x5c\x0a\xc9\xde\x4d\x5a\x2b\xff\x93\x0a\x7b\xe0\x5d\x30\xf5\x51\x28\x4f\xa0\xf5\xaf\x14\x7a\xb5\xbc\x16\xaf\x54\xf3\x66\x96\xc5\x61\x64\xf2\x93\x07\xe0\x05\xaf\xb2\x29\x16\x47\x38\xb0\x0a\x7b\x65\x96\x84\x1f\x88\x3c\x63\xc4\x86\x84\x76\xda\x5b\x0a\x68\x5e\xb0\xad\x21\xbf\x38\xee\x00\x7a\x9d\x2a\x6c\xb4\x50\x26\xd0\x99\xdc\xde\xaa\x6a\xee\x72\x25\x0a\x62\xa4\xec\xa8\xd8\x7a\x49\x6e\x58\xfa\xf0\x82\x77\xf9\xd2\x46\x48\xf6\x8e\x53\x47\x92\xab\x63\x00\x2f\x78\x35\x12\xba\x19\x16\xc9\xfd\x0b\x5b\x54\x1f\x2e\x80\x82\xc6\x7f\x38\x8e\x43\x32\x20\x62\x1b\x8a\xfc\x18\x16\xe9\x5b\x67\x6b\xd9\x5c\x62\x30\x63\xfa\xa8\xe4\x32\x2e\x7b\xb1\x47\x11\x85\x43\x88\x8a\x1d\x59\x49\xce\x1e\xc4\xf2\x3e\xec\x32\x72\xb8\x3c\x0e\xc2\xad\x45\x1b\xae\xef\x9e\x86\x24\xfd\x11\x0e\xd3\x08\x3f\x4d\xfb\xd8\xf7\xd0\x80\x63\x66\x1b\x85\x38\x2f\x78\x01\x28\x9d\x09\x4b\xcc\x00\x86\xea\xdc\x2e\xa6\x4a\x92\xec\x14\x0f\xad\xae\x2b\xe2\xf1\xc1\x6c\x36\x03\x6b\xac\x25\xe7\x52\xe0\x23\xf0\x2c\x9c\x83\x58\x15\xd0\x9e\x6a\x2f\x3a\xf4\xce\xc9\xca\x1e\x1c\x55\xca\xa4\x7a\xff\xd3\xbb\x1a\xcc\xf5\xa9\x24\xcc\x1c\x71\x8c\xa8\xca\x8a\x6a\xb2\x7e\x2d\x71\x6c\x65\x31\xa9\xcf\x3b\xcc\x32\xbe\x35\x25\xf5\x27\x60\x0a\xba\x62\x54\x8c\xc7\x19\x1a\xe3\x1c\xed\x90\x81\x8f\x2b\x0a\x4a\xbd\xa9\x7c\x24\x57\xc7\x55\xed\x5b\x1f\xdb\xe5\x0e\x52\x21\x0b\x90\x2f\x95\x65\x87\x1c\x6e\x37\x2d\x43\x17\xc4\x4f\x03\xb1\x47\x1f\x44\x78\x8d\xb6\x14\xeb\xb9\x11\x4f\x82\x36\x34\xbf\x9e\x25\xc3\x11\x77\x7e\x3f\x22\xed\xb4\x4e\xc2\x93\x78\x20\xbe\xeb\x5a\xba\x9a\x91\x55\x33\xeb\x3e\x9a\x10\x8e\x22\xf2\x3c\xf6\x19\x00\xbd\xc0\x0d\x37\x59\xe0\x60\xde\xe4\xb6\x27\x6f\x49\x57\x1c\x3b\x9e\xc5\x59\x63\x66\xb0\xb2\x7a\x96\xa0\x97\x51\xbc\x5f\xb0\x44\xcd\x25\x86\xb2\xe9\x22\x54\xe7\x89\x39\x51\xd7\x98\x78\x3d\xb0\x76\x82\x73\xd0\x72\x46\xa1\x49\x47\x98\xe3\xcf\x08\xcc\x6d\x67\xcc\xea\xc1\xdc\xa6\xfb\x1c\x40\xbc\x6d\x92\xaf\x9b\xfa\xad\x25\x49\x35\x69\x75\x4c\xb9\x56\x6c\xe1\xe2\xc5\x01\x1c\x24\x3e\x5e\x8c\xd8\xc8\x45\xc8\xfa\xd6\x15\x8f\x74\x95\x2a\x60\x14\x43\x88\xf5\x55\x81\xa4\x50\x05\xe4\x1a\x23\x8b\x77\x85\xdf\x9e\x28\xb9\x65\x50\x2b\xcc\x82\xb1\xb2\x7b\x00\x4c\xa7\xd6\x6c\xf4\xc5\x14\xb3\x03\x23\x52\x5c\x89\x22\xdf\x91\x2a\x0a\x1c\x4e\x8c\x8e\x07\x80\x56\x18\x1b\x0d\x1f\x07\x6d\x73\x64\x57\xd9\x29\x77\xad\xf3\xe2\xe8\x82\x42\x4f\xb3\xe9\x86\x4c\x70\x3b\x87\x0e\x8f\xe5\x40\x21\x2f\xb0\x2c\x60\x58\x02\x95\x92\xb2\x5e\xcd\x2c\x1c\x86\xaf\xe4\xc9\xea\x11\x99\x33\x04\x15\x47\xf5\xa5\xb5\xa9\x68\xa6\xc0\x22\x2b\x78\xa2\xd0\x0c\xb4\xfe\x90\xb9\x53\x7c\x86\x84\xf2\xd9\x7b\xb5\x75\x26\x2e\xbb\xd4\x69\x15\x5b\xf3\x67\xd4\x59\x0a\x90\xfe\x0b\x8e\x99\xac\x68\x08\xb2\x57\x56\x92\x39\x6b\x4c\xcc\xd2\x0c\xba\x93\x3a\x67\x3f\x39\x9a\x61\xcc\x99\x48\x6e\xcc\x31\x19\x1e\x59\xff\xda\xce\xd2\x5b\x6a\xa8\x8f\x9e\xe3\x8a\x4d\x5d\x4d\x70\xf5\x48\x0a\x4c\xf4\x48\x8a\x91\x50\xea\xf4\x3c\x9e\x6c\xcc\x4c\x8e\x01\xa8\x93\xdf\xdd\x8b\x1a\x67\xa7\xe8\xe5\xa0\xbc\x55\xd9\x74\x5a\xa1\xda\x11\x87\xfa\x76\x09\x0d\x35\x53\x01\x6b\xf3\xad\x43\xca\x67\xe0\xd0\x58\x72\x3a\xc4\x58\xee\x29\xb4\x56\x9c\x0e\x9e\x01\x48\x5b\x25\x65\x18\x43\x22\x50\xce\x8f\xc9\x1c\x76\x24\x5b\x57\xa7\xe8\xfa\xae\x95\x33\x33\x66\x9d\xda\x34\x1c\x36\x1a\xb9\x1b\x96\x45\x3b\x55\xee\x08\x99\x5d\xde\xdc\x66\xcd\xcd\x4e\x5b\x8c\xc0\xe6\x16\xb9\xc4\xb6\x88\x3c\x4e\x26\xcd\xcd\x9e\x63\xc5\x22\xbd\x35\xae\x8d\x68\xca\xc6\x25\x2f\x4c\xc2\xbc\x01\xaa\x52\xd6\x3d\x6a\x5f\xaa\x5c\xc0\xd5\x02\x91\x74\xa9\xb1\xe7\xb3\xd1\xa9\x9d\xad\x0f\x67\xd0\xba\x4a\xdc\xc2\x07\x92\xe5\xd3\x5c\x02\x17\xc3\xd2\xed\x19\x76\xce\x20\x05\x2d\x86\xc3\xb4\x8f\xab\xdf\x6f\x6e\x6e\x4a\x27\x2c\x79\x17\xeb\xe9\x81\x3c\x01\xc6\x8a\x4c\xc4\xc6\x39\x03\xb0\xdb\x03\x30\xd6\xa4\x86\x92\x84\x0c\xa9\x7f\x38\x13\x7c\xdc\x86\x5f\x28\x1b\x1c\x09\x38\x6c\x6e\xd6\x83\x80\xd9\x7a\x09\x68\x34\x64\x12\x75\x92\xb6\xe3\x2e\xe9\x95\xab\xee\x92\x1e\xe4\x5d\xd2\x03\x9d\x52\x89\x46\xc3\x97\x65\xe4\xe7\x99\x50\x5a\x66\x99\x0f\x40\x7a\x02\x87\xa5\x0f\xa1\x6f\xf0\x22\x37\x60\xd3\xab\xa5\x1d\xb9\x96\xf5\xc0\xfa\x40\xee\x4f\x7c\xe6\xc6\xb5\x27\x1f\x41\x2c\x69\x19\x2c\x7d\x79\xd8\x7e\x7b\xb4\xb9\xf9\x9f\x9f\x7f\xfc\x61\x0f\xee\x46\x71\xff\x56\xe7\xc2\xa1\x97\x48\x1f\x96\xc4\xeb\x74\xbd\x86\xae\xd0\xeb\x41\x2f\xe1\x88\x63\xe5\xc2\xd3\xe9\x76\x3f\x05\x3d\x32\xf0\x60\xb7\x7b\xf1\x61\xd8\x86\xdd\x23\xf5\xd3\x5e\xaf\x27\x4f\x05\xe0\x61\xa1\xa2\x36\xf4\x6a\x35\xaf\x07\xbb\xbf\x0f\xbd\x90\xec\x79\x90\xb3\x14\xf7\x60\xf7\xdf\xf5\xa0\xf8\x76\xf3\x26\x15\x1f\x4b\xcd\x55\x9c\x99\xcd\x6f\x23\x2b\xfd\x6f\xe0\xe6\x42\x44\xd4\x3f\xd1\xe2\xe6\xa7\xe0\xa6\x6d\xaf\x27\xaa\xb6\xe8\xf4\xa0\x37\x41\x82\x51\xc9\x60\x33\x9d\x6e\x6f\x76\x64\x65\xd0\x20\xce\xf1\x6d\x81\x28\x1c\xa0\x28\xc1\x0b\xeb\xac\x6a\x46\x20\xae\x0a\xa9\x7a\xff\xfd\xf1\xb0\x12\xe3\x40\x9b\xfa\x44\xd6\x1d\xcd\x9c\x9d\x44\x8e\x63\xb7\xeb\x0d\x53\x12\x7a\xd0\xa3\xf2\x8a\xc3\x6e\x24\xe4\x80\x1e\xec\x7a\x9f\xec\xa7\x2c\x89\x59\xa7\xfd\x49\x4f\xe1\xd3\x5b\xcd\xe9\x39\xce\xa9\x1e\xf2\xaa\x9a\x47\x28\xb9\xba\x87\x22\xaf\x23\x11\x99\x5d\x80\x63\xcc\x91\x34\x5f\xa5\x11\x96\xe2\xc8\x09\x39\x56\x6b\xb4\x9b\x78\xcb\xdf\x1d\x49\x39\x89\x16\x5c\x1b\x39\x7e\xc8\xc8\x7a\x5d\x5e\x86\x12\x9b\xeb\x74\x5a\xaf\x57\x28\x5d\xd8\x68\x55\x85\xc0\x78\x62\xcb\x36\x95\xf8\x75\x36\x9d\xd6\xa9\xd8\xf7\xea\x75\xd6\x22\x89\xf4\x54\x15\xe0\xfc\xea\x84\x7c\xe5\x63\x48\x4f\xf6\xb2\x19\x49\x8c\xe9\x91\x6a\xc7\xf6\x80\xe7\x93\x95\x8d\xeb\x0a\x0d\x9f\x8a\x9d\x4c\xcc\xcd\x74\x35\x4a\xf0\xfe\x08\x33\xec\x5c\xda\x55\xb1\xd1\x94\x83\x9e\x44\x90\x18\x11\xa2\xce\xf4\xd7\x46\x23\xae\x0a\x08\xc7\x52\x3e\x6a\x9a\x98\x9e\xe6\x2f\xca\x07\x70\x87\x95\x99\xd5\xac\xaa\xb4\x7e\x4c\xf7\x30\xe3\xc7\x0a\x70\x93\x77\x63\xc4\x36\xe8\xc7\x25\x2a\x5d\x18\x85\x78\x2b\xc4\x27\x19\x05\x42\x53\x19\xf0\x71\x97\xf5\xb2\x23\x20\xc7\xc1\x11\x77\xb1\xbd\x12\xd6\x3b\xc9\xdc\x20\x1a\xca\x71\x36\x04\x5d\x15\x51\x90\x55\xdd\x90\xac\x1c\x41\xfc\x45\x79\x2a\x71\x7c\x22\xcf\x2e\x55\x77\xdb\x3d\x41\xe0\xdd\x93\x75\x47\x22\x20\xa9\x6b\x51\x87\xf8\xd2\x1d\x1a\x2e\x1d\xd8\xfa\x04\xc8\x0e\x79\xc0\xb4\x70\x52\xf2\x77\x9e\xeb\x58\x2e\x14\xa0\x65\x2e\x84\x57\xdd\xc4\x7b\x80\x9d\xc6\xeb\xb4\xd1\x30\x5e\xe2\x19\xb4\xa4\xbf\xf8\xda\x99\xf9\x3c\x7b\x60\xb6\x96\xe7\x9c\x36\x14\x8f\x8f\xe1\x45\x79\xaf\xb3\xdb\xee\xc1\x38\xa0\xdd\xcd\x5e\xee\x26\x74\x1f\x3f\x95\x0a\x4a\x6a\x34\x7c\x8f\x4a\x28\xbb\xc9\x4f\x1a\x0d\x9f\x04\xea\xbb\x4f\xe4\x51\x77\x21\x47\x2c\xd4\x10\x93\x23\x06\x00\x40\x72\xd9\x55\x44\x4e\xb7\x2e\x87\xfc\x7e\x8a\xdb\x43\x8e\x57\x84\xbc\x22\xe4\xf9\x84\x1c\x9c\x1d\x25\x93\x44\xdd\x3b\x38\xd9\x26\x63\xa8\x83\x07\x6d\xe9\x72\xa4\x37\x5f\x7e\x89\x6d\x71\x67\xf3\x55\x28\x5a\x9a\xed\x72\xbb\xf9\xd6\x37\xd7\x6c\xb8\xbe\x13\x49\x42\xb2\xca\x33\xdc\xa0\x48\xd2\x14\x34\xb1\xf4\x78\x1c\x17\xe9\xd5\xb2\x7e\xe0\x96\xf5\x62\xd2\xf1\x8b\xe6\xd3\x72\x94\xea\x9a\xa1\xef\xab\x82\x72\xd4\xe2\x3b\x0e\xbd\x1d\x47\xc8\x3b\x99\xba\x20\xa5\xb8\xd5\x96\xf2\xe0\xd1\x5e\x5e\x97\xc9\xc8\xeb\x22\x80\x34\x60\x62\x43\x21\x01\x73\x36\x14\x4b\x69\x62\x46\x7d\xa1\x90\x9d\xd9\x4e\x10\xdd\x4f\xd1\x3c\x5a\x89\xe6\x0f\x3a\xf9\x7d\x90\x12\xcd\xa5\xb3\x13\x68\xa2\xfb\x2a\x9a\x47\x2b\xd1\x7c\x45\xc8\x8b\x08\xf9\x0c\x45\x73\x1a\xf3\xe3\xc9\x06\x73\x0d\x40\xf5\x93\x1b\x80\x68\xcc\xe5\x5e\xa3\x3a\x71\x86\x82\x36\x8d\xf9\x03\x61\x1c\x6c\x2f\x34\x0e\x9e\x52\x3f\xa1\x31\x3f\x43\x6b\x60\x5c\x1d\x26\xe9\xc1\x1a\xb1\xb3\x35\xa7\xc6\xec\x0c\xc7\xef\xf6\x79\x0c\xa0\x66\x82\x85\xf1\x69\xf7\x40\xbd\x3c\x6a\x9b\xbd\x13\xd9\xff\x6f\x9f\xc9\xa8\x54\x75\xf4\xfe\x1f\x21\x97\x9d\x51\xb0\x89\x31\x28\x1d\x52\xa0\x47\x92\x1b\x02\xa7\x03\x7d\xe9\x66\x37\x8e\x23\x8c\x68\x76\x37\x9e\xdb\x4b\xb6\x45\xa1\xd8\xec\xbb\xdb\xed\xba\x73\x47\x4f\xd4\xa9\x68\xd0\x03\x9d\x7a\x1d\x57\x1c\x5f\xc8\x3d\x47\xec\x9a\xc9\x46\x3f\x8e\x22\x2c\x31\xac\x22\x15\x27\xa3\x1a\x3e\x9d\x40\x62\xda\xc4\x62\x07\x3b\x8f\xf0\xb5\xd9\xfe\x96\xf5\x91\x41\xcf\xc1\x5c\x79\xf5\xb4\x55\xd8\xd0\x7a\x71\x78\x40\x15\x89\xba\xc5\xa1\x0c\x5b\x6a\x8c\x37\xd4\xcc\xcf\x51\x35\x24\x84\x0e\xd3\x08\x31\x5d\x3e\x7b\x86\x61\xf1\x78\xd3\x01\x61\xca\x4b\xe7\x01\x1e\x71\x48\x4d\xb8\xb0\xdc\x98\x9b\xb1\xce\x25\xa2\x28\x8a\xf7\x1f\x89\x10\xbd\xe5\x81\x6c\xec\x94\x6d\xc0\x8e\x5d\x5d\x46\xf4\xae\xe7\xf5\x39\x0c\xb3\x8a\x84\x6e\x37\x77\xaa\xdc\x31\x3b\xc6\x60\x87\x88\x57\x06\x63\x3e\x7a\x90\x4d\x4e\x86\xbf\x98\x12\x86\x9b\xea\xf0\xf7\x7c\xde\xa6\xd2\xd1\x76\xeb\xb4\x1c\x01\xfc\x5a\x3c\xc6\x94\xff\xc7\xeb\x35\x92\xd4\x34\x6a\xa1\x90\x19\x05\x0e\x7c\x84\x6b\x8f\x21\x8e\x6b\xb6\x77\x2d\xed\x13\x1a\x67\x93\xf8\x79\xc2\x47\x8f\xd9\xeb\x46\x9e\xec\xec\xe3\xb1\x18\x5b\x0f\x7a\xd7\xae\x5d\xab\x3d\x16\xc3\xda\x1f\xfc\xc1\x1f\xfc\x81\x07\x20\xca\x8a\x39\xd1\xeb\x18\xec\x7a\x03\x53\x62\xc2\x70\x9f\x24\x72\x5a\x5c\x32\xe8\x01\x98\x04\xa8\xa5\xb2\xc1\x34\x40\x2d\x9b\x11\x46\x01\x6a\x65\x59\x61\x7f\x6e\x23\xbb\x78\x10\x33\xec\x09\xa2\x7b\x9a\x3d\x62\x7e\xc8\x2b\x16\x3a\xf1\x8a\x84\x7b\x00\x0e\x82\x7e\x4b\x65\x87\x61\xd0\x6f\x65\x05\xe0\x28\xe8\xb7\x64\x11\x38\xd1\x1f\x64\x21\x38\x0e\xb2\x30\xf3\xd1\x11\x44\x9b\xc8\xe9\x18\x07\xc4\xc7\x30\x91\x1e\x9f\x75\x09\x82\x16\x49\x3e\x27\xc6\xda\x9f\x43\xb7\x8a\xfc\x2c\x73\x19\x1f\x95\x7f\x9f\xc5\x74\xf8\x98\xba\xe0\x2b\xc7\x57\x14\x9d\xe1\x28\xc1\x35\xf9\x84\x81\x44\x01\x1c\xb3\xd9\x41\xa3\xe1\x0f\x02\xe2\x0f\x60\x02\xa0\xc4\x41\x0d\x8d\x3f\x80\xa9\x5d\x70\x7a\x4b\x49\xd4\x82\x36\x23\x3f\xd0\x33\x28\x64\x7d\x58\x68\xc4\xe4\x31\xcd\x84\x8d\x86\x1f\x06\xc4\x0f\x6d\x33\xd7\xd1\x18\x9b\x79\xf0\xc3\xb9\x8d\xb9\xb3\x1b\x2e\x68\xd0\xcd\x67\x1a\x1d\x35\x1a\xfe\x28\x20\xfe\xc8\x36\x2a\x67\xd7\x1f\xcd\x6d\x4d\x93\xcf\x68\x41\x43\x3a\x8b\x69\x63\xd2\x68\xf8\x93\x80\xf8\x93\x42\xc7\x54\x4b\x93\x85\xfd\x52\x04\x0a\x27\x47\x74\xeb\x8a\xd3\xa2\x65\x6c\x10\xb7\x64\x40\x1c\x41\x0f\x3a\xd6\x32\x15\x02\x15\x73\x0a\x8f\x63\x75\x57\x64\xad\x18\x0f\xe9\x98\x81\x53\x1b\x0d\xf7\x97\x09\xc6\x4d\xe3\x7d\x4f\xf9\x8a\x14\x97\xc7\x36\xf5\x41\xc7\x24\x3e\x15\x53\xec\x73\x91\x26\x18\x95\x40\x57\x10\x69\xc7\x30\xc8\x59\xf9\x05\x41\x97\x43\x27\x86\xe1\x96\xb9\x74\x81\xf7\x9e\x78\x87\xbc\x4f\x5c\x9a\xc3\x18\xa2\xb9\x9c\x5a\x8e\x4e\xf3\x31\xc4\xd1\x5c\x5e\x7d\x5d\xe5\x2d\xf3\xeb\x24\x20\x3e\x02\x30\x0d\x92\xd6\x04\xf1\x11\x8c\x82\x44\xbe\xae\xe2\xf0\x4a\x3f\x86\x29\xc8\xed\xa8\x72\x1a\xfa\xa0\xd1\xe8\xbb\x0f\x9d\xd0\x96\x6c\x23\x69\x34\xfa\xf2\x59\x89\xc8\xe1\x19\x2e\x25\x85\x89\xf2\x42\x83\xdc\xd9\x92\xfb\x2d\x39\x9e\xc9\xe3\x31\xf3\x23\x00\xbd\x08\x25\x5c\x8f\xdd\x18\x27\x09\x92\x77\x38\x72\x14\x2b\xb8\x38\xe2\xa3\x2b\x34\xfc\x4f\xf8\xc0\xa5\x5a\x97\xe4\xd5\x34\x86\x88\xa3\x02\xe5\x66\x77\xa8\x74\xfc\xaa\x96\x0e\x8c\x3a\x89\x27\xbe\x75\xee\xe5\xca\x98\xa3\xf6\xae\xc4\x03\xf0\x50\x0c\x52\x87\x67\x57\x4d\xe1\x2d\x7c\xd0\x61\xb3\xc5\xb2\x01\xbe\xdd\x8f\xd2\xe4\x81\x96\xc2\x2a\x64\x30\x0a\x3d\x42\xbd\xcc\xfb\x39\xbf\x6d\x52\xd8\xf5\x98\xbc\x5b\x53\xdc\x8e\x51\x10\xb7\xe4\x17\x41\x33\xb1\xb3\x01\x1f\xb1\xf7\x11\xed\x22\x4d\xac\xc3\xf3\x3c\x69\xd8\x19\x4f\x81\xb9\x28\x8c\x1a\x8d\x8b\x41\x10\x20\xe3\x53\x76\xa8\x88\x9b\xf9\x08\x5e\x94\xe4\xdd\x6d\xf7\x04\x71\x77\x37\x7b\x99\x50\x29\xb4\x1e\xd9\x8c\x3d\x47\xd5\x29\xa9\x15\x2e\xe7\x66\x89\x40\xa3\x91\x5e\x12\x1a\x16\xbe\x14\x44\x4b\xe1\x39\xb3\xe4\x5b\x7c\x69\x6e\x65\xe5\xfc\xa0\xad\x9c\x0b\xd7\xaf\x91\x41\x1f\x88\xc5\xcb\xb0\xd4\x04\xaf\xde\x9e\x30\x9c\x08\xe2\x4a\xf4\x94\x56\x2f\x6c\xeb\x74\x58\xb5\x88\x89\x58\xc4\x78\x88\x6f\x7b\xd0\x13\x74\xed\x89\x25\xbf\x87\x59\x32\x67\x55\x8b\xac\x30\x09\x62\xb9\x08\x60\x1a\xc4\x2d\x9d\x1d\x46\x81\xdd\xed\xd3\x46\x23\x3d\xce\xd2\x4f\x54\xc4\x66\xda\x4d\x7a\x8d\x86\x8f\x02\x01\x80\x35\x0f\x8f\x11\x89\x84\x50\x90\xc8\xd4\x20\xa0\x2d\x99\x24\x7f\x95\x4d\x1d\xfa\x6b\x2b\x89\x53\xd6\xc7\x90\x55\xf6\x17\xc3\xae\xea\xd6\x53\x31\xbd\x11\x85\x1e\xf4\xc6\x44\x00\x4f\x2a\x1b\x46\x0f\x40\x12\xb0\x96\x93\x03\xc6\x01\x6b\xb9\x79\xd6\x72\x7b\x60\x2c\x23\x25\x17\x4d\xd7\x32\x6e\x20\xb7\x2f\xc8\x7b\x5d\xd4\x7c\xbe\xdd\xfc\xf7\x3d\x7f\xbb\xa3\xc1\x66\xef\x21\x93\x08\xb6\x3f\xe1\x41\x9b\xe5\xd0\x5b\x8f\xd7\x3d\x38\x9b\x9b\x15\x80\x35\x22\x1d\x6b\x9d\xfa\x3f\x9d\xe5\x9e\xd7\xc6\xcd\x9b\x2d\xe0\xc1\x25\x73\x6e\x83\x6c\xaf\x95\xcb\xeb\x59\x3c\xbc\x7a\x7b\xe2\x73\xe8\x11\x0f\xcc\xa4\xc1\x3e\x93\x3f\x09\x34\x24\x84\x80\x12\x13\x98\x20\x60\x19\xeb\xde\x03\xd3\x29\x2a\xcd\xbd\x8e\x83\x8f\x00\xa8\x07\x73\x58\x67\x32\x9d\x0a\x4a\x14\x8b\x49\xf0\x4e\xe2\x6c\xfd\xb9\xab\x87\x7d\x44\x9f\xa0\x7b\xf1\x2d\x2c\x0d\xaa\x15\x4b\xe3\x50\x52\x45\x67\xe3\x39\xdd\xc3\xfa\xef\x7d\xe2\x93\x8d\x0b\x0f\xad\xdf\xdc\x08\xb6\x9f\xdb\xf9\xaf\x87\xd3\xd9\x7f\x6b\xf6\xd6\xfd\xed\xce\xcd\xd6\xc2\x1c\xe0\xa1\x65\xc6\xae\x05\xd6\x8f\x9a\xec\x0d\x02\x27\xa3\x98\xe2\xce\xc6\x73\x7e\xf7\xe6\x7a\x6f\x7b\xf3\x66\xf2\x50\xb7\x79\x73\xe3\x66\xab\xb7\x7d\x33\x79\x08\x6c\xfb\x37\x7d\xff\x66\x78\xf8\xf0\x0c\xdc\x04\x53\x0d\x81\x7c\x26\xf3\xbd\x94\xf8\x29\x99\xe8\xfb\xdd\xdb\xff\xb9\x37\xed\xe2\xab\x3d\x01\x74\xf9\x8d\xde\x76\x57\xe4\x9a\xca\x4b\x34\x62\x64\x64\xb6\xee\xef\x3d\x74\x33\xec\xad\x03\xf0\xd0\x27\x36\x60\xca\xa2\xce\x86\xbf\xdd\xf1\xbb\x57\x9a\xff\x05\x35\x9f\xef\xad\x83\x8e\x40\x66\xe3\xb0\x0d\x1f\x9e\x01\xd1\x85\x2b\xcd\xff\x22\x7a\xa1\xc1\xa6\x80\x1f\xf2\x6f\xb6\xba\x37\xf7\xc5\x08\xad\xfb\xdd\x9b\xfb\x2d\xf8\xe9\xed\xe7\x82\x4f\x36\xd0\x78\xb2\xd5\xb9\xb9\xf1\xdf\xd6\x7f\xaf\x79\x38\xeb\x3d\xd4\xbd\xb9\x9f\xa5\xdb\x64\xb0\xbd\xbd\xb1\x98\xf3\x12\xba\x92\x9c\x96\x94\x9c\x82\x65\x24\x27\x67\x3c\x4f\x28\x39\xd5\xcf\x44\x76\x02\xd3\x69\x7a\x19\x4f\xa7\xf8\xf2\x1c\xd1\xa9\x80\xe8\x4a\x74\xfa\x90\x8a\x4e\x73\x5f\xb0\x5f\x6c\xed\x3c\xfd\x4a\xd5\x38\xe0\x92\xa8\xc0\xaa\x75\x44\x07\x67\x6f\x1d\xbb\x8f\xe5\x94\xae\xe3\x92\x40\x11\x19\xbd\xbc\xb9\x4d\xd5\x55\xdc\x38\xd8\xdc\x8a\x2f\x51\xf9\x60\x0e\xe9\xc6\xf9\xab\xb8\xb1\x73\x30\x9e\xbb\x91\x4b\x8e\x18\x3c\x7d\xb4\xf2\xc0\xb2\xbe\xf2\x61\x49\xc1\xae\x6a\x24\xa9\x02\xab\x83\x02\x97\x47\x30\xdf\xc7\x98\x5e\xd3\xda\x3d\xf4\x48\xa2\xe4\x31\xf1\x3f\xba\xad\x84\x31\x6a\x85\x31\x6c\xd7\x9f\x60\x74\xd3\x29\x81\xc8\x7c\x55\xd6\xdd\x24\xa0\xad\x52\xb5\x30\x0d\x68\x8b\x24\x30\x0a\xa8\x10\xe3\x60\x5f\xfc\x45\xb7\x33\x15\x50\x0b\x72\x19\x43\xad\x0b\xf1\xad\xc8\x8b\xac\x20\xc2\x0c\xcb\x9c\xcf\x8f\xd5\x43\x45\x95\x47\x64\x65\x23\x8a\x60\x96\x69\x3d\x08\x06\x0b\xac\xb4\x5a\x38\xb5\xad\x27\xce\xb9\x93\xac\x44\xa8\xa2\x65\xdb\x8c\x3f\xb8\x14\x4d\xa7\x83\xcb\xfd\x39\x5b\xc1\xae\x1a\x28\xc7\x68\x5c\xaa\x34\xba\x3c\x07\x2f\x1e\xc7\xd7\x47\x31\xe3\xf3\x0a\x4b\xdb\xd0\xa5\xf9\x85\x9f\x8c\xe9\xf0\x58\xa7\x2b\xda\x06\x94\x9c\xc3\x29\xea\xe1\x8e\x14\x67\x3b\x1b\x37\x0f\xfd\x9b\xfb\xeb\xe0\xe6\x6c\x63\x08\xf5\xc7\xc7\x70\xd2\x67\x44\x46\x8f\xea\x78\x37\x46\x24\xa9\x0d\x08\x16\x7a\xc4\x10\xbb\xdf\x1e\x8f\xd9\x12\xaf\xda\x2e\x7b\xe5\x7d\xad\x18\xa7\x56\xf4\x23\xcc\x5a\x13\x42\x76\xf6\x4d\x46\x41\xf0\xca\xf8\x7a\x60\x26\xb0\xd4\xeb\x22\x87\xe1\xe9\x6f\xe5\xe7\x9e\xae\x55\xda\xb2\x6e\xc8\x2f\x60\x86\xd5\x13\x22\xb9\x3c\x67\x89\x09\x64\x01\xd6\xd8\xe4\x57\x38\x13\xaa\x9a\x8e\x05\x6f\x55\x35\x26\x37\xe4\xa0\x38\x7a\x66\xc1\x03\x00\x99\x55\xb3\x8a\x99\x14\x99\x78\x20\xc7\x67\x59\x39\xaa\xb0\x7c\x26\x5a\x3d\x96\xd3\xef\xe3\x09\xc7\x61\xc7\x3b\x74\xa6\x6f\xa6\x9e\x23\xd8\xc5\x35\xf3\xdd\x83\xf2\x5c\x60\x6e\x36\xf1\xb1\x76\x28\xff\xcc\x3c\xa8\x4e\x47\xe6\x65\x56\x5f\x6b\x87\xea\xaf\xc8\x2e\x98\x65\x31\x77\x1f\xd1\x0b\x2a\xbb\xe2\xcf\xd9\x81\xf5\x5c\x24\x6a\xee\xa1\xb6\x7b\x6a\x5a\x2c\x11\xc6\x38\x11\xb5\x4b\xa5\xaf\x76\x18\xd3\x99\x07\x65\xe8\xb1\xb9\x35\x2b\x29\x44\x1f\x2d\x49\xf5\xed\x88\xac\x32\x53\x0d\x85\xa1\x50\xfb\x44\x99\x09\x3f\x98\xdb\x45\x7d\x05\x41\x7a\x7f\xdd\x88\xe7\x55\x2d\x3f\x0b\x09\xe8\x90\x24\x33\x15\x88\x7f\x6e\xd6\x3d\xc9\x45\x8d\xad\xaf\x98\x4d\x9a\xe4\x13\xcc\xf6\xc4\xc4\x0e\x65\x88\x39\x76\x63\x84\xe6\x56\xa7\xb3\xd4\xf8\x08\xd1\xda\xe1\x90\xcf\x72\xa5\x9e\x66\x57\x17\x23\x9e\x2b\x1e\x33\xa7\x23\x43\x2e\xe6\xdf\x0a\xd6\x15\x78\xd2\x98\xd7\xe4\xf7\x10\x87\x42\x46\xe6\x23\x5c\x8b\x48\xc2\x45\x29\x39\xd2\x15\x65\xec\xe6\x18\xe1\x24\x59\xd4\x2f\xf1\x5d\x77\x2a\x12\x9d\x32\xf9\x8f\xec\x51\x56\x30\xd7\x9d\x48\x76\x87\xc6\xfc\x0a\x7d\x82\x72\x3c\x5c\xb0\x60\x68\x8d\xa8\x1c\x2a\xbf\xf2\x2a\x9c\x4f\x54\xda\xa0\x03\xe3\x70\xee\x52\x8d\xc3\xd0\x83\xf6\x3c\x6d\x6e\x2e\x89\xb2\x5e\xaf\x36\xf7\x4c\x95\x7c\x64\xe1\xba\x55\x45\xcd\xea\xcd\xf2\x8b\xc2\x7c\xb4\x98\x82\x64\x06\x3d\xd4\x72\x8b\x9b\x79\xda\xe6\x70\xc4\x3a\x92\x99\x6c\xf7\x27\x71\x42\x38\xd9\x9b\x5b\xca\x7c\xf7\xe0\x38\x8d\x38\x99\x44\xf8\xe9\xc1\xfc\x16\x4c\x9e\x5a\x3c\xa8\x1d\x66\x05\x04\x6a\x62\x79\x50\x3e\x97\x83\x29\x96\x64\x3c\x60\xe6\xae\xeb\x3c\x47\xd2\x42\x46\x05\xc1\xf2\x38\xae\x45\x31\x1d\xd6\xfc\x31\xba\x4d\xc6\xe9\x58\x24\x1e\x8e\xd1\xed\x59\xad\x3f\x42\x0c\xf5\x39\x66\x09\x90\x35\x48\x19\x67\x4e\x15\x89\xf8\x56\xf3\xc7\x84\x66\x75\x10\x5a\xa8\x43\xcb\x58\xf3\x99\xb3\xfc\xac\x4b\x22\x1a\x96\xf0\xf0\xa4\x59\xe6\x88\x69\x4b\x59\xe4\xc1\xc2\x81\xfe\xbc\x32\x7a\x55\xab\xfd\x57\xce\x85\x02\x67\xba\x06\x25\x6c\x56\xf5\x79\x84\x6b\x32\x47\x4d\xed\xc8\x35\x5f\xc5\x7e\x10\x95\x0a\x1e\x99\xeb\xf8\x62\x61\xce\x10\xd8\xd9\xab\x35\x85\x40\x02\x65\xdb\xb7\xcf\x84\x04\x82\x02\x62\x0e\x9e\x89\x7c\xdd\x08\x37\x1a\xa8\x1e\x04\xf1\x76\x51\x35\x54\x9c\xc9\x83\x04\x32\xd0\xf1\x22\x6e\x32\x5f\x2e\xe7\x35\xfc\x2c\xcb\x8c\x6d\xee\xb9\x99\x2d\xf3\x33\xa5\x86\xb6\x89\x4b\xe5\x26\x9c\x7d\x20\xcb\x6f\x5b\xb9\xb4\x28\x7f\xa9\x21\xbb\x7a\x4d\xe9\x76\xb1\x74\xb6\xbe\x55\x09\xc1\xf3\x74\xe6\x4f\x5e\x0c\x82\x52\x7e\xc9\x13\x55\x56\xb9\x25\xda\xbc\xf5\x72\x5e\xb5\x67\xca\xcc\x75\xdf\xcb\xd8\x81\x2e\x54\xa7\x3e\xda\x88\x01\x28\xa9\x62\x4e\x4e\x59\x3a\x0b\x1d\x41\x33\x07\x51\x63\x91\xcf\x9e\xfc\x71\x9e\xf5\xc1\xa0\xd1\x70\x1e\x5c\x95\xc6\x29\x7c\x9a\xa7\x97\xaa\xce\x5a\xb4\xdf\xba\x24\x35\x37\x3a\x15\x01\x30\x99\x7b\x10\x93\x53\x90\x4b\x9a\xb3\x8a\x9d\x29\x0f\x68\xd4\x56\xd6\x53\xa7\xf6\x8e\x06\x1c\x99\x9f\x52\x5d\xee\x67\xea\x72\x34\x9d\x46\x70\x60\xbe\xaa\x9a\x60\x18\x24\x2d\x5d\x97\x50\xe0\xfa\x99\x4e\x5b\xd0\x88\xa5\x89\x31\x3d\xc2\x04\x39\xe7\x63\x61\xfa\xb2\xdd\x57\x5b\xf5\x2b\x1f\x48\x6b\x34\xea\x73\x54\xc7\xaa\xf2\x75\x57\x7b\x98\x4f\x00\xfa\x89\x27\x0c\x66\x7e\x7c\x0c\xec\x42\x49\x8c\x8b\x4a\x18\xe9\x43\x97\x31\x76\xa3\x51\xd0\xde\x1a\x5d\x32\x56\xd5\xad\x91\x79\x02\x79\x12\x30\x1f\x75\x47\x3d\x48\x60\x9c\xf7\xc2\xb5\x5a\xc9\xc4\x98\x24\x27\xb3\xe5\xb4\x63\xb5\x83\xf6\x4f\xe9\x7f\x58\xca\x99\xd2\x7d\x86\x26\xcd\x09\x8b\x6f\x1f\x9c\x93\xa3\x4b\xd9\x98\x5e\x30\x9c\x67\x5d\xf5\xc8\x90\xc6\x0c\x5b\xe3\x79\x1c\x90\x96\xf9\x2a\x38\x7c\xcb\xf9\x0e\x93\x82\x3b\x13\x16\x8b\x07\x6d\x1b\xaa\x7d\x46\x89\x20\x7e\x02\x3a\xf5\x3c\x25\x27\x99\xbf\x6f\xdc\x68\xd4\xd3\x39\xb6\x14\xb5\x6a\x8d\x49\x5d\xfa\xf6\xc6\x8d\xc6\x9c\xdc\x5a\xe0\xd1\xf9\x97\x9b\x62\x35\x23\x24\x11\xb3\x31\x26\xe7\x12\x91\xac\xbc\xae\xea\x7e\x1d\x4f\xa7\x32\x7a\x8d\xc7\x47\x98\x7a\x00\xcc\x72\x11\xcb\xec\x71\xdc\x12\x7d\xc9\x51\xd7\x29\x6e\xe1\x68\xa4\x7c\xec\xfa\x22\x29\x74\x54\xe7\x9f\x11\x2d\x4c\xa7\x15\xdf\xa5\x19\x57\x7e\x3e\x59\xb0\xa0\xe2\x48\xd5\xb0\x9f\x19\x00\xb8\xcf\xc0\x36\xf6\x0b\x7e\xe4\x2a\x44\x16\x00\x1d\x36\x93\xd7\x87\x65\xeb\x55\xa1\x99\x96\x58\xb7\xe7\x48\x01\x62\xc1\x67\x71\x99\x0e\x05\xa3\xea\x60\xa8\x0a\x71\xd8\x57\x2f\xec\x77\x18\xd4\x76\xba\x0e\xcd\x7b\x44\x91\xbd\x83\x66\x3f\x0e\xf1\x98\x08\xcc\xdd\xc8\x55\xf9\x2f\x27\xa3\x83\xaa\xd3\x9f\x42\xf8\x04\x9d\x6e\xce\xb8\xb6\xf8\xa5\x2c\xa0\xc2\xfa\x3a\x60\x5d\xde\x0b\x70\x97\x67\x86\x7a\x73\x60\x92\x7b\x16\xf3\x34\x34\x32\xef\xdd\x40\x8e\x86\x2a\xce\x97\x18\x41\xc4\x30\xf2\xa0\x18\x8f\x6b\x72\x3c\x8c\xe3\x23\x95\xcd\xea\xb7\xa8\x7c\x70\x16\xaf\x0b\xed\x64\xad\x38\xa1\x68\xb3\x44\x0f\xc8\x5e\xdf\xc0\xb7\xf9\x15\x86\xdd\xd7\x07\x9c\xe7\xc1\x60\x29\xd5\x06\xd5\x4e\x30\x4f\x27\x8f\xda\xea\x64\x30\xd5\xcf\x20\x1a\x46\xf2\xc5\x70\x15\x95\x19\x66\x71\xa0\x4d\x70\xfb\xcf\x89\xb1\x53\xb1\xe9\x43\x15\x63\x55\x3d\x7c\xa4\x1f\xde\x3b\x7e\x3f\x55\x14\xf8\x0c\x11\x1d\xfb\xdf\x9f\xf3\x59\xb6\xef\x83\x19\x24\xc9\xe7\x48\x42\x76\x23\xfc\x18\x09\xf5\x53\x8d\x6a\x32\xe2\x5d\x69\xcc\x61\xbe\x67\xb3\xe4\x9f\x56\x51\x88\xed\x23\xf3\x35\xf7\xaa\x52\x56\xc6\x1e\x93\x96\x63\xfb\x33\x1d\xd6\x3f\x1b\x1e\x15\x69\x57\x16\x25\x11\xe1\x07\xf2\x06\xd2\xfc\x31\x2b\x3c\x5c\x97\xb5\x13\x8b\xfa\x9d\x51\xc7\x34\x2c\x97\x56\xce\x95\x7a\x24\xa0\x7c\xba\x15\x2e\x98\xce\x39\x51\x7b\x8b\xd1\x79\x21\xd3\xa1\x79\x1d\xca\x6b\xe9\x4d\x5f\x61\x23\xc4\x4e\xaf\xfc\x42\x94\x1e\x87\xf2\x10\xbb\xf5\x0c\x06\xb2\x22\x69\x67\xad\xee\x95\x4b\x3b\x86\x39\x94\xad\xf2\x19\xaf\x00\x90\x06\xed\x2d\x7a\x09\x6f\x51\xc9\x21\xa8\x7b\xa4\x47\x7b\x6b\x76\x00\x55\xf5\x2e\x0d\x76\xbd\x3d\xa7\x79\xcf\x46\xa3\x95\x6f\xe2\x02\x13\x37\x39\x9b\xcd\xea\x28\xd2\x25\x82\x59\xab\xa0\x2c\x6c\x1f\x23\xc8\x92\x03\x0c\xed\x6b\x5c\xce\x18\x31\x3c\x60\x38\x19\xc9\x08\xf7\xd5\xab\xa2\x40\x36\xa5\x1a\x86\x98\xab\x8c\x3e\x06\xee\x6b\x45\x4e\x96\x24\xcb\x22\xe9\x66\xce\xf2\x5b\xd4\xe3\x58\x65\xf1\xc0\x1a\x6e\x34\xf2\xc1\x7e\x2b\x62\xed\x1a\x3c\xab\x1b\xf2\x39\x94\x21\x71\x74\xe4\xef\x0a\x84\x24\xa1\x2c\x42\x47\x4e\xa5\x40\xc6\xac\xe3\xc2\x88\xe8\x75\x52\x3d\x16\xea\x23\x9e\x4e\x3d\xef\xf4\xaf\x9f\x95\x18\x77\x8b\xc7\x96\x3f\xbb\xbc\x38\xc7\xc5\x53\xca\xe4\xb3\x79\x59\x18\xf0\x6a\x5e\x2e\x76\xeb\x08\x73\x5c\x2b\xb6\x32\x9b\x81\x05\x7b\xb9\xde\x94\x92\x0d\x91\xd6\x2c\x6f\xe3\xd0\x73\xb6\xf7\xe3\x5c\xf6\xfc\x10\xed\xea\xd7\xd5\x18\xd8\x3d\xfd\x84\xaf\x09\xee\x18\x01\x35\x31\x46\x03\xf5\xee\x95\x7c\x71\x1a\xcc\xa0\xbb\x1f\x77\x2a\x0f\x9d\x64\x35\xa5\xe9\xc6\x99\xf6\x91\xdf\xd3\x99\x60\x05\xa6\xd1\xe2\x91\xa0\x5b\x65\x86\x59\x17\xf7\x66\xb0\xd8\xc2\xa2\x77\x52\xdd\x92\x01\x87\x7c\x06\x13\x32\xa4\x28\xea\xe4\xb5\x3e\x33\xb1\xa4\xcc\x91\x63\x3d\xcf\xe4\xf2\xc5\x6d\xd2\xbc\xd8\x69\x03\x88\x82\x8b\x5b\xe8\x12\xd9\x42\xeb\xeb\x20\xee\xa2\xe6\x45\x97\x37\xa3\xde\x5a\xd6\x5f\xd5\x98\x19\x75\xfb\x5e\x70\x17\x43\x9a\x05\x09\x97\x01\x06\x66\xb0\xbc\x52\x72\x03\x92\x5b\x1e\xb9\x01\xc9\x2f\x10\xf5\x38\x71\x73\x97\xd0\xe6\x04\xf5\x6f\x61\xb6\xb1\x4b\x0a\xfe\x6b\xe5\x2c\x98\x72\x76\x70\xac\x38\xab\x12\x8f\x7d\x12\xf2\x51\xc0\xa7\xd3\xb6\x7e\x33\x52\x29\x18\x01\x9e\x55\xdd\x9c\xae\xe5\x68\xb2\xc2\x03\xe8\x5a\x9a\xf0\x27\xc6\x13\xcd\x9b\x6a\xde\x3a\x06\xb3\xd3\x2c\x0f\x0e\xb1\x72\x68\x93\xf5\x07\xc5\xed\xc5\x60\xf0\xac\xcd\xe2\x7b\xcf\x98\x20\xb9\xd6\x64\xbd\x4f\xf8\x88\xd0\x4e\xad\xdb\x96\x26\x72\x6f\x1d\xaf\x7b\xa0\xb6\x9b\xf2\xda\x3e\x4a\x04\x92\x62\x9f\x71\x9f\xce\x57\xcf\xbc\x5f\x29\x46\x11\xb1\xf7\xe6\x79\x2f\x9f\x5f\x19\x3a\x63\x1a\x30\x63\xf4\x8c\xa9\x07\x72\x59\x06\x51\x9a\x8c\xc4\x77\x09\x14\x3e\x8e\xb0\x7c\x1d\x87\xf9\x9e\x82\x0a\x9f\x49\xf2\x1f\x18\x09\x03\x29\x30\x0a\xa8\xf0\x59\x51\x79\xe0\x4c\x8d\xbb\x7e\xf4\x84\xea\x5c\x79\xbc\xc7\xe8\xb6\x8e\xb9\xfc\xf4\x60\x90\xe0\x62\x7f\x9d\x77\x14\x15\x5e\x7e\x16\xb5\x5e\x5a\x40\xc7\xe8\xb6\xcf\x9a\x1c\xb6\x0b\xe3\xb7\xa7\xc4\x88\xeb\x1c\x31\x4e\xe8\xf0\x09\x1a\xe2\xdb\x02\xfd\xaa\xf4\x42\x67\x94\xe1\x4d\xcb\x21\x9f\x97\x13\x27\x4a\x56\x24\x57\x8e\xe1\x15\xae\x1a\x9b\xc7\x87\xf4\x68\x74\x71\x4f\x17\xc8\x23\x2e\x57\xc3\x31\xea\x90\xf9\x67\x8b\xd7\xae\x5a\x98\x1f\x84\xae\xed\xcc\x5c\x80\xa1\xbb\xdc\xd5\x0f\x4b\xb6\x87\xb7\x3b\x0c\x1e\x14\x75\xee\x72\x57\x06\xe4\x36\x0e\x9b\x43\x41\x82\x47\x70\x23\xc1\xb0\x8e\x71\xd2\x22\xa5\x7e\xc5\x17\xb5\x40\xf1\x79\x17\x51\x93\xf8\x19\xbd\x4e\xa0\xb3\x1f\x7e\xa2\x1f\x53\xe5\x62\x28\x8d\xf1\xa7\x61\x36\x0c\xb2\x8c\x16\x0a\x3b\x68\xb6\x21\xd8\x1c\xc0\xcd\x5e\x81\x4d\xf6\xf4\x40\x2e\xa3\xe2\x04\xce\x6a\x9d\xe5\x3e\xeb\xc5\x5e\x26\x3e\xdf\x3d\x74\xd8\xc8\x66\x53\x93\xab\xdf\x06\x60\x3a\xdd\x04\x97\x37\xf3\xf5\x55\xae\xc5\xa2\xc2\x85\x03\xb5\x9e\x89\x4c\x11\x55\x17\x59\x83\x54\xbf\x80\xbe\x23\xe7\x60\xc2\xe7\x62\x92\xe3\x14\x39\xb4\x73\x4b\x55\xe4\x7e\x88\xe6\x71\xae\x62\x02\x65\xf2\x56\xbb\xbd\xac\xb1\xaa\x93\xba\x6f\x30\x5e\x0e\x5d\x88\x54\x55\x8a\x4f\xfa\xf6\x15\xcf\x22\xb2\x30\x55\xf5\xf5\x31\x89\x7c\xb6\x91\x80\x87\xe2\x35\xda\x68\xf8\xe9\x7a\x10\xab\xf1\x89\x02\xd4\x24\x25\x3e\x69\x07\x38\x85\x11\x90\x1c\x93\x1d\xc9\x78\x0a\x92\x90\xbb\x34\xf2\xc5\xe7\x30\xbf\xea\xf2\x9f\xd1\x8c\x8f\x55\xed\x60\x73\x77\x00\x33\x2e\x5b\x7e\x3b\x08\x02\x36\x9d\xe2\xcb\x0c\x34\x1a\xd9\xe6\x2c\x4f\x46\x97\x23\x10\xec\x12\xc8\xe1\xed\x0e\xfe\x24\x7d\xa8\x2a\xd7\xb4\x0d\x0f\x3a\x39\xfa\xa1\xe0\xa1\x8a\x59\x11\x42\x46\xc5\x78\xe4\x16\x91\x7c\x23\xb8\x70\xd1\x06\x83\x4a\x21\x46\x95\xae\x85\x78\x82\x69\x98\xd4\x62\x7d\xe2\x4d\x58\xc2\x6b\x46\x4a\xac\xc5\x83\xda\x9e\x21\xd0\x90\x8f\x7c\x55\x37\xf0\x4c\x10\xd1\xdc\xa0\xad\x91\x81\x1c\x36\x1b\x1e\xc5\xbc\x4e\x92\x27\x8f\x45\x8b\x1b\x6e\x66\x57\x6a\x58\xc0\x2e\xb7\xb7\x59\x67\x13\x66\xa4\xc8\x37\x58\xe5\xd8\xb4\xc1\x11\x4c\x3d\x19\xe1\x68\xd0\x94\xbd\x5b\x86\xab\x2f\x29\x7b\x56\x1c\xf0\xb8\x27\xad\x99\x75\xa0\x82\x89\x43\x6e\xf4\x19\x43\x96\x57\x29\x67\x04\x27\x41\xf7\x44\x71\x8a\x0c\x7f\xa7\x90\x1e\x8f\xbf\xd3\x65\xf9\x3b\x5d\xcc\xc0\xd5\xd3\xe8\xb8\xd1\xb0\x26\x00\x39\xb9\xc6\xf2\x22\x77\x04\x31\xc5\xce\x16\xed\x38\x90\x17\x68\x09\xb2\xa0\xbd\xc5\x2e\x71\x13\xf2\x49\xaf\x6d\x31\x05\x57\xb8\xcf\x80\x5d\xcb\xad\xdb\x97\xdb\xd9\x11\xab\x09\x99\x35\xcb\x21\x5b\xb1\x50\x4e\x86\xec\x72\x44\x6f\x03\x58\x41\x1a\xb4\x21\x09\xda\x30\x0e\x78\x73\x73\x2b\xbe\x1c\xb4\x1b\x8d\xba\x4f\x2e\xfb\x9a\xdd\xd8\x0e\xc5\xc0\xe9\xd1\x01\xd8\x8a\x9b\x4d\x40\x2f\x31\x8d\x79\xa3\xe1\xd3\xc0\xfc\x50\x97\xef\xb2\xcc\xf6\x85\xa5\x75\x9a\xef\x75\x61\x0b\xce\x3f\xbd\x55\x24\xba\x35\x23\x3b\x5f\x96\xa6\x32\x23\x6e\x63\x90\xaf\x73\xb9\x3d\x8b\x2f\x3d\xa6\x5c\x8d\xe9\xd1\x1b\x5c\xce\x75\x76\xa7\x02\x0d\x9f\xc8\xb6\xf3\xe8\x9a\xf1\x2d\x8d\x02\x35\xef\x5a\x5b\x7a\x8b\x1d\x8c\xd7\xf0\xe5\x80\x34\x1a\xf2\x3c\x32\x63\xfd\xc0\x27\x86\xf7\x23\x98\xc0\x14\x46\xb0\x5f\x3d\x98\x46\x25\x1f\x04\x6d\x18\x06\xf2\xe0\x1f\x5f\xea\x83\x5c\x17\x0a\x45\xba\xb8\x27\xe9\x46\x90\x52\x7f\xdb\x47\x41\x1b\x26\x41\x1b\x74\x7c\x14\xf4\x9b\x9b\x30\x0c\x7c\x5a\xdd\x56\x17\xf5\xdc\xc5\xb0\x4e\x55\x17\xe0\x20\xa0\x9a\x60\xa4\xcb\x7f\x46\x2f\x10\xad\xaf\x03\x18\x05\x68\x2b\xba\x84\xd7\x37\xb7\x22\x73\xe4\x3e\xaa\x12\x05\x22\x00\x27\x41\x99\x53\x47\x40\x88\x03\x93\xf5\xf0\x72\xbc\xed\xe7\xeb\x5f\xb7\xed\xa6\xaa\xfb\x70\x10\x8c\x40\x27\x0d\x42\x38\xba\xac\x42\x9f\x8c\xec\x8b\xe3\xa5\xde\x44\x3d\xf9\x88\x9b\x3d\x83\xf6\x07\x70\x02\x53\x98\x00\x18\x06\xe9\xba\x39\xe9\xaf\x15\x48\xbd\x8a\x20\x4a\xe2\x9f\x9e\x77\x18\x43\x35\xba\xf9\xf9\x17\xc8\x46\x41\x7b\x2d\x0a\xf0\xe5\x76\xa3\x81\x2f\x25\xdb\xf9\x25\x8a\xdd\x15\xda\xc9\x56\x79\x3f\xc0\x5b\xfd\x4b\xc9\x56\x5f\x31\xaa\x34\x08\x02\x9f\x64\xd3\x65\x8a\xf7\x9d\x15\x0e\x5a\x07\xd3\xa9\x9f\x06\xa4\x75\xd0\x8c\x20\x6b\x34\xea\x2a\x8e\xa3\x19\x39\x00\x60\x7a\x89\x03\xb4\xbe\xbe\x86\xa3\x04\xcb\x80\x16\x0c\xec\x32\x8c\x6e\xad\xb1\xa0\xbe\x09\xf9\x7a\xb6\xa7\xc6\xd0\x16\x5b\xdf\x14\x93\x6b\xc6\x08\xe5\xc7\xa8\x4a\xf8\xc9\xc2\x54\xe6\x58\x9a\x39\x8e\x0f\x82\x80\x0a\x11\x48\xbe\x2c\x53\x5c\x0c\x14\x0a\xdd\x60\xe9\x95\xce\xcc\x6e\x57\x31\x9e\x79\x44\x97\x92\xe5\xe5\x92\x0a\xda\x19\xd3\x55\x0c\x9d\x37\x1a\xc7\x61\x3e\x70\x69\x95\xc0\xde\x73\x32\x8c\x43\xdb\x0a\x2c\xe3\xb0\x84\x84\x82\x18\x26\x01\xd9\xda\x52\x63\x9b\x06\xc9\x06\x12\x1c\x80\x0a\xc2\x40\x59\x7b\x39\x59\x28\x05\x30\x6e\x6e\x66\x71\x6b\x90\x96\xb1\xf3\x43\x86\x00\xec\x07\x91\x1d\x36\x55\x2b\x82\x7e\x12\xf4\x5b\x07\xeb\x91\x21\x83\xcb\x3a\x88\xe2\x56\x72\x59\x1e\x7c\x88\x3c\xcd\xcd\x7a\xd0\x6c\x22\xb0\x05\x92\xc0\xef\x07\x7e\xb9\xea\x1c\x79\xda\xca\xec\xfd\xe6\x99\x7c\xd8\x36\x08\x12\x53\xf7\xa5\x00\x6f\x09\x12\x85\x27\xab\x10\x99\xcb\x76\xcd\xcd\x9c\xe8\xc6\x63\x46\xc8\x06\x0a\xd1\x84\xcb\x07\x7c\x26\x93\x88\xf4\x4b\xb1\xd9\xee\x43\x3c\x7c\xd7\x17\xc2\x9a\xa8\xe3\x09\xce\x9d\x88\x39\xb7\xbd\x55\xfe\x67\xaf\x7f\xee\x99\xd6\x33\xca\xd9\xc4\xf7\x2b\x0d\x87\x5a\xde\xbe\x31\xc2\xb5\x1b\xa2\x73\x35\xdd\x39\x65\xb9\x23\xc6\x8e\x58\xfb\xaf\xa2\xb1\xff\x5a\x1b\xc4\xac\x86\x6a\x89\xba\x99\x5d\xe3\xb1\x74\x55\x9e\x60\x8a\x43\x4f\x9d\xdb\x0d\x30\xef\x8f\xce\x0d\x29\xd9\x5a\x35\x56\xf2\x93\x45\xab\x1f\xc5\x09\x3e\x37\xb4\x64\x6b\xd5\x68\xc9\x4f\x1a\xab\xf9\x2f\x7b\x29\x3a\xdb\x8d\x63\x9e\x70\x86\x26\x1b\x2c\x4e\xb9\xf4\x1c\x74\x95\x03\x95\x49\x7f\x72\x69\xb1\x29\xd2\x70\x73\x4c\x6e\x4b\x65\xa1\x90\x2f\xe5\x23\x4c\xb9\xc8\x8a\xc3\xca\x9c\x11\xd9\xdd\xe8\xc7\x94\x23\x42\x31\x6b\x4a\xc7\x95\xb2\x62\x21\x24\xa9\xfb\xe3\x3b\x16\x8b\x42\x12\xaf\x4e\x6e\x7d\x65\xde\x57\x6b\xd9\x41\x43\x7b\x8b\x5c\xa2\xe6\xbc\x88\x18\x61\x01\x05\xb4\x4b\x7a\x6b\x4e\x4d\xde\x3a\x72\x5c\xc7\x66\x33\x2d\xd8\x09\xbe\x9c\x29\x45\xb1\x8a\xd2\xa4\xeb\x50\xfe\x66\xb4\x15\xc5\xf1\xad\x74\x02\xd4\x9d\xdb\x64\x3b\x69\x31\x2c\x28\xde\x8f\xa5\xfc\xe3\x64\x79\x1c\x09\x95\xe4\x00\x64\xad\xee\xa2\x84\xf4\x3d\x00\xc9\x74\xea\x93\x00\x99\x85\x9b\x21\x22\xc3\x7b\x51\x7b\xda\x23\x1b\x81\x04\x80\x0a\xa6\x93\x11\x83\x26\xa8\x2a\x62\xb0\x07\x79\xf2\x67\xd3\xe4\x3c\xd7\x7b\xa4\x9e\x46\xa2\xe3\xad\xb3\x35\x6c\xfb\xe6\x53\x67\x06\x21\xd6\xfe\x30\x3e\xd5\xa8\x7b\xd0\x96\x53\xbf\x9d\x3c\x6a\x34\x3d\x49\x74\x4e\xaa\xa0\x51\x16\x47\x91\x7c\xd4\x59\xbe\x8c\xbb\x60\xd0\x74\x23\xe5\x21\x9b\xb0\x78\x8f\x84\x32\x32\x3a\xa1\xb7\x70\xd8\x24\xb4\x19\x8b\x45\x72\xb1\x22\xcb\x30\x8e\x87\x11\x5e\xf2\x7b\x73\x17\x23\x26\x83\x0f\x2e\x93\xad\xb9\x57\x55\xe1\x00\xf5\xf1\x6e\x1c\xdf\x6a\xf6\x63\x4a\x71\x9f\x2f\xca\x52\xc0\xaa\x7a\x97\x2a\x15\xe7\xfb\x84\x73\xcc\x54\xe9\xcd\x2a\x64\x09\x1f\xa5\xbb\xf3\xfb\x8c\x9e\x4f\x19\x6e\xa2\x70\x7e\x0e\x41\x68\x13\xbc\xa0\x0b\x38\x1c\xc7\x61\x5c\xca\x90\xa7\xe6\x72\xf2\x24\x9e\xa4\x93\x72\x32\x19\x30\x34\xae\x88\xbd\x09\xb5\x7c\x6d\xd4\x23\x38\x80\x21\x1c\xc1\x09\x1c\xdf\x1f\x7f\x4b\x87\xf6\x0b\xb4\x0d\x47\xee\x4a\xc8\x72\xa9\x55\x6b\xc6\xa5\x53\x26\x48\xbe\x54\xb9\x02\x95\xb2\xe3\x17\xb2\xa4\x4b\x4f\x5c\x56\xd2\x33\x59\xaa\x78\x99\xc8\xe3\xe3\x95\x33\x3d\x45\x4b\x15\xd3\x14\xef\xc1\x74\xb9\xce\xe5\xe9\x3f\x5a\xaa\x50\x69\x51\xf4\x97\x2a\x56\x5c\x29\x83\xa5\x4a\x15\x97\x4f\xb8\xa8\x94\x66\x0b\xf9\xbd\x35\x59\x54\xc2\xd0\xae\x5e\x57\x70\xbc\x4c\x66\xbd\x36\x27\xce\x9e\x5b\xe2\xce\xfd\x78\x3c\x41\x7c\x63\x88\xb9\x92\x43\x58\xd3\x46\xa4\xf8\x20\x3c\xa3\x6b\xfa\x09\x7e\x85\x8b\x07\xa6\x53\xac\x77\x76\x93\xd6\x19\x23\x42\xbd\xe5\xba\x12\x91\xdd\x0f\xaa\x17\x3b\x0a\x85\x6b\xa4\xcf\xe2\x88\xec\x8a\x7e\xa8\x94\x39\x88\x6b\x37\x5e\x35\x81\x6a\x96\x9b\xf2\xbe\xf4\x28\x8e\xc2\xe5\x1f\x91\xbd\x0f\x8e\xb5\xfd\x08\x25\xc9\x53\x68\x8c\x93\x4e\xd7\x9b\x8b\x5f\x2f\xef\xbb\x61\x3a\x46\x07\x64\x98\xb2\xf3\xd0\xce\x0e\x73\x0f\x6c\x64\x47\x3e\x33\xdc\xb2\x68\xec\x46\xb8\xda\x97\x41\x7b\xdd\xc7\xe3\x49\xca\x71\xe8\x97\x5d\x24\xa5\xd5\x3b\x70\xe0\xe9\x74\x91\x7a\xa2\xaf\xf4\xa1\x68\x1f\x1d\x24\xb5\x11\xda\xc3\x35\x55\xcc\x03\x33\xdf\x9c\x0e\x79\x76\xf3\x6d\x79\xeb\x99\x2b\x19\x15\x0b\x1c\xac\x7b\x2d\x6f\x1d\x43\x12\x30\x3f\x17\xff\xc8\x27\xfa\x6e\x84\xbd\x94\x14\x4b\x5b\x87\xbd\xd4\x6f\xcc\xcc\x9e\xc1\xcf\x89\x4a\xbf\xcd\x5b\x7d\x14\x45\xd2\xe0\x01\x3a\x7c\xad\x1c\x01\xf5\xf6\x04\xf7\x39\x0e\x6b\xb9\x99\xab\xc9\xc1\x56\x0e\x23\x5a\x85\x52\xb3\x13\x4a\xf5\xca\x74\xa3\x26\x30\x0f\x6b\xe5\xbe\x98\xa8\x43\xb5\x58\xea\x81\xd9\x84\xe4\x83\xca\xf0\x00\xeb\x78\xa4\x8f\xba\xad\xe7\x9e\x11\x38\xac\x58\x3e\x42\x57\x42\x49\x72\xde\x6f\x03\xc8\xb3\x9b\xe9\xb4\x1f\xd3\x24\x8e\xb0\x0a\xbb\x2a\x8f\xe0\x2a\x11\x2c\x2a\x73\xf7\x0f\xd3\x11\x4a\x9e\x95\x1b\x82\x1e\xbe\x6a\xe7\x9d\x46\xa3\x94\x73\xbb\x94\xe2\x73\xd0\x31\xdb\x0b\x3b\x90\xc1\x68\xb9\x9c\x40\xb3\xe3\x94\xac\x6e\x6e\xf5\xce\xee\xb6\x9d\xfb\x95\x6d\x58\xa2\x8c\xdb\x42\xee\x83\x68\x28\xa7\xd5\x2d\xe8\x4a\x2e\xdf\x76\xe1\xb7\xec\x86\xc8\xc5\x70\x12\x47\x7b\xb8\xd0\xe9\x8a\x54\x5b\x62\x7e\x1f\x76\x76\xec\x94\xee\xec\x54\xb4\xd7\xb2\x9f\x4b\x1f\xb3\x8e\x1d\xd9\x23\xdb\x95\x13\x62\x54\x8d\x8a\xc6\x61\x88\xf9\xd3\xfb\x34\x37\x8b\xe5\xb0\x1b\x32\xc7\x76\xfe\xa7\x8f\x73\xb5\xce\x21\xf9\x28\x46\x42\x70\x26\x9c\xa0\x88\x3c\x7f\x2e\x7b\x98\x5b\xa7\xbe\x65\x40\x9f\x8c\x51\xa8\x63\x3b\xb7\xae\xb8\x02\x57\xde\xf7\xb9\xe5\x60\x2a\x96\x71\xa5\x01\xc0\xe9\x96\x12\x92\x3e\x54\xfd\x53\x28\x3f\x51\xd5\xcf\xb5\x72\x3f\x65\x24\xf3\xa6\x7c\x1f\xbe\xa9\xaf\x96\x9e\x97\x10\x52\xb0\xb1\x56\xba\x01\xcb\x6b\x5c\xff\x09\x1f\xe8\x63\x9a\x5b\xf8\x20\x99\x41\x89\x73\xf5\x05\x05\xe5\xdc\xce\x22\xa8\xcf\x37\x6d\x79\xc8\x82\xc3\x99\xbe\xa3\x60\x8e\x35\xe5\x55\x05\xe3\x59\xd3\xa5\xf2\x5d\xae\x2c\x7e\x27\x59\xf7\x02\xbf\xfb\x5c\xe3\xf7\x7a\x0f\x01\x0f\xb4\xf0\x6d\xdc\xf7\x31\x58\x8b\x1b\x0d\x9f\x75\x49\x2f\x88\xe5\xa3\x39\xd6\x57\xba\x4a\x32\x92\x03\x2c\xc4\xf3\x26\x09\x85\xbc\x7e\x9f\x49\xc8\xb1\x71\x1e\xda\xd6\x2a\xbc\x94\x8d\x56\x23\x30\xeb\x78\xeb\x78\x06\x43\x5c\x9d\x9f\x0c\xfc\x3a\x36\x87\x11\xd2\x84\x67\xe2\x80\xab\xa0\xa4\x1b\xcf\xf9\x6e\x5d\xc0\x6f\x3d\x04\x36\xb2\x43\xda\x6d\xde\xbd\xd8\xeb\x88\x72\xb3\x39\xcb\xec\x24\x84\x57\x75\xad\xb1\x86\xa7\x53\x79\x8f\x34\xef\xca\x5b\x7e\x2e\x45\x5d\xe7\x6e\xf5\xd1\x18\x8b\xde\xfa\x2c\x2f\x77\xd9\x6b\xd2\x54\x75\x9e\xfb\x31\x68\x34\xb8\xef\xe6\x60\x00\x94\xa2\xca\x5f\xf8\x6c\x82\x6b\xa6\xd2\xb0\xb6\x87\x99\x0c\xa8\x5a\x8b\x07\xb5\x94\x45\xb5\x09\x62\x68\x9c\xb4\x6a\xfe\x63\x24\x94\x71\x63\x06\x84\x86\x35\xef\xc2\x3a\x59\xbf\xe0\x09\xd1\x4a\x4e\xad\xf4\xd2\x0d\x49\x68\xbf\xb2\xf5\x0b\x5e\xeb\x82\x42\x48\x3a\x07\x94\x9a\xbd\x46\x92\x84\xd0\x61\xd6\x48\xc7\x96\xab\xf9\x4f\xc6\xf1\x2d\x25\xbd\x75\xb2\x36\xb4\xf8\xa6\x9a\x6e\x5d\xb0\x14\x2c\xea\xdf\xc6\xb4\x1f\x87\xf8\xb3\xcf\x3e\x61\x15\x04\x3f\x06\x1d\x25\x75\x9e\xde\xf1\x7f\x99\x05\x1f\xef\x7e\x41\xad\x5c\x23\x6f\x42\xb3\xa4\xa5\xab\xb3\x89\x07\x70\xc5\xd7\xce\xfb\x2a\x7a\xbf\xfa\xd6\x4a\x22\x79\xe1\x0f\xb4\x52\x4a\xbe\x68\xee\x78\xa8\x0b\x32\x28\xfa\x6c\x75\x15\xe6\xb3\xfa\xb6\x5d\x91\x66\xaa\xed\x74\x7b\x47\xd4\x5c\x71\xe1\x46\x2d\xa2\x7c\x1f\xfe\x7f\xf6\xfe\x75\xbd\x8d\xdc\x4a\x14\x86\xff\xeb\x2a\x4a\xb5\x33\x34\xd0\x84\x4a\xa4\xec\x76\x77\x53\x86\xb5\xd5\xb6\x9c\xf6\xc4\xa7\xb1\xe4\x24\x3d\x34\x5b\x53\x62\x81\x22\x62\x12\xc5\xa0\x40\xc9\x0a\x59\x7f\xf7\x15\xec\x9b\xf8\x6e\xe3\xbb\x94\x7d\x25\xef\x83\x63\xa1\xaa\x50\x92\xdc\xe9\xce\x4c\x66\xba\x9f\xc4\x62\xe1\x7c\x58\x58\x58\x58\x47\xcf\xef\xe8\xd3\xbd\x61\x3b\x42\xc1\x7b\x1b\x93\x60\x65\xb5\xbb\x8b\x68\x9a\x32\x09\x37\xe9\xa2\x30\x92\x20\xdd\xf5\x28\x7a\xa0\x08\xf6\x07\xb1\x67\xb4\x23\x72\x0d\xe5\x1d\x76\x3a\x6e\x1c\x56\xfa\xde\x9a\x87\x15\x6e\xe6\x17\x7f\x71\xa7\xe3\x18\x8c\x27\xee\x64\x93\xf0\x4c\x35\x72\xe0\x5a\x41\x22\xd7\x9e\x3b\xc7\x04\x29\x8b\x22\x88\x58\x77\xa5\x0e\xfa\x55\x6b\xcb\xee\x0e\x60\xa9\x9b\x14\x80\xc1\x5e\xaf\x6a\x98\xe9\x86\xf3\x64\x99\xae\xea\x8d\xba\x71\xea\xd0\x03\x58\x89\x81\xcc\x47\x4f\xf1\x15\xc2\xf8\x88\xa7\x2c\xcb\x97\x7b\x6b\xbe\xd8\x2b\xd2\xd9\x3f\x9a\x3b\x52\x29\x41\xc5\xc7\xdf\x3f\x7b\x7e\xf2\xe2\xf7\x3f\xbc\xfc\xd7\x3f\xbc\x7a\xfd\xe6\xed\xbb\x7f\x7b\x7f\x7a\xf6\xe1\x8f\x7f\xfa\xf3\x8f\xff\x9e\x5e\x4c\x33\x32\xbb\x9c\xd3\xbf\x7c\x5a\x2c\x59\xbe\xfa\x2b\x2f\xc4\xfa\xea\xfa\xf3\xcd\xdf\x06\xc3\x83\x87\x8f\xbe\x7e\xfc\xcd\xb7\xdf\xc5\x88\xe3\x38\xae\x9b\xe4\xf5\xb1\x48\xa6\xf3\x94\x1f\x0b\x5f\xe6\xac\x7e\xea\x59\x03\xf8\x95\xbd\x19\x3d\xed\xbb\x0e\xc4\x6d\x4f\xde\x9e\x45\x2c\xff\xc8\xa5\xba\xfb\x45\x4f\x02\xcf\xf5\xe7\xb2\x4b\xaa\xe5\x4f\xb3\x0a\x21\xea\x07\xef\xc5\x4d\x94\x46\xc5\xfa\x42\xf1\x41\xfc\xc0\x20\x49\x7c\x0b\x95\x58\x88\x54\x90\xbd\x65\x3a\x9d\x53\xf6\xab\x01\x8b\xb9\x73\xb5\x15\x56\xa5\x1f\xa1\xb0\x12\xe2\xbe\xc7\x94\x9a\xd6\x61\x15\xb3\xc3\x50\xaf\xa7\x72\xb0\x3b\x16\x1b\xa9\xa1\x17\x98\x98\x1f\x68\xd7\x4b\x6d\xa3\x24\x55\xf7\xb5\x9e\x67\xc4\x08\xc9\x8a\x48\x17\xd5\x6e\x3a\xab\xba\xd8\x6b\x66\x2c\x26\x7e\xb3\x81\xa0\x59\xe6\xf6\x32\x03\xd4\x4d\x5a\xcb\xcd\xe9\x9a\x73\xc2\x84\xea\xf9\x4d\xba\x24\x4e\x3f\xbe\x58\x5f\x38\x67\x4b\x05\xde\x18\x1f\xc7\x5a\xe6\x80\x89\x09\x37\x75\xc6\x53\xa6\xb5\x0e\x8a\xed\x76\x3c\x41\x29\x26\x3a\xdc\x54\x23\x43\x49\x38\xb5\x7e\x5e\xee\xa4\x9b\x4f\x99\x3e\x32\x38\x97\x54\xa1\xea\xb5\xd9\x6a\xc5\x62\x41\x1c\xf1\x64\xc6\xa0\xd7\x52\xda\x6e\x29\x75\x2d\x35\x46\xd1\x6e\xa8\x34\x12\xd3\xe4\xf4\xdd\xab\xe3\x33\x1c\x7f\x15\x37\x05\xa7\x56\x02\xa8\x09\x83\xf6\xba\x1a\x2f\x73\x51\xd5\x8b\xde\x26\x0e\x37\x61\x4c\x0b\x38\x26\x48\x1e\xa4\x4a\xdf\x13\x6b\x80\x3b\xe2\x23\x7e\x34\xe6\x13\x75\xf9\x71\x92\xad\xa7\xbe\xcc\xde\xb7\xa6\x23\x63\x3e\xc1\x02\x91\x12\xa2\x8d\x01\x5a\x5e\xea\x27\xbe\xd5\x5e\x12\x7e\x0f\xbb\xd8\x80\x6e\x7b\xfc\x45\xbe\x24\x62\x2e\x21\xe3\x9a\x30\xa1\x1d\x69\xc5\x70\x87\x61\x51\x29\x7e\xb9\x25\x49\x2b\x99\x93\x75\x28\xa4\x02\x7f\x2a\xef\xdb\xbc\xd7\x63\xbd\x5e\x0e\xad\xb4\xda\x2d\x8d\x70\x4b\xa3\xa1\x6e\x14\xc5\x7d\x90\xcb\xcb\xa5\x09\x77\xb0\x1f\x47\x33\x9e\x4b\xca\xaa\xcf\x15\x6b\x4c\xfe\x62\x2d\xb6\x5a\x0a\x4b\xd9\xef\x58\x4c\x30\x2d\x59\x52\x75\x70\x96\x87\x9e\xde\x4d\xc2\xc7\x2f\xaf\x75\xbc\x7d\xfd\xdd\x8d\x3e\x51\xa3\x4d\xf8\x76\x37\x74\xfd\x93\xda\x31\xf5\x27\x32\x7a\x60\x18\x76\xcd\xd9\xf5\xe3\x07\xd1\xd3\xb8\x44\x7e\xf7\xcd\x27\x40\x9c\x28\x47\x53\xf6\xf6\x18\xc0\x9a\x0a\x69\xb3\x45\x2f\x44\x90\xa1\x9c\x06\x68\x6f\x08\x77\x08\x1e\xb8\x97\xd7\x91\x17\x13\xa8\x4f\x46\x24\x91\x67\x5a\xcd\x0a\x0c\x35\xfc\xf3\x1a\x22\x21\x13\x4b\xab\x34\x7b\xd3\x21\x14\xda\x20\xf4\x81\x7d\x62\xf9\x35\x8b\xf4\xec\xa3\xff\x50\x58\xfe\x3f\x2c\x6e\xb9\xa6\x8b\x45\x75\x38\xb4\x0e\x9b\x87\xc3\x0c\xd1\xd9\xc2\x40\x46\x37\x2c\xa3\x59\xa3\x72\x89\x9a\xf8\x21\x68\x1c\x5e\x2d\xb2\xb6\xdc\xf7\xce\xa7\x71\x1c\xd0\x40\x0e\x77\xb6\x52\x1b\x8a\x6d\xc4\x2b\x11\xf6\x36\xe0\xcb\x66\xb1\xb6\x72\xdd\x6e\x29\x9a\x61\x91\x88\x7c\xbb\xa5\x3b\x03\x8c\xf1\xcc\x91\xa9\xf1\x6e\x0c\x8f\x00\xc3\x33\xb3\x4d\x60\x08\xd1\x1a\xef\x0e\xe0\x48\x26\xca\x9f\x43\x88\x94\xc6\x6a\xa3\x4a\x8e\xa7\x5e\x95\x85\xae\x92\xe3\xa9\xfc\x39\x84\x2a\x34\x8a\xad\x40\xa1\xf2\x50\xed\x7d\x16\x4a\x4d\x1a\xe4\x38\xf7\xa0\xa3\x40\x03\x08\x51\xaa\xb3\x18\x66\x5e\x56\xaa\xb2\x34\xdd\x2a\xa7\x0b\xda\xd6\x1d\x14\x0b\x34\xc5\x64\xc7\x34\x3d\xc5\xa4\xab\x69\x8a\x45\xab\x69\x8a\x31\x66\x3a\x62\xcb\x14\x63\x9c\xef\x62\xbc\xe8\xf5\xb8\x87\xc0\xd5\xf2\x43\x63\xba\x7e\xc7\x2e\xb2\x5c\xd0\xd9\x4d\x17\x1c\xd4\xf6\xf5\xd6\xfa\x61\x08\xd0\xb9\xad\xdd\xaf\xdc\xb4\x07\xae\xd2\x31\x99\xa8\xab\x52\x6b\xaa\x57\xba\x3e\x4f\x72\xa5\xef\xc3\xc6\x74\xe2\xcd\x55\xf3\x6e\x3b\x06\xd7\x6c\xf7\xb6\xee\xc2\x59\x9a\xc6\x97\x73\xc9\x67\xb3\x51\xa7\xa1\x4e\xbb\x9e\x85\x20\x01\x77\xc4\x11\xb7\x7e\x06\x5a\xc5\x24\x92\x9a\x12\xc0\xd1\x10\x8e\x3a\xc6\xac\xf8\x16\xca\x3d\x46\xcb\xe5\xb2\x8f\x9d\x0c\x72\xd2\x4b\xe3\xec\xaa\xd1\xd0\xdc\xb8\x0d\x5f\xf6\x6a\xed\x98\x41\x43\x6b\x36\x57\x4e\x41\x32\xe5\x20\x44\x62\x7d\x24\xf8\xcd\xe9\xaf\xd2\x63\xa9\xbc\xf2\x8a\xc0\x52\x52\x1f\xd5\xa2\x02\x6f\x42\xe8\xa3\xe5\x6a\x7a\x3c\x98\xa0\xa2\xe6\x5c\x1a\xad\xb1\x26\x4f\x0a\xb8\xc3\xc1\xba\xc3\xfd\x84\x9e\xcc\x7a\x2c\x26\x3b\xa9\x7c\xd5\xe9\xbb\xbb\x7e\xfd\x71\xa8\x69\xee\x1d\x33\x47\xe5\x89\xa2\xb6\x56\x01\x27\xd8\x0e\xe5\xeb\x02\x16\xe5\x6b\xf6\x87\xb9\xfd\xec\xdd\x09\x60\xeb\xfa\x16\xf2\xca\xf5\xcc\x67\xc2\x04\xff\x7a\x4d\xb3\xbd\x4b\xc2\x74\xe4\x8a\x5f\x5b\xd8\x69\x3a\x0a\x38\xdc\x70\x11\x1d\x61\x72\x49\xc4\x19\x5d\x12\xa7\xaf\x1d\x7f\x36\xff\xed\xa9\x7f\x1e\xc9\x7f\x6e\xec\xa7\xfd\x2f\x76\x8e\xba\xf7\xc7\x9f\x6f\x26\xfb\x97\x28\xb0\x49\x80\xf4\x87\x8f\xbf\xaa\xbd\x10\xe1\xbf\x0c\x1f\x6f\x07\x8e\x0d\x80\x6b\xda\xcb\xc3\xc7\x10\x81\xf8\xb3\x24\x16\xc4\x11\x1f\x3d\xec\xf1\xed\xb7\xb0\x5a\xf3\xe1\x63\xb3\xab\xb7\xaa\x62\x36\xe5\x09\x45\x48\x95\x2c\x2c\x78\xb8\x1f\xfb\xde\x94\xf2\xbb\xf0\x3e\xf6\xea\x1a\x50\xb7\x96\xda\x93\xc0\x79\x91\x4e\x3f\xdd\xb3\xb8\x53\x27\x74\xa5\xdb\xe3\x2b\xf6\x95\xef\x20\xad\xdb\x50\xdc\x51\xf4\x3a\x5d\x7c\x72\xca\x29\x41\xd5\x51\xab\x87\xf5\xab\x3c\xc2\xeb\x8e\xfa\x3c\x0d\xa4\x7a\x06\xeb\xca\xc8\x6b\x19\x9e\xbf\xc1\xa2\x2b\x23\xbd\x4d\xc9\x45\xe9\xd6\x16\xfb\x6b\xa7\x1a\x63\xb5\x6d\xc3\xf0\xd3\x3c\xca\x77\xf1\xec\xef\x10\x9a\x04\xc4\xd4\x41\xfd\x88\x8e\x4d\xfa\xfb\x37\xe8\x4f\xc7\xef\xdf\xbc\x7c\xf3\xfb\xf3\x3f\x9c\xfc\x88\x49\xf2\xec\xc3\xfb\xf7\x27\x6f\xce\xce\xdf\x9f\xfc\xdb\x87\x93\xd3\x33\x95\x6a\x02\xf2\xe8\x97\x50\xb8\x48\x7c\x7e\xae\x06\x7d\xce\xc9\x5f\xd7\xa4\x10\x31\x2a\x70\xbd\x69\xaf\x44\x46\x39\x99\x8a\xf3\xeb\x94\x33\xb9\x04\x3b\xda\xce\x41\xf3\x64\x5e\xcb\xa5\xb7\xf6\x86\x3f\xd7\xc5\x0b\x27\xcb\x5c\x90\x97\xd9\xef\xed\x2e\xe1\x70\xf2\x76\xeb\xa0\xaa\x44\x75\x5d\x7d\xb9\xc4\x6b\x8d\xd0\xb4\x69\x82\x35\xd6\xd2\x8d\xa0\x99\x5d\x95\xfb\xaa\xa9\x67\x68\x0e\x37\xd3\x5e\x6f\x91\x28\x05\x73\xa3\xe7\xb1\xc2\x8b\xf6\xb0\x12\x8b\xbf\x01\xdc\x99\xb5\x6c\xcf\x28\x76\x80\x9d\x78\xf2\x17\x40\x92\x4f\xe4\x46\x07\x38\xc6\x18\xbb\x37\x6d\x90\x41\xea\x8e\x96\x5b\xe9\x35\x5f\x8c\x08\xfa\x44\x6e\x8a\x91\x28\xa1\x0e\x54\x0c\x60\x09\x48\xc2\xc8\xb5\xf2\xaf\x84\x04\xdc\x59\xe4\xd3\x74\x71\x2a\x72\x9e\x5e\x12\x35\xee\x2b\xf2\x52\x90\xa5\xe9\x1b\x39\x67\x64\x35\x1d\x99\x0c\xe4\x06\x81\xcb\x11\x2d\xbd\xe1\x57\x83\x5f\x35\xda\x2e\x88\x50\x0d\xa7\x68\x09\x51\x57\xaf\x05\x44\x8b\x44\x6e\xdb\x7b\xb5\x82\x80\xa0\x25\x5a\xcb\x34\xeb\xb2\xed\x5d\xbe\x58\xe8\x5b\x5b\xf6\x7c\x85\xaf\x29\xcb\xf2\xeb\x24\x67\xfa\xd5\xb5\x66\x12\xdd\xcb\x15\x0b\x66\xf8\x28\x2b\xa0\x2f\x73\xd5\xeb\x5d\x01\xd9\x9b\xd9\xcf\x12\xed\xda\xbd\xdc\x6e\xed\x2f\x9d\x99\x59\xda\xaa\x6b\x26\x29\x44\x0a\x9c\xe6\xc0\x7b\x8a\xea\x16\xa2\xa9\x52\x16\x62\xb9\x50\x66\x1c\x51\xce\xa3\xeb\xb4\x70\x56\x0a\x70\xc7\x75\x35\xcb\xa7\xeb\x42\x8d\x48\xb9\x78\xcb\x68\xf6\x4c\x16\xaa\xbb\xcd\xa3\x33\x50\x1b\xc4\xa5\x59\xe8\x02\xc2\x4d\xf7\x3a\xef\x18\xea\x61\x80\xf2\x96\x06\x0e\x54\xe6\xee\x9e\x22\x29\x88\xc7\xca\xf8\x62\x12\x7d\x50\x5c\xba\x94\x45\x6f\x8f\xd7\x62\x1e\xd9\x93\x1f\x89\x79\x2a\x22\xb9\xc4\x45\x74\x93\xaf\xb9\x3e\x38\xd1\xf1\x6a\x15\xd1\x22\xca\xc8\x8a\x13\x65\xfb\xa0\x1c\xd1\xc8\x77\x4e\x74\x41\x3e\xb2\xa8\xf6\x9f\x1e\x9e\x8a\x9f\x90\x46\xb3\xb5\x0a\x9d\xc5\xc9\x82\xa4\x05\x41\x51\x5a\x44\x59\x2e\xbb\x2e\x72\xd9\x62\x1a\xad\x72\x41\x98\x66\x15\x92\xe9\x9a\x53\x71\x13\x5d\xad\x17\xf2\x90\x69\xd7\x70\x49\xb3\xf9\x1f\x68\xa6\x7d\x10\x45\xc6\xd7\x66\x74\x71\x13\x15\x44\x08\xd9\xea\x7f\x28\x07\xcf\x1f\x58\x91\xce\xc8\x7b\x33\xa7\x51\x24\xf8\x9a\xfc\x87\x1c\x8f\x9a\x92\x36\x3f\xa9\xa1\xf0\x5a\x27\x31\x22\x49\xa0\x19\xcd\xc4\x10\x38\xb8\x47\x29\xdc\x11\xbd\x1e\xe8\xda\x26\xd1\x7d\x52\x52\x28\xc1\x42\xd0\x25\xc9\xd7\xc2\xf3\x19\xb8\x48\x05\xe1\x60\x51\x83\x90\x10\x0c\x56\x10\x87\xa2\x74\x2d\xe6\x39\xa7\x7f\xd3\xca\x5f\x32\x27\x23\x8c\xca\x9c\x9c\xcb\xbd\xf6\xcc\x57\x64\x01\xbb\x7e\x2a\x5c\xc2\x35\x2d\x88\x02\x65\x4e\xa6\x84\xca\xfd\x33\xb1\x17\x94\xdf\x7b\x75\x08\x4d\x3f\x49\x2c\x69\x79\x34\x1c\x0c\x94\xc4\xc5\x1c\xd0\x34\xd3\x64\xfc\x2b\x5a\x08\x89\x23\x41\x5c\xe8\xc9\xc6\x68\xa6\x24\x35\x26\x2c\x5b\x0d\xff\xb8\x13\x6a\x5b\xd1\x0b\x73\x6b\x43\x01\x7b\x24\x0f\xfb\x5b\xab\x40\x55\xc6\x20\x9f\xda\xd5\x83\x75\xe4\x6d\xcd\x9f\xa3\x97\x97\xb2\x03\x77\x1e\x2d\xb7\x61\xba\x20\x29\xfb\xb0\x02\xaa\x33\xf5\xb3\xd5\x9d\x4c\xe7\x67\x7a\xdb\x64\xb9\x06\x62\x6b\x95\x5f\xe9\xf4\xd6\x0e\x8b\xa0\x6b\x47\x59\xba\x3e\xfa\x16\xe2\x2c\x21\x7a\xf8\xb5\x19\xa0\x1d\x88\xdf\x6b\xd5\xd1\x54\x92\x99\xfa\x8d\x6f\x01\xcd\x34\x6a\xc1\xce\xbc\x8b\x45\xbe\xb2\xc3\xb7\x4a\x2a\x5d\xc8\x2a\xdc\xba\x99\xa4\xda\x26\x5f\x77\x61\xdd\x26\xed\x2a\x03\x86\xbd\x15\xa7\x57\xa9\x20\xfb\xbf\xb6\x82\x5d\x7e\x45\x38\xa7\x19\x79\x95\xa7\xd9\xa9\xe2\x0b\x84\xd4\x18\x39\x29\x88\x08\x15\x91\x25\x76\x87\x5a\x07\x2c\xd8\x00\x9d\x01\xe7\x2b\x40\xf9\x9a\xd2\x6f\xae\x2c\x9f\x2a\x12\xc8\x5c\xe8\xc6\xf1\x21\x88\x35\x6b\x22\x86\x88\x55\x45\x2e\x89\xf5\x68\x5b\x7c\x7f\x73\xa6\x3d\xe3\x56\x25\xc7\x83\xc9\x0e\x4f\x0a\x3e\xc5\x04\x31\x49\x08\x10\x26\xde\xe4\x19\x49\xa8\xf2\x85\xab\x03\xa4\x00\x65\xce\x63\xde\x9b\xbb\xc3\xdb\x56\xbe\xa5\x68\x7f\x9b\x85\x8f\x31\x50\x98\xe6\x19\xb9\x2f\x1d\xfc\x4b\xbc\x99\x59\xe5\xa6\xc2\xa9\x19\x30\xe5\x2f\xb8\x35\xfa\x8b\xb4\x20\x1f\xf8\x62\x74\x8b\x52\xb0\x79\x4f\xcf\x85\x58\x15\xa3\xfd\xfd\x45\x7e\x49\x59\xa2\x71\x4f\x91\x30\x22\xf6\x7d\x25\x58\x41\x18\x4b\xb5\x6f\xc8\x7e\x6c\xe6\xbf\x6f\x71\x2c\x89\xe5\xca\xba\x22\x23\xf5\xaa\xf1\x15\x96\xa1\xdf\x00\x8a\xa7\xf9\x72\xa9\xbc\xaa\x59\x29\xa4\x13\xcd\x8f\xc6\x71\xba\xa2\x7b\x46\xc1\x44\x16\x5d\x50\xc2\xc4\x39\xcd\xe2\x09\x6a\x09\xf2\x47\xe3\xb8\x98\xe6\x2a\x52\x35\xcb\xb5\x1f\x78\x4e\x8a\x55\xce\x0a\x72\xbe\x94\x7b\x33\x41\xf6\xfb\x75\x9e\x91\xe0\xb8\xfc\x02\x31\x52\xce\x15\x5d\x25\xd3\xcb\x9d\x6b\x38\xae\xd6\xc9\x56\x3d\xbb\x59\x91\x18\xa2\x58\xcb\xfc\x26\x72\x7d\xd2\x15\xfd\xa3\x9e\xd7\x28\x1e\x26\x83\x18\xf9\x65\x6f\x1d\xdb\x99\x8e\xc6\xad\xc0\x4d\x8e\x4e\x5f\xc2\x1f\x38\xed\xa8\xe5\xf2\xeb\x78\xaa\xe6\x99\x41\xbd\x4e\x40\x0b\x3b\x05\x18\x43\x15\xd8\x4b\xa0\xea\x7a\x6f\x06\x24\xe6\xb7\x69\x0e\xdf\xf7\xf1\xf8\x4b\x1c\x1b\x1a\x56\xd0\x51\x27\xa7\xfe\x64\x87\x3a\x78\x99\x42\x35\xc5\x2a\x9d\x92\xe6\xde\x6b\x65\xf0\xc0\xaa\xde\xaa\x07\x2f\xd7\x54\xab\x90\x35\x9b\x73\x4a\xe4\x99\xbe\xe1\x8c\xf3\xd0\x37\xad\x5e\x1c\x65\x5b\x29\xb0\x42\xad\x02\x6f\x75\x01\x8d\xb3\xd7\xee\xf6\xe0\x76\x5b\x3d\xa8\x78\x33\x7b\xbb\x8d\xb5\xa9\x4d\xa5\x04\x63\x6d\x56\xea\x06\x39\xca\xc5\x22\xb4\x2b\x15\xec\x6a\xa4\x8c\x51\x5b\x60\xd9\x9a\xa0\x76\x65\xea\x83\x1f\xbd\x0d\xfc\x9a\xe6\x49\xf7\xc0\xd0\x0d\xcb\xc9\x5f\x17\x47\xfb\xbe\x2e\x3b\xf0\x74\x73\x0a\x16\x4d\x3b\x2c\x9c\xae\x68\xa2\x0b\x49\x28\xd1\xd3\xf0\xf0\x6c\x13\x35\x8d\xe3\x74\x3a\x25\x45\x71\x2e\xf2\x4f\x84\x29\x7c\x77\x7f\xe4\x00\x91\xc2\x9e\xc1\x72\x16\xaf\x1a\xcb\xe3\x90\x42\xd1\x6d\xc6\xa5\xb7\x6d\x8d\xc6\x22\x77\x92\x3e\x3f\x13\x43\xa8\x03\x5f\xd3\x28\x80\x3a\xfa\xb1\x75\x20\x64\xa8\x01\x43\x64\xcf\x2e\x8e\x8b\x1b\x36\x7d\xc9\xa8\x50\x51\xe3\xd5\xd3\xc4\x06\x8d\x8c\x8c\x97\x57\x9b\x8c\x28\xbe\x93\x81\xa2\x03\x50\x9b\xd6\x5f\x7c\x5f\xd1\x40\x70\xa7\xdd\xa5\x4f\x50\xbd\xf8\x5e\x69\xb2\x00\xe2\x33\x28\x34\x81\x0e\x4b\xcd\x28\xac\x68\x2d\x08\xe2\xfd\x7d\xb3\xda\x89\x5d\x7e\x73\x69\xb3\x7e\xbc\x5f\x64\x9f\x92\xbf\x14\x5a\x2d\x4c\xbe\x73\x6a\x97\x56\x60\x1c\x02\xb5\x13\x7b\x3d\xd0\x4e\x54\xd6\x15\x6b\x15\x07\xbb\x9d\x09\xb4\x60\xc3\xd7\x5d\xb0\xe2\x8b\xcd\xba\x20\xfc\x65\x36\x22\x89\xfa\xf1\x1c\x69\xb8\x3d\x93\x60\x3b\x22\x89\xf7\x85\xc8\xe7\x15\xe5\xa4\x78\x29\xd3\xdd\xef\xb2\x42\x4b\x97\x3c\x65\x82\x64\xa7\x12\x42\x0b\xe5\xc6\xa9\x96\x82\x1b\x25\x20\x12\x5f\xac\xdb\xb9\xa3\xc3\x9e\x77\x9d\xe2\x36\xbc\xbb\x83\xd4\x42\x7b\xf6\x20\xa9\xb0\x94\xea\xf6\x96\xd3\xd0\x43\xeb\xc0\x93\x55\x81\x18\xed\x0e\x25\xe1\xb0\xd2\x44\x55\xab\xac\xca\x89\x21\x32\xf4\x52\xb0\x4c\x45\x4b\x5d\x1d\x24\x07\x31\x44\x9f\x67\x17\xcb\x45\xb0\xa8\xca\xd1\x7d\x4e\xe7\x29\x63\x44\x92\x5a\xc1\x92\x55\xb6\xa5\x99\xf4\x09\x09\x16\xd6\x59\x72\x0d\xd8\xf9\x87\xd3\x18\xa2\x2f\xe7\x97\xe6\x46\x07\x4b\xb3\x36\x0a\xe5\xb6\xbe\xc1\x09\x85\x1b\x67\x4d\x26\x5f\xbe\x04\x6f\xca\x9a\x2b\x33\x75\x3f\xea\xdd\x80\x88\x63\x92\x48\xac\x2a\x29\x2b\xab\x7b\x61\xe8\x37\x6f\xf5\x9d\x9a\x60\xbb\xfb\xf6\xa9\x0a\x44\x8e\xf7\xd4\x87\xee\xc4\x1b\x4a\xbf\xe7\xc5\xf7\x89\x22\xc3\xeb\xaa\x7e\x7a\xa8\xef\x0d\xe6\x3f\x6a\x60\x07\x86\xea\xf9\x70\xd4\x28\x40\x91\xd6\x82\x5b\x17\xf2\x9d\xbc\xd1\xa0\x4a\x0c\x20\x9e\x17\x1a\x12\x05\x92\x6d\x9c\xab\x58\x2e\x5c\x61\xfb\x12\x08\xc4\x74\xb4\x5a\x3d\xd9\x54\x47\x7e\x50\x2b\xd0\xd6\xce\xd9\xe8\x2e\x46\xbb\x03\x34\xcd\xf3\x4f\x54\x1e\x24\x03\x6a\xd5\xea\x6a\x00\xab\xe0\xb5\xca\xb1\x50\x6a\xa1\xbd\xca\xb1\x30\xee\x41\xa4\x47\xef\x54\x70\xe8\x40\xb0\xca\x35\x80\x07\xcb\xba\x87\x94\xe2\x5e\x77\x59\xf7\x3b\xb0\x61\x11\x7a\xeb\xeb\xf0\x57\xa4\x31\xf8\x5d\xd8\xa9\xf9\x16\x74\x44\xc6\xf5\xf5\x75\x75\x69\x48\x32\x23\xa3\xe9\x22\xbf\xd4\x03\x8f\x83\xaf\xb2\x8c\x16\xab\x45\x7a\xe3\xbd\xa8\x5c\x96\x79\x05\x9b\x97\x4e\x85\x0a\xc5\x5d\xa8\xd0\xb4\x39\x32\x84\x67\x93\x76\x69\xd5\xff\xd2\x87\x0d\xea\xf0\x6b\x54\x2b\xd7\x3c\xc8\x9a\x5c\xd0\x47\xca\xf1\x0f\x9f\xe5\x19\xe9\xf5\xe2\x83\xc1\x40\xab\x8a\xb5\x32\x03\x1a\x5a\x05\xe1\x91\xe6\x07\x91\xac\xce\x8d\xac\xf0\x0a\xd1\xba\xb7\xb7\xc1\x63\xc3\x6b\xc0\x3f\x15\x57\xa2\x31\xf6\x16\x1c\xea\x7c\x05\x81\x0a\xed\xdd\x83\xdc\x6d\x00\xdb\x7f\xde\x5b\xb8\xd3\x55\xc5\x3f\xd7\x0e\x75\xcd\xa2\xfd\x30\x99\x4e\xf3\x35\x13\x45\xa2\xab\xe8\xd7\x89\x65\x04\x5d\x69\x5e\x50\x8c\xd4\x33\xe4\x8f\x2e\x38\x59\x0b\xeb\xe8\xca\xe9\x4a\xb9\x5e\x5f\x7a\xd5\x55\x45\xca\x66\x79\x7c\x2b\x9b\xc7\xc8\x6d\xcf\x8d\xf7\xbc\xf3\x54\xad\x54\xe1\xa3\x9d\x8e\xa7\x8c\x66\x36\x91\x42\x18\xf7\x89\x3a\x50\x4f\xd1\x01\x35\x81\x92\x31\x8a\x63\x58\xe7\xd9\xc4\xfa\xd5\x75\xc7\xa3\x0c\xe9\x62\xea\x6e\x95\xd8\x4f\x93\xb4\xe7\xf4\xcb\x9f\x6b\x6d\x8a\xa7\x41\xde\x68\x76\x03\x32\x82\xe4\x8b\x35\x5d\x48\x24\x0e\x60\x83\xc4\xf1\xdb\xa4\xb8\xcd\xbc\xd2\xf3\x88\x9d\xd7\x3f\xcd\x01\x6c\x6d\xad\xbc\xac\xb1\x7f\x51\xd3\x3f\x90\x9b\xb8\xee\xc4\x54\xe5\x68\xfc\x0e\x95\x10\x14\x70\x49\x90\x84\xd0\xae\xe6\x10\x8f\x95\x6a\x33\xed\xd0\xae\x72\x14\xde\x58\x4c\x7a\x3d\xee\xd4\xe8\x54\x70\x7e\x63\xdc\x11\xf4\xb3\x66\xa7\xa6\x74\x9d\x95\x1c\xc7\x59\xfc\xd3\x22\x5a\x1a\x4d\x7d\x31\x27\x05\x71\xb6\x11\x55\x25\x6d\xe0\xa6\x54\xa4\x8d\x66\x2f\x8a\xe2\xca\x8a\xe4\x4e\xe2\xce\x45\x1f\x2e\xd4\x03\xf2\xcf\xaf\x5f\xfd\x20\xc4\xea\xbd\x06\xb3\x9d\xc2\x71\xe3\x5f\xd3\xa5\x82\x2c\x45\xf5\x58\x23\xd8\xfd\xbf\x14\x8a\x30\x2a\x92\xbc\x25\xf0\xd5\xc2\xf3\x7f\x3d\x7d\xfb\xc6\xc8\xc2\x8b\xc4\x41\x28\xf9\x2c\xe0\x4e\x9e\xa4\xeb\x8c\x12\x36\x25\x18\xbb\x18\x97\x4d\xd1\xb7\xb3\x47\xd2\xd9\x69\x51\xd0\x4b\x89\x7e\x36\x95\xab\x9b\x1a\xa4\x32\x85\x29\xad\xe5\x1c\xc6\xb8\xea\xe5\xf6\x1e\x28\xa8\xe9\x30\x13\xeb\xa9\xa1\xb1\x3b\x12\xd2\xa2\x2a\xc4\x61\xa4\x63\xac\x25\x91\xdc\xc8\x07\xb6\xa7\x07\xd1\x8c\x92\x45\x16\x2d\xd3\x9b\xe8\x82\xd8\x2d\xd4\x02\x39\x9f\x06\xbe\x6b\x18\xc7\xea\xac\x9a\x4e\xab\x18\xf6\x51\xce\xa3\x79\x5a\x44\x17\x84\xb0\x48\x90\xe5\x8a\x48\x88\xb8\xa6\x62\x9e\x44\x3f\xe6\x6b\xdb\x6d\xb1\x56\x08\x39\x12\x79\x94\x46\x0f\xe4\xe9\x5d\x17\x24\x8b\x32\xb2\x5a\x8b\x9b\x07\x51\x2a\x44\x3a\xfd\x64\x06\x55\xaa\x2d\x24\xf5\xe8\x27\x9e\xf8\xe8\xce\xa1\x9e\x35\x17\xc6\x20\xaa\x68\x96\xd2\x85\x19\x5d\xa4\xe9\xf0\xe8\x41\xdc\x2f\x0c\xd9\x2f\x21\xa1\x1f\x3f\x88\x80\x5e\x47\x99\x95\xcb\x6f\x55\xc4\x07\x97\x7e\xfc\x00\xfa\x63\x95\xc7\x35\xfe\xfd\xc9\x59\x8c\xf2\x7e\x7c\xe4\x23\x35\x1c\xf7\x03\xc6\x94\xf6\x1d\xaf\xcb\x40\x09\xb2\x85\xbc\x6c\xf4\xcd\xda\x76\xea\xe8\x59\xb2\x95\x7f\xdf\xcd\xfb\x5f\x8f\x19\xf8\x33\x2e\xde\x2f\xbd\x75\xf5\x95\xfb\x73\xae\x4b\x14\xcf\x33\x75\xfb\xfc\x82\x37\x62\x17\x47\xf2\x6e\x1e\x63\xc5\x1a\xf9\x02\x62\x4e\x2d\x91\x12\x5b\x4d\xd3\xc5\x3c\x2f\xc4\xe8\xd1\xc1\x60\x60\x96\xc6\x69\x2e\x42\x34\x0f\x8b\xa3\xe6\x99\x1a\xfd\xcf\x84\xba\x7f\x66\x2a\xef\x1f\x09\x65\x16\x14\x34\xe5\x93\xae\xe4\x1a\xa5\x8b\xf3\x15\xcf\x97\x2b\xf1\x8b\x42\xa1\x61\x20\x76\x49\xd2\xaa\xec\x0e\xa0\xed\x7a\xc4\xde\x09\xb4\x76\x52\xef\xd4\x9c\xc2\x9d\xd7\x8a\xc8\x85\x58\x8b\xfc\xef\x87\xf7\x6f\x07\xbf\x26\xbc\xb7\x7d\x06\xfe\x53\x81\x7c\x7b\xf8\x41\x2e\x88\x2e\x46\x99\x02\xf9\x75\x5a\x34\x25\xdb\x86\xc5\xf3\x5f\xf7\x19\x6a\xbd\x6d\xde\x5b\xe0\xf2\x9f\xba\x2b\x76\xb4\xe6\x20\x2b\x7a\xa6\x7b\xcd\x6a\x65\x62\x88\xd4\x7b\xe6\x7d\x2d\x79\xd1\xc5\xde\x31\xef\x99\x46\x13\x21\xa6\xf1\xdd\x4f\xa8\x46\x97\xe0\xee\x17\x8e\x01\x90\x49\xf8\xa1\xe3\x24\x19\x76\x8b\xb4\x5d\x29\xfc\x02\x1a\xe8\xcb\x89\x9f\x10\x37\xf2\x97\xd8\x6c\x1e\xd8\xec\xe0\x23\xf9\x1f\xfd\x78\xfd\x1f\xf7\x0c\xdd\xd4\x90\x96\x91\xac\xa1\xce\x27\x5c\x0b\xe0\xf8\x3d\x00\x4e\xe3\xbd\x9f\x89\x6c\x50\xa7\x67\x9c\x7b\xeb\x91\x34\x1d\x58\xfc\x3a\xe6\x06\xc6\x86\xa0\x0d\xd8\x3a\x46\x28\x61\xa9\x20\x99\x69\x87\x2a\x97\x92\x2d\x96\x79\x8c\xe2\x16\xc9\x64\x68\x9d\x26\x6b\xdd\xa9\x2c\x19\x32\xa9\x52\x79\x42\x0e\xdc\xcf\xd7\x8a\x06\xb0\xf7\x4d\x37\x35\x36\x71\xf7\x5c\x5d\xd9\x59\xa9\x1f\xfd\x81\xdc\x74\x10\x28\x9a\x73\x73\x37\xd9\xa3\x65\x7d\x7a\x84\x1d\x8a\x5e\x36\xb3\xfb\xa2\xab\x71\x8b\x54\xec\x72\x65\xc5\x1c\xec\x56\x4d\xf8\xf6\x96\x34\x4c\x9c\x6a\xe7\x0a\xb2\xb9\x73\x2f\x45\xb9\x67\x42\x7e\x42\x53\x05\xc7\x2f\x1d\xd2\xb9\xa9\x3a\xaa\x95\xac\x78\xf8\xdb\x2d\x30\x3a\xe7\x6e\xb5\x87\x8f\xab\xc0\xf7\xcd\x1e\x08\x84\x0a\xdb\x37\x58\x89\xfa\x64\x35\x08\x8d\xe6\x1e\xfe\x9d\x74\x46\xbc\x1f\xef\x62\x0c\x08\x1e\x1b\xd9\xbd\x24\x26\x95\xce\xb7\x32\xc5\x9f\xe6\x0b\x14\xef\xef\xc7\xa8\x99\x2b\xc9\xcd\x56\xe2\x2a\x15\x73\x89\xb2\x27\x06\x15\xc5\x10\x5a\x6b\xe8\xbd\x21\xec\xf5\x00\xe9\xe3\x78\x3f\x86\x88\xf4\x6d\xe4\x00\x33\xba\x64\x2e\x96\x0b\xad\xa9\xa1\x16\x42\xa1\xfa\x7f\x93\x08\xe1\x56\xc7\x3e\xee\x4a\xaf\x1f\xb4\xba\x02\x54\xfb\xd0\x55\x5c\xba\x96\x35\x49\x85\x1b\x95\x7f\x8a\x9a\xb7\xa5\x11\x41\x75\x3f\x49\xca\xe0\xa4\xb2\xb0\x2c\x91\xbd\xa1\xda\x24\x88\xa7\x0f\x68\x4e\x63\x6c\xe0\xa1\x39\x55\x00\xed\xf2\x1d\xfd\x5c\xea\xe4\x17\x63\xf0\x36\x54\x17\x7d\xd6\xae\xf1\x5c\x82\x0a\xbc\x37\xdc\xc5\x98\x56\x86\xf0\x45\xfd\x30\xfc\x0f\xb8\x6c\xe9\x0c\x14\xbd\x9e\x71\x2c\xb3\x8b\x71\xda\x76\x5b\x76\x47\xe7\xf3\xb4\x88\x52\x16\x51\x36\xcd\xb9\x32\x34\xb1\x91\x3d\x54\x93\xd6\xd1\x99\x71\xbf\x7b\x41\xa2\xf8\x41\x3f\xed\x3f\x88\x91\x72\xa0\x46\x0b\xf9\x6d\xba\xef\x3f\x88\x1f\x84\xaf\xff\x67\x79\x46\x46\x19\x69\xb3\xe8\xc6\xf9\x04\x7e\x01\x51\x90\xde\x46\x14\x34\xbd\x8c\xff\xd7\x7a\x21\xde\x43\x1d\xaf\x39\x81\xd6\x1b\xd1\xaa\x58\xe9\x82\x5d\x2a\x79\xad\x3b\xbd\xe3\x86\x56\x8d\x9c\x2f\x52\x96\x69\xaa\x47\xbb\x56\xb6\xec\x90\x2f\x10\xad\x77\x72\x25\x38\x49\xb3\xf3\x6b\x4e\xf5\x69\x55\xfd\xbd\xd2\xdd\x75\x5c\xaf\x5e\x09\xc3\x48\x51\x63\xba\x8d\x9b\xe1\x15\x88\x51\x3c\x4b\x17\xc5\xaf\xa3\x95\x7c\x1b\xe4\x35\x83\x4d\xdc\x09\x79\xc3\x5f\x2f\x76\x49\x17\x70\xd9\xf0\x00\xa1\x99\xd8\xd5\xd8\xd3\x56\xff\xc1\x27\x5c\xa7\xc1\xef\xcf\x3a\x3d\xbe\xef\x2c\xa4\x95\x14\x77\x01\x89\xac\xe5\x75\x3e\x8b\x04\x0c\x87\x50\x7d\xa6\x7d\xf3\x4d\xd3\xc5\x22\x4a\x23\xed\x41\x4c\x62\x30\xa7\xea\x14\x7b\x2a\x7f\xb4\x6a\xdd\x57\x8a\x78\x4f\x66\x84\x13\x36\xb5\x6d\x2a\x9b\xb5\x79\x5a\xb0\x07\x42\x4b\x58\xac\xe1\x77\x41\xb2\x68\x2f\x32\x60\x50\x2b\x21\xfb\x27\x99\xbb\x6a\x76\xc5\x76\x1b\xeb\xe0\xee\x55\x10\x58\xd1\xeb\x55\x26\x90\x55\xea\x11\x19\x7d\xb9\x0e\x20\x22\x89\xb2\x8e\xb3\x36\x6f\x3a\x6a\xbd\x67\x64\x9c\xe3\x60\x09\x0f\xb4\xdd\xaa\x10\x00\x37\xcc\x38\x51\xb1\x4a\x69\xd4\x98\x3b\x91\xe4\xfc\x5c\x91\x5f\xe7\xe7\xdb\xad\x19\xe4\x25\x11\xef\xac\x73\x24\xe5\x48\x11\x86\xf5\xe2\xaa\x7b\x37\x91\x30\x87\xe3\xf6\x78\x62\xe4\xbc\x4a\xd5\xc1\x9f\xce\x40\x68\xad\x7a\x3d\x1d\x63\x0e\x8b\x30\x34\x9c\xca\xad\x89\xc8\xe7\x15\x37\x97\x96\x8a\x59\x45\xa8\x98\x13\x2e\x2f\x2b\x59\x5b\x99\xd8\xb9\xee\x90\x32\xa5\x8b\xfb\xb6\x07\x79\xbd\x74\x86\x6e\xed\xf5\xbc\xa8\xad\x68\xe3\x39\xd4\x1a\x99\xbd\x21\x88\xb0\xf5\x92\x28\xbc\x32\xda\x1d\x22\x89\xed\xf4\xef\x01\xf2\x71\x8e\xdc\xc4\x12\x22\xd1\xeb\x01\xd3\x47\x51\x5b\xd5\xa3\x60\xaa\x5a\x9b\x91\xb7\x27\x58\xc0\x12\x10\xa3\x92\xab\x83\x02\x22\x52\xaa\x08\x78\x41\xab\x02\xbe\x6e\xb9\x15\x21\x36\x52\x9f\x24\xa0\x75\xf1\x7b\x4b\x8e\x9d\xdb\xaf\xd4\x2a\x27\x37\xcd\x2d\x45\xc8\xd2\x5d\x91\x29\x8d\x0a\xbe\x0d\x66\xb0\x0e\x4a\xad\x90\x9a\x54\x64\xbe\xe7\x53\xa4\xd1\x5e\xe1\x06\xe0\x19\xd0\xa3\x58\xf0\x35\x51\x41\x97\x3a\x2c\xa5\x0b\x88\x0c\x71\x88\x31\xae\x42\x58\xdd\x62\x91\x00\x25\xb9\x65\xcd\x97\xc9\xa2\x20\x46\x2a\x9a\x83\xf8\x4d\x2e\xa2\x34\x52\xf8\x30\x32\x85\x6d\x44\xb4\xd4\xc4\xd7\x7a\x26\x11\x16\xd8\x68\x44\x1b\x92\x3d\xa6\xee\x3d\xe0\xef\xd0\x88\x94\x50\x09\x65\x65\x63\xe8\x56\x82\xc8\x04\xea\xc8\x8a\xc5\x1e\xf9\xac\xc8\xa0\xdb\x62\x79\xdc\x66\xc8\xe7\xc7\xe8\x7b\xaf\xaa\x3c\x3f\x7d\xe5\x9d\x07\xae\x03\x8d\x89\xa4\x16\x7c\x4d\x95\xc4\x2d\x1b\x50\x99\xda\xa1\x4e\x6b\x88\x68\xdf\xdb\x0d\x2c\x91\xdf\xaf\x0d\x4e\xb6\x39\x97\x98\x59\xa7\xfd\x6b\x5d\xed\x13\x7b\xde\x8d\x3a\x35\x77\xcd\x94\xc0\xa0\x5a\x42\x63\xb7\x12\x9c\x45\x81\xc3\xae\xa6\xef\x0c\x4e\x77\x97\x96\xe6\xaf\x76\xfb\x87\xfc\x41\x68\x6b\xe1\xd7\x79\x46\x16\x1d\xaf\x39\x54\x8b\xc3\xd1\xb1\x74\x56\x2d\x43\x3e\x7a\xe4\x42\x1d\xf1\x4e\xad\x63\x91\x4c\xe7\x64\xfa\xe9\x95\x52\x1e\x56\x0e\xd1\x47\xcd\x24\x54\x7d\x06\x1c\xee\x0c\x90\x08\x99\xcc\xb7\xde\x75\xf2\x24\x2b\xbc\xef\x1d\x54\x98\x28\xb9\x3e\x80\xc9\x54\xb9\xcd\xf6\xc7\xd7\xa5\xe0\x78\x8f\x28\x82\xff\xe3\xb7\xd4\x5f\x1b\xb7\xa9\xcd\x44\xe4\x27\x04\xfc\x6a\x75\xed\xac\xe1\x18\xf8\xec\x01\x1e\xda\x5b\x9f\x45\x10\x2a\xd0\x8f\x13\x5a\x1c\xfb\xbb\xa8\x78\x07\x2e\x94\x4b\xee\x74\xe8\x8f\xbc\x8b\xce\x84\xab\x00\x70\x04\x68\x92\x0a\x41\x96\x2b\x41\x3c\x4f\x6f\x98\xa0\xf4\x88\x19\x75\x92\xe7\xca\x70\x1f\x10\x38\xa2\xb7\x40\x9a\xe3\xf2\x34\x2a\x95\x10\xca\x55\xf2\x12\x47\x75\xe5\x7a\xa5\xa2\x12\xfb\x05\x62\x44\xc2\x50\xdb\x0c\x0d\xf7\x05\x54\xfb\xaf\x22\x7a\x09\x51\x20\x86\x52\xb9\x22\x4c\x90\xac\x32\x6e\x44\x9b\xca\x05\x49\x6d\x01\x7c\x7f\x00\x5d\xe6\xd9\x66\xba\x35\xe7\x01\xc6\xf6\xda\x4f\xa1\x19\xae\x05\x57\x8a\x77\x5c\x83\x8a\xdf\x7f\x4a\x16\x44\x92\x72\x20\x4e\x3a\x63\x30\x29\x4a\x97\xb0\xec\xd9\x9c\x2e\x32\xe0\xb5\x6e\x9d\x1d\x34\xa7\x50\x9b\x81\x21\x72\x00\x2c\x51\xe5\x36\xc0\x2f\x2b\xef\x4f\x8c\x71\xd7\xb8\xfe\x57\x6d\xf8\xd0\xf8\xd7\x0b\x38\x47\x68\x8b\x4e\x76\x3a\x40\xc5\x28\xb7\xff\xd3\x43\x8a\xe7\x60\x33\x10\x6e\xdf\xb8\x1a\x56\x9d\x45\x94\x45\x04\x2a\x02\x74\x9e\x16\x6f\xaf\x99\x1b\x26\x87\xd6\xb5\x6f\x71\x4d\xe5\x01\x26\x63\x3e\x81\x9b\x69\x5a\x90\xdd\xc1\x88\xe1\x78\x18\xef\xe8\x00\xe0\x2a\x69\x28\x93\x06\x36\xc9\x0c\x6f\xc4\x94\x03\xdc\x52\x68\x1a\x86\xf7\x63\x1c\xf7\x59\xe5\xe8\xdf\x32\xeb\x62\x58\x06\xbc\xb7\x13\x1d\x15\x7b\xbb\xfd\x7a\x30\x50\x56\x40\x3a\x5e\xb3\xfa\xde\xa9\xb9\xdd\x5e\x12\x7e\x49\xc0\x66\x41\x66\x62\x54\x4c\x39\x21\x26\xe6\xfc\xfe\xc1\x9e\xd8\x3f\x40\x22\x5f\xd9\x64\xdd\xc4\xfe\xc1\x1e\xdf\x3f\x40\xaa\xcc\x48\x20\x9d\x38\xe2\xa5\xc4\x25\x80\x6f\xb7\xf2\x2a\xdc\xf1\x0f\x9b\xf5\xe6\x23\xc9\x2c\xb9\xba\xac\x1b\xc2\xbb\xa0\xb9\xe6\xec\xc3\x3f\x06\xda\x3b\xc9\x97\x80\x6f\x17\xa6\x6b\xf8\x76\x0b\x85\x8a\x55\x59\x4d\x67\xe1\xb7\x18\x7f\x7f\x29\xab\x42\x43\x70\xd3\x1e\xd9\xc6\x1f\x8c\xfb\xa2\xba\x57\xb7\x5b\xd0\x5d\xd2\x8f\x54\x08\x21\xe2\x7f\x7f\xc8\x07\x73\x0f\xd6\x0f\xd4\xf9\x3b\x9e\x7f\xbe\x51\xe4\x03\xd2\x8e\x8d\xb5\x10\xaa\xf0\xbc\x17\xdf\xed\x53\xa0\x6e\x98\xae\x28\x66\x25\x2a\x23\x62\xbd\x52\x92\x24\xd5\x8b\xe7\x9b\x44\xd2\xe9\xb7\xcb\xaf\xfc\x01\x38\xb1\xc9\x0e\x49\x02\x9e\x76\x6b\x4e\x58\xb4\x14\x6b\xaa\xe3\xc5\xc7\xc6\x9a\x8c\x40\x64\x33\x1a\x7e\x84\x65\x89\x96\x97\x69\xad\x01\x2a\x87\x6f\xfc\x58\xda\xe5\xae\x83\x79\xcb\xbb\x99\x75\x26\x16\xb4\x7c\xcf\x83\xc9\x6e\xf7\x9b\x71\x80\x5b\x12\x0d\xb7\x16\xf7\x7e\x8e\x13\xb8\x49\x0d\xc1\x50\x88\x94\x8b\xb7\x2b\xc2\xe4\x63\x17\x84\x2d\x6d\x2d\xe9\xe3\x0e\x79\xa8\x98\xe7\xef\x4c\xc5\x81\xd0\x85\x83\x45\xfd\x47\xab\x1e\xc5\x8c\x32\x5a\xcc\xd5\x30\x10\xd1\x82\xc5\x16\x6d\x14\xa8\x95\xd2\x85\xab\x53\x23\xcb\x54\x44\x64\x12\xd6\xd6\xbd\x73\x37\x7e\x89\xe5\xcd\xfd\xe5\x7d\x21\x47\x70\xf7\xfa\x9a\x75\xd3\xb4\x61\xd7\xc2\xe5\xb5\x15\xd3\x2d\x23\x35\xd3\x5b\x16\x2c\xf7\x16\xcc\x55\xe9\x5e\xb1\x86\x37\xa6\xff\x84\x15\x33\xf8\xfd\x9e\x2b\xa6\x99\x2a\xc1\x15\x6b\x2e\x98\xbd\x38\xee\xbd\x5c\xc6\x51\xd2\x2d\xcb\x75\x2b\x85\x6d\x1c\x95\x86\x9d\x8d\xdc\x71\xa3\x74\xdd\x27\xbc\xe6\xd1\xbf\xcd\x63\xeb\x70\x43\xd8\xbc\x4f\x9c\xf4\x4c\xb9\xc2\x00\xf6\x85\x55\xdb\x5a\x1d\xdf\x72\x37\x6f\x4b\x26\x5d\x78\xca\xb4\x19\x74\xf2\x81\xb2\xdd\x7f\x10\x21\x15\x25\xe9\x26\x5f\x47\xb3\x9c\x5f\x12\x65\x5c\x60\x83\x0a\x46\x54\x1c\xc5\xa6\xed\x31\x99\x28\x36\x6e\xc0\x3f\xbc\xeb\xc4\x75\x61\x1b\x17\xb9\x89\x7b\xa9\x64\x92\x26\xbc\x4e\xb4\x24\x62\x9e\x67\x49\x05\x78\x6d\xa0\x73\x6f\xb6\x4d\xe9\x88\xad\xfb\x78\x43\x10\x40\x0e\x14\x50\xc3\x98\xfb\xa5\xef\x5c\x45\xac\x8e\x38\x88\x73\x85\xcf\x76\x07\xd0\xe0\x2d\x0e\xe2\x99\x41\x1f\xfa\x58\x72\x10\x4f\x2d\x10\x87\x00\x2f\x48\xc6\x84\xe1\xaf\x5e\xe8\x1f\x10\x15\xdf\xc2\xa7\x5c\x70\x47\x16\x68\xc7\xa3\x36\xf4\xc9\x28\x5e\xb3\x1a\x37\x25\x46\x36\xaa\x42\x23\x63\xb4\x51\x36\x28\xaf\xb5\xcb\x3b\x4d\x9c\x34\xde\xf0\xa3\xdd\x21\x72\x17\xdc\x88\xea\xd5\xb5\x41\xcc\xbc\xca\xf1\x04\xa2\x0a\x53\xcb\x82\x6a\xcd\xc3\x25\xeb\xbc\x8a\x6c\xb4\x31\x54\xc2\x87\x82\xf0\x8e\x51\x0c\x50\x85\xd5\xec\x06\xca\xc6\x8d\xae\x04\x65\x97\xa3\x0d\x2d\xfe\x94\xf3\x4f\xf2\xe7\xee\x00\xd1\xe2\xad\x49\xdf\x1d\xa0\xea\x72\xac\xbd\x78\xd5\x2e\x55\x3e\xc1\xeb\x6c\x48\xeb\x0d\xce\x77\xd8\x1d\xd7\xd7\x55\x5e\x8d\xe6\x02\x6d\xbf\xa4\x4d\x9b\x8d\x25\x4f\xfc\xa5\xb0\xaf\xe6\x7a\x1f\xcd\xdd\x83\xa5\xb9\x81\x43\x93\x7c\x61\x33\xdc\x2c\x5f\xb4\x4c\x6b\x7e\xa1\x69\xb6\x1b\xfe\xe5\xe7\x69\xb6\xb5\x35\xcd\x67\x26\x5d\x7d\xb4\x40\xc3\xbb\x98\x5a\x8f\xa2\xbb\xfa\x44\xee\x8a\xfa\x75\xa7\x26\x1f\x5a\xde\xe5\xa8\x70\x0c\x26\x28\x2f\x5b\xca\xb3\x7e\x53\xad\x27\x50\xe3\x6d\x1d\x78\x58\xf7\x7a\x40\x8c\xf9\x44\xbd\x8d\xdb\xf2\xd8\x76\x54\x16\xd7\xe2\x21\xaf\x22\x46\xf2\x7e\x1f\xca\x79\x8d\x65\x53\x13\x23\x6c\x08\x86\x6f\xa9\x21\x50\x9e\x4e\x3f\x91\x6c\x6f\x99\xae\x8a\xbd\x94\x65\x7b\x05\x11\x9e\x3f\x9f\x65\xda\x64\x7f\xdc\x5e\x5e\x5e\xe9\x5f\x70\xa3\x7b\x41\x7e\x02\xee\x6f\x4f\x6f\x96\x17\xf9\xa2\xd7\x8b\x0b\xf5\xa3\x99\x91\x50\xa1\x9d\x19\x1f\x05\xa8\x19\x53\x92\x94\x41\x8b\x35\x5f\xd4\xdc\xea\x8e\x34\x82\x0d\xb9\xf4\x5d\xfb\xbb\x92\xea\x1c\xd9\xb1\x8d\x5c\x87\x50\xae\xf1\x3f\x56\x62\xef\xe0\x01\x0f\x9a\x10\x61\x98\x3e\x12\x26\x76\x58\x52\x49\x5f\xb1\xff\xb1\xdd\xee\x0e\x1b\xae\x5f\xf0\xee\x00\xc5\xea\x62\x8b\x29\x8b\x58\xaf\x07\x58\x62\xa5\xb5\x58\x5e\xd4\x5d\x57\x23\x4b\x3e\x91\x1b\xc4\x60\x59\x8d\x32\x6f\xf8\x53\x11\xbd\x1e\x05\x9e\x1c\x19\x09\x88\xb8\x4a\x43\x4a\x40\xeb\x2a\xa6\xf5\x8a\x20\xc5\xf1\x9a\x99\xc8\xdf\x95\xd8\xfb\x3d\x99\x2d\xc8\x54\xf4\x7a\xe6\x87\xa4\xe7\x8e\xbc\xdf\x77\xf2\xc1\xec\x12\x1e\xee\x9a\x49\x55\x91\xcc\xea\x47\x55\x87\x7c\x90\xe5\x9d\xa4\x1d\x10\xbc\x02\x04\xc2\x43\x78\xe8\xcc\x21\x55\x09\x49\xe6\xb9\x00\x9f\x95\x6a\x80\xd7\xda\x73\xa2\xfd\x61\xe6\x1c\x30\x54\xf1\x41\xa8\x1a\xbf\xfa\x57\xf7\xc7\xe1\x88\x26\x6a\x2b\x4a\x09\x5c\x72\x0e\xdb\xad\x0f\x63\xc5\x3f\x58\x29\x20\xfe\xbb\xb5\x00\xee\x96\xfb\xcf\xf5\x8b\xdb\xcd\x71\x5d\xb1\x01\xb3\x4a\xb4\xd5\x60\x98\x70\xc4\xd4\x6e\xa8\xb8\x6f\x76\xed\x57\x86\xb3\xe0\x0d\x64\x87\x63\x0b\x1f\x2e\x15\xb0\x4a\xd6\x83\xa8\x91\x55\x73\xcc\x6e\x17\x06\xd9\xf0\x68\x3e\xb8\x2f\x7c\xb4\x5d\x57\x75\xc1\x1c\x48\xd8\x09\xea\xb9\xf8\x78\xca\x0f\xaf\xff\xeb\xaa\xe2\x28\x70\x85\x23\x51\x0d\x7f\xea\xc5\x2d\x69\x23\xc9\xd7\xe9\xea\x48\x8e\xe4\x75\xba\x1a\xd5\xdc\xd3\x83\x69\xd3\x87\xac\x61\xd7\x13\xcd\xd7\x43\x7b\x43\x8c\xf1\x0b\x53\xc4\xa9\x26\x58\x10\xaf\xb4\x52\xc7\x2c\x15\xf4\x8a\x44\xd3\x3c\x23\x93\x18\x42\xeb\x85\x8d\xe8\x5b\x77\x27\x0c\xe6\xe4\x17\x04\x6e\xb7\xfa\xea\xd0\xe8\xe8\x70\xf3\xb4\x90\xc7\xdc\x31\xaa\x95\x3c\x15\xee\x68\x36\x1a\x91\xf8\xce\x43\xf9\xd5\x9d\x0d\x88\x07\x55\x01\x48\xac\x5e\x63\x9d\x07\x8a\xdc\x71\x9a\xd8\x97\xe9\xd4\xcc\x75\x54\xb0\xfa\x2d\x35\xab\x58\x97\x33\x79\xbe\x8e\x5a\xc7\xa3\x03\x89\x8e\xe5\x02\xca\x9b\x65\xb5\x2e\xe6\xe6\xa8\x28\x64\x66\x02\x05\x92\x6b\xe0\xb6\xfc\x82\xb2\xcc\x14\x91\x0b\xe6\x0b\x54\xe7\x80\x22\x5e\xcd\x13\x22\x5a\x5a\xad\x29\xf5\xb6\xa8\x0e\x5e\x35\xe6\x4c\xbb\x9a\xf7\x6e\x04\xdc\xb8\x11\xb6\xdb\xdd\xd6\x3c\xcc\x0e\xee\x0e\xe5\x2e\xb7\x72\x93\x62\x9e\x2e\x6b\x45\x02\x47\x40\x31\x6f\x6d\xa1\xc1\x8e\xe0\x37\x76\xbb\x9f\xa7\xc2\xdb\xad\x06\x8c\xb7\x31\x8e\x2c\x8e\xc6\x13\xd4\x90\xb9\x43\xb4\x3b\x28\x35\x9f\xc6\x91\x2c\xbb\x43\x0f\xc1\xcc\x6b\xf1\x11\xe7\x38\xa8\x0c\xb5\xdd\x76\xf0\x43\x3c\xed\x28\x44\xf4\x85\xe2\xad\xea\xca\x23\xca\x56\xe1\x96\x8f\x82\x8a\x6e\x41\x3a\xeb\x3e\xea\x71\x1a\x14\x7f\x8e\x86\x9f\x26\x45\xff\x44\xd2\x4f\xaf\xd3\x15\x76\x09\xf2\xc3\x53\xf5\x5b\xd6\xf0\x52\xa1\xc3\xf5\x9a\x50\x4f\x80\xc2\x1d\x8f\x98\xf2\x58\x6c\x5a\xbe\x0e\x51\x87\x32\x40\xe9\x9c\xcb\x51\x34\xde\x7c\x22\x37\xa3\xf8\x92\x88\x18\xe9\x01\xb6\x97\xc2\xba\xc4\x2a\xd6\x4b\xf2\x07\x72\x03\xad\x3e\x21\x4a\xc1\x0a\x50\x1f\xf2\x75\x3b\x06\x51\x54\xe1\xdb\xe4\x4b\x4b\xf7\x33\x4f\x8b\x5f\xa4\x1f\xd5\xce\x2d\xfd\x10\x26\x38\x25\xed\xbe\x42\x5d\x3d\xcb\x17\x12\xb6\x95\x76\x82\xe6\xa1\xb5\xfb\x73\xed\x35\xfa\xac\x7a\xfc\x44\x6e\x7e\xb9\xee\x74\x63\x9d\x7d\xa9\x5e\x7e\xb9\xde\x6c\x73\x9d\xfd\x19\xf3\x88\xd0\xce\x7d\x69\x5f\xae\xa9\x5b\x36\xaf\x08\x01\xa3\x47\x49\x2b\x01\x15\xe5\xe2\xa6\x06\x24\x55\xf2\x7d\xc6\x51\x04\x01\x55\xd1\x42\x66\x14\xda\x05\xeb\x1d\xd0\xfa\xf7\x0e\xc3\x76\x72\xcb\x6a\xa8\xd0\x02\x81\xbd\xae\x84\x6c\xf6\x2e\xfa\x82\xd5\xf6\x3d\x04\xb1\x8e\x19\x29\xc2\x00\x7e\xe9\x8c\xcc\x70\x3b\x61\xa9\x50\xa6\x0b\xb5\x97\xcd\xcf\x85\x5b\xdd\x94\x69\x7e\x22\xef\x5d\x30\x05\xaf\xd3\x15\x34\x4a\xa8\x1e\x4a\x5d\x22\x47\x14\x05\x2f\x5d\xfd\x34\x3e\xf2\xb2\x46\x1c\xe8\x44\x68\x54\x07\xae\xf0\xb2\xea\x7d\xdc\x78\xc5\x4f\x3a\xb8\xad\x5e\x15\xd4\xa8\x82\x36\x3f\x63\x11\xae\xca\x52\x87\x40\xb9\xf9\xed\x62\xf8\x59\x17\xc3\xcf\xc3\x2d\xff\x40\xfc\xf1\x65\x38\xc2\x42\xbd\xa1\x23\xa0\x7c\xdc\x36\x48\x8b\x9b\x2f\xe0\x98\xa9\x59\xfd\xc6\x31\xfb\x8d\x63\xf6\x1b\xc7\xec\x37\x8e\xd9\x6f\x1c\xb3\xdf\x38\x66\xbf\x71\xcc\x7e\xe3\x98\xfd\xc6\x31\xfb\x8d\x63\xf6\x5f\x8b\x63\x76\x4a\x44\xc5\x31\x93\x1f\xff\x09\x1c\xb3\xdf\x38\x59\xbf\x71\xb2\xee\xe4\x64\xa5\x59\xf6\x2b\x33\x90\x54\x0f\xb7\x8c\xe0\x37\x2e\xd6\x3f\x25\x17\xeb\x94\x88\x06\x17\x4b\xa2\xb9\xdf\xb8\x58\xff\xc5\x91\xf5\xcf\x39\xef\xff\xb0\x33\xfd\xf3\x39\x4b\x1a\x1a\x5b\x57\xf0\x97\x70\x96\x14\xa7\xe8\x9e\x51\x65\xdd\xae\x8b\x7f\x0a\x7e\xc7\x7f\x67\xc6\xd6\xcf\xa0\xd3\xf4\x3b\xe6\x2c\xbd\xc4\x2d\xac\xa0\x9e\x6b\xb4\x44\xc4\x3b\x6e\x38\x43\xc4\x01\x2b\x9e\xdb\x8f\x0a\x69\x60\xd2\x46\x24\xd8\x94\x92\xbd\xb8\x6c\xf9\xe1\x11\x82\x75\x96\x0f\xaa\x74\xed\x51\x8a\x1d\xb2\x30\xb0\x84\x0a\x9c\x3e\x79\x78\x24\x46\xe6\x11\x4b\x8f\xee\x66\xe2\x08\xc4\xe0\x88\xaa\x47\x83\x79\xf0\xe3\x0e\xb4\x6c\x9e\x02\x0d\xbc\x6c\x52\x21\x0c\x6e\xa2\x7d\x3e\x64\x64\x9a\xf3\x54\x10\x58\xe0\x66\x92\x9b\xd6\x8e\x62\x5e\xd8\x53\xb2\xc6\xc4\xcc\x6a\x6f\x78\xb8\x7e\x8a\x07\x87\xeb\xbd\x3d\x08\x72\x4c\xc6\xeb\x09\xec\xf5\x40\x81\x81\x9c\x6c\x0e\x0a\x38\x4a\x9f\xca\x1f\xb2\x99\x02\x8e\xd4\x0f\x08\xb7\xdb\x8a\xe1\x91\x3e\x7d\xd8\xeb\x15\xbd\x5e\x18\x0e\x74\x3d\x54\x94\x88\x76\x7a\x9f\x69\xf0\x86\x7f\x59\xce\xa8\x43\x6e\xa5\xe1\x07\x21\xea\x9e\x99\x98\x20\x8a\x0d\xfe\xaf\x20\x24\x84\x35\xe5\xbb\x45\xa4\x97\xe7\x2a\xe7\xfc\xbc\xc2\xb3\x06\xc4\xee\x51\xc7\x00\x5e\x59\x4e\x10\x60\x4a\x7d\x15\xf6\x7a\x02\x78\x8f\x5c\xc4\x20\xa2\x2a\x4d\x5e\x5d\xa4\x04\x70\x87\x81\xb1\x31\xdc\x33\xc8\x73\x82\x3c\xfc\x2c\xcf\x98\xd7\x43\x6c\xee\x7e\x68\x5c\x00\x51\x0f\xec\x77\x6a\x67\x20\x37\x5e\x44\xa9\x3b\x23\x3b\xde\x71\x49\x4d\x88\xc1\x4d\x89\xd6\xb5\xdb\x37\x03\x04\x15\xb0\xdc\x09\x1d\xb7\xb5\xaa\xb4\xa8\x95\x9f\xbb\xf2\xcd\x03\xbb\xa8\xc8\x14\x35\xbf\x5e\x0f\x04\x1b\xc5\x01\x94\xa6\x17\x44\xb1\x5b\x50\x3c\x9e\xc4\xb0\x0c\x60\x84\x45\x77\x4d\x96\x0b\x3a\xbb\xb1\x10\xfa\x6c\x9e\xb2\x4b\xe2\x9a\xd2\x6b\x37\x55\xc6\x0c\x46\x3c\xb2\xe3\x31\x45\x3c\x9b\xcf\xa9\xe5\xf8\x38\xbe\x9c\x9c\x05\xc7\x86\x17\x86\xa6\x86\x11\xc4\xa1\xf5\x3c\xad\x07\x5d\xf1\x75\x5d\x45\x75\xb9\xa8\x8a\x14\x71\x55\x4d\x9d\x32\xc4\x7c\xde\x86\xea\x3a\x07\x7a\x0c\xb0\xf5\xf6\x4f\x5d\xce\xdd\x57\xae\xe2\xac\x7d\x91\x14\x47\xe9\x49\xdf\x47\x34\xf4\x8b\x3b\xca\xeb\xac\x50\x89\x6e\x63\xb4\xf1\x19\x5e\x83\x30\xd1\x1d\x09\x4f\xda\x5b\xde\xa3\x65\xb3\xfd\x5f\xda\xba\xa9\x76\x9f\x1e\x4e\x89\xb8\x67\xeb\xdc\xa3\xf1\xef\x3b\xf6\x9f\xd1\xba\xa9\xa6\xad\xdf\x14\xd4\x9e\x9f\x13\x79\x68\xce\xd3\xb5\xc8\xcf\xe9\x52\x82\xcb\xf9\x79\xed\x6c\x79\xa4\x98\x47\x88\x31\x94\xa2\x02\x8b\xf1\x60\x82\xd6\x58\x8c\x87\x13\xb4\xc0\x62\x7c\x30\x41\x33\x3c\x40\x19\x1e\x4f\x0e\x67\x4f\xec\xd5\x7a\x38\xeb\xf7\x61\x8a\x8b\xf1\x6c\x82\xe8\x38\x9d\xf4\x7a\x99\xb6\x9f\x97\x1f\xe3\x81\x24\x33\xc7\xe9\x04\x0f\x94\x15\x3f\x8b\x28\x8b\xd6\xf0\x5e\x72\x99\x35\x62\xca\xd9\xeb\x98\x4d\xf0\x7a\xcc\x26\x50\xb5\x30\xed\xf5\xa6\x40\xc0\xc3\xcc\x76\x0f\xb3\xa4\x98\xd3\x99\x00\x9e\x53\x99\xdc\xe7\x5f\xe6\x68\xb1\xdd\x8e\x27\x10\x71\x00\x7d\xa2\xae\x9a\x2e\x41\x02\x0f\x0e\xc5\x93\xdc\xb6\x29\x24\xe5\x59\x51\xa5\xf9\x58\x4c\x90\x8a\x4c\x5b\xe0\xe1\x61\xf1\xc4\x3a\x07\x3d\x2c\x2c\x85\xba\xc6\x7c\x5c\x4c\x76\x24\x46\xa4\xe3\xf5\x44\x61\x84\xdd\x21\x2c\x25\x6e\xc8\x93\x62\xb5\xa0\x53\x02\xc4\xde\x1e\x1a\x42\x44\x70\x0a\xd2\xa4\xc0\x5c\x2e\x8e\x7b\xcc\x90\x52\xa3\x99\x8d\xbc\x6b\x37\x83\xd1\xa0\x44\xb9\xf2\x7d\x50\x09\xcf\xf4\xed\xca\xc6\x62\x62\xf9\xd6\xf2\x77\x62\xd0\x80\x79\x56\xc9\x24\xbc\xa1\x23\x81\x16\xa3\xdd\x21\x32\x99\xa3\x4d\x59\xc5\xb9\x95\x95\x34\x9b\xde\xd6\x45\x1c\x55\xbf\x53\xe5\xfd\x54\xce\xd6\xa5\x95\x69\xb2\xc4\x04\xa5\xc9\x14\x33\x94\x26\x19\x6e\x62\x89\x34\x51\x42\x41\xe8\xd8\x82\x2d\xd8\x16\x21\x60\xe6\x25\x2c\x51\x9a\x70\x5c\x7f\x2a\xb4\x65\x82\x96\xb4\x35\x64\xad\xe5\xc4\x9e\xa5\x97\x5d\xa4\x8b\x7b\xc8\x7a\x65\x2d\x6a\x8a\x0d\xaa\xba\xed\x28\x76\x60\x34\x39\x5c\x81\x5b\x24\xcf\xb0\x27\x54\x64\xd8\x14\x10\x08\xd1\xb7\x3d\x51\x49\x39\xe8\x0c\x3c\x92\xb9\x15\x11\x69\x29\xf0\x5e\x4f\xfe\x2f\xa9\x7a\x6a\x88\x46\x1a\x82\x03\x45\x74\xc8\xe6\xd2\x84\x03\xde\x35\x74\x2e\x5f\x7d\xca\xee\xa7\x85\x3e\x8c\xb4\xae\x84\xe8\x40\x0d\xc8\xf8\x48\xf7\x64\x2e\xee\xfc\x6b\x63\xa0\x34\xc9\x80\xa4\xb9\xdc\x74\x3d\xbe\xf3\x58\x4c\x4a\x25\x02\x30\xb1\x62\x3d\xfe\xbf\x5c\xa3\x90\x27\x8f\xc6\x6c\x8f\xda\xa8\xcc\x19\x28\x96\x01\x3c\x47\x1c\x04\xcb\x71\x09\x14\xa7\x31\x12\x10\x09\xd9\x5d\x87\x7d\xed\xbd\xe5\xbf\xb2\x8d\x15\x8e\x63\x43\x3b\x19\x07\x1a\xd7\xe4\x62\x95\x4e\x3f\xfd\x6b\x91\xb3\x55\x00\x93\xde\xb3\x98\x44\x3e\x68\x8d\x0b\x8d\x93\xd4\x92\x15\x70\x47\x7f\x62\x81\x0a\x5c\x24\x85\xc2\x0f\xd0\x39\x3a\x59\xe0\xc1\xe1\xa2\xc2\xb0\x8b\x7e\x1f\x0a\x50\x8c\x17\x13\x4b\xe0\xac\xeb\x98\x0e\x8c\x0f\xbe\x45\x07\x06\xc5\x81\xcd\xc1\xb7\x2d\xf1\x0e\x07\xdf\xca\xb7\x9b\x39\xcf\x98\x83\x83\xef\x60\x89\x0e\xbe\x0b\xcb\x81\x10\x45\xf9\x4e\xe8\x1c\x5a\xef\x36\x92\x56\x4a\x56\x18\xb0\x0e\x7f\x37\xc7\x8b\x05\x88\xf5\x4b\x2a\x86\x70\xcc\xdc\x83\x65\x92\x14\x7c\x9a\x70\xa2\x1c\xf3\x80\xfd\x8f\xfb\xe3\x9f\xf6\x27\x5f\xfd\x6e\x1f\xc5\xfb\x31\xf4\x47\x08\x28\x3e\x27\x29\x3d\xcf\x50\xae\x7f\x70\xeb\x27\x5c\xad\xf0\xf1\x5a\xe4\x2f\xd5\xfa\x3e\xbf\x61\xe9\x92\x4e\x43\x14\x63\x0e\x62\xdd\xc6\x0d\x3b\x8f\xfb\x04\x96\x88\x82\xf8\x7f\x5f\x2e\xe8\x72\x49\xf8\xbe\xa2\x87\xb4\x3d\xe9\x24\xe4\x37\x96\x83\x6f\xbe\x55\x9c\x45\x59\xe9\xb3\x32\xdd\xdb\x9f\x15\xcb\xee\xe2\x0f\x07\xb6\xf8\x45\x5a\x90\xc7\x8f\xf6\xfe\x52\xdc\x52\x78\x68\x0b\x4f\x17\x74\x75\x91\xa7\x3c\xbb\xa5\xf0\x81\x2d\x3c\x5b\xa4\xe2\x96\x72\x0f\x6d\xb9\x25\x23\xcb\x9c\xd1\x42\xec\x2f\xd7\x0b\x41\xf7\xb4\xa9\x5c\x57\xb5\xaf\xdb\xd5\xb4\xa6\x50\x57\x05\xb7\x30\xec\x92\xa7\xab\x79\xa2\xfe\xbd\xa5\xfc\x77\xb6\xbc\x09\x31\x47\xb2\xbd\xa9\x22\xdd\x6f\xed\xe6\x91\x5e\x23\x45\x69\x53\x10\xdf\xa4\x59\x96\x76\x97\x1e\x3e\x34\x1e\xb9\xbe\xf5\x91\x87\x01\x1a\x0d\x42\xd8\x78\x54\x46\x7e\x6a\x86\x35\x98\x97\x25\x3c\x04\xbf\xf8\xc9\x87\xe6\x80\x4a\xea\x69\x7c\x2b\x71\x6d\x9e\x19\xe0\x00\xee\x54\xc7\xa0\x83\x56\xab\x70\xea\xd1\x78\x92\xe8\xe0\x11\x80\xc0\xd1\x78\x52\xf9\x6d\xa5\xec\x3c\xe5\x3c\xbd\xc1\x4c\x39\x4d\x91\xaf\x79\xae\x10\x66\x42\xd2\xe9\xdc\x4b\xcd\xab\xd4\xf3\xb4\xb8\x61\x53\x2f\x2f\xd5\x79\x53\xfd\x36\xf3\x32\x8a\x5a\x46\xab\xde\x5a\x67\x4b\x70\x15\x84\x79\x19\x54\x67\x50\xf6\x97\x7a\x7b\x0b\x9d\x2e\x17\xeb\x3c\x5d\x2c\xbc\x9c\xa9\x69\x8a\xd6\x52\x67\x36\x95\x65\x8d\xf2\x59\x95\xe3\xa5\xce\x75\xea\x22\x2d\xfc\x5e\x57\x3a\x95\xa5\x9f\x88\x5f\x78\xa9\x2f\x16\x9f\x03\xd8\xe6\x53\x12\x9f\x4f\x49\x67\xca\xe3\x14\xc6\xd8\x89\xa4\x07\x35\xbd\x2e\xcd\x19\x69\x23\xa9\x78\xac\xe9\x82\xe8\x58\xee\xd5\x24\xc6\x18\xb7\x6e\xad\xba\xe0\x99\xc0\xb2\x52\x5d\x18\x13\xe5\xe1\x5e\x29\x96\x58\x97\xf5\x0d\x2a\x82\x02\xa2\xc8\x70\x26\x7f\x99\xab\x66\xe8\x39\xf8\x05\xdc\x02\x10\xf3\x5f\xa6\x79\x63\xce\x88\xe1\xc1\x21\xab\x66\xcd\xfa\x7d\xc8\xb1\x50\xf4\x39\x62\xde\xed\xdf\x56\xf7\xa2\x33\xc0\x31\xdf\x6e\x59\xc2\xf2\x7c\x85\x76\x9b\x23\xe5\xc0\x2a\x18\x0c\x76\x76\x6b\x7a\x17\xb2\x79\x3a\x41\xd4\x3b\xf1\x02\xe5\xd5\xb3\xed\x88\x03\x01\x47\xfd\x3e\x7d\xea\xa6\x7f\xc4\x35\x45\x92\x9b\x28\xa2\x4c\x3b\xfd\x06\x0d\x05\x2b\xee\xbd\x76\xb0\x00\x10\x51\x3c\x38\xa4\xd5\xf4\x68\xbf\x0f\x99\x71\x04\x66\x06\xe1\x85\x65\xad\x29\x32\x21\x25\x9c\xd2\x13\x10\x00\xee\xc8\x79\xd7\xdf\xd1\x4c\x5e\xc0\xf2\x47\x2b\x1a\xb8\xa3\xe4\x95\x9a\x93\x03\x7f\xa0\xa0\xc1\x03\x01\xfd\x84\xd0\x00\x50\x69\xa0\x0c\x21\x44\x66\x7e\xf0\x8e\xb6\x6d\xc8\x7e\x55\xb8\xae\xdb\xd4\x58\x8b\xe0\x4a\x60\x0e\x18\x92\xcb\x10\x5a\x83\xa9\x06\x15\x81\x85\x87\x8d\x84\xc2\x46\xb7\xb0\xf6\x89\x89\xb7\x30\xe6\x13\x4f\x7b\xa9\xce\xae\xa9\x0f\x4d\xc2\x1f\x57\x80\x67\xeb\x86\x2a\x66\xf7\xdc\x5d\xb7\xad\xbd\x9e\xd9\xe8\xae\xf9\xcd\xef\x71\x14\xe8\x0c\xb8\xb3\x00\x37\x1c\xcb\x9f\xda\xbd\x5c\xd9\x3e\x19\x2b\x9f\xc7\x3f\xae\xd8\xb9\x93\xaa\xc8\xb2\x2a\xe2\x63\x78\xe7\x8c\x4e\xd9\xca\xa3\x7b\x5d\x28\xc3\xaf\xe5\xfc\x39\x18\x84\x2f\x96\x8a\x29\xa6\xa4\xb4\xca\x2a\x9f\x16\xe7\x8b\x94\x5d\xae\xd3\x4b\x25\x49\x51\x69\x0b\x7a\xc1\x53\x7e\x13\x22\xb4\xb8\x76\xc9\x4c\x0b\x72\x6e\x4a\x29\x37\xca\xb2\x08\x2c\x4d\xed\x46\x81\x50\x33\x14\x88\xe4\xbc\x10\x64\x55\x40\x75\x1b\xd5\xdd\xbd\xc8\x27\x47\x55\x4b\xb1\x28\xd0\xda\x0f\x67\xdb\xaa\xc4\x2a\xb9\x04\xce\x41\x35\x48\x20\x20\x62\xc6\x1d\x0a\x65\xc4\xb5\x55\x1a\xfe\x1b\x29\x77\x42\x4e\x7b\xcc\x03\x5b\xe9\xed\x5d\x9e\x7c\x5e\x81\xf8\xa7\xfd\xed\xfe\xef\x62\x14\x5f\xc6\x12\xbd\x7a\x39\xfb\x3f\x81\xa3\xd1\xc7\x9f\xe0\xd1\xbe\xe7\x48\xbd\x72\x78\xed\x08\x60\x8e\xe2\xb8\xfa\x62\x28\x56\xf5\x3e\x16\xf0\x2b\xe5\x3e\xe7\xe3\xc7\xa2\x1f\xc3\x72\xa7\xb6\x82\xd5\xa8\x78\x5d\xb3\x50\x9d\xa4\x56\xc8\x90\x3f\x90\x9b\xeb\x9c\x67\x51\xfc\xa0\xcf\xfb\x0f\x62\x15\x23\x84\xe5\x46\x7b\x50\x79\x5f\x58\x48\x7a\x2c\xa2\x4c\xe4\xd1\x03\xd9\xab\xe7\xac\x47\x36\x59\xd6\xe0\xac\x01\x63\x01\x80\xb2\x32\xff\x16\x0a\x93\x18\xcc\x97\xfd\xc1\x8d\x7f\xc3\x8a\x90\x03\x25\x2b\xff\x6b\x61\xbe\xa6\x80\x67\x6f\x08\xc7\x83\x09\xa2\xed\x92\x83\x76\xd9\x03\xb8\xe3\x44\xcb\x88\x42\xc4\x7a\x3d\xe5\x8d\x5b\xf7\xbe\x91\x97\xd4\x48\x20\x96\xa7\xfc\xb2\x08\x89\xe5\x02\x6f\x53\x59\x1d\x29\x22\xe8\x5c\x55\x37\x97\x90\x80\x3a\x71\xce\x73\x46\xff\x46\x46\x1c\xd1\xe2\xdc\x56\xef\x92\xf8\x59\x8a\xc0\x6a\xda\x29\xa2\x60\x53\xb6\xc9\x00\xa4\xe8\x95\x91\x77\x35\xf2\xce\x05\x3b\x08\x29\xd9\xba\xe3\x6b\x17\x83\x39\x4c\xd3\xa8\x2f\x09\xeb\x12\x51\x76\x95\x7f\x6a\xbb\xee\x74\xaf\x77\xdb\x0c\x87\x65\x29\x6f\x5c\x54\x97\xa8\x84\x88\x5a\x57\xd7\xd0\xd2\xef\xf2\xc5\x8d\x24\xf5\xb6\x5b\x20\xcf\xe7\x8a\x93\x69\x5a\xf7\x41\x5e\x22\xa2\x42\x44\x15\x78\x3c\x41\x24\x99\xce\xe9\x22\xe3\x84\xa9\x0a\xf6\x03\x8f\x27\xb7\xf0\x76\x16\x79\x9a\x91\xec\x9e\xec\x55\x92\x2c\x6e\xe5\xd9\xd2\xfb\x37\x44\xb5\xc3\xf7\xc6\x4c\xf1\x50\x62\x9c\xdb\x71\xf9\xa1\x4f\xff\x28\x72\x23\x78\xf0\x6a\x82\xb9\x9a\x9c\x62\x57\x09\x38\x2a\x35\x58\xef\x37\x2b\x03\x5a\x18\xa1\xc7\xbf\x7e\xf4\xf8\x14\xe2\x6d\xa5\x57\xf3\x94\x89\x7c\x69\x0f\xd5\x25\x11\xe7\xce\xb9\x5a\x60\x75\x28\x80\x47\xba\x83\x51\x0e\xe0\x91\xa9\x3d\x22\x00\x1e\x09\xa3\x99\x5c\xca\xc3\xc3\xf2\x8c\x8c\x88\xfc\x75\xc1\xf3\xeb\x82\xf0\x11\x95\x1f\xb6\x7c\x2e\x3f\x3e\xa5\x7c\x99\xb6\xfb\xe8\x9e\x93\xb7\x1a\xf6\x65\xa8\x1b\x39\x3f\x57\x8e\x76\x3c\xd5\x09\x0e\x0e\x06\x10\x71\x30\x1c\x40\xc5\xb3\xf8\x22\xdc\x18\x11\xe5\xb7\x4c\x62\xf3\xd5\xd9\x8b\x0f\x3f\xcc\xc5\x37\x0f\x1f\xce\x5f\x3f\xbe\x9e\x31\xbe\xfe\xfd\xab\xcb\xe3\xf5\xe3\x0f\x7f\xbd\xba\xf9\xe6\xf5\x1f\x57\xee\xda\x5d\xb9\x68\x80\x78\x63\xee\x52\xe5\x40\x16\x07\xb8\x72\x5a\x59\xff\x8e\x96\x8f\xaa\x36\x80\xf0\x9a\x87\x23\x79\x6b\x10\xd0\xe8\x15\x26\xe7\xa6\xac\xbd\xca\xcf\x1b\xfd\x93\x8a\x34\x12\x9a\x71\xd8\x68\x42\x5e\xdc\xf2\xf6\xf6\x7d\xbe\xd7\xda\x92\x6d\xdf\xff\x00\x78\x4c\x2a\x25\xa7\xe0\xe0\x91\x4f\xd9\x00\xda\x56\x4c\xd8\xcc\x8a\x11\x07\xdf\x40\x24\x11\xc7\x88\x83\xe1\x50\x85\xaa\x9a\x92\xa2\x18\x89\xb2\x44\x79\x57\x95\x47\xdf\xb9\x3a\x5f\x0f\xaa\x3a\x1c\x7c\x3d\x54\x18\xbf\xab\xde\xc1\xd0\xd5\x3b\x38\xa8\xd5\x3b\x90\xf5\x8c\xc0\xb0\x80\x49\x05\xbb\x00\x1e\xe5\x00\x8e\x58\x52\xc1\x36\x50\xb4\xa9\x85\x68\x00\x8f\x52\x5b\x40\x1e\x03\x00\x8f\x28\x80\xa3\x4d\x09\x1b\x10\x3a\x1c\x40\x1f\x2e\x25\xca\xbc\x1f\xa5\x38\xd0\x84\xe2\x01\x44\xda\x21\x5c\xeb\x4e\x67\xc0\x78\x1a\x2e\x08\xab\x49\x01\x3c\xfd\xbc\x68\x88\x71\x4b\x01\xe3\xc8\xd5\x02\x04\x6d\x4a\x38\x3a\x08\x14\xea\xf5\x68\xe2\xdd\x8f\x80\xc3\x46\x35\xc4\xe1\x08\x68\xb1\xac\xb9\xb4\x8d\x5e\x9d\x06\xa6\xdc\xe3\x3a\xd7\x2f\x26\x45\xde\x6f\x56\xa9\x10\x84\xb3\x91\x40\x36\xac\xf5\x88\x97\xba\x89\xd2\x84\x93\x68\xb0\x91\x01\x69\x11\x95\x8a\x99\xaa\x03\x31\x11\x94\xa5\x22\x1d\x89\x52\xfb\xe8\xe4\xa1\x23\x49\x1c\x8b\x22\xe8\xd7\xd2\xa3\x19\xd5\xad\x26\xc7\x07\x13\x41\x0a\x61\x9c\x67\x1a\x06\x4b\x47\x9c\x5f\x3b\x0f\x45\xb9\x7a\x67\x60\x63\xf5\x2f\x02\x98\x36\x2f\xd1\xdb\x37\xe7\xa7\xcf\x4e\xde\x1c\xbf\x7f\xf9\x76\x14\x9f\x9f\x7b\x9f\xe7\xe7\xb1\xca\x3d\x3b\x79\x67\x73\xce\x4e\xde\x99\xd4\x93\x3f\x9f\x3c\xfb\x70\x76\x62\x32\xcc\x97\xc9\x7b\x7e\xf2\xe2\xe5\x1b\x9b\xa5\x3f\xce\xcf\xe3\x06\xe9\xa8\xd6\x58\xc2\x0a\xf6\x86\x5a\xd6\xb5\x00\x5b\x1e\x27\x0b\x22\xce\xe8\x92\xe4\x6b\x51\xa7\x5d\x2d\x2e\x87\xf5\x1b\xa9\x55\x5f\xa9\x7a\xde\xb7\x85\xd4\x3c\x9e\x05\xc6\xb8\xea\xd8\xbe\xa4\xab\x14\x40\xd0\x40\x09\x63\x54\x49\xba\xdd\xee\x0a\xd8\xeb\xb5\x6b\x08\xaf\x15\xd4\xac\xee\x99\x1a\xe8\x14\x63\x26\xc0\xe1\xc6\xcf\xd2\x67\x5b\xd1\x93\xf5\x42\xf5\x02\xc6\x42\x75\x20\x69\xaf\x5d\x6f\xdb\x65\x53\x41\xdb\x9f\x6a\x38\x47\xd5\xcf\x11\xad\x6c\x15\x04\xa6\xa5\x1a\x48\xa8\xb6\xbf\xac\x47\xfe\xc7\x28\xf7\xac\x1d\x70\x2e\x09\x41\x2d\x56\x41\x6b\x49\xb1\x2d\xf0\xee\x10\x4d\xf1\xde\xd0\xd7\xcc\x80\x9b\x85\x52\x43\x02\x2a\xd7\x21\x8d\x35\x2e\x2c\x41\xba\x86\x23\x59\x09\xad\x1d\xae\xc8\x00\x6c\x9b\x8f\xec\x2e\x2c\xaa\x4a\xc1\x0c\xee\x2c\xf0\xee\xc0\xf1\x20\x04\x5e\x3b\x01\xef\xa1\xbe\xb3\x0a\xbc\x56\xa3\x3a\xec\xf7\xa7\x4f\xc4\x21\x2c\x7a\xbd\x62\x3c\x9d\xe8\xf0\x3c\x3b\xaa\xc3\xaa\x56\x59\x28\xc5\x1f\x3d\x83\x06\xb3\x85\x63\x8c\xfd\x45\xb0\xfb\xef\xa7\x19\x4b\x36\x55\x36\xdf\x6e\x77\x39\xec\xf5\x42\x75\x78\xad\x25\xd4\x6c\x42\xed\x88\x24\xff\xf5\x2a\x8b\x1a\xb0\x70\x1f\x58\xbc\x22\xf5\x6c\xa7\x04\x5a\x2a\x36\x42\x93\xd1\xa1\x90\xe9\x6c\xcd\xac\x2f\x42\xcd\x46\x16\x3e\xff\x02\x6e\x4a\x96\x30\xf2\x59\x9c\xd1\xe9\xa7\x80\xac\x4f\x9e\x3f\xf5\x00\x04\x81\x97\x9a\x12\x62\x36\x92\x9f\x0e\x61\xc5\x2b\x1a\x1e\xf2\x27\xcd\x02\xda\x85\xe0\x98\xef\x0d\x27\xd5\xc5\x31\xe6\x93\x9d\xb5\xc6\xee\xb2\x47\x3d\x7e\x88\x86\xbb\xd8\xed\xda\x76\xbb\xd8\x6e\x53\x90\xc1\x12\xcd\xbd\xd7\x28\x5f\xb3\x56\x60\xa3\xd9\x9a\xf9\x56\x4a\xd5\xdc\x61\x89\x58\x22\xa8\x58\x10\x1c\x9b\xab\x39\x46\x2c\x31\x3f\x25\xa9\xc6\x12\xc2\xae\x24\x81\xc6\x92\x94\x5f\x5e\x49\x40\x67\xc9\x15\xe1\xca\x2b\x63\x1c\x57\x1f\x85\x2e\x94\x33\xbc\x92\x65\xb3\xec\x15\x2d\x04\x61\x84\xab\xef\x9c\x4d\x89\xfe\x31\x9b\xa9\xbf\x3a\xea\x44\xad\x8c\x4e\x3a\x5e\x2c\x6c\x6a\xa1\x92\xc9\x92\x0a\xf5\x63\xc5\xc9\x8a\xb0\x7a\xbb\x26\xed\x2d\x9b\xd6\xdb\x5a\xb8\x26\x5a\xf7\xc4\x78\x22\xc7\x79\x41\x55\x04\xc7\xfa\x52\x35\x10\xac\x21\x6e\x6c\xd9\x88\x6a\x14\x5b\xac\x57\x12\xc3\x6b\xa7\x98\x2c\x99\x5e\x67\xed\x4e\xe2\xfd\x58\xe5\xcd\x33\xca\xef\xd5\x87\x2a\xd9\xd1\xc3\x7a\x99\x16\x9f\x02\x4a\xa9\x83\x00\x6d\x09\x82\x82\x95\x36\x9f\x5f\x5d\x55\x4e\xdb\x92\x3d\xc5\x83\x43\xb6\xb7\x67\xb9\xbd\x8a\xc9\x17\x27\xb1\xd2\x28\xb5\x4c\x5a\xc0\xd0\x10\x8e\xe2\xc4\x24\x83\x5a\x3a\x92\x50\x3c\xd2\x1a\x73\xb5\xe4\xbd\x3d\x58\x2a\x33\x57\x65\xb9\xcc\xf7\xf6\x0e\x39\x24\xc9\x9a\x69\xdd\x16\xd9\x5a\x88\xd7\x59\x69\x20\x48\x3a\x63\x21\x08\x87\x1e\xdd\x21\xbf\x81\x80\x1e\x13\x56\x82\x65\x9b\x77\x69\x19\x97\x88\x40\x17\x06\x97\x28\x8d\x1b\xc7\xba\x14\xd6\x49\x73\xed\xb9\xe9\x10\x6b\x1c\x23\x2a\xb1\x62\xde\xa2\xe9\xf6\x86\x87\xf9\x53\xbc\x37\xec\xf5\x76\xe9\x61\x6e\x97\x2e\xc5\xf9\x53\x3c\x38\xaa\xce\x71\x3e\x19\x11\x09\x22\x40\x21\x87\x96\x6a\x42\x1a\x56\x21\x3d\xb6\xf5\x23\x91\x47\x92\xdc\xb6\xa3\xd4\x76\xa1\x17\x9a\xc2\x65\x97\x45\x0c\x77\xd2\x5e\x0f\x08\x9c\xf6\xe3\xfd\xb8\x2f\x10\xc5\xf1\xbe\xdc\x9f\x34\x99\xce\x53\x7e\x2c\xc0\xc0\xa9\xe2\x00\x7a\x14\xef\xc7\xa3\x38\x86\x7d\x20\x30\x07\x0c\x08\xb5\x55\x02\xa8\xa0\xd3\x01\x42\x6c\x77\x57\x45\x9b\xde\xa5\xd0\x84\x08\xd9\x8f\x21\xdc\x6e\xe3\x24\x2e\x91\x48\x58\xce\x97\xe9\x82\xfe\x8d\x04\xbc\x2e\x8b\x84\x16\xc7\x17\x45\xbe\x58\xab\x98\x4b\x28\x35\xc3\xa2\x80\x20\x89\x28\xcd\x88\x88\x1a\x06\xb9\xe7\x30\xf2\xfa\x30\x72\x15\x46\x3c\x4e\x62\x88\x48\xaf\x97\x7a\xf1\xb3\x41\xee\x66\x4a\xe4\x48\xab\xb1\x04\x58\x34\x7a\x60\xa4\x5a\x2f\x59\x43\xf6\x73\x4f\xce\x5f\x8b\x2f\xe7\x87\x98\xb4\x4b\x24\x67\xd9\x12\x64\x04\x14\x55\xee\x09\x0d\x72\x78\x01\x50\x70\xe7\x08\xfa\x2b\x25\xe7\xc3\xc9\x42\x59\x2b\xd7\x9e\x36\x1e\x82\xa8\x3f\x76\x95\xd2\x18\x71\x04\x49\x1c\x9b\x58\xd2\x4a\x7f\xec\xb0\x3a\x75\x1e\x06\xe1\x4f\xf1\xc0\x95\xe4\x13\x79\xd0\x9d\xa7\x01\xf1\x94\x1f\x8d\xe5\x39\xd0\x32\x3a\x81\xf8\x9e\xe8\x0f\x61\x49\xb0\x3b\x7d\xf2\x3d\x62\x42\xa1\x0f\x55\xb0\x6e\x97\xc1\xbd\x0c\x77\xe0\x29\xae\x43\x8d\x7a\xd7\x01\x5e\x4b\x49\xf1\x6b\xb9\x54\x4b\xca\x00\xb5\xda\xf2\x56\x11\x0e\xa2\x02\xa7\x68\x8d\x07\x87\xeb\x27\xe9\xe1\x5a\x8b\x39\xe8\x78\x3d\xd9\xc5\x38\x1f\xaf\x27\x70\x53\xe0\xb5\x91\x72\x68\xbd\x15\x23\xf2\x59\xe3\xe2\x70\xfd\xc4\xb6\xa7\x6a\x2e\x34\x5e\xf1\x31\x19\x58\xe0\x85\xa5\xef\x72\x33\xeb\x02\xfa\x9b\x52\xaa\x50\x20\x2b\x09\xae\x2a\x68\xc9\x82\x2e\xa9\x20\x1c\xc7\xa3\x58\x9b\xc0\xa8\xe0\xa4\x77\xc2\x8b\x81\xf9\x18\xa2\x80\xa0\x34\x4e\x62\x8f\x44\xd4\x00\xfe\x2c\xcf\x88\x02\x72\xc4\xf1\xa3\x6f\x30\xc6\x02\x31\x49\x0c\x52\x79\xd7\xe7\xfe\x86\xe6\x4f\xf1\xf0\x70\x6f\x2f\x97\x2b\xa3\x4a\x82\x46\x1b\x39\x84\x9a\x32\xa5\x70\xc3\x70\x6e\x56\xcb\x44\x9b\xc4\xbb\x43\xb3\x16\xca\x9c\x9e\x1d\x71\x7d\x22\x93\x58\xde\x11\x3a\x49\x26\x58\x98\x18\xa8\x58\x3e\x22\xb9\x48\x0b\xd2\x98\x7a\x25\xa1\xa8\x31\xa4\xba\xd7\x62\xc7\xbc\xc6\xd4\x25\x67\xe6\xa6\x16\x42\xf8\xf3\x13\xf2\xca\xdb\xdb\x13\x6e\x7e\xb5\xc9\x89\x6a\x6e\x1c\x8b\xfe\xd0\x9f\x9d\x9e\x51\xaf\x07\xd4\xcd\xc0\x64\x36\xac\x4f\x36\xae\x26\xc6\xe5\xc4\x24\x75\x5b\x71\xb2\x78\x15\xf4\xff\x2b\x2b\x38\x84\x58\xf1\x2e\x01\xc7\x2e\x77\xe0\x62\xb5\xef\xb9\x52\x10\x71\xb9\x4a\xe4\xb3\x68\xc1\xc7\x6d\x0b\x52\x41\xc1\xde\xb0\xbe\x2e\x28\xc7\x03\x94\xfa\xeb\x92\xea\x75\xf1\x02\x9b\x7a\xcb\x92\xaa\x5b\xec\xd1\x37\xbb\x18\x17\xb0\xb9\x0e\x69\x7f\x08\xd1\xa3\xc7\xf2\x81\x79\xa4\xf2\xc4\x91\xc0\xe9\x48\xd2\xac\x79\xaf\x07\x72\x3c\x84\x23\x15\x0c\x5f\xa8\x2f\x79\x0d\x68\x60\xb1\xeb\x9c\x56\xeb\xec\x2d\xa7\xd8\x6e\x75\x4f\xdb\xed\x40\x3f\x30\xe4\x57\xde\xeb\xc9\x07\x2a\x93\x17\xb0\xfc\xc1\xfb\x43\x7f\xd9\x55\x6c\x28\x23\x7b\x8f\x2f\x24\x56\x8a\xd3\x8b\xb8\x5a\x78\x78\xd4\xc9\xeb\x37\x65\x14\xb3\xbf\x4b\x22\x20\x9e\x0c\xd4\xad\x6b\xd7\xad\x2f\x20\xaa\xd7\xbc\x9d\x73\x15\xe2\x55\x79\x9c\x83\x67\x73\xca\x88\x72\xdf\xff\xf5\x43\x88\x4e\xd8\xe5\x82\x16\x8a\xe3\xf6\x10\xa2\x17\x9c\x30\x15\xab\xe1\xeb\x47\x10\xfd\x9e\xf0\x65\xca\xe4\xc7\xd7\x10\x3d\x5f\xeb\x20\x0e\x5f\x3f\x86\xe8\x4d\xce\xaf\xc9\x25\xd5\x79\xdf\x40\xf4\x8e\xf2\x54\xa8\x06\xbf\x85\xe8\xc3\x27\x9e\x52\x66\x32\xbf\x83\xe8\x5d\x6e\xda\x7f\x3c\x80\xe8\x74\x95\x32\xf3\x35\x84\xe8\xfd\xba\x28\x74\xc1\xc7\x07\xb2\x20\x17\xeb\xcb\xb5\x1e\xda\xe3\x87\x4a\xa1\x5f\x05\x18\xd3\x43\x7b\x65\x24\xab\x23\x89\xab\xef\x27\xc4\xdd\xfc\x98\x66\x59\x3a\xe2\xe0\xd1\x01\x44\x2a\xae\xda\xf7\xeb\x62\xc4\xc1\x77\x10\xbd\x64\x82\xf0\x15\x27\x82\x70\xd9\xe0\x23\x88\x9e\xe5\x4c\x90\xcf\xb2\xb7\xaf\x21\x7a\xa5\xc5\xad\x23\x2d\x06\x7e\x4e\x55\x4f\x26\xe1\x1b\x88\x5e\x90\x54\xac\x39\x79\x41\x17\xe4\x94\xa4\x5c\x2d\xcc\xa3\x6f\x21\xaa\x25\x0c\xe5\xe4\x17\xa9\x98\xe5\x7c\x29\xf3\x21\x32\xb2\x48\x15\xf1\x4a\x16\x38\x80\x68\x9a\xb3\x2b\xc2\x05\xe1\x72\x5c\x8f\x1f\x41\xb4\x4a\x79\xa1\xbf\xbe\x19\x40\xb4\x5a\xac\x2f\x29\x53\x5f\x07\x10\x15\x73\xba\x54\xe5\x20\xd2\xda\xad\x2f\xbb\xf9\x55\x2c\x51\x93\xf7\x5f\x66\xf7\x24\x30\xea\x3c\x31\x76\x4f\x71\xf9\xa3\x87\x9a\x0b\xfa\xb5\xbc\x2d\xd5\x12\xa7\x9a\x35\x5a\xdc\xa6\x9c\xa5\x75\x7f\x1d\x4e\xcd\x13\xcb\x81\x03\x10\xad\xb5\x64\xdd\xd7\xba\x70\x34\x1b\x49\x94\x4a\x5c\xc3\x5f\x4b\x75\xca\x04\x59\xf5\x81\x29\x24\x4f\x6e\x1c\x3d\xd9\xdb\x8b\xe2\x3e\x49\x38\x49\x8b\x9c\xc1\x52\xe8\xe8\x6c\x4a\xb1\xad\x08\xb3\x20\x9d\x5a\x89\x30\xdc\x4e\xfd\xb6\xb5\xca\x78\x2d\xc2\x94\xab\xc9\x84\x79\x8f\xc6\x7a\x37\xe1\x29\xfb\x74\xbe\x4c\xa7\x3c\x2f\x64\x59\xdb\x96\x17\xd9\x15\xf3\xe4\x9a\x32\x46\x38\x52\x51\x0c\xe9\x0c\x70\xc5\x0c\x05\x0b\xd8\x8e\x2b\x73\x3a\x25\x2c\xe5\x34\x8f\xa6\xda\x2c\xec\x82\x44\xd4\x41\x76\xf6\x91\xc5\x7d\xee\xc6\x33\xb5\x14\xc2\x47\x16\x3b\x05\x03\x57\x1a\x37\x55\x6f\x04\x56\xcc\x01\x0a\xad\xd0\x03\x2a\x3b\x1d\x96\x81\x3c\xf1\x58\x9f\x68\x53\x98\x31\x8c\x08\x9a\x8a\xcf\x23\x5f\x38\x62\x4c\x8b\x0a\x3c\x53\x38\x73\x27\xb5\x9c\x61\xad\xf9\x06\x0a\x87\x48\x67\xb7\xdf\xc9\x46\x7c\xb7\xae\xc6\xab\x34\x1e\x80\x40\xca\x90\x7d\xa7\xd2\x6c\x1a\x15\x89\x2f\x3b\xd6\x90\xcf\xad\x36\x40\xbd\xba\xdf\x27\xab\xa2\x6d\xd7\xe7\xcd\xe0\x4e\x6d\xde\x67\x27\xef\xd0\x46\xd6\x36\xf3\x2d\xda\xf3\xd5\x90\xdb\xdc\x6b\xc5\x91\x3a\xd7\x7b\x0b\xe0\x8e\xc0\x6b\xe4\xcd\x07\x10\x54\x6c\xb7\x9b\x12\xa5\x76\x6b\xbc\xea\x21\xd9\xaf\x51\x15\x41\x99\x7c\x01\x09\xb3\x8c\x59\x18\x92\xb5\xde\x20\x18\xd7\x2d\x95\xfc\x7b\xc9\xd0\x93\x1a\xd4\xce\x75\xa4\x6c\x7a\xb1\x20\x76\xfc\xc2\x84\x0b\xba\x2f\x36\xf8\x46\x63\x03\x89\x2c\xf3\x6e\x25\x1a\x89\x00\xc8\x76\xab\xd6\xdb\x88\x12\x72\x00\x91\xaf\x53\xa3\xb9\xcd\x0d\xd3\x09\x4f\x6c\x92\x07\x84\x0d\x04\x6e\x52\x57\x50\x3e\xee\x2a\x59\x85\x27\x7a\x32\x82\x30\xcd\x88\x4c\x2e\x89\xd0\x73\x05\x34\x70\xce\x9e\xaf\x75\xa8\x42\x12\xa9\x32\xa3\x68\x1c\xf7\x69\x3f\x9e\xc4\x70\x47\x54\x8c\x34\x15\xc5\x4b\x4e\x33\x65\x19\xa0\x50\xb5\xcf\x51\x01\x2d\xf4\xb9\x3e\x42\xfb\xa9\x75\x2f\x83\x71\xe8\xe4\x1b\xf3\x9c\x66\x84\x09\x3a\xa3\x24\x3b\xbf\xb8\xb1\x01\xce\x34\x03\x2e\xb8\x65\xdd\x7d\x34\xc4\x2a\xa2\xc6\x12\x67\xe7\x1e\x48\x7e\xd1\x9e\x77\xee\xb1\xde\xd8\x7d\xf0\xd3\x76\xfc\xd3\xc7\x8f\x1f\x3f\x4e\xe0\x47\x90\x7c\x75\xf4\x11\xee\x5f\x22\x5e\x4f\x1f\xcb\xf4\xc9\xfe\x25\xa2\xf5\xf4\x8d\x4c\x2f\xf7\x2f\x51\x5e\x4f\xff\x98\xec\x5f\xa2\x14\xef\x8f\x7f\xfa\x78\xfd\xb1\x90\x15\x0b\x5f\xa1\x88\x18\xb9\x9b\x20\x45\x3b\x7a\x93\xc0\x3a\xc3\xa7\x9f\xf5\xa5\x50\x10\x01\x94\x89\x84\xde\x35\x9e\xaf\x57\x45\x58\x70\x8b\x99\x02\xd7\x22\x21\x9f\x89\xbc\x82\x0e\xf9\xa1\xe5\x72\x71\xab\x34\xea\x28\x6d\x07\x2b\x54\xd7\xb9\x5c\xe4\x17\xe9\xa2\xd7\x73\xb5\xcb\xe0\x30\xac\x3a\x30\x70\x88\x41\xe6\x04\x38\x76\x85\xd2\xd3\x7d\xc9\x32\xf2\x19\x0f\xfc\x1b\xeb\x9a\x8a\x79\xbe\x16\xe7\x95\x07\xb0\x00\xe7\x32\x2a\x92\x22\x5f\xf3\x29\x71\x8a\x55\x02\xc5\xbf\x1b\xc6\x35\xb5\xab\xda\x37\x6d\x7c\xe7\x8d\xef\x14\xc5\xb1\x1d\x33\xf9\xeb\x3a\x5d\x84\x61\x52\x6d\x90\x53\xf2\x52\x6f\xa5\xea\xd3\x54\xb7\x09\x41\x5e\x68\xdf\x8e\xbc\x1f\xef\xc7\x5f\x00\xae\x1a\x43\x3d\xd6\x18\x6a\xf8\x6d\x08\x7c\x8d\xea\x81\x7c\x26\xc4\xbf\x8b\x8d\x6a\xb0\x44\xd2\xda\x72\x15\xf8\x6a\x6d\xe0\x68\xe4\x43\x66\xdc\x17\xfd\x18\x7c\xfc\x78\xdd\x87\x5a\xd7\x0d\xd6\x61\x53\xe6\xa9\x32\xba\x48\x90\xde\xf1\x50\xf4\x34\x80\xe7\x98\xc1\x5d\x56\x67\x1d\xb0\x00\xea\x7a\x46\xf9\x74\xbd\x48\x79\xf4\x5c\x62\x52\x15\x33\x48\xa1\x2f\x6e\x03\xf3\x46\x31\xd4\x98\x4c\xc3\xed\x0c\x30\xc4\x2b\x6e\x0f\xf6\xe0\xa1\xcf\x9a\x9a\xb0\xd3\x5a\x30\x4b\x7d\x52\x1a\x3e\xd5\xdc\x75\xce\x30\x1f\x93\xc9\x91\xfc\xc7\xca\x6c\x47\x31\x48\xfa\x30\xb6\x9d\xad\x00\x83\x47\x6b\x8b\x40\x99\xf6\x3f\xa2\x35\x38\xa1\xab\x52\x37\x10\xf6\xae\xb0\x80\xa2\xe0\xfe\x4f\x1f\xf7\xb7\x1f\xf7\x7f\xb7\x7f\xa9\x40\xd1\x97\xd8\x54\xec\x3f\x39\xa0\xb0\x92\x69\x6a\xf1\x43\x50\xc1\x34\xaa\xb8\x44\x05\x84\xf6\x8e\x95\x08\xa1\x61\xdc\xdf\x26\x28\x57\x40\xc0\x90\x5b\x0b\xb5\xc9\x77\x36\x34\x97\xb5\xbd\xd6\xb8\x32\x4d\x74\x0f\x09\x38\xf2\xf2\x96\x40\x92\x5e\xe3\x09\xd4\xf7\x37\x10\x70\x74\x65\x2f\x73\x37\xa9\xab\xda\xa4\xa0\x32\x1a\x00\x39\xba\x51\x8a\xa8\xae\xd4\x4d\x87\x00\xbe\x1f\x6f\x63\xa8\x51\x58\x1c\x43\xf7\xd6\x2f\x3b\xaf\x6f\xaa\xc0\x56\xee\xc1\x6d\x17\xad\x20\x7c\xa9\x00\x95\x68\xe8\xa4\x33\x40\x7b\x3d\xb9\x72\xc1\xf0\x8a\x29\xcb\xd2\x8b\x85\xae\x56\x58\x72\x58\x9e\x7b\xef\x85\xd5\x6a\x6d\x37\xb8\xbe\x21\x62\xcb\xdb\x98\x41\xd7\xfe\xf6\x45\x35\x79\xa8\xf8\x32\x18\xe3\x1b\x20\x60\x09\x28\x0a\x0d\xfb\x4f\x3c\x67\x97\x11\x5b\x2f\x2f\x08\x8f\xf2\x99\x37\xd4\x68\x96\x73\x7f\xb8\xee\x80\x08\xb8\xdd\xd2\xed\x16\x50\xac\xb6\x11\x49\xe0\xc5\x4e\x45\x23\x93\x54\xba\x37\x61\x06\xa8\xc1\xa0\x61\x1d\x28\x63\x65\x90\x9c\xaf\x38\x99\xd1\xcf\x00\xee\x62\x4d\xba\xba\x84\x00\x3e\xd1\x4b\xab\x5a\x8a\x32\xfb\x32\xa6\xa4\x88\xe4\x35\x13\x65\x74\xa6\xbc\x73\x8a\x48\x37\x41\x8a\x7a\xf4\x54\x89\x50\x9d\xfe\x92\x72\xb0\x63\x3e\xf8\x2d\x8a\x52\xee\x04\x35\x09\x3d\xb9\xfc\x6b\xab\x90\x4c\x90\x70\xca\x20\x8e\xea\x43\xfe\x7c\x02\xb7\x9e\xbd\xe5\x95\x75\x4f\xa7\x72\x16\x87\x8a\xb3\x3c\x16\x13\x77\xa1\x29\x90\x0b\xbe\x5a\x32\x8f\xa2\x58\x01\x0e\x8f\xdc\xfe\x2c\x00\x47\x4c\xed\x9b\xb7\x49\x4b\x39\xf5\x91\x2b\xc3\x5b\x79\x5f\xaa\x4a\xec\x03\xa5\x70\x42\xed\x7b\x5e\x8b\x8f\xe5\xb5\xc8\x94\xaa\x28\xca\x31\x4b\x66\x85\x79\xc8\x77\xf6\xa4\x6e\xc7\xfd\xe4\xab\xfd\x8e\x85\x34\x6a\xf0\x85\x90\x98\x45\xfb\x2c\x53\x6a\xb8\x2e\x3d\xb0\x2b\xa9\x77\xde\xd2\x5b\x30\xaa\x7d\xb6\x48\xa0\x72\xa4\xed\x4c\xa3\xb7\x9d\x36\x5f\xd7\xb5\xce\xf4\x43\x5d\x55\x56\x2e\x4d\x61\x89\x58\xa8\xe8\x5a\x16\x74\x2d\x2f\x60\x89\x82\x44\x4c\xbd\xd8\xf4\x4b\xc7\xae\x89\xf9\xa0\xe7\x8f\x3c\x21\x9f\x69\x21\x8a\x53\xf9\x5e\x26\xf0\x28\x05\x79\xc2\x49\x9a\x65\x94\x9b\xa4\x10\xc7\xa1\xea\x87\xea\x6b\xde\xc4\xba\x1e\xa5\x92\xa4\x0a\x39\x0a\xd9\x9d\x6a\xdd\xe8\xf0\x18\x0a\x91\x0a\xd3\x5d\x42\x8b\xe7\x94\x2b\x7b\xd5\x1b\xa5\xac\x1c\x5e\x61\xb3\x21\xe1\xb8\xda\xd5\xed\x21\xa0\xbb\x63\x9b\x4f\x8d\xa6\xe9\x9e\x91\x7e\x04\x95\x72\xfe\x89\x7d\x49\x69\x7f\xbe\x3c\x84\x9a\x24\xfe\x02\x46\x75\x45\x59\x82\x91\x6b\xa7\xde\x0e\x62\xaf\x54\x0c\x01\xac\xd4\x87\xee\x72\xbc\xa4\x95\x75\x6b\x7e\x97\x84\x31\xe1\x84\x50\x89\x09\xcc\x47\xe9\x99\x3e\xb7\xd1\x47\x50\x97\xba\x85\x53\x08\x56\xba\x9c\xbe\x05\x83\x7f\x08\x9c\x84\xce\x93\x66\x3a\xc1\xf1\xc7\x8f\xb1\x2f\x6a\x84\x65\xc3\x81\x95\xc1\x2d\x3a\x16\x33\xbf\x31\xde\x64\x54\x9a\xc3\xa1\x2a\x31\x07\xf1\xfe\x45\x5a\x90\xfd\x58\x69\x1f\xdb\x67\x54\x9a\x99\xfc\x14\xd4\x2b\x41\x33\x74\xa3\xbe\xfe\x89\xdc\x14\xa0\xa9\xe2\x2c\xa9\x24\x52\x98\x07\xa6\xab\x99\x28\xfe\xed\x07\x4e\x15\xcb\xc7\xa2\xbb\xda\x30\x93\x34\xcb\x5e\xd0\x05\x41\xb5\x54\x58\xee\xf8\xde\x8f\x6b\x3e\x8e\x19\xba\xd6\x51\x58\xdd\xc1\x1b\xc5\xfb\x31\xaa\x10\x43\x08\x72\xeb\x7d\xea\xb2\xea\x88\x7b\xd8\xe3\xee\x7a\x97\x44\x28\xc6\x38\x53\x47\x14\x59\x3c\x10\xa8\xb8\xf1\xf0\x42\xc8\x57\x4c\xad\x59\x1f\x87\x10\x68\x5c\x22\x58\x5f\x92\x72\x80\x8a\x93\x5e\xef\xc8\x7a\x77\x5f\x8b\xd9\xb7\x71\xc3\x93\xbb\xa1\x4d\xce\xe6\xb4\x88\x66\x7a\x6b\x6d\x0b\x00\x46\xc5\x9c\x2e\xa3\x2c\x27\x35\xfd\x97\x28\x57\xee\xaf\xc5\x3c\x65\x91\x6c\x32\x22\x6c\x9a\x67\x94\x5d\x26\x26\x9e\x77\x73\xc4\xb2\xc1\x20\xcd\x2a\x33\xaa\xe6\xd5\x4a\x8f\xa2\xb8\xdf\x62\x2b\x48\x70\x73\x43\x53\x2a\x64\xf6\xc9\xd5\x00\x68\x6d\xa7\xb1\x29\xcb\x1d\xda\x05\x12\x14\x19\x28\x1a\xf9\xc4\x1c\xc7\x02\x70\x03\xde\xaa\x91\x31\x9f\x60\x9a\x9c\xfd\xf8\xee\xe4\xfc\xc5\xcb\x57\x27\x3b\xd6\xcc\xc5\xc8\x80\x01\x37\xf0\x9b\x66\x59\xb5\x21\x0c\x96\xc8\x4f\xb8\x77\x17\xcf\x5f\xbe\x3f\x79\x76\xf6\xf6\xfd\x8f\xa1\x7e\x98\x36\xa6\x08\x77\xa7\x57\x37\x88\x80\xb1\x50\x0c\x4e\x4d\x73\x19\x20\x36\xcd\xe8\xfe\xc9\x04\x63\x7f\x92\xb2\xb5\xc0\xd8\x7f\x6e\x93\x6e\x52\xa5\x39\x70\x77\x35\xa9\x9a\x68\x06\x04\x96\x87\xa7\x3a\x4b\xa3\x06\x05\xbe\x6b\xcc\x07\xab\x45\xe1\x01\x38\x7b\x93\x8b\x28\x8d\x32\x37\xb5\x28\xee\x57\x0f\x75\xb3\x2f\x3e\xc6\xaa\x46\x03\xad\x5a\x53\x90\xeb\xa7\x37\xa6\xda\x2c\x21\xdf\x2d\x56\xc5\x1b\x26\xcb\x74\x15\xac\x47\x9c\x3c\x5d\x2b\x5d\x97\x25\xf2\x76\x01\x0f\x50\x73\x01\xf1\x30\x68\x20\xa8\x59\x54\x0d\x04\x87\x05\x0a\xa6\xbf\xd3\x54\x32\xb6\x73\x93\x1f\x2f\x78\xbe\xfc\x3e\xd5\x06\x8a\x2a\x5d\x8e\xeb\x03\xa7\x56\x11\xd3\x7c\xde\x5a\x95\xc0\x72\x27\xef\x3a\x6c\x39\x6a\x14\x1f\x85\xc8\xfe\xf8\x27\x2d\x5f\x32\xac\x87\xf1\xde\xc7\xfd\x8f\x1f\x7f\xfa\xdd\x57\xfd\xa3\x04\xc0\xed\xf8\xe3\x64\x53\x4e\xf6\x2f\x51\xfc\xf1\xe3\xef\x7a\xf5\x37\x91\xa1\x85\xb8\x72\xa9\xe2\x2e\x90\xb0\x2f\xf1\xd6\x46\x36\x30\x77\x7d\xb2\x15\x71\x15\xdc\x4c\x52\xbb\x89\x0d\x97\xa7\xdd\x4a\x78\x2b\x5c\xa3\x25\xba\x58\xd3\x45\xf6\x81\xd3\x51\x43\xa7\xc4\x1c\x8b\xdd\xdb\xb6\xd2\x0e\xb1\x0d\xef\xef\x52\x31\xb7\x4a\x8b\x94\x45\xa6\x7e\xfd\x00\x54\x48\xb6\x31\x83\x8e\xde\x6a\x10\x61\x31\x70\xda\x7e\xaf\x54\xf4\x83\xef\x40\xa7\x03\x3e\x52\x77\x65\x8d\xda\x4c\xe6\x06\x7d\x60\x97\x4a\xae\x8b\x26\x3e\xfe\xfc\xfa\xd5\x0f\x42\xac\xde\x93\xbf\xae\x49\x21\xdc\x79\x4e\xf2\x15\x61\xc0\x44\x88\x42\xbb\x43\x27\x7e\x93\x3f\x38\x29\x56\x39\x2b\xc8\x19\xf9\x2c\xca\x12\x29\xe1\x43\xc3\x74\xf0\xcb\x88\xb4\x4d\xa9\xc8\x4c\x49\xad\x0d\x87\x1e\x2d\x19\xb8\x62\x49\x44\xd8\x15\xe5\x39\x5b\xca\x57\x7e\xeb\x5a\x15\x73\xa2\xd4\xc8\xa2\xa5\xf2\x57\x84\x22\x2a\x1e\x14\xd1\x8a\xe7\x17\xe9\xc5\xe2\x26\xd2\x6c\x19\xb9\x8f\x46\x0f\x98\xce\x6e\x92\x58\x69\x71\x86\x02\x5a\x54\x64\xe1\x76\x1b\xcc\x37\x48\x2b\x44\x0b\xd4\xc6\x11\x91\xe5\x7a\x91\x6a\xb6\xa1\x1d\xb2\xb1\xac\x8b\xe8\x72\xb5\x20\x72\x36\x2a\xbf\x88\xf2\x59\x64\x24\xc3\x99\x63\x06\x15\x35\x55\xd2\xd0\x52\x87\xad\xc8\xfd\x77\xb3\x96\x11\xc5\x46\xe5\x22\x46\x9b\x99\xd6\x23\x18\xc5\xe3\x17\xb3\x89\xfe\x1d\x23\x27\x4f\x8d\xc1\xd1\x68\x7c\x5a\x4c\xcc\xf7\xd6\xfb\x1d\x8d\xdf\xe6\x93\xb5\x58\x50\x46\xa0\x24\x04\x53\x39\x83\x42\xd7\x38\x21\x13\xf3\xbd\x1d\xff\xe9\x7a\x32\x27\x5c\x96\x59\x11\xa5\x66\xac\x8b\xbc\x5b\x4d\xf4\xe7\x76\x7c\x26\x26\x79\x96\xc3\x18\xe5\x6c\x71\xa3\x73\xdf\xe6\x13\xb6\xb8\x81\x31\xba\x48\xa7\x9f\x2e\x79\xbe\x66\xd9\x28\x1e\x7f\x7f\x31\x71\x9f\x31\xba\xa4\x57\x84\xe9\xe2\xbf\xbf\x9c\xc8\x0f\xd5\x19\x15\xf3\xed\xf8\x38\x9d\xb0\x6c\x2b\x2b\xac\xc5\x56\x0d\x67\x4a\x56\x02\xc6\xe8\x7a\x6e\xeb\xa8\x71\xb1\xed\xf8\x25\x9d\xcc\xea\x15\x60\x8c\x84\x2b\x76\x26\x74\x31\xd9\xc6\x8a\x4c\x45\xab\xa8\xb6\x7b\x1f\x8d\x63\x35\x9e\x18\xc5\xb2\x8b\x18\xc5\xb2\x89\x78\x52\xde\xcf\xce\x70\x23\x38\x5d\x86\xb1\xad\xc7\x48\x2e\xfa\xdb\x8f\x45\xdf\xb2\x92\x11\xbf\x47\x25\xbf\x3c\x2d\xbe\x5f\xa4\xec\x53\xa0\x86\x6c\xfb\xab\xdf\xed\x5f\x3a\x5c\x8d\x68\xf1\x26\x17\x5d\xc5\x2d\xad\xa0\xf2\x75\x71\x96\x59\xd8\x0d\xe0\x9f\xfd\x9f\xc0\xc7\xe2\x2b\xb8\x6f\x85\x4c\x9e\xae\x98\x18\x0f\x26\x4e\xdf\x7f\xf0\xa5\x92\x93\x03\x2d\x38\x39\x78\xa4\x55\x3d\x86\x9d\x4a\x1e\xd6\x7e\xa9\xc0\x1b\xeb\x1e\x61\x94\x5a\x9f\x65\x68\x41\x66\xe2\x9d\x5c\xaf\x79\xbe\xc8\x08\x7f\x36\x4f\xf9\x28\x1e\xc7\x88\xd3\xcb\x79\x3b\x63\x12\x97\x68\x8d\x01\xd1\x6e\xd1\x3c\x87\x0b\x47\x55\xdb\xa4\x1c\x91\xed\xb6\x80\x89\x4d\xd9\x6e\x0b\xf7\x1b\x2d\x94\x5e\x55\xab\x4f\x55\xa6\x9d\x8c\xa6\x98\x24\xa1\xa1\xc8\xf2\xa1\x74\x34\xab\xfb\x3a\xf8\xf8\xb1\xf8\x2a\xee\xaf\x2b\x2f\x0a\xb1\x39\xf4\x31\xec\xc7\x23\x99\x0b\x92\xaf\x60\x8c\x62\x1a\x43\x94\xdd\x55\xd7\xe2\x86\x50\xe5\xf9\x5d\x95\xab\xe3\x1c\xaa\xbe\xba\xab\xba\xc5\x32\xaa\xb2\xa9\xb4\xac\x57\x92\xcd\xfd\xce\x64\x5d\xb5\xdb\xfb\x5f\x31\x44\x37\x81\xe4\xcd\x43\x54\xc6\x10\x5d\x36\x1a\x93\x79\xf0\x77\x31\x44\x17\x75\xb9\x99\xaa\x34\xfe\xf8\x71\xfb\xff\xfe\xef\xff\x99\x1c\xed\xc9\xda\x30\x86\xe8\xbc\xdd\xf2\xff\x06\xe3\x9f\xf0\x44\x37\x72\xdd\x9d\x8d\xf5\xb8\x3d\x26\xc5\x89\x0a\x90\xa0\x25\xb9\x28\xc5\xac\x3f\x54\xd7\x23\x9d\x01\x8a\x6f\x1c\xc5\xe2\x48\xef\x5d\x15\x90\xc9\x5a\x11\x28\xe1\x02\xbe\x6a\x14\xd3\xa9\xe7\xf6\x18\x56\x41\x94\xe6\x29\xcb\x16\x04\xc4\xc7\x8c\xe5\xfa\x14\xc7\xda\xd3\x72\x9e\x48\x1c\x03\xe8\x78\x38\x81\xc8\x39\x53\x44\x5a\x4d\x92\xe2\xeb\xbf\xaf\x29\x97\x74\x30\x81\x55\xa3\xb3\xee\x46\x5f\xd8\x0b\x4a\xb6\xe2\x2a\x64\xdd\x15\xac\x72\x52\xa3\xc6\xbc\xbb\xc6\xf7\xde\x0d\x53\xab\xb3\xea\xae\x73\x62\xc1\xd2\x15\xbe\xbc\xa5\x03\x89\x34\x65\xdb\x83\xaa\xed\x8b\xee\xe2\xcf\x53\x79\x4d\xd7\x46\xb2\xec\x2e\x2d\x89\x31\x57\xda\xb3\x33\x53\x94\x89\x48\x96\xa4\x28\xd2\x4b\x82\x63\x45\xa0\x44\x92\xce\x97\x64\x90\xbc\xc3\xa3\xb8\x9f\xf6\x1f\xa0\x28\x7e\xd0\x27\xfd\x07\x71\xf2\x91\xbd\xe5\xf4\x92\xb2\x74\x11\x11\x55\xf8\x3a\x2d\x46\xd1\x83\xbe\x6b\x04\x89\xb2\x34\xef\x18\x5e\xd4\xc4\x6b\xb4\x7a\x0e\x28\x80\x7f\x8b\x78\xd3\xf0\xae\x25\xbe\xdc\xff\xc8\x3f\xb2\xed\x47\xb6\xaf\xa5\x56\x5a\xca\x72\xa2\x1c\x73\x53\x20\x0c\x4e\x07\x10\x6e\xb7\xd5\x87\xa6\x9c\x4f\xdb\xca\x3c\x9b\xd2\x67\x6c\x11\xde\x30\x2e\x56\xfe\x68\xb8\x29\xb3\x66\xed\x52\x70\xc3\xda\x7e\x9c\x02\x9a\x8a\x30\xe4\xed\x46\x87\x6e\xd0\x7e\x36\x6b\xfa\x31\x35\xbd\x28\xf9\xe2\x26\x63\x91\x88\xfc\x55\x7e\x4d\xf8\x33\xf9\x00\x84\x6d\x27\x30\xa2\x1f\xcb\xe7\xc7\x9a\x11\x45\x7c\x90\x2c\x4a\x85\x7a\x64\x45\x82\x2e\x89\x23\x07\x37\x7a\xff\x47\xed\x16\xe5\x8d\xfa\xb6\x65\xe8\x81\xf4\x9b\xc0\x50\xff\x9f\x8d\x0b\x9c\x53\xb0\x51\xea\xa7\x54\x7b\xfb\xba\x50\xb7\xbf\xf9\x48\xdd\x71\x6e\x3c\x3c\x99\xb7\x82\x75\xfc\x2e\x1f\x0b\x22\x2d\xe6\x40\xf1\x02\x90\xd0\xa1\x13\x25\x3d\x64\x48\x4e\x6f\x57\x98\xc7\xc6\x50\x16\x88\x80\x21\xae\xde\x14\x9f\x61\x59\x91\xa3\xb9\x4f\x0f\xa6\xa5\x87\x2d\xb5\xab\x7c\x07\x79\xa0\x6a\x46\xcf\x90\x43\x98\xe8\x9e\x10\xd5\x4c\xdc\x14\xe7\x9a\xf1\xa4\xd7\xae\x65\x13\x2f\xb0\x48\xdc\x57\xc0\x4e\xbd\xae\x30\xcd\xb4\xa8\x81\x40\x7b\x14\x75\xf6\x76\xeb\x49\x00\x35\xdc\xfa\x9b\xa1\xa0\xa0\xfd\x6e\x38\x8e\xcc\x12\x69\x13\x18\xfb\x46\xc8\x19\x89\x72\x1e\x2d\x73\x4e\x22\xbb\x24\xbe\x55\x4c\x75\x30\x4a\xf4\xb9\x6d\xdc\xb3\x31\x2a\x60\x6a\x53\x1a\x47\x82\xce\x24\xa9\xb8\x6f\xed\xd7\xdb\x43\x7a\xc9\x94\x9e\x68\xe4\xc1\x41\x14\xf7\x05\xdc\x69\x83\x9c\x3b\x5a\xed\xf9\xba\xc7\x4b\x89\x8e\x5b\x2b\xa9\x37\x65\x3c\x41\xca\x3f\xcc\x5a\x6d\xe0\x3b\xb4\xa8\x81\x66\x1d\xf6\x52\xad\xcb\x64\xae\x11\x21\x4f\xdb\xfd\x80\x76\xd1\x05\xb4\x28\x96\xdd\xdc\x02\xbb\x0e\x14\xdb\xec\x17\xe3\x47\x4a\xf9\x50\xe4\x68\xea\xf6\xa5\x30\xda\x79\xb0\x3a\x6e\xa5\x0f\xc7\x41\xd9\x9c\x9e\xfe\x27\x20\xd0\xb4\xaa\xb7\x2e\x4b\x88\xa6\x9e\x66\x62\x37\x3c\x2e\x7e\x16\x3c\x36\xb5\x0f\x14\x60\x0c\x30\xc6\xd6\x28\x30\xc0\x79\x36\x90\x6a\xf5\x98\xbb\xa0\xb4\x04\x10\x6d\x94\x25\xee\x88\x78\x1b\x53\x8c\x2a\x7c\x8e\x32\x13\xc3\x43\x6e\x58\xea\x96\xba\x18\x31\x50\xdc\xe5\x4f\xc1\x81\x3e\x84\x95\xb2\x9a\x76\x0f\x09\x94\x50\xef\x53\x50\x4e\xae\xcc\x2a\xc7\x13\x94\xe2\x81\x51\x8d\xb2\x90\xb6\xee\x04\xa5\xab\x0a\x08\x6e\x7c\x14\xb4\xd6\x0d\x57\xd7\x0e\x88\x33\x75\x79\x2f\x24\x38\x35\x21\xb5\xa6\x63\xa5\xaa\xf9\x20\xa9\x2b\xc6\xa9\x47\x44\x79\x84\x37\xf2\xfb\x50\x00\x2b\xa1\xc4\x4f\xbc\xd0\x44\x46\x26\xdf\x45\x79\xe2\xbd\xce\x80\x80\x2d\xf7\x7f\xed\x11\xaf\x42\x5d\xcc\xba\xba\xf0\x53\xfd\x11\x5f\xd5\xb3\xdc\xf8\xd1\x0d\x44\x4b\x20\x90\xd2\x02\x6f\xe9\x69\xcd\x41\x30\x37\xb3\xd7\x8d\xf1\x1f\xe8\x6b\x52\xc9\x64\x6b\xcb\x07\x96\x80\x79\x4a\xe6\xba\x19\xb5\xc9\xb0\x6e\x06\x1f\x58\xf0\xd0\xac\xd7\xc1\x59\x6b\xa8\x80\x68\x0e\xea\x8a\x59\x46\x40\x94\x27\xd5\xfb\x59\x31\xf6\xeb\x7b\x40\xe0\x93\x34\x84\x62\x5d\x09\x4d\x72\x49\xd4\x3e\xe6\x95\x8f\x41\x5c\xfb\xea\x8b\x7e\x9e\x28\x16\x00\x70\x96\x39\x69\x43\xa5\xaa\xa6\xa6\x7c\xa9\x34\x39\xab\x2b\xcd\xd7\xaa\xba\x5f\xc1\xcb\x0a\x21\xf0\x4e\x84\x50\x11\xd0\x1d\x38\x41\x90\x95\xc4\x07\x77\x20\xb0\xe2\xef\x41\x60\x72\x06\x1b\xcd\x97\xe1\xf2\xf0\xbf\x6b\xdf\x86\xea\xac\xb7\xb1\x68\x5d\xb3\x5b\xfb\x80\x01\xc2\x0d\x42\x67\xdf\x6b\x10\xa6\xff\xb1\x22\xc1\xde\x07\xb4\xc7\xd5\x7d\x67\x2f\x3b\xe5\x5f\x63\x3c\x41\x53\x3c\x30\xcf\x77\x8b\x88\xe6\x9d\x88\xe8\xba\x42\x44\xd7\x15\x03\xee\xa4\x94\x8f\xf8\xba\x1e\xa7\xf5\x83\x19\x3a\xe8\xeb\x6e\xd4\xb4\xb2\xd5\xee\x8d\x9a\x90\xf7\x44\x47\xb3\xd6\x61\x5a\xd6\x13\xcd\x61\xba\x91\x97\x5a\x37\x96\x5a\x76\x0d\xfe\x22\xd4\xc5\x55\x57\x17\xb3\x0e\x2c\x75\x5d\xcf\xaa\xa6\xd2\xc8\x70\x13\x43\x27\x10\x9d\xb7\x11\xd4\x95\x1e\xa6\x04\xbd\x40\xee\x8d\x25\x3c\x5a\xe8\x4b\x1e\xaa\x45\x85\xbe\xce\xc1\xa2\x8d\xbe\x16\x75\xf4\x75\x01\x82\x9b\x12\x5a\x8e\x79\x70\x39\x2c\xfa\xba\xf4\xd1\xd7\xf9\x17\xa0\xaf\xe9\xfd\xd0\xd7\x7a\xbc\xf6\xd0\x57\xed\x2b\x84\xbe\xa6\x3e\xf0\x5d\x37\x10\xc2\x5b\x00\x95\x9f\x0d\x93\x5c\x7a\x8c\x92\x5a\x19\xad\x17\x7d\x06\x32\xaf\xc8\xdb\x0a\x71\xad\x3b\x11\x97\x33\x64\xfa\x7b\xd0\xd6\xec\x67\xa1\xad\xb7\xc0\x06\x2b\x0a\x92\x48\x3c\x4c\x22\x15\x48\xa3\x98\x8a\x82\x52\x56\x67\x9e\xe7\x9d\x4a\x6e\x74\x94\x3a\x9d\x66\x38\x62\x65\x89\xce\x02\xc6\x08\xe3\x89\x24\x35\xdd\x1a\x7e\xae\x48\xa2\x1a\x0a\x92\xc0\xe6\xab\x57\xd4\x6f\x52\x03\x62\x06\x24\x4b\xd4\xa4\xdb\x79\x9d\xe0\xf0\x8f\xe2\xfa\x1e\x64\x87\x3e\xfa\x99\x5d\xaf\xe1\x8e\xc0\x17\x80\xdf\x62\xf2\x26\xb0\xc6\xa3\x06\xc1\x11\xa8\xd8\xbd\x23\x56\xe3\x59\x37\x01\xdc\x2d\x1c\xeb\x57\x36\xb0\x43\x24\x24\x79\xe9\x88\xca\x10\xed\xd7\xbd\x12\x28\x0d\x3f\x29\xea\xf4\x8f\xbc\x18\xda\xd3\xbd\x0a\x12\x21\x57\x8e\xae\xdc\xf8\xd0\x92\xa2\x19\x25\x8b\xac\x18\x5d\x02\x81\x94\x8f\x39\x74\x23\x5f\x1f\x66\x53\xeb\x9e\x97\xda\xeb\x3d\x0f\xad\xf7\xb2\x19\xf9\xaa\x39\x4e\x5d\x77\x15\xae\xfb\xf7\x0f\xbe\x75\x27\xc9\x6c\xae\x8c\x4d\x94\xb2\xb8\xac\x52\xbb\x32\x3a\x66\xd6\x5a\x83\xab\x16\xfc\xea\xb2\x21\x82\xb0\x81\x3c\xbb\xa0\xf8\xbc\x8b\xec\x3d\x6f\x6a\xb2\x5b\x2b\x9d\xda\x34\x76\xe4\xed\x17\xe0\x2b\x51\xf9\xd0\x26\x9f\x45\x3f\xd6\x21\xfa\xe3\x09\x76\xe4\xe0\x04\x79\xb9\x85\x48\xb9\x48\x16\x94\x11\x59\x84\x04\xf2\xa6\xf9\x62\xbd\x64\x32\x57\x28\x81\x43\x5f\xf8\xe0\x3f\xa9\x29\xe6\x5f\xd6\x4c\x40\x2e\x94\x86\xb3\xc1\xa0\x6d\x55\xe8\xca\x9b\xfa\x98\x4d\x54\x9f\x28\xd5\xbf\xbd\xf6\x51\x81\x43\x84\xeb\xce\x2f\x4b\x37\xd3\x09\x06\xf2\x5f\x1d\xca\xc1\xea\xd9\x2a\xa5\x6c\xee\xdf\xa4\xde\x63\x90\xe8\x85\x7d\x3b\x03\xf1\xff\xfb\xbf\xff\x27\x86\x4f\xf1\xe0\x48\xfd\x1a\xc5\xdb\x18\xf9\x2e\x39\xb8\x1e\xae\xef\x95\x55\xec\x62\x4c\x3b\xef\x96\x97\x6c\x9a\x73\x4e\xa6\xc2\x53\xb5\xd7\xdb\xad\xfc\x6e\x6a\xd2\x22\x52\x41\x4e\x93\xe8\xc4\xf2\xfa\x94\x6d\x4e\x74\xb1\x16\xd1\x4c\xd1\xd3\x71\xdf\xf5\x60\xf1\x13\xf5\xef\xef\x3a\xf1\x7a\x0d\x20\x22\x89\xa3\x69\xfd\x9b\xd5\xdd\x86\xa2\x73\xc4\x96\xa7\xad\x07\x15\xbe\x13\xe7\x24\xcd\x8c\x67\x96\x3b\x9f\x05\xf7\x69\x8f\xe7\xd7\x45\xdc\xb8\xd9\x1d\xef\xca\xb1\x8c\x7f\x36\x67\xd6\xf9\x75\x91\x6b\x2e\xa0\x0a\xfb\xa0\xfc\x64\x2b\xcf\xe1\x1e\xb1\xe0\x33\x62\xd4\x69\xbc\x4d\xbb\xf9\xd8\x2a\x36\xbb\x8b\xc1\xb5\x74\xdc\xf0\x4a\x65\x7c\xac\x2a\xe7\x2f\xc6\x71\xb8\x27\x0f\xfa\xf8\x31\xee\x2f\x94\xeb\xf0\xaf\xe2\x3e\xd7\x3f\x64\xda\x54\xbb\x29\x77\x67\x66\xcc\x27\xbe\x15\x75\x25\x4d\xfd\x85\x9e\x54\x75\x9b\x82\x1a\x38\xf1\xdb\x56\xc2\x90\x2e\xc7\x40\x18\x4c\x86\x88\x76\xbd\x06\x6b\xc4\xcc\x09\x10\x89\xf7\x5d\x91\x36\xc4\x4f\xae\x53\x3a\x6f\x81\x50\x4e\xdf\x5d\x0a\x34\xa4\xcf\x5b\xbf\x33\xed\x80\xbe\xac\xdd\xd1\x77\x09\x94\x6f\x33\x17\xe5\xe0\x31\x4c\x66\x85\xe6\x8e\x03\x0e\x0e\xbe\x86\xd0\xd9\x73\xb6\xa4\x1e\xdc\xe1\xbe\xba\xee\x27\x41\x5a\x5d\x54\xb9\xf0\xd1\xd5\x00\xad\x74\xe6\x7a\x3d\x0e\x72\xb8\xdd\xe6\xf7\x96\x7d\x0f\x0f\xb4\xf0\xfb\x91\x11\x7e\x3f\x86\x2d\xf3\x08\x13\x79\xac\xc3\xbd\x1f\x45\xca\xb3\x91\x93\x4c\x33\x27\x08\x2f\x30\xd1\x23\x34\x9a\xde\x39\xe0\x10\xad\x75\x20\x5f\xed\x00\x7a\xbb\x55\x81\x77\x2b\x8f\xd0\x00\xee\x34\x59\x59\x69\xd8\x1e\x7a\x0a\x0c\x3c\x20\x73\x60\x1a\x8c\x28\xe7\x03\xfd\x10\x64\x80\xe1\x1a\x94\xa0\xd8\x28\x8f\xc4\xf0\x68\x9d\x7c\xd6\x90\x70\x41\x46\x19\x60\x28\xce\xd9\xe2\x46\xa5\xdb\xe4\x44\xa6\x6c\xb7\xeb\x64\x66\x53\xe4\x47\xe6\x6a\x55\x25\x61\xcd\x6b\x15\xdc\x70\xd0\x18\xd9\xcc\x3b\x01\x99\xdc\xcb\xda\x38\xa8\x18\xa9\x44\x37\x02\x2a\xaa\xbe\xa9\x90\x7f\x28\x15\x23\x99\xde\xe2\x64\x79\x2c\x63\x2b\x10\x8e\xfb\xb5\x50\x07\xfd\xd8\x08\xb2\x2b\xb7\x50\x1a\x83\xd0\x19\x30\x3a\x6b\x14\x56\x41\x6b\xcc\x29\x9c\x55\x8e\x41\x8a\x26\xbf\x3c\xbc\x31\x0b\x60\xc0\xd9\x98\xf1\xc3\x4a\x46\x53\x8c\x16\xc8\x2d\xdb\x14\x51\x13\x2f\xa8\xe5\x36\x66\x56\x3f\xd4\xb0\xe9\x0c\x8c\x6b\x3f\x31\x02\x19\xa3\x71\x2a\xce\xbf\xbc\x9d\xaa\x19\x63\xa9\x51\xa2\x3b\xdc\x23\xbb\x35\xf7\x63\xb0\xb3\xff\x66\xd6\x1b\x3b\xfb\x5f\xed\x46\x5f\xfd\x92\xff\xed\x3c\xcb\x57\x37\x4a\xb3\x24\x02\x53\x18\xbd\xa6\x53\x9e\x17\xf9\x4c\x44\xcf\x72\xbe\xca\xb9\xda\x9b\x24\x3a\x5e\x2c\x22\x55\xa8\x88\x38\x29\x08\xbf\x22\x59\xb2\xf3\x8a\x4e\x09\x2b\x48\x16\xad\x59\xa6\x54\xdb\x49\x74\xbc\x4a\xa7\x73\x12\x99\x1c\x14\xfd\x51\xfb\xd3\x8c\x0e\x92\x41\x04\x64\x81\xd8\x64\xc5\xf0\x30\xba\xc9\xd7\xd1\x32\xb5\x3a\x7a\x44\xe1\xda\x68\x46\x17\x24\x22\x4a\x85\x4b\x1e\x80\x69\xbe\x5c\x2d\x68\xca\xa6\x44\xdb\xfb\x89\xaa\xf5\x24\xfa\xd1\x34\x90\x5f\x28\x99\x59\x1a\x4d\xf3\xd5\x8d\x24\xb7\xc4\x9c\xd8\xd1\x45\xa9\x88\xe6\x42\xac\x46\xfb\xfb\xd7\xd7\xd7\x49\xaa\x06\x98\xe4\xfc\x72\x7f\xa1\x0b\x14\xfb\xaf\x5e\x3e\x3b\x79\x73\x7a\xb2\x77\x90\x0c\x76\x76\xce\x7e\x78\x79\x1a\x3d\x7b\xfb\xfc\x24\x7a\x79\x1a\xbd\x7b\xff\xf6\x8f\x2f\x9f\x9f\x3c\x8f\xde\xbe\x89\x8e\xdf\x44\x5f\x1d\x9f\x46\x2f\x4f\xbf\x8a\xbe\x3f\x3e\x7d\x79\x8a\xa2\x3f\xbd\x3c\xfb\xe1\xed\x87\xb3\xe8\x4f\xc7\xef\xdf\x1f\xbf\x39\x7b\x79\x72\x1a\xbd\x7d\x1f\x3d\x7b\xfb\xe6\xf9\xcb\xb3\x97\x6f\xdf\x9c\x46\x6f\x5f\x44\xc7\x6f\x7e\xdc\xf9\xc3\xcb\x37\xcf\x51\x74\xf2\xf2\xec\x87\x93\xf7\xd1\xc9\x9f\xdf\xbd\x3f\x39\x55\x25\x5f\xbe\x7e\xf7\xea\xe5\xc9\x73\x14\xbd\x7c\xf3\xec\xd5\x87\xe7\x2f\xdf\xfc\xde\x35\xf9\xea\xe5\xeb\x97\x67\xc7\xb2\x15\xd9\x82\x2d\xb9\x73\x5b\x4f\x67\x2f\xcf\x5e\x9d\xa0\xe8\xc5\xcb\xb3\x37\xb2\xfd\x17\x6f\xdf\x47\xc7\xd1\xbb\xe3\xf7\x67\x2f\x9f\x7d\x78\x75\xfc\x3e\x7a\xf7\xe1\xfd\xbb\xb7\xa7\x27\x68\xe7\xf5\xc9\xfb\x67\x3f\x1c\xbf\x39\x3b\xfe\xfe\xd5\xcb\xb3\x1f\x65\x43\x6f\xde\xbe\xd9\x7b\xf9\xe6\xc5\xfb\x97\x6f\x7e\x7f\xf2\xfa\xe4\xcd\x59\xb2\xb3\x73\x4a\x88\xbf\xa1\xfe\x3e\xda\x85\x9d\xe5\x3c\x2a\x56\x64\x4a\x67\x74\x1a\xd9\x1b\x26\xba\xcc\xaf\x08\x67\x94\x5d\x46\x2b\xc2\x97\x54\x9b\xff\xef\xa4\x2c\x8b\x94\x5b\x38\xa3\xf2\x58\x41\x8c\xdd\xcc\x9d\x5f\x14\xaa\xa3\xaf\xf6\x15\x0e\xdd\xe1\x09\xd7\xae\x64\x54\x30\x4a\xcf\x0d\xd3\xa9\x48\xc5\xba\x88\x43\x51\xea\xa8\x7a\x38\x98\xf0\x95\x45\x41\x2f\x59\xb0\x58\xe1\x15\xd3\x77\xf0\xeb\x74\x3a\x97\x4f\xb1\x50\xe9\xcc\x2b\xed\x5c\x5e\x04\x4b\xae\x64\xc9\x9a\x9e\xc3\x98\x24\x6f\x72\x71\x2a\xdf\x73\x24\xc3\x83\x09\x8e\xab\xcf\x18\xc9\xec\xf7\x6b\x26\xd7\x1c\x0f\x27\x38\x36\xbf\x75\xc6\xa9\xc8\x57\x2b\x92\xe1\x83\x09\x8e\xcd\xef\xb8\x04\xda\xa4\x77\x63\x23\x10\xe7\x78\x23\xd1\xcc\x28\xd6\x01\x14\x13\xca\xa8\x88\x4b\x3f\xaa\x2d\x69\x44\xaa\xc0\x58\x05\xb5\x1b\xd5\xa2\x1e\xb9\xf2\x85\x67\xa6\x53\x6b\xd8\xae\xa6\xfe\x2b\xa9\xf7\x11\x29\xcb\x26\x67\xc5\x78\x5a\x30\x3e\xe0\x2c\x1e\x05\x04\x37\x93\x24\xc2\x55\x7a\x85\x64\x72\x24\xff\x19\x11\x78\xa4\x3b\x24\xe5\x28\x80\x89\x89\xcd\x4d\x58\xba\x24\x88\x7c\x26\x53\xa5\xbd\x57\x13\xd0\xb5\x25\xa3\x9e\x0d\x82\x7c\x46\x95\x41\x7f\x04\xed\xb1\x55\x43\x69\x06\xcc\x72\x8b\x63\x82\xbd\xa2\xa9\x71\x06\x26\x50\x3a\xd5\x94\xf3\x78\x82\x74\xec\xc5\x6c\xb4\x3b\x44\xcb\x54\x4c\xe7\xf2\x82\xae\x7b\x82\xb6\xd4\x85\x8b\x2d\xa4\xfc\xb8\x6d\x8c\x5b\x20\xae\xb4\xc6\x67\xf4\x72\x44\xd0\x79\xbe\xd2\xed\x0a\xa4\x9c\x32\xa4\x0b\x09\xff\x64\x64\x47\x90\x98\x54\xd7\x7f\x2a\xdf\xbf\xb2\x48\x31\x76\x99\x93\x84\x30\xc1\x6f\xba\xb5\xfa\xd5\xfe\x25\xa6\x09\xf5\xfc\xb6\x13\xd3\x54\x25\xf9\x2c\xfc\xa9\xd8\x76\x61\x89\x54\x88\x23\xed\x2c\xc2\x13\xcf\x50\xe3\x81\x15\x15\x28\x6b\x6f\xbe\x38\x32\xa3\x17\xed\x6e\xca\x91\x40\x73\x9c\x69\xbe\x1b\x5a\xe1\xac\xea\x1f\x4f\x01\x85\xe8\x0a\xbb\xf9\xcd\x55\x70\xbe\xab\x24\x37\x1c\x8d\x1b\x9c\xaa\xaf\xf1\x32\x91\x3d\x4d\x20\xba\x6c\xaa\xf3\x54\x2b\x0e\x6b\x3b\x39\x03\x73\xb4\x32\xba\x4a\x2c\x38\x62\x91\xf2\x4b\x22\x46\x6a\x80\x14\xb3\x44\x7f\xa3\x1c\xbb\x26\xe9\xd1\x7c\xa4\x94\x00\xed\x42\xa2\xa2\xca\x4c\xe5\xa1\x4b\x91\x0a\xe2\x98\xb3\x0c\x65\x78\xa5\xbc\x95\xbb\x02\xd3\x76\xc0\xde\xdd\x41\x39\x9a\x42\xb0\x42\x4b\x68\x27\xe8\xe6\x9e\x4f\xd0\x25\xde\x1d\xa2\x0b\x5c\x9d\xe4\xab\x84\x7c\xa6\x02\x15\xe8\xc6\xee\xf7\x2d\x46\x20\xca\x3d\xeb\x6d\xf0\xc0\x13\x0b\x7b\x3e\x60\x04\x9b\xa4\x33\xd0\x40\x14\xda\x3b\xcb\xcd\x8a\xc0\xcd\x25\xde\x1d\x18\x9f\x4d\xc6\xe8\x48\x97\x01\x9b\x12\x65\xf6\x89\x15\x3a\xf3\x49\x85\x6c\x8e\x04\xf6\x3f\x41\x86\x96\x70\xe4\x9b\x30\xf9\xb9\x95\x39\x65\x2d\xac\x84\x18\xf3\x49\x88\xa8\xf4\xab\x8e\xf9\xe4\xa8\xf1\xad\xfb\x6a\x24\xca\x13\x92\x61\x81\x76\x87\xa5\xdb\x2a\xf7\xc6\x37\x20\x65\xfe\xe4\x0e\xc6\x33\x77\x46\x2f\x1c\x8a\xc8\x77\x31\x9e\x6f\xb7\x17\xd6\x4d\xfb\x60\xbb\xbd\xf4\x4e\x5a\xae\x08\x68\xa5\x52\x6a\x5f\x17\x17\x81\xf7\xe2\x6d\xb4\xeb\xb8\x41\x1b\x4f\x10\xc7\x83\xca\x0f\x9a\xb0\xe1\xae\x46\x1b\x56\x93\x01\xf8\xb4\x31\xaf\xe2\x3f\xaa\x38\xdc\x1a\x68\xa1\x8d\xdc\x4d\x64\x37\xbc\xdf\x9f\xa0\x2c\x67\x64\xb4\x4b\xe4\xa0\xc1\x0d\x44\xe7\xf8\x42\x79\xb1\x07\xf0\x70\xf7\x3c\x91\x99\x87\x55\x92\x1e\xfc\x35\xbe\x04\xe7\x86\xcb\xae\x7c\x53\x3b\x9b\x64\x06\xae\x9d\xee\xe4\xb5\x2e\x51\x56\xf6\x26\x39\xde\x28\x36\xa2\xba\x86\x28\x4b\x17\x8b\x1b\xe5\xa8\xff\xbc\xd7\x33\x5d\xf5\x7a\xa0\xc0\x17\x89\x6e\x01\xf6\x7a\x85\x9e\xe9\x05\x74\xe5\xe9\x0c\xe4\x86\x07\x96\x27\xaa\xb5\xd2\xfa\xfc\x8c\x0c\x42\x28\x2b\x1f\xdd\x72\xb4\xf3\xb0\xf3\x04\x62\x4f\x48\x18\xf2\x0c\x4f\x40\x29\x84\x3a\x0e\x59\xaf\xc7\x40\x85\x5c\xf5\x63\x69\xc7\x67\xa0\xbb\x18\xb4\x89\x8f\xf8\x11\xc7\xd4\xa3\x29\xac\x52\x20\x11\x28\xc5\x9b\xf3\xa5\xa6\x63\x46\x04\x15\xc4\x57\x5a\xca\xe1\x86\x2b\x4b\x45\x43\x62\x18\xb7\xa1\x15\xf2\x56\x71\x3f\xd1\x1c\x08\x34\x05\x39\x84\x88\x05\x66\xe2\xe1\x0e\xfd\x00\x87\x25\x2a\xd6\x17\xe6\xdd\x19\x28\xa6\x1c\xf0\xcb\xe7\xaa\xb2\xb8\xdb\xac\x59\xa0\xb4\x57\x58\xeb\x64\xaa\x8b\x52\x19\x10\xf3\x10\x34\xf2\x6a\x12\x6a\xb8\x39\x44\xa9\x2c\x9d\xaf\x3a\x0a\x1b\xda\x09\x31\xed\x57\x0f\xa8\xf2\x97\x44\x44\x0a\x5f\xd5\xfc\x7b\xd8\xd4\x75\xe1\x35\x51\x81\x40\xda\xe0\xfd\x34\x9e\xb1\x22\xb9\xb8\x11\xe4\x95\x3a\x25\x81\x33\xba\xd6\x86\x5c\x62\x3c\x98\x20\x86\xc5\x78\xe8\xe2\x35\x3d\xfc\x0a\xf0\x3e\x83\xfb\x8f\xf6\x58\x89\x44\x22\xf2\xef\x6f\x04\x51\xfc\xd3\xa0\x75\x44\xae\x9b\x4a\x71\x2e\x9b\x2a\x70\x3e\x1e\x4e\x8c\x02\x1e\x05\x1d\x4c\xc5\x87\x5f\x01\xd1\xe7\xb2\x0b\x5e\x82\x81\xf2\x66\x07\x8d\x16\x43\xf1\x74\x70\x94\xee\x3d\x1a\xa5\x8a\x7f\xa1\x03\x89\xce\x0e\x79\x1f\x3f\x82\x02\xb3\x71\xcd\xf1\x2e\x87\x93\x27\x4f\x86\xdf\x6e\x9b\xc9\xfd\xa1\xca\x38\x68\x67\x1c\xc8\x8c\xc7\xed\xf4\x87\x70\x82\x16\xe3\x69\xbf\x3f\xc1\xe2\xe9\xd3\xe1\xe3\xde\xc1\xd7\x5f\x7b\x09\xdf\xfa\xdf\x07\x5f\x7f\xdd\x73\xe6\x6e\x07\x18\xe3\x42\x81\x6f\x68\x6c\x81\x11\x0c\xe1\xe4\xe9\xd3\x47\xb5\xb6\x20\x1a\xde\xda\xca\x70\xd0\x31\xc3\x47\xc1\x09\x3e\x7d\x7a\x70\xeb\xd0\x21\x5a\xc8\x7d\x9d\xf1\x7c\x19\xde\x59\xe7\x41\xc6\x0b\x87\x20\x69\x8c\x7f\x79\x88\x72\x4f\xef\x6d\x8f\x1e\xa6\x4f\x8a\xc3\xb4\x8f\x87\x8f\x1f\x7e\xfb\x10\x9a\xe0\xf4\x0b\x40\x50\x8a\xd2\xbe\x4a\x7c\x5a\x1c\x15\x23\xf3\xbb\x62\x3a\x0f\x75\xa8\x04\x81\xc9\x98\xed\x0d\x27\xc8\xd4\xe4\x63\xf1\xf4\xe9\xc1\xa4\xcf\xc7\xe2\xc9\x93\x47\xbd\xc7\x0f\x27\xfd\x18\xe3\x18\xea\xf0\x51\x54\xad\x0f\x90\x55\x0e\x26\x4f\x9e\x7c\x0b\xfb\x81\xda\xc3\x81\xaa\xfe\xf4\xa9\xae\xae\x5a\x3a\x30\x2d\x29\x87\xe8\x86\x09\x1e\x4b\xe4\x56\x8f\x93\x30\x9e\x20\x8a\x43\x41\xe3\x3e\x50\x26\xbe\x55\xab\x74\x54\xfd\x1c\xa9\x7f\x51\x8e\xe3\xe3\xef\x9f\x3d\x3f\x79\xf1\xfb\x1f\x5e\xfe\xeb\x1f\x5e\xbd\x7e\xf3\xf6\xdd\xbf\xbd\x3f\x3d\xfb\xf0\xc7\x3f\xfd\xf9\xc7\x7f\x4f\x2f\xa6\x19\x99\x5d\xce\xe9\x5f\x3e\x2d\x96\x2c\x5f\xfd\x95\x17\x62\x7d\x75\xfd\xf9\xe6\x6f\x83\xe1\xc1\xc3\x47\x5f\x3f\xfe\xe6\xdb\xef\xfa\xfb\xb1\x59\x4f\xeb\x85\x5d\x2d\x6a\xbf\x9f\x42\x3e\x4e\x27\x38\x1f\xa7\x13\xc4\xc6\x79\xdd\xdf\xf4\x04\xa7\x35\x31\x72\x85\x9b\x75\x1b\xf2\xe6\x12\xff\xf2\xe8\xe9\xa0\x5b\x27\x57\x93\x94\x49\xa4\x11\x84\x73\x9b\x9f\x46\x2a\x82\xfc\x6a\x41\xa2\x7c\x16\x3d\x8a\xed\x0b\xc0\x13\x73\xe1\xb8\xe6\xd8\x9b\x2b\xcf\x1b\x02\xa2\x31\x47\x5c\xf9\xb7\x1e\x8c\x1e\xed\xf1\x7f\x79\x34\x69\x06\x1e\x66\x15\x68\x29\x1f\x96\x5a\x6d\x57\x1c\x16\x4f\xd8\x61\xd1\xc7\x0f\x21\x95\xdb\x5b\x48\x88\x7f\xdc\x1b\x3e\xfe\x66\x38\x7c\xfc\xed\x00\xf6\x65\x5a\x7f\x28\xb7\xbc\xf7\xf8\xeb\x03\x95\x22\xe1\x58\xa6\x1e\x4c\x20\x4a\xed\xf6\x83\x1c\x53\xf8\xf4\xe9\xf0\x5b\xb3\xf5\xf9\xd3\xa7\xc3\x83\xea\xf7\x63\xf3\xf3\xf1\xc3\x5e\x5e\xc5\xba\x48\x2b\x80\x60\xe3\x78\x2f\xae\xfb\x83\x9f\xe0\xc7\x07\x88\x8d\xe3\xf3\x76\xfa\xc3\x3b\xa2\x8c\x98\xd0\xc1\x88\xa2\x3c\xf8\xfe\x05\xe9\x7f\x43\x8e\xe2\x4e\xf4\x55\x34\x5d\xd0\xd5\x45\x9e\xf2\x2c\xf9\x4b\x11\x5d\x1d\x24\x83\xe4\xb1\x4c\x9e\x0b\xb1\x2a\x46\xfb\xfb\x2e\xfb\x2f\x45\x32\xcd\x97\xfb\x32\x4f\xfe\xdf\xf1\x00\x5f\xbf\x3c\x8b\xfe\xff\xff\xbf\xe8\xdf\x09\xcb\xa3\xf7\xf9\x74\x9e\xee\x44\x5f\xed\x07\x22\xf6\x45\x01\x9d\x0d\x8f\x62\xe1\xc6\xcb\xa0\x18\xb3\x89\x33\x79\x19\xb3\x89\x95\x76\xec\x54\x32\x67\xbc\xa1\x23\x86\x16\xf2\x7d\x6c\x32\x47\x9b\xea\x9a\x25\xb2\x92\x22\xd5\xa8\xad\x8b\x28\xaa\x7e\x73\x88\x68\xb2\xc0\xbb\x83\x2a\xcd\xc5\x80\x4e\x96\x58\x3e\x5c\xa6\x58\x20\x9e\x64\x2d\x57\xc5\x3c\xd1\x61\xd7\xb7\xdb\xae\x78\xa3\x22\x14\x6c\x94\x95\xb0\x44\x3c\x69\xb8\xfe\x0f\x60\x2e\xbb\x8d\x66\x0b\xad\xa3\xc1\xb3\xf4\xb2\xd7\xeb\xea\xb1\x5d\xd6\x92\xd5\xf1\x6b\x65\x90\x1c\xdf\x16\x1e\xf5\xfc\x9c\x14\xa6\x98\xad\x26\x9f\x22\x72\xb8\xcd\x68\x7b\x74\x06\x86\x3d\xa1\xe8\x77\x0e\x08\x84\xe8\xdb\x9e\xa8\x82\xd9\xd3\x19\x78\x24\x73\x3d\x9f\x40\xa9\x12\xee\x2b\xfb\xc9\xaa\x9b\x7a\xf8\x7b\x66\x9f\x74\x9a\x8d\xa6\x7c\x88\x19\x57\xd4\x12\x1e\x3a\xc6\xcd\x50\x6c\x64\x59\xad\xd8\xae\xe6\x41\x51\x42\x74\xa0\x46\xd3\x8e\x4d\xd2\x90\xb2\xf0\x24\x03\xf2\xd0\x87\x78\x3e\x63\x31\x31\x1e\x63\x4c\x70\x76\x2f\xfa\x38\xe2\x09\x0b\x50\x69\x8d\xd9\xb6\xdf\xe4\x11\xb1\x72\xb8\x32\xf4\x56\xaa\xde\x0b\x86\x0b\x19\x23\xa1\x3c\xc4\xf2\xa4\xe9\xce\xc2\x6a\xc3\xe9\x25\xaa\x24\xe5\x75\x87\x20\xe6\x79\xa6\x3c\x3e\xf0\x64\x85\xe3\x18\x71\xc0\x93\x02\x3f\x86\x25\x18\xd7\x98\x8d\xdd\x42\x52\xf5\xb0\x3a\x3d\x79\x75\xf2\xec\x4c\xbf\xcc\x59\x9e\x91\x37\xe9\x92\x40\x92\xcc\xf2\xa9\xa4\x77\x91\xbc\xcc\xd4\xea\xbb\x70\x08\xf1\xcb\x37\xef\x3e\x34\x2a\x6c\xb7\xf1\xd9\xc9\x9f\xcf\x8e\xdf\x9f\x1c\x37\x5a\x72\xea\x19\xf3\xb4\x38\x16\x82\xd3\x8b\xb5\x20\x20\xe6\x24\xcd\xb4\xe0\x6d\x87\x6f\xb7\x24\x29\x88\x08\xe5\xa2\x38\x56\xb1\x0b\x88\x92\x5b\xeb\x9f\xe2\x54\x7d\xd1\x9c\xbd\x97\x8f\x65\x30\x40\x66\x84\x2e\x7c\x8a\x6a\xd1\x04\xec\x0a\x75\x59\x4d\x4a\x85\xcc\xd8\x34\x07\x37\xd5\x5e\x56\x48\x46\x95\xbe\x43\x2c\xc1\xdd\x2e\x88\x81\x6f\xe3\xcd\xe9\xd2\x1b\x8d\x8a\x77\x9f\xe5\x53\xa5\xc4\x60\x20\x5f\x8f\x10\xee\x50\x33\x85\x37\x79\x46\x8c\x0f\x97\x42\x52\xeb\x5e\x5c\x31\x55\xb4\x50\x7a\x92\x69\x96\xe9\x8a\x54\x0e\x95\xf9\xee\x6c\xdd\xab\xa4\xd3\xd3\x19\xdc\x94\xc2\x77\x34\xd1\xb0\x9f\xa9\x82\x55\x6b\x95\x81\xed\x56\xfb\xbb\x20\x8a\xcd\x68\xa5\x6c\x63\x32\xd9\x6e\xd5\x1f\x3c\x9e\x40\x68\x74\xbd\x66\x2a\x88\xa7\xf8\x5c\xc5\xef\x44\x79\x2d\x7a\x40\xab\xfd\x7a\x90\x49\x15\x60\x4d\xd9\x18\x22\x61\x02\x0b\xf0\x2a\x4e\xb8\x9b\x1c\x4d\xce\xad\xfb\x16\x6d\x92\x88\x38\x2c\x11\x59\x52\x31\x0a\x92\xc7\x78\x3c\x09\xc7\x22\x50\xc1\x7a\x00\x08\x4c\x14\xaa\x09\x8e\x27\xd0\x38\x59\x86\x88\xe1\x01\xa2\x4e\x05\xe6\x90\x3d\xa1\x2a\x48\x17\x97\xb7\xce\xcc\x06\xa8\x53\x5f\x53\xf1\x19\x09\x58\x8f\xaa\x9b\xcf\x66\x41\x9f\x2e\x81\xae\x91\xf6\x63\x8b\x28\x1e\x2b\x3e\x25\xeb\xf5\x84\xc3\x5e\x3a\xe0\x89\x35\x88\x38\xcc\x9f\xa4\x87\x79\xbf\x0f\xd9\x38\x97\xa3\xd0\xca\x4a\xe6\x23\x39\xd7\x9f\xd4\x58\x28\x8d\x3d\x6a\xca\x6a\x1a\x29\x67\xb9\x98\x8e\x8c\x59\xa3\xea\x57\x0d\xb8\x44\x15\x5a\x10\xd5\xef\xe4\x8c\xb2\x9b\x93\x25\x15\x82\x70\x2c\xda\x94\x95\xd5\x62\x78\x68\x95\x18\x3a\x9c\x3a\x1a\xab\xb4\x5d\xd2\xeb\xed\x8a\x5e\x6f\x97\xb7\xe9\xdf\xd7\xb4\x50\xe6\xab\xce\x51\x86\xdb\x36\xe3\x3e\x8b\x25\x1a\xc9\xd7\x2d\xda\xbc\xc0\x53\xa7\x64\x9a\xb3\xaa\x9e\x47\x3a\xeb\xd3\xe2\xda\x99\xb1\xba\x3b\x24\xaf\x8d\xb3\x39\xe5\xc1\x26\xac\x9b\x3c\xdd\x08\x53\xf8\xcc\x33\xda\xed\x78\x4f\x13\x79\x74\x55\xa0\x10\x1b\xef\x4f\x59\xe8\xa1\x4d\x46\x0a\xc1\xf3\x9a\x5f\x33\x8b\xa1\xda\xc5\x55\x80\x48\xd5\x6e\xd5\xb7\x2c\x70\x77\xff\x4d\xed\x2a\xc3\xac\xb1\x97\x05\xa8\xdf\x0b\xc1\xb1\x96\x30\x3c\xdc\x2f\x6b\xba\x73\x6a\xb0\x35\x3b\xb3\xcb\x77\xce\x8d\x02\x87\x5b\x2f\xf2\xec\x06\x19\x4d\x72\xdb\x56\x70\x7b\x5f\x50\x5e\x88\x6e\x08\x41\xd1\x0f\x67\xaf\x5f\x9d\x68\xdf\x2d\xfa\xe3\x99\x56\x91\xa2\x39\x43\x51\xce\xa3\x37\x66\xe9\xe3\xa6\xff\x53\xb8\x11\x6a\x5f\x42\xca\x56\x4e\xb3\x50\x52\x0d\x91\x8d\x48\x92\xcf\xfc\xde\x74\x98\x29\x7d\x4f\xca\x01\xeb\x90\x75\xba\xb3\x40\x60\x90\x16\x35\x60\xaf\x04\xcb\xa6\xdd\x09\xf4\x0d\xe2\xb1\xa6\xda\xdc\x34\x26\xf2\x72\xe6\xdb\xad\xcb\xa8\x4f\x59\x67\xc3\x5e\x2f\xd6\xe8\x23\xa6\xea\xc1\x02\xfc\xf0\x5d\xdb\xad\x30\x87\x61\x3c\x98\xe8\xf0\x6d\x45\xc3\xb5\xfa\x2d\x22\xb4\xed\xb6\xb6\x20\x7a\x0e\x8a\x0b\x12\xf2\x9e\xea\x86\x69\x4f\xa3\x1a\xe0\x9d\x6b\x11\xd0\xc5\xb2\x88\xeb\x6b\xe8\xdf\x48\xc6\x9a\xc7\x8a\xa5\x52\x9c\x1b\x3c\xaf\x14\x55\xaa\x8b\x69\xa7\xfb\x78\x73\x94\xca\xeb\xec\xfe\x07\x5c\x57\x28\x4b\x3f\x7c\xb2\x1e\x07\x6d\xbf\xa8\x24\xf4\x2b\xfe\xe7\x65\x2a\xc8\x99\x92\x2c\xa9\x48\x72\x46\xc8\xa4\xe5\xe0\xb5\x6c\x79\x1f\x98\x23\x29\x11\x49\x17\x7a\x46\x0c\xe5\x6e\x95\x83\xb2\x8f\xc6\x44\x8f\xa8\x1f\x09\xa8\x5a\x9a\x90\x54\x56\x16\xae\xc8\x6b\x7b\x6a\x61\x47\x03\x20\x24\x04\x06\xa4\xa2\xa4\xfe\xba\x26\xfc\x46\x53\x59\x39\x3f\x56\x3b\x0c\x5b\xb1\x88\x96\xe9\x2a\x88\x8a\x1c\xf2\xa8\xa6\xad\x38\xd4\x65\x33\x94\x70\xe8\xdd\xe6\xce\xea\xae\xf9\x55\xeb\x50\x09\x63\xec\x03\xa1\x55\x60\x47\xd8\x22\xd8\xfd\xb2\x93\x90\x67\x68\x99\xff\xed\x75\x20\xb5\x08\x24\xe6\x81\xb4\x6b\x72\xf1\x89\x8a\x46\x46\xc7\x76\x6b\x52\xe9\x90\xf4\x7a\xdf\xed\xfa\x38\xe7\x50\x4f\x3c\xb4\xfd\x66\xc0\x92\xee\x35\x3f\xe5\x35\xec\xde\x78\x44\xab\x1a\x12\xa6\x08\xda\x3b\x95\x1f\xb5\xce\x46\xc3\xff\x4f\xc2\xe4\x4b\x30\xbf\x1f\xf7\x05\xa7\xa0\xc1\x79\x09\xfa\xbf\x97\x4f\xd3\x7f\x18\xdb\x25\xd5\x1e\x4d\x6b\xa1\x59\xed\x99\x26\xad\x90\xb6\x87\xfc\x89\xf0\x63\x2a\x5b\x22\x79\xcc\x27\x3b\x2c\xa9\x5e\xbb\xd8\xff\xd8\x6e\x77\x87\x48\x49\x86\x67\xf4\x72\xad\xf3\x77\x07\x28\x56\x6f\x17\x89\x9d\x59\xaf\x07\x58\x72\xcd\xf5\x43\x05\xef\x0e\xba\x79\x02\x4c\x59\xae\x30\x58\x89\xb2\x2a\xb9\xbc\xaf\x79\xce\x7b\x3d\x02\x3c\x40\x36\x51\xff\x75\xd4\x3a\x24\xca\x52\x85\xd6\x0a\x4f\x5a\xc0\xcd\x6e\x8b\xbb\xb0\x0b\x6a\x38\xbf\x8b\x9c\x33\x7e\xe1\xe5\x21\x8e\xd2\x68\xba\x48\x8b\x22\x4a\x8b\x28\x75\xe3\x8c\x61\x69\x43\x68\xbb\x38\x26\xf9\xe2\x8a\xbc\xd5\xd2\x68\xe7\xbd\x91\x32\xea\x3f\xca\xec\x74\x0b\x40\xd0\x58\x39\xb3\x89\xeb\x15\x63\xc3\x5d\xf0\xa6\xa4\xf5\xd6\x5b\xc1\xb2\x07\xbd\x9e\xbb\x5f\xab\x20\xba\x83\xc9\x91\xff\x31\xb2\xae\x1a\xb4\xec\x0f\x5b\x21\xa0\xf3\x2b\xac\x55\x6f\x7d\xbd\x5c\xa3\xbd\x6d\xe8\x6e\x62\x7f\x99\xd0\x25\x1a\xed\x13\x87\xf4\x75\x40\x9a\xcf\x2a\x49\xc9\x08\x55\x02\xa7\x97\x97\xaa\xb2\xf9\xa5\x93\xf5\xab\x93\x64\x67\xb2\x7c\x1c\x97\xa5\x76\xe7\x13\xd7\xd6\x28\xb0\x00\xae\x93\x23\xaf\x99\x17\xe9\x27\x02\xe0\xc8\x1b\x95\x71\x7a\xaa\xb3\xf5\x05\xa4\x1c\x58\xe8\x4e\xaa\x5a\x9d\x4b\xac\x35\x42\x71\xcc\x85\x3c\xe5\x0e\xe5\xdb\x1f\x16\xab\x5e\xd6\xb8\x03\x19\xe5\xb1\x51\xe4\xd6\x37\xac\x1e\x98\x71\xd6\x92\x7e\x22\x3f\x28\x0d\x79\xfe\x2c\x5d\x2c\x2e\xd2\x69\x28\x38\x35\xa9\xd5\x2c\x5b\x55\x71\x7d\xb3\xda\xf7\x7e\x3c\x5d\xd0\xe9\xa7\xb8\xb3\x4f\xb8\xdd\xee\x0e\xaa\x5c\x39\x91\x26\x6f\xc0\x4c\x4e\x1b\x2d\xa5\x9c\xa4\x31\xac\x57\x48\x0a\x71\xb3\x90\x94\x36\x13\xa7\xf4\x6f\x04\xc7\xc3\x83\x95\x88\x83\x65\x2e\x72\x9e\x11\x8e\xe3\x41\x38\x7b\x95\x66\x2a\x9e\x78\x57\xfe\x32\xe5\x97\x94\x75\x57\xcf\xb5\x34\x18\xc7\xa9\x89\x54\x1c\x2c\x37\x16\x47\xb1\xd2\x29\x8d\x47\xf1\x82\xcc\x44\x3c\xc1\xf1\xde\x77\xdf\x7d\xf7\xdd\xea\xb3\x0d\x7d\x63\xd8\x26\xab\xf4\x92\xfc\xf8\x76\x36\x2b\x88\xd8\x6e\x3b\x77\xbd\x98\xf2\x7c\xb1\x38\xcb\x57\x3b\xa1\x41\x89\x7c\x85\x79\x3f\x5e\x7d\x6e\x8d\xe5\x16\x56\x52\xbd\xa4\x02\x4a\xec\x60\x1d\x35\x37\x7d\xb5\x22\x2c\x7b\x36\xa7\x0b\xed\x5b\xda\x55\x84\x81\xc3\x45\x01\x0c\x16\x9a\xe6\xab\x9b\x33\xa5\xd8\xe0\xce\x45\x05\x7a\x5d\x27\xcf\x03\xa8\x5e\x0f\x34\x86\x15\xa2\x2a\xef\x04\xc7\x36\x84\x57\xc1\xf6\x43\x47\x46\x71\x6c\xeb\xcb\xd5\x35\x92\xee\x05\x72\x90\xaf\x5a\x6b\xe0\x05\x8d\x2e\xba\x56\x20\xbc\xb6\x1a\xeb\x74\xaf\xac\x4d\xea\xc4\x37\x1a\x7d\x1b\x57\xa5\x0e\xf0\xc8\x67\x32\x7d\x96\x2f\x97\xa9\x71\x22\x6e\x30\xb6\xe7\x83\x8b\xe0\x5d\x13\x90\x46\x5b\xdf\xbc\x27\xc5\x7a\x21\xf4\x5b\x43\x77\xed\xa7\xb7\xba\xb7\x5e\x61\x0d\x62\x57\x7f\x81\x24\x25\xd6\xd3\x29\x29\x8a\x78\x14\x6b\xdb\x37\xb4\xd1\x3d\x8f\xbc\x51\x68\x1b\xdc\xd6\xa2\x20\x83\xe7\x47\x3e\xfa\x47\x4a\x97\xc1\x21\x76\x9d\x57\x4f\xf3\x5d\xa5\x7b\x0b\x57\x2b\xd3\x79\x21\xe8\x5e\x0c\xd6\x37\x5f\x8e\x53\xec\x96\x53\x8e\xfb\xca\xa2\xb7\xe4\x62\xb1\xe6\x00\xa2\x20\xc3\xb4\xcd\xfd\x74\x23\x32\x0f\xaa\xae\xa1\xd4\xd0\xb7\xad\x93\x9a\xd1\x17\x44\xfc\x62\xb7\xb9\x82\xa9\x58\x09\x72\x55\x20\x18\x7b\xab\x23\x9d\xe1\x02\xde\xe8\xf4\x5e\x2f\x9e\xae\x45\x33\xb5\xc5\xfd\x7a\x60\xa5\xbf\x76\xc8\x91\xd6\x6b\x54\x01\x87\x08\x55\x8e\xe5\x75\xfb\x51\x2e\x7f\xad\x45\xfc\x40\x3b\x00\xef\xf2\x8c\x6f\x7a\x72\x4b\x21\xcc\xe9\xaa\x2d\x05\xf1\x74\x1d\xe5\x4b\xc0\x30\xe9\xb6\x5b\x2b\xdd\xd9\xc5\x18\x78\xfa\xc0\x7e\x84\x87\x5c\x3e\xbb\xb6\xdb\x61\xed\x05\x71\xcb\xc4\xcc\x00\xfc\x89\xa5\x91\xce\x33\x90\xf1\x40\x2b\x76\xa9\x69\x62\xb3\x60\x76\x15\x9b\x1c\xf9\x8c\x16\x92\xc0\xcd\xe2\xb6\x77\xab\x76\x97\xa9\xad\x97\x44\xef\x16\x24\x2d\x88\xea\xbd\xba\x09\x14\x35\x4a\xd2\x2c\xca\x67\x51\xd5\x72\x55\xcd\x0e\x6c\x2d\x5a\xe3\x02\xdd\x72\x8c\xed\xf6\x96\x41\x7f\xd9\xa8\x7f\xcc\xd7\xd1\x34\x65\x1f\x1f\x88\x68\xba\x16\x91\x44\x00\xd1\x8c\xe7\xcb\x88\xe8\x95\x33\xa1\x92\xbc\x19\x49\x28\x09\xcc\xa4\x78\x60\xe8\xa4\x73\x4b\x45\x96\xb7\x43\x91\x2e\x56\x96\x13\x88\x88\x24\xf4\x17\xca\x05\x31\x9a\xaa\xe7\xda\x02\xa2\x99\xf6\xdb\x9a\xa9\xef\x19\x44\xf3\x7f\xf6\xe7\xdb\xea\x7f\xe2\xf3\x6d\x89\x3b\x64\x47\xca\x10\xf2\x1f\xf0\x82\x73\xcc\x80\x76\x57\x3e\x4e\x79\x4f\x54\x28\xb0\xa9\xed\x40\xd9\x13\xcd\xd3\x82\x3d\x10\xd1\x05\x21\x2c\x32\x1a\x90\xb4\x20\x59\xb4\x17\x15\xeb\x15\xe1\x00\xd6\x4a\xc8\xc1\xc8\x13\x68\x58\x78\xbb\xa2\x86\xec\x52\x20\xa0\x0f\x5a\xbb\x95\x62\x37\x19\x09\x33\x58\x20\x92\xf3\x73\xb5\x9e\xe7\xe7\x4e\x43\xe0\x92\x88\x77\x76\x89\xdf\xce\x80\x80\x5e\x44\x75\x4f\x9e\xdc\x7c\xa3\xca\xcd\x50\x31\xab\x08\x7b\x26\x29\x36\x25\x03\x6c\xed\xa8\x0b\x55\x12\x18\x58\xaf\x27\x89\xa9\x46\xf8\x12\x5f\x2a\x22\x17\x21\xaa\x22\x75\x6a\xa6\xb7\xb9\x53\x2e\x48\x24\x6b\x4b\x74\x51\xed\x0a\x52\xf6\x5a\x71\x5f\x2e\x06\xdc\x21\x9e\xec\xb0\x2e\xc4\x97\xaf\x3d\x0f\xae\x6a\x1e\xec\x9d\xe1\x83\x2f\xb6\x1f\x22\x0b\xd9\xa3\xdd\x01\xf2\x4f\xc1\x68\x77\x50\x96\x10\x89\x5e\x0f\x98\x3e\x8a\xda\x7a\x1e\x05\x53\xd5\xba\x8c\x48\xb5\x1b\x58\x48\x80\x42\x04\xa2\x15\x10\xff\x29\x8f\xfb\x30\xef\x54\xa5\x1c\xd9\x1f\x9a\x0a\x33\xda\x01\xc7\x1e\x2f\xc0\xe0\xe4\x60\x1b\x3a\xef\xc8\xfe\xa8\xb5\x71\xd6\x64\x04\x84\x5b\x90\xaf\x77\xfd\xa7\x5e\xbb\xfd\xd2\xc1\x9e\x76\xc7\x1c\x78\x8c\x09\x78\xe4\x7d\x8c\x6a\xf2\x17\x47\x69\x78\xd0\x1c\xa2\x7b\xab\x20\x06\x7a\xe1\x16\xe6\xc9\x82\x33\x00\x81\xa4\xa2\x74\xc5\x60\x3c\x8a\x24\x77\xa7\x44\xc7\x07\xd1\x3d\xe6\x77\xf5\x46\x1a\x4c\x71\x79\x35\x4f\xd7\x9c\x13\x66\xd6\xce\x04\x5d\xb2\x2a\x50\xc7\xf6\x76\x0f\x25\xfb\x4f\xa1\x56\x16\xb9\x8e\xd6\x20\x40\xb4\x2b\x66\x94\xb7\x73\xfa\xb7\x4a\x75\xfb\x21\x7f\x99\x78\x8b\x66\x81\xeb\xbb\x52\x51\xf8\xc8\xbc\x1b\x54\x81\xd2\xa7\x91\x3d\x98\x0a\x2d\x87\x15\x0a\x01\x47\x1a\x93\x56\xed\x8e\x77\x98\x5b\xcc\x2b\xe0\x88\x49\xad\x8a\xef\xb4\x83\xc2\x1c\x7a\x20\xda\x5d\x84\x9e\x64\xb5\xe1\x69\xbf\x2d\xe4\xde\xe4\xbf\x85\xa2\xc4\x94\x03\xe1\x0d\xea\xd8\xd2\x3b\x6a\xd9\xe7\xea\xc4\xa2\x14\x5a\x9c\xea\xe0\x14\x24\xfb\xa5\xf1\xc9\x58\xd3\xbf\x48\x51\x9b\x13\x24\x02\x26\x71\x47\xca\x10\x0e\x71\xbc\xbb\x5b\x5f\x71\xf3\x64\x75\x63\x73\x2a\x09\x1d\x4a\xfa\x98\xf7\x7a\x77\xb5\xa1\x8f\x1a\xe2\x8a\x04\x14\x25\x98\x26\xa9\x27\x32\xbb\xaa\xc5\xab\xc9\x52\x91\xee\xb9\xb5\xdb\x8b\xfb\x4a\x5d\x4c\xd4\xa9\x60\xee\x39\xba\xae\xb1\xf1\x38\x2c\x85\xc5\x49\x78\x59\x4e\xa0\x53\xa0\x42\x35\x65\x33\x75\x43\xd7\xb5\xcf\x8e\x2a\x39\x47\x0e\xe0\x08\x28\xa5\x61\xf7\x6e\x01\x34\x80\x10\x01\xc7\x39\x3c\xe2\x56\xbe\x87\x18\x1c\x71\xb8\xdd\x82\xaa\x25\x0a\x61\xe9\x5d\xe2\x88\x83\x87\x50\x05\xb0\xed\xd6\x82\x78\x54\x97\x26\x7a\xea\x5e\x75\xe1\x9e\x5d\x31\xa0\x42\x5d\x6e\x4a\x39\x55\x65\x3c\x4b\xf8\x76\x1b\x27\x31\xca\x95\x8c\xe8\xf3\x73\xb2\x12\x73\x94\x62\xa1\x2d\x30\x66\x39\x5f\xfe\x81\xdc\x6c\xb7\x14\x15\x9e\x13\x15\x8f\x4a\xa5\x68\x8d\x16\x70\xb3\xc0\x8b\xed\x76\x58\x8b\xdd\x44\x43\xd6\x4e\x53\x3d\x90\x19\xa6\xe3\xe9\x04\x65\x58\x24\x45\x3a\x23\xbd\x9e\x16\xa6\xd1\x42\xfd\xd5\x64\xfd\x1d\x42\xd6\x99\xf2\xf7\x2f\xff\x2c\xb1\x93\xd2\xea\x3a\x4a\x46\x3b\xf7\x64\xcc\xaa\x55\x9d\x8a\xae\xf0\xfa\x68\xdd\xe7\xfd\x14\x4c\xe1\x48\xfe\xa3\x54\x34\xb2\x5e\x6f\x77\xd5\xeb\x2d\x9d\x36\xa4\x9a\xc2\x0c\x56\xb6\x45\xbb\xd5\xfa\x6c\xb7\x8b\x27\x79\x25\x8b\x02\x33\x74\x85\x16\xfd\x21\xdc\x29\xc6\x57\x13\x3c\x33\x91\x73\x51\xe1\x09\xc3\x72\x94\x5b\xbf\xb2\xea\xf7\x9a\xd9\x2f\x5f\x76\x51\xb9\x31\x06\x2a\x5a\x62\x60\x9f\x0a\xcc\x93\xfc\x8a\x70\x49\xd7\x68\xea\x7e\x8d\x79\x6b\xb3\x16\x72\xb3\xe8\x0c\x30\x15\x6d\xb7\xb5\x3c\xbb\x77\x8a\xb0\x2b\x51\x9b\xa8\x00\x6c\x5a\xa1\xe4\x37\xca\x0d\x91\x27\xf5\xa7\xc5\x9b\xf4\x8d\xea\x6d\x4f\x3f\xd0\x9d\x92\x78\x22\x1f\xa6\x3c\xd1\x43\x50\x44\xad\x6d\xb9\x16\x9c\x50\xc0\x84\x93\x6c\x3d\x25\x61\x8f\x50\x77\x8d\x77\xcc\x9c\xee\x51\x68\xba\xb4\xd7\x6b\x42\x83\x4c\xdd\x6e\xdb\xb7\xcd\x9d\xc2\x7d\xc4\x83\x00\x67\x0d\x41\x76\xc9\x76\x0b\x02\xa0\x27\x8e\x76\xad\x06\xc3\x88\x1f\xed\xd6\x6c\x04\x2d\x9c\x8d\x8c\xfd\x5a\xa9\x27\x74\x04\xc8\x98\x4d\x94\x66\x32\x22\xb0\xa5\xe4\x56\xd7\xd3\x54\x2d\xf1\xc0\x2a\xfa\xee\xd1\xc5\x98\xf4\xd3\x3e\x9b\x60\x2e\xdb\x14\xa5\x72\xd8\x01\x18\x22\x28\x57\x5d\x22\x2e\x71\x10\xda\x94\x8d\x38\x6c\xa1\xb3\xec\x2b\xf1\x63\x66\x5c\x5b\xa5\xda\x74\x73\x0d\x51\x8e\xa7\x80\x26\xc5\x9c\xce\x04\x80\xf2\xdd\x3e\x05\x74\x3c\x98\xc8\xa7\xfb\xe2\xd0\xdd\x4b\xb3\x43\xbd\xee\x77\x9e\xf7\x6c\x9c\x4f\xe4\x91\xff\x82\xb3\xae\x4e\x76\xa1\x4f\xb6\xeb\xf0\xff\x63\xef\xed\xba\xe4\xb8\xb1\x03\xc1\xf7\xfa\x15\x59\x79\x74\xd2\x80\x0b\x4c\x66\x51\x5f\xa3\xa4\x42\x39\x14\x49\xd1\xfa\x20\x45\x89\x94\xd4\xed\x50\x4c\x35\x2a\x13\x59\x05\x56\x14\x22\x85\x40\x54\xb1\x58\x19\xe7\x74\xab\xb7\xed\xf1\x74\xef\xda\xbb\x33\xdb\x3b\x6b\xf7\xb8\xd7\x33\xf6\x78\x7d\xce\x7a\xdc\xd3\x6e\xcd\xaa\xa5\x16\xfd\xc0\xe9\xf7\xac\xff\x20\xc9\xde\xb7\xfd\x09\x7b\x70\x01\x44\x00\x91\x91\x55\x25\x91\x7d\xd6\x33\xd6\x4b\x55\x46\x04\x3e\x2e\x80\x8b\x8b\x7b\x2f\xee\x07\xb4\x63\x66\xe3\x32\x82\x8f\xf3\xb9\x2e\xa4\x4f\x5c\xfb\xb5\xd7\x83\xde\xa2\xae\x09\xb6\x55\x8b\x3e\x53\x0f\x91\x8f\xcb\x61\x0c\x83\xd1\x45\x09\xf7\xce\x5c\xb4\x6a\xe4\xb8\x84\x66\x99\x9b\x69\x7d\xcc\xa5\x0d\x3b\x00\x67\x3b\x7f\x8d\x29\x26\xf7\xb9\x60\x1d\x3e\xed\x50\xd1\xb1\xa3\xe3\x5a\x98\x7d\xb9\x98\x4e\x99\x5c\xeb\xfc\xb6\x2e\xf8\xcf\x69\xa1\x76\x33\xd9\xe9\x74\x5e\x61\x32\xcb\xf3\xce\x95\xed\xac\xd8\xdb\xa5\x13\x7e\x8f\xed\x76\x5e\x74\xc6\xf6\x53\xf8\xd8\xcf\xe4\xce\x4b\x50\xcb\x46\xaa\xe8\x74\x6e\xbe\x7a\x77\xad\xf3\xdb\x17\x57\x44\x32\x72\x52\x24\x08\x7c\xcc\x49\x7e\x81\xba\xa3\x55\x31\x12\x94\xe8\xf3\xdc\x80\xdc\x50\x94\x54\xef\x4f\xb7\x98\x79\xfa\x39\x63\xeb\xf7\xf4\xf3\x41\xc0\x7e\xa7\xd1\xbe\x5a\xdf\x67\xce\xe7\xc6\x17\xc7\x5c\xc2\x2a\xb6\x6f\x02\x50\xde\xa4\x33\x52\xeb\xa1\xd1\x2a\x0d\x47\x5d\x8b\x74\x3d\x28\x2b\xf3\xf5\x2c\x14\x2d\x4b\x5c\x7a\xe9\xf6\x4c\xdb\x4b\x79\x30\x73\xfe\x80\x45\xf6\x16\x6e\xc2\xf7\x99\xd0\x02\xb1\x7b\x01\x7d\x39\xa0\x4a\xe2\xb7\x96\xb3\xa6\x91\xbc\xf5\x22\x89\xbc\x9a\x9a\x9f\xaf\x29\xb0\x70\x36\x9e\x55\x3f\x1b\x1b\xd6\x09\x33\x9c\x27\xbf\xf3\x5c\x37\x41\x84\x4d\x35\xee\xcd\x65\x14\xdd\x61\x6a\x84\xa4\xde\xd8\xfc\x01\x33\x26\xc1\x10\xf6\xe2\x45\xf3\xc6\x5d\xbc\xf2\x07\x6c\x63\x43\x73\x40\x2e\x34\x2d\xf1\xdf\x3b\x1b\x5d\x6f\x68\xc6\x12\xb4\xc5\xc2\x7d\xd5\xc8\xd6\xd7\x95\xe3\xa2\x75\xab\x17\xa2\x56\x50\x15\x7c\x1c\x3a\x15\x59\x63\xca\x2f\x5c\xf0\x47\x5d\xf9\x73\x92\xf5\x41\x63\xe2\x8d\x56\xbf\x7d\xee\x09\x3f\x05\x46\xee\x60\x5c\x9a\x43\x24\x23\xee\xba\x54\x18\x7b\x13\x77\xe1\x02\x01\xf7\x7c\x3b\xa1\xa8\x15\xc4\xe6\x40\x30\x91\x78\x08\x87\x2c\x12\x11\xaf\xce\x59\x68\x19\xf9\x4d\x83\x6f\x9d\x33\xc3\x3d\x5f\xdb\x7a\x3e\x86\x9a\x76\xcd\xc0\x26\x59\x90\x4d\x98\x22\xdc\x98\xa4\x5d\xda\x4a\x25\xbc\x2e\x76\xa9\xc9\xd4\xeb\xd7\xda\x61\xea\x8c\x5a\x66\x4a\xc3\x5a\xd6\x09\x8d\x8f\xb9\x6a\xf1\x3a\x5d\xbd\x1d\xea\x78\x0a\xa3\xc1\xf0\x3c\x18\x13\x76\x3b\xce\x0a\xa1\xa2\x55\x80\x04\x45\xed\xc9\xd8\x86\x33\x7e\x04\x29\x81\x8f\xad\x79\xb8\x22\x42\x53\x7f\xb5\x2c\xb1\x6d\x8e\x8c\x64\xee\x23\x6b\x8b\x24\x05\x4e\x1a\x60\x35\xed\x3e\x0a\x13\x17\xab\x05\xac\x2b\x79\x9e\x8d\x39\xc4\xc8\x59\xca\x7a\xff\x95\xfa\x37\x9e\x1e\x7e\x0f\x9a\x35\x58\x91\xf4\xdb\xd6\x05\xe6\xa1\x51\x0b\x88\x69\xde\x92\x53\x86\x48\xc2\xb5\x1c\x52\x57\x37\x45\x21\xa0\xf0\xfa\x66\x90\x8a\xb8\xb9\x96\x26\x2f\x61\x35\x45\x1d\x69\xb3\xa3\x50\xf8\x87\xf4\x4a\x5a\xdf\x7e\xf0\xc0\x77\x21\x36\x4c\x54\x80\x41\xb9\x46\xa3\xf5\x01\x61\x91\x8d\xaa\x5b\x75\x6c\x59\x55\x70\x49\xf7\xeb\x8f\x90\x86\x88\x48\x84\xf1\xd0\x36\xb2\x69\xc5\x72\xe5\x02\x02\x60\x3c\x6c\x42\x25\x1e\x0b\x2a\x22\xc1\x41\xc0\x31\x91\x95\x6b\xd9\x4b\x11\xb7\xf0\x88\x16\x78\x4c\xfc\x83\x72\x09\x3d\x98\x50\x92\x9f\xb2\x0e\x5a\x08\xac\x57\xc2\x96\x46\x98\xe4\x5f\x75\x29\xdc\xa0\x73\x37\x68\x7a\xfa\xa0\x73\x3d\x68\xe9\x06\x1d\x0f\x92\x7a\x06\xe2\xcd\xe4\x1c\x4b\x93\xaf\x9a\x8a\x58\xba\xb0\xc9\xc9\xa9\xcb\xf3\x64\x20\x25\x3c\x1a\x90\x6c\x69\xb9\xf8\x4b\x51\x76\x3a\x8c\x2c\xe6\x1b\x1b\x49\xcb\x92\x55\x7a\xb9\x33\x76\x5d\x35\x45\x41\x6d\x5a\x13\x82\x33\xea\x57\x8b\x5d\x92\xd3\x7c\x09\x91\xd7\xfa\x52\x2c\x8f\xa8\x05\xd7\x70\x00\x0f\x17\xf9\x8c\x8d\xdb\xd2\x2f\xd4\xa0\x7c\x75\x00\xb4\x44\xd2\x15\xd9\x84\xdd\xcb\xfb\x85\xe2\xa9\xeb\xa6\x3f\x2e\x72\x95\xed\x77\x71\x08\x99\xfd\x1a\x42\xa6\xb2\xd7\xee\xbc\x79\xeb\x0c\xc0\x32\x70\x9b\x6f\xcd\x0a\x63\x42\x5f\xd6\x0e\x3a\x3c\x34\x09\x06\xea\x0d\x9c\x97\x8d\x67\x48\xa4\xef\x0c\x93\xad\xf4\xab\xaa\x3d\x86\x4f\x0d\xac\xf2\xdf\xa0\xc7\xb0\x47\xb7\x19\x3e\x5e\xcd\x9e\x93\xee\x96\x00\x3d\xed\x71\x7d\xaf\xb3\xd9\xb8\xf1\xa9\x1d\x35\x0d\x77\x93\x09\x30\x9d\x91\xde\x02\xeb\x36\x1a\x79\xb4\xaa\xb2\x4b\xbb\xbc\x36\x13\xec\x6f\x19\x72\x50\x1b\xe3\xdb\x68\x2e\x5e\x47\x03\x4c\xd8\x19\x58\x2b\x4f\xdb\x36\xed\x48\x57\x62\x22\xfb\xd9\x74\x39\x0d\x49\xed\x69\x56\xbb\xfc\x13\x51\x87\xd1\xd1\xa8\xe8\x87\x44\xaa\x25\xba\x97\x22\x35\xaa\x06\xb9\x7c\x68\x88\xea\xd0\x90\x7d\xb6\x3f\xf3\x79\x2f\x3f\x05\x8a\xb4\x8e\xb5\xc1\x8c\xc0\xa9\xa5\x2b\xf2\x56\x36\x31\xb8\xc9\x95\xf5\x6d\xa8\xe6\xd5\xc0\xb1\xd7\x5e\x2f\xb6\xa3\x9d\x59\x3d\x7f\xc3\xc8\x70\xc3\xd8\xc0\x43\x2d\x2b\x00\xc2\xa1\x91\x38\x89\x6c\x2d\x61\x96\x23\x88\xfb\x59\x27\xd1\xcc\x08\x25\x39\x29\xd6\x56\x64\x5d\xcb\xb6\x53\xb7\x8c\x17\x2d\xcf\x34\xec\x70\x6b\x63\x01\x5f\xb6\x53\xd6\x37\xde\x5c\x2d\xd7\xaa\xcb\x26\x3a\xed\x2d\x9a\x4c\x7e\x5c\xec\x74\x28\x5c\x2d\x6f\xd3\xf1\x9e\x6d\x35\x54\xa2\x32\x3c\x9f\x2b\xab\x59\x35\x83\xee\xf3\xfc\x5d\xce\x0e\xe1\x4b\x9b\x63\x8c\xa7\x43\xb1\x58\x95\xd8\x70\x59\x95\xf7\x27\xb8\x09\x9a\x28\x15\xcc\x8f\x52\x41\x37\x36\xb0\x40\x2c\xa6\x90\x66\xb2\xf2\xd3\x5d\x1e\x66\xc5\x97\x62\x3e\x45\xb2\x72\x48\x77\xe3\xec\xf0\x06\xb9\x59\x0f\xd7\x1d\xfc\x32\x96\xb7\x0d\xc2\x98\xac\xac\x03\x30\x67\xc6\x29\xbb\xe9\xc4\x8c\x32\x0c\xe1\x8e\xe2\x2c\x21\x99\x05\x5c\x17\xe7\x11\x23\x34\x1a\x5c\x5e\x1f\x68\x39\xab\x88\x78\xc0\x09\x5c\xc6\x02\x15\x96\x29\xa3\x98\xd0\x8d\x0d\x53\x33\xe0\xc7\xab\x40\x45\xef\x71\xb5\x7b\xab\x48\xd3\xd7\x03\x76\xf9\xb1\x10\xcb\x6f\xf2\xc9\x23\x59\xd8\xfa\x3f\x7a\x84\x33\x14\xc8\xe1\x5c\xe8\xdd\xc5\x14\x66\xed\x77\x51\xb0\x02\x70\xcb\x86\xff\x69\x21\xac\xb9\x4c\x6e\xc7\x59\x8f\xaa\x8a\x65\x6f\x43\x88\x31\x9a\x1b\xcb\xc9\xc6\xf1\xd9\x94\x24\x5f\xbc\xb4\x8c\x69\xfb\x82\xed\x67\x82\xe7\xea\xe2\x1d\x16\x36\x36\xec\x08\xc6\x26\x79\x87\xaa\x4e\xca\x68\xae\x3a\xea\x30\xab\xbd\x71\xfb\x36\xf4\x0c\x88\x26\x55\x50\x31\x11\x6d\x5e\xd4\xe2\x10\x18\x11\x67\x4b\xa2\x2c\xc4\xf4\x51\xd1\xe0\xb2\x7a\x31\xbb\xac\x36\x36\xaa\x94\x05\xc8\x3b\x34\x63\x95\x60\x50\x02\x54\x79\x90\xd7\x18\x3c\xbf\x08\x66\x51\x91\x79\xd0\x32\x17\x2e\x9d\xaa\x1b\xb6\x2a\x49\xc9\x38\xe2\x15\xa3\x7d\x79\x1d\xd1\x68\xdc\x98\x71\x50\x8e\xe7\x11\xb5\xd3\x5e\xe8\x53\xd1\x07\x48\x8b\x18\x69\x08\x8b\xb9\xa8\x58\x4f\x41\x7d\x92\x63\x7c\x5c\x68\x61\x6b\x5b\x32\xba\x57\x16\xbd\x1e\x38\x01\xa0\xda\x4b\x5d\x96\x44\xf5\x0b\xf1\x24\x56\x03\x5a\xf9\x0a\xcb\xe0\x45\x77\xe3\xed\x73\xcf\xa2\xc1\x65\xf6\x22\xbf\xcc\x36\x36\xb0\x59\x8b\x7a\xa8\x2c\xf1\xa7\x4e\x4b\x50\x0d\x64\x85\x81\x4a\x17\x7c\xaf\x0e\x8d\xa1\xfa\x13\x3e\xb5\x16\x59\x6d\x96\x5b\xc1\x62\x5a\x00\x81\xac\xaa\xb6\x2f\x88\xd5\xa1\xd1\xc3\x11\xb1\x10\xbe\xe6\x66\x82\x0b\xe6\x0a\xbe\xf9\xfc\x14\x78\xf3\xa3\xfd\x7d\xa6\x24\x1f\x5f\x5b\x05\xf8\x6f\x02\x02\x43\x11\xd4\xe9\x6d\xb0\xf3\x8f\x82\xe7\x77\x8a\xed\xd5\x3a\xe9\x1a\x58\x3d\xd9\xcc\x0b\x62\xba\x3e\x80\x37\x30\xfb\x2f\x05\x8b\xb0\xbe\x09\x50\x02\x64\xa2\x01\x99\x59\x31\x1f\xba\xba\x92\x6b\xd7\x81\x35\xd3\x54\x44\x35\x32\x29\x54\xf7\xfd\x0e\x70\x24\xb5\xa8\x45\x94\x1e\xe2\x29\xf3\xdf\x98\xb1\x26\x5c\x2c\x98\x21\x58\xde\x62\x5b\x49\x3a\x6e\x4e\xcc\x57\x6a\xd3\xaa\x63\xfd\x66\x2b\xe2\x78\x4a\xbb\xec\xf4\x76\x9b\x18\xd2\xda\xcf\x84\xe7\xf7\x74\x07\xe7\xea\x06\xe2\x45\x9c\xa3\xaf\x2a\x20\x44\x80\x8e\xe7\x98\x88\x26\xc0\x4b\x28\x5d\xc7\xa7\xe0\xcd\xf8\x14\xd5\xf0\x78\x9c\x25\xe1\x1c\xf2\x4c\x80\xf3\x52\x9b\x7e\xb6\x89\x9c\x10\xc1\x8c\x11\x16\x29\xa2\x22\x89\x89\xf1\x3b\xf7\x69\xc7\xa0\x89\xe2\x1d\xf3\xbd\x02\x50\x04\xbb\x97\x64\xfa\x50\x06\x4d\x7d\xdb\x9c\x89\x6a\xce\xb2\x8d\x0d\xb7\xe5\xb2\x8a\xae\x37\xe1\xae\x23\x9b\x2c\x0d\x0f\xbe\xae\x05\x20\x6d\x48\x73\x15\x00\x5b\xf8\x1e\x1d\x8f\xa9\x9c\x7c\x9d\xd6\xf4\x24\x88\xd1\x60\x28\x2e\xa2\x46\xc3\x30\xd1\xd9\x01\x93\x29\x9d\x3d\x5e\xcb\x37\xa9\xda\xed\xef\x73\x61\x7b\x20\xa6\x87\xb6\x6b\xc1\xf6\x8b\x4a\xe3\x3f\xcd\x3f\x28\xd8\x1b\x5c\xec\xbd\x3a\xe9\xea\xa6\x4c\x32\x77\xdc\xeb\xa1\x71\x26\xf2\x2c\x65\xfd\x43\x2a\x05\xea\x8a\x1d\x49\x67\xbb\x7d\xf8\x3b\xec\x40\xc0\x52\xcd\xdf\x82\x81\xfb\x81\x0d\x4b\x3f\xe8\x6f\x3e\xd3\xf9\x8e\xdf\xe4\x77\x3a\x3c\xef\x4c\xd8\x4c\xb2\x31\x55\x6c\xd2\x7f\x5f\xbc\x93\xb3\xce\x77\xe0\x5e\x00\x9a\xfa\x4e\xc7\x84\x25\x76\xd6\xfd\xef\x8b\x2e\x24\x60\x24\xdd\x5b\x99\x62\xc3\x8e\xda\x65\x92\xc1\x15\x6e\x9a\x67\x1d\x13\x68\x57\x73\x79\xd6\xea\xa8\xb3\xcd\x76\xe9\x01\xcf\xe4\xb0\xf3\x8a\x86\x44\x64\x87\x9d\x4c\x74\x18\x1d\xef\x76\xa0\xfd\xf7\x05\xcf\x3b\x7a\x24\x7c\xc2\x24\x9b\x74\x54\x06\xe6\xb4\x99\x72\xb1\xfa\xa0\x54\x67\xfb\xa8\x6a\x11\x41\x65\x36\xd9\x61\x26\x0d\xbc\x1e\x0c\xee\x43\x40\xa3\xba\x42\xc4\xfa\xfe\x30\x71\x6d\xc7\xe4\x97\x02\xcf\x03\xaf\xd2\xfa\x66\x2b\x07\x7b\x93\xce\x96\x79\x0d\x7f\xbe\xeb\xd4\x4d\xdf\xb9\x49\x67\xdf\xb1\x83\xb0\x92\x78\xe5\x2e\x31\xcb\xd2\xa3\x29\x4f\xd3\x0e\xd7\xd3\x32\xcd\x24\xeb\x14\x10\xac\xc5\x34\x65\x59\x11\x55\x5d\xef\x4a\x93\x01\xf5\xb8\xb4\xb1\x43\x7d\x50\x47\xed\x17\xcb\x26\x32\x3c\xe1\x51\xda\x64\xb1\x05\x1c\x63\x7c\x3e\x37\x09\x98\xf0\x31\x9f\xcf\x51\x1a\x8b\x24\x1a\xb8\xe0\xf6\xdd\x7f\xde\xdd\xe8\x6c\x6c\xe8\x97\x6b\xd0\xd4\x46\x46\xd4\x46\x56\xb1\x66\x1a\xae\xbc\xca\xd5\x5a\xae\x32\xdd\xf0\x8b\x19\x78\x70\x49\x26\x7a\x2c\xbb\xd1\x1e\x99\x45\x7b\x64\x3f\xda\x23\x07\xd1\x1e\x39\x8a\x8e\xe9\x64\x72\x2b\x9b\xb0\xe1\x16\xa1\x93\x89\x5e\xab\xb0\x55\x81\x8f\xf7\x6d\x70\x28\x1e\x19\x99\x6b\x0b\x31\x4d\x80\x0e\xc1\x2e\x67\x0b\x29\x4c\xf2\xc8\xa5\x09\xac\xc3\x81\x01\xad\xce\x31\xa1\x88\x93\x1c\x13\x66\x82\xfa\x50\x94\xe9\xa7\x5d\x94\x93\x2e\x9d\x4c\xba\x98\x1c\x20\x4c\xf2\x92\x98\x1b\x52\xe8\xff\xbe\x7d\x00\xb0\xae\x93\x1d\x06\xce\xf8\xc3\x43\xf7\xeb\x6a\x56\x08\x35\xbc\xa3\x1f\x75\x79\xf3\xf8\xa6\x7b\xcc\xbd\x67\x5d\x3a\x6f\x14\xcf\x5b\x4c\x41\x0f\xbd\x1b\x3e\x35\x82\x34\x75\x7b\xf9\x50\xcb\x00\x25\xb1\x72\x0c\x80\x70\xd7\x3d\xe9\x86\x98\x99\x37\x9f\x3e\xd5\x86\x45\xd0\xa2\x5e\x6e\x7d\x6c\x41\x73\xad\x6a\x27\x59\xf1\x8e\xa3\x66\x3b\xb5\x11\xcc\xe0\x32\x7f\xb1\x92\x52\x37\x36\x5c\xac\xf9\x88\xc5\x3c\x31\xf9\xe9\x34\x89\x79\x75\x62\x62\x65\x0a\x04\xf6\x88\x28\xeb\xab\x4c\x6f\xbb\xcc\x4b\xc6\x53\x22\x0b\x0c\xd1\xe4\x72\x09\xf4\xf3\x75\x09\xc9\xbb\xeb\x1e\x47\xa6\xa3\xa1\x7b\x67\x0d\xc4\x00\x06\x7a\x5a\xf7\xa5\x3f\x99\xcb\x8b\x42\xc4\xda\x8a\x20\x0e\x96\xf1\x1f\x10\x51\x87\xb5\x52\x2f\x8a\xcb\x1b\x1b\x0a\x33\x24\xb5\xc8\x53\x92\x6d\xb6\xc3\xc5\x3b\xb3\x09\x55\x6c\xb8\x4f\x98\x98\xd8\xdf\x07\xc6\x95\xd0\xb7\x73\xdd\x47\x98\xdc\x0d\xc5\xf8\xeb\x88\xf5\xf9\x04\xb4\xe8\x07\x08\x97\x64\x97\xe6\x00\xe5\x15\xfd\xab\xc6\x46\xf3\xce\xcb\x02\x77\xe4\xe5\xc3\x70\x0a\xcd\xa3\x7e\x26\xd6\x8e\xfa\xa1\x38\x65\x6b\x1c\xf5\x3d\x38\xa3\xfd\xe8\x36\x84\xb2\xb7\xb0\x46\x07\xd1\xdb\x64\x37\xda\x21\xb3\x68\x9b\x40\x03\x8c\x30\x6b\xe8\x79\xe4\x87\x17\x2b\x11\x26\x47\xb5\x7a\x71\xc7\xb0\x22\x13\x1b\xdc\x4c\xcf\xf8\x90\xd9\x08\xec\x77\x8f\x66\x6c\xa8\x4a\xbc\x94\x6c\xd0\x95\x16\x7a\x70\xab\x4b\x6f\x99\x63\xd8\xcf\x2c\xd0\xa2\x5b\x72\x3e\x60\xba\xb1\x0e\x9f\x30\xa1\xf8\x94\x33\xd9\xc5\x6b\xfb\x75\xa0\x39\xdf\xc8\x64\x84\x44\x7f\x42\x15\x8d\x24\x99\x21\x41\xba\x05\x4c\x40\x17\x83\x0d\xac\xb9\xf8\x00\x87\x1f\xf8\x08\x74\x03\x13\x55\x99\x99\x00\x0d\x11\x41\x92\x5e\x8f\x59\xb7\xd7\xff\xd5\xd7\xeb\x75\xf4\x21\xb7\x4b\xd7\x65\x2d\x09\xd4\x10\x4a\x83\xac\x80\xd0\xf8\xd8\x3e\x81\x66\x60\x2d\xdc\x29\xc2\xdf\x29\xf7\x91\x88\x79\x52\x07\xb4\xf3\xec\x22\x66\x48\x12\xeb\x24\x6d\x09\xdf\xfa\xa0\x86\xeb\x8e\xa7\x9c\x07\x36\x25\xcc\x14\x5c\x11\x56\x7b\xf1\x57\x7d\xbc\x8f\x9c\xbf\x63\x3d\x08\x43\xd6\xb8\xe1\x8a\xf8\x14\xa9\x17\x07\xc1\x08\x35\x23\x64\x8c\x31\x14\xd9\xf4\x56\xc4\xee\x61\x43\xde\x99\xa1\x20\x5e\x04\x77\x64\xda\x14\x66\x2a\x30\x7e\x29\x1a\xf4\x7a\xf6\xc9\x6f\x90\x64\x55\xd9\x2c\x28\x9b\xb5\x94\xdd\x45\xec\x94\x59\xb9\x12\xca\x84\xd5\x8a\x89\xf9\x7c\xdd\xc1\xe1\x99\x93\x79\x41\xbd\x1d\x5c\xd5\xda\x54\xb9\xf0\xec\x97\x58\x02\xf9\xe4\x35\x31\x63\x9a\x5a\xeb\x41\xfb\x8c\x38\x2f\xbd\xf6\x6b\xc0\xf6\x10\x3e\xae\x9f\x6e\x23\x7c\x3c\xde\x88\x36\xeb\x37\x6f\x23\x7c\x3c\x88\x22\x34\xbe\x10\x6d\xe2\x5e\x6f\xe2\x9b\xf2\x1d\xf5\xa7\x5c\x32\xd4\xb5\x59\x11\xba\x64\x82\x89\x2b\x10\x0d\x3c\x5c\xbd\xeb\x98\xd0\x16\xa5\xde\xf2\xb6\x7b\xa5\xb2\xd9\xce\xad\x7e\xd5\xb0\x73\x46\x3f\xc8\x3a\x9a\xa5\x36\x3c\x1f\xec\xcc\xdc\x38\x64\xce\x68\x9e\x43\x5a\x4f\x5f\x6f\xe1\x89\x55\x40\x66\x5d\x56\x03\xe1\xd4\x50\x5a\x5c\xa9\xe4\x8c\x5a\x2c\xaf\xcb\x96\x65\x59\x05\xc6\x79\x66\xd0\x0c\x4f\x65\x30\xd6\xcd\xf1\x85\x4d\x63\x60\x6f\xad\x8e\x6a\xc3\x7a\x67\x86\xc4\x6c\x98\x68\x10\x7c\x3d\x75\x90\x5d\xe9\xcb\x72\x23\xda\xc4\x10\x8c\x57\x26\x40\x92\x2a\xcd\x9b\xeb\x60\xc9\x72\xdd\xdc\xba\x4e\x22\x46\xac\xe3\x85\xdb\xdc\xf6\x82\x4f\x53\x23\x2f\x3f\x1e\x35\xb5\x98\x29\x38\xb2\xff\x9d\x75\xda\xd0\x3e\x47\xb1\x4a\x82\xec\x42\x2e\xad\xbe\x09\x1b\x60\xf0\xcc\xf6\x08\x78\xa6\xbc\xde\x9c\x09\xdd\x24\x12\x2b\x32\x0d\x75\x7c\x1d\xf6\x46\xf7\xff\xfd\xe9\xff\xfc\x07\x9d\xee\x86\xf2\xe3\x68\x86\xb7\x56\xed\x52\xcd\x7a\x43\xc4\x69\xbb\x1e\x80\x30\x0c\x7c\x7a\xd4\x19\x1b\xe7\xc7\x22\x67\x9d\x29\x4d\xf3\x23\x67\x33\x4a\xf3\x0e\x3b\x00\x9f\xdd\xbc\x30\x37\x6d\x35\xfa\xa8\x28\xee\x42\x0a\x7e\x8d\xe6\x5d\xd2\xcd\xa6\xd3\x2e\xe4\xe1\xf0\xbd\x4d\xf5\x86\x04\x41\xb9\xc1\x27\xeb\x35\x5c\xf6\x2b\xee\xde\x31\xbd\x38\x78\xb6\x99\xe9\x5e\x1f\x2c\x13\xd2\xc9\xb9\x18\x33\xcd\xd6\xd3\x54\x32\x3a\x39\xea\xec\xd2\xbc\x33\xb3\x4d\x76\x7e\xab\xbb\xa1\x5b\xdd\xe8\xfe\x56\x17\x8c\xe8\x2d\x7d\x5c\x69\xa5\x1d\x44\xf7\xb5\x37\xb7\x7e\xb8\x51\x1b\x5b\xed\xdc\xb7\x21\xee\x82\xa3\xb9\x31\x21\x64\x5f\xd5\x82\x93\x02\xc0\xf7\xd6\x09\xed\xf3\x39\x32\x6f\xa2\x38\xc1\x2e\x14\xfd\xb1\x6b\x70\x28\x20\x6c\x29\x2f\xe1\x7e\x38\x08\xd6\x09\x68\xe7\x9f\xd3\x15\xaf\xd9\x3a\x4c\x62\x7c\x5c\xf4\xdc\xaf\x1a\x96\x0d\xb6\x09\xe0\x55\x37\x04\x2e\xca\xb5\x4c\x40\x27\x91\xbd\xc8\xeb\xf5\xcd\x30\x8f\x33\x13\xdb\x1a\x62\x6f\x44\x91\xd0\x04\xd6\x12\xff\x4c\x9f\x3c\x95\x63\x09\xd1\xa8\xe2\x41\x6f\xe5\x29\x62\xda\x06\x92\xcf\xeb\x38\x5d\xcb\x26\x66\xa0\x59\x5f\x4a\xc2\x3b\x6b\x8f\x9e\x1a\xe8\x7d\x9a\x30\x5b\x5f\x09\x0d\xfa\x1a\xad\x80\xb7\x7c\x17\x85\x28\xa9\xa2\x3a\xde\x19\x44\x7d\xf4\x34\x24\x99\xa6\x50\x99\x20\xac\x9f\x4d\xa7\xfa\xe7\x74\x4a\x18\x90\xfb\x48\xc1\x3f\xc2\xce\x8a\x2a\xe6\xdf\x13\xff\x77\x9b\x1f\x32\x4c\x77\x67\x2e\xf6\xd8\xe4\x2a\x1c\x88\xf9\x8a\x7c\x73\x92\x79\xa9\xe9\xae\xfe\xce\x95\x5b\x37\xae\xdf\xb9\x7e\xb7\xb5\xe8\x9e\x5f\x12\x1a\x3d\x33\x81\xde\xe9\x7d\x67\x7e\xdf\xd7\xa5\x6c\x2d\x44\xbd\x32\xef\x6a\x0e\x98\xaa\xb3\xc6\xc4\xfd\x76\xc7\xa7\x16\x15\x7e\xd1\x1d\xa6\xae\x31\x36\x3b\x33\x83\xdf\x0e\x53\xaf\xb3\xa3\x77\xe1\x2c\x6f\x2d\x9c\xfa\xe9\xfe\xf2\xd3\x81\xbd\x1d\x94\x35\x54\xa4\x7d\xb6\x82\x82\xb7\x65\xb6\xcf\xf3\xf6\x15\x18\x7b\x25\xf7\xd8\xd1\xab\xe2\x94\x56\xdf\xf6\xca\xa6\x59\xb6\x57\xcc\xec\x24\x67\xed\xcb\xb1\xeb\x95\xdf\x67\x72\x87\xad\x9c\xb1\x1b\xcd\x92\xb7\x58\x0e\x4e\x91\x2d\x65\xaf\x79\x65\x45\x26\xf7\x69\xca\x1f\xb0\x53\xa0\x3e\xf4\xca\x9b\xb3\xf3\x3d\xae\x76\xb3\xa2\xbd\xf4\xcb\x5e\xe9\x59\x21\xd9\x95\xd5\x69\x1d\xef\x78\x45\xf3\x53\xd0\xe1\xa6\x57\x4e\x41\x70\xa6\x96\x42\xef\xb8\x14\x8b\x3c\x38\x16\x81\x23\x31\xe1\xa4\x58\xd9\xf0\x93\xb0\x4c\x1f\x32\x3e\x2e\x51\x18\x6e\x45\x80\xaa\x28\xb8\x36\xbf\x46\x95\xf3\xa5\xf0\x6e\xf7\x71\x69\xe8\x6d\xe3\x5a\xd8\xeb\x97\xb8\x07\xbd\xd4\x5c\x13\xd8\x20\x3a\xa1\xef\xb9\x79\x0a\xcd\x5a\xba\x2c\x0f\x04\x3f\x17\xdf\x1f\x6c\x85\x65\xe5\x93\x45\xa3\x38\xa9\xb2\x91\x5d\xf6\xb2\xe9\xcd\xe7\xea\xc2\x85\xce\x4b\x03\xdc\xeb\xad\x23\xd1\xb0\xb8\xbd\x8c\x6d\xce\x10\xc7\x1f\xd7\x69\xbc\xf8\x8a\x34\x5e\xa2\xd7\xb3\xbc\x35\xdc\x15\x64\x75\x1a\x2f\x0b\x4c\x16\xa4\xf1\xe2\x96\xc7\xe0\x2e\x8d\x57\x45\x80\x1a\x21\x0c\xed\x31\xc7\xa2\x38\xb1\xd7\xc4\xcd\xa3\x13\x6e\x8d\x99\x71\xbe\x19\x53\x85\x72\x14\x5c\x1e\x7b\x47\xf4\x52\x4a\xed\x46\x3a\xc7\x38\x71\xc9\x5c\xe2\xa4\xbe\xb7\xb0\x06\x07\xb1\x48\x7a\xbd\x0c\x3c\xcf\x70\x1d\x1d\xe1\x8c\x2c\x00\xb1\x48\x5c\x50\x11\x3c\xb2\x2a\x45\xf0\x5c\x2e\x90\x22\xba\x25\x9b\x5c\xa5\xaf\x05\x47\x67\x62\x66\x6f\x81\x4b\x3c\xb4\x55\xd7\x81\xef\x30\xd5\xab\xe8\xec\x05\xb2\xed\xbb\xa6\xb0\x97\xb4\x5e\xb6\x26\xce\x04\xac\xef\xf5\x96\x8f\xcb\xf5\x75\x04\x79\x14\xd4\x2e\x83\x10\x3f\xb0\xda\x10\x5a\xdf\xac\xd8\x0a\x8b\x33\x53\xbc\xdd\xcd\xc9\xb4\xd0\xfa\xcd\x36\x0a\x8c\x6c\x7b\x4a\xf0\x90\xbb\xf0\xfc\xf4\x20\x63\xfc\x7c\x8e\x64\x64\x49\x32\xc6\x9e\xde\x8b\x93\xcc\x33\x0c\x85\x54\x32\x1a\x35\x0b\x64\xef\xd4\xf4\x5e\xad\xf3\xd1\x85\x09\x3e\x73\xbf\x34\xe0\xe6\xa9\xc5\xeb\x94\x42\x6b\xc6\xb8\x6f\xc4\x91\xbd\xdd\xc2\x43\x54\x65\x31\x20\x2a\x30\xea\x1b\xa9\x61\xd3\xf2\x50\xcb\x38\x36\x39\x1b\xcc\x27\xa2\x24\xc7\x65\x81\x90\x88\x5c\x6c\x7b\x46\x14\x44\xc4\xc7\x6e\x8f\x82\x27\x2d\xd8\x7d\x1a\x04\x76\xff\x50\x43\x75\xa7\x88\x6c\xba\x26\x37\x1c\x77\xc0\x9e\xfd\x38\xa5\xdb\x2c\x1d\x0e\x48\xce\x44\x10\x80\x08\x12\x90\x80\x8b\x9e\xdd\xac\x5e\x0e\x34\xfd\xbb\x24\x4a\x1e\x41\x02\xd5\x6c\xa6\xff\x55\x7a\xc4\x2c\x32\xb9\x09\x73\x34\xc0\x04\xea\x0e\x73\xb4\x89\x89\xf9\x3c\xcc\xd1\x25\x5c\x92\x53\x68\x1d\xca\xbe\x82\x05\xa8\x97\x3d\x28\x47\xd9\x32\x0e\xe5\xcb\xaf\x32\x18\x9b\x6c\x8f\xd3\x72\x83\x09\x67\xc3\x94\x57\xd2\x18\xbb\xcf\xc6\x85\xe2\x62\xa7\x6f\xa5\xc4\xcb\xf4\x32\xd6\xe8\xa2\xdb\x89\x36\x89\xe8\xf5\x10\x8f\x2e\xf5\xb2\x78\x90\x8c\x84\x25\x7e\x43\xfb\x04\xdd\xcc\xe7\x08\xf1\x48\xd4\x74\xd1\x86\x83\x16\x98\x0c\xf0\xd0\x60\x28\x10\x63\x1e\xb9\x2f\x24\x8b\x37\x93\xd0\xca\xbe\xc3\xd7\xf2\x43\xae\x71\x12\xd2\x22\x80\x57\x65\x6c\xba\x25\xd6\xf0\x46\x4b\x59\x7a\xcd\x8e\xc7\x34\x67\x9d\xc1\x10\xfe\x6d\x0e\x79\x94\x19\x93\x99\x35\x78\xf1\xcc\xd0\x51\xdc\x3e\x2c\xff\xc6\x46\xe5\xcf\x17\x6f\xba\xbc\x90\x9b\xa5\x29\xfc\xec\xb0\x2e\x25\x4c\xfe\xba\x2c\x8a\x07\xc9\xda\x38\x13\x8a\x8b\x82\x99\x62\xcf\x0f\xb3\x88\xf6\xb3\x59\xde\x9f\x65\x33\x84\x09\xed\x6b\xfc\x30\x0f\x75\x51\x7b\x09\x37\x84\xf0\x45\x88\x47\x88\x47\xa6\x20\xf6\x34\x4c\x3c\x76\x22\xcd\x85\xcd\x04\xcf\xe7\xcf\xad\x47\x90\x3e\xaf\xd7\xbb\x64\x7f\x61\x7c\x4c\xa3\x41\xd5\x6c\xc9\xa7\xe8\xe9\xc8\x15\x42\xeb\x7c\x3e\xd7\x70\xbe\xc4\xe1\x59\xff\x7c\x91\xc7\x4f\x43\x2d\x33\x14\x18\x86\x35\x22\xe2\x53\xf4\x5c\x55\xd7\x7e\x7f\x51\x63\x78\x5d\x9a\x1b\xd7\x85\xac\xae\xc1\xfd\xa2\x97\x82\xa2\x97\x12\x62\xe7\x41\x13\xfc\x0c\xbb\x4a\xf1\x25\x68\xff\x8c\x19\x2a\xb3\xc8\x25\xf9\x24\xd4\x27\x41\x51\xfc\x1c\x61\x09\x11\xd1\xa0\x3a\x4a\x65\xc4\xa3\x81\x86\xe6\x59\xc0\x01\x97\x1c\xb3\xde\xa8\xd5\xa2\x0e\x92\x91\x7e\x6d\x5d\xa9\x89\x33\x71\x2e\x51\x9c\x91\x3c\x81\xe0\xff\x26\xa8\x52\xb5\x4b\x04\x3e\x76\xb8\x66\x46\x56\xa1\x94\xa3\xc6\x16\x7a\x3d\xc8\x78\x40\x2e\x11\xf2\x74\x82\x49\xfc\x0c\xb1\xc4\xb9\x6f\x98\x90\x64\xcd\xa2\x60\x25\xbe\x8b\xbe\x26\x35\x08\x93\xf8\x12\x98\x12\x80\xad\xd3\xea\xd4\xb7\xdd\xed\x2c\x4b\x19\xf5\x75\x87\xbd\x1e\x03\x92\xe9\x42\xdf\x4b\xdb\xc9\x25\xdb\x49\x7c\x89\xb8\x4e\xec\x97\xa7\xab\x2f\xc6\x80\x1b\xe3\xe5\xec\xce\x26\x21\x8e\xe6\xab\x20\x71\x9b\x0a\xbc\xf5\x2b\x95\x5c\xac\x3c\xee\xa0\x2d\xf5\xb0\xb2\x4e\xdf\xba\x16\x24\x1f\x0e\x74\xec\xdc\x5a\xdd\x19\xae\xd3\xf1\x6f\x6b\x32\x92\xb1\x88\x79\x92\x94\xcb\x67\xf8\xee\x8a\x5c\xd9\x4e\xd3\x09\x01\xc8\xc0\x5c\xec\x10\x04\x25\xc2\xb5\xe0\x9e\x4e\xcc\x03\xd5\xe8\x64\xc4\x22\x92\xeb\xdf\x26\xcd\x0d\x29\xa2\x09\x02\x4b\x00\xab\x63\x5f\x2f\xe6\xf3\x0c\x15\x38\xb0\x51\x0a\xb9\xdd\x02\xf7\x7a\x45\x3f\xcf\xf6\x59\xeb\x3a\xb5\x28\x79\xf5\x2a\x9d\xd6\x5e\x5b\x6e\x89\xf3\x0e\x2c\xf3\x06\x46\xbd\x81\xe5\x56\x8f\x32\x95\xd9\x3e\x62\x2b\x73\x26\x33\x54\x9d\x81\x70\xfe\xba\xd3\x2b\x37\x03\x1c\xe3\x91\x8f\xc7\xb9\x3d\x9f\xa7\xb8\x35\xae\xd1\xd7\xc0\x5e\xdf\xda\x43\xd5\x49\x1c\x4a\x94\xe3\x12\x15\x26\xdc\x8e\x24\x6e\xe8\x43\x41\xdc\xc0\x87\xdc\x5e\x6f\xe5\x43\x4a\xec\xa0\x87\xb9\xcd\x45\x9e\x46\x85\x1d\x97\xe6\x24\x5c\x1f\x63\x94\xe2\x51\x6a\x46\xb0\x2a\xb9\xf4\x30\x2d\x41\x94\x99\x7d\x23\x9a\xac\x10\x4d\xf6\x1f\x53\x34\x99\xad\x14\x4d\xc8\xc1\x8a\x70\x87\x8d\xb0\x4a\x79\x14\x57\x04\x82\xf9\x5e\x6c\x93\x89\x0b\x39\xbc\xc2\x1b\x38\x70\x4e\xac\x9a\x33\x73\xc9\x82\x5b\xdf\xea\xf2\xc2\x99\x34\xd8\x50\xc6\x60\x76\xc4\x96\x9c\xc2\x5b\xfb\xad\x15\xe9\x7a\x5e\x1a\x7d\x7a\x93\xe3\x5c\x8c\xaa\x8f\xb1\x0a\xee\x3f\x00\x2b\x1a\xd5\xbd\xbb\xb7\x10\x1e\x17\x6a\xfd\xeb\x2c\x92\xee\xd7\x5f\x9c\xb5\x46\xa7\xcb\xc6\xf2\xca\x9b\x29\xc3\xa8\xdb\xa3\x75\x1f\x24\x07\xac\x81\x2b\x91\x77\x6f\x74\xd4\x10\x3a\x59\x7f\x0b\x6e\x00\xd8\xe4\x56\x66\xee\x97\x73\xb0\x26\x5a\x7a\x0b\x09\xc0\x5c\xb6\xb6\xa5\xaf\x1a\x58\x77\x64\x80\x68\xd4\x5e\x06\x6e\xa1\x0f\x30\x31\x79\xb1\x77\xc8\x57\x4c\x4b\xde\xd8\xe1\x44\x6a\x99\x59\xcf\x1a\xb8\x55\x01\x37\x5d\x5d\xf0\xba\xcc\x37\x7c\xaa\xc5\x4a\x17\x2e\xc4\x93\x00\x6d\x3a\x38\xcb\xa1\xac\x4e\x63\x2e\xce\x91\xc6\x5c\x84\x69\xcc\x5b\xd3\x0d\xa9\x51\xf7\xcd\x2a\x50\x88\xc8\x94\xe7\x12\x32\xec\x2e\x79\x2e\x98\x22\xce\xf4\xaa\x8b\x4b\xb2\xb5\x2c\x7d\xa0\xad\x30\x39\x7e\x18\x32\xa7\x4e\x10\x0c\xc2\xc1\x92\x29\xb8\xbd\xf3\xdb\x08\x93\x23\xfa\xb6\xe0\x32\xc1\xe7\x52\x31\x28\xc2\xb1\x9e\x9b\x98\x27\x91\x8a\x79\xe2\xd1\x14\xdc\x9e\x33\xc7\x53\x83\x1c\xa2\x3a\xd2\xf0\x7a\xe6\x65\x7a\x02\x1e\x28\xd0\x7d\xd5\x77\x17\x36\xe9\xa0\xc1\x98\x2d\x74\x5c\x12\xff\xde\x15\xc6\x11\x06\x61\xed\xf5\x32\x24\xce\xad\x33\x11\x95\xc2\xa4\xd7\x13\x01\x04\x23\xb8\x45\xb2\x74\x7f\x08\x0f\x87\x48\x60\x2f\xf5\x5e\x68\x22\x51\x2d\x82\xd1\xe0\xc0\x8d\x6f\xac\x92\x96\x41\x19\xd6\x24\x83\xcf\xd8\x1d\x78\xd7\xcd\x63\x88\xdb\xee\x34\x58\xdf\x0c\xed\x1e\xbe\x3e\x9d\xa9\xa6\xb5\x25\xcc\xd3\x52\xd2\xc9\xc0\xf7\x93\xb3\x1c\x31\x02\x69\xd8\x4c\x6c\xa2\x72\x27\xaa\xe2\xf9\xd4\xd1\x50\xbd\x19\xbe\xc6\xf2\xb1\xe4\x33\x95\xc9\x7c\x74\x56\x81\x16\x2e\xa7\x8e\x74\xd6\x88\xd2\xd4\x9a\x44\x1f\x16\xe8\x8c\x5e\x4c\x32\x24\x8c\x89\x32\x77\xed\x6f\x7e\xc3\x7a\xac\x60\x3d\xee\x3f\x26\xeb\xf1\xe6\x39\xb4\xa2\x57\x7c\x86\x70\xe4\x31\x21\x61\x32\x2e\x92\xaf\x55\x33\xc6\x41\xef\x11\x27\xb8\x9a\x4e\x5d\xa4\xf8\xe6\x6c\x39\xef\xd9\x82\x04\x26\x69\x54\x54\xf6\x29\xa9\x41\xb5\xfa\x95\x99\xbf\x71\x94\x5a\x8d\xe2\x34\x52\xf1\x38\x59\xcb\xd0\x14\x8f\x18\x9a\x12\x49\xc2\xd0\x7c\xe4\x3e\xe2\x24\x1e\x27\x18\x0f\xdb\x8c\x0f\xa7\xcd\x0b\x8c\x29\xee\xf5\xa6\x7d\x76\xc0\xe4\xd1\xe9\x32\x5d\x14\xc8\x74\x1a\x9f\x63\xd7\x55\xad\xc5\x4e\xa2\x29\x2e\xeb\x7d\x41\x57\xec\x8b\x14\xdc\xb9\xec\xbe\xc8\xa3\xa2\xde\x17\xb9\x59\xe1\x22\xd8\x17\xd4\xee\x0b\xda\xd8\x17\xb2\x44\x8c\x1c\x97\x24\x24\x47\x78\x78\x6c\x04\x99\xbd\xa8\xbb\xb5\x55\x5d\xb3\x6e\x6d\x79\x37\xd3\xb7\xc3\xbb\x62\xd6\xdf\xda\xaa\xee\x2e\xb7\xb6\xa2\x28\xda\xf3\x0d\xa1\x3c\x5a\xf4\x0d\x7d\x6a\xa5\x4f\xc8\xd7\x79\x40\x5c\xb2\x78\x90\xc0\x98\x4c\x1a\xd7\x4d\xa3\x61\xe0\xf3\xf9\x3a\xb2\x89\xa0\x6b\x7b\x3e\xfd\x25\x0b\x37\xee\xfa\x3a\x18\x07\x9b\x9b\x35\xf8\xe9\xd9\xb0\xad\x47\x11\x0d\x42\x8f\x0a\x44\x71\xaf\xf7\x36\x70\x41\x24\xab\xb1\xd1\x5c\xcd\xdd\x6d\xe1\xde\xee\xfe\x77\xc0\xbd\x5d\xfd\x06\x2f\xcf\x85\x97\x80\x80\x17\x36\x31\xd9\xc4\x1a\x29\x45\xd4\xe4\x5e\x56\xaa\x6e\x3a\x6c\x3d\x8a\x64\x89\x5b\xa3\x47\x7a\xfe\x74\x9a\xd3\x61\xb1\x34\x91\x23\x5b\x6c\x93\xaa\x65\xbd\xab\xd9\x65\xe1\x69\x1e\xef\x79\x94\xb6\x8a\x9e\xde\xb5\x51\x1e\xfc\x68\x7b\xf6\x55\x85\x4e\xf0\xa2\x6e\xe7\x66\x7d\x55\x56\xad\x8a\x71\xd6\x3d\xce\xe9\x94\xdd\x61\xca\x2a\x7e\xad\x24\x49\x5b\x23\x50\x78\x7b\xb8\x84\xe0\x96\x66\x66\xee\x61\x92\x1b\xb5\xa8\xe8\xdb\xd6\xa2\xea\x97\xbf\x75\xc2\x94\xbb\x9a\xd5\x95\x25\xc4\x5b\xa3\xe1\xee\xee\x54\xb5\x6d\x1d\x52\xfb\x89\x15\xd1\xe0\x72\xf1\xa2\xab\x70\xb9\x70\x29\x1d\xd2\x88\xc6\x45\x42\xc6\x91\x66\xd3\x53\xc3\x97\x8f\x81\xa9\x1f\x6b\x74\x4e\x43\xbe\xfe\xd8\xf2\xf3\x69\xe2\x2c\x3c\x6d\x80\xdd\xab\xde\x4b\x42\x21\x61\x46\x28\x64\x58\xcf\xba\xa1\x5c\xd3\x05\x41\x6a\xe6\xe8\x26\x9a\x12\xea\x48\x19\xa9\x46\xe3\xdd\xde\x4e\x88\xc0\x4e\xcf\xef\x8f\x2e\x05\xc6\x1c\xb2\x99\x77\x96\xde\xeb\x31\x14\xde\xf4\x5c\xd8\xc4\xc7\x61\x21\xe9\xda\x64\x91\x06\xa7\x4a\x99\x07\x84\xed\x55\x1f\x93\x6b\xba\x70\xed\xb1\xe4\x11\x43\x3a\x6a\x56\x7f\x45\x9c\x00\xfb\xf5\xd5\x76\xf6\xbf\x16\x5c\x6e\x22\x49\x14\x01\x49\xca\x68\xdd\xad\x02\xa2\x25\x8e\x10\xba\xf5\xdf\x2c\x51\x26\x6f\x44\xc7\x41\xf6\x96\xd0\x97\x72\x1d\x79\x19\x57\x4c\xf0\x61\xe6\x34\xd7\x0d\x10\xe0\xfa\xbd\xf5\x0b\xc4\xdb\xae\x63\x69\xcb\x88\x01\xa6\xdc\xd0\x98\x52\xa9\xc1\x15\xc6\xd8\x5c\x6e\xb6\x0a\xef\x16\xb9\x8d\xb4\x2b\xb1\x33\x15\xd4\xf5\x79\x3a\x91\x4c\x68\x0c\xf0\x6d\x2e\xa9\x35\x96\x53\x4c\xd8\x01\xe5\x61\xbf\x56\xe5\xae\xf0\x5a\xa3\x19\xd8\x39\x0f\x90\x24\x39\xa9\x2a\xe0\x12\x98\xb9\xea\xe6\x71\x26\xb3\xfb\x47\xa5\x9f\xf9\xa8\xe6\xf4\x8d\x0f\x6a\xd0\x75\x11\x55\x2f\xac\x87\xaa\x85\xa3\x20\x5e\x0e\xd4\xe0\x6d\xb9\x9a\x8b\x8d\x55\x62\x33\x03\x85\x93\x3c\xd2\x5f\x1c\xb5\x2c\x49\x76\x28\x20\xe0\x47\x0b\xf2\xbf\xcd\xa6\xa9\x46\x27\x5b\xa4\x5e\x06\x93\x11\xaa\x55\xe2\x1d\xb6\x8a\xf7\xae\xa5\xd5\x72\xb2\xb7\xc2\xe0\xcd\x73\x7a\x3b\x10\x67\x32\xa8\x92\x37\xb0\x33\x70\x07\xcf\x15\x95\x2a\x7f\x8f\xab\x5d\xd4\xdd\xea\xe2\x91\x6b\x26\xaf\x08\xf4\x30\x78\x55\xb7\x4c\x0c\x7d\x94\x18\x97\x1e\x67\xf2\x4a\x68\xf3\x1d\xab\x04\xf6\xfc\x83\xd5\x29\x7d\xc0\xff\xb0\x52\x8c\x82\x40\x76\x5c\x7a\x2e\x97\xc6\x40\x27\x78\x25\x81\x35\x78\xc5\x05\x56\x35\x8b\xee\x6c\xd0\x2d\x80\xce\xf6\xca\x62\x8d\xb3\x56\x07\xbc\x03\x04\xbd\xad\x7f\x99\xed\xfc\x86\xcb\x39\x60\x71\xb8\xcd\xc8\xb8\x4d\xf5\x5e\x88\x43\x49\x67\xcb\x71\xa0\x7c\x38\xac\x7a\x09\xe3\x63\x66\x3c\x40\xbc\x28\x9d\x1e\x46\x67\x7e\x2e\x5f\x28\x48\x6e\xa1\x5b\x9a\x67\x50\x98\x30\xcf\x66\xb7\xa1\x59\x7e\x39\x54\xb9\xc7\x89\xa6\x91\x97\xe5\x32\xc9\xd7\xf4\x51\xc5\xf2\xc2\x66\x12\xd0\xc5\x35\x4f\xe5\x7f\x0a\x9f\xd3\x88\xa8\xbd\xc4\x37\x55\x4b\x7e\xc1\xa4\x50\xaf\x63\xb0\xce\xe7\xeb\x72\x79\xa7\x69\xc6\xea\xb4\xc3\x45\xc5\x2c\x89\x64\xcc\x12\xa3\x21\x32\x3a\xae\x6a\xd0\xef\x34\xd5\xe9\xab\xb0\xa6\x36\xeb\x3a\x2e\x9b\x66\x5d\x10\x30\xb6\xbe\xe7\x15\x46\xae\x15\x9a\x9d\xab\x23\xa7\x77\xcc\x91\xf5\x3b\xdf\x30\xd9\x2b\x94\x53\xef\x3e\xa6\x72\xea\x77\xce\xa1\x9c\xfa\xc0\xda\x55\xca\xa3\x0a\x3d\x60\x09\xeb\x71\x56\x9a\xd9\x1a\x47\xde\x6b\x90\xba\x16\x24\x6b\x08\x03\x16\xa2\xd5\x05\x43\x12\x6d\x16\x78\x85\x36\xd5\x7e\x6c\x95\x31\x7c\x97\x18\xe7\xe6\xf1\x6a\x7e\xbd\x0a\xd9\x67\xb6\xc7\x30\x4e\x4a\xb8\x4d\x6a\x0f\x35\x6f\xec\x98\x5a\x4f\x02\x33\x5d\x1a\x53\x2c\x68\xad\xf6\x89\x50\xa4\x66\x8a\x96\xa0\xa8\x8b\xe1\x12\x31\x92\x59\xde\xc2\xb1\xa8\x8e\x7f\x68\xa8\x0a\x33\x42\x5b\xa7\xb7\x75\x0c\xb9\x3b\xdb\x55\x9c\x27\x6b\x45\xaf\x57\x34\x09\x45\x7d\x1f\x50\x84\xac\x7a\x16\xbf\x8b\x28\x89\xf3\x50\x01\x65\x03\x3a\x0d\x03\xfd\x40\x81\x7b\x3d\x86\x0a\x00\xce\x55\x02\x6e\x34\x2b\x01\xe4\xe3\x92\xc4\x46\xa6\xf0\x01\xa6\xb5\x49\x52\x1d\x7c\x8a\x3a\x3e\x88\xc6\x59\xb2\x26\x3d\x76\x3d\x23\x39\x2e\x0d\xaf\x0f\xb7\x2a\x1f\xc0\x94\xcd\xe7\xeb\x2d\xd8\xd4\x66\x84\xc9\x1a\x4a\x0d\x06\x26\x92\xbd\xde\xfa\xb2\x36\xf5\xcc\x6c\x0c\xcd\xa4\x0f\x6f\xb3\x9d\xeb\xf7\x67\x26\xe3\x82\x17\x61\xec\x1a\x55\xcc\xbc\x04\x6b\x4c\xa4\xe2\x2c\xc1\xf3\xb9\xfe\x17\xca\x53\x6e\x8d\xb2\xea\xb0\x28\x96\xd6\x23\x9c\x8b\xc2\x99\x43\x86\xaf\x0f\x51\x81\x71\x19\xbe\xbb\x61\x51\xea\x86\x79\x06\xef\x4e\xfb\xa8\xe0\x51\xb3\x17\x18\x13\x4f\xe0\xbd\xb1\xc4\x35\x18\x7e\xe0\xd8\x56\x74\x76\x4e\x4d\xe9\xb7\x6e\x3a\xaa\x7e\x85\x22\x6c\xc8\xb7\x90\x0a\xd2\x48\x9e\x57\xe4\xb5\x6e\x83\xa1\x9e\xb5\x8e\x7b\x2a\xa2\x28\x6a\x1a\x91\x8f\xc4\x48\x0d\x1d\xb5\x1a\x2a\x38\x6f\xbe\xfd\xcd\x79\xb3\xe2\xbc\x79\xfd\x31\xcf\x9b\x6f\xaf\xb6\xc3\x78\xca\x97\xa9\xc9\x5b\x51\x77\xcb\xf2\x67\x5d\xf2\x2d\xfd\x60\xf8\xb9\x2e\x79\x2d\xea\x6e\x01\x5c\x79\x97\xfc\xee\xb2\x2c\xbb\x3e\x28\x09\x63\xd1\x71\xbe\xc7\x9d\x8f\x87\xb1\xa7\xac\x10\x18\x3c\xaa\x6b\xf3\x1b\x58\x5c\x76\x1a\x83\x1c\xe8\x76\x0c\x67\xf3\xbb\x4b\xec\x70\xc0\xfe\x58\x05\x90\x0b\xf9\x6a\x1d\x10\xd8\x2b\xc2\xf1\xc1\xb5\x4b\xc2\x4d\x3a\x73\xac\x73\xa8\x09\xdf\xb3\x2f\x5b\x6c\x12\xcc\x97\x7d\x7a\xb4\xcd\xde\x01\x1e\x18\x98\xe9\x48\x31\x97\x84\x1b\x3c\x3a\xa2\x9b\xe6\xd1\xfa\xfb\x44\x13\x78\x8c\xdf\x4a\x2c\x6f\x1e\x7f\x2b\x71\x6d\xc5\xaf\x55\x3f\xfb\x5b\x07\xce\x33\xc6\x01\xbb\x65\xa2\xc8\xe4\xd1\x1d\xc4\xc0\x69\xde\xbc\x95\x85\x10\x5c\xec\xbc\x5b\x0d\x45\x83\xd6\xc6\xa7\x2f\x05\x7a\xb7\x65\x2c\xfb\xcf\xb0\x6f\x44\xa3\x8f\xdf\xc0\xb6\x24\x9b\x4e\xcf\xaa\xde\x30\x97\x69\xb6\xb0\x64\x9d\xf2\x98\x3c\xbb\x21\x32\x55\xf7\x6b\xa2\xd7\x13\x55\xea\x67\xa3\xa6\x10\xe4\x75\xb8\x1d\x0e\xe0\x70\xe4\xef\x14\x9a\xd7\x2c\x7e\xa7\x51\xbc\x45\xcb\xb7\x22\x3b\xaa\x97\x96\xb2\xbb\xb5\x4d\x25\xbb\xea\x36\xd0\xf1\x4e\x5b\x2e\x68\x8b\x11\x6e\x43\x3e\x85\xd8\x79\x75\xaf\xce\xe0\x7e\x85\x06\xb6\x6c\x84\x43\x6e\x26\xbd\x5c\x99\xdf\xd5\x1f\xc1\x78\x15\xf0\x16\x18\x93\xa0\x2c\xfe\x56\xf2\x64\xba\x73\xf4\x65\x45\x6f\x21\xd7\xb5\x74\x12\x3a\xb1\x47\xf8\xde\x2c\x46\x29\x86\x55\xcc\xc1\x9b\x05\xd4\x5b\xe7\xb5\xcc\xd0\x85\x3d\xe3\x0c\xfd\xe8\x1d\xff\x74\x24\x02\xff\x16\x49\x74\xdb\xa1\x7f\x8b\xdd\xa1\x43\x5d\xd5\x23\x3e\x2e\x45\x80\x7d\xdb\x70\x7d\xe1\x1a\xaf\x3d\xd7\x17\x41\x0a\xc4\x0c\x30\xae\x17\xdf\xf5\x45\x18\x3b\xe6\xf8\xb5\x27\xb4\x08\x63\xeb\x7c\x79\x2e\x7c\xbd\x5e\x21\xc0\x48\x4b\xef\xc3\xe3\xf2\xc9\x21\xc2\x4a\x3c\xb0\xc3\x7d\x22\x3d\x4d\xa8\xa2\xa7\x77\xf4\xd6\x93\xe9\x88\xe7\x40\xb1\x57\xf6\xa5\xf1\x38\xad\x56\xb2\xca\x45\xf2\x44\x7a\xbe\x2d\x79\xae\xb8\x58\xb9\xa8\x81\xcc\x62\xd7\x93\x58\x6d\x8d\x3b\x85\xfa\xd5\x21\xf9\x3a\x3b\xaa\x8c\x2b\x9b\x2c\x5f\xaf\xa7\x7c\x1b\x83\xd3\xcc\x84\x21\x58\xc4\x38\x2d\x26\x2c\x37\xa9\x1e\x5d\x94\x3d\x67\x18\xbc\x7e\xfd\xc9\x52\x17\x9e\xdb\x28\x37\xab\xd6\x60\xdd\x44\x73\x30\x0b\xf5\x84\xba\xbc\xc6\xa5\x3a\x3a\xab\x43\xb7\x3e\x67\xf7\xc9\xc2\xdc\x50\xef\x88\x3d\x91\xd5\x64\xab\x95\x7f\x0e\x57\xd1\xe7\xcf\x6c\x16\xa9\xf8\xad\xc4\x65\x34\x72\x42\x88\xb0\x09\x56\xeb\x08\x04\xd0\x88\x49\x82\x6c\xc6\x09\x54\x8f\x39\x4a\xe6\x99\x6a\x3b\x86\xcc\x54\xd9\xa5\x62\x92\xb2\x9a\x59\x41\xeb\x03\x12\x56\x2d\x5d\x62\xf8\xf3\xb6\x1e\xb0\x4b\xec\x75\x76\x64\x53\xd2\xb0\x16\xe9\x70\x99\x51\xad\x5d\xb6\x87\xdd\x8d\x3b\xc8\x4d\xc0\x71\x89\xfd\xa0\x1c\x41\x63\x33\xc9\x66\x54\xb6\xa5\xaa\x62\xc6\x98\xd7\x3f\xe8\xb1\xd3\x6b\x12\x50\x6e\xda\x45\x78\x6a\x45\x5e\x43\x9f\xaf\x90\xee\xf2\x0d\x62\x3a\x10\x66\xf4\x7f\x6b\x8e\x67\x94\xa5\xb7\x16\x21\x80\xc6\x59\x8b\xb5\xa5\x32\xb0\xd8\x6c\x93\x4d\x59\x7c\x0c\x88\xf9\x5b\x89\xdd\xea\x9a\xac\x3b\x56\xf5\x86\x99\x53\x7f\xf5\x2d\xa7\x85\xba\xb6\xb7\x2e\x6e\xb2\xb3\x4d\x3e\xea\x80\xb5\x5d\xba\x86\x7c\xd5\x37\xbe\x8e\x5f\xdf\xd7\x91\x08\xc2\xbf\xf1\x77\xfc\xc6\xdf\xf1\x1b\x7f\xc7\x6f\xfc\x1d\xbf\x8e\xbf\x63\x56\xf9\x3b\x66\xed\xfe\x8e\xaa\x3a\x21\x2a\x9a\xdc\x97\x2c\xcf\xd2\x03\x73\xf0\xd9\xb3\xd8\x1e\x08\x08\xb7\x6d\x79\x05\x07\xc1\x48\x46\xe6\x87\x16\x12\xda\x4a\xf9\xdc\x87\x22\x5d\x5d\x54\xcb\x5c\xc8\x26\xba\x6c\x2a\x5d\xf4\x71\x0a\xcd\x19\xc3\xcc\x48\x80\x1b\xa6\x6c\x7a\x5e\xf2\x28\x73\x9e\x97\xd0\x8c\xcc\x4c\x6c\x20\xe3\x89\xc9\x2b\xc7\xc8\xe0\xe0\x82\x70\x22\x2b\x9c\x8a\xe2\xb7\x40\xc5\x78\x1b\x31\x4c\x18\x1c\x9d\x21\x07\xd7\xeb\x31\xef\xc9\xe7\x9e\xd6\x6a\x6e\x2c\xfe\x96\x5e\x63\xa6\xff\x19\xbe\x2b\x7e\x4d\xef\x37\xa6\xff\x51\xc3\x03\x68\x09\xb7\xa1\x16\xc2\x24\x8f\x5e\x46\x4f\x69\x7a\xc2\x31\x29\xe0\x37\xa8\x8a\x49\x1a\x5d\x43\x39\xc9\x30\x19\x47\xd7\x50\xe1\xc5\x74\xa5\xf1\x6b\x49\x94\x12\xaa\xcf\xe8\x31\xa1\xfd\x2d\x91\x29\x3e\x3d\x7a\x97\x4b\x55\xd0\xd4\xb3\xaa\xc7\x84\x36\x3c\x9d\xec\x44\xad\xb8\xe5\xdd\x72\xdf\xc1\x0c\x00\xfb\xae\x56\xab\xd4\x5b\xab\xba\x76\xd9\x27\x2b\xf6\x82\x4e\x15\x93\x6f\xdb\xf6\xbb\xb8\x85\xb3\x70\x9d\x5b\x76\x7e\xc5\x52\x11\xe0\xba\xac\x3c\x55\x29\x3c\x6d\x02\xcc\x95\xe0\xc4\x9a\xbc\x3a\xe0\x4d\x51\x13\x45\x4b\xf3\x99\xaf\x11\x86\x89\xf4\x62\xdc\xbd\x74\x61\xd3\xa6\x7d\xd2\xc3\x6e\x16\xff\x16\x61\x18\x6b\x8e\xe1\xd4\x1e\xb1\x3f\x57\xb2\xfd\x7e\x58\x41\xf3\xcd\xb6\x41\x66\x5a\x3d\x3d\x2d\x52\x41\x28\xd9\xae\x00\xf9\xf4\xe1\x2f\xf7\xe7\x38\xf1\x76\x1d\x35\x2c\x85\x55\xf7\x0d\x4e\x51\xf7\x35\x94\x7d\x36\x4b\x87\x59\xc1\x50\x6f\x5b\x27\x63\x5f\x57\x0d\x33\xbb\x26\x91\x32\xf1\xe0\x8c\x52\x08\xa9\xca\xe9\xf4\xa5\xc1\x48\x0d\x9f\x42\x57\xda\x1a\xc7\xb8\xe1\x3f\x5b\xfb\x49\x1b\x03\xfd\xc0\xd0\xe8\xc1\x48\x5a\x7b\x08\x84\x87\xb2\x36\x21\x0b\xc4\x13\x45\x20\x2d\xe7\x5a\x03\x48\xc3\x1c\x84\x73\x49\x27\x13\xe0\x52\x56\x05\xa9\x6f\x59\x4a\x13\xe3\x64\xbd\x79\xc1\x52\x6a\xe9\xa3\x79\x0b\x5a\x5d\x2d\xce\xe7\x2e\x99\x64\x6b\x11\x3b\x1f\x5d\x6c\x13\xad\x50\x54\x17\xaf\x3f\x9b\xb4\x33\xce\xf5\x49\x23\x0d\x4b\xd6\x5c\x05\xa1\xe5\x07\x1b\x6b\xce\xe0\xd3\x5a\xa8\xbe\x89\x7c\xa5\x39\xe2\x84\x11\x49\x2a\xdb\xcd\xea\x3c\xb8\xc3\x20\x39\x79\x43\x20\x2b\xf2\x5d\x98\xa6\xfc\x09\x2b\x97\x1d\x31\xb6\xe2\xb0\x55\xe1\x83\x38\x3c\x9f\xdb\x71\x15\x69\x4a\x20\xb2\x9f\x49\xfc\xe2\x54\x7a\x79\x35\x03\x8d\xa5\xc8\x70\xaf\xf7\xb2\xf1\x88\x86\xdf\xc8\xaf\x16\xc5\x99\xd5\x5a\x16\x41\x73\x6b\x59\xf4\x3a\xd8\x73\x59\x17\x67\xd3\xb7\x26\xf2\xa7\xce\xa2\x20\x60\x68\xb9\x62\x16\x2d\xab\x90\xfb\x9a\xc9\xac\xe1\xe2\x9a\x0b\x3a\xcb\x77\x33\xd5\x4e\xf8\xf5\x91\xa5\x1a\xeb\x79\xec\x5c\xb3\xbf\x9e\xee\xfa\xb8\xc4\xc4\xe8\x7d\x87\xa7\x08\xc9\x9e\x7b\x9d\x2f\x2f\xdb\x11\xd9\x2b\x39\x7f\x5c\xc2\x9b\xcc\xd2\xc9\xd2\x4b\xee\xbc\xb9\xca\xda\xe5\xfa\xca\xe0\x4b\x46\xcc\x5c\xc7\xe5\x44\x3c\x86\x14\x4f\xb2\xe8\xa9\xd6\xa4\xfc\xd5\xf6\x16\x91\xf4\xbd\xe3\x9c\x41\x21\x75\xf7\x8d\xc4\x1f\x51\xad\x1d\x68\xd0\x73\x51\x11\xef\xec\x8c\x73\xb7\x8d\x92\x8f\x69\xde\x88\xb1\x19\xda\x1a\x39\x0d\x7b\xad\x2f\x68\x49\xfe\xd5\xeb\xf9\x6a\xbc\x16\x16\xe8\x1d\xa4\xc8\x53\x9e\xb5\x75\xbb\x8d\x48\xa5\x1b\x54\x41\xac\x82\x4a\x1b\xd2\x02\xbe\xd5\x75\x50\x15\x28\x7e\xc2\x14\xd1\x2d\xd7\x67\x86\x51\xf0\x58\x04\xe9\x2b\x26\x87\xb2\x3a\x34\xc2\xde\x7c\x12\xbf\x52\xf1\xb6\xac\x62\xf3\x69\x8a\xcb\x72\x5c\x35\x05\x3a\x11\x6e\x02\x40\x07\x4c\x91\xc9\x7d\x50\x03\xdd\xd5\xb5\xc7\xa8\x8a\xd5\x5e\x2b\xe8\x5e\xf5\x26\x01\x31\xb2\x3e\xc0\x24\x6b\x86\x41\x10\x5e\x70\xea\xb6\x3a\x5a\x92\x6f\x51\xdd\x89\x25\xcd\x5d\xe9\x14\x1b\x6d\x6b\x28\x1b\x3c\x5d\x03\x7a\xe5\xe2\xd7\xd9\x04\xc3\xcb\xfd\x65\xcb\x9a\xc2\x56\x85\x54\x5b\xeb\x0d\x7e\x76\xa9\xf1\xf6\x15\xab\xe2\x6f\x1c\xd8\xe0\x1b\xeb\x03\x13\x27\x6f\x19\xc9\x37\x3d\x24\xef\xf5\x4c\x39\x2d\x31\xb7\x91\xe7\x80\x87\x92\x98\xf0\x91\x30\xb4\xd9\x1d\xf7\x48\x3a\xe2\x2c\x7c\x22\xc6\x4a\xbc\x02\xe7\x96\x6e\x27\xeb\xf3\xcb\x13\x19\x9c\x78\x61\x84\x96\x16\xb1\x4b\xb8\x34\x01\xc2\x69\x5c\xab\xe8\x1b\x9e\xd2\x55\x56\xd1\x37\x3c\x13\xcf\x2a\x0e\x07\xaf\x96\x65\x39\xf0\x47\xd6\xeb\xad\xd7\x67\xdf\x7c\x9e\x95\x9e\xb5\x80\x3f\x2e\x4f\xf7\xdb\x4a\x8e\xf5\xba\xc8\x4a\xf1\x26\x22\x16\x04\x45\xa9\x89\x91\x00\x93\xea\x63\x0f\xad\xdc\xd1\x98\x79\xb6\xbb\xab\x4e\xc8\x4a\xd7\x4a\x8d\xff\xc2\xdb\xba\x16\x3e\x95\xc3\x5f\xba\x6d\x6e\xee\xa7\x53\x74\xf2\x2d\xa4\x48\x80\xf9\xe7\x7c\x3e\x58\x53\xf3\xf9\xe6\x7a\x14\x89\x51\x30\x0a\x49\x18\x51\x23\xb1\xb1\x39\x14\x17\x36\xf1\xd0\x06\xf8\x05\x93\xd1\x10\x8a\x15\x64\xbf\xd5\x0b\x66\x3e\x47\xed\x72\x1d\xc4\x28\x0e\x9a\xf5\xbf\x9f\x9f\x45\xe8\xbc\x8e\x5c\xaa\xb5\xd7\x91\x66\x13\x80\xfe\xe3\xa5\xa9\xab\x26\xb6\x39\x69\xa1\x15\x48\xb7\x8b\x7d\x69\x1a\x34\x26\xbe\x3b\x9e\x46\x04\xbd\x3d\x45\xb5\x3d\x5b\x6c\x71\x71\x35\x77\x2a\xa9\xf2\x3e\xca\x58\xc4\x83\x24\xa9\x5d\x2a\xa2\x6f\x6b\x79\x9b\x46\x3c\x1e\x24\x24\x8f\x78\xe5\xdd\x47\x8a\x48\x92\x34\x92\x31\x4d\xc8\x38\xa2\x97\x33\x94\xe2\x5e\x6f\x7c\xd9\xb9\xdd\xa4\x97\x6b\x1b\xff\xa9\x41\xdb\xf9\x7c\xea\x1f\xe1\xbd\x9e\x85\xa0\x88\xc7\x09\x29\xa2\x94\xa0\x71\x94\xf7\xf3\x5d\x3e\x55\x46\xad\x91\x46\x69\x3c\x4e\xfc\x34\x7f\xfe\x6c\xed\xb0\xb6\x78\xd8\xdf\x46\x2c\x70\x4c\x94\x91\x32\x3e\x60\xaa\x06\x9d\x56\x0b\x95\xfb\xf4\xe1\x5c\x77\xe2\x94\x38\x2f\x8a\x22\x3c\xcf\xa8\xbd\x32\x5a\xcf\xc0\xf6\xb0\x1a\x7c\xe1\x4e\xa8\xa2\xfc\x2a\x7d\xf4\x7a\xd7\x11\xc5\xb5\x27\x94\xd4\xd3\x7c\x88\x52\x7b\xbd\x32\xae\xfc\x9b\x56\xa8\x87\x7c\xd0\xc6\x44\x78\x2e\x92\x38\xf0\xf7\x98\xfa\xe1\x21\x3d\x52\x4a\xb2\x95\x11\x21\x6c\xb6\x06\x1a\xe0\x1c\x38\x8c\x85\x2e\xe1\xdb\x88\x7e\x35\x57\x67\xdd\x23\x8d\x6b\xdf\xa8\x64\x3d\x8a\xc6\xbd\x9e\x44\x39\x19\xe3\xf6\x28\x0e\x79\x64\xbe\x7a\x2e\xc8\xe2\x3c\x2e\xc8\x99\xef\x82\x9c\xb5\xb9\x20\x57\x41\xd1\x43\x6b\xb4\xf5\xcd\x52\x2f\x75\xe0\x83\x10\x5a\x6c\xfa\x93\xc8\x21\x64\x95\x37\x4b\xb4\x31\x4b\x79\xb4\x8d\x32\xbd\x99\xf2\x6a\x96\x0a\x33\x4b\xf5\x2b\x87\x04\x45\x3d\x4b\xeb\x74\x3e\x5f\x3f\x27\x2e\xa5\x9e\xe3\x2d\x8d\x24\xbc\x39\xc7\x74\x15\xbd\x9e\x05\x05\x34\xff\xf9\x92\x5e\x3f\x3f\xd7\x74\x0d\x5a\xa7\x2b\x40\xcf\x9c\x54\xbe\xc1\x06\xb9\xa7\xc6\xea\x78\xda\xea\xd1\x34\xf5\xc2\x91\x4c\xc2\x5b\xdb\x5c\xf3\x16\xbb\xe1\xb6\x9c\x04\xb8\xef\xa7\x03\x7f\x80\xa6\x64\x37\x04\xac\xc5\x3f\xa9\x4a\xed\x30\xd5\xaf\xd3\x00\x24\xc3\xe9\x8b\x06\xa7\x6f\x91\xb9\xb4\x3e\x59\xc0\x09\x99\xb8\xc2\xf0\x33\x60\x58\x1d\x94\xca\x9a\x74\x1d\x40\x34\xae\x73\x6c\x69\x98\x33\x33\x5b\x33\x8b\x20\xfb\x2d\xf4\xc8\xf6\xb5\x3f\x9f\xa3\xc6\xe7\xe0\x54\xd5\x2b\x04\x72\x28\xc6\xc4\x4c\xcd\x3e\x99\xb5\x4e\x8d\x6d\x70\x56\x36\x6f\xe2\xdb\xa2\x21\x37\xce\x1c\x86\xe7\xf3\xb7\xdd\x50\x47\xf6\xe8\x8a\x1c\x0f\xb2\x74\x99\xef\x6e\xb5\x03\xc7\x17\xc1\xda\xae\x4d\x3b\xb2\x7e\x6d\x74\x2e\x4d\x06\xb1\xce\x73\xe5\xb5\xe0\x63\x83\x99\x63\x4e\x5a\xbc\xfa\x2a\x91\x6c\x87\x29\xe4\xa7\xae\x38\xdd\xcb\x0a\xa6\x25\x28\xaf\xd1\x73\x7d\x50\x96\xbe\x4f\x77\xc6\xfe\x51\x02\x78\x46\xc0\x7f\x2b\xb0\xa3\xcd\x67\xc0\xf5\x1f\x3d\xab\x45\x39\x89\x2e\xe1\xb5\xe5\xfc\x1d\xce\x5a\x0d\xae\xc3\xf4\x5a\xfb\x7b\xa8\x8e\x40\xa4\xc7\x68\x4a\x1a\x73\x08\xc8\x97\x38\x93\x4c\x31\xa3\x51\xd3\x92\x95\xbd\xc4\xb0\x89\xf3\x56\xe9\x75\xfd\xaa\x55\x61\x54\xa9\x6e\xa1\xc8\x11\x9d\x4c\xc2\x08\xde\x1e\x46\x81\x1f\x64\x43\x71\x06\xf8\x3a\xbc\xd4\xf2\x45\x9f\x1f\x3c\xdf\xf2\x04\xc0\x51\xdd\x85\x09\x57\xa1\x9c\x12\xdc\x87\xac\x96\x79\x7d\x83\x11\xbf\x44\xf5\x1b\x31\x02\x0c\x24\xc7\xe6\x72\x06\x49\xf7\x43\x61\x22\xf4\x32\x9b\x89\x29\xac\x04\x04\x5d\xbb\x9c\x2d\x2b\x0d\x41\xbe\xad\x4b\x75\x2e\xf5\x37\xfb\x83\xce\xd5\x6c\x76\x24\xf9\xce\xae\xea\x5c\x1a\x6c\x0e\x3a\x77\x14\x9b\xed\x32\xd1\xb9\x2a\x59\x9e\x1f\xb2\x34\xed\x5c\xec\x5c\x17\x4c\xee\xf0\x07\x6c\xd2\x79\x2f\x93\x7b\x9d\x37\xd4\xa4\x5b\x9e\x17\x4f\x9e\xb1\x78\xf2\x8c\x45\x94\x67\x9e\xd3\x47\xa1\x44\x83\x36\x84\xf1\x8f\xd0\x1c\x6c\x19\x6b\xc3\x84\x60\x8d\xf2\xa5\xcc\x52\x69\x5d\xc0\x4f\xb4\x91\xc7\x83\xa4\x9f\x8f\x33\xc9\xfa\xec\x83\x82\xa6\x39\xca\xe3\x4d\xfb\x06\xfb\x91\xb3\xbd\xda\x53\x2e\x26\x5b\xfa\x9c\x9b\xe0\xfe\x38\x4b\x53\x36\x56\xa8\x72\x00\x27\x9d\x6e\x18\xc9\x9a\xf8\xc1\xe1\x4c\x4f\xe3\x6c\x7f\x46\x35\x61\x5a\xea\x67\x12\xba\xe0\x87\x70\x0d\x96\xe1\xda\x0d\xca\xef\xd3\xb1\xcc\x7c\x5b\x1d\x5f\x89\xcf\x5a\xcc\x08\x0a\x84\x47\xc7\xb9\x62\xb3\xa1\xd5\x10\x0e\xd7\x37\x89\x64\x34\xcf\xc4\xb0\xfb\x8e\xb0\xb1\x69\x60\xcd\xbb\xe5\x30\x3d\xad\xf4\x95\xfd\x6d\xbe\x53\x64\x45\x0e\xa5\x3b\xe8\x36\x55\x8a\x49\x91\x77\xe2\xee\xc6\x18\xe1\x8d\x6e\xd2\xa1\x92\x75\x68\x9a\x76\x60\x40\xe9\x51\x67\x27\xcb\x26\x9d\x31\x15\x13\x00\x2f\xc7\xdd\x72\xd8\x68\x7e\x40\x0e\xb9\x10\x4c\x9a\x83\xc0\xfc\x86\xbc\x40\x46\xda\x4e\x19\x95\x5b\xe6\x6d\xc3\xc0\xa7\x40\x2d\x59\x77\xc2\x01\x0d\x35\x64\x6c\xa3\x9b\x18\xa9\x28\x6d\xab\x11\x0e\xaa\xaa\xd1\xef\xb4\x8c\x6e\x5f\xb3\x4d\xd5\xd8\xf4\xce\xd0\xf2\x96\x4f\x7c\x2a\xf8\x89\xf7\xd8\xb2\x2a\xb0\xd2\xb0\x96\xcd\x04\xf3\x26\x64\xab\xc1\xb8\x16\xbd\xd2\x31\x54\x1a\x2a\x02\x68\x32\x34\xb9\xe6\x62\x43\x22\x19\x51\xfd\x94\x1d\x30\x91\xef\x2a\xc6\xc5\x56\xce\x77\x04\x55\x85\x64\xc8\x9e\xec\x1c\x28\x6c\x02\xde\x35\xfd\x3c\x93\x0a\x4d\xc1\xd1\x8b\x82\xd9\x78\x98\x8a\x29\xd8\xc9\xed\xdb\xd4\xdd\xcc\xa8\x2a\xf9\x81\xa5\x3a\x47\x33\x16\x75\xdf\xa8\x21\xb9\xc6\x0d\xc9\xbf\xa3\x61\xee\x7a\xb7\x0d\xa6\xaa\xdd\x2b\xed\x31\x2a\xa0\xdd\x0b\x75\x17\x76\x66\xcd\x8e\x69\xa9\x02\x7e\x55\x35\x18\x51\xc4\xe0\x87\x7d\x67\x52\x34\x44\x4e\x97\x52\x36\xd3\x1f\x8a\x4a\xab\x05\xb1\x67\x6d\xea\x2e\x73\x06\x19\xed\x97\xd8\xd8\x6c\xa6\xe3\x89\x04\x24\x5f\x96\x71\x96\x78\x05\xb9\x2b\x18\x14\xaa\x12\xe8\x47\x83\xcb\xf4\xc5\x88\x5f\xa6\xb6\x66\x4c\x93\x68\xb0\x5c\x1e\x3e\x0d\x92\x28\x83\x4f\x8d\x5a\x03\xa8\x45\x4b\x14\x04\xf4\x6c\x66\x66\xb6\x2a\x74\xdb\xfa\x41\x95\x06\x50\xf9\x21\x8a\xc3\x11\x55\xb9\x34\x33\x13\xb4\x93\xe9\xa1\x45\x26\x3c\x82\x8c\xb3\x8d\xcd\x24\xe6\x1b\x9b\x49\x04\xd0\xf1\xa4\xbe\x09\xa3\xf6\xd5\xc6\x66\xb2\xb1\x49\xf2\xc8\x15\xd6\x4f\x85\x2b\xbe\xb1\xb9\xe6\x37\x52\x25\x3d\x2e\x20\x86\x6d\xe9\xe0\x95\xb1\x03\x23\x89\x1d\xac\x49\xb9\x94\x33\xec\x5c\x88\xea\x2d\x3e\xd3\xe7\x75\xce\xb7\x53\x4d\x3f\x15\x1e\x6d\x0e\x07\x3e\xda\xde\xa1\xfb\xec\x0d\xbe\x2d\xa9\x3c\x32\xe8\x4a\xce\xc2\xd1\xba\xed\x0b\xec\x37\x81\xa3\xe7\x3d\x66\x57\x1c\xa7\x76\xf0\x40\x2f\x72\x70\x33\xf4\x87\x7b\xb3\x48\x15\x3f\x6b\xa0\x2d\xe1\x5d\x4d\x73\xbe\xc3\x95\xaf\xdc\x33\x5f\x63\x95\x34\xcf\xc1\xbc\x25\xc6\xa2\x3b\xd3\xbf\xf6\xac\x81\x6e\xcc\x83\x1d\xec\x19\xcf\x39\x69\x97\x0c\x6b\x32\x30\x9c\xc9\xb3\x86\x31\xd9\x7c\x0e\x6b\xdc\x45\x2f\xac\x66\x50\x48\x41\x52\x32\xc6\xc7\x2c\x9a\x39\x07\xff\x69\x75\x59\x3c\x33\x47\x07\x26\x93\x08\xc9\x48\xce\xe7\xa2\x4f\xf3\x23\x31\xde\x12\x59\x36\x23\x9a\xcd\x33\xf4\x10\x61\x4f\xb8\xf1\xcf\xf9\x71\x7f\x3f\x9b\x40\x2e\x2a\x31\xee\x46\x51\x64\x9e\x87\x72\x5d\x0b\x9c\x75\x53\xbd\x9e\xbb\x9e\x59\xaf\xd5\xf1\x1b\x5e\xac\xca\x99\xd7\xa6\x06\xce\xb8\x85\x22\x16\x58\xfb\x8e\xa3\x31\x84\x05\x57\x26\x04\x2e\xa0\x7e\x94\x3a\xdb\x9e\xad\x2a\x1f\xea\x64\x6b\xdb\x53\x4d\x7a\x92\x47\x14\x45\x33\xf0\x7f\x32\x8b\x40\xc5\x56\xc5\xbb\xb6\x9a\xc0\xf6\x15\xcb\x21\xc7\x29\x09\x99\x5e\x7f\x8a\x29\x49\x0d\x46\xcd\x6c\x3e\x55\xcb\x36\x94\x8e\xf7\x2d\xdc\x0f\x8a\xd7\xd6\xdb\xae\x4b\x07\x6b\x1c\x41\x90\xf0\x03\x26\x15\x93\x39\x3e\xed\x58\xad\x8d\x27\x25\x3e\x76\x01\x7e\xe1\xb2\x9b\x59\xcd\xa1\x20\x62\xa3\x3a\x11\x2e\x6c\x56\xae\xe3\xd6\x59\xd5\x35\xbe\x05\xab\x13\x5e\x71\x42\xbe\x76\x24\x71\xa9\x45\xac\x12\x4d\xfb\x3b\x32\x2b\x66\x20\x94\xf8\x37\xc5\x26\x8c\x51\x45\xb6\x53\x64\xef\xbf\xb3\xb5\x49\x3f\x67\x62\x82\xf2\xfe\x9b\xb7\xb6\xae\x7f\xeb\xfa\xd5\x77\xee\x5e\x27\x8e\x8d\x1a\xab\xfb\xc3\x99\xf3\xe6\xe6\x2c\x27\x16\xf9\x86\x53\x5f\xb4\xa3\x72\x27\x87\xbb\x0a\x25\x8f\x8e\xb3\x48\xf4\xb9\x38\xc8\xf6\x18\x92\x24\xa8\xbb\x8b\x38\x1e\xf1\x21\x77\x83\x4b\x2b\x3b\x61\x93\x01\x33\x0d\x80\x33\xbc\x94\x2a\x97\x8c\x70\x97\xf0\x78\x66\x33\x6a\xd5\xa8\x5c\x25\xa0\x29\x51\x86\x47\xf6\x8e\x4e\xf4\x45\xa6\x21\xd5\xfd\x9a\x9c\x32\x28\xc5\x43\x00\x2a\xed\xf5\x52\x84\x2b\xbf\xde\x0a\x77\x2a\x52\xde\xca\x3d\xe8\x4e\x2c\x43\xb8\xc5\x05\x4a\x5d\xb5\xfa\x5d\x5b\x35\xc8\x0e\xe5\xf6\x43\x1b\x3f\xd5\xc2\xd0\x4d\xfb\x87\x26\x4b\xd6\x16\xbb\x3f\xd3\x72\x13\xcf\x44\x5e\xf1\x81\xab\xe5\xb0\x0e\x2b\x89\xbf\xbc\xd7\xae\xbf\xf2\xea\x2d\xbd\xba\xae\xaf\x21\x6b\x5d\xd1\xaf\x20\xa5\xbf\xa0\x49\xdc\xd2\x79\xe0\x45\x1b\x43\x8c\x5c\xec\xff\xf6\xfb\x7d\x34\x1a\x4e\x19\x74\x3a\xcf\x67\x6c\x0c\x7f\xf8\x94\x8f\x8d\xc6\xfe\xa9\x8b\xb8\x5c\xe3\xb5\xde\xc7\xc8\xe5\xa4\x26\x90\xfc\x74\x80\x2e\x87\x96\xe1\xcb\x74\xd5\x70\x2e\xfd\x71\xca\x99\x70\xbb\xe0\xb8\xb4\x57\xee\x12\x3d\x5f\x73\xda\x7d\x76\x9f\xe7\x2a\xbf\x73\x24\xc6\x91\xff\x30\x9f\xbb\x27\xa2\xfa\x92\xd1\xc9\x84\x4b\x5b\xc8\x7b\x0a\x03\x4d\x55\x6d\xa6\x1c\x88\xd2\x69\xa1\xfd\xfb\x2e\x2e\x5b\xdf\xfc\x32\x78\xd8\xcf\x15\x55\xb6\x1b\xf7\xb3\xad\x8f\x63\xf0\x3f\x60\x7a\xc6\x8f\xda\xdc\xad\xfa\xde\x77\x7b\x84\x29\xcd\xee\x60\xeb\x8f\x07\x56\x7d\xe8\x69\x0c\xd6\xfb\xbf\xe1\xa9\x26\x22\x3a\x2e\x81\x58\x00\x0a\x6d\x7a\x76\xba\x55\x7a\x61\x90\x86\x23\xf3\xcf\x1b\x6f\x35\xa0\x66\x76\x4b\x5d\xae\x99\xdb\x52\xf5\x73\x36\xa3\x60\x8f\x8e\x4b\x22\xfa\x92\xa5\x54\xf1\x03\x16\xd5\x3f\x03\xf7\x7b\x4f\x7f\xb5\xe1\xd5\xdd\x90\x25\x11\xff\x3f\xce\x55\xa5\x30\x16\x23\x31\xac\x83\xa9\x89\xfe\xf8\x70\xd2\x66\xda\xdf\x3f\xcc\xe4\x1e\x17\x3b\xd5\x7a\x7f\x25\xf0\x5b\x81\x5c\xda\xfb\x4c\x73\x37\x55\xca\xd2\xe3\xf1\xe1\xa4\x2d\x32\xee\x32\x24\xa5\x06\xe4\x9c\xa4\xc5\xe7\x8f\x8c\x0c\xda\xbd\xba\xcb\x05\xcb\x59\x97\x1c\x5b\x5a\x32\xec\xc6\xaf\x4c\x13\x4b\x57\xbe\xf8\x57\x3f\xfd\x87\xef\x7f\xd6\x25\xf9\x98\x09\x2a\x79\x36\xec\xa2\xd1\x30\xbe\x93\x27\xf6\x79\xee\xfd\xee\xc4\x6f\x66\x49\xa1\x52\x2e\xd8\xfc\x8b\x9f\x7c\xf2\xe5\xff\xfe\x37\xf3\x2f\xfe\xe0\x2f\xbf\xfc\xc9\xff\x35\x47\xa3\x61\xf0\x02\x8f\xbe\xf8\xf3\xbf\xfc\xfb\x4f\x7e\x8e\xbb\x84\xdd\xa7\xfb\xb3\x94\xe5\xa6\xe1\xeb\x2c\xb1\xcf\xf3\xf8\xbd\xc3\x64\x97\x49\x36\xff\xfc\xe1\x0f\xbf\xf8\xeb\x3f\x9a\xff\xfd\x9f\x7f\xf2\xf9\xc3\x1f\xce\x3f\xff\xf8\xa1\xfe\xf7\xe5\xff\xf1\x7f\x7f\xfe\xf0\x87\xb8\x4b\x66\x4c\x4c\xb8\xd8\x31\xd5\x6f\xcf\x12\xf3\x38\x8f\xef\xaa\x24\x9b\x64\xf3\x2f\x1e\xfe\xe0\x8b\xff\xf4\xc7\xf0\xef\x7b\xe6\xdf\xbf\xfa\xd3\xf9\x97\x7f\xfc\xe1\x17\xdf\xfb\x89\xfe\xf7\xf7\xbf\xfa\xd7\xb8\x4b\x32\x91\x1e\x99\x06\xde\xcc\x12\x91\x1e\xcd\x3f\xff\xf4\x07\x9f\x7f\xfa\x83\x11\xee\x92\x6d\x3a\xde\xd3\xa7\xbf\x98\x0c\xbb\xf1\xcb\xdb\x49\xf5\x38\xff\x87\xef\xff\xc8\x0c\xe8\x7f\xfc\xf2\x0f\xff\xa8\x4b\x76\xf8\x01\x13\xa6\x91\x1b\x3b\x89\x7e\x80\x11\x70\xb5\x3b\x8f\xaf\xd0\x44\x4c\xe6\xba\x7a\xa1\xe6\x30\xc6\x31\x9b\xa9\xf9\x17\xdf\xfb\xfd\x2f\xfe\xe3\x87\xfa\xdf\x3f\xfc\xa7\x87\xf0\xa4\x21\xfd\xe5\x7f\xf9\xfc\xe3\x7f\x33\xff\x87\xef\xfe\x48\xff\xfb\xe2\x8f\x7e\xf4\xe5\xff\xf6\x5f\xe6\x9f\x7f\xf6\x7b\x5f\xfe\xdb\xbf\xc1\x5d\x72\xb8\xeb\x3a\x81\xd9\x11\xf3\xf8\x55\x9e\x4c\x1b\x3d\x7c\xf1\xd9\xbf\x9e\x7f\xf1\x1f\x3f\xfc\xf2\x4f\x7f\x72\x46\x6b\xaa\x6a\xed\xae\x32\xad\x69\xd8\x66\x6c\xac\x1a\x2d\xfe\x3f\x1f\xfe\x87\xcf\x7f\xf9\x2f\xe7\x5f\xfe\xe4\xa7\x5f\xfe\xe4\x4f\xce\x68\x74\x4b\xf3\x39\xf9\x30\xee\xc2\x8c\x74\x49\x57\xc3\xdc\x25\x5d\xdd\x59\x37\x29\x1f\x07\x55\x5f\x91\x4c\x8c\x77\x7d\x4c\xd5\xb0\xbf\x32\x4d\x32\xd3\xa0\xa0\x29\x57\x8f\xfe\x0a\xb7\xa1\xeb\xa3\xbf\xb2\xf8\x7a\x7b\x96\xa4\x54\x74\xe2\x6b\x93\xa4\xe8\xf8\x9f\x5a\x91\x91\x59\x64\xac\x7e\xcf\x35\x8e\xc4\xc5\xa3\x5f\x26\x4d\xe4\xbb\xce\x12\xd1\xd1\x27\xbf\x50\x6c\x6e\x9e\xc6\x59\x21\x73\x87\x8b\x01\xa2\xdd\xc9\x13\x56\xa4\x4c\x13\xd5\xa4\x81\x66\xfa\xf3\xd5\x71\x92\x09\xc5\xee\x2b\x86\x03\xd4\xba\x93\x27\x19\x57\xf3\xf8\xd1\x1f\x3c\xfa\xab\xeb\x2c\x51\x54\xa8\xce\x24\x13\xe2\xd1\x5f\x69\x20\x5b\xde\xb6\xbd\x6c\x2d\x09\x2b\x7e\xc0\xc6\x00\xb9\x9a\xc7\x37\xf7\x13\xca\x73\x78\xab\x87\x34\x91\x2c\x40\xbf\xb7\x3e\x48\x0a\xaa\x11\xe4\x8d\x34\xc9\x64\xfe\x41\xf1\x5b\xf5\x4f\x06\x44\x81\x87\x2d\x05\xe8\x76\x85\x26\x69\x26\x83\xd6\x97\x4a\x9f\x8a\x47\xa4\x9b\x67\x5c\x75\x49\x97\xe9\x21\xe8\x11\x30\x96\x87\x8f\xc1\x53\x97\x74\x3f\xd0\xf0\x76\x49\x37\x35\x30\x76\x49\x97\xea\x9f\xdd\x84\xec\x30\xd5\xd1\xcd\x85\xae\x5c\x7d\xe8\x17\x22\x05\x76\xfc\x5e\xce\x55\xea\x3c\x85\x56\x97\x01\x50\x1b\x9f\xf5\xe8\xcd\x57\x3b\x80\x95\xdf\x61\x58\x8d\xaf\xc0\xb8\x3f\xd6\xde\xbb\xc1\xe4\x3e\x15\x2d\x7b\xaf\x10\x7b\xba\x41\xd8\x7a\x7f\xae\xe6\xde\xd9\xa1\x57\x37\x9f\xb1\x3d\x35\x8f\xdf\x29\x92\x9c\x8d\x69\x6e\x5e\x8a\x43\x26\x26\x85\xd8\xc9\xa7\x34\x4d\xdb\x76\xeb\x03\xef\x70\xb1\xbf\x51\x67\x67\x7e\x03\xcb\x42\x4c\x24\xcf\xf3\xb9\x26\xb2\x2c\x1f\xef\xb2\x5d\x01\xd8\x12\xee\xdc\x97\xb7\x13\xc6\xf3\x19\x67\x29\x1b\x35\xb7\xa9\x3d\x18\xf4\x36\x9e\x4e\x99\x08\x76\xe5\x2d\x91\x14\x12\x30\x91\x8b\x07\x7c\xa7\x65\x63\xde\xd8\x49\x34\x0c\x29\xdd\x61\xf3\xf8\x77\x76\x13\x90\x85\x77\xf4\x2b\x00\x96\xa9\x62\x36\x8f\xdf\x3d\x48\x32\x49\x8b\x1c\xfc\x76\x1f\xa8\x70\x0b\xeb\xf1\xef\x30\x91\xed\xef\x6b\x82\xab\x87\xb1\xc3\xb6\x99\x40\x9d\x9c\x71\xc4\x04\x1e\xe1\x11\xec\x02\x6e\xa6\x4d\x37\x7c\x85\x26\xdb\x4c\xc2\xff\xe2\xd1\x4f\x99\x6c\x1e\x04\x4c\x08\x98\x77\x9a\xa6\x79\xa3\x52\xb0\xed\xae\x4d\x12\x6a\x8b\x66\xe9\x4e\xca\xc7\xbb\x75\x9b\xcb\xf5\x7e\x83\x84\xfc\x5a\xa1\x5a\xe9\xb8\x43\x1c\x40\xab\xb1\x43\x2b\xc6\xcd\xa9\xc9\x77\x98\xc8\xc7\xbb\x74\xd6\x4a\xe0\x1d\xca\xdc\xd8\x99\xb3\x03\x9a\x2e\xe1\x84\x5e\x94\x4c\x6e\x33\x96\x4e\x98\x58\x89\x15\x37\xf7\x93\x8c\xa9\x8e\xc8\x76\x02\xc4\xd0\x04\x2b\x65\x80\x2d\x4d\x8c\xb8\x42\x93\xf1\x2e\x20\x41\x26\x26\x4b\xd4\x5a\xb1\xd4\x2d\xf2\x01\x13\x68\x34\x7c\xff\xfd\x7c\x42\x95\x5e\x63\x7d\x42\x18\x7a\x47\xc3\x15\xd5\x9d\x19\xfe\x87\x6a\x5a\x22\x97\x8a\x36\x56\x14\x10\x8e\xc9\x83\x2c\xd5\x13\xb4\x54\xfa\x37\xb8\x8e\xb7\x32\x79\xc8\x76\x78\x48\x17\x74\xff\x1a\x90\x3d\x3a\xf3\xd7\xc9\x5b\x24\x7f\x69\x74\xe9\xbd\x1c\x8e\x56\xe9\xad\x09\x9c\x46\x10\xd3\x48\xba\x75\x00\xf6\x4b\xb2\x16\x9e\x6c\x4f\x6f\x40\xb1\xc4\x83\x29\x73\x9c\xb0\x09\x6c\xf6\x1d\xf3\x20\x0c\xa2\x0b\x45\x95\x0a\x66\xfd\x96\x48\x1e\xfd\x85\x0c\x8a\x06\x53\x7d\x27\x4f\x1e\xfd\x05\xa0\xe6\x34\x93\x1a\xb2\x66\xd1\x33\x0e\xac\x1d\xae\xf4\x81\x25\x1e\xfd\x85\xd4\xc7\xd7\xa3\xbf\xb0\x27\x8f\x7e\xbf\xf2\x28\x30\xc5\x57\x91\x7a\x68\xe5\x89\x53\xfa\xdb\x5c\x52\xc5\x9a\xbb\xf3\xae\x4a\xa8\xe6\x7e\xbe\x7d\x94\x50\x29\x96\x76\xe0\x15\x9a\x4c\xf4\xa4\xc0\xf6\xd5\x5c\x8a\x54\x9c\x05\x7b\xd0\xf1\xf3\xb9\xf2\x97\xf9\xe5\xed\x44\xf2\x1d\x7f\x89\x53\x3a\xde\x03\xbe\x6c\x96\xa9\xc6\x5a\x5f\xa1\xc9\x54\x99\xa7\x16\x86\x5b\x73\xda\xa7\x73\xdc\x2d\x0c\xf4\x98\xb5\xb1\xd0\x2d\xbc\xf1\x98\xad\xe2\x8e\xcf\xb3\xf4\x1a\x3a\xfb\x7a\xcc\xec\x87\x31\xab\x30\x40\x7f\x5e\xcd\x0e\x98\x5a\x2b\xcf\x7b\xd5\xf6\xf9\xf1\xd1\xe0\x9d\x3d\x49\xb9\xe0\xcb\x67\xfe\xe2\xcf\x4f\xfe\x87\xe4\xe4\xfb\x8b\xcf\x16\x9f\x9c\xfc\xde\xc9\x8f\x4f\xfe\x70\xde\x7c\xb5\x78\xb8\xf8\x6c\xf1\xb3\xc5\xa7\xf3\x78\xf1\xd3\xc5\xdf\x25\x8b\x87\x27\x1f\x9e\x7c\x77\xf1\xd1\xe2\x3f\x2f\x7e\x36\x8f\x17\x7f\xb4\xf8\x59\x72\xf2\xbd\xc5\xdf\x2d\x3e\x5a\x7c\x72\xf2\xe1\x3c\x5e\xfc\xe9\xe2\xa1\x7e\xf1\x70\xf1\x9f\x17\x9f\x2e\x3e\x5e\xfc\xfc\xe4\xc7\x27\xdf\x3b\xf9\xf0\xe4\x47\xf3\x78\xf1\xbf\x2c\x7e\x9e\x2c\x3e\x5d\xfc\x4c\xbf\xf0\x3f\x2d\xe1\xdf\xe2\xcf\x4e\xbe\x97\x9c\xfc\xde\xe2\x23\xdd\xf3\xc9\x77\x4f\x7e\xbc\xf8\xe5\x3c\x5e\xfc\x9f\x27\xff\x32\x59\xfc\x0c\xda\x7d\xb8\xf8\x2c\x44\x47\x00\xed\xe4\xbb\x8b\x8f\x17\x9f\xe8\x1e\x16\xbf\x58\x7c\xdc\x38\x13\x16\xff\x6e\xf1\x59\xb2\xf8\x48\x43\x0a\xe0\xeb\xde\xbf\x0b\x3d\x7c\x0c\xad\xff\xe5\xc9\xef\xeb\xcf\x9f\x2c\x7e\x76\xf2\x3f\x9d\xfc\xbe\x79\xb9\x24\x81\x56\xc7\x48\xbc\xf8\xf7\x27\x1f\x26\x27\x3f\x5e\x7c\x7a\xf2\xa3\xc5\x27\xba\xb3\x00\xb7\x17\x7f\xbc\xf8\x24\xd1\x50\x9e\x7c\x08\x13\xf3\xbd\x93\x0f\x03\x1c\x5f\xfc\x9b\xc5\x2f\xf4\x58\x3e\x5b\x3c\x9c\xd7\xb0\xcf\x1d\x90\x27\x3f\x58\xfc\x0c\x80\xfa\xbd\x93\x1f\x27\x73\xd3\x57\x35\xdb\x8b\x4f\x17\x1f\x05\xb8\xbf\xf8\x9b\x93\x3f\x4c\x16\x9f\x9c\xfc\x01\x34\x06\x2d\x7f\x34\xaf\x40\xf8\x14\xda\x3d\xa5\xa1\x7a\x6f\x98\xcf\x0f\x17\xbf\x38\xf9\xf1\xe9\x55\x7e\x83\x87\xd0\xed\x2c\xe5\xf9\x12\x37\xf1\xde\x61\xf2\xeb\x0f\xe9\xaf\xff\x64\xcc\x0f\xb3\x5f\xff\xc9\x7f\xfd\x7d\xcb\x54\xec\x8d\xef\x51\x9f\x31\xbd\x3d\x4b\x32\x25\x1f\xb0\x6d\xda\xd1\xbb\x99\x3f\x10\x2c\xcf\x0e\xe9\x6a\x0e\xa3\xc8\x1f\x18\xb6\x94\x6e\xa7\x99\xe8\x04\x1f\x68\x88\x61\xb7\x67\x89\x7c\x70\xb4\xf7\xeb\x0f\xe9\xe4\xa8\x81\x5a\x6f\x66\xc9\xf8\x01\xdb\x2b\xee\xfd\xd7\x1f\x8c\x8f\xe6\xfa\xec\xe1\xec\xc1\x21\x93\x47\x53\xbe\x97\x1d\x52\x71\xb4\x8c\x3e\x77\x55\x72\x94\xee\x65\x0d\xb4\xf9\xdd\x07\x09\xfd\xf5\x87\xd9\xaf\x7f\xc5\x04\xa7\x01\xc2\xe8\x2f\xd0\x37\xd5\x9d\x18\x7e\xc0\xfc\x7a\x33\x4b\x24\x7d\x00\x74\x0f\xa6\x22\x0d\x45\xbb\xd7\xee\x25\xec\xd7\xbf\x62\x29\x9f\x9b\x9f\x7f\xa2\x7f\xdd\xd8\x49\x26\x47\xf3\xf8\xf5\xbd\x84\x33\xfd\xa3\xb5\x0d\xe5\x13\x57\xb5\xba\xdc\x19\xe4\xf2\x01\xdd\x4b\x35\xd8\x74\xdc\x25\xdd\x7d\xfb\xff\x1e\x7b\xc0\x52\x0e\x3f\x72\xf8\xbf\xa3\x27\xb5\xbb\xa7\xc1\xd1\x2d\xe8\xee\x2c\x3d\xad\xeb\xaf\xa6\xa9\xfb\xa7\x7f\x36\xbd\xad\x24\xb9\x00\xc3\xca\xaf\x3b\x93\xa3\x95\xdf\x00\xde\x95\x5f\x61\x14\x4f\x9c\x92\xdf\x99\x51\xd1\xb2\x43\x0c\x93\x6d\x78\xec\x09\x9d\xcc\xe3\xab\xe3\x84\x4a\x3a\x56\x4c\x3e\xfa\xeb\x5c\xf1\xf1\xf2\x2e\xb8\xce\x92\xbc\x62\xb4\x75\xf1\xbc\x55\x6b\x72\x4f\xb3\x73\x99\xe1\x44\xcd\x6f\x9f\xdd\x76\x34\x52\x33\x77\x15\x76\xdf\x49\x1e\xfd\x6d\xda\x44\x6e\xd0\xec\x4c\xb2\x26\x4f\xcd\xa8\x91\xb5\x34\xe7\xab\x19\x60\xcd\xb7\xc3\x7f\xea\x9e\x73\xf7\x22\x0f\x30\xfb\xea\x18\x94\x16\x99\xd3\x4f\xbc\xf5\x41\x52\x84\x78\xab\x59\x67\x95\x89\x31\x3b\x8f\x06\x82\x51\xf3\x57\x3f\x4c\xa8\x86\x53\xff\xa3\xf6\x29\xb7\x8f\xfa\xff\x18\xba\xd5\xa5\x35\xe6\x32\xdb\x85\x53\x3d\x30\xba\x1a\x11\x75\xf3\xab\xbf\xea\x7e\x4e\xfd\x7a\x4a\xcb\x00\xe3\xe9\x95\x4f\xf9\x6c\x46\xb4\x12\x91\xf3\xd5\xbb\xc3\x8d\xfe\x89\xa3\xf9\xdb\x45\x9e\x9f\xc5\xae\x2c\x3e\x5e\x62\x57\x16\x1f\x7b\xec\x8a\xe6\x22\x16\x3f\x5f\x3c\x5c\xfc\x12\x38\x8e\x9f\x2f\x1e\x06\x7b\x60\xf1\x67\x35\x8b\xa1\xcf\x7b\x1f\xf7\x17\x3f\x85\x77\xbf\xd2\xcc\xc2\xc9\x0f\x47\x0d\x82\xaf\x19\xd3\xd9\x12\x51\x5f\xfc\x7b\x7d\xdc\x02\x3f\xf0\x70\x59\xb2\x74\xa7\xfc\x47\x8b\x5f\x9c\xfc\x10\xe0\x79\xa8\xbb\x80\x11\x2c\x73\x0b\xb8\x85\x5d\x78\xb8\xf8\xbb\x93\xef\x5b\xde\xe9\x57\xf3\x36\x1e\xe2\xfb\x15\xab\xf5\x6f\x17\x1f\xeb\xc3\xfb\xdf\x25\x8b\x87\xd8\xc8\xa9\x86\x4d\xc0\xa3\x80\x73\xf8\x5f\x17\x1f\x69\x66\xcd\xf0\x08\x16\x8a\xbf\x5d\xfc\x02\xce\xfb\xd3\x9a\x58\xe2\x19\xe6\x15\xf3\x70\x9e\xea\xbf\x51\xfe\x41\xaa\x62\xa7\x68\xdc\x81\xb4\x50\x48\xe6\x93\xc8\xf8\xd1\x5f\xf3\xa4\x9d\x4a\x5e\x1d\x27\x4c\xc4\xf4\xd1\x9f\x25\x67\xd0\xc9\xfb\x1e\x9d\xbc\xbf\x8a\x4e\x36\xc8\x64\xfc\xe8\x6f\xb3\x64\x99\x4e\x16\x6d\x74\xf2\x9e\x25\x94\xf7\xe8\xfe\xd9\x94\x12\xa0\x30\x6c\x42\xde\xa6\xea\x35\x54\x93\x59\xaa\xd9\x28\xdd\xa0\xa0\x31\x7d\xf4\x1f\x92\xac\x51\xe6\x4c\x72\x7a\x8f\xda\x7f\xfb\x67\x12\xd4\x0f\x2a\x82\xca\x0c\x41\xa5\x59\x45\x4d\xef\x9d\x4a\x4e\xef\xd1\xfd\x7f\x8c\xf4\xf4\x83\x33\xe8\xe9\x6a\xf1\x0f\x06\xff\xb5\x88\x69\xbd\x13\x8e\x21\xfe\xb5\x44\xcf\x3d\x8b\x09\x17\x8a\xed\x30\xa9\x9f\x9e\xc3\x64\x9a\x66\x54\xe9\xdf\xcf\x63\x92\xf2\x1c\x7e\xfe\x33\x4c\x14\xc4\x78\x94\xe8\xb9\x17\x30\x99\xd1\x3c\xdf\x52\xbb\x32\x2b\x76\x76\x87\x12\x6d\xfe\xb3\xaf\x6f\x99\x1a\x5d\xa3\x8a\xf5\x67\x54\xe6\xac\x8e\x91\xdf\xe1\xf9\x2d\x7a\x0b\x49\x3c\x52\xc8\xb3\x03\xbe\x4a\x85\xc8\x54\xc7\xda\x0b\x39\x33\xe0\x8e\xca\x3a\xb4\xa3\x87\xd3\xc5\x78\xa8\x8c\x49\x90\xae\xa5\x5b\x36\xb6\x3f\x5f\x17\x36\x00\xeb\x55\xa1\x1e\x07\x32\xd1\xb1\xd3\xeb\x41\x27\x1f\x17\xa6\x57\xf4\x1a\x3d\xd6\x7c\xc1\x2a\x3f\x36\x48\x0e\x03\x2b\x3b\x2c\x70\xa4\xbb\xf8\xbe\xb8\x88\xcf\x6d\xfc\x32\x30\xe6\x7d\x97\x9e\xc1\x24\x8b\x2e\xc6\xef\xcf\xdf\x2f\x2e\x3d\x3b\x78\x2e\xb9\x48\x68\x74\xf1\x5f\xd4\xcf\xf3\xfa\xe7\x53\x17\x77\x48\x0e\x1f\xab\x57\xa3\x0b\xc7\x4f\x93\xf2\xe2\xe9\x93\x47\x8a\x28\x80\x91\xa4\x11\x92\x51\xe1\x5c\x5a\x89\x40\xb2\x2f\xd9\x2c\xa5\x63\x86\x28\xe9\x76\xb1\x2d\x9c\xe1\x36\xcb\xb4\xda\x6a\x44\xb1\xfb\x6a\xc8\xfb\x4a\xf2\x7d\xc4\xf4\x7e\xd2\x24\xdc\x78\xc8\xf3\xbe\xf7\x04\x26\x23\x18\xf7\x05\xdd\x63\x13\x84\x31\x19\x47\x13\x54\xc4\x83\x04\x8f\xfc\x56\xf9\x14\x4d\xbc\xd4\xdf\xbb\x08\xaf\xcd\x74\xd5\x61\x5b\xa1\x25\x6b\xf9\x6b\x34\xdf\x65\x39\x98\xf9\x17\x82\x81\xf6\x8a\x4d\x3a\x54\x01\x9d\xe8\x28\xbe\xcf\xba\x78\x6d\x17\x61\x02\x6d\x92\x69\x24\x90\xb1\x39\x13\xa8\xc0\x7d\x46\xc7\xbb\x68\x8c\x89\x5d\xd2\x56\x7b\xef\xd6\xa9\x38\x70\x09\xa9\x83\xc4\xe3\x0c\xd7\x21\x55\x8c\x67\xc6\xfb\xc2\xb3\xc7\xf7\x26\xa3\x44\x53\x3f\xe2\x25\x18\x1f\xb6\x3a\x64\xe4\x95\x6d\xa2\x67\x97\x89\x8f\xa7\x36\xd6\xb5\x9f\x90\x68\x56\x03\x36\xed\xa7\x34\x57\x08\xaf\x09\xc4\x56\xae\x31\x6b\xc4\xb5\xaa\x2d\x15\x53\x3d\x00\xbd\xcc\x24\x33\xbf\xbd\x55\x25\x34\xe2\x7d\x69\x16\xbf\x9f\x17\xdb\xb9\x92\xba\xb5\x35\x3e\x45\xbc\xcf\xf3\x5b\x99\x7a\x39\xa5\x62\x0f\x82\x32\x34\xd1\xe1\xc5\x6c\x79\x01\x5f\xad\x4b\x74\x4c\x9c\x69\xbc\xa6\x62\x91\x44\x48\xff\x85\x60\x9c\xce\xf8\x8f\x42\x70\xb8\xb3\x76\x9a\x47\xf5\xef\x28\x36\xbb\xad\x29\x88\xa6\xf6\xcf\x6f\x62\xf2\x8a\xe1\x7e\xaa\x77\x97\x9e\xad\xde\xbd\xc2\x53\xef\xfd\x73\x5f\x61\x43\xb7\xed\x42\xe7\x82\x7f\x31\xfe\x17\xef\xe7\xc9\x45\xe3\x56\x00\xc4\xcc\xdf\xa9\x95\x93\x9d\xb5\xf3\xb2\x2e\x3e\xb2\xf6\xb4\xeb\xf5\x04\xe2\x78\x3e\xe7\xce\xbe\xa7\x05\x45\x05\x6a\x90\x22\x22\xdb\xac\x62\x15\x18\x38\x6a\x64\x52\x5f\x69\x12\xc7\x34\x9f\x99\x09\x7c\x1a\x93\xfd\x6c\xbc\x4b\x87\xc7\x77\x2c\x3f\xf8\x06\x3b\x60\xe9\xed\xb4\xd8\xe1\x42\x17\x78\x06\x13\x3d\xe5\x8d\xb7\xcf\x62\xab\x54\xa0\xf9\x3e\x5f\xba\x16\x86\x16\xcf\x82\xe7\x72\x23\x42\x0f\x9f\xa2\xf5\xca\x02\xca\xc5\xeb\x41\xcf\xe1\xfe\x34\x5f\x03\x17\xe4\x31\xcb\xf3\xa8\xfa\x35\x9f\xaf\xb0\x36\x12\x6d\xd6\x46\xa7\x11\x55\xe0\xb1\x9f\xc6\xfd\xeb\x07\x4c\xa8\x97\x8b\x7c\x8d\xb5\xbb\xc8\x01\x2f\xe8\xd7\x97\x2e\x7d\x79\x66\xfd\x4c\x9a\x81\x5a\xf0\xb1\x82\xd5\xe9\x73\x31\xcd\x34\x5d\x15\x9e\x55\xb6\xb1\xc7\x14\xfd\x37\x6f\x6d\xdd\xb9\x7b\xfd\x76\x60\x6b\x2b\x4b\x4c\xb2\xbe\xa4\x62\x6f\x0b\x5c\x71\x4c\x1a\x29\xcf\x4d\x09\xe1\xc0\x75\x4f\x43\x62\xed\x04\x1b\x6e\x87\xce\x2f\xb2\x8e\xef\x10\x84\x0b\x62\x7d\x59\x98\x42\x65\xd9\x66\x18\x46\x24\xba\x34\x38\xcb\xba\xad\x79\x10\x3e\x63\x5d\x35\x9f\xf7\xb6\x51\x9f\x0b\x1e\x62\x3a\x8b\xd8\x7c\x5e\xd9\xb8\x81\xe7\x10\xc4\x1f\x19\x67\x42\x51\x2e\x98\x9c\xcf\x21\xf9\xd5\x56\xf5\x02\x61\x42\xa3\xcc\xe5\x60\xd0\xbc\x43\x7f\x5a\x6f\xf4\x3c\x0a\x1e\x23\x1a\x7c\x24\xd5\x47\xaf\x5c\x5d\x46\x7f\x77\x02\x91\x2e\xe0\x7e\x37\xd0\x45\x03\xbe\x44\x63\xf1\x31\x84\xc2\x70\x66\xdb\x23\xda\xe7\x6a\x2b\x3f\x12\xe3\x21\xfc\x02\x5b\x6d\x8c\x58\x5f\x71\x95\x32\xc2\x48\x40\x9e\x35\xbd\x50\x48\x9a\xf0\x75\xe7\x21\x85\xff\xd4\xe7\x9a\xf6\x27\x90\xc2\x72\x9b\x79\x53\xaa\x0c\xf6\xcb\x3e\x88\x6b\xad\x5c\xe7\xfa\x66\xed\x05\xc1\xcd\x87\x7a\x79\x50\x73\x5d\x84\x35\x94\x97\x5e\x0a\xd0\x3d\x3e\x1b\x99\x7f\x08\x0f\x39\xc2\x6b\x32\x5a\x1f\x10\xd5\xdf\xe6\x42\x9f\xee\x48\x10\xd4\x60\x6f\x5c\x74\x52\xc4\xfb\x53\xca\xd3\xf9\x9c\x63\x98\xca\x68\x7d\x93\x70\xe4\x56\xbc\x02\x2b\xf3\xc0\x6a\x87\xaa\x0d\x26\x7d\x04\x18\xa0\x96\x00\xc2\x44\x77\xa5\xfb\x38\x17\xe2\x66\x43\x0d\x9f\x9d\xcc\xb2\x24\xe4\x74\x4c\xac\xe0\xf6\x08\x78\x18\xce\x43\xe1\xf6\xf0\xd0\x8e\xad\xa7\x69\xda\xa1\x9d\x71\x4a\xf3\xbc\x43\x73\xcd\xd3\xdb\x26\x7d\xd7\x57\xbb\x58\x15\x53\x06\x21\x2e\x95\x1f\x6c\xd0\x0f\x5d\x27\xfa\x75\x7c\xff\xc8\x7f\x98\xcf\xd7\x37\x89\xe8\xfb\xf1\xfe\xf5\x6c\xd9\x68\x8d\x1c\xce\x65\x24\xfa\x87\x92\x2b\xfb\x6d\x65\xfa\x01\x22\x4c\x10\x2b\x3f\xa0\x79\xd6\x4c\x80\xda\xeb\xf1\x20\x51\x81\xc2\x44\xc2\x3b\x48\x4d\x5d\xca\xbe\x74\xae\x17\x34\xea\x16\xce\xa3\xb4\x8e\xeb\x64\x82\x77\x8f\xcc\xbf\x96\x4c\xb1\xdd\xad\xad\xae\x63\xa2\xea\x1c\x83\xe0\xe6\x36\x4d\xb3\x4c\x9a\x9f\x52\x4b\xe8\xfb\x08\xff\x36\x08\xa9\x22\x3b\xd4\x3c\xbb\xae\x8a\x4b\x92\x47\x9b\xa4\x88\x28\xea\xde\xbd\x72\x63\xeb\xea\x9b\x37\x6f\xbf\x73\xf7\x7a\x57\x4b\x14\xf6\xd5\xdd\x6f\xdf\xd6\xcf\xe3\x15\x09\xa4\x60\x8b\xda\x50\x0b\xce\x6b\xfe\x80\xe7\x3c\x13\xd1\xa6\x75\x6b\xa0\xb9\xba\xba\xcb\xc6\x7b\x6c\xe2\xbf\x82\x98\x52\xee\x05\xcf\xdf\x99\xd9\x28\x4e\xeb\xf6\x55\x5e\x6c\x2b\xba\x13\x01\xf7\xee\xbd\xc8\xeb\x37\x71\x9a\x44\x95\x47\x88\x9e\xf9\xd8\x24\x88\xb1\x51\xcc\x42\xab\xea\x26\x28\xeb\x51\x94\x5b\xf7\x04\xbf\xf3\xc1\x32\xcc\x39\x08\x15\x5e\x4c\x5e\x0b\x88\xcb\xdb\x61\x1e\x89\x75\x47\x73\xa3\x87\x18\x59\x45\x9a\xae\x9b\x58\x4a\xd2\xba\x1e\xd2\xfb\x48\x12\x15\x17\x09\xc2\x18\x13\x5b\x80\x55\x2e\x91\x22\x1a\x5c\x16\xb5\x4b\xa4\x70\x68\xcd\x21\x6b\x28\x54\x5b\xf3\x9a\xe2\xfa\xc4\x6e\xcc\xa8\xac\x83\xab\x2c\xcd\x6c\x1d\x2c\xc5\xb9\xb1\xd5\x9f\x6d\xf0\xad\x60\xe8\x1b\x1b\x2e\xf2\x74\xd5\x7e\x59\x26\x76\x9e\xbb\xc5\x0c\x94\x15\xcd\xe9\xf6\xa8\x2d\x5b\x53\x51\x14\xcd\x46\xd2\x5f\xcd\x21\xaa\x1e\x15\x91\x41\x7f\x95\x7b\x66\xf0\x9a\x28\xff\x09\xdb\x3a\x66\xb4\xf5\xac\xd6\x2f\x6d\xf9\x77\x4d\x76\xf6\xb2\x34\xc1\xed\xba\x13\x93\x20\xa4\x09\x2d\x3e\x66\x35\xca\x6e\x6c\xe4\x65\x09\xc1\x24\x11\x26\xd3\x68\xdc\x87\x4a\x64\x12\x8d\xfb\x66\xb4\x6b\x81\xac\xe6\xb9\xbb\x8d\xd1\xa6\x89\x08\x62\x9c\xc8\xc6\xe8\x69\xcf\xdf\x6e\xdf\x17\x3b\xf5\x8c\xd4\x14\xe3\xa0\xfe\x84\x0e\x4e\x4b\xc1\x57\xe7\xf9\x0e\x3e\x54\x71\xfd\x47\x6d\x9e\x26\x36\x21\x75\xd9\x96\x63\x9a\xf5\x7a\xa7\x65\xfc\xf3\xbd\x76\xa2\x28\xaa\xde\xaf\xbb\xdf\x35\x55\x1b\x39\xd8\x86\x55\x87\xfa\x84\x2b\x05\x3b\x44\xed\x54\xc3\x23\x1a\xe7\xda\xc0\xb6\xcc\x0b\x83\xc1\xf3\x9b\x2f\xbc\x70\xe9\xd9\x67\x9e\x7f\x66\xf0\xc2\x0b\x9b\xd5\x5a\x81\xcf\xf9\x93\xed\xab\x46\x04\x43\x9f\x4d\x56\xe7\xf7\x18\xdd\xbb\x49\x67\xf5\xd2\xee\x78\xb4\xb8\xce\xb0\x79\x00\x42\xb2\xdb\xde\xf5\x6a\x6f\x57\x67\xe4\x0e\xe4\x6c\x36\xdb\xe4\x08\xe2\xa9\xb0\x30\x5e\x96\xc4\xc6\x15\xfc\x26\x9d\x91\x23\x9b\x2f\x5b\xe2\x3a\x80\x1a\x64\xe2\xae\x93\x3a\x4b\x13\x93\xc5\xc5\x60\xde\xad\x63\x85\x4b\x13\x7d\x85\x08\x4c\x44\x1d\x56\x47\x17\xdb\xb2\xa8\x3a\xf0\x50\xf5\xd0\xdf\xbf\xde\x88\x89\x68\x43\x4e\xe5\x5c\x3e\x76\x98\x52\xcc\x4b\x41\xee\x44\x22\x07\xc4\x36\xe2\xfa\x80\x10\xbd\x9e\x49\xd7\x8c\x38\x1e\xa1\x2c\x52\x08\xd2\x66\x32\x05\x59\x47\xf0\x30\x8b\xcc\x38\x38\x26\x19\x84\x94\x09\x1a\x85\xd0\x29\x53\xb4\x85\xc9\xb2\xcc\xb8\xd3\xaa\x43\x7a\xf9\x9d\x1b\xc3\xce\x55\x2a\x7e\x4b\x75\xcc\xfe\xed\xd0\x8e\xa2\x3b\x9d\x69\x26\x3b\xb4\x33\x93\x7c\x9f\x2b\x7e\xc0\xaa\x30\x77\x66\x7d\x1a\xeb\xb0\x14\x72\x2b\x58\x3e\xe1\x55\xda\x47\xe2\x9c\x40\xc0\xe6\xa2\x42\x69\x68\x6a\x3d\xd2\x04\x09\xcd\x17\x88\xf2\xeb\x0f\xa4\x04\x20\x77\x35\xd6\xba\x6c\xb1\xfb\x48\x7e\x3d\xa8\x34\x93\x59\x96\x48\x99\x60\xec\x0e\x8b\xca\x12\x90\xe7\x7a\x7b\x14\xf2\x66\xd0\x1a\xa2\xbc\x38\x05\xba\x1d\x60\xdc\xd8\x8a\x60\xe4\x8e\x85\x1b\x40\x14\x57\x93\x1d\x43\xc5\x97\x20\x6a\x5e\xe6\x50\xfd\x0e\x82\x78\x67\x78\xad\x9d\x31\xd3\x1f\xa1\x08\xf6\xc3\x1f\xdd\x09\xe3\x77\x1e\x6a\x69\xb7\xd7\x93\x20\x24\x71\x9a\xf2\x07\x4c\x6a\x51\x4a\xf4\x0d\x26\x93\x2c\x12\x7d\x83\x7f\x0e\xc5\xfd\x8c\x51\x83\x66\xc6\x28\xd2\x9e\x6b\x8c\x9b\xec\x0d\xcd\xe8\x48\xf8\x38\xab\x78\xa6\x37\x91\x9b\xd1\x37\xfd\x19\xf5\x40\xbf\xaf\x2b\xbc\x19\x69\x6e\x71\x82\x14\xe9\x2a\x49\xf5\x41\xd8\x0d\x32\xd5\xd8\x0e\xaf\x97\x58\xaf\x15\x94\xf3\x42\x7d\x5e\xe3\x93\xab\x36\xdb\x5c\x4b\xa5\xfb\x9a\xd3\x4f\x12\xbc\xf6\xff\x05\x00\x00\xff\xff\xad\x89\x40\xe0\xca\xc1\x18\x00") -func web_uiAssetsVendorD38f8b642cf98384d0f0a8760e75b259JsBytes() ([]byte, error) { +func web_uiAssetsVendorE5bd98ddbd577554f3a4bea67986a1d2JsBytes() ([]byte, error) { return bindataRead( - _web_uiAssetsVendorD38f8b642cf98384d0f0a8760e75b259Js, - "web_ui/assets/vendor-d38f8b642cf98384d0f0a8760e75b259.js", + _web_uiAssetsVendorE5bd98ddbd577554f3a4bea67986a1d2Js, + "web_ui/assets/vendor-e5bd98ddbd577554f3a4bea67986a1d2.js", ) } -func web_uiAssetsVendorD38f8b642cf98384d0f0a8760e75b259Js() (*asset, error) { - bytes, err := web_uiAssetsVendorD38f8b642cf98384d0f0a8760e75b259JsBytes() +func web_uiAssetsVendorE5bd98ddbd577554f3a4bea67986a1d2Js() (*asset, error) { + bytes, err := web_uiAssetsVendorE5bd98ddbd577554f3a4bea67986a1d2JsBytes() if err != nil { return nil, err } - info := bindataFileInfo{name: "web_ui/assets/vendor-d38f8b642cf98384d0f0a8760e75b259.js", size: 1578664, mode: os.FileMode(420), modTime: time.Unix(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/assets/vendor-e5bd98ddbd577554f3a4bea67986a1d2.js", size: 1622474, mode: os.FileMode(420), modTime: time.Unix(1599755405, 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\x7b\x73\xdb\xb6\xb2\xff\x3f\x9f\x02\xd5\xbd\x3e\x76\xe6\x84\x2b\xbc\x01\xa6\x96\x67\x14\x59\x6e\xdd\xf1\xeb\x5a\x76\xef\xc9\x74\x3a\x1e\x8a\x84\x2c\xb6\x94\xa8\x43\x52\x72\x9c\x4c\xbe\xfb\x9d\x05\x29\x8a\x7e\x34\xbd\x9d\xd3\x4e\x03\x2d\x81\xc5\xee\x6f\x17\xbb\x8b\x87\x0f\xbf\x3b\xbe\x1c\xdd\x7c\xbc\x1a\x93\x79\xb5\xc8\x8e\xde\x1c\xe2\x0f\xc9\xa2\xe5\xfd\xa0\xe7\x96\x3d\x12\x67\x51\x59\x0e\x7a\x6e\x31\x75\x45\x90\xe5\x51\x92\x2e\xef\x7b\x47\x6f\x08\x39\x9c\xbb\x28\x41\x82\x90\xc3\x85\xab\x22\x12\xcf\xa3\xa2\x74\xd5\xa0\xb7\xae\x66\x81\xed\x75\x87\xe6\x55\xb5\x0a\xdc\xbf\xd7\xe9\x66\xd0\xfb\x57\x70\x3b\x0c\x46\xf9\x62\x15\x55\xe9\x34\x73\x3d\x12\xe7\xcb\xca\x2d\xab\x41\xef\x74\x3c\x70\xc9\xbd\xdb\xce\xac\xd2\x2a\x73\x47\xa3\x7c\x59\xae\x33\x32\x7d\x24\x3f\x46\xe5\x3c\x1d\xe5\xc5\xea\xb0\x5f\x0f\x75\x14\x2c\xa3\x85\x1b\xf4\x12\x57\xc6\x45\xba\xaa\xd2\x7c\xd9\x11\xdb\x7b\xc9\xb8\x49\xdd\xc3\x2a\x2f\xaa\x0e\xd7\x43\x9a\x54\xf3\x41\xe2\x36\x69\xec\x02\xff\xf1\x8e\xa4\xcb\xb4\x4a\xa3\x2c\x28\xe3\x28\x73\x03\xd6\x08\xaa\x9b\xae\xb8\xd8\x63\x0c\xd6\x69\x3f\xce\x97\xb3\xf4\xbe\xef\x96\x9b\xb4\xc8\x97\x0b\xb7\xec\xaa\xd8\x33\x1f\xf6\x38\x5f\xe4\xc9\x3a\x73\x57\x85\x9b\xa5\x9f\xf6\x38\xdf\x13\xc3\x3d\xce\x5b\x09\xd8\xc3\x47\x7b\x9c\x77\x44\xb4\x5c\xab\x22\x4f\xd6\x31\x9a\xd7\xb2\x15\x79\x5e\xdd\x5e\x9f\xb5\x2c\x7b\xfc\x04\x85\x9c\xb4\x0c\x59\x1e\x47\x38\xe3\xe6\x71\xe5\x5a\xae\x68\x5d\xe5\x2d\x47\x95\x17\x69\xda\x0c\x99\x0f\x7b\xe6\xb8\xee\x1e\xe3\x8a\x8f\x2f\x7e\xde\x8d\x70\x7e\x32\x1e\xde\xdc\x5e\x8f\x27\xaf\x70\xff\xeb\x66\x7c\x71\x7c\x77\x75\x7d\x79\x73\x89\xd1\x34\xe9\x4e\x3b\x8e\xaa\x46\xf7\x2c\xca\x4a\xd7\x4e\xba\x1b\x5e\x5d\x9d\x9d\x8e\x86\x37\xa7\x97\x17\x77\x37\xe3\xf3\xab\xb3\xe1\xcd\xf8\xee\x7f\xaf\x87\x57\x57\xe3\xeb\xee\x84\x9a\xfb\x78\x7c\x32\xbc\x3d\xbb\xb9\x1b\x4e\x3e\x5e\x8c\xee\x2e\x3f\x4c\xc6\xd7\x3f\x8f\xaf\x1b\x4d\x55\xb1\xde\xf2\xfd\xf4\x3f\xb7\xe3\xeb\x8f\x77\xa7\x17\x37\xe3\x1f\xae\xbd\xf0\x97\xb2\x5a\x6d\x97\x17\x67\x1f\xef\x7e\x38\x3b\x3d\x3f\x1f\x5f\xdf\x8d\x2e\xcf\xaf\x2e\x2f\xc6\x17\x37\x5d\xa1\x5b\xb4\xc3\xab\xab\xae\x51\xb8\xf4\xdf\x58\xbf\x8d\x2b\xca\x66\xa1\x3c\x07\x07\x0e\x74\x8f\x7f\xa0\x4e\xdb\x38\x9c\xcd\x70\x60\x2b\xb9\x70\x65\xfa\xd9\x4d\x5c\x81\xc1\x77\xec\x66\xd1\x3a\xab\xca\xae\xae\x74\xf9\x9b\xf3\xeb\x7e\x12\xc5\xb8\x5c\x6e\x3b\xaa\x70\x14\xa3\xb9\xd5\x8b\xd1\x56\xe4\x59\xe6\x8a\x4e\xd7\x62\x95\x2f\x9b\x40\x52\xc7\xad\xda\xd1\xe5\xc5\xe4\xf6\xec\xee\xf6\xf4\xee\xf8\x74\x32\xfc\x70\x36\xbe\xbb\x1e\x0f\xcf\x6e\x4e\xcf\xc7\x2f\xfc\xf5\x92\x75\x78\x31\xfa\xf1\xf2\xfa\x6e\x32\x3e\x1b\x8f\x5e\x75\x71\x33\x65\x74\x79\xf5\xf1\xfa\xf4\x87\x1f\x6f\xee\x3e\x8e\x87\xd7\x3b\x77\x50\x4e\x5b\x80\x0d\xeb\x0f\xa7\x37\x77\x93\x1f\x87\x2d\xcf\xd6\x55\xfa\x39\x23\xae\x7a\xab\x72\x8f\x73\x06\x16\xf8\x73\xa6\x0f\xa7\x17\xc3\xeb\x8f\x77\x18\x8c\x2d\x63\x5e\x96\xcf\xd9\x86\xa3\xb3\xc9\xdd\xf8\x02\x6d\x3a\xde\x65\x11\x46\xf6\x87\x3d\x4e\xd3\xd9\x1e\xa7\x30\x1c\x9d\x95\xe3\x65\x34\xcd\x5c\xb2\xc7\x29\xfa\x0f\xff\x47\x96\x27\x43\x9d\xfe\x3d\x4e\x9d\xf7\x44\xc3\xdd\xc4\xfd\x76\x68\xd9\x91\xf3\x0c\xcf\xc5\xe4\x6a\x38\x1a\xff\x29\xa4\x8b\x68\xe1\xca\x55\x14\xbb\x3f\x02\xf6\x92\xe1\x6f\x81\x37\x99\x5c\xfe\x19\xb4\xc9\xe4\xf2\x0f\x30\x75\x46\xfe\x16\x30\x3f\x5e\x9e\x8f\xef\xba\xd5\x0f\xf7\x99\xd2\x93\x27\x7b\xfc\xe4\xe1\xe1\x01\xea\xc4\x84\x34\x7f\x3e\xf7\x7a\x7c\x75\x79\x77\x3a\x99\xdc\x8e\x27\xdf\x10\x71\x9f\x56\xf3\xf5\x14\xe2\x7c\xb1\xc7\x4f\xe6\xb8\x01\xc5\x79\xb1\xda\xe3\x27\xb5\xdc\x3d\x7e\x92\x96\xe5\x1a\xd3\xf1\x64\x89\x49\x78\x12\xcf\xf3\xbc\x74\xcf\x95\x1d\x5f\x8e\xbe\xa5\xe5\x19\xd0\x93\x24\x8f\x5f\xc4\xa9\x17\x71\x36\x1e\x5e\x5f\x7c\x43\x50\xe6\xa2\x62\x09\x2d\xce\x1a\xf7\x2b\x72\x86\x57\xa7\x7f\x01\x4e\xb4\x4a\x9f\x4b\xd9\x65\xf5\xb7\xc5\xbc\x0e\x65\x5a\xe4\x0f\xa5\x2b\xd2\xd9\x63\xb7\xc8\x55\xae\xdc\x56\xbd\x27\x75\xd7\x7d\xc2\xad\x7a\xb8\x5a\x65\x69\xbd\x95\xfd\x90\xe5\xd3\x28\x7b\xba\xa1\xf4\x48\xff\xe8\x0d\x9e\x4a\xbe\x0b\x02\xf2\xb4\x4c\xbc\x27\xbe\x3e\x90\x20\xf0\xc7\x96\xfa\x88\x50\x6f\xe5\x9b\xa8\x20\xa5\xab\x46\x7e\xd7\x26\x03\x32\x5b\x2f\x7d\x99\x3d\x88\x56\x2b\x4c\xa0\x77\xa4\xde\xd0\xdf\x92\x2f\x9e\xbf\x9e\xf1\xdf\x7e\xeb\x1f\x90\x24\x8f\xd7\xb8\x3f\xc3\xbf\xd7\xae\x78\x9c\xb8\xcc\x61\x71\x3e\xd8\xc7\xe1\x5f\xea\x93\xc1\x3e\xf9\x27\x69\x64\x91\x7f\x92\xfd\xd7\xce\x07\xbf\xee\xbf\xfd\xbe\x23\x3c\xa9\xcb\x7f\x0b\xe9\xa7\xc9\xe5\x05\xac\xf0\x64\x75\x90\xb8\x38\x4f\xdc\xed\xf5\xe9\x68\x5b\xd0\x0f\x3c\x14\xb8\x77\xd5\xb0\xaa\x8a\x74\xba\xae\xdc\xc1\x7e\x73\xde\xd8\x7f\xfb\xb6\x15\x7c\xd0\xfc\x92\xd6\x42\x34\xfb\x60\x9a\xe5\xd3\x97\x26\xe2\x7f\x97\x53\xdc\x70\xe0\x77\xf7\x58\x1e\x34\xe3\x30\xcb\x8b\x71\x14\xcf\x0f\x3a\x6c\x3b\x79\x07\xbf\xbb\xc7\xa7\x22\xb6\x06\x6d\xa2\x6c\xed\xc8\xa0\x51\xf3\xcb\xef\xee\xf1\xd7\xef\x9f\xb1\xa5\xb3\x83\x46\xe1\xaa\xc8\xab\xbc\x7a\x5c\x39\xa8\xf2\x49\x55\xa4\xcb\x7b\x88\xa3\x2c\x3b\xf0\x42\xde\x92\xc1\x60\x40\xf6\x7f\xc9\x3d\x6f\x83\xf1\xd7\xfd\x97\x6a\x49\x6b\x9d\x57\xf7\xae\xab\xfb\xed\x73\xe5\x5f\x09\x56\x9f\x57\x64\xb4\xf3\xbf\x0d\xfe\xeb\x9b\x3f\xfa\xea\xa8\xda\x76\xbf\x3d\x78\xb2\xbe\xad\xf3\xb7\x9c\xf5\x7a\x96\xaf\xae\xe7\x3b\xe2\x96\x2f\x02\xc0\x87\x47\xe9\x3d\x95\xce\x1e\x9f\x4a\x6f\x03\xa0\xd6\xde\x06\xfa\x76\x05\xf7\xdb\x53\xcb\xfe\xbb\xa6\x6b\xe7\x85\xe6\x60\xf9\x9e\xec\x7f\xf9\x02\xa3\x1a\xc2\x55\x54\xcd\xbf\x7e\x6d\x99\x09\x79\x65\x0f\x7d\x4f\xbe\x7c\x21\xe9\x8c\x74\x77\x46\xf2\xf5\xeb\x97\x2f\xdd\x0e\xfc\xae\xdd\xfe\xf5\xab\xcf\x60\xfc\x5c\x22\xdf\x0b\xd9\xcf\xf6\xc3\x56\xfc\x8b\xfd\xad\x56\xf2\xa2\xfb\x2f\xa8\xea\xec\x6d\xad\x9a\xdd\x96\x55\xcb\xdf\x7d\xff\xb1\xe0\x37\xdd\x35\xf7\x4b\x70\xd8\xdf\x55\x9d\xc3\x2c\x5d\xfe\x4e\x0a\x97\x0d\x7a\x69\x8c\x17\x15\x0c\xf7\x41\x2f\x5d\x44\xf7\xae\xbf\x5a\xde\xf7\xc8\xbc\x70\xb3\x41\xef\xb9\xdb\xa3\xb2\x74\x55\xd9\x9f\x45\x1b\x9c\x16\x08\xfe\x49\xf0\x40\x4b\x6d\x94\x88\x38\x55\xb1\x8e\x74\x32\x35\xb3\x50\x24\x34\x61\xd3\x48\xd0\x69\x12\x0a\xf0\x02\xf1\x74\x59\x0e\x7a\x7e\x4a\xef\x6f\xc4\xc0\xf4\x27\xa6\x03\x6d\x78\x2c\x98\x30\x52\x4b\x3d\xe5\x72\xca\x85\x9a\x86\x8a\x31\xab\x4c\x9c\x44\x89\x7b\x82\xc1\x4f\xe9\x60\x48\x97\x95\xbb\x2f\xd2\xea\x71\xd0\xeb\xd5\x80\xca\xea\x31\x73\xe5\xdc\xb9\xea\x4f\x50\x6c\xdc\x32\xc9\x8b\x20\x0c\xb9\xd4\x6a\x6a\xa7\x5c\xd0\x99\x0d\x13\x19\x25\xb1\x53\x33\xca\xb4\x92\x22\x96\x09\xc4\x65\xf9\xf7\x28\x6c\xd3\x25\x08\x8d\x8b\x6d\x24\xb9\xb1\x71\x92\xcc\x24\xd7\x7a\x36\x53\x51\x24\xd5\x74\x66\xe5\x4c\x87\xad\xce\x37\xdb\x1b\xe3\x61\x7f\x7b\x5d\x3e\x9c\xe6\xc9\x63\x7b\x93\x3c\x5c\xe6\xdd\x0d\x89\x90\xc3\x24\xdd\x10\x0f\x69\xd0\x5b\x44\xc5\x7d\xba\x7c\x4f\x28\xc1\x0b\xdb\xf7\xbd\xa3\x4e\x71\x39\x9c\xf3\xa3\x9f\xa2\x4d\x34\xf1\xb3\xc9\x35\xde\xae\x0b\x97\x1c\xf6\xe7\xfc\x09\xdb\xea\xe8\x2a\x73\x51\xe9\x88\xf3\x61\x4b\x3a\x73\xd2\x25\x79\xcc\xd7\x05\x79\x70\x53\xd2\x6c\xc9\xa4\xca\xc9\xba\x74\xa4\xb9\x75\xdf\x9e\xc2\x61\x7f\xd5\x42\xeb\x27\xe9\xc6\x9b\xd0\xef\xa2\x3e\x2c\x37\xf7\xa4\xbe\x3e\xf7\x98\xb6\x3d\x32\x77\xe9\xfd\xbc\x1a\xf4\x94\xe8\x91\x4f\x8b\x6c\x59\x0e\x7a\x78\x32\x78\xdf\xef\xe3\x91\xe0\x41\x40\x5e\xdc\xf7\x39\xa5\xb4\x5f\x6e\xee\x7b\x47\x87\xf7\x64\x96\x66\xd9\xa0\xf7\x5f\x21\x0b\x4f\x86\xb6\xe7\x3f\x83\x62\x8d\x2e\x70\x1b\xb7\xcc\x93\xa4\x77\x74\xb8\x8a\xaa\x39\x49\x06\xbd\x73\xae\x81\x1a\x4b\x04\x07\xc6\x23\x05\xca\x6a\x52\xb7\x94\x30\xc2\x90\x36\x26\x50\xa0\xc2\xb0\xa6\x9b\x96\xe2\x78\xb0\xed\xd1\xe7\xc2\x00\xa5\x21\xe1\x21\x08\x6e\x23\x0e\x4a\x13\xdf\xd4\x52\x90\x0c\xb6\x9d\x8a\x35\x6d\x2d\xa3\xe5\x3d\x97\x1a\x42\xa6\x89\x60\xa0\x75\xf8\x42\x06\x50\xc5\x02\xe0\x2c\x0e\x80\x72\x0b\x54\xeb\x9a\x60\x22\xc0\x21\xe0\xec\x5c\x4a\x50\xd6\x12\xae\x80\xea\x1a\x84\x22\x75\xbb\x55\xa5\x0d\x0f\x20\x0c\xb9\x47\x60\x9b\xb6\x1e\x04\x46\x79\xc0\xc1\xca\x7a\x8e\x6c\x5a\x3f\x48\x24\x68\xa3\xc1\x68\x19\x03\x35\x1c\x6d\x04\x6a\x11\xa7\x01\xca\x0d\x61\x11\x07\xa9\x05\xa9\xdb\x5a\x1e\x83\x90\xa3\x28\x6a\xc4\xb9\x12\x10\x0a\x8e\x96\x49\xca\x11\x98\x34\xa4\x6e\xb7\xc0\xc2\x9a\xb5\x76\x50\xd8\xb4\xdb\x41\xaa\x25\xb2\xd4\xd6\x3c\x9d\x4a\x38\x84\xd2\x22\x8f\xf1\xfd\x4d\xb3\x1d\x63\x1c\x8d\x34\x4c\x83\xd6\x12\xff\xf9\x11\x8a\x1e\x03\xce\xed\xb9\x62\x60\x71\x8e\x02\x46\xc5\x2b\xcb\xc6\x28\xca\x0e\xa5\x8a\x81\x0a\x09\x9c\x59\xa0\x52\x80\x14\x21\xda\x0d\x5a\xd9\x57\xad\x61\x02\xa1\x72\x6b\xce\x65\x08\xa1\x92\x44\x52\x60\xec\xa5\x02\x10\x4c\x06\x0c\xa8\x30\x7e\x55\x41\xe0\xa2\x32\x6e\xc1\x70\x16\xe0\x20\xf1\x83\xe7\xd2\x42\x68\x24\x61\x1a\x6c\xf8\x8a\x94\xd0\x04\x02\xa4\x35\x31\x70\x2d\x41\x4a\x0d\xc2\x28\xf4\x17\x08\x66\x08\x03\x69\x9e\x86\x53\xbd\x3c\xdc\x22\x6c\x4a\x6d\xaf\xff\x34\x1f\x14\xd7\x44\x71\xd0\x54\xc4\x01\x93\x20\x42\x41\x68\x80\x79\xa2\x03\xc6\x40\x69\xd3\x7c\x70\x05\x56\xe8\x11\x48\xad\x09\xe3\x20\x43\x8b\x3f\x4c\xe0\x62\x33\x52\x0b\x42\x32\xe2\x0a\x42\xa1\x49\xf3\x53\xaf\x0d\xf3\x93\x89\x02\x41\x4d\x16\x08\x60\xda\x10\x09\x8c\x99\x21\xa7\x10\x6a\x4e\x9a\x1f\x5a\xf3\x1b\x10\x54\x12\x0b\x5c\x8c\x18\x05\x16\x4a\xc2\x18\x18\x26\x88\x02\x43\x98\x05\xcc\x4e\xc3\x24\x6a\x35\x5a\xa0\x37\x99\x24\x06\xac\xe6\x44\x82\xb4\xa8\x8e\x2a\x9c\xa3\x42\x64\x57\x42\x46\xaf\xe9\xc1\xcb\x7f\x88\x0b\xc8\x4d\x86\x98\x2c\x62\xe2\xc2\x5b\x60\x19\x69\x7e\x1a\x0f\xb6\x16\xb0\xcf\x4f\x5c\xa8\x19\x11\x14\x98\xfa\x99\x19\x0c\xce\x98\x06\xb2\xd6\x84\xc9\x15\x18\xb0\x8a\x84\x20\xc3\x86\xe4\x20\x2d\x86\xa5\x02\x2a\x2d\x08\xae\x89\x01\xae\x38\xd8\x50\x65\x01\x28\x8d\xc9\x27\x85\x88\x11\x95\x96\x01\x48\xaa\x03\x09\xda\xda\x00\x74\xc8\x02\x0d\x4a\xd4\x14\x86\x80\x26\xa8\x4c\x53\x4b\x18\x70\xde\x90\x12\xc3\x78\xc3\x28\x48\xc6\x63\x8a\x30\x2c\x8e\x33\xce\xeb\x21\xcc\x6e\x6a\x1a\x9a\x81\x95\x98\xc2\x12\x84\x36\x01\x70\x2b\x49\xab\x22\x03\x55\xfb\xb3\x86\xc3\xa9\x04\x65\x02\x09\x46\x5b\x84\x1b\xb4\xc0\x47\x5a\xf8\x42\x22\x2c\x41\x67\x28\x60\x8c\x93\xad\x5b\x3e\x2f\x84\x06\x4b\x31\x93\x62\xd4\x43\xb5\x0d\x18\x58\xca\x71\xbd\x58\x60\x41\x86\xa2\x26\x35\xe8\x90\x50\xdf\x23\x03\x01\x46\xf2\x86\xc6\xd1\x4d\xa0\x80\x52\xee\xbd\x4b\x35\x86\xb9\xa5\xc2\x8f\x90\x1d\x13\xa9\x45\x90\x5a\x28\x8a\x10\x64\xa7\x60\x83\x12\xc4\xe7\x45\x20\xc1\x5a\xac\xf2\x4c\xab\x98\xa2\x65\xc2\x60\x5a\x52\x8e\x4e\x65\x3a\x10\xa0\xa9\xae\xe9\xb2\xfe\x40\xff\xd9\x86\xf4\xfd\x1b\x85\x55\xd1\xbb\x97\x0b\x44\x43\x29\xf7\x23\x86\xec\xb8\x4c\x59\x4b\xc2\xc9\x64\x27\xd4\xa0\x2d\x82\xdb\xcf\x0b\xae\xc0\x84\x98\x45\x4a\xdb\x79\x0d\xeb\x67\x2e\x7c\xe1\xa5\x88\x48\x99\x00\x24\x96\x0c\x65\x51\x8a\xd2\xa2\xa5\x39\x65\x84\x06\x02\x04\xca\x10\x1c\xbd\xe3\x97\x59\x6b\xbb\x61\x68\xb9\xd9\x0a\x64\x06\x8c\x55\x73\x01\x86\xeb\xcc\x27\x07\x32\xc5\x1c\xa4\x17\xcd\x39\xee\x71\xc2\xd7\x54\x9f\x43\x6c\x4b\x0b\xe0\x52\xf9\xd8\x90\x14\x6b\x87\x60\xb6\xa1\x15\x96\xd1\x0d\x16\x0b\x65\x3e\x2f\x98\x05\xae\x03\x05\xc6\xa8\x98\x12\x01\x96\x23\x4c\xa6\x39\xd1\xc0\x2c\x0f\x0c\x50\xb5\xa5\x39\x50\x2b\x7c\xd4\x86\x1c\x8d\xb3\x36\xd0\x60\x3c\xbf\x08\x33\xd0\xe8\x64\x63\x79\xcc\x40\x63\xe1\xb5\xe8\x37\x4b\x31\x73\x24\x6a\x65\x9e\xf0\xa9\x81\xe9\x8b\xb9\xe4\x85\x34\x24\x83\xd0\x57\x2f\x9f\x0d\xc0\xb1\xc3\x0a\xf4\x39\x55\x81\xaf\x70\x75\xf4\xfa\x05\xf1\x6b\x80\xc9\x2f\x1b\x4a\x03\xe7\xc2\xfb\x34\xb4\xb8\xe0\x86\x0b\x34\x4a\x28\xcc\xd0\x90\x37\xb4\x8f\x3b\xef\x14\xa6\x35\x70\xe9\x61\x29\x9f\x2e\x88\x04\x83\x00\xf7\x8f\x80\xe1\x87\x4f\xa8\x00\x93\x43\x63\x6e\x87\xa8\x49\xdb\x9a\xc4\xaa\x23\xb1\xd2\x22\x72\xef\x88\xba\x34\x30\x30\x14\x37\x69\x5c\x68\x03\x8c\xfb\x0e\xdc\x22\x8d\xdf\xa4\x51\x9f\x94\x21\x96\x79\x8d\x74\x88\x2b\xc3\x42\x5d\x93\x1a\xb7\x84\xcf\x0b\xbf\x30\x58\xcc\xa9\x10\x73\x1f\x05\x18\x13\x56\xc4\x28\x96\x2a\x03\x52\x32\xaf\x00\xed\x54\x5a\xb4\x34\xa7\x58\x1a\x7d\x54\x05\x60\x04\xd6\x5b\x6a\xd1\x5f\x5a\xdb\x6d\x20\xa1\x3c\xbb\x61\x21\x26\xf5\x3c\xa8\xc3\x0a\x4d\x67\x9e\xcd\x60\xa9\x90\x52\xd6\x15\x49\x81\xe2\xa1\xdf\xea\xeb\x04\xe5\x0d\x8d\xa1\x55\x17\x2f\x49\x4d\xe0\x43\xab\xa1\x7d\x68\x35\xaa\x3e\x9f\x63\x49\x16\x06\x54\x28\xea\x68\xb6\x3f\x87\xe8\xea\x33\xec\x0f\x37\xdc\xe2\x88\xaf\xc6\xfd\xfb\xa3\x43\x3c\x11\x76\x5e\x69\x48\x59\xc4\x7f\x76\xfe\x4f\x84\x9d\xd9\xa9\x96\x3c\x9e\x85\x56\x58\x99\xd0\x19\x8d\xac\xd1\xd4\x19\x35\xe5\x2a\x84\xdf\xca\xde\x51\xf7\x02\xf6\xda\x23\x50\xb4\x5a\xb9\x65\xd2\x9c\x8b\x3b\xef\x40\x65\x11\x3f\x7b\xfb\x29\xb7\x3c\xed\xeb\x4f\x5c\xb8\xa8\x72\xe3\xcc\xe1\xd7\xc1\x7e\xcd\xb0\x7b\xd4\x69\x66\x40\x59\xc4\x64\x80\x06\x6d\x07\x5a\x01\x78\x21\x80\x1a\xc1\x68\x9e\x66\xc9\x41\x33\xe5\xc9\xed\x3d\x9d\x1d\x7c\x77\xb0\x7f\xe3\x3e\x55\xc7\xfe\x19\xa8\xd8\xc7\xf3\xfb\x43\xba\x4c\xf2\x87\xb7\x3b\x8c\x5d\x43\x0e\x5e\x5c\xdd\x1b\xcf\xf9\x77\x84\x74\x79\x1f\xa4\xcb\xc4\x7d\x72\x65\x60\x94\x73\x11\xd3\xe8\x2e\xc3\x74\x32\x95\xb3\x84\x69\xee\x1c\xb7\x22\xe1\x91\x53\xf0\x5b\xb9\x33\xe8\x2f\xa9\xe8\xcc\xec\xd8\x51\xc3\x86\xd1\x64\x42\xfe\xf1\x0f\xb2\xfb\x02\x57\xc6\xd1\xca\xfd\x55\x7b\xe2\xb2\x6c\x66\x06\x56\x31\x2b\xc2\xa9\x70\x11\x4b\xe8\x54\xba\xa9\x8c\x0d\xb5\xa1\x94\x3a\x99\x29\x17\xce\x9e\xe1\x79\x72\x31\xff\x7f\xc4\xdc\xee\x0a\x68\x67\x3a\x8c\x28\x95\x5c\x4e\x23\xc7\xc4\xd4\x1a\x2d\x5d\xc2\x59\x68\x18\x95\x54\x88\x17\x61\xf7\x24\xe6\x46\x79\xe2\xce\xd3\xa2\xc8\x0b\x58\xf8\x27\x9d\x33\x32\x68\x6d\x2e\xdc\x2a\x8b\x62\xf7\x7e\x17\x86\xcb\x77\x04\xd9\xba\x2f\x5d\xe5\x43\x5a\xc5\xf3\x83\xe7\xdd\x84\xc4\x78\xd9\xdb\xff\x2d\xda\x44\x4d\x24\xbe\x7f\xf2\x40\x55\xb8\x6a\x5d\x2c\x5f\xbe\xea\xb4\x06\x26\x6e\xe1\x81\xf5\x51\x74\x7f\x27\xa7\x43\x06\xc6\x70\x66\xe3\x84\x71\x6d\x5d\xa4\x93\x99\x51\xc6\x28\xc6\x64\xe4\xa8\xd5\x4a\x6b\xf4\xf2\xf7\x2f\x30\x15\xeb\xe9\xe3\x7f\x86\x06\x25\xf8\x26\x70\x91\x14\x71\x24\x22\x31\x4d\x12\x2d\x22\xc5\x2d\x63\xce\x4a\x2d\x13\xad\x99\x90\xd3\xd7\x11\x3c\x46\x8b\xec\x3f\x43\x80\x12\x7c\x13\x58\x3d\x75\xb1\xe5\x11\x9d\x69\xee\x4c\xa4\x84\x73\x33\xc9\x12\x29\x23\xeb\xa4\xe1\xe6\x29\x82\xa7\x8f\x42\x5f\x9f\x3f\x0a\xd5\xef\x04\xfe\xee\x9f\x26\xdb\xbf\xb6\x4f\xa3\x32\x8d\x83\xa4\xc8\x57\x49\xfe\xb0\x0c\x1e\xf2\x62\x31\xcf\x33\x87\x61\xd5\x5e\xc4\xeb\xc7\x84\xc3\x7e\xfd\xc7\xfb\xff\x0b\x00\x00\xff\xff\x06\xd6\x2e\x7f\xcd\x1f\x00\x00") +var _web_uiIndexHtml = []byte("\x1f\x8b\x08\x00\x00\x00\x00\x00\x00\xff\xac\x59\x5b\x73\xdb\xb8\x92\x7e\xcf\xaf\xc0\x68\xd7\x27\x99\xaa\xc3\x16\xee\x00\x33\x96\xab\x14\x59\x4e\x7c\xca\x17\xad\x64\x67\x4f\x9e\x54\xbc\x40\x16\x67\x29\x52\x4b\x52\x72\x9c\xa9\xfc\xf7\xad\x06\x29\x59\xbe\x4c\xb2\x53\xe7\x3c\x18\x6a\x12\x8d\xaf\xbf\x6e\x74\x37\x20\xf9\xf8\x97\xd3\xeb\xd1\xcd\x97\xc9\x98\x2c\x9b\x55\x7e\xf2\xe6\x18\x3f\x48\x1e\x15\x77\x83\x9e\x2b\x7a\x24\xc9\xa3\xba\x1e\xf4\xdc\x2a\x76\x55\x90\x97\x51\x9a\x15\x77\xbd\x93\x37\x84\x1c\x2f\x5d\x94\xa2\x40\xc8\xf1\xca\x35\x11\x49\x96\x51\x55\xbb\x66\xd0\xdb\x34\x8b\xc0\xf6\x0e\xa7\x96\x4d\xb3\x0e\xdc\xff\x6e\xb2\xed\xa0\xf7\xcf\xe0\x76\x18\x8c\xca\xd5\x3a\x6a\xb2\x38\x77\x3d\x92\x94\x45\xe3\x8a\x66\xd0\x3b\x1f\x0f\x5c\x7a\xe7\x76\x2b\x9b\xac\xc9\xdd\xc9\xa8\x2c\xea\x4d\x4e\xe2\x07\xf2\x29\xaa\x97\xd9\xa8\xac\xd6\xc7\xfd\x76\xea\xc0\x40\x11\xad\xdc\xa0\x97\xba\x3a\xa9\xb2\x75\x93\x95\xc5\x01\x6c\xef\xa5\xe2\x36\x73\xf7\xeb\xb2\x6a\x0e\xb4\xee\xb3\xb4\x59\x0e\x52\xb7\xcd\x12\x17\xf8\x87\xbf\x93\xac\xc8\x9a\x2c\xca\x83\x3a\x89\x72\x37\x60\x1d\x50\x3b\x1c\xc2\x25\x9e\x63\xb0\xc9\xfa\x49\x59\x2c\xb2\xbb\xbe\x2b\xb6\x59\x55\x16\x2b\x57\x1c\x9a\x38\x32\x1f\x8e\x38\x5f\x95\xe9\x26\x77\x93\xca\x2d\xb2\xaf\x47\x9c\x1f\x89\xe1\x11\xe7\x7b\x04\x7c\xc3\x47\x47\x9c\x1f\x40\xec\xb5\xd6\x55\x99\x6e\x12\x74\x6f\xaf\x56\x95\x65\x73\x3b\xbd\xd8\xab\x1c\xf1\x33\x04\x39\xdb\x2b\xe4\x65\x12\xe1\x8a\x9b\x87\xb5\xdb\x6b\x45\x9b\xa6\xdc\x6b\x34\x65\x95\x65\xdd\x94\xf9\x70\x64\x4e\xdb\xd7\x63\xdc\xf1\xf1\xd5\xe7\xc7\x19\xce\xcf\xc6\xc3\x9b\xdb\xe9\x78\xf6\x8a\xf6\x3f\x6f\xc6\x57\xa7\xf3\xc9\xf4\xfa\xe6\x1a\xb3\x69\x76\xb8\xec\x34\x6a\x3a\xdb\x8b\x28\xaf\xdd\x7e\xd1\x7c\x38\x99\x5c\x9c\x8f\x86\x37\xe7\xd7\x57\xf3\x9b\xf1\xe5\xe4\x62\x78\x33\x9e\xff\xf7\x74\x38\x99\x8c\xa7\x87\x0b\x5a\xed\xd3\xf1\xd9\xf0\xf6\xe2\x66\x3e\x9c\x7d\xb9\x1a\xcd\xaf\x3f\xcc\xc6\xd3\xcf\xe3\x69\x67\xa9\xa9\x36\x3b\xbd\x7f\xfc\xd7\xed\x78\xfa\x65\x7e\x7e\x75\x33\xfe\x38\xf5\xe0\x2f\xb1\xf6\xd6\xae\xaf\x2e\xbe\xcc\x3f\x5e\x9c\x5f\x5e\x8e\xa7\xf3\xd1\xf5\xe5\xe4\xfa\x6a\x7c\x75\x73\x08\xba\x63\x3b\x9c\x4c\x0e\x9d\xc2\xad\xff\xc1\xfe\x6d\x5d\x55\x77\x1b\xe5\x35\x38\x70\xa0\xf8\xb4\x83\xab\x5c\x9d\x7d\x73\x33\x57\x61\xc6\x9d\xba\x45\xb4\xc9\x9b\xfa\xd0\x40\x56\xfc\xee\xfc\x66\x9f\x45\x09\xee\x91\xdb\xcd\x2a\x9c\xc5\x14\xde\x1b\xc3\x14\xab\xca\x3c\x77\xd5\xc1\xab\xd5\xba\x2c\xba\xec\x51\xa7\x7b\xb3\xa3\xeb\xab\xd9\xed\xc5\xfc\xf6\x7c\x7e\x7a\x3e\x1b\x7e\xb8\x18\xcf\xa7\xe3\xe1\xc5\xcd\xf9\xe5\xf8\x45\x90\x5e\xaa\x0e\xaf\x46\x9f\xae\xa7\xf3\xd9\xf8\x62\x3c\x7a\x35\xae\xdd\x92\xd1\xf5\xe4\xcb\xf4\xfc\xe3\xa7\x9b\xf9\x97\xf1\x70\xfa\x18\x03\xca\xe9\x9e\x60\xa7\xfa\xf1\xfc\x66\x3e\xfb\x34\xdc\xeb\x48\x29\x55\x62\x53\x1b\x3f\x57\xc4\xad\xde\x9b\x3c\xe2\x9c\x41\x08\x34\x48\xdd\xf6\x88\xd3\x77\xfb\x55\xbf\x3e\x5f\xf6\xe1\xfc\x6a\x38\xfd\x32\xc7\x9c\xdc\x2f\x2d\xeb\xfa\xb9\xda\x70\x74\x31\x9b\x8f\xaf\xd0\xcb\xd3\x3f\xf3\xea\x6a\x36\x19\x8e\xc6\x3f\x55\x9b\xcd\xae\x7f\xa6\xf2\xe9\xfa\x72\x3c\x3f\x2c\x5b\x6c\x90\xb5\x17\xcf\x8e\xf8\xd9\xfd\xfd\x3d\xb4\x19\x05\x59\xf9\x9c\xe9\x74\x3c\xb9\x9e\x9f\xcf\x66\xb7\xe3\xd9\x0f\x20\xee\xb2\x66\xb9\x89\x21\x29\x57\x47\xfc\x6c\x89\x9d\x33\x29\xab\xf5\x11\x3f\x6b\x71\x8f\xf8\x59\x56\xd7\x1b\x4c\xa9\xb3\x02\x13\xe9\x2c\x59\x96\x65\xed\x9e\x1b\x3b\xbd\x1e\xfd\xc8\xca\x33\xa2\x67\x69\x99\xbc\x88\xac\x87\xb8\x18\x0f\xa7\x57\x3f\x00\xca\x5d\x54\x15\xb0\xe7\xd9\xf2\x7e\x05\x67\x38\x39\xff\x0b\x74\xa2\x75\xf6\x1c\xe5\x31\x33\x7f\x0c\xf3\x43\x2a\xb7\xe7\xf3\xd9\xf8\xe6\xe6\xfc\xea\xe3\x6c\x3e\xb9\x18\x8e\xc6\x9f\xae\x2f\x4e\xc7\x8f\x79\x3e\x9f\xbf\xa2\xf8\xf1\x7a\xfe\x69\x3c\x1d\xcf\xe7\x7b\xb4\xb8\x2a\xef\x6b\x57\x65\x8b\x87\xc3\xb2\x6f\x5c\xbd\xeb\x03\x4f\xda\x8f\xfb\x8a\x27\xd6\x70\xbd\xce\xb3\xb6\xa3\x7f\xcc\xcb\x38\xca\x9f\xf6\xd5\x1e\xe9\x9f\xbc\xc1\xc3\xf9\x97\x20\x20\x4f\x0b\xe7\x3d\xd9\x57\x0c\x39\xa8\x17\x12\x04\xfe\x34\xcf\xb3\xe2\x7f\x48\xe5\xf2\x41\x2f\x4b\xf0\xf8\x6c\x1e\xd6\x6e\xd0\xcb\x56\xd1\x9d\xeb\xaf\x8b\xbb\x1e\x59\x56\x6e\x31\xe8\xfd\xf1\x07\x8c\xda\xf3\x6c\x12\x35\xcb\xef\xdf\xa3\xba\x76\x4d\xdd\x5f\x44\x5b\x5c\x16\x08\xfe\x55\xf0\x40\x4b\x6d\x94\x88\x38\x55\x89\x8e\x74\x1a\x9b\x45\x28\x52\x9a\xb2\x38\x12\x34\x4e\x43\x01\x1e\x10\xdb\x5f\x3d\xe8\xf9\x25\xbd\x7f\x23\x07\xa6\xbf\x32\x1d\x68\xc3\x13\xc1\x84\x91\x5a\xea\x98\xcb\x98\x0b\x15\x87\x8a\x31\xab\x4c\x92\x46\xa9\x7b\xc2\xc1\x2f\x39\xe0\x90\x15\x8d\xbb\xab\xb2\xe6\x61\xd0\xeb\xb5\x84\xea\xe6\x21\x77\xf5\xd2\xb9\xe6\x27\x2c\xb6\xae\x48\xcb\x2a\x08\x43\x2e\xb5\x8a\x6d\xcc\x05\x5d\xd8\x30\x95\x51\x9a\x38\xb5\xa0\x4c\x2b\x29\x12\x99\x42\x52\xd7\xff\x1e\x83\xfb\xa3\x27\x88\x12\x21\xb4\x51\xc9\x82\xa7\x62\x61\xb4\x49\xa8\x8b\xa9\x30\x52\x51\xae\x5d\xa2\xe9\xde\xe6\x9b\xdd\x3d\xe6\xb8\xbf\xbb\xc4\x1d\xc7\x65\xfa\xb0\xbf\xdf\x1c\x17\x65\x7b\x93\x6a\xdf\x10\x72\x9c\x66\x5b\xe2\x29\x0d\x7a\xab\xa8\xba\xcb\x8a\xf7\x84\x12\xbc\x46\xfc\xd6\xdb\xe9\x78\xbd\x25\x3f\xf9\x47\xb4\x8d\x66\x7e\x35\x99\xe2\x9d\xaf\x72\xe9\x71\x7f\xc9\x9f\xa8\xad\x4f\x26\xb9\x8b\x6a\x47\x5c\x11\xc5\xb9\x23\x07\x6b\xb2\x82\x3c\x94\x9b\x8a\xdc\xbb\x98\x74\x15\x42\x9a\x92\x6c\x6a\x47\xba\xbb\xe0\xed\x39\x1c\xf7\xd7\x7b\x6a\xfd\x34\xdb\x7a\x17\xfa\x87\xac\x8f\xeb\xed\x1d\x69\x2f\x75\x3d\xa6\x6d\x8f\x2c\x5d\x76\xb7\x6c\x06\x3d\x25\x7a\xe4\xeb\x2a\x2f\xea\x41\x0f\xcb\xfe\x7d\xbf\x8f\xf5\x7e\x2f\xa0\xac\xee\xfa\x9c\x52\xda\xaf\xb7\x77\xbd\x93\xe3\x3b\xb2\xc8\xf2\x7c\xd0\xfb\x8f\x90\x85\x67\x43\xdb\xf3\x8f\x41\xb5\xc1\x10\xb8\xad\x2b\xca\x34\xed\x9d\x1c\xaf\xa3\x66\x49\xd2\x41\xef\x92\x6b\xa0\xc6\x12\xc1\x81\xf1\x48\x81\xb2\x9a\xb4\x23\x25\x8c\x30\x94\x8d\x09\x14\xa8\x30\x6c\xe5\x6e\xa4\x38\x1f\xec\xde\xe8\x4b\x61\x80\xd2\x90\xf0\x10\x04\xb7\x11\x07\xa5\x89\x1f\x5a\x14\x14\x83\xdd\x4b\xc5\xba\xb1\xc5\xd8\xeb\x5e\x4a\x0d\x21\xd3\x44\x30\xd0\x3a\x7c\x81\x01\x54\xb1\x00\x38\x4b\x02\xa0\xdc\x02\xd5\xba\x15\x98\x08\x70\x0a\x38\xbb\x94\x12\x94\xb5\x84\x2b\xa0\xba\x25\xa1\x48\x3b\xee\x4c\x69\xc3\x03\x08\x43\xee\x19\xd8\x6e\x6c\x27\x81\x51\x1e\x70\xb0\xb2\x5d\x23\xbb\xd1\x4f\x12\x09\xda\x68\x30\x5a\x26\x40\x0d\x47\x1f\x81\x5a\xe4\x69\x80\x72\x43\x58\xc4\x41\x6a\x41\xda\xb1\xc5\x63\x10\x72\x84\xa2\x46\x5c\x2a\x01\xa1\xe0\xe8\x99\xa4\x1c\x89\x49\x43\xda\x71\x47\x2c\x6c\x55\xdb\x00\x85\xdd\xb8\x9b\xa4\x5a\xa2\x4a\xeb\xcd\xd3\xa5\x84\x43\x28\x2d\xea\x18\xff\xbe\x1b\x76\x73\x8c\xa3\x93\x86\x69\xd0\x5a\xe2\x9f\x9f\xa1\x18\x31\xe0\xdc\x5e\x2a\x06\x16\xd7\x28\x60\x54\xbc\xb2\x6d\x8c\x22\x76\x28\x55\x02\x54\x48\xe0\xcc\x02\x95\x02\xa4\x08\xd1\x6f\xd0\xca\xbe\xea\x0d\x13\x48\x95\x5b\x73\x29\x43\x08\x95\x24\x92\x02\x63\x2f\x0d\x80\x60\x32\x60\x40\x85\xf1\xbb\x0a\x02\x37\x95\x71\x0b\x86\xb3\x00\x27\x89\x9f\xbc\x94\x16\x42\x23\x09\xd3\x60\xc3\x57\x50\x42\x13\x08\x90\xd6\x24\xc0\xb5\x04\x29\x35\x08\xa3\x30\x5e\x20\x98\x21\x0c\xa4\x79\x9a\x4e\xed\xf6\x70\x8b\xb4\x29\xb5\xbd\xfe\xd3\x7a\x50\x5c\x13\xc5\x41\x53\x91\x04\x4c\x82\x08\x05\xa1\x01\xd6\x89\x0e\x18\x03\xa5\x4d\xf7\xc0\x15\x58\xa1\x47\x20\xb5\x26\x8c\x83\x0c\x2d\x7e\x30\x81\x9b\xcd\x48\x0b\x84\x62\xc4\x15\x84\x42\x93\xee\xa3\xdd\x1b\xe6\x17\x13\x05\x82\x9a\x3c\x10\xc0\xb4\x21\x12\x18\x33\x43\x4e\x21\xd4\x9c\x74\x1f\xb4\xd5\x37\x20\xa8\x24\x16\xb8\x18\x31\x0a\x2c\x94\x84\x31\x30\x4c\x10\x05\x86\x30\x0b\x58\x9d\x86\x49\xb4\x6a\xb4\xc0\x68\x32\x49\x0c\x58\xcd\x89\x04\x69\xd1\x1c\x55\xb8\x46\x85\xa8\xae\x84\x8c\x5e\xb3\xc3\x19\xd8\x10\x37\x90\x9b\x1c\x39\x59\xe4\xc4\x85\xf7\xc0\x32\xd2\x7d\x74\x11\xdc\x7b\xc0\xbe\x3d\x09\xa1\x66\x44\x50\x60\xea\x33\x33\x98\x9c\x09\x0d\x64\x6b\x09\x8b\x2b\x30\x60\x15\x09\x41\x86\x9d\xc8\x41\x5a\x4c\x4b\x05\x54\x5a\x10\x5c\x13\x03\x5c\x71\xb0\xa1\xca\x03\x50\x1a\x8b\x4f\x0a\x91\x20\x2b\x2d\x03\x90\x54\x07\x12\xb4\xb5\x01\xe8\x90\x05\x1a\x94\x68\x25\x4c\x01\x4d\xd0\x98\xa6\x96\x30\xe0\xbc\x13\x25\xa6\xf1\x96\x51\x90\x8c\x27\x14\x69\x58\x9c\x67\x9c\xb7\x53\x58\xdd\xd4\x74\x32\x03\x2b\xb1\x84\x25\x08\x6d\x02\xe0\x56\x92\xbd\x89\x1c\x54\x1b\xcf\x96\x0e\xa7\x12\x94\x09\x24\x18\x6d\x91\x6e\xb0\x27\x3e\xd2\xc2\x37\x12\x61\x09\x06\x43\x01\x63\x9c\xec\xc2\xf2\x6d\x25\x34\x58\x8a\x95\x94\xa0\x1d\xaa\x6d\xc0\xc0\x52\x8e\xfb\xc5\x02\x0b\x32\x14\xad\xa8\x41\x87\x84\xfa\x37\x32\x10\x60\x24\xef\x64\x9c\xdd\x06\x0a\x28\xe5\x3e\xba\x54\x63\x9a\x5b\x2a\xfc\x0c\x79\x54\x22\x2d\x04\x69\x41\x11\x42\x90\x47\x03\x5b\x44\x10\xdf\x56\x81\x04\x6b\xb1\xcb\x33\xad\x12\x8a\x9e\x09\x83\x65\x49\x39\x06\x95\xe9\x40\x80\xa6\xba\x95\xeb\xf6\x01\xe3\x67\x3b\xd1\xbf\xdf\x2a\xec\x8a\x3e\xbc\x5c\x20\x1b\x4a\xb9\x9f\x31\xe4\x51\xcb\xd4\x2d\x12\x2e\x26\x8f\xa0\x06\x7d\x11\xdc\x7e\x5b\x71\x05\x26\xc4\x2a\x52\xda\x2e\x5b\x5a\x9f\xb9\xf0\x8d\x97\x22\x23\x65\x02\x90\xd8\x32\x94\x45\x14\xa5\xc5\x5e\xe6\x94\x11\x1a\x08\x10\x88\x21\x38\x46\xc7\x6f\xb3\xd6\x76\xcb\xd0\x73\xb3\x03\x64\x06\x8c\x55\x4b\x01\x86\xeb\xdc\x17\x07\x2a\x25\x1c\xa4\x87\xe6\x1c\xcf\x38\xe1\x7b\xaa\xaf\x21\xb6\x93\x05\x70\xa9\x7c\x6e\x48\x8a\xbd\x43\x30\xdb\xc9\x0a\xdb\xe8\x16\x9b\x85\x32\xdf\x56\xcc\x02\xd7\x81\x02\x63\x54\x42\x89\x00\xcb\x91\x26\xd3\x9c\x68\x60\x96\x07\x06\xa8\xda\xc9\x1c\xa8\x15\x3e\x6b\x43\x8e\xce\x59\x1b\x68\x30\x5e\x5f\x84\x39\x68\x0c\xb2\xb1\x3c\x61\xa0\xb1\xf1\x5a\x8c\x9b\xa5\x58\x39\x12\xad\x32\x2f\xf8\xd2\xc0\xf2\xc5\x5a\xf2\x20\x9d\xc8\x20\xf4\xdd\xcb\x57\x03\x70\x7c\x61\x05\xc6\x9c\xaa\xc0\x77\xb8\x36\x7b\xfd\x86\xf8\x3d\xc0\xe2\x97\x9d\xa4\x81\x73\xe1\x63\x1a\x5a\xdc\x70\xc3\x05\x3a\x25\x14\x56\x68\xc8\x3b\xd9\xe7\x9d\x0f\x0a\xd3\x1a\xb8\xf4\xb4\x94\x2f\x17\x64\x82\x49\x80\xe7\x47\xc0\xf0\xc1\x17\x54\x80\xc5\xa1\xb1\xb6\x43\xb4\xa4\x6d\x2b\x62\xd7\x91\xd8\x69\x91\xb9\x0f\x44\xdb\x1a\x18\x18\x8a\x87\x34\x6e\xb4\x01\xc6\xfd\x0b\x3c\x22\x8d\x3f\xa4\xd1\x9e\x94\x21\xb6\x79\x8d\x72\x88\x3b\xc3\x42\xdd\x8a\x1a\x8f\x84\x6f\x2b\xbf\x31\xd8\xcc\xa9\x10\x4b\x9f\x05\x98\x13\x56\x24\x08\x4b\x95\x01\x29\x99\x37\x80\x7e\x2a\x2d\xf6\x32\xa7\xd8\x1a\x7d\x56\x05\x60\x04\xf6\x5b\x6a\x31\x5e\x5a\xdb\x5d\x22\x21\x9e\xdd\xb2\x10\x8b\x7a\x19\xb4\x69\x85\xae\x33\xaf\x66\xb0\x55\x48\x29\xdb\x8e\xa4\x40\xf1\xd0\x1f\xf5\x6d\x81\xf2\x4e\xc6\xd4\x6a\x9b\x97\xa4\x26\xf0\xa9\xd5\xc9\x3e\xb5\x3a\x53\xdf\x2e\xb1\x25\x0b\x03\x2a\x14\x6d\x36\xdb\xcf\x21\x86\xfa\x02\xdf\x87\x5b\x6e\x71\xc6\x77\xe3\xfe\xdd\xc9\x31\xde\x08\xdb\x3b\x65\x7b\x45\xad\xab\xe4\x67\xf7\x7f\xa7\xe2\x34\xb4\x69\x1a\xa7\xca\x18\xa5\xe4\x42\x44\x32\x76\x91\x36\xa1\xd5\x11\x4b\x39\xfc\x5e\xf7\x10\x78\x7f\x5f\x7d\x84\x6f\x2f\xb6\xdb\xa8\x22\xd1\x7a\xed\x8a\xb4\xbb\x17\x0f\xc8\x62\x53\xf8\xdf\x83\xde\xd5\x55\xf2\x2b\xf9\xa3\xbb\xff\xa2\xe2\x7f\xd6\x3b\x9d\xb4\x4c\x36\x2b\x57\x34\x90\x54\x2e\x6a\xdc\x38\x77\xf8\xf4\xee\x6d\xab\xf0\xf6\xd7\xdf\xba\x55\xdd\x0a\xa8\xab\x84\x0c\xd0\xa1\xdd\xc4\x1e\x00\xbf\x10\x40\xcb\x60\xb4\xcc\xf2\xf4\x5d\xb7\xa4\x83\xf8\xee\xc7\x6c\xf1\xee\x97\x77\x6f\x6f\xdc\xd7\xe6\xd4\x25\x65\xea\xaa\xb7\x78\x7f\xbf\xcf\x8a\xb4\xbc\xff\xf5\x91\xe3\xa1\x23\xef\xde\xfe\x49\xe4\x5c\x91\x94\x69\x56\xdc\x05\x59\x91\xba\xaf\xae\x0e\x8c\x72\x2e\x62\x3a\xe6\x2a\x34\x4c\xa7\xb1\x5c\xa4\x4c\x73\xe7\xb8\x15\x29\x8f\x9c\x82\xdf\xeb\x47\x87\xfe\x9a\x89\x24\x8d\x15\x5d\xc4\x69\x14\xeb\x54\xa6\x62\x91\x2e\x94\x91\x69\x6a\xac\x5c\x18\x93\x72\x73\x00\x7d\xe0\x68\xeb\x17\x8c\x66\x33\xf2\xb7\xbf\x91\xc7\x27\x70\x75\x12\xad\xdd\x5f\x75\x38\xa9\xeb\x6e\x65\x60\x15\xb3\x22\x8c\x85\x8b\x58\x4a\x63\xe9\x62\x99\x18\x6a\x43\x29\x75\xba\x50\x2e\x5c\x3c\xe3\x73\x98\x38\xff\x9f\xa4\x7c\xfc\x8e\x68\x42\x96\x86\x4c\x2e\xb8\x62\x51\xba\x58\xc4\x49\xba\x90\xa9\xb4\x8b\x85\x90\x5a\x73\x13\xbe\xc8\xcb\x27\x49\x39\x2a\x53\x77\x99\x55\x55\x59\xc1\xaa\x4c\xdd\xed\xf4\x82\x0c\xf6\x3e\x57\x6e\x9d\x47\x89\x7b\xff\x98\xa7\xc5\xdf\x09\xaa\x3d\x86\x85\x90\xfa\x3e\x6b\x92\xe5\xbb\xe7\xaf\x09\x49\xf0\xdb\xe0\xdb\xdf\xa3\x6d\xd4\xa5\xea\xfb\x83\x49\x04\x6f\x36\x55\x41\xfe\x34\x94\x65\xea\x56\x9e\x58\x1f\xa1\xfb\x8f\x38\x07\x62\x60\x0c\x67\x36\x49\x19\xd7\xd6\x45\x3a\x5d\x18\xac\x4d\xc6\x64\xe4\xa8\xd5\x4a\x6b\x8c\xf2\x6f\x2f\x38\x55\x9b\xf8\xe1\x5f\x63\x83\x08\x7e\x08\x5c\x24\x45\x12\x89\x48\xc4\x69\xaa\x45\xa4\xb8\x65\xcc\x59\xa9\x65\xaa\x35\x13\x32\x7e\x9d\xc1\x43\xb4\xca\xff\x35\x06\x88\xe0\x87\xc0\xea\xd8\x25\x96\x47\x74\xa1\xb9\x33\x91\x12\xce\x2d\x24\x4b\xa5\x8c\xac\x93\xa6\xcd\xfc\x47\x06\xdf\xdf\x1c\x7e\x7e\xff\xed\x59\xee\xb5\x3f\x24\xf8\x1f\x07\xb2\x74\xf7\x4f\xa2\x38\xaa\xb3\x24\x48\xab\x72\x9d\x96\xf7\x45\x70\x5f\x56\xab\x65\x99\x3b\x4c\xab\xfd\x37\xf5\xf6\xd7\x86\xe3\x7e\xfb\x3f\xa7\xff\x0b\x00\x00\xff\xff\x17\x39\x38\x32\x84\x1a\x00\x00") func web_uiIndexHtmlBytes() ([]byte, error) { return bindataRead( @@ -822,7 +843,7 @@ func web_uiIndexHtml() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/index.html", size: 8141, mode: os.FileMode(420), modTime: time.Unix(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/index.html", size: 6788, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -842,7 +863,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(1596828853, 0)} + info := bindataFileInfo{name: "web_ui/oidc/callback", size: 492, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -862,7 +883,7 @@ func web_uiRobotsTxt() (*asset, error) { return nil, err } - info := bindataFileInfo{name: "web_ui/robots.txt", size: 52, mode: os.FileMode(420), modTime: time.Unix(1596828853, 0)} + info := bindataFileInfo{name: "web_ui/robots.txt", size: 52, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -882,7 +903,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(1596829166, 0)} + info := bindataFileInfo{name: "web_ui/torii/redirect.html", size: 506, mode: os.FileMode(420), modTime: time.Unix(1599755405, 0)} a := &asset{bytes: bytes, info: info} return a, nil } @@ -954,9 +975,10 @@ 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-8f69a00424bae13b8764ed2197104033.js": web_uiAssetsConsulUi8f69a00424bae13b8764ed2197104033Js, - "web_ui/assets/consul-ui-97ec8a4278cddf4266ff5aa45bf84f69.css": web_uiAssetsConsulUi97ec8a4278cddf4266ff5aa45bf84f69Css, + "web_ui/assets/consul-ui-791d914f251adffbcdf4d48ff3466279.js": web_uiAssetsConsulUi791d914f251adffbcdf4d48ff3466279Js, + "web_ui/assets/consul-ui-ac33675cf2d3f767c0eb03745026ec60.css": web_uiAssetsConsulUiAc33675cf2d3f767c0eb03745026ec60Css, "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, "web_ui/assets/favicon-128-08e1368e84f412f6ad30279d849b1df9.png": web_uiAssetsFavicon12808e1368e84f412f6ad30279d849b1df9Png, "web_ui/assets/favicon-16x16-672c31374646b24b235b9511857cdade.png": web_uiAssetsFavicon16x16672c31374646b24b235b9511857cdadePng, @@ -973,7 +995,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-d38f8b642cf98384d0f0a8760e75b259.js": web_uiAssetsVendorD38f8b642cf98384d0f0a8760e75b259Js, + "web_ui/assets/vendor-e5bd98ddbd577554f3a4bea67986a1d2.js": web_uiAssetsVendorE5bd98ddbd577554f3a4bea67986a1d2Js, "web_ui/index.html": web_uiIndexHtml, "web_ui/oidc/callback": web_uiOidcCallback, "web_ui/robots.txt": web_uiRobotsTxt, @@ -1048,9 +1070,10 @@ var _bintree = &bintree{nil, map[string]*bintree{ }}, }}, "consul-logo-707625c5eb04f602ade1f89a8868a329.png": &bintree{web_uiAssetsConsulLogo707625c5eb04f602ade1f89a8868a329Png, map[string]*bintree{}}, - "consul-ui-8f69a00424bae13b8764ed2197104033.js": &bintree{web_uiAssetsConsulUi8f69a00424bae13b8764ed2197104033Js, map[string]*bintree{}}, - "consul-ui-97ec8a4278cddf4266ff5aa45bf84f69.css": &bintree{web_uiAssetsConsulUi97ec8a4278cddf4266ff5aa45bf84f69Css, map[string]*bintree{}}, + "consul-ui-791d914f251adffbcdf4d48ff3466279.js": &bintree{web_uiAssetsConsulUi791d914f251adffbcdf4d48ff3466279Js, map[string]*bintree{}}, + "consul-ui-ac33675cf2d3f767c0eb03745026ec60.css": &bintree{web_uiAssetsConsulUiAc33675cf2d3f767c0eb03745026ec60Css, 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{}}, "favicon-128-08e1368e84f412f6ad30279d849b1df9.png": &bintree{web_uiAssetsFavicon12808e1368e84f412f6ad30279d849b1df9Png, map[string]*bintree{}}, "favicon-16x16-672c31374646b24b235b9511857cdade.png": &bintree{web_uiAssetsFavicon16x16672c31374646b24b235b9511857cdadePng, map[string]*bintree{}}, @@ -1067,7 +1090,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-d38f8b642cf98384d0f0a8760e75b259.js": &bintree{web_uiAssetsVendorD38f8b642cf98384d0f0a8760e75b259Js, map[string]*bintree{}}, + "vendor-e5bd98ddbd577554f3a4bea67986a1d2.js": &bintree{web_uiAssetsVendorE5bd98ddbd577554f3a4bea67986a1d2Js, map[string]*bintree{}}, }}, "index.html": &bintree{web_uiIndexHtml, map[string]*bintree{}}, "oidc": &bintree{nil, map[string]*bintree{ diff --git a/agent/http.go b/agent/http.go index dc9438230d..c5e58597bf 100644 --- a/agent/http.go +++ b/agent/http.go @@ -15,7 +15,6 @@ import ( "regexp" "strconv" "strings" - "text/template" "time" "github.com/NYTimes/gziphandler" @@ -88,64 +87,64 @@ type HTTPServer struct { denylist *Denylist } -type templatedFile struct { +// bufferedFile implements os.File and allows us to modify a file from disk by +// writing out the new version into a buffer and then serving file reads from +// that. It assumes you are modifying a real file and presents the actual file's +// info when queried. +type bufferedFile struct { templated *bytes.Reader - name string - mode os.FileMode - modTime time.Time + info os.FileInfo } -func newTemplatedFile(buf *bytes.Buffer, raw http.File) *templatedFile { +func newBufferedFile(buf *bytes.Buffer, raw http.File) *bufferedFile { info, _ := raw.Stat() - return &templatedFile{ + return &bufferedFile{ templated: bytes.NewReader(buf.Bytes()), - name: info.Name(), - mode: info.Mode(), - modTime: info.ModTime(), + info: info, } } -func (t *templatedFile) Read(p []byte) (n int, err error) { +func (t *bufferedFile) Read(p []byte) (n int, err error) { return t.templated.Read(p) } -func (t *templatedFile) Seek(offset int64, whence int) (int64, error) { +func (t *bufferedFile) Seek(offset int64, whence int) (int64, error) { return t.templated.Seek(offset, whence) } -func (t *templatedFile) Close() error { +func (t *bufferedFile) Close() error { return nil } -func (t *templatedFile) Readdir(count int) ([]os.FileInfo, error) { +func (t *bufferedFile) Readdir(count int) ([]os.FileInfo, error) { return nil, errors.New("not a directory") } -func (t *templatedFile) Stat() (os.FileInfo, error) { +func (t *bufferedFile) Stat() (os.FileInfo, error) { return t, nil } -func (t *templatedFile) Name() string { - return t.name +func (t *bufferedFile) Name() string { + return t.info.Name() } -func (t *templatedFile) Size() int64 { +func (t *bufferedFile) Size() int64 { return int64(t.templated.Len()) } -func (t *templatedFile) Mode() os.FileMode { - return t.mode +func (t *bufferedFile) Mode() os.FileMode { + return t.info.Mode() } -func (t *templatedFile) ModTime() time.Time { - return t.modTime +func (t *bufferedFile) ModTime() time.Time { + return t.info.ModTime() } -func (t *templatedFile) IsDir() bool { +func (t *bufferedFile) IsDir() bool { return false } -func (t *templatedFile) Sys() interface{} { +func (t *bufferedFile) Sys() interface{} { return nil } @@ -161,28 +160,56 @@ func (fs *redirectFS) Open(name string) (http.File, error) { return file, err } -type templatedIndexFS struct { - fs http.FileSystem - templateVars func() map[string]interface{} +type settingsInjectedIndexFS struct { + fs http.FileSystem + UISettings map[string]interface{} } -func (fs *templatedIndexFS) Open(name string) (http.File, error) { +func (fs *settingsInjectedIndexFS) Open(name string) (http.File, error) { file, err := fs.fs.Open(name) if err != nil || name != "/index.html" { return file, err } - content, _ := ioutil.ReadAll(file) - file.Seek(0, 0) - t, err := template.New("fmtedindex").Parse(string(content)) + content, err := ioutil.ReadAll(file) if err != nil { - return nil, err + return nil, fmt.Errorf("failed reading index.html: %s", err) } - var out bytes.Buffer - if err := t.Execute(&out, fs.templateVars()); err != nil { - return nil, err + file.Seek(0, 0) + + // Replace the placeholder in the meta ENV with the actual UI config settings. + // Ember passes the ENV with URL encoded JSON in a meta tag. We are replacing + // a key and value that is the encoded version of + // `"CONSUL_UI_SETTINGS_PLACEHOLDER":"__CONSUL_UI_SETTINGS_GO_HERE__"` + // with a URL-encoded JSON blob representing the actual config. + + // First built an escaped, JSON blob from the settings passed. + bs, err := json.Marshal(fs.UISettings) + if err != nil { + return nil, fmt.Errorf("failed marshalling UI settings JSON: %s", err) } - return newTemplatedFile(&out, file), nil + // We want to remove the first and last chars which will be the { and } since + // we are injecting these variabled into the middle of an existing object. + bs = bytes.Trim(bs, "{}") + + // We use PathEscape because we don't want spaces to be turned into "+" like + // QueryEscape does. + escaped := url.PathEscape(string(bs)) + + content = bytes.Replace(content, + []byte("%22CONSUL_UI_SETTINGS_PLACEHOLDER%22%3A%22__CONSUL_UI_SETTINGS_GO_HERE__%22"), + []byte(escaped), 1) + + // We also need to inject the content path. This used to be a go template + // hence the syntax but for now simple string replacement is fine esp. since + // all the other templated stuff above can't easily be done that was as we are + // replacing an entire placeholder element in an encoded JSON blob with + // multiple encoded JSON elements. + if path, ok := fs.UISettings["CONSUL_CONTENT_PATH"].(string); ok { + content = bytes.Replace(content, []byte("{{.ContentPath}}"), []byte(path), -1) + } + + return newBufferedFile(bytes.NewBuffer(content), file), nil } // endpoint is a Consul-specific HTTP handler that takes the usual arguments in @@ -332,7 +359,7 @@ func (s *HTTPServer) handler(enableDebug bool) http.Handler { uifs = fs } - uifs = &redirectFS{fs: &templatedIndexFS{fs: uifs, templateVars: s.GenerateHTMLTemplateVars}} + uifs = &redirectFS{fs: &settingsInjectedIndexFS{fs: uifs, UISettings: s.GetUIENVFromConfig()}} // create a http handler using the ui file system // and the headers specified by the http_config.response_headers user config uifsWithHeaders := serveHandlerWithHeaders( @@ -366,13 +393,13 @@ func (s *HTTPServer) handler(enableDebug bool) http.Handler { } } -func (s *HTTPServer) GenerateHTMLTemplateVars() map[string]interface{} { +func (s *HTTPServer) GetUIENVFromConfig() map[string]interface{} { vars := map[string]interface{}{ - "ContentPath": s.agent.config.UIContentPath, - "ACLsEnabled": s.agent.config.ACLsEnabled, + "CONSUL_CONTENT_PATH": s.agent.config.UIContentPath, + "CONSUL_ACLS_ENABLED": s.agent.config.ACLsEnabled, } - s.addEnterpriseHTMLTemplateVars(vars) + s.addEnterpriseUIENVVars(vars) return vars } diff --git a/agent/http_oss.go b/agent/http_oss.go index bcf19de77a..8f49132200 100644 --- a/agent/http_oss.go +++ b/agent/http_oss.go @@ -55,7 +55,7 @@ func (s *HTTPServer) rewordUnknownEnterpriseFieldError(err error) error { return err } -func (s *HTTPServer) addEnterpriseHTMLTemplateVars(vars map[string]interface{}) {} +func (s *HTTPServer) addEnterpriseUIENVVars(vars map[string]interface{}) {} func parseACLAuthMethodEnterpriseMeta(req *http.Request, _ *structs.ACLAuthMethodEnterpriseMeta) error { if methodNS := req.URL.Query().Get("authmethod-ns"); methodNS != "" { diff --git a/ui-v2/config/environment.js b/ui-v2/config/environment.js index 1ee3c85f42..e9523bb559 100644 --- a/ui-v2/config/environment.js +++ b/ui-v2/config/environment.js @@ -130,10 +130,13 @@ module.exports = function(environment, $ = process.env) { // Make sure all templated variables check for existence first // before outputting them, this means they all should be conditionals ENV = Object.assign({}, ENV, { - CONSUL_ACLS_ENABLED: '{{ if .ACLsEnabled }}{{.ACLsEnabled}}{{ else }}false{{ end }}', - CONSUL_SSO_ENABLED: '{{ if .SSOEnabled }}{{.SSOEnabled}}{{ else }}false{{ end }}', - CONSUL_NSPACES_ENABLED: - '{{ if .NamespacesEnabled }}{{.NamespacesEnabled}}{{ else }}false{{ end }}', + // This ENV var is a special placeholder that Consul will replace + // entirely with multiple vars from the runtime config for example + // CONSUL_ACLs_ENABLED and CONSUL_NSPACES_ENABLED. The actual key here + // won't really exist in the actual ember ENV when it's being served + // through Consul. See settingsInjectedIndexFS.Open in Go code for the + // details. + CONSUL_UI_SETTINGS_PLACEHOLDER: "__CONSUL_UI_SETTINGS_GO_HERE__", }); break; } diff --git a/ui-v2/lib/startup/templates/head.html.js b/ui-v2/lib/startup/templates/head.html.js index db2ffa864b..0af8002ecd 100644 --- a/ui-v2/lib/startup/templates/head.html.js +++ b/ui-v2/lib/startup/templates/head.html.js @@ -1,35 +1,5 @@ module.exports = ({ appName, environment, rootURL, config }) => ` -